@visactor/vrender-kits 1.0.47-alpha.0 → 1.1.0-alpha.1

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 (812) hide show
  1. package/cjs/canvas/contributions/browser/canvas.js +3 -12
  2. package/cjs/canvas/contributions/browser/canvas.js.map +1 -1
  3. package/cjs/canvas/contributions/browser/context.d.ts +2 -3
  4. package/cjs/canvas/contributions/browser/context.js +3 -12
  5. package/cjs/canvas/contributions/browser/context.js.map +1 -1
  6. package/cjs/canvas/contributions/browser/modules.d.ts +3 -1
  7. package/cjs/canvas/contributions/browser/modules.js +2 -2
  8. package/cjs/canvas/contributions/browser/modules.js.map +1 -1
  9. package/cjs/canvas/contributions/create-canvas-module.d.ts +4 -2
  10. package/cjs/canvas/contributions/create-canvas-module.js +6 -4
  11. package/cjs/canvas/contributions/create-canvas-module.js.map +1 -1
  12. package/cjs/canvas/contributions/feishu/canvas.js +3 -12
  13. package/cjs/canvas/contributions/feishu/canvas.js.map +1 -1
  14. package/cjs/canvas/contributions/feishu/context.js +4 -11
  15. package/cjs/canvas/contributions/feishu/context.js.map +1 -1
  16. package/cjs/canvas/contributions/feishu/modules.d.ts +3 -1
  17. package/cjs/canvas/contributions/feishu/modules.js +2 -2
  18. package/cjs/canvas/contributions/feishu/modules.js.map +1 -1
  19. package/cjs/canvas/contributions/harmony/canvas.js +3 -12
  20. package/cjs/canvas/contributions/harmony/canvas.js.map +1 -1
  21. package/cjs/canvas/contributions/harmony/context.js +3 -10
  22. package/cjs/canvas/contributions/harmony/context.js.map +1 -1
  23. package/cjs/canvas/contributions/harmony/modules.d.ts +3 -1
  24. package/cjs/canvas/contributions/harmony/modules.js +2 -2
  25. package/cjs/canvas/contributions/harmony/modules.js.map +1 -1
  26. package/cjs/canvas/contributions/lynx/canvas.js +3 -12
  27. package/cjs/canvas/contributions/lynx/canvas.js.map +1 -1
  28. package/cjs/canvas/contributions/lynx/context.js +3 -10
  29. package/cjs/canvas/contributions/lynx/context.js.map +1 -1
  30. package/cjs/canvas/contributions/lynx/modules.d.ts +3 -1
  31. package/cjs/canvas/contributions/lynx/modules.js +2 -2
  32. package/cjs/canvas/contributions/lynx/modules.js.map +1 -1
  33. package/cjs/canvas/contributions/modules.d.ts +9 -9
  34. package/cjs/canvas/contributions/modules.js +11 -11
  35. package/cjs/canvas/contributions/modules.js.map +1 -1
  36. package/cjs/canvas/contributions/node/canvas.js +3 -12
  37. package/cjs/canvas/contributions/node/canvas.js.map +1 -1
  38. package/cjs/canvas/contributions/node/context.js +4 -13
  39. package/cjs/canvas/contributions/node/context.js.map +1 -1
  40. package/cjs/canvas/contributions/node/modules.d.ts +3 -1
  41. package/cjs/canvas/contributions/node/modules.js +2 -2
  42. package/cjs/canvas/contributions/node/modules.js.map +1 -1
  43. package/cjs/canvas/contributions/taro/canvas.js +4 -13
  44. package/cjs/canvas/contributions/taro/canvas.js.map +1 -1
  45. package/cjs/canvas/contributions/taro/context.js +3 -10
  46. package/cjs/canvas/contributions/taro/context.js.map +1 -1
  47. package/cjs/canvas/contributions/taro/modules.d.ts +3 -1
  48. package/cjs/canvas/contributions/taro/modules.js +2 -2
  49. package/cjs/canvas/contributions/taro/modules.js.map +1 -1
  50. package/cjs/canvas/contributions/tt/canvas.js +3 -12
  51. package/cjs/canvas/contributions/tt/canvas.js.map +1 -1
  52. package/cjs/canvas/contributions/tt/context.js +3 -10
  53. package/cjs/canvas/contributions/tt/context.js.map +1 -1
  54. package/cjs/canvas/contributions/tt/modules.d.ts +3 -1
  55. package/cjs/canvas/contributions/tt/modules.js +2 -2
  56. package/cjs/canvas/contributions/tt/modules.js.map +1 -1
  57. package/cjs/canvas/contributions/wx/canvas.js +3 -12
  58. package/cjs/canvas/contributions/wx/canvas.js.map +1 -1
  59. package/cjs/canvas/contributions/wx/context.js +4 -11
  60. package/cjs/canvas/contributions/wx/context.js.map +1 -1
  61. package/cjs/canvas/contributions/wx/modules.d.ts +3 -1
  62. package/cjs/canvas/contributions/wx/modules.js +2 -2
  63. package/cjs/canvas/contributions/wx/modules.js.map +1 -1
  64. package/cjs/common/explicit-binding.d.ts +3 -0
  65. package/cjs/common/explicit-binding.js +21 -0
  66. package/cjs/common/explicit-binding.js.map +1 -0
  67. package/cjs/common/legacy-container.d.ts +3 -0
  68. package/cjs/common/legacy-container.js +6 -0
  69. package/cjs/common/legacy-container.js.map +1 -0
  70. package/cjs/env/all.d.ts +3 -3
  71. package/cjs/env/all.js +3 -3
  72. package/cjs/env/all.js.map +1 -1
  73. package/cjs/env/browser.d.ts +3 -3
  74. package/cjs/env/browser.js +12 -10
  75. package/cjs/env/browser.js.map +1 -1
  76. package/cjs/env/contributions/browser-contribution.js +3 -10
  77. package/cjs/env/contributions/browser-contribution.js.map +1 -1
  78. package/cjs/env/contributions/feishu-contribution.js +3 -12
  79. package/cjs/env/contributions/feishu-contribution.js.map +1 -1
  80. package/cjs/env/contributions/harmony-contribution.js +3 -12
  81. package/cjs/env/contributions/harmony-contribution.js.map +1 -1
  82. package/cjs/env/contributions/lynx-contribution.js +3 -12
  83. package/cjs/env/contributions/lynx-contribution.js.map +1 -1
  84. package/cjs/env/contributions/node-contribution.js +2 -9
  85. package/cjs/env/contributions/node-contribution.js.map +1 -1
  86. package/cjs/env/contributions/taro-contribution.js +2 -11
  87. package/cjs/env/contributions/taro-contribution.js.map +1 -1
  88. package/cjs/env/contributions/tt-contribution.js +3 -10
  89. package/cjs/env/contributions/tt-contribution.js.map +1 -1
  90. package/cjs/env/contributions/wx-contribution.js +3 -10
  91. package/cjs/env/contributions/wx-contribution.js.map +1 -1
  92. package/cjs/env/feishu.d.ts +3 -3
  93. package/cjs/env/feishu.js +14 -10
  94. package/cjs/env/feishu.js.map +1 -1
  95. package/cjs/env/harmony.d.ts +3 -3
  96. package/cjs/env/harmony.js +13 -10
  97. package/cjs/env/harmony.js.map +1 -1
  98. package/cjs/env/lynx.d.ts +3 -3
  99. package/cjs/env/lynx.js +14 -10
  100. package/cjs/env/lynx.js.map +1 -1
  101. package/cjs/env/node.d.ts +3 -3
  102. package/cjs/env/node.js +13 -10
  103. package/cjs/env/node.js.map +1 -1
  104. package/cjs/env/taro.d.ts +3 -3
  105. package/cjs/env/taro.js +14 -10
  106. package/cjs/env/taro.js.map +1 -1
  107. package/cjs/env/tt.d.ts +3 -3
  108. package/cjs/env/tt.js +13 -10
  109. package/cjs/env/tt.js.map +1 -1
  110. package/cjs/env/wx.d.ts +3 -3
  111. package/cjs/env/wx.js +14 -12
  112. package/cjs/env/wx.js.map +1 -1
  113. package/cjs/graphic/constants.js +2 -1
  114. package/cjs/index-node.d.ts +5 -1
  115. package/cjs/index-node.js +34 -6
  116. package/cjs/index-node.js.map +1 -1
  117. package/cjs/index.d.ts +1 -0
  118. package/cjs/index.js +32 -2
  119. package/cjs/index.js.map +1 -1
  120. package/cjs/installers/app.d.ts +6 -0
  121. package/cjs/installers/app.js +138 -0
  122. package/cjs/installers/app.js.map +1 -0
  123. package/cjs/picker/canvas-module.d.ts +5 -4
  124. package/cjs/picker/canvas-module.js +22 -13
  125. package/cjs/picker/canvas-module.js.map +1 -1
  126. package/cjs/picker/canvas-picker-service.js +3 -20
  127. package/cjs/picker/canvas-picker-service.js.map +1 -1
  128. package/cjs/picker/contributions/canvas-picker/arc-module.d.ts +1 -2
  129. package/cjs/picker/contributions/canvas-picker/arc-module.js +9 -6
  130. package/cjs/picker/contributions/canvas-picker/arc-module.js.map +1 -1
  131. package/cjs/picker/contributions/canvas-picker/arc-picker.d.ts +1 -1
  132. package/cjs/picker/contributions/canvas-picker/arc-picker.js +2 -16
  133. package/cjs/picker/contributions/canvas-picker/arc-picker.js.map +1 -1
  134. package/cjs/picker/contributions/canvas-picker/arc3d-module.d.ts +1 -2
  135. package/cjs/picker/contributions/canvas-picker/arc3d-module.js +11 -6
  136. package/cjs/picker/contributions/canvas-picker/arc3d-module.js.map +1 -1
  137. package/cjs/picker/contributions/canvas-picker/arc3d-picker.d.ts +1 -1
  138. package/cjs/picker/contributions/canvas-picker/arc3d-picker.js +2 -16
  139. package/cjs/picker/contributions/canvas-picker/arc3d-picker.js.map +1 -1
  140. package/cjs/picker/contributions/canvas-picker/area-module.d.ts +1 -2
  141. package/cjs/picker/contributions/canvas-picker/area-module.js +9 -6
  142. package/cjs/picker/contributions/canvas-picker/area-module.js.map +1 -1
  143. package/cjs/picker/contributions/canvas-picker/area-picker.d.ts +1 -1
  144. package/cjs/picker/contributions/canvas-picker/area-picker.js +2 -16
  145. package/cjs/picker/contributions/canvas-picker/area-picker.js.map +1 -1
  146. package/cjs/picker/contributions/canvas-picker/circle-module.d.ts +1 -2
  147. package/cjs/picker/contributions/canvas-picker/circle-module.js +9 -6
  148. package/cjs/picker/contributions/canvas-picker/circle-module.js.map +1 -1
  149. package/cjs/picker/contributions/canvas-picker/circle-picker.d.ts +1 -1
  150. package/cjs/picker/contributions/canvas-picker/circle-picker.js +2 -16
  151. package/cjs/picker/contributions/canvas-picker/circle-picker.js.map +1 -1
  152. package/cjs/picker/contributions/canvas-picker/gif-image-module.d.ts +1 -2
  153. package/cjs/picker/contributions/canvas-picker/gif-image-module.js +8 -6
  154. package/cjs/picker/contributions/canvas-picker/gif-image-module.js.map +1 -1
  155. package/cjs/picker/contributions/canvas-picker/gif-image-picker.js +3 -10
  156. package/cjs/picker/contributions/canvas-picker/gif-image-picker.js.map +1 -1
  157. package/cjs/picker/contributions/canvas-picker/glyph-module.d.ts +1 -2
  158. package/cjs/picker/contributions/canvas-picker/glyph-module.js +9 -6
  159. package/cjs/picker/contributions/canvas-picker/glyph-module.js.map +1 -1
  160. package/cjs/picker/contributions/canvas-picker/glyph-picker.js +3 -17
  161. package/cjs/picker/contributions/canvas-picker/glyph-picker.js.map +1 -1
  162. package/cjs/picker/contributions/canvas-picker/group-picker.d.ts +1 -1
  163. package/cjs/picker/contributions/canvas-picker/group-picker.js +2 -9
  164. package/cjs/picker/contributions/canvas-picker/group-picker.js.map +1 -1
  165. package/cjs/picker/contributions/canvas-picker/image-module.d.ts +1 -2
  166. package/cjs/picker/contributions/canvas-picker/image-module.js +9 -6
  167. package/cjs/picker/contributions/canvas-picker/image-module.js.map +1 -1
  168. package/cjs/picker/contributions/canvas-picker/image-picker.d.ts +1 -1
  169. package/cjs/picker/contributions/canvas-picker/image-picker.js +2 -16
  170. package/cjs/picker/contributions/canvas-picker/image-picker.js.map +1 -1
  171. package/cjs/picker/contributions/canvas-picker/line-module.d.ts +1 -2
  172. package/cjs/picker/contributions/canvas-picker/line-module.js +9 -6
  173. package/cjs/picker/contributions/canvas-picker/line-module.js.map +1 -1
  174. package/cjs/picker/contributions/canvas-picker/line-picker.d.ts +1 -1
  175. package/cjs/picker/contributions/canvas-picker/line-picker.js +2 -16
  176. package/cjs/picker/contributions/canvas-picker/line-picker.js.map +1 -1
  177. package/cjs/picker/contributions/canvas-picker/lottie-module.d.ts +1 -2
  178. package/cjs/picker/contributions/canvas-picker/lottie-module.js +9 -6
  179. package/cjs/picker/contributions/canvas-picker/lottie-module.js.map +1 -1
  180. package/cjs/picker/contributions/canvas-picker/lottie-picker.js +3 -17
  181. package/cjs/picker/contributions/canvas-picker/lottie-picker.js.map +1 -1
  182. package/cjs/picker/contributions/canvas-picker/module.d.ts +2 -3
  183. package/cjs/picker/contributions/canvas-picker/module.js +11 -7
  184. package/cjs/picker/contributions/canvas-picker/module.js.map +1 -1
  185. package/cjs/picker/contributions/canvas-picker/path-module.d.ts +1 -2
  186. package/cjs/picker/contributions/canvas-picker/path-module.js +9 -6
  187. package/cjs/picker/contributions/canvas-picker/path-module.js.map +1 -1
  188. package/cjs/picker/contributions/canvas-picker/path-picker.d.ts +1 -1
  189. package/cjs/picker/contributions/canvas-picker/path-picker.js +2 -16
  190. package/cjs/picker/contributions/canvas-picker/path-picker.js.map +1 -1
  191. package/cjs/picker/contributions/canvas-picker/polygon-module.d.ts +1 -2
  192. package/cjs/picker/contributions/canvas-picker/polygon-module.js +9 -6
  193. package/cjs/picker/contributions/canvas-picker/polygon-module.js.map +1 -1
  194. package/cjs/picker/contributions/canvas-picker/polygon-picker.d.ts +1 -1
  195. package/cjs/picker/contributions/canvas-picker/polygon-picker.js +2 -16
  196. package/cjs/picker/contributions/canvas-picker/polygon-picker.js.map +1 -1
  197. package/cjs/picker/contributions/canvas-picker/pyramid3d-module.d.ts +1 -2
  198. package/cjs/picker/contributions/canvas-picker/pyramid3d-module.js +11 -6
  199. package/cjs/picker/contributions/canvas-picker/pyramid3d-module.js.map +1 -1
  200. package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.d.ts +1 -1
  201. package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.js +2 -16
  202. package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.js.map +1 -1
  203. package/cjs/picker/contributions/canvas-picker/rect-module.d.ts +1 -2
  204. package/cjs/picker/contributions/canvas-picker/rect-module.js +9 -6
  205. package/cjs/picker/contributions/canvas-picker/rect-module.js.map +1 -1
  206. package/cjs/picker/contributions/canvas-picker/rect-picker.js +3 -17
  207. package/cjs/picker/contributions/canvas-picker/rect-picker.js.map +1 -1
  208. package/cjs/picker/contributions/canvas-picker/rect3d-module.d.ts +1 -2
  209. package/cjs/picker/contributions/canvas-picker/rect3d-module.js +11 -6
  210. package/cjs/picker/contributions/canvas-picker/rect3d-module.js.map +1 -1
  211. package/cjs/picker/contributions/canvas-picker/rect3d-picker.d.ts +1 -1
  212. package/cjs/picker/contributions/canvas-picker/rect3d-picker.js +2 -16
  213. package/cjs/picker/contributions/canvas-picker/rect3d-picker.js.map +1 -1
  214. package/cjs/picker/contributions/canvas-picker/richtext-module.d.ts +1 -2
  215. package/cjs/picker/contributions/canvas-picker/richtext-module.js +9 -6
  216. package/cjs/picker/contributions/canvas-picker/richtext-module.js.map +1 -1
  217. package/cjs/picker/contributions/canvas-picker/richtext-picker.d.ts +1 -1
  218. package/cjs/picker/contributions/canvas-picker/richtext-picker.js +2 -16
  219. package/cjs/picker/contributions/canvas-picker/richtext-picker.js.map +1 -1
  220. package/cjs/picker/contributions/canvas-picker/star-module.d.ts +1 -2
  221. package/cjs/picker/contributions/canvas-picker/star-module.js +11 -6
  222. package/cjs/picker/contributions/canvas-picker/star-module.js.map +1 -1
  223. package/cjs/picker/contributions/canvas-picker/star-picker.d.ts +1 -1
  224. package/cjs/picker/contributions/canvas-picker/star-picker.js +2 -16
  225. package/cjs/picker/contributions/canvas-picker/star-picker.js.map +1 -1
  226. package/cjs/picker/contributions/canvas-picker/symbol-module.d.ts +1 -2
  227. package/cjs/picker/contributions/canvas-picker/symbol-module.js +9 -6
  228. package/cjs/picker/contributions/canvas-picker/symbol-module.js.map +1 -1
  229. package/cjs/picker/contributions/canvas-picker/symbol-picker.d.ts +1 -1
  230. package/cjs/picker/contributions/canvas-picker/symbol-picker.js +2 -16
  231. package/cjs/picker/contributions/canvas-picker/symbol-picker.js.map +1 -1
  232. package/cjs/picker/contributions/canvas-picker/text-module.d.ts +1 -2
  233. package/cjs/picker/contributions/canvas-picker/text-module.js +9 -6
  234. package/cjs/picker/contributions/canvas-picker/text-module.js.map +1 -1
  235. package/cjs/picker/contributions/canvas-picker/text-picker.d.ts +1 -1
  236. package/cjs/picker/contributions/canvas-picker/text-picker.js +2 -16
  237. package/cjs/picker/contributions/canvas-picker/text-picker.js.map +1 -1
  238. package/cjs/picker/contributions/constants.d.ts +1 -0
  239. package/cjs/picker/contributions/constants.js +12 -11
  240. package/cjs/picker/contributions/constants.js.map +1 -1
  241. package/cjs/picker/contributions/math-picker/arc-module.d.ts +1 -2
  242. package/cjs/picker/contributions/math-picker/arc-module.js +9 -6
  243. package/cjs/picker/contributions/math-picker/arc-module.js.map +1 -1
  244. package/cjs/picker/contributions/math-picker/arc-picker.d.ts +1 -1
  245. package/cjs/picker/contributions/math-picker/arc-picker.js +2 -16
  246. package/cjs/picker/contributions/math-picker/arc-picker.js.map +1 -1
  247. package/cjs/picker/contributions/math-picker/area-module.d.ts +1 -2
  248. package/cjs/picker/contributions/math-picker/area-module.js +9 -6
  249. package/cjs/picker/contributions/math-picker/area-module.js.map +1 -1
  250. package/cjs/picker/contributions/math-picker/area-picker.d.ts +1 -1
  251. package/cjs/picker/contributions/math-picker/area-picker.js +2 -16
  252. package/cjs/picker/contributions/math-picker/area-picker.js.map +1 -1
  253. package/cjs/picker/contributions/math-picker/circle-module.d.ts +1 -2
  254. package/cjs/picker/contributions/math-picker/circle-module.js +9 -6
  255. package/cjs/picker/contributions/math-picker/circle-module.js.map +1 -1
  256. package/cjs/picker/contributions/math-picker/circle-picker.d.ts +1 -1
  257. package/cjs/picker/contributions/math-picker/circle-picker.js +2 -16
  258. package/cjs/picker/contributions/math-picker/circle-picker.js.map +1 -1
  259. package/cjs/picker/contributions/math-picker/glyph-module.d.ts +1 -2
  260. package/cjs/picker/contributions/math-picker/glyph-module.js +9 -6
  261. package/cjs/picker/contributions/math-picker/glyph-module.js.map +1 -1
  262. package/cjs/picker/contributions/math-picker/glyph-picker.js +3 -17
  263. package/cjs/picker/contributions/math-picker/glyph-picker.js.map +1 -1
  264. package/cjs/picker/contributions/math-picker/image-module.d.ts +1 -2
  265. package/cjs/picker/contributions/math-picker/image-module.js +8 -6
  266. package/cjs/picker/contributions/math-picker/image-module.js.map +1 -1
  267. package/cjs/picker/contributions/math-picker/image-picker.d.ts +1 -1
  268. package/cjs/picker/contributions/math-picker/image-picker.js +2 -9
  269. package/cjs/picker/contributions/math-picker/image-picker.js.map +1 -1
  270. package/cjs/picker/contributions/math-picker/line-module.d.ts +1 -2
  271. package/cjs/picker/contributions/math-picker/line-module.js +9 -6
  272. package/cjs/picker/contributions/math-picker/line-module.js.map +1 -1
  273. package/cjs/picker/contributions/math-picker/line-picker.d.ts +1 -1
  274. package/cjs/picker/contributions/math-picker/line-picker.js +2 -16
  275. package/cjs/picker/contributions/math-picker/line-picker.js.map +1 -1
  276. package/cjs/picker/contributions/math-picker/module.d.ts +2 -3
  277. package/cjs/picker/contributions/math-picker/module.js +9 -5
  278. package/cjs/picker/contributions/math-picker/module.js.map +1 -1
  279. package/cjs/picker/contributions/math-picker/path-module.d.ts +1 -2
  280. package/cjs/picker/contributions/math-picker/path-module.js +9 -6
  281. package/cjs/picker/contributions/math-picker/path-module.js.map +1 -1
  282. package/cjs/picker/contributions/math-picker/path-picker.d.ts +1 -1
  283. package/cjs/picker/contributions/math-picker/path-picker.js +2 -16
  284. package/cjs/picker/contributions/math-picker/path-picker.js.map +1 -1
  285. package/cjs/picker/contributions/math-picker/polygon-module.d.ts +1 -2
  286. package/cjs/picker/contributions/math-picker/polygon-module.js +9 -6
  287. package/cjs/picker/contributions/math-picker/polygon-module.js.map +1 -1
  288. package/cjs/picker/contributions/math-picker/polygon-picker.d.ts +1 -1
  289. package/cjs/picker/contributions/math-picker/polygon-picker.js +2 -16
  290. package/cjs/picker/contributions/math-picker/polygon-picker.js.map +1 -1
  291. package/cjs/picker/contributions/math-picker/rect-module.d.ts +1 -2
  292. package/cjs/picker/contributions/math-picker/rect-module.js +9 -6
  293. package/cjs/picker/contributions/math-picker/rect-module.js.map +1 -1
  294. package/cjs/picker/contributions/math-picker/rect-picker.js +3 -17
  295. package/cjs/picker/contributions/math-picker/rect-picker.js.map +1 -1
  296. package/cjs/picker/contributions/math-picker/richtext-module.d.ts +1 -2
  297. package/cjs/picker/contributions/math-picker/richtext-module.js +9 -6
  298. package/cjs/picker/contributions/math-picker/richtext-module.js.map +1 -1
  299. package/cjs/picker/contributions/math-picker/richtext-picker.d.ts +1 -1
  300. package/cjs/picker/contributions/math-picker/richtext-picker.js +2 -16
  301. package/cjs/picker/contributions/math-picker/richtext-picker.js.map +1 -1
  302. package/cjs/picker/contributions/math-picker/symbol-module.d.ts +1 -2
  303. package/cjs/picker/contributions/math-picker/symbol-module.js +9 -6
  304. package/cjs/picker/contributions/math-picker/symbol-module.js.map +1 -1
  305. package/cjs/picker/contributions/math-picker/symbol-picker.d.ts +1 -1
  306. package/cjs/picker/contributions/math-picker/symbol-picker.js +2 -16
  307. package/cjs/picker/contributions/math-picker/symbol-picker.js.map +1 -1
  308. package/cjs/picker/contributions/math-picker/text-module.d.ts +1 -2
  309. package/cjs/picker/contributions/math-picker/text-module.js +8 -6
  310. package/cjs/picker/contributions/math-picker/text-module.js.map +1 -1
  311. package/cjs/picker/contributions/math-picker/text-picker.d.ts +1 -1
  312. package/cjs/picker/contributions/math-picker/text-picker.js +2 -9
  313. package/cjs/picker/contributions/math-picker/text-picker.js.map +1 -1
  314. package/cjs/picker/math-module.d.ts +5 -4
  315. package/cjs/picker/math-module.js +18 -19
  316. package/cjs/picker/math-module.js.map +1 -1
  317. package/cjs/picker/math-picker-service.js +3 -19
  318. package/cjs/picker/math-picker-service.js.map +1 -1
  319. package/cjs/register/register-arc.js +7 -2
  320. package/cjs/register/register-arc.js.map +1 -1
  321. package/cjs/register/register-arc3d.js +9 -7
  322. package/cjs/register/register-arc3d.js.map +1 -1
  323. package/cjs/register/register-area.js +7 -2
  324. package/cjs/register/register-area.js.map +1 -1
  325. package/cjs/register/register-circle.js +7 -2
  326. package/cjs/register/register-circle.js.map +1 -1
  327. package/cjs/register/register-gif.js +7 -3
  328. package/cjs/register/register-gif.js.map +1 -1
  329. package/cjs/register/register-glyph.js +7 -2
  330. package/cjs/register/register-glyph.js.map +1 -1
  331. package/cjs/register/register-image.js +7 -2
  332. package/cjs/register/register-image.js.map +1 -1
  333. package/cjs/register/register-line.js +7 -2
  334. package/cjs/register/register-line.js.map +1 -1
  335. package/cjs/register/register-path.js +7 -2
  336. package/cjs/register/register-path.js.map +1 -1
  337. package/cjs/register/register-polygon.js +7 -2
  338. package/cjs/register/register-polygon.js.map +1 -1
  339. package/cjs/register/register-pyramid3d.js +8 -5
  340. package/cjs/register/register-pyramid3d.js.map +1 -1
  341. package/cjs/register/register-rect.js +7 -2
  342. package/cjs/register/register-rect.js.map +1 -1
  343. package/cjs/register/register-rect3d.js +7 -4
  344. package/cjs/register/register-rect3d.js.map +1 -1
  345. package/cjs/register/register-richtext.js +7 -2
  346. package/cjs/register/register-richtext.js.map +1 -1
  347. package/cjs/register/register-star.js +7 -4
  348. package/cjs/register/register-star.js.map +1 -1
  349. package/cjs/register/register-symbol.js +8 -4
  350. package/cjs/register/register-symbol.js.map +1 -1
  351. package/cjs/register/register-text.js +7 -2
  352. package/cjs/register/register-text.js.map +1 -1
  353. package/cjs/render/contributions/canvas/gif-image-module.d.ts +1 -2
  354. package/cjs/render/contributions/canvas/gif-image-module.js +9 -6
  355. package/cjs/render/contributions/canvas/gif-image-module.js.map +1 -1
  356. package/cjs/render/contributions/canvas/gif-image-render.js +2 -16
  357. package/cjs/render/contributions/canvas/gif-image-render.js.map +1 -1
  358. package/cjs/render/contributions/canvas/lottie-module.d.ts +1 -2
  359. package/cjs/render/contributions/canvas/lottie-module.js +9 -6
  360. package/cjs/render/contributions/canvas/lottie-module.js.map +1 -1
  361. package/cjs/render/contributions/canvas/lottie-render.js +2 -9
  362. package/cjs/render/contributions/canvas/lottie-render.js.map +1 -1
  363. package/cjs/render/contributions/rough/module.d.ts +2 -3
  364. package/cjs/render/contributions/rough/module.js +27 -11
  365. package/cjs/render/contributions/rough/module.js.map +1 -1
  366. package/cjs/render/contributions/rough/rough-arc.js +3 -15
  367. package/cjs/render/contributions/rough/rough-arc.js.map +1 -1
  368. package/cjs/render/contributions/rough/rough-area.js +3 -8
  369. package/cjs/render/contributions/rough/rough-area.js.map +1 -1
  370. package/cjs/render/contributions/rough/rough-circle.js +3 -15
  371. package/cjs/render/contributions/rough/rough-circle.js.map +1 -1
  372. package/cjs/render/contributions/rough/rough-line.js +2 -16
  373. package/cjs/render/contributions/rough/rough-line.js.map +1 -1
  374. package/cjs/render/contributions/rough/rough-path.js +3 -15
  375. package/cjs/render/contributions/rough/rough-path.js.map +1 -1
  376. package/cjs/render/contributions/rough/rough-rect.js +2 -16
  377. package/cjs/render/contributions/rough/rough-rect.js.map +1 -1
  378. package/cjs/render/contributions/rough/rough-symbol.js +2 -16
  379. package/cjs/render/contributions/rough/rough-symbol.js.map +1 -1
  380. package/cjs/tools/dynamicTexture.js +0 -2
  381. package/cjs/window/contributions/browser-contribution.d.ts +2 -2
  382. package/cjs/window/contributions/browser-contribution.js +18 -22
  383. package/cjs/window/contributions/browser-contribution.js.map +1 -1
  384. package/cjs/window/contributions/feishu-contribution.d.ts +3 -3
  385. package/cjs/window/contributions/feishu-contribution.js +15 -22
  386. package/cjs/window/contributions/feishu-contribution.js.map +1 -1
  387. package/cjs/window/contributions/harmony-contribution.d.ts +3 -3
  388. package/cjs/window/contributions/harmony-contribution.js +15 -22
  389. package/cjs/window/contributions/harmony-contribution.js.map +1 -1
  390. package/cjs/window/contributions/lynx-contribution.d.ts +3 -3
  391. package/cjs/window/contributions/lynx-contribution.js +15 -22
  392. package/cjs/window/contributions/lynx-contribution.js.map +1 -1
  393. package/cjs/window/contributions/native-contribution.js.map +1 -1
  394. package/cjs/window/contributions/node-contribution.d.ts +3 -3
  395. package/cjs/window/contributions/node-contribution.js +13 -22
  396. package/cjs/window/contributions/node-contribution.js.map +1 -1
  397. package/cjs/window/contributions/taro-contribution.d.ts +3 -3
  398. package/cjs/window/contributions/taro-contribution.js +15 -22
  399. package/cjs/window/contributions/taro-contribution.js.map +1 -1
  400. package/cjs/window/contributions/tt-contribution.d.ts +3 -3
  401. package/cjs/window/contributions/tt-contribution.js +15 -22
  402. package/cjs/window/contributions/tt-contribution.js.map +1 -1
  403. package/cjs/window/contributions/wx-contribution.d.ts +3 -3
  404. package/cjs/window/contributions/wx-contribution.js +15 -22
  405. package/cjs/window/contributions/wx-contribution.js.map +1 -1
  406. package/dist/index.es.js +5487 -5447
  407. package/es/canvas/contributions/browser/canvas.js +4 -14
  408. package/es/canvas/contributions/browser/canvas.js.map +1 -1
  409. package/es/canvas/contributions/browser/context.d.ts +2 -3
  410. package/es/canvas/contributions/browser/context.js +4 -14
  411. package/es/canvas/contributions/browser/context.js.map +1 -1
  412. package/es/canvas/contributions/browser/modules.d.ts +3 -1
  413. package/es/canvas/contributions/browser/modules.js +1 -1
  414. package/es/canvas/contributions/browser/modules.js.map +1 -1
  415. package/es/canvas/contributions/create-canvas-module.d.ts +4 -2
  416. package/es/canvas/contributions/create-canvas-module.js +7 -5
  417. package/es/canvas/contributions/create-canvas-module.js.map +1 -1
  418. package/es/canvas/contributions/feishu/canvas.js +4 -14
  419. package/es/canvas/contributions/feishu/canvas.js.map +1 -1
  420. package/es/canvas/contributions/feishu/context.js +3 -13
  421. package/es/canvas/contributions/feishu/context.js.map +1 -1
  422. package/es/canvas/contributions/feishu/modules.d.ts +3 -1
  423. package/es/canvas/contributions/feishu/modules.js +1 -1
  424. package/es/canvas/contributions/feishu/modules.js.map +1 -1
  425. package/es/canvas/contributions/harmony/canvas.js +4 -14
  426. package/es/canvas/contributions/harmony/canvas.js.map +1 -1
  427. package/es/canvas/contributions/harmony/context.js +4 -12
  428. package/es/canvas/contributions/harmony/context.js.map +1 -1
  429. package/es/canvas/contributions/harmony/modules.d.ts +3 -1
  430. package/es/canvas/contributions/harmony/modules.js +1 -1
  431. package/es/canvas/contributions/harmony/modules.js.map +1 -1
  432. package/es/canvas/contributions/lynx/canvas.js +4 -14
  433. package/es/canvas/contributions/lynx/canvas.js.map +1 -1
  434. package/es/canvas/contributions/lynx/context.js +4 -12
  435. package/es/canvas/contributions/lynx/context.js.map +1 -1
  436. package/es/canvas/contributions/lynx/modules.d.ts +3 -1
  437. package/es/canvas/contributions/lynx/modules.js +1 -1
  438. package/es/canvas/contributions/lynx/modules.js.map +1 -1
  439. package/es/canvas/contributions/modules.d.ts +9 -9
  440. package/es/canvas/contributions/modules.js +17 -17
  441. package/es/canvas/contributions/modules.js.map +1 -1
  442. package/es/canvas/contributions/node/canvas.js +4 -14
  443. package/es/canvas/contributions/node/canvas.js.map +1 -1
  444. package/es/canvas/contributions/node/context.js +3 -15
  445. package/es/canvas/contributions/node/context.js.map +1 -1
  446. package/es/canvas/contributions/node/modules.d.ts +3 -1
  447. package/es/canvas/contributions/node/modules.js +1 -1
  448. package/es/canvas/contributions/node/modules.js.map +1 -1
  449. package/es/canvas/contributions/taro/canvas.js +3 -15
  450. package/es/canvas/contributions/taro/canvas.js.map +1 -1
  451. package/es/canvas/contributions/taro/context.js +4 -12
  452. package/es/canvas/contributions/taro/context.js.map +1 -1
  453. package/es/canvas/contributions/taro/modules.d.ts +3 -1
  454. package/es/canvas/contributions/taro/modules.js +1 -1
  455. package/es/canvas/contributions/taro/modules.js.map +1 -1
  456. package/es/canvas/contributions/tt/canvas.js +4 -14
  457. package/es/canvas/contributions/tt/canvas.js.map +1 -1
  458. package/es/canvas/contributions/tt/context.js +2 -12
  459. package/es/canvas/contributions/tt/context.js.map +1 -1
  460. package/es/canvas/contributions/tt/modules.d.ts +3 -1
  461. package/es/canvas/contributions/tt/modules.js +1 -1
  462. package/es/canvas/contributions/tt/modules.js.map +1 -1
  463. package/es/canvas/contributions/wx/canvas.js +4 -14
  464. package/es/canvas/contributions/wx/canvas.js.map +1 -1
  465. package/es/canvas/contributions/wx/context.js +3 -13
  466. package/es/canvas/contributions/wx/context.js.map +1 -1
  467. package/es/canvas/contributions/wx/modules.d.ts +3 -1
  468. package/es/canvas/contributions/wx/modules.js +1 -1
  469. package/es/canvas/contributions/wx/modules.js.map +1 -1
  470. package/es/common/explicit-binding.d.ts +3 -0
  471. package/es/common/explicit-binding.js +14 -0
  472. package/es/common/explicit-binding.js.map +1 -0
  473. package/es/common/legacy-container.d.ts +3 -0
  474. package/es/common/legacy-container.js +2 -0
  475. package/es/common/legacy-container.js.map +1 -0
  476. package/es/env/all.d.ts +3 -3
  477. package/es/env/all.js +4 -4
  478. package/es/env/all.js.map +1 -1
  479. package/es/env/browser.d.ts +3 -3
  480. package/es/env/browser.js +12 -13
  481. package/es/env/browser.js.map +1 -1
  482. package/es/env/contributions/browser-contribution.js +4 -14
  483. package/es/env/contributions/browser-contribution.js.map +1 -1
  484. package/es/env/contributions/feishu-contribution.js +4 -16
  485. package/es/env/contributions/feishu-contribution.js.map +1 -1
  486. package/es/env/contributions/harmony-contribution.js +4 -16
  487. package/es/env/contributions/harmony-contribution.js.map +1 -1
  488. package/es/env/contributions/lynx-contribution.js +4 -16
  489. package/es/env/contributions/lynx-contribution.js.map +1 -1
  490. package/es/env/contributions/node-contribution.js +3 -13
  491. package/es/env/contributions/node-contribution.js.map +1 -1
  492. package/es/env/contributions/taro-contribution.js +3 -15
  493. package/es/env/contributions/taro-contribution.js.map +1 -1
  494. package/es/env/contributions/tt-contribution.js +4 -14
  495. package/es/env/contributions/tt-contribution.js.map +1 -1
  496. package/es/env/contributions/wx-contribution.js +4 -14
  497. package/es/env/contributions/wx-contribution.js.map +1 -1
  498. package/es/env/feishu.d.ts +3 -3
  499. package/es/env/feishu.js +12 -12
  500. package/es/env/feishu.js.map +1 -1
  501. package/es/env/harmony.d.ts +3 -3
  502. package/es/env/harmony.js +12 -12
  503. package/es/env/harmony.js.map +1 -1
  504. package/es/env/lynx.d.ts +3 -3
  505. package/es/env/lynx.js +12 -12
  506. package/es/env/lynx.js.map +1 -1
  507. package/es/env/node.d.ts +3 -3
  508. package/es/env/node.js +12 -13
  509. package/es/env/node.js.map +1 -1
  510. package/es/env/taro.d.ts +3 -3
  511. package/es/env/taro.js +12 -12
  512. package/es/env/taro.js.map +1 -1
  513. package/es/env/tt.d.ts +3 -3
  514. package/es/env/tt.js +12 -12
  515. package/es/env/tt.js.map +1 -1
  516. package/es/env/wx.d.ts +3 -3
  517. package/es/env/wx.js +13 -14
  518. package/es/env/wx.js.map +1 -1
  519. package/es/graphic/constants.js +2 -1
  520. package/es/index-node.d.ts +5 -1
  521. package/es/index-node.js +6 -0
  522. package/es/index-node.js.map +1 -1
  523. package/es/index.d.ts +1 -0
  524. package/es/index.js +2 -0
  525. package/es/index.js.map +1 -1
  526. package/es/installers/app.d.ts +6 -0
  527. package/es/installers/app.js +186 -0
  528. package/es/installers/app.js.map +1 -0
  529. package/es/picker/canvas-module.d.ts +5 -4
  530. package/es/picker/canvas-module.js +53 -7
  531. package/es/picker/canvas-module.js.map +1 -1
  532. package/es/picker/canvas-picker-service.js +3 -21
  533. package/es/picker/canvas-picker-service.js.map +1 -1
  534. package/es/picker/contributions/canvas-picker/arc-module.d.ts +1 -2
  535. package/es/picker/contributions/canvas-picker/arc-module.js +8 -6
  536. package/es/picker/contributions/canvas-picker/arc-module.js.map +1 -1
  537. package/es/picker/contributions/canvas-picker/arc-picker.d.ts +1 -1
  538. package/es/picker/contributions/canvas-picker/arc-picker.js +3 -19
  539. package/es/picker/contributions/canvas-picker/arc-picker.js.map +1 -1
  540. package/es/picker/contributions/canvas-picker/arc3d-module.d.ts +1 -2
  541. package/es/picker/contributions/canvas-picker/arc3d-module.js +9 -5
  542. package/es/picker/contributions/canvas-picker/arc3d-module.js.map +1 -1
  543. package/es/picker/contributions/canvas-picker/arc3d-picker.d.ts +1 -1
  544. package/es/picker/contributions/canvas-picker/arc3d-picker.js +3 -19
  545. package/es/picker/contributions/canvas-picker/arc3d-picker.js.map +1 -1
  546. package/es/picker/contributions/canvas-picker/area-module.d.ts +1 -2
  547. package/es/picker/contributions/canvas-picker/area-module.js +7 -5
  548. package/es/picker/contributions/canvas-picker/area-module.js.map +1 -1
  549. package/es/picker/contributions/canvas-picker/area-picker.d.ts +1 -1
  550. package/es/picker/contributions/canvas-picker/area-picker.js +3 -19
  551. package/es/picker/contributions/canvas-picker/area-picker.js.map +1 -1
  552. package/es/picker/contributions/canvas-picker/circle-module.d.ts +1 -2
  553. package/es/picker/contributions/canvas-picker/circle-module.js +7 -5
  554. package/es/picker/contributions/canvas-picker/circle-module.js.map +1 -1
  555. package/es/picker/contributions/canvas-picker/circle-picker.d.ts +1 -1
  556. package/es/picker/contributions/canvas-picker/circle-picker.js +3 -19
  557. package/es/picker/contributions/canvas-picker/circle-picker.js.map +1 -1
  558. package/es/picker/contributions/canvas-picker/gif-image-module.d.ts +1 -2
  559. package/es/picker/contributions/canvas-picker/gif-image-module.js +4 -6
  560. package/es/picker/contributions/canvas-picker/gif-image-module.js.map +1 -1
  561. package/es/picker/contributions/canvas-picker/gif-image-picker.js +2 -14
  562. package/es/picker/contributions/canvas-picker/gif-image-picker.js.map +1 -1
  563. package/es/picker/contributions/canvas-picker/glyph-module.d.ts +1 -2
  564. package/es/picker/contributions/canvas-picker/glyph-module.js +7 -5
  565. package/es/picker/contributions/canvas-picker/glyph-module.js.map +1 -1
  566. package/es/picker/contributions/canvas-picker/glyph-picker.js +2 -20
  567. package/es/picker/contributions/canvas-picker/glyph-picker.js.map +1 -1
  568. package/es/picker/contributions/canvas-picker/group-picker.d.ts +1 -1
  569. package/es/picker/contributions/canvas-picker/group-picker.js +3 -13
  570. package/es/picker/contributions/canvas-picker/group-picker.js.map +1 -1
  571. package/es/picker/contributions/canvas-picker/image-module.d.ts +1 -2
  572. package/es/picker/contributions/canvas-picker/image-module.js +7 -5
  573. package/es/picker/contributions/canvas-picker/image-module.js.map +1 -1
  574. package/es/picker/contributions/canvas-picker/image-picker.d.ts +1 -1
  575. package/es/picker/contributions/canvas-picker/image-picker.js +3 -19
  576. package/es/picker/contributions/canvas-picker/image-picker.js.map +1 -1
  577. package/es/picker/contributions/canvas-picker/line-module.d.ts +1 -2
  578. package/es/picker/contributions/canvas-picker/line-module.js +7 -5
  579. package/es/picker/contributions/canvas-picker/line-module.js.map +1 -1
  580. package/es/picker/contributions/canvas-picker/line-picker.d.ts +1 -1
  581. package/es/picker/contributions/canvas-picker/line-picker.js +3 -19
  582. package/es/picker/contributions/canvas-picker/line-picker.js.map +1 -1
  583. package/es/picker/contributions/canvas-picker/lottie-module.d.ts +1 -2
  584. package/es/picker/contributions/canvas-picker/lottie-module.js +7 -5
  585. package/es/picker/contributions/canvas-picker/lottie-module.js.map +1 -1
  586. package/es/picker/contributions/canvas-picker/lottie-picker.js +2 -20
  587. package/es/picker/contributions/canvas-picker/lottie-picker.js.map +1 -1
  588. package/es/picker/contributions/canvas-picker/module.d.ts +2 -3
  589. package/es/picker/contributions/canvas-picker/module.js +6 -8
  590. package/es/picker/contributions/canvas-picker/module.js.map +1 -1
  591. package/es/picker/contributions/canvas-picker/path-module.d.ts +1 -2
  592. package/es/picker/contributions/canvas-picker/path-module.js +7 -5
  593. package/es/picker/contributions/canvas-picker/path-module.js.map +1 -1
  594. package/es/picker/contributions/canvas-picker/path-picker.d.ts +1 -1
  595. package/es/picker/contributions/canvas-picker/path-picker.js +3 -19
  596. package/es/picker/contributions/canvas-picker/path-picker.js.map +1 -1
  597. package/es/picker/contributions/canvas-picker/polygon-module.d.ts +1 -2
  598. package/es/picker/contributions/canvas-picker/polygon-module.js +7 -5
  599. package/es/picker/contributions/canvas-picker/polygon-module.js.map +1 -1
  600. package/es/picker/contributions/canvas-picker/polygon-picker.d.ts +1 -1
  601. package/es/picker/contributions/canvas-picker/polygon-picker.js +3 -19
  602. package/es/picker/contributions/canvas-picker/polygon-picker.js.map +1 -1
  603. package/es/picker/contributions/canvas-picker/pyramid3d-module.d.ts +1 -2
  604. package/es/picker/contributions/canvas-picker/pyramid3d-module.js +9 -5
  605. package/es/picker/contributions/canvas-picker/pyramid3d-module.js.map +1 -1
  606. package/es/picker/contributions/canvas-picker/pyramid3d-picker.d.ts +1 -1
  607. package/es/picker/contributions/canvas-picker/pyramid3d-picker.js +3 -19
  608. package/es/picker/contributions/canvas-picker/pyramid3d-picker.js.map +1 -1
  609. package/es/picker/contributions/canvas-picker/rect-module.d.ts +1 -2
  610. package/es/picker/contributions/canvas-picker/rect-module.js +7 -5
  611. package/es/picker/contributions/canvas-picker/rect-module.js.map +1 -1
  612. package/es/picker/contributions/canvas-picker/rect-picker.js +2 -20
  613. package/es/picker/contributions/canvas-picker/rect-picker.js.map +1 -1
  614. package/es/picker/contributions/canvas-picker/rect3d-module.d.ts +1 -2
  615. package/es/picker/contributions/canvas-picker/rect3d-module.js +9 -5
  616. package/es/picker/contributions/canvas-picker/rect3d-module.js.map +1 -1
  617. package/es/picker/contributions/canvas-picker/rect3d-picker.d.ts +1 -1
  618. package/es/picker/contributions/canvas-picker/rect3d-picker.js +3 -19
  619. package/es/picker/contributions/canvas-picker/rect3d-picker.js.map +1 -1
  620. package/es/picker/contributions/canvas-picker/richtext-module.d.ts +1 -2
  621. package/es/picker/contributions/canvas-picker/richtext-module.js +7 -5
  622. package/es/picker/contributions/canvas-picker/richtext-module.js.map +1 -1
  623. package/es/picker/contributions/canvas-picker/richtext-picker.d.ts +1 -1
  624. package/es/picker/contributions/canvas-picker/richtext-picker.js +3 -19
  625. package/es/picker/contributions/canvas-picker/richtext-picker.js.map +1 -1
  626. package/es/picker/contributions/canvas-picker/star-module.d.ts +1 -2
  627. package/es/picker/contributions/canvas-picker/star-module.js +9 -5
  628. package/es/picker/contributions/canvas-picker/star-module.js.map +1 -1
  629. package/es/picker/contributions/canvas-picker/star-picker.d.ts +1 -1
  630. package/es/picker/contributions/canvas-picker/star-picker.js +3 -19
  631. package/es/picker/contributions/canvas-picker/star-picker.js.map +1 -1
  632. package/es/picker/contributions/canvas-picker/symbol-module.d.ts +1 -2
  633. package/es/picker/contributions/canvas-picker/symbol-module.js +7 -5
  634. package/es/picker/contributions/canvas-picker/symbol-module.js.map +1 -1
  635. package/es/picker/contributions/canvas-picker/symbol-picker.d.ts +1 -1
  636. package/es/picker/contributions/canvas-picker/symbol-picker.js +3 -19
  637. package/es/picker/contributions/canvas-picker/symbol-picker.js.map +1 -1
  638. package/es/picker/contributions/canvas-picker/text-module.d.ts +1 -2
  639. package/es/picker/contributions/canvas-picker/text-module.js +7 -5
  640. package/es/picker/contributions/canvas-picker/text-module.js.map +1 -1
  641. package/es/picker/contributions/canvas-picker/text-picker.d.ts +1 -1
  642. package/es/picker/contributions/canvas-picker/text-picker.js +3 -19
  643. package/es/picker/contributions/canvas-picker/text-picker.js.map +1 -1
  644. package/es/picker/contributions/constants.d.ts +1 -0
  645. package/es/picker/contributions/constants.js +2 -0
  646. package/es/picker/contributions/constants.js.map +1 -1
  647. package/es/picker/contributions/math-picker/arc-module.d.ts +1 -2
  648. package/es/picker/contributions/math-picker/arc-module.js +8 -6
  649. package/es/picker/contributions/math-picker/arc-module.js.map +1 -1
  650. package/es/picker/contributions/math-picker/arc-picker.d.ts +1 -1
  651. package/es/picker/contributions/math-picker/arc-picker.js +3 -19
  652. package/es/picker/contributions/math-picker/arc-picker.js.map +1 -1
  653. package/es/picker/contributions/math-picker/area-module.d.ts +1 -2
  654. package/es/picker/contributions/math-picker/area-module.js +7 -5
  655. package/es/picker/contributions/math-picker/area-module.js.map +1 -1
  656. package/es/picker/contributions/math-picker/area-picker.d.ts +1 -1
  657. package/es/picker/contributions/math-picker/area-picker.js +3 -19
  658. package/es/picker/contributions/math-picker/area-picker.js.map +1 -1
  659. package/es/picker/contributions/math-picker/circle-module.d.ts +1 -2
  660. package/es/picker/contributions/math-picker/circle-module.js +7 -5
  661. package/es/picker/contributions/math-picker/circle-module.js.map +1 -1
  662. package/es/picker/contributions/math-picker/circle-picker.d.ts +1 -1
  663. package/es/picker/contributions/math-picker/circle-picker.js +3 -19
  664. package/es/picker/contributions/math-picker/circle-picker.js.map +1 -1
  665. package/es/picker/contributions/math-picker/glyph-module.d.ts +1 -2
  666. package/es/picker/contributions/math-picker/glyph-module.js +8 -6
  667. package/es/picker/contributions/math-picker/glyph-module.js.map +1 -1
  668. package/es/picker/contributions/math-picker/glyph-picker.js +2 -20
  669. package/es/picker/contributions/math-picker/glyph-picker.js.map +1 -1
  670. package/es/picker/contributions/math-picker/image-module.d.ts +1 -2
  671. package/es/picker/contributions/math-picker/image-module.js +5 -7
  672. package/es/picker/contributions/math-picker/image-module.js.map +1 -1
  673. package/es/picker/contributions/math-picker/image-picker.d.ts +1 -1
  674. package/es/picker/contributions/math-picker/image-picker.js +3 -13
  675. package/es/picker/contributions/math-picker/image-picker.js.map +1 -1
  676. package/es/picker/contributions/math-picker/line-module.d.ts +1 -2
  677. package/es/picker/contributions/math-picker/line-module.js +7 -5
  678. package/es/picker/contributions/math-picker/line-module.js.map +1 -1
  679. package/es/picker/contributions/math-picker/line-picker.d.ts +1 -1
  680. package/es/picker/contributions/math-picker/line-picker.js +3 -19
  681. package/es/picker/contributions/math-picker/line-picker.js.map +1 -1
  682. package/es/picker/contributions/math-picker/module.d.ts +2 -3
  683. package/es/picker/contributions/math-picker/module.js +5 -7
  684. package/es/picker/contributions/math-picker/module.js.map +1 -1
  685. package/es/picker/contributions/math-picker/path-module.d.ts +1 -2
  686. package/es/picker/contributions/math-picker/path-module.js +7 -5
  687. package/es/picker/contributions/math-picker/path-module.js.map +1 -1
  688. package/es/picker/contributions/math-picker/path-picker.d.ts +1 -1
  689. package/es/picker/contributions/math-picker/path-picker.js +3 -19
  690. package/es/picker/contributions/math-picker/path-picker.js.map +1 -1
  691. package/es/picker/contributions/math-picker/polygon-module.d.ts +1 -2
  692. package/es/picker/contributions/math-picker/polygon-module.js +7 -5
  693. package/es/picker/contributions/math-picker/polygon-module.js.map +1 -1
  694. package/es/picker/contributions/math-picker/polygon-picker.d.ts +1 -1
  695. package/es/picker/contributions/math-picker/polygon-picker.js +3 -19
  696. package/es/picker/contributions/math-picker/polygon-picker.js.map +1 -1
  697. package/es/picker/contributions/math-picker/rect-module.d.ts +1 -2
  698. package/es/picker/contributions/math-picker/rect-module.js +7 -5
  699. package/es/picker/contributions/math-picker/rect-module.js.map +1 -1
  700. package/es/picker/contributions/math-picker/rect-picker.js +2 -20
  701. package/es/picker/contributions/math-picker/rect-picker.js.map +1 -1
  702. package/es/picker/contributions/math-picker/richtext-module.d.ts +1 -2
  703. package/es/picker/contributions/math-picker/richtext-module.js +9 -7
  704. package/es/picker/contributions/math-picker/richtext-module.js.map +1 -1
  705. package/es/picker/contributions/math-picker/richtext-picker.d.ts +1 -1
  706. package/es/picker/contributions/math-picker/richtext-picker.js +3 -19
  707. package/es/picker/contributions/math-picker/richtext-picker.js.map +1 -1
  708. package/es/picker/contributions/math-picker/symbol-module.d.ts +1 -2
  709. package/es/picker/contributions/math-picker/symbol-module.js +7 -5
  710. package/es/picker/contributions/math-picker/symbol-module.js.map +1 -1
  711. package/es/picker/contributions/math-picker/symbol-picker.d.ts +1 -1
  712. package/es/picker/contributions/math-picker/symbol-picker.js +3 -19
  713. package/es/picker/contributions/math-picker/symbol-picker.js.map +1 -1
  714. package/es/picker/contributions/math-picker/text-module.d.ts +1 -2
  715. package/es/picker/contributions/math-picker/text-module.js +4 -6
  716. package/es/picker/contributions/math-picker/text-module.js.map +1 -1
  717. package/es/picker/contributions/math-picker/text-picker.d.ts +1 -1
  718. package/es/picker/contributions/math-picker/text-picker.js +3 -13
  719. package/es/picker/contributions/math-picker/text-picker.js.map +1 -1
  720. package/es/picker/math-module.d.ts +5 -4
  721. package/es/picker/math-module.js +27 -23
  722. package/es/picker/math-module.js.map +1 -1
  723. package/es/picker/math-picker-service.js +3 -21
  724. package/es/picker/math-picker-service.js.map +1 -1
  725. package/es/register/register-arc.js +9 -5
  726. package/es/register/register-arc.js.map +1 -1
  727. package/es/register/register-arc3d.js +9 -9
  728. package/es/register/register-arc3d.js.map +1 -1
  729. package/es/register/register-area.js +9 -5
  730. package/es/register/register-area.js.map +1 -1
  731. package/es/register/register-circle.js +9 -5
  732. package/es/register/register-circle.js.map +1 -1
  733. package/es/register/register-gif.js +9 -6
  734. package/es/register/register-gif.js.map +1 -1
  735. package/es/register/register-glyph.js +9 -5
  736. package/es/register/register-glyph.js.map +1 -1
  737. package/es/register/register-image.js +9 -5
  738. package/es/register/register-image.js.map +1 -1
  739. package/es/register/register-line.js +9 -5
  740. package/es/register/register-line.js.map +1 -1
  741. package/es/register/register-path.js +9 -5
  742. package/es/register/register-path.js.map +1 -1
  743. package/es/register/register-polygon.js +9 -5
  744. package/es/register/register-polygon.js.map +1 -1
  745. package/es/register/register-pyramid3d.js +8 -7
  746. package/es/register/register-pyramid3d.js.map +1 -1
  747. package/es/register/register-rect.js +9 -5
  748. package/es/register/register-rect.js.map +1 -1
  749. package/es/register/register-rect3d.js +8 -6
  750. package/es/register/register-rect3d.js.map +1 -1
  751. package/es/register/register-richtext.js +9 -5
  752. package/es/register/register-richtext.js.map +1 -1
  753. package/es/register/register-star.js +8 -6
  754. package/es/register/register-star.js.map +1 -1
  755. package/es/register/register-symbol.js +10 -7
  756. package/es/register/register-symbol.js.map +1 -1
  757. package/es/register/register-text.js +9 -5
  758. package/es/register/register-text.js.map +1 -1
  759. package/es/render/contributions/canvas/gif-image-module.d.ts +1 -2
  760. package/es/render/contributions/canvas/gif-image-module.js +7 -5
  761. package/es/render/contributions/canvas/gif-image-module.js.map +1 -1
  762. package/es/render/contributions/canvas/gif-image-render.js +3 -19
  763. package/es/render/contributions/canvas/gif-image-render.js.map +1 -1
  764. package/es/render/contributions/canvas/lottie-module.d.ts +1 -2
  765. package/es/render/contributions/canvas/lottie-module.js +7 -5
  766. package/es/render/contributions/canvas/lottie-module.js.map +1 -1
  767. package/es/render/contributions/canvas/lottie-render.js +3 -13
  768. package/es/render/contributions/canvas/lottie-render.js.map +1 -1
  769. package/es/render/contributions/rough/module.d.ts +2 -3
  770. package/es/render/contributions/rough/module.js +15 -10
  771. package/es/render/contributions/rough/module.js.map +1 -1
  772. package/es/render/contributions/rough/rough-arc.js +3 -19
  773. package/es/render/contributions/rough/rough-arc.js.map +1 -1
  774. package/es/render/contributions/rough/rough-area.js +3 -13
  775. package/es/render/contributions/rough/rough-area.js.map +1 -1
  776. package/es/render/contributions/rough/rough-circle.js +3 -19
  777. package/es/render/contributions/rough/rough-circle.js.map +1 -1
  778. package/es/render/contributions/rough/rough-line.js +3 -19
  779. package/es/render/contributions/rough/rough-line.js.map +1 -1
  780. package/es/render/contributions/rough/rough-path.js +3 -19
  781. package/es/render/contributions/rough/rough-path.js.map +1 -1
  782. package/es/render/contributions/rough/rough-rect.js +3 -19
  783. package/es/render/contributions/rough/rough-rect.js.map +1 -1
  784. package/es/render/contributions/rough/rough-symbol.js +3 -19
  785. package/es/render/contributions/rough/rough-symbol.js.map +1 -1
  786. package/es/tools/dynamicTexture.js +0 -2
  787. package/es/window/contributions/browser-contribution.d.ts +2 -2
  788. package/es/window/contributions/browser-contribution.js +15 -22
  789. package/es/window/contributions/browser-contribution.js.map +1 -1
  790. package/es/window/contributions/feishu-contribution.d.ts +3 -3
  791. package/es/window/contributions/feishu-contribution.js +12 -21
  792. package/es/window/contributions/feishu-contribution.js.map +1 -1
  793. package/es/window/contributions/harmony-contribution.d.ts +3 -3
  794. package/es/window/contributions/harmony-contribution.js +12 -21
  795. package/es/window/contributions/harmony-contribution.js.map +1 -1
  796. package/es/window/contributions/lynx-contribution.d.ts +3 -3
  797. package/es/window/contributions/lynx-contribution.js +12 -21
  798. package/es/window/contributions/lynx-contribution.js.map +1 -1
  799. package/es/window/contributions/native-contribution.js.map +1 -1
  800. package/es/window/contributions/node-contribution.d.ts +3 -3
  801. package/es/window/contributions/node-contribution.js +12 -22
  802. package/es/window/contributions/node-contribution.js.map +1 -1
  803. package/es/window/contributions/taro-contribution.d.ts +3 -3
  804. package/es/window/contributions/taro-contribution.js +12 -21
  805. package/es/window/contributions/taro-contribution.js.map +1 -1
  806. package/es/window/contributions/tt-contribution.d.ts +3 -3
  807. package/es/window/contributions/tt-contribution.js +12 -21
  808. package/es/window/contributions/tt-contribution.js.map +1 -1
  809. package/es/window/contributions/wx-contribution.d.ts +3 -3
  810. package/es/window/contributions/wx-contribution.js +12 -21
  811. package/es/window/contributions/wx-contribution.js.map +1 -1
  812. package/package.json +13 -5
