@leafer-ui/worker 1.9.3 → 1.9.5
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 +22 -14
- package/dist/worker.esm.js +22 -14
- package/dist/worker.esm.min.js +1 -1
- package/dist/worker.esm.min.js.map +1 -1
- package/dist/worker.js +110 -146
- 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 +112 -149
- package/dist/worker.module.min.js +1 -1
- package/dist/worker.module.min.js.map +1 -1
- package/package.json +11 -11
package/dist/worker.js
CHANGED
|
@@ -49,7 +49,7 @@ var LeaferUI = function(exports) {
|
|
|
49
49
|
return value === undefined;
|
|
50
50
|
}
|
|
51
51
|
function isNull(value) {
|
|
52
|
-
return value
|
|
52
|
+
return value == null;
|
|
53
53
|
}
|
|
54
54
|
function isString(value) {
|
|
55
55
|
return typeof value === "string";
|
|
@@ -119,6 +119,9 @@ var LeaferUI = function(exports) {
|
|
|
119
119
|
const {path: path} = this;
|
|
120
120
|
return path && path.length === 6 && path[0] === 1;
|
|
121
121
|
}
|
|
122
|
+
get __usePathBox() {
|
|
123
|
+
return this.__pathInputed;
|
|
124
|
+
}
|
|
122
125
|
get __blendMode() {
|
|
123
126
|
if (this.eraser && this.eraser !== "path") return "destination-out";
|
|
124
127
|
const {blendMode: blendMode} = this;
|
|
@@ -285,6 +288,9 @@ var LeaferUI = function(exports) {
|
|
|
285
288
|
num = round$3(num * a) / a;
|
|
286
289
|
return num === -0 ? 0 : num;
|
|
287
290
|
},
|
|
291
|
+
sign(num) {
|
|
292
|
+
return num < 0 ? -1 : 1;
|
|
293
|
+
},
|
|
288
294
|
getScaleData(scale, size, originSize, scaleData) {
|
|
289
295
|
if (!scaleData) scaleData = {};
|
|
290
296
|
if (size) {
|
|
@@ -1077,10 +1083,10 @@ var LeaferUI = function(exports) {
|
|
|
1077
1083
|
toPoint$5(align, box, to, onlyBoxSize, content, onlyContentSize);
|
|
1078
1084
|
}
|
|
1079
1085
|
};
|
|
1080
|
-
const {tempPointBounds: tempPointBounds$1, setPoint: setPoint$2, addPoint: addPoint$2, toBounds: toBounds$
|
|
1086
|
+
const {tempPointBounds: tempPointBounds$1, setPoint: setPoint$2, addPoint: addPoint$2, toBounds: toBounds$2} = TwoPointBoundsHelper;
|
|
1081
1087
|
const {toOuterPoint: toOuterPoint$2} = MatrixHelper;
|
|
1082
1088
|
const {float: float, fourNumber: fourNumber} = MathHelper;
|
|
1083
|
-
const {floor: floor$2, ceil: ceil$
|
|
1089
|
+
const {floor: floor$2, ceil: ceil$2} = Math;
|
|
1084
1090
|
let right$1, bottom$1, boundsRight, boundsBottom;
|
|
1085
1091
|
const point = {};
|
|
1086
1092
|
const toPoint$4 = {};
|
|
@@ -1204,7 +1210,7 @@ var LeaferUI = function(exports) {
|
|
|
1204
1210
|
point.x = t.x;
|
|
1205
1211
|
toOuterPoint$2(matrix, point, toPoint$4);
|
|
1206
1212
|
addPoint$2(tempPointBounds$1, toPoint$4.x, toPoint$4.y);
|
|
1207
|
-
toBounds$
|
|
1213
|
+
toBounds$2(tempPointBounds$1, to);
|
|
1208
1214
|
}
|
|
1209
1215
|
},
|
|
1210
1216
|
toInnerOf(t, matrix, to) {
|
|
@@ -1242,8 +1248,8 @@ var LeaferUI = function(exports) {
|
|
|
1242
1248
|
const {x: x, y: y} = t;
|
|
1243
1249
|
t.x = floor$2(t.x);
|
|
1244
1250
|
t.y = floor$2(t.y);
|
|
1245
|
-
t.width = x > t.x ? ceil$
|
|
1246
|
-
t.height = y > t.y ? ceil$
|
|
1251
|
+
t.width = x > t.x ? ceil$2(t.width + x - t.x) : ceil$2(t.width);
|
|
1252
|
+
t.height = y > t.y ? ceil$2(t.height + y - t.y) : ceil$2(t.height);
|
|
1247
1253
|
},
|
|
1248
1254
|
unsign(t) {
|
|
1249
1255
|
if (t.width < 0) {
|
|
@@ -1303,7 +1309,7 @@ var LeaferUI = function(exports) {
|
|
|
1303
1309
|
},
|
|
1304
1310
|
setPoints(t, points) {
|
|
1305
1311
|
points.forEach((point, index) => index === 0 ? setPoint$2(tempPointBounds$1, point.x, point.y) : addPoint$2(tempPointBounds$1, point.x, point.y));
|
|
1306
|
-
toBounds$
|
|
1312
|
+
toBounds$2(tempPointBounds$1, t);
|
|
1307
1313
|
},
|
|
1308
1314
|
setPoint(t, point) {
|
|
1309
1315
|
B.set(t, point.x, point.y);
|
|
@@ -2060,15 +2066,15 @@ var LeaferUI = function(exports) {
|
|
|
2060
2066
|
DataHelper.copyAttrs(s, size, canvasSizeAttrs);
|
|
2061
2067
|
canvasSizeAttrs.forEach(key => s[key] || (s[key] = 1));
|
|
2062
2068
|
this.bounds = new Bounds(0, 0, this.width, this.height);
|
|
2063
|
-
|
|
2064
|
-
this.updateViewSize();
|
|
2065
|
-
this.smooth = this.config.smooth;
|
|
2066
|
-
}
|
|
2069
|
+
this.updateViewSize();
|
|
2067
2070
|
this.updateClientBounds();
|
|
2068
|
-
if (this.context
|
|
2069
|
-
this.
|
|
2070
|
-
this.
|
|
2071
|
-
|
|
2071
|
+
if (this.context) {
|
|
2072
|
+
this.smooth = this.config.smooth;
|
|
2073
|
+
if (!this.unreal && takeCanvas) {
|
|
2074
|
+
this.clearWorld(takeCanvas.bounds);
|
|
2075
|
+
this.copyWorld(takeCanvas);
|
|
2076
|
+
takeCanvas.recycle();
|
|
2077
|
+
}
|
|
2072
2078
|
}
|
|
2073
2079
|
}
|
|
2074
2080
|
updateViewSize() {}
|
|
@@ -2369,7 +2375,7 @@ var LeaferUI = function(exports) {
|
|
|
2369
2375
|
data[0] ? drawer.arcTo(x, y, right, y, data[0]) : drawer.lineTo(x, y);
|
|
2370
2376
|
}
|
|
2371
2377
|
};
|
|
2372
|
-
const {sin: sin$3, cos: cos$3, atan2: atan2$1, ceil: ceil, abs: abs$2, PI: PI$2, sqrt: sqrt$1, pow: pow} = Math;
|
|
2378
|
+
const {sin: sin$3, cos: cos$3, hypot: hypot, atan2: atan2$1, ceil: ceil$1, abs: abs$2, PI: PI$2, sqrt: sqrt$1, pow: pow} = Math;
|
|
2373
2379
|
const {setPoint: setPoint$1, addPoint: addPoint$1} = TwoPointBoundsHelper;
|
|
2374
2380
|
const {set: set, toNumberPoints: toNumberPoints} = PointHelper;
|
|
2375
2381
|
const {M: M$5, L: L$6, C: C$4, Q: Q$4, Z: Z$5} = PathCommandMap;
|
|
@@ -2435,9 +2441,11 @@ var LeaferUI = function(exports) {
|
|
|
2435
2441
|
const CBy = toY - y1;
|
|
2436
2442
|
let startRadian = atan2$1(BAy, BAx);
|
|
2437
2443
|
let endRadian = atan2$1(CBy, CBx);
|
|
2444
|
+
const lenBA = hypot(BAx, BAy);
|
|
2445
|
+
const lenCB = hypot(CBx, CBy);
|
|
2438
2446
|
let totalRadian = endRadian - startRadian;
|
|
2439
2447
|
if (totalRadian < 0) totalRadian += PI2;
|
|
2440
|
-
if (
|
|
2448
|
+
if (lenBA < 1e-12 || lenCB < 1e-12 || totalRadian < 1e-12 || abs$2(totalRadian - PI$2) < 1e-12) {
|
|
2441
2449
|
if (data) data.push(L$6, x1, y1);
|
|
2442
2450
|
if (setPointBounds) {
|
|
2443
2451
|
setPoint$1(setPointBounds, fromX, fromY);
|
|
@@ -2470,7 +2478,7 @@ var LeaferUI = function(exports) {
|
|
|
2470
2478
|
let totalRadian = endRadian - startRadian;
|
|
2471
2479
|
if (totalRadian < 0) totalRadian += PI2; else if (totalRadian > PI2) totalRadian -= PI2;
|
|
2472
2480
|
if (anticlockwise) totalRadian -= PI2;
|
|
2473
|
-
const parts = ceil(abs$2(totalRadian / PI_2));
|
|
2481
|
+
const parts = ceil$1(abs$2(totalRadian / PI_2));
|
|
2474
2482
|
const partRadian = totalRadian / parts;
|
|
2475
2483
|
const partRadian4Sin = sin$3(partRadian / 4);
|
|
2476
2484
|
const control = 8 / 3 * partRadian4Sin * partRadian4Sin / sin$3(partRadian / 2);
|
|
@@ -3010,11 +3018,7 @@ var LeaferUI = function(exports) {
|
|
|
3010
3018
|
this.set(path);
|
|
3011
3019
|
}
|
|
3012
3020
|
set(path) {
|
|
3013
|
-
|
|
3014
|
-
this.__path = isString(path) ? PathHelper.parse(path) : path;
|
|
3015
|
-
} else {
|
|
3016
|
-
this.__path = [];
|
|
3017
|
-
}
|
|
3021
|
+
this.__path = path ? isString(path) ? PathHelper.parse(path) : path : [];
|
|
3018
3022
|
return this;
|
|
3019
3023
|
}
|
|
3020
3024
|
beginPath() {
|
|
@@ -3176,7 +3180,7 @@ var LeaferUI = function(exports) {
|
|
|
3176
3180
|
};
|
|
3177
3181
|
const {M: M$1, L: L$2, C: C, Q: Q, Z: Z$1, N: N, D: D$1, X: X, G: G, F: F$1, O: O, P: P, U: U} = PathCommandMap;
|
|
3178
3182
|
const {toTwoPointBounds: toTwoPointBounds, toTwoPointBoundsByQuadraticCurve: toTwoPointBoundsByQuadraticCurve, arcTo: arcTo$1, arc: arc, ellipse: ellipse$1} = BezierHelper;
|
|
3179
|
-
const {addPointBounds: addPointBounds, copy: copy$7, addPoint: addPoint, setPoint: setPoint, addBounds: addBounds, toBounds: toBounds$
|
|
3183
|
+
const {addPointBounds: addPointBounds, copy: copy$7, addPoint: addPoint, setPoint: setPoint, addBounds: addBounds, toBounds: toBounds$1} = TwoPointBoundsHelper;
|
|
3180
3184
|
const debug$a = Debug.get("PathBounds");
|
|
3181
3185
|
let radius, radiusX, radiusY;
|
|
3182
3186
|
const tempPointBounds = {};
|
|
@@ -3185,7 +3189,7 @@ var LeaferUI = function(exports) {
|
|
|
3185
3189
|
const PathBounds = {
|
|
3186
3190
|
toBounds(data, setBounds) {
|
|
3187
3191
|
PathBounds.toTwoPointBounds(data, setPointBounds);
|
|
3188
|
-
toBounds$
|
|
3192
|
+
toBounds$1(setPointBounds, setBounds);
|
|
3189
3193
|
},
|
|
3190
3194
|
toTwoPointBounds(data, setPointBounds) {
|
|
3191
3195
|
if (!data || !data.length) return setPoint(setPointBounds, 0, 0);
|
|
@@ -3367,10 +3371,13 @@ var LeaferUI = function(exports) {
|
|
|
3367
3371
|
return smooth;
|
|
3368
3372
|
}
|
|
3369
3373
|
};
|
|
3370
|
-
|
|
3374
|
+
function path(path) {
|
|
3375
|
+
return new PathCreator(path);
|
|
3376
|
+
}
|
|
3377
|
+
const pen = path();
|
|
3378
|
+
PathHelper.creator = path();
|
|
3371
3379
|
PathHelper.parse = PathConvert.parse;
|
|
3372
3380
|
PathHelper.convertToCanvasData = PathConvert.toCanvasData;
|
|
3373
|
-
const pen = new PathCreator;
|
|
3374
3381
|
const {drawRoundRect: drawRoundRect} = RectHelper;
|
|
3375
3382
|
function roundRect(drawer) {
|
|
3376
3383
|
if (drawer && !drawer.roundRect) {
|
|
@@ -3723,7 +3730,7 @@ var LeaferUI = function(exports) {
|
|
|
3723
3730
|
return FileHelper.alphaPixelTypes.some(item => I$1.isFormat(item, config));
|
|
3724
3731
|
},
|
|
3725
3732
|
isFormat(format, config) {
|
|
3726
|
-
if (config.format
|
|
3733
|
+
if (config.format) return config.format === format;
|
|
3727
3734
|
const {url: url} = config;
|
|
3728
3735
|
if (url.startsWith("data:")) {
|
|
3729
3736
|
if (url.startsWith("data:" + FileHelper.mineType(format))) return true;
|
|
@@ -3813,7 +3820,7 @@ var LeaferUI = function(exports) {
|
|
|
3813
3820
|
getFull(_filters) {
|
|
3814
3821
|
return this.view;
|
|
3815
3822
|
}
|
|
3816
|
-
getCanvas(width, height, opacity, _filters, xGap, yGap) {
|
|
3823
|
+
getCanvas(width, height, opacity, _filters, xGap, yGap, smooth) {
|
|
3817
3824
|
width || (width = this.width);
|
|
3818
3825
|
height || (height = this.height);
|
|
3819
3826
|
if (this.cache) {
|
|
@@ -3829,6 +3836,7 @@ var LeaferUI = function(exports) {
|
|
|
3829
3836
|
const canvas = Platform.origin.createCanvas(max$1(floor$1(width + (xGap || 0)), 1), max$1(floor$1(height + (yGap || 0)), 1));
|
|
3830
3837
|
const ctx = canvas.getContext("2d");
|
|
3831
3838
|
if (opacity) ctx.globalAlpha = opacity;
|
|
3839
|
+
ctx.imageSmoothingEnabled = smooth === false ? false : true;
|
|
3832
3840
|
ctx.drawImage(this.view, 0, 0, width, height);
|
|
3833
3841
|
this.cache = this.use > 1 ? {
|
|
3834
3842
|
data: canvas,
|
|
@@ -3867,7 +3875,7 @@ var LeaferUI = function(exports) {
|
|
|
3867
3875
|
return {
|
|
3868
3876
|
get() {
|
|
3869
3877
|
const v = this[privateKey];
|
|
3870
|
-
return
|
|
3878
|
+
return v == null ? defaultValue : v;
|
|
3871
3879
|
},
|
|
3872
3880
|
set(value) {
|
|
3873
3881
|
this[privateKey] = value;
|
|
@@ -4120,21 +4128,21 @@ var LeaferUI = function(exports) {
|
|
|
4120
4128
|
};
|
|
4121
4129
|
} else if (typeof defaultValue === "function") {
|
|
4122
4130
|
property.get = function() {
|
|
4123
|
-
|
|
4124
|
-
return v
|
|
4131
|
+
const v = this[computedKey];
|
|
4132
|
+
return v == null ? defaultValue(this.__leaf) : v;
|
|
4125
4133
|
};
|
|
4126
4134
|
} else if (isObject(defaultValue)) {
|
|
4127
4135
|
const isEmpty = isEmptyData(defaultValue);
|
|
4128
4136
|
property.get = function() {
|
|
4129
|
-
|
|
4130
|
-
return v
|
|
4137
|
+
const v = this[computedKey];
|
|
4138
|
+
return v == null ? this[computedKey] = isEmpty ? {} : DataHelper.clone(defaultValue) : v;
|
|
4131
4139
|
};
|
|
4132
4140
|
}
|
|
4133
4141
|
const isBox = target.isBranchLeaf;
|
|
4134
4142
|
if (key === "width") {
|
|
4135
4143
|
property.get = function() {
|
|
4136
4144
|
const v = this[computedKey];
|
|
4137
|
-
if (v
|
|
4145
|
+
if (v == null) {
|
|
4138
4146
|
const t = this, naturalWidth = t.__naturalWidth, leaf = t.__leaf;
|
|
4139
4147
|
if (!defaultValue || leaf.pathInputed) return leaf.boxBounds.width;
|
|
4140
4148
|
if (naturalWidth) return t._height && t.__useNaturalRatio ? t._height * naturalWidth / t.__naturalHeight : naturalWidth;
|
|
@@ -4144,7 +4152,7 @@ var LeaferUI = function(exports) {
|
|
|
4144
4152
|
} else if (key === "height") {
|
|
4145
4153
|
property.get = function() {
|
|
4146
4154
|
const v = this[computedKey];
|
|
4147
|
-
if (v
|
|
4155
|
+
if (v == null) {
|
|
4148
4156
|
const t = this, naturalHeight = t.__naturalHeight, leaf = t.__leaf;
|
|
4149
4157
|
if (!defaultValue || leaf.pathInputed) return leaf.boxBounds.height;
|
|
4150
4158
|
if (naturalHeight) return t._width && t.__useNaturalRatio ? t._width * naturalHeight / t.__naturalWidth : naturalHeight;
|
|
@@ -4428,8 +4436,9 @@ var LeaferUI = function(exports) {
|
|
|
4428
4436
|
};
|
|
4429
4437
|
const L = LeafHelper;
|
|
4430
4438
|
const {updateAllMatrix: updateAllMatrix$3, updateMatrix: updateMatrix$2, updateAllWorldOpacity: updateAllWorldOpacity, updateAllChange: updateAllChange$1, updateChange: updateChange$1} = L;
|
|
4431
|
-
function getTempLocal(t,
|
|
4432
|
-
|
|
4439
|
+
function getTempLocal(t, worldPoint) {
|
|
4440
|
+
t.updateLayout();
|
|
4441
|
+
return t.parent ? PointHelper.tempToInnerOf(worldPoint, t.parent.scrollWorldTransform) : worldPoint;
|
|
4433
4442
|
}
|
|
4434
4443
|
const LeafBoundsHelper = {
|
|
4435
4444
|
worldBounds(target) {
|
|
@@ -4876,7 +4885,7 @@ var LeaferUI = function(exports) {
|
|
|
4876
4885
|
}
|
|
4877
4886
|
boxChange() {
|
|
4878
4887
|
this.boxChanged = true;
|
|
4879
|
-
this.localBoxChanged || this.localBoxChange();
|
|
4888
|
+
this.localBoxChanged ? this.boundsChanged || (this.boundsChanged = true) : this.localBoxChange();
|
|
4880
4889
|
this.hitCanvasChanged = true;
|
|
4881
4890
|
}
|
|
4882
4891
|
localBoxChange() {
|
|
@@ -4910,7 +4919,7 @@ var LeaferUI = function(exports) {
|
|
|
4910
4919
|
}
|
|
4911
4920
|
matrixChange() {
|
|
4912
4921
|
this.matrixChanged = true;
|
|
4913
|
-
this.localBoxChanged || this.localBoxChange();
|
|
4922
|
+
this.localBoxChanged ? this.boundsChanged || (this.boundsChanged = true) : this.localBoxChange();
|
|
4914
4923
|
}
|
|
4915
4924
|
surfaceChange() {
|
|
4916
4925
|
this.surfaceChanged = true;
|
|
@@ -5354,7 +5363,7 @@ var LeaferUI = function(exports) {
|
|
|
5354
5363
|
const {updateMatrix: updateMatrix$1, updateAllMatrix: updateAllMatrix$2} = LeafHelper;
|
|
5355
5364
|
const {updateBounds: updateBounds$1} = BranchHelper;
|
|
5356
5365
|
const {toOuterOf: toOuterOf$1, copyAndSpread: copyAndSpread$1, copy: copy$4} = BoundsHelper;
|
|
5357
|
-
const {toBounds: toBounds
|
|
5366
|
+
const {toBounds: toBounds} = PathBounds;
|
|
5358
5367
|
const LeafBounds = {
|
|
5359
5368
|
__updateWorldBounds() {
|
|
5360
5369
|
const layout = this.__layout;
|
|
@@ -5425,8 +5434,8 @@ var LeaferUI = function(exports) {
|
|
|
5425
5434
|
__updateBoxBounds(_secondLayout, _bounds) {
|
|
5426
5435
|
const b = this.__layout.boxBounds;
|
|
5427
5436
|
const data = this.__;
|
|
5428
|
-
if (data.
|
|
5429
|
-
toBounds
|
|
5437
|
+
if (data.__usePathBox) {
|
|
5438
|
+
toBounds(data.path, b);
|
|
5430
5439
|
} else {
|
|
5431
5440
|
b.x = 0;
|
|
5432
5441
|
b.y = 0;
|
|
@@ -5884,10 +5893,10 @@ var LeaferUI = function(exports) {
|
|
|
5884
5893
|
relative.innerToWorld(world, to, distance);
|
|
5885
5894
|
world = to ? to : world;
|
|
5886
5895
|
}
|
|
5887
|
-
toInnerPoint(this.
|
|
5896
|
+
toInnerPoint(this.scrollWorldTransform, world, to, distance);
|
|
5888
5897
|
}
|
|
5889
5898
|
innerToWorld(inner, to, distance, relative) {
|
|
5890
|
-
toOuterPoint(this.
|
|
5899
|
+
toOuterPoint(this.scrollWorldTransform, inner, to, distance);
|
|
5891
5900
|
if (relative) relative.worldToInner(to ? to : inner, null, distance);
|
|
5892
5901
|
}
|
|
5893
5902
|
getBoxPoint(world, relative, distance, change) {
|
|
@@ -6341,7 +6350,7 @@ var LeaferUI = function(exports) {
|
|
|
6341
6350
|
this.levelMap = null;
|
|
6342
6351
|
}
|
|
6343
6352
|
}
|
|
6344
|
-
const version = "1.9.
|
|
6353
|
+
const version = "1.9.5";
|
|
6345
6354
|
class LeaferCanvas extends LeaferCanvasBase {
|
|
6346
6355
|
get allowBackgroundColor() {
|
|
6347
6356
|
return true;
|
|
@@ -6737,7 +6746,7 @@ var LeaferUI = function(exports) {
|
|
|
6737
6746
|
this.times = 0;
|
|
6738
6747
|
this.config = {
|
|
6739
6748
|
usePartRender: true,
|
|
6740
|
-
maxFPS:
|
|
6749
|
+
maxFPS: 120
|
|
6741
6750
|
};
|
|
6742
6751
|
this.target = target;
|
|
6743
6752
|
this.canvas = canvas;
|
|
@@ -6892,11 +6901,15 @@ var LeaferUI = function(exports) {
|
|
|
6892
6901
|
if (this.requestTime || !target) return;
|
|
6893
6902
|
if (target.parentApp) return target.parentApp.requestRender(false);
|
|
6894
6903
|
const requestTime = this.requestTime = Date.now();
|
|
6895
|
-
|
|
6896
|
-
|
|
6904
|
+
const render = () => {
|
|
6905
|
+
const nowFPS = 1e3 / (Date.now() - requestTime);
|
|
6906
|
+
const {maxFPS: maxFPS} = this.config;
|
|
6907
|
+
if (maxFPS && nowFPS > maxFPS - .5) return Platform.requestRender(render);
|
|
6908
|
+
this.FPS = Math.min(120, Math.ceil(nowFPS));
|
|
6897
6909
|
this.requestTime = 0;
|
|
6898
6910
|
this.checkRender();
|
|
6899
|
-
}
|
|
6911
|
+
};
|
|
6912
|
+
Platform.requestRender(render);
|
|
6900
6913
|
}
|
|
6901
6914
|
__onResize(e) {
|
|
6902
6915
|
if (this.canvas.unreal) return;
|
|
@@ -6939,7 +6952,8 @@ var LeaferUI = function(exports) {
|
|
|
6939
6952
|
if (this.target) {
|
|
6940
6953
|
this.stop();
|
|
6941
6954
|
this.__removeListenEvents();
|
|
6942
|
-
this.
|
|
6955
|
+
this.config = {};
|
|
6956
|
+
this.target = this.canvas = null;
|
|
6943
6957
|
}
|
|
6944
6958
|
}
|
|
6945
6959
|
}
|
|
@@ -7396,7 +7410,11 @@ var LeaferUI = function(exports) {
|
|
|
7396
7410
|
}
|
|
7397
7411
|
}
|
|
7398
7412
|
class FrameData extends BoxData {}
|
|
7399
|
-
class LineData extends UIData {
|
|
7413
|
+
class LineData extends UIData {
|
|
7414
|
+
get __usePathBox() {
|
|
7415
|
+
return this.points || this.__pathInputed;
|
|
7416
|
+
}
|
|
7417
|
+
}
|
|
7400
7418
|
class RectData extends UIData {
|
|
7401
7419
|
get __boxStroke() {
|
|
7402
7420
|
return !this.__pathInputed;
|
|
@@ -7407,7 +7425,7 @@ var LeaferUI = function(exports) {
|
|
|
7407
7425
|
return !this.__pathInputed;
|
|
7408
7426
|
}
|
|
7409
7427
|
}
|
|
7410
|
-
class PolygonData extends
|
|
7428
|
+
class PolygonData extends LineData {}
|
|
7411
7429
|
class StarData extends UIData {}
|
|
7412
7430
|
class PathData extends UIData {
|
|
7413
7431
|
get __pathInputed() {
|
|
@@ -7701,20 +7719,9 @@ var LeaferUI = function(exports) {
|
|
|
7701
7719
|
if (!path) this.__drawPathByBox(pen);
|
|
7702
7720
|
return pen;
|
|
7703
7721
|
}
|
|
7704
|
-
constructor(data) {
|
|
7705
|
-
super(data);
|
|
7706
|
-
}
|
|
7707
7722
|
reset(_data) {}
|
|
7708
|
-
set(data,
|
|
7709
|
-
if (data)
|
|
7710
|
-
if (transition) {
|
|
7711
|
-
if (transition === "temp") {
|
|
7712
|
-
this.lockNormalStyle = true;
|
|
7713
|
-
Object.assign(this, data);
|
|
7714
|
-
this.lockNormalStyle = false;
|
|
7715
|
-
} else this.animate(data, transition);
|
|
7716
|
-
} else Object.assign(this, data);
|
|
7717
|
-
}
|
|
7723
|
+
set(data, _transition) {
|
|
7724
|
+
if (data) Object.assign(this, data);
|
|
7718
7725
|
}
|
|
7719
7726
|
get(name) {
|
|
7720
7727
|
return isString(name) ? this.__.__getInput(name) : this.__.__getInputData(name);
|
|
@@ -7760,7 +7767,7 @@ var LeaferUI = function(exports) {
|
|
|
7760
7767
|
const data = this.__;
|
|
7761
7768
|
if (data.path) {
|
|
7762
7769
|
data.__pathForRender = data.cornerRadius ? PathCorner.smooth(data.path, data.cornerRadius, data.cornerSmoothing) : data.path;
|
|
7763
|
-
if (data.__useArrow) PathArrow.addArrows(this
|
|
7770
|
+
if (data.__useArrow) PathArrow.addArrows(this);
|
|
7764
7771
|
} else data.__pathForRender && (data.__pathForRender = undefined);
|
|
7765
7772
|
}
|
|
7766
7773
|
__drawRenderPath(canvas) {
|
|
@@ -7784,7 +7791,8 @@ var LeaferUI = function(exports) {
|
|
|
7784
7791
|
drawImagePlaceholder(canvas, _image) {
|
|
7785
7792
|
Paint.fill(this.__.placeholderColor, this, canvas);
|
|
7786
7793
|
}
|
|
7787
|
-
animate(
|
|
7794
|
+
animate(keyframe, _options, _type, _isTemp) {
|
|
7795
|
+
this.set(keyframe);
|
|
7788
7796
|
return Plugin.need("animate");
|
|
7789
7797
|
}
|
|
7790
7798
|
killAnimate(_type, _nextStyle) {}
|
|
@@ -7898,9 +7906,6 @@ var LeaferUI = function(exports) {
|
|
|
7898
7906
|
get isBranch() {
|
|
7899
7907
|
return true;
|
|
7900
7908
|
}
|
|
7901
|
-
constructor(data) {
|
|
7902
|
-
super(data);
|
|
7903
|
-
}
|
|
7904
7909
|
reset(data) {
|
|
7905
7910
|
this.__setBranch();
|
|
7906
7911
|
super.reset(data);
|
|
@@ -8018,7 +8023,7 @@ var LeaferUI = function(exports) {
|
|
|
8018
8023
|
const canvas = this.canvas = Creator.canvas(config);
|
|
8019
8024
|
this.__controllers.push(this.renderer = Creator.renderer(this, canvas, config), this.watcher = Creator.watcher(this, config), this.layouter = Creator.layouter(this, config));
|
|
8020
8025
|
if (this.isApp) this.__setApp();
|
|
8021
|
-
this.__checkAutoLayout(
|
|
8026
|
+
this.__checkAutoLayout();
|
|
8022
8027
|
this.view = canvas.view;
|
|
8023
8028
|
if (!parentApp) {
|
|
8024
8029
|
this.selector = Creator.selector(this);
|
|
@@ -8117,7 +8122,8 @@ var LeaferUI = function(exports) {
|
|
|
8117
8122
|
this.leafer = leafer;
|
|
8118
8123
|
this.__level = 1;
|
|
8119
8124
|
}
|
|
8120
|
-
__checkAutoLayout(
|
|
8125
|
+
__checkAutoLayout() {
|
|
8126
|
+
const {config: config, parentApp: parentApp} = this;
|
|
8121
8127
|
if (!parentApp) {
|
|
8122
8128
|
if (!config.width || !config.height) this.autoLayout = new AutoBounds(config);
|
|
8123
8129
|
this.canvas.startAutoLayout(this.autoLayout, this.__onResize.bind(this));
|
|
@@ -8143,9 +8149,10 @@ var LeaferUI = function(exports) {
|
|
|
8143
8149
|
return super.__getAttr(attrName);
|
|
8144
8150
|
}
|
|
8145
8151
|
__changeCanvasSize(attrName, newValue) {
|
|
8146
|
-
const
|
|
8147
|
-
data
|
|
8148
|
-
|
|
8152
|
+
const {config: config, canvas: canvas} = this;
|
|
8153
|
+
const data = DataHelper.copyAttrs({}, canvas, canvasSizeAttrs);
|
|
8154
|
+
data[attrName] = config[attrName] = newValue;
|
|
8155
|
+
config.width && config.height ? canvas.stopAutoLayout() : this.__checkAutoLayout();
|
|
8149
8156
|
this.__doResize(data);
|
|
8150
8157
|
}
|
|
8151
8158
|
__changeFill(newValue) {
|
|
@@ -8292,9 +8299,9 @@ var LeaferUI = function(exports) {
|
|
|
8292
8299
|
if (!this.parent) {
|
|
8293
8300
|
if (this.selector) this.selector.destroy();
|
|
8294
8301
|
if (this.hitCanvasManager) this.hitCanvasManager.destroy();
|
|
8295
|
-
this.canvasManager.destroy();
|
|
8302
|
+
if (this.canvasManager) this.canvasManager.destroy();
|
|
8296
8303
|
}
|
|
8297
|
-
this.canvas.destroy();
|
|
8304
|
+
if (this.canvas) this.canvas.destroy();
|
|
8298
8305
|
this.config.view = this.view = this.parentApp = null;
|
|
8299
8306
|
if (this.userConfig) this.userConfig.view = null;
|
|
8300
8307
|
super.destroy();
|
|
@@ -8317,9 +8324,6 @@ var LeaferUI = function(exports) {
|
|
|
8317
8324
|
get __tag() {
|
|
8318
8325
|
return "Rect";
|
|
8319
8326
|
}
|
|
8320
|
-
constructor(data) {
|
|
8321
|
-
super(data);
|
|
8322
|
-
}
|
|
8323
8327
|
};
|
|
8324
8328
|
__decorate([ dataProcessor(RectData) ], exports.Rect.prototype, "__", void 0);
|
|
8325
8329
|
exports.Rect = __decorate([ useModule(RectRender), rewriteAble(), registerUI() ], exports.Rect);
|
|
@@ -8368,29 +8372,24 @@ var LeaferUI = function(exports) {
|
|
|
8368
8372
|
}
|
|
8369
8373
|
__updateStrokeBounds() {}
|
|
8370
8374
|
__updateRenderBounds() {
|
|
8371
|
-
let isOverflow;
|
|
8375
|
+
let isOverflow, isScrollMode;
|
|
8372
8376
|
if (this.children.length) {
|
|
8373
|
-
const data = this.__, layout = this.__layout, {renderBounds: renderBounds, boxBounds: boxBounds} = layout;
|
|
8377
|
+
const data = this.__, layout = this.__layout, {renderBounds: renderBounds, boxBounds: boxBounds} = layout, {overflow: overflow} = data;
|
|
8374
8378
|
const childrenRenderBounds = layout.childrenRenderBounds || (layout.childrenRenderBounds = getBoundsData());
|
|
8375
8379
|
super.__updateRenderBounds(childrenRenderBounds);
|
|
8376
|
-
if (
|
|
8380
|
+
if (isScrollMode = overflow.includes("scroll")) {
|
|
8377
8381
|
add(childrenRenderBounds, boxBounds);
|
|
8378
8382
|
scroll(childrenRenderBounds, data);
|
|
8379
8383
|
}
|
|
8380
8384
|
this.__updateRectRenderBounds();
|
|
8381
8385
|
isOverflow = !includes$1(boxBounds, childrenRenderBounds);
|
|
8382
|
-
if (isOverflow &&
|
|
8386
|
+
if (isOverflow && overflow === "show") add(renderBounds, childrenRenderBounds);
|
|
8383
8387
|
} else this.__updateRectRenderBounds();
|
|
8384
8388
|
DataHelper.stintSet(this, "isOverflow", isOverflow);
|
|
8385
|
-
this.__checkScroll();
|
|
8389
|
+
this.__checkScroll(isScrollMode);
|
|
8386
8390
|
}
|
|
8387
8391
|
__updateRectRenderBounds() {}
|
|
8388
|
-
|
|
8389
|
-
if (this.hasScroller) this.__updateScroll();
|
|
8390
|
-
super.__updateWorldBounds();
|
|
8391
|
-
}
|
|
8392
|
-
__checkScroll() {}
|
|
8393
|
-
__updateScroll() {}
|
|
8392
|
+
__checkScroll(_isScrollMode) {}
|
|
8394
8393
|
__updateRectChange() {}
|
|
8395
8394
|
__updateChange() {
|
|
8396
8395
|
super.__updateChange();
|
|
@@ -8436,9 +8435,6 @@ var LeaferUI = function(exports) {
|
|
|
8436
8435
|
get isFrame() {
|
|
8437
8436
|
return true;
|
|
8438
8437
|
}
|
|
8439
|
-
constructor(data) {
|
|
8440
|
-
super(data);
|
|
8441
|
-
}
|
|
8442
8438
|
};
|
|
8443
8439
|
__decorate([ dataProcessor(FrameData) ], exports.Frame.prototype, "__", void 0);
|
|
8444
8440
|
__decorate([ surfaceType("#FFFFFF") ], exports.Frame.prototype, "fill", void 0);
|
|
@@ -8449,9 +8445,6 @@ var LeaferUI = function(exports) {
|
|
|
8449
8445
|
get __tag() {
|
|
8450
8446
|
return "Ellipse";
|
|
8451
8447
|
}
|
|
8452
|
-
constructor(data) {
|
|
8453
|
-
super(data);
|
|
8454
|
-
}
|
|
8455
8448
|
__updatePath() {
|
|
8456
8449
|
const {width: width, height: height, innerRadius: innerRadius, startAngle: startAngle, endAngle: endAngle} = this.__;
|
|
8457
8450
|
const rx = width / 2, ry = height / 2;
|
|
@@ -8487,7 +8480,6 @@ var LeaferUI = function(exports) {
|
|
|
8487
8480
|
exports.Ellipse = __decorate([ registerUI() ], exports.Ellipse);
|
|
8488
8481
|
const {moveTo: moveTo$2, lineTo: lineTo$2, drawPoints: drawPoints$1} = PathCommandDataHelper;
|
|
8489
8482
|
const {rotate: rotate$1, getAngle: getAngle$1, getDistance: getDistance$2, defaultPoint: defaultPoint} = PointHelper;
|
|
8490
|
-
const {toBounds: toBounds} = PathBounds;
|
|
8491
8483
|
exports.Line = class Line extends exports.UI {
|
|
8492
8484
|
get __tag() {
|
|
8493
8485
|
return "Line";
|
|
@@ -8504,31 +8496,16 @@ var LeaferUI = function(exports) {
|
|
|
8504
8496
|
this.rotation = getAngle$1(defaultPoint, value);
|
|
8505
8497
|
if (this.height) this.height = 0;
|
|
8506
8498
|
}
|
|
8507
|
-
constructor(data) {
|
|
8508
|
-
super(data);
|
|
8509
|
-
}
|
|
8510
8499
|
__updatePath() {
|
|
8511
8500
|
const data = this.__;
|
|
8512
8501
|
const path = data.path = [];
|
|
8513
8502
|
if (data.points) {
|
|
8514
|
-
drawPoints$1(path, data.points,
|
|
8503
|
+
drawPoints$1(path, data.points, data.curve, data.closed);
|
|
8515
8504
|
} else {
|
|
8516
8505
|
moveTo$2(path, 0, 0);
|
|
8517
8506
|
lineTo$2(path, this.width, 0);
|
|
8518
8507
|
}
|
|
8519
8508
|
}
|
|
8520
|
-
__updateRenderPath() {
|
|
8521
|
-
const data = this.__;
|
|
8522
|
-
if (!this.pathInputed && data.points && data.curve) {
|
|
8523
|
-
drawPoints$1(data.__pathForRender = [], data.points, data.curve, data.closed);
|
|
8524
|
-
if (data.__useArrow) PathArrow.addArrows(this, false);
|
|
8525
|
-
} else super.__updateRenderPath();
|
|
8526
|
-
}
|
|
8527
|
-
__updateBoxBounds() {
|
|
8528
|
-
if (this.points) {
|
|
8529
|
-
toBounds(this.__.__pathForRender, this.__layout.boxBounds);
|
|
8530
|
-
} else super.__updateBoxBounds();
|
|
8531
|
-
}
|
|
8532
8509
|
};
|
|
8533
8510
|
__decorate([ dataProcessor(LineData) ], exports.Line.prototype, "__", void 0);
|
|
8534
8511
|
__decorate([ affectStrokeBoundsType("center") ], exports.Line.prototype, "strokeAlign", void 0);
|
|
@@ -8544,15 +8521,13 @@ var LeaferUI = function(exports) {
|
|
|
8544
8521
|
get __tag() {
|
|
8545
8522
|
return "Polygon";
|
|
8546
8523
|
}
|
|
8547
|
-
constructor(data) {
|
|
8548
|
-
super(data);
|
|
8549
|
-
}
|
|
8550
8524
|
__updatePath() {
|
|
8551
|
-
const
|
|
8552
|
-
|
|
8553
|
-
|
|
8525
|
+
const data = this.__;
|
|
8526
|
+
const path = data.path = [];
|
|
8527
|
+
if (data.points) {
|
|
8528
|
+
drawPoints(path, data.points, data.curve, true);
|
|
8554
8529
|
} else {
|
|
8555
|
-
const {width: width, height: height, sides: sides} =
|
|
8530
|
+
const {width: width, height: height, sides: sides} = data;
|
|
8556
8531
|
const rx = width / 2, ry = height / 2;
|
|
8557
8532
|
moveTo$1(path, rx, 0);
|
|
8558
8533
|
for (let i = 1; i < sides; i++) {
|
|
@@ -8577,9 +8552,6 @@ var LeaferUI = function(exports) {
|
|
|
8577
8552
|
get __tag() {
|
|
8578
8553
|
return "Star";
|
|
8579
8554
|
}
|
|
8580
|
-
constructor(data) {
|
|
8581
|
-
super(data);
|
|
8582
|
-
}
|
|
8583
8555
|
__updatePath() {
|
|
8584
8556
|
const {width: width, height: height, corners: corners, innerRadius: innerRadius} = this.__;
|
|
8585
8557
|
const rx = width / 2, ry = height / 2;
|
|
@@ -8607,9 +8579,6 @@ var LeaferUI = function(exports) {
|
|
|
8607
8579
|
const {fill: fill} = this.__;
|
|
8608
8580
|
return isArray(fill) && fill[0].image;
|
|
8609
8581
|
}
|
|
8610
|
-
constructor(data) {
|
|
8611
|
-
super(data);
|
|
8612
|
-
}
|
|
8613
8582
|
};
|
|
8614
8583
|
__decorate([ dataProcessor(ImageData) ], exports.Image.prototype, "__", void 0);
|
|
8615
8584
|
__decorate([ boundsType("") ], exports.Image.prototype, "url", void 0);
|
|
@@ -8694,9 +8663,6 @@ var LeaferUI = function(exports) {
|
|
|
8694
8663
|
this.updateLayout();
|
|
8695
8664
|
return this.__.__textDrawData;
|
|
8696
8665
|
}
|
|
8697
|
-
constructor(data) {
|
|
8698
|
-
super(data);
|
|
8699
|
-
}
|
|
8700
8666
|
__updateTextDrawData() {
|
|
8701
8667
|
const data = this.__;
|
|
8702
8668
|
const {lineHeight: lineHeight, letterSpacing: letterSpacing, fontFamily: fontFamily, fontSize: fontSize, fontWeight: fontWeight, italic: italic, textCase: textCase, textOverflow: textOverflow, padding: padding} = data;
|
|
@@ -8800,9 +8766,6 @@ var LeaferUI = function(exports) {
|
|
|
8800
8766
|
get __tag() {
|
|
8801
8767
|
return "Path";
|
|
8802
8768
|
}
|
|
8803
|
-
constructor(data) {
|
|
8804
|
-
super(data);
|
|
8805
|
-
}
|
|
8806
8769
|
};
|
|
8807
8770
|
__decorate([ dataProcessor(PathData) ], exports.Path.prototype, "__", void 0);
|
|
8808
8771
|
__decorate([ affectStrokeBoundsType("center") ], exports.Path.prototype, "strokeAlign", void 0);
|
|
@@ -8811,9 +8774,6 @@ var LeaferUI = function(exports) {
|
|
|
8811
8774
|
get __tag() {
|
|
8812
8775
|
return "Pen";
|
|
8813
8776
|
}
|
|
8814
|
-
constructor(data) {
|
|
8815
|
-
super(data);
|
|
8816
|
-
}
|
|
8817
8777
|
setStyle(data) {
|
|
8818
8778
|
const path = this.pathElement = new exports.Path(data);
|
|
8819
8779
|
this.pathStyle = data;
|
|
@@ -10732,7 +10692,7 @@ var LeaferUI = function(exports) {
|
|
|
10732
10692
|
if (leafer && leafer.viewReady) leafer.renderer.ignore = value;
|
|
10733
10693
|
}
|
|
10734
10694
|
const {get: get$1, scale: scale, copy: copy$1} = MatrixHelper;
|
|
10735
|
-
const {floor: floor, max: max, abs: abs} = Math;
|
|
10695
|
+
const {floor: floor, ceil: ceil, max: max, abs: abs} = Math;
|
|
10736
10696
|
function createPattern(ui, paint, pixelRatio) {
|
|
10737
10697
|
let {scaleX: scaleX, scaleY: scaleY} = ui.getRenderScaleData(true, paint.scaleFixed);
|
|
10738
10698
|
const id = scaleX + "-" + scaleY + "-" + pixelRatio;
|
|
@@ -10741,8 +10701,6 @@ var LeaferUI = function(exports) {
|
|
|
10741
10701
|
let imageScale, imageMatrix, {width: width, height: height, scaleX: sx, scaleY: sy, transform: transform, repeat: repeat, gap: gap} = data;
|
|
10742
10702
|
scaleX *= pixelRatio;
|
|
10743
10703
|
scaleY *= pixelRatio;
|
|
10744
|
-
const xGap = gap && gap.x * scaleX;
|
|
10745
|
-
const yGap = gap && gap.y * scaleY;
|
|
10746
10704
|
if (sx) {
|
|
10747
10705
|
sx = abs(sx);
|
|
10748
10706
|
sy = abs(sy);
|
|
@@ -10759,7 +10717,10 @@ var LeaferUI = function(exports) {
|
|
|
10759
10717
|
if (size > Platform.image.maxCacheSize) return false;
|
|
10760
10718
|
}
|
|
10761
10719
|
let maxSize = Platform.image.maxPatternSize;
|
|
10762
|
-
if (
|
|
10720
|
+
if (image.isSVG) {
|
|
10721
|
+
const ws = width / image.width;
|
|
10722
|
+
if (ws > 1) imageScale = ws / ceil(ws);
|
|
10723
|
+
} else {
|
|
10763
10724
|
const imageSize = image.width * image.height;
|
|
10764
10725
|
if (maxSize > imageSize) maxSize = imageSize;
|
|
10765
10726
|
}
|
|
@@ -10774,18 +10735,20 @@ var LeaferUI = function(exports) {
|
|
|
10774
10735
|
scaleX /= sx;
|
|
10775
10736
|
scaleY /= sy;
|
|
10776
10737
|
}
|
|
10738
|
+
const xGap = gap && gap.x * scaleX;
|
|
10739
|
+
const yGap = gap && gap.y * scaleY;
|
|
10777
10740
|
if (transform || scaleX !== 1 || scaleY !== 1) {
|
|
10741
|
+
const canvasWidth = width + (xGap || 0);
|
|
10742
|
+
const canvasHeight = height + (yGap || 0);
|
|
10743
|
+
scaleX /= canvasWidth / max(floor(canvasWidth), 1);
|
|
10744
|
+
scaleY /= canvasHeight / max(floor(canvasHeight), 1);
|
|
10778
10745
|
if (!imageMatrix) {
|
|
10779
10746
|
imageMatrix = get$1();
|
|
10780
10747
|
if (transform) copy$1(imageMatrix, transform);
|
|
10781
10748
|
}
|
|
10782
10749
|
scale(imageMatrix, 1 / scaleX, 1 / scaleY);
|
|
10783
10750
|
}
|
|
10784
|
-
|
|
10785
|
-
const canvasWidth = width + (xGap || 0), canvasHeight = height + (yGap || 0);
|
|
10786
|
-
scale(imageMatrix, canvasWidth / max(floor(canvasWidth), 1), canvasHeight / max(floor(canvasHeight), 1));
|
|
10787
|
-
}
|
|
10788
|
-
const canvas = image.getCanvas(width, height, data.opacity, data.filters, xGap, yGap);
|
|
10751
|
+
const canvas = image.getCanvas(width, height, data.opacity, data.filters, xGap, yGap, ui.leafer && ui.leafer.config.smooth);
|
|
10789
10752
|
const pattern = image.getPattern(canvas, repeat || (Platform.origin.noRepeat || "no-repeat"), imageMatrix, paint);
|
|
10790
10753
|
paint.style = pattern;
|
|
10791
10754
|
paint.patternId = id;
|
|
@@ -11798,6 +11761,7 @@ var LeaferUI = function(exports) {
|
|
|
11798
11761
|
exports.maskType = maskType;
|
|
11799
11762
|
exports.naturalBoundsType = naturalBoundsType;
|
|
11800
11763
|
exports.opacityType = opacityType;
|
|
11764
|
+
exports.path = path;
|
|
11801
11765
|
exports.pathInputType = pathInputType;
|
|
11802
11766
|
exports.pathType = pathType;
|
|
11803
11767
|
exports.pen = pen;
|