@deck.gl/widgets 9.3.0-alpha.1 → 9.3.0-alpha.2

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 (89) hide show
  1. package/dist/context-menu-widget.d.ts +7 -5
  2. package/dist/context-menu-widget.d.ts.map +1 -1
  3. package/dist/context-menu-widget.js +2 -1
  4. package/dist/context-menu-widget.js.map +1 -1
  5. package/dist/dist.dev.js +687 -555
  6. package/dist/icon-widget.d.ts +28 -0
  7. package/dist/icon-widget.d.ts.map +1 -0
  8. package/dist/icon-widget.js +35 -0
  9. package/dist/icon-widget.js.map +1 -0
  10. package/dist/index.cjs +468 -309
  11. package/dist/index.cjs.map +4 -4
  12. package/dist/index.d.ts +11 -9
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +7 -7
  15. package/dist/index.js.map +1 -1
  16. package/dist/info-widget.d.ts +1 -0
  17. package/dist/info-widget.d.ts.map +1 -1
  18. package/dist/info-widget.js +6 -0
  19. package/dist/info-widget.js.map +1 -1
  20. package/dist/lib/components/dropdown-menu.d.ts +3 -2
  21. package/dist/lib/components/dropdown-menu.d.ts.map +1 -1
  22. package/dist/lib/components/dropdown-menu.js +12 -8
  23. package/dist/lib/components/dropdown-menu.js.map +1 -1
  24. package/dist/lib/components/icon-button.d.ts +3 -0
  25. package/dist/lib/components/icon-button.d.ts.map +1 -1
  26. package/dist/lib/components/icon-button.js +10 -2
  27. package/dist/lib/components/icon-button.js.map +1 -1
  28. package/dist/lib/components/popover.js +1 -1
  29. package/dist/lib/components/popover.js.map +1 -1
  30. package/dist/lib/data-url.d.ts +5 -0
  31. package/dist/lib/data-url.d.ts.map +1 -0
  32. package/dist/lib/data-url.js +7 -0
  33. package/dist/lib/data-url.js.map +1 -0
  34. package/dist/popup-widget.d.ts +1 -0
  35. package/dist/popup-widget.d.ts.map +1 -1
  36. package/dist/popup-widget.js +6 -0
  37. package/dist/popup-widget.js.map +1 -1
  38. package/dist/selector-widget.d.ts +44 -0
  39. package/dist/selector-widget.d.ts.map +1 -0
  40. package/dist/selector-widget.js +64 -0
  41. package/dist/selector-widget.js.map +1 -0
  42. package/dist/splitter-widget.d.ts +52 -11
  43. package/dist/splitter-widget.d.ts.map +1 -1
  44. package/dist/splitter-widget.js +177 -76
  45. package/dist/splitter-widget.js.map +1 -1
  46. package/dist/stats-widget.d.ts +2 -1
  47. package/dist/stats-widget.d.ts.map +1 -1
  48. package/dist/stats-widget.js +37 -8
  49. package/dist/stats-widget.js.map +1 -1
  50. package/dist/stylesheet.css +50 -13
  51. package/dist/timeline-widget.d.ts.map +1 -1
  52. package/dist/timeline-widget.js +6 -1
  53. package/dist/timeline-widget.js.map +1 -1
  54. package/dist/toggle-widget.d.ts +38 -0
  55. package/dist/toggle-widget.d.ts.map +1 -0
  56. package/dist/toggle-widget.js +47 -0
  57. package/dist/toggle-widget.js.map +1 -0
  58. package/dist.min.js +2 -2
  59. package/package.json +3 -3
  60. package/src/context-menu-widget.tsx +9 -9
  61. package/src/icon-widget.tsx +69 -0
  62. package/src/index.ts +11 -9
  63. package/src/info-widget.tsx +7 -0
  64. package/src/lib/components/dropdown-menu.tsx +22 -15
  65. package/src/lib/components/icon-button.tsx +15 -3
  66. package/src/lib/components/popover.tsx +1 -1
  67. package/src/lib/data-url.ts +5 -0
  68. package/src/popup-widget.tsx +7 -0
  69. package/src/selector-widget.tsx +111 -0
  70. package/src/splitter-widget.tsx +281 -96
  71. package/src/stats-widget.tsx +50 -9
  72. package/src/stylesheet.css +50 -13
  73. package/src/timeline-widget.tsx +8 -1
  74. package/src/toggle-widget.tsx +101 -0
  75. package/dist/fps-widget.d.ts +0 -28
  76. package/dist/fps-widget.d.ts.map +0 -1
  77. package/dist/fps-widget.js +0 -51
  78. package/dist/fps-widget.js.map +0 -1
  79. package/dist/lib/components/icon-menu.d.ts +0 -16
  80. package/dist/lib/components/icon-menu.d.ts.map +0 -1
  81. package/dist/lib/components/icon-menu.js +0 -33
  82. package/dist/lib/components/icon-menu.js.map +0 -1
  83. package/dist/view-selector-widget.d.ts +0 -35
  84. package/dist/view-selector-widget.d.ts.map +0 -1
  85. package/dist/view-selector-widget.js +0 -63
  86. package/dist/view-selector-widget.js.map +0 -1
  87. package/src/fps-widget.tsx +0 -77
  88. package/src/lib/components/icon-menu.tsx +0 -70
  89. package/src/view-selector-widget.tsx +0 -151
