import { type ValidComponent, createEffect, createMemo, createSignal, splitProps, } from "solid-js"; import { ComboboxBase, type ComboboxBaseOptions, type ComboboxBaseRenderProps as SearchBaseRenderProps, } from "../combobox/combobox-base"; import type { ComboboxMultipleSelectionOptions as SearchMultipleSelectionOptions, ComboboxSingleSelectionOptions as SearchSingleSelectionOptions, } from "../combobox/combobox-root"; import type { ElementOf, PolymorphicProps } from "../polymorphic"; import { SearchContext, type SearchContextValue } from "./search-context"; import { DebouncerTimeout } from "./utils"; export type { SearchSingleSelectionOptions, SearchMultipleSelectionOptions }; // SearchBase wraps Combobox without `defaultFilter` as filtering is handled externally - eg: on database export interface SearchBaseOptions extends Omit, "defaultFilter"> { /** Debounces input before making suggestions */ debounceOptionsMillisecond?: number; } export type SearchRootOptions = ( | SearchSingleSelectionOptions