svelte-tweakpane-ui 1.5.3 → 1.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/dist/control/Button.svelte +30 -30
  2. package/dist/control/Button.svelte.d.ts +18 -18
  3. package/dist/control/ButtonGrid.svelte +25 -25
  4. package/dist/control/ButtonGrid.svelte.d.ts +35 -35
  5. package/dist/control/Checkbox.svelte +2 -2
  6. package/dist/control/Checkbox.svelte.d.ts +23 -23
  7. package/dist/control/Color.svelte +34 -34
  8. package/dist/control/Color.svelte.d.ts +40 -40
  9. package/dist/control/CubicBezier.svelte +30 -30
  10. package/dist/control/CubicBezier.svelte.d.ts +47 -47
  11. package/dist/control/File.svelte +20 -20
  12. package/dist/control/File.svelte.d.ts +38 -38
  13. package/dist/control/Image.svelte +22 -22
  14. package/dist/control/Image.svelte.d.ts +31 -31
  15. package/dist/control/IntervalSlider.svelte +24 -24
  16. package/dist/control/IntervalSlider.svelte.d.ts +39 -39
  17. package/dist/control/List.svelte +35 -35
  18. package/dist/control/List.svelte.d.ts +31 -31
  19. package/dist/control/Point.svelte +31 -31
  20. package/dist/control/Point.svelte.d.ts +81 -81
  21. package/dist/control/RadioGrid.svelte +24 -24
  22. package/dist/control/RadioGrid.svelte.d.ts +40 -40
  23. package/dist/control/Ring.svelte +9 -9
  24. package/dist/control/Ring.svelte.d.ts +40 -40
  25. package/dist/control/RotationEuler.svelte +25 -25
  26. package/dist/control/RotationEuler.svelte.d.ts +53 -53
  27. package/dist/control/RotationQuaternion.svelte +24 -24
  28. package/dist/control/RotationQuaternion.svelte.d.ts +47 -47
  29. package/dist/control/Slider.svelte +9 -9
  30. package/dist/control/Slider.svelte.d.ts +32 -32
  31. package/dist/control/Stepper.svelte +16 -16
  32. package/dist/control/Stepper.svelte.d.ts +32 -32
  33. package/dist/control/Text.svelte +13 -13
  34. package/dist/control/Text.svelte.d.ts +26 -26
  35. package/dist/control/Textarea.svelte +34 -34
  36. package/dist/control/Textarea.svelte.d.ts +29 -29
  37. package/dist/control/Wheel.svelte +8 -8
  38. package/dist/control/Wheel.svelte.d.ts +32 -32
  39. package/dist/core/Binding.svelte +60 -60
  40. package/dist/core/Binding.svelte.d.ts +33 -33
  41. package/dist/core/Blade.svelte +30 -30
  42. package/dist/core/Blade.svelte.d.ts +21 -21
  43. package/dist/core/Folder.svelte +34 -34
  44. package/dist/core/Folder.svelte.d.ts +22 -22
  45. package/dist/core/Pane.svelte +17 -17
  46. package/dist/core/Pane.svelte.d.ts +56 -56
  47. package/dist/core/Separator.svelte +5 -5
  48. package/dist/core/Separator.svelte.d.ts +20 -20
  49. package/dist/core/TabGroup.svelte +29 -29
  50. package/dist/core/TabGroup.svelte.d.ts +18 -18
  51. package/dist/core/TabPage.svelte +36 -36
  52. package/dist/core/TabPage.svelte.d.ts +21 -21
  53. package/dist/extra/AutoObject.svelte +20 -20
  54. package/dist/extra/AutoObject.svelte.d.ts +22 -22
  55. package/dist/extra/AutoValue.svelte +3 -3
  56. package/dist/extra/AutoValue.svelte.d.ts +26 -26
  57. package/dist/extra/Element.svelte +10 -10
  58. package/dist/extra/Element.svelte.d.ts +26 -26
  59. package/dist/index.d.ts +48 -48
  60. package/dist/index.js +35 -35
  61. package/dist/internal/ClsPad.svelte +11 -11
  62. package/dist/internal/ClsPad.svelte.d.ts +17 -17
  63. package/dist/internal/GenericBinding.svelte +11 -11
  64. package/dist/internal/GenericBinding.svelte.d.ts +25 -25
  65. package/dist/internal/GenericBladeFolding.svelte +19 -19
  66. package/dist/internal/GenericBladeFolding.svelte.d.ts +20 -20
  67. package/dist/internal/GenericInput.svelte +7 -7
  68. package/dist/internal/GenericInput.svelte.d.ts +27 -27
  69. package/dist/internal/GenericInputFolding.svelte +21 -21
  70. package/dist/internal/GenericInputFolding.svelte.d.ts +32 -32
  71. package/dist/internal/GenericMonitor.svelte +10 -10
  72. package/dist/internal/GenericMonitor.svelte.d.ts +29 -29
  73. package/dist/internal/GenericPane.svelte +48 -48
  74. package/dist/internal/GenericPane.svelte.d.ts +22 -22
  75. package/dist/internal/GenericSlider.svelte +15 -15
  76. package/dist/internal/GenericSlider.svelte.d.ts +29 -29
  77. package/dist/internal/InternalMonitorBoolean.svelte +5 -5
  78. package/dist/internal/InternalMonitorBoolean.svelte.d.ts +31 -31
  79. package/dist/internal/InternalMonitorNumber.svelte +14 -14
  80. package/dist/internal/InternalMonitorNumber.svelte.d.ts +37 -37
  81. package/dist/internal/InternalMonitorString.svelte +9 -9
  82. package/dist/internal/InternalMonitorString.svelte.d.ts +32 -32
  83. package/dist/internal/InternalPaneDraggable.svelte +169 -173
  84. package/dist/internal/InternalPaneDraggable.svelte.d.ts +30 -30
  85. package/dist/internal/InternalPaneFixed.svelte +13 -13
  86. package/dist/internal/InternalPaneFixed.svelte.d.ts +23 -23
  87. package/dist/internal/InternalPaneInline.svelte +14 -14
  88. package/dist/internal/InternalPaneInline.svelte.d.ts +21 -21
  89. package/dist/monitor/FpsGraph.svelte +35 -35
  90. package/dist/monitor/FpsGraph.svelte.d.ts +50 -42
  91. package/dist/monitor/Monitor.svelte +4 -4
  92. package/dist/monitor/Monitor.svelte.d.ts +87 -88
  93. package/dist/monitor/Profiler.svelte +37 -37
  94. package/dist/monitor/Profiler.svelte.d.ts +78 -76
  95. package/dist/monitor/WaveformMonitor.svelte +12 -12
  96. package/dist/monitor/WaveformMonitor.svelte.d.ts +39 -39
  97. package/dist/theme.d.ts +61 -61
  98. package/dist/theme.js +49 -53
  99. package/dist/utils.d.ts +62 -66
  100. package/dist/utils.js +78 -78
  101. package/license.txt +1 -1
  102. package/package.json +100 -115
  103. package/readme.md +1 -1
