@idraw/core 0.2.0-alpha.21 → 0.2.0-alpha.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +709 -1486
- package/dist/index.d.ts +2 -10
- package/dist/index.es.js +709 -1486
- package/dist/index.global.js +709 -1486
- package/dist/index.global.min.js +1 -1
- package/package.json +6 -6
package/dist/index.global.js
CHANGED
|
@@ -1,19 +1,6 @@
|
|
|
1
1
|
var iDrawCore = (function () {
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var extendStatics$1 = function(d, b) {
|
|
5
|
-
extendStatics$1 = Object.setPrototypeOf ||
|
|
6
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
7
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
8
|
-
return extendStatics$1(d, b);
|
|
9
|
-
};
|
|
10
|
-
function __extends$1(d, b) {
|
|
11
|
-
if (typeof b !== "function" && b !== null)
|
|
12
|
-
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
13
|
-
extendStatics$1(d, b);
|
|
14
|
-
function __() { this.constructor = d; }
|
|
15
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
16
|
-
}
|
|
17
4
|
var __assign$4 = function() {
|
|
18
5
|
__assign$4 = Object.assign || function __assign(t) {
|
|
19
6
|
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
@@ -24,42 +11,6 @@ var iDrawCore = (function () {
|
|
|
24
11
|
};
|
|
25
12
|
return __assign$4.apply(this, arguments);
|
|
26
13
|
};
|
|
27
|
-
function __awaiter$4(thisArg, _arguments, P, generator) {
|
|
28
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
29
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
30
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
31
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
32
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
33
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
function __generator$4(thisArg, body) {
|
|
37
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
38
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
39
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
40
|
-
function step(op) {
|
|
41
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
42
|
-
while (_) try {
|
|
43
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
44
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
45
|
-
switch (op[0]) {
|
|
46
|
-
case 0: case 1: t = op; break;
|
|
47
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
48
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
49
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
50
|
-
default:
|
|
51
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
52
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
53
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
54
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
55
|
-
if (t[2]) _.ops.pop();
|
|
56
|
-
_.trys.pop(); continue;
|
|
57
|
-
}
|
|
58
|
-
op = body.call(thisArg, _);
|
|
59
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
60
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
14
|
|
|
64
15
|
var __assign$1$1 = function() {
|
|
65
16
|
__assign$1$1 = Object.assign || function __assign(t) {
|
|
@@ -138,7 +89,7 @@ var iDrawCore = (function () {
|
|
|
138
89
|
}
|
|
139
90
|
return "" + str4() + str4() + "-" + str4() + "-" + str4() + "-" + str4() + "-" + str4() + str4() + str4();
|
|
140
91
|
}
|
|
141
|
-
function deepClone$
|
|
92
|
+
function deepClone$6(target) {
|
|
142
93
|
function _clone(t) {
|
|
143
94
|
var type = is$1$3(t);
|
|
144
95
|
if (['Null', 'Number', 'String', 'Boolean', 'Undefined'].indexOf(type) >= 0) {
|
|
@@ -170,7 +121,7 @@ var iDrawCore = (function () {
|
|
|
170
121
|
var result = typeStr.replace(/(\[object|\])/ig, '').trim();
|
|
171
122
|
return result;
|
|
172
123
|
}
|
|
173
|
-
var istype$
|
|
124
|
+
var istype$3 = {
|
|
174
125
|
type: function (data, lowerCase) {
|
|
175
126
|
var result = parsePrototype$2(data);
|
|
176
127
|
return lowerCase === true ? result.toLocaleLowerCase() : result;
|
|
@@ -283,7 +234,7 @@ var iDrawCore = (function () {
|
|
|
283
234
|
});
|
|
284
235
|
}
|
|
285
236
|
var Image$2 = window.Image;
|
|
286
|
-
function loadImage$
|
|
237
|
+
function loadImage$3(src) {
|
|
287
238
|
return new Promise(function (resolve, reject) {
|
|
288
239
|
var img = new Image$2;
|
|
289
240
|
img.onload = function () {
|
|
@@ -294,7 +245,7 @@ var iDrawCore = (function () {
|
|
|
294
245
|
img.src = src;
|
|
295
246
|
});
|
|
296
247
|
}
|
|
297
|
-
function loadSVG$
|
|
248
|
+
function loadSVG$3(svg) {
|
|
298
249
|
return __awaiter$3(this, void 0, void 0, function () {
|
|
299
250
|
var dataURL, image;
|
|
300
251
|
return __generator$3(this, function (_a) {
|
|
@@ -302,7 +253,7 @@ var iDrawCore = (function () {
|
|
|
302
253
|
case 0: return [4, parseSVGToDataURL$2(svg)];
|
|
303
254
|
case 1:
|
|
304
255
|
dataURL = _a.sent();
|
|
305
|
-
return [4, loadImage$
|
|
256
|
+
return [4, loadImage$3(dataURL)];
|
|
306
257
|
case 2:
|
|
307
258
|
image = _a.sent();
|
|
308
259
|
return [2, image];
|
|
@@ -310,7 +261,7 @@ var iDrawCore = (function () {
|
|
|
310
261
|
});
|
|
311
262
|
});
|
|
312
263
|
}
|
|
313
|
-
function loadHTML$
|
|
264
|
+
function loadHTML$3(html, opts) {
|
|
314
265
|
return __awaiter$3(this, void 0, void 0, function () {
|
|
315
266
|
var dataURL, image;
|
|
316
267
|
return __generator$3(this, function (_a) {
|
|
@@ -318,7 +269,7 @@ var iDrawCore = (function () {
|
|
|
318
269
|
case 0: return [4, parseHTMLToDataURL$2(html, opts)];
|
|
319
270
|
case 1:
|
|
320
271
|
dataURL = _a.sent();
|
|
321
|
-
return [4, loadImage$
|
|
272
|
+
return [4, loadImage$3(dataURL)];
|
|
322
273
|
case 2:
|
|
323
274
|
image = _a.sent();
|
|
324
275
|
return [2, image];
|
|
@@ -326,7 +277,7 @@ var iDrawCore = (function () {
|
|
|
326
277
|
});
|
|
327
278
|
});
|
|
328
279
|
}
|
|
329
|
-
var Context$
|
|
280
|
+
var Context$1$1 = (function () {
|
|
330
281
|
function Context(ctx, opts) {
|
|
331
282
|
this._opts = opts;
|
|
332
283
|
this._ctx = ctx;
|
|
@@ -743,9 +694,9 @@ var iDrawCore = (function () {
|
|
|
743
694
|
throttle: throttle$1$1,
|
|
744
695
|
},
|
|
745
696
|
loader: {
|
|
746
|
-
loadImage: loadImage$
|
|
747
|
-
loadSVG: loadSVG$
|
|
748
|
-
loadHTML: loadHTML$
|
|
697
|
+
loadImage: loadImage$3,
|
|
698
|
+
loadSVG: loadSVG$3,
|
|
699
|
+
loadHTML: loadHTML$3,
|
|
749
700
|
},
|
|
750
701
|
file: {
|
|
751
702
|
downloadImageFromCanvas: downloadImageFromCanvas$2,
|
|
@@ -758,11 +709,11 @@ var iDrawCore = (function () {
|
|
|
758
709
|
uuid: {
|
|
759
710
|
createUUID: createUUID$4
|
|
760
711
|
},
|
|
761
|
-
istype: istype$
|
|
712
|
+
istype: istype$3,
|
|
762
713
|
data: {
|
|
763
|
-
deepClone: deepClone$
|
|
714
|
+
deepClone: deepClone$6,
|
|
764
715
|
},
|
|
765
|
-
Context: Context$
|
|
716
|
+
Context: Context$1$1,
|
|
766
717
|
};
|
|
767
718
|
var BoardEvent = (function () {
|
|
768
719
|
function BoardEvent() {
|
|
@@ -828,7 +779,7 @@ var iDrawCore = (function () {
|
|
|
828
779
|
}
|
|
829
780
|
};
|
|
830
781
|
}
|
|
831
|
-
var TempData$
|
|
782
|
+
var TempData$2 = (function () {
|
|
832
783
|
function TempData() {
|
|
833
784
|
this._temp = createTempData();
|
|
834
785
|
}
|
|
@@ -846,7 +797,7 @@ var iDrawCore = (function () {
|
|
|
846
797
|
var ScreenWatcher = (function () {
|
|
847
798
|
function ScreenWatcher(canvas, ctx) {
|
|
848
799
|
this._isMoving = false;
|
|
849
|
-
this._temp = new TempData$
|
|
800
|
+
this._temp = new TempData$2;
|
|
850
801
|
this._container = window;
|
|
851
802
|
this._canvas = canvas;
|
|
852
803
|
this._isMoving = false;
|
|
@@ -1103,7 +1054,7 @@ var iDrawCore = (function () {
|
|
|
1103
1054
|
ctx.fillStyle = wrapper.color;
|
|
1104
1055
|
ctx.fillRect(0, this._doSize(height - wrapper.lineSize), this._doSize(width), this._doSize(wrapper.lineSize));
|
|
1105
1056
|
ctx.globalAlpha = 1;
|
|
1106
|
-
drawBox$
|
|
1057
|
+
drawBox$1(ctx, {
|
|
1107
1058
|
x: this._doSize(wrapper.translateX),
|
|
1108
1059
|
y: this._doSize(height - wrapper.lineSize),
|
|
1109
1060
|
w: this._doSize(wrapper.xSize),
|
|
@@ -1117,7 +1068,7 @@ var iDrawCore = (function () {
|
|
|
1117
1068
|
ctx.fillStyle = wrapper.color;
|
|
1118
1069
|
ctx.fillRect(this._doSize(width - wrapper.lineSize), 0, this._doSize(wrapper.lineSize), this._doSize(height));
|
|
1119
1070
|
ctx.globalAlpha = 1;
|
|
1120
|
-
drawBox$
|
|
1071
|
+
drawBox$1(ctx, {
|
|
1121
1072
|
x: this._doSize(width - wrapper.lineSize),
|
|
1122
1073
|
y: this._doSize(wrapper.translateY),
|
|
1123
1074
|
w: this._doSize(wrapper.lineSize),
|
|
@@ -1212,7 +1163,7 @@ var iDrawCore = (function () {
|
|
|
1212
1163
|
};
|
|
1213
1164
|
return Scroller;
|
|
1214
1165
|
}());
|
|
1215
|
-
function drawBox$
|
|
1166
|
+
function drawBox$1(ctx, opts) {
|
|
1216
1167
|
var x = opts.x, y = opts.y, w = opts.w, h = opts.h, color = opts.color;
|
|
1217
1168
|
var r = opts.r;
|
|
1218
1169
|
r = Math.min(r, w / 2, h / 2);
|
|
@@ -1332,37 +1283,6 @@ var iDrawCore = (function () {
|
|
|
1332
1283
|
};
|
|
1333
1284
|
return Screen;
|
|
1334
1285
|
}());
|
|
1335
|
-
var Context$1$1 = index$2.Context;
|
|
1336
|
-
function createDefaultData(opts) {
|
|
1337
|
-
var canvas = document.createElement('canvas');
|
|
1338
|
-
var ctx2d = canvas.getContext('2d');
|
|
1339
|
-
var ctx = new Context$1$1(ctx2d, {
|
|
1340
|
-
width: opts.width,
|
|
1341
|
-
height: opts.height,
|
|
1342
|
-
contextWidth: opts.contextWidth,
|
|
1343
|
-
contextHeight: opts.contextHeight,
|
|
1344
|
-
devicePixelRatio: opts.devicePixelRatio || window.devicePixelRatio || 1,
|
|
1345
|
-
});
|
|
1346
|
-
return {
|
|
1347
|
-
plugins: [],
|
|
1348
|
-
ctx: ctx
|
|
1349
|
-
};
|
|
1350
|
-
}
|
|
1351
|
-
var TempData$2 = (function () {
|
|
1352
|
-
function TempData(opts) {
|
|
1353
|
-
this._temp = createDefaultData(opts);
|
|
1354
|
-
}
|
|
1355
|
-
TempData.prototype.set = function (name, value) {
|
|
1356
|
-
this._temp[name] = value;
|
|
1357
|
-
};
|
|
1358
|
-
TempData.prototype.get = function (name) {
|
|
1359
|
-
return this._temp[name];
|
|
1360
|
-
};
|
|
1361
|
-
TempData.prototype.clear = function (opts) {
|
|
1362
|
-
this._temp = createDefaultData(opts);
|
|
1363
|
-
};
|
|
1364
|
-
return TempData;
|
|
1365
|
-
}());
|
|
1366
1286
|
var _canvas = Symbol('_canvas');
|
|
1367
1287
|
var _displayCanvas = Symbol('_displayCanvas');
|
|
1368
1288
|
var _helperCanvas = Symbol('_helperCanvas');
|
|
@@ -1381,14 +1301,12 @@ var iDrawCore = (function () {
|
|
|
1381
1301
|
var _doMoveScroll = Symbol('_doMoveScroll');
|
|
1382
1302
|
var _resetContext = Symbol('_resetContext');
|
|
1383
1303
|
var _screen = Symbol('_screen');
|
|
1384
|
-
var
|
|
1385
|
-
var _a$3;
|
|
1304
|
+
var _a$2;
|
|
1386
1305
|
var Context$3 = index$2.Context;
|
|
1387
1306
|
var throttle$2 = index$2.time.throttle;
|
|
1388
1307
|
var Board = (function () {
|
|
1389
1308
|
function Board(mount, opts) {
|
|
1390
|
-
this[_a$
|
|
1391
|
-
this[_tempData$1] = new TempData$2(opts);
|
|
1309
|
+
this[_a$2] = false;
|
|
1392
1310
|
this[_mount] = mount;
|
|
1393
1311
|
this[_canvas] = document.createElement('canvas');
|
|
1394
1312
|
this[_helperCanvas] = document.createElement('canvas');
|
|
@@ -1487,9 +1405,6 @@ var iDrawCore = (function () {
|
|
|
1487
1405
|
}
|
|
1488
1406
|
return { position: position, size: size };
|
|
1489
1407
|
};
|
|
1490
|
-
Board.prototype.addPlugin = function (plugin) {
|
|
1491
|
-
this[_tempData$1].get('plugins').push(plugin);
|
|
1492
|
-
};
|
|
1493
1408
|
Board.prototype.clear = function () {
|
|
1494
1409
|
var displayCtx = this[_displayCanvas].getContext('2d');
|
|
1495
1410
|
displayCtx === null || displayCtx === void 0 ? void 0 : displayCtx.clearRect(0, 0, this[_displayCanvas].width, this[_displayCanvas].height);
|
|
@@ -1545,7 +1460,7 @@ var iDrawCore = (function () {
|
|
|
1545
1460
|
};
|
|
1546
1461
|
return screenPoint;
|
|
1547
1462
|
};
|
|
1548
|
-
Board.prototype[(_a$
|
|
1463
|
+
Board.prototype[(_a$2 = _hasRendered, _render)] = function () {
|
|
1549
1464
|
if (this[_hasRendered] === true) {
|
|
1550
1465
|
return;
|
|
1551
1466
|
}
|
|
@@ -1713,7 +1628,7 @@ var iDrawCore = (function () {
|
|
|
1713
1628
|
}
|
|
1714
1629
|
return "" + str4() + str4() + "-" + str4() + "-" + str4() + "-" + str4() + "-" + str4() + str4() + str4();
|
|
1715
1630
|
}
|
|
1716
|
-
function deepClone$
|
|
1631
|
+
function deepClone$5(target) {
|
|
1717
1632
|
function _clone(t) {
|
|
1718
1633
|
var type = is$1$2(t);
|
|
1719
1634
|
if (['Null', 'Number', 'String', 'Boolean', 'Undefined'].indexOf(type) >= 0) {
|
|
@@ -1745,7 +1660,7 @@ var iDrawCore = (function () {
|
|
|
1745
1660
|
var result = typeStr.replace(/(\[object|\])/ig, '').trim();
|
|
1746
1661
|
return result;
|
|
1747
1662
|
}
|
|
1748
|
-
var istype$
|
|
1663
|
+
var istype$2 = {
|
|
1749
1664
|
type: function (data, lowerCase) {
|
|
1750
1665
|
var result = parsePrototype$1(data);
|
|
1751
1666
|
return lowerCase === true ? result.toLocaleLowerCase() : result;
|
|
@@ -1858,7 +1773,7 @@ var iDrawCore = (function () {
|
|
|
1858
1773
|
});
|
|
1859
1774
|
}
|
|
1860
1775
|
var Image$1 = window.Image;
|
|
1861
|
-
function loadImage$
|
|
1776
|
+
function loadImage$2(src) {
|
|
1862
1777
|
return new Promise(function (resolve, reject) {
|
|
1863
1778
|
var img = new Image$1;
|
|
1864
1779
|
img.onload = function () {
|
|
@@ -1869,7 +1784,7 @@ var iDrawCore = (function () {
|
|
|
1869
1784
|
img.src = src;
|
|
1870
1785
|
});
|
|
1871
1786
|
}
|
|
1872
|
-
function loadSVG$
|
|
1787
|
+
function loadSVG$2(svg) {
|
|
1873
1788
|
return __awaiter$2(this, void 0, void 0, function () {
|
|
1874
1789
|
var dataURL, image;
|
|
1875
1790
|
return __generator$2(this, function (_a) {
|
|
@@ -1877,7 +1792,7 @@ var iDrawCore = (function () {
|
|
|
1877
1792
|
case 0: return [4, parseSVGToDataURL$1(svg)];
|
|
1878
1793
|
case 1:
|
|
1879
1794
|
dataURL = _a.sent();
|
|
1880
|
-
return [4, loadImage$
|
|
1795
|
+
return [4, loadImage$2(dataURL)];
|
|
1881
1796
|
case 2:
|
|
1882
1797
|
image = _a.sent();
|
|
1883
1798
|
return [2, image];
|
|
@@ -1885,7 +1800,7 @@ var iDrawCore = (function () {
|
|
|
1885
1800
|
});
|
|
1886
1801
|
});
|
|
1887
1802
|
}
|
|
1888
|
-
function loadHTML$
|
|
1803
|
+
function loadHTML$2(html, opts) {
|
|
1889
1804
|
return __awaiter$2(this, void 0, void 0, function () {
|
|
1890
1805
|
var dataURL, image;
|
|
1891
1806
|
return __generator$2(this, function (_a) {
|
|
@@ -1893,7 +1808,7 @@ var iDrawCore = (function () {
|
|
|
1893
1808
|
case 0: return [4, parseHTMLToDataURL$1(html, opts)];
|
|
1894
1809
|
case 1:
|
|
1895
1810
|
dataURL = _a.sent();
|
|
1896
|
-
return [4, loadImage$
|
|
1811
|
+
return [4, loadImage$2(dataURL)];
|
|
1897
1812
|
case 2:
|
|
1898
1813
|
image = _a.sent();
|
|
1899
1814
|
return [2, image];
|
|
@@ -2318,9 +2233,9 @@ var iDrawCore = (function () {
|
|
|
2318
2233
|
throttle: throttle$1,
|
|
2319
2234
|
},
|
|
2320
2235
|
loader: {
|
|
2321
|
-
loadImage: loadImage$
|
|
2322
|
-
loadSVG: loadSVG$
|
|
2323
|
-
loadHTML: loadHTML$
|
|
2236
|
+
loadImage: loadImage$2,
|
|
2237
|
+
loadSVG: loadSVG$2,
|
|
2238
|
+
loadHTML: loadHTML$2,
|
|
2324
2239
|
},
|
|
2325
2240
|
file: {
|
|
2326
2241
|
downloadImageFromCanvas: downloadImageFromCanvas$1,
|
|
@@ -2333,9 +2248,9 @@ var iDrawCore = (function () {
|
|
|
2333
2248
|
uuid: {
|
|
2334
2249
|
createUUID: createUUID$3
|
|
2335
2250
|
},
|
|
2336
|
-
istype: istype$
|
|
2251
|
+
istype: istype$2,
|
|
2337
2252
|
data: {
|
|
2338
|
-
deepClone: deepClone$
|
|
2253
|
+
deepClone: deepClone$5,
|
|
2339
2254
|
},
|
|
2340
2255
|
Context: Context$2,
|
|
2341
2256
|
};
|
|
@@ -2457,7 +2372,7 @@ var iDrawCore = (function () {
|
|
|
2457
2372
|
function toColorHexStr(color) {
|
|
2458
2373
|
return '#' + color.toString(16);
|
|
2459
2374
|
}
|
|
2460
|
-
function isColorStr$1
|
|
2375
|
+
function isColorStr$1(color) {
|
|
2461
2376
|
return typeof color === 'string' && /^\#([0-9a-f]{3}|[0-9a-f]{6}|[0-9a-f]{8})$/i.test(color);
|
|
2462
2377
|
}
|
|
2463
2378
|
function createUUID$1$1() {
|
|
@@ -2878,7 +2793,7 @@ var iDrawCore = (function () {
|
|
|
2878
2793
|
return number$1(value) && value >= 0;
|
|
2879
2794
|
}
|
|
2880
2795
|
function color$2(value) {
|
|
2881
|
-
return isColorStr$1
|
|
2796
|
+
return isColorStr$1(value);
|
|
2882
2797
|
}
|
|
2883
2798
|
function imageURL$1(value) {
|
|
2884
2799
|
return (typeof value === 'string' && /^(http:\/\/|https:\/\/|\.\/|\/)/.test("" + value));
|
|
@@ -3081,7 +2996,7 @@ var iDrawCore = (function () {
|
|
|
3081
2996
|
color: {
|
|
3082
2997
|
toColorHexStr: toColorHexStr,
|
|
3083
2998
|
toColorHexNum: toColorHexNum,
|
|
3084
|
-
isColorStr: isColorStr$1
|
|
2999
|
+
isColorStr: isColorStr$1,
|
|
3085
3000
|
},
|
|
3086
3001
|
uuid: {
|
|
3087
3002
|
createUUID: createUUID$1$1
|
|
@@ -3120,7 +3035,7 @@ var iDrawCore = (function () {
|
|
|
3120
3035
|
ctx.translate(-center.x, -center.y);
|
|
3121
3036
|
}
|
|
3122
3037
|
}
|
|
3123
|
-
var is$1 = index.is, istype
|
|
3038
|
+
var is$1 = index.is, istype = index.istype, color$1 = index.color;
|
|
3124
3039
|
function clearContext$1(ctx) {
|
|
3125
3040
|
ctx.setFillStyle('#000000');
|
|
3126
3041
|
ctx.setStrokeStyle('#000000');
|
|
@@ -3131,14 +3046,14 @@ var iDrawCore = (function () {
|
|
|
3131
3046
|
ctx.setShadowOffsetY(0);
|
|
3132
3047
|
ctx.setShadowBlur(0);
|
|
3133
3048
|
}
|
|
3134
|
-
function drawBgColor
|
|
3049
|
+
function drawBgColor(ctx, color) {
|
|
3135
3050
|
var size = ctx.getSize();
|
|
3136
3051
|
ctx.setFillStyle(color);
|
|
3137
3052
|
ctx.fillRect(0, 0, size.contextWidth, size.contextHeight);
|
|
3138
3053
|
}
|
|
3139
|
-
function drawBox
|
|
3054
|
+
function drawBox(ctx, elem, pattern) {
|
|
3140
3055
|
clearContext$1(ctx);
|
|
3141
|
-
drawBoxBorder
|
|
3056
|
+
drawBoxBorder(ctx, elem);
|
|
3142
3057
|
clearContext$1(ctx);
|
|
3143
3058
|
rotateElement$1(ctx, elem, function () {
|
|
3144
3059
|
var x = elem.x, y = elem.y, w = elem.w, h = elem.h;
|
|
@@ -3157,13 +3072,13 @@ var iDrawCore = (function () {
|
|
|
3157
3072
|
if (typeof pattern === 'string') {
|
|
3158
3073
|
ctx.setFillStyle(pattern);
|
|
3159
3074
|
}
|
|
3160
|
-
else if (['CanvasPattern'].includes(istype
|
|
3075
|
+
else if (['CanvasPattern'].includes(istype.type(pattern))) {
|
|
3161
3076
|
ctx.setFillStyle(pattern);
|
|
3162
3077
|
}
|
|
3163
3078
|
ctx.fill();
|
|
3164
3079
|
});
|
|
3165
3080
|
}
|
|
3166
|
-
function drawBoxBorder
|
|
3081
|
+
function drawBoxBorder(ctx, elem) {
|
|
3167
3082
|
clearContext$1(ctx);
|
|
3168
3083
|
rotateElement$1(ctx, elem, function () {
|
|
3169
3084
|
if (!(elem.desc.borderWidth && elem.desc.borderWidth > 0)) {
|
|
@@ -3171,7 +3086,7 @@ var iDrawCore = (function () {
|
|
|
3171
3086
|
}
|
|
3172
3087
|
var bw = elem.desc.borderWidth;
|
|
3173
3088
|
var borderColor = '#000000';
|
|
3174
|
-
if (color$1
|
|
3089
|
+
if (color$1.isColorStr(elem.desc.borderColor) === true) {
|
|
3175
3090
|
borderColor = elem.desc.borderColor;
|
|
3176
3091
|
}
|
|
3177
3092
|
var x = elem.x - bw / 2;
|
|
@@ -3184,7 +3099,7 @@ var iDrawCore = (function () {
|
|
|
3184
3099
|
r = r + bw / 2;
|
|
3185
3100
|
}
|
|
3186
3101
|
var desc = elem.desc;
|
|
3187
|
-
if (desc.shadowColor !== undefined && color$1
|
|
3102
|
+
if (desc.shadowColor !== undefined && color$1.isColorStr(desc.shadowColor)) {
|
|
3188
3103
|
ctx.setShadowColor(desc.shadowColor);
|
|
3189
3104
|
}
|
|
3190
3105
|
if (desc.shadowOffsetX !== undefined && is$1.number(desc.shadowOffsetX)) {
|
|
@@ -3208,10 +3123,10 @@ var iDrawCore = (function () {
|
|
|
3208
3123
|
ctx.stroke();
|
|
3209
3124
|
});
|
|
3210
3125
|
}
|
|
3211
|
-
function drawRect
|
|
3212
|
-
drawBox
|
|
3126
|
+
function drawRect(ctx, elem) {
|
|
3127
|
+
drawBox(ctx, elem, elem.desc.bgColor);
|
|
3213
3128
|
}
|
|
3214
|
-
function drawImage
|
|
3129
|
+
function drawImage(ctx, elem, loader) {
|
|
3215
3130
|
var content = loader.getContent(elem.uuid);
|
|
3216
3131
|
rotateElement$1(ctx, elem, function () {
|
|
3217
3132
|
if (content) {
|
|
@@ -3219,7 +3134,7 @@ var iDrawCore = (function () {
|
|
|
3219
3134
|
}
|
|
3220
3135
|
});
|
|
3221
3136
|
}
|
|
3222
|
-
function drawSVG
|
|
3137
|
+
function drawSVG(ctx, elem, loader) {
|
|
3223
3138
|
var content = loader.getContent(elem.uuid);
|
|
3224
3139
|
rotateElement$1(ctx, elem, function () {
|
|
3225
3140
|
if (content) {
|
|
@@ -3227,7 +3142,7 @@ var iDrawCore = (function () {
|
|
|
3227
3142
|
}
|
|
3228
3143
|
});
|
|
3229
3144
|
}
|
|
3230
|
-
function drawHTML
|
|
3145
|
+
function drawHTML(ctx, elem, loader) {
|
|
3231
3146
|
var content = loader.getContent(elem.uuid);
|
|
3232
3147
|
rotateElement$1(ctx, elem, function () {
|
|
3233
3148
|
if (content) {
|
|
@@ -3236,9 +3151,9 @@ var iDrawCore = (function () {
|
|
|
3236
3151
|
});
|
|
3237
3152
|
}
|
|
3238
3153
|
var is$3 = index.is, color$3 = index.color;
|
|
3239
|
-
function drawText
|
|
3154
|
+
function drawText(ctx, elem, loader) {
|
|
3240
3155
|
clearContext$1(ctx);
|
|
3241
|
-
drawBox
|
|
3156
|
+
drawBox(ctx, elem, elem.desc.bgColor || 'transparent');
|
|
3242
3157
|
rotateElement$1(ctx, elem, function () {
|
|
3243
3158
|
var desc = __assign$1({
|
|
3244
3159
|
fontSize: 12,
|
|
@@ -3338,7 +3253,7 @@ var iDrawCore = (function () {
|
|
|
3338
3253
|
}
|
|
3339
3254
|
});
|
|
3340
3255
|
}
|
|
3341
|
-
function drawCircle
|
|
3256
|
+
function drawCircle(ctx, elem) {
|
|
3342
3257
|
clearContext$1(ctx);
|
|
3343
3258
|
rotateElement$1(ctx, elem, function (ctx) {
|
|
3344
3259
|
var x = elem.x, y = elem.y, w = elem.w, h = elem.h, desc = elem.desc;
|
|
@@ -3365,13 +3280,13 @@ var iDrawCore = (function () {
|
|
|
3365
3280
|
});
|
|
3366
3281
|
}
|
|
3367
3282
|
var isColorStr$2 = index.color.isColorStr;
|
|
3368
|
-
function drawContext
|
|
3283
|
+
function drawContext(ctx, data, loader) {
|
|
3369
3284
|
var _a;
|
|
3370
3285
|
clearContext$1(ctx);
|
|
3371
3286
|
var size = ctx.getSize();
|
|
3372
3287
|
ctx.clearRect(0, 0, size.contextWidth, size.contextHeight);
|
|
3373
3288
|
if (typeof data.bgColor === 'string' && isColorStr$2(data.bgColor)) {
|
|
3374
|
-
drawBgColor
|
|
3289
|
+
drawBgColor(ctx, data.bgColor);
|
|
3375
3290
|
}
|
|
3376
3291
|
if (!(data.elements.length > 0)) {
|
|
3377
3292
|
return;
|
|
@@ -3383,33 +3298,33 @@ var iDrawCore = (function () {
|
|
|
3383
3298
|
}
|
|
3384
3299
|
switch (elem.type) {
|
|
3385
3300
|
case 'rect': {
|
|
3386
|
-
drawRect
|
|
3301
|
+
drawRect(ctx, elem);
|
|
3387
3302
|
break;
|
|
3388
3303
|
}
|
|
3389
3304
|
case 'text': {
|
|
3390
|
-
drawText
|
|
3305
|
+
drawText(ctx, elem);
|
|
3391
3306
|
break;
|
|
3392
3307
|
}
|
|
3393
3308
|
case 'image': {
|
|
3394
|
-
drawImage
|
|
3309
|
+
drawImage(ctx, elem, loader);
|
|
3395
3310
|
break;
|
|
3396
3311
|
}
|
|
3397
3312
|
case 'svg': {
|
|
3398
|
-
drawSVG
|
|
3313
|
+
drawSVG(ctx, elem, loader);
|
|
3399
3314
|
break;
|
|
3400
3315
|
}
|
|
3401
3316
|
case 'html': {
|
|
3402
|
-
drawHTML
|
|
3317
|
+
drawHTML(ctx, elem, loader);
|
|
3403
3318
|
break;
|
|
3404
3319
|
}
|
|
3405
3320
|
case 'circle': {
|
|
3406
|
-
drawCircle
|
|
3321
|
+
drawCircle(ctx, elem);
|
|
3407
3322
|
break;
|
|
3408
3323
|
}
|
|
3409
3324
|
}
|
|
3410
3325
|
}
|
|
3411
3326
|
}
|
|
3412
|
-
var LoaderEvent
|
|
3327
|
+
var LoaderEvent = (function () {
|
|
3413
3328
|
function LoaderEvent() {
|
|
3414
3329
|
this._listeners = new Map();
|
|
3415
3330
|
}
|
|
@@ -3460,36 +3375,36 @@ var iDrawCore = (function () {
|
|
|
3460
3375
|
};
|
|
3461
3376
|
return LoaderEvent;
|
|
3462
3377
|
}());
|
|
3463
|
-
function filterScript
|
|
3378
|
+
function filterScript(html) {
|
|
3464
3379
|
return html.replace(/<script[\s\S]*?<\/script>/ig, '');
|
|
3465
3380
|
}
|
|
3466
|
-
var _a$1 = index.loader, loadImage
|
|
3381
|
+
var _a$1 = index.loader, loadImage = _a$1.loadImage, loadSVG = _a$1.loadSVG, loadHTML = _a$1.loadHTML;
|
|
3467
3382
|
var deepClone$1$1 = index.data.deepClone;
|
|
3468
|
-
var LoaderStatus
|
|
3383
|
+
var LoaderStatus;
|
|
3469
3384
|
(function (LoaderStatus) {
|
|
3470
3385
|
LoaderStatus["FREE"] = "free";
|
|
3471
3386
|
LoaderStatus["LOADING"] = "loading";
|
|
3472
3387
|
LoaderStatus["COMPLETE"] = "complete";
|
|
3473
|
-
})(LoaderStatus
|
|
3474
|
-
var Loader
|
|
3388
|
+
})(LoaderStatus || (LoaderStatus = {}));
|
|
3389
|
+
var Loader = (function () {
|
|
3475
3390
|
function Loader(opts) {
|
|
3476
3391
|
this._currentLoadData = {};
|
|
3477
3392
|
this._currentUUIDQueue = [];
|
|
3478
3393
|
this._storageLoadData = {};
|
|
3479
|
-
this._status = LoaderStatus
|
|
3394
|
+
this._status = LoaderStatus.FREE;
|
|
3480
3395
|
this._waitingLoadQueue = [];
|
|
3481
3396
|
this._opts = opts;
|
|
3482
|
-
this._event = new LoaderEvent
|
|
3397
|
+
this._event = new LoaderEvent();
|
|
3483
3398
|
this._waitingLoadQueue = [];
|
|
3484
3399
|
}
|
|
3485
3400
|
Loader.prototype.load = function (data, changeResourceUUIDs) {
|
|
3486
3401
|
var _a = this._resetLoadData(data, changeResourceUUIDs), uuidQueue = _a[0], loadData = _a[1];
|
|
3487
|
-
if (this._status === LoaderStatus
|
|
3402
|
+
if (this._status === LoaderStatus.FREE || this._status === LoaderStatus.COMPLETE) {
|
|
3488
3403
|
this._currentUUIDQueue = uuidQueue;
|
|
3489
3404
|
this._currentLoadData = loadData;
|
|
3490
3405
|
this._loadTask();
|
|
3491
3406
|
}
|
|
3492
|
-
else if (this._status === LoaderStatus
|
|
3407
|
+
else if (this._status === LoaderStatus.LOADING && uuidQueue.length > 0) {
|
|
3493
3408
|
this._waitingLoadQueue.push({
|
|
3494
3409
|
uuidQueue: uuidQueue,
|
|
3495
3410
|
loadData: loadData,
|
|
@@ -3503,7 +3418,7 @@ var iDrawCore = (function () {
|
|
|
3503
3418
|
this._event.off(name, callback);
|
|
3504
3419
|
};
|
|
3505
3420
|
Loader.prototype.isComplete = function () {
|
|
3506
|
-
return this._status === LoaderStatus
|
|
3421
|
+
return this._status === LoaderStatus.COMPLETE;
|
|
3507
3422
|
};
|
|
3508
3423
|
Loader.prototype.getContent = function (uuid) {
|
|
3509
3424
|
var _a;
|
|
@@ -3548,7 +3463,7 @@ var iDrawCore = (function () {
|
|
|
3548
3463
|
}
|
|
3549
3464
|
else if (elem.type === 'html') {
|
|
3550
3465
|
var _elem = elem;
|
|
3551
|
-
source = filterScript
|
|
3466
|
+
source = filterScript(_elem.desc.html || '');
|
|
3552
3467
|
elemW = _elem.desc.width || elem.w;
|
|
3553
3468
|
elemH = _elem.desc.height || elem.h;
|
|
3554
3469
|
}
|
|
@@ -3565,13 +3480,13 @@ var iDrawCore = (function () {
|
|
|
3565
3480
|
};
|
|
3566
3481
|
Loader.prototype._loadTask = function () {
|
|
3567
3482
|
var _this = this;
|
|
3568
|
-
if (this._status === LoaderStatus
|
|
3483
|
+
if (this._status === LoaderStatus.LOADING) {
|
|
3569
3484
|
return;
|
|
3570
3485
|
}
|
|
3571
|
-
this._status = LoaderStatus
|
|
3486
|
+
this._status = LoaderStatus.LOADING;
|
|
3572
3487
|
if (this._currentUUIDQueue.length === 0) {
|
|
3573
3488
|
if (this._waitingLoadQueue.length === 0) {
|
|
3574
|
-
this._status = LoaderStatus
|
|
3489
|
+
this._status = LoaderStatus.COMPLETE;
|
|
3575
3490
|
this._event.trigger('complete', undefined);
|
|
3576
3491
|
return;
|
|
3577
3492
|
}
|
|
@@ -3619,7 +3534,7 @@ var iDrawCore = (function () {
|
|
|
3619
3534
|
element: _this._currentLoadData[uuid].element,
|
|
3620
3535
|
};
|
|
3621
3536
|
if (loadUUIDList.length === 0 && uuids.length === 0 && status === true) {
|
|
3622
|
-
_this._status = LoaderStatus
|
|
3537
|
+
_this._status = LoaderStatus.FREE;
|
|
3623
3538
|
_this._loadTask();
|
|
3624
3539
|
}
|
|
3625
3540
|
_this._event.trigger('load', {
|
|
@@ -3651,7 +3566,7 @@ var iDrawCore = (function () {
|
|
|
3651
3566
|
};
|
|
3652
3567
|
}
|
|
3653
3568
|
if (loadUUIDList.length === 0 && uuids.length === 0 && status === true) {
|
|
3654
|
-
_this._status = LoaderStatus
|
|
3569
|
+
_this._status = LoaderStatus.FREE;
|
|
3655
3570
|
_this._loadTask();
|
|
3656
3571
|
}
|
|
3657
3572
|
if (_this._currentLoadData[uuid]) {
|
|
@@ -3684,19 +3599,19 @@ var iDrawCore = (function () {
|
|
|
3684
3599
|
switch (_a.label) {
|
|
3685
3600
|
case 0:
|
|
3686
3601
|
if (!(params && params.type === 'image')) return [3, 2];
|
|
3687
|
-
return [4, loadImage
|
|
3602
|
+
return [4, loadImage(params.source)];
|
|
3688
3603
|
case 1:
|
|
3689
3604
|
image = _a.sent();
|
|
3690
3605
|
return [2, image];
|
|
3691
3606
|
case 2:
|
|
3692
3607
|
if (!(params && params.type === 'svg')) return [3, 4];
|
|
3693
|
-
return [4, loadSVG
|
|
3608
|
+
return [4, loadSVG(params.source)];
|
|
3694
3609
|
case 3:
|
|
3695
3610
|
image = _a.sent();
|
|
3696
3611
|
return [2, image];
|
|
3697
3612
|
case 4:
|
|
3698
3613
|
if (!(params && params.type === 'html')) return [3, 6];
|
|
3699
|
-
return [4, loadHTML
|
|
3614
|
+
return [4, loadHTML(params.source, {
|
|
3700
3615
|
width: params.elemW, height: params.elemH
|
|
3701
3616
|
})];
|
|
3702
3617
|
case 5:
|
|
@@ -3709,7 +3624,7 @@ var iDrawCore = (function () {
|
|
|
3709
3624
|
};
|
|
3710
3625
|
return Loader;
|
|
3711
3626
|
}());
|
|
3712
|
-
var RendererEvent
|
|
3627
|
+
var RendererEvent = (function () {
|
|
3713
3628
|
function RendererEvent() {
|
|
3714
3629
|
this._listeners = new Map();
|
|
3715
3630
|
}
|
|
@@ -3768,27 +3683,27 @@ var iDrawCore = (function () {
|
|
|
3768
3683
|
var _freeze = Symbol('_freeze');
|
|
3769
3684
|
var _drawFrame = Symbol('_drawFrame');
|
|
3770
3685
|
var _retainQueueOneItem = Symbol('_retainQueueOneItem');
|
|
3771
|
-
var _a
|
|
3772
|
-
var requestAnimationFrame
|
|
3686
|
+
var _a, _b, _c;
|
|
3687
|
+
var requestAnimationFrame = window.requestAnimationFrame;
|
|
3773
3688
|
var createUUID$2 = index.uuid.createUUID;
|
|
3774
|
-
var deepClone$
|
|
3689
|
+
var deepClone$4 = index.data.deepClone;
|
|
3775
3690
|
var Context = index.Context;
|
|
3776
|
-
var DrawStatus
|
|
3691
|
+
var DrawStatus;
|
|
3777
3692
|
(function (DrawStatus) {
|
|
3778
3693
|
DrawStatus["NULL"] = "null";
|
|
3779
3694
|
DrawStatus["FREE"] = "free";
|
|
3780
3695
|
DrawStatus["DRAWING"] = "drawing";
|
|
3781
3696
|
DrawStatus["FREEZE"] = "freeze";
|
|
3782
|
-
})(DrawStatus
|
|
3697
|
+
})(DrawStatus || (DrawStatus = {}));
|
|
3783
3698
|
var Renderer = (function (_super) {
|
|
3784
3699
|
__extends(Renderer, _super);
|
|
3785
3700
|
function Renderer(opts) {
|
|
3786
3701
|
var _this = _super.call(this) || this;
|
|
3787
|
-
_this[_a
|
|
3702
|
+
_this[_a] = [];
|
|
3788
3703
|
_this[_b] = null;
|
|
3789
|
-
_this[_c] = DrawStatus
|
|
3704
|
+
_this[_c] = DrawStatus.NULL;
|
|
3790
3705
|
_this[_opts$2] = opts;
|
|
3791
|
-
_this[_loader] = new Loader
|
|
3706
|
+
_this[_loader] = new Loader({
|
|
3792
3707
|
maxParallelNum: 6
|
|
3793
3708
|
});
|
|
3794
3709
|
_this[_loader].on('load', function (res) {
|
|
@@ -3805,8 +3720,8 @@ var iDrawCore = (function () {
|
|
|
3805
3720
|
}
|
|
3806
3721
|
Renderer.prototype.render = function (target, originData, opts) {
|
|
3807
3722
|
var _d = (opts || {}).changeResourceUUIDs, changeResourceUUIDs = _d === void 0 ? [] : _d;
|
|
3808
|
-
this[_status] = DrawStatus
|
|
3809
|
-
var data = deepClone$
|
|
3723
|
+
this[_status] = DrawStatus.FREE;
|
|
3724
|
+
var data = deepClone$4(originData);
|
|
3810
3725
|
if (Array.isArray(data.elements)) {
|
|
3811
3726
|
data.elements.forEach(function (elem) {
|
|
3812
3727
|
if (!(typeof elem.uuid === 'string' && elem.uuid)) {
|
|
@@ -3833,10 +3748,10 @@ var iDrawCore = (function () {
|
|
|
3833
3748
|
this[_ctx] = target;
|
|
3834
3749
|
}
|
|
3835
3750
|
}
|
|
3836
|
-
if ([DrawStatus
|
|
3751
|
+
if ([DrawStatus.FREEZE].includes(this[_status])) {
|
|
3837
3752
|
return;
|
|
3838
3753
|
}
|
|
3839
|
-
var _data = deepClone$
|
|
3754
|
+
var _data = deepClone$4({ data: data, });
|
|
3840
3755
|
this[_queue].push(_data);
|
|
3841
3756
|
this[_drawFrame]();
|
|
3842
3757
|
this[_loader].load(data, changeResourceUUIDs || []);
|
|
@@ -3845,18 +3760,18 @@ var iDrawCore = (function () {
|
|
|
3845
3760
|
return this[_ctx];
|
|
3846
3761
|
};
|
|
3847
3762
|
Renderer.prototype.thaw = function () {
|
|
3848
|
-
this[_status] = DrawStatus
|
|
3763
|
+
this[_status] = DrawStatus.FREE;
|
|
3849
3764
|
};
|
|
3850
|
-
Renderer.prototype[(_a
|
|
3851
|
-
this[_status] = DrawStatus
|
|
3765
|
+
Renderer.prototype[(_a = _queue, _b = _ctx, _c = _status, _freeze)] = function () {
|
|
3766
|
+
this[_status] = DrawStatus.FREEZE;
|
|
3852
3767
|
};
|
|
3853
3768
|
Renderer.prototype[_drawFrame] = function () {
|
|
3854
3769
|
var _this = this;
|
|
3855
|
-
if (this[_status] === DrawStatus
|
|
3770
|
+
if (this[_status] === DrawStatus.FREEZE) {
|
|
3856
3771
|
return;
|
|
3857
3772
|
}
|
|
3858
|
-
requestAnimationFrame
|
|
3859
|
-
if (_this[_status] === DrawStatus
|
|
3773
|
+
requestAnimationFrame(function () {
|
|
3774
|
+
if (_this[_status] === DrawStatus.FREEZE) {
|
|
3860
3775
|
return;
|
|
3861
3776
|
}
|
|
3862
3777
|
var ctx = _this[_ctx];
|
|
@@ -3871,26 +3786,26 @@ var iDrawCore = (function () {
|
|
|
3871
3786
|
if (_this[_loader].isComplete() !== true) {
|
|
3872
3787
|
_this[_drawFrame]();
|
|
3873
3788
|
if (item && ctx) {
|
|
3874
|
-
drawContext
|
|
3789
|
+
drawContext(ctx, item.data, _this[_loader]);
|
|
3875
3790
|
}
|
|
3876
3791
|
}
|
|
3877
3792
|
else if (item && ctx) {
|
|
3878
|
-
drawContext
|
|
3793
|
+
drawContext(ctx, item.data, _this[_loader]);
|
|
3879
3794
|
_this[_retainQueueOneItem]();
|
|
3880
3795
|
if (!isLastFrame) {
|
|
3881
3796
|
_this[_drawFrame]();
|
|
3882
3797
|
}
|
|
3883
3798
|
else {
|
|
3884
|
-
_this[_status] = DrawStatus
|
|
3799
|
+
_this[_status] = DrawStatus.FREE;
|
|
3885
3800
|
}
|
|
3886
3801
|
}
|
|
3887
3802
|
else {
|
|
3888
|
-
_this[_status] = DrawStatus
|
|
3803
|
+
_this[_status] = DrawStatus.FREE;
|
|
3889
3804
|
}
|
|
3890
3805
|
_this.trigger('drawFrame', { t: Date.now() });
|
|
3891
|
-
if (_this[_loader].isComplete() === true && _this[_queue].length === 1 && _this[_status] === DrawStatus
|
|
3806
|
+
if (_this[_loader].isComplete() === true && _this[_queue].length === 1 && _this[_status] === DrawStatus.FREE) {
|
|
3892
3807
|
if (ctx && _this[_queue][0] && _this[_queue][0].data) {
|
|
3893
|
-
drawContext
|
|
3808
|
+
drawContext(ctx, _this[_queue][0].data, _this[_loader]);
|
|
3894
3809
|
}
|
|
3895
3810
|
_this.trigger('drawFrameComplete', { t: Date.now() });
|
|
3896
3811
|
_this[_freeze]();
|
|
@@ -3901,13 +3816,13 @@ var iDrawCore = (function () {
|
|
|
3901
3816
|
if (this[_queue].length <= 1) {
|
|
3902
3817
|
return;
|
|
3903
3818
|
}
|
|
3904
|
-
var lastOne = deepClone$
|
|
3819
|
+
var lastOne = deepClone$4(this[_queue][this[_queue].length - 1]);
|
|
3905
3820
|
this[_queue] = [lastOne];
|
|
3906
3821
|
};
|
|
3907
3822
|
return Renderer;
|
|
3908
|
-
}(RendererEvent
|
|
3823
|
+
}(RendererEvent));
|
|
3909
3824
|
|
|
3910
|
-
var isColorStr
|
|
3825
|
+
var isColorStr = index$1.color.isColorStr;
|
|
3911
3826
|
function number(value) {
|
|
3912
3827
|
return (typeof value === 'number' && (value > 0 || value <= 0));
|
|
3913
3828
|
}
|
|
@@ -3932,8 +3847,8 @@ var iDrawCore = (function () {
|
|
|
3932
3847
|
function borderRadius(value) {
|
|
3933
3848
|
return number(value) && value >= 0;
|
|
3934
3849
|
}
|
|
3935
|
-
function color
|
|
3936
|
-
return isColorStr
|
|
3850
|
+
function color(value) {
|
|
3851
|
+
return isColorStr(value);
|
|
3937
3852
|
}
|
|
3938
3853
|
function imageURL(value) {
|
|
3939
3854
|
return (typeof value === 'string' && /^(http:\/\/|https:\/\/|\.\/|\/)/.test("" + value));
|
|
@@ -3989,7 +3904,7 @@ var iDrawCore = (function () {
|
|
|
3989
3904
|
number: number,
|
|
3990
3905
|
borderWidth: borderWidth,
|
|
3991
3906
|
borderRadius: borderRadius,
|
|
3992
|
-
color: color
|
|
3907
|
+
color: color,
|
|
3993
3908
|
imageSrc: imageSrc,
|
|
3994
3909
|
imageURL: imageURL,
|
|
3995
3910
|
imageBase64: imageBase64,
|
|
@@ -4184,6 +4099,156 @@ var iDrawCore = (function () {
|
|
|
4184
4099
|
return null;
|
|
4185
4100
|
}
|
|
4186
4101
|
|
|
4102
|
+
var defaultConfig = {
|
|
4103
|
+
elementWrapper: {
|
|
4104
|
+
color: '#2ab6f1',
|
|
4105
|
+
lockColor: '#aaaaaa',
|
|
4106
|
+
controllerSize: 6,
|
|
4107
|
+
lineWidth: 1,
|
|
4108
|
+
lineDash: [4, 3],
|
|
4109
|
+
}
|
|
4110
|
+
};
|
|
4111
|
+
function mergeConfig(config) {
|
|
4112
|
+
var result = index$1.data.deepClone(defaultConfig);
|
|
4113
|
+
if (config) {
|
|
4114
|
+
if (config.elementWrapper) {
|
|
4115
|
+
result.elementWrapper = __assign$4(__assign$4({}, result.elementWrapper), config.elementWrapper);
|
|
4116
|
+
}
|
|
4117
|
+
}
|
|
4118
|
+
return result;
|
|
4119
|
+
}
|
|
4120
|
+
|
|
4121
|
+
var CoreEvent = (function () {
|
|
4122
|
+
function CoreEvent() {
|
|
4123
|
+
this._listeners = new Map();
|
|
4124
|
+
}
|
|
4125
|
+
CoreEvent.prototype.on = function (eventKey, callback) {
|
|
4126
|
+
if (this._listeners.has(eventKey)) {
|
|
4127
|
+
var callbacks = this._listeners.get(eventKey);
|
|
4128
|
+
callbacks === null || callbacks === void 0 ? void 0 : callbacks.push(callback);
|
|
4129
|
+
this._listeners.set(eventKey, callbacks || []);
|
|
4130
|
+
}
|
|
4131
|
+
else {
|
|
4132
|
+
this._listeners.set(eventKey, [callback]);
|
|
4133
|
+
}
|
|
4134
|
+
};
|
|
4135
|
+
CoreEvent.prototype.off = function (eventKey, callback) {
|
|
4136
|
+
if (this._listeners.has(eventKey)) {
|
|
4137
|
+
var callbacks = this._listeners.get(eventKey);
|
|
4138
|
+
if (Array.isArray(callbacks)) {
|
|
4139
|
+
for (var i = 0; i < (callbacks === null || callbacks === void 0 ? void 0 : callbacks.length); i++) {
|
|
4140
|
+
if (callbacks[i] === callback) {
|
|
4141
|
+
callbacks.splice(i, 1);
|
|
4142
|
+
break;
|
|
4143
|
+
}
|
|
4144
|
+
}
|
|
4145
|
+
}
|
|
4146
|
+
this._listeners.set(eventKey, callbacks || []);
|
|
4147
|
+
}
|
|
4148
|
+
};
|
|
4149
|
+
CoreEvent.prototype.trigger = function (eventKey, arg) {
|
|
4150
|
+
var callbacks = this._listeners.get(eventKey);
|
|
4151
|
+
if (Array.isArray(callbacks)) {
|
|
4152
|
+
callbacks.forEach(function (cb) {
|
|
4153
|
+
cb(arg);
|
|
4154
|
+
});
|
|
4155
|
+
return true;
|
|
4156
|
+
}
|
|
4157
|
+
else {
|
|
4158
|
+
return false;
|
|
4159
|
+
}
|
|
4160
|
+
};
|
|
4161
|
+
CoreEvent.prototype.has = function (name) {
|
|
4162
|
+
if (this._listeners.has(name)) {
|
|
4163
|
+
var list = this._listeners.get(name);
|
|
4164
|
+
if (Array.isArray(list) && list.length > 0) {
|
|
4165
|
+
return true;
|
|
4166
|
+
}
|
|
4167
|
+
}
|
|
4168
|
+
return false;
|
|
4169
|
+
};
|
|
4170
|
+
return CoreEvent;
|
|
4171
|
+
}());
|
|
4172
|
+
|
|
4173
|
+
function isChangeImageElementResource(before, after) {
|
|
4174
|
+
var _a, _b;
|
|
4175
|
+
return (((_a = before === null || before === void 0 ? void 0 : before.desc) === null || _a === void 0 ? void 0 : _a.src) !== ((_b = after === null || after === void 0 ? void 0 : after.desc) === null || _b === void 0 ? void 0 : _b.src));
|
|
4176
|
+
}
|
|
4177
|
+
function isChangeSVGElementResource(before, after) {
|
|
4178
|
+
var _a, _b;
|
|
4179
|
+
return (((_a = before === null || before === void 0 ? void 0 : before.desc) === null || _a === void 0 ? void 0 : _a.svg) !== ((_b = after === null || after === void 0 ? void 0 : after.desc) === null || _b === void 0 ? void 0 : _b.svg));
|
|
4180
|
+
}
|
|
4181
|
+
function isChangeHTMLElementResource(before, after) {
|
|
4182
|
+
var _a, _b, _c, _d, _e, _f;
|
|
4183
|
+
return (((_a = before === null || before === void 0 ? void 0 : before.desc) === null || _a === void 0 ? void 0 : _a.html) !== ((_b = after === null || after === void 0 ? void 0 : after.desc) === null || _b === void 0 ? void 0 : _b.html)
|
|
4184
|
+
|| ((_c = before === null || before === void 0 ? void 0 : before.desc) === null || _c === void 0 ? void 0 : _c.width) !== ((_d = after === null || after === void 0 ? void 0 : after.desc) === null || _d === void 0 ? void 0 : _d.width)
|
|
4185
|
+
|| ((_e = before === null || before === void 0 ? void 0 : before.desc) === null || _e === void 0 ? void 0 : _e.height) !== ((_f = after === null || after === void 0 ? void 0 : after.desc) === null || _f === void 0 ? void 0 : _f.height));
|
|
4186
|
+
}
|
|
4187
|
+
function diffElementResourceChange(before, after) {
|
|
4188
|
+
var result = null;
|
|
4189
|
+
var isChange = false;
|
|
4190
|
+
switch (after.type) {
|
|
4191
|
+
case 'image': {
|
|
4192
|
+
isChange = isChangeImageElementResource(before, after);
|
|
4193
|
+
break;
|
|
4194
|
+
}
|
|
4195
|
+
case 'svg': {
|
|
4196
|
+
isChange = isChangeSVGElementResource(before, after);
|
|
4197
|
+
break;
|
|
4198
|
+
}
|
|
4199
|
+
case 'html': {
|
|
4200
|
+
isChange = isChangeHTMLElementResource(before, after);
|
|
4201
|
+
break;
|
|
4202
|
+
}
|
|
4203
|
+
}
|
|
4204
|
+
if (isChange === true) {
|
|
4205
|
+
result = after.uuid;
|
|
4206
|
+
}
|
|
4207
|
+
return result;
|
|
4208
|
+
}
|
|
4209
|
+
function diffElementResourceChangeList(before, after) {
|
|
4210
|
+
var _a;
|
|
4211
|
+
var uuids = [];
|
|
4212
|
+
var beforeMap = parseDataElementMap(before);
|
|
4213
|
+
var afterMap = parseDataElementMap(after);
|
|
4214
|
+
for (var uuid in afterMap) {
|
|
4215
|
+
if (['image', 'svg', 'html'].includes((_a = afterMap[uuid]) === null || _a === void 0 ? void 0 : _a.type) !== true) {
|
|
4216
|
+
continue;
|
|
4217
|
+
}
|
|
4218
|
+
if (beforeMap[uuid]) {
|
|
4219
|
+
var isChange = false;
|
|
4220
|
+
switch (beforeMap[uuid].type) {
|
|
4221
|
+
case 'image': {
|
|
4222
|
+
isChange = isChangeImageElementResource(beforeMap[uuid], afterMap[uuid]);
|
|
4223
|
+
break;
|
|
4224
|
+
}
|
|
4225
|
+
case 'svg': {
|
|
4226
|
+
isChange = isChangeSVGElementResource(beforeMap[uuid], afterMap[uuid]);
|
|
4227
|
+
break;
|
|
4228
|
+
}
|
|
4229
|
+
case 'html': {
|
|
4230
|
+
isChange = isChangeHTMLElementResource(beforeMap[uuid], afterMap[uuid]);
|
|
4231
|
+
break;
|
|
4232
|
+
}
|
|
4233
|
+
}
|
|
4234
|
+
if (isChange === true) {
|
|
4235
|
+
uuids.push(uuid);
|
|
4236
|
+
}
|
|
4237
|
+
}
|
|
4238
|
+
else {
|
|
4239
|
+
uuids.push(uuid);
|
|
4240
|
+
}
|
|
4241
|
+
}
|
|
4242
|
+
return uuids;
|
|
4243
|
+
}
|
|
4244
|
+
function parseDataElementMap(data) {
|
|
4245
|
+
var elemMap = {};
|
|
4246
|
+
data.elements.forEach(function (elem) {
|
|
4247
|
+
elemMap[elem.uuid] = elem;
|
|
4248
|
+
});
|
|
4249
|
+
return elemMap;
|
|
4250
|
+
}
|
|
4251
|
+
|
|
4187
4252
|
function rotateElement(ctx, elem, callback) {
|
|
4188
4253
|
var center = calcElementCenter(elem);
|
|
4189
4254
|
var radian = parseAngleToRadian(elem.angle || 0);
|
|
@@ -4203,601 +4268,9 @@ var iDrawCore = (function () {
|
|
|
4203
4268
|
}
|
|
4204
4269
|
}
|
|
4205
4270
|
|
|
4206
|
-
|
|
4207
|
-
|
|
4208
|
-
|
|
4209
|
-
ctx.setStrokeStyle('#000000');
|
|
4210
|
-
ctx.setLineDash([]);
|
|
4211
|
-
ctx.setGlobalAlpha(1);
|
|
4212
|
-
ctx.setShadowColor('#00000000');
|
|
4213
|
-
ctx.setShadowOffsetX(0);
|
|
4214
|
-
ctx.setShadowOffsetY(0);
|
|
4215
|
-
ctx.setShadowBlur(0);
|
|
4216
|
-
}
|
|
4217
|
-
function drawBgColor(ctx, color) {
|
|
4218
|
-
var size = ctx.getSize();
|
|
4219
|
-
ctx.setFillStyle(color);
|
|
4220
|
-
ctx.fillRect(0, 0, size.contextWidth, size.contextHeight);
|
|
4221
|
-
}
|
|
4222
|
-
function drawBox(ctx, elem, pattern) {
|
|
4223
|
-
clearContext(ctx);
|
|
4224
|
-
drawBoxBorder(ctx, elem);
|
|
4225
|
-
clearContext(ctx);
|
|
4226
|
-
rotateElement(ctx, elem, function () {
|
|
4227
|
-
var x = elem.x, y = elem.y, w = elem.w, h = elem.h;
|
|
4228
|
-
var r = elem.desc.borderRadius || 0;
|
|
4229
|
-
r = Math.min(r, w / 2, h / 2);
|
|
4230
|
-
if (w < r * 2 || h < r * 2) {
|
|
4231
|
-
r = 0;
|
|
4232
|
-
}
|
|
4233
|
-
ctx.beginPath();
|
|
4234
|
-
ctx.moveTo(x + r, y);
|
|
4235
|
-
ctx.arcTo(x + w, y, x + w, y + h, r);
|
|
4236
|
-
ctx.arcTo(x + w, y + h, x, y + h, r);
|
|
4237
|
-
ctx.arcTo(x, y + h, x, y, r);
|
|
4238
|
-
ctx.arcTo(x, y, x + w, y, r);
|
|
4239
|
-
ctx.closePath();
|
|
4240
|
-
if (typeof pattern === 'string') {
|
|
4241
|
-
ctx.setFillStyle(pattern);
|
|
4242
|
-
}
|
|
4243
|
-
else if (['CanvasPattern'].includes(istype.type(pattern))) {
|
|
4244
|
-
ctx.setFillStyle(pattern);
|
|
4245
|
-
}
|
|
4246
|
-
ctx.fill();
|
|
4247
|
-
});
|
|
4248
|
-
}
|
|
4249
|
-
function drawBoxBorder(ctx, elem) {
|
|
4250
|
-
clearContext(ctx);
|
|
4251
|
-
rotateElement(ctx, elem, function () {
|
|
4252
|
-
if (!(elem.desc.borderWidth && elem.desc.borderWidth > 0)) {
|
|
4253
|
-
return;
|
|
4254
|
-
}
|
|
4255
|
-
var bw = elem.desc.borderWidth;
|
|
4256
|
-
var borderColor = '#000000';
|
|
4257
|
-
if (color.isColorStr(elem.desc.borderColor) === true) {
|
|
4258
|
-
borderColor = elem.desc.borderColor;
|
|
4259
|
-
}
|
|
4260
|
-
var x = elem.x - bw / 2;
|
|
4261
|
-
var y = elem.y - bw / 2;
|
|
4262
|
-
var w = elem.w + bw;
|
|
4263
|
-
var h = elem.h + bw;
|
|
4264
|
-
var r = elem.desc.borderRadius || 0;
|
|
4265
|
-
r = Math.min(r, w / 2, h / 2);
|
|
4266
|
-
if (r < w / 2 && r < h / 2) {
|
|
4267
|
-
r = r + bw / 2;
|
|
4268
|
-
}
|
|
4269
|
-
var desc = elem.desc;
|
|
4270
|
-
if (desc.shadowColor !== undefined && index$1.color.isColorStr(desc.shadowColor)) {
|
|
4271
|
-
ctx.setShadowColor(desc.shadowColor);
|
|
4272
|
-
}
|
|
4273
|
-
if (desc.shadowOffsetX !== undefined && is.number(desc.shadowOffsetX)) {
|
|
4274
|
-
ctx.setShadowOffsetX(desc.shadowOffsetX);
|
|
4275
|
-
}
|
|
4276
|
-
if (desc.shadowOffsetY !== undefined && is.number(desc.shadowOffsetY)) {
|
|
4277
|
-
ctx.setShadowOffsetY(desc.shadowOffsetY);
|
|
4278
|
-
}
|
|
4279
|
-
if (desc.shadowBlur !== undefined && is.number(desc.shadowBlur)) {
|
|
4280
|
-
ctx.setShadowBlur(desc.shadowBlur);
|
|
4281
|
-
}
|
|
4282
|
-
ctx.beginPath();
|
|
4283
|
-
ctx.setLineWidth(bw);
|
|
4284
|
-
ctx.setStrokeStyle(borderColor);
|
|
4285
|
-
ctx.moveTo(x + r, y);
|
|
4286
|
-
ctx.arcTo(x + w, y, x + w, y + h, r);
|
|
4287
|
-
ctx.arcTo(x + w, y + h, x, y + h, r);
|
|
4288
|
-
ctx.arcTo(x, y + h, x, y, r);
|
|
4289
|
-
ctx.arcTo(x, y, x + w, y, r);
|
|
4290
|
-
ctx.closePath();
|
|
4291
|
-
ctx.stroke();
|
|
4292
|
-
});
|
|
4293
|
-
}
|
|
4294
|
-
|
|
4295
|
-
function drawRect(ctx, elem) {
|
|
4296
|
-
drawBox(ctx, elem, elem.desc.bgColor);
|
|
4297
|
-
}
|
|
4298
|
-
|
|
4299
|
-
function drawImage(ctx, elem, loader) {
|
|
4300
|
-
var content = loader.getContent(elem.uuid);
|
|
4301
|
-
rotateElement(ctx, elem, function () {
|
|
4302
|
-
if (content) {
|
|
4303
|
-
ctx.drawImage(content, elem.x, elem.y, elem.w, elem.h);
|
|
4304
|
-
}
|
|
4305
|
-
});
|
|
4306
|
-
}
|
|
4307
|
-
|
|
4308
|
-
function drawSVG(ctx, elem, loader) {
|
|
4309
|
-
var content = loader.getContent(elem.uuid);
|
|
4310
|
-
rotateElement(ctx, elem, function () {
|
|
4311
|
-
if (content) {
|
|
4312
|
-
ctx.drawImage(content, elem.x, elem.y, elem.w, elem.h);
|
|
4313
|
-
}
|
|
4314
|
-
});
|
|
4315
|
-
}
|
|
4316
|
-
|
|
4317
|
-
function drawHTML(ctx, elem, loader) {
|
|
4318
|
-
var content = loader.getContent(elem.uuid);
|
|
4319
|
-
rotateElement(ctx, elem, function () {
|
|
4320
|
-
if (content) {
|
|
4321
|
-
ctx.drawImage(content, elem.x, elem.y, elem.w, elem.h);
|
|
4322
|
-
}
|
|
4323
|
-
});
|
|
4324
|
-
}
|
|
4325
|
-
|
|
4326
|
-
function drawText(ctx, elem, loader, helperConfig) {
|
|
4327
|
-
clearContext(ctx);
|
|
4328
|
-
drawBox(ctx, elem, elem.desc.bgColor || 'transparent');
|
|
4329
|
-
rotateElement(ctx, elem, function () {
|
|
4330
|
-
var desc = __assign$4({
|
|
4331
|
-
fontSize: 12,
|
|
4332
|
-
fontFamily: 'sans-serif',
|
|
4333
|
-
textAlign: 'center',
|
|
4334
|
-
}, elem.desc);
|
|
4335
|
-
ctx.setFillStyle(elem.desc.color);
|
|
4336
|
-
ctx.setTextBaseline('top');
|
|
4337
|
-
ctx.setFont({
|
|
4338
|
-
fontWeight: desc.fontWeight,
|
|
4339
|
-
fontSize: desc.fontSize,
|
|
4340
|
-
fontFamily: desc.fontFamily
|
|
4341
|
-
});
|
|
4342
|
-
var descText = desc.text.replace(/\r\n/ig, '\n');
|
|
4343
|
-
var fontHeight = desc.lineHeight || desc.fontSize;
|
|
4344
|
-
var descTextList = descText.split('\n');
|
|
4345
|
-
var lines = [];
|
|
4346
|
-
descTextList.forEach(function (tempText) {
|
|
4347
|
-
var lineText = '';
|
|
4348
|
-
var lineNum = 0;
|
|
4349
|
-
for (var i = 0; i < tempText.length; i++) {
|
|
4350
|
-
if (ctx.measureText(lineText + (tempText[i] || '')).width < ctx.calcDeviceNum(elem.w)) {
|
|
4351
|
-
lineText += (tempText[i] || '');
|
|
4352
|
-
}
|
|
4353
|
-
else {
|
|
4354
|
-
lines.push({
|
|
4355
|
-
text: lineText,
|
|
4356
|
-
width: ctx.calcScreenNum(ctx.measureText(lineText).width),
|
|
4357
|
-
});
|
|
4358
|
-
lineText = (tempText[i] || '');
|
|
4359
|
-
lineNum++;
|
|
4360
|
-
}
|
|
4361
|
-
if ((lineNum + 1) * fontHeight > elem.h) {
|
|
4362
|
-
break;
|
|
4363
|
-
}
|
|
4364
|
-
if (lineText && tempText.length - 1 === i) {
|
|
4365
|
-
if ((lineNum + 1) * fontHeight < elem.h) {
|
|
4366
|
-
lines.push({
|
|
4367
|
-
text: lineText,
|
|
4368
|
-
width: ctx.calcScreenNum(ctx.measureText(lineText).width),
|
|
4369
|
-
});
|
|
4370
|
-
break;
|
|
4371
|
-
}
|
|
4372
|
-
}
|
|
4373
|
-
}
|
|
4374
|
-
});
|
|
4375
|
-
{
|
|
4376
|
-
var _y_1 = elem.y;
|
|
4377
|
-
if (lines.length * fontHeight < elem.h) {
|
|
4378
|
-
_y_1 += ((elem.h - lines.length * fontHeight) / 2);
|
|
4379
|
-
}
|
|
4380
|
-
if (desc.textShadowColor !== undefined && index$1.color.isColorStr(desc.textShadowColor)) {
|
|
4381
|
-
ctx.setShadowColor(desc.textShadowColor);
|
|
4382
|
-
}
|
|
4383
|
-
if (desc.textShadowOffsetX !== undefined && is.number(desc.textShadowOffsetX)) {
|
|
4384
|
-
ctx.setShadowOffsetX(desc.textShadowOffsetX);
|
|
4385
|
-
}
|
|
4386
|
-
if (desc.textShadowOffsetY !== undefined && is.number(desc.textShadowOffsetY)) {
|
|
4387
|
-
ctx.setShadowOffsetY(desc.textShadowOffsetY);
|
|
4388
|
-
}
|
|
4389
|
-
if (desc.textShadowBlur !== undefined && is.number(desc.textShadowBlur)) {
|
|
4390
|
-
ctx.setShadowBlur(desc.textShadowBlur);
|
|
4391
|
-
}
|
|
4392
|
-
lines.forEach(function (line, i) {
|
|
4393
|
-
var _x = elem.x;
|
|
4394
|
-
if (desc.textAlign === 'center') {
|
|
4395
|
-
_x = elem.x + (elem.w - line.width) / 2;
|
|
4396
|
-
}
|
|
4397
|
-
else if (desc.textAlign === 'right') {
|
|
4398
|
-
_x = elem.x + (elem.w - line.width);
|
|
4399
|
-
}
|
|
4400
|
-
ctx.fillText(line.text, _x, _y_1 + fontHeight * i);
|
|
4401
|
-
});
|
|
4402
|
-
clearContext(ctx);
|
|
4403
|
-
}
|
|
4404
|
-
if (index$1.color.isColorStr(desc.strokeColor) && desc.strokeWidth !== undefined && desc.strokeWidth > 0) {
|
|
4405
|
-
var _y_2 = elem.y;
|
|
4406
|
-
if (lines.length * fontHeight < elem.h) {
|
|
4407
|
-
_y_2 += ((elem.h - lines.length * fontHeight) / 2);
|
|
4408
|
-
}
|
|
4409
|
-
lines.forEach(function (line, i) {
|
|
4410
|
-
var _x = elem.x;
|
|
4411
|
-
if (desc.textAlign === 'center') {
|
|
4412
|
-
_x = elem.x + (elem.w - line.width) / 2;
|
|
4413
|
-
}
|
|
4414
|
-
else if (desc.textAlign === 'right') {
|
|
4415
|
-
_x = elem.x + (elem.w - line.width);
|
|
4416
|
-
}
|
|
4417
|
-
if (desc.strokeColor !== undefined) {
|
|
4418
|
-
ctx.setStrokeStyle(desc.strokeColor);
|
|
4419
|
-
}
|
|
4420
|
-
if (desc.strokeWidth !== undefined && desc.strokeWidth > 0) {
|
|
4421
|
-
ctx.setLineWidth(desc.strokeWidth);
|
|
4422
|
-
}
|
|
4423
|
-
ctx.strokeText(line.text, _x, _y_2 + fontHeight * i);
|
|
4424
|
-
});
|
|
4425
|
-
}
|
|
4426
|
-
});
|
|
4427
|
-
}
|
|
4428
|
-
|
|
4429
|
-
function drawCircle(ctx, elem) {
|
|
4430
|
-
clearContext(ctx);
|
|
4431
|
-
rotateElement(ctx, elem, function (ctx) {
|
|
4432
|
-
var x = elem.x, y = elem.y, w = elem.w, h = elem.h, desc = elem.desc;
|
|
4433
|
-
var _a = desc.bgColor, bgColor = _a === void 0 ? '#000000' : _a, _b = desc.borderColor, borderColor = _b === void 0 ? '#000000' : _b, _c = desc.borderWidth, borderWidth = _c === void 0 ? 0 : _c;
|
|
4434
|
-
var a = w / 2;
|
|
4435
|
-
var b = h / 2;
|
|
4436
|
-
var centerX = x + a;
|
|
4437
|
-
var centerY = y + b;
|
|
4438
|
-
if (borderWidth && borderWidth > 0) {
|
|
4439
|
-
var ba = borderWidth / 2 + a;
|
|
4440
|
-
var bb = borderWidth / 2 + b;
|
|
4441
|
-
ctx.beginPath();
|
|
4442
|
-
ctx.setStrokeStyle(borderColor);
|
|
4443
|
-
ctx.setLineWidth(borderWidth);
|
|
4444
|
-
ctx.ellipse(centerX, centerY, ba, bb, 0, 0, 2 * Math.PI);
|
|
4445
|
-
ctx.closePath();
|
|
4446
|
-
ctx.stroke();
|
|
4447
|
-
}
|
|
4448
|
-
ctx.beginPath();
|
|
4449
|
-
ctx.setFillStyle(bgColor);
|
|
4450
|
-
ctx.ellipse(centerX, centerY, a, b, 0, 0, 2 * Math.PI);
|
|
4451
|
-
ctx.closePath();
|
|
4452
|
-
ctx.fill();
|
|
4453
|
-
});
|
|
4454
|
-
}
|
|
4455
|
-
|
|
4456
|
-
function drawElementWrapper(ctx, config) {
|
|
4457
|
-
if (!(config === null || config === void 0 ? void 0 : config.selectedElementWrapper)) {
|
|
4458
|
-
return;
|
|
4459
|
-
}
|
|
4460
|
-
var wrapper = config.selectedElementWrapper;
|
|
4461
|
-
clearContext(ctx);
|
|
4462
|
-
rotateContext(ctx, wrapper.translate, wrapper.radian || 0, function () {
|
|
4463
|
-
ctx.beginPath();
|
|
4464
|
-
ctx.setLineDash(wrapper.lineDash);
|
|
4465
|
-
ctx.setLineWidth(wrapper.lineWidth);
|
|
4466
|
-
ctx.setStrokeStyle(wrapper.color);
|
|
4467
|
-
ctx.moveTo(wrapper.controllers.topLeft.x, wrapper.controllers.topLeft.y);
|
|
4468
|
-
ctx.lineTo(wrapper.controllers.topRight.x, wrapper.controllers.topRight.y);
|
|
4469
|
-
ctx.lineTo(wrapper.controllers.bottomRight.x, wrapper.controllers.bottomRight.y);
|
|
4470
|
-
ctx.lineTo(wrapper.controllers.bottomLeft.x, wrapper.controllers.bottomLeft.y);
|
|
4471
|
-
ctx.lineTo(wrapper.controllers.topLeft.x, wrapper.controllers.topLeft.y - wrapper.lineWidth / 2);
|
|
4472
|
-
ctx.stroke();
|
|
4473
|
-
ctx.closePath();
|
|
4474
|
-
if (wrapper.lock !== true) {
|
|
4475
|
-
if (wrapper.controllers.rotate.invisible !== true) {
|
|
4476
|
-
ctx.beginPath();
|
|
4477
|
-
ctx.moveTo(wrapper.controllers.top.x, wrapper.controllers.top.y);
|
|
4478
|
-
ctx.lineTo(wrapper.controllers.rotate.x, wrapper.controllers.rotate.y + wrapper.controllerSize);
|
|
4479
|
-
ctx.stroke();
|
|
4480
|
-
ctx.closePath();
|
|
4481
|
-
ctx.beginPath();
|
|
4482
|
-
ctx.setLineDash([]);
|
|
4483
|
-
ctx.setLineWidth(wrapper.controllerSize / 2);
|
|
4484
|
-
ctx.arc(wrapper.controllers.rotate.x, wrapper.controllers.rotate.y, wrapper.controllerSize * 0.8, Math.PI / 6, Math.PI * 2);
|
|
4485
|
-
ctx.stroke();
|
|
4486
|
-
ctx.closePath();
|
|
4487
|
-
}
|
|
4488
|
-
ctx.setFillStyle(wrapper.color);
|
|
4489
|
-
[
|
|
4490
|
-
wrapper.controllers.topLeft,
|
|
4491
|
-
wrapper.controllers.top,
|
|
4492
|
-
wrapper.controllers.topRight,
|
|
4493
|
-
wrapper.controllers.right,
|
|
4494
|
-
wrapper.controllers.bottomRight,
|
|
4495
|
-
wrapper.controllers.bottom,
|
|
4496
|
-
wrapper.controllers.bottomLeft,
|
|
4497
|
-
wrapper.controllers.left,
|
|
4498
|
-
].forEach(function (controller) {
|
|
4499
|
-
if (controller.invisible !== true) {
|
|
4500
|
-
ctx.beginPath();
|
|
4501
|
-
ctx.arc(controller.x, controller.y, wrapper.controllerSize, 0, Math.PI * 2);
|
|
4502
|
-
ctx.fill();
|
|
4503
|
-
ctx.closePath();
|
|
4504
|
-
}
|
|
4505
|
-
});
|
|
4506
|
-
}
|
|
4507
|
-
else {
|
|
4508
|
-
clearContext(ctx);
|
|
4509
|
-
ctx.setStrokeStyle(wrapper.color);
|
|
4510
|
-
[
|
|
4511
|
-
wrapper.controllers.topLeft, wrapper.controllers.top, wrapper.controllers.topRight, wrapper.controllers.right,
|
|
4512
|
-
wrapper.controllers.bottomRight, wrapper.controllers.bottom, wrapper.controllers.bottomLeft, wrapper.controllers.left,
|
|
4513
|
-
].forEach(function (controller) {
|
|
4514
|
-
ctx.beginPath();
|
|
4515
|
-
ctx.moveTo(controller.x - wrapper.controllerSize / 2, controller.y - wrapper.controllerSize / 2);
|
|
4516
|
-
ctx.lineTo(controller.x + wrapper.controllerSize / 2, controller.y + wrapper.controllerSize / 2);
|
|
4517
|
-
ctx.stroke();
|
|
4518
|
-
ctx.closePath();
|
|
4519
|
-
ctx.beginPath();
|
|
4520
|
-
ctx.moveTo(controller.x + wrapper.controllerSize / 2, controller.y - wrapper.controllerSize / 2);
|
|
4521
|
-
ctx.lineTo(controller.x - wrapper.controllerSize / 2, controller.y + wrapper.controllerSize / 2);
|
|
4522
|
-
ctx.stroke();
|
|
4523
|
-
ctx.closePath();
|
|
4524
|
-
});
|
|
4525
|
-
}
|
|
4526
|
-
});
|
|
4527
|
-
}
|
|
4528
|
-
function drawAreaWrapper(ctx, config) {
|
|
4529
|
-
if (!(config === null || config === void 0 ? void 0 : config.selectedAreaWrapper)) {
|
|
4530
|
-
return;
|
|
4531
|
-
}
|
|
4532
|
-
var wrapper = config.selectedAreaWrapper;
|
|
4533
|
-
if (wrapper && wrapper.w > 0 && wrapper.h > 0) {
|
|
4534
|
-
clearContext(ctx);
|
|
4535
|
-
ctx.setGlobalAlpha(0.3);
|
|
4536
|
-
ctx.setFillStyle(wrapper.color);
|
|
4537
|
-
ctx.fillRect(wrapper.x, wrapper.y, wrapper.w, wrapper.h);
|
|
4538
|
-
clearContext(ctx);
|
|
4539
|
-
ctx.beginPath();
|
|
4540
|
-
ctx.setLineDash(wrapper.lineDash);
|
|
4541
|
-
ctx.setLineWidth(wrapper.lineWidth);
|
|
4542
|
-
ctx.setStrokeStyle(wrapper.color);
|
|
4543
|
-
ctx.moveTo(wrapper.x, wrapper.y);
|
|
4544
|
-
ctx.lineTo(wrapper.x + wrapper.w, wrapper.y);
|
|
4545
|
-
ctx.lineTo(wrapper.x + wrapper.w, wrapper.y + wrapper.h);
|
|
4546
|
-
ctx.lineTo(wrapper.x, wrapper.y + wrapper.h);
|
|
4547
|
-
ctx.lineTo(wrapper.x, wrapper.y);
|
|
4548
|
-
ctx.stroke();
|
|
4549
|
-
ctx.closePath();
|
|
4550
|
-
}
|
|
4551
|
-
}
|
|
4552
|
-
function drawElementListWrappers(ctx, config) {
|
|
4553
|
-
if (!Array.isArray(config === null || config === void 0 ? void 0 : config.selectedElementListWrappers)) {
|
|
4554
|
-
return;
|
|
4555
|
-
}
|
|
4556
|
-
var wrapperList = config.selectedElementListWrappers;
|
|
4557
|
-
wrapperList === null || wrapperList === void 0 ? void 0 : wrapperList.forEach(function (wrapper) {
|
|
4558
|
-
clearContext(ctx);
|
|
4559
|
-
rotateContext(ctx, wrapper.translate, wrapper.radian || 0, function () {
|
|
4560
|
-
clearContext(ctx);
|
|
4561
|
-
ctx.setGlobalAlpha(0.05);
|
|
4562
|
-
ctx.setFillStyle(wrapper.color);
|
|
4563
|
-
ctx.fillRect(wrapper.controllers.topLeft.x, wrapper.controllers.topLeft.y, wrapper.controllers.bottomRight.x - wrapper.controllers.topLeft.x, wrapper.controllers.bottomRight.y - wrapper.controllers.topLeft.y);
|
|
4564
|
-
clearContext(ctx);
|
|
4565
|
-
ctx.beginPath();
|
|
4566
|
-
ctx.setLineDash(wrapper.lineDash);
|
|
4567
|
-
ctx.setLineWidth(wrapper.lineWidth);
|
|
4568
|
-
ctx.setStrokeStyle(wrapper.color);
|
|
4569
|
-
ctx.moveTo(wrapper.controllers.topLeft.x, wrapper.controllers.topLeft.y);
|
|
4570
|
-
ctx.lineTo(wrapper.controllers.topRight.x, wrapper.controllers.topRight.y);
|
|
4571
|
-
ctx.lineTo(wrapper.controllers.bottomRight.x, wrapper.controllers.bottomRight.y);
|
|
4572
|
-
ctx.lineTo(wrapper.controllers.bottomLeft.x, wrapper.controllers.bottomLeft.y);
|
|
4573
|
-
ctx.lineTo(wrapper.controllers.topLeft.x, wrapper.controllers.topLeft.y - wrapper.lineWidth / 2);
|
|
4574
|
-
ctx.stroke();
|
|
4575
|
-
ctx.closePath();
|
|
4576
|
-
if (wrapper.lock === true) {
|
|
4577
|
-
clearContext(ctx);
|
|
4578
|
-
ctx.setStrokeStyle(wrapper.color);
|
|
4579
|
-
[
|
|
4580
|
-
wrapper.controllers.topLeft, wrapper.controllers.top, wrapper.controllers.topRight, wrapper.controllers.right,
|
|
4581
|
-
wrapper.controllers.bottomRight, wrapper.controllers.bottom, wrapper.controllers.bottomLeft, wrapper.controllers.left,
|
|
4582
|
-
].forEach(function (controller) {
|
|
4583
|
-
ctx.beginPath();
|
|
4584
|
-
ctx.moveTo(controller.x - wrapper.controllerSize / 2, controller.y - wrapper.controllerSize / 2);
|
|
4585
|
-
ctx.lineTo(controller.x + wrapper.controllerSize / 2, controller.y + wrapper.controllerSize / 2);
|
|
4586
|
-
ctx.stroke();
|
|
4587
|
-
ctx.closePath();
|
|
4588
|
-
ctx.beginPath();
|
|
4589
|
-
ctx.moveTo(controller.x + wrapper.controllerSize / 2, controller.y - wrapper.controllerSize / 2);
|
|
4590
|
-
ctx.lineTo(controller.x - wrapper.controllerSize / 2, controller.y + wrapper.controllerSize / 2);
|
|
4591
|
-
ctx.stroke();
|
|
4592
|
-
ctx.closePath();
|
|
4593
|
-
});
|
|
4594
|
-
}
|
|
4595
|
-
});
|
|
4596
|
-
});
|
|
4597
|
-
}
|
|
4598
|
-
|
|
4599
|
-
var isColorStr = index$1.color.isColorStr;
|
|
4600
|
-
function drawContext(ctx, data, helperConfig, loader) {
|
|
4601
|
-
var _a;
|
|
4602
|
-
clearContext(ctx);
|
|
4603
|
-
var size = ctx.getSize();
|
|
4604
|
-
ctx.clearRect(0, 0, size.contextWidth, size.contextHeight);
|
|
4605
|
-
if (typeof data.bgColor === 'string' && isColorStr(data.bgColor)) {
|
|
4606
|
-
drawBgColor(ctx, data.bgColor);
|
|
4607
|
-
}
|
|
4608
|
-
if (!(data.elements.length > 0)) {
|
|
4609
|
-
return;
|
|
4610
|
-
}
|
|
4611
|
-
for (var i = 0; i < data.elements.length; i++) {
|
|
4612
|
-
var elem = data.elements[i];
|
|
4613
|
-
if (((_a = elem === null || elem === void 0 ? void 0 : elem.operation) === null || _a === void 0 ? void 0 : _a.invisible) === true) {
|
|
4614
|
-
continue;
|
|
4615
|
-
}
|
|
4616
|
-
switch (elem.type) {
|
|
4617
|
-
case 'rect': {
|
|
4618
|
-
drawRect(ctx, elem);
|
|
4619
|
-
break;
|
|
4620
|
-
}
|
|
4621
|
-
case 'text': {
|
|
4622
|
-
drawText(ctx, elem);
|
|
4623
|
-
break;
|
|
4624
|
-
}
|
|
4625
|
-
case 'image': {
|
|
4626
|
-
drawImage(ctx, elem, loader);
|
|
4627
|
-
break;
|
|
4628
|
-
}
|
|
4629
|
-
case 'svg': {
|
|
4630
|
-
drawSVG(ctx, elem, loader);
|
|
4631
|
-
break;
|
|
4632
|
-
}
|
|
4633
|
-
case 'html': {
|
|
4634
|
-
drawHTML(ctx, elem, loader);
|
|
4635
|
-
break;
|
|
4636
|
-
}
|
|
4637
|
-
case 'circle': {
|
|
4638
|
-
drawCircle(ctx, elem);
|
|
4639
|
-
break;
|
|
4640
|
-
}
|
|
4641
|
-
}
|
|
4642
|
-
}
|
|
4643
|
-
drawElementWrapper(ctx, helperConfig);
|
|
4644
|
-
drawAreaWrapper(ctx, helperConfig);
|
|
4645
|
-
drawElementListWrappers(ctx, helperConfig);
|
|
4646
|
-
}
|
|
4647
|
-
|
|
4648
|
-
var defaultConfig = {
|
|
4649
|
-
elementWrapper: {
|
|
4650
|
-
color: '#2ab6f1',
|
|
4651
|
-
lockColor: '#aaaaaa',
|
|
4652
|
-
controllerSize: 6,
|
|
4653
|
-
lineWidth: 1,
|
|
4654
|
-
lineDash: [4, 3],
|
|
4655
|
-
}
|
|
4656
|
-
};
|
|
4657
|
-
function mergeConfig(config) {
|
|
4658
|
-
var result = index$1.data.deepClone(defaultConfig);
|
|
4659
|
-
if (config) {
|
|
4660
|
-
if (config.elementWrapper) {
|
|
4661
|
-
result.elementWrapper = __assign$4(__assign$4({}, result.elementWrapper), config.elementWrapper);
|
|
4662
|
-
}
|
|
4663
|
-
}
|
|
4664
|
-
return result;
|
|
4665
|
-
}
|
|
4666
|
-
|
|
4667
|
-
var CoreEvent = (function () {
|
|
4668
|
-
function CoreEvent() {
|
|
4669
|
-
this._listeners = new Map();
|
|
4670
|
-
}
|
|
4671
|
-
CoreEvent.prototype.on = function (eventKey, callback) {
|
|
4672
|
-
if (this._listeners.has(eventKey)) {
|
|
4673
|
-
var callbacks = this._listeners.get(eventKey);
|
|
4674
|
-
callbacks === null || callbacks === void 0 ? void 0 : callbacks.push(callback);
|
|
4675
|
-
this._listeners.set(eventKey, callbacks || []);
|
|
4676
|
-
}
|
|
4677
|
-
else {
|
|
4678
|
-
this._listeners.set(eventKey, [callback]);
|
|
4679
|
-
}
|
|
4680
|
-
};
|
|
4681
|
-
CoreEvent.prototype.off = function (eventKey, callback) {
|
|
4682
|
-
if (this._listeners.has(eventKey)) {
|
|
4683
|
-
var callbacks = this._listeners.get(eventKey);
|
|
4684
|
-
if (Array.isArray(callbacks)) {
|
|
4685
|
-
for (var i = 0; i < (callbacks === null || callbacks === void 0 ? void 0 : callbacks.length); i++) {
|
|
4686
|
-
if (callbacks[i] === callback) {
|
|
4687
|
-
callbacks.splice(i, 1);
|
|
4688
|
-
break;
|
|
4689
|
-
}
|
|
4690
|
-
}
|
|
4691
|
-
}
|
|
4692
|
-
this._listeners.set(eventKey, callbacks || []);
|
|
4693
|
-
}
|
|
4694
|
-
};
|
|
4695
|
-
CoreEvent.prototype.trigger = function (eventKey, arg) {
|
|
4696
|
-
var callbacks = this._listeners.get(eventKey);
|
|
4697
|
-
if (Array.isArray(callbacks)) {
|
|
4698
|
-
callbacks.forEach(function (cb) {
|
|
4699
|
-
cb(arg);
|
|
4700
|
-
});
|
|
4701
|
-
return true;
|
|
4702
|
-
}
|
|
4703
|
-
else {
|
|
4704
|
-
return false;
|
|
4705
|
-
}
|
|
4706
|
-
};
|
|
4707
|
-
CoreEvent.prototype.has = function (name) {
|
|
4708
|
-
if (this._listeners.has(name)) {
|
|
4709
|
-
var list = this._listeners.get(name);
|
|
4710
|
-
if (Array.isArray(list) && list.length > 0) {
|
|
4711
|
-
return true;
|
|
4712
|
-
}
|
|
4713
|
-
}
|
|
4714
|
-
return false;
|
|
4715
|
-
};
|
|
4716
|
-
return CoreEvent;
|
|
4717
|
-
}());
|
|
4718
|
-
|
|
4719
|
-
function isChangeImageElementResource(before, after) {
|
|
4720
|
-
var _a, _b;
|
|
4721
|
-
return (((_a = before === null || before === void 0 ? void 0 : before.desc) === null || _a === void 0 ? void 0 : _a.src) !== ((_b = after === null || after === void 0 ? void 0 : after.desc) === null || _b === void 0 ? void 0 : _b.src));
|
|
4722
|
-
}
|
|
4723
|
-
function isChangeSVGElementResource(before, after) {
|
|
4724
|
-
var _a, _b;
|
|
4725
|
-
return (((_a = before === null || before === void 0 ? void 0 : before.desc) === null || _a === void 0 ? void 0 : _a.svg) !== ((_b = after === null || after === void 0 ? void 0 : after.desc) === null || _b === void 0 ? void 0 : _b.svg));
|
|
4726
|
-
}
|
|
4727
|
-
function isChangeHTMLElementResource(before, after) {
|
|
4728
|
-
var _a, _b, _c, _d, _e, _f;
|
|
4729
|
-
return (((_a = before === null || before === void 0 ? void 0 : before.desc) === null || _a === void 0 ? void 0 : _a.html) !== ((_b = after === null || after === void 0 ? void 0 : after.desc) === null || _b === void 0 ? void 0 : _b.html)
|
|
4730
|
-
|| ((_c = before === null || before === void 0 ? void 0 : before.desc) === null || _c === void 0 ? void 0 : _c.width) !== ((_d = after === null || after === void 0 ? void 0 : after.desc) === null || _d === void 0 ? void 0 : _d.width)
|
|
4731
|
-
|| ((_e = before === null || before === void 0 ? void 0 : before.desc) === null || _e === void 0 ? void 0 : _e.height) !== ((_f = after === null || after === void 0 ? void 0 : after.desc) === null || _f === void 0 ? void 0 : _f.height));
|
|
4732
|
-
}
|
|
4733
|
-
function diffElementResourceChange(before, after) {
|
|
4734
|
-
var result = null;
|
|
4735
|
-
var isChange = false;
|
|
4736
|
-
switch (after.type) {
|
|
4737
|
-
case 'image': {
|
|
4738
|
-
isChange = isChangeImageElementResource(before, after);
|
|
4739
|
-
break;
|
|
4740
|
-
}
|
|
4741
|
-
case 'svg': {
|
|
4742
|
-
isChange = isChangeSVGElementResource(before, after);
|
|
4743
|
-
break;
|
|
4744
|
-
}
|
|
4745
|
-
case 'html': {
|
|
4746
|
-
isChange = isChangeHTMLElementResource(before, after);
|
|
4747
|
-
break;
|
|
4748
|
-
}
|
|
4749
|
-
}
|
|
4750
|
-
if (isChange === true) {
|
|
4751
|
-
result = after.uuid;
|
|
4752
|
-
}
|
|
4753
|
-
return result;
|
|
4754
|
-
}
|
|
4755
|
-
function diffElementResourceChangeList(before, after) {
|
|
4756
|
-
var _a;
|
|
4757
|
-
var uuids = [];
|
|
4758
|
-
var beforeMap = parseDataElementMap(before);
|
|
4759
|
-
var afterMap = parseDataElementMap(after);
|
|
4760
|
-
for (var uuid in afterMap) {
|
|
4761
|
-
if (['image', 'svg', 'html'].includes((_a = afterMap[uuid]) === null || _a === void 0 ? void 0 : _a.type) !== true) {
|
|
4762
|
-
continue;
|
|
4763
|
-
}
|
|
4764
|
-
if (beforeMap[uuid]) {
|
|
4765
|
-
var isChange = false;
|
|
4766
|
-
switch (beforeMap[uuid].type) {
|
|
4767
|
-
case 'image': {
|
|
4768
|
-
isChange = isChangeImageElementResource(beforeMap[uuid], afterMap[uuid]);
|
|
4769
|
-
break;
|
|
4770
|
-
}
|
|
4771
|
-
case 'svg': {
|
|
4772
|
-
isChange = isChangeSVGElementResource(beforeMap[uuid], afterMap[uuid]);
|
|
4773
|
-
break;
|
|
4774
|
-
}
|
|
4775
|
-
case 'html': {
|
|
4776
|
-
isChange = isChangeHTMLElementResource(beforeMap[uuid], afterMap[uuid]);
|
|
4777
|
-
break;
|
|
4778
|
-
}
|
|
4779
|
-
}
|
|
4780
|
-
if (isChange === true) {
|
|
4781
|
-
uuids.push(uuid);
|
|
4782
|
-
}
|
|
4783
|
-
}
|
|
4784
|
-
else {
|
|
4785
|
-
uuids.push(uuid);
|
|
4786
|
-
}
|
|
4787
|
-
}
|
|
4788
|
-
return uuids;
|
|
4789
|
-
}
|
|
4790
|
-
function parseDataElementMap(data) {
|
|
4791
|
-
var elemMap = {};
|
|
4792
|
-
data.elements.forEach(function (elem) {
|
|
4793
|
-
elemMap[elem.uuid] = elem;
|
|
4794
|
-
});
|
|
4795
|
-
return elemMap;
|
|
4796
|
-
}
|
|
4797
|
-
|
|
4798
|
-
function limitNum(num) {
|
|
4799
|
-
var numStr = num.toFixed(2);
|
|
4800
|
-
return parseFloat(numStr);
|
|
4271
|
+
function limitNum(num) {
|
|
4272
|
+
var numStr = num.toFixed(2);
|
|
4273
|
+
return parseFloat(numStr);
|
|
4801
4274
|
}
|
|
4802
4275
|
function limitAngle(angle) {
|
|
4803
4276
|
return limitNum(angle % 360);
|
|
@@ -5192,7 +4665,7 @@ var iDrawCore = (function () {
|
|
|
5192
4665
|
}
|
|
5193
4666
|
|
|
5194
4667
|
var limitQbliqueAngle = LIMIT_QBLIQUE_ANGLE;
|
|
5195
|
-
var deepClone$
|
|
4668
|
+
var deepClone$3 = index$1.data.deepClone;
|
|
5196
4669
|
var Helper = (function () {
|
|
5197
4670
|
function Helper(board, config) {
|
|
5198
4671
|
this._areaStart = { x: 0, y: 0 };
|
|
@@ -5210,7 +4683,7 @@ var iDrawCore = (function () {
|
|
|
5210
4683
|
this._updateSelectedElementListWrapper(data, opts);
|
|
5211
4684
|
};
|
|
5212
4685
|
Helper.prototype.getConfig = function () {
|
|
5213
|
-
return deepClone$
|
|
4686
|
+
return deepClone$3(this._helperConfig);
|
|
5214
4687
|
};
|
|
5215
4688
|
Helper.prototype.getElementIndexByUUID = function (uuid) {
|
|
5216
4689
|
var index = this._helperConfig.elementIndexMap[uuid];
|
|
@@ -5543,299 +5016,8 @@ var iDrawCore = (function () {
|
|
|
5543
5016
|
return Helper;
|
|
5544
5017
|
}());
|
|
5545
5018
|
|
|
5546
|
-
var LoaderEvent = (function () {
|
|
5547
|
-
function LoaderEvent() {
|
|
5548
|
-
this._listeners = new Map();
|
|
5549
|
-
}
|
|
5550
|
-
LoaderEvent.prototype.on = function (eventKey, callback) {
|
|
5551
|
-
if (this._listeners.has(eventKey)) {
|
|
5552
|
-
var callbacks = this._listeners.get(eventKey);
|
|
5553
|
-
callbacks === null || callbacks === void 0 ? void 0 : callbacks.push(callback);
|
|
5554
|
-
this._listeners.set(eventKey, callbacks || []);
|
|
5555
|
-
}
|
|
5556
|
-
else {
|
|
5557
|
-
this._listeners.set(eventKey, [callback]);
|
|
5558
|
-
}
|
|
5559
|
-
};
|
|
5560
|
-
LoaderEvent.prototype.off = function (eventKey, callback) {
|
|
5561
|
-
if (this._listeners.has(eventKey)) {
|
|
5562
|
-
var callbacks = this._listeners.get(eventKey);
|
|
5563
|
-
if (Array.isArray(callbacks)) {
|
|
5564
|
-
for (var i = 0; i < (callbacks === null || callbacks === void 0 ? void 0 : callbacks.length); i++) {
|
|
5565
|
-
if (callbacks[i] === callback) {
|
|
5566
|
-
callbacks.splice(i, 1);
|
|
5567
|
-
break;
|
|
5568
|
-
}
|
|
5569
|
-
}
|
|
5570
|
-
}
|
|
5571
|
-
this._listeners.set(eventKey, callbacks || []);
|
|
5572
|
-
}
|
|
5573
|
-
};
|
|
5574
|
-
LoaderEvent.prototype.trigger = function (eventKey, arg) {
|
|
5575
|
-
var callbacks = this._listeners.get(eventKey);
|
|
5576
|
-
if (Array.isArray(callbacks)) {
|
|
5577
|
-
callbacks.forEach(function (cb) {
|
|
5578
|
-
cb(arg);
|
|
5579
|
-
});
|
|
5580
|
-
return true;
|
|
5581
|
-
}
|
|
5582
|
-
else {
|
|
5583
|
-
return false;
|
|
5584
|
-
}
|
|
5585
|
-
};
|
|
5586
|
-
LoaderEvent.prototype.has = function (name) {
|
|
5587
|
-
if (this._listeners.has(name)) {
|
|
5588
|
-
var list = this._listeners.get(name);
|
|
5589
|
-
if (Array.isArray(list) && list.length > 0) {
|
|
5590
|
-
return true;
|
|
5591
|
-
}
|
|
5592
|
-
}
|
|
5593
|
-
return false;
|
|
5594
|
-
};
|
|
5595
|
-
return LoaderEvent;
|
|
5596
|
-
}());
|
|
5597
|
-
|
|
5598
|
-
function filterScript(html) {
|
|
5599
|
-
return html.replace(/<script[\s\S]*?<\/script>/ig, '');
|
|
5600
|
-
}
|
|
5601
|
-
|
|
5602
|
-
var _a = index$1.loader, loadImage = _a.loadImage, loadSVG = _a.loadSVG, loadHTML = _a.loadHTML;
|
|
5603
|
-
var LoaderStatus;
|
|
5604
|
-
(function (LoaderStatus) {
|
|
5605
|
-
LoaderStatus["FREE"] = "free";
|
|
5606
|
-
LoaderStatus["LOADING"] = "loading";
|
|
5607
|
-
LoaderStatus["COMPLETE"] = "complete";
|
|
5608
|
-
})(LoaderStatus || (LoaderStatus = {}));
|
|
5609
|
-
var Loader = (function () {
|
|
5610
|
-
function Loader(opts) {
|
|
5611
|
-
this._currentLoadData = {};
|
|
5612
|
-
this._currentUUIDQueue = [];
|
|
5613
|
-
this._storageLoadData = {};
|
|
5614
|
-
this._status = LoaderStatus.FREE;
|
|
5615
|
-
this._waitingLoadQueue = [];
|
|
5616
|
-
this._opts = opts;
|
|
5617
|
-
this._event = new LoaderEvent();
|
|
5618
|
-
this._waitingLoadQueue = [];
|
|
5619
|
-
}
|
|
5620
|
-
Loader.prototype.load = function (data, changeResourceUUIDs) {
|
|
5621
|
-
var _a = this._resetLoadData(data, changeResourceUUIDs), uuidQueue = _a[0], loadData = _a[1];
|
|
5622
|
-
if (this._status === LoaderStatus.FREE || this._status === LoaderStatus.COMPLETE) {
|
|
5623
|
-
this._currentUUIDQueue = uuidQueue;
|
|
5624
|
-
this._currentLoadData = loadData;
|
|
5625
|
-
this._loadTask();
|
|
5626
|
-
}
|
|
5627
|
-
else if (this._status === LoaderStatus.LOADING && uuidQueue.length > 0) {
|
|
5628
|
-
this._waitingLoadQueue.push({
|
|
5629
|
-
uuidQueue: uuidQueue,
|
|
5630
|
-
loadData: loadData,
|
|
5631
|
-
});
|
|
5632
|
-
}
|
|
5633
|
-
};
|
|
5634
|
-
Loader.prototype.on = function (name, callback) {
|
|
5635
|
-
this._event.on(name, callback);
|
|
5636
|
-
};
|
|
5637
|
-
Loader.prototype.off = function (name, callback) {
|
|
5638
|
-
this._event.off(name, callback);
|
|
5639
|
-
};
|
|
5640
|
-
Loader.prototype.isComplete = function () {
|
|
5641
|
-
return this._status === LoaderStatus.COMPLETE;
|
|
5642
|
-
};
|
|
5643
|
-
Loader.prototype.getContent = function (uuid) {
|
|
5644
|
-
var _a;
|
|
5645
|
-
if (((_a = this._storageLoadData[uuid]) === null || _a === void 0 ? void 0 : _a.status) === 'loaded') {
|
|
5646
|
-
return this._storageLoadData[uuid].content;
|
|
5647
|
-
}
|
|
5648
|
-
return null;
|
|
5649
|
-
};
|
|
5650
|
-
Loader.prototype._resetLoadData = function (data, changeResourceUUIDs) {
|
|
5651
|
-
var loadData = {};
|
|
5652
|
-
var uuidQueue = [];
|
|
5653
|
-
var storageLoadData = this._storageLoadData;
|
|
5654
|
-
for (var i = data.elements.length - 1; i >= 0; i--) {
|
|
5655
|
-
var elem = data.elements[i];
|
|
5656
|
-
if (['image', 'svg', 'html',].includes(elem.type)) {
|
|
5657
|
-
if (!storageLoadData[elem.uuid]) {
|
|
5658
|
-
loadData[elem.uuid] = this._createEmptyLoadItem(elem);
|
|
5659
|
-
uuidQueue.push(elem.uuid);
|
|
5660
|
-
}
|
|
5661
|
-
else {
|
|
5662
|
-
if (changeResourceUUIDs.includes(elem.uuid)) {
|
|
5663
|
-
loadData[elem.uuid] = this._createEmptyLoadItem(elem);
|
|
5664
|
-
uuidQueue.push(elem.uuid);
|
|
5665
|
-
}
|
|
5666
|
-
}
|
|
5667
|
-
}
|
|
5668
|
-
}
|
|
5669
|
-
return [uuidQueue, loadData];
|
|
5670
|
-
};
|
|
5671
|
-
Loader.prototype._createEmptyLoadItem = function (elem) {
|
|
5672
|
-
var source = '';
|
|
5673
|
-
var type = elem.type;
|
|
5674
|
-
var elemW = elem.w;
|
|
5675
|
-
var elemH = elem.h;
|
|
5676
|
-
if (elem.type === 'image') {
|
|
5677
|
-
var _elem = elem;
|
|
5678
|
-
source = _elem.desc.src || '';
|
|
5679
|
-
}
|
|
5680
|
-
else if (elem.type === 'svg') {
|
|
5681
|
-
var _elem = elem;
|
|
5682
|
-
source = _elem.desc.svg || '';
|
|
5683
|
-
}
|
|
5684
|
-
else if (elem.type === 'html') {
|
|
5685
|
-
var _elem = elem;
|
|
5686
|
-
source = filterScript(_elem.desc.html || '');
|
|
5687
|
-
elemW = _elem.desc.width || elem.w;
|
|
5688
|
-
elemH = _elem.desc.height || elem.h;
|
|
5689
|
-
}
|
|
5690
|
-
return {
|
|
5691
|
-
type: type,
|
|
5692
|
-
status: 'null',
|
|
5693
|
-
content: null,
|
|
5694
|
-
source: source,
|
|
5695
|
-
elemW: elemW,
|
|
5696
|
-
elemH: elemH,
|
|
5697
|
-
};
|
|
5698
|
-
};
|
|
5699
|
-
Loader.prototype._loadTask = function () {
|
|
5700
|
-
var _this = this;
|
|
5701
|
-
if (this._status === LoaderStatus.LOADING) {
|
|
5702
|
-
return;
|
|
5703
|
-
}
|
|
5704
|
-
this._status = LoaderStatus.LOADING;
|
|
5705
|
-
if (this._currentUUIDQueue.length === 0) {
|
|
5706
|
-
if (this._waitingLoadQueue.length === 0) {
|
|
5707
|
-
this._status = LoaderStatus.COMPLETE;
|
|
5708
|
-
this._event.trigger('complete', undefined);
|
|
5709
|
-
return;
|
|
5710
|
-
}
|
|
5711
|
-
else {
|
|
5712
|
-
var waitingItem = this._waitingLoadQueue.shift();
|
|
5713
|
-
if (waitingItem) {
|
|
5714
|
-
var uuidQueue = waitingItem.uuidQueue, loadData = waitingItem.loadData;
|
|
5715
|
-
this._currentLoadData = loadData;
|
|
5716
|
-
this._currentUUIDQueue = uuidQueue;
|
|
5717
|
-
}
|
|
5718
|
-
}
|
|
5719
|
-
}
|
|
5720
|
-
var maxParallelNum = this._opts.maxParallelNum;
|
|
5721
|
-
var uuids = this._currentUUIDQueue.splice(0, maxParallelNum);
|
|
5722
|
-
var uuidMap = {};
|
|
5723
|
-
uuids.forEach(function (url, i) {
|
|
5724
|
-
uuidMap[url] = i;
|
|
5725
|
-
});
|
|
5726
|
-
var loadUUIDList = [];
|
|
5727
|
-
var _loadAction = function () {
|
|
5728
|
-
if (loadUUIDList.length >= maxParallelNum) {
|
|
5729
|
-
return false;
|
|
5730
|
-
}
|
|
5731
|
-
if (uuids.length === 0) {
|
|
5732
|
-
return true;
|
|
5733
|
-
}
|
|
5734
|
-
var _loop_1 = function (i) {
|
|
5735
|
-
var uuid = uuids.shift();
|
|
5736
|
-
if (uuid === undefined) {
|
|
5737
|
-
return "break";
|
|
5738
|
-
}
|
|
5739
|
-
loadUUIDList.push(uuid);
|
|
5740
|
-
_this._loadElementSource(_this._currentLoadData[uuid]).then(function (image) {
|
|
5741
|
-
loadUUIDList.splice(loadUUIDList.indexOf(uuid), 1);
|
|
5742
|
-
var status = _loadAction();
|
|
5743
|
-
_this._storageLoadData[uuid] = {
|
|
5744
|
-
type: _this._currentLoadData[uuid].type,
|
|
5745
|
-
status: 'loaded',
|
|
5746
|
-
content: image,
|
|
5747
|
-
source: _this._currentLoadData[uuid].source,
|
|
5748
|
-
elemW: _this._currentLoadData[uuid].elemW,
|
|
5749
|
-
elemH: _this._currentLoadData[uuid].elemH,
|
|
5750
|
-
};
|
|
5751
|
-
if (loadUUIDList.length === 0 && uuids.length === 0 && status === true) {
|
|
5752
|
-
_this._status = LoaderStatus.FREE;
|
|
5753
|
-
_this._loadTask();
|
|
5754
|
-
}
|
|
5755
|
-
_this._event.trigger('load', {
|
|
5756
|
-
type: _this._storageLoadData[uuid].type,
|
|
5757
|
-
status: _this._storageLoadData[uuid].status,
|
|
5758
|
-
content: _this._storageLoadData[uuid].content,
|
|
5759
|
-
source: _this._storageLoadData[uuid].source,
|
|
5760
|
-
elemW: _this._storageLoadData[uuid].elemW,
|
|
5761
|
-
elemH: _this._storageLoadData[uuid].elemH,
|
|
5762
|
-
});
|
|
5763
|
-
}).catch(function (err) {
|
|
5764
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
5765
|
-
console.warn(err);
|
|
5766
|
-
loadUUIDList.splice(loadUUIDList.indexOf(uuid), 1);
|
|
5767
|
-
var status = _loadAction();
|
|
5768
|
-
if (_this._currentLoadData[uuid]) {
|
|
5769
|
-
_this._storageLoadData[uuid] = {
|
|
5770
|
-
type: (_a = _this._currentLoadData[uuid]) === null || _a === void 0 ? void 0 : _a.type,
|
|
5771
|
-
status: 'fail',
|
|
5772
|
-
content: null,
|
|
5773
|
-
error: err,
|
|
5774
|
-
source: (_b = _this._currentLoadData[uuid]) === null || _b === void 0 ? void 0 : _b.source,
|
|
5775
|
-
elemW: (_c = _this._currentLoadData[uuid]) === null || _c === void 0 ? void 0 : _c.elemW,
|
|
5776
|
-
elemH: (_d = _this._currentLoadData[uuid]) === null || _d === void 0 ? void 0 : _d.elemH,
|
|
5777
|
-
};
|
|
5778
|
-
}
|
|
5779
|
-
if (loadUUIDList.length === 0 && uuids.length === 0 && status === true) {
|
|
5780
|
-
_this._status = LoaderStatus.FREE;
|
|
5781
|
-
_this._loadTask();
|
|
5782
|
-
}
|
|
5783
|
-
if (_this._currentLoadData[uuid]) {
|
|
5784
|
-
_this._event.trigger('error', {
|
|
5785
|
-
type: (_e = _this._storageLoadData[uuid]) === null || _e === void 0 ? void 0 : _e.type,
|
|
5786
|
-
status: (_f = _this._storageLoadData[uuid]) === null || _f === void 0 ? void 0 : _f.status,
|
|
5787
|
-
content: (_g = _this._storageLoadData[uuid]) === null || _g === void 0 ? void 0 : _g.content,
|
|
5788
|
-
source: (_h = _this._storageLoadData[uuid]) === null || _h === void 0 ? void 0 : _h.source,
|
|
5789
|
-
elemW: (_j = _this._storageLoadData[uuid]) === null || _j === void 0 ? void 0 : _j.elemW,
|
|
5790
|
-
elemH: (_k = _this._storageLoadData[uuid]) === null || _k === void 0 ? void 0 : _k.elemH,
|
|
5791
|
-
});
|
|
5792
|
-
}
|
|
5793
|
-
});
|
|
5794
|
-
};
|
|
5795
|
-
for (var i = loadUUIDList.length; i < maxParallelNum; i++) {
|
|
5796
|
-
var state_1 = _loop_1();
|
|
5797
|
-
if (state_1 === "break")
|
|
5798
|
-
break;
|
|
5799
|
-
}
|
|
5800
|
-
return false;
|
|
5801
|
-
};
|
|
5802
|
-
_loadAction();
|
|
5803
|
-
};
|
|
5804
|
-
Loader.prototype._loadElementSource = function (params) {
|
|
5805
|
-
return __awaiter$4(this, void 0, void 0, function () {
|
|
5806
|
-
var image, image, image;
|
|
5807
|
-
return __generator$4(this, function (_a) {
|
|
5808
|
-
switch (_a.label) {
|
|
5809
|
-
case 0:
|
|
5810
|
-
if (!(params && params.type === 'image')) return [3, 2];
|
|
5811
|
-
return [4, loadImage(params.source)];
|
|
5812
|
-
case 1:
|
|
5813
|
-
image = _a.sent();
|
|
5814
|
-
return [2, image];
|
|
5815
|
-
case 2:
|
|
5816
|
-
if (!(params && params.type === 'svg')) return [3, 4];
|
|
5817
|
-
return [4, loadSVG(params.source)];
|
|
5818
|
-
case 3:
|
|
5819
|
-
image = _a.sent();
|
|
5820
|
-
return [2, image];
|
|
5821
|
-
case 4:
|
|
5822
|
-
if (!(params && params.type === 'html')) return [3, 6];
|
|
5823
|
-
return [4, loadHTML(params.source, {
|
|
5824
|
-
width: params.elemW, height: params.elemH
|
|
5825
|
-
})];
|
|
5826
|
-
case 5:
|
|
5827
|
-
image = _a.sent();
|
|
5828
|
-
return [2, image];
|
|
5829
|
-
case 6: throw Error('Element\'s source is not support!');
|
|
5830
|
-
}
|
|
5831
|
-
});
|
|
5832
|
-
});
|
|
5833
|
-
};
|
|
5834
|
-
return Loader;
|
|
5835
|
-
}());
|
|
5836
|
-
|
|
5837
5019
|
var _board$1 = Symbol('_displayCtx');
|
|
5838
|
-
var _helper
|
|
5020
|
+
var _helper = Symbol('_helper');
|
|
5839
5021
|
var _element$1 = Symbol('_element');
|
|
5840
5022
|
var _opts$1 = Symbol('_opts');
|
|
5841
5023
|
var Mapper = (function () {
|
|
@@ -5843,7 +5025,7 @@ var iDrawCore = (function () {
|
|
|
5843
5025
|
this[_opts$1] = opts;
|
|
5844
5026
|
this[_board$1] = this[_opts$1].board;
|
|
5845
5027
|
this[_element$1] = this[_opts$1].element;
|
|
5846
|
-
this[_helper
|
|
5028
|
+
this[_helper] = this[_opts$1].helper;
|
|
5847
5029
|
}
|
|
5848
5030
|
Mapper.prototype.isEffectivePoint = function (p) {
|
|
5849
5031
|
var scrollLineWidth = this[_board$1].getScrollLineWidth();
|
|
@@ -5859,7 +5041,7 @@ var iDrawCore = (function () {
|
|
|
5859
5041
|
if (!this.isEffectivePoint(p)) {
|
|
5860
5042
|
return { cursor: cursor, elementUUID: elementUUID };
|
|
5861
5043
|
}
|
|
5862
|
-
var _a = this[_helper
|
|
5044
|
+
var _a = this[_helper].isPointInElementWrapperController(p, data), uuid = _a.uuid, hoverControllerDirection = _a.hoverControllerDirection;
|
|
5863
5045
|
var direction = hoverControllerDirection;
|
|
5864
5046
|
if (uuid && direction) {
|
|
5865
5047
|
switch (direction) {
|
|
@@ -5946,198 +5128,19 @@ var iDrawCore = (function () {
|
|
|
5946
5128
|
return false;
|
|
5947
5129
|
}
|
|
5948
5130
|
return true;
|
|
5949
|
-
}
|
|
5950
|
-
function isNumber(num) {
|
|
5951
|
-
return (num >= 0 || num < 0);
|
|
5952
|
-
}
|
|
5953
|
-
|
|
5954
|
-
|
|
5955
|
-
|
|
5956
|
-
|
|
5957
|
-
}
|
|
5958
|
-
RendererEvent.prototype.on = function (eventKey, callback) {
|
|
5959
|
-
if (this._listeners.has(eventKey)) {
|
|
5960
|
-
var callbacks = this._listeners.get(eventKey);
|
|
5961
|
-
callbacks === null || callbacks === void 0 ? void 0 : callbacks.push(callback);
|
|
5962
|
-
this._listeners.set(eventKey, callbacks || []);
|
|
5963
|
-
}
|
|
5964
|
-
else {
|
|
5965
|
-
this._listeners.set(eventKey, [callback]);
|
|
5966
|
-
}
|
|
5967
|
-
};
|
|
5968
|
-
RendererEvent.prototype.off = function (eventKey, callback) {
|
|
5969
|
-
if (this._listeners.has(eventKey)) {
|
|
5970
|
-
var callbacks = this._listeners.get(eventKey);
|
|
5971
|
-
if (Array.isArray(callbacks)) {
|
|
5972
|
-
for (var i = 0; i < (callbacks === null || callbacks === void 0 ? void 0 : callbacks.length); i++) {
|
|
5973
|
-
if (callbacks[i] === callback) {
|
|
5974
|
-
callbacks.splice(i, 1);
|
|
5975
|
-
break;
|
|
5976
|
-
}
|
|
5977
|
-
}
|
|
5978
|
-
}
|
|
5979
|
-
this._listeners.set(eventKey, callbacks || []);
|
|
5980
|
-
}
|
|
5981
|
-
};
|
|
5982
|
-
RendererEvent.prototype.trigger = function (eventKey, arg) {
|
|
5983
|
-
var callbacks = this._listeners.get(eventKey);
|
|
5984
|
-
if (Array.isArray(callbacks)) {
|
|
5985
|
-
callbacks.forEach(function (cb) {
|
|
5986
|
-
cb(arg);
|
|
5987
|
-
});
|
|
5988
|
-
return true;
|
|
5989
|
-
}
|
|
5990
|
-
else {
|
|
5991
|
-
return false;
|
|
5992
|
-
}
|
|
5993
|
-
};
|
|
5994
|
-
RendererEvent.prototype.has = function (name) {
|
|
5995
|
-
if (this._listeners.has(name)) {
|
|
5996
|
-
var list = this._listeners.get(name);
|
|
5997
|
-
if (Array.isArray(list) && list.length > 0) {
|
|
5998
|
-
return true;
|
|
5999
|
-
}
|
|
6000
|
-
}
|
|
6001
|
-
return false;
|
|
6002
|
-
};
|
|
6003
|
-
return RendererEvent;
|
|
6004
|
-
}());
|
|
6005
|
-
|
|
6006
|
-
var requestAnimationFrame = window.requestAnimationFrame;
|
|
6007
|
-
var deepClone$3 = index$1.data.deepClone;
|
|
6008
|
-
var DrawStatus;
|
|
6009
|
-
(function (DrawStatus) {
|
|
6010
|
-
DrawStatus["NULL"] = "null";
|
|
6011
|
-
DrawStatus["FREE"] = "free";
|
|
6012
|
-
DrawStatus["DRAWING"] = "drawing";
|
|
6013
|
-
DrawStatus["FREEZE"] = "freeze";
|
|
6014
|
-
})(DrawStatus || (DrawStatus = {}));
|
|
6015
|
-
((function (_super) {
|
|
6016
|
-
__extends$1(Renderer, _super);
|
|
6017
|
-
function Renderer(board) {
|
|
6018
|
-
var _this = _super.call(this) || this;
|
|
6019
|
-
_this._queue = [];
|
|
6020
|
-
_this._status = DrawStatus.NULL;
|
|
6021
|
-
_this._board = board;
|
|
6022
|
-
_this._loader = new Loader({
|
|
6023
|
-
board: board,
|
|
6024
|
-
maxParallelNum: 6
|
|
6025
|
-
});
|
|
6026
|
-
_this._loader.on('load', function (res) {
|
|
6027
|
-
_this._drawFrame();
|
|
6028
|
-
});
|
|
6029
|
-
_this._loader.on('error', function (res) {
|
|
6030
|
-
console.log('Loader Error: ', res);
|
|
6031
|
-
});
|
|
6032
|
-
_this._loader.on('complete', function (res) {
|
|
6033
|
-
});
|
|
6034
|
-
return _this;
|
|
6035
|
-
}
|
|
6036
|
-
Renderer.prototype.freeze = function () {
|
|
6037
|
-
this._status = DrawStatus.FREEZE;
|
|
6038
|
-
};
|
|
6039
|
-
Renderer.prototype.thaw = function () {
|
|
6040
|
-
this._status = DrawStatus.FREE;
|
|
6041
|
-
};
|
|
6042
|
-
Renderer.prototype.render = function (data, helper, changeResourceUUIDs) {
|
|
6043
|
-
if ([DrawStatus.FREEZE].includes(this._status)) {
|
|
6044
|
-
return;
|
|
6045
|
-
}
|
|
6046
|
-
var _data = deepClone$3({ data: data, helper: helper });
|
|
6047
|
-
this._queue.push(_data);
|
|
6048
|
-
if (this._status !== DrawStatus.DRAWING) {
|
|
6049
|
-
this._status = DrawStatus.DRAWING;
|
|
6050
|
-
this._drawFrame();
|
|
6051
|
-
}
|
|
6052
|
-
this._loader.load(data, changeResourceUUIDs);
|
|
6053
|
-
};
|
|
6054
|
-
Renderer.prototype._drawFrame = function () {
|
|
6055
|
-
var _this = this;
|
|
6056
|
-
if (this._status === DrawStatus.FREEZE) {
|
|
6057
|
-
return;
|
|
6058
|
-
}
|
|
6059
|
-
requestAnimationFrame(function () {
|
|
6060
|
-
if (_this._status === DrawStatus.FREEZE) {
|
|
6061
|
-
return;
|
|
6062
|
-
}
|
|
6063
|
-
var ctx = _this._board.getContext();
|
|
6064
|
-
var item = _this._queue[0];
|
|
6065
|
-
var isLastFrame = false;
|
|
6066
|
-
if (_this._queue.length > 1) {
|
|
6067
|
-
item = _this._queue.shift();
|
|
6068
|
-
}
|
|
6069
|
-
else {
|
|
6070
|
-
isLastFrame = true;
|
|
6071
|
-
}
|
|
6072
|
-
if (_this._loader.isComplete() !== true) {
|
|
6073
|
-
_this._drawFrame();
|
|
6074
|
-
if (item) {
|
|
6075
|
-
drawContext(ctx, item.data, item.helper, _this._loader);
|
|
6076
|
-
_this._board.draw();
|
|
6077
|
-
}
|
|
6078
|
-
}
|
|
6079
|
-
else if (item) {
|
|
6080
|
-
drawContext(ctx, item.data, item.helper, _this._loader);
|
|
6081
|
-
_this._board.draw();
|
|
6082
|
-
_this._retainQueueOneItem();
|
|
6083
|
-
if (!isLastFrame) {
|
|
6084
|
-
_this._drawFrame();
|
|
6085
|
-
}
|
|
6086
|
-
else {
|
|
6087
|
-
_this._status = DrawStatus.FREE;
|
|
6088
|
-
}
|
|
6089
|
-
}
|
|
6090
|
-
else {
|
|
6091
|
-
_this._status = DrawStatus.FREE;
|
|
6092
|
-
}
|
|
6093
|
-
_this.trigger('drawFrame', undefined);
|
|
6094
|
-
if (_this._loader.isComplete() === true && _this._queue.length === 1 && _this._status === DrawStatus.FREE) {
|
|
6095
|
-
_this.trigger('drawFrameComplete', undefined);
|
|
6096
|
-
_this.freeze();
|
|
6097
|
-
}
|
|
6098
|
-
});
|
|
6099
|
-
};
|
|
6100
|
-
Renderer.prototype._retainQueueOneItem = function () {
|
|
6101
|
-
if (this._queue.length <= 1) {
|
|
6102
|
-
return;
|
|
6103
|
-
}
|
|
6104
|
-
var lastOne = deepClone$3(this._queue[this._queue.length - 1]);
|
|
6105
|
-
this._queue = [lastOne];
|
|
6106
|
-
};
|
|
6107
|
-
return Renderer;
|
|
6108
|
-
})(RendererEvent));
|
|
6109
|
-
|
|
6110
|
-
var Mode;
|
|
6111
|
-
(function (Mode) {
|
|
6112
|
-
Mode["NULL"] = "null";
|
|
6113
|
-
Mode["SELECT_ELEMENT"] = "select-element";
|
|
6114
|
-
Mode["SELECT_ELEMENT_LIST"] = "select-element-list";
|
|
6115
|
-
Mode["SELECT_ELEMENT_WRAPPER_CONTROLLER"] = "select-element-wrapper-controller";
|
|
6116
|
-
Mode["SELECT_AREA"] = "select-area";
|
|
6117
|
-
})(Mode || (Mode = {}));
|
|
6118
|
-
var CursorStatus;
|
|
6119
|
-
(function (CursorStatus) {
|
|
6120
|
-
CursorStatus["DRAGGING"] = "dragging";
|
|
6121
|
-
CursorStatus["NULL"] = "null";
|
|
6122
|
-
})(CursorStatus || (CursorStatus = {}));
|
|
6123
|
-
|
|
6124
|
-
function createData() {
|
|
6125
|
-
return {
|
|
6126
|
-
onlyRender: false,
|
|
6127
|
-
hasInited: false,
|
|
6128
|
-
mode: Mode.NULL,
|
|
6129
|
-
cursorStatus: CursorStatus.NULL,
|
|
6130
|
-
selectedUUID: null,
|
|
6131
|
-
selectedUUIDList: [],
|
|
6132
|
-
hoverUUID: null,
|
|
6133
|
-
selectedControllerDirection: null,
|
|
6134
|
-
hoverControllerDirection: null,
|
|
6135
|
-
prevPoint: null,
|
|
5131
|
+
}
|
|
5132
|
+
function isNumber(num) {
|
|
5133
|
+
return (num >= 0 || num < 0);
|
|
5134
|
+
}
|
|
5135
|
+
|
|
5136
|
+
function createData$1() {
|
|
5137
|
+
return {
|
|
5138
|
+
hasInited: false,
|
|
6136
5139
|
};
|
|
6137
5140
|
}
|
|
6138
|
-
var TempData = (function () {
|
|
5141
|
+
var TempData$1 = (function () {
|
|
6139
5142
|
function TempData() {
|
|
6140
|
-
this._temp = createData();
|
|
5143
|
+
this._temp = createData$1();
|
|
6141
5144
|
}
|
|
6142
5145
|
TempData.prototype.set = function (name, value) {
|
|
6143
5146
|
this._temp[name] = value;
|
|
@@ -6146,7 +5149,7 @@ var iDrawCore = (function () {
|
|
|
6146
5149
|
return this._temp[name];
|
|
6147
5150
|
};
|
|
6148
5151
|
TempData.prototype.clear = function () {
|
|
6149
|
-
this._temp = createData();
|
|
5152
|
+
this._temp = createData$1();
|
|
6150
5153
|
};
|
|
6151
5154
|
return TempData;
|
|
6152
5155
|
}());
|
|
@@ -6157,30 +5160,42 @@ var iDrawCore = (function () {
|
|
|
6157
5160
|
var _config = Symbol('_config');
|
|
6158
5161
|
var _renderer = Symbol('_renderer');
|
|
6159
5162
|
var _element = Symbol('_element');
|
|
6160
|
-
var _helper = Symbol('_helper');
|
|
6161
5163
|
var _tempData = Symbol('_tempData');
|
|
6162
5164
|
var _draw = Symbol('_draw');
|
|
6163
5165
|
var _coreEvent = Symbol('_coreEvent');
|
|
6164
|
-
var _mapper = Symbol('_mapper');
|
|
6165
5166
|
var _emitChangeScreen = Symbol('_emitChangeScreen');
|
|
6166
5167
|
var _emitChangeData = Symbol('_emitChangeData');
|
|
6167
|
-
var
|
|
5168
|
+
var _engine = Symbol('_engine');
|
|
5169
|
+
|
|
5170
|
+
var Mode;
|
|
5171
|
+
(function (Mode) {
|
|
5172
|
+
Mode["NULL"] = "null";
|
|
5173
|
+
Mode["SELECT_ELEMENT"] = "select-element";
|
|
5174
|
+
Mode["SELECT_ELEMENT_LIST"] = "select-element-list";
|
|
5175
|
+
Mode["SELECT_ELEMENT_WRAPPER_CONTROLLER"] = "select-element-wrapper-controller";
|
|
5176
|
+
Mode["SELECT_AREA"] = "select-area";
|
|
5177
|
+
})(Mode || (Mode = {}));
|
|
5178
|
+
var CursorStatus;
|
|
5179
|
+
(function (CursorStatus) {
|
|
5180
|
+
CursorStatus["DRAGGING"] = "dragging";
|
|
5181
|
+
CursorStatus["NULL"] = "null";
|
|
5182
|
+
})(CursorStatus || (CursorStatus = {}));
|
|
6168
5183
|
|
|
6169
5184
|
var deepClone$2 = index$1.data.deepClone;
|
|
6170
5185
|
var createUUID = index$1.uuid.createUUID;
|
|
6171
5186
|
function getSelectedElements(core) {
|
|
6172
5187
|
var elems = [];
|
|
6173
5188
|
var list = [];
|
|
6174
|
-
var uuid = core[
|
|
5189
|
+
var uuid = core[_engine].temp.get('selectedUUID');
|
|
6175
5190
|
if (typeof uuid === 'string' && uuid) {
|
|
6176
5191
|
list.push(uuid);
|
|
6177
5192
|
}
|
|
6178
5193
|
else {
|
|
6179
|
-
list = core[
|
|
5194
|
+
list = core[_engine].temp.get('selectedUUIDList');
|
|
6180
5195
|
}
|
|
6181
5196
|
list.forEach(function (uuid) {
|
|
6182
5197
|
var _a;
|
|
6183
|
-
var index = core[
|
|
5198
|
+
var index = core[_engine].helper.getElementIndexByUUID(uuid);
|
|
6184
5199
|
if (index !== null && index >= 0) {
|
|
6185
5200
|
var elem = (_a = core[_data]) === null || _a === void 0 ? void 0 : _a.elements[index];
|
|
6186
5201
|
if (elem)
|
|
@@ -6191,7 +5206,7 @@ var iDrawCore = (function () {
|
|
|
6191
5206
|
}
|
|
6192
5207
|
function getElement(core, uuid) {
|
|
6193
5208
|
var elem = null;
|
|
6194
|
-
var index = core[
|
|
5209
|
+
var index = core[_engine].helper.getElementIndexByUUID(uuid);
|
|
6195
5210
|
if (index !== null && core[_data].elements[index]) {
|
|
6196
5211
|
elem = deepClone$2(core[_data].elements[index]);
|
|
6197
5212
|
}
|
|
@@ -6223,33 +5238,29 @@ var iDrawCore = (function () {
|
|
|
6223
5238
|
core[_draw]({ resourceChangeUUIDs: resourceChangeUUIDs });
|
|
6224
5239
|
}
|
|
6225
5240
|
function selectElementByIndex(core, index, opts) {
|
|
6226
|
-
if (core[_tempData].get('onlyRender') === true)
|
|
6227
|
-
return;
|
|
6228
5241
|
if (core[_data].elements[index]) {
|
|
6229
5242
|
var uuid = core[_data].elements[index].uuid;
|
|
6230
5243
|
if ((opts === null || opts === void 0 ? void 0 : opts.useMode) === true) {
|
|
6231
|
-
core[
|
|
5244
|
+
core[_engine].temp.set('mode', Mode.SELECT_ELEMENT);
|
|
6232
5245
|
}
|
|
6233
5246
|
else {
|
|
6234
|
-
core[
|
|
5247
|
+
core[_engine].temp.set('mode', Mode.NULL);
|
|
6235
5248
|
}
|
|
6236
5249
|
if (typeof uuid === 'string') {
|
|
6237
|
-
core[
|
|
6238
|
-
core[
|
|
5250
|
+
core[_engine].temp.set('selectedUUID', uuid);
|
|
5251
|
+
core[_engine].temp.set('selectedUUIDList', []);
|
|
6239
5252
|
}
|
|
6240
5253
|
core[_draw]();
|
|
6241
5254
|
}
|
|
6242
5255
|
}
|
|
6243
5256
|
function selectElement(core, uuid, opts) {
|
|
6244
|
-
|
|
6245
|
-
return;
|
|
6246
|
-
var index = core[_helper].getElementIndexByUUID(uuid);
|
|
5257
|
+
var index = core[_engine].helper.getElementIndexByUUID(uuid);
|
|
6247
5258
|
if (typeof index === 'number' && index >= 0) {
|
|
6248
5259
|
core.selectElementByIndex(index, opts);
|
|
6249
5260
|
}
|
|
6250
5261
|
}
|
|
6251
5262
|
function moveUpElement(core, uuid) {
|
|
6252
|
-
var index = core[
|
|
5263
|
+
var index = core[_engine].helper.getElementIndexByUUID(uuid);
|
|
6253
5264
|
if (typeof index === 'number' && index >= 0 && index < core[_data].elements.length - 1) {
|
|
6254
5265
|
var temp = core[_data].elements[index];
|
|
6255
5266
|
core[_data].elements[index] = core[_data].elements[index + 1];
|
|
@@ -6259,7 +5270,7 @@ var iDrawCore = (function () {
|
|
|
6259
5270
|
core[_draw]();
|
|
6260
5271
|
}
|
|
6261
5272
|
function moveDownElement(core, uuid) {
|
|
6262
|
-
var index = core[
|
|
5273
|
+
var index = core[_engine].helper.getElementIndexByUUID(uuid);
|
|
6263
5274
|
if (typeof index === 'number' && index > 0 && index < core[_data].elements.length) {
|
|
6264
5275
|
var temp = core[_data].elements[index];
|
|
6265
5276
|
core[_data].elements[index] = core[_data].elements[index - 1];
|
|
@@ -6285,7 +5296,7 @@ var iDrawCore = (function () {
|
|
|
6285
5296
|
}
|
|
6286
5297
|
}
|
|
6287
5298
|
function insertElementBefore(core, elem, beforeUUID) {
|
|
6288
|
-
var index = core[
|
|
5299
|
+
var index = core[_engine].helper.getElementIndexByUUID(beforeUUID);
|
|
6289
5300
|
if (index !== null) {
|
|
6290
5301
|
return core.insertElementBeforeIndex(elem, index);
|
|
6291
5302
|
}
|
|
@@ -6303,7 +5314,7 @@ var iDrawCore = (function () {
|
|
|
6303
5314
|
return null;
|
|
6304
5315
|
}
|
|
6305
5316
|
function insertElementAfter(core, elem, beforeUUID) {
|
|
6306
|
-
var index = core[
|
|
5317
|
+
var index = core[_engine].helper.getElementIndexByUUID(beforeUUID);
|
|
6307
5318
|
if (index !== null) {
|
|
6308
5319
|
return core.insertElementAfterIndex(elem, index);
|
|
6309
5320
|
}
|
|
@@ -6321,168 +5332,241 @@ var iDrawCore = (function () {
|
|
|
6321
5332
|
return null;
|
|
6322
5333
|
}
|
|
6323
5334
|
|
|
5335
|
+
function createData() {
|
|
5336
|
+
return {
|
|
5337
|
+
hasInited: false,
|
|
5338
|
+
mode: Mode.NULL,
|
|
5339
|
+
cursorStatus: CursorStatus.NULL,
|
|
5340
|
+
selectedUUID: null,
|
|
5341
|
+
selectedUUIDList: [],
|
|
5342
|
+
hoverUUID: null,
|
|
5343
|
+
selectedControllerDirection: null,
|
|
5344
|
+
hoverControllerDirection: null,
|
|
5345
|
+
prevPoint: null,
|
|
5346
|
+
};
|
|
5347
|
+
}
|
|
5348
|
+
var TempData = (function () {
|
|
5349
|
+
function TempData() {
|
|
5350
|
+
this._temp = createData();
|
|
5351
|
+
}
|
|
5352
|
+
TempData.prototype.set = function (name, value) {
|
|
5353
|
+
this._temp[name] = value;
|
|
5354
|
+
};
|
|
5355
|
+
TempData.prototype.get = function (name) {
|
|
5356
|
+
return this._temp[name];
|
|
5357
|
+
};
|
|
5358
|
+
TempData.prototype.clear = function () {
|
|
5359
|
+
this._temp = createData();
|
|
5360
|
+
};
|
|
5361
|
+
return TempData;
|
|
5362
|
+
}());
|
|
5363
|
+
|
|
6324
5364
|
var time = index$1.time;
|
|
6325
5365
|
var deepClone$1 = index$1.data.deepClone;
|
|
6326
|
-
function
|
|
6327
|
-
|
|
6328
|
-
|
|
6329
|
-
|
|
6330
|
-
|
|
6331
|
-
|
|
6332
|
-
|
|
6333
|
-
|
|
6334
|
-
|
|
6335
|
-
return;
|
|
5366
|
+
var Engine = (function () {
|
|
5367
|
+
function Engine(opts) {
|
|
5368
|
+
this._plugins = [];
|
|
5369
|
+
var board = opts.board, config = opts.config, element = opts.element;
|
|
5370
|
+
var helper = new Helper(board, config);
|
|
5371
|
+
this._opts = opts;
|
|
5372
|
+
this.temp = new TempData();
|
|
5373
|
+
this.helper = helper;
|
|
5374
|
+
this._mapper = new Mapper({ board: board, helper: helper, element: element });
|
|
6336
5375
|
}
|
|
6337
|
-
|
|
6338
|
-
|
|
6339
|
-
|
|
6340
|
-
|
|
6341
|
-
|
|
6342
|
-
|
|
6343
|
-
|
|
6344
|
-
|
|
6345
|
-
|
|
6346
|
-
|
|
6347
|
-
|
|
6348
|
-
|
|
6349
|
-
|
|
6350
|
-
|
|
5376
|
+
Engine.prototype.addPlugin = function (plugin) {
|
|
5377
|
+
this._plugins.push(plugin);
|
|
5378
|
+
};
|
|
5379
|
+
Engine.prototype.getHelperConfig = function () {
|
|
5380
|
+
return this.helper.getConfig();
|
|
5381
|
+
};
|
|
5382
|
+
Engine.prototype.updateHelperConfig = function (opts) {
|
|
5383
|
+
var _a;
|
|
5384
|
+
var _b = this._opts, board = _b.board, getDataFeekback = _b.getDataFeekback, config = _b.config;
|
|
5385
|
+
var data = getDataFeekback();
|
|
5386
|
+
var transform = board.getTransform();
|
|
5387
|
+
this.helper.updateConfig(data, {
|
|
5388
|
+
width: opts.width,
|
|
5389
|
+
height: opts.height,
|
|
5390
|
+
devicePixelRatio: opts.devicePixelRatio,
|
|
5391
|
+
canScroll: ((_a = config === null || config === void 0 ? void 0 : config.scrollWrapper) === null || _a === void 0 ? void 0 : _a.use) === true,
|
|
5392
|
+
selectedUUID: this.temp.get('selectedUUID'),
|
|
5393
|
+
selectedUUIDList: this.temp.get('selectedUUIDList'),
|
|
5394
|
+
scale: transform.scale,
|
|
5395
|
+
scrollX: transform.scrollX,
|
|
5396
|
+
scrollY: transform.scrollY,
|
|
5397
|
+
});
|
|
5398
|
+
};
|
|
5399
|
+
Engine.prototype.init = function () {
|
|
5400
|
+
this._initEvent();
|
|
5401
|
+
};
|
|
5402
|
+
Engine.prototype._initEvent = function () {
|
|
5403
|
+
if (this.temp.get('hasInited') === true) {
|
|
5404
|
+
return;
|
|
5405
|
+
}
|
|
5406
|
+
var board = this._opts.board;
|
|
5407
|
+
board.on('hover', time.throttle(this._handleHover.bind(this), 32));
|
|
5408
|
+
board.on('leave', time.throttle(this._handleLeave.bind(this), 32));
|
|
5409
|
+
board.on('point', time.throttle(this._handleClick.bind(this), 16));
|
|
5410
|
+
board.on('doubleClick', this._handleDoubleClick.bind(this));
|
|
5411
|
+
board.on('point', this._handlePoint.bind(this));
|
|
5412
|
+
board.on('moveStart', this._handleMoveStart.bind(this));
|
|
5413
|
+
board.on('move', time.throttle(this._handleMove.bind(this), 16));
|
|
5414
|
+
board.on('moveEnd', this._handleMoveEnd.bind(this));
|
|
5415
|
+
};
|
|
5416
|
+
Engine.prototype._handleDoubleClick = function (point) {
|
|
6351
5417
|
var _a, _b, _c;
|
|
6352
|
-
var _d =
|
|
5418
|
+
var _d = this._opts, element = _d.element, getDataFeekback = _d.getDataFeekback, drawFeekback = _d.drawFeekback, coreEvent = _d.coreEvent;
|
|
5419
|
+
var data = getDataFeekback();
|
|
5420
|
+
var _e = element.isPointInElement(point, data), index = _e[0], uuid = _e[1];
|
|
6353
5421
|
if (index >= 0 && uuid) {
|
|
6354
|
-
var elem = deepClone$1((_a =
|
|
5422
|
+
var elem = deepClone$1((_a = data.elements) === null || _a === void 0 ? void 0 : _a[index]);
|
|
6355
5423
|
if (((_b = elem === null || elem === void 0 ? void 0 : elem.operation) === null || _b === void 0 ? void 0 : _b.invisible) !== true) {
|
|
6356
|
-
|
|
5424
|
+
coreEvent.trigger('screenDoubleClickElement', { index: index, uuid: uuid, element: deepClone$1((_c = data.elements) === null || _c === void 0 ? void 0 : _c[index]) });
|
|
6357
5425
|
}
|
|
6358
5426
|
}
|
|
6359
|
-
|
|
5427
|
+
drawFeekback();
|
|
6360
5428
|
};
|
|
6361
|
-
|
|
6362
|
-
function handlePoint(core) {
|
|
6363
|
-
return function (point) {
|
|
5429
|
+
Engine.prototype._handlePoint = function (point) {
|
|
6364
5430
|
var _a, _b, _c;
|
|
6365
|
-
if (!
|
|
5431
|
+
if (!this._mapper.isEffectivePoint(point)) {
|
|
6366
5432
|
return;
|
|
6367
5433
|
}
|
|
6368
|
-
|
|
6369
|
-
|
|
5434
|
+
var _d = this._opts, element = _d.element, getDataFeekback = _d.getDataFeekback, selectElementByIndex = _d.selectElementByIndex, coreEvent = _d.coreEvent, emitChangeScreen = _d.emitChangeScreen, drawFeekback = _d.drawFeekback;
|
|
5435
|
+
var helper = this.helper;
|
|
5436
|
+
var data = getDataFeekback();
|
|
5437
|
+
if (helper.isPointInElementList(point, data)) {
|
|
5438
|
+
this.temp.set('mode', Mode.SELECT_ELEMENT_LIST);
|
|
6370
5439
|
}
|
|
6371
5440
|
else {
|
|
6372
|
-
var
|
|
5441
|
+
var _e = helper.isPointInElementWrapperController(point, data), uuid = _e.uuid, selectedControllerDirection = _e.selectedControllerDirection;
|
|
6373
5442
|
if (uuid && selectedControllerDirection) {
|
|
6374
|
-
|
|
6375
|
-
|
|
6376
|
-
|
|
5443
|
+
this.temp.set('mode', Mode.SELECT_ELEMENT_WRAPPER_CONTROLLER);
|
|
5444
|
+
this.temp.set('selectedControllerDirection', selectedControllerDirection);
|
|
5445
|
+
this.temp.set('selectedUUID', uuid);
|
|
6377
5446
|
}
|
|
6378
5447
|
else {
|
|
6379
|
-
var
|
|
6380
|
-
if (index >= 0 && ((_b = (_a =
|
|
6381
|
-
|
|
6382
|
-
if (typeof uuid_1 === 'string' &&
|
|
6383
|
-
|
|
6384
|
-
|
|
5448
|
+
var _f = element.isPointInElement(point, data), index = _f[0], uuid_1 = _f[1];
|
|
5449
|
+
if (index >= 0 && ((_b = (_a = data.elements[index]) === null || _a === void 0 ? void 0 : _a.operation) === null || _b === void 0 ? void 0 : _b.invisible) !== true) {
|
|
5450
|
+
selectElementByIndex(index, { useMode: true });
|
|
5451
|
+
if (typeof uuid_1 === 'string' && coreEvent.has('screenSelectElement')) {
|
|
5452
|
+
coreEvent.trigger('screenSelectElement', { index: index, uuid: uuid_1, element: deepClone$1((_c = data.elements) === null || _c === void 0 ? void 0 : _c[index]) });
|
|
5453
|
+
emitChangeScreen();
|
|
6385
5454
|
}
|
|
6386
|
-
|
|
5455
|
+
this.temp.set('mode', Mode.SELECT_ELEMENT);
|
|
6387
5456
|
}
|
|
6388
5457
|
else {
|
|
6389
|
-
|
|
6390
|
-
|
|
6391
|
-
|
|
5458
|
+
this.temp.set('selectedUUIDList', []);
|
|
5459
|
+
this.temp.set('selectedUUID', null);
|
|
5460
|
+
this.temp.set('mode', Mode.SELECT_AREA);
|
|
6392
5461
|
}
|
|
6393
5462
|
}
|
|
6394
5463
|
}
|
|
6395
|
-
|
|
5464
|
+
drawFeekback();
|
|
6396
5465
|
};
|
|
6397
|
-
|
|
6398
|
-
function handleClick(core) {
|
|
6399
|
-
return function (point) {
|
|
5466
|
+
Engine.prototype._handleClick = function (point) {
|
|
6400
5467
|
var _a;
|
|
6401
|
-
var _b =
|
|
5468
|
+
var _b = this._opts, element = _b.element, getDataFeekback = _b.getDataFeekback, coreEvent = _b.coreEvent, drawFeekback = _b.drawFeekback;
|
|
5469
|
+
var data = getDataFeekback();
|
|
5470
|
+
var _c = element.isPointInElement(point, data), index = _c[0], uuid = _c[1];
|
|
6402
5471
|
if (index >= 0 && uuid) {
|
|
6403
|
-
|
|
5472
|
+
coreEvent.trigger('screenClickElement', { index: index, uuid: uuid, element: deepClone$1((_a = data.elements) === null || _a === void 0 ? void 0 : _a[index]) });
|
|
6404
5473
|
}
|
|
6405
|
-
|
|
5474
|
+
drawFeekback();
|
|
6406
5475
|
};
|
|
6407
|
-
|
|
6408
|
-
|
|
6409
|
-
|
|
6410
|
-
|
|
6411
|
-
|
|
6412
|
-
|
|
6413
|
-
|
|
6414
|
-
|
|
6415
|
-
|
|
6416
|
-
|
|
5476
|
+
Engine.prototype._handleMoveStart = function (point) {
|
|
5477
|
+
var _a = this._opts, element = _a.element, getDataFeekback = _a.getDataFeekback, coreEvent = _a.coreEvent;
|
|
5478
|
+
var data = getDataFeekback();
|
|
5479
|
+
var helper = this.helper;
|
|
5480
|
+
this.temp.set('prevPoint', point);
|
|
5481
|
+
var uuid = this.temp.get('selectedUUID');
|
|
5482
|
+
if (this.temp.get('mode') === Mode.SELECT_ELEMENT_LIST) ;
|
|
5483
|
+
else if (this.temp.get('mode') === Mode.SELECT_ELEMENT) {
|
|
5484
|
+
if (typeof uuid === 'string' && coreEvent.has('screenMoveElementStart')) {
|
|
5485
|
+
coreEvent.trigger('screenMoveElementStart', {
|
|
5486
|
+
index: element.getElementIndex(data, uuid),
|
|
6417
5487
|
uuid: uuid,
|
|
6418
5488
|
x: point.x,
|
|
6419
5489
|
y: point.y
|
|
6420
5490
|
});
|
|
6421
5491
|
}
|
|
6422
5492
|
}
|
|
6423
|
-
else if (
|
|
6424
|
-
|
|
5493
|
+
else if (this.temp.get('mode') === Mode.SELECT_AREA) {
|
|
5494
|
+
helper.startSelectArea(point);
|
|
6425
5495
|
}
|
|
6426
5496
|
};
|
|
6427
|
-
|
|
6428
|
-
|
|
6429
|
-
|
|
6430
|
-
if (
|
|
6431
|
-
|
|
6432
|
-
|
|
6433
|
-
|
|
5497
|
+
Engine.prototype._handleMove = function (point) {
|
|
5498
|
+
var drawFeekback = this._opts.drawFeekback;
|
|
5499
|
+
var helper = this.helper;
|
|
5500
|
+
if (this.temp.get('mode') === Mode.SELECT_ELEMENT_LIST) {
|
|
5501
|
+
this._dragElements(this.temp.get('selectedUUIDList'), point, this.temp.get('prevPoint'));
|
|
5502
|
+
drawFeekback();
|
|
5503
|
+
this.temp.set('cursorStatus', CursorStatus.DRAGGING);
|
|
6434
5504
|
}
|
|
6435
|
-
else if (typeof
|
|
6436
|
-
if (
|
|
6437
|
-
|
|
6438
|
-
|
|
6439
|
-
|
|
5505
|
+
else if (typeof this.temp.get('selectedUUID') === 'string') {
|
|
5506
|
+
if (this.temp.get('mode') === Mode.SELECT_ELEMENT) {
|
|
5507
|
+
this._dragElements([this.temp.get('selectedUUID')], point, this.temp.get('prevPoint'));
|
|
5508
|
+
drawFeekback();
|
|
5509
|
+
this.temp.set('cursorStatus', CursorStatus.DRAGGING);
|
|
6440
5510
|
}
|
|
6441
|
-
else if (
|
|
6442
|
-
|
|
6443
|
-
|
|
5511
|
+
else if (this.temp.get('mode') === Mode.SELECT_ELEMENT_WRAPPER_CONTROLLER && this.temp.get('selectedControllerDirection')) {
|
|
5512
|
+
this._transfromElement(this.temp.get('selectedUUID'), point, this.temp.get('prevPoint'), this.temp.get('selectedControllerDirection'));
|
|
5513
|
+
this.temp.set('cursorStatus', CursorStatus.DRAGGING);
|
|
6444
5514
|
}
|
|
6445
5515
|
}
|
|
6446
|
-
else if (
|
|
6447
|
-
|
|
6448
|
-
|
|
5516
|
+
else if (this.temp.get('mode') === Mode.SELECT_AREA) {
|
|
5517
|
+
helper.changeSelectArea(point);
|
|
5518
|
+
drawFeekback();
|
|
6449
5519
|
}
|
|
6450
|
-
|
|
5520
|
+
this.temp.set('prevPoint', point);
|
|
6451
5521
|
};
|
|
6452
|
-
|
|
6453
|
-
|
|
6454
|
-
if (!prevPoint) {
|
|
6455
|
-
return;
|
|
6456
|
-
}
|
|
6457
|
-
uuids.forEach(function (uuid) {
|
|
6458
|
-
var _a, _b;
|
|
6459
|
-
var idx = core[_helper].getElementIndexByUUID(uuid);
|
|
6460
|
-
if (idx === null)
|
|
5522
|
+
Engine.prototype._dragElements = function (uuids, point, prevPoint) {
|
|
5523
|
+
if (!prevPoint) {
|
|
6461
5524
|
return;
|
|
6462
|
-
var elem = core[_data].elements[idx];
|
|
6463
|
-
if (((_a = elem === null || elem === void 0 ? void 0 : elem.operation) === null || _a === void 0 ? void 0 : _a.lock) !== true && ((_b = elem === null || elem === void 0 ? void 0 : elem.operation) === null || _b === void 0 ? void 0 : _b.invisible) !== true) {
|
|
6464
|
-
core[_element].dragElement(core[_data], uuid, point, prevPoint, core[_board].getContext().getTransform().scale);
|
|
6465
5525
|
}
|
|
6466
|
-
|
|
6467
|
-
|
|
6468
|
-
|
|
6469
|
-
|
|
6470
|
-
|
|
6471
|
-
|
|
5526
|
+
var _a = this._opts, board = _a.board, element = _a.element, getDataFeekback = _a.getDataFeekback, drawFeekback = _a.drawFeekback;
|
|
5527
|
+
var data = getDataFeekback();
|
|
5528
|
+
var helper = this.helper;
|
|
5529
|
+
uuids.forEach(function (uuid) {
|
|
5530
|
+
var _a, _b;
|
|
5531
|
+
var idx = helper.getElementIndexByUUID(uuid);
|
|
5532
|
+
if (idx === null)
|
|
5533
|
+
return;
|
|
5534
|
+
var elem = data.elements[idx];
|
|
5535
|
+
if (((_a = elem === null || elem === void 0 ? void 0 : elem.operation) === null || _a === void 0 ? void 0 : _a.lock) !== true && ((_b = elem === null || elem === void 0 ? void 0 : elem.operation) === null || _b === void 0 ? void 0 : _b.invisible) !== true) {
|
|
5536
|
+
element.dragElement(data, uuid, point, prevPoint, board.getContext().getTransform().scale);
|
|
5537
|
+
}
|
|
5538
|
+
});
|
|
5539
|
+
drawFeekback();
|
|
5540
|
+
};
|
|
5541
|
+
Engine.prototype._transfromElement = function (uuid, point, prevPoint, direction) {
|
|
5542
|
+
if (!prevPoint) {
|
|
5543
|
+
return null;
|
|
5544
|
+
}
|
|
5545
|
+
var _a = this._opts, board = _a.board, element = _a.element, getDataFeekback = _a.getDataFeekback, drawFeekback = _a.drawFeekback;
|
|
5546
|
+
var data = getDataFeekback();
|
|
5547
|
+
var result = element.transformElement(data, uuid, point, prevPoint, board.getContext().getTransform().scale, direction);
|
|
5548
|
+
drawFeekback();
|
|
5549
|
+
return result;
|
|
5550
|
+
};
|
|
5551
|
+
Engine.prototype._handleMoveEnd = function (point) {
|
|
5552
|
+
var _a = this._opts, element = _a.element, getDataFeekback = _a.getDataFeekback, coreEvent = _a.coreEvent, drawFeekback = _a.drawFeekback, emitChangeData = _a.emitChangeData;
|
|
5553
|
+
var data = getDataFeekback();
|
|
5554
|
+
var helper = this.helper;
|
|
5555
|
+
var uuid = this.temp.get('selectedUUID');
|
|
6472
5556
|
if (typeof uuid === 'string') {
|
|
6473
|
-
var index =
|
|
6474
|
-
var elem =
|
|
5557
|
+
var index = element.getElementIndex(data, uuid);
|
|
5558
|
+
var elem = data.elements[index];
|
|
6475
5559
|
if (elem) {
|
|
6476
|
-
if (
|
|
6477
|
-
|
|
5560
|
+
if (coreEvent.has('screenMoveElementEnd')) {
|
|
5561
|
+
coreEvent.trigger('screenMoveElementEnd', {
|
|
6478
5562
|
index: index,
|
|
6479
5563
|
uuid: uuid,
|
|
6480
5564
|
x: point.x,
|
|
6481
5565
|
y: point.y
|
|
6482
5566
|
});
|
|
6483
5567
|
}
|
|
6484
|
-
if (
|
|
6485
|
-
|
|
5568
|
+
if (coreEvent.has('screenChangeElement')) {
|
|
5569
|
+
coreEvent.trigger('screenChangeElement', {
|
|
6486
5570
|
index: index,
|
|
6487
5571
|
uuid: uuid,
|
|
6488
5572
|
width: elem.w,
|
|
@@ -6490,91 +5574,237 @@ var iDrawCore = (function () {
|
|
|
6490
5574
|
angle: elem.angle || 0
|
|
6491
5575
|
});
|
|
6492
5576
|
}
|
|
6493
|
-
|
|
5577
|
+
emitChangeData();
|
|
6494
5578
|
}
|
|
6495
5579
|
}
|
|
6496
|
-
else if (
|
|
6497
|
-
var uuids =
|
|
5580
|
+
else if (this.temp.get('mode') === Mode.SELECT_AREA) {
|
|
5581
|
+
var uuids = helper.calcSelectedElements(data);
|
|
6498
5582
|
if (uuids.length > 0) {
|
|
6499
|
-
|
|
6500
|
-
|
|
5583
|
+
this.temp.set('selectedUUIDList', uuids);
|
|
5584
|
+
this.temp.set('selectedUUID', null);
|
|
6501
5585
|
}
|
|
6502
5586
|
else {
|
|
6503
|
-
|
|
5587
|
+
this.temp.set('mode', Mode.NULL);
|
|
6504
5588
|
}
|
|
6505
|
-
|
|
6506
|
-
|
|
5589
|
+
helper.clearSelectedArea();
|
|
5590
|
+
drawFeekback();
|
|
6507
5591
|
}
|
|
6508
|
-
if (
|
|
6509
|
-
|
|
5592
|
+
if (this.temp.get('mode') !== Mode.SELECT_ELEMENT) {
|
|
5593
|
+
this.temp.set('selectedUUID', null);
|
|
6510
5594
|
}
|
|
6511
|
-
|
|
6512
|
-
|
|
5595
|
+
this.temp.set('cursorStatus', CursorStatus.NULL);
|
|
5596
|
+
this.temp.set('mode', Mode.NULL);
|
|
6513
5597
|
};
|
|
6514
|
-
|
|
6515
|
-
function handleHover(core) {
|
|
6516
|
-
return function (point) {
|
|
5598
|
+
Engine.prototype._handleHover = function (point) {
|
|
6517
5599
|
var _a, _b;
|
|
6518
5600
|
var isMouseOverElement = false;
|
|
6519
|
-
|
|
6520
|
-
|
|
6521
|
-
|
|
5601
|
+
var _c = this._opts, board = _c.board, getDataFeekback = _c.getDataFeekback, coreEvent = _c.coreEvent;
|
|
5602
|
+
var data = getDataFeekback();
|
|
5603
|
+
var helper = this.helper;
|
|
5604
|
+
var mapper = this._mapper;
|
|
5605
|
+
if (this.temp.get('mode') === Mode.SELECT_AREA) {
|
|
5606
|
+
board.resetCursor();
|
|
6522
5607
|
}
|
|
6523
|
-
else if (
|
|
6524
|
-
var
|
|
6525
|
-
|
|
6526
|
-
core[_board].setCursor(cursor);
|
|
5608
|
+
else if (this.temp.get('cursorStatus') === CursorStatus.NULL) {
|
|
5609
|
+
var _d = mapper.judgePointCursor(point, data), cursor = _d.cursor, elementUUID = _d.elementUUID;
|
|
5610
|
+
board.setCursor(cursor);
|
|
6527
5611
|
if (elementUUID) {
|
|
6528
|
-
var index =
|
|
5612
|
+
var index = helper.getElementIndexByUUID(elementUUID);
|
|
6529
5613
|
if (index !== null && index >= 0) {
|
|
6530
|
-
var elem =
|
|
5614
|
+
var elem = data.elements[index];
|
|
6531
5615
|
if (((_a = elem === null || elem === void 0 ? void 0 : elem.operation) === null || _a === void 0 ? void 0 : _a.lock) === true || ((_b = elem === null || elem === void 0 ? void 0 : elem.operation) === null || _b === void 0 ? void 0 : _b.invisible) === true) {
|
|
6532
|
-
|
|
5616
|
+
board.resetCursor();
|
|
6533
5617
|
return;
|
|
6534
5618
|
}
|
|
6535
|
-
if (
|
|
6536
|
-
var preIndex =
|
|
6537
|
-
if (preIndex !== null &&
|
|
6538
|
-
|
|
6539
|
-
uuid:
|
|
5619
|
+
if (this.temp.get('hoverUUID') !== elem.uuid) {
|
|
5620
|
+
var preIndex = helper.getElementIndexByUUID(this.temp.get('hoverUUID') || '');
|
|
5621
|
+
if (preIndex !== null && data.elements[preIndex]) {
|
|
5622
|
+
coreEvent.trigger('mouseLeaveElement', {
|
|
5623
|
+
uuid: this.temp.get('hoverUUID'),
|
|
6540
5624
|
index: preIndex,
|
|
6541
|
-
element:
|
|
5625
|
+
element: data.elements[preIndex]
|
|
6542
5626
|
});
|
|
6543
5627
|
}
|
|
6544
5628
|
}
|
|
6545
5629
|
if (elem) {
|
|
6546
|
-
|
|
6547
|
-
|
|
5630
|
+
coreEvent.trigger('mouseOverElement', { uuid: elem.uuid, index: index, element: elem, });
|
|
5631
|
+
this.temp.set('hoverUUID', elem.uuid);
|
|
6548
5632
|
isMouseOverElement = true;
|
|
6549
5633
|
}
|
|
6550
5634
|
}
|
|
6551
5635
|
}
|
|
6552
5636
|
}
|
|
6553
|
-
if (isMouseOverElement !== true &&
|
|
6554
|
-
var uuid =
|
|
6555
|
-
var index =
|
|
5637
|
+
if (isMouseOverElement !== true && this.temp.get('hoverUUID') !== null) {
|
|
5638
|
+
var uuid = this.temp.get('hoverUUID');
|
|
5639
|
+
var index = helper.getElementIndexByUUID(uuid || '');
|
|
6556
5640
|
if (index !== null)
|
|
6557
|
-
|
|
6558
|
-
|
|
5641
|
+
coreEvent.trigger('mouseLeaveElement', { uuid: uuid, index: index, element: data.elements[index] });
|
|
5642
|
+
this.temp.set('hoverUUID', null);
|
|
6559
5643
|
}
|
|
6560
|
-
if (
|
|
6561
|
-
|
|
5644
|
+
if (coreEvent.has('mouseOverScreen'))
|
|
5645
|
+
coreEvent.trigger('mouseOverScreen', point);
|
|
6562
5646
|
};
|
|
6563
|
-
|
|
6564
|
-
|
|
6565
|
-
|
|
6566
|
-
|
|
6567
|
-
core[_coreEvent].trigger('mouseLeaveScreen', undefined);
|
|
5647
|
+
Engine.prototype._handleLeave = function () {
|
|
5648
|
+
var coreEvent = this._opts.coreEvent;
|
|
5649
|
+
if (coreEvent.has('mouseLeaveScreen')) {
|
|
5650
|
+
coreEvent.trigger('mouseLeaveScreen', undefined);
|
|
6568
5651
|
}
|
|
6569
5652
|
};
|
|
5653
|
+
return Engine;
|
|
5654
|
+
}());
|
|
5655
|
+
|
|
5656
|
+
function clearContext(ctx) {
|
|
5657
|
+
ctx.setFillStyle('#000000');
|
|
5658
|
+
ctx.setStrokeStyle('#000000');
|
|
5659
|
+
ctx.setLineDash([]);
|
|
5660
|
+
ctx.setGlobalAlpha(1);
|
|
5661
|
+
ctx.setShadowColor('#00000000');
|
|
5662
|
+
ctx.setShadowOffsetX(0);
|
|
5663
|
+
ctx.setShadowOffsetY(0);
|
|
5664
|
+
ctx.setShadowBlur(0);
|
|
5665
|
+
}
|
|
5666
|
+
|
|
5667
|
+
function drawElementWrapper(ctx, config) {
|
|
5668
|
+
if (!(config === null || config === void 0 ? void 0 : config.selectedElementWrapper)) {
|
|
5669
|
+
return;
|
|
5670
|
+
}
|
|
5671
|
+
var wrapper = config.selectedElementWrapper;
|
|
5672
|
+
clearContext(ctx);
|
|
5673
|
+
rotateContext(ctx, wrapper.translate, wrapper.radian || 0, function () {
|
|
5674
|
+
ctx.beginPath();
|
|
5675
|
+
ctx.setLineDash(wrapper.lineDash);
|
|
5676
|
+
ctx.setLineWidth(wrapper.lineWidth);
|
|
5677
|
+
ctx.setStrokeStyle(wrapper.color);
|
|
5678
|
+
ctx.moveTo(wrapper.controllers.topLeft.x, wrapper.controllers.topLeft.y);
|
|
5679
|
+
ctx.lineTo(wrapper.controllers.topRight.x, wrapper.controllers.topRight.y);
|
|
5680
|
+
ctx.lineTo(wrapper.controllers.bottomRight.x, wrapper.controllers.bottomRight.y);
|
|
5681
|
+
ctx.lineTo(wrapper.controllers.bottomLeft.x, wrapper.controllers.bottomLeft.y);
|
|
5682
|
+
ctx.lineTo(wrapper.controllers.topLeft.x, wrapper.controllers.topLeft.y - wrapper.lineWidth / 2);
|
|
5683
|
+
ctx.stroke();
|
|
5684
|
+
ctx.closePath();
|
|
5685
|
+
if (wrapper.lock !== true) {
|
|
5686
|
+
if (wrapper.controllers.rotate.invisible !== true) {
|
|
5687
|
+
ctx.beginPath();
|
|
5688
|
+
ctx.moveTo(wrapper.controllers.top.x, wrapper.controllers.top.y);
|
|
5689
|
+
ctx.lineTo(wrapper.controllers.rotate.x, wrapper.controllers.rotate.y + wrapper.controllerSize);
|
|
5690
|
+
ctx.stroke();
|
|
5691
|
+
ctx.closePath();
|
|
5692
|
+
ctx.beginPath();
|
|
5693
|
+
ctx.setLineDash([]);
|
|
5694
|
+
ctx.setLineWidth(wrapper.controllerSize / 2);
|
|
5695
|
+
ctx.arc(wrapper.controllers.rotate.x, wrapper.controllers.rotate.y, wrapper.controllerSize * 0.8, Math.PI / 6, Math.PI * 2);
|
|
5696
|
+
ctx.stroke();
|
|
5697
|
+
ctx.closePath();
|
|
5698
|
+
}
|
|
5699
|
+
ctx.setFillStyle(wrapper.color);
|
|
5700
|
+
[
|
|
5701
|
+
wrapper.controllers.topLeft,
|
|
5702
|
+
wrapper.controllers.top,
|
|
5703
|
+
wrapper.controllers.topRight,
|
|
5704
|
+
wrapper.controllers.right,
|
|
5705
|
+
wrapper.controllers.bottomRight,
|
|
5706
|
+
wrapper.controllers.bottom,
|
|
5707
|
+
wrapper.controllers.bottomLeft,
|
|
5708
|
+
wrapper.controllers.left,
|
|
5709
|
+
].forEach(function (controller) {
|
|
5710
|
+
if (controller.invisible !== true) {
|
|
5711
|
+
ctx.beginPath();
|
|
5712
|
+
ctx.arc(controller.x, controller.y, wrapper.controllerSize, 0, Math.PI * 2);
|
|
5713
|
+
ctx.fill();
|
|
5714
|
+
ctx.closePath();
|
|
5715
|
+
}
|
|
5716
|
+
});
|
|
5717
|
+
}
|
|
5718
|
+
else {
|
|
5719
|
+
clearContext(ctx);
|
|
5720
|
+
ctx.setStrokeStyle(wrapper.color);
|
|
5721
|
+
[
|
|
5722
|
+
wrapper.controllers.topLeft, wrapper.controllers.top, wrapper.controllers.topRight, wrapper.controllers.right,
|
|
5723
|
+
wrapper.controllers.bottomRight, wrapper.controllers.bottom, wrapper.controllers.bottomLeft, wrapper.controllers.left,
|
|
5724
|
+
].forEach(function (controller) {
|
|
5725
|
+
ctx.beginPath();
|
|
5726
|
+
ctx.moveTo(controller.x - wrapper.controllerSize / 2, controller.y - wrapper.controllerSize / 2);
|
|
5727
|
+
ctx.lineTo(controller.x + wrapper.controllerSize / 2, controller.y + wrapper.controllerSize / 2);
|
|
5728
|
+
ctx.stroke();
|
|
5729
|
+
ctx.closePath();
|
|
5730
|
+
ctx.beginPath();
|
|
5731
|
+
ctx.moveTo(controller.x + wrapper.controllerSize / 2, controller.y - wrapper.controllerSize / 2);
|
|
5732
|
+
ctx.lineTo(controller.x - wrapper.controllerSize / 2, controller.y + wrapper.controllerSize / 2);
|
|
5733
|
+
ctx.stroke();
|
|
5734
|
+
ctx.closePath();
|
|
5735
|
+
});
|
|
5736
|
+
}
|
|
5737
|
+
});
|
|
6570
5738
|
}
|
|
6571
|
-
function
|
|
6572
|
-
if (!
|
|
6573
|
-
return
|
|
5739
|
+
function drawAreaWrapper(ctx, config) {
|
|
5740
|
+
if (!(config === null || config === void 0 ? void 0 : config.selectedAreaWrapper)) {
|
|
5741
|
+
return;
|
|
6574
5742
|
}
|
|
6575
|
-
var
|
|
6576
|
-
|
|
6577
|
-
|
|
5743
|
+
var wrapper = config.selectedAreaWrapper;
|
|
5744
|
+
if (wrapper && wrapper.w > 0 && wrapper.h > 0) {
|
|
5745
|
+
clearContext(ctx);
|
|
5746
|
+
ctx.setGlobalAlpha(0.3);
|
|
5747
|
+
ctx.setFillStyle(wrapper.color);
|
|
5748
|
+
ctx.fillRect(wrapper.x, wrapper.y, wrapper.w, wrapper.h);
|
|
5749
|
+
clearContext(ctx);
|
|
5750
|
+
ctx.beginPath();
|
|
5751
|
+
ctx.setLineDash(wrapper.lineDash);
|
|
5752
|
+
ctx.setLineWidth(wrapper.lineWidth);
|
|
5753
|
+
ctx.setStrokeStyle(wrapper.color);
|
|
5754
|
+
ctx.moveTo(wrapper.x, wrapper.y);
|
|
5755
|
+
ctx.lineTo(wrapper.x + wrapper.w, wrapper.y);
|
|
5756
|
+
ctx.lineTo(wrapper.x + wrapper.w, wrapper.y + wrapper.h);
|
|
5757
|
+
ctx.lineTo(wrapper.x, wrapper.y + wrapper.h);
|
|
5758
|
+
ctx.lineTo(wrapper.x, wrapper.y);
|
|
5759
|
+
ctx.stroke();
|
|
5760
|
+
ctx.closePath();
|
|
5761
|
+
}
|
|
5762
|
+
}
|
|
5763
|
+
function drawElementListWrappers(ctx, config) {
|
|
5764
|
+
if (!Array.isArray(config === null || config === void 0 ? void 0 : config.selectedElementListWrappers)) {
|
|
5765
|
+
return;
|
|
5766
|
+
}
|
|
5767
|
+
var wrapperList = config.selectedElementListWrappers;
|
|
5768
|
+
wrapperList === null || wrapperList === void 0 ? void 0 : wrapperList.forEach(function (wrapper) {
|
|
5769
|
+
clearContext(ctx);
|
|
5770
|
+
rotateContext(ctx, wrapper.translate, wrapper.radian || 0, function () {
|
|
5771
|
+
clearContext(ctx);
|
|
5772
|
+
ctx.setGlobalAlpha(0.05);
|
|
5773
|
+
ctx.setFillStyle(wrapper.color);
|
|
5774
|
+
ctx.fillRect(wrapper.controllers.topLeft.x, wrapper.controllers.topLeft.y, wrapper.controllers.bottomRight.x - wrapper.controllers.topLeft.x, wrapper.controllers.bottomRight.y - wrapper.controllers.topLeft.y);
|
|
5775
|
+
clearContext(ctx);
|
|
5776
|
+
ctx.beginPath();
|
|
5777
|
+
ctx.setLineDash(wrapper.lineDash);
|
|
5778
|
+
ctx.setLineWidth(wrapper.lineWidth);
|
|
5779
|
+
ctx.setStrokeStyle(wrapper.color);
|
|
5780
|
+
ctx.moveTo(wrapper.controllers.topLeft.x, wrapper.controllers.topLeft.y);
|
|
5781
|
+
ctx.lineTo(wrapper.controllers.topRight.x, wrapper.controllers.topRight.y);
|
|
5782
|
+
ctx.lineTo(wrapper.controllers.bottomRight.x, wrapper.controllers.bottomRight.y);
|
|
5783
|
+
ctx.lineTo(wrapper.controllers.bottomLeft.x, wrapper.controllers.bottomLeft.y);
|
|
5784
|
+
ctx.lineTo(wrapper.controllers.topLeft.x, wrapper.controllers.topLeft.y - wrapper.lineWidth / 2);
|
|
5785
|
+
ctx.stroke();
|
|
5786
|
+
ctx.closePath();
|
|
5787
|
+
if (wrapper.lock === true) {
|
|
5788
|
+
clearContext(ctx);
|
|
5789
|
+
ctx.setStrokeStyle(wrapper.color);
|
|
5790
|
+
[
|
|
5791
|
+
wrapper.controllers.topLeft, wrapper.controllers.top, wrapper.controllers.topRight, wrapper.controllers.right,
|
|
5792
|
+
wrapper.controllers.bottomRight, wrapper.controllers.bottom, wrapper.controllers.bottomLeft, wrapper.controllers.left,
|
|
5793
|
+
].forEach(function (controller) {
|
|
5794
|
+
ctx.beginPath();
|
|
5795
|
+
ctx.moveTo(controller.x - wrapper.controllerSize / 2, controller.y - wrapper.controllerSize / 2);
|
|
5796
|
+
ctx.lineTo(controller.x + wrapper.controllerSize / 2, controller.y + wrapper.controllerSize / 2);
|
|
5797
|
+
ctx.stroke();
|
|
5798
|
+
ctx.closePath();
|
|
5799
|
+
ctx.beginPath();
|
|
5800
|
+
ctx.moveTo(controller.x + wrapper.controllerSize / 2, controller.y - wrapper.controllerSize / 2);
|
|
5801
|
+
ctx.lineTo(controller.x - wrapper.controllerSize / 2, controller.y + wrapper.controllerSize / 2);
|
|
5802
|
+
ctx.stroke();
|
|
5803
|
+
ctx.closePath();
|
|
5804
|
+
});
|
|
5805
|
+
}
|
|
5806
|
+
});
|
|
5807
|
+
});
|
|
6578
5808
|
}
|
|
6579
5809
|
|
|
6580
5810
|
var deepClone = index$1.data.deepClone;
|
|
@@ -6583,10 +5813,9 @@ var iDrawCore = (function () {
|
|
|
6583
5813
|
var _this = this;
|
|
6584
5814
|
var _c, _d, _e;
|
|
6585
5815
|
this[_a] = new CoreEvent();
|
|
6586
|
-
this[_b] = new TempData();
|
|
5816
|
+
this[_b] = new TempData$1();
|
|
6587
5817
|
this[_data] = { elements: [] };
|
|
6588
5818
|
this[_opts] = opts;
|
|
6589
|
-
this[_tempData].set('onlyRender', opts.onlyRender === true);
|
|
6590
5819
|
this[_config] = mergeConfig(config || {});
|
|
6591
5820
|
this[_board] = new Board(mount, __assign$4(__assign$4({}, this[_opts]), { canScroll: (_c = config === null || config === void 0 ? void 0 : config.scrollWrapper) === null || _c === void 0 ? void 0 : _c.use, scrollConfig: {
|
|
6592
5821
|
color: ((_d = config === null || config === void 0 ? void 0 : config.scrollWrapper) === null || _d === void 0 ? void 0 : _d.color) || '#a0a0a0',
|
|
@@ -6595,7 +5824,7 @@ var iDrawCore = (function () {
|
|
|
6595
5824
|
this[_renderer] = new Renderer();
|
|
6596
5825
|
var drawFrame = function () {
|
|
6597
5826
|
var helperCtx = _this[_board].getHelperContext();
|
|
6598
|
-
var helperConfig = _this[
|
|
5827
|
+
var helperConfig = _this[_engine].getHelperConfig();
|
|
6599
5828
|
_this[_board].clear();
|
|
6600
5829
|
var _c = _this[_opts], contextWidth = _c.contextWidth, contextHeight = _c.contextHeight, devicePixelRatio = _c.devicePixelRatio;
|
|
6601
5830
|
helperCtx.clearRect(0, 0, contextWidth * devicePixelRatio, contextHeight * devicePixelRatio);
|
|
@@ -6611,27 +5840,31 @@ var iDrawCore = (function () {
|
|
|
6611
5840
|
drawFrame();
|
|
6612
5841
|
});
|
|
6613
5842
|
this[_element] = new Element(this[_board].getContext());
|
|
6614
|
-
this[
|
|
6615
|
-
|
|
5843
|
+
this[_engine] = new Engine({
|
|
5844
|
+
coreEvent: this[_coreEvent],
|
|
6616
5845
|
board: this[_board],
|
|
6617
|
-
|
|
6618
|
-
|
|
5846
|
+
element: this[_element],
|
|
5847
|
+
config: this[_config],
|
|
5848
|
+
drawFeekback: this[_draw].bind(this),
|
|
5849
|
+
getDataFeekback: function () { return _this[_data]; },
|
|
5850
|
+
selectElementByIndex: this.selectElementByIndex.bind(this),
|
|
5851
|
+
emitChangeScreen: this[_emitChangeScreen].bind(this),
|
|
5852
|
+
emitChangeData: this[_emitChangeData].bind(this),
|
|
5853
|
+
});
|
|
5854
|
+
this[_engine].init();
|
|
5855
|
+
this[_renderer].on('drawFrame', function () {
|
|
5856
|
+
_this[_coreEvent].trigger('drawFrame', undefined);
|
|
6619
5857
|
});
|
|
6620
|
-
|
|
5858
|
+
this[_renderer].on('drawFrameComplete', function () {
|
|
5859
|
+
_this[_coreEvent].trigger('drawFrameComplete', undefined);
|
|
5860
|
+
});
|
|
5861
|
+
this[_tempData].set('hasInited', true);
|
|
6621
5862
|
}
|
|
6622
5863
|
Core.prototype[(_a = _coreEvent, _b = _tempData, _draw)] = function (opts) {
|
|
6623
|
-
|
|
6624
|
-
var transfrom = this[_board].getTransform();
|
|
6625
|
-
this[_helper].updateConfig(this[_data], {
|
|
5864
|
+
this[_engine].updateHelperConfig({
|
|
6626
5865
|
width: this[_opts].width,
|
|
6627
5866
|
height: this[_opts].height,
|
|
6628
|
-
canScroll: ((_d = (_c = this[_config]) === null || _c === void 0 ? void 0 : _c.scrollWrapper) === null || _d === void 0 ? void 0 : _d.use) === true,
|
|
6629
|
-
selectedUUID: this[_tempData].get('selectedUUID'),
|
|
6630
|
-
selectedUUIDList: this[_tempData].get('selectedUUIDList'),
|
|
6631
5867
|
devicePixelRatio: this[_opts].devicePixelRatio,
|
|
6632
|
-
scale: transfrom.scale,
|
|
6633
|
-
scrollX: transfrom.scrollX,
|
|
6634
|
-
scrollY: transfrom.scrollY,
|
|
6635
5868
|
});
|
|
6636
5869
|
this[_renderer].thaw();
|
|
6637
5870
|
this[_renderer].render(this[_board].getContext(), this[_data], {
|
|
@@ -6724,7 +5957,6 @@ var iDrawCore = (function () {
|
|
|
6724
5957
|
};
|
|
6725
5958
|
Core.prototype.clearOperation = function () {
|
|
6726
5959
|
this[_tempData].clear();
|
|
6727
|
-
this[_tempData].set('onlyRender', this[_opts].onlyRender === true);
|
|
6728
5960
|
this[_draw]();
|
|
6729
5961
|
};
|
|
6730
5962
|
Core.prototype.on = function (key, callback) {
|
|
@@ -6739,12 +5971,6 @@ var iDrawCore = (function () {
|
|
|
6739
5971
|
Core.prototype.pointContextToScreen = function (p) {
|
|
6740
5972
|
return this[_board].pointContextToScreen(p);
|
|
6741
5973
|
};
|
|
6742
|
-
Core.prototype.setOnlyRender = function () {
|
|
6743
|
-
this[_tempData].set('onlyRender', true);
|
|
6744
|
-
};
|
|
6745
|
-
Core.prototype.cancelOnlyRender = function () {
|
|
6746
|
-
this[_tempData].set('onlyRender', false);
|
|
6747
|
-
};
|
|
6748
5974
|
Core.prototype.__getBoardContext = function () {
|
|
6749
5975
|
return this[_board].getContext();
|
|
6750
5976
|
};
|
|
@@ -6764,9 +5990,6 @@ var iDrawCore = (function () {
|
|
|
6764
5990
|
this[_coreEvent].trigger('changeData', deepClone(this[_data]));
|
|
6765
5991
|
}
|
|
6766
5992
|
};
|
|
6767
|
-
Core.prototype[_todo] = function () {
|
|
6768
|
-
console.log(this[_mapper]);
|
|
6769
|
-
};
|
|
6770
5993
|
var _a, _b;
|
|
6771
5994
|
Core.is = is;
|
|
6772
5995
|
Core.check = check;
|