vim-web 0.3.44-dev.2 → 0.3.44-dev.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/style.css +38 -1
- package/dist/types/core-viewers/ultra/index.d.ts +1 -0
- package/dist/types/core-viewers/ultra/viewer/marshal.d.ts +0 -1
- package/dist/types/core-viewers/ultra/viewer/rpcClient.d.ts +1 -0
- package/dist/types/core-viewers/ultra/viewer/rpcSafeClient.d.ts +1 -0
- package/dist/types/core-viewers/ultra/viewer/sectionBox.d.ts +2 -5
- package/dist/types/core-viewers/ultra/viewer/selection.d.ts +2 -0
- package/dist/types/core-viewers/ultra/viewer/viewer.d.ts +2 -0
- package/dist/types/core-viewers/ultra/viewer/vimCollection.d.ts +4 -0
- package/dist/types/core-viewers/webgl/utils/threeUtils.d.ts +3 -0
- package/dist/types/core-viewers/webgl/viewer/gizmos/gizmos.d.ts +1 -1
- package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBox.d.ts +1 -1
- package/dist/types/react-viewers/controlbar/controlBar.d.ts +5 -44
- package/dist/types/react-viewers/controlbar/controlBarButton.d.ts +3 -1
- package/dist/types/react-viewers/controlbar/controlBarSection.d.ts +2 -1
- package/dist/types/react-viewers/panels/icons.d.ts +6 -0
- package/dist/types/react-viewers/panels/sectionBoxPanel.d.ts +4 -0
- package/dist/types/react-viewers/state/controlBarState.d.ts +66 -0
- package/dist/types/react-viewers/state/sectionBoxState.d.ts +33 -0
- package/dist/types/react-viewers/ultra/ultraControlBarState.d.ts +6 -0
- package/dist/types/react-viewers/ultra/ultraModal.d.ts +4 -0
- package/dist/types/react-viewers/ultra/ultraSectionBoxState.d.ts +3 -0
- package/dist/types/react-viewers/webgl/index.d.ts +0 -1
- package/dist/types/react-viewers/webgl/webglSectionBoxState.d.ts +3 -0
- package/dist/vim-web.iife.js +679 -282
- package/dist/vim-web.iife.js.map +1 -1
- package/dist/vim-web.js +680 -283
- package/dist/vim-web.js.map +1 -1
- package/package.json +1 -1
- package/dist/types/react-viewers/controlbar/controlBarCommands.d.ts +0 -4
- package/dist/types/react-viewers/controlbar/sectionBoxState.d.ts +0 -15
- /package/dist/types/react-viewers/{controlbar → panels}/restOfScreen.d.ts +0 -0
- /package/dist/types/react-viewers/{controlbar → state}/fullScreenState.d.ts +0 -0
- /package/dist/types/react-viewers/{controlbar → state}/measureState.d.ts +0 -0
- /package/dist/types/react-viewers/{controlbar → state}/pointerState.d.ts +0 -0
package/dist/vim-web.iife.js
CHANGED
|
@@ -52253,7 +52253,7 @@ void main() {
|
|
|
52253
52253
|
}
|
|
52254
52254
|
}
|
|
52255
52255
|
onIdleAction(hit) {
|
|
52256
|
-
if (!this._viewer.gizmos.
|
|
52256
|
+
if (!this._viewer.gizmos.sectionBox.interactive) {
|
|
52257
52257
|
this._viewer.selection.focus(hit == null ? void 0 : hit.object);
|
|
52258
52258
|
}
|
|
52259
52259
|
}
|
|
@@ -54811,12 +54811,12 @@ void main() {
|
|
|
54811
54811
|
const xz = this.screenDist(this._lineX.position, this._lineZ.position);
|
|
54812
54812
|
const yz = this.screenDist(this._lineY.position, this._lineZ.position);
|
|
54813
54813
|
let conflicts = 0;
|
|
54814
|
-
if (lx !== void 0 && lx < 0.
|
|
54815
|
-
if (ly !== void 0 && ly < 0.
|
|
54816
|
-
if (lz !== void 0 && lz < 0.
|
|
54817
|
-
if (xy !== void 0 && xy < 0.
|
|
54818
|
-
if (xz !== void 0 && xz < 0.
|
|
54819
|
-
if (yz !== void 0 && yz < 0.
|
|
54814
|
+
if (lx !== void 0 && lx < 0.3) conflicts++;
|
|
54815
|
+
if (ly !== void 0 && ly < 0.3) conflicts++;
|
|
54816
|
+
if (lz !== void 0 && lz < 0.3) conflicts++;
|
|
54817
|
+
if (xy !== void 0 && xy < 0.3) conflicts++;
|
|
54818
|
+
if (xz !== void 0 && xz < 0.3) conflicts++;
|
|
54819
|
+
if (yz !== void 0 && yz < 0.3) conflicts++;
|
|
54820
54820
|
const collapse2 = conflicts > 1;
|
|
54821
54821
|
this._label.visible = collapse2;
|
|
54822
54822
|
this._line.label.visible = !collapse2;
|
|
@@ -54846,6 +54846,7 @@ void main() {
|
|
|
54846
54846
|
this._line.mesh.visible = false;
|
|
54847
54847
|
this._line.label.visible = false;
|
|
54848
54848
|
}
|
|
54849
|
+
this._label.visible = false;
|
|
54849
54850
|
this._viewer.renderer.needsUpdate = true;
|
|
54850
54851
|
}
|
|
54851
54852
|
/**
|
|
@@ -54895,7 +54896,9 @@ void main() {
|
|
|
54895
54896
|
* Disposes all resources.
|
|
54896
54897
|
*/
|
|
54897
54898
|
dispose() {
|
|
54899
|
+
console.log("dispose");
|
|
54898
54900
|
if (this._animId !== void 0) cancelAnimationFrame(this._animId);
|
|
54901
|
+
this._html.div.remove();
|
|
54899
54902
|
this._viewer.renderer.remove(this._group);
|
|
54900
54903
|
this._startMarker.dispose();
|
|
54901
54904
|
this._endMarker.dispose();
|
|
@@ -55480,7 +55483,7 @@ void main() {
|
|
|
55480
55483
|
trackCamera(camera2) {
|
|
55481
55484
|
const rescale = () => {
|
|
55482
55485
|
const size = camera2.frustrumSizeAt(this.position);
|
|
55483
|
-
this.scale.set(size.x *
|
|
55486
|
+
this.scale.set(size.x * 3e-3, size.x * 3e-3, size.x * 3e-3);
|
|
55484
55487
|
};
|
|
55485
55488
|
this._camSub = camera2.onMoved.subscribe(() => rescale());
|
|
55486
55489
|
rescale();
|
|
@@ -55644,6 +55647,9 @@ void main() {
|
|
|
55644
55647
|
this.update();
|
|
55645
55648
|
};
|
|
55646
55649
|
this._inputs.onBoxConfirm = (box) => this._onBoxConfirm.dispatch(box);
|
|
55650
|
+
viewer.renderer.onBoxUpdated.subscribe(() => {
|
|
55651
|
+
this.fitBox(viewer.renderer.getBoundingBox());
|
|
55652
|
+
});
|
|
55647
55653
|
this.clip = false;
|
|
55648
55654
|
this.visible = false;
|
|
55649
55655
|
this.interactive = false;
|
|
@@ -55744,6 +55750,7 @@ void main() {
|
|
|
55744
55750
|
set visible(value) {
|
|
55745
55751
|
if (value === this._visible) return;
|
|
55746
55752
|
this._gizmos.visible = value;
|
|
55753
|
+
this._visible = value;
|
|
55747
55754
|
if (value) {
|
|
55748
55755
|
this.update();
|
|
55749
55756
|
}
|
|
@@ -55760,11 +55767,10 @@ void main() {
|
|
|
55760
55767
|
* @param box - The bounding box to match (required).
|
|
55761
55768
|
* @param padding - The scalar amount by which to expand the bounding box. Default is `1`.
|
|
55762
55769
|
*/
|
|
55763
|
-
fitBox(box
|
|
55770
|
+
fitBox(box) {
|
|
55764
55771
|
if (!box) return;
|
|
55765
|
-
|
|
55766
|
-
this.
|
|
55767
|
-
this.renderer.section.fitBox(b);
|
|
55772
|
+
this._gizmos.fitBox(box);
|
|
55773
|
+
this.renderer.section.fitBox(box);
|
|
55768
55774
|
this._onBoxConfirm.dispatch(this.box);
|
|
55769
55775
|
this.renderer.needsUpdate = true;
|
|
55770
55776
|
}
|
|
@@ -55774,7 +55780,7 @@ void main() {
|
|
|
55774
55780
|
* Call this if the renderer's section box is changed by code outside this class.
|
|
55775
55781
|
*/
|
|
55776
55782
|
update() {
|
|
55777
|
-
this.fitBox(this.section.box
|
|
55783
|
+
this.fitBox(this.section.box);
|
|
55778
55784
|
this.renderer.needsUpdate = true;
|
|
55779
55785
|
}
|
|
55780
55786
|
/**
|
|
@@ -55796,7 +55802,7 @@ void main() {
|
|
|
55796
55802
|
/**
|
|
55797
55803
|
* The section box gizmo.
|
|
55798
55804
|
*/
|
|
55799
|
-
__publicField(this, "
|
|
55805
|
+
__publicField(this, "sectionBox");
|
|
55800
55806
|
/**
|
|
55801
55807
|
* The loading indicator gizmo.
|
|
55802
55808
|
*/
|
|
@@ -55820,7 +55826,7 @@ void main() {
|
|
|
55820
55826
|
var _a2;
|
|
55821
55827
|
this.viewer = viewer;
|
|
55822
55828
|
this._measure = new Measure(viewer);
|
|
55823
|
-
this.
|
|
55829
|
+
this.sectionBox = new SectionBox$1(viewer);
|
|
55824
55830
|
this.loading = new GizmoLoading(viewer);
|
|
55825
55831
|
this.orbit = new GizmoOrbit(
|
|
55826
55832
|
viewer.renderer,
|
|
@@ -55849,7 +55855,7 @@ void main() {
|
|
|
55849
55855
|
var _a2;
|
|
55850
55856
|
(_a2 = this.viewer.viewport.canvas.parentElement) == null ? void 0 : _a2.removeChild(this.axes.canvas);
|
|
55851
55857
|
this._measure.clear();
|
|
55852
|
-
this.
|
|
55858
|
+
this.sectionBox.dispose();
|
|
55853
55859
|
this.loading.dispose();
|
|
55854
55860
|
this.orbit.dispose();
|
|
55855
55861
|
this.rectangle.dispose();
|
|
@@ -58009,7 +58015,6 @@ void main() {
|
|
|
58009
58015
|
}
|
|
58010
58016
|
// -------------------- SectionBox -------------------
|
|
58011
58017
|
writeSectionBoxState(data2) {
|
|
58012
|
-
this.writeBoolean(data2.enabled);
|
|
58013
58018
|
this.writeBoolean(data2.visible);
|
|
58014
58019
|
this.writeBoolean(data2.interactible);
|
|
58015
58020
|
this.writeBoolean(data2.clip);
|
|
@@ -58165,13 +58170,11 @@ void main() {
|
|
|
58165
58170
|
return new Segment(position, target);
|
|
58166
58171
|
}
|
|
58167
58172
|
readSectionBoxState() {
|
|
58168
|
-
const enabled = this.readBoolean();
|
|
58169
58173
|
const visible2 = this.readBoolean();
|
|
58170
58174
|
const interactible = this.readBoolean();
|
|
58171
58175
|
const clip = this.readBoolean();
|
|
58172
58176
|
const box = this.readBox3();
|
|
58173
58177
|
return {
|
|
58174
|
-
enabled,
|
|
58175
58178
|
visible: visible2,
|
|
58176
58179
|
interactible,
|
|
58177
58180
|
clip,
|
|
@@ -58290,6 +58293,12 @@ void main() {
|
|
|
58290
58293
|
marshal.writeUInt(componentHandle);
|
|
58291
58294
|
this._socket.sendRPC(marshal);
|
|
58292
58295
|
}
|
|
58296
|
+
RPCEnableSectionBox(value) {
|
|
58297
|
+
const marshal = new Marshal();
|
|
58298
|
+
marshal.writeString("RPCEnableSectionBox");
|
|
58299
|
+
marshal.writeBoolean(value);
|
|
58300
|
+
this._socket.sendRPC(marshal);
|
|
58301
|
+
}
|
|
58293
58302
|
async RPCFrameAll(blendTime) {
|
|
58294
58303
|
const marshal = new Marshal();
|
|
58295
58304
|
marshal.writeString("RPCFrameAll");
|
|
@@ -59133,6 +59142,9 @@ void main() {
|
|
|
59133
59142
|
* SECTION BOX METHODS
|
|
59134
59143
|
* Methods for controlling section box visibility and position.
|
|
59135
59144
|
******************************************************************************/
|
|
59145
|
+
RPCEnableSectionBox(enable) {
|
|
59146
|
+
this.rpc.RPCEnableSectionBox(enable);
|
|
59147
|
+
}
|
|
59136
59148
|
RPCSetSectionBox(state) {
|
|
59137
59149
|
this.rpc.RPCSetSectionBox(state);
|
|
59138
59150
|
}
|
|
@@ -61283,10 +61295,14 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
61283
61295
|
__publicField(this, "_rpc");
|
|
61284
61296
|
__publicField(this, "_vims");
|
|
61285
61297
|
__publicField(this, "_selectedNodes");
|
|
61298
|
+
__publicField(this, "_onValueChanged", new distExports$1.SignalDispatcher());
|
|
61286
61299
|
this._rpc = rpc;
|
|
61287
61300
|
this._vims = vims;
|
|
61288
61301
|
this._selectedNodes = /* @__PURE__ */ new Map();
|
|
61289
61302
|
}
|
|
61303
|
+
get onValueChanged() {
|
|
61304
|
+
return this._onValueChanged.asEvent();
|
|
61305
|
+
}
|
|
61290
61306
|
/**
|
|
61291
61307
|
* Gets the total number of selected nodes across all VIMs.
|
|
61292
61308
|
* @returns The total count of selected nodes.
|
|
@@ -61355,12 +61371,17 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
61355
61371
|
nodeSet = /* @__PURE__ */ new Set();
|
|
61356
61372
|
this._selectedNodes.set(vim, nodeSet);
|
|
61357
61373
|
}
|
|
61374
|
+
let changed = false;
|
|
61358
61375
|
nodes.forEach((n) => {
|
|
61359
61376
|
if (!nodeSet.has(n)) {
|
|
61360
61377
|
nodeSet.add(n);
|
|
61361
61378
|
vim.highlight([n]);
|
|
61379
|
+
changed = true;
|
|
61362
61380
|
}
|
|
61363
61381
|
});
|
|
61382
|
+
if (changed) {
|
|
61383
|
+
this._onValueChanged.dispatch();
|
|
61384
|
+
}
|
|
61364
61385
|
}
|
|
61365
61386
|
/**
|
|
61366
61387
|
* Removes the specified node(s) from the current selection.
|
|
@@ -61372,27 +61393,37 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
61372
61393
|
const nodeSet = this._selectedNodes.get(vim);
|
|
61373
61394
|
if (!nodeSet) return;
|
|
61374
61395
|
const nodes = Array.isArray(node) ? node : [node];
|
|
61396
|
+
let changed = false;
|
|
61375
61397
|
nodes.forEach((n) => {
|
|
61376
61398
|
if (nodeSet.has(n)) {
|
|
61377
61399
|
nodeSet.delete(n);
|
|
61378
61400
|
vim.removeHighlight([n], "visible");
|
|
61401
|
+
changed = true;
|
|
61379
61402
|
}
|
|
61380
61403
|
});
|
|
61381
61404
|
if (nodeSet.size === 0) {
|
|
61382
61405
|
this._selectedNodes.delete(vim);
|
|
61383
61406
|
}
|
|
61407
|
+
if (changed) {
|
|
61408
|
+
this._onValueChanged.dispatch();
|
|
61409
|
+
}
|
|
61384
61410
|
}
|
|
61385
61411
|
/**
|
|
61386
61412
|
* Clears all selections across all VIMs or for a specific VIM.
|
|
61387
61413
|
* @param vim - Optional. If provided, only clears selections for the specified VIM.
|
|
61388
61414
|
*/
|
|
61389
61415
|
clear(vim) {
|
|
61416
|
+
let changed = false;
|
|
61390
61417
|
this._selectedNodes.forEach((nodes, v) => {
|
|
61391
61418
|
if (vim === void 0 || v === vim) {
|
|
61392
61419
|
v.removeHighlight(Array.from(nodes), "visible");
|
|
61420
|
+
changed = true;
|
|
61393
61421
|
}
|
|
61394
61422
|
});
|
|
61395
61423
|
this._selectedNodes.clear();
|
|
61424
|
+
if (changed) {
|
|
61425
|
+
this._onValueChanged.dispatch();
|
|
61426
|
+
}
|
|
61396
61427
|
}
|
|
61397
61428
|
/**
|
|
61398
61429
|
* Calculates the bounding box encompassing all selected nodes.
|
|
@@ -61421,8 +61452,12 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
61421
61452
|
class VimCollection {
|
|
61422
61453
|
constructor() {
|
|
61423
61454
|
__publicField(this, "_vims");
|
|
61455
|
+
__publicField(this, "_onChanged", new distExports$1.SignalDispatcher());
|
|
61424
61456
|
this._vims = [];
|
|
61425
61457
|
}
|
|
61458
|
+
get onChanged() {
|
|
61459
|
+
return this._onChanged.asEvent();
|
|
61460
|
+
}
|
|
61426
61461
|
get count() {
|
|
61427
61462
|
return this._vims.length;
|
|
61428
61463
|
}
|
|
@@ -61433,6 +61468,7 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
61433
61468
|
add(vim) {
|
|
61434
61469
|
if (!this._vims.some((v) => v.handle === vim.handle)) {
|
|
61435
61470
|
this._vims.push(vim);
|
|
61471
|
+
this._onChanged.dispatch();
|
|
61436
61472
|
}
|
|
61437
61473
|
}
|
|
61438
61474
|
/**
|
|
@@ -61440,7 +61476,11 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
61440
61476
|
* @param vim - The Vim instance to remove.
|
|
61441
61477
|
*/
|
|
61442
61478
|
remove(vim) {
|
|
61479
|
+
const count = this._vims.length;
|
|
61443
61480
|
this._vims = this._vims.filter((v) => v.handle !== vim.handle);
|
|
61481
|
+
if (this._vims.length !== count) {
|
|
61482
|
+
this._onChanged.dispatch();
|
|
61483
|
+
}
|
|
61444
61484
|
}
|
|
61445
61485
|
/**
|
|
61446
61486
|
* Gets a Vim instance by its handle.
|
|
@@ -61703,7 +61743,6 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
61703
61743
|
}
|
|
61704
61744
|
class SectionBox {
|
|
61705
61745
|
constructor(rpc) {
|
|
61706
|
-
__publicField(this, "_enabled", false);
|
|
61707
61746
|
__publicField(this, "_visible", true);
|
|
61708
61747
|
__publicField(this, "_interactible", true);
|
|
61709
61748
|
__publicField(this, "_clip", true);
|
|
@@ -61722,6 +61761,7 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
61722
61761
|
return this._animationFrame > 0;
|
|
61723
61762
|
}
|
|
61724
61763
|
async onConnect() {
|
|
61764
|
+
this._rpc.RPCEnableSectionBox(true);
|
|
61725
61765
|
this.push();
|
|
61726
61766
|
this._interval = setInterval(() => this.pull(), 1e3);
|
|
61727
61767
|
}
|
|
@@ -61736,10 +61776,9 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
61736
61776
|
if (this.needUpdate) return;
|
|
61737
61777
|
const state = await this._rpc.RPCGetSectionBox();
|
|
61738
61778
|
let changed = false;
|
|
61739
|
-
if (state.
|
|
61779
|
+
if (state.visible !== this._visible || state.interactible !== this._interactible || state.clip !== this._clip || state.box !== this._box) {
|
|
61740
61780
|
changed = true;
|
|
61741
61781
|
}
|
|
61742
|
-
this._enabled = state.enabled;
|
|
61743
61782
|
this._visible = state.visible;
|
|
61744
61783
|
this._interactible = state.interactible;
|
|
61745
61784
|
this._clip = state.clip;
|
|
@@ -61750,20 +61789,12 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
61750
61789
|
}
|
|
61751
61790
|
async push() {
|
|
61752
61791
|
await this._rpc.RPCSetSectionBox({
|
|
61753
|
-
enabled: this._enabled,
|
|
61754
61792
|
visible: this._visible,
|
|
61755
61793
|
interactible: this._interactible,
|
|
61756
61794
|
clip: this._clip,
|
|
61757
61795
|
box: this._box
|
|
61758
61796
|
});
|
|
61759
61797
|
}
|
|
61760
|
-
get enabled() {
|
|
61761
|
-
return this._enabled;
|
|
61762
|
-
}
|
|
61763
|
-
set enabled(value) {
|
|
61764
|
-
this._enabled = value;
|
|
61765
|
-
this.scheduleUpdate();
|
|
61766
|
-
}
|
|
61767
61798
|
get visible() {
|
|
61768
61799
|
return this._visible;
|
|
61769
61800
|
}
|
|
@@ -61771,10 +61802,10 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
61771
61802
|
this._visible = value;
|
|
61772
61803
|
this.scheduleUpdate();
|
|
61773
61804
|
}
|
|
61774
|
-
get
|
|
61805
|
+
get interactive() {
|
|
61775
61806
|
return this._interactible;
|
|
61776
61807
|
}
|
|
61777
|
-
set
|
|
61808
|
+
set interactive(value) {
|
|
61778
61809
|
this._interactible = value;
|
|
61779
61810
|
this.scheduleUpdate();
|
|
61780
61811
|
}
|
|
@@ -61884,6 +61915,9 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
61884
61915
|
get decoder() {
|
|
61885
61916
|
return this._decoder;
|
|
61886
61917
|
}
|
|
61918
|
+
get selection() {
|
|
61919
|
+
return this._selection;
|
|
61920
|
+
}
|
|
61887
61921
|
/**
|
|
61888
61922
|
* Gets the current URL to which the viewer is connected.
|
|
61889
61923
|
* @returns The URL as a string, or undefined if not connected.
|
|
@@ -66514,6 +66548,31 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
66514
66548
|
wrapper: "div",
|
|
66515
66549
|
clickable: false
|
|
66516
66550
|
}), _defineProperty(_class2, "supportedWrappers", ["div", "span"]), _defineProperty(_class2, "displayName", "ReactTooltip"), _class2)) || _class) || _class) || _class) || _class) || _class) || _class) || _class;
|
|
66551
|
+
function slidersHoriz({ height, width, fill: fill2, className }) {
|
|
66552
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { className, height, width, viewBox: "0 0 256 256", children: [
|
|
66553
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
66554
|
+
"path",
|
|
66555
|
+
{
|
|
66556
|
+
fill: fill2,
|
|
66557
|
+
d: "M24,74h111.163c6.293,15.258,21.308,26,38.837,26s32.543-10.742,38.837-26h19.163c8.836,0,16-7.164,16-16s-7.164-16-16-16h-19.163c-6.293-15.258-21.308-26-38.837-26s-32.543,10.742-38.837,26H24c-8.836,0-16,7.164-16,16s7.164,16,16,16Zm132.083-17.637c.014-.151,.031-.301,.048-.451,.05-.435,.116-.864,.197-1.289,.021-.11,.037-.222,.06-.331,.106-.503,.236-.998,.383-1.484,.046-.153,.1-.303,.15-.455,.116-.35,.242-.694,.379-1.033,.067-.167,.132-.336,.204-.5,.189-.433,.393-.859,.615-1.273,.092-.173,.196-.339,.294-.508,.15-.26,.305-.517,.467-.768,.133-.205,.268-.409,.409-.608,.147-.208,.302-.41,.458-.611,.28-.362,.572-.713,.878-1.053,.13-.146,.259-.293,.395-.435,.212-.221,.432-.435,.656-.645,.116-.109,.234-.215,.354-.321,.787-.703,1.634-1.338,2.535-1.896,.1-.062,.199-.123,.3-.182,.304-.181,.612-.356,.928-.519,2.464-1.27,5.25-2,8.208-2s5.744,.73,8.208,2c.315,.163,.624,.338,.928,.519,.101,.06,.201,.121,.3,.182,.901,.558,1.749,1.193,2.535,1.896,.119,.106,.238,.212,.354,.321,.224,.21,.443,.424,.656,.645,.135,.142,.264,.289,.395,.435,.306,.34,.599,.691,.878,1.053,.155,.202,.311,.403,.458,.611,.141,.199,.276,.403,.409,.608,.163,.251,.317,.508,.467,.768,.098,.169,.202,.335,.294,.508,.222,.415,.425,.84,.615,1.273,.072,.165,.137,.333,.204,.5,.137,.339,.263,.684,.379,1.033,.05,.151,.104,.301,.15,.455,.147,.487,.277,.981,.383,1.484,.023,.109,.039,.221,.06,.331,.081,.425,.147,.854,.197,1.289,.018,.15,.035,.3,.048,.451,.049,.54,.083,1.084,.083,1.637s-.034,1.097-.083,1.637c-.014,.151-.031,.301-.048,.451-.05,.435-.116,.864-.197,1.289-.021,.11-.037,.222-.06,.331-.106,.503-.236,.998-.383,1.484-.046,.153-.1,.303-.15,.455-.116,.35-.242,.694-.379,1.033-.067,.167-.132,.336-.204,.5-.189,.433-.393,.859-.615,1.273-.092,.173-.196,.339-.294,.508-.15,.26-.305,.517-.467,.768-.133,.205-.268,.409-.409,.608-.147,.208-.302,.41-.458,.611-.28,.362-.572,.713-.878,1.053-.13,.146-.259,.293-.395,.435-.212,.221-.432,.435-.656,.645-.116,.109-.234,.215-.354,.321-.787,.703-1.634,1.338-2.535,1.896-.1,.062-.199,.123-.3,.182-.304,.181-.612,.356-.928,.519-2.464,1.27-5.25,2-8.208,2s-5.744-.73-8.208-2c-.315-.163-.624-.338-.928-.519-.101-.06-.201-.121-.3-.182-.901-.558-1.749-1.193-2.535-1.896-.119-.106-.238-.212-.354-.321-.224-.21-.443-.424-.656-.645-.135-.142-.264-.289-.395-.435-.306-.34-.599-.691-.878-1.053-.155-.202-.311-.403-.458-.611-.141-.199-.276-.403-.409-.608-.163-.251-.317-.508-.467-.768-.098-.169-.202-.335-.294-.508-.222-.415-.425-.84-.615-1.273-.072-.165-.137-.333-.204-.5-.137-.339-.263-.684-.379-1.033-.05-.151-.104-.301-.15-.455-.147-.487-.277-.981-.383-1.484-.023-.109-.039-.221-.06-.331-.081-.425-.147-.854-.197-1.289-.018-.15-.035-.3-.048-.451-.049-.54-.083-1.084-.083-1.637s.034-1.097,.083-1.637Z"
|
|
66558
|
+
}
|
|
66559
|
+
),
|
|
66560
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
66561
|
+
"path",
|
|
66562
|
+
{
|
|
66563
|
+
fill: fill2,
|
|
66564
|
+
d: "M232,112H120.837c-6.293-15.258-21.308-26-38.837-26s-32.543,10.742-38.837,26H24c-8.836,0-16,7.164-16,16s7.164,16,16,16h19.163c6.293,15.258,21.308,26,38.837,26s32.543-10.742,38.837-26h111.163c8.836,0,16-7.164,16-16s-7.164-16-16-16Zm-132.083,17.637c-.014,.151-.031,.301-.048,.451-.05,.435-.116,.864-.197,1.289-.021,.11-.037,.222-.06,.331-.106,.503-.236,.998-.383,1.484-.046,.153-.1,.303-.15,.455-.116,.35-.242,.694-.379,1.033-.067,.167-.132,.336-.204,.5-.189,.433-.393,.859-.615,1.273-.092,.173-.196,.339-.294,.508-.15,.26-.305,.517-.467,.768-.133,.205-.268,.409-.409,.608-.147,.208-.302,.41-.458,.611-.28,.362-.572,.713-.878,1.053-.13,.146-.259,.293-.395,.435-.212,.221-.432,.435-.656,.645-.116,.109-.234,.215-.354,.321-.787,.703-1.634,1.338-2.535,1.896-.1,.062-.199,.123-.3,.182-.304,.181-.612,.356-.928,.519-2.464,1.27-5.25,2-8.208,2s-5.744-.73-8.208-2c-.315-.163-.624-.338-.928-.519-.101-.06-.201-.121-.3-.182-.901-.558-1.749-1.193-2.535-1.896-.119-.106-.238-.212-.354-.321-.224-.21-.443-.424-.656-.645-.135-.142-.264-.289-.395-.435-.306-.34-.599-.691-.878-1.053-.155-.202-.311-.403-.458-.611-.141-.199-.276-.403-.409-.608-.163-.251-.317-.508-.467-.768-.098-.169-.202-.335-.294-.508-.222-.415-.425-.84-.615-1.273-.072-.165-.137-.333-.204-.5-.137-.339-.263-.684-.379-1.033-.05-.151-.104-.301-.15-.455-.147-.487-.277-.981-.383-1.484-.023-.109-.039-.221-.06-.331-.081-.425-.147-.854-.197-1.289-.018-.15-.035-.3-.048-.451-.049-.54-.083-1.084-.083-1.637s.034-1.097,.083-1.637c.014-.151,.031-.301,.048-.451,.05-.435,.116-.864,.197-1.289,.021-.11,.037-.222,.06-.331,.106-.503,.236-.998,.383-1.484,.046-.153,.1-.303,.15-.455,.116-.35,.242-.694,.379-1.033,.067-.167,.132-.336,.204-.5,.189-.433,.393-.859,.615-1.273,.092-.173,.196-.339,.294-.508,.15-.26,.305-.517,.467-.768,.133-.205,.268-.409,.409-.608,.147-.208,.302-.41,.458-.611,.28-.362,.572-.713,.878-1.053,.13-.146,.259-.293,.395-.435,.212-.221,.432-.435,.656-.645,.116-.109,.234-.215,.354-.321,.787-.703,1.634-1.338,2.535-1.896,.1-.062,.199-.123,.3-.182,.304-.181,.612-.356,.928-.519,2.464-1.27,5.25-2,8.208-2s5.744,.73,8.208,2c.315,.163,.624,.338,.928,.519,.101,.06,.201,.121,.3,.182,.901,.558,1.749,1.193,2.535,1.896,.119,.106,.238,.212,.354,.321,.224,.21,.443,.424,.656,.645,.135,.142,.264,.289,.395,.435,.306,.34,.599,.691,.878,1.053,.155,.202,.311,.403,.458,.611,.141,.199,.276,.403,.409,.608,.163,.251,.317,.508,.467,.768,.098,.169,.202,.335,.294,.508,.222,.415,.425,.84,.615,1.273,.072,.165,.137,.333,.204,.5,.137,.339,.263,.684,.379,1.033,.05,.151,.104,.301,.15,.455,.147,.487,.277,.981,.383,1.484,.023,.109,.039,.221,.06,.331,.081,.425,.147,.854,.197,1.289,.018,.15,.035,.3,.048,.451,.049,.54,.083,1.084,.083,1.637s-.034,1.097-.083,1.637Z"
|
|
66565
|
+
}
|
|
66566
|
+
),
|
|
66567
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
66568
|
+
"path",
|
|
66569
|
+
{
|
|
66570
|
+
fill: fill2,
|
|
66571
|
+
d: "M232,182h-19.163c-6.293-15.258-21.308-26-38.837-26s-32.543,10.742-38.837,26H24c-8.836,0-16,7.164-16,16s7.164,16,16,16h111.163c6.293,15.258,21.308,26,38.837,26s32.543-10.742,38.837-26h19.163c8.836,0,16-7.164,16-16s-7.164-16-16-16Zm-40.083,17.637c-.014,.151-.031,.301-.048,.451-.05,.435-.116,.864-.197,1.289-.021,.11-.037,.222-.06,.331-.106,.503-.236,.998-.383,1.484-.046,.153-.1,.303-.15,.455-.116,.35-.242,.694-.379,1.033-.067,.167-.132,.336-.204,.5-.189,.433-.393,.859-.615,1.273-.092,.173-.196,.339-.294,.508-.15,.26-.305,.517-.467,.768-.133,.205-.268,.409-.409,.608-.147,.208-.302,.41-.458,.611-.28,.362-.572,.713-.878,1.053-.13,.146-.259,.293-.395,.435-.212,.221-.432,.435-.656,.645-.116,.109-.234,.215-.354,.321-.787,.703-1.634,1.338-2.535,1.896-.1,.062-.199,.123-.3,.182-.304,.181-.612,.356-.928,.519-2.464,1.27-5.25,2-8.208,2s-5.744-.73-8.208-2c-.315-.163-.624-.338-.928-.519-.101-.06-.201-.121-.3-.182-.901-.558-1.749-1.193-2.535-1.896-.119-.106-.238-.212-.354-.321-.224-.21-.443-.424-.656-.645-.135-.142-.264-.289-.395-.435-.306-.34-.599-.691-.878-1.053-.155-.202-.311-.403-.458-.611-.141-.199-.276-.403-.409-.608-.163-.251-.317-.508-.467-.768-.098-.169-.202-.335-.294-.508-.222-.415-.425-.84-.615-1.273-.072-.165-.137-.333-.204-.5-.137-.339-.263-.684-.379-1.033-.05-.151-.104-.301-.15-.455-.147-.487-.277-.981-.383-1.484-.023-.109-.039-.221-.06-.331-.081-.425-.147-.854-.197-1.289-.018-.15-.035-.3-.048-.451-.049-.54-.083-1.084-.083-1.637s.034-1.097,.083-1.637c.014-.151,.031-.301,.048-.451,.05-.435,.116-.864,.197-1.289,.021-.11,.037-.222,.06-.331,.106-.503,.236-.998,.383-1.484,.046-.153,.1-.303,.15-.455,.116-.35,.242-.694,.379-1.033,.067-.167,.132-.336,.204-.5,.189-.433,.393-.859,.615-1.273,.092-.173,.196-.339,.294-.508,.15-.26,.305-.517,.467-.768,.133-.205,.268-.409,.409-.608,.147-.208,.302-.41,.458-.611,.28-.362,.572-.713,.878-1.053,.13-.146,.259-.293,.395-.435,.212-.221,.432-.435,.656-.645,.116-.109,.234-.215,.354-.321,.787-.703,1.634-1.338,2.535-1.896,.1-.062,.199-.123,.3-.182,.304-.181,.612-.356,.928-.519,2.464-1.27,5.25-2,8.208-2s5.744,.73,8.208,2c.315,.163,.624,.338,.928,.519,.101,.06,.201,.121,.3,.182,.901,.558,1.749,1.193,2.535,1.896,.119,.106,.238,.212,.354,.321,.224,.21,.443,.424,.656,.645,.135,.142,.264,.289,.395,.435,.306,.34,.599,.691,.878,1.053,.155,.202,.311,.403,.458,.611,.141,.199,.276,.403,.409,.608,.163,.251,.317,.508,.467,.768,.098,.169,.202,.335,.294,.508,.222,.415,.425,.84,.615,1.273,.072,.165,.137,.333,.204,.5,.137,.339,.263,.684,.379,1.033,.05,.151,.104,.301,.15,.455,.147,.487,.277,.981,.383,1.484,.023,.109,.039,.221,.06,.331,.081,.425,.147,.854,.197,1.289,.018,.15,.035,.3,.048,.451,.049,.54,.083,1.084,.083,1.637s-.034,1.097-.083,1.637Z"
|
|
66572
|
+
}
|
|
66573
|
+
)
|
|
66574
|
+
] });
|
|
66575
|
+
}
|
|
66517
66576
|
function settings({ height, width, fill: fill2, className }) {
|
|
66518
66577
|
return /* @__PURE__ */ jsxRuntimeExports.jsx("svg", { className, height, width, viewBox: "0 0 256 256", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
66519
66578
|
"path",
|
|
@@ -67048,6 +67107,60 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67048
67107
|
)
|
|
67049
67108
|
] });
|
|
67050
67109
|
}
|
|
67110
|
+
function sectionBoxSettings({ height, width, fill: fill2, className }) {
|
|
67111
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { className, height, width, viewBox: "0 0 256 256", children: [
|
|
67112
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
67113
|
+
"path",
|
|
67114
|
+
{
|
|
67115
|
+
fill: fill2,
|
|
67116
|
+
d: "M 109.70368,2.190587 17.447731,55.710016 A 16.213,16.213 0 0 0 9.3632977,69.780402 L 9.6706253,176.28696 a 16.215,16.215 0 0 0 8.1654987,14.0235 l 95.269706,54.51732 c 1.35625,0.77609 3.04643,-0.20379 3.04192,-1.76478 L 115.79652,121.3395 221.23346,60.173007 c 1.35174,-0.783903 1.34611,-2.734895 -0.0101,-3.511985 L 125.95362,2.1436974 a 16.278,16.278 0 0 0 -16.24994,0.04689 z M 95.74464,211.51674 29.976783,173.88635 29.714025,82.825734 l 65.768857,37.630376 0.262761,91.06162 z m 9.95507,-107.77018 -65.766855,-37.629382 77.949835,-45.221114 65.76886,37.62938 -77.95084,45.221116 z"
|
|
67117
|
+
}
|
|
67118
|
+
),
|
|
67119
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
67120
|
+
"path",
|
|
67121
|
+
{
|
|
67122
|
+
fill: fill2,
|
|
67123
|
+
d: "m 175.57713,226.38215 c -1.28316,3.98514 -5.40414,6.14971 -9.13315,4.86244 l -3.60809,-1.24739 c -3.76004,-1.29737 -5.86799,-5.60846 -4.70379,-9.64145 l 0.42438,-1.46966 c 0.96925,-3.3572 -0.3989,-7.74539 -3.07521,-9.81798 l -0.73032,-0.56682 c -2.66882,-2.0641 -7.02118,-2.10184 -9.7235,-0.0863 l -1.1842,0.8837 c -3.23919,2.42089 -7.76901,1.59565 -10.07644,-1.77642 l -2.23242,-3.26259 c -2.3254,-3.40131 -1.6226,-8.22657 1.51812,-10.73784 l 1.15669,-0.92571 c 2.63933,-2.1082 3.9555,-6.51288 2.93126,-9.86426 l -0.27844,-0.91558 c -1.01877,-3.33861 -4.52035,-6.09072 -7.821,-6.14815 l -1.44661,-0.0253 c -3.95551,-0.0693 -7.1652,-3.56724 -7.1652,-7.7374 v -4.03725 c 0,-4.20531 3.2372,-7.66991 7.1652,-7.73745 l 1.44661,-0.0251 c 3.30016,-0.0568 6.79826,-2.79894 7.821,-6.14974 l 0.27844,-0.91348 c 1.02023,-3.33859 -0.29193,-7.75605 -2.93126,-9.86586 l -1.15669,-0.9241 c -3.16419,-2.52987 -3.82354,-7.3652 -1.51812,-10.73784 l 2.23242,-3.2647 c 2.32739,-3.39921 6.86326,-4.17603 10.07644,-1.77645 l 1.1842,0.88372 c 2.70232,2.01782 7.04471,1.98645 9.7235,-0.086 l 0.73032,-0.56467 c 2.66683,-2.06414 4.04446,-6.46083 3.07521,-9.81803 l -0.42438,-1.47176 c -1.1627,-4.02504 0.97525,-8.35208 4.70379,-9.63935 l 3.60809,-1.24738 c 3.76004,-1.299493 7.84798,0.87146 9.13315,4.86086 l 0.46987,1.4569 c 1.07175,3.32157 4.60331,6.0152 7.91546,6.0152 h 0.90232 c 3.30011,0 6.84321,-2.69363 7.91345,-6.0152 l 0.46988,-1.4569 c 1.28517,-3.98301 5.40663,-6.148123 9.13516,-4.86033 l 3.60808,1.24739 c 3.76006,1.29738 5.86803,5.60632 4.70383,9.63932 l -0.42441,1.47179 c -0.96925,3.35722 0.39893,7.7454 3.07522,9.81798 l 0.73029,0.56467 c 2.66883,2.06622 7.02122,2.10401 9.72154,0.0862 l 1.1842,-0.88369 c 3.23916,-2.41874 7.77099,-1.59353 10.0764,1.77644 l 2.23444,3.26469 c 2.32542,3.40132 1.62261,8.22656 -1.51812,10.73784 l -1.15667,0.92409 c -2.63936,2.11036 -3.95552,6.51504 -2.93328,9.86586 l 0.28043,0.91346 c 1.01873,3.34022 4.52035,6.09284 7.82101,6.14975 l 1.44514,0.0251 c 3.95749,0.0671 7.16516,3.56725 7.16516,7.73741 v 4.03729 c 0,4.20314 -3.23717,7.66987 -7.16516,7.73739 l -1.44514,0.0254 c -3.30016,0.0568 -6.79828,2.79678 -7.82101,6.14812 l -0.28043,0.91562 c -1.01872,3.33856 0.29392,7.75601 2.93328,9.86424 l 1.15667,0.92571 c 3.16422,2.52985 3.82355,7.36522 1.51812,10.73786 l -2.23444,3.26254 c -2.32537,3.40135 -6.86123,4.17815 -10.0764,1.77645 l -1.1842,-0.88373 c -2.70032,-2.01569 -7.04322,-1.98646 -9.72154,0.086 l -0.73029,0.56681 c -2.66683,2.06412 -4.04447,6.46079 -3.07522,9.81801 l 0.42441,1.46964 c 1.1627,4.02717 -0.97526,8.3542 -4.70383,9.64146 l -3.60808,1.24739 c -3.76002,1.29736 -7.84798,-0.87146 -9.13516,-4.86248 l -0.46988,-1.45474 c -1.06973,-3.32157 -4.60133,-6.01523 -7.91345,-6.01523 h -0.90232 c -3.30013,0 -6.84323,2.69366 -7.91546,6.01523 l -0.46987,1.45474 z m 8.83473,-24.33631 c 18.77473,0 33.99232,-16.18681 33.99232,-36.15723 0,-19.97043 -15.21759,-36.1551 -33.99232,-36.1551 -18.77467,0 -33.9903,16.18681 -33.9903,36.1551 0,19.96828 15.21761,36.15723 33.9903,36.15723 z"
|
|
67124
|
+
}
|
|
67125
|
+
)
|
|
67126
|
+
] });
|
|
67127
|
+
}
|
|
67128
|
+
function sectionBoxAuto({ height, width, fill: fill2, className }) {
|
|
67129
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { className, height, width, viewBox: "0 0 256 256", children: [
|
|
67130
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
67131
|
+
"path",
|
|
67132
|
+
{
|
|
67133
|
+
fill: fill2,
|
|
67134
|
+
d: "M 109.70368,2.190587 17.447731,55.710016 A 16.213,16.213 0 0 0 9.3632977,69.780402 L 9.6706253,176.28696 a 16.215,16.215 0 0 0 8.1654987,14.0235 l 95.269706,54.51732 c 1.35625,0.77609 3.04643,-0.20379 3.04192,-1.76478 L 115.79652,121.3395 221.23346,60.173007 c 1.35174,-0.783903 1.34611,-2.734895 -0.0101,-3.511985 L 125.95362,2.1436974 a 16.278,16.278 0 0 0 -16.24994,0.04689 z M 95.74464,211.51674 29.976783,173.88635 29.714025,82.825734 l 65.768857,37.630376 0.262761,91.06162 z m 9.95507,-107.77018 -65.766855,-37.629382 77.949835,-45.221114 65.76886,37.62938 -77.95084,45.221116 z"
|
|
67135
|
+
}
|
|
67136
|
+
),
|
|
67137
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
67138
|
+
"path",
|
|
67139
|
+
{
|
|
67140
|
+
fill: fill2,
|
|
67141
|
+
d: "M 221.207314 217.240532 L 214.827314 200.469532 L 160.504314 200.469532 L 154.124314 217.604532 C 151.632314 224.288532 149.506314 228.815532 147.744314 231.186532 C 145.981314 233.494532 143.095314 234.649532 139.085314 234.649532 C 135.682314 234.649532 132.674314 233.403532 130.061314 230.912532 C 127.448314 228.420532 126.142314 225.595532 126.142314 222.435532 C 126.142314 220.612532 126.446314 218.729532 127.053314 216.784532 C 127.661314 214.840532 128.664314 212.137532 130.061314 208.672532 L 164.241314 121.901532 C 165.213314 119.410532 166.368314 116.432532 167.704314 112.969532 C 169.102314 109.444532 170.560314 106.528532 172.079314 104.219532 C 173.659314 101.911532 175.695314 100.057532 178.186314 98.660532 C 180.738314 97.201532 183.868314 96.471532 187.574314 96.471532 C 191.342314 96.471532 194.471314 97.201532 196.962314 98.660532 C 199.514314 100.057532 201.550314 101.879532 203.069314 104.128532 C 204.649314 106.376532 205.955314 108.807532 206.988314 111.419532 C 208.082314 113.971532 209.449314 117.405532 211.090314 121.719532 L 245.999314 207.943532 C 248.733314 214.505532 250.100314 219.275532 250.100314 222.253532 C 250.100314 225.352532 248.794314 228.209532 246.181314 230.822532 C 243.629314 233.373532 240.530314 234.649532 236.884314 234.649532 C 234.758314 234.649532 232.935314 234.254532 231.416314 233.464532 C 229.896314 232.735532 228.620314 231.732532 227.587314 230.456532 C 226.554314 229.119532 225.430314 227.115532 224.215314 224.440532 C 223.060314 221.706532 222.058314 219.306532 221.207314 217.240532 Z M 167.613314 180.143532 L 207.535314 180.143532 L 187.392314 125.000532 Z"
|
|
67142
|
+
}
|
|
67143
|
+
)
|
|
67144
|
+
] });
|
|
67145
|
+
}
|
|
67146
|
+
function sectionBoxVisible({ height, width, fill: fill2, className }) {
|
|
67147
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { className, height, width, viewBox: "0 0 256 256", children: [
|
|
67148
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
67149
|
+
"path",
|
|
67150
|
+
{
|
|
67151
|
+
fill: fill2,
|
|
67152
|
+
d: "M 109.70368,2.190587 17.447731,55.710016 A 16.213,16.213 0 0 0 9.3632977,69.780402 L 9.6706253,176.28696 a 16.215,16.215 0 0 0 8.1654987,14.0235 l 95.269706,54.51732 c 1.35625,0.77609 3.04643,-0.20379 3.04192,-1.76478 L 115.79652,121.3395 221.23346,60.173007 c 1.35174,-0.783903 1.34611,-2.734895 -0.0101,-3.511985 L 125.95362,2.1436974 a 16.278,16.278 0 0 0 -16.24994,0.04689 z M 95.74464,211.51674 29.976783,173.88635 29.714025,82.825734 l 65.768857,37.630376 0.262761,91.06162 z m 9.95507,-107.77018 -65.766855,-37.629382 77.949835,-45.221114 65.76886,37.62938 -77.95084,45.221116 z"
|
|
67153
|
+
}
|
|
67154
|
+
),
|
|
67155
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
67156
|
+
"path",
|
|
67157
|
+
{
|
|
67158
|
+
fill: fill2,
|
|
67159
|
+
d: "m 186.05204,115.30607 c -37.93016,0 -68.67906,39.581 -68.67906,59.64313 0,21.35677 30.7489,59.64312 68.67906,59.64312 37.93016,0 68.67906,-38.28635 68.67906,-59.64312 0,-20.06213 -30.7489,-59.64313 -68.67906,-59.64313 z m 40.42729,85.41349 c -6.9441,6.83951 -21.43002,18.31368 -40.42729,18.31368 -18.99727,0 -33.48265,-11.47417 -40.42728,-18.31368 -11.61642,-11.4411 -15.37445,-22.30263 -15.37445,-25.77036 0,-0.0305 0.0381,-3.14164 3.35186,-9.36916 2.8652,-5.38603 7.15818,-11.06056 12.08697,-15.97917 3.66628,-3.65833 9.40099,-8.61065 16.72067,-12.50626 -6.58514,7.55977 -10.6973,18.2333 -10.6973,30.07505 0,22.91463 15.37445,41.49087 34.33953,41.49087 18.96508,0 34.33953,-18.57624 34.33953,-41.49087 0,-5.71277 -0.95614,-11.15521 -2.68492,-16.10818 -0.0445,9.9792 -6.75148,18.05306 -15.0214,18.05306 -8.26992,0 -15.02354,-8.12702 -15.02354,-18.15225 0,-8.97953 5.39774,-16.43168 12.48617,-17.88905 11.9346,3.73548 21.13062,11.40091 26.2676,16.52763 4.92879,4.91861 9.22177,10.59379 12.08697,15.97917 3.31377,6.22752 3.35186,9.33869 3.35186,9.36916 0,3.46773 -3.75803,14.32926 -15.37445,25.77036 z"
|
|
67160
|
+
}
|
|
67161
|
+
)
|
|
67162
|
+
] });
|
|
67163
|
+
}
|
|
67051
67164
|
function sectionBox({ height, width, fill: fill2, className }) {
|
|
67052
67165
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { className, height, width, viewBox: "0 0 256 256", children: [
|
|
67053
67166
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
@@ -67066,6 +67179,31 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67066
67179
|
)
|
|
67067
67180
|
] });
|
|
67068
67181
|
}
|
|
67182
|
+
function sectionBoxDisable({ height, width, fill: fill2, className }) {
|
|
67183
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { className, height, width, viewBox: "0 0 256 256", children: [
|
|
67184
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
67185
|
+
"path",
|
|
67186
|
+
{
|
|
67187
|
+
fill: fill2,
|
|
67188
|
+
d: "M 109.70368,2.190587 17.447731,55.710016 A 16.213,16.213 0 0 0 9.3632977,69.780402 L 9.6706253,176.28696 a 16.215,16.215 0 0 0 8.1654987,14.0235 l 95.269706,54.51732 c 1.35625,0.77609 3.04643,-0.20379 3.04192,-1.76478 L 115.79652,121.3395 221.23346,60.173007 c 1.35174,-0.783903 1.34611,-2.734895 -0.0101,-3.511985 L 125.95362,2.1436974 a 16.278,16.278 0 0 0 -16.24994,0.04689 z M 95.74464,211.51674 29.976783,173.88635 29.714025,82.825734 l 65.768857,37.630376 0.262761,91.06162 z m 9.95507,-107.77018 -65.766855,-37.629382 77.949835,-45.221114 65.76886,37.62938 -77.95084,45.221116 z"
|
|
67189
|
+
}
|
|
67190
|
+
),
|
|
67191
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
67192
|
+
"path",
|
|
67193
|
+
{
|
|
67194
|
+
fill: fill2,
|
|
67195
|
+
d: "m 185.61601,192.28388 v -44.0883 c 0,-2.52838 -1.97182,-4.91709 -4.84542,-5.26996 -3.49833,-0.42965 -6.4956,1.9253 -6.4956,4.89027 v 44.08783 c 0,2.52885 1.97182,4.91756 4.84542,5.27043 3.49833,0.42965 6.4956,-1.92531 6.4956,-4.89027 z m 22.68149,0 v -44.0883 c 0,-2.52838 -1.97182,-4.91709 -4.84542,-5.26996 -3.49832,-0.42965 -6.49559,1.9253 -6.49559,4.89027 v 44.08783 c 0,2.52885 1.97182,4.91756 4.84542,5.27043 3.49832,0.42965 6.49559,-1.92531 6.49559,-4.89027 z m 38.18908,-71.6429 H 225.42553 V 105.9623 c 0,-2.80818 -2.61299,-5.08498 -5.83584,-5.08498 h -56.43703 c -3.22285,0 -5.83585,2.2768 -5.83585,5.08498 v 14.67868 h -21.23089 c -4.69044,0 -8.49236,3.31275 -8.49236,7.39969 v 0.0231 c 0,4.08694 3.80192,7.39969 8.49236,7.39969 h 110.40066 c 4.69044,0 8.49236,-3.31275 8.49236,-7.39969 v -0.0231 c 0,-4.08694 -3.80192,-7.39969 -8.49236,-7.39969 z m -35.23745,-6.4863 v 6.4863 h -39.75592 v -6.4863 a 1.0615448,0.92496161 0 0 1 1.06155,-0.92496 h 37.63282 a 1.0615448,0.92496161 0 0 1 1.06155,0.92496 z"
|
|
67196
|
+
}
|
|
67197
|
+
),
|
|
67198
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
67199
|
+
"path",
|
|
67200
|
+
{
|
|
67201
|
+
fill: fill2,
|
|
67202
|
+
d: "m 227.42894,215.76405 c 0,5.6549 -4.47215,10.23953 -9.98832,10.23953 h -49.76957 c -5.51617,0 -9.98832,-4.58463 -9.98832,-10.23953 v -69.72083 a 4.9863693,5.1117785 0 0 0 -4.98637,-5.11178 h -10.00391 a 4.9863693,5.1117785 0 0 0 -4.98637,5.11178 v 73.13422 c 0,15.08038 11.92553,27.30584 26.63594,27.30584 h 56.42825 c 14.71041,0 26.63594,-12.22546 26.63594,-27.30584 v -73.13422 a 4.9863693,5.1117785 0 0 0 -4.98637,-5.11178 h -10.0039 a 4.9863693,5.1117785 0 0 0 -4.98637,5.11178 v 69.72147 z"
|
|
67203
|
+
}
|
|
67204
|
+
)
|
|
67205
|
+
] });
|
|
67206
|
+
}
|
|
67069
67207
|
function sectionBoxClip({ height, width, fill: fill2, className }) {
|
|
67070
67208
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { className, height, width, viewBox: "0 0 256 256", children: [
|
|
67071
67209
|
/* @__PURE__ */ jsxRuntimeExports.jsx("path", { fill: "none", d: "M0 0h256v256H0z" }),
|
|
@@ -67147,6 +67285,24 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67147
67285
|
) })
|
|
67148
67286
|
] });
|
|
67149
67287
|
}
|
|
67288
|
+
function sectionBoxShrink2({ height, width, fill: fill2, className }) {
|
|
67289
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { className, height, width, viewBox: "0 0 256 256", children: [
|
|
67290
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
67291
|
+
"path",
|
|
67292
|
+
{
|
|
67293
|
+
fill: fill2,
|
|
67294
|
+
d: "M 109.70368,2.190587 17.447731,55.710016 A 16.213,16.213 0 0 0 9.3632977,69.780402 L 9.6706253,176.28696 a 16.215,16.215 0 0 0 8.1654987,14.0235 l 95.269706,54.51732 c 1.35625,0.77609 3.04643,-0.20379 3.04192,-1.76478 L 115.79652,121.3395 221.23346,60.173007 c 1.35174,-0.783903 1.34611,-2.734895 -0.0101,-3.511985 L 125.95362,2.1436974 a 16.278,16.278 0 0 0 -16.24994,0.04689 z M 95.74464,211.51674 29.976783,173.88635 29.714025,82.825734 l 65.768857,37.630376 0.262761,91.06162 z m 9.95507,-107.77018 -65.766855,-37.629382 77.949835,-45.221114 65.76886,37.62938 -77.95084,45.221116 z"
|
|
67295
|
+
}
|
|
67296
|
+
),
|
|
67297
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
67298
|
+
"path",
|
|
67299
|
+
{
|
|
67300
|
+
fill: fill2,
|
|
67301
|
+
d: "m 223.41166,231.92815 -50.05,-51.82677 -21.39562,22.15515 -21.52251,-81.36695 78.57748,22.28655 -21.39561,22.15516 50.05002,51.82676 z"
|
|
67302
|
+
}
|
|
67303
|
+
)
|
|
67304
|
+
] });
|
|
67305
|
+
}
|
|
67150
67306
|
function ghost({ height, width, fill: fill2, className }) {
|
|
67151
67307
|
return /* @__PURE__ */ jsxRuntimeExports.jsx("svg", { className, width: height, height: width, viewBox: "0 0 20 20", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("g", { "data-name": "ICONS", children: [
|
|
67152
67308
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
@@ -67206,11 +67362,17 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67206
67362
|
pan,
|
|
67207
67363
|
perspective,
|
|
67208
67364
|
sectionBox,
|
|
67365
|
+
sectionBoxAuto,
|
|
67209
67366
|
sectionBoxClip,
|
|
67367
|
+
sectionBoxDisable,
|
|
67210
67368
|
sectionBoxIgnore,
|
|
67211
67369
|
sectionBoxReset,
|
|
67370
|
+
sectionBoxSettings,
|
|
67212
67371
|
sectionBoxShrink,
|
|
67372
|
+
sectionBoxShrink2,
|
|
67373
|
+
sectionBoxVisible,
|
|
67213
67374
|
settings,
|
|
67375
|
+
slidersHoriz,
|
|
67214
67376
|
toggleIsolation,
|
|
67215
67377
|
trash,
|
|
67216
67378
|
treeView,
|
|
@@ -67230,9 +67392,6 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67230
67392
|
function anyUiCursorButton(settings2) {
|
|
67231
67393
|
return isTrue(settings2.ui.orbit) || isTrue(settings2.ui.lookAround) || isTrue(settings2.ui.pan) || isTrue(settings2.ui.zoom) || isTrue(settings2.ui.zoomWindow) || isTrue(settings2.ui.zoomToFit);
|
|
67232
67394
|
}
|
|
67233
|
-
function anyUiToolButton(settings2) {
|
|
67234
|
-
return isTrue(settings2.ui.sectioningMode) || isTrue(settings2.ui.measuringMode) || isTrue(settings2.ui.toggleIsolation);
|
|
67235
|
-
}
|
|
67236
67395
|
function anyUiSettingButton(settings2) {
|
|
67237
67396
|
return isTrue(settings2.ui.projectInspector) || isTrue(settings2.ui.settings) || isTrue(settings2.ui.help) || isTrue(settings2.ui.maximise);
|
|
67238
67397
|
}
|
|
@@ -67364,7 +67523,7 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67364
67523
|
}
|
|
67365
67524
|
);
|
|
67366
67525
|
const hidden2 = isTrue(props.settings.value.ui.axesPanel) ? "" : " vc-hidden";
|
|
67367
|
-
const
|
|
67526
|
+
const createBar = () => {
|
|
67368
67527
|
if (!anyUiAxesButton(props.settings.value)) {
|
|
67369
67528
|
return (
|
|
67370
67529
|
// Keeps layout when all buttons are disabled.
|
|
@@ -67386,7 +67545,7 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67386
67545
|
className: "vim-axes-panel vc-pointer-events-none vc-absolute vc-overflow-hidden vc-z-20 vc-flex vc-flex-col vc-border vc-border-white vc-opacity-50 vc-shadow-lg vc-saturate-0 vc-transition-all hover:vc-opacity-100 hover:vc-saturate-100" + hidden2,
|
|
67387
67546
|
children: [
|
|
67388
67547
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref: gizmoDiv, className: "vim-axes-panel-gizmo vc-absolute vc-pointer-events-auto" }),
|
|
67389
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "vim-axes-panel-bar vc-absolute vc-top-[75%] vc-bottom-0 vc-right-0 vc-left-0", children:
|
|
67548
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "vim-axes-panel-bar vc-absolute vc-top-[75%] vc-bottom-0 vc-right-0 vc-left-0", children: createBar() })
|
|
67390
67549
|
]
|
|
67391
67550
|
}
|
|
67392
67551
|
);
|
|
@@ -67395,22 +67554,62 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67395
67554
|
function buttonDefaultStyle(on) {
|
|
67396
67555
|
return on ? btnStyle + " vc-text-primary" : btnStyle + " vc-text-gray-medium";
|
|
67397
67556
|
}
|
|
67557
|
+
function buttonExpandStyle(on) {
|
|
67558
|
+
return on ? btnStyle + " vc-text-white vc-bg-primary" : btnStyle + " vc-text-gray-medium";
|
|
67559
|
+
}
|
|
67560
|
+
function buttonDisableStyle(on) {
|
|
67561
|
+
return on ? btnStyle + " vc-text-gray-medium" : btnStyle + " vc-text-gray vc-pointer-events-none";
|
|
67562
|
+
}
|
|
67398
67563
|
function buttonBlueStyle(on) {
|
|
67399
67564
|
return btnStyle + " vc-text-white";
|
|
67400
67565
|
}
|
|
67401
67566
|
function createButton(button) {
|
|
67402
67567
|
var _a2;
|
|
67403
67568
|
if (button.enabled !== void 0 && !button.enabled()) return null;
|
|
67404
|
-
const style = button.style((_a2 = button.isOn) == null ? void 0 : _a2.call(button));
|
|
67405
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx("button", { "data-tip": button.tip, onClick: button.action, className: style, type: "button", children: button.icon({ height: "20", width: "20", fill: "currentColor", className: "vc-max-h-[80%]" }) }, button.id);
|
|
67569
|
+
const style = (button.style ?? buttonDefaultStyle)((_a2 = button.isOn) == null ? void 0 : _a2.call(button));
|
|
67570
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("button", { id: button.id, "data-tip": button.tip, onClick: button.action, className: style, type: "button", children: button.icon({ height: "20", width: "20", fill: "currentColor", className: "vc-max-h-[80%]" }) }, button.id);
|
|
67406
67571
|
}
|
|
67407
|
-
const sectionStyle = "vc-flex vc-items-center vc-rounded-full vc-mb-2 vc-
|
|
67572
|
+
const sectionStyle = "vc-flex vc-items-center vc-rounded-full vc-mb-2 vc-shadow-md";
|
|
67408
67573
|
const sectionDefaultStyle = sectionStyle + " vc-bg-white";
|
|
67409
67574
|
const sectionBlueStyle = sectionStyle + " vc-bg-primary";
|
|
67575
|
+
const sectionNoPadStyle = sectionStyle.replace("vc-px-2", "") + " vc-bg-white";
|
|
67410
67576
|
function createSection$1(section) {
|
|
67411
67577
|
if (section.enable !== void 0 && !section.enable()) return null;
|
|
67412
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: `vim-control-bar-section ${section.style}`, children: section.buttons.map((b) => createButton(b)) }, section.id);
|
|
67578
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: `vim-control-bar-section ${section.style ?? sectionDefaultStyle}`, children: section.buttons.map((b) => createButton(b)) }, section.id);
|
|
67579
|
+
}
|
|
67580
|
+
function ControlBar(props) {
|
|
67581
|
+
React2.useEffect(() => {
|
|
67582
|
+
ReactTooltip.rebuild();
|
|
67583
|
+
});
|
|
67584
|
+
if (!props.show) {
|
|
67585
|
+
return null;
|
|
67586
|
+
}
|
|
67587
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
67588
|
+
"div",
|
|
67589
|
+
{
|
|
67590
|
+
style: {
|
|
67591
|
+
gap: "min(10px, 2%)",
|
|
67592
|
+
bottom: "min(36px, 10%)"
|
|
67593
|
+
},
|
|
67594
|
+
id: "vim-control-bar",
|
|
67595
|
+
className: "vim-control-bar vc-pointer-events-auto vc-flex-wrap vc-mx-2 vc-min-w-0 vc-absolute vc-left-0 vc-right-0 vc-z-20 vc-flex vc-items-center vc-justify-center transition-all",
|
|
67596
|
+
children: props.content.map(createSection$1)
|
|
67597
|
+
}
|
|
67598
|
+
);
|
|
67413
67599
|
}
|
|
67600
|
+
const controlBar = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
67601
|
+
__proto__: null,
|
|
67602
|
+
ControlBar,
|
|
67603
|
+
buttonBlueStyle,
|
|
67604
|
+
buttonDefaultStyle,
|
|
67605
|
+
buttonDisableStyle,
|
|
67606
|
+
buttonExpandStyle,
|
|
67607
|
+
createButton,
|
|
67608
|
+
createSection: createSection$1,
|
|
67609
|
+
sectionBlueStyle,
|
|
67610
|
+
sectionDefaultStyle,
|
|
67611
|
+
sectionNoPadStyle
|
|
67612
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
67414
67613
|
function getPointerState(viewer) {
|
|
67415
67614
|
const [mode, setMode] = React2.useState(viewer.inputs.pointerActive);
|
|
67416
67615
|
React2.useEffect(() => {
|
|
@@ -67472,52 +67671,6 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67472
67671
|
}
|
|
67473
67672
|
};
|
|
67474
67673
|
}
|
|
67475
|
-
function getSectionBoxState(viewer) {
|
|
67476
|
-
const sectionGizmo = viewer.gizmos.section;
|
|
67477
|
-
const first = React2.useRef(true);
|
|
67478
|
-
const [section, setSection] = React2.useState({
|
|
67479
|
-
clip: sectionGizmo.clip,
|
|
67480
|
-
active: sectionGizmo.visible && sectionGizmo.interactive
|
|
67481
|
-
});
|
|
67482
|
-
React2.useEffect(() => {
|
|
67483
|
-
const subSection = sectionGizmo.onStateChanged.subscribe(
|
|
67484
|
-
() => setSection({
|
|
67485
|
-
clip: sectionGizmo.clip,
|
|
67486
|
-
active: sectionGizmo.visible && sectionGizmo.interactive
|
|
67487
|
-
})
|
|
67488
|
-
);
|
|
67489
|
-
return () => subSection();
|
|
67490
|
-
}, []);
|
|
67491
|
-
const toggle = () => {
|
|
67492
|
-
ReactTooltip.hide();
|
|
67493
|
-
if (viewer.inputs.pointerActive === "rect") {
|
|
67494
|
-
viewer.inputs.pointerActive = viewer.inputs.pointerFallback;
|
|
67495
|
-
}
|
|
67496
|
-
const next = !(sectionGizmo.visible && sectionGizmo.interactive);
|
|
67497
|
-
sectionGizmo.interactive = next;
|
|
67498
|
-
sectionGizmo.visible = next;
|
|
67499
|
-
if (next && first.current) {
|
|
67500
|
-
sectionGizmo.clip = true;
|
|
67501
|
-
sectionGizmo.fitBox(viewer.renderer.getBoundingBox());
|
|
67502
|
-
first.current = false;
|
|
67503
|
-
}
|
|
67504
|
-
};
|
|
67505
|
-
return {
|
|
67506
|
-
clip: section.clip,
|
|
67507
|
-
active: section.active,
|
|
67508
|
-
set: setSection,
|
|
67509
|
-
toggle,
|
|
67510
|
-
hide: () => {
|
|
67511
|
-
sectionGizmo.visible = false;
|
|
67512
|
-
sectionGizmo.interactive = false;
|
|
67513
|
-
},
|
|
67514
|
-
reset: () => sectionGizmo.fitBox(viewer.renderer.getBoundingBox()),
|
|
67515
|
-
shrinkToSelection: () => sectionGizmo.fitBox(viewer.selection.getBoundingBox()),
|
|
67516
|
-
toggleClip: () => {
|
|
67517
|
-
sectionGizmo.clip = !section.clip;
|
|
67518
|
-
}
|
|
67519
|
-
};
|
|
67520
|
-
}
|
|
67521
67674
|
function pointerToCursor(pointer) {
|
|
67522
67675
|
switch (pointer) {
|
|
67523
67676
|
case "orbit":
|
|
@@ -67569,13 +67722,13 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67569
67722
|
const sub2 = this._viewer.inputs.onPointerOverrideChanged.subscribe(
|
|
67570
67723
|
() => this._updateCursor()
|
|
67571
67724
|
);
|
|
67572
|
-
const sub3 = this._viewer.gizmos.
|
|
67573
|
-
if (!this._viewer.gizmos.
|
|
67725
|
+
const sub3 = this._viewer.gizmos.sectionBox.onStateChanged.subscribe(() => {
|
|
67726
|
+
if (!this._viewer.gizmos.sectionBox.visible) {
|
|
67574
67727
|
this._boxHover = false;
|
|
67575
67728
|
this._updateCursor();
|
|
67576
67729
|
}
|
|
67577
67730
|
});
|
|
67578
|
-
const sub4 = this._viewer.gizmos.
|
|
67731
|
+
const sub4 = this._viewer.gizmos.sectionBox.onHover.subscribe((hover) => {
|
|
67579
67732
|
this._boxHover = hover;
|
|
67580
67733
|
this._updateCursor();
|
|
67581
67734
|
});
|
|
@@ -67641,6 +67794,7 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67641
67794
|
const elementIds = {
|
|
67642
67795
|
// Sections
|
|
67643
67796
|
sectionCamera: "controlBar.sectionCamera",
|
|
67797
|
+
sectionActions: "controlBar.sectionActions",
|
|
67644
67798
|
sectionTools: "controlBar.sectionTools",
|
|
67645
67799
|
sectionSettings: "controlBar.sectionSettings",
|
|
67646
67800
|
sectionMeasure: "controlBar.sectionMeasure",
|
|
@@ -67651,46 +67805,96 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67651
67805
|
buttonCameraPan: "controlBar.camera.pan",
|
|
67652
67806
|
buttonCameraZoom: "controlBar.camera.zoom",
|
|
67653
67807
|
buttonCameraZoomWindow: "controlBar.camera.zoomWindow",
|
|
67654
|
-
buttonCameraZoomToFit: "controlBar.camera.zoomToFit",
|
|
67655
67808
|
// Settings buttons
|
|
67656
67809
|
buttonProjectInspector: "controlBar.projectInspector",
|
|
67657
67810
|
buttonSettings: "controlBar.settings",
|
|
67658
67811
|
buttonHelp: "controlBar.help",
|
|
67659
67812
|
buttonMaximize: "controlBar.maximize",
|
|
67813
|
+
// Action Buttons
|
|
67814
|
+
buttonToggleIsolation: "controlBar.action.toggleIsolation",
|
|
67815
|
+
buttonZoomToFit: "controlBar.action.zoomToFit",
|
|
67660
67816
|
// Tools buttons
|
|
67661
67817
|
buttonSectionBox: "controlBar.sectionBox",
|
|
67662
67818
|
buttonMeasure: "controlBar.measure",
|
|
67663
|
-
buttonToggleIsolation: "controlBar.toggleIsolation",
|
|
67664
|
-
// Measure buttons
|
|
67665
|
-
buttonMeasureDelete: "controlBar.measure.delete",
|
|
67666
|
-
buttonMeasureDone: "controlBar.measure.done",
|
|
67667
67819
|
// Section box buttons
|
|
67668
|
-
|
|
67820
|
+
buttonSectionBoxEnable: "controlBar.sectionBox.enable",
|
|
67821
|
+
buttonSectionBoxVisible: "controlBar.sectionBox.visible",
|
|
67669
67822
|
buttonSectionBoxShrinkToSelection: "controlBar.sectionBox.shrinkToSelection",
|
|
67823
|
+
buttonSectionBoxAuto: "controlBar.sectionBox.auto",
|
|
67670
67824
|
buttonSectionBoxClip: "controlBar.sectionBox.clip",
|
|
67671
|
-
|
|
67672
|
-
buttonSectionBoxDone: "controlBar.sectionBox.done"
|
|
67825
|
+
buttonSectionBoxSettings: "controlBar.sectionBox.settings"
|
|
67673
67826
|
};
|
|
67674
|
-
function
|
|
67675
|
-
|
|
67676
|
-
|
|
67677
|
-
|
|
67678
|
-
|
|
67679
|
-
|
|
67680
|
-
|
|
67681
|
-
|
|
67682
|
-
|
|
67683
|
-
|
|
67684
|
-
|
|
67685
|
-
|
|
67686
|
-
|
|
67827
|
+
function controlBarSectionBox(section, hasSelection) {
|
|
67828
|
+
return {
|
|
67829
|
+
id: elementIds.sectionSectionBox,
|
|
67830
|
+
style: section.getEnable() ? sectionNoPadStyle : sectionDefaultStyle,
|
|
67831
|
+
//enable: () => section.getEnable(),
|
|
67832
|
+
buttons: [
|
|
67833
|
+
{
|
|
67834
|
+
id: elementIds.buttonSectionBoxEnable,
|
|
67835
|
+
tip: "Enable Section Box",
|
|
67836
|
+
isOn: () => section.getEnable(),
|
|
67837
|
+
style: (on) => buttonExpandStyle(on),
|
|
67838
|
+
action: () => section.setEnable(!section.getEnable()),
|
|
67839
|
+
icon: sectionBox
|
|
67840
|
+
},
|
|
67841
|
+
{
|
|
67842
|
+
id: elementIds.buttonSectionBoxShrinkToSelection,
|
|
67843
|
+
tip: "Fit Section",
|
|
67844
|
+
enabled: () => section.getEnable(),
|
|
67845
|
+
isOn: () => hasSelection,
|
|
67846
|
+
style: (on) => buttonDisableStyle(on),
|
|
67847
|
+
action: () => section.sectionSelection(),
|
|
67848
|
+
icon: sectionBoxShrink
|
|
67849
|
+
},
|
|
67850
|
+
{
|
|
67851
|
+
id: elementIds.buttonSectionBoxClip,
|
|
67852
|
+
tip: "Reset Section",
|
|
67853
|
+
enabled: () => section.getEnable(),
|
|
67854
|
+
style: (on) => buttonDefaultStyle(on),
|
|
67855
|
+
action: () => section.sectionReset(),
|
|
67856
|
+
icon: sectionBoxReset
|
|
67857
|
+
},
|
|
67858
|
+
{
|
|
67859
|
+
id: elementIds.buttonSectionBoxVisible,
|
|
67860
|
+
tip: "Show Section Box",
|
|
67861
|
+
enabled: () => section.getEnable(),
|
|
67862
|
+
isOn: () => section.getVisible(),
|
|
67863
|
+
style: (on) => buttonDefaultStyle(on),
|
|
67864
|
+
action: () => section.setVisible(!section.getVisible()),
|
|
67865
|
+
icon: visible
|
|
67866
|
+
},
|
|
67867
|
+
{
|
|
67868
|
+
id: elementIds.buttonSectionBoxAuto,
|
|
67869
|
+
tip: "Auto Section",
|
|
67870
|
+
enabled: () => section.getEnable(),
|
|
67871
|
+
isOn: () => section.getAuto(),
|
|
67872
|
+
style: (on) => buttonDefaultStyle(on),
|
|
67873
|
+
action: () => section.setAuto(!section.getAuto()),
|
|
67874
|
+
icon: sectionBoxAuto
|
|
67875
|
+
},
|
|
67876
|
+
{
|
|
67877
|
+
id: elementIds.buttonSectionBoxSettings,
|
|
67878
|
+
tip: "Section Settings",
|
|
67879
|
+
enabled: () => section.getEnable(),
|
|
67880
|
+
isOn: () => section.getOffsetVisible(),
|
|
67881
|
+
style: (on) => buttonDefaultStyle(on),
|
|
67882
|
+
action: () => section.setOffsetsVisible(!section.getOffsetVisible()),
|
|
67883
|
+
icon: slidersHoriz
|
|
67884
|
+
}
|
|
67885
|
+
]
|
|
67886
|
+
};
|
|
67887
|
+
}
|
|
67888
|
+
function controlBarPointer(viewer, camera2, settings2, section) {
|
|
67889
|
+
const pointer = getPointerState(viewer);
|
|
67890
|
+
return {
|
|
67687
67891
|
id: elementIds.sectionCamera,
|
|
67688
|
-
enable: () => anyUiCursorButton(
|
|
67892
|
+
enable: () => anyUiCursorButton(settings2),
|
|
67689
67893
|
style: sectionDefaultStyle,
|
|
67690
67894
|
buttons: [
|
|
67691
67895
|
{
|
|
67692
67896
|
id: elementIds.buttonCameraOrbit,
|
|
67693
|
-
enabled: () => isTrue(
|
|
67897
|
+
enabled: () => isTrue(settings2.ui.orbit),
|
|
67694
67898
|
tip: "Orbit",
|
|
67695
67899
|
action: () => pointer.onButton("orbit"),
|
|
67696
67900
|
icon: orbit,
|
|
@@ -67699,7 +67903,7 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67699
67903
|
},
|
|
67700
67904
|
{
|
|
67701
67905
|
id: elementIds.buttonCameraLook,
|
|
67702
|
-
enabled: () => isTrue(
|
|
67906
|
+
enabled: () => isTrue(settings2.ui.lookAround),
|
|
67703
67907
|
tip: "Look Around",
|
|
67704
67908
|
action: () => pointer.onButton("look"),
|
|
67705
67909
|
icon: look,
|
|
@@ -67708,7 +67912,7 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67708
67912
|
},
|
|
67709
67913
|
{
|
|
67710
67914
|
id: elementIds.buttonCameraPan,
|
|
67711
|
-
enabled: () => isTrue(
|
|
67915
|
+
enabled: () => isTrue(settings2.ui.pan),
|
|
67712
67916
|
tip: "Pan",
|
|
67713
67917
|
action: () => pointer.onButton("pan"),
|
|
67714
67918
|
icon: pan,
|
|
@@ -67717,7 +67921,7 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67717
67921
|
},
|
|
67718
67922
|
{
|
|
67719
67923
|
id: elementIds.buttonCameraZoom,
|
|
67720
|
-
enabled: () => isTrue(
|
|
67924
|
+
enabled: () => isTrue(settings2.ui.zoom),
|
|
67721
67925
|
tip: "Zoom",
|
|
67722
67926
|
action: () => pointer.onButton("zoom"),
|
|
67723
67927
|
icon: zoom,
|
|
@@ -67726,59 +67930,87 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67726
67930
|
},
|
|
67727
67931
|
{
|
|
67728
67932
|
id: elementIds.buttonCameraZoomWindow,
|
|
67729
|
-
enabled: () => isTrue(
|
|
67933
|
+
enabled: () => isTrue(settings2.ui.zoomWindow),
|
|
67730
67934
|
tip: "Zoom Window",
|
|
67731
67935
|
action: () => {
|
|
67732
67936
|
pointer.onButton("rect");
|
|
67733
|
-
section.hide();
|
|
67734
67937
|
},
|
|
67735
67938
|
icon: frameRect,
|
|
67736
67939
|
isOn: () => pointer.mode === "rect",
|
|
67737
67940
|
style: buttonDefaultStyle
|
|
67738
|
-
}
|
|
67941
|
+
}
|
|
67942
|
+
]
|
|
67943
|
+
};
|
|
67944
|
+
}
|
|
67945
|
+
function controlBarActions(camera2, settings2, isolation, measure$1) {
|
|
67946
|
+
return {
|
|
67947
|
+
id: elementIds.sectionActions,
|
|
67948
|
+
enable: () => true,
|
|
67949
|
+
style: sectionDefaultStyle,
|
|
67950
|
+
buttons: [
|
|
67739
67951
|
{
|
|
67740
|
-
id: elementIds.
|
|
67741
|
-
enabled: () => isTrue(
|
|
67952
|
+
id: elementIds.buttonZoomToFit,
|
|
67953
|
+
enabled: () => isTrue(settings2.ui.zoomToFit),
|
|
67742
67954
|
tip: "Zoom to Fit",
|
|
67743
|
-
action: () =>
|
|
67955
|
+
action: () => camera2.frameContext(),
|
|
67744
67956
|
icon: frameSelection,
|
|
67745
67957
|
isOn: () => false,
|
|
67746
67958
|
style: buttonDefaultStyle
|
|
67959
|
+
},
|
|
67960
|
+
{
|
|
67961
|
+
id: elementIds.buttonToggleIsolation,
|
|
67962
|
+
enabled: () => isTrue(settings2.ui.toggleIsolation),
|
|
67963
|
+
tip: "Toggle Isolation",
|
|
67964
|
+
action: () => isolation.toggle("controlBar"),
|
|
67965
|
+
icon: toggleIsolation,
|
|
67966
|
+
style: buttonDefaultStyle
|
|
67967
|
+
},
|
|
67968
|
+
{
|
|
67969
|
+
id: elementIds.buttonMeasure,
|
|
67970
|
+
enabled: () => isTrue(settings2.ui.measuringMode),
|
|
67971
|
+
isOn: () => measure$1.active,
|
|
67972
|
+
tip: "Measuring Mode",
|
|
67973
|
+
action: () => measure$1.toggle(),
|
|
67974
|
+
icon: measure,
|
|
67975
|
+
style: buttonDefaultStyle
|
|
67747
67976
|
}
|
|
67748
67977
|
]
|
|
67749
67978
|
};
|
|
67750
|
-
|
|
67979
|
+
}
|
|
67980
|
+
function controlBarSettings(modal, side, settings$1) {
|
|
67981
|
+
const fullScreen = getFullScreenState();
|
|
67982
|
+
return {
|
|
67751
67983
|
id: elementIds.sectionSettings,
|
|
67752
|
-
enable: () => anyUiSettingButton(
|
|
67984
|
+
enable: () => anyUiSettingButton(settings$1),
|
|
67753
67985
|
style: sectionDefaultStyle,
|
|
67754
67986
|
buttons: [
|
|
67755
67987
|
{
|
|
67756
67988
|
id: elementIds.buttonProjectInspector,
|
|
67757
|
-
enabled: () => isTrue(
|
|
67989
|
+
enabled: () => isTrue(settings$1.ui.projectInspector) && (isTrue(settings$1.ui.bimTreePanel) || isTrue(settings$1.ui.bimInfoPanel)),
|
|
67758
67990
|
tip: "Project Inspector",
|
|
67759
|
-
action: () =>
|
|
67991
|
+
action: () => side.toggleContent("bim"),
|
|
67760
67992
|
icon: treeView,
|
|
67761
67993
|
style: buttonDefaultStyle
|
|
67762
67994
|
},
|
|
67763
67995
|
{
|
|
67764
67996
|
id: elementIds.buttonSettings,
|
|
67765
|
-
enabled: () => isTrue(
|
|
67997
|
+
enabled: () => isTrue(settings$1.ui.settings),
|
|
67766
67998
|
tip: "Settings",
|
|
67767
|
-
action: () =>
|
|
67999
|
+
action: () => side.toggleContent("settings"),
|
|
67768
68000
|
icon: settings,
|
|
67769
68001
|
style: buttonDefaultStyle
|
|
67770
68002
|
},
|
|
67771
68003
|
{
|
|
67772
68004
|
id: elementIds.buttonHelp,
|
|
67773
|
-
enabled: () => isTrue(
|
|
68005
|
+
enabled: () => isTrue(settings$1.ui.help),
|
|
67774
68006
|
tip: "Help",
|
|
67775
|
-
action: () =>
|
|
68007
|
+
action: () => modal.help(true),
|
|
67776
68008
|
icon: help,
|
|
67777
68009
|
style: buttonDefaultStyle
|
|
67778
68010
|
},
|
|
67779
68011
|
{
|
|
67780
68012
|
id: elementIds.buttonMaximize,
|
|
67781
|
-
enabled: () => isTrue(
|
|
68013
|
+
enabled: () => isTrue(settings$1.ui.maximise) && settings$1.capacity.canGoFullScreen,
|
|
67782
68014
|
tip: fullScreen.get() ? "Minimize" : "Fullscreen",
|
|
67783
68015
|
action: () => fullScreen.toggle(),
|
|
67784
68016
|
icon: fullScreen.get() ? minimize : fullsScreen,
|
|
@@ -67786,112 +68018,23 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
67786
68018
|
}
|
|
67787
68019
|
]
|
|
67788
68020
|
};
|
|
67789
|
-
const sectionBoxSection = {
|
|
67790
|
-
id: elementIds.sectionSectionBox,
|
|
67791
|
-
enable: () => !measure$1.active && section.active,
|
|
67792
|
-
style: sectionBlueStyle,
|
|
67793
|
-
buttons: [
|
|
67794
|
-
{
|
|
67795
|
-
id: elementIds.buttonSectionBoxReset,
|
|
67796
|
-
tip: "Reset Section Box",
|
|
67797
|
-
action: () => section.reset(),
|
|
67798
|
-
icon: sectionBoxReset,
|
|
67799
|
-
style: buttonBlueStyle
|
|
67800
|
-
},
|
|
67801
|
-
{
|
|
67802
|
-
id: elementIds.buttonSectionBoxShrinkToSelection,
|
|
67803
|
-
tip: "Shrink to Selection",
|
|
67804
|
-
action: () => section.shrinkToSelection(),
|
|
67805
|
-
icon: sectionBoxShrink,
|
|
67806
|
-
style: buttonBlueStyle
|
|
67807
|
-
},
|
|
67808
|
-
{
|
|
67809
|
-
id: elementIds.buttonSectionBoxClip,
|
|
67810
|
-
tip: section.clip ? "Ignore Section Box" : "Clip Section Box",
|
|
67811
|
-
action: () => section.toggleClip(),
|
|
67812
|
-
icon: section.clip ? sectionBoxIgnore : sectionBoxClip,
|
|
67813
|
-
style: buttonBlueStyle
|
|
67814
|
-
},
|
|
67815
|
-
{
|
|
67816
|
-
id: elementIds.buttonSectionBoxDone,
|
|
67817
|
-
tip: "Done",
|
|
67818
|
-
action: () => section.toggle(),
|
|
67819
|
-
icon: checkmark,
|
|
67820
|
-
style: buttonBlueStyle
|
|
67821
|
-
}
|
|
67822
|
-
]
|
|
67823
|
-
};
|
|
67824
|
-
const measureSection = {
|
|
67825
|
-
id: elementIds.sectionMeasure,
|
|
67826
|
-
enable: () => measure$1.active && !section.active,
|
|
67827
|
-
style: sectionBlueStyle,
|
|
67828
|
-
buttons: [
|
|
67829
|
-
{
|
|
67830
|
-
id: elementIds.buttonMeasureDelete,
|
|
67831
|
-
tip: "Delete",
|
|
67832
|
-
action: () => measure$1.clear(),
|
|
67833
|
-
icon: trash,
|
|
67834
|
-
style: buttonBlueStyle
|
|
67835
|
-
},
|
|
67836
|
-
{
|
|
67837
|
-
id: elementIds.buttonMeasureDone,
|
|
67838
|
-
tip: "Done",
|
|
67839
|
-
action: () => measure$1.toggle(),
|
|
67840
|
-
icon: checkmark,
|
|
67841
|
-
style: buttonBlueStyle
|
|
67842
|
-
}
|
|
67843
|
-
]
|
|
67844
|
-
};
|
|
67845
|
-
const toolSections = {
|
|
67846
|
-
id: elementIds.sectionTools,
|
|
67847
|
-
enable: () => anyUiToolButton(props.settings) && !measure$1.active && !section.active,
|
|
67848
|
-
style: measure$1.active || section.active ? sectionBlueStyle : sectionDefaultStyle,
|
|
67849
|
-
buttons: [
|
|
67850
|
-
{
|
|
67851
|
-
id: elementIds.buttonSectionBox,
|
|
67852
|
-
enabled: () => isTrue(props.settings.ui.sectioningMode),
|
|
67853
|
-
tip: "Sectioning Mode",
|
|
67854
|
-
action: () => section.toggle(),
|
|
67855
|
-
icon: sectionBox,
|
|
67856
|
-
style: buttonDefaultStyle
|
|
67857
|
-
},
|
|
67858
|
-
{
|
|
67859
|
-
id: elementIds.buttonMeasure,
|
|
67860
|
-
enabled: () => isTrue(props.settings.ui.measuringMode),
|
|
67861
|
-
tip: "Measuring Mode",
|
|
67862
|
-
action: () => measure$1.toggle(),
|
|
67863
|
-
icon: measure,
|
|
67864
|
-
style: buttonDefaultStyle
|
|
67865
|
-
},
|
|
67866
|
-
{
|
|
67867
|
-
id: elementIds.buttonToggleIsolation,
|
|
67868
|
-
enabled: () => isTrue(props.settings.ui.toggleIsolation),
|
|
67869
|
-
tip: "Toggle Isolation",
|
|
67870
|
-
action: () => props.isolation.toggle("controlBar"),
|
|
67871
|
-
icon: toggleIsolation,
|
|
67872
|
-
style: buttonDefaultStyle
|
|
67873
|
-
}
|
|
67874
|
-
]
|
|
67875
|
-
};
|
|
67876
|
-
let controlBar2 = [cameraSection, toolSections, measureSection, sectionBoxSection, settingsSection];
|
|
67877
|
-
controlBar2 = ((_a2 = props.customization) == null ? void 0 : _a2.call(props, controlBar2)) ?? controlBar2;
|
|
67878
|
-
return createBar(controlBar2);
|
|
67879
68021
|
}
|
|
67880
|
-
function
|
|
67881
|
-
|
|
67882
|
-
|
|
67883
|
-
|
|
67884
|
-
|
|
68022
|
+
function useControlBar(viewer, camera2, modal, side, isolation, cursor, settings2, section, customization) {
|
|
68023
|
+
const measure2 = getMeasureState(viewer, cursor);
|
|
68024
|
+
const pointerSection = controlBarPointer(viewer, camera2, settings2);
|
|
68025
|
+
const actionSection = controlBarActions(camera2, settings2, isolation, measure2);
|
|
68026
|
+
const sectionBoxSection = controlBarSectionBox(section, viewer.selection.count > 0);
|
|
68027
|
+
const settingsSection = controlBarSettings(modal, side, settings2);
|
|
68028
|
+
let controlBarSections = [
|
|
68029
|
+
pointerSection,
|
|
68030
|
+
actionSection,
|
|
68031
|
+
sectionBoxSection,
|
|
68032
|
+
// Optional section
|
|
68033
|
+
settingsSection
|
|
68034
|
+
];
|
|
68035
|
+
controlBarSections = (customization == null ? void 0 : customization(controlBarSections)) ?? controlBarSections;
|
|
68036
|
+
return controlBarSections;
|
|
67885
68037
|
}
|
|
67886
|
-
const controlBar = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
67887
|
-
__proto__: null,
|
|
67888
|
-
ControlBar,
|
|
67889
|
-
buttonBlueStyle,
|
|
67890
|
-
buttonDefaultStyle,
|
|
67891
|
-
elementIds,
|
|
67892
|
-
sectionBlueStyle,
|
|
67893
|
-
sectionDefaultStyle
|
|
67894
|
-
}, Symbol.toStringTag, { value: "Module" }));
|
|
67895
68038
|
function RestOfScreen(props) {
|
|
67896
68039
|
const [, setVersion] = React2.useState(0);
|
|
67897
68040
|
const resizeObserver = React2.useRef();
|
|
@@ -71880,23 +72023,23 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
71880
72023
|
const viewer = props.viewer;
|
|
71881
72024
|
const camera2 = props.camera;
|
|
71882
72025
|
const [section, setSection] = React2.useState({
|
|
71883
|
-
visible: viewer.gizmos.
|
|
71884
|
-
clip: viewer.gizmos.
|
|
72026
|
+
visible: viewer.gizmos.sectionBox.visible,
|
|
72027
|
+
clip: viewer.gizmos.sectionBox.clip
|
|
71885
72028
|
});
|
|
71886
72029
|
const isClipping = () => {
|
|
71887
|
-
return !viewer.gizmos.
|
|
72030
|
+
return !viewer.gizmos.sectionBox.box.containsBox(viewer.renderer.getBoundingBox());
|
|
71888
72031
|
};
|
|
71889
72032
|
const [clipping, setClipping] = React2.useState(isClipping());
|
|
71890
72033
|
const [, setVersion] = React2.useState(0);
|
|
71891
72034
|
const hidden2 = props.isolation.isActive();
|
|
71892
72035
|
React2.useEffect(() => {
|
|
71893
|
-
const subState = viewer.gizmos.
|
|
72036
|
+
const subState = viewer.gizmos.sectionBox.onStateChanged.subscribe(() => {
|
|
71894
72037
|
setSection({
|
|
71895
|
-
visible: viewer.gizmos.
|
|
71896
|
-
clip: viewer.gizmos.
|
|
72038
|
+
visible: viewer.gizmos.sectionBox.visible,
|
|
72039
|
+
clip: viewer.gizmos.sectionBox.clip
|
|
71897
72040
|
});
|
|
71898
72041
|
});
|
|
71899
|
-
const subConfirm = viewer.gizmos.
|
|
72042
|
+
const subConfirm = viewer.gizmos.sectionBox.onBoxConfirm.subscribe(
|
|
71900
72043
|
() => setClipping(isClipping())
|
|
71901
72044
|
);
|
|
71902
72045
|
props.isolation.onChanged.subscribe(() => setVersion((v) => v + 1));
|
|
@@ -71948,10 +72091,10 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
71948
72091
|
e.stopPropagation();
|
|
71949
72092
|
};
|
|
71950
72093
|
const onSectionToggleBtn = (e) => {
|
|
71951
|
-
viewer.gizmos.
|
|
72094
|
+
viewer.gizmos.sectionBox.clip = !viewer.gizmos.sectionBox.clip;
|
|
71952
72095
|
};
|
|
71953
72096
|
const onSectionResetBtn = (e) => {
|
|
71954
|
-
viewer.gizmos.
|
|
72097
|
+
viewer.gizmos.sectionBox.fitBox(viewer.renderer.getBoundingBox());
|
|
71955
72098
|
e.stopPropagation();
|
|
71956
72099
|
};
|
|
71957
72100
|
const onMeasureDeleteBtn = (e) => {
|
|
@@ -71960,7 +72103,7 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
71960
72103
|
const onFitSectionToSelectionBtn = (e) => {
|
|
71961
72104
|
const box = viewer.selection.getBoundingBox();
|
|
71962
72105
|
if (box) {
|
|
71963
|
-
viewer.gizmos.
|
|
72106
|
+
viewer.gizmos.sectionBox.fitBox(box);
|
|
71964
72107
|
}
|
|
71965
72108
|
};
|
|
71966
72109
|
const createButton2 = (button) => {
|
|
@@ -74918,7 +75061,7 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
74918
75061
|
frameSelection(duration = 1) {
|
|
74919
75062
|
if (this._viewer.selection.count === 0) return;
|
|
74920
75063
|
const box = this._viewer.selection.getBoundingBox();
|
|
74921
|
-
if (box && this._viewer.gizmos.
|
|
75064
|
+
if (box && this._viewer.gizmos.sectionBox.box.intersectsBox(box)) {
|
|
74922
75065
|
const movement = duration === 0 ? this._viewer.camera.snap() : this._viewer.camera.lerp(duration);
|
|
74923
75066
|
movement.frame(box);
|
|
74924
75067
|
}
|
|
@@ -75567,6 +75710,223 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
75567
75710
|
component.classList.remove("behind");
|
|
75568
75711
|
}
|
|
75569
75712
|
}
|
|
75713
|
+
function SectionBoxPanel(props) {
|
|
75714
|
+
const [panelPosition, setPanelPosition] = React2.useState({
|
|
75715
|
+
top: 0,
|
|
75716
|
+
left: 0
|
|
75717
|
+
});
|
|
75718
|
+
const panelRef = React2.useRef(null);
|
|
75719
|
+
React2.useLayoutEffect(() => {
|
|
75720
|
+
const updatePosition = () => {
|
|
75721
|
+
const { top, left } = computePosition(panelRef);
|
|
75722
|
+
setPanelPosition({ top, left });
|
|
75723
|
+
};
|
|
75724
|
+
updatePosition();
|
|
75725
|
+
let resizeObserver = null;
|
|
75726
|
+
if (panelRef.current) {
|
|
75727
|
+
resizeObserver = new ResizeObserver(updatePosition);
|
|
75728
|
+
resizeObserver.observe(panelRef.current.parentElement);
|
|
75729
|
+
}
|
|
75730
|
+
return () => {
|
|
75731
|
+
if (resizeObserver) {
|
|
75732
|
+
resizeObserver.disconnect();
|
|
75733
|
+
}
|
|
75734
|
+
};
|
|
75735
|
+
}, [props.state.getOffsetVisible()]);
|
|
75736
|
+
if (!props.state.getOffsetVisible()) return null;
|
|
75737
|
+
const renderField = (id2, label, field) => /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "vim-sectionbox-offsets-entry vc-text-xs vc-flex vc-items-center vc-justify-center vc-justify-between vc-my-2", children: [
|
|
75738
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("dt", { className: "vc-w-1/2 vc-inline", children: label }),
|
|
75739
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("dd", { className: "vc-w-1/3 vc-inline", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
75740
|
+
"input",
|
|
75741
|
+
{
|
|
75742
|
+
id: id2,
|
|
75743
|
+
type: "text",
|
|
75744
|
+
value: props.state.getText(field),
|
|
75745
|
+
onChange: (e) => props.state.setText(field, e.target.value),
|
|
75746
|
+
className: "vc-border vc-inline vc-border-gray-300 vc-py-1 vc-w-full vc-px-1",
|
|
75747
|
+
onBlur: () => props.state.validate(field)
|
|
75748
|
+
}
|
|
75749
|
+
) })
|
|
75750
|
+
] });
|
|
75751
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
75752
|
+
"div",
|
|
75753
|
+
{
|
|
75754
|
+
className: "vc-fixed vc-inset-0 vc-flex vc-pointer-events-none",
|
|
75755
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
75756
|
+
"div",
|
|
75757
|
+
{
|
|
75758
|
+
ref: panelRef,
|
|
75759
|
+
style: { position: "absolute", top: panelPosition.top, left: panelPosition.left, width: "min(200px, 60%)" },
|
|
75760
|
+
className: "vim-sectionbox-offsets vc-pointer-events-auto vc-bg-white vc-relative",
|
|
75761
|
+
onClick: (e) => e.stopPropagation(),
|
|
75762
|
+
children: [
|
|
75763
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "vim-sectionbox-header vc-px-2 vc-bg-gray-light vc-flex vc-items-center vc-justify-between ", children: [
|
|
75764
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "vc-flex vim-sectionbox-offsets-title vc-title vc-block", children: "Section Box Offsets" }),
|
|
75765
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
75766
|
+
"button",
|
|
75767
|
+
{
|
|
75768
|
+
className: "vc-flex vc-border-none vc-bg-transparent vc-text-sm vc-cursor-pointer",
|
|
75769
|
+
onClick: () => props.state.setOffsetsVisible(false),
|
|
75770
|
+
children: close({ height: 12, width: 12, fill: "currentColor" })
|
|
75771
|
+
}
|
|
75772
|
+
)
|
|
75773
|
+
] }),
|
|
75774
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("dl", { className: "vc-text-xl vc-text-gray-darker vc-mb-2 vc-mx-2 ", children: [
|
|
75775
|
+
renderField("topOffset", "Top Offset", "topOffset"),
|
|
75776
|
+
renderField("sideOffseet", "Side Offset", "sideOffset"),
|
|
75777
|
+
renderField("bottomOffset", "Bottom Offset", "bottomOffset")
|
|
75778
|
+
] })
|
|
75779
|
+
]
|
|
75780
|
+
}
|
|
75781
|
+
)
|
|
75782
|
+
}
|
|
75783
|
+
);
|
|
75784
|
+
}
|
|
75785
|
+
function computePosition(panelRef) {
|
|
75786
|
+
const origin = document.getElementById("vim-control-bar");
|
|
75787
|
+
if (origin && panelRef.current) {
|
|
75788
|
+
const originRect = origin.getBoundingClientRect();
|
|
75789
|
+
const panelRect = panelRef.current.getBoundingClientRect();
|
|
75790
|
+
let left = originRect.left + originRect.width / 2 - panelRect.width / 2;
|
|
75791
|
+
let top = originRect.top - 10 - panelRect.height;
|
|
75792
|
+
if (top < 10) {
|
|
75793
|
+
top = originRect.bottom + 10;
|
|
75794
|
+
}
|
|
75795
|
+
if (left < 10) {
|
|
75796
|
+
left = 10;
|
|
75797
|
+
}
|
|
75798
|
+
if (left + panelRect.width > window.innerWidth - 10) {
|
|
75799
|
+
left = window.innerWidth - panelRect.width - 10;
|
|
75800
|
+
}
|
|
75801
|
+
return { top, left };
|
|
75802
|
+
}
|
|
75803
|
+
return { top: 0, left: 0 };
|
|
75804
|
+
}
|
|
75805
|
+
function addBox(b1, b2) {
|
|
75806
|
+
const r = b1.clone();
|
|
75807
|
+
r.min.x += b2.min.x;
|
|
75808
|
+
r.min.y += b2.min.y;
|
|
75809
|
+
r.min.z += b2.min.z;
|
|
75810
|
+
r.max.x += b2.max.x;
|
|
75811
|
+
r.max.y += b2.max.y;
|
|
75812
|
+
r.max.z += b2.max.z;
|
|
75813
|
+
return r;
|
|
75814
|
+
}
|
|
75815
|
+
function useSectionBox(adapter) {
|
|
75816
|
+
const [enable, setEnable] = React2.useState(false);
|
|
75817
|
+
const [visible2, setVisible] = React2.useState(false);
|
|
75818
|
+
const [offsetsVisible, setOffsetsVisible] = React2.useState(false);
|
|
75819
|
+
const [auto, setAuto] = React2.useState(false);
|
|
75820
|
+
const [offsets, setOffsets] = React2.useState({
|
|
75821
|
+
topOffset: "1",
|
|
75822
|
+
sideOffset: "1",
|
|
75823
|
+
bottomOffset: "1"
|
|
75824
|
+
});
|
|
75825
|
+
const boxRef = React2.useRef(adapter.getBox());
|
|
75826
|
+
const offsetBox = React2.useMemo(() => offsetsToBox3(offsets), [offsets]);
|
|
75827
|
+
React2.useEffect(() => {
|
|
75828
|
+
setVisible(enable);
|
|
75829
|
+
setAuto(false);
|
|
75830
|
+
setOffsetsVisible(false);
|
|
75831
|
+
setOffsets({
|
|
75832
|
+
topOffset: "1",
|
|
75833
|
+
sideOffset: "1",
|
|
75834
|
+
bottomOffset: "1"
|
|
75835
|
+
});
|
|
75836
|
+
void resetBox();
|
|
75837
|
+
}, [enable]);
|
|
75838
|
+
React2.useEffect(() => {
|
|
75839
|
+
if (auto) sectionSelection();
|
|
75840
|
+
return auto ? adapter.onSelectionChanged.sub(sectionSelection) : () => {
|
|
75841
|
+
};
|
|
75842
|
+
}, [auto]);
|
|
75843
|
+
React2.useEffect(() => {
|
|
75844
|
+
setBox(boxRef.current);
|
|
75845
|
+
}, [offsets]);
|
|
75846
|
+
React2.useEffect(() => {
|
|
75847
|
+
adapter.setVisible(visible2);
|
|
75848
|
+
}, [visible2]);
|
|
75849
|
+
const setText = (field, value) => {
|
|
75850
|
+
const result = sanitize(value, false);
|
|
75851
|
+
if (result !== void 0) {
|
|
75852
|
+
setOffsets((prev) => ({ ...prev, [field]: result }));
|
|
75853
|
+
}
|
|
75854
|
+
};
|
|
75855
|
+
const validate = (field) => {
|
|
75856
|
+
const result = sanitize(offsets[field], true);
|
|
75857
|
+
if (result !== void 0) {
|
|
75858
|
+
setOffsets((prev) => ({ ...prev, [field]: result }));
|
|
75859
|
+
}
|
|
75860
|
+
};
|
|
75861
|
+
const setBox = (baseBox) => {
|
|
75862
|
+
boxRef.current = baseBox;
|
|
75863
|
+
const newBox = addBox(baseBox, offsetBox);
|
|
75864
|
+
adapter.fitBox(newBox);
|
|
75865
|
+
};
|
|
75866
|
+
const sectionSelection = async () => {
|
|
75867
|
+
try {
|
|
75868
|
+
const box = await adapter.getSelectionBox() ?? await adapter.getRendererBox();
|
|
75869
|
+
setBox(box);
|
|
75870
|
+
} catch (e) {
|
|
75871
|
+
console.error(e);
|
|
75872
|
+
}
|
|
75873
|
+
};
|
|
75874
|
+
const resetBox = async () => {
|
|
75875
|
+
const box = await adapter.getRendererBox();
|
|
75876
|
+
setBox(box);
|
|
75877
|
+
};
|
|
75878
|
+
return {
|
|
75879
|
+
setEnable,
|
|
75880
|
+
getEnable: () => enable,
|
|
75881
|
+
getVisible: () => visible2,
|
|
75882
|
+
setVisible,
|
|
75883
|
+
sectionSelection,
|
|
75884
|
+
sectionReset: resetBox,
|
|
75885
|
+
getOffsetVisible: () => offsetsVisible,
|
|
75886
|
+
setOffsetsVisible,
|
|
75887
|
+
getText: (field) => offsets[field],
|
|
75888
|
+
setText,
|
|
75889
|
+
getAuto: () => auto,
|
|
75890
|
+
setAuto,
|
|
75891
|
+
validate
|
|
75892
|
+
};
|
|
75893
|
+
}
|
|
75894
|
+
const sanitize = (value, strict) => {
|
|
75895
|
+
if (!strict) {
|
|
75896
|
+
if (value === "" || value === "-") return value;
|
|
75897
|
+
}
|
|
75898
|
+
const num = parseFloat(value);
|
|
75899
|
+
if (isNaN(num)) {
|
|
75900
|
+
return strict ? "1" : void 0;
|
|
75901
|
+
}
|
|
75902
|
+
return String(num);
|
|
75903
|
+
};
|
|
75904
|
+
function offsetsToBox3(offsets) {
|
|
75905
|
+
const getNumber = (field) => {
|
|
75906
|
+
const num = parseFloat(offsets[field]);
|
|
75907
|
+
return isNaN(num) ? 0 : num;
|
|
75908
|
+
};
|
|
75909
|
+
return new Box3(
|
|
75910
|
+
new Vector3(-getNumber("sideOffset"), -getNumber("sideOffset"), -getNumber("bottomOffset")),
|
|
75911
|
+
new Vector3(getNumber("sideOffset"), getNumber("sideOffset"), getNumber("topOffset"))
|
|
75912
|
+
);
|
|
75913
|
+
}
|
|
75914
|
+
function useWebglSectionBox(viewer) {
|
|
75915
|
+
const vimAdapter = {
|
|
75916
|
+
setVisible: (b) => {
|
|
75917
|
+
viewer.gizmos.sectionBox.visible = b;
|
|
75918
|
+
viewer.gizmos.sectionBox.interactive = b;
|
|
75919
|
+
},
|
|
75920
|
+
getBox: () => viewer.gizmos.sectionBox.box.clone(),
|
|
75921
|
+
fitBox: (box) => viewer.gizmos.sectionBox.fitBox(box),
|
|
75922
|
+
getSelectionBox: () => Promise.resolve(viewer.selection.getBoundingBox()),
|
|
75923
|
+
getRendererBox: () => Promise.resolve(viewer.renderer.getBoundingBox()),
|
|
75924
|
+
onSceneChanged: viewer.renderer.onBoxUpdated,
|
|
75925
|
+
onSelectionChanged: viewer.selection.onValueChanged
|
|
75926
|
+
};
|
|
75927
|
+
viewer.gizmos.sectionBox.clip = true;
|
|
75928
|
+
return useSectionBox(vimAdapter);
|
|
75929
|
+
}
|
|
75570
75930
|
function createWebglComponent(container, componentSettings = {}, viewerSettings = {}) {
|
|
75571
75931
|
const promise2 = new DeferredPromise();
|
|
75572
75932
|
const cmpContainer = container instanceof HTMLElement ? createContainer(container) : container ?? createContainer();
|
|
@@ -75608,11 +75968,13 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
75608
75968
|
Math.min(props.container.root.clientWidth * 0.25, 340)
|
|
75609
75969
|
);
|
|
75610
75970
|
const [contextMenu2, setcontextMenu] = React2.useState();
|
|
75611
|
-
const [
|
|
75971
|
+
const [controlBarCustom, setControlBarCustom] = React2.useState();
|
|
75612
75972
|
const bimInfoRef = useBimInfo();
|
|
75613
75973
|
const viewerState = useViewerState(props.viewer);
|
|
75614
75974
|
const treeRef = React2.useRef();
|
|
75615
75975
|
const performanceRef = React2.useRef(null);
|
|
75976
|
+
const sectionBox2 = useWebglSectionBox(props.viewer);
|
|
75977
|
+
const controlBar2 = useControlBar(props.viewer, camera2, modal, side, isolation, cursor, settings2.value, sectionBox2, controlBarCustom);
|
|
75616
75978
|
React2.useEffect(() => {
|
|
75617
75979
|
var _a3;
|
|
75618
75980
|
side.setHasBim(((_a3 = viewerState.vim) == null ? void 0 : _a3.bim) !== void 0);
|
|
@@ -75641,7 +76003,7 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
75641
76003
|
customize: (v) => setcontextMenu(() => v)
|
|
75642
76004
|
},
|
|
75643
76005
|
controlBar: {
|
|
75644
|
-
customize: (v) =>
|
|
76006
|
+
customize: (v) => setControlBarCustom(() => v)
|
|
75645
76007
|
},
|
|
75646
76008
|
modal,
|
|
75647
76009
|
bimInfo: bimInfoRef,
|
|
@@ -75695,16 +76057,11 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
75695
76057
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
75696
76058
|
ControlBar,
|
|
75697
76059
|
{
|
|
75698
|
-
|
|
75699
|
-
|
|
75700
|
-
modal,
|
|
75701
|
-
side,
|
|
75702
|
-
isolation,
|
|
75703
|
-
cursor,
|
|
75704
|
-
settings: settings2.value,
|
|
75705
|
-
customization: controlBar2
|
|
76060
|
+
content: controlBar2,
|
|
76061
|
+
show: isTrue(settings2.value.ui.controlBar)
|
|
75706
76062
|
}
|
|
75707
76063
|
),
|
|
76064
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(SectionBoxPanel, { state: sectionBox2 }),
|
|
75708
76065
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
75709
76066
|
AxesPanelMemo,
|
|
75710
76067
|
{
|
|
@@ -76030,12 +76387,53 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
76030
76387
|
return serverConnectionError(source.url);
|
|
76031
76388
|
}
|
|
76032
76389
|
}
|
|
76390
|
+
function updateModal(modal, state) {
|
|
76391
|
+
if (state.status === "connected") {
|
|
76392
|
+
modal.loading(void 0);
|
|
76393
|
+
modal.message(void 0);
|
|
76394
|
+
}
|
|
76395
|
+
if (state.status === "connecting") {
|
|
76396
|
+
if (modal.current === void 0 || modal.current.type === "loading") {
|
|
76397
|
+
modal.loading({ message: "Connecting to VIM Ultra server..." });
|
|
76398
|
+
}
|
|
76399
|
+
}
|
|
76400
|
+
if (state.status === "error") {
|
|
76401
|
+
console.log("Error loading vim", state);
|
|
76402
|
+
modal.message(getErrorMessage(state));
|
|
76403
|
+
}
|
|
76404
|
+
}
|
|
76405
|
+
async function updateProgress(request2, modal) {
|
|
76406
|
+
for await (const progress of request2.getProgress()) {
|
|
76407
|
+
if (request2.isCompleted) break;
|
|
76408
|
+
modal.loading({ message: "Loading File in VIM Ultra mode", progress });
|
|
76409
|
+
}
|
|
76410
|
+
}
|
|
76411
|
+
function useUltraSectionBox(viewer) {
|
|
76412
|
+
const ultraAdapter = {
|
|
76413
|
+
setVisible: (b) => {
|
|
76414
|
+
viewer.sectionBox.visible = b;
|
|
76415
|
+
viewer.sectionBox.interactive = b;
|
|
76416
|
+
},
|
|
76417
|
+
getBox: () => viewer.sectionBox.getBox().clone(),
|
|
76418
|
+
fitBox: (box) => viewer.sectionBox.fitBox(box),
|
|
76419
|
+
getSelectionBox: () => viewer.selection.getBoundingBox(),
|
|
76420
|
+
getRendererBox: () => viewer.renderer.getBoundingBox(),
|
|
76421
|
+
onSelectionChanged: viewer.selection.onValueChanged,
|
|
76422
|
+
onSceneChanged: viewer.vims.onChanged
|
|
76423
|
+
};
|
|
76424
|
+
return useSectionBox(ultraAdapter);
|
|
76425
|
+
}
|
|
76426
|
+
function useUltraControlBar(viewer, section, customization) {
|
|
76427
|
+
let controlBar2 = [controlBarSectionBox(section, viewer.selection.count > 0)];
|
|
76428
|
+
controlBar2 = (customization == null ? void 0 : customization(controlBar2)) ?? controlBar2;
|
|
76429
|
+
return controlBar2;
|
|
76430
|
+
}
|
|
76033
76431
|
function createUltraComponent(container) {
|
|
76034
76432
|
const promise2 = new DeferredPromise();
|
|
76035
76433
|
const cmpContainer = container instanceof HTMLElement ? createContainer(container) : container ?? createContainer();
|
|
76036
76434
|
const viewer = Viewer.createWithCanvas(cmpContainer.gfx);
|
|
76037
76435
|
const reactRoot = clientExports.createRoot(cmpContainer.ui);
|
|
76038
|
-
const
|
|
76436
|
+
const attachDispose = (cmp) => {
|
|
76039
76437
|
cmp.dispose = () => {
|
|
76040
76438
|
viewer.dispose();
|
|
76041
76439
|
cmpContainer.dispose();
|
|
@@ -76049,7 +76447,7 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
76049
76447
|
{
|
|
76050
76448
|
container: cmpContainer,
|
|
76051
76449
|
viewer,
|
|
76052
|
-
onMount: (cmp) => promise2.resolve(
|
|
76450
|
+
onMount: (cmp) => promise2.resolve(attachDispose(cmp))
|
|
76053
76451
|
}
|
|
76054
76452
|
)
|
|
76055
76453
|
);
|
|
@@ -76057,31 +76455,36 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
76057
76455
|
}
|
|
76058
76456
|
function UltraComponent(props) {
|
|
76059
76457
|
const modal = useModal(true);
|
|
76458
|
+
const sectionBox2 = useUltraSectionBox(props.viewer);
|
|
76459
|
+
const controlBar2 = useUltraControlBar(props.viewer, sectionBox2, (_2) => _2);
|
|
76460
|
+
const side = useSideState(true, 400);
|
|
76461
|
+
const [_, setSelectState] = React2.useState(0);
|
|
76060
76462
|
React2.useEffect(() => {
|
|
76061
76463
|
props.viewer.onStateChanged.subscribe((state) => updateModal(modal, state));
|
|
76062
|
-
props.
|
|
76464
|
+
props.viewer.selection.onValueChanged.subscribe(() => {
|
|
76465
|
+
setSelectState((i2) => (i2 + 1) % 2);
|
|
76466
|
+
});
|
|
76467
|
+
props.onMount(createComponentRef(props.viewer, modal));
|
|
76063
76468
|
}, []);
|
|
76064
76469
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
|
|
76065
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
76470
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(RestOfScreen, { side, content: () => {
|
|
76471
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
|
|
76472
|
+
whenTrue(true, /* @__PURE__ */ jsxRuntimeExports.jsx(LogoMemo, {})),
|
|
76473
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Overlay, { canvas: props.viewer.viewport.canvas }),
|
|
76474
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
76475
|
+
ControlBar,
|
|
76476
|
+
{
|
|
76477
|
+
content: controlBar2,
|
|
76478
|
+
show: true
|
|
76479
|
+
}
|
|
76480
|
+
),
|
|
76481
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(SectionBoxPanel, { state: sectionBox2 })
|
|
76482
|
+
] });
|
|
76483
|
+
} }),
|
|
76066
76484
|
/* @__PURE__ */ jsxRuntimeExports.jsx(Modal, { state: modal })
|
|
76067
76485
|
] });
|
|
76068
76486
|
}
|
|
76069
|
-
function
|
|
76070
|
-
if (state.status === "connected") {
|
|
76071
|
-
modal.loading(void 0);
|
|
76072
|
-
modal.message(void 0);
|
|
76073
|
-
}
|
|
76074
|
-
if (state.status === "connecting") {
|
|
76075
|
-
if (modal.current === void 0 || modal.current.type === "loading") {
|
|
76076
|
-
modal.loading({ message: "Connecting to VIM Ultra server..." });
|
|
76077
|
-
}
|
|
76078
|
-
}
|
|
76079
|
-
if (state.status === "error") {
|
|
76080
|
-
console.log("Error loading vim", state);
|
|
76081
|
-
modal.message(getErrorMessage(state));
|
|
76082
|
-
}
|
|
76083
|
-
}
|
|
76084
|
-
function ToRef(viewer, modal) {
|
|
76487
|
+
function createComponentRef(viewer, modal) {
|
|
76085
76488
|
function load(source) {
|
|
76086
76489
|
const request2 = viewer.loadVim(source);
|
|
76087
76490
|
void updateProgress(request2, modal);
|
|
@@ -76106,12 +76509,6 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
76106
76509
|
load
|
|
76107
76510
|
};
|
|
76108
76511
|
}
|
|
76109
|
-
async function updateProgress(request2, modal) {
|
|
76110
|
-
for await (const progress of request2.getProgress()) {
|
|
76111
|
-
if (request2.isCompleted) break;
|
|
76112
|
-
modal.loading({ message: "Loading File in VIM Ultra mode", progress });
|
|
76113
|
-
}
|
|
76114
|
-
}
|
|
76115
76512
|
const index = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
76116
76513
|
__proto__: null,
|
|
76117
76514
|
UltraComponent,
|