@visactor/vrender-kits 0.15.2 → 0.16.0-alpha.0

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 (603) hide show
  1. package/cjs/canvas/contributions/browser/canvas.d.ts +17 -0
  2. package/cjs/canvas/contributions/browser/canvas.js +73 -0
  3. package/cjs/canvas/contributions/browser/canvas.js.map +1 -0
  4. package/cjs/canvas/contributions/browser/context.d.ts +174 -0
  5. package/cjs/canvas/contributions/browser/context.js +493 -0
  6. package/cjs/canvas/contributions/browser/context.js.map +1 -0
  7. package/cjs/canvas/contributions/browser/index.d.ts +2 -0
  8. package/cjs/canvas/contributions/browser/index.js +21 -0
  9. package/cjs/canvas/contributions/browser/index.js.map +1 -0
  10. package/cjs/canvas/contributions/browser/modules.d.ts +1 -0
  11. package/cjs/canvas/contributions/browser/modules.js +10 -0
  12. package/cjs/canvas/contributions/browser/modules.js.map +1 -0
  13. package/cjs/canvas/contributions/create-canvas-module.d.ts +2 -0
  14. package/cjs/canvas/contributions/create-canvas-module.js +17 -0
  15. package/cjs/canvas/contributions/create-canvas-module.js.map +1 -0
  16. package/cjs/canvas/contributions/feishu/canvas.d.ts +8 -0
  17. package/cjs/canvas/contributions/feishu/canvas.js +29 -0
  18. package/cjs/canvas/contributions/feishu/canvas.js.map +1 -0
  19. package/cjs/canvas/contributions/feishu/context.d.ts +12 -0
  20. package/cjs/canvas/contributions/feishu/context.js +56 -0
  21. package/cjs/canvas/contributions/feishu/context.js.map +1 -0
  22. package/cjs/canvas/contributions/feishu/index.d.ts +2 -0
  23. package/cjs/canvas/contributions/feishu/index.js +21 -0
  24. package/cjs/canvas/contributions/feishu/index.js.map +1 -0
  25. package/cjs/canvas/contributions/feishu/modules.d.ts +1 -0
  26. package/cjs/canvas/contributions/feishu/modules.js +10 -0
  27. package/cjs/canvas/contributions/feishu/modules.js.map +1 -0
  28. package/cjs/canvas/contributions/lynx/canvas.d.ts +8 -0
  29. package/cjs/canvas/contributions/lynx/canvas.js +29 -0
  30. package/cjs/canvas/contributions/lynx/canvas.js.map +1 -0
  31. package/cjs/canvas/contributions/lynx/context.d.ts +13 -0
  32. package/cjs/canvas/contributions/lynx/context.js +57 -0
  33. package/cjs/canvas/contributions/lynx/context.js.map +1 -0
  34. package/cjs/canvas/contributions/lynx/index.d.ts +2 -0
  35. package/cjs/canvas/contributions/lynx/index.js +21 -0
  36. package/cjs/canvas/contributions/lynx/index.js.map +1 -0
  37. package/cjs/canvas/contributions/lynx/modules.d.ts +1 -0
  38. package/cjs/canvas/contributions/lynx/modules.js +10 -0
  39. package/cjs/canvas/contributions/lynx/modules.js.map +1 -0
  40. package/cjs/canvas/contributions/modules.d.ts +9 -0
  41. package/cjs/canvas/contributions/modules.js +48 -0
  42. package/cjs/canvas/contributions/modules.js.map +1 -0
  43. package/cjs/canvas/contributions/node/canvas.d.ts +8 -1
  44. package/cjs/canvas/contributions/node/canvas.js +30 -1
  45. package/cjs/canvas/contributions/node/canvas.js.map +1 -1
  46. package/cjs/canvas/contributions/node/context.d.ts +7 -1
  47. package/cjs/canvas/contributions/node/context.js +30 -1
  48. package/cjs/canvas/contributions/node/context.js.map +1 -1
  49. package/cjs/canvas/contributions/node/index.d.ts +2 -1
  50. package/cjs/canvas/contributions/node/index.js +21 -1
  51. package/cjs/canvas/contributions/node/index.js.map +1 -1
  52. package/cjs/canvas/contributions/node/modules.d.ts +1 -1
  53. package/cjs/canvas/contributions/node/modules.js +10 -1
  54. package/cjs/canvas/contributions/node/modules.js.map +1 -1
  55. package/cjs/canvas/contributions/taro/canvas.d.ts +8 -0
  56. package/cjs/canvas/contributions/taro/canvas.js +29 -0
  57. package/cjs/canvas/contributions/taro/canvas.js.map +1 -0
  58. package/cjs/canvas/contributions/taro/context.d.ts +32 -0
  59. package/cjs/canvas/contributions/taro/context.js +68 -0
  60. package/cjs/canvas/contributions/taro/context.js.map +1 -0
  61. package/cjs/canvas/contributions/taro/index.d.ts +2 -0
  62. package/cjs/canvas/contributions/taro/index.js +21 -0
  63. package/cjs/canvas/contributions/taro/index.js.map +1 -0
  64. package/cjs/canvas/contributions/taro/modules.d.ts +1 -0
  65. package/cjs/canvas/contributions/taro/modules.js +10 -0
  66. package/cjs/canvas/contributions/taro/modules.js.map +1 -0
  67. package/cjs/canvas/contributions/tt/canvas.d.ts +8 -0
  68. package/cjs/canvas/contributions/tt/canvas.js +29 -0
  69. package/cjs/canvas/contributions/tt/canvas.js.map +1 -0
  70. package/cjs/canvas/contributions/tt/context.d.ts +5 -0
  71. package/cjs/canvas/contributions/tt/context.js +19 -0
  72. package/cjs/canvas/contributions/tt/context.js.map +1 -0
  73. package/cjs/canvas/contributions/tt/index.d.ts +2 -0
  74. package/cjs/canvas/contributions/tt/index.js +21 -0
  75. package/cjs/canvas/contributions/tt/index.js.map +1 -0
  76. package/cjs/canvas/contributions/tt/modules.d.ts +1 -0
  77. package/cjs/canvas/contributions/tt/modules.js +10 -0
  78. package/cjs/canvas/contributions/tt/modules.js.map +1 -0
  79. package/cjs/canvas/contributions/wx/canvas.d.ts +8 -0
  80. package/cjs/canvas/contributions/wx/canvas.js +29 -0
  81. package/cjs/canvas/contributions/wx/canvas.js.map +1 -0
  82. package/cjs/canvas/contributions/wx/context.d.ts +7 -0
  83. package/cjs/canvas/contributions/wx/context.js +24 -0
  84. package/cjs/canvas/contributions/wx/context.js.map +1 -0
  85. package/cjs/canvas/contributions/wx/index.d.ts +2 -0
  86. package/cjs/canvas/contributions/wx/index.js +21 -0
  87. package/cjs/canvas/contributions/wx/index.js.map +1 -0
  88. package/cjs/canvas/contributions/wx/modules.d.ts +1 -0
  89. package/cjs/canvas/contributions/wx/modules.js +10 -0
  90. package/cjs/canvas/contributions/wx/modules.js.map +1 -0
  91. package/cjs/canvas/index.d.ts +1 -1
  92. package/cjs/canvas/index.js +21 -1
  93. package/cjs/canvas/index.js.map +1 -1
  94. package/cjs/env/contributions/browser-contribution.d.ts +42 -0
  95. package/cjs/env/contributions/browser-contribution.js +197 -0
  96. package/cjs/env/contributions/browser-contribution.js.map +1 -0
  97. package/cjs/env/contributions/feishu-contribution.d.ts +41 -0
  98. package/cjs/env/contributions/feishu-contribution.js +116 -0
  99. package/cjs/env/contributions/feishu-contribution.js.map +1 -0
  100. package/cjs/env/contributions/lynx-contribution.d.ts +41 -0
  101. package/cjs/env/contributions/lynx-contribution.js +136 -0
  102. package/cjs/env/contributions/lynx-contribution.js.map +1 -0
  103. package/cjs/env/contributions/module.d.ts +9 -1
  104. package/cjs/env/contributions/module.js +33 -1
  105. package/cjs/env/contributions/module.js.map +1 -1
  106. package/cjs/env/contributions/node-contribution.d.ts +49 -1
  107. package/cjs/env/contributions/node-contribution.js +95 -1
  108. package/cjs/env/contributions/node-contribution.js.map +1 -1
  109. package/cjs/env/contributions/taro-contribution.d.ts +57 -0
  110. package/cjs/env/contributions/taro-contribution.js +142 -0
  111. package/cjs/env/contributions/taro-contribution.js.map +1 -0
  112. package/cjs/env/contributions/wx-contribution.d.ts +40 -0
  113. package/cjs/env/contributions/wx-contribution.js +131 -0
  114. package/cjs/env/contributions/wx-contribution.js.map +1 -0
  115. package/cjs/env/index.d.ts +1 -0
  116. package/cjs/env/index.js +21 -0
  117. package/cjs/env/index.js.map +1 -0
  118. package/cjs/env/modules.d.ts +8 -0
  119. package/cjs/env/modules.js +47 -0
  120. package/cjs/env/modules.js.map +1 -0
  121. package/cjs/event/extension/drag.d.ts +9 -0
  122. package/cjs/event/extension/drag.js +54 -0
  123. package/cjs/event/extension/drag.js.map +1 -0
  124. package/cjs/event/extension/gesture.d.ts +38 -0
  125. package/cjs/event/extension/gesture.js +181 -0
  126. package/cjs/event/extension/gesture.js.map +1 -0
  127. package/cjs/event/extension/index.d.ts +3 -0
  128. package/cjs/event/extension/index.js +24 -0
  129. package/cjs/event/extension/index.js.map +1 -0
  130. package/cjs/index-node.d.ts +1 -2
  131. package/cjs/index-node.js +1 -1
  132. package/cjs/index-node.js.map +1 -1
  133. package/cjs/index.d.ts +7 -2
  134. package/cjs/index.js +19 -3
  135. package/cjs/index.js.map +1 -1
  136. package/cjs/jsx/graphicType.d.ts +171 -0
  137. package/cjs/jsx/graphicType.js +133 -0
  138. package/cjs/jsx/graphicType.js.map +1 -0
  139. package/cjs/jsx/index.d.ts +2 -0
  140. package/cjs/jsx/index.js +21 -0
  141. package/cjs/jsx/index.js.map +1 -0
  142. package/cjs/jsx/jsx-classic.d.ts +3 -0
  143. package/cjs/jsx/jsx-classic.js +58 -0
  144. package/cjs/jsx/jsx-classic.js.map +1 -0
  145. package/cjs/picker/canvas-picker-service.d.ts +28 -0
  146. package/cjs/picker/canvas-picker-service.js +90 -0
  147. package/cjs/picker/canvas-picker-service.js.map +1 -0
  148. package/cjs/picker/contributions/canvas-picker/arc-picker.d.ts +9 -0
  149. package/cjs/picker/contributions/canvas-picker/arc-picker.js +51 -0
  150. package/cjs/picker/contributions/canvas-picker/arc-picker.js.map +1 -0
  151. package/cjs/picker/contributions/canvas-picker/arc3d-picker.d.ts +10 -0
  152. package/cjs/picker/contributions/canvas-picker/arc3d-picker.js +50 -0
  153. package/cjs/picker/contributions/canvas-picker/arc3d-picker.js.map +1 -0
  154. package/cjs/picker/contributions/canvas-picker/area-picker.d.ts +9 -0
  155. package/cjs/picker/contributions/canvas-picker/area-picker.js +45 -0
  156. package/cjs/picker/contributions/canvas-picker/area-picker.js.map +1 -0
  157. package/cjs/picker/contributions/canvas-picker/base-picker.d.ts +4 -0
  158. package/cjs/picker/contributions/canvas-picker/base-picker.js +18 -0
  159. package/cjs/picker/contributions/canvas-picker/base-picker.js.map +1 -0
  160. package/cjs/picker/contributions/canvas-picker/circle-picker.d.ts +9 -0
  161. package/cjs/picker/contributions/canvas-picker/circle-picker.js +50 -0
  162. package/cjs/picker/contributions/canvas-picker/circle-picker.js.map +1 -0
  163. package/cjs/picker/contributions/canvas-picker/glyph-picker.d.ts +9 -0
  164. package/cjs/picker/contributions/canvas-picker/glyph-picker.js +44 -0
  165. package/cjs/picker/contributions/canvas-picker/glyph-picker.js.map +1 -0
  166. package/cjs/picker/contributions/canvas-picker/group-picker.d.ts +7 -0
  167. package/cjs/picker/contributions/canvas-picker/group-picker.js +26 -0
  168. package/cjs/picker/contributions/canvas-picker/group-picker.js.map +1 -0
  169. package/cjs/picker/contributions/canvas-picker/image-picker.d.ts +7 -0
  170. package/cjs/picker/contributions/canvas-picker/image-picker.js +27 -0
  171. package/cjs/picker/contributions/canvas-picker/image-picker.js.map +1 -0
  172. package/cjs/picker/contributions/canvas-picker/line-picker.d.ts +10 -0
  173. package/cjs/picker/contributions/canvas-picker/line-picker.js +56 -0
  174. package/cjs/picker/contributions/canvas-picker/line-picker.js.map +1 -0
  175. package/cjs/picker/contributions/canvas-picker/module.d.ts +3 -0
  176. package/cjs/picker/contributions/canvas-picker/module.js +46 -0
  177. package/cjs/picker/contributions/canvas-picker/module.js.map +1 -0
  178. package/cjs/picker/contributions/canvas-picker/path-picker.d.ts +10 -0
  179. package/cjs/picker/contributions/canvas-picker/path-picker.js +57 -0
  180. package/cjs/picker/contributions/canvas-picker/path-picker.js.map +1 -0
  181. package/cjs/picker/contributions/canvas-picker/polygon-picker.d.ts +9 -0
  182. package/cjs/picker/contributions/canvas-picker/polygon-picker.js +49 -0
  183. package/cjs/picker/contributions/canvas-picker/polygon-picker.js.map +1 -0
  184. package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.d.ts +10 -0
  185. package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.js +51 -0
  186. package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.js.map +1 -0
  187. package/cjs/picker/contributions/canvas-picker/rect-picker.d.ts +9 -0
  188. package/cjs/picker/contributions/canvas-picker/rect-picker.js +62 -0
  189. package/cjs/picker/contributions/canvas-picker/rect-picker.js.map +1 -0
  190. package/cjs/picker/contributions/canvas-picker/rect3d-picker.d.ts +10 -0
  191. package/cjs/picker/contributions/canvas-picker/rect3d-picker.js +50 -0
  192. package/cjs/picker/contributions/canvas-picker/rect3d-picker.js.map +1 -0
  193. package/cjs/picker/contributions/canvas-picker/richtext-picker.d.ts +9 -0
  194. package/cjs/picker/contributions/canvas-picker/richtext-picker.js +33 -0
  195. package/cjs/picker/contributions/canvas-picker/richtext-picker.js.map +1 -0
  196. package/cjs/picker/contributions/canvas-picker/symbol-picker.d.ts +10 -0
  197. package/cjs/picker/contributions/canvas-picker/symbol-picker.js +59 -0
  198. package/cjs/picker/contributions/canvas-picker/symbol-picker.js.map +1 -0
  199. package/cjs/picker/contributions/canvas-picker/text-picker.d.ts +10 -0
  200. package/cjs/picker/contributions/canvas-picker/text-picker.js +58 -0
  201. package/cjs/picker/contributions/canvas-picker/text-picker.js.map +1 -0
  202. package/cjs/picker/contributions/constants.d.ts +29 -0
  203. package/cjs/picker/contributions/constants.js +21 -0
  204. package/cjs/picker/contributions/constants.js.map +1 -0
  205. package/cjs/picker/contributions/math-picker/arc-picker.d.ts +9 -0
  206. package/cjs/picker/contributions/math-picker/arc-picker.js +51 -0
  207. package/cjs/picker/contributions/math-picker/arc-picker.js.map +1 -0
  208. package/cjs/picker/contributions/math-picker/area-picker.d.ts +9 -0
  209. package/cjs/picker/contributions/math-picker/area-picker.js +45 -0
  210. package/cjs/picker/contributions/math-picker/area-picker.js.map +1 -0
  211. package/cjs/picker/contributions/math-picker/circle-picker.d.ts +9 -0
  212. package/cjs/picker/contributions/math-picker/circle-picker.js +50 -0
  213. package/cjs/picker/contributions/math-picker/circle-picker.js.map +1 -0
  214. package/cjs/picker/contributions/math-picker/glyph-picker.d.ts +9 -0
  215. package/cjs/picker/contributions/math-picker/glyph-picker.js +44 -0
  216. package/cjs/picker/contributions/math-picker/glyph-picker.js.map +1 -0
  217. package/cjs/picker/contributions/math-picker/line-picker.d.ts +9 -0
  218. package/cjs/picker/contributions/math-picker/line-picker.js +50 -0
  219. package/cjs/picker/contributions/math-picker/line-picker.js.map +1 -0
  220. package/cjs/picker/contributions/math-picker/module.d.ts +3 -0
  221. package/cjs/picker/contributions/math-picker/module.js +32 -0
  222. package/cjs/picker/contributions/math-picker/module.js.map +1 -0
  223. package/cjs/picker/contributions/math-picker/path-picker.d.ts +9 -0
  224. package/cjs/picker/contributions/math-picker/path-picker.js +50 -0
  225. package/cjs/picker/contributions/math-picker/path-picker.js.map +1 -0
  226. package/cjs/picker/contributions/math-picker/polygon-picker.d.ts +9 -0
  227. package/cjs/picker/contributions/math-picker/polygon-picker.js +49 -0
  228. package/cjs/picker/contributions/math-picker/polygon-picker.js.map +1 -0
  229. package/cjs/picker/contributions/math-picker/rect-picker.d.ts +9 -0
  230. package/cjs/picker/contributions/math-picker/rect-picker.js +62 -0
  231. package/cjs/picker/contributions/math-picker/rect-picker.js.map +1 -0
  232. package/cjs/picker/contributions/math-picker/symbol-picker.d.ts +9 -0
  233. package/cjs/picker/contributions/math-picker/symbol-picker.js +50 -0
  234. package/cjs/picker/contributions/math-picker/symbol-picker.js.map +1 -0
  235. package/cjs/picker/contributions/math-picker/text-picker.d.ts +7 -0
  236. package/cjs/picker/contributions/math-picker/text-picker.js +26 -0
  237. package/cjs/picker/contributions/math-picker/text-picker.js.map +1 -0
  238. package/cjs/picker/index.d.ts +1 -0
  239. package/cjs/picker/index.js +21 -0
  240. package/cjs/picker/index.js.map +1 -0
  241. package/cjs/picker/math-picker-service.d.ts +16 -0
  242. package/cjs/picker/math-picker-service.js +50 -0
  243. package/cjs/picker/math-picker-service.js.map +1 -0
  244. package/cjs/picker/module.d.ts +6 -0
  245. package/cjs/picker/module.js +30 -0
  246. package/cjs/picker/module.js.map +1 -0
  247. package/cjs/render/contributions/rough/config.js +1 -1
  248. package/cjs/render/contributions/rough/module.d.ts +1 -1
  249. package/cjs/render/contributions/rough/module.js +10 -10
  250. package/cjs/render/contributions/rough/module.js.map +1 -1
  251. package/cjs/render/contributions/rough/rough-arc.d.ts +1 -1
  252. package/cjs/render/contributions/rough/rough-arc.js +10 -8
  253. package/cjs/render/contributions/rough/rough-arc.js.map +1 -1
  254. package/cjs/render/contributions/rough/rough-area.d.ts +2 -2
  255. package/cjs/render/contributions/rough/rough-area.js +6 -6
  256. package/cjs/render/contributions/rough/rough-area.js.map +1 -1
  257. package/cjs/render/contributions/rough/rough-circle.d.ts +1 -1
  258. package/cjs/render/contributions/rough/rough-circle.js +6 -6
  259. package/cjs/render/contributions/rough/rough-circle.js.map +1 -1
  260. package/cjs/render/contributions/rough/rough-line.d.ts +2 -2
  261. package/cjs/render/contributions/rough/rough-line.js +6 -6
  262. package/cjs/render/contributions/rough/rough-line.js.map +1 -1
  263. package/cjs/render/contributions/rough/rough-path.d.ts +1 -1
  264. package/cjs/render/contributions/rough/rough-path.js +6 -6
  265. package/cjs/render/contributions/rough/rough-path.js.map +1 -1
  266. package/cjs/render/contributions/rough/rough-rect.d.ts +1 -1
  267. package/cjs/render/contributions/rough/rough-rect.js +6 -6
  268. package/cjs/render/contributions/rough/rough-rect.js.map +1 -1
  269. package/cjs/render/contributions/rough/rough-symbol.d.ts +2 -2
  270. package/cjs/render/contributions/rough/rough-symbol.js +8 -8
  271. package/cjs/render/contributions/rough/rough-symbol.js.map +1 -1
  272. package/cjs/window/contributions/browser-contribution.d.ts +48 -0
  273. package/cjs/window/contributions/browser-contribution.js +176 -0
  274. package/cjs/window/contributions/browser-contribution.js.map +1 -0
  275. package/cjs/window/contributions/feishu-contribution.d.ts +46 -0
  276. package/cjs/window/contributions/feishu-contribution.js +157 -0
  277. package/cjs/window/contributions/feishu-contribution.js.map +1 -0
  278. package/cjs/window/contributions/lynx-contribution.d.ts +46 -0
  279. package/cjs/window/contributions/lynx-contribution.js +157 -0
  280. package/cjs/window/contributions/lynx-contribution.js.map +1 -0
  281. package/cjs/window/contributions/modules.d.ts +8 -1
  282. package/cjs/window/contributions/modules.js +29 -1
  283. package/cjs/window/contributions/modules.js.map +1 -1
  284. package/cjs/window/contributions/native-contribution.js +3 -0
  285. package/cjs/window/contributions/native-contribution.js.map +1 -0
  286. package/cjs/window/contributions/node-contribution.d.ts +39 -1
  287. package/cjs/window/contributions/node-contribution.js +109 -1
  288. package/cjs/window/contributions/node-contribution.js.map +1 -1
  289. package/cjs/window/contributions/taro-contribution.d.ts +46 -0
  290. package/cjs/window/contributions/taro-contribution.js +164 -0
  291. package/cjs/window/contributions/taro-contribution.js.map +1 -0
  292. package/cjs/window/contributions/wx-contribution.d.ts +46 -0
  293. package/cjs/window/contributions/wx-contribution.js +159 -0
  294. package/cjs/window/contributions/wx-contribution.js.map +1 -0
  295. package/cjs/window/index.d.ts +1 -0
  296. package/cjs/window/index.js +21 -0
  297. package/cjs/window/index.js.map +1 -0
  298. package/dist/index.js +22974 -2106
  299. package/dist/index.min.js +1 -1
  300. package/es/canvas/contributions/browser/canvas.d.ts +17 -0
  301. package/es/canvas/contributions/browser/canvas.js +70 -0
  302. package/es/canvas/contributions/browser/canvas.js.map +1 -0
  303. package/es/canvas/contributions/browser/context.d.ts +174 -0
  304. package/es/canvas/contributions/browser/context.js +488 -0
  305. package/es/canvas/contributions/browser/context.js.map +1 -0
  306. package/es/canvas/contributions/browser/index.d.ts +2 -0
  307. package/es/canvas/contributions/browser/index.js +4 -0
  308. package/es/canvas/contributions/browser/index.js.map +1 -0
  309. package/es/canvas/contributions/browser/modules.d.ts +1 -0
  310. package/es/canvas/contributions/browser/modules.js +8 -0
  311. package/es/canvas/contributions/browser/modules.js.map +1 -0
  312. package/es/canvas/contributions/create-canvas-module.d.ts +2 -0
  313. package/es/canvas/contributions/create-canvas-module.js +9 -0
  314. package/es/canvas/contributions/create-canvas-module.js.map +1 -0
  315. package/es/canvas/contributions/feishu/canvas.d.ts +8 -0
  316. package/es/canvas/contributions/feishu/canvas.js +26 -0
  317. package/es/canvas/contributions/feishu/canvas.js.map +1 -0
  318. package/es/canvas/contributions/feishu/context.d.ts +12 -0
  319. package/es/canvas/contributions/feishu/context.js +53 -0
  320. package/es/canvas/contributions/feishu/context.js.map +1 -0
  321. package/es/canvas/contributions/feishu/index.d.ts +2 -0
  322. package/es/canvas/contributions/feishu/index.js +4 -0
  323. package/es/canvas/contributions/feishu/index.js.map +1 -0
  324. package/es/canvas/contributions/feishu/modules.d.ts +1 -0
  325. package/es/canvas/contributions/feishu/modules.js +8 -0
  326. package/es/canvas/contributions/feishu/modules.js.map +1 -0
  327. package/es/canvas/contributions/lynx/canvas.d.ts +8 -0
  328. package/es/canvas/contributions/lynx/canvas.js +26 -0
  329. package/es/canvas/contributions/lynx/canvas.js.map +1 -0
  330. package/es/canvas/contributions/lynx/context.d.ts +13 -0
  331. package/es/canvas/contributions/lynx/context.js +54 -0
  332. package/es/canvas/contributions/lynx/context.js.map +1 -0
  333. package/es/canvas/contributions/lynx/index.d.ts +2 -0
  334. package/es/canvas/contributions/lynx/index.js +4 -0
  335. package/es/canvas/contributions/lynx/index.js.map +1 -0
  336. package/es/canvas/contributions/lynx/modules.d.ts +1 -0
  337. package/es/canvas/contributions/lynx/modules.js +8 -0
  338. package/es/canvas/contributions/lynx/modules.js.map +1 -0
  339. package/es/canvas/contributions/modules.d.ts +9 -0
  340. package/es/canvas/contributions/modules.js +48 -0
  341. package/es/canvas/contributions/modules.js.map +1 -0
  342. package/es/canvas/contributions/node/canvas.d.ts +8 -1
  343. package/es/canvas/contributions/node/canvas.js +29 -1
  344. package/es/canvas/contributions/node/canvas.js.map +1 -1
  345. package/es/canvas/contributions/node/context.d.ts +7 -1
  346. package/es/canvas/contributions/node/context.js +29 -1
  347. package/es/canvas/contributions/node/context.js.map +1 -1
  348. package/es/canvas/contributions/node/index.d.ts +2 -1
  349. package/es/canvas/contributions/node/index.js +4 -1
  350. package/es/canvas/contributions/node/index.js.map +1 -1
  351. package/es/canvas/contributions/node/modules.d.ts +1 -1
  352. package/es/canvas/contributions/node/modules.js +8 -1
  353. package/es/canvas/contributions/node/modules.js.map +1 -1
  354. package/es/canvas/contributions/taro/canvas.d.ts +8 -0
  355. package/es/canvas/contributions/taro/canvas.js +28 -0
  356. package/es/canvas/contributions/taro/canvas.js.map +1 -0
  357. package/es/canvas/contributions/taro/context.d.ts +32 -0
  358. package/es/canvas/contributions/taro/context.js +64 -0
  359. package/es/canvas/contributions/taro/context.js.map +1 -0
  360. package/es/canvas/contributions/taro/index.d.ts +2 -0
  361. package/es/canvas/contributions/taro/index.js +4 -0
  362. package/es/canvas/contributions/taro/index.js.map +1 -0
  363. package/es/canvas/contributions/taro/modules.d.ts +1 -0
  364. package/es/canvas/contributions/taro/modules.js +8 -0
  365. package/es/canvas/contributions/taro/modules.js.map +1 -0
  366. package/es/canvas/contributions/tt/canvas.d.ts +8 -0
  367. package/es/canvas/contributions/tt/canvas.js +26 -0
  368. package/es/canvas/contributions/tt/canvas.js.map +1 -0
  369. package/es/canvas/contributions/tt/context.d.ts +5 -0
  370. package/es/canvas/contributions/tt/context.js +16 -0
  371. package/es/canvas/contributions/tt/context.js.map +1 -0
  372. package/es/canvas/contributions/tt/index.d.ts +2 -0
  373. package/es/canvas/contributions/tt/index.js +4 -0
  374. package/es/canvas/contributions/tt/index.js.map +1 -0
  375. package/es/canvas/contributions/tt/modules.d.ts +1 -0
  376. package/es/canvas/contributions/tt/modules.js +8 -0
  377. package/es/canvas/contributions/tt/modules.js.map +1 -0
  378. package/es/canvas/contributions/wx/canvas.d.ts +8 -0
  379. package/es/canvas/contributions/wx/canvas.js +26 -0
  380. package/es/canvas/contributions/wx/canvas.js.map +1 -0
  381. package/es/canvas/contributions/wx/context.d.ts +7 -0
  382. package/es/canvas/contributions/wx/context.js +21 -0
  383. package/es/canvas/contributions/wx/context.js.map +1 -0
  384. package/es/canvas/contributions/wx/index.d.ts +2 -0
  385. package/es/canvas/contributions/wx/index.js +4 -0
  386. package/es/canvas/contributions/wx/index.js.map +1 -0
  387. package/es/canvas/contributions/wx/modules.d.ts +1 -0
  388. package/es/canvas/contributions/wx/modules.js +8 -0
  389. package/es/canvas/contributions/wx/modules.js.map +1 -0
  390. package/es/canvas/index.d.ts +1 -1
  391. package/es/canvas/index.js +2 -1
  392. package/es/canvas/index.js.map +1 -1
  393. package/es/env/contributions/browser-contribution.d.ts +42 -0
  394. package/es/env/contributions/browser-contribution.js +192 -0
  395. package/es/env/contributions/browser-contribution.js.map +1 -0
  396. package/es/env/contributions/feishu-contribution.d.ts +41 -0
  397. package/es/env/contributions/feishu-contribution.js +111 -0
  398. package/es/env/contributions/feishu-contribution.js.map +1 -0
  399. package/es/env/contributions/lynx-contribution.d.ts +41 -0
  400. package/es/env/contributions/lynx-contribution.js +129 -0
  401. package/es/env/contributions/lynx-contribution.js.map +1 -0
  402. package/es/env/contributions/module.d.ts +9 -1
  403. package/es/env/contributions/module.js +51 -1
  404. package/es/env/contributions/module.js.map +1 -1
  405. package/es/env/contributions/node-contribution.d.ts +49 -1
  406. package/es/env/contributions/node-contribution.js +90 -1
  407. package/es/env/contributions/node-contribution.js.map +1 -1
  408. package/es/env/contributions/taro-contribution.d.ts +57 -0
  409. package/es/env/contributions/taro-contribution.js +137 -0
  410. package/es/env/contributions/taro-contribution.js.map +1 -0
  411. package/es/env/contributions/wx-contribution.d.ts +40 -0
  412. package/es/env/contributions/wx-contribution.js +126 -0
  413. package/es/env/contributions/wx-contribution.js.map +1 -0
  414. package/es/env/index.d.ts +1 -0
  415. package/es/env/index.js +2 -0
  416. package/es/env/index.js.map +1 -0
  417. package/es/env/modules.d.ts +8 -0
  418. package/es/env/modules.js +46 -0
  419. package/es/env/modules.js.map +1 -0
  420. package/es/event/extension/drag.d.ts +9 -0
  421. package/es/event/extension/drag.js +46 -0
  422. package/es/event/extension/drag.js.map +1 -0
  423. package/es/event/extension/gesture.d.ts +38 -0
  424. package/es/event/extension/gesture.js +177 -0
  425. package/es/event/extension/gesture.js.map +1 -0
  426. package/es/event/extension/index.d.ts +3 -0
  427. package/es/event/extension/index.js +6 -0
  428. package/es/event/extension/index.js.map +1 -0
  429. package/es/index-node.d.ts +1 -2
  430. package/es/index-node.js +0 -2
  431. package/es/index-node.js.map +1 -1
  432. package/es/index.d.ts +7 -2
  433. package/es/index.js +12 -2
  434. package/es/index.js.map +1 -1
  435. package/es/jsx/graphicType.d.ts +171 -0
  436. package/es/jsx/graphicType.js +126 -0
  437. package/es/jsx/graphicType.js.map +1 -0
  438. package/es/jsx/index.d.ts +2 -0
  439. package/es/jsx/index.js +4 -0
  440. package/es/jsx/index.js.map +1 -0
  441. package/es/jsx/jsx-classic.d.ts +3 -0
  442. package/es/jsx/jsx-classic.js +56 -0
  443. package/es/jsx/jsx-classic.js.map +1 -0
  444. package/es/picker/canvas-picker-service.d.ts +28 -0
  445. package/es/picker/canvas-picker-service.js +78 -0
  446. package/es/picker/canvas-picker-service.js.map +1 -0
  447. package/es/picker/contributions/canvas-picker/arc-picker.d.ts +9 -0
  448. package/es/picker/contributions/canvas-picker/arc-picker.js +45 -0
  449. package/es/picker/contributions/canvas-picker/arc-picker.js.map +1 -0
  450. package/es/picker/contributions/canvas-picker/arc3d-picker.d.ts +10 -0
  451. package/es/picker/contributions/canvas-picker/arc3d-picker.js +46 -0
  452. package/es/picker/contributions/canvas-picker/arc3d-picker.js.map +1 -0
  453. package/es/picker/contributions/canvas-picker/area-picker.d.ts +9 -0
  454. package/es/picker/contributions/canvas-picker/area-picker.js +39 -0
  455. package/es/picker/contributions/canvas-picker/area-picker.js.map +1 -0
  456. package/es/picker/contributions/canvas-picker/base-picker.d.ts +4 -0
  457. package/es/picker/contributions/canvas-picker/base-picker.js +14 -0
  458. package/es/picker/contributions/canvas-picker/base-picker.js.map +1 -0
  459. package/es/picker/contributions/canvas-picker/circle-picker.d.ts +9 -0
  460. package/es/picker/contributions/canvas-picker/circle-picker.js +44 -0
  461. package/es/picker/contributions/canvas-picker/circle-picker.js.map +1 -0
  462. package/es/picker/contributions/canvas-picker/glyph-picker.d.ts +9 -0
  463. package/es/picker/contributions/canvas-picker/glyph-picker.js +38 -0
  464. package/es/picker/contributions/canvas-picker/glyph-picker.js.map +1 -0
  465. package/es/picker/contributions/canvas-picker/group-picker.d.ts +7 -0
  466. package/es/picker/contributions/canvas-picker/group-picker.js +21 -0
  467. package/es/picker/contributions/canvas-picker/group-picker.js.map +1 -0
  468. package/es/picker/contributions/canvas-picker/image-picker.d.ts +7 -0
  469. package/es/picker/contributions/canvas-picker/image-picker.js +22 -0
  470. package/es/picker/contributions/canvas-picker/image-picker.js.map +1 -0
  471. package/es/picker/contributions/canvas-picker/line-picker.d.ts +10 -0
  472. package/es/picker/contributions/canvas-picker/line-picker.js +52 -0
  473. package/es/picker/contributions/canvas-picker/line-picker.js.map +1 -0
  474. package/es/picker/contributions/canvas-picker/module.d.ts +3 -0
  475. package/es/picker/contributions/canvas-picker/module.js +64 -0
  476. package/es/picker/contributions/canvas-picker/module.js.map +1 -0
  477. package/es/picker/contributions/canvas-picker/path-picker.d.ts +10 -0
  478. package/es/picker/contributions/canvas-picker/path-picker.js +53 -0
  479. package/es/picker/contributions/canvas-picker/path-picker.js.map +1 -0
  480. package/es/picker/contributions/canvas-picker/polygon-picker.d.ts +9 -0
  481. package/es/picker/contributions/canvas-picker/polygon-picker.js +43 -0
  482. package/es/picker/contributions/canvas-picker/polygon-picker.js.map +1 -0
  483. package/es/picker/contributions/canvas-picker/pyramid3d-picker.d.ts +10 -0
  484. package/es/picker/contributions/canvas-picker/pyramid3d-picker.js +47 -0
  485. package/es/picker/contributions/canvas-picker/pyramid3d-picker.js.map +1 -0
  486. package/es/picker/contributions/canvas-picker/rect-picker.d.ts +9 -0
  487. package/es/picker/contributions/canvas-picker/rect-picker.js +59 -0
  488. package/es/picker/contributions/canvas-picker/rect-picker.js.map +1 -0
  489. package/es/picker/contributions/canvas-picker/rect3d-picker.d.ts +10 -0
  490. package/es/picker/contributions/canvas-picker/rect3d-picker.js +50 -0
  491. package/es/picker/contributions/canvas-picker/rect3d-picker.js.map +1 -0
  492. package/es/picker/contributions/canvas-picker/richtext-picker.d.ts +9 -0
  493. package/es/picker/contributions/canvas-picker/richtext-picker.js +27 -0
  494. package/es/picker/contributions/canvas-picker/richtext-picker.js.map +1 -0
  495. package/es/picker/contributions/canvas-picker/symbol-picker.d.ts +10 -0
  496. package/es/picker/contributions/canvas-picker/symbol-picker.js +55 -0
  497. package/es/picker/contributions/canvas-picker/symbol-picker.js.map +1 -0
  498. package/es/picker/contributions/canvas-picker/text-picker.d.ts +10 -0
  499. package/es/picker/contributions/canvas-picker/text-picker.js +52 -0
  500. package/es/picker/contributions/canvas-picker/text-picker.js.map +1 -0
  501. package/es/picker/contributions/constants.d.ts +29 -0
  502. package/es/picker/contributions/constants.js +58 -0
  503. package/es/picker/contributions/constants.js.map +1 -0
  504. package/es/picker/contributions/math-picker/arc-picker.d.ts +9 -0
  505. package/es/picker/contributions/math-picker/arc-picker.js +45 -0
  506. package/es/picker/contributions/math-picker/arc-picker.js.map +1 -0
  507. package/es/picker/contributions/math-picker/area-picker.d.ts +9 -0
  508. package/es/picker/contributions/math-picker/area-picker.js +39 -0
  509. package/es/picker/contributions/math-picker/area-picker.js.map +1 -0
  510. package/es/picker/contributions/math-picker/circle-picker.d.ts +9 -0
  511. package/es/picker/contributions/math-picker/circle-picker.js +44 -0
  512. package/es/picker/contributions/math-picker/circle-picker.js.map +1 -0
  513. package/es/picker/contributions/math-picker/glyph-picker.d.ts +9 -0
  514. package/es/picker/contributions/math-picker/glyph-picker.js +38 -0
  515. package/es/picker/contributions/math-picker/glyph-picker.js.map +1 -0
  516. package/es/picker/contributions/math-picker/line-picker.d.ts +9 -0
  517. package/es/picker/contributions/math-picker/line-picker.js +44 -0
  518. package/es/picker/contributions/math-picker/line-picker.js.map +1 -0
  519. package/es/picker/contributions/math-picker/module.d.ts +3 -0
  520. package/es/picker/contributions/math-picker/module.js +43 -0
  521. package/es/picker/contributions/math-picker/module.js.map +1 -0
  522. package/es/picker/contributions/math-picker/path-picker.d.ts +9 -0
  523. package/es/picker/contributions/math-picker/path-picker.js +44 -0
  524. package/es/picker/contributions/math-picker/path-picker.js.map +1 -0
  525. package/es/picker/contributions/math-picker/polygon-picker.d.ts +9 -0
  526. package/es/picker/contributions/math-picker/polygon-picker.js +43 -0
  527. package/es/picker/contributions/math-picker/polygon-picker.js.map +1 -0
  528. package/es/picker/contributions/math-picker/rect-picker.d.ts +9 -0
  529. package/es/picker/contributions/math-picker/rect-picker.js +59 -0
  530. package/es/picker/contributions/math-picker/rect-picker.js.map +1 -0
  531. package/es/picker/contributions/math-picker/symbol-picker.d.ts +9 -0
  532. package/es/picker/contributions/math-picker/symbol-picker.js +44 -0
  533. package/es/picker/contributions/math-picker/symbol-picker.js.map +1 -0
  534. package/es/picker/contributions/math-picker/text-picker.d.ts +7 -0
  535. package/es/picker/contributions/math-picker/text-picker.js +21 -0
  536. package/es/picker/contributions/math-picker/text-picker.js.map +1 -0
  537. package/es/picker/index.d.ts +1 -0
  538. package/es/picker/index.js +2 -0
  539. package/es/picker/index.js.map +1 -0
  540. package/es/picker/math-picker-service.d.ts +16 -0
  541. package/es/picker/math-picker-service.js +44 -0
  542. package/es/picker/math-picker-service.js.map +1 -0
  543. package/es/picker/module.d.ts +6 -0
  544. package/es/picker/module.js +28 -0
  545. package/es/picker/module.js.map +1 -0
  546. package/es/render/contributions/rough/config.js +1 -1
  547. package/es/render/contributions/rough/module.d.ts +1 -1
  548. package/es/render/contributions/rough/module.js +2 -4
  549. package/es/render/contributions/rough/module.js.map +1 -1
  550. package/es/render/contributions/rough/rough-arc.d.ts +1 -1
  551. package/es/render/contributions/rough/rough-arc.js +3 -4
  552. package/es/render/contributions/rough/rough-arc.js.map +1 -1
  553. package/es/render/contributions/rough/rough-area.d.ts +2 -2
  554. package/es/render/contributions/rough/rough-area.js +2 -4
  555. package/es/render/contributions/rough/rough-area.js.map +1 -1
  556. package/es/render/contributions/rough/rough-circle.d.ts +1 -1
  557. package/es/render/contributions/rough/rough-circle.js +2 -4
  558. package/es/render/contributions/rough/rough-circle.js.map +1 -1
  559. package/es/render/contributions/rough/rough-line.d.ts +2 -2
  560. package/es/render/contributions/rough/rough-line.js +2 -4
  561. package/es/render/contributions/rough/rough-line.js.map +1 -1
  562. package/es/render/contributions/rough/rough-path.d.ts +1 -1
  563. package/es/render/contributions/rough/rough-path.js +2 -4
  564. package/es/render/contributions/rough/rough-path.js.map +1 -1
  565. package/es/render/contributions/rough/rough-rect.d.ts +1 -1
  566. package/es/render/contributions/rough/rough-rect.js +2 -4
  567. package/es/render/contributions/rough/rough-rect.js.map +1 -1
  568. package/es/render/contributions/rough/rough-symbol.d.ts +2 -2
  569. package/es/render/contributions/rough/rough-symbol.js +2 -4
  570. package/es/render/contributions/rough/rough-symbol.js.map +1 -1
  571. package/es/window/contributions/browser-contribution.d.ts +48 -0
  572. package/es/window/contributions/browser-contribution.js +172 -0
  573. package/es/window/contributions/browser-contribution.js.map +1 -0
  574. package/es/window/contributions/feishu-contribution.d.ts +46 -0
  575. package/es/window/contributions/feishu-contribution.js +153 -0
  576. package/es/window/contributions/feishu-contribution.js.map +1 -0
  577. package/es/window/contributions/lynx-contribution.d.ts +46 -0
  578. package/es/window/contributions/lynx-contribution.js +153 -0
  579. package/es/window/contributions/lynx-contribution.js.map +1 -0
  580. package/es/window/contributions/modules.d.ts +8 -1
  581. package/es/window/contributions/modules.js +47 -1
  582. package/es/window/contributions/modules.js.map +1 -1
  583. package/es/window/contributions/native-contribution.js +3 -0
  584. package/es/window/contributions/native-contribution.js.map +1 -0
  585. package/es/window/contributions/node-contribution.d.ts +39 -1
  586. package/es/window/contributions/node-contribution.js +105 -1
  587. package/es/window/contributions/node-contribution.js.map +1 -1
  588. package/es/window/contributions/taro-contribution.d.ts +46 -0
  589. package/es/window/contributions/taro-contribution.js +160 -0
  590. package/es/window/contributions/taro-contribution.js.map +1 -0
  591. package/es/window/contributions/wx-contribution.d.ts +46 -0
  592. package/es/window/contributions/wx-contribution.js +155 -0
  593. package/es/window/contributions/wx-contribution.js.map +1 -0
  594. package/es/window/index.d.ts +1 -0
  595. package/es/window/index.js +2 -0
  596. package/es/window/index.js.map +1 -0
  597. package/package.json +4 -6
  598. package/cjs/canvas/contributions/canvas-module.js +0 -1
  599. package/cjs/canvas/contributions/canvas-module.js.map +0 -1
  600. package/es/canvas/contributions/canvas-module.js +0 -1
  601. package/es/canvas/contributions/canvas-module.js.map +0 -1
  602. /package/cjs/{canvas/contributions/canvas-module.d.ts → window/contributions/native-contribution.d.ts} +0 -0
  603. /package/es/{canvas/contributions/canvas-module.d.ts → window/contributions/native-contribution.d.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/env/contributions/lynx-contribution.ts"],"names":[],"mappings":"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","file":"lynx-contribution.js","sourcesContent":["import { injectable, BaseEnvContribution, rafBasedSto } from '@visactor/vrender-core';\n// import { loadFeishuContributions } from '../../../kits';\nimport type {\n ICanvasLike,\n EnvType,\n ICreateCanvasParams,\n IEnvContribution,\n IGlobal,\n ILynxCanvas\n} from '@visactor/vrender-core';\n\ndeclare const lynx: {\n getSystemInfoSync: () => { pixelRatio: number };\n createCanvas: (id: string) => any;\n createCanvasNG: (id: string) => any;\n createImage: (id: string) => any;\n};\ndeclare const SystemInfo: {\n pixelRatio: number;\n};\n\nlet ng = false;\ntry {\n ng = !!lynx.createCanvasNG;\n} catch (err) {\n // do nothing\n}\n\n// 飞书小程序canvas的wrap\nfunction makeUpCanvas(\n domref: any,\n canvasIdLists: string[],\n canvasMap: Map<string, ILynxCanvas>,\n freeCanvasIdx: number,\n freeCanvasList: ILynxCanvas[]\n) {\n const dpr = SystemInfo.pixelRatio;\n\n canvasIdLists.forEach((id, i) => {\n const _canvas = ng ? lynx.createCanvasNG(id) : lynx.createCanvas(id);\n _canvas.width = domref.width * dpr;\n _canvas.height = domref.height * dpr;\n ng && _canvas.attachToCanvasView(id);\n\n const ctx = _canvas.getContext('2d');\n ctx.draw = (a: any, b: any) => {\n b();\n };\n // TODO: 这里是一个临时方案,向 ctx 内部构造一个 canvas,传递宽高\n // ctx.canvas = {\n // width: domref.width * dpr,\n // height: domref.height * dpr\n // };\n\n const canvas = {\n width: domref.width * dpr,\n height: domref.height * dpr,\n offsetWidth: domref.width,\n offsetHeight: domref.height,\n id: id ?? '',\n getContext: () => ctx,\n // 构造 getBoundingClientRect 方法\n getBoundingClientRect: () => ({\n height: domref.height,\n width: domref.width\n })\n };\n\n canvasMap.set(id, canvas);\n if (i >= freeCanvasIdx) {\n freeCanvasList.push(canvas);\n }\n });\n}\n\nexport function createImageElement(src: string, isSvg: boolean = false): Promise<HTMLImageElement> {\n if (isSvg) {\n return Promise.reject();\n }\n const img = lynx.createImage(src);\n // if (img.complete) {\n // return Promise.resolve(img);\n // }\n const promise: Promise<HTMLImageElement> = new Promise((resolve, reject) => {\n img.onload = () => {\n resolve(img);\n };\n img.onerror = () => {\n reject(new Error('加载失败'));\n };\n });\n return promise;\n}\n\n@injectable()\nexport class LynxEnvContribution extends BaseEnvContribution implements IEnvContribution {\n type: EnvType = 'lynx';\n supportEvent: boolean = true;\n // 所有添加进来的canvas\n canvasMap: Map<string, ILynxCanvas> = new Map();\n // 所有可用的canvasList\n freeCanvasList: ILynxCanvas[] = [];\n canvasIdx: number = 0;\n\n constructor() {\n super();\n this.supportsTouchEvents = true;\n try {\n this.supportsPointerEvents = !!globalThis.PointerEvent;\n this.supportsMouseEvents = !!globalThis.MouseEvent;\n } catch (err) {\n this.supportsPointerEvents = false;\n this.supportsMouseEvents = false;\n }\n this.applyStyles = true;\n }\n\n // TODO:VGrammar在小程序环境会重复调用setEnv传入canvas,所以每次configure并不会释放\n // 这里等待后续和VGrammar沟通\n configure(service: IGlobal, params: { domref: any; canvasIdLists: string[]; freeCanvasIdx: number }) {\n if (service.env === this.type) {\n service.setActiveEnvContribution(this);\n makeUpCanvas(params.domref, params.canvasIdLists, this.canvasMap, params.freeCanvasIdx, this.freeCanvasList);\n\n // loadFeishuContributions();\n }\n }\n /**\n * 获取动态canvas的数量,offscreenCanvas或者framebuffer\n */\n getDynamicCanvasCount(): number {\n return this.freeCanvasList.length;\n }\n\n /**\n * 获取静态canvas的数量,纯粹canvas\n */\n getStaticCanvasCount(): number {\n return this.freeCanvasList.length;\n }\n\n loadImage(url: string): Promise<{\n loadState: 'success' | 'fail';\n data: HTMLImageElement | ImageData | null;\n }> {\n const imagePromise = createImageElement(url, false);\n return imagePromise\n .then((img: HTMLImageElement) => {\n return {\n data: img,\n loadState: 'success' as const\n };\n })\n .catch(() => {\n return {\n data: null,\n loadState: 'fail'\n };\n });\n }\n\n loadSvg(url: string): Promise<{\n loadState: 'success' | 'fail';\n data: HTMLImageElement | ImageData | null;\n }> {\n // 飞书小组件不支持DOMParser和URL.createObjectURL,无法解析svg字符串,可以通过url使用svg资源\n return Promise.reject();\n }\n\n createCanvas(params: ICreateCanvasParams): ILynxCanvas {\n const result = this.freeCanvasList[this.canvasIdx] || this.freeCanvasList[this.freeCanvasList.length - 1];\n this.canvasIdx++;\n return result;\n }\n\n createOffscreenCanvas(params: ICreateCanvasParams) {\n return;\n }\n\n releaseCanvas(canvas: ICanvasLike | string) {\n return;\n }\n\n getDevicePixelRatio(): number {\n return SystemInfo.pixelRatio;\n }\n\n getRequestAnimationFrame(): (callback: FrameRequestCallback) => number {\n // return requestAnimationFrame;\n\n // 飞书小组件,在云文档浏览器环境中,没有requestAnimationFrame\n // 但是在小组件工作台环境和模拟器中正常\n // 反馈飞书修改,目前先使用setTimeout模拟,进行测试,飞书修复后替换回requestAnimationFrame\n // return function (callback: FrameRequestCallback) {\n // return setTimeout(callback, 1000 / 60, true);\n // } as any;\n return function (callback: FrameRequestCallback) {\n return rafBasedSto.call(callback);\n } as any;\n }\n\n getCancelAnimationFrame(): (h: number) => void {\n return (h: number) => {\n rafBasedSto.clear(h);\n };\n }\n\n addEventListener<K extends keyof DocumentEventMap>(\n type: K,\n listener: (this: Document, ev: DocumentEventMap[K]) => any,\n options?: boolean | AddEventListenerOptions | undefined\n ): void;\n addEventListener(\n type: string,\n listener: EventListenerOrEventListenerObject,\n options?: boolean | AddEventListenerOptions | undefined\n ): void;\n addEventListener(type: unknown, listener: unknown, options?: unknown): void {\n return null;\n }\n\n removeEventListener<K extends keyof DocumentEventMap>(\n type: K,\n listener: (this: Document, ev: DocumentEventMap[K]) => any,\n options?: boolean | EventListenerOptions | undefined\n ): void;\n removeEventListener(\n type: string,\n listener: EventListenerOrEventListenerObject,\n options?: boolean | EventListenerOptions | undefined\n ): void;\n removeEventListener(type: unknown, listener: unknown, options?: unknown): void {\n return null;\n }\n\n dispatchEvent(event: any): boolean {\n return null;\n }\n\n // 只能索引canvas\n getElementById(str: string): any | null {\n return this.canvasMap.get(str);\n }\n\n getRootElement(): HTMLElement | null {\n return null;\n }\n\n getDocument(): Document | null {\n return null;\n }\n\n release(...params: any): void {\n return;\n }\n}\n"]}
@@ -1 +1,9 @@
1
-
1
+ import { ContainerModule } from '@visactor/vrender-core';
2
+ export declare const allEnvModule: ContainerModule;
3
+ export declare const browserEnvModule: ContainerModule;
4
+ export declare const feishuEnvModule: ContainerModule;
5
+ export declare const taroEnvModule: ContainerModule;
6
+ export declare const ttEnvModule: ContainerModule;
7
+ export declare const lynxEnvModule: ContainerModule;
8
+ export declare const wxEnvModule: ContainerModule;
9
+ export declare const nodeEnvModule: ContainerModule;
@@ -1 +1,33 @@
1
- //# sourceMappingURL=module.js.map
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: !0
5
+ }), exports.nodeEnvModule = exports.wxEnvModule = exports.lynxEnvModule = exports.ttEnvModule = exports.taroEnvModule = exports.feishuEnvModule = exports.browserEnvModule = exports.allEnvModule = void 0;
6
+
7
+ const vrender_core_1 = require("@visactor/vrender-core"), browser_contribution_1 = require("./browser-contribution"), feishu_contribution_1 = require("./feishu-contribution"), taro_contribution_1 = require("./taro-contribution"), lynx_contribution_1 = require("./lynx-contribution"), wx_contribution_1 = require("./wx-contribution"), node_contribution_1 = require("./node-contribution");
8
+
9
+ exports.allEnvModule = new vrender_core_1.ContainerModule((bind => {
10
+ bind(browser_contribution_1.BrowserEnvContribution).toSelf().inSingletonScope(),
11
+ bind(vrender_core_1.EnvContribution).toService(browser_contribution_1.BrowserEnvContribution),
12
+ bind(feishu_contribution_1.FeishuEnvContribution).toSelf().inSingletonScope(), bind(vrender_core_1.EnvContribution).toService(feishu_contribution_1.FeishuEnvContribution),
13
+ bind(taro_contribution_1.TaroEnvContribution).toSelf().inSingletonScope(), bind(vrender_core_1.EnvContribution).toService(taro_contribution_1.TaroEnvContribution),
14
+ bind(lynx_contribution_1.LynxEnvContribution).toSelf().inSingletonScope(), bind(vrender_core_1.EnvContribution).toService(lynx_contribution_1.LynxEnvContribution),
15
+ bind(wx_contribution_1.WxEnvContribution).toSelf().inSingletonScope(), bind(vrender_core_1.EnvContribution).toService(wx_contribution_1.WxEnvContribution),
16
+ bind(node_contribution_1.NodeEnvContribution).toSelf().inSingletonScope(), bind(vrender_core_1.EnvContribution).toService(node_contribution_1.NodeEnvContribution);
17
+ })), exports.browserEnvModule = new vrender_core_1.ContainerModule((bind => {
18
+ bind(browser_contribution_1.BrowserEnvContribution).toSelf().inSingletonScope(),
19
+ bind(vrender_core_1.EnvContribution).toService(browser_contribution_1.BrowserEnvContribution);
20
+ })), exports.feishuEnvModule = new vrender_core_1.ContainerModule((bind => {
21
+ bind(feishu_contribution_1.FeishuEnvContribution).toSelf().inSingletonScope(), bind(vrender_core_1.EnvContribution).toService(feishu_contribution_1.FeishuEnvContribution);
22
+ })), exports.taroEnvModule = new vrender_core_1.ContainerModule((bind => {
23
+ bind(taro_contribution_1.TaroEnvContribution).toSelf().inSingletonScope(), bind(vrender_core_1.EnvContribution).toService(taro_contribution_1.TaroEnvContribution);
24
+ })), exports.ttEnvModule = new vrender_core_1.ContainerModule((bind => {
25
+ bind(taro_contribution_1.TaroEnvContribution).toSelf().inSingletonScope(), bind(vrender_core_1.EnvContribution).toService(taro_contribution_1.TaroEnvContribution);
26
+ })), exports.lynxEnvModule = new vrender_core_1.ContainerModule((bind => {
27
+ bind(lynx_contribution_1.LynxEnvContribution).toSelf().inSingletonScope(), bind(vrender_core_1.EnvContribution).toService(lynx_contribution_1.LynxEnvContribution);
28
+ })), exports.wxEnvModule = new vrender_core_1.ContainerModule((bind => {
29
+ bind(wx_contribution_1.WxEnvContribution).toSelf().inSingletonScope(), bind(vrender_core_1.EnvContribution).toService(wx_contribution_1.WxEnvContribution);
30
+ })), exports.nodeEnvModule = new vrender_core_1.ContainerModule((bind => {
31
+ bind(node_contribution_1.NodeEnvContribution).toSelf().inSingletonScope(), bind(vrender_core_1.EnvContribution).toService(node_contribution_1.NodeEnvContribution);
32
+ }));
33
+ //# sourceMappingURL=module.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/env/contributions/module.ts"],"names":[],"mappings":"","file":"module.js","sourcesContent":["// import { ContainerModule } from 'inversify';\n// import { bindContributionProvider, EnvContribution } from '@visactor/vrender';\n// import { NodeEnvContribution } from './node-contribution';\n\n// export default new ContainerModule(bind => {\n// bind(NodeEnvContribution).toSelf().inSingletonScope();\n// bind(EnvContribution).toService(NodeEnvContribution);\n// });\n"]}
1
+ {"version":3,"sources":["../src/env/contributions/module.ts"],"names":[],"mappings":"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","file":"module.js","sourcesContent":["import { ContainerModule, EnvContribution } from '@visactor/vrender-core';\nimport { BrowserEnvContribution } from './browser-contribution';\nimport { FeishuEnvContribution } from './feishu-contribution';\nimport { TaroEnvContribution } from './taro-contribution';\nimport { LynxEnvContribution } from './lynx-contribution';\nimport { WxEnvContribution } from './wx-contribution';\nimport { NodeEnvContribution } from './node-contribution';\n\nexport const allEnvModule = new ContainerModule(bind => {\n // browser\n bind(BrowserEnvContribution).toSelf().inSingletonScope();\n bind(EnvContribution).toService(BrowserEnvContribution);\n\n // feishu\n bind(FeishuEnvContribution).toSelf().inSingletonScope();\n bind(EnvContribution).toService(FeishuEnvContribution);\n\n // taro\n bind(TaroEnvContribution).toSelf().inSingletonScope();\n bind(EnvContribution).toService(TaroEnvContribution);\n\n // lynx\n bind(LynxEnvContribution).toSelf().inSingletonScope();\n bind(EnvContribution).toService(LynxEnvContribution);\n\n // wx\n bind(WxEnvContribution).toSelf().inSingletonScope();\n bind(EnvContribution).toService(WxEnvContribution);\n\n // node\n bind(NodeEnvContribution).toSelf().inSingletonScope();\n bind(EnvContribution).toService(NodeEnvContribution);\n});\n\nexport const browserEnvModule = new ContainerModule(bind => {\n // browser\n bind(BrowserEnvContribution).toSelf().inSingletonScope();\n bind(EnvContribution).toService(BrowserEnvContribution);\n});\n\nexport const feishuEnvModule = new ContainerModule(bind => {\n // feishu\n bind(FeishuEnvContribution).toSelf().inSingletonScope();\n bind(EnvContribution).toService(FeishuEnvContribution);\n});\n\nexport const taroEnvModule = new ContainerModule(bind => {\n // taro\n bind(TaroEnvContribution).toSelf().inSingletonScope();\n bind(EnvContribution).toService(TaroEnvContribution);\n});\n\nexport const ttEnvModule = new ContainerModule(bind => {\n // taro\n bind(TaroEnvContribution).toSelf().inSingletonScope();\n bind(EnvContribution).toService(TaroEnvContribution);\n});\n\nexport const lynxEnvModule = new ContainerModule(bind => {\n // lynx\n bind(LynxEnvContribution).toSelf().inSingletonScope();\n bind(EnvContribution).toService(LynxEnvContribution);\n});\n\nexport const wxEnvModule = new ContainerModule(bind => {\n // wx\n bind(WxEnvContribution).toSelf().inSingletonScope();\n bind(EnvContribution).toService(WxEnvContribution);\n});\n\nexport const nodeEnvModule = new ContainerModule(bind => {\n // node\n bind(NodeEnvContribution).toSelf().inSingletonScope();\n bind(EnvContribution).toService(NodeEnvContribution);\n});\n"]}
@@ -1 +1,49 @@
1
-
1
+ import { BaseEnvContribution } from '@visactor/vrender-core';
2
+ import type { EnvType, ICreateCanvasParams, IEnvContribution, IGlobal } from '@visactor/vrender-core';
3
+ type Canvas = any;
4
+ type NodePkg = {
5
+ createCanvas: (width: number, height: number, type?: 'pdf' | 'svg') => Canvas;
6
+ createImageData: (data: Uint8ClampedArray, width: number, height?: number) => ImageData;
7
+ loadImage: (src: string | any, options?: any) => Promise<any>;
8
+ Resvg?: any;
9
+ };
10
+ export declare class NodeEnvContribution extends BaseEnvContribution implements IEnvContribution {
11
+ type: EnvType;
12
+ pkg: NodePkg;
13
+ _lastTime: number;
14
+ supportEvent: boolean;
15
+ configure(service: IGlobal, pkg: NodePkg): void;
16
+ getDynamicCanvasCount(): number;
17
+ getStaticCanvasCount(): number;
18
+ loadJson(url: string): Promise<{
19
+ loadState: 'success' | 'fail';
20
+ data: Record<string, unknown> | null;
21
+ }>;
22
+ loadArrayBuffer(url: string): Promise<{
23
+ loadState: 'success' | 'fail';
24
+ data: ArrayBuffer | null;
25
+ }>;
26
+ loadImage(url: string): Promise<{
27
+ loadState: 'success' | 'fail';
28
+ data: HTMLImageElement | null;
29
+ }>;
30
+ loadSvg(svgStr: string): Promise<{
31
+ loadState: 'success' | 'fail';
32
+ data: HTMLImageElement | null;
33
+ }>;
34
+ createCanvas(params: any): Canvas;
35
+ releaseCanvas(canvas: Canvas | any): void;
36
+ getDevicePixelRatio(): number;
37
+ getRequestAnimationFrame(): (callback: FrameRequestCallback) => number;
38
+ getCancelAnimationFrame(): (h: number) => void;
39
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions | undefined): void;
40
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions | undefined): void;
41
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions | undefined): void;
42
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions | undefined): void;
43
+ getElementById(str: string): HTMLElement | null;
44
+ getRootElement(): HTMLElement | null;
45
+ dispatchEvent(event: any): boolean;
46
+ release(...params: any): void;
47
+ createOffscreenCanvas(params: ICreateCanvasParams): void;
48
+ }
49
+ export {};
@@ -1 +1,95 @@
1
- //# sourceMappingURL=node-contribution.js.map
1
+ "use strict";
2
+
3
+ var __decorate = this && this.__decorate || function(decorators, target, key, desc) {
4
+ var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
5
+ if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) (d = decorators[i]) && (r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r);
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+
9
+ Object.defineProperty(exports, "__esModule", {
10
+ value: !0
11
+ }), exports.NodeEnvContribution = void 0;
12
+
13
+ const vrender_core_1 = require("@visactor/vrender-core");
14
+
15
+ let NodeEnvContribution = class extends vrender_core_1.BaseEnvContribution {
16
+ constructor() {
17
+ super(...arguments), this.type = "node", this._lastTime = 0, this.supportEvent = !1;
18
+ }
19
+ configure(service, pkg) {
20
+ service.env === this.type && (service.setActiveEnvContribution(this), this.pkg = pkg);
21
+ }
22
+ getDynamicCanvasCount() {
23
+ return 0;
24
+ }
25
+ getStaticCanvasCount() {
26
+ return 1;
27
+ }
28
+ loadJson(url) {
29
+ const jsonPromise = fetch(url).then((data => data.json()));
30
+ return jsonPromise.then((json => ({
31
+ data: json,
32
+ state: "success"
33
+ }))).catch((() => ({
34
+ data: null,
35
+ state: "fail"
36
+ }))), jsonPromise;
37
+ }
38
+ loadArrayBuffer(url) {
39
+ return fetch(url).then((data => data.arrayBuffer())).then((arrayBuffer => ({
40
+ data: arrayBuffer,
41
+ loadState: "success"
42
+ }))).catch((() => ({
43
+ data: null,
44
+ loadState: "fail"
45
+ })));
46
+ }
47
+ loadImage(url) {
48
+ const {loadImage: loadImage} = this.pkg;
49
+ return loadImage ? loadImage(url).then((image => ({
50
+ loadState: image ? "success" : "fail",
51
+ data: image
52
+ }))).catch((() => ({
53
+ loadState: "fail",
54
+ data: null
55
+ }))) : Promise.reject(new Error("node-canvas loadImage could not be found!"));
56
+ }
57
+ loadSvg(svgStr) {
58
+ const Resvg = this.pkg.Resvg;
59
+ if (!Resvg) return Promise.reject(new Error("@resvg/resvg-js svgParser could not be found!"));
60
+ const pngData = new Resvg(svgStr).render().asPng();
61
+ return this.loadImage(pngData);
62
+ }
63
+ createCanvas(params) {
64
+ return this.pkg.createCanvas(params.width, params.height);
65
+ }
66
+ releaseCanvas(canvas) {}
67
+ getDevicePixelRatio() {
68
+ return 1;
69
+ }
70
+ getRequestAnimationFrame() {
71
+ return function(callback) {
72
+ return vrender_core_1.rafBasedSto.call(callback);
73
+ };
74
+ }
75
+ getCancelAnimationFrame() {
76
+ return h => {
77
+ vrender_core_1.rafBasedSto.clear(h);
78
+ };
79
+ }
80
+ addEventListener(type, listener, options) {}
81
+ removeEventListener(type, listener, options) {}
82
+ getElementById(str) {
83
+ return null;
84
+ }
85
+ getRootElement() {
86
+ return null;
87
+ }
88
+ dispatchEvent(event) {}
89
+ release(...params) {}
90
+ createOffscreenCanvas(params) {}
91
+ };
92
+
93
+ NodeEnvContribution = __decorate([ (0, vrender_core_1.injectable)() ], NodeEnvContribution),
94
+ exports.NodeEnvContribution = NodeEnvContribution;
95
+ //# sourceMappingURL=node-contribution.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/env/contributions/node-contribution.ts"],"names":[],"mappings":"","file":"node-contribution.js","sourcesContent":["// import { injectable } from 'inversify';\n// import type { createCanvas, createImageData, loadImage, Canvas } from 'canvas';\n// import * as NodePkg from 'canvas';\n// import { Resvg } from '@resvg/resvg-js';\n// import type { EnvType, IEnvContribution, IGlobal, ICreateCanvasParams } from '@visactor/vrender';\n// import { BaseEnvContribution } from '@visactor/vrender';\n// import fetch from 'node-fetch';\n\n// type NodePkg = {\n// createCanvas: typeof createCanvas;\n// createImageData: typeof createImageData;\n// loadImage: typeof loadImage;\n// };\n\n// let last = 0;\n// function nodeRequestAnimationFrame(callback: FrameRequestCallback) {\n// const now = Date.now();\n// const timeLeft = Math.max(0, 16 - (now - last));\n// const id = setTimeout(function () {\n// callback(now + timeLeft);\n// }, timeLeft);\n// last = now + timeLeft;\n// return id;\n// }\n\n// @injectable()\n// export class NodeEnvContribution extends BaseEnvContribution implements IEnvContribution {\n// type: EnvType = 'node';\n// pkg: NodePkg;\n// _lastTime: number = 0;\n// supportEvent: boolean = false;\n\n// configure(service: IGlobal, pkg: NodePkg = NodePkg) {\n// if (service.env === this.type) {\n// service.setActiveEnvContribution(this);\n// this.pkg = pkg;\n// }\n// }\n\n// loadJson(url: string): Promise<{\n// loadState: 'success' | 'fail';\n// data: Record<string, unknown> | null;\n// }> {\n// const jsonPromise = fetch(url).then(data => data.json()) as Promise<any>; // ignore_security_alert\n// jsonPromise\n// .then(json => {\n// return {\n// data: json,\n// state: 'success'\n// };\n// })\n// .catch(() => {\n// return {\n// data: null,\n// state: 'fail'\n// };\n// });\n// return jsonPromise;\n// }\n\n// loadArrayBuffer(url: string): Promise<{\n// loadState: 'success' | 'fail';\n// data: ArrayBuffer | null;\n// }> {\n// const arrayBufferPromise = fetch(url).then(data => data.arrayBuffer()); // ignore_security_alert\n// return arrayBufferPromise\n// .then((arrayBuffer: ArrayBuffer) => {\n// return {\n// data: arrayBuffer,\n// loadState: 'success' as const\n// };\n// })\n// .catch(() => {\n// return {\n// data: null,\n// loadState: 'fail'\n// };\n// });\n// }\n\n// loadImage(url: string): Promise<{\n// loadState: 'success' | 'fail';\n// data: HTMLImageElement | null;\n// }> {\n// const { loadImage } = this.pkg;\n// if (loadImage) {\n// return loadImage(url)\n// .then((image: any) => {\n// const loadState: 'success' | 'fail' = image ? 'success' : 'fail';\n// return {\n// loadState,\n// data: image as HTMLImageElement\n// };\n// })\n// .catch(() => {\n// return {\n// loadState: 'fail',\n// data: null\n// } as any;\n// });\n// }\n// return Promise.reject(new Error('node-canvas loadImage could not be found!'));\n// }\n\n// // 此处的\n// loadSvg(svgStr: string): Promise<{\n// loadState: 'success' | 'fail';\n// data: HTMLImageElement | null;\n// }> {\n// // // eslint-disable-next-line @typescript-eslint/no-var-requires\n// // const { Resvg } = require('@resvg/resvg-js');\n// if (!Resvg) {\n// return Promise.reject(new Error('@resvg/resvg-js svgParser could not be found!'));\n// }\n// const resvg = new Resvg(svgStr);\n// const pngData = resvg.render().asPng();\n// return this.loadImage(pngData as unknown as string);\n// }\n\n// createCanvas(params: any): Canvas {\n// const canvas = this.pkg.createCanvas(params.width, params.height);\n// return canvas;\n// }\n\n// releaseCanvas(canvas: Canvas | any) {\n// return;\n// }\n\n// getDevicePixelRatio(): number {\n// return 0;\n// }\n\n// getRequestAnimationFrame(): (callback: FrameRequestCallback) => number {\n// // return requestAnimationFrame;\n// return nodeRequestAnimationFrame as any;\n// }\n\n// addEventListener<K extends keyof DocumentEventMap>(\n// type: K,\n// listener: (this: Document, ev: DocumentEventMap[K]) => any,\n// options?: boolean | AddEventListenerOptions | undefined\n// ): void;\n// addEventListener(\n// type: string,\n// listener: EventListenerOrEventListenerObject,\n// options?: boolean | AddEventListenerOptions | undefined\n// ): void;\n// addEventListener(type: unknown, listener: unknown, options?: unknown): void {\n// return;\n// }\n\n// removeEventListener<K extends keyof DocumentEventMap>(\n// type: K,\n// listener: (this: Document, ev: DocumentEventMap[K]) => any,\n// options?: boolean | EventListenerOptions | undefined\n// ): void;\n// removeEventListener(\n// type: string,\n// listener: EventListenerOrEventListenerObject,\n// options?: boolean | EventListenerOptions | undefined\n// ): void;\n// removeEventListener(type: unknown, listener: unknown, options?: unknown): void {\n// return;\n// }\n\n// getElementById(str: string): HTMLElement | null {\n// return null;\n// }\n\n// getRootElement(): HTMLElement | null {\n// return null;\n// }\n\n// dispatchEvent(event: any): boolean {\n// return;\n// }\n\n// getCancelAnimationFrame(): (h: number) => void {\n// return;\n// }\n\n// release(...params: any): void {\n// return;\n// }\n\n// createOffscreenCanvas(params: ICreateCanvasParams) {\n// return;\n// }\n// }\n"]}
1
+ {"version":3,"sources":["../src/env/contributions/node-contribution.ts"],"names":[],"mappings":"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","file":"node-contribution.js","sourcesContent":["import { injectable, BaseEnvContribution, rafBasedSto } from '@visactor/vrender-core';\n// import { loadTaroContributions } from '../../../kits';\nimport type { EnvType, ICreateCanvasParams, IEnvContribution, IGlobal } from '@visactor/vrender-core';\n\ntype Canvas = any;\n\ntype NodePkg = {\n createCanvas: (width: number, height: number, type?: 'pdf' | 'svg') => Canvas;\n createImageData: (data: Uint8ClampedArray, width: number, height?: number) => ImageData;\n loadImage: (src: string | any, options?: any) => Promise<any>;\n Resvg?: any;\n};\n\n// let last = 0;\n// function nodeRequestAnimationFrame(callback: FrameRequestCallback) {\n// const now = Date.now();\n// const timeLeft = Math.max(0, 16 - (now - last));\n// const id = setTimeout(function () {\n// callback(now + timeLeft);\n// }, timeLeft);\n// last = now + timeLeft;\n// return id;\n// }\n\n@injectable()\nexport class NodeEnvContribution extends BaseEnvContribution implements IEnvContribution {\n type: EnvType = 'node';\n pkg: NodePkg;\n _lastTime: number = 0;\n supportEvent: boolean = false;\n\n configure(service: IGlobal, pkg: NodePkg) {\n if (service.env === this.type) {\n service.setActiveEnvContribution(this);\n this.pkg = pkg;\n }\n }\n\n /**\n * 获取动态canvas的数量,offscreenCanvas或者framebuffer\n */\n getDynamicCanvasCount(): number {\n return 0;\n }\n\n /**\n * 获取静态canvas的数量,纯粹canvas\n */\n getStaticCanvasCount(): number {\n return 1;\n }\n\n loadJson(url: string): Promise<{\n loadState: 'success' | 'fail';\n data: Record<string, unknown> | null;\n }> {\n const jsonPromise = fetch(url).then(data => data.json()) as Promise<any>; // ignore_security_alert\n jsonPromise\n .then(json => {\n return {\n data: json,\n state: 'success'\n };\n })\n .catch(() => {\n return {\n data: null,\n state: 'fail'\n };\n });\n return jsonPromise;\n }\n\n loadArrayBuffer(url: string): Promise<{\n loadState: 'success' | 'fail';\n data: ArrayBuffer | null;\n }> {\n const arrayBufferPromise = fetch(url).then(data => data.arrayBuffer()); // ignore_security_alert\n return arrayBufferPromise\n .then((arrayBuffer: ArrayBuffer) => {\n return {\n data: arrayBuffer,\n loadState: 'success' as const\n };\n })\n .catch(() => {\n return {\n data: null,\n loadState: 'fail'\n };\n });\n }\n\n loadImage(url: string): Promise<{\n loadState: 'success' | 'fail';\n data: HTMLImageElement | null;\n }> {\n const { loadImage } = this.pkg;\n if (loadImage) {\n return loadImage(url)\n .then((image: any) => {\n const loadState: 'success' | 'fail' = image ? 'success' : 'fail';\n return {\n loadState,\n data: image as HTMLImageElement\n };\n })\n .catch(() => {\n return {\n loadState: 'fail',\n data: null\n } as any;\n });\n }\n return Promise.reject(new Error('node-canvas loadImage could not be found!'));\n }\n\n // 此处的\n loadSvg(svgStr: string): Promise<{\n loadState: 'success' | 'fail';\n data: HTMLImageElement | null;\n }> {\n // // eslint-disable-next-line @typescript-eslint/no-var-requires\n // const { Resvg } = require('@resvg/resvg-js');\n const Resvg = this.pkg.Resvg;\n if (!Resvg) {\n return Promise.reject(new Error('@resvg/resvg-js svgParser could not be found!'));\n }\n const resvg = new Resvg(svgStr);\n const pngData = resvg.render().asPng();\n return this.loadImage(pngData as unknown as string);\n }\n\n createCanvas(params: any): Canvas {\n const canvas = this.pkg.createCanvas(params.width, params.height);\n return canvas;\n }\n\n releaseCanvas(canvas: Canvas | any) {\n return;\n }\n\n getDevicePixelRatio(): number {\n return 1;\n }\n\n getRequestAnimationFrame(): (callback: FrameRequestCallback) => number {\n // return function (callback: FrameRequestCallback) {\n // return setTimeout(callback, 1000 / 60, true);\n // } as any;\n return function (callback: FrameRequestCallback) {\n return rafBasedSto.call(callback);\n } as any;\n }\n\n getCancelAnimationFrame(): (h: number) => void {\n return (h: number) => {\n rafBasedSto.clear(h);\n };\n }\n\n addEventListener<K extends keyof DocumentEventMap>(\n type: K,\n listener: (this: Document, ev: DocumentEventMap[K]) => any,\n options?: boolean | AddEventListenerOptions | undefined\n ): void;\n addEventListener(\n type: string,\n listener: EventListenerOrEventListenerObject,\n options?: boolean | AddEventListenerOptions | undefined\n ): void;\n addEventListener(type: unknown, listener: unknown, options?: unknown): void {\n return;\n }\n\n removeEventListener<K extends keyof DocumentEventMap>(\n type: K,\n listener: (this: Document, ev: DocumentEventMap[K]) => any,\n options?: boolean | EventListenerOptions | undefined\n ): void;\n removeEventListener(\n type: string,\n listener: EventListenerOrEventListenerObject,\n options?: boolean | EventListenerOptions | undefined\n ): void;\n removeEventListener(type: unknown, listener: unknown, options?: unknown): void {\n return;\n }\n\n getElementById(str: string): HTMLElement | null {\n return null;\n }\n\n getRootElement(): HTMLElement | null {\n return null;\n }\n\n dispatchEvent(event: any): boolean {\n return;\n }\n\n release(...params: any): void {\n return;\n }\n\n createOffscreenCanvas(params: ICreateCanvasParams) {\n return;\n }\n}\n"]}
@@ -0,0 +1,57 @@
1
+ import { BaseEnvContribution } from '@visactor/vrender-core';
2
+ import type { ICanvasLike, EnvType, ICreateCanvasParams, IEnvContribution, IGlobal, ITTCanvas } from '@visactor/vrender-core';
3
+ interface ITaro {
4
+ createCanvasContext: (id: string) => any;
5
+ canvasGetImageData: (data: {
6
+ canvasId: string;
7
+ x: number;
8
+ y: number;
9
+ width: number;
10
+ height: number;
11
+ success: (res: any) => void;
12
+ }) => any;
13
+ }
14
+ interface IConfigureParams {
15
+ domref: any;
16
+ canvasIdLists: string[];
17
+ freeCanvasIdx: number;
18
+ taro: ITaro;
19
+ pixelRatio: number;
20
+ }
21
+ export declare class TaroEnvContribution extends BaseEnvContribution implements IEnvContribution {
22
+ type: EnvType;
23
+ supportEvent: boolean;
24
+ canvasMap: Map<string, ITTCanvas>;
25
+ freeCanvasList: ITTCanvas[];
26
+ canvasIdx: number;
27
+ taro: ITaro;
28
+ pixelRatio: number;
29
+ constructor();
30
+ getDynamicCanvasCount(): number;
31
+ getStaticCanvasCount(): number;
32
+ configure(service: IGlobal, params: IConfigureParams): void;
33
+ loadImage(url: string): Promise<{
34
+ loadState: 'success' | 'fail';
35
+ data: HTMLImageElement | ImageData | null;
36
+ }>;
37
+ loadSvg(svgStr: string): Promise<{
38
+ loadState: 'success' | 'fail';
39
+ data: HTMLImageElement | ImageData | null;
40
+ }>;
41
+ createCanvas(params: ICreateCanvasParams): ITTCanvas;
42
+ createOffscreenCanvas(params: ICreateCanvasParams): void;
43
+ releaseCanvas(canvas: ICanvasLike | string): void;
44
+ getDevicePixelRatio(): number;
45
+ getRequestAnimationFrame(): (callback: FrameRequestCallback) => number;
46
+ getCancelAnimationFrame(): (h: number) => void;
47
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions | undefined): void;
48
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions | undefined): void;
49
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions | undefined): void;
50
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions | undefined): void;
51
+ dispatchEvent(event: any): boolean;
52
+ getElementById(str: string): any | null;
53
+ getRootElement(): HTMLElement | null;
54
+ getDocument(): Document | null;
55
+ release(...params: any): void;
56
+ }
57
+ export {};
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+
3
+ var __decorate = this && this.__decorate || function(decorators, target, key, desc) {
4
+ var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
5
+ if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) (d = decorators[i]) && (r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r);
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ }, __metadata = this && this.__metadata || function(k, v) {
8
+ if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(k, v);
9
+ };
10
+
11
+ Object.defineProperty(exports, "__esModule", {
12
+ value: !0
13
+ }), exports.TaroEnvContribution = void 0;
14
+
15
+ const vrender_core_1 = require("@visactor/vrender-core");
16
+
17
+ function makeUpCanvas(domref, canvasIdLists, canvasMap, freeCanvasIdx, freeCanvasList, taro, dpr) {
18
+ canvasIdLists.forEach(((id, i) => {
19
+ const ctx = taro.createCanvasContext(id);
20
+ ctx.canvas = {
21
+ width: domref.width * dpr,
22
+ height: domref.height * dpr
23
+ }, ctx.createRadialGradient || (ctx.createRadialGradient = (...cc) => ctx.createCircularGradient(...cc)),
24
+ !ctx.getImageData && taro.canvasGetImageData && (ctx.getImageData = (x, y, width, height) => new Promise(((resolve, reject) => {
25
+ try {
26
+ taro.canvasGetImageData({
27
+ canvasId: id,
28
+ x: x,
29
+ y: y,
30
+ width: width,
31
+ height: height,
32
+ success(res) {
33
+ resolve(res);
34
+ }
35
+ });
36
+ } catch (err) {
37
+ reject(err);
38
+ }
39
+ })));
40
+ const canvas = {
41
+ id: id,
42
+ width: domref.width * dpr,
43
+ height: domref.height * dpr,
44
+ offsetWidth: domref.width,
45
+ offsetHeight: domref.height,
46
+ getContext: () => ctx,
47
+ getBoundingClientRect: () => ({
48
+ height: domref.height,
49
+ width: domref.width
50
+ })
51
+ };
52
+ return canvasMap.set(id, canvas), i >= freeCanvasIdx && freeCanvasList.push(canvas),
53
+ canvas;
54
+ }));
55
+ }
56
+
57
+ let TaroEnvContribution = class extends vrender_core_1.BaseEnvContribution {
58
+ constructor() {
59
+ super(), this.type = "taro", this.supportEvent = !0, this.canvasMap = new Map, this.freeCanvasList = [],
60
+ this.canvasIdx = 0, this.supportsTouchEvents = !0;
61
+ try {
62
+ this.supportsPointerEvents = !!globalThis.PointerEvent, this.supportsMouseEvents = !!globalThis.MouseEvent;
63
+ } catch (err) {
64
+ this.supportsPointerEvents = !1, this.supportsMouseEvents = !1;
65
+ }
66
+ this.applyStyles = !0;
67
+ }
68
+ getDynamicCanvasCount() {
69
+ return this.freeCanvasList.length;
70
+ }
71
+ getStaticCanvasCount() {
72
+ return this.freeCanvasList.length;
73
+ }
74
+ configure(service, params) {
75
+ service.env === this.type && (service.setActiveEnvContribution(this), makeUpCanvas(params.domref, params.canvasIdLists, this.canvasMap, params.freeCanvasIdx, this.freeCanvasList, params.taro, params.pixelRatio),
76
+ this.taro = params.taro, this.pixelRatio = params.pixelRatio);
77
+ }
78
+ loadImage(url) {
79
+ return Promise.resolve({
80
+ data: url,
81
+ loadState: "success"
82
+ });
83
+ }
84
+ loadSvg(svgStr) {
85
+ const _window = window || globalThis;
86
+ if (_window.DOMParser) {
87
+ const svg = (new _window.DOMParser).parseFromString(svgStr, "image/svg+xml").children[0], data = (new XMLSerializer).serializeToString(svg), url = `data:image/svg+xml;charset=utf-8,${encodeURIComponent(data)}`;
88
+ return Promise.resolve({
89
+ data: url,
90
+ loadState: "success"
91
+ });
92
+ }
93
+ if (_window.Blob) {
94
+ const data = new _window.Blob([ svgStr ], {
95
+ type: "image/svg+xml"
96
+ }), url = _window.URL.createObjectURL(data);
97
+ return Promise.resolve({
98
+ data: url,
99
+ loadState: "success"
100
+ });
101
+ }
102
+ return Promise.reject();
103
+ }
104
+ createCanvas(params) {
105
+ const result = this.freeCanvasList[this.canvasIdx] || this.freeCanvasList[this.freeCanvasList.length - 1];
106
+ return this.canvasIdx++, result;
107
+ }
108
+ createOffscreenCanvas(params) {}
109
+ releaseCanvas(canvas) {}
110
+ getDevicePixelRatio() {
111
+ return this.pixelRatio;
112
+ }
113
+ getRequestAnimationFrame() {
114
+ return requestAnimationFrame;
115
+ }
116
+ getCancelAnimationFrame() {
117
+ return cancelAnimationFrame;
118
+ }
119
+ addEventListener(type, listener, options) {
120
+ return null;
121
+ }
122
+ removeEventListener(type, listener, options) {
123
+ return null;
124
+ }
125
+ dispatchEvent(event) {
126
+ return null;
127
+ }
128
+ getElementById(str) {
129
+ return this.canvasMap.get(str);
130
+ }
131
+ getRootElement() {
132
+ return null;
133
+ }
134
+ getDocument() {
135
+ return null;
136
+ }
137
+ release(...params) {}
138
+ };
139
+
140
+ TaroEnvContribution = __decorate([ (0, vrender_core_1.injectable)(), __metadata("design:paramtypes", []) ], TaroEnvContribution),
141
+ exports.TaroEnvContribution = TaroEnvContribution;
142
+ //# sourceMappingURL=taro-contribution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/env/contributions/taro-contribution.ts"],"names":[],"mappings":"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","file":"taro-contribution.js","sourcesContent":["import { injectable, BaseEnvContribution } from '@visactor/vrender-core';\nimport type {\n ICanvasLike,\n EnvType,\n ICreateCanvasParams,\n IEnvContribution,\n IGlobal,\n IDomRef,\n ITTCanvas\n} from '@visactor/vrender-core';\n\ninterface ITaro {\n createCanvasContext: (id: string) => any;\n canvasGetImageData: (data: {\n canvasId: string;\n x: number;\n y: number;\n width: number;\n height: number;\n success: (res: any) => void;\n }) => any;\n}\n\nfunction makeUpCanvas(\n domref: IDomRef,\n canvasIdLists: string[],\n canvasMap: Map<string, ITTCanvas>,\n freeCanvasIdx: number,\n freeCanvasList: ITTCanvas[],\n taro: ITaro,\n dpr: number\n) {\n canvasIdLists.forEach((id, i) => {\n const ctx: any = taro.createCanvasContext(id);\n // TODO: 这里是一个临时方案,向 ctx 内部构造一个 canvas,传递宽高\n ctx.canvas = {\n width: domref.width * dpr,\n height: domref.height * dpr\n };\n\n // TODO: 这里是一个临时方案,兼容 createCircularGradient 方法\n if (!ctx.createRadialGradient) {\n ctx.createRadialGradient = (...cc: any) => ctx.createCircularGradient(...cc);\n }\n\n // HACK: 小程序端draw、getImage方法为异步回调, 在此统一封装 getImageData 为 promise\n if (!ctx.getImageData && taro.canvasGetImageData) {\n ctx.getImageData = (x: number, y: number, width: number, height: number) =>\n new Promise((resolve, reject) => {\n try {\n taro.canvasGetImageData({\n canvasId: id,\n x,\n y,\n width,\n height,\n success(res) {\n resolve(res);\n }\n });\n } catch (err) {\n reject(err);\n }\n });\n }\n\n const canvas = {\n id: id,\n width: domref.width * dpr,\n height: domref.height * dpr,\n offsetWidth: domref.width,\n offsetHeight: domref.height,\n getContext: () => ctx,\n // 构造 getBoundingClientRect 方法\n getBoundingClientRect: () => ({\n height: domref.height,\n width: domref.width\n })\n };\n\n canvasMap.set(id, canvas);\n if (i >= freeCanvasIdx) {\n freeCanvasList.push(canvas);\n }\n\n return canvas;\n });\n}\n\ninterface IConfigureParams {\n domref: any;\n canvasIdLists: string[];\n freeCanvasIdx: number;\n taro: ITaro;\n pixelRatio: number; // taro需要小程序自己处理pixelRatio\n}\n\n@injectable()\nexport class TaroEnvContribution extends BaseEnvContribution implements IEnvContribution {\n type: EnvType = 'taro';\n supportEvent: boolean = true;\n canvasMap: Map<string, ITTCanvas> = new Map();\n freeCanvasList: ITTCanvas[] = [];\n canvasIdx: number = 0;\n taro: ITaro;\n pixelRatio: number;\n\n constructor() {\n super();\n this.supportsTouchEvents = true;\n try {\n this.supportsPointerEvents = !!globalThis.PointerEvent;\n this.supportsMouseEvents = !!globalThis.MouseEvent;\n } catch (err) {\n this.supportsPointerEvents = false;\n this.supportsMouseEvents = false;\n }\n this.applyStyles = true;\n }\n\n /**\n * 获取动态canvas的数量,offscreenCanvas或者framebuffer\n */\n getDynamicCanvasCount(): number {\n return this.freeCanvasList.length;\n }\n\n /**\n * 获取静态canvas的数量,纯粹canvas\n */\n getStaticCanvasCount(): number {\n return this.freeCanvasList.length;\n }\n\n // TODO:VGrammar在小程序环境会重复调用setEnv传入canvas,所以每次configure并不会释放\n // 这里等待后续和VGrammar沟通\n configure(service: IGlobal, params: IConfigureParams) {\n if (service.env === this.type) {\n service.setActiveEnvContribution(this);\n makeUpCanvas(\n params.domref,\n params.canvasIdLists,\n this.canvasMap,\n params.freeCanvasIdx,\n this.freeCanvasList,\n params.taro,\n params.pixelRatio\n );\n this.taro = params.taro;\n this.pixelRatio = params.pixelRatio;\n\n // loadTaroContributions();\n }\n }\n\n loadImage(url: string): Promise<{\n loadState: 'success' | 'fail';\n data: HTMLImageElement | ImageData | null;\n }> {\n return Promise.resolve({\n data: url as unknown as HTMLImageElement,\n loadState: 'success'\n });\n }\n\n loadSvg(svgStr: string): Promise<{\n loadState: 'success' | 'fail';\n data: HTMLImageElement | ImageData | null;\n }> {\n const _window = window || globalThis;\n if (_window.DOMParser) {\n const parser = new _window.DOMParser();\n const svg = parser.parseFromString(svgStr, 'image/svg+xml').children[0];\n const data = new XMLSerializer().serializeToString(svg);\n const url = `data:image/svg+xml;charset=utf-8,${encodeURIComponent(data)}`; //svg转base64\n\n return Promise.resolve({\n data: url as unknown as HTMLImageElement,\n loadState: 'success'\n });\n } else if (_window.Blob) {\n const data = new _window.Blob([svgStr], { type: 'image/svg+xml' });\n const url = _window.URL.createObjectURL(data);\n\n return Promise.resolve({\n data: url as unknown as HTMLImageElement,\n loadState: 'success'\n });\n }\n // 目前移动端上小程序不支持DOMParser和Blob,无法解析svg字符串,可以通过url使用svg资源\n return Promise.reject();\n }\n\n createCanvas(params: ICreateCanvasParams): ITTCanvas {\n // params不生效\n const result = this.freeCanvasList[this.canvasIdx] || this.freeCanvasList[this.freeCanvasList.length - 1];\n this.canvasIdx++;\n return result;\n }\n\n createOffscreenCanvas(params: ICreateCanvasParams) {\n return;\n }\n\n releaseCanvas(canvas: ICanvasLike | string) {\n return;\n }\n\n getDevicePixelRatio(): number {\n return this.pixelRatio;\n }\n\n getRequestAnimationFrame(): (callback: FrameRequestCallback) => number {\n return requestAnimationFrame;\n }\n\n getCancelAnimationFrame(): (h: number) => void {\n return cancelAnimationFrame;\n }\n\n addEventListener<K extends keyof DocumentEventMap>(\n type: K,\n listener: (this: Document, ev: DocumentEventMap[K]) => any,\n options?: boolean | AddEventListenerOptions | undefined\n ): void;\n addEventListener(\n type: string,\n listener: EventListenerOrEventListenerObject,\n options?: boolean | AddEventListenerOptions | undefined\n ): void;\n addEventListener(type: unknown, listener: unknown, options?: unknown): void {\n return null;\n }\n\n removeEventListener<K extends keyof DocumentEventMap>(\n type: K,\n listener: (this: Document, ev: DocumentEventMap[K]) => any,\n options?: boolean | EventListenerOptions | undefined\n ): void;\n removeEventListener(\n type: string,\n listener: EventListenerOrEventListenerObject,\n options?: boolean | EventListenerOptions | undefined\n ): void;\n removeEventListener(type: unknown, listener: unknown, options?: unknown): void {\n return null;\n }\n\n dispatchEvent(event: any): boolean {\n return null;\n }\n\n // 只能索引canvas\n getElementById(str: string): any | null {\n return this.canvasMap.get(str);\n }\n\n getRootElement(): HTMLElement | null {\n return null;\n }\n\n getDocument(): Document | null {\n return null;\n }\n\n release(...params: any): void {\n return;\n }\n}\n"]}
@@ -0,0 +1,40 @@
1
+ import { BaseEnvContribution } from '@visactor/vrender-core';
2
+ import type { ICanvasLike, EnvType, ICreateCanvasParams, IEnvContribution, IGlobal, ITTCanvas } from '@visactor/vrender-core';
3
+ export declare class WxEnvContribution extends BaseEnvContribution implements IEnvContribution {
4
+ type: EnvType;
5
+ supportEvent: boolean;
6
+ canvasMap: Map<string, ITTCanvas>;
7
+ freeCanvasList: ITTCanvas[];
8
+ canvasIdx: number;
9
+ constructor();
10
+ configure(service: IGlobal, params: {
11
+ domref: any;
12
+ canvasIdLists: string[];
13
+ freeCanvasIdx: number;
14
+ component: any;
15
+ }): Promise<void>;
16
+ loadImage(url: string): Promise<{
17
+ loadState: 'success' | 'fail';
18
+ data: HTMLImageElement | ImageData | null;
19
+ }>;
20
+ loadSvg(url: string): Promise<{
21
+ loadState: 'success' | 'fail';
22
+ data: HTMLImageElement | ImageData | null;
23
+ }>;
24
+ createCanvas(params: ICreateCanvasParams): ITTCanvas;
25
+ createOffscreenCanvas(params: ICreateCanvasParams): void;
26
+ releaseCanvas(canvas: ICanvasLike | string): void;
27
+ getDevicePixelRatio(): number;
28
+ getRequestAnimationFrame(): (callback: FrameRequestCallback) => number;
29
+ getCancelAnimationFrame(): (h: number) => void;
30
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions | undefined): void;
31
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions | undefined): void;
32
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions | undefined): void;
33
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions | undefined): void;
34
+ dispatchEvent(event: any): boolean;
35
+ getElementById(str: string): any | null;
36
+ getRootElement(): HTMLElement | null;
37
+ getDocument(): Document | null;
38
+ release(...params: any): void;
39
+ mapToCanvasPoint(event: any): any;
40
+ }