@xtctwins/tctwins-bimx-engine 0.1.0

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 (56) hide show
  1. package/README.md +1 -0
  2. package/dist/AnnotationTool-j9uTpTri.mjs +181 -0
  3. package/dist/BIMX_Viewer_Lib.es.js +8 -0
  4. package/dist/BIMX_Viewer_Lib.umd.js +90165 -0
  5. package/dist/CommentTool-BLrsulc_.mjs +186 -0
  6. package/dist/InspectorTool-BouA94us.mjs +166 -0
  7. package/dist/MeasureTool-CbYIFTPr.mjs +1468 -0
  8. package/dist/RoamTool-CXZPca_M.mjs +43 -0
  9. package/dist/ScreenShotTool-BiNcu9RZ.mjs +368 -0
  10. package/dist/SectionTool-DogiOv1d.mjs +466 -0
  11. package/dist/SettingTool-ClISeAhW.mjs +1261 -0
  12. package/dist/StructureTree-CmsIBbBk.mjs +1415 -0
  13. package/dist/closeButton.vue_vue_type_style_index_0_scope_true_lang-CBPVV86B.mjs +52 -0
  14. package/dist/const-DeAig7Pj.mjs +202 -0
  15. package/dist/debounce-B430Iy_D.mjs +80 -0
  16. package/dist/el-checkbox-id3wFY0e.mjs +479 -0
  17. package/dist/el-input-BW5rElpS.mjs +559 -0
  18. package/dist/el-scrollbar-La242VUu.mjs +34 -0
  19. package/dist/favicon.ico +0 -0
  20. package/dist/icon-DZm1Csdm.mjs +193 -0
  21. package/dist/index-3StVDuUH.mjs +115680 -0
  22. package/dist/index-BgjjA9sB.mjs +502 -0
  23. package/dist/index-L-tY1Gou.mjs +286 -0
  24. package/dist/index.html +17 -0
  25. package/dist/style.css +1 -0
  26. package/dist/use-form-item-DkYURTpK.mjs +105 -0
  27. package/package.json +67 -0
  28. package/types/BIMX_Viewer_Initial/viewerInitial.d.ts +16 -0
  29. package/types/components/BimViewerComponents/AnnotationTool.vue.d.ts +10 -0
  30. package/types/components/BimViewerComponents/CommentTool.vue.d.ts +14 -0
  31. package/types/components/BimViewerComponents/InspectorTool.vue.d.ts +14 -0
  32. package/types/components/BimViewerComponents/MeasureTool.vue.d.ts +12 -0
  33. package/types/components/BimViewerComponents/RoamTool.vue.d.ts +8 -0
  34. package/types/components/BimViewerComponents/ScreenShotTool.vue.d.ts +12 -0
  35. package/types/components/BimViewerComponents/SectionTool.vue.d.ts +6 -0
  36. package/types/components/BimViewerComponents/SettingTool.vue.d.ts +6 -0
  37. package/types/components/BimViewerComponents/StructureTree.vue.d.ts +6 -0
  38. package/types/components/BimViewerComponents/Toolbar.vue.d.ts +12 -0
  39. package/types/components/BimViewerComponents/emptyPage.vue.d.ts +8 -0
  40. package/types/components/BimX_Viewer.vue.d.ts +7 -0
  41. package/types/components/index.d.ts +4 -0
  42. package/types/components/types.d.ts +1 -0
  43. package/types/components/utilsComponents/closeButton.vue.d.ts +41 -0
  44. package/types/index.d.ts +9 -0
  45. package/types/main.d.ts +1 -0
  46. package/types/pages/mainView.vue.d.ts +7 -0
  47. package/types/router/index.d.ts +2 -0
  48. package/types/services/request/config.d.ts +13 -0
  49. package/types/store/components.d.ts +6 -0
  50. package/types/store/const.d.ts +200 -0
  51. package/types/store/ifcPropertyReflect.d.ts +1 -0
  52. package/types/store/toolbars.d.ts +96 -0
  53. package/types/utils/OSSHelper.d.ts +5 -0
  54. package/types/utils/eventBus.d.ts +2 -0
  55. package/types/utils/roles.d.ts +1 -0
  56. package/types/utils/splitType.d.ts +3 -0
