@visactor/vchart 1.9.4-alpha.1 → 1.9.4-alpha.3

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 (179) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.js +1666 -2782
  3. package/build/index.min.js +1 -1
  4. package/build/tsconfig.tsbuildinfo +1 -1
  5. package/cjs/chart/base/base-chart-transformer.js +4 -5
  6. package/cjs/chart/base/base-chart-transformer.js.map +1 -1
  7. package/cjs/chart/base/base-chart.d.ts +1 -1
  8. package/cjs/chart/base/base-chart.js +1 -3
  9. package/cjs/chart/base/base-chart.js.map +1 -1
  10. package/cjs/chart/stack.js +2 -1
  11. package/cjs/compile/grammar-item.js +1 -2
  12. package/cjs/component/axis/base-axis.d.ts +53 -1
  13. package/cjs/component/axis/base-axis.js +83 -76
  14. package/cjs/component/axis/base-axis.js.map +1 -1
  15. package/cjs/component/axis/cartesian/axis.d.ts +1 -1
  16. package/cjs/component/axis/cartesian/axis.js +13 -16
  17. package/cjs/component/axis/cartesian/axis.js.map +1 -1
  18. package/cjs/component/axis/cartesian/log-axis.js +1 -2
  19. package/cjs/component/axis/cartesian/log-axis.js.map +1 -1
  20. package/cjs/component/axis/mixin/linear-axis-mixin.js +1 -1
  21. package/cjs/component/axis/mixin/linear-axis-mixin.js.map +1 -1
  22. package/cjs/component/axis/polar/axis.js +17 -9
  23. package/cjs/component/axis/polar/axis.js.map +1 -1
  24. package/cjs/component/axis/polar/util/common.d.ts +1 -5
  25. package/cjs/component/axis/polar/util/common.js +4 -8
  26. package/cjs/component/axis/polar/util/common.js.map +1 -1
  27. package/cjs/component/base/base-component.d.ts +1 -1
  28. package/cjs/component/base/base-component.js +2 -2
  29. package/cjs/component/base/base-component.js.map +1 -1
  30. package/cjs/component/custom-mark/custom-mark.d.ts +2 -1
  31. package/cjs/component/custom-mark/custom-mark.js.map +1 -1
  32. package/cjs/component/legend/discrete/interface.d.ts +0 -1
  33. package/cjs/component/legend/discrete/interface.js.map +1 -1
  34. package/cjs/component/legend/util.d.ts +1 -1
  35. package/cjs/component/marker/mark-area/mark-area.js +1 -1
  36. package/cjs/component/marker/mark-area/mark-area.js.map +1 -1
  37. package/cjs/component/marker/mark-line/mark-line.js +1 -1
  38. package/cjs/component/marker/mark-line/mark-line.js.map +1 -1
  39. package/cjs/component/marker/mark-point/mark-point.js +2 -5
  40. package/cjs/component/marker/mark-point/mark-point.js.map +1 -1
  41. package/cjs/component/tooltip/interface/common.d.ts +1 -1
  42. package/cjs/component/tooltip/interface/common.js.map +1 -1
  43. package/cjs/component/tooltip/processor/base.js +2 -2
  44. package/cjs/component/tooltip/processor/base.js.map +1 -1
  45. package/cjs/component/tooltip/tooltip.js +6 -6
  46. package/cjs/component/tooltip/tooltip.js.map +1 -1
  47. package/cjs/core/index.d.ts +1 -1
  48. package/cjs/core/index.js +1 -1
  49. package/cjs/core/index.js.map +1 -1
  50. package/cjs/core/vchart.js +1 -2
  51. package/cjs/core/vchart.js.map +1 -1
  52. package/cjs/data/transforms/dimension-statistics.d.ts +0 -2
  53. package/cjs/data/transforms/dimension-statistics.js +1 -1
  54. package/cjs/data/transforms/dimension-statistics.js.map +1 -1
  55. package/cjs/data/transforms/funnel.d.ts +1 -1
  56. package/cjs/event/event-dispatcher.js +1 -1
  57. package/cjs/event/event-dispatcher.js.map +1 -1
  58. package/cjs/event/events/dimension/util/common.js +48 -45
  59. package/cjs/event/events/dimension/util/common.js.map +1 -1
  60. package/cjs/event/interface.d.ts +1 -2
  61. package/cjs/event/interface.js.map +1 -1
  62. package/cjs/interaction/dimension-trigger.js +1 -3
  63. package/cjs/interaction/dimension-trigger.js.map +1 -1
  64. package/cjs/plugin/components/tooltip-handler/base.js +18 -18
  65. package/cjs/plugin/components/tooltip-handler/base.js.map +1 -1
  66. package/cjs/plugin/components/tooltip-handler/dom/dom-tooltip-handler.js +4 -3
  67. package/cjs/plugin/components/tooltip-handler/dom/dom-tooltip-handler.js.map +1 -1
  68. package/cjs/plugin/components/tooltip-handler/utils/compose.js.map +1 -1
  69. package/cjs/plugin/components/tooltip-handler/utils/get-spec.js +2 -2
  70. package/cjs/plugin/components/tooltip-handler/utils/get-spec.js.map +1 -1
  71. package/cjs/plugin/components/tooltip-handler/utils/position.d.ts +1 -1
  72. package/cjs/plugin/components/tooltip-handler/utils/position.js.map +1 -1
  73. package/cjs/series/bar/bar.js +4 -12
  74. package/cjs/series/bar/bar.js.map +1 -1
  75. package/cjs/series/base/base-series.js.map +1 -1
  76. package/cjs/series/cartesian/cartesian.d.ts +2 -1
  77. package/cjs/series/cartesian/cartesian.js +24 -28
  78. package/cjs/series/cartesian/cartesian.js.map +1 -1
  79. package/cjs/series/line/interface.d.ts +1 -1
  80. package/cjs/series/line/interface.js.map +1 -1
  81. package/cjs/series/mixin/line-mixin.js +1 -1
  82. package/cjs/series/mixin/line-mixin.js.map +1 -1
  83. package/cjs/series/sankey/interface.d.ts +2 -2
  84. package/cjs/series/sankey/interface.js.map +1 -1
  85. package/cjs/series/util/utils.js +1 -1
  86. package/cjs/series/util/utils.js.map +1 -1
  87. package/cjs/typings/spec/common.d.ts +20 -20
  88. package/cjs/typings/spec/common.js.map +1 -1
  89. package/cjs/typings/tooltip/position.d.ts +19 -2
  90. package/cjs/typings/tooltip/position.js +12 -1
  91. package/cjs/typings/tooltip/position.js.map +1 -1
  92. package/esm/chart/base/base-chart-transformer.js +5 -5
  93. package/esm/chart/base/base-chart-transformer.js.map +1 -1
  94. package/esm/chart/base/base-chart.d.ts +1 -1
  95. package/esm/chart/base/base-chart.js +1 -3
  96. package/esm/chart/base/base-chart.js.map +1 -1
  97. package/esm/chart/stack.js +2 -1
  98. package/esm/compile/grammar-item.js +1 -2
  99. package/esm/component/axis/base-axis.d.ts +53 -1
  100. package/esm/component/axis/base-axis.js +82 -74
  101. package/esm/component/axis/base-axis.js.map +1 -1
  102. package/esm/component/axis/cartesian/axis.d.ts +1 -1
  103. package/esm/component/axis/cartesian/axis.js +12 -15
  104. package/esm/component/axis/cartesian/axis.js.map +1 -1
  105. package/esm/component/axis/cartesian/log-axis.js +1 -2
  106. package/esm/component/axis/cartesian/log-axis.js.map +1 -1
  107. package/esm/component/axis/mixin/linear-axis-mixin.js +1 -1
  108. package/esm/component/axis/mixin/linear-axis-mixin.js.map +1 -1
  109. package/esm/component/axis/polar/axis.js +18 -9
  110. package/esm/component/axis/polar/axis.js.map +1 -1
  111. package/esm/component/axis/polar/util/common.d.ts +1 -5
  112. package/esm/component/axis/polar/util/common.js +4 -12
  113. package/esm/component/axis/polar/util/common.js.map +1 -1
  114. package/esm/component/base/base-component.d.ts +1 -1
  115. package/esm/component/base/base-component.js +1 -3
  116. package/esm/component/base/base-component.js.map +1 -1
  117. package/esm/component/custom-mark/custom-mark.d.ts +2 -1
  118. package/esm/component/custom-mark/custom-mark.js.map +1 -1
  119. package/esm/component/legend/discrete/interface.d.ts +0 -1
  120. package/esm/component/legend/discrete/interface.js.map +1 -1
  121. package/esm/component/legend/util.d.ts +1 -1
  122. package/esm/component/marker/mark-area/mark-area.js +1 -1
  123. package/esm/component/marker/mark-area/mark-area.js.map +1 -1
  124. package/esm/component/marker/mark-line/mark-line.js +1 -1
  125. package/esm/component/marker/mark-line/mark-line.js.map +1 -1
  126. package/esm/component/marker/mark-point/mark-point.js +2 -5
  127. package/esm/component/marker/mark-point/mark-point.js.map +1 -1
  128. package/esm/component/tooltip/interface/common.d.ts +1 -1
  129. package/esm/component/tooltip/interface/common.js.map +1 -1
  130. package/esm/component/tooltip/processor/base.js +3 -1
  131. package/esm/component/tooltip/processor/base.js.map +1 -1
  132. package/esm/component/tooltip/tooltip.js +4 -2
  133. package/esm/component/tooltip/tooltip.js.map +1 -1
  134. package/esm/core/index.d.ts +1 -1
  135. package/esm/core/index.js +1 -1
  136. package/esm/core/index.js.map +1 -1
  137. package/esm/core/vchart.js +1 -2
  138. package/esm/core/vchart.js.map +1 -1
  139. package/esm/data/transforms/dimension-statistics.d.ts +0 -2
  140. package/esm/data/transforms/dimension-statistics.js +1 -1
  141. package/esm/data/transforms/dimension-statistics.js.map +1 -1
  142. package/esm/data/transforms/funnel.d.ts +1 -1
  143. package/esm/event/event-dispatcher.js +2 -2
  144. package/esm/event/event-dispatcher.js.map +1 -1
  145. package/esm/event/events/dimension/util/common.js +47 -44
  146. package/esm/event/events/dimension/util/common.js.map +1 -1
  147. package/esm/event/interface.d.ts +1 -2
  148. package/esm/event/interface.js.map +1 -1
  149. package/esm/interaction/dimension-trigger.js +1 -3
  150. package/esm/interaction/dimension-trigger.js.map +1 -1
  151. package/esm/plugin/components/tooltip-handler/base.js +19 -17
  152. package/esm/plugin/components/tooltip-handler/base.js.map +1 -1
  153. package/esm/plugin/components/tooltip-handler/dom/dom-tooltip-handler.js +4 -3
  154. package/esm/plugin/components/tooltip-handler/dom/dom-tooltip-handler.js.map +1 -1
  155. package/esm/plugin/components/tooltip-handler/utils/compose.js.map +1 -1
  156. package/esm/plugin/components/tooltip-handler/utils/get-spec.js +2 -2
  157. package/esm/plugin/components/tooltip-handler/utils/get-spec.js.map +1 -1
  158. package/esm/plugin/components/tooltip-handler/utils/position.d.ts +1 -1
  159. package/esm/plugin/components/tooltip-handler/utils/position.js.map +1 -1
  160. package/esm/series/bar/bar.js +4 -12
  161. package/esm/series/bar/bar.js.map +1 -1
  162. package/esm/series/base/base-series.js.map +1 -1
  163. package/esm/series/cartesian/cartesian.d.ts +2 -1
  164. package/esm/series/cartesian/cartesian.js +25 -28
  165. package/esm/series/cartesian/cartesian.js.map +1 -1
  166. package/esm/series/line/interface.d.ts +1 -1
  167. package/esm/series/line/interface.js.map +1 -1
  168. package/esm/series/mixin/line-mixin.js +1 -1
  169. package/esm/series/mixin/line-mixin.js.map +1 -1
  170. package/esm/series/sankey/interface.d.ts +2 -2
  171. package/esm/series/sankey/interface.js.map +1 -1
  172. package/esm/series/util/utils.js +1 -1
  173. package/esm/series/util/utils.js.map +1 -1
  174. package/esm/typings/spec/common.d.ts +20 -20
  175. package/esm/typings/spec/common.js.map +1 -1
  176. package/esm/typings/tooltip/position.d.ts +19 -2
  177. package/esm/typings/tooltip/position.js +15 -1
  178. package/esm/typings/tooltip/position.js.map +1 -1
  179. package/package.json +17 -17
