From 6cdc4b0567cf6bf0ad8bca56661bd0910417c76d Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Sat, 16 Mar 2024 13:17:23 -0400 Subject: [PATCH 1/2] use type arguments when extending Map/Set --- packages/svelte/src/reactivity/map.js | 1 + packages/svelte/src/reactivity/set.js | 1 + packages/svelte/types/index.d.ts | 24 ++---------------------- 3 files changed, 4 insertions(+), 22 deletions(-) diff --git a/packages/svelte/src/reactivity/map.js b/packages/svelte/src/reactivity/map.js index f57f52e7b747..758d64bebc7d 100644 --- a/packages/svelte/src/reactivity/map.js +++ b/packages/svelte/src/reactivity/map.js @@ -7,6 +7,7 @@ import { map } from './utils.js'; /** * @template K * @template V + * @extends {Map} */ export class ReactiveMap extends Map { /** @type {Map>} */ diff --git a/packages/svelte/src/reactivity/set.js b/packages/svelte/src/reactivity/set.js index ca969bea9c10..c559fba6d532 100644 --- a/packages/svelte/src/reactivity/set.js +++ b/packages/svelte/src/reactivity/set.js @@ -10,6 +10,7 @@ var inited = false; /** * @template T + * @extends {Set} */ export class ReactiveSet extends Set { /** @type {Map>} */ diff --git a/packages/svelte/types/index.d.ts b/packages/svelte/types/index.d.ts index c2b1c1ad5baf..222f14d673e2 100644 --- a/packages/svelte/types/index.d.ts +++ b/packages/svelte/types/index.d.ts @@ -1812,38 +1812,18 @@ declare module 'svelte/reactivity' { constructor(...values: any[]); #private; } - export class Set extends Set { + export class Set extends Set { constructor(value?: Iterable | null | undefined); - has(value: T): boolean; - add(value: T): this; - - delete(value: T): boolean; - keys(): IterableIterator; - values(): IterableIterator; - entries(): IterableIterator<[T, T]>; - [Symbol.iterator](): IterableIterator; #private; } - export class Map extends Map { + export class Map extends Map { constructor(value?: Iterable | null | undefined); - has(key: K): boolean; - - forEach(callbackfn: (value: V, key: K, map: Map) => void, this_arg?: any): void; - - get(key: K): V | undefined; - set(key: K, value: V): this; - - delete(key: K): boolean; - keys(): IterableIterator; - values(): IterableIterator; - entries(): IterableIterator<[K, V]>; - [Symbol.iterator](): IterableIterator<[K, V]>; #private; } } From 86a21b100e4745517adb9ec082e4489f536a0768 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Mon, 22 Apr 2024 07:56:32 -0400 Subject: [PATCH 2/2] changeset --- .changeset/silent-hats-stare.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/silent-hats-stare.md diff --git a/.changeset/silent-hats-stare.md b/.changeset/silent-hats-stare.md new file mode 100644 index 000000000000..3294f491ce6d --- /dev/null +++ b/.changeset/silent-hats-stare.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: add type arguments to Map and Set