@anu3ev/fabric-image-editor 0.1.9 → 0.1.11
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/main.js +433 -421
- package/package.json +1 -1
package/dist/main.js
CHANGED
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
import { ActiveSelection as Z, util as z, controlsUtils as Oe, InteractiveFabricObject as Te,
|
|
1
|
+
import { ActiveSelection as Z, util as z, controlsUtils as Oe, InteractiveFabricObject as Te, loadSVGFromURL as Ee, FabricImage as de, Point as ke, Rect as xe, Circle as Be, Triangle as Ze, Group as ze, Pattern as Ue, Canvas as Pe } from "fabric";
|
|
2
2
|
import { create as Ye } from "jsondiffpatch";
|
|
3
3
|
var He = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict", I = function() {
|
|
4
4
|
for (var e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 21, t = "", a = crypto.getRandomValues(new Uint8Array(e |= 0)); e--; )
|
|
5
5
|
t += He[a[e] & 63];
|
|
6
6
|
return t;
|
|
7
7
|
};
|
|
8
|
-
function le(
|
|
8
|
+
function le(o, e, t, a, r, n, i) {
|
|
9
9
|
try {
|
|
10
|
-
var s =
|
|
10
|
+
var s = o[n](i), c = s.value;
|
|
11
11
|
} catch (u) {
|
|
12
12
|
return void t(u);
|
|
13
13
|
}
|
|
14
14
|
s.done ? e(c) : Promise.resolve(c).then(a, r);
|
|
15
15
|
}
|
|
16
|
-
function We(
|
|
16
|
+
function We(o) {
|
|
17
17
|
return function() {
|
|
18
18
|
var e = this, t = arguments;
|
|
19
19
|
return new Promise(function(a, r) {
|
|
20
|
-
var n =
|
|
21
|
-
function
|
|
22
|
-
le(n, a, r,
|
|
20
|
+
var n = o.apply(e, t);
|
|
21
|
+
function i(c) {
|
|
22
|
+
le(n, a, r, i, s, "next", c);
|
|
23
23
|
}
|
|
24
24
|
function s(c) {
|
|
25
|
-
le(n, a, r,
|
|
25
|
+
le(n, a, r, i, s, "throw", c);
|
|
26
26
|
}
|
|
27
|
-
|
|
27
|
+
i(void 0);
|
|
28
28
|
});
|
|
29
29
|
};
|
|
30
30
|
}
|
|
@@ -61,7 +61,7 @@ class B {
|
|
|
61
61
|
mouseWheelZooming: a,
|
|
62
62
|
bringToFrontOnSelection: r,
|
|
63
63
|
copyObjectsByHotkey: n,
|
|
64
|
-
pasteImageFromClipboard:
|
|
64
|
+
pasteImageFromClipboard: i,
|
|
65
65
|
undoRedoByHotKeys: s,
|
|
66
66
|
selectAllByHotkey: c,
|
|
67
67
|
deleteObjectsByHotkey: u,
|
|
@@ -71,7 +71,7 @@ class B {
|
|
|
71
71
|
capture: !0
|
|
72
72
|
}), n && document.addEventListener("keydown", this.handleCopyEventBound, {
|
|
73
73
|
capture: !0
|
|
74
|
-
}),
|
|
74
|
+
}), i && document.addEventListener("paste", this.handlePasteEventBound, {
|
|
75
75
|
capture: !0
|
|
76
76
|
}), s && (document.addEventListener("keydown", this.handleUndoRedoEventBound, {
|
|
77
77
|
capture: !0
|
|
@@ -103,10 +103,10 @@ class B {
|
|
|
103
103
|
this.canvas.setActiveObject(n[0]);
|
|
104
104
|
return;
|
|
105
105
|
}
|
|
106
|
-
var
|
|
106
|
+
var i = new Z(n, {
|
|
107
107
|
canvas: this.canvas
|
|
108
108
|
});
|
|
109
|
-
this.canvas.setActiveObject(
|
|
109
|
+
this.canvas.setActiveObject(i), this.canvas.requestRenderAll();
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
112
|
}
|
|
@@ -151,7 +151,10 @@ class B {
|
|
|
151
151
|
}), this.editor.canvasManager.setResolutionHeight(t, {
|
|
152
152
|
adaptCanvasToContainer: !0,
|
|
153
153
|
withoutSave: !0
|
|
154
|
-
}), this.editor.canvasManager.centerMontageArea()
|
|
154
|
+
}), this.editor.canvasManager.centerMontageArea(), this.editor.selectionManager.selectAll(), this.editor.transformManager.fitObject({
|
|
155
|
+
fitAsOneObject: !0,
|
|
156
|
+
withoutSave: !0
|
|
157
|
+
});
|
|
155
158
|
}
|
|
156
159
|
/**
|
|
157
160
|
* Обработчик для Ctrl+C (копирование).
|
|
@@ -183,14 +186,14 @@ class B {
|
|
|
183
186
|
items: r
|
|
184
187
|
} = a, n = r[r.length - 1];
|
|
185
188
|
if (n.type.indexOf("image") !== -1) {
|
|
186
|
-
var
|
|
187
|
-
if (!
|
|
189
|
+
var i = n.getAsFile();
|
|
190
|
+
if (!i) return;
|
|
188
191
|
var s = new FileReader();
|
|
189
192
|
s.onload = (h) => {
|
|
190
193
|
this.editor.imageManager.importImage({
|
|
191
194
|
source: h.target.result
|
|
192
195
|
});
|
|
193
|
-
}, s.readAsDataURL(
|
|
196
|
+
}, s.readAsDataURL(i);
|
|
194
197
|
return;
|
|
195
198
|
}
|
|
196
199
|
var c = a.getData("text/html");
|
|
@@ -220,9 +223,9 @@ class B {
|
|
|
220
223
|
ctrlKey: a,
|
|
221
224
|
metaKey: r,
|
|
222
225
|
code: n,
|
|
223
|
-
repeat:
|
|
226
|
+
repeat: i
|
|
224
227
|
} = e;
|
|
225
|
-
!a && !r ||
|
|
228
|
+
!a && !r || i || t.isUndoRedoKeyPressed || (n === "KeyZ" ? (e.preventDefault(), t.isUndoRedoKeyPressed = !0, yield t.editor.historyManager.undo()) : n === "KeyY" && (e.preventDefault(), t.isUndoRedoKeyPressed = !0, yield t.editor.historyManager.redo()));
|
|
226
229
|
})();
|
|
227
230
|
}
|
|
228
231
|
/**
|
|
@@ -351,8 +354,8 @@ class B {
|
|
|
351
354
|
static debounce(e, t) {
|
|
352
355
|
var a = null;
|
|
353
356
|
return function() {
|
|
354
|
-
for (var r = arguments.length, n = new Array(r),
|
|
355
|
-
n[
|
|
357
|
+
for (var r = arguments.length, n = new Array(r), i = 0; i < r; i++)
|
|
358
|
+
n[i] = arguments[i];
|
|
356
359
|
var s = this;
|
|
357
360
|
clearTimeout(a), a = setTimeout(() => {
|
|
358
361
|
e.apply(s, n);
|
|
@@ -406,9 +409,9 @@ class Re {
|
|
|
406
409
|
requestId: a,
|
|
407
410
|
success: r,
|
|
408
411
|
data: n,
|
|
409
|
-
error:
|
|
412
|
+
error: i
|
|
410
413
|
} = t, s = this._callbacks.get(a);
|
|
411
|
-
s && (r ? s.resolve(n) : s.reject(new Error(
|
|
414
|
+
s && (r ? s.resolve(n) : s.reject(new Error(i)), this._callbacks.delete(a));
|
|
412
415
|
}
|
|
413
416
|
/**
|
|
414
417
|
* Универсальный метод отправки команды в воркер
|
|
@@ -419,10 +422,10 @@ class Re {
|
|
|
419
422
|
*/
|
|
420
423
|
post(e, t) {
|
|
421
424
|
var a = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : [], r = "".concat(e, ":").concat(I(8));
|
|
422
|
-
return new Promise((n,
|
|
425
|
+
return new Promise((n, i) => {
|
|
423
426
|
this._callbacks.set(r, {
|
|
424
427
|
resolve: n,
|
|
425
|
-
reject:
|
|
428
|
+
reject: i
|
|
426
429
|
}), this.worker.postMessage({
|
|
427
430
|
action: e,
|
|
428
431
|
payload: t,
|
|
@@ -437,24 +440,24 @@ class Re {
|
|
|
437
440
|
this.worker.terminate();
|
|
438
441
|
}
|
|
439
442
|
}
|
|
440
|
-
var p = 12, Ve = 2,
|
|
441
|
-
function U(
|
|
442
|
-
var n = p,
|
|
443
|
-
|
|
443
|
+
var p = 12, Ve = 2, G = 8, X = 20, Fe = 100, Q = 20, J = 8, Ge = 100, K = 32, $ = 1, Xe = "#2B2D33", q = "#3D8BF4", ee = "#FFFFFF";
|
|
444
|
+
function U(o, e, t, a, r) {
|
|
445
|
+
var n = p, i = Ve;
|
|
446
|
+
o.save(), o.translate(e, t), o.rotate(z.degreesToRadians(r.angle)), o.fillStyle = ee, o.strokeStyle = q, o.lineWidth = $, o.beginPath(), o.roundRect(-12 / 2, -12 / 2, n, n, i), o.fill(), o.stroke(), o.restore();
|
|
444
447
|
}
|
|
445
|
-
function he(
|
|
446
|
-
var n =
|
|
447
|
-
|
|
448
|
+
function he(o, e, t, a, r) {
|
|
449
|
+
var n = G, i = X, s = Fe;
|
|
450
|
+
o.save(), o.translate(e, t), o.rotate(z.degreesToRadians(r.angle)), o.fillStyle = ee, o.strokeStyle = q, o.lineWidth = $, o.beginPath(), o.roundRect(-8 / 2, -20 / 2, n, i, s), o.fill(), o.stroke(), o.restore();
|
|
448
451
|
}
|
|
449
|
-
function ge(
|
|
450
|
-
var n =
|
|
451
|
-
|
|
452
|
+
function ge(o, e, t, a, r) {
|
|
453
|
+
var n = Q, i = J, s = Ge;
|
|
454
|
+
o.save(), o.translate(e, t), o.rotate(z.degreesToRadians(r.angle)), o.fillStyle = ee, o.strokeStyle = q, o.lineWidth = $, o.beginPath(), o.roundRect(-20 / 2, -8 / 2, n, i, s), o.fill(), o.stroke(), o.restore();
|
|
452
455
|
}
|
|
453
456
|
var Qe = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTE4Ljc1IDQuMzc1djMuNzVhLjYyNS42MjUgMCAwIDEtLjYyNS42MjVoLTMuNzVhLjYyNS42MjUgMCAwIDEgMC0xLjI1aDIuMTRsLTIuMDc3LTEuOTAzLS4wMi0uMDE5YTYuMjUgNi4yNSAwIDEgMC0uMTMgOC45NjcuNjI2LjYyNiAwIDAgMSAuODYuOTA5QTcuNDU2IDcuNDU2IDAgMCAxIDEwIDE3LjVoLS4xMDNhNy41IDcuNSAwIDEgMSA1LjM5Ni0xMi44MTJMMTcuNSA2LjcwM1Y0LjM3NWEuNjI1LjYyNSAwIDAgMSAxLjI1IDBaIi8+PC9zdmc+", Ae = new Image();
|
|
454
457
|
Ae.src = Qe;
|
|
455
|
-
function Je(
|
|
456
|
-
var n =
|
|
457
|
-
|
|
458
|
+
function Je(o, e, t, a, r) {
|
|
459
|
+
var n = K, i = n / 2;
|
|
460
|
+
o.save(), o.translate(e, t), o.rotate(z.degreesToRadians(r.angle)), o.fillStyle = Xe, o.beginPath(), o.arc(0, 0, i, 0, 2 * Math.PI), o.fill(), o.drawImage(Ae, -16 / 2, -16 / 2, i, i), o.restore();
|
|
458
461
|
}
|
|
459
462
|
var Ke = {
|
|
460
463
|
// Угловые точки
|
|
@@ -489,38 +492,38 @@ var Ke = {
|
|
|
489
492
|
// Середина вертикалей
|
|
490
493
|
ml: {
|
|
491
494
|
render: he,
|
|
492
|
-
sizeX:
|
|
493
|
-
sizeY:
|
|
495
|
+
sizeX: G,
|
|
496
|
+
sizeY: X,
|
|
494
497
|
offsetX: 0,
|
|
495
498
|
offsetY: 0
|
|
496
499
|
},
|
|
497
500
|
mr: {
|
|
498
501
|
render: he,
|
|
499
|
-
sizeX:
|
|
500
|
-
sizeY:
|
|
502
|
+
sizeX: G,
|
|
503
|
+
sizeY: X,
|
|
501
504
|
offsetX: 0,
|
|
502
505
|
offsetY: 0
|
|
503
506
|
},
|
|
504
507
|
// Середина горизонталей
|
|
505
508
|
mt: {
|
|
506
509
|
render: ge,
|
|
507
|
-
sizeX:
|
|
508
|
-
sizeY:
|
|
510
|
+
sizeX: Q,
|
|
511
|
+
sizeY: J,
|
|
509
512
|
offsetX: 0,
|
|
510
513
|
offsetY: 0
|
|
511
514
|
},
|
|
512
515
|
mb: {
|
|
513
516
|
render: ge,
|
|
514
|
-
sizeX:
|
|
515
|
-
sizeY:
|
|
517
|
+
sizeX: Q,
|
|
518
|
+
sizeY: J,
|
|
516
519
|
offsetX: 0,
|
|
517
520
|
offsetY: 0
|
|
518
521
|
},
|
|
519
522
|
// Специальный «rotate» контрол
|
|
520
523
|
mtr: {
|
|
521
524
|
render: Je,
|
|
522
|
-
sizeX:
|
|
523
|
-
sizeY:
|
|
525
|
+
sizeX: K,
|
|
526
|
+
sizeY: K,
|
|
524
527
|
offsetX: 0,
|
|
525
528
|
offsetY: -32
|
|
526
529
|
}
|
|
@@ -541,26 +544,26 @@ class $e {
|
|
|
541
544
|
}
|
|
542
545
|
}
|
|
543
546
|
var qe = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNNi44NzUgMi41YS42MjUuNjI1IDAgMCAwLS42MjUuNjI0VjYuMjVIMy4xMjVhLjYyNS42MjUgMCAwIDAtLjYyNS42MjV2MTBjMCAuMzQ1LjI4LjYyNS42MjUuNjI1aDEwYy4zNDUgMCAuNjI1LS4yOC42MjUtLjYyNXYtMy4xMjZoMy4xMjVjLjM0NSAwIC42MjUtLjI4LjYyNS0uNjI1di0xMGEuNjI1LjYyNSAwIDAgMC0uNjI1LS42MjVoLTEwWm02Ljg3NSAxMGgyLjVWMy43NUg3LjV2Mi41aDUuNjI1Yy4zNDUgMCAuNjI1LjI4LjYyNS42MjV2NS42MjRabS0xMCAzLjc1VjcuNWg4Ljc1djguNzVIMy43NVoiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjwvc3ZnPg==", et = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMi41IDcuNWMwLS42OS41Ni0xLjI1IDEuMjUtMS4yNWgxMi41Yy42OSAwIDEuMjUuNTYgMS4yNSAxLjI1djguNzVjMCAuNjktLjU2IDEuMjUtMS4yNSAxLjI1SDMuNzVjLS42OSAwLTEuMjUtLjU2LTEuMjUtMS4yNVY3LjVabTEzLjc1IDBIMy43NXY4Ljc1aDEyLjVWNy41WiIgY2xpcC1ydWxlPSJldmVub2RkIi8+PHBhdGggZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMTAgMS44NzVhMi4xODggMi4xODggMCAwIDAtMi4xODggMi4xODh2Mi44MTJhLjYyNS42MjUgMCAxIDEtMS4yNSAwVjQuMDYyYTMuNDM3IDMuNDM3IDAgMSAxIDYuODc1IDB2Mi44MTNhLjYyNS42MjUgMCAxIDEtMS4yNSAwVjQuMDYyQTIuMTg4IDIuMTg4IDAgMCAwIDEwIDEuODc2WiIgY2xpcC1ydWxlPSJldmVub2RkIi8+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTEwIDEyLjgxM2EuOTM3LjkzNyAwIDEgMCAwLTEuODc1LjkzNy45MzcgMCAwIDAgMCAxLjg3NFoiLz48L3N2Zz4=", tt = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTE2LjI1IDYuMjVINy41VjQuMzc1YTIuNSAyLjUgMCAwIDEgMi41LTIuNWMxLjIgMCAyLjI4MS44NiAyLjUxMiAyYS42MjUuNjI1IDAgMCAwIDEuMjI2LS4yNWMtLjM1NC0xLjczOC0xLjkyNS0zLTMuNzM4LTNhMy43NTQgMy43NTQgMCAwIDAtMy43NSAzLjc1VjYuMjVoLTIuNUExLjI1IDEuMjUgMCAwIDAgMi41IDcuNXY4Ljc1YTEuMjUgMS4yNSAwIDAgMCAxLjI1IDEuMjVoMTIuNWExLjI1IDEuMjUgMCAwIDAgMS4yNS0xLjI1VjcuNWExLjI1IDEuMjUgMCAwIDAtMS4yNS0xLjI1Wm0wIDEwSDMuNzVWNy41aDEyLjV2OC43NVptLTUuMzEzLTQuMzc1YS45MzcuOTM3IDAgMSAxLTEuODc0IDAgLjkzNy45MzcgMCAwIDEgMS44NzQgMFoiLz48L3N2Zz4K", at = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTIuNSA4LjEyNSAxMCAxMi41bDcuNS00LjM3NUwxMCAzLjc1IDIuNSA4LjEyNVoiLz48cGF0aCBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik05LjY4NSAzLjIxYS42MjUuNjI1IDAgMCAxIC42MyAwbDcuNSA0LjM3NWEuNjI1LjYyNSAwIDAgMSAwIDEuMDhsLTcuNSA0LjM3NWEuNjI1LjYyNSAwIDAgMS0uNjMgMGwtNy41LTQuMzc1YS42MjUuNjI1IDAgMCAxIDAtMS4wOGw3LjUtNC4zNzVaTTMuNzQgOC4xMjUgMTAgMTEuNzc2bDYuMjYtMy42NTFMMTAgNC40NzQgMy43NCA4LjEyNVoiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjxwYXRoIGZpbGw9IiNmZmYiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTUuNCA5LjQ2YS42MjUuNjI1IDAgMCAxIC42MyAwTDEwIDExLjc3NmwzLjk3LTIuMzE2YS42MjUuNjI1IDAgMCAxIC42MyAwbDMuMjE1IDEuODc1YS42MjUuNjI1IDAgMCAxIDAgMS4wOGwtNy41IDQuMzc1YS42MjUuNjI1IDAgMCAxLS42MyAwbC03LjUtNC4zNzVhLjYyNS42MjUgMCAwIDEgMC0xLjA4TDUuNCA5LjQ2Wm0tMS42NiAyLjQxNUwxMCAxNS41MjZsNi4yNi0zLjY1MS0xLjk3NC0xLjE1MS0zLjk3MSAyLjMxNmEuNjI1LjYyNSAwIDAgMS0uNjMgMGwtMy45Ny0yLjMxNi0xLjk3NSAxLjE1MVoiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjwvc3ZnPg==", rt = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNOS42ODUgMy4yMWEuNjI1LjYyNSAwIDAgMSAuNjMgMGw3LjUgNC4zNzVhLjYyNS42MjUgMCAwIDEgMCAxLjA4bC03LjUgNC4zNzVhLjYyNS42MjUgMCAwIDEtLjYzIDBsLTcuNS00LjM3NWEuNjI1LjYyNSAwIDAgMSAwLTEuMDhsNy41LTQuMzc1Wk0zLjc0IDguMTI1IDEwIDExLjc3Nmw2LjI2LTMuNjUxTDEwIDQuNDc0IDMuNzQgOC4xMjVaIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48cGF0aCBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik01LjcxNCAxMCAxMCAxMi41bDQuMjg2LTIuNSAzLjIxNCAxLjg3NUwxMCAxNi4yNWwtNy41LTQuMzc1TDUuNzE0IDEwWiIgY2xpcC1ydWxlPSJldmVub2RkIi8+PHBhdGggZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNNS40IDkuNDZhLjYyNS42MjUgMCAwIDEgLjYzIDBMMTAgMTEuNzc2bDMuOTctMi4zMTZhLjYyNS42MjUgMCAwIDEgLjYzIDBsMy4yMTUgMS44NzVhLjYyNS42MjUgMCAwIDEgMCAxLjA4bC03LjUgNC4zNzVhLjYyNS42MjUgMCAwIDEtLjYzIDBsLTcuNS00LjM3NWEuNjI1LjYyNSAwIDAgMSAwLTEuMDhMNS40IDkuNDZabS0xLjY2IDIuNDE1TDEwIDE1LjUyNmw2LjI2LTMuNjUxLTEuOTc0LTEuMTUxLTMuOTcxIDIuMzE2YS42MjUuNjI1IDAgMCAxLS42MyAwbC0zLjk3LTIuMzE2LTEuOTc1IDEuMTUxWiIgY2xpcC1ydWxlPSJldmVub2RkIi8+PC9zdmc+", nt = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0ibTIuNSA2LjI1IDcuNSA0LjM3NSA3LjUtNC4zNzVMMTAgMS44NzUgMi41IDYuMjVaIi8+PHBhdGggZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNOS42ODUgMS4zMzVhLjYyNS42MjUgMCAwIDEgLjYzIDBsNy41IDQuMzc1YS42MjUuNjI1IDAgMCAxIDAgMS4wOGwtNy41IDQuMzc1YS42MjUuNjI1IDAgMCAxLS42MyAwbC03LjUtNC4zNzVhLjYyNS42MjUgMCAwIDEgMC0xLjA4bDcuNS00LjM3NVpNMy43NCA2LjI1IDEwIDkuOTAxbDYuMjYtMy42NTFMMTAgMi41OTkgMy43NCA2LjI1WiIgY2xpcC1ydWxlPSJldmVub2RkIi8+PHBhdGggZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNNS40IDExLjMzNWEuNjI1LjYyNSAwIDAgMSAuNjMgMEwxMCAxMy42NTFsMy45Ny0yLjMxNmEuNjI1LjYyNSAwIDAgMSAuNjMgMGwzLjIxNSAxLjg3NWEuNjI1LjYyNSAwIDAgMSAwIDEuMDhsLTcuNSA0LjM3NWEuNjI1LjYyNSAwIDAgMS0uNjMgMGwtNy41LTQuMzc1YS42MjUuNjI1IDAgMCAxIDAtMS4wOEw1LjQgMTEuMzM1Wk0zLjc0IDEzLjc1IDEwIDE3LjQwMWw2LjI2LTMuNjUxLTEuOTc0LTEuMTUxLTMuOTcxIDIuMzE2YS42MjUuNjI1IDAgMCAxLS42MyAwbC0zLjk3LTIuMzE2TDMuNzQgMTMuNzVaIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48cGF0aCBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik01LjQgNy41ODVhLjYyNS42MjUgMCAwIDEgLjYzIDBMMTAgOS45MDFsMy45Ny0yLjMxNmEuNjI1LjYyNSAwIDAgMSAuNjMgMGwzLjIxNSAxLjg3NWEuNjI1LjYyNSAwIDAgMSAwIDEuMDhsLTcuNSA0LjM3NWEuNjI1LjYyNSAwIDAgMS0uNjMgMGwtNy41LTQuMzc1YS42MjUuNjI1IDAgMCAxIDAtMS4wOEw1LjQgNy41ODVaTTMuNzQgMTAgMTAgMTMuNjUxIDE2LjI2IDEwbC0xLjk3NC0xLjE1MS0zLjk3MSAyLjMxNmEuNjI1LjYyNSAwIDAgMS0uNjMgMGwtMy45Ny0yLjMxNkwzLjc0IDEwWiIgY2xpcC1ydWxlPSJldmVub2RkIi8+PC9zdmc+", it = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI2ZmZiIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMS45NiAxMy40MzVhLjYyNS42MjUgMCAwIDEgLjg1NS0uMjI1TDEwIDE3LjQwMWw3LjE4NS00LjE5YS42MjUuNjI1IDAgMCAxIC42MyAxLjA3OWwtNy41IDQuMzc1YS42MjUuNjI1IDAgMCAxLS42MyAwbC03LjUtNC4zNzVhLjYyNS42MjUgMCAwIDEtLjIyNS0uODU1Wk05LjY4NSAxLjMzNWEuNjI1LjYyNSAwIDAgMSAuNjMgMGw3LjUgNC4zNzVhLjYyNS42MjUgMCAwIDEgMCAxLjA4bC03LjUgNC4zNzVhLjYyNS42MjUgMCAwIDEtLjYzIDBsLTcuNS00LjM3NWEuNjI1LjYyNSAwIDAgMSAwLTEuMDhsNy41LTQuMzc1Wk0zLjc0IDYuMjUgMTAgOS45MDFsNi4yNi0zLjY1MUwxMCAyLjU5OSAzLjc0IDYuMjVaIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48cGF0aCBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Im01LjcxNCAxMS44NzUgNC4yODYgMi41IDQuMjg2LTIuNUwxNy41IDEzLjc1IDEwIDE4LjEyNSAyLjUgMTMuNzVsMy4yMTQtMS44NzVaIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48cGF0aCBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik01LjQgMTEuMzM1YS42MjUuNjI1IDAgMCAxIC42MyAwTDEwIDEzLjY1MWwzLjk3LTIuMzE2YS42MjUuNjI1IDAgMCAxIC42MyAwbDMuMjE1IDEuODc1YS42MjUuNjI1IDAgMCAxIDAgMS4wOGwtNy41IDQuMzc1YS42MjUuNjI1IDAgMCAxLS42MyAwbC03LjUtNC4zNzVhLjYyNS42MjUgMCAwIDEgMC0xLjA4TDUuNCAxMS4zMzVaTTMuNzQgMTMuNzUgMTAgMTcuNDAxbDYuMjYtMy42NTEtMS45NzQtMS4xNTEtMy45NzEgMi4zMTZhLjYyNS42MjUgMCAwIDEtLjYzIDBsLTMuOTctMi4zMTZMMy43NCAxMy43NVoiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjxwYXRoIGZpbGw9IiNmZmYiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTUuNCA3LjU4NWEuNjI1LjYyNSAwIDAgMSAuNjMgMEwxMCA5LjkwMWwzLjk3LTIuMzE2YS42MjUuNjI1IDAgMCAxIC42MyAwbDMuMjE1IDEuODc1YS42MjUuNjI1IDAgMCAxIDAgMS4wOGwtNy41IDQuMzc1YS42MjUuNjI1IDAgMCAxLS42MyAwbC03LjUtNC4zNzVhLjYyNS42MjUgMCAwIDEgMC0xLjA4TDUuNCA3LjU4NVpNMy43NCAxMCAxMCAxMy42NTEgMTYuMjYgMTBsLTEuOTc0LTEuMTUxLTMuOTcxIDIuMzE2YS42MjUuNjI1IDAgMCAxLS42MyAwbC0zLjk3LTIuMzE2TDMuNzQgMTBaIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48L3N2Zz4=", ot = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI0VDNEU0MCIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNOC4xMjUgMS4yNUExLjg3NSAxLjg3NSAwIDAgMCA2LjI1IDMuMTI1di42MjVIMy4xMjVhLjYyNS42MjUgMCAwIDAgMCAxLjI1aC42MjV2MTEuMjVBMS4yNSAxLjI1IDAgMCAwIDUgMTcuNWgxMGExLjI1IDEuMjUgMCAwIDAgMS4yNS0xLjI1VjVoLjYyNWEuNjI1LjYyNSAwIDAgMCAwLTEuMjVIMTMuNzV2LS42MjVhMS44NzUgMS44NzUgMCAwIDAtMS44NzUtMS44NzVoLTMuNzVabTQuMzc1IDIuNXYtLjYyNWEuNjI1LjYyNSAwIDAgMC0uNjI1LS42MjVoLTMuNzVhLjYyNS42MjUgMCAwIDAtLjYyNS42MjV2LjYyNWg1Wk01IDE2LjI1VjVoMTB2MTEuMjVINVpNOC4xMjUgNy41Yy4zNDUgMCAuNjI1LjI4LjYyNS42MjV2NWEuNjI1LjYyNSAwIDEgMS0xLjI1IDB2LTVjMC0uMzQ1LjI4LS42MjUuNjI1LS42MjVabTQuMzc1IDUuNjI1di01YS42MjUuNjI1IDAgMCAwLTEuMjUgMHY1YS42MjUuNjI1IDAgMSAwIDEuMjUgMFoiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjwvc3ZnPg==";
|
|
544
|
-
function ve(
|
|
547
|
+
function ve(o, e, t, a, r, n, i) {
|
|
545
548
|
try {
|
|
546
|
-
var s =
|
|
549
|
+
var s = o[n](i), c = s.value;
|
|
547
550
|
} catch (u) {
|
|
548
551
|
return void t(u);
|
|
549
552
|
}
|
|
550
553
|
s.done ? e(c) : Promise.resolve(c).then(a, r);
|
|
551
554
|
}
|
|
552
|
-
function st(
|
|
555
|
+
function st(o) {
|
|
553
556
|
return function() {
|
|
554
557
|
var e = this, t = arguments;
|
|
555
558
|
return new Promise(function(a, r) {
|
|
556
|
-
var n =
|
|
557
|
-
function
|
|
558
|
-
ve(n, a, r,
|
|
559
|
+
var n = o.apply(e, t);
|
|
560
|
+
function i(c) {
|
|
561
|
+
ve(n, a, r, i, s, "next", c);
|
|
559
562
|
}
|
|
560
563
|
function s(c) {
|
|
561
|
-
ve(n, a, r,
|
|
564
|
+
ve(n, a, r, i, s, "throw", c);
|
|
562
565
|
}
|
|
563
|
-
|
|
566
|
+
i(void 0);
|
|
564
567
|
});
|
|
565
568
|
};
|
|
566
569
|
}
|
|
@@ -634,74 +637,74 @@ const E = {
|
|
|
634
637
|
},
|
|
635
638
|
handlers: {
|
|
636
639
|
copyPaste: function() {
|
|
637
|
-
var
|
|
640
|
+
var o = st(function* (t) {
|
|
638
641
|
yield t.clipboardManager.copy(), yield t.clipboardManager.paste();
|
|
639
642
|
});
|
|
640
643
|
function e(t) {
|
|
641
|
-
return
|
|
644
|
+
return o.apply(this, arguments);
|
|
642
645
|
}
|
|
643
646
|
return e;
|
|
644
647
|
}(),
|
|
645
|
-
delete: (
|
|
646
|
-
|
|
648
|
+
delete: (o) => {
|
|
649
|
+
o.deletionManager.deleteSelectedObjects();
|
|
647
650
|
},
|
|
648
|
-
lock: (
|
|
649
|
-
|
|
651
|
+
lock: (o) => {
|
|
652
|
+
o.objectLockManager.lockObject();
|
|
650
653
|
},
|
|
651
|
-
unlock: (
|
|
652
|
-
|
|
654
|
+
unlock: (o) => {
|
|
655
|
+
o.objectLockManager.unlockObject();
|
|
653
656
|
},
|
|
654
|
-
bringForward: (
|
|
655
|
-
|
|
657
|
+
bringForward: (o) => {
|
|
658
|
+
o.layerManager.bringForward();
|
|
656
659
|
},
|
|
657
|
-
bringToFront: (
|
|
658
|
-
|
|
660
|
+
bringToFront: (o) => {
|
|
661
|
+
o.layerManager.bringToFront();
|
|
659
662
|
},
|
|
660
|
-
sendToBack: (
|
|
661
|
-
|
|
663
|
+
sendToBack: (o) => {
|
|
664
|
+
o.layerManager.sendToBack();
|
|
662
665
|
},
|
|
663
|
-
sendBackwards: (
|
|
664
|
-
|
|
666
|
+
sendBackwards: (o) => {
|
|
667
|
+
o.layerManager.sendBackwards();
|
|
665
668
|
}
|
|
666
669
|
}
|
|
667
670
|
};
|
|
668
|
-
function me(
|
|
669
|
-
var t = Object.keys(
|
|
671
|
+
function me(o, e) {
|
|
672
|
+
var t = Object.keys(o);
|
|
670
673
|
if (Object.getOwnPropertySymbols) {
|
|
671
|
-
var a = Object.getOwnPropertySymbols(
|
|
674
|
+
var a = Object.getOwnPropertySymbols(o);
|
|
672
675
|
e && (a = a.filter(function(r) {
|
|
673
|
-
return Object.getOwnPropertyDescriptor(
|
|
676
|
+
return Object.getOwnPropertyDescriptor(o, r).enumerable;
|
|
674
677
|
})), t.push.apply(t, a);
|
|
675
678
|
}
|
|
676
679
|
return t;
|
|
677
680
|
}
|
|
678
|
-
function M(
|
|
681
|
+
function M(o) {
|
|
679
682
|
for (var e = 1; e < arguments.length; e++) {
|
|
680
683
|
var t = arguments[e] != null ? arguments[e] : {};
|
|
681
684
|
e % 2 ? me(Object(t), !0).forEach(function(a) {
|
|
682
|
-
ct(
|
|
683
|
-
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(
|
|
684
|
-
Object.defineProperty(
|
|
685
|
+
ct(o, a, t[a]);
|
|
686
|
+
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(o, Object.getOwnPropertyDescriptors(t)) : me(Object(t)).forEach(function(a) {
|
|
687
|
+
Object.defineProperty(o, a, Object.getOwnPropertyDescriptor(t, a));
|
|
685
688
|
});
|
|
686
689
|
}
|
|
687
|
-
return
|
|
690
|
+
return o;
|
|
688
691
|
}
|
|
689
|
-
function ct(
|
|
690
|
-
return (e = ut(e)) in
|
|
692
|
+
function ct(o, e, t) {
|
|
693
|
+
return (e = ut(e)) in o ? Object.defineProperty(o, e, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : o[e] = t, o;
|
|
691
694
|
}
|
|
692
|
-
function ut(
|
|
693
|
-
var e = dt(
|
|
695
|
+
function ut(o) {
|
|
696
|
+
var e = dt(o, "string");
|
|
694
697
|
return typeof e == "symbol" ? e : e + "";
|
|
695
698
|
}
|
|
696
|
-
function dt(
|
|
697
|
-
if (typeof
|
|
698
|
-
var t =
|
|
699
|
+
function dt(o, e) {
|
|
700
|
+
if (typeof o != "object" || !o) return o;
|
|
701
|
+
var t = o[Symbol.toPrimitive];
|
|
699
702
|
if (t !== void 0) {
|
|
700
|
-
var a = t.call(
|
|
703
|
+
var a = t.call(o, e);
|
|
701
704
|
if (typeof a != "object") return a;
|
|
702
705
|
throw new TypeError("@@toPrimitive must return a primitive value.");
|
|
703
706
|
}
|
|
704
|
-
return (e === "string" ? String : Number)(
|
|
707
|
+
return (e === "string" ? String : Number)(o);
|
|
705
708
|
}
|
|
706
709
|
class lt {
|
|
707
710
|
/**
|
|
@@ -753,14 +756,14 @@ class lt {
|
|
|
753
756
|
this.el.innerHTML = "";
|
|
754
757
|
var a = function() {
|
|
755
758
|
var {
|
|
756
|
-
name:
|
|
759
|
+
name: i,
|
|
757
760
|
handle: s
|
|
758
761
|
} = r, {
|
|
759
762
|
icons: c,
|
|
760
763
|
btnStyle: u,
|
|
761
764
|
handlers: l
|
|
762
765
|
} = t.config, d = document.createElement("button");
|
|
763
|
-
d.innerHTML = c[s] ? '<img src="'.concat(c[s], '" title="').concat(
|
|
766
|
+
d.innerHTML = c[s] ? '<img src="'.concat(c[s], '" title="').concat(i, '" />') : i, Object.assign(d.style, u), d.onclick = () => {
|
|
764
767
|
var h;
|
|
765
768
|
return (h = l[s]) === null || h === void 0 ? void 0 : h.call(l, t.editor);
|
|
766
769
|
}, t.el.appendChild(d);
|
|
@@ -835,12 +838,12 @@ class lt {
|
|
|
835
838
|
canvas: r
|
|
836
839
|
} = this;
|
|
837
840
|
e.setCoords();
|
|
838
|
-
var n = r.getZoom(), [, , , ,
|
|
841
|
+
var n = r.getZoom(), [, , , , i, s] = r.viewportTransform, {
|
|
839
842
|
x: c
|
|
840
843
|
} = e.getCenterPoint(), {
|
|
841
844
|
top: u,
|
|
842
845
|
height: l
|
|
843
|
-
} = e.getBoundingRect(!1, !0), d = c * n +
|
|
846
|
+
} = e.getBoundingRect(!1, !0), d = c * n + i, h = d - t.offsetWidth / 2, g = (u + l) * n + s + a.offsetTop;
|
|
844
847
|
Object.assign(t.style, {
|
|
845
848
|
left: "".concat(h, "px"),
|
|
846
849
|
top: "".concat(g, "px"),
|
|
@@ -855,26 +858,26 @@ class lt {
|
|
|
855
858
|
this.el.removeEventListener("mouseover", this._onBtnOver), this.el.removeEventListener("mouseout", this._onBtnOut), this.canvas.off("mouse:down", this._onMouseDown), this.canvas.off("object:moving", this._onObjectMoving), this.canvas.off("object:scaling", this._onObjectScaling), this.canvas.off("object:rotating", this._onObjectRotating), this.canvas.off("mouse:up", this._onMouseUp), this.canvas.off("object:modified", this._onObjectModified), this.canvas.off("selection:created", this._onSelectionChange), this.canvas.off("selection:updated", this._onSelectionChange), this.canvas.off("selection:changed", this._onSelectionChange), this.canvas.off("after:render", this._onSelectionChange), this.canvas.off("selection:cleared", this._onSelectionClear), this.el.remove();
|
|
856
859
|
}
|
|
857
860
|
}
|
|
858
|
-
function fe(
|
|
861
|
+
function fe(o, e, t, a, r, n, i) {
|
|
859
862
|
try {
|
|
860
|
-
var s =
|
|
863
|
+
var s = o[n](i), c = s.value;
|
|
861
864
|
} catch (u) {
|
|
862
865
|
return void t(u);
|
|
863
866
|
}
|
|
864
867
|
s.done ? e(c) : Promise.resolve(c).then(a, r);
|
|
865
868
|
}
|
|
866
|
-
function
|
|
869
|
+
function R(o) {
|
|
867
870
|
return function() {
|
|
868
871
|
var e = this, t = arguments;
|
|
869
872
|
return new Promise(function(a, r) {
|
|
870
|
-
var n =
|
|
871
|
-
function
|
|
872
|
-
fe(n, a, r,
|
|
873
|
+
var n = o.apply(e, t);
|
|
874
|
+
function i(c) {
|
|
875
|
+
fe(n, a, r, i, s, "next", c);
|
|
873
876
|
}
|
|
874
877
|
function s(c) {
|
|
875
|
-
fe(n, a, r,
|
|
878
|
+
fe(n, a, r, i, s, "throw", c);
|
|
876
879
|
}
|
|
877
|
-
|
|
880
|
+
i(void 0);
|
|
878
881
|
});
|
|
879
882
|
};
|
|
880
883
|
}
|
|
@@ -953,7 +956,7 @@ class ht {
|
|
|
953
956
|
*/
|
|
954
957
|
loadStateFromFullState(e) {
|
|
955
958
|
var t = this;
|
|
956
|
-
return
|
|
959
|
+
return R(function* () {
|
|
957
960
|
if (e) {
|
|
958
961
|
console.log("loadStateFromFullState fullState", e), yield t.canvas.loadFromJSON(e);
|
|
959
962
|
var a = t.canvas.getObjects().find((n) => n.id === "montage-area");
|
|
@@ -969,7 +972,7 @@ class ht {
|
|
|
969
972
|
*/
|
|
970
973
|
undo() {
|
|
971
974
|
var e = this;
|
|
972
|
-
return
|
|
975
|
+
return R(function* () {
|
|
973
976
|
if (!e.skipHistory) {
|
|
974
977
|
if (e.currentIndex <= 0) {
|
|
975
978
|
console.log("Нет предыдущих состояний для отмены.");
|
|
@@ -996,7 +999,7 @@ class ht {
|
|
|
996
999
|
*/
|
|
997
1000
|
redo() {
|
|
998
1001
|
var e = this;
|
|
999
|
-
return
|
|
1002
|
+
return R(function* () {
|
|
1000
1003
|
if (!e.skipHistory) {
|
|
1001
1004
|
if (e.currentIndex >= e.patches.length) {
|
|
1002
1005
|
console.log("Нет состояний для повтора.");
|
|
@@ -1018,49 +1021,27 @@ class ht {
|
|
|
1018
1021
|
})();
|
|
1019
1022
|
}
|
|
1020
1023
|
}
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
montageArea: e,
|
|
1024
|
-
imageObject: t,
|
|
1025
|
-
scaleType: a = "contain"
|
|
1026
|
-
} = i;
|
|
1027
|
-
if (!e || !t) return 1;
|
|
1028
|
-
var r = e.width, n = e.height, {
|
|
1029
|
-
width: o,
|
|
1030
|
-
height: s
|
|
1031
|
-
} = t;
|
|
1032
|
-
return a === "contain" || a === "image-contain" ? Math.min(r / o, n / s) : a === "cover" || a === "image-cover" ? Math.max(r / o, n / s) : 1;
|
|
1033
|
-
}
|
|
1034
|
-
function gt() {
|
|
1035
|
-
var i = document.createElement("canvas");
|
|
1036
|
-
i.width = 20, i.height = 20;
|
|
1037
|
-
var e = i.getContext("2d");
|
|
1038
|
-
return e.fillStyle = "#ddd", e.fillRect(0, 0, 40, 40), e.fillStyle = "#ccc", e.fillRect(0, 0, 10, 10), e.fillRect(10, 10, 10, 10), new Ee({
|
|
1039
|
-
source: i,
|
|
1040
|
-
repeat: "repeat"
|
|
1041
|
-
});
|
|
1042
|
-
}
|
|
1043
|
-
var vt = 0.1, mt = 2, ft = 0.1, Mt = 90, k = 16, x = 16, D = 4096, C = 4096;
|
|
1044
|
-
function Me(i, e, t, a, r, n, o) {
|
|
1024
|
+
var gt = 0.1, vt = 2, mt = 0.1, ft = 90, k = 16, x = 16, D = 4096, C = 4096;
|
|
1025
|
+
function Me(o, e, t, a, r, n, i) {
|
|
1045
1026
|
try {
|
|
1046
|
-
var s =
|
|
1027
|
+
var s = o[n](i), c = s.value;
|
|
1047
1028
|
} catch (u) {
|
|
1048
1029
|
return void t(u);
|
|
1049
1030
|
}
|
|
1050
1031
|
s.done ? e(c) : Promise.resolve(c).then(a, r);
|
|
1051
1032
|
}
|
|
1052
|
-
function P(
|
|
1033
|
+
function P(o) {
|
|
1053
1034
|
return function() {
|
|
1054
1035
|
var e = this, t = arguments;
|
|
1055
1036
|
return new Promise(function(a, r) {
|
|
1056
|
-
var n =
|
|
1057
|
-
function
|
|
1058
|
-
Me(n, a, r,
|
|
1037
|
+
var n = o.apply(e, t);
|
|
1038
|
+
function i(c) {
|
|
1039
|
+
Me(n, a, r, i, s, "next", c);
|
|
1059
1040
|
}
|
|
1060
1041
|
function s(c) {
|
|
1061
|
-
Me(n, a, r,
|
|
1042
|
+
Me(n, a, r, i, s, "throw", c);
|
|
1062
1043
|
}
|
|
1063
|
-
|
|
1044
|
+
i(void 0);
|
|
1064
1045
|
});
|
|
1065
1046
|
};
|
|
1066
1047
|
}
|
|
@@ -1093,7 +1074,7 @@ class L {
|
|
|
1093
1074
|
source: a,
|
|
1094
1075
|
scale: r = "image-".concat(t.options.scaleType),
|
|
1095
1076
|
withoutSave: n = !1,
|
|
1096
|
-
contentType:
|
|
1077
|
+
contentType: i = "image/png"
|
|
1097
1078
|
} = e;
|
|
1098
1079
|
if (a) {
|
|
1099
1080
|
var {
|
|
@@ -1110,33 +1091,33 @@ class L {
|
|
|
1110
1091
|
else if (typeof a == "string") {
|
|
1111
1092
|
var g = yield fetch(a, {
|
|
1112
1093
|
mode: "cors"
|
|
1113
|
-
}),
|
|
1114
|
-
type:
|
|
1094
|
+
}), v = yield g.blob({
|
|
1095
|
+
type: i,
|
|
1115
1096
|
quality: 1
|
|
1116
1097
|
});
|
|
1117
|
-
d = URL.createObjectURL(
|
|
1098
|
+
d = URL.createObjectURL(v);
|
|
1118
1099
|
} else
|
|
1119
1100
|
throw new Error("ImportImage. Неверный тип источника изображения. Ожидается URL или объект File.");
|
|
1120
1101
|
t._createdBlobUrls.push(d);
|
|
1121
|
-
var
|
|
1122
|
-
if (
|
|
1123
|
-
var j = yield
|
|
1102
|
+
var m = L.getFormatFromContentType(i);
|
|
1103
|
+
if (m === "svg") {
|
|
1104
|
+
var j = yield Ee(d);
|
|
1124
1105
|
h = z.groupSVGElements(j.objects, j.options);
|
|
1125
1106
|
} else
|
|
1126
1107
|
h = yield de.fromURL(d, {
|
|
1127
1108
|
crossOrigin: "anonymous"
|
|
1128
1109
|
});
|
|
1129
1110
|
var {
|
|
1130
|
-
width:
|
|
1111
|
+
width: f,
|
|
1131
1112
|
height: b
|
|
1132
1113
|
} = h;
|
|
1133
|
-
if (b > C ||
|
|
1114
|
+
if (b > C || f > D) {
|
|
1134
1115
|
var y = yield t.resizeImageToBoundaries(h._element.src, "max"), S = URL.createObjectURL(y);
|
|
1135
1116
|
t._createdBlobUrls.push(S), h = yield de.fromURL(S, {
|
|
1136
1117
|
crossOrigin: "anonymous"
|
|
1137
1118
|
});
|
|
1138
1119
|
}
|
|
1139
|
-
if (h.set("id", "".concat(h.type, "-").concat(I())), h.set("format",
|
|
1120
|
+
if (h.set("id", "".concat(h.type, "-").concat(I())), h.set("format", m), r === "scale-montage")
|
|
1140
1121
|
t.editor.canvasManager.scaleMontageAreaToImage({
|
|
1141
1122
|
object: h,
|
|
1142
1123
|
withoutSave: !0
|
|
@@ -1145,8 +1126,7 @@ class L {
|
|
|
1145
1126
|
var {
|
|
1146
1127
|
width: O,
|
|
1147
1128
|
height: A
|
|
1148
|
-
} = c, w =
|
|
1149
|
-
montageArea: c,
|
|
1129
|
+
} = c, w = t.calculateScaleFactor({
|
|
1150
1130
|
imageObject: h,
|
|
1151
1131
|
scaleType: r
|
|
1152
1132
|
});
|
|
@@ -1154,7 +1134,7 @@ class L {
|
|
|
1154
1134
|
object: h,
|
|
1155
1135
|
type: "contain",
|
|
1156
1136
|
withoutSave: !0
|
|
1157
|
-
}) : r === "image-cover" && (
|
|
1137
|
+
}) : r === "image-cover" && (f > O || b > A) && u.fitObject({
|
|
1158
1138
|
object: h,
|
|
1159
1139
|
type: "cover",
|
|
1160
1140
|
withoutSave: !0
|
|
@@ -1184,13 +1164,13 @@ class L {
|
|
|
1184
1164
|
console.warn("importImage. ".concat(n)), a.editor.canvas.fire("editor:warning", {
|
|
1185
1165
|
message: n
|
|
1186
1166
|
});
|
|
1187
|
-
var
|
|
1167
|
+
var i = yield a.editor.workerManager.post("resizeImage", {
|
|
1188
1168
|
dataURL: e,
|
|
1189
1169
|
maxWidth: D,
|
|
1190
1170
|
maxHeight: C,
|
|
1191
1171
|
sizeType: r
|
|
1192
1172
|
});
|
|
1193
|
-
return
|
|
1173
|
+
return i;
|
|
1194
1174
|
})();
|
|
1195
1175
|
}
|
|
1196
1176
|
/**
|
|
@@ -1211,7 +1191,7 @@ class L {
|
|
|
1211
1191
|
fileName: a = "image.png",
|
|
1212
1192
|
contentType: r = "image/png",
|
|
1213
1193
|
exportAsBase64: n = !1,
|
|
1214
|
-
exportAsBlob:
|
|
1194
|
+
exportAsBlob: i = !1
|
|
1215
1195
|
} = e.length > 0 && e[0] !== void 0 ? e[0] : {}, {
|
|
1216
1196
|
canvas: s,
|
|
1217
1197
|
montageArea: c,
|
|
@@ -1220,25 +1200,25 @@ class L {
|
|
|
1220
1200
|
c.setCoords();
|
|
1221
1201
|
var {
|
|
1222
1202
|
left: g,
|
|
1223
|
-
top:
|
|
1224
|
-
width:
|
|
1203
|
+
top: v,
|
|
1204
|
+
width: m,
|
|
1225
1205
|
height: j
|
|
1226
|
-
} = c.getBoundingRect(),
|
|
1227
|
-
["image/jpg", "image/jpeg"].includes(d) && (
|
|
1228
|
-
var b =
|
|
1229
|
-
b.visible = !1,
|
|
1230
|
-
width:
|
|
1206
|
+
} = c.getBoundingRect(), f = yield s.clone(["id", "format", "locked"]);
|
|
1207
|
+
["image/jpg", "image/jpeg"].includes(d) && (f.backgroundColor = "#ffffff");
|
|
1208
|
+
var b = f.getObjects().find((N) => N.id === c.id);
|
|
1209
|
+
b.visible = !1, f.viewportTransform = [1, 0, 0, 1, -g, -v], f.setDimensions({
|
|
1210
|
+
width: m,
|
|
1231
1211
|
height: j
|
|
1232
1212
|
}, {
|
|
1233
1213
|
backstoreOnly: !0
|
|
1234
|
-
}),
|
|
1235
|
-
var y =
|
|
1214
|
+
}), f.renderAll();
|
|
1215
|
+
var y = f.getObjects().filter((N) => N.format).every((N) => N.format === "svg");
|
|
1236
1216
|
if (h === "svg" && y) {
|
|
1237
|
-
var S =
|
|
1238
|
-
|
|
1217
|
+
var S = f.toSVG();
|
|
1218
|
+
f.dispose();
|
|
1239
1219
|
var O = L._exportSVGStringAsFile(S, {
|
|
1240
1220
|
exportAsBase64: n,
|
|
1241
|
-
exportAsBlob:
|
|
1221
|
+
exportAsBlob: i,
|
|
1242
1222
|
fileName: a
|
|
1243
1223
|
}), A = {
|
|
1244
1224
|
image: O,
|
|
@@ -1249,9 +1229,9 @@ class L {
|
|
|
1249
1229
|
return s.fire("editor:canvas-exported", A), A;
|
|
1250
1230
|
}
|
|
1251
1231
|
var w = yield new Promise((N) => {
|
|
1252
|
-
|
|
1232
|
+
f.getElement().toBlob(N);
|
|
1253
1233
|
});
|
|
1254
|
-
if (
|
|
1234
|
+
if (f.dispose(), i) {
|
|
1255
1235
|
var T = {
|
|
1256
1236
|
image: w,
|
|
1257
1237
|
format: h,
|
|
@@ -1266,13 +1246,13 @@ class L {
|
|
|
1266
1246
|
bitmap: ae
|
|
1267
1247
|
}, [ae]);
|
|
1268
1248
|
if (l) {
|
|
1269
|
-
var ne = 0.264583,
|
|
1270
|
-
orientation:
|
|
1249
|
+
var ne = 0.264583, H = m * ne, W = j * ne, we = (yield t.editor.moduleLoader.loadModule("jspdf")).jsPDF, _ = new we({
|
|
1250
|
+
orientation: H > W ? "landscape" : "portrait",
|
|
1271
1251
|
unit: "mm",
|
|
1272
|
-
format: [
|
|
1252
|
+
format: [H, W]
|
|
1273
1253
|
});
|
|
1274
|
-
if (
|
|
1275
|
-
var Ne =
|
|
1254
|
+
if (_.addImage(re, "JPG", 0, 0, H, W), n) {
|
|
1255
|
+
var Ne = _.output("datauristring"), ie = {
|
|
1276
1256
|
image: Ne,
|
|
1277
1257
|
format: "pdf",
|
|
1278
1258
|
contentType: "application/pdf",
|
|
@@ -1280,7 +1260,7 @@ class L {
|
|
|
1280
1260
|
};
|
|
1281
1261
|
return s.fire("editor:canvas-exported", ie), ie;
|
|
1282
1262
|
}
|
|
1283
|
-
var De =
|
|
1263
|
+
var De = _.output("blob"), Ce = new File([De], a, {
|
|
1284
1264
|
type: "application/pdf"
|
|
1285
1265
|
}), oe = {
|
|
1286
1266
|
image: Ce,
|
|
@@ -1328,7 +1308,7 @@ class L {
|
|
|
1328
1308
|
object: a,
|
|
1329
1309
|
fileName: r = "image.png",
|
|
1330
1310
|
contentType: n = "image/png",
|
|
1331
|
-
exportAsBase64:
|
|
1311
|
+
exportAsBase64: i = !1,
|
|
1332
1312
|
exportAsBlob: s = !1
|
|
1333
1313
|
} = e.length > 0 && e[0] !== void 0 ? e[0] : {}, {
|
|
1334
1314
|
canvas: c,
|
|
@@ -1341,29 +1321,29 @@ class L {
|
|
|
1341
1321
|
var d = L.getFormatFromContentType(n);
|
|
1342
1322
|
if (d === "svg") {
|
|
1343
1323
|
var h = l.toSVG(), g = t._exportSVGStringAsFile(h, {
|
|
1344
|
-
exportAsBase64:
|
|
1324
|
+
exportAsBase64: i,
|
|
1345
1325
|
exportAsBlob: s,
|
|
1346
1326
|
fileName: r
|
|
1347
|
-
}),
|
|
1327
|
+
}), v = {
|
|
1348
1328
|
image: g,
|
|
1349
1329
|
format: d,
|
|
1350
1330
|
contentType: "image/svg+xml",
|
|
1351
1331
|
fileName: r.replace(/\.[^/.]+$/, ".svg")
|
|
1352
1332
|
};
|
|
1353
|
-
return c.fire("editor:object-exported",
|
|
1333
|
+
return c.fire("editor:object-exported", v), v;
|
|
1354
1334
|
}
|
|
1355
|
-
if (
|
|
1356
|
-
var
|
|
1335
|
+
if (i) {
|
|
1336
|
+
var m = yield createImageBitmap(l._element), j = yield u.post("toDataURL", {
|
|
1357
1337
|
format: d,
|
|
1358
1338
|
quality: 1,
|
|
1359
|
-
bitmap:
|
|
1360
|
-
}, [
|
|
1339
|
+
bitmap: m
|
|
1340
|
+
}, [m]), f = {
|
|
1361
1341
|
image: j,
|
|
1362
1342
|
format: d,
|
|
1363
1343
|
contentType: n,
|
|
1364
1344
|
fileName: r
|
|
1365
1345
|
};
|
|
1366
|
-
return c.fire("editor:object-exported",
|
|
1346
|
+
return c.fire("editor:object-exported", f), f;
|
|
1367
1347
|
}
|
|
1368
1348
|
var b = l.toCanvasElement(), y = yield new Promise((w) => {
|
|
1369
1349
|
b.toBlob(w);
|
|
@@ -1429,8 +1409,28 @@ class L {
|
|
|
1429
1409
|
var e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "", t = e.match(/^[^/]+\/([^+;]+)/);
|
|
1430
1410
|
return t ? t[1] : "";
|
|
1431
1411
|
}
|
|
1412
|
+
/**
|
|
1413
|
+
* Рассчитывает коэффициент масштабирования изображения.
|
|
1414
|
+
* @param {object} imageObject - объект изображения
|
|
1415
|
+
* @param {string} scaleType - тип масштабирования ('contain' или 'cover')
|
|
1416
|
+
* @returns {number} коэффициент масштабирования
|
|
1417
|
+
*/
|
|
1418
|
+
calculateScaleFactor(e) {
|
|
1419
|
+
var {
|
|
1420
|
+
imageObject: t,
|
|
1421
|
+
scaleType: a = "contain"
|
|
1422
|
+
} = e, {
|
|
1423
|
+
montageArea: r
|
|
1424
|
+
} = this.editor;
|
|
1425
|
+
if (!r || !t) return 1;
|
|
1426
|
+
var n = r.width, i = r.height, {
|
|
1427
|
+
width: s,
|
|
1428
|
+
height: c
|
|
1429
|
+
} = t;
|
|
1430
|
+
return a === "contain" || a === "image-contain" ? Math.min(n / s, i / c) : a === "cover" || a === "image-cover" ? Math.max(n / s, i / c) : 1;
|
|
1431
|
+
}
|
|
1432
1432
|
}
|
|
1433
|
-
class
|
|
1433
|
+
class Mt {
|
|
1434
1434
|
/**
|
|
1435
1435
|
* @param {object} options
|
|
1436
1436
|
* @param {ImageEditor} options.editor – экземпляр редактора
|
|
@@ -1458,15 +1458,15 @@ class jt {
|
|
|
1458
1458
|
if (e) {
|
|
1459
1459
|
var {
|
|
1460
1460
|
canvas: n,
|
|
1461
|
-
montageArea:
|
|
1461
|
+
montageArea: i,
|
|
1462
1462
|
options: {
|
|
1463
1463
|
canvasBackstoreWidth: s
|
|
1464
1464
|
}
|
|
1465
1465
|
} = this.editor, {
|
|
1466
1466
|
width: c,
|
|
1467
1467
|
height: u
|
|
1468
|
-
} =
|
|
1469
|
-
if (!s || s === "auto" || r ? this.adaptCanvasToContainer() : s ? this.setCanvasBackstoreWidth(s) : this.setCanvasBackstoreWidth(l),
|
|
1468
|
+
} = i, l = Number(Math.max(Math.min(e, D), k));
|
|
1469
|
+
if (!s || s === "auto" || r ? this.adaptCanvasToContainer() : s ? this.setCanvasBackstoreWidth(s) : this.setCanvasBackstoreWidth(l), i.set({
|
|
1470
1470
|
width: l
|
|
1471
1471
|
}), n.clipPath.set({
|
|
1472
1472
|
width: l
|
|
@@ -1477,9 +1477,9 @@ class jt {
|
|
|
1477
1477
|
}
|
|
1478
1478
|
var {
|
|
1479
1479
|
left: g,
|
|
1480
|
-
top:
|
|
1481
|
-
} = this.getObjectDefaultCoords(
|
|
1482
|
-
n.setViewportTransform([
|
|
1480
|
+
top: v
|
|
1481
|
+
} = this.getObjectDefaultCoords(i), m = n.getZoom();
|
|
1482
|
+
n.setViewportTransform([m, 0, 0, m, g, v]), this.centerMontageArea(), a || this.editor.historyManager.saveState(), n == null || n.fire("editor:resolution-width-changed", {
|
|
1483
1483
|
width: e
|
|
1484
1484
|
});
|
|
1485
1485
|
}
|
|
@@ -1501,15 +1501,15 @@ class jt {
|
|
|
1501
1501
|
if (e) {
|
|
1502
1502
|
var {
|
|
1503
1503
|
canvas: n,
|
|
1504
|
-
montageArea:
|
|
1504
|
+
montageArea: i,
|
|
1505
1505
|
options: {
|
|
1506
1506
|
canvasBackstoreHeight: s
|
|
1507
1507
|
}
|
|
1508
1508
|
} = this.editor, {
|
|
1509
1509
|
width: c,
|
|
1510
1510
|
height: u
|
|
1511
|
-
} =
|
|
1512
|
-
if (!s || s === "auto" || r ? this.adaptCanvasToContainer() : s ? this.setCanvasBackstoreHeight(s) : this.setCanvasBackstoreHeight(l),
|
|
1511
|
+
} = i, l = Number(Math.max(Math.min(e, C), x));
|
|
1512
|
+
if (!s || s === "auto" || r ? this.adaptCanvasToContainer() : s ? this.setCanvasBackstoreHeight(s) : this.setCanvasBackstoreHeight(l), i.set({
|
|
1513
1513
|
height: l
|
|
1514
1514
|
}), n.clipPath.set({
|
|
1515
1515
|
height: l
|
|
@@ -1520,9 +1520,9 @@ class jt {
|
|
|
1520
1520
|
}
|
|
1521
1521
|
var {
|
|
1522
1522
|
left: g,
|
|
1523
|
-
top:
|
|
1524
|
-
} = this.getObjectDefaultCoords(
|
|
1525
|
-
n.setViewportTransform([
|
|
1523
|
+
top: v
|
|
1524
|
+
} = this.getObjectDefaultCoords(i), m = n.getZoom();
|
|
1525
|
+
n.setViewportTransform([m, 0, 0, m, g, v]), this.centerMontageArea(), a || this.editor.historyManager.saveState(), n == null || n.fire("editor:resolution-height-changed", {
|
|
1526
1526
|
height: e
|
|
1527
1527
|
});
|
|
1528
1528
|
}
|
|
@@ -1535,7 +1535,7 @@ class jt {
|
|
|
1535
1535
|
var {
|
|
1536
1536
|
canvas: e,
|
|
1537
1537
|
montageArea: t
|
|
1538
|
-
} = this.editor, a = e.getWidth(), r = e.getHeight(), n = e.getZoom(),
|
|
1538
|
+
} = this.editor, a = e.getWidth(), r = e.getHeight(), n = e.getZoom(), i = new ke(a / 2, r / 2);
|
|
1539
1539
|
t.set({
|
|
1540
1540
|
left: a / 2,
|
|
1541
1541
|
top: r / 2
|
|
@@ -1544,7 +1544,7 @@ class jt {
|
|
|
1544
1544
|
top: r / 2
|
|
1545
1545
|
}), e.renderAll();
|
|
1546
1546
|
var s = e.viewportTransform;
|
|
1547
|
-
s[4] = a / 2 -
|
|
1547
|
+
s[4] = a / 2 - i.x * n, s[5] = r / 2 - i.y * n, e.setViewportTransform(s), e.renderAll();
|
|
1548
1548
|
}
|
|
1549
1549
|
/**
|
|
1550
1550
|
* Метод для получения координат объекта с учетом текущего зума
|
|
@@ -1562,7 +1562,7 @@ class jt {
|
|
|
1562
1562
|
var {
|
|
1563
1563
|
width: r,
|
|
1564
1564
|
height: n
|
|
1565
|
-
} = a,
|
|
1565
|
+
} = a, i = t.getZoom(), s = (r - r * i) / 2, c = (n - n * i) / 2;
|
|
1566
1566
|
return {
|
|
1567
1567
|
left: s,
|
|
1568
1568
|
top: c
|
|
@@ -1591,10 +1591,10 @@ class jt {
|
|
|
1591
1591
|
adaptCanvasToContainer() {
|
|
1592
1592
|
var {
|
|
1593
1593
|
canvas: e
|
|
1594
|
-
} = this.editor, t = e.editorContainer, a = t.clientWidth, r = t.clientHeight, n = Math.max(Math.min(a, D), k),
|
|
1595
|
-
console.log("adaptCanvasToContainer newWidth", n), console.log("adaptCanvasToContainer newHeight",
|
|
1594
|
+
} = this.editor, t = e.editorContainer, a = t.clientWidth, r = t.clientHeight, n = Math.max(Math.min(a, D), k), i = Math.max(Math.min(r, C), x);
|
|
1595
|
+
console.log("adaptCanvasToContainer newWidth", n), console.log("adaptCanvasToContainer newHeight", i), e.setDimensions({
|
|
1596
1596
|
width: n,
|
|
1597
|
-
height:
|
|
1597
|
+
height: i
|
|
1598
1598
|
}, {
|
|
1599
1599
|
backstoreOnly: !0
|
|
1600
1600
|
});
|
|
@@ -1692,23 +1692,23 @@ class jt {
|
|
|
1692
1692
|
options: {
|
|
1693
1693
|
editorContainer: n
|
|
1694
1694
|
}
|
|
1695
|
-
} = this.editor,
|
|
1695
|
+
} = this.editor, i = [];
|
|
1696
1696
|
switch (e) {
|
|
1697
1697
|
case "canvas":
|
|
1698
|
-
|
|
1698
|
+
i.push(r.lowerCanvasEl, r.upperCanvasEl);
|
|
1699
1699
|
break;
|
|
1700
1700
|
case "wrapper":
|
|
1701
|
-
|
|
1701
|
+
i.push(r.wrapperEl);
|
|
1702
1702
|
break;
|
|
1703
1703
|
case "container":
|
|
1704
|
-
|
|
1704
|
+
i.push(n);
|
|
1705
1705
|
break;
|
|
1706
1706
|
default:
|
|
1707
|
-
|
|
1707
|
+
i.push(r.lowerCanvasEl, r.upperCanvasEl);
|
|
1708
1708
|
}
|
|
1709
1709
|
var s = t === "width" ? "width" : "height";
|
|
1710
1710
|
if (typeof a == "string") {
|
|
1711
|
-
|
|
1711
|
+
i.forEach((l) => {
|
|
1712
1712
|
l.style[s] = a;
|
|
1713
1713
|
});
|
|
1714
1714
|
return;
|
|
@@ -1716,7 +1716,7 @@ class jt {
|
|
|
1716
1716
|
var c = parseFloat(a);
|
|
1717
1717
|
if (!isNaN(c)) {
|
|
1718
1718
|
var u = "".concat(c, "px");
|
|
1719
|
-
|
|
1719
|
+
i.forEach((l) => {
|
|
1720
1720
|
l.style[s] = u;
|
|
1721
1721
|
}), r.fire("editor:display-".concat(e, "-").concat(s, "-changed"), {
|
|
1722
1722
|
element: e,
|
|
@@ -1741,7 +1741,7 @@ class jt {
|
|
|
1741
1741
|
} = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, {
|
|
1742
1742
|
canvas: r,
|
|
1743
1743
|
montageArea: n,
|
|
1744
|
-
transformManager:
|
|
1744
|
+
transformManager: i,
|
|
1745
1745
|
options: {
|
|
1746
1746
|
montageAreaWidth: s,
|
|
1747
1747
|
montageAreaHeight: c
|
|
@@ -1758,23 +1758,23 @@ class jt {
|
|
|
1758
1758
|
message: h
|
|
1759
1759
|
});
|
|
1760
1760
|
}
|
|
1761
|
-
var g = Math.min(l, D),
|
|
1761
|
+
var g = Math.min(l, D), v = Math.min(d, C);
|
|
1762
1762
|
if (t) {
|
|
1763
1763
|
var {
|
|
1764
|
-
width:
|
|
1764
|
+
width: m,
|
|
1765
1765
|
height: j
|
|
1766
|
-
} = n,
|
|
1767
|
-
g =
|
|
1766
|
+
} = n, f = l / m, b = d / j, y = Math.max(f, b);
|
|
1767
|
+
g = m * y, v = j * y;
|
|
1768
1768
|
}
|
|
1769
1769
|
this.setResolutionWidth(g, {
|
|
1770
1770
|
withoutSave: !0
|
|
1771
|
-
}), this.setResolutionHeight(
|
|
1771
|
+
}), this.setResolutionHeight(v, {
|
|
1772
1772
|
withoutSave: !0
|
|
1773
|
-
}), (l > s || d > c) &&
|
|
1773
|
+
}), (l > s || d > c) && i.calculateAndApplyDefaultZoom(s, c), i.resetObject(u, {
|
|
1774
1774
|
withoutSave: !0
|
|
1775
1775
|
}), r.centerObject(u), r.renderAll(), a || this.editor.historyManager.saveState(), r.fire("editor:canvas-scaled", {
|
|
1776
1776
|
width: g,
|
|
1777
|
-
height:
|
|
1777
|
+
height: v
|
|
1778
1778
|
});
|
|
1779
1779
|
}
|
|
1780
1780
|
}
|
|
@@ -1805,12 +1805,12 @@ class jt {
|
|
|
1805
1805
|
historyManager: r,
|
|
1806
1806
|
options: {
|
|
1807
1807
|
montageAreaWidth: n,
|
|
1808
|
-
montageAreaHeight:
|
|
1808
|
+
montageAreaHeight: i
|
|
1809
1809
|
}
|
|
1810
1810
|
} = this.editor;
|
|
1811
1811
|
a.resetZoom(), this.setResolutionWidth(n, {
|
|
1812
1812
|
withoutSave: !0
|
|
1813
|
-
}), this.setResolutionHeight(
|
|
1813
|
+
}), this.setResolutionHeight(i, {
|
|
1814
1814
|
withoutSave: !0
|
|
1815
1815
|
}), t.renderAll(), a.resetObjects(), e || r.saveState(), t.fire("editor:default-scale-set");
|
|
1816
1816
|
}
|
|
@@ -1829,7 +1829,7 @@ class jt {
|
|
|
1829
1829
|
return r.filter((n) => n.id !== t.id && n.id !== a.id);
|
|
1830
1830
|
}
|
|
1831
1831
|
}
|
|
1832
|
-
class
|
|
1832
|
+
class jt {
|
|
1833
1833
|
/**
|
|
1834
1834
|
* @param {object} options
|
|
1835
1835
|
* @param {ImageEditor} options.editor - экземпляр редактора с доступом к canvas
|
|
@@ -1851,7 +1851,7 @@ class yt {
|
|
|
1851
1851
|
var e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : this.options.montageAreaWidth, t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.options.montageAreaHeight, {
|
|
1852
1852
|
width: a,
|
|
1853
1853
|
height: r
|
|
1854
|
-
} = this.editor.montageArea, n = e / a,
|
|
1854
|
+
} = this.editor.montageArea, n = e / a, i = t / r, s = Math.min(n, i), {
|
|
1855
1855
|
minZoom: c,
|
|
1856
1856
|
maxZoom: u,
|
|
1857
1857
|
maxZoomFactor: l
|
|
@@ -1868,16 +1868,16 @@ class yt {
|
|
|
1868
1868
|
* Если передавать координаты курсора, то нужно быть аккуратнее, так как юзер может выйти за пределы рабочей области
|
|
1869
1869
|
*/
|
|
1870
1870
|
zoom() {
|
|
1871
|
-
var e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] :
|
|
1871
|
+
var e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : mt, t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
|
|
1872
1872
|
if (e) {
|
|
1873
1873
|
var {
|
|
1874
1874
|
canvas: a,
|
|
1875
1875
|
minZoom: r,
|
|
1876
1876
|
maxZoom: n
|
|
1877
|
-
} = this.editor,
|
|
1877
|
+
} = this.editor, i = a.getZoom(), {
|
|
1878
1878
|
x: s = t.pointX,
|
|
1879
1879
|
y: c = t.pointY
|
|
1880
|
-
} = a.getCenterPoint(), u = Number((
|
|
1880
|
+
} = a.getCenterPoint(), u = Number((i + Number(e)).toFixed(2));
|
|
1881
1881
|
u > n && (u = n), u < r && (u = r), a.zoomToPoint({
|
|
1882
1882
|
x: Number(s),
|
|
1883
1883
|
y: Number(c)
|
|
@@ -1901,16 +1901,16 @@ class yt {
|
|
|
1901
1901
|
maxZoom: r
|
|
1902
1902
|
} = this.editor, {
|
|
1903
1903
|
x: n,
|
|
1904
|
-
y:
|
|
1904
|
+
y: i
|
|
1905
1905
|
} = t.getCenterPoint(), s = e;
|
|
1906
1906
|
e > r && (s = r), e < a && (s = a), t.zoomToPoint({
|
|
1907
1907
|
x: Number(n),
|
|
1908
|
-
y: Number(
|
|
1908
|
+
y: Number(i)
|
|
1909
1909
|
}, s), t.fire("editor:zoom-changed", {
|
|
1910
1910
|
currentZoom: t.getZoom(),
|
|
1911
1911
|
zoom: s,
|
|
1912
1912
|
pointX: n,
|
|
1913
|
-
pointY:
|
|
1913
|
+
pointY: i
|
|
1914
1914
|
});
|
|
1915
1915
|
}
|
|
1916
1916
|
/**
|
|
@@ -1940,16 +1940,16 @@ class yt {
|
|
|
1940
1940
|
* @fires editor:object-rotated
|
|
1941
1941
|
*/
|
|
1942
1942
|
rotate() {
|
|
1943
|
-
var e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] :
|
|
1943
|
+
var e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : ft, {
|
|
1944
1944
|
withoutSave: t
|
|
1945
1945
|
} = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, {
|
|
1946
1946
|
canvas: a,
|
|
1947
1947
|
historyManager: r
|
|
1948
1948
|
} = this.editor, n = a.getActiveObject();
|
|
1949
1949
|
if (n) {
|
|
1950
|
-
var
|
|
1951
|
-
n.rotate(
|
|
1952
|
-
angle:
|
|
1950
|
+
var i = n.angle + e;
|
|
1951
|
+
n.rotate(i), n.setCoords(), a.renderAll(), t || r.saveState(), a.fire("editor:object-rotated", {
|
|
1952
|
+
angle: i
|
|
1953
1953
|
});
|
|
1954
1954
|
}
|
|
1955
1955
|
}
|
|
@@ -1996,10 +1996,10 @@ class yt {
|
|
|
1996
1996
|
} = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, {
|
|
1997
1997
|
canvas: r,
|
|
1998
1998
|
historyManager: n
|
|
1999
|
-
} = this.editor,
|
|
2000
|
-
|
|
1999
|
+
} = this.editor, i = e || r.getActiveObject();
|
|
2000
|
+
i && (i.type === "activeselection" ? i.getObjects().forEach((s) => {
|
|
2001
2001
|
s.set("opacity", t);
|
|
2002
|
-
}) :
|
|
2002
|
+
}) : i.set("opacity", t), r.renderAll(), a || n.saveState(), r.fire("editor:object-opacity-changed", t));
|
|
2003
2003
|
}
|
|
2004
2004
|
/**
|
|
2005
2005
|
* Масштабирование изображения
|
|
@@ -2020,33 +2020,32 @@ class yt {
|
|
|
2020
2020
|
fitAsOneObject: r
|
|
2021
2021
|
} = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, {
|
|
2022
2022
|
canvas: n,
|
|
2023
|
-
montageArea:
|
|
2024
|
-
|
|
2025
|
-
|
|
2026
|
-
|
|
2027
|
-
|
|
2028
|
-
|
|
2029
|
-
|
|
2030
|
-
|
|
2031
|
-
|
|
2032
|
-
imageObject:
|
|
2023
|
+
montageArea: i,
|
|
2024
|
+
imageManager: s,
|
|
2025
|
+
historyManager: c
|
|
2026
|
+
} = this.editor, u = e || n.getActiveObject();
|
|
2027
|
+
if (u) {
|
|
2028
|
+
if (["activeselection"].includes(u.type) && !r) {
|
|
2029
|
+
var l = u.getObjects();
|
|
2030
|
+
n.discardActiveObject(), l.forEach((g) => {
|
|
2031
|
+
var v = s.calculateScaleFactor({
|
|
2032
|
+
imageObject: g,
|
|
2033
2033
|
scaleType: t
|
|
2034
2034
|
});
|
|
2035
|
-
|
|
2035
|
+
g.scale(v), n.centerObject(g);
|
|
2036
2036
|
});
|
|
2037
|
-
var
|
|
2037
|
+
var d = new Z(l, {
|
|
2038
2038
|
canvas: n
|
|
2039
2039
|
});
|
|
2040
|
-
n.setActiveObject(
|
|
2040
|
+
n.setActiveObject(d);
|
|
2041
2041
|
} else {
|
|
2042
|
-
var
|
|
2043
|
-
|
|
2044
|
-
imageObject: c,
|
|
2042
|
+
var h = s.calculateScaleFactor({
|
|
2043
|
+
imageObject: u,
|
|
2045
2044
|
scaleType: t
|
|
2046
2045
|
});
|
|
2047
|
-
|
|
2046
|
+
u.scale(h), n.centerObject(u);
|
|
2048
2047
|
}
|
|
2049
|
-
n.renderAll(), a ||
|
|
2048
|
+
n.renderAll(), a || c.saveState(), n.fire("editor:image-fitted", {
|
|
2050
2049
|
type: t
|
|
2051
2050
|
});
|
|
2052
2051
|
}
|
|
@@ -2073,52 +2072,52 @@ class yt {
|
|
|
2073
2072
|
} = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, {
|
|
2074
2073
|
canvas: r,
|
|
2075
2074
|
montageArea: n,
|
|
2076
|
-
|
|
2075
|
+
imageManager: i,
|
|
2076
|
+
historyManager: s,
|
|
2077
2077
|
options: {
|
|
2078
|
-
scaleType:
|
|
2078
|
+
scaleType: c
|
|
2079
2079
|
}
|
|
2080
|
-
} = this.editor,
|
|
2081
|
-
if (!(!
|
|
2082
|
-
if (
|
|
2080
|
+
} = this.editor, u = e || r.getActiveObject();
|
|
2081
|
+
if (!(!u || u.locked)) {
|
|
2082
|
+
if (s.suspendHistory(), u.type !== "image" && u.format !== "svg" && (u.set({
|
|
2083
2083
|
scaleX: 1,
|
|
2084
2084
|
scaleY: 1,
|
|
2085
2085
|
flipX: !1,
|
|
2086
2086
|
flipY: !1,
|
|
2087
2087
|
angle: 0
|
|
2088
|
-
}), r.centerObject(
|
|
2088
|
+
}), r.centerObject(u), r.renderAll()), t)
|
|
2089
2089
|
this.fitObject({
|
|
2090
|
-
object:
|
|
2090
|
+
object: u,
|
|
2091
2091
|
withoutSave: !0
|
|
2092
2092
|
});
|
|
2093
2093
|
else {
|
|
2094
2094
|
var {
|
|
2095
|
-
width:
|
|
2096
|
-
height:
|
|
2095
|
+
width: l,
|
|
2096
|
+
height: d
|
|
2097
2097
|
} = n, {
|
|
2098
|
-
width:
|
|
2099
|
-
height:
|
|
2100
|
-
} =
|
|
2101
|
-
|
|
2102
|
-
|
|
2103
|
-
scaleType: s
|
|
2098
|
+
width: h,
|
|
2099
|
+
height: g
|
|
2100
|
+
} = u, v = i.calculateScaleFactor({
|
|
2101
|
+
imageObject: u,
|
|
2102
|
+
scaleType: c
|
|
2104
2103
|
});
|
|
2105
|
-
|
|
2106
|
-
object:
|
|
2104
|
+
c === "contain" && v < 1 || c === "cover" && (h > l || g > d) ? this.fitObject({
|
|
2105
|
+
object: u,
|
|
2107
2106
|
withoutSave: !0
|
|
2108
|
-
}) :
|
|
2107
|
+
}) : u.set({
|
|
2109
2108
|
scaleX: 1,
|
|
2110
2109
|
scaleY: 1
|
|
2111
2110
|
});
|
|
2112
2111
|
}
|
|
2113
|
-
|
|
2112
|
+
u.set({
|
|
2114
2113
|
flipX: !1,
|
|
2115
2114
|
flipY: !1,
|
|
2116
2115
|
angle: 0
|
|
2117
|
-
}), r.centerObject(
|
|
2116
|
+
}), r.centerObject(u), r.renderAll(), s.resumeHistory(), a || s.saveState(), r.fire("editor:object-reset");
|
|
2118
2117
|
}
|
|
2119
2118
|
}
|
|
2120
2119
|
}
|
|
2121
|
-
class
|
|
2120
|
+
class yt {
|
|
2122
2121
|
/**
|
|
2123
2122
|
* @param {object} options
|
|
2124
2123
|
* @param {ImageEditor} options.editor – экземпляр редактора
|
|
@@ -2169,13 +2168,13 @@ class pt {
|
|
|
2169
2168
|
var {
|
|
2170
2169
|
left: r,
|
|
2171
2170
|
top: n,
|
|
2172
|
-
width:
|
|
2171
|
+
width: i,
|
|
2173
2172
|
height: s
|
|
2174
2173
|
} = t.getBoundingRect();
|
|
2175
2174
|
this.overlayMask.set({
|
|
2176
2175
|
left: r,
|
|
2177
2176
|
top: n,
|
|
2178
|
-
width:
|
|
2177
|
+
width: i,
|
|
2179
2178
|
height: s
|
|
2180
2179
|
}), e.discardActiveObject(), this.editor.layerManager.bringToFront(this.overlayMask, {
|
|
2181
2180
|
withoutSave: !0
|
|
@@ -2218,7 +2217,7 @@ class pt {
|
|
|
2218
2217
|
}
|
|
2219
2218
|
}
|
|
2220
2219
|
}
|
|
2221
|
-
class
|
|
2220
|
+
class Y {
|
|
2222
2221
|
/**
|
|
2223
2222
|
* @param {object} options
|
|
2224
2223
|
* @param {ImageEditor} options.editor - экземпляр редактора с доступом к canvas
|
|
@@ -2245,8 +2244,8 @@ class H {
|
|
|
2245
2244
|
} = this.editor;
|
|
2246
2245
|
r.suspendHistory();
|
|
2247
2246
|
var n = e || a.getActiveObject();
|
|
2248
|
-
n && (n.type === "activeselection" ? n.getObjects().forEach((
|
|
2249
|
-
a.bringObjectToFront(
|
|
2247
|
+
n && (n.type === "activeselection" ? n.getObjects().forEach((i) => {
|
|
2248
|
+
a.bringObjectToFront(i);
|
|
2250
2249
|
}) : a.bringObjectToFront(n), a.renderAll(), r.resumeHistory(), t || r.saveState(), a.fire("editor:object-bring-to-front"));
|
|
2251
2250
|
}
|
|
2252
2251
|
/**
|
|
@@ -2265,7 +2264,7 @@ class H {
|
|
|
2265
2264
|
} = this.editor;
|
|
2266
2265
|
r.suspendHistory();
|
|
2267
2266
|
var n = e || a.getActiveObject();
|
|
2268
|
-
n && (n.type === "activeselection" ?
|
|
2267
|
+
n && (n.type === "activeselection" ? Y._moveSelectionForward(a, n) : a.bringObjectForward(n), a.renderAll(), r.resumeHistory(), t || r.saveState(), a.fire("editor:object-bring-forward"));
|
|
2269
2268
|
}
|
|
2270
2269
|
/**
|
|
2271
2270
|
* Отправить объект на задний план по оси Z
|
|
@@ -2282,7 +2281,7 @@ class H {
|
|
|
2282
2281
|
montageArea: r,
|
|
2283
2282
|
historyManager: n,
|
|
2284
2283
|
interactionBlocker: {
|
|
2285
|
-
overlayMask:
|
|
2284
|
+
overlayMask: i
|
|
2286
2285
|
}
|
|
2287
2286
|
} = this.editor;
|
|
2288
2287
|
n.suspendHistory();
|
|
@@ -2293,7 +2292,7 @@ class H {
|
|
|
2293
2292
|
a.sendObjectToBack(c[u]);
|
|
2294
2293
|
else
|
|
2295
2294
|
a.sendObjectToBack(s);
|
|
2296
|
-
a.sendObjectToBack(r), a.sendObjectToBack(
|
|
2295
|
+
a.sendObjectToBack(r), a.sendObjectToBack(i), a.renderAll(), n.resumeHistory(), t || n.saveState(), a.fire("editor:object-send-to-back");
|
|
2297
2296
|
}
|
|
2298
2297
|
}
|
|
2299
2298
|
/**
|
|
@@ -2310,12 +2309,12 @@ class H {
|
|
|
2310
2309
|
montageArea: r,
|
|
2311
2310
|
historyManager: n,
|
|
2312
2311
|
interactionBlocker: {
|
|
2313
|
-
overlayMask:
|
|
2312
|
+
overlayMask: i
|
|
2314
2313
|
}
|
|
2315
2314
|
} = this.editor;
|
|
2316
2315
|
n.suspendHistory();
|
|
2317
2316
|
var s = e || a.getActiveObject();
|
|
2318
|
-
s && (s.type === "activeselection" ?
|
|
2317
|
+
s && (s.type === "activeselection" ? Y._moveSelectionBackwards(a, s) : a.sendObjectBackwards(s), a.sendObjectToBack(r), a.sendObjectToBack(i), a.renderAll(), n.resumeHistory(), t || n.saveState(), a.fire("editor:object-send-backwards"));
|
|
2319
2318
|
}
|
|
2320
2319
|
/**
|
|
2321
2320
|
* Сдвигает выделенные объекты на один уровень вверх относительно ближайшего верхнего объекта
|
|
@@ -2325,20 +2324,20 @@ class H {
|
|
|
2325
2324
|
* @private
|
|
2326
2325
|
*/
|
|
2327
2326
|
static _moveSelectionForward(e, t) {
|
|
2328
|
-
for (var a = e.getObjects(), r = t.getObjects(), n = r.map((l) => a.indexOf(l)),
|
|
2327
|
+
for (var a = e.getObjects(), r = t.getObjects(), n = r.map((l) => a.indexOf(l)), i = -1, s = function(d) {
|
|
2329
2328
|
var h = a[d];
|
|
2330
2329
|
if (!r.includes(h) && n.some((g) => d > g))
|
|
2331
|
-
return
|
|
2332
|
-
}, c = 0; c < a.length && !s(c); c
|
|
2330
|
+
return i = d, 1;
|
|
2331
|
+
}, c = 0; c < a.length && !s(c); c += 1)
|
|
2333
2332
|
;
|
|
2334
|
-
if (
|
|
2333
|
+
if (i !== -1) {
|
|
2335
2334
|
var u = r.map((l) => ({
|
|
2336
2335
|
obj: l,
|
|
2337
2336
|
index: a.indexOf(l)
|
|
2338
2337
|
})).sort((l, d) => d.index - l.index);
|
|
2339
2338
|
u.forEach((l) => {
|
|
2340
2339
|
var d = a.indexOf(l.obj);
|
|
2341
|
-
d <
|
|
2340
|
+
d < i && (e.moveObjectTo(l.obj, i), i = d);
|
|
2342
2341
|
});
|
|
2343
2342
|
}
|
|
2344
2343
|
}
|
|
@@ -2350,68 +2349,68 @@ class H {
|
|
|
2350
2349
|
* @private
|
|
2351
2350
|
*/
|
|
2352
2351
|
static _moveSelectionBackwards(e, t) {
|
|
2353
|
-
for (var a = e.getObjects(), r = t.getObjects(), n = Math.min(...r.map((s) => a.indexOf(s))),
|
|
2354
|
-
e.moveObjectTo(r[
|
|
2352
|
+
for (var a = e.getObjects(), r = t.getObjects(), n = Math.min(...r.map((s) => a.indexOf(s))), i = r.length - 1; i >= 0; i -= 1)
|
|
2353
|
+
e.moveObjectTo(r[i], n - 1);
|
|
2355
2354
|
}
|
|
2356
2355
|
}
|
|
2357
|
-
var
|
|
2358
|
-
function je(
|
|
2359
|
-
var t = Object.keys(
|
|
2356
|
+
var pt = ["id", "left", "top", "width", "height", "fill"], bt = ["id", "left", "top", "radius", "fill"], It = ["id", "left", "top", "width", "height", "fill"];
|
|
2357
|
+
function je(o, e) {
|
|
2358
|
+
var t = Object.keys(o);
|
|
2360
2359
|
if (Object.getOwnPropertySymbols) {
|
|
2361
|
-
var a = Object.getOwnPropertySymbols(
|
|
2360
|
+
var a = Object.getOwnPropertySymbols(o);
|
|
2362
2361
|
e && (a = a.filter(function(r) {
|
|
2363
|
-
return Object.getOwnPropertyDescriptor(
|
|
2362
|
+
return Object.getOwnPropertyDescriptor(o, r).enumerable;
|
|
2364
2363
|
})), t.push.apply(t, a);
|
|
2365
2364
|
}
|
|
2366
2365
|
return t;
|
|
2367
2366
|
}
|
|
2368
|
-
function
|
|
2367
|
+
function V(o) {
|
|
2369
2368
|
for (var e = 1; e < arguments.length; e++) {
|
|
2370
2369
|
var t = arguments[e] != null ? arguments[e] : {};
|
|
2371
2370
|
e % 2 ? je(Object(t), !0).forEach(function(a) {
|
|
2372
|
-
|
|
2373
|
-
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(
|
|
2374
|
-
Object.defineProperty(
|
|
2371
|
+
St(o, a, t[a]);
|
|
2372
|
+
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(o, Object.getOwnPropertyDescriptors(t)) : je(Object(t)).forEach(function(a) {
|
|
2373
|
+
Object.defineProperty(o, a, Object.getOwnPropertyDescriptor(t, a));
|
|
2375
2374
|
});
|
|
2376
2375
|
}
|
|
2377
|
-
return
|
|
2376
|
+
return o;
|
|
2378
2377
|
}
|
|
2379
|
-
function
|
|
2380
|
-
return (e =
|
|
2378
|
+
function St(o, e, t) {
|
|
2379
|
+
return (e = At(e)) in o ? Object.defineProperty(o, e, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : o[e] = t, o;
|
|
2381
2380
|
}
|
|
2382
|
-
function
|
|
2383
|
-
var e =
|
|
2381
|
+
function At(o) {
|
|
2382
|
+
var e = wt(o, "string");
|
|
2384
2383
|
return typeof e == "symbol" ? e : e + "";
|
|
2385
2384
|
}
|
|
2386
|
-
function
|
|
2387
|
-
if (typeof
|
|
2388
|
-
var t =
|
|
2385
|
+
function wt(o, e) {
|
|
2386
|
+
if (typeof o != "object" || !o) return o;
|
|
2387
|
+
var t = o[Symbol.toPrimitive];
|
|
2389
2388
|
if (t !== void 0) {
|
|
2390
|
-
var a = t.call(
|
|
2389
|
+
var a = t.call(o, e);
|
|
2391
2390
|
if (typeof a != "object") return a;
|
|
2392
2391
|
throw new TypeError("@@toPrimitive must return a primitive value.");
|
|
2393
2392
|
}
|
|
2394
|
-
return (e === "string" ? String : Number)(
|
|
2393
|
+
return (e === "string" ? String : Number)(o);
|
|
2395
2394
|
}
|
|
2396
|
-
function
|
|
2397
|
-
if (
|
|
2398
|
-
var t, a, r =
|
|
2395
|
+
function F(o, e) {
|
|
2396
|
+
if (o == null) return {};
|
|
2397
|
+
var t, a, r = Nt(o, e);
|
|
2399
2398
|
if (Object.getOwnPropertySymbols) {
|
|
2400
|
-
var n = Object.getOwnPropertySymbols(
|
|
2401
|
-
for (a = 0; a < n.length; a++) t = n[a], e.indexOf(t) === -1 && {}.propertyIsEnumerable.call(
|
|
2399
|
+
var n = Object.getOwnPropertySymbols(o);
|
|
2400
|
+
for (a = 0; a < n.length; a++) t = n[a], e.indexOf(t) === -1 && {}.propertyIsEnumerable.call(o, t) && (r[t] = o[t]);
|
|
2402
2401
|
}
|
|
2403
2402
|
return r;
|
|
2404
2403
|
}
|
|
2405
|
-
function
|
|
2406
|
-
if (
|
|
2404
|
+
function Nt(o, e) {
|
|
2405
|
+
if (o == null) return {};
|
|
2407
2406
|
var t = {};
|
|
2408
|
-
for (var a in
|
|
2407
|
+
for (var a in o) if ({}.hasOwnProperty.call(o, a)) {
|
|
2409
2408
|
if (e.indexOf(a) !== -1) continue;
|
|
2410
|
-
t[a] =
|
|
2409
|
+
t[a] = o[a];
|
|
2411
2410
|
}
|
|
2412
2411
|
return t;
|
|
2413
2412
|
}
|
|
2414
|
-
class
|
|
2413
|
+
class Dt {
|
|
2415
2414
|
/**
|
|
2416
2415
|
* @param {object} options
|
|
2417
2416
|
* @param {ImageEditor} options.editor - экземпляр редактора с доступом к canvas
|
|
@@ -2443,19 +2442,19 @@ class Ct {
|
|
|
2443
2442
|
left: a,
|
|
2444
2443
|
top: r,
|
|
2445
2444
|
width: n = 100,
|
|
2446
|
-
height:
|
|
2445
|
+
height: i = 100,
|
|
2447
2446
|
fill: s = "blue"
|
|
2448
|
-
} = e, c =
|
|
2447
|
+
} = e, c = F(e, pt), {
|
|
2449
2448
|
withoutSelection: u,
|
|
2450
2449
|
withoutAdding: l
|
|
2451
2450
|
} = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, {
|
|
2452
2451
|
canvas: d
|
|
2453
|
-
} = this.editor, h = new
|
|
2452
|
+
} = this.editor, h = new xe(V({
|
|
2454
2453
|
id: t,
|
|
2455
2454
|
left: a,
|
|
2456
2455
|
top: r,
|
|
2457
2456
|
width: n,
|
|
2458
|
-
height:
|
|
2457
|
+
height: i,
|
|
2459
2458
|
fill: s
|
|
2460
2459
|
}, c));
|
|
2461
2460
|
return !a && !r && d.centerObject(h), l || (d.add(h), u || d.setActiveObject(h), d.renderAll()), h;
|
|
@@ -2480,17 +2479,17 @@ class Ct {
|
|
|
2480
2479
|
left: a,
|
|
2481
2480
|
top: r,
|
|
2482
2481
|
radius: n = 50,
|
|
2483
|
-
fill:
|
|
2484
|
-
} = e, s =
|
|
2482
|
+
fill: i = "green"
|
|
2483
|
+
} = e, s = F(e, bt), {
|
|
2485
2484
|
withoutSelection: c,
|
|
2486
2485
|
withoutAdding: u
|
|
2487
2486
|
} = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, {
|
|
2488
2487
|
canvas: l
|
|
2489
|
-
} = this.editor, d = new
|
|
2488
|
+
} = this.editor, d = new Be(V({
|
|
2490
2489
|
id: t,
|
|
2491
2490
|
left: a,
|
|
2492
2491
|
top: r,
|
|
2493
|
-
fill:
|
|
2492
|
+
fill: i,
|
|
2494
2493
|
radius: n
|
|
2495
2494
|
}, s));
|
|
2496
2495
|
return !a && !r && l.centerObject(d), u || (l.add(d), c || l.setActiveObject(d), l.renderAll()), d;
|
|
@@ -2516,48 +2515,48 @@ class Ct {
|
|
|
2516
2515
|
left: a,
|
|
2517
2516
|
top: r,
|
|
2518
2517
|
width: n = 100,
|
|
2519
|
-
height:
|
|
2518
|
+
height: i = 100,
|
|
2520
2519
|
fill: s = "yellow"
|
|
2521
|
-
} = e, c =
|
|
2520
|
+
} = e, c = F(e, It), {
|
|
2522
2521
|
withoutSelection: u,
|
|
2523
2522
|
withoutAdding: l
|
|
2524
2523
|
} = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, {
|
|
2525
2524
|
canvas: d
|
|
2526
|
-
} = this.editor, h = new
|
|
2525
|
+
} = this.editor, h = new Ze(V({
|
|
2527
2526
|
id: t,
|
|
2528
2527
|
left: a,
|
|
2529
2528
|
top: r,
|
|
2530
2529
|
fill: s,
|
|
2531
2530
|
width: n,
|
|
2532
|
-
height:
|
|
2531
|
+
height: i
|
|
2533
2532
|
}, c));
|
|
2534
2533
|
return !a && !r && d.centerObject(h), l || (d.add(h), u || d.setActiveObject(h), d.renderAll()), h;
|
|
2535
2534
|
}
|
|
2536
2535
|
}
|
|
2537
|
-
function ye(
|
|
2536
|
+
function ye(o, e, t, a, r, n, i) {
|
|
2538
2537
|
try {
|
|
2539
|
-
var s =
|
|
2538
|
+
var s = o[n](i), c = s.value;
|
|
2540
2539
|
} catch (u) {
|
|
2541
2540
|
return void t(u);
|
|
2542
2541
|
}
|
|
2543
2542
|
s.done ? e(c) : Promise.resolve(c).then(a, r);
|
|
2544
2543
|
}
|
|
2545
|
-
function pe(
|
|
2544
|
+
function pe(o) {
|
|
2546
2545
|
return function() {
|
|
2547
2546
|
var e = this, t = arguments;
|
|
2548
2547
|
return new Promise(function(a, r) {
|
|
2549
|
-
var n =
|
|
2550
|
-
function
|
|
2551
|
-
ye(n, a, r,
|
|
2548
|
+
var n = o.apply(e, t);
|
|
2549
|
+
function i(c) {
|
|
2550
|
+
ye(n, a, r, i, s, "next", c);
|
|
2552
2551
|
}
|
|
2553
2552
|
function s(c) {
|
|
2554
|
-
ye(n, a, r,
|
|
2553
|
+
ye(n, a, r, i, s, "throw", c);
|
|
2555
2554
|
}
|
|
2556
|
-
|
|
2555
|
+
i(void 0);
|
|
2557
2556
|
});
|
|
2558
2557
|
};
|
|
2559
2558
|
}
|
|
2560
|
-
class
|
|
2559
|
+
class Ct {
|
|
2561
2560
|
/**
|
|
2562
2561
|
* @param {object} options
|
|
2563
2562
|
* @param {ImageEditor} options.editor - экземпляр редактора с доступом к canvas
|
|
@@ -2596,10 +2595,10 @@ class Lt {
|
|
|
2596
2595
|
});
|
|
2597
2596
|
return;
|
|
2598
2597
|
}
|
|
2599
|
-
var n = r.toCanvasElement(),
|
|
2598
|
+
var n = r.toCanvasElement(), i = yield new Promise((u) => {
|
|
2600
2599
|
n.toBlob(u);
|
|
2601
2600
|
}), s = new ClipboardItem({
|
|
2602
|
-
[
|
|
2601
|
+
[i.type]: i
|
|
2603
2602
|
});
|
|
2604
2603
|
yield navigator.clipboard.write([s]), t.fire("editor:object-copied", {
|
|
2605
2604
|
object: r
|
|
@@ -2638,7 +2637,7 @@ class Lt {
|
|
|
2638
2637
|
})();
|
|
2639
2638
|
}
|
|
2640
2639
|
}
|
|
2641
|
-
class
|
|
2640
|
+
class Lt {
|
|
2642
2641
|
/**
|
|
2643
2642
|
* @param {object} options
|
|
2644
2643
|
* @param {ImageEditor} options.editor - экземпляр редактора с доступом к canvas
|
|
@@ -2665,8 +2664,8 @@ class Ot {
|
|
|
2665
2664
|
} = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, {
|
|
2666
2665
|
canvas: r,
|
|
2667
2666
|
historyManager: n
|
|
2668
|
-
} = this.editor,
|
|
2669
|
-
if (!(!
|
|
2667
|
+
} = this.editor, i = e || r.getActiveObject();
|
|
2668
|
+
if (!(!i || i.locked)) {
|
|
2670
2669
|
var s = {
|
|
2671
2670
|
lockMovementX: !0,
|
|
2672
2671
|
lockMovementY: !0,
|
|
@@ -2677,12 +2676,12 @@ class Ot {
|
|
|
2677
2676
|
lockSkewingY: !0,
|
|
2678
2677
|
locked: !0
|
|
2679
2678
|
};
|
|
2680
|
-
|
|
2681
|
-
var c = !t && ["activeselection", "group"].includes(
|
|
2682
|
-
c &&
|
|
2679
|
+
i.set(s);
|
|
2680
|
+
var c = !t && ["activeselection", "group"].includes(i.type);
|
|
2681
|
+
c && i.getObjects().forEach((u) => {
|
|
2683
2682
|
u.set(s);
|
|
2684
2683
|
}), r.renderAll(), a || n.saveState(), r.fire("editor:object-locked", {
|
|
2685
|
-
object:
|
|
2684
|
+
object: i
|
|
2686
2685
|
});
|
|
2687
2686
|
}
|
|
2688
2687
|
}
|
|
@@ -2703,7 +2702,7 @@ class Ot {
|
|
|
2703
2702
|
historyManager: r
|
|
2704
2703
|
} = this.editor, n = e || a.getActiveObject();
|
|
2705
2704
|
if (n) {
|
|
2706
|
-
var
|
|
2705
|
+
var i = {
|
|
2707
2706
|
lockMovementX: !1,
|
|
2708
2707
|
lockMovementY: !1,
|
|
2709
2708
|
lockRotation: !1,
|
|
@@ -2713,15 +2712,15 @@ class Ot {
|
|
|
2713
2712
|
lockSkewingY: !1,
|
|
2714
2713
|
locked: !1
|
|
2715
2714
|
};
|
|
2716
|
-
n.set(
|
|
2717
|
-
s.set(
|
|
2715
|
+
n.set(i), ["activeselection", "group"].includes(n.type) && n.getObjects().forEach((s) => {
|
|
2716
|
+
s.set(i);
|
|
2718
2717
|
}), a.renderAll(), t || r.saveState(), a.fire("editor:object-unlocked", {
|
|
2719
2718
|
object: n
|
|
2720
2719
|
});
|
|
2721
2720
|
}
|
|
2722
2721
|
}
|
|
2723
2722
|
}
|
|
2724
|
-
class
|
|
2723
|
+
class Ot {
|
|
2725
2724
|
/**
|
|
2726
2725
|
* @param {object} options
|
|
2727
2726
|
* @param {ImageEditor} options.editor - экземпляр редактора с доступом к canvas
|
|
@@ -2750,8 +2749,8 @@ class Tt {
|
|
|
2750
2749
|
r.suspendHistory();
|
|
2751
2750
|
var n = e || a.getActiveObject();
|
|
2752
2751
|
if (n && n.type === "activeselection") {
|
|
2753
|
-
var
|
|
2754
|
-
|
|
2752
|
+
var i = n.getObjects(), s = new ze(i);
|
|
2753
|
+
i.forEach((c) => a.remove(c)), s.set("id", "".concat(s.type, "-").concat(I())), a.add(s), a.setActiveObject(s), a.renderAll(), r.resumeHistory(), t || r.saveState(), a.fire("editor:objects-grouped");
|
|
2755
2754
|
}
|
|
2756
2755
|
}
|
|
2757
2756
|
/**
|
|
@@ -2772,16 +2771,16 @@ class Tt {
|
|
|
2772
2771
|
r.suspendHistory();
|
|
2773
2772
|
var n = e || a.getActiveObject();
|
|
2774
2773
|
if (!(!n || n.type !== "group")) {
|
|
2775
|
-
var
|
|
2776
|
-
a.remove(n),
|
|
2777
|
-
var s = new Z(
|
|
2774
|
+
var i = n.removeAll();
|
|
2775
|
+
a.remove(n), i.forEach((c) => a.add(c));
|
|
2776
|
+
var s = new Z(i, {
|
|
2778
2777
|
canvas: a
|
|
2779
2778
|
});
|
|
2780
2779
|
a.setActiveObject(s), a.renderAll(), r.resumeHistory(), t || r.saveState(), a.fire("editor:objects-ungrouped");
|
|
2781
2780
|
}
|
|
2782
2781
|
}
|
|
2783
2782
|
}
|
|
2784
|
-
class
|
|
2783
|
+
class Tt {
|
|
2785
2784
|
/**
|
|
2786
2785
|
* @param {object} options
|
|
2787
2786
|
* @param {ImageEditor} options.editor - экземпляр редактора с доступом к canvas
|
|
@@ -2803,19 +2802,19 @@ class Et {
|
|
|
2803
2802
|
objectLockManager: a
|
|
2804
2803
|
} = this.editor;
|
|
2805
2804
|
e.discardActiveObject();
|
|
2806
|
-
var r = t.getObjects(), n = r.some((s) => s.locked),
|
|
2805
|
+
var r = t.getObjects(), n = r.some((s) => s.locked), i = r.length > 1 ? new Z(t.getObjects(), {
|
|
2807
2806
|
canvas: e
|
|
2808
2807
|
}) : r[0];
|
|
2809
2808
|
n && a.lockObject({
|
|
2810
|
-
object:
|
|
2809
|
+
object: i,
|
|
2811
2810
|
skipInnerObjects: !0,
|
|
2812
2811
|
withoutSave: !0
|
|
2813
|
-
}), e.setActiveObject(
|
|
2814
|
-
selected:
|
|
2812
|
+
}), e.setActiveObject(i), e.requestRenderAll(), e.fire("editor:all-objects-selected", {
|
|
2813
|
+
selected: i
|
|
2815
2814
|
});
|
|
2816
2815
|
}
|
|
2817
2816
|
}
|
|
2818
|
-
class
|
|
2817
|
+
class Et {
|
|
2819
2818
|
/**
|
|
2820
2819
|
* @param {object} options
|
|
2821
2820
|
* @param {ImageEditor} options.editor - экземпляр редактора с доступом к canvas
|
|
@@ -2840,40 +2839,40 @@ class kt {
|
|
|
2840
2839
|
} = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, {
|
|
2841
2840
|
canvas: a,
|
|
2842
2841
|
historyManager: r
|
|
2843
|
-
} = this.editor, n = (e || a.getActiveObjects()).filter((
|
|
2844
|
-
n != null && n.length && (r.suspendHistory(), n.forEach((
|
|
2845
|
-
if (
|
|
2846
|
-
this.ungroup(
|
|
2842
|
+
} = this.editor, n = (e || a.getActiveObjects()).filter((i) => !i.locked);
|
|
2843
|
+
n != null && n.length && (r.suspendHistory(), n.forEach((i) => {
|
|
2844
|
+
if (i.type === "group" && i.format !== "svg") {
|
|
2845
|
+
this.ungroup(i), this.deleteSelectedObjects();
|
|
2847
2846
|
return;
|
|
2848
2847
|
}
|
|
2849
|
-
a.remove(
|
|
2848
|
+
a.remove(i);
|
|
2850
2849
|
}), a.discardActiveObject(), a.renderAll(), r.resumeHistory(), t || r.saveState(), a.fire("editor:objects-deleted"));
|
|
2851
2850
|
}
|
|
2852
2851
|
}
|
|
2853
|
-
function be(
|
|
2852
|
+
function be(o, e, t, a, r, n, i) {
|
|
2854
2853
|
try {
|
|
2855
|
-
var s =
|
|
2854
|
+
var s = o[n](i), c = s.value;
|
|
2856
2855
|
} catch (u) {
|
|
2857
2856
|
return void t(u);
|
|
2858
2857
|
}
|
|
2859
2858
|
s.done ? e(c) : Promise.resolve(c).then(a, r);
|
|
2860
2859
|
}
|
|
2861
|
-
function
|
|
2860
|
+
function kt(o) {
|
|
2862
2861
|
return function() {
|
|
2863
2862
|
var e = this, t = arguments;
|
|
2864
2863
|
return new Promise(function(a, r) {
|
|
2865
|
-
var n =
|
|
2866
|
-
function
|
|
2867
|
-
be(n, a, r,
|
|
2864
|
+
var n = o.apply(e, t);
|
|
2865
|
+
function i(c) {
|
|
2866
|
+
be(n, a, r, i, s, "next", c);
|
|
2868
2867
|
}
|
|
2869
2868
|
function s(c) {
|
|
2870
|
-
be(n, a, r,
|
|
2869
|
+
be(n, a, r, i, s, "throw", c);
|
|
2871
2870
|
}
|
|
2872
|
-
|
|
2871
|
+
i(void 0);
|
|
2873
2872
|
});
|
|
2874
2873
|
};
|
|
2875
2874
|
}
|
|
2876
|
-
class
|
|
2875
|
+
class te {
|
|
2877
2876
|
constructor(e) {
|
|
2878
2877
|
var t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
|
|
2879
2878
|
this.options = t;
|
|
@@ -2882,17 +2881,17 @@ class Bt {
|
|
|
2882
2881
|
minZoom: r,
|
|
2883
2882
|
maxZoom: n
|
|
2884
2883
|
} = t;
|
|
2885
|
-
this.containerId = e, this.editorId = "".concat(e, "-").concat(I()), this.clipboard = null, this.defaultZoom = a, this.minZoom = r ||
|
|
2884
|
+
this.containerId = e, this.editorId = "".concat(e, "-").concat(I()), this.clipboard = null, this.defaultZoom = a, this.minZoom = r || gt, this.maxZoom = n || vt, this.init();
|
|
2886
2885
|
}
|
|
2887
2886
|
init() {
|
|
2888
2887
|
var e = this;
|
|
2889
|
-
return
|
|
2888
|
+
return kt(function* () {
|
|
2890
2889
|
var {
|
|
2891
2890
|
editorContainerWidth: t,
|
|
2892
2891
|
editorContainerHeight: a,
|
|
2893
2892
|
canvasWrapperWidth: r,
|
|
2894
2893
|
canvasWrapperHeight: n,
|
|
2895
|
-
canvasCSSWidth:
|
|
2894
|
+
canvasCSSWidth: i,
|
|
2896
2895
|
canvasCSSHeight: s,
|
|
2897
2896
|
initialImage: c,
|
|
2898
2897
|
initialStateJSON: u,
|
|
@@ -2903,43 +2902,43 @@ class Bt {
|
|
|
2903
2902
|
editor: e
|
|
2904
2903
|
}), e.toolbar = new lt({
|
|
2905
2904
|
editor: e
|
|
2906
|
-
}), e.transformManager = new
|
|
2905
|
+
}), e.transformManager = new jt({
|
|
2907
2906
|
editor: e
|
|
2908
|
-
}), e.canvasManager = new
|
|
2907
|
+
}), e.canvasManager = new Mt({
|
|
2909
2908
|
editor: e
|
|
2910
2909
|
}), e.imageManager = new L({
|
|
2911
2910
|
editor: e
|
|
2912
|
-
}), e.layerManager = new
|
|
2911
|
+
}), e.layerManager = new Y({
|
|
2913
2912
|
editor: e
|
|
2914
|
-
}), e.shapeManager = new
|
|
2913
|
+
}), e.shapeManager = new Dt({
|
|
2915
2914
|
editor: e
|
|
2916
|
-
}), e.interactionBlocker = new
|
|
2915
|
+
}), e.interactionBlocker = new yt({
|
|
2917
2916
|
editor: e
|
|
2918
|
-
}), e.clipboardManager = new
|
|
2917
|
+
}), e.clipboardManager = new Ct({
|
|
2919
2918
|
editor: e
|
|
2920
|
-
}), e.objectLockManager = new
|
|
2919
|
+
}), e.objectLockManager = new Lt({
|
|
2921
2920
|
editor: e
|
|
2922
|
-
}), e.groupingManager = new
|
|
2921
|
+
}), e.groupingManager = new Ot({
|
|
2923
2922
|
editor: e
|
|
2924
|
-
}), e.selectionManager = new
|
|
2923
|
+
}), e.selectionManager = new Tt({
|
|
2925
2924
|
editor: e
|
|
2926
|
-
}), e.deletionManager = new
|
|
2925
|
+
}), e.deletionManager = new Et({
|
|
2927
2926
|
editor: e
|
|
2928
2927
|
}), e._createMonageArea(), e._createClippingArea(), e.listeners = new B({
|
|
2929
2928
|
editor: e,
|
|
2930
2929
|
options: e.options
|
|
2931
|
-
}), e.canvasManager.setEditorContainerWidth(t), e.canvasManager.setEditorContainerHeight(a), e.canvasManager.setCanvasWrapperWidth(r), e.canvasManager.setCanvasWrapperHeight(n), e.canvasManager.setCanvasCSSWidth(
|
|
2930
|
+
}), e.canvasManager.setEditorContainerWidth(t), e.canvasManager.setEditorContainerHeight(a), e.canvasManager.setCanvasWrapperWidth(r), e.canvasManager.setCanvasWrapperHeight(n), e.canvasManager.setCanvasCSSWidth(i), e.canvasManager.setCanvasCSSHeight(s), c != null && c.source) {
|
|
2932
2931
|
var {
|
|
2933
2932
|
source: h,
|
|
2934
2933
|
scale: g = "image-".concat(l),
|
|
2935
|
-
withoutSave:
|
|
2936
|
-
contentType:
|
|
2934
|
+
withoutSave: v = !0,
|
|
2935
|
+
contentType: m
|
|
2937
2936
|
} = c;
|
|
2938
2937
|
yield e.imageManager.importImage({
|
|
2939
2938
|
source: h,
|
|
2940
2939
|
scale: g,
|
|
2941
|
-
withoutSave:
|
|
2942
|
-
contentType:
|
|
2940
|
+
withoutSave: v,
|
|
2941
|
+
contentType: m
|
|
2943
2942
|
});
|
|
2944
2943
|
} else
|
|
2945
2944
|
e.canvasManager.setDefaultScale({
|
|
@@ -2961,7 +2960,7 @@ class Bt {
|
|
|
2961
2960
|
this.montageArea = this.shapeManager.addRectangle({
|
|
2962
2961
|
width: e,
|
|
2963
2962
|
height: t,
|
|
2964
|
-
fill:
|
|
2963
|
+
fill: te._createMosaicPattern(),
|
|
2965
2964
|
stroke: null,
|
|
2966
2965
|
strokeWidth: 0,
|
|
2967
2966
|
selectable: !1,
|
|
@@ -3011,8 +3010,21 @@ class Bt {
|
|
|
3011
3010
|
destroy() {
|
|
3012
3011
|
this.listeners.destroy(), this.toolbar.destroy(), this.canvas.dispose(), this.workerManager.worker.terminate(), this.imageManager.revokeBlobUrls();
|
|
3013
3012
|
}
|
|
3013
|
+
/**
|
|
3014
|
+
* Создает паттерн мозаики.
|
|
3015
|
+
* @returns {object} паттерн мозаики
|
|
3016
|
+
*/
|
|
3017
|
+
static _createMosaicPattern() {
|
|
3018
|
+
var e = document.createElement("canvas");
|
|
3019
|
+
e.width = 20, e.height = 20;
|
|
3020
|
+
var t = e.getContext("2d");
|
|
3021
|
+
return t.fillStyle = "#ddd", t.fillRect(0, 0, 40, 40), t.fillStyle = "#ccc", t.fillRect(0, 0, 10, 10), t.fillRect(10, 10, 10, 10), new Ue({
|
|
3022
|
+
source: e,
|
|
3023
|
+
repeat: "repeat"
|
|
3024
|
+
});
|
|
3025
|
+
}
|
|
3014
3026
|
}
|
|
3015
|
-
const
|
|
3027
|
+
const xt = {
|
|
3016
3028
|
// Cохраняют ли объекты свой текущий порядок (z-index) при выделении
|
|
3017
3029
|
preserveObjectStacking: !0,
|
|
3018
3030
|
// Возможность взаимодействия с объектом за пределами монтажной области
|
|
@@ -3119,56 +3131,56 @@ const Zt = {
|
|
|
3119
3131
|
// Сброс параметров объекта по двойному клику
|
|
3120
3132
|
resetObjectFitByDoubleClick: !0
|
|
3121
3133
|
};
|
|
3122
|
-
function Ie(
|
|
3123
|
-
var t = Object.keys(
|
|
3134
|
+
function Ie(o, e) {
|
|
3135
|
+
var t = Object.keys(o);
|
|
3124
3136
|
if (Object.getOwnPropertySymbols) {
|
|
3125
|
-
var a = Object.getOwnPropertySymbols(
|
|
3137
|
+
var a = Object.getOwnPropertySymbols(o);
|
|
3126
3138
|
e && (a = a.filter(function(r) {
|
|
3127
|
-
return Object.getOwnPropertyDescriptor(
|
|
3139
|
+
return Object.getOwnPropertyDescriptor(o, r).enumerable;
|
|
3128
3140
|
})), t.push.apply(t, a);
|
|
3129
3141
|
}
|
|
3130
3142
|
return t;
|
|
3131
3143
|
}
|
|
3132
|
-
function Se(
|
|
3144
|
+
function Se(o) {
|
|
3133
3145
|
for (var e = 1; e < arguments.length; e++) {
|
|
3134
3146
|
var t = arguments[e] != null ? arguments[e] : {};
|
|
3135
3147
|
e % 2 ? Ie(Object(t), !0).forEach(function(a) {
|
|
3136
|
-
|
|
3137
|
-
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(
|
|
3138
|
-
Object.defineProperty(
|
|
3148
|
+
Bt(o, a, t[a]);
|
|
3149
|
+
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(o, Object.getOwnPropertyDescriptors(t)) : Ie(Object(t)).forEach(function(a) {
|
|
3150
|
+
Object.defineProperty(o, a, Object.getOwnPropertyDescriptor(t, a));
|
|
3139
3151
|
});
|
|
3140
3152
|
}
|
|
3141
|
-
return
|
|
3153
|
+
return o;
|
|
3142
3154
|
}
|
|
3143
|
-
function
|
|
3144
|
-
return (e =
|
|
3155
|
+
function Bt(o, e, t) {
|
|
3156
|
+
return (e = Zt(e)) in o ? Object.defineProperty(o, e, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : o[e] = t, o;
|
|
3145
3157
|
}
|
|
3146
|
-
function
|
|
3147
|
-
var e =
|
|
3158
|
+
function Zt(o) {
|
|
3159
|
+
var e = zt(o, "string");
|
|
3148
3160
|
return typeof e == "symbol" ? e : e + "";
|
|
3149
3161
|
}
|
|
3150
|
-
function
|
|
3151
|
-
if (typeof
|
|
3152
|
-
var t =
|
|
3162
|
+
function zt(o, e) {
|
|
3163
|
+
if (typeof o != "object" || !o) return o;
|
|
3164
|
+
var t = o[Symbol.toPrimitive];
|
|
3153
3165
|
if (t !== void 0) {
|
|
3154
|
-
var a = t.call(
|
|
3166
|
+
var a = t.call(o, e);
|
|
3155
3167
|
if (typeof a != "object") return a;
|
|
3156
3168
|
throw new TypeError("@@toPrimitive must return a primitive value.");
|
|
3157
3169
|
}
|
|
3158
|
-
return (e === "string" ? String : Number)(
|
|
3170
|
+
return (e === "string" ? String : Number)(o);
|
|
3159
3171
|
}
|
|
3160
|
-
function
|
|
3161
|
-
var e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, t = Se(Se({},
|
|
3172
|
+
function Yt(o) {
|
|
3173
|
+
var e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, t = Se(Se({}, xt), e), a = document.getElementById(o);
|
|
3162
3174
|
if (!a)
|
|
3163
|
-
return Promise.reject(new Error('Контейнер с ID "'.concat(
|
|
3175
|
+
return Promise.reject(new Error('Контейнер с ID "'.concat(o, '" не найден.')));
|
|
3164
3176
|
var r = document.createElement("canvas");
|
|
3165
|
-
return r.id = "".concat(
|
|
3177
|
+
return r.id = "".concat(o, "-canvas"), a.appendChild(r), t.editorContainer = a, new Promise((n) => {
|
|
3166
3178
|
t._onReadyCallback = n;
|
|
3167
|
-
var
|
|
3168
|
-
window[
|
|
3179
|
+
var i = new te(r.id, t);
|
|
3180
|
+
window[o] = i;
|
|
3169
3181
|
});
|
|
3170
3182
|
}
|
|
3171
3183
|
export {
|
|
3172
|
-
|
|
3184
|
+
Yt as default
|
|
3173
3185
|
};
|
|
3174
3186
|
//# sourceMappingURL=main.js.map
|