@meta2d/core 1.0.55 → 1.0.57

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.
Files changed (223) hide show
  1. package/index.d.ts +9 -9
  2. package/index.js +9 -9
  3. package/package.json +38 -39
  4. package/src/canvas/canvas.d.ts +456 -456
  5. package/src/canvas/canvas.js +7583 -8186
  6. package/src/canvas/canvas.js.map +1 -1
  7. package/src/canvas/canvasImage.d.ts +27 -28
  8. package/src/canvas/canvasImage.js +440 -502
  9. package/src/canvas/canvasImage.js.map +1 -1
  10. package/src/canvas/canvasTemplate.d.ts +18 -19
  11. package/src/canvas/canvasTemplate.js +208 -228
  12. package/src/canvas/canvasTemplate.js.map +1 -1
  13. package/src/canvas/index.d.ts +2 -2
  14. package/src/canvas/index.js +2 -2
  15. package/src/canvas/magnifierCanvas.d.ts +19 -20
  16. package/src/canvas/magnifierCanvas.js +101 -100
  17. package/src/canvas/magnifierCanvas.js.map +1 -1
  18. package/src/canvas/offscreen.d.ts +1 -2
  19. package/src/canvas/offscreen.js +13 -13
  20. package/src/canvas/offscreen.js.map +1 -1
  21. package/src/core.d.ts +479 -479
  22. package/src/core.js +4589 -5198
  23. package/src/core.js.map +1 -1
  24. package/src/data.d.ts +34 -34
  25. package/src/data.js +84 -84
  26. package/src/data.js.map +1 -1
  27. package/src/diagrams/arrow.d.ts +4 -4
  28. package/src/diagrams/arrow.js +46 -46
  29. package/src/diagrams/arrow.js.map +1 -1
  30. package/src/diagrams/circle.d.ts +2 -2
  31. package/src/diagrams/circle.js +8 -8
  32. package/src/diagrams/circle.js.map +1 -1
  33. package/src/diagrams/cloud.d.ts +2 -2
  34. package/src/diagrams/cloud.js +11 -11
  35. package/src/diagrams/cloud.js.map +1 -1
  36. package/src/diagrams/cube.d.ts +2 -2
  37. package/src/diagrams/cube.js +67 -69
  38. package/src/diagrams/cube.js.map +1 -1
  39. package/src/diagrams/diamond.d.ts +2 -2
  40. package/src/diagrams/diamond.js +12 -12
  41. package/src/diagrams/diamond.js.map +1 -1
  42. package/src/diagrams/file.d.ts +2 -2
  43. package/src/diagrams/file.js +17 -17
  44. package/src/diagrams/file.js.map +1 -1
  45. package/src/diagrams/gif.d.ts +5 -5
  46. package/src/diagrams/gif.js +88 -89
  47. package/src/diagrams/gif.js.map +1 -1
  48. package/src/diagrams/hexagon.d.ts +2 -2
  49. package/src/diagrams/hexagon.js +54 -54
  50. package/src/diagrams/hexagon.js.map +1 -1
  51. package/src/diagrams/iframe.d.ts +2 -2
  52. package/src/diagrams/iframe.js +337 -355
  53. package/src/diagrams/iframe.js.map +1 -1
  54. package/src/diagrams/index.d.ts +71 -71
  55. package/src/diagrams/index.js +76 -76
  56. package/src/diagrams/index.js.map +1 -1
  57. package/src/diagrams/line/arrow.d.ts +2 -2
  58. package/src/diagrams/line/arrow.js +127 -127
  59. package/src/diagrams/line/arrow.js.map +1 -1
  60. package/src/diagrams/line/curve.d.ts +16 -16
  61. package/src/diagrams/line/curve.js +226 -235
  62. package/src/diagrams/line/curve.js.map +1 -1
  63. package/src/diagrams/line/index.d.ts +5 -5
  64. package/src/diagrams/line/index.js +5 -5
  65. package/src/diagrams/line/line.d.ts +42 -42
  66. package/src/diagrams/line/line.js +369 -430
  67. package/src/diagrams/line/line.js.map +1 -1
  68. package/src/diagrams/line/polyline.d.ts +10 -10
  69. package/src/diagrams/line/polyline.js +626 -656
  70. package/src/diagrams/line/polyline.js.map +1 -1
  71. package/src/diagrams/line/smooth.d.ts +3 -3
  72. package/src/diagrams/line/smooth.js +135 -173
  73. package/src/diagrams/line/smooth.js.map +1 -1
  74. package/src/diagrams/message.d.ts +2 -2
  75. package/src/diagrams/message.js +14 -14
  76. package/src/diagrams/message.js.map +1 -1
  77. package/src/diagrams/mindLine.d.ts +3 -3
  78. package/src/diagrams/mindLine.js +29 -30
  79. package/src/diagrams/mindLine.js.map +1 -1
  80. package/src/diagrams/mindNode.d.ts +3 -3
  81. package/src/diagrams/mindNode.js +160 -188
  82. package/src/diagrams/mindNode.js.map +1 -1
  83. package/src/diagrams/panel.d.ts +2 -2
  84. package/src/diagrams/panel.js +130 -130
  85. package/src/diagrams/panel.js.map +1 -1
  86. package/src/diagrams/pentagon.d.ts +3 -3
  87. package/src/diagrams/pentagon.js +44 -45
  88. package/src/diagrams/pentagon.js.map +1 -1
  89. package/src/diagrams/pentagram.d.ts +3 -3
  90. package/src/diagrams/pentagram.js +50 -76
  91. package/src/diagrams/pentagram.js.map +1 -1
  92. package/src/diagrams/people.d.ts +2 -2
  93. package/src/diagrams/people.js +18 -18
  94. package/src/diagrams/people.js.map +1 -1
  95. package/src/diagrams/rectangle.d.ts +3 -3
  96. package/src/diagrams/rectangle.js +25 -25
  97. package/src/diagrams/rectangle.js.map +1 -1
  98. package/src/diagrams/svg/parse.d.ts +15 -15
  99. package/src/diagrams/svg/parse.js +278 -325
  100. package/src/diagrams/svg/parse.js.map +1 -1
  101. package/src/diagrams/svgPath.d.ts +2 -2
  102. package/src/diagrams/svgPath.js +28 -29
  103. package/src/diagrams/svgPath.js.map +1 -1
  104. package/src/diagrams/triangle.d.ts +3 -3
  105. package/src/diagrams/triangle.js +39 -40
  106. package/src/diagrams/triangle.js.map +1 -1
  107. package/src/diagrams/video.d.ts +5 -5
  108. package/src/diagrams/video.js +183 -184
  109. package/src/diagrams/video.js.map +1 -1
  110. package/src/dialog/dialog.d.ts +21 -21
  111. package/src/dialog/dialog.js +156 -97
  112. package/src/dialog/dialog.js.map +1 -1
  113. package/src/dialog/index.d.ts +1 -1
  114. package/src/dialog/index.js +1 -1
  115. package/src/event/event.d.ts +102 -102
  116. package/src/event/event.js +21 -21
  117. package/src/event/index.d.ts +1 -1
  118. package/src/event/index.js +1 -1
  119. package/src/map/index.d.ts +1 -1
  120. package/src/map/index.js +1 -1
  121. package/src/map/map.d.ts +21 -21
  122. package/src/map/map.js +211 -209
  123. package/src/map/map.js.map +1 -1
  124. package/src/options.d.ts +130 -130
  125. package/src/options.js +79 -79
  126. package/src/options.js.map +1 -1
  127. package/src/pen/arrow.d.ts +4 -4
  128. package/src/pen/arrow.js +187 -187
  129. package/src/pen/arrow.js.map +1 -1
  130. package/src/pen/index.d.ts +6 -6
  131. package/src/pen/index.js +6 -6
  132. package/src/pen/math.d.ts +28 -28
  133. package/src/pen/math.js +212 -303
  134. package/src/pen/math.js.map +1 -1
  135. package/src/pen/model.d.ts +514 -514
  136. package/src/pen/model.js +209 -209
  137. package/src/pen/model.js.map +1 -1
  138. package/src/pen/plugin.d.ts +5 -5
  139. package/src/pen/plugin.js +57 -87
  140. package/src/pen/plugin.js.map +1 -1
  141. package/src/pen/render.d.ts +146 -147
  142. package/src/pen/render.js +3233 -3235
  143. package/src/pen/render.js.map +1 -1
  144. package/src/pen/text.d.ts +8 -8
  145. package/src/pen/text.js +315 -374
  146. package/src/pen/text.js.map +1 -1
  147. package/src/pen/utils.d.ts +2 -2
  148. package/src/pen/utils.js +18 -40
  149. package/src/pen/utils.js.map +1 -1
  150. package/src/point/index.d.ts +1 -1
  151. package/src/point/index.js +1 -1
  152. package/src/point/point.d.ts +65 -65
  153. package/src/point/point.js +177 -178
  154. package/src/point/point.js.map +1 -1
  155. package/src/rect/index.d.ts +1 -1
  156. package/src/rect/index.js +1 -1
  157. package/src/rect/rect.d.ts +52 -52
  158. package/src/rect/rect.js +426 -485
  159. package/src/rect/rect.js.map +1 -1
  160. package/src/rect/triangle.d.ts +2 -2
  161. package/src/rect/triangle.js +9 -9
  162. package/src/rect/triangle.js.map +1 -1
  163. package/src/scroll/index.d.ts +1 -1
  164. package/src/scroll/index.js +1 -1
  165. package/src/scroll/scroll.d.ts +35 -35
  166. package/src/scroll/scroll.js +233 -220
  167. package/src/scroll/scroll.js.map +1 -1
  168. package/src/store/global.d.ts +25 -25
  169. package/src/store/global.js +17 -17
  170. package/src/store/global.js.map +1 -1
  171. package/src/store/index.d.ts +2 -2
  172. package/src/store/index.js +2 -2
  173. package/src/store/store.d.ts +228 -228
  174. package/src/store/store.js +86 -120
  175. package/src/store/store.js.map +1 -1
  176. package/src/theme.d.ts +13 -13
  177. package/src/theme.js +22 -22
  178. package/src/theme.js.map +1 -1
  179. package/src/title/index.d.ts +1 -1
  180. package/src/title/index.js +1 -1
  181. package/src/title/title.d.ts +30 -30
  182. package/src/title/title.js +98 -98
  183. package/src/title/title.js.map +1 -1
  184. package/src/tooltip/index.d.ts +1 -1
  185. package/src/tooltip/index.js +1 -1
  186. package/src/tooltip/tooltip.d.ts +40 -40
  187. package/src/tooltip/tooltip.js +171 -166
  188. package/src/tooltip/tooltip.js.map +1 -1
  189. package/src/utils/clone.d.ts +8 -8
  190. package/src/utils/clone.js +83 -87
  191. package/src/utils/clone.js.map +1 -1
  192. package/src/utils/color.d.ts +3 -3
  193. package/src/utils/color.js +109 -125
  194. package/src/utils/color.js.map +1 -1
  195. package/src/utils/error.d.ts +2 -2
  196. package/src/utils/error.js +5 -5
  197. package/src/utils/error.js.map +1 -1
  198. package/src/utils/file.d.ts +3 -3
  199. package/src/utils/file.js +39 -91
  200. package/src/utils/file.js.map +1 -1
  201. package/src/utils/index.d.ts +9 -8
  202. package/src/utils/index.js +9 -8
  203. package/src/utils/index.js.map +1 -1
  204. package/src/utils/math.d.ts +18 -18
  205. package/src/utils/math.js +113 -151
  206. package/src/utils/math.js.map +1 -1
  207. package/src/utils/object.d.ts +2 -2
  208. package/src/utils/object.js +20 -20
  209. package/src/utils/object.js.map +1 -1
  210. package/src/utils/padding.d.ts +7 -7
  211. package/src/utils/padding.js +46 -46
  212. package/src/utils/padding.js.map +1 -1
  213. package/src/utils/time.d.ts +1 -1
  214. package/src/utils/time.js +16 -16
  215. package/src/utils/time.js.map +1 -1
  216. package/src/utils/url.d.ts +4 -4
  217. package/src/utils/url.js +26 -26
  218. package/src/utils/url.js.map +1 -1
  219. package/src/utils/uuid.d.ts +4 -4
  220. package/src/utils/uuid.js +12 -12
  221. package/src/utils/browser.d.ts +0 -1
  222. package/src/utils/browser.js +0 -4
  223. package/src/utils/browser.js.map +0 -1
