@xtctwins/tctwins-bimx-engine 0.3.11 → 0.3.13

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 (61) hide show
  1. package/README.md +1 -1
  2. package/dist/{AnnotationTool-BnLd0s38.mjs → AnnotationTool-k3W4xmw6.mjs} +13 -14
  3. package/dist/BIMX_Viewer_Lib.es.js +5 -5
  4. package/dist/BIMX_Viewer_Lib.umd.js +184 -164
  5. package/dist/{CameraViewTool-BGmwAori.mjs → CameraViewTool-CuXnJa74.mjs} +15 -15
  6. package/dist/{CommentTool-B9TgO52t.mjs → CommentTool-CUtaZc7Y.mjs} +276 -277
  7. package/dist/{HiddenTool-CNMJqZzC.mjs → HiddenTool-CzJ19mP1.mjs} +9 -10
  8. package/dist/{InspectorTool-CiyN_aCB.mjs → InspectorTool-BTH82K8b.mjs} +3 -3
  9. package/dist/MeasureTool-BvPkIvmX.mjs +593 -0
  10. package/dist/{MouseTool-B07SstRZ.mjs → MouseTool-CiywjpW3.mjs} +6 -6
  11. package/dist/{NavigateTool-B8qIl9xy.mjs → NavigateTool-CDlYpMXl.mjs} +13 -14
  12. package/dist/OperateTool-NMIYz2YN.mjs +185 -0
  13. package/dist/{RoamTool-3sDI1Ouu.mjs → RoamTool-BkwJBBAg.mjs} +1 -1
  14. package/dist/{ScreenShotTool-CjsT2-Va.mjs → ScreenShotTool-BP-xDRKf.mjs} +16 -17
  15. package/dist/SectionTool-mt4iqa1I.mjs +241 -0
  16. package/dist/SettingTool-DieHq4VO.mjs +1745 -0
  17. package/dist/{StructureTree-B183vT5b.mjs → StructureTree-C8C435JY.mjs} +5 -6
  18. package/dist/{alert-DN7oOiZl.mjs → alert-B9Uw8l52.mjs} +18 -13
  19. package/dist/{index-DfRswjrC.mjs → index-B_IMYBaJ.mjs} +59333 -53195
  20. package/dist/{panel.vue_vue_type_style_index_0_lang-DOsptET6.mjs → panel.vue_vue_type_style_index_0_lang-BswWCo8x.mjs} +1 -1
  21. package/dist/style.css +1 -1
  22. package/dist/{tallPanel-D0Zgkc3n.mjs → tallPanel-CnTIaRU-.mjs} +1 -1
  23. package/package.json +5 -5
  24. package/types/components/BimViewerComponents/OperateTool.vue.d.ts +12 -0
  25. package/types/components/BimViewerComponents/SectionModeBar.vue.d.ts +2 -0
  26. package/types/components/BimxViewerComp.vue.d.ts +2 -0
  27. package/types/components/utilsComponents/alert.vue.d.ts +9 -0
  28. package/types/i18n/index.d.ts +212 -0
  29. package/types/i18n/locales/en-US.d.ts +53 -0
  30. package/types/i18n/locales/zh-CN.d.ts +53 -0
  31. package/types/pages/BimxViewerEntry.vue.d.ts +3 -0
  32. package/types/store/const.d.ts +12 -0
  33. package/types/store/toolbars.d.ts +53 -1
  34. package/types/utils/OSSHelper.d.ts +2 -0
  35. package/types/utils/eventBus.d.ts +6 -1
  36. package/types/viewerManager/load/loadModel.d.ts +88 -0
  37. package/types/viewerManager/sectionManager.d.ts +524 -0
  38. package/types/viewerManager/viewerManager.d.ts +7 -1
  39. package/dist/AnnotationTool-Bp8DGFFA.mjs +0 -167
  40. package/dist/CameraViewTool-BwVnc0ua.mjs +0 -164
  41. package/dist/CommentTool-C7NLPxMd.mjs +0 -1529
  42. package/dist/HiddenTool-i1AESn4-.mjs +0 -57
  43. package/dist/InspectorTool-D4gr7uiQ.mjs +0 -679
  44. package/dist/MeasureTool-BNBUx-1X.mjs +0 -323
  45. package/dist/MeasureTool-Cxnp9MVY.mjs +0 -323
  46. package/dist/MouseTool-DVqNDADf.mjs +0 -84
  47. package/dist/NavigateTool-DKTSPVCL.mjs +0 -52
  48. package/dist/RoamTool-CazuxheL.mjs +0 -287
  49. package/dist/ScreenShotTool-fYVxpPrW.mjs +0 -430
  50. package/dist/SectionTool-Bpk5jewK.mjs +0 -331
  51. package/dist/SectionTool-DMSGkjYm.mjs +0 -331
  52. package/dist/SettingTool-BuSm2JB6.mjs +0 -695
  53. package/dist/SettingTool-IBRpWdfo.mjs +0 -695
  54. package/dist/StructureTree-D9z28tm4.mjs +0 -1686
  55. package/dist/alert-DwTFq4bp.mjs +0 -47
  56. package/dist/const-DOnRsYpZ.mjs +0 -389
  57. package/dist/el-slider-C9_q447A.mjs +0 -1059
  58. package/dist/el-slider-dslleM3g.mjs +0 -1059
  59. package/dist/index-BzB8rqmg.mjs +0 -131961
  60. package/dist/panel.vue_vue_type_style_index_0_lang-E8w23EhV.mjs +0 -61
  61. package/dist/tallPanel-Dp1ZbCTR.mjs +0 -84
