@geogirafe/lib-geoportal
Version:
GeoGirafe is a flexible application to build online geoportals.
79 lines (78 loc) • 2.74 kB
TypeScript
import GirafeHTMLElement from '../../base/GirafeHTMLElement.js';
interface ShortcutEntry {
shortcut: string;
categoriesList: string;
}
interface CategoryEntry {
key: string;
provider: string;
category: string;
label: string;
example?: string;
}
declare class SearchFilterComponent extends GirafeHTMLElement {
protected templateUrl: string | null;
protected styleUrls: string[] | null;
template: () => import("uhtml").Hole;
enabled: boolean;
currentPrefixSymbol: string | null;
private prefixSymbols;
private categories;
private availableShortcuts;
private selectedCategories;
private filterExamples;
private fsmState;
private focusedShortcutIndex;
private readonly numberOfChipsToShow;
constructor();
private registerEvents;
private initSearchFilter;
private loadSearchCategories;
private sanitizeShortcuts;
getSelectedCategoryEntries(shortened?: boolean): CategoryEntry[];
getNumberOfOverflowChips(): number;
getNumberOfOverflowChipsAsLabel(): string;
isMenuOpen(): boolean;
isCategoriesOpen(): boolean;
isShortcutsOpen(): boolean;
isCategorySelected(categoryEntry: CategoryEntry): boolean;
hasShortcutsConfigured(): boolean;
isFilterActive(): boolean;
getSelectionCount(): number;
onFilterButtonClick(event: Event): void;
onCategoryToggle(categoryEntry: CategoryEntry, e: Event): void;
onSelectAll(event: Event): void;
onClearSelection(event: Event): void;
onChipClick(event: Event): void;
onRemoveChip(categoryEntry: CategoryEntry, event: Event): void;
private closeMenu;
private transitionTo;
getAllCategoriesFlattened(): CategoryEntry[];
private createCategoryEntry;
private categoryEntriesToSearchCategories;
private applyFiltersChange;
getShortcutEntries(): ShortcutEntry[];
private translateCategory;
getShortcutForCategory(categoryEntry: CategoryEntry): string;
private onPrefixUsed;
private readonly parentKeyDownHandler;
/**
* Triggered on a keydown event from the parent search input field.
*/
onParentKeyDown(e: KeyboardEvent): void;
onShortcutListDown(e: KeyboardEvent): void;
private navigateToResult;
private focusResultFromIndex;
private applyShortcut;
onShortcutClick(shortcut: string): void;
private readonly outsideClickHandler;
private onOutsideClick;
private readonly insideClickHandler;
private onInsideClick;
private removeClickHandlers;
private addParentKeyDownEventListener;
private removeParentKeyDownHandler;
protected connectedCallback(): void;
protected disconnectedCallback(): void;
}
export default SearchFilterComponent;