@@ -1,12 +1,4 @@
1
- var __decorate = this && this.__decorate || function(decorators, target, key, desc) {
2
- var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
3
- 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);
4
- return c > 3 && r && Object.defineProperty(target, key, r), r;
5
- }, __metadata = this && this.__metadata || function(k, v) {
6
- if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(k, v);
7
- };
8
-
9
- import { injectable, BaseEnvContribution, rafBasedSto } from "@visactor/vrender-core";
1
+ import { BaseEnvContribution, rafBasedSto } from "@visactor/vrender-core";
10
2
 
11
3
  import { CanvasWrapDisableWH } from "./canvas-wrap";
12
4
 
@@ -18,7 +10,7 @@ function makeUpCanvas(domref, canvasIdLists, canvasMap, freeCanvasIdx, freeCanva
18
10
  }));
19
11
  }
20
12
 
21
- let FeishuEnvContribution = class extends BaseEnvContribution {
13
+ export class FeishuEnvContribution extends BaseEnvContribution {
22
14
  constructor() {
23
15
  super(), this.type = "feishu", this.supportEvent = !0, this.canvasMap = new Map,
24
16
  this.freeCanvasList = [], this.canvasIdx = 0, this.supportsTouchEvents = !0;
@@ -90,9 +82,5 @@ let FeishuEnvContribution = class extends BaseEnvContribution {
90
82
  return null === (_a = null == event ? void 0 : event.type) || void 0 === _a || _a.startsWith("mouse"),
91
83
  event;
92
84
  }
93
- };
94
-
95
- FeishuEnvContribution = __decorate([ injectable(), __metadata("design:paramtypes", []) ], FeishuEnvContribution);
96
-
97
- export { FeishuEnvContribution };
98
- //# sourceMappingURL=feishu-contribution.js.map
85
+ }
86
+ //# sourceMappingURL=feishu-contribution.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/env/contributions/feishu-contribution.ts"],"names":[],"mappings":"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","file":"feishu-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 ITTCanvas\n} from '@visactor/vrender-core';\nimport { CanvasWrapDisableWH } from './canvas-wrap';\n\ndeclare const tt: {\n getSystemInfoSync: () => { pixelRatio: number };\n createCanvasContext: (id: string) => any;\n};\n\n// 飞书小程序canvas的wrap\nfunction makeUpCanvas(\n domref: any,\n canvasIdLists: string[],\n canvasMap: Map<string, ITTCanvas>,\n freeCanvasIdx: number,\n freeCanvasList: ITTCanvas[],\n pixelRatio?: number\n) {\n const dpr = pixelRatio ?? tt.getSystemInfoSync().pixelRatio;\n\n canvasIdLists.forEach((id, i) => {\n // if (canvasMap.has(id)) {\n // return;\n // }\n const ctx = tt.createCanvasContext(id);\n\n const canvas = new CanvasWrapDisableWH(ctx.canvas || {}, ctx, dpr, domref.width, domref.height, id);\n ctx.canvas = canvas;\n canvasMap.set(id, canvas);\n if (i >= freeCanvasIdx) {\n freeCanvasList.push(canvas);\n }\n });\n}\n\n@injectable()\nexport class FeishuEnvContribution extends BaseEnvContribution implements IEnvContribution {\n type: EnvType = 'feishu';\n supportEvent: boolean = true;\n // 所有添加进来的canvas\n canvasMap: Map<string, ITTCanvas> = new Map();\n // 所有可用的canvasList\n freeCanvasList: ITTCanvas[] = [];\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 /**\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 9999;\n }\n\n // TODO:VGrammar在小程序环境会重复调用setEnv传入canvas,所以每次configure并不会释放\n // 这里等待后续和VGrammar沟通\n configure(\n service: IGlobal,\n params: { domref: any; canvasIdLists: string[]; freeCanvasIdx: number; pixelRatio?: number }\n ) {\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.pixelRatio\n );\n\n // loadFeishuContributions();\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(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): ITTCanvas {\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 tt.getSystemInfoSync().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 mapToCanvasPoint(event: any) {\n if (event?.type?.startsWith('mouse')) {\n return event;\n }\n return event;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/env/contributions/feishu-contribution.ts"],"names":[],"mappings":"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","file":"feishu-contribution.js","sourcesContent":["import { BaseEnvContribution, rafBasedSto } from '@visactor/vrender-core';\n// import { loadFeishuContributions } from '../../../kits';\nimport type {\n ICanvasLike,\n EnvType,\n ICreateCanvasParams,\n IEnvContribution,\n IGlobal,\n ITTCanvas\n} from '@visactor/vrender-core';\nimport { CanvasWrapDisableWH } from './canvas-wrap';\n\ndeclare const tt: {\n getSystemInfoSync: () => { pixelRatio: number };\n createCanvasContext: (id: string) => any;\n};\n\n// 飞书小程序canvas的wrap\nfunction makeUpCanvas(\n domref: any,\n canvasIdLists: string[],\n canvasMap: Map<string, ITTCanvas>,\n freeCanvasIdx: number,\n freeCanvasList: ITTCanvas[],\n pixelRatio?: number\n) {\n const dpr = pixelRatio ?? tt.getSystemInfoSync().pixelRatio;\n\n canvasIdLists.forEach((id, i) => {\n // if (canvasMap.has(id)) {\n // return;\n // }\n const ctx = tt.createCanvasContext(id);\n\n const canvas = new CanvasWrapDisableWH(ctx.canvas || {}, ctx, dpr, domref.width, domref.height, id);\n ctx.canvas = canvas;\n canvasMap.set(id, canvas);\n if (i >= freeCanvasIdx) {\n freeCanvasList.push(canvas);\n }\n });\n}\n\nexport class FeishuEnvContribution extends BaseEnvContribution implements IEnvContribution {\n type: EnvType = 'feishu';\n supportEvent: boolean = true;\n // 所有添加进来的canvas\n canvasMap: Map<string, ITTCanvas> = new Map();\n // 所有可用的canvasList\n freeCanvasList: ITTCanvas[] = [];\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 /**\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 9999;\n }\n\n // TODO:VGrammar在小程序环境会重复调用setEnv传入canvas,所以每次configure并不会释放\n // 这里等待后续和VGrammar沟通\n configure(\n service: IGlobal,\n params: { domref: any; canvasIdLists: string[]; freeCanvasIdx: number; pixelRatio?: number }\n ) {\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.pixelRatio\n );\n\n // loadFeishuContributions();\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(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): ITTCanvas {\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 tt.getSystemInfoSync().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 mapToCanvasPoint(event: any) {\n if (event?.type?.startsWith('mouse')) {\n return event;\n }\n return event;\n }\n}\n"]}
@@ -1,12 +1,4 @@
1
- var __decorate = this && this.__decorate || function(decorators, target, key, desc) {
2
- var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
3
- 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);
4
- return c > 3 && r && Object.defineProperty(target, key, r), r;
5
- }, __metadata = this && this.__metadata || function(k, v) {
6
- if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(k, v);
7
- };
8
-
9
- import { injectable, BaseEnvContribution, RafBasedSTO } from "@visactor/vrender-core";
1
+ import { BaseEnvContribution, RafBasedSTO } from "@visactor/vrender-core";
10
2
 
