@deck.gl/widgets 9.2.11 → 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 (152) hide show
  1. package/dist/compass-widget.js +5 -5
  2. package/dist/compass-widget.js.map +1 -1
  3. package/dist/context-menu-widget.d.ts +27 -20
  4. package/dist/context-menu-widget.d.ts.map +1 -1
  5. package/dist/context-menu-widget.js +45 -48
  6. package/dist/context-menu-widget.js.map +1 -1
  7. package/dist/dist.dev.js +3114 -869
  8. package/dist/fullscreen-widget.js +1 -1
  9. package/dist/fullscreen-widget.js.map +1 -1
  10. package/dist/geocoder-widget.d.ts +2 -4
  11. package/dist/geocoder-widget.d.ts.map +1 -1
  12. package/dist/geocoder-widget.js +16 -20
  13. package/dist/geocoder-widget.js.map +1 -1
  14. package/dist/gimbal-widget.d.ts +0 -3
  15. package/dist/gimbal-widget.d.ts.map +1 -1
  16. package/dist/gimbal-widget.js +4 -22
  17. package/dist/gimbal-widget.js.map +1 -1
  18. package/dist/icon-widget.d.ts +28 -0
  19. package/dist/icon-widget.d.ts.map +1 -0
  20. package/dist/icon-widget.js +35 -0
  21. package/dist/icon-widget.js.map +1 -0
  22. package/dist/index.cjs +1271 -561
  23. package/dist/index.cjs.map +4 -4
  24. package/dist/index.d.ts +16 -12
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +11 -10
  27. package/dist/index.js.map +1 -1
  28. package/dist/info-widget.d.ts +39 -17
  29. package/dist/info-widget.d.ts.map +1 -1
  30. package/dist/info-widget.js +46 -130
  31. package/dist/info-widget.js.map +1 -1
  32. package/dist/lib/components/dropdown-menu.d.ts +12 -5
  33. package/dist/lib/components/dropdown-menu.d.ts.map +1 -1
  34. package/dist/lib/components/dropdown-menu.js +20 -11
  35. package/dist/lib/components/dropdown-menu.js.map +1 -1
  36. package/dist/lib/components/icon-button.d.ts +3 -0
  37. package/dist/lib/components/icon-button.d.ts.map +1 -1
  38. package/dist/lib/components/icon-button.js +10 -2
  39. package/dist/lib/components/icon-button.js.map +1 -1
  40. package/dist/lib/components/popover.d.ts +30 -0
  41. package/dist/lib/components/popover.d.ts.map +1 -0
  42. package/dist/lib/components/popover.js +93 -0
  43. package/dist/lib/components/popover.js.map +1 -0
  44. package/dist/lib/components/range-input.d.ts +26 -0
  45. package/dist/lib/components/range-input.d.ts.map +1 -0
  46. package/dist/lib/components/range-input.js +261 -0
  47. package/dist/lib/components/range-input.js.map +1 -0
  48. package/dist/lib/components/user-content.d.ts +8 -0
  49. package/dist/lib/components/user-content.d.ts.map +1 -0
  50. package/dist/lib/components/user-content.js +15 -0
  51. package/dist/lib/components/user-content.js.map +1 -0
  52. package/dist/lib/data-url.d.ts +5 -0
  53. package/dist/lib/data-url.d.ts.map +1 -0
  54. package/dist/lib/data-url.js +7 -0
  55. package/dist/lib/data-url.js.map +1 -0
  56. package/dist/popup-widget.d.ts +64 -0
  57. package/dist/popup-widget.d.ts.map +1 -0
  58. package/dist/popup-widget.js +76 -0
  59. package/dist/popup-widget.js.map +1 -0
  60. package/dist/reset-view-widget.d.ts +1 -1
  61. package/dist/reset-view-widget.d.ts.map +1 -1
  62. package/dist/reset-view-widget.js +12 -11
  63. package/dist/reset-view-widget.js.map +1 -1
  64. package/dist/scrollbar-widget.d.ts +68 -0
  65. package/dist/scrollbar-widget.d.ts.map +1 -0
  66. package/dist/scrollbar-widget.js +181 -0
  67. package/dist/scrollbar-widget.js.map +1 -0
  68. package/dist/selector-widget.d.ts +44 -0
  69. package/dist/selector-widget.d.ts.map +1 -0
  70. package/dist/selector-widget.js +64 -0
  71. package/dist/selector-widget.js.map +1 -0
  72. package/dist/splitter-widget.d.ts +52 -11
  73. package/dist/splitter-widget.d.ts.map +1 -1
  74. package/dist/splitter-widget.js +177 -76
  75. package/dist/splitter-widget.js.map +1 -1
  76. package/dist/stats-widget.d.ts +6 -1
  77. package/dist/stats-widget.d.ts.map +1 -1
  78. package/dist/stats-widget.js +39 -10
  79. package/dist/stats-widget.js.map +1 -1
  80. package/dist/stylesheet.css +291 -39
  81. package/dist/theme-widget.d.ts.map +1 -1
  82. package/dist/theme-widget.js +7 -5
  83. package/dist/theme-widget.js.map +1 -1
  84. package/dist/themes.d.ts +30 -0
  85. package/dist/themes.d.ts.map +1 -1
  86. package/dist/themes.js +28 -4
  87. package/dist/themes.js.map +1 -1
  88. package/dist/timeline-widget.d.ts +25 -6
  89. package/dist/timeline-widget.d.ts.map +1 -1
  90. package/dist/timeline-widget.js +51 -18
  91. package/dist/timeline-widget.js.map +1 -1
  92. package/dist/toggle-widget.d.ts +38 -0
  93. package/dist/toggle-widget.d.ts.map +1 -0
  94. package/dist/toggle-widget.js +47 -0
  95. package/dist/toggle-widget.js.map +1 -0
  96. package/dist/zoom-widget.d.ts +2 -8
  97. package/dist/zoom-widget.d.ts.map +1 -1
  98. package/dist/zoom-widget.js +23 -18
  99. package/dist/zoom-widget.js.map +1 -1
  100. package/dist.min.js +2 -2
  101. package/package.json +4 -3
  102. package/src/compass-widget.tsx +5 -5
  103. package/src/context-menu-widget.tsx +88 -78
  104. package/src/fullscreen-widget.tsx +1 -1
  105. package/src/geocoder-widget.tsx +17 -24
  106. package/src/gimbal-widget.tsx +4 -26
  107. package/src/icon-widget.tsx +69 -0
  108. package/src/index.ts +22 -15
  109. package/src/info-widget.tsx +100 -157
  110. package/src/lib/components/dropdown-menu.tsx +58 -29
  111. package/src/lib/components/icon-button.tsx +15 -3
  112. package/src/lib/components/popover.tsx +167 -0
  113. package/src/lib/components/range-input.tsx +432 -0
  114. package/src/lib/components/user-content.tsx +30 -0
  115. package/src/lib/data-url.ts +5 -0
  116. package/src/popup-widget.tsx +170 -0
  117. package/src/reset-view-widget.tsx +12 -11
  118. package/src/scrollbar-widget.tsx +288 -0
  119. package/src/selector-widget.tsx +111 -0
  120. package/src/splitter-widget.tsx +281 -96
  121. package/src/stats-widget.tsx +59 -12
  122. package/src/stylesheet.css +291 -39
  123. package/src/theme-widget.tsx +7 -5
  124. package/src/themes.ts +35 -4
  125. package/src/timeline-widget.tsx +103 -33
  126. package/src/toggle-widget.tsx +101 -0
  127. package/src/zoom-widget.tsx +25 -21
  128. package/dist/fps-widget.d.ts +0 -28
  129. package/dist/fps-widget.d.ts.map +0 -1
  130. package/dist/fps-widget.js +0 -51
  131. package/dist/fps-widget.js.map +0 -1
  132. package/dist/lib/components/grouped-icon-button.d.ts +0 -10
  133. package/dist/lib/components/grouped-icon-button.d.ts.map +0 -1
  134. package/dist/lib/components/grouped-icon-button.js +0 -7
  135. package/dist/lib/components/grouped-icon-button.js.map +0 -1
  136. package/dist/lib/components/icon-menu.d.ts +0 -16
  137. package/dist/lib/components/icon-menu.d.ts.map +0 -1
  138. package/dist/lib/components/icon-menu.js +0 -34
  139. package/dist/lib/components/icon-menu.js.map +0 -1
  140. package/dist/lib/components/simple-menu.d.ts +0 -16
  141. package/dist/lib/components/simple-menu.d.ts.map +0 -1
  142. package/dist/lib/components/simple-menu.js +0 -30
  143. package/dist/lib/components/simple-menu.js.map +0 -1
  144. package/dist/view-selector-widget.d.ts +0 -35
  145. package/dist/view-selector-widget.d.ts.map +0 -1
  146. package/dist/view-selector-widget.js +0 -63
  147. package/dist/view-selector-widget.js.map +0 -1
  148. package/src/fps-widget.tsx +0 -77
  149. package/src/lib/components/grouped-icon-button.tsx +0 -27
  150. package/src/lib/components/icon-menu.tsx +0 -71
  151. package/src/lib/components/simple-menu.tsx +0 -52
  152. package/src/view-selector-widget.tsx +0 -151
