Fix marker display mode (#1487)

This commit is contained in:
WithoutPants
2021-06-07 15:09:06 +10:00
committed by GitHub
parent 3e80dffe34
commit 099b4ecc56
2 changed files with 18 additions and 3 deletions

View File

@@ -451,8 +451,13 @@ const useList = <QueryResult extends IQueryResult, QueryData extends IDataItem>(
const persistanceKey = options.persistanceKey ?? options.filterMode;
const defaultSort = options.defaultSort ?? filterOptions.defaultSortBy;
const defaultDisplayMode = filterOptions.displayModeOptions[0];
const [filter, setFilter] = useState<ListFilterModel>(
new ListFilterModel(queryString.parse(location.search), defaultSort)
new ListFilterModel(
queryString.parse(location.search),
defaultSort,
defaultDisplayMode
)
);
const updateInterfaceConfig = useCallback(
@@ -513,7 +518,11 @@ const useList = <QueryResult extends IQueryResult, QueryData extends IDataItem>(
}
: activeFilter;
const newFilter = new ListFilterModel(query, defaultSort);
const newFilter = new ListFilterModel(
query,
defaultSort,
defaultDisplayMode
);
// Compare constructed filter with current filter.
// If different it's the result of navigation, and we update the filter.
@@ -530,6 +539,7 @@ const useList = <QueryResult extends IQueryResult, QueryData extends IDataItem>(
}
}, [
defaultSort,
defaultDisplayMode,
filter,
interfaceState.data,
interfaceState.loading,

View File

@@ -32,9 +32,14 @@ export class ListFilterModel {
public criteria: Array<Criterion<CriterionValue>> = [];
public randomSeed = -1;
public constructor(rawParms?: ParsedQuery<string>, defaultSort?: string) {
public constructor(
rawParms?: ParsedQuery<string>,
defaultSort?: string,
defaultDisplayMode?: DisplayMode
) {
const params = rawParms as IQueryParameters;
this.sortBy = defaultSort;
if (defaultDisplayMode !== undefined) this.displayMode = defaultDisplayMode;
if (params) this.configureFromQueryParameters(params);
}