svelte-tweakpane-ui 1.5.3 → 1.5.4

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.
Files changed (103) hide show
  1. package/dist/control/Button.svelte +30 -30
  2. package/dist/control/Button.svelte.d.ts +18 -18
  3. package/dist/control/ButtonGrid.svelte +25 -25
  4. package/dist/control/ButtonGrid.svelte.d.ts +35 -35
  5. package/dist/control/Checkbox.svelte +2 -2
  6. package/dist/control/Checkbox.svelte.d.ts +23 -23
  7. package/dist/control/Color.svelte +34 -34
  8. package/dist/control/Color.svelte.d.ts +40 -40
  9. package/dist/control/CubicBezier.svelte +30 -30
  10. package/dist/control/CubicBezier.svelte.d.ts +47 -47
  11. package/dist/control/File.svelte +20 -20
  12. package/dist/control/File.svelte.d.ts +38 -38
  13. package/dist/control/Image.svelte +22 -22
  14. package/dist/control/Image.svelte.d.ts +31 -31
  15. package/dist/control/IntervalSlider.svelte +24 -24
  16. package/dist/control/IntervalSlider.svelte.d.ts +39 -39
  17. package/dist/control/List.svelte +35 -35
  18. package/dist/control/List.svelte.d.ts +31 -31
  19. package/dist/control/Point.svelte +31 -31
  20. package/dist/control/Point.svelte.d.ts +81 -81
  21. package/dist/control/RadioGrid.svelte +24 -24
  22. package/dist/control/RadioGrid.svelte.d.ts +40 -40
  23. package/dist/control/Ring.svelte +9 -9
  24. package/dist/control/Ring.svelte.d.ts +40 -40
  25. package/dist/control/RotationEuler.svelte +25 -25
  26. package/dist/control/RotationEuler.svelte.d.ts +53 -53
  27. package/dist/control/RotationQuaternion.svelte +24 -24
  28. package/dist/control/RotationQuaternion.svelte.d.ts +47 -47
  29. package/dist/control/Slider.svelte +9 -9
  30. package/dist/control/Slider.svelte.d.ts +32 -32
  31. package/dist/control/Stepper.svelte +16 -16
  32. package/dist/control/Stepper.svelte.d.ts +32 -32
  33. package/dist/control/Text.svelte +13 -13
  34. package/dist/control/Text.svelte.d.ts +26 -26
  35. package/dist/control/Textarea.svelte +34 -34
  36. package/dist/control/Textarea.svelte.d.ts +29 -29
  37. package/dist/control/Wheel.svelte +8 -8
  38. package/dist/control/Wheel.svelte.d.ts +32 -32
  39. package/dist/core/Binding.svelte +60 -60
  40. package/dist/core/Binding.svelte.d.ts +33 -33
  41. package/dist/core/Blade.svelte +30 -30
  42. package/dist/core/Blade.svelte.d.ts +21 -21
  43. package/dist/core/Folder.svelte +34 -34
  44. package/dist/core/Folder.svelte.d.ts +22 -22
  45. package/dist/core/Pane.svelte +17 -17
  46. package/dist/core/Pane.svelte.d.ts +56 -56
  47. package/dist/core/Separator.svelte +5 -5
  48. package/dist/core/Separator.svelte.d.ts +20 -20
  49. package/dist/core/TabGroup.svelte +29 -29
  50. package/dist/core/TabGroup.svelte.d.ts +18 -18
  51. package/dist/core/TabPage.svelte +36 -36
  52. package/dist/core/TabPage.svelte.d.ts +21 -21
  53. package/dist/extra/AutoObject.svelte +20 -20
  54. package/dist/extra/AutoObject.svelte.d.ts +22 -22
  55. package/dist/extra/AutoValue.svelte +3 -3
  56. package/dist/extra/AutoValue.svelte.d.ts +26 -26
  57. package/dist/extra/Element.svelte +10 -10
  58. package/dist/extra/Element.svelte.d.ts +26 -26
  59. package/dist/index.d.ts +48 -48
  60. package/dist/index.js +35 -35
  61. package/dist/internal/ClsPad.svelte +11 -11
  62. package/dist/internal/ClsPad.svelte.d.ts +17 -17
  63. package/dist/internal/GenericBinding.svelte +11 -11
  64. package/dist/internal/GenericBinding.svelte.d.ts +25 -25
  65. package/dist/internal/GenericBladeFolding.svelte +19 -19
  66. package/dist/internal/GenericBladeFolding.svelte.d.ts +20 -20
  67. package/dist/internal/GenericInput.svelte +7 -7
  68. package/dist/internal/GenericInput.svelte.d.ts +27 -27
  69. package/dist/internal/GenericInputFolding.svelte +21 -21
  70. package/dist/internal/GenericInputFolding.svelte.d.ts +32 -32
  71. package/dist/internal/GenericMonitor.svelte +10 -10
  72. package/dist/internal/GenericMonitor.svelte.d.ts +29 -29
  73. package/dist/internal/GenericPane.svelte +48 -48
  74. package/dist/internal/GenericPane.svelte.d.ts +22 -22
  75. package/dist/internal/GenericSlider.svelte +15 -15
  76. package/dist/internal/GenericSlider.svelte.d.ts +29 -29
  77. package/dist/internal/InternalMonitorBoolean.svelte +5 -5
  78. package/dist/internal/InternalMonitorBoolean.svelte.d.ts +31 -31
  79. package/dist/internal/InternalMonitorNumber.svelte +14 -14
  80. package/dist/internal/InternalMonitorNumber.svelte.d.ts +37 -37
  81. package/dist/internal/InternalMonitorString.svelte +9 -9
  82. package/dist/internal/InternalMonitorString.svelte.d.ts +32 -32
  83. package/dist/internal/InternalPaneDraggable.svelte +169 -173
  84. package/dist/internal/InternalPaneDraggable.svelte.d.ts +30 -30
  85. package/dist/internal/InternalPaneFixed.svelte +13 -13
  86. package/dist/internal/InternalPaneFixed.svelte.d.ts +23 -23
  87. package/dist/internal/InternalPaneInline.svelte +14 -14
  88. package/dist/internal/InternalPaneInline.svelte.d.ts +21 -21
  89. package/dist/monitor/FpsGraph.svelte +35 -35
  90. package/dist/monitor/FpsGraph.svelte.d.ts +50 -42
  91. package/dist/monitor/Monitor.svelte +4 -4
  92. package/dist/monitor/Monitor.svelte.d.ts +87 -88
  93. package/dist/monitor/Profiler.svelte +37 -37
  94. package/dist/monitor/Profiler.svelte.d.ts +78 -76
  95. package/dist/monitor/WaveformMonitor.svelte +12 -12
  96. package/dist/monitor/WaveformMonitor.svelte.d.ts +39 -39
  97. package/dist/theme.d.ts +61 -61
  98. package/dist/theme.js +49 -53
  99. package/dist/utils.d.ts +62 -66
  100. package/dist/utils.js +78 -78
  101. package/license.txt +1 -1
  102. package/package.json +100 -115
  103. package/readme.md +1 -1