@@ -1,67 +1,67 @@
1
1
  <script context="module">
2
- const localStorePrefix = 'svelte-tweakpane-ui-draggable-position-';
3
- const localStoreDefaultId = '1';
4
- const localStoreIds = [];
5
- let zIndexGlobal = 1e3;
2
+ const localStorePrefix = 'svelte-tweakpane-ui-draggable-position-'
3
+ const localStoreDefaultId = '1'
4
+ const localStoreIds = []
5
+ let zIndexGlobal = 1e3
6
6
  </script>
7
7
 
8
8
  <script>
9
- import GenericPane from './GenericPane.svelte';
10
- import { clamp, getSwatchButton, pickerIsOpen, removeKeys } from '../utils.js';
11
- import { onDestroy, onMount } from 'svelte';
12
- import { persisted } from 'svelte-persisted-store';
13
- const titlebarWindowShadeSingleClick = true;
14
- const titlebarWindowShadeDoubleClick = false;
15
- const pointerCancelOnWindowBlur = true;
16
- const dragMovementDistanceThreshold = 3;
17
- let initialDragEvent;
18
- export let storePositionLocally = true;
19
- export let localStoreId = localStoreDefaultId;
20
- export let tpPane = void 0;
21
- let positionStore;
9
+ import GenericPane from './GenericPane.svelte'
10
+ import { clamp, getSwatchButton, pickerIsOpen, removeKeys } from '../utils.js'
11
+ import { onDestroy, onMount } from 'svelte'
12
+ import { persisted } from 'svelte-persisted-store'
13
+ const titlebarWindowShadeSingleClick = true
14
+ const titlebarWindowShadeDoubleClick = false
15
+ const pointerCancelOnWindowBlur = true
16
+ const dragMovementDistanceThreshold = 3
17
+ let initialDragEvent
18
+ export let storePositionLocally = true
19
+ export let localStoreId = localStoreDefaultId
20
+ export let tpPane = void 0
21
+ let positionStore
22
22
  if (storePositionLocally) {
23
23
  positionStore = persisted(`${localStorePrefix}${localStoreId}`, {
24
24
  x: 0,
25
25
  y: 0,
26
26
  expanded: true,
27
- width: 350
28
- });
27
+ width: 350,
28
+ })
29
29
  }
