@safe-engine/pixi 8.8.1 → 8.8.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/app.d.ts +1 -0
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +20 -1
- package/dist/core/NodePool.d.ts +1 -1
- package/dist/core/Size.d.ts +0 -1
- package/dist/core/Size.d.ts.map +1 -1
- package/dist/dragonbones/DragonBonesComponent.d.ts +1 -1
- package/dist/dragonbones/DragonBonesComponent.d.ts.map +1 -1
- package/dist/dragonbones/DragonBonesComponent.js +1 -1
- package/dist/dragonbones/DragonBonesSystem.d.ts.map +1 -1
- package/dist/dragonbones/DragonBonesSystem.js +1 -1
- package/dist/dragonbones/db-pixi/PixiArmatureDisplay.d.ts +59 -0
- package/dist/dragonbones/db-pixi/PixiArmatureDisplay.d.ts.map +1 -0
- package/dist/dragonbones/db-pixi/PixiArmatureDisplay.js +180 -0
- package/dist/dragonbones/db-pixi/PixiFactory.d.ts +87 -0
- package/dist/dragonbones/db-pixi/PixiFactory.d.ts.map +1 -0
- package/dist/dragonbones/db-pixi/PixiFactory.js +159 -0
- package/dist/dragonbones/db-pixi/PixiSlot.d.ts +31 -0
- package/dist/dragonbones/db-pixi/PixiSlot.d.ts.map +1 -0
- package/dist/dragonbones/db-pixi/PixiSlot.js +332 -0
- package/dist/dragonbones/db-pixi/PixiTextureAtlasData.d.ts +38 -0
- package/dist/dragonbones/db-pixi/PixiTextureAtlasData.d.ts.map +1 -0
- package/dist/dragonbones/db-pixi/PixiTextureAtlasData.js +85 -0
- package/dist/dragonbones/db-pixi/index.d.ts +5 -0
- package/dist/dragonbones/db-pixi/index.d.ts.map +1 -0
- package/dist/dragonbones/db-pixi/index.js +4 -0
- package/dist/dragonbones/dragonBones/animation/Animation.d.ts +241 -0
- package/dist/dragonbones/dragonBones/animation/Animation.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/animation/Animation.js +692 -0
- package/dist/dragonbones/dragonBones/animation/AnimationState.d.ts +323 -0
- package/dist/dragonbones/dragonBones/animation/AnimationState.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/animation/AnimationState.js +1161 -0
- package/dist/dragonbones/dragonBones/animation/BaseTimelineState.d.ts +100 -0
- package/dist/dragonbones/dragonBones/animation/BaseTimelineState.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/animation/BaseTimelineState.js +479 -0
- package/dist/dragonbones/dragonBones/animation/IAnimatable.d.ts +38 -0
- package/dist/dragonbones/dragonBones/animation/IAnimatable.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/animation/IAnimatable.js +9 -0
- package/dist/dragonbones/dragonBones/animation/TimelineState.d.ts +159 -0
- package/dist/dragonbones/dragonBones/animation/TimelineState.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/animation/TimelineState.js +998 -0
- package/dist/dragonbones/dragonBones/animation/WorldClock.d.ts +74 -0
- package/dist/dragonbones/dragonBones/animation/WorldClock.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/animation/WorldClock.js +162 -0
- package/dist/dragonbones/dragonBones/armature/Armature.d.ts +314 -0
- package/dist/dragonbones/dragonBones/armature/Armature.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/armature/Armature.js +650 -0
- package/dist/dragonbones/dragonBones/armature/Bone.d.ts +123 -0
- package/dist/dragonbones/dragonBones/armature/Bone.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/armature/Bone.js +438 -0
- package/dist/dragonbones/dragonBones/armature/Constraint.d.ts +99 -0
- package/dist/dragonbones/dragonBones/armature/Constraint.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/armature/Constraint.js +672 -0
- package/dist/dragonbones/dragonBones/armature/IArmatureProxy.d.ts +47 -0
- package/dist/dragonbones/dragonBones/armature/IArmatureProxy.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/armature/IArmatureProxy.js +1 -0
- package/dist/dragonbones/dragonBones/armature/Slot.d.ts +357 -0
- package/dist/dragonbones/dragonBones/armature/Slot.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/armature/Slot.js +1009 -0
- package/dist/dragonbones/dragonBones/armature/Surface.d.ts +41 -0
- package/dist/dragonbones/dragonBones/armature/Surface.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/armature/Surface.js +463 -0
- package/dist/dragonbones/dragonBones/armature/TransformObject.d.ts +80 -0
- package/dist/dragonbones/dragonBones/armature/TransformObject.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/armature/TransformObject.js +77 -0
- package/dist/dragonbones/dragonBones/core/BaseObject.d.ts +53 -0
- package/dist/dragonbones/dragonBones/core/BaseObject.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/core/BaseObject.js +130 -0
- package/dist/dragonbones/dragonBones/core/DragonBones.d.ts +236 -0
- package/dist/dragonbones/dragonBones/core/DragonBones.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/core/DragonBones.js +61 -0
- package/dist/dragonbones/dragonBones/event/EventObject.d.ts +143 -0
- package/dist/dragonbones/dragonBones/event/EventObject.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/event/EventObject.js +99 -0
- package/dist/dragonbones/dragonBones/event/IEventDispatcher.d.ts +48 -0
- package/dist/dragonbones/dragonBones/event/IEventDispatcher.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/event/IEventDispatcher.js +1 -0
- package/dist/dragonbones/dragonBones/factory/BaseFactory.d.ts +292 -0
- package/dist/dragonbones/dragonBones/factory/BaseFactory.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/factory/BaseFactory.js +735 -0
- package/dist/dragonbones/dragonBones/geom/ColorTransform.d.ts +17 -0
- package/dist/dragonbones/dragonBones/geom/ColorTransform.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/geom/ColorTransform.js +33 -0
- package/dist/dragonbones/dragonBones/geom/Curve.d.ts +10 -0
- package/dist/dragonbones/dragonBones/geom/Curve.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/geom/Curve.js +26 -0
- package/dist/dragonbones/dragonBones/geom/Matrix.d.ts +105 -0
- package/dist/dragonbones/dragonBones/geom/Matrix.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/geom/Matrix.js +207 -0
- package/dist/dragonbones/dragonBones/geom/Point.d.ts +38 -0
- package/dist/dragonbones/dragonBones/geom/Point.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/geom/Point.js +31 -0
- package/dist/dragonbones/dragonBones/geom/Rectangle.d.ts +53 -0
- package/dist/dragonbones/dragonBones/geom/Rectangle.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/geom/Rectangle.js +37 -0
- package/dist/dragonbones/dragonBones/geom/Transform.d.ts +102 -0
- package/dist/dragonbones/dragonBones/geom/Transform.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/geom/Transform.js +170 -0
- package/dist/dragonbones/dragonBones/index.d.ts +37 -0
- package/dist/dragonbones/dragonBones/index.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/index.js +36 -0
- package/dist/dragonbones/dragonBones/model/AnimationConfig.d.ts +162 -0
- package/dist/dragonbones/dragonBones/model/AnimationConfig.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/model/AnimationConfig.js +81 -0
- package/dist/dragonbones/dragonBones/model/AnimationData.d.ts +174 -0
- package/dist/dragonbones/dragonBones/model/AnimationData.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/model/AnimationData.js +256 -0
- package/dist/dragonbones/dragonBones/model/ArmatureData.d.ts +319 -0
- package/dist/dragonbones/dragonBones/model/ArmatureData.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/model/ArmatureData.js +450 -0
- package/dist/dragonbones/dragonBones/model/BoundingBoxData.d.ts +188 -0
- package/dist/dragonbones/dragonBones/model/BoundingBoxData.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/model/BoundingBoxData.js +500 -0
- package/dist/dragonbones/dragonBones/model/CanvasData.d.ts +15 -0
- package/dist/dragonbones/dragonBones/model/CanvasData.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/model/CanvasData.js +17 -0
- package/dist/dragonbones/dragonBones/model/ConstraintData.d.ts +46 -0
- package/dist/dragonbones/dragonBones/model/ConstraintData.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/model/ConstraintData.js +57 -0
- package/dist/dragonbones/dragonBones/model/DisplayData.d.ts +98 -0
- package/dist/dragonbones/dragonBones/model/DisplayData.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/model/DisplayData.js +174 -0
- package/dist/dragonbones/dragonBones/model/DragonBonesData.d.ts +108 -0
- package/dist/dragonbones/dragonBones/model/DragonBonesData.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/model/DragonBonesData.js +86 -0
- package/dist/dragonbones/dragonBones/model/SkinData.d.ts +40 -0
- package/dist/dragonbones/dragonBones/model/SkinData.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/model/SkinData.js +68 -0
- package/dist/dragonbones/dragonBones/model/TextureAtlasData.d.ts +73 -0
- package/dist/dragonbones/dragonBones/model/TextureAtlasData.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/model/TextureAtlasData.js +102 -0
- package/dist/dragonbones/dragonBones/model/UserData.d.ts +73 -0
- package/dist/dragonbones/dragonBones/model/UserData.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/model/UserData.js +101 -0
- package/dist/dragonbones/dragonBones/parser/BinaryDataParser.d.ts +29 -0
- package/dist/dragonbones/dragonBones/parser/BinaryDataParser.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/parser/BinaryDataParser.js +356 -0
- package/dist/dragonbones/dragonBones/parser/DataParser.d.ts +153 -0
- package/dist/dragonbones/dragonBones/parser/DataParser.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/parser/DataParser.js +283 -0
- package/dist/dragonbones/dragonBones/parser/ObjectDataParser.d.ts +130 -0
- package/dist/dragonbones/dragonBones/parser/ObjectDataParser.d.ts.map +1 -0
- package/dist/dragonbones/dragonBones/parser/ObjectDataParser.js +2098 -0
- package/dist/dragonbones/index.js +1 -1
- package/dist/helper/utils.js +1 -1
- package/package.json +3 -4
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import { OffsetMode } from "../core/DragonBones";
|
|
2
|
+
import { Transform } from "../geom/Transform";
|
|
3
|
+
import { BoneData } from "../model/ArmatureData";
|
|
4
|
+
import { Armature } from "./Armature";
|
|
5
|
+
import { TransformObject } from "./TransformObject";
|
|
6
|
+
/**
|
|
7
|
+
* - Bone is one of the most important logical units in the armature animation system,
|
|
8
|
+
* and is responsible for the realization of translate, rotation, scaling in the animations.
|
|
9
|
+
* A armature can contain multiple bones.
|
|
10
|
+
* @see dragonBones.BoneData
|
|
11
|
+
* @see dragonBones.Armature
|
|
12
|
+
* @see dragonBones.Slot
|
|
13
|
+
* @version DragonBones 3.0
|
|
14
|
+
* @language en_US
|
|
15
|
+
*/
|
|
16
|
+
export declare class Bone extends TransformObject {
|
|
17
|
+
static toString(): string;
|
|
18
|
+
/**
|
|
19
|
+
* - The offset mode.
|
|
20
|
+
* @see #offset
|
|
21
|
+
* @version DragonBones 5.5
|
|
22
|
+
* @language en_US
|
|
23
|
+
*/
|
|
24
|
+
offsetMode: OffsetMode;
|
|
25
|
+
/**
|
|
26
|
+
* @internal
|
|
27
|
+
*/
|
|
28
|
+
readonly animationPose: Transform;
|
|
29
|
+
/**
|
|
30
|
+
* @internal
|
|
31
|
+
*/
|
|
32
|
+
_transformDirty: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* @internal
|
|
35
|
+
*/
|
|
36
|
+
_childrenTransformDirty: boolean;
|
|
37
|
+
protected _localDirty: boolean;
|
|
38
|
+
/**
|
|
39
|
+
* @internal
|
|
40
|
+
*/
|
|
41
|
+
_hasConstraint: boolean;
|
|
42
|
+
protected _visible: boolean;
|
|
43
|
+
protected _cachedFrameIndex: number;
|
|
44
|
+
/**
|
|
45
|
+
* @internal
|
|
46
|
+
*/
|
|
47
|
+
_boneData: BoneData;
|
|
48
|
+
/**
|
|
49
|
+
* @private
|
|
50
|
+
*/
|
|
51
|
+
protected _parent: Bone | null;
|
|
52
|
+
/**
|
|
53
|
+
* @internal
|
|
54
|
+
*/
|
|
55
|
+
_cachedFrameIndices: Array<number> | null;
|
|
56
|
+
protected _onClear(): void;
|
|
57
|
+
protected _updateGlobalTransformMatrix(isCache: boolean): void;
|
|
58
|
+
/**
|
|
59
|
+
* @internal
|
|
60
|
+
*/
|
|
61
|
+
_updateAlpha(): void;
|
|
62
|
+
/**
|
|
63
|
+
* @internal
|
|
64
|
+
*/
|
|
65
|
+
init(boneData: BoneData, armatureValue: Armature): void;
|
|
66
|
+
/**
|
|
67
|
+
* @internal
|
|
68
|
+
*/
|
|
69
|
+
update(cacheFrameIndex: number): void;
|
|
70
|
+
/**
|
|
71
|
+
* @internal
|
|
72
|
+
*/
|
|
73
|
+
updateByConstraint(): void;
|
|
74
|
+
/**
|
|
75
|
+
* - Forces the bone to update the transform in the next frame.
|
|
76
|
+
* When the bone is not animated or its animation state is finished, the bone will not continue to update,
|
|
77
|
+
* and when the skeleton must be updated for some reason, the method needs to be called explicitly.
|
|
78
|
+
* @example
|
|
79
|
+
* <pre>
|
|
80
|
+
* let bone = armature.getBone("arm");
|
|
81
|
+
* bone.offset.scaleX = 2.0;
|
|
82
|
+
* bone.invalidUpdate();
|
|
83
|
+
* </pre>
|
|
84
|
+
* @version DragonBones 3.0
|
|
85
|
+
* @language en_US
|
|
86
|
+
*/
|
|
87
|
+
invalidUpdate(): void;
|
|
88
|
+
/**
|
|
89
|
+
* - Check whether the bone contains a specific bone.
|
|
90
|
+
* @see dragonBones.Bone
|
|
91
|
+
* @version DragonBones 3.0
|
|
92
|
+
* @language en_US
|
|
93
|
+
*/
|
|
94
|
+
contains(value: Bone): boolean;
|
|
95
|
+
/**
|
|
96
|
+
* - The bone data.
|
|
97
|
+
* @version DragonBones 4.5
|
|
98
|
+
* @language en_US
|
|
99
|
+
*/
|
|
100
|
+
get boneData(): BoneData;
|
|
101
|
+
/**
|
|
102
|
+
* - The visible of all slots in the bone.
|
|
103
|
+
* @default true
|
|
104
|
+
* @see dragonBones.Slot#visible
|
|
105
|
+
* @version DragonBones 3.0
|
|
106
|
+
* @language en_US
|
|
107
|
+
*/
|
|
108
|
+
get visible(): boolean;
|
|
109
|
+
set visible(value: boolean);
|
|
110
|
+
/**
|
|
111
|
+
* - The bone name.
|
|
112
|
+
* @version DragonBones 3.0
|
|
113
|
+
* @language en_US
|
|
114
|
+
*/
|
|
115
|
+
get name(): string;
|
|
116
|
+
/**
|
|
117
|
+
* - The parent bone to which it belongs.
|
|
118
|
+
* @version DragonBones 3.0
|
|
119
|
+
* @language en_US
|
|
120
|
+
*/
|
|
121
|
+
get parent(): Bone | null;
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=Bone.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Bone.d.ts","sourceRoot":"","sources":["../../../../src/dragonbones/dragonBones/armature/Bone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAyB,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;;;;;;;;GASG;AACH,qBAAa,IAAK,SAAQ,eAAe;WACzB,QAAQ,IAAI,MAAM;IAGhC;;;;;OAKG;IACI,UAAU,EAAE,UAAU,CAAC;IAC9B;;OAEG;IACH,SAAgB,aAAa,EAAE,SAAS,CAAmB;IAC3D;;OAEG;IACI,eAAe,EAAE,OAAO,CAAC;IAChC;;OAEG;IACI,uBAAuB,EAAE,OAAO,CAAC;IACxC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC;IAC/B;;OAEG;IACI,cAAc,EAAE,OAAO,CAAC;IAC/B,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC5B,SAAS,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACpC;;OAEG;IACI,SAAS,EAAE,QAAQ,CAAC;IAC3B;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,IAAI,GAAG,IAAI,CAAC;IAC/B;;OAEG;IACI,mBAAmB,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAEjD,SAAS,CAAC,QAAQ,IAAI,IAAI;IAiB1B,SAAS,CAAC,4BAA4B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAgN9D;;OAEG;IACI,YAAY;IAOnB;;OAEG;IACI,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,GAAG,IAAI;IAiB9D;;OAEG;IACI,MAAM,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI;IA4F5C;;OAEG;IACI,kBAAkB,IAAI,IAAI;IAcjC;;;;;;;;;;;;OAYG;IACI,aAAa,IAAI,IAAI;IAG5B;;;;;OAKG;IACI,QAAQ,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO;IAYrC;;;;OAIG;IACH,IAAW,QAAQ,IAAI,QAAQ,CAE9B;IACD;;;;;;OAMG;IACH,IAAW,OAAO,IAAI,OAAO,CAE5B;IACD,IAAW,OAAO,CAAC,KAAK,EAAE,OAAO,EAYhC;IACD;;;;OAIG;IACH,IAAW,IAAI,IAAI,MAAM,CAExB;IACD;;;;OAIG;IACH,IAAW,MAAM,IAAI,IAAI,GAAG,IAAI,CAE/B;CACF"}
|
|
@@ -0,0 +1,438 @@
|
|
|
1
|
+
import { DragonBones } from "../core/DragonBones";
|
|
2
|
+
import { Transform } from "../geom/Transform";
|
|
3
|
+
import { TransformObject } from "./TransformObject";
|
|
4
|
+
/**
|
|
5
|
+
* - Bone is one of the most important logical units in the armature animation system,
|
|
6
|
+
* and is responsible for the realization of translate, rotation, scaling in the animations.
|
|
7
|
+
* A armature can contain multiple bones.
|
|
8
|
+
* @see dragonBones.BoneData
|
|
9
|
+
* @see dragonBones.Armature
|
|
10
|
+
* @see dragonBones.Slot
|
|
11
|
+
* @version DragonBones 3.0
|
|
12
|
+
* @language en_US
|
|
13
|
+
*/
|
|
14
|
+
export class Bone extends TransformObject {
|
|
15
|
+
constructor() {
|
|
16
|
+
super(...arguments);
|
|
17
|
+
/**
|
|
18
|
+
* @internal
|
|
19
|
+
*/
|
|
20
|
+
this.animationPose = new Transform();
|
|
21
|
+
}
|
|
22
|
+
static toString() {
|
|
23
|
+
return "[class dragonBones.Bone]";
|
|
24
|
+
}
|
|
25
|
+
_onClear() {
|
|
26
|
+
super._onClear();
|
|
27
|
+
this.offsetMode = 1 /* OffsetMode.Additive */;
|
|
28
|
+
this.animationPose.identity();
|
|
29
|
+
this._transformDirty = false;
|
|
30
|
+
this._childrenTransformDirty = false;
|
|
31
|
+
this._localDirty = true;
|
|
32
|
+
this._hasConstraint = false;
|
|
33
|
+
this._visible = true;
|
|
34
|
+
this._cachedFrameIndex = -1;
|
|
35
|
+
this._boneData = null; //
|
|
36
|
+
this._parent = null; //
|
|
37
|
+
this._cachedFrameIndices = null;
|
|
38
|
+
}
|
|
39
|
+
_updateGlobalTransformMatrix(isCache) {
|
|
40
|
+
// For typescript.
|
|
41
|
+
const boneData = this._boneData;
|
|
42
|
+
const global = this.global;
|
|
43
|
+
const globalTransformMatrix = this.globalTransformMatrix;
|
|
44
|
+
const origin = this.origin;
|
|
45
|
+
const offset = this.offset;
|
|
46
|
+
const animationPose = this.animationPose;
|
|
47
|
+
const parent = this._parent; //
|
|
48
|
+
const flipX = this._armature.flipX;
|
|
49
|
+
const flipY = this._armature.flipY === DragonBones.yDown;
|
|
50
|
+
let inherit = parent !== null;
|
|
51
|
+
let rotation = 0.0;
|
|
52
|
+
if (this.offsetMode === 1 /* OffsetMode.Additive */) {
|
|
53
|
+
if (origin !== null) {
|
|
54
|
+
// global.copyFrom(this.origin).add(this.offset).add(this.animationPose);
|
|
55
|
+
global.x = origin.x + offset.x + animationPose.x;
|
|
56
|
+
global.scaleX = origin.scaleX * offset.scaleX * animationPose.scaleX;
|
|
57
|
+
global.scaleY = origin.scaleY * offset.scaleY * animationPose.scaleY;
|
|
58
|
+
if (DragonBones.yDown) {
|
|
59
|
+
global.y = origin.y + offset.y + animationPose.y;
|
|
60
|
+
global.skew = origin.skew + offset.skew + animationPose.skew;
|
|
61
|
+
global.rotation =
|
|
62
|
+
origin.rotation + offset.rotation + animationPose.rotation;
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
global.y = origin.y - offset.y + animationPose.y;
|
|
66
|
+
global.skew = origin.skew - offset.skew + animationPose.skew;
|
|
67
|
+
global.rotation =
|
|
68
|
+
origin.rotation - offset.rotation + animationPose.rotation;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
global.copyFrom(offset);
|
|
73
|
+
if (!DragonBones.yDown) {
|
|
74
|
+
global.y = -global.y;
|
|
75
|
+
global.skew = -global.skew;
|
|
76
|
+
global.rotation = -global.rotation;
|
|
77
|
+
}
|
|
78
|
+
global.add(animationPose);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
else if (this.offsetMode === 0 /* OffsetMode.None */) {
|
|
82
|
+
if (origin !== null) {
|
|
83
|
+
global.copyFrom(origin).add(animationPose);
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
global.copyFrom(animationPose);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
inherit = false;
|
|
91
|
+
global.copyFrom(offset);
|
|
92
|
+
if (!DragonBones.yDown) {
|
|
93
|
+
global.y = -global.y;
|
|
94
|
+
global.skew = -global.skew;
|
|
95
|
+
global.rotation = -global.rotation;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
if (inherit) {
|
|
99
|
+
const isSurface = parent._boneData.type === 1 /* BoneType.Surface */;
|
|
100
|
+
const surfaceBone = isSurface ? parent._bone : null;
|
|
101
|
+
const parentMatrix = isSurface
|
|
102
|
+
? parent._getGlobalTransformMatrix(global.x, global.y)
|
|
103
|
+
: parent.globalTransformMatrix;
|
|
104
|
+
if (boneData.inheritScale && (!isSurface || surfaceBone !== null)) {
|
|
105
|
+
if (isSurface) {
|
|
106
|
+
if (boneData.inheritRotation) {
|
|
107
|
+
global.rotation += parent.global.rotation;
|
|
108
|
+
}
|
|
109
|
+
surfaceBone.updateGlobalTransform();
|
|
110
|
+
global.scaleX *= surfaceBone.global.scaleX;
|
|
111
|
+
global.scaleY *= surfaceBone.global.scaleY;
|
|
112
|
+
parentMatrix.transformPoint(global.x, global.y, global);
|
|
113
|
+
global.toMatrix(globalTransformMatrix);
|
|
114
|
+
if (boneData.inheritTranslation) {
|
|
115
|
+
global.x = globalTransformMatrix.tx;
|
|
116
|
+
global.y = globalTransformMatrix.ty;
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
globalTransformMatrix.tx = global.x;
|
|
120
|
+
globalTransformMatrix.ty = global.y;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
if (!boneData.inheritRotation) {
|
|
125
|
+
parent.updateGlobalTransform();
|
|
126
|
+
if (flipX && flipY) {
|
|
127
|
+
rotation = global.rotation - (parent.global.rotation + Math.PI);
|
|
128
|
+
}
|
|
129
|
+
else if (flipX) {
|
|
130
|
+
rotation = global.rotation + parent.global.rotation + Math.PI;
|
|
131
|
+
}
|
|
132
|
+
else if (flipY) {
|
|
133
|
+
rotation = global.rotation + parent.global.rotation;
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
rotation = global.rotation - parent.global.rotation;
|
|
137
|
+
}
|
|
138
|
+
global.rotation = rotation;
|
|
139
|
+
}
|
|
140
|
+
global.toMatrix(globalTransformMatrix);
|
|
141
|
+
globalTransformMatrix.concat(parentMatrix);
|
|
142
|
+
if (boneData.inheritTranslation) {
|
|
143
|
+
global.x = globalTransformMatrix.tx;
|
|
144
|
+
global.y = globalTransformMatrix.ty;
|
|
145
|
+
}
|
|
146
|
+
else {
|
|
147
|
+
globalTransformMatrix.tx = global.x;
|
|
148
|
+
globalTransformMatrix.ty = global.y;
|
|
149
|
+
}
|
|
150
|
+
if (isCache) {
|
|
151
|
+
global.fromMatrix(globalTransformMatrix);
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
this._globalDirty = true;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
if (boneData.inheritTranslation) {
|
|
160
|
+
const x = global.x;
|
|
161
|
+
const y = global.y;
|
|
162
|
+
global.x = parentMatrix.a * x + parentMatrix.c * y + parentMatrix.tx;
|
|
163
|
+
global.y = parentMatrix.b * x + parentMatrix.d * y + parentMatrix.ty;
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
if (flipX) {
|
|
167
|
+
global.x = -global.x;
|
|
168
|
+
}
|
|
169
|
+
if (flipY) {
|
|
170
|
+
global.y = -global.y;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
if (boneData.inheritRotation) {
|
|
174
|
+
parent.updateGlobalTransform();
|
|
175
|
+
if (parent.global.scaleX < 0.0) {
|
|
176
|
+
rotation = global.rotation + parent.global.rotation + Math.PI;
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
rotation = global.rotation + parent.global.rotation;
|
|
180
|
+
}
|
|
181
|
+
if (parentMatrix.a * parentMatrix.d - parentMatrix.b * parentMatrix.c <
|
|
182
|
+
0.0) {
|
|
183
|
+
rotation -= global.rotation * 2.0;
|
|
184
|
+
if (flipX !== flipY || boneData.inheritReflection) {
|
|
185
|
+
global.skew += Math.PI;
|
|
186
|
+
}
|
|
187
|
+
if (!DragonBones.yDown) {
|
|
188
|
+
global.skew = -global.skew;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
global.rotation = rotation;
|
|
192
|
+
}
|
|
193
|
+
else if (flipX || flipY) {
|
|
194
|
+
if (flipX && flipY) {
|
|
195
|
+
rotation = global.rotation + Math.PI;
|
|
196
|
+
}
|
|
197
|
+
else {
|
|
198
|
+
if (flipX) {
|
|
199
|
+
rotation = Math.PI - global.rotation;
|
|
200
|
+
}
|
|
201
|
+
else {
|
|
202
|
+
rotation = -global.rotation;
|
|
203
|
+
}
|
|
204
|
+
global.skew += Math.PI;
|
|
205
|
+
}
|
|
206
|
+
global.rotation = rotation;
|
|
207
|
+
}
|
|
208
|
+
global.toMatrix(globalTransformMatrix);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
if (flipX || flipY) {
|
|
213
|
+
if (flipX) {
|
|
214
|
+
global.x = -global.x;
|
|
215
|
+
}
|
|
216
|
+
if (flipY) {
|
|
217
|
+
global.y = -global.y;
|
|
218
|
+
}
|
|
219
|
+
if (flipX && flipY) {
|
|
220
|
+
rotation = global.rotation + Math.PI;
|
|
221
|
+
}
|
|
222
|
+
else {
|
|
223
|
+
if (flipX) {
|
|
224
|
+
rotation = Math.PI - global.rotation;
|
|
225
|
+
}
|
|
226
|
+
else {
|
|
227
|
+
rotation = -global.rotation;
|
|
228
|
+
}
|
|
229
|
+
global.skew += Math.PI;
|
|
230
|
+
}
|
|
231
|
+
global.rotation = rotation;
|
|
232
|
+
}
|
|
233
|
+
global.toMatrix(globalTransformMatrix);
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* @internal
|
|
238
|
+
*/
|
|
239
|
+
_updateAlpha() {
|
|
240
|
+
if (this._parent !== null) {
|
|
241
|
+
this._globalAlpha = this._alpha * this._parent._globalAlpha;
|
|
242
|
+
}
|
|
243
|
+
else {
|
|
244
|
+
this._globalAlpha = this._alpha * this._armature._globalAlpha;
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* @internal
|
|
249
|
+
*/
|
|
250
|
+
init(boneData, armatureValue) {
|
|
251
|
+
if (this._boneData !== null) {
|
|
252
|
+
return;
|
|
253
|
+
}
|
|
254
|
+
this._boneData = boneData;
|
|
255
|
+
this._armature = armatureValue;
|
|
256
|
+
this._alpha = this._boneData.alpha;
|
|
257
|
+
if (this._boneData.parent !== null) {
|
|
258
|
+
this._parent = this._armature.getBone(this._boneData.parent.name);
|
|
259
|
+
}
|
|
260
|
+
this._armature._addBone(this);
|
|
261
|
+
//
|
|
262
|
+
this.origin = this._boneData.transform;
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* @internal
|
|
266
|
+
*/
|
|
267
|
+
update(cacheFrameIndex) {
|
|
268
|
+
if (cacheFrameIndex >= 0 && this._cachedFrameIndices !== null) {
|
|
269
|
+
const cachedFrameIndex = this._cachedFrameIndices[cacheFrameIndex];
|
|
270
|
+
if (cachedFrameIndex >= 0 &&
|
|
271
|
+
this._cachedFrameIndex === cachedFrameIndex) {
|
|
272
|
+
// Same cache.
|
|
273
|
+
this._transformDirty = false;
|
|
274
|
+
}
|
|
275
|
+
else if (cachedFrameIndex >= 0) {
|
|
276
|
+
// Has been Cached.
|
|
277
|
+
this._transformDirty = true;
|
|
278
|
+
this._cachedFrameIndex = cachedFrameIndex;
|
|
279
|
+
}
|
|
280
|
+
else {
|
|
281
|
+
if (this._hasConstraint) {
|
|
282
|
+
// Update constraints.
|
|
283
|
+
for (const constraint of this._armature._constraints) {
|
|
284
|
+
if (constraint._root === this) {
|
|
285
|
+
constraint.update();
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
if (this._transformDirty ||
|
|
290
|
+
(this._parent !== null && this._parent._childrenTransformDirty)) {
|
|
291
|
+
// Dirty.
|
|
292
|
+
this._transformDirty = true;
|
|
293
|
+
this._cachedFrameIndex = -1;
|
|
294
|
+
}
|
|
295
|
+
else if (this._cachedFrameIndex >= 0) {
|
|
296
|
+
// Same cache, but not set index yet.
|
|
297
|
+
this._transformDirty = false;
|
|
298
|
+
this._cachedFrameIndices[cacheFrameIndex] = this._cachedFrameIndex;
|
|
299
|
+
}
|
|
300
|
+
else {
|
|
301
|
+
// Dirty.
|
|
302
|
+
this._transformDirty = true;
|
|
303
|
+
this._cachedFrameIndex = -1;
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
else {
|
|
308
|
+
if (this._hasConstraint) {
|
|
309
|
+
// Update constraints.
|
|
310
|
+
for (const constraint of this._armature._constraints) {
|
|
311
|
+
if (constraint._root === this) {
|
|
312
|
+
constraint.update();
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
if (this._transformDirty ||
|
|
317
|
+
(this._parent !== null && this._parent._childrenTransformDirty)) {
|
|
318
|
+
// Dirty.
|
|
319
|
+
cacheFrameIndex = -1;
|
|
320
|
+
this._transformDirty = true;
|
|
321
|
+
this._cachedFrameIndex = -1;
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
if (this._transformDirty) {
|
|
325
|
+
this._transformDirty = false;
|
|
326
|
+
this._childrenTransformDirty = true;
|
|
327
|
+
//
|
|
328
|
+
if (this._cachedFrameIndex < 0) {
|
|
329
|
+
const isCache = cacheFrameIndex >= 0;
|
|
330
|
+
if (this._localDirty) {
|
|
331
|
+
this._updateGlobalTransformMatrix(isCache);
|
|
332
|
+
}
|
|
333
|
+
if (isCache && this._cachedFrameIndices !== null) {
|
|
334
|
+
this._cachedFrameIndex = this._cachedFrameIndices[cacheFrameIndex] =
|
|
335
|
+
this._armature._armatureData.setCacheFrame(this.globalTransformMatrix, this.global);
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
else {
|
|
339
|
+
this._armature._armatureData.getCacheFrame(this.globalTransformMatrix, this.global, this._cachedFrameIndex);
|
|
340
|
+
}
|
|
341
|
+
//
|
|
342
|
+
}
|
|
343
|
+
else if (this._childrenTransformDirty) {
|
|
344
|
+
this._childrenTransformDirty = false;
|
|
345
|
+
}
|
|
346
|
+
this._localDirty = true;
|
|
347
|
+
}
|
|
348
|
+
/**
|
|
349
|
+
* @internal
|
|
350
|
+
*/
|
|
351
|
+
updateByConstraint() {
|
|
352
|
+
if (this._localDirty) {
|
|
353
|
+
this._localDirty = false;
|
|
354
|
+
if (this._transformDirty ||
|
|
355
|
+
(this._parent !== null && this._parent._childrenTransformDirty)) {
|
|
356
|
+
this._updateGlobalTransformMatrix(true);
|
|
357
|
+
}
|
|
358
|
+
this._transformDirty = true;
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
/**
|
|
362
|
+
* - Forces the bone to update the transform in the next frame.
|
|
363
|
+
* When the bone is not animated or its animation state is finished, the bone will not continue to update,
|
|
364
|
+
* and when the skeleton must be updated for some reason, the method needs to be called explicitly.
|
|
365
|
+
* @example
|
|
366
|
+
* <pre>
|
|
367
|
+
* let bone = armature.getBone("arm");
|
|
368
|
+
* bone.offset.scaleX = 2.0;
|
|
369
|
+
* bone.invalidUpdate();
|
|
370
|
+
* </pre>
|
|
371
|
+
* @version DragonBones 3.0
|
|
372
|
+
* @language en_US
|
|
373
|
+
*/
|
|
374
|
+
invalidUpdate() {
|
|
375
|
+
this._transformDirty = true;
|
|
376
|
+
}
|
|
377
|
+
/**
|
|
378
|
+
* - Check whether the bone contains a specific bone.
|
|
379
|
+
* @see dragonBones.Bone
|
|
380
|
+
* @version DragonBones 3.0
|
|
381
|
+
* @language en_US
|
|
382
|
+
*/
|
|
383
|
+
contains(value) {
|
|
384
|
+
if (value === this) {
|
|
385
|
+
return false;
|
|
386
|
+
}
|
|
387
|
+
let ancestor = value;
|
|
388
|
+
while (ancestor !== this && ancestor !== null) {
|
|
389
|
+
ancestor = ancestor.parent;
|
|
390
|
+
}
|
|
391
|
+
return ancestor === this;
|
|
392
|
+
}
|
|
393
|
+
/**
|
|
394
|
+
* - The bone data.
|
|
395
|
+
* @version DragonBones 4.5
|
|
396
|
+
* @language en_US
|
|
397
|
+
*/
|
|
398
|
+
get boneData() {
|
|
399
|
+
return this._boneData;
|
|
400
|
+
}
|
|
401
|
+
/**
|
|
402
|
+
* - The visible of all slots in the bone.
|
|
403
|
+
* @default true
|
|
404
|
+
* @see dragonBones.Slot#visible
|
|
405
|
+
* @version DragonBones 3.0
|
|
406
|
+
* @language en_US
|
|
407
|
+
*/
|
|
408
|
+
get visible() {
|
|
409
|
+
return this._visible;
|
|
410
|
+
}
|
|
411
|
+
set visible(value) {
|
|
412
|
+
if (this._visible === value) {
|
|
413
|
+
return;
|
|
414
|
+
}
|
|
415
|
+
this._visible = value;
|
|
416
|
+
for (const slot of this._armature.getSlots()) {
|
|
417
|
+
if (slot.parent === this) {
|
|
418
|
+
slot._updateVisible();
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
/**
|
|
423
|
+
* - The bone name.
|
|
424
|
+
* @version DragonBones 3.0
|
|
425
|
+
* @language en_US
|
|
426
|
+
*/
|
|
427
|
+
get name() {
|
|
428
|
+
return this._boneData.name;
|
|
429
|
+
}
|
|
430
|
+
/**
|
|
431
|
+
* - The parent bone to which it belongs.
|
|
432
|
+
* @version DragonBones 3.0
|
|
433
|
+
* @language en_US
|
|
434
|
+
*/
|
|
435
|
+
get parent() {
|
|
436
|
+
return this._parent;
|
|
437
|
+
}
|
|
438
|
+
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { BaseObject } from "../core/BaseObject";
|
|
2
|
+
import { Matrix } from "../geom/Matrix";
|
|
3
|
+
import { Point } from "../geom/Point";
|
|
4
|
+
import { Transform } from "../geom/Transform";
|
|
5
|
+
import { ConstraintData } from "../model/ConstraintData";
|
|
6
|
+
import { GeometryData, PathDisplayData } from "../model/DisplayData";
|
|
7
|
+
import { Armature } from "./Armature";
|
|
8
|
+
import { Bone } from "./Bone";
|
|
9
|
+
/**
|
|
10
|
+
* - The base class of the constraint.
|
|
11
|
+
* A constraint is used to control the movement of a bone or a slot.
|
|
12
|
+
* @internal
|
|
13
|
+
*/
|
|
14
|
+
export declare abstract class Constraint extends BaseObject {
|
|
15
|
+
protected static readonly _helpMatrix: Matrix;
|
|
16
|
+
protected static readonly _helpTransform: Transform;
|
|
17
|
+
protected static readonly _helpPoint: Point;
|
|
18
|
+
/**
|
|
19
|
+
* - For timeline state.
|
|
20
|
+
* @internal
|
|
21
|
+
*/
|
|
22
|
+
_constraintData: ConstraintData;
|
|
23
|
+
protected _armature: Armature;
|
|
24
|
+
/**
|
|
25
|
+
* - For sort bones.
|
|
26
|
+
* @internal
|
|
27
|
+
*/
|
|
28
|
+
_target: Bone;
|
|
29
|
+
/**
|
|
30
|
+
* - For sort bones.
|
|
31
|
+
* @internal
|
|
32
|
+
*/
|
|
33
|
+
_root: Bone;
|
|
34
|
+
protected _bone: Bone | null;
|
|
35
|
+
protected _onClear(): void;
|
|
36
|
+
abstract init(constraintData: ConstraintData, armature: Armature): void;
|
|
37
|
+
abstract update(): void;
|
|
38
|
+
abstract invalidUpdate(): void;
|
|
39
|
+
get name(): string;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* - The inverse kinematics constraint.
|
|
43
|
+
* @internal
|
|
44
|
+
*/
|
|
45
|
+
export declare class IKConstraint extends Constraint {
|
|
46
|
+
static toString(): string;
|
|
47
|
+
private _scaleEnabled;
|
|
48
|
+
/**
|
|
49
|
+
* - For timeline state.
|
|
50
|
+
* @internal
|
|
51
|
+
*/
|
|
52
|
+
_bendPositive: boolean;
|
|
53
|
+
/**
|
|
54
|
+
* - For timeline state.
|
|
55
|
+
* @internal
|
|
56
|
+
*/
|
|
57
|
+
_weight: number;
|
|
58
|
+
protected _onClear(): void;
|
|
59
|
+
private _computeA;
|
|
60
|
+
private _computeB;
|
|
61
|
+
init(constraintData: ConstraintData, armature: Armature): void;
|
|
62
|
+
/**
|
|
63
|
+
* - Update the constraint.
|
|
64
|
+
*/
|
|
65
|
+
update(): void;
|
|
66
|
+
invalidUpdate(): void;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* - The path constraint.
|
|
70
|
+
* The path constraint is used to control the movement of a bone or a slot along a path.
|
|
71
|
+
* @internal
|
|
72
|
+
*/
|
|
73
|
+
export declare class PathConstraint extends Constraint {
|
|
74
|
+
dirty: boolean;
|
|
75
|
+
pathOffset: number;
|
|
76
|
+
position: number;
|
|
77
|
+
spacing: number;
|
|
78
|
+
rotateOffset: number;
|
|
79
|
+
rotateMix: number;
|
|
80
|
+
translateMix: number;
|
|
81
|
+
private _pathSlot;
|
|
82
|
+
private _bones;
|
|
83
|
+
private _spaces;
|
|
84
|
+
private _positions;
|
|
85
|
+
private _curves;
|
|
86
|
+
private _boneLengths;
|
|
87
|
+
private _pathGlobalVertices;
|
|
88
|
+
private _segments;
|
|
89
|
+
static toString(): string;
|
|
90
|
+
protected _onClear(): void;
|
|
91
|
+
protected _updatePathVertices(verticesData: GeometryData): void;
|
|
92
|
+
protected _computeVertices(start: number, count: number, offset: number, out: Array<number>): void;
|
|
93
|
+
protected _computeBezierCurve(pathDisplayDta: PathDisplayData, spaceCount: number, tangents: boolean, percentPosition: boolean, percentSpacing: boolean): void;
|
|
94
|
+
private addCurvePosition;
|
|
95
|
+
init(constraintData: ConstraintData, armature: Armature): void;
|
|
96
|
+
update(): void;
|
|
97
|
+
invalidUpdate(): void;
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=Constraint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Constraint.d.ts","sourceRoot":"","sources":["../../../../src/dragonbones/dragonBones/armature/Constraint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAwC,MAAM,yBAAyB,CAAC;AAC/F,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAG9B;;;;GAIG;AACH,8BAAsB,UAAW,SAAQ,UAAU;IAC/C,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAgB;IAC7D,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE,SAAS,CAAmB;IACtE,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAe;IAC1D;;;OAGG;IACI,eAAe,EAAE,cAAc,CAAC;IACvC,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC;IAC9B;;;OAGG;IACI,OAAO,EAAE,IAAI,CAAC;IACrB;;;OAGG;IACI,KAAK,EAAE,IAAI,CAAC;IACnB,SAAS,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC;IAE7B,SAAS,CAAC,QAAQ,IAAI,IAAI;aAOV,IAAI,CAAC,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;aAC9D,MAAM,IAAI,IAAI;aACd,aAAa,IAAI,IAAI;IAErC,IAAW,IAAI,IAAI,MAAM,CAExB;CACJ;AACD;;;GAGG;AACH,qBAAa,YAAa,SAAQ,UAAU;WAC1B,QAAQ,IAAI,MAAM;IAIhC,OAAO,CAAC,aAAa,CAAU;IAC/B;;;OAGG;IACI,aAAa,EAAE,OAAO,CAAC;IAC9B;;;OAGG;IACI,OAAO,EAAE,MAAM,CAAC;IAEvB,SAAS,CAAC,QAAQ,IAAI,IAAI;IAS1B,OAAO,CAAC,SAAS;IAcjB,OAAO,CAAC,SAAS;IA8EV,IAAI,CAAC,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAqBrE;;OAEG;IACI,MAAM,IAAI,IAAI;IAYd,aAAa,IAAI,IAAI;CAO/B;AAED;;;;GAIG;AACH,qBAAa,cAAe,SAAQ,UAAU;IAEnC,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IAE5B,OAAO,CAAC,SAAS,CAAO;IACxB,OAAO,CAAC,MAAM,CAAmB;IAEjC,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,YAAY,CAAqB;IAEzC,OAAO,CAAC,mBAAmB,CAAqB;IAChD,OAAO,CAAC,SAAS,CAAuB;WAE1B,QAAQ,IAAI,MAAM;IAIhC,SAAS,CAAC,QAAQ,IAAI,IAAI;IAuB1B,SAAS,CAAC,mBAAmB,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI;IAuE/D,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI;IAQlG,SAAS,CAAC,mBAAmB,CAAC,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,GAAG,IAAI;IAkP9J,OAAO,CAAC,gBAAgB;IAqCjB,IAAI,CAAC,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAkC9D,MAAM,IAAI,IAAI;IAiKd,aAAa,IAAI,IAAI;CAG/B"}
|