From 6a7fdd183b4afcffe844de269f54640cdf25f205 Mon Sep 17 00:00:00 2001 From: Eric Y Liu Date: Wed, 14 Jul 2021 13:04:26 -0700 Subject: [PATCH] fix(select): forward missing focus, input events #501 Fixes #501 --- COMPONENT_INDEX.md | 2 ++ docs/src/COMPONENT_API.json | 2 ++ src/Select/Select.svelte | 4 ++++ types/Select/Select.d.ts | 7 ++++++- 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/COMPONENT_INDEX.md b/COMPONENT_INDEX.md index b3a1a1aa..e7e6c1a6 100644 --- a/COMPONENT_INDEX.md +++ b/COMPONENT_INDEX.md @@ -3242,6 +3242,8 @@ None. | Event name | Type | Detail | | :--------- | :--------- | :------------------ | | change | dispatched | string | +| input | forwarded | -- | +| focus | forwarded | -- | | blur | forwarded | -- | ## `SelectItem` diff --git a/docs/src/COMPONENT_API.json b/docs/src/COMPONENT_API.json index 81c47273..d4aab212 100644 --- a/docs/src/COMPONENT_API.json +++ b/docs/src/COMPONENT_API.json @@ -9304,6 +9304,8 @@ ], "events": [ { "type": "dispatched", "name": "change", "detail": "string" }, + { "type": "forwarded", "name": "input", "element": "select" }, + { "type": "forwarded", "name": "focus", "element": "select" }, { "type": "forwarded", "name": "blur", "element": "select" } ], "typedefs": [], diff --git a/src/Select/Select.svelte b/src/Select/Select.svelte index db49f88d..3f4804f2 100644 --- a/src/Select/Select.svelte +++ b/src/Select/Select.svelte @@ -119,6 +119,8 @@ on:change="{({ target }) => { selectedValue.set(target.value); }}" + on:input + on:focus on:blur > @@ -160,6 +162,8 @@ on:change="{({ target }) => { selectedValue.set(target.value); }}" + on:input + on:focus on:blur > diff --git a/types/Select/Select.d.ts b/types/Select/Select.d.ts index b8e609dd..2dd564f3 100644 --- a/types/Select/Select.d.ts +++ b/types/Select/Select.d.ts @@ -99,6 +99,11 @@ export interface SelectProps export default class Select extends SvelteComponentTyped< SelectProps, - { change: CustomEvent; blur: WindowEventMap["blur"] }, + { + change: CustomEvent; + input: WindowEventMap["input"]; + focus: WindowEventMap["focus"]; + blur: WindowEventMap["blur"]; + }, { default: {}; labelText: {} } > {}