@leafer-game/miniapp 2.2.11 → 2.3.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.
@@ -431,7 +431,7 @@ function getMatrixData() {
431
431
 
432
432
  const {sin: sin$6, cos: cos$6, acos: acos, sqrt: sqrt$5} = Math;
433
433
 
434
- const {float: float$5} = MathHelper;
434
+ const {float: float$6} = MathHelper;
435
435
 
436
436
  const tempPoint$7 = {};
437
437
 
@@ -682,12 +682,12 @@ const MatrixHelper = {
682
682
  const cosR = c / scaleY;
683
683
  rotation = PI_2 - (d > 0 ? acos(-cosR) : -acos(cosR));
684
684
  }
685
- const cosR = float$5(cos$6(rotation));
685
+ const cosR = float$6(cos$6(rotation));
686
686
  const sinR = sin$6(rotation);
687
- scaleX = float$5(scaleX), scaleY = float$5(scaleY);
688
- skewX = cosR ? float$5((c / scaleY + sinR) / cosR / OneRadian, 9) : 0;
689
- skewY = cosR ? float$5((b / scaleX - sinR) / cosR / OneRadian, 9) : 0;
690
- rotation = float$5(rotation / OneRadian);
687
+ scaleX = float$6(scaleX), scaleY = float$6(scaleY);
688
+ skewX = cosR ? float$6((c / scaleY + sinR) / cosR / OneRadian, 9) : 0;
689
+ skewY = cosR ? float$6((b / scaleX - sinR) / cosR / OneRadian, 9) : 0;
690
+ rotation = float$6(rotation / OneRadian);
691
691
  } else {
692
692
  scaleX = a;
693
693
  scaleY = d;
@@ -731,7 +731,7 @@ const MatrixHelper = {
731
731
 
732
732
  const M$7 = MatrixHelper;
733
733
 
734
- const {float: float$4} = MathHelper;
734
+ const {float: float$5} = MathHelper;
735
735
 
736
736
  const {toInnerPoint: toInnerPoint$2, toOuterPoint: toOuterPoint$3} = MatrixHelper;
737
737
 
@@ -877,7 +877,7 @@ const PointHelper = {
877
877
  return points;
878
878
  },
879
879
  isSame(t, point, quick) {
880
- return quick ? t.x === point.x && t.y === point.y : float$4(t.x) === float$4(point.x) && float$4(t.y) === float$4(point.y);
880
+ return quick ? t.x === point.x && t.y === point.y : float$5(t.x) === float$5(point.x) && float$5(t.y) === float$5(point.y);
881
881
  },
882
882
  reset(t) {
883
883
  t.x = t.y = 0;
@@ -1233,7 +1233,7 @@ const {tempPointBounds: tempPointBounds$1, setPoint: setPoint$2, addPoint: addPo
1233
1233
 
1234
1234
  const {toOuterPoint: toOuterPoint$2} = MatrixHelper;
1235
1235
 
1236
- const {float: float$3, fourNumber: fourNumber$1} = MathHelper;
1236
+ const {float: float$4, fourNumber: fourNumber$1} = MathHelper;
1237
1237
 
1238
1238
  const {floor: floor$2, ceil: ceil$2} = Math;
1239
1239
 
@@ -1408,10 +1408,10 @@ const BoundsHelper = {
1408
1408
  }
1409
1409
  },
1410
1410
  float(t, maxLength) {
1411
- t.x = float$3(t.x, maxLength);
1412
- t.y = float$3(t.y, maxLength);
1413
- t.width = float$3(t.width, maxLength);
1414
- t.height = float$3(t.height, maxLength);
1411
+ t.x = float$4(t.x, maxLength);
1412
+ t.y = float$4(t.y, maxLength);
1413
+ t.width = float$4(t.width, maxLength);
1414
+ t.height = float$4(t.height, maxLength);
1415
1415
  },
1416
1416
  add(t, bounds, isPoint) {
1417
1417
  right$1 = t.x + t.width;
@@ -3742,6 +3742,8 @@ const {getCenterX: getCenterX, getCenterY: getCenterY} = PointHelper;
3742
3742
 
3743
3743
  const {arcTo: arcTo} = PathCommandDataHelper;
3744
3744
 
3745
+ const {float: float$3} = MathHelper;
3746
+
3745
3747
  const PathCorner = {
3746
3748
  smooth(data, cornerRadius, _cornerSmoothing) {
3747
3749
  let command, lastCommand, commandLen, startXIndex, startYIndex, smoothLen;
@@ -3782,7 +3784,8 @@ const PathCorner = {
3782
3784
  break;
3783
3785
 
3784
3786
  case Z$1:
3785
- arcTo(smooth, x, y, startX, startY, cornerRadius, lastX, lastY, three);
3787
+ if (float$3(x) === float$3(startX) && float$3(y) === float$3(startY)) x = lastX,
3788
+ y = lastY; else arcTo(smooth, x, y, startX, startY, cornerRadius, lastX, lastY, three);
3786
3789
  break;
3787
3790
 
3788
3791
  default:
@@ -5022,10 +5025,11 @@ const LeafHelper = {
5022
5025
  hasOffset(t) {
5023
5026
  return t.offsetX || t.offsetY;
5024
5027
  },
5025
- hasParent(p, parent) {
5028
+ hasParent(p, parent, minLevel) {
5026
5029
  if (!parent) return false;
5027
5030
  while (p) {
5028
5031
  if (parent === p) return true;
5032
+ if (minLevel && p.__level === minLevel) return;
5029
5033
  p = p.parent;
5030
5034
  }
5031
5035
  },
@@ -5043,6 +5047,10 @@ const LeafHelper = {
5043
5047
  }
5044
5048
  };
5045
5049
 
5050
+ function isTrackChanges(leafer) {
5051
+ return leafer && leafer.config.trackChanges;
5052
+ }
5053
+
5046
5054
  const L$1 = LeafHelper;
5047
5055
 
5048
5056
  const {updateAllMatrix: updateAllMatrix$4, updateMatrix: updateMatrix$2, updateAllWorldOpacity: updateAllWorldOpacity, updateAllChange: updateAllChange$1, updateChange: updateChange} = L$1;
@@ -5097,6 +5105,16 @@ const BranchHelper = {
5097
5105
  sort(a, b) {
5098
5106
  return a.__.zIndex === b.__.zIndex ? a.__tempNumber - b.__tempNumber : a.__.zIndex - b.__.zIndex;
5099
5107
  },
5108
+ zIndex(branch, child, index) {
5109
+ const {children: children} = branch, before = children[index - 1], after = children[index];
5110
+ if (before && after) {
5111
+ if (child.zIndex < before.zIndex || child.zIndex > after.zIndex) child.zIndex = (before.zIndex + after.zIndex) / 2;
5112
+ } else if (before) {
5113
+ if (child.zIndex < before.zIndex) child.zIndex = before.zIndex + 1;
5114
+ } else if (after) {
5115
+ if (child.zIndex > after.zIndex) child.zIndex = after.zIndex - 1;
5116
+ }
5117
+ },
5100
5118
  pushAllChildBranch(branch, leafList) {
5101
5119
  branch.__tempNumber = 1;
5102
5120
  if (branch.__.__childBranchNumber) {
@@ -6063,7 +6081,7 @@ const LeafDataProxy = {
6063
6081
  },
6064
6082
  emitPropertyEvent(type, name, oldValue, newValue) {
6065
6083
  const {leafer: leafer} = this;
6066
- if (leafer.config.trackChanges || leafer.zoomLayer === this) {
6084
+ if (isTrackChanges(leafer) || leafer.zoomLayer === this) {
6067
6085
  const event = new PropertyEvent(type, this, name, oldValue, newValue);
6068
6086
  this.isLeafer || this.hasEvent(type) && this.emitEvent(event);
6069
6087
  leafer.emitEvent(event);
@@ -6518,7 +6536,6 @@ let Leaf = class Leaf {
6518
6536
  }
6519
6537
  }
6520
6538
  __bindFrame(frame) {
6521
- if (this.isFrame && frame !== null) frame = this;
6522
6539
  this.frame = frame;
6523
6540
  if (this.isBranch) {
6524
6541
  const {children: children} = this;
@@ -6551,6 +6568,7 @@ let Leaf = class Leaf {
6551
6568
  this.__layout.update();
6552
6569
  }
6553
6570
  forceUpdate(typeOrAttrName) {
6571
+ if (this.__hasComplex) LeafHelper.updateComplex(this);
6554
6572
  let quick;
6555
6573
  if (!typeOrAttrName || typeOrAttrName === "bounds") doBoundsType(this), quick = true; else if (typeOrAttrName === "surface") doSurfaceType(this),
6556
6574
  quick = true; else if (typeOrAttrName === "stroke") doStrokeType(this), quick = true;
@@ -6829,14 +6847,17 @@ let Branch = class Branch extends Leaf {
6829
6847
  }
6830
6848
  if (child.parent) child.parent.remove(child);
6831
6849
  child.parent = this;
6832
- noIndex ? this.children.push(child) : this.children.splice(index, 0, child);
6850
+ if (noIndex) this.children.push(child); else {
6851
+ BranchHelper.zIndex(this, child, index);
6852
+ this.children.splice(index, 0, child);
6853
+ }
6833
6854
  if (child.isBranch) this.__.__childBranchNumber = (this.__.__childBranchNumber || 0) + 1;
6834
6855
  const childLayout = child.__layout;
6835
6856
  childLayout.boxChanged || childLayout.boxChange();
6836
6857
  childLayout.matrixChanged || childLayout.matrixChange();
6837
6858
  if (child.__parentChange) child.__parentChange.forEach(item => item(this, child));
6838
6859
  if (child.__bubbleMap) child.__emitLifeEvent(ChildEvent.ADD);
6839
- if (this.isFrame) child.__bindFrame(this);
6860
+ if (this.frame) child.__bindFrame(this.frame);
6840
6861
  if (this.leafer) {
6841
6862
  child.__bindLeafer(this.leafer);
6842
6863
  if (this.leafer.created) this.__emitChildEvent(ChildEvent.ADD, child);
@@ -6896,11 +6917,11 @@ let Branch = class Branch extends Leaf {
6896
6917
  if (this.leafer.hitCanvasManager) this.leafer.hitCanvasManager.clear();
6897
6918
  }
6898
6919
  }
6899
- if (this.isFrame) child.__bindFrame(null);
6920
+ if (child.frame && !child.isFrame) child.__bindFrame(null);
6900
6921
  }
6901
6922
  __emitChildEvent(type, child) {
6902
6923
  const {leafer: leafer} = this;
6903
- if (leafer.config.trackChanges || leafer.zoomLayer === this) {
6924
+ if (isTrackChanges(leafer) || leafer.zoomLayer === this) {
6904
6925
  const event = new ChildEvent(type, child, this);
6905
6926
  if (this.hasEvent(type) && !this.isLeafer) this.emitEvent(event);
6906
6927
  leafer.emitEvent(event);
@@ -7057,7 +7078,13 @@ class LeafLevelList {
7057
7078
  }
7058
7079
  }
7059
7080
 
7060
- const version = "2.2.11";
7081
+ const version = "2.3.1";
7082
+
7083
+ if (typeof globalThis !== "undefined") {
7084
+ const globalLeafer = globalThis.Leafer || (globalThis.Leafer = {});
7085
+ globalLeafer.version = version;
7086
+ globalLeafer.Plugin = Plugin;
7087
+ }
7061
7088
 
7062
7089
  class LeaferCanvas extends LeaferCanvasBase {
7063
7090
  get allowBackgroundColor() {
@@ -8168,6 +8195,17 @@ function zoomLayerType() {
8168
8195
  };
8169
8196
  }
8170
8197
 
8198
+ function frameType() {
8199
+ return (target, key) => {
8200
+ defineKey(target, key, {
8201
+ set(_value) {},
8202
+ get() {
8203
+ return this;
8204
+ }
8205
+ });
8206
+ };
8207
+ }
8208
+
8171
8209
  function createAttr(defaultValue) {
8172
8210
  return (target, key) => {
8173
8211
  defineKey(target, key, createDescriptor(key, defaultValue));
@@ -9571,6 +9609,8 @@ let Frame = class Frame extends Box {
9571
9609
  }
9572
9610
  };
9573
9611
 
9612
+ __decorate([ frameType() ], Frame.prototype, "frame", void 0);
9613
+
9574
9614
  __decorate([ dataProcessor(FrameData) ], Frame.prototype, "__", void 0);
9575
9615
 
9576
9616
  __decorate([ surfaceType("#FFFFFF") ], Frame.prototype, "fill", void 0);
@@ -14987,15 +15027,21 @@ function number(from, to, t, roundValue) {
14987
15027
  return roundValue ? round(value) : value;
14988
15028
  }
14989
15029
 
14990
- function color(from, to, t) {
14991
- from = ColorConvert.object(from), to = ColorConvert.object(to);
15030
+ function color(fromColor, toColor, t) {
15031
+ let from = ColorConvert.object(fromColor), to = ColorConvert.object(toColor);
15032
+ if (!fromColor) from = Object.assign(Object.assign({}, to), {
15033
+ a: 0
15034
+ });
15035
+ if (!toColor) to = Object.assign(Object.assign({}, from), {
15036
+ a: 0
15037
+ });
14992
15038
  const rgb = number(from.r, to.r, t, 1) + "," + number(from.g, to.g, t, 1) + "," + number(from.b, to.b, t, 1);
14993
15039
  const a = number(from.a, to.a, t);
14994
15040
  return a === 1 ? "rgb(" + rgb + ")" : "rgba(" + rgb + "," + a + ")";
14995
15041
  }
14996
15042
 
14997
15043
  function paint(from, to, t) {
14998
- return isString(from) && isString(to) ? color(from, to, t) : to;
15044
+ return (isString(from) || !from) && (isString(to) || !to) ? color(from, to, t) : to;
14999
15045
  }
15000
15046
 
15001
15047
  function shadow(from, to, t) {
@@ -15659,4 +15705,4 @@ LeafHelper.cacheId = function(t) {
15659
15705
  if (leafer.cacheInnerId) leafer.app.innerIdMap[t.innerId] = t;
15660
15706
  };
15661
15707
 
15662
- export { AlignHelper, Animate, AnimateEasing, AnimateEvent, AnimateList, 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, Dragger, DropEvent, Effect, Ellipse, EllipseData, EllipseHelper, Event, EventCreator, Eventer, Export, FileHelper, Filter, Finder, FourNumberHelper, Frame, FrameData, Group, GroupData, HighBezierHelper, HighCurveHelper, HitCanvasManager, Image, ImageData, ImageEvent, ImageManager, IncrementId, Interaction, InteractionBase, InteractionHelper, KeyEvent, Keyboard, LayoutEvent, Layouter, LayouterHelper, 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, Polygon, PolygonData, PropertyEvent, Rect, RectData, RectHelper, RectRender, RenderEvent, Renderer, ResizeEvent, Resource, Robot, RobotData, 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, motionPathType, naturalBoundsType, opacityType, path, pathInputType, pathType, pen, positionType, registerPointsCurve, registerUI, registerUIEvent, resizeType, rewrite, rewriteAble, rotationType, scaleType, scrollType, sortType, stateStyleType, stateType, strokeType, surfaceType, tempBounds$2 as tempBounds, tempMatrix$2 as tempMatrix, tempPoint$6 as tempPoint, tryToNumber, useCanvas, useModule, version, visibleType, zoomLayerType };
15708
+ export { AlignHelper, Animate, AnimateEasing, AnimateEvent, AnimateList, 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, Dragger, DropEvent, Effect, Ellipse, EllipseData, EllipseHelper, Event, EventCreator, Eventer, Export, FileHelper, Filter, Finder, FourNumberHelper, Frame, FrameData, Group, GroupData, HighBezierHelper, HighCurveHelper, HitCanvasManager, Image, ImageData, ImageEvent, ImageManager, IncrementId, Interaction, InteractionBase, InteractionHelper, KeyEvent, Keyboard, LayoutEvent, Layouter, LayouterHelper, 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, Polygon, PolygonData, PropertyEvent, Rect, RectData, RectHelper, RectRender, RenderEvent, Renderer, ResizeEvent, Resource, Robot, RobotData, 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, frameType, getBoundsData, getDescriptor, getMatrixData, getPointData, hitType, isArray, isData, isEmptyData, isFinite, isNull, isNumber, isObject, isString, isTrackChanges, isUndefined, layoutProcessor, leaferTransformAttrMap, maskType, motionPathType, naturalBoundsType, opacityType, path, pathInputType, pathType, pen, positionType, registerPointsCurve, registerUI, registerUIEvent, resizeType, rewrite, rewriteAble, rotationType, scaleType, scrollType, sortType, stateStyleType, stateType, strokeType, surfaceType, tempBounds$2 as tempBounds, tempMatrix$2 as tempMatrix, tempPoint$6 as tempPoint, tryToNumber, useCanvas, useModule, version, visibleType, zoomLayerType };