@leafer-draw/worker 1.0.10 → 1.1.1
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 +25 -12
- package/dist/worker.esm.js +25 -12
- package/dist/worker.esm.min.js +1 -1
- package/dist/worker.js +130 -98
- package/dist/worker.min.cjs +1 -1
- package/dist/worker.min.js +1 -1
- package/dist/worker.module.js +130 -98
- package/dist/worker.module.min.js +1 -1
- package/package.json +6 -6
package/dist/worker.module.js
CHANGED
|
@@ -108,7 +108,7 @@ const MathHelper = {
|
|
|
108
108
|
return rotation - oldRotation;
|
|
109
109
|
},
|
|
110
110
|
float(num, maxLength) {
|
|
111
|
-
const a = maxLength ? pow$1(10, maxLength) : 1000000000000;
|
|
111
|
+
const a = maxLength !== undefined ? pow$1(10, maxLength) : 1000000000000;
|
|
112
112
|
num = round(num * a) / a;
|
|
113
113
|
return num === -0 ? 0 : num;
|
|
114
114
|
},
|
|
@@ -1374,7 +1374,7 @@ function getNameList(name) {
|
|
|
1374
1374
|
}
|
|
1375
1375
|
const D$4 = Debug;
|
|
1376
1376
|
|
|
1377
|
-
const debug$
|
|
1377
|
+
const debug$e = Debug.get('RunTime');
|
|
1378
1378
|
const Run = {
|
|
1379
1379
|
currentId: 0,
|
|
1380
1380
|
currentName: '',
|
|
@@ -1392,7 +1392,7 @@ const Run = {
|
|
|
1392
1392
|
const time = R.idMap[id], name = R.nameMap[id];
|
|
1393
1393
|
const duration = microsecond ? (performance.now() - time) / 1000 : Date.now() - time;
|
|
1394
1394
|
R.idMap[id] = R.nameMap[id] = R.nameToIdMap[name] = undefined;
|
|
1395
|
-
debug$
|
|
1395
|
+
debug$e.log(name, duration, 'ms');
|
|
1396
1396
|
},
|
|
1397
1397
|
endOfName(name, microsecond) {
|
|
1398
1398
|
const id = R.nameToIdMap[name];
|
|
@@ -1406,18 +1406,18 @@ function needPlugin(name) {
|
|
|
1406
1406
|
console.error('need plugin: @leafer-in/' + name);
|
|
1407
1407
|
}
|
|
1408
1408
|
|
|
1409
|
-
const debug$
|
|
1409
|
+
const debug$d = Debug.get('UICreator');
|
|
1410
1410
|
const UICreator = {
|
|
1411
1411
|
list: {},
|
|
1412
1412
|
register(UI) {
|
|
1413
1413
|
const { __tag: tag } = UI.prototype;
|
|
1414
1414
|
if (list$1[tag])
|
|
1415
|
-
debug$
|
|
1415
|
+
debug$d.repeat(tag);
|
|
1416
1416
|
list$1[tag] = UI;
|
|
1417
1417
|
},
|
|
1418
1418
|
get(tag, data, x, y, width, height) {
|
|
1419
1419
|
if (!list$1[tag])
|
|
1420
|
-
debug$
|
|
1420
|
+
debug$d.error('not register ' + tag);
|
|
1421
1421
|
const ui = new list$1[tag](data);
|
|
1422
1422
|
if (x !== undefined) {
|
|
1423
1423
|
ui.x = x;
|
|
@@ -1433,7 +1433,7 @@ const UICreator = {
|
|
|
1433
1433
|
};
|
|
1434
1434
|
const { list: list$1 } = UICreator;
|
|
1435
1435
|
|
|
1436
|
-
const debug$
|
|
1436
|
+
const debug$c = Debug.get('EventCreator');
|
|
1437
1437
|
const EventCreator = {
|
|
1438
1438
|
nameList: {},
|
|
1439
1439
|
register(Event) {
|
|
@@ -1441,7 +1441,7 @@ const EventCreator = {
|
|
|
1441
1441
|
Object.keys(Event).forEach(key => {
|
|
1442
1442
|
name = Event[key];
|
|
1443
1443
|
if (typeof name === 'string')
|
|
1444
|
-
nameList[name] && debug$
|
|
1444
|
+
nameList[name] && debug$c.repeat(name), nameList[name] = Event;
|
|
1445
1445
|
});
|
|
1446
1446
|
},
|
|
1447
1447
|
changeName(oldName, newName) {
|
|
@@ -1513,17 +1513,19 @@ const DataHelper = {
|
|
|
1513
1513
|
assign(t, defaultData);
|
|
1514
1514
|
return t;
|
|
1515
1515
|
},
|
|
1516
|
-
assign(t, merge) {
|
|
1516
|
+
assign(t, merge, exclude) {
|
|
1517
1517
|
let value;
|
|
1518
1518
|
Object.keys(merge).forEach(key => {
|
|
1519
|
-
var _a;
|
|
1519
|
+
var _a, _b;
|
|
1520
1520
|
value = merge[key];
|
|
1521
|
-
if ((value === null || value === void 0 ? void 0 : value.constructor) === Object)
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1521
|
+
if ((value === null || value === void 0 ? void 0 : value.constructor) === Object && ((_a = t[key]) === null || _a === void 0 ? void 0 : _a.constructor) === Object)
|
|
1522
|
+
return assign(t[key], merge[key], exclude && exclude[key]);
|
|
1523
|
+
if (exclude && (key in exclude)) {
|
|
1524
|
+
if (((_b = exclude[key]) === null || _b === void 0 ? void 0 : _b.constructor) === Object)
|
|
1525
|
+
assign(t[key] = {}, merge[key], exclude[key]);
|
|
1526
|
+
return;
|
|
1526
1527
|
}
|
|
1528
|
+
t[key] = merge[key];
|
|
1527
1529
|
});
|
|
1528
1530
|
},
|
|
1529
1531
|
copyAttrs(t, from, include) {
|
|
@@ -2595,7 +2597,7 @@ const EllipseHelper = {
|
|
|
2595
2597
|
const { M: M$4, m, L: L$5, l, H, h, V, v, C: C$4, c, S, s, Q: Q$3, q, T, t, A, a, Z: Z$4, z, N: N$3, D: D$3, X: X$3, G: G$3, F: F$4, O: O$3, P: P$3, U: U$3 } = PathCommandMap;
|
|
2596
2598
|
const { rect: rect$2, roundRect: roundRect$2, arcTo: arcTo$3, arc: arc$3, ellipse: ellipse$4, quadraticCurveTo: quadraticCurveTo$1 } = BezierHelper;
|
|
2597
2599
|
const { ellipticalArc } = EllipseHelper;
|
|
2598
|
-
const debug$
|
|
2600
|
+
const debug$b = Debug.get('PathConvert');
|
|
2599
2601
|
const setEndPoint$1 = {};
|
|
2600
2602
|
const PathConvert = {
|
|
2601
2603
|
current: { dot: 0 },
|
|
@@ -2836,7 +2838,7 @@ const PathConvert = {
|
|
|
2836
2838
|
i += 6;
|
|
2837
2839
|
break;
|
|
2838
2840
|
default:
|
|
2839
|
-
debug$
|
|
2841
|
+
debug$b.error(`command: ${command} [index:${i}]`, old);
|
|
2840
2842
|
return data;
|
|
2841
2843
|
}
|
|
2842
2844
|
lastCommand = command;
|
|
@@ -3061,7 +3063,7 @@ class PathCreator {
|
|
|
3061
3063
|
}
|
|
3062
3064
|
|
|
3063
3065
|
const { M: M$2, L: L$3, C: C$2, Q: Q$1, Z: Z$2, N: N$1, D: D$1, X: X$1, G: G$1, F: F$2, O: O$1, P: P$1, U: U$1 } = PathCommandMap;
|
|
3064
|
-
const debug$
|
|
3066
|
+
const debug$a = Debug.get('PathDrawer');
|
|
3065
3067
|
const PathDrawer = {
|
|
3066
3068
|
drawPathByData(drawer, data) {
|
|
3067
3069
|
if (!data)
|
|
@@ -3124,7 +3126,7 @@ const PathDrawer = {
|
|
|
3124
3126
|
i += 6;
|
|
3125
3127
|
break;
|
|
3126
3128
|
default:
|
|
3127
|
-
debug$
|
|
3129
|
+
debug$a.error(`command: ${command} [index:${i}]`, data);
|
|
3128
3130
|
return;
|
|
3129
3131
|
}
|
|
3130
3132
|
}
|
|
@@ -3134,7 +3136,7 @@ const PathDrawer = {
|
|
|
3134
3136
|
const { M: M$1, L: L$2, C: C$1, Q, Z: Z$1, N, D, X, G, F: F$1, O, P, U } = PathCommandMap;
|
|
3135
3137
|
const { toTwoPointBounds, toTwoPointBoundsByQuadraticCurve, arcTo: arcTo$1, arc, ellipse: ellipse$1 } = BezierHelper;
|
|
3136
3138
|
const { addPointBounds, copy: copy$7, addPoint: addPoint$1, setPoint: setPoint$1, addBounds, toBounds: toBounds$3 } = TwoPointBoundsHelper;
|
|
3137
|
-
const debug$
|
|
3139
|
+
const debug$9 = Debug.get('PathBounds');
|
|
3138
3140
|
let radius, radiusX, radiusY;
|
|
3139
3141
|
const tempPointBounds = {};
|
|
3140
3142
|
const setPointBounds = {};
|
|
@@ -3242,7 +3244,7 @@ const PathBounds = {
|
|
|
3242
3244
|
i += 6;
|
|
3243
3245
|
break;
|
|
3244
3246
|
default:
|
|
3245
|
-
debug$
|
|
3247
|
+
debug$9.error(`command: ${command} [index:${i}]`, data);
|
|
3246
3248
|
return;
|
|
3247
3249
|
}
|
|
3248
3250
|
}
|
|
@@ -3358,7 +3360,7 @@ const FileHelper = {
|
|
|
3358
3360
|
const F = FileHelper;
|
|
3359
3361
|
F.opacityTypes.forEach(type => F.upperCaseTypeMap[type] = type.toUpperCase());
|
|
3360
3362
|
|
|
3361
|
-
const debug$
|
|
3363
|
+
const debug$8 = Debug.get('TaskProcessor');
|
|
3362
3364
|
class TaskItem {
|
|
3363
3365
|
constructor(task) {
|
|
3364
3366
|
this.parallel = true;
|
|
@@ -3373,7 +3375,7 @@ class TaskItem {
|
|
|
3373
3375
|
yield this.task();
|
|
3374
3376
|
}
|
|
3375
3377
|
catch (error) {
|
|
3376
|
-
debug$
|
|
3378
|
+
debug$8.error(error);
|
|
3377
3379
|
}
|
|
3378
3380
|
});
|
|
3379
3381
|
}
|
|
@@ -3891,6 +3893,8 @@ function opacityType(defaultValue) {
|
|
|
3891
3893
|
return decorateLeafAttr(defaultValue, (key) => attr({
|
|
3892
3894
|
set(value) {
|
|
3893
3895
|
this.__setAttr(key, value) && (this.__layout.opacityChanged || this.__layout.opacityChange());
|
|
3896
|
+
if (this.mask)
|
|
3897
|
+
checkMask(this);
|
|
3894
3898
|
}
|
|
3895
3899
|
}));
|
|
3896
3900
|
}
|
|
@@ -3907,9 +3911,20 @@ function visibleType(defaultValue) {
|
|
|
3907
3911
|
this.__runAnimation('in');
|
|
3908
3912
|
}
|
|
3909
3913
|
doVisible(this, key, value, oldValue);
|
|
3914
|
+
if (this.mask)
|
|
3915
|
+
checkMask(this);
|
|
3910
3916
|
}
|
|
3911
3917
|
}));
|
|
3912
3918
|
}
|
|
3919
|
+
function checkMask(leaf) {
|
|
3920
|
+
const { parent } = leaf;
|
|
3921
|
+
if (parent) {
|
|
3922
|
+
const { __hasMask } = parent;
|
|
3923
|
+
parent.__updateMask();
|
|
3924
|
+
if (__hasMask !== parent.__hasMask)
|
|
3925
|
+
parent.forceUpdate();
|
|
3926
|
+
}
|
|
3927
|
+
}
|
|
3913
3928
|
function doVisible(leaf, key, value, oldValue) {
|
|
3914
3929
|
if (leaf.__setAttr(key, value)) {
|
|
3915
3930
|
leaf.__layout.opacityChanged || leaf.__layout.opacityChange();
|
|
@@ -4047,7 +4062,7 @@ function defineDataProcessor(target, key, defaultValue) {
|
|
|
4047
4062
|
defineKey(data, key, property);
|
|
4048
4063
|
}
|
|
4049
4064
|
|
|
4050
|
-
const debug$
|
|
4065
|
+
const debug$7 = new Debug('rewrite');
|
|
4051
4066
|
const list = [];
|
|
4052
4067
|
const excludeNames = ['destroy', 'constructor'];
|
|
4053
4068
|
function rewrite(method) {
|
|
@@ -4064,7 +4079,7 @@ function doRewrite(error) {
|
|
|
4064
4079
|
if (list.length) {
|
|
4065
4080
|
list.forEach(item => {
|
|
4066
4081
|
if (error)
|
|
4067
|
-
debug$
|
|
4082
|
+
debug$7.error(item.name, '需在Class上装饰@rewriteAble()');
|
|
4068
4083
|
item.run();
|
|
4069
4084
|
});
|
|
4070
4085
|
list.length = 0;
|
|
@@ -4165,20 +4180,17 @@ const LeafHelper = {
|
|
|
4165
4180
|
}
|
|
4166
4181
|
return true;
|
|
4167
4182
|
},
|
|
4168
|
-
moveWorld(t, x, y = 0, isInnerPoint) {
|
|
4183
|
+
moveWorld(t, x, y = 0, isInnerPoint, transition) {
|
|
4169
4184
|
const local = typeof x === 'object' ? Object.assign({}, x) : { x, y };
|
|
4170
4185
|
isInnerPoint ? toOuterPoint$1(t.localTransform, local, local, true) : (t.parent && toInnerPoint$1(t.parent.worldTransform, local, local, true));
|
|
4171
|
-
L.moveLocal(t, local.x, local.y);
|
|
4186
|
+
L.moveLocal(t, local.x, local.y, transition);
|
|
4172
4187
|
},
|
|
4173
|
-
moveLocal(t, x, y = 0) {
|
|
4174
|
-
if (typeof x === 'object')
|
|
4175
|
-
|
|
4176
|
-
|
|
4177
|
-
|
|
4178
|
-
|
|
4179
|
-
t.x += x;
|
|
4180
|
-
t.y += y;
|
|
4181
|
-
}
|
|
4188
|
+
moveLocal(t, x, y = 0, transition) {
|
|
4189
|
+
if (typeof x === 'object')
|
|
4190
|
+
y = x.y, x = x.x;
|
|
4191
|
+
x += t.x;
|
|
4192
|
+
y += t.y;
|
|
4193
|
+
transition ? t.animate({ x, y }, transition) : (t.x = x, t.y = y);
|
|
4182
4194
|
},
|
|
4183
4195
|
zoomOfWorld(t, origin, scaleX, scaleY, resize) {
|
|
4184
4196
|
L.zoomOfLocal(t, getTempLocal(t, origin), scaleX, scaleY, resize);
|
|
@@ -4975,13 +4987,13 @@ const { on, on_, off, off_, once, emit: emit$1, emitEvent, hasEvent, destroy } =
|
|
|
4975
4987
|
const LeafEventer = { on, on_, off, off_, once, emit: emit$1, emitEvent, hasEvent, destroyEventer: destroy };
|
|
4976
4988
|
|
|
4977
4989
|
const { isFinite } = Number;
|
|
4978
|
-
const debug$
|
|
4990
|
+
const debug$6 = Debug.get('setAttr');
|
|
4979
4991
|
const LeafDataProxy = {
|
|
4980
4992
|
__setAttr(name, newValue, checkFiniteNumber) {
|
|
4981
4993
|
if (this.leaferIsCreated) {
|
|
4982
4994
|
const oldValue = this.__.__getInput(name);
|
|
4983
4995
|
if (checkFiniteNumber && !isFinite(newValue) && newValue !== undefined) {
|
|
4984
|
-
debug$
|
|
4996
|
+
debug$6.warn(this.innerName, name, newValue);
|
|
4985
4997
|
newValue = undefined;
|
|
4986
4998
|
}
|
|
4987
4999
|
if (typeof newValue === 'object' || oldValue !== newValue) {
|
|
@@ -5437,8 +5449,8 @@ let Leaf = class Leaf {
|
|
|
5437
5449
|
canvas.clearRect(r.x, r.y, r.width, r.height);
|
|
5438
5450
|
canvas.restore();
|
|
5439
5451
|
}
|
|
5440
|
-
__updateMask(
|
|
5441
|
-
this.__hasMask =
|
|
5452
|
+
__updateMask(_value) {
|
|
5453
|
+
this.__hasMask = this.children.some(item => item.__.mask && item.__.visible && item.__.opacity);
|
|
5442
5454
|
}
|
|
5443
5455
|
__renderMask(_canvas, _options) { }
|
|
5444
5456
|
__getNowWorld(options) {
|
|
@@ -5558,11 +5570,11 @@ let Leaf = class Leaf {
|
|
|
5558
5570
|
transform(matrix, resize) {
|
|
5559
5571
|
transform(this, matrix, resize);
|
|
5560
5572
|
}
|
|
5561
|
-
move(x, y) {
|
|
5562
|
-
moveLocal(this, x, y);
|
|
5573
|
+
move(x, y, transition) {
|
|
5574
|
+
moveLocal(this, x, y, transition);
|
|
5563
5575
|
}
|
|
5564
|
-
moveInner(x, y) {
|
|
5565
|
-
moveWorld(this, x, y, true);
|
|
5576
|
+
moveInner(x, y, transition) {
|
|
5577
|
+
moveWorld(this, x, y, true, transition);
|
|
5566
5578
|
}
|
|
5567
5579
|
scaleOf(origin, scaleX, scaleY, resize) {
|
|
5568
5580
|
zoomOfLocal(this, getLocalOrigin(this, origin), scaleX, scaleY, resize);
|
|
@@ -5576,8 +5588,8 @@ let Leaf = class Leaf {
|
|
|
5576
5588
|
transformWorld(worldTransform, resize) {
|
|
5577
5589
|
transformWorld(this, worldTransform, resize);
|
|
5578
5590
|
}
|
|
5579
|
-
moveWorld(x, y) {
|
|
5580
|
-
moveWorld(this, x, y);
|
|
5591
|
+
moveWorld(x, y, transition) {
|
|
5592
|
+
moveWorld(this, x, y, false, transition);
|
|
5581
5593
|
}
|
|
5582
5594
|
scaleOfWorld(worldOrigin, scaleX, scaleY, resize) {
|
|
5583
5595
|
zoomOfWorld(this, worldOrigin, scaleX, scaleY, resize);
|
|
@@ -5681,6 +5693,7 @@ Leaf = __decorate([
|
|
|
5681
5693
|
const { setListWithFn } = BoundsHelper;
|
|
5682
5694
|
const { sort } = BranchHelper;
|
|
5683
5695
|
const { localBoxBounds, localStrokeBounds, localRenderBounds, maskLocalBoxBounds, maskLocalStrokeBounds, maskLocalRenderBounds } = LeafBoundsHelper;
|
|
5696
|
+
const debug$5 = new Debug('Branch');
|
|
5684
5697
|
let Branch = class Branch extends Leaf {
|
|
5685
5698
|
__updateStrokeSpread() {
|
|
5686
5699
|
const { children } = this;
|
|
@@ -5721,8 +5734,8 @@ let Branch = class Branch extends Leaf {
|
|
|
5721
5734
|
}
|
|
5722
5735
|
}
|
|
5723
5736
|
add(child, index) {
|
|
5724
|
-
if (child === this)
|
|
5725
|
-
return;
|
|
5737
|
+
if (child === this || child.destroyed)
|
|
5738
|
+
return debug$5.warn('add self or destroyed');
|
|
5726
5739
|
const noIndex = index === undefined;
|
|
5727
5740
|
if (!child.__) {
|
|
5728
5741
|
if (child instanceof Array)
|
|
@@ -5736,8 +5749,9 @@ let Branch = class Branch extends Leaf {
|
|
|
5736
5749
|
noIndex ? this.children.push(child) : this.children.splice(index, 0, child);
|
|
5737
5750
|
if (child.isBranch)
|
|
5738
5751
|
this.__.__childBranchNumber = (this.__.__childBranchNumber || 0) + 1;
|
|
5739
|
-
|
|
5740
|
-
|
|
5752
|
+
const childLayout = child.__layout;
|
|
5753
|
+
childLayout.boxChanged || childLayout.boxChange();
|
|
5754
|
+
childLayout.matrixChanged || childLayout.matrixChange();
|
|
5741
5755
|
if (child.__bubbleMap)
|
|
5742
5756
|
child.__emitLifeEvent(ChildEvent.ADD);
|
|
5743
5757
|
if (this.leafer) {
|
|
@@ -5975,7 +5989,7 @@ class LeafLevelList {
|
|
|
5975
5989
|
}
|
|
5976
5990
|
}
|
|
5977
5991
|
|
|
5978
|
-
const version = "1.
|
|
5992
|
+
const version = "1.1.1";
|
|
5979
5993
|
|
|
5980
5994
|
class LeaferCanvas extends LeaferCanvasBase {
|
|
5981
5995
|
get allowBackgroundColor() { return true; }
|
|
@@ -6420,25 +6434,25 @@ class Renderer {
|
|
|
6420
6434
|
if (userConfig)
|
|
6421
6435
|
this.config = DataHelper.default(userConfig, this.config);
|
|
6422
6436
|
this.__listenEvents();
|
|
6423
|
-
this.__requestRender();
|
|
6424
6437
|
}
|
|
6425
6438
|
start() {
|
|
6426
6439
|
this.running = true;
|
|
6440
|
+
this.update(false);
|
|
6427
6441
|
}
|
|
6428
6442
|
stop() {
|
|
6429
6443
|
this.running = false;
|
|
6430
6444
|
}
|
|
6431
|
-
update() {
|
|
6432
|
-
this.changed
|
|
6445
|
+
update(change = true) {
|
|
6446
|
+
if (!this.changed)
|
|
6447
|
+
this.changed = change;
|
|
6448
|
+
this.__requestRender();
|
|
6433
6449
|
}
|
|
6434
6450
|
requestLayout() {
|
|
6435
6451
|
this.target.emit(LayoutEvent.REQUEST);
|
|
6436
6452
|
}
|
|
6437
6453
|
render(callback) {
|
|
6438
|
-
if (!(this.running && this.canvas.view))
|
|
6439
|
-
this.
|
|
6440
|
-
return;
|
|
6441
|
-
}
|
|
6454
|
+
if (!(this.running && this.canvas.view))
|
|
6455
|
+
return this.update();
|
|
6442
6456
|
const { target } = this;
|
|
6443
6457
|
this.times = 0;
|
|
6444
6458
|
this.totalBounds = new Bounds();
|
|
@@ -6572,16 +6586,17 @@ class Renderer {
|
|
|
6572
6586
|
}
|
|
6573
6587
|
}
|
|
6574
6588
|
__requestRender() {
|
|
6575
|
-
|
|
6589
|
+
if (this.requestTime)
|
|
6590
|
+
return;
|
|
6591
|
+
const requestTime = this.requestTime = Date.now();
|
|
6576
6592
|
Platform.requestRender(() => {
|
|
6577
|
-
this.FPS = Math.min(60, Math.ceil(1000 / (Date.now() -
|
|
6593
|
+
this.FPS = Math.min(60, Math.ceil(1000 / (Date.now() - requestTime)));
|
|
6594
|
+
this.requestTime = 0;
|
|
6578
6595
|
if (this.running) {
|
|
6579
6596
|
if (this.changed && this.canvas.view)
|
|
6580
6597
|
this.render();
|
|
6581
6598
|
this.target.emit(RenderEvent.NEXT);
|
|
6582
6599
|
}
|
|
6583
|
-
if (this.target)
|
|
6584
|
-
this.__requestRender();
|
|
6585
6600
|
});
|
|
6586
6601
|
}
|
|
6587
6602
|
__onResize(e) {
|
|
@@ -6597,7 +6612,7 @@ class Renderer {
|
|
|
6597
6612
|
}
|
|
6598
6613
|
}
|
|
6599
6614
|
this.addBlock(new Bounds(0, 0, 1, 1));
|
|
6600
|
-
this.
|
|
6615
|
+
this.update();
|
|
6601
6616
|
}
|
|
6602
6617
|
__onLayoutEnd(event) {
|
|
6603
6618
|
if (event.data)
|
|
@@ -6732,7 +6747,7 @@ class UIData extends LeafData {
|
|
|
6732
6747
|
return true;
|
|
6733
6748
|
return t.fill && this.__hasStroke;
|
|
6734
6749
|
}
|
|
6735
|
-
get __clipAfterFill() { return (
|
|
6750
|
+
get __clipAfterFill() { const t = this; return (t.cornerRadius || t.innerShadow || t.__pathInputed); }
|
|
6736
6751
|
get __autoWidth() { return !this._width; }
|
|
6737
6752
|
get __autoHeight() { return !this._height; }
|
|
6738
6753
|
get __autoSide() { return !this._width || !this._height; }
|
|
@@ -6846,7 +6861,7 @@ class GroupData extends UIData {
|
|
|
6846
6861
|
|
|
6847
6862
|
class BoxData extends GroupData {
|
|
6848
6863
|
get __boxStroke() { return !this.__pathInputed; }
|
|
6849
|
-
get __drawAfterFill() { return
|
|
6864
|
+
get __drawAfterFill() { const t = this; return (t.overflow === 'hide' && (t.__clipAfterFill || t.innerShadow) && t.__leaf.children.length); }
|
|
6850
6865
|
get __clipAfterFill() { return this.__leaf.isOverflow || super.__clipAfterFill; }
|
|
6851
6866
|
}
|
|
6852
6867
|
|
|
@@ -7132,11 +7147,15 @@ let UI = UI_1 = class UI extends Leaf {
|
|
|
7132
7147
|
super(data);
|
|
7133
7148
|
}
|
|
7134
7149
|
reset(_data) { }
|
|
7135
|
-
set(data,
|
|
7136
|
-
if (
|
|
7137
|
-
|
|
7138
|
-
|
|
7139
|
-
|
|
7150
|
+
set(data, transition) {
|
|
7151
|
+
if (transition) {
|
|
7152
|
+
if (transition === 'temp') {
|
|
7153
|
+
this.lockNormalStyle = true;
|
|
7154
|
+
Object.assign(this, data);
|
|
7155
|
+
this.lockNormalStyle = false;
|
|
7156
|
+
}
|
|
7157
|
+
else
|
|
7158
|
+
this.animate(data, transition);
|
|
7140
7159
|
}
|
|
7141
7160
|
else
|
|
7142
7161
|
Object.assign(this, data);
|
|
@@ -7446,17 +7465,17 @@ let Group = class Group extends UI {
|
|
|
7446
7465
|
if (!this.children)
|
|
7447
7466
|
this.children = [];
|
|
7448
7467
|
}
|
|
7449
|
-
set(data,
|
|
7468
|
+
set(data, transition) {
|
|
7450
7469
|
if (data.children) {
|
|
7451
7470
|
const { children } = data;
|
|
7452
7471
|
delete data.children;
|
|
7453
7472
|
this.children ? this.clear() : this.__setBranch();
|
|
7454
|
-
super.set(data,
|
|
7473
|
+
super.set(data, transition);
|
|
7455
7474
|
children.forEach(child => this.add(child));
|
|
7456
7475
|
data.children = children;
|
|
7457
7476
|
}
|
|
7458
7477
|
else
|
|
7459
|
-
super.set(data,
|
|
7478
|
+
super.set(data, transition);
|
|
7460
7479
|
}
|
|
7461
7480
|
toJSON(options) {
|
|
7462
7481
|
const data = super.toJSON(options);
|
|
@@ -7502,20 +7521,10 @@ let Leafer = Leafer_1 = class Leafer extends Group {
|
|
|
7502
7521
|
constructor(userConfig, data) {
|
|
7503
7522
|
super(data);
|
|
7504
7523
|
this.config = {
|
|
7505
|
-
type: 'design',
|
|
7506
7524
|
start: true,
|
|
7507
7525
|
hittable: true,
|
|
7508
7526
|
smooth: true,
|
|
7509
|
-
lazySpeard: 100
|
|
7510
|
-
zoom: {
|
|
7511
|
-
min: 0.01,
|
|
7512
|
-
max: 256
|
|
7513
|
-
},
|
|
7514
|
-
move: {
|
|
7515
|
-
holdSpaceKey: true,
|
|
7516
|
-
holdMiddleKey: true,
|
|
7517
|
-
autoDistance: 2
|
|
7518
|
-
}
|
|
7527
|
+
lazySpeard: 100
|
|
7519
7528
|
};
|
|
7520
7529
|
this.leafs = 0;
|
|
7521
7530
|
this.__eventIds = [];
|
|
@@ -7532,23 +7541,27 @@ let Leafer = Leafer_1 = class Leafer extends Group {
|
|
|
7532
7541
|
init(userConfig, parentApp) {
|
|
7533
7542
|
if (this.canvas)
|
|
7534
7543
|
return;
|
|
7535
|
-
this.__setLeafer(this);
|
|
7536
|
-
if (userConfig)
|
|
7537
|
-
DataHelper.assign(this.config, userConfig);
|
|
7538
7544
|
let start;
|
|
7539
7545
|
const { config } = this;
|
|
7540
|
-
this.
|
|
7546
|
+
this.__setLeafer(this);
|
|
7547
|
+
if (parentApp) {
|
|
7548
|
+
this.parentApp = parentApp;
|
|
7549
|
+
this.__bindApp(parentApp);
|
|
7550
|
+
start = parentApp.running;
|
|
7551
|
+
}
|
|
7552
|
+
if (userConfig) {
|
|
7553
|
+
this.parent = parentApp;
|
|
7554
|
+
this.initType(userConfig.type);
|
|
7555
|
+
this.parent = undefined;
|
|
7556
|
+
DataHelper.assign(config, userConfig);
|
|
7557
|
+
}
|
|
7541
7558
|
const canvas = this.canvas = Creator.canvas(config);
|
|
7542
7559
|
this.__controllers.push(this.renderer = Creator.renderer(this, canvas, config), this.watcher = Creator.watcher(this, config), this.layouter = Creator.layouter(this, config));
|
|
7543
7560
|
if (this.isApp)
|
|
7544
7561
|
this.__setApp();
|
|
7545
7562
|
this.__checkAutoLayout(config, parentApp);
|
|
7546
7563
|
this.view = canvas.view;
|
|
7547
|
-
if (parentApp) {
|
|
7548
|
-
this.__bindApp(parentApp);
|
|
7549
|
-
start = parentApp.running;
|
|
7550
|
-
}
|
|
7551
|
-
else {
|
|
7564
|
+
if (!parentApp) {
|
|
7552
7565
|
this.selector = Creator.selector(this);
|
|
7553
7566
|
this.interaction = Creator.interaction(this, canvas, this.selector, config);
|
|
7554
7567
|
if (this.interaction) {
|
|
@@ -7569,8 +7582,8 @@ let Leafer = Leafer_1 = class Leafer extends Group {
|
|
|
7569
7582
|
}
|
|
7570
7583
|
onInit() { }
|
|
7571
7584
|
initType(_type) { }
|
|
7572
|
-
set(data) {
|
|
7573
|
-
this.waitInit(() => { super.set(data); });
|
|
7585
|
+
set(data, transition) {
|
|
7586
|
+
this.waitInit(() => { super.set(data, transition); });
|
|
7574
7587
|
}
|
|
7575
7588
|
start() {
|
|
7576
7589
|
clearTimeout(this.__startTimer);
|
|
@@ -7605,7 +7618,11 @@ let Leafer = Leafer_1 = class Leafer extends Group {
|
|
|
7605
7618
|
forceRender(bounds) {
|
|
7606
7619
|
this.renderer.addBlock(bounds ? new Bounds(bounds) : this.canvas.bounds);
|
|
7607
7620
|
if (this.viewReady)
|
|
7608
|
-
this.renderer.
|
|
7621
|
+
this.renderer.render();
|
|
7622
|
+
}
|
|
7623
|
+
requestRender(change = false) {
|
|
7624
|
+
if (this.renderer)
|
|
7625
|
+
this.renderer.update(change);
|
|
7609
7626
|
}
|
|
7610
7627
|
updateCursor(cursor) {
|
|
7611
7628
|
const i = this.interaction;
|
|
@@ -7713,8 +7730,10 @@ let Leafer = Leafer_1 = class Leafer extends Group {
|
|
|
7713
7730
|
const { imageReady } = this;
|
|
7714
7731
|
if (imageReady && !this.viewCompleted)
|
|
7715
7732
|
this.__checkViewCompleted();
|
|
7716
|
-
if (!imageReady)
|
|
7733
|
+
if (!imageReady) {
|
|
7717
7734
|
this.viewCompleted = false;
|
|
7735
|
+
this.requestRender();
|
|
7736
|
+
}
|
|
7718
7737
|
}
|
|
7719
7738
|
}
|
|
7720
7739
|
__checkViewCompleted(emit = true) {
|
|
@@ -7772,6 +7791,7 @@ let Leafer = Leafer_1 = class Leafer extends Group {
|
|
|
7772
7791
|
}
|
|
7773
7792
|
else
|
|
7774
7793
|
list.push(item);
|
|
7794
|
+
this.requestRender();
|
|
7775
7795
|
}
|
|
7776
7796
|
zoom(_zoomType, _padding, _fixedScale) {
|
|
7777
7797
|
return needPlugin('view');
|
|
@@ -7825,7 +7845,7 @@ let Leafer = Leafer_1 = class Leafer extends Group {
|
|
|
7825
7845
|
this.canvasManager.destroy();
|
|
7826
7846
|
}
|
|
7827
7847
|
this.canvas.destroy();
|
|
7828
|
-
this.config.view = this.view = null;
|
|
7848
|
+
this.config.view = this.view = this.parentApp = null;
|
|
7829
7849
|
if (this.userConfig)
|
|
7830
7850
|
this.userConfig.view = null;
|
|
7831
7851
|
super.destroy();
|
|
@@ -8665,6 +8685,8 @@ function stroke(stroke, ui, canvas) {
|
|
|
8665
8685
|
case 'center':
|
|
8666
8686
|
canvas.setStroke(stroke, __strokeWidth, options);
|
|
8667
8687
|
canvas.stroke();
|
|
8688
|
+
if (options.__useArrow)
|
|
8689
|
+
strokeArrow(ui, canvas);
|
|
8668
8690
|
break;
|
|
8669
8691
|
case 'inside':
|
|
8670
8692
|
canvas.save();
|
|
@@ -8702,6 +8724,8 @@ function strokes(strokes, ui, canvas) {
|
|
|
8702
8724
|
case 'center':
|
|
8703
8725
|
canvas.setStroke(undefined, __strokeWidth, options);
|
|
8704
8726
|
drawStrokesStyle(strokes, false, ui, canvas);
|
|
8727
|
+
if (options.__useArrow)
|
|
8728
|
+
strokeArrow(ui, canvas);
|
|
8705
8729
|
break;
|
|
8706
8730
|
case 'inside':
|
|
8707
8731
|
canvas.save();
|
|
@@ -8727,6 +8751,14 @@ function strokes(strokes, ui, canvas) {
|
|
|
8727
8751
|
}
|
|
8728
8752
|
}
|
|
8729
8753
|
}
|
|
8754
|
+
function strokeArrow(ui, canvas) {
|
|
8755
|
+
if (ui.__.dashPattern) {
|
|
8756
|
+
canvas.beginPath();
|
|
8757
|
+
ui.__drawPathByData(canvas, ui.__.__pathForArrow);
|
|
8758
|
+
canvas.dashPattern = null;
|
|
8759
|
+
canvas.stroke();
|
|
8760
|
+
}
|
|
8761
|
+
}
|
|
8730
8762
|
|
|
8731
8763
|
const { getSpread, getOuterOf, getByMove, getIntersectData } = BoundsHelper;
|
|
8732
8764
|
function shape(ui, current, options) {
|