@visactor/vrender-kits 1.1.0-alpha.8 → 1.1.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 (288) hide show
  1. package/cjs/canvas/contributions/harmony/canvas.js +5 -1
  2. package/cjs/canvas/contributions/harmony/canvas.js.map +1 -1
  3. package/cjs/env/contributions/browser-contribution.js +1 -1
  4. package/cjs/env/contributions/canvas-wrap.js +1 -1
  5. package/cjs/env/contributions/feishu-contribution.d.ts +15 -8
  6. package/cjs/env/contributions/feishu-contribution.js +26 -14
  7. package/cjs/env/contributions/feishu-contribution.js.map +1 -1
  8. package/cjs/env/contributions/harmony-contribution.d.ts +26 -7
  9. package/cjs/env/contributions/harmony-contribution.js +129 -21
  10. package/cjs/env/contributions/harmony-contribution.js.map +1 -1
  11. package/cjs/env/contributions/lynx-contribution.d.ts +35 -10
  12. package/cjs/env/contributions/lynx-contribution.js +128 -31
  13. package/cjs/env/contributions/lynx-contribution.js.map +1 -1
  14. package/cjs/env/contributions/miniapp-canvas.d.ts +18 -0
  15. package/cjs/env/contributions/miniapp-canvas.js +46 -0
  16. package/cjs/env/contributions/miniapp-canvas.js.map +1 -0
  17. package/cjs/env/contributions/node-contribution.d.ts +2 -2
  18. package/cjs/env/contributions/node-contribution.js +8 -3
  19. package/cjs/env/contributions/node-contribution.js.map +1 -1
  20. package/cjs/env/contributions/taro-contribution.d.ts +6 -10
  21. package/cjs/env/contributions/taro-contribution.js +17 -18
  22. package/cjs/env/contributions/taro-contribution.js.map +1 -1
  23. package/cjs/env/contributions/tt-contribution.d.ts +14 -8
  24. package/cjs/env/contributions/tt-contribution.js +26 -49
  25. package/cjs/env/contributions/tt-contribution.js.map +1 -1
  26. package/cjs/env/contributions/wx-contribution.d.ts +15 -11
  27. package/cjs/env/contributions/wx-contribution.js +30 -54
  28. package/cjs/env/contributions/wx-contribution.js.map +1 -1
  29. package/cjs/env/feishu.js +2 -3
  30. package/cjs/env/feishu.js.map +1 -1
  31. package/cjs/env/harmony.js +2 -3
  32. package/cjs/env/harmony.js.map +1 -1
  33. package/cjs/env/lynx.js +2 -3
  34. package/cjs/env/lynx.js.map +1 -1
  35. package/cjs/env/taro.js +2 -3
  36. package/cjs/env/taro.js.map +1 -1
  37. package/cjs/env/tt.js +2 -3
  38. package/cjs/env/tt.js.map +1 -1
  39. package/cjs/env/wx.js +4 -4
  40. package/cjs/env/wx.js.map +1 -1
  41. package/cjs/event/extension/drag.js +1 -1
  42. package/cjs/graphic/Lottie.js +1 -2
  43. package/cjs/graphic/constants.js +2 -1
  44. package/cjs/graphic/constants.js.map +1 -1
  45. package/cjs/index-node.d.ts +1 -1
  46. package/cjs/index-node.js +36 -1
  47. package/cjs/index-node.js.map +1 -1
  48. package/cjs/index.d.ts +1 -1
  49. package/cjs/index.js +36 -1
  50. package/cjs/index.js.map +1 -1
  51. package/cjs/installers/app.d.ts +10 -3
  52. package/cjs/installers/app.js +90 -12
  53. package/cjs/installers/app.js.map +1 -1
  54. package/cjs/installers/browser-lite.d.ts +3 -0
  55. package/cjs/installers/browser-lite.js +63 -0
  56. package/cjs/installers/browser-lite.js.map +1 -0
  57. package/cjs/installers/browser.d.ts +3 -0
  58. package/cjs/installers/browser.js +75 -0
  59. package/cjs/installers/browser.js.map +1 -0
  60. package/cjs/installers/graphics-lite.d.ts +2 -0
  61. package/cjs/installers/graphics-lite.js +54 -0
  62. package/cjs/installers/graphics-lite.js.map +1 -0
  63. package/cjs/installers/graphics.d.ts +2 -0
  64. package/cjs/installers/graphics.js +81 -0
  65. package/cjs/installers/graphics.js.map +1 -0
  66. package/cjs/jsx/graphicType.d.ts +4 -4
  67. package/cjs/jsx/graphicType.js.map +1 -1
  68. package/cjs/jsx/jsx-classic.js +3 -3
  69. package/cjs/jsx/jsx-classic.js.map +1 -1
  70. package/cjs/react-tree.js +3 -3
  71. package/cjs/react-tree.js.map +1 -1
  72. package/cjs/register/env.js +2 -3
  73. package/cjs/register/env.js.map +1 -1
  74. package/cjs/register/register-arc.js +3 -3
  75. package/cjs/register/register-arc.js.map +1 -1
  76. package/cjs/register/register-arc3d.js +6 -5
  77. package/cjs/register/register-arc3d.js.map +1 -1
  78. package/cjs/register/register-area.js +3 -3
  79. package/cjs/register/register-area.js.map +1 -1
  80. package/cjs/register/register-circle.js +3 -3
  81. package/cjs/register/register-circle.js.map +1 -1
  82. package/cjs/register/register-glyph.js +3 -3
  83. package/cjs/register/register-glyph.js.map +1 -1
  84. package/cjs/register/register-group.js +2 -2
  85. package/cjs/register/register-group.js.map +1 -1
  86. package/cjs/register/register-image.js +3 -3
  87. package/cjs/register/register-image.js.map +1 -1
  88. package/cjs/register/register-line.js +3 -3
  89. package/cjs/register/register-line.js.map +1 -1
  90. package/cjs/register/register-path.js +3 -3
  91. package/cjs/register/register-path.js.map +1 -1
  92. package/cjs/register/register-polygon.js +3 -3
  93. package/cjs/register/register-polygon.js.map +1 -1
  94. package/cjs/register/register-pyramid3d.js +4 -4
  95. package/cjs/register/register-pyramid3d.js.map +1 -1
  96. package/cjs/register/register-rect.js +3 -3
  97. package/cjs/register/register-rect.js.map +1 -1
  98. package/cjs/register/register-rect3d.js +3 -3
  99. package/cjs/register/register-rect3d.js.map +1 -1
  100. package/cjs/register/register-richtext.js +3 -3
  101. package/cjs/register/register-richtext.js.map +1 -1
  102. package/cjs/register/register-shadowRoot.js +3 -4
  103. package/cjs/register/register-shadowRoot.js.map +1 -1
  104. package/cjs/register/register-star.js +3 -3
  105. package/cjs/register/register-star.js.map +1 -1
  106. package/cjs/register/register-symbol.js +5 -4
  107. package/cjs/register/register-symbol.js.map +1 -1
  108. package/cjs/register/register-text.js +3 -3
  109. package/cjs/register/register-text.js.map +1 -1
  110. package/cjs/register/register-wraptext.js +2 -2
  111. package/cjs/register/register-wraptext.js.map +1 -1
  112. package/cjs/window/contributions/feishu-contribution.js +10 -7
  113. package/cjs/window/contributions/feishu-contribution.js.map +1 -1
  114. package/cjs/window/contributions/harmony-contribution.js +74 -17
  115. package/cjs/window/contributions/harmony-contribution.js.map +1 -1
  116. package/cjs/window/contributions/lynx-contribution.d.ts +1 -2
  117. package/cjs/window/contributions/lynx-contribution.js +67 -15
  118. package/cjs/window/contributions/lynx-contribution.js.map +1 -1
  119. package/cjs/window/contributions/taro-contribution.js +10 -7
  120. package/cjs/window/contributions/taro-contribution.js.map +1 -1
  121. package/cjs/window/contributions/tt-contribution.js +10 -7
  122. package/cjs/window/contributions/tt-contribution.js.map +1 -1
  123. package/cjs/window/contributions/wx-contribution.d.ts +1 -2
  124. package/cjs/window/contributions/wx-contribution.js +33 -16
  125. package/cjs/window/contributions/wx-contribution.js.map +1 -1
  126. package/dist/index.es.js +18523 -4923
  127. package/es/canvas/contributions/harmony/canvas.js +5 -1
  128. package/es/canvas/contributions/harmony/canvas.js.map +1 -1
  129. package/es/env/contributions/browser-contribution.js +1 -1
  130. package/es/env/contributions/canvas-wrap.js +1 -1
  131. package/es/env/contributions/feishu-contribution.d.ts +15 -8
  132. package/es/env/contributions/feishu-contribution.js +27 -14
  133. package/es/env/contributions/feishu-contribution.js.map +1 -1
  134. package/es/env/contributions/harmony-contribution.d.ts +26 -7
  135. package/es/env/contributions/harmony-contribution.js +132 -22
  136. package/es/env/contributions/harmony-contribution.js.map +1 -1
  137. package/es/env/contributions/lynx-contribution.d.ts +35 -10
  138. package/es/env/contributions/lynx-contribution.js +128 -29
  139. package/es/env/contributions/lynx-contribution.js.map +1 -1
  140. package/es/env/contributions/miniapp-canvas.d.ts +18 -0
  141. package/es/env/contributions/miniapp-canvas.js +37 -0
  142. package/es/env/contributions/miniapp-canvas.js.map +1 -0
  143. package/es/env/contributions/node-contribution.d.ts +2 -2
  144. package/es/env/contributions/node-contribution.js +8 -3
  145. package/es/env/contributions/node-contribution.js.map +1 -1
  146. package/es/env/contributions/taro-contribution.d.ts +6 -10
  147. package/es/env/contributions/taro-contribution.js +17 -17
  148. package/es/env/contributions/taro-contribution.js.map +1 -1
  149. package/es/env/contributions/tt-contribution.d.ts +14 -8
  150. package/es/env/contributions/tt-contribution.js +28 -48
  151. package/es/env/contributions/tt-contribution.js.map +1 -1
  152. package/es/env/contributions/wx-contribution.d.ts +15 -11
  153. package/es/env/contributions/wx-contribution.js +32 -53
  154. package/es/env/contributions/wx-contribution.js.map +1 -1
  155. package/es/env/feishu.js +2 -3
  156. package/es/env/feishu.js.map +1 -1
  157. package/es/env/harmony.js +2 -3
  158. package/es/env/harmony.js.map +1 -1
  159. package/es/env/lynx.js +2 -3
  160. package/es/env/lynx.js.map +1 -1
  161. package/es/env/taro.js +2 -3
  162. package/es/env/taro.js.map +1 -1
  163. package/es/env/tt.js +2 -3
  164. package/es/env/tt.js.map +1 -1
  165. package/es/env/wx.js +4 -4
  166. package/es/env/wx.js.map +1 -1
  167. package/es/event/extension/drag.js +1 -1
  168. package/es/graphic/Lottie.js +1 -2
  169. package/es/graphic/constants.js +3 -3
  170. package/es/graphic/constants.js.map +1 -1
  171. package/es/index-node.d.ts +1 -1
  172. package/es/index-node.js +1 -1
  173. package/es/index-node.js.map +1 -1
  174. package/es/index.d.ts +1 -1
  175. package/es/index.js +1 -1
  176. package/es/index.js.map +1 -1
  177. package/es/installers/app.d.ts +10 -3
  178. package/es/installers/app.js +120 -8
  179. package/es/installers/app.js.map +1 -1
  180. package/es/installers/browser-lite.d.ts +3 -0
  181. package/es/installers/browser-lite.js +86 -0
  182. package/es/installers/browser-lite.js.map +1 -0
  183. package/es/installers/browser.d.ts +3 -0
  184. package/es/installers/browser.js +115 -0
  185. package/es/installers/browser.js.map +1 -0
  186. package/es/installers/graphics-lite.d.ts +2 -0
  187. package/es/installers/graphics-lite.js +52 -0
  188. package/es/installers/graphics-lite.js.map +1 -0
  189. package/es/installers/graphics.d.ts +2 -0
  190. package/es/installers/graphics.js +79 -0
  191. package/es/installers/graphics.js.map +1 -0
  192. package/es/jsx/graphicType.d.ts +4 -4
  193. package/es/jsx/graphicType.js.map +1 -1
  194. package/es/jsx/jsx-classic.js +3 -3
  195. package/es/jsx/jsx-classic.js.map +1 -1
  196. package/es/react-tree.js +3 -3
  197. package/es/react-tree.js.map +1 -1
  198. package/es/register/env.js +2 -3
  199. package/es/register/env.js.map +1 -1
  200. package/es/register/register-arc.js +5 -1
  201. package/es/register/register-arc.js.map +1 -1
  202. package/es/register/register-arc3d.js +9 -2
  203. package/es/register/register-arc3d.js.map +1 -1
  204. package/es/register/register-area.js +5 -1
  205. package/es/register/register-area.js.map +1 -1
  206. package/es/register/register-circle.js +5 -1
  207. package/es/register/register-circle.js.map +1 -1
  208. package/es/register/register-glyph.js +5 -1
  209. package/es/register/register-glyph.js.map +1 -1
  210. package/es/register/register-group.js +1 -1
  211. package/es/register/register-group.js.map +1 -1
  212. package/es/register/register-image.js +5 -1
  213. package/es/register/register-image.js.map +1 -1
  214. package/es/register/register-line.js +5 -1
  215. package/es/register/register-line.js.map +1 -1
  216. package/es/register/register-path.js +5 -1
  217. package/es/register/register-path.js.map +1 -1
  218. package/es/register/register-polygon.js +5 -1
  219. package/es/register/register-polygon.js.map +1 -1
  220. package/es/register/register-pyramid3d.js +7 -1
  221. package/es/register/register-pyramid3d.js.map +1 -1
  222. package/es/register/register-rect.js +5 -1
  223. package/es/register/register-rect.js.map +1 -1
  224. package/es/register/register-rect3d.js +5 -1
  225. package/es/register/register-rect3d.js.map +1 -1
  226. package/es/register/register-richtext.js +5 -1
  227. package/es/register/register-richtext.js.map +1 -1
  228. package/es/register/register-shadowRoot.js +2 -3
  229. package/es/register/register-shadowRoot.js.map +1 -1
  230. package/es/register/register-star.js +5 -1
  231. package/es/register/register-star.js.map +1 -1
  232. package/es/register/register-symbol.js +7 -2
  233. package/es/register/register-symbol.js.map +1 -1
  234. package/es/register/register-text.js +5 -1
  235. package/es/register/register-text.js.map +1 -1
  236. package/es/register/register-wraptext.js +1 -1
  237. package/es/register/register-wraptext.js.map +1 -1
  238. package/es/window/contributions/feishu-contribution.js +9 -5
  239. package/es/window/contributions/feishu-contribution.js.map +1 -1
  240. package/es/window/contributions/harmony-contribution.js +73 -15
  241. package/es/window/contributions/harmony-contribution.js.map +1 -1
  242. package/es/window/contributions/lynx-contribution.d.ts +1 -2
  243. package/es/window/contributions/lynx-contribution.js +65 -14
  244. package/es/window/contributions/lynx-contribution.js.map +1 -1
  245. package/es/window/contributions/taro-contribution.js +9 -5
  246. package/es/window/contributions/taro-contribution.js.map +1 -1
  247. package/es/window/contributions/tt-contribution.js +9 -5
  248. package/es/window/contributions/tt-contribution.js.map +1 -1
  249. package/es/window/contributions/wx-contribution.d.ts +1 -2
  250. package/es/window/contributions/wx-contribution.js +31 -15
  251. package/es/window/contributions/wx-contribution.js.map +1 -1
  252. package/package.json +240 -4
  253. package/cjs/env/contributions/module.d.ts +0 -1
  254. package/cjs/env/contributions/module.js +0 -3
  255. package/cjs/env/contributions/module.js.map +0 -1
  256. package/cjs/node-bind.d.ts +0 -1
  257. package/cjs/node-bind.js +0 -1
  258. package/cjs/node-bind.js.map +0 -1
  259. package/cjs/picker/index.d.ts +0 -1
  260. package/cjs/picker/index.js +0 -1
  261. package/cjs/picker/index.js.map +0 -1
  262. package/cjs/render/contributions/render-module.d.ts +0 -1
  263. package/cjs/render/contributions/render-module.js +0 -3
  264. package/cjs/render/contributions/render-module.js.map +0 -1
  265. package/cjs/tools/dynamicTexture.d.ts +0 -1
  266. package/cjs/tools/dynamicTexture.js +0 -1
  267. package/cjs/tools/dynamicTexture.js.map +0 -1
  268. package/cjs/window/contributions/native-contribution.d.ts +0 -1
  269. package/cjs/window/contributions/native-contribution.js +0 -3
  270. package/cjs/window/contributions/native-contribution.js.map +0 -1
  271. package/es/env/contributions/module.d.ts +0 -1
  272. package/es/env/contributions/module.js +0 -3
  273. package/es/env/contributions/module.js.map +0 -1
  274. package/es/node-bind.d.ts +0 -1
  275. package/es/node-bind.js +0 -1
  276. package/es/node-bind.js.map +0 -1
  277. package/es/picker/index.d.ts +0 -1
  278. package/es/picker/index.js +0 -1
  279. package/es/picker/index.js.map +0 -1
  280. package/es/render/contributions/render-module.d.ts +0 -1
  281. package/es/render/contributions/render-module.js +0 -3
  282. package/es/render/contributions/render-module.js.map +0 -1
  283. package/es/tools/dynamicTexture.d.ts +0 -1
  284. package/es/tools/dynamicTexture.js +0 -1
  285. package/es/tools/dynamicTexture.js.map +0 -1
  286. package/es/window/contributions/native-contribution.d.ts +0 -1
  287. package/es/window/contributions/native-contribution.js +0 -3
  288. package/es/window/contributions/native-contribution.js.map +0 -1
