UNPKG

@expofp/floorplan

Version:

Interactive floor plan library for expos and events

39 lines 1.65 kB
import type RootStore from '../store/RootStore'; import { type URLFilters } from '../store/types'; export declare class URLFilterManager { private rootStore; currentFilters: URLFilters; isInitialized: boolean; constructor(rootStore: RootStore); initialize(): void; private parseURLFilters; /** * The raw filter values, before catalog validation. The canonical * `config.filters` node wins when present (`?filters[categories][0]=food` or * any config layer; values are plain names, no custom decoding). */ private readRawFilters; private applyFiltersToStore; /** * The active filters' contribution to `location.search` — `''` when no * filter is active, else `'?<legacy filter keys>'`, byte-identical to what * `updateURLFromFilters` writes. Also read by the URL autorun (url-dispatch): * when nothing else claims the URL, the filter query IS the selection. Both * writers must emit the same string — emitting different ones made their * MobX ordering decide the final address bar (the poiType-clearing race). */ filterSearch(): string; updateURLFromFilters(): void; setCategories(categoryNames: string[]): void; setPoiType(poiTypeName: string | null): void; setPoiTypes(poiTypeNames: string[]): void; clearAllFilters(): void; getCurrentFilters(): URLFilters; private setupReactions; validateFilters(filters: URLFilters): boolean; private getCategoryIdByName; private getPoiTypeIdByName; private focusOnFilteredBooths; private openExhibitorsList; } //# sourceMappingURL=URLFilterManager.d.ts.map