@meta2d/core 1.0.54 → 1.0.56

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 (302) hide show
  1. package/README.md +13 -0
  2. package/package.build.json +39 -0
  3. package/package.json +38 -38
  4. package/src/canvas/canvas.ts +8639 -0
  5. package/src/canvas/canvasImage.ts +525 -0
  6. package/src/canvas/canvasTemplate.ts +257 -0
  7. package/src/canvas/magnifierCanvas.ts +142 -0
  8. package/src/canvas/offscreen.ts +14 -0
  9. package/src/core.ts +5128 -0
  10. package/src/data.ts +86 -0
  11. package/src/diagrams/arrow.ts +50 -0
  12. package/src/diagrams/circle.ts +19 -0
  13. package/src/diagrams/cloud.ts +34 -0
  14. package/src/diagrams/cube.ts +94 -0
  15. package/src/diagrams/diamond.ts +14 -0
  16. package/src/diagrams/file.ts +19 -0
  17. package/src/diagrams/gif.ts +105 -0
  18. package/src/diagrams/{hexagon.js → hexagon.ts} +19 -14
  19. package/src/diagrams/iframe.ts +365 -0
  20. package/src/diagrams/{index.js → index.ts} +36 -34
  21. package/src/diagrams/line/arrow.ts +175 -0
  22. package/src/diagrams/line/curve.ts +260 -0
  23. package/src/diagrams/line/line.ts +409 -0
  24. package/src/diagrams/line/polyline.ts +676 -0
  25. package/src/diagrams/line/smooth.ts +133 -0
  26. package/src/diagrams/message.ts +17 -0
  27. package/src/diagrams/mindLine.ts +31 -0
  28. package/src/diagrams/mindNode.ts +177 -0
  29. package/src/diagrams/panel.ts +149 -0
  30. package/src/diagrams/pentagon.ts +48 -0
  31. package/src/diagrams/pentagram.ts +63 -0
  32. package/src/diagrams/people.ts +23 -0
  33. package/src/diagrams/rectangle.ts +29 -0
  34. package/src/diagrams/svg/parse.ts +319 -0
  35. package/src/diagrams/svgPath.ts +53 -0
  36. package/src/diagrams/triangle.ts +43 -0
  37. package/src/diagrams/video.ts +202 -0
  38. package/src/dialog/dialog.ts +177 -0
  39. package/src/event/event.ts +142 -0
  40. package/src/map/map.ts +239 -0
  41. package/src/options.ts +205 -0
  42. package/src/pen/arrow.ts +259 -0
  43. package/src/pen/math.ts +253 -0
  44. package/src/pen/model.ts +785 -0
  45. package/src/pen/plugin.ts +57 -0
  46. package/src/pen/render.ts +3725 -0
  47. package/src/pen/text.ts +341 -0
  48. package/src/pen/utils.ts +21 -0
  49. package/src/point/point.ts +232 -0
  50. package/src/rect/rect.ts +507 -0
  51. package/src/rect/triangle.ts +16 -0
  52. package/src/scroll/scroll.ts +277 -0
  53. package/src/store/global.ts +38 -0
  54. package/src/store/store.ts +293 -0
  55. package/src/theme.ts +35 -0
  56. package/src/title/title.ts +115 -0
  57. package/src/tooltip/tooltip.ts +199 -0
  58. package/src/utils/clone.ts +79 -0
  59. package/src/utils/color.ts +126 -0
  60. package/src/utils/error.ts +7 -0
  61. package/src/utils/file.ts +46 -0
  62. package/src/utils/{index.d.ts → index.ts} +1 -0
  63. package/src/utils/math.ts +120 -0
  64. package/src/utils/object.ts +23 -0
  65. package/src/utils/padding.ts +48 -0
  66. package/src/utils/time.ts +25 -0
  67. package/src/utils/url.ts +30 -0
  68. package/src/utils/uuid.ts +15 -0
  69. package/index.js +0 -10
  70. package/index.js.map +0 -1
  71. package/src/canvas/canvas.d.ts +0 -455
  72. package/src/canvas/canvas.js +0 -8168
  73. package/src/canvas/canvas.js.map +0 -1
  74. package/src/canvas/canvasImage.d.ts +0 -28
  75. package/src/canvas/canvasImage.js +0 -503
  76. package/src/canvas/canvasImage.js.map +0 -1
  77. package/src/canvas/canvasTemplate.d.ts +0 -19
  78. package/src/canvas/canvasTemplate.js +0 -229
  79. package/src/canvas/canvasTemplate.js.map +0 -1
  80. package/src/canvas/index.js +0 -3
  81. package/src/canvas/index.js.map +0 -1
  82. package/src/canvas/magnifierCanvas.d.ts +0 -20
  83. package/src/canvas/magnifierCanvas.js +0 -101
  84. package/src/canvas/magnifierCanvas.js.map +0 -1
  85. package/src/canvas/offscreen.d.ts +0 -2
  86. package/src/canvas/offscreen.js +0 -14
  87. package/src/canvas/offscreen.js.map +0 -1
  88. package/src/core.d.ts +0 -477
  89. package/src/core.js +0 -5168
  90. package/src/core.js.map +0 -1
  91. package/src/data.d.ts +0 -34
  92. package/src/data.js +0 -85
  93. package/src/data.js.map +0 -1
  94. package/src/diagrams/arrow.d.ts +0 -4
  95. package/src/diagrams/arrow.js +0 -47
  96. package/src/diagrams/arrow.js.map +0 -1
  97. package/src/diagrams/circle.d.ts +0 -2
  98. package/src/diagrams/circle.js +0 -9
  99. package/src/diagrams/circle.js.map +0 -1
  100. package/src/diagrams/cloud.d.ts +0 -2
  101. package/src/diagrams/cloud.js +0 -12
  102. package/src/diagrams/cloud.js.map +0 -1
  103. package/src/diagrams/cube.d.ts +0 -2
  104. package/src/diagrams/cube.js +0 -70
  105. package/src/diagrams/cube.js.map +0 -1
  106. package/src/diagrams/diamond.d.ts +0 -2
  107. package/src/diagrams/diamond.js +0 -13
  108. package/src/diagrams/diamond.js.map +0 -1
  109. package/src/diagrams/file.d.ts +0 -2
  110. package/src/diagrams/file.js +0 -18
  111. package/src/diagrams/file.js.map +0 -1
  112. package/src/diagrams/gif.d.ts +0 -5
  113. package/src/diagrams/gif.js +0 -90
  114. package/src/diagrams/gif.js.map +0 -1
  115. package/src/diagrams/hexagon.d.ts +0 -2
  116. package/src/diagrams/hexagon.js.map +0 -1
  117. package/src/diagrams/iframe.d.ts +0 -2
  118. package/src/diagrams/iframe.js +0 -356
  119. package/src/diagrams/iframe.js.map +0 -1
  120. package/src/diagrams/index.d.ts +0 -71
  121. package/src/diagrams/index.js.map +0 -1
  122. package/src/diagrams/line/arrow.d.ts +0 -2
  123. package/src/diagrams/line/arrow.js +0 -128
  124. package/src/diagrams/line/arrow.js.map +0 -1
  125. package/src/diagrams/line/curve.d.ts +0 -16
  126. package/src/diagrams/line/curve.js +0 -236
  127. package/src/diagrams/line/curve.js.map +0 -1
  128. package/src/diagrams/line/index.js +0 -6
  129. package/src/diagrams/line/index.js.map +0 -1
  130. package/src/diagrams/line/line.d.ts +0 -42
  131. package/src/diagrams/line/line.js +0 -431
  132. package/src/diagrams/line/line.js.map +0 -1
  133. package/src/diagrams/line/polyline.d.ts +0 -10
  134. package/src/diagrams/line/polyline.js +0 -657
  135. package/src/diagrams/line/polyline.js.map +0 -1
  136. package/src/diagrams/line/smooth.d.ts +0 -3
  137. package/src/diagrams/line/smooth.js +0 -174
  138. package/src/diagrams/line/smooth.js.map +0 -1
  139. package/src/diagrams/message.d.ts +0 -2
  140. package/src/diagrams/message.js +0 -15
  141. package/src/diagrams/message.js.map +0 -1
  142. package/src/diagrams/mindLine.d.ts +0 -3
  143. package/src/diagrams/mindLine.js +0 -31
  144. package/src/diagrams/mindLine.js.map +0 -1
  145. package/src/diagrams/mindNode.d.ts +0 -3
  146. package/src/diagrams/mindNode.js +0 -189
  147. package/src/diagrams/mindNode.js.map +0 -1
  148. package/src/diagrams/panel.d.ts +0 -2
  149. package/src/diagrams/panel.js +0 -131
  150. package/src/diagrams/panel.js.map +0 -1
  151. package/src/diagrams/pentagon.d.ts +0 -3
  152. package/src/diagrams/pentagon.js +0 -46
  153. package/src/diagrams/pentagon.js.map +0 -1
  154. package/src/diagrams/pentagram.d.ts +0 -3
  155. package/src/diagrams/pentagram.js +0 -77
  156. package/src/diagrams/pentagram.js.map +0 -1
  157. package/src/diagrams/people.d.ts +0 -2
  158. package/src/diagrams/people.js +0 -19
  159. package/src/diagrams/people.js.map +0 -1
  160. package/src/diagrams/rectangle.d.ts +0 -3
  161. package/src/diagrams/rectangle.js +0 -26
  162. package/src/diagrams/rectangle.js.map +0 -1
  163. package/src/diagrams/svg/parse.d.ts +0 -15
  164. package/src/diagrams/svg/parse.js +0 -326
  165. package/src/diagrams/svg/parse.js.map +0 -1
  166. package/src/diagrams/svgPath.d.ts +0 -2
  167. package/src/diagrams/svgPath.js +0 -30
  168. package/src/diagrams/svgPath.js.map +0 -1
  169. package/src/diagrams/triangle.d.ts +0 -3
  170. package/src/diagrams/triangle.js +0 -41
  171. package/src/diagrams/triangle.js.map +0 -1
  172. package/src/diagrams/video.d.ts +0 -5
  173. package/src/diagrams/video.js +0 -185
  174. package/src/diagrams/video.js.map +0 -1
  175. package/src/dialog/dialog.d.ts +0 -14
  176. package/src/dialog/dialog.js +0 -77
  177. package/src/dialog/dialog.js.map +0 -1
  178. package/src/dialog/index.js +0 -2
  179. package/src/dialog/index.js.map +0 -1
  180. package/src/event/event.d.ts +0 -102
  181. package/src/event/event.js +0 -22
  182. package/src/event/event.js.map +0 -1
  183. package/src/event/index.js +0 -2
  184. package/src/event/index.js.map +0 -1
  185. package/src/map/index.js +0 -2
  186. package/src/map/index.js.map +0 -1
  187. package/src/map/map.d.ts +0 -21
  188. package/src/map/map.js +0 -210
  189. package/src/map/map.js.map +0 -1
  190. package/src/options.d.ts +0 -130
  191. package/src/options.js +0 -80
  192. package/src/options.js.map +0 -1
  193. package/src/pen/arrow.d.ts +0 -4
  194. package/src/pen/arrow.js +0 -188
  195. package/src/pen/arrow.js.map +0 -1
  196. package/src/pen/index.js +0 -7
  197. package/src/pen/index.js.map +0 -1
  198. package/src/pen/math.d.ts +0 -28
  199. package/src/pen/math.js +0 -304
  200. package/src/pen/math.js.map +0 -1
  201. package/src/pen/model.d.ts +0 -512
  202. package/src/pen/model.js +0 -209
  203. package/src/pen/model.js.map +0 -1
  204. package/src/pen/plugin.d.ts +0 -5
  205. package/src/pen/plugin.js +0 -88
  206. package/src/pen/plugin.js.map +0 -1
  207. package/src/pen/render.d.ts +0 -147
  208. package/src/pen/render.js +0 -3229
  209. package/src/pen/render.js.map +0 -1
  210. package/src/pen/text.d.ts +0 -8
  211. package/src/pen/text.js +0 -375
  212. package/src/pen/text.js.map +0 -1
  213. package/src/pen/utils.d.ts +0 -2
  214. package/src/pen/utils.js +0 -41
  215. package/src/pen/utils.js.map +0 -1
  216. package/src/point/index.js +0 -2
  217. package/src/point/index.js.map +0 -1
  218. package/src/point/point.d.ts +0 -65
  219. package/src/point/point.js +0 -179
  220. package/src/point/point.js.map +0 -1
  221. package/src/rect/index.js +0 -2
  222. package/src/rect/index.js.map +0 -1
  223. package/src/rect/rect.d.ts +0 -52
  224. package/src/rect/rect.js +0 -486
  225. package/src/rect/rect.js.map +0 -1
  226. package/src/rect/triangle.d.ts +0 -2
  227. package/src/rect/triangle.js +0 -10
  228. package/src/rect/triangle.js.map +0 -1
  229. package/src/scroll/index.js +0 -2
  230. package/src/scroll/index.js.map +0 -1
  231. package/src/scroll/scroll.d.ts +0 -35
  232. package/src/scroll/scroll.js +0 -221
  233. package/src/scroll/scroll.js.map +0 -1
  234. package/src/store/global.d.ts +0 -25
  235. package/src/store/global.js +0 -18
  236. package/src/store/global.js.map +0 -1
  237. package/src/store/index.js +0 -3
  238. package/src/store/index.js.map +0 -1
  239. package/src/store/store.d.ts +0 -226
  240. package/src/store/store.js +0 -121
  241. package/src/store/store.js.map +0 -1
  242. package/src/theme.d.ts +0 -13
  243. package/src/theme.js +0 -23
  244. package/src/theme.js.map +0 -1
  245. package/src/title/index.js +0 -2
  246. package/src/title/index.js.map +0 -1
  247. package/src/title/title.d.ts +0 -30
  248. package/src/title/title.js +0 -99
  249. package/src/title/title.js.map +0 -1
  250. package/src/tooltip/index.js +0 -2
  251. package/src/tooltip/index.js.map +0 -1
  252. package/src/tooltip/tooltip.d.ts +0 -40
  253. package/src/tooltip/tooltip.js +0 -167
  254. package/src/tooltip/tooltip.js.map +0 -1
  255. package/src/utils/browser.d.ts +0 -1
  256. package/src/utils/browser.js +0 -4
  257. package/src/utils/browser.js.map +0 -1
  258. package/src/utils/clone.d.ts +0 -8
  259. package/src/utils/clone.js +0 -88
  260. package/src/utils/clone.js.map +0 -1
  261. package/src/utils/color.d.ts +0 -3
  262. package/src/utils/color.js +0 -126
  263. package/src/utils/color.js.map +0 -1
  264. package/src/utils/error.d.ts +0 -2
  265. package/src/utils/error.js +0 -6
  266. package/src/utils/error.js.map +0 -1
  267. package/src/utils/file.d.ts +0 -3
  268. package/src/utils/file.js +0 -92
  269. package/src/utils/file.js.map +0 -1
  270. package/src/utils/index.js +0 -9
  271. package/src/utils/index.js.map +0 -1
  272. package/src/utils/math.d.ts +0 -18
  273. package/src/utils/math.js +0 -152
  274. package/src/utils/math.js.map +0 -1
  275. package/src/utils/object.d.ts +0 -2
  276. package/src/utils/object.js +0 -21
  277. package/src/utils/object.js.map +0 -1
  278. package/src/utils/padding.d.ts +0 -7
  279. package/src/utils/padding.js +0 -47
  280. package/src/utils/padding.js.map +0 -1
  281. package/src/utils/time.d.ts +0 -1
  282. package/src/utils/time.js +0 -17
  283. package/src/utils/time.js.map +0 -1
  284. package/src/utils/url.d.ts +0 -4
  285. package/src/utils/url.js +0 -27
  286. package/src/utils/url.js.map +0 -1
  287. package/src/utils/uuid.d.ts +0 -4
  288. package/src/utils/uuid.js +0 -13
  289. package/src/utils/uuid.js.map +0 -1
  290. /package/{index.d.ts → index.ts} +0 -0
  291. /package/src/canvas/{index.d.ts → index.ts} +0 -0
  292. /package/src/diagrams/line/{index.d.ts → index.ts} +0 -0
  293. /package/src/dialog/{index.d.ts → index.ts} +0 -0
  294. /package/src/event/{index.d.ts → index.ts} +0 -0
  295. /package/src/map/{index.d.ts → index.ts} +0 -0
  296. /package/src/pen/{index.d.ts → index.ts} +0 -0
  297. /package/src/point/{index.d.ts → index.ts} +0 -0
  298. /package/src/rect/{index.d.ts → index.ts} +0 -0
  299. /package/src/scroll/{index.d.ts → index.ts} +0 -0
  300. /package/src/store/{index.d.ts → index.ts} +0 -0
  301. /package/src/title/{index.d.ts → index.ts} +0 -0
  302. /package/src/tooltip/{index.d.ts → index.ts} +0 -0
