@sveltia/ui 0.32.2 → 0.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -720,6 +720,60 @@ export type SelectedItemDetail = {
720
720
  */
721
721
  value: any;
722
722
  };
723
+ export type ResizablePaneDefinition = {
724
+ /**
725
+ * ResizablePane element ID (generated via `$props.id()` in the pane
726
+ * component).
727
+ */
728
+ id: string;
729
+ /**
730
+ * Default size as a percentage (0–100).
731
+ */
732
+ defaultSize: number | undefined;
733
+ /**
734
+ * Minimum size as a percentage.
735
+ */
736
+ minSize: number;
737
+ /**
738
+ * Maximum size as a percentage.
739
+ */
740
+ maxSize: number;
741
+ };
742
+ export type PaneGroupContext = {
743
+ /**
744
+ * Layout direction of the panes.
745
+ */
746
+ direction: "horizontal" | "vertical";
747
+ /**
748
+ * Current pane sizes as percentages.
749
+ */
750
+ sizes: number[];
751
+ /**
752
+ * Register a pane and
753
+ * return its index.
754
+ */
755
+ registerPane: (def: ResizablePaneDefinition) => {
756
+ index: number;
757
+ };
758
+ /**
759
+ * Register a resize handle and return its index.
760
+ */
761
+ registerHandle: () => number;
762
+ /**
763
+ * Resize panes around a
764
+ * handle by the given delta.
765
+ */
766
+ resize: (handleIndex: number, deltaPercent: number) => void;
767
+ /**
768
+ * Toggle collapse of the primary pane
769
+ * before the given handle.
770
+ */
771
+ toggleCollapse: (handleIndex: number) => void;
772
+ /**
773
+ * Registered pane definitions.
774
+ */
775
+ paneDefs: ResizablePaneDefinition[];
776
+ };
723
777
  import type { Snippet } from 'svelte';
724
778
  import type { LexicalNode } from 'lexical';
725
779
  import type { Transformer } from '@lexical/markdown';
package/dist/typedefs.js CHANGED
@@ -301,4 +301,27 @@
301
301
  * @property {any} value The `data-value` attribute on the element. Casted to the `valueType`.
302
302
  */
303
303
 
304
+ /**
305
+ * @typedef {object} ResizablePaneDefinition
306
+ * @property {string} id ResizablePane element ID (generated via `$props.id()` in the pane
307
+ * component).
308
+ * @property {number | undefined} defaultSize Default size as a percentage (0–100).
309
+ * @property {number} minSize Minimum size as a percentage.
310
+ * @property {number} maxSize Maximum size as a percentage.
311
+ */
312
+
313
+ /**
314
+ * @typedef {object} PaneGroupContext
315
+ * @property {'horizontal' | 'vertical'} direction Layout direction of the panes.
316
+ * @property {number[]} sizes Current pane sizes as percentages.
317
+ * @property {(def: ResizablePaneDefinition) => { index: number }} registerPane Register a pane and
318
+ * return its index.
319
+ * @property {() => number} registerHandle Register a resize handle and return its index.
320
+ * @property {(handleIndex: number, deltaPercent: number) => void} resize Resize panes around a
321
+ * handle by the given delta.
322
+ * @property {(handleIndex: number) => void} toggleCollapse Toggle collapse of the primary pane
323
+ * before the given handle.
324
+ * @property {ResizablePaneDefinition[]} paneDefs Registered pane definitions.
325
+ */
326
+
304
327
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sveltia/ui",
3
- "version": "0.32.2",
3
+ "version": "0.33.0",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "repository": {
@@ -29,7 +29,7 @@
29
29
  },
30
30
  "devDependencies": {
31
31
  "@sveltejs/adapter-auto": "^7.0.1",
32
- "@sveltejs/kit": "^2.53.0",
32
+ "@sveltejs/kit": "^2.53.4",
33
33
  "@sveltejs/package": "^2.5.7",
34
34
  "@sveltejs/vite-plugin-svelte": "^6.2.4",
35
35
  "@vitest/coverage-v8": "^4.0.18",
@@ -46,11 +46,11 @@
46
46
  "prettier": "^3.8.1",
47
47
  "prettier-plugin-svelte": "^3.5.0",
48
48
  "sass": "^1.97.3",
49
- "stylelint": "^17.3.0",
49
+ "stylelint": "^17.4.0",
50
50
  "stylelint-config-recommended-scss": "^17.0.0",
51
51
  "stylelint-scss": "^7.0.0",
52
- "svelte": "^5.53.3",
53
- "svelte-check": "^4.4.3",
52
+ "svelte": "^5.53.6",
53
+ "svelte-check": "^4.4.4",
54
54
  "svelte-preprocess": "^6.0.3",
55
55
  "tslib": "^2.8.1",
56
56
  "vite": "^7.3.1",