@visactor/vrender-core 1.1.0-alpha.24 → 1.1.0-alpha.26
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/common/event-listener-manager.js +1 -2
- package/cjs/common/event-transformer.js +2 -1
- package/cjs/common/performance-raf.js +1 -1
- package/cjs/common/xml/is-xml.d.ts +2 -0
- package/cjs/common/xml/is-xml.js +14 -0
- package/cjs/common/xml/is-xml.js.map +1 -0
- package/cjs/common/xml/parser.d.ts +2 -2
- package/cjs/common/xml/parser.js +14 -11
- package/cjs/common/xml/parser.js.map +1 -1
- package/cjs/container.d.ts +2 -0
- package/cjs/container.js +50 -0
- package/cjs/container.js.map +1 -0
- package/cjs/core/graphic-utils.js +1 -2
- package/cjs/core/layer-service.js +2 -1
- package/cjs/core/stage.d.ts +0 -9
- package/cjs/core/stage.js +11 -29
- package/cjs/core/stage.js.map +1 -1
- package/cjs/entries/miniapp.d.ts +0 -1
- package/cjs/entries/miniapp.js +1 -5
- package/cjs/entries/miniapp.js.map +1 -1
- package/cjs/entries/node.d.ts +0 -1
- package/cjs/entries/node.js +1 -5
- package/cjs/entries/node.js.map +1 -1
- package/cjs/env.d.ts +1 -0
- package/cjs/env.js +25 -0
- package/cjs/env.js.map +1 -0
- package/cjs/event/public-constant.d.ts +7 -0
- package/cjs/event/public-constant.js +100 -0
- package/cjs/event/public-constant.js.map +1 -0
- package/cjs/event/util.d.ts +1 -1
- package/cjs/graphic/base.d.ts +2 -0
- package/cjs/graphic/base.js +15 -0
- package/cjs/graphic/base.js.map +1 -0
- package/cjs/graphic/creator.d.ts +16 -0
- package/cjs/graphic/creator.js +160 -0
- package/cjs/graphic/creator.js.map +1 -0
- package/cjs/graphic/glyph.js +4 -8
- package/cjs/graphic/glyph.js.map +1 -1
- package/cjs/graphic/graphic-service/graphic-service.d.ts +0 -1
- package/cjs/graphic/graphic-service/graphic-service.js +1 -8
- package/cjs/graphic/graphic-service/graphic-service.js.map +1 -1
- package/cjs/graphic/graphic.d.ts +19 -29
- package/cjs/graphic/graphic.js +123 -201
- package/cjs/graphic/graphic.js.map +1 -1
- package/cjs/graphic/group.d.ts +1 -3
- package/cjs/graphic/group.js +22 -28
- package/cjs/graphic/group.js.map +1 -1
- package/cjs/graphic/modules.d.ts +16 -0
- package/cjs/graphic/modules.js +150 -0
- package/cjs/graphic/modules.js.map +1 -0
- package/cjs/graphic/node-tree.d.ts +3 -3
- package/cjs/graphic/node-tree.js +1 -0
- package/cjs/graphic/node-tree.js.map +1 -1
- package/cjs/graphic/state/shared-state-refresh.js +11 -32
- package/cjs/graphic/state/shared-state-refresh.js.map +1 -1
- package/cjs/graphic/state/shared-state-scope.d.ts +2 -5
- package/cjs/graphic/state/shared-state-scope.js +8 -27
- package/cjs/graphic/state/shared-state-scope.js.map +1 -1
- package/cjs/graphic/state/state-definition-compiler.js +4 -5
- package/cjs/graphic/state/state-definition-compiler.js.map +1 -1
- package/cjs/graphic/state/state-definition.d.ts +2 -5
- package/cjs/graphic/state/state-definition.js.map +1 -1
- package/cjs/graphic/state/state-engine.d.ts +0 -5
- package/cjs/graphic/state/state-engine.js +20 -70
- package/cjs/graphic/state/state-engine.js.map +1 -1
- package/cjs/graphic/state/state-transition-orchestrator.d.ts +7 -9
- package/cjs/graphic/state/state-transition-orchestrator.js +10 -13
- package/cjs/graphic/state/state-transition-orchestrator.js.map +1 -1
- package/cjs/graphic/tools.js +3 -3
- package/cjs/graphic/tools.js.map +1 -1
- package/cjs/index.js.map +1 -1
- package/cjs/interface/graphic/group.d.ts +0 -2
- package/cjs/interface/graphic/group.js.map +1 -1
- package/cjs/interface/graphic.d.ts +1 -5
- package/cjs/interface/graphic.js.map +1 -1
- package/cjs/interface/index.js.map +1 -1
- package/cjs/interface/node-tree.d.ts +3 -0
- package/cjs/interface/node-tree.js.map +1 -1
- package/cjs/interface/stage.d.ts +0 -7
- package/cjs/interface/stage.js.map +1 -1
- package/cjs/interpolate.d.ts +2 -0
- package/cjs/interpolate.js +34 -0
- package/cjs/interpolate.js.map +1 -0
- package/cjs/modules.js.map +1 -1
- package/cjs/path.d.ts +4 -0
- package/cjs/path.js +33 -0
- package/cjs/path.js.map +1 -0
- package/cjs/plugin/3d.d.ts +3 -0
- package/cjs/plugin/3d.js +33 -0
- package/cjs/plugin/3d.js.map +1 -0
- package/cjs/plugin/attribute.d.ts +2 -0
- package/cjs/plugin/attribute.js +24 -0
- package/cjs/plugin/attribute.js.map +1 -0
- package/cjs/plugin/flex-layout.d.ts +1 -0
- package/cjs/plugin/flex-layout.js +15 -0
- package/cjs/plugin/flex-layout.js.map +1 -0
- package/cjs/plugins/builtin-plugin/dirty-bounds-plugin.js +8 -8
- package/cjs/plugins/builtin-plugin/dirty-bounds-plugin.js.map +1 -1
- package/cjs/plugins/index.d.ts +0 -4
- package/cjs/plugins/index.js +1 -3
- package/cjs/plugins/index.js.map +1 -1
- package/cjs/plugins/plugin-service.d.ts +0 -1
- package/cjs/plugins/plugin-service.js +2 -3
- package/cjs/plugins/plugin-service.js.map +1 -1
- package/cjs/plugins/types.d.ts +1 -8
- package/cjs/plugins/types.js.map +1 -1
- package/cjs/register/graphic.d.ts +19 -0
- package/cjs/register/graphic.js +177 -0
- package/cjs/register/graphic.js.map +1 -0
- package/cjs/registry/contribution-registry.d.ts +0 -1
- package/cjs/registry/contribution-registry.js +0 -3
- package/cjs/registry/contribution-registry.js.map +1 -1
- package/cjs/registry/picker-registry.d.ts +0 -1
- package/cjs/registry/picker-registry.js +0 -3
- package/cjs/registry/picker-registry.js.map +1 -1
- package/cjs/registry/renderer-registry.d.ts +0 -1
- package/cjs/registry/renderer-registry.js +0 -3
- package/cjs/registry/renderer-registry.js.map +1 -1
- package/cjs/registry/types.d.ts +0 -3
- package/cjs/registry/types.js.map +1 -1
- package/cjs/svg.d.ts +1 -0
- package/cjs/svg.js +15 -0
- package/cjs/svg.js.map +1 -0
- package/cjs/text.d.ts +2 -0
- package/cjs/text.js +29 -0
- package/cjs/text.js.map +1 -0
- package/dist/index.es.js +897 -2213
- package/es/common/event-listener-manager.js +1 -2
- package/es/common/event-transformer.js +2 -1
- package/es/common/performance-raf.js +1 -1
- package/es/common/xml/is-xml.d.ts +2 -0
- package/es/common/xml/is-xml.js +8 -0
- package/es/common/xml/is-xml.js.map +1 -0
- package/es/common/xml/parser.d.ts +2 -2
- package/es/common/xml/parser.js +3 -7
- package/es/common/xml/parser.js.map +1 -1
- package/es/container.d.ts +2 -0
- package/es/container.js +2 -0
- package/es/container.js.map +1 -0
- package/es/core/graphic-utils.js +1 -2
- package/es/core/layer-service.js +2 -1
- package/es/core/stage.d.ts +0 -9
- package/es/core/stage.js +9 -30
- package/es/core/stage.js.map +1 -1
- package/es/entries/miniapp.d.ts +0 -1
- package/es/entries/miniapp.js +1 -5
- package/es/entries/miniapp.js.map +1 -1
- package/es/entries/node.d.ts +0 -1
- package/es/entries/node.js +1 -5
- package/es/entries/node.js.map +1 -1
- package/es/env.d.ts +1 -0
- package/es/env.js +2 -0
- package/es/env.js.map +1 -0
- package/es/event/public-constant.d.ts +7 -0
- package/es/event/public-constant.js +12 -0
- package/es/event/public-constant.js.map +1 -0
- package/es/event/util.d.ts +1 -1
- package/es/graphic/base.d.ts +2 -0
- package/es/graphic/base.js +2 -0
- package/es/graphic/base.js.map +1 -0
- package/es/graphic/creator.d.ts +16 -0
- package/es/graphic/creator.js +32 -0
- package/es/graphic/creator.js.map +1 -0
- package/es/graphic/glyph.js +4 -8
- package/es/graphic/glyph.js.map +1 -1
- package/es/graphic/graphic-service/graphic-service.d.ts +0 -1
- package/es/graphic/graphic-service/graphic-service.js +0 -10
- package/es/graphic/graphic-service/graphic-service.js.map +1 -1
- package/es/graphic/graphic.d.ts +19 -29
- package/es/graphic/graphic.js +123 -207
- package/es/graphic/graphic.js.map +1 -1
- package/es/graphic/group.d.ts +1 -3
- package/es/graphic/group.js +22 -28
- package/es/graphic/group.js.map +1 -1
- package/es/graphic/modules.d.ts +16 -0
- package/es/graphic/modules.js +32 -0
- package/es/graphic/modules.js.map +1 -0
- package/es/graphic/node-tree.d.ts +3 -3
- package/es/graphic/node-tree.js +1 -0
- package/es/graphic/node-tree.js.map +1 -1
- package/es/graphic/state/shared-state-refresh.js +8 -28
- package/es/graphic/state/shared-state-refresh.js.map +1 -1
- package/es/graphic/state/shared-state-scope.d.ts +2 -5
- package/es/graphic/state/shared-state-scope.js +7 -28
- package/es/graphic/state/shared-state-scope.js.map +1 -1
- package/es/graphic/state/state-definition-compiler.js +4 -5
- package/es/graphic/state/state-definition-compiler.js.map +1 -1
- package/es/graphic/state/state-definition.d.ts +2 -5
- package/es/graphic/state/state-definition.js.map +1 -1
- package/es/graphic/state/state-engine.d.ts +0 -5
- package/es/graphic/state/state-engine.js +17 -67
- package/es/graphic/state/state-engine.js.map +1 -1
- package/es/graphic/state/state-transition-orchestrator.d.ts +7 -9
- package/es/graphic/state/state-transition-orchestrator.js +10 -13
- package/es/graphic/state/state-transition-orchestrator.js.map +1 -1
- package/es/graphic/tools.js +3 -3
- package/es/graphic/tools.js.map +1 -1
- package/es/index.js.map +1 -1
- package/es/interface/graphic/group.d.ts +0 -2
- package/es/interface/graphic/group.js.map +1 -1
- package/es/interface/graphic.d.ts +1 -5
- package/es/interface/graphic.js.map +1 -1
- package/es/interface/index.js.map +1 -1
- package/es/interface/node-tree.d.ts +3 -0
- package/es/interface/node-tree.js.map +1 -1
- package/es/interface/stage.d.ts +0 -7
- package/es/interface/stage.js.map +1 -1
- package/es/interpolate.d.ts +2 -0
- package/es/interpolate.js +4 -0
- package/es/interpolate.js.map +1 -0
- package/es/modules.js.map +1 -1
- package/es/path.d.ts +4 -0
- package/es/path.js +6 -0
- package/es/path.js.map +1 -0
- package/es/plugin/3d.d.ts +3 -0
- package/es/plugin/3d.js +6 -0
- package/es/plugin/3d.js.map +1 -0
- package/es/plugin/attribute.d.ts +2 -0
- package/es/plugin/attribute.js +4 -0
- package/es/plugin/attribute.js.map +1 -0
- package/es/plugin/flex-layout.d.ts +1 -0
- package/es/plugin/flex-layout.js +2 -0
- package/es/plugin/flex-layout.js.map +1 -0
- package/es/plugins/builtin-plugin/dirty-bounds-plugin.js +8 -8
- package/es/plugins/builtin-plugin/dirty-bounds-plugin.js.map +1 -1
- package/es/plugins/index.d.ts +0 -4
- package/es/plugins/index.js +0 -8
- package/es/plugins/index.js.map +1 -1
- package/es/plugins/plugin-service.d.ts +0 -1
- package/es/plugins/plugin-service.js +2 -3
- package/es/plugins/plugin-service.js.map +1 -1
- package/es/plugins/types.d.ts +1 -8
- package/es/plugins/types.js.map +1 -1
- package/es/register/graphic.d.ts +19 -0
- package/es/register/graphic.js +38 -0
- package/es/register/graphic.js.map +1 -0
- package/es/registry/contribution-registry.d.ts +0 -1
- package/es/registry/contribution-registry.js +0 -3
- package/es/registry/contribution-registry.js.map +1 -1
- package/es/registry/picker-registry.d.ts +0 -1
- package/es/registry/picker-registry.js +0 -3
- package/es/registry/picker-registry.js.map +1 -1
- package/es/registry/renderer-registry.d.ts +0 -1
- package/es/registry/renderer-registry.js +0 -3
- package/es/registry/renderer-registry.js.map +1 -1
- package/es/registry/types.d.ts +0 -3
- package/es/registry/types.js.map +1 -1
- package/es/svg.d.ts +1 -0
- package/es/svg.js +2 -0
- package/es/svg.js.map +1 -0
- package/es/text.d.ts +2 -0
- package/es/text.js +4 -0
- package/es/text.js.map +1 -0
- package/package.json +245 -1
- package/cjs/allocator/constants.d.ts +0 -9
- package/cjs/allocator/constants.js +0 -11
- package/cjs/allocator/constants.js.map +0 -1
- package/cjs/common/Reflect-metadata.d.ts +0 -2
- package/cjs/common/Reflect-metadata.js +0 -182
- package/cjs/common/Reflect-metadata.js.map +0 -1
- package/cjs/common/segment/curve/arc.d.ts +0 -17
- package/cjs/common/segment/curve/arc.js +0 -38
- package/cjs/common/segment/curve/arc.js.map +0 -1
- package/cjs/common/segment/curve/ellipse.d.ts +0 -21
- package/cjs/common/segment/curve/ellipse.js +0 -39
- package/cjs/common/segment/curve/ellipse.js.map +0 -1
- package/cjs/common/segment/curve/move.d.ts +0 -16
- package/cjs/common/segment/curve/move.js +0 -37
- package/cjs/common/segment/curve/move.js.map +0 -1
- package/cjs/common/store.d.ts +0 -2
- package/cjs/common/store.js +0 -2
- package/cjs/common/store.js.map +0 -1
- package/cjs/core/application.d.ts +0 -1
- package/cjs/core/application.js +0 -6
- package/cjs/core/application.js.map +0 -1
- package/cjs/core/global-module.d.ts +0 -1
- package/cjs/core/global-module.js +0 -1
- package/cjs/core/global-module.js.map +0 -1
- package/cjs/export.d.ts +0 -1
- package/cjs/export.js +0 -1
- package/cjs/export.js.map +0 -1
- package/cjs/graphic/state/state-batch-scheduler.d.ts +0 -42
- package/cjs/graphic/state/state-batch-scheduler.js +0 -285
- package/cjs/graphic/state/state-batch-scheduler.js.map +0 -1
- package/cjs/graphic/state/state-model.d.ts +0 -43
- package/cjs/graphic/state/state-model.js +0 -143
- package/cjs/graphic/state/state-model.js.map +0 -1
- package/cjs/graphic/state/state-perf-monitor.d.ts +0 -120
- package/cjs/graphic/state/state-perf-monitor.js +0 -224
- package/cjs/graphic/state/state-perf-monitor.js.map +0 -1
- package/cjs/graphic/state/state-style-resolver.d.ts +0 -13
- package/cjs/graphic/state/state-style-resolver.js +0 -50
- package/cjs/graphic/state/state-style-resolver.js.map +0 -1
- package/cjs/interface/animate.d.ts +0 -1
- package/cjs/interface/animate.js +0 -3
- package/cjs/interface/animate.js.map +0 -1
- package/cjs/interface/creator.d.ts +0 -4
- package/cjs/interface/creator.js +0 -6
- package/cjs/interface/creator.js.map +0 -1
- package/cjs/interface/graphic/dynamic-path.d.ts +0 -1
- package/cjs/interface/graphic/dynamic-path.js +0 -3
- package/cjs/interface/graphic/dynamic-path.js.map +0 -1
- package/cjs/interface/graphic-utils.d.ts +0 -1
- package/cjs/interface/graphic-utils.js +0 -3
- package/cjs/interface/graphic-utils.js.map +0 -1
- package/cjs/interface/theme-service.d.ts +0 -1
- package/cjs/interface/theme-service.js +0 -3
- package/cjs/interface/theme-service.js.map +0 -1
- package/cjs/plugins/base-plugin.d.ts +0 -8
- package/cjs/plugins/base-plugin.js +0 -15
- package/cjs/plugins/base-plugin.js.map +0 -1
- package/cjs/plugins/browser-env-plugin.d.ts +0 -8
- package/cjs/plugins/browser-env-plugin.js +0 -24
- package/cjs/plugins/browser-env-plugin.js.map +0 -1
- package/cjs/plugins/builtin-plugin/poptip-plugin.d.ts +0 -1
- package/cjs/plugins/builtin-plugin/poptip-plugin.js +0 -3
- package/cjs/plugins/builtin-plugin/poptip-plugin.js.map +0 -1
- package/cjs/plugins/picker-plugin.d.ts +0 -7
- package/cjs/plugins/picker-plugin.js +0 -19
- package/cjs/plugins/picker-plugin.js.map +0 -1
- package/cjs/plugins/renderer-plugin.d.ts +0 -7
- package/cjs/plugins/renderer-plugin.js +0 -19
- package/cjs/plugins/renderer-plugin.js.map +0 -1
- package/cjs/render/contributions/render/clear-screen.d.ts +0 -1
- package/cjs/render/contributions/render/clear-screen.js +0 -3
- package/cjs/render/contributions/render/clear-screen.js.map +0 -1
- package/cjs/render/contributions/render/render-slector.d.ts +0 -1
- package/cjs/render/contributions/render/render-slector.js +0 -3
- package/cjs/render/contributions/render/render-slector.js.map +0 -1
- package/es/allocator/constants.d.ts +0 -9
- package/es/allocator/constants.js +0 -18
- package/es/allocator/constants.js.map +0 -1
- package/es/common/Reflect-metadata.d.ts +0 -2
- package/es/common/Reflect-metadata.js +0 -178
- package/es/common/Reflect-metadata.js.map +0 -1
- package/es/common/segment/curve/arc.d.ts +0 -17
- package/es/common/segment/curve/arc.js +0 -31
- package/es/common/segment/curve/arc.js.map +0 -1
- package/es/common/segment/curve/ellipse.d.ts +0 -21
- package/es/common/segment/curve/ellipse.js +0 -33
- package/es/common/segment/curve/ellipse.js.map +0 -1
- package/es/common/segment/curve/move.d.ts +0 -16
- package/es/common/segment/curve/move.js +0 -31
- package/es/common/segment/curve/move.js.map +0 -1
- package/es/common/store.d.ts +0 -2
- package/es/common/store.js +0 -2
- package/es/common/store.js.map +0 -1
- package/es/core/application.d.ts +0 -1
- package/es/core/application.js +0 -2
- package/es/core/application.js.map +0 -1
- package/es/core/global-module.d.ts +0 -1
- package/es/core/global-module.js +0 -1
- package/es/core/global-module.js.map +0 -1
- package/es/export.d.ts +0 -1
- package/es/export.js +0 -1
- package/es/export.js.map +0 -1
- package/es/graphic/state/state-batch-scheduler.d.ts +0 -42
- package/es/graphic/state/state-batch-scheduler.js +0 -278
- package/es/graphic/state/state-batch-scheduler.js.map +0 -1
- package/es/graphic/state/state-model.d.ts +0 -43
- package/es/graphic/state/state-model.js +0 -135
- package/es/graphic/state/state-model.js.map +0 -1
- package/es/graphic/state/state-perf-monitor.d.ts +0 -120
- package/es/graphic/state/state-perf-monitor.js +0 -214
- package/es/graphic/state/state-perf-monitor.js.map +0 -1
- package/es/graphic/state/state-style-resolver.d.ts +0 -13
- package/es/graphic/state/state-style-resolver.js +0 -42
- package/es/graphic/state/state-style-resolver.js.map +0 -1
- package/es/interface/animate.d.ts +0 -1
- package/es/interface/animate.js +0 -3
- package/es/interface/animate.js.map +0 -1
- package/es/interface/creator.d.ts +0 -4
- package/es/interface/creator.js +0 -2
- package/es/interface/creator.js.map +0 -1
- package/es/interface/graphic/dynamic-path.d.ts +0 -1
- package/es/interface/graphic/dynamic-path.js +0 -3
- package/es/interface/graphic/dynamic-path.js.map +0 -1
- package/es/interface/graphic-utils.d.ts +0 -1
- package/es/interface/graphic-utils.js +0 -3
- package/es/interface/graphic-utils.js.map +0 -1
- package/es/interface/theme-service.d.ts +0 -1
- package/es/interface/theme-service.js +0 -3
- package/es/interface/theme-service.js.map +0 -1
- package/es/plugins/base-plugin.d.ts +0 -8
- package/es/plugins/base-plugin.js +0 -7
- package/es/plugins/base-plugin.js.map +0 -1
- package/es/plugins/browser-env-plugin.d.ts +0 -8
- package/es/plugins/browser-env-plugin.js +0 -16
- package/es/plugins/browser-env-plugin.js.map +0 -1
- package/es/plugins/builtin-plugin/poptip-plugin.d.ts +0 -1
- package/es/plugins/builtin-plugin/poptip-plugin.js +0 -3
- package/es/plugins/builtin-plugin/poptip-plugin.js.map +0 -1
- package/es/plugins/picker-plugin.d.ts +0 -7
- package/es/plugins/picker-plugin.js +0 -11
- package/es/plugins/picker-plugin.js.map +0 -1
- package/es/plugins/renderer-plugin.d.ts +0 -7
- package/es/plugins/renderer-plugin.js +0 -11
- package/es/plugins/renderer-plugin.js.map +0 -1
- package/es/render/contributions/render/clear-screen.d.ts +0 -1
- package/es/render/contributions/render/clear-screen.js +0 -3
- package/es/render/contributions/render/clear-screen.js.map +0 -1
- package/es/render/contributions/render/render-slector.d.ts +0 -1
- package/es/render/contributions/render/render-slector.js +0 -3
- package/es/render/contributions/render/render-slector.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/plugins/builtin-plugin/dirty-bounds-plugin.ts"],"names":[],"mappings":"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","file":"dirty-bounds-plugin.js","sourcesContent":["import { AABBBounds, type IAABBBounds } from '@visactor/vutils';\nimport { UpdateTag } from '../../common/enums';\nimport { Generator } from '../../common/generator';\nimport type { IGraphic, IStage, IPlugin, IPluginService } from '../../interface';\n\nconst globalBounds = new AABBBounds();\n\nexport class DirtyBoundsPlugin implements IPlugin {\n name: 'DirtyBoundsPlugin' = 'DirtyBoundsPlugin';\n activeEvent: 'onRegister' = 'onRegister';\n pluginService: IPluginService;\n _uid: number = Generator.GenAutoIncrementId();\n key: string = this.name + this._uid;\n protected dirtyBoundsHooksRegistered: boolean = false;\n\n protected ensurePaintDirtyBoundsCache(graphic: IGraphic): IAABBBounds {\n const owner = graphic as any;\n const hasLocalBounds =\n owner._AABBBounds && typeof owner._AABBBounds.empty === 'function' && !owner._AABBBounds.empty();\n if (!hasLocalBounds && typeof owner.doUpdateAABBBounds === 'function') {\n owner.doUpdateAABBBounds(owner.attribute?.boundsMode === 'imprecise');\n }\n\n const hasGlobalBounds =\n owner._globalAABBBounds &&\n typeof owner._globalAABBBounds.empty === 'function' &&\n !owner._globalAABBBounds.empty();\n if (!hasGlobalBounds && typeof owner.tryUpdateGlobalAABBBounds === 'function') {\n owner.tryUpdateGlobalAABBBounds();\n }\n\n return owner._globalAABBBounds ?? owner.globalAABBBounds;\n }\n\n protected getRemoveDirtyBounds(graphic: IGraphic): IAABBBounds | undefined {\n const owner = (graphic.glyphHost ?? graphic) as any;\n const cachedBounds = owner._globalAABBBounds as IAABBBounds | undefined;\n if (cachedBounds && typeof cachedBounds.empty === 'function' && !cachedBounds.empty()) {\n return cachedBounds;\n }\n }\n\n protected handlePaintOnlyUpdate = (graphic: IGraphic) => {\n const stage = this.pluginService.stage;\n if (!(stage && stage === graphic.stage && stage.renderCount)) {\n return;\n }\n\n const owner = (graphic.glyphHost ?? graphic) as any;\n if (!(owner._updateTag & UpdateTag.UPDATE_PAINT) || owner._updateTag & UpdateTag.UPDATE_BOUNDS) {\n return;\n }\n\n const ownerBounds = this.ensurePaintDirtyBoundsCache(owner);\n if (ownerBounds && !ownerBounds.empty()) {\n stage.dirty(ownerBounds);\n }\n owner.clearUpdatePaintTag?.();\n\n const shadowRoot = owner.shadowRoot as IGraphic | undefined;\n if (!shadowRoot) {\n return;\n }\n\n const shadowBounds = this.ensurePaintDirtyBoundsCache(shadowRoot);\n if (shadowBounds && !shadowBounds.empty()) {\n stage.dirty(shadowBounds);\n }\n (shadowRoot as any).clearUpdatePaintTag?.();\n };\n\n protected registerDirtyBoundsHooks(stage: IStage): void {\n if (this.dirtyBoundsHooksRegistered) {\n return;\n }\n stage.graphicService.hooks.onAttributeUpdate.tap(this.key, this.handlePaintOnlyUpdate);\n stage.graphicService.hooks.beforeUpdateAABBBounds.tap(\n this.key,\n (graphic: IGraphic, stage: IStage, willUpdate: boolean, bounds: IAABBBounds) => {\n if (graphic.glyphHost) {\n graphic = graphic.glyphHost;\n }\n if (!(stage && stage === this.pluginService.stage && stage.renderCount)) {\n return;\n }\n // group的子元素导致的bounds更新不用做dirtyBounds\n if (graphic.isContainer && !graphic.shouldSelfChangeUpdateAABBBounds()) {\n return;\n }\n if (willUpdate) {\n globalBounds.setValue(bounds.x1, bounds.y1, bounds.x2, bounds.y2);\n stage.dirty(globalBounds, graphic.parent && graphic.parent.globalTransMatrix);\n }\n }\n );\n stage.graphicService.hooks.afterUpdateAABBBounds.tap(\n this.key,\n (\n graphic: IGraphic,\n stage: IStage,\n bounds: IAABBBounds,\n params: { globalAABBBounds: IAABBBounds },\n selfChange: boolean\n ) => {\n if (!(stage && stage === this.pluginService.stage && stage.renderCount)) {\n return;\n }\n // group的子元素导致的bounds更新不用做dirtyBounds\n if (graphic.isContainer && !selfChange) {\n return;\n }\n stage.dirty(params.globalAABBBounds);\n }\n );\n stage.graphicService.hooks.clearAABBBounds.tap(\n this.key,\n (graphic: IGraphic, stage: IStage, bounds: IAABBBounds) => {\n if (!(stage && stage === this.pluginService.stage && stage.renderCount)) {\n return;\n }\n if (stage) {\n stage.dirty(bounds);\n }\n }\n );\n stage.graphicService.hooks.onRemove.tap(this.key, (graphic: IGraphic) => {\n const stage = graphic.stage;\n if (!(stage && stage === this.pluginService.stage && stage.renderCount)) {\n return;\n }\n const bounds = this.getRemoveDirtyBounds(graphic);\n if (bounds && !bounds.empty()) {\n stage.dirty(bounds);\n }\n });\n this.dirtyBoundsHooksRegistered = true;\n }\n\n activate(context: IPluginService): void {\n this.pluginService = context;\n context.stage.hooks.afterRender.tap(this.key, stage => {\n if (!(stage && stage === this.pluginService.stage)) {\n return;\n }\n stage.dirtyBounds.clear();\n this.registerDirtyBoundsHooks(stage);\n });\n const stage = this.pluginService.stage;\n if (!stage) {\n return;\n }\n if (stage.renderCount) {\n this.registerDirtyBoundsHooks(stage);\n }\n }\n deactivate(context: IPluginService): void {\n const stage = this.pluginService.stage;\n if (!stage) {\n return;\n }\n stage.graphicService.hooks.onAttributeUpdate.taps = stage.graphicService.hooks.onAttributeUpdate.taps.filter(\n item => {\n return item.name !== this.key;\n }\n );\n this.dirtyBoundsHooksRegistered = false;\n stage.graphicService.hooks.beforeUpdateAABBBounds.taps =\n stage.graphicService.hooks.beforeUpdateAABBBounds.taps.filter(item => {\n return item.name !== this.key;\n });\n stage.graphicService.hooks.afterUpdateAABBBounds.taps =\n stage.graphicService.hooks.afterUpdateAABBBounds.taps.filter(item => {\n return item.name !== this.key;\n });\n stage.graphicService.hooks.clearAABBBounds.taps = stage.graphicService.hooks.clearAABBBounds.taps.filter(item => {\n return item.name !== this.key;\n });\n stage.hooks.afterRender.taps = stage.hooks.afterRender.taps.filter(item => {\n return item.name !== this.key;\n });\n stage.graphicService.hooks.onRemove.taps = stage.graphicService.hooks.onRemove.taps.filter(item => {\n return item.name !== this.key;\n });\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/plugins/builtin-plugin/dirty-bounds-plugin.ts"],"names":[],"mappings":"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","file":"dirty-bounds-plugin.js","sourcesContent":["import { AABBBounds, type IAABBBounds } from '@visactor/vutils';\nimport { UpdateTag } from '../../common/enums';\nimport { Generator } from '../../common/generator';\nimport type { IGraphic, IStage, IPlugin, IPluginService } from '../../interface';\n\nconst globalBounds = new AABBBounds();\n\nexport class DirtyBoundsPlugin implements IPlugin {\n name: 'DirtyBoundsPlugin' = 'DirtyBoundsPlugin';\n activeEvent: 'onRegister' = 'onRegister';\n pluginService: IPluginService;\n _uid: number = Generator.GenAutoIncrementId();\n key: string = this.name + this._uid;\n protected dirtyBoundsHooksRegistered = false;\n\n protected ensurePaintDirtyBoundsCache(graphic: IGraphic): IAABBBounds {\n const owner = graphic as any;\n if (owner._AABBBounds.empty()) {\n owner.doUpdateAABBBounds(owner.attribute?.boundsMode === 'imprecise');\n }\n\n if (!owner._globalAABBBounds || owner._globalAABBBounds.empty()) {\n owner.tryUpdateGlobalAABBBounds();\n }\n\n return owner._globalAABBBounds;\n }\n\n protected getRemoveDirtyBounds(graphic: IGraphic): IAABBBounds | undefined {\n const owner = (graphic.glyphHost ?? graphic) as any;\n const cachedBounds = owner._globalAABBBounds as IAABBBounds | undefined;\n if (cachedBounds && !cachedBounds.empty()) {\n return cachedBounds;\n }\n }\n\n protected handlePaintOnlyUpdate = (graphic: IGraphic) => {\n const stage = this.pluginService.stage;\n if (!(stage && stage === graphic.stage && stage.renderCount)) {\n return;\n }\n\n const owner = (graphic.glyphHost ?? graphic) as any;\n if (!(owner._updateTag & UpdateTag.UPDATE_PAINT) || owner._updateTag & UpdateTag.UPDATE_BOUNDS) {\n return;\n }\n\n const ownerBounds = this.ensurePaintDirtyBoundsCache(owner);\n if (ownerBounds && !ownerBounds.empty()) {\n stage.dirty(ownerBounds);\n }\n owner.clearUpdatePaintTag();\n\n const shadowRoot = owner.shadowRoot as IGraphic | undefined;\n if (!shadowRoot) {\n return;\n }\n\n const shadowBounds = this.ensurePaintDirtyBoundsCache(shadowRoot);\n if (shadowBounds && !shadowBounds.empty()) {\n stage.dirty(shadowBounds);\n }\n (shadowRoot as any).clearUpdatePaintTag();\n };\n\n protected registerDirtyBoundsHooks(stage: IStage): void {\n if (this.dirtyBoundsHooksRegistered) {\n return;\n }\n stage.graphicService.hooks.onAttributeUpdate.tap(this.key, this.handlePaintOnlyUpdate);\n stage.graphicService.hooks.beforeUpdateAABBBounds.tap(\n this.key,\n (graphic: IGraphic, stage: IStage, willUpdate: boolean, bounds: IAABBBounds) => {\n if (graphic.glyphHost) {\n graphic = graphic.glyphHost;\n }\n if (!(stage && stage === this.pluginService.stage && stage.renderCount)) {\n return;\n }\n // group的子元素导致的bounds更新不用做dirtyBounds\n if (graphic.isContainer && !graphic.shouldSelfChangeUpdateAABBBounds()) {\n return;\n }\n if (willUpdate) {\n globalBounds.setValue(bounds.x1, bounds.y1, bounds.x2, bounds.y2);\n stage.dirty(globalBounds, graphic.parent && graphic.parent.globalTransMatrix);\n }\n }\n );\n stage.graphicService.hooks.afterUpdateAABBBounds.tap(\n this.key,\n (\n graphic: IGraphic,\n stage: IStage,\n bounds: IAABBBounds,\n params: { globalAABBBounds: IAABBBounds },\n selfChange: boolean\n ) => {\n if (!(stage && stage === this.pluginService.stage && stage.renderCount)) {\n return;\n }\n // group的子元素导致的bounds更新不用做dirtyBounds\n if (graphic.isContainer && !selfChange) {\n return;\n }\n stage.dirty(params.globalAABBBounds);\n }\n );\n stage.graphicService.hooks.clearAABBBounds.tap(\n this.key,\n (graphic: IGraphic, stage: IStage, bounds: IAABBBounds) => {\n if (!(stage && stage === this.pluginService.stage && stage.renderCount)) {\n return;\n }\n if (stage) {\n stage.dirty(bounds);\n }\n }\n );\n stage.graphicService.hooks.onRemove.tap(this.key, (graphic: IGraphic) => {\n const stage = graphic.stage;\n if (!(stage && stage === this.pluginService.stage && stage.renderCount)) {\n return;\n }\n const bounds = this.getRemoveDirtyBounds(graphic);\n if (bounds && !bounds.empty()) {\n stage.dirty(bounds);\n }\n });\n this.dirtyBoundsHooksRegistered = true;\n }\n\n activate(context: IPluginService): void {\n this.pluginService = context;\n context.stage.hooks.afterRender.tap(this.key, stage => {\n if (!(stage && stage === this.pluginService.stage)) {\n return;\n }\n stage.dirtyBounds.clear();\n this.registerDirtyBoundsHooks(stage);\n });\n const stage = this.pluginService.stage;\n if (!stage) {\n return;\n }\n if (stage.renderCount) {\n this.registerDirtyBoundsHooks(stage);\n }\n }\n deactivate(context: IPluginService): void {\n const stage = this.pluginService.stage;\n if (!stage) {\n return;\n }\n stage.graphicService.hooks.onAttributeUpdate.taps = stage.graphicService.hooks.onAttributeUpdate.taps.filter(\n item => {\n return item.name !== this.key;\n }\n );\n this.dirtyBoundsHooksRegistered = false;\n stage.graphicService.hooks.beforeUpdateAABBBounds.taps =\n stage.graphicService.hooks.beforeUpdateAABBBounds.taps.filter(item => {\n return item.name !== this.key;\n });\n stage.graphicService.hooks.afterUpdateAABBBounds.taps =\n stage.graphicService.hooks.afterUpdateAABBBounds.taps.filter(item => {\n return item.name !== this.key;\n });\n stage.graphicService.hooks.clearAABBBounds.taps = stage.graphicService.hooks.clearAABBBounds.taps.filter(item => {\n return item.name !== this.key;\n });\n stage.hooks.afterRender.taps = stage.hooks.afterRender.taps.filter(item => {\n return item.name !== this.key;\n });\n stage.graphicService.hooks.onRemove.taps = stage.graphicService.hooks.onRemove.taps.filter(item => {\n return item.name !== this.key;\n });\n }\n}\n"]}
|
package/cjs/plugins/index.d.ts
CHANGED
package/cjs/plugins/index.js
CHANGED
|
@@ -17,7 +17,5 @@ var __createBinding = this && this.__createBinding || (Object.create ? function(
|
|
|
17
17
|
|
|
18
18
|
Object.defineProperty(exports, "__esModule", {
|
|
19
19
|
value: !0
|
|
20
|
-
}), __exportStar(require("./types"), exports)
|
|
21
|
-
__exportStar(require("./browser-env-plugin"), exports), __exportStar(require("./renderer-plugin"), exports),
|
|
22
|
-
__exportStar(require("./picker-plugin"), exports);
|
|
20
|
+
}), __exportStar(require("./types"), exports);
|
|
23
21
|
//# sourceMappingURL=index.js.map
|
package/cjs/plugins/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/plugins/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB
|
|
1
|
+
{"version":3,"sources":["../src/plugins/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB","file":"index.js","sourcesContent":["export * from './types';\n"]}
|
|
@@ -7,7 +7,6 @@ interface ILegacyPluginRegistry {
|
|
|
7
7
|
}
|
|
8
8
|
interface IPluginServiceDeps {
|
|
9
9
|
pluginRegistry?: ILegacyPluginRegistry;
|
|
10
|
-
autoEnablePlugins?: IContributionProvider<IPlugin>;
|
|
11
10
|
}
|
|
12
11
|
export declare class DefaultPluginService implements IPluginService {
|
|
13
12
|
protected autoEnablePlugins: IContributionProvider<IPlugin>;
|
|
@@ -10,10 +10,9 @@ const registry_1 = require("../registry"), EMPTY_AUTO_ENABLE_PROVIDER = {
|
|
|
10
10
|
|
|
11
11
|
class DefaultPluginService {
|
|
12
12
|
constructor(autoEnablePlugins = EMPTY_AUTO_ENABLE_PROVIDER, deps = {}) {
|
|
13
|
-
var _a
|
|
13
|
+
var _a;
|
|
14
14
|
this.autoEnablePlugins = autoEnablePlugins, this.onStartupFinishedPlugin = [], this.onRegisterPlugin = [],
|
|
15
|
-
this.actived = !1, this.pluginRegistry = null !== (_a = deps.pluginRegistry) && void 0 !== _a ? _a : new registry_1.PluginRegistry
|
|
16
|
-
this.autoEnablePlugins = null !== (_c = null !== (_b = deps.autoEnablePlugins) && void 0 !== _b ? _b : this.autoEnablePlugins) && void 0 !== _c ? _c : EMPTY_AUTO_ENABLE_PROVIDER;
|
|
15
|
+
this.actived = !1, this.pluginRegistry = null !== (_a = deps.pluginRegistry) && void 0 !== _a ? _a : new registry_1.PluginRegistry;
|
|
17
16
|
}
|
|
18
17
|
active(stage, params) {
|
|
19
18
|
this.stage = stage, this.actived = !0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/plugins/plugin-service.ts"],"names":[],"mappings":";;;AACA,0CAA6C;
|
|
1
|
+
{"version":3,"sources":["../src/plugins/plugin-service.ts"],"names":[],"mappings":"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","file":"plugin-service.js","sourcesContent":["import type { IContributionProvider, IPlugin, IPluginService, IStage } from '../interface';\nimport { PluginRegistry } from '../registry';\n\ninterface ILegacyPluginRegistry {\n install: (plugin: IPlugin) => void;\n uninstall: (name: string) => void;\n get: (name: string) => IPlugin | undefined;\n clear: () => void;\n}\n\ninterface IPluginServiceDeps {\n pluginRegistry?: ILegacyPluginRegistry;\n}\n\nconst EMPTY_AUTO_ENABLE_PROVIDER: IContributionProvider<IPlugin> = {\n getContributions: () => []\n};\n\nexport class DefaultPluginService implements IPluginService {\n declare onStartupFinishedPlugin: IPlugin[];\n declare onRegisterPlugin: IPlugin[];\n declare stage: IStage;\n declare actived: boolean;\n readonly pluginRegistry: ILegacyPluginRegistry;\n\n constructor(\n protected autoEnablePlugins: IContributionProvider<IPlugin> = EMPTY_AUTO_ENABLE_PROVIDER,\n deps: IPluginServiceDeps = {}\n ) {\n this.onStartupFinishedPlugin = [];\n this.onRegisterPlugin = [];\n this.actived = false;\n this.pluginRegistry = deps.pluginRegistry ?? (new PluginRegistry() as unknown as ILegacyPluginRegistry);\n }\n\n active(stage: IStage, params: { pluginList?: string[] }) {\n this.stage = stage;\n this.actived = true;\n\n // 启动插件\n const { pluginList } = params;\n if (pluginList?.length) {\n this.autoEnablePlugins.getContributions().forEach(p => {\n if (pluginList.includes(p.name)) {\n this.install(p);\n }\n });\n }\n }\n\n findPluginsByName(name: string): IPlugin[] {\n const arr: IPlugin[] = [];\n this.onStartupFinishedPlugin.forEach(plugin => {\n if (plugin.name === name) {\n arr.push(plugin);\n }\n });\n this.onRegisterPlugin.forEach(plugin => {\n if (plugin.name === name) {\n arr.push(plugin);\n }\n });\n return arr;\n }\n\n install(plugin: IPlugin) {\n this.register(plugin);\n }\n\n uninstall(name: string) {\n const plugins = this.findPluginsByName(name);\n plugins.forEach(plugin => {\n this.unRegister(plugin);\n });\n this.pluginRegistry.uninstall(name);\n }\n\n register(plugin: IPlugin) {\n this.pluginRegistry.install(plugin);\n if (plugin.activeEvent === 'onStartupFinished') {\n if (!this.onStartupFinishedPlugin.includes(plugin)) {\n this.onStartupFinishedPlugin.push(plugin);\n }\n } else if (plugin.activeEvent === 'onRegister') {\n if (!this.onRegisterPlugin.includes(plugin)) {\n this.onRegisterPlugin.push(plugin);\n plugin.activate(this);\n }\n }\n }\n unRegister(plugin: IPlugin) {\n if (plugin.activeEvent === 'onStartupFinished') {\n this.onStartupFinishedPlugin = this.onStartupFinishedPlugin.filter(item => item !== plugin);\n } else if (plugin.activeEvent === 'onRegister') {\n this.onRegisterPlugin = this.onRegisterPlugin.filter(item => item !== plugin);\n }\n if (this.pluginRegistry.get(plugin.name) === plugin) {\n this.pluginRegistry.uninstall(plugin.name);\n }\n plugin.deactivate(this);\n }\n\n release(...params: any): void {\n this.onStartupFinishedPlugin.forEach(plugin => {\n plugin.deactivate(this);\n });\n this.onStartupFinishedPlugin = [];\n this.onRegisterPlugin.forEach(plugin => {\n plugin.deactivate(this);\n });\n this.onRegisterPlugin = [];\n this.pluginRegistry.clear();\n }\n}\n"]}
|
package/cjs/plugins/types.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type { IGraphicPicker } from '../interface/picker';
|
|
2
1
|
import type { IGraphicFactory, ILayerFactory, IStageFactory } from '../factory';
|
|
3
|
-
import type { IContributionRegistry, IPickerRegistry, IPluginRegistry, IRendererRegistry
|
|
2
|
+
import type { IContributionRegistry, IPickerRegistry, IPluginRegistry, IRendererRegistry } from '../registry';
|
|
4
3
|
export interface IPlugin {
|
|
5
4
|
readonly name: string;
|
|
6
5
|
readonly version: string;
|
|
@@ -20,9 +19,3 @@ export interface IPluginContext {
|
|
|
20
19
|
graphic: IGraphicFactory;
|
|
21
20
|
};
|
|
22
21
|
}
|
|
23
|
-
export interface IBrowserEnvPluginHooks {
|
|
24
|
-
install?: (context: IPluginContext) => void;
|
|
25
|
-
uninstall?: () => void;
|
|
26
|
-
}
|
|
27
|
-
export type IRendererPluginEntries = Iterable<[RegistryKey, IRendererRegistryEntry]>;
|
|
28
|
-
export type IPickerPluginEntries = Iterable<[RegistryKey, IGraphicPicker]>;
|
package/cjs/plugins/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/plugins/types.ts"],"names":[],"mappings":"","file":"types.js","sourcesContent":["import type {
|
|
1
|
+
{"version":3,"sources":["../src/plugins/types.ts"],"names":[],"mappings":"","file":"types.js","sourcesContent":["import type { IGraphicFactory, ILayerFactory, IStageFactory } from '../factory';\nimport type { IContributionRegistry, IPickerRegistry, IPluginRegistry, IRendererRegistry } from '../registry';\n\nexport interface IPlugin {\n readonly name: string;\n readonly version: string;\n install: (context: IPluginContext) => void;\n uninstall?: () => void;\n}\n\nexport interface IPluginContext {\n registry: {\n renderer: IRendererRegistry;\n picker: IPickerRegistry;\n contribution: IContributionRegistry;\n plugin: IPluginRegistry;\n };\n factory: {\n stage: IStageFactory;\n layer: ILayerFactory;\n graphic: IGraphicFactory;\n };\n}\n"]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export { registerArcGraphic } from './register-arc';
|
|
2
|
+
export { registerArc3dGraphic } from './register-arc3d';
|
|
3
|
+
export { registerAreaGraphic } from './register-area';
|
|
4
|
+
export { registerCircleGraphic } from './register-circle';
|
|
5
|
+
export { registerGlyphGraphic } from './register-glyph';
|
|
6
|
+
export { registerGroupGraphic } from './register-group';
|
|
7
|
+
export { registerImageGraphic } from './register-image';
|
|
8
|
+
export { registerLineGraphic } from './register-line';
|
|
9
|
+
export { registerPathGraphic } from './register-path';
|
|
10
|
+
export { registerPolygonGraphic } from './register-polygon';
|
|
11
|
+
export { registerPyramid3dGraphic } from './register-pyramid3d';
|
|
12
|
+
export { registerRectGraphic } from './register-rect';
|
|
13
|
+
export { registerRect3dGraphic } from './register-rect3d';
|
|
14
|
+
export { registerRichtextGraphic } from './register-richtext';
|
|
15
|
+
export { registerShadowRootGraphic } from './register-shadowRoot';
|
|
16
|
+
export { registerStarGraphic } from './register-star';
|
|
17
|
+
export { registerSymbolGraphic } from './register-symbol';
|
|
18
|
+
export { registerTextGraphic } from './register-text';
|
|
19
|
+
export { registerWrapTextGraphic } from './register-wraptext';
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: !0
|
|
5
|
+
}), exports.registerWrapTextGraphic = exports.registerTextGraphic = exports.registerSymbolGraphic = exports.registerStarGraphic = exports.registerShadowRootGraphic = exports.registerRichtextGraphic = exports.registerRect3dGraphic = exports.registerRectGraphic = exports.registerPyramid3dGraphic = exports.registerPolygonGraphic = exports.registerPathGraphic = exports.registerLineGraphic = exports.registerImageGraphic = exports.registerGroupGraphic = exports.registerGlyphGraphic = exports.registerCircleGraphic = exports.registerAreaGraphic = exports.registerArc3dGraphic = exports.registerArcGraphic = void 0;
|
|
6
|
+
|
|
7
|
+
var register_arc_1 = require("./register-arc");
|
|
8
|
+
|
|
9
|
+
Object.defineProperty(exports, "registerArcGraphic", {
|
|
10
|
+
enumerable: !0,
|
|
11
|
+
get: function() {
|
|
12
|
+
return register_arc_1.registerArcGraphic;
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
var register_arc3d_1 = require("./register-arc3d");
|
|
17
|
+
|
|
18
|
+
Object.defineProperty(exports, "registerArc3dGraphic", {
|
|
19
|
+
enumerable: !0,
|
|
20
|
+
get: function() {
|
|
21
|
+
return register_arc3d_1.registerArc3dGraphic;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
var register_area_1 = require("./register-area");
|
|
26
|
+
|
|
27
|
+
Object.defineProperty(exports, "registerAreaGraphic", {
|
|
28
|
+
enumerable: !0,
|
|
29
|
+
get: function() {
|
|
30
|
+
return register_area_1.registerAreaGraphic;
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
var register_circle_1 = require("./register-circle");
|
|
35
|
+
|
|
36
|
+
Object.defineProperty(exports, "registerCircleGraphic", {
|
|
37
|
+
enumerable: !0,
|
|
38
|
+
get: function() {
|
|
39
|
+
return register_circle_1.registerCircleGraphic;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
var register_glyph_1 = require("./register-glyph");
|
|
44
|
+
|
|
45
|
+
Object.defineProperty(exports, "registerGlyphGraphic", {
|
|
46
|
+
enumerable: !0,
|
|
47
|
+
get: function() {
|
|
48
|
+
return register_glyph_1.registerGlyphGraphic;
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
var register_group_1 = require("./register-group");
|
|
53
|
+
|
|
54
|
+
Object.defineProperty(exports, "registerGroupGraphic", {
|
|
55
|
+
enumerable: !0,
|
|
56
|
+
get: function() {
|
|
57
|
+
return register_group_1.registerGroupGraphic;
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
var register_image_1 = require("./register-image");
|
|
62
|
+
|
|
63
|
+
Object.defineProperty(exports, "registerImageGraphic", {
|
|
64
|
+
enumerable: !0,
|
|
65
|
+
get: function() {
|
|
66
|
+
return register_image_1.registerImageGraphic;
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
var register_line_1 = require("./register-line");
|
|
71
|
+
|
|
72
|
+
Object.defineProperty(exports, "registerLineGraphic", {
|
|
73
|
+
enumerable: !0,
|
|
74
|
+
get: function() {
|
|
75
|
+
return register_line_1.registerLineGraphic;
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
|
|
79
|
+
var register_path_1 = require("./register-path");
|
|
80
|
+
|
|
81
|
+
Object.defineProperty(exports, "registerPathGraphic", {
|
|
82
|
+
enumerable: !0,
|
|
83
|
+
get: function() {
|
|
84
|
+
return register_path_1.registerPathGraphic;
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
var register_polygon_1 = require("./register-polygon");
|
|
89
|
+
|
|
90
|
+
Object.defineProperty(exports, "registerPolygonGraphic", {
|
|
91
|
+
enumerable: !0,
|
|
92
|
+
get: function() {
|
|
93
|
+
return register_polygon_1.registerPolygonGraphic;
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
|
|
97
|
+
var register_pyramid3d_1 = require("./register-pyramid3d");
|
|
98
|
+
|
|
99
|
+
Object.defineProperty(exports, "registerPyramid3dGraphic", {
|
|
100
|
+
enumerable: !0,
|
|
101
|
+
get: function() {
|
|
102
|
+
return register_pyramid3d_1.registerPyramid3dGraphic;
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
|
|
106
|
+
var register_rect_1 = require("./register-rect");
|
|
107
|
+
|
|
108
|
+
Object.defineProperty(exports, "registerRectGraphic", {
|
|
109
|
+
enumerable: !0,
|
|
110
|
+
get: function() {
|
|
111
|
+
return register_rect_1.registerRectGraphic;
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
|
|
115
|
+
var register_rect3d_1 = require("./register-rect3d");
|
|
116
|
+
|
|
117
|
+
Object.defineProperty(exports, "registerRect3dGraphic", {
|
|
118
|
+
enumerable: !0,
|
|
119
|
+
get: function() {
|
|
120
|
+
return register_rect3d_1.registerRect3dGraphic;
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
var register_richtext_1 = require("./register-richtext");
|
|
125
|
+
|
|
126
|
+
Object.defineProperty(exports, "registerRichtextGraphic", {
|
|
127
|
+
enumerable: !0,
|
|
128
|
+
get: function() {
|
|
129
|
+
return register_richtext_1.registerRichtextGraphic;
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
|
|
133
|
+
var register_shadowRoot_1 = require("./register-shadowRoot");
|
|
134
|
+
|
|
135
|
+
Object.defineProperty(exports, "registerShadowRootGraphic", {
|
|
136
|
+
enumerable: !0,
|
|
137
|
+
get: function() {
|
|
138
|
+
return register_shadowRoot_1.registerShadowRootGraphic;
|
|
139
|
+
}
|
|
140
|
+
});
|
|
141
|
+
|
|
142
|
+
var register_star_1 = require("./register-star");
|
|
143
|
+
|
|
144
|
+
Object.defineProperty(exports, "registerStarGraphic", {
|
|
145
|
+
enumerable: !0,
|
|
146
|
+
get: function() {
|
|
147
|
+
return register_star_1.registerStarGraphic;
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
|
|
151
|
+
var register_symbol_1 = require("./register-symbol");
|
|
152
|
+
|
|
153
|
+
Object.defineProperty(exports, "registerSymbolGraphic", {
|
|
154
|
+
enumerable: !0,
|
|
155
|
+
get: function() {
|
|
156
|
+
return register_symbol_1.registerSymbolGraphic;
|
|
157
|
+
}
|
|
158
|
+
});
|
|
159
|
+
|
|
160
|
+
var register_text_1 = require("./register-text");
|
|
161
|
+
|
|
162
|
+
Object.defineProperty(exports, "registerTextGraphic", {
|
|
163
|
+
enumerable: !0,
|
|
164
|
+
get: function() {
|
|
165
|
+
return register_text_1.registerTextGraphic;
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
|
|
169
|
+
var register_wraptext_1 = require("./register-wraptext");
|
|
170
|
+
|
|
171
|
+
Object.defineProperty(exports, "registerWrapTextGraphic", {
|
|
172
|
+
enumerable: !0,
|
|
173
|
+
get: function() {
|
|
174
|
+
return register_wraptext_1.registerWrapTextGraphic;
|
|
175
|
+
}
|
|
176
|
+
});
|
|
177
|
+
//# sourceMappingURL=graphic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/register/graphic.ts"],"names":[],"mappings":";;;AAAA,+CAAoD;AAA3C,kHAAA,kBAAkB,OAAA;AAC3B,mDAAwD;AAA/C,sHAAA,oBAAoB,OAAA;AAC7B,iDAAsD;AAA7C,oHAAA,mBAAmB,OAAA;AAC5B,qDAA0D;AAAjD,wHAAA,qBAAqB,OAAA;AAC9B,mDAAwD;AAA/C,sHAAA,oBAAoB,OAAA;AAC7B,mDAAwD;AAA/C,sHAAA,oBAAoB,OAAA;AAC7B,mDAAwD;AAA/C,sHAAA,oBAAoB,OAAA;AAC7B,iDAAsD;AAA7C,oHAAA,mBAAmB,OAAA;AAC5B,iDAAsD;AAA7C,oHAAA,mBAAmB,OAAA;AAC5B,uDAA4D;AAAnD,0HAAA,sBAAsB,OAAA;AAC/B,2DAAgE;AAAvD,8HAAA,wBAAwB,OAAA;AACjC,iDAAsD;AAA7C,oHAAA,mBAAmB,OAAA;AAC5B,qDAA0D;AAAjD,wHAAA,qBAAqB,OAAA;AAC9B,yDAA8D;AAArD,4HAAA,uBAAuB,OAAA;AAChC,6DAAkE;AAAzD,gIAAA,yBAAyB,OAAA;AAClC,iDAAsD;AAA7C,oHAAA,mBAAmB,OAAA;AAC5B,qDAA0D;AAAjD,wHAAA,qBAAqB,OAAA;AAC9B,iDAAsD;AAA7C,oHAAA,mBAAmB,OAAA;AAC5B,yDAA8D;AAArD,4HAAA,uBAAuB,OAAA","file":"graphic.js","sourcesContent":["export { registerArcGraphic } from './register-arc';\nexport { registerArc3dGraphic } from './register-arc3d';\nexport { registerAreaGraphic } from './register-area';\nexport { registerCircleGraphic } from './register-circle';\nexport { registerGlyphGraphic } from './register-glyph';\nexport { registerGroupGraphic } from './register-group';\nexport { registerImageGraphic } from './register-image';\nexport { registerLineGraphic } from './register-line';\nexport { registerPathGraphic } from './register-path';\nexport { registerPolygonGraphic } from './register-polygon';\nexport { registerPyramid3dGraphic } from './register-pyramid3d';\nexport { registerRectGraphic } from './register-rect';\nexport { registerRect3dGraphic } from './register-rect3d';\nexport { registerRichtextGraphic } from './register-richtext';\nexport { registerShadowRootGraphic } from './register-shadowRoot';\nexport { registerStarGraphic } from './register-star';\nexport { registerSymbolGraphic } from './register-symbol';\nexport { registerTextGraphic } from './register-text';\nexport { registerWrapTextGraphic } from './register-wraptext';\n"]}
|
|
@@ -2,7 +2,6 @@ import type { IContributionRegistry, RegistryKey } from './types';
|
|
|
2
2
|
export declare class ContributionRegistry<T = unknown> implements IContributionRegistry<T> {
|
|
3
3
|
private readonly entries;
|
|
4
4
|
register(key: RegistryKey, contribution: T): void;
|
|
5
|
-
registerMany(entries: Iterable<[RegistryKey, T]>): void;
|
|
6
5
|
get(key: RegistryKey): T[];
|
|
7
6
|
getAll(): T[];
|
|
8
7
|
clear(key?: RegistryKey): void;
|
|
@@ -13,9 +13,6 @@ class ContributionRegistry {
|
|
|
13
13
|
const current = null !== (_a = this.entries.get(key)) && void 0 !== _a ? _a : [];
|
|
14
14
|
current.push(contribution), this.entries.set(key, current);
|
|
15
15
|
}
|
|
16
|
-
registerMany(entries) {
|
|
17
|
-
for (const [key, contribution] of entries) this.register(key, contribution);
|
|
18
|
-
}
|
|
19
16
|
get(key) {
|
|
20
17
|
var _a;
|
|
21
18
|
return [ ...null !== (_a = this.entries.get(key)) && void 0 !== _a ? _a : [] ];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/registry/contribution-registry.ts"],"names":[],"mappings":";;;AAEA,MAAa,oBAAoB;IAAjC;QACmB,YAAO,GAAG,IAAI,GAAG,EAAoB,CAAC;
|
|
1
|
+
{"version":3,"sources":["../src/registry/contribution-registry.ts"],"names":[],"mappings":";;;AAEA,MAAa,oBAAoB;IAAjC;QACmB,YAAO,GAAG,IAAI,GAAG,EAAoB,CAAC;IA0BzD,CAAC;IAxBC,QAAQ,CAAC,GAAgB,EAAE,YAAe;;QACxC,MAAM,OAAO,GAAG,MAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,mCAAI,EAAE,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC;IAED,GAAG,CAAC,GAAgB;;QAClB,OAAO,CAAC,GAAG,CAAC,MAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,mCAAI,EAAE,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM;QACJ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAM,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;YACpE,GAAG,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;YACrB,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC;IAED,KAAK,CAAC,GAAiB;QACrB,IAAI,GAAG,IAAI,IAAI,EAAE;YACf,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACrB,OAAO;SACR;QACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;CACF;AA3BD,oDA2BC","file":"contribution-registry.js","sourcesContent":["import type { IContributionRegistry, RegistryKey } from './types';\n\nexport class ContributionRegistry<T = unknown> implements IContributionRegistry<T> {\n private readonly entries = new Map<RegistryKey, T[]>();\n\n register(key: RegistryKey, contribution: T): void {\n const current = this.entries.get(key) ?? [];\n current.push(contribution);\n this.entries.set(key, current);\n }\n\n get(key: RegistryKey): T[] {\n return [...(this.entries.get(key) ?? [])];\n }\n\n getAll(): T[] {\n return Array.from(this.entries.values()).reduce<T[]>((all, current) => {\n all.push(...current);\n return all;\n }, []);\n }\n\n clear(key?: RegistryKey): void {\n if (key == null) {\n this.entries.clear();\n return;\n }\n this.entries.delete(key);\n }\n}\n"]}
|
|
@@ -3,7 +3,6 @@ import type { IPickerRegistry, RegistryKey } from './types';
|
|
|
3
3
|
export declare class PickerRegistry implements IPickerRegistry {
|
|
4
4
|
private readonly entries;
|
|
5
5
|
register(key: RegistryKey, picker: IGraphicPicker): void;
|
|
6
|
-
registerMany(entries: Iterable<[RegistryKey, IGraphicPicker]>): void;
|
|
7
6
|
get(key: RegistryKey): IGraphicPicker | undefined;
|
|
8
7
|
getAll(): IGraphicPicker[];
|
|
9
8
|
clear(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/registry/picker-registry.ts"],"names":[],"mappings":";;;AAGA,MAAa,cAAc;IAA3B;QACmB,YAAO,GAAG,IAAI,GAAG,EAA+B,CAAC;
|
|
1
|
+
{"version":3,"sources":["../src/registry/picker-registry.ts"],"names":[],"mappings":";;;AAGA,MAAa,cAAc;IAA3B;QACmB,YAAO,GAAG,IAAI,GAAG,EAA+B,CAAC;IAiBpE,CAAC;IAfC,QAAQ,CAAC,GAAgB,EAAE,MAAsB;QAC/C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC;IAED,GAAG,CAAC,GAAgB;QAClB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,MAAM;QACJ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;CACF;AAlBD,wCAkBC","file":"picker-registry.js","sourcesContent":["import type { IGraphicPicker } from '../interface/picker';\nimport type { IPickerRegistry, RegistryKey } from './types';\n\nexport class PickerRegistry implements IPickerRegistry {\n private readonly entries = new Map<RegistryKey, IGraphicPicker>();\n\n register(key: RegistryKey, picker: IGraphicPicker): void {\n this.entries.set(key, picker);\n }\n\n get(key: RegistryKey): IGraphicPicker | undefined {\n return this.entries.get(key);\n }\n\n getAll(): IGraphicPicker[] {\n return Array.from(this.entries.values());\n }\n\n clear(): void {\n this.entries.clear();\n }\n}\n"]}
|
|
@@ -4,7 +4,6 @@ export declare class RendererRegistry implements IRendererRegistry {
|
|
|
4
4
|
private readonly entries;
|
|
5
5
|
private readonly cache;
|
|
6
6
|
register(key: RegistryKey, renderer: IRendererRegistryEntry): void;
|
|
7
|
-
registerMany(entries: Iterable<[RegistryKey, IRendererRegistryEntry]>): void;
|
|
8
7
|
get(key: RegistryKey): IGraphicRender | undefined;
|
|
9
8
|
getAll(): IGraphicRender[];
|
|
10
9
|
clear(): void;
|
|
@@ -15,9 +15,6 @@ class RendererRegistry {
|
|
|
15
15
|
register(key, renderer) {
|
|
16
16
|
this.entries.set(key, renderer), this.cache.delete(key);
|
|
17
17
|
}
|
|
18
|
-
registerMany(entries) {
|
|
19
|
-
for (const [key, renderer] of entries) this.register(key, renderer);
|
|
20
|
-
}
|
|
21
18
|
get(key) {
|
|
22
19
|
if (this.cache.has(key)) return this.cache.get(key);
|
|
23
20
|
const entry = this.entries.get(key);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/registry/renderer-registry.ts"],"names":[],"mappings":";;;AAGA,SAAS,iBAAiB,CAAC,KAA6B;IACtD,OAAO,OAAO,KAAK,KAAK,UAAU,CAAC;AACrC,CAAC;AAED,MAAa,gBAAgB;IAA7B;QACmB,YAAO,GAAG,IAAI,GAAG,EAAuC,CAAC;QACzD,UAAK,GAAG,IAAI,GAAG,EAA+B,CAAC;
|
|
1
|
+
{"version":3,"sources":["../src/registry/renderer-registry.ts"],"names":[],"mappings":";;;AAGA,SAAS,iBAAiB,CAAC,KAA6B;IACtD,OAAO,OAAO,KAAK,KAAK,UAAU,CAAC;AACrC,CAAC;AAED,MAAa,gBAAgB;IAA7B;QACmB,YAAO,GAAG,IAAI,GAAG,EAAuC,CAAC;QACzD,UAAK,GAAG,IAAI,GAAG,EAA+B,CAAC;IAgClE,CAAC;IA9BC,QAAQ,CAAC,GAAgB,EAAE,QAAgC;QACzD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,GAAG,CAAC,GAAgB;QAClB,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SAC5B;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QAC5D,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC9B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM;QACJ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;aACnC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;aACzB,MAAM,CAAC,CAAC,QAAQ,EAA8B,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAClE,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrB,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF;AAlCD,4CAkCC","file":"renderer-registry.js","sourcesContent":["import type { IGraphicRender } from '../interface/render';\nimport type { IRendererRegistry, IRendererRegistryEntry, RegistryKey } from './types';\n\nfunction isRendererFactory(entry: IRendererRegistryEntry): entry is () => IGraphicRender {\n return typeof entry === 'function';\n}\n\nexport class RendererRegistry implements IRendererRegistry {\n private readonly entries = new Map<RegistryKey, IRendererRegistryEntry>();\n private readonly cache = new Map<RegistryKey, IGraphicRender>();\n\n register(key: RegistryKey, renderer: IRendererRegistryEntry): void {\n this.entries.set(key, renderer);\n this.cache.delete(key);\n }\n\n get(key: RegistryKey): IGraphicRender | undefined {\n if (this.cache.has(key)) {\n return this.cache.get(key);\n }\n\n const entry = this.entries.get(key);\n if (!entry) {\n return undefined;\n }\n\n const renderer = isRendererFactory(entry) ? entry() : entry;\n this.cache.set(key, renderer);\n return renderer;\n }\n\n getAll(): IGraphicRender[] {\n return Array.from(this.entries.keys())\n .map(key => this.get(key))\n .filter((renderer): renderer is IGraphicRender => !!renderer);\n }\n\n clear(): void {\n this.entries.clear();\n this.cache.clear();\n }\n}\n"]}
|
package/cjs/registry/types.d.ts
CHANGED
|
@@ -6,14 +6,12 @@ export type IRendererFactory = () => IGraphicRender;
|
|
|
6
6
|
export type IRendererRegistryEntry = IGraphicRender | IRendererFactory;
|
|
7
7
|
export interface IRendererRegistry {
|
|
8
8
|
register: (key: RegistryKey, renderer: IRendererRegistryEntry) => void;
|
|
9
|
-
registerMany: (entries: Iterable<[RegistryKey, IRendererRegistryEntry]>) => void;
|
|
10
9
|
get: (key: RegistryKey) => IGraphicRender | undefined;
|
|
11
10
|
getAll: () => IGraphicRender[];
|
|
12
11
|
clear: () => void;
|
|
13
12
|
}
|
|
14
13
|
export interface IPickerRegistry {
|
|
15
14
|
register: (key: RegistryKey, picker: IGraphicPicker) => void;
|
|
16
|
-
registerMany: (entries: Iterable<[RegistryKey, IGraphicPicker]>) => void;
|
|
17
15
|
get: (key: RegistryKey) => IGraphicPicker | undefined;
|
|
18
16
|
getAll: () => IGraphicPicker[];
|
|
19
17
|
clear: () => void;
|
|
@@ -27,7 +25,6 @@ export interface IPluginRegistry {
|
|
|
27
25
|
}
|
|
28
26
|
export interface IContributionRegistry<T = unknown> {
|
|
29
27
|
register: (key: RegistryKey, contribution: T) => void;
|
|
30
|
-
registerMany: (entries: Iterable<[RegistryKey, T]>) => void;
|
|
31
28
|
get: (key: RegistryKey) => T[];
|
|
32
29
|
getAll: () => T[];
|
|
33
30
|
clear: (key?: RegistryKey) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/registry/types.ts"],"names":[],"mappings":"","file":"types.js","sourcesContent":["import type { IGraphicPicker } from '../interface/picker';\nimport type { IGraphicRender } from '../interface/render';\nimport type { IPlugin } from '../plugins/types';\n\nexport type RegistryKey = string | symbol | number;\n\nexport type IRendererFactory = () => IGraphicRender;\nexport type IRendererRegistryEntry = IGraphicRender | IRendererFactory;\n\nexport interface IRendererRegistry {\n register: (key: RegistryKey, renderer: IRendererRegistryEntry) => void;\n
|
|
1
|
+
{"version":3,"sources":["../src/registry/types.ts"],"names":[],"mappings":"","file":"types.js","sourcesContent":["import type { IGraphicPicker } from '../interface/picker';\nimport type { IGraphicRender } from '../interface/render';\nimport type { IPlugin } from '../plugins/types';\n\nexport type RegistryKey = string | symbol | number;\n\nexport type IRendererFactory = () => IGraphicRender;\nexport type IRendererRegistryEntry = IGraphicRender | IRendererFactory;\n\nexport interface IRendererRegistry {\n register: (key: RegistryKey, renderer: IRendererRegistryEntry) => void;\n get: (key: RegistryKey) => IGraphicRender | undefined;\n getAll: () => IGraphicRender[];\n clear: () => void;\n}\n\nexport interface IPickerRegistry {\n register: (key: RegistryKey, picker: IGraphicPicker) => void;\n get: (key: RegistryKey) => IGraphicPicker | undefined;\n getAll: () => IGraphicPicker[];\n clear: () => void;\n}\n\nexport interface IPluginRegistry {\n install: (plugin: IPlugin) => void;\n uninstall: (name: string) => void;\n get: (name: string) => IPlugin | undefined;\n getAll: () => IPlugin[];\n clear: () => void;\n}\n\nexport interface IContributionRegistry<T = unknown> {\n register: (key: RegistryKey, contribution: T) => void;\n get: (key: RegistryKey) => T[];\n getAll: () => T[];\n clear: (key?: RegistryKey) => void;\n}\n"]}
|
package/cjs/svg.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { GradientParser } from './common/color-utils';
|
package/cjs/svg.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: !0
|
|
5
|
+
}), exports.GradientParser = void 0;
|
|
6
|
+
|
|
7
|
+
var color_utils_1 = require("./common/color-utils");
|
|
8
|
+
|
|
9
|
+
Object.defineProperty(exports, "GradientParser", {
|
|
10
|
+
enumerable: !0,
|
|
11
|
+
get: function() {
|
|
12
|
+
return color_utils_1.GradientParser;
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
//# sourceMappingURL=svg.js.map
|
package/cjs/svg.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/svg.ts"],"names":[],"mappings":";;;AAAA,oDAAsD;AAA7C,6GAAA,cAAc,OAAA","file":"svg.js","sourcesContent":["export { GradientParser } from './common/color-utils';\n"]}
|
package/cjs/text.d.ts
ADDED
package/cjs/text.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: !0
|
|
5
|
+
}), exports.calculateLineHeight = exports.getTextBounds = exports.getRichTextBounds = void 0;
|
|
6
|
+
|
|
7
|
+
var bounds_1 = require("./graphic/bounds");
|
|
8
|
+
|
|
9
|
+
Object.defineProperty(exports, "getRichTextBounds", {
|
|
10
|
+
enumerable: !0,
|
|
11
|
+
get: function() {
|
|
12
|
+
return bounds_1.getRichTextBounds;
|
|
13
|
+
}
|
|
14
|
+
}), Object.defineProperty(exports, "getTextBounds", {
|
|
15
|
+
enumerable: !0,
|
|
16
|
+
get: function() {
|
|
17
|
+
return bounds_1.getTextBounds;
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
var utils_1 = require("./common/utils");
|
|
22
|
+
|
|
23
|
+
Object.defineProperty(exports, "calculateLineHeight", {
|
|
24
|
+
enumerable: !0,
|
|
25
|
+
get: function() {
|
|
26
|
+
return utils_1.calculateLineHeight;
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
//# sourceMappingURL=text.js.map
|
package/cjs/text.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/text.ts"],"names":[],"mappings":";;;AAAA,2CAAoE;AAA3D,2GAAA,iBAAiB,OAAA;AAAE,uGAAA,aAAa,OAAA;AACzC,wCAAqD;AAA5C,4GAAA,mBAAmB,OAAA","file":"text.js","sourcesContent":["export { getRichTextBounds, getTextBounds } from './graphic/bounds';\nexport { calculateLineHeight } from './common/utils';\n"]}
|