11
3
  import { CanvasWrapDisableWH } from "./canvas-wrap";
12
4
 
@@ -25,7 +17,7 @@ function createCanvas(width, height, id) {
25
17
  }, context, 1, width, height, id);
26
18
  }
27
19
 
28
- let HarmonyEnvContribution = class extends BaseEnvContribution {
20
+ export class HarmonyEnvContribution extends BaseEnvContribution {
29
21
  constructor() {
30
22
  super(), this.type = "harmony", this.supportEvent = !0, this.supportsTouchEvents = !0;
31
23
  try {
@@ -88,9 +80,5 @@ let HarmonyEnvContribution = class extends BaseEnvContribution {
88
80
  return null;
89
81
  }
90
82
  release(...params) {}
91
- };
92
-
93
- HarmonyEnvContribution = __decorate([ injectable(), __metadata("design:paramtypes", []) ], HarmonyEnvContribution);
94
-
95
- export { HarmonyEnvContribution };
96
- //# sourceMappingURL=harmony-contribution.js.map
83
+ }
84
+ //# sourceMappingURL=harmony-contribution.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/env/contributions/harmony-contribution.ts"],"names":[],"mappings":"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","file":"harmony-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';\nimport { CanvasWrapDisableWH, CanvasWrapEnableWH } from './canvas-wrap';\n\nfunction createCanvas(width: number, height: number, id?: string) {\n // const context = new (OffscreenCanvasRenderingContext2D as any)(width, height);\n // 浏览器debug\n const _c = new OffscreenCanvas(width, height);\n const context = _c.getContext('2d');\n\n const nativeCanvas = {\n width,\n height,\n context,\n _c,\n getBoundingClientRect() {\n return {\n width,\n height\n };\n },\n getContext() {\n return context;\n }\n };\n return new CanvasWrapDisableWH(nativeCanvas, context, 1, width, height, id);\n}\n\n@injectable()\nexport class HarmonyEnvContribution extends BaseEnvContribution implements IEnvContribution {\n type: EnvType = 'harmony';\n supportEvent: boolean = true;\n rafSTO: RafBasedSTO;\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 this.rafSTO = new RafBasedSTO(0);\n }\n\n // TODO:VGrammar在小程序环境会重复调用setEnv传入canvas,所以每次configure并不会释放\n // 这里等待后续和VGrammar沟通\n configure(\n service: IGlobal,\n params: { domref: any; canvasIdLists: string[]; freeCanvasIdx: number; offscreen?: boolean; pixelRatio?: number }\n ) {\n if (service.env === this.type) {\n service.setActiveEnvContribution(this);\n\n // loadFeishuContributions();\n }\n }\n /**\n * 获取动态canvas的数量,offscreenCanvas或者framebuffer\n */\n getDynamicCanvasCount(): number {\n return 9999;\n }\n\n /**\n * 获取静态canvas的数量,纯粹canvas\n */\n getStaticCanvasCount(): number {\n return 9999;\n }\n\n loadImage(url: string): Promise<{\n loadState: 'success' | 'fail';\n data: HTMLImageElement | ImageData | null;\n }> {\n return;\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 return createCanvas(params.width, params.height, params.id);\n }\n\n createOffscreenCanvas(params: ICreateCanvasParams) {\n return;\n }\n\n releaseCanvas(canvas: ICanvasLike | string) {\n return;\n }\n\n getDevicePixelRatio(): number {\n return 1;\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 (callback: FrameRequestCallback) => {\n return this.rafSTO.call(callback);\n };\n }\n\n getCancelAnimationFrame(): (h: number) => void {\n return (h: number) => {\n this.rafSTO.clear(h);\n };\n }\n\n mapToCanvasPoint(event: any) {\n if (event?.type?.startsWith('mouse')) {\n return event;\n }\n return event;\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 null;\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
+ {"version":3,"sources":["../src/env/contributions/harmony-contribution.ts"],"names":[],"mappings":"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","file":"harmony-contribution.js","sourcesContent":["import { 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';\nimport { CanvasWrapDisableWH, CanvasWrapEnableWH } from './canvas-wrap';\n\nfunction createCanvas(width: number, height: number, id?: string) {\n // const context = new (OffscreenCanvasRenderingContext2D as any)(width, height);\n // 浏览器debug\n const _c = new OffscreenCanvas(width, height);\n const context = _c.getContext('2d');\n\n const nativeCanvas = {\n width,\n height,\n context,\n _c,\n getBoundingClientRect() {\n return {\n width,\n height\n };\n },\n getContext() {\n return context;\n }\n };\n return new CanvasWrapDisableWH(nativeCanvas, context, 1, width, height, id);\n}\n\nexport class HarmonyEnvContribution extends BaseEnvContribution implements IEnvContribution {\n type: EnvType = 'harmony';\n supportEvent: boolean = true;\n rafSTO: RafBasedSTO;\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 this.rafSTO = new RafBasedSTO(0);\n }\n\n // TODO:VGrammar在小程序环境会重复调用setEnv传入canvas,所以每次configure并不会释放\n // 这里等待后续和VGrammar沟通\n configure(\n service: IGlobal,\n params: { domref: any; canvasIdLists: string[]; freeCanvasIdx: number; offscreen?: boolean; pixelRatio?: number }\n ) {\n if (service.env === this.type) {\n service.setActiveEnvContribution(this);\n\n // loadFeishuContributions();\n }\n }\n /**\n * 获取动态canvas的数量,offscreenCanvas或者framebuffer\n */\n getDynamicCanvasCount(): number {\n return 9999;\n }\n\n /**\n * 获取静态canvas的数量,纯粹canvas\n */\n getStaticCanvasCount(): number {\n return 9999;\n }\n\n loadImage(url: string): Promise<{\n loadState: 'success' | 'fail';\n data: HTMLImageElement | ImageData | null;\n }> {\n return;\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 return createCanvas(params.width, params.height, params.id);\n }\n\n createOffscreenCanvas(params: ICreateCanvasParams) {\n return;\n }\n\n releaseCanvas(canvas: ICanvasLike | string) {\n return;\n }\n\n getDevicePixelRatio(): number {\n return 1;\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 (callback: FrameRequestCallback) => {\n return this.rafSTO.call(callback);\n };\n }\n\n getCancelAnimationFrame(): (h: number) => void {\n return (h: number) => {\n this.rafSTO.clear(h);\n };\n }\n\n mapToCanvasPoint(event: any) {\n if (event?.type?.startsWith('mouse')) {\n return event;\n }\n return event;\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 null;\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,12 +1,4 @@
1
- var __decorate = this && this.__decorate || function(decorators, target, key, desc) {
2
- var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
3
- 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);
4
- return c > 3 && r && Object.defineProperty(target, key, r), r;
5
- }, __metadata = this && this.__metadata || function(k, v) {
6
- if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(k, v);
7
- };
8
-
9
- import { injectable, BaseEnvContribution, rafBasedSto } from "@visactor/vrender-core";
1
+ import { BaseEnvContribution, rafBasedSto } from "@visactor/vrender-core";
10
2
 
11
3
  import { CanvasWrapEnableWH } from "./canvas-wrap";
12
4
 
@@ -44,7 +36,7 @@ export function createImageElement(src, isSvg = !1) {
44
36
  }));
45
37
  }