@@ -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":"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"}
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,EAAM,MAAM,EAAC,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAC,MAAM,cAAc,CAAC;AACzD,OAAO,EACL,MAAM,EACN,UAAU,IAAI,SAAS,EAIxB,MAAM,eAAe,CAAC;AAwCvB,SAAS,eAAe,CAAC,IAAgB;IACvC,MAAM,WAAW,GAAwB,EAAE,CAAC;IAC5C,MAAM,YAAY,GAAG,CAAC,CAAoB,EAAmB,EAAE,CAAC,OAAO,IAAI,CAAC,CAAC;IAC7E,SAAS,uBAAuB,CAAC,CAAa;QAC5C,MAAM,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC;QAC9B,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC;QACpC,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,IAAI,GAAG,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC5E,MAAM,OAAO,GAAsB;YACjC,EAAE;YACF,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,KAAK,EAAE,CAAC,CAAC,KAA2E;YACpF,KAAK;YACL,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,IAAI;YAC5B,QAAQ;YACR,QAAQ;YACR,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;YACJ,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;SACV,CAAC;QACF,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1B,OAAO,CAAC,KAAK,GAAG;YACd,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YAC3E,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;SAC5E,CAAC;QACF,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAC9B,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,aAAa,CAAC,IAAuB;IAC5C,MAAM,KAAK,GAAW,EAAE,CAAC;IACzB,SAAS,kBAAkB,CACzB,CAAoB,EACpB,CAAS,EACT,CAAS,EACT,KAAa,EACb,MAAc;QAEd,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACR,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACR,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;QAChB,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;QAElB,MAAM,OAAO,GAAG,CAAC,CAAC;QAClB,MAAM,OAAO,GAAG,CAAC,CAAC;QAClB,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,YAAY,GAAG,MAAM,CAAC;QAC1B,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,YAAY,GAAG,MAAM,CAAC;QAE1B,IAAI,CAAC,CAAC,WAAW,KAAK,YAAY,EAAE,CAAC;YACnC,WAAW,GAAG,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;YAC9B,OAAO,GAAG,CAAC,GAAG,WAAW,CAAC;YAC1B,WAAW,GAAG,KAAK,GAAG,WAAW,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,YAAY,GAAG,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC;YAChC,OAAO,GAAG,CAAC,GAAG,YAAY,CAAC;YAC3B,YAAY,GAAG,MAAM,GAAG,YAAY,CAAC;QACvC,CAAC;QAED,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;QAC/B,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YACrB,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,KAAK,CAAC;gBACV,CAAC,EAAE,GAAG,OAAO,GAAG;gBAChB,CAAC,EAAE,GAAG,OAAO,GAAG;gBAChB,KAAK,EAAE,GAAG,WAAW,GAAG;gBACxB,MAAM,EAAE,GAAG,YAAY,GAAG;aAC3B,CAAC,CACH,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YACrB,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,KAAK,CAAC;gBACV,CAAC,EAAE,GAAG,OAAO,GAAG;gBAChB,CAAC,EAAE,GAAG,OAAO,GAAG;gBAChB,KAAK,EAAE,GAAG,WAAW,GAAG;gBACxB,MAAM,EAAE,GAAG,YAAY,GAAG;aAC3B,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IAED,kBAAkB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACzC,OAAO,KAAK,CAAC;AACf,CAAC;AAcD;;;;GAIG;AACH,MAAM,OAAO,cAAe,SAAQ,MAAmC;IAmBrE,YAAY,KAA0B;QACpC,KAAK,CAAC,KAAK,CAAC,CAAC;QAVf,cAAS,GAAG,sBAAsB,CAAC;QACnC,cAAS,GAAG,MAAe,CAAC;QAM5B,gBAAW,GAAG,IAAI,CAAC;QAIjB,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC5D,CAAC;IAED,QAAQ,CAAC,KAAmC;QAC1C,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChF,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,GAAG,SAAU,CAAC;QAC1B,CAAC;QACD,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;IAED,QAAQ;QACN,sBAAsB;QACtB,KAAK,CAAC,UAAU,EAAE,CAAC;IACrB,CAAC;IAED,mDAAmD;IACnD,0EAA0E;IAC1E,qEAAqE;IACrE,UAAU;QACR,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,uCAAuC;YACvC,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,kGAAkG;YAClG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1C,CAAC;QACD,wFAAwF;QACxF,8DAA8D;QAC9D,qBAAqB,CAAC,GAAG,EAAE;YACzB,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,QAAQ;QACd,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YACxC,MAAM,mBAAmB;YACvB,eAAe;YACf,SAAS;gBACT,mBAAmB;gBACnB,SAAS,KAAK,IAAI,CAAC,SAAS,CAAC;YAE/B,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC1D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;gBAC5B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAC,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;IACH,CAAC;IAEO,QAAQ,CAAC,QAAgB,EAAE,MAAyB;QAC1D,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC;QACxB,kCAAkC;QAClC,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QAChD,kGAAkG;QAClG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IAED,YAAY,CAAC,WAAwB;QACnC,MAAM,CACJ,4BACG,IAAI,CAAC,WAAW,CAAC,GAAG,CACnB,MAAM,CAAC,EAAE,CACP,MAAM,CAAC,QAAQ,IAAI,CACjB,KAAC,QAAQ,OACH,MAAM,EACV,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,EACrD,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAC3C,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,GACzC,CACH,CACJ,GACA,EACH,WAAW,CACZ,CAAC;IACJ,CAAC;;AA/FM,2BAAY,GAAkC;IACnD,GAAG,MAAM,CAAC,YAAY;IACtB,EAAE,EAAE,iBAAiB;IACrB,UAAU,EAAE,SAAU;IACtB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;IAClB,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC;IACrB,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;CACpB,AAPkB,CAOjB;AA2FJ;;;;GAIG;AACH,SAAS,QAAQ,CAAC,EAChB,WAAW,EACX,CAAC,EACD,CAAC,EACD,KAAK,EACL,MAAM,EACN,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,SAAS,EAaV;IACC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,YAAY,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAElD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,cAAc,GAAG,CAAC,KAAmB,EAAE,EAAE;YAC7C,IAAI,CAAC,YAAY,CAAC,OAAO;gBAAE,OAAO;YAClC,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;YAC1D,IAAI,QAAgB,CAAC;YACrB,IAAI,WAAW,KAAK,YAAY,EAAE,CAAC;gBACjC,QAAQ,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;YACtD,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;YACtD,CAAC;YACD,oCAAoC;YACpC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;YAC5D,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC;QACvB,CAAC,CAAC;QAEF,MAAM,aAAa,GAAG,GAAG,EAAE;YACzB,SAAS,EAAE,EAAE,CAAC;YACd,WAAW,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CAAC;QAEF,QAAQ,CAAC,gBAAgB,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;QACzD,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QACtD,QAAQ,CAAC,gBAAgB,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;QAEzD,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,mBAAmB,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;YAC5D,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;YACzD,QAAQ,CAAC,mBAAmB,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;QAC9D,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,MAAM,eAAe,GAAG,CAAC,KAAmB,EAAE,EAAE;QAC9C,WAAW,CAAC,IAAI,CAAC,CAAC;QAClB,WAAW,EAAE,EAAE,CAAC;QAChB,KAAK,CAAC,cAAc,EAAE,CAAC;IACzB,CAAC,CAAC;IAEF,iFAAiF;IACjF,MAAM,aAAa,GACjB,WAAW,KAAK,YAAY,CAAC,CAAC,CAAC,EAAC,IAAI,EAAE,GAAG,KAAK,GAAG,GAAG,GAAG,EAAC,CAAC,CAAC,CAAC,EAAC,GAAG,EAAE,GAAG,KAAK,GAAG,GAAG,GAAG,EAAC,CAAC;IAEtF,qDAAqD;IACrD,MAAM,cAAc,GAAsB;QACxC,QAAQ,EAAE,UAAU;QACpB,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,IAAI,EAAE,GAAG,CAAC,GAAG;QACb,KAAK,EAAE,GAAG,KAAK,GAAG;QAClB,MAAM,EAAE,GAAG,MAAM,GAAG;KACrB,CAAC;IAEF,OAAO,CACL,cAAK,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,YAC3C,cACE,SAAS,EAAE,4DAA4D,WAAW,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,EAChH,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,eAAe,GAC9B,GACE,CACP,CAAC;AACJ,CAAC"}
@@ -8,6 +8,10 @@ export type StatsWidgetProps = WidgetProps & {
8
8
  viewId?: string | null;
9
9
  /** Type of stats to display. */
10
10
  type?: 'deck' | 'luma' | 'device' | 'custom';
11
+ /** Expand the stats UI by default.
12
+ * @default false
13
+ */
14
+ defaultIsExpanded?: boolean;
11
15
  /** Stats object to visualize. */
12
16
  stats?: Stats;
13
17
  /** Title shown in the header of the pop-up. Defaults to stats.id. */
@@ -30,11 +34,12 @@ export declare class StatsWidget extends Widget<StatsWidgetProps> {
30
34
  collapsed: boolean;
31
35
  constructor(props?: StatsWidgetProps);
32
36
  setProps(props: Partial<StatsWidgetProps>): void;
33
- onAdd(): void;
37
+ onRemove(): void;
34
38
  onRenderHTML(rootElement: HTMLElement): void;
35
39
  onRedraw(): void;
36
40
  protected _getStats(): Stats | [key: string, value: number][];
37
41
  protected _toggleCollapsed: () => void;
42
+ protected _getFps: () => number;
38
43
  protected _getLines(stat: Stat | [key: string, value: number]): string;
39
44
  }
40
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;AAgBjD,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,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,CAW7C;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;IAOxC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAgBhD,KAAK,IAAI,IAAI;IAIb,YAAY,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAqC5C,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,8 +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
- const RIGHT_ARROW = '\u25b6';
9
- const DOWN_ARROW = '\u2b07';
8
+ import { useEffect, useState } from 'preact/hooks';
9
+ import { IconButton } from "./lib/components/icon-button.js";
10
10
  const DEFAULT_COUNT_FORMATTER = (stat) => `${stat.name}: ${stat.count}`;
11
11
  function formatTime(time) {
12
12
  return time < 1000 ? `${time.toFixed(2)}ms` : `${(time / 1000).toFixed(2)}s`;
@@ -34,8 +34,13 @@ export class StatsWidget extends Widget {
34
34
  this.collapsed = !this.collapsed;
35
35
  this.updateHTML();
36
36
  };
37
+ this._getFps = () => {
38
+ // @ts-expect-error metrics is protected
39
+ return Math.round(this.deck?.metrics.fps ?? 0);
40
+ };
37
41
  this._formatters = { ...DEFAULT_FORMATTERS };
38
42
  this._resetOnUpdate = { ...this.props.resetOnUpdate };
43
+ this.collapsed = !props.defaultIsExpanded;
39
44
  this.setProps(props);
40
45
  }
41
46
  setProps(props) {
@@ -53,15 +58,22 @@ export class StatsWidget extends Widget {
53
58
  }
54
59
  super.setProps(props);
55
60
  }
56
- onAdd() {
57
- this.updateHTML();
61
+ onRemove() {
62
+ if (this.rootElement) {
63
+ // Make sure all preact hooks are finalized
64
+ render(null, this.rootElement);
65
+ }
58
66
  }
59
67
  onRenderHTML(rootElement) {
60
- const stats = this._getStats();
61
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();
62
74
  const title = this.props.title || ('id' in stats ? stats.id : null) || 'Stats';
63
75
  const items = [];
64
- if (!collapsed && stats) {
76
+ if (stats) {
65
77
  stats.forEach(stat => {
66
78
  const lines = this._getLines(stat).split('\n');
67
79
  if (this._resetOnUpdate && this._resetOnUpdate[stat.name]) {
@@ -72,12 +84,14 @@ export class StatsWidget extends Widget {
72
84
  });
73
85
  });
74
86
  }
75
- 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: [collapsed ? RIGHT_ARROW : DOWN_ARROW, " ", title] }), !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);
76
88
  }