package/dist/utils.js CHANGED
@@ -1,32 +1,37 @@
1
- /* eslint-disable @typescript-eslint/no-unnecessary-type-arguments */
1
+ /* eslint-disable ts/no-unsafe-call */
2
+ /* eslint-disable ts/no-explicit-any */
3
+ /* eslint-disable node/no-unsupported-features/node-builtins */
4
+ /* eslint-disable ts/no-unnecessary-type-parameters */
5
+ /* eslint-disable ts/no-unsafe-member-access */
6
+ /* eslint-disable ts/no-unnecessary-type-arguments */
2
7
  // Utility functions
3
8
  /**
4
9
  * For CLS SSR calculation
5
10
  */
6
11
  export function rowsForMonitor(buffer, rows, graph) {
7
12
  if (graph) {
8
- return Math.max(rows ?? 3, 3);
13
+ return Math.max(rows ?? 3, 3)
9
14
  }
10
15
  if (buffer === undefined && rows === undefined) {
11
- return 1;
16
+ return 1
12
17
  }
13
18
  if (buffer === undefined && rows !== undefined) {
14
- return 1;
19
+ return 1
15
20
  }
16
21
  if (buffer !== undefined && rows === undefined) {
17
- return buffer > 1 ? 3 : 1;
22
+ return buffer > 1 ? 3 : 1
18
23
  }
19
24
  if (buffer === 1) {
20
- return 1;
25
+ return 1
21
26
  }
22
27
  // Both defined
23
- return rows ?? 1; // TODO
28
+ return rows ?? 1 // TODO
24
29
  }
25
30
  /**
26
31
  * Fills an array of length `quantity` with a `value`
27
32
  */
28
33
  export function fillWith(value, quantity) {
29
- return Array.from({ length: quantity }, () => value);
34
+ return Array.from({ length: quantity }, () => value)
30
35
  }
