@leafer-draw/worker 1.12.1 → 1.12.2
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/worker.cjs +5 -3
- package/dist/worker.esm.js +5 -3
- package/dist/worker.esm.min.js +1 -1
- package/dist/worker.esm.min.js.map +1 -1
- package/dist/worker.js +48 -31
- package/dist/worker.min.cjs +1 -1
- package/dist/worker.min.cjs.map +1 -1
- package/dist/worker.min.js +1 -1
- package/dist/worker.min.js.map +1 -1
- package/dist/worker.module.js +49 -31
- package/dist/worker.module.min.js +1 -1
- package/dist/worker.module.min.js.map +1 -1
- package/package.json +9 -9
package/dist/worker.module.js
CHANGED
|
@@ -461,7 +461,7 @@ function getMatrixData() {
|
|
|
461
461
|
|
|
462
462
|
const {sin: sin$5, cos: cos$5, acos: acos, sqrt: sqrt$3} = Math;
|
|
463
463
|
|
|
464
|
-
const {float: float$
|
|
464
|
+
const {float: float$2} = MathHelper;
|
|
465
465
|
|
|
466
466
|
const tempPoint$3 = {};
|
|
467
467
|
|
|
@@ -712,12 +712,12 @@ const MatrixHelper = {
|
|
|
712
712
|
const cosR = c / scaleY;
|
|
713
713
|
rotation = PI_2 - (d > 0 ? acos(-cosR) : -acos(cosR));
|
|
714
714
|
}
|
|
715
|
-
const cosR = float$
|
|
715
|
+
const cosR = float$2(cos$5(rotation));
|
|
716
716
|
const sinR = sin$5(rotation);
|
|
717
|
-
scaleX = float$
|
|
718
|
-
skewX = cosR ? float$
|
|
719
|
-
skewY = cosR ? float$
|
|
720
|
-
rotation = float$
|
|
717
|
+
scaleX = float$2(scaleX), scaleY = float$2(scaleY);
|
|
718
|
+
skewX = cosR ? float$2((c / scaleY + sinR) / cosR / OneRadian, 9) : 0;
|
|
719
|
+
skewY = cosR ? float$2((b / scaleX - sinR) / cosR / OneRadian, 9) : 0;
|
|
720
|
+
rotation = float$2(rotation / OneRadian);
|
|
721
721
|
} else {
|
|
722
722
|
scaleX = a;
|
|
723
723
|
scaleY = d;
|
|
@@ -761,6 +761,8 @@ const MatrixHelper = {
|
|
|
761
761
|
|
|
762
762
|
const M$6 = MatrixHelper;
|
|
763
763
|
|
|
764
|
+
const {float: float$1} = MathHelper;
|
|
765
|
+
|
|
764
766
|
const {toInnerPoint: toInnerPoint$2, toOuterPoint: toOuterPoint$3} = MatrixHelper;
|
|
765
767
|
|
|
766
768
|
const {sin: sin$4, cos: cos$4, abs: abs$4, sqrt: sqrt$2, atan2: atan2$2, min: min$1, round: round$2} = Math;
|
|
@@ -828,6 +830,11 @@ const PointHelper = {
|
|
|
828
830
|
P$5.toInnerRadiusPointOf(t, matrix, temp);
|
|
829
831
|
return temp;
|
|
830
832
|
},
|
|
833
|
+
copyRadiusPoint(t, point, x, y) {
|
|
834
|
+
copy$9(t, point);
|
|
835
|
+
setRadius(t, x, y);
|
|
836
|
+
return t;
|
|
837
|
+
},
|
|
831
838
|
toInnerRadiusPointOf(t, matrix, to) {
|
|
832
839
|
to || (to = t);
|
|
833
840
|
toInnerPoint$2(matrix, t, to);
|
|
@@ -895,7 +902,7 @@ const PointHelper = {
|
|
|
895
902
|
return points;
|
|
896
903
|
},
|
|
897
904
|
isSame(t, point) {
|
|
898
|
-
return t.x === point.x && t.y === point.y;
|
|
905
|
+
return float$1(t.x) === float$1(point.x) && float$1(t.y) === float$1(point.y);
|
|
899
906
|
},
|
|
900
907
|
reset(t) {
|
|
901
908
|
P$5.reset(t);
|
|
@@ -904,7 +911,7 @@ const PointHelper = {
|
|
|
904
911
|
|
|
905
912
|
const P$5 = PointHelper;
|
|
906
913
|
|
|
907
|
-
const {getDistanceFrom: getDistanceFrom, copy: copy$9, getAtan2: getAtan2} = P$5;
|
|
914
|
+
const {getDistanceFrom: getDistanceFrom, copy: copy$9, setRadius: setRadius, getAtan2: getAtan2} = P$5;
|
|
908
915
|
|
|
909
916
|
class Point {
|
|
910
917
|
constructor(x, y) {
|
|
@@ -2407,7 +2414,7 @@ class LeaferCanvasBase extends Canvas$1 {
|
|
|
2407
2414
|
const {pixelRatio: pixelRatio} = this;
|
|
2408
2415
|
this.filter = `blur(${blur * pixelRatio}px)`;
|
|
2409
2416
|
}
|
|
2410
|
-
copyWorld(canvas, from, to, blendMode, ceilPixel
|
|
2417
|
+
copyWorld(canvas, from, to, blendMode, ceilPixel) {
|
|
2411
2418
|
if (blendMode) this.blendMode = blendMode;
|
|
2412
2419
|
if (from) {
|
|
2413
2420
|
this.setTempPixelBounds(from, ceilPixel);
|
|
@@ -2418,7 +2425,7 @@ class LeaferCanvasBase extends Canvas$1 {
|
|
|
2418
2425
|
}
|
|
2419
2426
|
if (blendMode) this.blendMode = "source-over";
|
|
2420
2427
|
}
|
|
2421
|
-
copyWorldToInner(canvas, fromWorld, toInnerBounds, blendMode, ceilPixel
|
|
2428
|
+
copyWorldToInner(canvas, fromWorld, toInnerBounds, blendMode, ceilPixel) {
|
|
2422
2429
|
if (fromWorld.b || fromWorld.c) {
|
|
2423
2430
|
this.save();
|
|
2424
2431
|
this.resetTransform();
|
|
@@ -2431,7 +2438,7 @@ class LeaferCanvasBase extends Canvas$1 {
|
|
|
2431
2438
|
if (blendMode) this.blendMode = "source-over";
|
|
2432
2439
|
}
|
|
2433
2440
|
}
|
|
2434
|
-
copyWorldByReset(canvas, from, to, blendMode, onlyResetTransform, ceilPixel
|
|
2441
|
+
copyWorldByReset(canvas, from, to, blendMode, onlyResetTransform, ceilPixel) {
|
|
2435
2442
|
this.resetTransform();
|
|
2436
2443
|
this.copyWorld(canvas, from, to, blendMode, ceilPixel);
|
|
2437
2444
|
if (!onlyResetTransform) this.useWorldTransform();
|
|
@@ -2658,7 +2665,7 @@ const BezierHelper = {
|
|
|
2658
2665
|
data.push(M$5, points[0], points[1]);
|
|
2659
2666
|
if (curve && points.length > 5) {
|
|
2660
2667
|
let aX, aY, bX, bY, cX, cY, c1X, c1Y, c2X, c2Y;
|
|
2661
|
-
let ba, cb, d, len = points.length;
|
|
2668
|
+
let baX, baY, ba, cb, d, len = points.length;
|
|
2662
2669
|
const t = curve === true ? .5 : curve;
|
|
2663
2670
|
if (close) {
|
|
2664
2671
|
points = [ points[len - 2], points[len - 1], ...points, points[0], points[1], points[2], points[3] ];
|
|
@@ -2671,7 +2678,9 @@ const BezierHelper = {
|
|
|
2671
2678
|
bY = points[i + 1];
|
|
2672
2679
|
cX = points[i + 2];
|
|
2673
2680
|
cY = points[i + 3];
|
|
2674
|
-
|
|
2681
|
+
baX = bX - aX;
|
|
2682
|
+
baY = bY - aY;
|
|
2683
|
+
ba = sqrt$1(pow(baX, 2) + pow(baY, 2));
|
|
2675
2684
|
cb = sqrt$1(pow(cX - bX, 2) + pow(cY - bY, 2));
|
|
2676
2685
|
if (!ba && !cb) continue;
|
|
2677
2686
|
d = ba + cb;
|
|
@@ -2684,7 +2693,7 @@ const BezierHelper = {
|
|
|
2684
2693
|
if (i === 2) {
|
|
2685
2694
|
if (!close) data.push(Q$4, c1X, c1Y, bX, bY);
|
|
2686
2695
|
} else {
|
|
2687
|
-
data.push(C$4, c2X, c2Y, c1X, c1Y, bX, bY);
|
|
2696
|
+
if (baX || baY) data.push(C$4, c2X, c2Y, c1X, c1Y, bX, bY);
|
|
2688
2697
|
}
|
|
2689
2698
|
c2X = bX + cb * cX;
|
|
2690
2699
|
c2Y = bY + cb * cY;
|
|
@@ -3269,6 +3278,7 @@ const PathCommandDataHelper = {
|
|
|
3269
3278
|
}
|
|
3270
3279
|
},
|
|
3271
3280
|
ellipse(data, x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise) {
|
|
3281
|
+
if (radiusX === radiusY) return arc$2(data, x, y, radiusX, startAngle, endAngle, anticlockwise);
|
|
3272
3282
|
if (isNull(rotation)) {
|
|
3273
3283
|
data.push(F$3, x, y, radiusX, radiusY);
|
|
3274
3284
|
} else {
|
|
@@ -3281,6 +3291,7 @@ const PathCommandDataHelper = {
|
|
|
3281
3291
|
if (isNull(startAngle)) {
|
|
3282
3292
|
data.push(P$2, x, y, radius);
|
|
3283
3293
|
} else {
|
|
3294
|
+
if (isNull(startAngle)) startAngle = 0;
|
|
3284
3295
|
if (isNull(endAngle)) endAngle = 360;
|
|
3285
3296
|
data.push(O$2, x, y, radius, startAngle, endAngle, anticlockwise ? 1 : 0);
|
|
3286
3297
|
}
|
|
@@ -3631,6 +3642,7 @@ const PathCorner = {
|
|
|
3631
3642
|
smooth(data, cornerRadius, _cornerSmoothing) {
|
|
3632
3643
|
let command, lastCommand, commandLen;
|
|
3633
3644
|
let i = 0, x = 0, y = 0, startX = 0, startY = 0, secondX = 0, secondY = 0, lastX = 0, lastY = 0;
|
|
3645
|
+
if (isArray(cornerRadius)) cornerRadius = cornerRadius[0] || 0;
|
|
3634
3646
|
const len = data.length;
|
|
3635
3647
|
const smooth = [];
|
|
3636
3648
|
while (i < len) {
|
|
@@ -4046,7 +4058,9 @@ const R = Resource;
|
|
|
4046
4058
|
const ImageManager = {
|
|
4047
4059
|
maxRecycled: 10,
|
|
4048
4060
|
recycledList: [],
|
|
4049
|
-
patternTasker: new TaskProcessor
|
|
4061
|
+
patternTasker: new TaskProcessor({
|
|
4062
|
+
parallel: 1
|
|
4063
|
+
}),
|
|
4050
4064
|
get(config) {
|
|
4051
4065
|
let image = Resource.get(config.url);
|
|
4052
4066
|
if (!image) Resource.set(config.url, image = Creator.image(config));
|
|
@@ -6923,7 +6937,7 @@ class LeafLevelList {
|
|
|
6923
6937
|
}
|
|
6924
6938
|
}
|
|
6925
6939
|
|
|
6926
|
-
const version = "1.12.
|
|
6940
|
+
const version = "1.12.2";
|
|
6927
6941
|
|
|
6928
6942
|
class LeaferCanvas extends LeaferCanvasBase {
|
|
6929
6943
|
get allowBackgroundColor() {
|
|
@@ -8087,7 +8101,7 @@ const UIRender = {
|
|
|
8087
8101
|
if (stroke && !__fillAfterStroke) data.__isStrokes ? Paint.strokes(stroke, this, canvas, options) : Paint.stroke(stroke, this, canvas, options);
|
|
8088
8102
|
}
|
|
8089
8103
|
} else {
|
|
8090
|
-
if (data.
|
|
8104
|
+
if (data.__pathForRender) drawFast(this, canvas, options); else this.__drawFast(canvas, options);
|
|
8091
8105
|
}
|
|
8092
8106
|
},
|
|
8093
8107
|
__drawShape(canvas, options) {
|
|
@@ -8211,7 +8225,7 @@ let UI = UI_1 = class UI extends Leaf {
|
|
|
8211
8225
|
getPath(curve, pathForRender) {
|
|
8212
8226
|
this.__layout.update();
|
|
8213
8227
|
let path = pathForRender ? this.__.__pathForRender : this.__.path;
|
|
8214
|
-
if (!path) pen.set(path = []), this.__drawPathByBox(pen);
|
|
8228
|
+
if (!path) pen.set(path = []), this.__drawPathByBox(pen, !pathForRender);
|
|
8215
8229
|
return curve ? PathConvert.toCanvasData(path, true) : path;
|
|
8216
8230
|
}
|
|
8217
8231
|
getPathString(curve, pathForRender, floatLength) {
|
|
@@ -8239,17 +8253,18 @@ let UI = UI_1 = class UI extends Leaf {
|
|
|
8239
8253
|
}
|
|
8240
8254
|
__drawPath(canvas) {
|
|
8241
8255
|
canvas.beginPath();
|
|
8242
|
-
this.__drawPathByData(canvas, this.__.path);
|
|
8256
|
+
this.__drawPathByData(canvas, this.__.path, true);
|
|
8243
8257
|
}
|
|
8244
|
-
__drawPathByData(drawer, data) {
|
|
8245
|
-
data ? PathDrawer.drawPathByData(drawer, data) : this.__drawPathByBox(drawer);
|
|
8258
|
+
__drawPathByData(drawer, data, ignoreCornerRadius) {
|
|
8259
|
+
data ? PathDrawer.drawPathByData(drawer, data) : this.__drawPathByBox(drawer, ignoreCornerRadius);
|
|
8246
8260
|
}
|
|
8247
|
-
__drawPathByBox(drawer) {
|
|
8261
|
+
__drawPathByBox(drawer, ignoreCornerRadius) {
|
|
8248
8262
|
const {x: x, y: y, width: width, height: height} = this.__layout.boxBounds;
|
|
8249
|
-
if (this.__.cornerRadius) {
|
|
8263
|
+
if (this.__.cornerRadius && !ignoreCornerRadius) {
|
|
8250
8264
|
const {cornerRadius: cornerRadius} = this.__;
|
|
8251
8265
|
drawer.roundRect(x, y, width, height, isNumber(cornerRadius) ? [ cornerRadius ] : cornerRadius);
|
|
8252
8266
|
} else drawer.rect(x, y, width, height);
|
|
8267
|
+
drawer.closePath();
|
|
8253
8268
|
}
|
|
8254
8269
|
drawImagePlaceholder(_paint, canvas, renderOptions) {
|
|
8255
8270
|
Paint.fill(this.__.placeholderColor, this, canvas, renderOptions);
|
|
@@ -8518,6 +8533,9 @@ let Leafer = Leafer_1 = class Leafer extends Group {
|
|
|
8518
8533
|
get layoutLocked() {
|
|
8519
8534
|
return !this.layouter.running;
|
|
8520
8535
|
}
|
|
8536
|
+
get view() {
|
|
8537
|
+
return this.canvas && this.canvas.view;
|
|
8538
|
+
}
|
|
8521
8539
|
get FPS() {
|
|
8522
8540
|
return this.renderer ? this.renderer.FPS : 60;
|
|
8523
8541
|
}
|
|
@@ -8569,7 +8587,6 @@ let Leafer = Leafer_1 = class Leafer extends Group {
|
|
|
8569
8587
|
this.__controllers.push(this.renderer = Creator.renderer(this, canvas, config), this.watcher = Creator.watcher(this, config), this.layouter = Creator.layouter(this, config));
|
|
8570
8588
|
if (this.isApp) this.__setApp();
|
|
8571
8589
|
this.__checkAutoLayout();
|
|
8572
|
-
this.view = canvas.view;
|
|
8573
8590
|
if (!parentApp) {
|
|
8574
8591
|
this.selector = Creator.selector(this);
|
|
8575
8592
|
this.interaction = Creator.interaction(this, canvas, this.selector, config);
|
|
@@ -8849,7 +8866,7 @@ let Leafer = Leafer_1 = class Leafer extends Group {
|
|
|
8849
8866
|
if (this.canvasManager) this.canvasManager.destroy();
|
|
8850
8867
|
}
|
|
8851
8868
|
if (this.canvas) this.canvas.destroy();
|
|
8852
|
-
this.config.view = this.
|
|
8869
|
+
this.config.view = this.parentApp = null;
|
|
8853
8870
|
if (this.userConfig) this.userConfig.view = null;
|
|
8854
8871
|
super.destroy();
|
|
8855
8872
|
setTimeout(() => {
|
|
@@ -9033,7 +9050,6 @@ let Ellipse = class Ellipse extends UI {
|
|
|
9033
9050
|
if (startAngle || endAngle) {
|
|
9034
9051
|
if (innerRadius < 1) ellipse(path, rx, ry, rx * innerRadius, ry * innerRadius, 0, startAngle, endAngle, false);
|
|
9035
9052
|
ellipse(path, rx, ry, rx, ry, 0, endAngle, startAngle, true);
|
|
9036
|
-
if (innerRadius < 1) closePath$2(path);
|
|
9037
9053
|
} else {
|
|
9038
9054
|
if (innerRadius < 1) {
|
|
9039
9055
|
ellipse(path, rx, ry, rx * innerRadius, ry * innerRadius);
|
|
@@ -9041,16 +9057,16 @@ let Ellipse = class Ellipse extends UI {
|
|
|
9041
9057
|
}
|
|
9042
9058
|
ellipse(path, rx, ry, rx, ry, 0, 360, 0, true);
|
|
9043
9059
|
}
|
|
9044
|
-
if (Platform.ellipseToCurve) this.__.path = this.getPath(true);
|
|
9045
9060
|
} else {
|
|
9046
9061
|
if (startAngle || endAngle) {
|
|
9047
9062
|
moveTo$3(path, rx, ry);
|
|
9048
9063
|
ellipse(path, rx, ry, rx, ry, 0, startAngle, endAngle, false);
|
|
9049
|
-
closePath$2(path);
|
|
9050
9064
|
} else {
|
|
9051
9065
|
ellipse(path, rx, ry, rx, ry);
|
|
9052
9066
|
}
|
|
9053
9067
|
}
|
|
9068
|
+
closePath$2(path);
|
|
9069
|
+
if (Platform.ellipseToCurve) this.__.path = this.getPath(true);
|
|
9054
9070
|
}
|
|
9055
9071
|
};
|
|
9056
9072
|
|
|
@@ -10151,10 +10167,12 @@ const {getFloorScale: getFloorScale} = MathHelper, {abs: abs$1} = Math;
|
|
|
10151
10167
|
function createPatternTask(paint, ui, canvas, renderOptions) {
|
|
10152
10168
|
if (!paint.patternTask) {
|
|
10153
10169
|
paint.patternTask = ImageManager.patternTasker.add(() => __awaiter(this, void 0, void 0, function*() {
|
|
10154
|
-
paint
|
|
10155
|
-
if (canvas.bounds.hit(ui.__nowWorld)) PaintImage.createPattern(paint, ui, canvas, renderOptions);
|
|
10170
|
+
PaintImage.createPattern(paint, ui, canvas, renderOptions);
|
|
10156
10171
|
ui.forceUpdate("surface");
|
|
10157
|
-
}),
|
|
10172
|
+
}), 0, () => {
|
|
10173
|
+
paint.patternTask = null;
|
|
10174
|
+
return canvas.bounds.hit(ui.__nowWorld);
|
|
10175
|
+
});
|
|
10158
10176
|
}
|
|
10159
10177
|
}
|
|
10160
10178
|
|