fix(combo-box): fix types for on:clear (#2020)

This commit is contained in:
Eric Liu 2024-10-25 15:36:43 -07:00 committed by GitHub
commit 0831e87135
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 11 additions and 3 deletions

View file

@ -697,12 +697,12 @@ export interface ComboBoxItem {
| Event name | Type | Detail |
| :--------- | :--------- | :---------------------------------------------------------------------- |
| select | dispatched | <code>{ selectedId: ComboBoxItemId; selectedItem: ComboBoxItem }</code> |
| clear | dispatched | <code>KeyboardEvent &#124; MouseEvent</code> |
| keydown | forwarded | -- |
| keyup | forwarded | -- |
| focus | forwarded | -- |
| blur | forwarded | -- |
| paste | forwarded | -- |
| clear | forwarded | -- |
| scroll | forwarded | -- |
## `ComposedModal`

View file

@ -1780,12 +1780,16 @@
"name": "select",
"detail": "{ selectedId: ComboBoxItemId; selectedItem: ComboBoxItem }"
},
{
"type": "dispatched",
"name": "clear",
"detail": "KeyboardEvent | MouseEvent"
},
{ "type": "forwarded", "name": "keydown", "element": "input" },
{ "type": "forwarded", "name": "keyup", "element": "input" },
{ "type": "forwarded", "name": "focus", "element": "input" },
{ "type": "forwarded", "name": "blur", "element": "input" },
{ "type": "forwarded", "name": "paste", "element": "input" },
{ "type": "forwarded", "name": "clear", "element": "ListBoxSelection" },
{ "type": "forwarded", "name": "scroll", "element": "ListBoxMenu" }
],
"typedefs": [

View file

@ -3,6 +3,7 @@
* @typedef {any} ComboBoxItemId
* @typedef {{ id: ComboBoxItemId; text: string; disabled?: boolean; }} ComboBoxItem
* @event {{ selectedId: ComboBoxItemId; selectedItem: ComboBoxItem }} select
* @event {KeyboardEvent | MouseEvent} clear
* @slot {{ item: ComboBoxItem; index: number }}
*/

View file

@ -23,6 +23,9 @@
on:select="{(e) => {
console.log(e.detail.selectedId);
}}"
on:clear="{(e) => {
console.log(e.detail);
}}"
translateWithId="{(id) => {
console.log(id); // "open" | "close"
return id;

View file

@ -164,12 +164,12 @@ export default class ComboBox extends SvelteComponentTyped<
selectedId: ComboBoxItemId;
selectedItem: ComboBoxItem;
}>;
clear: CustomEvent<KeyboardEvent | MouseEvent>;
keydown: WindowEventMap["keydown"];
keyup: WindowEventMap["keyup"];
focus: WindowEventMap["focus"];
blur: WindowEventMap["blur"];
paste: DocumentAndElementEventHandlersEventMap["paste"];
clear: WindowEventMap["clear"];
scroll: WindowEventMap["scroll"];
},
{ default: { item: ComboBoxItem; index: number }; titleText: {} }