46
38
 
47
- let LynxEnvContribution = class extends BaseEnvContribution {
39
+ export class LynxEnvContribution extends BaseEnvContribution {
48
40
  constructor() {
49
41
  super(), this.type = "lynx", this.supportEvent = !0, this.canvasMap = new Map, this.freeCanvasList = [],
50
42
  this.canvasIdx = 0, this.supportsTouchEvents = !0;
@@ -119,9 +111,5 @@ let LynxEnvContribution = class extends BaseEnvContribution {
119
111
  return null;
120
112
  }
121
113
  release(...params) {}
122
- };
123
-
124
- LynxEnvContribution = __decorate([ injectable(), __metadata("design:paramtypes", []) ], LynxEnvContribution);
125
-
126
- export { LynxEnvContribution };
127
- //# sourceMappingURL=lynx-contribution.js.map
114
+ }
115
+ //# sourceMappingURL=lynx-contribution.js.map
@@ -1 +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';\nimport { CanvasWrapEnableWH } from './canvas-wrap';\n\ndeclare const lynx: {\n getSystemInfoSync: () => { pixelRatio: number };\n createCanvas: (id: string) => any;\n createCanvasNG: (id: string) => any;\n createImage: (id: string) => any;\n createOffscreenCanvas: () => 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 offscreen: boolean,\n pixelRatio?: number\n) {\n const dpr = pixelRatio ?? SystemInfo.pixelRatio;\n\n canvasIdLists.forEach((id, i) => {\n let _canvas;\n if (offscreen) {\n _canvas = lynx.createOffscreenCanvas();\n } else {\n _canvas = ng ? lynx.createCanvasNG(id) : lynx.createCanvas(id);\n ng && _canvas.attachToCanvasView(id);\n }\n\n _canvas.width = domref.width * dpr;\n _canvas.height = domref.height * dpr;\n\n const ctx = _canvas.getContext('2d');\n // TODO: 这里是一个临时方案,向 ctx 内部构造一个 canvas,传递宽高\n // ctx.canvas = {\n // width: domref.width * dpr,\n // height: domref.height * dpr\n // };\n\n const canvas = new CanvasWrapEnableWH(_canvas, ctx, dpr, domref.width, domref.height, id);\n\n canvasMap.set(id, canvas);\n if (i > freeCanvasIdx) {\n freeCanvasList.push(canvas);\n }\n });\n\n if (!freeCanvasList.length && lynx.createOffscreenCanvas) {\n const _canvas = lynx.createOffscreenCanvas();\n _canvas.width = domref.width * dpr;\n _canvas.height = domref.height * dpr;\n const ctx = _canvas.getContext('2d');\n\n const id = Math.random().toString();\n const canvas = new CanvasWrapEnableWH(_canvas, ctx, dpr, domref.width, domref.height, id);\n canvasMap.set(id, canvas);\n freeCanvasList.push(canvas);\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(\n service: IGlobal,\n params: { domref: any; canvasIdLists: string[]; freeCanvasIdx: number; offscreen?: boolean; pixelRatio?: number }\n ) {\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.offscreen,\n params.pixelRatio\n );\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 9999;\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 mapToCanvasPoint(event: any) {\n if (event?.type?.startsWith('mouse')) {\n return event;\n }\n return event;\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
+ {"version":3,"sources":["../src/env/contributions/lynx-contribution.ts"],"names":[],"mappings":"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","file":"lynx-contribution.js","sourcesContent":["import { 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';\nimport { CanvasWrapEnableWH } from './canvas-wrap';\n\ndeclare const lynx: {\n getSystemInfoSync: () => { pixelRatio: number };\n createCanvas: (id: string) => any;\n createCanvasNG: (id: string) => any;\n createImage: (id: string) => any;\n createOffscreenCanvas: () => 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 offscreen: boolean,\n pixelRatio?: number\n) {\n const dpr = pixelRatio ?? SystemInfo.pixelRatio;\n\n canvasIdLists.forEach((id, i) => {\n let _canvas;\n if (offscreen) {\n _canvas = lynx.createOffscreenCanvas();\n } else {\n _canvas = ng ? lynx.createCanvasNG(id) : lynx.createCanvas(id);\n ng && _canvas.attachToCanvasView(id);\n }\n\n _canvas.width = domref.width * dpr;\n _canvas.height = domref.height * dpr;\n\n const ctx = _canvas.getContext('2d');\n // TODO: 这里是一个临时方案,向 ctx 内部构造一个 canvas,传递宽高\n // ctx.canvas = {\n // width: domref.width * dpr,\n // height: domref.height * dpr\n // };\n\n const canvas = new CanvasWrapEnableWH(_canvas, ctx, dpr, domref.width, domref.height, id);\n\n canvasMap.set(id, canvas);\n if (i > freeCanvasIdx) {\n freeCanvasList.push(canvas);\n }\n });\n\n if (!freeCanvasList.length && lynx.createOffscreenCanvas) {\n const _canvas = lynx.createOffscreenCanvas();\n _canvas.width = domref.width * dpr;\n _canvas.height = domref.height * dpr;\n const ctx = _canvas.getContext('2d');\n\n const id = Math.random().toString();\n const canvas = new CanvasWrapEnableWH(_canvas, ctx, dpr, domref.width, domref.height, id);\n canvasMap.set(id, canvas);\n freeCanvasList.push(canvas);\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\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(\n service: IGlobal,\n params: { domref: any; canvasIdLists: string[]; freeCanvasIdx: number; offscreen?: boolean; pixelRatio?: number }\n ) {\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.offscreen,\n params.pixelRatio\n );\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 9999;\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 mapToCanvasPoint(event: any) {\n if (event?.type?.startsWith('mouse')) {\n return event;\n }\n return event;\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,12 +1,6 @@
1
- var __decorate = this && this.__decorate || function(decorators, target, key, desc) {
2
- var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
3
- 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);
4
- return c > 3 && r && Object.defineProperty(target, key, r), r;
5
- };
1
+ import { BaseEnvContribution, rafBasedSto } from "@visactor/vrender-core";
6
2
 
7
- import { injectable, BaseEnvContribution, rafBasedSto } from "@visactor/vrender-core";
8
-
9
- let NodeEnvContribution = class extends BaseEnvContribution {
3
+ export class NodeEnvContribution extends BaseEnvContribution {
10
4
  constructor() {
11
5
  super(...arguments), this.type = "node", this._lastTime = 0, this.supportEvent = !1;
12
6
  }
@@ -82,9 +76,5 @@ let NodeEnvContribution = class extends BaseEnvContribution {
82
76
  dispatchEvent(event) {}
83
77
  release(...params) {}
84
78
  createOffscreenCanvas(params) {}
85
- };
86
-
87
- NodeEnvContribution = __decorate([ injectable() ], NodeEnvContribution);
88
-
89
- export { NodeEnvContribution };
79
+ }
90
80
  //# sourceMappingURL=node-contribution.js.map
@@ -1 +1 @@
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 999;\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"]}
1
+ {"version":3,"sources":["../src/env/contributions/node-contribution.ts"],"names":[],"mappings":"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","file":"node-contribution.js","sourcesContent":["import { 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\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 999;\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"]}
@@ -1,12 +1,4 @@
1
- var __decorate = this && this.__decorate || function(decorators, target, key, desc) {
2
- var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
3
- 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);
4
- return c > 3 && r && Object.defineProperty(target, key, r), r;
5
- }, __metadata = this && this.__metadata || function(k, v) {
6
- if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(k, v);
7
- };
8
-
9
- import { injectable, BaseEnvContribution } from "@visactor/vrender-core";
1
+ import { BaseEnvContribution } from "@visactor/vrender-core";
10
2
 
11
3
  import { CanvasWrapDisableWH } from "./canvas-wrap";
12
4
 
@@ -18,7 +10,7 @@ function makeUpCanvas(domref, canvasIdLists, canvasMap, freeCanvasIdx, freeCanva
18
10
  }));