@@ -1 +1 @@
1
- {"version":3,"file":"splitter-widget.d.ts","sourceRoot":"","sources":["../src/splitter-widget.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAC,MAAM,EAAE,KAAK,WAAW,EAAC,MAAM,eAAe,CAAC;AAEvD,wCAAwC;AACxC,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG;IAC9C,iDAAiD;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,oEAAoE;IACpE,WAAW,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACxC,4EAA4E;IAC5E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,4CAA4C;IAC5C,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB,CAAC;AAEF;;;;GAIG;AACH,qBAAa,cAAe,SAAQ,MAAM,CAAC,mBAAmB,CAAC;IAC7D,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAUhD;IAEF,SAAS,SAA0B;IACnC,SAAS,SAAmB;gBAEhB,KAAK,EAAE,mBAAmB;IAItC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,mBAAmB,CAAC;IAI5C,YAAY,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;CAqB7C"}
1
+ {"version":3,"file":"splitter-widget.d.ts","sourceRoot":"","sources":["../src/splitter-widget.tsx"],"names":[],"mappings":"AAMA,OAAO,EACL,MAAM,EAGN,KAAK,WAAW,EAChB,KAAK,IAAI,EACV,MAAM,eAAe,CAAC;AAEvB,MAAM,MAAM,UAAU,GAAG;IACvB,4CAA4C;IAC5C,WAAW,EAAE,UAAU,GAAG,YAAY,CAAC;IACvC;gHAC4G;IAC5G,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,GAAG,UAAU,EAAE,KAAK,EAAE,IAAI,GAAG,UAAU,CAAC,CAAC;IAC5D;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,UAAU,GAAG,YAAY,CAAC;IACvC,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,GAAG,iBAAiB,EAAE,KAAK,EAAE,IAAI,GAAG,iBAAiB,CAAC,CAAC;IAC1E,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAmGF,wCAAwC;AACxC,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG;IAC9C,gCAAgC;IAChC,UAAU,EAAE,UAAU,CAAC;IACvB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;IACnC,4CAA4C;IAC5C,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB,CAAC;AAEF;;;;GAIG;AACH,qBAAa,cAAe,SAAQ,MAAM,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAC;IACrE,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAOhD;IAEF,SAAS,SAA0B;IACnC,SAAS,SAAmB;IAC5B,WAAW,EAAG,iBAAiB,EAAE,CAAC;IAClC,6CAA6C;IAC7C,KAAK,EAAG,IAAI,EAAE,CAAC;IACf,mCAAmC;IACnC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC;IACnB,WAAW,UAAQ;gBAEP,KAAK,EAAE,mBAAmB;IAKtC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,mBAAmB,CAAC;IAQ5C,QAAQ;IAQR,UAAU;IAcV,OAAO,CAAC,QAAQ;IAgBhB,OAAO,CAAC,QAAQ;IAShB,YAAY,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;CAkB7C"}
@@ -1,10 +1,93 @@
1
- import { jsx as _jsx } from "preact/jsx-runtime";
1
+ import { jsx as _jsx, Fragment as _Fragment } from "preact/jsx-runtime";
2
2
  // deck.gl
3
3
  // SPDX-License-Identifier: MIT
4
4
  // Copyright (c) vis.gl contributors
5
5
  import { render } from 'preact';
6
- import { useState, useRef } from 'preact/hooks';
7
- import { Widget } from '@deck.gl/core';
6
+ import { useState, useRef, useEffect } from 'preact/hooks';
7
+ import { Widget, _deepEqual as deepEqual } from '@deck.gl/core';
8
+ function parseViewLayout(root) {
9
+ const layoutsById = [];
10
+ const isViewLayout = (v) => 'views' in v;
11
+ function createManagedViewLayout(l) {
12
+ const id = layoutsById.length;
13
+ const minSplit = l.minSplit ?? 0.05;
14
+ const maxSplit = l.maxSplit ?? 0.95;
15
+ const split = Math.min(Math.max(l.initialSplit ?? 0.5, minSplit), maxSplit);
16
+ const managed = {
17
+ id,
18
+ orientation: l.orientation,
19
+ views: l.views,
20
+ split,
21
+ editable: l.editable ?? true,
22
+ minSplit,
23
+ maxSplit,
24
+ x: 0,
25
+ y: 0,
26
+ width: 0,
27
+ height: 0
28
+ };
29
+ layoutsById.push(managed);
30
+ managed.views = [
31
+ isViewLayout(l.views[0]) ? createManagedViewLayout(l.views[0]) : l.views[0],
32
+ isViewLayout(l.views[1]) ? createManagedViewLayout(l.views[1]) : l.views[1]
33
+ ];
34
+ return managed;
35
+ }
36
+ createManagedViewLayout(root);
37
+ return layoutsById;
38
+ }
39
+ function evaluateViews(root) {
40
+ const views = [];
41
+ function evaluateViewLayout(l, x, y, width, height) {
42
+ l.x = x;
43
+ l.y = y;
44
+ l.width = width;
45
+ l.height = height;
46
+ const child1X = x;
47
+ const child1Y = y;
48
+ let child1Width = width;
49
+ let child1Height = height;
50
+ let child2X = x;
51
+ let child2Y = y;
52
+ let child2Width = width;
53
+ let child2Height = height;
54
+ if (l.orientation === 'horizontal') {
55
+ child1Width = width * l.split;
56
+ child2X = x + child1Width;
57
+ child2Width = width - child1Width;
58
+ }
59
+ else {
60
+ child1Height = height * l.split;
61
+ child2Y = y + child1Height;
62
+ child2Height = height - child1Height;
63
+ }
64
+ const [view1, view2] = l.views;
65
+ if ('views' in view1) {
66
+ evaluateViewLayout(view1, child1X, child1Y, child1Width, child1Height);
67
+ }
68
+ else {
69
+ views.push(view1.clone({
70
+ x: `${child1X}%`,
71
+ y: `${child1Y}%`,
72
+ width: `${child1Width}%`,
73
+ height: `${child1Height}%`
74
+ }));
75
+ }
76
+ if ('views' in view2) {
77
+ evaluateViewLayout(view2, child2X, child2Y, child2Width, child2Height);
78
+ }
79
+ else {
80
+ views.push(view2.clone({
81
+ x: `${child2X}%`,
82
+ y: `${child2Y}%`,
83
+ width: `${child2Width}%`,
84
+ height: `${child2Height}%`
85
+ }));
86
+ }
87
+ }
88
+ evaluateViewLayout(root, 0, 0, 100, 100);
89
+ return views;
90
+ }
8
91
  /**
9
92
  * A draggable splitter widget that appears as a vertical or horizontal line
10
93
  * across the deck.gl canvas. It positions itself based on the split percentage
@@ -15,29 +98,66 @@ export class SplitterWidget extends Widget {
15
98
  super(props);
16
99
  this.className = 'deck-widget-splitter';
17
100
  this.placement = 'fill';
101
+ this.needsUpdate = true;
102
+ this.viewLayouts = parseViewLayout(this.props.viewLayout);
18
103
  }
19
104
  setProps(props) {
105
+ if (props.viewLayout && !deepEqual(props.viewLayout, this.props.viewLayout, -1)) {
106
+ this.viewLayouts = parseViewLayout(props.viewLayout);
107
+ this.views = undefined;
108
+ }
20
109
  super.setProps(props);
21
110
  }
111
+ onRedraw() {
112
+ // Actually update DOM
113
+ super.updateHTML();
114
+ }
115
+ // Usually widgets rerender their DOM elements here
116
+ // In this case we need the widget UI to synchronize with deck view states
117
+ // so we update deck props here and rerender DOM in the next onRedraw
118
+ updateHTML() {
119
+ if (!this.views) {
120
+ // viewLayouts has changed, re-evaluate
121
+ this.views = evaluateViews(this.viewLayouts[0]);
122
+ // we send a copy to the callback so that externally set views can be differentiated from internal
123
+ this.props.onChange(this.views.slice());
124
+ }
125
+ // This method is called inside deck.setProps > widgetManager.setProps > widget.setProps
126
+ // Calling deck.setProps immediately would cause infinite loop
127
+ requestAnimationFrame(() => {
128
+ this.doUpdate();
129
+ });
130
+ }
131
+ doUpdate() {
132
+ if (this.deck) {
133
+ const deckViews = this.deck.props.views;
134
+ const isManagedExternally =
135
+ // is not empty
136
+ deckViews &&
137
+ // is not set by us
138
+ deckViews !== this.lastViews;
139
+ if (!isManagedExternally && this.lastViews !== this.views) {
140
+ this.lastViews = this.views;
141
+ this.deck.setProps({ views: this.views });
142
+ }
143
+ }
144
+ }
145
+ onChange(newSplit, layout) {
146
+ layout.split = newSplit;
147
+ // layout has updated, re-evaluate
148
+ this.views = evaluateViews(this.viewLayouts[0]);
149
+ // we send a copy to the callback so that externally set views can be differentiated from internal
150
+ this.props.onChange(this.views.slice());
151
+ this.doUpdate();
152
+ }
22
153
  onRenderHTML(rootElement) {
23
- // Ensure the widget container fills the deck.gl canvas.
24
- // TODO - Move styling to CSS
25
- rootElement.style.position = 'absolute';
26
- rootElement.style.top = '0';
27
- rootElement.style.left = '0';
28
- rootElement.style.width = '100%';
29
- rootElement.style.height = '100%';
30
- rootElement.style.margin = '0px';
31
- render(_jsx(Splitter, { orientation: this.props.orientation, initialSplit: this.props.initialSplit, onChange: this.props.onChange, onDragStart: this.props.onDragStart, onDragEnd: this.props.onDragEnd }), rootElement);
154
+ render(_jsx(_Fragment, { children: this.viewLayouts.map(layout => layout.editable && (_jsx(Splitter, { ...layout, onChange: newSplit => this.onChange(newSplit, layout), onDragStart: () => this.props.onDragStart(), onDragEnd: () => this.props.onDragStart() }))) }), rootElement);
32
155
  }
33
156
  }
34
157
  SplitterWidget.defaultProps = {
35
158
  ...Widget.defaultProps,
36
159
  id: 'splitter-widget',
37
- viewId1: '',
38
- viewId2: '',
39
- orientation: 'vertical',
40
- initialSplit: 0.5,
160
+ viewLayout: undefined,
41
161
  onChange: () => { },
42
162
  onDragStart: () => { },
43
163
  onDragEnd: () => { }
@@ -47,75 +167,56 @@ SplitterWidget.defaultProps = {
47
167
  * It computes its position based on the provided split percentage and
48
168
  * updates it during mouse drag events.
49
169
  */
50
- function Splitter({ orientation, initialSplit, onChange, onDragStart, onDragEnd }) {
51
- const [split, setSplit] = useState(initialSplit);
52
- const dragging = useRef(false);
170
+ function Splitter({ orientation, x, y, width, height, split, minSplit, maxSplit, onChange, onDragStart, onDragEnd }) {
171
+ const [dragging, setDragging] = useState(false);
53
172
  const containerRef = useRef(null);
173
+ useEffect(() => {
174
+ if (!dragging) {
175
+ return undefined;
176
+ }
177
+ const handleDragging = (event) => {
178
+ if (!containerRef.current)
179
+ return;
180
+ const rect = containerRef.current.getBoundingClientRect();
181
+ let newSplit;
182
+ if (orientation === 'horizontal') {
183
+ newSplit = (event.clientX - rect.left) / rect.width;
184
+ }
185
+ else {
186
+ newSplit = (event.clientY - rect.top) / rect.height;
187
+ }
188
+ // Clamp newSplit between 5% and 95%
189
+ newSplit = Math.min(Math.max(newSplit, minSplit), maxSplit);
190
+ onChange?.(newSplit);
191
+ };
192
+ const handleDragEnd = () => {
193
+ onDragEnd?.();
194
+ setDragging(false);
195
+ };
196
+ document.addEventListener('pointermove', handleDragging);
197
+ document.addEventListener('pointerup', handleDragEnd);
198
+ document.addEventListener('pointerleave', handleDragEnd);
199
+ return () => {
200
+ document.removeEventListener('pointermove', handleDragging);
201
+ document.removeEventListener('pointerup', handleDragEnd);
202
+ document.removeEventListener('pointerleave', handleDragEnd);
203
+ };
204
+ }, [dragging]);
54
205
  const handleDragStart = (event) => {
55
- dragging.current = true;
206
+ setDragging(true);
56
207
  onDragStart?.();
57
- document.addEventListener('mousemove', handleDragging);
58
- document.addEventListener('mouseup', handleDragEnd);
59
208
  event.preventDefault();
60
209
  };
61
- const handleDragging = (event) => {
62
- if (!dragging.current || !containerRef.current)
63
- return;
64
- const rect = containerRef.current.getBoundingClientRect();
65
- let newSplit;
66
- if (orientation === 'vertical') {
67
- newSplit = (event.clientX - rect.left) / rect.width;
68
- }
69
- else {
70
- newSplit = (event.clientY - rect.top) / rect.height;
71
- }
72
- // Clamp newSplit between 5% and 95%
73
- newSplit = Math.min(Math.max(newSplit, 0.05), 0.95);
74
- setSplit(newSplit);
75
- onChange?.(newSplit);
76
- };
77
- const handleDragEnd = (event) => {
78
- if (!dragging.current)
79
- return;
80
- dragging.current = false;
81
- onDragEnd?.();
82
- document.removeEventListener('mousemove', handleDragging);
83
- document.removeEventListener('mouseup', handleDragEnd);
84
- };
85
210
  // The splitter line style based on orientation and the current split percentage.
86
- const splitterStyle = orientation === 'vertical'
87
- ? {
88
- position: 'absolute',
89
- top: 0,
90
- bottom: 0,
91
- left: `${split * 100}%`,
92
- width: '4px',
93
- cursor: 'col-resize',
94
- background: '#ccc',
95
- zIndex: 10,
96
- pointerEvents: 'auto',
97
- boxShadow: 'inset -1px 0 0 white, inset 1px 0 0 white'
98
- }
99
- : {
100
- position: 'absolute',
101
- left: 0,
102
- right: 0,
103
- top: `${split * 100}%`,
104
- height: '4px',
105
- cursor: 'row-resize',
106
- background: '#ccc',
107
- zIndex: 10,
108
- pointerEvents: 'auto',
109
- boxShadow: 'inset -1px 0 0 white, inset 1px 0 0 white'
110
- };
211
+ const splitterStyle = orientation === 'horizontal' ? { left: `${split * 100}%` } : { top: `${split * 100}%` };
111
212
  // Container style to fill the entire deck.gl canvas.
112
213
  const containerStyle = {
113
214
  position: 'absolute',
114
- top: 0,
115
- left: 0,
116
- right: 0,
117
- bottom: 0
215
+ top: `${y}%`,
216
+ left: `${x}%`,
217
+ width: `${width}%`,
218
+ height: `${height}%`
118
219
  };
119
- return (_jsx("div", { ref: containerRef, style: containerStyle, children: _jsx("div", { style: splitterStyle, onMouseDown: handleDragStart }) }));
220
+ return (_jsx("div", { ref: containerRef, style: containerStyle, children: _jsx("div", { className: `deck-widget-splitter-handle deck-widget-splitter-handle--${orientation} ${dragging ? 'active' : ''}`, style: splitterStyle, onPointerDown: handleDragStart }) }));
120
221
  }
121
222
  //# sourceMappingURL=splitter-widget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"splitter-widget.js","sourceRoot":"","sources":["../src/splitter-widget.tsx"],"names":[],"mappings":";AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,OAAO,EAAI,MAAM,EAAC,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAC,QAAQ,EAAE,MAAM,EAAC,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAC,MAAM,EAAmB,MAAM,eAAe,CAAC;AAoBvD;;;;GAIG;AACH,MAAM,OAAO,cAAe,SAAQ,MAA2B;IAgB7D,YAAY,KAA0B;QACpC,KAAK,CAAC,KAAK,CAAC,CAAC;QAJf,cAAS,GAAG,sBAAsB,CAAC;QACnC,cAAS,GAAG,MAAe,CAAC;IAI5B,CAAC;IAED,QAAQ,CAAC,KAAmC;QAC1C,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;IAED,YAAY,CAAC,WAAwB;QACnC,wDAAwD;QACxD,6BAA6B;QAC7B,WAAW,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC;QACxC,WAAW,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC;QAC5B,WAAW,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC;QAC7B,WAAW,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;QACjC,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QAClC,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;QAEjC,MAAM,CACJ,KAAC,QAAQ,IACP,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EACnC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EACrC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAC7B,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EACnC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,GAC/B,EACF,WAAW,CACZ,CAAC;IACJ,CAAC;;AA3CM,2BAAY,GAAkC;IACnD,GAAG,MAAM,CAAC,YAAY;IACtB,EAAE,EAAE,iBAAiB;IACrB,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,UAAU;IACvB,YAAY,EAAE,GAAG;IACjB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;IAClB,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC;IACrB,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;CACpB,AAVkB,CAUjB;AAoCJ;;;;GAIG;AACH,SAAS,QAAQ,CAAC,EAChB,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,SAAS,EAOV;IACC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,YAAY,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAElD,MAAM,eAAe,GAAG,CAAC,KAAiB,EAAE,EAAE;QAC5C,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;QACxB,WAAW,EAAE,EAAE,CAAC;QAChB,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QACvD,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACpD,KAAK,CAAC,cAAc,EAAE,CAAC;IACzB,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,KAAiB,EAAE,EAAE;QAC3C,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO;YAAE,OAAO;QACvD,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;QAC1D,IAAI,QAAgB,CAAC;QACrB,IAAI,WAAW,KAAK,UAAU,EAAE,CAAC;YAC/B,QAAQ,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QACtD,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QACtD,CAAC;QACD,oCAAoC;QACpC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;QACpD,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACnB,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC;IACvB,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,KAAiB,EAAE,EAAE;QAC1C,IAAI,CAAC,QAAQ,CAAC,OAAO;YAAE,OAAO;QAC9B,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;QACzB,SAAS,EAAE,EAAE,CAAC;QACd,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAC1D,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IACzD,CAAC,CAAC;IAEF,iFAAiF;IACjF,MAAM,aAAa,GACjB,WAAW,KAAK,UAAU;QACxB,CAAC,CAAC;YACE,QAAQ,EAAE,UAAU;YACpB,GAAG,EAAE,CAAC;YACN,MAAM,EAAE,CAAC;YACT,IAAI,EAAE,GAAG,KAAK,GAAG,GAAG,GAAG;YACvB,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,YAAY;YACpB,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,EAAE;YACV,aAAa,EAAE,MAAM;YACrB,SAAS,EAAE,2CAA2C;SACvD;QACH,CAAC,CAAC;YACE,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,GAAG,KAAK,GAAG,GAAG,GAAG;YACtB,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,YAAY;YACpB,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,EAAE;YACV,aAAa,EAAE,MAAM;YACrB,SAAS,EAAE,2CAA2C;SACvD,CAAC;IAER,qDAAqD;IACrD,MAAM,cAAc,GAAwB;QAC1C,QAAQ,EAAE,UAAU;QACpB,GAAG,EAAE,CAAC;QACN,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;KACV,CAAC;IAEF,OAAO,CACL,cAAK,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,YAC3C,cACE,KAAK,EAAE,aAAa,EACpB,WAAW,EAAE,eAAuD,GACpE,GACE,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"splitter-widget.js","sourceRoot":"","sources":["../src/splitter-widget.tsx"],"names":[],"mappings":"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"}
@@ -34,11 +34,12 @@ export declare class StatsWidget extends Widget<StatsWidgetProps> {
34
34
  collapsed: boolean;
35
35
  constructor(props?: StatsWidgetProps);
36
36
  setProps(props: Partial<StatsWidgetProps>): void;
37
- onAdd(): void;
37
+ onRemove(): void;
38
38
  onRenderHTML(rootElement: HTMLElement): void;
39
39
  onRedraw(): void;
40
40
  protected _getStats(): Stats | [key: string, value: number][];
41
41
  protected _toggleCollapsed: () => void;
42
+ protected _getFps: () => number;
42
43
  protected _getLines(stat: Stat | [key: string, value: number]): string;
43
44
  }
44
45
  //# sourceMappingURL=stats-widget.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stats-widget.d.ts","sourceRoot":"","sources":["../src/stats-widget.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAC,MAAM,EAAE,KAAK,eAAe,EAAE,KAAK,WAAW,EAAC,MAAM,eAAe,CAAC;AAG7E,OAAO,KAAK,EAAC,KAAK,EAAE,IAAI,EAAC,MAAM,iBAAiB,CAAC;AAajD,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAMrE,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG;IAC3C,8DAA8D;IAC9D,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC7C;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iCAAiC;IACjC,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,yCAAyC;IACzC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;IAC/D,2DAA2D;IAC3D,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACzC,CAAC;AAEF,oDAAoD;AACpD,qBAAa,WAAY,SAAQ,MAAM,CAAC,gBAAgB,CAAC;IACvD,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAY7C;IAEF,SAAS,SAAuB;IAChC,SAAS,EAAiB,eAAe,CAAC;IAE1C,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,WAAW,CAAyC;IAC5D,OAAO,CAAC,cAAc,CAA0B;IAChD,SAAS,EAAE,OAAO,CAAQ;gBAEd,KAAK,GAAE,gBAAqB;IAQxC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAgBhD,KAAK,IAAI,IAAI;IAIb,YAAY,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAwC5C,QAAQ,IAAI,IAAI;IAOhB,SAAS,CAAC,SAAS,IAAI,KAAK,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE;IAoB7D,SAAS,CAAC,gBAAgB,QAAO,IAAI,CAGnC;IAEF,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,MAAM;CAevE"}
1
+ {"version":3,"file":"stats-widget.d.ts","sourceRoot":"","sources":["../src/stats-widget.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAC,MAAM,EAAE,KAAK,eAAe,EAAE,KAAK,WAAW,EAAC,MAAM,eAAe,CAAC;AAI7E,OAAO,KAAK,EAAC,KAAK,EAAE,IAAI,EAAC,MAAM,iBAAiB,CAAC;AAcjD,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAMrE,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG;IAC3C,8DAA8D;IAC9D,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC7C;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iCAAiC;IACjC,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,yCAAyC;IACzC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;IAC/D,2DAA2D;IAC3D,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACzC,CAAC;AAEF,oDAAoD;AACpD,qBAAa,WAAY,SAAQ,MAAM,CAAC,gBAAgB,CAAC;IACvD,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAY7C;IAEF,SAAS,SAAuB;IAChC,SAAS,EAAiB,eAAe,CAAC;IAE1C,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,WAAW,CAAyC;IAC5D,OAAO,CAAC,cAAc,CAA0B;IAChD,SAAS,EAAE,OAAO,CAAQ;gBAEd,KAAK,GAAE,gBAAqB;IAQxC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAgBhD,QAAQ;IAOR,YAAY,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IA6C5C,QAAQ,IAAI,IAAI;IAShB,SAAS,CAAC,SAAS,IAAI,KAAK,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE;IAoB7D,SAAS,CAAC,gBAAgB,QAAO,IAAI,CAGnC;IAEF,SAAS,CAAC,OAAO,QAAO,MAAM,CAG5B;IAEF,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,MAAM;CAevE"}
@@ -5,6 +5,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "preact/jsx-runtime";
5
5
  import { Widget } from '@deck.gl/core';
6
6
  import { luma } from '@luma.gl/core';
7
7
  import { render } from 'preact';
8
+ import { useEffect, useState } from 'preact/hooks';
9
+ import { IconButton } from "./lib/components/icon-button.js";
8
10
  const DEFAULT_COUNT_FORMATTER = (stat) => `${stat.name}: ${stat.count}`;
9
11
  function formatTime(time) {
10
12
  return time < 1000 ? `${time.toFixed(2)}ms` : `${(time / 1000).toFixed(2)}s`;
@@ -32,6 +34,10 @@ export class StatsWidget extends Widget {
32
34
  this.collapsed = !this.collapsed;
33
35
  this.updateHTML();
34
36
  };
37
+ this._getFps = () => {
38
+ // @ts-expect-error metrics is protected
39
+ return Math.round(this.deck?.metrics.fps ?? 0);
40
+ };
35
41
  this._formatters = { ...DEFAULT_FORMATTERS };
36
42
  this._resetOnUpdate = { ...this.props.resetOnUpdate };
37
43
  this.collapsed = !props.defaultIsExpanded;
@@ -52,15 +58,22 @@ export class StatsWidget extends Widget {
52
58
  }
53
59
  super.setProps(props);
54
60
  }
55
- onAdd() {
56
- this.updateHTML();
61
+ onRemove() {
62
+ if (this.rootElement) {
63
+ // Make sure all preact hooks are finalized
64
+ render(null, this.rootElement);
65
+ }
57
66
  }
58
67
  onRenderHTML(rootElement) {
59
- const stats = this._getStats();
60
68
  const collapsed = this.collapsed;
69
+ if (collapsed) {
70
+ render(_jsx(FpsIcon, { getFps: this._getFps, onClick: this._toggleCollapsed }), rootElement);
71
+ return;
72
+ }
73
+ const stats = this._getStats();
61
74
  const title = this.props.title || ('id' in stats ? stats.id : null) || 'Stats';
62
75
  const items = [];
63
- if (!collapsed && stats) {
76
+ if (stats) {
64
77
  stats.forEach(stat => {
65
78
  const lines = this._getLines(stat).split('\n');
66
79
  if (this._resetOnUpdate && this._resetOnUpdate[stat.name]) {
@@ -71,12 +84,14 @@ export class StatsWidget extends Widget {
71
84
  });
72
85
  });
73
86
  }
74
- render(_jsxs("div", { className: "deck-widget-stats-container", style: { cursor: 'default' }, children: [_jsxs("div", { className: "deck-widget-stats-header", style: { cursor: 'pointer', pointerEvents: 'auto' }, onClick: this._toggleCollapsed, children: [_jsx("b", { children: title }), _jsx("button", { className: "deck-widget-dropdown-button", children: _jsx("span", { className: `deck-widget-dropdown-icon ${collapsed ? '' : 'open'}` }) })] }), !collapsed && _jsx("div", { className: "deck-widget-stats-content", children: items })] }), rootElement);
87
+ render(_jsxs("div", { className: "deck-widget-stats-container", style: { cursor: 'default' }, children: [_jsxs("div", { className: "deck-widget-stats-header", style: { cursor: 'pointer', pointerEvents: 'auto' }, onClick: this._toggleCollapsed, children: [_jsx("b", { children: title }), _jsx("button", { className: "deck-widget-dropdown-button", children: _jsx("span", { className: "deck-widget-dropdown-icon open" }) })] }), _jsx("div", { className: "deck-widget-stats-content", children: items })] }), rootElement);
75
88
  }
76
89
  onRedraw() {
77
- const framesPerUpdate = Math.max(1, this.props.framesPerUpdate || 1);
78
- if (this._counter++ % framesPerUpdate === 0) {
79
- this.updateHTML();
90
+ if (!this.collapsed) {
91
+ const framesPerUpdate = Math.max(1, this.props.framesPerUpdate || 1);
92
+ if (this._counter++ % framesPerUpdate === 0) {
93
+ this.updateHTML();
94
+ }
80
95
  }
81
96
  }
82
97
  _getStats() {
@@ -125,4 +140,18 @@ StatsWidget.defaultProps = {
125
140
  resetOnUpdate: {},
126
141
  id: 'stats'
127
142
  };
143
+ function FpsIcon({ getFps, onClick }) {
144
+ const [fps, setFps] = useState(getFps());
145
+ useEffect(() => {
146
+ const onUpdate = () => {
147
+ setFps(getFps());
148
+ timer = requestAnimationFrame(onUpdate);
149
+ };
150
+ let timer = requestAnimationFrame(onUpdate);
151
+ return () => {
152
+ cancelAnimationFrame(timer);
153
+ };
154
+ }, [getFps]);
155
+ return (_jsx(IconButton, { onClick: onClick, children: _jsxs("div", { className: "text", children: ["FPS", _jsx("br", {}), fps] }) }));
156
+ }
128
157
  //# sourceMappingURL=stats-widget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stats-widget.js","sourceRoot":"","sources":["../src/stats-widget.tsx"],"names":[],"mappings":";AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,OAAO,EAAC,MAAM,EAAyC,MAAM,eAAe,CAAC;AAC7E,OAAO,EAAC,IAAI,EAAC,MAAM,eAAe,CAAC;AACnC,OAAO,EAAC,MAAM,EAAC,MAAM,QAAQ,CAAC;AAG9B,MAAM,uBAAuB,GAAG,CAAC,IAAU,EAAU,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;AAEtF,SAAS,UAAU,CAAC,IAAY;IAC9B,OAAO,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;AAC/E,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,MAAM,EAAE,GAAG,KAAK,GAAG,GAAG,CAAC;IACvB,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;AAC/B,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAA2C;IACxE,KAAK,EAAE,uBAAuB;IAC9B,WAAW,EAAE,CAAC,IAAU,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,EAAE;IACjF,SAAS,EAAE,CAAC,IAAU,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;IACnE,GAAG,EAAE,CAAC,IAAU,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK;IACnE,MAAM,EAAE,CAAC,IAAU,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;CACpE,CAAC;AAyBF,oDAAoD;AACpD,MAAM,OAAO,WAAY,SAAQ,MAAwB;IAuBvD,YAAY,QAA0B,EAAE;QACtC,KAAK,CAAC,KAAK,CAAC,CAAC;QATf,cAAS,GAAG,mBAAmB,CAAC;QAChC,cAAS,GAAG,UAA6B,CAAC;QAElC,aAAQ,GAAG,CAAC,CAAC;QAGrB,cAAS,GAAY,IAAI,CAAC;QAiGhB,qBAAgB,GAAG,GAAS,EAAE;YACtC,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;YACjC,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC,CAAC;QAhGA,IAAI,CAAC,WAAW,GAAG,EAAC,GAAG,kBAAkB,EAAC,CAAC;QAC3C,IAAI,CAAC,cAAc,GAAG,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,EAAC,CAAC;QACpD,IAAI,CAAC,SAAS,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC;QAC1C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,QAAQ,CAAC,KAAgC;QACvC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;QACnD,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QAC1C,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;gBACpC,MAAM,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACjC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;oBACpB,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC;YACjF,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,GAAG,EAAC,GAAG,KAAK,CAAC,aAAa,EAAC,CAAC;QACjD,CAAC;QACD,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED,YAAY,CAAC,WAAwB;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC;QAC/E,MAAM,KAAK,GAAkB,EAAE,CAAC;QAEhC,IAAI,CAAC,SAAS,IAAI,KAAK,EAAE,CAAC;YACxB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACnB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC/C,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC1D,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,CAAC;gBACD,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;oBACxB,KAAK,CAAC,IAAI,CACR,cAA+B,KAAK,EAAE,EAAC,UAAU,EAAE,KAAK,EAAC,YACtD,IAAI,IADG,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,CAEvB,CACP,CAAC;gBACJ,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,CACJ,eAAK,SAAS,EAAC,6BAA6B,EAAC,KAAK,EAAE,EAAC,MAAM,EAAE,SAAS,EAAC,aACrE,eACE,SAAS,EAAC,0BAA0B,EACpC,KAAK,EAAE,EAAC,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAC,EACjD,OAAO,EAAE,IAAI,CAAC,gBAAgB,aAE9B,sBAAI,KAAK,GAAK,EACd,iBAAQ,SAAS,EAAC,6BAA6B,YAC7C,eAAM,SAAS,EAAE,6BAA6B,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,GAAI,GACpE,IACL,EACL,CAAC,SAAS,IAAI,cAAK,SAAS,EAAC,2BAA2B,YAAE,KAAK,GAAO,IACnE,EACN,WAAW,CACZ,CAAC;IACJ,CAAC;IAED,QAAQ;QACN,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC;QACrE,IAAI,IAAI,CAAC,QAAQ,EAAE,GAAG,eAAe,KAAK,CAAC,EAAE,CAAC;YAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC;IACH,CAAC;IAES,SAAS;QACjB,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACxB,KAAK,MAAM;gBACT,wCAAwC;gBACxC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC;gBACzC,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACjC,KAAK,MAAM;gBACT,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAClD,KAAK,QAAQ;gBACX,gCAAgC;gBAChC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC;gBACjC,MAAM,KAAK,GAAG,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBAClD,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YAC1B;gBACE,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAOS,SAAS,CAAC,IAAyC;QAC3D,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;YACpB,MAAM,SAAS,GACb,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,uBAAuB,CAAC;YAC9F,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;QACD,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC;QAC1B,MAAM,cAAc,GAAG,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC3C,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC;YACrB,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACpB,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;gBACnB,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAE5B,OAAO,GAAG,GAAG,KAAK,cAAc,EAAE,CAAC;IACrC,CAAC;;AAxIM,wBAAY,GAA+B;IAChD,GAAG,MAAM,CAAC,YAAY;IACtB,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,UAAU;IACrB,MAAM,EAAE,IAAI;IACZ,iBAAiB,EAAE,KAAK;IACxB,KAAK,EAAE,SAAU;IACjB,KAAK,EAAE,OAAO;IACd,eAAe,EAAE,CAAC;IAClB,UAAU,EAAE,EAAE;IACd,aAAa,EAAE,EAAE;IACjB,EAAE,EAAE,OAAO;CACZ,AAZkB,CAYjB"}
1
+ {"version":3,"file":"stats-widget.js","sourceRoot":"","sources":["../src/stats-widget.tsx"],"names":[],"mappings":"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"}
@@ -257,19 +257,6 @@
257
257
  padding: 4px;
258
258
  }
259
259
 
260
- /* FPS widget styles */
261
-
262
- .deck-widget.deck-widget-fps button {
263
- pointer-events: none;
264
- }
265
-
266
- .deck-widget.deck-widget-fps .text {
267
- color: var(--button-text, rgb(24, 24, 26));
268
- font-family: monospace;
269
- font-size: 8px;
270
- font-weight: 700;
271
- }
272
-
273
260
  /* Loading styles */
274
261
  @keyframes spin {
275
262
  to {
@@ -451,6 +438,12 @@
451
438
  }
452
439
 
453
440
  /* Stats styles */
441
+ .deck-widget.deck-widget-stats button .text {
442
+ color: var(--button-text, rgb(24, 24, 26));
443
+ font-family: monospace;
444
+ font-size: 8px;
445
+ font-weight: 700;
446
+ }
454
447
  .deck-widget-stats-container {
455
448
  border-radius: var(--button-corner-radius, 8px);
456
449
  display: inline-flex;
@@ -647,3 +640,47 @@
647
640
  .deck-widget-scrollbar[data-placement^=bottom-] .deck-widget-range--horizontal {
648
641
  bottom: 0;
649
642
  }
643
+
644
+ /** Splitter */
645
+ .deck-widget.deck-widget-splitter {
646
+ position: absolute;
647
+ margin: 0;
648
+ left: 0;
649
+ right: 0;
650
+ top: 0;
651
+ bottom: 0;
652
+ }
653
+ .deck-widget-splitter-handle {
654
+ position: absolute;
655
+ background: var(--button-background, #fff);
656
+ z-index: 10;
657
+ pointer-events: auto;
658
+ box-shadow: inset 1px 1px 1px var(--button-icon-idle, #616166);
659
+ }
660
+ .deck-widget-splitter-handle.active {
661
+ box-shadow: var(--button-shadow, 0px 0px 8px 0px rgba(0, 0, 0, 0.25));
662
+ }
663
+ .deck-widget-splitter-handle:before {
664
+ content: ' ';
665
+ display: block;
666
+ position: absolute;
667
+ box-sizing: content-box;
668
+ width: 100%;
669
+ height: 100%;
670
+ padding: 4px;
671
+ margin: -4px;
672
+ }
673
+ .deck-widget-splitter-handle--horizontal {
674
+ top: 0;
675
+ bottom: 0;
676
+ width: 2px;
677
+ margin-left: -1px;
678
+ cursor: col-resize;
679
+ }
680
+ .deck-widget-splitter-handle--vertical {
681
+ left: 0;
682
+ right: 0;
683
+ height: 2px;
684
+ margin-top: -1px;
685
+ cursor: row-resize;
686
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"timeline-widget.d.ts","sourceRoot":"","sources":["../src/timeline-widget.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAC,MAAM,EAAE,KAAK,eAAe,EAAE,KAAK,WAAW,EAAC,MAAM,eAAe,CAAC;AAC7E,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,iBAAiB,CAAC;AAK9C,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG;IAC9C,iEAAiE;IACjE,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC3B,mCAAmC;IACnC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mCAAmC;IACnC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACzC,CAAC;AAEF,qBAAa,cAAe,SAAQ,MAAM,CAAC,mBAAmB,CAAC;IAC7D,EAAE,SAAc;IAChB,SAAS,SAA0B;IACnC,SAAS,EAAE,eAAe,CAAU;IAEpC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAuB;IACtC,WAAW,EAAE,MAAM,CAAC;IAEpB,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAchD;gBAEU,KAAK,GAAE,mBAAwB;IAO3C,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,IAAI;IAKnD,KAAK,IAAI,IAAI;IAMb,QAAQ,IAAI,IAAI;IAIhB,YAAY,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IA4C5C,OAAO,CAAC,eAAe,CAMrB;IAEF,OAAO,CAAC,gBAAgB,CAKtB;IAEK,IAAI,IAAI,IAAI;IAMZ,IAAI,IAAI,IAAI;IASnB,OAAO,CAAC,IAAI,CA2BV;CACH"}
1
+ {"version":3,"file":"timeline-widget.d.ts","sourceRoot":"","sources":["../src/timeline-widget.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAC,MAAM,EAAE,KAAK,eAAe,EAAE,KAAK,WAAW,EAAC,MAAM,eAAe,CAAC;AAC7E,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,iBAAiB,CAAC;AAK9C,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG;IAC9C,iEAAiE;IACjE,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC3B,mCAAmC;IACnC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mCAAmC;IACnC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACzC,CAAC;AAEF,qBAAa,cAAe,SAAQ,MAAM,CAAC,mBAAmB,CAAC;IAC7D,EAAE,SAAc;IAChB,SAAS,SAA0B;IACnC,SAAS,EAAE,eAAe,CAAU;IAEpC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAuB;IACtC,WAAW,EAAE,MAAM,CAAC;IAEpB,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAchD;gBAEU,KAAK,GAAE,mBAAwB;IAO3C,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,IAAI;IAKnD,KAAK,IAAI,IAAI;IAMb,QAAQ,IAAI,IAAI;IAIhB,YAAY,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IA4C5C,OAAO,CAAC,eAAe,CAMrB;IAEF,OAAO,CAAC,gBAAgB,CAKtB;IAEK,IAAI,IAAI,IAAI;IAaZ,IAAI,IAAI,IAAI;IASnB,OAAO,CAAC,IAAI,CA2BV;CACH"}
@@ -31,7 +31,7 @@ export class TimelineWidget extends Widget {
31
31
  this.tick = () => {
32
32
  const { timeRange: [min, max], step, loop } = this.props;
33
33
  if (step > 0) {
34
- let next = Math.floor(this.currentTime / step) * step + step;
34
+ let next = Math.round(this.currentTime / step) * step + step;
35
35
  if (next > max) {
36
36
  if (this.currentTime < max) {
37
37
  next = max;
@@ -85,6 +85,11 @@ export class TimelineWidget extends Widget {
85
85
  }
86
86
  play() {
87
87
  this.playing = true;
88
+ const { timeRange: [min, max] } = this.props;
89
+ if (this.currentTime >= max) {
90
+ this.currentTime = min;
91
+ this.props.onTimeChange(min);
92
+ }
88
93
  this.updateHTML();
89
94
  this.tick();
90
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"timeline-widget.js","sourceRoot":"","sources":["../src/timeline-widget.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"timeline-widget.js","sourceRoot":"","sources":["../src/timeline-widget.tsx"],"names":[],"mappings":"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"}