@@ -1,6 +1,6 @@
1
- import { defineComponent as X, onMounted as x, onBeforeUnmount as A, ref as _, watch as C, openBlock as M, createElementBlock as $, withDirectives as F, createElementVNode as g, normalizeStyle as D, unref as L, vShow as N } from "vue";
2
- import { G as P, I as s, P as k, Y as V } from "./index-BzB8rqmg.mjs";
3
- const R = { class: "mouse_tool" }, U = ["src"], z = ["src"], J = /* @__PURE__ */ X({
1
+ import { defineComponent as Y, onMounted as x, onBeforeUnmount as A, ref as _, watch as C, openBlock as M, createElementBlock as $, withDirectives as F, createElementVNode as g, normalizeStyle as D, unref as L, vShow as N } from "vue";
2
+ import { G as P, I as s, P as k, a0 as V } from "./index-B_IMYBaJ.mjs";
3
+ const R = { class: "mouse_tool" }, U = ["src"], z = ["src"], J = /* @__PURE__ */ Y({
4
4
  __name: "MouseTool",
5
5
  props: ["componentId"],
6
6
  setup(O) {
@@ -29,7 +29,7 @@ const R = { class: "mouse_tool" }, U = ["src"], z = ["src"], J = /* @__PURE__ */
29
29
  C(
30
30
  () => p.isToolActive(y.componentId),
31
31
  (e) => {
32
- e ? Y() : (o = !1, d = !1, r = 0, a = 0, m = 0, v = 0, j());
32
+ e ? j() : (o = !1, d = !1, r = 0, a = 0, m = 0, v = 0, X());
33
33
  }
34
34
  );
35
35
  let n = "";
@@ -50,10 +50,10 @@ const R = { class: "mouse_tool" }, U = ["src"], z = ["src"], J = /* @__PURE__ */
50
50
  });
51
51
  u ? (o = !0, n !== u.entity.id && (n = u.entity.id, t.setAllObjectsSelected(!1), t.setEntitySelected(u.entity))) : (o = !1, n = "", t.setAllObjectsSelected(!1)), V.entityState.selectedObjectIds.length > 0 && t.setObjectsSelected(V.entityState.selectedObjectIds, !0), r = f, a = B;
52
52
  }
53
- }, Y = () => {
53
+ }, j = () => {
54
54
  const e = document.getElementById("mouseGroup");
55
55
  e == null || e.addEventListener("touchstart", S), e == null || e.addEventListener("touchmove", b), e == null || e.addEventListener("click", I), c.value = 290, i.value = 300;
56
- }, j = () => {
56
+ }, X = () => {
57
57
  const e = document.getElementById("mouseGroup");
58
58
  e == null || e.removeEventListener("touchstart", S), e == null || e.removeEventListener("touchmove", b), e == null || e.removeEventListener("click", I);
59
59
  };
@@ -1,23 +1,22 @@
1
- import { defineComponent as b, onMounted as p, ref as w, openBlock as n, createElementBlock as i, createElementVNode as s, Fragment as g, renderList as f, unref as a, normalizeClass as h, toDisplayString as I } from "vue";
2
- import { F as N, G as S, P as T } from "./index-DfRswjrC.mjs";
3
- import { N as k } from "./const-DOnRsYpZ.mjs";
4
- const B = { class: "best-view-box" }, V = { class: "best-view-list" }, x = ["onClick"], y = { class: "best-view-icon" }, A = ["src"], C = { class: "best-view-name" }, G = /* @__PURE__ */ b({
1
+ import { defineComponent as b, onMounted as p, ref as w, openBlock as n, createElementBlock as i, createElementVNode as s, Fragment as g, renderList as h, unref as a, normalizeClass as f, toDisplayString as I } from "vue";
2
+ import { F as S, G as T, aK as k, P as B } from "./index-B_IMYBaJ.mjs";
3
+ const N = { class: "best-view-box" }, V = { class: "best-view-list" }, x = ["onClick"], y = { class: "best-view-icon" }, A = ["src"], C = { class: "best-view-name" }, F = /* @__PURE__ */ b({
5
4
  __name: "NavigateTool",
6
5
  props: ["componentId"],
7
6
  emits: ["emitHandler"],
8
- setup(r, { emit: c }) {
9
- const l = N(), d = S(), v = r;
7
+ setup(c, { emit: r }) {
8
+ const l = S(), d = T(), v = c;
10
9
  p(() => {
11
10
  d.setReadyById(v.componentId);
12
11
  });
13
- const m = c, _ = (t) => {
14
- m("emitHandler", t);
12
+ const _ = r, m = (t) => {
13
+ _("emitHandler", t);
15
14
  }, o = w(), u = (t) => {
16
15
  if (t.id === o.value) {
17
16
  o.value = "";
18
17
  return;
19
18
  }
20
- o.value = t.id, window.bimViewer.setDirection(t.dir_num), _({
19
+ o.value = t.id, window.bimViewer.setDirection(t.dir_num), m({
21
20
  isTool: !0,
22
21
  event_target: "NavigateTool",
23
22
  event_name: "changeNav",
@@ -26,18 +25,18 @@ const B = { class: "best-view-box" }, V = { class: "best-view-list" }, x = ["onC
26
25
  }
27
26
  });
28
27
  };
29
- return (t, E) => (n(), i("div", B, [
28
+ return (t, E) => (n(), i("div", N, [
30
29
  s("div", V, [
31
- (n(!0), i(g, null, f(a(k), (e) => (n(), i("div", {
30
+ (n(!0), i(g, null, h(a(k), (e) => (n(), i("div", {
32
31
  key: e.id,
33
- class: h(["best-view-item", {
32
+ class: f(["best-view-item", {
34
33
  "best-view-item-active": o.value === e.id
35
34
  }]),
36
35
  onClick: (H) => u(e)
37
36
  }, [
38
37
  s("div", y, [
39
38
  s("img", {
40
- src: a(T) + `/bim-viewer/best-view/${o.value === e.id ? e.imgActive : e.img}.svg`,
39
+ src: a(B) + `/bim-viewer/best-view/${o.value === e.id ? e.imgActive : e.img}.svg`,
41
40
  alt: ""
42
41
  }, null, 8, A),
43
42
  s("div", C, I(a(l)(e.label || e.name)), 1)
@@ -48,5 +47,5 @@ const B = { class: "best-view-box" }, V = { class: "best-view-list" }, x = ["onC
48
47
  }
49
48
  });
50
49
  export {
51
- G as default
50
+ F as default
52
51
  };
@@ -0,0 +1,185 @@
1
+ import { defineComponent as U, onMounted as z, computed as A, ref as h, watch as G, onBeforeUnmount as q, openBlock as E, createBlock as J, Transition as K, withCtx as Q, withDirectives as W, createElementVNode as n, toDisplayString as y, normalizeClass as T, unref as f, createElementBlock as Y, Fragment as Z, renderList as ee, vShow as te } from "vue";
2
+ import { F as se, G as le, I as V, P as _, a0 as m, M as ie } from "./index-B_IMYBaJ.mjs";
3
+ const ne = { class: "operate_tool_wrapper" }, ae = { class: "operate_hint" }, re = { class: "operate_toolbar" }, oe = ["src"], ce = ["onClick"], ue = ["src"], de = ["src"], ve = /* @__PURE__ */ U({
4
+ __name: "OperateTool",
5
+ props: ["componentId"],
6
+ emits: ["emitHandler"],
7
+ setup(x, { expose: B, emit: C }) {
8
+ const a = se(), b = le(), O = x;
9
+ z(() => {
10
+ b.setReadyById(O.componentId);
11
+ });
12
+ const H = [
13
+ { mode: 0, name: "operate.focus", img: "fit" },
14
+ { mode: 1, name: "operate.hide", img: "hide-self" },
15
+ { mode: 2, name: "operate.onlyShow", img: "hide-other" },
16
+ { mode: 3, name: "operate.edge", img: "edge" },
17
+ { mode: 4, name: "operate.transparent", img: "opacity" }
18
+ ], M = A(() => b.isToolActive(O.componentId)), r = h(-1), i = h([]), g = h(!1), u = h(!0), d = h(!0), F = (t) => t.mode === 3 ? u.value ? "edge" : "solid" : t.mode === 4 ? d.value ? "opacity" : "fill" : t.img, N = (t) => t.mode === 3 ? u.value ? "operate.edge" : "operate.fill" : t.mode === 4 ? d.value ? "operate.transparent" : "operate.solid" : t.name;
19
+ let e;
20
+ const R = C, $ = (t) => {
21
+ R("emitHandler", t);
22
+ }, w = (t, s) => {
23
+ $({
24
+ isTool: !0,
25
+ event_target: "OperateTool",
26
+ event_name: "operateAction",
27
+ content: {
28
+ operateMode: t,
29
+ operateIds: s
30
+ }
31
+ });
32
+ }, P = A(() => {
33
+ if (i.value.length > 0)
34
+ return r.value === 5 ? a("operate.hintMultiSelected", { count: i.value.length }) : a("operate.hintSelected", { count: i.value.length });
35
+ switch (r.value) {
36
+ case 0:
37
+ return a("operate.hintFocus");
38
+ case 1:
39
+ return a("operate.hintHide");
40
+ case 2:
41
+ return a("operate.hintOnlyShow");
42
+ case 3:
43
+ return u.value ? a("operate.hintEdge") : a("operate.hintFill");
44
+ case 4:
45
+ return d.value ? a("operate.hintTransparent") : a("operate.hintSolid");
46
+ case 5:
47
+ return a("operate.hintMultiSelect");
48
+ default:
49
+ return a("operate.hintDefault");
50
+ }
51
+ }), X = (t) => {
52
+ i.value.includes(t) ? i.value = i.value.filter((s) => s !== t) : i.value.push(t), i.value.length > 0 ? (e.setAllObjectsSelected(!1), e.setObjectsSelected(i.value, !0)) : e.setAllObjectsSelected(!1);
53
+ }, v = () => {
54
+ i.value = [], e == null || e.setAllObjectsSelected(!1);
55
+ }, j = (t, s) => {
56
+ switch (t) {
57
+ case 0:
58
+ e.viewFitObjects(s);
59
+ break;
60
+ case 1:
61
+ e.setObjectsVisible(s, !1);
62
+ break;
63
+ case 2:
64
+ e.setAllObjectsVisible(!1), e.setObjectsVisible(s, !0), g.value = !0;
65
+ break;
66
+ case 3: {
67
+ const l = u.value;
68
+ e.viewer.scene.setObjectsXRayed(s, l), s.forEach((o) => {
69
+ const c = e.viewer.scene.objects[o];
70
+ c.edges = c.xrayed ? !0 : e.edgesActive, e.setEntityHighlighted(c, !1);
71
+ }), u.value = !l;
72
+ break;
73
+ }
74
+ case 4: {
75
+ const l = d.value;
76
+ s.forEach((o) => {
77
+ const c = e.viewer.scene.objects[o];
78
+ e.setEntityHighlighted(c, l), c.xrayed && (e.setEntityXRayed(c, !1), c.edges = e.edgesActive);
79
+ }), d.value = !l;
80
+ break;
81
+ }
82
+ }
83
+ w(t, s);
84
+ }, D = (t) => {
85
+ if (!window.bimViewer.disableClickEvent || !b.isToolActiveBykey("operate")) return;
86
+ const s = r.value;
87
+ if (s === -1 || s === 5) {
88
+ X(t.id), p();
89
+ return;
90
+ }
91
+ if (s === 2) {
92
+ if (i.value.length > 0) {
93
+ const o = [...i.value];
94
+ o.includes(t.id) || o.push(t.id), e.setAllObjectsVisible(!1), e.setObjectsVisible(o, !0), v();
95
+ } else
96
+ g.value || (e.setAllObjectsVisible(!1), g.value = !0), e.setEntityVisible(t, !0);
97
+ w(2, [t.id]), p();
98
+ return;
99
+ }
100
+ let l;
101
+ i.value.length > 0 ? (l = [...i.value], l.includes(t.id) || l.push(t.id)) : l = [t.id], j(s, l), s !== 0 && v(), p();
102
+ }, L = () => {
103
+ b.isToolActiveBykey("operate") && (v(), p());
104
+ }, S = () => {
105
+ e = window.bimViewer, e.eventTrigger.on("pickedEntity", D), e.eventTrigger.on("pickedNothing", L);
106
+ };
107
+ V.on("BimViewer", S);
108
+ const I = (t) => {
109
+ if (r.value === t) {
110
+ r.value = -1;
111
+ return;
112
+ }
113
+ if (e) {
114
+ if (i.value.length > 0) {
115
+ const s = [...i.value];
116
+ t === 0 ? (e.viewFitObjects(s), w(t, s)) : t !== 5 && (j(t, s), v()), p();
117
+ }
118
+ r.value = t;
119
+ }
120
+ }, k = () => {
121
+ e && (r.value = -1, g.value = !1, u.value = !0, d.value = !0, v(), e.setAllObjectsVisible(!0), e.setAllObjectsXRayed(!1), e.setAllObjectsHighlighted(!1), e.setAllObjectsEdges(e.edgesActive), p(), w(-1, []));
122
+ }, p = () => {
123
+ e && (m.entityState.xrayedObjectIds = e.viewer.scene.xrayedObjectIds, m.entityState.highlightedObjectIds = e.viewer.scene.highlightedObjectIds, m.entityState.selectedObjectIds = e.viewer.scene.selectedObjectIds, m.entityState.visibleObjectIds = e.viewer.scene.visibleObjectIds, m.entityState.edgesObjectIds = e.viewer.scene.edgesObjectIds);
124
+ };
125
+ return G(
126
+ () => b.isToolActive(O.componentId),
127
+ (t) => {
128
+ t || (r.value = -1, g.value = !1, u.value = !0, d.value = !0, v(), window.bimViewer && (window.bimViewer.disableClickEvent = !1));
129
+ }
130
+ ), q(() => {
131
+ V.off("BimViewer", S);
132
+ }), B({
133
+ recoverAll: k
134
+ }), (t, s) => (E(), J(K, { name: "operate-fade" }, {
135
+ default: Q(() => [
136
+ W(n("div", ne, [
137
+ n("div", ae, [
138
+ n("span", null, y(P.value), 1)
139
+ ]),
140
+ n("div", re, [
141
+ n("div", {
142
+ class: T(["operate_btn", { operate_btn_active: r.value === 5 }]),
143
+ onClick: s[0] || (s[0] = (l) => I(5))
144
+ }, [
145
+ n("img", {
146
+ src: `${f(_)}/industry-viewer/detail-bar/multiSelect.svg`,
147
+ alt: ""
148
+ }, null, 8, oe),
149
+ n("span", null, y(f(a)("operate.multiSelect")), 1)
150
+ ], 2),
151
+ s[1] || (s[1] = n("div", { class: "split_line" }, null, -1)),
152
+ (E(), Y(Z, null, ee(H, (l) => n("div", {
153
+ key: l.mode,
154
+ class: T(["operate_btn", { operate_btn_active: r.value === l.mode }]),
155
+ onClick: (o) => I(l.mode)
156
+ }, [
157
+ n("img", {
158
+ src: `${f(_)}/industry-viewer/detail-bar/${F(l)}.svg`,
159
+ alt: ""
160
+ }, null, 8, ue),
161
+ n("span", null, y(f(a)(N(l))), 1)
162
+ ], 10, ce)), 64)),
163
+ s[2] || (s[2] = n("div", { class: "split_line" }, null, -1)),
164
+ n("div", {
165
+ class: "operate_btn",
166
+ onClick: k
167
+ }, [
168
+ n("img", {
169
+ src: `${f(_)}/industry-viewer/reset.svg`,
170
+ alt: ""
171
+ }, null, 8, de),
172
+ n("span", null, y(f(a)("operate.recover")), 1)
173
+ ])
174
+ ])
175
+ ], 512), [
176
+ [te, M.value]
177
+ ])
178
+ ]),
179
+ _: 1
180
+ }));
181
+ }
182
+ }), be = /* @__PURE__ */ ie(ve, [["__scopeId", "data-v-2bfdea97"]]);
183
+ export {
184
+ be as default
185
+ };
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as A, ref as u, onMounted as j, onBeforeUnmount as q, watch as z, openBlock as h, createElementBlock as b, unref as r, createElementVNode as e, toDisplayString as m, createCommentVNode as L } from "vue";
2
- import { G as J, F as K, H as c, S, I as M, P as l, U as V, M as Q } from "./index-DfRswjrC.mjs";
2
+ import { G as J, F as K, H as c, U as S, I as M, P as l, V, M as Q } from "./index-B_IMYBaJ.mjs";
3
3
  const W = { class: "roam_container_wrapper" }, Y = {
4
4
  key: 0,
5
5
  class: "roam_container"
@@ -1,7 +1,6 @@
1
- import { _ as _e } from "./panel.vue_vue_type_style_index_0_lang-E8w23EhV.mjs";
2
- import { ab as U, o as K, ac as q, g as G, ad as Y, b as N, ae as J, af as he, j as H, q as X, a as Se, ag as Ve, ah as Ee, u as $, ai as Re, aj as ke, ak as Ce, C as Ie, N as Be, al as Pe, am as W, w as xe, F as we, G as Ne, J as ze } from "./index-DfRswjrC.mjs";
3
- import { ref as C, inject as Te, computed as h, defineComponent as z, openBlock as R, createElementBlock as I, normalizeClass as E, unref as e, createElementVNode as y, withDirectives as Q, withModifiers as x, isRef as Z, vModelRadio as ee, renderSlot as D, createTextVNode as w, toDisplayString as B, nextTick as te, normalizeStyle as Le, onMounted as ae, provide as Ue, reactive as $e, toRefs as De, watch as oe, Fragment as le, renderList as se, createBlock as ne, resolveDynamicComponent as Fe, mergeProps as Ae, withCtx as T, createVNode as P, createCommentVNode as Oe } from "vue";
4
- import { a as L } from "./const-DOnRsYpZ.mjs";
1
+ import { _ as _e } from "./panel.vue_vue_type_style_index_0_lang-BswWCo8x.mjs";
2
+ import { am as U, o as q, an as K, g as G, ao as Y, b as N, ap as J, aq as he, j as H, q as X, a as Se, ar as Ve, as as Ee, u as $, at as Re, au as ke, av as Ce, C as Ie, N as Be, aw as Pe, ax as W, w as xe, F as we, G as Ne, ay as T, J as ze } from "./index-B_IMYBaJ.mjs";
3
+ import { ref as C, inject as Te, computed as h, defineComponent as z, openBlock as R, createElementBlock as I, normalizeClass as E, unref as e, createElementVNode as y, withDirectives as Q, withModifiers as x, isRef as Z, vModelRadio as ee, renderSlot as D, createTextVNode as w, toDisplayString as B, nextTick as te, normalizeStyle as Le, onMounted as ae, provide as Ue, reactive as $e, toRefs as De, watch as oe, Fragment as le, renderList as se, createBlock as ne, resolveDynamicComponent as Fe, mergeProps as Ae, withCtx as L, createVNode as P, createCommentVNode as Oe } from "vue";
5
4
  const ie = N({
6
5
  /**
7
6
  * @description binding value
@@ -61,13 +60,13 @@ const ie = N({
61
60
  */
62
61
  border: Boolean
63
62
  }), re = {
64
- [Y]: (o) => K(o) || q(o) || G(o),
65
- [U]: (o) => K(o) || q(o) || G(o)
63
+ [Y]: (o) => q(o) || K(o) || G(o),
64
+ [U]: (o) => q(o) || K(o) || G(o)
66
65
  }, de = Symbol("radioGroupKey"), Me = N({ ...ie }), ue = {
67
66
  label: "label",
68
67
  value: "value",
69
68
  disabled: "disabled"
70
- }, Ke = N({
69
+ }, qe = N({
71
70
  /**
72
71
  * @description native `id` attribute
73
72
  */
@@ -136,7 +135,7 @@ const ie = N({
136
135
  default: "radio"
137
136
  },
138
137
  ...he(["ariaLabel"])
139
- }), qe = re, ce = (o, S) => {
138
+ }), Ke = re, ce = (o, S) => {
140
139
  const l = C(), r = Te(de, void 0), s = h(() => !!r), f = h(() => X(o.value) ? o.label : o.value), c = h({
141
140
  get() {
142
141
  return s.value ? r.modelValue : o.modelValue;
@@ -268,8 +267,8 @@ const Je = [
268
267
  var We = /* @__PURE__ */ z({
269
268
  name: "ElRadioGroup",
270
269
  __name: "radio-group",
271
- props: Ke,
272
- emits: qe,
270
+ props: qe,
271
+ emits: Ke,
273
272
  setup(o, { emit: S }) {
274
273
  const l = o, r = S, s = $("radio"), f = Re(), c = C(), { formItem: i } = ke(), { inputId: n, isLabeledByFormItem: b } = Ce(l, { formItemContext: i }), v = (t) => {
275
274
  r(Y, t), te(() => r(U, t));
@@ -321,7 +320,7 @@ W(F);
321
320
  const et = { class: "wrapper" }, tt = { class: "screen_thumbnail" }, at = ["src"], ot = { class: "validity-period" }, lt = {
322
321
  key: 0,
323
322
  class: "custom"
324
- }, st = { class: "footer" }, ut = /* @__PURE__ */ z({
323
+ }, st = { class: "footer" }, dt = /* @__PURE__ */ z({
325
324
  __name: "ScreenShotTool",
326
325
  props: ["componentId"],
327
326
  emits: ["closePanel"],
@@ -336,7 +335,7 @@ const et = { class: "wrapper" }, tt = { class: "screen_thumbnail" }, at = ["src"
336
335
  }
337
336
  );
338
337
  const v = (a) => {
339
- f.value = a, a !== 3 && (c.value = L[a].width, i.value = L[a].height);
338
+ f.value = a, a !== 3 && (c.value = T[a].width, i.value = T[a].height);
340
339
  }, g = () => {
341
340
  b("closePanel");
342
341
  }, d = (a, t, m) => {
@@ -362,7 +361,7 @@ const et = { class: "wrapper" }, tt = { class: "screen_thumbnail" }, at = ["src"
362
361
  panelTitle: e(l)("screenshot.title"),
363
362
  "click-handle": g
364
363
  }, {
365
- default: T(() => [
364
+ default: L(() => [
366
365
  y("div", et, [
367
366
  y("div", tt, [
368
367
  y("img", {
@@ -376,16 +375,16 @@ const et = { class: "wrapper" }, tt = { class: "screen_thumbnail" }, at = ["src"
376
375
  "onUpdate:modelValue": t[0] || (t[0] = (p) => f.value = p),
377
376
  onChange: v
378
377
  }, {
379
- default: T(() => [
378
+ default: L(() => [
380
379
  y("div", ot, [
381
- (R(!0), I(le, null, se(e(L), (p) => (R(), I("div", {
380
+ (R(!0), I(le, null, se(e(T), (p) => (R(), I("div", {
382
381
  key: p.id,
383
382
  class: "period_box"
384
383
  }, [
385
384
  P(m, {
386
385
  label: p.id
387
386
  }, {
388
- default: T(() => [
387
+ default: L(() => [
389
388
  w(B(p.name || e(l)(p.label ?? "")), 1)
390
389
  ]),
391
390
  _: 2
@@ -426,5 +425,5 @@ const et = { class: "wrapper" }, tt = { class: "screen_thumbnail" }, at = ["src"
426
425
  }
427
426
  });
428
427
  export {
429
- ut as default
428
+ dt as default
430
429
  };
@@ -0,0 +1,241 @@
1
+ import { _ as be } from "./alert-B9Uw8l52.mjs";
2
+ import { F as ge, G as ke, T as q, H as b, I as f, a1 as W, a2 as h, P as g, a3 as Se, K as we, a4 as ye, L as Ce, M as xe } from "./index-B_IMYBaJ.mjs";
3
+ import { _ as Le } from "./panel.vue_vue_type_style_index_0_lang-BswWCo8x.mjs";
4
+ import { defineComponent as Be, ref as _, onMounted as Pe, watch as Te, onBeforeUnmount as Ve, openBlock as a, createElementBlock as d, Fragment as I, unref as n, createBlock as Ee, withCtx as J, createElementVNode as o, toDisplayString as v, withDirectives as Q, renderList as X, vShow as Y, createVNode as L, normalizeClass as Z, withModifiers as Ie, createTextVNode as Me } from "vue";
5
+ const Oe = { class: "section_panel_middle" }, Ae = { class: "section_middle_title" }, $e = { class: "section_control_button" }, De = ["src"], He = { class: "control_buttons" }, Ne = ["onClick"], ze = { class: "section_panel_cont" }, Re = {
6
+ key: 0,
7
+ class: ""
8
+ }, Fe = ["onClick"], Ue = { class: "cont_item_left" }, je = ["src", "onClick"], Ge = { class: "cont_item_right" }, Ke = ["src", "onClick"], qe = ["src", "onClick"], We = ["src", "onClick"], Je = {
9
+ key: 1,
10
+ class: "empty1"
11
+ }, Qe = {
12
+ key: 1,
13
+ class: "mobile_section_panel"
14
+ }, Xe = { class: "slicing-title-box" }, Ye = { class: "slicing-title" }, Ze = { class: "slicing-title-icon" }, eo = { class: "slicing-content-box" }, oo = { class: "mobile_box_buttons" }, to = /* @__PURE__ */ Be({
15
+ __name: "SectionTool",
16
+ props: ["componentId"],
17
+ emits: ["closePanel"],
18
+ setup(ee, { emit: oe }) {
19
+ const r = ge(), M = ke(), O = ee, B = _(0);
20
+ Pe(() => {
21
+ M.setReadyById(O.componentId), q.currentTheme == "blue" ? B.value = 240 : q.currentTheme == "light-gray" && (B.value = 202), w(), window.addEventListener("resize", w), document.addEventListener("click", A);
22
+ });
23
+ const A = (e) => {
24
+ S.value && e.target.id != "controlOperatePanel" && H(!1);
25
+ }, $ = _(!0), k = _(!1), i = _(), u = _(), S = _(!1), D = _(360), H = (e) => {
26
+ S.value = e;
27
+ };
28
+ let s, N;
29
+ const z = oe;
30
+ Te(
31
+ () => M.isToolActive(O.componentId),
32
+ (e) => {
33
+ e && (P(), w(), b("isMobile") && F());
34
+ }
35
+ );
36
+ const R = () => {
37
+ s = window.bimViewer.sectionTool, N = window.bimViewer.eventTrigger, b("isMobile") || N.on("createSection", (e) => {
38
+ y(), i.value = Object.keys(K()).map((t) => ({
39
+ id: t,
40
+ isLook: !0,
41
+ directionLeft: !0
42
+ })), ae(e.id, !0), u.value = e.id, T(e.id);
43
+ });
44
+ };
45
+ f.on("BimViewer", R), f.on(W, P), Ve(() => {
46
+ f.off("BimViewer", R), f.off(W, P), window.removeEventListener("resize", w), document.removeEventListener("click", A);
47
+ });
48
+ function te() {
49
+ $.value = !1;
50
+ }
51
+ function w() {
52
+ if (b("isMobile")) return;
53
+ const e = parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--section-content-height")) || 360, t = document.querySelector(".bimx-components-wrapper"), c = ((t == null ? void 0 : t.clientHeight) || window.innerHeight) - 216;
54
+ D.value = Math.max(140, Math.min(e, c));
55
+ }
56
+ const m = _(!1);
57
+ function F() {
58
+ m.value = h.IsBoxVisible();
59
+ }
60
+ function ne() {
61
+ h.ResetBox(), F();
62
+ }
63
+ function ie() {
64
+ m.value = h.ToggleBoxVisible();
65
+ }
66
+ function se() {
67
+ h.CloseBox(), h.SetActive(!1), z("closePanel"), f.emit("hideToolbar", !1);
68
+ }
69
+ function P() {
70
+ if (!s) return;
71
+ const e = K() || {}, t = i.value || [], c = Object.keys(e).map((p) => {
72
+ const C = t.find((V) => V.id === p);
73
+ return {
74
+ id: p,
75
+ isLook: !!e[p].active,
76
+ directionLeft: C ? C.directionLeft : !0
77
+ };
78
+ });
79
+ i.value = c, u.value = c.length ? c[0].id : "", m.value = h.IsBoxVisible();
80
+ }
81
+ const U = () => {
82
+ s.setActive(!1), z("closePanel"), f.emit("hideToolbar", !1);
83
+ }, le = (e) => {
84
+ u.value !== e.id && (u.value = e.id, k.value = !1, y(), T(e.id));
85
+ }, ce = (e) => {
86
+ y(), e.isLook = !e.isLook, e.isLook ? (e.isLook = !0, de(e.id)) : _e(e.id), T(u.value);
87
+ }, T = (e) => {
88
+ s.showSectionPlane(e);
89
+ }, j = (e) => {
90
+ if (i.value)
91
+ for (let t = 0; t < i.value.length; t++)
92
+ i.value[t].isLook = e;
93
+ }, ae = (e, t) => {
94
+ for (let c = 0; c < i.value.length; c++)
95
+ e == i.value[c].id && (i.value[c].isLook = t);
96
+ }, G = (e) => {
97
+ e.directionLeft = !e.directionLeft, he(e.id);
98
+ }, re = (e) => {
99
+ s.destroySectionPlane(e), i.value = i.value.filter((t) => t.id !== e);
100
+ }, de = (e) => {
101
+ s.setSectionEnable(e);
102
+ }, _e = (e) => {
103
+ s.setSectionDisable(e);
104
+ }, ue = () => {
105
+ j(!0), s.enableSections(), s.showControl(), k.value = !0;
106
+ }, ve = () => {
107
+ j(!1), s.disableSections(), k.value = !1, u.value = "";
108
+ }, fe = (e) => {
109
+ e.id === 0 ? (me(), i.value = []) : e.id === 1 ? pe() : e.id === 2 ? ue() : e.id === 4 && (ve(), y());
110
+ }, he = (e) => {
111
+ s.flipSection(e);
112
+ }, K = () => s.getSectionPlanes(), me = () => {
113
+ s.clear();
114
+ }, pe = () => {
115
+ s.flipSections();
116
+ }, y = () => {
117
+ s.hideControl();
118
+ };
119
+ return (e, t) => {
120
+ const c = we, p = Le, C = Ce, V = be;
121
+ return a(), d(I, null, [
122
+ n(b)("isMobile") ? (a(), d("div", Qe, [
123
+ o("div", Xe, [
124
+ o("div", Ye, v(n(r)("section.boxMode")), 1),
125
+ o("div", Ze, [
126
+ L(C, {
127
+ width: 0.4,
128
+ "size-type": "rem",
129
+ "click-handle": U
130
+ })
131
+ ])
132
+ ]),
133
+ o("div", eo, [
134
+ o("div", oo, [
135
+ o("div", {
136
+ class: "mobile_box_button",
137
+ onClick: ne
138
+ }, v(n(r)("common.reset")), 1),
139
+ o("div", {
140
+ class: Z(["mobile_box_button", { mobile_box_button_active: m.value }]),
141
+ onClick: ie
142
+ }, v(n(r)(m.value ? "section.boxHide" : "section.boxShow")), 3),
143
+ o("div", {
144
+ class: "mobile_box_button",
145
+ onClick: se
146
+ }, v(n(r)("common.close")), 1)
147
+ ])
148
+ ])
149
+ ])) : (a(), Ee(p, {
150
+ key: 0,
151
+ class: "section_panel",
152
+ width: B.value,
153
+ panelTitle: n(r)("toolbar.section"),
154
+ "click-handle": U
155
+ }, {
156
+ default: J(() => [
157
+ o("div", Oe, [
158
+ o("div", Ae, v(n(r)("section.allSections")), 1),
159
+ o("div", $e, [
160
+ o("img", {
161
+ id: "controlOperatePanel",
162
+ src: n(g) + "/bim-viewer/slicing-more.png",
163
+ onClick: t[0] || (t[0] = (l) => H(!S.value))
164
+ }, null, 8, De),
165
+ Q(o("div", He, [
166
+ (a(!0), d(I, null, X(n(Se), (l) => (a(), d("div", {
167
+ key: l.id,
168
+ class: "operation_button",
169
+ onClick: (E) => fe(l)
170
+ }, [
171
+ o("span", null, v(n(r)(l.name)), 1)
172
+ ], 8, Ne))), 128))
173
+ ], 512), [
174
+ [Y, S.value]
175
+ ])
176
+ ])
177
+ ]),
178
+ o("div", ze, [
179
+ L(c, {
180
+ height: D.value + "px"
181
+ }, {
182
+ default: J(() => [
183
+ i.value && i.value.length ? (a(), d("div", Re, [
184
+ (a(!0), d(I, null, X(i.value, (l, E) => (a(), d("div", {
185
+ key: E,
186
+ class: Z(["panel_cont_item", { panel_cont_item_choose: u.value === l.id || k.value }]),
187
+ onClick: (x) => le(l)
188
+ }, [
189
+ o("div", Ue, [
190
+ o("img", {
191
+ src: `${n(g)}/bim-viewer/${l.isLook ? "section_look_icon.png" : "section_unlook_icon.png"}`,
192
+ alt: "",
193
+ onClick: Ie((x) => ce(l), ["stop"])
194
+ }, null, 8, je),
195
+ Me(" " + v(n(r)("section.sectionPrefix") + (E + 1)), 1)
196
+ ]),
197
+ o("div", Ge, [
198
+ l.directionLeft ? (a(), d("img", {
199
+ key: 0,
200
+ src: n(g) + "/bim-viewer/left_section_icon.png",
201
+ alt: "",
202
+ onClick: (x) => G(l)
203
+ }, null, 8, Ke)) : (a(), d("img", {
204
+ key: 1,
205
+ src: n(g) + "/bim-viewer/right_section_icon.png",
206
+ alt: "",
207
+ onClick: (x) => G(l)
208
+ }, null, 8, qe)),
209
+ o("img", {
210
+ src: n(g) + "/bim-viewer/section_del_icon.png",
211
+ alt: "",
212
+ onClick: (x) => re(l.id)
213
+ }, null, 8, We)
214
+ ])
215
+ ], 10, Fe))), 128))
216
+ ])) : (a(), d("div", Je, [
217
+ L(ye, {
218
+ title: n(r)("common.noData"),
219
+ type: "model"
220
+ }, null, 8, ["title"])
221
+ ]))
222
+ ]),
223
+ _: 1
224
+ }, 8, ["height"])
225
+ ])
226
+ ]),
227
+ _: 1
228
+ }, 8, ["width", "panelTitle"])),
229
+ Q(L(V, {
230
+ title: n(r)("alert.selectSectionPlane"),
231
+ "click-handle": te
232
+ }, null, 8, ["title"]), [
233
+ [Y, $.value && !n(b)("isMobile")]
234
+ ])
235
+ ], 64);
236
+ };
237
+ }
238
+ }), co = /* @__PURE__ */ xe(to, [["__scopeId", "data-v-3a586562"]]);
239
+ export {
240
+ co as default
241
+ };