31
36
  /**
32
37
  * There's no way to enforce readonly properties in Svelte components, so this is a workaround. See
@@ -56,76 +61,76 @@ export function enforceReadonly(
56
61
  external,
57
62
  componentName,
58
63
  propertyName,
59
- allowAssignmentToUndefined
64
+ allowAssignmentToUndefined,
60
65
  ) {
61
- allowAssignmentToUndefined ??= false;
66
+ allowAssignmentToUndefined ??= false
62
67
  if (
63
68
  !(
64
69
  external === internal ||
65
70
  (allowAssignmentToUndefined && internal === undefined && external !== undefined)
66
71
  )
67
72
  ) {
68
- const componentString = componentName ? `<${componentName}> ` : '';
69
- const propertyString = propertyName ? `property "${propertyName}" ` : '';
73
+ const componentString = componentName ? `<${componentName}> ` : ''
74
+ const propertyString = propertyName ? `property "${propertyName}" ` : ''
70
75
  console.error(
71
- `Svelte component "${componentString}" property "${propertyString}" is intended for readonly use.\nAssigning\n"${String(external)}"\nto\n"${String(internal)}"\nis not allowed.`
72
- );
76
+ `Svelte component "${componentString}" property "${propertyString}" is intended for readonly use.\nAssigning\n"${String(external)}"\nto\n"${String(internal)}"\nis not allowed.`,
77
+ )
73
78
  }
74
79
  }
75
80
  export function isRootPane(container) {
76
- return container.constructor.name === 'Pane';
81
+ return container.constructor.name === 'Pane'
77
82
  }
78
83
  export function clamp(value, min, max) {
79
84
  // Prioritize min over max
80
- return Math.min(Math.max(value, min), max);
85
+ return Math.min(Math.max(value, min), max)
81
86
  }
82
87
  export function getElementIndex(element) {
83
- let index = 0;
84
- // eslint-disable-next-line @typescript-eslint/ban-types
85
- let sibling = element;
88
+ let index = 0
89
+ // eslint-disable-next-line ts/no-restricted-types
90
+ let sibling = element
86
91
  while ((sibling = sibling.previousElementSibling) !== null) {
87
92
  // The Element component can add extra stuff to the DOM which will mess up counting...
88
93
  // So we add an extra class to its wrapper and don't let it increment the index.
89
94
  // This was the cause of https://github.com/kitschpatrol/svelte-tweakpane-ui/issues/18
90
95
  if (!sibling.classList.contains('skip-element-index')) {
91
- index++;
96
+ index++
92
97
  }
93
98
  }
94
- return index;
99
+ return index
95
100
  }
96
101
  // Doesn't create a new object, only works with string keys
97
102
  export function removeKeys(object, ...keys) {
98
103
  for (const key of keys) {
99
104
  if (key in object) {
100
- // eslint-disable-next-line @typescript-eslint/no-dynamic-delete
101
- delete object[key];
105
+ // eslint-disable-next-line ts/no-dynamic-delete
106
+ delete object[key]
102
107
  }
103
108
  }
104
- return object;
109
+ return object
105
110
  }
106
111
  function clickBlocker(event) {
107
112
  // Only block user clicks, not programmatic ones
108
- if (event.isTrusted) event.stopPropagation();
113
+ if (event.isTrusted) event.stopPropagation()
109
114
  }
110
115
  // Used by folder and pane TODO rewrite to use getSwatchButton etc.
111
116
  export function updateCollapsibility(isUserExpandableEnabled, element, titleBarClass, iconClass) {
112
117
  if (element) {
113
- const titleBarElement = element.querySelector(`.${titleBarClass}`);
118
+ const titleBarElement = element.querySelector(`.${titleBarClass}`)
114
119
  if (titleBarElement) {
115
- const iconElement = iconClass ? element.querySelector(`.${iconClass}`) : undefined;
120
+ const iconElement = iconClass ? element.querySelector(`.${iconClass}`) : undefined
116
121
  if (isUserExpandableEnabled) {
117
- titleBarElement.removeEventListener('click', clickBlocker, { capture: true });
118
- titleBarElement.style.cursor = 'pointer';
119
- if (iconElement) iconElement.style.display = 'block';
122
+ titleBarElement.removeEventListener('click', clickBlocker, { capture: true })
123
+ titleBarElement.style.cursor = 'pointer'
124
+ if (iconElement) iconElement.style.display = 'block'
120
125
  } else {
121
126
  // Expanded = true;
122
- titleBarElement.addEventListener('click', clickBlocker, { capture: true });
123
- titleBarElement.style.cursor = 'default';
124
- if (iconElement) iconElement.style.display = 'none';
127
+ titleBarElement.addEventListener('click', clickBlocker, { capture: true })
128
+ titleBarElement.style.cursor = 'default'
129
+ if (iconElement) iconElement.style.display = 'none'
125
130
  }
126
131
  }
127
132
  } else {
128
- console.warn(`Title bar element not found with class "${titleBarClass}"`);
133
+ console.warn(`Title bar element not found with class "${titleBarClass}"`)
129
134
  }
130
135
  }
131
136
  /**
@@ -139,87 +144,82 @@ export function updateCollapsibility(isUserExpandableEnabled, element, titleBarC
139
144
  * If both constraints are provided, values may be clipped.
140
145
  */
