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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (603) hide show
  1. package/cjs/canvas/contributions/browser/canvas.d.ts +17 -0
  2. package/cjs/canvas/contributions/browser/canvas.js +73 -0
  3. package/cjs/canvas/contributions/browser/canvas.js.map +1 -0
  4. package/cjs/canvas/contributions/browser/context.d.ts +174 -0
  5. package/cjs/canvas/contributions/browser/context.js +493 -0
  6. package/cjs/canvas/contributions/browser/context.js.map +1 -0
  7. package/cjs/canvas/contributions/browser/index.d.ts +2 -0
  8. package/cjs/canvas/contributions/browser/index.js +21 -0
  9. package/cjs/canvas/contributions/browser/index.js.map +1 -0
  10. package/cjs/canvas/contributions/browser/modules.d.ts +1 -0
  11. package/cjs/canvas/contributions/browser/modules.js +10 -0
  12. package/cjs/canvas/contributions/browser/modules.js.map +1 -0
  13. package/cjs/canvas/contributions/create-canvas-module.d.ts +2 -0
  14. package/cjs/canvas/contributions/create-canvas-module.js +17 -0
  15. package/cjs/canvas/contributions/create-canvas-module.js.map +1 -0
  16. package/cjs/canvas/contributions/feishu/canvas.d.ts +8 -0
  17. package/cjs/canvas/contributions/feishu/canvas.js +29 -0
  18. package/cjs/canvas/contributions/feishu/canvas.js.map +1 -0
  19. package/cjs/canvas/contributions/feishu/context.d.ts +12 -0
  20. package/cjs/canvas/contributions/feishu/context.js +56 -0
  21. package/cjs/canvas/contributions/feishu/context.js.map +1 -0
  22. package/cjs/canvas/contributions/feishu/index.d.ts +2 -0
  23. package/cjs/canvas/contributions/feishu/index.js +21 -0
  24. package/cjs/canvas/contributions/feishu/index.js.map +1 -0
  25. package/cjs/canvas/contributions/feishu/modules.d.ts +1 -0
  26. package/cjs/canvas/contributions/feishu/modules.js +10 -0
  27. package/cjs/canvas/contributions/feishu/modules.js.map +1 -0
  28. package/cjs/canvas/contributions/lynx/canvas.d.ts +8 -0
  29. package/cjs/canvas/contributions/lynx/canvas.js +29 -0
  30. package/cjs/canvas/contributions/lynx/canvas.js.map +1 -0
  31. package/cjs/canvas/contributions/lynx/context.d.ts +13 -0
  32. package/cjs/canvas/contributions/lynx/context.js +57 -0
  33. package/cjs/canvas/contributions/lynx/context.js.map +1 -0
  34. package/cjs/canvas/contributions/lynx/index.d.ts +2 -0
  35. package/cjs/canvas/contributions/lynx/index.js +21 -0
  36. package/cjs/canvas/contributions/lynx/index.js.map +1 -0
  37. package/cjs/canvas/contributions/lynx/modules.d.ts +1 -0
  38. package/cjs/canvas/contributions/lynx/modules.js +10 -0
  39. package/cjs/canvas/contributions/lynx/modules.js.map +1 -0
  40. package/cjs/canvas/contributions/modules.d.ts +9 -0
  41. package/cjs/canvas/contributions/modules.js +48 -0
  42. package/cjs/canvas/contributions/modules.js.map +1 -0
  43. package/cjs/canvas/contributions/node/canvas.d.ts +8 -1
  44. package/cjs/canvas/contributions/node/canvas.js +30 -1
  45. package/cjs/canvas/contributions/node/canvas.js.map +1 -1
  46. package/cjs/canvas/contributions/node/context.d.ts +7 -1
  47. package/cjs/canvas/contributions/node/context.js +30 -1
  48. package/cjs/canvas/contributions/node/context.js.map +1 -1
  49. package/cjs/canvas/contributions/node/index.d.ts +2 -1
  50. package/cjs/canvas/contributions/node/index.js +21 -1
  51. package/cjs/canvas/contributions/node/index.js.map +1 -1
  52. package/cjs/canvas/contributions/node/modules.d.ts +1 -1
  53. package/cjs/canvas/contributions/node/modules.js +10 -1
  54. package/cjs/canvas/contributions/node/modules.js.map +1 -1
  55. package/cjs/canvas/contributions/taro/canvas.d.ts +8 -0
  56. package/cjs/canvas/contributions/taro/canvas.js +29 -0
  57. package/cjs/canvas/contributions/taro/canvas.js.map +1 -0
  58. package/cjs/canvas/contributions/taro/context.d.ts +32 -0
  59. package/cjs/canvas/contributions/taro/context.js +68 -0
  60. package/cjs/canvas/contributions/taro/context.js.map +1 -0
  61. package/cjs/canvas/contributions/taro/index.d.ts +2 -0
  62. package/cjs/canvas/contributions/taro/index.js +21 -0
  63. package/cjs/canvas/contributions/taro/index.js.map +1 -0
  64. package/cjs/canvas/contributions/taro/modules.d.ts +1 -0
  65. package/cjs/canvas/contributions/taro/modules.js +10 -0
  66. package/cjs/canvas/contributions/taro/modules.js.map +1 -0
  67. package/cjs/canvas/contributions/tt/canvas.d.ts +8 -0
  68. package/cjs/canvas/contributions/tt/canvas.js +29 -0
  69. package/cjs/canvas/contributions/tt/canvas.js.map +1 -0
  70. package/cjs/canvas/contributions/tt/context.d.ts +5 -0
  71. package/cjs/canvas/contributions/tt/context.js +19 -0
  72. package/cjs/canvas/contributions/tt/context.js.map +1 -0
  73. package/cjs/canvas/contributions/tt/index.d.ts +2 -0
  74. package/cjs/canvas/contributions/tt/index.js +21 -0
  75. package/cjs/canvas/contributions/tt/index.js.map +1 -0
  76. package/cjs/canvas/contributions/tt/modules.d.ts +1 -0
  77. package/cjs/canvas/contributions/tt/modules.js +10 -0
  78. package/cjs/canvas/contributions/tt/modules.js.map +1 -0
  79. package/cjs/canvas/contributions/wx/canvas.d.ts +8 -0
  80. package/cjs/canvas/contributions/wx/canvas.js +29 -0
  81. package/cjs/canvas/contributions/wx/canvas.js.map +1 -0
  82. package/cjs/canvas/contributions/wx/context.d.ts +7 -0
  83. package/cjs/canvas/contributions/wx/context.js +24 -0
  84. package/cjs/canvas/contributions/wx/context.js.map +1 -0
  85. package/cjs/canvas/contributions/wx/index.d.ts +2 -0
  86. package/cjs/canvas/contributions/wx/index.js +21 -0
  87. package/cjs/canvas/contributions/wx/index.js.map +1 -0
  88. package/cjs/canvas/contributions/wx/modules.d.ts +1 -0
  89. package/cjs/canvas/contributions/wx/modules.js +10 -0
  90. package/cjs/canvas/contributions/wx/modules.js.map +1 -0
  91. package/cjs/canvas/index.d.ts +1 -1
  92. package/cjs/canvas/index.js +21 -1
  93. package/cjs/canvas/index.js.map +1 -1
  94. package/cjs/env/contributions/browser-contribution.d.ts +42 -0
  95. package/cjs/env/contributions/browser-contribution.js +197 -0
  96. package/cjs/env/contributions/browser-contribution.js.map +1 -0
  97. package/cjs/env/contributions/feishu-contribution.d.ts +41 -0
  98. package/cjs/env/contributions/feishu-contribution.js +116 -0
  99. package/cjs/env/contributions/feishu-contribution.js.map +1 -0
  100. package/cjs/env/contributions/lynx-contribution.d.ts +41 -0
  101. package/cjs/env/contributions/lynx-contribution.js +136 -0
  102. package/cjs/env/contributions/lynx-contribution.js.map +1 -0
  103. package/cjs/env/contributions/module.d.ts +9 -1
  104. package/cjs/env/contributions/module.js +33 -1
  105. package/cjs/env/contributions/module.js.map +1 -1
  106. package/cjs/env/contributions/node-contribution.d.ts +49 -1
  107. package/cjs/env/contributions/node-contribution.js +95 -1
  108. package/cjs/env/contributions/node-contribution.js.map +1 -1
  109. package/cjs/env/contributions/taro-contribution.d.ts +57 -0
  110. package/cjs/env/contributions/taro-contribution.js +142 -0
  111. package/cjs/env/contributions/taro-contribution.js.map +1 -0
  112. package/cjs/env/contributions/wx-contribution.d.ts +40 -0
  113. package/cjs/env/contributions/wx-contribution.js +131 -0
  114. package/cjs/env/contributions/wx-contribution.js.map +1 -0
  115. package/cjs/env/index.d.ts +1 -0
  116. package/cjs/env/index.js +21 -0
  117. package/cjs/env/index.js.map +1 -0
  118. package/cjs/env/modules.d.ts +8 -0
  119. package/cjs/env/modules.js +47 -0
  120. package/cjs/env/modules.js.map +1 -0
  121. package/cjs/event/extension/drag.d.ts +9 -0
  122. package/cjs/event/extension/drag.js +54 -0
  123. package/cjs/event/extension/drag.js.map +1 -0
  124. package/cjs/event/extension/gesture.d.ts +38 -0
  125. package/cjs/event/extension/gesture.js +181 -0
  126. package/cjs/event/extension/gesture.js.map +1 -0
  127. package/cjs/event/extension/index.d.ts +3 -0
  128. package/cjs/event/extension/index.js +24 -0
  129. package/cjs/event/extension/index.js.map +1 -0
  130. package/cjs/index-node.d.ts +1 -2
  131. package/cjs/index-node.js +1 -1
  132. package/cjs/index-node.js.map +1 -1
  133. package/cjs/index.d.ts +7 -2
  134. package/cjs/index.js +19 -3
  135. package/cjs/index.js.map +1 -1
  136. package/cjs/jsx/graphicType.d.ts +171 -0
  137. package/cjs/jsx/graphicType.js +133 -0
  138. package/cjs/jsx/graphicType.js.map +1 -0
  139. package/cjs/jsx/index.d.ts +2 -0
  140. package/cjs/jsx/index.js +21 -0
  141. package/cjs/jsx/index.js.map +1 -0
  142. package/cjs/jsx/jsx-classic.d.ts +3 -0
  143. package/cjs/jsx/jsx-classic.js +58 -0
  144. package/cjs/jsx/jsx-classic.js.map +1 -0
  145. package/cjs/picker/canvas-picker-service.d.ts +28 -0
  146. package/cjs/picker/canvas-picker-service.js +90 -0
  147. package/cjs/picker/canvas-picker-service.js.map +1 -0
  148. package/cjs/picker/contributions/canvas-picker/arc-picker.d.ts +9 -0
  149. package/cjs/picker/contributions/canvas-picker/arc-picker.js +51 -0
  150. package/cjs/picker/contributions/canvas-picker/arc-picker.js.map +1 -0
  151. package/cjs/picker/contributions/canvas-picker/arc3d-picker.d.ts +10 -0
  152. package/cjs/picker/contributions/canvas-picker/arc3d-picker.js +50 -0
  153. package/cjs/picker/contributions/canvas-picker/arc3d-picker.js.map +1 -0
  154. package/cjs/picker/contributions/canvas-picker/area-picker.d.ts +9 -0
  155. package/cjs/picker/contributions/canvas-picker/area-picker.js +45 -0
  156. package/cjs/picker/contributions/canvas-picker/area-picker.js.map +1 -0
  157. package/cjs/picker/contributions/canvas-picker/base-picker.d.ts +4 -0
  158. package/cjs/picker/contributions/canvas-picker/base-picker.js +18 -0
  159. package/cjs/picker/contributions/canvas-picker/base-picker.js.map +1 -0
  160. package/cjs/picker/contributions/canvas-picker/circle-picker.d.ts +9 -0
  161. package/cjs/picker/contributions/canvas-picker/circle-picker.js +50 -0
  162. package/cjs/picker/contributions/canvas-picker/circle-picker.js.map +1 -0
  163. package/cjs/picker/contributions/canvas-picker/glyph-picker.d.ts +9 -0
  164. package/cjs/picker/contributions/canvas-picker/glyph-picker.js +44 -0
  165. package/cjs/picker/contributions/canvas-picker/glyph-picker.js.map +1 -0
  166. package/cjs/picker/contributions/canvas-picker/group-picker.d.ts +7 -0
  167. package/cjs/picker/contributions/canvas-picker/group-picker.js +26 -0
  168. package/cjs/picker/contributions/canvas-picker/group-picker.js.map +1 -0
  169. package/cjs/picker/contributions/canvas-picker/image-picker.d.ts +7 -0
  170. package/cjs/picker/contributions/canvas-picker/image-picker.js +27 -0
  171. package/cjs/picker/contributions/canvas-picker/image-picker.js.map +1 -0
  172. package/cjs/picker/contributions/canvas-picker/line-picker.d.ts +10 -0
  173. package/cjs/picker/contributions/canvas-picker/line-picker.js +56 -0
  174. package/cjs/picker/contributions/canvas-picker/line-picker.js.map +1 -0
  175. package/cjs/picker/contributions/canvas-picker/module.d.ts +3 -0
  176. package/cjs/picker/contributions/canvas-picker/module.js +46 -0
  177. package/cjs/picker/contributions/canvas-picker/module.js.map +1 -0
  178. package/cjs/picker/contributions/canvas-picker/path-picker.d.ts +10 -0
  179. package/cjs/picker/contributions/canvas-picker/path-picker.js +57 -0
  180. package/cjs/picker/contributions/canvas-picker/path-picker.js.map +1 -0
  181. package/cjs/picker/contributions/canvas-picker/polygon-picker.d.ts +9 -0
  182. package/cjs/picker/contributions/canvas-picker/polygon-picker.js +49 -0
  183. package/cjs/picker/contributions/canvas-picker/polygon-picker.js.map +1 -0
  184. package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.d.ts +10 -0
  185. package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.js +51 -0
  186. package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.js.map +1 -0
  187. package/cjs/picker/contributions/canvas-picker/rect-picker.d.ts +9 -0
  188. package/cjs/picker/contributions/canvas-picker/rect-picker.js +62 -0
  189. package/cjs/picker/contributions/canvas-picker/rect-picker.js.map +1 -0
  190. package/cjs/picker/contributions/canvas-picker/rect3d-picker.d.ts +10 -0
  191. package/cjs/picker/contributions/canvas-picker/rect3d-picker.js +50 -0
  192. package/cjs/picker/contributions/canvas-picker/rect3d-picker.js.map +1 -0
  193. package/cjs/picker/contributions/canvas-picker/richtext-picker.d.ts +9 -0
  194. package/cjs/picker/contributions/canvas-picker/richtext-picker.js +33 -0
  195. package/cjs/picker/contributions/canvas-picker/richtext-picker.js.map +1 -0
  196. package/cjs/picker/contributions/canvas-picker/symbol-picker.d.ts +10 -0
  197. package/cjs/picker/contributions/canvas-picker/symbol-picker.js +59 -0
  198. package/cjs/picker/contributions/canvas-picker/symbol-picker.js.map +1 -0
  199. package/cjs/picker/contributions/canvas-picker/text-picker.d.ts +10 -0
  200. package/cjs/picker/contributions/canvas-picker/text-picker.js +58 -0
  201. package/cjs/picker/contributions/canvas-picker/text-picker.js.map +1 -0
  202. package/cjs/picker/contributions/constants.d.ts +29 -0
  203. package/cjs/picker/contributions/constants.js +21 -0
  204. package/cjs/picker/contributions/constants.js.map +1 -0
  205. package/cjs/picker/contributions/math-picker/arc-picker.d.ts +9 -0
  206. package/cjs/picker/contributions/math-picker/arc-picker.js +51 -0
  207. package/cjs/picker/contributions/math-picker/arc-picker.js.map +1 -0
  208. package/cjs/picker/contributions/math-picker/area-picker.d.ts +9 -0
  209. package/cjs/picker/contributions/math-picker/area-picker.js +45 -0
  210. package/cjs/picker/contributions/math-picker/area-picker.js.map +1 -0
  211. package/cjs/picker/contributions/math-picker/circle-picker.d.ts +9 -0
  212. package/cjs/picker/contributions/math-picker/circle-picker.js +50 -0
  213. package/cjs/picker/contributions/math-picker/circle-picker.js.map +1 -0
  214. package/cjs/picker/contributions/math-picker/glyph-picker.d.ts +9 -0
  215. package/cjs/picker/contributions/math-picker/glyph-picker.js +44 -0
  216. package/cjs/picker/contributions/math-picker/glyph-picker.js.map +1 -0
  217. package/cjs/picker/contributions/math-picker/line-picker.d.ts +9 -0
  218. package/cjs/picker/contributions/math-picker/line-picker.js +50 -0
  219. package/cjs/picker/contributions/math-picker/line-picker.js.map +1 -0
  220. package/cjs/picker/contributions/math-picker/module.d.ts +3 -0
  221. package/cjs/picker/contributions/math-picker/module.js +32 -0
  222. package/cjs/picker/contributions/math-picker/module.js.map +1 -0
  223. package/cjs/picker/contributions/math-picker/path-picker.d.ts +9 -0
  224. package/cjs/picker/contributions/math-picker/path-picker.js +50 -0
  225. package/cjs/picker/contributions/math-picker/path-picker.js.map +1 -0
  226. package/cjs/picker/contributions/math-picker/polygon-picker.d.ts +9 -0
  227. package/cjs/picker/contributions/math-picker/polygon-picker.js +49 -0
  228. package/cjs/picker/contributions/math-picker/polygon-picker.js.map +1 -0
  229. package/cjs/picker/contributions/math-picker/rect-picker.d.ts +9 -0
  230. package/cjs/picker/contributions/math-picker/rect-picker.js +62 -0
  231. package/cjs/picker/contributions/math-picker/rect-picker.js.map +1 -0
  232. package/cjs/picker/contributions/math-picker/symbol-picker.d.ts +9 -0
  233. package/cjs/picker/contributions/math-picker/symbol-picker.js +50 -0
  234. package/cjs/picker/contributions/math-picker/symbol-picker.js.map +1 -0
  235. package/cjs/picker/contributions/math-picker/text-picker.d.ts +7 -0
  236. package/cjs/picker/contributions/math-picker/text-picker.js +26 -0
  237. package/cjs/picker/contributions/math-picker/text-picker.js.map +1 -0
  238. package/cjs/picker/index.d.ts +1 -0
  239. package/cjs/picker/index.js +21 -0
  240. package/cjs/picker/index.js.map +1 -0
  241. package/cjs/picker/math-picker-service.d.ts +16 -0
  242. package/cjs/picker/math-picker-service.js +50 -0
  243. package/cjs/picker/math-picker-service.js.map +1 -0
  244. package/cjs/picker/module.d.ts +6 -0
  245. package/cjs/picker/module.js +30 -0
  246. package/cjs/picker/module.js.map +1 -0
  247. package/cjs/render/contributions/rough/config.js +1 -1
  248. package/cjs/render/contributions/rough/module.d.ts +1 -1
  249. package/cjs/render/contributions/rough/module.js +10 -10
  250. package/cjs/render/contributions/rough/module.js.map +1 -1
  251. package/cjs/render/contributions/rough/rough-arc.d.ts +1 -1
  252. package/cjs/render/contributions/rough/rough-arc.js +10 -8
  253. package/cjs/render/contributions/rough/rough-arc.js.map +1 -1
  254. package/cjs/render/contributions/rough/rough-area.d.ts +2 -2
  255. package/cjs/render/contributions/rough/rough-area.js +6 -6
  256. package/cjs/render/contributions/rough/rough-area.js.map +1 -1
  257. package/cjs/render/contributions/rough/rough-circle.d.ts +1 -1
  258. package/cjs/render/contributions/rough/rough-circle.js +6 -6
  259. package/cjs/render/contributions/rough/rough-circle.js.map +1 -1
  260. package/cjs/render/contributions/rough/rough-line.d.ts +2 -2
  261. package/cjs/render/contributions/rough/rough-line.js +6 -6
  262. package/cjs/render/contributions/rough/rough-line.js.map +1 -1
  263. package/cjs/render/contributions/rough/rough-path.d.ts +1 -1
  264. package/cjs/render/contributions/rough/rough-path.js +6 -6
  265. package/cjs/render/contributions/rough/rough-path.js.map +1 -1
  266. package/cjs/render/contributions/rough/rough-rect.d.ts +1 -1
  267. package/cjs/render/contributions/rough/rough-rect.js +6 -6
  268. package/cjs/render/contributions/rough/rough-rect.js.map +1 -1
  269. package/cjs/render/contributions/rough/rough-symbol.d.ts +2 -2
  270. package/cjs/render/contributions/rough/rough-symbol.js +8 -8
  271. package/cjs/render/contributions/rough/rough-symbol.js.map +1 -1
  272. package/cjs/window/contributions/browser-contribution.d.ts +48 -0
  273. package/cjs/window/contributions/browser-contribution.js +176 -0
  274. package/cjs/window/contributions/browser-contribution.js.map +1 -0
  275. package/cjs/window/contributions/feishu-contribution.d.ts +46 -0
  276. package/cjs/window/contributions/feishu-contribution.js +157 -0
  277. package/cjs/window/contributions/feishu-contribution.js.map +1 -0
  278. package/cjs/window/contributions/lynx-contribution.d.ts +46 -0
  279. package/cjs/window/contributions/lynx-contribution.js +157 -0
  280. package/cjs/window/contributions/lynx-contribution.js.map +1 -0
  281. package/cjs/window/contributions/modules.d.ts +8 -1
  282. package/cjs/window/contributions/modules.js +29 -1
  283. package/cjs/window/contributions/modules.js.map +1 -1
  284. package/cjs/window/contributions/native-contribution.js +3 -0
  285. package/cjs/window/contributions/native-contribution.js.map +1 -0
  286. package/cjs/window/contributions/node-contribution.d.ts +39 -1
  287. package/cjs/window/contributions/node-contribution.js +109 -1
  288. package/cjs/window/contributions/node-contribution.js.map +1 -1
  289. package/cjs/window/contributions/taro-contribution.d.ts +46 -0
  290. package/cjs/window/contributions/taro-contribution.js +164 -0
  291. package/cjs/window/contributions/taro-contribution.js.map +1 -0
  292. package/cjs/window/contributions/wx-contribution.d.ts +46 -0
  293. package/cjs/window/contributions/wx-contribution.js +159 -0
  294. package/cjs/window/contributions/wx-contribution.js.map +1 -0
  295. package/cjs/window/index.d.ts +1 -0
  296. package/cjs/window/index.js +21 -0
  297. package/cjs/window/index.js.map +1 -0
  298. package/dist/index.js +22974 -2106
  299. package/dist/index.min.js +1 -1
  300. package/es/canvas/contributions/browser/canvas.d.ts +17 -0
  301. package/es/canvas/contributions/browser/canvas.js +70 -0
  302. package/es/canvas/contributions/browser/canvas.js.map +1 -0
  303. package/es/canvas/contributions/browser/context.d.ts +174 -0
  304. package/es/canvas/contributions/browser/context.js +488 -0
  305. package/es/canvas/contributions/browser/context.js.map +1 -0
  306. package/es/canvas/contributions/browser/index.d.ts +2 -0
  307. package/es/canvas/contributions/browser/index.js +4 -0
  308. package/es/canvas/contributions/browser/index.js.map +1 -0
  309. package/es/canvas/contributions/browser/modules.d.ts +1 -0
  310. package/es/canvas/contributions/browser/modules.js +8 -0
  311. package/es/canvas/contributions/browser/modules.js.map +1 -0
  312. package/es/canvas/contributions/create-canvas-module.d.ts +2 -0
  313. package/es/canvas/contributions/create-canvas-module.js +9 -0
  314. package/es/canvas/contributions/create-canvas-module.js.map +1 -0
  315. package/es/canvas/contributions/feishu/canvas.d.ts +8 -0
  316. package/es/canvas/contributions/feishu/canvas.js +26 -0
  317. package/es/canvas/contributions/feishu/canvas.js.map +1 -0
  318. package/es/canvas/contributions/feishu/context.d.ts +12 -0
  319. package/es/canvas/contributions/feishu/context.js +53 -0
  320. package/es/canvas/contributions/feishu/context.js.map +1 -0
  321. package/es/canvas/contributions/feishu/index.d.ts +2 -0
  322. package/es/canvas/contributions/feishu/index.js +4 -0
  323. package/es/canvas/contributions/feishu/index.js.map +1 -0
  324. package/es/canvas/contributions/feishu/modules.d.ts +1 -0
  325. package/es/canvas/contributions/feishu/modules.js +8 -0
  326. package/es/canvas/contributions/feishu/modules.js.map +1 -0
  327. package/es/canvas/contributions/lynx/canvas.d.ts +8 -0
  328. package/es/canvas/contributions/lynx/canvas.js +26 -0
  329. package/es/canvas/contributions/lynx/canvas.js.map +1 -0
  330. package/es/canvas/contributions/lynx/context.d.ts +13 -0
  331. package/es/canvas/contributions/lynx/context.js +54 -0
  332. package/es/canvas/contributions/lynx/context.js.map +1 -0
  333. package/es/canvas/contributions/lynx/index.d.ts +2 -0
  334. package/es/canvas/contributions/lynx/index.js +4 -0
  335. package/es/canvas/contributions/lynx/index.js.map +1 -0
  336. package/es/canvas/contributions/lynx/modules.d.ts +1 -0
  337. package/es/canvas/contributions/lynx/modules.js +8 -0
  338. package/es/canvas/contributions/lynx/modules.js.map +1 -0
  339. package/es/canvas/contributions/modules.d.ts +9 -0
  340. package/es/canvas/contributions/modules.js +48 -0
  341. package/es/canvas/contributions/modules.js.map +1 -0
  342. package/es/canvas/contributions/node/canvas.d.ts +8 -1
  343. package/es/canvas/contributions/node/canvas.js +29 -1
  344. package/es/canvas/contributions/node/canvas.js.map +1 -1
  345. package/es/canvas/contributions/node/context.d.ts +7 -1
  346. package/es/canvas/contributions/node/context.js +29 -1
  347. package/es/canvas/contributions/node/context.js.map +1 -1
  348. package/es/canvas/contributions/node/index.d.ts +2 -1
  349. package/es/canvas/contributions/node/index.js +4 -1
  350. package/es/canvas/contributions/node/index.js.map +1 -1
  351. package/es/canvas/contributions/node/modules.d.ts +1 -1
  352. package/es/canvas/contributions/node/modules.js +8 -1
  353. package/es/canvas/contributions/node/modules.js.map +1 -1
  354. package/es/canvas/contributions/taro/canvas.d.ts +8 -0
  355. package/es/canvas/contributions/taro/canvas.js +28 -0
  356. package/es/canvas/contributions/taro/canvas.js.map +1 -0
  357. package/es/canvas/contributions/taro/context.d.ts +32 -0
  358. package/es/canvas/contributions/taro/context.js +64 -0
  359. package/es/canvas/contributions/taro/context.js.map +1 -0
  360. package/es/canvas/contributions/taro/index.d.ts +2 -0
  361. package/es/canvas/contributions/taro/index.js +4 -0
  362. package/es/canvas/contributions/taro/index.js.map +1 -0
  363. package/es/canvas/contributions/taro/modules.d.ts +1 -0
  364. package/es/canvas/contributions/taro/modules.js +8 -0
  365. package/es/canvas/contributions/taro/modules.js.map +1 -0
  366. package/es/canvas/contributions/tt/canvas.d.ts +8 -0
  367. package/es/canvas/contributions/tt/canvas.js +26 -0
  368. package/es/canvas/contributions/tt/canvas.js.map +1 -0
  369. package/es/canvas/contributions/tt/context.d.ts +5 -0
  370. package/es/canvas/contributions/tt/context.js +16 -0
  371. package/es/canvas/contributions/tt/context.js.map +1 -0
  372. package/es/canvas/contributions/tt/index.d.ts +2 -0
  373. package/es/canvas/contributions/tt/index.js +4 -0
  374. package/es/canvas/contributions/tt/index.js.map +1 -0
  375. package/es/canvas/contributions/tt/modules.d.ts +1 -0
  376. package/es/canvas/contributions/tt/modules.js +8 -0
  377. package/es/canvas/contributions/tt/modules.js.map +1 -0
  378. package/es/canvas/contributions/wx/canvas.d.ts +8 -0
  379. package/es/canvas/contributions/wx/canvas.js +26 -0
  380. package/es/canvas/contributions/wx/canvas.js.map +1 -0
  381. package/es/canvas/contributions/wx/context.d.ts +7 -0
  382. package/es/canvas/contributions/wx/context.js +21 -0
  383. package/es/canvas/contributions/wx/context.js.map +1 -0
  384. package/es/canvas/contributions/wx/index.d.ts +2 -0
  385. package/es/canvas/contributions/wx/index.js +4 -0
  386. package/es/canvas/contributions/wx/index.js.map +1 -0
  387. package/es/canvas/contributions/wx/modules.d.ts +1 -0
  388. package/es/canvas/contributions/wx/modules.js +8 -0
  389. package/es/canvas/contributions/wx/modules.js.map +1 -0
  390. package/es/canvas/index.d.ts +1 -1
  391. package/es/canvas/index.js +2 -1
  392. package/es/canvas/index.js.map +1 -1
  393. package/es/env/contributions/browser-contribution.d.ts +42 -0
  394. package/es/env/contributions/browser-contribution.js +192 -0
  395. package/es/env/contributions/browser-contribution.js.map +1 -0
  396. package/es/env/contributions/feishu-contribution.d.ts +41 -0
  397. package/es/env/contributions/feishu-contribution.js +111 -0
  398. package/es/env/contributions/feishu-contribution.js.map +1 -0
  399. package/es/env/contributions/lynx-contribution.d.ts +41 -0
  400. package/es/env/contributions/lynx-contribution.js +129 -0
  401. package/es/env/contributions/lynx-contribution.js.map +1 -0
  402. package/es/env/contributions/module.d.ts +9 -1
  403. package/es/env/contributions/module.js +51 -1
  404. package/es/env/contributions/module.js.map +1 -1
  405. package/es/env/contributions/node-contribution.d.ts +49 -1
  406. package/es/env/contributions/node-contribution.js +90 -1
  407. package/es/env/contributions/node-contribution.js.map +1 -1
  408. package/es/env/contributions/taro-contribution.d.ts +57 -0
  409. package/es/env/contributions/taro-contribution.js +137 -0
  410. package/es/env/contributions/taro-contribution.js.map +1 -0
  411. package/es/env/contributions/wx-contribution.d.ts +40 -0
  412. package/es/env/contributions/wx-contribution.js +126 -0
  413. package/es/env/contributions/wx-contribution.js.map +1 -0
  414. package/es/env/index.d.ts +1 -0
  415. package/es/env/index.js +2 -0
  416. package/es/env/index.js.map +1 -0
  417. package/es/env/modules.d.ts +8 -0
  418. package/es/env/modules.js +46 -0
  419. package/es/env/modules.js.map +1 -0
  420. package/es/event/extension/drag.d.ts +9 -0
  421. package/es/event/extension/drag.js +46 -0
  422. package/es/event/extension/drag.js.map +1 -0
  423. package/es/event/extension/gesture.d.ts +38 -0
  424. package/es/event/extension/gesture.js +177 -0
  425. package/es/event/extension/gesture.js.map +1 -0
  426. package/es/event/extension/index.d.ts +3 -0
  427. package/es/event/extension/index.js +6 -0
  428. package/es/event/extension/index.js.map +1 -0
  429. package/es/index-node.d.ts +1 -2
  430. package/es/index-node.js +0 -2
  431. package/es/index-node.js.map +1 -1
  432. package/es/index.d.ts +7 -2
  433. package/es/index.js +12 -2
  434. package/es/index.js.map +1 -1
  435. package/es/jsx/graphicType.d.ts +171 -0
  436. package/es/jsx/graphicType.js +126 -0
  437. package/es/jsx/graphicType.js.map +1 -0
  438. package/es/jsx/index.d.ts +2 -0
  439. package/es/jsx/index.js +4 -0
  440. package/es/jsx/index.js.map +1 -0
  441. package/es/jsx/jsx-classic.d.ts +3 -0
  442. package/es/jsx/jsx-classic.js +56 -0
  443. package/es/jsx/jsx-classic.js.map +1 -0
  444. package/es/picker/canvas-picker-service.d.ts +28 -0
  445. package/es/picker/canvas-picker-service.js +78 -0
  446. package/es/picker/canvas-picker-service.js.map +1 -0
  447. package/es/picker/contributions/canvas-picker/arc-picker.d.ts +9 -0
  448. package/es/picker/contributions/canvas-picker/arc-picker.js +45 -0
  449. package/es/picker/contributions/canvas-picker/arc-picker.js.map +1 -0
  450. package/es/picker/contributions/canvas-picker/arc3d-picker.d.ts +10 -0
  451. package/es/picker/contributions/canvas-picker/arc3d-picker.js +46 -0
  452. package/es/picker/contributions/canvas-picker/arc3d-picker.js.map +1 -0
  453. package/es/picker/contributions/canvas-picker/area-picker.d.ts +9 -0
  454. package/es/picker/contributions/canvas-picker/area-picker.js +39 -0
  455. package/es/picker/contributions/canvas-picker/area-picker.js.map +1 -0
  456. package/es/picker/contributions/canvas-picker/base-picker.d.ts +4 -0
  457. package/es/picker/contributions/canvas-picker/base-picker.js +14 -0
  458. package/es/picker/contributions/canvas-picker/base-picker.js.map +1 -0
  459. package/es/picker/contributions/canvas-picker/circle-picker.d.ts +9 -0
  460. package/es/picker/contributions/canvas-picker/circle-picker.js +44 -0
  461. package/es/picker/contributions/canvas-picker/circle-picker.js.map +1 -0
  462. package/es/picker/contributions/canvas-picker/glyph-picker.d.ts +9 -0
  463. package/es/picker/contributions/canvas-picker/glyph-picker.js +38 -0
  464. package/es/picker/contributions/canvas-picker/glyph-picker.js.map +1 -0
  465. package/es/picker/contributions/canvas-picker/group-picker.d.ts +7 -0
  466. package/es/picker/contributions/canvas-picker/group-picker.js +21 -0
  467. package/es/picker/contributions/canvas-picker/group-picker.js.map +1 -0
  468. package/es/picker/contributions/canvas-picker/image-picker.d.ts +7 -0
  469. package/es/picker/contributions/canvas-picker/image-picker.js +22 -0
  470. package/es/picker/contributions/canvas-picker/image-picker.js.map +1 -0
  471. package/es/picker/contributions/canvas-picker/line-picker.d.ts +10 -0
  472. package/es/picker/contributions/canvas-picker/line-picker.js +52 -0
  473. package/es/picker/contributions/canvas-picker/line-picker.js.map +1 -0
  474. package/es/picker/contributions/canvas-picker/module.d.ts +3 -0
  475. package/es/picker/contributions/canvas-picker/module.js +64 -0
  476. package/es/picker/contributions/canvas-picker/module.js.map +1 -0
  477. package/es/picker/contributions/canvas-picker/path-picker.d.ts +10 -0
  478. package/es/picker/contributions/canvas-picker/path-picker.js +53 -0
  479. package/es/picker/contributions/canvas-picker/path-picker.js.map +1 -0
  480. package/es/picker/contributions/canvas-picker/polygon-picker.d.ts +9 -0
  481. package/es/picker/contributions/canvas-picker/polygon-picker.js +43 -0
  482. package/es/picker/contributions/canvas-picker/polygon-picker.js.map +1 -0
  483. package/es/picker/contributions/canvas-picker/pyramid3d-picker.d.ts +10 -0
  484. package/es/picker/contributions/canvas-picker/pyramid3d-picker.js +47 -0
  485. package/es/picker/contributions/canvas-picker/pyramid3d-picker.js.map +1 -0
  486. package/es/picker/contributions/canvas-picker/rect-picker.d.ts +9 -0
  487. package/es/picker/contributions/canvas-picker/rect-picker.js +59 -0
  488. package/es/picker/contributions/canvas-picker/rect-picker.js.map +1 -0
  489. package/es/picker/contributions/canvas-picker/rect3d-picker.d.ts +10 -0
  490. package/es/picker/contributions/canvas-picker/rect3d-picker.js +50 -0
  491. package/es/picker/contributions/canvas-picker/rect3d-picker.js.map +1 -0
  492. package/es/picker/contributions/canvas-picker/richtext-picker.d.ts +9 -0
  493. package/es/picker/contributions/canvas-picker/richtext-picker.js +27 -0
  494. package/es/picker/contributions/canvas-picker/richtext-picker.js.map +1 -0
  495. package/es/picker/contributions/canvas-picker/symbol-picker.d.ts +10 -0
  496. package/es/picker/contributions/canvas-picker/symbol-picker.js +55 -0
  497. package/es/picker/contributions/canvas-picker/symbol-picker.js.map +1 -0
  498. package/es/picker/contributions/canvas-picker/text-picker.d.ts +10 -0
  499. package/es/picker/contributions/canvas-picker/text-picker.js +52 -0
  500. package/es/picker/contributions/canvas-picker/text-picker.js.map +1 -0
  501. package/es/picker/contributions/constants.d.ts +29 -0
  502. package/es/picker/contributions/constants.js +58 -0
  503. package/es/picker/contributions/constants.js.map +1 -0
  504. package/es/picker/contributions/math-picker/arc-picker.d.ts +9 -0
  505. package/es/picker/contributions/math-picker/arc-picker.js +45 -0
  506. package/es/picker/contributions/math-picker/arc-picker.js.map +1 -0
  507. package/es/picker/contributions/math-picker/area-picker.d.ts +9 -0
  508. package/es/picker/contributions/math-picker/area-picker.js +39 -0
  509. package/es/picker/contributions/math-picker/area-picker.js.map +1 -0
  510. package/es/picker/contributions/math-picker/circle-picker.d.ts +9 -0
  511. package/es/picker/contributions/math-picker/circle-picker.js +44 -0
  512. package/es/picker/contributions/math-picker/circle-picker.js.map +1 -0
  513. package/es/picker/contributions/math-picker/glyph-picker.d.ts +9 -0
  514. package/es/picker/contributions/math-picker/glyph-picker.js +38 -0
  515. package/es/picker/contributions/math-picker/glyph-picker.js.map +1 -0
  516. package/es/picker/contributions/math-picker/line-picker.d.ts +9 -0
  517. package/es/picker/contributions/math-picker/line-picker.js +44 -0
  518. package/es/picker/contributions/math-picker/line-picker.js.map +1 -0
  519. package/es/picker/contributions/math-picker/module.d.ts +3 -0
  520. package/es/picker/contributions/math-picker/module.js +43 -0
  521. package/es/picker/contributions/math-picker/module.js.map +1 -0
  522. package/es/picker/contributions/math-picker/path-picker.d.ts +9 -0
  523. package/es/picker/contributions/math-picker/path-picker.js +44 -0
  524. package/es/picker/contributions/math-picker/path-picker.js.map +1 -0
  525. package/es/picker/contributions/math-picker/polygon-picker.d.ts +9 -0
  526. package/es/picker/contributions/math-picker/polygon-picker.js +43 -0
  527. package/es/picker/contributions/math-picker/polygon-picker.js.map +1 -0
  528. package/es/picker/contributions/math-picker/rect-picker.d.ts +9 -0
  529. package/es/picker/contributions/math-picker/rect-picker.js +59 -0
  530. package/es/picker/contributions/math-picker/rect-picker.js.map +1 -0
  531. package/es/picker/contributions/math-picker/symbol-picker.d.ts +9 -0
  532. package/es/picker/contributions/math-picker/symbol-picker.js +44 -0
  533. package/es/picker/contributions/math-picker/symbol-picker.js.map +1 -0
  534. package/es/picker/contributions/math-picker/text-picker.d.ts +7 -0
  535. package/es/picker/contributions/math-picker/text-picker.js +21 -0
  536. package/es/picker/contributions/math-picker/text-picker.js.map +1 -0
  537. package/es/picker/index.d.ts +1 -0
  538. package/es/picker/index.js +2 -0
  539. package/es/picker/index.js.map +1 -0
  540. package/es/picker/math-picker-service.d.ts +16 -0
  541. package/es/picker/math-picker-service.js +44 -0
  542. package/es/picker/math-picker-service.js.map +1 -0
  543. package/es/picker/module.d.ts +6 -0
  544. package/es/picker/module.js +28 -0
  545. package/es/picker/module.js.map +1 -0
  546. package/es/render/contributions/rough/config.js +1 -1
  547. package/es/render/contributions/rough/module.d.ts +1 -1
  548. package/es/render/contributions/rough/module.js +2 -4
  549. package/es/render/contributions/rough/module.js.map +1 -1
  550. package/es/render/contributions/rough/rough-arc.d.ts +1 -1
  551. package/es/render/contributions/rough/rough-arc.js +3 -4
  552. package/es/render/contributions/rough/rough-arc.js.map +1 -1
  553. package/es/render/contributions/rough/rough-area.d.ts +2 -2
  554. package/es/render/contributions/rough/rough-area.js +2 -4
  555. package/es/render/contributions/rough/rough-area.js.map +1 -1
  556. package/es/render/contributions/rough/rough-circle.d.ts +1 -1
  557. package/es/render/contributions/rough/rough-circle.js +2 -4
  558. package/es/render/contributions/rough/rough-circle.js.map +1 -1
  559. package/es/render/contributions/rough/rough-line.d.ts +2 -2
  560. package/es/render/contributions/rough/rough-line.js +2 -4
  561. package/es/render/contributions/rough/rough-line.js.map +1 -1
  562. package/es/render/contributions/rough/rough-path.d.ts +1 -1
  563. package/es/render/contributions/rough/rough-path.js +2 -4
  564. package/es/render/contributions/rough/rough-path.js.map +1 -1
  565. package/es/render/contributions/rough/rough-rect.d.ts +1 -1
  566. package/es/render/contributions/rough/rough-rect.js +2 -4
  567. package/es/render/contributions/rough/rough-rect.js.map +1 -1
  568. package/es/render/contributions/rough/rough-symbol.d.ts +2 -2
  569. package/es/render/contributions/rough/rough-symbol.js +2 -4
  570. package/es/render/contributions/rough/rough-symbol.js.map +1 -1
  571. package/es/window/contributions/browser-contribution.d.ts +48 -0
  572. package/es/window/contributions/browser-contribution.js +172 -0
  573. package/es/window/contributions/browser-contribution.js.map +1 -0
  574. package/es/window/contributions/feishu-contribution.d.ts +46 -0
  575. package/es/window/contributions/feishu-contribution.js +153 -0
  576. package/es/window/contributions/feishu-contribution.js.map +1 -0
  577. package/es/window/contributions/lynx-contribution.d.ts +46 -0
  578. package/es/window/contributions/lynx-contribution.js +153 -0
  579. package/es/window/contributions/lynx-contribution.js.map +1 -0
  580. package/es/window/contributions/modules.d.ts +8 -1
  581. package/es/window/contributions/modules.js +47 -1
  582. package/es/window/contributions/modules.js.map +1 -1
  583. package/es/window/contributions/native-contribution.js +3 -0
  584. package/es/window/contributions/native-contribution.js.map +1 -0
  585. package/es/window/contributions/node-contribution.d.ts +39 -1
  586. package/es/window/contributions/node-contribution.js +105 -1
  587. package/es/window/contributions/node-contribution.js.map +1 -1
  588. package/es/window/contributions/taro-contribution.d.ts +46 -0
  589. package/es/window/contributions/taro-contribution.js +160 -0
  590. package/es/window/contributions/taro-contribution.js.map +1 -0
  591. package/es/window/contributions/wx-contribution.d.ts +46 -0
  592. package/es/window/contributions/wx-contribution.js +155 -0
  593. package/es/window/contributions/wx-contribution.js.map +1 -0
  594. package/es/window/index.d.ts +1 -0
  595. package/es/window/index.js +2 -0
  596. package/es/window/index.js.map +1 -0
  597. package/package.json +4 -6
  598. package/cjs/canvas/contributions/canvas-module.js +0 -1
  599. package/cjs/canvas/contributions/canvas-module.js.map +0 -1
  600. package/es/canvas/contributions/canvas-module.js +0 -1
  601. package/es/canvas/contributions/canvas-module.js.map +0 -1
  602. /package/cjs/{canvas/contributions/canvas-module.d.ts → window/contributions/native-contribution.d.ts} +0 -0
  603. /package/es/{canvas/contributions/canvas-module.d.ts → window/contributions/native-contribution.d.ts} +0 -0
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+
3
+ var __decorate = this && this.__decorate || function(decorators, target, key, desc) {
4
+ var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
5
+ if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) (d = decorators[i]) && (r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r);
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ }, __metadata = this && this.__metadata || function(k, v) {
8
+ if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(k, v);
9
+ }, __awaiter = this && this.__awaiter || function(thisArg, _arguments, P, generator) {
10
+ return new (P || (P = Promise))((function(resolve, reject) {
11
+ function fulfilled(value) {
12
+ try {
13
+ step(generator.next(value));
14
+ } catch (e) {
15
+ reject(e);
16
+ }
17
+ }
18
+ function rejected(value) {
19
+ try {
20
+ step(generator.throw(value));
21
+ } catch (e) {
22
+ reject(e);
23
+ }
24
+ }
25
+ function step(result) {
26
+ var value;
27
+ result.done ? resolve(result.value) : (value = result.value, value instanceof P ? value : new P((function(resolve) {
28
+ resolve(value);
29
+ }))).then(fulfilled, rejected);
30
+ }
31
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
32
+ }));
33
+ };
34
+
35
+ Object.defineProperty(exports, "__esModule", {
36
+ value: !0
37
+ }), exports.WxEnvContribution = void 0;
38
+
39
+ const vrender_core_1 = require("@visactor/vrender-core");
40
+
41
+ function makeUpCanvas(domref, canvasIdLists, canvasMap, freeCanvasIdx, freeCanvasList, component) {
42
+ return __awaiter(this, void 0, void 0, (function*() {
43
+ const dpr = wx.getSystemInfoSync().pixelRatio;
44
+ for (let i = 0; i < canvasIdLists.length; i++) {
45
+ const id = canvasIdLists[i];
46
+ yield new Promise((resolve => {
47
+ let data = wx.createSelectorQuery();
48
+ component && (data = data.in(component)), data.select(`#${id}`).fields({
49
+ node: !0,
50
+ size: !0
51
+ }).exec((res => {
52
+ if (!res[0]) return;
53
+ const canvas = res[0].node, width = res[0].width, height = res[0].height;
54
+ canvas.width = width * dpr, canvas.height = height * dpr, canvasMap.set(id, canvas),
55
+ i >= freeCanvasIdx && freeCanvasList.push(canvas), resolve(null);
56
+ }));
57
+ }));
58
+ }
59
+ }));
60
+ }
61
+
62
+ let WxEnvContribution = class extends vrender_core_1.BaseEnvContribution {
63
+ constructor() {
64
+ super(), this.type = "wx", this.supportEvent = !0, this.canvasMap = new Map, this.freeCanvasList = [],
65
+ this.canvasIdx = 0, this.supportsTouchEvents = !0;
66
+ try {
67
+ this.supportsPointerEvents = !!globalThis.PointerEvent, this.supportsMouseEvents = !!globalThis.MouseEvent;
68
+ } catch (err) {
69
+ this.supportsPointerEvents = !1, this.supportsMouseEvents = !1;
70
+ }
71
+ this.applyStyles = !0;
72
+ }
73
+ configure(service, params) {
74
+ if (service.env === this.type) return service.setActiveEnvContribution(this), makeUpCanvas(params.domref, params.canvasIdLists, this.canvasMap, params.freeCanvasIdx, this.freeCanvasList, params.component).then((() => {}));
75
+ }
76
+ loadImage(url) {
77
+ return Promise.resolve({
78
+ data: url,
79
+ loadState: "success"
80
+ });
81
+ }
82
+ loadSvg(url) {
83
+ return Promise.reject();
84
+ }
85
+ createCanvas(params) {
86
+ const result = this.freeCanvasList[this.canvasIdx] || this.freeCanvasList[this.freeCanvasList.length - 1];
87
+ return this.canvasIdx++, result;
88
+ }
89
+ createOffscreenCanvas(params) {}
90
+ releaseCanvas(canvas) {}
91
+ getDevicePixelRatio() {
92
+ return wx.getSystemInfoSync().pixelRatio;
93
+ }
94
+ getRequestAnimationFrame() {
95
+ return function(callback) {
96
+ return vrender_core_1.rafBasedSto.call(callback);
97
+ };
98
+ }
99
+ getCancelAnimationFrame() {
100
+ return h => {
101
+ vrender_core_1.rafBasedSto.clear(h);
102
+ };
103
+ }
104
+ addEventListener(type, listener, options) {
105
+ return null;
106
+ }
107
+ removeEventListener(type, listener, options) {
108
+ return null;
109
+ }
110
+ dispatchEvent(event) {
111
+ return null;
112
+ }
113
+ getElementById(str) {
114
+ return this.canvasMap.get(str);
115
+ }
116
+ getRootElement() {
117
+ return null;
118
+ }
119
+ getDocument() {
120
+ return null;
121
+ }
122
+ release(...params) {}
123
+ mapToCanvasPoint(event) {
124
+ var _a;
125
+ return (null === (_a = null == event ? void 0 : event.type) || void 0 === _a ? void 0 : _a.startsWith("mouse")) ? event : null;
126
+ }
127
+ };
128
+
129
+ WxEnvContribution = __decorate([ (0, vrender_core_1.injectable)(), __metadata("design:paramtypes", []) ], WxEnvContribution),
130
+ exports.WxEnvContribution = WxEnvContribution;
131
+ //# sourceMappingURL=wx-contribution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/env/contributions/wx-contribution.ts"],"names":[],"mappings":"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","file":"wx-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 wx: {\n getSystemInfoSync: () => { pixelRatio: number };\n createCanvasContext: (id: string) => any;\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 = wx.getSystemInfoSync().pixelRatio;\n\n for (let i = 0; i < canvasIdLists.length; i++) {\n const id = canvasIdLists[i];\n await new Promise(resolve => {\n let data = wx.createSelectorQuery();\n if (component) {\n data = data.in(component);\n }\n // @ts-ignore\n data\n .select(`#${id}`) // 在 WXML 中填入的 id\n .fields({ node: true, size: true })\n .exec((res: any) => {\n if (!res[0]) {\n return;\n }\n const canvas = res[0].node;\n const width = res[0].width;\n const height = res[0].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 WxEnvContribution extends BaseEnvContribution implements IEnvContribution {\n type: EnvType = 'wx';\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 wx.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 null;\n }\n}\n"]}
@@ -0,0 +1 @@
1
+ export * from './modules';
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ var __createBinding = this && this.__createBinding || (Object.create ? function(o, m, k, k2) {
4
+ void 0 === k2 && (k2 = k);
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ desc && !("get" in desc ? !m.__esModule : desc.writable || desc.configurable) || (desc = {
7
+ enumerable: !0,
8
+ get: function() {
9
+ return m[k];
10
+ }
11
+ }), Object.defineProperty(o, k2, desc);
12
+ } : function(o, m, k, k2) {
13
+ void 0 === k2 && (k2 = k), o[k2] = m[k];
14
+ }), __exportStar = this && this.__exportStar || function(m, exports) {
15
+ for (var p in m) "default" === p || Object.prototype.hasOwnProperty.call(exports, p) || __createBinding(exports, m, p);
16
+ };
17
+
18
+ Object.defineProperty(exports, "__esModule", {
19
+ value: !0
20
+ }), __exportStar(require("./modules"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/env/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B","file":"index.js","sourcesContent":["export * from './modules';\n"]}
@@ -0,0 +1,8 @@
1
+ import type { Container } from '@visactor/vrender-core';
2
+ export declare function loadAllModule(container: Container): void;
3
+ export declare function loadBrowserEnv(container: Container): void;
4
+ export declare function loadFeishuEnv(container: Container): void;
5
+ export declare function loadLynxEnv(container: Container): void;
6
+ export declare function loadNodeEnv(container: Container): void;
7
+ export declare function loadTaroEnv(container: Container): void;
8
+ export declare function loadWxEnv(container: Container): void;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: !0
5
+ }), exports.loadWxEnv = exports.loadTaroEnv = exports.loadNodeEnv = exports.loadLynxEnv = exports.loadFeishuEnv = exports.loadBrowserEnv = exports.loadAllModule = void 0;
6
+
7
+ const module_1 = require("./contributions/module"), modules_1 = require("../canvas/contributions/modules"), modules_2 = require("../window/contributions/modules"), modules_3 = require("../canvas/contributions/browser/modules"), modules_4 = require("../canvas/contributions/feishu/modules"), modules_5 = require("../canvas/contributions/lynx/modules"), modules_6 = require("../canvas/contributions/node/modules"), modules_7 = require("../canvas/contributions/taro/modules"), modules_8 = require("../canvas/contributions/wx/modules");
8
+
9
+ function loadAllModule(container) {
10
+ container.load(module_1.allEnvModule), (0, modules_1.loadAllCavnvas)(container),
11
+ container.load(modules_2.allWindowModule);
12
+ }
13
+
14
+ function loadBrowserEnv(container) {
15
+ container.load(module_1.browserEnvModule), container.load(modules_3.browserCanvasModule),
16
+ container.load(modules_2.browserWindowModule);
17
+ }
18
+
19
+ function loadFeishuEnv(container) {
20
+ container.load(module_1.feishuEnvModule), container.load(modules_4.feishuCanvasModule),
21
+ container.load(modules_2.feishuWindowModule);
22
+ }
23
+
24
+ function loadLynxEnv(container) {
25
+ container.load(module_1.lynxEnvModule), container.load(modules_5.lynxCanvasModule),
26
+ container.load(modules_2.lynxWindowModule);
27
+ }
28
+
29
+ function loadNodeEnv(container) {
30
+ container.load(module_1.nodeEnvModule), container.load(modules_6.nodeCanvasModule),
31
+ container.load(modules_2.nodeWindowModule);
32
+ }
33
+
34
+ function loadTaroEnv(container) {
35
+ container.load(module_1.taroEnvModule), container.load(modules_7.taroCanvasModule),
36
+ container.load(modules_2.taroWindowModule);
37
+ }
38
+
39
+ function loadWxEnv(container) {
40
+ container.load(module_1.wxEnvModule), container.load(modules_8.wxCanvasModule),
41
+ container.load(modules_2.wxWindowModule);
42
+ }
43
+
44
+ exports.loadAllModule = loadAllModule, exports.loadBrowserEnv = loadBrowserEnv,
45
+ exports.loadFeishuEnv = loadFeishuEnv, exports.loadLynxEnv = loadLynxEnv, exports.loadNodeEnv = loadNodeEnv,
46
+ exports.loadTaroEnv = loadTaroEnv, exports.loadWxEnv = loadWxEnv;
47
+ //# sourceMappingURL=modules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/env/modules.ts"],"names":[],"mappings":";;;AACA,mDAQgC;AAChC,6DAAiE;AACjE,6DAQyC;AACzC,qEAA8E;AAC9E,oEAA4E;AAC5E,kEAAwE;AACxE,kEAAwE;AACxE,kEAAwE;AACxE,gEAAoE;AAEpE,SAAgB,aAAa,CAAC,SAAoB;IAChD,SAAS,CAAC,IAAI,CAAC,qBAAY,CAAC,CAAC;IAC7B,IAAA,wBAAc,EAAC,SAAS,CAAC,CAAC;IAC1B,SAAS,CAAC,IAAI,CAAC,yBAAe,CAAC,CAAC;AAClC,CAAC;AAJD,sCAIC;AAED,SAAgB,cAAc,CAAC,SAAoB;IACjD,SAAS,CAAC,IAAI,CAAC,yBAAgB,CAAC,CAAC;IACjC,SAAS,CAAC,IAAI,CAAC,6BAAmB,CAAC,CAAC;IACpC,SAAS,CAAC,IAAI,CAAC,6BAAmB,CAAC,CAAC;AACtC,CAAC;AAJD,wCAIC;AAED,SAAgB,aAAa,CAAC,SAAoB;IAChD,SAAS,CAAC,IAAI,CAAC,wBAAe,CAAC,CAAC;IAChC,SAAS,CAAC,IAAI,CAAC,4BAAkB,CAAC,CAAC;IACnC,SAAS,CAAC,IAAI,CAAC,4BAAkB,CAAC,CAAC;AACrC,CAAC;AAJD,sCAIC;AAED,SAAgB,WAAW,CAAC,SAAoB;IAC9C,SAAS,CAAC,IAAI,CAAC,sBAAa,CAAC,CAAC;IAC9B,SAAS,CAAC,IAAI,CAAC,0BAAgB,CAAC,CAAC;IACjC,SAAS,CAAC,IAAI,CAAC,0BAAgB,CAAC,CAAC;AACnC,CAAC;AAJD,kCAIC;AAED,SAAgB,WAAW,CAAC,SAAoB;IAC9C,SAAS,CAAC,IAAI,CAAC,sBAAa,CAAC,CAAC;IAC9B,SAAS,CAAC,IAAI,CAAC,0BAAgB,CAAC,CAAC;IACjC,SAAS,CAAC,IAAI,CAAC,0BAAgB,CAAC,CAAC;AACnC,CAAC;AAJD,kCAIC;AAED,SAAgB,WAAW,CAAC,SAAoB;IAC9C,SAAS,CAAC,IAAI,CAAC,sBAAa,CAAC,CAAC;IAC9B,SAAS,CAAC,IAAI,CAAC,0BAAgB,CAAC,CAAC;IACjC,SAAS,CAAC,IAAI,CAAC,0BAAgB,CAAC,CAAC;AACnC,CAAC;AAJD,kCAIC;AAED,SAAgB,SAAS,CAAC,SAAoB;IAC5C,SAAS,CAAC,IAAI,CAAC,oBAAW,CAAC,CAAC;IAC5B,SAAS,CAAC,IAAI,CAAC,wBAAc,CAAC,CAAC;IAC/B,SAAS,CAAC,IAAI,CAAC,wBAAc,CAAC,CAAC;AACjC,CAAC;AAJD,8BAIC","file":"modules.js","sourcesContent":["import type { Container } from '@visactor/vrender-core';\nimport {\n allEnvModule,\n browserEnvModule,\n feishuEnvModule,\n lynxEnvModule,\n nodeEnvModule,\n taroEnvModule,\n wxEnvModule\n} from './contributions/module';\nimport { loadAllCavnvas } from '../canvas/contributions/modules';\nimport {\n allWindowModule,\n browserWindowModule,\n feishuWindowModule,\n lynxWindowModule,\n nodeWindowModule,\n taroWindowModule,\n wxWindowModule\n} from '../window/contributions/modules';\nimport { browserCanvasModule } from '../canvas/contributions/browser/modules';\nimport { feishuCanvasModule } from '../canvas/contributions/feishu/modules';\nimport { lynxCanvasModule } from '../canvas/contributions/lynx/modules';\nimport { nodeCanvasModule } from '../canvas/contributions/node/modules';\nimport { taroCanvasModule } from '../canvas/contributions/taro/modules';\nimport { wxCanvasModule } from '../canvas/contributions/wx/modules';\n\nexport function loadAllModule(container: Container) {\n container.load(allEnvModule);\n loadAllCavnvas(container);\n container.load(allWindowModule);\n}\n\nexport function loadBrowserEnv(container: Container) {\n container.load(browserEnvModule);\n container.load(browserCanvasModule);\n container.load(browserWindowModule);\n}\n\nexport function loadFeishuEnv(container: Container) {\n container.load(feishuEnvModule);\n container.load(feishuCanvasModule);\n container.load(feishuWindowModule);\n}\n\nexport function loadLynxEnv(container: Container) {\n container.load(lynxEnvModule);\n container.load(lynxCanvasModule);\n container.load(lynxWindowModule);\n}\n\nexport function loadNodeEnv(container: Container) {\n container.load(nodeEnvModule);\n container.load(nodeCanvasModule);\n container.load(nodeWindowModule);\n}\n\nexport function loadTaroEnv(container: Container) {\n container.load(taroEnvModule);\n container.load(taroCanvasModule);\n container.load(taroWindowModule);\n}\n\nexport function loadWxEnv(container: Container) {\n container.load(wxEnvModule);\n container.load(wxCanvasModule);\n container.load(wxWindowModule);\n}\n"]}
@@ -0,0 +1,9 @@
1
+ import type { IEventTarget, IEventExtension } from '@visactor/vrender-core';
2
+ export declare class DragNDrop implements IEventExtension {
3
+ rootNode: IEventTarget | null;
4
+ constructor(rootNode: IEventTarget);
5
+ initEvents(): void;
6
+ removeEvents(): void;
7
+ release(): void;
8
+ private onPointerDown;
9
+ }
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: !0
5
+ }), exports.DragNDrop = void 0;
6
+
7
+ class DragNDrop {
8
+ constructor(rootNode) {
9
+ this.onPointerDown = event => {
10
+ const target = event.target, rootNode = this.rootNode, isRoot = target === rootNode;
11
+ if (target && !isRoot) {
12
+ let currentDroppable, dragstartTriggered = !1;
13
+ function handlePointerMove(moveEvent) {
14
+ if (dragstartTriggered || (moveEvent.type = "dragstart", null == target || target.dispatchEvent(moveEvent),
15
+ dragstartTriggered = !0), moveEvent.type = "drag", null == target || target.dispatchEvent(moveEvent),
16
+ !isRoot) {
17
+ target.pickable = !1;
18
+ const elemBelow = (null == rootNode ? void 0 : rootNode.pick(moveEvent.global.x, moveEvent.global.y)).graphic;
19
+ target.pickable = !0, currentDroppable !== elemBelow && (currentDroppable && (moveEvent.type = "dragleave",
20
+ moveEvent.target = currentDroppable, currentDroppable.dispatchEvent(moveEvent)),
21
+ elemBelow && (moveEvent.type = "dragenter", moveEvent.target = elemBelow, elemBelow.dispatchEvent(moveEvent)),
22
+ currentDroppable = elemBelow, currentDroppable && (moveEvent.type = "dragover",
23
+ moveEvent.target = currentDroppable, currentDroppable.dispatchEvent(moveEvent)));
24
+ }
25
+ }
26
+ null == rootNode || rootNode.addEventListener("pointermove", handlePointerMove);
27
+ const stopDragging = function() {
28
+ dragstartTriggered && (currentDroppable && (event.type = "drop", event.target = currentDroppable,
29
+ currentDroppable.dispatchEvent(event)), event.type = "dragend", target.dispatchEvent(event),
30
+ dragstartTriggered = !1), null == rootNode || rootNode.removeEventListener("pointermove", handlePointerMove);
31
+ };
32
+ target.addEventListener("pointerup", stopDragging, {
33
+ once: !0
34
+ }), target.addEventListener("pointerupoutside", stopDragging, {
35
+ once: !0
36
+ });
37
+ }
38
+ }, this.rootNode = rootNode, this.initEvents();
39
+ }
40
+ initEvents() {
41
+ var _a;
42
+ null === (_a = this.rootNode) || void 0 === _a || _a.addEventListener("pointerdown", this.onPointerDown);
43
+ }
44
+ removeEvents() {
45
+ var _a;
46
+ null === (_a = this.rootNode) || void 0 === _a || _a.removeEventListener("pointerdown", this.onPointerDown);
47
+ }
48
+ release() {
49
+ this.removeEvents(), this.rootNode = null;
50
+ }
51
+ }
52
+
53
+ exports.DragNDrop = DragNDrop;
54
+ //# sourceMappingURL=drag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/event/extension/drag.ts"],"names":[],"mappings":"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","file":"drag.js","sourcesContent":["/**\n * @description drag and drop event\n */\nimport type { IEventTarget, IEventExtension, FederatedPointerEvent } from '@visactor/vrender-core';\n\nexport class DragNDrop implements IEventExtension {\n rootNode!: IEventTarget | null;\n\n constructor(rootNode: IEventTarget) {\n this.rootNode = rootNode;\n this.initEvents();\n }\n\n initEvents() {\n this.rootNode?.addEventListener('pointerdown', this.onPointerDown);\n }\n\n removeEvents() {\n this.rootNode?.removeEventListener('pointerdown', this.onPointerDown);\n }\n\n release() {\n this.removeEvents();\n this.rootNode = null;\n }\n\n private onPointerDown = (event: FederatedPointerEvent) => {\n const target = event.target;\n const rootNode = this.rootNode;\n const isRoot = target === rootNode;\n\n if (target && !isRoot) {\n let dragstartTriggered = false;\n\n let currentDroppable: IEventTarget;\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line no-inner-declarations\n function handlePointerMove(moveEvent: FederatedPointerEvent) {\n if (!dragstartTriggered) {\n moveEvent.type = 'dragstart';\n\n target?.dispatchEvent(moveEvent);\n dragstartTriggered = true;\n }\n\n moveEvent.type = 'drag';\n target?.dispatchEvent(moveEvent);\n\n if (!isRoot) {\n // 获取当前坐标系的元素,目前认为所有的元素都是可以 dropable 的\n (target as IEventTarget).pickable = false;\n // @ts-ignore\n const clickResult = rootNode?.pick(moveEvent.global.x, moveEvent.global.y);\n const elemBelow = clickResult.graphic;\n (target as IEventTarget).pickable = true;\n\n if (currentDroppable !== elemBelow) {\n if (currentDroppable) {\n moveEvent.type = 'dragleave';\n moveEvent.target = currentDroppable;\n currentDroppable.dispatchEvent(moveEvent);\n }\n\n if (elemBelow) {\n moveEvent.type = 'dragenter';\n moveEvent.target = elemBelow;\n elemBelow.dispatchEvent(moveEvent);\n }\n\n currentDroppable = elemBelow;\n if (currentDroppable) {\n moveEvent.type = 'dragover';\n moveEvent.target = currentDroppable;\n currentDroppable.dispatchEvent(moveEvent);\n }\n }\n }\n }\n\n rootNode?.addEventListener('pointermove', handlePointerMove);\n\n const stopDragging = function () {\n if (dragstartTriggered) {\n if (currentDroppable) {\n event.type = 'drop';\n event.target = currentDroppable;\n currentDroppable.dispatchEvent(event);\n }\n\n event.type = 'dragend';\n target.dispatchEvent(event);\n\n dragstartTriggered = false;\n }\n\n rootNode?.removeEventListener('pointermove', handlePointerMove);\n };\n\n target.addEventListener('pointerup', stopDragging, { once: true });\n target.addEventListener('pointerupoutside', stopDragging, { once: true });\n }\n };\n}\n"]}
@@ -0,0 +1,38 @@
1
+ import type { GestureConfig, IEventTarget, INode } from '@visactor/vrender-core';
2
+ import { EventEmitter } from '@visactor/vutils';
3
+ export declare class Gesture extends EventEmitter {
4
+ element: INode | null;
5
+ private cachedEvents;
6
+ private startTime;
7
+ private pressTimeout;
8
+ private startPoints;
9
+ private processEvent;
10
+ private startDistance;
11
+ private center;
12
+ private eventType;
13
+ private direction;
14
+ private lastMoveTime;
15
+ private prevMoveTime;
16
+ private prevMovePoint;
17
+ private lastMovePoint;
18
+ private throttleTimer;
19
+ private emitThrottles;
20
+ private config;
21
+ constructor(element: IEventTarget, config?: GestureConfig);
22
+ initEvents(): void;
23
+ removeEvents(): void;
24
+ release(): void;
25
+ private onStart;
26
+ private onMove;
27
+ private onEnd;
28
+ private getEventType;
29
+ private enable;
30
+ private isProcess;
31
+ private pushEvent;
32
+ private clearPressTimeout;
33
+ private reset;
34
+ private triggerEvent;
35
+ private triggerStartEvent;
36
+ private triggerEndEvent;
37
+ private emitEvent;
38
+ }
@@ -0,0 +1,181 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: !0
5
+ }), exports.Gesture = void 0;
6
+
7
+ const vrender_core_1 = require("@visactor/vrender-core"), vutils_1 = require("@visactor/vutils"), PRESS_TIME = 251, PRESS_THRESHOLD = 9, SWIPE_VELOCITY = .3, SWIPE_THRESHOLD = 10, calcDirection = (start, end) => {
8
+ const xDistance = end.x - start.x, yDistance = end.y - start.y;
9
+ return Math.abs(xDistance) > Math.abs(yDistance) ? xDistance > 0 ? "right" : "left" : yDistance > 0 ? "down" : "up";
10
+ }, calcDistance = (point1, point2) => {
11
+ const xDistance = Math.abs(point2.x - point1.x), yDistance = Math.abs(point2.y - point1.y);
12
+ return Math.sqrt(xDistance * xDistance + yDistance * yDistance);
13
+ }, getCenter = points => {
14
+ const pointersLength = points.length;
15
+ if (1 === pointersLength) return {
16
+ x: Math.round(points[0].x),
17
+ y: Math.round(points[0].y)
18
+ };
19
+ let x = 0, y = 0, i = 0;
20
+ for (;i < pointersLength; ) x += points[i].x, y += points[i].y, i++;
21
+ return {
22
+ x: Math.round(x / pointersLength),
23
+ y: Math.round(y / pointersLength)
24
+ };
25
+ };
26
+
27
+ class Gesture extends vutils_1.EventEmitter {
28
+ constructor(element, config = {}) {
29
+ var _a, _b, _c, _d, _e, _f, _g, _h;
30
+ super(), this.cachedEvents = [], this.startPoints = [], this.processEvent = {},
31
+ this.throttleTimer = 0, this.emitThrottles = [], this.onStart = ev => {
32
+ this.reset(), this.startTime = vrender_core_1.clock.now();
33
+ const {cachedEvents: cachedEvents, startPoints: startPoints} = this;
34
+ ev && cachedEvents.push(ev.clone()), startPoints.length = cachedEvents.length;
35
+ for (let i = 0; i < cachedEvents.length; i++) {
36
+ const {x: x, y: y} = cachedEvents[i], point = {
37
+ x: x,
38
+ y: y
39
+ };
40
+ startPoints[i] = point;
41
+ }
42
+ if (1 !== startPoints.length) this.startDistance = calcDistance(startPoints[0], startPoints[1]),
43
+ this.center = getCenter([ startPoints[0], startPoints[1] ]); else {
44
+ const event = cachedEvents[0];
45
+ this.pressTimeout = setTimeout((() => {
46
+ event.direction = "none", event.deltaX = 0, event.deltaY = 0, event.points = startPoints,
47
+ this.triggerStartEvent("press", event), this.triggerEvent("press", event), this.eventType = "press",
48
+ this.direction = "none";
49
+ }), this.config.press.time);
50
+ }
51
+ }, this.onMove = ev => {
52
+ this.clearPressTimeout();
53
+ const {startPoints: startPoints, cachedEvents: cachedEvents} = this;
54
+ if (!startPoints.length) return;
55
+ const moveEvent = ev.clone(), {x: x, y: y, pointerId: pointerId} = moveEvent;
56
+ for (let i = 0, len = cachedEvents.length; i < len; i++) if (pointerId === cachedEvents[i].pointerId) {
57
+ cachedEvents[i] = moveEvent;
58
+ break;
59
+ }
60
+ const point = {
61
+ x: x,
62
+ y: y
63
+ }, points = cachedEvents.map((cachedEvent => ({
64
+ x: cachedEvent.x,
65
+ y: cachedEvent.y
66
+ }))), now = vrender_core_1.clock.now();
67
+ if (this.prevMoveTime = this.lastMoveTime, this.prevMovePoint = this.lastMovePoint,
68
+ this.lastMoveTime = now, this.lastMovePoint = point, 1 === startPoints.length) {
69
+ const startPoint = startPoints[0], deltaX = x - startPoint.x, deltaY = y - startPoint.y, direction = this.direction || calcDirection(startPoint, point);
70
+ this.direction = direction;
71
+ const eventType = this.getEventType(point);
72
+ return moveEvent.direction = direction, moveEvent.deltaX = deltaX, moveEvent.deltaY = deltaY,
73
+ moveEvent.points = points, this.triggerStartEvent(eventType, moveEvent), void this.triggerEvent(eventType, moveEvent);
74
+ }
75
+ const {startDistance: startDistance} = this, currentDistance = calcDistance(points[0], points[1]);
76
+ moveEvent.scale = currentDistance / startDistance, moveEvent.center = this.center,
77
+ moveEvent.points = points, this.triggerStartEvent("pinch", moveEvent), this.triggerEvent("pinch", moveEvent);
78
+ }, this.onEnd = ev => {
79
+ const endEvent = ev.clone(), {cachedEvents: cachedEvents, startPoints: startPoints} = this, points = cachedEvents.map((ev => ({
80
+ x: ev.x,
81
+ y: ev.y
82
+ })));
83
+ if (endEvent.points = points, this.triggerEndEvent(endEvent), 1 === cachedEvents.length) {
84
+ const now = vrender_core_1.clock.now(), lastMoveTime = this.lastMoveTime;
85
+ if (now - lastMoveTime < 100) {
86
+ const intervalTime = lastMoveTime - (this.prevMoveTime || this.startTime);
87
+ if (intervalTime > 0) {
88
+ const prevMovePoint = this.prevMovePoint || startPoints[0], lastMovePoint = this.lastMovePoint || startPoints[0], distance = calcDistance(prevMovePoint, lastMovePoint), velocity = distance / intervalTime;
89
+ velocity > this.config.swipe.velocity && distance > this.config.swipe.threshold && (endEvent.velocity = velocity,
90
+ endEvent.direction = calcDirection(prevMovePoint, lastMovePoint), this.triggerEvent("swipe", endEvent));
91
+ }
92
+ }
93
+ }
94
+ for (let i = 0, len = cachedEvents.length; i < len; i++) if (cachedEvents[i].pointerId === endEvent.pointerId) {
95
+ cachedEvents.splice(i, 1), startPoints.splice(i, 1);
96
+ break;
97
+ }
98
+ this.reset(), cachedEvents.length > 0 && this.onStart();
99
+ }, this.element = element, this.config = {
100
+ press: {
101
+ time: null !== (_b = null === (_a = null == config ? void 0 : config.press) || void 0 === _a ? void 0 : _a.time) && void 0 !== _b ? _b : 251,
102
+ threshold: null !== (_d = null === (_c = null == config ? void 0 : config.press) || void 0 === _c ? void 0 : _c.threshold) && void 0 !== _d ? _d : 9
103
+ },
104
+ swipe: {
105
+ threshold: null !== (_f = null === (_e = null == config ? void 0 : config.swipe) || void 0 === _e ? void 0 : _e.threshold) && void 0 !== _f ? _f : 10,
106
+ velocity: null !== (_h = null === (_g = null == config ? void 0 : config.swipe) || void 0 === _g ? void 0 : _g.velocity) && void 0 !== _h ? _h : .3
107
+ }
108
+ }, this.initEvents();
109
+ }
110
+ initEvents() {
111
+ const {element: element} = this;
112
+ element && (element.addEventListener("pointerdown", this.onStart), element.addEventListener("pointermove", this.onMove),
113
+ element.addEventListener("pointerup", this.onEnd), element.addEventListener("pointerupoutside", this.onEnd));
114
+ }
115
+ removeEvents() {
116
+ const {element: element} = this;
117
+ element && (element.removeEventListener("pointerdown", this.onStart), element.removeEventListener("pointermove", this.onMove),
118
+ element.removeEventListener("pointerup", this.onEnd), element.removeEventListener("pointerupoutside", this.onEnd));
119
+ }
120
+ release() {
121
+ this.removeEvents(), this.element = null;
122
+ }
123
+ getEventType(point) {
124
+ const {eventType: eventType, startTime: startTime, startPoints: startPoints} = this;
125
+ if (eventType) return eventType;
126
+ let type;
127
+ return type = vrender_core_1.clock.now() - startTime > this.config.press.time && calcDistance(startPoints[0], point) < this.config.press.threshold ? "press" : "pan",
128
+ this.eventType = type, type;
129
+ }
130
+ enable(eventType) {
131
+ this.processEvent[eventType] = !0;
132
+ }
133
+ isProcess(eventType) {
134
+ return this.processEvent[eventType];
135
+ }
136
+ pushEvent(type, ev) {
137
+ const {emitThrottles: emitThrottles} = this, newEvent = {
138
+ type: type,
139
+ ev: ev
140
+ };
141
+ for (let i = 0, len = emitThrottles.length; i < len; i++) if (emitThrottles[i].type === type) return void emitThrottles.splice(i, 1, newEvent);
142
+ emitThrottles.push(newEvent);
143
+ }
144
+ clearPressTimeout() {
145
+ this.pressTimeout && (clearTimeout(this.pressTimeout), this.pressTimeout = null);
146
+ }
147
+ reset() {
148
+ this.clearPressTimeout(), this.startTime = 0, this.startDistance = 0, this.direction = null,
149
+ this.eventType = null, this.prevMoveTime = 0, this.prevMovePoint = null, this.lastMoveTime = 0,
150
+ this.lastMovePoint = null;
151
+ }
152
+ triggerEvent(type, ev) {
153
+ this.pushEvent(type, ev);
154
+ const {throttleTimer: throttleTimer, emitThrottles: emitThrottles} = this;
155
+ throttleTimer || (this.throttleTimer = vrender_core_1.application.global.getRequestAnimationFrame()((() => {
156
+ for (let i = 0, len = emitThrottles.length; i < len; i++) {
157
+ const {type: type, ev: ev} = emitThrottles[i];
158
+ this.emitEvent(type, ev);
159
+ }
160
+ this.throttleTimer = 0, this.emitThrottles.length = 0;
161
+ })));
162
+ }
163
+ triggerStartEvent(type, ev) {
164
+ this.isProcess(type) || (this.enable(type), this.triggerEvent(`${type}start`, ev));
165
+ }
166
+ triggerEndEvent(ev) {
167
+ const processEvent = this.processEvent;
168
+ Object.keys(processEvent).forEach((type => {
169
+ this.triggerEvent(`${type}end`, ev), "press" === type && this.triggerEvent(`${type}up`, ev),
170
+ delete processEvent[type];
171
+ }));
172
+ }
173
+ emitEvent(type, e) {
174
+ const listeners = this.element._events[vrender_core_1.WILDCARD];
175
+ if (listeners) if ("fn" in listeners) listeners.fn.call(listeners.context, e, type); else for (let i = 0, j = listeners.length; i < j && !e.propagationImmediatelyStopped; i++) listeners[i].fn.call(listeners[i].context, e, type);
176
+ this.emit(type, e);
177
+ }
178
+ }
179
+
180
+ exports.Gesture = Gesture;
181
+ //# sourceMappingURL=gesture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/event/extension/gesture.ts"],"names":[],"mappings":"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","file":"gesture.js","sourcesContent":["import { application, clock, WILDCARD } from '@visactor/vrender-core';\nimport type {\n DefaultGestureConfig,\n EmitEventObject,\n GestureConfig,\n GestureDirection,\n GestureEvent,\n IEventTarget,\n IFederatedPointerEvent,\n FederatedPointerEvent,\n INode\n} from '@visactor/vrender-core';\nimport type { IPointLike } from '@visactor/vutils';\nimport { EventEmitter } from '@visactor/vutils';\n\n/**\n * 代码参考 https://github.com/hammerjs/hammer.js\n * The MIT License (MIT)\n\n Copyright (C) 2011-2017 by Jorik Tangelder (Eight Media)\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n */\n\nconst PRESS_TIME = 251;\nconst PRESS_THRESHOLD = 9;\nconst SWIPE_VELOCITY = 0.3;\nconst SWIPE_THRESHOLD = 10;\n\nconst calcDirection = (start: IPointLike, end: IPointLike) => {\n const xDistance = end.x - start.x;\n const yDistance = end.y - start.y;\n if (Math.abs(xDistance) > Math.abs(yDistance)) {\n return xDistance > 0 ? 'right' : 'left';\n }\n return yDistance > 0 ? 'down' : 'up';\n};\n\n// 计算2点之间的距离\nconst calcDistance = (point1: IPointLike, point2: IPointLike) => {\n const xDistance = Math.abs(point2.x - point1.x);\n const yDistance = Math.abs(point2.y - point1.y);\n return Math.sqrt(xDistance * xDistance + yDistance * yDistance);\n};\n\nconst getCenter = (points: IPointLike[]) => {\n const pointersLength = points.length;\n\n if (pointersLength === 1) {\n return {\n x: Math.round(points[0].x),\n y: Math.round(points[0].y)\n };\n }\n\n let x = 0;\n let y = 0;\n let i = 0;\n while (i < pointersLength) {\n x += points[i].x;\n y += points[i].y;\n i++;\n }\n\n return {\n x: Math.round(x / pointersLength),\n y: Math.round(y / pointersLength)\n };\n};\n\nexport class Gesture extends EventEmitter {\n element: INode | null;\n\n private cachedEvents: IFederatedPointerEvent[] = [];\n private startTime: number;\n // @ts-ignore\n // eslint-disable-next-line no-undef\n private pressTimeout: NodeJS.Timeout | null;\n private startPoints: IPointLike[] = [];\n // 用来记录当前触发的事件\n private processEvent: Record<string, boolean> = {};\n private startDistance: number;\n private center: IPointLike;\n private eventType: string | null;\n private direction: GestureDirection | null;\n\n private lastMoveTime: number;\n private prevMoveTime: number;\n\n private prevMovePoint: IPointLike | null;\n private lastMovePoint: IPointLike | null;\n\n private throttleTimer: number = 0;\n private emitThrottles: EmitEventObject[] = [];\n\n private config: DefaultGestureConfig;\n\n constructor(element: IEventTarget, config: GestureConfig = {}) {\n super();\n this.element = element;\n this.config = {\n press: {\n time: config?.press?.time ?? PRESS_TIME,\n threshold: config?.press?.threshold ?? PRESS_THRESHOLD\n },\n swipe: {\n threshold: config?.swipe?.threshold ?? SWIPE_THRESHOLD,\n velocity: config?.swipe?.velocity ?? SWIPE_VELOCITY\n }\n };\n this.initEvents();\n }\n\n initEvents() {\n const { element } = this;\n if (!element) {\n return;\n }\n\n element.addEventListener('pointerdown', this.onStart);\n element.addEventListener('pointermove', this.onMove);\n element.addEventListener('pointerup', this.onEnd);\n element.addEventListener('pointerupoutside', this.onEnd);\n }\n\n removeEvents() {\n const { element } = this;\n if (!element) {\n return;\n }\n element.removeEventListener('pointerdown', this.onStart);\n element.removeEventListener('pointermove', this.onMove);\n element.removeEventListener('pointerup', this.onEnd);\n element.removeEventListener('pointerupoutside', this.onEnd);\n }\n\n release() {\n this.removeEvents();\n this.element = null;\n }\n\n private onStart = (ev?: FederatedPointerEvent) => {\n this.reset();\n\n this.startTime = clock.now();\n\n const { cachedEvents, startPoints } = this;\n\n if (ev) {\n cachedEvents.push(ev.clone());\n }\n // 重置 startPoints\n startPoints.length = cachedEvents.length;\n for (let i = 0; i < cachedEvents.length; i++) {\n const { x, y } = cachedEvents[i];\n const point = { x, y };\n startPoints[i] = point;\n }\n\n if (startPoints.length === 1) {\n const event = cachedEvents[0] as unknown as GestureEvent;\n this.pressTimeout = setTimeout(() => {\n const eventType = 'press';\n const direction = 'none';\n event.direction = direction;\n event.deltaX = 0;\n event.deltaY = 0;\n event.points = startPoints;\n this.triggerStartEvent(eventType, event);\n this.triggerEvent(eventType, event);\n this.eventType = eventType;\n this.direction = direction;\n }, this.config.press.time);\n return;\n }\n\n this.startDistance = calcDistance(startPoints[0], startPoints[1]);\n this.center = getCenter([startPoints[0], startPoints[1]]);\n };\n\n private onMove = (ev: FederatedPointerEvent) => {\n this.clearPressTimeout();\n const { startPoints, cachedEvents } = this;\n if (!startPoints.length) {\n return;\n }\n\n const moveEvent = ev.clone() as unknown as GestureEvent;\n const { x, y, pointerId } = moveEvent;\n for (let i = 0, len = cachedEvents.length; i < len; i++) {\n if (pointerId === cachedEvents[i].pointerId) {\n cachedEvents[i] = moveEvent;\n break;\n }\n }\n const point = { x, y };\n const points = cachedEvents.map(cachedEvent => ({ x: cachedEvent.x, y: cachedEvent.y }));\n\n const now = clock.now();\n this.prevMoveTime = this.lastMoveTime;\n this.prevMovePoint = this.lastMovePoint;\n this.lastMoveTime = now;\n this.lastMovePoint = point;\n\n if (startPoints.length === 1) {\n const startPoint = startPoints[0];\n const deltaX = x - startPoint.x;\n const deltaY = y - startPoint.y;\n const direction = this.direction || calcDirection(startPoint, point);\n this.direction = direction;\n\n const eventType = this.getEventType(point);\n moveEvent.direction = direction;\n moveEvent.deltaX = deltaX;\n moveEvent.deltaY = deltaY;\n moveEvent.points = points;\n this.triggerStartEvent(eventType, moveEvent);\n this.triggerEvent(eventType, moveEvent);\n return;\n }\n\n const { startDistance } = this;\n const currentDistance = calcDistance(points[0], points[1]);\n\n // 缩放比例\n moveEvent.scale = currentDistance / startDistance;\n moveEvent.center = this.center;\n moveEvent.points = points;\n this.triggerStartEvent('pinch', moveEvent);\n this.triggerEvent('pinch', moveEvent);\n };\n\n private onEnd = (ev: FederatedPointerEvent) => {\n const endEvent = ev.clone() as unknown as GestureEvent;\n const { cachedEvents, startPoints } = this;\n const points = cachedEvents.map(ev => {\n return { x: ev.x, y: ev.y };\n });\n endEvent.points = points;\n this.triggerEndEvent(endEvent);\n\n if (cachedEvents.length === 1) {\n const now = clock.now();\n const lastMoveTime = this.lastMoveTime;\n // 做这个判断是为了最后一次touchmove后到end前,是否还有一个停顿的过程\n // 100 是拍的一个值,理论这个值会很短,一般不卡顿的话在10ms以内\n if (now - lastMoveTime < 100) {\n const prevMoveTime = this.prevMoveTime || this.startTime;\n const intervalTime = lastMoveTime - prevMoveTime;\n // 时间间隔一定要大于0, 否则计算没意义\n if (intervalTime > 0) {\n const prevMovePoint = this.prevMovePoint || startPoints[0];\n const lastMovePoint = this.lastMovePoint || startPoints[0];\n const distance = calcDistance(prevMovePoint, lastMovePoint);\n // move速率\n const velocity = distance / intervalTime;\n // 0.3 是参考hammerjs的设置\n if (velocity > this.config.swipe.velocity && distance > this.config.swipe.threshold) {\n endEvent.velocity = velocity;\n endEvent.direction = calcDirection(prevMovePoint, lastMovePoint);\n this.triggerEvent('swipe', endEvent);\n }\n }\n }\n }\n\n for (let i = 0, len = cachedEvents.length; i < len; i++) {\n if (cachedEvents[i].pointerId === endEvent.pointerId) {\n cachedEvents.splice(i, 1);\n startPoints.splice(i, 1);\n break;\n }\n }\n\n this.reset();\n\n // 多指离开 1 指后,重新触发一次start\n if (cachedEvents.length > 0) {\n this.onStart();\n }\n };\n\n private getEventType(point: IPointLike) {\n const { eventType, startTime, startPoints } = this;\n if (eventType) {\n return eventType;\n }\n let type;\n const now = clock.now();\n if (now - startTime > this.config.press.time && calcDistance(startPoints[0], point) < this.config.press.threshold) {\n type = 'press';\n } else {\n type = 'pan';\n }\n this.eventType = type;\n return type;\n }\n\n private enable(eventType: string) {\n this.processEvent[eventType] = true;\n }\n\n // 是否进行中的事件\n private isProcess(eventType: string) {\n return this.processEvent[eventType];\n }\n\n private pushEvent(type: string, ev: GestureEvent) {\n const { emitThrottles } = this;\n const newEvent = { type, ev };\n for (let i = 0, len = emitThrottles.length; i < len; i++) {\n if (emitThrottles[i].type === type) {\n emitThrottles.splice(i, 1, newEvent);\n return;\n }\n }\n emitThrottles.push(newEvent);\n }\n\n private clearPressTimeout() {\n if (this.pressTimeout) {\n clearTimeout(this.pressTimeout);\n this.pressTimeout = null;\n }\n }\n\n private reset() {\n this.clearPressTimeout();\n this.startTime = 0;\n this.startDistance = 0;\n this.direction = null;\n this.eventType = null;\n this.prevMoveTime = 0;\n this.prevMovePoint = null;\n this.lastMoveTime = 0;\n this.lastMovePoint = null;\n }\n\n private triggerEvent(type: string, ev: GestureEvent) {\n // 主要是节流处理\n this.pushEvent(type, ev);\n const { throttleTimer, emitThrottles } = this;\n if (throttleTimer) {\n return;\n }\n\n this.throttleTimer = application.global.getRequestAnimationFrame()(() => {\n for (let i = 0, len = emitThrottles.length; i < len; i++) {\n const { type, ev } = emitThrottles[i];\n this.emitEvent(type, ev);\n }\n // 清空\n this.throttleTimer = 0;\n this.emitThrottles.length = 0;\n });\n }\n\n // 触发start事件\n private triggerStartEvent(type: string, ev: GestureEvent) {\n if (this.isProcess(type)) {\n return;\n }\n this.enable(type);\n this.triggerEvent(`${type}start`, ev);\n }\n\n private triggerEndEvent(ev: GestureEvent) {\n const processEvent = this.processEvent;\n Object.keys(processEvent).forEach(type => {\n this.triggerEvent(`${type}end`, ev);\n if (type === 'press') {\n // pressend 别名,pressup\n this.triggerEvent(`${type}up`, ev);\n }\n delete processEvent[type];\n });\n }\n\n private emitEvent(type: string, e: GestureEvent) {\n const events = (this.element as unknown as any)._events;\n const listeners = events[WILDCARD];\n if (listeners) {\n if ('fn' in listeners) {\n listeners.fn.call(listeners.context, e, type);\n } else {\n for (let i = 0, j = listeners.length; i < j && !e.propagationImmediatelyStopped; i++) {\n listeners[i].fn.call(listeners[i].context, e, type);\n }\n }\n }\n\n this.emit(type, e);\n }\n}\n"]}
@@ -0,0 +1,3 @@
1
+ import { DragNDrop } from './drag';
2
+ import { Gesture } from './gesture';
3
+ export { DragNDrop, Gesture };
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: !0
5
+ }), exports.Gesture = exports.DragNDrop = void 0;
6
+
7
+ const drag_1 = require("./drag");
8
+
9
+ Object.defineProperty(exports, "DragNDrop", {
10
+ enumerable: !0,
11
+ get: function() {
12
+ return drag_1.DragNDrop;
13
+ }
14
+ });
15
+
16
+ const gesture_1 = require("./gesture");
17
+
18
+ Object.defineProperty(exports, "Gesture", {
19
+ enumerable: !0,
20
+ get: function() {
21
+ return gesture_1.Gesture;
22
+ }
23
+ });
24
+ //# sourceMappingURL=index.js.map