@xtctwins/tctwins-bimx-engine 0.1.21 → 0.1.22

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 (36) hide show
  1. package/dist/{AnnotationTool-BvFG1vTX.mjs → AnnotationTool-CgiAUuLM.mjs} +12 -12
  2. package/dist/BIMX_Viewer_Lib.es.js +4 -4
  3. package/dist/BIMX_Viewer_Lib.umd.js +86 -91
  4. package/dist/CommentTool-BeT1ECI-.mjs +338 -0
  5. package/dist/HiddenTool-qqISJ_uV.mjs +58 -0
  6. package/dist/InspectorTool-CLPjV6WW.mjs +609 -0
  7. package/dist/MeasureTool-Be-rmUeb.mjs +1540 -0
  8. package/dist/{NavigateTool-CCIb1X4u.mjs → NavigateTool-C-VsKB0k.mjs} +7 -7
  9. package/dist/{RoamTool-B1w0efz8.mjs → RoamTool-DdHBNeVg.mjs} +20 -20
  10. package/dist/{ScreenShotTool-BviRVFSg.mjs → ScreenShotTool-Da7D2dkW.mjs} +67 -67
  11. package/dist/SectionTool-CHcmUQul.mjs +624 -0
  12. package/dist/SettingTool-CkR1F4x_.mjs +525 -0
  13. package/dist/StructureTree-DBu9xTue.mjs +1438 -0
  14. package/dist/{debounce-Cg3LHv0T.mjs → debounce-DLzt_q3i.mjs} +13 -13
  15. package/dist/{el-checkbox-lp8vWAXQ.mjs → el-checkbox-DsUGOsl_.mjs} +46 -46
  16. package/dist/{el-input-Bwqgf3wZ.mjs → el-input-UdjCNTtW.mjs} +66 -68
  17. package/dist/{el-input-number-0OWyX276.mjs → el-input-number-ySU-dVGM.mjs} +75 -75
  18. package/dist/{index-CQ8depiU.mjs → index-BfLgpvcd.mjs} +3 -3
  19. package/dist/{index-CYEu_kT4.mjs → index-DQKkZiNH.mjs} +1 -1
  20. package/dist/{index-DX-eYsBm.mjs → index-DyFDTMAw.mjs} +1795 -1794
  21. package/dist/{isEqual-Bg-tyY30.mjs → isEqual-BWlMaoTp.mjs} +9 -9
  22. package/dist/panel.vue_vue_type_style_index_0_lang-ZCDiwNFo.mjs +96 -0
  23. package/dist/style.css +1 -1
  24. package/dist/tallPanel-Cz_n6AsB.mjs +49 -0
  25. package/package.json +1 -1
  26. package/types/components/utilsComponents/tallPanel.vue.d.ts +41 -0
  27. package/types/services/fileApi/fileManager.d.ts +5 -5
  28. package/types/store/themeManager.d.ts +1 -1
  29. package/dist/CommentTool-B6ruuuGV.mjs +0 -338
  30. package/dist/HiddenTool-DW-lRdW5.mjs +0 -58
  31. package/dist/InspectorTool-Cc288ySp.mjs +0 -515
  32. package/dist/MeasureTool-DdfM3U_3.mjs +0 -1542
  33. package/dist/SectionTool-jSjWX32j.mjs +0 -630
  34. package/dist/SettingTool-CVMZAx2H.mjs +0 -536
  35. package/dist/StructureTree-4OCdRRPG.mjs +0 -2672
  36. package/dist/panel.vue_vue_type_style_index_0_scope_true_lang-BfE1I0S9.mjs +0 -82
