@leafer-draw/worker 1.0.2 → 1.0.3
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 +34 -21
- package/dist/worker.esm.js +35 -22
- package/dist/worker.esm.min.js +1 -1
- package/dist/worker.js +385 -349
- package/dist/worker.min.cjs +1 -1
- package/dist/worker.min.js +1 -1
- package/dist/worker.module.js +382 -346
- package/dist/worker.module.min.js +1 -1
- package/package.json +6 -6
package/dist/worker.js
CHANGED
|
@@ -122,11 +122,18 @@ var LeaferUI = (function (exports) {
|
|
|
122
122
|
scaleData.scaleX = (typeof size === 'number' ? size : size.width) / originSize.width;
|
|
123
123
|
scaleData.scaleY = (typeof size === 'number' ? size : size.height) / originSize.height;
|
|
124
124
|
}
|
|
125
|
-
else if (scale)
|
|
126
|
-
scaleData
|
|
127
|
-
scaleData.scaleY = typeof scale === 'number' ? scale : scale.y;
|
|
128
|
-
}
|
|
125
|
+
else if (scale)
|
|
126
|
+
MathHelper.assignScale(scaleData, scale);
|
|
129
127
|
return scaleData;
|
|
128
|
+
},
|
|
129
|
+
assignScale(scaleData, scale) {
|
|
130
|
+
if (typeof scale === 'number') {
|
|
131
|
+
scaleData.scaleX = scaleData.scaleY = scale;
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
scaleData.scaleX = scale.x;
|
|
135
|
+
scaleData.scaleY = scale.y;
|
|
136
|
+
}
|
|
130
137
|
}
|
|
131
138
|
};
|
|
132
139
|
const OneRadian = PI$4 / 180;
|
|
@@ -1258,7 +1265,6 @@ var LeaferUI = (function (exports) {
|
|
|
1258
1265
|
tempPoint: {},
|
|
1259
1266
|
get: get$4,
|
|
1260
1267
|
toPoint(around, bounds, to, onlySize, pointBounds) {
|
|
1261
|
-
to || (to = {});
|
|
1262
1268
|
const point = get$4(around);
|
|
1263
1269
|
to.x = point.x;
|
|
1264
1270
|
to.y = point.y;
|
|
@@ -1393,6 +1399,10 @@ var LeaferUI = (function (exports) {
|
|
|
1393
1399
|
};
|
|
1394
1400
|
const R = Run;
|
|
1395
1401
|
|
|
1402
|
+
function needPlugin(name) {
|
|
1403
|
+
console.error('need plugin: @leafer-in/' + name);
|
|
1404
|
+
}
|
|
1405
|
+
|
|
1396
1406
|
const debug$c = Debug.get('UICreator');
|
|
1397
1407
|
const UICreator = {
|
|
1398
1408
|
list: {},
|
|
@@ -1655,6 +1665,9 @@ var LeaferUI = (function (exports) {
|
|
|
1655
1665
|
Answer[Answer["YesAndSkip"] = 3] = "YesAndSkip";
|
|
1656
1666
|
})(exports.Answer || (exports.Answer = {}));
|
|
1657
1667
|
const emptyData = {};
|
|
1668
|
+
function isNull(value) {
|
|
1669
|
+
return value === undefined || value === null;
|
|
1670
|
+
}
|
|
1658
1671
|
|
|
1659
1672
|
/******************************************************************************
|
|
1660
1673
|
Copyright (c) Microsoft Corporation.
|
|
@@ -2420,7 +2433,7 @@ var LeaferUI = (function (exports) {
|
|
|
2420
2433
|
let startY = y = rotationSin * radiusX * startCos + rotationCos * radiusY * startSin;
|
|
2421
2434
|
let fromX = cx + x, fromY = cy + y;
|
|
2422
2435
|
if (data)
|
|
2423
|
-
data.push(L$6, fromX, fromY);
|
|
2436
|
+
data.push(data.length ? L$6 : M$5, fromX, fromY);
|
|
2424
2437
|
if (setPointBounds)
|
|
2425
2438
|
setPoint$2(setPointBounds, fromX, fromY);
|
|
2426
2439
|
if (setStartPoint)
|
|
@@ -3089,8 +3102,7 @@ var LeaferUI = (function (exports) {
|
|
|
3089
3102
|
toTwoPointBounds(data, setPointBounds) {
|
|
3090
3103
|
if (!data || !data.length)
|
|
3091
3104
|
return setPoint$1(setPointBounds, 0, 0);
|
|
3092
|
-
let command;
|
|
3093
|
-
let i = 0, x = 0, y = 0, x1, y1, toX, toY;
|
|
3105
|
+
let i = 0, x = 0, y = 0, x1, y1, toX, toY, command;
|
|
3094
3106
|
const len = data.length;
|
|
3095
3107
|
while (i < len) {
|
|
3096
3108
|
command = data[i];
|
|
@@ -3746,7 +3758,7 @@ var LeaferUI = (function (exports) {
|
|
|
3746
3758
|
set(value) {
|
|
3747
3759
|
if (this.__setAttr(key, value)) {
|
|
3748
3760
|
this.__layout.matrixChanged || this.__layout.matrixChange();
|
|
3749
|
-
this.__hasAutoLayout = !!
|
|
3761
|
+
this.__hasAutoLayout = !!(this.origin || this.around || this.flow);
|
|
3750
3762
|
if (!this.__local)
|
|
3751
3763
|
this.__layout.createLocal();
|
|
3752
3764
|
}
|
|
@@ -3839,14 +3851,25 @@ var LeaferUI = (function (exports) {
|
|
|
3839
3851
|
return decorateLeafAttr(defaultValue, (key) => attr({
|
|
3840
3852
|
set(value) {
|
|
3841
3853
|
const oldValue = this.visible;
|
|
3842
|
-
if (
|
|
3843
|
-
|
|
3844
|
-
|
|
3845
|
-
|
|
3854
|
+
if (oldValue === true && value === 0) {
|
|
3855
|
+
if (this.animationOut)
|
|
3856
|
+
return this.__runAnimation('out', () => doVisible(this, key, value, oldValue));
|
|
3857
|
+
}
|
|
3858
|
+
else if (oldValue === 0 && value === true) {
|
|
3859
|
+
if (this.animation)
|
|
3860
|
+
this.__runAnimation('in');
|
|
3846
3861
|
}
|
|
3862
|
+
doVisible(this, key, value, oldValue);
|
|
3847
3863
|
}
|
|
3848
3864
|
}));
|
|
3849
3865
|
}
|
|
3866
|
+
function doVisible(leaf, key, value, oldValue) {
|
|
3867
|
+
if (leaf.__setAttr(key, value)) {
|
|
3868
|
+
leaf.__layout.opacityChanged || leaf.__layout.opacityChange();
|
|
3869
|
+
if (oldValue === 0 || value === 0)
|
|
3870
|
+
doBoundsType(leaf);
|
|
3871
|
+
}
|
|
3872
|
+
}
|
|
3850
3873
|
function sortType(defaultValue) {
|
|
3851
3874
|
return decorateLeafAttr(defaultValue, (key) => attr({
|
|
3852
3875
|
set(value) {
|
|
@@ -3930,7 +3953,16 @@ var LeaferUI = (function (exports) {
|
|
|
3930
3953
|
if (defaultValue === undefined) {
|
|
3931
3954
|
property.get = function () { return this[computedKey]; };
|
|
3932
3955
|
}
|
|
3933
|
-
else if (
|
|
3956
|
+
else if (typeof defaultValue === 'object') {
|
|
3957
|
+
const { clone } = DataHelper;
|
|
3958
|
+
property.get = function () {
|
|
3959
|
+
let v = this[computedKey];
|
|
3960
|
+
if (v === undefined)
|
|
3961
|
+
this[computedKey] = v = clone(defaultValue);
|
|
3962
|
+
return v;
|
|
3963
|
+
};
|
|
3964
|
+
}
|
|
3965
|
+
if (key === 'width') {
|
|
3934
3966
|
property.get = function () {
|
|
3935
3967
|
const v = this[computedKey];
|
|
3936
3968
|
if (v === undefined) {
|
|
@@ -4597,144 +4629,6 @@ var LeaferUI = (function (exports) {
|
|
|
4597
4629
|
destroy() { }
|
|
4598
4630
|
}
|
|
4599
4631
|
|
|
4600
|
-
const empty = {};
|
|
4601
|
-
const LeafEventer = {
|
|
4602
|
-
on(type, listener, options) {
|
|
4603
|
-
let capture, once;
|
|
4604
|
-
if (options) {
|
|
4605
|
-
if (options === 'once') {
|
|
4606
|
-
once = true;
|
|
4607
|
-
}
|
|
4608
|
-
else if (typeof options === 'boolean') {
|
|
4609
|
-
capture = options;
|
|
4610
|
-
}
|
|
4611
|
-
else {
|
|
4612
|
-
capture = options.capture;
|
|
4613
|
-
once = options.once;
|
|
4614
|
-
}
|
|
4615
|
-
}
|
|
4616
|
-
let events;
|
|
4617
|
-
const map = __getListenerMap(this, capture, true);
|
|
4618
|
-
const typeList = typeof type === 'string' ? type.split(' ') : type;
|
|
4619
|
-
const item = once ? { listener, once } : { listener };
|
|
4620
|
-
typeList.forEach(type => {
|
|
4621
|
-
if (type) {
|
|
4622
|
-
events = map[type];
|
|
4623
|
-
if (events) {
|
|
4624
|
-
if (events.findIndex(item => item.listener === listener) === -1)
|
|
4625
|
-
events.push(item);
|
|
4626
|
-
}
|
|
4627
|
-
else {
|
|
4628
|
-
map[type] = [item];
|
|
4629
|
-
}
|
|
4630
|
-
}
|
|
4631
|
-
});
|
|
4632
|
-
},
|
|
4633
|
-
off(type, listener, options) {
|
|
4634
|
-
if (type) {
|
|
4635
|
-
const typeList = typeof type === 'string' ? type.split(' ') : type;
|
|
4636
|
-
if (listener) {
|
|
4637
|
-
let capture;
|
|
4638
|
-
if (options)
|
|
4639
|
-
capture = typeof options === 'boolean' ? options : (options === 'once' ? false : options.capture);
|
|
4640
|
-
let events, index;
|
|
4641
|
-
const map = __getListenerMap(this, capture);
|
|
4642
|
-
typeList.forEach(type => {
|
|
4643
|
-
if (type) {
|
|
4644
|
-
events = map[type];
|
|
4645
|
-
if (events) {
|
|
4646
|
-
index = events.findIndex(item => item.listener === listener);
|
|
4647
|
-
if (index > -1)
|
|
4648
|
-
events.splice(index, 1);
|
|
4649
|
-
if (!events.length)
|
|
4650
|
-
delete map[type];
|
|
4651
|
-
}
|
|
4652
|
-
}
|
|
4653
|
-
});
|
|
4654
|
-
}
|
|
4655
|
-
else {
|
|
4656
|
-
const { __bubbleMap: b, __captureMap: c } = this;
|
|
4657
|
-
typeList.forEach(type => {
|
|
4658
|
-
if (b)
|
|
4659
|
-
delete b[type];
|
|
4660
|
-
if (c)
|
|
4661
|
-
delete c[type];
|
|
4662
|
-
});
|
|
4663
|
-
}
|
|
4664
|
-
}
|
|
4665
|
-
else {
|
|
4666
|
-
this.__bubbleMap = this.__captureMap = undefined;
|
|
4667
|
-
}
|
|
4668
|
-
},
|
|
4669
|
-
on_(type, listener, bind, options) {
|
|
4670
|
-
if (bind)
|
|
4671
|
-
listener = listener.bind(bind);
|
|
4672
|
-
this.on(type, listener, options);
|
|
4673
|
-
return { type, current: this, listener, options };
|
|
4674
|
-
},
|
|
4675
|
-
off_(id) {
|
|
4676
|
-
if (!id)
|
|
4677
|
-
return;
|
|
4678
|
-
const list = id instanceof Array ? id : [id];
|
|
4679
|
-
list.forEach(item => item.current.off(item.type, item.listener, item.options));
|
|
4680
|
-
list.length = 0;
|
|
4681
|
-
},
|
|
4682
|
-
once(type, listener, capture) {
|
|
4683
|
-
this.on(type, listener, { once: true, capture });
|
|
4684
|
-
},
|
|
4685
|
-
emit(type, event, capture) {
|
|
4686
|
-
if (!event && EventCreator.has(type))
|
|
4687
|
-
event = EventCreator.get(type, { type, target: this, current: this });
|
|
4688
|
-
const map = __getListenerMap(this, capture);
|
|
4689
|
-
const list = map[type];
|
|
4690
|
-
if (list) {
|
|
4691
|
-
let item;
|
|
4692
|
-
for (let i = 0, len = list.length; i < len; i++) {
|
|
4693
|
-
item = list[i];
|
|
4694
|
-
item.listener(event);
|
|
4695
|
-
if (item.once) {
|
|
4696
|
-
this.off(type, item.listener, capture);
|
|
4697
|
-
i--, len--;
|
|
4698
|
-
}
|
|
4699
|
-
if (event && event.isStopNow)
|
|
4700
|
-
break;
|
|
4701
|
-
}
|
|
4702
|
-
}
|
|
4703
|
-
this.syncEventer && this.syncEventer.emitEvent(event, capture);
|
|
4704
|
-
},
|
|
4705
|
-
emitEvent(event, capture) {
|
|
4706
|
-
event.current = this;
|
|
4707
|
-
this.emit(event.type, event, capture);
|
|
4708
|
-
},
|
|
4709
|
-
hasEvent(type, capture) {
|
|
4710
|
-
if (this.syncEventer && this.syncEventer.hasEvent(type, capture))
|
|
4711
|
-
return true;
|
|
4712
|
-
const { __bubbleMap: b, __captureMap: c } = this;
|
|
4713
|
-
const hasB = b && b[type], hasC = c && c[type];
|
|
4714
|
-
return !!(capture === undefined ? (hasB || hasC) : (capture ? hasC : hasB));
|
|
4715
|
-
},
|
|
4716
|
-
};
|
|
4717
|
-
function __getListenerMap(eventer, capture, create) {
|
|
4718
|
-
if (capture) {
|
|
4719
|
-
const { __captureMap: c } = eventer;
|
|
4720
|
-
if (c) {
|
|
4721
|
-
return c;
|
|
4722
|
-
}
|
|
4723
|
-
else {
|
|
4724
|
-
return create ? eventer.__captureMap = {} : empty;
|
|
4725
|
-
}
|
|
4726
|
-
}
|
|
4727
|
-
else {
|
|
4728
|
-
const { __bubbleMap: b } = eventer;
|
|
4729
|
-
if (b) {
|
|
4730
|
-
return b;
|
|
4731
|
-
}
|
|
4732
|
-
else {
|
|
4733
|
-
return create ? eventer.__bubbleMap = {} : empty;
|
|
4734
|
-
}
|
|
4735
|
-
}
|
|
4736
|
-
}
|
|
4737
|
-
|
|
4738
4632
|
class Event {
|
|
4739
4633
|
constructor(type, target) {
|
|
4740
4634
|
this.bubbles = false;
|
|
@@ -4769,7 +4663,10 @@ var LeaferUI = (function (exports) {
|
|
|
4769
4663
|
}
|
|
4770
4664
|
ChildEvent.ADD = 'child.add';
|
|
4771
4665
|
ChildEvent.REMOVE = 'child.remove';
|
|
4772
|
-
ChildEvent.
|
|
4666
|
+
ChildEvent.CREATED = 'created';
|
|
4667
|
+
ChildEvent.MOUNTED = 'mounted';
|
|
4668
|
+
ChildEvent.UNMOUNTED = 'unmounted';
|
|
4669
|
+
ChildEvent.DESTROY = 'destroy';
|
|
4773
4670
|
|
|
4774
4671
|
class PropertyEvent extends Event {
|
|
4775
4672
|
constructor(type, target, attrName, oldValue, newValue) {
|
|
@@ -4847,10 +4744,6 @@ var LeaferUI = (function (exports) {
|
|
|
4847
4744
|
LayoutEvent.AGAIN = 'layout.again';
|
|
4848
4745
|
LayoutEvent.END = 'layout.end';
|
|
4849
4746
|
|
|
4850
|
-
class AnimateEvent extends Event {
|
|
4851
|
-
}
|
|
4852
|
-
AnimateEvent.FRAME = 'animate.frame';
|
|
4853
|
-
|
|
4854
4747
|
class RenderEvent extends Event {
|
|
4855
4748
|
constructor(type, times, bounds, options) {
|
|
4856
4749
|
super(type);
|
|
@@ -4883,6 +4776,157 @@ var LeaferUI = (function (exports) {
|
|
|
4883
4776
|
LeaferEvent.RESTART = 'leafer.restart';
|
|
4884
4777
|
LeaferEvent.END = 'leafer.end';
|
|
4885
4778
|
|
|
4779
|
+
const empty = {};
|
|
4780
|
+
class Eventer {
|
|
4781
|
+
set event(map) { this.on(map); }
|
|
4782
|
+
on(type, listener, options) {
|
|
4783
|
+
if (!listener) {
|
|
4784
|
+
let event, map = type;
|
|
4785
|
+
for (let key in map)
|
|
4786
|
+
event = map[key], event instanceof Array ? this.on(key, event[0], event[1]) : this.on(key, event);
|
|
4787
|
+
return;
|
|
4788
|
+
}
|
|
4789
|
+
let capture, once;
|
|
4790
|
+
if (options) {
|
|
4791
|
+
if (options === 'once') {
|
|
4792
|
+
once = true;
|
|
4793
|
+
}
|
|
4794
|
+
else if (typeof options === 'boolean') {
|
|
4795
|
+
capture = options;
|
|
4796
|
+
}
|
|
4797
|
+
else {
|
|
4798
|
+
capture = options.capture;
|
|
4799
|
+
once = options.once;
|
|
4800
|
+
}
|
|
4801
|
+
}
|
|
4802
|
+
let events;
|
|
4803
|
+
const map = __getListenerMap(this, capture, true);
|
|
4804
|
+
const typeList = typeof type === 'string' ? type.split(' ') : type;
|
|
4805
|
+
const item = once ? { listener, once } : { listener };
|
|
4806
|
+
typeList.forEach(type => {
|
|
4807
|
+
if (type) {
|
|
4808
|
+
events = map[type];
|
|
4809
|
+
if (events) {
|
|
4810
|
+
if (events.findIndex(item => item.listener === listener) === -1)
|
|
4811
|
+
events.push(item);
|
|
4812
|
+
}
|
|
4813
|
+
else {
|
|
4814
|
+
map[type] = [item];
|
|
4815
|
+
}
|
|
4816
|
+
}
|
|
4817
|
+
});
|
|
4818
|
+
}
|
|
4819
|
+
off(type, listener, options) {
|
|
4820
|
+
if (type) {
|
|
4821
|
+
const typeList = typeof type === 'string' ? type.split(' ') : type;
|
|
4822
|
+
if (listener) {
|
|
4823
|
+
let capture;
|
|
4824
|
+
if (options)
|
|
4825
|
+
capture = typeof options === 'boolean' ? options : (options === 'once' ? false : options.capture);
|
|
4826
|
+
let events, index;
|
|
4827
|
+
const map = __getListenerMap(this, capture);
|
|
4828
|
+
typeList.forEach(type => {
|
|
4829
|
+
if (type) {
|
|
4830
|
+
events = map[type];
|
|
4831
|
+
if (events) {
|
|
4832
|
+
index = events.findIndex(item => item.listener === listener);
|
|
4833
|
+
if (index > -1)
|
|
4834
|
+
events.splice(index, 1);
|
|
4835
|
+
if (!events.length)
|
|
4836
|
+
delete map[type];
|
|
4837
|
+
}
|
|
4838
|
+
}
|
|
4839
|
+
});
|
|
4840
|
+
}
|
|
4841
|
+
else {
|
|
4842
|
+
const { __bubbleMap: b, __captureMap: c } = this;
|
|
4843
|
+
typeList.forEach(type => {
|
|
4844
|
+
if (b)
|
|
4845
|
+
delete b[type];
|
|
4846
|
+
if (c)
|
|
4847
|
+
delete c[type];
|
|
4848
|
+
});
|
|
4849
|
+
}
|
|
4850
|
+
}
|
|
4851
|
+
else {
|
|
4852
|
+
this.__bubbleMap = this.__captureMap = undefined;
|
|
4853
|
+
}
|
|
4854
|
+
}
|
|
4855
|
+
on_(type, listener, bind, options) {
|
|
4856
|
+
if (bind)
|
|
4857
|
+
listener = listener.bind(bind);
|
|
4858
|
+
this.on(type, listener, options);
|
|
4859
|
+
return { type, current: this, listener, options };
|
|
4860
|
+
}
|
|
4861
|
+
off_(id) {
|
|
4862
|
+
if (!id)
|
|
4863
|
+
return;
|
|
4864
|
+
const list = id instanceof Array ? id : [id];
|
|
4865
|
+
list.forEach(item => item.current.off(item.type, item.listener, item.options));
|
|
4866
|
+
list.length = 0;
|
|
4867
|
+
}
|
|
4868
|
+
once(type, listener, capture) {
|
|
4869
|
+
this.on(type, listener, { once: true, capture });
|
|
4870
|
+
}
|
|
4871
|
+
emit(type, event, capture) {
|
|
4872
|
+
if (!event && EventCreator.has(type))
|
|
4873
|
+
event = EventCreator.get(type, { type, target: this, current: this });
|
|
4874
|
+
const map = __getListenerMap(this, capture);
|
|
4875
|
+
const list = map[type];
|
|
4876
|
+
if (list) {
|
|
4877
|
+
let item;
|
|
4878
|
+
for (let i = 0, len = list.length; i < len; i++) {
|
|
4879
|
+
item = list[i];
|
|
4880
|
+
item.listener(event);
|
|
4881
|
+
if (item.once) {
|
|
4882
|
+
this.off(type, item.listener, capture);
|
|
4883
|
+
i--, len--;
|
|
4884
|
+
}
|
|
4885
|
+
if (event && event.isStopNow)
|
|
4886
|
+
break;
|
|
4887
|
+
}
|
|
4888
|
+
}
|
|
4889
|
+
this.syncEventer && this.syncEventer.emitEvent(event, capture);
|
|
4890
|
+
}
|
|
4891
|
+
emitEvent(event, capture) {
|
|
4892
|
+
event.current = this;
|
|
4893
|
+
this.emit(event.type, event, capture);
|
|
4894
|
+
}
|
|
4895
|
+
hasEvent(type, capture) {
|
|
4896
|
+
if (this.syncEventer && this.syncEventer.hasEvent(type, capture))
|
|
4897
|
+
return true;
|
|
4898
|
+
const { __bubbleMap: b, __captureMap: c } = this;
|
|
4899
|
+
const hasB = b && b[type], hasC = c && c[type];
|
|
4900
|
+
return !!(capture === undefined ? (hasB || hasC) : (capture ? hasC : hasB));
|
|
4901
|
+
}
|
|
4902
|
+
destroy() {
|
|
4903
|
+
this.__captureMap = this.__bubbleMap = this.syncEventer = null;
|
|
4904
|
+
}
|
|
4905
|
+
}
|
|
4906
|
+
function __getListenerMap(eventer, capture, create) {
|
|
4907
|
+
if (capture) {
|
|
4908
|
+
const { __captureMap: c } = eventer;
|
|
4909
|
+
if (c) {
|
|
4910
|
+
return c;
|
|
4911
|
+
}
|
|
4912
|
+
else {
|
|
4913
|
+
return create ? eventer.__captureMap = {} : empty;
|
|
4914
|
+
}
|
|
4915
|
+
}
|
|
4916
|
+
else {
|
|
4917
|
+
const { __bubbleMap: b } = eventer;
|
|
4918
|
+
if (b) {
|
|
4919
|
+
return b;
|
|
4920
|
+
}
|
|
4921
|
+
else {
|
|
4922
|
+
return create ? eventer.__bubbleMap = {} : empty;
|
|
4923
|
+
}
|
|
4924
|
+
}
|
|
4925
|
+
}
|
|
4926
|
+
|
|
4927
|
+
const { on, on_, off, off_, once, emit: emit$1, emitEvent, hasEvent, destroy } = Eventer.prototype;
|
|
4928
|
+
const LeafEventer = { on, on_, off, off_, once, emit: emit$1, emitEvent, hasEvent, destroyEventer: destroy };
|
|
4929
|
+
|
|
4886
4930
|
const { isFinite } = Number;
|
|
4887
4931
|
const debug$5 = Debug.get('setAttr');
|
|
4888
4932
|
const LeafDataProxy = {
|
|
@@ -4894,9 +4938,7 @@ var LeaferUI = (function (exports) {
|
|
|
4894
4938
|
newValue = undefined;
|
|
4895
4939
|
}
|
|
4896
4940
|
if (typeof newValue === 'object' || oldValue !== newValue) {
|
|
4897
|
-
this.
|
|
4898
|
-
if (this.__proxyData)
|
|
4899
|
-
this.setProxyAttr(name, newValue);
|
|
4941
|
+
this.__realSetAttr(name, newValue);
|
|
4900
4942
|
const { CHANGE } = PropertyEvent;
|
|
4901
4943
|
const event = new PropertyEvent(CHANGE, this, name, oldValue, newValue);
|
|
4902
4944
|
if (this.isLeafer) {
|
|
@@ -4914,12 +4956,18 @@ var LeaferUI = (function (exports) {
|
|
|
4914
4956
|
}
|
|
4915
4957
|
}
|
|
4916
4958
|
else {
|
|
4917
|
-
this.
|
|
4918
|
-
if (this.__proxyData)
|
|
4919
|
-
this.setProxyAttr(name, newValue);
|
|
4959
|
+
this.__realSetAttr(name, newValue);
|
|
4920
4960
|
return true;
|
|
4921
4961
|
}
|
|
4922
4962
|
},
|
|
4963
|
+
__realSetAttr(name, newValue) {
|
|
4964
|
+
const data = this.__;
|
|
4965
|
+
data[name] = newValue;
|
|
4966
|
+
if (this.__proxyData)
|
|
4967
|
+
this.setProxyAttr(name, newValue);
|
|
4968
|
+
if (data.normalStyle)
|
|
4969
|
+
this.lockNormalStyle || data.normalStyle[name] === undefined || (data.normalStyle[name] = newValue);
|
|
4970
|
+
},
|
|
4923
4971
|
__getAttr(name) {
|
|
4924
4972
|
if (this.__proxyData)
|
|
4925
4973
|
return this.getProxyAttr(name);
|
|
@@ -5022,6 +5070,8 @@ var LeaferUI = (function (exports) {
|
|
|
5022
5070
|
layout.boundsChanged = false;
|
|
5023
5071
|
},
|
|
5024
5072
|
__updateLocalBoxBounds() {
|
|
5073
|
+
if (this.__hasMotionPath)
|
|
5074
|
+
this.__updateMotionPath();
|
|
5025
5075
|
if (this.__hasAutoLayout)
|
|
5026
5076
|
this.__updateAutoLayout();
|
|
5027
5077
|
toOuterOf$1(this.__layout.boxBounds, this.__local, this.__local);
|
|
@@ -5174,7 +5224,7 @@ var LeaferUI = (function (exports) {
|
|
|
5174
5224
|
const { LEAF, create } = IncrementId;
|
|
5175
5225
|
const { toInnerPoint, toOuterPoint, multiplyParent } = MatrixHelper;
|
|
5176
5226
|
const { toOuterOf } = BoundsHelper;
|
|
5177
|
-
const { copy: copy$3 } = PointHelper;
|
|
5227
|
+
const { copy: copy$3, move } = PointHelper;
|
|
5178
5228
|
const { moveLocal, zoomOfLocal, rotateOfLocal, skewOfLocal, moveWorld, zoomOfWorld, rotateOfWorld, skewOfWorld, transform, transformWorld, setTransform, getFlipTransform, getLocalOrigin, getRelativeWorld, drop } = LeafHelper;
|
|
5179
5229
|
exports.Leaf = class Leaf {
|
|
5180
5230
|
get tag() { return this.__tag; }
|
|
@@ -5201,13 +5251,16 @@ var LeaferUI = (function (exports) {
|
|
|
5201
5251
|
get __ignoreHitWorld() { return (this.__hasMask || this.__hasEraser) && this.__.hitChildren; }
|
|
5202
5252
|
get __inLazyBounds() { const { leafer } = this; return leafer && leafer.created && leafer.lazyBounds.hit(this.__world); }
|
|
5203
5253
|
get pathInputed() { return this.__.__pathInputed; }
|
|
5204
|
-
set event(map) {
|
|
5205
|
-
event = map[key], event instanceof Array ? this.on(key, event[0], event[1]) : this.on(key, event); }
|
|
5254
|
+
set event(map) { this.on(map); }
|
|
5206
5255
|
constructor(data) {
|
|
5207
5256
|
this.innerId = create(LEAF);
|
|
5208
5257
|
this.reset(data);
|
|
5258
|
+
if (this.__bubbleMap)
|
|
5259
|
+
this.__emitLifeEvent(ChildEvent.CREATED);
|
|
5209
5260
|
}
|
|
5210
5261
|
reset(data) {
|
|
5262
|
+
if (this.leafer)
|
|
5263
|
+
this.leafer.forceRender(this.__world);
|
|
5211
5264
|
this.__world = { a: 1, b: 0, c: 0, d: 1, e: 0, f: 0, x: 0, y: 0, width: 0, height: 0, scaleX: 1, scaleY: 1 };
|
|
5212
5265
|
if (data !== null)
|
|
5213
5266
|
this.__local = { a: 1, b: 0, c: 0, d: 1, e: 0, f: 0, x: 0, y: 0, width: 0, height: 0 };
|
|
@@ -5229,12 +5282,12 @@ var LeaferUI = (function (exports) {
|
|
|
5229
5282
|
waitParent(item, bind) {
|
|
5230
5283
|
if (bind)
|
|
5231
5284
|
item = item.bind(bind);
|
|
5232
|
-
this.parent ? item() :
|
|
5285
|
+
this.parent ? item() : this.on(ChildEvent.ADD, item, 'once');
|
|
5233
5286
|
}
|
|
5234
5287
|
waitLeafer(item, bind) {
|
|
5235
5288
|
if (bind)
|
|
5236
5289
|
item = item.bind(bind);
|
|
5237
|
-
this.leafer ? item() :
|
|
5290
|
+
this.leafer ? item() : this.on(ChildEvent.MOUNTED, item, 'once');
|
|
5238
5291
|
}
|
|
5239
5292
|
nextRender(item, bind, off) {
|
|
5240
5293
|
this.leafer ? this.leafer.nextRender(item, bind, off) : this.waitLeafer(() => this.leafer.nextRender(item, bind, off));
|
|
@@ -5243,18 +5296,21 @@ var LeaferUI = (function (exports) {
|
|
|
5243
5296
|
this.nextRender(item, null, 'off');
|
|
5244
5297
|
}
|
|
5245
5298
|
__bindLeafer(leafer) {
|
|
5246
|
-
if (this.isLeafer)
|
|
5247
|
-
|
|
5248
|
-
leafer = this;
|
|
5249
|
-
}
|
|
5299
|
+
if (this.isLeafer && leafer !== null)
|
|
5300
|
+
leafer = this;
|
|
5250
5301
|
if (this.leafer && !leafer)
|
|
5251
5302
|
this.leafer.leafs--;
|
|
5252
5303
|
this.leafer = leafer;
|
|
5253
5304
|
if (leafer) {
|
|
5254
5305
|
leafer.leafs++;
|
|
5255
5306
|
this.__level = this.parent ? this.parent.__level + 1 : 1;
|
|
5256
|
-
if (this.
|
|
5257
|
-
|
|
5307
|
+
if (this.animation)
|
|
5308
|
+
this.__runAnimation('in');
|
|
5309
|
+
if (this.__bubbleMap)
|
|
5310
|
+
this.__emitLifeEvent(ChildEvent.MOUNTED);
|
|
5311
|
+
}
|
|
5312
|
+
else {
|
|
5313
|
+
this.__emitLifeEvent(ChildEvent.UNMOUNTED);
|
|
5258
5314
|
}
|
|
5259
5315
|
if (this.isBranch) {
|
|
5260
5316
|
const { children } = this;
|
|
@@ -5263,7 +5319,7 @@ var LeaferUI = (function (exports) {
|
|
|
5263
5319
|
}
|
|
5264
5320
|
}
|
|
5265
5321
|
}
|
|
5266
|
-
set(_data) { }
|
|
5322
|
+
set(_data, _isTemp) { }
|
|
5267
5323
|
get(_name) { return undefined; }
|
|
5268
5324
|
setAttr(name, value) { this[name] = value; }
|
|
5269
5325
|
getAttr(name) { return this[name]; }
|
|
@@ -5288,6 +5344,7 @@ var LeaferUI = (function (exports) {
|
|
|
5288
5344
|
findOne(_condition, _options) { return undefined; }
|
|
5289
5345
|
findId(_id) { return undefined; }
|
|
5290
5346
|
focus(_value) { }
|
|
5347
|
+
updateState() { }
|
|
5291
5348
|
updateLayout() {
|
|
5292
5349
|
this.__layout.update();
|
|
5293
5350
|
}
|
|
@@ -5395,11 +5452,24 @@ var LeaferUI = (function (exports) {
|
|
|
5395
5452
|
if (relative)
|
|
5396
5453
|
relative.worldToInner(to ? to : inner, null, distance);
|
|
5397
5454
|
}
|
|
5455
|
+
getBoxPoint(world, relative, distance, change) {
|
|
5456
|
+
return this.getBoxPointByInner(this.getInnerPoint(world, relative, distance, change), null, null, true);
|
|
5457
|
+
}
|
|
5458
|
+
getBoxPointByInner(inner, _relative, _distance, change) {
|
|
5459
|
+
const point = change ? inner : Object.assign({}, inner), { x, y } = this.boxBounds;
|
|
5460
|
+
move(point, -x, -y);
|
|
5461
|
+
return point;
|
|
5462
|
+
}
|
|
5398
5463
|
getInnerPoint(world, relative, distance, change) {
|
|
5399
5464
|
const point = change ? world : {};
|
|
5400
5465
|
this.worldToInner(world, point, distance, relative);
|
|
5401
5466
|
return point;
|
|
5402
5467
|
}
|
|
5468
|
+
getInnerPointByBox(box, _relative, _distance, change) {
|
|
5469
|
+
const point = change ? box : Object.assign({}, box), { x, y } = this.boxBounds;
|
|
5470
|
+
move(point, x, y);
|
|
5471
|
+
return point;
|
|
5472
|
+
}
|
|
5403
5473
|
getInnerPointByLocal(local, _relative, distance, change) {
|
|
5404
5474
|
return this.getInnerPoint(local, this.parent, distance, change);
|
|
5405
5475
|
}
|
|
@@ -5411,20 +5481,23 @@ var LeaferUI = (function (exports) {
|
|
|
5411
5481
|
getLocalPointByInner(inner, _relative, distance, change) {
|
|
5412
5482
|
return this.getWorldPoint(inner, this.parent, distance, change);
|
|
5413
5483
|
}
|
|
5484
|
+
getPagePoint(world, relative, distance, change) {
|
|
5485
|
+
const layer = this.leafer ? this.leafer.zoomLayer : this;
|
|
5486
|
+
return layer.getInnerPoint(world, relative, distance, change);
|
|
5487
|
+
}
|
|
5414
5488
|
getWorldPoint(inner, relative, distance, change) {
|
|
5415
5489
|
const point = change ? inner : {};
|
|
5416
5490
|
this.innerToWorld(inner, point, distance, relative);
|
|
5417
5491
|
return point;
|
|
5418
5492
|
}
|
|
5493
|
+
getWorldPointByBox(box, relative, distance, change) {
|
|
5494
|
+
return this.getWorldPoint(this.getInnerPointByBox(box, null, null, change), relative, distance, true);
|
|
5495
|
+
}
|
|
5419
5496
|
getWorldPointByLocal(local, relative, distance, change) {
|
|
5420
5497
|
const point = change ? local : {};
|
|
5421
5498
|
this.localToWorld(local, point, distance, relative);
|
|
5422
5499
|
return point;
|
|
5423
5500
|
}
|
|
5424
|
-
getPagePoint(world, relative, distance, change) {
|
|
5425
|
-
const layer = this.leafer ? this.leafer.zoomLayer : this;
|
|
5426
|
-
return layer.getInnerPoint(world, relative, distance, change);
|
|
5427
|
-
}
|
|
5428
5501
|
getWorldPointByPage(page, relative, distance, change) {
|
|
5429
5502
|
const layer = this.leafer ? this.leafer.zoomLayer : this;
|
|
5430
5503
|
return layer.getWorldPoint(page, relative, distance, change);
|
|
@@ -5493,6 +5566,17 @@ var LeaferUI = (function (exports) {
|
|
|
5493
5566
|
__drawRenderPath(_canvas) { }
|
|
5494
5567
|
__updatePath() { }
|
|
5495
5568
|
__updateRenderPath() { }
|
|
5569
|
+
getMotionPathData() {
|
|
5570
|
+
return needPlugin('path');
|
|
5571
|
+
}
|
|
5572
|
+
getMotionPoint(_motionDistance) {
|
|
5573
|
+
return needPlugin('path');
|
|
5574
|
+
}
|
|
5575
|
+
getMotionTotal() {
|
|
5576
|
+
return 0;
|
|
5577
|
+
}
|
|
5578
|
+
__updateMotionPath() { }
|
|
5579
|
+
__runAnimation(_type, _complete) { }
|
|
5496
5580
|
__updateSortChildren() { }
|
|
5497
5581
|
add(_child, _index) { }
|
|
5498
5582
|
remove(_child, destroy) {
|
|
@@ -5518,6 +5602,10 @@ var LeaferUI = (function (exports) {
|
|
|
5518
5602
|
fn = boundsType;
|
|
5519
5603
|
fn(defaultValue)(this.prototype, attrName);
|
|
5520
5604
|
}
|
|
5605
|
+
__emitLifeEvent(type) {
|
|
5606
|
+
if (this.hasEvent(type))
|
|
5607
|
+
this.emitEvent(new ChildEvent(type, this, this.parent));
|
|
5608
|
+
}
|
|
5521
5609
|
destroy() {
|
|
5522
5610
|
if (!this.destroyed) {
|
|
5523
5611
|
const { parent } = this;
|
|
@@ -5525,11 +5613,10 @@ var LeaferUI = (function (exports) {
|
|
|
5525
5613
|
this.remove();
|
|
5526
5614
|
if (this.children)
|
|
5527
5615
|
this.removeAll(true);
|
|
5528
|
-
|
|
5529
|
-
this.emitEvent(new ChildEvent(ChildEvent.DESTROY, this, parent));
|
|
5616
|
+
this.__emitLifeEvent(ChildEvent.DESTROY);
|
|
5530
5617
|
this.__.destroy();
|
|
5531
5618
|
this.__layout.destroy();
|
|
5532
|
-
this.
|
|
5619
|
+
this.destroyEventer();
|
|
5533
5620
|
this.destroyed = true;
|
|
5534
5621
|
}
|
|
5535
5622
|
}
|
|
@@ -5595,8 +5682,8 @@ var LeaferUI = (function (exports) {
|
|
|
5595
5682
|
this.__.__childBranchNumber = (this.__.__childBranchNumber || 0) + 1;
|
|
5596
5683
|
child.__layout.boxChanged || child.__layout.boxChange();
|
|
5597
5684
|
child.__layout.matrixChanged || child.__layout.matrixChange();
|
|
5598
|
-
if (child.
|
|
5599
|
-
|
|
5685
|
+
if (child.__bubbleMap)
|
|
5686
|
+
child.__emitLifeEvent(ChildEvent.ADD);
|
|
5600
5687
|
if (this.leafer) {
|
|
5601
5688
|
child.__bindLeafer(this.leafer);
|
|
5602
5689
|
if (this.leafer.created)
|
|
@@ -5609,16 +5696,10 @@ var LeaferUI = (function (exports) {
|
|
|
5609
5696
|
}
|
|
5610
5697
|
remove(child, destroy) {
|
|
5611
5698
|
if (child) {
|
|
5612
|
-
|
|
5613
|
-
|
|
5614
|
-
|
|
5615
|
-
|
|
5616
|
-
this.__.__childBranchNumber = (this.__.__childBranchNumber || 1) - 1;
|
|
5617
|
-
this.__preRemove();
|
|
5618
|
-
this.__realRemoveChild(child);
|
|
5619
|
-
if (destroy)
|
|
5620
|
-
child.destroy();
|
|
5621
|
-
}
|
|
5699
|
+
if (child.animationOut)
|
|
5700
|
+
child.__runAnimation('out', () => this.__remove(child, destroy));
|
|
5701
|
+
else
|
|
5702
|
+
this.__remove(child, destroy);
|
|
5622
5703
|
}
|
|
5623
5704
|
else if (child === undefined) {
|
|
5624
5705
|
super.remove(null, destroy);
|
|
@@ -5640,6 +5721,18 @@ var LeaferUI = (function (exports) {
|
|
|
5640
5721
|
clear() {
|
|
5641
5722
|
this.removeAll(true);
|
|
5642
5723
|
}
|
|
5724
|
+
__remove(child, destroy) {
|
|
5725
|
+
const index = this.children.indexOf(child);
|
|
5726
|
+
if (index > -1) {
|
|
5727
|
+
this.children.splice(index, 1);
|
|
5728
|
+
if (child.isBranch)
|
|
5729
|
+
this.__.__childBranchNumber = (this.__.__childBranchNumber || 1) - 1;
|
|
5730
|
+
this.__preRemove();
|
|
5731
|
+
this.__realRemoveChild(child);
|
|
5732
|
+
if (destroy)
|
|
5733
|
+
child.destroy();
|
|
5734
|
+
}
|
|
5735
|
+
}
|
|
5643
5736
|
__preRemove() {
|
|
5644
5737
|
if (this.__hasMask)
|
|
5645
5738
|
this.__updateMask();
|
|
@@ -5649,6 +5742,7 @@ var LeaferUI = (function (exports) {
|
|
|
5649
5742
|
this.__layout.affectChildrenSort && this.__layout.childrenSortChange();
|
|
5650
5743
|
}
|
|
5651
5744
|
__realRemoveChild(child) {
|
|
5745
|
+
child.__emitLifeEvent(ChildEvent.REMOVE);
|
|
5652
5746
|
child.parent = null;
|
|
5653
5747
|
if (this.leafer) {
|
|
5654
5748
|
child.__bindLeafer(null);
|
|
@@ -5661,8 +5755,6 @@ var LeaferUI = (function (exports) {
|
|
|
5661
5755
|
}
|
|
5662
5756
|
__emitChildEvent(type, child) {
|
|
5663
5757
|
const event = new ChildEvent(type, child, this);
|
|
5664
|
-
if (child.hasEvent(type))
|
|
5665
|
-
child.emitEvent(event);
|
|
5666
5758
|
if (this.hasEvent(type) && !this.isLeafer)
|
|
5667
5759
|
this.emitEvent(event);
|
|
5668
5760
|
this.leafer.emitEvent(event);
|
|
@@ -5825,8 +5917,7 @@ var LeaferUI = (function (exports) {
|
|
|
5825
5917
|
}
|
|
5826
5918
|
}
|
|
5827
5919
|
|
|
5828
|
-
const version = "1.0.
|
|
5829
|
-
const inviteCode = {};
|
|
5920
|
+
const version = "1.0.3";
|
|
5830
5921
|
|
|
5831
5922
|
class LeaferCanvas extends LeaferCanvasBase {
|
|
5832
5923
|
get allowBackgroundColor() { return true; }
|
|
@@ -6053,9 +6144,13 @@ var LeaferUI = (function (exports) {
|
|
|
6053
6144
|
});
|
|
6054
6145
|
}
|
|
6055
6146
|
function updateChange(updateList) {
|
|
6147
|
+
let layout;
|
|
6056
6148
|
updateList.list.forEach(leaf => {
|
|
6057
|
-
|
|
6149
|
+
layout = leaf.__layout;
|
|
6150
|
+
if (layout.opacityChanged)
|
|
6058
6151
|
updateAllWorldOpacity(leaf);
|
|
6152
|
+
if (layout.stateStyleChanged)
|
|
6153
|
+
setTimeout(() => layout.stateStyleChanged && leaf.updateState());
|
|
6059
6154
|
leaf.__updateChange();
|
|
6060
6155
|
});
|
|
6061
6156
|
}
|
|
@@ -6421,7 +6516,6 @@ var LeaferUI = (function (exports) {
|
|
|
6421
6516
|
Platform.requestRender(() => {
|
|
6422
6517
|
this.FPS = Math.min(60, Math.ceil(1000 / (Date.now() - startTime)));
|
|
6423
6518
|
if (this.running) {
|
|
6424
|
-
this.target.emit(AnimateEvent.FRAME);
|
|
6425
6519
|
if (this.changed && this.canvas.view)
|
|
6426
6520
|
this.render();
|
|
6427
6521
|
this.target.emit(RenderEvent.NEXT);
|
|
@@ -6495,36 +6589,6 @@ var LeaferUI = (function (exports) {
|
|
|
6495
6589
|
});
|
|
6496
6590
|
Platform.layout = Layouter.fullLayout;
|
|
6497
6591
|
|
|
6498
|
-
const TextConvert = {};
|
|
6499
|
-
const ColorConvert = {};
|
|
6500
|
-
const PathArrow = {};
|
|
6501
|
-
const Paint = {};
|
|
6502
|
-
const PaintImage = {};
|
|
6503
|
-
const PaintGradient = {};
|
|
6504
|
-
const Effect = {};
|
|
6505
|
-
const Export = {};
|
|
6506
|
-
const State = {};
|
|
6507
|
-
|
|
6508
|
-
function stateType(defaultValue) {
|
|
6509
|
-
return decorateLeafAttr(defaultValue, (key) => attr({
|
|
6510
|
-
set(value) {
|
|
6511
|
-
this.__setAttr(key, value);
|
|
6512
|
-
this.waitLeafer(() => { if (State.setStyle)
|
|
6513
|
-
State.setStyle(this, key + 'Style', value); });
|
|
6514
|
-
}
|
|
6515
|
-
}));
|
|
6516
|
-
}
|
|
6517
|
-
function arrowType(defaultValue) {
|
|
6518
|
-
return decorateLeafAttr(defaultValue, (key) => attr({
|
|
6519
|
-
set(value) {
|
|
6520
|
-
if (this.__setAttr(key, value)) {
|
|
6521
|
-
const data = this.__;
|
|
6522
|
-
data.__useArrow = data.startArrow !== 'none' || data.endArrow !== 'none';
|
|
6523
|
-
doStrokeType(this);
|
|
6524
|
-
}
|
|
6525
|
-
}
|
|
6526
|
-
}));
|
|
6527
|
-
}
|
|
6528
6592
|
function effectType(defaultValue) {
|
|
6529
6593
|
return decorateLeafAttr(defaultValue, (key) => attr({
|
|
6530
6594
|
set(value) {
|
|
@@ -6559,10 +6623,33 @@ var LeaferUI = (function (exports) {
|
|
|
6559
6623
|
};
|
|
6560
6624
|
}
|
|
6561
6625
|
|
|
6626
|
+
const TextConvert = {};
|
|
6627
|
+
const ColorConvert = {};
|
|
6628
|
+
const PathArrow = {};
|
|
6629
|
+
const Paint = {};
|
|
6630
|
+
const PaintImage = {};
|
|
6631
|
+
const PaintGradient = {};
|
|
6632
|
+
const Effect = {};
|
|
6633
|
+
const Export = {};
|
|
6634
|
+
const State = {
|
|
6635
|
+
setStyleName(_leaf, _styleName, _value) { return needPlugin('state'); },
|
|
6636
|
+
set(_leaf, _stateName) { return needPlugin('state'); }
|
|
6637
|
+
};
|
|
6638
|
+
const Transition = {
|
|
6639
|
+
list: {},
|
|
6640
|
+
register(attrName, fn) {
|
|
6641
|
+
Transition.list[attrName] = fn;
|
|
6642
|
+
},
|
|
6643
|
+
get(attrName) {
|
|
6644
|
+
return Transition.list[attrName];
|
|
6645
|
+
}
|
|
6646
|
+
};
|
|
6647
|
+
|
|
6562
6648
|
const { parse } = PathConvert;
|
|
6563
6649
|
const emptyPaint = {};
|
|
6564
6650
|
const debug$2 = Debug.get('UIData');
|
|
6565
6651
|
class UIData extends LeafData {
|
|
6652
|
+
get scale() { const { scaleX, scaleY } = this; return scaleX !== scaleY ? { x: scaleX, y: scaleY } : scaleX; }
|
|
6566
6653
|
get __strokeWidth() {
|
|
6567
6654
|
const { strokeWidth, strokeWidthFixed } = this;
|
|
6568
6655
|
if (strokeWidthFixed) {
|
|
@@ -6581,9 +6668,10 @@ var LeaferUI = (function (exports) {
|
|
|
6581
6668
|
get __autoSide() { return !this._width || !this._height; }
|
|
6582
6669
|
get __autoSize() { return !this._width && !this._height; }
|
|
6583
6670
|
setVisible(value) {
|
|
6584
|
-
if (this.__leaf.leafer)
|
|
6585
|
-
this.__leaf.leafer.watcher.hasVisible = true;
|
|
6586
6671
|
this._visible = value;
|
|
6672
|
+
const { leafer } = this.__leaf;
|
|
6673
|
+
if (leafer)
|
|
6674
|
+
leafer.watcher.hasVisible = true;
|
|
6587
6675
|
}
|
|
6588
6676
|
setWidth(value) {
|
|
6589
6677
|
if (value < 0) {
|
|
@@ -6774,7 +6862,7 @@ var LeaferUI = (function (exports) {
|
|
|
6774
6862
|
__setImageFill(value) {
|
|
6775
6863
|
if (this.__leaf.image)
|
|
6776
6864
|
this.__leaf.image = null;
|
|
6777
|
-
this.fill = value ? { type: 'image', mode: '
|
|
6865
|
+
this.fill = value ? { type: 'image', mode: 'stretch', url: value } : undefined;
|
|
6778
6866
|
}
|
|
6779
6867
|
__getData() {
|
|
6780
6868
|
const data = super.__getData();
|
|
@@ -6964,19 +7052,8 @@ var LeaferUI = (function (exports) {
|
|
|
6964
7052
|
exports.UI = UI_1 = class UI extends exports.Leaf {
|
|
6965
7053
|
get app() { return this.leafer && this.leafer.app; }
|
|
6966
7054
|
get isFrame() { return false; }
|
|
6967
|
-
set scale(value) {
|
|
6968
|
-
|
|
6969
|
-
this.scaleX = this.scaleY = value;
|
|
6970
|
-
}
|
|
6971
|
-
else {
|
|
6972
|
-
this.scaleX = value.x;
|
|
6973
|
-
this.scaleY = value.y;
|
|
6974
|
-
}
|
|
6975
|
-
}
|
|
6976
|
-
get scale() {
|
|
6977
|
-
const { scaleX, scaleY } = this;
|
|
6978
|
-
return scaleX !== scaleY ? { x: scaleX, y: scaleY } : scaleX;
|
|
6979
|
-
}
|
|
7055
|
+
set scale(value) { MathHelper.assignScale(this, value); }
|
|
7056
|
+
get scale() { return this.__.scale; }
|
|
6980
7057
|
get pen() {
|
|
6981
7058
|
const { path } = this.__;
|
|
6982
7059
|
pen.set(this.path = path || []);
|
|
@@ -6991,8 +7068,15 @@ var LeaferUI = (function (exports) {
|
|
|
6991
7068
|
super(data);
|
|
6992
7069
|
}
|
|
6993
7070
|
reset(_data) { }
|
|
6994
|
-
set(data) {
|
|
6995
|
-
|
|
7071
|
+
set(data, isTemp) {
|
|
7072
|
+
if (isTemp) {
|
|
7073
|
+
this.lockNormalStyle = true;
|
|
7074
|
+
Object.assign(this, data);
|
|
7075
|
+
this.lockNormalStyle = false;
|
|
7076
|
+
}
|
|
7077
|
+
else {
|
|
7078
|
+
Object.assign(this, data);
|
|
7079
|
+
}
|
|
6996
7080
|
}
|
|
6997
7081
|
get(name) {
|
|
6998
7082
|
return typeof name === 'string' ? this.__.__getInput(name) : this.__.__getInputData(name);
|
|
@@ -7055,11 +7139,18 @@ var LeaferUI = (function (exports) {
|
|
|
7055
7139
|
drawer.rect(x, y, width, height);
|
|
7056
7140
|
}
|
|
7057
7141
|
}
|
|
7142
|
+
animate(_keyframe, _options, _type, _isTemp) {
|
|
7143
|
+
return needPlugin('animate');
|
|
7144
|
+
}
|
|
7145
|
+
killAnimate(_type) { }
|
|
7058
7146
|
export(filename, options) {
|
|
7059
7147
|
return Export.export(this, filename, options);
|
|
7060
7148
|
}
|
|
7061
|
-
clone() {
|
|
7062
|
-
|
|
7149
|
+
clone(newData) {
|
|
7150
|
+
const json = this.toJSON();
|
|
7151
|
+
if (newData)
|
|
7152
|
+
Object.assign(json, newData);
|
|
7153
|
+
return UI_1.one(json);
|
|
7063
7154
|
}
|
|
7064
7155
|
static one(data, x, y, width, height) {
|
|
7065
7156
|
return UICreator.get(data.tag || this.prototype.__tag, data, x, y, width, height);
|
|
@@ -7075,6 +7166,8 @@ var LeaferUI = (function (exports) {
|
|
|
7075
7166
|
static setEditInner(_editorName) { }
|
|
7076
7167
|
destroy() {
|
|
7077
7168
|
this.fill = this.stroke = null;
|
|
7169
|
+
if (this.__animate)
|
|
7170
|
+
this.killAnimate();
|
|
7078
7171
|
super.destroy();
|
|
7079
7172
|
}
|
|
7080
7173
|
};
|
|
@@ -7102,12 +7195,6 @@ var LeaferUI = (function (exports) {
|
|
|
7102
7195
|
__decorate([
|
|
7103
7196
|
visibleType(true)
|
|
7104
7197
|
], exports.UI.prototype, "visible", void 0);
|
|
7105
|
-
__decorate([
|
|
7106
|
-
stateType(false)
|
|
7107
|
-
], exports.UI.prototype, "selected", void 0);
|
|
7108
|
-
__decorate([
|
|
7109
|
-
stateType(false)
|
|
7110
|
-
], exports.UI.prototype, "disabled", void 0);
|
|
7111
7198
|
__decorate([
|
|
7112
7199
|
surfaceType(false)
|
|
7113
7200
|
], exports.UI.prototype, "locked", void 0);
|
|
@@ -7180,45 +7267,9 @@ var LeaferUI = (function (exports) {
|
|
|
7180
7267
|
__decorate([
|
|
7181
7268
|
pathType(true)
|
|
7182
7269
|
], exports.UI.prototype, "closed", void 0);
|
|
7183
|
-
__decorate([
|
|
7184
|
-
autoLayoutType(false)
|
|
7185
|
-
], exports.UI.prototype, "flow", void 0);
|
|
7186
7270
|
__decorate([
|
|
7187
7271
|
boundsType(0)
|
|
7188
7272
|
], exports.UI.prototype, "padding", void 0);
|
|
7189
|
-
__decorate([
|
|
7190
|
-
boundsType(0)
|
|
7191
|
-
], exports.UI.prototype, "gap", void 0);
|
|
7192
|
-
__decorate([
|
|
7193
|
-
boundsType('top-left')
|
|
7194
|
-
], exports.UI.prototype, "flowAlign", void 0);
|
|
7195
|
-
__decorate([
|
|
7196
|
-
boundsType(false)
|
|
7197
|
-
], exports.UI.prototype, "flowWrap", void 0);
|
|
7198
|
-
__decorate([
|
|
7199
|
-
boundsType('box')
|
|
7200
|
-
], exports.UI.prototype, "itemBox", void 0);
|
|
7201
|
-
__decorate([
|
|
7202
|
-
boundsType(true)
|
|
7203
|
-
], exports.UI.prototype, "inFlow", void 0);
|
|
7204
|
-
__decorate([
|
|
7205
|
-
boundsType()
|
|
7206
|
-
], exports.UI.prototype, "autoWidth", void 0);
|
|
7207
|
-
__decorate([
|
|
7208
|
-
boundsType()
|
|
7209
|
-
], exports.UI.prototype, "autoHeight", void 0);
|
|
7210
|
-
__decorate([
|
|
7211
|
-
boundsType()
|
|
7212
|
-
], exports.UI.prototype, "lockRatio", void 0);
|
|
7213
|
-
__decorate([
|
|
7214
|
-
boundsType()
|
|
7215
|
-
], exports.UI.prototype, "autoBox", void 0);
|
|
7216
|
-
__decorate([
|
|
7217
|
-
boundsType()
|
|
7218
|
-
], exports.UI.prototype, "widthRange", void 0);
|
|
7219
|
-
__decorate([
|
|
7220
|
-
boundsType()
|
|
7221
|
-
], exports.UI.prototype, "heightRange", void 0);
|
|
7222
7273
|
__decorate([
|
|
7223
7274
|
dataType(false)
|
|
7224
7275
|
], exports.UI.prototype, "draggable", void 0);
|
|
@@ -7282,12 +7333,6 @@ var LeaferUI = (function (exports) {
|
|
|
7282
7333
|
__decorate([
|
|
7283
7334
|
strokeType(10)
|
|
7284
7335
|
], exports.UI.prototype, "miterLimit", void 0);
|
|
7285
|
-
__decorate([
|
|
7286
|
-
arrowType('none')
|
|
7287
|
-
], exports.UI.prototype, "startArrow", void 0);
|
|
7288
|
-
__decorate([
|
|
7289
|
-
arrowType('none')
|
|
7290
|
-
], exports.UI.prototype, "endArrow", void 0);
|
|
7291
7336
|
__decorate([
|
|
7292
7337
|
pathType(0)
|
|
7293
7338
|
], exports.UI.prototype, "cornerRadius", void 0);
|
|
@@ -7309,24 +7354,6 @@ var LeaferUI = (function (exports) {
|
|
|
7309
7354
|
__decorate([
|
|
7310
7355
|
effectType()
|
|
7311
7356
|
], exports.UI.prototype, "grayscale", void 0);
|
|
7312
|
-
__decorate([
|
|
7313
|
-
dataType()
|
|
7314
|
-
], exports.UI.prototype, "normalStyle", void 0);
|
|
7315
|
-
__decorate([
|
|
7316
|
-
dataType()
|
|
7317
|
-
], exports.UI.prototype, "hoverStyle", void 0);
|
|
7318
|
-
__decorate([
|
|
7319
|
-
dataType()
|
|
7320
|
-
], exports.UI.prototype, "pressStyle", void 0);
|
|
7321
|
-
__decorate([
|
|
7322
|
-
dataType()
|
|
7323
|
-
], exports.UI.prototype, "focusStyle", void 0);
|
|
7324
|
-
__decorate([
|
|
7325
|
-
dataType()
|
|
7326
|
-
], exports.UI.prototype, "selectedStyle", void 0);
|
|
7327
|
-
__decorate([
|
|
7328
|
-
dataType()
|
|
7329
|
-
], exports.UI.prototype, "disabledStyle", void 0);
|
|
7330
7357
|
__decorate([
|
|
7331
7358
|
dataType({})
|
|
7332
7359
|
], exports.UI.prototype, "data", void 0);
|
|
@@ -7353,7 +7380,7 @@ var LeaferUI = (function (exports) {
|
|
|
7353
7380
|
if (!this.children)
|
|
7354
7381
|
this.children = [];
|
|
7355
7382
|
}
|
|
7356
|
-
set(data) {
|
|
7383
|
+
set(data, isTemp) {
|
|
7357
7384
|
if (data.children) {
|
|
7358
7385
|
const { children } = data;
|
|
7359
7386
|
delete data.children;
|
|
@@ -7363,7 +7390,7 @@ var LeaferUI = (function (exports) {
|
|
|
7363
7390
|
else {
|
|
7364
7391
|
this.clear();
|
|
7365
7392
|
}
|
|
7366
|
-
super.set(data);
|
|
7393
|
+
super.set(data, isTemp);
|
|
7367
7394
|
let child;
|
|
7368
7395
|
children.forEach(childData => {
|
|
7369
7396
|
child = childData.__ ? childData : UICreator.get(childData.tag, childData);
|
|
@@ -7372,7 +7399,7 @@ var LeaferUI = (function (exports) {
|
|
|
7372
7399
|
data.children = children;
|
|
7373
7400
|
}
|
|
7374
7401
|
else {
|
|
7375
|
-
super.set(data);
|
|
7402
|
+
super.set(data, isTemp);
|
|
7376
7403
|
}
|
|
7377
7404
|
}
|
|
7378
7405
|
toJSON(options) {
|
|
@@ -7699,7 +7726,7 @@ var LeaferUI = (function (exports) {
|
|
|
7699
7726
|
}
|
|
7700
7727
|
}
|
|
7701
7728
|
zoom(_zoomType, _padding, _fixedScale) {
|
|
7702
|
-
return
|
|
7729
|
+
return needPlugin('view');
|
|
7703
7730
|
}
|
|
7704
7731
|
getValidMove(moveX, moveY) { return { x: moveX, y: moveY }; }
|
|
7705
7732
|
getValidScale(changeScale) { return changeScale; }
|
|
@@ -8222,19 +8249,18 @@ var LeaferUI = (function (exports) {
|
|
|
8222
8249
|
this.paint();
|
|
8223
8250
|
}
|
|
8224
8251
|
paint() {
|
|
8225
|
-
this.
|
|
8252
|
+
this.forceRender();
|
|
8226
8253
|
}
|
|
8227
8254
|
__drawAfterFill(canvas, _options) {
|
|
8228
|
-
const
|
|
8229
|
-
|
|
8230
|
-
if (this.__.cornerRadius || this.pathInputed) {
|
|
8255
|
+
const { width, height, cornerRadius } = this.__, { view } = this.canvas;
|
|
8256
|
+
if (cornerRadius || this.pathInputed) {
|
|
8231
8257
|
canvas.save();
|
|
8232
8258
|
canvas.clip();
|
|
8233
|
-
canvas.drawImage(
|
|
8259
|
+
canvas.drawImage(view, 0, 0, view.width, view.height, 0, 0, width, height);
|
|
8234
8260
|
canvas.restore();
|
|
8235
8261
|
}
|
|
8236
8262
|
else {
|
|
8237
|
-
canvas.drawImage(
|
|
8263
|
+
canvas.drawImage(view, 0, 0, view.width, view.height, 0, 0, width, height);
|
|
8238
8264
|
}
|
|
8239
8265
|
}
|
|
8240
8266
|
__updateSize() {
|
|
@@ -8873,6 +8899,8 @@ var LeaferUI = (function (exports) {
|
|
|
8873
8899
|
let { width, height } = image;
|
|
8874
8900
|
if (paint.padding)
|
|
8875
8901
|
box = tempBox.set(box).shrink(paint.padding);
|
|
8902
|
+
if (paint.mode === 'strench')
|
|
8903
|
+
paint.mode = 'stretch';
|
|
8876
8904
|
const { opacity, mode, align, offset, scale, size, rotation, repeat } = paint;
|
|
8877
8905
|
const sameBox = box.width === width && box.height === height;
|
|
8878
8906
|
const data = { mode };
|
|
@@ -8901,7 +8929,7 @@ var LeaferUI = (function (exports) {
|
|
|
8901
8929
|
if (offset)
|
|
8902
8930
|
x += offset.x, y += offset.y;
|
|
8903
8931
|
switch (mode) {
|
|
8904
|
-
case '
|
|
8932
|
+
case 'stretch':
|
|
8905
8933
|
if (!sameBox)
|
|
8906
8934
|
width = box.width, height = box.height;
|
|
8907
8935
|
break;
|
|
@@ -8928,7 +8956,7 @@ var LeaferUI = (function (exports) {
|
|
|
8928
8956
|
translate(data.transform, box.x, box.y);
|
|
8929
8957
|
}
|
|
8930
8958
|
}
|
|
8931
|
-
if (scaleX && mode !== '
|
|
8959
|
+
if (scaleX && mode !== 'stretch') {
|
|
8932
8960
|
data.scaleX = scaleX;
|
|
8933
8961
|
data.scaleY = scaleY;
|
|
8934
8962
|
}
|
|
@@ -9032,7 +9060,7 @@ var LeaferUI = (function (exports) {
|
|
|
9032
9060
|
const { ceil, abs: abs$1 } = Math;
|
|
9033
9061
|
function createPattern(ui, paint, pixelRatio) {
|
|
9034
9062
|
let { scaleX, scaleY } = ImageManager.patternLocked ? ui.__world : ui.__nowWorld;
|
|
9035
|
-
const id = scaleX + '-' + scaleY;
|
|
9063
|
+
const id = scaleX + '-' + scaleY + '-' + pixelRatio;
|
|
9036
9064
|
if (paint.patternId !== id && !ui.destroyed) {
|
|
9037
9065
|
scaleX = abs$1(scaleX);
|
|
9038
9066
|
scaleY = abs$1(scaleY);
|
|
@@ -9094,7 +9122,8 @@ var LeaferUI = (function (exports) {
|
|
|
9094
9122
|
const { abs } = Math;
|
|
9095
9123
|
function checkImage(ui, canvas, paint, allowPaint) {
|
|
9096
9124
|
const { scaleX, scaleY } = ImageManager.patternLocked ? ui.__world : ui.__nowWorld;
|
|
9097
|
-
|
|
9125
|
+
const { pixelRatio } = canvas;
|
|
9126
|
+
if (!paint.data || (paint.patternId === scaleX + '-' + scaleY + '-' + pixelRatio && !Export.running)) {
|
|
9098
9127
|
return false;
|
|
9099
9128
|
}
|
|
9100
9129
|
else {
|
|
@@ -9102,8 +9131,8 @@ var LeaferUI = (function (exports) {
|
|
|
9102
9131
|
if (allowPaint) {
|
|
9103
9132
|
if (!data.repeat) {
|
|
9104
9133
|
let { width, height } = data;
|
|
9105
|
-
width *= abs(scaleX) *
|
|
9106
|
-
height *= abs(scaleY) *
|
|
9134
|
+
width *= abs(scaleX) * pixelRatio;
|
|
9135
|
+
height *= abs(scaleY) * pixelRatio;
|
|
9107
9136
|
if (data.scaleX) {
|
|
9108
9137
|
width *= data.scaleX;
|
|
9109
9138
|
height *= data.scaleY;
|
|
@@ -9129,14 +9158,14 @@ var LeaferUI = (function (exports) {
|
|
|
9129
9158
|
}
|
|
9130
9159
|
else {
|
|
9131
9160
|
if (!paint.style || paint.sync || Export.running) {
|
|
9132
|
-
createPattern(ui, paint,
|
|
9161
|
+
createPattern(ui, paint, pixelRatio);
|
|
9133
9162
|
}
|
|
9134
9163
|
else {
|
|
9135
9164
|
if (!paint.patternTask) {
|
|
9136
9165
|
paint.patternTask = ImageManager.patternTasker.add(() => __awaiter(this, void 0, void 0, function* () {
|
|
9137
9166
|
paint.patternTask = null;
|
|
9138
9167
|
if (canvas.bounds.hit(ui.__nowWorld))
|
|
9139
|
-
createPattern(ui, paint,
|
|
9168
|
+
createPattern(ui, paint, pixelRatio);
|
|
9140
9169
|
ui.forceUpdate('surface');
|
|
9141
9170
|
}), 300);
|
|
9142
9171
|
}
|
|
@@ -9200,14 +9229,16 @@ var LeaferUI = (function (exports) {
|
|
|
9200
9229
|
return data;
|
|
9201
9230
|
}
|
|
9202
9231
|
function applyStops(gradient, stops, opacity) {
|
|
9203
|
-
|
|
9204
|
-
|
|
9205
|
-
|
|
9206
|
-
|
|
9207
|
-
|
|
9208
|
-
|
|
9209
|
-
|
|
9210
|
-
|
|
9232
|
+
if (stops) {
|
|
9233
|
+
let stop;
|
|
9234
|
+
for (let i = 0, len = stops.length; i < len; i++) {
|
|
9235
|
+
stop = stops[i];
|
|
9236
|
+
if (typeof stop === 'string') {
|
|
9237
|
+
gradient.addColorStop(i / (len - 1), ColorConvert.string(stop, opacity));
|
|
9238
|
+
}
|
|
9239
|
+
else {
|
|
9240
|
+
gradient.addColorStop(stop.offset, ColorConvert.string(stop.color, opacity));
|
|
9241
|
+
}
|
|
9211
9242
|
}
|
|
9212
9243
|
}
|
|
9213
9244
|
}
|
|
@@ -9963,10 +9994,15 @@ var LeaferUI = (function (exports) {
|
|
|
9963
9994
|
};
|
|
9964
9995
|
|
|
9965
9996
|
function string(color, opacity) {
|
|
9966
|
-
|
|
9967
|
-
|
|
9997
|
+
const doOpacity = typeof opacity === 'number' && opacity !== 1;
|
|
9998
|
+
if (typeof color === 'string') {
|
|
9999
|
+
if (doOpacity && ColorConvert.object)
|
|
10000
|
+
color = ColorConvert.object(color);
|
|
10001
|
+
else
|
|
10002
|
+
return color;
|
|
10003
|
+
}
|
|
9968
10004
|
let a = color.a === undefined ? 1 : color.a;
|
|
9969
|
-
if (
|
|
10005
|
+
if (doOpacity)
|
|
9970
10006
|
a *= opacity;
|
|
9971
10007
|
const rgb = color.r + ',' + color.g + ',' + color.b;
|
|
9972
10008
|
return a === 1 ? 'rgb(' + rgb + ')' : 'rgba(' + rgb + ',' + a + ')';
|
|
@@ -10174,7 +10210,6 @@ var LeaferUI = (function (exports) {
|
|
|
10174
10210
|
useCanvas();
|
|
10175
10211
|
|
|
10176
10212
|
exports.AlignHelper = AlignHelper;
|
|
10177
|
-
exports.AnimateEvent = AnimateEvent;
|
|
10178
10213
|
exports.AroundHelper = AroundHelper;
|
|
10179
10214
|
exports.AutoBounds = AutoBounds;
|
|
10180
10215
|
exports.BezierHelper = BezierHelper;
|
|
@@ -10195,6 +10230,7 @@ var LeaferUI = (function (exports) {
|
|
|
10195
10230
|
exports.EllipseHelper = EllipseHelper;
|
|
10196
10231
|
exports.Event = Event;
|
|
10197
10232
|
exports.EventCreator = EventCreator;
|
|
10233
|
+
exports.Eventer = Eventer;
|
|
10198
10234
|
exports.Export = Export;
|
|
10199
10235
|
exports.FileHelper = FileHelper;
|
|
10200
10236
|
exports.FrameData = FrameData;
|
|
@@ -10265,6 +10301,7 @@ var LeaferUI = (function (exports) {
|
|
|
10265
10301
|
exports.TaskProcessor = TaskProcessor;
|
|
10266
10302
|
exports.TextConvert = TextConvert;
|
|
10267
10303
|
exports.TextData = TextData;
|
|
10304
|
+
exports.Transition = Transition;
|
|
10268
10305
|
exports.TwoPointBoundsHelper = TwoPointBoundsHelper;
|
|
10269
10306
|
exports.UIBounds = UIBounds;
|
|
10270
10307
|
exports.UICreator = UICreator;
|
|
@@ -10276,7 +10313,6 @@ var LeaferUI = (function (exports) {
|
|
|
10276
10313
|
exports.Watcher = Watcher;
|
|
10277
10314
|
exports.affectRenderBoundsType = affectRenderBoundsType;
|
|
10278
10315
|
exports.affectStrokeBoundsType = affectStrokeBoundsType;
|
|
10279
|
-
exports.arrowType = arrowType;
|
|
10280
10316
|
exports.attr = attr;
|
|
10281
10317
|
exports.autoLayoutType = autoLayoutType;
|
|
10282
10318
|
exports.boundsType = boundsType;
|
|
@@ -10299,10 +10335,11 @@ var LeaferUI = (function (exports) {
|
|
|
10299
10335
|
exports.getMatrixData = getMatrixData;
|
|
10300
10336
|
exports.getPointData = getPointData;
|
|
10301
10337
|
exports.hitType = hitType;
|
|
10302
|
-
exports.
|
|
10338
|
+
exports.isNull = isNull;
|
|
10303
10339
|
exports.layoutProcessor = layoutProcessor;
|
|
10304
10340
|
exports.maskType = maskType;
|
|
10305
10341
|
exports.naturalBoundsType = naturalBoundsType;
|
|
10342
|
+
exports.needPlugin = needPlugin;
|
|
10306
10343
|
exports.opacityType = opacityType;
|
|
10307
10344
|
exports.pathInputType = pathInputType;
|
|
10308
10345
|
exports.pathType = pathType;
|
|
@@ -10316,7 +10353,6 @@ var LeaferUI = (function (exports) {
|
|
|
10316
10353
|
exports.rotationType = rotationType;
|
|
10317
10354
|
exports.scaleType = scaleType;
|
|
10318
10355
|
exports.sortType = sortType;
|
|
10319
|
-
exports.stateType = stateType;
|
|
10320
10356
|
exports.strokeType = strokeType;
|
|
10321
10357
|
exports.surfaceType = surfaceType;
|
|
10322
10358
|
exports.tempBounds = tempBounds$1;
|