30
- export let expanded = $positionStore?.expanded ?? true;
31
- export let collapseChildrenToFit = false;
32
- export let x = $positionStore?.x ?? 0;
33
- export let y = $positionStore?.y ?? 0;
34
- export let width = $positionStore?.width ?? 256;
35
- export let resizable = true;
36
- export let userExpandable = true;
37
- export let minWidth = 200;
38
- export let maxWidth = 600;
39
- export let title = 'Tweakpane';
40
- export let scale = 1;
41
- export let padding = '0';
42
- let containerElement;
43
- let dragBarElement;
44
- let widthHandleElement;
45
- let containerHeight;
46
- let containerHeightScaled;
47
- let containerWidth;
48
- let documentWidth;
49
- let documentHeight;
50
- let zIndexLocal = zIndexGlobal;
30
+ export let expanded = $positionStore?.expanded ?? true
31
+ export let collapseChildrenToFit = false
32
+ export let x = $positionStore?.x ?? 0
33
+ export let y = $positionStore?.y ?? 0
34
+ export let width = $positionStore?.width ?? 256
35
+ export let resizable = true
36
+ export let userExpandable = true
37
+ export let minWidth = 200
38
+ export let maxWidth = 600
39
+ export let title = 'Tweakpane'
40
+ export let scale = 1
41
+ export let padding = '0'
42
+ let containerElement
43
+ let dragBarElement
44
+ let widthHandleElement
45
+ let containerHeight
46
+ let containerHeightScaled
47
+ let containerWidth
48
+ let documentWidth
49
+ let documentHeight
50
+ let zIndexLocal = zIndexGlobal
51
51
  function addStorageId() {
52
52
  if (localStoreId !== void 0) {
53
53
  if (localStoreIds.includes(localStoreId)) {
54
54
  console.warn(
55
- 'Multiple instances of <Pane> with `mode="draggable"` and `storePositionLocally=true` detected. You must explicitly set unique localStoreId property on each component to avoid collisions.'
56
- );
55
+ 'Multiple instances of <Pane> with `mode="draggable"` and `storePositionLocally=true` detected. You must explicitly set unique localStoreId property on each component to avoid collisions.',
56
+ )
57
57
  }
58
- localStoreIds.push(localStoreId);
58
+ localStoreIds.push(localStoreId)
59
59
  }
60
60
  }
61
61
  function removeStorageId() {
62
62
  if (localStoreId) {
63
- localStoreIds.splice(localStoreIds.indexOf(localStoreId), 1);
64
- localStorage.removeItem(`${localStorePrefix}${localStoreId}`);
63
+ localStoreIds.splice(localStoreIds.indexOf(localStoreId), 1)
64
+ localStorage.removeItem(`${localStorePrefix}${localStoreId}`)
65
65
  }
66
66
  }
67
67
  function updateLocalStoreId(id) {
@@ -77,40 +77,40 @@
77
77
  x,
78
78
  y,
79
79
  expanded,
80
- width
81
- });
80
+ width,
81
+ })
82
82
  }
83
83
  }
84
84
  function setDocumentSize() {
85
85
  if (x !== void 0 && y !== void 0 && width !== void 0) {
86
- const documentWidthPrevious = documentWidth;
87
- const documentHeightPrevious = documentHeight;
88
- documentWidth = document.documentElement.clientWidth;
89
- documentHeight = document.documentElement.clientHeight;
90
- const dx = documentWidth - documentWidthPrevious;
91
- const dy = documentHeight - documentHeightPrevious;
92
- const centerPercentX = (x + width / 2) / documentWidth;
93
- const centerPercentY = (y + containerHeightScaled / 2) / documentHeight;
86
+ const documentWidthPrevious = documentWidth
87
+ const documentHeightPrevious = documentHeight
88
+ documentWidth = document.documentElement.clientWidth
89
+ documentHeight = document.documentElement.clientHeight
90
+ const dx = documentWidth - documentWidthPrevious
91
+ const dy = documentHeight - documentHeightPrevious
92
+ const centerPercentX = (x + width / 2) / documentWidth
93
+ const centerPercentY = (y + containerHeightScaled / 2) / documentHeight
94
94
  if (!Number.isNaN(dx) && centerPercentX >= 0.5) {
95
- x += dx;
95
+ x += dx
96
96
  }
97
97
  if (!Number.isNaN(dy) && centerPercentY >= 0.5) {
98
- y += dy;
98
+ y += dy
99
99
  }
100
100
  }
101
101
  }
