diff --git a/src/lib/Combobox.svelte b/src/lib/Combobox.svelte index 201cb8a..1362a1c 100644 --- a/src/lib/Combobox.svelte +++ b/src/lib/Combobox.svelte @@ -9,10 +9,6 @@ render?: Snippet<[item: ComboboxItem]>; }; - export type ComboboxChangeEvent = { - value: ComboboxItem; - }; - const getLabel = (item: ComboboxItem | undefined): string => item?.label ?? item?.value ?? ''; const getPreview = (item: ComboboxItem | undefined): string => item?.preview ?? getLabel(item); @@ -45,7 +41,7 @@ notFoundMessage?: string; class?: ClassValue | null | undefined; onvalidate?: (e: InputValidatorEvent) => void; - onchange?: (e: ComboboxChangeEvent) => void; + onchange?: (item: ComboboxItem) => void; } let { @@ -291,7 +287,7 @@ value = item; open = false; searchInput?.focus(); - onchange?.({ value: item }); + onchange?.(item); }} onkeydown={() => {}} tabindex="-1" @@ -398,7 +394,7 @@ if (e.key === 'Tab' || e.key === 'Enter') { if (open && highlighted && highlighted.value !== value?.value) { value = highlighted; - onchange?.({ value: highlighted }); + onchange?.(highlighted); } if (e.key === 'Enter') { e.preventDefault(); diff --git a/src/lib/PhoneInput.svelte b/src/lib/PhoneInput.svelte index d13a14f..24158a0 100644 --- a/src/lib/PhoneInput.svelte +++ b/src/lib/PhoneInput.svelte @@ -127,8 +127,8 @@ bind:value={selectedCountryItem} bind:open={countriesOpen} {required} - onchange={(e) => { - country = countrycodeMap[e.value.value]; + onchange={(item) => { + country = countrycodeMap[item.value]; }} onvalidate={(e) => { countriesValid = e.detail.valid; diff --git a/src/lib/index.ts b/src/lib/index.ts index 60cf0f4..f400890 100644 --- a/src/lib/index.ts +++ b/src/lib/index.ts @@ -2,11 +2,7 @@ export { default as Button } from './Button.svelte'; export { default as CenterBox } from './CenterBox.svelte'; export { default as Checkbox } from './Checkbox.svelte'; -export { - default as Combobox, - type ComboboxItem, - type ComboboxChangeEvent -} from './Combobox.svelte'; +export { default as Combobox, type ComboboxItem } from './Combobox.svelte'; export { default as FramelessButton } from './FramelessButton.svelte'; export { default as InjectGoogleMaps } from './InjectGoogleMaps.svelte'; export { default as InjectUmami } from './InjectUmami.svelte';