141
146
  export function getGridDimensions(itemCount, maxColumns, maxRows) {
142
- let rows;
143
- let columns;
147
+ let rows
148
+ let columns
144
149
  if (maxColumns && maxRows) {
145
150
  // No flexing; items can exceed the available slots
146
- rows = Math.min(Math.ceil(itemCount / maxColumns), maxRows);
147
- columns = Math.min(maxColumns, itemCount);
151
+ rows = Math.min(Math.ceil(itemCount / maxColumns), maxRows)
152
+ columns = Math.min(maxColumns, itemCount)
148
153
  } else if (maxColumns) {
149
154
  // Only maxColumns defined, so rows will flex
150
- rows = Math.ceil(itemCount / maxColumns);
151
- columns = maxColumns;
155
+ rows = Math.ceil(itemCount / maxColumns)
156
+ columns = maxColumns
152
157
  } else if (maxRows) {
153
158
  // Only maxRows defined, so columns will flex
154
- columns = Math.ceil(itemCount / maxRows);
155
- rows = maxRows;
159
+ columns = Math.ceil(itemCount / maxRows)
160
+ rows = maxRows
156
161
  } else {
157
162
  // Neither maxColumns nor maxRows defined; create a square grid
158
- columns = Math.ceil(Math.sqrt(itemCount));
159
- rows = Math.ceil(itemCount / columns);
163
+ columns = Math.ceil(Math.sqrt(itemCount))
164
+ rows = Math.ceil(itemCount / columns)
160
165
  }
161
- return { columns, rows };
166
+ return { columns, rows }
162
167
  }
168
+ // eslint-disable-next-line ts/consistent-indexed-object-style
163
169
  export function tupleToObject(tuple, keys) {
164
- // eslint-disable-next-line @typescript-eslint/consistent-type-assertions
165
- const result = {};
170
+ // eslint-disable-next-line ts/consistent-type-assertions
171
+ const result = {}
166
172
  for (const [index, key] of keys.entries()) {
167
173
  // Assert that the assignment is safe
168
- result[key] = tuple[index];
174
+ result[key] = tuple[index]
169
175
  }
170
- return result;
176
+ return result
171
177
  }
172
178
  export function objectToTuple(object, keys) {
173
- return keys.map((key) => object[key]);
179
+ return keys.map((key) => object[key])
174
180
  }
175
181
  // Tweakpane helpers
176
182
  export function pickerIsOpen(blade) {
177
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
178
- return blade.controller.valueController?.foldable_?.valMap_?.expanded?.value_;
183
+ return Boolean(blade.controller.valueController?.foldable_?.valMap_?.expanded?.value_)
179
184
  }
180
185
  export function getSwatchButton(blade) {
181
186
  const swatch =
182
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
183
187
  blade.controller?.valueController?.view?.swatchElement?.querySelector('button') ??
184
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
185
- blade.controller?.valueController?.view?.buttonElement;
186
- return swatch;
188
+ blade.controller?.valueController?.view?.buttonElement
189
+ return swatch
187
190
  }
188
191
  // Utility functions