102
102
  const clickBlocker = (event) => {
103
- event.stopPropagation();
104
- };
105
- let startWidth = 0;
106
- let startOffsetX = 0;
107
- let startOffsetY = 0;
108
- let moveDistance = 0;
103
+ event.stopPropagation()
104
+ }
105
+ let startWidth = 0
106
+ let startOffsetX = 0
107
+ let startOffsetY = 0
108
+ let moveDistance = 0
109
109
  const doubleClickListener = (event) => {
110
- event.stopPropagation();
110
+ event.stopPropagation()
111
111
  if (event.target) {
112
112
  if (width !== void 0 && event.target === widthHandleElement) {
113
- width = width < maxAvailablePanelWidth ? maxAvailablePanelWidth : minWidth;
113
+ width = width < maxAvailablePanelWidth ? maxAvailablePanelWidth : minWidth
114
114
  } else if (
115
115
  // Consider pointer movement threshold check...
116
116
  // e.g. if (moveDistance < dragMovementDistanceThreshold && userExpandable)...
@@ -118,26 +118,26 @@
118
118
  event.target === dragBarElement &&
119
119
  tpPane
120
120
  ) {
121
- tpPane.expanded = !tpPane.expanded;
121
+ tpPane.expanded = !tpPane.expanded
122
122
  }
123
123
  }
124
- };
124
+ }
125
125
  const dragStartListener = (event) => {
126
126
  if (x !== void 0 && y !== void 0 && event.button === 0 && event.target instanceof HTMLElement) {
127
- moveDistance = 0;
128
- initialDragEvent = event;
129
- removeDragStartListeners();
130
- addDragMoveAndEndListeners();
127
+ moveDistance = 0
128
+ initialDragEvent = event
129
+ removeDragStartListeners()
130
+ addDragMoveAndEndListeners()
131
131
  if (event.target === dragBarElement) {
132
- dragBarElement.style.cursor = 'grabbing';
132
+ dragBarElement.style.cursor = 'grabbing'
133
133
  }
134
- containerElement.style.transition = 'width 0s ease';
135
- event.target.setPointerCapture(event.pointerId);
136
- startWidth = width ?? 0;
137
- startOffsetX = x - event.pageX;
138
- startOffsetY = y - event.pageY;
134
+ containerElement.style.transition = 'width 0s ease'
135
+ event.target.setPointerCapture(event.pointerId)
136
+ startWidth = width ?? 0
137
+ startOffsetX = x - event.pageX
138
+ startOffsetY = y - event.pageY
139
139
  }
140
- };
140
+ }
141
141
  const dragMoveListener = (event) => {
142
142
  if (
143
143
  event.target instanceof HTMLElement &&
@@ -147,43 +147,39 @@
147
147
  y !== void 0
148
148
  ) {
149
149
  if (event.target === dragBarElement) {
150
- moveDistance += Math.hypot(event.movementX, event.movementY);
151
- x = event.pageX + startOffsetX;
152
- y = event.pageY + startOffsetY;
150
+ moveDistance += Math.hypot(event.movementX, event.movementY)
151
+ x = event.pageX + startOffsetX
152
+ y = event.pageY + startOffsetY
153
153
  } else if (event.target === widthHandleElement) {
154
- width = clamp(
155
- event.pageX + startOffsetX + startWidth - x,
156
- minWidth,
157
- maxAvailablePanelWidth
158
- );
154
+ width = clamp(event.pageX + startOffsetX + startWidth - x, minWidth, maxAvailablePanelWidth)
159
155
  }
160
156
  }
161
- };
157
+ }
162
158
  const blurListener = () => {
163
159
  if (pointerCancelOnWindowBlur && initialDragEvent?.target instanceof HTMLElement) {
164
- const { target } = initialDragEvent;
165
- const bounds = target.getBoundingClientRect();
160
+ const { target } = initialDragEvent
161
+ const bounds = target.getBoundingClientRect()
166
162
  const pointerCancelEvent = new PointerEvent('pointercancel', {
167
163
  bubbles: true,
168
164
  clientX: bounds.left + bounds.width / 2,
169
165
  clientY: bounds.top + bounds.height / 2,
170
166
  composed: true,
171
167
  pointerId: initialDragEvent.pointerId,
172
- pointerType: initialDragEvent.pointerType
173
- });
174
- target.dispatchEvent(pointerCancelEvent);
168
+ pointerType: initialDragEvent.pointerType,
169
+ })
170
+ target.dispatchEvent(pointerCancelEvent)
175
171
  }
