Skip to content

Commit 0b02284

Browse files
songpolahuntabyte
andauthored
fix: 🐛 support Shadow DOM (#75)
Co-authored-by: Hunter Johnston <johnstonhuntera@gmail.com>
1 parent 9200068 commit 0b02284

File tree

15 files changed

+2251
-479
lines changed

15 files changed

+2251
-479
lines changed

.changeset/gentle-jobs-explode.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"paneforge": patch
3+
---
4+
5+
feat: Shadow DOM support

docs/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
"mdsx": "^0.0.6",
2323
"paneforge": "workspace:^",
2424
"phosphor-svelte": "^3.0.0",
25-
"svelte": "^5.20.1",
25+
"svelte": "^5.34.3",
2626
"svelte-check": "^4.1.4",
2727
"tailwindcss": "4.0.0-beta.6",
2828
"typescript": "^5.7.2",

eslint.config.js

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
// @ts-check
12
import eslint from "@eslint/js";
23
import prettier from "eslint-config-prettier";
34
import svelte from "eslint-plugin-svelte";
@@ -7,9 +8,9 @@ import tseslint from "typescript-eslint";
78
export default tseslint.config(
89
eslint.configs.recommended,
910
...tseslint.configs.recommended,
10-
...svelte.configs["flat/recommended"],
11+
...svelte.configs.recommended,
1112
prettier,
12-
...svelte.configs["flat/prettier"],
13+
...svelte.configs.prettier,
1314
{
1415
languageOptions: {
1516
globals: {
@@ -19,9 +20,10 @@ export default tseslint.config(
1920
},
2021
},
2122
{
22-
files: ["**/*.svelte"],
23+
files: ["**/*.svelte", "**/*.svelte.ts", "**/*.svelte.js"],
2324
languageOptions: {
2425
parserOptions: {
26+
extraFileExtensions: [".svelte"], // Add support for additional file extensions, such as .svelte
2527
parser: tseslint.parser,
2628
},
2729
},
@@ -36,6 +38,9 @@ export default tseslint.config(
3638
},
3739
],
3840
"@typescript-eslint/no-unused-expressions": "off",
41+
"@typescript-eslint/no-empty-object-type": "off",
42+
"prefer-const": "off",
43+
"svelte/no-at-html-tags": "off",
3944
},
4045
},
4146
{
@@ -45,13 +50,13 @@ export default tseslint.config(
4550
"dist/",
4651
".svelte-kit/**/*",
4752
"docs/.svelte-kit/**/*",
48-
"docs/node_modules/**/*",
49-
"docs/build/**/*",
53+
"docs/.velite/**/*",
54+
"docs/src/routes/api/demos.json/stackblitz-files.json",
55+
"docs/src/routes/api/demos.json/demos.json",
5056
".svelte-kit",
51-
"packages/paneforge/dist/**/*",
52-
"packages/paneforge/.svelte-kit/**/*",
53-
"docs/static/",
54-
".github/",
57+
"packages/bits-ui/dist/**/*",
58+
"packages/bits-ui/.svelte-kit/**/*",
59+
"tests/.svelte-kit/**/*",
5560
],
5661
}
5762
);

package.json

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,22 +23,20 @@
2323
"packageManager": "pnpm@9.14.4",
2424
"devDependencies": {
2525
"@changesets/cli": "^2.27.10",
26-
"@eslint/js": "^9.12.0",
26+
"@eslint/js": "^9.29.0",
2727
"@svitejs/changesets-changelog-github-compact": "^1.2.0",
2828
"@types/node": "^22.10.1",
29-
"@typescript-eslint/eslint-plugin": "^8.10.0",
30-
"@typescript-eslint/scope-manager": "^8.10.0",
31-
"@typescript-eslint/utils": "^8.10.0",
3229
"eslint": "^9.0.0",
33-
"eslint-config-prettier": "^9.1.0",
34-
"eslint-plugin-svelte": "^2.46.1",
30+
"eslint-config-prettier": "^10.1.5",
31+
"eslint-plugin-svelte": "^3.9.2",
3532
"globals": "^15.11.0",
3633
"prettier": "^3.3.3",
3734
"prettier-plugin-svelte": "^3.3.2",
3835
"prettier-plugin-tailwindcss": "^0.6.8",
39-
"svelte": "^5.11.0",
36+
"svelte": "^5.34.3",
4037
"svelte-eslint-parser": "^0.43.0",
41-
"typescript": "^5.6.3",
38+
"tseslint": "^0.0.2",
39+
"typescript": "^5.8.3",
4240
"typescript-eslint": "^8.10.0",
4341
"wrangler": "^3.91.0"
4442
}

packages/paneforge/package.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
"!dist/**/*.spec.*"
3333
],
3434
"peerDependencies": {
35-
"svelte": "^5.20.0"
35+
"svelte": "^5.29.0"
3636
},
3737
"devDependencies": {
3838
"@sveltejs/kit": "^2.17.2",
@@ -46,10 +46,10 @@
4646
"jsdom": "^24.0.0",
4747
"publint": "^0.1.9",
4848
"resize-observer-polyfill": "^1.5.1",
49-
"svelte": "^5.20.2",
50-
"svelte-check": "^4.1.4",
49+
"svelte": "^5.34.3",
50+
"svelte-check": "^4.2.1",
5151
"tslib": "^2.4.1",
52-
"typescript": "^5.0.0",
52+
"typescript": "^5.8.3",
5353
"vite": "^5.0.3",
5454
"vitest": "^1.5.1"
5555
},
@@ -58,6 +58,6 @@
5858
"type": "module",
5959
"dependencies": {
6060
"runed": "^0.23.4",
61-
"svelte-toolbelt": "^0.7.1"
61+
"svelte-toolbelt": "^0.9.2"
6262
}
6363
}

