From 3d6c1c05fcf1e03aa5f4fa5f065d6fd76c3d151e Mon Sep 17 00:00:00 2001 From: Thor Galle Date: Mon, 14 Apr 2025 15:37:40 +0200 Subject: [PATCH 1/2] docs: correct the suggested type for custom events without detail --- .changeset/fifty-buckets-return.md | 5 +++++ packages/svelte/src/index-client.js | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/fifty-buckets-return.md diff --git a/.changeset/fifty-buckets-return.md b/.changeset/fifty-buckets-return.md new file mode 100644 index 000000000000..7c79f0b596bb --- /dev/null +++ b/.changeset/fifty-buckets-return.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +correct the suggested type for custom events without detail diff --git a/packages/svelte/src/index-client.js b/packages/svelte/src/index-client.js index fd8e999da763..efd5628ae951 100644 --- a/packages/svelte/src/index-client.js +++ b/packages/svelte/src/index-client.js @@ -114,7 +114,7 @@ function create_custom_event(type, detail, { bubbles = false, cancelable = false * The event dispatcher can be typed to narrow the allowed event names and the type of the `detail` argument: * ```ts * const dispatch = createEventDispatcher<{ - * loaded: never; // does not take a detail argument + * loaded: null; // does not take a detail argument * change: string; // takes a detail argument of type string, which is required * optional: number | null; // takes an optional detail argument of type number * }>(); From 15b66b5fa47fd2ba83bfbd48eeec3ee1304ef31a Mon Sep 17 00:00:00 2001 From: Thor Galle Date: Wed, 16 Apr 2025 13:56:58 +0200 Subject: [PATCH 2/2] docs: generate fixed types for the Svelte 4 event dispatcher --- packages/svelte/types/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/svelte/types/index.d.ts b/packages/svelte/types/index.d.ts index 6f12daf18778..8fc174b0a944 100644 --- a/packages/svelte/types/index.d.ts +++ b/packages/svelte/types/index.d.ts @@ -381,7 +381,7 @@ declare module 'svelte' { * The event dispatcher can be typed to narrow the allowed event names and the type of the `detail` argument: * ```ts * const dispatch = createEventDispatcher<{ - * loaded: never; // does not take a detail argument + * loaded: null; // does not take a detail argument * change: string; // takes a detail argument of type string, which is required * optional: number | null; // takes an optional detail argument of type number * }>();