176
- };
172
+ }
177
173
  const dragEndListener = (event) => {
178
- event.stopImmediatePropagation();
174
+ event.stopImmediatePropagation()
179
175
  if (event.target instanceof HTMLElement) {
180
176
  if (event.target.hasPointerCapture(event.pointerId)) {
181
- event.target.releasePointerCapture(event.pointerId);
177
+ event.target.releasePointerCapture(event.pointerId)
182
178
  }
183
179
  if (event.target === dragBarElement) {
184
- dragBarElement.style.removeProperty('cursor');
180
+ dragBarElement.style.removeProperty('cursor')
185
181
  }
186
- containerElement.style.removeProperty('transition');
182
+ containerElement.style.removeProperty('transition')
187
183
  if (
188
184
  event.type === 'pointerup' &&
189
185
  titlebarWindowShadeSingleClick &&
@@ -192,99 +188,99 @@
192
188
  userExpandable &&
193
189
  tpPane
194
190
  ) {
195
- tpPane.expanded = !tpPane.expanded;
191
+ tpPane.expanded = !tpPane.expanded
196
192
  }
197
- initialDragEvent = void 0;
198
- removeDragMoveAndEndListeners();
199
- addDragStartListeners();
193
+ initialDragEvent = void 0
194
+ removeDragMoveAndEndListeners()
195
+ addDragStartListeners()
200
196
  }
201
- };
197
+ }
202
198
  const addDragStartListeners = () => {
203
- dragBarElement.addEventListener('pointerdown', dragStartListener);
204
- widthHandleElement?.addEventListener('pointerdown', dragStartListener);
205
- };
199
+ dragBarElement.addEventListener('pointerdown', dragStartListener)
200
+ widthHandleElement?.addEventListener('pointerdown', dragStartListener)
201
+ }
206
202
  const removeDragStartListeners = () => {
207
- dragBarElement.removeEventListener('pointerdown', dragStartListener);
208
- widthHandleElement?.removeEventListener('pointerdown', dragStartListener);
209
- };
203
+ dragBarElement.removeEventListener('pointerdown', dragStartListener)
204
+ widthHandleElement?.removeEventListener('pointerdown', dragStartListener)
205
+ }
210
206
  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
- };
207
+ window.addEventListener('blur', blurListener)
208
+ dragBarElement.addEventListener('pointermove', dragMoveListener)
209
+ dragBarElement.addEventListener('pointerup', dragEndListener)
210
+ dragBarElement.addEventListener('pointercancel', dragEndListener)
211
+ widthHandleElement?.addEventListener('pointermove', dragMoveListener)
212
+ widthHandleElement?.addEventListener('pointerup', dragEndListener)
213
+ widthHandleElement?.addEventListener('pointercancel', dragEndListener)
214
+ }
219
215
  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
