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
|
-
*
|
|
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 =
|
|
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
|
-
|
|
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
|
-
//
|
|
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
|
|
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
|
|
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
|
|
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.
|
|
157
|
-
|
|
158
|
-
|
|
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 <
|
|
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
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
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():
|
|
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
|
-
*
|
|
37
|
-
* @
|
|
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
|
-
|
|
11
|
+
bufferSize?: number | undefined;
|
|
52
12
|
/**
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
* See [`BindingParams`](https://tweakpane.github.io/docs/api/types/BindingParams.html).
|
|
13
|
+
* Time between value samples in milliseconds.
|
|
56
14
|
*
|
|
57
|
-
*
|
|
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
|
-
|
|
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
|
-
*
|
|
20
|
+
* Number of visible rows of state history.
|
|
75
21
|
*
|
|
76
|
-
*
|
|
77
|
-
*
|
|
78
|
-
*
|
|
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
|
-
|
|
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:
|
|
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
|
-
*
|
|
236
|
-
* @
|
|
237
|
-
|
|
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
|
-
|
|
52
|
+
label?: string | undefined;
|
|
240
53
|
/**
|
|
241
|
-
*
|
|
54
|
+
* Tweakpane's internal options object.
|
|
242
55
|
*
|
|
243
|
-
*
|
|
244
|
-
*
|
|
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
|
-
|
|
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
|
-
*
|
|
79
|
+
* Custom color scheme.
|
|
249
80
|
*
|
|
250
|
-
*
|
|
251
|
-
*
|
|
252
|
-
*
|
|
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
|
-
|
|
256
|
-
} & {
|
|
85
|
+
theme?: import('..').Theme | undefined;
|
|
257
86
|
/**
|
|
258
|
-
*
|
|
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
|
-
|
|
262
|
-
}
|
|
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
|
-
*
|
|
122
|
+
* A value to monitor.
|
|
266
123
|
* @bindable
|
|
267
124
|
*/
|
|
268
|
-
|
|
269
|
-
/** The key for the value in the target `object` that the control should manipulate. */
|
|
270
|
-
key: string;
|
|
125
|
+
value: string;
|
|
271
126
|
/**
|
|
272
|
-
*
|
|
127
|
+
* Display multiline strings.
|
|
273
128
|
* @default `false`
|
|
274
129
|
*/
|
|
275
|
-
|
|
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
|
-
*
|
|
395
|
-
* @
|
|
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
|
-
|
|
138
|
+
bufferSize?: number | undefined;
|
|
410
139
|
/**
|
|
411
|
-
*
|
|
140
|
+
* Time between value samples in milliseconds.
|
|
412
141
|
*
|
|
413
|
-
*
|
|
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
|
-
|
|
145
|
+
interval?: number | undefined;
|
|
423
146
|
/**
|
|
424
|
-
*
|
|
147
|
+
* Number of visible rows of state history.
|
|
425
148
|
*
|
|
426
|
-
*
|
|
427
|
-
*
|
|
428
|
-
*
|
|
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
|
-
|
|
154
|
+
rows?: number | undefined;
|
|
155
|
+
} & {
|
|
431
156
|
/**
|
|
432
|
-
*
|
|
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
|
-
|
|
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
|
-
*
|
|
447
|
-
*
|
|
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
|
-
|
|
457
|
-
}
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
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
|
-
*
|
|
517
|
+
* The binding's target object with values to manipulate.
|
|
465
518
|
* @bindable
|
|
466
|
-
|
|
467
|
-
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
214
|
-
"bumpp": "^9.4.
|
|
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.
|
|
217
|
+
"glob": "^10.3.15",
|
|
218
218
|
"npm-run-all": "^4.1.5",
|
|
219
|
-
"postcss-html": "^1.
|
|
219
|
+
"postcss-html": "^1.7.0",
|
|
220
220
|
"publint": "^0.2.7",
|
|
221
221
|
"read-package-up": "^11.0.0",
|
|
222
|
-
"svelte": "^4.2.
|
|
223
|
-
"svelte-check": "^3.
|
|
224
|
-
"svelte-language-server": "^0.16.
|
|
225
|
-
"svelte2tsx": "^0.7.
|
|
226
|
-
"ts-morph": "^
|
|
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.
|
|
229
|
-
"typescript": "
|
|
230
|
-
"vite": "^5.2.
|
|
231
|
-
"yaml": "^2.4.
|
|
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
|
[](https://npmjs.com/package/svelte-tweakpane-ui)
|
|
30
30
|
[](https://opensource.org/licenses/MIT)
|
|
31
31
|
[](https://madewithsvelte.com/p/svelte-tweakpane-ui/shield-link)
|
|
32
|
-
[](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)._
|