package/src/pen/model.js CHANGED
@@ -1,210 +1,210 @@
1
- export var PenType;
2
- (function (PenType) {
3
- PenType[PenType["Node"] = 0] = "Node";
4
- PenType[PenType["Line"] = 1] = "Line";
5
- })(PenType || (PenType = {}));
6
- export var LockState;
7
- (function (LockState) {
8
- LockState[LockState["None"] = 0] = "None";
9
- LockState[LockState["DisableEdit"] = 1] = "DisableEdit";
10
- LockState[LockState["DisableMove"] = 2] = "DisableMove";
11
- LockState[LockState["DisableScale"] = 3] = "DisableScale";
12
- LockState[LockState["DisableMoveScale"] = 4] = "DisableMoveScale";
13
- // DisableActive,
14
- LockState[LockState["Disable"] = 10] = "Disable";
15
- })(LockState || (LockState = {}));
16
- export var AnchorMode;
17
- (function (AnchorMode) {
18
- AnchorMode[AnchorMode["Default"] = 0] = "Default";
19
- AnchorMode[AnchorMode["In"] = 1] = "In";
20
- AnchorMode[AnchorMode["Out"] = 2] = "Out";
21
- })(AnchorMode || (AnchorMode = {}));
22
- export var Gradient;
23
- (function (Gradient) {
24
- Gradient[Gradient["None"] = 0] = "None";
25
- Gradient[Gradient["Linear"] = 1] = "Linear";
26
- Gradient[Gradient["Radial"] = 2] = "Radial";
27
- })(Gradient || (Gradient = {}));
28
- //所在画布层 值和画布zIndex对应
29
- export var CanvasLayer;
30
- (function (CanvasLayer) {
31
- CanvasLayer[CanvasLayer["CanvasTemplate"] = 1] = "CanvasTemplate";
32
- CanvasLayer[CanvasLayer["CanvasImageBottom"] = 2] = "CanvasImageBottom";
33
- CanvasLayer[CanvasLayer["CanvasMain"] = 3] = "CanvasMain";
34
- CanvasLayer[CanvasLayer["CanvasImage"] = 4] = "CanvasImage"; //顶部图片层
35
- })(CanvasLayer || (CanvasLayer = {}));
36
- // export enum Flip {
37
- // None, // 正常
38
- // Horizontal, // 水平翻转
39
- // Vertical, // 垂直翻转
40
- // Both, // 全翻转
41
- // }
42
- // 修改哪些属性需要重现计算 textRect
43
- export var needCalcTextRectProps = [
44
- 'text',
45
- 'textWidth',
46
- 'textHeight',
47
- 'textLeft',
48
- 'textTop',
49
- 'fontFamily',
50
- 'fontSize',
51
- 'lineHeight',
52
- 'fontStyle',
53
- 'fontWeight',
54
- 'textAlign',
55
- 'textBaseline',
56
- 'whiteSpace',
57
- 'ellipsis',
58
- 'keepDecimal',
59
- ];
60
- export var needSetPenProps = ['x', 'y', 'width', 'height', 'flipX', 'flipY'];
61
- export var needPatchFlagsPenRectProps = [
62
- 'paddingTop',
63
- 'paddingRight',
64
- 'paddingBottom',
65
- 'paddingLeft',
66
- 'flipX',
67
- 'flipY',
68
- 'visible',
69
- 'showChild',
70
- ];
71
- export var needCalcIconRectProps = ['iconLeft', 'iconTop', 'iconRotate'];
72
- export var LineAnimateType;
73
- (function (LineAnimateType) {
74
- LineAnimateType[LineAnimateType["Normal"] = 0] = "Normal";
75
- LineAnimateType[LineAnimateType["Beads"] = 1] = "Beads";
76
- LineAnimateType[LineAnimateType["Dot"] = 2] = "Dot";
77
- LineAnimateType[LineAnimateType["Arrow"] = 3] = "Arrow";
78
- LineAnimateType[LineAnimateType["WaterDrop"] = 4] = "WaterDrop";
79
- })(LineAnimateType || (LineAnimateType = {}));
80
- /**
81
- * dom 类型的 图形
82
- */
83
- export var isDomShapes = [
84
- 'gif',
85
- 'iframe',
86
- 'video',
87
- 'echarts',
88
- 'highcharts',
89
- 'lightningCharts',
90
- ];
91
- /**
92
- * 交互图元
93
- */
94
- export var isInteraction = [
95
- 'radio',
96
- 'checkbox',
97
- 'button',
98
- 'inputDom',
99
- 'slider',
100
- 'echarts',
101
- ];
102
- // 格式刷同步的属性
103
- export var formatAttrs = new Set([
104
- 'borderRadius',
105
- // 'rotate',
106
- 'paddingLeft',
107
- 'paddingRight',
108
- 'paddingTop',
109
- 'paddingBottom',
110
- 'progress',
111
- 'progressColor',
112
- 'verticalProgress',
113
- 'reverseProgress',
114
- // 'flip',
115
- 'flipX',
116
- 'flipY',
117
- 'input',
118
- 'lineDash',
119
- 'lineCap',
120
- 'lineJoin',
121
- 'strokeType',
122
- 'lineGradientFromColor',
123
- 'lineGradientToColor',
124
- 'lineGradientAngle',
125
- 'color',
126
- 'hoverColor',
127
- 'activeColor',
128
- 'lineWidth',
129
- 'bkType',
130
- 'gradientFromColor',
131
- 'gradientToColor',
132
- 'gradientAngle',
133
- 'gradientRadius',
134
- 'hoverBackground',
135
- 'activeBackground',
136
- 'globalAlpha',
137
- 'anchorColor',
138
- 'anchorRadius',
139
- 'shadowColor',
140
- 'shadowBlur',
141
- 'shadowOffsetX',
142
- 'shadowOffsetY',
143
- 'textHasShadow',
144
- 'fontFamily',
145
- 'fontSize',
146
- 'textColor',
147
- 'hoverTextColor',
148
- 'activeTextColor',
149
- 'textBackground',
150
- 'fontStyle',
151
- 'fontWeight',
152
- 'textAlign',
153
- 'textBaseline',
154
- 'lineHeight',
155
- 'whiteSpace',
156
- 'textWidth',
157
- 'textHeight',
158
- 'textLeft',
159
- 'textTop',
160
- 'ellipsis',
161
- 'hiddenText',
162
- 'keepDecimal',
163
- 'borderWidth',
164
- 'borderColor',
165
- 'animateLineWidth',
166
- 'lineAnimateType',
167
- 'frames',
168
- 'animateColor',
169
- 'animateType',
170
- 'animateReverse',
171
- 'background',
172
- 'gradientColors',
173
- 'lineGradientColors',
174
- 'animateLineWidth',
175
- 'gradientSmooth',
176
- 'lineSmooth',
177
- 'animations'
178
- ]);
179
- /**
180
- * 清空 pen 的 生命周期
181
- */
182
- export function clearLifeCycle(pen) {
183
- pen.onAdd = undefined;
184
- pen.onValue = undefined;
185
- pen.onBeforeValue = undefined;
186
- pen.onDestroy = undefined;
187
- pen.onMove = undefined;
188
- pen.onResize = undefined;
189
- pen.onRotate = undefined;
190
- pen.onClick = undefined;
191
- pen.onMouseEnter = undefined;
192
- pen.onMouseLeave = undefined;
193
- pen.onMouseDown = undefined;
194
- pen.onMouseMove = undefined;
195
- pen.onMouseUp = undefined;
196
- pen.onShowInput = undefined;
197
- pen.onInput = undefined;
198
- pen.onChangeId = undefined;
199
- pen.onBinds = undefined;
200
- pen.onStartVideo = undefined;
201
- pen.onPauseVideo = undefined;
202
- pen.onStopVideo = undefined;
203
- pen.onRenderPenRaw = undefined;
204
- pen.onKeyDown = undefined;
205
- pen.onContextmenu = undefined;
206
- pen.onScale = undefined;
207
- pen.onWheel = undefined;
208
- pen.onConnectLine = undefined;
209
- }
1
+ export var PenType;
2
+ (function (PenType) {
3
+ PenType[PenType["Node"] = 0] = "Node";
4
+ PenType[PenType["Line"] = 1] = "Line";
5
+ })(PenType || (PenType = {}));
6
+ export var LockState;
7
+ (function (LockState) {
8
+ LockState[LockState["None"] = 0] = "None";
9
+ LockState[LockState["DisableEdit"] = 1] = "DisableEdit";
10
+ LockState[LockState["DisableMove"] = 2] = "DisableMove";
11
+ LockState[LockState["DisableScale"] = 3] = "DisableScale";
12
+ LockState[LockState["DisableMoveScale"] = 4] = "DisableMoveScale";
13
+ // DisableActive,
14
+ LockState[LockState["Disable"] = 10] = "Disable";
15
+ })(LockState || (LockState = {}));
16
+ export var AnchorMode;
17
+ (function (AnchorMode) {
18
+ AnchorMode[AnchorMode["Default"] = 0] = "Default";
19
+ AnchorMode[AnchorMode["In"] = 1] = "In";
20
+ AnchorMode[AnchorMode["Out"] = 2] = "Out";
21
+ })(AnchorMode || (AnchorMode = {}));
22
+ export var Gradient;
23
+ (function (Gradient) {
24
+ Gradient[Gradient["None"] = 0] = "None";
25
+ Gradient[Gradient["Linear"] = 1] = "Linear";
26
+ Gradient[Gradient["Radial"] = 2] = "Radial";
27
+ })(Gradient || (Gradient = {}));
28
+ //所在画布层 值和画布zIndex对应
29
+ export var CanvasLayer;
30
+ (function (CanvasLayer) {
31
+ CanvasLayer[CanvasLayer["CanvasTemplate"] = 1] = "CanvasTemplate";
32
+ CanvasLayer[CanvasLayer["CanvasImageBottom"] = 2] = "CanvasImageBottom";
33
+ CanvasLayer[CanvasLayer["CanvasMain"] = 3] = "CanvasMain";
34
+ CanvasLayer[CanvasLayer["CanvasImage"] = 4] = "CanvasImage"; //顶部图片层
35
+ })(CanvasLayer || (CanvasLayer = {}));
36
+ // export enum Flip {
37
+ // None, // 正常
38
+ // Horizontal, // 水平翻转
39
+ // Vertical, // 垂直翻转
40
+ // Both, // 全翻转
41
+ // }
42
+ // 修改哪些属性需要重现计算 textRect
43
+ export const needCalcTextRectProps = [
44
+ 'text',
45
+ 'textWidth',
46
+ 'textHeight',
47
+ 'textLeft',
48
+ 'textTop',
49
+ 'fontFamily',
50
+ 'fontSize',
51
+ 'lineHeight',
52
+ 'fontStyle',
53
+ 'fontWeight',
54
+ 'textAlign',
55
+ 'textBaseline',
56
+ 'whiteSpace',
57
+ 'ellipsis',
58
+ 'keepDecimal',
59
+ ];
60
+ export const needSetPenProps = ['x', 'y', 'width', 'height', 'flipX', 'flipY'];
61
+ export const needPatchFlagsPenRectProps = [
62
+ 'paddingTop',
63
+ 'paddingRight',
64
+ 'paddingBottom',
65
+ 'paddingLeft',
66
+ 'flipX',
67
+ 'flipY',
68
+ 'visible',
69
+ 'showChild',
70
+ ];
71
+ export const needCalcIconRectProps = ['iconLeft', 'iconTop', 'iconRotate'];
72
+ export var LineAnimateType;
73
+ (function (LineAnimateType) {
74
+ LineAnimateType[LineAnimateType["Normal"] = 0] = "Normal";
75
+ LineAnimateType[LineAnimateType["Beads"] = 1] = "Beads";
76
+ LineAnimateType[LineAnimateType["Dot"] = 2] = "Dot";
77
+ LineAnimateType[LineAnimateType["Arrow"] = 3] = "Arrow";
78
+ LineAnimateType[LineAnimateType["WaterDrop"] = 4] = "WaterDrop";
79
+ })(LineAnimateType || (LineAnimateType = {}));
80
+ /**
81
+ * dom 类型的 图形
82
+ */
83
+ export const isDomShapes = [
84
+ 'gif',
85
+ 'iframe',
86
+ 'video',
87
+ 'echarts',
88
+ 'highcharts',
89
+ 'lightningCharts',
90
+ ];
91
+ /**
92
+ * 交互图元
93
+ */
94
+ export const isInteraction = [
95
+ 'radio',
96
+ 'checkbox',
97
+ 'button',
98
+ 'inputDom',
99
+ 'slider',
100
+ 'echarts',
101
+ ];
102
+ // 格式刷同步的属性
103
+ export const formatAttrs = new Set([
104
+ 'borderRadius',
105
+ // 'rotate',
106
+ 'paddingLeft',
107
+ 'paddingRight',
108
+ 'paddingTop',
109
+ 'paddingBottom',
110
+ 'progress',
111
+ 'progressColor',
112
+ 'verticalProgress',
113
+ 'reverseProgress',
114
+ // 'flip',
115
+ 'flipX',
116
+ 'flipY',
117
+ 'input',
118
+ 'lineDash',
119
+ 'lineCap',
120
+ 'lineJoin',
121
+ 'strokeType',
122
+ 'lineGradientFromColor',
123
+ 'lineGradientToColor',
124
+ 'lineGradientAngle',
125
+ 'color',
126
+ 'hoverColor',
127
+ 'activeColor',
128
+ 'lineWidth',
129
+ 'bkType',
130
+ 'gradientFromColor',
131
+ 'gradientToColor',
132
+ 'gradientAngle',
133
+ 'gradientRadius',
134
+ 'hoverBackground',
135
+ 'activeBackground',
136
+ 'globalAlpha',
137
+ 'anchorColor',
138
+ 'anchorRadius',
139
+ 'shadowColor',
140
+ 'shadowBlur',
141
+ 'shadowOffsetX',
142
+ 'shadowOffsetY',
143
+ 'textHasShadow',
144
+ 'fontFamily',
145
+ 'fontSize',
146
+ 'textColor',
147
+ 'hoverTextColor',
148
+ 'activeTextColor',
149
+ 'textBackground',
150
+ 'fontStyle',
151
+ 'fontWeight',
152
+ 'textAlign',
153
+ 'textBaseline',
154
+ 'lineHeight',
155
+ 'whiteSpace',
156
+ 'textWidth',
157
+ 'textHeight',
158
+ 'textLeft',
159
+ 'textTop',
160
+ 'ellipsis',
161
+ 'hiddenText',
162
+ 'keepDecimal',
163
+ 'borderWidth',
164
+ 'borderColor',
165
+ 'animateLineWidth',
166
+ 'lineAnimateType',
167
+ 'frames',
168
+ 'animateColor',
169
+ 'animateType',
170
+ 'animateReverse',
171
+ 'background',
172
+ 'gradientColors',
173
+ 'lineGradientColors',
174
+ 'animateLineWidth',
175
+ 'gradientSmooth',
176
+ 'lineSmooth',
177
+ 'animations'
178
+ ]);
179
+ /**
180
+ * 清空 pen 的 生命周期
181
+ */
182
+ export function clearLifeCycle(pen) {
183
+ pen.onAdd = undefined;
184
+ pen.onValue = undefined;
185
+ pen.onBeforeValue = undefined;
186
+ pen.onDestroy = undefined;
187
+ pen.onMove = undefined;
188
+ pen.onResize = undefined;
189
+ pen.onRotate = undefined;
190
+ pen.onClick = undefined;
191
+ pen.onMouseEnter = undefined;
192
+ pen.onMouseLeave = undefined;
193
+ pen.onMouseDown = undefined;
194
+ pen.onMouseMove = undefined;
195
+ pen.onMouseUp = undefined;
196
+ pen.onShowInput = undefined;
197
+ pen.onInput = undefined;
198
+ pen.onChangeId = undefined;
199
+ pen.onBinds = undefined;
200
+ pen.onStartVideo = undefined;
201
+ pen.onPauseVideo = undefined;
202
+ pen.onStopVideo = undefined;
203
+ pen.onRenderPenRaw = undefined;
204
+ pen.onKeyDown = undefined;
205
+ pen.onContextmenu = undefined;
206
+ pen.onScale = undefined;
207
+ pen.onWheel = undefined;
208
+ pen.onConnectLine = undefined;
209
+ }
210
210
  //# sourceMappingURL=model.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../packages/core/src/pen/model.ts"],"names":[],"mappings":"AAKA,MAAM,CAAN,IAAY,OAGX;AAHD,WAAY,OAAO;IACjB,qCAAI,CAAA;IACJ,qCAAI,CAAA;AACN,CAAC,EAHW,OAAO,KAAP,OAAO,QAGlB;AAED,MAAM,CAAN,IAAY,SAQX;AARD,WAAY,SAAS;IACnB,yCAAI,CAAA;IACJ,uDAAW,CAAA;IACX,uDAAW,CAAA;IACX,yDAAY,CAAA;IACZ,iEAAgB,CAAA;IAChB,iBAAiB;IACjB,gDAAY,CAAA;AACd,CAAC,EARW,SAAS,KAAT,SAAS,QAQpB;AAED,MAAM,CAAN,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,iDAAO,CAAA;IACP,uCAAE,CAAA;IACF,yCAAG,CAAA;AACL,CAAC,EAJW,UAAU,KAAV,UAAU,QAIrB;AAED,MAAM,CAAN,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,uCAAI,CAAA;IACJ,2CAAM,CAAA;IACN,2CAAM,CAAA;AACR,CAAC,EAJW,QAAQ,KAAR,QAAQ,QAInB;AAED,oBAAoB;AACpB,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,iEAAkB,CAAA;IAClB,uEAAiB,CAAA;IACjB,yDAAU,CAAA;IACV,2DAAW,CAAA,CAAC,OAAO;AACrB,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB;AAED,qBAAqB;AACrB,gBAAgB;AAChB,wBAAwB;AACxB,sBAAsB;AACtB,iBAAiB;AACjB,IAAI;AAEJ,wBAAwB;AACxB,MAAM,CAAC,IAAM,qBAAqB,GAAG;IACnC,MAAM;IACN,WAAW;IACX,YAAY;IACZ,UAAU;IACV,SAAS;IACT,YAAY;IACZ,UAAU;IACV,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,WAAW;IACX,cAAc;IACd,YAAY;IACZ,UAAU;IACV,aAAa;CACd,CAAC;AAEF,MAAM,CAAC,IAAM,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAE/E,MAAM,CAAC,IAAM,0BAA0B,GAAG;IACxC,YAAY;IACZ,cAAc;IACd,eAAe;IACf,aAAa;IACb,OAAO;IACP,OAAO;IACP,SAAS;IACT,WAAW;CACZ,CAAC;AAEF,MAAM,CAAC,IAAM,qBAAqB,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;AAoB3E,MAAM,CAAN,IAAY,eAMX;AAND,WAAY,eAAe;IACzB,yDAAM,CAAA;IACN,uDAAK,CAAA;IACL,mDAAG,CAAA;IACH,uDAAK,CAAA;IACL,+DAAS,CAAA;AACX,CAAC,EANW,eAAe,KAAf,eAAe,QAM1B;AAmiBD;;GAEG;AACH,MAAM,CAAC,IAAM,WAAW,GAAG;IACzB,KAAK;IACL,QAAQ;IACR,OAAO;IACP,SAAS;IACT,YAAY;IACZ,iBAAiB;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAM,aAAa,GAAG;IAC3B,OAAO;IACP,UAAU;IACV,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,SAAS;CACV,CAAA;AAED,WAAW;AACX,MAAM,CAAC,IAAM,WAAW,GAAgB,IAAI,GAAG,CAAC;IAC9C,cAAc;IACd,YAAY;IACZ,aAAa;IACb,cAAc;IACd,YAAY;IACZ,eAAe;IACf,UAAU;IACV,eAAe;IACf,kBAAkB;IAClB,iBAAiB;IACjB,UAAU;IACV,OAAO;IACP,OAAO;IACP,OAAO;IACP,UAAU;IACV,SAAS;IACT,UAAU;IACV,YAAY;IACZ,uBAAuB;IACvB,qBAAqB;IACrB,mBAAmB;IACnB,OAAO;IACP,YAAY;IACZ,aAAa;IACb,WAAW;IACX,QAAQ;IACR,mBAAmB;IACnB,iBAAiB;IACjB,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,kBAAkB;IAClB,aAAa;IACb,aAAa;IACb,cAAc;IACd,aAAa;IACb,YAAY;IACZ,eAAe;IACf,eAAe;IACf,eAAe;IACf,YAAY;IACZ,UAAU;IACV,WAAW;IACX,gBAAgB;IAChB,iBAAiB;IACjB,gBAAgB;IAChB,WAAW;IACX,YAAY;IACZ,WAAW;IACX,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,UAAU;IACV,SAAS;IACT,UAAU;IACV,YAAY;IACZ,aAAa;IACb,aAAa;IACb,aAAa;IACb,kBAAkB;IAClB,iBAAiB;IACjB,QAAQ;IACR,cAAc;IACd,aAAa;IACb,gBAAgB;IAChB,YAAY;IACZ,gBAAgB;IAChB,oBAAoB;IACpB,kBAAkB;IAClB,gBAAgB;IAChB,YAAY;IACZ,YAAY;CACb,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,GAAQ;IACrC,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC;IACtB,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,aAAa,GAAG,SAAS,CAAC;IAC9B,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1B,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC;IACvB,GAAG,CAAC,QAAQ,GAAG,SAAS,CAAC;IACzB,GAAG,CAAC,QAAQ,GAAG,SAAS,CAAC;IACzB,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC;IAC7B,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC;IAC7B,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;IAC5B,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;IAC5B,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1B,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;IAC5B,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC;IAC3B,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC;IAC7B,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC;IAC7B,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;IAC5B,GAAG,CAAC,cAAc,GAAG,SAAS,CAAC;IAC/B,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1B,GAAG,CAAC,aAAa,GAAG,SAAS,CAAC;IAC9B,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,aAAa,GAAG,SAAS,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../packages/core/src/pen/model.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { Pen } from "@meta2d/core";
