@visactor/vchart 1.5.1-alpha.3 → 1.5.1-alpha.5

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 (189) hide show
  1. package/build/es5/index.js +2 -2
  2. package/build/index.js +69544 -95353
  3. package/build/index.min.js +2 -2
  4. package/build/tsconfig.tsbuildinfo +1 -1
  5. package/cjs/chart/base-chart.js.map +1 -1
  6. package/cjs/compile/compiler.d.ts +0 -1
  7. package/cjs/compile/compiler.js +2 -5
  8. package/cjs/compile/compiler.js.map +1 -1
  9. package/cjs/compile/util.js +1 -2
  10. package/cjs/component/brush/brush.d.ts +1 -0
  11. package/cjs/component/brush/brush.js +23 -16
  12. package/cjs/component/brush/brush.js.map +1 -1
  13. package/cjs/component/index.js +2 -1
  14. package/cjs/component/legend/discrete/legend.js +12 -9
  15. package/cjs/component/legend/discrete/legend.js.map +1 -1
  16. package/cjs/component/tooltip/handler/utils/common.js +2 -2
  17. package/cjs/component/tooltip/handler/utils/common.js.map +1 -1
  18. package/cjs/core/index.d.ts +1 -1
  19. package/cjs/core/index.js +1 -1
  20. package/cjs/core/index.js.map +1 -1
  21. package/cjs/series/area/area.d.ts +4 -1
  22. package/cjs/series/area/area.js +11 -0
  23. package/cjs/series/area/area.js.map +1 -1
  24. package/cjs/series/bar/bar.d.ts +2 -0
  25. package/cjs/series/bar/bar.js +3 -0
  26. package/cjs/series/bar/bar.js.map +1 -1
  27. package/cjs/series/base/base-series.d.ts +1 -0
  28. package/cjs/series/base/base-series.js +1 -1
  29. package/cjs/series/base/base-series.js.map +1 -1
  30. package/cjs/series/box-plot/box-plot.d.ts +2 -0
  31. package/cjs/series/box-plot/box-plot.js +3 -0
  32. package/cjs/series/box-plot/box-plot.js.map +1 -1
  33. package/cjs/series/circle-packing/circle-packing.d.ts +2 -0
  34. package/cjs/series/circle-packing/circle-packing.js +3 -0
  35. package/cjs/series/circle-packing/circle-packing.js.map +1 -1
  36. package/cjs/series/dot/dot.d.ts +1 -0
  37. package/cjs/series/dot/dot.js +3 -0
  38. package/cjs/series/dot/dot.js.map +1 -1
  39. package/cjs/series/funnel/funnel.d.ts +2 -0
  40. package/cjs/series/funnel/funnel.js +3 -0
  41. package/cjs/series/funnel/funnel.js.map +1 -1
  42. package/cjs/series/gauge/gauge-pointer.d.ts +2 -0
  43. package/cjs/series/gauge/gauge-pointer.js +3 -0
  44. package/cjs/series/gauge/gauge-pointer.js.map +1 -1
  45. package/cjs/series/gauge/gauge.d.ts +4 -0
  46. package/cjs/series/gauge/gauge.js +13 -4
  47. package/cjs/series/gauge/gauge.js.map +1 -1
  48. package/cjs/series/geo/geo.d.ts +2 -0
  49. package/cjs/series/geo/geo.js +3 -0
  50. package/cjs/series/geo/geo.js.map +1 -1
  51. package/cjs/series/heatmap/heatmap.d.ts +2 -0
  52. package/cjs/series/heatmap/heatmap.js +3 -0
  53. package/cjs/series/heatmap/heatmap.js.map +1 -1
  54. package/cjs/series/interface/series.d.ts +1 -0
  55. package/cjs/series/interface/series.js.map +1 -1
  56. package/cjs/series/line/line.d.ts +2 -0
  57. package/cjs/series/line/line.js +4 -1
  58. package/cjs/series/line/line.js.map +1 -1
  59. package/cjs/series/link/link.d.ts +1 -0
  60. package/cjs/series/link/link.js +3 -0
  61. package/cjs/series/link/link.js.map +1 -1
  62. package/cjs/series/map/map.d.ts +2 -0
  63. package/cjs/series/map/map.js +3 -0
  64. package/cjs/series/map/map.js.map +1 -1
  65. package/cjs/series/pie/pie.d.ts +1 -0
  66. package/cjs/series/pie/pie.js +3 -0
  67. package/cjs/series/pie/pie.js.map +1 -1
  68. package/cjs/series/progress/circular/circular.d.ts +2 -0
  69. package/cjs/series/progress/circular/circular.js +3 -0
  70. package/cjs/series/progress/circular/circular.js.map +1 -1
  71. package/cjs/series/progress/linear/linear.d.ts +2 -0
  72. package/cjs/series/progress/linear/linear.js +3 -0
  73. package/cjs/series/progress/linear/linear.js.map +1 -1
  74. package/cjs/series/radar/radar.d.ts +4 -2
  75. package/cjs/series/radar/radar.js +11 -0
  76. package/cjs/series/radar/radar.js.map +1 -1
  77. package/cjs/series/rose/rose.d.ts +2 -0
  78. package/cjs/series/rose/rose.js +3 -0
  79. package/cjs/series/rose/rose.js.map +1 -1
  80. package/cjs/series/sankey/sankey.d.ts +2 -0
  81. package/cjs/series/sankey/sankey.js +6 -18
  82. package/cjs/series/sankey/sankey.js.map +1 -1
  83. package/cjs/series/scatter/scatter.d.ts +2 -0
  84. package/cjs/series/scatter/scatter.js +3 -0
  85. package/cjs/series/scatter/scatter.js.map +1 -1
  86. package/cjs/series/sunburst/sunburst.d.ts +2 -0
  87. package/cjs/series/sunburst/sunburst.js +3 -0
  88. package/cjs/series/sunburst/sunburst.js.map +1 -1
  89. package/cjs/series/treemap/treemap.d.ts +2 -0
  90. package/cjs/series/treemap/treemap.js +3 -0
  91. package/cjs/series/treemap/treemap.js.map +1 -1
  92. package/cjs/series/word-cloud/base.d.ts +2 -0
  93. package/cjs/series/word-cloud/base.js +3 -0
  94. package/cjs/series/word-cloud/base.js.map +1 -1
  95. package/cjs/theme/builtin/common/series/gauge.js +1 -1
  96. package/cjs/theme/builtin/common/series/gauge.js.map +1 -1
  97. package/esm/chart/base-chart.js.map +1 -1
  98. package/esm/compile/compiler.d.ts +0 -1
  99. package/esm/compile/compiler.js +2 -5
  100. package/esm/compile/compiler.js.map +1 -1
  101. package/esm/compile/util.js +1 -2
  102. package/esm/component/brush/brush.d.ts +1 -0
  103. package/esm/component/brush/brush.js +25 -16
  104. package/esm/component/brush/brush.js.map +1 -1
  105. package/esm/component/index.js +2 -1
  106. package/esm/component/legend/discrete/legend.js +12 -9
  107. package/esm/component/legend/discrete/legend.js.map +1 -1
  108. package/esm/component/tooltip/handler/utils/common.js +1 -1
  109. package/esm/component/tooltip/handler/utils/common.js.map +1 -1
  110. package/esm/core/index.d.ts +1 -1
  111. package/esm/core/index.js +1 -1
  112. package/esm/core/index.js.map +1 -1
  113. package/esm/series/area/area.d.ts +4 -1
  114. package/esm/series/area/area.js +12 -1
  115. package/esm/series/area/area.js.map +1 -1
  116. package/esm/series/bar/bar.d.ts +2 -0
  117. package/esm/series/bar/bar.js +3 -0
  118. package/esm/series/bar/bar.js.map +1 -1
  119. package/esm/series/base/base-series.d.ts +1 -0
  120. package/esm/series/base/base-series.js +1 -1
  121. package/esm/series/base/base-series.js.map +1 -1
  122. package/esm/series/box-plot/box-plot.d.ts +2 -0
  123. package/esm/series/box-plot/box-plot.js +3 -0
  124. package/esm/series/box-plot/box-plot.js.map +1 -1
  125. package/esm/series/circle-packing/circle-packing.d.ts +2 -0
  126. package/esm/series/circle-packing/circle-packing.js +3 -0
  127. package/esm/series/circle-packing/circle-packing.js.map +1 -1
  128. package/esm/series/dot/dot.d.ts +1 -0
  129. package/esm/series/dot/dot.js +3 -0
  130. package/esm/series/dot/dot.js.map +1 -1
  131. package/esm/series/funnel/funnel.d.ts +2 -0
  132. package/esm/series/funnel/funnel.js +3 -0
  133. package/esm/series/funnel/funnel.js.map +1 -1
  134. package/esm/series/gauge/gauge-pointer.d.ts +2 -0
  135. package/esm/series/gauge/gauge-pointer.js +3 -0
  136. package/esm/series/gauge/gauge-pointer.js.map +1 -1
  137. package/esm/series/gauge/gauge.d.ts +4 -0
  138. package/esm/series/gauge/gauge.js +13 -4
  139. package/esm/series/gauge/gauge.js.map +1 -1
  140. package/esm/series/geo/geo.d.ts +2 -0
  141. package/esm/series/geo/geo.js +3 -0
  142. package/esm/series/geo/geo.js.map +1 -1
  143. package/esm/series/heatmap/heatmap.d.ts +2 -0
  144. package/esm/series/heatmap/heatmap.js +3 -0
  145. package/esm/series/heatmap/heatmap.js.map +1 -1
  146. package/esm/series/interface/series.d.ts +1 -0
  147. package/esm/series/interface/series.js.map +1 -1
  148. package/esm/series/line/line.d.ts +2 -0
  149. package/esm/series/line/line.js +4 -1
  150. package/esm/series/line/line.js.map +1 -1
  151. package/esm/series/link/link.d.ts +1 -0
  152. package/esm/series/link/link.js +3 -0
  153. package/esm/series/link/link.js.map +1 -1
  154. package/esm/series/map/map.d.ts +2 -0
  155. package/esm/series/map/map.js +3 -0
  156. package/esm/series/map/map.js.map +1 -1
  157. package/esm/series/pie/pie.d.ts +1 -0
  158. package/esm/series/pie/pie.js +3 -0
  159. package/esm/series/pie/pie.js.map +1 -1
  160. package/esm/series/progress/circular/circular.d.ts +2 -0
  161. package/esm/series/progress/circular/circular.js +3 -0
  162. package/esm/series/progress/circular/circular.js.map +1 -1
  163. package/esm/series/progress/linear/linear.d.ts +2 -0
  164. package/esm/series/progress/linear/linear.js +3 -0
  165. package/esm/series/progress/linear/linear.js.map +1 -1
  166. package/esm/series/radar/radar.d.ts +4 -2
  167. package/esm/series/radar/radar.js +12 -1
  168. package/esm/series/radar/radar.js.map +1 -1
  169. package/esm/series/rose/rose.d.ts +2 -0
  170. package/esm/series/rose/rose.js +3 -0
  171. package/esm/series/rose/rose.js.map +1 -1
  172. package/esm/series/sankey/sankey.d.ts +2 -0
  173. package/esm/series/sankey/sankey.js +6 -17
  174. package/esm/series/sankey/sankey.js.map +1 -1
  175. package/esm/series/scatter/scatter.d.ts +2 -0
  176. package/esm/series/scatter/scatter.js +3 -0
  177. package/esm/series/scatter/scatter.js.map +1 -1
  178. package/esm/series/sunburst/sunburst.d.ts +2 -0
  179. package/esm/series/sunburst/sunburst.js +3 -0
  180. package/esm/series/sunburst/sunburst.js.map +1 -1
  181. package/esm/series/treemap/treemap.d.ts +2 -0
  182. package/esm/series/treemap/treemap.js +3 -0
  183. package/esm/series/treemap/treemap.js.map +1 -1
  184. package/esm/series/word-cloud/base.d.ts +2 -0
  185. package/esm/series/word-cloud/base.js +3 -0
  186. package/esm/series/word-cloud/base.js.map +1 -1
  187. package/esm/theme/builtin/common/series/gauge.js +1 -1
  188. package/esm/theme/builtin/common/series/gauge.js.map +1 -1
  189. package/package.json +17 -17
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/progress/linear/linear.ts"],"names":[],"mappings":"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","file":"linear.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { CartesianSeries } from '../../cartesian/cartesian';\nimport type { SeriesMarkMap } from '../../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../../interface/type';\nimport type { IRectMark } from '../../../mark/rect';\nimport type { IGroupMark } from '../../../mark/group';\nimport { valueInScaleRange } from '../../../util';\nimport { AttributeLevel } from '../../../constant';\nimport type { Datum, Maybe } from '../../../typings';\nimport { animationConfig, userAnimationConfig } from '../../../animation/utils';\nimport {\n registerLinearProgressAnimation,\n type ILinearProgressAnimationParams,\n type LinearProgressAppearPreset\n} from './animation';\nimport type { ILinearProgressSeriesSpec, ILinearProgressSeriesTheme } from './interface';\nimport { LinearProgressSeriesTooltipHelper } from './tooltip-helper';\nimport type { IStateAnimateSpec } from '../../../animation/spec';\nimport { RectMark } from '../../../mark/rect';\nimport { createRect } from '@visactor/vrender-core';\nimport { linearProgressSeriesMark } from './constant';\nimport { Factory } from '../../../core/factory';\nimport { registerFadeInOutAnimation } from '../../../animation/config';\n\nexport class LinearProgressSeries<\n T extends ILinearProgressSeriesSpec = ILinearProgressSeriesSpec\n> extends CartesianSeries<T> {\n static readonly type: string = SeriesTypeEnum.linearProgress;\n type = SeriesTypeEnum.linearProgress;\n\n static readonly mark: SeriesMarkMap = linearProgressSeriesMark;\n\n protected declare _theme: Maybe<ILinearProgressSeriesTheme>;\n\n private _progressMark: IRectMark | null = null;\n private _trackMark: IRectMark | null = null;\n private _progressGroupMark: IGroupMark | null = null;\n\n /**\n * 为了解决在圆角情况下,在数值较小时,rect绘图效果不好的问题\n * 1. trackMark的所有样式设置在groupMark上,定位也依靠这个groupMark\n * 2. progressMark长度固定为整个进度条长度,通过x的偏移体现当前进度\n *\n * 为了解决在配置tooltip时,trackMark设置为GroupMark无法绑定数据的问题,\n * 1. 原本的设置为groupMark的trackMark更名为GroupMark。用来保证在clip效果下progressMark小数据值的绘图效果。\n * 1. 增加一层设置为rectMark的trackMark,形状大小与GroupMark相同\n *\n * 为了解决成组\n * 给groupMark的path字段赋值为一个rect数组 也就是一个groupMark具有多个以背景条为轮廓的rect的path\n * trackMark与progressMark使用绝对定位\n */\n initMark(): void {\n this._initProgressGroupMark();\n this._initTrackMark();\n this._initProgressMark();\n }\n\n initMarkStyle(): void {\n this._initProgressGroupMarkStyle();\n this._initTrackMarkStyle();\n this._initProgressMarkStyle();\n }\n\n private _initProgressMark() {\n this._progressMark = this._createMark(LinearProgressSeries.mark.progress, {\n isSeriesMark: true,\n parent: this._progressGroupMark\n }) as IRectMark;\n return this._progressMark;\n }\n\n private _initProgressMarkStyle() {\n const progressMark = this._progressMark;\n if (progressMark) {\n if (this._spec.direction === 'vertical') {\n const leftPadding = this._spec.progress?.leftPadding ?? 0;\n const rightPadding = this._spec.progress?.rightPadding ?? 0;\n\n this.setMarkStyle(\n progressMark,\n {\n x: (datum: Datum) => {\n return (\n valueInScaleRange(this.dataToPositionX(datum), this._xAxisHelper?.getScale?.(0)) -\n this._spec.bandWidth / 2 +\n leftPadding\n );\n },\n y: (datum: Datum) => valueInScaleRange(this.dataToPositionY(datum), this._yAxisHelper?.getScale?.(0)),\n height: () => this._yAxisHelper?.dataToPosition([0], { bandPosition: this._bandPosition }),\n width: this._spec.bandWidth - leftPadding - rightPadding,\n cornerRadius: this._spec.cornerRadius,\n fill: this.getColorAttribute()\n },\n 'normal',\n AttributeLevel.Series\n );\n } else {\n const topPadding = this._spec.progress?.topPadding ?? 0;\n const bottomPadding = this._spec.progress?.bottomPadding ?? 0;\n\n this.setMarkStyle(\n progressMark,\n {\n x: (datum: Datum) =>\n valueInScaleRange(this.dataToPositionX(datum), this._xAxisHelper?.getScale?.(0)) -\n this._xAxisHelper.dataToPosition([1], { bandPosition: this._bandPosition }),\n y: (datum: Datum) => {\n return (\n valueInScaleRange(this.dataToPositionY(datum), this._yAxisHelper?.getScale?.(0)) -\n this._spec.bandWidth / 2 +\n topPadding\n );\n },\n height: this._spec.bandWidth - topPadding - bottomPadding,\n width: () => this._xAxisHelper?.dataToPosition([1], { bandPosition: this._bandPosition }),\n cornerRadius: this._spec.cornerRadius,\n fill: this.getColorAttribute()\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n this._trigger.registerMark(progressMark);\n this._tooltipHelper?.activeTriggerSet.mark.add(progressMark);\n }\n }\n\n private _initTrackMark() {\n this._trackMark = this._createMark(LinearProgressSeries.mark.track, {\n parent: this._progressGroupMark\n }) as IRectMark;\n return this._trackMark;\n }\n\n private _initTrackMarkStyle() {\n const trackMark = this._trackMark;\n if (trackMark) {\n if (this._spec.direction === 'vertical') {\n this.setMarkStyle(\n trackMark,\n {\n x: (datum: any) => {\n return (\n valueInScaleRange(this.dataToPositionX(datum), this._xAxisHelper?.getScale?.(0)) -\n this._spec.bandWidth / 2\n );\n },\n y: 0,\n width: this._spec.bandWidth,\n height: () => this._scaleY.range()[0],\n cornerRadius: this._spec.cornerRadius\n },\n 'normal',\n AttributeLevel.Series\n );\n } else {\n this.setMarkStyle(\n trackMark,\n {\n x: 0,\n y: (datum: any) => {\n return (\n valueInScaleRange(this.dataToPositionY(datum), this._yAxisHelper?.getScale?.(0)) -\n this._spec.bandWidth / 2\n );\n },\n height: this._spec.bandWidth,\n width: () => this._scaleX.range()[1],\n cornerRadius: this._spec.cornerRadius\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n this._trigger.registerMark(trackMark);\n this._tooltipHelper?.activeTriggerSet.mark.add(trackMark);\n }\n }\n\n private _initProgressGroupMark() {\n // FIXME: disable group mark layout to prevent reevaluate after layout end\n this._progressGroupMark = this._createMark(LinearProgressSeries.mark.group, {\n skipBeforeLayouted: false\n }) as IGroupMark;\n return this._progressGroupMark;\n }\n\n private _initProgressGroupMarkStyle() {\n const groupMark = this._progressGroupMark;\n groupMark.setZIndex(this.layoutZIndex);\n groupMark.created();\n\n this.setMarkStyle(\n groupMark,\n {\n clip: true,\n x: 0,\n y: 0,\n path: () => {\n const rectPaths: any[] = [];\n this._rawData?.rawData.forEach((datum: any, index: number) => {\n if (this._spec.direction === 'vertical') {\n const x =\n valueInScaleRange(this.dataToPositionX(datum), this._xAxisHelper?.getScale?.(0)) -\n this._spec.bandWidth / 2;\n const height = this._scaleY.range()[0];\n\n rectPaths.push(\n createRect({\n x: x,\n y: 0,\n height: height,\n width: this._spec.bandWidth,\n cornerRadius: this._spec.cornerRadius,\n fill: true\n })\n );\n } else {\n const y =\n valueInScaleRange(this.dataToPositionY(datum), this._yAxisHelper?.getScale?.(0)) -\n this._spec.bandWidth / 2;\n const width = this._scaleX.range()[1];\n\n rectPaths.push(\n createRect({\n x: 0,\n y: y,\n height: this._spec.bandWidth,\n width: width,\n cornerRadius: this._spec.cornerRadius,\n fill: true\n })\n );\n }\n });\n return rectPaths;\n }\n },\n 'normal',\n AttributeLevel.Series\n );\n this._progressGroupMark.setInteractive(false);\n }\n\n initAnimation() {\n const animationParams: ILinearProgressAnimationParams = {\n direction: this.direction\n };\n\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<LinearProgressAppearPreset>)?.preset;\n\n this._progressMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('linearProgress')?.(animationParams, appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.progress, this._spec)\n )\n );\n\n this._trackMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('fadeInOut')?.(),\n userAnimationConfig(SeriesMarkNameEnum.track, this._spec)\n )\n );\n }\n\n protected initTooltip() {\n this._tooltipHelper = new LinearProgressSeriesTooltipHelper(this);\n }\n}\n\nexport const registerLinearProgressSeries = () => {\n Factory.registerMark(RectMark.type, RectMark);\n Factory.registerSeries(LinearProgressSeries.type, LinearProgressSeries);\n registerLinearProgressAnimation();\n registerFadeInOutAnimation();\n};\n"]}
1
+ {"version":3,"sources":["../src/series/progress/linear/linear.ts"],"names":[],"mappings":"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","file":"linear.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { CartesianSeries } from '../../cartesian/cartesian';\nimport type { SeriesMarkMap } from '../../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../../interface/type';\nimport type { IRectMark } from '../../../mark/rect';\nimport type { IGroupMark } from '../../../mark/group';\nimport { valueInScaleRange } from '../../../util';\nimport { AttributeLevel } from '../../../constant';\nimport type { Datum, Maybe } from '../../../typings';\nimport { animationConfig, userAnimationConfig } from '../../../animation/utils';\nimport {\n registerLinearProgressAnimation,\n type ILinearProgressAnimationParams,\n type LinearProgressAppearPreset\n} from './animation';\nimport type { ILinearProgressSeriesSpec, ILinearProgressSeriesTheme } from './interface';\nimport { LinearProgressSeriesTooltipHelper } from './tooltip-helper';\nimport type { IStateAnimateSpec } from '../../../animation/spec';\nimport { RectMark } from '../../../mark/rect';\nimport { createRect } from '@visactor/vrender-core';\nimport { linearProgressSeriesMark } from './constant';\nimport { Factory } from '../../../core/factory';\nimport { registerFadeInOutAnimation } from '../../../animation/config';\nimport type { IMark } from '../../../mark/interface';\n\nexport class LinearProgressSeries<\n T extends ILinearProgressSeriesSpec = ILinearProgressSeriesSpec\n> extends CartesianSeries<T> {\n static readonly type: string = SeriesTypeEnum.linearProgress;\n type = SeriesTypeEnum.linearProgress;\n\n static readonly mark: SeriesMarkMap = linearProgressSeriesMark;\n\n protected declare _theme: Maybe<ILinearProgressSeriesTheme>;\n\n private _progressMark: IRectMark | null = null;\n private _trackMark: IRectMark | null = null;\n private _progressGroupMark: IGroupMark | null = null;\n\n /**\n * 为了解决在圆角情况下,在数值较小时,rect绘图效果不好的问题\n * 1. trackMark的所有样式设置在groupMark上,定位也依靠这个groupMark\n * 2. progressMark长度固定为整个进度条长度,通过x的偏移体现当前进度\n *\n * 为了解决在配置tooltip时,trackMark设置为GroupMark无法绑定数据的问题,\n * 1. 原本的设置为groupMark的trackMark更名为GroupMark。用来保证在clip效果下progressMark小数据值的绘图效果。\n * 1. 增加一层设置为rectMark的trackMark,形状大小与GroupMark相同\n *\n * 为了解决成组\n * 给groupMark的path字段赋值为一个rect数组 也就是一个groupMark具有多个以背景条为轮廓的rect的path\n * trackMark与progressMark使用绝对定位\n */\n initMark(): void {\n this._initProgressGroupMark();\n this._initTrackMark();\n this._initProgressMark();\n }\n\n initMarkStyle(): void {\n this._initProgressGroupMarkStyle();\n this._initTrackMarkStyle();\n this._initProgressMarkStyle();\n }\n\n private _initProgressMark() {\n this._progressMark = this._createMark(LinearProgressSeries.mark.progress, {\n isSeriesMark: true,\n parent: this._progressGroupMark\n }) as IRectMark;\n return this._progressMark;\n }\n\n private _initProgressMarkStyle() {\n const progressMark = this._progressMark;\n if (progressMark) {\n if (this._spec.direction === 'vertical') {\n const leftPadding = this._spec.progress?.leftPadding ?? 0;\n const rightPadding = this._spec.progress?.rightPadding ?? 0;\n\n this.setMarkStyle(\n progressMark,\n {\n x: (datum: Datum) => {\n return (\n valueInScaleRange(this.dataToPositionX(datum), this._xAxisHelper?.getScale?.(0)) -\n this._spec.bandWidth / 2 +\n leftPadding\n );\n },\n y: (datum: Datum) => valueInScaleRange(this.dataToPositionY(datum), this._yAxisHelper?.getScale?.(0)),\n height: () => this._yAxisHelper?.dataToPosition([0], { bandPosition: this._bandPosition }),\n width: this._spec.bandWidth - leftPadding - rightPadding,\n cornerRadius: this._spec.cornerRadius,\n fill: this.getColorAttribute()\n },\n 'normal',\n AttributeLevel.Series\n );\n } else {\n const topPadding = this._spec.progress?.topPadding ?? 0;\n const bottomPadding = this._spec.progress?.bottomPadding ?? 0;\n\n this.setMarkStyle(\n progressMark,\n {\n x: (datum: Datum) =>\n valueInScaleRange(this.dataToPositionX(datum), this._xAxisHelper?.getScale?.(0)) -\n this._xAxisHelper.dataToPosition([1], { bandPosition: this._bandPosition }),\n y: (datum: Datum) => {\n return (\n valueInScaleRange(this.dataToPositionY(datum), this._yAxisHelper?.getScale?.(0)) -\n this._spec.bandWidth / 2 +\n topPadding\n );\n },\n height: this._spec.bandWidth - topPadding - bottomPadding,\n width: () => this._xAxisHelper?.dataToPosition([1], { bandPosition: this._bandPosition }),\n cornerRadius: this._spec.cornerRadius,\n fill: this.getColorAttribute()\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n this._trigger.registerMark(progressMark);\n this._tooltipHelper?.activeTriggerSet.mark.add(progressMark);\n }\n }\n\n private _initTrackMark() {\n this._trackMark = this._createMark(LinearProgressSeries.mark.track, {\n parent: this._progressGroupMark\n }) as IRectMark;\n return this._trackMark;\n }\n\n private _initTrackMarkStyle() {\n const trackMark = this._trackMark;\n if (trackMark) {\n if (this._spec.direction === 'vertical') {\n this.setMarkStyle(\n trackMark,\n {\n x: (datum: any) => {\n return (\n valueInScaleRange(this.dataToPositionX(datum), this._xAxisHelper?.getScale?.(0)) -\n this._spec.bandWidth / 2\n );\n },\n y: 0,\n width: this._spec.bandWidth,\n height: () => this._scaleY.range()[0],\n cornerRadius: this._spec.cornerRadius\n },\n 'normal',\n AttributeLevel.Series\n );\n } else {\n this.setMarkStyle(\n trackMark,\n {\n x: 0,\n y: (datum: any) => {\n return (\n valueInScaleRange(this.dataToPositionY(datum), this._yAxisHelper?.getScale?.(0)) -\n this._spec.bandWidth / 2\n );\n },\n height: this._spec.bandWidth,\n width: () => this._scaleX.range()[1],\n cornerRadius: this._spec.cornerRadius\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n this._trigger.registerMark(trackMark);\n this._tooltipHelper?.activeTriggerSet.mark.add(trackMark);\n }\n }\n\n private _initProgressGroupMark() {\n // FIXME: disable group mark layout to prevent reevaluate after layout end\n this._progressGroupMark = this._createMark(LinearProgressSeries.mark.group, {\n skipBeforeLayouted: false\n }) as IGroupMark;\n return this._progressGroupMark;\n }\n\n private _initProgressGroupMarkStyle() {\n const groupMark = this._progressGroupMark;\n groupMark.setZIndex(this.layoutZIndex);\n groupMark.created();\n\n this.setMarkStyle(\n groupMark,\n {\n clip: true,\n x: 0,\n y: 0,\n path: () => {\n const rectPaths: any[] = [];\n this._rawData?.rawData.forEach((datum: any, index: number) => {\n if (this._spec.direction === 'vertical') {\n const x =\n valueInScaleRange(this.dataToPositionX(datum), this._xAxisHelper?.getScale?.(0)) -\n this._spec.bandWidth / 2;\n const height = this._scaleY.range()[0];\n\n rectPaths.push(\n createRect({\n x: x,\n y: 0,\n height: height,\n width: this._spec.bandWidth,\n cornerRadius: this._spec.cornerRadius,\n fill: true\n })\n );\n } else {\n const y =\n valueInScaleRange(this.dataToPositionY(datum), this._yAxisHelper?.getScale?.(0)) -\n this._spec.bandWidth / 2;\n const width = this._scaleX.range()[1];\n\n rectPaths.push(\n createRect({\n x: 0,\n y: y,\n height: this._spec.bandWidth,\n width: width,\n cornerRadius: this._spec.cornerRadius,\n fill: true\n })\n );\n }\n });\n return rectPaths;\n }\n },\n 'normal',\n AttributeLevel.Series\n );\n this._progressGroupMark.setInteractive(false);\n }\n\n initAnimation() {\n const animationParams: ILinearProgressAnimationParams = {\n direction: this.direction\n };\n\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<LinearProgressAppearPreset>)?.preset;\n\n this._progressMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('linearProgress')?.(animationParams, appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.progress, this._spec)\n )\n );\n\n this._trackMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('fadeInOut')?.(),\n userAnimationConfig(SeriesMarkNameEnum.track, this._spec)\n )\n );\n }\n\n protected initTooltip() {\n this._tooltipHelper = new LinearProgressSeriesTooltipHelper(this);\n }\n\n getActiveMarks(): IMark[] {\n return [this._progressMark];\n }\n}\n\nexport const registerLinearProgressSeries = () => {\n Factory.registerMark(RectMark.type, RectMark);\n Factory.registerSeries(LinearProgressSeries.type, LinearProgressSeries);\n registerLinearProgressAnimation();\n registerFadeInOutAnimation();\n};\n"]}
@@ -1,6 +1,6 @@
1
1
  import { LineLikeSeriesMixin } from '../mixin/line-mixin';
2
- import type { IMarkProgressiveConfig } from '../../mark/interface';
3
- import type { Maybe } from '../../typings';
2
+ import type { IMark, IMarkProgressiveConfig } from '../../mark/interface';
3
+ import type { Datum, Maybe } from '../../typings';
4
4
  import type { SeriesMarkMap } from '../interface';
5
5
  import { SeriesTypeEnum } from '../interface/type';
6
6
  import type { IRadarSeriesSpec, IRadarSeriesTheme } from './interface';
@@ -21,5 +21,7 @@ export declare class RadarSeries<T extends IRadarSeriesSpec = IRadarSeriesSpec>
21
21
  initAreaMarkStyle(): void;
22
22
  initAnimation(): void;
23
23
  getDefaultShapeType(): string;
24
+ getActiveMarks(): IMark[];
25
+ getSeriesStyle(datum: Datum): (attribute: string) => any;
24
26
  }
25
27
  export declare const registerRadarSeries: () => void;
@@ -8,7 +8,7 @@ import { isValid } from "../../util";
8
8
 
9
9
  import { SeriesMarkNameEnum, SeriesTypeEnum } from "../interface/type";
10
10
 
11
- import { degreeToRadian, mixin } from "@visactor/vutils";
11
+ import { degreeToRadian, isArray, mixin } from "@visactor/vutils";
12
12
 
13
13
  import { animationConfig, userAnimationConfig } from "../../animation/utils";
14
14
 
@@ -103,6 +103,17 @@ export class RadarSeries extends RoseLikeSeries {
103
103
  getDefaultShapeType() {
104
104
  return "square";
105
105
  }
106
+ getActiveMarks() {
107
+ return [ this._areaMark, this._symbolMark, this._lineMark ];
108
+ }
109
+ getSeriesStyle(datum) {
110
+ return attribute => {
111
+ var _a, _b, _c, _d;
112
+ let result = null !== (_b = null === (_a = this._seriesMark) || void 0 === _a ? void 0 : _a.getAttribute(attribute, datum)) && void 0 !== _b ? _b : void 0;
113
+ return "fill" !== attribute || result || (attribute = "stroke", result = null !== (_d = null === (_c = this._seriesMark) || void 0 === _c ? void 0 : _c.getAttribute(attribute, datum)) && void 0 !== _d ? _d : void 0),
114
+ "stroke" === attribute && isArray(result) ? result[0] : result;
115
+ };
116
+ }
106
117
  }
107
118
 
108
119
  RadarSeries.type = SeriesTypeEnum.radar, RadarSeries.mark = radarSeriesMark, mixin(RadarSeries, LineLikeSeriesMixin);
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/radar/radar.ts"],"names":[],"mappings":"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","file":"radar.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { LineLikeSeriesMixin } from '../mixin/line-mixin';\nimport type { ILineMark } from '../../mark/line';\nimport type { IMark, IMarkProgressiveConfig } from '../../mark/interface';\nimport { AttributeLevel, ChartEvent, POLAR_START_RADIAN } from '../../constant';\nimport { DEFAULT_LINEAR_INTERPOLATE } from '../../typings';\nimport type { Datum, IPoint, IPolarPoint, Maybe } from '../../typings';\nimport { isValid } from '../../util';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport { degreeToRadian, mixin } from '@visactor/vutils';\nimport type { IRadarSeriesSpec, IRadarSeriesTheme } from './interface';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { registerRadarAnimation, type IRadarAnimationParams, type RadarAppearPreset } from './animation';\nimport { RoseLikeSeries } from '../polar/rose-like';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport type { IAreaMark } from '../../mark/area';\nimport { AreaMark } from '../../mark/area';\nimport { LineMark } from '../../mark/line';\nimport { SymbolMark } from '../../mark/symbol';\nimport { radarSeriesMark } from './constant';\nimport { Factory } from '../../core/factory';\n\nexport interface RadarSeries<T extends IRadarSeriesSpec>\n extends Pick<\n LineLikeSeriesMixin,\n | 'initLineMark'\n | 'initSymbolMark'\n | 'initLabelMarkStyle'\n | 'initLineMarkStyle'\n | 'initSymbolMarkStyle'\n | 'encodeDefined'\n | '_lineMark'\n | '_symbolMark'\n >,\n RoseLikeSeries<T> {}\n\nexport class RadarSeries<T extends IRadarSeriesSpec = IRadarSeriesSpec> extends RoseLikeSeries<T> {\n static readonly type: string = SeriesTypeEnum.radar;\n type = SeriesTypeEnum.radar;\n\n static readonly mark: SeriesMarkMap = radarSeriesMark;\n\n protected declare _theme: Maybe<IRadarSeriesTheme>;\n\n private _areaMark: ILineMark;\n protected _sortDataByAxis: boolean = false;\n\n initGroups() {\n // do nothing\n }\n\n initMark(): void {\n const progressive = {\n progressiveStep: this._spec.progressiveStep,\n progressiveThreshold: this._spec.progressiveThreshold,\n large: this._spec.large,\n largeThreshold: this._spec.largeThreshold\n };\n\n const isAreaVisible = this._spec.area?.visible !== false && this._spec.area?.style?.visible !== false;\n const seriesMark = this._spec.seriesMark ?? 'area';\n this.initAreaMark(progressive, isAreaVisible && seriesMark === 'area');\n this.initLineMark(progressive, seriesMark === 'line' || (seriesMark === 'area' && !isAreaVisible));\n this.initSymbolMark(progressive, seriesMark === 'point');\n }\n\n initMarkStyle(): void {\n this.initAreaMarkStyle();\n this.initLineMarkStyle();\n this.initSymbolMarkStyle();\n }\n\n initAreaMark(progressive: IMarkProgressiveConfig, isSeriesMark: boolean) {\n this._areaMark = this._createMark(RadarSeries.mark.area, {\n progressive,\n isSeriesMark\n }) as IAreaMark;\n }\n\n initAreaMarkStyle() {\n const areaMark = this._areaMark;\n if (areaMark) {\n this.setMarkStyle(\n areaMark,\n {\n x: this.dataToPositionX.bind(this),\n y: this.dataToPositionY.bind(this),\n x1: (datum: Datum) => {\n if (!datum || !this.angleAxisHelper || !this.radiusAxisHelper) {\n return Number.NaN;\n }\n return this.valueToPosition(\n this.getDatumPositionValues(datum, this._angleField),\n this._stack ? this.getDatumPositionValues(datum, this._innerRadiusField) : this.radiusScale.domain()[0]\n ).x;\n },\n y1: (datum: Datum) => {\n if (!datum || !this.angleAxisHelper || !this.radiusAxisHelper) {\n return Number.NaN;\n }\n\n const value = this.valueToPosition(\n this.getDatumPositionValues(datum, this._angleField),\n this._stack ? this.getDatumPositionValues(datum, this._innerRadiusField) : this.radiusScale.domain()[0]\n ).y;\n return value;\n },\n fill: this.getColorAttribute(),\n curveType: DEFAULT_LINEAR_INTERPOLATE,\n closePath: true\n },\n 'normal',\n AttributeLevel.Series\n );\n\n if (this._invalidType !== 'zero') {\n this.setMarkStyle(\n areaMark,\n {\n defined: this._getInvalidDefined,\n connectedType: this._getInvalidConnectType()\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n this.event.on(ChartEvent.viewDataStatisticsUpdate, { filter: param => param.model === this }, () => {\n this.encodeDefined(areaMark, 'defined');\n });\n this._trigger.registerMark(areaMark);\n this._tooltipHelper?.activeTriggerSet.dimension.add(areaMark);\n }\n }\n\n initAnimation() {\n const animationParams: IRadarAnimationParams = {\n center: () => this.angleAxisHelper?.center(),\n radius: () => {\n const rect = this.getLayoutRect();\n return Math.min(rect.width, rect.height);\n },\n startAngle: isValid(this._spec.startAngle) ? degreeToRadian(this._spec.startAngle) : POLAR_START_RADIAN,\n pointToCoord: (point: IPoint) => this.angleAxisHelper?.pointToCoord(point),\n coordToPoint: (coord: IPolarPoint) => this.angleAxisHelper.coordToPoint(coord)\n };\n const appearPreset = ((this._spec?.animationAppear as IStateAnimateSpec<RadarAppearPreset>)?.preset ??\n 'clipIn') as RadarAppearPreset;\n\n if (appearPreset === 'clipIn') {\n if (this._rootMark) {\n this._rootMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('radarGroup')?.(animationParams, appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.group, this._spec)\n )\n );\n }\n }\n\n // TODO: animationType\n const markAnimationMap: [IMark, string][] = [\n [this._areaMark, 'radar'],\n [this._lineMark, 'radar'],\n [this._symbolMark, 'radarSymbol']\n ];\n\n // 为 mark 添加动画\n markAnimationMap.forEach(([mark, animation]) => {\n if (isValid(mark)) {\n const getAnimation = Factory.getAnimationInKey(animation);\n mark.setAnimationConfig(\n animationConfig(getAnimation?.(animationParams, appearPreset), userAnimationConfig(mark.name, this._spec))\n );\n }\n });\n }\n\n getDefaultShapeType() {\n return 'square';\n }\n}\n\nmixin(RadarSeries, LineLikeSeriesMixin);\n\nexport const registerRadarSeries = () => {\n Factory.registerMark(AreaMark.type, AreaMark);\n Factory.registerMark(LineMark.type, LineMark);\n Factory.registerMark(SymbolMark.type, SymbolMark);\n\n Factory.registerSeries(RadarSeries.type, RadarSeries);\n registerRadarAnimation();\n};\n"]}
1
+ {"version":3,"sources":["../src/series/radar/radar.ts"],"names":[],"mappings":"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","file":"radar.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { LineLikeSeriesMixin } from '../mixin/line-mixin';\nimport type { ILineMark } from '../../mark/line';\nimport type { IMark, IMarkProgressiveConfig } from '../../mark/interface';\nimport { AttributeLevel, ChartEvent, POLAR_START_RADIAN } from '../../constant';\nimport { DEFAULT_LINEAR_INTERPOLATE } from '../../typings';\nimport type { Datum, IPoint, IPolarPoint, Maybe } from '../../typings';\nimport { isValid } from '../../util';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport { degreeToRadian, isArray, mixin } from '@visactor/vutils';\nimport type { IRadarSeriesSpec, IRadarSeriesTheme } from './interface';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { registerRadarAnimation, type IRadarAnimationParams, type RadarAppearPreset } from './animation';\nimport { RoseLikeSeries } from '../polar/rose-like';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport type { IAreaMark } from '../../mark/area';\nimport { AreaMark } from '../../mark/area';\nimport { LineMark } from '../../mark/line';\nimport { SymbolMark } from '../../mark/symbol';\nimport { radarSeriesMark } from './constant';\nimport { Factory } from '../../core/factory';\n\nexport interface RadarSeries<T extends IRadarSeriesSpec>\n extends Pick<\n LineLikeSeriesMixin,\n | 'initLineMark'\n | 'initSymbolMark'\n | 'initLabelMarkStyle'\n | 'initLineMarkStyle'\n | 'initSymbolMarkStyle'\n | 'encodeDefined'\n | '_lineMark'\n | '_symbolMark'\n >,\n RoseLikeSeries<T> {}\n\nexport class RadarSeries<T extends IRadarSeriesSpec = IRadarSeriesSpec> extends RoseLikeSeries<T> {\n static readonly type: string = SeriesTypeEnum.radar;\n type = SeriesTypeEnum.radar;\n\n static readonly mark: SeriesMarkMap = radarSeriesMark;\n\n protected declare _theme: Maybe<IRadarSeriesTheme>;\n\n private _areaMark: ILineMark;\n protected _sortDataByAxis: boolean = false;\n\n initGroups() {\n // do nothing\n }\n\n initMark(): void {\n const progressive = {\n progressiveStep: this._spec.progressiveStep,\n progressiveThreshold: this._spec.progressiveThreshold,\n large: this._spec.large,\n largeThreshold: this._spec.largeThreshold\n };\n\n const isAreaVisible = this._spec.area?.visible !== false && this._spec.area?.style?.visible !== false;\n const seriesMark = this._spec.seriesMark ?? 'area';\n this.initAreaMark(progressive, isAreaVisible && seriesMark === 'area');\n this.initLineMark(progressive, seriesMark === 'line' || (seriesMark === 'area' && !isAreaVisible));\n this.initSymbolMark(progressive, seriesMark === 'point');\n }\n\n initMarkStyle(): void {\n this.initAreaMarkStyle();\n this.initLineMarkStyle();\n this.initSymbolMarkStyle();\n }\n\n initAreaMark(progressive: IMarkProgressiveConfig, isSeriesMark: boolean) {\n this._areaMark = this._createMark(RadarSeries.mark.area, {\n progressive,\n isSeriesMark\n }) as IAreaMark;\n }\n\n initAreaMarkStyle() {\n const areaMark = this._areaMark;\n if (areaMark) {\n this.setMarkStyle(\n areaMark,\n {\n x: this.dataToPositionX.bind(this),\n y: this.dataToPositionY.bind(this),\n x1: (datum: Datum) => {\n if (!datum || !this.angleAxisHelper || !this.radiusAxisHelper) {\n return Number.NaN;\n }\n return this.valueToPosition(\n this.getDatumPositionValues(datum, this._angleField),\n this._stack ? this.getDatumPositionValues(datum, this._innerRadiusField) : this.radiusScale.domain()[0]\n ).x;\n },\n y1: (datum: Datum) => {\n if (!datum || !this.angleAxisHelper || !this.radiusAxisHelper) {\n return Number.NaN;\n }\n\n const value = this.valueToPosition(\n this.getDatumPositionValues(datum, this._angleField),\n this._stack ? this.getDatumPositionValues(datum, this._innerRadiusField) : this.radiusScale.domain()[0]\n ).y;\n return value;\n },\n fill: this.getColorAttribute(),\n curveType: DEFAULT_LINEAR_INTERPOLATE,\n closePath: true\n },\n 'normal',\n AttributeLevel.Series\n );\n\n if (this._invalidType !== 'zero') {\n this.setMarkStyle(\n areaMark,\n {\n defined: this._getInvalidDefined,\n connectedType: this._getInvalidConnectType()\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n this.event.on(ChartEvent.viewDataStatisticsUpdate, { filter: param => param.model === this }, () => {\n this.encodeDefined(areaMark, 'defined');\n });\n this._trigger.registerMark(areaMark);\n this._tooltipHelper?.activeTriggerSet.dimension.add(areaMark);\n }\n }\n\n initAnimation() {\n const animationParams: IRadarAnimationParams = {\n center: () => this.angleAxisHelper?.center(),\n radius: () => {\n const rect = this.getLayoutRect();\n return Math.min(rect.width, rect.height);\n },\n startAngle: isValid(this._spec.startAngle) ? degreeToRadian(this._spec.startAngle) : POLAR_START_RADIAN,\n pointToCoord: (point: IPoint) => this.angleAxisHelper?.pointToCoord(point),\n coordToPoint: (coord: IPolarPoint) => this.angleAxisHelper.coordToPoint(coord)\n };\n const appearPreset = ((this._spec?.animationAppear as IStateAnimateSpec<RadarAppearPreset>)?.preset ??\n 'clipIn') as RadarAppearPreset;\n\n if (appearPreset === 'clipIn') {\n if (this._rootMark) {\n this._rootMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('radarGroup')?.(animationParams, appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.group, this._spec)\n )\n );\n }\n }\n\n // TODO: animationType\n const markAnimationMap: [IMark, string][] = [\n [this._areaMark, 'radar'],\n [this._lineMark, 'radar'],\n [this._symbolMark, 'radarSymbol']\n ];\n\n // 为 mark 添加动画\n markAnimationMap.forEach(([mark, animation]) => {\n if (isValid(mark)) {\n const getAnimation = Factory.getAnimationInKey(animation);\n mark.setAnimationConfig(\n animationConfig(getAnimation?.(animationParams, appearPreset), userAnimationConfig(mark.name, this._spec))\n );\n }\n });\n }\n\n getDefaultShapeType() {\n return 'square';\n }\n\n getActiveMarks(): IMark[] {\n return [this._areaMark, this._symbolMark, this._lineMark];\n }\n\n getSeriesStyle(datum: Datum) {\n return (attribute: string) => {\n let result = this._seriesMark?.getAttribute(attribute as any, datum) ?? undefined;\n if (attribute === 'fill' && !result) {\n attribute = 'stroke';\n result = this._seriesMark?.getAttribute(attribute, datum) ?? undefined;\n }\n if (attribute === 'stroke' && isArray(result)) {\n return result[0];\n }\n return result;\n };\n }\n}\n\nmixin(RadarSeries, LineLikeSeriesMixin);\n\nexport const registerRadarSeries = () => {\n Factory.registerMark(AreaMark.type, AreaMark);\n Factory.registerMark(LineMark.type, LineMark);\n Factory.registerMark(SymbolMark.type, SymbolMark);\n\n Factory.registerSeries(RadarSeries.type, RadarSeries);\n registerRadarAnimation();\n};\n"]}
@@ -4,6 +4,7 @@ import { SeriesTypeEnum } from '../interface/type';
4
4
  import type { IRoseSeriesSpec, IRoseSeriesTheme } from './interface';
5
5
  import { RoseLikeSeries } from '../polar/rose-like';
6
6
  import type { ITextMark } from '../../mark/text';
7
+ import type { IMark } from '../../mark/interface';
7
8
  export declare const DefaultBandWidth = 0.5;
8
9
  export declare class RoseSeries<T extends IRoseSeriesSpec = IRoseSeriesSpec> extends RoseLikeSeries<T> {
9
10
  static readonly type: string;
@@ -21,5 +22,6 @@ export declare class RoseSeries<T extends IRoseSeriesSpec = IRoseSeriesSpec> ext
21
22
  initLabelMarkStyle(textMark: ITextMark): void;
22
23
  initAnimation(): void;
23
24
  getDefaultShapeType(): string;
25
+ getActiveMarks(): IMark[];
24
26
  }
25
27
  export declare const registerRoseSeries: () => void;
@@ -87,6 +87,9 @@ export class RoseSeries extends RoseLikeSeries {
87
87
  getDefaultShapeType() {
88
88
  return "circle";
89
89
  }
90
+ getActiveMarks() {
91
+ return [ this._roseMark ];
92
+ }
90
93
  }
91
94
 
92
95
  RoseSeries.type = SeriesTypeEnum.rose, RoseSeries.mark = roseSeriesMark;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/rose/rose.ts"],"names":[],"mappings":"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","file":"rose.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport type { IArcMark } from '../../mark/arc';\nimport type { Maybe, Datum } from '../../typings';\nimport { valueInScaleRange, mergeSpec } from '../../util';\nimport { animationConfig, shouldDoMorph, userAnimationConfig } from '../../animation/utils';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport { registerRoseAnimation, type IRoseAnimationParams, type RoseAppearPreset } from './animation';\nimport type { IRoseSeriesSpec, IRoseSeriesTheme } from './interface';\nimport { RoseLikeSeries } from '../polar/rose-like';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport type { ITextMark } from '../../mark/text';\nimport { ArcMark } from '../../mark/arc';\nimport { roseSeriesMark } from './constant';\nimport { Factory } from '../../core/factory';\n\nexport const DefaultBandWidth = 0.5;\n\nexport class RoseSeries<T extends IRoseSeriesSpec = IRoseSeriesSpec> extends RoseLikeSeries<T> {\n static readonly type: string = SeriesTypeEnum.rose;\n type = SeriesTypeEnum.rose;\n\n static readonly mark: SeriesMarkMap = roseSeriesMark;\n\n protected declare _theme: Maybe<IRoseSeriesTheme>;\n protected _stack: boolean = true;\n\n private _roseMark: IArcMark | null = null;\n protected _labelMark: ITextMark | null = null;\n\n initMark(): void {\n this.initRoseMark();\n }\n\n initMarkStyle(): void {\n this.initRoseMarkStyle();\n }\n\n private initRoseMark() {\n this._roseMark = this._createMark(RoseSeries.mark.rose, {\n morph: shouldDoMorph(this._spec.animation, this._spec.morph, userAnimationConfig('rose', this._spec)),\n defaultMorphElementKey: this.getDimensionField()[0],\n groupKey: this._seriesField,\n isSeriesMark: true,\n label: mergeSpec({ animation: this._spec.animation }, this._spec.label)\n }) as IArcMark;\n }\n\n private getRoseAngle() {\n const angleBandWidth =\n this.angleAxisHelper.getBandwidth?.(this._groups ? this._groups.fields.length - 1 : 0) ?? DefaultBandWidth;\n return angleBandWidth;\n }\n\n private initRoseMarkStyle() {\n const roseMark = this._roseMark;\n if (roseMark) {\n this.setMarkStyle(roseMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n startAngle: (datum: Datum) =>\n this.angleAxisHelper.dataToPosition(this.getDatumPositionValues(datum, this.getGroupFields())) -\n this.angleAxisHelper.getBandwidth(this.getGroupFields().length - 1) * 0.5,\n endAngle: (datum: Datum) =>\n this.angleAxisHelper.dataToPosition(this.getDatumPositionValues(datum, this.getGroupFields())) +\n this.getRoseAngle() -\n this.angleAxisHelper.getBandwidth(this.getGroupFields().length - 1) * 0.5,\n fill: this.getColorAttribute(),\n outerRadius: (datum: Datum) =>\n valueInScaleRange(\n this.radiusAxisHelper.dataToPosition([datum[this._radiusField[0]]]),\n this.radiusAxisHelper.getScale(0)\n ),\n innerRadius: (datum: Datum) => {\n if (!this._stack) {\n return 0;\n }\n const stackStart = valueInScaleRange(\n this.radiusAxisHelper.dataToPosition([datum[this._innerRadiusField[0]]]),\n this.radiusAxisHelper.getScale(0)\n );\n return stackStart <= Number.MIN_VALUE\n ? this._computeLayoutRadius() * (this._spec.innerRadius ?? 0)\n : stackStart;\n }\n });\n this._trigger.registerMark(roseMark);\n this._tooltipHelper?.activeTriggerSet.mark.add(roseMark);\n }\n }\n\n initLabelMarkStyle(textMark: ITextMark) {\n if (!textMark) {\n return;\n }\n this.setMarkStyle(textMark, {\n visible: this._spec?.label?.visible,\n text: (datum: Datum) => {\n return datum[this.getDimensionField()[0]];\n },\n fill: this._spec.label?.style?.fill || this.getColorAttribute(),\n angle: this._spec.label?.style?.angle,\n limit: this._spec.label?.style?.limit,\n z: 0\n });\n }\n\n initAnimation() {\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<RoseAppearPreset>)?.preset;\n\n if (this._roseMark) {\n const animationParams: IRoseAnimationParams = {\n innerRadius: () => this._computeLayoutRadius() * (this._spec.innerRadius ?? 0)\n };\n this._roseMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('rose')?.(animationParams, appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.rose, this._spec)\n )\n );\n }\n }\n\n getDefaultShapeType() {\n return 'circle';\n }\n}\n\nexport const registerRoseSeries = () => {\n Factory.registerMark(ArcMark.type, ArcMark);\n Factory.registerSeries(RoseSeries.type, RoseSeries);\n registerRoseAnimation();\n};\n"]}
1
+ {"version":3,"sources":["../src/series/rose/rose.ts"],"names":[],"mappings":"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","file":"rose.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport type { IArcMark } from '../../mark/arc';\nimport type { Maybe, Datum } from '../../typings';\nimport { valueInScaleRange, mergeSpec } from '../../util';\nimport { animationConfig, shouldDoMorph, userAnimationConfig } from '../../animation/utils';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport { registerRoseAnimation, type IRoseAnimationParams, type RoseAppearPreset } from './animation';\nimport type { IRoseSeriesSpec, IRoseSeriesTheme } from './interface';\nimport { RoseLikeSeries } from '../polar/rose-like';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport type { ITextMark } from '../../mark/text';\nimport { ArcMark } from '../../mark/arc';\nimport { roseSeriesMark } from './constant';\nimport { Factory } from '../../core/factory';\nimport type { IMark } from '../../mark/interface';\n\nexport const DefaultBandWidth = 0.5;\n\nexport class RoseSeries<T extends IRoseSeriesSpec = IRoseSeriesSpec> extends RoseLikeSeries<T> {\n static readonly type: string = SeriesTypeEnum.rose;\n type = SeriesTypeEnum.rose;\n\n static readonly mark: SeriesMarkMap = roseSeriesMark;\n\n protected declare _theme: Maybe<IRoseSeriesTheme>;\n protected _stack: boolean = true;\n\n private _roseMark: IArcMark | null = null;\n protected _labelMark: ITextMark | null = null;\n\n initMark(): void {\n this.initRoseMark();\n }\n\n initMarkStyle(): void {\n this.initRoseMarkStyle();\n }\n\n private initRoseMark() {\n this._roseMark = this._createMark(RoseSeries.mark.rose, {\n morph: shouldDoMorph(this._spec.animation, this._spec.morph, userAnimationConfig('rose', this._spec)),\n defaultMorphElementKey: this.getDimensionField()[0],\n groupKey: this._seriesField,\n isSeriesMark: true,\n label: mergeSpec({ animation: this._spec.animation }, this._spec.label)\n }) as IArcMark;\n }\n\n private getRoseAngle() {\n const angleBandWidth =\n this.angleAxisHelper.getBandwidth?.(this._groups ? this._groups.fields.length - 1 : 0) ?? DefaultBandWidth;\n return angleBandWidth;\n }\n\n private initRoseMarkStyle() {\n const roseMark = this._roseMark;\n if (roseMark) {\n this.setMarkStyle(roseMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n startAngle: (datum: Datum) =>\n this.angleAxisHelper.dataToPosition(this.getDatumPositionValues(datum, this.getGroupFields())) -\n this.angleAxisHelper.getBandwidth(this.getGroupFields().length - 1) * 0.5,\n endAngle: (datum: Datum) =>\n this.angleAxisHelper.dataToPosition(this.getDatumPositionValues(datum, this.getGroupFields())) +\n this.getRoseAngle() -\n this.angleAxisHelper.getBandwidth(this.getGroupFields().length - 1) * 0.5,\n fill: this.getColorAttribute(),\n outerRadius: (datum: Datum) =>\n valueInScaleRange(\n this.radiusAxisHelper.dataToPosition([datum[this._radiusField[0]]]),\n this.radiusAxisHelper.getScale(0)\n ),\n innerRadius: (datum: Datum) => {\n if (!this._stack) {\n return 0;\n }\n const stackStart = valueInScaleRange(\n this.radiusAxisHelper.dataToPosition([datum[this._innerRadiusField[0]]]),\n this.radiusAxisHelper.getScale(0)\n );\n return stackStart <= Number.MIN_VALUE\n ? this._computeLayoutRadius() * (this._spec.innerRadius ?? 0)\n : stackStart;\n }\n });\n this._trigger.registerMark(roseMark);\n this._tooltipHelper?.activeTriggerSet.mark.add(roseMark);\n }\n }\n\n initLabelMarkStyle(textMark: ITextMark) {\n if (!textMark) {\n return;\n }\n this.setMarkStyle(textMark, {\n visible: this._spec?.label?.visible,\n text: (datum: Datum) => {\n return datum[this.getDimensionField()[0]];\n },\n fill: this._spec.label?.style?.fill || this.getColorAttribute(),\n angle: this._spec.label?.style?.angle,\n limit: this._spec.label?.style?.limit,\n z: 0\n });\n }\n\n initAnimation() {\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<RoseAppearPreset>)?.preset;\n\n if (this._roseMark) {\n const animationParams: IRoseAnimationParams = {\n innerRadius: () => this._computeLayoutRadius() * (this._spec.innerRadius ?? 0)\n };\n this._roseMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('rose')?.(animationParams, appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.rose, this._spec)\n )\n );\n }\n }\n\n getDefaultShapeType() {\n return 'circle';\n }\n\n getActiveMarks(): IMark[] {\n return [this._roseMark];\n }\n}\n\nexport const registerRoseSeries = () => {\n Factory.registerMark(ArcMark.type, ArcMark);\n Factory.registerSeries(RoseSeries.type, RoseSeries);\n registerRoseAnimation();\n};\n"]}
@@ -6,6 +6,7 @@ import { SeriesData } from '../base/series-data';
6
6
  import type { ISankeySeriesSpec } from './interface';
7
7
  import type { ExtendEventParam } from '../../event/interface';
8
8
  import type { IElement, IGlyphElement } from '@visactor/vgrammar-core';
9
+ import type { IMark } from '../../mark/interface';
9
10
  export declare class SankeySeries<T extends ISankeySeriesSpec = ISankeySeriesSpec> extends CartesianSeries<T> {
10
11
  static readonly type: string;
11
12
  type: SeriesTypeEnum;
@@ -55,5 +56,6 @@ export declare class SankeySeries<T extends ISankeySeriesSpec = ISankeySeriesSpe
55
56
  onLayoutEnd(ctx: any): void;
56
57
  getDefaultShapeType(): string;
57
58
  protected _noAnimationDataKey(datum: Datum, index: number): unknown | undefined;
59
+ getActiveMarks(): IMark[];
58
60
  }
59
61
  export declare const registerSankeySeries: () => void;
@@ -114,23 +114,9 @@ export class SankeySeries extends CartesianSeries {
114
114
  const vGrammarMark = this._linkMark.getProduct();
115
115
  if (!vGrammarMark || !vGrammarMark.elements || !vGrammarMark.elements.length) return;
116
116
  vGrammarMark.elements.forEach((linkEl => {
117
- linkEl.clearStates();
118
- const linkDatum = linkEl.getDatum(), father = (null == linkDatum ? void 0 : linkDatum.parents) ? "parents" : "source";
119
- if (linkDatum.source === curLinkDatum.target || array(linkDatum[father]).includes(curLinkDatum.source) && array(linkDatum[father]).includes(curLinkDatum.target)) {
120
- let ratio;
121
- if (highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
122
- highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target),
123
- "parents" === father) {
124
- const originalDatum = linkDatum.datum;
125
- ratio = (originalDatum ? originalDatum.filter((entry => entry.parents.some(((par, index) => {
126
- var _a;
127
- return par.key === curLinkDatum.source && (null === (_a = entry.parents[index + 1]) || void 0 === _a ? void 0 : _a.key) === curLinkDatum.target;
128
- })))).reduce(((sum, d) => sum + d.value), 0) : 0) / linkDatum.value;
129
- }
130
- linkEl.addState("selected", {
131
- ratio: ratio
132
- });
133
- } else linkEl === element || linkEl.useStates([ "blur" ]);
117
+ linkEl.clearStates(), linkEl === element ? linkEl.addState("selected", {
118
+ ratio: 1
119
+ }) : linkEl.useStates([ "blur" ]);
134
120
  }));
135
121
  }
136
122
  if (this._nodeMark) {
@@ -719,6 +705,9 @@ export class SankeySeries extends CartesianSeries {
719
705
  return "square";
720
706
  }
721
707
  _noAnimationDataKey(datum, index) {}
708
+ getActiveMarks() {
709
+ return [ this._nodeMark, this._linkMark ];
710
+ }
722
711
  }
723
712
 
724
713
  SankeySeries.type = SeriesTypeEnum.sankey, SankeySeries.mark = sankeySeriesMark;