@expofp/floorplan
Version:
Interactive floor plan library for expos and events
75 lines • 2.5 kB
TypeScript
import RootStore from './RootStore';
import type { InterfaceAction } from './types';
export type SearchBoxMode = 'search' | 'details' | 'interface';
export default class SearchStore {
private readonly rootStore;
searchText: string;
isFocused: boolean;
isClearMode: boolean;
skipInputFocus: boolean;
constructor(rootStore: RootStore);
private get uiState();
get searchBoxConfig(): {
mode: string;
title?: string;
subtitle?: string;
badge?: string | number;
icon?: string;
};
get searchBoxMode(): SearchBoxMode;
get searchBoxTitle(): string;
get searchBoxSubtitle(): string | undefined;
get searchBoxBadge(): string | number | undefined;
get searchBoxIcon(): string | undefined;
get searchBoxActions(): InterfaceAction[];
get shouldShowSearchInput(): boolean;
get shouldShowCloseButton(): boolean;
get closeButtonAction(): "clear" | "close";
get shouldShowShadow(): boolean;
get placeholder(): string;
get searchBoxClass(): {
'is-details': boolean;
'is-interface': boolean;
'has-shadow': boolean;
'has-subtitle': boolean;
'has-badge': boolean;
'has-icon': boolean;
'is-overlay-full': boolean;
'is-featured-exhibitor': boolean;
'is-route': boolean;
'is-guided-tours': boolean;
'is-overlay-scrolled': boolean;
'overlay-pulse': boolean;
};
get ariaLabel(): string;
selectSearch(text?: string): void;
selectSearchAndFocus(text?: string): void;
setSearchText(text: string): void;
setFocused(focused: boolean): void;
handleBackAction(): void;
closeSearch(): void;
private clearActiveFilters;
private resetSearchButtonState;
handleSearchAction(): void;
openOverlayWithoutInputFocus(): void;
closeSessions(): void;
closeExhibitors(): void;
resetSearchBox(): void;
syncWithUIState(): void;
get actionButtonIcon(): "icon-close" | "icon-search";
clearAndSelectSearch(): void;
get backMode(): "back" | "menu";
get isMobileDetailsMode(): boolean;
get shouldShowTitle(): boolean;
get searchState(): {
text: string;
isFocused: boolean;
isClearMode: boolean;
mode: SearchBoxMode;
title: string | undefined;
subtitle: string | undefined;
badge: string | number | undefined;
icon: string | undefined;
};
}
//# sourceMappingURL=SearchStore.d.ts.map