package/src/core.d.ts DELETED
@@ -1,477 +0,0 @@
1
- import { EventType, Handler, WildcardHandler } from 'mitt';
2
- import { Canvas } from './canvas';
3
- import { Options, PenPlugin, PluginOptions } from './options';
4
- import { calcTextDrawRect, calcTextLines, calcTextRect, facePen, getWords, LockState, Pen, renderPenRaw, IValue, setElemPosition } from './pen';
5
- import { Point } from './point';
6
- import { EditAction, register, registerAnchors, registerCanvasDraw, Meta2dData, Meta2dStore, Network, HttpOptions } from './store';
7
- import { Padding } from './utils';
8
- import { Rect } from './rect';
9
- import { Event, TriggerCondition } from './event';
10
- import { ViewMap } from './map';
11
- import { MqttClient } from 'mqtt';
12
- export declare class Meta2d {
13
- store: Meta2dStore;
14
- canvas: Canvas;
15
- websocket: WebSocket;
16
- mqttClient: MqttClient;
17
- websockets: WebSocket[];
18
- mqttClients: MqttClient[];
19
- penPluginMap: Map<PenPlugin, {
20
- tag?: string;
21
- name?: string;
22
- id?: string;
23
- option: Object;
24
- }[]>;
25
- socketFn: (e: string, context?: {
26
- meta2d?: Meta2d;
27
- type?: string;
28
- topic?: string;
29
- url?: string;
30
- }) => boolean | string;
31
- events: Record<number, (pen: Pen, e: Event) => void>;
32
- map: ViewMap;
33
- mapTimer: any;
34
- constructor(parent: string | HTMLElement, opts?: Options);
35
- facePen: typeof facePen;
36
- getWords: typeof getWords;
37
- calcTextLines: typeof calcTextLines;
38
- calcTextRect: typeof calcTextRect;
39
- calcTextDrawRect: typeof calcTextDrawRect;
40
- /**
41
- * @deprecated 改用 beforeAddPens
42
- */
43
- get beforeAddPen(): (pen: Pen) => boolean;
44
- /**
45
- * @deprecated 改用 beforeAddPens
46
- */
47
- set beforeAddPen(fn: (pen: Pen) => boolean);
48
- get beforeAddPens(): (pens: Pen[]) => Promise<boolean>;
49
- set beforeAddPens(fn: (pens: Pen[]) => Promise<boolean>);
50
- get beforeAddAnchor(): (pen: Pen, anchor: Point) => Promise<boolean>;
51
- set beforeAddAnchor(fn: (pen: Pen, anchor: Point) => Promise<boolean>);
52
- get beforeRemovePens(): (pens: Pen[]) => Promise<boolean>;
53
- set beforeRemovePens(fn: (pens: Pen[]) => Promise<boolean>);
54
- get beforeRemoveAnchor(): (pen: Pen, anchor: Point) => Promise<boolean>;
55
- set beforeRemoveAnchor(fn: (pen: Pen, anchor: Point) => Promise<boolean>);
56
- setOptions(opts?: Options): void;
57
- getOptions(): Options;
58
- setTheme(theme: string): void;
59
- setDatabyOptions(options?: Options): void;
60
- private init;
61
- initEventFns(): void;
62
- navigatorTo(id: string): void;
63
- doSendDataEvent(value: any, topics?: string): void;
64
- sendDataToNetWork(value: any, pen: Pen, e: any): Promise<void>;
65
- resize(width?: number, height?: number): void;
66
- /**
67
- *
68
- * @param emit 是否发送消息
69
- */
70
- addPen(pen: Pen, history?: boolean, emit?: boolean): Promise<Pen>;
71
- addPens(pens: Pen[], history?: boolean): Promise<Pen[]>;
72
- render(patchFlags?: boolean | number): void;
73
- setBackgroundImage(url: string, data?: any): Promise<void>;
74
- setBackgroundColor(color?: string): void;
75
- setGrid({ grid, gridColor, gridSize, gridRotate, }?: {
76
- grid?: boolean;
77
- gridColor?: string;
78
- gridSize?: number;
79
- gridRotate?: number;
80
- }): void;
81
- setRule({ rule, ruleColor, }?: {
82
- rule?: boolean;
83
- ruleColor?: string;
84
- }): void;
85
- open(data?: Meta2dData, render?: boolean): void;
86
- cacheData(id: string): void;
87
- loadCacheData(id: string): void;
88
- initBindDatas(): void;
89
- initBinds(): void;
90
- connectSocket(): void;
91
- /**
92
- * open 后执行初始化 Js ,每个图纸可配置一个初始化 js
93
- */
94
- private doInitJS;
95
- drawLine(lineName?: string): void;
96
- alignPenToGrid(pen: Pen): void;
97
- drawingPencil(): void;
98
- stopPencil(): void;
99
- lock(lock: LockState): void;
100
- finishDrawLine(end?: boolean): Promise<void>;
101
- finishPencil(): Promise<void>;
102
- updateLineType(pen: Pen, lineName: string): void;
103
- addDrawLineFn(fnName: string, fn: Function): void;
104
- removeDrawLineFn(fnName: string): void;
105
- showMagnifier(): void;
106
- hideMagnifier(): void;
107
- toggleMagnifier(): void;
108
- /**
109
- * 擦除画布,释放 store 上的 pens
110
- * @param render 是否重绘
111
- */
112
- clear(render?: boolean, template?: string): void;
113
- emit<T = any>(type: EventType, event?: T): void;
114
- emit(type: '*', event?: any): void;
115
- on<T = any>(type: EventType, handler: Handler<T>): Meta2d;
116
- on(type: '*', handler: WildcardHandler): Meta2d;
117
- off<T = any>(type: EventType, handler: Handler<T>): Meta2d;
118
- off(type: '*', handler: WildcardHandler): Meta2d;
119
- register: typeof register;
120
- registerCanvasDraw: typeof registerCanvasDraw;
121
- registerAnchors: typeof registerAnchors;
122
- registerMoveDock(dock: (store: Meta2dStore, rect: Rect, pens: Pen[], offset: Point) => {
123
- xDock: Point;
124
- yDock: Point;
125
- }): void;
126
- /**
127
- * 参数同方法 registerMoveDock ,最后一个参数由 offset 偏移修改成了当前 resize 的点
128
- */
129
- registerResizeDock(dock: (store: Meta2dStore, rect: Rect, pens: Pen[], resizeIndex: number) => {
130
- xDock: Point;
131
- yDock: Point;
132
- }): void;
133
- find(id: string): Pen[];
134
- find(tag: string): Pen[];
135
- /**
136
- * 使用 Array.find 找到即返回,否则返回 undefined
137
- */
138
- findOne(id: string): Pen | undefined;
139
- findOne(tag: string): Pen | undefined;
140
- getPenRect(pen: Pen): {
141
- x: number;
142
- y: number;
143
- width: number;
144
- height: number;
145
- };
146
- setPenRect(pen: Pen, rect: Rect, render?: boolean): void;
147
- startAnimate(idOrTagOrPens?: string | Pen[], params?: number | string): void;
148
- pauseAnimate(idOrTagOrPens?: string | Pen[]): void;
149
- stopAnimate(idOrTagOrPens?: string | Pen[]): void;
150
- startVideo(idOrTagOrPens?: string | Pen[]): void;
151
- pauseVideo(idOrTagOrPens?: string | Pen[]): void;
152
- stopVideo(idOrTagOrPens?: string | Pen[]): void;
153
- calcAnimateDuration(pen: Pen): number;
154
- /**
155
- * 组合
156
- * @param pens 组合的画笔们
157
- * @param showChild 组合后展示第几个孩子
158
- */
159
- combine(pens?: Pen[], showChild?: number): any;
160
- uncombine(pen?: Pen): void;
161
- appendChild(pens?: Pen[]): void;
162
- isCombine(pen: Pen): boolean;
163
- active(pens: Pen[], emit?: boolean): void;
164
- inactive(): void;
165
- activeAll(): void;
166
- /**
167
- * 删除画笔
168
- * @param pens 需要删除的画笔们
169
- * @param canDelLocked 是否删除已经锁住的画笔
170
- */
171
- delete(pens?: Pen[], canDelLocked?: boolean, history?: boolean): void;
172
- scale(scale: number, center?: {
173
- x: number;
174
- y: number;
175
- }): void;
176
- translate(x: number, y: number): void;
177
- translatePens(pens: Pen[], x: number, y: number): void;
178
- getParent(pen: Pen, root?: boolean): Pen;
179
- getAllChildren(pen: Pen): Pen[];
180
- getAllFollowers(pen: Pen): Pen[];
181
- data(): Meta2dData;
182
- copy(pens?: Pen[]): void;
183
- cut(pens?: Pen[]): void;
184
- paste(): void;
185
- undo(): void;
186
- redo(): void;
187
- listenSocket(): boolean;
188
- websocketTimes: number;
189
- connectWebsocket(websocket?: string): void;
190
- closeWebsocket(): void;
191
- mqttTimes: number;
192
- connectMqtt(params?: {
193
- mqtt: string;
194
- mqttTopics: string;
195
- mqttOptions?: {
196
- clientId?: string;
197
- username?: string;
198
- password?: string;
199
- customClientId?: boolean;
200
- };
201
- }): void;
202
- closeMqtt(): void;
203
- httpTimer: any;
204
- httpTimerList: any[];
205
- connectHttp(): void;
206
- oldRequestHttp(_req: HttpOptions): Promise<void>;
207
- sendDatabyHttp(data: string): Promise<void>;
208
- closeHttp(): void;
209
- updateTimer: any;
210
- updateTimerList: any[];
211
- connectNetwork(): void;
212
- connectNetWebSocket(net: Network): void;
213
- randomString(e: number): string;
214
- mockValue(data: any): any;
215
- dataMock(): void;
216
- startDataMock(): void;
217
- stopDataMock(): void;
218
- penMock(pen: Pen): void;
219
- penNetwork(pen: Pen): void;
220
- getDynamicParam(key: string): any;
221
- onNetworkConnect(https: Network[]): void;
222
- requestHttp(_req: Network): Promise<void>;
223
- closeNetwork(): void;
224
- socketCallback(message: string, context?: {
225
- type?: string;
226
- topic?: string;
227
- url?: string;
228
- }): void;
229
- setDatas(datas: {
230
- dataId?: string;
231
- id?: string;
232
- value: any;
233
- }[], { render, doEvent, history, }?: {
234
- render?: boolean;
235
- doEvent?: boolean;
236
- history?: boolean;
237
- }): void;
238
- setValue(data: IValue, { render, doEvent, history, }?: {
239
- render?: boolean;
240
- doEvent?: boolean;
241
- history?: boolean;
242
- }): void;
243
- /**
244
- * @deprecated 改用 setValue
245
- */
246
- _setValue(data: IValue, history?: boolean): void;
247
- pushHistory(action: EditAction): void;
248
- showInput(pen: Pen, rect?: Rect): void;
249
- hideInput(): void;
250
- clearDropdownList(): void;
251
- clearRuleLines(): void;
252
- private onEvent;
253
- private doEvent;
254
- doDataEvent: (datas: {
255
- dataId?: string;
256
- id?: string;
257
- value: any;
258
- }[]) => void;
259
- initGlobalTriggers(): void;
260
- initMessageEvents(): void;
261
- dataJudegeCondition(data: any, key: string, condition: TriggerCondition): boolean;
262
- judgeCondition(pen: Pen, key: string, condition: TriggerCondition): boolean;
263
- pushChildren(parent: Pen, children: Pen[]): void;
264
- renderPenRaw: typeof renderPenRaw;
265
- toPng(padding?: Padding, callback?: BlobCallback, containBkImg?: boolean, maxWidth?: number): string;
266
- activeToPng(padding?: Padding, maxWidth?: number): string;
267
- pensToPng(pens?: Pen[], padding?: Padding, maxWidth?: number): string;
268
- /**
269
- * 下载 png
270
- * @param name 传入参数自带文件后缀名 例如:'test.png'
271
- * @param padding 上右下左的内边距
272
- */
273
- downloadPng(name?: string, padding?: Padding, maxWidth?: number): void;
274
- downloadSvg(): void;
275
- getRect(pens?: Pen[]): Rect;
276
- hiddenTemplate(): void;
277
- showTemplate(): void;
278
- lockTemplate(lock: LockState): void;
279
- /**
280
- * 放大到屏幕尺寸,并居中
281
- * @param fit true,填满但完整展示;false,填满,但长边可能截取(即显示不完整)
282
- */
283
- fitView(fit?: boolean, viewPadding?: Padding): void;
284
- fillView(): void;
285
- trimPens(): void;
286
- /**
287
- * 放大到屏幕尺寸,并居中
288
- * @param fit true,填满但完整展示;false,填满,但长边可能截取(即显示不完整)
289
- */
290
- fitTemplateView(fit?: boolean, viewPadding?: Padding): void;
291
- fitSizeView(fit?: boolean | string, viewPadding?: Padding): void;
292
- centerSizeView(): void;
293
- /**
294
- * 宽度放大到屏幕尺寸,并滚动到最顶部
295
- *
296
- */
297
- scrollView(viewPadding?: Padding, pageMode?: boolean): void;
298
- screenView(viewPadding?: Padding, WorH?: boolean): void;
299
- topView(paddingTop?: number): void;
300
- centerView(): void;
301
- /**
302
- * 画布是否有 画笔
303
- * RuleLine 不算
304
- */
305
- hasView(): boolean;
306
- private getViewCenter;
307
- /**
308
- * 大小相同
309
- * @param pens 画笔们
310
- */
311
- beSameByFirst(pens?: Pen[], attribute?: string): void;
312
- /**
313
- * 大小相同
314
- * @param pens 画笔们
315
- */
316
- beSameByLast(pens?: Pen[], attribute?: string): void;
317
- /**
318
- * 格式刷(样式相同,大小无需一致。)
319
- * @param pens 画笔们
320
- */
321
- formatPainterByFirst(pens?: Pen[]): void;
322
- /**
323
- * 格式刷(样式相同,大小无需一致。)
324
- * @param pens 画笔们
325
- */
326
- formatPainterByLast(pens?: Pen[]): void;
327
- setFormatPainter(): void;
328
- formatPainter(): void;
329
- clearFormatPainter(): void;
330
- alignNodes(align: string, pens?: Pen[], rect?: Rect): void;
331
- alignNodesV(align: string, pens?: Pen[]): void;
332
- /**
333
- * 对齐画笔,基于第一个画笔
334
- * @param align 左对齐,右对齐,上对齐,下对齐,居中对齐
335
- * @param pens
336
- */
337
- alignNodesByFirst(align: string, pens?: Pen[]): void;
338
- /**
339
- * 对齐画笔,基于最后选中的画笔
340
- * @param align 左对齐,右对齐,上对齐,下对齐,居中对齐
341
- * @param pens
342
- */
343
- alignNodesByLast(align: string, pens?: Pen[]): void;
344
- /**
345
- * 将画笔参照 rect 进行 align 对齐
346
- * @param align 左对齐,右对齐,上对齐,下对齐,居中对齐
347
- * @param pen 当前需要对齐的画笔
348
- * @param rect 参照矩形
349
- * @returns
350
- */
351
- private alignPen;
352
- /**
353
- * 水平或垂直方向的均分
354
- * @param direction 方向,width 说明水平方向间距相同
355
- * @param pens 节点们,默认全部的
356
- * @param distance 总的宽 or 高
357
- */
358
- private spaceBetweenByDirection;
359
- spaceBetween(pens?: Pen[], width?: number): void;
360
- spaceBetweenColumn(pens?: Pen[], height?: number): void;
361
- layout(pens?: Pen[], width?: number, space?: number): void;
362
- gotoView(pen: Pen): void;
363
- showMap(): void;
364
- hideMap(): void;
365
- onSizeUpdate(): void;
366
- toggleAnchorMode(): void;
367
- addAnchorHand(): void;
368
- removeAnchorHand(): void;
369
- toggleAnchorHand(): void;
370
- /**
371
- * 将该画笔置顶,即放到数组最后,最后绘制即在顶部
372
- * @param pens pen 置顶的画笔
373
- */
374
- top(pens?: Pen | Pen[]): void;
375
- /**
376
- * 若本次改变的画笔存在图片,并且在上层 or 下层,需要擦除上层 or 下层
377
- * 子节点中包含图片,也需要重绘
378
- * @param pens 本次改变的 pens
379
- */
380
- initImageCanvas(pens: Pen[]): void;
381
- /**
382
- * 模版图元图层改变
383
- * @param pens 本次改变的 pens
384
- */
385
- initTemplateCanvas(pens: Pen[]): void;
386
- /**
387
- * 该画笔置底,即放到数组最前,最后绘制即在底部
388
- * @param pens 画笔们,注意 pen 必须在该数组内才有效
389
- */
390
- bottom(pens?: Pen | Pen[]): void;
391
- /**
392
- * data.pens 决定了绘制顺序,即越后面的越在上层
393
- * 该方法通过区域重叠计算,找出该画笔之后第一个与其重叠的画笔,然后把该画笔放到找出的画笔之后
394
- * @param pen 画笔
395
- */
396
- upByArea(pen: Pen): void;
397
- specificLayerMove(pen: Pen, type: string): void;
398
- /**
399
- * 该画笔上移,即把该画笔在数组中的位置向后移动一个
400
- * @param pens 画笔
401
- */
402
- up(pens?: Pen | Pen[]): void;
403
- /**
404
- * 该画笔下移,即把该画笔在该数组中的位置前移一个
405
- * @param pen 画笔
406
- */
407
- down(pens?: Pen | Pen[]): void;
408
- setLayer(pen: Pen, toIndex: number, pens?: Pen[]): void;
409
- changePenId(oldId: string, newId: string): void;
410
- /**
411
- * 得到与当前节点连接的线
412
- * @param node 节点,非连线
413
- * @param type 类型,全部的连接线/入线/出线
414
- */
415
- getLines(node: Pen, type?: 'all' | 'in' | 'out'): Pen[];
416
- /**
417
- * 得到当前节点的下一个节点,即出口节点数组
418
- * 得到当前连线的出口节点
419
- * @param pen 节点或连线
420
- */
421
- nextNode(pen: Pen): Pen[];
422
- /**
423
- * 得到当前节点的上一个节点,即入口节点数组
424
- * 得到当前连线的入口节点
425
- * @param pen 节点或连线
426
- */
427
- previousNode(pen: Pen): Pen[];
428
- /**
429
- * 获取节点所有的下一个连接关系
430
- * @param pen
431
- *
432
- */
433
- getNext(pen: Pen): any[];
434
- /**
435
- * 为画布添加锚点
436
- * @param pen 画笔
437
- * @param anchor 待添加锚点
438
- * @param index 连线类型 添加锚点到哪个位置
439
- */
440
- addAnchor(pen: Pen, anchor: Point, index?: number): void;
441
- /**
442
- *
443
- * @param from 连接节点
444
- * @param fromAnchor 连接节点锚点
445
- * @param to 被连接节点
446
- * @param toAnchor 被连接节点锚点
447
- */
448
- connectLine(from: Pen, to: Pen, fromAnchor?: Point, toAnchor?: Point, render?: boolean): Pen;
449
- /**
450
- * 生成一个拷贝组合后的 画笔数组(组合图形),不影响原画布画笔,常用作 二次复用的组件
451
- * @param pens 画笔数组
452
- * @param showChild 是否作为状态复用(参考 combine showChild)
453
- * @param anchor 是否产生默认的锚点
454
- * @returns 组合图形
455
- */
456
- toComponent(pens?: Pen[], showChild?: number, anchor?: boolean): Pen[];
457
- /**
458
- * @description 安装插件方法
459
- * @param plugins 插件列表及其配置项
460
- * @param pen {string | Pen} 接受tag、name、或者Pen对象*/
461
- installPenPlugins(pen: {
462
- tag?: string;
463
- name?: string;
464
- id?: string;
465
- }, plugins: PluginOptions[]): void;
466
- uninstallPenPlugins(pen: {
467
- tag?: string;
468
- name?: string;
469
- id?: string;
470
- }, plugins: PluginOptions[]): void;
471
- setVisible(pen: Pen, visible: boolean, render?: boolean): void;
472
- clearHover(): void;
473
- closeSocket(): void;
474
- setElemPosition: typeof setElemPosition;
475
- setLifeCycleFunc: (pen: Pen, lifeCycle: any, func: Function, del?: boolean) => () => void;
476
- destroy(onlyData?: boolean): void;
477
- }