77
89
  onRedraw() {
78
- const framesPerUpdate = Math.max(1, this.props.framesPerUpdate || 1);
79
- if (this._counter++ % framesPerUpdate === 0) {
80
- 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
+ }
81
95
  }
82
96
  }
83
97
  _getStats() {
@@ -118,6 +132,7 @@ StatsWidget.defaultProps = {
118
132
  type: 'deck',
119
133
  placement: 'top-left',
120
134
  viewId: null,
135
+ defaultIsExpanded: false,
121
136
  stats: undefined,
122
137
  title: 'Stats',
123
138
  framesPerUpdate: 1,
@@ -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":"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"}
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;AAC9B,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAC,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAC,UAAU,EAAC,wCAAqC;AAExD,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;QA2GhB,qBAAgB,GAAG,GAAS,EAAE;YACtC,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;YACjC,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC,CAAC;QAEQ,YAAO,GAAG,GAAW,EAAE;YAC/B,wCAAwC;YACxC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QACjD,CAAC,CAAC;QA/GA,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,QAAQ;QACN,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,2CAA2C;YAC3C,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED,YAAY,CAAC,WAAwB;QACnC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,CAAC,KAAC,OAAO,IAAC,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,gBAAgB,GAAI,EAAE,WAAW,CAAC,CAAC;YACvF,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAC/B,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,KAAK,EAAE,CAAC;YACV,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,EAAC,gCAAgC,GAAG,GAC5C,IACL,EACN,cAAK,SAAS,EAAC,2BAA2B,YAAE,KAAK,GAAO,IACpD,EACN,WAAW,CACZ,CAAC;IACJ,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC;YACrE,IAAI,IAAI,CAAC,QAAQ,EAAE,GAAG,eAAe,KAAK,CAAC,EAAE,CAAC;gBAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,CAAC;QACH,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;IAYS,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;;AAvJM,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;AA8IJ,SAAS,OAAO,CAAC,EAAC,MAAM,EAAE,OAAO,EAA8C;IAC7E,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,GAAG,EAAE;YACpB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YACjB,KAAK,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC,CAAC;QACF,IAAI,KAAK,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAC5C,OAAO,GAAG,EAAE;YACV,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,OAAO,CACL,KAAC,UAAU,IAAC,OAAO,EAAE,OAAO,YAC1B,eAAK,SAAS,EAAC,MAAM,oBAEnB,cAAM,EACL,GAAG,IACA,GACK,CACd,CAAC;AACJ,CAAC"}