@@ -1,15 +1,5 @@
1
1
  "use strict";
2
2
 
3
- var __rest = this && this.__rest || function(s, e) {
4
- var t = {};
5
- for (var p in s) Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0 && (t[p] = s[p]);
6
- if (null != s && "function" == typeof Object.getOwnPropertySymbols) {
7
- var i = 0;
8
- for (p = Object.getOwnPropertySymbols(s); i < p.length; i++) e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]) && (t[p[i]] = s[p[i]]);
9
- }
10
- return t;
11
- };
12
-
13
3
  Object.defineProperty(exports, "__esModule", {
14
4
  value: !0
15
5
  }), exports.registerAxis = exports.AxisComponent = void 0;
@@ -188,78 +178,95 @@ class AxisComponent extends base_component_1.BaseComponent {
188
178
  component.addEventListener("*", ((event, type) => this._delegateEvent(component, event, type)));
189
179
  }
190
180
  _getAxisAttributes() {
191
- const spec = this._spec, axisAttrs = {
181
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
182
+ const spec = this._spec;
183
+ let titleTextStyle, titleAngle = spec.title.angle;
184
+ "left" !== spec.orient && "right" !== spec.orient || (null === (_a = spec.title) || void 0 === _a ? void 0 : _a.autoRotate) && (0,
185
+ vutils_1.isNil)(spec.title.angle) && (titleAngle = "left" === spec.orient ? -90 : 90,
186
+ titleTextStyle = util_1.DEFAULT_TITLE_STYLE[spec.orient]);
187
+ const labelSpec = (0, vutils_1.pickWithout)(spec.label, [ "style", "formatMethod", "state" ]), backgroundSpec = null !== (_b = spec.background) && void 0 !== _b ? _b : {}, titleBackgroundSpec = null !== (_c = spec.title.background) && void 0 !== _c ? _c : {};
188
+ return {
192
189
  orient: this.getOrient(),
193
190
  select: !0 !== this._option.disableTriggerEvent && spec.select,
194
- hover: !0 !== this._option.disableTriggerEvent && spec.hover
195
- };
196
- if (spec.domainLine && spec.domainLine.visible ? axisAttrs.line = (0, util_1.transformAxisLineStyle)(spec.domainLine) : axisAttrs.line = {
197
- visible: !1
198
- }, spec.label && spec.label.visible) {
199
- const labelSpec = (0, vutils_1.pickWithout)(spec.label, [ "style", "formatMethod", "state" ]);
200
- axisAttrs.label = labelSpec, spec.label.style && (axisAttrs.label.style = (0, vutils_1.isFunction)(spec.label.style) ? (datum, index, data, layer) => {
201
- var _a;
202
- const style = spec.label.style(datum.rawValue, index, datum, data, layer);
203
- return (0, style_1.transformToGraphic)((0, merge_spec_1.mergeSpec)({}, null === (_a = this._theme.label) || void 0 === _a ? void 0 : _a.style, style));
204
- } : (0, style_1.transformToGraphic)(spec.label.style)), spec.label.formatMethod && (axisAttrs.label.formatMethod = (value, datum, index) => spec.label.formatMethod(datum.rawValue, datum)),
205
- spec.label.state && (axisAttrs.label.state = (0, style_1.transformAxisLabelStateStyle)(spec.label.state));
206
- } else axisAttrs.label = {
207
- visible: !1
208
- };
209
- if (spec.tick && spec.tick.visible ? (axisAttrs.tick = {
210
- visible: spec.tick.visible,
211
- length: spec.tick.tickSize,
212
- inside: spec.tick.inside,
213
- alignWithLabel: spec.tick.alignWithLabel,
214
- dataFilter: spec.tick.dataFilter
215
- }, spec.tick.style && (axisAttrs.tick.style = (0, vutils_1.isFunction)(spec.tick.style) ? (value, index, datum, data) => {
216
- var _a;
217
- const style = spec.tick.style(value, index, datum, data);
218
- return (0, style_1.transformToGraphic)((0, merge_spec_1.mergeSpec)({}, null === (_a = this._theme.tick) || void 0 === _a ? void 0 : _a.style, style));
219
- } : (0, style_1.transformToGraphic)(spec.tick.style)), spec.tick.state && (axisAttrs.tick.state = (0,
220
- style_1.transformStateStyle)(spec.tick.state))) : axisAttrs.tick = {
221
- visible: !1
222
- }, spec.subTick && spec.subTick.visible ? (axisAttrs.subTick = {
223
- visible: spec.subTick.visible,
224
- length: spec.subTick.tickSize,
225
- inside: spec.subTick.inside,
226
- count: spec.subTick.tickCount
227
- }, spec.subTick.style && (axisAttrs.subTick.style = (0, vutils_1.isFunction)(spec.subTick.style) ? (value, index, datum, data) => {
228
- var _a;
229
- const style = spec.subTick.style(value, index, datum, data);
230
- return (0, style_1.transformToGraphic)((0, merge_spec_1.mergeSpec)({}, null === (_a = this._theme.subTick) || void 0 === _a ? void 0 : _a.style, style));
231
- } : (0, style_1.transformToGraphic)(spec.subTick.style)), spec.subTick.state && (axisAttrs.subTick.state = (0,
232
- style_1.transformStateStyle)(spec.subTick.state))) : axisAttrs.subTick = {
233
- visible: !1
234
- }, spec.title && spec.title.visible) {
235
- const _a = spec.title, {autoRotate: autoRotate, angle: angle, style: titleStyle = {}, background: titleBackgroundSpec, state: titleState, shape: titleShapeSpec} = _a, restTitleAttrs = __rest(_a, [ "autoRotate", "angle", "style", "background", "state", "shape" ]);
236
- let titleTextStyle, titleAngle = angle;
237
- "left" !== spec.orient && "right" !== spec.orient || autoRotate && (0, vutils_1.isNil)(titleAngle) && (titleAngle = "left" === spec.orient ? -90 : 90,
238
- titleTextStyle = util_1.DEFAULT_TITLE_STYLE[spec.orient]), axisAttrs.title = Object.assign(Object.assign({}, restTitleAttrs), {
191
+ hover: !0 !== this._option.disableTriggerEvent && spec.hover,
192
+ line: (0, util_1.transformAxisLineStyle)(spec.domainLine),
193
+ label: Object.assign({
194
+ style: (0, vutils_1.isFunction)(spec.label.style) ? (datum, index, data, layer) => {
195
+ var _a;
196
+ const style = spec.label.style(datum.rawValue, index, datum, data, layer);
197
+ return (0, style_1.transformToGraphic)((0, merge_spec_1.mergeSpec)({}, null === (_a = this._theme.label) || void 0 === _a ? void 0 : _a.style, style));
198
+ } : (0, style_1.transformToGraphic)(spec.label.style),
199
+ formatMethod: spec.label.formatMethod ? (value, datum, index) => spec.label.formatMethod(datum.rawValue, datum) : null,
200
+ state: (0, style_1.transformAxisLabelStateStyle)(spec.label.state)
201
+ }, labelSpec),
202
+ tick: !1 === spec.tick.visible ? {
203
+ visible: !1
204
+ } : {
205
+ visible: spec.tick.visible,
206
+ length: spec.tick.tickSize,
207
+ inside: spec.tick.inside,
208
+ alignWithLabel: spec.tick.alignWithLabel,
209
+ style: (0, vutils_1.isFunction)(spec.tick.style) ? (value, index, datum, data) => {
210
+ var _a;
211
+ const style = spec.tick.style(value, index, datum, data);
212
+ return (0, style_1.transformToGraphic)((0, merge_spec_1.mergeSpec)({}, null === (_a = this._theme.tick) || void 0 === _a ? void 0 : _a.style, style));
213
+ } : (0, style_1.transformToGraphic)(spec.tick.style),
214
+ state: (0, style_1.transformStateStyle)(spec.tick.state),
215
+ dataFilter: spec.tick.dataFilter
216
+ },
217
+ subTick: !1 === spec.subTick.visible ? {
218
+ visible: !1
219
+ } : {
220
+ visible: spec.subTick.visible,
221
+ length: spec.subTick.tickSize,
222
+ inside: spec.subTick.inside,
223
+ count: spec.subTick.tickCount,
224
+ style: (0, vutils_1.isFunction)(spec.subTick.style) ? (value, index, datum, data) => {
225
+ var _a;
226
+ const style = spec.subTick.style(value, index, datum, data);
227
+ return (0, style_1.transformToGraphic)((0, merge_spec_1.mergeSpec)({}, null === (_a = this._theme.subTick) || void 0 === _a ? void 0 : _a.style, style));
228
+ } : (0, style_1.transformToGraphic)(spec.subTick.style),
229
+ state: (0, style_1.transformStateStyle)(spec.subTick.state)
230
+ },
231
+ title: !1 === spec.title.visible ? {
232
+ visible: !1
233
+ } : Object.assign({
234
+ visible: spec.title.visible,
235
+ position: spec.title.position,
236
+ space: spec.title.space,
239
237
  autoRotate: !1,
240
238
  angle: titleAngle ? (0, vutils_1.degreeToRadian)(titleAngle) : null,
241
- textStyle: (0, merge_spec_1.mergeSpec)({}, titleTextStyle, (0, style_1.transformToGraphic)(titleStyle)),
242
- pickable: !1 !== titleStyle.pickable,
243
- childrenPickable: !1 !== titleStyle.pickable,
244
- state: {}
245
- }), titleShapeSpec && titleShapeSpec.visible ? (axisAttrs.title.shape = Object.assign(Object.assign({}, titleShapeSpec), {
246
- style: (0, style_1.transformToGraphic)(titleShapeSpec.style)
247
- }), titleShapeSpec.state && (axisAttrs.title.state.shape = (0, style_1.transformStateStyle)(titleShapeSpec.state))) : axisAttrs.title.shape = {
248
- visible: !1
249
- }, titleBackgroundSpec && titleBackgroundSpec.visible ? (axisAttrs.title.background = Object.assign(Object.assign({}, titleBackgroundSpec), {
250
- style: (0, style_1.transformToGraphic)(titleBackgroundSpec.style)
251
- }), titleBackgroundSpec.state && (axisAttrs.title.state.background = (0, style_1.transformStateStyle)(titleBackgroundSpec.state))) : axisAttrs.title.background = {
239
+ textStyle: (0, merge_spec_1.mergeSpec)({}, titleTextStyle, (0, style_1.transformToGraphic)(spec.title.style)),
240
+ padding: spec.title.padding,
241
+ shape: !1 === (null === (_d = spec.title.shape) || void 0 === _d ? void 0 : _d.visible) ? {
242
+ visible: !1
243
+ } : {
244
+ visible: null === (_e = spec.title.shape) || void 0 === _e ? void 0 : _e.visible,
245
+ space: null === (_f = spec.title.shape) || void 0 === _f ? void 0 : _f.space,
246
+ style: (0, style_1.transformToGraphic)(null === (_g = spec.title.shape) || void 0 === _g ? void 0 : _g.style)
247
+ },
248
+ background: !1 === titleBackgroundSpec.visible ? {
249
+ visible: !1
250
+ } : {
251
+ visible: titleBackgroundSpec.visible,
252
+ style: (0, style_1.transformToGraphic)(titleBackgroundSpec.style)
253
+ },
254
+ state: {
255
+ text: (0, style_1.transformStateStyle)(spec.title.state),
256
+ shape: (0, style_1.transformStateStyle)(null === (_h = spec.title.shape) || void 0 === _h ? void 0 : _h.state),
257
+ background: (0, style_1.transformStateStyle)(null === (_j = spec.title.background) || void 0 === _j ? void 0 : _j.state)
258
+ },
259
+ pickable: !1 !== (null === (_k = spec.title.style) || void 0 === _k ? void 0 : _k.pickable),
260
+ childrenPickable: !1 !== (null === (_l = spec.title.style) || void 0 === _l ? void 0 : _l.pickable)
261
+ }, spec.title),
262
+ panel: !1 === backgroundSpec.visible ? {
252
263
  visible: !1
253
- }, titleState && (axisAttrs.title.state.text = (0, style_1.transformStateStyle)(titleState));
254
- } else axisAttrs.title = {
255
- visible: !1
264
+ } : {
265
+ visible: backgroundSpec.visible,
266
+ style: (0, style_1.transformToGraphic)(backgroundSpec.style),
267
+ state: (0, style_1.transformStateStyle)(backgroundSpec.state)
268
+ }
256
269
  };
257
- return spec.background && spec.background.visible ? (axisAttrs.panel = {
258
- visible: !0
259
- }, spec.background.style && (axisAttrs.panel.style = (0, style_1.transformToGraphic)(spec.background.style)),
260
- spec.background.state && (axisAttrs.panel.state = (0, style_1.transformStateStyle)(spec.background.state))) : axisAttrs.panel = {
261
- visible: !1
262
- }, axisAttrs;
263
270
  }
264
271
  _getGridAttributes() {
265
272
  const spec = this._spec;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/axis/base-axis.ts"],"names":[],"mappings":"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","file":"base-axis.js","sourcesContent":["import { ticks } from '@visactor/vutils-extension';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ITickDataOpt } from '@visactor/vutils-extension';\nimport type { IBaseScale } from '@visactor/vscale';\nimport type { IGroup, IGraphic } from '@visactor/vrender-core';\n// eslint-disable-next-line no-duplicate-imports\nimport type {\n IOrientType,\n IPolarOrientType,\n Datum,\n StringOrNumber,\n IGroup as ISeriesGroup,\n CoordinateType\n} from '../../typings';\nimport { BaseComponent } from '../base/base-component';\nimport { CompilableData } from '../../compile/data';\nimport type { IAxis, ICommonAxisSpec, ITick } from './interface';\nimport type { IComponentOption } from '../interface';\nimport { eachSeries, getSeries } from '../../util/model';\nimport { mergeSpec } from '../../util/spec/merge-spec';\nimport type { ISeries } from '../../series/interface';\nimport { ChartEvent, LayoutZIndex } from '../../constant';\nimport { animationConfig } from '../../animation/utils';\nimport type { LooseFunction } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport {\n degreeToRadian,\n pickWithout,\n isEqual,\n array,\n get,\n isArray,\n isBoolean,\n isFunction,\n isNil,\n isValid,\n maxInArray\n} from '@visactor/vutils';\nimport { DEFAULT_TITLE_STYLE, transformAxisLineStyle } from './util';\nimport { transformAxisLabelStateStyle, transformStateStyle, transformToGraphic } from '../../util/style';\nimport type { ITransformOptions } from '@visactor/vdataset';\n// eslint-disable-next-line no-duplicate-imports\nimport { DataView } from '@visactor/vdataset';\nimport {\n GridEnum,\n registerAxis as registerVGrammarAxis,\n registerGrid as registerVGrammarGrid\n} from '@visactor/vgrammar-core';\nimport type { IComponentMark } from '../../mark/component';\n// eslint-disable-next-line no-duplicate-imports\nimport { registerComponentMark } from '../../mark/component';\nimport { Factory } from '../../core/factory';\n// eslint-disable-next-line no-duplicate-imports\nimport { GroupFadeIn, GroupTransition } from '@visactor/vrender-components';\n// eslint-disable-next-line no-duplicate-imports\nimport { GroupFadeOut } from '@visactor/vrender-core';\nimport { scaleParser } from '../../data/parser/scale';\nimport { registerDataSetInstanceParser, registerDataSetInstanceTransform } from '../../data/register';\n\nexport abstract class AxisComponent<T extends ICommonAxisSpec & Record<string, any> = any> // FIXME: 补充公共类型,去掉 Record<string, any>\n extends BaseComponent<T>\n implements IAxis\n{\n static specKey = 'axes';\n specKey = 'axes';\n\n protected _orient: IPolarOrientType | IOrientType;\n getOrient() {\n return this._orient;\n }\n\n protected _scale!: IBaseScale;\n getScale() {\n return this._scale;\n }\n\n protected _scales: IBaseScale[] = [];\n getScales() {\n return this._scales;\n }\n\n protected _tickData: CompilableData[] = [];\n getTickData(index = 0) {\n return this._tickData[index];\n }\n\n // 与系列的关联关系\n // 优先级:id > index\n // 最终结果:series & region取交集\n protected _seriesUserId?: StringOrNumber[];\n protected _seriesIndex?: number[];\n protected _regionUserId?: StringOrNumber[];\n protected _regionIndex?: number[];\n\n /**\n * if axis will be shown\n */\n protected _visible: boolean = true;\n get visible() {\n return this._visible;\n }\n\n /** 轴是否产生反转的真实值,在横向图表的竖轴上可能和用户在 spec 上配的值相反 */\n protected _inverse: boolean;\n getInverse() {\n return this._inverse;\n }\n\n protected _tick: ITick | undefined = undefined;\n protected abstract computeDomain(data: { min: number; max: number; values: any[] }[]): StringOrNumber[];\n abstract valueToPosition(value: any): number;\n protected abstract axisHelper(): any;\n protected abstract getSeriesStatisticsField(s: ISeries): string[];\n protected abstract updateSeriesScale(): void;\n protected abstract collectData(depth: number, rawData?: boolean): { min: number; max: number; values: any[] }[];\n abstract transformScaleDomain(): void;\n\n protected _dataFieldText: string;\n protected _axisMark: IComponentMark;\n protected _gridMark: IComponentMark;\n\n protected _coordinateType: CoordinateType;\n\n constructor(spec: T, options: IComponentOption) {\n super(spec, options);\n this._visible = spec.visible ?? true;\n this._coordinateType = 'none';\n }\n\n protected _getNeedClearVRenderComponents(): IGraphic[] {\n return [];\n }\n\n getVRenderComponents() {\n return array(this._axisMark?.getProduct()?.getGroupGraphicItem());\n }\n\n created() {\n super.created();\n //series and regions\n this.setSeriesAndRegionsFromSpec();\n // event\n this.initEvent();\n // scales\n this.initScales();\n this.updateSeriesScale();\n // data,当且仅当轴展示的时候处理\n this.getVisible() && this._initData();\n\n if (this._visible) {\n // 创建语法元素\n const axisMark = this._createMark(\n { type: 'component', name: `axis-${this.getOrient()}` },\n {\n componentType: this.getOrient() === 'angle' ? 'circleAxis' : 'axis',\n mode: this._spec.mode,\n noSeparateStyle: true,\n skipTheme: true // skip theme of vgrammar to avoid merge\n }\n );\n this._axisMark = axisMark;\n axisMark.setZIndex(this.layoutZIndex);\n if (isValid(this._spec.id)) {\n axisMark.setUserId(this._spec.id);\n }\n this._marks.addMark(axisMark);\n\n if (this._spec.grid?.visible) {\n const gridMark = this._createMark(\n { type: 'component', name: `axis-${this.getOrient()}-grid` },\n {\n componentType: this.getOrient() === 'angle' ? GridEnum.circleAxisGrid : GridEnum.lineAxisGrid,\n mode: this._spec.mode,\n noSeparateStyle: true,\n skipTheme: true\n }\n );\n gridMark.setZIndex(this._spec.grid?.style?.zIndex ?? this._spec.grid?.zIndex ?? LayoutZIndex.Axis_Grid);\n this._marks.addMark(gridMark);\n this._gridMark = gridMark;\n }\n\n // interactive\n if (isBoolean(this._spec.interactive)) {\n this._marks.forEach(m => m.setInteractive(this._spec.interactive));\n }\n\n // Tip: 支持 spec.animationAppear.axis,并且坐标轴默认关闭动画\n if (\n this._option.animation !== false &&\n get(this._option.getChart().getSpec(), 'animation') !== false &&\n this._spec.animation === true\n ) {\n const axisAnimateConfig = animationConfig(Factory.getAnimationInKey('axis')?.(), {\n appear:\n this._spec.animationAppear ??\n get(this._option.getChart().getSpec(), 'animationAppear.axis') ??\n get(this._option.getChart().getSpec(), 'animationAppear'),\n disappear:\n this._spec.animationDisappear ??\n get(this._option.getChart().getSpec(), 'animationDisappear.axis') ??\n get(this._option.getChart().getSpec(), 'animationDisappear'),\n enter:\n this._spec.animationEnter ??\n get(this._option.getChart().getSpec(), 'animationEnter.axis') ??\n get(this._option.getChart().getSpec(), 'animationEnter'),\n exit:\n this._spec.animationExit ??\n get(this._option.getChart().getSpec(), 'animationExit.axis') ??\n get(this._option.getChart().getSpec(), 'animationExit'),\n update:\n this._spec.animationUpdate ??\n get(this._option.getChart().getSpec(), 'animationUpdate.axis') ??\n get(this._option.getChart().getSpec(), 'animationUpdate')\n });\n // 因为坐标轴的更新动画中处理了 enter,所以需要将 enter 的参数传入\n if (axisAnimateConfig.enter) {\n axisAnimateConfig.update[0].customParameters = {\n enter: axisAnimateConfig.enter[0]\n };\n }\n this._marks.forEach(m => m.setAnimationConfig(axisAnimateConfig));\n }\n }\n }\n\n // data\n protected _initData() {\n const tickData = this._initTickDataSet(this._tickTransformOption());\n tickData.target.addListener('change', this._forceLayout.bind(this));\n this._tickData = [new CompilableData(this._option, tickData)];\n }\n\n protected isSeriesDataEnable() {\n let enable = true;\n eachSeries(\n this._regions,\n s => {\n if (isArray(s.getViewDataStatistics()?.latestData)) {\n enable = false;\n }\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n return enable;\n }\n\n protected setSeriesAndRegionsFromSpec() {\n const { seriesId, seriesIndex, regionId, regionIndex } = this._spec;\n isValid(seriesId) && (this._seriesUserId = array(seriesId));\n isValid(regionId) && (this._regionUserId = array(regionId));\n isValid(seriesIndex) && (this._seriesIndex = array(seriesIndex));\n isValid(regionIndex) && (this._regionIndex = array(regionIndex));\n this._regions = this._option.getRegionsInUserIdOrIndex(this._regionUserId as string[], this._regionIndex);\n // _regions 被更新了,layoutBindRegionID 也要更新\n this.layout.layoutBindRegionID = this._regions.map(x => x.id);\n }\n\n getBindSeriesFilter() {\n return {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n };\n }\n\n protected initEvent() {\n this.event.on(\n ChartEvent.scaleUpdate,\n { filter: ({ model }) => model?.id === this.id },\n this.effect.scaleUpdate.bind(this)\n );\n const viewStatistics = getSeries(this._regions, {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n })\n .map(s => s.getViewDataStatistics())\n .filter(v => !!v);\n\n if (viewStatistics.length > 1) {\n this._option.dataSet.multipleDataViewAddListener(viewStatistics, 'change', () => {\n this.updateScaleDomain();\n });\n } else if (viewStatistics.length === 1) {\n viewStatistics[0].target.addListener('change', () => {\n this.updateScaleDomain();\n });\n }\n\n eachSeries(\n this._regions,\n s => {\n s.event.on(ChartEvent.rawDataUpdate, { filter: ({ model }) => model?.id === s.id }, () => {\n // 只清除,不更新,在需要时,更新一次。避免多系列下多次更新\n this._clearRawDomain();\n });\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n\n protected updateScaleDomain() {\n // 留给各个类型的 axis 来 override\n }\n\n protected _clearRawDomain() {\n // 留给各个类型的 axis 来 override\n }\n\n protected computeData(updateType?: 'domain' | 'range' | 'force'): void {\n if (this._tickData && this._tickData.length && (updateType === 'force' || !isEqual(this._scale.range(), [0, 1]))) {\n this._tickData.forEach(tickData => {\n tickData.getDataView().reRunAllTransform();\n tickData.updateData();\n });\n }\n }\n\n protected initScales() {\n this._scales = [this._scale];\n const groups: ISeriesGroup[] = [];\n eachSeries(\n this._regions,\n s => {\n const g = s.getGroups();\n g && groups.push(g);\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n if (groups.length !== 0) {\n const depth = maxInArray(groups.map(g => g.fields.length));\n for (let i = 1; i < depth; i++) {\n const scale = this._scale.clone();\n this._scales.push(scale);\n }\n }\n // this.updateScaleDomain();\n }\n\n /** Update API **/\n _compareSpec(spec: T, prevSpec: T) {\n const result = super._compareSpec(spec, prevSpec);\n result.reRender = true;\n if (prevSpec?.type !== spec?.type) {\n result.reMake = true;\n return result;\n }\n return result;\n }\n\n protected getLabelFormatMethod() {\n return this._spec.label.formatMethod\n ? (value: any, datum: any, index: number) => this._spec.label.formatMethod(datum.rawValue, datum)\n : null;\n }\n\n protected _delegateAxisContainerEvent(component: IGroup) {\n component.addEventListener('*', ((event: any, type: string) =>\n this._delegateEvent(component as unknown as IGraphic, event, type)) as LooseFunction);\n }\n\n protected _getAxisAttributes() {\n const spec = this._spec;\n\n const axisAttrs: any = {\n orient: this.getOrient(),\n select: this._option.disableTriggerEvent === true ? false : spec.select,\n hover: this._option.disableTriggerEvent === true ? false : spec.hover\n };\n\n // 属性均需要显示开启\n if (spec.domainLine && spec.domainLine.visible) {\n axisAttrs.line = transformAxisLineStyle(spec.domainLine);\n } else {\n axisAttrs.line = { visible: false };\n }\n\n if (spec.label && spec.label.visible) {\n const labelSpec = pickWithout(spec.label, ['style', 'formatMethod', 'state']);\n axisAttrs.label = labelSpec;\n if (spec.label.style) {\n axisAttrs.label.style = isFunction(spec.label.style)\n ? (datum: Datum, index: number, data: Datum[], layer?: number) => {\n const style = spec.label.style(datum.rawValue, index, datum, data, layer);\n return transformToGraphic(mergeSpec({}, this._theme.label?.style, style));\n }\n : transformToGraphic(spec.label.style);\n }\n if (spec.label.formatMethod) {\n axisAttrs.label.formatMethod = (value: any, datum: any, index: number) => {\n return spec.label.formatMethod(datum.rawValue, datum);\n };\n }\n if (spec.label.state) {\n axisAttrs.label.state = transformAxisLabelStateStyle(spec.label.state);\n }\n } else {\n axisAttrs.label = {\n visible: false\n };\n }\n\n if (spec.tick && spec.tick.visible) {\n axisAttrs.tick = {\n visible: spec.tick.visible,\n length: spec.tick.tickSize,\n inside: spec.tick.inside,\n alignWithLabel: spec.tick.alignWithLabel,\n dataFilter: spec.tick.dataFilter\n };\n if (spec.tick.style) {\n axisAttrs.tick.style = isFunction(spec.tick.style)\n ? (value: number, index: number, datum: Datum, data: Datum[]) => {\n const style = (spec.tick.style as any)(value, index, datum, data);\n return transformToGraphic(mergeSpec({}, this._theme.tick?.style, style));\n }\n : transformToGraphic(spec.tick.style);\n }\n if (spec.tick.state) {\n axisAttrs.tick.state = transformStateStyle(spec.tick.state);\n }\n } else {\n axisAttrs.tick = {\n visible: false\n };\n }\n\n if (spec.subTick && spec.subTick.visible) {\n axisAttrs.subTick = {\n visible: spec.subTick.visible,\n length: spec.subTick.tickSize,\n inside: spec.subTick.inside,\n count: spec.subTick.tickCount\n };\n if (spec.subTick.style) {\n axisAttrs.subTick.style = isFunction(spec.subTick.style)\n ? (value: number, index: number, datum: Datum, data: Datum[]) => {\n const style = (spec.subTick.style as any)(value, index, datum, data);\n return transformToGraphic(mergeSpec({}, this._theme.subTick?.style, style));\n }\n : transformToGraphic(spec.subTick.style);\n }\n if (spec.subTick.state) {\n axisAttrs.subTick.state = transformStateStyle(spec.subTick.state);\n }\n } else {\n axisAttrs.subTick = {\n visible: false\n };\n }\n\n if (spec.title && spec.title.visible) {\n const {\n autoRotate,\n angle,\n style: titleStyle = {},\n background: titleBackgroundSpec,\n state: titleState,\n shape: titleShapeSpec,\n ...restTitleAttrs\n } = spec.title;\n let titleAngle = angle;\n let titleTextStyle;\n if (spec.orient === 'left' || spec.orient === 'right') {\n // 处理纵轴的标题样式\n if (autoRotate && isNil(titleAngle)) {\n titleAngle = spec.orient === 'left' ? -90 : 90;\n titleTextStyle = DEFAULT_TITLE_STYLE[spec.orient];\n }\n }\n\n axisAttrs.title = {\n ...restTitleAttrs,\n autoRotate: false, // 默认不对外提供该配置\n angle: titleAngle ? degreeToRadian(titleAngle) : null,\n textStyle: mergeSpec({}, titleTextStyle, transformToGraphic(titleStyle)),\n pickable: titleStyle.pickable !== false,\n childrenPickable: titleStyle.pickable !== false,\n state: {}\n };\n\n if (titleShapeSpec && titleShapeSpec.visible) {\n axisAttrs.title.shape = {\n ...titleShapeSpec,\n style: transformToGraphic(titleShapeSpec.style)\n };\n if (titleShapeSpec.state) {\n axisAttrs.title.state.shape = transformStateStyle(titleShapeSpec.state);\n }\n } else {\n axisAttrs.title.shape = { visible: false };\n }\n\n if (titleBackgroundSpec && titleBackgroundSpec.visible) {\n axisAttrs.title.background = {\n ...titleBackgroundSpec,\n style: transformToGraphic(titleBackgroundSpec.style)\n };\n if (titleBackgroundSpec.state) {\n axisAttrs.title.state.background = transformStateStyle(titleBackgroundSpec.state);\n }\n } else {\n axisAttrs.title.background = { visible: false };\n }\n\n if (titleState) {\n axisAttrs.title.state.text = transformStateStyle(titleState);\n }\n } else {\n axisAttrs.title = {\n visible: false\n };\n }\n\n if (spec.background && spec.background.visible) {\n axisAttrs.panel = {\n visible: true\n };\n if (spec.background.style) {\n axisAttrs.panel.style = transformToGraphic(spec.background.style);\n }\n if (spec.background.state) {\n axisAttrs.panel.state = transformStateStyle(spec.background.state);\n }\n } else {\n axisAttrs.panel = {\n visible: false\n };\n }\n\n return axisAttrs;\n }\n\n protected _getGridAttributes() {\n const spec = this._spec;\n return {\n alternateColor: spec.grid.alternateColor,\n alignWithLabel: spec.grid.alignWithLabel,\n style: isFunction(spec.grid.style)\n ? () => {\n return (datum: Datum, index: number) => {\n const style = spec.grid.style(datum.datum?.rawValue, index, datum.datum);\n return transformToGraphic(mergeSpec({}, this._theme.grid?.style, style));\n };\n }\n : transformToGraphic(spec.grid.style),\n subGrid:\n spec.subGrid.visible === false\n ? { visible: false }\n : {\n type: 'line',\n visible: spec.subGrid.visible,\n alternateColor: spec.subGrid.alternateColor,\n style: transformToGraphic(spec.subGrid.style)\n }\n };\n }\n\n protected _initTickDataSet<T extends ITickDataOpt>(options: T, index: number = 0) {\n registerDataSetInstanceParser(this._option.dataSet, 'scale', scaleParser);\n registerDataSetInstanceTransform(this._option.dataSet, 'ticks', ticks);\n const tickData = new DataView(this._option.dataSet, { name: `${this.type}_${this.id}_ticks_${index}` })\n .parse(this._scales[index], {\n type: 'scale'\n })\n .transform(\n {\n type: 'ticks',\n options\n },\n false\n );\n return tickData;\n }\n\n protected _tickTransformOption(): ITickDataOpt {\n const tick = this._tick || {};\n const label = this._spec.label || {};\n const { tickCount, forceTickCount, tickStep, tickMode } = tick;\n const { style: labelStyle, formatMethod: labelFormatter, minGap: labelGap } = label;\n return {\n sampling: this._spec.sampling !== false,\n tickCount,\n forceTickCount,\n tickStep,\n tickMode,\n axisOrientType: this._orient,\n coordinateType: this._coordinateType,\n\n labelStyle,\n labelFormatter,\n labelGap\n };\n }\n\n addTransformToTickData(options: ITransformOptions, execute?: boolean) {\n this._tickData.forEach(tickData => {\n tickData?.getDataView()?.transform(options, execute);\n });\n }\n\n dataToPosition(values: any[]): number {\n return this._scale.scale(values);\n }\n}\n\nexport const registerAxis = () => {\n registerVGrammarAxis();\n registerVGrammarGrid();\n registerComponentMark();\n Factory.registerAnimation('axis', () => ({\n appear: {\n custom: GroupFadeIn\n },\n update: {\n custom: GroupTransition\n },\n exit: {\n custom: GroupFadeOut\n }\n }));\n};\n"]}
1
+ {"version":3,"sources":["../src/component/axis/base-axis.ts"],"names":[],"mappings":"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","file":"base-axis.js","sourcesContent":["import { ticks } from '@visactor/vutils-extension';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ITickDataOpt } from '@visactor/vutils-extension';\nimport type { IBaseScale } from '@visactor/vscale';\nimport type { IGroup, IGraphic } from '@visactor/vrender-core';\n// eslint-disable-next-line no-duplicate-imports\nimport type {\n IOrientType,\n IPolarOrientType,\n Datum,\n StringOrNumber,\n IGroup as ISeriesGroup,\n CoordinateType\n} from '../../typings';\nimport { BaseComponent } from '../base/base-component';\nimport { CompilableData } from '../../compile/data';\nimport type { IAxis, ICommonAxisSpec, ITick } from './interface';\nimport type { IComponentOption } from '../interface';\nimport { eachSeries, getSeries } from '../../util/model';\nimport { mergeSpec } from '../../util/spec/merge-spec';\nimport type { ISeries } from '../../series/interface';\nimport { ChartEvent, LayoutZIndex } from '../../constant';\nimport { animationConfig } from '../../animation/utils';\nimport type { LooseFunction } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport {\n degreeToRadian,\n pickWithout,\n isEqual,\n array,\n get,\n isArray,\n isBoolean,\n isFunction,\n isNil,\n isValid,\n maxInArray\n} from '@visactor/vutils';\nimport { DEFAULT_TITLE_STYLE, transformAxisLineStyle } from './util';\nimport { transformAxisLabelStateStyle, transformStateStyle, transformToGraphic } from '../../util/style';\nimport type { ITransformOptions } from '@visactor/vdataset';\n// eslint-disable-next-line no-duplicate-imports\nimport { DataView } from '@visactor/vdataset';\nimport {\n GridEnum,\n registerAxis as registerVGrammarAxis,\n registerGrid as registerVGrammarGrid\n} from '@visactor/vgrammar-core';\nimport type { IComponentMark } from '../../mark/component';\n// eslint-disable-next-line no-duplicate-imports\nimport { registerComponentMark } from '../../mark/component';\nimport { Factory } from '../../core/factory';\n// eslint-disable-next-line no-duplicate-imports\nimport { GroupFadeIn, GroupTransition } from '@visactor/vrender-components';\n// eslint-disable-next-line no-duplicate-imports\nimport { GroupFadeOut } from '@visactor/vrender-core';\nimport { scaleParser } from '../../data/parser/scale';\nimport { registerDataSetInstanceParser, registerDataSetInstanceTransform } from '../../data/register';\n\nexport abstract class AxisComponent<T extends ICommonAxisSpec & Record<string, any> = any> // FIXME: 补充公共类型,去掉 Record<string, any>\n extends BaseComponent<T>\n implements IAxis\n{\n static specKey = 'axes';\n specKey = 'axes';\n\n protected _orient: IPolarOrientType | IOrientType;\n getOrient() {\n return this._orient;\n }\n\n protected _scale!: IBaseScale;\n getScale() {\n return this._scale;\n }\n\n protected _scales: IBaseScale[] = [];\n getScales() {\n return this._scales;\n }\n\n protected _tickData: CompilableData[] = [];\n getTickData(index = 0) {\n return this._tickData[index];\n }\n\n // 与系列的关联关系\n // 优先级:id > index\n // 最终结果:series & region取交集\n protected _seriesUserId?: StringOrNumber[];\n protected _seriesIndex?: number[];\n protected _regionUserId?: StringOrNumber[];\n protected _regionIndex?: number[];\n\n /**\n * if axis will be shown\n */\n protected _visible: boolean = true;\n get visible() {\n return this._visible;\n }\n\n /** 轴是否产生反转的真实值,在横向图表的竖轴上可能和用户在 spec 上配的值相反 */\n protected _inverse: boolean;\n getInverse() {\n return this._inverse;\n }\n\n protected _tick: ITick | undefined = undefined;\n protected abstract computeDomain(data: { min: number; max: number; values: any[] }[]): StringOrNumber[];\n abstract valueToPosition(value: any): number;\n protected abstract axisHelper(): any;\n protected abstract getSeriesStatisticsField(s: ISeries): string[];\n protected abstract updateSeriesScale(): void;\n protected abstract collectData(depth: number, rawData?: boolean): { min: number; max: number; values: any[] }[];\n abstract transformScaleDomain(): void;\n\n protected _dataFieldText: string;\n protected _axisMark: IComponentMark;\n protected _gridMark: IComponentMark;\n\n protected _coordinateType: CoordinateType;\n\n constructor(spec: T, options: IComponentOption) {\n super(spec, options);\n this._visible = spec.visible ?? true;\n this._coordinateType = 'none';\n }\n\n protected _getNeedClearVRenderComponents(): IGraphic[] {\n return [];\n }\n\n getVRenderComponents() {\n return array(this._axisMark?.getProduct()?.getGroupGraphicItem());\n }\n\n created() {\n super.created();\n //series and regions\n this.setSeriesAndRegionsFromSpec();\n // event\n this.initEvent();\n // scales\n this.initScales();\n this.updateSeriesScale();\n // data,当且仅当轴展示的时候处理\n this.getVisible() && this._initData();\n\n if (this._visible) {\n // 创建语法元素\n const axisMark = this._createMark(\n { type: 'component', name: `axis-${this.getOrient()}` },\n {\n componentType: this.getOrient() === 'angle' ? 'circleAxis' : 'axis',\n mode: this._spec.mode,\n noSeparateStyle: true,\n skipTheme: true // skip theme of vgrammar to avoid merge\n }\n );\n this._axisMark = axisMark;\n axisMark.setZIndex(this.layoutZIndex);\n if (isValid(this._spec.id)) {\n axisMark.setUserId(this._spec.id);\n }\n this._marks.addMark(axisMark);\n\n if (this._spec.grid?.visible) {\n const gridMark = this._createMark(\n { type: 'component', name: `axis-${this.getOrient()}-grid` },\n {\n componentType: this.getOrient() === 'angle' ? GridEnum.circleAxisGrid : GridEnum.lineAxisGrid,\n mode: this._spec.mode,\n noSeparateStyle: true,\n skipTheme: true\n }\n );\n gridMark.setZIndex(this._spec.grid?.style?.zIndex ?? this._spec.grid?.zIndex ?? LayoutZIndex.Axis_Grid);\n this._marks.addMark(gridMark);\n this._gridMark = gridMark;\n }\n\n // interactive\n if (isBoolean(this._spec.interactive)) {\n this._marks.forEach(m => m.setInteractive(this._spec.interactive));\n }\n\n // Tip: 支持 spec.animationAppear.axis,并且坐标轴默认关闭动画\n if (\n this._option.animation !== false &&\n get(this._option.getChart().getSpec(), 'animation') !== false &&\n this._spec.animation === true\n ) {\n const axisAnimateConfig = animationConfig(Factory.getAnimationInKey('axis')?.(), {\n appear:\n this._spec.animationAppear ??\n get(this._option.getChart().getSpec(), 'animationAppear.axis') ??\n get(this._option.getChart().getSpec(), 'animationAppear'),\n disappear:\n this._spec.animationDisappear ??\n get(this._option.getChart().getSpec(), 'animationDisappear.axis') ??\n get(this._option.getChart().getSpec(), 'animationDisappear'),\n enter:\n this._spec.animationEnter ??\n get(this._option.getChart().getSpec(), 'animationEnter.axis') ??\n get(this._option.getChart().getSpec(), 'animationEnter'),\n exit:\n this._spec.animationExit ??\n get(this._option.getChart().getSpec(), 'animationExit.axis') ??\n get(this._option.getChart().getSpec(), 'animationExit'),\n update:\n this._spec.animationUpdate ??\n get(this._option.getChart().getSpec(), 'animationUpdate.axis') ??\n get(this._option.getChart().getSpec(), 'animationUpdate')\n });\n // 因为坐标轴的更新动画中处理了 enter,所以需要将 enter 的参数传入\n if (axisAnimateConfig.enter) {\n axisAnimateConfig.update[0].customParameters = {\n enter: axisAnimateConfig.enter[0]\n };\n }\n this._marks.forEach(m => m.setAnimationConfig(axisAnimateConfig));\n }\n }\n }\n\n // data\n protected _initData() {\n const tickData = this._initTickDataSet(this._tickTransformOption());\n tickData.target.addListener('change', this._forceLayout.bind(this));\n this._tickData = [new CompilableData(this._option, tickData)];\n }\n\n protected isSeriesDataEnable() {\n let enable = true;\n eachSeries(\n this._regions,\n s => {\n if (isArray(s.getViewDataStatistics()?.latestData)) {\n enable = false;\n }\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n return enable;\n }\n\n protected setSeriesAndRegionsFromSpec() {\n const { seriesId, seriesIndex, regionId, regionIndex } = this._spec;\n isValid(seriesId) && (this._seriesUserId = array(seriesId));\n isValid(regionId) && (this._regionUserId = array(regionId));\n isValid(seriesIndex) && (this._seriesIndex = array(seriesIndex));\n isValid(regionIndex) && (this._regionIndex = array(regionIndex));\n this._regions = this._option.getRegionsInUserIdOrIndex(this._regionUserId as string[], this._regionIndex);\n // _regions 被更新了,layoutBindRegionID 也要更新\n this.layout.layoutBindRegionID = this._regions.map(x => x.id);\n }\n\n getBindSeriesFilter() {\n return {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n };\n }\n\n protected initEvent() {\n this.event.on(\n ChartEvent.scaleUpdate,\n { filter: ({ model }) => model?.id === this.id },\n this.effect.scaleUpdate.bind(this)\n );\n const viewStatistics = getSeries(this._regions, {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n })\n .map(s => s.getViewDataStatistics())\n .filter(v => !!v);\n\n if (viewStatistics.length > 1) {\n this._option.dataSet.multipleDataViewAddListener(viewStatistics, 'change', () => {\n this.updateScaleDomain();\n });\n } else if (viewStatistics.length === 1) {\n viewStatistics[0].target.addListener('change', () => {\n this.updateScaleDomain();\n });\n }\n\n eachSeries(\n this._regions,\n s => {\n s.event.on(ChartEvent.rawDataUpdate, { filter: ({ model }) => model?.id === s.id }, () => {\n // 只清除,不更新,在需要时,更新一次。避免多系列下多次更新\n this._clearRawDomain();\n });\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n\n protected updateScaleDomain() {\n // 留给各个类型的 axis 来 override\n }\n\n protected _clearRawDomain() {\n // 留给各个类型的 axis 来 override\n }\n\n protected computeData(updateType?: 'domain' | 'range' | 'force'): void {\n if (this._tickData && this._tickData.length && (updateType === 'force' || !isEqual(this._scale.range(), [0, 1]))) {\n this._tickData.forEach(tickData => {\n tickData.getDataView().reRunAllTransform();\n tickData.updateData();\n });\n }\n }\n\n protected initScales() {\n this._scales = [this._scale];\n const groups: ISeriesGroup[] = [];\n eachSeries(\n this._regions,\n s => {\n const g = s.getGroups();\n g && groups.push(g);\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n if (groups.length !== 0) {\n const depth = maxInArray(groups.map(g => g.fields.length));\n for (let i = 1; i < depth; i++) {\n const scale = this._scale.clone();\n this._scales.push(scale);\n }\n }\n // this.updateScaleDomain();\n }\n\n /** Update API **/\n _compareSpec(spec: T, prevSpec: T) {\n const result = super._compareSpec(spec, prevSpec);\n result.reRender = true;\n if (prevSpec?.type !== spec?.type) {\n result.reMake = true;\n return result;\n }\n return result;\n }\n\n protected getLabelFormatMethod() {\n return this._spec.label.formatMethod\n ? (value: any, datum: any, index: number) => this._spec.label.formatMethod(datum.rawValue, datum)\n : null;\n }\n\n protected _delegateAxisContainerEvent(component: IGroup) {\n component.addEventListener('*', ((event: any, type: string) =>\n this._delegateEvent(component as unknown as IGraphic, event, type)) as LooseFunction);\n }\n\n protected _getAxisAttributes() {\n const spec = this._spec;\n let titleAngle = spec.title.angle;\n let titleTextStyle;\n if (spec.orient === 'left' || spec.orient === 'right') {\n // 处理纵轴的标题样式\n if (spec.title?.autoRotate && isNil(spec.title.angle)) {\n titleAngle = spec.orient === 'left' ? -90 : 90;\n titleTextStyle = DEFAULT_TITLE_STYLE[spec.orient];\n }\n }\n\n const labelSpec = pickWithout(spec.label, ['style', 'formatMethod', 'state']);\n const backgroundSpec = spec.background ?? {};\n const titleBackgroundSpec = spec.title.background ?? {};\n return {\n orient: this.getOrient(),\n select: this._option.disableTriggerEvent === true ? false : spec.select,\n hover: this._option.disableTriggerEvent === true ? false : spec.hover,\n line: transformAxisLineStyle(spec.domainLine),\n label: {\n style: isFunction(spec.label.style)\n ? (datum: Datum, index: number, data: Datum[], layer?: number) => {\n const style = spec.label.style(datum.rawValue, index, datum, data, layer);\n return transformToGraphic(mergeSpec({}, this._theme.label?.style, style));\n }\n : transformToGraphic(spec.label.style),\n formatMethod: spec.label.formatMethod\n ? (value: any, datum: any, index: number) => {\n return spec.label.formatMethod(datum.rawValue, datum);\n }\n : null,\n state: transformAxisLabelStateStyle(spec.label.state),\n ...labelSpec\n },\n tick:\n spec.tick.visible === false\n ? { visible: false }\n : {\n visible: spec.tick.visible,\n length: spec.tick.tickSize,\n inside: spec.tick.inside,\n alignWithLabel: spec.tick.alignWithLabel,\n style: isFunction(spec.tick.style)\n ? (value: number, index: number, datum: Datum, data: Datum[]) => {\n const style = (spec.tick.style as any)(value, index, datum, data);\n return transformToGraphic(mergeSpec({}, this._theme.tick?.style, style));\n }\n : transformToGraphic(spec.tick.style),\n state: transformStateStyle(spec.tick.state),\n dataFilter: spec.tick.dataFilter\n },\n subTick:\n spec.subTick.visible === false\n ? { visible: false }\n : {\n visible: spec.subTick.visible,\n length: spec.subTick.tickSize,\n inside: spec.subTick.inside,\n count: spec.subTick.tickCount,\n style: isFunction(spec.subTick.style)\n ? (value: number, index: number, datum: Datum, data: Datum[]) => {\n const style = (spec.subTick.style as any)(value, index, datum, data);\n return transformToGraphic(mergeSpec({}, this._theme.subTick?.style, style));\n }\n : transformToGraphic(spec.subTick.style),\n state: transformStateStyle(spec.subTick.state)\n },\n title:\n spec.title.visible === false\n ? { visible: false }\n : {\n visible: spec.title.visible,\n position: spec.title.position,\n space: spec.title.space,\n autoRotate: false, // 默认不对外提供该配置\n angle: titleAngle ? degreeToRadian(titleAngle) : null,\n textStyle: mergeSpec({}, titleTextStyle, transformToGraphic(spec.title.style)),\n padding: spec.title.padding,\n shape:\n spec.title.shape?.visible === false\n ? { visible: false }\n : {\n visible: spec.title.shape?.visible,\n space: spec.title.shape?.space,\n style: transformToGraphic(spec.title.shape?.style)\n },\n background:\n titleBackgroundSpec.visible === false\n ? { visible: false }\n : {\n visible: titleBackgroundSpec.visible,\n style: transformToGraphic(titleBackgroundSpec.style)\n },\n state: {\n text: transformStateStyle(spec.title.state),\n shape: transformStateStyle(spec.title.shape?.state),\n background: transformStateStyle(spec.title.background?.state)\n },\n pickable: spec.title.style?.pickable !== false,\n childrenPickable: spec.title.style?.pickable !== false,\n ...spec.title\n },\n panel:\n backgroundSpec.visible === false\n ? { visible: false }\n : {\n visible: backgroundSpec.visible,\n style: transformToGraphic(backgroundSpec.style),\n state: transformStateStyle(backgroundSpec.state)\n }\n };\n }\n\n protected _getGridAttributes() {\n const spec = this._spec;\n return {\n alternateColor: spec.grid.alternateColor,\n alignWithLabel: spec.grid.alignWithLabel,\n style: isFunction(spec.grid.style)\n ? () => {\n return (datum: Datum, index: number) => {\n const style = spec.grid.style(datum.datum?.rawValue, index, datum.datum);\n return transformToGraphic(mergeSpec({}, this._theme.grid?.style, style));\n };\n }\n : transformToGraphic(spec.grid.style),\n subGrid:\n spec.subGrid.visible === false\n ? { visible: false }\n : {\n type: 'line',\n visible: spec.subGrid.visible,\n alternateColor: spec.subGrid.alternateColor,\n style: transformToGraphic(spec.subGrid.style)\n }\n };\n }\n\n protected _initTickDataSet<T extends ITickDataOpt>(options: T, index: number = 0) {\n registerDataSetInstanceParser(this._option.dataSet, 'scale', scaleParser);\n registerDataSetInstanceTransform(this._option.dataSet, 'ticks', ticks);\n const tickData = new DataView(this._option.dataSet, { name: `${this.type}_${this.id}_ticks_${index}` })\n .parse(this._scales[index], {\n type: 'scale'\n })\n .transform(\n {\n type: 'ticks',\n options\n },\n false\n );\n return tickData;\n }\n\n protected _tickTransformOption(): ITickDataOpt {\n const tick = this._tick || {};\n const label = this._spec.label || {};\n const { tickCount, forceTickCount, tickStep, tickMode } = tick;\n const { style: labelStyle, formatMethod: labelFormatter, minGap: labelGap } = label;\n return {\n sampling: this._spec.sampling !== false,\n tickCount,\n forceTickCount,\n tickStep,\n tickMode,\n axisOrientType: this._orient,\n coordinateType: this._coordinateType,\n\n labelStyle,\n labelFormatter,\n labelGap\n };\n }\n\n addTransformToTickData(options: ITransformOptions, execute?: boolean) {\n this._tickData.forEach(tickData => {\n tickData?.getDataView()?.transform(options, execute);\n });\n }\n\n dataToPosition(values: any[]): number {\n return this._scale.scale(values);\n }\n}\n\nexport const registerAxis = () => {\n registerVGrammarAxis();\n registerVGrammarGrid();\n registerComponentMark();\n Factory.registerAnimation('axis', () => ({\n appear: {\n custom: GroupFadeIn\n },\n update: {\n custom: GroupTransition\n },\n exit: {\n custom: GroupFadeOut\n }\n }));\n};\n"]}
@@ -98,11 +98,11 @@ export declare abstract class CartesianAxis<T extends ICartesianAxisCommonSpec =
98
98
  };
