@visactor/vchart 1.3.0 → 1.3.1-test.1

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 (163) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.js +23 -814
  3. package/build/index.min.js +1 -1
  4. package/build/tsconfig.tsbuildinfo +1 -1
  5. package/cjs/chart/area/area.js +1 -1
  6. package/cjs/chart/area/area.js.map +1 -1
  7. package/cjs/chart/bar/bar-3d.js +1 -1
  8. package/cjs/chart/bar/bar-3d.js.map +1 -1
  9. package/cjs/chart/bar/bar.js +1 -1
  10. package/cjs/chart/bar/bar.js.map +1 -1
  11. package/cjs/chart/base-chart.js.map +1 -1
  12. package/cjs/chart/histogram/histogram-3d.js +1 -1
  13. package/cjs/chart/histogram/histogram-3d.js.map +1 -1
  14. package/cjs/chart/histogram/histogram.js +1 -1
  15. package/cjs/chart/histogram/histogram.js.map +1 -1
  16. package/cjs/chart/interface/chart.d.ts +1 -1
  17. package/cjs/chart/interface/chart.js.map +1 -1
  18. package/cjs/chart/map/map.js +1 -1
  19. package/cjs/chart/map/map.js.map +1 -1
  20. package/cjs/chart/pie/pie-3d.js +1 -1
  21. package/cjs/chart/pie/pie-3d.js.map +1 -1
  22. package/cjs/chart/pie/pie.js +1 -1
  23. package/cjs/chart/pie/pie.js.map +1 -1
  24. package/cjs/chart/radar/radar.js +1 -1
  25. package/cjs/chart/radar/radar.js.map +1 -1
  26. package/cjs/chart/rose/rose.js +1 -1
  27. package/cjs/chart/rose/rose.js.map +1 -1
  28. package/cjs/chart/scatter/scatter.js +1 -1
  29. package/cjs/chart/scatter/scatter.js.map +1 -1
  30. package/cjs/chart/sequence/sequence.js +1 -1
  31. package/cjs/chart/sequence/sequence.js.map +1 -1
  32. package/cjs/component/index.js +2 -1
  33. package/cjs/component/legend/discrete/legend.js +9 -1
  34. package/cjs/component/legend/discrete/legend.js.map +1 -1
  35. package/cjs/component/tooltip/interface/common.d.ts +1 -1
  36. package/cjs/component/tooltip/interface/common.js.map +1 -1
  37. package/cjs/constant/polar.js +1 -2
  38. package/cjs/core/factory.js +2 -1
  39. package/cjs/core/index.js +1 -1
  40. package/cjs/core/index.js.map +1 -1
  41. package/cjs/core/vchart.js +1 -2
  42. package/cjs/data/initialize.d.ts +1 -1
  43. package/cjs/data/initialize.js +1 -1
  44. package/cjs/data/initialize.js.map +1 -1
  45. package/cjs/event/events/dimension/base.d.ts +1 -1
  46. package/cjs/event/events/dimension/base.js +1 -1
  47. package/cjs/event/events/dimension/base.js.map +1 -1
  48. package/cjs/layout/base-layout.d.ts +1 -1
  49. package/cjs/layout/base-layout.js.map +1 -1
  50. package/cjs/layout/grid-layout/grid-layout.d.ts +1 -1
  51. package/cjs/layout/grid-layout/grid-layout.js.map +1 -1
  52. package/cjs/layout/interface.d.ts +1 -1
  53. package/cjs/layout/interface.js.map +1 -1
  54. package/cjs/layout/layout3d/index.d.ts +1 -1
  55. package/cjs/layout/layout3d/index.js.map +1 -1
  56. package/cjs/mark/arc-3d.js +1 -1
  57. package/cjs/mark/arc.js +1 -1
  58. package/cjs/mark/area.js +1 -1
  59. package/cjs/mark/box-plot.js +1 -1
  60. package/cjs/mark/cell.js +1 -1
  61. package/cjs/mark/image.d.ts +1 -1
  62. package/cjs/mark/image.js.map +1 -1
  63. package/cjs/model/base-model.js +1 -1
  64. package/cjs/model/interface.js +1 -1
  65. package/cjs/model/layout-item.js +1 -1
  66. package/cjs/model/model-state-manager.js +1 -1
  67. package/cjs/model/tooltip-helper.js +1 -1
  68. package/cjs/plugin/components/axis-sync-plugin/axis-sync.js +1 -1
  69. package/cjs/plugin/components/axis-sync-plugin/axis-sync.js.map +1 -1
  70. package/cjs/series/mixin/line-mixin.d.ts +2 -2
  71. package/cjs/series/mixin/line-mixin.js +14 -12
  72. package/cjs/series/mixin/line-mixin.js.map +1 -1
  73. package/cjs/series/pie/pie.js +2 -8
  74. package/cjs/series/pie/pie.js.map +1 -1
  75. package/cjs/series/util/utils.d.ts +1 -1
  76. package/cjs/series/util/utils.js.map +1 -1
  77. package/cjs/typings/spec/common.d.ts +1 -1
  78. package/cjs/typings/spec/common.js.map +1 -1
  79. package/cjs/util/image.d.ts +1 -1
  80. package/cjs/util/image.js.map +1 -1
  81. package/esm/chart/area/area.js +1 -1
  82. package/esm/chart/area/area.js.map +1 -1
  83. package/esm/chart/bar/bar-3d.js +1 -1
  84. package/esm/chart/bar/bar-3d.js.map +1 -1
  85. package/esm/chart/bar/bar.js +1 -1
  86. package/esm/chart/bar/bar.js.map +1 -1
  87. package/esm/chart/base-chart.js.map +1 -1
  88. package/esm/chart/histogram/histogram-3d.js +1 -1
  89. package/esm/chart/histogram/histogram-3d.js.map +1 -1
  90. package/esm/chart/histogram/histogram.js +1 -1
  91. package/esm/chart/histogram/histogram.js.map +1 -1
  92. package/esm/chart/interface/chart.d.ts +1 -1
  93. package/esm/chart/interface/chart.js.map +1 -1
  94. package/esm/chart/map/map.js +1 -1
  95. package/esm/chart/map/map.js.map +1 -1
  96. package/esm/chart/pie/pie-3d.js +1 -1
  97. package/esm/chart/pie/pie-3d.js.map +1 -1
  98. package/esm/chart/pie/pie.js +1 -1
  99. package/esm/chart/pie/pie.js.map +1 -1
  100. package/esm/chart/radar/radar.js +1 -1
  101. package/esm/chart/radar/radar.js.map +1 -1
  102. package/esm/chart/rose/rose.js +1 -1
  103. package/esm/chart/rose/rose.js.map +1 -1
  104. package/esm/chart/scatter/scatter.js +1 -1
  105. package/esm/chart/scatter/scatter.js.map +1 -1
  106. package/esm/chart/sequence/sequence.js +2 -2
  107. package/esm/chart/sequence/sequence.js.map +1 -1
  108. package/esm/component/index.js +2 -1
  109. package/esm/component/legend/discrete/legend.js +9 -1
  110. package/esm/component/legend/discrete/legend.js.map +1 -1
  111. package/esm/component/tooltip/interface/common.d.ts +1 -1
  112. package/esm/component/tooltip/interface/common.js.map +1 -1
  113. package/esm/constant/polar.js +1 -2
  114. package/esm/core/factory.js +2 -1
  115. package/esm/core/index.js +1 -1
  116. package/esm/core/index.js.map +1 -1
  117. package/esm/core/vchart.js +1 -2
  118. package/esm/data/initialize.d.ts +1 -1
  119. package/esm/data/initialize.js +1 -1
  120. package/esm/data/initialize.js.map +1 -1
  121. package/esm/event/events/dimension/base.d.ts +1 -1
  122. package/esm/event/events/dimension/base.js +1 -1
  123. package/esm/event/events/dimension/base.js.map +1 -1
  124. package/esm/layout/base-layout.d.ts +1 -1
  125. package/esm/layout/base-layout.js.map +1 -1
  126. package/esm/layout/grid-layout/grid-layout.d.ts +1 -1
  127. package/esm/layout/grid-layout/grid-layout.js.map +1 -1
  128. package/esm/layout/interface.d.ts +1 -1
  129. package/esm/layout/interface.js.map +1 -1
  130. package/esm/layout/layout3d/index.d.ts +1 -1
  131. package/esm/layout/layout3d/index.js.map +1 -1
  132. package/esm/mark/arc-3d.js +1 -1
  133. package/esm/mark/arc.js +1 -1
  134. package/esm/mark/area.js +1 -1
  135. package/esm/mark/box-plot.js +1 -1
  136. package/esm/mark/cell.js +1 -1
  137. package/esm/mark/image.d.ts +1 -1
  138. package/esm/mark/image.js.map +1 -1
  139. package/esm/model/base-model.js +1 -1
  140. package/esm/model/interface.js +1 -1
  141. package/esm/model/layout-item.js +1 -1
  142. package/esm/model/model-state-manager.js +1 -1
  143. package/esm/model/tooltip-helper.js +1 -1
  144. package/esm/plugin/components/axis-sync-plugin/axis-sync.js +1 -1
  145. package/esm/plugin/components/axis-sync-plugin/axis-sync.js.map +1 -1
  146. package/esm/series/mixin/line-mixin.d.ts +2 -2
  147. package/esm/series/mixin/line-mixin.js +13 -13
  148. package/esm/series/mixin/line-mixin.js.map +1 -1
  149. package/esm/series/pie/pie.js +2 -10
  150. package/esm/series/pie/pie.js.map +1 -1
  151. package/esm/series/util/utils.d.ts +1 -1
  152. package/esm/series/util/utils.js.map +1 -1
  153. package/esm/typings/spec/common.d.ts +1 -1
  154. package/esm/typings/spec/common.js.map +1 -1
  155. package/esm/util/image.d.ts +1 -1
  156. package/esm/util/image.js.map +1 -1
  157. package/package.json +39 -38
  158. package/cjs/layout/label/arc-label.d.ts +0 -42
  159. package/cjs/layout/label/arc-label.js +0 -416
  160. package/cjs/layout/label/arc-label.js.map +0 -1
  161. package/esm/layout/label/arc-label.d.ts +0 -42
  162. package/esm/layout/label/arc-label.js +0 -401
  163. package/esm/layout/label/arc-label.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/chart/pie/pie-3d.ts"],"names":[],"mappings":";;;AAAA,sDAAwD;AAGxD,sDAAwD;AACxD,4CAA6C;AAC7C,iCAAsC;AACtC,8CAA2C;AAC3C,eAAM,CAAC,SAAS,CAAC,CAAC,oBAAW,CAAC,CAAC,CAAC;AAEhC,MAAa,UAAW,SAAQ,mBAAY;IAA5C;;QAGW,SAAI,GAAW,yBAAa,CAAC,KAAK,CAAC;QACnC,eAAU,GAAW,0BAAc,CAAC,KAAK,CAAC;IAUrD,CAAC;IARC,aAAa,CAAC,IAAS;QACrB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAU,EAAE,EAAE;YACjC,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE;gBACrB,CAAS,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;aACnC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;;AAbH,gCAcC;AAbiB,eAAI,GAAW,yBAAa,CAAC,KAAK,CAAC;AACnC,eAAI,GAAW,eAAe,CAAC","file":"pie-3d.js","sourcesContent":["import { Pie3dSeries } from './../../series/pie/pie-3d';\nimport type { ISeries } from '../../series/interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { SeriesTypeEnum } from '../../series/interface';\nimport { ChartTypeEnum } from '../interface';\nimport { BasePieChart } from './base';\nimport { VChart } from '../../core/vchart';\nVChart.useSeries([Pie3dSeries]);\n\nexport class Pie3dChart extends BasePieChart {\n static readonly type: string = ChartTypeEnum.pie3d;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.pie3d;\n readonly seriesType: string = SeriesTypeEnum.pie3d;\n\n transformSpec(spec: any): void {\n super.transformSpec(spec);\n spec.series.forEach((s: ISeries) => {\n if (s.type === 'pie3d') {\n (s as any).angle3d = spec.angle3d;\n }\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/chart/pie/pie-3d.ts"],"names":[],"mappings":";;;AAAA,oDAAsD;AAGtD,sDAAwD;AACxD,4CAA6C;AAC7C,iCAAsC;AACtC,8CAA2C;AAC3C,eAAM,CAAC,SAAS,CAAC,CAAC,oBAAW,CAAC,CAAC,CAAC;AAEhC,MAAa,UAAW,SAAQ,mBAAY;IAA5C;;QAGW,SAAI,GAAW,yBAAa,CAAC,KAAK,CAAC;QACnC,eAAU,GAAW,0BAAc,CAAC,KAAK,CAAC;IAUrD,CAAC;IARC,aAAa,CAAC,IAAS;QACrB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAU,EAAE,EAAE;YACjC,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE;gBACrB,CAAS,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;aACnC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;;AAbH,gCAcC;AAbiB,eAAI,GAAW,yBAAa,CAAC,KAAK,CAAC;AACnC,eAAI,GAAW,eAAe,CAAC","file":"pie-3d.js","sourcesContent":["import { Pie3dSeries } from '../../series/pie/pie-3d';\nimport type { ISeries } from '../../series/interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { SeriesTypeEnum } from '../../series/interface';\nimport { ChartTypeEnum } from '../interface';\nimport { BasePieChart } from './base';\nimport { VChart } from '../../core/vchart';\nVChart.useSeries([Pie3dSeries]);\n\nexport class Pie3dChart extends BasePieChart {\n static readonly type: string = ChartTypeEnum.pie3d;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.pie3d;\n readonly seriesType: string = SeriesTypeEnum.pie3d;\n\n transformSpec(spec: any): void {\n super.transformSpec(spec);\n spec.series.forEach((s: ISeries) => {\n if (s.type === 'pie3d') {\n (s as any).angle3d = spec.angle3d;\n }\n });\n }\n}\n"]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.PieChart = void 0;
6
6
 
7
- const pie_1 = require("./../../series/pie/pie"), interface_1 = require("../../series/interface"), interface_2 = require("../interface"), base_1 = require("./base"), vchart_1 = require("../../core/vchart");
7
+ const pie_1 = require("../../series/pie/pie"), interface_1 = require("../../series/interface"), interface_2 = require("../interface"), base_1 = require("./base"), vchart_1 = require("../../core/vchart");
8
8
 
9
9
  vchart_1.VChart.useSeries([ pie_1.PieSeries ]);
