svelte-tweakpane-ui 1.2.4 → 1.2.5

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.
@@ -149,14 +149,20 @@ export type ImageSlots = typeof __propDef.slots;
149
149
  * import { Button, Image } from 'svelte-tweakpane-ui';
150
150
  *
151
151
  * let source = 'placeholder';
152
- * let kittenIndex = 1;
152
+ *
153
+ * async function getRandomKittenUrl() {
154
+ * const { url } = await fetch(
155
+ * 'https://source.unsplash.com/800x800/?kitten',
156
+ * { method: 'HEAD', redirect: 'follow' }
157
+ * );
158
+ * return url;
159
+ * }
153
160
  * </script>
154
161
  *
155
162
  * <Image bind:value={source} fit="contain" label="Image" />
156
163
  * <Button
157
- * on:click={() => {
158
- * source = `https://placekitten.com/1024/1024?image=${kittenIndex}`;
159
- * kittenIndex = (kittenIndex % 16) + 1;
164
+ * on:click={async () => {
165
+ * source = await getRandomKittenUrl();
160
166
  * }}
161
167
  * label="Random Placeholder"
162
168
  * title="Load Kitten"
@@ -31,7 +31,10 @@ declare const __propDef: {
31
31
  * set with `setGlobalDefaultTheme()`.
32
32
  * */ theme?: Theme | undefined;
33
33
  };
34
- events: {
34
+ /**
35
+ * Prevent interactivity and gray out the control.
36
+ * @default `false`
37
+ * */ events: {
35
38
  [evt: string]: CustomEvent<any>;
36
39
  };
37
40
  slots: {
@@ -12,6 +12,9 @@
12
12
  import { persisted } from 'svelte-local-storage-store';
13
13
  const titlebarWindowShadeSingleClick = true;
14
14
  const titlebarWindowShadeDoubleClick = false;
15
+ const pointerCancelOnWindowBlur = true;
16
+ const dragMovementDistanceThreshold = 3;
17
+ let initialDragEvent;
15
18
  export let storePositionLocally = true;
16
19
  export let localStoreId = localStoreDefaultId;
17
20
  export let tpPane = void 0;
@@ -109,27 +112,33 @@
109
112
  if (width !== void 0 && event.target === widthHandleElement) {
110
113
  width = width < maxAvailablePanelWidth ? maxAvailablePanelWidth : minWidth;
111
114
  } else if (
112
- // If (moveDistance < 3 && userExpandable)
115
+ // Consider pointer movement threshold check...
116
+ // e.g. if (moveDistance < dragMovementDistanceThreshold && userExpandable)...
113
117
  titlebarWindowShadeDoubleClick &&
114
- event.target === dragBarElement && //
118
+ event.target === dragBarElement &&
115
119
  tpPane
116
120
  ) {
117
121
  tpPane.expanded = !tpPane.expanded;
118
122
  }
119
123
  }
120
124
  };
121
- const downListener = (event) => {
125
+ const dragStartListener = (event) => {
122
126
  if (x !== void 0 && y !== void 0 && event.button === 0 && event.target instanceof HTMLElement) {
123
127
  moveDistance = 0;
128
+ initialDragEvent = event;
129
+ removeDragStartListeners();
130
+ addDragMoveAndEndListeners();
131
+ if (event.target === dragBarElement) {
132
+ dragBarElement.style.cursor = 'grabbing';
133
+ }
134
+ containerElement.style.transition = 'width 0s ease';
124
135
  event.target.setPointerCapture(event.pointerId);
125
- event.target.addEventListener('pointermove', moveListener);
126
- event.target.addEventListener('pointerup', upListener);
127
136
  startWidth = width ?? 0;
128
137
  startOffsetX = x - event.pageX;
129
138
  startOffsetY = y - event.pageY;
130
139
  }
131
140
  };
132
- const moveListener = (event) => {
141
+ const dragMoveListener = (event) => {
133
142
  if (
134
143
  event.target instanceof HTMLElement &&
135
144
  width !== void 0 &&
@@ -150,22 +159,72 @@
150
159
  }
151
160
  }
152
161
  };
153
- const upListener = (event) => {
162
+ const blurListener = () => {
163
+ if (pointerCancelOnWindowBlur && initialDragEvent?.target instanceof HTMLElement) {
164
+ const { target } = initialDragEvent;
165
+ const bounds = target.getBoundingClientRect();
166
+ const pointerCancelEvent = new PointerEvent('pointercancel', {
167
+ bubbles: true,
168
+ clientX: bounds.left + bounds.width / 2,
169
+ clientY: bounds.top + bounds.height / 2,
170
+ composed: true,
171
+ pointerId: initialDragEvent.pointerId,
172
+ pointerType: initialDragEvent.pointerType
173
+ });
174
+ target.dispatchEvent(pointerCancelEvent);
175
+ }
176
+ };
177
+ const dragEndListener = (event) => {
154
178
  event.stopImmediatePropagation();
155
179
  if (event.target instanceof HTMLElement) {
156
- event.target.releasePointerCapture(event.pointerId);
157
- event.target.removeEventListener('pointermove', moveListener);
158
- event.target.removeEventListener('pointerup', upListener);
180
+ if (event.target.hasPointerCapture(event.pointerId)) {
181
+ event.target.releasePointerCapture(event.pointerId);
182
+ }
183
+ if (event.target === dragBarElement) {
184
+ dragBarElement.style.removeProperty('cursor');
185
+ }
186
+ containerElement.style.removeProperty('transition');
159
187
  if (
188
+ event.type === 'pointerup' &&
160
189
  titlebarWindowShadeSingleClick &&
161
190
  event.target === dragBarElement &&
162
- moveDistance < 3 &&
191
+ moveDistance < dragMovementDistanceThreshold &&
163
192
  userExpandable &&
164
193
  tpPane
165
- )
194
+ ) {
166
195
  tpPane.expanded = !tpPane.expanded;
196
+ }
197
+ initialDragEvent = void 0;
198
+ removeDragMoveAndEndListeners();
199
+ addDragStartListeners();
167
200
  }
168
201
  };
202
+ const addDragStartListeners = () => {
203
+ dragBarElement.addEventListener('pointerdown', dragStartListener);
204
+ widthHandleElement?.addEventListener('pointerdown', dragStartListener);
205
+ };
206
+ const removeDragStartListeners = () => {
207
+ dragBarElement.removeEventListener('pointerdown', dragStartListener);
208
+ widthHandleElement?.removeEventListener('pointerdown', dragStartListener);
209
+ };
210
+ const addDragMoveAndEndListeners = () => {
211
+ window.addEventListener('blur', blurListener);
212
+ dragBarElement.addEventListener('pointermove', dragMoveListener);
213
+ dragBarElement.addEventListener('pointerup', dragEndListener);
214
+ dragBarElement.addEventListener('pointercancel', dragEndListener);
215
+ widthHandleElement?.addEventListener('pointermove', dragMoveListener);
216
+ widthHandleElement?.addEventListener('pointerup', dragEndListener);
217
+ widthHandleElement?.addEventListener('pointercancel', dragEndListener);
218
+ };
219
+ const removeDragMoveAndEndListeners = () => {
220
+ window.removeEventListener('blur', blurListener);
221
+ dragBarElement.removeEventListener('pointermove', dragMoveListener);
222
+ dragBarElement.removeEventListener('pointerup', dragEndListener);
223
+ dragBarElement.removeEventListener('pointercancel', dragEndListener);
224
+ widthHandleElement?.removeEventListener('pointermove', dragMoveListener);
225
+ widthHandleElement?.removeEventListener('pointerup', dragEndListener);
226
+ widthHandleElement?.removeEventListener('pointercancel', dragEndListener);
227
+ };
169
228
  const touchScrollBlocker = (event) => {
170
229
  event.preventDefault();
171
230
  };
@@ -182,35 +241,24 @@
182
241
  dragBarElement = dragBarElementCheck;
183
242
  dragBarElement.addEventListener('click', clickBlocker);
184
243
  dragBarElement.addEventListener('dblclick', doubleClickListener);
185
- dragBarElement.addEventListener('pointerdown', downListener);
186
244
  widthHandleElement = dragBarElement.parentElement?.appendChild(document.createElement('div'));
187
245
  if (widthHandleElement) {
188
246
  widthHandleElement.className = 'tp-custom-width-handle';
189
247
  widthHandleElement.textContent = '\u2194';
190
248
  widthHandleElement.addEventListener('click', clickBlocker);
191
249
  widthHandleElement.addEventListener('dblclick', doubleClickListener);
192
- widthHandleElement.addEventListener('pointerdown', downListener);
193
250
  }
251
+ addDragStartListeners();
194
252
  }
195
253
  });