2
- export declare let setLifeCycleFunc: (pen: Pen, lifeCycle: any, func: Function, del?: boolean) => () => void;
3
- /**
4
- * @description 校验插件*/
5
- export declare function validationPlugin(plugin: any): boolean;
1
+ import { Pen } from "../pen";
2
+ export declare let setLifeCycleFunc: (pen: Pen, lifeCycle: any, func: Function, del?: boolean) => () => void;
3
+ /**
4
+ * @description 校验插件*/
5
+ export declare function validationPlugin(plugin: any): boolean;
package/src/pen/plugin.js CHANGED
@@ -1,88 +1,58 @@
1
- // 该文件为penPlugin的相关文件
2
- var __read = (this && this.__read) || function (o, n) {
3
- var m = typeof Symbol === "function" && o[Symbol.iterator];
4
- if (!m) return o;
5
- var i = m.call(o), r, ar = [], e;
6
- try {
7
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
- }
9
- catch (error) { e = { error: error }; }
10
- finally {
11
- try {
12
- if (r && !r.done && (m = i["return"])) m.call(i);
13
- }
14
- finally { if (e) throw e.error; }
15
- }
16
- return ar;
17
- };
18
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
19
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
20
- if (ar || !(i in from)) {
21
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
22
- ar[i] = from[i];
23
- }
24
- }
25
- return to.concat(ar || Array.prototype.slice.call(from));
26
- };
27
- /**
28
- * @description 闭包 重写 pen的生命周期,为了追加回调函数
29
- * @return 生命周期操作函数,可在原生命周期回调函数基础上进行执行多个函数,可通过传参,设置函数的增加和删除,类似addEventListener 和 removeEventListener
30
- * @bug 漏洞:后面的生命周期无法将前面的生命周期需要的参数正确传递
31
- */
32
- function rewritePenLifeCycle() {
33
- var funcMap = null;
34
- var funcPenMap = new Map();
35
- return function (pen, lifeCycle, func, del) {
36
- if (del === void 0) { del = false; }
37
- if (funcPenMap.has(pen) && funcPenMap.get(pen)) {
38
- funcMap = funcPenMap.get(pen);
39
- }
40
- else {
41
- funcPenMap.set(pen, funcMap = new Map());
42
- }
43
- if (typeof func !== "function")
44
- return function () {
45
- console.warn('[rewritePenLifeCycle] warn: not a function ');
46
- };
47
- var funcListSet = new Set();
48
- var originFuncMap = new Map(); // 原始事件回调Map
49
- if (funcMap.has(lifeCycle) && funcMap.get(lifeCycle)) {
50
- funcListSet = funcMap.get(lifeCycle);
51
- }
52
- else {
53
- originFuncMap.set(lifeCycle, pen[lifeCycle]);
54
- funcMap.set(lifeCycle, funcListSet);
55
- }
56
- if (del) {
57
- funcListSet.delete(func);
58
- }
59
- else {
60
- funcListSet.add(func);
61
- }
62
- var originLifeCycle = originFuncMap.get(lifeCycle); // 原始事件;
63
- var rewriteFunc = function () {
64
- var args = [];
65
- for (var _i = 0; _i < arguments.length; _i++) {
66
- args[_i] = arguments[_i];
67
- }
68
- originLifeCycle === null || originLifeCycle === void 0 ? void 0 : originLifeCycle.apply(void 0, __spreadArray([], __read(args), false));
69
- funcListSet.forEach(function (i) {
70
- // @ts-ignore
71
- i.apply(void 0, __spreadArray([], __read(args), false));
72
- });
73
- };
74
- pen[lifeCycle] = rewriteFunc;
75
- };
76
- }
77
- export var setLifeCycleFunc = rewritePenLifeCycle();
78
- /**
79
- * @description 校验插件*/
80
- export function validationPlugin(plugin) {
81
- // 校验penPlugin
82
- if (!plugin.name && !plugin.install) {
83
- console.error('installPenPlugin Error: Validation Failed');
84
- return false;
85
- }
86
- return true;
87
- }
1
+ // 该文件为penPlugin的相关文件
2
+ /**
3
+ * @description 闭包 重写 pen的生命周期,为了追加回调函数
4
+ * @return 生命周期操作函数,可在原生命周期回调函数基础上进行执行多个函数,可通过传参,设置函数的增加和删除,类似addEventListener 和 removeEventListener
5
+ * @bug 漏洞:后面的生命周期无法将前面的生命周期需要的参数正确传递
6
+ */
7
+ function rewritePenLifeCycle() {
8
+ let funcMap = null;
9
+ let funcPenMap = new Map();
10
+ return (pen, lifeCycle, func, del = false) => {
11
+ if (funcPenMap.has(pen) && funcPenMap.get(pen)) {
12
+ funcMap = funcPenMap.get(pen);
13
+ }
14
+ else {
15
+ funcPenMap.set(pen, funcMap = new Map());
16
+ }
17
+ if (typeof func !== "function")
18
+ return () => {
19
+ console.warn('[rewritePenLifeCycle] warn: not a function ');
20
+ };
21
+ let funcListSet = new Set();
22
+ let originFuncMap = new Map(); // 原始事件回调Map
23
+ if (funcMap.has(lifeCycle) && funcMap.get(lifeCycle)) {
24
+ funcListSet = funcMap.get(lifeCycle);
25
+ }
26
+ else {
27
+ originFuncMap.set(lifeCycle, pen[lifeCycle]);
28
+ funcMap.set(lifeCycle, funcListSet);
29
+ }
30
+ if (del) {
31
+ funcListSet.delete(func);
32
+ }
33
+ else {
34
+ funcListSet.add(func);
35
+ }
36
+ let originLifeCycle = originFuncMap.get(lifeCycle); // 原始事件;
37
+ let rewriteFunc = (...args) => {
38
+ originLifeCycle?.(...args);
39
+ funcListSet.forEach(i => {
40
+ // @ts-ignore
41
+ i(...args);
42
+ });
43
+ };
44
+ pen[lifeCycle] = rewriteFunc;
45
+ };
46
+ }
47
+ export let setLifeCycleFunc = rewritePenLifeCycle();
48
+ /**
49
+ * @description 校验插件*/
50
+ export function validationPlugin(plugin) {
51
+ // 校验penPlugin
52
+ if (!plugin.name && !plugin.install) {
53
+ console.error('installPenPlugin Error: Validation Failed');
54
+ return false;
55
+ }
56
+ return true;
57
+ }
88
58
  //# sourceMappingURL=plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../../packages/core/src/pen/plugin.ts"],"names":[],"mappings":"AAAA,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;AAIrB;;;;GAIG;AACH,SAAS,mBAAmB;IAC1B,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,IAAI,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;IAC3B,OAAO,UAAC,GAAQ,EAAE,SAAS,EAAE,IAAc,EAAE,GAAU;QAAV,oBAAA,EAAA,WAAU;QACrD,IAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAC;YAC5C,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SAC/B;aAAK;YACJ,UAAU,CAAC,GAAG,CAAC,GAAG,EAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC;SACzC;QACD,IAAG,OAAO,IAAI,KAAK,UAAU;YAAC,OAAO;gBACnC,OAAO,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;YAC9D,CAAC,CAAC;QACF,IAAI,WAAW,GAAG,IAAI,GAAG,EAAE,CAAC;QAC5B,IAAI,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,YAAY;QAC3C,IAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAC;YAClD,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;SACtC;aAAK;YACJ,aAAa,CAAC,GAAG,CAAC,SAAS,EAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,SAAS,EAAC,WAAW,CAAC,CAAC;SACpC;QACD,IAAG,GAAG,EAAC;YACL,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAC1B;aAAK;YACJ,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;SACvB;QACD,IAAI,eAAe,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;QAC5D,IAAI,WAAW,GAAG;YAAC,cAAO;iBAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;gBAAP,yBAAO;;YACxB,eAAe,aAAf,eAAe,uBAAf,eAAe,wCAAM,IAAI,UAAC,CAAC;YAC3B,WAAW,CAAC,OAAO,CAAC,UAAA,CAAC;gBACnB,aAAa;gBACb,CAAC,wCAAI,IAAI,WAAE;YACb,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QACF,GAAG,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC;IAC/B,CAAC,CAAC;AACJ,CAAC;AACD,MAAM,CAAC,IAAI,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;AAEpD;sBACsB;AACtB,MAAM,UAAU,gBAAgB,CAAC,MAAM;IACrC,cAAc;IACd,IAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAC;QACjC,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC3D,OAAO,KAAK,CAAC;KACd;IACD,OAAQ,IAAI,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../../packages/core/src/pen/plugin.ts"],"names":[],"mappings":"AAAA,qBAAqB;AAIrB;;;;GAIG;AACH,SAAS,mBAAmB;IAC1B,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,IAAI,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;IAC3B,OAAO,CAAC,GAAQ,EAAE,SAAS,EAAE,IAAc,EAAE,GAAG,GAAE,KAAK,EAAE,EAAE;QACzD,IAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAC,CAAC;YAC7C,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChC,CAAC;aAAK,CAAC;YACL,UAAU,CAAC,GAAG,CAAC,GAAG,EAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC;QAC1C,CAAC;QACD,IAAG,OAAO,IAAI,KAAK,UAAU;YAAC,OAAO,GAAE,EAAE;gBACvC,OAAO,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;YAC9D,CAAC,CAAC;QACF,IAAI,WAAW,GAAG,IAAI,GAAG,EAAE,CAAC;QAC5B,IAAI,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,YAAY;QAC3C,IAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAC,CAAC;YACnD,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvC,CAAC;aAAK,CAAC;YACL,aAAa,CAAC,GAAG,CAAC,SAAS,EAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,SAAS,EAAC,WAAW,CAAC,CAAC;QACrC,CAAC;QACD,IAAG,GAAG,EAAC,CAAC;YACN,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;aAAK,CAAC;YACL,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;QACD,IAAI,eAAe,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;QAC5D,IAAI,WAAW,GAAG,CAAC,GAAG,IAAI,EAAC,EAAE;YAC3B,eAAe,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;YAC3B,WAAW,CAAC,OAAO,CAAC,CAAC,CAAA,EAAE;gBACrB,aAAa;gBACb,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YACb,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QACF,GAAG,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC;IAC/B,CAAC,CAAC;AACJ,CAAC;AACD,MAAM,CAAC,IAAI,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;AAEpD;sBACsB;AACtB,MAAM,UAAU,gBAAgB,CAAC,MAAM;IACrC,cAAc;IACd,IAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAC,CAAC;QAClC,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC3D,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAQ,IAAI,CAAC;AACf,CAAC"}