@visactor/vgrammar-core 0.13.5 → 0.13.7-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/component/axis.d.ts +2 -0
- package/cjs/component/axis.js +15 -1
- package/cjs/component/axis.js.map +1 -1
- package/cjs/component/grid.d.ts +2 -0
- package/cjs/component/grid.js +15 -1
- package/cjs/component/grid.js.map +1 -1
- package/cjs/component/index.d.ts +2 -2
- package/cjs/component/index.js +21 -1
- package/cjs/component/index.js.map +1 -1
- package/cjs/component/label.js +36 -20
- package/cjs/component/label.js.map +1 -1
- package/cjs/component/player.js.map +1 -1
- package/cjs/core/factory.d.ts +8 -1
- package/cjs/core/factory.js +9 -2
- package/cjs/core/factory.js.map +1 -1
- package/cjs/glyph/boxplot.js +5 -5
- package/cjs/glyph/boxplot.js.map +1 -1
- package/cjs/glyph/link-path.js +2 -2
- package/cjs/glyph/link-path.js.map +1 -1
- package/cjs/glyph/ripple.js +3 -2
- package/cjs/glyph/ripple.js.map +1 -1
- package/cjs/glyph/tree-path.js +2 -2
- package/cjs/glyph/tree-path.js.map +1 -1
- package/cjs/glyph/violin.js +4 -4
- package/cjs/glyph/violin.js.map +1 -1
- package/cjs/glyph/wave.js +3 -2
- package/cjs/glyph/wave.js.map +1 -1
- package/cjs/graph/animation/animate.js +9 -4
- package/cjs/graph/animation/animate.js.map +1 -1
- package/cjs/graph/animation/animation/fade.js +5 -4
- package/cjs/graph/animation/animation/fade.js.map +1 -1
- package/cjs/graph/animation/animation/grow-cartesian.js +14 -14
- package/cjs/graph/animation/animation/grow-cartesian.js.map +1 -1
- package/cjs/graph/animation/animation/grow-interval.js +9 -6
- package/cjs/graph/animation/animation/grow-interval.js.map +1 -1
- package/cjs/graph/animation/animation/grow-points.js +9 -9
- package/cjs/graph/animation/animation/grow-points.js.map +1 -1
- package/cjs/graph/animation/animation/grow-polar.js +76 -63
- package/cjs/graph/animation/animation/grow-polar.js.map +1 -1
- package/cjs/graph/animation/animation/move.js +6 -6
- package/cjs/graph/animation/animation/move.js.map +1 -1
- package/cjs/graph/animation/animation/rotate.js +4 -4
- package/cjs/graph/animation/animation/rotate.js.map +1 -1
- package/cjs/graph/animation/animation/scale.js +5 -4
- package/cjs/graph/animation/animation/scale.js.map +1 -1
- package/cjs/graph/animation/animation/update.js +2 -2
- package/cjs/graph/animation/animation/update.js.map +1 -1
- package/cjs/graph/animation/animator.d.ts +1 -1
- package/cjs/graph/animation/animator.js +6 -1
- package/cjs/graph/animation/animator.js.map +1 -1
- package/cjs/graph/animation/morph.d.ts +2 -12
- package/cjs/graph/animation/morph.js +76 -163
- package/cjs/graph/animation/morph.js.map +1 -1
- package/cjs/graph/attributes/line.d.ts +1 -0
- package/cjs/graph/attributes/line.js +17 -5
- package/cjs/graph/attributes/line.js.map +1 -1
- package/cjs/graph/attributes/transform.js +7 -3
- package/cjs/graph/attributes/transform.js.map +1 -1
- package/cjs/graph/canvas-renderer.d.ts +1 -1
- package/cjs/graph/canvas-renderer.js +10 -5
- package/cjs/graph/canvas-renderer.js.map +1 -1
- package/cjs/graph/constants.d.ts +1 -0
- package/cjs/graph/constants.js +2 -2
- package/cjs/graph/constants.js.map +1 -1
- package/cjs/graph/element.d.ts +4 -0
- package/cjs/graph/element.js +59 -19
- package/cjs/graph/element.js.map +1 -1
- package/cjs/graph/glyph-element.js +11 -9
- package/cjs/graph/glyph-element.js.map +1 -1
- package/cjs/graph/layout/layout.d.ts +1 -0
- package/cjs/graph/layout/layout.js +8 -2
- package/cjs/graph/layout/layout.js.map +1 -1
- package/cjs/graph/mark/graphic.js +14 -8
- package/cjs/graph/mark/graphic.js.map +1 -1
- package/cjs/graph/util/events-extend.d.ts +1 -2
- package/cjs/graph/util/events-extend.js +14 -3
- package/cjs/graph/util/events-extend.js.map +1 -1
- package/cjs/graph/util/point.js +10 -26
- package/cjs/graph/util/point.js.map +1 -1
- package/cjs/graph/view-diff.d.ts +8 -0
- package/cjs/graph/view-diff.js +93 -0
- package/cjs/graph/view-diff.js.map +1 -0
- package/cjs/index.d.ts +8 -1
- package/cjs/index.js +66 -2
- package/cjs/index.js.map +1 -1
- package/cjs/interactions/base.js.map +1 -1
- package/cjs/interactions/brush-base.js +1 -2
- package/cjs/interactions/brush-filter.js +2 -1
- package/cjs/interactions/brush-highlight.js +16 -7
- package/cjs/interactions/brush-highlight.js.map +1 -1
- package/cjs/interactions/element-active-by-legend.d.ts +2 -1
- package/cjs/interactions/element-active-by-legend.js +5 -2
- package/cjs/interactions/element-active-by-legend.js.map +1 -1
- package/cjs/interactions/element-active.d.ts +3 -2
- package/cjs/interactions/element-active.js +4 -2
- package/cjs/interactions/element-active.js.map +1 -1
- package/cjs/interactions/element-highlight-by-graphic-name.d.ts +14 -0
- package/cjs/interactions/element-highlight-by-graphic-name.js +55 -0
- package/cjs/interactions/element-highlight-by-graphic-name.js.map +1 -0
- package/cjs/interactions/element-highlight-by-group.d.ts +2 -2
- package/cjs/interactions/element-highlight-by-group.js +13 -6
- package/cjs/interactions/element-highlight-by-group.js.map +1 -1
- package/cjs/interactions/element-highlight-by-key.d.ts +2 -2
- package/cjs/interactions/element-highlight-by-key.js +12 -15
- package/cjs/interactions/element-highlight-by-key.js.map +1 -1
- package/cjs/interactions/element-highlight-by-legend.d.ts +2 -1
- package/cjs/interactions/element-highlight-by-legend.js +14 -5
- package/cjs/interactions/element-highlight-by-legend.js.map +1 -1
- package/cjs/interactions/element-highlight-by-name.d.ts +2 -1
- package/cjs/interactions/element-highlight-by-name.js +14 -5
- package/cjs/interactions/element-highlight-by-name.js.map +1 -1
- package/cjs/interactions/element-highlight.d.ts +1 -1
- package/cjs/interactions/element-highlight.js +9 -6
- package/cjs/interactions/element-highlight.js.map +1 -1
- package/cjs/interactions/element-select-by-graphic-name.d.ts +7 -0
- package/cjs/interactions/element-select-by-graphic-name.js +26 -0
- package/cjs/interactions/element-select-by-graphic-name.js.map +1 -0
- package/cjs/interactions/element-select.d.ts +1 -1
- package/cjs/interactions/element-select.js +9 -10
- package/cjs/interactions/element-select.js.map +1 -1
- package/cjs/interactions/index.d.ts +2 -0
- package/cjs/interactions/index.js +17 -3
- package/cjs/interactions/index.js.map +1 -1
- package/cjs/interactions/slider-filter.js +1 -1
- package/cjs/interactions/toggle-state-mixin.js +9 -7
- package/cjs/interactions/toggle-state-mixin.js.map +1 -1
- package/cjs/interactions/tooltip.js +1 -1
- package/cjs/parse/event.d.ts +0 -2
- package/cjs/parse/event.js +4 -10
- package/cjs/parse/event.js.map +1 -1
- package/cjs/parse/util.js.map +1 -1
- package/cjs/semantic-marks/text.js.map +1 -1
- package/cjs/transforms/data/pie.js +2 -2
- package/cjs/transforms/data/pie.js.map +1 -1
- package/cjs/transforms/mark/mark-overlap.js +6 -6
- package/cjs/transforms/mark/mark-overlap.js.map +1 -1
- package/cjs/transforms/util/util.d.ts +0 -2
- package/cjs/transforms/util/util.js +3 -13
- package/cjs/transforms/util/util.js.map +1 -1
- package/cjs/types/animate.d.ts +3 -1
- package/cjs/types/animate.js.map +1 -1
- package/cjs/types/element.d.ts +7 -2
- package/cjs/types/element.js.map +1 -1
- package/cjs/types/grammar.d.ts +1 -0
- package/cjs/types/grammar.js.map +1 -1
- package/cjs/types/interaction.d.ts +4 -1
- package/cjs/types/interaction.js.map +1 -1
- package/cjs/types/mark.d.ts +2 -0
- package/cjs/types/mark.js.map +1 -1
- package/cjs/types/morph.d.ts +1 -2
- package/cjs/types/morph.js.map +1 -1
- package/cjs/types/renderer.d.ts +6 -1
- package/cjs/types/renderer.js.map +1 -1
- package/cjs/types/transform.d.ts +1 -0
- package/cjs/types/transform.js.map +1 -1
- package/cjs/types/view.d.ts +4 -1
- package/cjs/types/view.js.map +1 -1
- package/cjs/view/View.d.ts +3 -6
- package/cjs/view/View.js +73 -125
- package/cjs/view/View.js.map +1 -1
- package/cjs/view/animate.js +2 -1
- package/cjs/view/animate.js.map +1 -1
- package/cjs/view/constants.d.ts +2 -0
- package/cjs/view/constants.js +3 -2
- package/cjs/view/constants.js.map +1 -1
- package/cjs/view/events.d.ts +0 -1
- package/cjs/view/events.js +3 -17
- package/cjs/view/events.js.map +1 -1
- package/cjs/view/glyph.d.ts +4 -0
- package/cjs/view/glyph.js +12 -3
- package/cjs/view/glyph.js.map +1 -1
- package/cjs/view/grammar-record.js +2 -3
- package/cjs/view/grammar-record.js.map +1 -1
- package/cjs/view/group.js +9 -6
- package/cjs/view/group.js.map +1 -1
- package/cjs/view/mark-animate-mixin.d.ts +1 -0
- package/cjs/view/mark-animate-mixin.js +29 -0
- package/cjs/view/mark-animate-mixin.js.map +1 -0
- package/cjs/view/mark.d.ts +4 -1
- package/cjs/view/mark.js +104 -68
- package/cjs/view/mark.js.map +1 -1
- package/cjs/view/view-animate-mixin.d.ts +1 -0
- package/cjs/view/view-animate-mixin.js +26 -0
- package/cjs/view/view-animate-mixin.js.map +1 -0
- package/cjs/view/view-event-mixin.d.ts +1 -0
- package/cjs/view/view-event-mixin.js +92 -0
- package/cjs/view/view-event-mixin.js.map +1 -0
- package/cjs/view/view-morph-mixin.d.ts +1 -0
- package/cjs/view/view-morph-mixin.js +32 -0
- package/cjs/view/view-morph-mixin.js.map +1 -0
- package/es/component/axis.d.ts +2 -0
- package/es/component/axis.js +10 -0
- package/es/component/axis.js.map +1 -1
- package/es/component/grid.d.ts +2 -0
- package/es/component/grid.js +10 -0
- package/es/component/grid.js.map +1 -1
- package/es/component/index.d.ts +2 -2
- package/es/component/index.js +2 -2
- package/es/component/index.js.map +1 -1
- package/es/component/label.js +35 -19
- package/es/component/label.js.map +1 -1
- package/es/component/player.js.map +1 -1
- package/es/core/factory.d.ts +8 -1
- package/es/core/factory.js +10 -2
- package/es/core/factory.js.map +1 -1
- package/es/glyph/boxplot.js +4 -2
- package/es/glyph/boxplot.js.map +1 -1
- package/es/glyph/link-path.js +4 -2
- package/es/glyph/link-path.js.map +1 -1
- package/es/glyph/ripple.js +3 -1
- package/es/glyph/ripple.js.map +1 -1
- package/es/glyph/tree-path.js +4 -2
- package/es/glyph/tree-path.js.map +1 -1
- package/es/glyph/violin.js +4 -2
- package/es/glyph/violin.js.map +1 -1
- package/es/glyph/wave.js +3 -1
- package/es/glyph/wave.js.map +1 -1
- package/es/graph/animation/animate.js +9 -4
- package/es/graph/animation/animate.js.map +1 -1
- package/es/graph/animation/animation/fade.js +5 -4
- package/es/graph/animation/animation/fade.js.map +1 -1
- package/es/graph/animation/animation/grow-cartesian.js +14 -14
- package/es/graph/animation/animation/grow-cartesian.js.map +1 -1
- package/es/graph/animation/animation/grow-interval.js +9 -6
- package/es/graph/animation/animation/grow-interval.js.map +1 -1
- package/es/graph/animation/animation/grow-points.js +9 -9
- package/es/graph/animation/animation/grow-points.js.map +1 -1
- package/es/graph/animation/animation/grow-polar.js +76 -63
- package/es/graph/animation/animation/grow-polar.js.map +1 -1
- package/es/graph/animation/animation/move.js +6 -6
- package/es/graph/animation/animation/move.js.map +1 -1
- package/es/graph/animation/animation/rotate.js +3 -3
- package/es/graph/animation/animation/rotate.js.map +1 -1
- package/es/graph/animation/animation/scale.js +5 -4
- package/es/graph/animation/animation/scale.js.map +1 -1
- package/es/graph/animation/animation/update.js +1 -3
- package/es/graph/animation/animation/update.js.map +1 -1
- package/es/graph/animation/animator.d.ts +1 -1
- package/es/graph/animation/animator.js +6 -1
- package/es/graph/animation/animator.js.map +1 -1
- package/es/graph/animation/morph.d.ts +2 -12
- package/es/graph/animation/morph.js +72 -159
- package/es/graph/animation/morph.js.map +1 -1
- package/es/graph/attributes/line.d.ts +1 -0
- package/es/graph/attributes/line.js +14 -3
- package/es/graph/attributes/line.js.map +1 -1
- package/es/graph/attributes/transform.js +7 -3
- package/es/graph/attributes/transform.js.map +1 -1
- package/es/graph/canvas-renderer.d.ts +1 -1
- package/es/graph/canvas-renderer.js +11 -6
- package/es/graph/canvas-renderer.js.map +1 -1
- package/es/graph/constants.d.ts +1 -0
- package/es/graph/constants.js +2 -0
- package/es/graph/constants.js.map +1 -1
- package/es/graph/element.d.ts +4 -0
- package/es/graph/element.js +59 -22
- package/es/graph/element.js.map +1 -1
- package/es/graph/glyph-element.js +10 -11
- package/es/graph/glyph-element.js.map +1 -1
- package/es/graph/layout/layout.d.ts +1 -0
- package/es/graph/layout/layout.js +6 -0
- package/es/graph/layout/layout.js.map +1 -1
- package/es/graph/mark/graphic.js +13 -7
- package/es/graph/mark/graphic.js.map +1 -1
- package/es/graph/util/events-extend.d.ts +1 -2
- package/es/graph/util/events-extend.js +16 -3
- package/es/graph/util/events-extend.js.map +1 -1
- package/es/graph/util/point.js +10 -26
- package/es/graph/util/point.js.map +1 -1
- package/es/graph/view-diff.d.ts +8 -0
- package/es/graph/view-diff.js +89 -0
- package/es/graph/view-diff.js.map +1 -0
- package/es/index.d.ts +8 -1
- package/es/index.js +29 -1
- package/es/index.js.map +1 -1
- package/es/interactions/base.js.map +1 -1
- package/es/interactions/brush-filter.js +2 -1
- package/es/interactions/brush-highlight.js +16 -7
- package/es/interactions/brush-highlight.js.map +1 -1
- package/es/interactions/element-active-by-legend.d.ts +2 -1
- package/es/interactions/element-active-by-legend.js +5 -2
- package/es/interactions/element-active-by-legend.js.map +1 -1
- package/es/interactions/element-active.d.ts +3 -2
- package/es/interactions/element-active.js +5 -4
- package/es/interactions/element-active.js.map +1 -1
- package/es/interactions/element-highlight-by-graphic-name.d.ts +14 -0
- package/es/interactions/element-highlight-by-graphic-name.js +51 -0
- package/es/interactions/element-highlight-by-graphic-name.js.map +1 -0
- package/es/interactions/element-highlight-by-group.d.ts +2 -2
- package/es/interactions/element-highlight-by-group.js +13 -6
- package/es/interactions/element-highlight-by-group.js.map +1 -1
- package/es/interactions/element-highlight-by-key.d.ts +2 -2
- package/es/interactions/element-highlight-by-key.js +12 -15
- package/es/interactions/element-highlight-by-key.js.map +1 -1
- package/es/interactions/element-highlight-by-legend.d.ts +2 -1
- package/es/interactions/element-highlight-by-legend.js +14 -5
- package/es/interactions/element-highlight-by-legend.js.map +1 -1
- package/es/interactions/element-highlight-by-name.d.ts +2 -1
- package/es/interactions/element-highlight-by-name.js +14 -5
- package/es/interactions/element-highlight-by-name.js.map +1 -1
- package/es/interactions/element-highlight.d.ts +1 -1
- package/es/interactions/element-highlight.js +9 -6
- package/es/interactions/element-highlight.js.map +1 -1
- package/es/interactions/element-select-by-graphic-name.d.ts +7 -0
- package/es/interactions/element-select-by-graphic-name.js +20 -0
- package/es/interactions/element-select-by-graphic-name.js.map +1 -0
- package/es/interactions/element-select.d.ts +1 -1
- package/es/interactions/element-select.js +9 -9
- package/es/interactions/element-select.js.map +1 -1
- package/es/interactions/filter.js +1 -1
- package/es/interactions/fish-eye.js +1 -1
- package/es/interactions/index.d.ts +2 -0
- package/es/interactions/index.js +14 -1
- package/es/interactions/index.js.map +1 -1
- package/es/interactions/legend-filter.js +1 -1
- package/es/interactions/player-filter.js +1 -1
- package/es/interactions/roll-up.js +1 -1
- package/es/interactions/scrollbar-filter.js +1 -1
- package/es/interactions/slider-filter.js +1 -1
- package/es/interactions/toggle-state-mixin.js +9 -7
- package/es/interactions/toggle-state-mixin.js.map +1 -1
- package/es/interactions/tooltip.js +1 -1
- package/es/parse/coordinate.js +1 -1
- package/es/parse/event.d.ts +0 -2
- package/es/parse/event.js +4 -8
- package/es/parse/event.js.map +1 -1
- package/es/parse/mark.js +1 -1
- package/es/parse/option.js +1 -2
- package/es/parse/scale.js +1 -1
- package/es/parse/transform.js +1 -1
- package/es/parse/util.js +1 -1
- package/es/parse/util.js.map +1 -1
- package/es/parse/view.js +1 -1
- package/es/semantic-marks/text.js.map +1 -1
- package/es/transforms/data/pie.js +1 -1
- package/es/transforms/data/pie.js.map +1 -1
- package/es/transforms/mark/mark-overlap.js +6 -6
- package/es/transforms/mark/mark-overlap.js.map +1 -1
- package/es/transforms/util/util.d.ts +0 -2
- package/es/transforms/util/util.js +0 -10
- package/es/transforms/util/util.js.map +1 -1
- package/es/types/animate.d.ts +3 -1
- package/es/types/animate.js.map +1 -1
- package/es/types/element.d.ts +7 -2
- package/es/types/element.js.map +1 -1
- package/es/types/grammar.d.ts +1 -0
- package/es/types/grammar.js.map +1 -1
- package/es/types/interaction.d.ts +4 -1
- package/es/types/interaction.js.map +1 -1
- package/es/types/mark.d.ts +2 -0
- package/es/types/mark.js.map +1 -1
- package/es/types/morph.d.ts +1 -2
- package/es/types/morph.js.map +1 -1
- package/es/types/renderer.d.ts +6 -1
- package/es/types/renderer.js.map +1 -1
- package/es/types/transform.d.ts +1 -0
- package/es/types/transform.js.map +1 -1
- package/es/types/view.d.ts +4 -1
- package/es/types/view.js.map +1 -1
- package/es/view/View.d.ts +3 -6
- package/es/view/View.js +63 -124
- package/es/view/View.js.map +1 -1
- package/es/view/animate.js +2 -1
- package/es/view/animate.js.map +1 -1
- package/es/view/constants.d.ts +2 -0
- package/es/view/constants.js +4 -0
- package/es/view/constants.js.map +1 -1
- package/es/view/events.d.ts +0 -1
- package/es/view/events.js +1 -15
- package/es/view/events.js.map +1 -1
- package/es/view/glyph.d.ts +4 -0
- package/es/view/glyph.js +11 -0
- package/es/view/glyph.js.map +1 -1
- package/es/view/grammar-record.js +2 -3
- package/es/view/grammar-record.js.map +1 -1
- package/es/view/group.js +8 -7
- package/es/view/group.js.map +1 -1
- package/es/view/mark-animate-mixin.d.ts +1 -0
- package/es/view/mark-animate-mixin.js +25 -0
- package/es/view/mark-animate-mixin.js.map +1 -0
- package/es/view/mark.d.ts +4 -1
- package/es/view/mark.js +102 -70
- package/es/view/mark.js.map +1 -1
- package/es/view/view-animate-mixin.d.ts +1 -0
- package/es/view/view-animate-mixin.js +16 -0
- package/es/view/view-animate-mixin.js.map +1 -0
- package/es/view/view-event-mixin.d.ts +1 -0
- package/es/view/view-event-mixin.js +90 -0
- package/es/view/view-event-mixin.js.map +1 -0
- package/es/view/view-morph-mixin.d.ts +1 -0
- package/es/view/view-morph-mixin.js +22 -0
- package/es/view/view-morph-mixin.js.map +1 -0
- package/package.json +10 -10
- package/cjs/graph/util/element.d.ts +0 -2
- package/cjs/graph/util/element.js +0 -10
- package/cjs/graph/util/element.js.map +0 -1
- package/es/graph/util/element.d.ts +0 -2
- package/es/graph/util/element.js +0 -8
- package/es/graph/util/element.js.map +0 -1
|
@@ -14,7 +14,7 @@ export class ElementHighlightByLegend extends BaseInteraction {
|
|
|
14
14
|
var _a, _b;
|
|
15
15
|
this.start(null === (_b = null === (_a = e.detail) || void 0 === _a ? void 0 : _a.data) || void 0 === _b ? void 0 : _b.id);
|
|
16
16
|
}, this.handleReset = e => {
|
|
17
|
-
this.
|
|
17
|
+
this.resetAll();
|
|
18
18
|
}, this.options = Object.assign({}, ElementHighlightByLegend.defaultOptions, options),
|
|
19
19
|
this._marks = view.getMarksBySelector(this.options.selector);
|
|
20
20
|
}
|
|
@@ -35,18 +35,27 @@ export class ElementHighlightByLegend extends BaseInteraction {
|
|
|
35
35
|
const filterValue = generateFilterValue(this.options);
|
|
36
36
|
this._marks.forEach((mark => {
|
|
37
37
|
mark.elements.forEach((el => {
|
|
38
|
-
filterValue(el) === itemKey ?
|
|
39
|
-
|
|
38
|
+
filterValue(el) === itemKey ? el.updateStates({
|
|
39
|
+
[this.options.blurState]: !1,
|
|
40
|
+
[this.options.highlightState]: !0
|
|
41
|
+
}) : el.updateStates({
|
|
42
|
+
[this.options.blurState]: !0,
|
|
43
|
+
[this.options.highlightState]: !1
|
|
44
|
+
});
|
|
40
45
|
}));
|
|
41
46
|
}));
|
|
42
47
|
}
|
|
43
|
-
|
|
48
|
+
resetAll() {
|
|
49
|
+
const states = [ this.options.highlightState, this.options.blurState ];
|
|
44
50
|
this._marks.forEach((mark => {
|
|
45
51
|
mark.elements.forEach((el => {
|
|
46
|
-
el.removeState(
|
|
52
|
+
el.removeState(states);
|
|
47
53
|
}));
|
|
48
54
|
}));
|
|
49
55
|
}
|
|
56
|
+
reset(element) {
|
|
57
|
+
element ? this._marks && this._marks.includes(element.mark) && element.removeState([ this.options.highlightState, this.options.blurState ]) : this.resetAll();
|
|
58
|
+
}
|
|
50
59
|
}
|
|
51
60
|
|
|
52
61
|
ElementHighlightByLegend.type = "element-highlight-by-legend", ElementHighlightByLegend.defaultOptions = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/interactions/element-highlight-by-legend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAStD,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C,MAAM,OAAO,wBAAyB,SAAQ,eAAgD;IAY5F,YAAY,IAAW,EAAE,OAAyC;QAChE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAXvB,SAAI,GAAW,wBAAwB,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"sources":["../src/interactions/element-highlight-by-legend.ts"],"names":[],"mappings":"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","file":"element-highlight-by-legend.js","sourcesContent":["import { InteractionStateEnum } from '../graph/enums';\nimport type {\n ElementHighlightByLegendOptions,\n IElement,\n IGlyphElement,\n IMark,\n IView,\n InteractionEvent\n} from '../types';\nimport { BaseInteraction } from './base';\nimport { LegendEvent } from '@visactor/vrender-components';\nimport { isNil } from '@visactor/vutils';\nimport { generateFilterValue } from './utils';\n\nexport class ElementHighlightByLegend extends BaseInteraction<ElementHighlightByLegendOptions> {\n static type: string = 'element-highlight-by-legend';\n type: string = ElementHighlightByLegend.type;\n\n static defaultOptions: ElementHighlightByLegendOptions = {\n highlightState: InteractionStateEnum.highlight,\n blurState: InteractionStateEnum.blur,\n filterType: 'groupKey'\n };\n options: ElementHighlightByLegendOptions;\n protected _marks?: IMark[];\n\n constructor(view: IView, options?: ElementHighlightByLegendOptions) {\n super(view, options);\n this.options = Object.assign({}, ElementHighlightByLegend.defaultOptions, options);\n\n this._marks = view.getMarksBySelector(this.options.selector);\n }\n\n getStartState(): string {\n return this.options.highlightState;\n }\n\n protected getEvents() {\n return [\n {\n type: LegendEvent.legendItemHover,\n handler: this.handleStart\n },\n { type: LegendEvent.legendItemUnHover, handler: this.handleReset }\n ];\n }\n\n start(itemKey: IElement | IGlyphElement | string) {\n if (isNil(itemKey)) {\n return;\n }\n const filterValue = generateFilterValue(this.options);\n\n this._marks.forEach(mark => {\n mark.elements.forEach(el => {\n const isHighlight = filterValue(el) === itemKey;\n\n if (isHighlight) {\n el.updateStates({\n [this.options.blurState]: false,\n [this.options.highlightState]: true\n });\n } else {\n el.updateStates({\n [this.options.blurState]: true,\n [this.options.highlightState]: false\n });\n }\n });\n });\n }\n\n resetAll() {\n const states = [this.options.highlightState, this.options.blurState];\n\n this._marks.forEach(mark => {\n mark.elements.forEach(el => {\n el.removeState(states);\n });\n });\n }\n\n reset(element?: InteractionEvent['element']) {\n if (element) {\n if (this._marks && this._marks.includes(element.mark)) {\n element.removeState([this.options.highlightState, this.options.blurState]);\n }\n } else {\n this.resetAll();\n }\n }\n\n handleStart = (e: InteractionEvent, element: IElement | IGlyphElement) => {\n this.start(e.detail?.data?.id);\n };\n\n handleReset = (e: InteractionEvent) => {\n this.resetAll();\n };\n}\n"]}
|
|
@@ -18,7 +18,8 @@ export declare class ElementHighlightByName extends BaseInteraction<ElementHighl
|
|
|
18
18
|
protected _filterByName(e: InteractionEvent): boolean;
|
|
19
19
|
protected _parseTargetKey(e: InteractionEvent, element: IElement | IGlyphElement): any;
|
|
20
20
|
start(itemKey: IElement | IGlyphElement | string): void;
|
|
21
|
-
|
|
21
|
+
resetAll(): void;
|
|
22
|
+
reset(element?: InteractionEvent['element']): void;
|
|
22
23
|
handleStart: (e: InteractionEvent, element: IElement | IGlyphElement) => void;
|
|
23
24
|
handleReset: (e: InteractionEvent) => void;
|
|
24
25
|
}
|
|
@@ -14,7 +14,7 @@ export class ElementHighlightByName extends BaseInteraction {
|
|
|
14
14
|
this.start(itemKey);
|
|
15
15
|
}
|
|
16
16
|
}, this.handleReset = e => {
|
|
17
|
-
(this.options.shouldReset ? this.options.shouldReset(e) : this._filterByName(e)) && this.
|
|
17
|
+
(this.options.shouldReset ? this.options.shouldReset(e) : this._filterByName(e)) && this.resetAll();
|
|
18
18
|
}, this.options = Object.assign({}, ElementHighlightByName.defaultOptions, options),
|
|
19
19
|
this._marks = view.getMarksBySelector(this.options.selector);
|
|
20
20
|
}
|
|
@@ -43,18 +43,27 @@ export class ElementHighlightByName extends BaseInteraction {
|
|
|
43
43
|
const filterValue = generateFilterValue(this.options);
|
|
44
44
|
this._marks.forEach((mark => {
|
|
45
45
|
mark.elements.forEach((el => {
|
|
46
|
-
filterValue(el) === itemKey ?
|
|
47
|
-
|
|
46
|
+
filterValue(el) === itemKey ? el.updateStates({
|
|
47
|
+
[this.options.blurState]: !1,
|
|
48
|
+
[this.options.highlightState]: !0
|
|
49
|
+
}) : el.updateStates({
|
|
50
|
+
[this.options.blurState]: !0,
|
|
51
|
+
[this.options.highlightState]: !1
|
|
52
|
+
});
|
|
48
53
|
}));
|
|
49
54
|
}));
|
|
50
55
|
}
|
|
51
|
-
|
|
56
|
+
resetAll() {
|
|
57
|
+
const states = [ this.options.blurState, this.options.highlightState ];
|
|
52
58
|
this._marks.forEach((mark => {
|
|
53
59
|
mark.elements.forEach((el => {
|
|
54
|
-
el.removeState(
|
|
60
|
+
el.removeState(states);
|
|
55
61
|
}));
|
|
56
62
|
}));
|
|
57
63
|
}
|
|
64
|
+
reset(element) {
|
|
65
|
+
element ? this._marks && this._marks.includes(element.mark) && element.removeState([ this.options.highlightState, this.options.blurState ]) : this.resetAll();
|
|
66
|
+
}
|
|
58
67
|
}
|
|
59
68
|
|
|
60
69
|
ElementHighlightByName.type = "element-highlight-by-name", ElementHighlightByName.defaultOptions = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/interactions/element-highlight-by-name.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C,MAAM,OAAO,sBAAuB,SAAQ,eAA8C;IAcxF,YAAY,IAAW,EAAE,OAAuC;QAC9D,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAbvB,SAAI,GAAW,sBAAsB,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"sources":["../src/interactions/element-highlight-by-name.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C,MAAM,OAAO,sBAAuB,SAAQ,eAA8C;IAcxF,YAAY,IAAW,EAAE,OAAuC;QAC9D,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAbvB,SAAI,GAAW,sBAAsB,CAAC,IAAI,CAAC;QA2F3C,gBAAW,GAAG,CAAC,CAAmB,EAAE,OAAiC,EAAE,EAAE;YACvE,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YAClG,IAAI,UAAU,EAAE;gBACd,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;gBACjD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;aACrB;QACH,CAAC,CAAC;QAEF,gBAAW,GAAG,CAAC,CAAmB,EAAE,EAAE;YACpC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YAElG,IAAI,UAAU,EAAE;gBACd,IAAI,CAAC,QAAQ,EAAE,CAAC;aACjB;QACH,CAAC,CAAC;QA3FA,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,sBAAsB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAEjF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC/D,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;IACrC,CAAC;IAES,SAAS;QACjB,OAAO;YACL;gBACE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;gBAC1B,OAAO,EAAE,IAAI,CAAC,WAAW;aAC1B;YACD,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE;SAC7D,CAAC;IACJ,CAAC;IAES,aAAa,CAAC,CAAmB;;QACzC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC9C,OAAO,CAAA,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,MAAM,0CAAE,IAAI,KAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;IAES,eAAe,CAAC,CAAmB,EAAE,OAAiC;QAC9E,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS;YAC3B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM;gBAC1B,CAAC,CAAE,CAAC,CAAC,MAAM,CAAC,SAAiB,CAAC,IAAI;gBAClC,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAED,KAAK,CAAC,OAA0C;QAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE;YAClB,OAAO;SACR;QAED,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEtD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACzB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;gBACzB,MAAM,WAAW,GAAG,WAAW,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC;gBAChD,IAAI,WAAW,EAAE;oBACf,EAAE,CAAC,YAAY,CAAC;wBACd,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,KAAK;wBAC/B,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,IAAI;qBACpC,CAAC,CAAC;iBACJ;qBAAM;oBACL,EAAE,CAAC,YAAY,CAAC;wBACd,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,IAAI;wBAC9B,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,KAAK;qBACrC,CAAC,CAAC;iBACJ;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;QACN,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAErE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACzB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;gBACzB,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAqC;QACzC,IAAI,OAAO,EAAE;YACX,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACrD,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;aAC5E;SACF;aAAM;YACL,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;IACH,CAAC;;AA1FM,2BAAI,GAAW,2BAA2B,CAAC;AAG3C,qCAAc,GAAkC;IACrD,OAAO,EAAE,aAAa;IACtB,UAAU,EAAE,YAAY;IACxB,cAAc,EAAE,oBAAoB,CAAC,SAAS;IAC9C,SAAS,EAAE,oBAAoB,CAAC,IAAI;IACpC,UAAU,EAAE,UAAU;CACvB,CAAC","file":"element-highlight-by-name.js","sourcesContent":["import { InteractionStateEnum } from '../graph/enums';\nimport type { ElementHighlightByNameOptions, IElement, IGlyphElement, IMark, IView, InteractionEvent } from '../types';\nimport { BaseInteraction } from './base';\nimport { array, isNil } from '@visactor/vutils';\nimport { generateFilterValue } from './utils';\n\nexport class ElementHighlightByName extends BaseInteraction<ElementHighlightByNameOptions> {\n static type: string = 'element-highlight-by-name';\n type: string = ElementHighlightByName.type;\n\n static defaultOptions: ElementHighlightByNameOptions = {\n trigger: 'pointerover',\n triggerOff: 'pointerout',\n highlightState: InteractionStateEnum.highlight,\n blurState: InteractionStateEnum.blur,\n filterType: 'groupKey'\n };\n options: ElementHighlightByNameOptions;\n protected _marks?: IMark[];\n\n constructor(view: IView, options?: ElementHighlightByNameOptions) {\n super(view, options);\n this.options = Object.assign({}, ElementHighlightByName.defaultOptions, options);\n\n this._marks = view.getMarksBySelector(this.options.selector);\n }\n\n getStartState(): string {\n return this.options.highlightState;\n }\n\n protected getEvents() {\n return [\n {\n type: this.options.trigger,\n handler: this.handleStart\n },\n { type: this.options.triggerOff, handler: this.handleReset }\n ];\n }\n\n protected _filterByName(e: InteractionEvent) {\n const names = array(this.options.graphicName);\n return e?.target?.name && names.includes(e.target.name);\n }\n\n protected _parseTargetKey(e: InteractionEvent, element: IElement | IGlyphElement) {\n return this.options.parseData\n ? this.options.parseData(e)\n : e.target.type === 'text'\n ? (e.target.attribute as any).text\n : null;\n }\n\n start(itemKey: IElement | IGlyphElement | string) {\n if (isNil(itemKey)) {\n return;\n }\n\n const filterValue = generateFilterValue(this.options);\n\n this._marks.forEach(mark => {\n mark.elements.forEach(el => {\n const isHighlight = filterValue(el) === itemKey;\n if (isHighlight) {\n el.updateStates({\n [this.options.blurState]: false,\n [this.options.highlightState]: true\n });\n } else {\n el.updateStates({\n [this.options.blurState]: true,\n [this.options.highlightState]: false\n });\n }\n });\n });\n }\n\n resetAll() {\n const states = [this.options.blurState, this.options.highlightState];\n\n this._marks.forEach(mark => {\n mark.elements.forEach(el => {\n el.removeState(states);\n });\n });\n }\n\n reset(element?: InteractionEvent['element']) {\n if (element) {\n if (this._marks && this._marks.includes(element.mark)) {\n element.removeState([this.options.highlightState, this.options.blurState]);\n }\n } else {\n this.resetAll();\n }\n }\n\n handleStart = (e: InteractionEvent, element: IElement | IGlyphElement) => {\n const shoudStart = this.options.shouldStart ? this.options.shouldStart(e) : this._filterByName(e);\n if (shoudStart) {\n const itemKey = this._parseTargetKey(e, element);\n this.start(itemKey);\n }\n };\n\n handleReset = (e: InteractionEvent) => {\n const shoudReset = this.options.shouldReset ? this.options.shouldReset(e) : this._filterByName(e);\n\n if (shoudReset) {\n this.resetAll();\n }\n };\n}\n"]}
|
|
@@ -18,7 +18,7 @@ export declare class ElementHighlight extends BaseInteraction<ElementHighlightOp
|
|
|
18
18
|
type: EventType;
|
|
19
19
|
handler: (e: InteractionEvent) => void;
|
|
20
20
|
}[];
|
|
21
|
-
|
|
21
|
+
resetAll(): void;
|
|
22
22
|
start(element: InteractionEvent['element']): void;
|
|
23
23
|
reset(element: InteractionEvent['element']): void;
|
|
24
24
|
handleStart: (e: InteractionEvent) => void;
|
|
@@ -11,7 +11,12 @@ export class ElementHighlight extends BaseInteraction {
|
|
|
11
11
|
super(view, options), this.type = ElementHighlight.type, this.handleStart = e => {
|
|
12
12
|
this.start(e.element);
|
|
13
13
|
}, this.handleReset = e => {
|
|
14
|
-
this.
|
|
14
|
+
if (!this._statedElements || !this._statedElements.length) return;
|
|
15
|
+
const element = e.element;
|
|
16
|
+
if (element) {
|
|
17
|
+
const hasActiveElement = this._marks && this._marks.includes(element.mark);
|
|
18
|
+
"view" !== this._resetType || hasActiveElement ? "self" === this._resetType && hasActiveElement && this.resetAll() : this.resetAll();
|
|
19
|
+
}
|
|
15
20
|
}, this.options = Object.assign({}, ElementHighlight.defaultOptions, options), this._marks = view.getMarksBySelector(this.options.selector),
|
|
16
21
|
this._stateMarks = groupMarksByState(this._marks, [ this.options.highlightState, this.options.blurState ]);
|
|
17
22
|
}
|
|
@@ -30,7 +35,7 @@ export class ElementHighlight extends BaseInteraction {
|
|
|
30
35
|
handler: this.handleReset
|
|
31
36
|
}), events;
|
|
32
37
|
}
|
|
33
|
-
|
|
38
|
+
resetAll() {
|
|
34
39
|
const {highlightState: highlightState, blurState: blurState} = this.options;
|
|
35
40
|
this._lastElement && (this.clearAllStates(highlightState, blurState), this.dispatchEvent("reset", {
|
|
36
41
|
elements: [ this._lastElement ],
|
|
@@ -46,12 +51,10 @@ export class ElementHighlight extends BaseInteraction {
|
|
|
46
51
|
elements: [ element ],
|
|
47
52
|
options: this.options
|
|
48
53
|
});
|
|
49
|
-
} else this._lastElement && "view" === this._resetType && this.
|
|
54
|
+
} else this._lastElement && "view" === this._resetType && this.resetAll();
|
|
50
55
|
}
|
|
51
56
|
reset(element) {
|
|
52
|
-
|
|
53
|
-
const hasActiveElement = element && this._marks && this._marks.includes(element.mark);
|
|
54
|
-
"view" !== this._resetType || hasActiveElement ? "self" === this._resetType && hasActiveElement && this.clearPrevElements() : this.clearPrevElements();
|
|
57
|
+
element ? this._marks && this._marks.includes(element.mark) && element.removeState([ this.options.highlightState, this.options.blurState ]) : this.resetAll();
|
|
55
58
|
}
|
|
56
59
|
}
|
|
57
60
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/interactions/element-highlight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAWtD,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI5C,MAAM,OAAO,gBAAiB,SAAQ,eAAwC;IAiB5E,YAAY,IAAW,EAAE,OAAiC;QACxD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAhBvB,SAAI,GAAW,gBAAgB,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"sources":["../src/interactions/element-highlight.ts"],"names":[],"mappings":"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","file":"element-highlight.js","sourcesContent":["import { InteractionStateEnum } from '../graph/enums';\nimport type {\n ElementHighlightOptions,\n EventType,\n IElement,\n IGlyphElement,\n IMark,\n IToggleStateMixin,\n IView,\n InteractionEvent\n} from '../types';\nimport { BaseInteraction } from './base';\nimport { groupMarksByState } from './utils';\nimport { isString } from '@visactor/vutils';\n\nexport interface ElementHighlight extends IToggleStateMixin, BaseInteraction<ElementHighlightOptions> {}\n\nexport class ElementHighlight extends BaseInteraction<ElementHighlightOptions> {\n static type: string = 'element-highlight';\n type: string = ElementHighlight.type;\n\n static defaultOptions: ElementHighlightOptions = {\n highlightState: InteractionStateEnum.highlight,\n blurState: InteractionStateEnum.blur,\n trigger: 'pointerover',\n triggerOff: 'pointerout'\n };\n options: ElementHighlightOptions;\n protected _marks?: IMark[];\n protected _stateMarks: Record<string, IMark[]>;\n protected _lastElement?: IElement;\n protected _statedElements?: (IElement | IGlyphElement)[];\n protected _resetType?: 'view' | 'self';\n\n constructor(view: IView, options?: ElementHighlightOptions) {\n super(view, options);\n this.options = Object.assign({}, ElementHighlight.defaultOptions, options);\n\n this._marks = view.getMarksBySelector(this.options.selector);\n this._stateMarks = groupMarksByState(this._marks, [this.options.highlightState, this.options.blurState]);\n }\n\n getStartState(): string {\n return this.options.highlightState;\n }\n\n protected getEvents() {\n const triggerOff = this.options.triggerOff;\n const trigger = this.options.trigger;\n const events = [\n {\n type: trigger,\n handler: this.handleStart\n }\n ];\n\n let eventName = triggerOff;\n if (isString(triggerOff) && (triggerOff as string).includes('view:')) {\n eventName = (triggerOff as string).replace('view:', '') as EventType;\n this._resetType = 'view';\n } else {\n this._resetType = 'self';\n }\n\n events.push({ type: eventName as EventType, handler: this.handleReset });\n\n return events;\n }\n\n resetAll() {\n const { highlightState, blurState } = this.options;\n\n if (this._lastElement) {\n this.clearAllStates(highlightState, blurState);\n\n this.dispatchEvent('reset', { elements: [this._lastElement], options: this.options });\n\n this._lastElement = null;\n\n this._statedElements = null;\n }\n }\n\n start(element: InteractionEvent['element']) {\n if (element && this._marks && this._marks.includes(element.mark)) {\n const { highlightState, blurState } = this.options;\n\n if (this._lastElement === element) {\n return;\n }\n\n this._statedElements = this.updateStates([element], this._statedElements, highlightState, blurState);\n\n this._lastElement = element;\n\n this.dispatchEvent('start', { elements: [element], options: this.options });\n } else if (this._lastElement && this._resetType === 'view') {\n this.resetAll();\n }\n }\n\n reset(element: InteractionEvent['element']) {\n if (element) {\n if (this._marks && this._marks.includes(element.mark)) {\n element.removeState([this.options.highlightState, this.options.blurState]);\n }\n } else {\n this.resetAll();\n }\n }\n\n handleStart = (e: InteractionEvent) => {\n this.start(e.element);\n };\n\n handleReset = (e: InteractionEvent) => {\n if (!this._statedElements || !this._statedElements.length) {\n return;\n }\n const element = e.element;\n\n if (element) {\n const hasActiveElement = this._marks && this._marks.includes(element.mark);\n\n if (this._resetType === 'view' && !hasActiveElement) {\n this.resetAll();\n } else if (this._resetType === 'self' && hasActiveElement) {\n this.resetAll();\n }\n }\n };\n}\n"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { InteractionEvent } from '../types';
|
|
2
|
+
import { ElementSelect } from './element-select';
|
|
3
|
+
export declare class ElementSelectByGraphicName extends ElementSelect {
|
|
4
|
+
static type: string;
|
|
5
|
+
type: string;
|
|
6
|
+
start(element: InteractionEvent['element']): void;
|
|
7
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ElementSelect } from "./element-select";
|
|
2
|
+
|
|
3
|
+
export class ElementSelectByGraphicName extends ElementSelect {
|
|
4
|
+
constructor() {
|
|
5
|
+
super(...arguments), this.type = ElementSelectByGraphicName.type;
|
|
6
|
+
}
|
|
7
|
+
start(element) {
|
|
8
|
+
var _a;
|
|
9
|
+
const name = null === (_a = element.getGraphicItem()) || void 0 === _a ? void 0 : _a.name;
|
|
10
|
+
name && this._marks.forEach((mark => {
|
|
11
|
+
mark.elements.forEach((el => {
|
|
12
|
+
var _a;
|
|
13
|
+
(null === (_a = el.getGraphicItem()) || void 0 === _a ? void 0 : _a.name) === name && super.start(el);
|
|
14
|
+
}));
|
|
15
|
+
}));
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
ElementSelectByGraphicName.type = "element-select-by-graphic-name";
|
|
20
|
+
//# sourceMappingURL=element-select-by-graphic-name.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/interactions/element-select-by-graphic-name.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,OAAO,0BAA2B,SAAQ,aAAa;IAA7D;;QAEE,SAAI,GAAW,0BAA0B,CAAC,IAAI,CAAC;IAcjD,CAAC;IAZC,KAAK,CAAC,OAAoC;;QACxC,MAAM,IAAI,GAAG,MAAA,OAAO,CAAC,cAAc,EAAE,0CAAE,IAAI,CAAC;QAC5C,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACzB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;;oBACzB,IAAI,CAAA,MAAA,EAAE,CAAC,cAAc,EAAE,0CAAE,IAAI,MAAK,IAAI,EAAE;wBACtC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;qBACjB;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;;AAdM,+BAAI,GAAW,gCAAgC,CAAC","file":"element-select-by-graphic-name.js","sourcesContent":["import type { InteractionEvent } from '../types';\nimport { ElementSelect } from './element-select';\n\nexport class ElementSelectByGraphicName extends ElementSelect {\n static type: string = 'element-select-by-graphic-name';\n type: string = ElementSelectByGraphicName.type;\n\n start(element: InteractionEvent['element']) {\n const name = element.getGraphicItem()?.name;\n if (name) {\n this._marks.forEach(mark => {\n mark.elements.forEach(el => {\n if (el.getGraphicItem()?.name === name) {\n super.start(el);\n }\n });\n });\n }\n }\n}\n"]}
|
|
@@ -17,7 +17,7 @@ export declare class ElementSelect extends BaseInteraction<ElementSelectOptions>
|
|
|
17
17
|
type: EventType | EventType[];
|
|
18
18
|
handler: (e: InteractionEvent) => void;
|
|
19
19
|
}[];
|
|
20
|
-
|
|
20
|
+
resetAll: () => void;
|
|
21
21
|
handleStart: (e: InteractionEvent) => void;
|
|
22
22
|
handleReset: (e: InteractionEvent) => void;
|
|
23
23
|
start(element: InteractionEvent['element']): void;
|
|
@@ -8,7 +8,7 @@ import { BaseInteraction } from "./base";
|
|
|
8
8
|
|
|
9
9
|
export class ElementSelect extends BaseInteraction {
|
|
10
10
|
constructor(view, options) {
|
|
11
|
-
super(view, options), this.type = ElementSelect.type, this._resetType = [], this.
|
|
11
|
+
super(view, options), this.type = ElementSelect.type, this._resetType = [], this.resetAll = () => {
|
|
12
12
|
const {state: state, reverseState: reverseState} = this.options;
|
|
13
13
|
this._statedElements && this._statedElements.length && (this.clearAllStates(state, reverseState),
|
|
14
14
|
this.dispatchEvent("reset", {
|
|
@@ -18,7 +18,9 @@ export class ElementSelect extends BaseInteraction {
|
|
|
18
18
|
}, this.handleStart = e => {
|
|
19
19
|
this.start(e.element);
|
|
20
20
|
}, this.handleReset = e => {
|
|
21
|
-
this.
|
|
21
|
+
if (!this._statedElements || !this._statedElements.length) return;
|
|
22
|
+
const element = e.element, hasActiveElement = element && this._marks && this._marks.includes(element.mark);
|
|
23
|
+
(this._resetType.includes("view") && !hasActiveElement || this._resetType.includes("self") && hasActiveElement) && this.resetAll();
|
|
22
24
|
}, this.options = Object.assign({}, ElementSelect.defaultOptions, options), this._marks = view.getMarksBySelector(this.options.selector),
|
|
23
25
|
this._stateMarks = groupMarksByState(this._marks, [ this.options.state, this.options.reverseState ]);
|
|
24
26
|
}
|
|
@@ -42,20 +44,18 @@ export class ElementSelect extends BaseInteraction {
|
|
|
42
44
|
if (element && this._marks && this._marks.includes(element.mark)) if (element.hasState(state)) {
|
|
43
45
|
if (this._resetType.includes("self")) {
|
|
44
46
|
const newStatedElements = this._statedElements && this._statedElements.filter((el => el !== element));
|
|
45
|
-
newStatedElements && newStatedElements.length ? this._statedElements = this.updateStates(newStatedElements, this._statedElements, state, reverseState) : this.
|
|
47
|
+
newStatedElements && newStatedElements.length ? this._statedElements = this.updateStates(newStatedElements, this._statedElements, state, reverseState) : this.resetAll();
|
|
46
48
|
}
|
|
47
49
|
} else this._timer && clearTimeout(this._timer), element.addState(state), this._statedElements = this.updateStates(isMultiple && this._statedElements ? [ ...this._statedElements, element ] : [ element ], this._statedElements, state, reverseState),
|
|
48
50
|
this.dispatchEvent("start", {
|
|
49
51
|
elements: this._statedElements,
|
|
50
52
|
options: this.options
|
|
51
53
|
}), this._resetType.includes("timeout") && (this._timer = setTimeout((() => {
|
|
52
|
-
this.
|
|
53
|
-
}), this.options.triggerOff)); else this._resetType.includes("view") && this._statedElements && this._statedElements.length && this.
|
|
54
|
+
this.resetAll();
|
|
55
|
+
}), this.options.triggerOff)); else this._resetType.includes("view") && this._statedElements && this._statedElements.length && this.resetAll();
|
|
54
56
|
}
|
|
55
57
|
reset(element) {
|
|
56
|
-
|
|
57
|
-
const hasActiveElement = element && this._marks && this._marks.includes(element.mark);
|
|
58
|
-
(this._resetType.includes("view") && !hasActiveElement || this._resetType.includes("self") && hasActiveElement) && this.clearPrevElements();
|
|
58
|
+
element ? this._marks && this._marks.includes(element.mark) && element.removeState([ this.options.state, this.options.reverseState ]) : this.resetAll();
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
61
|
|
|
@@ -63,4 +63,4 @@ ElementSelect.type = "element-select", ElementSelect.defaultOptions = {
|
|
|
63
63
|
state: InteractionStateEnum.selected,
|
|
64
64
|
trigger: "click"
|
|
65
65
|
};
|
|
66
|
-
//# sourceMappingURL=element-select.js.map
|
|
66
|
+
//# sourceMappingURL=element-select.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/interactions/element-select.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAWtD,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAIzC,MAAM,OAAO,aAAc,SAAQ,eAAqC;IActE,YAAY,IAAW,EAAE,OAA8B;QACrD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAbvB,SAAI,GAAW,aAAa,CAAC,IAAI,CAAC;QAMxB,eAAU,GAAoC,EAAE,CAAC;QA0C3D,
|
|
1
|
+
{"version":3,"sources":["../src/interactions/element-select.ts"],"names":[],"mappings":"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","file":"element-select.js","sourcesContent":["import { isArray } from '@visactor/vutils';\nimport { InteractionStateEnum } from '../graph/enums';\nimport type {\n ElementSelectOptions,\n EventType,\n IElement,\n IGlyphElement,\n IMark,\n IToggleStateMixin,\n IView,\n InteractionEvent\n} from '../types';\nimport { groupMarksByState, parseTriggerOffOfSelect } from './utils';\nimport { BaseInteraction } from './base';\n\nexport interface ElementSelect extends IToggleStateMixin, BaseInteraction<ElementSelectOptions> {}\n\nexport class ElementSelect extends BaseInteraction<ElementSelectOptions> {\n static type: string = 'element-select';\n type: string = ElementSelect.type;\n\n static defaultOptions: ElementSelectOptions = {\n state: InteractionStateEnum.selected,\n trigger: 'click'\n };\n protected _resetType: ('view' | 'self' | 'timeout')[] = [];\n protected _marks?: IMark[];\n protected _stateMarks: Record<string, IMark[]>;\n private _timer?: number;\n protected _statedElements?: (IElement | IGlyphElement)[];\n\n constructor(view: IView, options?: ElementSelectOptions) {\n super(view, options);\n this.options = Object.assign({}, ElementSelect.defaultOptions, options);\n\n this._marks = view.getMarksBySelector(this.options.selector);\n this._stateMarks = groupMarksByState(this._marks, [this.options.state, this.options.reverseState]);\n }\n\n getStartState(): string {\n return this.options.state;\n }\n\n protected getEvents() {\n const triggerOff = this.options.triggerOff;\n const trigger = this.options.trigger;\n\n const events = [\n {\n type: trigger,\n handler: this.handleStart\n }\n ];\n\n const { eventNames, resetType } = parseTriggerOffOfSelect(triggerOff);\n\n eventNames.forEach(evt => {\n if (evt && (isArray(trigger) ? !trigger.includes(evt) : evt !== trigger)) {\n events.push({ type: evt as EventType, handler: this.handleReset });\n }\n });\n\n this._resetType = resetType;\n\n return events;\n }\n\n resetAll = () => {\n const { state, reverseState } = this.options;\n\n if (this._statedElements && this._statedElements.length) {\n this.clearAllStates(state, reverseState);\n this.dispatchEvent('reset', { elements: this._statedElements, options: this.options });\n\n this._statedElements = [];\n }\n };\n\n handleStart = (e: InteractionEvent) => {\n this.start(e.element);\n };\n\n handleReset = (e: InteractionEvent) => {\n if (!this._statedElements || !this._statedElements.length) {\n return;\n }\n const element = e.element;\n const hasActiveElement = element && this._marks && this._marks.includes(element.mark);\n\n if (this._resetType.includes('view') && !hasActiveElement) {\n this.resetAll();\n } else if (this._resetType.includes('self') && hasActiveElement) {\n this.resetAll();\n }\n };\n\n start(element: InteractionEvent['element']) {\n const { state, reverseState, isMultiple } = this.options;\n if (element && this._marks && this._marks.includes(element.mark)) {\n if (element.hasState(state)) {\n if (this._resetType.includes('self')) {\n const newStatedElements = this._statedElements && this._statedElements.filter(el => el !== element);\n\n if (newStatedElements && newStatedElements.length) {\n this._statedElements = this.updateStates(newStatedElements, this._statedElements, state, reverseState);\n } else {\n this.resetAll();\n }\n }\n } else {\n if (this._timer) {\n clearTimeout(this._timer);\n }\n element.addState(state);\n\n this._statedElements = this.updateStates(\n isMultiple && this._statedElements ? [...this._statedElements, element] : [element],\n this._statedElements,\n state,\n reverseState\n );\n this.dispatchEvent('start', { elements: this._statedElements, options: this.options });\n\n if (this._resetType.includes('timeout')) {\n this._timer = setTimeout(() => {\n this.resetAll();\n }, this.options.triggerOff as number) as unknown as number;\n }\n }\n } else if (this._resetType.includes('view') && this._statedElements && this._statedElements.length) {\n this.resetAll();\n }\n }\n\n reset(element: InteractionEvent['element']) {\n if (element) {\n if (this._marks && this._marks.includes(element.mark)) {\n element.removeState([this.options.state, this.options.reverseState]);\n }\n } else {\n this.resetAll();\n }\n }\n}\n"]}
|
|
@@ -35,6 +35,8 @@ export declare const registerElementHighlightByGroup: () => void;
|
|
|
35
35
|
export declare const registerElementActiveByLegend: () => void;
|
|
36
36
|
export declare const registerElementHighlightByLegend: () => void;
|
|
37
37
|
export declare const registerElementHighlightByName: () => void;
|
|
38
|
+
export declare const registerElementHighlightByGraphicName: () => void;
|
|
39
|
+
export declare const registerElementSelectByGraphicName: () => void;
|
|
38
40
|
export declare const registerBrushHighlight: () => void;
|
|
39
41
|
export declare const registerBrushActive: () => void;
|
|
40
42
|
export declare const registerBrushFilter: () => void;
|
package/es/interactions/index.js
CHANGED
|
@@ -16,6 +16,10 @@ import { ElementHighlightByLegend } from "./element-highlight-by-legend";
|
|
|
16
16
|
|
|
17
17
|
import { ElementHighlightByName } from "./element-highlight-by-name";
|
|
18
18
|
|
|
19
|
+
import { ElementHighlightByGraphicName } from "./element-highlight-by-graphic-name";
|
|
20
|
+
|
|
21
|
+
import { ElementSelectByGraphicName } from "./element-select-by-graphic-name";
|
|
22
|
+
|
|
19
23
|
import { BrushHighlight } from "./brush-highlight";
|
|
20
24
|
|
|
21
25
|
import { BrushActive } from "./brush-active";
|
|
@@ -96,6 +100,14 @@ export const registerElementHighlightByName = () => {
|
|
|
96
100
|
Factory.registerInteraction(ElementHighlightByName.type, ElementHighlightByName);
|
|
97
101
|
};
|
|
98
102
|
|
|
103
|
+
export const registerElementHighlightByGraphicName = () => {
|
|
104
|
+
Factory.registerInteraction(ElementHighlightByGraphicName.type, ElementHighlightByGraphicName);
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
export const registerElementSelectByGraphicName = () => {
|
|
108
|
+
Factory.registerInteraction(ElementSelectByGraphicName.type, ElementSelectByGraphicName);
|
|
109
|
+
};
|
|
110
|
+
|
|
99
111
|
export const registerBrushHighlight = () => {
|
|
100
112
|
Factory.registerInteraction(BrushHighlight.type, BrushHighlight);
|
|
101
113
|
};
|
|
@@ -147,4 +159,5 @@ export const registerViewRoam = () => {
|
|
|
147
159
|
|
|
148
160
|
export const registerFishEye = () => {
|
|
149
161
|
Factory.registerInteraction(FishEye.type, FishEye);
|
|
150
|
-
};
|
|
162
|
+
};
|
|
163
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/interactions/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import { Factory } from '../core/factory';\nimport { ElementActive } from './element-active';\nimport { ElementSelect } from './element-select';\nimport { ElementHighlight } from './element-highlight';\nimport { ElementHighlightByKey } from './element-highlight-by-key';\nimport { ElementHighlightByGroup } from './element-highlight-by-group';\nimport { ElementActiveByLegend } from './element-active-by-legend';\nimport { ElementHighlightByLegend } from './element-highlight-by-legend';\nimport { ElementHighlightByName } from './element-highlight-by-name';\nimport { BrushHighlight } from './brush-highlight';\nimport { BrushActive } from './brush-active';\nimport { BrushFilter } from './brush-filter';\nimport { DrillDown } from './drill-down';\nimport { RollUp } from './roll-up';\nimport { Tooltip } from './tooltip';\nimport { DimensionTooltip } from './dimension-tooltip';\nimport { Crosshair } from './crosshair';\nimport { FilterMixin } from './filter';\nimport { ViewZoom } from './view-zoom';\nimport { ViewScroll } from './view-scroll';\nimport { ViewDrag } from './view-drag';\nimport { mixin } from '@visactor/vutils';\nimport { ViewZoomMixin } from './view-zoom-mixin';\nimport { ViewScrollMixin } from './view-scroll-mixin';\nimport { ViewDragMixin } from './view-drag-mixin';\nimport { ViewRoam } from './view-roam';\nimport { FishEye } from './fish-eye';\nimport { ToggleStateMixin } from './toggle-state-mixin';\n\nexport { BaseTooltip } from './base-tooltip';\nexport { BaseInteraction } from './base';\nexport { BrushBase } from './brush-base';\nexport { ViewNavigationBase } from './view-navigation-base';\nexport {\n ElementActive,\n ElementSelect,\n ElementHighlight,\n ElementHighlightByKey,\n ElementHighlightByGroup,\n ElementActiveByLegend,\n ElementHighlightByLegend,\n ElementHighlightByName,\n BrushHighlight,\n BrushActive,\n DrillDown,\n RollUp,\n Tooltip,\n DimensionTooltip,\n Crosshair,\n FilterMixin,\n ViewZoom,\n ViewScroll,\n ViewDrag,\n ViewRoam,\n ViewScrollMixin,\n ViewZoomMixin,\n ViewDragMixin,\n FishEye\n};\n\nexport const registerElementActive = () => {\n Factory.registerInteraction(ElementActive.type, ElementActive);\n};\n\nexport const registerElementSelect = () => {\n mixin(ElementSelect, ToggleStateMixin);\n Factory.registerInteraction(ElementSelect.type, ElementSelect);\n};\n\nexport const registerElementHighlight = () => {\n mixin(ElementHighlight, ToggleStateMixin);\n Factory.registerInteraction(ElementHighlight.type, ElementHighlight);\n};\n\nexport const registerElementHighlightByKey = () => {\n Factory.registerInteraction(ElementHighlightByKey.type, ElementHighlightByKey);\n};\n\nexport const registerElementHighlightByGroup = () => {\n Factory.registerInteraction(ElementHighlightByGroup.type, ElementHighlightByGroup);\n};\n\nexport const registerElementActiveByLegend = () => {\n Factory.registerInteraction(ElementActiveByLegend.type, ElementActiveByLegend);\n};\n\nexport const registerElementHighlightByLegend = () => {\n Factory.registerInteraction(ElementHighlightByLegend.type, ElementHighlightByLegend);\n};\n\nexport const registerElementHighlightByName = () => {\n Factory.registerInteraction(ElementHighlightByName.type, ElementHighlightByName);\n};\n\nexport const registerBrushHighlight = () => {\n Factory.registerInteraction(BrushHighlight.type, BrushHighlight);\n};\n\nexport const registerBrushActive = () => {\n Factory.registerInteraction(BrushActive.type, BrushActive);\n};\n\nexport const registerBrushFilter = () => {\n mixin(BrushFilter, FilterMixin);\n Factory.registerInteraction(BrushFilter.type, BrushFilter);\n};\n\nexport const registerDrillDown = () => {\n mixin(DrillDown, FilterMixin);\n Factory.registerInteraction(DrillDown.type, DrillDown);\n};\n\nexport const registerRollUp = () => {\n Factory.registerInteraction(RollUp.type, RollUp);\n};\n\nexport const registerTooltip = () => {\n Factory.registerInteraction(Tooltip.type, Tooltip);\n};\n\nexport const registerDimensionTooltip = () => {\n Factory.registerInteraction(DimensionTooltip.type, DimensionTooltip);\n};\n\nexport const registerCrosshair = () => {\n Factory.registerInteraction(Crosshair.type, Crosshair);\n};\nexport const registerViewZoom = () => {\n mixin(ViewZoom, ViewZoomMixin);\n Factory.registerInteraction(ViewZoom.type, ViewZoom);\n};\n\nexport const registerViewScroll = () => {\n mixin(ViewScroll, ViewScrollMixin);\n Factory.registerInteraction(ViewScroll.type, ViewScroll);\n};\n\nexport const registerViewDrag = () => {\n mixin(ViewDrag, ViewDragMixin);\n Factory.registerInteraction(ViewDrag.type, ViewDrag);\n};\n\nexport const registerViewRoam = () => {\n mixin(ViewRoam, ViewZoomMixin);\n mixin(ViewRoam, ViewDragMixin);\n mixin(ViewRoam, ViewScrollMixin);\n Factory.registerInteraction(ViewRoam.type, ViewRoam);\n};\n\nexport const registerFishEye = () => {\n Factory.registerInteraction(FishEye.type, FishEye);\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/interactions/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import { Factory } from '../core/factory';\nimport { ElementActive } from './element-active';\nimport { ElementSelect } from './element-select';\nimport { ElementHighlight } from './element-highlight';\nimport { ElementHighlightByKey } from './element-highlight-by-key';\nimport { ElementHighlightByGroup } from './element-highlight-by-group';\nimport { ElementActiveByLegend } from './element-active-by-legend';\nimport { ElementHighlightByLegend } from './element-highlight-by-legend';\nimport { ElementHighlightByName } from './element-highlight-by-name';\nimport { ElementHighlightByGraphicName } from './element-highlight-by-graphic-name';\nimport { ElementSelectByGraphicName } from './element-select-by-graphic-name';\n\nimport { BrushHighlight } from './brush-highlight';\nimport { BrushActive } from './brush-active';\nimport { BrushFilter } from './brush-filter';\nimport { DrillDown } from './drill-down';\nimport { RollUp } from './roll-up';\nimport { Tooltip } from './tooltip';\nimport { DimensionTooltip } from './dimension-tooltip';\nimport { Crosshair } from './crosshair';\nimport { FilterMixin } from './filter';\nimport { ViewZoom } from './view-zoom';\nimport { ViewScroll } from './view-scroll';\nimport { ViewDrag } from './view-drag';\nimport { mixin } from '@visactor/vutils';\nimport { ViewZoomMixin } from './view-zoom-mixin';\nimport { ViewScrollMixin } from './view-scroll-mixin';\nimport { ViewDragMixin } from './view-drag-mixin';\nimport { ViewRoam } from './view-roam';\nimport { FishEye } from './fish-eye';\nimport { ToggleStateMixin } from './toggle-state-mixin';\n\nexport { BaseTooltip } from './base-tooltip';\nexport { BaseInteraction } from './base';\nexport { BrushBase } from './brush-base';\nexport { ViewNavigationBase } from './view-navigation-base';\nexport {\n ElementActive,\n ElementSelect,\n ElementHighlight,\n ElementHighlightByKey,\n ElementHighlightByGroup,\n ElementActiveByLegend,\n ElementHighlightByLegend,\n ElementHighlightByName,\n BrushHighlight,\n BrushActive,\n DrillDown,\n RollUp,\n Tooltip,\n DimensionTooltip,\n Crosshair,\n FilterMixin,\n ViewZoom,\n ViewScroll,\n ViewDrag,\n ViewRoam,\n ViewScrollMixin,\n ViewZoomMixin,\n ViewDragMixin,\n FishEye\n};\n\nexport const registerElementActive = () => {\n Factory.registerInteraction(ElementActive.type, ElementActive);\n};\n\nexport const registerElementSelect = () => {\n mixin(ElementSelect, ToggleStateMixin);\n Factory.registerInteraction(ElementSelect.type, ElementSelect);\n};\n\nexport const registerElementHighlight = () => {\n mixin(ElementHighlight, ToggleStateMixin);\n Factory.registerInteraction(ElementHighlight.type, ElementHighlight);\n};\n\nexport const registerElementHighlightByKey = () => {\n Factory.registerInteraction(ElementHighlightByKey.type, ElementHighlightByKey);\n};\n\nexport const registerElementHighlightByGroup = () => {\n Factory.registerInteraction(ElementHighlightByGroup.type, ElementHighlightByGroup);\n};\n\nexport const registerElementActiveByLegend = () => {\n Factory.registerInteraction(ElementActiveByLegend.type, ElementActiveByLegend);\n};\n\nexport const registerElementHighlightByLegend = () => {\n Factory.registerInteraction(ElementHighlightByLegend.type, ElementHighlightByLegend);\n};\n\nexport const registerElementHighlightByName = () => {\n Factory.registerInteraction(ElementHighlightByName.type, ElementHighlightByName);\n};\n\nexport const registerElementHighlightByGraphicName = () => {\n Factory.registerInteraction(ElementHighlightByGraphicName.type, ElementHighlightByGraphicName);\n};\n\nexport const registerElementSelectByGraphicName = () => {\n Factory.registerInteraction(ElementSelectByGraphicName.type, ElementSelectByGraphicName);\n};\n\nexport const registerBrushHighlight = () => {\n Factory.registerInteraction(BrushHighlight.type, BrushHighlight);\n};\n\nexport const registerBrushActive = () => {\n Factory.registerInteraction(BrushActive.type, BrushActive);\n};\n\nexport const registerBrushFilter = () => {\n mixin(BrushFilter, FilterMixin);\n Factory.registerInteraction(BrushFilter.type, BrushFilter);\n};\n\nexport const registerDrillDown = () => {\n mixin(DrillDown, FilterMixin);\n Factory.registerInteraction(DrillDown.type, DrillDown);\n};\n\nexport const registerRollUp = () => {\n Factory.registerInteraction(RollUp.type, RollUp);\n};\n\nexport const registerTooltip = () => {\n Factory.registerInteraction(Tooltip.type, Tooltip);\n};\n\nexport const registerDimensionTooltip = () => {\n Factory.registerInteraction(DimensionTooltip.type, DimensionTooltip);\n};\n\nexport const registerCrosshair = () => {\n Factory.registerInteraction(Crosshair.type, Crosshair);\n};\nexport const registerViewZoom = () => {\n mixin(ViewZoom, ViewZoomMixin);\n Factory.registerInteraction(ViewZoom.type, ViewZoom);\n};\n\nexport const registerViewScroll = () => {\n mixin(ViewScroll, ViewScrollMixin);\n Factory.registerInteraction(ViewScroll.type, ViewScroll);\n};\n\nexport const registerViewDrag = () => {\n mixin(ViewDrag, ViewDragMixin);\n Factory.registerInteraction(ViewDrag.type, ViewDrag);\n};\n\nexport const registerViewRoam = () => {\n mixin(ViewRoam, ViewZoomMixin);\n mixin(ViewRoam, ViewDragMixin);\n mixin(ViewRoam, ViewScrollMixin);\n Factory.registerInteraction(ViewRoam.type, ViewRoam);\n};\n\nexport const registerFishEye = () => {\n Factory.registerInteraction(FishEye.type, FishEye);\n};\n"]}
|
|
@@ -20,28 +20,30 @@ export class ToggleStateMixin {
|
|
|
20
20
|
}
|
|
21
21
|
addBothStateOfElements(statedElements, state, reverseState) {
|
|
22
22
|
this._marks.forEach((mark => {
|
|
23
|
+
var _a;
|
|
23
24
|
const hasReverse = reverseState && this._stateMarks[reverseState] && this._stateMarks[reverseState].includes(mark), hasState = state && this._stateMarks[state] && this._stateMarks[state].includes(mark);
|
|
24
|
-
(hasReverse || hasState) && mark.elements.forEach((el => {
|
|
25
|
+
(hasReverse || hasState) && (null === (_a = mark.elements) || void 0 === _a || _a.forEach((el => {
|
|
25
26
|
statedElements && statedElements.includes(el) ? hasState && el.addState(state) : hasReverse && el.addState(reverseState);
|
|
26
|
-
}));
|
|
27
|
+
})));
|
|
27
28
|
}));
|
|
28
29
|
}
|
|
29
30
|
addStateOfElements(statedElements, state) {
|
|
30
31
|
this._marks.forEach((mark => {
|
|
32
|
+
var _a;
|
|
31
33
|
const hasState = state && this._stateMarks[state] && this._stateMarks[state].includes(mark);
|
|
32
|
-
hasState && mark.elements.forEach((el => {
|
|
34
|
+
hasState && (null === (_a = mark.elements) || void 0 === _a || _a.forEach((el => {
|
|
33
35
|
statedElements && statedElements.includes(el) && hasState && el.addState(state);
|
|
34
|
-
}));
|
|
36
|
+
})));
|
|
35
37
|
}));
|
|
36
38
|
}
|
|
37
39
|
clearAllStates(state, reverseState) {
|
|
38
40
|
this._statedElements && this._statedElements.length && this._marks.forEach((mark => {
|
|
39
|
-
reverseState && this._stateMarks[reverseState] && this._stateMarks[reverseState].includes(mark) && mark.elements.forEach((el => {
|
|
41
|
+
mark && mark.elements && (reverseState && this._stateMarks[reverseState] && this._stateMarks[reverseState].includes(mark) && mark.elements.forEach((el => {
|
|
40
42
|
el.removeState(reverseState);
|
|
41
43
|
})), state && this._stateMarks[state] && this._stateMarks[state].includes(mark) && mark.elements.forEach((el => {
|
|
42
44
|
this._statedElements.includes(el) && el.removeState(state);
|
|
43
|
-
}));
|
|
45
|
+
})));
|
|
44
46
|
}));
|
|
45
47
|
}
|
|
46
48
|
}
|
|
47
|
-
//# sourceMappingURL=toggle-state-mixin.js.map
|
|
49
|
+
//# sourceMappingURL=toggle-state-mixin.js.map
|