@@ -0,0 +1,466 @@
1
+ import { _ as j, a as A, M as U, G as v, d as y, N as oe, u as ne, J as ie, P as se, w as le, O as S, l as re, k as V } from "./index-3StVDuUH.mjs";
2
+ import "./el-scrollbar-La242VUu.mjs";
3
+ import { a as ce, _ as ae } from "./closeButton.vue_vue_type_style_index_0_scope_true_lang-CBPVV86B.mjs";
4
+ import { defineComponent as w, renderSlot as L, ref as C, provide as F, inject as pe, onMounted as de, unref as r, onBeforeUnmount as ue, computed as I, openBlock as p, createBlock as fe, mergeProps as _e, withCtx as N, createElementBlock as u, normalizeClass as K, toDisplayString as O, createCommentVNode as H, createTextVNode as q, watch as ve, createElementVNode as d, createVNode as T, Fragment as J, renderList as G } from "vue";
5
+ import { B as me } from "./const-DeAig7Pj.mjs";
6
+ import { i as ge } from "./icon-DZm1Csdm.mjs";
7
+ import { E as be } from "./index-L-tY1Gou.mjs";
8
+ const he = /* @__PURE__ */ w({
9
+ inheritAttrs: !1
10
+ });
11
+ function ye(s, l, o, n, i, f) {
12
+ return L(s.$slots, "default");
13
+ }
14
+ var Se = /* @__PURE__ */ j(he, [["render", ye], ["__file", "collection.vue"]]);
15
+ const Ce = /* @__PURE__ */ w({
16
+ name: "ElCollectionItem",
17
+ inheritAttrs: !1
18
+ });
19
+ function we(s, l, o, n, i, f) {
20
+ return L(s.$slots, "default");
21
+ }
22
+ var ke = /* @__PURE__ */ j(Ce, [["render", we], ["__file", "collection-item.vue"]]);
23
+ const Ee = "data-el-collection-item", $e = (s) => {
24
+ const l = `El${s}Collection`, o = `${l}Item`, n = Symbol(l), i = Symbol(o), f = {
25
+ ...Se,
26
+ name: l,
27
+ setup() {
28
+ const h = C(null), m = /* @__PURE__ */ new Map();
29
+ F(n, {
30
+ itemMap: m,
31
+ getItems: () => {
32
+ const _ = r(h);
33
+ if (!_)
34
+ return [];
35
+ const c = Array.from(_.querySelectorAll(`[${Ee}]`));
36
+ return [...m.values()].sort((k, E) => c.indexOf(k.ref) - c.indexOf(E.ref));
37
+ },
38
+ collectionRef: h
39
+ });
40
+ }
41
+ }, b = {
42
+ ...ke,
43
+ name: o,
44
+ setup(h, { attrs: m }) {
45
+ const g = C(null), _ = pe(n, void 0);
46
+ F(i, {
47
+ collectionItemRef: g
48
+ }), de(() => {
49
+ const c = r(g);
50
+ c && _.itemMap.set(c, {
51
+ ref: c,
52
+ ...m
53
+ });
54
+ }), ue(() => {
55
+ const c = r(g);
56
+ _.itemMap.delete(c);
57
+ });
58
+ }
59
+ };
60
+ return {
61
+ COLLECTION_INJECTION_KEY: n,
62
+ COLLECTION_ITEM_INJECTION_KEY: i,
63
+ ElCollection: f,
64
+ ElCollectionItem: b
65
+ };
66
+ }, D = A({
67
+ trigger: U.trigger,
68
+ effect: {
69
+ ...v.effect,
70
+ default: "light"
71
+ },
72
+ type: {
73
+ type: y(String)
74
+ },
75
+ placement: {
76
+ type: y(String),
77
+ default: "bottom"
78
+ },
79
+ popperOptions: {
80
+ type: y(Object),
81
+ default: () => ({})
82
+ },
83
+ id: String,
84
+ size: {
85
+ type: String,
86
+ default: ""
87
+ },
88
+ splitButton: Boolean,
89
+ hideOnClick: {
90
+ type: Boolean,
91
+ default: !0
92
+ },
93
+ loop: {
94
+ type: Boolean,
95
+ default: !0
96
+ },
97
+ showTimeout: {
98
+ type: Number,
99
+ default: 150
100
+ },
101
+ hideTimeout: {
102
+ type: Number,
103
+ default: 150
104
+ },
105
+ tabindex: {
106
+ type: y([Number, String]),
107
+ default: 0
108
+ },
109
+ maxHeight: {
110
+ type: y([Number, String]),
111
+ default: ""
112
+ },
113
+ popperClass: {
114
+ type: String,
115
+ default: ""
116
+ },
117
+ disabled: {
118
+ type: Boolean,
119
+ default: !1
120
+ },
121
+ role: {
122
+ type: String,
123
+ default: "menu"
124
+ },
125
+ buttonProps: {
126
+ type: y(Object)
127
+ },
128
+ teleported: v.teleported
129
+ });
130
+ A({
131
+ command: {
132
+ type: [Object, String, Number],
133
+ default: () => ({})
134
+ },
135
+ disabled: Boolean,
136
+ divided: Boolean,
137
+ textValue: String,
138
+ icon: {
139
+ type: ge
140
+ }
141
+ });
142
+ A({
143
+ onKeydown: { type: y(Function) }
144
+ });
145
+ $e("Dropdown");
146
+ const Ie = A({
147
+ trigger: U.trigger,
148
+ placement: D.placement,
149
+ disabled: U.disabled,
150
+ visible: v.visible,
151
+ transition: v.transition,
152
+ popperOptions: D.popperOptions,
153
+ tabindex: D.tabindex,
154
+ content: v.content,
155
+ popperStyle: v.popperStyle,
156
+ popperClass: v.popperClass,
157
+ enterable: {
158
+ ...v.enterable,
159
+ default: !0
160
+ },
161
+ effect: {
162
+ ...v.effect,
163
+ default: "light"
164
+ },
165
+ teleported: v.teleported,
166
+ title: String,
167
+ width: {
168
+ type: [String, Number],
169
+ default: 150
170
+ },
171
+ offset: {
172
+ type: Number,
173
+ default: void 0
174
+ },
175
+ showAfter: {
176
+ type: Number,
177
+ default: 0
178
+ },
179
+ hideAfter: {
180
+ type: Number,
181
+ default: 200
182
+ },
183
+ autoClose: {
184
+ type: Number,
185
+ default: 0
186
+ },
187
+ showArrow: {
188
+ type: Boolean,
189
+ default: !0
190
+ },
191
+ persistent: {
192
+ type: Boolean,
193
+ default: !0
194
+ },
195
+ "onUpdate:visible": {
196
+ type: Function
197
+ }
198
+ }), Ne = {
199
+ "update:visible": (s) => oe(s),
200
+ "before-enter": () => !0,
201
+ "before-leave": () => !0,
202
+ "after-enter": () => !0,
203
+ "after-leave": () => !0
204
+ }, Oe = "onUpdate:visible", Pe = w({
205
+ name: "ElPopover"
206
+ }), Be = /* @__PURE__ */ w({
207
+ ...Pe,
208
+ props: Ie,
209
+ emits: Ne,
210
+ setup(s, { expose: l, emit: o }) {
211
+ const n = s, i = I(() => n[Oe]), f = ne("popover"), b = C(), h = I(() => {
212
+ var e;
213
+ return (e = r(b)) == null ? void 0 : e.popperRef;
214
+ }), m = I(() => [
215
+ {
216
+ width: ce(n.width)
217
+ },
218
+ n.popperStyle
219
+ ]), g = I(() => [f.b(), n.popperClass, { [f.m("plain")]: !!n.content }]), _ = I(() => n.transition === `${f.namespace.value}-fade-in-linear`), c = () => {
220
+ var e;
221
+ (e = b.value) == null || e.hide();
222
+ }, P = () => {
223
+ o("before-enter");
224
+ }, k = () => {
225
+ o("before-leave");
226
+ }, E = () => {
227
+ o("after-enter");
228
+ }, M = () => {
229
+ o("update:visible", !1), o("after-leave");
230
+ };
231
+ return l({
232
+ popperRef: h,
233
+ hide: c
234
+ }), (e, z) => (p(), fe(r(ie), _e({
235
+ ref_key: "tooltipRef",
236
+ ref: b
237
+ }, e.$attrs, {
238
+ trigger: e.trigger,
239
+ placement: e.placement,
240
+ disabled: e.disabled,
241
+ visible: e.visible,
242
+ transition: e.transition,
243
+ "popper-options": e.popperOptions,
244
+ tabindex: e.tabindex,
245
+ content: e.content,
246
+ offset: e.offset,
247
+ "show-after": e.showAfter,
248
+ "hide-after": e.hideAfter,
249
+ "auto-close": e.autoClose,
250
+ "show-arrow": e.showArrow,
251
+ "aria-label": e.title,
252
+ effect: e.effect,
253
+ enterable: e.enterable,
254
+ "popper-class": r(g),
255
+ "popper-style": r(m),
256
+ teleported: e.teleported,
257
+ persistent: e.persistent,
258
+ "gpu-acceleration": r(_),
259
+ "onUpdate:visible": r(i),
260
+ onBeforeShow: P,
261
+ onBeforeHide: k,
262
+ onShow: E,
263
+ onHide: M
264
+ }), {
265
+ content: N(() => [
266
+ e.title ? (p(), u("div", {
267
+ key: 0,
268
+ class: K(r(f).e("title")),
269
+ role: "title"
270
+ }, O(e.title), 3)) : H("v-if", !0),
271
+ L(e.$slots, "default", {}, () => [
272
+ q(O(e.content), 1)
273
+ ])
274
+ ]),
275
+ default: N(() => [
276
+ e.$slots.reference ? L(e.$slots, "reference", { key: 0 }) : H("v-if", !0)
277
+ ]),
278
+ _: 3
279
+ }, 16, ["trigger", "placement", "disabled", "visible", "transition", "popper-options", "tabindex", "content", "offset", "show-after", "hide-after", "auto-close", "show-arrow", "aria-label", "effect", "enterable", "popper-class", "popper-style", "teleported", "persistent", "gpu-acceleration", "onUpdate:visible"]));
280
+ }
281
+ });
282
+ var Te = /* @__PURE__ */ j(Be, [["__file", "popover.vue"]]);
283
+ const Y = (s, l) => {
284
+ const o = l.arg || l.value, n = o == null ? void 0 : o.popperRef;
285
+ n && (n.triggerRef = s);
286
+ };
287
+ var Le = {
288
+ mounted(s, l) {
289
+ Y(s, l);
290
+ },
291
+ updated(s, l) {
292
+ Y(s, l);
293
+ }
294
+ };
295
+ const Ae = "popover", Me = se(Le, Ae), Re = le(Te, {
296
+ directive: Me
297
+ }), Ve = { class: "empty" }, De = ["src"], Ue = { class: "title" }, je = /* @__PURE__ */ w({
298
+ __name: "emptyPage",
299
+ props: {
300
+ title: String,
301
+ type: String
302
+ },
303
+ setup(s) {
304
+ const l = s, o = C("这里空空的,快去上传文件吧~");
305
+ return ve(l, (n) => {
306
+ o.value = n.title || "这里空空的,快去上传文件吧~";
307
+ }), (n, i) => (p(), u("div", Ve, [
308
+ d("img", {
309
+ class: K(["img1", { img1: l.type === "model" }]),
310
+ src: r(S) + "/bimkk-app/pinapp-empty-box.png",
311
+ alt: ""
312
+ }, null, 10, De),
313
+ d("div", Ue, O(s.title), 1)
314
+ ]));
315
+ }
316
+ }), Ke = /* @__PURE__ */ re(je, [["__scopeId", "data-v-75fd3f46"]]), ze = { class: "section_panel" }, Fe = { class: "section_panel_header" }, He = /* @__PURE__ */ d("div", { class: "section_title" }, "剖切", -1), Je = { class: "section_panel_middle" }, Ge = /* @__PURE__ */ d("div", { class: "section_middle_title" }, "全部剖切", -1), Ye = ["src"], qe = { class: "popover-class" }, We = ["onClick"], xe = { class: "section_panel_cont" }, Qe = ["onClick"], Xe = { class: "cont_item_left" }, Ze = ["src", "onClick"], et = ["src", "onClick"], tt = { class: "cont_item_right" }, ot = ["src", "onClick"], nt = ["src", "onClick"], it = ["src", "onClick"], st = {
317
+ key: 1,
318
+ class: "empty1"
319
+ }, ft = /* @__PURE__ */ w({
320
+ __name: "SectionTool",
321
+ emits: ["closePanel"],
322
+ setup(s, { emit: l }) {
323
+ const o = C(), n = C();
324
+ let i, f;
325
+ const b = l, h = () => {
326
+ b("closePanel"), V.emit("unhighlight"), o.value = [];
327
+ };
328
+ V.on("BimViewer", () => {
329
+ i = window.BimViewer.sectionTool, f = window.BimViewer.eventTrigger, f.on("createSection", (t) => {
330
+ o.value = Object.keys(z()).map((B) => ({
331
+ id: B,
332
+ isLook: !0,
333
+ directionLeft: !0
334
+ })), n.value = t.id;
335
+ });
336
+ }), V.on("closeAll", (t) => {
337
+ o.value = [];
338
+ });
339
+ const m = (t) => {
340
+ i.showSectionPlane(t);
341
+ }, g = (t) => {
342
+ n.value !== t.id && (n.value = t.id, m(t.id));
343
+ }, _ = (t) => {
344
+ t.isLook = !t.isLook, t.isLook ? k(t.id) : E(t.id);
345
+ }, c = (t) => {
346
+ t.directionLeft = !t.directionLeft, e(t.id);
347
+ }, P = (t) => {
348
+ i.destroySectionPlane(t), o.value = o.value.filter((B) => B.id !== t);
349
+ }, k = (t) => {
350
+ i.setSectionEnable(t);
351
+ }, E = (t) => {
352
+ i.setSectionDisable(t);
353
+ }, M = (t) => {
354
+ t.id === 0 ? (W(), o.value = []) : t.id === 1 ? x() : t.id === 2 ? Q() : t.id === 4 && X();
355
+ }, e = (t) => {
356
+ i.flipSection(t);
357
+ }, z = () => (console.log("sectionTool.getSectionPlanes()", i.getSectionPlanes()), i.getSectionPlanes()), W = () => {
358
+ i.clear();
359
+ }, x = () => {
360
+ i.flipSections();
361
+ }, Q = () => {
362
+ i.enableSections();
363
+ }, X = () => {
364
+ i.disableSections();
365
+ };
366
+ return (t, B) => {
367
+ const Z = ae, ee = Re, te = be;
368
+ return p(), u("div", ze, [
369
+ d("div", Fe, [
370
+ He,
371
+ T(Z, {
372
+ class: "icon_close",
373
+ width: 18,
374
+ "click-handle": h,
375
+ light: ""
376
+ })
377
+ ]),
378
+ d("div", Je, [
379
+ Ge,
380
+ d("div", null, [
381
+ T(ee, {
382
+ placement: "bottom",
383
+ trigger: "hover",
384
+ "popper-style": `
385
+ inset: 290px 5px auto auto;
386
+ z-index:999999;
387
+ width: 152px;
388
+ text-align:center;
389
+ border-radius: 10px;
390
+ `
391
+ }, {
392
+ reference: N(() => [
393
+ d("img", {
394
+ src: r(S) + "/bim-viewer/slicing-more.png"
395
+ }, null, 8, Ye)
396
+ ]),
397
+ default: N(() => [
398
+ d("div", qe, [
399
+ (p(!0), u(J, null, G(r(me), (a) => (p(), u("div", {
400
+ class: "bulk-operation",
401
+ key: a.id,
402
+ onClick: (R) => M(a)
403
+ }, O(a.name), 9, We))), 128))
404
+ ])
405
+ ]),
406
+ _: 1
407
+ })
408
+ ])
409
+ ]),
410
+ d("div", xe, [
411
+ T(te, { height: "360px" }, {
412
+ default: N(() => [
413
+ o.value && o.value.length ? (p(!0), u(J, { key: 0 }, G(o.value, (a, R) => (p(), u("div", {
414
+ class: K(["panel_cont_item", { panel_cont_item_choose: n.value === a.id }]),
415
+ key: R,
416
+ onClick: ($) => g(a)
417
+ }, [
418
+ d("div", Xe, [
419
+ a.isLook ? (p(), u("img", {
420
+ key: 1,
421
+ src: r(S) + "/bim-viewer/section_unlook_icon.png",
422
+ alt: "",
423
+ onClick: ($) => _(a)
424
+ }, null, 8, et)) : (p(), u("img", {
425
+ key: 0,
426
+ src: r(S) + "/bim-viewer/section_look_icon.png",
427
+ alt: "",
428
+ onClick: ($) => _(a)
429
+ }, null, 8, Ze)),
430
+ q(" 剖切面#" + O(R + 1), 1)
431
+ ]),
432
+ d("div", tt, [
433
+ a.directionLeft ? (p(), u("img", {
434
+ key: 0,
435
+ src: r(S) + "/bim-viewer/left_section_icon.png",
436
+ onClick: ($) => c(a),
437
+ alt: ""
438
+ }, null, 8, ot)) : (p(), u("img", {
439
+ key: 1,
440
+ src: r(S) + "/bim-viewer/right_section_icon.png",
441
+ onClick: ($) => c(a),
442
+ alt: ""
443
+ }, null, 8, nt)),
444
+ d("img", {
445
+ src: r(S) + "/bim-viewer/section_del_icon.png",
446
+ alt: "",
447
+ onClick: ($) => P(a.id)
448
+ }, null, 8, it)
449
+ ])
450
+ ], 10, Qe))), 128)) : (p(), u("div", st, [
451
+ T(Ke, {
452
+ title: "暂无剖切,快去添加~",
453
+ type: "model"
454
+ })
455
+ ]))
456
+ ]),
457
+ _: 1
458
+ })
459
+ ])
460
+ ]);
461
+ };
462
+ }
463
+ });
464
+ export {
465
+ ft as default
466
+ };