@jnrs/lingshu-smart 2.2.42 → 2.2.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/index.js +2290 -2297
- package/dist/components/preview/index.vue.d.ts +10889 -455
- package/dist/controller/EditorController.d.ts +12 -0
- package/dist/guards-CtOQ-c4T.js +35 -0
- package/dist/index-8szZ-Zwj.js +1172 -0
- package/dist/index.js +28 -52
- package/dist/lingshu-smart/wsProxyConfig.json +19 -20
- package/dist/playground/ViewPageDemo.vue.d.ts +21673 -805
- package/dist/stores/index.js +1 -1
- package/dist/stores/useAppStore.d.ts +32454 -1152
- package/dist/stores/useDataStore.d.ts +32423 -1121
- package/dist/types/components/config.types.d.ts +4 -0
- package/dist/types/components/operating.types.d.ts +2 -0
- package/dist/types/models/config.types.d.ts +3 -0
- package/dist/ui/abstract/ModelAbs.d.ts +5 -0
- package/dist/ui/models/MaterialTrack.d.ts +3 -1
- package/dist/ui/models/ShuttleStation.d.ts +3 -0
- package/dist/useAppStore-DctrbbfN.js +5966 -0
- package/package.json +3 -3
- package/dist/index-Cz1A_VVJ.js +0 -11452
- package/dist/useAppStore-BED53e2b.js +0 -15776
|
@@ -0,0 +1,1172 @@
|
|
|
1
|
+
import { Text as nt, Box as Ct, Canvas as Zt, Pen as Qt } from "leafer";
|
|
2
|
+
var te = /* @__PURE__ */ ((t) => (t.UNDO = "Undo", t.REDO = "Redo", t))(te || {}), ee = /* @__PURE__ */ ((t) => (t.TRANSPORT = "搬运设备", t.MACHINE = "机床", t.CLEANING = "清洗机", t.STATION = "装载站", t.STORAGE = "库", t.OTHER = "其他", t))(ee || {}), re = /* @__PURE__ */ ((t) => (t.SINGLE_JOINT_ROBOT = "SingleJointRobot", t.DOUBLE_JOINT_ROBOT = "DoubleJointRobot", t.RGV = "Rgv", t.MACHINE_TOOL = "MachineTool", t.MARKING_MACHINE = "MarkingMachine", t.CLEANING_MACHINE = "CleaningMachine", t.LOADING_STATION = "LoadingStation", t.SHUTTLE_STATION = "ShuttleStation", t.MATERIAL_TRACK = "MaterialTrack", t.RAIL = "Rail", t.RESOURCE_STORE = "ResourceStore", t.PALLET = "Pallet", t.RESOURCE_OPERATION_WINDOW = "ResourceOperationWindow", t))(re || {}), X = /* @__PURE__ */ ((t) => (t.STATION_SLOT = "StationSlot", t.RESOURCE = "Resource", t))(X || {}), E = /* @__PURE__ */ ((t) => (t.PALLET = "Pallet", t.TOOL = "Tool", t))(E || {});
|
|
3
|
+
const ot = {
|
|
4
|
+
none: 0,
|
|
5
|
+
error: 1,
|
|
6
|
+
warn: 2,
|
|
7
|
+
info: 3,
|
|
8
|
+
log: 4,
|
|
9
|
+
operating: 5
|
|
10
|
+
}, ne = {
|
|
11
|
+
log: "LOG",
|
|
12
|
+
info: "INFO",
|
|
13
|
+
warn: "WARN",
|
|
14
|
+
error: "ERROR",
|
|
15
|
+
operating: "OPERATING"
|
|
16
|
+
};
|
|
17
|
+
let C = "warn";
|
|
18
|
+
function Wo(t) {
|
|
19
|
+
C = t;
|
|
20
|
+
}
|
|
21
|
+
function Ko() {
|
|
22
|
+
return C;
|
|
23
|
+
}
|
|
24
|
+
const it = {
|
|
25
|
+
log: "background: #6c8eef; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold; font-size: 11px",
|
|
26
|
+
info: "background: #A3A2A2; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold; font-size: 11px",
|
|
27
|
+
warn: "background: #e6a23c; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold; font-size: 11px",
|
|
28
|
+
error: "background: #FF3300; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold; font-size: 11px",
|
|
29
|
+
operating: "background: #009866; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold; font-size: 11px"
|
|
30
|
+
}, at = "color: inherit; background: transparent; padding: 0; margin-left: 4px";
|
|
31
|
+
function oe(t) {
|
|
32
|
+
return C === "operating-only" ? t === "operating" || t === "error" : t === "operating" ? C === "operating" : ot[t] <= ot[C];
|
|
33
|
+
}
|
|
34
|
+
const ie = {
|
|
35
|
+
log: "log",
|
|
36
|
+
info: "info",
|
|
37
|
+
warn: "warn",
|
|
38
|
+
error: "error",
|
|
39
|
+
operating: "log"
|
|
40
|
+
};
|
|
41
|
+
function x(t, e, ...r) {
|
|
42
|
+
if (!oe(t)) return;
|
|
43
|
+
const n = ne[t], i = ie[t];
|
|
44
|
+
e ? r.length > 0 && typeof r[0] == "string" ? console[i](`%c${n}:${e}%c ${r[0]}`, it[t], at, ...r.slice(1)) : console[i](`%c${n}:${e}%c`, it[t], at, ...r) : console[i](...r);
|
|
45
|
+
}
|
|
46
|
+
function Z(t = "") {
|
|
47
|
+
return {
|
|
48
|
+
log: (...e) => x("log", t, ...e),
|
|
49
|
+
info: (...e) => x("info", t, ...e),
|
|
50
|
+
warn: (...e) => x("warn", t, ...e),
|
|
51
|
+
error: (...e) => x("error", t, ...e),
|
|
52
|
+
operating: (...e) => x("operating", t, ...e)
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
const qo = Z("LingshuSmart");
|
|
56
|
+
var It = typeof global == "object" && global && global.Object === Object && global, ae = typeof self == "object" && self && self.Object === Object && self, p = It || ae || Function("return this")(), j = p.Symbol, Et = Object.prototype, se = Et.hasOwnProperty, ce = Et.toString, $ = j ? j.toStringTag : void 0;
|
|
57
|
+
function ue(t) {
|
|
58
|
+
var e = se.call(t, $), r = t[$];
|
|
59
|
+
try {
|
|
60
|
+
t[$] = void 0;
|
|
61
|
+
var n = !0;
|
|
62
|
+
} catch {
|
|
63
|
+
}
|
|
64
|
+
var i = ce.call(t);
|
|
65
|
+
return n && (e ? t[$] = r : delete t[$]), i;
|
|
66
|
+
}
|
|
67
|
+
var fe = Object.prototype, le = fe.toString;
|
|
68
|
+
function he(t) {
|
|
69
|
+
return le.call(t);
|
|
70
|
+
}
|
|
71
|
+
var de = "[object Null]", ge = "[object Undefined]", st = j ? j.toStringTag : void 0;
|
|
72
|
+
function L(t) {
|
|
73
|
+
return t == null ? t === void 0 ? ge : de : st && st in Object(t) ? ue(t) : he(t);
|
|
74
|
+
}
|
|
75
|
+
function N(t) {
|
|
76
|
+
return t != null && typeof t == "object";
|
|
77
|
+
}
|
|
78
|
+
var Q = Array.isArray;
|
|
79
|
+
function M(t) {
|
|
80
|
+
var e = typeof t;
|
|
81
|
+
return t != null && (e == "object" || e == "function");
|
|
82
|
+
}
|
|
83
|
+
var pe = "[object AsyncFunction]", be = "[object Function]", ye = "[object GeneratorFunction]", Te = "[object Proxy]";
|
|
84
|
+
function Rt(t) {
|
|
85
|
+
if (!M(t))
|
|
86
|
+
return !1;
|
|
87
|
+
var e = L(t);
|
|
88
|
+
return e == be || e == ye || e == pe || e == Te;
|
|
89
|
+
}
|
|
90
|
+
var H = p["__core-js_shared__"], ct = (function() {
|
|
91
|
+
var t = /[^.]+$/.exec(H && H.keys && H.keys.IE_PROTO || "");
|
|
92
|
+
return t ? "Symbol(src)_1." + t : "";
|
|
93
|
+
})();
|
|
94
|
+
function _e(t) {
|
|
95
|
+
return !!ct && ct in t;
|
|
96
|
+
}
|
|
97
|
+
var we = Function.prototype, me = we.toString;
|
|
98
|
+
function m(t) {
|
|
99
|
+
if (t != null) {
|
|
100
|
+
try {
|
|
101
|
+
return me.call(t);
|
|
102
|
+
} catch {
|
|
103
|
+
}
|
|
104
|
+
try {
|
|
105
|
+
return t + "";
|
|
106
|
+
} catch {
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
return "";
|
|
110
|
+
}
|
|
111
|
+
var ve = /[\\^$.*+?()[\]{}|]/g, je = /^\[object .+?Constructor\]$/, Ae = Function.prototype, Se = Object.prototype, Oe = Ae.toString, xe = Se.hasOwnProperty, $e = RegExp(
|
|
112
|
+
"^" + Oe.call(xe).replace(ve, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"
|
|
113
|
+
);
|
|
114
|
+
function Ce(t) {
|
|
115
|
+
if (!M(t) || _e(t))
|
|
116
|
+
return !1;
|
|
117
|
+
var e = Rt(t) ? $e : je;
|
|
118
|
+
return e.test(m(t));
|
|
119
|
+
}
|
|
120
|
+
function Ie(t, e) {
|
|
121
|
+
return t?.[e];
|
|
122
|
+
}
|
|
123
|
+
function v(t, e) {
|
|
124
|
+
var r = Ie(t, e);
|
|
125
|
+
return Ce(r) ? r : void 0;
|
|
126
|
+
}
|
|
127
|
+
var K = v(p, "WeakMap"), ut = Object.create, Ee = /* @__PURE__ */ (function() {
|
|
128
|
+
function t() {
|
|
129
|
+
}
|
|
130
|
+
return function(e) {
|
|
131
|
+
if (!M(e))
|
|
132
|
+
return {};
|
|
133
|
+
if (ut)
|
|
134
|
+
return ut(e);
|
|
135
|
+
t.prototype = e;
|
|
136
|
+
var r = new t();
|
|
137
|
+
return t.prototype = void 0, r;
|
|
138
|
+
};
|
|
139
|
+
})(), ft = (function() {
|
|
140
|
+
try {
|
|
141
|
+
var t = v(Object, "defineProperty");
|
|
142
|
+
return t({}, "", {}), t;
|
|
143
|
+
} catch {
|
|
144
|
+
}
|
|
145
|
+
})();
|
|
146
|
+
function Re(t, e) {
|
|
147
|
+
for (var r = -1, n = t == null ? 0 : t.length; ++r < n && e(t[r], r, t) !== !1; )
|
|
148
|
+
;
|
|
149
|
+
return t;
|
|
150
|
+
}
|
|
151
|
+
var Pe = 9007199254740991, Le = /^(?:0|[1-9]\d*)$/;
|
|
152
|
+
function Ne(t, e) {
|
|
153
|
+
var r = typeof t;
|
|
154
|
+
return e = e ?? Pe, !!e && (r == "number" || r != "symbol" && Le.test(t)) && t > -1 && t % 1 == 0 && t < e;
|
|
155
|
+
}
|
|
156
|
+
function Fe(t, e, r) {
|
|
157
|
+
e == "__proto__" && ft ? ft(t, e, {
|
|
158
|
+
configurable: !0,
|
|
159
|
+
enumerable: !0,
|
|
160
|
+
value: r,
|
|
161
|
+
writable: !0
|
|
162
|
+
}) : t[e] = r;
|
|
163
|
+
}
|
|
164
|
+
function Pt(t, e) {
|
|
165
|
+
return t === e || t !== t && e !== e;
|
|
166
|
+
}
|
|
167
|
+
var De = Object.prototype, Ue = De.hasOwnProperty;
|
|
168
|
+
function ze(t, e, r) {
|
|
169
|
+
var n = t[e];
|
|
170
|
+
(!(Ue.call(t, e) && Pt(n, r)) || r === void 0 && !(e in t)) && Fe(t, e, r);
|
|
171
|
+
}
|
|
172
|
+
var Me = 9007199254740991;
|
|
173
|
+
function Lt(t) {
|
|
174
|
+
return typeof t == "number" && t > -1 && t % 1 == 0 && t <= Me;
|
|
175
|
+
}
|
|
176
|
+
function Be(t) {
|
|
177
|
+
return t != null && Lt(t.length) && !Rt(t);
|
|
178
|
+
}
|
|
179
|
+
var Ge = Object.prototype;
|
|
180
|
+
function Nt(t) {
|
|
181
|
+
var e = t && t.constructor, r = typeof e == "function" && e.prototype || Ge;
|
|
182
|
+
return t === r;
|
|
183
|
+
}
|
|
184
|
+
function ke(t, e) {
|
|
185
|
+
for (var r = -1, n = Array(t); ++r < t; )
|
|
186
|
+
n[r] = e(r);
|
|
187
|
+
return n;
|
|
188
|
+
}
|
|
189
|
+
var Ve = "[object Arguments]";
|
|
190
|
+
function lt(t) {
|
|
191
|
+
return N(t) && L(t) == Ve;
|
|
192
|
+
}
|
|
193
|
+
var Ft = Object.prototype, He = Ft.hasOwnProperty, We = Ft.propertyIsEnumerable, Ke = lt(/* @__PURE__ */ (function() {
|
|
194
|
+
return arguments;
|
|
195
|
+
})()) ? lt : function(t) {
|
|
196
|
+
return N(t) && He.call(t, "callee") && !We.call(t, "callee");
|
|
197
|
+
};
|
|
198
|
+
function qe() {
|
|
199
|
+
return !1;
|
|
200
|
+
}
|
|
201
|
+
var Dt = typeof exports == "object" && exports && !exports.nodeType && exports, ht = Dt && typeof module == "object" && module && !module.nodeType && module, Ye = ht && ht.exports === Dt, dt = Ye ? p.Buffer : void 0, Je = dt ? dt.isBuffer : void 0, Ut = Je || qe, Xe = "[object Arguments]", Ze = "[object Array]", Qe = "[object Boolean]", tr = "[object Date]", er = "[object Error]", rr = "[object Function]", nr = "[object Map]", or = "[object Number]", ir = "[object Object]", ar = "[object RegExp]", sr = "[object Set]", cr = "[object String]", ur = "[object WeakMap]", fr = "[object ArrayBuffer]", lr = "[object DataView]", hr = "[object Float32Array]", dr = "[object Float64Array]", gr = "[object Int8Array]", pr = "[object Int16Array]", br = "[object Int32Array]", yr = "[object Uint8Array]", Tr = "[object Uint8ClampedArray]", _r = "[object Uint16Array]", wr = "[object Uint32Array]", c = {};
|
|
202
|
+
c[hr] = c[dr] = c[gr] = c[pr] = c[br] = c[yr] = c[Tr] = c[_r] = c[wr] = !0;
|
|
203
|
+
c[Xe] = c[Ze] = c[fr] = c[Qe] = c[lr] = c[tr] = c[er] = c[rr] = c[nr] = c[or] = c[ir] = c[ar] = c[sr] = c[cr] = c[ur] = !1;
|
|
204
|
+
function mr(t) {
|
|
205
|
+
return N(t) && Lt(t.length) && !!c[L(t)];
|
|
206
|
+
}
|
|
207
|
+
function tt(t) {
|
|
208
|
+
return function(e) {
|
|
209
|
+
return t(e);
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
var zt = typeof exports == "object" && exports && !exports.nodeType && exports, I = zt && typeof module == "object" && module && !module.nodeType && module, vr = I && I.exports === zt, W = vr && It.process, A = (function() {
|
|
213
|
+
try {
|
|
214
|
+
var t = I && I.require && I.require("util").types;
|
|
215
|
+
return t || W && W.binding && W.binding("util");
|
|
216
|
+
} catch {
|
|
217
|
+
}
|
|
218
|
+
})(), gt = A && A.isTypedArray, jr = gt ? tt(gt) : mr, Ar = Object.prototype, Sr = Ar.hasOwnProperty;
|
|
219
|
+
function Or(t, e) {
|
|
220
|
+
var r = Q(t), n = !r && Ke(t), i = !r && !n && Ut(t), o = !r && !n && !i && jr(t), a = r || n || i || o, l = a ? ke(t.length, String) : [], f = l.length;
|
|
221
|
+
for (var u in t)
|
|
222
|
+
Sr.call(t, u) && !(a && // Safari 9 has enumerable `arguments.length` in strict mode.
|
|
223
|
+
(u == "length" || // Node.js 0.10 has enumerable non-index properties on buffers.
|
|
224
|
+
i && (u == "offset" || u == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays.
|
|
225
|
+
o && (u == "buffer" || u == "byteLength" || u == "byteOffset") || // Skip index properties.
|
|
226
|
+
Ne(u, f))) && l.push(u);
|
|
227
|
+
return l;
|
|
228
|
+
}
|
|
229
|
+
function Mt(t, e) {
|
|
230
|
+
return function(r) {
|
|
231
|
+
return t(e(r));
|
|
232
|
+
};
|
|
233
|
+
}
|
|
234
|
+
var xr = Mt(Object.keys, Object), $r = Object.prototype, Cr = $r.hasOwnProperty;
|
|
235
|
+
function Ir(t) {
|
|
236
|
+
if (!Nt(t))
|
|
237
|
+
return xr(t);
|
|
238
|
+
var e = [];
|
|
239
|
+
for (var r in Object(t))
|
|
240
|
+
Cr.call(t, r) && r != "constructor" && e.push(r);
|
|
241
|
+
return e;
|
|
242
|
+
}
|
|
243
|
+
function Er(t) {
|
|
244
|
+
return Be(t) ? Or(t) : Ir(t);
|
|
245
|
+
}
|
|
246
|
+
var R = v(Object, "create");
|
|
247
|
+
function Rr() {
|
|
248
|
+
this.__data__ = R ? R(null) : {}, this.size = 0;
|
|
249
|
+
}
|
|
250
|
+
function Pr(t) {
|
|
251
|
+
var e = this.has(t) && delete this.__data__[t];
|
|
252
|
+
return this.size -= e ? 1 : 0, e;
|
|
253
|
+
}
|
|
254
|
+
var Lr = "__lodash_hash_undefined__", Nr = Object.prototype, Fr = Nr.hasOwnProperty;
|
|
255
|
+
function Dr(t) {
|
|
256
|
+
var e = this.__data__;
|
|
257
|
+
if (R) {
|
|
258
|
+
var r = e[t];
|
|
259
|
+
return r === Lr ? void 0 : r;
|
|
260
|
+
}
|
|
261
|
+
return Fr.call(e, t) ? e[t] : void 0;
|
|
262
|
+
}
|
|
263
|
+
var Ur = Object.prototype, zr = Ur.hasOwnProperty;
|
|
264
|
+
function Mr(t) {
|
|
265
|
+
var e = this.__data__;
|
|
266
|
+
return R ? e[t] !== void 0 : zr.call(e, t);
|
|
267
|
+
}
|
|
268
|
+
var Br = "__lodash_hash_undefined__";
|
|
269
|
+
function Gr(t, e) {
|
|
270
|
+
var r = this.__data__;
|
|
271
|
+
return this.size += this.has(t) ? 0 : 1, r[t] = R && e === void 0 ? Br : e, this;
|
|
272
|
+
}
|
|
273
|
+
function w(t) {
|
|
274
|
+
var e = -1, r = t == null ? 0 : t.length;
|
|
275
|
+
for (this.clear(); ++e < r; ) {
|
|
276
|
+
var n = t[e];
|
|
277
|
+
this.set(n[0], n[1]);
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
w.prototype.clear = Rr;
|
|
281
|
+
w.prototype.delete = Pr;
|
|
282
|
+
w.prototype.get = Dr;
|
|
283
|
+
w.prototype.has = Mr;
|
|
284
|
+
w.prototype.set = Gr;
|
|
285
|
+
function kr() {
|
|
286
|
+
this.__data__ = [], this.size = 0;
|
|
287
|
+
}
|
|
288
|
+
function B(t, e) {
|
|
289
|
+
for (var r = t.length; r--; )
|
|
290
|
+
if (Pt(t[r][0], e))
|
|
291
|
+
return r;
|
|
292
|
+
return -1;
|
|
293
|
+
}
|
|
294
|
+
var Vr = Array.prototype, Hr = Vr.splice;
|
|
295
|
+
function Wr(t) {
|
|
296
|
+
var e = this.__data__, r = B(e, t);
|
|
297
|
+
if (r < 0)
|
|
298
|
+
return !1;
|
|
299
|
+
var n = e.length - 1;
|
|
300
|
+
return r == n ? e.pop() : Hr.call(e, r, 1), --this.size, !0;
|
|
301
|
+
}
|
|
302
|
+
function Kr(t) {
|
|
303
|
+
var e = this.__data__, r = B(e, t);
|
|
304
|
+
return r < 0 ? void 0 : e[r][1];
|
|
305
|
+
}
|
|
306
|
+
function qr(t) {
|
|
307
|
+
return B(this.__data__, t) > -1;
|
|
308
|
+
}
|
|
309
|
+
function Yr(t, e) {
|
|
310
|
+
var r = this.__data__, n = B(r, t);
|
|
311
|
+
return n < 0 ? (++this.size, r.push([t, e])) : r[n][1] = e, this;
|
|
312
|
+
}
|
|
313
|
+
function T(t) {
|
|
314
|
+
var e = -1, r = t == null ? 0 : t.length;
|
|
315
|
+
for (this.clear(); ++e < r; ) {
|
|
316
|
+
var n = t[e];
|
|
317
|
+
this.set(n[0], n[1]);
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
T.prototype.clear = kr;
|
|
321
|
+
T.prototype.delete = Wr;
|
|
322
|
+
T.prototype.get = Kr;
|
|
323
|
+
T.prototype.has = qr;
|
|
324
|
+
T.prototype.set = Yr;
|
|
325
|
+
var P = v(p, "Map");
|
|
326
|
+
function Jr() {
|
|
327
|
+
this.size = 0, this.__data__ = {
|
|
328
|
+
hash: new w(),
|
|
329
|
+
map: new (P || T)(),
|
|
330
|
+
string: new w()
|
|
331
|
+
};
|
|
332
|
+
}
|
|
333
|
+
function Xr(t) {
|
|
334
|
+
var e = typeof t;
|
|
335
|
+
return e == "string" || e == "number" || e == "symbol" || e == "boolean" ? t !== "__proto__" : t === null;
|
|
336
|
+
}
|
|
337
|
+
function G(t, e) {
|
|
338
|
+
var r = t.__data__;
|
|
339
|
+
return Xr(e) ? r[typeof e == "string" ? "string" : "hash"] : r.map;
|
|
340
|
+
}
|
|
341
|
+
function Zr(t) {
|
|
342
|
+
var e = G(this, t).delete(t);
|
|
343
|
+
return this.size -= e ? 1 : 0, e;
|
|
344
|
+
}
|
|
345
|
+
function Qr(t) {
|
|
346
|
+
return G(this, t).get(t);
|
|
347
|
+
}
|
|
348
|
+
function tn(t) {
|
|
349
|
+
return G(this, t).has(t);
|
|
350
|
+
}
|
|
351
|
+
function en(t, e) {
|
|
352
|
+
var r = G(this, t), n = r.size;
|
|
353
|
+
return r.set(t, e), this.size += r.size == n ? 0 : 1, this;
|
|
354
|
+
}
|
|
355
|
+
function S(t) {
|
|
356
|
+
var e = -1, r = t == null ? 0 : t.length;
|
|
357
|
+
for (this.clear(); ++e < r; ) {
|
|
358
|
+
var n = t[e];
|
|
359
|
+
this.set(n[0], n[1]);
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
S.prototype.clear = Jr;
|
|
363
|
+
S.prototype.delete = Zr;
|
|
364
|
+
S.prototype.get = Qr;
|
|
365
|
+
S.prototype.has = tn;
|
|
366
|
+
S.prototype.set = en;
|
|
367
|
+
function rn(t, e) {
|
|
368
|
+
for (var r = -1, n = e.length, i = t.length; ++r < n; )
|
|
369
|
+
t[i + r] = e[r];
|
|
370
|
+
return t;
|
|
371
|
+
}
|
|
372
|
+
var nn = Mt(Object.getPrototypeOf, Object);
|
|
373
|
+
function on() {
|
|
374
|
+
this.__data__ = new T(), this.size = 0;
|
|
375
|
+
}
|
|
376
|
+
function an(t) {
|
|
377
|
+
var e = this.__data__, r = e.delete(t);
|
|
378
|
+
return this.size = e.size, r;
|
|
379
|
+
}
|
|
380
|
+
function sn(t) {
|
|
381
|
+
return this.__data__.get(t);
|
|
382
|
+
}
|
|
383
|
+
function cn(t) {
|
|
384
|
+
return this.__data__.has(t);
|
|
385
|
+
}
|
|
386
|
+
var un = 200;
|
|
387
|
+
function fn(t, e) {
|
|
388
|
+
var r = this.__data__;
|
|
389
|
+
if (r instanceof T) {
|
|
390
|
+
var n = r.__data__;
|
|
391
|
+
if (!P || n.length < un - 1)
|
|
392
|
+
return n.push([t, e]), this.size = ++r.size, this;
|
|
393
|
+
r = this.__data__ = new S(n);
|
|
394
|
+
}
|
|
395
|
+
return r.set(t, e), this.size = r.size, this;
|
|
396
|
+
}
|
|
397
|
+
function O(t) {
|
|
398
|
+
var e = this.__data__ = new T(t);
|
|
399
|
+
this.size = e.size;
|
|
400
|
+
}
|
|
401
|
+
O.prototype.clear = on;
|
|
402
|
+
O.prototype.delete = an;
|
|
403
|
+
O.prototype.get = sn;
|
|
404
|
+
O.prototype.has = cn;
|
|
405
|
+
O.prototype.set = fn;
|
|
406
|
+
var Bt = typeof exports == "object" && exports && !exports.nodeType && exports, pt = Bt && typeof module == "object" && module && !module.nodeType && module, ln = pt && pt.exports === Bt, bt = ln ? p.Buffer : void 0;
|
|
407
|
+
bt && bt.allocUnsafe;
|
|
408
|
+
function hn(t, e) {
|
|
409
|
+
return t.slice();
|
|
410
|
+
}
|
|
411
|
+
function dn(t, e) {
|
|
412
|
+
for (var r = -1, n = t == null ? 0 : t.length, i = 0, o = []; ++r < n; ) {
|
|
413
|
+
var a = t[r];
|
|
414
|
+
e(a, r, t) && (o[i++] = a);
|
|
415
|
+
}
|
|
416
|
+
return o;
|
|
417
|
+
}
|
|
418
|
+
function gn() {
|
|
419
|
+
return [];
|
|
420
|
+
}
|
|
421
|
+
var pn = Object.prototype, bn = pn.propertyIsEnumerable, yt = Object.getOwnPropertySymbols, yn = yt ? function(t) {
|
|
422
|
+
return t == null ? [] : (t = Object(t), dn(yt(t), function(e) {
|
|
423
|
+
return bn.call(t, e);
|
|
424
|
+
}));
|
|
425
|
+
} : gn;
|
|
426
|
+
function Tn(t, e, r) {
|
|
427
|
+
var n = e(t);
|
|
428
|
+
return Q(t) ? n : rn(n, r(t));
|
|
429
|
+
}
|
|
430
|
+
function _n(t) {
|
|
431
|
+
return Tn(t, Er, yn);
|
|
432
|
+
}
|
|
433
|
+
var q = v(p, "DataView"), Y = v(p, "Promise"), J = v(p, "Set"), Tt = "[object Map]", wn = "[object Object]", _t = "[object Promise]", wt = "[object Set]", mt = "[object WeakMap]", vt = "[object DataView]", mn = m(q), vn = m(P), jn = m(Y), An = m(J), Sn = m(K), y = L;
|
|
434
|
+
(q && y(new q(new ArrayBuffer(1))) != vt || P && y(new P()) != Tt || Y && y(Y.resolve()) != _t || J && y(new J()) != wt || K && y(new K()) != mt) && (y = function(t) {
|
|
435
|
+
var e = L(t), r = e == wn ? t.constructor : void 0, n = r ? m(r) : "";
|
|
436
|
+
if (n)
|
|
437
|
+
switch (n) {
|
|
438
|
+
case mn:
|
|
439
|
+
return vt;
|
|
440
|
+
case vn:
|
|
441
|
+
return Tt;
|
|
442
|
+
case jn:
|
|
443
|
+
return _t;
|
|
444
|
+
case An:
|
|
445
|
+
return wt;
|
|
446
|
+
case Sn:
|
|
447
|
+
return mt;
|
|
448
|
+
}
|
|
449
|
+
return e;
|
|
450
|
+
});
|
|
451
|
+
var On = Object.prototype, xn = On.hasOwnProperty;
|
|
452
|
+
function $n(t) {
|
|
453
|
+
var e = t.length, r = new t.constructor(e);
|
|
454
|
+
return e && typeof t[0] == "string" && xn.call(t, "index") && (r.index = t.index, r.input = t.input), r;
|
|
455
|
+
}
|
|
456
|
+
var jt = p.Uint8Array;
|
|
457
|
+
function et(t) {
|
|
458
|
+
var e = new t.constructor(t.byteLength);
|
|
459
|
+
return new jt(e).set(new jt(t)), e;
|
|
460
|
+
}
|
|
461
|
+
function Cn(t, e) {
|
|
462
|
+
var r = et(t.buffer);
|
|
463
|
+
return new t.constructor(r, t.byteOffset, t.byteLength);
|
|
464
|
+
}
|
|
465
|
+
var In = /\w*$/;
|
|
466
|
+
function En(t) {
|
|
467
|
+
var e = new t.constructor(t.source, In.exec(t));
|
|
468
|
+
return e.lastIndex = t.lastIndex, e;
|
|
469
|
+
}
|
|
470
|
+
var At = j ? j.prototype : void 0, St = At ? At.valueOf : void 0;
|
|
471
|
+
function Rn(t) {
|
|
472
|
+
return St ? Object(St.call(t)) : {};
|
|
473
|
+
}
|
|
474
|
+
function Pn(t, e) {
|
|
475
|
+
var r = et(t.buffer);
|
|
476
|
+
return new t.constructor(r, t.byteOffset, t.length);
|
|
477
|
+
}
|
|
478
|
+
var Ln = "[object Boolean]", Nn = "[object Date]", Fn = "[object Map]", Dn = "[object Number]", Un = "[object RegExp]", zn = "[object Set]", Mn = "[object String]", Bn = "[object Symbol]", Gn = "[object ArrayBuffer]", kn = "[object DataView]", Vn = "[object Float32Array]", Hn = "[object Float64Array]", Wn = "[object Int8Array]", Kn = "[object Int16Array]", qn = "[object Int32Array]", Yn = "[object Uint8Array]", Jn = "[object Uint8ClampedArray]", Xn = "[object Uint16Array]", Zn = "[object Uint32Array]";
|
|
479
|
+
function Qn(t, e, r) {
|
|
480
|
+
var n = t.constructor;
|
|
481
|
+
switch (e) {
|
|
482
|
+
case Gn:
|
|
483
|
+
return et(t);
|
|
484
|
+
case Ln:
|
|
485
|
+
case Nn:
|
|
486
|
+
return new n(+t);
|
|
487
|
+
case kn:
|
|
488
|
+
return Cn(t);
|
|
489
|
+
case Vn:
|
|
490
|
+
case Hn:
|
|
491
|
+
case Wn:
|
|
492
|
+
case Kn:
|
|
493
|
+
case qn:
|
|
494
|
+
case Yn:
|
|
495
|
+
case Jn:
|
|
496
|
+
case Xn:
|
|
497
|
+
case Zn:
|
|
498
|
+
return Pn(t);
|
|
499
|
+
case Fn:
|
|
500
|
+
return new n();
|
|
501
|
+
case Dn:
|
|
502
|
+
case Mn:
|
|
503
|
+
return new n(t);
|
|
504
|
+
case Un:
|
|
505
|
+
return En(t);
|
|
506
|
+
case zn:
|
|
507
|
+
return new n();
|
|
508
|
+
case Bn:
|
|
509
|
+
return Rn(t);
|
|
510
|
+
}
|
|
511
|
+
}
|
|
512
|
+
function to(t) {
|
|
513
|
+
return typeof t.constructor == "function" && !Nt(t) ? Ee(nn(t)) : {};
|
|
514
|
+
}
|
|
515
|
+
var eo = "[object Map]";
|
|
516
|
+
function ro(t) {
|
|
517
|
+
return N(t) && y(t) == eo;
|
|
518
|
+
}
|
|
519
|
+
var Ot = A && A.isMap, no = Ot ? tt(Ot) : ro, oo = "[object Set]";
|
|
520
|
+
function io(t) {
|
|
521
|
+
return N(t) && y(t) == oo;
|
|
522
|
+
}
|
|
523
|
+
var xt = A && A.isSet, ao = xt ? tt(xt) : io, Gt = "[object Arguments]", so = "[object Array]", co = "[object Boolean]", uo = "[object Date]", fo = "[object Error]", kt = "[object Function]", lo = "[object GeneratorFunction]", ho = "[object Map]", go = "[object Number]", Vt = "[object Object]", po = "[object RegExp]", bo = "[object Set]", yo = "[object String]", To = "[object Symbol]", _o = "[object WeakMap]", wo = "[object ArrayBuffer]", mo = "[object DataView]", vo = "[object Float32Array]", jo = "[object Float64Array]", Ao = "[object Int8Array]", So = "[object Int16Array]", Oo = "[object Int32Array]", xo = "[object Uint8Array]", $o = "[object Uint8ClampedArray]", Co = "[object Uint16Array]", Io = "[object Uint32Array]", s = {};
|
|
524
|
+
s[Gt] = s[so] = s[wo] = s[mo] = s[co] = s[uo] = s[vo] = s[jo] = s[Ao] = s[So] = s[Oo] = s[ho] = s[go] = s[Vt] = s[po] = s[bo] = s[yo] = s[To] = s[xo] = s[$o] = s[Co] = s[Io] = !0;
|
|
525
|
+
s[fo] = s[kt] = s[_o] = !1;
|
|
526
|
+
function D(t, e, r, n, i, o) {
|
|
527
|
+
var a;
|
|
528
|
+
if (a !== void 0)
|
|
529
|
+
return a;
|
|
530
|
+
if (!M(t))
|
|
531
|
+
return t;
|
|
532
|
+
var l = Q(t);
|
|
533
|
+
if (l)
|
|
534
|
+
a = $n(t);
|
|
535
|
+
else {
|
|
536
|
+
var f = y(t), u = f == kt || f == lo;
|
|
537
|
+
if (Ut(t))
|
|
538
|
+
return hn(t);
|
|
539
|
+
if (f == Vt || f == Gt || u && !i)
|
|
540
|
+
a = u ? {} : to(t);
|
|
541
|
+
else {
|
|
542
|
+
if (!s[f])
|
|
543
|
+
return i ? t : {};
|
|
544
|
+
a = Qn(t, f);
|
|
545
|
+
}
|
|
546
|
+
}
|
|
547
|
+
o || (o = new O());
|
|
548
|
+
var g = o.get(t);
|
|
549
|
+
if (g)
|
|
550
|
+
return g;
|
|
551
|
+
o.set(t, a), ao(t) ? t.forEach(function(d) {
|
|
552
|
+
a.add(D(d, e, r, d, t, o));
|
|
553
|
+
}) : no(t) && t.forEach(function(d, h) {
|
|
554
|
+
a.set(h, D(d, e, r, h, t, o));
|
|
555
|
+
});
|
|
556
|
+
var _ = _n, b = l ? void 0 : _(t);
|
|
557
|
+
return Re(b || t, function(d, h) {
|
|
558
|
+
b && (h = d, d = t[h]), ze(a, h, D(d, e, r, h, t, o));
|
|
559
|
+
}), a;
|
|
560
|
+
}
|
|
561
|
+
var Eo = 1, Ro = 4;
|
|
562
|
+
function rt(t) {
|
|
563
|
+
return D(t, Eo | Ro);
|
|
564
|
+
}
|
|
565
|
+
const $t = Z("BaseAbs");
|
|
566
|
+
class Po {
|
|
567
|
+
_ui = null;
|
|
568
|
+
_config;
|
|
569
|
+
_initialized = !1;
|
|
570
|
+
/** 实例级 logger,tag 为 className,用于 operating 日志输出 */
|
|
571
|
+
logger;
|
|
572
|
+
constructor(e) {
|
|
573
|
+
this._config = rt(e), this.logger = Z(e.className || "Unknown");
|
|
574
|
+
}
|
|
575
|
+
get ui() {
|
|
576
|
+
if (!this._ui)
|
|
577
|
+
throw new Error("访问 ui 失败:UI 实例未创建,请先调用 init() 方法");
|
|
578
|
+
return this._ui;
|
|
579
|
+
}
|
|
580
|
+
get config() {
|
|
581
|
+
return this._config;
|
|
582
|
+
}
|
|
583
|
+
// 宽度计算 - 50%(中心点)
|
|
584
|
+
get width_05() {
|
|
585
|
+
return (this.config.width || 0) * 0.5;
|
|
586
|
+
}
|
|
587
|
+
// 宽度计算 - 20%(中心点)
|
|
588
|
+
get width_02() {
|
|
589
|
+
return (this.config.width || 0) * 0.2;
|
|
590
|
+
}
|
|
591
|
+
// 宽度计算 - 80%(中心点)
|
|
592
|
+
get width_08() {
|
|
593
|
+
return (this.config.width || 0) * 0.8;
|
|
594
|
+
}
|
|
595
|
+
// 高度计算 - 50%(中心点)
|
|
596
|
+
get height_05() {
|
|
597
|
+
return (this.config.height || 0) * 0.5;
|
|
598
|
+
}
|
|
599
|
+
// 高度计算 - 20%(中心点)
|
|
600
|
+
get height_02() {
|
|
601
|
+
return (this.config.height || 0) * 0.2;
|
|
602
|
+
}
|
|
603
|
+
// 高度计算 - 80%(中心点)
|
|
604
|
+
get height_08() {
|
|
605
|
+
return (this.config.height || 0) * 0.8;
|
|
606
|
+
}
|
|
607
|
+
// 初始化 UI
|
|
608
|
+
init() {
|
|
609
|
+
return this._initialized ? ($t.warn("元素已经初始化,重复初始化"), this) : (this._ui = this.createUi(), this._initialized = !0, this);
|
|
610
|
+
}
|
|
611
|
+
// 销毁 UI(子类可重写以解绑事件)
|
|
612
|
+
destroyUI() {
|
|
613
|
+
if (!this._initialized) {
|
|
614
|
+
$t.warn("销毁失败,元素未初始化");
|
|
615
|
+
return;
|
|
616
|
+
}
|
|
617
|
+
this.ui.destroy(), this._initialized = !1;
|
|
618
|
+
}
|
|
619
|
+
// 销毁
|
|
620
|
+
destroy() {
|
|
621
|
+
this.destroyUI(), this._ui = null;
|
|
622
|
+
}
|
|
623
|
+
// 是否已初始化
|
|
624
|
+
get initialized() {
|
|
625
|
+
return this._initialized;
|
|
626
|
+
}
|
|
627
|
+
}
|
|
628
|
+
class Ht extends Po {
|
|
629
|
+
// 设备操作(子类可重写)
|
|
630
|
+
operating(e) {
|
|
631
|
+
}
|
|
632
|
+
// 处理设备操作
|
|
633
|
+
handleOperation = (e) => {
|
|
634
|
+
this.logger.operating("data=%o", e), this.operating(e);
|
|
635
|
+
};
|
|
636
|
+
}
|
|
637
|
+
function Wt(t) {
|
|
638
|
+
const {
|
|
639
|
+
name: e,
|
|
640
|
+
width: r,
|
|
641
|
+
height: n,
|
|
642
|
+
className: i = "CreateText",
|
|
643
|
+
fill: o = "rgba(0,0,0,0.2)",
|
|
644
|
+
fontSize: a,
|
|
645
|
+
fontWeight: l = "black",
|
|
646
|
+
hittable: f = !1
|
|
647
|
+
} = t, u = String(e);
|
|
648
|
+
if (!u)
|
|
649
|
+
return new nt({ text: "", width: r, height: n, visible: 0 });
|
|
650
|
+
const g = u.length, _ = Math.min(n * 0.8, r * 0.5), b = 12, d = r / (g * 0.6);
|
|
651
|
+
let h = Math.min(_, d);
|
|
652
|
+
return h < b && (h = b), new nt({
|
|
653
|
+
hittable: f,
|
|
654
|
+
className: i,
|
|
655
|
+
text: u,
|
|
656
|
+
textAlign: "center",
|
|
657
|
+
verticalAlign: "middle",
|
|
658
|
+
fontSize: a || h,
|
|
659
|
+
fontWeight: l,
|
|
660
|
+
fill: o,
|
|
661
|
+
width: r,
|
|
662
|
+
height: n,
|
|
663
|
+
lineHeight: {
|
|
664
|
+
type: "percent",
|
|
665
|
+
value: 1
|
|
666
|
+
},
|
|
667
|
+
textOverflow: "...",
|
|
668
|
+
// 启用省略号
|
|
669
|
+
textWrap: "break"
|
|
670
|
+
// 强制断词
|
|
671
|
+
});
|
|
672
|
+
}
|
|
673
|
+
const Lo = "#fff";
|
|
674
|
+
function No(t) {
|
|
675
|
+
if (typeof t != "string") return !1;
|
|
676
|
+
const e = t.trim();
|
|
677
|
+
if (!e) return !1;
|
|
678
|
+
const r = e.toLowerCase();
|
|
679
|
+
return !(r === "none" || r === "transparent" || r === "undefined" || r === "null");
|
|
680
|
+
}
|
|
681
|
+
function Fo(t) {
|
|
682
|
+
return No(t) ? t : Lo;
|
|
683
|
+
}
|
|
684
|
+
class Do extends Ht {
|
|
685
|
+
constructor(e) {
|
|
686
|
+
const r = {
|
|
687
|
+
className: X.RESOURCE,
|
|
688
|
+
x: 0,
|
|
689
|
+
y: 0,
|
|
690
|
+
width: 50,
|
|
691
|
+
height: 50,
|
|
692
|
+
name: "",
|
|
693
|
+
color: "rgba(255,255,255,1)",
|
|
694
|
+
hittable: !0,
|
|
695
|
+
resourceType: E.PALLET,
|
|
696
|
+
rawData: { id: "" }
|
|
697
|
+
};
|
|
698
|
+
super({ ...r, ...e });
|
|
699
|
+
}
|
|
700
|
+
createUi() {
|
|
701
|
+
const { x: e, y: r, width: n, height: i, color: o, resourceType: a, resourceId: l, name: f, hittable: u } = this.config;
|
|
702
|
+
return new Ct({
|
|
703
|
+
hittable: u,
|
|
704
|
+
className: `Resource-${a}`,
|
|
705
|
+
x: e,
|
|
706
|
+
y: r,
|
|
707
|
+
width: n,
|
|
708
|
+
height: i,
|
|
709
|
+
fill: Fo(o),
|
|
710
|
+
cornerRadius: this.autoCornerRadius,
|
|
711
|
+
around: "center",
|
|
712
|
+
zIndex: 10,
|
|
713
|
+
opacity: 0,
|
|
714
|
+
data: this.config,
|
|
715
|
+
// resourceId 作为独立属性挂在 main 上,便于 AppController 全局查找匹配
|
|
716
|
+
resourceId: l || "",
|
|
717
|
+
animation: {
|
|
718
|
+
keyframes: [{ scale: 1.2, opacity: 0 }, { scale: 0.95, opacity: 1 }, { scale: 1 }],
|
|
719
|
+
duration: 0.5
|
|
720
|
+
},
|
|
721
|
+
animationOut: {
|
|
722
|
+
keyframes: [
|
|
723
|
+
{ scale: 1, opacity: 1 },
|
|
724
|
+
{ scale: 0.5, opacity: 0 }
|
|
725
|
+
],
|
|
726
|
+
duration: 0.3
|
|
727
|
+
},
|
|
728
|
+
children: [
|
|
729
|
+
Wt({
|
|
730
|
+
name: f,
|
|
731
|
+
width: n,
|
|
732
|
+
height: i,
|
|
733
|
+
fill: "rgba(255,255,255,0.8)"
|
|
734
|
+
})
|
|
735
|
+
]
|
|
736
|
+
});
|
|
737
|
+
}
|
|
738
|
+
get autoCornerRadius() {
|
|
739
|
+
const { resourceType: e, width: r } = this.config;
|
|
740
|
+
return e === E.TOOL ? r : (r || 0) * 0.1;
|
|
741
|
+
}
|
|
742
|
+
}
|
|
743
|
+
function Uo(t) {
|
|
744
|
+
const e = {
|
|
745
|
+
width: t.width * 0.1,
|
|
746
|
+
// 阴影宽度为元素宽度的 10%
|
|
747
|
+
height: t.height * 0.1
|
|
748
|
+
// 阴影高度为元素高度的 10%
|
|
749
|
+
}, {
|
|
750
|
+
width: r = 0,
|
|
751
|
+
height: n = 0,
|
|
752
|
+
cornerRadius: i = 0,
|
|
753
|
+
shadow: o = [
|
|
754
|
+
{
|
|
755
|
+
x: 0,
|
|
756
|
+
y: 0,
|
|
757
|
+
blur: e.width,
|
|
758
|
+
color: "rgba(0,0,0,0.3)"
|
|
759
|
+
}
|
|
760
|
+
],
|
|
761
|
+
innerShadow: a = [
|
|
762
|
+
{
|
|
763
|
+
x: e.width,
|
|
764
|
+
y: e.height,
|
|
765
|
+
blur: e.width,
|
|
766
|
+
color: "rgba(0,0,0,0.5)"
|
|
767
|
+
},
|
|
768
|
+
{
|
|
769
|
+
x: -e.width,
|
|
770
|
+
y: -e.height,
|
|
771
|
+
blur: e.width,
|
|
772
|
+
color: "rgba(255,255,255,0.5)"
|
|
773
|
+
}
|
|
774
|
+
]
|
|
775
|
+
} = t, l = new Zt({
|
|
776
|
+
className: "ShadowCanvas",
|
|
777
|
+
pixelRatio: devicePixelRatio,
|
|
778
|
+
width: r,
|
|
779
|
+
height: n,
|
|
780
|
+
hittable: !1
|
|
781
|
+
}), f = new Qt();
|
|
782
|
+
return f.setStyle({
|
|
783
|
+
fill: "rgba(255,255,255,0)",
|
|
784
|
+
shadow: o ?? void 0,
|
|
785
|
+
innerShadow: a ?? void 0
|
|
786
|
+
}), f.roundRect(0, 0, r, n, i), l.draw(f), l;
|
|
787
|
+
}
|
|
788
|
+
function zo(t, e, r = "shadow") {
|
|
789
|
+
if (e.hittable && e.hitSelf && (e.clickable || e.menuClickable || e.draggable)) {
|
|
790
|
+
let n = "default";
|
|
791
|
+
const i = "#806EF7";
|
|
792
|
+
e.clickable ? n = "pointer" : e.menuClickable ? n = "context-menu" : e.draggable && (n = "move"), r === "shadow" ? t.set({
|
|
793
|
+
cursor: n,
|
|
794
|
+
hoverStyle: {
|
|
795
|
+
shadow: {
|
|
796
|
+
spread: 2,
|
|
797
|
+
blur: 2,
|
|
798
|
+
color: i
|
|
799
|
+
}
|
|
800
|
+
}
|
|
801
|
+
}) : r === "border" && t.set({
|
|
802
|
+
cursor: n,
|
|
803
|
+
hoverStyle: {
|
|
804
|
+
stroke: i,
|
|
805
|
+
strokeWidth: 3
|
|
806
|
+
}
|
|
807
|
+
});
|
|
808
|
+
}
|
|
809
|
+
}
|
|
810
|
+
function Yo(t, e = "rgba(66,66,66,0.9)") {
|
|
811
|
+
t.set({
|
|
812
|
+
shadow: {
|
|
813
|
+
x: 2,
|
|
814
|
+
y: 3,
|
|
815
|
+
blur: 1,
|
|
816
|
+
color: e
|
|
817
|
+
}
|
|
818
|
+
});
|
|
819
|
+
}
|
|
820
|
+
const U = "#BFC0C3", Kt = {
|
|
821
|
+
className: X.STATION_SLOT,
|
|
822
|
+
name: "",
|
|
823
|
+
index: 0,
|
|
824
|
+
x: 0,
|
|
825
|
+
y: 0,
|
|
826
|
+
width: 50,
|
|
827
|
+
height: 50,
|
|
828
|
+
rotation: 0,
|
|
829
|
+
parentRotation: 0,
|
|
830
|
+
resourceType: E.PALLET,
|
|
831
|
+
background: U,
|
|
832
|
+
stroke: "#999999",
|
|
833
|
+
strokeWidth: 2,
|
|
834
|
+
textColor: "#6F7177",
|
|
835
|
+
showShadow: !0,
|
|
836
|
+
showText: !0,
|
|
837
|
+
inFlow: !0,
|
|
838
|
+
hittable: !0,
|
|
839
|
+
disabled: !1,
|
|
840
|
+
visible: !0
|
|
841
|
+
};
|
|
842
|
+
class Jo extends Ht {
|
|
843
|
+
children = [];
|
|
844
|
+
// 缓存 destroyUI 后等待资源退场动画的清理任务,防止重复销毁
|
|
845
|
+
pendingDestroy = null;
|
|
846
|
+
constructor(e) {
|
|
847
|
+
super({ ...Kt, ...e });
|
|
848
|
+
}
|
|
849
|
+
// 创建 UI
|
|
850
|
+
createUi() {
|
|
851
|
+
const {
|
|
852
|
+
x: e,
|
|
853
|
+
y: r,
|
|
854
|
+
name: n,
|
|
855
|
+
width: i,
|
|
856
|
+
height: o,
|
|
857
|
+
resourceType: a,
|
|
858
|
+
hittable: l,
|
|
859
|
+
disabled: f,
|
|
860
|
+
visible: u,
|
|
861
|
+
background: g = U,
|
|
862
|
+
stroke: _ = "#999999",
|
|
863
|
+
strokeWidth: b = 2,
|
|
864
|
+
textColor: d = "#6F7177",
|
|
865
|
+
showShadow: h = !0,
|
|
866
|
+
showText: k = !0,
|
|
867
|
+
inFlow: Yt = !0,
|
|
868
|
+
origin: Jt = "center",
|
|
869
|
+
around: Xt = "center"
|
|
870
|
+
} = this.config, F = new Ct({
|
|
871
|
+
hittable: l,
|
|
872
|
+
visible: u,
|
|
873
|
+
className: `StationSlot-${a}`,
|
|
874
|
+
x: e,
|
|
875
|
+
y: r,
|
|
876
|
+
width: i,
|
|
877
|
+
height: o,
|
|
878
|
+
origin: Jt,
|
|
879
|
+
around: Xt,
|
|
880
|
+
disabled: f,
|
|
881
|
+
cornerRadius: this.autoCornerRadius,
|
|
882
|
+
rotation: this.autoFixRotation,
|
|
883
|
+
fill: g,
|
|
884
|
+
hitFill: "all",
|
|
885
|
+
stroke: _,
|
|
886
|
+
strokeWidth: b,
|
|
887
|
+
inFlow: Yt,
|
|
888
|
+
data: this.config
|
|
889
|
+
});
|
|
890
|
+
if (zo(F, { hittable: this.config.hittable, hitSelf: !0, clickable: !0 }, "border"), k) {
|
|
891
|
+
const V = Wt({
|
|
892
|
+
name: n,
|
|
893
|
+
width: i,
|
|
894
|
+
height: o,
|
|
895
|
+
fill: d
|
|
896
|
+
});
|
|
897
|
+
F.add(V);
|
|
898
|
+
}
|
|
899
|
+
if (h) {
|
|
900
|
+
const V = Uo({
|
|
901
|
+
width: i,
|
|
902
|
+
height: o,
|
|
903
|
+
cornerRadius: this.autoCornerRadius,
|
|
904
|
+
shadow: null
|
|
905
|
+
});
|
|
906
|
+
F.add(V);
|
|
907
|
+
}
|
|
908
|
+
return F;
|
|
909
|
+
}
|
|
910
|
+
// 自动计算工位槽位的旋转补偿角度
|
|
911
|
+
get autoFixRotation() {
|
|
912
|
+
const e = this.config.parentRotation, r = this.config.rotation ?? 0;
|
|
913
|
+
if (!e) return r;
|
|
914
|
+
let n = 0;
|
|
915
|
+
return e === 90 && (n = -90), e === -90 && (n = 90), e > 90 && (n = -180), e < -90 && (n = 180), n + r;
|
|
916
|
+
}
|
|
917
|
+
// 根据类型自动计算圆角
|
|
918
|
+
get autoCornerRadius() {
|
|
919
|
+
const e = this.config.resourceType, r = this.config.width || 0;
|
|
920
|
+
return e === E.TOOL ? r : r * 0.1;
|
|
921
|
+
}
|
|
922
|
+
// private setupClickableArea(cornerRadius: number): void {
|
|
923
|
+
// const clickableBox = new Box({
|
|
924
|
+
// className: 'palletAndCutterSiteClickableBox',
|
|
925
|
+
// width: this.config.width,
|
|
926
|
+
// height: this.config.height,
|
|
927
|
+
// fill: '#f40',
|
|
928
|
+
// opacity: 0,
|
|
929
|
+
// cornerRadius,
|
|
930
|
+
// hoverStyle: {
|
|
931
|
+
// opacity: 1,
|
|
932
|
+
// zIndex: 0
|
|
933
|
+
// },
|
|
934
|
+
// children: [
|
|
935
|
+
// new Text({
|
|
936
|
+
// text: '放置',
|
|
937
|
+
// textAlign: 'center',
|
|
938
|
+
// verticalAlign: 'middle',
|
|
939
|
+
// lineHeight: this.config.width * 0.4,
|
|
940
|
+
// fontSize: this.config.width * 0.4,
|
|
941
|
+
// fontWeight: 'black',
|
|
942
|
+
// fill: '#fff',
|
|
943
|
+
// width: this.config.width,
|
|
944
|
+
// height: this.config.height
|
|
945
|
+
// })
|
|
946
|
+
// ]
|
|
947
|
+
// })
|
|
948
|
+
// this.ui?.add(clickableBox)
|
|
949
|
+
// }
|
|
950
|
+
/**
|
|
951
|
+
* 添加托盘
|
|
952
|
+
* @param d
|
|
953
|
+
*/
|
|
954
|
+
addPallet(e) {
|
|
955
|
+
const { width: r, height: n, resourceType: i } = this.config, o = new Do({
|
|
956
|
+
x: this.width_05,
|
|
957
|
+
y: this.height_05,
|
|
958
|
+
width: r - 5,
|
|
959
|
+
height: n - 5,
|
|
960
|
+
name: e.name,
|
|
961
|
+
color: e.color,
|
|
962
|
+
resourceType: i,
|
|
963
|
+
resourceId: e.resourceId,
|
|
964
|
+
rawData: e.rawData
|
|
965
|
+
}).init();
|
|
966
|
+
this.children.push(o), this.ui.add(o.ui);
|
|
967
|
+
}
|
|
968
|
+
/**
|
|
969
|
+
* 移除托盘:先播放退场动画,动画结束后再销毁资源对象
|
|
970
|
+
*/
|
|
971
|
+
removeAllPallet(e) {
|
|
972
|
+
const r = this.children;
|
|
973
|
+
if (this.children = [], r.length === 0) return;
|
|
974
|
+
const n = 320, i = [];
|
|
975
|
+
for (const o of r) {
|
|
976
|
+
const a = o.ui;
|
|
977
|
+
try {
|
|
978
|
+
a.animate({
|
|
979
|
+
keyframes: [
|
|
980
|
+
{ scale: 1, opacity: 1 },
|
|
981
|
+
{ scale: 0.5, opacity: 0 }
|
|
982
|
+
],
|
|
983
|
+
duration: 0.3
|
|
984
|
+
});
|
|
985
|
+
} catch {
|
|
986
|
+
o.destroy();
|
|
987
|
+
continue;
|
|
988
|
+
}
|
|
989
|
+
const l = window.setTimeout(() => {
|
|
990
|
+
o.destroy();
|
|
991
|
+
}, n);
|
|
992
|
+
i.push(l);
|
|
993
|
+
}
|
|
994
|
+
this.pendingDestroy = () => {
|
|
995
|
+
i.forEach((o) => window.clearTimeout(o)), r.forEach((o) => o.destroy());
|
|
996
|
+
};
|
|
997
|
+
}
|
|
998
|
+
/**
|
|
999
|
+
* 按 resourceId 精确移除指定资源(同槽可含多个资源时使用)
|
|
1000
|
+
* 仅移除匹配的资源,不影响同槽内其他资源;动画逻辑与 removeAllPallet 一致
|
|
1001
|
+
*/
|
|
1002
|
+
removePalletById(e) {
|
|
1003
|
+
if (!e) return !1;
|
|
1004
|
+
const r = this.children.findIndex((a) => a.config.resourceId === e);
|
|
1005
|
+
if (r < 0) return !1;
|
|
1006
|
+
const [n] = this.children.splice(r, 1), i = 320, o = n.ui;
|
|
1007
|
+
try {
|
|
1008
|
+
o.animate({
|
|
1009
|
+
keyframes: [
|
|
1010
|
+
{ scale: 1, opacity: 1 },
|
|
1011
|
+
{ scale: 0.5, opacity: 0 }
|
|
1012
|
+
],
|
|
1013
|
+
duration: 0.3
|
|
1014
|
+
});
|
|
1015
|
+
} catch {
|
|
1016
|
+
return n.destroy(), !0;
|
|
1017
|
+
}
|
|
1018
|
+
return window.setTimeout(() => n.destroy(), i), !0;
|
|
1019
|
+
}
|
|
1020
|
+
/**
|
|
1021
|
+
* 设置工位是否正在使用
|
|
1022
|
+
* @param flag
|
|
1023
|
+
*/
|
|
1024
|
+
setSiteWorking(e) {
|
|
1025
|
+
if (e)
|
|
1026
|
+
this.ui?.set({
|
|
1027
|
+
animation: {
|
|
1028
|
+
style: { fill: "rgb(0, 255, 42)" },
|
|
1029
|
+
duration: 0.5,
|
|
1030
|
+
reverse: !0,
|
|
1031
|
+
swing: !0,
|
|
1032
|
+
loop: !0
|
|
1033
|
+
}
|
|
1034
|
+
});
|
|
1035
|
+
else {
|
|
1036
|
+
const r = this.config.background ?? U;
|
|
1037
|
+
this.ui?.set({ animation: void 0 }), this.ui?.set({ fill: r });
|
|
1038
|
+
}
|
|
1039
|
+
}
|
|
1040
|
+
// 切换 ui 的 visible
|
|
1041
|
+
toggleVisible(e) {
|
|
1042
|
+
this.ui?.set({ visible: e });
|
|
1043
|
+
}
|
|
1044
|
+
/**
|
|
1045
|
+
* 设置工位填充颜色:传值 color 则填充为该颜色;未传值(undefined / 空)时恢复为默认背景色
|
|
1046
|
+
* 供「资源操作窗口」等按工位序号动态改色的设备使用
|
|
1047
|
+
* @param color 目标颜色(如 '#66DC7A');缺省时使用工位配置背景色(默认 DEFAULT_BACKGROUND)
|
|
1048
|
+
*/
|
|
1049
|
+
setSiteWorkingColor(e) {
|
|
1050
|
+
const r = e && String(e).trim() ? String(e) : this.config.background ?? U;
|
|
1051
|
+
this.ui?.set({ fill: r });
|
|
1052
|
+
}
|
|
1053
|
+
/**
|
|
1054
|
+
* 销毁
|
|
1055
|
+
*/
|
|
1056
|
+
destroyUI() {
|
|
1057
|
+
this.removeAllPallet(), this.pendingDestroy && (this.pendingDestroy(), this.pendingDestroy = null), this.ui?.destroy();
|
|
1058
|
+
}
|
|
1059
|
+
}
|
|
1060
|
+
const Mo = /* @__PURE__ */ new Set(["index", "resourceType", "name", "className"]), qt = Kt, Bo = (t) => {
|
|
1061
|
+
const e = {};
|
|
1062
|
+
for (const [r, n] of Object.entries(t))
|
|
1063
|
+
n !== void 0 && (!Mo.has(r) && qt[r] === n || (e[r] = n));
|
|
1064
|
+
return e;
|
|
1065
|
+
}, Go = (t) => ({ ...qt, ...t }), z = (t, e) => {
|
|
1066
|
+
if (Array.isArray(t)) {
|
|
1067
|
+
t.forEach((n) => z(n, e));
|
|
1068
|
+
return;
|
|
1069
|
+
}
|
|
1070
|
+
if (!t || typeof t != "object") return;
|
|
1071
|
+
const r = t;
|
|
1072
|
+
Array.isArray(r.stationSlots) && (r.stationSlots = r.stationSlots.map(e)), Object.values(r).forEach((n) => z(n, e));
|
|
1073
|
+
}, ko = (t) => {
|
|
1074
|
+
const e = rt(t);
|
|
1075
|
+
return z(e, Bo), e;
|
|
1076
|
+
}, Xo = (t) => t.map(ko), Vo = (t) => {
|
|
1077
|
+
const e = rt(t);
|
|
1078
|
+
return z(e, Go), e;
|
|
1079
|
+
}, Zo = (t) => t.map(Vo);
|
|
1080
|
+
function* Qo(t, e, r = !1) {
|
|
1081
|
+
let n = t;
|
|
1082
|
+
for (; ; ) {
|
|
1083
|
+
if (n > e)
|
|
1084
|
+
if (r)
|
|
1085
|
+
n = t;
|
|
1086
|
+
else
|
|
1087
|
+
return;
|
|
1088
|
+
yield n++;
|
|
1089
|
+
}
|
|
1090
|
+
}
|
|
1091
|
+
const ti = (t = 0, e = 100, r = 3, n = 300, i) => i ? new Promise((o) => {
|
|
1092
|
+
const a = t, l = e, f = r * 1e3, u = performance.now();
|
|
1093
|
+
let g = 0;
|
|
1094
|
+
const _ = (b) => {
|
|
1095
|
+
const d = b - u, h = Math.min(d / f, 1), k = a + (l - a) * h;
|
|
1096
|
+
if (i(k.toFixed(2)), h >= 1) {
|
|
1097
|
+
cancelAnimationFrame(g), o();
|
|
1098
|
+
return;
|
|
1099
|
+
}
|
|
1100
|
+
g = requestAnimationFrame(_);
|
|
1101
|
+
};
|
|
1102
|
+
g = requestAnimationFrame(_);
|
|
1103
|
+
}) : !1;
|
|
1104
|
+
function ei(t, e, r = 3, n) {
|
|
1105
|
+
return t === void 0 || e === void 0 ? 0 : n ? e > 0 ? Number((t / e).toFixed(3)) : 0 : Number((e * t).toFixed(r));
|
|
1106
|
+
}
|
|
1107
|
+
function ri(t, e) {
|
|
1108
|
+
return t === void 0 || e === void 0 ? 0 : e > 0 ? Number((t / e).toFixed(3)) : t;
|
|
1109
|
+
}
|
|
1110
|
+
function ni(t, e, r, n) {
|
|
1111
|
+
if (t === void 0) return NaN;
|
|
1112
|
+
let i = 0;
|
|
1113
|
+
if (n === "width") {
|
|
1114
|
+
const o = e?.width || 0, a = e?.runtime_width || 0;
|
|
1115
|
+
if (o === 0 || a === 0) return 0;
|
|
1116
|
+
i = o / a;
|
|
1117
|
+
}
|
|
1118
|
+
if (n === "height") {
|
|
1119
|
+
const o = e?.height || 0, a = e?.runtime_height || 0;
|
|
1120
|
+
if (o === 0 || a === 0) return 0;
|
|
1121
|
+
i = o / a;
|
|
1122
|
+
}
|
|
1123
|
+
return Number((t * i).toFixed(r));
|
|
1124
|
+
}
|
|
1125
|
+
function oi(t, e, r, n) {
|
|
1126
|
+
if (t === void 0) return NaN;
|
|
1127
|
+
let i = 0;
|
|
1128
|
+
if (n === "width") {
|
|
1129
|
+
const o = e?.width || 0;
|
|
1130
|
+
if (o === 0) return t;
|
|
1131
|
+
i = o * t;
|
|
1132
|
+
}
|
|
1133
|
+
if (n === "height") {
|
|
1134
|
+
const o = e?.height || 0;
|
|
1135
|
+
if (o === 0) return t;
|
|
1136
|
+
i = o * t;
|
|
1137
|
+
}
|
|
1138
|
+
return Number(i.toFixed(r));
|
|
1139
|
+
}
|
|
1140
|
+
export {
|
|
1141
|
+
Po as B,
|
|
1142
|
+
Ht as C,
|
|
1143
|
+
Kt as D,
|
|
1144
|
+
te as E,
|
|
1145
|
+
Jo as S,
|
|
1146
|
+
ee as a,
|
|
1147
|
+
re as b,
|
|
1148
|
+
X as c,
|
|
1149
|
+
E as d,
|
|
1150
|
+
ri as e,
|
|
1151
|
+
ni as f,
|
|
1152
|
+
oi as g,
|
|
1153
|
+
Ko as h,
|
|
1154
|
+
Z as i,
|
|
1155
|
+
qo as j,
|
|
1156
|
+
ko as k,
|
|
1157
|
+
ti as l,
|
|
1158
|
+
Xo as m,
|
|
1159
|
+
Qo as n,
|
|
1160
|
+
Vo as o,
|
|
1161
|
+
Zo as p,
|
|
1162
|
+
N as q,
|
|
1163
|
+
L as r,
|
|
1164
|
+
Wo as s,
|
|
1165
|
+
ei as t,
|
|
1166
|
+
M as u,
|
|
1167
|
+
p as v,
|
|
1168
|
+
rt as w,
|
|
1169
|
+
zo as x,
|
|
1170
|
+
Yo as y,
|
|
1171
|
+
Uo as z
|
|
1172
|
+
};
|