@@ -236,7 +236,7 @@ class ResultGrid extends Component<ResultGridProps, State> {
236
236
constructor ( props : any ) {
237
237
super ( props ) ;
238
238
const queryParams = this . props . location ?. query ?? { } ;
239
- const { cursor, query, sortBy} = queryParams ;
239
+ const { cursor, query, sortBy, regionUrl } = queryParams ;
240
240
241
241
this . state = {
242
242
rows : [ ] ,
@@ -245,14 +245,26 @@ class ResultGrid extends Component<ResultGridProps, State> {
245
245
pageLinks : null ,
246
246
cursor : extractQuery ( cursor ) ,
247
247
query : extractQuery ( query ) ,
248
- region : this . props . isRegional ? ConfigStore . get ( 'regions' ) [ 0 ] : undefined ,
248
+ region : this . props . isRegional
249
+ ? regionUrl
250
+ ? ConfigStore . get ( 'regions' ) . find ( ( r : any ) => r . url === extractQuery ( regionUrl ) )
251
+ : ConfigStore . get ( 'regions' ) [ 0 ]
252
+ : undefined ,
249
253
sortBy : extractQuery ( sortBy , this . props . defaultSort ) ,
250
254
filters : Object . assign ( { } , queryParams ) ,
251
255
} ;
252
256
}
253
257
254
258
componentDidMount ( ) {
255
259
this . fetchData ( ) ;
260
+
261
+ // Remove regionalUrl after setting state
262
+ if ( this . props . isRegional && this . props . location ?. query ?. regionUrl ) {
263
+ browserHistory . replace ( {
264
+ pathname : this . props . location . pathname ,
265
+ query : { ...this . props . location . query , regionUrl : undefined } ,
266
+ } ) ;
267
+ }
256
268
}
257
269
258
270
componentDidUpdate ( prevProps : ResultGridProps ) {
0 commit comments