@salla.sa/twilight-components
Version:
Salla Web Component
62 lines (61 loc) • 1.74 kB
TypeScript
import { HTMLStencilElement } from '../../stencil-public-runtime';
import SearchProductsResponse from './search-response';
/**
* @slot product - Replaces products card in the results, has replaceable props `{name}`, `{price}`, `{regular_price}`, `{image}`.
*/
export declare class SallaSearch {
constructor();
private readonly productSlot;
private modal;
private container;
private searchInput;
private noResults;
private inputValue;
host: HTMLStencilElement;
translationLoaded: boolean;
results: SearchProductsResponse | undefined;
loading: boolean;
typing: boolean;
debounce: ReturnType<typeof setTimeout>;
search_term: string;
/**
* Set the component to display as a placeholder (button) that will open the modal. Defaults to `false`
*/
placeholder: boolean;
/**
* Set the component display without modal window. Defaults to `false`
*/
inline: boolean;
/**
* Adds a border radius to the input. Half of the height.
*/
oval: boolean;
/**
* Sets the height of the input
*/
height: number;
/**
* Maximum number of words allowed in the input
*/
maxWords: number;
/**
* Show submit action buttons at the end.
*/
showAction: boolean;
open(): Promise<void>;
onModalClose(): void;
handleKeyDown(ev: KeyboardEvent): void;
private getDefaultProductSlot;
private debounceSearch;
private limitWordsAndSearch;
private getQueryParam;
private handleActionClick;
handleSearch(val: string): void;
search(val: any): void;
private afterSearching;
render(): any;
/**
* Run it one time after load
*/
componentDidLoad(): void;
}