19
11
  }
20
12
 
21
- let TaroEnvContribution = class extends BaseEnvContribution {
13
+ export class TaroEnvContribution extends BaseEnvContribution {
22
14
  constructor() {
23
15
  super(), this.type = "taro", this.supportEvent = !0, this.canvasMap = new Map, this.freeCanvasList = [],
24
16
  this.canvasIdx = 0, this.supportsTouchEvents = !0;
@@ -104,9 +96,5 @@ let TaroEnvContribution = class extends BaseEnvContribution {
104
96
  return null;
105
97
  }
106
98
  release(...params) {}
107
- };
108
-
109
- TaroEnvContribution = __decorate([ injectable(), __metadata("design:paramtypes", []) ], TaroEnvContribution);
110
-
111
- export { TaroEnvContribution };
99
+ }
112
100
  //# sourceMappingURL=taro-contribution.js.map
@@ -1 +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';\nimport { CanvasWrapDisableWH } from './canvas-wrap';\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\n const canvas = new CanvasWrapDisableWH(ctx.canvas || {}, ctx, dpr, domref.width, domref.height, id);\n ctx.canvas = canvas;\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 9999;\n }\n\n mapToCanvasPoint(event: any) {\n if (event?.type?.startsWith('mouse')) {\n return event;\n }\n return event;\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"]}
1
+ {"version":3,"sources":["../src/env/contributions/taro-contribution.ts"],"names":[],"mappings":"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","file":"taro-contribution.js","sourcesContent":["import { 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';\nimport { CanvasWrapDisableWH } from './canvas-wrap';\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\n const canvas = new CanvasWrapDisableWH(ctx.canvas || {}, ctx, dpr, domref.width, domref.height, id);\n ctx.canvas = canvas;\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\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 9999;\n }\n\n mapToCanvasPoint(event: any) {\n if (event?.type?.startsWith('mouse')) {\n return event;\n }\n return event;\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"]}
@@ -1,10 +1,4 @@
1
- var __decorate = this && this.__decorate || function(decorators, target, key, desc) {
2
- var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
3
- 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);
4
- return c > 3 && r && Object.defineProperty(target, key, r), r;
5
- }, __metadata = this && this.__metadata || function(k, v) {
6
- if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(k, v);
7
- }, __awaiter = this && this.__awaiter || function(thisArg, _arguments, P, generator) {
1
+ var __awaiter = this && this.__awaiter || function(thisArg, _arguments, P, generator) {
8
2
  return new (P || (P = Promise))((function(resolve, reject) {
9
3
  function fulfilled(value) {
10
4
  try {
@@ -30,7 +24,7 @@ var __decorate = this && this.__decorate || function(decorators, target, key, de
30
24
  }));
31
25
  };
32
26
 
33
- import { injectable, BaseEnvContribution, rafBasedSto } from "@visactor/vrender-core";
27
+ import { BaseEnvContribution, rafBasedSto } from "@visactor/vrender-core";
34
28
 
35
29
  function makeUpCanvas(domref, canvasIdLists, canvasMap, freeCanvasIdx, freeCanvasList, component) {
36
30
  return __awaiter(this, void 0, void 0, (function*() {
@@ -49,7 +43,7 @@ function makeUpCanvas(domref, canvasIdLists, canvasMap, freeCanvasIdx, freeCanva
49
43
  }));
50
44
  }
51
45
 
52
- let TTEnvContribution = class extends BaseEnvContribution {
46
+ export class TTEnvContribution extends BaseEnvContribution {
53
47
  constructor() {
54
48
  super(), this.type = "tt", this.supportEvent = !0, this.canvasMap = new Map, this.freeCanvasList = [],
55
49
  this.canvasIdx = 0, this.supportsTouchEvents = !0;
@@ -115,9 +109,5 @@ let TTEnvContribution = class extends BaseEnvContribution {
115
109
  return null === (_a = null == event ? void 0 : event.type) || void 0 === _a || _a.startsWith("mouse"),
116
110
  event;
117
111
  }
118
- };
119
-
120
- TTEnvContribution = __decorate([ injectable(), __metadata("design:paramtypes", []) ], TTEnvContribution);
121
-
122
- export { TTEnvContribution };
112
+ }
123
113
  //# sourceMappingURL=tt-contribution.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/env/contributions/tt-contribution.ts"],"names":[],"mappings":"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","file":"tt-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 ITTCanvas\n} from '@visactor/vrender-core';\n\ndeclare const tt: {\n getSystemInfoSync: () => { pixelRatio: number };\n createSelectorQuery: () => any;\n};\n\n// 飞书小程序canvas的wrap\nasync function makeUpCanvas(\n domref: any,\n canvasIdLists: string[],\n canvasMap: Map<string, ITTCanvas>,\n freeCanvasIdx: number,\n freeCanvasList: ITTCanvas[],\n component: any\n) {\n const dpr = tt.getSystemInfoSync().pixelRatio;\n\n for (let i = 0; i < canvasIdLists.length; i++) {\n const id = canvasIdLists[i];\n // if (canvasMap.has(id)) {\n // continue;\n // }\n await new Promise(resolve => {\n let data = tt.createSelectorQuery();\n if (component) {\n data = data.in(component);\n }\n // @ts-ignore\n data\n .select(`#${id}`) // 在 WXML 中填入的 id\n .node()\n .exec((res: any) => {\n const canvas = res[0].node;\n const width = canvas.width;\n const height = canvas.height;\n canvas.width = width * dpr;\n canvas.height = height * dpr;\n canvasMap.set(id, canvas);\n if (i >= freeCanvasIdx) {\n freeCanvasList.push(canvas);\n }\n resolve(null);\n });\n });\n }\n\n // canvasIdLists.forEach((id, i) => {\n // const ctx = wx.createCanvasContext(id);\n // // TODO: 这里是一个临时方案,向 ctx 内部构造一个 canvas,传递宽高\n // ctx.canvas = {\n // width: domref.width * dpr,\n // height: domref.height * dpr\n // };\n\n // // 放到内容里\n // // // TODO: 这里是一个临时方案,兼容 createCircularGradient 方法\n // // ctx.createRadialGradient = (...cc) => ctx.createCircularGradient(...cc);\n\n // // // 封装 getImageData 为 promise\n // // ctx.getImageData = (x, y, width, height) =>\n // // new Promise((resolve, reject) => {\n // // try {\n // // tt.canvasGetImageData({\n // // canvasId: item.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 // const canvas = {\n // width: domref.width,\n // height: domref.height,\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\n@injectable()\nexport class TTEnvContribution extends BaseEnvContribution implements IEnvContribution {\n type: EnvType = 'tt';\n supportEvent: boolean = true;\n // 所有添加进来的canvas\n canvasMap: Map<string, ITTCanvas> = new Map();\n // 所有可用的canvasList\n freeCanvasList: ITTCanvas[] = [];\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; component: any }) {\n if (service.env === this.type) {\n service.setActiveEnvContribution(this);\n return makeUpCanvas(\n params.domref,\n params.canvasIdLists,\n this.canvasMap,\n params.freeCanvasIdx,\n this.freeCanvasList,\n params.component\n ).then(() => {\n // loadFeishuContributions();\n });\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(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): ITTCanvas {\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 tt.getSystemInfoSync().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 mapToCanvasPoint(event: any) {\n if (event?.type?.startsWith('mouse')) {\n return event;\n }\n return event;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/env/contributions/tt-contribution.ts"],"names":[],"mappings":"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","file":"tt-contribution.js","sourcesContent":["import { BaseEnvContribution, rafBasedSto } from '@visactor/vrender-core';\n// import { loadFeishuContributions } from '../../../kits';\nimport type {\n ICanvasLike,\n EnvType,\n ICreateCanvasParams,\n IEnvContribution,\n IGlobal,\n ITTCanvas\n} from '@visactor/vrender-core';\n\ndeclare const tt: {\n getSystemInfoSync: () => { pixelRatio: number };\n createSelectorQuery: () => any;\n};\n\n// 飞书小程序canvas的wrap\nasync function makeUpCanvas(\n domref: any,\n canvasIdLists: string[],\n canvasMap: Map<string, ITTCanvas>,\n freeCanvasIdx: number,\n freeCanvasList: ITTCanvas[],\n component: any\n) {\n const dpr = tt.getSystemInfoSync().pixelRatio;\n\n for (let i = 0; i < canvasIdLists.length; i++) {\n const id = canvasIdLists[i];\n // if (canvasMap.has(id)) {\n // continue;\n // }\n await new Promise(resolve => {\n let data = tt.createSelectorQuery();\n if (component) {\n data = data.in(component);\n }\n // @ts-ignore\n data\n .select(`#${id}`) // 在 WXML 中填入的 id\n .node()\n .exec((res: any) => {\n const canvas = res[0].node;\n const width = canvas.width;\n const height = canvas.height;\n canvas.width = width * dpr;\n canvas.height = height * dpr;\n canvasMap.set(id, canvas);\n if (i >= freeCanvasIdx) {\n freeCanvasList.push(canvas);\n }\n resolve(null);\n });\n });\n }\n\n // canvasIdLists.forEach((id, i) => {\n // const ctx = wx.createCanvasContext(id);\n // // TODO: 这里是一个临时方案,向 ctx 内部构造一个 canvas,传递宽高\n // ctx.canvas = {\n // width: domref.width * dpr,\n // height: domref.height * dpr\n // };\n\n // // 放到内容里\n // // // TODO: 这里是一个临时方案,兼容 createCircularGradient 方法\n // // ctx.createRadialGradient = (...cc) => ctx.createCircularGradient(...cc);\n\n // // // 封装 getImageData 为 promise\n // // ctx.getImageData = (x, y, width, height) =>\n // // new Promise((resolve, reject) => {\n // // try {\n // // tt.canvasGetImageData({\n // // canvasId: item.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 // const canvas = {\n // width: domref.width,\n // height: domref.height,\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 class TTEnvContribution extends BaseEnvContribution implements IEnvContribution {\n type: EnvType = 'tt';\n supportEvent: boolean = true;\n // 所有添加进来的canvas\n canvasMap: Map<string, ITTCanvas> = new Map();\n // 所有可用的canvasList\n freeCanvasList: ITTCanvas[] = [];\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; component: any }) {\n if (service.env === this.type) {\n service.setActiveEnvContribution(this);\n return makeUpCanvas(\n params.domref,\n params.canvasIdLists,\n this.canvasMap,\n params.freeCanvasIdx,\n this.freeCanvasList,\n params.component\n ).then(() => {\n // loadFeishuContributions();\n });\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(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): ITTCanvas {\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 tt.getSystemInfoSync().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 mapToCanvasPoint(event: any) {\n if (event?.type?.startsWith('mouse')) {\n return event;\n }\n return event;\n }\n}\n"]}
@@ -1,10 +1,4 @@
1
- var __decorate = this && this.__decorate || function(decorators, target, key, desc) {
2
- var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
3
- 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);
4
- return c > 3 && r && Object.defineProperty(target, key, r), r;
5
- }, __metadata = this && this.__metadata || function(k, v) {
6
- if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(k, v);
7
- }, __awaiter = this && this.__awaiter || function(thisArg, _arguments, P, generator) {
1
+ var __awaiter = this && this.__awaiter || function(thisArg, _arguments, P, generator) {
8
2
  return new (P || (P = Promise))((function(resolve, reject) {
9
3
  function fulfilled(value) {
10
4
  try {
@@ -30,7 +24,7 @@ var __decorate = this && this.__decorate || function(decorators, target, key, de
30
24
  }));
31
25
  };
32
26
 
33
- import { injectable, BaseEnvContribution, rafBasedSto } from "@visactor/vrender-core";
27
+ import { BaseEnvContribution, rafBasedSto } from "@visactor/vrender-core";
34
28
 
35
29
  function makeUpCanvas(domref, canvasIdLists, canvasMap, freeCanvasIdx, freeCanvasList, component, forceUpdate) {
36
30
  return __awaiter(this, void 0, void 0, (function*() {
@@ -53,7 +47,7 @@ function makeUpCanvas(domref, canvasIdLists, canvasMap, freeCanvasIdx, freeCanva
53
47
  }));
54
48
  }
55
49
 
56
- let WxEnvContribution = class extends BaseEnvContribution {
50
+ export class WxEnvContribution extends BaseEnvContribution {
57
51
  constructor() {
58
52
  super(), this.type = "wx", this.supportEvent = !0, this.canvasMap = new Map, this.freeCanvasList = [],
59
53
  this.canvasIdx = 0, this.supportsTouchEvents = !0;
@@ -119,9 +113,5 @@ let WxEnvContribution = class extends BaseEnvContribution {
119
113
  return null === (_a = null == event ? void 0 : event.type) || void 0 === _a || _a.startsWith("mouse"),
120
114
  event;
121
115
  }
122
- };
123
-
124
- WxEnvContribution = __decorate([ injectable(), __metadata("design:paramtypes", []) ], WxEnvContribution);
125
-
126
- export { WxEnvContribution };
116
+ }
127
117
  //# sourceMappingURL=wx-contribution.js.map