10
10
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/chart/pie/pie.ts"],"names":[],"mappings":";;;AAAA,gDAAmD;AAEnD,sDAAwD;AACxD,4CAA6C;AAC7C,iCAAsC;AACtC,8CAA2C;AAC3C,eAAM,CAAC,SAAS,CAAC,CAAC,eAAS,CAAC,CAAC,CAAC;AAE9B,MAAa,QAAS,SAAQ,mBAAY;IAA1C;;QAGW,SAAI,GAAW,yBAAa,CAAC,GAAG,CAAC;QACjC,eAAU,GAAW,0BAAc,CAAC,GAAG,CAAC;IACnD,CAAC;;AALD,4BAKC;AAJiB,aAAI,GAAW,yBAAa,CAAC,GAAG,CAAC;AACjC,aAAI,GAAW,eAAe,CAAC","file":"pie.js","sourcesContent":["import { PieSeries } from './../../series/pie/pie';\n// eslint-disable-next-line no-duplicate-imports\nimport { SeriesTypeEnum } from '../../series/interface';\nimport { ChartTypeEnum } from '../interface';\nimport { BasePieChart } from './base';\nimport { VChart } from '../../core/vchart';\nVChart.useSeries([PieSeries]);\n\nexport class PieChart extends BasePieChart {\n static readonly type: string = ChartTypeEnum.pie;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.pie;\n readonly seriesType: string = SeriesTypeEnum.pie;\n}\n"]}
1
+ {"version":3,"sources":["../src/chart/pie/pie.ts"],"names":[],"mappings":";;;AAAA,8CAAiD;AAEjD,sDAAwD;AACxD,4CAA6C;AAC7C,iCAAsC;AACtC,8CAA2C;AAC3C,eAAM,CAAC,SAAS,CAAC,CAAC,eAAS,CAAC,CAAC,CAAC;AAE9B,MAAa,QAAS,SAAQ,mBAAY;IAA1C;;QAGW,SAAI,GAAW,yBAAa,CAAC,GAAG,CAAC;QACjC,eAAU,GAAW,0BAAc,CAAC,GAAG,CAAC;IACnD,CAAC;;AALD,4BAKC;AAJiB,aAAI,GAAW,yBAAa,CAAC,GAAG,CAAC;AACjC,aAAI,GAAW,eAAe,CAAC","file":"pie.js","sourcesContent":["import { PieSeries } from '../../series/pie/pie';\n// eslint-disable-next-line no-duplicate-imports\nimport { SeriesTypeEnum } from '../../series/interface';\nimport { ChartTypeEnum } from '../interface';\nimport { BasePieChart } from './base';\nimport { VChart } from '../../core/vchart';\nVChart.useSeries([PieSeries]);\n\nexport class PieChart extends BasePieChart {\n static readonly type: string = ChartTypeEnum.pie;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.pie;\n readonly seriesType: string = SeriesTypeEnum.pie;\n}\n"]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.RadarChart = void 0;
6
6
 
7
- const radar_1 = require("./../../series/radar/radar"), interface_1 = require("../../series/interface"), util_1 = require("../../util"), interface_2 = require("../interface"), rose_like_1 = require("../polar/rose-like"), vchart_1 = require("../../core/vchart");
7
+ const radar_1 = require("../../series/radar/radar"), interface_1 = require("../../series/interface"), util_1 = require("../../util"), interface_2 = require("../interface"), rose_like_1 = require("../polar/rose-like"), vchart_1 = require("../../core/vchart");
8
8
 
9
9
  vchart_1.VChart.useSeries([ radar_1.RadarSeries ]);
10
10
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/chart/radar/radar.ts"],"names":[],"mappings":";;;AAAA,sDAAyD;AACzD,sDAAwD;AACxD,qCAA8C;AAC9C,4CAA6C;AAC7C,kDAAmD;AACnD,8CAA2C;AAC3C,eAAM,CAAC,SAAS,CAAC,CAAC,mBAAW,CAAC,CAAC,CAAC;AAEhC,MAAa,UAAW,SAAQ,yBAAa;IAA7C;;QAGW,SAAI,GAAW,yBAAa,CAAC,KAAK,CAAC;QACnC,eAAU,GAAW,0BAAc,CAAC,KAAK,CAAC;IAqDrD,CAAC;IAnDW,qBAAqB,CAAC,IAAS;;QACvC,uCACK,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,KACpC,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,IAAI,EAAE,IAAA,gBAAS,EACb;gBACE,OAAO,EAAE,KAAK;aACf,EACD,IAAI,CAAC,IAAI,CACV,EACD,UAAU,EAAE,MAAA,IAAI,CAAC,UAAU,mCAAI,MAAM,EACrC,WAAW,EAAE,IAAI,CAAC,WAAW,IAC7B;IACJ,CAAC;IAED,aAAa,CAAC,IAAS;;QACrB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAE1B,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAS,EAAE,EAAE;YACtC,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;gBAC5B,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;oBACnD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;wBACrB,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;qBACvC;gBACH,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;oBACd,IAAI,CAAC,IAAI,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;iBAC7C;aACF;QACH,CAAC,CAAC,CAAC;QAGH,IAAI,CAAC,SAAS,GAAG,IAAA,YAAK,EAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YAC9D,OAAO,IAAA,gBAAS,EACd;gBACE,aAAa,EAAE;oBACb,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE;wBACJ,OAAO,EAAE,IAAI;wBACb,IAAI,EAAE,MAAM;qBACb;iBACF;aACF,EACD,YAAY,CACb,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;;AAxDH,gCAyDC;AAxDiB,eAAI,GAAW,yBAAa,CAAC,KAAK,CAAC;AACnC,eAAI,GAAW,eAAe,CAAC","file":"radar.js","sourcesContent":["import { RadarSeries } from './../../series/radar/radar';\nimport { SeriesTypeEnum } from '../../series/interface';\nimport { array, mergeSpec } from '../../util';\nimport { ChartTypeEnum } from '../interface';\nimport { RoseLikeChart } from '../polar/rose-like';\nimport { VChart } from '../../core/vchart';\nVChart.useSeries([RadarSeries]);\n\nexport class RadarChart extends RoseLikeChart {\n static readonly type: string = ChartTypeEnum.radar;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.radar;\n readonly seriesType: string = SeriesTypeEnum.radar;\n\n protected _getDefaultSeriesSpec(spec: any): any {\n return {\n ...super._getDefaultSeriesSpec(spec),\n seriesField: spec.seriesField,\n line: spec.line,\n point: spec.point,\n stack: spec.stack,\n percent: spec.percent,\n area: mergeSpec(\n {\n visible: false\n },\n spec.area\n ),\n seriesMark: spec.seriesMark ?? 'area',\n activePoint: spec.activePoint\n };\n }\n\n transformSpec(spec: any) {\n super.transformSpec(spec);\n //默认不显示轴的domainLine和Tick\n (spec.axes ?? []).forEach((axis: any) => {\n if (axis.orient === 'radius') {\n ['domainLine', 'label', 'tick'].forEach(configName => {\n if (!axis[configName]) {\n axis[configName] = { visible: false };\n }\n });\n if (!axis.grid) {\n axis.grid = { visible: true, smooth: true };\n }\n }\n });\n\n // set default config for crosshair\n spec.crosshair = array(spec.crosshair || {}).map(crosshairCfg => {\n return mergeSpec(\n {\n categoryField: {\n visible: true,\n line: {\n visible: true,\n type: 'line'\n }\n }\n },\n crosshairCfg\n );\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/chart/radar/radar.ts"],"names":[],"mappings":";;;AAAA,oDAAuD;AACvD,sDAAwD;AACxD,qCAA8C;AAC9C,4CAA6C;AAC7C,kDAAmD;AACnD,8CAA2C;AAC3C,eAAM,CAAC,SAAS,CAAC,CAAC,mBAAW,CAAC,CAAC,CAAC;AAEhC,MAAa,UAAW,SAAQ,yBAAa;IAA7C;;QAGW,SAAI,GAAW,yBAAa,CAAC,KAAK,CAAC;QACnC,eAAU,GAAW,0BAAc,CAAC,KAAK,CAAC;IAqDrD,CAAC;IAnDW,qBAAqB,CAAC,IAAS;;QACvC,uCACK,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,KACpC,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,IAAI,EAAE,IAAA,gBAAS,EACb;gBACE,OAAO,EAAE,KAAK;aACf,EACD,IAAI,CAAC,IAAI,CACV,EACD,UAAU,EAAE,MAAA,IAAI,CAAC,UAAU,mCAAI,MAAM,EACrC,WAAW,EAAE,IAAI,CAAC,WAAW,IAC7B;IACJ,CAAC;IAED,aAAa,CAAC,IAAS;;QACrB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAE1B,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAS,EAAE,EAAE;YACtC,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;gBAC5B,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;oBACnD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;wBACrB,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;qBACvC;gBACH,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;oBACd,IAAI,CAAC,IAAI,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;iBAC7C;aACF;QACH,CAAC,CAAC,CAAC;QAGH,IAAI,CAAC,SAAS,GAAG,IAAA,YAAK,EAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YAC9D,OAAO,IAAA,gBAAS,EACd;gBACE,aAAa,EAAE;oBACb,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE;wBACJ,OAAO,EAAE,IAAI;wBACb,IAAI,EAAE,MAAM;qBACb;iBACF;aACF,EACD,YAAY,CACb,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;;AAxDH,gCAyDC;AAxDiB,eAAI,GAAW,yBAAa,CAAC,KAAK,CAAC;AACnC,eAAI,GAAW,eAAe,CAAC","file":"radar.js","sourcesContent":["import { RadarSeries } from '../../series/radar/radar';\nimport { SeriesTypeEnum } from '../../series/interface';\nimport { array, mergeSpec } from '../../util';\nimport { ChartTypeEnum } from '../interface';\nimport { RoseLikeChart } from '../polar/rose-like';\nimport { VChart } from '../../core/vchart';\nVChart.useSeries([RadarSeries]);\n\nexport class RadarChart extends RoseLikeChart {\n static readonly type: string = ChartTypeEnum.radar;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.radar;\n readonly seriesType: string = SeriesTypeEnum.radar;\n\n protected _getDefaultSeriesSpec(spec: any): any {\n return {\n ...super._getDefaultSeriesSpec(spec),\n seriesField: spec.seriesField,\n line: spec.line,\n point: spec.point,\n stack: spec.stack,\n percent: spec.percent,\n area: mergeSpec(\n {\n visible: false\n },\n spec.area\n ),\n seriesMark: spec.seriesMark ?? 'area',\n activePoint: spec.activePoint\n };\n }\n\n transformSpec(spec: any) {\n super.transformSpec(spec);\n //默认不显示轴的domainLine和Tick\n (spec.axes ?? []).forEach((axis: any) => {\n if (axis.orient === 'radius') {\n ['domainLine', 'label', 'tick'].forEach(configName => {\n if (!axis[configName]) {\n axis[configName] = { visible: false };\n }\n });\n if (!axis.grid) {\n axis.grid = { visible: true, smooth: true };\n }\n }\n });\n\n // set default config for crosshair\n spec.crosshair = array(spec.crosshair || {}).map(crosshairCfg => {\n return mergeSpec(\n {\n categoryField: {\n visible: true,\n line: {\n visible: true,\n type: 'line'\n }\n }\n },\n crosshairCfg\n );\n });\n }\n}\n"]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.RoseChart = void 0;
6
6
 
7
- const rose_1 = require("./../../series/rose/rose"), constant_1 = require("../../constant"), interface_1 = require("../../series/interface"), interface_2 = require("../interface"), rose_like_1 = require("../polar/rose-like"), vchart_1 = require("../../core/vchart"), util_1 = require("../../util");
7
+ const rose_1 = require("../../series/rose/rose"), constant_1 = require("../../constant"), interface_1 = require("../../series/interface"), interface_2 = require("../interface"), rose_like_1 = require("../polar/rose-like"), vchart_1 = require("../../core/vchart"), util_1 = require("../../util");
8
8
 
9
9
  vchart_1.VChart.useSeries([ rose_1.RoseSeries ]);
10
10
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/chart/rose/rose.ts"],"names":[],"mappings":";;;AAAA,mDAAsD;AAEtD,6CAAsD;AACtD,sDAAwD;AACxD,4CAA6C;AAC7C,kDAAmD;AACnD,8CAA2C;AAC3C,qCAA8C;AAC9C,eAAM,CAAC,SAAS,CAAC,CAAC,iBAAU,CAAC,CAAC,CAAC;AAE/B,MAAa,SAAU,SAAQ,yBAAa;IAA5C;;QAGW,SAAI,GAAW,yBAAa,CAAC,IAAI,CAAC;QAClC,eAAU,GAAW,0BAAc,CAAC,IAAI,CAAC;IA0CpD,CAAC;IAxCW,qBAAqB,CAAC,IAAS;;QACvC,uCACK,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,KACpC,MAAM,EAAE,MAAA,IAAI,CAAC,MAAM,mCAAI,+BAAoB,EAC3C,WAAW,EAAE,MAAA,IAAI,CAAC,WAAW,mCAAI,+BAAoB,EACrD,WAAW,EAAE,MAAA,IAAI,CAAC,WAAW,mCAAI,CAAC,EAClC,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,IAAI,CAAC,OAAO,IAErB;IACJ,CAAC;IAED,aAAa,CAAC,IAAS;;QACrB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAE1B,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAgB,EAAE,EAAE;YAC7C,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;gBAC3D,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;oBACrB,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;iBACvC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAGH,IAAI,CAAC,SAAS,GAAG,IAAA,YAAK,EAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YAC9D,OAAO,IAAA,gBAAS,EACd;gBACE,aAAa,EAAE;oBACb,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE;wBACJ,OAAO,EAAE,IAAI;wBACb,IAAI,EAAE,MAAM;qBACb;iBACF;aACF,EACD,YAAY,CACb,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;;AA7CH,8BA8CC;AA7CiB,cAAI,GAAW,yBAAa,CAAC,IAAI,CAAC;AAClC,cAAI,GAAW,eAAe,CAAC","file":"rose.js","sourcesContent":["import { RoseSeries } from './../../series/rose/rose';\nimport type { IPolarAxis } from '../../component/axis/polar/interface';\nimport { POLAR_DEFAULT_RADIUS } from '../../constant';\nimport { SeriesTypeEnum } from '../../series/interface';\nimport { ChartTypeEnum } from '../interface';\nimport { RoseLikeChart } from '../polar/rose-like';\nimport { VChart } from '../../core/vchart';\nimport { array, mergeSpec } from '../../util';\nVChart.useSeries([RoseSeries]);\n\nexport class RoseChart extends RoseLikeChart {\n static readonly type: string = ChartTypeEnum.rose;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.rose;\n readonly seriesType: string = SeriesTypeEnum.rose;\n\n protected _getDefaultSeriesSpec(spec: any): any {\n return {\n ...super._getDefaultSeriesSpec(spec),\n radius: spec.radius ?? POLAR_DEFAULT_RADIUS,\n outerRadius: spec.outerRadius ?? POLAR_DEFAULT_RADIUS,\n innerRadius: spec.innerRadius ?? 0,\n seriesField: spec.seriesField,\n stack: spec.stack,\n percent: spec.percent\n // startAngle: radians(spec.startAngle || 0),\n };\n }\n\n transformSpec(spec: any) {\n super.transformSpec(spec);\n //默认不显示轴\n (spec.axes ?? []).forEach((axis: IPolarAxis) => {\n ['domainLine', 'grid', 'label', 'tick'].forEach(configName => {\n if (!axis[configName]) {\n axis[configName] = { visible: false };\n }\n });\n });\n\n // set default config for crosshair\n spec.crosshair = array(spec.crosshair || {}).map(crosshairCfg => {\n return mergeSpec(\n {\n categoryField: {\n visible: true,\n line: {\n visible: true,\n type: 'rect'\n }\n }\n },\n crosshairCfg\n );\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/chart/rose/rose.ts"],"names":[],"mappings":";;;AAAA,iDAAoD;AAEpD,6CAAsD;AACtD,sDAAwD;AACxD,4CAA6C;AAC7C,kDAAmD;AACnD,8CAA2C;AAC3C,qCAA8C;AAC9C,eAAM,CAAC,SAAS,CAAC,CAAC,iBAAU,CAAC,CAAC,CAAC;AAE/B,MAAa,SAAU,SAAQ,yBAAa;IAA5C;;QAGW,SAAI,GAAW,yBAAa,CAAC,IAAI,CAAC;QAClC,eAAU,GAAW,0BAAc,CAAC,IAAI,CAAC;IA0CpD,CAAC;IAxCW,qBAAqB,CAAC,IAAS;;QACvC,uCACK,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,KACpC,MAAM,EAAE,MAAA,IAAI,CAAC,MAAM,mCAAI,+BAAoB,EAC3C,WAAW,EAAE,MAAA,IAAI,CAAC,WAAW,mCAAI,+BAAoB,EACrD,WAAW,EAAE,MAAA,IAAI,CAAC,WAAW,mCAAI,CAAC,EAClC,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,IAAI,CAAC,OAAO,IAErB;IACJ,CAAC;IAED,aAAa,CAAC,IAAS;;QACrB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAE1B,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAgB,EAAE,EAAE;YAC7C,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;gBAC3D,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;oBACrB,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;iBACvC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAGH,IAAI,CAAC,SAAS,GAAG,IAAA,YAAK,EAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YAC9D,OAAO,IAAA,gBAAS,EACd;gBACE,aAAa,EAAE;oBACb,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE;wBACJ,OAAO,EAAE,IAAI;wBACb,IAAI,EAAE,MAAM;qBACb;iBACF;aACF,EACD,YAAY,CACb,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;;AA7CH,8BA8CC;AA7CiB,cAAI,GAAW,yBAAa,CAAC,IAAI,CAAC;AAClC,cAAI,GAAW,eAAe,CAAC","file":"rose.js","sourcesContent":["import { RoseSeries } from '../../series/rose/rose';\nimport type { IPolarAxis } from '../../component/axis/polar/interface';\nimport { POLAR_DEFAULT_RADIUS } from '../../constant';\nimport { SeriesTypeEnum } from '../../series/interface';\nimport { ChartTypeEnum } from '../interface';\nimport { RoseLikeChart } from '../polar/rose-like';\nimport { VChart } from '../../core/vchart';\nimport { array, mergeSpec } from '../../util';\nVChart.useSeries([RoseSeries]);\n\nexport class RoseChart extends RoseLikeChart {\n static readonly type: string = ChartTypeEnum.rose;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.rose;\n readonly seriesType: string = SeriesTypeEnum.rose;\n\n protected _getDefaultSeriesSpec(spec: any): any {\n return {\n ...super._getDefaultSeriesSpec(spec),\n radius: spec.radius ?? POLAR_DEFAULT_RADIUS,\n outerRadius: spec.outerRadius ?? POLAR_DEFAULT_RADIUS,\n innerRadius: spec.innerRadius ?? 0,\n seriesField: spec.seriesField,\n stack: spec.stack,\n percent: spec.percent\n // startAngle: radians(spec.startAngle || 0),\n };\n }\n\n transformSpec(spec: any) {\n super.transformSpec(spec);\n //默认不显示轴\n (spec.axes ?? []).forEach((axis: IPolarAxis) => {\n ['domainLine', 'grid', 'label', 'tick'].forEach(configName => {\n if (!axis[configName]) {\n axis[configName] = { visible: false };\n }\n });\n });\n\n // set default config for crosshair\n spec.crosshair = array(spec.crosshair || {}).map(crosshairCfg => {\n return mergeSpec(\n {\n categoryField: {\n visible: true,\n line: {\n visible: true,\n type: 'rect'\n }\n }\n },\n crosshairCfg\n );\n });\n }\n}\n"]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.ScatterChart = void 0;
6
6
 
7
- const scatter_1 = require("./../../series/scatter/scatter"), interface_1 = require("../../series/interface"), cartesian_1 = require("../cartesian/cartesian"), interface_2 = require("../interface"), vchart_1 = require("../../core/vchart");
7
+ const scatter_1 = require("../../series/scatter/scatter"), interface_1 = require("../../series/interface"), cartesian_1 = require("../cartesian/cartesian"), interface_2 = require("../interface"), vchart_1 = require("../../core/vchart");
8
8
 
9
9
  vchart_1.VChart.useSeries([ scatter_1.ScatterSeries ]);
10
10
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/chart/scatter/scatter.ts"],"names":[],"mappings":";;;AAAA,4DAA+D;AAC/D,sDAAwD;AACxD,sDAAwD;AACxD,4CAA6C;AAE7C,8CAA2C;AAC3C,eAAM,CAAC,SAAS,CAAC,CAAC,uBAAa,CAAC,CAAC,CAAC;AAElC,MAAa,YAAa,SAAQ,0BAAc;IAAhD;;QAGW,SAAI,GAAW,yBAAa,CAAC,OAAO,CAAC;QACrC,eAAU,GAAW,0BAAc,CAAC,OAAO,CAAC;IAYvD,CAAC;IAVW,qBAAqB,CAAC,IAAuB;QACrD,uCACK,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,KACpC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,UAAU,EAAE,IAAI,CAAC,UAAU,IAC3B;IACJ,CAAC;;AAfH,oCAgBC;AAfiB,iBAAI,GAAW,yBAAa,CAAC,OAAO,CAAC;AACrC,iBAAI,GAAW,eAAe,CAAC","file":"scatter.js","sourcesContent":["import { ScatterSeries } from './../../series/scatter/scatter';\nimport { SeriesTypeEnum } from '../../series/interface';\nimport { CartesianChart } from '../cartesian/cartesian';\nimport { ChartTypeEnum } from '../interface';\nimport type { IScatterChartSpec } from './interface';\nimport { VChart } from '../../core/vchart';\nVChart.useSeries([ScatterSeries]);\n\nexport class ScatterChart extends CartesianChart {\n static readonly type: string = ChartTypeEnum.scatter;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.scatter;\n readonly seriesType: string = SeriesTypeEnum.scatter;\n\n protected _getDefaultSeriesSpec(spec: IScatterChartSpec): any {\n return {\n ...super._getDefaultSeriesSpec(spec),\n point: spec.point,\n size: spec.size,\n sizeField: spec.sizeField,\n shape: spec.shape,\n shapeField: spec.shapeField\n };\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/chart/scatter/scatter.ts"],"names":[],"mappings":";;;AAAA,0DAA6D;AAC7D,sDAAwD;AACxD,sDAAwD;AACxD,4CAA6C;AAE7C,8CAA2C;AAC3C,eAAM,CAAC,SAAS,CAAC,CAAC,uBAAa,CAAC,CAAC,CAAC;AAElC,MAAa,YAAa,SAAQ,0BAAc;IAAhD;;QAGW,SAAI,GAAW,yBAAa,CAAC,OAAO,CAAC;QACrC,eAAU,GAAW,0BAAc,CAAC,OAAO,CAAC;IAYvD,CAAC;IAVW,qBAAqB,CAAC,IAAuB;QACrD,uCACK,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,KACpC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,UAAU,EAAE,IAAI,CAAC,UAAU,IAC3B;IACJ,CAAC;;AAfH,oCAgBC;AAfiB,iBAAI,GAAW,yBAAa,CAAC,OAAO,CAAC;AACrC,iBAAI,GAAW,eAAe,CAAC","file":"scatter.js","sourcesContent":["import { ScatterSeries } from '../../series/scatter/scatter';\nimport { SeriesTypeEnum } from '../../series/interface';\nimport { CartesianChart } from '../cartesian/cartesian';\nimport { ChartTypeEnum } from '../interface';\nimport type { IScatterChartSpec } from './interface';\nimport { VChart } from '../../core/vchart';\nVChart.useSeries([ScatterSeries]);\n\nexport class ScatterChart extends CartesianChart {\n static readonly type: string = ChartTypeEnum.scatter;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.scatter;\n readonly seriesType: string = SeriesTypeEnum.scatter;\n\n protected _getDefaultSeriesSpec(spec: IScatterChartSpec): any {\n return {\n ...super._getDefaultSeriesSpec(spec),\n point: spec.point,\n size: spec.size,\n sizeField: spec.sizeField,\n shape: spec.shape,\n shapeField: spec.shapeField\n };\n }\n}\n"]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.SequenceChart = void 0;
6
6
 
7
- const link_1 = require("./../../series/link/link"), dot_1 = require("./../../series/dot/dot"), base_chart_1 = require("../base-chart"), initialize_1 = require("../../data/initialize"), factory_1 = require("../../core/factory"), type_1 = require("../../series/interface/type"), interface_1 = require("../interface"), vchart_1 = require("../../core/vchart");
7
+ const link_1 = require("../../series/link/link"), dot_1 = require("../../series/dot/dot"), base_chart_1 = require("../base-chart"), initialize_1 = require("../../data/initialize"), factory_1 = require("../../core/factory"), type_1 = require("../../series/interface/type"), interface_1 = require("../interface"), vchart_1 = require("../../core/vchart");
8
8
 
9
9
  vchart_1.VChart.useSeries([ dot_1.DotSeries, link_1.LinkSeries ]);
10
10
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/chart/sequence/sequence.ts"],"names":[],"mappings":"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","file":"sequence.js","sourcesContent":["import { LinkSeries } from './../../series/link/link';\nimport { DotSeries } from './../../series/dot/dot';\nimport type { IGridLayoutSpec } from './../../layout/interface';\nimport { BaseChart } from '../base-chart';\nimport type { ISequenceChartSpec, ISequenceSeriesSpec } from './interface';\nimport type { IRegion, IRegionSpec } from '../../region/interface';\nimport { dataToDataView } from '../../data/initialize';\nimport { Factory } from '../../core/factory';\nimport { SeriesTypeEnum } from '../../series/interface/type';\nimport { ChartTypeEnum } from '../interface';\nimport type { Datum } from '../../typings';\nimport type { DataView } from '@visactor/vdataset';\nimport type { ISeriesOption } from '../../series/interface';\nimport { VChart } from '../../core/vchart';\nVChart.useSeries([DotSeries, LinkSeries]);\n\nexport class SequenceChart extends BaseChart {\n static readonly type: string = ChartTypeEnum.sequence;\n static readonly view: string = 'singleDefault'; // csj-Q: view是什么含义\n readonly type: string = ChartTypeEnum.sequence;\n\n /**\n * @override\n * @description 主要是处理布局逻辑 & 部分仅针对sequenceChart的特殊属性\n */\n transformSpec(spec: ISequenceChartSpec): void {\n super.transformSpec(spec);\n\n // 初始化目标属性\n let rowNum = 0;\n const elements: any[] = [];\n const region: IRegionSpec[] = [];\n const axes: any = [];\n const rowHeight: any = [];\n\n // 计算默认series padding和series高度\n const defaultSeriesPadding = 20;\n const seriesRegionNum = spec.series.filter(d => d.type !== SeriesTypeEnum.link).length;\n const defaultSeriesRowHeight =\n (this._layoutRect.height - defaultSeriesPadding * (seriesRegionNum - 1)) / seriesRegionNum;\n const leftAppendPadding = spec?.appendPadding?.left || 0;\n const rightAppendPadding = spec?.appendPadding?.right || 0;\n\n if ((spec as any)?.legends) {\n elements.push({\n modelId: `legendRow${rowNum}`,\n col: 1,\n row: rowNum\n });\n (spec as any).legends[0].id = `legendRow${rowNum}`;\n rowHeight.push({\n index: rowNum,\n size: 20\n });\n rowNum++;\n }\n\n if ((spec as any)?.dataZoom) {\n elements.push({\n modelId: `dataZoomRow${rowNum}`,\n col: 1,\n row: rowNum\n });\n (spec as any).dataZoom[0].id = `dataZoomRow${rowNum}`;\n rowNum++;\n\n // 增加空行,拟合series padding效果\n rowHeight.push({\n index: rowNum,\n size: 10\n });\n rowNum++;\n }\n\n // 遍历axes\n // 1. 在elements中添加时间轴元素\n // 2. 并统计rowNum\n // 在sequenceChart中,axes有几种情况(本期先考虑1和2,也就是默认只有1个top轴):1.不声明axes 2.声明且为仅有一个top axes 3.声明且仅有一个bottom axes 4.多个axes组合\n // if(spec.axes === null || spec?.axes[0]?.orient === 'top') {\n // Tips: id should not has duplicate name\n region.push({\n id: `regionAxesRow${rowNum}`\n });\n elements.push({\n modelId: `axesRow${rowNum}`,\n col: 1,\n row: rowNum\n });\n spec.axes[0].id = `axesRow${rowNum}`;\n spec.axes[0].regionIndex = Array.from(Array(this._spec.series.length - 1), (_, index) => index + 1);\n rowNum++;\n // }\n\n // 遍历series\n // 1. 在spec.layout => elements、region数组和spec.axes的数组中中添加元素\n // 2. 为series绑定regionIndex\n // 3. 统计rowNum\n // 4. 用空行拟合series padding\n spec?.series?.forEach((seriesSpec: ISequenceSeriesSpec) => {\n if (\n ([SeriesTypeEnum.bar, SeriesTypeEnum.line, SeriesTypeEnum.area, SeriesTypeEnum.dot] as string[]).includes(\n seriesSpec.type\n )\n ) {\n // elements数组\n elements.push({\n modelId: `${seriesSpec.type}Row${rowNum}`,\n col: 1,\n row: rowNum\n });\n elements.push({\n modelId: `axesLeftRow${rowNum}`,\n col: 0,\n row: rowNum\n });\n\n // region数组\n region.push({\n id: `${seriesSpec.type}Row${rowNum}`,\n clip: false\n });\n\n rowHeight.push({\n index: rowNum,\n size: seriesSpec?.height || defaultSeriesRowHeight\n });\n\n // axes数组添加left axes(每个series都需要一个left axes)\n axes.push({\n orient: 'left',\n id: `axesLeftRow${rowNum}`,\n type: seriesSpec.type === SeriesTypeEnum.dot ? 'band' : 'linear',\n visible: seriesSpec.type !== SeriesTypeEnum.dot,\n\n // 对于bar series,axes title模拟bar title\n title: {\n visible: true,\n // 特殊处理时序图的 title 样式,默认的坐标轴左右轴会进行旋转\n autoRotate: false,\n style: {\n text: (seriesSpec as any)?.barTitle,\n dx: -20,\n textBaseline: 'middle',\n textAlign: 'end'\n }\n },\n // 对于bar series,axes grid模拟series分割线\n grid: {\n visible:\n typeof (seriesSpec as any)?.grid?.visible === 'boolean' ? (seriesSpec as any)?.grid?.visible : true, // bar grid默认绘制\n style: (datum: Datum, index: number) => {\n let lineWidth = 0;\n if (index === 0) {\n const style = (seriesSpec as any)?.grid?.style;\n\n // 兼容一下spec中通过strokeWidth申明的方式\n lineWidth = style?.lineWidth ?? style?.strokeWidth ?? 1;\n }\n return {\n lineWidth,\n stroke: (seriesSpec as any)?.grid?.style?.stroke || '#dfdfdf',\n lineDash: [0, 0]\n };\n }\n },\n // 其他轴元素隐藏\n domainLine: {\n visible: false\n },\n tick: {\n visible: false\n },\n label: {\n visible: false\n },\n\n // 绑定regionIndex\n regionIndex: region.length - 1\n });\n\n // seriesSpec绑定regionIndex\n seriesSpec.regionIndex = region.length - 1;\n\n rowNum++;\n\n // 增加空行,拟合series padding效果\n rowHeight.push({\n index: rowNum,\n size: seriesSpec?.padding || defaultSeriesPadding\n });\n rowNum++;\n\n // chart的leftAppendPadding用于具体元素的dx偏移\n (seriesSpec as any).leftAppendPadding = leftAppendPadding;\n\n // title和subTitle自动定位到画布最左端\n if (seriesSpec.type === SeriesTypeEnum.dot) {\n (seriesSpec as any).title.style.dx = -leftAppendPadding;\n (seriesSpec as any).subTitle.style.dx = -leftAppendPadding;\n }\n }\n });\n\n // 对于link series,所有属性跟随它绑定的dot series\n spec?.series?.forEach((seriesSpec: ISequenceSeriesSpec) => {\n if (seriesSpec.type === SeriesTypeEnum.link) {\n const dotRowNum = seriesSpec.dotSeriesIndex + 1;\n elements.push({\n modelId: `${seriesSpec.type}Row${dotRowNum}`,\n col: 1,\n row: dotRowNum - 1\n });\n seriesSpec.regionIndex = spec.series[seriesSpec.dotSeriesIndex].regionIndex;\n (seriesSpec as any).leftAppendPadding = leftAppendPadding;\n (seriesSpec as any).height = (spec.series[seriesSpec.dotSeriesIndex] as any).height;\n (seriesSpec as any).clipHeight = (spec.series[seriesSpec.dotSeriesIndex] as any).clipHeight;\n }\n });\n\n // 添加legends和datazoom的regionIndex\n if ((spec as any)?.legends) {\n (spec as any).legends[0].regionIndex = [region.length - 1];\n }\n // if ((spec as any)?.dataZoom) {\n // (spec as any).dataZoom[0].regionIndex = Array.from({length: region.length - 1},(item, index)=> index+1);\n // }\n\n const layout: IGridLayoutSpec = {\n type: 'grid',\n col: 3,\n row: rowNum,\n colWidth: [\n {\n index: 0,\n size: leftAppendPadding\n },\n {\n index: 2,\n size: rightAppendPadding\n }\n ],\n rowHeight: rowHeight,\n elements: elements\n };\n\n spec.layout = layout;\n spec.region = region;\n spec.axes?.push(...axes);\n }\n\n /**\n * @override\n * @description 主要是将link series关联的dot data放到link series中\n */\n createSeries(seriesSpec: ISequenceSeriesSpec[]) {\n seriesSpec.forEach((spec, index) => {\n // 自动填充数据\n if (!spec.data) {\n spec.data = this.getSeriesData(spec.dataId, spec.dataIndex);\n\n // link series添加关联的dot series data\n if (spec.type === SeriesTypeEnum.link) {\n spec.dataDot = this.getSeriesData(\n this._spec.series[spec.dotSeriesIndex].dataId,\n this._spec.series[spec.dotSeriesIndex].dataIndex\n );\n }\n } else {\n // 保证数据最终是 DataView 实例\n spec.data = dataToDataView(spec.data, this._dataSet, this._spec.data as DataView[], {\n onError: this._option.onError\n });\n // link series添加关联的dot series data\n if (spec.type === SeriesTypeEnum.link) {\n spec.dataDot = dataToDataView(\n this._spec.series[spec.dotSeriesIndex].data,\n this._dataSet,\n this._spec.data as DataView[],\n {\n onError: this._option.onError\n }\n );\n }\n }\n\n if (spec.type === SeriesTypeEnum.link) {\n spec.dotSeriesSpec = this._spec.series[spec.dotSeriesIndex];\n }\n\n let region: IRegion | undefined;\n if (spec.regionId) {\n region = this.getRegionsInUserId(spec.regionId);\n }\n if (!region) {\n region = this.getRegionsInIndex(spec.regionIndex ? [spec.regionIndex] : undefined)[0];\n }\n if (!region) {\n return;\n }\n const series = Factory.createSeries(spec.type, spec, {\n ...this._modelOption,\n region,\n specIndex: index,\n specKey: 'series',\n getTheme: () => this._theme,\n globalScale: this._globalScale\n } as ISeriesOption);\n\n if (series) {\n series.created();\n this._series.push(series);\n region.addSeries(series);\n }\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/chart/sequence/sequence.ts"],"names":[],"mappings":"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","file":"sequence.js","sourcesContent":["import { LinkSeries } from '../../series/link/link';\nimport { DotSeries } from '../../series/dot/dot';\nimport type { IGridLayoutSpec } from '../../layout/interface';\nimport { BaseChart } from '../base-chart';\nimport type { ISequenceChartSpec, ISequenceSeriesSpec } from './interface';\nimport type { IRegion, IRegionSpec } from '../../region/interface';\nimport { dataToDataView } from '../../data/initialize';\nimport { Factory } from '../../core/factory';\nimport { SeriesTypeEnum } from '../../series/interface/type';\nimport { ChartTypeEnum } from '../interface';\nimport type { Datum } from '../../typings';\nimport type { DataView } from '@visactor/vdataset';\nimport type { ISeriesOption } from '../../series/interface';\nimport { VChart } from '../../core/vchart';\nVChart.useSeries([DotSeries, LinkSeries]);\n\nexport class SequenceChart extends BaseChart {\n static readonly type: string = ChartTypeEnum.sequence;\n static readonly view: string = 'singleDefault'; // csj-Q: view是什么含义\n readonly type: string = ChartTypeEnum.sequence;\n\n /**\n * @override\n * @description 主要是处理布局逻辑 & 部分仅针对sequenceChart的特殊属性\n */\n transformSpec(spec: ISequenceChartSpec): void {\n super.transformSpec(spec);\n\n // 初始化目标属性\n let rowNum = 0;\n const elements: any[] = [];\n const region: IRegionSpec[] = [];\n const axes: any = [];\n const rowHeight: any = [];\n\n // 计算默认series padding和series高度\n const defaultSeriesPadding = 20;\n const seriesRegionNum = spec.series.filter(d => d.type !== SeriesTypeEnum.link).length;\n const defaultSeriesRowHeight =\n (this._layoutRect.height - defaultSeriesPadding * (seriesRegionNum - 1)) / seriesRegionNum;\n const leftAppendPadding = spec?.appendPadding?.left || 0;\n const rightAppendPadding = spec?.appendPadding?.right || 0;\n\n if ((spec as any)?.legends) {\n elements.push({\n modelId: `legendRow${rowNum}`,\n col: 1,\n row: rowNum\n });\n (spec as any).legends[0].id = `legendRow${rowNum}`;\n rowHeight.push({\n index: rowNum,\n size: 20\n });\n rowNum++;\n }\n\n if ((spec as any)?.dataZoom) {\n elements.push({\n modelId: `dataZoomRow${rowNum}`,\n col: 1,\n row: rowNum\n });\n (spec as any).dataZoom[0].id = `dataZoomRow${rowNum}`;\n rowNum++;\n\n // 增加空行,拟合series padding效果\n rowHeight.push({\n index: rowNum,\n size: 10\n });\n rowNum++;\n }\n\n // 遍历axes\n // 1. 在elements中添加时间轴元素\n // 2. 并统计rowNum\n // 在sequenceChart中,axes有几种情况(本期先考虑1和2,也就是默认只有1个top轴):1.不声明axes 2.声明且为仅有一个top axes 3.声明且仅有一个bottom axes 4.多个axes组合\n // if(spec.axes === null || spec?.axes[0]?.orient === 'top') {\n // Tips: id should not has duplicate name\n region.push({\n id: `regionAxesRow${rowNum}`\n });\n elements.push({\n modelId: `axesRow${rowNum}`,\n col: 1,\n row: rowNum\n });\n spec.axes[0].id = `axesRow${rowNum}`;\n spec.axes[0].regionIndex = Array.from(Array(this._spec.series.length - 1), (_, index) => index + 1);\n rowNum++;\n // }\n\n // 遍历series\n // 1. 在spec.layout => elements、region数组和spec.axes的数组中中添加元素\n // 2. 为series绑定regionIndex\n // 3. 统计rowNum\n // 4. 用空行拟合series padding\n spec?.series?.forEach((seriesSpec: ISequenceSeriesSpec) => {\n if (\n ([SeriesTypeEnum.bar, SeriesTypeEnum.line, SeriesTypeEnum.area, SeriesTypeEnum.dot] as string[]).includes(\n seriesSpec.type\n )\n ) {\n // elements数组\n elements.push({\n modelId: `${seriesSpec.type}Row${rowNum}`,\n col: 1,\n row: rowNum\n });\n elements.push({\n modelId: `axesLeftRow${rowNum}`,\n col: 0,\n row: rowNum\n });\n\n // region数组\n region.push({\n id: `${seriesSpec.type}Row${rowNum}`,\n clip: false\n });\n\n rowHeight.push({\n index: rowNum,\n size: seriesSpec?.height || defaultSeriesRowHeight\n });\n\n // axes数组添加left axes(每个series都需要一个left axes)\n axes.push({\n orient: 'left',\n id: `axesLeftRow${rowNum}`,\n type: seriesSpec.type === SeriesTypeEnum.dot ? 'band' : 'linear',\n visible: seriesSpec.type !== SeriesTypeEnum.dot,\n\n // 对于bar series,axes title模拟bar title\n title: {\n visible: true,\n // 特殊处理时序图的 title 样式,默认的坐标轴左右轴会进行旋转\n autoRotate: false,\n style: {\n text: (seriesSpec as any)?.barTitle,\n dx: -20,\n textBaseline: 'middle',\n textAlign: 'end'\n }\n },\n // 对于bar series,axes grid模拟series分割线\n grid: {\n visible:\n typeof (seriesSpec as any)?.grid?.visible === 'boolean' ? (seriesSpec as any)?.grid?.visible : true, // bar grid默认绘制\n style: (datum: Datum, index: number) => {\n let lineWidth = 0;\n if (index === 0) {\n const style = (seriesSpec as any)?.grid?.style;\n\n // 兼容一下spec中通过strokeWidth申明的方式\n lineWidth = style?.lineWidth ?? style?.strokeWidth ?? 1;\n }\n return {\n lineWidth,\n stroke: (seriesSpec as any)?.grid?.style?.stroke || '#dfdfdf',\n lineDash: [0, 0]\n };\n }\n },\n // 其他轴元素隐藏\n domainLine: {\n visible: false\n },\n tick: {\n visible: false\n },\n label: {\n visible: false\n },\n\n // 绑定regionIndex\n regionIndex: region.length - 1\n });\n\n // seriesSpec绑定regionIndex\n seriesSpec.regionIndex = region.length - 1;\n\n rowNum++;\n\n // 增加空行,拟合series padding效果\n rowHeight.push({\n index: rowNum,\n size: seriesSpec?.padding || defaultSeriesPadding\n });\n rowNum++;\n\n // chart的leftAppendPadding用于具体元素的dx偏移\n (seriesSpec as any).leftAppendPadding = leftAppendPadding;\n\n // title和subTitle自动定位到画布最左端\n if (seriesSpec.type === SeriesTypeEnum.dot) {\n (seriesSpec as any).title.style.dx = -leftAppendPadding;\n (seriesSpec as any).subTitle.style.dx = -leftAppendPadding;\n }\n }\n });\n\n // 对于link series,所有属性跟随它绑定的dot series\n spec?.series?.forEach((seriesSpec: ISequenceSeriesSpec) => {\n if (seriesSpec.type === SeriesTypeEnum.link) {\n const dotRowNum = seriesSpec.dotSeriesIndex + 1;\n elements.push({\n modelId: `${seriesSpec.type}Row${dotRowNum}`,\n col: 1,\n row: dotRowNum - 1\n });\n seriesSpec.regionIndex = spec.series[seriesSpec.dotSeriesIndex].regionIndex;\n (seriesSpec as any).leftAppendPadding = leftAppendPadding;\n (seriesSpec as any).height = (spec.series[seriesSpec.dotSeriesIndex] as any).height;\n (seriesSpec as any).clipHeight = (spec.series[seriesSpec.dotSeriesIndex] as any).clipHeight;\n }\n });\n\n // 添加legends和datazoom的regionIndex\n if ((spec as any)?.legends) {\n (spec as any).legends[0].regionIndex = [region.length - 1];\n }\n // if ((spec as any)?.dataZoom) {\n // (spec as any).dataZoom[0].regionIndex = Array.from({length: region.length - 1},(item, index)=> index+1);\n // }\n\n const layout: IGridLayoutSpec = {\n type: 'grid',\n col: 3,\n row: rowNum,\n colWidth: [\n {\n index: 0,\n size: leftAppendPadding\n },\n {\n index: 2,\n size: rightAppendPadding\n }\n ],\n rowHeight: rowHeight,\n elements: elements\n };\n\n spec.layout = layout;\n spec.region = region;\n spec.axes?.push(...axes);\n }\n\n /**\n * @override\n * @description 主要是将link series关联的dot data放到link series中\n */\n createSeries(seriesSpec: ISequenceSeriesSpec[]) {\n seriesSpec.forEach((spec, index) => {\n // 自动填充数据\n if (!spec.data) {\n spec.data = this.getSeriesData(spec.dataId, spec.dataIndex);\n\n // link series添加关联的dot series data\n if (spec.type === SeriesTypeEnum.link) {\n spec.dataDot = this.getSeriesData(\n this._spec.series[spec.dotSeriesIndex].dataId,\n this._spec.series[spec.dotSeriesIndex].dataIndex\n );\n }\n } else {\n // 保证数据最终是 DataView 实例\n spec.data = dataToDataView(spec.data, this._dataSet, this._spec.data as DataView[], {\n onError: this._option.onError\n });\n // link series添加关联的dot series data\n if (spec.type === SeriesTypeEnum.link) {\n spec.dataDot = dataToDataView(\n this._spec.series[spec.dotSeriesIndex].data,\n this._dataSet,\n this._spec.data as DataView[],\n {\n onError: this._option.onError\n }\n );\n }\n }\n\n if (spec.type === SeriesTypeEnum.link) {\n spec.dotSeriesSpec = this._spec.series[spec.dotSeriesIndex];\n }\n\n let region: IRegion | undefined;\n if (spec.regionId) {\n region = this.getRegionsInUserId(spec.regionId);\n }\n if (!region) {\n region = this.getRegionsInIndex(spec.regionIndex ? [spec.regionIndex] : undefined)[0];\n }\n if (!region) {\n return;\n }\n const series = Factory.createSeries(spec.type, spec, {\n ...this._modelOption,\n region,\n specIndex: index,\n specKey: 'series',\n getTheme: () => this._theme,\n globalScale: this._globalScale\n } as ISeriesOption);\n\n if (series) {\n series.created();\n this._series.push(series);\n region.addSeries(series);\n }\n });\n }\n}\n"]}
@@ -222,4 +222,5 @@ Object.defineProperty(exports, "TotalLabel", {
222
222
  get: function() {
223
223
  return totalLabel_1.TotalLabel;
224
224
  }
225
- });
225
+ });
226
+ //# sourceMappingURL=index.js.map
@@ -47,7 +47,15 @@ class DiscreteLegend extends base_legend_1.BaseLegend {
47
47
  return legendData.transform({
48
48
  type: "discreteLegendDataMake",
49
49
  options: {
50
- series: () => this._regions.reduce(((pre, r) => (pre.push(...r.getSeries()), pre)), []),
50
+ series: () => {
51
+ const result = [];
52
+ return (0, util_2.eachSeries)(this._regions, (s => {
53
+ result.push(s);
54
+ }), {
55
+ specIndex: this._spec.seriesIndex,
56
+ userId: this._spec.seriesId
57
+ }), result;
58
+ },
51
59
  seriesField: s => this._getSeriesLegendField(s)
52
60
  }
53
61
  }), legendData;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/legend/discrete/legend.ts"],"names":[],"mappings":";;;AAAA,6CAAoE;AACpE,iDAA8C;AAO9C,+CAAoD;AAEpD,iCAA6C;AAC7C,qDAA0E;AAC1E,wCAA0F;AAE1F,qEAA2D;AAE3D,qEAAiF;AAEjF,4EAA6G;AAC7G,gDAA4C;AAC5C,gDAA+C;AAE/C,MAAa,cAAe,SAAQ,wBAA+B;IAAnE;;QAEE,SAAI,GAAG,6BAAiB,CAAC,cAAc,CAAC;QACxC,SAAI,GAAW,6BAAiB,CAAC,cAAc,CAAC;IAgMlD,CAAC;IA5LC,MAAM,CAAC,eAAe,CAAC,IAAS,EAAE,OAAyB;QACzD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC;QACvD,IAAI,CAAC,UAAU,EAAE;YACf,OAAO,SAAS,CAAC;SAClB;QACD,IAAI,CAAC,IAAA,cAAO,EAAC,UAAU,CAAC,EAAE;YACxB,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,EAAE;gBACtD,OAAO,IAAI,cAAc,CAAC,UAAU,kCAC/B,OAAO,KACV,SAAS,EAAE,CAAC,EACZ,OAAO,EAAE,SAAS,IAClB,CAAC;aACJ;YACD,OAAO,SAAS,CAAC;SAClB;QACD,MAAM,OAAO,GAAc,EAAE,CAAC;QAC9B,UAAU,CAAC,OAAO,CAAC,CAAC,CAAsB,EAAE,CAAS,EAAE,EAAE;YACvD,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,EAAE;gBACpC,OAAO,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,CAAC,kCAAO,OAAO,KAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,IAAG,CAAC,CAAC;aACvF;QACH,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,CAAC,MAAwB;QAC3B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,IAAA,iBAAU,EACR,IAAI,CAAC,QAAQ,EACb,CAAC,CAAC,EAAE;YACF,CAAC,CAAC,iBAAiB,CAAC;gBAClB,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE;oBACP,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa;oBAClC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;oBAC1C,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC;iBACxE;aACF,CAAC,CAAC;QACL,CAAC,EACD;YACE,MAAM,EAAE,IAAI,CAAC,aAAa;YAC1B,SAAS,EAAE,IAAI,CAAC,YAAY;SAC7B,CACF,CAAC;IACJ,CAAC;IAES,eAAe;QACvB,IAAA,2CAAgC,EAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,sBAAsB,EAAE,+BAAoB,CAAC,CAAC;QACrG,IAAA,2CAAgC,EAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,wBAAwB,EAAE,iCAAsB,CAAC,CAAC;QACzG,MAAM,UAAU,GAAG,IAAI,mBAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACtD,UAAU,CAAC,SAAS,CAAC;YACnB,IAAI,EAAE,wBAAwB;YAC9B,OAAO,EAAE;gBACP,MAAM,EAAE,GAAG,EAAE;oBACX,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;wBACrC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;wBAC3B,OAAO,GAAG,CAAC;oBACb,CAAC,EAAE,EAAe,CAAC,CAAC;gBACtB,CAAC;gBACD,WAAW,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;aAC3D;SACF,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACpB,CAAC;IAES,qBAAqB,CAAC,CAAU;;QACxC,MAAM,YAAY,GAAG,CAAC,CAAC,cAAc,EAAE,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE;YACzB,OAAO,YAAY,CAAC;SACrB;QACD,IAAI,CAAC,CAAC,CAAC,UAAU,EAAE,EAAE;YACnB,OAAO,YAAY,CAAC;SACrB;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9E,IAAI,CAAC,SAAS,EAAE;YACd,OAAO,YAAY,CAAC;SACrB;QAGD,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;YACpB,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;SACzB;QAED,IAAI,CAAC,IAAA,uBAAgB,EAAC,SAAS,CAAC,MAAM,CAAC,EAAE;YACvC,OAAO,YAAY,CAAC;SACrB;QACD,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC;QAChF,IAAI,CAAC,UAAU,EAAE;YACf,OAAO,YAAY,CAAC;SACrB;QACD,OAAO,MAAA,MAAA,UAAU,CAAC,MAAM,0CAAG,CAAC,CAAC,mCAAI,YAAY,CAAC;IAChD,CAAC;IAES,iBAAiB;QACzB,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE;YAC9B,IAAI,CAAC,aAAa,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;SACtD;aAAM;YACL,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;SAC9E;IACH,CAAC;IAEO,oBAAoB,CAAC,KAAU;;QACrC,IAAI,CAAA,MAAA,KAAK,CAAC,KAAK,0CAAE,OAAO,KAAI,IAAA,cAAK,EAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,IAAA,cAAK,EAAC,MAAA,KAAK,CAAC,KAAK,CAAC,KAAK,0CAAE,IAAI,CAAC,EAAE;YAErF,MAAM,MAAM,GAAG,MAAA,MAAA,IAAI,CAAC,QAAQ,0CAAG,CAAC,CAAC,0CAAE,SAAS,GAAG,CAAC,CAAC,CAAC;YAClD,IAAI,CAAC,MAAM,EAAE;gBACX,OAAO;aACR;YAED,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,IAAA,oBAAa,EAAC,MAAM,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;SAChF;IACH,CAAC;IAES,oBAAoB,CAAC,IAAiB;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC;QACzG,MAAM,KAAK,mBACT,MAAM,EACN,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,EAC7B,MAAM,EAAE,IAAI,CAAC,YAAY,EACzB,QAAQ,EAAE,IAAI,CAAC,KAAK,EACpB,SAAS,EAAE,IAAI,CAAC,MAAM,IACnB,IAAA,0BAAmB,EAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CACzC,CAAC;QACF,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;QACjC,OAAO,KAAK,CAAC;IACf,CAAC;IAES,qBAAqB;QAC7B,OAAO,mCAAe,CAAC;IACzB,CAAC;IAES,UAAU;QAClB,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC;YAC7C,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,gCAAW,CAAC,eAAe,EAAE,CAAC,CAAM,EAAE,EAAE;gBAC7E,MAAM,YAAY,GAAG,IAAA,UAAG,EAAC,CAAC,EAAE,wBAAwB,CAAC,CAAC;gBACtD,QAAQ,IAAI,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;gBAC/C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAU,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9F,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,gCAAW,CAAC,eAAe,EAAE,CAAC,CAAM,EAAE,EAAE;gBAC7E,MAAM,MAAM,GAAG,IAAA,UAAG,EAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;gBAChC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAU,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YACxF,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,gCAAW,CAAC,iBAAiB,EAAE,CAAC,CAAM,EAAE,EAAE;gBAC/E,MAAM,MAAM,GAAG,IAAA,UAAG,EAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;gBAChC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAU,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YAC1F,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAEO,eAAe;QACrB,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE;;YAC7E,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACrC,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC7C,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAC/C,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YACnD,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACvC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACvC,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YACjD,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAC/C,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAE/C,OAAO;gBACL,KAAK,EAAE,KAAK,CAAC,GAAG;gBAChB,KAAK,EAAE;oBACL,IAAI;oBACJ,UAAU,EAAE,MAAA,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,KAAK,CAAC,SAAS,mCAAI,QAAQ;oBACrD,MAAM,EAAE,SAAS,KAAK,CAAC,IAAI,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;oBAC1D,WAAW,EAAE,IAAA,sBAAa,EAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;oBACzD,aAAa,EAAE,IAAA,sBAAa,EAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;oBAC/D,OAAO,EAAE,IAAA,sBAAa,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;oBAC7C,OAAO,EAAE,OAAO;oBAChB,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;oBAClC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;oBAC/B,YAAY;oBACZ,WAAW;oBACX,WAAW;iBACZ;aACF,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,OAAO,IAAA,mBAAU,EAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YAChC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;YACnG,CAAC,CAAC,UAAU,CAAC;IACjB,CAAC;;AAlMH,wCAmMC;AAlMQ,mBAAI,GAAG,6BAAiB,CAAC,cAAc,CAAC","file":"legend.js","sourcesContent":["import { isFunction, isNil, isValidNumber } from '@visactor/vutils';\nimport { DataView } from '@visactor/vdataset';\nimport type { IDiscreteLegendSpec, IDiscreteLegendTheme } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ISeries } from '../../../series/interface';\nimport type { IModelInitOption, ILayoutRect } from '../../../model/interface';\nimport type { IComponentOption } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { getLegendAttributes } from './util';\nimport { registerDataSetInstanceTransform } from '../../../data/register';\nimport { isArray, eachSeries, get, getFieldAlias, isDataDomainSpec } from '../../../util';\n// eslint-disable-next-line no-duplicate-imports\nimport { LegendEvent } from '@visactor/vrender-components';\n// eslint-disable-next-line no-duplicate-imports\nimport { DiscreteLegend as LegendComponent } from '@visactor/vrender-components';\nimport type { ILegend } from '../interface';\nimport { discreteLegendDataMake, discreteLegendFilter } from '../../../data/transforms/legend-data/discrete';\nimport { BaseLegend } from '../base-legend';\nimport { ChartEvent } from '../../../constant';\n\nexport class DiscreteLegend extends BaseLegend<IDiscreteLegendSpec> {\n static type = ComponentTypeEnum.discreteLegend;\n type = ComponentTypeEnum.discreteLegend;\n name: string = ComponentTypeEnum.discreteLegend;\n\n protected declare _theme: IDiscreteLegendTheme;\n\n static createComponent(spec: any, options: IComponentOption) {\n const legendSpec = spec.legends || options.defaultSpec;\n if (!legendSpec) {\n return undefined;\n }\n if (!isArray(legendSpec)) {\n if (!legendSpec.type || legendSpec.type === 'discrete') {\n return new DiscreteLegend(legendSpec, {\n ...options,\n specIndex: 0,\n specKey: 'legends'\n });\n }\n return undefined;\n }\n const legends: ILegend[] = [];\n legendSpec.forEach((s: IDiscreteLegendSpec, i: number) => {\n if (!s.type || s.type === 'discrete') {\n legends.push(new DiscreteLegend(s, { ...options, specIndex: i, specKey: 'legends' }));\n }\n });\n return legends;\n }\n\n init(option: IModelInitOption): void {\n super.init(option);\n eachSeries(\n this._regions,\n s => {\n s.addViewDataFilter({\n type: 'discreteLegendFilter',\n options: {\n selected: () => this._selectedData,\n field: () => this._getSeriesLegendField(s),\n data: () => this._legendData.getLatestData().map((obj: any) => obj.key)\n }\n });\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n\n protected _initLegendData(): DataView {\n registerDataSetInstanceTransform(this._option.dataSet, 'discreteLegendFilter', discreteLegendFilter);\n registerDataSetInstanceTransform(this._option.dataSet, 'discreteLegendDataMake', discreteLegendDataMake);\n const legendData = new DataView(this._option.dataSet);\n legendData.transform({\n type: 'discreteLegendDataMake',\n options: {\n series: () => {\n return this._regions.reduce((pre, r) => {\n pre.push(...r.getSeries());\n return pre;\n }, [] as ISeries[]);\n },\n seriesField: (s: ISeries) => this._getSeriesLegendField(s)\n }\n });\n\n return legendData;\n }\n\n protected _getSeriesLegendField(s: ISeries) {\n const defaultField = s.getSeriesField();\n if (!this._spec.scaleName) {\n return defaultField;\n }\n if (!s.getRawData()) {\n return defaultField;\n }\n const scaleSpec = this._option.globalScale.getScaleSpec(this._spec.scaleName);\n if (!scaleSpec) {\n return defaultField;\n }\n\n // field是只在图例指定了scale的情况下生效\n if (this._spec.field) {\n return this._spec.field;\n }\n\n if (!isDataDomainSpec(scaleSpec.domain)) {\n return defaultField;\n }\n const seriesData = scaleSpec.domain.find(d => d.dataId === s.getRawData().name);\n if (!seriesData) {\n return defaultField;\n }\n return seriesData.fields?.[0] ?? defaultField;\n }\n\n protected _initSelectedData(): void {\n if (this._spec.defaultSelected) {\n this._selectedData = [...this._spec.defaultSelected];\n } else {\n this._selectedData = this._legendData.getLatestData().map((d: any) => d.key);\n }\n }\n\n private _addDefaultTitleText(attrs: any) {\n if (attrs.title?.visible && isNil(attrs.title.text) && isNil(attrs.title.style?.text)) {\n // 默认使用第0个系列的 seriesField 别名\n const series = this._regions?.[0]?.getSeries()[0];\n if (!series) {\n return;\n }\n // 如果没有别名继续保持 空字符串\n attrs.title.text = getFieldAlias(series.getRawData(), series.getSeriesField());\n }\n }\n\n protected _getLegendAttributes(rect: ILayoutRect) {\n const layout = this.layoutOrient === 'bottom' || this.layoutOrient === 'top' ? 'horizontal' : 'vertical';\n const attrs = {\n layout,\n items: this._getLegendItems(),\n zIndex: this.layoutZIndex,\n maxWidth: rect.width,\n maxHeight: rect.height,\n ...getLegendAttributes(this._spec, rect)\n };\n this._addDefaultTitleText(attrs);\n return attrs;\n }\n\n protected _getLegendConstructor() {\n return LegendComponent;\n }\n\n protected _initEvent() {\n if (this._legendComponent) {\n const doFilter = this._spec.filter !== false;\n this._legendComponent.addEventListener(LegendEvent.legendItemClick, (e: any) => {\n const selectedData = get(e, 'detail.currentSelected');\n doFilter && this.setSelectedData(selectedData);\n this.event.emit(ChartEvent.legendItemClick, { model: this, value: selectedData, event: e });\n });\n\n this._legendComponent.addEventListener(LegendEvent.legendItemHover, (e: any) => {\n const detail = get(e, 'detail');\n this.event.emit(ChartEvent.legendItemHover, { model: this, value: detail, event: e });\n });\n\n this._legendComponent.addEventListener(LegendEvent.legendItemUnHover, (e: any) => {\n const detail = get(e, 'detail');\n this.event.emit(ChartEvent.legendItemUnHover, { model: this, value: detail, event: e });\n });\n }\n }\n\n private _getLegendItems() {\n const originData = (this._legendData.getLatestData() || []).map((datum: any) => {\n const fill = datum.style('fill') || datum.style('stroke');\n const stroke = datum.style('stroke');\n const lineWidth = datum.style('lineWidth');\n const symbolType = datum.style('symbolType');\n const fillOpacity = datum.style('fillOpacity');\n const strokeOpacity = datum.style('strokeOpacity');\n const opacity = datum.style('opacity');\n const texture = datum.style('texture');\n const textureColor = datum.style('textureColor');\n const outerBorder = datum.style('outerBorder');\n const innerBorder = datum.style('innerBorder');\n\n return {\n label: datum.key,\n shape: {\n fill,\n symbolType: symbolType ?? datum.shapeType ?? 'circle',\n stroke: lineWidth === 0 || fill === stroke ? null : stroke,\n fillOpacity: isValidNumber(fillOpacity) ? fillOpacity : 1,\n strokeOpacity: isValidNumber(strokeOpacity) ? strokeOpacity : 1,\n opacity: isValidNumber(opacity) ? opacity : 1,\n texture: texture,\n texturePadding: texture ? 1 : null,\n textureSize: texture ? 4 : null,\n textureColor,\n innerBorder,\n outerBorder\n }\n };\n });\n return isFunction(this._spec.data)\n ? this._spec.data(originData, this._option.globalScale.getScale('color'), this._option.globalScale)\n : originData;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/component/legend/discrete/legend.ts"],"names":[],"mappings":"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","file":"legend.js","sourcesContent":["import { isFunction, isNil, isValidNumber } from '@visactor/vutils';\nimport { DataView } from '@visactor/vdataset';\nimport type { IDiscreteLegendSpec, IDiscreteLegendTheme } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ISeries } from '../../../series/interface';\nimport type { IModelInitOption, ILayoutRect } from '../../../model/interface';\nimport type { IComponentOption } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { getLegendAttributes } from './util';\nimport { registerDataSetInstanceTransform } from '../../../data/register';\nimport { isArray, eachSeries, get, getFieldAlias, isDataDomainSpec } from '../../../util';\n// eslint-disable-next-line no-duplicate-imports\nimport { LegendEvent } from '@visactor/vrender-components';\n// eslint-disable-next-line no-duplicate-imports\nimport { DiscreteLegend as LegendComponent } from '@visactor/vrender-components';\nimport type { ILegend } from '../interface';\nimport { discreteLegendDataMake, discreteLegendFilter } from '../../../data/transforms/legend-data/discrete';\nimport { BaseLegend } from '../base-legend';\nimport { ChartEvent } from '../../../constant';\n\nexport class DiscreteLegend extends BaseLegend<IDiscreteLegendSpec> {\n static type = ComponentTypeEnum.discreteLegend;\n type = ComponentTypeEnum.discreteLegend;\n name: string = ComponentTypeEnum.discreteLegend;\n\n protected declare _theme: IDiscreteLegendTheme;\n\n static createComponent(spec: any, options: IComponentOption) {\n const legendSpec = spec.legends || options.defaultSpec;\n if (!legendSpec) {\n return undefined;\n }\n if (!isArray(legendSpec)) {\n if (!legendSpec.type || legendSpec.type === 'discrete') {\n return new DiscreteLegend(legendSpec, {\n ...options,\n specIndex: 0,\n specKey: 'legends'\n });\n }\n return undefined;\n }\n const legends: ILegend[] = [];\n legendSpec.forEach((s: IDiscreteLegendSpec, i: number) => {\n if (!s.type || s.type === 'discrete') {\n legends.push(new DiscreteLegend(s, { ...options, specIndex: i, specKey: 'legends' }));\n }\n });\n return legends;\n }\n\n init(option: IModelInitOption): void {\n super.init(option);\n eachSeries(\n this._regions,\n s => {\n s.addViewDataFilter({\n type: 'discreteLegendFilter',\n options: {\n selected: () => this._selectedData,\n field: () => this._getSeriesLegendField(s),\n data: () => this._legendData.getLatestData().map((obj: any) => obj.key)\n }\n });\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n\n protected _initLegendData(): DataView {\n registerDataSetInstanceTransform(this._option.dataSet, 'discreteLegendFilter', discreteLegendFilter);\n registerDataSetInstanceTransform(this._option.dataSet, 'discreteLegendDataMake', discreteLegendDataMake);\n const legendData = new DataView(this._option.dataSet);\n legendData.transform({\n type: 'discreteLegendDataMake',\n options: {\n series: () => {\n const result: ISeries[] = [];\n eachSeries(\n this._regions,\n s => {\n result.push(s);\n },\n {\n specIndex: this._spec.seriesIndex,\n userId: this._spec.seriesId\n }\n );\n return result;\n },\n seriesField: (s: ISeries) => this._getSeriesLegendField(s)\n }\n });\n\n return legendData;\n }\n\n protected _getSeriesLegendField(s: ISeries) {\n const defaultField = s.getSeriesField();\n if (!this._spec.scaleName) {\n return defaultField;\n }\n if (!s.getRawData()) {\n return defaultField;\n }\n const scaleSpec = this._option.globalScale.getScaleSpec(this._spec.scaleName);\n if (!scaleSpec) {\n return defaultField;\n }\n\n // field是只在图例指定了scale的情况下生效\n if (this._spec.field) {\n return this._spec.field;\n }\n\n if (!isDataDomainSpec(scaleSpec.domain)) {\n return defaultField;\n }\n const seriesData = scaleSpec.domain.find(d => d.dataId === s.getRawData().name);\n if (!seriesData) {\n return defaultField;\n }\n return seriesData.fields?.[0] ?? defaultField;\n }\n\n protected _initSelectedData(): void {\n if (this._spec.defaultSelected) {\n this._selectedData = [...this._spec.defaultSelected];\n } else {\n this._selectedData = this._legendData.getLatestData().map((d: any) => d.key);\n }\n }\n\n private _addDefaultTitleText(attrs: any) {\n if (attrs.title?.visible && isNil(attrs.title.text) && isNil(attrs.title.style?.text)) {\n // 默认使用第0个系列的 seriesField 别名\n const series = this._regions?.[0]?.getSeries()[0];\n if (!series) {\n return;\n }\n // 如果没有别名继续保持 空字符串\n attrs.title.text = getFieldAlias(series.getRawData(), series.getSeriesField());\n }\n }\n\n protected _getLegendAttributes(rect: ILayoutRect) {\n const layout = this.layoutOrient === 'bottom' || this.layoutOrient === 'top' ? 'horizontal' : 'vertical';\n const attrs = {\n layout,\n items: this._getLegendItems(),\n zIndex: this.layoutZIndex,\n maxWidth: rect.width,\n maxHeight: rect.height,\n ...getLegendAttributes(this._spec, rect)\n };\n this._addDefaultTitleText(attrs);\n return attrs;\n }\n\n protected _getLegendConstructor() {\n return LegendComponent;\n }\n\n protected _initEvent() {\n if (this._legendComponent) {\n const doFilter = this._spec.filter !== false;\n this._legendComponent.addEventListener(LegendEvent.legendItemClick, (e: any) => {\n const selectedData = get(e, 'detail.currentSelected');\n doFilter && this.setSelectedData(selectedData);\n this.event.emit(ChartEvent.legendItemClick, { model: this, value: selectedData, event: e });\n });\n\n this._legendComponent.addEventListener(LegendEvent.legendItemHover, (e: any) => {\n const detail = get(e, 'detail');\n this.event.emit(ChartEvent.legendItemHover, { model: this, value: detail, event: e });\n });\n\n this._legendComponent.addEventListener(LegendEvent.legendItemUnHover, (e: any) => {\n const detail = get(e, 'detail');\n this.event.emit(ChartEvent.legendItemUnHover, { model: this, value: detail, event: e });\n });\n }\n }\n\n private _getLegendItems() {\n const originData = (this._legendData.getLatestData() || []).map((datum: any) => {\n const fill = datum.style('fill') || datum.style('stroke');\n const stroke = datum.style('stroke');\n const lineWidth = datum.style('lineWidth');\n const symbolType = datum.style('symbolType');\n const fillOpacity = datum.style('fillOpacity');\n const strokeOpacity = datum.style('strokeOpacity');\n const opacity = datum.style('opacity');\n const texture = datum.style('texture');\n const textureColor = datum.style('textureColor');\n const outerBorder = datum.style('outerBorder');\n const innerBorder = datum.style('innerBorder');\n\n return {\n label: datum.key,\n shape: {\n fill,\n symbolType: symbolType ?? datum.shapeType ?? 'circle',\n stroke: lineWidth === 0 || fill === stroke ? null : stroke,\n fillOpacity: isValidNumber(fillOpacity) ? fillOpacity : 1,\n strokeOpacity: isValidNumber(strokeOpacity) ? strokeOpacity : 1,\n opacity: isValidNumber(opacity) ? opacity : 1,\n texture: texture,\n texturePadding: texture ? 1 : null,\n textureSize: texture ? 4 : null,\n textureColor,\n innerBorder,\n outerBorder\n }\n };\n });\n return isFunction(this._spec.data)\n ? this._spec.data(originData, this._option.globalScale.getScale('color'), this._option.globalScale)\n : originData;\n }\n}\n"]}
@@ -1,4 +1,4 @@
1
- import type { IModel } from './../../../model/interface';
1
+ import type { IModel } from '../../../model/interface';
2
2
  import type { DimensionEventParams } from '../../../event/events/dimension/interface';
3
3
  import type { BaseEventParams } from '../../../event/interface';
4
4
  import type { DimensionTooltipInfo, MarkTooltipInfo } from '../processor/interface';
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/tooltip/interface/common.ts"],"names":[],"mappings":";;;AAoBA,IAAY,aAKX;AALD,WAAY,aAAa;IAEvB,uDAAW,CAAA;IAEX,qDAAU,CAAA;AACZ,CAAC,EALW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAKxB","file":"common.js","sourcesContent":["import type { IModel } from './../../../model/interface';\nimport type { DimensionEventParams } from '../../../event/events/dimension/interface';\nimport type { BaseEventParams } from '../../../event/interface';\nimport type { DimensionTooltipInfo, MarkTooltipInfo } from '../processor/interface';\nimport type { Datum, IShowTooltipOption } from '../../../typings';\n\nexport type TooltipHandlerParams = (BaseEventParams | DimensionEventParams) & {\n changePositionOnly?: boolean;\n};\n\nexport interface ITooltipActiveTypeAsKeys<T, K> {\n mark: T;\n dimension: K;\n}\n\nexport type TotalMouseEventData = {\n tooltipInfo: Partial<ITooltipActiveTypeAsKeys<MarkTooltipInfo, DimensionTooltipInfo>>;\n ignore: Partial<ITooltipActiveTypeAsKeys<boolean, boolean>>;\n};\n\nexport enum TooltipResult {\n /** tooltip 显示成功 */\n success = 0,\n /** tooltip 未成功显示 */\n failed = 1\n}\n\nexport interface ITooltip extends IModel {\n getVisible: () => boolean;\n showTooltip: (datum: Datum, options: IShowTooltipOption) => void;\n}\n"]}
1
+ {"version":3,"sources":["../src/component/tooltip/interface/common.ts"],"names":[],"mappings":";;;AAoBA,IAAY,aAKX;AALD,WAAY,aAAa;IAEvB,uDAAW,CAAA;IAEX,qDAAU,CAAA;AACZ,CAAC,EALW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAKxB","file":"common.js","sourcesContent":["import type { IModel } from '../../../model/interface';\nimport type { DimensionEventParams } from '../../../event/events/dimension/interface';\nimport type { BaseEventParams } from '../../../event/interface';\nimport type { DimensionTooltipInfo, MarkTooltipInfo } from '../processor/interface';\nimport type { Datum, IShowTooltipOption } from '../../../typings';\n\nexport type TooltipHandlerParams = (BaseEventParams | DimensionEventParams) & {\n changePositionOnly?: boolean;\n};\n\nexport interface ITooltipActiveTypeAsKeys<T, K> {\n mark: T;\n dimension: K;\n}\n\nexport type TotalMouseEventData = {\n tooltipInfo: Partial<ITooltipActiveTypeAsKeys<MarkTooltipInfo, DimensionTooltipInfo>>;\n ignore: Partial<ITooltipActiveTypeAsKeys<boolean, boolean>>;\n};\n\nexport enum TooltipResult {\n /** tooltip 显示成功 */\n success = 0,\n /** tooltip 未成功显示 */\n failed = 1\n}\n\nexport interface ITooltip extends IModel {\n getVisible: () => boolean;\n showTooltip: (datum: Datum, options: IShowTooltipOption) => void;\n}\n"]}
@@ -16,5 +16,4 @@ exports.ARC_LABEL_SELECTED_AX = `${base_1.PREFIX}_ARC_LABEL_SELECTED_AX`, export
16
16
  exports.ARC_MIDDLE_ANGLE = `${base_1.PREFIX}_ARC_MIDDLE_ANGLE`, exports.ARC_QUADRANT = `${base_1.PREFIX}_ARC_QUADRANT`,
17
17
  exports.ARC_RADIAN = `${base_1.PREFIX}_ARC_RADIAN`, exports.POLAR_START_RADIAN = -Math.PI / 2,
18
18
  exports.POLAR_END_RADIAN = 3 * Math.PI / 2, exports.POLAR_START_ANGLE = -90, exports.POLAR_END_ANGLE = 270,
19
- exports.POLAR_DEFAULT_RADIUS = .6;
20
- //# sourceMappingURL=polar.js.map
19
+ exports.POLAR_DEFAULT_RADIUS = .6;
@@ -70,4 +70,5 @@ Factory._marks = {}, Factory._regions = {}, Factory.transforms = {
70
70
  csv: vdataset_1.csvParser,
71
71
  dsv: vdataset_1.dsvParser,
72
72
  tsv: vdataset_1.tsvParser
73
- }, Factory._layout = {};
73
+ }, Factory._layout = {};
74
+ //# sourceMappingURL=factory.js.map
package/cjs/core/index.js CHANGED
@@ -37,7 +37,7 @@ Object.defineProperty(exports, "Factory", {
37
37
  }
38
38
  });
39
39
 
40
- const region_1 = require("../region/region"), base_layout_1 = require("../layout/base-layout"), group_1 = require("../mark/group"), component_1 = require("../mark/component"), image_1 = require("./../mark/image");
40
+ const region_1 = require("../region/region"), base_layout_1 = require("../layout/base-layout"), group_1 = require("../mark/group"), component_1 = require("../mark/component"), image_1 = require("../mark/image");
41
41
 
42
42
  vchart_1.VChart.useMark([ component_1.ComponentMark, group_1.GroupMark, image_1.ImageMark ]),
43
43
  factory_1.Factory.registerRegion("region", region_1.Region), factory_1.Factory.registerLayout("base", base_layout_1.Layout),
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6CAAuD;AAKvD,qCAAkC;AAiBzB,uFAjBA,eAAM,OAiBA;AAhBf,uCAAoC;AAgBnB,wFAhBR,iBAAO,OAgBQ;AAfxB,6CAA0C;AAC1C,uDAA+C;AAC/C,yCAA0C;AAC1C,iDAAkD;AAClD,2CAA4C;AAG5C,eAAM,CAAC,OAAO,CAAC,CAAC,yBAAa,EAAE,iBAAS,EAAE,iBAAS,CAAC,CAAC,CAAC;AAGtD,iBAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,eAAa,CAAC,CAAC;AAGhD,iBAAO,CAAC,cAAc,CAAC,MAAM,EAAE,oBAAa,CAAC,CAAC;AAKjC,QAAA,OAAO,GAAG,OAAO,CAAC;AAK/B,qDAAmC;AACnC,yDAAuC;AAEvC,qDAAmC;AAGnC,eAAM,CAAC,WAAW,CAAC,oBAAW,CAAC,KAAK,CAAC,CAAC","file":"index.js","sourcesContent":["import { Logger, LoggerLevel } from '@visactor/vutils';\n/**\n * @description The core module of VChart, containing the necessary interfaces for using VChart.\n */\n\nimport { VChart } from './vchart';\nimport { Factory } from './factory';\nimport { Region } from '../region/region';\nimport { Layout } from '../layout/base-layout';\nimport { GroupMark } from '../mark/group';\nimport { ComponentMark } from '../mark/component';\nimport { ImageMark } from './../mark/image';\n\n// register groupMark and componentMark\nVChart.useMark([ComponentMark, GroupMark, ImageMark]);\n\n// install region module\nFactory.registerRegion('region', Region as any);\n\n// install layout module\nFactory.registerLayout('base', Layout as any);\n\nexport { VChart, Factory };\n\n// export the version\nexport const version = \"1.3.0\";\n\n// export necessary types\nexport type { IVChart } from './interface';\n// the event types\nexport * from '../event/interface';\nexport * from '../typings/spec/common';\nexport type { IStateSpec, StateValueType } from '../compile/mark';\nexport * from '../theme/interface';\n\n// set default logger level to Level.error\nLogger.getInstance(LoggerLevel.Error);\n"]}
1
+ {"version":3,"sources":["../src/core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6CAAuD;AAKvD,qCAAkC;AAiBzB,uFAjBA,eAAM,OAiBA;AAhBf,uCAAoC;AAgBnB,wFAhBR,iBAAO,OAgBQ;AAfxB,6CAA0C;AAC1C,uDAA+C;AAC/C,yCAA0C;AAC1C,iDAAkD;AAClD,yCAA0C;AAG1C,eAAM,CAAC,OAAO,CAAC,CAAC,yBAAa,EAAE,iBAAS,EAAE,iBAAS,CAAC,CAAC,CAAC;AAGtD,iBAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,eAAa,CAAC,CAAC;AAGhD,iBAAO,CAAC,cAAc,CAAC,MAAM,EAAE,oBAAa,CAAC,CAAC;AAKjC,QAAA,OAAO,GAAG,OAAO,CAAC;AAK/B,qDAAmC;AACnC,yDAAuC;AAEvC,qDAAmC;AAGnC,eAAM,CAAC,WAAW,CAAC,oBAAW,CAAC,KAAK,CAAC,CAAC","file":"index.js","sourcesContent":["import { Logger, LoggerLevel } from '@visactor/vutils';\n/**\n * @description The core module of VChart, containing the necessary interfaces for using VChart.\n */\n\nimport { VChart } from './vchart';\nimport { Factory } from './factory';\nimport { Region } from '../region/region';\nimport { Layout } from '../layout/base-layout';\nimport { GroupMark } from '../mark/group';\nimport { ComponentMark } from '../mark/component';\nimport { ImageMark } from '../mark/image';\n\n// register groupMark and componentMark\nVChart.useMark([ComponentMark, GroupMark, ImageMark]);\n\n// install region module\nFactory.registerRegion('region', Region as any);\n\n// install layout module\nFactory.registerLayout('base', Layout as any);\n\nexport { VChart, Factory };\n\n// export the version\nexport const version = \"1.3.0\";\n\n// export necessary types\nexport type { IVChart } from './interface';\n// the event types\nexport * from '../event/interface';\nexport * from '../typings/spec/common';\nexport type { IStateSpec, StateValueType } from '../compile/mark';\nexport * from '../theme/interface';\n\n// set default logger level to Level.error\nLogger.getInstance(LoggerLevel.Error);\n"]}
@@ -628,5 +628,4 @@ class VChart {
628
628
  exports.VChart = VChart, VChart.InstanceManager = instance_manager_1.InstanceManager,
629
629
  VChart.ThemeManager = theme_manager_1.ThemeManager, VChart.globalConfig = {
630
630
  uniqueTooltip: !0
631
- };
632
- //# sourceMappingURL=vchart.js.map
631
+ };
@@ -1,4 +1,4 @@
1
- import type { utilFunctionCtx } from './../typings/params';
1
+ import type { utilFunctionCtx } from '../typings/params';
2
2
  import { DataSet, DataView } from '@visactor/vdataset';
3
3
  import type { IDataViewOptions } from '@visactor/vdataset';
4
4
  import type { IDataValues } from '../typings/spec/common';
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.dataToDataView = exports.dataViewFromDataView = exports.initFoldData = exports.initData = exports.initCSVData = exports.initializeData = void 0;
6
6
 
7
- const debug_1 = require("./../util/debug"), vutils_1 = require("@visactor/vutils"), vdataset_1 = require("@visactor/vdataset"), util_1 = require("../util"), register_1 = require("./register"), copy_data_view_1 = require("./transforms/copy-data-view");
7
+ const debug_1 = require("../util/debug"), vutils_1 = require("@visactor/vutils"), vdataset_1 = require("@visactor/vdataset"), util_1 = require("../util"), register_1 = require("./register"), copy_data_view_1 = require("./transforms/copy-data-view");
8
8
 
9
9
  function initializeData() {}
10
10
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/data/initialize.ts"],"names":[],"mappings":"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","file":"initialize.js","sourcesContent":["import type { utilFunctionCtx } from './../typings/params';\nimport { warn } from './../util/debug';\nimport { isString } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { DataSet, DataView } from '@visactor/vdataset';\nimport type { IDataViewOptions, IFields, ITransformOptions } from '@visactor/vdataset';\nimport type { IDataValues, SheetParseOptions } from '../typings/spec/common';\nimport { error } from '../util';\nimport { registerDataSetInstanceTransform } from './register';\nimport { copyDataView } from './transforms/copy-data-view';\nimport type { IParserOptions } from '@visactor/vdataset/es/parser';\n\nexport function initializeData() {\n // todo\n}\n\nexport function initCSVData() {\n // todo\n}\n\nexport function initData() {\n // todo\n}\n\nexport function initFoldData() {\n // todo\n}\n\nexport function dataViewFromDataView(rawData: DataView, dataSet?: DataSet, op?: IDataViewOptions) {\n dataSet = dataSet instanceof DataSet ? dataSet : rawData.dataSet;\n registerDataSetInstanceTransform(dataSet, 'copyDataView', copyDataView);\n const viewData = new DataView(dataSet, op);\n viewData.parse([rawData], {\n type: 'dataview'\n });\n viewData.transform({\n type: 'copyDataView'\n });\n return viewData;\n}\n\n/**\n * 将数据实例化为 DataView\n * @param data 数据\n * @param dataSet 数据集\n * @returns\n */\nexport function dataToDataView(\n data: DataView | IDataValues,\n dataSet: DataSet,\n sourceDataViews: DataView[] = [],\n ctx: utilFunctionCtx = {}\n) {\n if (data instanceof DataView) {\n return data;\n }\n\n const { id, values = [], fromDataIndex, fromDataId, transforms = [], fields } = data;\n const parser = (data.parser ?? { clone: true }) as IParserOptions;\n // set parser.clone default value to true\n parser.clone = !(parser.clone === false);\n let dataView: DataView;\n const existDataView = sourceDataViews.find(dv => dv.name === id);\n if (existDataView) {\n dataView = existDataView;\n } else {\n const initOption: IDataViewOptions = { name: id };\n // fields 支持在dataView初始化参数中传入\n if (fields) {\n initOption.fields = fields as IFields;\n }\n dataView = new DataView(dataSet, initOption);\n if (typeof fromDataId === 'string') {\n // 使用id查找上游dataview\n const fromDataView = sourceDataViews.find(dv => dv.name === fromDataId);\n if (!fromDataView) {\n (ctx.onError ?? error)(`no data matches fromDataId ${fromDataId}`);\n return null;\n }\n\n dataView.parse([fromDataView], {\n type: 'dataview'\n });\n dataView.transform({\n type: 'copyDataView'\n });\n } else if (typeof fromDataIndex === 'number') {\n // 使用index查找上游dataview\n const fromDataView = sourceDataViews[fromDataIndex];\n if (!fromDataView) {\n (ctx.onError ?? error)(`no data matches fromDataIndex ${fromDataIndex}`);\n return null;\n }\n\n dataView.parse([fromDataView], {\n type: 'dataview'\n });\n dataView.transform({\n type: 'copyDataView'\n });\n } else if (Array.isArray(values)) {\n dataView.parse(values, parser);\n } else if (isString(values) && (!parser || ['csv', 'dsv', 'tsv'].includes((parser as SheetParseOptions).type))) {\n // 内置 csv parser\n dataView.parse(values, (parser as SheetParseOptions) ?? { type: 'csv' });\n } else {\n // 如果 values 不符合要求,则默认设置为 [],同时打印错误信息\n dataView.parse([]);\n warn('values should be array');\n }\n // 处理transform\n if (transforms && transforms.length) {\n transforms.forEach((transform: ITransformOptions) => {\n if (dataSet.getTransform(transform.type)) {\n dataView.transform(transform);\n }\n });\n }\n }\n\n return dataView;\n}\n"]}
1
+ {"version":3,"sources":["../src/data/initialize.ts"],"names":[],"mappings":"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","file":"initialize.js","sourcesContent":["import type { utilFunctionCtx } from '../typings/params';\nimport { warn } from '../util/debug';\nimport { isString } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { DataSet, DataView } from '@visactor/vdataset';\nimport type { IDataViewOptions, IFields, ITransformOptions } from '@visactor/vdataset';\nimport type { IDataValues, SheetParseOptions } from '../typings/spec/common';\nimport { error } from '../util';\nimport { registerDataSetInstanceTransform } from './register';\nimport { copyDataView } from './transforms/copy-data-view';\nimport type { IParserOptions } from '@visactor/vdataset/es/parser';\n\nexport function initializeData() {\n // todo\n}\n\nexport function initCSVData() {\n // todo\n}\n\nexport function initData() {\n // todo\n}\n\nexport function initFoldData() {\n // todo\n}\n\nexport function dataViewFromDataView(rawData: DataView, dataSet?: DataSet, op?: IDataViewOptions) {\n dataSet = dataSet instanceof DataSet ? dataSet : rawData.dataSet;\n registerDataSetInstanceTransform(dataSet, 'copyDataView', copyDataView);\n const viewData = new DataView(dataSet, op);\n viewData.parse([rawData], {\n type: 'dataview'\n });\n viewData.transform({\n type: 'copyDataView'\n });\n return viewData;\n}\n\n/**\n * 将数据实例化为 DataView\n * @param data 数据\n * @param dataSet 数据集\n * @returns\n */\nexport function dataToDataView(\n data: DataView | IDataValues,\n dataSet: DataSet,\n sourceDataViews: DataView[] = [],\n ctx: utilFunctionCtx = {}\n) {\n if (data instanceof DataView) {\n return data;\n }\n\n const { id, values = [], fromDataIndex, fromDataId, transforms = [], fields } = data;\n const parser = (data.parser ?? { clone: true }) as IParserOptions;\n // set parser.clone default value to true\n parser.clone = !(parser.clone === false);\n let dataView: DataView;\n const existDataView = sourceDataViews.find(dv => dv.name === id);\n if (existDataView) {\n dataView = existDataView;\n } else {\n const initOption: IDataViewOptions = { name: id };\n // fields 支持在dataView初始化参数中传入\n if (fields) {\n initOption.fields = fields as IFields;\n }\n dataView = new DataView(dataSet, initOption);\n if (typeof fromDataId === 'string') {\n // 使用id查找上游dataview\n const fromDataView = sourceDataViews.find(dv => dv.name === fromDataId);\n if (!fromDataView) {\n (ctx.onError ?? error)(`no data matches fromDataId ${fromDataId}`);\n return null;\n }\n\n dataView.parse([fromDataView], {\n type: 'dataview'\n });\n dataView.transform({\n type: 'copyDataView'\n });\n } else if (typeof fromDataIndex === 'number') {\n // 使用index查找上游dataview\n const fromDataView = sourceDataViews[fromDataIndex];\n if (!fromDataView) {\n (ctx.onError ?? error)(`no data matches fromDataIndex ${fromDataIndex}`);\n return null;\n }\n\n dataView.parse([fromDataView], {\n type: 'dataview'\n });\n dataView.transform({\n type: 'copyDataView'\n });\n } else if (Array.isArray(values)) {\n dataView.parse(values, parser);\n } else if (isString(values) && (!parser || ['csv', 'dsv', 'tsv'].includes((parser as SheetParseOptions).type))) {\n // 内置 csv parser\n dataView.parse(values, (parser as SheetParseOptions) ?? { type: 'csv' });\n } else {\n // 如果 values 不符合要求,则默认设置为 [],同时打印错误信息\n dataView.parse([]);\n warn('values should be array');\n }\n // 处理transform\n if (transforms && transforms.length) {\n transforms.forEach((transform: ITransformOptions) => {\n if (dataSet.getTransform(transform.type)) {\n dataView.transform(transform);\n }\n });\n }\n }\n\n return dataView;\n}\n"]}
@@ -1,4 +1,4 @@
1
- import type { IAxis } from './../../../component/axis/interface';
1
+ import type { IAxis } from '../../../component/axis/interface';
2
2
  import type { RenderMode } from '../../../typings/spec/common';
3
3
  import type { BaseEventParams, EventHandler, EventParamsDefinition, IComposedEvent, IEventDispatcher } from '../../interface';
4
4
  import type { IChart } from '../../../chart/interface';
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.DimensionEvent = void 0;
6
6
 
7
- const debug_1 = require("./../../../util/debug"), util_1 = require("./util"), vscale_1 = require("@visactor/vscale");
7
+ const debug_1 = require("../../../util/debug"), util_1 = require("./util"), vscale_1 = require("@visactor/vscale");
8
8
 
9
9
  class DimensionEvent {
10
10
  constructor(eventDispatcher, mode) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/event/events/dimension/base.ts"],"names":[],"mappings":";;;AAAA,iDAA8C;AAY9C,iCAAmG;AAEnG,6CAA8C;AAE9C,MAAa,cAAc;IAQzB,YAAY,eAAiC,EAAE,IAAgB;;QAC7D,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QACxC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAElB,IAAI,CAAC,MAAM,GAAG,MAAA,MAAA,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAC,QAAQ,kDAAI,CAAC;IAClE,CAAC;IAED,QAAQ,CAAqB,KAAU,EAAE,OAAiD;;QACxF,CAAC,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,SAAS,GAAG,OAAO,mCAAI,aAAK,CAAC,CAAC,yBAAyB,CAAC,CAAC;IACzE,CAAC;IACD,UAAU;;QACR,CAAC,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,SAAS,GAAG,OAAO,mCAAI,aAAK,CAAC,CAAC,yBAAyB,CAAC,CAAC;IACzE,CAAC;IAES,sBAAsB,CAAC,CAAS,EAAE,CAAS;;QACnD,MAAM,aAAa,GAAG,MAAA,IAAA,gCAAyB,EAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,mCAAI,EAAE,CAAC;QAC7E,MAAM,SAAS,GAAG,MAAA,IAAA,4BAAqB,EAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,mCAAI,EAAE,CAAC;QAErE,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QACnD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACb;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,QAAQ,CAAC,CAAU,EAAE,GAA0C;;QAE7D,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,MAAM,0CAAE,gBAAgB,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE;YACtD,IAAI,CAAC,CAAC,OAAO,KAAK,MAAM,EAAE;gBACxB,OAAO,KAAK,CAAC;aACd;YACD,MAAM,KAAK,GAAW,CAAE,CAAC,QAAQ,EAAE,CAAC;YACpC,IAAI,CAAC,IAAA,mBAAU,EAAC,KAAK,CAAC,IAAI,CAAC,EAAE;gBAC3B,OAAO,KAAK,CAAC;aACd;YACD,IAAI,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,EAAE;gBACf,OAAO,GAAG,CAAC,MAAM,CAAQ,CAAC,CAAC,CAAC;aAC7B;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAY,CAAC;QACd,MAAM,aAAa,GAAqB,EAAE,CAAC;QAC3C,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACf,MAAM,IAAI,GAAG,IAAA,8BAAuB,EAAC,CAAmB,EAAE,CAAC,CAAC,CAAC;YAC7D,IAAI,IAAI,EAAE;gBACR,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC1B;QACH,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE;YACxB,MAAM,EAAE,OAAO;YACf,aAAa;SACgB,CAAC,CAAC;QACjC,OAAO,aAAa,CAAC;IACvB,CAAC;CACF;AA9DD,wCA8DC","file":"base.js","sourcesContent":["import { error } from './../../../util/debug';\nimport type { IAxis } from './../../../component/axis/interface';\nimport type { RenderMode } from '../../../typings/spec/common';\nimport type {\n BaseEventParams,\n EventHandler,\n EventParamsDefinition,\n IComposedEvent,\n IEventDispatcher\n} from '../../interface';\nimport type { IChart } from '../../../chart/interface';\nimport type { IDimensionInfo } from './interface';\nimport { getCartesianDimensionInfo, getDimensionInfoByValue, getPolarDimensionInfo } from './util';\nimport type { Maybe } from '../../../typings';\nimport { isDiscrete } from '@visactor/vscale';\n\nexport class DimensionEvent implements IComposedEvent {\n protected _eventDispatcher: IEventDispatcher;\n protected _mode: RenderMode;\n\n protected _callback!: (params: BaseEventParams) => void;\n\n protected _chart: Maybe<IChart>;\n\n constructor(eventDispatcher: IEventDispatcher, mode: RenderMode) {\n this._eventDispatcher = eventDispatcher;\n this._mode = mode;\n\n this._chart = this._eventDispatcher.globalInstance.getChart?.();\n }\n\n register<Evt extends string>(eType: Evt, handler: EventHandler<EventParamsDefinition[Evt]>): void {\n (this._chart?.getOption().onError ?? error)('Method not implemented.');\n }\n unregister(): void {\n (this._chart?.getOption().onError ?? error)('Method not implemented.');\n }\n\n protected getTargetDimensionInfo(x: number, y: number): IDimensionInfo[] | null {\n const cartesianInfo = getCartesianDimensionInfo(this._chart, { x, y }) ?? [];\n const polarInfo = getPolarDimensionInfo(this._chart, { x, y }) ?? [];\n\n const result = [].concat(cartesianInfo, polarInfo);\n if (result.length === 0) {\n return null;\n }\n\n return result;\n }\n\n dispatch(v: unknown, opt: { filter?: (axis: IAxis) => boolean }) {\n // get all enable axis\n const axis = this._chart?.getAllComponents().filter(c => {\n if (c.specKey !== 'axes') {\n return false;\n }\n const scale = (<IAxis>c).getScale();\n if (!isDiscrete(scale.type)) {\n return false;\n }\n if (opt?.filter) {\n return opt.filter(<IAxis>c);\n }\n return true;\n }) as IAxis[];\n const dimensionInfo: IDimensionInfo[] = [];\n axis.forEach(a => {\n const info = getDimensionInfoByValue(a as unknown as any, v);\n if (info) {\n dimensionInfo.push(info);\n }\n });\n this._callback.call(null, {\n action: 'enter',\n dimensionInfo\n } as unknown as BaseEventParams);\n return dimensionInfo;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/event/events/dimension/base.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAY5C,iCAAmG;AAEnG,6CAA8C;AAE9C,MAAa,cAAc;IAQzB,YAAY,eAAiC,EAAE,IAAgB;;QAC7D,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QACxC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAElB,IAAI,CAAC,MAAM,GAAG,MAAA,MAAA,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAC,QAAQ,kDAAI,CAAC;IAClE,CAAC;IAED,QAAQ,CAAqB,KAAU,EAAE,OAAiD;;QACxF,CAAC,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,SAAS,GAAG,OAAO,mCAAI,aAAK,CAAC,CAAC,yBAAyB,CAAC,CAAC;IACzE,CAAC;IACD,UAAU;;QACR,CAAC,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,SAAS,GAAG,OAAO,mCAAI,aAAK,CAAC,CAAC,yBAAyB,CAAC,CAAC;IACzE,CAAC;IAES,sBAAsB,CAAC,CAAS,EAAE,CAAS;;QACnD,MAAM,aAAa,GAAG,MAAA,IAAA,gCAAyB,EAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,mCAAI,EAAE,CAAC;QAC7E,MAAM,SAAS,GAAG,MAAA,IAAA,4BAAqB,EAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,mCAAI,EAAE,CAAC;QAErE,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QACnD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACb;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,QAAQ,CAAC,CAAU,EAAE,GAA0C;;QAE7D,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,MAAM,0CAAE,gBAAgB,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE;YACtD,IAAI,CAAC,CAAC,OAAO,KAAK,MAAM,EAAE;gBACxB,OAAO,KAAK,CAAC;aACd;YACD,MAAM,KAAK,GAAW,CAAE,CAAC,QAAQ,EAAE,CAAC;YACpC,IAAI,CAAC,IAAA,mBAAU,EAAC,KAAK,CAAC,IAAI,CAAC,EAAE;gBAC3B,OAAO,KAAK,CAAC;aACd;YACD,IAAI,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,EAAE;gBACf,OAAO,GAAG,CAAC,MAAM,CAAQ,CAAC,CAAC,CAAC;aAC7B;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAY,CAAC;QACd,MAAM,aAAa,GAAqB,EAAE,CAAC;QAC3C,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACf,MAAM,IAAI,GAAG,IAAA,8BAAuB,EAAC,CAAmB,EAAE,CAAC,CAAC,CAAC;YAC7D,IAAI,IAAI,EAAE;gBACR,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC1B;QACH,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE;YACxB,MAAM,EAAE,OAAO;YACf,aAAa;SACgB,CAAC,CAAC;QACjC,OAAO,aAAa,CAAC;IACvB,CAAC;CACF;AA9DD,wCA8DC","file":"base.js","sourcesContent":["import { error } from '../../../util/debug';\nimport type { IAxis } from '../../../component/axis/interface';\nimport type { RenderMode } from '../../../typings/spec/common';\nimport type {\n BaseEventParams,\n EventHandler,\n EventParamsDefinition,\n IComposedEvent,\n IEventDispatcher\n} from '../../interface';\nimport type { IChart } from '../../../chart/interface';\nimport type { IDimensionInfo } from './interface';\nimport { getCartesianDimensionInfo, getDimensionInfoByValue, getPolarDimensionInfo } from './util';\nimport type { Maybe } from '../../../typings';\nimport { isDiscrete } from '@visactor/vscale';\n\nexport class DimensionEvent implements IComposedEvent {\n protected _eventDispatcher: IEventDispatcher;\n protected _mode: RenderMode;\n\n protected _callback!: (params: BaseEventParams) => void;\n\n protected _chart: Maybe<IChart>;\n\n constructor(eventDispatcher: IEventDispatcher, mode: RenderMode) {\n this._eventDispatcher = eventDispatcher;\n this._mode = mode;\n\n this._chart = this._eventDispatcher.globalInstance.getChart?.();\n }\n\n register<Evt extends string>(eType: Evt, handler: EventHandler<EventParamsDefinition[Evt]>): void {\n (this._chart?.getOption().onError ?? error)('Method not implemented.');\n }\n unregister(): void {\n (this._chart?.getOption().onError ?? error)('Method not implemented.');\n }\n\n protected getTargetDimensionInfo(x: number, y: number): IDimensionInfo[] | null {\n const cartesianInfo = getCartesianDimensionInfo(this._chart, { x, y }) ?? [];\n const polarInfo = getPolarDimensionInfo(this._chart, { x, y }) ?? [];\n\n const result = [].concat(cartesianInfo, polarInfo);\n if (result.length === 0) {\n return null;\n }\n\n return result;\n }\n\n dispatch(v: unknown, opt: { filter?: (axis: IAxis) => boolean }) {\n // get all enable axis\n const axis = this._chart?.getAllComponents().filter(c => {\n if (c.specKey !== 'axes') {\n return false;\n }\n const scale = (<IAxis>c).getScale();\n if (!isDiscrete(scale.type)) {\n return false;\n }\n if (opt?.filter) {\n return opt.filter(<IAxis>c);\n }\n return true;\n }) as IAxis[];\n const dimensionInfo: IDimensionInfo[] = [];\n axis.forEach(a => {\n const info = getDimensionInfoByValue(a as unknown as any, v);\n if (info) {\n dimensionInfo.push(info);\n }\n });\n this._callback.call(null, {\n action: 'enter',\n dimensionInfo\n } as unknown as BaseEventParams);\n return dimensionInfo;\n }\n}\n"]}
@@ -1,4 +1,4 @@
1
- import type { utilFunctionCtx } from './../typings/params';
1
+ import type { utilFunctionCtx } from '../typings/params';
2
2
  import type { IChart } from '../chart/interface/chart';
3
3
  import type { IBoundsLike } from '@visactor/vutils';
4
4
  import type { ILayoutItem } from '../model/interface';