@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(): "menu" | "back";
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