@visactor/vchart 2.1.2-alpha.7 → 2.1.2-alpha.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.es.js +142 -142
  3. package/build/index.js +142 -142
  4. package/build/index.min.js +2 -2
  5. package/build/tsconfig.tsbuildinfo +1 -1
  6. package/cjs/animation/animation-planner.js +1 -2
  7. package/cjs/animation/grammar-dector.js +2 -1
  8. package/cjs/constant/attribute.js +1 -2
  9. package/cjs/constant/box-plot.js +2 -1
  10. package/cjs/constant/hierarchy.js +1 -1
  11. package/cjs/constant/label.js +1 -1
  12. package/cjs/env/env.js +1 -1
  13. package/cjs/env/index.js +1 -1
  14. package/cjs/mark/box-plot.js +2 -2
  15. package/cjs/mark/box-plot.js.map +1 -1
  16. package/cjs/mark/cell.js +2 -2
  17. package/cjs/mark/cell.js.map +1 -1
  18. package/cjs/mark/glyph.js +2 -2
  19. package/cjs/mark/glyph.js.map +1 -1
  20. package/cjs/mark/image.js +3 -3
  21. package/cjs/mark/image.js.map +1 -1
  22. package/cjs/mark/link-path.js +2 -2
  23. package/cjs/mark/link-path.js.map +1 -1
  24. package/cjs/mark/liquid.js +2 -2
  25. package/cjs/mark/liquid.js.map +1 -1
  26. package/cjs/mark/path.js +3 -3
  27. package/cjs/mark/path.js.map +1 -1
  28. package/cjs/mark/polygon/polygon.js +3 -3
  29. package/cjs/mark/polygon/polygon.js.map +1 -1
  30. package/cjs/mark/ripple.js +2 -2
  31. package/cjs/mark/ripple.js.map +1 -1
  32. package/cjs/mark/rule.js +3 -3
  33. package/cjs/mark/rule.js.map +1 -1
  34. package/cjs/series/radar/animation.js +2 -2
  35. package/cjs/series/radar/animation.js.map +1 -1
  36. package/esm/animation/animation-planner.js +1 -2
  37. package/esm/animation/grammar-dector.js +2 -1
  38. package/esm/constant/attribute.js +1 -2
  39. package/esm/constant/box-plot.js +2 -1
  40. package/esm/constant/hierarchy.js +1 -1
  41. package/esm/constant/label.js +1 -1
  42. package/esm/env/env.js +1 -1
  43. package/esm/env/index.js +1 -1
  44. package/esm/mark/box-plot.js +3 -1
  45. package/esm/mark/box-plot.js.map +1 -1
  46. package/esm/mark/cell.js +3 -1
  47. package/esm/mark/cell.js.map +1 -1
  48. package/esm/mark/glyph.js +3 -1
  49. package/esm/mark/glyph.js.map +1 -1
  50. package/esm/mark/image.js +3 -1
  51. package/esm/mark/image.js.map +1 -1
  52. package/esm/mark/link-path.js +1 -1
  53. package/esm/mark/link-path.js.map +1 -1
  54. package/esm/mark/liquid.js +1 -1
  55. package/esm/mark/liquid.js.map +1 -1
  56. package/esm/mark/path.js +3 -1
  57. package/esm/mark/path.js.map +1 -1
  58. package/esm/mark/polygon/polygon.js +3 -1
  59. package/esm/mark/polygon/polygon.js.map +1 -1
  60. package/esm/mark/ripple.js +1 -1
  61. package/esm/mark/ripple.js.map +1 -1
  62. package/esm/mark/rule.js +3 -1
  63. package/esm/mark/rule.js.map +1 -1
  64. package/esm/series/radar/animation.js +1 -1
  65. package/esm/series/radar/animation.js.map +1 -1
  66. package/package.json +4 -4
@@ -49,5 +49,4 @@ class AnimationPlanner {
49
49
  }
50
50
  }
51
51
 
52
- exports.AnimationPlanner = AnimationPlanner;
53
- //# sourceMappingURL=animation-planner.js.map
52
+ exports.AnimationPlanner = AnimationPlanner;
@@ -102,4 +102,5 @@ class GrammarDetector {
102
102
  }
103
103
  }
104
104
 
105
- exports.GrammarDetector = GrammarDetector;
105
+ exports.GrammarDetector = GrammarDetector;
106
+ //# sourceMappingURL=grammar-dector.js.map
@@ -11,5 +11,4 @@ Object.defineProperty(exports, "__esModule", {
11
11
  AttributeLevel[AttributeLevel.User_Chart = 6] = "User_Chart", AttributeLevel[AttributeLevel.User_Series = 7] = "User_Series",
12
12
  AttributeLevel[AttributeLevel.User_Mark = 8] = "User_Mark", AttributeLevel[AttributeLevel.User_SeriesStyle = 9] = "User_SeriesStyle",
13
13
  AttributeLevel[AttributeLevel.Built_In = 99] = "Built_In";
14
- }(AttributeLevel = exports.AttributeLevel || (exports.AttributeLevel = {}));
15
- //# sourceMappingURL=attribute.js.map
14
+ }(AttributeLevel = exports.AttributeLevel || (exports.AttributeLevel = {}));
@@ -13,4 +13,5 @@ function(BOX_PLOT_TOOLTIP_KEYS) {
13
13
  BOX_PLOT_TOOLTIP_KEYS.OUTLIER = "outlier", BOX_PLOT_TOOLTIP_KEYS.MAX = "max", BOX_PLOT_TOOLTIP_KEYS.MIN = "min",
14
14
  BOX_PLOT_TOOLTIP_KEYS.MEDIAN = "median", BOX_PLOT_TOOLTIP_KEYS.Q1 = "q1", BOX_PLOT_TOOLTIP_KEYS.Q3 = "q3",
15
15
  BOX_PLOT_TOOLTIP_KEYS.SERIES_FIELD = "seriesField";
16
- }(BOX_PLOT_TOOLTIP_KEYS = exports.BOX_PLOT_TOOLTIP_KEYS || (exports.BOX_PLOT_TOOLTIP_KEYS = {}));
16
+ }(BOX_PLOT_TOOLTIP_KEYS = exports.BOX_PLOT_TOOLTIP_KEYS || (exports.BOX_PLOT_TOOLTIP_KEYS = {}));
17
+ //# sourceMappingURL=box-plot.js.map
@@ -8,4 +8,4 @@ const base_1 = require("./base");
8
8
 
9
9
  exports.DEFAULT_HIERARCHY_DEPTH = `${base_1.PREFIX}_HIERARCHY_DEPTH`, exports.DEFAULT_HIERARCHY_ROOT = `${base_1.PREFIX}_HIERARCHY_ROOT`,
10
10
  exports.DEFAULT_HIERARCHY_ROOT_INDEX = `${base_1.PREFIX}_HIERARCHY_ROOT_INDEX`;
11
- //# sourceMappingURL=hierarchy.js.map
11
+ //# sourceMappingURL=hierarchy.js.map
@@ -9,4 +9,4 @@ const base_1 = require("./base");
9
9
  exports.DEFAULT_LABEL_LIMIT = `${base_1.PREFIX}_LABEL_LIMIT`, exports.DEFAULT_LABEL_ALIGN = `${base_1.PREFIX}_LABEL_ALIGN`,
10
10
  exports.DEFAULT_LABEL_TEXT = `${base_1.PREFIX}_LABEL_TEXT`, exports.DEFAULT_LABEL_VISIBLE = `${base_1.PREFIX}_LABEL_VISIBLE`,
11
11
  exports.DEFAULT_LABEL_X = `${base_1.PREFIX}_LABEL_X`, exports.DEFAULT_LABEL_Y = `${base_1.PREFIX}_LABEL_Y`;
12
- //# sourceMappingURL=label.js.map
12
+ //# sourceMappingURL=label.js.map
package/cjs/env/env.js CHANGED
@@ -57,4 +57,4 @@ const registerHarmonyEnv = () => {
57
57
  };
58
58
 
59
59
  exports.registerHarmonyEnv = registerHarmonyEnv;
