@@ -114,10 +114,19 @@ export default class AppSearchDriver {
114114 }
115115 }
116116
117- _updateSearchResults = (
118- { current, filters, resultsPerPage, searchTerm, sortDirection, sortField } ,
119- skipPushToUrl = false
120- ) => {
117+ _updateSearchResults = ( searchParameters , skipPushToUrl = false ) => {
118+ const {
119+ current,
120+ filters,
121+ resultsPerPage,
122+ searchTerm,
123+ sortDirection,
124+ sortField
125+ } = {
126+ ...this . state ,
127+ ...searchParameters
128+ } ;
129+
121130 const searchOptions = {
122131 ...this . searchOptions ,
123132 page : {
@@ -141,13 +150,13 @@ export default class AppSearchDriver {
141150 current : resultList . info . meta . page . current ,
142151 error : "" ,
143152 facets : resultList . info . facets ,
144- filters : filters ,
153+ filters,
145154 requestId : resultList . info . meta . request_id ,
146155 results : resultList . results ,
147- resultsPerPage : resultsPerPage ,
148- searchTerm : searchTerm ,
149- sortDirection : sortDirection ,
150- sortField : sortField ,
156+ resultsPerPage,
157+ searchTerm,
158+ sortDirection,
159+ sortField,
151160 totalResults : resultList . info . meta . page . total_results
152161 } ) ;
153162
@@ -224,20 +233,10 @@ export default class AppSearchDriver {
224233 * @param value String field value to filter on
225234 */
226235 addFilter = ( name , value ) => {
227- const {
228- filters,
229- resultsPerPage,
230- searchTerm,
231- sortDirection,
232- sortField
233- } = this . state ;
236+ const { filters } = this . state ;
234237 this . _updateSearchResults ( {
235238 current : 1 ,
236- filters : [ ...filters , { [ name ] : value } ] ,
237- resultsPerPage,
238- searchTerm,
239- sortDirection,
240- sortField
239+ filters : [ ...filters , { [ name ] : value } ]
241240 } ) ;
242241 } ;
243242
@@ -250,21 +249,11 @@ export default class AppSearchDriver {
250249 * @param value String field value for filter to remove
251250 */
252251 removeFilter = ( name , value ) => {
253- const {
254- filters,
255- resultsPerPage,
256- searchTerm,
257- sortDirection,
258- sortField
259- } = this . state ;
252+ const { filters } = this . state ;
260253 const updatedFilters = filters . filter ( filter => ! ( filter [ name ] === value ) ) ;
261254 this . _updateSearchResults ( {
262255 current : 1 ,
263- filters : updatedFilters ,
264- resultsPerPage,
265- searchTerm,
266- sortDirection,
267- sortField
256+ filters : updatedFilters
268257 } ) ;
269258 } ;
270259
@@ -276,14 +265,9 @@ export default class AppSearchDriver {
276265 * @param resultsPerPage Integer
277266 */
278267 setResultsPerPage = resultsPerPage => {
279- const { filters, searchTerm, sortDirection, sortField } = this . state ;
280268 this . _updateSearchResults ( {
281269 current : 1 ,
282- filters,
283- resultsPerPage,
284- searchTerm,
285- sortDirection,
286- sortField
270+ resultsPerPage
287271 } ) ;
288272 } ;
289273
@@ -295,14 +279,10 @@ export default class AppSearchDriver {
295279 * @param searchTerm String
296280 */
297281 setSearchTerm = searchTerm => {
298- const { resultsPerPage, sortDirection, sortField } = this . state ;
299282 this . _updateSearchResults ( {
300283 current : 1 ,
301284 filters : [ ] ,
302- resultsPerPage,
303- searchTerm,
304- sortDirection,
305- sortField
285+ searchTerm
306286 } ) ;
307287 } ;
308288
@@ -315,12 +295,8 @@ export default class AppSearchDriver {
315295 * @param sortDirection String ["asc"|"desc"]
316296 */
317297 setSort = ( sortField , sortDirection ) => {
318- const { filters, resultsPerPage, searchTerm } = this . state ;
319298 this . _updateSearchResults ( {
320299 current : 1 ,
321- filters : filters ,
322- resultsPerPage,
323- searchTerm,
324300 sortDirection,
325301 sortField
326302 } ) ;
@@ -355,21 +331,8 @@ export default class AppSearchDriver {
355331 * @param current Integer
356332 */
357333 setCurrent = current => {
358- const {
359- filters,
360- resultsPerPage,
361- searchTerm,
362- sortDirection,
363- sortField
364- } = this . state ;
365-
366334 this . _updateSearchResults ( {
367- current,
368- filters,
369- resultsPerPage,
370- searchTerm,
371- sortDirection,
372- sortField
335+ current
373336 } ) ;
374337 } ;
375338}
0 commit comments