- };
216
+ window.removeEventListener('blur', blurListener)
217
+ dragBarElement.removeEventListener('pointermove', dragMoveListener)
218
+ dragBarElement.removeEventListener('pointerup', dragEndListener)
219
+ dragBarElement.removeEventListener('pointercancel', dragEndListener)
220
+ widthHandleElement?.removeEventListener('pointermove', dragMoveListener)
221
+ widthHandleElement?.removeEventListener('pointerup', dragEndListener)
222
+ widthHandleElement?.removeEventListener('pointercancel', dragEndListener)
223
+ }
228
224
  const touchScrollBlocker = (event) => {
229
- event.preventDefault();
230
- };
225
+ event.preventDefault()
226
+ }
231
227
  onMount(() => {
232
- setDocumentSize();
228
+ setDocumentSize()
233
229
  if (tpPane) {
234
- containerElement.append(tpPane.element);
230
+ containerElement.append(tpPane.element)
235
231
  } else {
236
- console.warn('no tpPane in draggable');
232
+ console.warn('no tpPane in draggable')
237
233
  }
238
- containerElement.addEventListener('touchmove', touchScrollBlocker, { passive: false });
239
- const dragBarElementCheck = containerElement.querySelector('.tp-rotv_t');
234
+ containerElement.addEventListener('touchmove', touchScrollBlocker, { passive: false })
235
+ const dragBarElementCheck = containerElement.querySelector('.tp-rotv_t')
240
236
  if (dragBarElementCheck) {
241
- dragBarElement = dragBarElementCheck;
242
- dragBarElement.addEventListener('click', clickBlocker);
243
- dragBarElement.addEventListener('dblclick', doubleClickListener);
244
- widthHandleElement = dragBarElement.parentElement?.appendChild(document.createElement('div'));
237
+ dragBarElement = dragBarElementCheck
238
+ dragBarElement.addEventListener('click', clickBlocker)
239
+ dragBarElement.addEventListener('dblclick', doubleClickListener)
240
+ widthHandleElement = dragBarElement.parentElement?.appendChild(document.createElement('div'))
245
241
  if (widthHandleElement) {
246
- widthHandleElement.className = 'tp-custom-width-handle';
247
- widthHandleElement.textContent = '\u2194';
248
- widthHandleElement.addEventListener('click', clickBlocker);
249
- widthHandleElement.addEventListener('dblclick', doubleClickListener);
242
+ widthHandleElement.className = 'tp-custom-width-handle'
243
+ widthHandleElement.textContent = '\u2194'
244
+ widthHandleElement.addEventListener('click', clickBlocker)
245
+ widthHandleElement.addEventListener('dblclick', doubleClickListener)
250
246
  }
251
- addDragStartListeners();
247
+ addDragStartListeners()
252
248
  }
253
- });
249
+ })
254
250
  onDestroy(() => {
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);
251
+ removeDragStartListeners()
252
+ removeDragMoveAndEndListeners()
253
+ dragBarElement.removeEventListener('click', clickBlocker)
254
+ dragBarElement.removeEventListener('dblclick', doubleClickListener)
255
+ widthHandleElement?.removeEventListener('click', clickBlocker)
256
+ widthHandleElement?.removeEventListener('dblclick', doubleClickListener)
257
+ containerElement?.removeEventListener('touchmove', touchScrollBlocker)
262
258
  if (localStoreId !== void 0) {
263
- localStoreIds.splice(localStoreIds.indexOf(localStoreId), 1);
259
+ localStoreIds.splice(localStoreIds.indexOf(localStoreId), 1)
264
260
  }
265
- });
261
+ })
266
262
  function updateResizability(isResizable) {
267
263
  if (widthHandleElement) {
268
- widthHandleElement.style.display = isResizable ? 'block' : 'none';
264
+ widthHandleElement.style.display = isResizable ? 'block' : 'none'
269
265
  }
270
266
  }