@@ -1 +1 @@
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
+ {"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 ITTCanvas\n} from '@visactor/vrender-core';\nimport {\n createCanvasWithFactory,\n getMiniAppCanvasOptions,\n type MiniAppCanvasEnvParams,\n wrapMiniAppContextCanvas\n} from './miniapp-canvas';\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\ntype TaroEnvParams = MiniAppCanvasEnvParams & {\n taro?: ITaro;\n};\n\nconst TARO_CANVAS_BRIDGE_ERROR =\n 'Taro canvas bridge is unavailable. VRender taro env requires envParams.canvasFactory, ' +\n 'a Stage canvas object, or envParams.taro.createCanvasContext(id).';\n\nexport class TaroEnvContribution extends BaseEnvContribution implements IEnvContribution {\n type: EnvType = 'taro';\n supportEvent: boolean = true;\n canvasMap: Map<string, ITTCanvas> = new Map();\n taro: ITaro;\n pixelRatio: number = 1;\n private taroEnvParams: TaroEnvParams = {};\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 0;\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 configure(service: IGlobal, params: TaroEnvParams = {}) {\n if (service.env === this.type) {\n service.setActiveEnvContribution(this);\n this.taroEnvParams = params;\n this.taro = params.taro;\n this.pixelRatio = params.pixelRatio ?? 1;\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 = typeof window !== 'undefined' ? 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 const envParams = this.taroEnvParams;\n const dpr = params.dpr ?? this.getDevicePixelRatio();\n const factoryCanvas = createCanvasWithFactory(params, dpr, this.canvasMap, envParams.canvasFactory);\n if (factoryCanvas) {\n return factoryCanvas;\n }\n\n const options = getMiniAppCanvasOptions(params, dpr, false);\n if (options.id == null || typeof envParams.taro?.createCanvasContext !== 'function') {\n throw new Error(TARO_CANVAS_BRIDGE_ERROR);\n }\n\n const canvas = wrapMiniAppContextCanvas(envParams.taro.createCanvasContext(options.id), options);\n this.canvasMap.set(options.id, canvas);\n return canvas;\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,18 +1,23 @@
1
1
  import { BaseEnvContribution } from '@visactor/vrender-core';
2
2
  import type { ICanvasLike, EnvType, ICreateCanvasParams, IEnvContribution, IGlobal, ITTCanvas } from '@visactor/vrender-core';
3
+ import { type MiniAppCanvasEnvParams } from './miniapp-canvas';
4
+ declare const tt: {
5
+ getSystemInfoSync?: () => {
6
+ pixelRatio: number;
7
+ };
8
+ createCanvasContext?: (id: string) => any;
9
+ };
10
+ type TTEnvParams = MiniAppCanvasEnvParams & {
11
+ tt?: typeof tt;
12
+ runtime?: typeof tt;
13
+ };
3
14
  export declare class TTEnvContribution extends BaseEnvContribution implements IEnvContribution {
4
15
  type: EnvType;
5
16
  supportEvent: boolean;
6
17
  canvasMap: Map<string, ITTCanvas>;
7
- freeCanvasList: ITTCanvas[];
8
- canvasIdx: number;
18
+ private ttEnvParams;
9
19
  constructor();
10
- configure(service: IGlobal, params: {
11
- domref: any;
12
- canvasIdLists: string[];
13
- freeCanvasIdx: number;
14
- component: any;
15
- }): Promise<void>;
20
+ configure(service: IGlobal, params?: TTEnvParams): void;
16
21
  loadImage(url: string): Promise<{
17
22
  loadState: 'success' | 'fail';
18
23
  data: HTMLImageElement | ImageData | null;
@@ -38,3 +43,4 @@ export declare class TTEnvContribution extends BaseEnvContribution implements IE
38
43
  release(...params: any): void;
39
44
  mapToCanvasPoint(event: any): any;
40
45
  }
46
+ export {};
@@ -1,52 +1,27 @@
1
- var __awaiter = this && this.__awaiter || function(thisArg, _arguments, P, generator) {
2
- return new (P || (P = Promise))((function(resolve, reject) {
3
- function fulfilled(value) {
4
- try {
5
- step(generator.next(value));
6
- } catch (e) {
7
- reject(e);
8
- }
9
- }
10
- function rejected(value) {
11
- try {
12
- step(generator.throw(value));
13
- } catch (e) {
14
- reject(e);
15
- }
16
- }
17
- function step(result) {
18
- var value;
19
- result.done ? resolve(result.value) : (value = result.value, value instanceof P ? value : new P((function(resolve) {
20
- resolve(value);
21
- }))).then(fulfilled, rejected);
22
- }
23
- step((generator = generator.apply(thisArg, _arguments || [])).next());
24
- }));
25
- };
26
-
27
1
  import { BaseEnvContribution, rafBasedSto } from "@visactor/vrender-core";
28
2
 
29
- function makeUpCanvas(domref, canvasIdLists, canvasMap, freeCanvasIdx, freeCanvasList, component) {
30
- return __awaiter(this, void 0, void 0, (function*() {
31
- const dpr = tt.getSystemInfoSync().pixelRatio;
32
- for (let i = 0; i < canvasIdLists.length; i++) {
33
- const id = canvasIdLists[i];
34
- yield new Promise((resolve => {
35
- let data = tt.createSelectorQuery();
36
- component && (data = data.in(component)), data.select(`#${id}`).node().exec((res => {
37
- const canvas = res[0].node, width = canvas.width, height = canvas.height;
38
- canvas.width = width * dpr, canvas.height = height * dpr, canvasMap.set(id, canvas),
39
- i >= freeCanvasIdx && freeCanvasList.push(canvas), resolve(null);
40
- }));
41
- }));
42
- }
43
- }));
3
+ import { createCanvasWithFactory, getMiniAppCanvasOptions, wrapMiniAppContextCanvas } from "./miniapp-canvas";
4
+
5
+ const TT_CANVAS_BRIDGE_ERROR = "TT canvas bridge is unavailable. VRender tt env requires envParams.canvasFactory, a Stage canvas object, or a tt runtime that exposes createCanvasContext(id).";
6
+
7
+ function getTTRuntime(params) {
8
+ var _a, _b, _c;
9
+ try {
10
+ return null !== (_b = null !== (_a = null == params ? void 0 : params.tt) && void 0 !== _a ? _a : null == params ? void 0 : params.runtime) && void 0 !== _b ? _b : "undefined" != typeof tt ? tt : void 0;
11
+ } catch (_d) {
12
+ return null !== (_c = null == params ? void 0 : params.tt) && void 0 !== _c ? _c : null == params ? void 0 : params.runtime;
13
+ }
14
+ }
15
+
16
+ function getTTPixelRatio(params, runtime = getTTRuntime(params)) {
17
+ var _a, _b, _c, _d;
18
+ return null !== (_d = null !== (_a = null == params ? void 0 : params.pixelRatio) && void 0 !== _a ? _a : null === (_c = null === (_b = null == runtime ? void 0 : runtime.getSystemInfoSync) || void 0 === _b ? void 0 : _b.call(runtime)) || void 0 === _c ? void 0 : _c.pixelRatio) && void 0 !== _d ? _d : 1;
44
19
  }
45
20
 
46
21
  export class TTEnvContribution extends BaseEnvContribution {
47
22
  constructor() {
48
- super(), this.type = "tt", this.supportEvent = !0, this.canvasMap = new Map, this.freeCanvasList = [],
49
- this.canvasIdx = 0, this.supportsTouchEvents = !0;
23
+ super(), this.type = "tt", this.supportEvent = !0, this.canvasMap = new Map, this.ttEnvParams = {},
24
+ this.supportsTouchEvents = !0;
50
25
  try {
51
26
  this.supportsPointerEvents = !!globalThis.PointerEvent, this.supportsMouseEvents = !!globalThis.MouseEvent;
52
27
  } catch (err) {
@@ -54,8 +29,8 @@ export class TTEnvContribution extends BaseEnvContribution {
54
29
  }
55
30
  this.applyStyles = !0;
56
31
  }
57
- configure(service, params) {
58
- if (service.env === this.type) return service.setActiveEnvContribution(this), makeUpCanvas(params.domref, params.canvasIdLists, this.canvasMap, params.freeCanvasIdx, this.freeCanvasList, params.component).then((() => {}));
32
+ configure(service, params = {}) {
33
+ service.env === this.type && (service.setActiveEnvContribution(this), this.ttEnvParams = params);
59
34
  }
60
35
  loadImage(url) {
61
36
  return Promise.resolve({
@@ -67,13 +42,18 @@ export class TTEnvContribution extends BaseEnvContribution {
67
42
  return Promise.reject();
68
43
  }
69
44
  createCanvas(params) {
70
- const result = this.freeCanvasList[this.canvasIdx] || this.freeCanvasList[this.freeCanvasList.length - 1];
71
- return this.canvasIdx++, result;
45
+ var _a;
46
+ const envParams = this.ttEnvParams, runtime = getTTRuntime(envParams), dpr = null !== (_a = params.dpr) && void 0 !== _a ? _a : getTTPixelRatio(envParams, runtime), factoryCanvas = createCanvasWithFactory(params, dpr, this.canvasMap, envParams.canvasFactory);
47
+ if (factoryCanvas) return factoryCanvas;
48
+ const options = getMiniAppCanvasOptions(params, dpr, !1);
49
+ if (null == options.id || "function" != typeof (null == runtime ? void 0 : runtime.createCanvasContext)) throw new Error(TT_CANVAS_BRIDGE_ERROR);
50
+ const canvas = wrapMiniAppContextCanvas(runtime.createCanvasContext(options.id), options);
51
+ return this.canvasMap.set(options.id, canvas), canvas;
72
52
  }
73
53
  createOffscreenCanvas(params) {}
74
54
  releaseCanvas(canvas) {}
75
55
  getDevicePixelRatio() {
76
- return tt.getSystemInfoSync().pixelRatio;
56
+ return getTTPixelRatio(this.ttEnvParams);
77
57
  }
78
58
  getRequestAnimationFrame() {
79
59
  return function(callback) {
@@ -1 +1 @@
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
+ {"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';\nimport {\n createCanvasWithFactory,\n getMiniAppCanvasOptions,\n type MiniAppCanvasEnvParams,\n wrapMiniAppContextCanvas\n} from './miniapp-canvas';\n\ndeclare const tt: {\n getSystemInfoSync?: () => { pixelRatio: number };\n createCanvasContext?: (id: string) => any;\n};\n\ntype TTEnvParams = MiniAppCanvasEnvParams & {\n tt?: typeof tt;\n runtime?: typeof tt;\n};\n\nconst TT_CANVAS_BRIDGE_ERROR =\n 'TT canvas bridge is unavailable. VRender tt env requires envParams.canvasFactory, ' +\n 'a Stage canvas object, or a tt runtime that exposes createCanvasContext(id).';\n\nfunction getTTRuntime(params?: TTEnvParams): any {\n try {\n return params?.tt ?? params?.runtime ?? (typeof tt !== 'undefined' ? tt : undefined);\n } catch {\n return params?.tt ?? params?.runtime;\n }\n}\n\nfunction getTTPixelRatio(params?: TTEnvParams, runtime: any = getTTRuntime(params)): number {\n return params?.pixelRatio ?? runtime?.getSystemInfoSync?.()?.pixelRatio ?? 1;\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 private ttEnvParams: TTEnvParams = {};\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 configure(service: IGlobal, params: TTEnvParams = {}) {\n if (service.env === this.type) {\n service.setActiveEnvContribution(this);\n this.ttEnvParams = params;\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 envParams = this.ttEnvParams;\n const runtime = getTTRuntime(envParams);\n const dpr = params.dpr ?? getTTPixelRatio(envParams, runtime);\n const factoryCanvas = createCanvasWithFactory(params, dpr, this.canvasMap, envParams.canvasFactory);\n if (factoryCanvas) {\n return factoryCanvas;\n }\n\n const options = getMiniAppCanvasOptions(params, dpr, false);\n if (options.id == null || typeof runtime?.createCanvasContext !== 'function') {\n throw new Error(TT_CANVAS_BRIDGE_ERROR);\n }\n\n const canvas = wrapMiniAppContextCanvas(runtime.createCanvasContext(options.id), options);\n this.canvasMap.set(options.id, canvas);\n return canvas;\n }\n\n createOffscreenCanvas(params: ICreateCanvasParams) {\n return;\n }\n\n releaseCanvas(canvas: ICanvasLike | string) {\n return;\n }\n\n getDevicePixelRatio(): number {\n return getTTPixelRatio(this.ttEnvParams);\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,19 +1,22 @@
1
- import { BaseEnvContribution } from '@visactor/vrender-core';
2
- import type { ICanvasLike, EnvType, ICreateCanvasParams, IEnvContribution, IGlobal, ITTCanvas } from '@visactor/vrender-core';
1
+ import { BaseEnvContribution, type ICanvasLike, type EnvType, type ICreateCanvasParams, type IEnvContribution, type IGlobal, type ITTCanvas } from '@visactor/vrender-core';
2
+ import { type MiniAppCanvasEnvParams } from './miniapp-canvas';
3
+ declare const wx: {
4
+ getSystemInfoSync?: () => {
5
+ pixelRatio: number;
6
+ };
7
+ createCanvasContext?: (id: string) => any;
8
+ };
9
+ type WxEnvParams = MiniAppCanvasEnvParams & {
10
+ wx?: typeof wx;
11
+ runtime?: typeof wx;
12
+ };
3
13
  export declare class WxEnvContribution extends BaseEnvContribution implements IEnvContribution {
4
14
  type: EnvType;
5
15
  supportEvent: boolean;
6
16
  canvasMap: Map<string, ITTCanvas>;
7
- freeCanvasList: ITTCanvas[];
8
- canvasIdx: number;
17
+ private wxEnvParams;
9
18
  constructor();
10
- configure(service: IGlobal, params: {
11
- domref: any;
12
- canvasIdLists: string[];
13
- freeCanvasIdx: number;
14
- component: any;
15
- forceUpdate?: boolean;
16
- }): Promise<void>;
19
+ configure(service: IGlobal, params?: WxEnvParams): void;
17
20
  loadImage(url: string): Promise<{
18
21
  loadState: 'success' | 'fail';
19
22
  data: HTMLImageElement | ImageData | null;
@@ -39,3 +42,4 @@ export declare class WxEnvContribution extends BaseEnvContribution implements IE
39
42
  release(...params: any): void;
40
43
  mapToCanvasPoint(event: any): any;
41
44
  }
45
+ export {};
@@ -1,56 +1,27 @@
1
- var __awaiter = this && this.__awaiter || function(thisArg, _arguments, P, generator) {
2
- return new (P || (P = Promise))((function(resolve, reject) {
3
- function fulfilled(value) {
4
- try {
5
- step(generator.next(value));
6
- } catch (e) {
7
- reject(e);
8
- }
9
- }
10
- function rejected(value) {
11
- try {
12
- step(generator.throw(value));
13
- } catch (e) {
14
- reject(e);
15
- }
16
- }
17
- function step(result) {
18
- var value;
19
- result.done ? resolve(result.value) : (value = result.value, value instanceof P ? value : new P((function(resolve) {
20
- resolve(value);
21
- }))).then(fulfilled, rejected);
22
- }
23
- step((generator = generator.apply(thisArg, _arguments || [])).next());
24
- }));
25
- };
26
-
27
1
  import { BaseEnvContribution, rafBasedSto } from "@visactor/vrender-core";
28
2
 
29
- function makeUpCanvas(domref, canvasIdLists, canvasMap, freeCanvasIdx, freeCanvasList, component, forceUpdate) {
30
- return __awaiter(this, void 0, void 0, (function*() {
31
- const dpr = wx.getSystemInfoSync().pixelRatio;
32
- for (let i = 0; i < canvasIdLists.length; i++) {
33
- const id = canvasIdLists[i];
34
- !forceUpdate && canvasMap.has(id) || (yield new Promise((resolve => {
35
- let data = wx.createSelectorQuery();
36
- component && (data = data.in(component)), data.select(`#${id}`).fields({
37
- node: !0,
38
- size: !0
39
- }).exec((res => {
40
- if (!res[0]) return;
41
- const canvas = res[0].node, width = res[0].width, height = res[0].height;
42
- canvas.width = width * dpr, canvas.height = height * dpr, canvasMap.set(id, canvas),
43
- i >= freeCanvasIdx && freeCanvasList.push(canvas), resolve(null);
44
- }));
45
- })));
46
- }
47
- }));
3
+ import { createCanvasWithFactory, getMiniAppCanvasOptions, wrapMiniAppContextCanvas } from "./miniapp-canvas";
4
+
5
+ const WX_CANVAS_BRIDGE_ERROR = "Wx canvas bridge is unavailable. VRender wx env requires envParams.canvasFactory, a Stage canvas object, or a wx runtime that exposes createCanvasContext(id).";
6
+
7
+ function getWxRuntime(params) {
8
+ var _a, _b, _c;
9
+ try {
10
+ return null !== (_b = null !== (_a = null == params ? void 0 : params.wx) && void 0 !== _a ? _a : null == params ? void 0 : params.runtime) && void 0 !== _b ? _b : "undefined" != typeof wx ? wx : void 0;
11
+ } catch (_d) {
12
+ return null !== (_c = null == params ? void 0 : params.wx) && void 0 !== _c ? _c : null == params ? void 0 : params.runtime;
13
+ }
14
+ }
15
+
16
+ function getWxPixelRatio(params, runtime = getWxRuntime(params)) {
17
+ var _a, _b, _c, _d;
18
+ return null !== (_d = null !== (_a = null == params ? void 0 : params.pixelRatio) && void 0 !== _a ? _a : null === (_c = null === (_b = null == runtime ? void 0 : runtime.getSystemInfoSync) || void 0 === _b ? void 0 : _b.call(runtime)) || void 0 === _c ? void 0 : _c.pixelRatio) && void 0 !== _d ? _d : 1;
48
19
  }
49
20
 
50
21
  export class WxEnvContribution extends BaseEnvContribution {
51
22
  constructor() {
52
- super(), this.type = "wx", this.supportEvent = !0, this.canvasMap = new Map, this.freeCanvasList = [],
53
- this.canvasIdx = 0, this.supportsTouchEvents = !0;
23
+ super(), this.type = "wx", this.supportEvent = !0, this.canvasMap = new Map, this.wxEnvParams = {},
24
+ this.supportsTouchEvents = !0;
54
25
  try {
55
26
  this.supportsPointerEvents = !!globalThis.PointerEvent, this.supportsMouseEvents = !!globalThis.MouseEvent;
56
27
  } catch (err) {
@@ -58,8 +29,8 @@ export class WxEnvContribution extends BaseEnvContribution {
58
29
  }
59
30
  this.applyStyles = !0;
60
31
  }
61
- configure(service, params) {
62
- if (service.env === this.type) return service.setActiveEnvContribution(this), makeUpCanvas(params.domref, params.canvasIdLists, this.canvasMap, params.freeCanvasIdx, this.freeCanvasList, params.component, params.forceUpdate).then((() => {}));
32
+ configure(service, params = {}) {
33
+ service.env === this.type && (service.setActiveEnvContribution(this), this.wxEnvParams = params);
63
34
  }
64
35
  loadImage(url) {
65
36
  return Promise.resolve({
@@ -68,16 +39,24 @@ export class WxEnvContribution extends BaseEnvContribution {
68
39
  });
69
40
  }
70
41
  loadSvg(url) {
71
- return Promise.reject();
42
+ return Promise.resolve({
43
+ data: null,
44
+ loadState: "fail"
45
+ });
72
46
  }
73
47
  createCanvas(params) {
74
- const result = this.freeCanvasList[this.canvasIdx] || this.freeCanvasList[this.freeCanvasList.length - 1];
75
- return this.canvasIdx++, result;
48
+ var _a;
49
+ const envParams = this.wxEnvParams, runtime = getWxRuntime(envParams), dpr = null !== (_a = params.dpr) && void 0 !== _a ? _a : getWxPixelRatio(envParams, runtime), factoryCanvas = createCanvasWithFactory(params, dpr, this.canvasMap, envParams.canvasFactory);
50
+ if (factoryCanvas) return factoryCanvas;
51
+ const options = getMiniAppCanvasOptions(params, dpr, !1);
52
+ if (null == options.id || "function" != typeof (null == runtime ? void 0 : runtime.createCanvasContext)) throw new Error(WX_CANVAS_BRIDGE_ERROR);
53
+ const canvas = wrapMiniAppContextCanvas(runtime.createCanvasContext(options.id), options);
54
+ return this.canvasMap.set(options.id, canvas), canvas;
76
55
  }
77
56
  createOffscreenCanvas(params) {}
78
57
  releaseCanvas(canvas) {}
79
58
  getDevicePixelRatio() {
80
- return wx.getSystemInfoSync().pixelRatio;
59
+ return getWxPixelRatio(this.wxEnvParams);
81
60
  }
82
61
  getRequestAnimationFrame() {
83
62
  return function(callback) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/env/contributions/wx-contribution.ts"],"names":[],"mappings":"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","file":"wx-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 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 forceUpdate?: boolean\n) {\n const dpr = wx.getSystemInfoSync().pixelRatio;\n\n for (let i = 0; i < canvasIdLists.length; i++) {\n const id = canvasIdLists[i];\n if (!forceUpdate && canvasMap.has(id)) {\n continue;\n }\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\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(\n service: IGlobal,\n params: { domref: any; canvasIdLists: string[]; freeCanvasIdx: number; component: any; forceUpdate?: boolean }\n ) {\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 params.forceUpdate\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 event;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/env/contributions/wx-contribution.ts"],"names":[],"mappings":"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","file":"wx-contribution.js","sourcesContent":["import {\n BaseEnvContribution,\n rafBasedSto,\n type ICanvasLike,\n type EnvType,\n type ICreateCanvasParams,\n type IEnvContribution,\n type IGlobal,\n type ITTCanvas\n} from '@visactor/vrender-core';\nimport {\n createCanvasWithFactory,\n getMiniAppCanvasOptions,\n type MiniAppCanvasEnvParams,\n wrapMiniAppContextCanvas\n} from './miniapp-canvas';\n// import { loadFeishuContributions } from '../../../kits';\n\ndeclare const wx: {\n getSystemInfoSync?: () => { pixelRatio: number };\n createCanvasContext?: (id: string) => any;\n};\n\ntype WxEnvParams = MiniAppCanvasEnvParams & {\n wx?: typeof wx;\n runtime?: typeof wx;\n};\n\nconst WX_CANVAS_BRIDGE_ERROR =\n 'Wx canvas bridge is unavailable. VRender wx env requires envParams.canvasFactory, ' +\n 'a Stage canvas object, or a wx runtime that exposes createCanvasContext(id).';\n\nfunction getWxRuntime(params?: WxEnvParams): any {\n try {\n return params?.wx ?? params?.runtime ?? (typeof wx !== 'undefined' ? wx : undefined);\n } catch {\n return params?.wx ?? params?.runtime;\n }\n}\n\nfunction getWxPixelRatio(params?: WxEnvParams, runtime: any = getWxRuntime(params)): number {\n return params?.pixelRatio ?? runtime?.getSystemInfoSync?.()?.pixelRatio ?? 1;\n}\n\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 private wxEnvParams: WxEnvParams = {};\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 configure(service: IGlobal, params: WxEnvParams = {}) {\n if (service.env === this.type) {\n service.setActiveEnvContribution(this);\n this.wxEnvParams = params;\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.resolve({\n data: null,\n loadState: 'fail'\n });\n }\n\n createCanvas(params: ICreateCanvasParams): ITTCanvas {\n const envParams = this.wxEnvParams;\n const runtime = getWxRuntime(envParams);\n const dpr = params.dpr ?? getWxPixelRatio(envParams, runtime);\n const factoryCanvas = createCanvasWithFactory(params, dpr, this.canvasMap, envParams.canvasFactory);\n if (factoryCanvas) {\n return factoryCanvas;\n }\n\n const options = getMiniAppCanvasOptions(params, dpr, false);\n if (options.id == null || typeof runtime?.createCanvasContext !== 'function') {\n throw new Error(WX_CANVAS_BRIDGE_ERROR);\n }\n\n const canvas = wrapMiniAppContextCanvas(runtime.createCanvasContext(options.id), options);\n this.canvasMap.set(options.id, canvas);\n return canvas;\n }\n\n createOffscreenCanvas(params: ICreateCanvasParams) {\n return;\n }\n\n releaseCanvas(canvas: ICanvasLike | string) {\n return;\n }\n\n getDevicePixelRatio(): number {\n return getWxPixelRatio(this.wxEnvParams);\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"]}
package/es/env/feishu.js CHANGED
@@ -8,10 +8,9 @@ import { loadMathPicker } from "../picker/math-module";
8
8
 
9
9
  import { FeishuEnvContribution } from "./contributions/feishu-contribution";
10
10
 
11
- let isFeishuBound = !1;
12
-
13
11
  export function bindFeishuEnv(container) {
14
- isFeishuBound || (isFeishuBound = !0, container.bind(FeishuEnvContribution).toSelf().inSingletonScope(),
12
+ var _a, _b;
13
+ (null === (_b = (_a = container).isBound) || void 0 === _b ? void 0 : _b.call(_a, FeishuEnvContribution)) || (container.bind(FeishuEnvContribution).toSelf().inSingletonScope(),
15
14
  container.bind(EnvContribution).toService(FeishuEnvContribution));
16
15
  }
17
16
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/env/feishu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAG5E,IAAI,aAAa,GAAG,KAAK,CAAC;AAE1B,MAAM,UAAU,aAAa,CAAC,SAA8B;IAC1D,IAAI,CAAC,aAAa,EAAE;QAClB,aAAa,GAAG,IAAI,CAAC;QACrB,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;QAClE,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;KAClE;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,YAA6B,uBAAuB,EAAE,EAAE,aAAsB,IAAI;IAC9G,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;QAC3B,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC9B,aAAa,CAAC,SAAS,CAAC,CAAC;QACzB,uBAAuB,CAAC,SAAS,CAAC,CAAC;QACnC,4BAA4B,CAAC,SAAS,CAAC,CAAC;QACxC,UAAU,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;KACzC;AACH,CAAC;AAED,aAAa,CAAC,QAAQ,GAAG,KAAK,CAAC;AAE/B,MAAM,UAAU,aAAa;IAC3B,aAAa,EAAE,CAAC;AAClB,CAAC","file":"feishu.js","sourcesContent":["import { EnvContribution, getLegacyBindingContext } from '@visactor/vrender-core';\nimport { bindFeishuCanvasModules } from '../canvas/contributions/feishu/modules';\nimport { bindFeishuWindowContribution } from '../window/contributions/feishu-contribution';\nimport { loadMathPicker } from '../picker/math-module';\nimport { FeishuEnvContribution } from './contributions/feishu-contribution';\nimport type { LegacyBindContainer, LegacyContainer } from '../common/legacy-container';\n\nlet isFeishuBound = false;\n\nexport function bindFeishuEnv(container: LegacyBindContainer) {\n if (!isFeishuBound) {\n isFeishuBound = true;\n container.bind(FeishuEnvContribution).toSelf().inSingletonScope();\n container.bind(EnvContribution).toService(FeishuEnvContribution);\n }\n}\n\nexport function loadFeishuEnv(container: LegacyContainer = getLegacyBindingContext(), loadPicker: boolean = true) {\n if (!loadFeishuEnv.__loaded) {\n loadFeishuEnv.__loaded = true;\n bindFeishuEnv(container);\n bindFeishuCanvasModules(container);\n bindFeishuWindowContribution(container);\n loadPicker && loadMathPicker(container);\n }\n}\n\nloadFeishuEnv.__loaded = false;\n\nexport function initFeishuEnv() {\n loadFeishuEnv();\n}\n"]}
1
+ {"version":3,"sources":["../src/env/feishu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAG5E,MAAM,UAAU,aAAa,CAAC,SAA8B;;IAC1D,IAAI,CAAC,CAAA,MAAA,MAAC,SAAiB,EAAC,OAAO,mDAAG,qBAAqB,CAAC,CAAA,EAAE;QACxD,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;QAClE,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;KAClE;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,YAA6B,uBAAuB,EAAE,EAAE,aAAsB,IAAI;IAC9G,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;QAC3B,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC9B,aAAa,CAAC,SAAS,CAAC,CAAC;QACzB,uBAAuB,CAAC,SAAS,CAAC,CAAC;QACnC,4BAA4B,CAAC,SAAS,CAAC,CAAC;QACxC,UAAU,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;KACzC;AACH,CAAC;AAED,aAAa,CAAC,QAAQ,GAAG,KAAK,CAAC;AAE/B,MAAM,UAAU,aAAa;IAC3B,aAAa,EAAE,CAAC;AAClB,CAAC","file":"feishu.js","sourcesContent":["import { EnvContribution, getLegacyBindingContext } from '@visactor/vrender-core';\nimport { bindFeishuCanvasModules } from '../canvas/contributions/feishu/modules';\nimport { bindFeishuWindowContribution } from '../window/contributions/feishu-contribution';\nimport { loadMathPicker } from '../picker/math-module';\nimport { FeishuEnvContribution } from './contributions/feishu-contribution';\nimport type { LegacyBindContainer, LegacyContainer } from '../common/legacy-container';\n\nexport function bindFeishuEnv(container: LegacyBindContainer) {\n if (!(container as any).isBound?.(FeishuEnvContribution)) {\n container.bind(FeishuEnvContribution).toSelf().inSingletonScope();\n container.bind(EnvContribution).toService(FeishuEnvContribution);\n }\n}\n\nexport function loadFeishuEnv(container: LegacyContainer = getLegacyBindingContext(), loadPicker: boolean = true) {\n if (!loadFeishuEnv.__loaded) {\n loadFeishuEnv.__loaded = true;\n bindFeishuEnv(container);\n bindFeishuCanvasModules(container);\n bindFeishuWindowContribution(container);\n loadPicker && loadMathPicker(container);\n }\n}\n\nloadFeishuEnv.__loaded = false;\n\nexport function initFeishuEnv() {\n loadFeishuEnv();\n}\n"]}
package/es/env/harmony.js CHANGED
@@ -8,10 +8,9 @@ import { bindHarmonyCanvasModules } from "../canvas/contributions/harmony/module
8
8
 
9
9
  import { HarmonyEnvContribution } from "./contributions/harmony-contribution";
10
10
 
11
- let isHarmonyBound = !1;
12
-
13
11
  export function bindHarmonyEnv(container) {
14
- isHarmonyBound || (isHarmonyBound = !0, container.bind(HarmonyEnvContribution).toSelf().inSingletonScope(),
12
+ var _a, _b;
13
+ (null === (_b = (_a = container).isBound) || void 0 === _b ? void 0 : _b.call(_a, HarmonyEnvContribution)) || (container.bind(HarmonyEnvContribution).toSelf().inSingletonScope(),
15
14
  container.bind(EnvContribution).toService(HarmonyEnvContribution));
16
15
  }
17
16
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/env/harmony.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,6BAA6B,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAG9E,IAAI,cAAc,GAAG,KAAK,CAAC;AAE3B,MAAM,UAAU,cAAc,CAAC,SAA8B;IAC3D,IAAI,CAAC,cAAc,EAAE;QACnB,cAAc,GAAG,IAAI,CAAC;QACtB,SAAS,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;QACnE,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;KACnE;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,YAA6B,uBAAuB,EAAE,EAAE,aAAsB,IAAI;IAC/G,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE;QAC5B,cAAc,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC/B,cAAc,CAAC,SAAS,CAAC,CAAC;QAC1B,wBAAwB,CAAC,SAAS,CAAC,CAAC;QACpC,6BAA6B,CAAC,SAAS,CAAC,CAAC;QACzC,UAAU,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;KACzC;AACH,CAAC;AAED,cAAc,CAAC,QAAQ,GAAG,KAAK,CAAC;AAEhC,MAAM,UAAU,cAAc;IAC5B,cAAc,EAAE,CAAC;AACnB,CAAC","file":"harmony.js","sourcesContent":["import { EnvContribution, getLegacyBindingContext } from '@visactor/vrender-core';\nimport { loadMathPicker } from '../picker/math-module';\nimport { bindHarmonyWindowContribution } from '../window/contributions/harmony-contribution';\nimport { bindHarmonyCanvasModules } from '../canvas/contributions/harmony/modules';\nimport { HarmonyEnvContribution } from './contributions/harmony-contribution';\nimport type { LegacyBindContainer, LegacyContainer } from '../common/legacy-container';\n\nlet isHarmonyBound = false;\n\nexport function bindHarmonyEnv(container: LegacyBindContainer) {\n if (!isHarmonyBound) {\n isHarmonyBound = true;\n container.bind(HarmonyEnvContribution).toSelf().inSingletonScope();\n container.bind(EnvContribution).toService(HarmonyEnvContribution);\n }\n}\n\nexport function loadHarmonyEnv(container: LegacyContainer = getLegacyBindingContext(), loadPicker: boolean = true) {\n if (!loadHarmonyEnv.__loaded) {\n loadHarmonyEnv.__loaded = true;\n bindHarmonyEnv(container);\n bindHarmonyCanvasModules(container);\n bindHarmonyWindowContribution(container);\n loadPicker && loadMathPicker(container);\n }\n}\n\nloadHarmonyEnv.__loaded = false;\n\nexport function initHarmonyEnv() {\n loadHarmonyEnv();\n}\n"]}
1
+ {"version":3,"sources":["../src/env/harmony.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,6BAA6B,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAG9E,MAAM,UAAU,cAAc,CAAC,SAA8B;;IAC3D,IAAI,CAAC,CAAA,MAAA,MAAC,SAAiB,EAAC,OAAO,mDAAG,sBAAsB,CAAC,CAAA,EAAE;QACzD,SAAS,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;QACnE,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;KACnE;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,YAA6B,uBAAuB,EAAE,EAAE,aAAsB,IAAI;IAC/G,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE;QAC5B,cAAc,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC/B,cAAc,CAAC,SAAS,CAAC,CAAC;QAC1B,wBAAwB,CAAC,SAAS,CAAC,CAAC;QACpC,6BAA6B,CAAC,SAAS,CAAC,CAAC;QACzC,UAAU,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;KACzC;AACH,CAAC;AAED,cAAc,CAAC,QAAQ,GAAG,KAAK,CAAC;AAEhC,MAAM,UAAU,cAAc;IAC5B,cAAc,EAAE,CAAC;AACnB,CAAC","file":"harmony.js","sourcesContent":["import { EnvContribution, getLegacyBindingContext } from '@visactor/vrender-core';\nimport { loadMathPicker } from '../picker/math-module';\nimport { bindHarmonyWindowContribution } from '../window/contributions/harmony-contribution';\nimport { bindHarmonyCanvasModules } from '../canvas/contributions/harmony/modules';\nimport { HarmonyEnvContribution } from './contributions/harmony-contribution';\nimport type { LegacyBindContainer, LegacyContainer } from '../common/legacy-container';\n\nexport function bindHarmonyEnv(container: LegacyBindContainer) {\n if (!(container as any).isBound?.(HarmonyEnvContribution)) {\n container.bind(HarmonyEnvContribution).toSelf().inSingletonScope();\n container.bind(EnvContribution).toService(HarmonyEnvContribution);\n }\n}\n\nexport function loadHarmonyEnv(container: LegacyContainer = getLegacyBindingContext(), loadPicker: boolean = true) {\n if (!loadHarmonyEnv.__loaded) {\n loadHarmonyEnv.__loaded = true;\n bindHarmonyEnv(container);\n bindHarmonyCanvasModules(container);\n bindHarmonyWindowContribution(container);\n loadPicker && loadMathPicker(container);\n }\n}\n\nloadHarmonyEnv.__loaded = false;\n\nexport function initHarmonyEnv() {\n loadHarmonyEnv();\n}\n"]}
package/es/env/lynx.js CHANGED
@@ -8,10 +8,9 @@ import { bindLynxCanvasModules } from "../canvas/contributions/lynx/modules";
8
8
 
9
9
  import { LynxEnvContribution } from "./contributions/lynx-contribution";
10
10
 
11
- let isLynxBound = !1;
12
-
13
11
  export function bindLynxEnv(container) {
14
- isLynxBound || (isLynxBound = !0, container.bind(LynxEnvContribution).toSelf().inSingletonScope(),
12
+ var _a, _b;
13
+ (null === (_b = (_a = container).isBound) || void 0 === _b ? void 0 : _b.call(_a, LynxEnvContribution)) || (container.bind(LynxEnvContribution).toSelf().inSingletonScope(),
15
14
  container.bind(EnvContribution).toService(LynxEnvContribution));
16
15
  }
17
16
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/env/lynx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAIxE,IAAI,WAAW,GAAG,KAAK,CAAC;AAExB,MAAM,UAAU,WAAW,CAAC,SAA8B;IACxD,IAAI,CAAC,WAAW,EAAE;QAChB,WAAW,GAAG,IAAI,CAAC;QACnB,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;QAChE,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;KAChE;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,YAA6B,uBAAuB,EAAE,EAAE,aAAsB,IAAI;IAC5G,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;QACzB,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC5B,WAAW,CAAC,SAAS,CAAC,CAAC;QACvB,qBAAqB,CAAC,SAAS,CAAC,CAAC;QACjC,0BAA0B,CAAC,SAAS,CAAC,CAAC;QACtC,UAAU,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;KACzC;AACH,CAAC;AAED,WAAW,CAAC,QAAQ,GAAG,KAAK,CAAC;AAE7B,MAAM,UAAU,WAAW;IACzB,WAAW,EAAE,CAAC;AAChB,CAAC","file":"lynx.js","sourcesContent":["import { EnvContribution, getLegacyBindingContext } from '@visactor/vrender-core';\nimport { loadMathPicker } from '../picker/math-module';\nimport { bindLynxWindowContribution } from '../window/contributions/lynx-contribution';\nimport { bindLynxCanvasModules } from '../canvas/contributions/lynx/modules';\nimport { LynxEnvContribution } from './contributions/lynx-contribution';\n// import { lynxEnvModule } from './contributions/module';\nimport type { LegacyBindContainer, LegacyContainer } from '../common/legacy-container';\n\nlet isLynxBound = false;\n\nexport function bindLynxEnv(container: LegacyBindContainer) {\n if (!isLynxBound) {\n isLynxBound = true;\n container.bind(LynxEnvContribution).toSelf().inSingletonScope();\n container.bind(EnvContribution).toService(LynxEnvContribution);\n }\n}\n\nexport function loadLynxEnv(container: LegacyContainer = getLegacyBindingContext(), loadPicker: boolean = true) {\n if (!loadLynxEnv.__loaded) {\n loadLynxEnv.__loaded = true;\n bindLynxEnv(container);\n bindLynxCanvasModules(container);\n bindLynxWindowContribution(container);\n loadPicker && loadMathPicker(container);\n }\n}\n\nloadLynxEnv.__loaded = false;\n\nexport function initLynxEnv() {\n loadLynxEnv();\n}\n"]}
1
+ {"version":3,"sources":["../src/env/lynx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAIxE,MAAM,UAAU,WAAW,CAAC,SAA8B;;IACxD,IAAI,CAAC,CAAA,MAAA,MAAC,SAAiB,EAAC,OAAO,mDAAG,mBAAmB,CAAC,CAAA,EAAE;QACtD,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;QAChE,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;KAChE;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,YAA6B,uBAAuB,EAAE,EAAE,aAAsB,IAAI;IAC5G,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;QACzB,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC5B,WAAW,CAAC,SAAS,CAAC,CAAC;QACvB,qBAAqB,CAAC,SAAS,CAAC,CAAC;QACjC,0BAA0B,CAAC,SAAS,CAAC,CAAC;QACtC,UAAU,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;KACzC;AACH,CAAC;AAED,WAAW,CAAC,QAAQ,GAAG,KAAK,CAAC;AAE7B,MAAM,UAAU,WAAW;IACzB,WAAW,EAAE,CAAC;AAChB,CAAC","file":"lynx.js","sourcesContent":["import { EnvContribution, getLegacyBindingContext } from '@visactor/vrender-core';\nimport { loadMathPicker } from '../picker/math-module';\nimport { bindLynxWindowContribution } from '../window/contributions/lynx-contribution';\nimport { bindLynxCanvasModules } from '../canvas/contributions/lynx/modules';\nimport { LynxEnvContribution } from './contributions/lynx-contribution';\n// import { lynxEnvModule } from './contributions/module';\nimport type { LegacyBindContainer, LegacyContainer } from '../common/legacy-container';\n\nexport function bindLynxEnv(container: LegacyBindContainer) {\n if (!(container as any).isBound?.(LynxEnvContribution)) {\n container.bind(LynxEnvContribution).toSelf().inSingletonScope();\n container.bind(EnvContribution).toService(LynxEnvContribution);\n }\n}\n\nexport function loadLynxEnv(container: LegacyContainer = getLegacyBindingContext(), loadPicker: boolean = true) {\n if (!loadLynxEnv.__loaded) {\n loadLynxEnv.__loaded = true;\n bindLynxEnv(container);\n bindLynxCanvasModules(container);\n bindLynxWindowContribution(container);\n loadPicker && loadMathPicker(container);\n }\n}\n\nloadLynxEnv.__loaded = false;\n\nexport function initLynxEnv() {\n loadLynxEnv();\n}\n"]}
package/es/env/taro.js CHANGED
@@ -8,10 +8,9 @@ import { bindTaroWindowContribution } from "../window/contributions/taro-contrib
8
8
 
9
9
  import { TaroEnvContribution } from "./contributions/taro-contribution";
10
10
 
11
- let isTaroBound = !1;
12
-
13
11
  export function bindTaroEnv(container) {
14
- isTaroBound || (isTaroBound = !0, container.bind(TaroEnvContribution).toSelf().inSingletonScope(),
12
+ var _a, _b;
13
+ (null === (_b = (_a = container).isBound) || void 0 === _b ? void 0 : _b.call(_a, TaroEnvContribution)) || (container.bind(TaroEnvContribution).toSelf().inSingletonScope(),
15
14
  container.bind(EnvContribution).toService(TaroEnvContribution));
16
15
  }
17
16
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/env/taro.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAGxE,IAAI,WAAW,GAAG,KAAK,CAAC;AAExB,MAAM,UAAU,WAAW,CAAC,SAA8B;IACxD,IAAI,CAAC,WAAW,EAAE;QAChB,WAAW,GAAG,IAAI,CAAC;QACnB,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;QAChE,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;KAChE;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,YAA6B,uBAAuB,EAAE,EAAE,aAAsB,IAAI;IAC5G,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;QACzB,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC5B,WAAW,CAAC,SAAS,CAAC,CAAC;QACvB,qBAAqB,CAAC,SAAS,CAAC,CAAC;QACjC,0BAA0B,CAAC,SAAS,CAAC,CAAC;QACtC,UAAU,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;KACzC;AACH,CAAC;AAED,WAAW,CAAC,QAAQ,GAAG,KAAK,CAAC;AAE7B,MAAM,UAAU,WAAW;IACzB,WAAW,EAAE,CAAC;AAChB,CAAC","file":"taro.js","sourcesContent":["import { EnvContribution, getLegacyBindingContext } from '@visactor/vrender-core';\nimport { loadMathPicker } from '../picker/math-module';\n// import { taroEnvModule } from './contributions/module';\nimport { bindTaroCanvasModules } from '../canvas/contributions/taro/modules';\nimport { bindTaroWindowContribution } from '../window/contributions/taro-contribution';\nimport { TaroEnvContribution } from './contributions/taro-contribution';\nimport type { LegacyBindContainer, LegacyContainer } from '../common/legacy-container';\n\nlet isTaroBound = false;\n\nexport function bindTaroEnv(container: LegacyBindContainer) {\n if (!isTaroBound) {\n isTaroBound = true;\n container.bind(TaroEnvContribution).toSelf().inSingletonScope();\n container.bind(EnvContribution).toService(TaroEnvContribution);\n }\n}\n\nexport function loadTaroEnv(container: LegacyContainer = getLegacyBindingContext(), loadPicker: boolean = true) {\n if (!loadTaroEnv.__loaded) {\n loadTaroEnv.__loaded = true;\n bindTaroEnv(container);\n bindTaroCanvasModules(container);\n bindTaroWindowContribution(container);\n loadPicker && loadMathPicker(container);\n }\n}\n\nloadTaroEnv.__loaded = false;\n\nexport function initTaroEnv() {\n loadTaroEnv();\n}\n"]}
1
+ {"version":3,"sources":["../src/env/taro.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAGxE,MAAM,UAAU,WAAW,CAAC,SAA8B;;IACxD,IAAI,CAAC,CAAA,MAAA,MAAC,SAAiB,EAAC,OAAO,mDAAG,mBAAmB,CAAC,CAAA,EAAE;QACtD,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;QAChE,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;KAChE;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,YAA6B,uBAAuB,EAAE,EAAE,aAAsB,IAAI;IAC5G,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;QACzB,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC5B,WAAW,CAAC,SAAS,CAAC,CAAC;QACvB,qBAAqB,CAAC,SAAS,CAAC,CAAC;QACjC,0BAA0B,CAAC,SAAS,CAAC,CAAC;QACtC,UAAU,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;KACzC;AACH,CAAC;AAED,WAAW,CAAC,QAAQ,GAAG,KAAK,CAAC;AAE7B,MAAM,UAAU,WAAW;IACzB,WAAW,EAAE,CAAC;AAChB,CAAC","file":"taro.js","sourcesContent":["import { EnvContribution, getLegacyBindingContext } from '@visactor/vrender-core';\nimport { loadMathPicker } from '../picker/math-module';\n// import { taroEnvModule } from './contributions/module';\nimport { bindTaroCanvasModules } from '../canvas/contributions/taro/modules';\nimport { bindTaroWindowContribution } from '../window/contributions/taro-contribution';\nimport { TaroEnvContribution } from './contributions/taro-contribution';\nimport type { LegacyBindContainer, LegacyContainer } from '../common/legacy-container';\n\nexport function bindTaroEnv(container: LegacyBindContainer) {\n if (!(container as any).isBound?.(TaroEnvContribution)) {\n container.bind(TaroEnvContribution).toSelf().inSingletonScope();\n container.bind(EnvContribution).toService(TaroEnvContribution);\n }\n}\n\nexport function loadTaroEnv(container: LegacyContainer = getLegacyBindingContext(), loadPicker: boolean = true) {\n if (!loadTaroEnv.__loaded) {\n loadTaroEnv.__loaded = true;\n bindTaroEnv(container);\n bindTaroCanvasModules(container);\n bindTaroWindowContribution(container);\n loadPicker && loadMathPicker(container);\n }\n}\n\nloadTaroEnv.__loaded = false;\n\nexport function initTaroEnv() {\n loadTaroEnv();\n}\n"]}
package/es/env/tt.js CHANGED
@@ -8,10 +8,9 @@ import { loadMathPicker } from "../picker/math-module";
8
8
 
9
9
  import { TTEnvContribution } from "./contributions/tt-contribution";
10
10
 
11
- let isTTBound = !1;
12
-
13
11
  export function bindTTEnv(container) {
14
- isTTBound || (isTTBound = !0, container.bind(TTEnvContribution).toSelf().inSingletonScope(),
12
+ var _a, _b;
13
+ (null === (_b = (_a = container).isBound) || void 0 === _b ? void 0 : _b.call(_a, TTEnvContribution)) || (container.bind(TTEnvContribution).toSelf().inSingletonScope(),
15
14
  container.bind(EnvContribution).toService(TTEnvContribution));
16
15
  }
17
16
 
package/es/env/tt.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/env/tt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGpE,IAAI,SAAS,GAAG,KAAK,CAAC;AAEtB,MAAM,UAAU,SAAS,CAAC,SAA8B;IACtD,IAAI,CAAC,SAAS,EAAE;QACd,SAAS,GAAG,IAAI,CAAC;QACjB,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;QAC9D,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;KAC9D;AACH,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,YAA6B,uBAAuB,EAAE,EAAE,aAAsB,IAAI;IAC1G,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;QACvB,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC1B,SAAS,CAAC,SAAS,CAAC,CAAC;QACrB,mBAAmB,CAAC,SAAS,CAAC,CAAC;QAC/B,wBAAwB,CAAC,SAAS,CAAC,CAAC;QACpC,UAAU,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;KACzC;AACH,CAAC;AAED,SAAS,CAAC,QAAQ,GAAG,KAAK,CAAC;AAE3B,MAAM,UAAU,SAAS;IACvB,SAAS,EAAE,CAAC;AACd,CAAC","file":"tt.js","sourcesContent":["import { EnvContribution, getLegacyBindingContext } from '@visactor/vrender-core';\nimport { bindTTCanvasModules } from '../canvas/contributions/tt/modules';\nimport { bindTTWindowContribution } from '../window/contributions/tt-contribution';\nimport { loadMathPicker } from '../picker/math-module';\nimport { TTEnvContribution } from './contributions/tt-contribution';\nimport type { LegacyBindContainer, LegacyContainer } from '../common/legacy-container';\n\nlet isTTBound = false;\n\nexport function bindTTEnv(container: LegacyBindContainer) {\n if (!isTTBound) {\n isTTBound = true;\n container.bind(TTEnvContribution).toSelf().inSingletonScope();\n container.bind(EnvContribution).toService(TTEnvContribution);\n }\n}\n\nexport function loadTTEnv(container: LegacyContainer = getLegacyBindingContext(), loadPicker: boolean = true) {\n if (!loadTTEnv.__loaded) {\n loadTTEnv.__loaded = true;\n bindTTEnv(container);\n bindTTCanvasModules(container);\n bindTTWindowContribution(container);\n loadPicker && loadMathPicker(container);\n }\n}\n\nloadTTEnv.__loaded = false;\n\nexport function initTTEnv() {\n loadTTEnv();\n}\n"]}
1
+ {"version":3,"sources":["../src/env/tt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGpE,MAAM,UAAU,SAAS,CAAC,SAA8B;;IACtD,IAAI,CAAC,CAAA,MAAA,MAAC,SAAiB,EAAC,OAAO,mDAAG,iBAAiB,CAAC,CAAA,EAAE;QACpD,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;QAC9D,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;KAC9D;AACH,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,YAA6B,uBAAuB,EAAE,EAAE,aAAsB,IAAI;IAC1G,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;QACvB,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC1B,SAAS,CAAC,SAAS,CAAC,CAAC;QACrB,mBAAmB,CAAC,SAAS,CAAC,CAAC;QAC/B,wBAAwB,CAAC,SAAS,CAAC,CAAC;QACpC,UAAU,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;KACzC;AACH,CAAC;AAED,SAAS,CAAC,QAAQ,GAAG,KAAK,CAAC;AAE3B,MAAM,UAAU,SAAS;IACvB,SAAS,EAAE,CAAC;AACd,CAAC","file":"tt.js","sourcesContent":["import { EnvContribution, getLegacyBindingContext } from '@visactor/vrender-core';\nimport { bindTTCanvasModules } from '../canvas/contributions/tt/modules';\nimport { bindTTWindowContribution } from '../window/contributions/tt-contribution';\nimport { loadMathPicker } from '../picker/math-module';\nimport { TTEnvContribution } from './contributions/tt-contribution';\nimport type { LegacyBindContainer, LegacyContainer } from '../common/legacy-container';\n\nexport function bindTTEnv(container: LegacyBindContainer) {\n if (!(container as any).isBound?.(TTEnvContribution)) {\n container.bind(TTEnvContribution).toSelf().inSingletonScope();\n container.bind(EnvContribution).toService(TTEnvContribution);\n }\n}\n\nexport function loadTTEnv(container: LegacyContainer = getLegacyBindingContext(), loadPicker: boolean = true) {\n if (!loadTTEnv.__loaded) {\n loadTTEnv.__loaded = true;\n bindTTEnv(container);\n bindTTCanvasModules(container);\n bindTTWindowContribution(container);\n loadPicker && loadMathPicker(container);\n }\n}\n\nloadTTEnv.__loaded = false;\n\nexport function initTTEnv() {\n loadTTEnv();\n}\n"]}