svelte-tweakpane-ui 1.2.6 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/control/IntervalSlider.svelte +18 -1
- package/dist/control/IntervalSlider.svelte.d.ts +8 -1
- package/dist/control/List.svelte +4 -1
- package/dist/control/Ring.svelte.d.ts +6 -6
- package/dist/control/Slider.svelte +12 -1
- package/dist/control/Slider.svelte.d.ts +8 -1
- package/dist/control/Wheel.svelte.d.ts +6 -6
- package/dist/core/Binding.svelte +8 -0
- package/dist/core/Folder.svelte.d.ts +3 -4
- package/dist/core/Pane.svelte.d.ts +2 -0
- package/dist/core/Separator.svelte.d.ts +2 -0
- package/dist/core/TabGroup.svelte.d.ts +2 -0
- package/dist/core/TabPage.svelte.d.ts +2 -0
- package/dist/extra/Element.svelte.d.ts +2 -0
- package/dist/internal/ClsPad.svelte.d.ts +2 -0
- package/dist/internal/GenericPane.svelte.d.ts +2 -0
- package/dist/internal/GenericSlider.svelte +2 -1
- package/dist/internal/GenericSlider.svelte.d.ts +6 -0
- package/dist/internal/InternalMonitorBoolean.svelte.d.ts +2 -0
- package/dist/internal/InternalMonitorNumber.svelte.d.ts +2 -0
- package/dist/internal/InternalMonitorString.svelte.d.ts +2 -0
- package/dist/internal/InternalPaneDraggable.svelte.d.ts +2 -0
- package/dist/internal/InternalPaneFixed.svelte.d.ts +2 -0
- package/dist/internal/InternalPaneInline.svelte.d.ts +2 -0
- package/dist/monitor/WaveformMonitor.svelte.d.ts +2 -0
- package/package.json +14 -14
- package/readme.md +81 -1
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
import GenericSlider from '../internal/GenericSlider.svelte';
|
|
6
6
|
export let value;
|
|
7
7
|
export let meanValue = void 0;
|
|
8
|
+
export let wide = void 0;
|
|
8
9
|
let internalValue;
|
|
9
10
|
function updateInternalValue() {
|
|
10
11
|
if (Array.isArray(value)) {
|
|
@@ -28,10 +29,26 @@
|
|
|
28
29
|
internalValue = { min: meanValue - r / 2, max: meanValue + r / 2 };
|
|
29
30
|
}
|
|
30
31
|
}
|
|
32
|
+
let ref;
|
|
33
|
+
function updateWide(wide2) {
|
|
34
|
+
const inputField = ref?.element.querySelector('div.tp-rsltxtv_t');
|
|
35
|
+
if (wide2) {
|
|
36
|
+
inputField?.style.setProperty('display', 'none');
|
|
37
|
+
} else {
|
|
38
|
+
inputField?.style.removeProperty('display');
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
$: ref && wide !== void 0 && updateWide(wide);
|
|
31
42
|
$: value, updateInternalValue();
|
|
32
43
|
$: internalValue, updateValue();
|
|
33
44
|
$: meanValue = (internalValue.min + internalValue.max) / 2;
|
|
34
45
|
$: meanValue, updateValueFromMean();
|
|
35
46
|
</script>
|
|
36
47
|
|
|
37
|
-
<GenericSlider
|
|
48
|
+
<GenericSlider
|
|
49
|
+
bind:value={internalValue}
|
|
50
|
+
bind:ref
|
|
51
|
+
on:change
|
|
52
|
+
plugin={pluginModule}
|
|
53
|
+
{...$$restProps}
|
|
54
|
+
/>
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { SvelteComponent } from 'svelte';
|
|
2
2
|
import type { Simplify } from '../utils';
|
|
3
3
|
import type { ValueChangeEvent } from '../utils.js';
|
|
4
|
+
import type { SliderInputBindingApi as GenericSliderRef } from 'tweakpane';
|
|
4
5
|
export type IntervalSliderValueTuple = [min: number, max: number];
|
|
5
6
|
export type IntervalSliderValueObject = {
|
|
6
7
|
min: number;
|
|
@@ -63,6 +64,12 @@ declare const __propDef: {
|
|
|
63
64
|
* No step constraint.
|
|
64
65
|
*/
|
|
65
66
|
step?: number | undefined;
|
|
67
|
+
/**
|
|
68
|
+
* When `true`, expand the width of the control at the expense of the numeric input
|
|
69
|
+
* field.
|
|
70
|
+
* @default `false`
|
|
71
|
+
*/
|
|
72
|
+
wide?: boolean | undefined;
|
|
66
73
|
} & {
|
|
67
74
|
/**
|
|
68
75
|
* Interval value to control.
|
|
@@ -124,7 +131,7 @@ declare const __propDef: {
|
|
|
124
131
|
* @bindable
|
|
125
132
|
* @readonly
|
|
126
133
|
*/
|
|
127
|
-
ref?:
|
|
134
|
+
ref?: GenericSliderRef | undefined;
|
|
128
135
|
/**
|
|
129
136
|
* Imported Tweakpane `TpPluginBundle` (aliased as `Plugin`) module to automatically register in
|
|
130
137
|
* the `<Binding>`'s containing `<Pane>`.
|
package/dist/control/List.svelte
CHANGED
|
@@ -53,7 +53,10 @@
|
|
|
53
53
|
? options2
|
|
54
54
|
: isObjectStyleListOptions(options2)
|
|
55
55
|
? options2
|
|
56
|
-
: options2.map((value2) => ({
|
|
56
|
+
: options2.map((value2) => ({
|
|
57
|
+
value: value2,
|
|
58
|
+
text: typeof value2 === 'object' ? JSON.stringify(value2) : String(value2)
|
|
59
|
+
}));
|
|
57
60
|
}
|
|
58
61
|
function setValue() {
|
|
59
62
|
if (!shallowEqual(listBlade.value, value)) {
|
|
@@ -44,12 +44,6 @@ declare const __propDef: {
|
|
|
44
44
|
* @default `{ ticks: 5, pixels: 40, value: 10 }`
|
|
45
45
|
* */
|
|
46
46
|
unit?: RingUnit | undefined;
|
|
47
|
-
/**
|
|
48
|
-
* When `true`, expand the width of the ring control at the expense of the numeric input
|
|
49
|
-
* field.
|
|
50
|
-
* @default `false`
|
|
51
|
-
* */
|
|
52
|
-
wide?: boolean | undefined;
|
|
53
47
|
} & Omit<
|
|
54
48
|
{
|
|
55
49
|
/**
|
|
@@ -91,6 +85,12 @@ declare const __propDef: {
|
|
|
91
85
|
* No step constraint.
|
|
92
86
|
*/
|
|
93
87
|
step?: number | undefined;
|
|
88
|
+
/**
|
|
89
|
+
* When `true`, expand the width of the control at the expense of the numeric input
|
|
90
|
+
* field.
|
|
91
|
+
* @default `false`
|
|
92
|
+
*/
|
|
93
|
+
wide?: boolean | undefined;
|
|
94
94
|
} & {
|
|
95
95
|
/**
|
|
96
96
|
* A `number` value to control.
|
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
<script>
|
|
4
4
|
import GenericSlider from '../internal/GenericSlider.svelte';
|
|
5
5
|
export let value;
|
|
6
|
+
export let wide = void 0;
|
|
7
|
+
let ref;
|
|
8
|
+
function updateWide(wide2) {
|
|
9
|
+
const inputField = ref?.element.querySelector('div.tp-sldtxtv_t');
|
|
10
|
+
if (wide2) {
|
|
11
|
+
inputField?.style.setProperty('display', 'none');
|
|
12
|
+
} else {
|
|
13
|
+
inputField?.style.removeProperty('display');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
$: ref && wide !== void 0 && updateWide(wide);
|
|
6
17
|
</script>
|
|
7
18
|
|
|
8
|
-
<GenericSlider bind:value on:change {...$$restProps} />
|
|
19
|
+
<GenericSlider bind:value bind:ref bind:wide on:change {...$$restProps} />
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { SvelteComponent } from 'svelte';
|
|
2
2
|
import type { ValueChangeEvent } from '../utils.js';
|
|
3
|
+
import type { SliderInputBindingApi as GenericSliderRef } from 'tweakpane';
|
|
3
4
|
export type SliderChangeEvent = ValueChangeEvent<number>;
|
|
4
5
|
declare const __propDef: {
|
|
5
6
|
props: {
|
|
@@ -49,6 +50,12 @@ declare const __propDef: {
|
|
|
49
50
|
* No step constraint.
|
|
50
51
|
*/
|
|
51
52
|
step?: number | undefined;
|
|
53
|
+
/**
|
|
54
|
+
* When `true`, expand the width of the control at the expense of the numeric input
|
|
55
|
+
* field.
|
|
56
|
+
* @default `false`
|
|
57
|
+
*/
|
|
58
|
+
wide?: boolean | undefined;
|
|
52
59
|
} & {
|
|
53
60
|
/**
|
|
54
61
|
* A `number` value to control.
|
|
@@ -108,7 +115,7 @@ declare const __propDef: {
|
|
|
108
115
|
* @bindable
|
|
109
116
|
* @readonly
|
|
110
117
|
*/
|
|
111
|
-
ref?:
|
|
118
|
+
ref?: GenericSliderRef | undefined;
|
|
112
119
|
/**
|
|
113
120
|
* Imported Tweakpane `TpPluginBundle` (aliased as `Plugin`) module to automatically register in
|
|
114
121
|
* the `<Binding>`'s containing `<Pane>`.
|
|
@@ -14,12 +14,6 @@ declare const __propDef: {
|
|
|
14
14
|
* `value`](https://github.com/cocopon/tweakpane/blob/66dfbea04bfe9b7f031673c955ceda1f92356e75/packages/core/src/common/number/util.ts#L54).
|
|
15
15
|
*/
|
|
16
16
|
amount?: number | undefined;
|
|
17
|
-
/**
|
|
18
|
-
* When `true`, expand the width of the wheel control at the expense of the numeric input
|
|
19
|
-
* field.
|
|
20
|
-
* @default `false`
|
|
21
|
-
* */
|
|
22
|
-
wide?: boolean | undefined;
|
|
23
17
|
} & Omit<
|
|
24
18
|
{
|
|
25
19
|
/**
|
|
@@ -61,6 +55,12 @@ declare const __propDef: {
|
|
|
61
55
|
* No step constraint.
|
|
62
56
|
*/
|
|
63
57
|
step?: number | undefined;
|
|
58
|
+
/**
|
|
59
|
+
* When `true`, expand the width of the control at the expense of the numeric input
|
|
60
|
+
* field.
|
|
61
|
+
* @default `false`
|
|
62
|
+
*/
|
|
63
|
+
wide?: boolean | undefined;
|
|
64
64
|
} & {
|
|
65
65
|
/**
|
|
66
66
|
* A `number` value to control.
|
package/dist/core/Binding.svelte
CHANGED
|
@@ -44,9 +44,13 @@
|
|
|
44
44
|
_ref?.dispose();
|
|
45
45
|
});
|
|
46
46
|
const dispatch = createEventDispatcher();
|
|
47
|
+
let lastObject = object;
|
|
47
48
|
let lastValue = copy(object[key]);
|
|
48
49
|
let internalChange = false;
|
|
49
50
|
function onBoundValueChange(object2) {
|
|
51
|
+
if (lastObject !== object2) {
|
|
52
|
+
internalChange = false;
|
|
53
|
+
}
|
|
50
54
|
if (!shallowEqual(object2[key], lastValue)) {
|
|
51
55
|
lastValue = copy(object2[key]);
|
|
52
56
|
dispatch('change', {
|
|
@@ -60,6 +64,10 @@
|
|
|
60
64
|
}
|
|
61
65
|
}
|
|
62
66
|
internalChange = false;
|
|
67
|
+
if (lastObject !== object2) {
|
|
68
|
+
lastObject = object2;
|
|
69
|
+
create();
|
|
70
|
+
}
|
|
63
71
|
}
|
|
64
72
|
function onTweakpaneChange() {
|
|
65
73
|
internalChange = true;
|
|
@@ -31,10 +31,7 @@ declare const __propDef: {
|
|
|
31
31
|
* set with `setGlobalDefaultTheme()`.
|
|
32
32
|
* */ theme?: Theme | undefined;
|
|
33
33
|
};
|
|
34
|
-
|
|
35
|
-
* Prevent interactivity and gray out the control.
|
|
36
|
-
* @default `false`
|
|
37
|
-
* */ events: {
|
|
34
|
+
events: {
|
|
38
35
|
[evt: string]: CustomEvent<any>;
|
|
39
36
|
};
|
|
40
37
|
slots: {
|
|
@@ -43,6 +40,8 @@ declare const __propDef: {
|
|
|
43
40
|
*/
|
|
44
41
|
default: {};
|
|
45
42
|
};
|
|
43
|
+
exports?: {} | undefined;
|
|
44
|
+
bindings?: string | undefined;
|
|
46
45
|
};
|
|
47
46
|
export type FolderProps = typeof __propDef.props;
|
|
48
47
|
export type FolderEvents = typeof __propDef.events;
|
|
@@ -56,6 +56,8 @@ declare const __propDef: {
|
|
|
56
56
|
[evt: string]: CustomEvent<any>;
|
|
57
57
|
};
|
|
58
58
|
slots: {};
|
|
59
|
+
exports?: {} | undefined;
|
|
60
|
+
bindings?: string | undefined;
|
|
59
61
|
};
|
|
60
62
|
export type SeparatorProps = typeof __propDef.props;
|
|
61
63
|
export type SeparatorEvents = typeof __propDef.events;
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
export let pointerScale = void 0;
|
|
9
9
|
export let keyScale = void 0;
|
|
10
10
|
export let format = void 0;
|
|
11
|
+
export let ref = void 0;
|
|
11
12
|
let formatProxy = format;
|
|
12
13
|
$: formatProxy !== format && (formatProxy = format);
|
|
13
14
|
let optionsInternal;
|
|
@@ -22,4 +23,4 @@
|
|
|
22
23
|
};
|
|
23
24
|
</script>
|
|
24
25
|
|
|
25
|
-
<GenericInput bind:value on:change options={optionsInternal} {...$$restProps} />
|
|
26
|
+
<GenericInput bind:value bind:ref on:change options={optionsInternal} {...$$restProps} />
|
|
@@ -43,6 +43,12 @@ declare class __sveltets_Render<T extends number | IntervalSliderValue> {
|
|
|
43
43
|
* No step constraint.
|
|
44
44
|
* */
|
|
45
45
|
step?: number | undefined;
|
|
46
|
+
/**
|
|
47
|
+
* When `true`, expand the width of the control at the expense of the numeric input
|
|
48
|
+
* field.
|
|
49
|
+
* @default `false`
|
|
50
|
+
* */
|
|
51
|
+
wide?: boolean | undefined;
|
|
46
52
|
} & {
|
|
47
53
|
/**
|
|
48
54
|
* The value to control.
|
|
@@ -111,6 +111,8 @@ declare const __propDef: {
|
|
|
111
111
|
[evt: string]: CustomEvent<any>;
|
|
112
112
|
};
|
|
113
113
|
slots: {};
|
|
114
|
+
exports?: {} | undefined;
|
|
115
|
+
bindings?: string | undefined;
|
|
114
116
|
};
|
|
115
117
|
export type InternalMonitorBooleanProps = typeof __propDef.props;
|
|
116
118
|
export type InternalMonitorBooleanEvents = typeof __propDef.events;
|
|
@@ -132,6 +132,8 @@ declare const __propDef: {
|
|
|
132
132
|
[evt: string]: CustomEvent<any>;
|
|
133
133
|
};
|
|
134
134
|
slots: {};
|
|
135
|
+
exports?: {} | undefined;
|
|
136
|
+
bindings?: string | undefined;
|
|
135
137
|
};
|
|
136
138
|
export type InternalMonitorNumberProps = typeof __propDef.props;
|
|
137
139
|
export type InternalMonitorNumberEvents = typeof __propDef.events;
|
|
@@ -116,6 +116,8 @@ declare const __propDef: {
|
|
|
116
116
|
[evt: string]: CustomEvent<any>;
|
|
117
117
|
};
|
|
118
118
|
slots: {};
|
|
119
|
+
exports?: {} | undefined;
|
|
120
|
+
bindings?: string | undefined;
|
|
119
121
|
};
|
|
120
122
|
export type InternalMonitorStringProps = typeof __propDef.props;
|
|
121
123
|
export type InternalMonitorStringEvents = typeof __propDef.events;
|
|
@@ -169,6 +169,8 @@ declare const __propDef: {
|
|
|
169
169
|
*/
|
|
170
170
|
default: {};
|
|
171
171
|
};
|
|
172
|
+
exports?: {} | undefined;
|
|
173
|
+
bindings?: string | undefined;
|
|
172
174
|
};
|
|
173
175
|
export type InternalPaneDraggableProps = typeof __propDef.props;
|
|
174
176
|
export type InternalPaneDraggableEvents = typeof __propDef.events;
|
|
@@ -108,6 +108,8 @@ declare const __propDef: {
|
|
|
108
108
|
*/
|
|
109
109
|
default: {};
|
|
110
110
|
};
|
|
111
|
+
exports?: {} | undefined;
|
|
112
|
+
bindings?: string | undefined;
|
|
111
113
|
};
|
|
112
114
|
export type InternalPaneFixedProps = typeof __propDef.props;
|
|
113
115
|
export type InternalPaneFixedEvents = typeof __propDef.events;
|
|
@@ -134,6 +134,8 @@ declare const __propDef: {
|
|
|
134
134
|
[evt: string]: CustomEvent<any>;
|
|
135
135
|
};
|
|
136
136
|
slots: {};
|
|
137
|
+
exports?: {} | undefined;
|
|
138
|
+
bindings?: string | undefined;
|
|
137
139
|
};
|
|
138
140
|
export type WaveformMonitorProps = typeof __propDef.props;
|
|
139
141
|
export type WaveformMonitorEvents = typeof __propDef.events;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "svelte-tweakpane-ui",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0",
|
|
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": {
|
|
@@ -200,34 +200,34 @@
|
|
|
200
200
|
"tweakpane": "4.0.3"
|
|
201
201
|
},
|
|
202
202
|
"devDependencies": {
|
|
203
|
-
"@kitschpatrol/shared-config": "^4.6.
|
|
203
|
+
"@kitschpatrol/shared-config": "^4.6.6",
|
|
204
204
|
"@phenomnomnominal/tsquery": "^6.1.3",
|
|
205
|
-
"@playwright/test": "^1.44.
|
|
205
|
+
"@playwright/test": "^1.44.1",
|
|
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.10",
|
|
209
209
|
"@sveltejs/package": "^2.3.1",
|
|
210
|
-
"@sveltejs/vite-plugin-svelte": "^3.1.
|
|
210
|
+
"@sveltejs/vite-plugin-svelte": "^3.1.1",
|
|
211
211
|
"@types/eslint": "^8.56.10",
|
|
212
212
|
"@types/fs-extra": "^11.0.4",
|
|
213
|
-
"@types/node": "^20.12.
|
|
213
|
+
"@types/node": "^20.12.13",
|
|
214
214
|
"bumpp": "^9.4.1",
|
|
215
215
|
"eslint": "^8.57.0",
|
|
216
216
|
"fs-extra": "^11.2.0",
|
|
217
|
-
"glob": "^10.
|
|
217
|
+
"glob": "^10.4.1",
|
|
218
218
|
"npm-run-all": "^4.1.5",
|
|
219
219
|
"postcss-html": "^1.7.0",
|
|
220
|
-
"publint": "^0.2.
|
|
220
|
+
"publint": "^0.2.8",
|
|
221
221
|
"read-package-up": "^11.0.0",
|
|
222
222
|
"svelte": "^4.2.17",
|
|
223
|
-
"svelte-check": "^3.
|
|
224
|
-
"svelte-language-server": "^0.16.
|
|
225
|
-
"svelte2tsx": "^0.7.
|
|
223
|
+
"svelte-check": "^3.8.0",
|
|
224
|
+
"svelte-language-server": "^0.16.10",
|
|
225
|
+
"svelte2tsx": "^0.7.9",
|
|
226
226
|
"ts-morph": "^22.0.0",
|
|
227
227
|
"tslib": "^2.6.2",
|
|
228
|
-
"tsx": "^4.
|
|
228
|
+
"tsx": "^4.11.0",
|
|
229
229
|
"typescript": "^5.4.5",
|
|
230
|
-
"vite": "^5.2.
|
|
230
|
+
"vite": "^5.2.12",
|
|
231
231
|
"yaml": "^2.4.2"
|
|
232
232
|
},
|
|
233
233
|
"scripts": {
|
|
@@ -247,7 +247,7 @@
|
|
|
247
247
|
"build:13-build-docs": "pnpm run docs-build",
|
|
248
248
|
"check": "svelte-kit sync && svelte-check --ignore ./scratch --tsconfig ./tsconfig.json",
|
|
249
249
|
"check-watch": "svelte-kit sync && svelte-check --ignore ./scratch --tsconfig ./tsconfig.json --watch",
|
|
250
|
-
"clean": "git clean -fdX",
|
|
250
|
+
"clean": "git clean -fdX && rm ./pnpm-lock.yaml",
|
|
251
251
|
"docs-build": "pnpm -C ./docs run build",
|
|
252
252
|
"docs-dev": "pnpm -C ./docs run dev",
|
|
253
253
|
"docs-preview": "pnpm -C ./docs run preview",
|
package/readme.md
CHANGED
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
|
|
36
36
|
## Overview
|
|
37
37
|
|
|
38
|
-
🎛️ **_Svelte Tweakpane UI_** wraps user-interface elements from the excellent [Tweakpane](https://tweakpane.github.io/docs/) library in a collection of 31 idiomatic, reactive, type-safe, carefully-crafted, and obsessively-documented [Svelte](https://svelte.dev) components.
|
|
38
|
+
🎛️ **_Svelte Tweakpane UI_** wraps user-interface elements from the excellent [Tweakpane](https://tweakpane.github.io/docs/) library in a collection of <!-- component-count -->31<!-- /component-count --> idiomatic, reactive, type-safe, carefully-crafted, and obsessively-documented [Svelte](https://svelte.dev) components.
|
|
39
39
|
|
|
40
40
|
The library makes it easy to quickly and declaratively add knobs and dials to your projects using components that feel like they were made for Svelte. It also augments Tweakpane with a few [extra features](https://kitschpatrol.com/svelte-tweakpane-ui/docs/features) for your convenience and enjoyment.
|
|
41
41
|
|
|
@@ -68,6 +68,86 @@ npm install svelte-tweakpane-ui
|
|
|
68
68
|
<Button on:click={() => alert('🎛️')} />
|
|
69
69
|
```
|
|
70
70
|
|
|
71
|
+
## Components
|
|
72
|
+
|
|
73
|
+
<!-- component-list -->
|
|
74
|
+
|
|
75
|
+
### Core
|
|
76
|
+
|
|
77
|
+
- **[Binding](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/binding)**\
|
|
78
|
+
Wraps the Tweakpane [`addBinding`](https://tweakpane.github.io/docs/input-bindings/) method.
|
|
79
|
+
- **[Blade](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/blade)**\
|
|
80
|
+
Wraps the Tweakpane [`addBlade`](https://tweakpane.github.io/docs/blades/) method.
|
|
81
|
+
- **[Folder](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/folder)**\
|
|
82
|
+
Organize multiple controls into a collapsable folder.
|
|
83
|
+
- **[Pane](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/pane)**\
|
|
84
|
+
The root `<Pane>` component, used for organizing controls into a single group and controlling how and where the Tweakpane is displayed.
|
|
85
|
+
- **[Separator](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/separator)**\
|
|
86
|
+
A convenience component providing a subtle visual separator between controls, in the spirit of the HTML `<hr>` element.
|
|
87
|
+
- **[TabGroup](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/tabgroup)**\
|
|
88
|
+
Contains a collection of `<TabPage>` components to be presented as a tabs.
|
|
89
|
+
- **[TabPage](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/tabpage)**\
|
|
90
|
+
Contains a collection of Tweakpane controls to be presented as a single group inside a `<TabGroup>` component.
|
|
91
|
+
|
|
92
|
+
### Control
|
|
93
|
+
|
|
94
|
+
- **[Button](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/button)**\
|
|
95
|
+
A humble but effective push button.
|
|
96
|
+
- **[ButtonGrid](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/buttongrid)**\
|
|
97
|
+
A grid of `<Button>` components.
|
|
98
|
+
- **[Checkbox](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/checkbox)**\
|
|
99
|
+
A checkbox.
|
|
100
|
+
- **[Color](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/color)**\
|
|
101
|
+
A color picker.
|
|
102
|
+
- **[CubicBezier](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/cubicbezier)**\
|
|
103
|
+
A control for editing a bezier curve. Ideal for tweaking animation easing values.
|
|
104
|
+
- **[Image](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/image)**\
|
|
105
|
+
An image input control.
|
|
106
|
+
- **[IntervalSlider](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/intervalslider)**\
|
|
107
|
+
A twin-handled slider control for specifying range values.
|
|
108
|
+
- **[List](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/list)**\
|
|
109
|
+
An option list picker, similar to an HTML `<select>` element.
|
|
110
|
+
- **[Point](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/point)**\
|
|
111
|
+
Wraps the Tweakpane [point bindings](https://tweakpane.github.io/docs/input-bindings/#point).
|
|
112
|
+
- **[RadioGrid](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/radiogrid)**\
|
|
113
|
+
A grid of radio buttons.
|
|
114
|
+
- **[Ring](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/ring)**\
|
|
115
|
+
A control evoking the focus ring on a proper camera lens.
|
|
116
|
+
- **[RotationEuler](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/rotationeuler)**\
|
|
117
|
+
Integrates the [euler rotation](https://github.com/0b5vr/tweakpane-plugin-rotation/blob/dev/src/RotationInputPluginEuler.ts) control from [0b5vr](https://0b5vr.com)'s [tweakpane-plugin-rotation](https://github.com/0b5vr/tweakpane-plugin-rotation).
|
|
118
|
+
- **[RotationQuaternion](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/rotationquaternion)**\
|
|
119
|
+
Integrates the [quaternion rotation](https://github.com/0b5vr/tweakpane-plugin-rotation/blob/dev/src/RotationInputPluginQuaternion.ts) control from [0b5vr](https://0b5vr.com)'s [tweakpane-plugin-rotation](https://github.com/0b5vr/tweakpane-plugin-rotation).
|
|
120
|
+
- **[Slider](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/slider)**\
|
|
121
|
+
A slider component providing fine-grained control over numeric values.
|
|
122
|
+
- **[Text](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/text)**\
|
|
123
|
+
A text field, in the spirit of the HTML `<input type="text">` element.
|
|
124
|
+
- **[Textarea](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/textarea)**\
|
|
125
|
+
A multi-line text input field, in the spirit of the HTML `<textarea>` element.
|
|
126
|
+
- **[Wheel](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/wheel)**\
|
|
127
|
+
A control evoking a dial on a proper camera body.
|
|
128
|
+
|
|
129
|
+
### Monitor
|
|
130
|
+
|
|
131
|
+
- **[FpsGraph](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/fpsgraph)**\
|
|
132
|
+
A control for monitoring and graphing frame rates over time.
|
|
133
|
+
- **[Monitor](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/monitor)**\
|
|
134
|
+
Wraps the Tweakpane [monitor binding](https://tweakpane.github.io/docs/monitor-bindings/) functionality for `boolean`, `number`, and `string` values.
|
|
135
|
+
- **[Profiler](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/profiler)**\
|
|
136
|
+
Measure and visualize multiple quantities over time.
|
|
137
|
+
- **[WaveformMonitor](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/waveformmonitor)**\
|
|
138
|
+
Visualize multiple numeric values as a waveform.
|
|
139
|
+
|
|
140
|
+
### Extra
|
|
141
|
+
|
|
142
|
+
- **[AutoObject](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/autoobject)**\
|
|
143
|
+
Rapid-development component which automatically creates a set of Tweakpane controls for an arbitrary object.
|
|
144
|
+
- **[AutoValue](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/autovalue)**\
|
|
145
|
+
Rapid-development component which automatically creates a Tweakpane control for an arbitrary value.
|
|
146
|
+
- **[Element](https://kitschpatrol.com/svelte-tweakpane-ui/docs/components/element)**\
|
|
147
|
+
A component for embedding arbitrary HTML elements into a pane.
|
|
148
|
+
|
|
149
|
+
<!-- /component-list -->
|
|
150
|
+
|
|
71
151
|
## Maintainers
|
|
72
152
|
|
|
73
153
|
[@kitschpatrol](https://github.com/kitschpatrol)
|