271
- $: tpPane && resizable && updateResizability(resizable);
267
+ $: tpPane && resizable && updateResizability(resizable)
272
268
  function recursiveCollapse(children, maxToCollapse = Number.MAX_SAFE_INTEGER) {
273
269
  if (maxToCollapse > 0) {
274
270
  for (const child of children) {
275
271
  if ('expanded' in child) {
276
272
  if (child.expanded) {
277
- maxToCollapse--;
278
- child.expanded = false;
273
+ maxToCollapse--
274
+ child.expanded = false
279
275
  }
280
276
  if ('children' in child) {
281
- recursiveCollapse(child.children, maxToCollapse);
277
+ recursiveCollapse(child.children, maxToCollapse)
282
278
  }
283
279
  } else {
284
- const swatchButton = getSwatchButton(child);
280
+ const swatchButton = getSwatchButton(child)
285
281
  if (swatchButton && pickerIsOpen(child)) {
286
- maxToCollapse--;
287
- swatchButton.click();
282
+ maxToCollapse--
283
+ swatchButton.click()
288
284
  }
289
285
  }
290
286
  }
@@ -301,34 +297,34 @@
301
297
  maxWidth !== void 0
302
298
  ) {
303
299
  if (collapseChildrenToFit && containerHeightScaled > documentHeight && tpPane) {
304
- recursiveCollapse(tpPane.children);
300
+ recursiveCollapse(tpPane.children)
305
301
  }
306
- x = clamp(x, 0, Math.max(0, documentWidth - containerWidth));
307
- y = clamp(y, 0, Math.max(0, documentHeight - containerHeightScaled));
302
+ x = clamp(x, 0, Math.max(0, documentWidth - containerWidth))
303
+ y = clamp(y, 0, Math.max(0, documentHeight - containerHeightScaled))
308
304
  if (documentWidth < containerWidth) {
309
- width = Math.max(minWidth, Math.min(maxWidth, documentWidth));
305
+ width = Math.max(minWidth, Math.min(maxWidth, documentWidth))
310
306
  }
311
307
  }
312
- $: maxAvailablePanelWidth = Math.min(maxWidth ?? 600, documentWidth - (x ?? 0));
313
- $: localStoreId, storePositionLocally && addStorageId();
314
- $: localStoreId, !storePositionLocally && removeStorageId();
315
- $: localStoreId !== `${localStorePrefix}${localStoreId}` && updateLocalStoreId(localStoreId);
308
+ $: maxAvailablePanelWidth = Math.min(maxWidth ?? 600, documentWidth - (x ?? 0))
309
+ $: localStoreId, storePositionLocally && addStorageId()
310
+ $: localStoreId, !storePositionLocally && removeStorageId()
311
+ $: localStoreId !== `${localStorePrefix}${localStoreId}` && updateLocalStoreId(localStoreId)
316
312
  $: storePositionLocally &&
317
313
  localStoreId !== void 0 &&
318
314
  x !== void 0 &&
319
315
  y !== void 0 &&
320
316
  width !== void 0 &&
321
317
  expanded !== void 0 &&
322
- positionStore?.set({ x, y, expanded, width });
318
+ positionStore?.set({ x, y, expanded, width })
323
319
  $: {
324
320
  if (containerElement) {
325
321
  if (scale === void 0 || scale === 1) {
326
- containerHeightScaled = containerHeight;
322
+ containerHeightScaled = containerHeight
327
323
  } else {
328
- const style = window.getComputedStyle(containerElement);
324
+ const style = window.getComputedStyle(containerElement)
329
325
  const vPadding =
330
- Number.parseFloat(style.paddingTop) + Number.parseFloat(style.paddingBottom);
331
- containerHeightScaled = (containerHeight - vPadding) * scale + vPadding;
326
+ Number.parseFloat(style.paddingTop) + Number.parseFloat(style.paddingBottom)
327
+ containerHeightScaled = (containerHeight - vPadding) * scale + vPadding
332
328
  }
333
329
  }
334
330
  }
@@ -341,10 +337,10 @@
341
337
  bind:clientWidth={containerWidth}
342
338
  bind:this={containerElement}
343
339
  on:focus|capture={() => {
344
- zIndexLocal = ++zIndexGlobal;
340
+ zIndexLocal = ++zIndexGlobal
345
341
  }}
346
342
  on:pointerdown|capture={() => {
347
- zIndexLocal = ++zIndexGlobal;
343
+ zIndexLocal = ++zIndexGlobal
348
344
  }}
349
345
  class="draggable-container"
350
346
  class:not-collapsable={!userExpandable}
@@ -1,4 +1,4 @@
1
- import { SvelteComponent } from 'svelte';
1
+ import { SvelteComponent } from 'svelte'
2
2
  declare const __propDef: {
3
3
  props: {
4
4
  /**
@@ -11,7 +11,7 @@ declare const __propDef: {
11
11
  * @default `0`
12
12
  * @bindable
13
13
  * */
14
- x?: number;
14
+ x?: number
15
15
  /**
16
16
  * Vertical position of the pane relative to the top of the window, in pixels.
17
17
  *
@@ -22,30 +22,30 @@ declare const __propDef: {
22
22
  * @default `0`
23
23
  * @bindable
24
24
  * */
25
- y?: number;
25
+ y?: number
26
26
  /**
27
27
  * Minimum pane width in pixels.
28
28
  * @default `200`
29
29
  * */
30
- minWidth?: number;
30
+ minWidth?: number
31
31
  /**
32
32
  * Maximum pane width in pixels.
33
33
  * @default `600`
34
34
  * */
35
- maxWidth?: number;
35
+ maxWidth?: number
36
36
  /**
37
37
  * Automatically collapse open panels when the available window size is less than the height
38
38
  * of the pane.
39
39
  *
40
40
  * @default `false`
41
41
  * */
42
- collapseChildrenToFit?: boolean;
42
+ collapseChildrenToFit?: boolean
43
43
  /**
44
44
  * Identifier to be used if multiple `<Pane position="draggable">` components with
45
45
  * `storePositionLocally` set to true are used on the same page.
46
46
  * @default `'1'`
47
47
  */
48
- localStoreId?: string;
48
+ localStoreId?: string
49
49
  /**
50
50
  * CSS [padding property string](https://developer.mozilla.org/en-US/docs/Web/CSS/padding)
51
51
  * to apply to the draggable pane container to prevent it from being dragged all the way to
@@ -54,13 +54,13 @@ declare const __propDef: {
54
54
  * Useful for keeping the pane away from of menu bars, etc.
55
55
  * @default `'0'`
56
56
  */
57
- padding?: string;
57
+ padding?: string
58
58
  /**
59
59
  * Allow the user to resize the width of the pane by dragging the right corner of the title
60
60
  * bar.
61
61
  * @default `true`
62
62
  * */
63
- resizable?: boolean;
63
+ resizable?: boolean
64
64
  /**
65
65
  * Store the pane's position and width when the user changes it interactively.
66
66
  *
@@ -68,7 +68,7 @@ declare const __propDef: {
68
68
  * `storePositionLocally` set to `true`.
69
69
  * @default `true`
70
70
  * */
71
- storePositionLocally?: boolean;
71
+ storePositionLocally?: boolean
72
72
  /**
73
73
  * Width of the pane, in pixels.
74
74
  *
@@ -84,7 +84,7 @@ declare const __propDef: {
84
84
  * @default `256`
85
85
  * @bindable
86
86
  * */
87
- width?: number;
87
+ width?: number
88
88
  } & Omit<
89
89
  {
90
90
  /**
@@ -93,20 +93,20 @@ declare const __propDef: {
93
93
  * Unless `position="inline"`, in which case the default is `undefined` and no title bar is
94
94
  * shown.
95
95
  */
96
- title?: string | undefined;
96
+ title?: string | undefined
97
97
  /**
98
98
  * Allow users to interactively expand / contract the pane by clicking its title bar.
99
99
  *
100
100
  * Hides the collapse button from the title bar when `false`.
101
101
  * @default `true`
102
102
  */
103
- userExpandable?: boolean;
103
+ userExpandable?: boolean
104
104
  /**
105
105
  * Expand or collapse the pane into its title bar.
106
106
  * @default `true`
107
107
  * @bindable
108
108
  */
109
- expanded?: boolean;
109
+ expanded?: boolean
110
110
  /**
111
111
  * Custom color scheme.
112
112
  *
@@ -125,7 +125,7 @@ declare const __propDef: {
125
125
  * Inherits default Tweakpane theme equivalent to `ThemeUtils.presets.standard`, or the theme
126
126
  * set with `setGlobalDefaultTheme()`.
127
127
  */
128
- theme?: import('..').Theme | undefined;
128
+ theme?: import('..').Theme | undefined
129
129
  /**
130
130
  * Scales the pane's elements by a factor of `scale` to make it easier to see.
131
131
  *
@@ -139,9 +139,9 @@ declare const __propDef: {
139
139
  * Negative values are ignored.
140
140
  * @default `1`
141
141
  */
142
- scale?: number;
142
+ scale?: number
143
143
  /** Internal use only. */
144
- userCreatedPane?: boolean;
144
+ userCreatedPane?: boolean
145
145
  /**
146
146
  * The internal Tweakpane [`Pane`](https://tweakpane.github.io/docs/api/classes/Pane.html) object.
147
147
  *
@@ -156,25 +156,25 @@ declare const __propDef: {
156
156
  * @bindable
157
157
  * @readonly
158
158
  */
159
- tpPane?: import('tweakpane').Pane | undefined;
159
+ tpPane?: import('tweakpane').Pane | undefined
160
160
  },
161
161
  'userCreatedPane'
162
- >;
162
+ >
163
163
  events: {
164
- [evt: string]: CustomEvent<any>;
165
- };
164
+ [evt: string]: CustomEvent<any>
165
+ }
166
166
  slots: {
167
167
  /**
168
168
  * Any Tweakpane component, except another `<Pane>`.
169
169
  */
170
- default: {};
171
- };
172
- exports?: {} | undefined;
173
- bindings?: string | undefined;
174
- };
175
- export type InternalPaneDraggableProps = typeof __propDef.props;
176
- export type InternalPaneDraggableEvents = typeof __propDef.events;
177
- export type InternalPaneDraggableSlots = typeof __propDef.slots;
170
+ default: {}
171
+ }
172
+ exports?: {} | undefined
173
+ bindings?: string | undefined
174
+ }
175
+ export type InternalPaneDraggableProps = typeof __propDef.props
176
+ export type InternalPaneDraggableEvents = typeof __propDef.events
177
+ export type InternalPaneDraggableSlots = typeof __propDef.slots
178
178
  /**
179
179
  * This component is for internal use only.
180
180
  *
@@ -186,4 +186,4 @@ export default class InternalPaneDraggable extends SvelteComponent<
186
186
  InternalPaneDraggableEvents,
187
187
  InternalPaneDraggableSlots
188
188
  > {}
189
- export {};
189
+ export {}