Skip to content

Commit 1bd0c60

Browse files
committed
fix(TextField): Remove inputHolder.input object property setter workaround for Input/textarea bind:this type differences as solution to fix Vite dev server freezing. Resolve #546
1 parent aabf929 commit 1bd0c60

File tree

3 files changed

+7
-8
lines changed

3 files changed

+7
-8
lines changed

.changeset/many-numbers-call.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'svelte-ux': patch
3+
---
4+
5+
fix(TextField): Remove `inputHolder.input` object property setter workaround for Input/textarea `bind:this` type differences as solution to fix Vite dev server freezing

packages/svelte-ux/src/lib/components/Input.svelte

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
export let inputmode: HTMLInputAttributes['inputmode'] | undefined = undefined;
1919
export let id: string | undefined = undefined;
2020
export let actions: Actions<HTMLInputElement | HTMLTextAreaElement> | undefined = undefined;
21-
export let inputEl: HTMLInputElement | null = null;
21+
export let inputEl: HTMLInputElement | HTMLTextAreaElement | null = null;
2222
export let autocapitalize: HTMLInputAttributes['autocapitalize'] = undefined;
2323
let className: string | undefined = undefined;
2424
export { className as class };

packages/svelte-ux/src/lib/components/TextField.svelte

+1-7
Original file line numberDiff line numberDiff line change
@@ -60,12 +60,6 @@
6060
: undefined;
6161
export let operators: { label: string; value: string }[] | undefined = undefined;
6262
export let inputEl: HTMLInputElement | HTMLTextAreaElement | null = null;
63-
// this is a workaround because Input only accepts an HTMLInputElement, not a TextAreaElement
64-
const inputHolder = {
65-
set input(value: HTMLInputElement | null) {
66-
inputEl = value;
67-
},
68-
};
6963
export let debounceChange: boolean | number = false;
7064
export let classes: {
7165
root?: string;
@@ -371,7 +365,7 @@
371365
{max}
372366
{step}
373367
{actions}
374-
bind:inputEl={inputHolder.input}
368+
bind:inputEl
375369
on:input={handleInput}
376370
on:focus
377371
on:blur

0 commit comments

Comments
 (0)