leafer-ui 2.2.0 → 2.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/web.cjs +18 -22
- package/dist/web.esm.js +18 -22
- package/dist/web.esm.min.js +1 -1
- package/dist/web.esm.min.js.map +1 -1
- package/dist/web.js +46 -33
- package/dist/web.min.cjs +1 -1
- package/dist/web.min.cjs.map +1 -1
- package/dist/web.min.js +1 -1
- package/dist/web.min.js.map +1 -1
- package/dist/web.module.js +48 -34
- package/dist/web.module.min.js +1 -1
- package/dist/web.module.min.js.map +1 -1
- package/package.json +11 -11
package/dist/web.module.js
CHANGED
|
@@ -4531,11 +4531,15 @@ function affectRenderBoundsType(defaultValue) {
|
|
|
4531
4531
|
function surfaceType(defaultValue) {
|
|
4532
4532
|
return decorateLeafAttr(defaultValue, key => attr({
|
|
4533
4533
|
set(value) {
|
|
4534
|
-
this.__setAttr(key, value) && (this
|
|
4534
|
+
this.__setAttr(key, value) && doSurfaceType(this);
|
|
4535
4535
|
}
|
|
4536
4536
|
}));
|
|
4537
4537
|
}
|
|
4538
4538
|
|
|
4539
|
+
function doSurfaceType(leaf) {
|
|
4540
|
+
leaf.__layout.surfaceChanged || leaf.__layout.surfaceChange();
|
|
4541
|
+
}
|
|
4542
|
+
|
|
4539
4543
|
function dimType(defaultValue) {
|
|
4540
4544
|
return decorateLeafAttr(defaultValue, key => attr({
|
|
4541
4545
|
set(value) {
|
|
@@ -4601,12 +4605,12 @@ function sortType(defaultValue) {
|
|
|
4601
4605
|
}));
|
|
4602
4606
|
}
|
|
4603
4607
|
|
|
4604
|
-
function maskType(defaultValue) {
|
|
4608
|
+
function maskType(defaultValue, updateSelf) {
|
|
4605
4609
|
return decorateLeafAttr(defaultValue, key => attr({
|
|
4606
4610
|
set(value) {
|
|
4607
4611
|
if (this.__setAttr(key, value)) {
|
|
4608
4612
|
this.__layout.boxChanged || this.__layout.boxChange();
|
|
4609
|
-
this.waitParent(() => {
|
|
4613
|
+
updateSelf ? this.__updateMask() : this.waitParent(() => {
|
|
4610
4614
|
this.parent.__updateMask(value);
|
|
4611
4615
|
});
|
|
4612
4616
|
}
|
|
@@ -6258,7 +6262,8 @@ const BranchRender = {
|
|
|
6258
6262
|
if (this.__worldOpacity && hasSize(nowWorld)) {
|
|
6259
6263
|
const data = this.__;
|
|
6260
6264
|
if (data.__useDim) {
|
|
6261
|
-
if (data.
|
|
6265
|
+
if (data.bright && !options.topRendering) return options.topList.add(this);
|
|
6266
|
+
if (data.dim) options.dimOpacity = data.dim === true ? .2 : data.dim; else if (data.dimskip) options.dimOpacity && (options.dimOpacity = 0);
|
|
6262
6267
|
}
|
|
6263
6268
|
if (data.__single && !this.isBranchLeaf) {
|
|
6264
6269
|
if (data.eraser === "path") return this.__renderEraser(canvas, options);
|
|
@@ -6282,6 +6287,7 @@ const BranchRender = {
|
|
|
6282
6287
|
child = children[i];
|
|
6283
6288
|
excludeRenderBounds$1(child, options) || (child.__hasComplex ? LeafHelper.renderComplex(child, canvas, options) : child.__render(canvas, options));
|
|
6284
6289
|
}
|
|
6290
|
+
if (this.__hasMask === 0) this.__rerenderMask(canvas, options);
|
|
6285
6291
|
}
|
|
6286
6292
|
},
|
|
6287
6293
|
__clip(canvas, options) {
|
|
@@ -6498,11 +6504,19 @@ let Leaf = class Leaf {
|
|
|
6498
6504
|
updateLayout() {
|
|
6499
6505
|
this.__layout.update();
|
|
6500
6506
|
}
|
|
6501
|
-
forceUpdate(
|
|
6502
|
-
|
|
6503
|
-
|
|
6504
|
-
|
|
6505
|
-
|
|
6507
|
+
forceUpdate(typeOrAttrName) {
|
|
6508
|
+
let quick;
|
|
6509
|
+
if (!typeOrAttrName || typeOrAttrName === "bounds") doBoundsType(this), quick = true; else if (typeOrAttrName === "surface") doSurfaceType(this),
|
|
6510
|
+
quick = true; else if (typeOrAttrName === "stroke") doStrokeType(this), quick = true;
|
|
6511
|
+
if (quick) {
|
|
6512
|
+
const {leafer: leafer} = this;
|
|
6513
|
+
return leafer && leafer.watcher && leafer.watcher.__onAttrChange({
|
|
6514
|
+
target: this
|
|
6515
|
+
});
|
|
6516
|
+
}
|
|
6517
|
+
const value = this.__.__getInput(typeOrAttrName);
|
|
6518
|
+
this.__[typeOrAttrName] = isUndefined(value) ? null : undefined;
|
|
6519
|
+
this[typeOrAttrName] = value;
|
|
6506
6520
|
}
|
|
6507
6521
|
forceRender(_bounds, _sync) {
|
|
6508
6522
|
this.forceUpdate("surface");
|
|
@@ -6521,7 +6535,8 @@ let Leaf = class Leaf {
|
|
|
6521
6535
|
canvas.restore();
|
|
6522
6536
|
}
|
|
6523
6537
|
__updateMask(_value) {
|
|
6524
|
-
|
|
6538
|
+
const hasMask = this.children.some(item => item.__.mask && item.__.visible && item.__.opacity);
|
|
6539
|
+
this.__hasMask = this.__.maskskip ? hasMask && 0 : hasMask;
|
|
6525
6540
|
}
|
|
6526
6541
|
__getNowWorld(options) {
|
|
6527
6542
|
if (options.matrix) {
|
|
@@ -6990,7 +7005,7 @@ class LeafLevelList {
|
|
|
6990
7005
|
}
|
|
6991
7006
|
}
|
|
6992
7007
|
|
|
6993
|
-
const version = "2.2.
|
|
7008
|
+
const version = "2.2.1";
|
|
6994
7009
|
|
|
6995
7010
|
const debug$5 = Debug.get("LeaferCanvas");
|
|
6996
7011
|
|
|
@@ -7902,7 +7917,7 @@ class Picker {
|
|
|
7902
7917
|
for (let i = 0, len = list.length; i < len; i++) {
|
|
7903
7918
|
find = list[i];
|
|
7904
7919
|
if (ignoreHittable || LeafHelper.worldHittable(find)) {
|
|
7905
|
-
this.hitChild(find, point);
|
|
7920
|
+
this.hitChild(find, find.hitThrough ? this.point : point);
|
|
7906
7921
|
if (findList.length) {
|
|
7907
7922
|
if (find.isBranchLeaf && list.some(item => item !== find && LeafHelper.hasParent(item, find))) {
|
|
7908
7923
|
findList.reset();
|
|
@@ -7915,7 +7930,7 @@ class Picker {
|
|
|
7915
7930
|
}
|
|
7916
7931
|
if (bottomList) {
|
|
7917
7932
|
for (let i = 0, len = bottomList.length; i < len; i++) {
|
|
7918
|
-
this.hitChild(bottomList[i].target, this.point, bottomList[i].proxy);
|
|
7933
|
+
this.hitChild(bottomList[i].target, this.point, undefined, bottomList[i].proxy);
|
|
7919
7934
|
if (findList.length) return findList.list[0];
|
|
7920
7935
|
}
|
|
7921
7936
|
}
|
|
@@ -7973,42 +7988,38 @@ class Picker {
|
|
|
7973
7988
|
hitBranch(branch) {
|
|
7974
7989
|
this.eachFind(branch.children, branch.__onlyHitMask);
|
|
7975
7990
|
}
|
|
7976
|
-
eachFind(children,
|
|
7991
|
+
eachFind(children, onlyHitMask) {
|
|
7977
7992
|
let child, hit, data;
|
|
7978
7993
|
const {point: point} = this, len = children.length;
|
|
7979
7994
|
for (let i = len - 1; i > -1; i--) {
|
|
7980
7995
|
child = children[i], data = child.__;
|
|
7981
|
-
if (!data.visible ||
|
|
7996
|
+
if (!data.visible || onlyHitMask && !data.mask) continue;
|
|
7982
7997
|
hit = hitRadiusPoint$1(child.__world, data.hitRadius ? copyRadiusPoint$1(tempPoint$1, point, data.hitRadius) : point);
|
|
7983
7998
|
if (child.isBranch) {
|
|
7984
7999
|
if (hit || child.__ignoreHitWorld) {
|
|
7985
8000
|
if (child.isBranchLeaf && data.__clipAfterFill && !child.__hitWorld(point, true)) continue;
|
|
7986
8001
|
if (child.topChildren) this.eachFind(child.topChildren, false);
|
|
7987
8002
|
this.eachFind(child.children, child.__onlyHitMask);
|
|
7988
|
-
if (child.isBranchLeaf) this.hitChild(child, point);
|
|
8003
|
+
if (child.isBranchLeaf) this.hitChild(child, point, onlyHitMask);
|
|
7989
8004
|
}
|
|
7990
8005
|
} else {
|
|
7991
|
-
if (hit) this.hitChild(child, point);
|
|
8006
|
+
if (hit) this.hitChild(child, point, onlyHitMask);
|
|
7992
8007
|
}
|
|
7993
8008
|
}
|
|
7994
8009
|
}
|
|
7995
|
-
hitChild(child, point, proxy) {
|
|
8010
|
+
hitChild(child, point, onlyHitMask, proxy) {
|
|
7996
8011
|
if (this.exclude && this.exclude.has(child)) return;
|
|
7997
|
-
if (child.__hitWorld(point)) {
|
|
7998
|
-
const {parent: parent} = child;
|
|
7999
|
-
if (parent && parent.__hasMask && !
|
|
8000
|
-
|
|
8001
|
-
const {children: children} = parent;
|
|
8002
|
-
for (let i = 0, len = children.length; i < len; i++) {
|
|
8003
|
-
item = children[i];
|
|
8004
|
-
if (item.__.mask) findMasks.push(item);
|
|
8005
|
-
if (item === child) {
|
|
8006
|
-
if (findMasks && !findMasks.every(value => value.__hitWorld(point))) return;
|
|
8007
|
-
break;
|
|
8008
|
-
}
|
|
8009
|
-
}
|
|
8012
|
+
if (child.__hitWorld(point, onlyHitMask && child.mask === "path" ? true : undefined)) {
|
|
8013
|
+
const {parent: parent, mask: mask} = child;
|
|
8014
|
+
if (parent && parent.__hasMask && mask && !(mask === "clipping" || mask === "clipping-path")) {
|
|
8015
|
+
if (!parent.children.some(item => !item.mask && item.__hitWorld(point))) return;
|
|
8010
8016
|
}
|
|
8011
|
-
|
|
8017
|
+
const leaf = proxy || child, {hitThrough: hitThrough} = child, {findList: findList} = this;
|
|
8018
|
+
if (hitThrough) {
|
|
8019
|
+
const index = findList.list.findIndex(item => item[hitThrough] === child[hitThrough]);
|
|
8020
|
+
if (index > 0) return findList.addAt(leaf, index);
|
|
8021
|
+
}
|
|
8022
|
+
findList.add(leaf);
|
|
8012
8023
|
}
|
|
8013
8024
|
}
|
|
8014
8025
|
clear() {
|
|
@@ -8870,6 +8881,8 @@ __decorate([ dataType(false) ], UI.prototype, "editable", void 0);
|
|
|
8870
8881
|
|
|
8871
8882
|
__decorate([ hitType(true) ], UI.prototype, "hittable", void 0);
|
|
8872
8883
|
|
|
8884
|
+
__decorate([ hitType() ], UI.prototype, "hitThrough", void 0);
|
|
8885
|
+
|
|
8873
8886
|
__decorate([ hitType("path") ], UI.prototype, "hitFill", void 0);
|
|
8874
8887
|
|
|
8875
8888
|
__decorate([ strokeType("path") ], UI.prototype, "hitStroke", void 0);
|
|
@@ -10703,6 +10716,7 @@ class Dragger {
|
|
|
10703
10716
|
}
|
|
10704
10717
|
dragEnd(data) {
|
|
10705
10718
|
if (!this.dragging && !this.moving) return;
|
|
10719
|
+
setTimeout(() => this.interaction.pointerMove(data));
|
|
10706
10720
|
if (this.checkDragEndAnimate(data)) return;
|
|
10707
10721
|
this.dragEndReal(data);
|
|
10708
10722
|
}
|
|
@@ -12295,7 +12309,7 @@ function checkSizeAndCreateData(ui, attrName, paint, image, leafPaint, boxBounds
|
|
|
12295
12309
|
data.__naturalWidth = image.width / data.pixelRatio;
|
|
12296
12310
|
data.__naturalHeight = image.height / data.pixelRatio;
|
|
12297
12311
|
if (data.__autoSide) {
|
|
12298
|
-
ui.forceUpdate(
|
|
12312
|
+
ui.forceUpdate();
|
|
12299
12313
|
LeafHelper.updateBounds(ui);
|
|
12300
12314
|
ui.__layout.boundsChanged = true;
|
|
12301
12315
|
if (ui.__proxyData) {
|
|
@@ -13575,4 +13589,4 @@ Object.assign(Creator, {
|
|
|
13575
13589
|
|
|
13576
13590
|
useCanvas();
|
|
13577
13591
|
|
|
13578
|
-
export { AlignHelper, Answer, App, AroundHelper, AutoBounds, BezierHelper, Bounds, BoundsEvent, BoundsHelper, Box, BoxData, Branch, BranchHelper, BranchRender, Canvas, CanvasData, CanvasManager, ChildEvent, ColorConvert, Creator, Cursor, DataHelper, Debug, Direction4, Direction9, DragBoundsHelper, DragEvent$1 as DragEvent, Dragger, DropEvent, Effect, Ellipse, EllipseData, EllipseHelper, Event, EventCreator, Eventer, Export, FileHelper, Filter, FourNumberHelper, Frame, FrameData, Group, GroupData, HitCanvasManager, Image$1 as Image, ImageData, ImageEvent, ImageManager, IncrementId, Interaction, InteractionBase, InteractionHelper, KeyEvent, Keyboard, LayoutEvent, Layouter, Leaf, LeafBounds, LeafBoundsHelper, LeafData, LeafDataProxy, LeafEventer, LeafHelper, LeafLayout, LeafLevelList, LeafList, LeafMatrix, LeafRender, Leafer, LeaferCanvas, LeaferCanvasBase, LeaferData, LeaferEvent, LeaferFilm, LeaferImage, LeaferVideo, Line, LineData, MathHelper, Matrix, MatrixHelper, MoveEvent, MyDragEvent, MyImage, MyPointerEvent, MyTouchEvent, NeedConvertToCanvasCommandMap, OneRadian, PI2, PI_2, Paint, PaintGradient, PaintImage, Path, PathArrow, PathBounds, PathCommandDataHelper, PathCommandMap, PathCommandNodeHelper, PathConvert, PathCorner, PathCreator, PathData, PathDrawer, PathHelper, PathNodeHandleType, PathNumberCommandLengthMap, PathNumberCommandMap, Pen, PenData, Picker, Platform, Plugin, Point, PointHelper, PointerButton, PointerEvent$1 as PointerEvent, Polygon, PolygonData, PropertyEvent, Rect, RectData, RectHelper, RectRender, RenderEvent, Renderer, ResizeEvent, Resource, RotateEvent, Run, Selector, Star, StarData, State, StringNumberMap, SwipeEvent, TaskItem, TaskProcessor, Text, TextConvert, TextData, TouchEvent, Transition, TwoPointBoundsHelper, UI, UIBounds, UICreator, UIData, UIEvent, UIRender, UnitConvert, UnitConvertHelper, WaitHelper, WatchEvent, Watcher, ZoomEvent, affectRenderBoundsType, affectStrokeBoundsType, attr, autoLayoutType, boundsType, canvasPatch, canvasSizeAttrs, createAttr, createDescriptor, cursorType, dataProcessor, dataType, decorateLeafAttr, defineDataProcessor, defineKey, defineLeafAttr, dimType, doBoundsType, doStrokeType, effectType, emptyData, eraserType, extraPropertyEventMap, getBoundsData, getDescriptor, getMatrixData, getPointData, hitType, isArray, isData, isEmptyData, isFinite, isNull, isNumber, isObject, isString, isUndefined, layoutProcessor, leaferTransformAttrMap, maskType, naturalBoundsType, opacityType, path, pathInputType, pathType, pen, positionType, registerUI, registerUIEvent, resizeType, rewrite, rewriteAble, rotationType, scaleType, scrollType, sortType, strokeType, surfaceType, tempBounds$2 as tempBounds, tempMatrix$2 as tempMatrix, tempPoint$4 as tempPoint, tryToNumber, useCanvas, useModule, version, visibleType, zoomLayerType };
|
|
13592
|
+
export { AlignHelper, Answer, App, AroundHelper, AutoBounds, BezierHelper, Bounds, BoundsEvent, BoundsHelper, Box, BoxData, Branch, BranchHelper, BranchRender, Canvas, CanvasData, CanvasManager, ChildEvent, ColorConvert, Creator, Cursor, DataHelper, Debug, Direction4, Direction9, DragBoundsHelper, DragEvent$1 as DragEvent, Dragger, DropEvent, Effect, Ellipse, EllipseData, EllipseHelper, Event, EventCreator, Eventer, Export, FileHelper, Filter, FourNumberHelper, Frame, FrameData, Group, GroupData, HitCanvasManager, Image$1 as Image, ImageData, ImageEvent, ImageManager, IncrementId, Interaction, InteractionBase, InteractionHelper, KeyEvent, Keyboard, LayoutEvent, Layouter, Leaf, LeafBounds, LeafBoundsHelper, LeafData, LeafDataProxy, LeafEventer, LeafHelper, LeafLayout, LeafLevelList, LeafList, LeafMatrix, LeafRender, Leafer, LeaferCanvas, LeaferCanvasBase, LeaferData, LeaferEvent, LeaferFilm, LeaferImage, LeaferVideo, Line, LineData, MathHelper, Matrix, MatrixHelper, MoveEvent, MyDragEvent, MyImage, MyPointerEvent, MyTouchEvent, NeedConvertToCanvasCommandMap, OneRadian, PI2, PI_2, Paint, PaintGradient, PaintImage, Path, PathArrow, PathBounds, PathCommandDataHelper, PathCommandMap, PathCommandNodeHelper, PathConvert, PathCorner, PathCreator, PathData, PathDrawer, PathHelper, PathNodeHandleType, PathNumberCommandLengthMap, PathNumberCommandMap, Pen, PenData, Picker, Platform, Plugin, Point, PointHelper, PointerButton, PointerEvent$1 as PointerEvent, Polygon, PolygonData, PropertyEvent, Rect, RectData, RectHelper, RectRender, RenderEvent, Renderer, ResizeEvent, Resource, RotateEvent, Run, Selector, Star, StarData, State, StringNumberMap, SwipeEvent, TaskItem, TaskProcessor, Text, TextConvert, TextData, TouchEvent, Transition, TwoPointBoundsHelper, UI, UIBounds, UICreator, UIData, UIEvent, UIRender, UnitConvert, UnitConvertHelper, WaitHelper, WatchEvent, Watcher, ZoomEvent, affectRenderBoundsType, affectStrokeBoundsType, attr, autoLayoutType, boundsType, canvasPatch, canvasSizeAttrs, createAttr, createDescriptor, cursorType, dataProcessor, dataType, decorateLeafAttr, defineDataProcessor, defineKey, defineLeafAttr, dimType, doBoundsType, doStrokeType, doSurfaceType, effectType, emptyData, eraserType, extraPropertyEventMap, getBoundsData, getDescriptor, getMatrixData, getPointData, hitType, isArray, isData, isEmptyData, isFinite, isNull, isNumber, isObject, isString, isUndefined, layoutProcessor, leaferTransformAttrMap, maskType, naturalBoundsType, opacityType, path, pathInputType, pathType, pen, positionType, registerUI, registerUIEvent, resizeType, rewrite, rewriteAble, rotationType, scaleType, scrollType, sortType, strokeType, surfaceType, tempBounds$2 as tempBounds, tempMatrix$2 as tempMatrix, tempPoint$4 as tempPoint, tryToNumber, useCanvas, useModule, version, visibleType, zoomLayerType };
|