196
254
  onDestroy(() => {
197
- if (dragBarElement) {
198
- dragBarElement.removeEventListener('click', clickBlocker);
199
- dragBarElement.removeEventListener('dblclick', doubleClickListener);
200
- dragBarElement.removeEventListener('pointerdown', downListener);
201
- dragBarElement.removeEventListener('pointermove', moveListener);
202
- dragBarElement.removeEventListener('pointerup', upListener);
203
- }
204
- if (widthHandleElement) {
205
- widthHandleElement.removeEventListener('click', clickBlocker);
206
- widthHandleElement.removeEventListener('dblclick', doubleClickListener);
207
- widthHandleElement.removeEventListener('pointerdown', downListener);
208
- widthHandleElement.removeEventListener('pointermove', moveListener);
209
- widthHandleElement.removeEventListener('pointerup', upListener);
210
- }
211
- if (containerElement) {
212
- containerElement.removeEventListener('touchmove', touchScrollBlocker);
213
- }
255
+ removeDragStartListeners();
256
+ removeDragMoveAndEndListeners();
257
+ dragBarElement.removeEventListener('click', clickBlocker);
258
+ dragBarElement.removeEventListener('dblclick', doubleClickListener);
259
+ widthHandleElement?.removeEventListener('click', clickBlocker);
260
+ widthHandleElement?.removeEventListener('dblclick', doubleClickListener);
261
+ containerElement?.removeEventListener('touchmove', touchScrollBlocker);
214
262
  if (localStoreId !== void 0) {
215
263
  localStoreIds.splice(localStoreIds.indexOf(localStoreId), 1);
216
264
  }
@@ -321,13 +369,6 @@
321
369
  transition: width 0.2s ease;
322
370
  }
323
371
 
324
- div.draggable-container:active {
325
- /* prevent animation during direct manipulation */
326
- transition: width 0s ease;
327
- /* alternate less specific approach */
328
- /* transition: none; */
329
- }
330
-
331
372
  /* stylelint-disable-next-line selector-class-pattern */
332
373
  div.draggable-container :global(div.tp-rotv_t) {
333
374
  cursor: grab;
@@ -355,10 +396,6 @@
355
396
  white-space: nowrap;
356
397
  }
357
398
 
358
- div.draggable-container :global(div.tp-rotv_t:active) {
359
- cursor: grabbing;
360
- }
361
-
362
399
  div.draggable-container :global(div.tp-rotv_m) {
363
400
  right: unset;
364
401
  left: 0;
@@ -1,471 +1,592 @@
1
1
  import { SvelteComponent } from 'svelte';
2
2
  declare class __sveltets_Render<W extends number | string | boolean | unknown> {
3
- props(): Omit<
4
- {
5
- /**
6
- * Number of past states to retain.
7
- * @default `1` \
8
- * Or `64` if value is `number` and `graph` is `true`.
9
- */
10
- bufferSize?: number | undefined;
11
- /**
12
- * Time between value samples in milliseconds.
13
- *
14
- * Useful when `graph` is true. Defaults to reactive value updates only (`interval={0}`).
15
- * @default `0`
16
- */
17
- interval?: number | undefined;
18
- /**
19
- * Number of visible rows of state history.
20
- *
21
- * If `bufferSize` is larger, then the value window will scroll once state history exceeds
22
- * row count.
23
- * @default `1` \
24
- * Or `3` if value is `string` and `multiline` is `true`.
25
- */
26
- rows?: number | undefined;
27
- } & {
28
- /**
29
- * A value to monitor.
30
- * @bindable
31
- */
32
- value: W;
33
- } & Omit<
3
+ props(): W extends string | number | boolean
4
+ ? Omit<
34
5
  {
35
6
  /**
36
- * The binding's target object with values to manipulate.
37
- * @bindable
38
- */
39
- object: import('@tweakpane/core').Bindable & Record<string, W>;
40
- /** The key for the value in the target `object` that the control should manipulate. */
41
- key: string;
42
- /**
43
- * Prevent interactivity and gray out the control.
44
- * @default `false`
45
- */
46
- disabled?: boolean | undefined;
47
- /**
48
- * Text displayed next to control.
49
- * @default `undefined`
7
+ * Number of past states to retain.
8
+ * @default `1` \
9
+ * Or `64` if value is `number` and `graph` is `true`.
50
10
  */
51
- label?: string | undefined;
11
+ bufferSize?: number | undefined;
52
12
  /**
53
- * Tweakpane's internal options object.
54
- *
55
- * See [`BindingParams`](https://tweakpane.github.io/docs/api/types/BindingParams.html).
13
+ * Time between value samples in milliseconds.
56
14
  *
57
- * Valid types are contingent on the type of the value `key` points to in `object`.
58
- *
59
- * This is intended internal use, when implementing convenience components wrapping Binding's
60
- * functionality. Options of interest are instead exposed as top-level props in _Svelte
61
- * Tweakpane UI_.
62
- * @default `undefined`
15
+ * Useful when `graph` is true. Defaults to reactive value updates only (`interval={0}`).
16
+ * @default `0`
63
17
  */
64
- options?:
65
- | (W extends string
66
- ? import('tweakpane').StringMonitorParams
67
- : W extends boolean
68
- ? import('tweakpane').BooleanMonitorParams
69
- : W extends number
70
- ? import('tweakpane').NumberMonitorParams
71
- : import('@tweakpane/core').BaseMonitorParams)
72
- | undefined;
18
+ interval?: number | undefined;
73
19
  /**
74
- * Custom color scheme.
20
+ * Number of visible rows of state history.
75
21
  *
76
- * @default `undefined` \
77
- * Inherits default Tweakpane theme equivalent to `ThemeUtils.presets.standard`, or the theme
78
- * set with `setGlobalDefaultTheme()`.
22
+ * If `bufferSize` is larger, then the value window will scroll once state history exceeds
23
+ * row count.
24
+ * @default `1` \
25
+ * Or `3` if value is `string` and `multiline` is `true`.
79
26
  */
80
- theme?: import('..').Theme | undefined;
81
- /**
82
- * Reference to internal Tweakpane
83
- * [`BindingApi`](https://tweakpane.github.io/docs/api/classes/_internal_.BindingApi.html) for
84
- * this control.
85
- *
86
- * This property is exposed for advanced use cases only, such as when implementing convenience
87
- * components wrapping `<Binding>`'s functionality.
88
- *
89
- * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
90
- *
91
- * @bindable
92
- * @readonly
93
- */
94
- ref?: import('../internal/GenericMonitor.svelte').GenericMonitorRef | undefined;
95
- /**
96
- * Imported Tweakpane `TpPluginBundle` (aliased as `Plugin`) module to automatically register in
97
- * the `<Binding>`'s containing `<Pane>`.
98
- *
99
- * This property is exposed for advanced use cases only, such as when implementing convenience
100
- * components wrapping `<Binding>`'s functionality in combination with a Tweakpane plugin.
101
- *
102
- * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
103
- *
104
- * @default `undefined`
105
- */
106
- plugin?: import('tweakpane').TpPluginBundle | undefined;
107
- },
108
- 'object' | 'key'
109
- >,
110
- 'ref' | 'options' | 'plugin'
111
- > &
112
- (W extends string
113
- ? {
27
+ rows?: number | undefined;
28
+ } & {
114
29
  /**
115
30
  * A value to monitor.
116
31
  * @bindable
117
32
  */
118
- value: string;
119
- /**
120
- * Display multiline strings.
121
- * @default `false`
122
- */
123
- multiline?: boolean | undefined;
33
+ value: W;
124
34
  } & Omit<
125
- {
126
- /**
127
- * Number of past states to retain.
128
- * @default `1` \
129
- * Or `64` if value is `number` and `graph` is `true`.
130
- */
131
- bufferSize?: number | undefined;
132
- /**
133
- * Time between value samples in milliseconds.
134
- *
135
- * Useful when `graph` is true. Defaults to reactive value updates only (`interval={0}`).
136
- * @default `0`
137
- */
138
- interval?: number | undefined;
139
- /**
140
- * Number of visible rows of state history.
141
- *
142
- * If `bufferSize` is larger, then the value window will scroll once state history exceeds
143
- * row count.
144
- * @default `1` \
145
- * Or `3` if value is `string` and `multiline` is `true`.
146
- */
147
- rows?: number | undefined;
148
- } & {
149
- /**
150
- * A value to monitor.
151
- * @bindable
152
- */
153
- value: string;
154
- } & Omit<
155
- {
156
- /**
157
- * The binding's target object with values to manipulate.
158
- * @bindable
159
- */
160
- object: import('@tweakpane/core').Bindable & Record<string, string>;
161
- /** The key for the value in the target `object` that the control should manipulate. */
162
- key: string;
163
- /**
164
- * Prevent interactivity and gray out the control.
165
- * @default `false`
166
- */
167
- disabled?: boolean | undefined;
168
- /**
169
- * Text displayed next to control.
170
- * @default `undefined`
171
- */
172
- label?: string | undefined;
173
- /**
174
- * Tweakpane's internal options object.
175
- *
176
- * See [`BindingParams`](https://tweakpane.github.io/docs/api/types/BindingParams.html).
177
- *
178
- * Valid types are contingent on the type of the value `key` points to in `object`.
179
- *
180
- * This is intended internal use, when implementing convenience components wrapping Binding's
181
- * functionality. Options of interest are instead exposed as top-level props in _Svelte
182
- * Tweakpane UI_.
183
- * @default `undefined`
184
- */
185
- options?: import('tweakpane').StringMonitorParams | undefined;
186
- /**
187
- * Custom color scheme.
188
- *
189
- * @default `undefined` \
190
- * Inherits default Tweakpane theme equivalent to `ThemeUtils.presets.standard`, or the theme
191
- * set with `setGlobalDefaultTheme()`.
192
- */
193
- theme?: import('..').Theme | undefined;
194
- /**
195
- * Reference to internal Tweakpane
196
- * [`BindingApi`](https://tweakpane.github.io/docs/api/classes/_internal_.BindingApi.html) for
197
- * this control.
198
- *
199
- * This property is exposed for advanced use cases only, such as when implementing convenience
200
- * components wrapping `<Binding>`'s functionality.
201
- *
202
- * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
203
- *
204
- * @bindable
205
- * @readonly
206
- */
207
- ref?: import('../internal/GenericMonitor.svelte').GenericMonitorRef | undefined;
208
- /**
209
- * Imported Tweakpane `TpPluginBundle` (aliased as `Plugin`) module to automatically register in
210
- * the `<Binding>`'s containing `<Pane>`.
211
- *
212
- * This property is exposed for advanced use cases only, such as when implementing convenience
213
- * components wrapping `<Binding>`'s functionality in combination with a Tweakpane plugin.
214
- *
215
- * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
216
- *
217
- * @default `undefined`
218
- */
219
- plugin?: import('tweakpane').TpPluginBundle | undefined;
220
- },
221
- 'object' | 'key'
222
- >,
223
- 'ref' | 'options' | 'plugin' | 'interval'
224
- >
225
- : W extends boolean
226
- ? {
227
- /**
228
- * A value to monitor.
229
- * @bindable
230
- */
231
- value: boolean;
232
- } & Omit<
233
35
  {
234
36
  /**
235
- * Number of past states to retain.
236
- * @default `1` \
237
- * Or `64` if value is `number` and `graph` is `true`.
37
+ * The binding's target object with values to manipulate.
38
+ * @bindable
39
+ */
40
+ object: import('@tweakpane/core').Bindable & Record<string, W>;
41
+ /** The key for the value in the target `object` that the control should manipulate. */
42
+ key: string;
43
+ /**
44
+ * Prevent interactivity and gray out the control.
45
+ * @default `false`
46
+ */
47
+ disabled?: boolean | undefined;
48
+ /**
49
+ * Text displayed next to control.
50
+ * @default `undefined`
238
51
  */
239
- bufferSize?: number | undefined;
52
+ label?: string | undefined;
240
53
  /**
241
- * Time between value samples in milliseconds.
54
+ * Tweakpane's internal options object.
242
55
  *
243
- * Useful when `graph` is true. Defaults to reactive value updates only (`interval={0}`).
244
- * @default `0`
56
+ * See [`BindingParams`](https://tweakpane.github.io/docs/api/types/BindingParams.html).
57
+ *
58
+ * Valid types are contingent on the type of the value `key` points to in `object`.
59
+ *
60
+ * This is intended internal use, when implementing convenience components wrapping Binding's
61
+ * functionality. Options of interest are instead exposed as top-level props in _Svelte
62
+ * Tweakpane UI_.
63
+ * @default `undefined`
245
64
  */
246
- interval?: number | undefined;
65
+ options?:
66
+ | (W extends infer T
67
+ ? T extends W
68
+ ? T extends string
69
+ ? import('tweakpane').StringMonitorParams
70
+ : T extends boolean
71
+ ? import('tweakpane').BooleanMonitorParams
72
+ : T extends number
73
+ ? import('tweakpane').NumberMonitorParams
74
+ : import('@tweakpane/core').BaseMonitorParams
75
+ : never
76
+ : never)
77
+ | undefined;
247
78
  /**
248
- * Number of visible rows of state history.
79
+ * Custom color scheme.
249
80
  *
250
- * If `bufferSize` is larger, then the value window will scroll once state history exceeds
251
- * row count.
252
- * @default `1` \
253
- * Or `3` if value is `string` and `multiline` is `true`.
81
+ * @default `undefined` \
82
+ * Inherits default Tweakpane theme equivalent to `ThemeUtils.presets.standard`, or the theme
83
+ * set with `setGlobalDefaultTheme()`.
254
84
  */
255
- rows?: number | undefined;
256
- } & {
85
+ theme?: import('..').Theme | undefined;
257
86
  /**
258
- * A value to monitor.
87
+ * Reference to internal Tweakpane
88
+ * [`BindingApi`](https://tweakpane.github.io/docs/api/classes/_internal_.BindingApi.html) for
89
+ * this control.
90
+ *
91
+ * This property is exposed for advanced use cases only, such as when implementing convenience
92
+ * components wrapping `<Binding>`'s functionality.
93
+ *
94
+ * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
95
+ *
259
96
  * @bindable
97
+ * @readonly
98
+ */
99
+ ref?: import('../internal/GenericMonitor.svelte').GenericMonitorRef | undefined;
100
+ /**
101
+ * Imported Tweakpane `TpPluginBundle` (aliased as `Plugin`) module to automatically register in
102
+ * the `<Binding>`'s containing `<Pane>`.
103
+ *
104
+ * This property is exposed for advanced use cases only, such as when implementing convenience
105
+ * components wrapping `<Binding>`'s functionality in combination with a Tweakpane plugin.
106
+ *
107
+ * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
108
+ *
109
+ * @default `undefined`
260
110
  */
261
- value: boolean;
262
- } & Omit<
263
- {
111
+ plugin?: import('tweakpane').TpPluginBundle | undefined;
112
+ },
113
+ 'object' | 'key'
114
+ >,
115
+ 'ref' | 'options' | 'plugin'
116
+ > &
117
+ (W extends infer T_1
118
+ ? T_1 extends W
119
+ ? T_1 extends string
120
+ ? {
264
121
  /**
265
- * The binding's target object with values to manipulate.
122
+ * A value to monitor.
266
123
  * @bindable
267
124
  */
268
- object: import('@tweakpane/core').Bindable & Record<string, boolean>;
269
- /** The key for the value in the target `object` that the control should manipulate. */
270
- key: string;
125
+ value: string;
271
126
  /**
272
- * Prevent interactivity and gray out the control.
127
+ * Display multiline strings.
273
128
  * @default `false`
274
129
  */
275
- disabled?: boolean | undefined;
276
- /**
277
- * Text displayed next to control.
278
- * @default `undefined`
279
- */
280
- label?: string | undefined;
281
- /**
282
- * Tweakpane's internal options object.
283
- *
284
- * See [`BindingParams`](https://tweakpane.github.io/docs/api/types/BindingParams.html).
285
- *
286
- * Valid types are contingent on the type of the value `key` points to in `object`.
287
- *
288
- * This is intended internal use, when implementing convenience components wrapping Binding's
289
- * functionality. Options of interest are instead exposed as top-level props in _Svelte
290
- * Tweakpane UI_.
291
- * @default `undefined`
292
- */
293
- options?: import('tweakpane').BooleanMonitorParams | undefined;
294
- /**
295
- * Custom color scheme.
296
- *
297
- * @default `undefined` \
298
- * Inherits default Tweakpane theme equivalent to `ThemeUtils.presets.standard`, or the theme
299
- * set with `setGlobalDefaultTheme()`.
300
- */
301
- theme?: import('..').Theme | undefined;
302
- /**
303
- * Reference to internal Tweakpane
304
- * [`BindingApi`](https://tweakpane.github.io/docs/api/classes/_internal_.BindingApi.html) for
305
- * this control.
306
- *
307
- * This property is exposed for advanced use cases only, such as when implementing convenience
308
- * components wrapping `<Binding>`'s functionality.
309
- *
310
- * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
311
- *
312
- * @bindable
313
- * @readonly
314
- */
315
- ref?: import('../internal/GenericMonitor.svelte').GenericMonitorRef | undefined;
316
- /**
317
- * Imported Tweakpane `TpPluginBundle` (aliased as `Plugin`) module to automatically register in
318
- * the `<Binding>`'s containing `<Pane>`.
319
- *
320
- * This property is exposed for advanced use cases only, such as when implementing convenience
321
- * components wrapping `<Binding>`'s functionality in combination with a Tweakpane plugin.
322
- *
323
- * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
324
- *
325
- * @default `undefined`
326
- */
327
- plugin?: import('tweakpane').TpPluginBundle | undefined;
328
- },
329
- 'object' | 'key'
330
- >,
331
- 'ref' | 'options' | 'plugin' | 'interval'
332
- >
333
- : W extends number
334
- ? {
335
- /**
336
- * A value to monitor.
337
- * @bindable
338
- */
339
- value: number;
340
- /**
341
- * Minimum bound when `graph` is true.
342
- * @default `0`
343
- */
344
- min?: number | undefined;
345
- /**
346
- * Maximum bound when `graph` is true.
347
- * @default `100`
348
- */
349
- max?: number | undefined;
350
- /**
351
- * A function to customize the number's string representation (e.g. rounding, etc.).
352
- * @default `undefined` \
353
- * Normal `.toString()` formatting.
354
- */
355
- format?: ((value: number) => string) | undefined;
356
- /**
357
- * Display a graph of the value's changes over time.
358
- * @default `false`
359
- */
360
- graph?: boolean | undefined;
361
- } & Omit<
362
- {
363
- /**
364
- * Number of past states to retain.
365
- * @default `1` \
366
- * Or `64` if value is `number` and `graph` is `true`.
367
- */
368
- bufferSize?: number | undefined;
369
- /**
370
- * Time between value samples in milliseconds.
371
- *
372
- * Useful when `graph` is true. Defaults to reactive value updates only (`interval={0}`).
373
- * @default `0`
374
- */
375
- interval?: number | undefined;
376
- /**
377
- * Number of visible rows of state history.
378
- *
379
- * If `bufferSize` is larger, then the value window will scroll once state history exceeds
380
- * row count.
381
- * @default `1` \
382
- * Or `3` if value is `string` and `multiline` is `true`.
383
- */
384
- rows?: number | undefined;
385
- } & {
386
- /**
387
- * A value to monitor.
388
- * @bindable
389
- */
390
- value: number;
391
- } & Omit<
130
+ multiline?: boolean | undefined;
131
+ } & Omit<
392
132
  {
393
133
  /**
394
- * The binding's target object with values to manipulate.
395
- * @bindable
396
- */
397
- object: import('@tweakpane/core').Bindable & Record<string, number>;
398
- /** The key for the value in the target `object` that the control should manipulate. */
399
- key: string;
400
- /**
401
- * Prevent interactivity and gray out the control.
402
- * @default `false`
403
- */
404
- disabled?: boolean | undefined;
405
- /**
406
- * Text displayed next to control.
407
- * @default `undefined`
134
+ * Number of past states to retain.
135
+ * @default `1` \
136
+ * Or `64` if value is `number` and `graph` is `true`.
408
137
  */
409
- label?: string | undefined;
138
+ bufferSize?: number | undefined;
410
139
  /**
411
- * Tweakpane's internal options object.
140
+ * Time between value samples in milliseconds.
412
141
  *
413
- * See [`BindingParams`](https://tweakpane.github.io/docs/api/types/BindingParams.html).
414
- *
415
- * Valid types are contingent on the type of the value `key` points to in `object`.
416
- *
417
- * This is intended internal use, when implementing convenience components wrapping Binding's
418
- * functionality. Options of interest are instead exposed as top-level props in _Svelte
419
- * Tweakpane UI_.
420
- * @default `undefined`
142
+ * Useful when `graph` is true. Defaults to reactive value updates only (`interval={0}`).
143
+ * @default `0`
421
144
  */
422
- options?: import('tweakpane').NumberMonitorParams | undefined;
145
+ interval?: number | undefined;
423
146
  /**
424
- * Custom color scheme.
147
+ * Number of visible rows of state history.
425
148
  *
426
- * @default `undefined` \
427
- * Inherits default Tweakpane theme equivalent to `ThemeUtils.presets.standard`, or the theme
428
- * set with `setGlobalDefaultTheme()`.
149
+ * If `bufferSize` is larger, then the value window will scroll once state history exceeds
150
+ * row count.
151
+ * @default `1` \
152
+ * Or `3` if value is `string` and `multiline` is `true`.
429
153
  */
430
- theme?: import('..').Theme | undefined;
154
+ rows?: number | undefined;
155
+ } & {
431
156
  /**
432
- * Reference to internal Tweakpane
433
- * [`BindingApi`](https://tweakpane.github.io/docs/api/classes/_internal_.BindingApi.html) for
434
- * this control.
435
- *
436
- * This property is exposed for advanced use cases only, such as when implementing convenience
437
- * components wrapping `<Binding>`'s functionality.
438
- *
439
- * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
440
- *
157
+ * A value to monitor.
441
158
  * @bindable
442
- * @readonly
443
159
  */
444
- ref?: import('../internal/GenericMonitor.svelte').GenericMonitorRef | undefined;
160
+ value: string;
161
+ } & Omit<
162
+ {
163
+ /**
164
+ * The binding's target object with values to manipulate.
165
+ * @bindable
166
+ */
167
+ object: import('@tweakpane/core').Bindable & Record<string, string>;
168
+ /** The key for the value in the target `object` that the control should manipulate. */
169
+ key: string;
170
+ /**
171
+ * Prevent interactivity and gray out the control.
172
+ * @default `false`
173
+ */
174
+ disabled?: boolean | undefined;
175
+ /**
176
+ * Text displayed next to control.
177
+ * @default `undefined`
178
+ */
179
+ label?: string | undefined;
180
+ /**
181
+ * Tweakpane's internal options object.
182
+ *
183
+ * See [`BindingParams`](https://tweakpane.github.io/docs/api/types/BindingParams.html).
184
+ *
185
+ * Valid types are contingent on the type of the value `key` points to in `object`.
186
+ *
187
+ * This is intended internal use, when implementing convenience components wrapping Binding's
188
+ * functionality. Options of interest are instead exposed as top-level props in _Svelte
189
+ * Tweakpane UI_.
190
+ * @default `undefined`
191
+ */
192
+ options?: import('tweakpane').StringMonitorParams | undefined;
193
+ /**
194
+ * Custom color scheme.
195
+ *
196
+ * @default `undefined` \
197
+ * Inherits default Tweakpane theme equivalent to `ThemeUtils.presets.standard`, or the theme
198
+ * set with `setGlobalDefaultTheme()`.
199
+ */
200
+ theme?: import('..').Theme | undefined;
201
+ /**
202
+ * Reference to internal Tweakpane
203
+ * [`BindingApi`](https://tweakpane.github.io/docs/api/classes/_internal_.BindingApi.html) for
204
+ * this control.
205
+ *
206
+ * This property is exposed for advanced use cases only, such as when implementing convenience
207
+ * components wrapping `<Binding>`'s functionality.
208
+ *
209
+ * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
210
+ *
211
+ * @bindable
212
+ * @readonly
213
+ */
214
+ ref?:
215
+ | import('../internal/GenericMonitor.svelte').GenericMonitorRef
216
+ | undefined;
217
+ /**
218
+ * Imported Tweakpane `TpPluginBundle` (aliased as `Plugin`) module to automatically register in
219
+ * the `<Binding>`'s containing `<Pane>`.
220
+ *
221
+ * This property is exposed for advanced use cases only, such as when implementing convenience
222
+ * components wrapping `<Binding>`'s functionality in combination with a Tweakpane plugin.
223
+ *
224
+ * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
225
+ *
226
+ * @default `undefined`
227
+ */
228
+ plugin?: import('tweakpane').TpPluginBundle | undefined;
229
+ },
230
+ 'object' | 'key'
231
+ >,
232
+ 'ref' | 'options' | 'plugin' | 'interval'
233
+ >
234
+ : T_1 extends boolean
235
+ ? {
445
236
  /**
446
- * Imported Tweakpane `TpPluginBundle` (aliased as `Plugin`) module to automatically register in
447
- * the `<Binding>`'s containing `<Pane>`.
448
- *
449
- * This property is exposed for advanced use cases only, such as when implementing convenience
450
- * components wrapping `<Binding>`'s functionality in combination with a Tweakpane plugin.
451
- *
452
- * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
453
- *
454
- * @default `undefined`
237
+ * A value to monitor.
238
+ * @bindable
455
239
  */
456
- plugin?: import('tweakpane').TpPluginBundle | undefined;
457
- },
458
- 'object' | 'key'
459
- >,
460
- 'ref' | 'options' | 'plugin'
461
- >
462
- : {
240
+ value: boolean;
241
+ } & Omit<
242
+ {
243
+ /**
244
+ * Number of past states to retain.
245
+ * @default `1` \
246
+ * Or `64` if value is `number` and `graph` is `true`.
247
+ */
248
+ bufferSize?: number | undefined;
249
+ /**
250
+ * Time between value samples in milliseconds.
251
+ *
252
+ * Useful when `graph` is true. Defaults to reactive value updates only (`interval={0}`).
253
+ * @default `0`
254
+ */
255
+ interval?: number | undefined;
256
+ /**
257
+ * Number of visible rows of state history.
258
+ *
259
+ * If `bufferSize` is larger, then the value window will scroll once state history exceeds
260
+ * row count.
261
+ * @default `1` \
262
+ * Or `3` if value is `string` and `multiline` is `true`.
263
+ */
264
+ rows?: number | undefined;
265
+ } & {
266
+ /**
267
+ * A value to monitor.
268
+ * @bindable
269
+ */
270
+ value: boolean;
271
+ } & Omit<
272
+ {
273
+ /**
274
+ * The binding's target object with values to manipulate.
275
+ * @bindable
276
+ */
277
+ object: import('@tweakpane/core').Bindable & Record<string, boolean>;
278
+ /** The key for the value in the target `object` that the control should manipulate. */
279
+ key: string;
280
+ /**
281
+ * Prevent interactivity and gray out the control.
282
+ * @default `false`
283
+ */
284
+ disabled?: boolean | undefined;
285
+ /**
286
+ * Text displayed next to control.
287
+ * @default `undefined`
288
+ */
289
+ label?: string | undefined;
290
+ /**
291
+ * Tweakpane's internal options object.
292
+ *
293
+ * See [`BindingParams`](https://tweakpane.github.io/docs/api/types/BindingParams.html).
294
+ *
295
+ * Valid types are contingent on the type of the value `key` points to in `object`.
296
+ *
297
+ * This is intended internal use, when implementing convenience components wrapping Binding's
298
+ * functionality. Options of interest are instead exposed as top-level props in _Svelte
299
+ * Tweakpane UI_.
300
+ * @default `undefined`
301
+ */
302
+ options?: import('tweakpane').BooleanMonitorParams | undefined;
303
+ /**
304
+ * Custom color scheme.
305
+ *
306
+ * @default `undefined` \
307
+ * Inherits default Tweakpane theme equivalent to `ThemeUtils.presets.standard`, or the theme
308
+ * set with `setGlobalDefaultTheme()`.
309
+ */
310
+ theme?: import('..').Theme | undefined;
311
+ /**
312
+ * Reference to internal Tweakpane
313
+ * [`BindingApi`](https://tweakpane.github.io/docs/api/classes/_internal_.BindingApi.html) for
314
+ * this control.
315
+ *
316
+ * This property is exposed for advanced use cases only, such as when implementing convenience
317
+ * components wrapping `<Binding>`'s functionality.
318
+ *
319
+ * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
320
+ *
321
+ * @bindable
322
+ * @readonly
323
+ */
324
+ ref?:
325
+ | import('../internal/GenericMonitor.svelte').GenericMonitorRef
326
+ | undefined;
327
+ /**
328
+ * Imported Tweakpane `TpPluginBundle` (aliased as `Plugin`) module to automatically register in
329
+ * the `<Binding>`'s containing `<Pane>`.
330
+ *
331
+ * This property is exposed for advanced use cases only, such as when implementing convenience
332
+ * components wrapping `<Binding>`'s functionality in combination with a Tweakpane plugin.
333
+ *
334
+ * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
335
+ *
336
+ * @default `undefined`
337
+ */
338
+ plugin?: import('tweakpane').TpPluginBundle | undefined;
339
+ },
340
+ 'object' | 'key'
341
+ >,
342
+ 'ref' | 'options' | 'plugin' | 'interval'
343
+ >
344
+ : T_1 extends number
345
+ ? {
346
+ /**
347
+ * A value to monitor.
348
+ * @bindable
349
+ */
350
+ value: number;
351
+ /**
352
+ * Minimum bound when `graph` is true.
353
+ * @default `0`
354
+ */
355
+ min?: number | undefined;
356
+ /**
357
+ * Maximum bound when `graph` is true.
358
+ * @default `100`
359
+ */
360
+ max?: number | undefined;
361
+ /**
362
+ * A function to customize the number's string representation (e.g. rounding, etc.).
363
+ * @default `undefined` \
364
+ * Normal `.toString()` formatting.
365
+ */
366
+ format?: ((value: number) => string) | undefined;
367
+ /**
368
+ * Display a graph of the value's changes over time.
369
+ * @default `false`
370
+ */
371
+ graph?: boolean | undefined;
372
+ } & Omit<
373
+ {
374
+ /**
375
+ * Number of past states to retain.
376
+ * @default `1` \
377
+ * Or `64` if value is `number` and `graph` is `true`.
378
+ */
379
+ bufferSize?: number | undefined;
380
+ /**
381
+ * Time between value samples in milliseconds.
382
+ *
383
+ * Useful when `graph` is true. Defaults to reactive value updates only (`interval={0}`).
384
+ * @default `0`
385
+ */
386
+ interval?: number | undefined;
387
+ /**
388
+ * Number of visible rows of state history.
389
+ *
390
+ * If `bufferSize` is larger, then the value window will scroll once state history exceeds
391
+ * row count.
392
+ * @default `1` \
393
+ * Or `3` if value is `string` and `multiline` is `true`.
394
+ */
395
+ rows?: number | undefined;
396
+ } & {
397
+ /**
398
+ * A value to monitor.
399
+ * @bindable
400
+ */
401
+ value: number;
402
+ } & Omit<
403
+ {
404
+ /**
405
+ * The binding's target object with values to manipulate.
406
+ * @bindable
407
+ */
408
+ object: import('@tweakpane/core').Bindable & Record<string, number>;
409
+ /** The key for the value in the target `object` that the control should manipulate. */
410
+ key: string;
411
+ /**
412
+ * Prevent interactivity and gray out the control.
413
+ * @default `false`
414
+ */
415
+ disabled?: boolean | undefined;
416
+ /**
417
+ * Text displayed next to control.
418
+ * @default `undefined`
419
+ */
420
+ label?: string | undefined;
421
+ /**
422
+ * Tweakpane's internal options object.
423
+ *
424
+ * See [`BindingParams`](https://tweakpane.github.io/docs/api/types/BindingParams.html).
425
+ *
426
+ * Valid types are contingent on the type of the value `key` points to in `object`.
427
+ *
428
+ * This is intended internal use, when implementing convenience components wrapping Binding's
429
+ * functionality. Options of interest are instead exposed as top-level props in _Svelte
430
+ * Tweakpane UI_.
431
+ * @default `undefined`
432
+ */
433
+ options?: import('tweakpane').NumberMonitorParams | undefined;
434
+ /**
435
+ * Custom color scheme.
436
+ *
437
+ * @default `undefined` \
438
+ * Inherits default Tweakpane theme equivalent to `ThemeUtils.presets.standard`, or the theme
439
+ * set with `setGlobalDefaultTheme()`.
440
+ */
441
+ theme?: import('..').Theme | undefined;
442
+ /**
443
+ * Reference to internal Tweakpane
444
+ * [`BindingApi`](https://tweakpane.github.io/docs/api/classes/_internal_.BindingApi.html) for
445
+ * this control.
446
+ *
447
+ * This property is exposed for advanced use cases only, such as when implementing convenience
448
+ * components wrapping `<Binding>`'s functionality.
449
+ *
450
+ * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
451
+ *
452
+ * @bindable
453
+ * @readonly
454
+ */
455
+ ref?:
456
+ | import('../internal/GenericMonitor.svelte').GenericMonitorRef
457
+ | undefined;
458
+ /**
459
+ * Imported Tweakpane `TpPluginBundle` (aliased as `Plugin`) module to automatically register in
460
+ * the `<Binding>`'s containing `<Pane>`.
461
+ *
462
+ * This property is exposed for advanced use cases only, such as when implementing convenience
463
+ * components wrapping `<Binding>`'s functionality in combination with a Tweakpane plugin.
464
+ *
465
+ * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
466
+ *
467
+ * @default `undefined`
468
+ */
469
+ plugin?: import('tweakpane').TpPluginBundle | undefined;
470
+ },
471
+ 'object' | 'key'
472
+ >,
473
+ 'ref' | 'options' | 'plugin'
474
+ >
475
+ : {
476
+ /**
477
+ * A value to monitor.
478
+ * @bindable
479
+ * */
480
+ value: string | number | boolean;
481
+ }
482
+ : never
483
+ : never)
484
+ : Omit<
485
+ {
486
+ /**
487
+ * Number of past states to retain.
488
+ * @default `1` \
489
+ * Or `64` if value is `number` and `graph` is `true`.
490
+ */
491
+ bufferSize?: number | undefined;
492
+ /**
493
+ * Time between value samples in milliseconds.
494
+ *
495
+ * Useful when `graph` is true. Defaults to reactive value updates only (`interval={0}`).
496
+ * @default `0`
497
+ */
498
+ interval?: number | undefined;
499
+ /**
500
+ * Number of visible rows of state history.
501
+ *
502
+ * If `bufferSize` is larger, then the value window will scroll once state history exceeds
503
+ * row count.
504
+ * @default `1` \
505
+ * Or `3` if value is `string` and `multiline` is `true`.
506
+ */
507
+ rows?: number | undefined;
508
+ } & {
509
+ /**
510
+ * A value to monitor.
511
+ * @bindable
512
+ */
513
+ value: string | number | boolean;
514
+ } & Omit<
515
+ {
463
516
  /**
464
- * A value to monitor.
517
+ * The binding's target object with values to manipulate.
465
518
  * @bindable
466
- * */
467
- value: string | number | boolean;
468
- });
519
+ */
520
+ object: import('@tweakpane/core').Bindable &
521
+ Record<string, string | number | boolean>;
522
+ /** The key for the value in the target `object` that the control should manipulate. */
523
+ key: string;
524
+ /**
525
+ * Prevent interactivity and gray out the control.
526
+ * @default `false`
527
+ */
528
+ disabled?: boolean | undefined;
529
+ /**
530
+ * Text displayed next to control.
531
+ * @default `undefined`
532
+ */
533
+ label?: string | undefined;
534
+ /**
535
+ * Tweakpane's internal options object.
536
+ *
537
+ * See [`BindingParams`](https://tweakpane.github.io/docs/api/types/BindingParams.html).
538
+ *
539
+ * Valid types are contingent on the type of the value `key` points to in `object`.
540
+ *
541
+ * This is intended internal use, when implementing convenience components wrapping Binding's
542
+ * functionality. Options of interest are instead exposed as top-level props in _Svelte
543
+ * Tweakpane UI_.
544
+ * @default `undefined`
545
+ */
546
+ options?:
547
+ | import('tweakpane').BooleanMonitorParams
548
+ | import('tweakpane').NumberMonitorParams
549
+ | import('tweakpane').StringMonitorParams
550
+ | undefined;
551
+ /**
552
+ * Custom color scheme.
553
+ *
554
+ * @default `undefined` \
555
+ * Inherits default Tweakpane theme equivalent to `ThemeUtils.presets.standard`, or the theme
556
+ * set with `setGlobalDefaultTheme()`.
557
+ */
558
+ theme?: import('..').Theme | undefined;
559
+ /**
560
+ * Reference to internal Tweakpane
561
+ * [`BindingApi`](https://tweakpane.github.io/docs/api/classes/_internal_.BindingApi.html) for
562
+ * this control.
563
+ *
564
+ * This property is exposed for advanced use cases only, such as when implementing convenience
565
+ * components wrapping `<Binding>`'s functionality.
566
+ *
567
+ * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
568
+ *
569
+ * @bindable
570
+ * @readonly
571
+ */
572
+ ref?: import('../internal/GenericMonitor.svelte').GenericMonitorRef | undefined;
573
+ /**
574
+ * Imported Tweakpane `TpPluginBundle` (aliased as `Plugin`) module to automatically register in
575
+ * the `<Binding>`'s containing `<Pane>`.
576
+ *
577
+ * This property is exposed for advanced use cases only, such as when implementing convenience
578
+ * components wrapping `<Binding>`'s functionality in combination with a Tweakpane plugin.
579
+ *
580
+ * Direct manipulation of Tweakpane's internals can break _Svelte Tweakpane UI_ abstractions.
581
+ *
582
+ * @default `undefined`
583
+ */
584
+ plugin?: import('tweakpane').TpPluginBundle | undefined;
585
+ },
586
+ 'object' | 'key'
587
+ >,
588
+ 'ref' | 'options' | 'plugin'
589
+ >;
469
590
  events(): {} & {
470
591
  [evt: string]: CustomEvent<any>;
471
592
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "svelte-tweakpane-ui",
3
- "version": "1.2.4",
3
+ "version": "1.2.5",
4
4
  "type": "module",
5
5
  "description": "A Svelte component library wrapping UI elements from Tweakpane, plus some additional functionality for convenience and flexibility.",
6
6
  "repository": {
@@ -202,33 +202,33 @@
202
202
  "devDependencies": {
203
203
  "@kitschpatrol/shared-config": "^4.6.3",
204
204
  "@phenomnomnominal/tsquery": "^6.1.3",
205
- "@playwright/test": "^1.43.1",
205
+ "@playwright/test": "^1.44.0",
206
206
  "@stkb/rewrap": "^0.1.0",
207
207
  "@sveltejs/adapter-static": "^3.0.1",
208
- "@sveltejs/kit": "^2.5.6",
208
+ "@sveltejs/kit": "^2.5.8",
209
209
  "@sveltejs/package": "^2.3.1",
210
210
  "@sveltejs/vite-plugin-svelte": "^3.1.0",
211
211
  "@types/eslint": "^8.56.10",
212
212
  "@types/fs-extra": "^11.0.4",
213
- "@types/node": "^20.12.7",
214
- "bumpp": "^9.4.0",
213
+ "@types/node": "^20.12.11",
214
+ "bumpp": "^9.4.1",
215
215
  "eslint": "^8.57.0",
216
216
  "fs-extra": "^11.2.0",
217
- "glob": "^10.3.12",
217
+ "glob": "^10.3.15",
218
218
  "npm-run-all": "^4.1.5",
219
- "postcss-html": "^1.6.0",
219
+ "postcss-html": "^1.7.0",
220
220
  "publint": "^0.2.7",
221
221
  "read-package-up": "^11.0.0",
222
- "svelte": "^4.2.15",
223
- "svelte-check": "^3.6.9",
224
- "svelte-language-server": "^0.16.7",
225
- "svelte2tsx": "^0.7.6",
226
- "ts-morph": "^21.0.1",
222
+ "svelte": "^4.2.17",
223
+ "svelte-check": "^3.7.1",
224
+ "svelte-language-server": "^0.16.9",
225
+ "svelte2tsx": "^0.7.8",
226
+ "ts-morph": "^22.0.0",
227
227
  "tslib": "^2.6.2",
228
- "tsx": "^4.7.2",
229
- "typescript": "~5.3.3",
230
- "vite": "^5.2.9",
231
- "yaml": "^2.4.1"
228
+ "tsx": "^4.10.2",
229
+ "typescript": "^5.4.5",
230
+ "vite": "^5.2.11",
231
+ "yaml": "^2.4.2"
232
232
  },
233
233
  "scripts": {
234
234
  "build": "run-s --print-label build:*",
@@ -262,7 +262,7 @@
262
262
  "release": "run-s --print-label release:*",
263
263
  "release:1-build": "pnpm run build",
264
264
  "release:2-version": "pnpm bumpp --commit 'Release: %s' --tag 'v%s'",
265
- "release:3-publish": "pnpm publish --ignore-scripts --otp $(op read 'op://Personal/Npmjs/one-time password?attribute=otp')",
265
+ "release:3-publish": "pnpm publish --no-git-checks --ignore-scripts --otp $(op read 'op://Personal/Npmjs/one-time password?attribute=otp')",
266
266
  "rewrap": "rewrap -i --column 100 `find src \\( -name '*.svelte' -o -name '*.ts' -o -name '*.html' \\) -type f | grep -v src/examples`",
267
267
  "test": "run-s --print-label test:*",
268
268
  "test:integration": "playwright test",
package/readme.md CHANGED
@@ -29,7 +29,7 @@
29
29
  [![NPM Package svelte-tweakpane-ui](https://img.shields.io/npm/v/svelte-tweakpane-ui.svg)](https://npmjs.com/package/svelte-tweakpane-ui)
30
30
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
31
31
  [![MadeWithSvelte](https://madewithsvelte.com/storage/repo-shields/4860-shield.svg)](https://madewithsvelte.com/p/svelte-tweakpane-ui/shield-link)
32
- [![Documentation](https://img.shields.io/badge/-Documentation-ffdd00?logo=readthedocs&logoColor=222222)](https://kitschpatrol.com/svelte-tweakpane-ui)
32
+ [![Documentation](https://img.shields.io/badge/-Documentation-ffdd00?logo=readthedocs\&logoColor=222222)](https://kitschpatrol.com/svelte-tweakpane-ui)
33
33
 
34
34
  <!-- /badges -->
35
35
 
@@ -84,6 +84,6 @@ npm install svelte-tweakpane-ui
84
84
 
85
85
  <!-- /footer -->
86
86
 
87
- ---
87
+ ***
88
88
 
89
89
  _Note: This library is not to be confused with Karl Moore's [`svelte-tweakpane`](https://github.com/pierogis/svelte-tweakpane)._