build-dxf 0.0.36 → 0.0.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/src/index3.js CHANGED
@@ -1,73 +1,73 @@
1
- import * as m from "three";
2
- import { i as ut, n as pt, r as Ue, t as qe, c as De, d as gt, e as vt, f as Ae, g as Q, _ as Ze, u as ft, h as fe, j as Be, w as wt, k as yt, l as bt, p as xt, m as Ct, o as Et, T as Ne, q as Re, s as Mt, v as Lt, x as Oe, y as Pe, z as Le, A as kt, B as It, L as we, D as Pt, b as Fe, E as re, S as Dt } from "./selectLocalFile.js";
3
- import { C as Se, P as _, L as B, B as Ye, E as Xe, b as Ke, Q as ze, u as At, c as ke, W as St, T as _t } from "./build.js";
1
+ import * as p from "three";
2
+ import { i as ut, n as pt, r as Je, t as Ue, c as Ie, d as gt, e as vt, f as Pe, g as Q, _ as qe, u as ft, h as ve, j as Se, w as yt, k as wt, l as bt, p as xt, m as Ct, o as Et, T as _e, q as Be, s as Lt, v as Mt, x as Ne, y as ke, z as Le, A as kt, B as It, L as fe, D as Pt, b as Re, E as re, S as Dt } from "./selectLocalFile.js";
3
+ import { C as De, P as L, L as B, B as Ze, E as Ye, b as Oe, Q as ze, u as At, A as St, r as Fe, W as _t, T as Bt } from "./build.js";
4
4
  import "clipper-lib";
5
5
  import "dxf-writer";
6
6
  import "three/addons/controls/OrbitControls.js";
