diff --git a/.changeset/unlucky-horses-wait.md b/.changeset/unlucky-horses-wait.md new file mode 100644 index 0000000..518f14b --- /dev/null +++ b/.changeset/unlucky-horses-wait.md @@ -0,0 +1,5 @@ +--- +"paneforge": patch +--- + +replace `useId` with `$props.id()` diff --git a/packages/paneforge/src/lib/components/pane-group.svelte b/packages/paneforge/src/lib/components/pane-group.svelte index fc2e12d..ec00ef5 100644 --- a/packages/paneforge/src/lib/components/pane-group.svelte +++ b/packages/paneforge/src/lib/components/pane-group.svelte @@ -2,13 +2,14 @@ import { box, mergeProps } from "svelte-toolbelt"; import type { PaneGroupProps } from "./types.js"; import { noop } from "$lib/internal/helpers.js"; - import { useId } from "$lib/internal/utils/useId.js"; import { defaultStorage, PaneGroupState } from "$lib/paneforge.svelte.js"; + const uid = $props.id(); + let { autoSaveId = null, direction, - id = useId(), + id = uid, keyboardResizeBy = null, onLayoutChange = noop, storage = defaultStorage, @@ -19,7 +20,7 @@ }: PaneGroupProps = $props(); const paneGroupState = PaneGroupState.create({ - id: box.with(() => id ?? useId()), + id: box.with(() => id ?? uid), ref: box.with( () => ref, (v) => (ref = v) diff --git a/packages/paneforge/src/lib/components/pane-resizer.svelte b/packages/paneforge/src/lib/components/pane-resizer.svelte index f0a20d8..9b64047 100644 --- a/packages/paneforge/src/lib/components/pane-resizer.svelte +++ b/packages/paneforge/src/lib/components/pane-resizer.svelte @@ -2,11 +2,12 @@ import { box, mergeProps } from "svelte-toolbelt"; import type { PaneResizerProps } from "./types.js"; import { noop } from "$lib/internal/helpers.js"; - import { useId } from "$lib/internal/utils/useId.js"; import { PaneResizerState } from "$lib/paneforge.svelte.js"; + const uid = $props.id(); + let { - id = useId(), + id = uid, ref = $bindable(null), disabled = false, onDraggingChange = noop, diff --git a/packages/paneforge/src/lib/components/pane.svelte b/packages/paneforge/src/lib/components/pane.svelte index fe4a63b..6d271e3 100644 --- a/packages/paneforge/src/lib/components/pane.svelte +++ b/packages/paneforge/src/lib/components/pane.svelte @@ -2,11 +2,12 @@ import { box, mergeProps } from "svelte-toolbelt"; import type { PaneProps } from "./types.js"; import { noop } from "$lib/internal/helpers.js"; - import { useId } from "$lib/internal/utils/useId.js"; import { PaneState } from "$lib/paneforge.svelte.js"; + const uid = $props.id(); + let { - id = useId(), + id = uid, ref = $bindable(null), collapsedSize, collapsible, diff --git a/packages/paneforge/src/lib/internal/utils/useId.ts b/packages/paneforge/src/lib/internal/utils/useId.ts deleted file mode 100644 index df9cbef..0000000 --- a/packages/paneforge/src/lib/internal/utils/useId.ts +++ /dev/null @@ -1,9 +0,0 @@ -let count = 0; - -/** - * Generates a unique ID based on a global counter. - */ -export function useId(prefix = "paneforge") { - count++; - return `${prefix}-${count}`; -}