packages/paneforge/src/lib/components/pane-group.svelte

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import type { PaneGroupProps } from "./types.js";
44
import { noop } from "$lib/internal/helpers.js";
55
import { useId } from "$lib/internal/utils/useId.js";
6-
import { defaultStorage, usePaneGroup } from "$lib/paneforge.svelte.js";
6+
import { defaultStorage, PaneGroupState } from "$lib/paneforge.svelte.js";
77
88
let {
99
autoSaveId = null,
@@ -18,7 +18,7 @@
1818
...restProps
1919
}: PaneGroupProps = $props();
2020
21-
const paneGroupState = usePaneGroup({
21+
const paneGroupState = PaneGroupState.create({
2222
id: box.with(() => id ?? useId()),
2323
ref: box.with(
2424
() => ref,

packages/paneforge/src/lib/components/pane-resizer.svelte

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import type { PaneResizerProps } from "./types.js";
44
import { noop } from "$lib/internal/helpers.js";
55
import { useId } from "$lib/internal/utils/useId.js";
6-
import { usePaneResizer } from "$lib/paneforge.svelte.js";
6+
import { PaneResizerState } from "$lib/paneforge.svelte.js";
77
88
let {
99
id = useId(),
@@ -16,7 +16,7 @@
1616
...restProps
1717
}: PaneResizerProps = $props();
1818
19-
const resizerState = usePaneResizer({
19+
const resizerState = PaneResizerState.create({
2020
id: box.with(() => id),
2121
ref: box.with(
2222
() => ref,

packages/paneforge/src/lib/components/pane.svelte

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import type { PaneProps } from "./types.js";
44
import { noop } from "$lib/internal/helpers.js";
55
import { useId } from "$lib/internal/utils/useId.js";
6-
import { usePane } from "$lib/paneforge.svelte.js";
6+
import { PaneState } from "$lib/paneforge.svelte.js";
77
88
let {
99
id = useId(),
@@ -22,7 +22,7 @@
2222
...restProps
2323
}: PaneProps = $props();
2424
25-
const paneState = usePane({
25+
const paneState = PaneState.create({
2626
id: box.with(() => id),
2727
ref: box.with(
2828
() => ref,

0 commit comments

Comments
 (0)