7
- import { watch as J, ref as S, defineComponent as me, computed as D, createElementBlock as R, openBlock as P, normalizeClass as V, unref as v, renderSlot as be, createVNode as K, Transition as xe, withCtx as j, withDirectives as $e, createElementVNode as I, normalizeStyle as _e, createTextVNode as X, toDisplayString as de, vShow as et, shallowReactive as Bt, onMounted as tt, createBlock as ge, createCommentVNode as q, resolveDynamicComponent as Nt, Fragment as ve, withModifiers as Rt, nextTick as ye, isVNode as nt, render as Te, toRaw as Ot, onUnmounted as Ft, renderList as Ie, createStaticVNode as Kt, TransitionGroup as zt, createApp as Tt } from "vue";
8
- function st(l) {
7
+ import { watch as J, ref as _, defineComponent as me, computed as S, createElementBlock as R, openBlock as A, normalizeClass as V, unref as v, renderSlot as we, createVNode as z, Transition as be, withCtx as T, withDirectives as Xe, createElementVNode as P, normalizeStyle as Ae, createTextVNode as Y, toDisplayString as de, vShow as $e, shallowReactive as Nt, onMounted as et, createBlock as pe, createCommentVNode as q, resolveDynamicComponent as Rt, Fragment as ge, withModifiers as Ot, nextTick as ye, isVNode as tt, render as Ke, toRaw as zt, onUnmounted as Ft, renderList as Me, createStaticVNode as Kt, TransitionGroup as Tt, createApp as Vt } from "vue";
8
+ function nt(d) {
9
9
  var e;
10
- const t = Ue(l);
10
+ const t = Je(d);
11
11
  return (e = t?.$el) != null ? e : t;
12
12
  }
13
- const ot = De ? window : void 0;
14
- function jt(...l) {
15
- let e, t, n, s;
16
- if (ut(l[0]) || Array.isArray(l[0]) ? ([t, n, s] = l, e = ot) : [e, t, n, s] = l, !e)
13
+ const ot = Ie ? window : void 0;
14
+ function jt(...d) {
15
+ let e, t, n, o;
16
+ if (ut(d[0]) || Array.isArray(d[0]) ? ([t, n, o] = d, e = ot) : [e, t, n, o] = d, !e)
17
17
  return pt;
18
18
  Array.isArray(t) || (t = [t]), Array.isArray(n) || (n = [n]);
19
- const o = [], a = () => {
20
- o.forEach((r) => r()), o.length = 0;
21
- }, c = (r, h, y, f) => (r.addEventListener(h, y, f), () => r.removeEventListener(h, y, f)), d = J(() => [st(e), Ue(s)], ([r, h]) => {
22
- a(), r && o.push(...t.flatMap((y) => n.map((f) => c(r, y, f, h))));
19
+ const s = [], a = () => {
20
+ s.forEach((c) => c()), s.length = 0;
21
+ }, l = (c, m, w, f) => (c.addEventListener(m, w, f), () => c.removeEventListener(m, w, f)), r = J(() => [nt(e), Je(o)], ([c, m]) => {
22
+ a(), c && s.push(...t.flatMap((w) => n.map((f) => l(c, w, f, m))));
23
23
  }, { immediate: !0, flush: "post" }), i = () => {
24
- d(), a();
24
+ r(), a();
25
25
  };
26
- return qe(i), i;
26
+ return Ue(i), i;
27
27
  }
28
- function Vt(l, e = !1) {
29
- const t = S(), n = () => t.value = !!l();
28
+ function Gt(d, e = !1) {
29
+ const t = _(), n = () => t.value = !!d();
30
30
  return n(), gt(n, e), t;
31
31
  }
32
- const je = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {}, Ve = "__vueuse_ssr_handlers__";
33
- je[Ve] = je[Ve] || {};
34
- var Ge = Object.getOwnPropertySymbols, Gt = Object.prototype.hasOwnProperty, Qt = Object.prototype.propertyIsEnumerable, Ht = (l, e) => {
32
+ const Te = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {}, Ve = "__vueuse_ssr_handlers__";
33
+ Te[Ve] = Te[Ve] || {};
34
+ var je = Object.getOwnPropertySymbols, Qt = Object.prototype.hasOwnProperty, Ht = Object.prototype.propertyIsEnumerable, Wt = (d, e) => {
35
35
  var t = {};
36
- for (var n in l)
37
- Gt.call(l, n) && e.indexOf(n) < 0 && (t[n] = l[n]);
38
- if (l != null && Ge)
39
- for (var n of Ge(l))
40
- e.indexOf(n) < 0 && Qt.call(l, n) && (t[n] = l[n]);
36
+ for (var n in d)
37
+ Qt.call(d, n) && e.indexOf(n) < 0 && (t[n] = d[n]);
38
+ if (d != null && je)
39
+ for (var n of je(d))
40
+ e.indexOf(n) < 0 && Ht.call(d, n) && (t[n] = d[n]);
41
41
  return t;
42
42
  };
43
- function Wt(l, e, t = {}) {
44
- const n = t, { window: s = ot } = n, o = Ht(n, ["window"]);
43
+ function Jt(d, e, t = {}) {
44
+ const n = t, { window: o = ot } = n, s = Wt(n, ["window"]);
45
45
  let a;
46
- const c = Vt(() => s && "ResizeObserver" in s), d = () => {
46
+ const l = Gt(() => o && "ResizeObserver" in o), r = () => {
47
47
  a && (a.disconnect(), a = void 0);
48
- }, i = J(() => st(l), (h) => {
49
- d(), c.value && s && h && (a = new ResizeObserver(e), a.observe(h, o));
50
- }, { immediate: !0, flush: "post" }), r = () => {
51
- d(), i();
48
+ }, i = J(() => nt(d), (m) => {
49
+ r(), l.value && o && m && (a = new ResizeObserver(e), a.observe(m, s));
50
+ }, { immediate: !0, flush: "post" }), c = () => {
51
+ r(), i();
52
52
  };
53
- return qe(r), {
54
- isSupported: c,
55
- stop: r
53
+ return Ue(c), {
54
+ isSupported: l,
55
+ stop: c
56
56
  };
57
57
  }
58
- var Qe;
59
- (function(l) {
60
- l.UP = "UP", l.RIGHT = "RIGHT", l.DOWN = "DOWN", l.LEFT = "LEFT", l.NONE = "NONE";
61
- })(Qe || (Qe = {}));
62
- var Jt = Object.defineProperty, He = Object.getOwnPropertySymbols, Ut = Object.prototype.hasOwnProperty, qt = Object.prototype.propertyIsEnumerable, We = (l, e, t) => e in l ? Jt(l, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : l[e] = t, Zt = (l, e) => {
58
+ var Ge;
59
+ (function(d) {
60
+ d.UP = "UP", d.RIGHT = "RIGHT", d.DOWN = "DOWN", d.LEFT = "LEFT", d.NONE = "NONE";
61
+ })(Ge || (Ge = {}));
62
+ var Ut = Object.defineProperty, Qe = Object.getOwnPropertySymbols, qt = Object.prototype.hasOwnProperty, Zt = Object.prototype.propertyIsEnumerable, He = (d, e, t) => e in d ? Ut(d, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : d[e] = t, Yt = (d, e) => {
63
63
  for (var t in e || (e = {}))
64
- Ut.call(e, t) && We(l, t, e[t]);
65
- if (He)
66
- for (var t of He(e))
67
- qt.call(e, t) && We(l, t, e[t]);
68
- return l;
64
+ qt.call(e, t) && He(d, t, e[t]);
65
+ if (Qe)
66
+ for (var t of Qe(e))
67
+ Zt.call(e, t) && He(d, t, e[t]);
68
+ return d;
69
69
  };
70
- const Yt = {
70
+ const Xt = {
71
71
  easeInSine: [0.12, 0, 0.39, 0],
72
72
  easeOutSine: [0.61, 1, 0.88, 1],
73
73
  easeInOutSine: [0.37, 0, 0.63, 1],
@@ -93,12 +93,12 @@ const Yt = {
93
93
  easeOutBack: [0.34, 1.56, 0.64, 1],
94
94
  easeInOutBack: [0.68, -0.6, 0.32, 1.6]
95
95
  };
96
- Zt({
96
+ Yt({
97
97
  linear: vt
98
- }, Yt);
99
- const Xt = (l) => l, $t = {
98
+ }, Xt);
99
+ const $t = (d) => d, en = {
100
100
  esc: "Escape"
101
- }, en = Ae({
101
+ }, tn = Pe({
102
102
  value: {
103
103
  type: [String, Number],
104
104
  default: ""
@@ -129,35 +129,35 @@ const Xt = (l) => l, $t = {
129
129
  badgeClass: {
130
130
  type: String
131
131
  }
132
- }), tn = me({
132
+ }), nn = me({
133
133
  name: "ElBadge"
134
- }), nn = /* @__PURE__ */ me({
135
- ...tn,
136
- props: en,
137
- setup(l, { expose: e }) {
138
- const t = l, n = ft("badge"), s = D(() => t.isDot ? "" : fe(t.value) && fe(t.max) ? t.max < t.value ? `${t.max}+` : `${t.value}` : `${t.value}`), o = D(() => {
139
- var a, c, d, i, r;
134
+ }), on = /* @__PURE__ */ me({
135
+ ...nn,
136
+ props: tn,
137
+ setup(d, { expose: e }) {
138
+ const t = d, n = ft("badge"), o = S(() => t.isDot ? "" : ve(t.value) && ve(t.max) ? t.max < t.value ? `${t.max}+` : `${t.value}` : `${t.value}`), s = S(() => {
139
+ var a, l, r, i, c;
140
140
  return [
141
141
  {
142
142
  backgroundColor: t.color,
143
- marginRight: Be(-((c = (a = t.offset) == null ? void 0 : a[0]) != null ? c : 0)),
144
- marginTop: Be((i = (d = t.offset) == null ? void 0 : d[1]) != null ? i : 0)
143
+ marginRight: Se(-((l = (a = t.offset) == null ? void 0 : a[0]) != null ? l : 0)),
144
+ marginTop: Se((i = (r = t.offset) == null ? void 0 : r[1]) != null ? i : 0)
145
145
  },
146
- (r = t.badgeStyle) != null ? r : {}
146
+ (c = t.badgeStyle) != null ? c : {}
147
147
  ];
148
148
  });
149
149
  return e({
150
- content: s
151
- }), (a, c) => (P(), R("div", {
150
+ content: o
151
+ }), (a, l) => (A(), R("div", {
152
152
  class: V(v(n).b())
153
153
  }, [
154
- be(a.$slots, "default"),
155
- K(xe, {
154
+ we(a.$slots, "default"),
155
+ z(be, {
156
156
  name: `${v(n).namespace.value}-zoom-in-center`,
157
157
  persisted: ""
158
158
  }, {
159
- default: j(() => [
160
- $e(I("sup", {
159
+ default: T(() => [
160
+ Xe(P("sup", {
161
161
  class: V([
162
162
  v(n).e("content"),
163
163
  v(n).em("content", a.type),
@@ -166,13 +166,13 @@ const Xt = (l) => l, $t = {
166
166
  v(n).is("hide-zero", !a.showZero && t.value === 0),
167
167
  a.badgeClass
168
168
  ]),
169
- style: _e(v(o))
169
+ style: Ae(v(s))
170
170
  }, [
171
- be(a.$slots, "content", { value: v(s) }, () => [
172
- X(de(v(s)), 1)
171
+ we(a.$slots, "content", { value: v(o) }, () => [
172
+ Y(de(v(o)), 1)
173
173
  ])
174
174
  ], 6), [
175
- [et, !a.hidden && (v(s) || a.isDot || a.$slots.content)]
175
+ [$e, !a.hidden && (v(o) || a.isDot || a.$slots.content)]
176
176
  ])
177
177
  ]),
178
178
  _: 3
@@ -180,8 +180,8 @@ const Xt = (l) => l, $t = {
180
180
  ], 2));
181
181
  }
182
182
  });
183
- var sn = /* @__PURE__ */ Ze(nn, [["__file", "badge.vue"]]);
184
- const on = wt(sn), an = Ae({
183
+ var sn = /* @__PURE__ */ qe(on, [["__file", "badge.vue"]]);
184
+ const an = yt(sn), rn = Pe({
185
185
  a11y: {
186
186
  type: Boolean,
187
187
  default: !0
@@ -217,26 +217,26 @@ const on = wt(sn), an = Ae({
217
217
  type: String,
218
218
  default: "el"
219
219
  },
220
- ...yt
221
- }), T = {};
220
+ ...wt
221
+ }), K = {};
222
222
  me({
223
223
  name: "ElConfigProvider",
224
- props: an,
225
- setup(l, { slots: e }) {
226
- const t = xt(l);
227
- return J(() => l.message, (n) => {
228
- var s, o;
229
- Object.assign(T, (o = (s = t?.value) == null ? void 0 : s.message) != null ? o : {}, n ?? {});
230
- }, { immediate: !0, deep: !0 }), () => be(e, "default", { config: t?.value });
224
+ props: rn,
225
+ setup(d, { slots: e }) {
226
+ const t = xt(d);
227
+ return J(() => d.message, (n) => {
228
+ var o, s;
229
+ Object.assign(K, (s = (o = t?.value) == null ? void 0 : o.message) != null ? s : {}, n ?? {});
230
+ }, { immediate: !0, deep: !0 }), () => we(e, "default", { config: t?.value });
231
231
  }
232
232
  });
233
- const at = [
233
+ const st = [
234
234
  "primary",
235
235
  "success",
236
236
  "info",
237
237
  "warning",
238
238
  "error"
239
- ], N = Xt({
239
+ ], N = $t({
240
240
  customClass: "",
241
241
  dangerouslyUseHTMLString: !1,
242
242
  duration: 3e3,
@@ -251,8 +251,8 @@ const at = [
251
251
  zIndex: 0,
252
252
  grouping: !1,
253
253
  repeatNum: 1,
254
- appendTo: De ? document.body : void 0
255
- }), rn = Ae({
254
+ appendTo: Ie ? document.body : void 0
255
+ }), dn = Pe({
256
256
  customClass: {
257
257
  type: String,
258
258
  default: N.customClass
@@ -291,7 +291,7 @@ const at = [
291
291
  },
292
292
  type: {
293
293
  type: String,
294
- values: at,
294
+ values: st,
295
295
  default: N.type
296
296
  },
297
297
  plain: {
@@ -314,208 +314,208 @@ const at = [
314
314
  type: Number,
315
315
  default: N.repeatNum
316
316
  }
317
- }), dn = {
317
+ }), ln = {
318
318
  destroy: () => !0
319
- }, H = Bt([]), ln = (l) => {
320
- const e = H.findIndex((s) => s.id === l), t = H[e];
319
+ }, H = Nt([]), cn = (d) => {
320
+ const e = H.findIndex((o) => o.id === d), t = H[e];
321
321
  let n;
322
322
  return e > 0 && (n = H[e - 1]), { current: t, prev: n };
323
- }, cn = (l) => {
324
- const { prev: e } = ln(l);
323
+ }, mn = (d) => {
324
+ const { prev: e } = cn(d);
325
325
  return e ? e.vm.exposed.bottom.value : 0;
326
- }, mn = (l, e) => H.findIndex((n) => n.id === l) > 0 ? 16 : e, hn = me({
326
+ }, hn = (d, e) => H.findIndex((n) => n.id === d) > 0 ? 16 : e, un = me({
327
327
  name: "ElMessage"
328
- }), un = /* @__PURE__ */ me({
329
- ...hn,
330
- props: rn,
331
- emits: dn,
332
- setup(l, { expose: e, emit: t }) {
333
- const n = l, { Close: s } = Mt, o = S(!1), { ns: a, zIndex: c } = Et("message"), { currentZIndex: d, nextZIndex: i } = c, r = S(), h = S(!1), y = S(0);
328
+ }), pn = /* @__PURE__ */ me({
329
+ ...un,
330
+ props: dn,
331
+ emits: ln,
332
+ setup(d, { expose: e, emit: t }) {
333
+ const n = d, { Close: o } = Lt, s = _(!1), { ns: a, zIndex: l } = Et("message"), { currentZIndex: r, nextZIndex: i } = l, c = _(), m = _(!1), w = _(0);
334
334
  let f;
335
- const p = D(() => n.type ? n.type === "error" ? "danger" : n.type : "info"), u = D(() => {
336
- const b = n.type;
337
- return { [a.bm("icon", b)]: b && Ne[b] };
338
- }), E = D(() => n.icon || Ne[n.type] || ""), x = D(() => cn(n.id)), k = D(() => mn(n.id, n.offset) + x.value), z = D(() => y.value + k.value), Y = D(() => ({
339
- top: `${k.value}px`,
340
- zIndex: d.value
335
+ const u = S(() => n.type ? n.type === "error" ? "danger" : n.type : "info"), h = S(() => {
336
+ const x = n.type;
337
+ return { [a.bm("icon", x)]: x && _e[x] };
338
+ }), E = S(() => n.icon || _e[n.type] || ""), b = S(() => mn(n.id)), D = S(() => hn(n.id, n.offset) + b.value), F = S(() => w.value + D.value), Z = S(() => ({
339
+ top: `${D.value}px`,
340
+ zIndex: r.value
341
341
  }));
342
- function Z() {
343
- n.duration !== 0 && ({ stop: f } = Lt(() => {
344
- A();
342
+ function G() {
343
+ n.duration !== 0 && ({ stop: f } = Mt(() => {
344
+ M();
345
345
  }, n.duration));
346
346
  }
347
- function G() {
347
+ function W() {
348
348
  f?.();
349
349
  }
350
- function A() {
351
- h.value = !1, ye(() => {
352
- var b;
353
- o.value || ((b = n.onClose) == null || b.call(n), t("destroy"));
350
+ function M() {
351
+ m.value = !1, ye(() => {
352
+ var x;
353
+ s.value || ((x = n.onClose) == null || x.call(n), t("destroy"));
354
354
  });
355
355
  }
356
- function M({ code: b }) {
357
- b === $t.esc && A();
356
+ function I({ code: x }) {
357
+ x === en.esc && M();
358
358
  }
359
- return tt(() => {
360
- Z(), i(), h.value = !0;
359
+ return et(() => {
360
+ G(), i(), m.value = !0;
361
361
  }), J(() => n.repeatNum, () => {
362
- G(), Z();
363
- }), jt(document, "keydown", M), Wt(r, () => {
364
- y.value = r.value.getBoundingClientRect().height;
362
+ W(), G();
363
+ }), jt(document, "keydown", I), Jt(c, () => {
364
+ w.value = c.value.getBoundingClientRect().height;
365
365
  }), e({
366
- visible: h,
367
- bottom: z,
368
- close: A
369
- }), (b, F) => (P(), ge(xe, {
366
+ visible: m,
367
+ bottom: F,
368
+ close: M
369
+ }), (x, j) => (A(), pe(be, {
370
370
  name: v(a).b("fade"),
371
- onBeforeEnter: (W) => o.value = !0,
372
- onBeforeLeave: b.onClose,
373
- onAfterLeave: (W) => b.$emit("destroy"),
371
+ onBeforeEnter: (ie) => s.value = !0,
372
+ onBeforeLeave: x.onClose,
373
+ onAfterLeave: (ie) => x.$emit("destroy"),
374
374
  persisted: ""
375
375
  }, {
376
- default: j(() => [
377
- $e(I("div", {
378
- id: b.id,
376
+ default: T(() => [
377
+ Xe(P("div", {
378
+ id: x.id,
379
379
  ref_key: "messageRef",
380
- ref: r,
380
+ ref: c,
381
381
  class: V([
382
382
  v(a).b(),
383
- { [v(a).m(b.type)]: b.type },
384
- v(a).is("closable", b.showClose),
385
- v(a).is("plain", b.plain),
386
- b.customClass
383
+ { [v(a).m(x.type)]: x.type },
384
+ v(a).is("closable", x.showClose),
385
+ v(a).is("plain", x.plain),
386
+ x.customClass
387
387
  ]),
388
- style: _e(v(Y)),
388
+ style: Ae(v(Z)),
389
389
  role: "alert",
390
- onMouseenter: G,
391
- onMouseleave: Z
390
+ onMouseenter: W,
391
+ onMouseleave: G
392
392
  }, [
393
- b.repeatNum > 1 ? (P(), ge(v(on), {
393
+ x.repeatNum > 1 ? (A(), pe(v(an), {
394
394
  key: 0,
395
- value: b.repeatNum,
396
- type: v(p),
395
+ value: x.repeatNum,
396
+ type: v(u),
397
397
  class: V(v(a).e("badge"))
398
398
  }, null, 8, ["value", "type", "class"])) : q("v-if", !0),
399
- v(E) ? (P(), ge(v(Re), {
399
+ v(E) ? (A(), pe(v(Be), {
400
400
  key: 1,
401
- class: V([v(a).e("icon"), v(u)])
401
+ class: V([v(a).e("icon"), v(h)])
402
402
  }, {
403
- default: j(() => [
404
- (P(), ge(Nt(v(E))))
403
+ default: T(() => [
404
+ (A(), pe(Rt(v(E))))
405
405
  ]),
406
406
  _: 1
407
407
  }, 8, ["class"])) : q("v-if", !0),
408
- be(b.$slots, "default", {}, () => [
409
- b.dangerouslyUseHTMLString ? (P(), R(ve, { key: 1 }, [
408
+ we(x.$slots, "default", {}, () => [
409
+ x.dangerouslyUseHTMLString ? (A(), R(ge, { key: 1 }, [
410
410
  q(" Caution here, message could've been compromised, never use user's input as message "),
411
- I("p", {
411
+ P("p", {
412
412
  class: V(v(a).e("content")),
413
- innerHTML: b.message
413
+ innerHTML: x.message
414
414
  }, null, 10, ["innerHTML"])
415
- ], 2112)) : (P(), R("p", {
415
+ ], 2112)) : (A(), R("p", {
416
416
  key: 0,
417
417
  class: V(v(a).e("content"))
418
- }, de(b.message), 3))
418
+ }, de(x.message), 3))
419
419
  ]),
420
- b.showClose ? (P(), ge(v(Re), {
420
+ x.showClose ? (A(), pe(v(Be), {
421
421
  key: 2,
422
422
  class: V(v(a).e("closeBtn")),
423
- onClick: Rt(A, ["stop"])
423
+ onClick: Ot(M, ["stop"])
424
424
  }, {
425
- default: j(() => [
426
- K(v(s))
425
+ default: T(() => [
426
+ z(v(o))
427
427
  ]),
428
428
  _: 1
429
429
  }, 8, ["class", "onClick"])) : q("v-if", !0)
430
430
  ], 46, ["id"]), [
431
- [et, h.value]
431
+ [$e, m.value]
432
432
  ])
433
433
  ]),
434
434
  _: 3
435
435
  }, 8, ["name", "onBeforeEnter", "onBeforeLeave", "onAfterLeave"]));
436
436
  }
437
437
  });
438
- var pn = /* @__PURE__ */ Ze(un, [["__file", "message.vue"]]);
439
- let gn = 1;
440
- const it = (l) => {
441
- const e = !l || Oe(l) || nt(l) || Pe(l) ? { message: l } : l, t = {
438
+ var gn = /* @__PURE__ */ qe(pn, [["__file", "message.vue"]]);
439
+ let vn = 1;
440
+ const at = (d) => {
441
+ const e = !d || Ne(d) || tt(d) || ke(d) ? { message: d } : d, t = {
442
442
  ...N,
443
443
  ...e
444
444
  };
445
445
  if (!t.appendTo)
446
446
  t.appendTo = document.body;
447
- else if (Oe(t.appendTo)) {
447
+ else if (Ne(t.appendTo)) {
448
448
  let n = document.querySelector(t.appendTo);
449
449
  kt(n) || (n = document.body), t.appendTo = n;
450
450
  }
451
- return Le(T.grouping) && !t.grouping && (t.grouping = T.grouping), fe(T.duration) && t.duration === 3e3 && (t.duration = T.duration), fe(T.offset) && t.offset === 16 && (t.offset = T.offset), Le(T.showClose) && !t.showClose && (t.showClose = T.showClose), Le(T.plain) && !t.plain && (t.plain = T.plain), t;
452
- }, vn = (l) => {
453
- const e = H.indexOf(l);
451
+ return Le(K.grouping) && !t.grouping && (t.grouping = K.grouping), ve(K.duration) && t.duration === 3e3 && (t.duration = K.duration), ve(K.offset) && t.offset === 16 && (t.offset = K.offset), Le(K.showClose) && !t.showClose && (t.showClose = K.showClose), Le(K.plain) && !t.plain && (t.plain = K.plain), t;
452
+ }, fn = (d) => {
453
+ const e = H.indexOf(d);
454
454
  if (e === -1)
455
455
  return;
456
456
  H.splice(e, 1);
457
- const { handler: t } = l;
457
+ const { handler: t } = d;
458
458
  t.close();
459
- }, fn = ({ appendTo: l, ...e }, t) => {
460
- const n = `message_${gn++}`, s = e.onClose, o = document.createElement("div"), a = {
459
+ }, yn = ({ appendTo: d, ...e }, t) => {
460
+ const n = `message_${vn++}`, o = e.onClose, s = document.createElement("div"), a = {
461
461
  ...e,
462
462
  id: n,
463
463
  onClose: () => {
464
- s?.(), vn(r);
464
+ o?.(), fn(c);
465
465
  },
466
466
  onDestroy: () => {
467
- Te(null, o);
467
+ Ke(null, s);
468
468
  }
469
- }, c = K(pn, a, Pe(a.message) || nt(a.message) ? {
470
- default: Pe(a.message) ? a.message : () => a.message
469
+ }, l = z(gn, a, ke(a.message) || tt(a.message) ? {
470
+ default: ke(a.message) ? a.message : () => a.message
471
471
  } : null);
472
- c.appContext = t || ce._context, Te(c, o), l.appendChild(o.firstElementChild);
473
- const d = c.component, r = {
472
+ l.appContext = t || ce._context, Ke(l, s), d.appendChild(s.firstElementChild);
473
+ const r = l.component, c = {
474
474
  id: n,
475
- vnode: c,
476
- vm: d,
475
+ vnode: l,
476
+ vm: r,
477
477
  handler: {
478
478
  close: () => {
479
- d.exposed.close();
479
+ r.exposed.close();
480
480
  }
481
481
  },
482
- props: c.component.props
482
+ props: l.component.props
483
483
  };
484
- return r;
485
- }, ce = (l = {}, e) => {
486
- if (!De)
484
+ return c;
485
+ }, ce = (d = {}, e) => {
486
+ if (!Ie)
487
487
  return { close: () => {
488
488
  } };
489
- const t = it(l);
489
+ const t = at(d);
490
490
  if (t.grouping && H.length) {
491
- const s = H.find(({ vnode: o }) => {
491
+ const o = H.find(({ vnode: s }) => {
492
492
  var a;
493
- return ((a = o.props) == null ? void 0 : a.message) === t.message;
493
+ return ((a = s.props) == null ? void 0 : a.message) === t.message;
494
494
  });
495
- if (s)
496
- return s.props.repeatNum += 1, s.props.type = t.type, s.handler;
495
+ if (o)
496
+ return o.props.repeatNum += 1, o.props.type = t.type, o.handler;
497
497
  }
498
- if (fe(T.max) && H.length >= T.max)
498
+ if (ve(K.max) && H.length >= K.max)
499
499
  return { close: () => {
500
500
  } };
501
- const n = fn(t, e);
501
+ const n = yn(t, e);
502
502
  return H.push(n), n.handler;
503
503
  };
504
- at.forEach((l) => {
505
- ce[l] = (e = {}, t) => {
506
- const n = it(e);
507
- return ce({ ...n, type: l }, t);
504
+ st.forEach((d) => {
505
+ ce[d] = (e = {}, t) => {
506
+ const n = at(e);
507
+ return ce({ ...n, type: d }, t);
508
508
  };
509
509
  });
510
- function wn(l) {
510
+ function wn(d) {
511
511
  const e = [...H];
512
512
  for (const t of e)
513
- (!l || l === t.props.type) && t.handler.close();
513
+ (!d || d === t.props.type) && t.handler.close();
514
514
  }
515
515
  ce.closeAll = wn;
516
516
  ce._context = null;
517
- const L = It(ce, "$message");
518
- class O extends Se {
517
+ const k = It(ce, "$message");
518
+ class O extends De {
519
519
  _renderer;
520
520
  get renderer() {
521
521
  return this._renderer || (this._renderer = this.parent?.findComponentByName("Renderer")), this._renderer;
@@ -582,9 +582,9 @@ class O extends Se {
582
582
  */
583
583
  createCursor(e) {
584
584
  return (t, n) => {
585
- const s = this.domElement.style.cursor;
585
+ const o = this.domElement.style.cursor;
586
586
  this.domElement.style.cursor = e, this.addEventRecord("clear", () => {
587
- this.domElement.style.cursor = s ?? "default";
587
+ this.domElement.style.cursor = o ?? "default";
588
588
  }), t(n);
589
589
  };
590
590
  }
@@ -603,40 +603,40 @@ class O extends Se {
603
603
  * @returns
604
604
  */
605
605
  createPointerMove(e) {
606
- const t = this.editor, n = new _();
607
- let s = null, o = null, a = null;
608
- const c = t.addEventListener("pointerPositionChange", () => {
609
- const d = _.from(t.pointerPosition);
610
- if (s && t.eventInput.isKeyDown("shift")) {
611
- const i = Math.abs(d.x - s.x), r = Math.abs(d.y - s.y);
612
- i > r ? n.set(d.x, s.y) : n.set(s.x, d.y), e(n, !1);
613
- } else if (o && a && t.eventInput.isKeyDown("alt")) {
614
- const i = o.projectPoint(d, !1), r = a.projectPoint(d, !1);
615
- i && r ? d.distance(i) < d.distance(r) ? n.copy(i) : n.copy(r) : i ? n.copy(i) : r && n.copy(r), e(n, !1);
606
+ const t = this.editor, n = new L();
607
+ let o = null, s = null, a = null;
608
+ const l = t.addEventListener("pointerPositionChange", () => {
609
+ const r = L.from(t.pointerPosition);
610
+ if (o && t.eventInput.isKeyDown("shift")) {
611
+ const i = Math.abs(r.x - o.x), c = Math.abs(r.y - o.y);
612
+ i > c ? n.set(r.x, o.y) : n.set(o.x, r.y), e(n, !1);
613
+ } else if (s && a && t.eventInput.isKeyDown("alt")) {
614
+ const i = s.projectPoint(r, !1), c = a.projectPoint(r, !1);
615
+ i && c ? r.distance(i) < r.distance(c) ? n.copy(i) : n.copy(c) : i ? n.copy(i) : c && n.copy(c), e(n, !1);
616
616
  } else {
617
- const { point: i, find: r, line: h } = t.renderManager.adsorption();
618
- n.copy(i), e(n, r, h);
617
+ const { point: i, find: c, line: m } = t.renderManager.adsorption();
618
+ n.copy(i), e(n, c, m);
619
619
  }
620
620
  });
621
621
  return {
622
622
  destroy() {
623
- c();
623
+ l();
624
624
  },
625
- setBaseLine(d, i) {
626
- if (o = d, s = i, d && i) {
627
- const r = d.normal();
625
+ setBaseLine(r, i) {
626
+ if (s = r, o = i, r && i) {
627
+ const c = r.normal();
628
628
  a = new B(
629
- i.clone().add(r.clone().multiplyScalar(10)),
630
- i.clone().add(r.multiplyScalar(-10))
629
+ i.clone().add(c.clone().multiplyScalar(10)),
630
+ i.clone().add(c.multiplyScalar(-10))
631
631
  );
632
632
  } else a = null;
633
633
  }
634
634
  };
635
635
  }
636
636
  }
637
- class yn extends O {
637
+ class bn extends O {
638
638
  static name = "DrawLine";
639
- container = new m.Group();
639
+ container = new p.Group();
640
640
  interruptKeys = ["escape"];
641
641
  withdrawalKeys = ["control", "z"];
642
642
  shortcutKeys = ["control", "l"];
@@ -651,24 +651,24 @@ class yn extends O {
651
651
  * @param next
652
652
  */
653
653
  selectPoint(e) {
654
- let t = this.parent?.findComponentByName("Editor"), n = null, s = null, o = [], a = new m.Mesh(new m.SphereGeometry(0.04), new m.MeshBasicMaterial({ color: 65280 })), c = t.domContainer.domElement, d = new we([], 16711935), i = new we([
655
- new m.Vector3(-1e4, 0, 0),
656
- new m.Vector3(1e4, 0, 0),
657
- new m.Vector3(0, -1e4, 0),
658
- new m.Vector3(0, 1e4, 0)
654
+ let t = this.parent?.findComponentByName("Editor"), n = null, o = null, s = [], a = this.renderer.createCircle(L.zero(), { color: 65280 }), l = t.domContainer.domElement, r = new fe([], 16711935), i = new fe([
655
+ new p.Vector3(-1e4, 0, 0),
656
+ new p.Vector3(1e4, 0, 0),
657
+ new p.Vector3(0, -1e4, 0),
658
+ new p.Vector3(0, 1e4, 0)
659
659
  ], 16711935);
660
- i.material = new m.LineDashedMaterial({
660
+ i.material = new p.LineDashedMaterial({
661
661
  color: 4235007,
662
662
  dashSize: 0.1,
663
663
  gapSize: 0.1,
664
664
  linewidth: 0.1
665
- }), this.container.add(d);
666
- const r = () => {
667
- d.setPoint(...o, n, s), i.position.copy(s), this.container.add(i), i.computeLineDistances();
668
- }, h = new m.Vector3();
669
- let y;
670
- const f = this.createPointerMove((p, u, E) => {
671
- h.set(p.x, p.y, 0), this.dispatchEvent({ type: "pointerMove", point: h }), y = E, u ? (a.position.set(p.x, p.y, 0), this.container.add(a), c.style.cursor = "none") : (a.removeFromParent(), c.style.cursor = "crosshair"), n && s && (r(), s.copy(h));
665
+ }), this.container.add(r);
666
+ const c = () => {
667
+ r.setPoint(...s, n, o), i.position.copy(o), this.container.add(i), i.computeLineDistances();
668
+ }, m = new p.Vector3();
669
+ let w;
670
+ const f = this.createPointerMove((u, h, E) => {
671
+ m.set(u.x, u.y, 0), this.dispatchEvent({ type: "pointerMove", point: m }), w = E, h ? (a.position.set(u.x, u.y, 0), this.container.add(a), l.style.cursor = "none") : (a.removeFromParent(), l.style.cursor = "crosshair"), n && o && (c(), o.copy(m));
672
672
  });
673
673
  this.addEventRecord(
674
674
  "clear",
@@ -676,24 +676,24 @@ class yn extends O {
676
676
  t.eventInput.addEventListener("codeChange", async () => {
677
677
  if (t.eventInput.isKeyDown("mouse_0")) {
678
678
  if (!n) {
679
- n = h.clone(), s = h.clone(), r(), f.setBaseLine(y ?? null, _.from(n));
679
+ n = m.clone(), o = m.clone(), c(), f.setBaseLine(w ?? null, L.from(n));
680
680
  return;
681
681
  }
682
- s = h.clone(), o.push(n.clone(), s.clone());
683
- const p = new B(_.from(n), _.from(s));
684
- f.setBaseLine(p, p.end), n.copy(s), r();
682
+ o = m.clone(), s.push(n.clone(), o.clone());
683
+ const u = new B(L.from(n), L.from(o));
684
+ f.setBaseLine(u, u.end), n.copy(o), c();
685
685
  } else if (t.eventInput.isOnlyKeyDowns(this.withdrawalKeys)) {
686
- if (o.length) {
687
- const { point: p } = t.renderManager.adsorption();
688
- if (o.pop(), s?.copy(p), n?.copy(o.pop()), r(), o.length >= 2) {
689
- const u = new B(_.from(o[o.length - 2]), _.from(o[o.length - 1]));
690
- f.setBaseLine(u, u.end);
686
+ if (s.length) {
687
+ const { point: u } = t.renderManager.adsorption();
688
+ if (s.pop(), o?.copy(u), n?.copy(s.pop()), c(), s.length >= 2) {
689
+ const h = new B(L.from(s[s.length - 2]), L.from(s[s.length - 1]));
690
+ f.setBaseLine(h, h.end);
691
691
  }
692
692
  }
693
- } else t.eventInput.isKeyDowns(this.confirmKeys) && e(o);
693
+ } else t.eventInput.isKeyDowns(this.confirmKeys) && e(s);
694
694
  }),
695
695
  function() {
696
- d.removeFromParent(), a.removeFromParent(), i.removeFromParent();
696
+ r.removeFromParent(), a.removeFromParent(), i.removeFromParent();
697
697
  }
698
698
  );
699
699
  }
@@ -702,8 +702,8 @@ class yn extends O {
702
702
  */
703
703
  end(e, t) {
704
704
  const n = [];
705
- for (let s = 0; s < t.length; s += 2)
706
- n.push(new B(_.from(t[s]), _.from(t[s + 1])));
705
+ for (let o = 0; o < t.length; o += 2)
706
+ n.push(new B(L.from(t[o]), L.from(t[o + 1])));
707
707
  e(n);
708
708
  }
709
709
  /** 执行完成
@@ -725,9 +725,9 @@ class yn extends O {
725
725
  return this.completed(e), e;
726
726
  }
727
727
  }
728
- class rt extends O {
728
+ class it extends O {
729
729
  static name = "Default";
730
- container = new m.Group();
730
+ container = new p.Group();
731
731
  onAddFromParent() {
732
732
  const e = this.editor, t = e.commandManager;
733
733
  e.container.add(this.container), t.addCommandFlow("default").add(this.start.bind(this)).addEventListener("finally", this.finally.bind(this)), t.addEventListener("startedBefore", (n) => {
@@ -735,7 +735,7 @@ class rt extends O {
735
735
  }), t.addEventListener("finally", (n) => n.name !== "default" && t.start("default")), e.eventInput.addCancelDefaultBehavior(() => e.eventInput.isOnlyKeyDowns(["control", "g"]));
736
736
  }
737
737
  selectLines = [];
738
- selectLineObject3D = new m.Mesh();
738
+ selectLineObject3D = new p.Mesh();
739
739
  /** 添加选择的线段
740
740
  * @param lineSegment
741
741
  */
@@ -778,80 +778,80 @@ class rt extends O {
778
778
  * @param next
779
779
  */
780
780
  start() {
781
- const e = this.editor, t = e.eventInput, n = new m.Mesh(), s = e.domContainer.domElement;
782
- let o = null;
783
- n.position.z = 1e-3, this.selectLineObject3D.position.z = n.position.z + 1e-3, n.material = new m.MeshBasicMaterial({ color: 55561 });
781
+ const e = this.editor, t = e.eventInput, n = new p.Mesh(), o = e.domContainer.domElement;
782
+ let s = null;
783
+ n.position.z = 1e-3, this.selectLineObject3D.position.z = n.position.z + 1e-3, n.material = new p.MeshBasicMaterial({ color: 55561 });
784
784
  const a = () => {
785
- const d = e.pointerPosition.clone(), i = e.pointerPosition.clone(), r = new m.Mesh();
786
- this.container.add(r), r.position.z = 0.05, r.material = new m.MeshBasicMaterial({
785
+ const r = e.pointerPosition.clone(), i = e.pointerPosition.clone(), c = new p.Mesh();
786
+ this.container.add(c), c.position.z = 0.05, c.material = new p.MeshBasicMaterial({
787
787
  color: 16777215,
788
788
  transparent: !0,
789
789
  opacity: 0.5
790
790
  });
791
- const h = () => {
792
- const p = Math.min(d.x, i.x), u = Math.max(d.x, i.x), E = Math.min(d.y, i.y), x = Math.max(d.y, i.y), k = [
793
- p,
794
- x,
795
- 0,
791
+ const m = () => {
792
+ const u = Math.min(r.x, i.x), h = Math.max(r.x, i.x), E = Math.min(r.y, i.y), b = Math.max(r.y, i.y), D = [
796
793
  u,
794
+ b,
795
+ 0,
796
+ h,
797
797
  E,
798
798
  0,
799
- u,
800
- x,
799
+ h,
800
+ b,
801
801
  0,
802
- p,
803
- x,
802
+ u,
803
+ b,
804
804
  0,
805
- p,
805
+ u,
806
806
  E,
807
807
  0,
808
- u,
808
+ h,
809
809
  E,
810
810
  0
811
811
  ];
812
- r.geometry = e.renderManager.createGeometry({ position: k }, k.length / 3);
813
- }, y = () => {
814
- i.copy(e.pointerPosition), h();
812
+ c.geometry = e.renderManager.createGeometry({ position: D }, D.length / 3);
813
+ }, w = () => {
814
+ i.copy(e.pointerPosition), m();
815
815
  }, f = () => {
816
- document.removeEventListener("mousemove", y), document.removeEventListener("mouseup", f), r.removeFromParent();
817
- const p = Math.min(d.x, i.x), u = Math.max(d.x, i.x), E = Math.min(d.y, i.y), x = Math.max(d.y, i.y), k = new Ye(p, u, E, x), z = e.renderManager.quadtree.queryBox(k);
818
- this.removeSelectLineAll(), z.forEach((Y) => this.addSelectLine(Y.line)), this.updateSelectLinesGeometry();
816
+ document.removeEventListener("mousemove", w), document.removeEventListener("mouseup", f), c.removeFromParent();
817
+ const u = Math.min(r.x, i.x), h = Math.max(r.x, i.x), E = Math.min(r.y, i.y), b = Math.max(r.y, i.y), D = new Ze(u, h, E, b), F = e.renderManager.quadtree.queryBox(D);
818
+ this.removeSelectLineAll(), F.forEach((Z) => this.addSelectLine(Z.line)), this.updateSelectLinesGeometry();
819
819
  };
820
- document.addEventListener("mousemove", y), document.addEventListener("mouseup", f);
821
- }, c = this.renderer.createText("", new m.Vector3(0, 0, 0), {
820
+ document.addEventListener("mousemove", w), document.addEventListener("mouseup", f);
821
+ }, l = this.renderer.createText("", new p.Vector3(0, 0, 0), {
822
822
  background: "rgba(0,0,0,0.5)",
823
823
  padding: "2px",
824
824
  borderRadius: "2px"
825
825
  }, this.container);
826
- c.visible = !1, this.addEventRecord(
826
+ l.visible = !1, this.addEventRecord(
827
827
  "clear",
828
828
  // 注册鼠标指针位置变化事件
829
829
  e.addEventListener("pointerPositionChange", () => {
830
- const { line: d } = e.renderManager.adsorption();
831
- if (d) {
832
- const i = d.expandToRectangle(0.025, "bothSides");
833
- n.geometry = e.renderManager.createGeometry({ position: i.createGeometry() }, 6), this.container.add(n), s.style.cursor = "pointer", o = d;
834
- const r = d.center;
835
- c.element.innerText = parseInt(d.length() * 1e3 + "") + " mm", c.position.set(r.x, r.y, 0), c.visible = !0;
830
+ const { line: r } = e.renderManager.adsorption();
831
+ if (r) {
832
+ const i = r.expandToRectangle(0.025, "bothSides");
833
+ n.geometry = e.renderManager.createGeometry({ position: i.createGeometry() }, 6), this.container.add(n), o.style.cursor = "pointer", s = r;
834
+ const c = r.center;
835
+ l.element.innerText = parseInt(r.length() * 1e3 + "") + " mm", l.position.set(c.x, c.y, 0), l.visible = !0;
836
836
  } else
837
- n.removeFromParent(), s.style.cursor = "default", o = null, c.visible = !1;
837
+ n.removeFromParent(), o.style.cursor = "default", s = null, l.visible = !1;
838
838
  }),
839
839
  t.addEventListener("codeChange", () => {
840
840
  if (t.isKeyDown("mouse_0")) {
841
- if (!o) return a();
841
+ if (!s) return a();
842
842
  if (t.isKeyDown("alt"))
843
- return this.removeSelectLine(o);
844
- t.isKeyDown("control") || this.removeSelectLineAll(), this.addSelectLine(o);
843
+ return this.removeSelectLine(s);
844
+ t.isKeyDown("control") || this.removeSelectLineAll(), this.addSelectLine(s);
845
845
  } else if (t.isKeyDown("mouse_1")) {
846
- if (!o) return;
847
- this.removeSelectLine(o);
846
+ if (!s) return;
847
+ this.removeSelectLine(s);
848
848
  } else if (t.isKeyDown("mouse_2")) {
849
- if (!o) return;
850
- this.addSelectLine(o);
849
+ if (!s) return;
850
+ this.addSelectLine(s);
851
851
  } else t.isKeyDowns(["control", "z"]) ? e.commandManager.rollback() : t.isKeyDowns(["control", "y"]) && e.commandManager.revokeRollback();
852
852
  }),
853
853
  function() {
854
- n.removeFromParent(), c.removeFromParent();
854
+ n.removeFromParent(), l.removeFromParent();
855
855
  }
856
856
  );
857
857
  }
@@ -862,7 +862,7 @@ class rt extends O {
862
862
  this.canceEventRecord("clear"), this.removeSelectLineAll(), this.updateSelectLinesGeometry();
863
863
  }
864
864
  }
865
- class bn extends Xe {
865
+ class xn extends Ye {
866
866
  list = [];
867
867
  rollbacklist = [];
868
868
  revokeRollbacklist = [];
@@ -890,7 +890,7 @@ class bn extends Xe {
890
890
  return this.revokeRollbacklist.push(e), this;
891
891
  }
892
892
  }
893
- class xn extends Xe {
893
+ class Cn extends Ye {
894
894
  commandFlowMap = /* @__PURE__ */ new Map();
895
895
  lock = !1;
896
896
  abortController = null;
@@ -917,7 +917,7 @@ class xn extends Xe {
917
917
  */
918
918
  addCommandFlow(e) {
919
919
  if (this.commandFlowMap.has(e)) throw new Error(`${e} 命令已经存在`);
920
- const t = new bn();
920
+ const t = new xn();
921
921
  return this.commandFlowMap.set(e, t), t;
922
922
  }
923
923
  executionPromise = null;
@@ -934,25 +934,25 @@ class xn extends Xe {
934
934
  currentName: this.currentName
935
935
  }), this.executionPromise && await this.executionPromise, this.executionPromise = null, this.lock)
936
936
  throw new Error("命令管理器已被 " + this.currentName + " 命令锁定,无法启动新的命令流,请退出或等待命令执行结束");
937
- const s = this.commandFlowMap.get(e);
938
- if (!s)
937
+ const o = this.commandFlowMap.get(e);
938
+ if (!o)
939
939
  throw new Error(`命令流 ${e} 不存在`);
940
- this.lock = !0, this.abortController = new AbortController(), this.currentName = e, s.dispatchEvent({ type: "started" }), this.dispatchEvent({ type: "started", name: e });
940
+ this.lock = !0, this.abortController = new AbortController(), this.currentName = e, o.dispatchEvent({ type: "started" }), this.dispatchEvent({ type: "started", name: e });
941
941
  try {
942
- for (let o = n; o < s.list.length; o++) {
943
- const a = s.list[o];
944
- if (s.dispatchEvent({ type: "executing", index: o }), this.dispatchEvent({ type: "executing", name: e, index: o }), t = await new Promise((c) => {
945
- this.resolve = c, a(c, t);
942
+ for (let s = n; s < o.list.length; s++) {
943
+ const a = o.list[s];
944
+ if (o.dispatchEvent({ type: "executing", index: s }), this.dispatchEvent({ type: "executing", name: e, index: s }), t = await new Promise((l) => {
945
+ this.resolve = l, a(l, t);
946
946
  }), this.abortController.signal.aborted) {
947
- s.dispatchEvent({ type: "executionInterrupt", index: o }), this.dispatchEvent({ type: "executionInterrupt", name: e, index: o }), this.dispatchEvent({ type: "cancel", name: e });
947
+ o.dispatchEvent({ type: "executionInterrupt", index: s }), this.dispatchEvent({ type: "executionInterrupt", name: e, index: s }), this.dispatchEvent({ type: "cancel", name: e });
948
948
  break;
949
949
  } else
950
- s.dispatchEvent({ type: "executionCompleted", index: o, data: t }), this.dispatchEvent({ type: "executionCompleted", name: e, index: o, data: t });
950
+ o.dispatchEvent({ type: "executionCompleted", index: s, data: t }), this.dispatchEvent({ type: "executionCompleted", name: e, index: s, data: t });
951
951
  }
952
- } catch (o) {
953
- console.error(o);
952
+ } catch (s) {
953
+ console.error(s);
954
954
  } finally {
955
- this.abortController && !this.abortController.signal.aborted && (s.dispatchEvent({ type: "completed", data: t }), this.dispatchEvent({ type: "completed", name: e, data: t }), s.writeOperationList && (this.operationList.push({ name: e, data: t }), this.rollbackList.length = 0)), this.lock = !1, this.abortController = null, this.currentName = null, s.dispatchEvent({ type: "finally" }), this.dispatchEvent({ type: "finally", name: e }), this.executionResolve && (this.executionResolve(null), this.executionResolve = null);
955
+ this.abortController && !this.abortController.signal.aborted && (o.dispatchEvent({ type: "completed", data: t }), this.dispatchEvent({ type: "completed", name: e, data: t }), o.writeOperationList && (this.operationList.push({ name: e, data: t }), this.rollbackList.length = 0)), this.lock = !1, this.abortController = null, this.currentName = null, o.dispatchEvent({ type: "finally" }), this.dispatchEvent({ type: "finally", name: e }), this.executionResolve && (this.executionResolve(null), this.executionResolve = null);
956
956
  }
957
957
  return t;
958
958
  }
@@ -970,7 +970,7 @@ class xn extends Xe {
970
970
  if (!e) return !1;
971
971
  const t = this.commandFlowMap.get(e.name);
972
972
  if (!t) return !1;
973
- const n = t.rollbacklist.reduce((s, o) => o(s), e.data);
973
+ const n = t.rollbacklist.reduce((o, s) => s(o), e.data);
974
974
  return this.dispatchEvent({ type: "rollback", name: e.name }), this.rollbackList.push({
975
975
  data: n,
976
976
  name: e.name
@@ -988,72 +988,72 @@ class xn extends Xe {
988
988
  if (!e) return !1;
989
989
  const t = this.commandFlowMap.get(e.name);
990
990
  if (!t) return !1;
991
- const n = t.revokeRollbacklist.reduce((s, o) => o(s), e.data);
991
+ const n = t.revokeRollbacklist.reduce((o, s) => s(o), e.data);
992
992
  return this.dispatchEvent({ type: "revokeRollback", name: e.name }), this.operationList.push({ name: e.name, data: n }), !0;
993
993
  } catch (e) {
994
994
  throw new Error(`撤回回滚失败:${e}`);
995
995
  }
996
996
  }
997
997
  }
998
- const Cn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='5569'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M522.1888%20811.3152a412.1088%20412.1088%200%200%200-114.5344-269.7728l-244.48%20269.7728h359.0144zM450.816%20493.824c83.5072%2085.3504%20132.7104%20197.4784%20136.5504%20317.4912h417.5872v63.232H18.9952L676.1472%20149.4016l48.9472%2041.7792-274.2784%20302.6432z'%20%3e%3c/path%3e%3c/svg%3e", En = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
998
+ const En = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='5569'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M522.1888%20811.3152a412.1088%20412.1088%200%200%200-114.5344-269.7728l-244.48%20269.7728h359.0144zM450.816%20493.824c83.5072%2085.3504%20132.7104%20197.4784%20136.5504%20317.4912h417.5872v63.232H18.9952L676.1472%20149.4016l48.9472%2041.7792-274.2784%20302.6432z'%20%3e%3c/path%3e%3c/svg%3e", Ln = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
999
999
  __proto__: null,
1000
- default: Cn
1001
- }, Symbol.toStringTag, { value: "Module" })), Mn = "data:image/svg+xml,%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M639.999191%20893.597594c-0.999994-54.699654-36.39977-101.099361-85.39946-118.399252-6.39996-2.199986-10.599933-8.299948-10.599933-14.999905V263.801573c0-6.699958%204.199973-12.799919%2010.599933-14.999905%2049.09969-17.299891%2084.399467-63.599598%2085.39946-118.399252C641.299183%2059.902862%20583.399549%200.503237%20512.899994%200.00324%20441.800444-0.496757%20384.000809%2057.00288%20384.000809%20128.002431c0%2055.699648%2035.599775%20103.099349%2085.299461%20120.699238%206.39996%202.299985%2010.699932%208.299948%2010.699932%2015.099904v496.396864c0%206.799957-4.299973%2012.799919-10.699932%2015.099904-49.699686%2017.599889-85.299461%2064.999589-85.299461%20120.699238%200%2070.999551%2057.799635%20128.499188%20128.899185%20127.999191%2070.499555-0.499997%20128.399189-59.899622%20127.099197-130.399176zM448.000404%20128.002431c0-35.299777%2028.699819-63.999596%2063.999596-63.999595s63.999596%2028.699819%2063.999596%2063.999595-28.699819%2063.999596-63.999596%2063.999596-63.999596-28.699819-63.999596-63.999596z%20m0%20767.995148c0-35.299777%2028.699819-63.999596%2063.999596-63.999596s63.999596%2028.699819%2063.999596%2063.999596-28.699819%2063.999596-63.999596%2063.999595-63.999596-28.699819-63.999596-63.999595z'%3e%3c/path%3e%3c/svg%3e", Ln = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1000
+ default: En
1001
+ }, Symbol.toStringTag, { value: "Module" })), Mn = "data:image/svg+xml,%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M639.999191%20893.597594c-0.999994-54.699654-36.39977-101.099361-85.39946-118.399252-6.39996-2.199986-10.599933-8.299948-10.599933-14.999905V263.801573c0-6.699958%204.199973-12.799919%2010.599933-14.999905%2049.09969-17.299891%2084.399467-63.599598%2085.39946-118.399252C641.299183%2059.902862%20583.399549%200.503237%20512.899994%200.00324%20441.800444-0.496757%20384.000809%2057.00288%20384.000809%20128.002431c0%2055.699648%2035.599775%20103.099349%2085.299461%20120.699238%206.39996%202.299985%2010.699932%208.299948%2010.699932%2015.099904v496.396864c0%206.799957-4.299973%2012.799919-10.699932%2015.099904-49.699686%2017.599889-85.299461%2064.999589-85.299461%20120.699238%200%2070.999551%2057.799635%20128.499188%20128.899185%20127.999191%2070.499555-0.499997%20128.399189-59.899622%20127.099197-130.399176zM448.000404%20128.002431c0-35.299777%2028.699819-63.999596%2063.999596-63.999595s63.999596%2028.699819%2063.999596%2063.999595-28.699819%2063.999596-63.999596%2063.999596-63.999596-28.699819-63.999596-63.999596z%20m0%20767.995148c0-35.299777%2028.699819-63.999596%2063.999596-63.999596s63.999596%2028.699819%2063.999596%2063.999596-28.699819%2063.999596-63.999596%2063.999595-63.999596-28.699819-63.999596-63.999595z'%3e%3c/path%3e%3c/svg%3e", kn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1002
1002
  __proto__: null,
1003
1003
  default: Mn
1004
- }, Symbol.toStringTag, { value: "Module" })), kn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='8193'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M426.666667%20255.872c0%2031.232-8.405333%2060.544-23.04%2085.76L512%20451.498667l287.061333-287.061334a85.333333%2085.333333%200%200%201%20120.661334%200l-516.693334%20516.693334a170.666667%20170.666667%200%201%201-60.330666-60.330667l108.970666-108.970667-108.970666-108.970666A170.666667%20170.666667%200%201%201%20426.666667%20255.872z%20m-85.333334%200a85.333333%2085.333333%200%201%200-170.666666%200%2085.333333%2085.333333%200%200%200%20170.666666%200z%20m578.389334%20603.392a85.333333%2085.333333%200%200%201-120.661334%200l-226.858666-226.858667%2060.373333-60.330666%20287.146667%20287.146666zM682.666667%20469.205333h85.333333v85.333334h-85.333333v-85.333334z%20m170.666666%200h85.333334v85.333334h-85.333334v-85.333334z%20m-597.333333%200h85.333333v85.333334H256v-85.333334z%20m-170.666667%200h85.333334v85.333334H85.333333v-85.333334z%20m170.666667%20384a85.333333%2085.333333%200%201%200%200-170.666666%2085.333333%2085.333333%200%200%200%200%20170.666666z'%3e%3c/path%3e%3c/svg%3e", In = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1004
+ }, Symbol.toStringTag, { value: "Module" })), In = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='8193'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M426.666667%20255.872c0%2031.232-8.405333%2060.544-23.04%2085.76L512%20451.498667l287.061333-287.061334a85.333333%2085.333333%200%200%201%20120.661334%200l-516.693334%20516.693334a170.666667%20170.666667%200%201%201-60.330666-60.330667l108.970666-108.970667-108.970666-108.970666A170.666667%20170.666667%200%201%201%20426.666667%20255.872z%20m-85.333334%200a85.333333%2085.333333%200%201%200-170.666666%200%2085.333333%2085.333333%200%200%200%20170.666666%200z%20m578.389334%20603.392a85.333333%2085.333333%200%200%201-120.661334%200l-226.858666-226.858667%2060.373333-60.330666%20287.146667%20287.146666zM682.666667%20469.205333h85.333333v85.333334h-85.333333v-85.333334z%20m170.666666%200h85.333334v85.333334h-85.333334v-85.333334z%20m-597.333333%200h85.333333v85.333334H256v-85.333334z%20m-170.666667%200h85.333334v85.333334H85.333333v-85.333334z%20m170.666667%20384a85.333333%2085.333333%200%201%200%200-170.666666%2085.333333%2085.333333%200%200%200%200%20170.666666z'%3e%3c/path%3e%3c/svg%3e", Pn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1005
1005
  __proto__: null,
1006
- default: kn
1007
- }, Symbol.toStringTag, { value: "Module" })), Pn = "data:image/svg+xml,%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M909.050991%20169.476903l-217.554898%200%200-31.346939c0-39.5866-32.205493-71.792093-71.793116-71.792093L408.15591%2066.337871c-39.5866%200-71.792093%2032.205493-71.792093%2071.792093l0%2031.346939L113.349581%20169.476903c-11.013845%200-19.942191%208.940626-19.942191%2019.954471s8.928347%2019.954471%2019.942191%2019.954471l84.264149%200%200%20640.687918c0%2060.479443%2049.203632%20109.683075%20109.683075%20109.683075l416.474366%200c60.479443%200%20109.683075-49.203632%20109.683075-109.683075L833.454246%20209.385844l75.595722%200c11.012821%200%2019.942191-8.940626%2019.942191-19.954471S920.063813%20169.476903%20909.050991%20169.476903zM376.2482%20138.130987c0-17.593703%2014.314007-31.907711%2031.907711-31.907711l211.547067%200c17.593703%200%2031.907711%2014.314007%2031.907711%2031.907711l0%2031.346939L376.2482%20169.477926%20376.2482%20138.130987zM793.569864%20850.074785c0%2038.486546-31.312146%2069.798692-69.798692%2069.798692L307.297828%20919.873478c-38.486546%200-69.798692-31.312146-69.798692-69.798692L237.499136%20211.042577l556.070728%200L793.569864%20850.074785zM510.662539%20861.276918c11.012821%200%2019.954471-8.92937%2019.954471-19.942191L530.61701%20294.912753c0-11.013845-8.94165-19.942191-19.954471-19.942191s-19.954471%208.928347-19.954471%2019.942191L490.708068%20841.334727C490.708068%20852.347548%20499.649717%20861.276918%20510.662539%20861.276918zM374.562814%20801.449321c11.012821%200%2019.954471-8.92937%2019.954471-19.942191L394.517285%20354.74035c0-11.013845-8.94165-19.942191-19.954471-19.942191s-19.954471%208.928347-19.954471%2019.942191l0%20426.76678C354.608344%20792.519951%20363.549993%20801.449321%20374.562814%20801.449321zM649.832182%20801.449321c11.012821%200%2019.954471-8.92937%2019.954471-19.942191L669.786653%20354.74035c0-11.013845-8.94165-19.942191-19.954471-19.942191s-19.954471%208.928347-19.954471%2019.942191l0%20426.76678C629.877711%20792.519951%20638.81936%20801.449321%20649.832182%20801.449321z'%20%3e%3c/path%3e%3c/svg%3e", Dn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1006
+ default: In
1007
+ }, Symbol.toStringTag, { value: "Module" })), Dn = "data:image/svg+xml,%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M909.050991%20169.476903l-217.554898%200%200-31.346939c0-39.5866-32.205493-71.792093-71.793116-71.792093L408.15591%2066.337871c-39.5866%200-71.792093%2032.205493-71.792093%2071.792093l0%2031.346939L113.349581%20169.476903c-11.013845%200-19.942191%208.940626-19.942191%2019.954471s8.928347%2019.954471%2019.942191%2019.954471l84.264149%200%200%20640.687918c0%2060.479443%2049.203632%20109.683075%20109.683075%20109.683075l416.474366%200c60.479443%200%20109.683075-49.203632%20109.683075-109.683075L833.454246%20209.385844l75.595722%200c11.012821%200%2019.942191-8.940626%2019.942191-19.954471S920.063813%20169.476903%20909.050991%20169.476903zM376.2482%20138.130987c0-17.593703%2014.314007-31.907711%2031.907711-31.907711l211.547067%200c17.593703%200%2031.907711%2014.314007%2031.907711%2031.907711l0%2031.346939L376.2482%20169.477926%20376.2482%20138.130987zM793.569864%20850.074785c0%2038.486546-31.312146%2069.798692-69.798692%2069.798692L307.297828%20919.873478c-38.486546%200-69.798692-31.312146-69.798692-69.798692L237.499136%20211.042577l556.070728%200L793.569864%20850.074785zM510.662539%20861.276918c11.012821%200%2019.954471-8.92937%2019.954471-19.942191L530.61701%20294.912753c0-11.013845-8.94165-19.942191-19.954471-19.942191s-19.954471%208.928347-19.954471%2019.942191L490.708068%20841.334727C490.708068%20852.347548%20499.649717%20861.276918%20510.662539%20861.276918zM374.562814%20801.449321c11.012821%200%2019.954471-8.92937%2019.954471-19.942191L394.517285%20354.74035c0-11.013845-8.94165-19.942191-19.954471-19.942191s-19.954471%208.928347-19.954471%2019.942191l0%20426.76678C354.608344%20792.519951%20363.549993%20801.449321%20374.562814%20801.449321zM649.832182%20801.449321c11.012821%200%2019.954471-8.92937%2019.954471-19.942191L669.786653%20354.74035c0-11.013845-8.94165-19.942191-19.954471-19.942191s-19.954471%208.928347-19.954471%2019.942191l0%20426.76678C629.877711%20792.519951%20638.81936%20801.449321%20649.832182%20801.449321z'%20%3e%3c/path%3e%3c/svg%3e", An = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1008
1008
  __proto__: null,
1009
- default: Pn
1010
- }, Symbol.toStringTag, { value: "Module" })), An = "data:image/svg+xml,%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M220.451548%20913.518482V318.145854c0-27.62038%2022.505495-50.125874%2050.125875-50.125874H865.95005c27.62038%200%2050.125874%2022.505495%2050.125874%2050.125874v218.917083h59.332667V318.145854c0-60.355644-49.102897-109.458541-109.458541-109.458541h-39.896104v-99.228772C826.053946%2049.102897%20776.951049%200%20716.595405%200H121.222777C60.867133%200%2011.764236%2049.102897%2011.764236%20109.458541V705.854146c0%2060.355644%2049.102897%20109.458541%20109.458541%20109.458541h39.896104v99.228772c0%2060.355644%2049.102897%20109.458541%20109.458542%20109.458541h257.790209v-59.332667H269.554446c-26.597403-1.022977-49.102897-23.528472-49.102898-51.148851z%20m-59.332667-595.372628v436.811189h-39.896104c-27.62038%200-50.125874-22.505495-50.125874-50.125874V109.458541c0-27.62038%2022.505495-50.125874%2050.125874-50.125874H716.595405c27.62038%200%2050.125874%2022.505495%2050.125874%2050.125874v99.228772H269.554446c-59.332667%200-108.435564%2049.102897-108.435565%20109.458541z'%20%3e%3c/path%3e%3cpath%20d='M902.777223%20854.185814l98.205794-98.205794c15.344655-15.344655%2015.344655-40.919081%200-56.263736s-40.919081-15.344655-56.263736%200L846.513487%20797.922078%20747.284715%20699.716284c-15.344655-15.344655-40.919081-15.344655-56.263736%200s-15.344655%2040.919081%200%2056.263736l98.205794%2098.205794-98.205794%2098.205794c-15.344655%2015.344655-15.344655%2040.919081%200%2056.263737s40.919081%2015.344655%2056.263736%200l98.205794-98.205795%2098.205795%2098.205795c15.344655%2015.344655%2040.919081%2015.344655%2056.263736%200s15.344655-40.919081%200-56.263737l-97.182817-98.205794z'%20%3e%3c/path%3e%3c/svg%3e", Sn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1009
+ default: Dn
1010
+ }, Symbol.toStringTag, { value: "Module" })), Sn = "data:image/svg+xml,%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M220.451548%20913.518482V318.145854c0-27.62038%2022.505495-50.125874%2050.125875-50.125874H865.95005c27.62038%200%2050.125874%2022.505495%2050.125874%2050.125874v218.917083h59.332667V318.145854c0-60.355644-49.102897-109.458541-109.458541-109.458541h-39.896104v-99.228772C826.053946%2049.102897%20776.951049%200%20716.595405%200H121.222777C60.867133%200%2011.764236%2049.102897%2011.764236%20109.458541V705.854146c0%2060.355644%2049.102897%20109.458541%20109.458541%20109.458541h39.896104v99.228772c0%2060.355644%2049.102897%20109.458541%20109.458542%20109.458541h257.790209v-59.332667H269.554446c-26.597403-1.022977-49.102897-23.528472-49.102898-51.148851z%20m-59.332667-595.372628v436.811189h-39.896104c-27.62038%200-50.125874-22.505495-50.125874-50.125874V109.458541c0-27.62038%2022.505495-50.125874%2050.125874-50.125874H716.595405c27.62038%200%2050.125874%2022.505495%2050.125874%2050.125874v99.228772H269.554446c-59.332667%200-108.435564%2049.102897-108.435565%20109.458541z'%20%3e%3c/path%3e%3cpath%20d='M902.777223%20854.185814l98.205794-98.205794c15.344655-15.344655%2015.344655-40.919081%200-56.263736s-40.919081-15.344655-56.263736%200L846.513487%20797.922078%20747.284715%20699.716284c-15.344655-15.344655-40.919081-15.344655-56.263736%200s-15.344655%2040.919081%200%2056.263736l98.205794%2098.205794-98.205794%2098.205794c-15.344655%2015.344655-15.344655%2040.919081%200%2056.263737s40.919081%2015.344655%2056.263736%200l98.205794-98.205795%2098.205795%2098.205795c15.344655%2015.344655%2040.919081%2015.344655%2056.263736%200s15.344655-40.919081%200-56.263737l-97.182817-98.205794z'%20%3e%3c/path%3e%3c/svg%3e", _n = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1011
1011
  __proto__: null,
1012
- default: An
1013
- }, Symbol.toStringTag, { value: "Module" })), _n = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1757902601497'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='9801'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='200'%20height='200'%3e%3cpath%20d='M761.344%20119.296H226.816c-18.944%200-39.424%2011.776-39.424%2030.72V921.6h614.4V148.48c0.512-18.944-22.016-29.184-40.448-29.184z%20m-537.6%20768c-2.048%200-2.048%200%200%200L221.696%20163.84c0-5.12%205.12-10.24%2010.24-10.24h522.24c8.704%200%2013.824%205.12%2013.824%2013.824v720.384s0%201.536-1.536%201.536h-15.36V194.56c0-16.896-8.704-24.064-29.184-24.064H266.24c-18.944%200-27.136%208.704-27.136%2024.064v692.736h-15.36z%20m49.152%200V204.8H716.8v682.496H272.896z'%20p-id='9802'%3e%3c/path%3e%3cpath%20d='M648.704%20508.416c-16.896%200-32.256%2013.824-32.256%2032.256%200%2016.896%2013.824%2032.256%2032.256%2032.256s32.256-13.824%2032.256-32.256c0-16.896-13.824-32.256-32.256-32.256z'%20p-id='9803'%3e%3c/path%3e%3c/svg%3e", Bn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1012
+ default: Sn
1013
+ }, Symbol.toStringTag, { value: "Module" })), Bn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1757902601497'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='9801'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='200'%20height='200'%3e%3cpath%20d='M761.344%20119.296H226.816c-18.944%200-39.424%2011.776-39.424%2030.72V921.6h614.4V148.48c0.512-18.944-22.016-29.184-40.448-29.184z%20m-537.6%20768c-2.048%200-2.048%200%200%200L221.696%20163.84c0-5.12%205.12-10.24%2010.24-10.24h522.24c8.704%200%2013.824%205.12%2013.824%2013.824v720.384s0%201.536-1.536%201.536h-15.36V194.56c0-16.896-8.704-24.064-29.184-24.064H266.24c-18.944%200-27.136%208.704-27.136%2024.064v692.736h-15.36z%20m49.152%200V204.8H716.8v682.496H272.896z'%20p-id='9802'%3e%3c/path%3e%3cpath%20d='M648.704%20508.416c-16.896%200-32.256%2013.824-32.256%2032.256%200%2016.896%2013.824%2032.256%2032.256%2032.256s32.256-13.824%2032.256-32.256c0-16.896-13.824-32.256-32.256-32.256z'%20p-id='9803'%3e%3c/path%3e%3c/svg%3e", Nn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1014
1014
  __proto__: null,
1015
- default: _n
1016
- }, Symbol.toStringTag, { value: "Module" })), Nn = "data:image/svg+xml,%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M491.80027198%20557.44938977c-10.0998647-15.14979706-20.19972802-25.24966037-35.34952507-35.34952507-15.14979706-10.0998647-30.29959271-15.14979706-50.49932211-15.14979704-55.54925309%200-100.99864286%2045.44938977-100.99864287%20100.99864285%200%2015.14979706%205.04993234%2035.34952507%2015.14979568%2050.49932212%2010.0998647%2015.14979706%2020.19972802%2030.29959271%2035.34952506%2035.34952508%2015.14979706%2010.0998647%2035.34952507%2015.14979706%2050.49932213%2015.14979567%2055.54925309%200%20100.99864286-45.44938977%20100.99864286-100.99864287%200-15.14979706-5.04993234-35.34952507-15.14979568-50.49932074z%20m-85.84884718%20100.99864286h-15.14979706c-20.19972802-5.04993234-30.29959271-20.19972802-35.34952507-35.34952507V612.99864286c0-30.29959271%2025.24966037-50.49932212%2050.49932213-50.49932074h10.09986469c15.14979706%205.04993234%2030.29959271%2015.14979706%2035.34952507%2035.34952507v15.14979567c5.04993234%2025.24966037-20.19972802%2045.44938977-45.44938976%2045.44938977z'%3e%3c/path%3e%3cpath%20d='M390.80162774%20658.44803263l-40.39945604%2040.39945743-227.24694747%20222.19701373-35.34952506-35.34952508%20227.24694745-227.24694608%2040.39945605-40.39945743c5.04993234%2020.19972802%2020.19972802%2035.34952507%2035.34952507%2040.39945743zM648.34816793%20405.9514248l-40.39945742%2040.3994574-116.14843853%20116.14843992-40.39945742%2035.34952507c-5.04993234-20.19972802-20.19972802-30.29959271-35.34952507-35.34952507l40.39945742-40.39945742%20116.14843853-111.09850756%2035.34952507-35.34952507c10.0998647%2015.14979706%2020.19972802%2025.24966037%2040.39945742%2030.29959273zM926.09443614%20133.25508894L749.34681078%20310.00271428l-40.3994574%2040.39945742c-5.04993234-20.19972802-15.14979706-35.34952507-30.29959272-40.39945742l35.34952506-40.39945742%20176.74762534-176.74762535%2035.34952508%2040.39945743z'%20%3e%3c/path%3e%3cpath%20d='M749.34681078%20310.00271428c-10.0998647-15.14979706-20.19972802-30.29959271-35.34952506-35.34952506-15.14979706-10.0998647-35.34952507-15.14979706-55.54925309-15.14979706-55.54925309%200-100.99864286%2045.44938977-100.99864286%20100.99864286%200%2020.19972802%205.04993234%2040.39945743%2015.14979567%2055.54925447%2010.0998647%2015.14979706%2020.19972802%2025.24966037%2035.34952507%2035.34952507%2015.14979706%2010.0998647%2030.29959271%2015.14979706%2050.49932212%2015.14979567%2055.54925309%200%20100.99864286-45.44938977%20100.99864286-100.99864286%200-25.24966037-5.04993234-40.39945743-10.09986471-55.54925309z%20m-90.89877815%2095.94871052h-10.0998647c-20.19972802-5.04993234-35.34952507-15.14979706-40.39945742-35.34952509%200-5.04993234-5.04993234-10.0998647-5.04993234-15.14979704%200-30.29959271%2025.24966037-50.49932212%2050.49932212-50.49932074%205.04993234%200%2010.0998647%200%2015.14979704%205.04993235%2015.14979706%205.04993234%2030.29959271%2020.19972802%2030.29959273%2040.39945742v10.09986332c10.0998647%2025.24966037-15.14979706%2045.44938977-40.39945743%2045.44938978z'%20%3e%3c/path%3e%3c/svg%3e", Rn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1015
+ default: Bn
1016
+ }, Symbol.toStringTag, { value: "Module" })), Rn = "data:image/svg+xml,%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M491.80027198%20557.44938977c-10.0998647-15.14979706-20.19972802-25.24966037-35.34952507-35.34952507-15.14979706-10.0998647-30.29959271-15.14979706-50.49932211-15.14979704-55.54925309%200-100.99864286%2045.44938977-100.99864287%20100.99864285%200%2015.14979706%205.04993234%2035.34952507%2015.14979568%2050.49932212%2010.0998647%2015.14979706%2020.19972802%2030.29959271%2035.34952506%2035.34952508%2015.14979706%2010.0998647%2035.34952507%2015.14979706%2050.49932213%2015.14979567%2055.54925309%200%20100.99864286-45.44938977%20100.99864286-100.99864287%200-15.14979706-5.04993234-35.34952507-15.14979568-50.49932074z%20m-85.84884718%20100.99864286h-15.14979706c-20.19972802-5.04993234-30.29959271-20.19972802-35.34952507-35.34952507V612.99864286c0-30.29959271%2025.24966037-50.49932212%2050.49932213-50.49932074h10.09986469c15.14979706%205.04993234%2030.29959271%2015.14979706%2035.34952507%2035.34952507v15.14979567c5.04993234%2025.24966037-20.19972802%2045.44938977-45.44938976%2045.44938977z'%3e%3c/path%3e%3cpath%20d='M390.80162774%20658.44803263l-40.39945604%2040.39945743-227.24694747%20222.19701373-35.34952506-35.34952508%20227.24694745-227.24694608%2040.39945605-40.39945743c5.04993234%2020.19972802%2020.19972802%2035.34952507%2035.34952507%2040.39945743zM648.34816793%20405.9514248l-40.39945742%2040.3994574-116.14843853%20116.14843992-40.39945742%2035.34952507c-5.04993234-20.19972802-20.19972802-30.29959271-35.34952507-35.34952507l40.39945742-40.39945742%20116.14843853-111.09850756%2035.34952507-35.34952507c10.0998647%2015.14979706%2020.19972802%2025.24966037%2040.39945742%2030.29959273zM926.09443614%20133.25508894L749.34681078%20310.00271428l-40.3994574%2040.39945742c-5.04993234-20.19972802-15.14979706-35.34952507-30.29959272-40.39945742l35.34952506-40.39945742%20176.74762534-176.74762535%2035.34952508%2040.39945743z'%20%3e%3c/path%3e%3cpath%20d='M749.34681078%20310.00271428c-10.0998647-15.14979706-20.19972802-30.29959271-35.34952506-35.34952506-15.14979706-10.0998647-35.34952507-15.14979706-55.54925309-15.14979706-55.54925309%200-100.99864286%2045.44938977-100.99864286%20100.99864286%200%2020.19972802%205.04993234%2040.39945743%2015.14979567%2055.54925447%2010.0998647%2015.14979706%2020.19972802%2025.24966037%2035.34952507%2035.34952507%2015.14979706%2010.0998647%2030.29959271%2015.14979706%2050.49932212%2015.14979567%2055.54925309%200%20100.99864286-45.44938977%20100.99864286-100.99864286%200-25.24966037-5.04993234-40.39945743-10.09986471-55.54925309z%20m-90.89877815%2095.94871052h-10.0998647c-20.19972802-5.04993234-35.34952507-15.14979706-40.39945742-35.34952509%200-5.04993234-5.04993234-10.0998647-5.04993234-15.14979704%200-30.29959271%2025.24966037-50.49932212%2050.49932212-50.49932074%205.04993234%200%2010.0998647%200%2015.14979704%205.04993235%2015.14979706%205.04993234%2030.29959271%2020.19972802%2030.29959273%2040.39945742v10.09986332c10.0998647%2025.24966037-15.14979706%2045.44938977-40.39945743%2045.44938978z'%20%3e%3c/path%3e%3c/svg%3e", On = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1017
1017
  __proto__: null,
1018
- default: Nn
1019
- }, Symbol.toStringTag, { value: "Module" })), On = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1757902422799'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='1735'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='200'%20height='200'%3e%3cpath%20d='M843.2%20726.4c-20.2%200-39.2%205.2-55.8%2014.3L283.8%20237.2c9-16.5%2014.1-35.4%2014.1-55.5%200-64.2-52.3-116.5-116.5-116.5S65%20117.4%2065%20181.6s52.3%20116.5%20116.5%20116.5c20.2%200%2039.2-5.2%2055.8-14.2l503.5%20503.5c-9%2016.5-14.1%2035.4-14.1%2055.5%200%2064.2%2052.3%20116.5%20116.5%20116.5s116.5-52.3%20116.5-116.5-52.3-116.5-116.5-116.5zM181.4%20232.1c-27.8%200-50.5-22.6-50.5-50.5s22.6-50.5%2050.5-50.5%2050.5%2022.6%2050.5%2050.5-22.6%2050.5-50.5%2050.5z%20m661.8%20661.3c-27.8%200-50.5-22.6-50.5-50.5%200-27.8%2022.6-50.5%2050.5-50.5s50.5%2022.6%2050.5%2050.5c0%2027.8-22.7%2050.5-50.5%2050.5z'%20fill='%23231815'%20p-id='1736'%3e%3c/path%3e%3c/svg%3e", Fn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1018
+ default: Rn
1019
+ }, Symbol.toStringTag, { value: "Module" })), zn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1757902422799'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='1735'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='200'%20height='200'%3e%3cpath%20d='M843.2%20726.4c-20.2%200-39.2%205.2-55.8%2014.3L283.8%20237.2c9-16.5%2014.1-35.4%2014.1-55.5%200-64.2-52.3-116.5-116.5-116.5S65%20117.4%2065%20181.6s52.3%20116.5%20116.5%20116.5c20.2%200%2039.2-5.2%2055.8-14.2l503.5%20503.5c-9%2016.5-14.1%2035.4-14.1%2055.5%200%2064.2%2052.3%20116.5%20116.5%20116.5s116.5-52.3%20116.5-116.5-52.3-116.5-116.5-116.5zM181.4%20232.1c-27.8%200-50.5-22.6-50.5-50.5s22.6-50.5%2050.5-50.5%2050.5%2022.6%2050.5%2050.5-22.6%2050.5-50.5%2050.5z%20m661.8%20661.3c-27.8%200-50.5-22.6-50.5-50.5%200-27.8%2022.6-50.5%2050.5-50.5s50.5%2022.6%2050.5%2050.5c0%2027.8-22.7%2050.5-50.5%2050.5z'%20fill='%23231815'%20p-id='1736'%3e%3c/path%3e%3c/svg%3e", Fn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1020
1020
  __proto__: null,
1021
- default: On
1022
- }, Symbol.toStringTag, { value: "Module" })), Kn = "data:image/svg+xml,%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M114.176%2046.528h618.496c37.312%200.064%2067.584%2030.336%2067.648%2067.648v618.56c0%2037.248-30.336%2067.584-67.648%2067.584H114.176A67.776%2067.776%200%200%201%2046.528%20732.8V114.176c0-37.312%2030.336-67.648%2067.648-67.648z%20m2.176%20686.208l616.32-2.24-2.176-616.32-614.144%202.176v616.32zM907.648%20291.2l2.176%20616.32H291.264a34.88%2034.88%200%201%200%200%2069.888h618.56c37.312%200%2067.648-30.336%2067.648-67.648V291.264a34.88%2034.88%200%201%200-69.824%200z'%20%3e%3c/path%3e%3c/svg%3e", zn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1021
+ default: zn
1022
+ }, Symbol.toStringTag, { value: "Module" })), Kn = "data:image/svg+xml,%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M114.176%2046.528h618.496c37.312%200.064%2067.584%2030.336%2067.648%2067.648v618.56c0%2037.248-30.336%2067.584-67.648%2067.584H114.176A67.776%2067.776%200%200%201%2046.528%20732.8V114.176c0-37.312%2030.336-67.648%2067.648-67.648z%20m2.176%20686.208l616.32-2.24-2.176-616.32-614.144%202.176v616.32zM907.648%20291.2l2.176%20616.32H291.264a34.88%2034.88%200%201%200%200%2069.888h618.56c37.312%200%2067.648-30.336%2067.648-67.648V291.264a34.88%2034.88%200%201%200-69.824%200z'%20%3e%3c/path%3e%3c/svg%3e", Tn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1023
1023
  __proto__: null,
1024
1024
  default: Kn
1025
- }, Symbol.toStringTag, { value: "Module" })), Tn = "data:image/svg+xml,%3csvg%20viewBox='0%200%201029%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M788.17984%2016l-55.424%2060.672%20116.48%20106.56H418.13184a410.816%20410.816%200%201%200%200%20821.632h547.712v-82.176H418.13184a328.64%20328.64%200%200%201%200-657.28l441.792-0.128-124.8%2098.368%2050.752%2064.512%20243.328-191.488L788.17984%2016z'%3e%3c/path%3e%3c/svg%3e", jn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1026
- __proto__: null,
1027
- default: Tn
1028
- }, Symbol.toStringTag, { value: "Module" })), Vn = "data:image/svg+xml,%3csvg%20viewBox='0%200%201048%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M310.04722%20451.334244A49.95122%2049.95122%200%200%201%20239.416195%20521.990244L27.473171%20310.04722a49.95122%2049.95122%200%200%201%200-70.631025L239.416195%2027.473171a49.95122%2049.95122%200%200%201%2070.631025%2070.631024l-126.651318%20126.626342L649.365854%20224.780488c220.709463%200%20399.609756%20178.900293%20399.609756%20399.609756s-178.900293%20399.609756-399.609756%20399.609756H124.878049a49.95122%2049.95122%200%201%201%200-99.902439h524.487805c165.513366%200%20299.707317-134.193951%20299.707317-299.707317s-134.193951-299.707317-299.707317-299.707317H183.395902l126.651318%20126.651317z'%3e%3c/path%3e%3c/svg%3e", Gn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1025
+ }, Symbol.toStringTag, { value: "Module" })), Vn = "data:image/svg+xml,%3csvg%20viewBox='0%200%201029%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M788.17984%2016l-55.424%2060.672%20116.48%20106.56H418.13184a410.816%20410.816%200%201%200%200%20821.632h547.712v-82.176H418.13184a328.64%20328.64%200%200%201%200-657.28l441.792-0.128-124.8%2098.368%2050.752%2064.512%20243.328-191.488L788.17984%2016z'%3e%3c/path%3e%3c/svg%3e", jn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1029
1026
  __proto__: null,
1030
1027
  default: Vn
1031
- }, Symbol.toStringTag, { value: "Module" })), Qn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='11576'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M102.4%20302.08c5.12%205.12%2015.36%2010.24%2025.6%2010.24s15.36-5.12%2025.6-10.24l174.08-174.08c5.12-5.12%2010.24-15.36%2010.24-25.6s-5.12-15.36-10.24-25.6c-20.48-5.12-40.96-5.12-51.2%2010.24l-148.48%20153.6-71.68-76.8C51.2%20158.72%2040.96%20158.72%2035.84%20158.72c-10.24%200-15.36%205.12-25.6%2010.24-5.12%205.12-10.24%2010.24-10.24%2020.48s5.12%2015.36%2010.24%2025.6L102.4%20302.08zM276.48%20409.6l-148.48%20153.6-71.68-71.68C51.2%20486.4%2040.96%20481.28%2035.84%20481.28c-10.24%200-15.36%205.12-25.6%2010.24-5.12%2010.24-10.24%2015.36-10.24%2025.6s5.12%2015.36%2010.24%2025.6L102.4%20629.76c5.12%205.12%2015.36%2010.24%2025.6%2010.24s15.36-5.12%2025.6-10.24L322.56%20460.8c5.12-5.12%2010.24-15.36%2010.24-25.6s-5.12-15.36-10.24-25.6c-10.24-10.24-30.72-10.24-46.08%200z%20m0%20327.68l-148.48%20153.6L56.32%20819.2c-5.12-5.12-15.36-10.24-25.6-10.24s-15.36%205.12-25.6%2010.24c0%205.12-5.12%2015.36-5.12%2025.6s5.12%2015.36%2010.24%2025.6L102.4%20957.44c5.12%205.12%2015.36%2010.24%2025.6%2010.24h5.12c10.24%200%2015.36-5.12%2025.6-10.24l174.08-174.08c5.12-5.12%2010.24-15.36%2010.24-25.6s-5.12-15.36-10.24-25.6c-25.6-5.12-40.96-5.12-56.32%205.12zM1024%20153.6c0%2030.72-25.6%2056.32-56.32%2056.32h-460.8c-30.72%200-61.44-25.6-61.44-56.32%200-30.72%2025.6-56.32%2056.32-56.32h455.68c35.84-5.12%2066.56%2020.48%2066.56%2056.32z%20m0%20358.4c0%2030.72-25.6%2056.32-56.32%2056.32h-460.8c-30.72%200-56.32-25.6-56.32-56.32s25.6-56.32%2056.32-56.32h455.68c35.84%200%2061.44%2025.6%2061.44%2056.32z%20m-5.12%20358.4c0%2030.72-25.6%2056.32-56.32%2056.32h-460.8c-30.72%200-56.32-25.6-56.32-56.32%200-30.72%2025.6-56.32%2056.32-56.32h455.68c35.84%200%2061.44%2025.6%2061.44%2056.32z%20m0%200'%20%3e%3c/path%3e%3c/svg%3e", Hn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1028
+ }, Symbol.toStringTag, { value: "Module" })), Gn = "data:image/svg+xml,%3csvg%20viewBox='0%200%201048%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M310.04722%20451.334244A49.95122%2049.95122%200%200%201%20239.416195%20521.990244L27.473171%20310.04722a49.95122%2049.95122%200%200%201%200-70.631025L239.416195%2027.473171a49.95122%2049.95122%200%200%201%2070.631025%2070.631024l-126.651318%20126.626342L649.365854%20224.780488c220.709463%200%20399.609756%20178.900293%20399.609756%20399.609756s-178.900293%20399.609756-399.609756%20399.609756H124.878049a49.95122%2049.95122%200%201%201%200-99.902439h524.487805c165.513366%200%20299.707317-134.193951%20299.707317-299.707317s-134.193951-299.707317-299.707317-299.707317H183.395902l126.651318%20126.651317z'%3e%3c/path%3e%3c/svg%3e", Qn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1029
+ __proto__: null,
1030
+ default: Gn
1031
+ }, Symbol.toStringTag, { value: "Module" })), Hn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='11576'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M102.4%20302.08c5.12%205.12%2015.36%2010.24%2025.6%2010.24s15.36-5.12%2025.6-10.24l174.08-174.08c5.12-5.12%2010.24-15.36%2010.24-25.6s-5.12-15.36-10.24-25.6c-20.48-5.12-40.96-5.12-51.2%2010.24l-148.48%20153.6-71.68-76.8C51.2%20158.72%2040.96%20158.72%2035.84%20158.72c-10.24%200-15.36%205.12-25.6%2010.24-5.12%205.12-10.24%2010.24-10.24%2020.48s5.12%2015.36%2010.24%2025.6L102.4%20302.08zM276.48%20409.6l-148.48%20153.6-71.68-71.68C51.2%20486.4%2040.96%20481.28%2035.84%20481.28c-10.24%200-15.36%205.12-25.6%2010.24-5.12%2010.24-10.24%2015.36-10.24%2025.6s5.12%2015.36%2010.24%2025.6L102.4%20629.76c5.12%205.12%2015.36%2010.24%2025.6%2010.24s15.36-5.12%2025.6-10.24L322.56%20460.8c5.12-5.12%2010.24-15.36%2010.24-25.6s-5.12-15.36-10.24-25.6c-10.24-10.24-30.72-10.24-46.08%200z%20m0%20327.68l-148.48%20153.6L56.32%20819.2c-5.12-5.12-15.36-10.24-25.6-10.24s-15.36%205.12-25.6%2010.24c0%205.12-5.12%2015.36-5.12%2025.6s5.12%2015.36%2010.24%2025.6L102.4%20957.44c5.12%205.12%2015.36%2010.24%2025.6%2010.24h5.12c10.24%200%2015.36-5.12%2025.6-10.24l174.08-174.08c5.12-5.12%2010.24-15.36%2010.24-25.6s-5.12-15.36-10.24-25.6c-25.6-5.12-40.96-5.12-56.32%205.12zM1024%20153.6c0%2030.72-25.6%2056.32-56.32%2056.32h-460.8c-30.72%200-61.44-25.6-61.44-56.32%200-30.72%2025.6-56.32%2056.32-56.32h455.68c35.84-5.12%2066.56%2020.48%2066.56%2056.32z%20m0%20358.4c0%2030.72-25.6%2056.32-56.32%2056.32h-460.8c-30.72%200-56.32-25.6-56.32-56.32s25.6-56.32%2056.32-56.32h455.68c35.84%200%2061.44%2025.6%2061.44%2056.32z%20m-5.12%20358.4c0%2030.72-25.6%2056.32-56.32%2056.32h-460.8c-30.72%200-56.32-25.6-56.32-56.32%200-30.72%2025.6-56.32%2056.32-56.32h455.68c35.84%200%2061.44%2025.6%2061.44%2056.32z%20m0%200'%20%3e%3c/path%3e%3c/svg%3e", Wn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1032
1032
  __proto__: null,
1033
- default: Qn
1034
- }, Symbol.toStringTag, { value: "Module" })), Wn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1757902488735'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='3957'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='200'%20height='200'%3e%3cpath%20d='M520.416%20179.392c-12.384%200-22.4%204.672-22.4%2010.432l-0.032%20139.136c0%205.76%2010.016%2010.432%2022.368%2010.432%2012.352%200%2022.368-4.672%2022.368-10.432l0.064-139.136c0-5.76-10.016-10.432-22.4-10.432M520.32%20623.04c-12.352%200-22.368%204.64-22.368%2010.4l-0.032%20139.168c0%205.76%2010.016%2010.432%2022.368%2010.432%2012.352%200%2022.368-4.672%2022.368-10.432l0.064-139.168c0-5.76-10.016-10.4-22.4-10.4M800.256%20458.72l-139.168-0.064c-5.76%200-10.432%2010.016-10.432%2022.4%200%2012.352%204.672%2022.368%2010.432%2022.368l139.168%200.032c5.76%200%2010.4-10.016%2010.4-22.368%200-12.352-4.64-22.368-10.4-22.4zM352.256%20458.72l-139.168-0.064c-5.76%200-10.432%2010.016-10.432%2022.4%200%2012.352%204.672%2022.368%2010.432%2022.368l139.168%200.032c5.76%200%2010.4-10.016%2010.4-22.368%200-12.352-4.64-22.368-10.4-22.4M801.568%20748.672l-72.544-72.544%2073.792-23.2a4.416%204.416%200%200%200%200.096-8.384l-183.136-62.4a4.416%204.416%200%200%200-5.6%205.568l62.464%20183.168a4.416%204.416%200%200%200%208.352-0.064l23.36-73.6%2072.32%2072.32a14.752%2014.752%200%200%200%2020.896-20.864M510.688%20382.112c49.952%200%2092.8%2040.832%2092.8%2092.8%200%2051.968-42.848%2092.8-92.8%2092.8-49.984%200-92.8-40.832-92.8-92.8%200-51.968%2042.816-92.8%2092.8-92.8z'%20p-id='3958'%3e%3c/path%3e%3c/svg%3e", Jn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1033
+ default: Hn
1034
+ }, Symbol.toStringTag, { value: "Module" })), Jn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1757902488735'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='3957'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='200'%20height='200'%3e%3cpath%20d='M520.416%20179.392c-12.384%200-22.4%204.672-22.4%2010.432l-0.032%20139.136c0%205.76%2010.016%2010.432%2022.368%2010.432%2012.352%200%2022.368-4.672%2022.368-10.432l0.064-139.136c0-5.76-10.016-10.432-22.4-10.432M520.32%20623.04c-12.352%200-22.368%204.64-22.368%2010.4l-0.032%20139.168c0%205.76%2010.016%2010.432%2022.368%2010.432%2012.352%200%2022.368-4.672%2022.368-10.432l0.064-139.168c0-5.76-10.016-10.4-22.4-10.4M800.256%20458.72l-139.168-0.064c-5.76%200-10.432%2010.016-10.432%2022.4%200%2012.352%204.672%2022.368%2010.432%2022.368l139.168%200.032c5.76%200%2010.4-10.016%2010.4-22.368%200-12.352-4.64-22.368-10.4-22.4zM352.256%20458.72l-139.168-0.064c-5.76%200-10.432%2010.016-10.432%2022.4%200%2012.352%204.672%2022.368%2010.432%2022.368l139.168%200.032c5.76%200%2010.4-10.016%2010.4-22.368%200-12.352-4.64-22.368-10.4-22.4M801.568%20748.672l-72.544-72.544%2073.792-23.2a4.416%204.416%200%200%200%200.096-8.384l-183.136-62.4a4.416%204.416%200%200%200-5.6%205.568l62.464%20183.168a4.416%204.416%200%200%200%208.352-0.064l23.36-73.6%2072.32%2072.32a14.752%2014.752%200%200%200%2020.896-20.864M510.688%20382.112c49.952%200%2092.8%2040.832%2092.8%2092.8%200%2051.968-42.848%2092.8-92.8%2092.8-49.984%200-92.8-40.832-92.8-92.8%200-51.968%2042.816-92.8%2092.8-92.8z'%20p-id='3958'%3e%3c/path%3e%3c/svg%3e", Un = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1035
1035
  __proto__: null,
1036
- default: Wn
1037
- }, Symbol.toStringTag, { value: "Module" })), Un = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='10587'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M64.21%20703.88h888.34M64.21%20667.88h888.34v72H64.21z'%3e%3c/path%3e%3cpath%20d='M509.58%20102.72v566.13M473.58%20102.72h72v566.14h-72z'%3e%3c/path%3e%3c/svg%3e", qn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1036
+ default: Jn
1037
+ }, Symbol.toStringTag, { value: "Module" })), qn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='10587'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20fill='%23555'%20width='16'%20height='16'%3e%3cpath%20d='M64.21%20703.88h888.34M64.21%20667.88h888.34v72H64.21z'%3e%3c/path%3e%3cpath%20d='M509.58%20102.72v566.13M473.58%20102.72h72v566.14h-72z'%3e%3c/path%3e%3c/svg%3e", Zn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1038
1038
  __proto__: null,
1039
- default: Un
1040
- }, Symbol.toStringTag, { value: "Module" })), Zn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1759051895215'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='1800'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='200'%20height='200'%3e%3cpath%20d='M272.5888%20886.784v70.8608H203.2128V886.784h69.376z%20m416.256-256.6144l270.6944%20152.5248-270.6944%20148.1216v-114.8928H64.4608v-70.8608h624.384v-114.8928z%20m-416.256-26.88v70.912H203.2128v-70.912h69.376z%20m0-141.7216V532.48H203.2128V461.568h69.376z%20m-34.7136-398.336L385.024%20319.7952H272.5888V390.656H203.2128V319.8464H90.7776l147.0976-256.6656z'%20fill='%23444444'%20p-id='1801'%3e%3c/path%3e%3cpath%20d='M566.272%2073.3184l173.2608%20264.192V512h71.8848V337.5104l173.2608-264.192H898.048l-122.2656%20197.2224-122.88-197.2224H566.272z'%20fill='%230077FF'%20p-id='1802'%3e%3c/path%3e%3c/svg%3e", Yn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1039
+ default: qn
1040
+ }, Symbol.toStringTag, { value: "Module" })), Yn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1759051895215'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='1800'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='200'%20height='200'%3e%3cpath%20d='M272.5888%20886.784v70.8608H203.2128V886.784h69.376z%20m416.256-256.6144l270.6944%20152.5248-270.6944%20148.1216v-114.8928H64.4608v-70.8608h624.384v-114.8928z%20m-416.256-26.88v70.912H203.2128v-70.912h69.376z%20m0-141.7216V532.48H203.2128V461.568h69.376z%20m-34.7136-398.336L385.024%20319.7952H272.5888V390.656H203.2128V319.8464H90.7776l147.0976-256.6656z'%20fill='%23444444'%20p-id='1801'%3e%3c/path%3e%3cpath%20d='M566.272%2073.3184l173.2608%20264.192V512h71.8848V337.5104l173.2608-264.192H898.048l-122.2656%20197.2224-122.88-197.2224H566.272z'%20fill='%230077FF'%20p-id='1802'%3e%3c/path%3e%3c/svg%3e", Xn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1041
1041
  __proto__: null,
1042
- default: Zn
1043
- }, Symbol.toStringTag, { value: "Module" })), Xn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1757902547951'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='5129'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='200'%20height='200'%3e%3cpath%20d='M59.355%2091.776v867.881h867.881V91.776H59.356zM897.31%20929.73H89.282V121.703h808.027V929.73z'%20fill=''%20p-id='5130'%3e%3c/path%3e%3cpath%20d='M833.964%20185.048H152.627v681.337h681.337V185.048z%20m-355.632%20651.41H182.554V532.2h295.778v304.257z%20m0-334.184H182.554V214.975h295.778v287.299z%20m325.705%20334.184H508.259V532.2h295.778v304.257z%20m0-334.184H508.259V214.975h295.778v287.299z'%20fill=''%20p-id='5131'%3e%3c/path%3e%3c/svg%3e", $n = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1042
+ default: Yn
1043
+ }, Symbol.toStringTag, { value: "Module" })), $n = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1757902547951'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='5129'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='200'%20height='200'%3e%3cpath%20d='M59.355%2091.776v867.881h867.881V91.776H59.356zM897.31%20929.73H89.282V121.703h808.027V929.73z'%20fill=''%20p-id='5130'%3e%3c/path%3e%3cpath%20d='M833.964%20185.048H152.627v681.337h681.337V185.048z%20m-355.632%20651.41H182.554V532.2h295.778v304.257z%20m0-334.184H182.554V214.975h295.778v287.299z%20m325.705%20334.184H508.259V532.2h295.778v304.257z%20m0-334.184H508.259V214.975h295.778v287.299z'%20fill=''%20p-id='5131'%3e%3c/path%3e%3c/svg%3e", eo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1044
1044
  __proto__: null,
1045
- default: Xn
1046
- }, Symbol.toStringTag, { value: "Module" })), es = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAKdUlEQVR4AeydbZrUKBRGq2YjOjvpWYntStSVjK5EdzLOSsr7arBLOkkBAcLHmacwlQQInMsZUvdP/3Xhv+oEbrfbk5XYz1P1gfLAC4KwCCCwQwBBduBwCwIIwhqAwA4BBNmBwy0IFBQEuBDonwCC9B9DZlCQAIIUhEvX/RNAkP5jyAwKEkCQgnDpun8CfQrSP3dm0AkBBOkkUAzzHAIIcg53ntoJAQTpJFAM8xwCCHIOd57aCQEE8QLFKQTuCSDIPQ2+Q8AjgCAeEE4hcE8AQe5p8B0CHgEE8YBwCoF7AghyT6Psd3rvkACCdBg0hlyPAILUY82TOiSAIB0GjSHXI4Ag9VjzpA4JIEiHQXs9ZK6UIoAgpcjS7xAEEGSIMDKJUgQQpBRZ+h2CAIIMEUYmUYoAgpQiO0q/k88DQSZfAEx/nwCC7PPh7uQEEGTyBcD09wkgyD4f7k5OAEEmXwBnTr+HZyNID1FijKcRQBAP/e12e2vl2cqHUsUe+c5K7OddqfG4fmMHNEN9BPGifL1ev9ulN1Y+FizP1nfsR21Kjun/2AHNUB9BVqJsknyyy1qMdpji89nm/HmKmUZOEkE2gNmCkSTaTTZqDHP5m831/TCz+TWRbP8iyA5KWzh/2+2RJfluc/zH5shngwCCbIC5u6wFNKIkmhM7x12g174iyBqVu2v2f1gtpBFft97b3L7dTZWvKwQQZAWKf8kWkn7Aqvi3ej1HjsDIIUggKJNEu8gImS0yVoExV7XXgugqZZXAIoleuVbvd3CRjFVkkBAkEphJ0mtmi4xVZKxVHUFEIb70ltnSrkfGKj7OFwRJgGa7iBacfpPomNBD9Sb8KE9EjiCJ4EwSZbVUEnuo1gw5DqCuKsiBcTbZ1CTRLtJyZouM1cGVgyAHAS6StPiqRcbqYGzVHEFE4WAxSVrLbJGxOhhT1xxBHInjx1YyW9rNyFgdj+fPHhDkJ4bj/9guooWp3yQ6Hu8wvQd+lKeze9VyFEFeTeyMCyaJsloqZzxez0QOUchYECQjTHVlkmgXOSOzRcZKAchcECQzUHW3SFLzVYuMlcAXKAhSAKq6NElqZbbIWAl4oYIghcAu3ZbObGmXImO1wC5xQJCHVNMr2C6iBazfJDqmd7Tdkh/l22yy3EGQLBi3OzFJlNVS2a6Udgc50rhFtUKQKFxplU0S7SI5M1tkrNJCEd0KQaKRpTVYJMnxqkXGKi0ESa0QJAlbWiOT5Ghmi4xVGvrkVgiSjC654UtmK64L7T5krOKYHa6NIIcRxnVgu4gWun6T6BjTmB/lMbQy1UWQTCBjujFJlNVSCW2GHKGkMtdDkMxAQ7szSbSLhGS2yFiFQi1QD0EKQA3tcpFk71WLjFUozEL1EKQQ2NBuTZKtzNahjFXo86m3TwBB9vnUuutntrSrkLGqRX/nOQiyA6fWLdtFJIR+k+iox/KjXBQaKAjSQBA0BJNEWS0V5BCQRgqCNBIIDcMk+WRFkuiU0gABBGkgCJ0NYarhIshU4WaysQQQJJYY9acigCBThZvJxhJAkFhi1J+KAIJMFe7WJ9ve+BCkvZgwooYIIEhDwWAo7RFAkPZiwogaIoAgDQWDobRHAEHaiwkjKkEgsU8ESQRHszkIIMgccWaWiQQQJBEczeYggCBzxJlZJhJAkERwNJuDQIggc5BglhBYIZBNkNvt9kSBQStrYGWtJ13KJsjy9K92pFwuMDiXgS3DPJ/cguQZFb1AoBECCNJIIBhGmwROFqRNKIwKAo4AgjgSHCGwQgBBVqBwCQKOAII4EhwhsEIAQVagcAkCjsC4grgZcoTAAQIIcgAeTccngCDjx5gZHiCAIAfg0XR8ArkF0V9KolwuMDiXQTZzswlyvV71ByenKMy1/VjnMiSbILkGRD8QaIkAgrQUDcbSHAEEaS4kDKglAgjSUjQYS3MEEKStkDCaxgggSGMBYThtEUCQtuLBaBojgCCNBYThtEUAQdqKB6NpjACCNBaQcsOh5xQCCJJCjTbTEECQaULNRFMIIEgKNdpMQwBBpgk1E00hgCAp1GjzJ4GBzxBk4OAyteMEEOQ4Q3oYmACCNBTc2+32bOVDQ0OafigI0sgSMDGebCj/Wvlo39/akU8DBBCkgSAsQuiP7rjR/Ldcc+fTHs+eOIKcHIFFBO0c/ki+Lvf865xXJIAgFWFvPEpy6PXKv63XrA9I4mOpe44gdXn/8TRb/FtyuHrP9uWdFT4nEUCQk8CbHFr8Ko9GoB/tZLYeUSp0H0EKgd3r1uTQK5V2j71q9/ckiV657q/x/RiBoNYIEoQpXyWTQwv9PmMV2jmZrVBSGeshSEaYj7pa5IjZOfwuyWz5RAqfI0hhwF73kkOvV97l4FPtPmS2gnEdr4ggxxkG9WC7x1E53HP0w57MlqNR+IgghQGre5NDi1pFpzmKfrST2cpB8kEfaYI86JTbLwRMDr1Safd4uZjnmyTRK1ee3uhllQCCrGLJc9Hk0AJOyViFDoDMViipxHoIkgjuUbNFjhI7h/9oMls+kYznCJIRpteV5NDrlXc5+6l2KTJb2bH+6hBBfnHI+q/tHrXkcONWAoDMlqOR8dicIBnndkpXJocWq0rt5+tHO5mtzNQRJCNQk0OvVNo9MvYa1ZUk0StXVCMqbxNAkG02UXdMDi3Mkhmr0PGQ2QolFVAPQQIgPaqyyHHmzuEPkcyWTyTxHEESwXnNJIder7zLp51qNyOzlQH/TIJkwPW6C9s9WpPDDVKJAjJbjkbiEUESwamZyaFFqKLTFot+tJPZOhAZBEmEZ3LolUq7R2IP1ZpJEr1yVXvgSA9CkIRomhxacC1krEJHT2YrlJRXD0E8II9OFzl62Dn8qZDZ8okEnCNIACSviuTQ69Xd5S6+atcjsxUZKgSJAGa7R69yuFkqoUBmy9EIOCJIACRVMTm0uFR02nPRj3YyW4ERRJAAUCaHXqm0ewTU7qKKJNErVxeDPXOQCPKAvsmhhdRTxurBjH7fJrP1G8X2FwTZZnNZ5Dh359gZX4ZbZLYeQESQfUCSQ69X+7X6vavdkczWTvwQZAOO7R6jy+FmrsQDmS1HwzsiiAdEpyaHFo2KTmco+tFOZmsl0giyAsUuvbHysWD5bH3HftSm5JhixzNFfQRZCfP1ev10LVjskV+sxH6+5B6T31/sgGaojyAzRJk5JhNAkGR0NJyBAILMEGXmmEwAQZLR0XAGAggyQ5Trz3GYJyLIMKFkIiUIIEgJqvQ5DAEEGSaUTKQEAQQpQZU+hyGAIMOEcpaJ1J0ngtTlzdM6I4AgnQWM4dYlgCB1efO0zgggSGcBY7h1CSBIXd48rWUCK2NDkBUoXIKAI4AgjgRHCKwQQJAVKFyCgCOAII4ERwisEECQFShcgoAjkEsQ1x9HCAxFAEGGCieTyU0AQXITpb+hCCDIUOFkMrkJIEhuovQ3FIEOBBmKN5PpjACCdBYwhluXAILU5c3TOiOAIJ0FjOHWJYAgdXnztM4IzC1IZ8FiuPUJIEh95jyxIwII0lGwGGp9AghSnzlP7IgAgnQULIZanwCCFGJOt2MQ+AEAAP//U3PGlQAAAAZJREFUAwA3ILMm/jaVEAAAAABJRU5ErkJggg==", ts = new m.TextureLoader(), ns = ts.load(es);
1047
- class ss extends Se {
1045
+ default: $n
1046
+ }, Symbol.toStringTag, { value: "Module" })), to = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAKdUlEQVR4AeydbZrUKBRGq2YjOjvpWYntStSVjK5EdzLOSsr7arBLOkkBAcLHmacwlQQInMsZUvdP/3Xhv+oEbrfbk5XYz1P1gfLAC4KwCCCwQwBBduBwCwIIwhqAwA4BBNmBwy0IFBQEuBDonwCC9B9DZlCQAIIUhEvX/RNAkP5jyAwKEkCQgnDpun8CfQrSP3dm0AkBBOkkUAzzHAIIcg53ntoJAQTpJFAM8xwCCHIOd57aCQEE8QLFKQTuCSDIPQ2+Q8AjgCAeEE4hcE8AQe5p8B0CHgEE8YBwCoF7AghyT6Psd3rvkACCdBg0hlyPAILUY82TOiSAIB0GjSHXI4Ag9VjzpA4JIEiHQXs9ZK6UIoAgpcjS7xAEEGSIMDKJUgQQpBRZ+h2CAIIMEUYmUYoAgpQiO0q/k88DQSZfAEx/nwCC7PPh7uQEEGTyBcD09wkgyD4f7k5OAEEmXwBnTr+HZyNID1FijKcRQBAP/e12e2vl2cqHUsUe+c5K7OddqfG4fmMHNEN9BPGifL1ev9ulN1Y+FizP1nfsR21Kjun/2AHNUB9BVqJsknyyy1qMdpji89nm/HmKmUZOEkE2gNmCkSTaTTZqDHP5m831/TCz+TWRbP8iyA5KWzh/2+2RJfluc/zH5shngwCCbIC5u6wFNKIkmhM7x12g174iyBqVu2v2f1gtpBFft97b3L7dTZWvKwQQZAWKf8kWkn7Aqvi3ej1HjsDIIUggKJNEu8gImS0yVoExV7XXgugqZZXAIoleuVbvd3CRjFVkkBAkEphJ0mtmi4xVZKxVHUFEIb70ltnSrkfGKj7OFwRJgGa7iBacfpPomNBD9Sb8KE9EjiCJ4EwSZbVUEnuo1gw5DqCuKsiBcTbZ1CTRLtJyZouM1cGVgyAHAS6StPiqRcbqYGzVHEFE4WAxSVrLbJGxOhhT1xxBHInjx1YyW9rNyFgdj+fPHhDkJ4bj/9guooWp3yQ6Hu8wvQd+lKeze9VyFEFeTeyMCyaJsloqZzxez0QOUchYECQjTHVlkmgXOSOzRcZKAchcECQzUHW3SFLzVYuMlcAXKAhSAKq6NElqZbbIWAl4oYIghcAu3ZbObGmXImO1wC5xQJCHVNMr2C6iBazfJDqmd7Tdkh/l22yy3EGQLBi3OzFJlNVS2a6Udgc50rhFtUKQKFxplU0S7SI5M1tkrNJCEd0KQaKRpTVYJMnxqkXGKi0ESa0QJAlbWiOT5Ghmi4xVGvrkVgiSjC654UtmK64L7T5krOKYHa6NIIcRxnVgu4gWun6T6BjTmB/lMbQy1UWQTCBjujFJlNVSCW2GHKGkMtdDkMxAQ7szSbSLhGS2yFiFQi1QD0EKQA3tcpFk71WLjFUozEL1EKQQ2NBuTZKtzNahjFXo86m3TwBB9vnUuutntrSrkLGqRX/nOQiyA6fWLdtFJIR+k+iox/KjXBQaKAjSQBA0BJNEWS0V5BCQRgqCNBIIDcMk+WRFkuiU0gABBGkgCJ0NYarhIshU4WaysQQQJJYY9acigCBThZvJxhJAkFhi1J+KAIJMFe7WJ9ve+BCkvZgwooYIIEhDwWAo7RFAkPZiwogaIoAgDQWDobRHAEHaiwkjKkEgsU8ESQRHszkIIMgccWaWiQQQJBEczeYggCBzxJlZJhJAkERwNJuDQIggc5BglhBYIZBNkNvt9kSBQStrYGWtJ13KJsjy9K92pFwuMDiXgS3DPJ/cguQZFb1AoBECCNJIIBhGmwROFqRNKIwKAo4AgjgSHCGwQgBBVqBwCQKOAII4EhwhsEIAQVagcAkCjsC4grgZcoTAAQIIcgAeTccngCDjx5gZHiCAIAfg0XR8ArkF0V9KolwuMDiXQTZzswlyvV71ByenKMy1/VjnMiSbILkGRD8QaIkAgrQUDcbSHAEEaS4kDKglAgjSUjQYS3MEEKStkDCaxgggSGMBYThtEUCQtuLBaBojgCCNBYThtEUAQdqKB6NpjACCNBaQcsOh5xQCCJJCjTbTEECQaULNRFMIIEgKNdpMQwBBpgk1E00hgCAp1GjzJ4GBzxBk4OAyteMEEOQ4Q3oYmACCNBTc2+32bOVDQ0OafigI0sgSMDGebCj/Wvlo39/akU8DBBCkgSAsQuiP7rjR/Ldcc+fTHs+eOIKcHIFFBO0c/ki+Lvf865xXJIAgFWFvPEpy6PXKv63XrA9I4mOpe44gdXn/8TRb/FtyuHrP9uWdFT4nEUCQk8CbHFr8Ko9GoB/tZLYeUSp0H0EKgd3r1uTQK5V2j71q9/ckiV657q/x/RiBoNYIEoQpXyWTQwv9PmMV2jmZrVBSGeshSEaYj7pa5IjZOfwuyWz5RAqfI0hhwF73kkOvV97l4FPtPmS2gnEdr4ggxxkG9WC7x1E53HP0w57MlqNR+IgghQGre5NDi1pFpzmKfrST2cpB8kEfaYI86JTbLwRMDr1Safd4uZjnmyTRK1ee3uhllQCCrGLJc9Hk0AJOyViFDoDMViipxHoIkgjuUbNFjhI7h/9oMls+kYznCJIRpteV5NDrlXc5+6l2KTJb2bH+6hBBfnHI+q/tHrXkcONWAoDMlqOR8dicIBnndkpXJocWq0rt5+tHO5mtzNQRJCNQk0OvVNo9MvYa1ZUk0StXVCMqbxNAkG02UXdMDi3Mkhmr0PGQ2QolFVAPQQIgPaqyyHHmzuEPkcyWTyTxHEESwXnNJIder7zLp51qNyOzlQH/TIJkwPW6C9s9WpPDDVKJAjJbjkbiEUESwamZyaFFqKLTFot+tJPZOhAZBEmEZ3LolUq7R2IP1ZpJEr1yVXvgSA9CkIRomhxacC1krEJHT2YrlJRXD0E8II9OFzl62Dn8qZDZ8okEnCNIACSviuTQ69Xd5S6+atcjsxUZKgSJAGa7R69yuFkqoUBmy9EIOCJIACRVMTm0uFR02nPRj3YyW4ERRJAAUCaHXqm0ewTU7qKKJNErVxeDPXOQCPKAvsmhhdRTxurBjH7fJrP1G8X2FwTZZnNZ5Dh359gZX4ZbZLYeQESQfUCSQ69X+7X6vavdkczWTvwQZAOO7R6jy+FmrsQDmS1HwzsiiAdEpyaHFo2KTmco+tFOZmsl0giyAsUuvbHysWD5bH3HftSm5JhixzNFfQRZCfP1ev10LVjskV+sxH6+5B6T31/sgGaojyAzRJk5JhNAkGR0NJyBAILMEGXmmEwAQZLR0XAGAggyQ5Trz3GYJyLIMKFkIiUIIEgJqvQ5DAEEGSaUTKQEAQQpQZU+hyGAIMOEcpaJ1J0ngtTlzdM6I4AgnQWM4dYlgCB1efO0zgggSGcBY7h1CSBIXd48rWUCK2NDkBUoXIKAI4AgjgRHCKwQQJAVKFyCgCOAII4ERwisEECQFShcgoAjkEsQ1x9HCAxFAEGGCieTyU0AQXITpb+hCCDIUOFkMrkJIEhuovQ3FIEOBBmKN5PpjACCdBYwhluXAILU5c3TOiOAIJ0FjOHWJYAgdXnztM4IzC1IZ8FiuPUJIEh95jyxIwII0lGwGGp9AghSnzlP7IgAgnQULIZanwCCFGJOt2MQ+AEAAP//U3PGlQAAAAZJREFUAwA3ILMm/jaVEAAAAABJRU5ErkJggg==", no = new p.TextureLoader(), oo = no.load(to);
1047
+ class so extends De {
1048
1048
  static name = "RenderManager";
1049
- container = new m.Group();
1049
+ container = new p.Group();
1050
1050
  lines = [];
1051
- pointVirtualGrid = new Ke();
1052
- quadtree = new ze(new Ye());
1053
- verticalReferenceLineFlag = new m.Mesh(new m.PlaneGeometry(0.3, 0.3), new m.MeshBasicMaterial({ map: ns, color: 58111, transparent: !0 }));
1051
+ pointVirtualGrid = new Oe();
1052
+ quadtree = new ze(new Ze());
1053
+ verticalReferenceLineFlag = new p.Mesh(new p.PlaneGeometry(0.3, 0.3), new p.MeshBasicMaterial({ map: oo, color: 58111, transparent: !0 }));
1054
1054
  onAddFromParent() {
1055
1055
  const e = this.dxfLineModel;
1056
- this.editor.container.add(this.container), this.editor.container.add(e.dxfModelGroup), e.dxfLineModel.material = new m.LineBasicMaterial({
1056
+ this.editor.container.add(this.container), this.editor.container.add(e.dxfModelGroup), e.dxfLineModel.material = new p.LineBasicMaterial({
1057
1057
  transparent: !0,
1058
1058
  opacity: 0.5,
1059
1059
  color: 16777215
@@ -1070,7 +1070,7 @@ class ss extends Se {
1070
1070
  return;
1071
1071
  } else
1072
1072
  this.updatedMode = "dxf";
1073
- this.pointVirtualGrid = new Ke();
1073
+ this.pointVirtualGrid = new Oe();
1074
1074
  const e = this.dxf.box.clone().expansion(Math.max(this.dxf.box.width, this.dxf.box.height) * 2);
1075
1075
  (e.width === 0 || e.height === 0) && e.set(-200, -200, 200, 200), this.quadtree = new ze(e), this.lines.length = 0, this.dxf.lineSegments.forEach((t) => {
1076
1076
  t.userData.isDoor || this.addLine(t.clone());
@@ -1101,11 +1101,11 @@ class ss extends Se {
1101
1101
  for (let t = 0; t < e.length; t++) {
1102
1102
  const n = e[t];
1103
1103
  this.lines.push(n), this.pointVirtualGrid.insert(n.start, n), this.pointVirtualGrid.insert(n.end, n);
1104
- const s = {
1104
+ const o = {
1105
1105
  line: n,
1106
1106
  userData: void 0
1107
1107
  };
1108
- n.userData.quadtreeNode = s, this.quadtree.insert(s);
1108
+ n.userData.quadtreeNode = o, this.quadtree.insert(o);
1109
1109
  }
1110
1110
  }
1111
1111
  /** 移除线段
@@ -1124,8 +1124,8 @@ class ss extends Se {
1124
1124
  for (let t = 0; t < e.length; t++) {
1125
1125
  const n = e[t];
1126
1126
  n.userData.quadtreeNode && this.quadtree.remove(n.userData.quadtreeNode), this.pointVirtualGrid.remove(n.start), this.pointVirtualGrid.remove(n.end);
1127
- const s = this.lines.indexOf(n);
1128
- this.lines.splice(s, 1);
1127
+ const o = this.lines.indexOf(n);
1128
+ this.lines.splice(o, 1);
1129
1129
  }
1130
1130
  this.draw();
1131
1131
  }
@@ -1134,15 +1134,15 @@ class ss extends Se {
1134
1134
  */
1135
1135
  draw(e = !0) {
1136
1136
  this.container.clear();
1137
- const t = [], n = [], s = [];
1138
- this.lines.forEach((o) => {
1139
- if (o.points.forEach((a) => {
1140
- o.userData.isDoor ? n.push(a.x, a.y, 0) : t.push(a.x, a.y, 0);
1141
- }), o.userData.isWindow && o.userData.drawWindow && o.userData.drawWindow.forEach(({ width: a, p: c }) => {
1142
- const d = _.from(c), i = o.direction(), r = d.clone().add(i.clone().multiplyScalar(a * 0.5)), h = d.clone().add(i.clone().multiplyScalar(-a * 0.5));
1143
- s.push(r.x, r.y, 1e-3), s.push(h.x, h.y, 1e-3);
1144
- }), o.userData.isVerticalReferenceLine) {
1145
- const a = o.center;
1137
+ const t = [], n = [], o = [];
1138
+ this.lines.forEach((s) => {
1139
+ if (s.points.forEach((a) => {
1140
+ s.userData.isDoor ? n.push(a.x, a.y, 0) : t.push(a.x, a.y, 0);
1141
+ }), s.userData.isWindow && s.userData.drawWindow && s.userData.drawWindow.forEach(({ width: a, p: l }) => {
1142
+ const r = L.from(l), i = s.direction(), c = r.clone().add(i.clone().multiplyScalar(a * 0.5)), m = r.clone().add(i.clone().multiplyScalar(-a * 0.5));
1143
+ o.push(c.x, c.y, 1e-3), o.push(m.x, m.y, 1e-3);
1144
+ }), s.userData.isVerticalReferenceLine) {
1145
+ const a = s.center;
1146
1146
  this.verticalReferenceLineFlag.position.set(a.x, a.y, 0), this.container.add(this.verticalReferenceLineFlag);
1147
1147
  }
1148
1148
  }), t.length && this.renderer.createLineSegments({
@@ -1153,9 +1153,9 @@ class ss extends Se {
1153
1153
  position: n
1154
1154
  }, n.length / 3, {
1155
1155
  color: 16776960
1156
- }, this.container), s.length && this.renderer.createLineSegments({
1157
- position: s
1158
- }, s.length / 3, {
1156
+ }, this.container), o.length && this.renderer.createLineSegments({
1157
+ position: o
1158
+ }, o.length / 3, {
1159
1159
  color: 16711935
1160
1160
  }, this.container), e && this.synchronizeDxf();
1161
1161
  }
@@ -1164,25 +1164,32 @@ class ss extends Se {
1164
1164
  * @returns
1165
1165
  */
1166
1166
  adsorption(e = 0.04, t = this.pointVirtualGrid, n = this.quadtree) {
1167
- const s = this.parent?.findComponentByName("Editor"), o = _.from(s.pointerPosition), a = t.queryCircle(o, e).sort((d, i) => d.point.distance(o) - i.point.distance(o));
1168
- if (a.length) return {
1169
- point: new m.Vector3(a[0].point.x, a[0].point.y, 0),
1170
- find: !0,
1171
- mode: "point",
1172
- line: a[0].userData
1173
- };
1174
- let c = n.queryCircle(o, e);
1175
- if (c.length) {
1176
- let d = c.map((i) => i.line.projectPoint(o));
1177
- return d.sort((i, r) => i && r ? i.distance(o) - r.distance(o) : 0), c = c.filter((i, r) => !!d[r]), d = d.filter((i, r) => !!d[r]), {
1178
- point: new m.Vector3(d[0].x, d[0].y, 0),
1179
- find: !0,
1180
- mode: "line",
1181
- line: c[0].line
1182
- };
1167
+ const o = this.parent?.findComponentByName("Editor"), s = L.from(o.pointerPosition);
1168
+ let a = n.queryCircle(s, e);
1169
+ if (a.length) {
1170
+ let l = a.map((r) => r.line.projectPoint(s));
1171
+ if (a = a.filter((r, i) => !!l[i]), l = l.filter((r, i) => !!l[i]), l.sort((r, i) => r && i ? r.distance(s) - i.distance(s) : 0), l.length) {
1172
+ const r = a[0].line, i = l[0];
1173
+ return r.start.distance(s) < e * 1.5 ? {
1174
+ point: new p.Vector3(r.start.x, r.start.y, 0),
1175
+ find: !0,
1176
+ mode: "point",
1177
+ line: r
1178
+ } : r.end.distance(s) < e * 1.5 ? {
1179
+ point: new p.Vector3(r.end.x, r.end.y, 0),
1180
+ find: !0,
1181
+ mode: "point",
1182
+ line: r
1183
+ } : {
1184
+ point: new p.Vector3(i.x, i.y, 0),
1185
+ find: !0,
1186
+ mode: "line",
1187
+ line: r
1188
+ };
1189
+ }
1183
1190
  }
1184
1191
  return {
1185
- point: new m.Vector3(s.pointerPosition.x, s.pointerPosition.y, 0),
1192
+ point: new p.Vector3(o.pointerPosition.x, o.pointerPosition.y, 0),
1186
1193
  find: !1
1187
1194
  };
1188
1195
  }
@@ -1190,9 +1197,9 @@ class ss extends Se {
1190
1197
  * @param rectangle
1191
1198
  */
1192
1199
  createGeometry(e, t) {
1193
- const n = new m.BufferGeometry();
1194
- return Object.keys(e).forEach((s) => {
1195
- n.setAttribute("position", new m.BufferAttribute(new Float32Array(e[s]), e[s].length / t));
1200
+ const n = new p.BufferGeometry();
1201
+ return Object.keys(e).forEach((o) => {
1202
+ n.setAttribute("position", new p.BufferAttribute(new Float32Array(e[o]), e[o].length / t));
1196
1203
  }), n;
1197
1204
  }
1198
1205
  /**
@@ -1200,21 +1207,21 @@ class ss extends Se {
1200
1207
  */
1201
1208
  toJson() {
1202
1209
  return this.lines.map((e) => {
1203
- const t = e.userData, n = t.drawWindow, s = this.quadtree.queryLineSegment(e).filter((o) => o.line !== e && !o.userData?.isDoor).map((o) => ({ index: this.lines.indexOf(o.line) }));
1210
+ const t = e.userData, n = t.drawWindow, o = this.quadtree.queryLineSegment(e).filter((s) => s.line !== e && !s.userData?.isDoor).map((s) => ({ index: this.lines.indexOf(s.line) }));
1204
1211
  return {
1205
1212
  start: e.start.toJson(this.dxf.originalZAverage),
1206
1213
  end: e.end.toJson(this.dxf.originalZAverage),
1207
- insetionArr: s,
1214
+ insetionArr: o,
1208
1215
  isDoor: t.isDoor,
1209
1216
  doorDirectConnection: t.isDoor,
1210
1217
  length: e.length(),
1211
1218
  isWindow: t.isWindow,
1212
1219
  isVerticalReferenceLine: t.isVerticalReferenceLine,
1213
1220
  wallWidth: e.userData.wallWidth,
1214
- drawWindow: n && n.map((o) => ({
1215
- p: { x: o.p.x, y: o.p.y, z: o.p.z },
1216
- width: o.width,
1217
- full: o.full
1221
+ drawWindow: n && n.map((s) => ({
1222
+ p: { x: s.p.x, y: s.p.y, z: s.p.z },
1223
+ width: s.width,
1224
+ full: s.full
1218
1225
  }))
1219
1226
  };
1220
1227
  });
@@ -1255,55 +1262,55 @@ class ss extends Se {
1255
1262
  return this.parent?.findComponentByName("DxfLineModel");
1256
1263
  }
1257
1264
  }
1258
- class os extends O {
1265
+ class ao extends O {
1259
1266
  static name = "DrawDoorLine";
1260
- container = new m.Group();
1267
+ container = new p.Group();
1261
1268
  interruptKeys = ["escape"];
1262
1269
  shortcutKeys = ["control", "m"];
1263
1270
  commandName = "draw-door-line";
1264
1271
  onAddFromParent(e) {
1265
1272
  super.onAddFromParent(e);
1266
- const t = e.findComponentByName("Editor"), n = t.eventInput, s = t.commandManager;
1273
+ const t = e.findComponentByName("Editor"), n = t.eventInput, o = t.commandManager;
1267
1274
  this.editor.container.add(this.container);
1268
- const o = this.commandManager.addCommandFlow("draw-door-line").add(this.createInterrupt()).add(this.createCursor("no-drop")).add(this.selectPoint.bind(this)).add(this.end.bind(this)).addRollback(this.rollback.bind(this)).addRevokeRollback(this.revokeRollback.bind(this));
1269
- n.addKeyCombination(this.commandName, this.shortcutKeys), o.addEventListener("finally", this.createFinally()), o.addEventListener("completed", (a) => this.completed(a.data)), n.addCancelDefaultBehavior(() => n.isOnlyKeyDowns(this.shortcutKeys)), n.addEventListener("codeChange", async () => {
1270
- n.isKeyCombination(this.commandName) && await s.start(this.commandName);
1275
+ const s = this.commandManager.addCommandFlow("draw-door-line").add(this.createInterrupt()).add(this.createCursor("no-drop")).add(this.selectPoint.bind(this)).add(this.end.bind(this)).addRollback(this.rollback.bind(this)).addRevokeRollback(this.revokeRollback.bind(this));
1276
+ n.addKeyCombination(this.commandName, this.shortcutKeys), s.addEventListener("finally", this.createFinally()), s.addEventListener("completed", (a) => this.completed(a.data)), n.addCancelDefaultBehavior(() => n.isOnlyKeyDowns(this.shortcutKeys)), n.addEventListener("codeChange", async () => {
1277
+ n.isKeyCombination(this.commandName) && await o.start(this.commandName);
1271
1278
  });
1272
1279
  }
1273
1280
  /** 选择点
1274
1281
  * @param next
1275
1282
  */
1276
1283
  selectPoint(e) {
1277
- let t = this.parent?.findComponentByName("Editor"), n = null, s = new m.Mesh(new m.SphereGeometry(0.04), new m.MeshBasicMaterial({ color: 65280 })), o = new we([], 16711935), a = new we([
1278
- new m.Vector3(-1e4, 0, 0),
1279
- new m.Vector3(1e4, 0, 0),
1280
- new m.Vector3(0, -1e4, 0),
1281
- new m.Vector3(0, 1e4, 0)
1284
+ let t = this.parent?.findComponentByName("Editor"), n = null, o = this.renderer.createCircle(L.zero(), { color: 65280 }), s = new fe([], 16711935), a = new fe([
1285
+ new p.Vector3(-1e4, 0, 0),
1286
+ new p.Vector3(1e4, 0, 0),
1287
+ new p.Vector3(0, -1e4, 0),
1288
+ new p.Vector3(0, 1e4, 0)
1282
1289
  ], 16711935);
1283
- a.material = new m.LineDashedMaterial({
1290
+ a.material = new p.LineDashedMaterial({
1284
1291
  color: 4235007,
1285
1292
  dashSize: 0.1,
1286
1293
  gapSize: 0.1,
1287
1294
  linewidth: 0.1
1288
- }), this.container.add(o);
1289
- let c = null;
1295
+ }), this.container.add(s);
1296
+ let l = null;
1290
1297
  this.addEventRecord(
1291
1298
  "clear",
1292
1299
  t.addEventListener("pointerPositionChange", () => {
1293
- const { point: d, find: i } = t.renderManager.adsorption();
1294
- n && o.setPoint(n, d), this.dispatchEvent({ type: "pointerMove", point: d }), i ? (s.position.set(d.x, d.y, 0), this.container.add(s), this.domElement.style.cursor = "none", c = d.clone()) : (c = null, s.removeFromParent(), this.domElement.style.cursor = "no-drop");
1300
+ const { point: r, find: i } = t.renderManager.adsorption();
1301
+ n && s.setPoint(n, r), this.dispatchEvent({ type: "pointerMove", point: r }), i ? (o.position.set(r.x, r.y, 0), this.container.add(o), this.domElement.style.cursor = "none", l = r.clone()) : (l = null, o.removeFromParent(), this.domElement.style.cursor = "no-drop");
1295
1302
  }),
1296
1303
  t.eventInput.addEventListener("codeChange", async () => {
1297
- if (t.eventInput.isKeyDown("mouse_0") && c) {
1304
+ if (t.eventInput.isKeyDown("mouse_0") && l) {
1298
1305
  if (!n) {
1299
- n = c.clone();
1306
+ n = l.clone();
1300
1307
  return;
1301
1308
  }
1302
- e([n.clone(), c.clone()]);
1309
+ e([n.clone(), l.clone()]);
1303
1310
  }
1304
1311
  }),
1305
1312
  function() {
1306
- o.removeFromParent(), s.removeFromParent(), a.removeFromParent();
1313
+ s.removeFromParent(), o.removeFromParent(), a.removeFromParent();
1307
1314
  }
1308
1315
  );
1309
1316
  }
@@ -1314,23 +1321,23 @@ class os extends O {
1314
1321
  */
1315
1322
  end(e, t) {
1316
1323
  const n = [];
1317
- for (let s = 0; s < t.length; s += 2) {
1318
- const o = _.from(t[s]), a = _.from(t[s + 1]), c = this.renderManager.quadtree.queryCircle(o, 1e-3)[0].line, d = this.renderManager.quadtree.queryCircle(a, 1e-3)[0].line;
1324
+ for (let o = 0; o < t.length; o += 2) {
1325
+ const s = L.from(t[o]), a = L.from(t[o + 1]), l = this.renderManager.quadtree.queryCircle(s, 1e-3)[0].line, r = this.renderManager.quadtree.queryCircle(a, 1e-3)[0].line;
1319
1326
  let i = null;
1320
- c === d && (i = {
1321
- oldLine: c,
1327
+ l === r && (i = {
1328
+ oldLine: l,
1322
1329
  newLine1: new B(
1323
- c.start,
1324
- c.start.distance(o) < c.start.distance(a) ? o.clone() : a.clone()
1330
+ l.start,
1331
+ l.start.distance(s) < l.start.distance(a) ? s.clone() : a.clone()
1325
1332
  ),
1326
1333
  newLine2: new B(
1327
- c.end,
1328
- c.end.distance(o) < c.end.distance(a) ? o.clone() : a.clone()
1334
+ l.end,
1335
+ l.end.distance(s) < l.end.distance(a) ? s.clone() : a.clone()
1329
1336
  )
1330
1337
  });
1331
- const r = new B(o, a);
1332
- r.userData.isDoor = !0, r.userData.doorDirectConnection = !0, n.push({
1333
- line: r,
1338
+ const c = new B(s, a);
1339
+ c.userData.isDoor = !0, c.userData.doorDirectConnection = !0, n.push({
1340
+ line: c,
1334
1341
  option: i
1335
1342
  });
1336
1343
  }
@@ -1359,9 +1366,9 @@ class os extends O {
1359
1366
  return this.completed(e), e;
1360
1367
  }
1361
1368
  }
1362
- class as extends O {
1369
+ class io extends O {
1363
1370
  static name = "DrawWindow";
1364
- container = new m.Group();
1371
+ container = new p.Group();
1365
1372
  interruptKeys = ["escape"];
1366
1373
  shortcutKeys = ["control", "q"];
1367
1374
  commandName = "draw-window-line";
@@ -1374,24 +1381,24 @@ class as extends O {
1374
1381
  * @param next
1375
1382
  */
1376
1383
  selectPointStart(e) {
1377
- let t = null, n = new m.Mesh(new m.SphereGeometry(0.04), new m.MeshBasicMaterial({ color: 16711935 })), s = null;
1384
+ let t = null, n = this.renderer.createCircle(L.zero(), { color: 16711935 }), o = null;
1378
1385
  this.addEventRecord("selectPointStart").add(this.editor.addEventListener("pointerPositionChange", () => {
1379
- const { point: o, line: a, find: c } = this.editor.renderManager.adsorption();
1380
- this.dispatchEvent({ type: "pointerMove", point: o }), c ? (this.domElement.style.cursor = "none", n.position.copy(o), s = a, t = o.clone(), this.container.add(n)) : (this.domElement.style.cursor = "no-drop", t = null, n.removeFromParent());
1386
+ const { point: s, line: a, find: l } = this.editor.renderManager.adsorption();
1387
+ this.dispatchEvent({ type: "pointerMove", point: s }), l ? (this.domElement.style.cursor = "none", n.position.copy(s), o = a, t = s.clone(), this.container.add(n)) : (this.domElement.style.cursor = "no-drop", t = null, n.removeFromParent());
1381
1388
  })).add(this.eventInput.addEventListener("codeChange", () => {
1382
- this.eventInput.isKeyDown("mouse_0") && t && (this.canceEventRecord("selectPointStart"), e({ point: t, line: s }));
1389
+ this.eventInput.isKeyDown("mouse_0") && t && (this.canceEventRecord("selectPointStart"), e({ point: t, line: o }));
1383
1390
  })), this.addEventRecord("clear").add(() => n.removeFromParent());
1384
1391
  }
1385
1392
  /** 选择结束点
1386
1393
  * @param next
1387
1394
  */
1388
1395
  selectPointEnd(e, { point: t, line: n }) {
1389
- let s = null, o = new m.Mesh(new m.SphereGeometry(0.04), new m.MeshBasicMaterial({ color: 16711935 }));
1390
- this.addEventRecord("clear").add(() => o.removeFromParent()).add(this.editor.addEventListener("pointerPositionChange", () => {
1391
- const { point: a, find: c, line: d } = this.editor.renderManager.adsorption();
1392
- this.dispatchEvent({ type: "pointerMove", point: a }), c && d === n ? (this.domElement.style.cursor = "none", o.position.copy(a), s = a.clone(), this.container.add(o)) : (this.domElement.style.cursor = "no-drop", s = null, o.removeFromParent());
1396
+ let o = null, s = this.renderer.createCircle(L.zero(), { color: 16711935 });
1397
+ this.addEventRecord("clear").add(() => s.removeFromParent()).add(this.editor.addEventListener("pointerPositionChange", () => {
1398
+ const { point: a, find: l, line: r } = this.editor.renderManager.adsorption();
1399
+ this.dispatchEvent({ type: "pointerMove", point: a }), l && r === n ? (this.domElement.style.cursor = "none", s.position.copy(a), o = a.clone(), this.container.add(s)) : (this.domElement.style.cursor = "no-drop", o = null, s.removeFromParent());
1393
1400
  })).add(this.eventInput.addEventListener("codeChange", () => {
1394
- this.eventInput.isKeyDown("mouse_0") && s && e({ line: n, start: t, end: s });
1401
+ this.eventInput.isKeyDown("mouse_0") && o && e({ line: n, start: t, end: o });
1395
1402
  }));
1396
1403
  }
1397
1404
  /**
@@ -1399,13 +1406,13 @@ class as extends O {
1399
1406
  * @param next
1400
1407
  * @param points
1401
1408
  */
1402
- end(e, { start: t, end: n, line: s }) {
1403
- const o = new B(_.from(t), _.from(n)), a = o.center, c = o.length(), d = {
1404
- p: new m.Vector3(a.x, a.y, 0),
1405
- width: c,
1406
- full: Math.abs(c - s.length()) < 0.01
1409
+ end(e, { start: t, end: n, line: o }) {
1410
+ const s = new B(L.from(t), L.from(n)), a = s.center, l = s.length(), r = {
1411
+ p: new p.Vector3(a.x, a.y, 0),
1412
+ width: l,
1413
+ full: Math.abs(l - o.length()) < 0.01
1407
1414
  };
1408
- e({ line: s, doorDataItem: d });
1415
+ e({ line: o, doorDataItem: r });
1409
1416
  }
1410
1417
  /** 执行完成
1411
1418
  */
@@ -1418,8 +1425,8 @@ class as extends O {
1418
1425
  rollback(e) {
1419
1426
  const { doorDataItem: t, line: n } = e;
1420
1427
  if (n.userData.drawWindow) {
1421
- const s = n.userData.drawWindow.indexOf(t);
1422
- s !== -1 && (n.userData.drawWindow.splice(s, 1), n.userData.drawWindow.length === 0 && (delete n.userData.drawWindow, delete n.userData.isWindow), this.renderManager.draw());
1428
+ const o = n.userData.drawWindow.indexOf(t);
1429
+ o !== -1 && (n.userData.drawWindow.splice(o, 1), n.userData.drawWindow.length === 0 && (delete n.userData.drawWindow, delete n.userData.isWindow), this.renderManager.draw());
1423
1430
  }
1424
1431
  return e;
1425
1432
  }
@@ -1433,7 +1440,7 @@ class as extends O {
1433
1440
  }
1434
1441
  class le extends O {
1435
1442
  static name = "VerticalCorrection";
1436
- container = new m.Group();
1443
+ container = new p.Group();
1437
1444
  shortcutKeys = ["control", "c"];
1438
1445
  shortcutKeys3 = ["shift", "c"];
1439
1446
  static commandName = "verticalCorrection";
@@ -1449,7 +1456,7 @@ class le extends O {
1449
1456
  * 进入命令约束
1450
1457
  */
1451
1458
  constraint(e, t) {
1452
- Array.isArray(t) ? t.length !== 1 ? (L({ message: "请选择一条线段", type: "warning" }), this.cancel()) : e(t) : (L({ message: "进入命令失败", type: "warning" }), this.cancel());
1459
+ Array.isArray(t) ? t.length !== 1 ? (k({ message: "请选择一条线段", type: "warning" }), this.cancel()) : e(t) : (k({ message: "进入命令失败", type: "warning" }), this.cancel());
1453
1460
  }
1454
1461
  /**
1455
1462
  * @param line0
@@ -1467,46 +1474,46 @@ class le extends O {
1467
1474
  * @param id
1468
1475
  * @returns
1469
1476
  */
1470
- setLinePoint(e, t, n, s = "all", o = [], a = At()) {
1477
+ setLinePoint(e, t, n, o = "all", s = [], a = At()) {
1471
1478
  if (e.userData.setLinePointUUid === a) return [];
1472
1479
  e.userData.setLinePointUUid = a;
1473
- let c = [], d = [];
1474
- (s === "start" || s === "all") && (c = this.renderManager.pointVirtualGrid.queryPoint(e.start).filter((y) => y.userData !== e)), (s === "end" || s === "all") && (d = this.renderManager.pointVirtualGrid.queryPoint(e.end).filter((y) => y.userData !== e));
1480
+ let l = [], r = [];
1481
+ (o === "start" || o === "all") && (l = this.renderManager.pointVirtualGrid.queryPoint(e.start).filter((w) => w.userData !== e)), (o === "end" || o === "all") && (r = this.renderManager.pointVirtualGrid.queryPoint(e.end).filter((w) => w.userData !== e));
1475
1482
  const i = e.clone();
1476
- let r = "";
1477
- t && (e.start.equal(t) || (r = "start"), o.push({
1483
+ let c = "";
1484
+ t && (e.start.equal(t) || (c = "start"), s.push({
1478
1485
  point: e.start,
1479
1486
  oldPoint: e.start.clone(),
1480
1487
  newPoint: t,
1481
1488
  line: e
1482
- }), e.start.copy(t)), n && (e.end.equal(n) || (r = r === "start" ? "all" : "end"), o.push({
1489
+ }), e.start.copy(t)), n && (e.end.equal(n) || (c = c === "start" ? "all" : "end"), s.push({
1483
1490
  point: e.end,
1484
1491
  oldPoint: e.end.clone(),
1485
1492
  newPoint: n,
1486
1493
  line: e
1487
1494
  }), e.end.copy(n));
1488
- const h = (y, f, p) => {
1489
- y.forEach((u) => {
1490
- const { point: E, userData: x } = u, k = x.start === E ? "start" : "end";
1491
- if (x.directionEqual(i))
1492
- if (k === "start") {
1493
- const z = e.projectPoint(x.end, !1);
1494
- if (z) return this.setLinePoint(x, f, z, "end", o, a);
1495
+ const m = (w, f, u) => {
1496
+ w.forEach((h) => {
1497
+ const { point: E, userData: b } = h, D = b.start === E ? "start" : "end";
1498
+ if (b.directionEqual(i))
1499
+ if (D === "start") {
1500
+ const F = e.projectPoint(b.end, !1);
1501
+ if (F) return this.setLinePoint(b, f, F, "end", s, a);
1495
1502
  } else {
1496
- const z = e.projectPoint(x.start, !1);
1497
- if (z) return this.setLinePoint(x, z, f, "start", o, a);
1503
+ const F = e.projectPoint(b.start, !1);
1504
+ if (F) return this.setLinePoint(b, F, f, "start", s, a);
1498
1505
  }
1499
- (r === "all" || p === r) && this.setLinePoint(
1500
- x,
1501
- x.start === E ? f : x.start,
1502
- x.end === E ? f : x.end,
1503
- x.start === E ? "end" : "start",
1504
- o,
1506
+ (c === "all" || u === c) && this.setLinePoint(
1507
+ b,
1508
+ b.start === E ? f : b.start,
1509
+ b.end === E ? f : b.end,
1510
+ b.start === E ? "end" : "start",
1511
+ s,
1505
1512
  a
1506
1513
  );
1507
1514
  });
1508
1515
  };
1509
- return h(c, e.start, "start"), h(d, e.end, "end"), [...c, ...d];
1516
+ return m(l, e.start, "start"), m(r, e.end, "end"), [...l, ...r];
1510
1517
  }
1511
1518
  /** 修正2
1512
1519
  * 第一步:确定需要修复的线段
@@ -1520,72 +1527,72 @@ class le extends O {
1520
1527
  */
1521
1528
  correction(e, t = [], n = /* @__PURE__ */ new Set()) {
1522
1529
  n.add(e);
1523
- const s = this.renderManager.quadtree.queryLineSegment(e).filter(({ line: i }) => !(i === e || i.userData.isDoor || n.has(i))).map((i) => i.line), o = e.direction(), [a, c] = s.reduce((i, r) => {
1524
- const [h, y] = i;
1525
- return r.sameEndpoint(e) ? h.push(r) : y.push(r), i;
1530
+ const o = this.renderManager.quadtree.queryLineSegment(e).filter(({ line: i }) => !(i === e || i.userData.isDoor || n.has(i))).map((i) => i.line), s = e.direction(), [a, l] = o.reduce((i, c) => {
1531
+ const [m, w] = i;
1532
+ return c.sameEndpoint(e) ? m.push(c) : w.push(c), i;
1526
1533
  }, [[], []]);
1527
1534
  a.forEach((i) => {
1528
- const r = i.direction(), h = o.angleBetween(r, "angle");
1529
- if (Math.abs(90 - h) > 45) return !1;
1530
- const f = e.sameEndpointAsStart(i) ? e.start : e.end, p = i.sameEndpointAsStart(e) ? i.end : i.start, u = new B(
1531
- p.clone().add(o.clone().multiplyScalar(1)),
1532
- p.clone().add(o.clone().multiplyScalar(-1))
1533
- ), E = u.projectPoint(f, !1);
1535
+ const c = i.direction(), m = s.angleBetween(c, "angle");
1536
+ if (Math.abs(90 - m) > 45) return !1;
1537
+ const f = e.sameEndpointAsStart(i) ? e.start : e.end, u = i.sameEndpointAsStart(e) ? i.end : i.start, h = new B(
1538
+ u.clone().add(s.clone().multiplyScalar(1)),
1539
+ u.clone().add(s.clone().multiplyScalar(-1))
1540
+ ), E = h.projectPoint(f, !1);
1534
1541
  if (E) {
1535
- const x = [];
1542
+ const b = [];
1536
1543
  this.setLinePoint(
1537
1544
  i,
1538
- i.start === p ? E : i.start,
1539
- i.end === p ? E : i.end,
1540
- i.start === p ? "start" : "end",
1541
- x
1542
- ), t.push(x);
1545
+ i.start === u ? E : i.start,
1546
+ i.end === u ? E : i.end,
1547
+ i.start === u ? "start" : "end",
1548
+ b
1549
+ ), t.push(b);
1543
1550
  }
1544
1551
  return n.add(i), !1;
1545
- }), o.copy(e.direction());
1546
- const d = (i, r, h) => {
1547
- const y = e.projectPoint(r);
1548
- if (y) i.copy(y);
1552
+ }), s.copy(e.direction());
1553
+ const r = (i, c, m) => {
1554
+ const w = e.projectPoint(c);
1555
+ if (w) i.copy(w);
1549
1556
  else {
1550
1557
  const f = new B(
1551
- r.clone().add(o.clone().multiplyScalar(1)),
1552
- r.clone().add(o.clone().multiplyScalar(-1))
1553
- ), p = f.projectPoint(i, !1);
1554
- if (p) {
1555
- const u = [];
1558
+ c.clone().add(s.clone().multiplyScalar(1)),
1559
+ c.clone().add(s.clone().multiplyScalar(-1))
1560
+ ), u = f.projectPoint(i, !1);
1561
+ if (u) {
1562
+ const h = [];
1556
1563
  this.setLinePoint(
1557
- h,
1558
- h.start === r ? p : h.start,
1559
- h.end === r ? p : h.end,
1560
- h.start === r ? "start" : "end",
1561
- u
1562
- ), t.push(u);
1564
+ m,
1565
+ m.start === c ? u : m.start,
1566
+ m.end === c ? u : m.end,
1567
+ m.start === c ? "start" : "end",
1568
+ h
1569
+ ), t.push(h);
1563
1570
  }
1564
1571
  }
1565
1572
  };
1566
- return c.forEach((i) => {
1573
+ return l.forEach((i) => {
1567
1574
  if (e.containsPoint(i.start))
1568
- d(i.start, i.end, i);
1575
+ r(i.start, i.end, i);
1569
1576
  else if (e.containsPoint(i.end))
1570
- d(i.end, i.start, i);
1577
+ r(i.end, i.start, i);
1571
1578
  else {
1572
- const r = e.getIntersection(i);
1573
- if (r) {
1574
- const h = new B(
1575
- i.start.clone().add(o.clone().multiplyScalar(1)),
1576
- i.start.clone().add(o.clone().multiplyScalar(-1))
1577
- ), y = h.projectPoint(r, !1);
1578
- if (y) {
1579
- const u = [];
1580
- this.setLinePoint(i, y, i.end, "start", u), t.push(u);
1579
+ const c = e.getIntersection(i);
1580
+ if (c) {
1581
+ const m = new B(
1582
+ i.start.clone().add(s.clone().multiplyScalar(1)),
1583
+ i.start.clone().add(s.clone().multiplyScalar(-1))
1584
+ ), w = m.projectPoint(c, !1);
1585
+ if (w) {
1586
+ const h = [];
1587
+ this.setLinePoint(i, w, i.end, "start", h), t.push(h);
1581
1588
  }
1582
1589
  const f = new B(
1583
- i.end.clone().add(o.clone().multiplyScalar(1)),
1584
- i.end.clone().add(o.clone().multiplyScalar(-1))
1585
- ), p = f.projectPoint(r, !1);
1586
- if (p) {
1587
- const u = [];
1588
- this.setLinePoint(i, i.start, p, "end", u), t.push(u);
1590
+ i.end.clone().add(s.clone().multiplyScalar(1)),
1591
+ i.end.clone().add(s.clone().multiplyScalar(-1))
1592
+ ), u = f.projectPoint(c, !1);
1593
+ if (u) {
1594
+ const h = [];
1595
+ this.setLinePoint(i, i.start, u, "end", h), t.push(h);
1589
1596
  }
1590
1597
  }
1591
1598
  }
@@ -1597,7 +1604,7 @@ class le extends O {
1597
1604
  */
1598
1605
  axisAlignmentCorrection(e) {
1599
1606
  const t = [...this.renderManager.lines];
1600
- return { newLines: ke.axisAlignmentCorrection.call(this, t, e), oldLines: t };
1607
+ return { newLines: St.correction.call(this, t, e), oldLines: t };
1601
1608
  }
1602
1609
  /** 开始
1603
1610
  * @param next
@@ -1613,11 +1620,11 @@ class le extends O {
1613
1620
  if (Array.isArray(e)) {
1614
1621
  const t = [];
1615
1622
  e.forEach((n) => {
1616
- n.forEach((s) => {
1617
- const { line: o, newPoint: a, point: c } = s;
1618
- c.copy(a), this.renderManager.removeLine(o), this.renderManager.addLine(o), o.userData.isWindow && t.push(o);
1623
+ n.forEach((o) => {
1624
+ const { line: s, newPoint: a, point: l } = o;
1625
+ l.copy(a), this.renderManager.removeLine(s), this.renderManager.addLine(s), s.userData.isWindow && t.push(s);
1619
1626
  });
1620
- }), ke.recomputedWindow(...t);
1627
+ }), Fe(...t);
1621
1628
  } else
1622
1629
  this.renderManager.removeLines(e.oldLines), this.renderManager.addLines(e.newLines);
1623
1630
  this.renderManager.draw();
@@ -1629,13 +1636,13 @@ class le extends O {
1629
1636
  if (Array.isArray(e)) {
1630
1637
  const t = [];
1631
1638
  for (let n = e.length - 1; n >= 0; n--) {
1632
- const s = e[n];
1633
- for (let o = s.length - 1; o >= 0; o--) {
1634
- const a = s[o], { line: c, oldPoint: d, point: i } = a;
1635
- i.copy(d), this.renderManager.removeLine(c), this.renderManager.addLine(c), c.userData.isWindow && t.push(c);
1639
+ const o = e[n];
1640
+ for (let s = o.length - 1; s >= 0; s--) {
1641
+ const a = o[s], { line: l, oldPoint: r, point: i } = a;
1642
+ i.copy(r), this.renderManager.removeLine(l), this.renderManager.addLine(l), l.userData.isWindow && t.push(l);
1636
1643
  }
1637
1644
  }
1638
- ke.recomputedWindow(...t);
1645
+ Fe(...t);
1639
1646
  } else
1640
1647
  this.renderManager.removeLines(e.newLines), this.renderManager.addLines(e.oldLines);
1641
1648
  return this.renderManager.draw(), e;
@@ -1648,31 +1655,31 @@ class le extends O {
1648
1655
  return this.completed(e), e;
1649
1656
  }
1650
1657
  }
1651
- class $ extends O {
1658
+ class X extends O {
1652
1659
  static name = "MergeLine";
1653
1660
  shortcutKeys = ["control", "g"];
1654
1661
  static commandName = "merge-line";
1655
1662
  onAddFromParent(e) {
1656
1663
  super.onAddFromParent(e);
1657
- const t = this.commandManager.addCommandFlow($.commandName).add(this.createInterrupt()).add(this.constraint.bind(this)).add(this.mergeLines.bind(this)).addRollback(this.rollback.bind(this)).addRevokeRollback(this.revokeRollback.bind(this));
1658
- t.addEventListener("finally", this.createFinally()), t.addEventListener("completed", (n) => this.completed(n.data)), this.eventInput.addKeyCombination($.commandName, this.shortcutKeys), this.eventInput.addEventListener("codeChange", async () => {
1659
- this.eventInput.isKeyCombination($.commandName) && await this.commandManager.start($.commandName, [...this.default.selectLines]);
1664
+ const t = this.commandManager.addCommandFlow(X.commandName).add(this.createInterrupt()).add(this.constraint.bind(this)).add(this.mergeLines.bind(this)).addRollback(this.rollback.bind(this)).addRevokeRollback(this.revokeRollback.bind(this));
1665
+ t.addEventListener("finally", this.createFinally()), t.addEventListener("completed", (n) => this.completed(n.data)), this.eventInput.addKeyCombination(X.commandName, this.shortcutKeys), this.eventInput.addEventListener("codeChange", async () => {
1666
+ this.eventInput.isKeyCombination(X.commandName) && await this.commandManager.start(X.commandName, [...this.default.selectLines]);
1660
1667
  }), this.eventInput.addCancelDefaultBehavior(() => this.eventInput.isOnlyKeyDowns(this.shortcutKeys));
1661
1668
  }
1662
1669
  /**
1663
1670
  * 进入命令约束
1664
1671
  */
1665
1672
  constraint(e, t) {
1666
- Array.isArray(t) ? t.length < 2 ? (L({ message: "未执行线段合并,请选择至少两条线段", type: "warning" }), this.cancel()) : e(t) : (L({ message: "进入命令失败", type: "warning" }), this.cancel());
1673
+ Array.isArray(t) ? t.length < 2 ? (k({ message: "未执行线段合并,请选择至少两条线段", type: "warning" }), this.cancel()) : e(t) : (k({ message: "进入命令失败", type: "warning" }), this.cancel());
1667
1674
  }
1668
1675
  /** 开始
1669
1676
  * @param next
1670
1677
  * @todo 合并所有
1671
1678
  */
1672
1679
  mergeLines(e, t) {
1673
- t = t.filter((o) => !o.userData.isDoor);
1674
- const { newLines: n, deleteLines: s } = B.autoMergeLines(t);
1675
- n.length ? (e({ newLines: n, deleteLines: s }), L({ message: "已合并", type: "success" })) : (L({ message: "合并失败,未找到共用点", type: "warning" }), this.commandManager.cancel());
1680
+ t = t.filter((s) => !s.userData.isDoor);
1681
+ const { newLines: n, deleteLines: o } = B.autoMergeLines(t);
1682
+ n.length ? (e({ newLines: n, deleteLines: o }), k({ message: "已合并", type: "success" })) : (k({ message: "合并失败,未找到共用点", type: "warning" }), this.commandManager.cancel());
1676
1683
  }
1677
1684
  /** 执行完成
1678
1685
  * @param data
@@ -1695,26 +1702,26 @@ class $ extends O {
1695
1702
  return this.completed(e), e;
1696
1703
  }
1697
1704
  }
1698
- class ee extends O {
1705
+ class $ extends O {
1699
1706
  static name = "DeleteSelectLine";
1700
1707
  shortcutKeys = ["Delete"];
1701
1708
  static commandName = "deleteSelectLine";
1702
1709
  onAddFromParent(e) {
1703
- super.onAddFromParent(e), this.commandManager.addCommandFlow(ee.commandName).add(this.createInterrupt()).add(this.constraint.bind(this)).add(this.delete.bind(this)).addRollback(this.rollback.bind(this)).addRevokeRollback(this.revokeRollback.bind(this)).addEventListener("finally", this.createFinally()), this.eventInput.addKeyCombination(ee.commandName, this.shortcutKeys), this.eventInput.addEventListener("codeChange", async () => {
1704
- this.eventInput.isKeyCombination(ee.commandName) && await this.commandManager.start(ee.commandName, [...this.default.selectLines]);
1710
+ super.onAddFromParent(e), this.commandManager.addCommandFlow($.commandName).add(this.createInterrupt()).add(this.constraint.bind(this)).add(this.delete.bind(this)).addRollback(this.rollback.bind(this)).addRevokeRollback(this.revokeRollback.bind(this)).addEventListener("finally", this.createFinally()), this.eventInput.addKeyCombination($.commandName, this.shortcutKeys), this.eventInput.addEventListener("codeChange", async () => {
1711
+ this.eventInput.isKeyCombination($.commandName) && await this.commandManager.start($.commandName, [...this.default.selectLines]);
1705
1712
  }), this.eventInput.addCancelDefaultBehavior(() => this.eventInput.isOnlyKeyDowns(this.shortcutKeys));
1706
1713
  }
1707
1714
  /**
1708
1715
  * 进入命令约束
1709
1716
  */
1710
1717
  constraint(e, t) {
1711
- Array.isArray(t) ? t.length === 0 ? (L({ message: "请选择线段", type: "warning" }), this.cancel()) : e(t) : (L({ message: "进入命令失败", type: "warning" }), this.cancel());
1718
+ Array.isArray(t) ? t.length === 0 ? (k({ message: "请选择线段", type: "warning" }), this.cancel()) : e(t) : (k({ message: "进入命令失败", type: "warning" }), this.cancel());
1712
1719
  }
1713
1720
  /** 开始
1714
1721
  * @param next
1715
1722
  */
1716
1723
  delete(e, t) {
1717
- t.forEach((n) => this.renderManager.removeLine(n)), L({ message: "删除成功", type: "success" }), e(t);
1724
+ t.forEach((n) => this.renderManager.removeLine(n)), k({ message: "删除成功", type: "success" }), e(t);
1718
1725
  }
1719
1726
  /** 回滚操作
1720
1727
  * @param data
@@ -1730,36 +1737,36 @@ class ee extends O {
1730
1737
  return e.forEach((t) => this.renderManager.removeLine(t)), e;
1731
1738
  }
1732
1739
  }
1733
- class te extends O {
1740
+ class ee extends O {
1734
1741
  static name = "ConnectionLine";
1735
1742
  shortcutKeys = ["Shift", "L"];
1736
1743
  static commandName = "connectionLine";
1737
1744
  onAddFromParent(e) {
1738
1745
  super.onAddFromParent(e);
1739
- const t = this.commandManager.addCommandFlow(te.commandName).add(this.createInterrupt()).add(this.constraint.bind(this)).add(this.connection.bind(this)).addRollback(this.rollback.bind(this)).addRevokeRollback(this.revokeRollback.bind(this));
1740
- t.addEventListener("finally", this.createFinally()), t.addEventListener("completed", (n) => this.completed(n.data)), this.eventInput.addKeyCombination(te.commandName, this.shortcutKeys), this.eventInput.addEventListener("codeChange", async () => {
1741
- this.eventInput.isKeyCombination(te.commandName) && await this.commandManager.start(te.commandName, [...this.default.selectLines]);
1746
+ const t = this.commandManager.addCommandFlow(ee.commandName).add(this.createInterrupt()).add(this.constraint.bind(this)).add(this.connection.bind(this)).addRollback(this.rollback.bind(this)).addRevokeRollback(this.revokeRollback.bind(this));
1747
+ t.addEventListener("finally", this.createFinally()), t.addEventListener("completed", (n) => this.completed(n.data)), this.eventInput.addKeyCombination(ee.commandName, this.shortcutKeys), this.eventInput.addEventListener("codeChange", async () => {
1748
+ this.eventInput.isKeyCombination(ee.commandName) && await this.commandManager.start(ee.commandName, [...this.default.selectLines]);
1742
1749
  }), this.eventInput.addCancelDefaultBehavior(() => this.eventInput.isOnlyKeyDowns(this.shortcutKeys));
1743
1750
  }
1744
1751
  /**
1745
1752
  * 进入命令约束
1746
1753
  */
1747
1754
  constraint(e, t) {
1748
- Array.isArray(t) ? t.length !== 2 ? (L({ message: "请选择2条线段", type: "warning" }), this.cancel()) : e(t) : (L({ message: "进入命令失败", type: "warning" }), this.cancel());
1755
+ Array.isArray(t) ? t.length !== 2 ? (k({ message: "请选择2条线段", type: "warning" }), this.cancel()) : e(t) : (k({ message: "进入命令失败", type: "warning" }), this.cancel());
1749
1756
  }
1750
1757
  /** 连接
1751
1758
  * @param next
1752
1759
  */
1753
1760
  connection(e, t) {
1754
- let n, s, o = 1 / 0;
1761
+ let n, o, s = 1 / 0;
1755
1762
  for (let a = 0; a < 2; a++)
1756
- for (let c = 0; c < 2; c++) {
1757
- const d = t[0].points[a], i = t[1].points[c], r = d.distance(i);
1758
- r < o && (n = d, s = i, o = r);
1763
+ for (let l = 0; l < 2; l++) {
1764
+ const r = t[0].points[a], i = t[1].points[l], c = r.distance(i);
1765
+ c < s && (n = r, o = i, s = c);
1759
1766
  }
1760
- if (n && s) {
1761
- const a = new B(n.clone(), s.clone());
1762
- e(a), L({ message: "连接成功", type: "success" });
1767
+ if (n && o) {
1768
+ const a = new B(n.clone(), o.clone());
1769
+ e(a), k({ message: "连接成功", type: "success" });
1763
1770
  } else this.cancel();
1764
1771
  }
1765
1772
  /** 成功
@@ -1783,47 +1790,47 @@ class te extends O {
1783
1790
  return this.completed(e), e;
1784
1791
  }
1785
1792
  }
1786
- class ne extends O {
1793
+ class te extends O {
1787
1794
  static name = "IntersectionConnectionLine";
1788
1795
  shortcutKeys = ["control", "Shift", "L"];
1789
1796
  static commandName = "intersectionConnectionLine";
1790
1797
  onAddFromParent(e) {
1791
1798
  super.onAddFromParent(e);
1792
- const t = this.commandManager.addCommandFlow(ne.commandName).add(this.createInterrupt()).add(this.constraint.bind(this)).add(this.connection.bind(this)).addRollback(this.rollback.bind(this)).addRevokeRollback(this.revokeRollback.bind(this));
1793
- t.addEventListener("finally", this.createFinally()), t.addEventListener("completed", (n) => this.completed(n.data)), this.eventInput.addKeyCombination(ne.commandName, this.shortcutKeys), this.eventInput.addEventListener("codeChange", async () => {
1794
- this.eventInput.isKeyCombination(ne.commandName) && await this.commandManager.start(ne.commandName, [...this.default.selectLines]);
1799
+ const t = this.commandManager.addCommandFlow(te.commandName).add(this.createInterrupt()).add(this.constraint.bind(this)).add(this.connection.bind(this)).addRollback(this.rollback.bind(this)).addRevokeRollback(this.revokeRollback.bind(this));
1800
+ t.addEventListener("finally", this.createFinally()), t.addEventListener("completed", (n) => this.completed(n.data)), this.eventInput.addKeyCombination(te.commandName, this.shortcutKeys), this.eventInput.addEventListener("codeChange", async () => {
1801
+ this.eventInput.isKeyCombination(te.commandName) && await this.commandManager.start(te.commandName, [...this.default.selectLines]);
1795
1802
  }), this.eventInput.addCancelDefaultBehavior(() => this.eventInput.isOnlyKeyDowns(this.shortcutKeys));
1796
1803
  }
1797
1804
  /**
1798
1805
  * 进入命令约束
1799
1806
  */
1800
1807
  constraint(e, t) {
1801
- Array.isArray(t) ? t.length !== 2 ? (L({ message: "请选择2条线段", type: "warning" }), this.cancel()) : e(t) : (L({ message: "进入命令失败", type: "warning" }), this.cancel());
1808
+ Array.isArray(t) ? t.length !== 2 ? (k({ message: "请选择2条线段", type: "warning" }), this.cancel()) : e(t) : (k({ message: "进入命令失败", type: "warning" }), this.cancel());
1802
1809
  }
1803
1810
  /** 开始
1804
1811
  * @param next
1805
1812
  */
1806
1813
  connection(e, t) {
1807
- const n = t[0], s = t[1], o = t[0].getIntersection(t[1]);
1808
- if (!o) return;
1809
- const a = n.points.map((r) => r.clone()), c = s.points.map((r) => r.clone());
1810
- n.start.distance(o) < n.end.distance(o) ? n.start.copy(o) : n.end.copy(o), s.start.distance(o) < s.end.distance(o) ? s.start.copy(o) : s.end.copy(o);
1811
- const d = n.points.map((r) => r.clone()), i = s.points.map((r) => r.clone());
1812
- e({ line1: n, line2: s, oldLine1: a, oldLine2: c, newLine1: d, newLine2: i }), L({ message: "连接成功", type: "success" });
1814
+ const n = t[0], o = t[1], s = t[0].getIntersection(t[1]);
1815
+ if (!s) return;
1816
+ const a = n.points.map((c) => c.clone()), l = o.points.map((c) => c.clone());
1817
+ n.start.distance(s) < n.end.distance(s) ? n.start.copy(s) : n.end.copy(s), o.start.distance(s) < o.end.distance(s) ? o.start.copy(s) : o.end.copy(s);
1818
+ const r = n.points.map((c) => c.clone()), i = o.points.map((c) => c.clone());
1819
+ e({ line1: n, line2: o, oldLine1: a, oldLine2: l, newLine1: r, newLine2: i }), k({ message: "连接成功", type: "success" });
1813
1820
  }
1814
1821
  /** 执行完成
1815
1822
  * @param next
1816
1823
  * @param selectLines
1817
1824
  */
1818
- completed({ line1: e, line2: t, newLine1: n, newLine2: s }) {
1819
- this.renderManager.removeLine(e), this.renderManager.removeLine(t), e.set(...n), t.set(...s), this.renderManager.addLines([e, t]), this.renderManager.draw();
1825
+ completed({ line1: e, line2: t, newLine1: n, newLine2: o }) {
1826
+ this.renderManager.removeLine(e), this.renderManager.removeLine(t), e.set(...n), t.set(...o), this.renderManager.addLines([e, t]), this.renderManager.draw();
1820
1827
  }
1821
1828
  /** 回滚操作
1822
1829
  * @param data
1823
1830
  */
1824
1831
  rollback(e) {
1825
- const { line1: t, line2: n, oldLine1: s, oldLine2: o } = e;
1826
- return this.renderManager.removeLine(t), this.renderManager.removeLine(n), t.set(...s), n.set(...o), this.renderManager.addLines([t, n]), this.renderManager.draw(), e;
1832
+ const { line1: t, line2: n, oldLine1: o, oldLine2: s } = e;
1833
+ return this.renderManager.removeLine(t), this.renderManager.removeLine(n), t.set(...o), n.set(...s), this.renderManager.addLines([t, n]), this.renderManager.draw(), e;
1827
1834
  }
1828
1835
  /** 撤回回滚
1829
1836
  * @param lines
@@ -1833,34 +1840,34 @@ class ne extends O {
1833
1840
  return this.completed(e), e;
1834
1841
  }
1835
1842
  }
1836
- class se extends O {
1843
+ class ne extends O {
1837
1844
  static name = "DeleteSelectWindow";
1838
1845
  shortcutKeys = ["Q", "Delete"];
1839
1846
  static commandName = "deleteSelectWindow";
1840
1847
  onAddFromParent(e) {
1841
1848
  super.onAddFromParent(e);
1842
- const t = this.commandManager.addCommandFlow(se.commandName).add(this.createInterrupt()).add(this.constraint.bind(this)).add(this.end.bind(this)).addRollback(this.rollback.bind(this)).addRevokeRollback(this.revokeRollback.bind(this));
1843
- t.addEventListener("finally", this.createFinally()), t.addEventListener("completed", (n) => this.completed(n.data)), this.eventInput.addKeyCombination(se.commandName, this.shortcutKeys), this.eventInput.addEventListener("codeChange", async () => {
1844
- this.eventInput.isKeyCombination(se.commandName) && await this.commandManager.start(se.commandName, [...this.default.selectLines]);
1849
+ const t = this.commandManager.addCommandFlow(ne.commandName).add(this.createInterrupt()).add(this.constraint.bind(this)).add(this.end.bind(this)).addRollback(this.rollback.bind(this)).addRevokeRollback(this.revokeRollback.bind(this));
1850
+ t.addEventListener("finally", this.createFinally()), t.addEventListener("completed", (n) => this.completed(n.data)), this.eventInput.addKeyCombination(ne.commandName, this.shortcutKeys), this.eventInput.addEventListener("codeChange", async () => {
1851
+ this.eventInput.isKeyCombination(ne.commandName) && await this.commandManager.start(ne.commandName, [...this.default.selectLines]);
1845
1852
  }), this.eventInput.addCancelDefaultBehavior(() => this.eventInput.isOnlyKeyDowns(this.shortcutKeys));
1846
1853
  }
1847
1854
  /**
1848
1855
  * 进入命令约束
1849
1856
  */
1850
1857
  constraint(e, t) {
1851
- Array.isArray(t) ? t.some((n) => n.userData.isWindow) ? e(t) : (L({ message: "请选择有窗户线段", type: "warning" }), this.cancel()) : (L({ message: "进入命令失败", type: "warning" }), this.cancel());
1858
+ Array.isArray(t) ? t.some((n) => n.userData.isWindow) ? e(t) : (k({ message: "请选择有窗户线段", type: "warning" }), this.cancel()) : (k({ message: "进入命令失败", type: "warning" }), this.cancel());
1852
1859
  }
1853
1860
  /** 开始
1854
1861
  * @param next
1855
1862
  */
1856
1863
  end(e, t) {
1857
- let n = !1, s = [];
1858
- t.forEach((o) => {
1859
- o.userData.isWindow && (s.push({
1860
- line: o,
1861
- drawDoorData: o.userData.drawDoorData
1864
+ let n = !1, o = [];
1865
+ t.forEach((s) => {
1866
+ s.userData.isWindow && (o.push({
1867
+ line: s,
1868
+ drawDoorData: s.userData.drawDoorData
1862
1869
  }), n = !0);
1863
- }), n && L({ message: "删除窗户成功", type: "success" }), e(s);
1870
+ }), n && k({ message: "删除窗户成功", type: "success" }), e(o);
1864
1871
  }
1865
1872
  /**
1866
1873
  * 完成
@@ -1892,7 +1899,7 @@ class se extends O {
1892
1899
  }
1893
1900
  class oe extends O {
1894
1901
  static name = "SelectAll";
1895
- container = new m.Group();
1902
+ container = new p.Group();
1896
1903
  shortcutKeys = ["control", "a"];
1897
1904
  static commandName = "selectAll";
1898
1905
  onAddFromParent(e) {
@@ -1927,22 +1934,22 @@ class oe extends O {
1927
1934
  return this.completed(e), e;
1928
1935
  }
1929
1936
  }
1930
- class ae extends O {
1937
+ class se extends O {
1931
1938
  static name = "ViewAngle";
1932
1939
  shortcutKeys = ["r"];
1933
1940
  static commandName = "viewAngle";
1934
1941
  onAddFromParent(e) {
1935
1942
  super.onAddFromParent(e);
1936
- const t = this.commandManager.addCommandFlow(ae.commandName).add(this.createInterrupt()).add(this.constraint.bind(this)).add(this.viewAngle.bind(this));
1937
- t.writeOperationList = !1, t.addEventListener("finally", this.createFinally()), this.eventInput.addKeyCombination(ae.commandName, this.shortcutKeys), this.eventInput.addEventListener("codeChange", async () => {
1938
- this.eventInput.isKeyCombination(ae.commandName) && await this.commandManager.start(ae.commandName, [...this.default.selectLines]);
1943
+ const t = this.commandManager.addCommandFlow(se.commandName).add(this.createInterrupt()).add(this.constraint.bind(this)).add(this.viewAngle.bind(this));
1944
+ t.writeOperationList = !1, t.addEventListener("finally", this.createFinally()), this.eventInput.addKeyCombination(se.commandName, this.shortcutKeys), this.eventInput.addEventListener("codeChange", async () => {
1945
+ this.eventInput.isKeyCombination(se.commandName) && await this.commandManager.start(se.commandName, [...this.default.selectLines]);
1939
1946
  }), this.eventInput.addCancelDefaultBehavior(() => this.eventInput.isOnlyKeyDowns(this.shortcutKeys));
1940
1947
  }
1941
1948
  /**
1942
1949
  * 进入命令约束
1943
1950
  */
1944
1951
  constraint(e, t) {
1945
- Array.isArray(t) ? t.length !== 2 || !t[0].sameEndpoint(t[1]) ? (L({ message: "请选择两条具有端点相交的线段", type: "warning" }), this.cancel()) : e(t) : (L({ message: "进入命令失败", type: "warning" }), this.cancel());
1952
+ Array.isArray(t) ? t.length !== 2 || !t[0].sameEndpoint(t[1]) ? (k({ message: "请选择两条具有端点相交的线段", type: "warning" }), this.cancel()) : e(t) : (k({ message: "进入命令失败", type: "warning" }), this.cancel());
1946
1953
  }
1947
1954
  /**
1948
1955
  *
@@ -1950,38 +1957,35 @@ class ae extends O {
1950
1957
  * @param selectLines
1951
1958
  */
1952
1959
  viewAngle(e, t) {
1953
- const [n, s] = t, o = Math.min(0.5, n.length(), s.length());
1954
- let a, c, d, i = 0, r = 0;
1955
- n.sameEndpointAsStart(s) ? (a = n.start, c = n.end) : (a = n.end, c = n.start), s.sameEndpointAsStart(n) ? d = s.end : d = s.start;
1956
- function h(A, M) {
1957
- const b = M.x - A.x, F = M.y - A.y;
1958
- let W = Math.atan2(F, b) * (180 / Math.PI);
1959
- return W < 0 && (W += 360), W;
1960
+ const [n, o] = t, s = Math.min(n.length() * 0.8, o.length() * 0.8);
1961
+ let a, l, r, i = 0, c = 0;
1962
+ n.sameEndpointAsStart(o) ? (a = n.start, l = n.end) : (a = n.end, l = n.start), o.sameEndpointAsStart(n) ? r = o.end : r = o.start;
1963
+ function m(G, W) {
1964
+ const M = W.x - G.x, I = W.y - G.y;
1965
+ let x = Math.atan2(I, M) * (180 / Math.PI);
1966
+ return x < 0 && (x += 360), x;
1960
1967
  }
1961
- const y = h(a, c), f = h(a, d), p = Math.min(y, f), u = Math.max(y, f), E = [];
1962
- function x(A, M) {
1963
- for (let b = A; b <= M; b++) {
1964
- const F = Math.cos(b * Math.PI / 180) * o + a.x, W = Math.sin(b * Math.PI / 180) * o + a.y, he = Math.cos((b + 1) * Math.PI / 180) * o + a.x, Ce = Math.sin((b + 1) * Math.PI / 180) * o + a.y;
1965
- E.push(F, W, 0, he, Ce, 0);
1968
+ const w = m(a, l), f = m(a, r), u = Math.min(w, f), h = Math.max(w, f), E = [];
1969
+ function b(G, W) {
1970
+ for (let M = G; M <= W; M++) {
1971
+ const I = Math.cos(M * Math.PI / 180) * s + a.x, x = Math.sin(M * Math.PI / 180) * s + a.y, j = Math.cos((M + 1) * Math.PI / 180) * s + a.x, ie = Math.sin((M + 1) * Math.PI / 180) * s + a.y;
1972
+ E.push(I, x, 0, j, ie, 0);
1966
1973
  }
1967
1974
  }
1968
- u - p > 180 ? (x(0, p), x(u, 360), i = 360 - (u - p), r = (u + i / 2) % 360) : (x(p, u), i = u - p, r = p + i / 2);
1969
- const k = new m.LineSegments();
1970
- k.geometry = this.renderManager.createGeometry({
1975
+ h - u > 180 ? (b(0, u), b(h, 360), i = 360 - (h - u), c = (h + i / 2) % 360) : (b(u, h), i = h - u, c = u + i / 2);
1976
+ const D = new p.LineSegments();
1977
+ D.geometry = this.renderManager.createGeometry({
1971
1978
  position: E
1972
- }, E.length / 3), k.material = new m.LineBasicMaterial({ color: 16711935 }), this.renderManager.container.add(k);
1973
- const z = Math.cos(r * Math.PI / 180) * o + a.x, Y = Math.sin(r * Math.PI / 180) * o + a.y, Z = this.renderer.createText(Number(i.toFixed(2)), new m.Vector3(z, Y, 0), {
1979
+ }, E.length / 3), D.material = new p.LineBasicMaterial({ color: 16711935 }), this.renderManager.container.add(D);
1980
+ const F = Math.cos(c * Math.PI / 180) * s + a.x, Z = Math.sin(c * Math.PI / 180) * s + a.y;
1981
+ this.renderer.createText(Number(i.toFixed(2)), new p.Vector3(F, Z, 0), {
1974
1982
  textShadow: "0px 0px 2px #000"
1975
- }, this.renderManager.container);
1976
- let G = 0;
1977
- this.addEventRecord("clear").add(() => k.removeFromParent()).add(() => Z.removeFromParent()).add(this.eventInput.addEventListener("codeChange", () => {
1978
- this.eventInput.isOnlyKeyDown("enter") ? e() : this.eventInput.isOnlyKeyDown("mouse_0") && (G++, G === 1 ? setTimeout(() => G = 0, 500) : G === 2 && (e(), G = 0));
1979
- }));
1983
+ }, this.renderManager.container), this.addEventRecord("clear"), e();
1980
1984
  }
1981
1985
  }
1982
- class dt extends O {
1986
+ class rt extends O {
1983
1987
  static name = "ClippingLine";
1984
- container = new m.Group();
1988
+ container = new p.Group();
1985
1989
  shortcutKeys = ["control", "x"];
1986
1990
  commandName = "clippingLine";
1987
1991
  static commandName = "clippingLine";
@@ -1994,24 +1998,24 @@ class dt extends O {
1994
1998
  * @param next
1995
1999
  */
1996
2000
  selectPointStart(e) {
1997
- let t = null, n = new m.Mesh(new m.SphereGeometry(0.04), new m.MeshBasicMaterial({ color: 16711935 })), s = null;
2001
+ let t = null, n = this.renderer.createCircle(L.zero(), { color: 16711935 }), o = null;
1998
2002
  this.addEventRecord("selectPointStart").add(this.editor.addEventListener("pointerPositionChange", () => {
1999
- const { point: o, line: a, find: c } = this.editor.renderManager.adsorption();
2000
- this.dispatchEvent({ type: "pointerMove", point: o }), c ? (this.domElement.style.cursor = "none", n.position.copy(o), s = a, t = o.clone(), this.container.add(n)) : (this.domElement.style.cursor = "no-drop", t = null, n.removeFromParent());
2003
+ const { point: s, line: a, find: l } = this.editor.renderManager.adsorption();
2004
+ this.dispatchEvent({ type: "pointerMove", point: s }), l ? (this.domElement.style.cursor = "none", n.position.copy(s), o = a, t = s.clone(), this.container.add(n)) : (this.domElement.style.cursor = "no-drop", t = null, n.removeFromParent());
2001
2005
  })).add(this.eventInput.addEventListener("codeChange", () => {
2002
- this.eventInput.isKeyDown("mouse_0") && t && (this.canceEventRecord("selectPointStart"), e({ point: t, line: s }));
2006
+ this.eventInput.isKeyDown("mouse_0") && t && (this.canceEventRecord("selectPointStart"), e({ point: t, line: o }));
2003
2007
  })), this.addEventRecord("clear").add(() => n.removeFromParent());
2004
2008
  }
2005
2009
  /** 选择结束点
2006
2010
  * @param next
2007
2011
  */
2008
2012
  selectPointEnd(e, { point: t, line: n }) {
2009
- let s = null, o = new m.Mesh(new m.SphereGeometry(0.04), new m.MeshBasicMaterial({ color: 16711935 }));
2010
- this.addEventRecord("clear").add(() => o.removeFromParent()).add(this.editor.addEventListener("pointerPositionChange", () => {
2011
- const { point: a, find: c, line: d } = this.editor.renderManager.adsorption();
2012
- this.dispatchEvent({ type: "pointerMove", point: a }), c && d === n ? (this.domElement.style.cursor = "none", o.position.copy(a), s = a.clone(), this.container.add(o)) : (this.domElement.style.cursor = "no-drop", s = null, o.removeFromParent());
2013
+ let o = null, s = this.renderer.createCircle(L.zero(), { color: 16711935 });
2014
+ this.addEventRecord("clear").add(() => s.removeFromParent()).add(this.editor.addEventListener("pointerPositionChange", () => {
2015
+ const { point: a, find: l, line: r } = this.editor.renderManager.adsorption();
2016
+ this.dispatchEvent({ type: "pointerMove", point: a }), l && r === n ? (this.domElement.style.cursor = "none", s.position.copy(a), o = a.clone(), this.container.add(s)) : (this.domElement.style.cursor = "no-drop", o = null, s.removeFromParent());
2013
2017
  })).add(this.eventInput.addEventListener("codeChange", () => {
2014
- this.eventInput.isKeyDown("mouse_0") && s && e({ line: n, start: t, end: s });
2018
+ this.eventInput.isKeyDown("mouse_0") && o && e({ line: n, start: t, end: o });
2015
2019
  }));
2016
2020
  }
2017
2021
  /**
@@ -2019,17 +2023,17 @@ class dt extends O {
2019
2023
  * @param next
2020
2024
  * @param points
2021
2025
  */
2022
- end(e, { start: t, end: n, line: s }) {
2023
- const o = _.from(t), a = _.from(n);
2026
+ end(e, { start: t, end: n, line: o }) {
2027
+ const s = L.from(t), a = L.from(n);
2024
2028
  e({
2025
- oldLine: s,
2029
+ oldLine: o,
2026
2030
  newLine1: new B(
2027
- s.start,
2028
- s.start.distance(o) < s.start.distance(a) ? o.clone() : a.clone()
2031
+ o.start,
2032
+ o.start.distance(s) < o.start.distance(a) ? s.clone() : a.clone()
2029
2033
  ),
2030
2034
  newLine2: new B(
2031
- s.end,
2032
- s.end.distance(o) < s.end.distance(a) ? o.clone() : a.clone()
2035
+ o.end,
2036
+ o.end.distance(s) < o.end.distance(a) ? s.clone() : a.clone()
2033
2037
  )
2034
2038
  });
2035
2039
  }
@@ -2052,22 +2056,22 @@ class dt extends O {
2052
2056
  return this.completed(e), e;
2053
2057
  }
2054
2058
  }
2055
- class ie extends O {
2059
+ class ae extends O {
2056
2060
  static name = "VerticalReferenceLine";
2057
2061
  shortcutKeys = ["v"];
2058
2062
  static commandName = "VerticalReferenceLine";
2059
2063
  onAddFromParent(e) {
2060
2064
  super.onAddFromParent(e);
2061
- const t = this.commandManager.addCommandFlow(ie.commandName).add(this.createInterrupt()).add(this.constraint.bind(this)).add(this.verticalReferenceLine.bind(this));
2062
- t.writeOperationList = !1, t.addEventListener("finally", this.createFinally()), this.eventInput.addKeyCombination(ie.commandName, this.shortcutKeys), this.eventInput.addEventListener("codeChange", async () => {
2063
- this.eventInput.isKeyCombination(ie.commandName) && await this.commandManager.start(ie.commandName, [...this.default.selectLines]);
2065
+ const t = this.commandManager.addCommandFlow(ae.commandName).add(this.createInterrupt()).add(this.constraint.bind(this)).add(this.verticalReferenceLine.bind(this));
2066
+ t.writeOperationList = !1, t.addEventListener("finally", this.createFinally()), this.eventInput.addKeyCombination(ae.commandName, this.shortcutKeys), this.eventInput.addEventListener("codeChange", async () => {
2067
+ this.eventInput.isKeyCombination(ae.commandName) && await this.commandManager.start(ae.commandName, [...this.default.selectLines]);
2064
2068
  }), this.eventInput.addCancelDefaultBehavior(() => this.eventInput.isOnlyKeyDowns(this.shortcutKeys));
2065
2069
  }
2066
2070
  /**
2067
2071
  * 进入命令约束
2068
2072
  */
2069
2073
  constraint(e, t) {
2070
- Array.isArray(t) ? t.length !== 1 ? (L({ message: "请选择一条墙壁线段", type: "warning" }), this.cancel()) : t[0].userData.isDoor ? (L({ message: "请选择一条墙壁线段", type: "warning" }), this.cancel()) : e(t) : (L({ message: "进入命令失败", type: "warning" }), this.cancel());
2074
+ Array.isArray(t) ? t.length !== 1 ? (k({ message: "请选择一条墙壁线段", type: "warning" }), this.cancel()) : t[0].userData.isDoor ? (k({ message: "请选择一条墙壁线段", type: "warning" }), this.cancel()) : e(t) : (k({ message: "进入命令失败", type: "warning" }), this.cancel());
2071
2075
  }
2072
2076
  /**
2073
2077
  *
@@ -2080,67 +2084,67 @@ class ie extends O {
2080
2084
  }), t[0].userData.isVerticalReferenceLine = !0, e(), this.renderManager.draw();
2081
2085
  }
2082
2086
  }
2083
- const is = {
2087
+ const ro = {
2084
2088
  key: 0,
2085
2089
  class: "mt-[5px] text-[#ccc] text-[11px] absolute left-[10px] bottom-[10px] rounded-[8px] min-w-[150px] bg-black/15 p-[10px]"
2086
- }, rs = { class: "text-start max-w-[150px]" }, ds = { class: "inline-block ml-[10px] text-[var(--color-primary)]" }, ls = {
2090
+ }, lo = { class: "text-start max-w-[150px]" }, co = { class: "inline-block ml-[10px] text-[var(--color-primary)]" }, mo = {
2087
2091
  key: 0,
2088
2092
  class: "p-[5px] max-w-[200px]"
2089
- }, cs = { class: "text-[14px] flex flex-col" }, ms = ["onClick"], hs = { class: "flex flex-row items-center" }, us = { class: "flex justify-center items-center size-[20px] bg-[#f0f0f0] rounded-[2px] mr-[10px]" }, ps = ["src"], gs = { class: "text-wrap" }, vs = {
2093
+ }, ho = { class: "text-[14px] flex flex-col" }, uo = ["onClick"], po = { class: "flex flex-row items-center" }, go = { class: "flex justify-center items-center size-[20px] bg-[#f0f0f0] rounded-[2px] mr-[10px]" }, vo = ["src"], fo = { class: "text-wrap" }, yo = {
2090
2094
  key: 1,
2091
2095
  class: "text-[#999]"
2092
- }, fs = {
2096
+ }, wo = {
2093
2097
  style: { "--el-color-primary": "var(--primary-color)" },
2094
2098
  class: "flex flex-row items-center justify-between gap-[10px] mt-[10px] text-[10px]"
2095
- }, ws = {
2099
+ }, bo = {
2096
2100
  key: 0,
2097
2101
  class: "flex flex-row items-center flex-wrap justify-between gap-[10px] mt-[10px] text-[10px]"
2098
- }, ys = { class: "flex-wrap border-t-1 border-t-[#eee] mt-[5px] pt-[5px] flex items-center gap-[10px]" }, bs = ["onClick", "title"], xs = ["src"], Cs = /* @__PURE__ */ me({
2102
+ }, xo = { class: "flex-wrap border-t-1 border-t-[#eee] mt-[5px] pt-[5px] flex items-center gap-[10px]" }, Co = ["onClick", "title"], Eo = ["src"], Lo = /* @__PURE__ */ me({
2099
2103
  __name: "EditorTool",
2100
2104
  props: {
2101
2105
  dxfSystem: {},
2102
2106
  permission: {}
2103
2107
  },
2104
- setup(l) {
2105
- function e(C, g, w = h.value.getBoundingClientRect(), U = y.value.getBoundingClientRect()) {
2106
- const ue = w.width - U.width, pe = 0, Me = w.height - U.height;
2107
- C = Math.max(0, Math.min(C, ue)), g = Math.max(pe, Math.min(g, Me)), A.value = { left: C, top: g };
2108
+ setup(d) {
2109
+ function e(C, g, y = m.value.getBoundingClientRect(), U = w.value.getBoundingClientRect()) {
2110
+ const he = y.width - U.width, ue = 0, Ee = y.height - U.height;
2111
+ C = Math.max(0, Math.min(C, he)), g = Math.max(ue, Math.min(g, Ee)), M.value = { left: C, top: g };
2108
2112
  }
2109
2113
  function t(C) {
2110
- p.value === C.command || p.value !== "default" || x.commandManager.start(C.command);
2114
+ u.value === C.command || u.value !== "default" || b.commandManager.start(C.command);
2111
2115
  }
2112
2116
  function n(C) {
2113
2117
  if (C) {
2114
2118
  localStorage.setItem("lines", JSON.stringify(C));
2115
2119
  try {
2116
- u.Dxf.set(C), u.Dxf.lineOffset();
2120
+ h.Dxf.set(C), h.Dxf.lineOffset();
2117
2121
  } catch (g) {
2118
2122
  console.log(g);
2119
2123
  }
2120
2124
  }
2121
2125
  }
2122
- async function s() {
2126
+ async function o() {
2123
2127
  const C = await Dt.json();
2124
2128
  Array.isArray(C) && (localStorage.removeItem("orbitControls"), n(C));
2125
2129
  }
2126
- function o({ offsetX: C, offsetY: g }) {
2130
+ function s({ offsetX: C, offsetY: g }) {
2127
2131
  E.mouseMoveEventProxylock = !0;
2128
- const w = document.body.style.cursor;
2132
+ const y = document.body.style.cursor;
2129
2133
  document.body.style.cursor = "move";
2130
- const U = (ue) => {
2131
- const pe = h.value.getBoundingClientRect(), Me = y.value.getBoundingClientRect();
2134
+ const U = (he) => {
2135
+ const ue = m.value.getBoundingClientRect(), Ee = w.value.getBoundingClientRect();
2132
2136
  e(
2133
- ue.pageX - pe.left - C,
2134
- ue.pageY - pe.top - g,
2135
- pe,
2136
- Me
2137
- ), ue.stopPropagation(), document.body.style.cursor = "move";
2138
- }, Ee = () => {
2139
- document.body.removeEventListener("mousemove", U), document.removeEventListener("mouseup", Ee), document.body.style.cursor = w, E.mouseMoveEventProxylock = !1;
2137
+ he.pageX - ue.left - C,
2138
+ he.pageY - ue.top - g,
2139
+ ue,
2140
+ Ee
2141
+ ), he.stopPropagation(), document.body.style.cursor = "move";
2142
+ }, Ce = () => {
2143
+ document.body.removeEventListener("mousemove", U), document.removeEventListener("mouseup", Ce), document.body.style.cursor = y, E.mouseMoveEventProxylock = !1;
2140
2144
  };
2141
- document.body.addEventListener("mousemove", U), document.addEventListener("mouseup", Ee);
2145
+ document.body.addEventListener("mousemove", U), document.addEventListener("mouseup", Ce);
2142
2146
  }
2143
- const a = l, c = S(!0), d = S(!0), i = S(!0), r = S(!1), h = S(), y = S(), f = S(!0), p = S(""), u = Ot(a.dxfSystem), E = u.findComponentByType(Pt), x = u.findComponentByType(lt), k = u.findComponentByType(rt), z = u.findComponentByType(St), Y = u.findComponentByType(_t), Z = S(0), G = S(0), A = S({ left: 10, top: 100 }), M = /* @__PURE__ */ Object.assign({ "./assets/images/angle.svg": En, "./assets/images/connection.svg": Ln, "./assets/images/cutLine.svg": In, "./assets/images/deleteSelectLine.svg": Dn, "./assets/images/deleteSelectWindow.svg": Sn, "./assets/images/door.svg": Bn, "./assets/images/intersectionConnection.svg": Rn, "./assets/images/line.svg": Fn, "./assets/images/mergeLine.svg": zn, "./assets/images/revokeRollback.svg": jn, "./assets/images/rollback.svg": Gn, "./assets/images/selectAll.svg": Hn, "./assets/images/selectPoint.svg": Jn, "./assets/images/verticalCorrection.svg": qn, "./assets/images/verticalLine.svg": Yn, "./assets/images/window.svg": $n }), b = S(!1), F = S(0), W = S(!1), he = new ResizeObserver(() => e(A.value.left, A.value.top)), Ce = [
2147
+ const a = d, l = _(!0), r = _(!0), i = _(!0), c = _(!1), m = _(), w = _(), f = _(!0), u = _(""), h = zt(a.dxfSystem), E = h.findComponentByType(Pt), b = h.findComponentByType(dt), D = h.findComponentByType(it), F = h.findComponentByType(_t), Z = h.findComponentByType(Bt), G = _(0), W = _(0), M = _({ left: 10, top: 100 }), I = /* @__PURE__ */ Object.assign({ "./assets/images/angle.svg": Ln, "./assets/images/connection.svg": kn, "./assets/images/cutLine.svg": Pn, "./assets/images/deleteSelectLine.svg": An, "./assets/images/deleteSelectWindow.svg": _n, "./assets/images/door.svg": Nn, "./assets/images/intersectionConnection.svg": On, "./assets/images/line.svg": Fn, "./assets/images/mergeLine.svg": Tn, "./assets/images/revokeRollback.svg": jn, "./assets/images/rollback.svg": Qn, "./assets/images/selectAll.svg": Wn, "./assets/images/selectPoint.svg": Un, "./assets/images/verticalCorrection.svg": Zn, "./assets/images/verticalLine.svg": Xn, "./assets/images/window.svg": eo }), x = _(!1), j = _(0), ie = _(!1), xe = new ResizeObserver(() => e(M.value.left, M.value.top)), lt = [
2144
2148
  { name: "开启绘制线段命令", shortcut: "Ctrl + L" },
2145
2149
  { name: "开启绘制门线命令", shortcut: "Ctrl + M" },
2146
2150
  { name: "开启绘制窗户线命令", shortcut: "Ctrl + Q" },
@@ -2170,7 +2174,7 @@ const is = {
2170
2174
  {
2171
2175
  command: "draw-line",
2172
2176
  name: "绘制线段",
2173
- src: M["./assets/images/line.svg"].default,
2177
+ src: I["./assets/images/line.svg"].default,
2174
2178
  show: !0,
2175
2179
  shortcut: "Ctrl + L"
2176
2180
  },
@@ -2178,182 +2182,182 @@ const is = {
2178
2182
  command: "draw-door-line",
2179
2183
  name: "绘制门线",
2180
2184
  show: !0,
2181
- src: M["./assets/images/door.svg"].default,
2185
+ src: I["./assets/images/door.svg"].default,
2182
2186
  shortcut: "Ctrl + M"
2183
2187
  },
2184
2188
  {
2185
2189
  command: "draw-window-line",
2186
2190
  name: "绘制窗户线",
2187
2191
  show: !0,
2188
- src: M["./assets/images/window.svg"].default,
2192
+ src: I["./assets/images/window.svg"].default,
2189
2193
  shortcut: "Ctrl + Q"
2190
2194
  },
2191
2195
  {
2192
2196
  command: "point",
2193
2197
  name: "点修改",
2194
2198
  show: !0,
2195
- src: M["./assets/images/selectPoint.svg"].default,
2199
+ src: I["./assets/images/selectPoint.svg"].default,
2196
2200
  shortcut: "Ctrl + P"
2197
2201
  },
2198
2202
  {
2199
- command: dt.commandName,
2203
+ command: rt.commandName,
2200
2204
  name: "裁剪线段",
2201
2205
  show: !0,
2202
- src: M["./assets/images/cutLine.svg"].default,
2206
+ src: I["./assets/images/cutLine.svg"].default,
2203
2207
  shortcut: "Ctrl + X"
2204
2208
  }
2205
2209
  ], mt = [
2206
2210
  {
2207
2211
  command: "",
2208
2212
  name: "操作回滚",
2209
- src: M["./assets/images/rollback.svg"].default,
2210
- show: D(() => Z.value !== 0),
2213
+ src: I["./assets/images/rollback.svg"].default,
2214
+ show: S(() => G.value !== 0),
2211
2215
  shortcut: "Ctrl + Z",
2212
2216
  action() {
2213
- x.commandManager.rollback();
2217
+ b.commandManager.rollback();
2214
2218
  }
2215
2219
  },
2216
2220
  {
2217
2221
  command: "",
2218
2222
  name: "撤销操作回滚",
2219
- src: M["./assets/images/revokeRollback.svg"].default,
2220
- show: D(() => G.value !== 0),
2223
+ src: I["./assets/images/revokeRollback.svg"].default,
2224
+ show: S(() => W.value !== 0),
2221
2225
  shortcut: "Ctrl + Y",
2222
2226
  class: "rotateY-[180deg]",
2223
2227
  action() {
2224
- x.commandManager.revokeRollback();
2228
+ b.commandManager.revokeRollback();
2225
2229
  }
2226
2230
  },
2227
2231
  {
2228
- command: $.commandName,
2232
+ command: X.commandName,
2229
2233
  name: "合并",
2230
- src: M["./assets/images/mergeLine.svg"].default,
2231
- show: D(() => F.value === 2),
2234
+ src: I["./assets/images/mergeLine.svg"].default,
2235
+ show: S(() => j.value === 2),
2232
2236
  shortcut: "Ctrl + G"
2233
2237
  },
2234
2238
  {
2235
- command: te.commandName,
2239
+ command: ee.commandName,
2236
2240
  name: "两点连接",
2237
- show: D(() => F.value === 2),
2238
- src: M["./assets/images/connection.svg"].default,
2241
+ show: S(() => j.value === 2),
2242
+ src: I["./assets/images/connection.svg"].default,
2239
2243
  shortcut: "Shift + L"
2240
2244
  },
2241
2245
  {
2242
- command: ne.commandName,
2246
+ command: te.commandName,
2243
2247
  name: "延长线交点连接",
2244
- show: D(() => F.value === 2),
2245
- src: M["./assets/images/intersectionConnection.svg"].default,
2248
+ show: S(() => j.value === 2),
2249
+ src: I["./assets/images/intersectionConnection.svg"].default,
2246
2250
  shortcut: "Ctrl + Shift + L"
2247
2251
  },
2248
2252
  {
2249
2253
  command: le.commandName,
2250
2254
  name: "线段垂直纠正",
2251
- show: D(() => F.value === 1),
2252
- src: M["./assets/images/verticalCorrection.svg"].default,
2255
+ show: S(() => j.value === 1),
2256
+ src: I["./assets/images/verticalCorrection.svg"].default,
2253
2257
  shortcut: `
2254
2258
  Ctrl + C 垂直纠正
2255
2259
  Shift + C 轴对齐垂直纠正
2256
2260
  `
2257
2261
  },
2258
2262
  {
2259
- command: ie.commandName,
2263
+ command: ae.commandName,
2260
2264
  name: "y轴垂直基准线",
2261
- show: D(
2262
- () => F.value === 1 && !k.selectLines[0].userData.isDoor
2265
+ show: S(
2266
+ () => j.value === 1 && !D.selectLines[0].userData.isDoor
2263
2267
  ),
2264
- src: M["./assets/images/verticalLine.svg"].default,
2268
+ src: I["./assets/images/verticalLine.svg"].default,
2265
2269
  shortcut: "V"
2266
2270
  },
2267
2271
  {
2268
- command: ae.commandName,
2272
+ command: se.commandName,
2269
2273
  name: "角度显示",
2270
- show: D(() => F.value === 2 && k.selectLines[0].sameEndpoint(k.selectLines[1])),
2271
- src: M["./assets/images/angle.svg"].default,
2274
+ show: S(() => j.value === 2 && D.selectLines[0].sameEndpoint(D.selectLines[1])),
2275
+ src: I["./assets/images/angle.svg"].default,
2272
2276
  shortcut: "r"
2273
2277
  },
2274
2278
  {
2275
2279
  command: oe.commandName,
2276
2280
  name: "全选",
2277
- show: D(() => F.value !== x.renderManager.lines.length),
2278
- src: M["./assets/images/selectAll.svg"].default,
2281
+ show: S(() => j.value !== b.renderManager.lines.length),
2282
+ src: I["./assets/images/selectAll.svg"].default,
2279
2283
  shortcut: "Ctrl + A"
2280
2284
  },
2281
2285
  {
2282
- command: se.commandName,
2286
+ command: ne.commandName,
2283
2287
  name: "清除窗户",
2284
- show: D(() => W.value),
2285
- src: M["./assets/images/deleteSelectWindow.svg"].default,
2288
+ show: S(() => ie.value),
2289
+ src: I["./assets/images/deleteSelectWindow.svg"].default,
2286
2290
  shortcut: "Q + Delete"
2287
2291
  },
2288
2292
  {
2289
- command: ee.commandName,
2293
+ command: $.commandName,
2290
2294
  name: "删除",
2291
- show: D(() => F.value > 0),
2292
- src: M["./assets/images/deleteSelectLine.svg"].default,
2295
+ show: S(() => j.value > 0),
2296
+ src: I["./assets/images/deleteSelectLine.svg"].default,
2293
2297
  shortcut: "Delete"
2294
2298
  }
2295
2299
  ];
2296
- J(A, () => localStorage.setItem("editorToolPosition", JSON.stringify(A.value))), J(b, () => localStorage.setItem("showShortcutKey", b.value + "")), J(f, () => {
2297
- localStorage.setItem("toolBarExpand", f.value + ""), f.value && ye(() => e(A.value.left, A.value.top));
2298
- }), J(c, () => u.Variable.set("originalLineVisible", c.value)), J(d, () => u.Variable.set("dxfVisible", d.value)), J(i, () => u.Variable.set("whiteModelVisible", i.value)), u.Variable.addEventListener("isLook", (C) => r.value = C.value), u.Variable.addEventListener("originalLineVisible", (C) => c.value = C.value), u.Variable.addEventListener("dxfVisible", (C) => d.value = C.value), u.Variable.addEventListener("whiteModelVisible", (C) => i.value = C.value);
2299
- const ht = x.commandManager.addEventListener("started", (C) => {
2300
- p.value = C.name;
2300
+ J(M, () => localStorage.setItem("editorToolPosition", JSON.stringify(M.value))), J(x, () => localStorage.setItem("showShortcutKey", x.value + "")), J(f, () => {
2301
+ localStorage.setItem("toolBarExpand", f.value + ""), f.value && ye(() => e(M.value.left, M.value.top));
2302
+ }), J(l, () => h.Variable.set("originalLineVisible", l.value)), J(r, () => h.Variable.set("dxfVisible", r.value)), J(i, () => h.Variable.set("whiteModelVisible", i.value)), h.Variable.addEventListener("isLook", (C) => c.value = C.value), h.Variable.addEventListener("originalLineVisible", (C) => l.value = C.value), h.Variable.addEventListener("dxfVisible", (C) => r.value = C.value), h.Variable.addEventListener("whiteModelVisible", (C) => i.value = C.value);
2303
+ const ht = b.commandManager.addEventListener("started", (C) => {
2304
+ u.value = C.name;
2301
2305
  });
2302
- return localStorage.getItem("showShortcutKey") && (b.value = localStorage.getItem("showShortcutKey") === "true"), localStorage.getItem("toolBarExpand") && (f.value = localStorage.getItem("toolBarExpand") === "true"), tt(() => {
2303
- y.value.style.display = "none", setTimeout(() => {
2304
- if (y.value.style.display = "block", localStorage.getItem("editorToolPosition")) {
2306
+ return localStorage.getItem("showShortcutKey") && (x.value = localStorage.getItem("showShortcutKey") === "true"), localStorage.getItem("toolBarExpand") && (f.value = localStorage.getItem("toolBarExpand") === "true"), et(() => {
2307
+ w.value.style.display = "none", setTimeout(() => {
2308
+ if (w.value.style.display = "block", localStorage.getItem("editorToolPosition")) {
2305
2309
  const { left: C, top: g } = JSON.parse(localStorage.getItem("editorToolPosition") ?? "{}");
2306
- e(C, g), ye(() => he.observe(h.value));
2310
+ e(C, g), ye(() => xe.observe(m.value));
2307
2311
  } else
2308
- ye(() => he.observe(h.value));
2309
- }, 100), k.addEventListener("selectLineChange", () => {
2310
- F.value = k.selectLines.length, W.value = k.selectLines.some((C) => C.userData.isWindow);
2312
+ ye(() => xe.observe(m.value));
2313
+ }, 100), D.addEventListener("selectLineChange", () => {
2314
+ j.value = D.selectLines.length, ie.value = D.selectLines.some((C) => C.userData.isWindow);
2311
2315
  }), ["rollback", "completed", "revokeRollback"].forEach((C) => {
2312
- x.commandManager.addEventListener(C, () => {
2316
+ b.commandManager.addEventListener(C, () => {
2313
2317
  setTimeout(() => {
2314
- Z.value = x.commandManager.operationList.length, G.value = x.commandManager.rollbackList.length;
2318
+ G.value = b.commandManager.operationList.length, W.value = b.commandManager.rollbackList.length;
2315
2319
  });
2316
2320
  });
2317
2321
  });
2318
2322
  }), Ft(() => {
2319
- E.mouseMoveEventProxylock = !1, ht(), he.disconnect();
2320
- }), (C, g) => (P(), R("div", {
2323
+ E.mouseMoveEventProxylock = !1, ht(), xe.disconnect();
2324
+ }), (C, g) => (A(), R("div", {
2321
2325
  ref_key: "elRef",
2322
- ref: h,
2326
+ ref: m,
2323
2327
  class: "editorTool pointer-events-none overflow-hidden absolute left-0 top-0 w-full h-full z-[20] flex flex-row justify-between p-[5px] box-border select-none pointer-events-[all]"
2324
2328
  }, [
2325
- K(xe, null, {
2326
- default: j(() => [
2327
- b.value ? (P(), R("div", is, [
2328
- (P(), R(ve, null, Ie(Ce, (w) => I("div", {
2329
+ z(be, null, {
2330
+ default: T(() => [
2331
+ x.value ? (A(), R("div", ro, [
2332
+ (A(), R(ge, null, Me(lt, (y) => P("div", {
2329
2333
  class: "p-[4px_0px] flex justify-between text-right border-b-1 border-b-[rgba(255,255,255,0.1)] last-of-type:border-b-0",
2330
- key: w.name
2334
+ key: y.name
2331
2335
  }, [
2332
- I("p", rs, de(w.name), 1),
2333
- I("span", ds, de(w.shortcut), 1)
2336
+ P("p", lo, de(y.name), 1),
2337
+ P("span", co, de(y.shortcut), 1)
2334
2338
  ])), 64))
2335
2339
  ])) : q("", !0)
2336
2340
  ]),
2337
2341
  _: 1
2338
2342
  }),
2339
- I("div", {
2343
+ P("div", {
2340
2344
  ref_key: "toolBarRef",
2341
- ref: y,
2342
- style: _e({ left: A.value.left + "px", top: A.value.top + "px" }),
2345
+ ref: w,
2346
+ style: Ae({ left: M.value.left + "px", top: M.value.top + "px" }),
2343
2347
  class: V(["overflow-hidden pointer-events-auto w-fit max-w-[260px] transition-[border-radius] text-[#333] absolute z-[11] bg-white select-none", { "rounded-[8px] ": f.value }]),
2344
- onMousedown: g[10] || (g[10] = (w) => w.stopPropagation())
2348
+ onMousedown: g[10] || (g[10] = (y) => y.stopPropagation())
2345
2349
  }, [
2346
- I("div", {
2347
- onMousedown: o,
2350
+ P("div", {
2351
+ onMousedown: s,
2348
2352
  class: V([{ "border-b-[#eee] border-b-1": f.value }, "flex flex-row justify-between header text-[14px] font-bold p-[10px 0px]"])
2349
2353
  }, [
2350
- g[12] || (g[12] = Kt('<div class="flex flex-row" data-v-39e8b14c><div class="p-[2px_5px] flex items-center pointer-events-none" data-v-39e8b14c><svg fill="#aaa" width="20" height="20" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" data-v-39e8b14c><path d="M341.333333 298.666667a85.333333 85.333333 0 1 0 0-170.666667 85.333333 85.333333 0 0 0 0 170.666667z m0 298.666666a85.333333 85.333333 0 1 0 0-170.666666 85.333333 85.333333 0 0 0 0 170.666666z m85.333334 213.333334a85.333333 85.333333 0 1 1-170.666667 0 85.333333 85.333333 0 0 1 170.666667 0z m256-512a85.333333 85.333333 0 1 0 0-170.666667 85.333333 85.333333 0 0 0 0 170.666667z m85.333333 213.333333a85.333333 85.333333 0 1 1-170.666667 0 85.333333 85.333333 0 0 1 170.666667 0z m-85.333333 384a85.333333 85.333333 0 1 0 0-170.666667 85.333333 85.333333 0 0 0 0 170.666667z" data-v-39e8b14c></path></svg></div><h5 class="flex text-nowrap text-[12px] items-center pointer-events-none" data-v-39e8b14c>绘制工具</h5></div>', 1)),
2351
- I("div", {
2352
- onMousedown: g[0] || (g[0] = (w) => w.stopPropagation()),
2353
- onClick: g[1] || (g[1] = (w) => f.value = !f.value),
2354
+ g[12] || (g[12] = Kt('<div class="flex flex-row" data-v-c0568cc8><div class="p-[2px_5px] flex items-center pointer-events-none" data-v-c0568cc8><svg fill="#aaa" width="20" height="20" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" data-v-c0568cc8><path d="M341.333333 298.666667a85.333333 85.333333 0 1 0 0-170.666667 85.333333 85.333333 0 0 0 0 170.666667z m0 298.666666a85.333333 85.333333 0 1 0 0-170.666666 85.333333 85.333333 0 0 0 0 170.666666z m85.333334 213.333334a85.333333 85.333333 0 1 1-170.666667 0 85.333333 85.333333 0 0 1 170.666667 0z m256-512a85.333333 85.333333 0 1 0 0-170.666667 85.333333 85.333333 0 0 0 0 170.666667z m85.333333 213.333333a85.333333 85.333333 0 1 1-170.666667 0 85.333333 85.333333 0 0 1 170.666667 0z m-85.333333 384a85.333333 85.333333 0 1 0 0-170.666667 85.333333 85.333333 0 0 0 0 170.666667z" data-v-c0568cc8></path></svg></div><h5 class="flex text-nowrap text-[12px] items-center pointer-events-none" data-v-c0568cc8>绘制工具</h5></div>', 1)),
2355
+ P("div", {
2356
+ onMousedown: g[0] || (g[0] = (y) => y.stopPropagation()),
2357
+ onClick: g[1] || (g[1] = (y) => f.value = !f.value),
2354
2358
  class: "cursor-pointer flex items-center p-[0px_5px]"
2355
2359
  }, [
2356
- (P(), R("svg", {
2360
+ (A(), R("svg", {
2357
2361
  fill: "#666",
2358
2362
  class: V([{ "rotate-90": f.value }, "transition-all"]),
2359
2363
  viewBox: "0 0 1024 1024",
@@ -2362,41 +2366,41 @@ const is = {
2362
2366
  width: "12",
2363
2367
  height: "12"
2364
2368
  }, g[11] || (g[11] = [
2365
- I("path", { d: "M315.050667 938.666667a60.757333 60.757333 0 0 0 41.813333-16.298667L750.933333 551.338667a53.418667 53.418667 0 0 0 0-78.677334L356.864 101.632a61.696 61.696 0 0 0-83.541333 0 53.418667 53.418667 0 0 0-0.256 78.677333L625.408 512 273.066667 843.690667a53.418667 53.418667 0 0 0 0 78.677333 60.757333 60.757333 0 0 0 41.984 16.298667z" }, null, -1)
2369
+ P("path", { d: "M315.050667 938.666667a60.757333 60.757333 0 0 0 41.813333-16.298667L750.933333 551.338667a53.418667 53.418667 0 0 0 0-78.677334L356.864 101.632a61.696 61.696 0 0 0-83.541333 0 53.418667 53.418667 0 0 0-0.256 78.677333L625.408 512 273.066667 843.690667a53.418667 53.418667 0 0 0 0 78.677333 60.757333 60.757333 0 0 0 41.984 16.298667z" }, null, -1)
2366
2370
  ]), 2))
2367
2371
  ], 32)
2368
2372
  ], 34),
2369
- f.value ? (P(), R("div", ls, [
2370
- I("ul", cs, [
2371
- (P(), R(ve, null, Ie(ct, (w) => (P(), R(ve, {
2372
- key: w.command
2373
+ f.value ? (A(), R("div", mo, [
2374
+ P("ul", ho, [
2375
+ (A(), R(ge, null, Me(ct, (y) => (A(), R(ge, {
2376
+ key: y.command
2373
2377
  }, [
2374
- w.show ? (P(), R("li", {
2378
+ y.show ? (A(), R("li", {
2375
2379
  key: 0,
2376
- onClick: (U) => t(w),
2380
+ onClick: (U) => t(y),
2377
2381
  class: V([{
2378
- "!bg-[var(--primary-color)] text-[#fff]": p.value === w.command,
2379
- "!cursor-no-drop": p.value !== w.command && p.value !== "default"
2382
+ "!bg-[var(--primary-color)] text-[#fff]": u.value === y.command,
2383
+ "!cursor-no-drop": u.value !== y.command && u.value !== "default"
2380
2384
  }, "gap-[10px] text-[12px] hover:bg-[#ddd] transition-all rounded-[6px] p-[5px] flex flex-row items-center justify-between cursor-pointer"])
2381
2385
  }, [
2382
- I("div", hs, [
2383
- I("div", us, [
2384
- I("img", {
2386
+ P("div", po, [
2387
+ P("div", go, [
2388
+ P("img", {
2385
2389
  class: "size-[14px]",
2386
- src: w.src,
2390
+ src: y.src,
2387
2391
  alt: "",
2388
2392
  srcset: ""
2389
- }, null, 8, ps)
2393
+ }, null, 8, vo)
2390
2394
  ]),
2391
- I("span", gs, de(w.name), 1)
2395
+ P("span", fo, de(y.name), 1)
2392
2396
  ]),
2393
- p.value === w.command ? (P(), R("div", {
2397
+ u.value === y.command ? (A(), R("div", {
2394
2398
  key: 0,
2395
2399
  title: "取消命令(Esc)",
2396
2400
  class: "active:scale-[0.7] transition-all",
2397
- onClick: g[2] || (g[2] = (U) => (v(x).cancelCommand(), U.stopPropagation()))
2401
+ onClick: g[2] || (g[2] = (U) => (v(b).cancelCommand(), U.stopPropagation()))
2398
2402
  }, g[13] || (g[13] = [
2399
- I("svg", {
2403
+ P("svg", {
2400
2404
  fill: "#fff",
2401
2405
  width: "16",
2402
2406
  height: "16",
@@ -2404,120 +2408,120 @@ const is = {
2404
2408
  version: "1.1",
2405
2409
  xmlns: "http://www.w3.org/2000/svg"
2406
2410
  }, [
2407
- I("path", { d: "M511.104 0C228.821333 0 0 228.821333 0 511.104c0 282.282667 228.821333 511.104 511.104 511.104 282.282667 0 511.104-228.842667 511.104-511.104C1022.208 228.821333 793.386667 0 511.104 0zM511.104 898.496c-213.973333 0-387.434667-173.44-387.434667-387.413333 0-213.952 173.44-387.413333 387.434667-387.413333 213.952 0 387.392 173.44 387.392 387.413333C898.496 725.056 725.056 898.496 511.104 898.496z" }),
2408
- I("path", { d: "M236.437333 463.914667l549.333333 0 0 96.874667-549.333333 0 0-96.874667Z" })
2411
+ P("path", { d: "M511.104 0C228.821333 0 0 228.821333 0 511.104c0 282.282667 228.821333 511.104 511.104 511.104 282.282667 0 511.104-228.842667 511.104-511.104C1022.208 228.821333 793.386667 0 511.104 0zM511.104 898.496c-213.973333 0-387.434667-173.44-387.434667-387.413333 0-213.952 173.44-387.413333 387.434667-387.413333 213.952 0 387.392 173.44 387.392 387.413333C898.496 725.056 725.056 898.496 511.104 898.496z" }),
2412
+ P("path", { d: "M236.437333 463.914667l549.333333 0 0 96.874667-549.333333 0 0-96.874667Z" })
2409
2413
  ], -1)
2410
- ]))) : w.shortcut ? (P(), R("div", vs, de(w.shortcut), 1)) : q("", !0)
2411
- ], 10, ms)) : q("", !0)
2414
+ ]))) : y.shortcut ? (A(), R("div", yo, de(y.shortcut), 1)) : q("", !0)
2415
+ ], 10, uo)) : q("", !0)
2412
2416
  ], 64))), 64))
2413
2417
  ]),
2414
- I("div", fs, [
2415
- K(v(Fe), {
2418
+ P("div", wo, [
2419
+ z(v(Re), {
2416
2420
  size: "small",
2417
- modelValue: b.value,
2418
- "onUpdate:modelValue": g[3] || (g[3] = (w) => b.value = w),
2421
+ modelValue: x.value,
2422
+ "onUpdate:modelValue": g[3] || (g[3] = (y) => x.value = y),
2419
2423
  label: "快捷键提示"
2420
2424
  }, null, 8, ["modelValue"]),
2421
- K(v(Fe), {
2425
+ z(v(Re), {
2422
2426
  size: "small",
2423
- modelValue: d.value,
2424
- "onUpdate:modelValue": g[4] || (g[4] = (w) => d.value = w),
2427
+ modelValue: r.value,
2428
+ "onUpdate:modelValue": g[4] || (g[4] = (y) => r.value = y),
2425
2429
  label: "dxf"
2426
2430
  }, null, 8, ["modelValue"])
2427
2431
  ]),
2428
- C.permission === "admin" ? (P(), R("div", ws, [
2429
- K(v(re), {
2432
+ C.permission === "admin" ? (A(), R("div", bo, [
2433
+ z(v(re), {
2430
2434
  style: { padding: "5px", "font-size": "10px" },
2431
2435
  size: "small",
2432
2436
  type: "success",
2433
- onClick: s
2437
+ onClick: o
2434
2438
  }, {
2435
- default: j(() => g[14] || (g[14] = [
2436
- X(" 选择文件 ", -1)
2439
+ default: T(() => g[14] || (g[14] = [
2440
+ Y(" 选择文件 ", -1)
2437
2441
  ])),
2438
2442
  _: 1,
2439
2443
  __: [14]
2440
2444
  }),
2441
- K(v(re), {
2445
+ z(v(re), {
2442
2446
  style: { padding: "5px", "font-size": "10px" },
2443
2447
  size: "small",
2444
2448
  type: "primary",
2445
- onClick: g[5] || (g[5] = (w) => v(u).Dxf.downloadOriginalData("json.json"))
2449
+ onClick: g[5] || (g[5] = (y) => v(h).Dxf.downloadOriginalData("json.json"))
2446
2450
  }, {
2447
- default: j(() => g[15] || (g[15] = [
2448
- X(" 下载Json ", -1)
2451
+ default: T(() => g[15] || (g[15] = [
2452
+ Y(" 下载Json ", -1)
2449
2453
  ])),
2450
2454
  _: 1,
2451
2455
  __: [15]
2452
2456
  }),
2453
- K(v(re), {
2457
+ z(v(re), {
2454
2458
  style: { padding: "5px", "font-size": "10px" },
2455
2459
  size: "small",
2456
2460
  type: "primary",
2457
- onClick: g[6] || (g[6] = (w) => v(u).AngleCorrectionDxf.download("test.dxf"))
2461
+ onClick: g[6] || (g[6] = (y) => v(h).AngleCorrectionDxf.download("test.dxf"))
2458
2462
  }, {
2459
- default: j(() => g[16] || (g[16] = [
2460
- X(" 下载DXF ", -1)
2463
+ default: T(() => g[16] || (g[16] = [
2464
+ Y(" 下载DXF ", -1)
2461
2465
  ])),
2462
2466
  _: 1,
2463
2467
  __: [16]
2464
2468
  }),
2465
- K(v(re), {
2469
+ z(v(re), {
2466
2470
  style: { padding: "5px", "font-size": "10px" },
2467
2471
  size: "small",
2468
2472
  type: "primary",
2469
- onClick: g[7] || (g[7] = (w) => v(u).AngleCorrectionDxf.downloadImage("dxf.jpg"))
2473
+ onClick: g[7] || (g[7] = (y) => v(h).AngleCorrectionDxf.downloadImage("dxf.jpg"))
2470
2474
  }, {
2471
- default: j(() => g[17] || (g[17] = [
2472
- X(" 下载JPG ", -1)
2475
+ default: T(() => g[17] || (g[17] = [
2476
+ Y(" 下载JPG ", -1)
2473
2477
  ])),
2474
2478
  _: 1,
2475
2479
  __: [17]
2476
2480
  }),
2477
- K(v(re), {
2481
+ z(v(re), {
2478
2482
  style: { padding: "5px", "font-size": "10px" },
2479
2483
  size: "small",
2480
2484
  type: "primary",
2481
- onClick: g[8] || (g[8] = (w) => v(z).downloadGltf("test.glb", !0))
2485
+ onClick: g[8] || (g[8] = (y) => v(F).downloadGltf("test.glb", !0))
2482
2486
  }, {
2483
- default: j(() => g[18] || (g[18] = [
2484
- X(" 下载白膜 ", -1)
2487
+ default: T(() => g[18] || (g[18] = [
2488
+ Y(" 下载白膜 ", -1)
2485
2489
  ])),
2486
2490
  _: 1,
2487
2491
  __: [18]
2488
2492
  }),
2489
- K(v(re), {
2493
+ z(v(re), {
2490
2494
  style: { padding: "5px", "font-size": "10px" },
2491
2495
  size: "small",
2492
2496
  type: "primary",
2493
- onClick: g[9] || (g[9] = (w) => v(Y).download())
2497
+ onClick: g[9] || (g[9] = (y) => v(Z).download())
2494
2498
  }, {
2495
- default: j(() => g[19] || (g[19] = [
2496
- X(" 下载三维家JSON ", -1)
2499
+ default: T(() => g[19] || (g[19] = [
2500
+ Y(" 下载三维家JSON ", -1)
2497
2501
  ])),
2498
2502
  _: 1,
2499
2503
  __: [19]
2500
2504
  })
2501
2505
  ])) : q("", !0),
2502
- K(xe, null, {
2503
- default: j(() => [
2504
- I("div", ys, [
2505
- K(zt, null, {
2506
- default: j(() => [
2507
- (P(), R(ve, null, Ie(mt, (w) => I("div", {
2508
- onClick: (U) => w.show.value && p.value === "default" && (w.action ? w.action() : v(x).commandManager.start(w.command, [...v(k).selectLines])),
2509
- title: `${w.name}(${w.shortcut})`,
2506
+ z(be, null, {
2507
+ default: T(() => [
2508
+ P("div", xo, [
2509
+ z(Tt, null, {
2510
+ default: T(() => [
2511
+ (A(), R(ge, null, Me(mt, (y) => P("div", {
2512
+ onClick: (U) => y.show.value && u.value === "default" && (y.action ? y.action() : v(b).commandManager.start(y.command, [...v(D).selectLines])),
2513
+ title: `${y.name}(${y.shortcut})`,
2510
2514
  class: V(["size-[20px] flex justify-center items-center relative overflow-hidden active:scale-[0.8] border-1 border-[#ccc] rounded-[4px] transition-all cursor-pointer", {
2511
- "opacity-30 bg-[#ccc] !cursor-no-drop active:!scale-[1]": !w.show.value || p.value !== "default",
2512
- [w.class ?? ""]: !0
2515
+ "opacity-30 bg-[#ccc] !cursor-no-drop active:!scale-[1]": !y.show.value || u.value !== "default",
2516
+ [y.class ?? ""]: !0
2513
2517
  }]),
2514
- key: w.command
2518
+ key: y.command
2515
2519
  }, [
2516
- I("img", {
2520
+ P("img", {
2517
2521
  class: "size-[14px]",
2518
- src: w.src
2519
- }, null, 8, xs)
2520
- ], 10, bs)), 64))
2522
+ src: y.src
2523
+ }, null, 8, Eo)
2524
+ ], 10, Co)), 64))
2521
2525
  ]),
2522
2526
  _: 1
2523
2527
  })
@@ -2529,15 +2533,15 @@ const is = {
2529
2533
  ], 38)
2530
2534
  ], 512));
2531
2535
  }
2532
- }), Es = (l, e) => {
2533
- const t = l.__vccOpts || l;
2534
- for (const [n, s] of e)
2535
- t[n] = s;
2536
+ }), Mo = (d, e) => {
2537
+ const t = d.__vccOpts || d;
2538
+ for (const [n, o] of e)
2539
+ t[n] = o;
2536
2540
  return t;
2537
- }, Ms = /* @__PURE__ */ Es(Cs, [["__scopeId", "data-v-39e8b14c"]]);
2538
- let lt = class extends Se {
2541
+ }, ko = /* @__PURE__ */ Mo(Lo, [["__scopeId", "data-v-c0568cc8"]]);
2542
+ let dt = class extends De {
2539
2543
  static name = "Editor";
2540
- container = new m.Group();
2544
+ container = new p.Group();
2541
2545
  get renderer() {
2542
2546
  return this.parent?.findComponentByName("Renderer");
2543
2547
  }
@@ -2559,8 +2563,8 @@ let lt = class extends Se {
2559
2563
  get domContainer() {
2560
2564
  return this.parent?.findComponentByName("DomContainer");
2561
2565
  }
2562
- commandManager = new xn();
2563
- plane = new m.Mesh(new m.PlaneGeometry(2e3, 2e3, 2, 2));
2566
+ commandManager = new Cn();
2567
+ plane = new p.Mesh(new p.PlaneGeometry(2e3, 2e3, 2, 2));
2564
2568
  app;
2565
2569
  domElement = document.createElement("div");
2566
2570
  viewPermission;
@@ -2583,26 +2587,26 @@ let lt = class extends Se {
2583
2587
  }
2584
2588
  onAddFromParent(e) {
2585
2589
  setTimeout(() => this.openEdit(), 10);
2586
- const t = new m.GridHelper(200, 100, 6710886, 4473924);
2590
+ const t = new p.GridHelper(200, 100, 6710886, 4473924);
2587
2591
  t.rotation.x = Math.PI * 0.5, t.position.z = -0.01, this.container.add(t), this.container.add(this.plane), this.plane.visible = !1;
2588
2592
  const n = this.addEventListener("update", () => {
2589
2593
  this.domContainer.domElement.parentElement && (this.domContainer.domElement.parentElement.appendChild(this.domElement), this.domContainer.domElement.parentElement.appendChild(this.imgEl), n());
2590
2594
  });
2591
2595
  setTimeout(() => {
2592
- this.app = Tt(Ms, { dxfSystem: this.parent, permission: this.viewPermission }), this.app.mount(this.domElement);
2596
+ this.app = Vt(ko, { dxfSystem: this.parent, permission: this.viewPermission }), this.app.mount(this.domElement);
2593
2597
  }), e.AngleCorrectionDxf.addEventListener("lineOffset", async () => {
2594
2598
  this.imgEl.src && URL.revokeObjectURL(this.imgEl.src), setTimeout(async () => {
2595
2599
  this.imgEl.src = URL.createObjectURL(await e.AngleCorrectionDxf.toDxfImageBlob("Centimeters", "image/png", "transparent"));
2596
2600
  });
2597
- }), this.domEventRegister.addEventListener("mousedown", (s) => {
2598
- s.x < this.imgWidth + 10 && s.x > 10 && s.y < this.imgWidth && s.y > 10 && Object.assign(this.imgEl.style, {
2601
+ }), this.domEventRegister.addEventListener("mousedown", (o) => {
2602
+ o.x < this.imgWidth + 10 && o.x > 10 && o.y < this.imgWidth && o.y > 10 && Object.assign(this.imgEl.style, {
2599
2603
  width: `${Math.min(this.imgWidth * 10, this.renderer.width * 0.9)}px`,
2600
2604
  height: `${Math.min(this.imgWidth * 10, this.renderer.height * 0.9)}px`,
2601
2605
  background: "rgba(0,0,0,1)",
2602
2606
  zIndex: 100
2603
2607
  });
2604
- }), this.domEventRegister.addEventListener("mousemove", (s) => {
2605
- s.x < this.imgWidth + 10 && s.x > 10 && s.y < this.imgWidth && s.y > 10 || Object.assign(this.imgEl.style, {
2608
+ }), this.domEventRegister.addEventListener("mousemove", (o) => {
2609
+ o.x < this.imgWidth + 10 && o.x > 10 && o.y < this.imgWidth && o.y > 10 || Object.assign(this.imgEl.style, {
2606
2610
  width: `${this.imgWidth}px`,
2607
2611
  height: `${this.imgWidth}px`,
2608
2612
  background: "rgba(255,255,255,0.2)",
@@ -2618,27 +2622,27 @@ let lt = class extends Se {
2618
2622
  type: "cancelCommand"
2619
2623
  });
2620
2624
  }
2621
- coords = new m.Vector2();
2622
- pointerPosition = new m.Vector2();
2625
+ coords = new p.Vector2();
2626
+ pointerPosition = new p.Vector2();
2623
2627
  _exitEditCallBack;
2624
2628
  /**
2625
2629
  * 打开编辑器
2626
2630
  */
2627
2631
  openEdit() {
2628
- const e = this.renderer, t = this.domEventRegister, n = this.dxf, s = e.orbitControls, o = e.camera, a = n.box.center, c = e.camera.position.clone(), d = s?.target?.clone(), i = new m.Vector2(), r = new m.Raycaster(), h = this.coords, y = this.pointerPosition;
2629
- this.container.position.z = n.originalZAverage, e.scene.add(this.container), s && (o.position.set(a.x, a.y, 15), s.target.set(a.x, a.y, 0), s.enableRotate = !1);
2632
+ const e = this.renderer, t = this.domEventRegister, n = this.dxf, o = e.orbitControls, s = e.camera, a = n.box.center, l = e.camera.position.clone(), r = o?.target?.clone(), i = new p.Vector2(), c = new p.Raycaster(), m = this.coords, w = this.pointerPosition;
2633
+ this.container.position.z = n.originalZAverage, e.scene.add(this.container), o && (s.position.set(a.x, a.y, 15), o.target.set(a.x, a.y, 0), o.enableRotate = !1);
2630
2634
  const f = () => {
2631
2635
  e.renderer.getSize(i);
2632
- const p = t.pointer.x / i.x * 2 - 1, u = -(t.pointer.y / i.y * 2 - 1);
2633
- h.set(p, u), r.setFromCamera(h, e.camera.children.length ? e.camera.children[0] : e.camera);
2634
- const E = r.intersectObject(this.plane);
2635
- E.length && (y.copy(E[0].point), this.dispatchEvent({
2636
+ const u = t.pointer.x / i.x * 2 - 1, h = -(t.pointer.y / i.y * 2 - 1);
2637
+ m.set(u, h), c.setFromCamera(m, e.camera.children.length ? e.camera.children[0] : e.camera);
2638
+ const E = c.intersectObject(this.plane);
2639
+ E.length && (w.copy(E[0].point), this.dispatchEvent({
2636
2640
  type: "pointerPositionChange",
2637
- position: y
2641
+ position: w
2638
2642
  }));
2639
2643
  };
2640
2644
  t.addEventListener("mousemove", f), this.commandManager.disabled = !1, this.commandManager.start("default"), this._exitEditCallBack = () => {
2641
- t.removeEventListener("mousemove", f), s && (o.position.copy(c), s.enableRotate = !0, s.target.copy(d));
2645
+ t.removeEventListener("mousemove", f), o && (s.position.copy(l), o.enableRotate = !0, o.target.copy(r));
2642
2646
  };
2643
2647
  }
2644
2648
  /**
@@ -2651,9 +2655,9 @@ let lt = class extends Se {
2651
2655
  super.destroy(), this.exitEdit(), this.renderer.scene.remove(this.container), this.domElement.remove(), this.app?.unmount();
2652
2656
  }
2653
2657
  };
2654
- class Ls extends O {
2658
+ class Io extends O {
2655
2659
  static name = "PointDrag";
2656
- container = new m.Group();
2660
+ container = new p.Group();
2657
2661
  interruptKeys = ["escape"];
2658
2662
  shortcutKeys = ["control", "p"];
2659
2663
  commandName = "point";
@@ -2666,12 +2670,12 @@ class Ls extends O {
2666
2670
  * @param next
2667
2671
  */
2668
2672
  selectPoint(e) {
2669
- let t = null, n = new m.Mesh(new m.SphereGeometry(0.04), new m.MeshBasicMaterial({ color: 16711935 })), s = null;
2673
+ let t = null, n = this.renderer.createCircle(L.zero(), { color: 16711935 }), o = null;
2670
2674
  this.addEventRecord("selectPointStart").add(this.editor.addEventListener("pointerPositionChange", () => {
2671
- const { point: o, line: a, find: c, mode: d } = this.editor.renderManager.adsorption();
2672
- this.dispatchEvent({ type: "pointerMove", point: o }), c && d === "point" ? (this.domElement.style.cursor = "none", n.position.copy(o), s = a, t = o.clone(), this.container.add(n)) : (this.domElement.style.cursor = "no-drop", t = null, n.removeFromParent());
2675
+ const { point: s, line: a, find: l, mode: r } = this.editor.renderManager.adsorption();
2676
+ this.dispatchEvent({ type: "pointerMove", point: s }), l && r === "point" ? (this.domElement.style.cursor = "none", n.position.copy(s), o = a, t = s.clone(), this.container.add(n)) : (this.domElement.style.cursor = "no-drop", t = null, n.removeFromParent());
2673
2677
  })).add(this.eventInput.addEventListener("codeChange", () => {
2674
- this.eventInput.isKeyDown("mouse_0") && t && (this.canceEventRecord("selectPointStart"), n.material.color.set(65280), e({ point: t, line: s }));
2678
+ this.eventInput.isKeyDown("mouse_0") && t && (this.canceEventRecord("selectPointStart"), n.material.color.set(65280), e({ point: t, line: o }));
2675
2679
  })), this.addEventRecord("clear").add(() => n.removeFromParent());
2676
2680
  }
2677
2681
  /** 拖拽点
@@ -2681,32 +2685,32 @@ class Ls extends O {
2681
2685
  */
2682
2686
  drag(e, { point: t, line: n }) {
2683
2687
  this.domElement.style.cursor = "crosshair";
2684
- const s = n.start.equal(_.from(t)) ? "start" : "end", o = s == "start" ? new m.Vector3(n.end.x, n.end.y, 0) : new m.Vector3(n.start.x, n.start.y, 0), a = t.clone(), c = new we([o, a], 16711935), d = new m.Mesh(new m.SphereGeometry(0.03), new m.MeshBasicMaterial({ color: 16711935 }));
2685
- this.container.add(c), this.addEventRecord("clear").add(this.editor.addEventListener("pointerPositionChange", () => {
2686
- let { point: i, find: r } = this.editor.renderManager.adsorption(), h = "none";
2688
+ const o = n.start.equal(L.from(t)) ? "start" : "end", s = o == "start" ? new p.Vector3(n.end.x, n.end.y, 0) : new p.Vector3(n.start.x, n.start.y, 0), a = t.clone(), l = new fe([s, a], 16711935), r = this.renderer.createCircle(L.zero(), { color: 16711935, size: 10 });
2689
+ this.container.add(l), this.addEventRecord("clear").add(this.editor.addEventListener("pointerPositionChange", () => {
2690
+ let { point: i, find: c } = this.editor.renderManager.adsorption(), m = "none";
2687
2691
  if (i) {
2688
2692
  if (this.dispatchEvent({ type: "pointerMove", point: i }), this.eventInput.isKeyDown("shift")) {
2689
- const y = n.projectPoint(_.from(i), !1);
2690
- i.set(y?.x ?? i.x, y?.y ?? i.y, 0), r = !0, h = "crosshair";
2693
+ const w = n.projectPoint(L.from(i), !1);
2694
+ i.set(w?.x ?? i.x, w?.y ?? i.y, 0), c = !0, m = "crosshair";
2691
2695
  }
2692
- r ? (d.position.copy(i), this.container.add(d)) : (d.removeFromParent(), h = "crosshair"), a.copy(i), c.setPoint(o, a), this.domElement.style.cursor = h;
2696
+ c ? (r.position.copy(i), this.container.add(r)) : (r.removeFromParent(), m = "crosshair"), a.copy(i), l.setPoint(s, a), this.domElement.style.cursor = m;
2693
2697
  }
2694
2698
  })).add(this.eventInput.addEventListener("codeChange", () => {
2695
- this.eventInput.isKeyDown("mouse_0") && (this.canceEventRecord("selectPointStart"), e({ point: a, oldPoint: s === "end" ? n.end.clone() : n.start.clone(), line: n, mode: s }));
2696
- })).add(() => d.removeFromParent()).add(() => c.removeFromParent());
2699
+ this.eventInput.isKeyDown("mouse_0") && (this.canceEventRecord("selectPointStart"), e({ point: a, oldPoint: o === "end" ? n.end.clone() : n.start.clone(), line: n, mode: o }));
2700
+ })).add(() => r.removeFromParent()).add(() => l.removeFromParent());
2697
2701
  }
2698
2702
  /** 执行完成
2699
2703
  */
2700
2704
  completed(e) {
2701
- const { line: t, point: n, mode: s } = e;
2702
- this.renderManager.removeLine(t), s === "end" ? t.end.set(n.x, n.y) : s === "start" && t.start.set(n.x, n.y), this.renderManager.addLine(t), this.renderManager.draw();
2705
+ const { line: t, point: n, mode: o } = e;
2706
+ this.renderManager.removeLine(t), o === "end" ? t.end.set(n.x, n.y) : o === "start" && t.start.set(n.x, n.y), this.renderManager.addLine(t), this.renderManager.draw();
2703
2707
  }
2704
2708
  /** 回滚操作
2705
2709
  * @param data
2706
2710
  */
2707
2711
  rollback(e) {
2708
- const { line: t, oldPoint: n, mode: s } = e;
2709
- return s === "end" ? t.end.set(n.x, n.y) : s === "start" && t.start.set(n.x, n.y), this.renderManager.addLine(t), this.renderManager.draw(), e;
2712
+ const { line: t, oldPoint: n, mode: o } = e;
2713
+ return o === "end" ? t.end.set(n.x, n.y) : o === "start" && t.start.set(n.x, n.y), this.renderManager.addLine(t), this.renderManager.draw(), e;
2710
2714
  }
2711
2715
  /** 撤回回滚
2712
2716
  * @param lines
@@ -2716,15 +2720,15 @@ class Ls extends O {
2716
2720
  return this.completed(e), e;
2717
2721
  }
2718
2722
  }
2719
- function Je(l, e = {}) {
2720
- l.addComponent(new lt(e.viewPermission)), l.addComponent(new ss()), l.addComponent(new rt()), l.addComponent(new yn()), l.addComponent(new os()), l.addComponent(new as()), l.addComponent(new Ls()), l.addComponent(new ee()), l.addComponent(new $()), l.addComponent(new le()), l.addComponent(new te()), l.addComponent(new ne()), l.addComponent(new se()), l.addComponent(new oe()), l.addComponent(new ae()), l.addComponent(new ie()), l.addComponent(new dt());
2723
+ function We(d, e = {}) {
2724
+ d.addComponent(new dt(e.viewPermission)), d.addComponent(new so()), d.addComponent(new it()), d.addComponent(new bn()), d.addComponent(new ao()), d.addComponent(new io()), d.addComponent(new Io()), d.addComponent(new $()), d.addComponent(new X()), d.addComponent(new le()), d.addComponent(new ee()), d.addComponent(new te()), d.addComponent(new ne()), d.addComponent(new oe()), d.addComponent(new se()), d.addComponent(new ae()), d.addComponent(new rt());
2721
2725
  }
2722
- const Bs = Object.assign(Je, {
2723
- create(l = {}) {
2724
- return (e) => Je(e, l);
2726
+ const Ro = Object.assign(We, {
2727
+ create(d = {}) {
2728
+ return (e) => We(e, d);
2725
2729
  }
2726
2730
  });
2727
2731
  export {
2728
- Bs as Editor,
2729
- Je as Editor_
2732
+ Ro as Editor,
2733
+ We as Editor_
2730
2734
  };