leafer-ui 2.1.5 → 2.1.7
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/web.cjs +8 -5
- package/dist/web.esm.js +8 -5
- package/dist/web.esm.min.js +1 -1
- package/dist/web.esm.min.js.map +1 -1
- package/dist/web.js +96 -64
- package/dist/web.min.cjs +1 -1
- package/dist/web.min.cjs.map +1 -1
- package/dist/web.min.js +1 -1
- package/dist/web.min.js.map +1 -1
- package/dist/web.module.js +96 -64
- package/dist/web.module.min.js +1 -1
- package/dist/web.module.min.js.map +1 -1
- package/package.json +11 -11
package/dist/web.module.js
CHANGED
|
@@ -292,7 +292,7 @@ const FourNumberHelper = {
|
|
|
292
292
|
return to;
|
|
293
293
|
},
|
|
294
294
|
setTemp(top, right, bottom, left) {
|
|
295
|
-
return set$
|
|
295
|
+
return set$3(tempFour, top, right, bottom, left);
|
|
296
296
|
},
|
|
297
297
|
toTempAB(a, b, change) {
|
|
298
298
|
tempTo = change ? isNumber(a) ? b : a : [];
|
|
@@ -332,22 +332,22 @@ const FourNumberHelper = {
|
|
|
332
332
|
max(t, other, change) {
|
|
333
333
|
if (isNumber(t) && isNumber(other)) return max$5(t, other);
|
|
334
334
|
toTempAB(t, other, change);
|
|
335
|
-
return set$
|
|
335
|
+
return set$3(tempTo, max$5(tempA[0], tempB[0]), max$5(tempA[1], tempB[1]), max$5(tempA[2], tempB[2]), max$5(tempA[3], tempB[3]));
|
|
336
336
|
},
|
|
337
337
|
add(t, other, change) {
|
|
338
338
|
if (isNumber(t) && isNumber(other)) return t + other;
|
|
339
339
|
toTempAB(t, other, change);
|
|
340
|
-
return set$
|
|
340
|
+
return set$3(tempTo, tempA[0] + tempB[0], tempA[1] + tempB[1], tempA[2] + tempB[2], tempA[3] + tempB[3]);
|
|
341
341
|
},
|
|
342
342
|
swapAndScale(t, scaleX, scaleY, change) {
|
|
343
343
|
if (isNumber(t)) return scaleX === scaleY ? t * scaleX : [ t * scaleY, t * scaleX ];
|
|
344
344
|
const to = change ? t : [];
|
|
345
345
|
const [top, right, bottom, left] = t.length === 4 ? t : get$5(t);
|
|
346
|
-
return set$
|
|
346
|
+
return set$3(to, bottom * scaleY, left * scaleX, top * scaleY, right * scaleX);
|
|
347
347
|
}
|
|
348
348
|
};
|
|
349
349
|
|
|
350
|
-
const {set: set$
|
|
350
|
+
const {set: set$3, get: get$5, setTemp: setTemp, toTempAB: toTempAB} = FourNumberHelper;
|
|
351
351
|
|
|
352
352
|
const {round: round$3, pow: pow$1, max: max$4, floor: floor$2, PI: PI$3} = Math;
|
|
353
353
|
|
|
@@ -472,7 +472,7 @@ const {sin: sin$5, cos: cos$5, acos: acos, sqrt: sqrt$3} = Math;
|
|
|
472
472
|
|
|
473
473
|
const {float: float$3} = MathHelper;
|
|
474
474
|
|
|
475
|
-
const tempPoint$
|
|
475
|
+
const tempPoint$5 = {};
|
|
476
476
|
|
|
477
477
|
function getWorld() {
|
|
478
478
|
return Object.assign(Object.assign(Object.assign({}, getMatrixData()), getBoundsData()), {
|
|
@@ -531,8 +531,8 @@ const MatrixHelper = {
|
|
|
531
531
|
to.f = t.f * pixelRatio;
|
|
532
532
|
},
|
|
533
533
|
scaleOfOuter(t, origin, scaleX, scaleY) {
|
|
534
|
-
M$6.toInnerPoint(t, origin, tempPoint$
|
|
535
|
-
M$6.scaleOfInner(t, tempPoint$
|
|
534
|
+
M$6.toInnerPoint(t, origin, tempPoint$5);
|
|
535
|
+
M$6.scaleOfInner(t, tempPoint$5, scaleX, scaleY);
|
|
536
536
|
},
|
|
537
537
|
scaleOfInner(t, origin, scaleX, scaleY = scaleX) {
|
|
538
538
|
M$6.translateInner(t, origin.x, origin.y);
|
|
@@ -550,8 +550,8 @@ const MatrixHelper = {
|
|
|
550
550
|
t.d = c * sinR + d * cosR;
|
|
551
551
|
},
|
|
552
552
|
rotateOfOuter(t, origin, rotation) {
|
|
553
|
-
M$6.toInnerPoint(t, origin, tempPoint$
|
|
554
|
-
M$6.rotateOfInner(t, tempPoint$
|
|
553
|
+
M$6.toInnerPoint(t, origin, tempPoint$5);
|
|
554
|
+
M$6.rotateOfInner(t, tempPoint$5, rotation);
|
|
555
555
|
},
|
|
556
556
|
rotateOfInner(t, origin, rotation) {
|
|
557
557
|
M$6.translateInner(t, origin.x, origin.y);
|
|
@@ -572,8 +572,8 @@ const MatrixHelper = {
|
|
|
572
572
|
}
|
|
573
573
|
},
|
|
574
574
|
skewOfOuter(t, origin, skewX, skewY) {
|
|
575
|
-
M$6.toInnerPoint(t, origin, tempPoint$
|
|
576
|
-
M$6.skewOfInner(t, tempPoint$
|
|
575
|
+
M$6.toInnerPoint(t, origin, tempPoint$5);
|
|
576
|
+
M$6.skewOfInner(t, tempPoint$5, skewX, skewY);
|
|
577
577
|
},
|
|
578
578
|
skewOfInner(t, origin, skewX, skewY = 0) {
|
|
579
579
|
M$6.translateInner(t, origin.x, origin.y);
|
|
@@ -774,7 +774,7 @@ const {float: float$2} = MathHelper;
|
|
|
774
774
|
|
|
775
775
|
const {toInnerPoint: toInnerPoint$2, toOuterPoint: toOuterPoint$3} = MatrixHelper;
|
|
776
776
|
|
|
777
|
-
const {sin: sin$4, cos: cos$4, abs: abs$
|
|
777
|
+
const {sin: sin$4, cos: cos$4, abs: abs$6, sqrt: sqrt$2, atan2: atan2$2, min: min$2, round: round$2} = Math;
|
|
778
778
|
|
|
779
779
|
const PointHelper = {
|
|
780
780
|
defaultPoint: getPointData(),
|
|
@@ -811,15 +811,15 @@ const PointHelper = {
|
|
|
811
811
|
t.x += (t.x - origin.x) * (scaleX - 1);
|
|
812
812
|
t.y += (t.y - origin.y) * (scaleY - 1);
|
|
813
813
|
},
|
|
814
|
-
rotate(t, rotation, origin) {
|
|
814
|
+
rotate(t, rotation, origin, radiusX = 1, radiusY = 1) {
|
|
815
815
|
if (!origin) origin = P$5.defaultPoint;
|
|
816
816
|
rotation *= OneRadian;
|
|
817
817
|
const cosR = cos$4(rotation);
|
|
818
818
|
const sinR = sin$4(rotation);
|
|
819
|
-
const rx = t.x - origin.x;
|
|
820
|
-
const ry = t.y - origin.y;
|
|
821
|
-
t.x = origin.x + rx * cosR - ry * sinR;
|
|
822
|
-
t.y = origin.y + rx * sinR + ry * cosR;
|
|
819
|
+
const rx = (t.x - origin.x) / radiusX;
|
|
820
|
+
const ry = (t.y - origin.y) / radiusY;
|
|
821
|
+
t.x = origin.x + (rx * cosR - ry * sinR) * radiusX;
|
|
822
|
+
t.y = origin.y + (rx * sinR + ry * cosR) * radiusY;
|
|
823
823
|
},
|
|
824
824
|
tempToInnerOf(t, matrix) {
|
|
825
825
|
const {tempPoint: temp} = P$5;
|
|
@@ -872,15 +872,15 @@ const PointHelper = {
|
|
|
872
872
|
return getDistanceFrom(t.x, t.y, point.x, point.y);
|
|
873
873
|
},
|
|
874
874
|
getDistanceFrom(x1, y1, x2, y2) {
|
|
875
|
-
const x = abs$
|
|
876
|
-
const y = abs$
|
|
875
|
+
const x = abs$6(x2 - x1);
|
|
876
|
+
const y = abs$6(y2 - y1);
|
|
877
877
|
return sqrt$2(x * x + y * y);
|
|
878
878
|
},
|
|
879
879
|
getMinDistanceFrom(x1, y1, x2, y2, x3, y3) {
|
|
880
880
|
return min$2(getDistanceFrom(x1, y1, x2, y2), getDistanceFrom(x2, y2, x3, y3));
|
|
881
881
|
},
|
|
882
|
-
getAngle(t, to) {
|
|
883
|
-
return getAtan2(t, to) / OneRadian;
|
|
882
|
+
getAngle(t, to, radiusX, radiusY) {
|
|
883
|
+
return getAtan2(t, to, radiusX, radiusY) / OneRadian;
|
|
884
884
|
},
|
|
885
885
|
getRotation(t, origin, to, toOrigin) {
|
|
886
886
|
if (!toOrigin) toOrigin = origin;
|
|
@@ -894,8 +894,8 @@ const PointHelper = {
|
|
|
894
894
|
const d = toY - toOriginY;
|
|
895
895
|
return Math.atan2(a * d - b * c, a * c + b * d);
|
|
896
896
|
},
|
|
897
|
-
getAtan2(t, to) {
|
|
898
|
-
return atan2$2(to.y - t.y, to.x - t.x);
|
|
897
|
+
getAtan2(t, to, radiusX = 1, radiusY = 1) {
|
|
898
|
+
return atan2$2((to.y - t.y) / radiusY, (to.x - t.x) / radiusX);
|
|
899
899
|
},
|
|
900
900
|
getDistancePoint(t, to, distance, changeTo, fromTo) {
|
|
901
901
|
const r = getAtan2(t, to);
|
|
@@ -995,7 +995,7 @@ class Point {
|
|
|
995
995
|
}
|
|
996
996
|
}
|
|
997
997
|
|
|
998
|
-
const tempPoint$
|
|
998
|
+
const tempPoint$4 = new Point;
|
|
999
999
|
|
|
1000
1000
|
class Matrix {
|
|
1001
1001
|
constructor(a, b, c, d, e, f) {
|
|
@@ -2702,15 +2702,15 @@ const RectHelper = {
|
|
|
2702
2702
|
}
|
|
2703
2703
|
};
|
|
2704
2704
|
|
|
2705
|
-
const {sin: sin$3, cos: cos$3, hypot: hypot, atan2: atan2$1, ceil: ceil, abs: abs$
|
|
2705
|
+
const {sin: sin$3, cos: cos$3, hypot: hypot, atan2: atan2$1, ceil: ceil, abs: abs$5, PI: PI$2, sqrt: sqrt$1, pow: pow} = Math;
|
|
2706
2706
|
|
|
2707
2707
|
const {setPoint: setPoint$1, addPoint: addPoint$1} = TwoPointBoundsHelper;
|
|
2708
2708
|
|
|
2709
|
-
const {set: set$
|
|
2709
|
+
const {set: set$2, toNumberPoints: toNumberPoints} = PointHelper;
|
|
2710
2710
|
|
|
2711
2711
|
const {M: M$5, L: L$6, C: C$4, Q: Q$4, Z: Z$5} = PathCommandMap;
|
|
2712
2712
|
|
|
2713
|
-
const tempPoint$
|
|
2713
|
+
const tempPoint$3 = {};
|
|
2714
2714
|
|
|
2715
2715
|
const BezierHelper = {
|
|
2716
2716
|
points(data, originPoints, curve, close) {
|
|
@@ -2779,14 +2779,14 @@ const BezierHelper = {
|
|
|
2779
2779
|
const lenCB = hypot(CBx, CBy);
|
|
2780
2780
|
let totalRadian = endRadian - startRadian;
|
|
2781
2781
|
if (totalRadian < 0) totalRadian += PI2;
|
|
2782
|
-
if (lenBA < 1e-12 || lenCB < 1e-12 || totalRadian < 1e-12 || abs$
|
|
2782
|
+
if (lenBA < 1e-12 || lenCB < 1e-12 || totalRadian < 1e-12 || abs$5(totalRadian - PI$2) < 1e-12) {
|
|
2783
2783
|
if (data) data.push(L$6, x1, y1);
|
|
2784
2784
|
if (setPointBounds) {
|
|
2785
2785
|
setPoint$1(setPointBounds, fromX, fromY);
|
|
2786
2786
|
addPoint$1(setPointBounds, x1, y1);
|
|
2787
2787
|
}
|
|
2788
|
-
if (setStartPoint) set$
|
|
2789
|
-
if (setEndPoint) set$
|
|
2788
|
+
if (setStartPoint) set$2(setStartPoint, fromX, fromY);
|
|
2789
|
+
if (setEndPoint) set$2(setEndPoint, x1, y1);
|
|
2790
2790
|
return;
|
|
2791
2791
|
}
|
|
2792
2792
|
const anticlockwise = BAx * CBy - CBx * BAy < 0;
|
|
@@ -2812,7 +2812,7 @@ const BezierHelper = {
|
|
|
2812
2812
|
let totalRadian = endRadian - startRadian;
|
|
2813
2813
|
if (totalRadian < 0) totalRadian += PI2; else if (totalRadian > PI2) totalRadian -= PI2;
|
|
2814
2814
|
if (anticlockwise) totalRadian -= PI2;
|
|
2815
|
-
const parts = ceil(abs$
|
|
2815
|
+
const parts = ceil(abs$5(totalRadian / PI_2));
|
|
2816
2816
|
const partRadian = totalRadian / parts;
|
|
2817
2817
|
const partRadian4Sin = sin$3(partRadian / 4);
|
|
2818
2818
|
const control = 8 / 3 * partRadian4Sin * partRadian4Sin / sin$3(partRadian / 2);
|
|
@@ -2826,7 +2826,7 @@ const BezierHelper = {
|
|
|
2826
2826
|
let fromX = cx + x, fromY = cy + y;
|
|
2827
2827
|
if (data) data.push(data.length ? L$6 : M$5, fromX, fromY);
|
|
2828
2828
|
if (setPointBounds) setPoint$1(setPointBounds, fromX, fromY);
|
|
2829
|
-
if (setStartPoint) set$
|
|
2829
|
+
if (setStartPoint) set$2(setStartPoint, fromX, fromY);
|
|
2830
2830
|
for (let i = 0; i < parts; i++) {
|
|
2831
2831
|
endCos = cos$3(endRadian);
|
|
2832
2832
|
endSin = sin$3(endRadian);
|
|
@@ -2845,7 +2845,7 @@ const BezierHelper = {
|
|
|
2845
2845
|
startRadian = endRadian;
|
|
2846
2846
|
endRadian += partRadian;
|
|
2847
2847
|
}
|
|
2848
|
-
if (setEndPoint) set$
|
|
2848
|
+
if (setEndPoint) set$2(setEndPoint, cx + x, cy + y);
|
|
2849
2849
|
},
|
|
2850
2850
|
quadraticCurveTo(data, fromX, fromY, x1, y1, toX, toY) {
|
|
2851
2851
|
data.push(C$4, (fromX + 2 * x1) / 3, (fromY + 2 * y1) / 3, (toX + 2 * x1) / 3, (toY + 2 * y1) / 3, toX, toY);
|
|
@@ -2881,8 +2881,8 @@ const BezierHelper = {
|
|
|
2881
2881
|
addMode ? addPoint$1(pointBounds, fromX, fromY) : setPoint$1(pointBounds, fromX, fromY);
|
|
2882
2882
|
addPoint$1(pointBounds, toX, toY);
|
|
2883
2883
|
for (let i = 0, len = tList.length; i < len; i++) {
|
|
2884
|
-
getPointAndSet(tList[i], fromX, fromY, x1, y1, x2, y2, toX, toY, tempPoint$
|
|
2885
|
-
addPoint$1(pointBounds, tempPoint$
|
|
2884
|
+
getPointAndSet(tList[i], fromX, fromY, x1, y1, x2, y2, toX, toY, tempPoint$3);
|
|
2885
|
+
addPoint$1(pointBounds, tempPoint$3.x, tempPoint$3.y);
|
|
2886
2886
|
}
|
|
2887
2887
|
},
|
|
2888
2888
|
getPointAndSet(t, fromX, fromY, x1, y1, x2, y2, toX, toY, setPoint) {
|
|
@@ -3321,7 +3321,7 @@ const {M: M$3, L: L$4, C: C$2, Q: Q$2, Z: Z$3, N: N$2, D: D$3, X: X$2, G: G$2, F
|
|
|
3321
3321
|
|
|
3322
3322
|
const {getMinDistanceFrom: getMinDistanceFrom, getRadianFrom: getRadianFrom} = PointHelper;
|
|
3323
3323
|
|
|
3324
|
-
const {tan: tan, min: min$1, abs: abs$
|
|
3324
|
+
const {tan: tan, min: min$1, abs: abs$4} = Math;
|
|
3325
3325
|
|
|
3326
3326
|
const startPoint = {};
|
|
3327
3327
|
|
|
@@ -3381,7 +3381,7 @@ const PathCommandDataHelper = {
|
|
|
3381
3381
|
arcTo(data, x1, y1, x2, y2, radius, lastX, lastY, fullRadius) {
|
|
3382
3382
|
if (!isUndefined(lastX)) {
|
|
3383
3383
|
const r = getMinDistanceFrom(lastX, lastY, x1, y1, x2, y2) / (fullRadius ? 1 : 2);
|
|
3384
|
-
radius = min$1(radius, min$1(r, r * abs$
|
|
3384
|
+
radius = min$1(radius, min$1(r, r * abs$4(tan(getRadianFrom(lastX, lastY, x1, y1, x2, y2) / 2))));
|
|
3385
3385
|
}
|
|
3386
3386
|
data.push(U$2, x1, y1, x2, y2, radius);
|
|
3387
3387
|
},
|
|
@@ -3722,7 +3722,7 @@ const {arcTo: arcTo} = PathCommandDataHelper;
|
|
|
3722
3722
|
|
|
3723
3723
|
const PathCorner = {
|
|
3724
3724
|
smooth(data, cornerRadius, _cornerSmoothing) {
|
|
3725
|
-
let command, lastCommand, commandLen;
|
|
3725
|
+
let command, lastCommand, commandLen, startXIndex, startYIndex, smoothLen;
|
|
3726
3726
|
let i = 0, x = 0, y = 0, startX = 0, startY = 0, secondX = 0, secondY = 0, lastX = 0, lastY = 0;
|
|
3727
3727
|
if (isArray(cornerRadius)) cornerRadius = cornerRadius[0] || 0;
|
|
3728
3728
|
const len = data.length, three = len === 9;
|
|
@@ -3731,6 +3731,11 @@ const PathCorner = {
|
|
|
3731
3731
|
command = data[i];
|
|
3732
3732
|
switch (command) {
|
|
3733
3733
|
case M:
|
|
3734
|
+
smoothLen = smooth.length;
|
|
3735
|
+
if (smoothLen && lastCommand !== Z) {
|
|
3736
|
+
smooth[startXIndex] = startX;
|
|
3737
|
+
smooth[startYIndex] = startY;
|
|
3738
|
+
}
|
|
3734
3739
|
startX = lastX = data[i + 1];
|
|
3735
3740
|
startY = lastY = data[i + 2];
|
|
3736
3741
|
i += 3;
|
|
@@ -3741,6 +3746,8 @@ const PathCorner = {
|
|
|
3741
3746
|
} else {
|
|
3742
3747
|
smooth.push(M, startX, startY);
|
|
3743
3748
|
}
|
|
3749
|
+
startXIndex = smoothLen + 1;
|
|
3750
|
+
startYIndex = smoothLen + 2;
|
|
3744
3751
|
break;
|
|
3745
3752
|
|
|
3746
3753
|
case L$1:
|
|
@@ -3779,8 +3786,8 @@ const PathCorner = {
|
|
|
3779
3786
|
lastCommand = command;
|
|
3780
3787
|
}
|
|
3781
3788
|
if (command !== Z) {
|
|
3782
|
-
smooth[
|
|
3783
|
-
smooth[
|
|
3789
|
+
smooth[startXIndex] = startX;
|
|
3790
|
+
smooth[startYIndex] = startY;
|
|
3784
3791
|
}
|
|
3785
3792
|
return smooth;
|
|
3786
3793
|
}
|
|
@@ -6031,7 +6038,7 @@ const LeafDataProxy = {
|
|
|
6031
6038
|
|
|
6032
6039
|
const {setLayout: setLayout, multiplyParent: multiplyParent$2, translateInner: translateInner, defaultWorld: defaultWorld} = MatrixHelper;
|
|
6033
6040
|
|
|
6034
|
-
const {toPoint: toPoint$3, tempPoint: tempPoint$
|
|
6041
|
+
const {toPoint: toPoint$3, tempPoint: tempPoint$2} = AroundHelper;
|
|
6035
6042
|
|
|
6036
6043
|
const LeafMatrix = {
|
|
6037
6044
|
__updateWorldMatrix() {
|
|
@@ -6052,8 +6059,8 @@ const LeafMatrix = {
|
|
|
6052
6059
|
local.e = data.x + data.offsetX;
|
|
6053
6060
|
local.f = data.y + data.offsetY;
|
|
6054
6061
|
if (data.around || data.origin) {
|
|
6055
|
-
toPoint$3(data.around || data.origin, layout.boxBounds, tempPoint$
|
|
6056
|
-
translateInner(local, -tempPoint$
|
|
6062
|
+
toPoint$3(data.around || data.origin, layout.boxBounds, tempPoint$2);
|
|
6063
|
+
translateInner(local, -tempPoint$2.x, -tempPoint$2.y, !data.around);
|
|
6057
6064
|
}
|
|
6058
6065
|
}
|
|
6059
6066
|
this.__layout.matrixChanged = undefined;
|
|
@@ -6976,7 +6983,7 @@ class LeafLevelList {
|
|
|
6976
6983
|
}
|
|
6977
6984
|
}
|
|
6978
6985
|
|
|
6979
|
-
const version = "2.1.
|
|
6986
|
+
const version = "2.1.7";
|
|
6980
6987
|
|
|
6981
6988
|
const debug$5 = Debug.get("LeaferCanvas");
|
|
6982
6989
|
|
|
@@ -7827,7 +7834,7 @@ class Renderer {
|
|
|
7827
7834
|
|
|
7828
7835
|
Renderer.clipSpread = 10;
|
|
7829
7836
|
|
|
7830
|
-
const tempPoint = {};
|
|
7837
|
+
const tempPoint$1 = {};
|
|
7831
7838
|
|
|
7832
7839
|
const {copyRadiusPoint: copyRadiusPoint$1} = PointHelper;
|
|
7833
7840
|
|
|
@@ -7962,7 +7969,7 @@ class Picker {
|
|
|
7962
7969
|
for (let i = len - 1; i > -1; i--) {
|
|
7963
7970
|
child = children[i], data = child.__;
|
|
7964
7971
|
if (!data.visible || hitMask && !data.mask) continue;
|
|
7965
|
-
hit = hitRadiusPoint$1(child.__world, data.hitRadius ? copyRadiusPoint$1(tempPoint, point, data.hitRadius) : point);
|
|
7972
|
+
hit = hitRadiusPoint$1(child.__world, data.hitRadius ? copyRadiusPoint$1(tempPoint$1, point, data.hitRadius) : point);
|
|
7966
7973
|
if (child.isBranch) {
|
|
7967
7974
|
if (hit || child.__ignoreHitWorld) {
|
|
7968
7975
|
if (child.isBranchLeaf && data.__clipAfterFill && !child.__hitWorld(point, true)) continue;
|
|
@@ -8736,6 +8743,7 @@ let UI = UI_1 = class UI extends Leaf {
|
|
|
8736
8743
|
this.set(keyframe);
|
|
8737
8744
|
return Plugin.need("animate");
|
|
8738
8745
|
}
|
|
8746
|
+
killAnimate(_type, _nextStyle) {}
|
|
8739
8747
|
export(_filename, _options) {
|
|
8740
8748
|
return Plugin.need("export");
|
|
8741
8749
|
}
|
|
@@ -9495,32 +9503,53 @@ __decorate([ affectRenderBoundsType("hide") ], Frame.prototype, "overflow", void
|
|
|
9495
9503
|
|
|
9496
9504
|
Frame = __decorate([ registerUI() ], Frame);
|
|
9497
9505
|
|
|
9498
|
-
const {moveTo: moveTo$3, closePath: closePath$2, ellipse: ellipse} = PathCommandDataHelper;
|
|
9506
|
+
const {moveTo: moveTo$3, closePath: closePath$2, ellipse: ellipse} = PathCommandDataHelper, {tempPoint: tempPoint, set: set$1, rotate: rotate$2} = PointHelper, {abs: abs$3} = Math, tempCenter = {};
|
|
9499
9507
|
|
|
9500
9508
|
let Ellipse = class Ellipse extends UI {
|
|
9501
9509
|
get __tag() {
|
|
9502
9510
|
return "Ellipse";
|
|
9503
9511
|
}
|
|
9504
9512
|
__updatePath() {
|
|
9505
|
-
const data = this.__, {width: width, height: height, innerRadius: innerRadius, startAngle: startAngle, endAngle: endAngle} = data;
|
|
9513
|
+
const data = this.__, {width: width, height: height, innerRadius: innerRadius, startAngle: startAngle, endAngle: endAngle, closed: closed} = data;
|
|
9506
9514
|
const rx = width / 2, ry = height / 2;
|
|
9507
9515
|
const path = data.path = [];
|
|
9508
|
-
let open;
|
|
9516
|
+
let open, hasAngle, closedAngle;
|
|
9517
|
+
if (startAngle || endAngle) hasAngle = true;
|
|
9518
|
+
if (hasAngle) closedAngle = abs$3(endAngle - startAngle) === 360;
|
|
9509
9519
|
if (innerRadius) {
|
|
9510
|
-
|
|
9511
|
-
|
|
9512
|
-
|
|
9520
|
+
const drawInnerEllipse = innerRadius < 1 || closed;
|
|
9521
|
+
let outerStartAngle = startAngle, outerEndAngle = endAngle, outerAnticlockwise;
|
|
9522
|
+
if (hasAngle) {
|
|
9523
|
+
if (drawInnerEllipse) {
|
|
9524
|
+
ellipse(path, rx, ry, rx * innerRadius, ry * innerRadius, 0, startAngle, endAngle);
|
|
9525
|
+
if (closedAngle) {
|
|
9526
|
+
set$1(tempPoint, width, ry);
|
|
9527
|
+
set$1(tempCenter, rx, ry);
|
|
9528
|
+
rotate$2(tempPoint, endAngle, tempCenter, rx, ry);
|
|
9529
|
+
moveTo$3(path, tempPoint.x, tempPoint.y);
|
|
9530
|
+
}
|
|
9531
|
+
outerStartAngle = endAngle;
|
|
9532
|
+
outerEndAngle = startAngle;
|
|
9533
|
+
outerAnticlockwise = true;
|
|
9534
|
+
} else {
|
|
9535
|
+
if (!closedAngle) open = true;
|
|
9536
|
+
}
|
|
9513
9537
|
} else {
|
|
9514
|
-
if (
|
|
9538
|
+
if (drawInnerEllipse) {
|
|
9515
9539
|
ellipse(path, rx, ry, rx * innerRadius, ry * innerRadius);
|
|
9540
|
+
closePath$2(path);
|
|
9516
9541
|
moveTo$3(path, width, ry);
|
|
9542
|
+
outerStartAngle = 360;
|
|
9543
|
+
outerAnticlockwise = true;
|
|
9544
|
+
} else {
|
|
9545
|
+
outerEndAngle = 360;
|
|
9517
9546
|
}
|
|
9518
|
-
ellipse(path, rx, ry, rx, ry, 0, 360, 0, true);
|
|
9519
9547
|
}
|
|
9548
|
+
ellipse(path, rx, ry, rx, ry, 0, outerStartAngle, outerEndAngle, outerAnticlockwise);
|
|
9520
9549
|
} else {
|
|
9521
|
-
if (
|
|
9522
|
-
moveTo$3(path, rx, ry);
|
|
9523
|
-
ellipse(path, rx, ry, rx, ry, 0, startAngle, endAngle
|
|
9550
|
+
if (hasAngle) {
|
|
9551
|
+
if (!closedAngle) moveTo$3(path, rx, ry);
|
|
9552
|
+
ellipse(path, rx, ry, rx, ry, 0, startAngle, endAngle);
|
|
9524
9553
|
} else {
|
|
9525
9554
|
ellipse(path, rx, ry, rx, ry);
|
|
9526
9555
|
}
|
|
@@ -12236,6 +12265,7 @@ function checkSizeAndCreateData(ui, attrName, paint, image, leafPaint, boxBounds
|
|
|
12236
12265
|
if (data.__autoSide) {
|
|
12237
12266
|
ui.forceUpdate("width");
|
|
12238
12267
|
LeafHelper.updateBounds(ui);
|
|
12268
|
+
ui.__layout.boundsChanged = true;
|
|
12239
12269
|
if (ui.__proxyData) {
|
|
12240
12270
|
ui.setProxyAttr("width", data.width);
|
|
12241
12271
|
ui.setProxyAttr("height", data.height);
|
|
@@ -12243,7 +12273,7 @@ function checkSizeAndCreateData(ui, attrName, paint, image, leafPaint, boxBounds
|
|
|
12243
12273
|
needUpdate = false;
|
|
12244
12274
|
}
|
|
12245
12275
|
}
|
|
12246
|
-
if (paint.mode === "brush") PaintImage.brush(
|
|
12276
|
+
if (paint.mode === "brush") PaintImage.brush(ui, attrName, leafPaint);
|
|
12247
12277
|
if (!leafPaint.data) {
|
|
12248
12278
|
PaintImage.createData(leafPaint, image, paint, boxBounds);
|
|
12249
12279
|
const {transform: transform} = leafPaint.data, {opacity: opacity} = paint;
|
|
@@ -12338,8 +12368,9 @@ function getPatternData(paint, box, image) {
|
|
|
12338
12368
|
break;
|
|
12339
12369
|
|
|
12340
12370
|
case "repeat":
|
|
12341
|
-
case "brush":
|
|
12342
12371
|
if (!sameBox || scaleX || rotation || skew) PaintImage.repeatMode(data, box, width, height, tempImage.x, tempImage.y, scaleX, scaleY, rotation, skew, align, paint.freeTransform);
|
|
12372
|
+
|
|
12373
|
+
case "brush":
|
|
12343
12374
|
if (!repeat) data.repeat = "repeat";
|
|
12344
12375
|
const count = isObject(repeat);
|
|
12345
12376
|
if (gap || count) data.gap = getGapData(gap, count && repeat, tempImage.width, tempImage.height, box);
|
|
@@ -12350,7 +12381,7 @@ function getPatternData(paint, box, image) {
|
|
|
12350
12381
|
default:
|
|
12351
12382
|
if (scaleX) PaintImage.fillOrFitMode(data, box, tempImage.x, tempImage.y, scaleX, scaleY, rotation);
|
|
12352
12383
|
}
|
|
12353
|
-
if (!data.transform) {
|
|
12384
|
+
if (!data.transform && mode !== "brush") {
|
|
12354
12385
|
if (box.x || box.y) translate$1(data.transform = get$3(), box.x, box.y);
|
|
12355
12386
|
}
|
|
12356
12387
|
if (scaleX) {
|
|
@@ -12479,8 +12510,9 @@ function createPattern(paint, ui, canvas, renderOptions) {
|
|
|
12479
12510
|
let {scaleX: scaleX, scaleY: scaleY} = PaintImage.getImageRenderScaleData(paint, ui, canvas, renderOptions), id = paint.film ? paint.nowIndex : scaleX + "-" + scaleY;
|
|
12480
12511
|
if (paint.patternId !== id && !ui.destroyed) {
|
|
12481
12512
|
if (!(Platform.image.isLarge(paint.image, scaleX, scaleY) && !paint.data.repeat)) {
|
|
12482
|
-
const {image: image, brush: brush, data: data} = paint, {
|
|
12483
|
-
let imageMatrix, xGap, yGap, {width: width, height: height} = image;
|
|
12513
|
+
const {image: image, brush: brush, data: data} = paint, {transform: transform, gap: gap} = data, fixScale = PaintImage.getPatternFixScale(paint, scaleX, scaleY);
|
|
12514
|
+
let imageMatrix, xGap, yGap, {width: width, height: height} = image, {opacity: opacity} = paint.originPaint;
|
|
12515
|
+
if (brush || opacity === 1) opacity = undefined;
|
|
12484
12516
|
if (fixScale) scaleX *= fixScale, scaleY *= fixScale;
|
|
12485
12517
|
width *= scaleX;
|
|
12486
12518
|
height *= scaleY;
|
|
@@ -13513,4 +13545,4 @@ Object.assign(Creator, {
|
|
|
13513
13545
|
|
|
13514
13546
|
useCanvas();
|
|
13515
13547
|
|
|
13516
|
-
export { AlignHelper, Answer, App, AroundHelper, AutoBounds, BezierHelper, Bounds, BoundsEvent, BoundsHelper, Box, BoxData, Branch, BranchHelper, BranchRender, Canvas, CanvasData, CanvasManager, ChildEvent, ColorConvert, Creator, Cursor, DataHelper, Debug, Direction4, Direction9, DragBoundsHelper, DragEvent$1 as DragEvent, Dragger, DropEvent, Effect, Ellipse, EllipseData, EllipseHelper, Event, EventCreator, Eventer, Export, FileHelper, Filter, FourNumberHelper, Frame, FrameData, Group, GroupData, HitCanvasManager, Image$1 as Image, ImageData, ImageEvent, ImageManager, IncrementId, Interaction, InteractionBase, InteractionHelper, KeyEvent, Keyboard, LayoutEvent, Layouter, Leaf, LeafBounds, LeafBoundsHelper, LeafData, LeafDataProxy, LeafEventer, LeafHelper, LeafLayout, LeafLevelList, LeafList, LeafMatrix, LeafRender, Leafer, LeaferCanvas, LeaferCanvasBase, LeaferData, LeaferEvent, LeaferFilm, LeaferImage, LeaferVideo, Line, LineData, MathHelper, Matrix, MatrixHelper, MoveEvent, MyDragEvent, MyImage, MyPointerEvent, MyTouchEvent, NeedConvertToCanvasCommandMap, OneRadian, PI2, PI_2, Paint, PaintGradient, PaintImage, Path, PathArrow, PathBounds, PathCommandDataHelper, PathCommandMap, PathCommandNodeHelper, PathConvert, PathCorner, PathCreator, PathData, PathDrawer, PathHelper, PathNodeHandleType, PathNumberCommandLengthMap, PathNumberCommandMap, Pen, PenData, Picker, Platform, Plugin, Point, PointHelper, PointerButton, PointerEvent$1 as PointerEvent, Polygon, PolygonData, PropertyEvent, Rect, RectData, RectHelper, RectRender, RenderEvent, Renderer, ResizeEvent, Resource, RotateEvent, Run, Selector, Star, StarData, State, StringNumberMap, SwipeEvent, TaskItem, TaskProcessor, Text, TextConvert, TextData, TouchEvent, Transition, TwoPointBoundsHelper, UI, UIBounds, UICreator, UIData, UIEvent, UIRender, UnitConvert, UnitConvertHelper, WaitHelper, WatchEvent, Watcher, ZoomEvent, affectRenderBoundsType, affectStrokeBoundsType, attr, autoLayoutType, boundsType, canvasPatch, canvasSizeAttrs, createAttr, createDescriptor, cursorType, dataProcessor, dataType, decorateLeafAttr, defineDataProcessor, defineKey, defineLeafAttr, dimType, doBoundsType, doStrokeType, effectType, emptyData, eraserType, extraPropertyEventMap, getBoundsData, getDescriptor, getMatrixData, getPointData, hitType, isArray, isData, isEmptyData, isFinite, isNull, isNumber, isObject, isString, isUndefined, layoutProcessor, leaferTransformAttrMap, maskType, naturalBoundsType, opacityType, path, pathInputType, pathType, pen, positionType, registerUI, registerUIEvent, resizeType, rewrite, rewriteAble, rotationType, scaleType, scrollType, sortType, strokeType, surfaceType, tempBounds$2 as tempBounds, tempMatrix$2 as tempMatrix, tempPoint$
|
|
13548
|
+
export { AlignHelper, Answer, App, AroundHelper, AutoBounds, BezierHelper, Bounds, BoundsEvent, BoundsHelper, Box, BoxData, Branch, BranchHelper, BranchRender, Canvas, CanvasData, CanvasManager, ChildEvent, ColorConvert, Creator, Cursor, DataHelper, Debug, Direction4, Direction9, DragBoundsHelper, DragEvent$1 as DragEvent, Dragger, DropEvent, Effect, Ellipse, EllipseData, EllipseHelper, Event, EventCreator, Eventer, Export, FileHelper, Filter, FourNumberHelper, Frame, FrameData, Group, GroupData, HitCanvasManager, Image$1 as Image, ImageData, ImageEvent, ImageManager, IncrementId, Interaction, InteractionBase, InteractionHelper, KeyEvent, Keyboard, LayoutEvent, Layouter, Leaf, LeafBounds, LeafBoundsHelper, LeafData, LeafDataProxy, LeafEventer, LeafHelper, LeafLayout, LeafLevelList, LeafList, LeafMatrix, LeafRender, Leafer, LeaferCanvas, LeaferCanvasBase, LeaferData, LeaferEvent, LeaferFilm, LeaferImage, LeaferVideo, Line, LineData, MathHelper, Matrix, MatrixHelper, MoveEvent, MyDragEvent, MyImage, MyPointerEvent, MyTouchEvent, NeedConvertToCanvasCommandMap, OneRadian, PI2, PI_2, Paint, PaintGradient, PaintImage, Path, PathArrow, PathBounds, PathCommandDataHelper, PathCommandMap, PathCommandNodeHelper, PathConvert, PathCorner, PathCreator, PathData, PathDrawer, PathHelper, PathNodeHandleType, PathNumberCommandLengthMap, PathNumberCommandMap, Pen, PenData, Picker, Platform, Plugin, Point, PointHelper, PointerButton, PointerEvent$1 as PointerEvent, Polygon, PolygonData, PropertyEvent, Rect, RectData, RectHelper, RectRender, RenderEvent, Renderer, ResizeEvent, Resource, RotateEvent, Run, Selector, Star, StarData, State, StringNumberMap, SwipeEvent, TaskItem, TaskProcessor, Text, TextConvert, TextData, TouchEvent, Transition, TwoPointBoundsHelper, UI, UIBounds, UICreator, UIData, UIEvent, UIRender, UnitConvert, UnitConvertHelper, WaitHelper, WatchEvent, Watcher, ZoomEvent, affectRenderBoundsType, affectStrokeBoundsType, attr, autoLayoutType, boundsType, canvasPatch, canvasSizeAttrs, createAttr, createDescriptor, cursorType, dataProcessor, dataType, decorateLeafAttr, defineDataProcessor, defineKey, defineLeafAttr, dimType, doBoundsType, doStrokeType, effectType, emptyData, eraserType, extraPropertyEventMap, getBoundsData, getDescriptor, getMatrixData, getPointData, hitType, isArray, isData, isEmptyData, isFinite, isNull, isNumber, isObject, isString, isUndefined, layoutProcessor, leaferTransformAttrMap, maskType, naturalBoundsType, opacityType, path, pathInputType, pathType, pen, positionType, registerUI, registerUIEvent, resizeType, rewrite, rewriteAble, rotationType, scaleType, scrollType, sortType, strokeType, surfaceType, tempBounds$2 as tempBounds, tempMatrix$2 as tempMatrix, tempPoint$4 as tempPoint, tryToNumber, useCanvas, useModule, version, visibleType, zoomLayerType };
|