189
192
  function quaternionToCssTransform(quaternion) {
190
193
  const [x, y, z, w] = Array.isArray(quaternion)
191
194
  ? quaternion
192
- : [quaternion.x, quaternion.y, quaternion.z, quaternion.w];
193
- const m11 = 1 - 2 * y * y - 2 * z * z;
194
- const m12 = 2 * x * y - 2 * z * w;
195
- const m13 = 2 * x * z + 2 * y * w;
196
- const m21 = 2 * x * y + 2 * z * w;
197
- const m22 = 1 - 2 * x * x - 2 * z * z;
198
- const m23 = 2 * y * z - 2 * x * w;
199
- const m31 = 2 * x * z - 2 * y * w;
200
- const m32 = 2 * y * z + 2 * x * w;
201
- const m33 = 1 - 2 * x * x - 2 * y * y;
195
+ : [quaternion.x, quaternion.y, quaternion.z, quaternion.w]
196
+ const m11 = 1 - 2 * y * y - 2 * z * z
197
+ const m12 = 2 * x * y - 2 * z * w
198
+ const m13 = 2 * x * z + 2 * y * w
199
+ const m21 = 2 * x * y + 2 * z * w
200
+ const m22 = 1 - 2 * x * x - 2 * z * z
201
+ const m23 = 2 * y * z - 2 * x * w
202
+ const m31 = 2 * x * z - 2 * y * w
203
+ const m32 = 2 * y * z + 2 * x * w
204
+ const m33 = 1 - 2 * x * x - 2 * y * y
202
205
  return `matrix3d(
203
206
  ${m11}, ${m12}, ${m13}, 0,
204
207
  ${m21}, ${m22}, ${m23}, 0,
205
208
  ${m31}, ${m32}, ${m33}, 0,
206
209
  0, 0, 0, 1
207
- )`;
210
+ )`
208
211
  }
209
- function eulerToCssTransform(
210
- rotation,
211
- units = 'rad' // Rad is component default
212
- ) {
213
- const [x, y, z] = Array.isArray(rotation) ? rotation : [rotation.x, rotation.y, rotation.z];
212
+ function eulerToCssTransform(rotation, units = 'rad') {
213
+ const [x, y, z] = Array.isArray(rotation) ? rotation : [rotation.x, rotation.y, rotation.z]
214
214
  // Note negative z
215
- return `rotateX(${x}${units}) rotateY(${y}${units}) rotateZ(${-z}${units})`;
215
+ return `rotateX(${x}${units}) rotateY(${y}${units}) rotateZ(${-z}${units})`
216
216
  }
217
217
  function cubicBezierToEaseFunction(cubicBezier) {
218
218
  const [_x1, y1, _x2, y2] = Array.isArray(cubicBezier)
219
219
  ? cubicBezier
220
- : [cubicBezier.x1, cubicBezier.y1, cubicBezier.x2, cubicBezier.y2];
220
+ : [cubicBezier.x1, cubicBezier.y1, cubicBezier.x2, cubicBezier.y2]
221
221
  return (t) =>
222
- (1 - t) ** 3 * 0 + (1 - t) ** 2 * t * 3 * y1 + (1 - t) * t ** 2 * 3 * y2 + t ** 3 * 1;
222
+ (1 - t) ** 3 * 0 + (1 - t) ** 2 * t * 3 * y1 + (1 - t) * t ** 2 * 3 * y2 + t ** 3 * 1
223
223
  }
224
224
  // Library exports
225
225
  export default {
@@ -234,7 +234,7 @@ export default {
234
234
  * Convenience function for creating CSS-ready euler rotation transforms
235
235
  * @param rotation - `RotationEulerValue`, probably from a `<RotationEuler>` component
236
236
  * @param quaternion
237
- * @returns CSS rotateX/Y/Z string ready to be passed into a CSS transform
237
+ * @returns CSS rotate X/Y/Z string ready to be passed into a CSS transform
238
238
  */
239
239
  eulerToCssTransform,
240
240
  /**
@@ -243,5 +243,5 @@ export default {
243
243
  * component
244
244
  * @returns CSS matrix3d string ready to be passed into a CSS transform
245
245
  */
246
- quaternionToCssTransform
247
- };
246
+ quaternionToCssTransform,
247
+ }
package/license.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2023-2024 Eric Mika
3
+ Copyright (c) 2023-2025 Eric Mika
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/package.json CHANGED
@@ -1,32 +1,58 @@
1
1
  {
2
2
  "name": "svelte-tweakpane-ui",
3
- "version": "1.5.3",
4
- "type": "module",
3
+ "version": "1.5.4",
5
4
  "description": "A Svelte component library wrapping UI elements from Tweakpane, plus some additional functionality for convenience and flexibility.",
5
+ "keywords": [
6
+ "components",
7
+ "ui",
8
+ "tweaks",
9
+ "parameters",
10
+ "gui",
11
+ "svelte",
12
+ "sveltekit",
13
+ "tweakpane",
14
+ "ui-library",
15
+ "svelte-ui",
16
+ "svelte-components",
17
+ "ui-components",
18
+ "components-library",
19
+ "front-end",
20
+ "npm-package"
21
+ ],
22
+ "homepage": "https://kitschpatrol.com/svelte-tweakpane-ui",
23
+ "bugs": "https://github.com/kitschpatrol/svelte-tweakpane-ui/issues",
6
24
  "repository": {
7
25
  "type": "git",
8
26
  "url": "git+https://github.com/kitschpatrol/svelte-tweakpane-ui.git"
9
27
  },
10
- "homepage": "https:///kitschpatrol.com/svelte-tweakpane-ui",
11
- "bugs": {
12
- "url": "https://github.com/kitschpatrol/svelte-tweakpane-ui/issues",
13
- "email": "eric@ericmika.com"
14
- },
28
+ "license": "MIT",
15
29
  "author": {
16
30
  "name": "Eric Mika",
17
31
  "email": "eric@ericmika.com",
18
32
  "url": "https://ericmika.com"
19
33
  },
20
- "license": "MIT",
21
- "engines": {
22
- "node": ">=18.0.0",
23
- "pnpm": ">=9.0.0"
24
- },
34
+ "type": "module",
25
35
  "exports": {
26
36
  ".": {
27
37
  "types": "./dist/index.d.ts",
28
38
  "svelte": "./dist/index.js"
29
39
  },
40
+ "./AutoObject.svelte": {
41
+ "types": "./dist/extra/AutoObject.svelte.d.ts",
42
+ "svelte": "./dist/extra/AutoObject.svelte"
43
+ },
44
+ "./AutoValue.svelte": {
45
+ "types": "./dist/extra/AutoValue.svelte.d.ts",
46
+ "svelte": "./dist/extra/AutoValue.svelte"
47
+ },
48
+ "./Binding.svelte": {
49
+ "types": "./dist/core/Binding.svelte.d.ts",
50
+ "svelte": "./dist/core/Binding.svelte"
51
+ },
52
+ "./Blade.svelte": {
53
+ "types": "./dist/core/Blade.svelte.d.ts",
54
+ "svelte": "./dist/core/Blade.svelte"
55
+ },
30
56
  "./Button.svelte": {
31
57
  "types": "./dist/control/Button.svelte.d.ts",
32
58
  "svelte": "./dist/control/Button.svelte"
@@ -47,10 +73,22 @@
47
73
  "types": "./dist/control/CubicBezier.svelte.d.ts",
48
74
  "svelte": "./dist/control/CubicBezier.svelte"
49
75
  },
76
+ "./Element.svelte": {
77
+ "types": "./dist/extra/Element.svelte.d.ts",
78
+ "svelte": "./dist/extra/Element.svelte"
79
+ },
50
80
  "./File.svelte": {
51
81
  "types": "./dist/control/File.svelte.d.ts",
52
82
  "svelte": "./dist/control/File.svelte"
53
83
  },
84
+ "./Folder.svelte": {
85
+ "types": "./dist/core/Folder.svelte.d.ts",
86
+ "svelte": "./dist/core/Folder.svelte"
87
+ },
88
+ "./FpsGraph.svelte": {
89
+ "types": "./dist/monitor/FpsGraph.svelte.d.ts",
90
+ "svelte": "./dist/monitor/FpsGraph.svelte"
91
+ },
54
92
  "./Image.svelte": {
55
93
  "types": "./dist/control/Image.svelte.d.ts",
56
94
  "svelte": "./dist/control/Image.svelte"
@@ -63,10 +101,22 @@
63
101
  "types": "./dist/control/List.svelte.d.ts",
64
102
  "svelte": "./dist/control/List.svelte"
65
103
  },
104
+ "./Monitor.svelte": {
105
+ "types": "./dist/monitor/Monitor.svelte.d.ts",
106
+ "svelte": "./dist/monitor/Monitor.svelte"
107
+ },
108
+ "./Pane.svelte": {
109
+ "types": "./dist/core/Pane.svelte.d.ts",
110
+ "svelte": "./dist/core/Pane.svelte"
111
+ },
66
112
  "./Point.svelte": {
67
113
  "types": "./dist/control/Point.svelte.d.ts",
68
114
  "svelte": "./dist/control/Point.svelte"
69
115
  },
116
+ "./Profiler.svelte": {
117
+ "types": "./dist/monitor/Profiler.svelte.d.ts",
118
+ "svelte": "./dist/monitor/Profiler.svelte"
119
+ },
70
120
  "./RadioGrid.svelte": {
71
121
  "types": "./dist/control/RadioGrid.svelte.d.ts",
72
122
  "svelte": "./dist/control/RadioGrid.svelte"
@@ -83,6 +133,10 @@
83
133
  "types": "./dist/control/RotationQuaternion.svelte.d.ts",
84
134
  "svelte": "./dist/control/RotationQuaternion.svelte"
85
135
  },
136
+ "./Separator.svelte": {
137
+ "types": "./dist/core/Separator.svelte.d.ts",
138
+ "svelte": "./dist/core/Separator.svelte"
139
+ },
86
140
  "./Slider.svelte": {
87
141
  "types": "./dist/control/Slider.svelte.d.ts",
88
142
  "svelte": "./dist/control/Slider.svelte"
@@ -91,38 +145,6 @@
91
145
  "types": "./dist/control/Stepper.svelte.d.ts",
92
146
  "svelte": "./dist/control/Stepper.svelte"
93
147
  },
94
- "./Text.svelte": {
95
- "types": "./dist/control/Text.svelte.d.ts",
96
- "svelte": "./dist/control/Text.svelte"
97
- },
98
- "./Textarea.svelte": {
99
- "types": "./dist/control/Textarea.svelte.d.ts",
100
- "svelte": "./dist/control/Textarea.svelte"
101
- },
102
- "./Wheel.svelte": {
103
- "types": "./dist/control/Wheel.svelte.d.ts",
104
- "svelte": "./dist/control/Wheel.svelte"
105
- },
106
- "./Binding.svelte": {
107
- "types": "./dist/core/Binding.svelte.d.ts",
108
- "svelte": "./dist/core/Binding.svelte"
109
- },
110
- "./Blade.svelte": {
111
- "types": "./dist/core/Blade.svelte.d.ts",
112
- "svelte": "./dist/core/Blade.svelte"
113
- },
114
- "./Folder.svelte": {
115
- "types": "./dist/core/Folder.svelte.d.ts",
116
- "svelte": "./dist/core/Folder.svelte"
117
- },
118
- "./Pane.svelte": {
119
- "types": "./dist/core/Pane.svelte.d.ts",
120
- "svelte": "./dist/core/Pane.svelte"
121
- },
122
- "./Separator.svelte": {
123
- "types": "./dist/core/Separator.svelte.d.ts",
124
- "svelte": "./dist/core/Separator.svelte"
125
- },
126
148
  "./TabGroup.svelte": {
127
149
  "types": "./dist/core/TabGroup.svelte.d.ts",
128
150
  "svelte": "./dist/core/TabGroup.svelte"
@@ -131,33 +153,13 @@
131
153
  "types": "./dist/core/TabPage.svelte.d.ts",
132
154
  "svelte": "./dist/core/TabPage.svelte"
133
155
  },
134
- "./AutoObject.svelte": {
135
- "types": "./dist/extra/AutoObject.svelte.d.ts",
136
- "svelte": "./dist/extra/AutoObject.svelte"
137
- },
138
- "./AutoValue.svelte": {
139
- "types": "./dist/extra/AutoValue.svelte.d.ts",
140
- "svelte": "./dist/extra/AutoValue.svelte"
141
- },
142
- "./Element.svelte": {
143
- "types": "./dist/extra/Element.svelte.d.ts",
144
- "svelte": "./dist/extra/Element.svelte"
145
- },
146
- "./FpsGraph.svelte": {
147
- "types": "./dist/monitor/FpsGraph.svelte.d.ts",
148
- "svelte": "./dist/monitor/FpsGraph.svelte"
149
- },
150
- "./Monitor.svelte": {
151
- "types": "./dist/monitor/Monitor.svelte.d.ts",
152
- "svelte": "./dist/monitor/Monitor.svelte"
153
- },
154
- "./Profiler.svelte": {
155
- "types": "./dist/monitor/Profiler.svelte.d.ts",
156
- "svelte": "./dist/monitor/Profiler.svelte"
156
+ "./Text.svelte": {
157
+ "types": "./dist/control/Text.svelte.d.ts",
158
+ "svelte": "./dist/control/Text.svelte"
157
159
  },
158
- "./WaveformMonitor.svelte": {
159
- "types": "./dist/monitor/WaveformMonitor.svelte.d.ts",
160
- "svelte": "./dist/monitor/WaveformMonitor.svelte"
160
+ "./Textarea.svelte": {
161
+ "types": "./dist/control/Textarea.svelte.d.ts",
162
+ "svelte": "./dist/control/Textarea.svelte"
161
163
  },
162
164
  "./ThemeUtils.js": {
163
165
  "types": "./dist/theme.d.ts",
@@ -166,32 +168,20 @@
166
168
  "./Utils.js": {
167
169
  "types": "./dist/utils.d.ts",
168
170
  "default": "./dist/utils.js"
171
+ },
172
+ "./WaveformMonitor.svelte": {
173
+ "types": "./dist/monitor/WaveformMonitor.svelte.d.ts",
174
+ "svelte": "./dist/monitor/WaveformMonitor.svelte"
175
+ },
176
+ "./Wheel.svelte": {
177
+ "types": "./dist/control/Wheel.svelte.d.ts",
178
+ "svelte": "./dist/control/Wheel.svelte"
169
179
  }
170
180
  },
171
181
  "types": "./dist/index.d.ts",
172
182
  "files": [
173
183
  "./dist"
174
184
  ],
175
- "keywords": [
176
- "components",
177
- "ui",
178
- "tweaks",
179
- "parameters",
180
- "gui",
181
- "svelte",
182
- "sveltekit",
183
- "tweakpane",
184
- "ui-library",
185
- "svelte-ui",
186
- "svelte-components",
187
- "ui-components",
188
- "components-library",
189
- "front-end",
190
- "npm-package"
191
- ],
192
- "peerDependencies": {
193
- "svelte": "^4.0.0 || ^5.0.0"
194
- },
195
185
  "dependencies": {
196
186
  "@kitschpatrol/tweakpane-plugin-camerakit": "0.3.1-beta.2",
197
187
  "@kitschpatrol/tweakpane-plugin-essentials": "0.2.2-beta.2",
@@ -211,7 +201,7 @@
211
201
  "tweakpane": "4.0.5"
212
202
  },
213
203
  "devDependencies": {
214
- "@kitschpatrol/shared-config": "^4.7.12",
204
+ "@kitschpatrol/shared-config": "^5.1.0",
215
205
  "@phenomnomnominal/tsquery": "^6.1.3",
216
206
  "@playwright/test": "^1.50.1",
217
207
  "@stkb/rewrap": "^0.1.0",
@@ -221,15 +211,16 @@
221
211
  "@sveltejs/vite-plugin-svelte": "^3.1.2",
222
212
  "@types/eslint": "^8.56.12",
223
213
  "@types/fs-extra": "^11.0.4",
224
- "@types/node": "^18.19.78",
225
- "bumpp": "^9.11.1",
226
- "eslint": "^8.57.1",
214
+ "@types/node": "^18.19.79",
215
+ "bumpp": "^10.0.3",
216
+ "eslint": "^9.21.0",
227
217
  "fs-extra": "^11.3.0",
228
218
  "glob": "^11.0.1",
229
219
  "postcss-html": "^1.8.0",
230
- "publint": "^0.2.12",
220
+ "prettier": "^3.5.3",
221
+ "publint": "^0.3.8",
231
222
  "read-package-up": "^11.0.0",
232
- "remark-mdat": "^0.7.5",
223
+ "remark-mdat": "^1.0.1",
233
224
  "svelte": "^4.2.19",
234
225
  "svelte-check": "^4.1.4",
235
226
  "svelte-language-server": "0.17.0",
@@ -237,19 +228,22 @@
237
228
  "ts-morph": "^24.0.0",
238
229
  "tslib": "^2.8.1",
239
230
  "tsx": "^4.19.3",
240
- "typescript": "~5.6.3",
231
+ "typescript": "~5.7.3",
241
232
  "vite": "^5.4.14",
242
233
  "yaml": "^2.7.0"
243
234
  },
235
+ "peerDependencies": {
236
+ "svelte": "^4.0.0 || ^5.0.0"
237
+ },
244
238
  "publishConfig": {
245
239
  "access": "public"
246
240
  },
247
241
  "scripts": {
248
242
  "build": "pnpm run --sequential /^build:/",
249
- "build:01-sync": "pnpm run check && pnpm run svelte-5-check",
243
+ "build:01-sync": "pnpm run check && pnpm run docs-sync",
250
244
  "build:02-exports": "tsx ./scripts/generate-exports.ts",
251
245
  "build:03-add-source-links": "tsx ./scripts/add-source-links.ts",
252
- "build:04-format": "pnpm run format && prettier-config --fix ./readme.md",
246
+ "build:04-format": "pnpm run format",
253
247
  "build:05-package": "svelte-package && publint",
254
248
  "build:06-heal-dts-comments": "tsx ./scripts/heal-dts-comments.ts",
255
249
  "build:07-strip-component-documentation": "tsx ./scripts/strip-component-documentation.ts",
@@ -260,31 +254,22 @@
260
254
  "build:12-acknowledgments-data": "mkdir -p ./docs/src/content/acknowledgments && pnpm licenses list --json > ./docs/src/content/acknowledgments/acknowledgments-lib.json",
261
255
  "build:13-build-docs": "pnpm run docs-build",
262
256
  "build:14-build-kit": "pnpm run kit-build",
263
- "build:15-build-svelte-5": "pnpm run svelte-5-build",
264
- "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
265
- "check-watch": "svelte-kit sync && svelte-check --ignore ./scratch --tsconfig ./tsconfig.json --watch",
257
+ "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.build.json",
258
+ "check-watch": "svelte-kit sync && svelte-check --ignore ./scratch --tsconfig ./tsconfig.build.json --watch",
266
259
  "clean": "rm pnpm-lock.yaml ; git clean -fdX",
267
260
  "docs-build": "pnpm -C ./docs run build",
268
261
  "docs-dev": "pnpm -C ./docs run dev",
269
262
  "docs-preview": "pnpm -C ./docs run preview",
270
- "fix": "shared-config --fix",
271
- "format": "pnpm run --sequential /^format:/",
272
- "format:1-shared": "shared-config --fix",
273
- "format:2-embedded": "tsx ./scripts/format-embedded-code.ts",
263
+ "docs-sync": "pnpm -C ./docs run sync",
264
+ "fix": "kpi fix",
265
+ "format": "kpi-mdat fix ; kpi-eslint fix ; kpi-prettier fix ; tsx ./scripts/format-embedded-code.ts",
274
266
  "kit-build": "pnpm run kit-examples && vite build",
275
267
  "kit-dev": " pnpm run kit-examples && vite dev",
276
268
  "kit-examples": "tsx ./scripts/generate-kit-examples.ts",
277
269
  "kit-preview": "vite preview",
278
- "lint": "shared-config --check",
279
- "release": "pnpm run --sequential /^release:/",
280
- "release:1-build": "pnpm run build",
281
- "release:2-version": "bumpp --commit 'Release: %s'",
282
- "release:3-publish": "pnpm publish --ignore-scripts --otp $(op read 'op://Personal/Npmjs/one-time password?attribute=otp')",
270
+ "lint": "kpi lint",
271
+ "release": "pnpm run build && bumpp --commit 'Release: %s' && pnpm publish --ignore-scripts --otp $(op read 'op://Personal/Npmjs/one-time password?attribute=otp')",
283
272
  "rewrap": "rewrap -i --column 100 `find src \\( -name '*.svelte' -o -name '*.ts' -o -name '*.html' \\) -type f | grep -v src/examples`",
284
- "svelte-5-build": "pnpm -C ./svelte-5 run build",
285
- "svelte-5-check": "pnpm -C ./svelte-5 run check",
286
- "svelte-5-dev": "pnpm -C ./svelte-5 run dev",
287
- "svelte-5-preview": "pnpm -C ./svelte-5 run preview",
288
273
  "test": "pnpm run --sequential /^test:/",
289
274
  "test:integration": "playwright test",
290
275
  "type-check": "tsc --noEmit"
package/readme.md CHANGED
@@ -63,7 +63,7 @@ npm install svelte-tweakpane-ui
63
63
 
64
64
  ```svelte
65
65
  <script lang="ts">
66
- import { Button } from 'svelte-tweakpane-ui';
66
+ import { Button } from 'svelte-tweakpane-ui'
67
67
  </script>
68
68
 
69
69
  <Button on:click={() => alert('🎛️')} />