99
99
  _transformLayoutRect: (result: ILayoutRect) => ILayoutRect;
100
100
  getBoundsInRect(rect: ILayoutRect): IBoundsLike;
101
- updateLayoutAttribute(): void;
102
101
  private _getTitleLimit;
103
102
  private _getUpdateAttribute;
104
103
  protected getLabelItems(length: number): any[];
105
104
  protected initEvent(): void;
105
+ protected _updateAxisLayout: () => void;
106
106
  protected _getNormalizedValue(values: any[], length: number): number;
107
107
  private _fixAxisOnZero;
108
108
  protected _layoutCacheProcessing(rect: ILayoutRect): ILayoutRect;
@@ -89,6 +89,18 @@ class CartesianAxis extends base_axis_1.AxisComponent {
89
89
  }
90
90
  return result.width = Math.ceil(result.width), result.height = Math.ceil(result.height),
91
91
  this._layout.setRectInSpec(this._layoutCacheProcessing(result));
92
+ }, this._updateAxisLayout = () => {
93
+ const startPoint = this.getLayoutStartPoint(), _a = this._getUpdateAttribute(!1), {grid: updateGridAttrs} = _a, updateAxisAttrs = __rest(_a, [ "grid" ]), axisProduct = this._axisMark.getProduct(), axisAttrs = (0,
94
+ util_1.mergeSpec)({
95
+ x: startPoint.x,
96
+ y: startPoint.y
97
+ }, this._axisStyle, updateAxisAttrs);
98
+ if (axisProduct.encode(axisAttrs), this._gridMark) {
99
+ this._gridMark.getProduct().encode((0, util_1.mergeSpec)({
100
+ x: startPoint.x,
101
+ y: startPoint.y
102
+ }, this._getGridAttributes(), updateGridAttrs));
103
+ }
92
104
  }, this._fixAxisOnZero = () => {
93
105
  const {onZero: onZero, visible: visible} = this._spec.domainLine;
94
106
  if (this.visible && onZero && !1 !== visible) {
@@ -346,21 +358,6 @@ class CartesianAxis extends base_axis_1.AxisComponent {
346
358
  }
347
359
  return hasBounds || (this._latestBounds = product.getBounds()), result;
348
360
  }
349
- updateLayoutAttribute() {
350
- if (!this.visible) return;
351
- const startPoint = this.getLayoutStartPoint(), _a = this._getUpdateAttribute(!1), {grid: updateGridAttrs} = _a, updateAxisAttrs = __rest(_a, [ "grid" ]), axisProduct = this._axisMark.getProduct(), axisAttrs = (0,
352
- util_1.mergeSpec)({
353
- x: startPoint.x,
354
- y: startPoint.y
355
- }, this._axisStyle, updateAxisAttrs);
356
- if (axisProduct.encode(axisAttrs), this._gridMark) {
357
- this._gridMark.getProduct().encode((0, util_1.mergeSpec)({
358
- x: startPoint.x,
359
- y: startPoint.y
360
- }, this._getGridAttributes(), updateGridAttrs));
361
- }
362
- super.updateLayoutAttribute();
363
- }
364
361
  _getTitleLimit(isX) {
365
362
  var _a, _b, _c, _d, _e;
366
363
  if (this._spec.title.visible && (0, util_1.isNil)(null === (_a = this._spec.title.style) || void 0 === _a ? void 0 : _a.maxLineWidth)) {
@@ -483,7 +480,7 @@ class CartesianAxis extends base_axis_1.AxisComponent {
483
480
  super.initEvent(), this.visible && (this.event.on(constant_1.ChartEvent.layoutEnd, this._fixAxisOnZero),
484
481
  this.event.on(constant_1.ChartEvent.layoutRectUpdate, (() => {
485
482
  this._clearLayoutCache();
486
- })));
483
+ })), this.event.on(constant_1.ChartEvent.layoutEnd, this._updateAxisLayout));
487
484
  }
488
485
  _getNormalizedValue(values, length) {
489
486
  return 0 === length ? 0 : this.dataToPosition(values) / length;