60
- //# sourceMappingURL=env.js.map
60
+ //# sourceMappingURL=env.js.map
package/cjs/env/index.js CHANGED
@@ -18,4 +18,4 @@ var __createBinding = this && this.__createBinding || (Object.create ? function(
18
18
  Object.defineProperty(exports, "__esModule", {
19
19
  value: !0
20
20
  }), __exportStar(require("./env"), exports);
21
- //# sourceMappingURL=index.js.map
21
+ //# sourceMappingURL=index.js.map
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.registerBoxPlotMark = exports.BoxPlotMark = void 0;
6
6
 
7
- const factory_1 = require("./../core/factory"), vrender_core_1 = require("@visactor/vrender-core"), glyph_1 = require("./glyph"), vutils_1 = require("@visactor/vutils"), vrender_kits_1 = require("@visactor/vrender-kits"), BAR_BOX_PLOT_CHANNELS = [ "x", "y", "minMaxWidth", "minMaxHeight", "q1q3Width", "q1q3Height", "q1", "q3", "min", "max", "median", "angle" ], BOX_PLOT_CHANNELS = [ "x", "y", "boxWidth", "boxHeight", "ruleWidth", "ruleHeight", "q1", "q3", "min", "max", "median", "angle" ];
7
+ const factory_1 = require("./../core/factory"), vrender_core_1 = require("@visactor/vrender-core"), glyph_1 = require("./glyph"), vutils_1 = require("@visactor/vutils"), register_line_1 = require("@visactor/vrender-kits/register/register-line"), register_rect_1 = require("@visactor/vrender-kits/register/register-rect"), BAR_BOX_PLOT_CHANNELS = [ "x", "y", "minMaxWidth", "minMaxHeight", "q1q3Width", "q1q3Height", "q1", "q3", "min", "max", "median", "angle" ], BOX_PLOT_CHANNELS = [ "x", "y", "boxWidth", "boxHeight", "ruleWidth", "ruleHeight", "q1", "q3", "min", "max", "median", "angle" ];
8
8
 
9
9
  class BoxPlotMark extends glyph_1.GlyphMark {
10
10
  constructor() {
@@ -252,7 +252,7 @@ class BoxPlotMark extends glyph_1.GlyphMark {
252
252
  exports.BoxPlotMark = BoxPlotMark, BoxPlotMark.type = "boxPlot";
253
253
 
254
254
  const registerBoxPlotMark = () => {
255
- (0, glyph_1.registerGlyphMark)(), (0, vrender_kits_1.registerLine)(), (0, vrender_kits_1.registerRect)(),
255
+ (0, glyph_1.registerGlyphMark)(), (0, register_line_1.registerLine)(), (0, register_rect_1.registerRect)(),
256
256
  factory_1.Factory.registerGraphicComponent("line", (attrs => (0, vrender_core_1.createLine)(attrs))),
257
257
  factory_1.Factory.registerGraphicComponent("rect", (attrs => (0, vrender_core_1.createRect)(attrs))),
258
258
  factory_1.Factory.registerMark(BoxPlotMark.type, BoxPlotMark);
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/box-plot.ts"],"names":[],"mappings":"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","file":"box-plot.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { BoxPlotShaftShape, IBoxPlotMarkSpec } from '../typings/visual';\nimport type { IBoxPlotMark, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { createLine, createRect, type IGlyph, type ILineGraphicAttribute } from '@visactor/vrender-core';\nimport { GlyphMark, registerGlyphMark } from './glyph';\nimport type { Datum } from '../typings/common';\nimport { isValidNumber } from '@visactor/vutils';\nimport { registerLine, registerRect } from '@visactor/vrender-kits';\n\nconst BAR_BOX_PLOT_CHANNELS = [\n 'x',\n 'y',\n 'minMaxWidth',\n 'minMaxHeight',\n 'q1q3Width',\n 'q1q3Height',\n 'q1',\n 'q3',\n 'min',\n 'max',\n 'median',\n 'angle'\n];\n\nconst BOX_PLOT_CHANNELS = [\n 'x',\n 'y',\n 'boxWidth',\n 'boxHeight',\n 'ruleWidth',\n 'ruleHeight',\n 'q1',\n 'q3',\n 'min',\n 'max',\n 'median',\n 'angle'\n];\n\nexport class BoxPlotMark\n extends GlyphMark<IBoxPlotMarkSpec, { direction?: 'horizontal' | 'vertical'; shaftShape?: BoxPlotShaftShape }>\n implements IBoxPlotMark\n{\n static readonly type = MarkTypeEnum.boxPlot;\n readonly type = BoxPlotMark.type;\n\n protected _isHorizontal() {\n return this._glyphConfig && this._glyphConfig.direction === 'horizontal';\n }\n\n setGlyphConfig(cfg: { direction?: 'horizontal' | 'vertical'; shaftShape?: BoxPlotShaftShape }): void {\n super.setGlyphConfig(cfg);\n\n if (cfg.shaftShape === 'bar') {\n this._subMarks = {\n minMaxBox: {\n type: 'rect',\n defaultAttributes: {\n lineWidth: 0\n }\n },\n q1q3Box: {\n type: 'rect',\n defaultAttributes: {\n lineWidth: 0\n }\n },\n median: {\n type: 'line',\n defaultAttributes: { x: 0, y: 0 }\n }\n };\n this._positionChannels = BAR_BOX_PLOT_CHANNELS;\n this._channelEncoder = {\n minMaxFillOpacity: (val: number) => ({ minMaxBox: { fillOpacity: val } }),\n lineWidth: (val: number) => ({ minMaxBox: { lineWidth: 0 }, q1q3Box: { lineWidth: 0 } }),\n stroke: (val: number) => ({ minMaxBox: { stroke: false }, q1q3Box: { stroke: false } })\n };\n\n this._positionEncoder = (glyphAttrs: any, datum: Datum, g: IGlyph) => {\n const {\n x = g.attribute.x,\n y = g.attribute.y,\n minMaxWidth = (g.attribute as any).minMaxWidth,\n minMaxHeight = (g.attribute as any).minMaxHeight,\n q1q3Width = (g.attribute as any).q1q3Width,\n q1q3Height = (g.attribute as any).q1q3Height,\n q1 = (g.attribute as any).q1,\n q3 = (g.attribute as any).q3,\n min = (g.attribute as any).min,\n max = (g.attribute as any).max,\n median = (g.attribute as any).median,\n angle\n } = glyphAttrs;\n const isH = this._isHorizontal();\n\n const attributes: any = {};\n\n if (isH) {\n attributes.minMaxBox = {\n x: min,\n x1: max,\n y: y - minMaxHeight / 2,\n y1: y + minMaxHeight / 2\n };\n attributes.q1q3Box = {\n x: q1,\n x1: q3,\n y: y - q1q3Height / 2,\n y1: y + q1q3Height / 2\n };\n\n attributes.median = {\n points: [\n {\n x: median,\n y: y - q1q3Height / 2\n },\n {\n x: median,\n y: y + q1q3Height / 2\n }\n ]\n };\n } else {\n attributes.minMaxBox = {\n y: min,\n y1: max,\n x: x - minMaxWidth / 2,\n x1: x + minMaxWidth / 2\n };\n attributes.q1q3Box = {\n y: q1,\n y1: q3,\n x: x - q1q3Width / 2,\n x1: x + q1q3Width / 2\n };\n\n attributes.median = {\n points: [\n {\n y: median,\n x: x - q1q3Width / 2\n },\n {\n y: median,\n x: x + q1q3Width / 2\n }\n ]\n };\n }\n\n if (isValidNumber(angle)) {\n const anchor = glyphAttrs.anchor ?? (isH ? [(min + max) / 2, y] : [x, (min + max) / 2]);\n Object.keys(attributes).forEach(key => {\n attributes[key].angle = angle;\n attributes[key].anchor = anchor;\n });\n }\n\n return attributes;\n };\n } else {\n this._subMarks = {\n shaft: { type: 'line', defaultAttributes: { x: 0, y: 0 } },\n box: { type: 'rect' },\n max: { type: 'line', defaultAttributes: { x: 0, y: 0 } },\n min: { type: 'line', defaultAttributes: { x: 0, y: 0 } },\n median: { type: 'line', defaultAttributes: { x: 0, y: 0 } }\n };\n this._positionChannels = BOX_PLOT_CHANNELS;\n this._channelEncoder = {\n boxStroke: (val: string) => ({ box: { stroke: val } }),\n medianStroke: (val: string) => ({ median: { stroke: val } }),\n boxCornerRadius: (val: number) => ({ box: { cornerRadius: val } })\n };\n this._positionEncoder = (glyphAttrs: any, datum: Datum, g: IGlyph) => {\n const {\n x = g.attribute.x,\n y = g.attribute.y,\n boxWidth = (g.attribute as any).boxWidth,\n boxHeight = (g.attribute as any).boxHeight,\n ruleWidth = (g.attribute as any).ruleWidth,\n ruleHeight = (g.attribute as any).ruleHeight,\n q1 = (g.attribute as any).q1,\n q3 = (g.attribute as any).q3,\n min = (g.attribute as any).min,\n max = (g.attribute as any).max,\n median = (g.attribute as any).median,\n angle\n } = glyphAttrs;\n const isH = this._isHorizontal();\n\n const attributes: any = {};\n\n if (isH) {\n attributes.box = {\n x: q1,\n x1: q3,\n y: y - boxHeight / 2,\n y1: y + boxHeight / 2\n };\n attributes.median = {\n points: [\n {\n x: median,\n y: y - boxHeight / 2\n },\n {\n x: median,\n y: y + boxHeight / 2\n }\n ]\n };\n attributes.shaft = {\n points: [\n {\n x: min,\n y: y\n },\n {\n x: max,\n y: y\n }\n ]\n };\n attributes.max = {\n points: [\n {\n x: max,\n y: y - ruleHeight / 2\n },\n {\n x: max,\n y: y + ruleHeight / 2\n }\n ]\n };\n attributes.min = {\n points: [\n {\n x: min,\n y: y - ruleHeight / 2\n },\n {\n x: min,\n y: y + ruleHeight / 2\n }\n ]\n };\n } else {\n attributes.box = {\n x: x - boxWidth / 2,\n x1: x + boxWidth / 2,\n y: q1,\n y1: q3\n };\n attributes.median = {\n points: [\n {\n x: x - boxWidth / 2,\n y: median\n },\n {\n x: x + boxWidth / 2,\n y: median\n }\n ]\n };\n\n attributes.max = {\n points: [\n {\n x: x - ruleWidth / 2,\n y: max\n },\n {\n x: x + ruleWidth / 2,\n y: max\n }\n ]\n };\n attributes.min = {\n points: [\n {\n x: x - ruleWidth / 2,\n y: min\n },\n {\n x: x + ruleWidth / 2,\n y: min\n }\n ]\n };\n attributes.shaft = {\n points: [\n {\n x: x,\n y: min\n },\n {\n x: x,\n y: max\n }\n ]\n };\n }\n\n if (isValidNumber(angle)) {\n const anchor = glyphAttrs.anchor ?? (isH ? [(min + max) / 2, y] : [x, (min + max) / 2]);\n Object.keys(attributes).forEach(key => {\n attributes[key].angle = angle;\n attributes[key].anchor = anchor;\n });\n }\n\n return attributes;\n };\n }\n }\n\n setDataLabelType() {\n return 'symbol';\n }\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IBoxPlotMarkSpec> = {\n ...super._getDefaultStyle(),\n lineWidth: 2,\n boxWidth: 30,\n shaftWidth: 20,\n shaftShape: 'line'\n };\n return defaultStyle;\n }\n}\n\nexport const registerBoxPlotMark = () => {\n registerGlyphMark();\n registerLine();\n registerRect();\n Factory.registerGraphicComponent('line', (attrs: ILineGraphicAttribute) => createLine(attrs));\n Factory.registerGraphicComponent('rect', (attrs: ILineGraphicAttribute) => createRect(attrs));\n Factory.registerMark(BoxPlotMark.type, BoxPlotMark);\n};\n"]}
1
+ {"version":3,"sources":["../src/mark/box-plot.ts"],"names":[],"mappings":"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","file":"box-plot.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { BoxPlotShaftShape, IBoxPlotMarkSpec } from '../typings/visual';\nimport type { IBoxPlotMark, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { createLine, createRect, type IGlyph, type ILineGraphicAttribute } from '@visactor/vrender-core';\nimport { GlyphMark, registerGlyphMark } from './glyph';\nimport type { Datum } from '../typings/common';\nimport { isValidNumber } from '@visactor/vutils';\nimport { registerLine } from '@visactor/vrender-kits/register/register-line';\nimport { registerRect } from '@visactor/vrender-kits/register/register-rect';\n\nconst BAR_BOX_PLOT_CHANNELS = [\n 'x',\n 'y',\n 'minMaxWidth',\n 'minMaxHeight',\n 'q1q3Width',\n 'q1q3Height',\n 'q1',\n 'q3',\n 'min',\n 'max',\n 'median',\n 'angle'\n];\n\nconst BOX_PLOT_CHANNELS = [\n 'x',\n 'y',\n 'boxWidth',\n 'boxHeight',\n 'ruleWidth',\n 'ruleHeight',\n 'q1',\n 'q3',\n 'min',\n 'max',\n 'median',\n 'angle'\n];\n\nexport class BoxPlotMark\n extends GlyphMark<IBoxPlotMarkSpec, { direction?: 'horizontal' | 'vertical'; shaftShape?: BoxPlotShaftShape }>\n implements IBoxPlotMark\n{\n static readonly type = MarkTypeEnum.boxPlot;\n readonly type = BoxPlotMark.type;\n\n protected _isHorizontal() {\n return this._glyphConfig && this._glyphConfig.direction === 'horizontal';\n }\n\n setGlyphConfig(cfg: { direction?: 'horizontal' | 'vertical'; shaftShape?: BoxPlotShaftShape }): void {\n super.setGlyphConfig(cfg);\n\n if (cfg.shaftShape === 'bar') {\n this._subMarks = {\n minMaxBox: {\n type: 'rect',\n defaultAttributes: {\n lineWidth: 0\n }\n },\n q1q3Box: {\n type: 'rect',\n defaultAttributes: {\n lineWidth: 0\n }\n },\n median: {\n type: 'line',\n defaultAttributes: { x: 0, y: 0 }\n }\n };\n this._positionChannels = BAR_BOX_PLOT_CHANNELS;\n this._channelEncoder = {\n minMaxFillOpacity: (val: number) => ({ minMaxBox: { fillOpacity: val } }),\n lineWidth: (val: number) => ({ minMaxBox: { lineWidth: 0 }, q1q3Box: { lineWidth: 0 } }),\n stroke: (val: number) => ({ minMaxBox: { stroke: false }, q1q3Box: { stroke: false } })\n };\n\n this._positionEncoder = (glyphAttrs: any, datum: Datum, g: IGlyph) => {\n const {\n x = g.attribute.x,\n y = g.attribute.y,\n minMaxWidth = (g.attribute as any).minMaxWidth,\n minMaxHeight = (g.attribute as any).minMaxHeight,\n q1q3Width = (g.attribute as any).q1q3Width,\n q1q3Height = (g.attribute as any).q1q3Height,\n q1 = (g.attribute as any).q1,\n q3 = (g.attribute as any).q3,\n min = (g.attribute as any).min,\n max = (g.attribute as any).max,\n median = (g.attribute as any).median,\n angle\n } = glyphAttrs;\n const isH = this._isHorizontal();\n\n const attributes: any = {};\n\n if (isH) {\n attributes.minMaxBox = {\n x: min,\n x1: max,\n y: y - minMaxHeight / 2,\n y1: y + minMaxHeight / 2\n };\n attributes.q1q3Box = {\n x: q1,\n x1: q3,\n y: y - q1q3Height / 2,\n y1: y + q1q3Height / 2\n };\n\n attributes.median = {\n points: [\n {\n x: median,\n y: y - q1q3Height / 2\n },\n {\n x: median,\n y: y + q1q3Height / 2\n }\n ]\n };\n } else {\n attributes.minMaxBox = {\n y: min,\n y1: max,\n x: x - minMaxWidth / 2,\n x1: x + minMaxWidth / 2\n };\n attributes.q1q3Box = {\n y: q1,\n y1: q3,\n x: x - q1q3Width / 2,\n x1: x + q1q3Width / 2\n };\n\n attributes.median = {\n points: [\n {\n y: median,\n x: x - q1q3Width / 2\n },\n {\n y: median,\n x: x + q1q3Width / 2\n }\n ]\n };\n }\n\n if (isValidNumber(angle)) {\n const anchor = glyphAttrs.anchor ?? (isH ? [(min + max) / 2, y] : [x, (min + max) / 2]);\n Object.keys(attributes).forEach(key => {\n attributes[key].angle = angle;\n attributes[key].anchor = anchor;\n });\n }\n\n return attributes;\n };\n } else {\n this._subMarks = {\n shaft: { type: 'line', defaultAttributes: { x: 0, y: 0 } },\n box: { type: 'rect' },\n max: { type: 'line', defaultAttributes: { x: 0, y: 0 } },\n min: { type: 'line', defaultAttributes: { x: 0, y: 0 } },\n median: { type: 'line', defaultAttributes: { x: 0, y: 0 } }\n };\n this._positionChannels = BOX_PLOT_CHANNELS;\n this._channelEncoder = {\n boxStroke: (val: string) => ({ box: { stroke: val } }),\n medianStroke: (val: string) => ({ median: { stroke: val } }),\n boxCornerRadius: (val: number) => ({ box: { cornerRadius: val } })\n };\n this._positionEncoder = (glyphAttrs: any, datum: Datum, g: IGlyph) => {\n const {\n x = g.attribute.x,\n y = g.attribute.y,\n boxWidth = (g.attribute as any).boxWidth,\n boxHeight = (g.attribute as any).boxHeight,\n ruleWidth = (g.attribute as any).ruleWidth,\n ruleHeight = (g.attribute as any).ruleHeight,\n q1 = (g.attribute as any).q1,\n q3 = (g.attribute as any).q3,\n min = (g.attribute as any).min,\n max = (g.attribute as any).max,\n median = (g.attribute as any).median,\n angle\n } = glyphAttrs;\n const isH = this._isHorizontal();\n\n const attributes: any = {};\n\n if (isH) {\n attributes.box = {\n x: q1,\n x1: q3,\n y: y - boxHeight / 2,\n y1: y + boxHeight / 2\n };\n attributes.median = {\n points: [\n {\n x: median,\n y: y - boxHeight / 2\n },\n {\n x: median,\n y: y + boxHeight / 2\n }\n ]\n };\n attributes.shaft = {\n points: [\n {\n x: min,\n y: y\n },\n {\n x: max,\n y: y\n }\n ]\n };\n attributes.max = {\n points: [\n {\n x: max,\n y: y - ruleHeight / 2\n },\n {\n x: max,\n y: y + ruleHeight / 2\n }\n ]\n };\n attributes.min = {\n points: [\n {\n x: min,\n y: y - ruleHeight / 2\n },\n {\n x: min,\n y: y + ruleHeight / 2\n }\n ]\n };\n } else {\n attributes.box = {\n x: x - boxWidth / 2,\n x1: x + boxWidth / 2,\n y: q1,\n y1: q3\n };\n attributes.median = {\n points: [\n {\n x: x - boxWidth / 2,\n y: median\n },\n {\n x: x + boxWidth / 2,\n y: median\n }\n ]\n };\n\n attributes.max = {\n points: [\n {\n x: x - ruleWidth / 2,\n y: max\n },\n {\n x: x + ruleWidth / 2,\n y: max\n }\n ]\n };\n attributes.min = {\n points: [\n {\n x: x - ruleWidth / 2,\n y: min\n },\n {\n x: x + ruleWidth / 2,\n y: min\n }\n ]\n };\n attributes.shaft = {\n points: [\n {\n x: x,\n y: min\n },\n {\n x: x,\n y: max\n }\n ]\n };\n }\n\n if (isValidNumber(angle)) {\n const anchor = glyphAttrs.anchor ?? (isH ? [(min + max) / 2, y] : [x, (min + max) / 2]);\n Object.keys(attributes).forEach(key => {\n attributes[key].angle = angle;\n attributes[key].anchor = anchor;\n });\n }\n\n return attributes;\n };\n }\n }\n\n setDataLabelType() {\n return 'symbol';\n }\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IBoxPlotMarkSpec> = {\n ...super._getDefaultStyle(),\n lineWidth: 2,\n boxWidth: 30,\n shaftWidth: 20,\n shaftShape: 'line'\n };\n return defaultStyle;\n }\n}\n\nexport const registerBoxPlotMark = () => {\n registerGlyphMark();\n registerLine();\n registerRect();\n Factory.registerGraphicComponent('line', (attrs: ILineGraphicAttribute) => createLine(attrs));\n Factory.registerGraphicComponent('rect', (attrs: ILineGraphicAttribute) => createRect(attrs));\n Factory.registerMark(BoxPlotMark.type, BoxPlotMark);\n};\n"]}
package/cjs/mark/cell.js CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.registerCellMark = exports.CellMark = void 0;
6
6
 
7
- const factory_1 = require("./../core/factory"), vrender_kits_1 = require("@visactor/vrender-kits"), vrender_components_1 = require("@visactor/vrender-components"), vrender_core_1 = require("@visactor/vrender-core"), vutils_1 = require("@visactor/vutils"), base_1 = require("./base");
7
+ const factory_1 = require("./../core/factory"), register_shadowRoot_1 = require("@visactor/vrender-kits/register/register-shadowRoot"), register_symbol_1 = require("@visactor/vrender-kits/register/register-symbol"), vrender_components_1 = require("@visactor/vrender-components"), vrender_core_1 = require("@visactor/vrender-core"), vutils_1 = require("@visactor/vutils"), base_1 = require("./base");
8
8
 
9
9
  class CellMark extends base_1.BaseMark {
10
10
  constructor() {
@@ -32,7 +32,7 @@ exports.CellMark = CellMark, CellMark.type = "cell";
32
32
 
33
33
  const registerCellMark = () => {
34
34
  factory_1.Factory.registerMark(CellMark.type, CellMark), factory_1.Factory.registerGraphicComponent("symbol", vrender_core_1.createSymbol),
35
- (0, vrender_kits_1.registerShadowRoot)(), (0, vrender_kits_1.registerSymbol)(),
35
+ (0, register_shadowRoot_1.registerShadowRoot)(), (0, register_symbol_1.registerSymbol)(),
36
36
  (0, vrender_components_1.registerSymbolDataLabel)();
37
37
  };
38
38
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/cell.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAK5C,yDAA4E;AAC5E,qEAAuE;AAEvE,yDAAsD;AACtD,6CAAyC;AACzC,iCAAkC;AAElC,MAAa,QAAS,SAAQ,eAAuB;IAArD;;QAEW,SAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IA4BhC,CAAC;IA1BW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,IAAI,EAAE,SAAS,EACf,SAAS,EAAE,CAAC,EACZ,OAAO,EAAE,CAAC,GACX,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;IAES,cAAc,CAAC,QAAa,EAAE;QACtC,OAAO,IAAA,2BAAY,EAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAES,2BAA2B,CAAC,CAAe,EAAE,KAAU,EAAE,UAAgB;;QACjF,MAAM,WAAW,GAAG,KAAK,CAAC,2BAA2B,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QAC5E,MAAM,UAAU,GACd,MAAA,MAAA,WAAW,CAAC,KAAK,mCAAI,WAAW,CAAC,UAAU,mCAAI,MAAC,CAAC,CAAC,SAAqC,0CAAE,UAAU,CAAC;QAEtG,IAAI,IAAA,cAAK,EAAC,UAAU,CAAC,EAAE;YACrB,WAAW,CAAC,UAAU,GAAG,MAAM,CAAC;SACjC;aAAM;YACL,WAAW,CAAC,UAAU,GAAG,UAAU,CAAC;SACrC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;;AA7BH,4BA8BC;AA7BiB,aAAI,UAAqB;AA+BpC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,iBAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAE9C,iBAAO,CAAC,wBAAwB,WAAsB,2BAAY,CAAC,CAAC;IAEpE,IAAA,iCAAkB,GAAE,CAAC;IACrB,IAAA,6BAAc,GAAE,CAAC;IACjB,IAAA,4CAAuB,GAAE,CAAC;AAC5B,CAAC,CAAC;AARW,QAAA,gBAAgB,oBAQ3B","file":"cell.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { ICellMarkSpec } from '../typings';\nimport type { ICellMark, IMarkGraphic, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerShadowRoot, registerSymbol } from '@visactor/vrender-kits';\nimport { registerSymbolDataLabel } from '@visactor/vrender-components';\nimport type { IGraphic, ISymbolGraphicAttribute } from '@visactor/vrender-core';\nimport { createSymbol } from '@visactor/vrender-core';\nimport { isNil } from '@visactor/vutils';\nimport { BaseMark } from './base';\n\nexport class CellMark extends BaseMark<ICellMarkSpec> implements ICellMark {\n static readonly type = MarkTypeEnum.cell;\n readonly type = CellMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<ICellMarkSpec> = {\n ...super._getDefaultStyle(),\n fill: undefined,\n lineWidth: 0,\n padding: 0\n };\n return defaultStyle;\n }\n\n protected _createGraphic(attrs: any = {}): IGraphic {\n return createSymbol(attrs);\n }\n\n protected _transformGraphicAttributes(g: IMarkGraphic, attrs: any, groupAttrs?: any) {\n const symbolAttrs = super._transformGraphicAttributes(g, attrs, groupAttrs);\n const symbolType =\n symbolAttrs.shape ?? symbolAttrs.symbolType ?? (g.attribute as ISymbolGraphicAttribute)?.symbolType;\n\n if (isNil(symbolType)) {\n symbolAttrs.symbolType = 'rect';\n } else {\n symbolAttrs.symbolType = symbolType;\n }\n return symbolAttrs;\n }\n}\n\nexport const registerCellMark = () => {\n Factory.registerMark(CellMark.type, CellMark);\n\n Factory.registerGraphicComponent(MarkTypeEnum.symbol, createSymbol);\n\n registerShadowRoot();\n registerSymbol();\n registerSymbolDataLabel();\n};\n"]}
1
+ {"version":3,"sources":["../src/mark/cell.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAK5C,6FAAyF;AACzF,qFAAiF;AACjF,qEAAuE;AAEvE,yDAAsD;AACtD,6CAAyC;AACzC,iCAAkC;AAElC,MAAa,QAAS,SAAQ,eAAuB;IAArD;;QAEW,SAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IA4BhC,CAAC;IA1BW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,IAAI,EAAE,SAAS,EACf,SAAS,EAAE,CAAC,EACZ,OAAO,EAAE,CAAC,GACX,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;IAES,cAAc,CAAC,QAAa,EAAE;QACtC,OAAO,IAAA,2BAAY,EAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAES,2BAA2B,CAAC,CAAe,EAAE,KAAU,EAAE,UAAgB;;QACjF,MAAM,WAAW,GAAG,KAAK,CAAC,2BAA2B,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QAC5E,MAAM,UAAU,GACd,MAAA,MAAA,WAAW,CAAC,KAAK,mCAAI,WAAW,CAAC,UAAU,mCAAI,MAAC,CAAC,CAAC,SAAqC,0CAAE,UAAU,CAAC;QAEtG,IAAI,IAAA,cAAK,EAAC,UAAU,CAAC,EAAE;YACrB,WAAW,CAAC,UAAU,GAAG,MAAM,CAAC;SACjC;aAAM;YACL,WAAW,CAAC,UAAU,GAAG,UAAU,CAAC;SACrC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;;AA7BH,4BA8BC;AA7BiB,aAAI,UAAqB;AA+BpC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,iBAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAE9C,iBAAO,CAAC,wBAAwB,WAAsB,2BAAY,CAAC,CAAC;IAEpE,IAAA,wCAAkB,GAAE,CAAC;IACrB,IAAA,gCAAc,GAAE,CAAC;IACjB,IAAA,4CAAuB,GAAE,CAAC;AAC5B,CAAC,CAAC;AARW,QAAA,gBAAgB,oBAQ3B","file":"cell.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { ICellMarkSpec } from '../typings';\nimport type { ICellMark, IMarkGraphic, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerShadowRoot } from '@visactor/vrender-kits/register/register-shadowRoot';\nimport { registerSymbol } from '@visactor/vrender-kits/register/register-symbol';\nimport { registerSymbolDataLabel } from '@visactor/vrender-components';\nimport type { IGraphic, ISymbolGraphicAttribute } from '@visactor/vrender-core';\nimport { createSymbol } from '@visactor/vrender-core';\nimport { isNil } from '@visactor/vutils';\nimport { BaseMark } from './base';\n\nexport class CellMark extends BaseMark<ICellMarkSpec> implements ICellMark {\n static readonly type = MarkTypeEnum.cell;\n readonly type = CellMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<ICellMarkSpec> = {\n ...super._getDefaultStyle(),\n fill: undefined,\n lineWidth: 0,\n padding: 0\n };\n return defaultStyle;\n }\n\n protected _createGraphic(attrs: any = {}): IGraphic {\n return createSymbol(attrs);\n }\n\n protected _transformGraphicAttributes(g: IMarkGraphic, attrs: any, groupAttrs?: any) {\n const symbolAttrs = super._transformGraphicAttributes(g, attrs, groupAttrs);\n const symbolType =\n symbolAttrs.shape ?? symbolAttrs.symbolType ?? (g.attribute as ISymbolGraphicAttribute)?.symbolType;\n\n if (isNil(symbolType)) {\n symbolAttrs.symbolType = 'rect';\n } else {\n symbolAttrs.symbolType = symbolType;\n }\n return symbolAttrs;\n }\n}\n\nexport const registerCellMark = () => {\n Factory.registerMark(CellMark.type, CellMark);\n\n Factory.registerGraphicComponent(MarkTypeEnum.symbol, createSymbol);\n\n registerShadowRoot();\n registerSymbol();\n registerSymbolDataLabel();\n};\n"]}
package/cjs/mark/glyph.js CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.registerGlyphMark = exports.GlyphMark = void 0;
6
6
 
7
- const base_mark_1 = require("./base/base-mark"), vrender_core_1 = require("@visactor/vrender-core"), factory_1 = require("../core/factory"), vrender_kits_1 = require("@visactor/vrender-kits"), enum_1 = require("./interface/enum"), vutils_1 = require("@visactor/vutils"), GLYPH_INHERITED_STYLE_ATTRIBUTES = new Set([ "fill", "fillOpacity", "stroke", "strokeOpacity", "opacity", "lineWidth", "lineDash", "lineDashOffset", "lineCap", "lineJoin", "miterLimit", "shadowBlur", "shadowColor", "shadowOffsetX", "shadowOffsetY", "visible", "pickable", "cursor" ]), GLYPH_STATE_ATTRIBUTE_UPDATE_TYPE = 2;
7
+ const base_mark_1 = require("./base/base-mark"), vrender_core_1 = require("@visactor/vrender-core"), factory_1 = require("../core/factory"), register_glyph_1 = require("@visactor/vrender-kits/register/register-glyph"), register_shadowRoot_1 = require("@visactor/vrender-kits/register/register-shadowRoot"), enum_1 = require("./interface/enum"), vutils_1 = require("@visactor/vutils"), GLYPH_INHERITED_STYLE_ATTRIBUTES = new Set([ "fill", "fillOpacity", "stroke", "strokeOpacity", "opacity", "lineWidth", "lineDash", "lineDashOffset", "lineCap", "lineJoin", "miterLimit", "shadowBlur", "shadowColor", "shadowOffsetX", "shadowOffsetY", "visible", "pickable", "cursor" ]), GLYPH_STATE_ATTRIBUTE_UPDATE_TYPE = 2;
8
8
 
9
9
  class GlyphMark extends base_mark_1.BaseMark {
10
10
  constructor() {
@@ -93,7 +93,7 @@ exports.GlyphMark = GlyphMark;
93
93
 
94
94
  const registerGlyphMark = () => {
95
95
  factory_1.Factory.registerGraphicComponent("glyph", vrender_core_1.createGlyph),
96
- (0, vrender_kits_1.registerShadowRoot)(), (0, vrender_kits_1.registerGlyph)();
96
+ (0, register_shadowRoot_1.registerShadowRoot)(), (0, register_glyph_1.registerGlyph)();
97
97
  };
98
98
 
99
99
  exports.registerGlyphMark = registerGlyphMark;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/glyph.ts"],"names":[],"mappings":"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","file":"glyph.js","sourcesContent":["import type { ICommonSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IGlyph, IGlyphGraphicAttribute, IGraphic } from '@visactor/vrender-core';\nimport { createGlyph } from '@visactor/vrender-core';\nimport type { IGlyphMark } from './interface/mark';\nimport type { MarkType } from './interface/type';\nimport { Factory } from '../core/factory';\nimport type { Datum } from '../typings/common';\nimport { registerGlyph, registerShadowRoot } from '@visactor/vrender-kits';\nimport type { IMarkGraphic } from './interface/common';\nimport { DiffState } from './interface/enum';\nimport { merge } from '@visactor/vutils';\n\nconst GLYPH_INHERITED_STYLE_ATTRIBUTES = new Set([\n 'fill',\n 'fillOpacity',\n 'stroke',\n 'strokeOpacity',\n 'opacity',\n 'lineWidth',\n 'lineDash',\n 'lineDashOffset',\n 'lineCap',\n 'lineJoin',\n 'miterLimit',\n 'shadowBlur',\n 'shadowColor',\n 'shadowOffsetX',\n 'shadowOffsetY',\n 'visible',\n 'pickable',\n 'cursor'\n]);\nconst GLYPH_STATE_ATTRIBUTE_UPDATE_TYPE = 2;\n\nexport abstract class GlyphMark<T extends ICommonSpec = ICommonSpec, Cfg = any>\n extends BaseMark<T>\n implements IGlyphMark<T, Cfg>\n{\n protected _defaultGlyphAttrs: T;\n\n protected _subMarks: Record<\n string,\n {\n type: MarkType;\n defaultAttributes?: any;\n }\n >;\n\n getSubMarks() {\n return this._subMarks;\n }\n\n protected _glyphConfig: Cfg;\n\n setGlyphConfig(cfg: Cfg) {\n this._glyphConfig = cfg;\n }\n\n getGlyphConfig() {\n return this._glyphConfig;\n }\n\n protected _positionChannels: string[];\n\n getPositionChannels() {\n return this._positionChannels;\n }\n\n protected _positionEncoder: (glyphAttrs: any, datum: Datum, g: IGlyph) => Record<string, any>;\n\n protected _channelEncoder: Record<string, (channelValue: any) => Record<string, any>>;\n\n private _getInheritedStyleAttrs(attributes: any) {\n let inheritedStyleAttrs: any = null;\n\n Object.keys(attributes).forEach(channel => {\n if (GLYPH_INHERITED_STYLE_ATTRIBUTES.has(channel)) {\n inheritedStyleAttrs = inheritedStyleAttrs ?? {};\n inheritedStyleAttrs[channel] = attributes[channel];\n }\n });\n\n return inheritedStyleAttrs;\n }\n\n private _getInheritedStyleAttrsMap(glyph: IGlyph, attributes: any) {\n const inheritedStyleAttrs = this._getInheritedStyleAttrs(attributes);\n\n if (!inheritedStyleAttrs) {\n return null;\n }\n\n return glyph.getSubGraphic().reduce((map, subGraphic) => {\n if (subGraphic) {\n map[subGraphic.name] = { ...inheritedStyleAttrs };\n }\n return map;\n }, {} as Record<string, any>);\n }\n\n private _syncInheritedStyleAttrs(glyph: IGlyph, attributes: any) {\n const inheritedStyleAttrs = this._getInheritedStyleAttrs(attributes);\n\n if (!inheritedStyleAttrs) {\n return;\n }\n\n glyph.getSubGraphic().forEach(subGraphic => {\n subGraphic?.setAttributes({ ...inheritedStyleAttrs });\n });\n }\n\n private _onGlyphAttributeUpdate(glyph: IGlyph) {\n return (newAttributes: any) => {\n const positionChannels = this.getPositionChannels();\n let subAttrsMap =\n positionChannels && this._positionEncoder && Object.keys(newAttributes).some(k => positionChannels.includes(k))\n ? this._positionEncoder(newAttributes, glyph?.context?.data?.[0], glyph)\n : null;\n\n if (this._channelEncoder) {\n Object.keys(this._channelEncoder).forEach(channel => {\n if (channel in newAttributes) {\n const channelAttrsMap = this._channelEncoder[channel](newAttributes[channel]);\n\n subAttrsMap = subAttrsMap ? merge(subAttrsMap, channelAttrsMap) : channelAttrsMap;\n }\n });\n }\n\n const inheritedStyleAttrsMap = this._getInheritedStyleAttrsMap(glyph, newAttributes);\n if (inheritedStyleAttrsMap) {\n subAttrsMap = subAttrsMap ? merge(inheritedStyleAttrsMap, subAttrsMap) : inheritedStyleAttrsMap;\n }\n\n if (subAttrsMap) {\n glyph.getSubGraphic().forEach(subGraphic => {\n if (subGraphic && subAttrsMap[subGraphic.name]) {\n subGraphic.setAttributes(subAttrsMap[subGraphic.name]);\n }\n });\n }\n\n return newAttributes;\n };\n }\n\n protected _setStateOfGraphic = (g: IMarkGraphic) => {\n g.clearStates();\n\n if (g.context.diffState === DiffState.enter || g.context.diffState === DiffState.update) {\n g.glyphStateProxy = (stateName: string, nexStates: string[]) => {\n const glyphAttrs = {\n attributes: {\n ...this._runEncoderOfGraphic(this._encoderOfState?.[stateName], g),\n ...(g.runtimeStateCache ? g.runtimeStateCache[stateName] : null)\n }\n };\n\n // 更新缓存\n if (!g.glyphStates) {\n g.glyphStates = { [stateName]: glyphAttrs };\n } else if (!g.glyphStates[stateName]) {\n g.glyphStates[stateName] = glyphAttrs;\n }\n\n return glyphAttrs;\n };\n\n g.useStates(g.context.states);\n }\n };\n\n protected _createGraphic(attrs: IGlyphGraphicAttribute = {}): IGraphic {\n const glyph = createGlyph(attrs);\n glyph.onBeforeAttributeUpdate = this._onGlyphAttributeUpdate(glyph);\n glyph.addEventListener('afterAttributeUpdate', (event: any) => {\n if (event?.detail?.type === GLYPH_STATE_ATTRIBUTE_UPDATE_TYPE) {\n this._syncInheritedStyleAttrs(glyph, glyph.attribute);\n }\n });\n const subMarks = this._subMarks;\n\n if (subMarks) {\n const subGraphics: IGraphic[] = [];\n\n Object.keys(subMarks).forEach(name => {\n // glyph 中的子元素会继承glyph 的 x,y,所以子元素手动设置一下,x: 0, y: 0\n const subGraphic = Factory.createGraphicComponent(subMarks[name].type, {\n ...subMarks[name].defaultAttributes\n });\n\n if (subGraphic) {\n subGraphics.push(subGraphic);\n\n subGraphic.name = name;\n subGraphic.onBeforeAttributeUpdate = (attrs: any) => {\n return attrs;\n };\n }\n });\n\n glyph.setSubGraphic(subGraphics);\n }\n\n (glyph as any).onBeforeAttributeUpdate(attrs);\n\n return glyph;\n }\n\n protected _runProgressiveEncoder(graphics: IMarkGraphic[]) {\n this._runEncoder(graphics);\n }\n}\n\nexport const registerGlyphMark = () => {\n Factory.registerGraphicComponent('glyph', createGlyph);\n registerShadowRoot();\n registerGlyph();\n};\n"]}
1
+ {"version":3,"sources":["../src/mark/glyph.ts"],"names":[],"mappings":"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","file":"glyph.js","sourcesContent":["import type { ICommonSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IGlyph, IGlyphGraphicAttribute, IGraphic } from '@visactor/vrender-core';\nimport { createGlyph } from '@visactor/vrender-core';\nimport type { IGlyphMark } from './interface/mark';\nimport type { MarkType } from './interface/type';\nimport { Factory } from '../core/factory';\nimport type { Datum } from '../typings/common';\nimport { registerGlyph } from '@visactor/vrender-kits/register/register-glyph';\nimport { registerShadowRoot } from '@visactor/vrender-kits/register/register-shadowRoot';\nimport type { IMarkGraphic } from './interface/common';\nimport { DiffState } from './interface/enum';\nimport { merge } from '@visactor/vutils';\n\nconst GLYPH_INHERITED_STYLE_ATTRIBUTES = new Set([\n 'fill',\n 'fillOpacity',\n 'stroke',\n 'strokeOpacity',\n 'opacity',\n 'lineWidth',\n 'lineDash',\n 'lineDashOffset',\n 'lineCap',\n 'lineJoin',\n 'miterLimit',\n 'shadowBlur',\n 'shadowColor',\n 'shadowOffsetX',\n 'shadowOffsetY',\n 'visible',\n 'pickable',\n 'cursor'\n]);\nconst GLYPH_STATE_ATTRIBUTE_UPDATE_TYPE = 2;\n\nexport abstract class GlyphMark<T extends ICommonSpec = ICommonSpec, Cfg = any>\n extends BaseMark<T>\n implements IGlyphMark<T, Cfg>\n{\n protected _defaultGlyphAttrs: T;\n\n protected _subMarks: Record<\n string,\n {\n type: MarkType;\n defaultAttributes?: any;\n }\n >;\n\n getSubMarks() {\n return this._subMarks;\n }\n\n protected _glyphConfig: Cfg;\n\n setGlyphConfig(cfg: Cfg) {\n this._glyphConfig = cfg;\n }\n\n getGlyphConfig() {\n return this._glyphConfig;\n }\n\n protected _positionChannels: string[];\n\n getPositionChannels() {\n return this._positionChannels;\n }\n\n protected _positionEncoder: (glyphAttrs: any, datum: Datum, g: IGlyph) => Record<string, any>;\n\n protected _channelEncoder: Record<string, (channelValue: any) => Record<string, any>>;\n\n private _getInheritedStyleAttrs(attributes: any) {\n let inheritedStyleAttrs: any = null;\n\n Object.keys(attributes).forEach(channel => {\n if (GLYPH_INHERITED_STYLE_ATTRIBUTES.has(channel)) {\n inheritedStyleAttrs = inheritedStyleAttrs ?? {};\n inheritedStyleAttrs[channel] = attributes[channel];\n }\n });\n\n return inheritedStyleAttrs;\n }\n\n private _getInheritedStyleAttrsMap(glyph: IGlyph, attributes: any) {\n const inheritedStyleAttrs = this._getInheritedStyleAttrs(attributes);\n\n if (!inheritedStyleAttrs) {\n return null;\n }\n\n return glyph.getSubGraphic().reduce((map, subGraphic) => {\n if (subGraphic) {\n map[subGraphic.name] = { ...inheritedStyleAttrs };\n }\n return map;\n }, {} as Record<string, any>);\n }\n\n private _syncInheritedStyleAttrs(glyph: IGlyph, attributes: any) {\n const inheritedStyleAttrs = this._getInheritedStyleAttrs(attributes);\n\n if (!inheritedStyleAttrs) {\n return;\n }\n\n glyph.getSubGraphic().forEach(subGraphic => {\n subGraphic?.setAttributes({ ...inheritedStyleAttrs });\n });\n }\n\n private _onGlyphAttributeUpdate(glyph: IGlyph) {\n return (newAttributes: any) => {\n const positionChannels = this.getPositionChannels();\n let subAttrsMap =\n positionChannels && this._positionEncoder && Object.keys(newAttributes).some(k => positionChannels.includes(k))\n ? this._positionEncoder(newAttributes, glyph?.context?.data?.[0], glyph)\n : null;\n\n if (this._channelEncoder) {\n Object.keys(this._channelEncoder).forEach(channel => {\n if (channel in newAttributes) {\n const channelAttrsMap = this._channelEncoder[channel](newAttributes[channel]);\n\n subAttrsMap = subAttrsMap ? merge(subAttrsMap, channelAttrsMap) : channelAttrsMap;\n }\n });\n }\n\n const inheritedStyleAttrsMap = this._getInheritedStyleAttrsMap(glyph, newAttributes);\n if (inheritedStyleAttrsMap) {\n subAttrsMap = subAttrsMap ? merge(inheritedStyleAttrsMap, subAttrsMap) : inheritedStyleAttrsMap;\n }\n\n if (subAttrsMap) {\n glyph.getSubGraphic().forEach(subGraphic => {\n if (subGraphic && subAttrsMap[subGraphic.name]) {\n subGraphic.setAttributes(subAttrsMap[subGraphic.name]);\n }\n });\n }\n\n return newAttributes;\n };\n }\n\n protected _setStateOfGraphic = (g: IMarkGraphic) => {\n g.clearStates();\n\n if (g.context.diffState === DiffState.enter || g.context.diffState === DiffState.update) {\n g.glyphStateProxy = (stateName: string, nexStates: string[]) => {\n const glyphAttrs = {\n attributes: {\n ...this._runEncoderOfGraphic(this._encoderOfState?.[stateName], g),\n ...(g.runtimeStateCache ? g.runtimeStateCache[stateName] : null)\n }\n };\n\n // 更新缓存\n if (!g.glyphStates) {\n g.glyphStates = { [stateName]: glyphAttrs };\n } else if (!g.glyphStates[stateName]) {\n g.glyphStates[stateName] = glyphAttrs;\n }\n\n return glyphAttrs;\n };\n\n g.useStates(g.context.states);\n }\n };\n\n protected _createGraphic(attrs: IGlyphGraphicAttribute = {}): IGraphic {\n const glyph = createGlyph(attrs);\n glyph.onBeforeAttributeUpdate = this._onGlyphAttributeUpdate(glyph);\n glyph.addEventListener('afterAttributeUpdate', (event: any) => {\n if (event?.detail?.type === GLYPH_STATE_ATTRIBUTE_UPDATE_TYPE) {\n this._syncInheritedStyleAttrs(glyph, glyph.attribute);\n }\n });\n const subMarks = this._subMarks;\n\n if (subMarks) {\n const subGraphics: IGraphic[] = [];\n\n Object.keys(subMarks).forEach(name => {\n // glyph 中的子元素会继承glyph 的 x,y,所以子元素手动设置一下,x: 0, y: 0\n const subGraphic = Factory.createGraphicComponent(subMarks[name].type, {\n ...subMarks[name].defaultAttributes\n });\n\n if (subGraphic) {\n subGraphics.push(subGraphic);\n\n subGraphic.name = name;\n subGraphic.onBeforeAttributeUpdate = (attrs: any) => {\n return attrs;\n };\n }\n });\n\n glyph.setSubGraphic(subGraphics);\n }\n\n (glyph as any).onBeforeAttributeUpdate(attrs);\n\n return glyph;\n }\n\n protected _runProgressiveEncoder(graphics: IMarkGraphic[]) {\n this._runEncoder(graphics);\n }\n}\n\nexport const registerGlyphMark = () => {\n Factory.registerGraphicComponent('glyph', createGlyph);\n registerShadowRoot();\n registerGlyph();\n};\n"]}
package/cjs/mark/image.js CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.registerImageMark = exports.ImageMark = void 0;
6
6
 
7
- const factory_1 = require("./../core/factory"), base_mark_1 = require("./base/base-mark"), vrender_kits_1 = require("@visactor/vrender-kits"), vrender_core_1 = require("@visactor/vrender-core");
7
+ const factory_1 = require("./../core/factory"), base_mark_1 = require("./base/base-mark"), register_image_1 = require("@visactor/vrender-kits/register/register-image"), register_shadowRoot_1 = require("@visactor/vrender-kits/register/register-shadowRoot"), vrender_core_1 = require("@visactor/vrender-core");
8
8
 
9
9
  class ImageMark extends base_mark_1.BaseMark {
10
10
  constructor() {
@@ -22,8 +22,8 @@ class ImageMark extends base_mark_1.BaseMark {
22
22
  exports.ImageMark = ImageMark, ImageMark.type = "image";
23
23
 
24
24
  const registerImageMark = () => {
25
- factory_1.Factory.registerMark(ImageMark.type, ImageMark), (0, vrender_kits_1.registerShadowRoot)(),
26
- (0, vrender_kits_1.registerImage)(), factory_1.Factory.registerGraphicComponent("image", vrender_core_1.createImage);
25
+ factory_1.Factory.registerMark(ImageMark.type, ImageMark), (0, register_shadowRoot_1.registerShadowRoot)(),
26
+ (0, register_image_1.registerImage)(), factory_1.Factory.registerGraphicComponent("image", vrender_core_1.createImage);
27
27
  };
28
28
 
29
29
  exports.registerImageMark = registerImageMark;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/image.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAE5C,gDAA4C;AAI5C,yDAA2E;AAC3E,yDAAqD;AAErD,MAAa,SAAU,SAAQ,oBAAwB;IAAvD;;QAEW,SAAI,GAAG,SAAS,CAAC,IAAI,CAAC;IAWjC,CAAC;IATW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,CAAC,GACb,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AAZH,8BAaC;AAZiB,cAAI,WAAsB;AAcrC,MAAM,iBAAiB,GAAG,GAAG,EAAE;IACpC,iBAAO,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,SAAuC,CAAC,CAAC;IAC9E,IAAA,iCAAkB,GAAE,CAAC;IACrB,IAAA,4BAAa,GAAE,CAAC;IAEhB,iBAAO,CAAC,wBAAwB,UAAqB,0BAAW,CAAC,CAAC;AACpE,CAAC,CAAC;AANW,QAAA,iBAAiB,qBAM5B","file":"image.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { IImageMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IImageMark, IMarkStyle, MarkConstructor } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerImage, registerShadowRoot } from '@visactor/vrender-kits';\nimport { createImage } from '@visactor/vrender-core';\n\nexport class ImageMark extends BaseMark<IImageMarkSpec> implements IImageMark {\n static readonly type = MarkTypeEnum.image;\n readonly type = ImageMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IImageMarkSpec> = {\n ...super._getDefaultStyle(),\n width: undefined,\n height: undefined,\n lineWidth: 0\n };\n return defaultStyle;\n }\n}\n\nexport const registerImageMark = () => {\n Factory.registerMark(ImageMark.type, ImageMark as unknown as MarkConstructor);\n registerShadowRoot();\n registerImage();\n\n Factory.registerGraphicComponent(MarkTypeEnum.image, createImage);\n};\n"]}
1
+ {"version":3,"sources":["../src/mark/image.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAE5C,gDAA4C;AAI5C,mFAA+E;AAC/E,6FAAyF;AACzF,yDAAqD;AAErD,MAAa,SAAU,SAAQ,oBAAwB;IAAvD;;QAEW,SAAI,GAAG,SAAS,CAAC,IAAI,CAAC;IAWjC,CAAC;IATW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,CAAC,GACb,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AAZH,8BAaC;AAZiB,cAAI,WAAsB;AAcrC,MAAM,iBAAiB,GAAG,GAAG,EAAE;IACpC,iBAAO,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,SAAuC,CAAC,CAAC;IAC9E,IAAA,wCAAkB,GAAE,CAAC;IACrB,IAAA,8BAAa,GAAE,CAAC;IAEhB,iBAAO,CAAC,wBAAwB,UAAqB,0BAAW,CAAC,CAAC;AACpE,CAAC,CAAC;AANW,QAAA,iBAAiB,qBAM5B","file":"image.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { IImageMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IImageMark, IMarkStyle, MarkConstructor } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerImage } from '@visactor/vrender-kits/register/register-image';\nimport { registerShadowRoot } from '@visactor/vrender-kits/register/register-shadowRoot';\nimport { createImage } from '@visactor/vrender-core';\n\nexport class ImageMark extends BaseMark<IImageMarkSpec> implements IImageMark {\n static readonly type = MarkTypeEnum.image;\n readonly type = ImageMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IImageMarkSpec> = {\n ...super._getDefaultStyle(),\n width: undefined,\n height: undefined,\n lineWidth: 0\n };\n return defaultStyle;\n }\n}\n\nexport const registerImageMark = () => {\n Factory.registerMark(ImageMark.type, ImageMark as unknown as MarkConstructor);\n registerShadowRoot();\n registerImage();\n\n Factory.registerGraphicComponent(MarkTypeEnum.image, createImage);\n};\n"]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.registerLinkPathMark = exports.LinkPathMark = exports.getVerticalPath = exports.getHorizontalPath = void 0;
6
6
 
7
- const factory_1 = require("./../core/factory"), glyph_1 = require("./glyph"), vrender_core_1 = require("@visactor/vrender-core"), vrender_kits_1 = require("@visactor/vrender-kits"), getHorizontalPath = (options, ratio) => {
7
+ const factory_1 = require("./../core/factory"), glyph_1 = require("./glyph"), vrender_core_1 = require("@visactor/vrender-core"), register_path_1 = require("@visactor/vrender-kits/register/register-path"), getHorizontalPath = (options, ratio) => {
8
8
  var _a;
9
9
  const curvature = null !== (_a = options.curvature) && void 0 !== _a ? _a : .5, thickness = "number" == typeof ratio ? options.thickness * ratio : options.thickness;
10
10
  let x0 = options.x0, x1 = options.x1, y00 = options.y0, y10 = options.y1, cpx0 = x0 + curvature * (x1 - x0), cpx1 = x1 + curvature * (x0 - x1), formatter = v => v;
@@ -86,7 +86,7 @@ class LinkPathMark extends glyph_1.GlyphMark {
86
86
  exports.LinkPathMark = LinkPathMark, LinkPathMark.type = "linkPath";
87
87
 
88
88
  const registerLinkPathMark = () => {
89
- (0, glyph_1.registerGlyphMark)(), (0, vrender_kits_1.registerPath)(), factory_1.Factory.registerGraphicComponent("path", (attrs => (0,
89
+ (0, glyph_1.registerGlyphMark)(), (0, register_path_1.registerPath)(), factory_1.Factory.registerGraphicComponent("path", (attrs => (0,
90
90
  vrender_core_1.createPath)(attrs))), factory_1.Factory.registerMark(LinkPathMark.type, LinkPathMark);
91
91
  };
92
92
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/link-path.ts"],"names":[],"mappings":"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","file":"link-path.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { ILinkPathMarkSpec } from '../typings/visual';\nimport type { ILinkPathConfig, ILinkPathMark, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { GlyphMark, registerGlyphMark } from './glyph';\nimport type { IGlyph, IPathGraphicAttribute } from '@visactor/vrender-core';\nimport { createPath } from '@visactor/vrender-core';\nimport { registerPath } from '@visactor/vrender-kits';\nimport type { Datum } from '../typings/common';\n\nexport const getHorizontalPath = (options: ILinkPathMarkSpec, ratio?: number) => {\n const curvature = options.curvature ?? 0.5;\n const hasThickness = true;\n const thickness = typeof ratio === 'number' ? options.thickness * ratio : options.thickness;\n\n let x0 = options.x0;\n let x1 = options.x1;\n let y00 = options.y0;\n let y10 = options.y1;\n let cpx0 = x0 + curvature * (x1 - x0);\n let cpx1 = x1 + curvature * (x0 - x1);\n let formatter = (v: number) => v;\n\n if (options.round !== false) {\n x0 = Math.round(x0);\n x1 = Math.round(x1);\n y00 = Math.round(y00);\n y10 = Math.round(y10);\n cpx0 = Math.round(cpx0);\n cpx1 = Math.round(cpx1);\n formatter = Math.round;\n }\n const topPath =\n options.pathType === 'line'\n ? `M${x0},${y00}L${x1},${y10}`\n : options.pathType === 'polyline'\n ? `M${x0},${y00}L${cpx0},${y00}L${cpx0},${y10}L${x1},${y10}`\n : `M${x0},${y00}C${cpx0},${y00},${cpx1},${y10},${x1},${y10}`;\n\n if (!hasThickness) {\n // simplified to a single path\n return topPath;\n }\n\n if (options.align === 'center') {\n y00 = formatter(options.y0 - thickness / 2);\n y10 = formatter(options.y1 - thickness / 2);\n } else if (options.align === 'end') {\n y00 = formatter(options.y0 + options.thickness / 2 - thickness);\n y10 = formatter(options.y1 + options.thickness / 2 - thickness);\n } else {\n y00 = formatter(options.y0 - options.thickness / 2);\n y10 = formatter(options.y1 - options.thickness / 2);\n }\n\n const y01 = formatter(y00 + thickness);\n const y11 = formatter(y10 + thickness);\n\n const hasLength = Math.abs(x1 - x0) > 1e-6;\n const endArrowPath =\n options.endArrow && hasLength\n ? `L${x1},${formatter(y10 - thickness / 2)}L${formatter(x1 + thickness)},${formatter(\n (y10 + y11) / 2\n )}L${x1},${formatter(y11 + thickness / 2)}`\n : '';\n const startArrowPath =\n options.startArrow && hasLength\n ? `L${x0},${formatter(y01 + thickness / 2)}L${formatter(x0 - thickness)},${formatter(\n (y00 + y01) / 2\n )}L${x0},${formatter(y00 - thickness / 2)}`\n : '';\n\n if (options.pathType === 'line') {\n return `M${x0},${y00}L${x1},${y10}${endArrowPath}L${x1},${y11}L${x0},${y01}${startArrowPath}Z`;\n } else if (options.pathType === 'polyline') {\n return `M${x0},${y00}L${cpx0},${y00}L${cpx0},${y10}L${x1},${y10}\n ${endArrowPath}L${x1},${y11}L${cpx0},${y11}L${cpx0},${y01}L${x0},${y01}${startArrowPath}Z`;\n }\n\n return `M${x0},${y00}C${cpx0},${y00},${cpx1},${y10},${x1},${y10}\n ${endArrowPath}L${x1},${y11}C${cpx1},${y11},${cpx0},${y01},${x0},${y01}${startArrowPath}Z`;\n};\n\nexport const getVerticalPath = (options: ILinkPathMarkSpec, ratio?: number) => {\n const curvature = options.curvature ?? 0.5;\n const hasThickness = true;\n const thickness = typeof ratio === 'number' ? options.thickness * ratio : options.thickness;\n let y0 = options.y0;\n let y1 = options.y1;\n let x00 = options.x0;\n let x10 = options.x1;\n let cpy0 = y0 + curvature * (y1 - y0);\n let cpy1 = y1 + curvature * (y0 - y1);\n let formatter = (v: number) => v;\n\n if (options.round !== false) {\n formatter = Math.round;\n y0 = Math.round(y0);\n y1 = Math.round(y1);\n x00 = Math.round(x00);\n x10 = Math.round(x10);\n cpy0 = Math.round(cpy0);\n cpy1 = Math.round(cpy1);\n }\n const leftpath =\n options.pathType === 'line'\n ? `M${x00},${y0}L${x10},${y1}`\n : options.pathType === 'polyline'\n ? `M${x00},${y0}L${x00},${cpy0}L${x10},${cpy0}L${x10},${y1}`\n : `M${x00},${y0}C${x00},${cpy0},${x10},${cpy1},${x10},${y1}`;\n if (!hasThickness) {\n // simplified to a single path\n return leftpath;\n }\n\n if (options.align === 'center') {\n x00 = formatter(options.x0 - thickness / 2);\n x10 = formatter(options.x1 - thickness / 2);\n } else if (options.align === 'end') {\n x00 = formatter(options.x0 + options.thickness / 2 - thickness);\n x10 = formatter(options.x1 + options.thickness / 2 - thickness);\n } else {\n x00 = formatter(options.x0 - options.thickness / 2);\n x10 = formatter(options.x1 - options.thickness / 2);\n }\n\n const x01 = formatter(x00 + thickness);\n const x11 = formatter(x10 + thickness);\n\n const hasLength = Math.abs(y1 - y0) > 1e-6;\n const endArrowPath =\n options.endArrow && hasLength\n ? `L${formatter(x10 - thickness / 2)},${y1}L${formatter((x10 + x11) / 2)},${formatter(\n y1 + thickness\n )}L${formatter(x11 + thickness / 2)},${y1}`\n : '';\n const startArrowPath =\n options.startArrow && hasLength\n ? `L${formatter(x01 + thickness / 2)},${y0}L${formatter((x01 + x00) / 2)},${formatter(\n y0 - thickness\n )}L${formatter(x00 - thickness / 2)},${y0}`\n : '';\n\n if (options.pathType === 'line') {\n return `M${x00},${y0}L${x10},${y1}${endArrowPath}L${x11},${y1}L${x01},${y0}${startArrowPath}Z`;\n } else if (options.pathType === 'polyline') {\n return `M${x00},${y0}L${x00},${cpy0}L${x10},${cpy0}L${x10},${y1}\n ${endArrowPath}L${x11},${y1}L${x11},${cpy0}L${x01},${cpy0}L${x01},${y0}${startArrowPath}Z`;\n }\n\n return `M${x00},${y0}C${x00},${cpy0},${x10},${cpy1},${x10},${y1}\n ${endArrowPath}L${x11},${y1}C${x11},${cpy1},${x01},${cpy0},${x01},${y0}${startArrowPath}Z`;\n};\n\nexport class LinkPathMark extends GlyphMark<ILinkPathMarkSpec, ILinkPathConfig> implements ILinkPathMark {\n static readonly type = MarkTypeEnum.linkPath;\n readonly type = LinkPathMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<ILinkPathMarkSpec> = {\n ...super._getDefaultStyle(),\n x: 0,\n y: 0,\n x0: 0,\n y0: 0,\n x1: 100,\n y1: 100,\n thickness: 1,\n round: true\n };\n return defaultStyle;\n }\n\n protected _subMarks = {\n back: {\n type: 'path',\n defaultAttributes: {\n zIndex: 0\n }\n },\n front: {\n type: 'path',\n defaultAttributes: {\n zIndex: 1\n }\n }\n };\n\n protected _positionChannels: string[] = [\n 'x0',\n 'y0',\n 'x1',\n 'y1',\n 'thickness',\n 'round',\n 'curvature',\n 'ratio',\n 'pathType',\n 'align',\n 'endArrow',\n 'startArrow',\n 'ratio'\n ];\n\n protected _channelEncoder = {\n backgroundStyle: (val: any) => {\n return {\n back: val\n };\n }\n };\n\n protected _positionEncoder = (glyphAttrs: any, datum: Datum, g: IGlyph) => {\n const newAttrs = {\n ...g.attribute,\n ...glyphAttrs\n };\n\n const direction = newAttrs.direction ?? this._glyphConfig?.direction;\n const parsePath = ['vertical', 'TB', 'BT'].includes(direction) ? getVerticalPath : getHorizontalPath;\n const isRatioShow = typeof newAttrs.ratio === 'number' && newAttrs.ratio >= 0 && newAttrs.ratio <= 1;\n\n return {\n back: {\n path: isRatioShow ? parsePath(newAttrs, 1) : ''\n },\n front: {\n path: parsePath(newAttrs, isRatioShow ? newAttrs.ratio : 1)\n }\n };\n };\n}\n\nexport const registerLinkPathMark = () => {\n registerGlyphMark();\n registerPath();\n Factory.registerGraphicComponent('path', (attrs: IPathGraphicAttribute) => createPath(attrs));\n Factory.registerMark(LinkPathMark.type, LinkPathMark as any);\n};\n"]}
1
+ {"version":3,"sources":["../src/mark/link-path.ts"],"names":[],"mappings":"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","file":"link-path.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { ILinkPathMarkSpec } from '../typings/visual';\nimport type { ILinkPathConfig, ILinkPathMark, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { GlyphMark, registerGlyphMark } from './glyph';\nimport type { IGlyph, IPathGraphicAttribute } from '@visactor/vrender-core';\nimport { createPath } from '@visactor/vrender-core';\nimport { registerPath } from '@visactor/vrender-kits/register/register-path';\nimport type { Datum } from '../typings/common';\n\nexport const getHorizontalPath = (options: ILinkPathMarkSpec, ratio?: number) => {\n const curvature = options.curvature ?? 0.5;\n const hasThickness = true;\n const thickness = typeof ratio === 'number' ? options.thickness * ratio : options.thickness;\n\n let x0 = options.x0;\n let x1 = options.x1;\n let y00 = options.y0;\n let y10 = options.y1;\n let cpx0 = x0 + curvature * (x1 - x0);\n let cpx1 = x1 + curvature * (x0 - x1);\n let formatter = (v: number) => v;\n\n if (options.round !== false) {\n x0 = Math.round(x0);\n x1 = Math.round(x1);\n y00 = Math.round(y00);\n y10 = Math.round(y10);\n cpx0 = Math.round(cpx0);\n cpx1 = Math.round(cpx1);\n formatter = Math.round;\n }\n const topPath =\n options.pathType === 'line'\n ? `M${x0},${y00}L${x1},${y10}`\n : options.pathType === 'polyline'\n ? `M${x0},${y00}L${cpx0},${y00}L${cpx0},${y10}L${x1},${y10}`\n : `M${x0},${y00}C${cpx0},${y00},${cpx1},${y10},${x1},${y10}`;\n\n if (!hasThickness) {\n // simplified to a single path\n return topPath;\n }\n\n if (options.align === 'center') {\n y00 = formatter(options.y0 - thickness / 2);\n y10 = formatter(options.y1 - thickness / 2);\n } else if (options.align === 'end') {\n y00 = formatter(options.y0 + options.thickness / 2 - thickness);\n y10 = formatter(options.y1 + options.thickness / 2 - thickness);\n } else {\n y00 = formatter(options.y0 - options.thickness / 2);\n y10 = formatter(options.y1 - options.thickness / 2);\n }\n\n const y01 = formatter(y00 + thickness);\n const y11 = formatter(y10 + thickness);\n\n const hasLength = Math.abs(x1 - x0) > 1e-6;\n const endArrowPath =\n options.endArrow && hasLength\n ? `L${x1},${formatter(y10 - thickness / 2)}L${formatter(x1 + thickness)},${formatter(\n (y10 + y11) / 2\n )}L${x1},${formatter(y11 + thickness / 2)}`\n : '';\n const startArrowPath =\n options.startArrow && hasLength\n ? `L${x0},${formatter(y01 + thickness / 2)}L${formatter(x0 - thickness)},${formatter(\n (y00 + y01) / 2\n )}L${x0},${formatter(y00 - thickness / 2)}`\n : '';\n\n if (options.pathType === 'line') {\n return `M${x0},${y00}L${x1},${y10}${endArrowPath}L${x1},${y11}L${x0},${y01}${startArrowPath}Z`;\n } else if (options.pathType === 'polyline') {\n return `M${x0},${y00}L${cpx0},${y00}L${cpx0},${y10}L${x1},${y10}\n ${endArrowPath}L${x1},${y11}L${cpx0},${y11}L${cpx0},${y01}L${x0},${y01}${startArrowPath}Z`;\n }\n\n return `M${x0},${y00}C${cpx0},${y00},${cpx1},${y10},${x1},${y10}\n ${endArrowPath}L${x1},${y11}C${cpx1},${y11},${cpx0},${y01},${x0},${y01}${startArrowPath}Z`;\n};\n\nexport const getVerticalPath = (options: ILinkPathMarkSpec, ratio?: number) => {\n const curvature = options.curvature ?? 0.5;\n const hasThickness = true;\n const thickness = typeof ratio === 'number' ? options.thickness * ratio : options.thickness;\n let y0 = options.y0;\n let y1 = options.y1;\n let x00 = options.x0;\n let x10 = options.x1;\n let cpy0 = y0 + curvature * (y1 - y0);\n let cpy1 = y1 + curvature * (y0 - y1);\n let formatter = (v: number) => v;\n\n if (options.round !== false) {\n formatter = Math.round;\n y0 = Math.round(y0);\n y1 = Math.round(y1);\n x00 = Math.round(x00);\n x10 = Math.round(x10);\n cpy0 = Math.round(cpy0);\n cpy1 = Math.round(cpy1);\n }\n const leftpath =\n options.pathType === 'line'\n ? `M${x00},${y0}L${x10},${y1}`\n : options.pathType === 'polyline'\n ? `M${x00},${y0}L${x00},${cpy0}L${x10},${cpy0}L${x10},${y1}`\n : `M${x00},${y0}C${x00},${cpy0},${x10},${cpy1},${x10},${y1}`;\n if (!hasThickness) {\n // simplified to a single path\n return leftpath;\n }\n\n if (options.align === 'center') {\n x00 = formatter(options.x0 - thickness / 2);\n x10 = formatter(options.x1 - thickness / 2);\n } else if (options.align === 'end') {\n x00 = formatter(options.x0 + options.thickness / 2 - thickness);\n x10 = formatter(options.x1 + options.thickness / 2 - thickness);\n } else {\n x00 = formatter(options.x0 - options.thickness / 2);\n x10 = formatter(options.x1 - options.thickness / 2);\n }\n\n const x01 = formatter(x00 + thickness);\n const x11 = formatter(x10 + thickness);\n\n const hasLength = Math.abs(y1 - y0) > 1e-6;\n const endArrowPath =\n options.endArrow && hasLength\n ? `L${formatter(x10 - thickness / 2)},${y1}L${formatter((x10 + x11) / 2)},${formatter(\n y1 + thickness\n )}L${formatter(x11 + thickness / 2)},${y1}`\n : '';\n const startArrowPath =\n options.startArrow && hasLength\n ? `L${formatter(x01 + thickness / 2)},${y0}L${formatter((x01 + x00) / 2)},${formatter(\n y0 - thickness\n )}L${formatter(x00 - thickness / 2)},${y0}`\n : '';\n\n if (options.pathType === 'line') {\n return `M${x00},${y0}L${x10},${y1}${endArrowPath}L${x11},${y1}L${x01},${y0}${startArrowPath}Z`;\n } else if (options.pathType === 'polyline') {\n return `M${x00},${y0}L${x00},${cpy0}L${x10},${cpy0}L${x10},${y1}\n ${endArrowPath}L${x11},${y1}L${x11},${cpy0}L${x01},${cpy0}L${x01},${y0}${startArrowPath}Z`;\n }\n\n return `M${x00},${y0}C${x00},${cpy0},${x10},${cpy1},${x10},${y1}\n ${endArrowPath}L${x11},${y1}C${x11},${cpy1},${x01},${cpy0},${x01},${y0}${startArrowPath}Z`;\n};\n\nexport class LinkPathMark extends GlyphMark<ILinkPathMarkSpec, ILinkPathConfig> implements ILinkPathMark {\n static readonly type = MarkTypeEnum.linkPath;\n readonly type = LinkPathMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<ILinkPathMarkSpec> = {\n ...super._getDefaultStyle(),\n x: 0,\n y: 0,\n x0: 0,\n y0: 0,\n x1: 100,\n y1: 100,\n thickness: 1,\n round: true\n };\n return defaultStyle;\n }\n\n protected _subMarks = {\n back: {\n type: 'path',\n defaultAttributes: {\n zIndex: 0\n }\n },\n front: {\n type: 'path',\n defaultAttributes: {\n zIndex: 1\n }\n }\n };\n\n protected _positionChannels: string[] = [\n 'x0',\n 'y0',\n 'x1',\n 'y1',\n 'thickness',\n 'round',\n 'curvature',\n 'ratio',\n 'pathType',\n 'align',\n 'endArrow',\n 'startArrow',\n 'ratio'\n ];\n\n protected _channelEncoder = {\n backgroundStyle: (val: any) => {\n return {\n back: val\n };\n }\n };\n\n protected _positionEncoder = (glyphAttrs: any, datum: Datum, g: IGlyph) => {\n const newAttrs = {\n ...g.attribute,\n ...glyphAttrs\n };\n\n const direction = newAttrs.direction ?? this._glyphConfig?.direction;\n const parsePath = ['vertical', 'TB', 'BT'].includes(direction) ? getVerticalPath : getHorizontalPath;\n const isRatioShow = typeof newAttrs.ratio === 'number' && newAttrs.ratio >= 0 && newAttrs.ratio <= 1;\n\n return {\n back: {\n path: isRatioShow ? parsePath(newAttrs, 1) : ''\n },\n front: {\n path: parsePath(newAttrs, isRatioShow ? newAttrs.ratio : 1)\n }\n };\n };\n}\n\nexport const registerLinkPathMark = () => {\n registerGlyphMark();\n registerPath();\n Factory.registerGraphicComponent('path', (attrs: IPathGraphicAttribute) => createPath(attrs));\n Factory.registerMark(LinkPathMark.type, LinkPathMark as any);\n};\n"]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.registerLiquidMark = exports.LiquidMark = void 0;
6
6
 
7
- const factory_1 = require("./../core/factory"), glyph_1 = require("./glyph"), vrender_core_1 = require("@visactor/vrender-core"), vrender_kits_1 = require("@visactor/vrender-kits");
7
+ const factory_1 = require("./../core/factory"), glyph_1 = require("./glyph"), vrender_core_1 = require("@visactor/vrender-core"), register_area_1 = require("@visactor/vrender-kits/register/register-area");
8
8
 
9
9
  class LiquidMark extends glyph_1.GlyphMark {
10
10
  constructor() {
@@ -77,7 +77,7 @@ class LiquidMark extends glyph_1.GlyphMark {
77
77
  exports.LiquidMark = LiquidMark, LiquidMark.type = "liquid";
78
78
 
79
79
  const registerLiquidMark = () => {
80
- (0, glyph_1.registerGlyphMark)(), (0, vrender_kits_1.registerArea)(), factory_1.Factory.registerMark(LiquidMark.type, LiquidMark),
80
+ (0, glyph_1.registerGlyphMark)(), (0, register_area_1.registerArea)(), factory_1.Factory.registerMark(LiquidMark.type, LiquidMark),
81
81
  factory_1.Factory.registerGraphicComponent("area", (attrs => (0, vrender_core_1.createArea)(attrs)));
82
82
  };
83
83
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/liquid.ts"],"names":[],"mappings":"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","file":"liquid.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport type { ILiquidMark } from '../series/liquid/liquid';\nimport { GlyphMark, registerGlyphMark } from './glyph';\nimport { createArea, type IAreaGraphicAttribute, type IGlyph } from '@visactor/vrender-core';\nimport type { IPointLike } from '@visactor/vutils';\nimport { registerArea } from '@visactor/vrender-kits';\nimport type { ILiquidMarkSpec } from '../typings/visual';\nimport type { Datum } from '../typings/common';\n\nexport class LiquidMark extends GlyphMark<ILiquidMarkSpec> implements ILiquidMark {\n static readonly type = MarkTypeEnum.liquid;\n readonly type = LiquidMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<ILiquidMarkSpec> = {\n ...super._getDefaultStyle(),\n wave: 0\n };\n return defaultStyle;\n }\n\n protected _subMarks = {\n wave0: {\n type: 'area',\n defaultAttributes: {\n curveType: 'monotoneX',\n fillOpacity: 1\n }\n },\n wave1: {\n type: 'area',\n defaultAttributes: {\n curveType: 'monotoneX',\n fillOpacity: 0.66\n }\n },\n wave2: {\n type: 'area',\n defaultAttributes: {\n curveType: 'monotoneX',\n fillOpacity: 0.33\n }\n }\n };\n\n protected _positionChannels: string[] = ['wave', 'y', 'height'];\n\n protected _positionEncoder = (glyphAttrs: any, datum: Datum, g: IGlyph) => {\n const {\n wave = (g.attribute as any).wave,\n y = (g.attribute as any).y,\n height = (g.attribute as any).height\n } = glyphAttrs;\n const points0: IPointLike[] = [];\n const points1: IPointLike[] = [];\n const points2: IPointLike[] = [];\n\n for (let i = 0; i < 21; i++) {\n const waveHeight = i % 2 === 0 ? 20 : 0;\n const x = -500 + 50 * i;\n const wy = y + waveHeight;\n const wy1 = y + height;\n\n points0.push({ x: x + wave * 100, y: wy, y1: wy1 });\n points1.push({ x: x + wave * 200 - 40, y: wy, y1: wy1 });\n points2.push({ x: x + wave * 300 - 20, y: wy, y1: wy1 });\n }\n\n return {\n wave0: {\n x: 0,\n y: 0,\n points: points0\n },\n wave1: {\n x: 0,\n y: 0,\n points: points1\n },\n wave2: {\n x: 0,\n y: 0,\n points: points2\n }\n };\n };\n}\n\nexport const registerLiquidMark = () => {\n registerGlyphMark();\n registerArea();\n Factory.registerMark(LiquidMark.type, LiquidMark);\n Factory.registerGraphicComponent('area', (attrs: IAreaGraphicAttribute) => createArea(attrs));\n};\n"]}
1
+ {"version":3,"sources":["../src/mark/liquid.ts"],"names":[],"mappings":"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","file":"liquid.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport type { ILiquidMark } from '../series/liquid/liquid';\nimport { GlyphMark, registerGlyphMark } from './glyph';\nimport { createArea, type IAreaGraphicAttribute, type IGlyph } from '@visactor/vrender-core';\nimport type { IPointLike } from '@visactor/vutils';\nimport { registerArea } from '@visactor/vrender-kits/register/register-area';\nimport type { ILiquidMarkSpec } from '../typings/visual';\nimport type { Datum } from '../typings/common';\n\nexport class LiquidMark extends GlyphMark<ILiquidMarkSpec> implements ILiquidMark {\n static readonly type = MarkTypeEnum.liquid;\n readonly type = LiquidMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<ILiquidMarkSpec> = {\n ...super._getDefaultStyle(),\n wave: 0\n };\n return defaultStyle;\n }\n\n protected _subMarks = {\n wave0: {\n type: 'area',\n defaultAttributes: {\n curveType: 'monotoneX',\n fillOpacity: 1\n }\n },\n wave1: {\n type: 'area',\n defaultAttributes: {\n curveType: 'monotoneX',\n fillOpacity: 0.66\n }\n },\n wave2: {\n type: 'area',\n defaultAttributes: {\n curveType: 'monotoneX',\n fillOpacity: 0.33\n }\n }\n };\n\n protected _positionChannels: string[] = ['wave', 'y', 'height'];\n\n protected _positionEncoder = (glyphAttrs: any, datum: Datum, g: IGlyph) => {\n const {\n wave = (g.attribute as any).wave,\n y = (g.attribute as any).y,\n height = (g.attribute as any).height\n } = glyphAttrs;\n const points0: IPointLike[] = [];\n const points1: IPointLike[] = [];\n const points2: IPointLike[] = [];\n\n for (let i = 0; i < 21; i++) {\n const waveHeight = i % 2 === 0 ? 20 : 0;\n const x = -500 + 50 * i;\n const wy = y + waveHeight;\n const wy1 = y + height;\n\n points0.push({ x: x + wave * 100, y: wy, y1: wy1 });\n points1.push({ x: x + wave * 200 - 40, y: wy, y1: wy1 });\n points2.push({ x: x + wave * 300 - 20, y: wy, y1: wy1 });\n }\n\n return {\n wave0: {\n x: 0,\n y: 0,\n points: points0\n },\n wave1: {\n x: 0,\n y: 0,\n points: points1\n },\n wave2: {\n x: 0,\n y: 0,\n points: points2\n }\n };\n };\n}\n\nexport const registerLiquidMark = () => {\n registerGlyphMark();\n registerArea();\n Factory.registerMark(LiquidMark.type, LiquidMark);\n Factory.registerGraphicComponent('area', (attrs: IAreaGraphicAttribute) => createArea(attrs));\n};\n"]}
package/cjs/mark/path.js CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.registerPathMark = exports.PathMark = void 0;
6
6
 
7
- const factory_1 = require("./../core/factory"), base_mark_1 = require("./base/base-mark"), vrender_kits_1 = require("@visactor/vrender-kits"), vrender_core_1 = require("@visactor/vrender-core");
7
+ const factory_1 = require("./../core/factory"), base_mark_1 = require("./base/base-mark"), register_path_1 = require("@visactor/vrender-kits/register/register-path"), register_shadowRoot_1 = require("@visactor/vrender-kits/register/register-shadowRoot"), vrender_core_1 = require("@visactor/vrender-core");
8
8
 
9
9
  class PathMark extends base_mark_1.BaseMark {
10
10
  constructor() {
@@ -21,8 +21,8 @@ class PathMark extends base_mark_1.BaseMark {
21
21
  exports.PathMark = PathMark, PathMark.type = "path";
22
22
 
23
23
  const registerPathMark = () => {
24
- factory_1.Factory.registerMark(PathMark.type, PathMark), (0, vrender_kits_1.registerShadowRoot)(),
25
- (0, vrender_kits_1.registerPath)(), factory_1.Factory.registerGraphicComponent("path", vrender_core_1.createPath);
24
+ factory_1.Factory.registerMark(PathMark.type, PathMark), (0, register_shadowRoot_1.registerShadowRoot)(),
25
+ (0, register_path_1.registerPath)(), factory_1.Factory.registerGraphicComponent("path", vrender_core_1.createPath);
26
26
  };
27
27
 
28
28
  exports.registerPathMark = registerPathMark;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/path.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAE5C,gDAA4C;AAI5C,yDAA0E;AAC1E,yDAAoD;AAEpD,MAAa,QAAS,SAAQ,oBAAuB;IAArD;;QAEW,SAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAUhC,CAAC;IARW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,SAAS,EAAE,CAAC,EACZ,IAAI,EAAE,EAAE,GACT,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AAXH,4BAYC;AAXiB,aAAI,UAAqB;AAapC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,iBAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC9C,IAAA,iCAAkB,GAAE,CAAC;IACrB,IAAA,2BAAY,GAAE,CAAC;IAEf,iBAAO,CAAC,wBAAwB,SAAoB,yBAAU,CAAC,CAAC;AAClE,CAAC,CAAC;AANW,QAAA,gBAAgB,oBAM3B","file":"path.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { IPathMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkStyle, IPathMark } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerPath, registerShadowRoot } from '@visactor/vrender-kits';\nimport { createPath } from '@visactor/vrender-core';\n\nexport class PathMark extends BaseMark<IPathMarkSpec> implements IPathMark {\n static readonly type = MarkTypeEnum.path;\n readonly type = PathMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IPathMarkSpec> = {\n ...super._getDefaultStyle(),\n lineWidth: 0,\n path: ''\n };\n return defaultStyle;\n }\n}\n\nexport const registerPathMark = () => {\n Factory.registerMark(PathMark.type, PathMark);\n registerShadowRoot();\n registerPath();\n\n Factory.registerGraphicComponent(MarkTypeEnum.path, createPath);\n};\n"]}
1
+ {"version":3,"sources":["../src/mark/path.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAE5C,gDAA4C;AAI5C,iFAA6E;AAC7E,6FAAyF;AACzF,yDAAoD;AAEpD,MAAa,QAAS,SAAQ,oBAAuB;IAArD;;QAEW,SAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAUhC,CAAC;IARW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,SAAS,EAAE,CAAC,EACZ,IAAI,EAAE,EAAE,GACT,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AAXH,4BAYC;AAXiB,aAAI,UAAqB;AAapC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,iBAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC9C,IAAA,wCAAkB,GAAE,CAAC;IACrB,IAAA,4BAAY,GAAE,CAAC;IAEf,iBAAO,CAAC,wBAAwB,SAAoB,yBAAU,CAAC,CAAC;AAClE,CAAC,CAAC;AANW,QAAA,gBAAgB,oBAM3B","file":"path.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { IPathMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkStyle, IPathMark } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerPath } from '@visactor/vrender-kits/register/register-path';\nimport { registerShadowRoot } from '@visactor/vrender-kits/register/register-shadowRoot';\nimport { createPath } from '@visactor/vrender-core';\n\nexport class PathMark extends BaseMark<IPathMarkSpec> implements IPathMark {\n static readonly type = MarkTypeEnum.path;\n readonly type = PathMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IPathMarkSpec> = {\n ...super._getDefaultStyle(),\n lineWidth: 0,\n path: ''\n };\n return defaultStyle;\n }\n}\n\nexport const registerPathMark = () => {\n Factory.registerMark(PathMark.type, PathMark);\n registerShadowRoot();\n registerPath();\n\n Factory.registerGraphicComponent(MarkTypeEnum.path, createPath);\n};\n"]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.registerPolygonMark = exports.PolygonMark = void 0;
6
6
 
7
- const factory_1 = require("./../../core/factory"), base_polygon_1 = require("./base-polygon"), config_1 = require("../../animation/config"), vrender_kits_1 = require("@visactor/vrender-kits"), vrender_core_1 = require("@visactor/vrender-core");
7
+ const factory_1 = require("./../../core/factory"), base_polygon_1 = require("./base-polygon"), config_1 = require("../../animation/config"), register_polygon_1 = require("@visactor/vrender-kits/register/register-polygon"), register_shadowRoot_1 = require("@visactor/vrender-kits/register/register-shadowRoot"), vrender_core_1 = require("@visactor/vrender-core");
8
8
 
9
9
  class PolygonMark extends base_polygon_1.BasePolygonMark {
10
10
  constructor() {
@@ -20,8 +20,8 @@ class PolygonMark extends base_polygon_1.BasePolygonMark {
20
20
  exports.PolygonMark = PolygonMark, PolygonMark.type = "polygon";
21
21
 
22
22
  const registerPolygonMark = () => {
23
- factory_1.Factory.registerMark(PolygonMark.type, PolygonMark), (0, vrender_kits_1.registerShadowRoot)(),
24
- (0, vrender_kits_1.registerPolygon)(), (0, config_1.registerPolygonAnimation)(),
23
+ factory_1.Factory.registerMark(PolygonMark.type, PolygonMark), (0, register_shadowRoot_1.registerShadowRoot)(),
24
+ (0, register_polygon_1.registerPolygon)(), (0, config_1.registerPolygonAnimation)(),
25
25
  factory_1.Factory.registerGraphicComponent("polygon", vrender_core_1.createPolygon);
26
26
  };
27
27
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/polygon/polygon.ts"],"names":[],"mappings":";;;AAAA,kDAA+C;AAG/C,iDAAiD;AAGjD,mDAAkE;AAClE,yDAA6E;AAC7E,yDAAuD;AAEvD,MAAa,WAAY,SAAQ,8BAAiC;IAAlE;;QAEW,SAAI,GAAG,WAAW,CAAC,IAAI,CAAC;IASnC,CAAC;IAPW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,SAAS,EAAE,CAAC,GACb,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AAVH,kCAWC;AAViB,gBAAI,aAAwB;AAYvC,MAAM,mBAAmB,GAAG,GAAG,EAAE;IACtC,iBAAO,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACpD,IAAA,iCAAkB,GAAE,CAAC;IACrB,IAAA,8BAAe,GAAE,CAAC;IAClB,IAAA,iCAAwB,GAAE,CAAC;IAE3B,iBAAO,CAAC,wBAAwB,YAAuB,4BAAa,CAAC,CAAC;AACxE,CAAC,CAAC;AAPW,QAAA,mBAAmB,uBAO9B","file":"polygon.js","sourcesContent":["import { Factory } from './../../core/factory';\n/* eslint-disable no-duplicate-imports */\nimport type { IPolygonMarkSpec } from '../../typings/visual';\nimport { BasePolygonMark } from './base-polygon';\nimport type { IMarkStyle, IPolygonMark } from '../interface';\nimport { MarkTypeEnum } from '../interface/type';\nimport { registerPolygonAnimation } from '../../animation/config';\nimport { registerPolygon, registerShadowRoot } from '@visactor/vrender-kits';\nimport { createPolygon } from '@visactor/vrender-core';\n\nexport class PolygonMark extends BasePolygonMark<IPolygonMarkSpec> implements IPolygonMark {\n static readonly type = MarkTypeEnum.polygon;\n readonly type = PolygonMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IPolygonMarkSpec> = {\n ...super._getDefaultStyle(),\n lineWidth: 0\n };\n return defaultStyle;\n }\n}\n\nexport const registerPolygonMark = () => {\n Factory.registerMark(PolygonMark.type, PolygonMark);\n registerShadowRoot();\n registerPolygon();\n registerPolygonAnimation();\n\n Factory.registerGraphicComponent(MarkTypeEnum.polygon, createPolygon);\n};\n"]}
1
+ {"version":3,"sources":["../src/mark/polygon/polygon.ts"],"names":[],"mappings":";;;AAAA,kDAA+C;AAG/C,iDAAiD;AAGjD,mDAAkE;AAClE,uFAAmF;AACnF,6FAAyF;AACzF,yDAAuD;AAEvD,MAAa,WAAY,SAAQ,8BAAiC;IAAlE;;QAEW,SAAI,GAAG,WAAW,CAAC,IAAI,CAAC;IASnC,CAAC;IAPW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,SAAS,EAAE,CAAC,GACb,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AAVH,kCAWC;AAViB,gBAAI,aAAwB;AAYvC,MAAM,mBAAmB,GAAG,GAAG,EAAE;IACtC,iBAAO,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACpD,IAAA,wCAAkB,GAAE,CAAC;IACrB,IAAA,kCAAe,GAAE,CAAC;IAClB,IAAA,iCAAwB,GAAE,CAAC;IAE3B,iBAAO,CAAC,wBAAwB,YAAuB,4BAAa,CAAC,CAAC;AACxE,CAAC,CAAC;AAPW,QAAA,mBAAmB,uBAO9B","file":"polygon.js","sourcesContent":["import { Factory } from './../../core/factory';\n/* eslint-disable no-duplicate-imports */\nimport type { IPolygonMarkSpec } from '../../typings/visual';\nimport { BasePolygonMark } from './base-polygon';\nimport type { IMarkStyle, IPolygonMark } from '../interface';\nimport { MarkTypeEnum } from '../interface/type';\nimport { registerPolygonAnimation } from '../../animation/config';\nimport { registerPolygon } from '@visactor/vrender-kits/register/register-polygon';\nimport { registerShadowRoot } from '@visactor/vrender-kits/register/register-shadowRoot';\nimport { createPolygon } from '@visactor/vrender-core';\n\nexport class PolygonMark extends BasePolygonMark<IPolygonMarkSpec> implements IPolygonMark {\n static readonly type = MarkTypeEnum.polygon;\n readonly type = PolygonMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IPolygonMarkSpec> = {\n ...super._getDefaultStyle(),\n lineWidth: 0\n };\n return defaultStyle;\n }\n}\n\nexport const registerPolygonMark = () => {\n Factory.registerMark(PolygonMark.type, PolygonMark);\n registerShadowRoot();\n registerPolygon();\n registerPolygonAnimation();\n\n Factory.registerGraphicComponent(MarkTypeEnum.polygon, createPolygon);\n};\n"]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.registerRippleMark = exports.RippleMark = void 0;
6
6
 
7
- const factory_1 = require("./../core/factory"), glyph_1 = require("./glyph"), vrender_core_1 = require("@visactor/vrender-core"), vutils_1 = require("@visactor/vutils"), vrender_kits_1 = require("@visactor/vrender-kits");
7
+ const factory_1 = require("./../core/factory"), glyph_1 = require("./glyph"), vrender_core_1 = require("@visactor/vrender-core"), vutils_1 = require("@visactor/vutils"), register_symbol_1 = require("@visactor/vrender-kits/register/register-symbol");
8
8
 
9
9
  class RippleMark extends glyph_1.GlyphMark {
10
10
  constructor() {
@@ -58,7 +58,7 @@ class RippleMark extends glyph_1.GlyphMark {
58
58
  exports.RippleMark = RippleMark, RippleMark.type = "ripple";
59
59
 
60
60
  const registerRippleMark = () => {
61
- (0, glyph_1.registerGlyphMark)(), (0, vrender_kits_1.registerSymbol)(), factory_1.Factory.registerMark(RippleMark.type, RippleMark),
61
+ (0, glyph_1.registerGlyphMark)(), (0, register_symbol_1.registerSymbol)(), factory_1.Factory.registerMark(RippleMark.type, RippleMark),
62
62
  factory_1.Factory.registerGraphicComponent("symbol", (attrs => (0, vrender_core_1.createSymbol)(attrs)));
63
63
  };
64
64
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/ripple.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAK5C,mCAAuD;AAEvD,yDAAiG;AACjG,6CAAyC;AACzC,yDAAwD;AAExD,MAAa,UAAW,SAAQ,iBAA0B;IAA1D;;QAEW,SAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QAYtB,cAAS,GAAG;YACpB,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,iBAAiB,EAAE;oBACjB,WAAW,EAAE,IAAI;iBAClB;aACF;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,iBAAiB,EAAE;oBACjB,WAAW,EAAE,GAAG;iBACjB;aACF;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,iBAAiB,EAAE;oBACjB,WAAW,EAAE,IAAI;iBAClB;aACF;SACF,CAAC;QAEQ,sBAAiB,GAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAEjD,qBAAgB,GAAG,CAAC,UAAe,EAAE,KAAY,EAAE,CAAS,EAAE,EAAE;YACxE,MAAM,EAAE,MAAM,GAAI,CAAC,CAAC,SAAiB,CAAC,MAAM,EAAE,IAAI,GAAI,CAAC,CAAC,SAAiB,CAAC,IAAI,EAAE,GAAG,UAAU,CAAC;YAC9F,MAAM,CAAC,GAAG,IAAA,cAAK,EAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAC9B,MAAM,UAAU,GAAG,IAAI,GAAG,GAAG,CAAC;YAE9B,OAAO;gBACL,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,UAAU,GAAG,CAAC,EAAE,WAAW,EAAE,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE;gBACtE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE;gBAC3E,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE;aAC7E,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;IA5CW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,EACJ,MAAM,EAAE,CAAC,GACV,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AAZH,gCAgDC;AA/CiB,eAAI,YAAuB;AAiDtC,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,IAAA,yBAAiB,GAAE,CAAC;IACpB,IAAA,6BAAc,GAAE,CAAC;IACjB,iBAAO,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAClD,iBAAO,CAAC,wBAAwB,CAAC,QAAQ,EAAE,CAAC,KAA8B,EAAE,EAAE,CAAC,IAAA,2BAAY,EAAC,KAAK,CAAC,CAAC,CAAC;AACtG,CAAC,CAAC;AALW,QAAA,kBAAkB,sBAK7B","file":"ripple.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { IRippleMarkSpec } from '../typings/visual';\nimport type { IMarkStyle, IRippleMark } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { GlyphMark, registerGlyphMark } from './glyph';\nimport type { Datum } from '../typings/common';\nimport { createSymbol, type IGlyph, type ISymbolGraphicAttribute } from '@visactor/vrender-core';\nimport { clamp } from '@visactor/vutils';\nimport { registerSymbol } from '@visactor/vrender-kits';\n\nexport class RippleMark extends GlyphMark<IRippleMarkSpec> implements IRippleMark {\n static readonly type = MarkTypeEnum.ripple;\n readonly type = RippleMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IRippleMarkSpec> = {\n ...super._getDefaultStyle(),\n x: 0,\n y: 0,\n ripple: 0\n };\n return defaultStyle;\n }\n\n protected _subMarks = {\n ripple0: {\n type: 'symbol',\n defaultAttributes: {\n fillOpacity: 0.75\n }\n },\n ripple1: {\n type: 'symbol',\n defaultAttributes: {\n fillOpacity: 0.5\n }\n },\n ripple2: {\n type: 'symbol',\n defaultAttributes: {\n fillOpacity: 0.25\n }\n }\n };\n\n protected _positionChannels: string[] = ['ripple', 'size'];\n\n protected _positionEncoder = (glyphAttrs: any, datum: Datum, g: IGlyph) => {\n const { ripple = (g.attribute as any).ripple, size = (g.attribute as any).size } = glyphAttrs;\n const r = clamp(ripple, 0, 1);\n const rippleSize = size * 0.5;\n\n return {\n ripple0: { size: size + rippleSize * r, fillOpacity: 0.75 - r * 0.25 },\n ripple1: { size: size + rippleSize * (1 + r), fillOpacity: 0.5 - r * 0.25 },\n ripple2: { size: size + rippleSize * (2 + r), fillOpacity: 0.25 - r * 0.25 }\n };\n };\n}\n\nexport const registerRippleMark = () => {\n registerGlyphMark();\n registerSymbol();\n Factory.registerMark(RippleMark.type, RippleMark);\n Factory.registerGraphicComponent('symbol', (attrs: ISymbolGraphicAttribute) => createSymbol(attrs));\n};\n"]}
1
+ {"version":3,"sources":["../src/mark/ripple.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAK5C,mCAAuD;AAEvD,yDAAiG;AACjG,6CAAyC;AACzC,qFAAiF;AAEjF,MAAa,UAAW,SAAQ,iBAA0B;IAA1D;;QAEW,SAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QAYtB,cAAS,GAAG;YACpB,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,iBAAiB,EAAE;oBACjB,WAAW,EAAE,IAAI;iBAClB;aACF;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,iBAAiB,EAAE;oBACjB,WAAW,EAAE,GAAG;iBACjB;aACF;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,iBAAiB,EAAE;oBACjB,WAAW,EAAE,IAAI;iBAClB;aACF;SACF,CAAC;QAEQ,sBAAiB,GAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAEjD,qBAAgB,GAAG,CAAC,UAAe,EAAE,KAAY,EAAE,CAAS,EAAE,EAAE;YACxE,MAAM,EAAE,MAAM,GAAI,CAAC,CAAC,SAAiB,CAAC,MAAM,EAAE,IAAI,GAAI,CAAC,CAAC,SAAiB,CAAC,IAAI,EAAE,GAAG,UAAU,CAAC;YAC9F,MAAM,CAAC,GAAG,IAAA,cAAK,EAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAC9B,MAAM,UAAU,GAAG,IAAI,GAAG,GAAG,CAAC;YAE9B,OAAO;gBACL,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,UAAU,GAAG,CAAC,EAAE,WAAW,EAAE,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE;gBACtE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE;gBAC3E,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE;aAC7E,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;IA5CW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,EACJ,MAAM,EAAE,CAAC,GACV,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AAZH,gCAgDC;AA/CiB,eAAI,YAAuB;AAiDtC,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,IAAA,yBAAiB,GAAE,CAAC;IACpB,IAAA,gCAAc,GAAE,CAAC;IACjB,iBAAO,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAClD,iBAAO,CAAC,wBAAwB,CAAC,QAAQ,EAAE,CAAC,KAA8B,EAAE,EAAE,CAAC,IAAA,2BAAY,EAAC,KAAK,CAAC,CAAC,CAAC;AACtG,CAAC,CAAC;AALW,QAAA,kBAAkB,sBAK7B","file":"ripple.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { IRippleMarkSpec } from '../typings/visual';\nimport type { IMarkStyle, IRippleMark } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { GlyphMark, registerGlyphMark } from './glyph';\nimport type { Datum } from '../typings/common';\nimport { createSymbol, type IGlyph, type ISymbolGraphicAttribute } from '@visactor/vrender-core';\nimport { clamp } from '@visactor/vutils';\nimport { registerSymbol } from '@visactor/vrender-kits/register/register-symbol';\n\nexport class RippleMark extends GlyphMark<IRippleMarkSpec> implements IRippleMark {\n static readonly type = MarkTypeEnum.ripple;\n readonly type = RippleMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IRippleMarkSpec> = {\n ...super._getDefaultStyle(),\n x: 0,\n y: 0,\n ripple: 0\n };\n return defaultStyle;\n }\n\n protected _subMarks = {\n ripple0: {\n type: 'symbol',\n defaultAttributes: {\n fillOpacity: 0.75\n }\n },\n ripple1: {\n type: 'symbol',\n defaultAttributes: {\n fillOpacity: 0.5\n }\n },\n ripple2: {\n type: 'symbol',\n defaultAttributes: {\n fillOpacity: 0.25\n }\n }\n };\n\n protected _positionChannels: string[] = ['ripple', 'size'];\n\n protected _positionEncoder = (glyphAttrs: any, datum: Datum, g: IGlyph) => {\n const { ripple = (g.attribute as any).ripple, size = (g.attribute as any).size } = glyphAttrs;\n const r = clamp(ripple, 0, 1);\n const rippleSize = size * 0.5;\n\n return {\n ripple0: { size: size + rippleSize * r, fillOpacity: 0.75 - r * 0.25 },\n ripple1: { size: size + rippleSize * (1 + r), fillOpacity: 0.5 - r * 0.25 },\n ripple2: { size: size + rippleSize * (2 + r), fillOpacity: 0.25 - r * 0.25 }\n };\n };\n}\n\nexport const registerRippleMark = () => {\n registerGlyphMark();\n registerSymbol();\n Factory.registerMark(RippleMark.type, RippleMark);\n Factory.registerGraphicComponent('symbol', (attrs: ISymbolGraphicAttribute) => createSymbol(attrs));\n};\n"]}