@@ -1,1542 +0,0 @@
1
- import { z as kt, A as yl, C as Rt, D as Dt, F as Sl, G as Cl, H as wl, i as st, a as ot, n as Z, l as $t, I as Ol, u as ge, _ as Ve, w as _t, g as ve, J as Bt, K as ae, L as ue, M as Fe, N as wt, c as Ml, P as je, E as Il, f as Vl, d as He, Q as Tl, R as El, S as kl, v as At, T as Rl, U as Dl, V as Lt, p as $l, q, s as _l, O as xe, W as Bl, x as Al } from "./index-DX-eYsBm.mjs";
2
- import { _ as Ll } from "./panel.vue_vue_type_style_index_0_scope_true_lang-BfE1I0S9.mjs";
3
- import { c as Pl, u as Pt, E as tt, d as Nl, e as Fl, f as Hl, g as zl, V as Wl, U as pe, C as Nt, h as Kl, a as Ot, b as Ul } from "./el-input-Bwqgf3wZ.mjs";
4
- import { getCurrentInstance as ze, inject as Ie, ref as M, computed as b, defineComponent as x, openBlock as d, createElementBlock as I, normalizeClass as h, unref as R, normalizeStyle as j, createElementVNode as i, renderSlot as A, createBlock as N, withModifiers as P, withCtx as k, createVNode as L, createCommentVNode as B, Transition as Gl, toRaw as Ft, watch as re, reactive as We, toRefs as Ht, onBeforeUnmount as ql, nextTick as ie, withDirectives as Me, toDisplayString as F, vShow as at, onMounted as Ke, watchEffect as Ql, provide as zt, resolveComponent as oe, resolveDirective as Yl, toHandlerKey as Jl, Fragment as me, renderList as he, createTextVNode as Mt, withKeys as Oe, vModelText as Xl, resolveDynamicComponent as et, pushScopeId as Zl, popScopeId as jl } from "vue";
5
- import { M as It } from "./const-CbUmfuHy.mjs";
6
- import { Close as Vt, CircleClose as xl, ArrowDown as en } from "@element-plus/icons-vue";
7
- import { s as Ue, a as Wt } from "./token-UNVJeAU8.mjs";
8
- import { g as J, u as tn } from "./index-CQ8depiU.mjs";
9
- import { S as ln, b as Kt, k as nn, i as lt } from "./isEqual-Bg-tyY30.mjs";
10
- import { d as sn } from "./debounce-Cg3LHv0T.mjs";
11
- function on(e, n, s, u) {
12
- e.length;
13
- for (var a = s + 1; a--; )
14
- if (n(e[a], a, e))
15
- return a;
16
- return -1;
17
- }
18
- function X() {
19
- if (!arguments.length)
20
- return [];
21
- var e = arguments[0];
22
- return kt(e) ? e : [e];
23
- }
24
- var an = 1, un = 2;
25
- function rn(e, n, s, u) {
26
- var a = s.length, v = a;
27
- if (e == null)
28
- return !v;
29
- for (e = Object(e); a--; ) {
30
- var l = s[a];
31
- if (l[2] ? l[1] !== e[l[0]] : !(l[0] in e))
32
- return !1;
33
- }
34
- for (; ++a < v; ) {
35
- l = s[a];
36
- var p = l[0], r = e[p], f = l[1];
37
- if (l[2]) {
38
- if (r === void 0 && !(p in e))
39
- return !1;
40
- } else {
41
- var y = new ln(), w;
42
- if (!(w === void 0 ? Kt(f, r, an | un, u, y) : w))
43
- return !1;
44
- }
45
- }
46
- return !0;
47
- }
48
- function Ut(e) {
49
- return e === e && !yl(e);
50
- }
51
- function cn(e) {
52
- for (var n = nn(e), s = n.length; s--; ) {
53
- var u = n[s], a = e[u];
54
- n[s] = [u, a, Ut(a)];
55
- }
56
- return n;
57
- }
58
- function Gt(e, n) {
59
- return function(s) {
60
- return s == null ? !1 : s[e] === n && (n !== void 0 || e in Object(s));
61
- };
62
- }
63
- function dn(e) {
64
- var n = cn(e);
65
- return n.length == 1 && n[0][2] ? Gt(n[0][0], n[0][1]) : function(s) {
66
- return s === e || rn(s, e, n);
67
- };
68
- }
69
- var fn = 1, pn = 2;
70
- function vn(e, n) {
71
- return Rt(e) && Ut(n) ? Gt(Dt(e), n) : function(s) {
72
- var u = J(s, e);
73
- return u === void 0 && u === n ? Sl(s, e) : Kt(n, u, fn | pn);
74
- };
75
- }
76
- function mn(e) {
77
- return function(n) {
78
- return n == null ? void 0 : n[e];
79
- };
80
- }
81
- function hn(e) {
82
- return function(n) {
83
- return Cl(n, e);
84
- };
85
- }
86
- function gn(e) {
87
- return Rt(e) ? mn(Dt(e)) : hn(e);
88
- }
89
- function bn(e) {
90
- return typeof e == "function" ? e : e == null ? wl : typeof e == "object" ? kt(e) ? vn(e[0], e[1]) : dn(e) : gn(e);
91
- }
92
- function yn(e, n, s) {
93
- var u = e == null ? 0 : e.length;
94
- if (!u)
95
- return -1;
96
- var a = u - 1;
97
- return on(e, bn(n), a);
98
- }
99
- const Sn = (e = "") => e.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
100
- function Cn(e, n) {
101
- if (!st)
102
- return;
103
- if (!n) {
104
- e.scrollTop = 0;
105
- return;
106
- }
107
- const s = [];
108
- let u = n.offsetParent;
109
- for (; u !== null && e !== u && e.contains(u); )
110
- s.push(u), u = u.offsetParent;
111
- const a = n.offsetTop + s.reduce((r, f) => r + f.offsetTop, 0), v = a + n.offsetHeight, l = e.scrollTop, p = l + e.clientHeight;
112
- a < l ? e.scrollTop = a : v > p && (e.scrollTop = v - e.clientHeight);
113
- }
114
- const wn = Symbol("emptyValuesContextKey"), On = "use-empty-values", Mn = ["", void 0, null], In = void 0, Vn = ot({
115
- emptyValues: Array,
116
- valueOnClear: {
117
- type: [String, Number, Boolean, Function],
118
- default: void 0,
119
- validator: (e) => Z(e) ? !e() : !e
120
- }
121
- }), Tn = (e, n) => {
122
- const s = ze() ? Ie(wn, M({})) : M({}), u = b(() => e.emptyValues || s.value.emptyValues || Mn), a = b(() => Z(e.valueOnClear) ? e.valueOnClear() : e.valueOnClear !== void 0 ? e.valueOnClear : Z(s.value.valueOnClear) ? s.value.valueOnClear() : s.value.valueOnClear !== void 0 ? s.value.valueOnClear : In), v = (l) => u.value.includes(l);
123
- return u.value.includes(a.value) || $t(On, "value-on-clear should be a value of empty-values"), {
124
- emptyValues: u,
125
- valueOnClear: a,
126
- isEmptyValue: v
127
- };
128
- }, Y = /* @__PURE__ */ new Map();
129
- if (st) {
130
- let e;
131
- document.addEventListener("mousedown", (n) => e = n), document.addEventListener("mouseup", (n) => {
132
- if (e) {
133
- for (const s of Y.values())
134
- for (const { documentHandler: u } of s)
135
- u(n, e);
136
- e = void 0;
137
- }
138
- });
139
- }
140
- function Tt(e, n) {
141
- let s = [];
142
- return Array.isArray(n.arg) ? s = n.arg : Ol(n.arg) && s.push(n.arg), function(u, a) {
143
- const v = n.instance.popperRef, l = u.target, p = a == null ? void 0 : a.target, r = !n || !n.instance, f = !l || !p, y = e.contains(l) || e.contains(p), w = e === l, O = s.length && s.some((C) => C == null ? void 0 : C.contains(l)) || s.length && s.includes(p), g = v && (v.contains(l) || v.contains(p));
144
- r || f || y || w || O || g || n.value(u, a);
145
- };
146
- }
147
- const En = {
148
- beforeMount(e, n) {
149
- Y.has(e) || Y.set(e, []), Y.get(e).push({
150
- documentHandler: Tt(e, n),
151
- bindingFn: n.value
152
- });
153
- },
154
- updated(e, n) {
155
- Y.has(e) || Y.set(e, []);
156
- const s = Y.get(e), u = s.findIndex((v) => v.bindingFn === n.oldValue), a = {
157
- documentHandler: Tt(e, n),
158
- bindingFn: n.value
159
- };
160
- u >= 0 ? s.splice(u, 1, a) : s.push(a);
161
- },
162
- unmounted(e) {
163
- Y.delete(e);
164
- }
165
- }, nt = ot({
166
- type: {
167
- type: String,
168
- values: ["primary", "success", "info", "warning", "danger"],
169
- default: "primary"
170
- },
171
- closable: Boolean,
172
- disableTransitions: Boolean,
173
- hit: Boolean,
174
- color: String,
175
- size: {
176
- type: String,
177
- values: Pl
178
- },
179
- effect: {
180
- type: String,
181
- values: ["dark", "light", "plain"],
182
- default: "light"
183
- },
184
- round: Boolean
185
- }), kn = {
186
- close: (e) => e instanceof MouseEvent,
187
- click: (e) => e instanceof MouseEvent
188
- }, Rn = x({
189
- name: "ElTag"
190
- }), Dn = /* @__PURE__ */ x({
191
- ...Rn,
192
- props: nt,
193
- emits: kn,
194
- setup(e, { emit: n }) {
195
- const s = e, u = Pt(), a = ge("tag"), v = b(() => {
196
- const { type: r, hit: f, effect: y, closable: w, round: O } = s;
197
- return [
198
- a.b(),
199
- a.is("closable", w),
200
- a.m(r || "primary"),
201
- a.m(u.value),
202
- a.m(y),
203
- a.is("hit", f),
204
- a.is("round", O)
205
- ];
206
- }), l = (r) => {
207
- n("close", r);
208
- }, p = (r) => {
209
- n("click", r);
210
- };
211
- return (r, f) => r.disableTransitions ? (d(), I("span", {
212
- key: 0,
213
- class: h(R(v)),
214
- style: j({ backgroundColor: r.color }),
215
- onClick: p
216
- }, [
217
- i("span", {
218
- class: h(R(a).e("content"))
219
- }, [
220
- A(r.$slots, "default")
221
- ], 2),
222
- r.closable ? (d(), N(R(tt), {
223
- key: 0,
224
- class: h(R(a).e("close")),
225
- onClick: P(l, ["stop"])
226
- }, {
227
- default: k(() => [
228
- L(R(Vt))
229
- ]),
230
- _: 1
231
- }, 8, ["class", "onClick"])) : B("v-if", !0)
232
- ], 6)) : (d(), N(Gl, {
233
- key: 1,
234
- name: `${R(a).namespace.value}-zoom-in-center`,
235
- appear: ""
236
- }, {
237
- default: k(() => [
238
- i("span", {
239
- class: h(R(v)),
240
- style: j({ backgroundColor: r.color }),
241
- onClick: p
242
- }, [
243
- i("span", {
244
- class: h(R(a).e("content"))
245
- }, [
246
- A(r.$slots, "default")
247
- ], 2),
248
- r.closable ? (d(), N(R(tt), {
249
- key: 0,
250
- class: h(R(a).e("close")),
251
- onClick: P(l, ["stop"])
252
- }, {
253
- default: k(() => [
254
- L(R(Vt))
255
- ]),
256
- _: 1
257
- }, 8, ["class", "onClick"])) : B("v-if", !0)
258
- ], 6)
259
- ]),
260
- _: 3
261
- }, 8, ["name"]));
262
- }
263
- });
264
- var $n = /* @__PURE__ */ Ve(Dn, [["__file", "tag.vue"]]);
265
- const _n = _t($n);
266
- function Bn(e, n) {
267
- const s = Ie(Ue), u = Ie(Wt, { disabled: !1 }), a = b(() => y(X(s.props.modelValue), e.value)), v = b(() => {
268
- var g;
269
- if (s.props.multiple) {
270
- const C = X((g = s.props.modelValue) != null ? g : []);
271
- return !a.value && C.length >= s.props.multipleLimit && s.props.multipleLimit > 0;
272
- } else
273
- return !1;
274
- }), l = b(() => e.label || (ve(e.value) ? "" : e.value)), p = b(() => e.value || e.label || ""), r = b(() => e.disabled || n.groupDisabled || v.value), f = ze(), y = (g = [], C) => {
275
- if (ve(e.value)) {
276
- const m = s.props.valueKey;
277
- return g && g.some((D) => Ft(J(D, m)) === J(C, m));
278
- } else
279
- return g && g.includes(C);
280
- }, w = () => {
281
- !e.disabled && !u.disabled && (s.states.hoveringIndex = s.optionsArray.indexOf(f.proxy));
282
- }, O = (g) => {
283
- const C = new RegExp(Sn(g), "i");
284
- n.visible = C.test(l.value) || e.created;
285
- };
286
- return re(() => l.value, () => {
287
- !e.created && !s.props.remote && s.setSelected();
288
- }), re(() => e.value, (g, C) => {
289
- const { remote: m, valueKey: D } = s.props;
290
- if (g !== C && (s.onOptionDestroy(C, f.proxy), s.onOptionCreate(f.proxy)), !e.created && !m) {
291
- if (D && ve(g) && ve(C) && g[D] === C[D])
292
- return;
293
- s.setSelected();
294
- }
295
- }), re(() => u.disabled, () => {
296
- n.groupDisabled = u.disabled;
297
- }, { immediate: !0 }), {
298
- select: s,
299
- currentLabel: l,
300
- currentValue: p,
301
- itemSelected: a,
302
- isDisabled: r,
303
- hoverItem: w,
304
- updateOption: O
305
- };
306
- }
307
- const An = x({
308
- name: "ElOption",
309
- componentName: "ElOption",
310
- props: {
311
- value: {
312
- required: !0,
313
- type: [String, Number, Boolean, Object]
314
- },
315
- label: [String, Number],
316
- created: Boolean,
317
- disabled: Boolean
318
- },
319
- setup(e) {
320
- const n = ge("select"), s = Bt(), u = b(() => [
321
- n.be("dropdown", "item"),
322
- n.is("disabled", R(p)),
323
- n.is("selected", R(l)),
324
- n.is("hovering", R(O))
325
- ]), a = We({
326
- index: -1,
327
- groupDisabled: !1,
328
- visible: !0,
329
- hover: !1
330
- }), {
331
- currentLabel: v,
332
- itemSelected: l,
333
- isDisabled: p,
334
- select: r,
335
- hoverItem: f,
336
- updateOption: y
337
- } = Bn(e, a), { visible: w, hover: O } = Ht(a), g = ze().proxy;
338
- r.onOptionCreate(g), ql(() => {
339
- const m = g.value, { selected: D } = r.states, G = (r.props.multiple ? D : [D]).some((H) => H.value === g.value);
340
- ie(() => {
341
- r.states.cachedOptions.get(m) === g && !G && r.states.cachedOptions.delete(m);
342
- }), r.onOptionDestroy(m, g);
343
- });
344
- function C() {
345
- p.value || r.handleOptionSelect(g);
346
- }
347
- return {
348
- ns: n,
349
- id: s,
350
- containerKls: u,
351
- currentLabel: v,
352
- itemSelected: l,
353
- isDisabled: p,
354
- select: r,
355
- hoverItem: f,
356
- updateOption: y,
357
- visible: w,
358
- hover: O,
359
- selectOptionClick: C,
360
- states: a
361
- };
362
- }
363
- });
364
- function Ln(e, n, s, u, a, v) {
365
- return Me((d(), I("li", {
366
- id: e.id,
367
- class: h(e.containerKls),
368
- role: "option",
369
- "aria-disabled": e.isDisabled || void 0,
370
- "aria-selected": e.itemSelected,
371
- onMouseenter: e.hoverItem,
372
- onClick: P(e.selectOptionClick, ["stop"])
373
- }, [
374
- A(e.$slots, "default", {}, () => [
375
- i("span", null, F(e.currentLabel), 1)
376
- ])
377
- ], 42, ["id", "aria-disabled", "aria-selected", "onMouseenter", "onClick"])), [
378
- [at, e.visible]
379
- ]);
380
- }
381
- var it = /* @__PURE__ */ Ve(An, [["render", Ln], ["__file", "option.vue"]]);
382
- const Pn = x({
383
- name: "ElSelectDropdown",
384
- componentName: "ElSelectDropdown",
385
- setup() {
386
- const e = Ie(Ue), n = ge("select"), s = b(() => e.props.popperClass), u = b(() => e.props.multiple), a = b(() => e.props.fitInputWidth), v = M("");
387
- function l() {
388
- var p;
389
- v.value = `${(p = e.selectRef) == null ? void 0 : p.offsetWidth}px`;
390
- }
391
- return Ke(() => {
392
- l(), ae(e.selectRef, l);
393
- }), {
394
- ns: n,
395
- minWidth: v,
396
- popperClass: s,
397
- isMultiple: u,
398
- isFitInputWidth: a
399
- };
400
- }
401
- });
402
- function Nn(e, n, s, u, a, v) {
403
- return d(), I("div", {
404
- class: h([e.ns.b("dropdown"), e.ns.is("multiple", e.isMultiple), e.popperClass]),
405
- style: j({ [e.isFitInputWidth ? "width" : "minWidth"]: e.minWidth })
406
- }, [
407
- e.$slots.header ? (d(), I("div", {
408
- key: 0,
409
- class: h(e.ns.be("dropdown", "header"))
410
- }, [
411
- A(e.$slots, "header")
412
- ], 2)) : B("v-if", !0),
413
- A(e.$slots, "default"),
414
- e.$slots.footer ? (d(), I("div", {
415
- key: 1,
416
- class: h(e.ns.be("dropdown", "footer"))
417
- }, [
418
- A(e.$slots, "footer")
419
- ], 2)) : B("v-if", !0)
420
- ], 6);
421
- }
422
- var Fn = /* @__PURE__ */ Ve(Pn, [["render", Nn], ["__file", "select-dropdown.vue"]]);
423
- const Hn = 11, zn = (e, n) => {
424
- const { t: s } = tn(), u = Bt(), a = ge("select"), v = ge("input"), l = We({
425
- inputValue: "",
426
- options: /* @__PURE__ */ new Map(),
427
- cachedOptions: /* @__PURE__ */ new Map(),
428
- disabledOptions: /* @__PURE__ */ new Map(),
429
- optionValues: [],
430
- selected: e.multiple ? [] : {},
431
- selectionWidth: 0,
432
- calculatorWidth: 0,
433
- collapseItemWidth: 0,
434
- selectedLabel: "",
435
- hoveringIndex: -1,
436
- previousQuery: null,
437
- inputHovering: !1,
438
- menuVisibleOnFocus: !1,
439
- isBeforeHide: !1
440
- }), p = M(null), r = M(null), f = M(null), y = M(null), w = M(null), O = M(null), g = M(null), C = M(null), m = M(null), D = M(null), W = M(null), G = M(null), {
441
- isComposing: H,
442
- handleCompositionStart: ee,
443
- handleCompositionUpdate: Ge,
444
- handleCompositionEnd: z
445
- } = Nl({
446
- afterComposition: (t) => pt(t)
447
- }), { wrapperRef: Te, isFocused: be, handleBlur: Ee } = Fl(w, {
448
- afterFocus() {
449
- e.automaticDropdown && !T.value && (T.value = !0, l.menuVisibleOnFocus = !0);
450
- },
451
- beforeBlur(t) {
452
- var o, S;
453
- return ((o = f.value) == null ? void 0 : o.isFocusInsideContent(t)) || ((S = y.value) == null ? void 0 : S.isFocusInsideContent(t));
454
- },
455
- afterBlur() {
456
- T.value = !1, l.menuVisibleOnFocus = !1;
457
- }
458
- }), T = M(!1), te = M(), { form: ye, formItem: le } = Hl(), { inputId: ke } = zl(e, {
459
- formItemContext: le
460
- }), { valueOnClear: ce, isEmptyValue: qe } = Tn(e), de = b(() => e.disabled || (ye == null ? void 0 : ye.disabled)), Se = b(() => ue(e.modelValue) ? e.modelValue.length > 0 : !qe(e.modelValue)), Qe = b(() => e.clearable && !de.value && l.inputHovering && Se.value), Re = b(() => e.remote && e.filterable && !e.remoteShowSuffix ? "" : e.suffixIcon), Ye = b(() => a.is("reverse", Re.value && T.value)), De = b(() => (le == null ? void 0 : le.validateState) || ""), c = b(() => Wl[De.value]), $ = b(() => e.remote ? 300 : 0), $e = b(() => e.loading ? e.loadingText || s("el.select.loading") : e.remote && !l.inputValue && l.options.size === 0 ? !1 : e.filterable && l.inputValue && l.options.size > 0 && ne.value === 0 ? e.noMatchText || s("el.select.noMatch") : l.options.size === 0 ? e.noDataText || s("el.select.noData") : null), ne = b(() => _.value.filter((t) => t.visible).length), _ = b(() => {
461
- const t = Array.from(l.options.values()), o = [];
462
- return l.optionValues.forEach((S) => {
463
- const E = t.findIndex((Q) => Q.value === S);
464
- E > -1 && o.push(t[E]);
465
- }), o.length >= t.length ? o : t;
466
- }), Je = b(() => Array.from(l.cachedOptions.values())), Xe = b(() => {
467
- const t = _.value.filter((o) => !o.created).some((o) => o.currentLabel === l.inputValue);
468
- return e.filterable && e.allowCreate && l.inputValue !== "" && !t;
469
- }), V = () => {
470
- e.filterable && Z(e.filterMethod) || e.filterable && e.remote && Z(e.remoteMethod) || _.value.forEach((t) => {
471
- var o;
472
- (o = t.updateOption) == null || o.call(t, l.inputValue);
473
- });
474
- }, _e = Pt(), Qt = b(() => ["small"].includes(_e.value) ? "small" : "default"), Yt = b({
475
- get() {
476
- return T.value && $e.value !== !1;
477
- },
478
- set(t) {
479
- T.value = t;
480
- }
481
- }), Jt = b(() => {
482
- if (e.multiple && !Fe(e.modelValue))
483
- return X(e.modelValue).length === 0 && !l.inputValue;
484
- const t = ue(e.modelValue) ? e.modelValue[0] : e.modelValue;
485
- return e.filterable || Fe(t) ? !l.inputValue : !0;
486
- }), Xt = b(() => {
487
- var t;
488
- const o = (t = e.placeholder) != null ? t : s("el.select.placeholder");
489
- return e.multiple || !Se.value ? o : l.selectedLabel;
490
- }), Zt = b(() => wt ? null : "mouseenter");
491
- re(() => e.modelValue, (t, o) => {
492
- e.multiple && e.filterable && !e.reserveKeyword && (l.inputValue = "", Be("")), Ae(), !lt(t, o) && e.validateEvent && (le == null || le.validate("change").catch((S) => $t(S)));
493
- }, {
494
- flush: "post",
495
- deep: !0
496
- }), re(() => T.value, (t) => {
497
- t ? Be(l.inputValue) : (l.inputValue = "", l.previousQuery = null, l.isBeforeHide = !0), n("visible-change", t);
498
- }), re(() => l.options.entries(), () => {
499
- var t;
500
- if (!st)
501
- return;
502
- const o = ((t = p.value) == null ? void 0 : t.querySelectorAll("input")) || [];
503
- (!e.filterable && !e.defaultFirstOption && !Fe(e.modelValue) || !Array.from(o).includes(document.activeElement)) && Ae(), e.defaultFirstOption && (e.filterable || e.remote) && ne.value && ut();
504
- }, {
505
- flush: "post"
506
- }), re(() => l.hoveringIndex, (t) => {
507
- Ml(t) && t > -1 ? te.value = _.value[t] || {} : te.value = {}, _.value.forEach((o) => {
508
- o.hover = te.value === o;
509
- });
510
- }), Ql(() => {
511
- l.isBeforeHide || V();
512
- });
513
- const Be = (t) => {
514
- l.previousQuery === t || H.value || (l.previousQuery = t, e.filterable && Z(e.filterMethod) ? e.filterMethod(t) : e.filterable && e.remote && Z(e.remoteMethod) && e.remoteMethod(t), e.defaultFirstOption && (e.filterable || e.remote) && ne.value ? ie(ut) : ie(jt));
515
- }, ut = () => {
516
- const t = _.value.filter((E) => E.visible && !E.disabled && !E.states.groupDisabled), o = t.find((E) => E.created), S = t[0];
517
- l.hoveringIndex = gt(_.value, o || S);
518
- }, Ae = () => {
519
- if (e.multiple)
520
- l.selectedLabel = "";
521
- else {
522
- const o = ue(e.modelValue) ? e.modelValue[0] : e.modelValue, S = rt(o);
523
- l.selectedLabel = S.currentLabel, l.selected = S;
524
- return;
525
- }
526
- const t = [];
527
- Fe(e.modelValue) || X(e.modelValue).forEach((o) => {
528
- t.push(rt(o));
529
- }), l.selected = t;
530
- }, rt = (t) => {
531
- let o;
532
- const S = je(t).toLowerCase() === "object", E = je(t).toLowerCase() === "null", Q = je(t).toLowerCase() === "undefined";
533
- for (let se = l.cachedOptions.size - 1; se >= 0; se--) {
534
- const K = Je.value[se];
535
- if (S ? J(K.value, e.valueKey) === J(t, e.valueKey) : K.value === t) {
536
- o = {
537
- value: t,
538
- currentLabel: K.currentLabel,
539
- get isDisabled() {
540
- return K.isDisabled;
541
- }
542
- };
543
- break;
544
- }
545
- }
546
- if (o)
547
- return o;
548
- const fe = S ? t.label : !E && !Q ? t : "";
549
- return {
550
- value: t,
551
- currentLabel: fe
552
- };
553
- }, jt = () => {
554
- e.multiple ? l.hoveringIndex = _.value.findIndex((t) => l.selected.some((o) => we(o) === we(t))) : l.hoveringIndex = _.value.findIndex((t) => we(t) === we(l.selected));
555
- }, xt = () => {
556
- l.selectionWidth = r.value.getBoundingClientRect().width;
557
- }, ct = () => {
558
- l.calculatorWidth = O.value.getBoundingClientRect().width;
559
- }, el = () => {
560
- l.collapseItemWidth = W.value.getBoundingClientRect().width;
561
- }, Ze = () => {
562
- var t, o;
563
- (o = (t = f.value) == null ? void 0 : t.updatePopper) == null || o.call(t);
564
- }, dt = () => {
565
- var t, o;
566
- (o = (t = y.value) == null ? void 0 : t.updatePopper) == null || o.call(t);
567
- }, ft = () => {
568
- l.inputValue.length > 0 && !T.value && (T.value = !0), Be(l.inputValue);
569
- }, pt = (t) => {
570
- if (l.inputValue = t.target.value, e.remote)
571
- vt();
572
- else
573
- return ft();
574
- }, vt = sn(() => {
575
- ft();
576
- }, $.value), Ce = (t) => {
577
- lt(e.modelValue, t) || n(Nt, t);
578
- }, tl = (t) => yn(t, (o) => !l.disabledOptions.has(o)), ll = (t) => {
579
- if (e.multiple && t.code !== Il.delete && t.target.value.length <= 0) {
580
- const o = X(e.modelValue).slice(), S = tl(o);
581
- if (S < 0)
582
- return;
583
- const E = o[S];
584
- o.splice(S, 1), n(pe, o), Ce(o), n("remove-tag", E);
585
- }
586
- }, nl = (t, o) => {
587
- const S = l.selected.indexOf(o);
588
- if (S > -1 && !de.value) {
589
- const E = X(e.modelValue).slice();
590
- E.splice(S, 1), n(pe, E), Ce(E), n("remove-tag", o.value);
591
- }
592
- t.stopPropagation(), Pe();
593
- }, mt = (t) => {
594
- t.stopPropagation();
595
- const o = e.multiple ? [] : ce.value;
596
- if (e.multiple)
597
- for (const S of l.selected)
598
- S.isDisabled && o.push(S.value);
599
- n(pe, o), Ce(o), l.hoveringIndex = -1, T.value = !1, n("clear"), Pe();
600
- }, ht = (t) => {
601
- var o;
602
- if (e.multiple) {
603
- const S = X((o = e.modelValue) != null ? o : []).slice(), E = gt(S, t.value);
604
- E > -1 ? S.splice(E, 1) : (e.multipleLimit <= 0 || S.length < e.multipleLimit) && S.push(t.value), n(pe, S), Ce(S), t.created && Be(""), e.filterable && !e.reserveKeyword && (l.inputValue = "");
605
- } else
606
- n(pe, t.value), Ce(t.value), T.value = !1;
607
- Pe(), !T.value && ie(() => {
608
- Le(t);
609
- });
610
- }, gt = (t = [], o) => {
611
- if (!ve(o))
612
- return t.indexOf(o);
613
- const S = e.valueKey;
614
- let E = -1;
615
- return t.some((Q, fe) => Ft(J(Q, S)) === J(o, S) ? (E = fe, !0) : !1), E;
616
- }, Le = (t) => {
617
- var o, S, E, Q, fe;
618
- const Ne = ue(t) ? t[0] : t;
619
- let se = null;
620
- if (Ne != null && Ne.value) {
621
- const K = _.value.filter((Ct) => Ct.value === Ne.value);
622
- K.length > 0 && (se = K[0].$el);
623
- }
624
- if (f.value && se) {
625
- const K = (Q = (E = (S = (o = f.value) == null ? void 0 : o.popperRef) == null ? void 0 : S.contentRef) == null ? void 0 : E.querySelector) == null ? void 0 : Q.call(E, `.${a.be("dropdown", "wrap")}`);
626
- K && Cn(K, se);
627
- }
628
- (fe = G.value) == null || fe.handleScroll();
629
- }, sl = (t) => {
630
- l.options.set(t.value, t), l.cachedOptions.set(t.value, t), t.disabled && l.disabledOptions.set(t.value, t);
631
- }, ol = (t, o) => {
632
- l.options.get(t) === o && l.options.delete(t);
633
- }, al = b(() => {
634
- var t, o;
635
- return (o = (t = f.value) == null ? void 0 : t.popperRef) == null ? void 0 : o.contentRef;
636
- }), il = () => {
637
- l.isBeforeHide = !1, ie(() => Le(l.selected));
638
- }, Pe = () => {
639
- var t;
640
- (t = w.value) == null || t.focus();
641
- }, ul = () => {
642
- bt();
643
- }, rl = (t) => {
644
- mt(t);
645
- }, bt = (t) => {
646
- if (T.value = !1, be.value) {
647
- const o = new FocusEvent("focus", t);
648
- ie(() => Ee(o));
649
- }
650
- }, cl = () => {
651
- l.inputValue.length > 0 ? l.inputValue = "" : T.value = !1;
652
- }, yt = () => {
653
- de.value || (wt && (l.inputHovering = !0), l.menuVisibleOnFocus ? l.menuVisibleOnFocus = !1 : T.value = !T.value);
654
- }, dl = () => {
655
- T.value ? _.value[l.hoveringIndex] && ht(_.value[l.hoveringIndex]) : yt();
656
- }, we = (t) => ve(t.value) ? J(t.value, e.valueKey) : t.value, fl = b(() => _.value.filter((t) => t.visible).every((t) => t.disabled)), pl = b(() => e.multiple ? e.collapseTags ? l.selected.slice(0, e.maxCollapseTags) : l.selected : []), vl = b(() => e.multiple ? e.collapseTags ? l.selected.slice(e.maxCollapseTags) : [] : []), St = (t) => {
657
- if (!T.value) {
658
- T.value = !0;
659
- return;
660
- }
661
- if (!(l.options.size === 0 || l.filteredOptionsCount === 0 || H.value) && !fl.value) {
662
- t === "next" ? (l.hoveringIndex++, l.hoveringIndex === l.options.size && (l.hoveringIndex = 0)) : t === "prev" && (l.hoveringIndex--, l.hoveringIndex < 0 && (l.hoveringIndex = l.options.size - 1));
663
- const o = _.value[l.hoveringIndex];
664
- (o.disabled === !0 || o.states.groupDisabled === !0 || !o.visible) && St(t), ie(() => Le(te.value));
665
- }
666
- }, ml = () => {
667
- if (!r.value)
668
- return 0;
669
- const t = window.getComputedStyle(r.value);
670
- return Number.parseFloat(t.gap || "6px");
671
- }, hl = b(() => {
672
- const t = ml();
673
- return { maxWidth: `${W.value && e.maxCollapseTags === 1 ? l.selectionWidth - l.collapseItemWidth - t : l.selectionWidth}px` };
674
- }), gl = b(() => ({ maxWidth: `${l.selectionWidth}px` })), bl = b(() => ({
675
- width: `${Math.max(l.calculatorWidth, Hn)}px`
676
- }));
677
- return ae(r, xt), ae(O, ct), ae(m, Ze), ae(Te, Ze), ae(D, dt), ae(W, el), Ke(() => {
678
- Ae();
679
- }), {
680
- inputId: ke,
681
- contentId: u,
682
- nsSelect: a,
683
- nsInput: v,
684
- states: l,
685
- isFocused: be,
686
- expanded: T,
687
- optionsArray: _,
688
- hoverOption: te,
689
- selectSize: _e,
690
- filteredOptionsCount: ne,
691
- resetCalculatorWidth: ct,
692
- updateTooltip: Ze,
693
- updateTagTooltip: dt,
694
- debouncedOnInputChange: vt,
695
- onInput: pt,
696
- deletePrevTag: ll,
697
- deleteTag: nl,
698
- deleteSelected: mt,
699
- handleOptionSelect: ht,
700
- scrollToOption: Le,
701
- hasModelValue: Se,
702
- shouldShowPlaceholder: Jt,
703
- currentPlaceholder: Xt,
704
- mouseEnterEventName: Zt,
705
- showClose: Qe,
706
- iconComponent: Re,
707
- iconReverse: Ye,
708
- validateState: De,
709
- validateIcon: c,
710
- showNewOption: Xe,
711
- updateOptions: V,
712
- collapseTagSize: Qt,
713
- setSelected: Ae,
714
- selectDisabled: de,
715
- emptyText: $e,
716
- handleCompositionStart: ee,
717
- handleCompositionUpdate: Ge,
718
- handleCompositionEnd: z,
719
- onOptionCreate: sl,
720
- onOptionDestroy: ol,
721
- handleMenuEnter: il,
722
- focus: Pe,
723
- blur: ul,
724
- handleClearClick: rl,
725
- handleClickOutside: bt,
726
- handleEsc: cl,
727
- toggleMenu: yt,
728
- selectOption: dl,
729
- getValueKey: we,
730
- navigateOptions: St,
731
- dropdownMenuVisible: Yt,
732
- showTagList: pl,
733
- collapseTagList: vl,
734
- tagStyle: hl,
735
- collapseTagStyle: gl,
736
- inputStyle: bl,
737
- popperRef: al,
738
- inputRef: w,
739
- tooltipRef: f,
740
- tagTooltipRef: y,
741
- calculatorRef: O,
742
- prefixRef: g,
743
- suffixRef: C,
744
- selectRef: p,
745
- wrapperRef: Te,
746
- selectionRef: r,
747
- scrollbarRef: G,
748
- menuRef: m,
749
- tagMenuRef: D,
750
- collapseItemRef: W
751
- };
752
- };
753
- var Wn = x({
754
- name: "ElOptions",
755
- setup(e, { slots: n }) {
756
- const s = Ie(Ue);
757
- let u = [];
758
- return () => {
759
- var a, v;
760
- const l = (a = n.default) == null ? void 0 : a.call(n), p = [];
761
- function r(f) {
762
- ue(f) && f.forEach((y) => {
763
- var w, O, g, C;
764
- const m = (w = (y == null ? void 0 : y.type) || {}) == null ? void 0 : w.name;
765
- m === "ElOptionGroup" ? r(!Vl(y.children) && !ue(y.children) && Z((O = y.children) == null ? void 0 : O.default) ? (g = y.children) == null ? void 0 : g.default() : y.children) : m === "ElOption" ? p.push((C = y.props) == null ? void 0 : C.value) : ue(y.children) && r(y.children);
766
- });
767
- }
768
- return l.length && r((v = l[0]) == null ? void 0 : v.children), lt(p, u) || (u = p, s && (s.states.optionValues = p)), l;
769
- };
770
- }
771
- });
772
- const Kn = ot({
773
- name: String,
774
- id: String,
775
- modelValue: {
776
- type: [Array, String, Number, Boolean, Object],
777
- default: void 0
778
- },
779
- autocomplete: {
780
- type: String,
781
- default: "off"
782
- },
783
- automaticDropdown: Boolean,
784
- size: Kl,
785
- effect: {
786
- type: He(String),
787
- default: "light"
788
- },
789
- disabled: Boolean,
790
- clearable: Boolean,
791
- filterable: Boolean,
792
- allowCreate: Boolean,
793
- loading: Boolean,
794
- popperClass: {
795
- type: String,
796
- default: ""
797
- },
798
- popperOptions: {
799
- type: He(Object),
800
- default: () => ({})
801
- },
802
- remote: Boolean,
803
- loadingText: String,
804
- noMatchText: String,
805
- noDataText: String,
806
- remoteMethod: Function,
807
- filterMethod: Function,
808
- multiple: Boolean,
809
- multipleLimit: {
810
- type: Number,
811
- default: 0
812
- },
813
- placeholder: {
814
- type: String
815
- },
816
- defaultFirstOption: Boolean,
817
- reserveKeyword: {
818
- type: Boolean,
819
- default: !0
820
- },
821
- valueKey: {
822
- type: String,
823
- default: "value"
824
- },
825
- collapseTags: Boolean,
826
- collapseTagsTooltip: Boolean,
827
- maxCollapseTags: {
828
- type: Number,
829
- default: 1
830
- },
831
- teleported: Tl.teleported,
832
- persistent: {
833
- type: Boolean,
834
- default: !0
835
- },
836
- clearIcon: {
837
- type: Ot,
838
- default: xl
839
- },
840
- fitInputWidth: Boolean,
841
- suffixIcon: {
842
- type: Ot,
843
- default: en
844
- },
845
- tagType: { ...nt.type, default: "info" },
846
- tagEffect: { ...nt.effect, default: "light" },
847
- validateEvent: {
848
- type: Boolean,
849
- default: !0
850
- },
851
- remoteShowSuffix: Boolean,
852
- placement: {
853
- type: He(String),
854
- values: El,
855
- default: "bottom-start"
856
- },
857
- fallbackPlacements: {
858
- type: He(Array),
859
- default: ["bottom-start", "top-start", "right", "left"]
860
- },
861
- ...Vn,
862
- ...kl(["ariaLabel"])
863
- }), Et = "ElSelect", Un = x({
864
- name: Et,
865
- componentName: Et,
866
- components: {
867
- ElSelectMenu: Fn,
868
- ElOption: it,
869
- ElOptions: Wn,
870
- ElTag: _n,
871
- ElScrollbar: At,
872
- ElTooltip: Rl,
873
- ElIcon: tt
874
- },
875
- directives: { ClickOutside: En },
876
- props: Kn,
877
- emits: [
878
- pe,
879
- Nt,
880
- "remove-tag",
881
- "clear",
882
- "visible-change",
883
- "focus",
884
- "blur"
885
- ],
886
- setup(e, { emit: n }) {
887
- const s = zn(e, n);
888
- return zt(Ue, We({
889
- props: e,
890
- states: s.states,
891
- optionsArray: s.optionsArray,
892
- handleOptionSelect: s.handleOptionSelect,
893
- onOptionCreate: s.onOptionCreate,
894
- onOptionDestroy: s.onOptionDestroy,
895
- selectRef: s.selectRef,
896
- setSelected: s.setSelected
897
- })), {
898
- ...s
899
- };
900
- }
901
- });
902
- function Gn(e, n, s, u, a, v) {
903
- const l = oe("el-tag"), p = oe("el-tooltip"), r = oe("el-icon"), f = oe("el-option"), y = oe("el-options"), w = oe("el-scrollbar"), O = oe("el-select-menu"), g = Yl("click-outside");
904
- return Me((d(), I("div", {
905
- ref: "selectRef",
906
- class: h([e.nsSelect.b(), e.nsSelect.m(e.selectSize)]),
907
- [Jl(e.mouseEnterEventName)]: (C) => e.states.inputHovering = !0,
908
- onMouseleave: (C) => e.states.inputHovering = !1
909
- }, [
910
- L(p, {
911
- ref: "tooltipRef",
912
- visible: e.dropdownMenuVisible,
913
- placement: e.placement,
914
- teleported: e.teleported,
915
- "popper-class": [e.nsSelect.e("popper"), e.popperClass],
916
- "popper-options": e.popperOptions,
917
- "fallback-placements": e.fallbackPlacements,
918
- effect: e.effect,
919
- pure: "",
920
- trigger: "click",
921
- transition: `${e.nsSelect.namespace.value}-zoom-in-top`,
922
- "stop-popper-mouse-event": !1,
923
- "gpu-acceleration": !1,
924
- persistent: e.persistent,
925
- onBeforeShow: e.handleMenuEnter,
926
- onHide: (C) => e.states.isBeforeHide = !1
927
- }, {
928
- default: k(() => {
929
- var C;
930
- return [
931
- i("div", {
932
- ref: "wrapperRef",
933
- class: h([
934
- e.nsSelect.e("wrapper"),
935
- e.nsSelect.is("focused", e.isFocused),
936
- e.nsSelect.is("hovering", e.states.inputHovering),
937
- e.nsSelect.is("filterable", e.filterable),
938
- e.nsSelect.is("disabled", e.selectDisabled)
939
- ]),
940
- onClick: P(e.toggleMenu, ["prevent", "stop"])
941
- }, [
942
- e.$slots.prefix ? (d(), I("div", {
943
- key: 0,
944
- ref: "prefixRef",
945
- class: h(e.nsSelect.e("prefix"))
946
- }, [
947
- A(e.$slots, "prefix")
948
- ], 2)) : B("v-if", !0),
949
- i("div", {
950
- ref: "selectionRef",
951
- class: h([
952
- e.nsSelect.e("selection"),
953
- e.nsSelect.is("near", e.multiple && !e.$slots.prefix && !!e.states.selected.length)
954
- ])
955
- }, [
956
- e.multiple ? A(e.$slots, "tag", { key: 0 }, () => [
957
- (d(!0), I(me, null, he(e.showTagList, (m) => (d(), I("div", {
958
- key: e.getValueKey(m),
959
- class: h(e.nsSelect.e("selected-item"))
960
- }, [
961
- L(l, {
962
- closable: !e.selectDisabled && !m.isDisabled,
963
- size: e.collapseTagSize,
964
- type: e.tagType,
965
- effect: e.tagEffect,
966
- "disable-transitions": "",
967
- style: j(e.tagStyle),
968
- onClose: (D) => e.deleteTag(D, m)
969
- }, {
970
- default: k(() => [
971
- i("span", {
972
- class: h(e.nsSelect.e("tags-text"))
973
- }, [
974
- A(e.$slots, "label", {
975
- label: m.currentLabel,
976
- value: m.value
977
- }, () => [
978
- Mt(F(m.currentLabel), 1)
979
- ])
980
- ], 2)
981
- ]),
982
- _: 2
983
- }, 1032, ["closable", "size", "type", "effect", "style", "onClose"])
984
- ], 2))), 128)),
985
- e.collapseTags && e.states.selected.length > e.maxCollapseTags ? (d(), N(p, {
986
- key: 0,
987
- ref: "tagTooltipRef",
988
- disabled: e.dropdownMenuVisible || !e.collapseTagsTooltip,
989
- "fallback-placements": ["bottom", "top", "right", "left"],
990
- effect: e.effect,
991
- placement: "bottom",
992
- teleported: e.teleported
993
- }, {
994
- default: k(() => [
995
- i("div", {
996
- ref: "collapseItemRef",
997
- class: h(e.nsSelect.e("selected-item"))
998
- }, [
999
- L(l, {
1000
- closable: !1,
1001
- size: e.collapseTagSize,
1002
- type: e.tagType,
1003
- effect: e.tagEffect,
1004
- "disable-transitions": "",
1005
- style: j(e.collapseTagStyle)
1006
- }, {
1007
- default: k(() => [
1008
- i("span", {
1009
- class: h(e.nsSelect.e("tags-text"))
1010
- }, " + " + F(e.states.selected.length - e.maxCollapseTags), 3)
1011
- ]),
1012
- _: 1
1013
- }, 8, ["size", "type", "effect", "style"])
1014
- ], 2)
1015
- ]),
1016
- content: k(() => [
1017
- i("div", {
1018
- ref: "tagMenuRef",
1019
- class: h(e.nsSelect.e("selection"))
1020
- }, [
1021
- (d(!0), I(me, null, he(e.collapseTagList, (m) => (d(), I("div", {
1022
- key: e.getValueKey(m),
1023
- class: h(e.nsSelect.e("selected-item"))
1024
- }, [
1025
- L(l, {
1026
- class: "in-tooltip",
1027
- closable: !e.selectDisabled && !m.isDisabled,
1028
- size: e.collapseTagSize,
1029
- type: e.tagType,
1030
- effect: e.tagEffect,
1031
- "disable-transitions": "",
1032
- onClose: (D) => e.deleteTag(D, m)
1033
- }, {
1034
- default: k(() => [
1035
- i("span", {
1036
- class: h(e.nsSelect.e("tags-text"))
1037
- }, [
1038
- A(e.$slots, "label", {
1039
- label: m.currentLabel,
1040
- value: m.value
1041
- }, () => [
1042
- Mt(F(m.currentLabel), 1)
1043
- ])
1044
- ], 2)
1045
- ]),
1046
- _: 2
1047
- }, 1032, ["closable", "size", "type", "effect", "onClose"])
1048
- ], 2))), 128))
1049
- ], 2)
1050
- ]),
1051
- _: 3
1052
- }, 8, ["disabled", "effect", "teleported"])) : B("v-if", !0)
1053
- ]) : B("v-if", !0),
1054
- e.selectDisabled ? B("v-if", !0) : (d(), I("div", {
1055
- key: 1,
1056
- class: h([
1057
- e.nsSelect.e("selected-item"),
1058
- e.nsSelect.e("input-wrapper"),
1059
- e.nsSelect.is("hidden", !e.filterable)
1060
- ])
1061
- }, [
1062
- Me(i("input", {
1063
- id: e.inputId,
1064
- ref: "inputRef",
1065
- "onUpdate:modelValue": (m) => e.states.inputValue = m,
1066
- type: "text",
1067
- name: e.name,
1068
- class: h([e.nsSelect.e("input"), e.nsSelect.is(e.selectSize)]),
1069
- disabled: e.selectDisabled,
1070
- autocomplete: e.autocomplete,
1071
- style: j(e.inputStyle),
1072
- role: "combobox",
1073
- readonly: !e.filterable,
1074
- spellcheck: "false",
1075
- "aria-activedescendant": ((C = e.hoverOption) == null ? void 0 : C.id) || "",
1076
- "aria-controls": e.contentId,
1077
- "aria-expanded": e.dropdownMenuVisible,
1078
- "aria-label": e.ariaLabel,
1079
- "aria-autocomplete": "none",
1080
- "aria-haspopup": "listbox",
1081
- onKeydown: [
1082
- Oe(P((m) => e.navigateOptions("next"), ["stop", "prevent"]), ["down"]),
1083
- Oe(P((m) => e.navigateOptions("prev"), ["stop", "prevent"]), ["up"]),
1084
- Oe(P(e.handleEsc, ["stop", "prevent"]), ["esc"]),
1085
- Oe(P(e.selectOption, ["stop", "prevent"]), ["enter"]),
1086
- Oe(P(e.deletePrevTag, ["stop"]), ["delete"])
1087
- ],
1088
- onCompositionstart: e.handleCompositionStart,
1089
- onCompositionupdate: e.handleCompositionUpdate,
1090
- onCompositionend: e.handleCompositionEnd,
1091
- onInput: e.onInput,
1092
- onClick: P(e.toggleMenu, ["stop"])
1093
- }, null, 46, ["id", "onUpdate:modelValue", "name", "disabled", "autocomplete", "readonly", "aria-activedescendant", "aria-controls", "aria-expanded", "aria-label", "onKeydown", "onCompositionstart", "onCompositionupdate", "onCompositionend", "onInput", "onClick"]), [
1094
- [Xl, e.states.inputValue]
1095
- ]),
1096
- e.filterable ? (d(), I("span", {
1097
- key: 0,
1098
- ref: "calculatorRef",
1099
- "aria-hidden": "true",
1100
- class: h(e.nsSelect.e("input-calculator")),
1101
- textContent: F(e.states.inputValue)
1102
- }, null, 10, ["textContent"])) : B("v-if", !0)
1103
- ], 2)),
1104
- e.shouldShowPlaceholder ? (d(), I("div", {
1105
- key: 2,
1106
- class: h([
1107
- e.nsSelect.e("selected-item"),
1108
- e.nsSelect.e("placeholder"),
1109
- e.nsSelect.is("transparent", !e.hasModelValue || e.expanded && !e.states.inputValue)
1110
- ])
1111
- }, [
1112
- e.hasModelValue ? A(e.$slots, "label", {
1113
- key: 0,
1114
- label: e.currentPlaceholder,
1115
- value: e.modelValue
1116
- }, () => [
1117
- i("span", null, F(e.currentPlaceholder), 1)
1118
- ]) : (d(), I("span", { key: 1 }, F(e.currentPlaceholder), 1))
1119
- ], 2)) : B("v-if", !0)
1120
- ], 2),
1121
- i("div", {
1122
- ref: "suffixRef",
1123
- class: h(e.nsSelect.e("suffix"))
1124
- }, [
1125
- e.iconComponent && !e.showClose ? (d(), N(r, {
1126
- key: 0,
1127
- class: h([e.nsSelect.e("caret"), e.nsSelect.e("icon"), e.iconReverse])
1128
- }, {
1129
- default: k(() => [
1130
- (d(), N(et(e.iconComponent)))
1131
- ]),
1132
- _: 1
1133
- }, 8, ["class"])) : B("v-if", !0),
1134
- e.showClose && e.clearIcon ? (d(), N(r, {
1135
- key: 1,
1136
- class: h([e.nsSelect.e("caret"), e.nsSelect.e("icon")]),
1137
- onClick: e.handleClearClick
1138
- }, {
1139
- default: k(() => [
1140
- (d(), N(et(e.clearIcon)))
1141
- ]),
1142
- _: 1
1143
- }, 8, ["class", "onClick"])) : B("v-if", !0),
1144
- e.validateState && e.validateIcon ? (d(), N(r, {
1145
- key: 2,
1146
- class: h([e.nsInput.e("icon"), e.nsInput.e("validateIcon")])
1147
- }, {
1148
- default: k(() => [
1149
- (d(), N(et(e.validateIcon)))
1150
- ]),
1151
- _: 1
1152
- }, 8, ["class"])) : B("v-if", !0)
1153
- ], 2)
1154
- ], 10, ["onClick"])
1155
- ];
1156
- }),
1157
- content: k(() => [
1158
- L(O, { ref: "menuRef" }, {
1159
- default: k(() => [
1160
- e.$slots.header ? (d(), I("div", {
1161
- key: 0,
1162
- class: h(e.nsSelect.be("dropdown", "header")),
1163
- onClick: P(() => {
1164
- }, ["stop"])
1165
- }, [
1166
- A(e.$slots, "header")
1167
- ], 10, ["onClick"])) : B("v-if", !0),
1168
- Me(L(w, {
1169
- id: e.contentId,
1170
- ref: "scrollbarRef",
1171
- tag: "ul",
1172
- "wrap-class": e.nsSelect.be("dropdown", "wrap"),
1173
- "view-class": e.nsSelect.be("dropdown", "list"),
1174
- class: h([e.nsSelect.is("empty", e.filteredOptionsCount === 0)]),
1175
- role: "listbox",
1176
- "aria-label": e.ariaLabel,
1177
- "aria-orientation": "vertical"
1178
- }, {
1179
- default: k(() => [
1180
- e.showNewOption ? (d(), N(f, {
1181
- key: 0,
1182
- value: e.states.inputValue,
1183
- created: !0
1184
- }, null, 8, ["value"])) : B("v-if", !0),
1185
- L(y, null, {
1186
- default: k(() => [
1187
- A(e.$slots, "default")
1188
- ]),
1189
- _: 3
1190
- })
1191
- ]),
1192
- _: 3
1193
- }, 8, ["id", "wrap-class", "view-class", "class", "aria-label"]), [
1194
- [at, e.states.options.size > 0 && !e.loading]
1195
- ]),
1196
- e.$slots.loading && e.loading ? (d(), I("div", {
1197
- key: 1,
1198
- class: h(e.nsSelect.be("dropdown", "loading"))
1199
- }, [
1200
- A(e.$slots, "loading")
1201
- ], 2)) : e.loading || e.filteredOptionsCount === 0 ? (d(), I("div", {
1202
- key: 2,
1203
- class: h(e.nsSelect.be("dropdown", "empty"))
1204
- }, [
1205
- A(e.$slots, "empty", {}, () => [
1206
- i("span", null, F(e.emptyText), 1)
1207
- ])
1208
- ], 2)) : B("v-if", !0),
1209
- e.$slots.footer ? (d(), I("div", {
1210
- key: 3,
1211
- class: h(e.nsSelect.be("dropdown", "footer")),
1212
- onClick: P(() => {
1213
- }, ["stop"])
1214
- }, [
1215
- A(e.$slots, "footer")
1216
- ], 10, ["onClick"])) : B("v-if", !0)
1217
- ]),
1218
- _: 3
1219
- }, 512)
1220
- ]),
1221
- _: 3
1222
- }, 8, ["visible", "placement", "teleported", "popper-class", "popper-options", "fallback-placements", "effect", "transition", "persistent", "onBeforeShow", "onHide"])
1223
- ], 16, ["onMouseleave"])), [
1224
- [g, e.handleClickOutside, e.popperRef]
1225
- ]);
1226
- }
1227
- var qn = /* @__PURE__ */ Ve(Un, [["render", Gn], ["__file", "select.vue"]]);
1228
- const Qn = x({
1229
- name: "ElOptionGroup",
1230
- componentName: "ElOptionGroup",
1231
- props: {
1232
- label: String,
1233
- disabled: Boolean
1234
- },
1235
- setup(e) {
1236
- const n = ge("select"), s = M(null), u = ze(), a = M([]);
1237
- zt(Wt, We({
1238
- ...Ht(e)
1239
- }));
1240
- const v = b(() => a.value.some((f) => f.visible === !0)), l = (f) => {
1241
- var y, w;
1242
- return ((y = f.type) == null ? void 0 : y.name) === "ElOption" && !!((w = f.component) != null && w.proxy);
1243
- }, p = (f) => {
1244
- const y = X(f), w = [];
1245
- return y.forEach((O) => {
1246
- var g, C;
1247
- l(O) ? w.push(O.component.proxy) : (g = O.children) != null && g.length ? w.push(...p(O.children)) : (C = O.component) != null && C.subTree && w.push(...p(O.component.subTree));
1248
- }), w;
1249
- }, r = () => {
1250
- a.value = p(u.subTree);
1251
- };
1252
- return Ke(() => {
1253
- r();
1254
- }), Dl(s, r, {
1255
- attributes: !0,
1256
- subtree: !0,
1257
- childList: !0
1258
- }), {
1259
- groupRef: s,
1260
- visible: v,
1261
- ns: n
1262
- };
1263
- }
1264
- });
1265
- function Yn(e, n, s, u, a, v) {
1266
- return Me((d(), I("ul", {
1267
- ref: "groupRef",
1268
- class: h(e.ns.be("group", "wrap"))
1269
- }, [
1270
- i("li", {
1271
- class: h(e.ns.be("group", "title"))
1272
- }, F(e.label), 3),
1273
- i("li", null, [
1274
- i("ul", {
1275
- class: h(e.ns.b("group"))
1276
- }, [
1277
- A(e.$slots, "default")
1278
- ], 2)
1279
- ])
1280
- ], 2)), [
1281
- [at, e.visible]
1282
- ]);
1283
- }
1284
- var qt = /* @__PURE__ */ Ve(Qn, [["render", Yn], ["__file", "option-group.vue"]]);
1285
- const Jn = _t(qn, {
1286
- Option: it,
1287
- OptionGroup: qt
1288
- }), Xn = Lt(it);
1289
- Lt(qt);
1290
- const U = (e) => (Zl("data-v-9c68cc54"), e = e(), jl(), e), Zn = {
1291
- key: 0,
1292
- class: "measure_panel_content"
1293
- }, jn = { class: "measurement_type" }, xn = ["onClick"], es = ["src"], ts = {
1294
- key: 0,
1295
- class: "measurement_data"
1296
- }, ls = { class: "data_box" }, ns = /* @__PURE__ */ U(() => /* @__PURE__ */ i("div", null, "总长度:", -1)), ss = { style: { color: "#0065fc" } }, os = /* @__PURE__ */ U(() => /* @__PURE__ */ i("div", { class: "data_box" }, [
1297
- /* @__PURE__ */ i("div", null, "X值:"),
1298
- /* @__PURE__ */ i("div", { style: { color: "#fe4444" } }, "~")
1299
- ], -1)), as = /* @__PURE__ */ U(() => /* @__PURE__ */ i("div", { class: "data_box" }, [
1300
- /* @__PURE__ */ i("div", null, "Y值:"),
1301
- /* @__PURE__ */ i("div", { style: { color: "#4ed17a" } }, "~")
1302
- ], -1)), is = {
1303
- key: 1,
1304
- class: "measurement_data"
1305
- }, us = { class: "data_box" }, rs = /* @__PURE__ */ U(() => /* @__PURE__ */ i("div", null, "角度", -1)), cs = { style: { color: "#0065fc" } }, ds = {
1306
- key: 1,
1307
- class: "setMeasurePanel"
1308
- }, fs = { class: "set_content_par" }, ps = { class: "set_content_" }, vs = { class: "set_content scale" }, ms = /* @__PURE__ */ U(() => /* @__PURE__ */ i("span", null, "比例:", -1)), hs = /* @__PURE__ */ U(() => /* @__PURE__ */ i("span", null, "1:", -1)), gs = { class: "set_content unit" }, bs = /* @__PURE__ */ U(() => /* @__PURE__ */ i("span", null, "单位:", -1)), ys = { class: "set_content precision" }, Ss = /* @__PURE__ */ U(() => /* @__PURE__ */ i("span", null, "精度:", -1)), Cs = { class: "footer" }, ws = {
1309
- key: 1,
1310
- class: "measure-box"
1311
- }, Os = /* @__PURE__ */ U(() => /* @__PURE__ */ i("div", { class: "measure-title-box" }, [
1312
- /* @__PURE__ */ i("div", { class: "measure-title" }, "测量")
1313
- ], -1)), Ms = { class: "measure-list" }, Is = ["onClick"], Vs = { class: "measure-icon" }, Ts = ["src"], Es = { class: "measure-name" }, ks = { class: "measure-icon" }, Rs = ["src"], Ds = /* @__PURE__ */ U(() => /* @__PURE__ */ i("div", {
1314
- class: "measure-name",
1315
- style: { color: "#df1c1c" }
1316
- }, " 删除 ", -1)), $s = /* @__PURE__ */ x({
1317
- __name: "MeasureTool",
1318
- props: ["componentId"],
1319
- emits: ["closePanel", "emitHandler"],
1320
- setup(e, { emit: n }) {
1321
- const s = $l(), u = e, a = M(0), v = M(""), l = M(""), p = M(""), r = M("");
1322
- Ke(() => {
1323
- s.setReadyById(u.componentId), q("themeColor") == "blue" ? (a.value = 224, v.value = "72", l.value = "26", p.value = "0 14px", r.value = "14px") : q("themeColor") == "light-gray" && (a.value = 202, v.value = "60px", l.value = "22px", p.value = "0 22px", r.value = "12px");
1324
- });
1325
- let f, y, w;
1326
- const O = M(1), g = M(), C = M(), m = M(), D = M(), W = M(1), G = M("m"), H = M(2), ee = M(!1), Ge = [{ value: "m" }, { value: "cm" }, { value: "mm" }], z = M(!1), Te = [
1327
- { label: "0", value: 0 },
1328
- { label: "0.0", value: 1 },
1329
- { label: "0.00", value: 2 },
1330
- { label: "0.000", value: 3 }
1331
- ], be = n, Ee = (c) => {
1332
- be("emitHandler", c);
1333
- };
1334
- _l.on("BimViewer", () => {
1335
- y = window.BimViewer.measureAngleTool, f = window.BimViewer.measureDistanceTool, w = window.BimViewer.eventTrigger, q("isMobile") && (w.on("newAngleMeasure", (c) => {
1336
- z.value = !1;
1337
- }), w.on("newDistanceMeasure", (c) => {
1338
- z.value = !1;
1339
- })), w.on("clickDistanceMeasure", (c) => {
1340
- Re(c.id), Ye(c.id, !0), q("isMobile") && (z.value = !0), T("clickDistanceMeasure", { id: c.id });
1341
- }), w.on("clickAngleMeasure", (c) => {
1342
- de(c.id), Se(c.id, !0), q("isMobile") && (z.value = !0), T("clickAngleMeasure", { id: c.id });
1343
- }), w.on("createAngleMeasure", (c) => {
1344
- D.value = c.id, m.value = c.result, q("isMobile") && (z.value = !0), T("createAngleMeasure", { newMeasure: c });
1345
- }), w.on("createDistanceMeasure", (c) => {
1346
- C.value = c.id, g.value = c.result, q("isMobile") && (z.value = !0), T("createAngleMeasure", { newMeasure: c });
1347
- });
1348
- });
1349
- const T = (c, $) => {
1350
- Ee({
1351
- isTool: !0,
1352
- event_name: c,
1353
- event_target: "MeasureTool",
1354
- content: $
1355
- });
1356
- }, te = () => {
1357
- be("closePanel"), window.BimViewer.SetMeasureDistanceActive(!1), window.BimViewer.SetMeasureAngleActive(!1), ee.value === !0 && ce();
1358
- }, ye = (c) => {
1359
- O.value !== c && (O.value = c, Bl.SaveViewerState({ measure: c }), le(O.value), q("isMobile") && (z.value = !1));
1360
- }, le = (c) => {
1361
- g.value = "", m.value = "";
1362
- let $ = "distance";
1363
- c == 1 ? (window.BimViewer.SetMeasureAngleActive(!1), window.BimViewer.SetMeasureDistanceActive(!0), $ = "distance") : c == 2 && (window.BimViewer.SetMeasureDistanceActive(!1), window.BimViewer.SetMeasureAngleActive(!0), $ = "angle"), Ee({
1364
- isTool: !0,
1365
- event_name: "",
1366
- event_target: "MeasureTool",
1367
- content: {
1368
- measureTool: $
1369
- }
1370
- });
1371
- }, ke = () => {
1372
- g.value = "", m.value = "", O.value === 1 ? (De(C.value), T("destroyMeasureDistance", { id: C.value })) : O.value === 2 && (Qe(D.value), T("destroyMeasurementAngle", { id: C.value })), z.value = !1;
1373
- }, ce = () => {
1374
- ee.value = !ee.value;
1375
- }, qe = () => {
1376
- ce(), y.precision = H.value, f.precision = H.value, f.unit = G.value, f.scale = W.value, T("updateMeasureSet", {
1377
- measurePrefer: {
1378
- angle_precision: H.value,
1379
- distance_precision: H.value,
1380
- distance_unit: G.value,
1381
- distance_scale: W.value
1382
- }
1383
- });
1384
- }, de = (c) => {
1385
- D.value = c, m.value = y.getMeasureResultByID(c);
1386
- }, Se = (c, $) => y.setMeasureHightlighted(c, $), Qe = (c) => y.destroyMeasurementById(c), Re = (c) => {
1387
- C.value = c, g.value = f.getMeasureResultByID(c);
1388
- }, Ye = (c, $) => (console.log("高亮measureDistanceTool.setMeasureHightlighted(id, highlighted)", f.setMeasureHightlighted(c, $)), f.setMeasureHightlighted(c, $)), De = (c) => f.destroyMeasurementById(c);
1389
- return (c, $) => {
1390
- const $e = Ul, ne = Xn, _ = Jn, Je = Ll, Xe = At;
1391
- return R(q)("isMobile") ? (d(), I("div", ws, [
1392
- Os,
1393
- L(Xe, null, {
1394
- default: k(() => [
1395
- i("div", Ms, [
1396
- (d(!0), I(me, null, he(R(It), (V) => (d(), I("div", {
1397
- key: V.id,
1398
- class: h(["measure-item", {
1399
- "measure-item-active": O.value === V.id
1400
- }]),
1401
- onClick: (_e) => ye(V.id)
1402
- }, [
1403
- i("div", null, [
1404
- i("div", Vs, [
1405
- i("img", {
1406
- src: R(xe) + `/bim-viewer/measure-bar/${O.value === V.id ? V.svgActive : V.svg}.svg`,
1407
- alt: ""
1408
- }, null, 8, Ts)
1409
- ]),
1410
- i("div", Es, F(V.name), 1)
1411
- ])
1412
- ], 10, Is))), 128)),
1413
- z.value ? (d(), I("div", {
1414
- key: 0,
1415
- class: "measure-item",
1416
- onClick: ke
1417
- }, [
1418
- i("div", null, [
1419
- i("div", ks, [
1420
- i("img", {
1421
- src: R(xe) + "/bim-viewer/delete.svg",
1422
- alt: ""
1423
- }, null, 8, Rs)
1424
- ]),
1425
- Ds
1426
- ])
1427
- ])) : B("", !0)
1428
- ])
1429
- ]),
1430
- _: 1
1431
- })
1432
- ])) : (d(), N(Je, {
1433
- key: 0,
1434
- class: "measure_panel",
1435
- width: a.value,
1436
- panelTitle: ee.value ? "测量设置" : "测量",
1437
- "click-handle": te
1438
- }, {
1439
- default: k(() => [
1440
- ee.value ? (d(), I("div", ds, [
1441
- i("div", fs, [
1442
- i("div", ps, [
1443
- i("div", vs, [
1444
- ms,
1445
- hs,
1446
- L($e, {
1447
- modelValue: W.value,
1448
- "onUpdate:modelValue": $[0] || ($[0] = (V) => W.value = V),
1449
- style: { width: "122px", height: "28px" },
1450
- placeholder: "1"
1451
- }, null, 8, ["modelValue"])
1452
- ]),
1453
- i("div", gs, [
1454
- bs,
1455
- L(_, {
1456
- modelValue: G.value,
1457
- "onUpdate:modelValue": $[1] || ($[1] = (V) => G.value = V),
1458
- placeholder: "单位",
1459
- style: { width: "136px", height: "28px" }
1460
- }, {
1461
- default: k(() => [
1462
- (d(), I(me, null, he(Ge, (V) => L(ne, {
1463
- key: V.value,
1464
- value: V.value
1465
- }, null, 8, ["value"])), 64))
1466
- ]),
1467
- _: 1
1468
- }, 8, ["modelValue"])
1469
- ]),
1470
- i("div", ys, [
1471
- Ss,
1472
- L(_, {
1473
- modelValue: H.value,
1474
- "onUpdate:modelValue": $[2] || ($[2] = (V) => H.value = V),
1475
- placeholder: "精度",
1476
- style: { width: "136px", height: "28px" }
1477
- }, {
1478
- default: k(() => [
1479
- (d(), I(me, null, he(Te, (V) => L(ne, {
1480
- key: V.value,
1481
- label: V.label,
1482
- value: V.value
1483
- }, null, 8, ["label", "value"])), 64))
1484
- ]),
1485
- _: 1
1486
- }, 8, ["modelValue"])
1487
- ])
1488
- ])
1489
- ]),
1490
- i("div", Cs, [
1491
- i("div", {
1492
- class: "measure_footer_button measure_footer_button_cancel",
1493
- onClick: ce,
1494
- style: j({ width: v.value, height: l.value, margin: p.value, fontSize: r.value })
1495
- }, " 取消 ", 4),
1496
- i("div", {
1497
- class: "measure_footer_button measure_footer_button_save",
1498
- onClick: qe,
1499
- style: j({ width: v.value, height: l.value, margin: p.value, fontSize: r.value })
1500
- }, " 保存 ", 4)
1501
- ])
1502
- ])) : (d(), I("div", Zn, [
1503
- i("div", jn, [
1504
- (d(!0), I(me, null, he(R(It), (V) => (d(), I("div", {
1505
- key: V.id,
1506
- class: h(["measurement_box", { measurement_box_active: O.value === V.id }]),
1507
- onClick: (_e) => ye(V.id)
1508
- }, [
1509
- i("img", {
1510
- class: "measurement_img",
1511
- src: R(xe) + `/bim-viewer/${O.value === V.id ? V.imgActive : V.img}.png`,
1512
- alt: ""
1513
- }, null, 8, es)
1514
- ], 10, xn))), 128))
1515
- ]),
1516
- O.value ? (d(), I("div", is, [
1517
- i("div", us, [
1518
- rs,
1519
- i("div", cs, F(m.value ? m.value + "°" : "~"), 1)
1520
- ])
1521
- ])) : (d(), I("div", ts, [
1522
- i("div", ls, [
1523
- ns,
1524
- i("div", ss, F(g.value || "~"), 1)
1525
- ]),
1526
- os,
1527
- as
1528
- ])),
1529
- i("div", { class: "footer" }, [
1530
- i("span", { onClick: ke }, "删除"),
1531
- i("span", { onClick: ce }, "设置")
1532
- ])
1533
- ]))
1534
- ]),
1535
- _: 1
1536
- }, 8, ["width", "panelTitle"]));
1537
- };
1538
- }
1539
- }), Ks = /* @__PURE__ */ Al($s, [["__scopeId", "data-v-9c68cc54"]]);
1540
- export {
1541
- Ks as default
1542
- };