@meta2d/core 1.0.73 → 1.0.75

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.
@@ -359,7 +359,7 @@ export class CanvasImage {
359
359
  }
360
360
  const span = scale * 10;
361
361
  ctx.save();
362
- const finalRuleColor = ruleColor || options.ruleColor;
362
+ const finalRuleColor = ruleColor || options.ruleColor || "#ccc";
363
363
  ctx.strokeStyle = rgba(finalRuleColor, 0.7);
364
364
  const x = origin.x + data.x;
365
365
  const y = origin.y + data.y;
@@ -1 +1 @@
1
- {"version":3,"file":"canvasImage.js","sourceRoot":"","sources":["../../../../packages/core/src/canvas/canvasImage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"canvasImage.js","sourceRoot":"","sources":["../../../../packages/core/src/canvas/canvasImage.ts"],"names":[],"mappings":"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"}
package/src/core.d.ts CHANGED
@@ -58,10 +58,22 @@ export declare class Meta2d {
58
58
  set beforeRemoveAnchor(fn: (pen: Pen, anchor: Point) => Promise<boolean>);
59
59
  setOptions(opts?: Options): void;
60
60
  getOptions(): Options;
61
+ /**
62
+ * @description
63
+ * @author Joseph Ho
64
+ * @date 21/02/2025
65
+ * @param {string} themeName 主题名
66
+ * @param {object} theme 主题变量字符串数组
67
+ * @returns {*}
68
+ * @memberof Meta2d
69
+ */
70
+ registerTheme(themeName: string, theme: object): void;
61
71
  setTheme(theme: string): void;
62
72
  setDatabyOptions(options?: Options): void;
63
73
  private init;
64
74
  initEventFns(): void;
75
+ getSendData(data: any[]): any;
76
+ convertType(value: string, type: string): string | number | boolean;
65
77
  getEventData(list: any, pen: Pen): any;
66
78
  message(options: MessageOptions): void;
67
79
  closeAll(): void;
@@ -176,6 +188,7 @@ export declare class Meta2d {
176
188
  */
177
189
  combine(pens?: Pen[], showChild?: number, active?: boolean): any;
178
190
  uncombine(pen?: Pen): void;
191
+ clearCombine(pen?: Pen): void;
179
192
  appendChild(pens?: Pen[]): void;
180
193
  /***
181
194
  * 修改子图元大小,更新整个组合图元
@@ -236,6 +249,7 @@ export declare class Meta2d {
236
249
  updateTimerList: any[];
237
250
  sqlTimerList: any[];
238
251
  connectNetwork(): void;
252
+ reconnectNetwork(index: number): void;
239
253
  iotMqttClient: MqttClient;
240
254
  iotTimer: any;
241
255
  iotWebsocketClient: WebSocket;
@@ -243,6 +257,7 @@ export declare class Meta2d {
243
257
  connectSqls(): void;
244
258
  connectSSE(net: Network): void;
245
259
  closeSSE(): void;
260
+ connectNetMqtt(net: Network): void;
246
261
  connectNetWebSocket(net: Network): void;
247
262
  getMqttUrl(): Promise<string>;
248
263
  getIotToken(devices: any, type: number): Promise<any>;
package/src/core.js CHANGED
@@ -140,6 +140,38 @@ export class Meta2d {
140
140
  getOptions() {
141
141
  return this.store.options;
142
142
  }
143
+ /**
144
+ * @description
145
+ * @author Joseph Ho
146
+ * @date 21/02/2025
147
+ * @param {string} themeName 主题名
148
+ * @param {object} theme 主题变量字符串数组
149
+ * @returns {*}
150
+ * @memberof Meta2d
151
+ */
152
+ registerTheme(themeName, theme) {
153
+ // 校验数据
154
+ if (!Array.isArray(theme)) {
155
+ return;
156
+ }
157
+ // 写一个正则,中间必须有且仅有1个冒号,结尾不能有分号,符合"A:B"的形式,冒号两边必须非空,允许有空格
158
+ const regex = /^\s*\S+\s*:\s*\S+\s*$/;
159
+ const ret = theme.every(el => regex.test(el));
160
+ if (!ret) {
161
+ return;
162
+ }
163
+ const obj = {}, newTheme = [];
164
+ for (let i = 0; i < theme.length; i++) {
165
+ const item = theme[i];
166
+ const kvs = item.split(":");
167
+ const kvs0 = kvs[0].trim();
168
+ const kvs1 = kvs[1].trim();
169
+ newTheme.push([kvs0, kvs1].join(":"));
170
+ obj[kvs0] = kvs1;
171
+ }
172
+ le5leTheme.addTheme(themeName, newTheme);
173
+ this.store.theme[themeName] = obj;
174
+ }
143
175
  setTheme(theme) {
144
176
  this.store.data.theme = theme;
145
177
  this.setBackgroundColor(this.store.theme[theme].background);
@@ -391,6 +423,15 @@ export class Meta2d {
391
423
  }
392
424
  };
393
425
  this.events[EventAction.SendData] = (pen, e) => {
426
+ if (e.data?.length) {
427
+ const value = this.getSendData(e.data);
428
+ if (pen.formId && pen.formData) {
429
+ //表单数据
430
+ Object.assign(value, pen.formData);
431
+ }
432
+ this.sendDataToNetWork(value, pen, e);
433
+ return;
434
+ }
394
435
  if (e.list?.length) {
395
436
  // if (e.targetType === 'id') {
396
437
  if (e.network && e.network.protocol === 'ADIIOT') {
@@ -473,6 +514,39 @@ export class Meta2d {
473
514
  });
474
515
  };
475
516
  }
517
+ getSendData(data) {
518
+ const value = {};
519
+ data.forEach((item) => {
520
+ if (item.prop) {
521
+ if (item.id && item.id !== '固定值') {
522
+ const pen = this.findOne(item.id);
523
+ value[item.prop] = pen[item.key];
524
+ }
525
+ else {
526
+ value[item.prop] = this.convertType(item.value, item.type);
527
+ }
528
+ }
529
+ });
530
+ return value;
531
+ }
532
+ convertType(value, type) {
533
+ if (typeof value === 'string') {
534
+ if (['switch', 'bool', 'boolean'].includes(type)) {
535
+ if (value === 'false') {
536
+ return false;
537
+ }
538
+ else if (value === 'true') {
539
+ return true;
540
+ }
541
+ }
542
+ else if (['integer', 'number', 'int', 'enum', 'double', 'float'].includes(type)) {
543
+ if (!isNaN(Number(value))) {
544
+ return Number(value);
545
+ }
546
+ }
547
+ }
548
+ return value;
549
+ }
476
550
  getEventData(list, pen) {
477
551
  const value = {};
478
552
  if (list?.length) {
@@ -567,6 +641,10 @@ export class Meta2d {
567
641
  Object.assign(network, network.data);
568
642
  delete network.data;
569
643
  }
644
+ if (network.protocol === 'iot') {
645
+ this.iotMqttClient && this.iotMqttClient.publish(`le5le-iot/property/set/${this.store.data.iot?.token}`, JSON.stringify(value));
646
+ return;
647
+ }
570
648
  if (!network.url) {
571
649
  return;
572
650
  }
@@ -1030,6 +1108,29 @@ export class Meta2d {
1030
1108
  }
1031
1109
  }
1032
1110
  });
1111
+ pen.events?.forEach((event) => {
1112
+ const actions = event.actions?.filter((item) => item.action === EventAction.SendData);
1113
+ actions?.forEach((action) => {
1114
+ action.data?.forEach((item) => {
1115
+ if (item.class === 'iot') {
1116
+ let bind = item.prop.split('#');
1117
+ let idx = devices.findIndex((item) => item.deviceId === bind[0]);
1118
+ if (idx > -1) {
1119
+ if (!devices[idx].properties.includes(bind[1])) {
1120
+ devices[idx].properties.push(bind[1]);
1121
+ }
1122
+ }
1123
+ else {
1124
+ devices.push({
1125
+ deviceId: bind[0],
1126
+ properties: [bind[1]],
1127
+ token: item.token
1128
+ });
1129
+ }
1130
+ }
1131
+ });
1132
+ });
1133
+ });
1033
1134
  });
1034
1135
  if (devices.length) {
1035
1136
  if (!this.store.data.iot) {
@@ -1588,6 +1689,43 @@ export class Meta2d {
1588
1689
  }
1589
1690
  this.inactive();
1590
1691
  }
1692
+ clearCombine(pen) {
1693
+ if (!pen && this.store.active) {
1694
+ pen = this.store.active[0];
1695
+ }
1696
+ if (!pen || !pen.children) {
1697
+ return;
1698
+ }
1699
+ const children = getAllChildren(pen, this.store);
1700
+ children.forEach((child) => {
1701
+ child.parentId = undefined;
1702
+ child.x = child.calculative.worldRect.x;
1703
+ child.y = child.calculative.worldRect.y;
1704
+ child.width = child.calculative.worldRect.width;
1705
+ child.height = child.calculative.worldRect.height;
1706
+ child.locked = LockState.None;
1707
+ child.calculative.active = undefined;
1708
+ child.calculative.hover = false;
1709
+ if (child.showChild !== undefined) {
1710
+ this.setVisible(child, true);
1711
+ }
1712
+ child.children = undefined;
1713
+ });
1714
+ const combineArr = [];
1715
+ children.forEach((child, index) => {
1716
+ if (child.name === 'combine') {
1717
+ child.children = undefined;
1718
+ combineArr.push(child);
1719
+ }
1720
+ });
1721
+ this.delete(combineArr, true, false);
1722
+ pen.children = undefined;
1723
+ if (this.isCombine(pen)) {
1724
+ this.delete([pen], true, false);
1725
+ }
1726
+ //未考虑历史记录
1727
+ this.inactive();
1728
+ }
1591
1729
  appendChild(pens = this.store.active) {
1592
1730
  if (!pens) {
1593
1731
  return;
@@ -1984,44 +2122,15 @@ export class Meta2d {
1984
2122
  const { networks } = this.store.data;
1985
2123
  const https = [];
1986
2124
  if (networks) {
1987
- let mqttIndex = 0;
2125
+ let mqttIndex = 0, httpIndex = 0, websocketIndex = 0, sseIndex = 0;
1988
2126
  this.mqttClients = [];
1989
- let websocketIndex = 0;
1990
- let sseIndex = 0;
1991
- let sqlIndex = 0;
1992
2127
  this.websockets = [];
1993
2128
  this.eventSources = [];
1994
2129
  networks.forEach(async (net) => {
1995
2130
  // if (net.type === 'subscribe') {
1996
2131
  if (net.protocol === 'mqtt') {
1997
2132
  net.index = mqttIndex;
1998
- if (net.options.clientId && !net.options.customClientId) {
1999
- net.options.clientId = s8();
2000
- }
2001
- net.times = 0;
2002
- this.mqttClients[mqttIndex] = mqtt.connect(net.url, net.options);
2003
- this.mqttClients[mqttIndex].on('message', (topic, message) => {
2004
- this.socketCallback(message.toString(), {
2005
- topic,
2006
- type: 'mqtt',
2007
- url: net.url,
2008
- });
2009
- });
2010
- this.mqttClients[mqttIndex].on('error', (error) => {
2011
- this.store.emitter.emit('error', { type: 'mqtt', error });
2012
- });
2013
- this.mqttClients[mqttIndex].on('close', () => {
2014
- if (this.store.options.reconnetTimes) {
2015
- net.times++;
2016
- if (net.times >= this.store.options.reconnetTimes) {
2017
- net.times = 0;
2018
- this.mqttClients && this.mqttClients[net.index]?.end();
2019
- }
2020
- }
2021
- });
2022
- if (net.topics) {
2023
- this.mqttClients[mqttIndex].subscribe(net.topics.split(','));
2024
- }
2133
+ this.connectNetMqtt(net);
2025
2134
  mqttIndex += 1;
2026
2135
  }
2027
2136
  else if (net.protocol === 'websocket') {
@@ -2051,6 +2160,7 @@ export class Meta2d {
2051
2160
  websocketIndex += 1;
2052
2161
  }
2053
2162
  else if (net.protocol === 'http') {
2163
+ net.index = httpIndex;
2054
2164
  https.push({
2055
2165
  url: net.url,
2056
2166
  interval: net.interval,
@@ -2058,6 +2168,7 @@ export class Meta2d {
2058
2168
  method: net.method,
2059
2169
  body: net.body,
2060
2170
  });
2171
+ httpIndex += 1;
2061
2172
  }
2062
2173
  else if (net.protocol === 'ADIIOT') {
2063
2174
  connectJetLinks(this, net);
@@ -2073,6 +2184,41 @@ export class Meta2d {
2073
2184
  this.connectIot();
2074
2185
  this.connectSqls();
2075
2186
  }
2187
+ reconnectNetwork(index) {
2188
+ const net = this.store.data.networks[index];
2189
+ if (net.protocol === 'mqtt') {
2190
+ this.mqttClients && this.mqttClients[net.index]?.end();
2191
+ this.connectNetMqtt(net);
2192
+ }
2193
+ else if (net.protocol === 'websocket') {
2194
+ if (this.websockets && this.websockets[net.index]) {
2195
+ this.websockets[net.index].onclose = undefined;
2196
+ this.websockets[net.index].close();
2197
+ this.websockets[net.index] = undefined;
2198
+ }
2199
+ this.connectNetWebSocket(net);
2200
+ }
2201
+ else if (net.protocol === 'http') {
2202
+ if (this.updateTimerList) {
2203
+ clearInterval(this.updateTimerList[net.index]);
2204
+ this.updateTimerList[net.index] = undefined;
2205
+ }
2206
+ const http = deepClone(net);
2207
+ if (!this.store.data.cancelFirstConnect) {
2208
+ this.requestHttp(http);
2209
+ }
2210
+ this.updateTimerList[net.index] = setInterval(async () => {
2211
+ this.requestHttp(http);
2212
+ }, http.interval || 1000);
2213
+ }
2214
+ else if (net.protocol === 'SSE') {
2215
+ if (this.eventSources) {
2216
+ this.eventSources[net.index]?.close();
2217
+ this.eventSources[net.index] = undefined;
2218
+ }
2219
+ this.connectSSE(net);
2220
+ }
2221
+ }
2076
2222
  iotMqttClient;
2077
2223
  iotTimer;
2078
2224
  iotWebsocketClient;
@@ -2087,6 +2233,7 @@ export class Meta2d {
2087
2233
  return;
2088
2234
  }
2089
2235
  const token = await this.getIotToken(iot.devices, iot.protocol === 'websocket' ? 1 : undefined);
2236
+ iot.token = token;
2090
2237
  //物联网设备
2091
2238
  // if(iot.protocol === 'mqtt'){
2092
2239
  // const url ='ws://192.168.110.148:8083/mqtt'; //`${location.protocol === 'https:'?'wss':'ws'}://${iot.host}:${location.protocol === 'https:'?'8084':'8083'}/mqtt`
@@ -2155,13 +2302,60 @@ export class Meta2d {
2155
2302
  }
2156
2303
  });
2157
2304
  }
2305
+ connectNetMqtt(net) {
2306
+ if (net.options.clientId && !net.options.customClientId) {
2307
+ net.options.clientId = s8();
2308
+ }
2309
+ let url = net.url;
2310
+ if (url.indexOf('${') > -1) {
2311
+ let keys = url.match(/\$\{([^}]+)\}/g)?.map(m => m.slice(2, -1));
2312
+ if (keys) {
2313
+ keys.forEach((key) => {
2314
+ url = url.replace(`\${${key}}`, this.getDynamicParam(key));
2315
+ });
2316
+ }
2317
+ }
2318
+ net.times = 0;
2319
+ this.mqttClients[net.index] = mqtt.connect(url, net.options);
2320
+ this.mqttClients[net.index].on('message', (topic, message) => {
2321
+ this.socketCallback(message.toString(), {
2322
+ topic,
2323
+ type: 'mqtt',
2324
+ url: net.url,
2325
+ });
2326
+ });
2327
+ this.mqttClients[net.index].on('error', (error) => {
2328
+ this.store.emitter.emit('error', { type: 'mqtt', error });
2329
+ });
2330
+ this.mqttClients[net.index].on('close', () => {
2331
+ if (this.store.options.reconnetTimes) {
2332
+ net.times++;
2333
+ if (net.times >= this.store.options.reconnetTimes) {
2334
+ net.times = 0;
2335
+ this.mqttClients && this.mqttClients[net.index]?.end();
2336
+ }
2337
+ }
2338
+ });
2339
+ if (net.topics) {
2340
+ this.mqttClients[net.index].subscribe(net.topics.split(','));
2341
+ }
2342
+ }
2158
2343
  connectNetWebSocket(net) {
2159
2344
  if (this.websockets[net.index]) {
2160
2345
  this.websockets[net.index].onclose = undefined;
2161
2346
  this.websockets[net.index]?.close();
2162
2347
  this.websockets[net.index] = undefined;
2163
2348
  }
2164
- this.websockets[net.index] = new WebSocket(net.url, net.protocols || undefined);
2349
+ let url = net.url;
2350
+ if (url.indexOf('${') > -1) {
2351
+ let keys = url.match(/\$\{([^}]+)\}/g)?.map(m => m.slice(2, -1));
2352
+ if (keys) {
2353
+ keys.forEach((key) => {
2354
+ url = url.replace(`\${${key}}`, this.getDynamicParam(key));
2355
+ });
2356
+ }
2357
+ }
2358
+ this.websockets[net.index] = new WebSocket(url, net.protocols || undefined);
2165
2359
  this.websockets[net.index].onmessage = (e) => {
2166
2360
  this.socketCallback(e.data, { type: 'websocket', url: net.url });
2167
2361
  };
@@ -2451,7 +2645,7 @@ export class Meta2d {
2451
2645
  //获取动态参数
2452
2646
  getDynamicParam(key) {
2453
2647
  let params = queryURLParams();
2454
- let value = params[key] || localStorage[key] || getCookie(key) || '';
2648
+ let value = params[key] || localStorage[key] || getCookie(key) || globalThis[key] || '';
2455
2649
  return value;
2456
2650
  }
2457
2651
  onNetworkConnect(https) {
@@ -3716,8 +3910,10 @@ export class Meta2d {
3716
3910
  this.store.data.fits?.forEach((fit) => {
3717
3911
  let pens = [];
3718
3912
  fit.children.forEach((id) => {
3719
- this.store.pens[id].locked = LockState.None;
3720
- pens.push(this.store.pens[id]);
3913
+ if (this.store.pens[id]) {
3914
+ this.store.pens[id].locked = LockState.None;
3915
+ pens.push(this.store.pens[id]);
3916
+ }
3721
3917
  });
3722
3918
  let r = wGap / 2;
3723
3919
  if (fit.left && fit.right) {
@@ -3810,8 +4006,10 @@ export class Meta2d {
3810
4006
  this.store.data.fits?.forEach((fit) => {
3811
4007
  let pens = [];
3812
4008
  fit.children.forEach((id) => {
3813
- this.store.pens[id].locked = LockState.None;
3814
- pens.push(this.store.pens[id]);
4009
+ if (this.store.pens[id]) {
4010
+ this.store.pens[id].locked = LockState.None;
4011
+ pens.push(this.store.pens[id]);
4012
+ }
3815
4013
  });
3816
4014
  let r = hGap / 2;
3817
4015
  if (fit.top && fit.bottom) {