@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
@@ -1,228 +1,228 @@
1
- import { Emitter } from 'mitt';
2
- import { FormItem, LockState, Pen } from '../pen';
3
- import { Options } from '../options';
4
- import { Theme } from '../theme';
5
- import { Point } from '../point';
6
- import { Rect } from '../rect';
7
- import { Event, Trigger } from '../event';
8
- export interface Meta2dData {
9
- pens: Pen[];
10
- x: number;
11
- y: number;
12
- scale: number;
13
- origin: Point;
14
- center: Point;
15
- locked?: LockState;
16
- websocket?: string;
17
- mqtt?: string;
18
- mqttOptions?: {
19
- clientId?: string;
20
- username?: string;
21
- password?: string;
22
- customClientId?: boolean;
23
- };
24
- mqttTopics?: string;
25
- websocketProtocols?: string | string[];
26
- background?: string;
27
- globalAlpha?: number;
28
- socketCbJs?: string;
29
- initJs?: string;
30
- grid?: boolean;
31
- gridColor?: string;
32
- gridSize?: number;
33
- gridRotate?: number;
34
- rule?: boolean;
35
- ruleColor?: string;
36
- fromArrow?: string;
37
- toArrow?: string;
38
- lineWidth?: number;
39
- color?: string;
40
- textColor?: string;
41
- penBackground?: string;
42
- paths?: {
43
- [key: string]: string;
44
- };
45
- bkImage?: string;
46
- http?: string;
47
- httpTimeInterval?: number;
48
- httpHeaders?: HeadersInit;
49
- version?: string;
50
- id?: string;
51
- _id?: string;
52
- https?: HttpOptions[];
53
- width?: number;
54
- height?: number;
55
- networkInterval?: number;
56
- networks?: Network[];
57
- iconUrls?: string[];
58
- mockData?: Function;
59
- name?: string;
60
- enableMock?: boolean;
61
- minScale?: number;
62
- maxScale?: number;
63
- template?: string;
64
- cancelFirstConnect?: boolean;
65
- component?: boolean;
66
- theme?: string;
67
- smoothNum?: number;
68
- triggers?: Trigger[];
69
- dataPoints?: string[];
70
- dataset?: {
71
- devices?: DataMock[];
72
- };
73
- dataEvents?: Event[];
74
- fits?: Fit[];
75
- disableTranslate?: boolean;
76
- disableScale?: boolean;
77
- }
78
- export interface Fit {
79
- id?: string;
80
- name?: string;
81
- x?: number;
82
- y?: number;
83
- ex?: number;
84
- ey?: number;
85
- width?: number;
86
- height?: number;
87
- children?: string[];
88
- active?: boolean;
89
- left?: boolean;
90
- right?: boolean;
91
- top?: boolean;
92
- bottom?: boolean;
93
- leftValue?: number;
94
- rightValue?: number;
95
- topValue?: number;
96
- bottomValue?: number;
97
- }
98
- export interface DataMock {
99
- id: string;
100
- label?: string;
101
- mock?: string;
102
- type?: string;
103
- enableMock?: boolean;
104
- }
105
- export interface Network {
106
- name?: string;
107
- protocol?: 'mqtt' | 'websocket' | 'http';
108
- type?: string;
109
- url?: string;
110
- protocols?: string;
111
- topics?: string;
112
- options?: {
113
- clientId?: string;
114
- username?: string;
115
- password?: string;
116
- customClientId?: boolean;
117
- };
118
- headers?: any;
119
- method?: string;
120
- body?: any;
121
- data?: Network;
122
- interval?: number;
123
- times?: number;
124
- index?: number;
125
- }
126
- export interface HttpOptions {
127
- http?: string;
128
- httpTimeInterval?: number;
129
- httpHeaders?: HeadersInit;
130
- method?: string;
131
- body?: BodyInit | null;
132
- times?: number;
133
- }
134
- export declare enum EditType {
135
- Add = 0,
136
- Update = 1,
137
- Delete = 2,
138
- Replace = 3
139
- }
140
- export interface EditAction {
141
- type?: EditType;
142
- initPens?: Pen[];
143
- pens?: Pen[];
144
- step?: number;
145
- origin?: Point;
146
- scale?: number;
147
- }
148
- export interface Meta2dStore {
149
- id: string;
150
- data: Meta2dData;
151
- pens: {
152
- [key: string]: Pen;
153
- };
154
- histories?: EditAction[];
155
- historyIndex?: number;
156
- path2dMap: WeakMap<Pen, Path2D>;
157
- animateMap: WeakMap<Pen, Pen>;
158
- bindDatas: {
159
- [key: string]: {
160
- id: string;
161
- formItem: FormItem;
162
- }[];
163
- };
164
- bind?: {
165
- [key: string]: {
166
- id: string;
167
- key: string;
168
- }[];
169
- };
170
- active?: Pen[];
171
- hover?: Pen;
172
- lastHover?: Pen;
173
- hoverContainer?: Pen;
174
- lastHoverContainer?: Pen;
175
- activeAnchor?: Point;
176
- hoverAnchor?: Point;
177
- pointAt?: Point;
178
- pointAtIndex?: number;
179
- animates: Set<Pen>;
180
- options: Options;
181
- theme: Theme;
182
- emitter: Emitter;
183
- dpiRatio?: number;
184
- clipboard?: Meta2dClipboard;
185
- patchFlagsBackground?: boolean;
186
- patchFlagsTop?: boolean;
187
- bkImg?: HTMLImageElement;
188
- fillWorldTextRect?: boolean;
189
- cacheDatas?: {
190
- data: Meta2dData;
191
- }[];
192
- patchFlagsLast?: boolean;
193
- messageEvents?: {
194
- [key: string]: {
195
- pen: Pen;
196
- event: Event;
197
- }[];
198
- };
199
- templatePens?: {
200
- [key: string]: Pen;
201
- };
202
- sameTemplate?: boolean;
203
- lastScale?: number;
204
- pensNetwork?: {
205
- [key: string]: {
206
- url?: string;
207
- method?: string;
208
- headers?: any;
209
- body?: any;
210
- };
211
- };
212
- globalTriggers?: {
213
- [key: string]: Trigger[];
214
- };
215
- }
216
- export interface Meta2dClipboard {
217
- meta2d?: boolean;
218
- pens: Pen[];
219
- origin: Point;
220
- scale: number;
221
- offset?: number;
222
- page: string;
223
- initRect?: Rect;
224
- pos?: Point;
225
- }
226
- export declare const createStore: () => Meta2dStore;
227
- export declare const useStore: (id?: string) => Meta2dStore;
228
- export declare const clearStore: (store: Meta2dStore, template?: string) => void;
1
+ import { Emitter } from 'mitt';
2
+ import { FormItem, LockState, Pen } from '../pen';
3
+ import { Options } from '../options';
4
+ import { Theme } from '../theme';
5
+ import { Point } from '../point';
6
+ import { Rect } from '../rect';
7
+ import { Event, Trigger } from '../event';
8
+ export interface Meta2dData {
9
+ pens: Pen[];
10
+ x: number;
11
+ y: number;
12
+ scale: number;
13
+ origin: Point;
14
+ center: Point;
15
+ locked?: LockState;
16
+ websocket?: string;
17
+ mqtt?: string;
18
+ mqttOptions?: {
19
+ clientId?: string;
20
+ username?: string;
21
+ password?: string;
22
+ customClientId?: boolean;
23
+ };
24
+ mqttTopics?: string;
25
+ websocketProtocols?: string | string[];
26
+ background?: string;
27
+ globalAlpha?: number;
28
+ socketCbJs?: string;
29
+ initJs?: string;
30
+ grid?: boolean;
31
+ gridColor?: string;
32
+ gridSize?: number;
33
+ gridRotate?: number;
34
+ rule?: boolean;
35
+ ruleColor?: string;
36
+ fromArrow?: string;
37
+ toArrow?: string;
38
+ lineWidth?: number;
39
+ color?: string;
40
+ textColor?: string;
41
+ penBackground?: string;
42
+ paths?: {
43
+ [key: string]: string;
44
+ };
45
+ bkImage?: string;
46
+ http?: string;
47
+ httpTimeInterval?: number;
48
+ httpHeaders?: HeadersInit;
49
+ version?: string;
50
+ id?: string;
51
+ _id?: string;
52
+ https?: HttpOptions[];
53
+ width?: number;
54
+ height?: number;
55
+ networkInterval?: number;
56
+ networks?: Network[];
57
+ iconUrls?: string[];
58
+ mockData?: Function;
59
+ name?: string;
60
+ enableMock?: boolean;
61
+ minScale?: number;
62
+ maxScale?: number;
63
+ template?: string;
64
+ cancelFirstConnect?: boolean;
65
+ component?: boolean;
66
+ theme?: string;
67
+ smoothNum?: number;
68
+ triggers?: Trigger[];
69
+ dataPoints?: string[];
70
+ dataset?: {
71
+ devices?: DataMock[];
72
+ };
73
+ dataEvents?: Event[];
74
+ fits?: Fit[];
75
+ disableTranslate?: boolean;
76
+ disableScale?: boolean;
77
+ }
78
+ export interface Fit {
79
+ id?: string;
80
+ name?: string;
81
+ x?: number;
82
+ y?: number;
83
+ ex?: number;
84
+ ey?: number;
85
+ width?: number;
86
+ height?: number;
87
+ children?: string[];
88
+ active?: boolean;
89
+ left?: boolean;
90
+ right?: boolean;
91
+ top?: boolean;
92
+ bottom?: boolean;
93
+ leftValue?: number;
94
+ rightValue?: number;
95
+ topValue?: number;
96
+ bottomValue?: number;
97
+ }
98
+ export interface DataMock {
99
+ id: string;
100
+ label?: string;
101
+ mock?: string;
102
+ type?: string;
103
+ enableMock?: boolean;
104
+ }
105
+ export interface Network {
106
+ name?: string;
107
+ protocol?: 'mqtt' | 'websocket' | 'http';
108
+ type?: string;
109
+ url?: string;
110
+ protocols?: string;
111
+ topics?: string;
112
+ options?: {
113
+ clientId?: string;
114
+ username?: string;
115
+ password?: string;
116
+ customClientId?: boolean;
117
+ };
118
+ headers?: any;
119
+ method?: string;
120
+ body?: any;
121
+ data?: Network;
122
+ interval?: number;
123
+ times?: number;
124
+ index?: number;
125
+ }
126
+ export interface HttpOptions {
127
+ http?: string;
128
+ httpTimeInterval?: number;
129
+ httpHeaders?: HeadersInit;
130
+ method?: string;
131
+ body?: BodyInit | null;
132
+ times?: number;
133
+ }
134
+ export declare enum EditType {
135
+ Add = 0,
136
+ Update = 1,
137
+ Delete = 2,
138
+ Replace = 3
139
+ }
140
+ export interface EditAction {
141
+ type?: EditType;
142
+ initPens?: Pen[];
143
+ pens?: Pen[];
144
+ step?: number;
145
+ origin?: Point;
146
+ scale?: number;
147
+ }
148
+ export interface Meta2dStore {
149
+ id: string;
150
+ data: Meta2dData;
151
+ pens: {
152
+ [key: string]: Pen;
153
+ };
154
+ histories?: EditAction[];
155
+ historyIndex?: number;
156
+ path2dMap: WeakMap<Pen, Path2D>;
157
+ animateMap: WeakMap<Pen, Pen>;
158
+ bindDatas: {
159
+ [key: string]: {
160
+ id: string;
161
+ formItem: FormItem;
162
+ }[];
163
+ };
164
+ bind?: {
165
+ [key: string]: {
166
+ id: string;
167
+ key: string;
168
+ }[];
169
+ };
170
+ active?: Pen[];
171
+ hover?: Pen;
172
+ lastHover?: Pen;
173
+ hoverContainer?: Pen;
174
+ lastHoverContainer?: Pen;
175
+ activeAnchor?: Point;
176
+ hoverAnchor?: Point;
177
+ pointAt?: Point;
178
+ pointAtIndex?: number;
179
+ animates: Set<Pen>;
180
+ options: Options;
181
+ theme: Theme;
182
+ emitter: Emitter;
183
+ dpiRatio?: number;
184
+ clipboard?: Meta2dClipboard;
185
+ patchFlagsBackground?: boolean;
186
+ patchFlagsTop?: boolean;
187
+ bkImg?: HTMLImageElement;
188
+ fillWorldTextRect?: boolean;
189
+ cacheDatas?: {
190
+ data: Meta2dData;
191
+ }[];
192
+ patchFlagsLast?: boolean;
193
+ messageEvents?: {
194
+ [key: string]: {
195
+ pen: Pen;
196
+ event: Event;
197
+ }[];
198
+ };
199
+ templatePens?: {
200
+ [key: string]: Pen;
201
+ };
202
+ sameTemplate?: boolean;
203
+ lastScale?: number;
204
+ pensNetwork?: {
205
+ [key: string]: {
206
+ url?: string;
207
+ method?: string;
208
+ headers?: any;
209
+ body?: any;
210
+ };
211
+ };
212
+ globalTriggers?: {
213
+ [key: string]: Trigger[];
214
+ };
215
+ }
216
+ export interface Meta2dClipboard {
217
+ meta2d?: boolean;
218
+ pens: Pen[];
219
+ origin: Point;
220
+ scale: number;
221
+ offset?: number;
222
+ page: string;
223
+ initRect?: Rect;
224
+ pos?: Point;
225
+ }
226
+ export declare const createStore: () => Meta2dStore;
227
+ export declare const useStore: (id?: string) => Meta2dStore;
228
+ export declare const clearStore: (store: Meta2dStore, template?: string) => void;
@@ -1,121 +1,87 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __values = (this && this.__values) || function(o) {
13
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
14
- if (m) return m.call(o);
15
- if (o && typeof o.length === "number") return {
16
- next: function () {
17
- if (o && i >= o.length) o = void 0;
18
- return { value: o && o[i++], done: !o };
19
- }
20
- };
21
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
22
- };
23
- import { default as mitt } from 'mitt';
24
- import { CanvasLayer } from '../pen';
25
- import { defaultOptions } from '../options';
26
- import { defaultTheme } from '../theme';
27
- import { globalStore } from './global';
28
- export var EditType;
29
- (function (EditType) {
30
- EditType[EditType["Add"] = 0] = "Add";
31
- EditType[EditType["Update"] = 1] = "Update";
32
- EditType[EditType["Delete"] = 2] = "Delete";
33
- EditType[EditType["Replace"] = 3] = "Replace";
34
- })(EditType || (EditType = {}));
35
- export var createStore = function () {
36
- return {
37
- data: {
38
- x: 0,
39
- y: 0,
40
- scale: 1,
41
- pens: [],
42
- origin: { x: 0, y: 0 },
43
- center: { x: 0, y: 0 },
44
- paths: {},
45
- theme: 'light'
46
- },
47
- histories: [],
48
- pens: {},
49
- path2dMap: new WeakMap(),
50
- animateMap: new WeakMap(),
51
- active: [],
52
- animates: new Set(),
53
- options: __assign({}, defaultOptions),
54
- theme: __assign({}, defaultTheme),
55
- emitter: mitt(),
56
- bindDatas: {},
57
- bind: {},
58
- pensNetwork: {},
59
- cacheDatas: [],
60
- messageEvents: {},
61
- templatePens: {},
62
- globalTriggers: {},
63
- };
64
- };
65
- // Return a data store, if not exists will create a store.
66
- export var useStore = function (id) {
67
- if (id === void 0) { id = 'default'; }
68
- if (!globalStore[id]) {
69
- globalStore[id] = createStore();
70
- globalStore[id].id = id;
71
- }
72
- return globalStore[id];
73
- };
74
- export var clearStore = function (store, template) {
75
- var e_1, _a;
76
- var isSame = store.data.template === template;
77
- if (isSame) {
78
- try {
79
- //模版一样
80
- for (var _b = __values(store.data.pens), _c = _b.next(); !_c.done; _c = _b.next()) {
81
- var pen = _c.value;
82
- // if (pen.template) {
83
- if (pen.canvasLayer === CanvasLayer.CanvasTemplate) {
84
- store.templatePens[pen.id] = pen;
85
- }
86
- }
87
- }
88
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
89
- finally {
90
- try {
91
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
92
- }
93
- finally { if (e_1) throw e_1.error; }
94
- }
95
- }
96
- store.lastScale = store.data.scale;
97
- store.data = {
98
- x: 0,
99
- y: 0,
100
- scale: 1,
101
- pens: [],
102
- origin: { x: 0, y: 0 },
103
- center: { x: 0, y: 0 },
104
- paths: {},
105
- template: isSame ? template : null,
106
- };
107
- store.sameTemplate = isSame;
108
- store.pens = {};
109
- store.histories = [];
110
- store.historyIndex = null;
111
- store.path2dMap = new WeakMap();
112
- store.animateMap = new WeakMap();
113
- store.bindDatas = {};
114
- store.bind = {};
115
- store.pensNetwork = {};
116
- store.active = [];
117
- store.hover = undefined;
118
- store.lastHover = undefined;
119
- store.animates.clear();
120
- };
1
+ import { default as mitt } from 'mitt';
2
+ import { CanvasLayer } from '../pen';
3
+ import { defaultOptions } from '../options';
4
+ import { defaultTheme } from '../theme';
5
+ import { globalStore } from './global';
6
+ export var EditType;
7
+ (function (EditType) {
8
+ EditType[EditType["Add"] = 0] = "Add";
9
+ EditType[EditType["Update"] = 1] = "Update";
10
+ EditType[EditType["Delete"] = 2] = "Delete";
11
+ EditType[EditType["Replace"] = 3] = "Replace";
12
+ })(EditType || (EditType = {}));
13
+ export const createStore = () => {
14
+ return {
15
+ data: {
16
+ x: 0,
17
+ y: 0,
18
+ scale: 1,
19
+ pens: [],
20
+ origin: { x: 0, y: 0 },
21
+ center: { x: 0, y: 0 },
22
+ paths: {},
23
+ theme: 'light'
24
+ },
25
+ histories: [],
26
+ pens: {},
27
+ path2dMap: new WeakMap(),
28
+ animateMap: new WeakMap(),
29
+ active: [],
30
+ animates: new Set(),
31
+ options: { ...defaultOptions },
32
+ theme: { ...defaultTheme },
33
+ emitter: mitt(),
34
+ bindDatas: {},
35
+ bind: {},
36
+ pensNetwork: {},
37
+ cacheDatas: [],
38
+ messageEvents: {},
39
+ templatePens: {},
40
+ globalTriggers: {},
41
+ };
42
+ };
43
+ // Return a data store, if not exists will create a store.
44
+ export const useStore = (id = 'default') => {
45
+ if (!globalStore[id]) {
46
+ globalStore[id] = createStore();
47
+ globalStore[id].id = id;
48
+ }
49
+ return globalStore[id];
50
+ };
51
+ export const clearStore = (store, template) => {
52
+ const isSame = store.data.template === template;
53
+ if (isSame) {
54
+ //模版一样
55
+ for (const pen of store.data.pens) {
56
+ // if (pen.template) {
57
+ if (pen.canvasLayer === CanvasLayer.CanvasTemplate) {
58
+ store.templatePens[pen.id] = pen;
59
+ }
60
+ }
61
+ }
62
+ store.lastScale = store.data.scale;
63
+ store.data = {
64
+ x: 0,
65
+ y: 0,
66
+ scale: 1,
67
+ pens: [],
68
+ origin: { x: 0, y: 0 },
69
+ center: { x: 0, y: 0 },
70
+ paths: {},
71
+ template: isSame ? template : null,
72
+ };
73
+ store.sameTemplate = isSame;
74
+ store.pens = {};
75
+ store.histories = [];
76
+ store.historyIndex = null;
77
+ store.path2dMap = new WeakMap();
78
+ store.animateMap = new WeakMap();
79
+ store.bindDatas = {};
80
+ store.bind = {};
81
+ store.pensNetwork = {};
82
+ store.active = [];
83
+ store.hover = undefined;
84
+ store.lastHover = undefined;
85
+ store.animates.clear();
86
+ };
121
87
  //# sourceMappingURL=store.js.map