@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.
- package/cjs/canvas/contributions/browser/canvas.d.ts +17 -0
- package/cjs/canvas/contributions/browser/canvas.js +73 -0
- package/cjs/canvas/contributions/browser/canvas.js.map +1 -0
- package/cjs/canvas/contributions/browser/context.d.ts +174 -0
- package/cjs/canvas/contributions/browser/context.js +493 -0
- package/cjs/canvas/contributions/browser/context.js.map +1 -0
- package/cjs/canvas/contributions/browser/index.d.ts +2 -0
- package/cjs/canvas/contributions/browser/index.js +21 -0
- package/cjs/canvas/contributions/browser/index.js.map +1 -0
- package/cjs/canvas/contributions/browser/modules.d.ts +1 -0
- package/cjs/canvas/contributions/browser/modules.js +10 -0
- package/cjs/canvas/contributions/browser/modules.js.map +1 -0
- package/cjs/canvas/contributions/create-canvas-module.d.ts +2 -0
- package/cjs/canvas/contributions/create-canvas-module.js +17 -0
- package/cjs/canvas/contributions/create-canvas-module.js.map +1 -0
- package/cjs/canvas/contributions/feishu/canvas.d.ts +8 -0
- package/cjs/canvas/contributions/feishu/canvas.js +29 -0
- package/cjs/canvas/contributions/feishu/canvas.js.map +1 -0
- package/cjs/canvas/contributions/feishu/context.d.ts +12 -0
- package/cjs/canvas/contributions/feishu/context.js +56 -0
- package/cjs/canvas/contributions/feishu/context.js.map +1 -0
- package/cjs/canvas/contributions/feishu/index.d.ts +2 -0
- package/cjs/canvas/contributions/feishu/index.js +21 -0
- package/cjs/canvas/contributions/feishu/index.js.map +1 -0
- package/cjs/canvas/contributions/feishu/modules.d.ts +1 -0
- package/cjs/canvas/contributions/feishu/modules.js +10 -0
- package/cjs/canvas/contributions/feishu/modules.js.map +1 -0
- package/cjs/canvas/contributions/lynx/canvas.d.ts +8 -0
- package/cjs/canvas/contributions/lynx/canvas.js +29 -0
- package/cjs/canvas/contributions/lynx/canvas.js.map +1 -0
- package/cjs/canvas/contributions/lynx/context.d.ts +13 -0
- package/cjs/canvas/contributions/lynx/context.js +57 -0
- package/cjs/canvas/contributions/lynx/context.js.map +1 -0
- package/cjs/canvas/contributions/lynx/index.d.ts +2 -0
- package/cjs/canvas/contributions/lynx/index.js +21 -0
- package/cjs/canvas/contributions/lynx/index.js.map +1 -0
- package/cjs/canvas/contributions/lynx/modules.d.ts +1 -0
- package/cjs/canvas/contributions/lynx/modules.js +10 -0
- package/cjs/canvas/contributions/lynx/modules.js.map +1 -0
- package/cjs/canvas/contributions/modules.d.ts +9 -0
- package/cjs/canvas/contributions/modules.js +48 -0
- package/cjs/canvas/contributions/modules.js.map +1 -0
- package/cjs/canvas/contributions/node/canvas.d.ts +8 -1
- package/cjs/canvas/contributions/node/canvas.js +30 -1
- package/cjs/canvas/contributions/node/canvas.js.map +1 -1
- package/cjs/canvas/contributions/node/context.d.ts +7 -1
- package/cjs/canvas/contributions/node/context.js +30 -1
- package/cjs/canvas/contributions/node/context.js.map +1 -1
- package/cjs/canvas/contributions/node/index.d.ts +2 -1
- package/cjs/canvas/contributions/node/index.js +21 -1
- package/cjs/canvas/contributions/node/index.js.map +1 -1
- package/cjs/canvas/contributions/node/modules.d.ts +1 -1
- package/cjs/canvas/contributions/node/modules.js +10 -1
- package/cjs/canvas/contributions/node/modules.js.map +1 -1
- package/cjs/canvas/contributions/taro/canvas.d.ts +8 -0
- package/cjs/canvas/contributions/taro/canvas.js +29 -0
- package/cjs/canvas/contributions/taro/canvas.js.map +1 -0
- package/cjs/canvas/contributions/taro/context.d.ts +32 -0
- package/cjs/canvas/contributions/taro/context.js +68 -0
- package/cjs/canvas/contributions/taro/context.js.map +1 -0
- package/cjs/canvas/contributions/taro/index.d.ts +2 -0
- package/cjs/canvas/contributions/taro/index.js +21 -0
- package/cjs/canvas/contributions/taro/index.js.map +1 -0
- package/cjs/canvas/contributions/taro/modules.d.ts +1 -0
- package/cjs/canvas/contributions/taro/modules.js +10 -0
- package/cjs/canvas/contributions/taro/modules.js.map +1 -0
- package/cjs/canvas/contributions/tt/canvas.d.ts +8 -0
- package/cjs/canvas/contributions/tt/canvas.js +29 -0
- package/cjs/canvas/contributions/tt/canvas.js.map +1 -0
- package/cjs/canvas/contributions/tt/context.d.ts +5 -0
- package/cjs/canvas/contributions/tt/context.js +19 -0
- package/cjs/canvas/contributions/tt/context.js.map +1 -0
- package/cjs/canvas/contributions/tt/index.d.ts +2 -0
- package/cjs/canvas/contributions/tt/index.js +21 -0
- package/cjs/canvas/contributions/tt/index.js.map +1 -0
- package/cjs/canvas/contributions/tt/modules.d.ts +1 -0
- package/cjs/canvas/contributions/tt/modules.js +10 -0
- package/cjs/canvas/contributions/tt/modules.js.map +1 -0
- package/cjs/canvas/contributions/wx/canvas.d.ts +8 -0
- package/cjs/canvas/contributions/wx/canvas.js +29 -0
- package/cjs/canvas/contributions/wx/canvas.js.map +1 -0
- package/cjs/canvas/contributions/wx/context.d.ts +7 -0
- package/cjs/canvas/contributions/wx/context.js +24 -0
- package/cjs/canvas/contributions/wx/context.js.map +1 -0
- package/cjs/canvas/contributions/wx/index.d.ts +2 -0
- package/cjs/canvas/contributions/wx/index.js +21 -0
- package/cjs/canvas/contributions/wx/index.js.map +1 -0
- package/cjs/canvas/contributions/wx/modules.d.ts +1 -0
- package/cjs/canvas/contributions/wx/modules.js +10 -0
- package/cjs/canvas/contributions/wx/modules.js.map +1 -0
- package/cjs/canvas/index.d.ts +1 -1
- package/cjs/canvas/index.js +21 -1
- package/cjs/canvas/index.js.map +1 -1
- package/cjs/env/contributions/browser-contribution.d.ts +42 -0
- package/cjs/env/contributions/browser-contribution.js +197 -0
- package/cjs/env/contributions/browser-contribution.js.map +1 -0
- package/cjs/env/contributions/feishu-contribution.d.ts +41 -0
- package/cjs/env/contributions/feishu-contribution.js +116 -0
- package/cjs/env/contributions/feishu-contribution.js.map +1 -0
- package/cjs/env/contributions/lynx-contribution.d.ts +41 -0
- package/cjs/env/contributions/lynx-contribution.js +136 -0
- package/cjs/env/contributions/lynx-contribution.js.map +1 -0
- package/cjs/env/contributions/module.d.ts +9 -1
- package/cjs/env/contributions/module.js +33 -1
- package/cjs/env/contributions/module.js.map +1 -1
- package/cjs/env/contributions/node-contribution.d.ts +49 -1
- package/cjs/env/contributions/node-contribution.js +95 -1
- package/cjs/env/contributions/node-contribution.js.map +1 -1
- package/cjs/env/contributions/taro-contribution.d.ts +57 -0
- package/cjs/env/contributions/taro-contribution.js +142 -0
- package/cjs/env/contributions/taro-contribution.js.map +1 -0
- package/cjs/env/contributions/wx-contribution.d.ts +40 -0
- package/cjs/env/contributions/wx-contribution.js +131 -0
- package/cjs/env/contributions/wx-contribution.js.map +1 -0
- package/cjs/env/index.d.ts +1 -0
- package/cjs/env/index.js +21 -0
- package/cjs/env/index.js.map +1 -0
- package/cjs/env/modules.d.ts +8 -0
- package/cjs/env/modules.js +47 -0
- package/cjs/env/modules.js.map +1 -0
- package/cjs/event/extension/drag.d.ts +9 -0
- package/cjs/event/extension/drag.js +54 -0
- package/cjs/event/extension/drag.js.map +1 -0
- package/cjs/event/extension/gesture.d.ts +38 -0
- package/cjs/event/extension/gesture.js +181 -0
- package/cjs/event/extension/gesture.js.map +1 -0
- package/cjs/event/extension/index.d.ts +3 -0
- package/cjs/event/extension/index.js +24 -0
- package/cjs/event/extension/index.js.map +1 -0
- package/cjs/index-node.d.ts +1 -2
- package/cjs/index-node.js +1 -1
- package/cjs/index-node.js.map +1 -1
- package/cjs/index.d.ts +7 -2
- package/cjs/index.js +19 -3
- package/cjs/index.js.map +1 -1
- package/cjs/jsx/graphicType.d.ts +171 -0
- package/cjs/jsx/graphicType.js +133 -0
- package/cjs/jsx/graphicType.js.map +1 -0
- package/cjs/jsx/index.d.ts +2 -0
- package/cjs/jsx/index.js +21 -0
- package/cjs/jsx/index.js.map +1 -0
- package/cjs/jsx/jsx-classic.d.ts +3 -0
- package/cjs/jsx/jsx-classic.js +58 -0
- package/cjs/jsx/jsx-classic.js.map +1 -0
- package/cjs/picker/canvas-picker-service.d.ts +28 -0
- package/cjs/picker/canvas-picker-service.js +90 -0
- package/cjs/picker/canvas-picker-service.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/arc-picker.d.ts +9 -0
- package/cjs/picker/contributions/canvas-picker/arc-picker.js +51 -0
- package/cjs/picker/contributions/canvas-picker/arc-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/arc3d-picker.d.ts +10 -0
- package/cjs/picker/contributions/canvas-picker/arc3d-picker.js +50 -0
- package/cjs/picker/contributions/canvas-picker/arc3d-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/area-picker.d.ts +9 -0
- package/cjs/picker/contributions/canvas-picker/area-picker.js +45 -0
- package/cjs/picker/contributions/canvas-picker/area-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/base-picker.d.ts +4 -0
- package/cjs/picker/contributions/canvas-picker/base-picker.js +18 -0
- package/cjs/picker/contributions/canvas-picker/base-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/circle-picker.d.ts +9 -0
- package/cjs/picker/contributions/canvas-picker/circle-picker.js +50 -0
- package/cjs/picker/contributions/canvas-picker/circle-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/glyph-picker.d.ts +9 -0
- package/cjs/picker/contributions/canvas-picker/glyph-picker.js +44 -0
- package/cjs/picker/contributions/canvas-picker/glyph-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/group-picker.d.ts +7 -0
- package/cjs/picker/contributions/canvas-picker/group-picker.js +26 -0
- package/cjs/picker/contributions/canvas-picker/group-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/image-picker.d.ts +7 -0
- package/cjs/picker/contributions/canvas-picker/image-picker.js +27 -0
- package/cjs/picker/contributions/canvas-picker/image-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/line-picker.d.ts +10 -0
- package/cjs/picker/contributions/canvas-picker/line-picker.js +56 -0
- package/cjs/picker/contributions/canvas-picker/line-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/module.d.ts +3 -0
- package/cjs/picker/contributions/canvas-picker/module.js +46 -0
- package/cjs/picker/contributions/canvas-picker/module.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/path-picker.d.ts +10 -0
- package/cjs/picker/contributions/canvas-picker/path-picker.js +57 -0
- package/cjs/picker/contributions/canvas-picker/path-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/polygon-picker.d.ts +9 -0
- package/cjs/picker/contributions/canvas-picker/polygon-picker.js +49 -0
- package/cjs/picker/contributions/canvas-picker/polygon-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.d.ts +10 -0
- package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.js +51 -0
- package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/rect-picker.d.ts +9 -0
- package/cjs/picker/contributions/canvas-picker/rect-picker.js +62 -0
- package/cjs/picker/contributions/canvas-picker/rect-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/rect3d-picker.d.ts +10 -0
- package/cjs/picker/contributions/canvas-picker/rect3d-picker.js +50 -0
- package/cjs/picker/contributions/canvas-picker/rect3d-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/richtext-picker.d.ts +9 -0
- package/cjs/picker/contributions/canvas-picker/richtext-picker.js +33 -0
- package/cjs/picker/contributions/canvas-picker/richtext-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/symbol-picker.d.ts +10 -0
- package/cjs/picker/contributions/canvas-picker/symbol-picker.js +59 -0
- package/cjs/picker/contributions/canvas-picker/symbol-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/text-picker.d.ts +10 -0
- package/cjs/picker/contributions/canvas-picker/text-picker.js +58 -0
- package/cjs/picker/contributions/canvas-picker/text-picker.js.map +1 -0
- package/cjs/picker/contributions/constants.d.ts +29 -0
- package/cjs/picker/contributions/constants.js +21 -0
- package/cjs/picker/contributions/constants.js.map +1 -0
- package/cjs/picker/contributions/math-picker/arc-picker.d.ts +9 -0
- package/cjs/picker/contributions/math-picker/arc-picker.js +51 -0
- package/cjs/picker/contributions/math-picker/arc-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/area-picker.d.ts +9 -0
- package/cjs/picker/contributions/math-picker/area-picker.js +45 -0
- package/cjs/picker/contributions/math-picker/area-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/circle-picker.d.ts +9 -0
- package/cjs/picker/contributions/math-picker/circle-picker.js +50 -0
- package/cjs/picker/contributions/math-picker/circle-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/glyph-picker.d.ts +9 -0
- package/cjs/picker/contributions/math-picker/glyph-picker.js +44 -0
- package/cjs/picker/contributions/math-picker/glyph-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/line-picker.d.ts +9 -0
- package/cjs/picker/contributions/math-picker/line-picker.js +50 -0
- package/cjs/picker/contributions/math-picker/line-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/module.d.ts +3 -0
- package/cjs/picker/contributions/math-picker/module.js +32 -0
- package/cjs/picker/contributions/math-picker/module.js.map +1 -0
- package/cjs/picker/contributions/math-picker/path-picker.d.ts +9 -0
- package/cjs/picker/contributions/math-picker/path-picker.js +50 -0
- package/cjs/picker/contributions/math-picker/path-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/polygon-picker.d.ts +9 -0
- package/cjs/picker/contributions/math-picker/polygon-picker.js +49 -0
- package/cjs/picker/contributions/math-picker/polygon-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/rect-picker.d.ts +9 -0
- package/cjs/picker/contributions/math-picker/rect-picker.js +62 -0
- package/cjs/picker/contributions/math-picker/rect-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/symbol-picker.d.ts +9 -0
- package/cjs/picker/contributions/math-picker/symbol-picker.js +50 -0
- package/cjs/picker/contributions/math-picker/symbol-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/text-picker.d.ts +7 -0
- package/cjs/picker/contributions/math-picker/text-picker.js +26 -0
- package/cjs/picker/contributions/math-picker/text-picker.js.map +1 -0
- package/cjs/picker/index.d.ts +1 -0
- package/cjs/picker/index.js +21 -0
- package/cjs/picker/index.js.map +1 -0
- package/cjs/picker/math-picker-service.d.ts +16 -0
- package/cjs/picker/math-picker-service.js +50 -0
- package/cjs/picker/math-picker-service.js.map +1 -0
- package/cjs/picker/module.d.ts +6 -0
- package/cjs/picker/module.js +30 -0
- package/cjs/picker/module.js.map +1 -0
- package/cjs/render/contributions/rough/config.js +1 -1
- package/cjs/render/contributions/rough/module.d.ts +1 -1
- package/cjs/render/contributions/rough/module.js +10 -10
- package/cjs/render/contributions/rough/module.js.map +1 -1
- package/cjs/render/contributions/rough/rough-arc.d.ts +1 -1
- package/cjs/render/contributions/rough/rough-arc.js +10 -8
- package/cjs/render/contributions/rough/rough-arc.js.map +1 -1
- package/cjs/render/contributions/rough/rough-area.d.ts +2 -2
- package/cjs/render/contributions/rough/rough-area.js +6 -6
- package/cjs/render/contributions/rough/rough-area.js.map +1 -1
- package/cjs/render/contributions/rough/rough-circle.d.ts +1 -1
- package/cjs/render/contributions/rough/rough-circle.js +6 -6
- package/cjs/render/contributions/rough/rough-circle.js.map +1 -1
- package/cjs/render/contributions/rough/rough-line.d.ts +2 -2
- package/cjs/render/contributions/rough/rough-line.js +6 -6
- package/cjs/render/contributions/rough/rough-line.js.map +1 -1
- package/cjs/render/contributions/rough/rough-path.d.ts +1 -1
- package/cjs/render/contributions/rough/rough-path.js +6 -6
- package/cjs/render/contributions/rough/rough-path.js.map +1 -1
- package/cjs/render/contributions/rough/rough-rect.d.ts +1 -1
- package/cjs/render/contributions/rough/rough-rect.js +6 -6
- package/cjs/render/contributions/rough/rough-rect.js.map +1 -1
- package/cjs/render/contributions/rough/rough-symbol.d.ts +2 -2
- package/cjs/render/contributions/rough/rough-symbol.js +8 -8
- package/cjs/render/contributions/rough/rough-symbol.js.map +1 -1
- package/cjs/window/contributions/browser-contribution.d.ts +48 -0
- package/cjs/window/contributions/browser-contribution.js +176 -0
- package/cjs/window/contributions/browser-contribution.js.map +1 -0
- package/cjs/window/contributions/feishu-contribution.d.ts +46 -0
- package/cjs/window/contributions/feishu-contribution.js +157 -0
- package/cjs/window/contributions/feishu-contribution.js.map +1 -0
- package/cjs/window/contributions/lynx-contribution.d.ts +46 -0
- package/cjs/window/contributions/lynx-contribution.js +157 -0
- package/cjs/window/contributions/lynx-contribution.js.map +1 -0
- package/cjs/window/contributions/modules.d.ts +8 -1
- package/cjs/window/contributions/modules.js +29 -1
- package/cjs/window/contributions/modules.js.map +1 -1
- package/cjs/window/contributions/native-contribution.js +3 -0
- package/cjs/window/contributions/native-contribution.js.map +1 -0
- package/cjs/window/contributions/node-contribution.d.ts +39 -1
- package/cjs/window/contributions/node-contribution.js +109 -1
- package/cjs/window/contributions/node-contribution.js.map +1 -1
- package/cjs/window/contributions/taro-contribution.d.ts +46 -0
- package/cjs/window/contributions/taro-contribution.js +164 -0
- package/cjs/window/contributions/taro-contribution.js.map +1 -0
- package/cjs/window/contributions/wx-contribution.d.ts +46 -0
- package/cjs/window/contributions/wx-contribution.js +159 -0
- package/cjs/window/contributions/wx-contribution.js.map +1 -0
- package/cjs/window/index.d.ts +1 -0
- package/cjs/window/index.js +21 -0
- package/cjs/window/index.js.map +1 -0
- package/dist/index.js +22974 -2106
- package/dist/index.min.js +1 -1
- package/es/canvas/contributions/browser/canvas.d.ts +17 -0
- package/es/canvas/contributions/browser/canvas.js +70 -0
- package/es/canvas/contributions/browser/canvas.js.map +1 -0
- package/es/canvas/contributions/browser/context.d.ts +174 -0
- package/es/canvas/contributions/browser/context.js +488 -0
- package/es/canvas/contributions/browser/context.js.map +1 -0
- package/es/canvas/contributions/browser/index.d.ts +2 -0
- package/es/canvas/contributions/browser/index.js +4 -0
- package/es/canvas/contributions/browser/index.js.map +1 -0
- package/es/canvas/contributions/browser/modules.d.ts +1 -0
- package/es/canvas/contributions/browser/modules.js +8 -0
- package/es/canvas/contributions/browser/modules.js.map +1 -0
- package/es/canvas/contributions/create-canvas-module.d.ts +2 -0
- package/es/canvas/contributions/create-canvas-module.js +9 -0
- package/es/canvas/contributions/create-canvas-module.js.map +1 -0
- package/es/canvas/contributions/feishu/canvas.d.ts +8 -0
- package/es/canvas/contributions/feishu/canvas.js +26 -0
- package/es/canvas/contributions/feishu/canvas.js.map +1 -0
- package/es/canvas/contributions/feishu/context.d.ts +12 -0
- package/es/canvas/contributions/feishu/context.js +53 -0
- package/es/canvas/contributions/feishu/context.js.map +1 -0
- package/es/canvas/contributions/feishu/index.d.ts +2 -0
- package/es/canvas/contributions/feishu/index.js +4 -0
- package/es/canvas/contributions/feishu/index.js.map +1 -0
- package/es/canvas/contributions/feishu/modules.d.ts +1 -0
- package/es/canvas/contributions/feishu/modules.js +8 -0
- package/es/canvas/contributions/feishu/modules.js.map +1 -0
- package/es/canvas/contributions/lynx/canvas.d.ts +8 -0
- package/es/canvas/contributions/lynx/canvas.js +26 -0
- package/es/canvas/contributions/lynx/canvas.js.map +1 -0
- package/es/canvas/contributions/lynx/context.d.ts +13 -0
- package/es/canvas/contributions/lynx/context.js +54 -0
- package/es/canvas/contributions/lynx/context.js.map +1 -0
- package/es/canvas/contributions/lynx/index.d.ts +2 -0
- package/es/canvas/contributions/lynx/index.js +4 -0
- package/es/canvas/contributions/lynx/index.js.map +1 -0
- package/es/canvas/contributions/lynx/modules.d.ts +1 -0
- package/es/canvas/contributions/lynx/modules.js +8 -0
- package/es/canvas/contributions/lynx/modules.js.map +1 -0
- package/es/canvas/contributions/modules.d.ts +9 -0
- package/es/canvas/contributions/modules.js +48 -0
- package/es/canvas/contributions/modules.js.map +1 -0
- package/es/canvas/contributions/node/canvas.d.ts +8 -1
- package/es/canvas/contributions/node/canvas.js +29 -1
- package/es/canvas/contributions/node/canvas.js.map +1 -1
- package/es/canvas/contributions/node/context.d.ts +7 -1
- package/es/canvas/contributions/node/context.js +29 -1
- package/es/canvas/contributions/node/context.js.map +1 -1
- package/es/canvas/contributions/node/index.d.ts +2 -1
- package/es/canvas/contributions/node/index.js +4 -1
- package/es/canvas/contributions/node/index.js.map +1 -1
- package/es/canvas/contributions/node/modules.d.ts +1 -1
- package/es/canvas/contributions/node/modules.js +8 -1
- package/es/canvas/contributions/node/modules.js.map +1 -1
- package/es/canvas/contributions/taro/canvas.d.ts +8 -0
- package/es/canvas/contributions/taro/canvas.js +28 -0
- package/es/canvas/contributions/taro/canvas.js.map +1 -0
- package/es/canvas/contributions/taro/context.d.ts +32 -0
- package/es/canvas/contributions/taro/context.js +64 -0
- package/es/canvas/contributions/taro/context.js.map +1 -0
- package/es/canvas/contributions/taro/index.d.ts +2 -0
- package/es/canvas/contributions/taro/index.js +4 -0
- package/es/canvas/contributions/taro/index.js.map +1 -0
- package/es/canvas/contributions/taro/modules.d.ts +1 -0
- package/es/canvas/contributions/taro/modules.js +8 -0
- package/es/canvas/contributions/taro/modules.js.map +1 -0
- package/es/canvas/contributions/tt/canvas.d.ts +8 -0
- package/es/canvas/contributions/tt/canvas.js +26 -0
- package/es/canvas/contributions/tt/canvas.js.map +1 -0
- package/es/canvas/contributions/tt/context.d.ts +5 -0
- package/es/canvas/contributions/tt/context.js +16 -0
- package/es/canvas/contributions/tt/context.js.map +1 -0
- package/es/canvas/contributions/tt/index.d.ts +2 -0
- package/es/canvas/contributions/tt/index.js +4 -0
- package/es/canvas/contributions/tt/index.js.map +1 -0
- package/es/canvas/contributions/tt/modules.d.ts +1 -0
- package/es/canvas/contributions/tt/modules.js +8 -0
- package/es/canvas/contributions/tt/modules.js.map +1 -0
- package/es/canvas/contributions/wx/canvas.d.ts +8 -0
- package/es/canvas/contributions/wx/canvas.js +26 -0
- package/es/canvas/contributions/wx/canvas.js.map +1 -0
- package/es/canvas/contributions/wx/context.d.ts +7 -0
- package/es/canvas/contributions/wx/context.js +21 -0
- package/es/canvas/contributions/wx/context.js.map +1 -0
- package/es/canvas/contributions/wx/index.d.ts +2 -0
- package/es/canvas/contributions/wx/index.js +4 -0
- package/es/canvas/contributions/wx/index.js.map +1 -0
- package/es/canvas/contributions/wx/modules.d.ts +1 -0
- package/es/canvas/contributions/wx/modules.js +8 -0
- package/es/canvas/contributions/wx/modules.js.map +1 -0
- package/es/canvas/index.d.ts +1 -1
- package/es/canvas/index.js +2 -1
- package/es/canvas/index.js.map +1 -1
- package/es/env/contributions/browser-contribution.d.ts +42 -0
- package/es/env/contributions/browser-contribution.js +192 -0
- package/es/env/contributions/browser-contribution.js.map +1 -0
- package/es/env/contributions/feishu-contribution.d.ts +41 -0
- package/es/env/contributions/feishu-contribution.js +111 -0
- package/es/env/contributions/feishu-contribution.js.map +1 -0
- package/es/env/contributions/lynx-contribution.d.ts +41 -0
- package/es/env/contributions/lynx-contribution.js +129 -0
- package/es/env/contributions/lynx-contribution.js.map +1 -0
- package/es/env/contributions/module.d.ts +9 -1
- package/es/env/contributions/module.js +51 -1
- package/es/env/contributions/module.js.map +1 -1
- package/es/env/contributions/node-contribution.d.ts +49 -1
- package/es/env/contributions/node-contribution.js +90 -1
- package/es/env/contributions/node-contribution.js.map +1 -1
- package/es/env/contributions/taro-contribution.d.ts +57 -0
- package/es/env/contributions/taro-contribution.js +137 -0
- package/es/env/contributions/taro-contribution.js.map +1 -0
- package/es/env/contributions/wx-contribution.d.ts +40 -0
- package/es/env/contributions/wx-contribution.js +126 -0
- package/es/env/contributions/wx-contribution.js.map +1 -0
- package/es/env/index.d.ts +1 -0
- package/es/env/index.js +2 -0
- package/es/env/index.js.map +1 -0
- package/es/env/modules.d.ts +8 -0
- package/es/env/modules.js +46 -0
- package/es/env/modules.js.map +1 -0
- package/es/event/extension/drag.d.ts +9 -0
- package/es/event/extension/drag.js +46 -0
- package/es/event/extension/drag.js.map +1 -0
- package/es/event/extension/gesture.d.ts +38 -0
- package/es/event/extension/gesture.js +177 -0
- package/es/event/extension/gesture.js.map +1 -0
- package/es/event/extension/index.d.ts +3 -0
- package/es/event/extension/index.js +6 -0
- package/es/event/extension/index.js.map +1 -0
- package/es/index-node.d.ts +1 -2
- package/es/index-node.js +0 -2
- package/es/index-node.js.map +1 -1
- package/es/index.d.ts +7 -2
- package/es/index.js +12 -2
- package/es/index.js.map +1 -1
- package/es/jsx/graphicType.d.ts +171 -0
- package/es/jsx/graphicType.js +126 -0
- package/es/jsx/graphicType.js.map +1 -0
- package/es/jsx/index.d.ts +2 -0
- package/es/jsx/index.js +4 -0
- package/es/jsx/index.js.map +1 -0
- package/es/jsx/jsx-classic.d.ts +3 -0
- package/es/jsx/jsx-classic.js +56 -0
- package/es/jsx/jsx-classic.js.map +1 -0
- package/es/picker/canvas-picker-service.d.ts +28 -0
- package/es/picker/canvas-picker-service.js +78 -0
- package/es/picker/canvas-picker-service.js.map +1 -0
- package/es/picker/contributions/canvas-picker/arc-picker.d.ts +9 -0
- package/es/picker/contributions/canvas-picker/arc-picker.js +45 -0
- package/es/picker/contributions/canvas-picker/arc-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/arc3d-picker.d.ts +10 -0
- package/es/picker/contributions/canvas-picker/arc3d-picker.js +46 -0
- package/es/picker/contributions/canvas-picker/arc3d-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/area-picker.d.ts +9 -0
- package/es/picker/contributions/canvas-picker/area-picker.js +39 -0
- package/es/picker/contributions/canvas-picker/area-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/base-picker.d.ts +4 -0
- package/es/picker/contributions/canvas-picker/base-picker.js +14 -0
- package/es/picker/contributions/canvas-picker/base-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/circle-picker.d.ts +9 -0
- package/es/picker/contributions/canvas-picker/circle-picker.js +44 -0
- package/es/picker/contributions/canvas-picker/circle-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/glyph-picker.d.ts +9 -0
- package/es/picker/contributions/canvas-picker/glyph-picker.js +38 -0
- package/es/picker/contributions/canvas-picker/glyph-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/group-picker.d.ts +7 -0
- package/es/picker/contributions/canvas-picker/group-picker.js +21 -0
- package/es/picker/contributions/canvas-picker/group-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/image-picker.d.ts +7 -0
- package/es/picker/contributions/canvas-picker/image-picker.js +22 -0
- package/es/picker/contributions/canvas-picker/image-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/line-picker.d.ts +10 -0
- package/es/picker/contributions/canvas-picker/line-picker.js +52 -0
- package/es/picker/contributions/canvas-picker/line-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/module.d.ts +3 -0
- package/es/picker/contributions/canvas-picker/module.js +64 -0
- package/es/picker/contributions/canvas-picker/module.js.map +1 -0
- package/es/picker/contributions/canvas-picker/path-picker.d.ts +10 -0
- package/es/picker/contributions/canvas-picker/path-picker.js +53 -0
- package/es/picker/contributions/canvas-picker/path-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/polygon-picker.d.ts +9 -0
- package/es/picker/contributions/canvas-picker/polygon-picker.js +43 -0
- package/es/picker/contributions/canvas-picker/polygon-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/pyramid3d-picker.d.ts +10 -0
- package/es/picker/contributions/canvas-picker/pyramid3d-picker.js +47 -0
- package/es/picker/contributions/canvas-picker/pyramid3d-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/rect-picker.d.ts +9 -0
- package/es/picker/contributions/canvas-picker/rect-picker.js +59 -0
- package/es/picker/contributions/canvas-picker/rect-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/rect3d-picker.d.ts +10 -0
- package/es/picker/contributions/canvas-picker/rect3d-picker.js +50 -0
- package/es/picker/contributions/canvas-picker/rect3d-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/richtext-picker.d.ts +9 -0
- package/es/picker/contributions/canvas-picker/richtext-picker.js +27 -0
- package/es/picker/contributions/canvas-picker/richtext-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/symbol-picker.d.ts +10 -0
- package/es/picker/contributions/canvas-picker/symbol-picker.js +55 -0
- package/es/picker/contributions/canvas-picker/symbol-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/text-picker.d.ts +10 -0
- package/es/picker/contributions/canvas-picker/text-picker.js +52 -0
- package/es/picker/contributions/canvas-picker/text-picker.js.map +1 -0
- package/es/picker/contributions/constants.d.ts +29 -0
- package/es/picker/contributions/constants.js +58 -0
- package/es/picker/contributions/constants.js.map +1 -0
- package/es/picker/contributions/math-picker/arc-picker.d.ts +9 -0
- package/es/picker/contributions/math-picker/arc-picker.js +45 -0
- package/es/picker/contributions/math-picker/arc-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/area-picker.d.ts +9 -0
- package/es/picker/contributions/math-picker/area-picker.js +39 -0
- package/es/picker/contributions/math-picker/area-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/circle-picker.d.ts +9 -0
- package/es/picker/contributions/math-picker/circle-picker.js +44 -0
- package/es/picker/contributions/math-picker/circle-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/glyph-picker.d.ts +9 -0
- package/es/picker/contributions/math-picker/glyph-picker.js +38 -0
- package/es/picker/contributions/math-picker/glyph-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/line-picker.d.ts +9 -0
- package/es/picker/contributions/math-picker/line-picker.js +44 -0
- package/es/picker/contributions/math-picker/line-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/module.d.ts +3 -0
- package/es/picker/contributions/math-picker/module.js +43 -0
- package/es/picker/contributions/math-picker/module.js.map +1 -0
- package/es/picker/contributions/math-picker/path-picker.d.ts +9 -0
- package/es/picker/contributions/math-picker/path-picker.js +44 -0
- package/es/picker/contributions/math-picker/path-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/polygon-picker.d.ts +9 -0
- package/es/picker/contributions/math-picker/polygon-picker.js +43 -0
- package/es/picker/contributions/math-picker/polygon-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/rect-picker.d.ts +9 -0
- package/es/picker/contributions/math-picker/rect-picker.js +59 -0
- package/es/picker/contributions/math-picker/rect-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/symbol-picker.d.ts +9 -0
- package/es/picker/contributions/math-picker/symbol-picker.js +44 -0
- package/es/picker/contributions/math-picker/symbol-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/text-picker.d.ts +7 -0
- package/es/picker/contributions/math-picker/text-picker.js +21 -0
- package/es/picker/contributions/math-picker/text-picker.js.map +1 -0
- package/es/picker/index.d.ts +1 -0
- package/es/picker/index.js +2 -0
- package/es/picker/index.js.map +1 -0
- package/es/picker/math-picker-service.d.ts +16 -0
- package/es/picker/math-picker-service.js +44 -0
- package/es/picker/math-picker-service.js.map +1 -0
- package/es/picker/module.d.ts +6 -0
- package/es/picker/module.js +28 -0
- package/es/picker/module.js.map +1 -0
- package/es/render/contributions/rough/config.js +1 -1
- package/es/render/contributions/rough/module.d.ts +1 -1
- package/es/render/contributions/rough/module.js +2 -4
- package/es/render/contributions/rough/module.js.map +1 -1
- package/es/render/contributions/rough/rough-arc.d.ts +1 -1
- package/es/render/contributions/rough/rough-arc.js +3 -4
- package/es/render/contributions/rough/rough-arc.js.map +1 -1
- package/es/render/contributions/rough/rough-area.d.ts +2 -2
- package/es/render/contributions/rough/rough-area.js +2 -4
- package/es/render/contributions/rough/rough-area.js.map +1 -1
- package/es/render/contributions/rough/rough-circle.d.ts +1 -1
- package/es/render/contributions/rough/rough-circle.js +2 -4
- package/es/render/contributions/rough/rough-circle.js.map +1 -1
- package/es/render/contributions/rough/rough-line.d.ts +2 -2
- package/es/render/contributions/rough/rough-line.js +2 -4
- package/es/render/contributions/rough/rough-line.js.map +1 -1
- package/es/render/contributions/rough/rough-path.d.ts +1 -1
- package/es/render/contributions/rough/rough-path.js +2 -4
- package/es/render/contributions/rough/rough-path.js.map +1 -1
- package/es/render/contributions/rough/rough-rect.d.ts +1 -1
- package/es/render/contributions/rough/rough-rect.js +2 -4
- package/es/render/contributions/rough/rough-rect.js.map +1 -1
- package/es/render/contributions/rough/rough-symbol.d.ts +2 -2
- package/es/render/contributions/rough/rough-symbol.js +2 -4
- package/es/render/contributions/rough/rough-symbol.js.map +1 -1
- package/es/window/contributions/browser-contribution.d.ts +48 -0
- package/es/window/contributions/browser-contribution.js +172 -0
- package/es/window/contributions/browser-contribution.js.map +1 -0
- package/es/window/contributions/feishu-contribution.d.ts +46 -0
- package/es/window/contributions/feishu-contribution.js +153 -0
- package/es/window/contributions/feishu-contribution.js.map +1 -0
- package/es/window/contributions/lynx-contribution.d.ts +46 -0
- package/es/window/contributions/lynx-contribution.js +153 -0
- package/es/window/contributions/lynx-contribution.js.map +1 -0
- package/es/window/contributions/modules.d.ts +8 -1
- package/es/window/contributions/modules.js +47 -1
- package/es/window/contributions/modules.js.map +1 -1
- package/es/window/contributions/native-contribution.js +3 -0
- package/es/window/contributions/native-contribution.js.map +1 -0
- package/es/window/contributions/node-contribution.d.ts +39 -1
- package/es/window/contributions/node-contribution.js +105 -1
- package/es/window/contributions/node-contribution.js.map +1 -1
- package/es/window/contributions/taro-contribution.d.ts +46 -0
- package/es/window/contributions/taro-contribution.js +160 -0
- package/es/window/contributions/taro-contribution.js.map +1 -0
- package/es/window/contributions/wx-contribution.d.ts +46 -0
- package/es/window/contributions/wx-contribution.js +155 -0
- package/es/window/contributions/wx-contribution.js.map +1 -0
- package/es/window/index.d.ts +1 -0
- package/es/window/index.js +2 -0
- package/es/window/index.js.map +1 -0
- package/package.json +4 -6
- package/cjs/canvas/contributions/canvas-module.js +0 -1
- package/cjs/canvas/contributions/canvas-module.js.map +0 -1
- package/es/canvas/contributions/canvas-module.js +0 -1
- package/es/canvas/contributions/canvas-module.js.map +0 -1
- /package/cjs/{canvas/contributions/canvas-module.d.ts → window/contributions/native-contribution.d.ts} +0 -0
- /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';
|
package/cjs/env/index.js
ADDED
|
@@ -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,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
|