@visactor/vgrammar-core 0.13.11-alpha.1 → 0.13.11-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 (47) hide show
  1. package/cjs/graph/animation/animation/grow-cartesian.js +28 -22
  2. package/cjs/graph/animation/animation/grow-cartesian.js.map +1 -1
  3. package/cjs/graph/animation/animation/move.js +1 -1
  4. package/cjs/graph/animation/animation/move.js.map +1 -1
  5. package/cjs/graph/element.js +3 -4
  6. package/cjs/graph/element.js.map +1 -1
  7. package/cjs/index.d.ts +1 -1
  8. package/cjs/index.js +1 -1
  9. package/cjs/index.js.map +1 -1
  10. package/cjs/view/mark.js +5 -1
  11. package/cjs/view/mark.js.map +1 -1
  12. package/es/graph/animation/animation/grow-cartesian.js +28 -22
  13. package/es/graph/animation/animation/grow-cartesian.js.map +1 -1
  14. package/es/graph/animation/animation/move.js +1 -1
  15. package/es/graph/animation/animation/move.js.map +1 -1
  16. package/es/graph/element.js +3 -4
  17. package/es/graph/element.js.map +1 -1
  18. package/es/index.d.ts +1 -1
  19. package/es/index.js +1 -1
  20. package/es/index.js.map +1 -1
  21. package/es/interactions/brush-filter.js +2 -1
  22. package/es/interactions/drill-down.js +1 -2
  23. package/es/interactions/element-select.js +1 -1
  24. package/es/interactions/filter.js +1 -1
  25. package/es/interactions/fish-eye.js +1 -1
  26. package/es/interactions/index.js +2 -1
  27. package/es/interactions/legend-filter.js +1 -1
  28. package/es/interactions/player-filter.js +1 -1
  29. package/es/interactions/roll-up.js +1 -1
  30. package/es/interactions/scrollbar-filter.js +1 -1
  31. package/es/interactions/slider-filter.js +1 -1
  32. package/es/interactions/toggle-state-mixin.js +1 -1
  33. package/es/interactions/tooltip.js +1 -1
  34. package/es/parse/coordinate.js +1 -1
  35. package/es/parse/event.js +1 -1
  36. package/es/parse/mark.js +1 -1
  37. package/es/parse/option.js +1 -1
  38. package/es/parse/scale.js +1 -2
  39. package/es/parse/transform.js +1 -1
  40. package/es/parse/util.js +1 -1
  41. package/es/parse/view.js +1 -1
  42. package/es/semantic-marks/cell.js +1 -1
  43. package/es/semantic-marks/interval.js +1 -1
  44. package/es/semantic-marks/text.js +1 -1
  45. package/es/view/mark.js +5 -2
  46. package/es/view/mark.js.map +1 -1
  47. package/package.json +11 -11
@@ -5,10 +5,11 @@ Object.defineProperty(exports, "__esModule", {
5
5
  }), exports.growHeightOut = exports.growHeightIn = exports.growWidthOut = exports.growWidthIn = exports.growCenterOut = exports.growCenterIn = void 0;
6
6
 
7
7
  const vutils_1 = require("@visactor/vutils"), growCenterIn = (element, options, animationParameters) => {
8
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
8
9
  switch (null == options ? void 0 : options.direction) {
9
10
  case "x":
10
11
  {
11
- const x = element.getGraphicAttribute("x", !1), x1 = element.getGraphicAttribute("x1", !1), width = element.getGraphicAttribute("width", !1);
12
+ const x = null === (_a = element.getFinalGraphicAttributes()) || void 0 === _a ? void 0 : _a.x, x1 = null === (_b = element.getFinalGraphicAttributes()) || void 0 === _b ? void 0 : _b.x1, width = null === (_c = element.getFinalGraphicAttributes()) || void 0 === _c ? void 0 : _c.width;
12
13
  return {
13
14
  from: (0, vutils_1.isValid)(width) ? {
14
15
  x: x + width / 2,
@@ -29,7 +30,7 @@ const vutils_1 = require("@visactor/vutils"), growCenterIn = (element, options,
29
30
 
30
31
  case "y":
31
32
  {
32
- const y = element.getGraphicAttribute("y", !1), y1 = element.getGraphicAttribute("y1", !1), height = element.getGraphicAttribute("height", !1);
33
+ const y = null === (_d = element.getFinalGraphicAttributes()) || void 0 === _d ? void 0 : _d.y, y1 = null === (_e = element.getFinalGraphicAttributes()) || void 0 === _e ? void 0 : _e.y1, height = null === (_f = element.getFinalGraphicAttributes()) || void 0 === _f ? void 0 : _f.height;
33
34
  return {
34
35
  from: (0, vutils_1.isValid)(height) ? {
35
36
  y: y + height / 2,
@@ -50,7 +51,7 @@ const vutils_1 = require("@visactor/vutils"), growCenterIn = (element, options,
50
51
 
51
52
  default:
52
53
  {
53
- const x = element.getGraphicAttribute("x", !1), x1 = element.getGraphicAttribute("x1", !1), width = element.getGraphicAttribute("width", !1), y = element.getGraphicAttribute("y", !1), y1 = element.getGraphicAttribute("y1", !1), height = element.getGraphicAttribute("height", !1), from = {};
54
+ const x = null === (_g = element.getFinalGraphicAttributes()) || void 0 === _g ? void 0 : _g.x, x1 = null === (_h = element.getFinalGraphicAttributes()) || void 0 === _h ? void 0 : _h.x1, width = null === (_j = element.getFinalGraphicAttributes()) || void 0 === _j ? void 0 : _j.width, y = null === (_k = element.getFinalGraphicAttributes()) || void 0 === _k ? void 0 : _k.y, y1 = null === (_l = element.getFinalGraphicAttributes()) || void 0 === _l ? void 0 : _l.y1, height = null === (_m = element.getFinalGraphicAttributes()) || void 0 === _m ? void 0 : _m.height, from = {};
54
55
  return (0, vutils_1.isValid)(width) ? (from.x = x + width / 2, from.width = 0, from.x1 = void 0) : (from.x = (x + x1) / 2,
55
56
  from.x1 = (x + x1) / 2, from.width = void 0), (0, vutils_1.isValid)(height) ? (from.y = y + height / 2,
56
57
  from.height = 0, from.y1 = void 0) : (from.y = (y + y1) / 2, from.y1 = (y + y1) / 2,
@@ -72,10 +73,11 @@ const vutils_1 = require("@visactor/vutils"), growCenterIn = (element, options,
72
73
  exports.growCenterIn = growCenterIn;
73
74
 
74
75
  const growCenterOut = (element, options, animationParameters) => {
76
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
75
77
  switch (null == options ? void 0 : options.direction) {
76
78
  case "x":
77
79
  {
78
- const x = element.getGraphicAttribute("x", !1), x1 = element.getGraphicAttribute("x1", !1), width = element.getGraphicAttribute("width", !1);
80
+ const x = null === (_a = element.getFinalGraphicAttributes()) || void 0 === _a ? void 0 : _a.x, x1 = null === (_b = element.getFinalGraphicAttributes()) || void 0 === _b ? void 0 : _b.x1, width = null === (_c = element.getFinalGraphicAttributes()) || void 0 === _c ? void 0 : _c.width;
79
81
  return {
80
82
  to: (0, vutils_1.isValid)(width) ? {
81
83
  x: x + width / 2,
@@ -91,7 +93,7 @@ const growCenterOut = (element, options, animationParameters) => {
91
93
 
92
94
  case "y":
93
95
  {
94
- const y = element.getGraphicAttribute("y", !1), y1 = element.getGraphicAttribute("y1", !1), height = element.getGraphicAttribute("height", !1);
96
+ const y = null === (_d = element.getFinalGraphicAttributes()) || void 0 === _d ? void 0 : _d.y, y1 = null === (_e = element.getFinalGraphicAttributes()) || void 0 === _e ? void 0 : _e.y1, height = null === (_f = element.getFinalGraphicAttributes()) || void 0 === _f ? void 0 : _f.height;
95
97
  return {
96
98
  to: (0, vutils_1.isValid)(height) ? {
97
99
  y: y + height / 2,
@@ -107,7 +109,7 @@ const growCenterOut = (element, options, animationParameters) => {
107
109
 
108
110
  default:
109
111
  {
110
- const x = element.getGraphicAttribute("x", !1), y = element.getGraphicAttribute("y", !1), x1 = element.getGraphicAttribute("x1", !1), y1 = element.getGraphicAttribute("y1", !1), width = element.getGraphicAttribute("width", !1), height = element.getGraphicAttribute("height", !1), to = {};
112
+ const x = null === (_g = element.getFinalGraphicAttributes()) || void 0 === _g ? void 0 : _g.x, y = null === (_h = element.getFinalGraphicAttributes()) || void 0 === _h ? void 0 : _h.y, x1 = null === (_j = element.getFinalGraphicAttributes()) || void 0 === _j ? void 0 : _j.x1, y1 = null === (_k = element.getFinalGraphicAttributes()) || void 0 === _k ? void 0 : _k.y1, width = null === (_l = element.getFinalGraphicAttributes()) || void 0 === _l ? void 0 : _l.width, height = null === (_m = element.getFinalGraphicAttributes()) || void 0 === _m ? void 0 : _m.height, to = {};
111
113
  return (0, vutils_1.isValid)(width) ? (to.x = x + width / 2, to.width = 0, to.x1 = void 0) : (to.x = (x + x1) / 2,
112
114
  to.x1 = (x + x1) / 2, to.width = void 0), (0, vutils_1.isValid)(height) ? (to.y = y + height / 2,
113
115
  to.height = 0, to.y1 = void 0) : (to.y = (y + y1) / 2, to.y1 = (y + y1) / 2, to.height = void 0),
@@ -119,7 +121,8 @@ const growCenterOut = (element, options, animationParameters) => {
119
121
  };
120
122
 
121
123
  function growWidthInIndividual(element, options, animationParameters) {
122
- const x = element.getGraphicAttribute("x", !1), x1 = element.getGraphicAttribute("x1", !1), width = element.getGraphicAttribute("width", !1);
124
+ var _a, _b, _c;
125
+ const x = null === (_a = element.getFinalGraphicAttributes()) || void 0 === _a ? void 0 : _a.x, x1 = null === (_b = element.getFinalGraphicAttributes()) || void 0 === _b ? void 0 : _b.x1, width = null === (_c = element.getFinalGraphicAttributes()) || void 0 === _c ? void 0 : _c.width;
123
126
  if (options && "negative" === options.orient) {
124
127
  const computedX1 = (0, vutils_1.isValid)(width) ? Math.max(x, x + width) : Math.max(x, x1);
125
128
  return {
@@ -151,10 +154,10 @@ function growWidthInIndividual(element, options, animationParameters) {
151
154
  }
152
155
 
153
156
  function growWidthInOverall(element, options, animationParameters) {
154
- var _a;
155
- const x = element.getGraphicAttribute("x", !1), x1 = element.getGraphicAttribute("x1", !1), width = element.getGraphicAttribute("width", !1);
157
+ var _a, _b, _c, _d;
158
+ const x = null === (_a = element.getFinalGraphicAttributes()) || void 0 === _a ? void 0 : _a.x, x1 = null === (_b = element.getFinalGraphicAttributes()) || void 0 === _b ? void 0 : _b.x1, width = null === (_c = element.getFinalGraphicAttributes()) || void 0 === _c ? void 0 : _c.width;
156
159
  let overallValue;
157
- return options && "negative" === options.orient ? (0, vutils_1.isNumber)(options.overall) ? overallValue = options.overall : animationParameters.group ? (overallValue = null !== (_a = animationParameters.groupWidth) && void 0 !== _a ? _a : animationParameters.group.getBounds().width(),
160
+ return options && "negative" === options.orient ? (0, vutils_1.isNumber)(options.overall) ? overallValue = options.overall : animationParameters.group ? (overallValue = null !== (_d = animationParameters.groupWidth) && void 0 !== _d ? _d : animationParameters.group.getBounds().width(),
158
161
  animationParameters.groupWidth = overallValue) : overallValue = animationParameters.width : overallValue = (0,
159
162
  vutils_1.isNumber)(null == options ? void 0 : options.overall) ? null == options ? void 0 : options.overall : 0,
160
163
  {
@@ -179,7 +182,8 @@ const growWidthIn = (element, options, animationParameters) => {
179
182
  };
180
183
 
181
184
  function growWidthOutIndividual(element, options, animationParameters) {
182
- const x = element.getGraphicAttribute("x", !1), x1 = element.getGraphicAttribute("x1", !1), width = element.getGraphicAttribute("width", !1);
185
+ var _a, _b, _c;
186
+ const x = null === (_a = element.getFinalGraphicAttributes()) || void 0 === _a ? void 0 : _a.x, x1 = null === (_b = element.getFinalGraphicAttributes()) || void 0 === _b ? void 0 : _b.x1, width = null === (_c = element.getFinalGraphicAttributes()) || void 0 === _c ? void 0 : _c.width;
183
187
  if (options && "negative" === options.orient) {
184
188
  const computedX1 = (0, vutils_1.isValid)(width) ? Math.max(x, x + width) : Math.max(x, x1);
185
189
  return {
@@ -201,10 +205,10 @@ function growWidthOutIndividual(element, options, animationParameters) {
201
205
  }
202
206
 
203
207
  function growWidthOutOverall(element, options, animationParameters) {
204
- var _a;
205
- const x1 = element.getGraphicAttribute("x1", !1), width = element.getGraphicAttribute("width", !1);
208
+ var _a, _b, _c;
209
+ const x1 = null === (_a = element.getFinalGraphicAttributes()) || void 0 === _a ? void 0 : _a.x1, width = null === (_b = element.getFinalGraphicAttributes()) || void 0 === _b ? void 0 : _b.width;
206
210
  let overallValue;
207
- return options && "negative" === options.orient ? (0, vutils_1.isNumber)(options.overall) ? overallValue = options.overall : animationParameters.group ? (overallValue = null !== (_a = animationParameters.groupWidth) && void 0 !== _a ? _a : animationParameters.group.getBounds().width(),
211
+ return options && "negative" === options.orient ? (0, vutils_1.isNumber)(options.overall) ? overallValue = options.overall : animationParameters.group ? (overallValue = null !== (_c = animationParameters.groupWidth) && void 0 !== _c ? _c : animationParameters.group.getBounds().width(),
208
212
  animationParameters.groupWidth = overallValue) : overallValue = animationParameters.width : overallValue = (0,
209
213
  vutils_1.isNumber)(null == options ? void 0 : options.overall) ? options.overall : 0,
210
214
  {
@@ -224,7 +228,8 @@ const growWidthOut = (element, options, animationParameters) => {
224
228
  };
225
229
 
226
230
  function growHeightInIndividual(element, options, animationParameters) {
227
- const y = element.getGraphicAttribute("y", !1), y1 = element.getGraphicAttribute("y1", !1), height = element.getGraphicAttribute("height", !1);
231
+ var _a, _b, _c;
232
+ const y = null === (_a = element.getFinalGraphicAttributes()) || void 0 === _a ? void 0 : _a.y, y1 = null === (_b = element.getFinalGraphicAttributes()) || void 0 === _b ? void 0 : _b.y1, height = null === (_c = element.getFinalGraphicAttributes()) || void 0 === _c ? void 0 : _c.height;
228
233
  if (options && "negative" === options.orient) {
229
234
  const computedY1 = (0, vutils_1.isValid)(height) ? Math.max(y, y + height) : Math.max(y, y1);
230
235
  return {
@@ -256,10 +261,10 @@ function growHeightInIndividual(element, options, animationParameters) {
256
261
  }
257
262
 
258
263
  function growHeightInOverall(element, options, animationParameters) {
259
- var _a;
260
- const y = element.getGraphicAttribute("y", !1), y1 = element.getGraphicAttribute("y1", !1), height = element.getGraphicAttribute("height", !1);
264
+ var _a, _b, _c, _d;
265
+ const y = null === (_a = element.getFinalGraphicAttributes()) || void 0 === _a ? void 0 : _a.y, y1 = null === (_b = element.getFinalGraphicAttributes()) || void 0 === _b ? void 0 : _b.y1, height = null === (_c = element.getFinalGraphicAttributes()) || void 0 === _c ? void 0 : _c.height;
261
266
  let overallValue;
262
- return options && "negative" === options.orient ? (0, vutils_1.isNumber)(options.overall) ? overallValue = options.overall : animationParameters.group ? (overallValue = null !== (_a = animationParameters.groupHeight) && void 0 !== _a ? _a : animationParameters.group.getBounds().height(),
267
+ return options && "negative" === options.orient ? (0, vutils_1.isNumber)(options.overall) ? overallValue = options.overall : animationParameters.group ? (overallValue = null !== (_d = animationParameters.groupHeight) && void 0 !== _d ? _d : animationParameters.group.getBounds().height(),
263
268
  animationParameters.groupHeight = overallValue) : overallValue = animationParameters.height : overallValue = (0,
264
269
  vutils_1.isNumber)(null == options ? void 0 : options.overall) ? options.overall : 0,
265
270
  {
@@ -284,7 +289,8 @@ const growHeightIn = (element, options, animationParameters) => {
284
289
  };
285
290
 
286
291
  function growHeightOutIndividual(element, options, animationParameters) {
287
- const y = element.getGraphicAttribute("y", !1), y1 = element.getGraphicAttribute("y1", !1), height = element.getGraphicAttribute("height", !1);
292
+ var _a, _b, _c;
293
+ const y = null === (_a = element.getFinalGraphicAttributes()) || void 0 === _a ? void 0 : _a.y, y1 = null === (_b = element.getFinalGraphicAttributes()) || void 0 === _b ? void 0 : _b.y1, height = null === (_c = element.getFinalGraphicAttributes()) || void 0 === _c ? void 0 : _c.height;
288
294
  if (options && "negative" === options.orient) {
289
295
  const computedY1 = (0, vutils_1.isValid)(height) ? Math.max(y, y + height) : Math.max(y, y1);
290
296
  return {
@@ -306,10 +312,10 @@ function growHeightOutIndividual(element, options, animationParameters) {
306
312
  }
307
313
 
308
314
  function growHeightOutOverall(element, options, animationParameters) {
309
- var _a;
310
- const y1 = element.getGraphicAttribute("y1", !1), height = element.getGraphicAttribute("height", !1);
315
+ var _a, _b, _c;
316
+ const y1 = null === (_a = element.getFinalGraphicAttributes()) || void 0 === _a ? void 0 : _a.y1, height = null === (_b = element.getFinalGraphicAttributes()) || void 0 === _b ? void 0 : _b.height;
311
317
  let overallValue;
312
- return options && "negative" === options.orient ? (0, vutils_1.isNumber)(options.overall) ? overallValue = options.overall : animationParameters.group ? (overallValue = null !== (_a = animationParameters.groupHeight) && void 0 !== _a ? _a : animationParameters.group.getBounds().height(),
318
+ return options && "negative" === options.orient ? (0, vutils_1.isNumber)(options.overall) ? overallValue = options.overall : animationParameters.group ? (overallValue = null !== (_c = animationParameters.groupHeight) && void 0 !== _c ? _c : animationParameters.group.getBounds().height(),
313
319
  animationParameters.groupHeight = overallValue) : overallValue = animationParameters.height : overallValue = (0,
314
320
  vutils_1.isNumber)(null == options ? void 0 : options.overall) ? options.overall : 0,
315
321
  {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/graph/animation/animation/grow-cartesian.ts"],"names":[],"mappings":"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","file":"grow-cartesian.js","sourcesContent":["import { isNil, isNumber, isValid } from '@visactor/vutils';\nimport type { IGrowCartesianAnimationOptions, IAnimationParameters, IElement, TypeAnimation } from '../../../types';\n\n// grow center\nexport const growCenterIn: TypeAnimation<IElement> = (\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n switch (options?.direction) {\n case 'x': {\n const x = element.getGraphicAttribute('x', false);\n const x1 = element.getGraphicAttribute('x1', false);\n const width = element.getGraphicAttribute('width', false);\n\n return {\n from: isValid(width)\n ? {\n x: x + width / 2,\n x1: undefined,\n width: 0\n }\n : {\n x: (x + x1) / 2,\n x1: (x + x1) / 2,\n width: undefined\n },\n to: { x, x1, width }\n };\n }\n case 'y': {\n const y = element.getGraphicAttribute('y', false);\n const y1 = element.getGraphicAttribute('y1', false);\n const height = element.getGraphicAttribute('height', false);\n\n return {\n from: isValid(height)\n ? {\n y: y + height / 2,\n y1: undefined,\n height: 0\n }\n : {\n y: (y + y1) / 2,\n y1: (y + y1) / 2,\n height: undefined\n },\n to: { y, y1, height }\n };\n }\n case 'xy':\n default: {\n const x = element.getGraphicAttribute('x', false);\n const x1 = element.getGraphicAttribute('x1', false);\n const width = element.getGraphicAttribute('width', false);\n const y = element.getGraphicAttribute('y', false);\n const y1 = element.getGraphicAttribute('y1', false);\n const height = element.getGraphicAttribute('height', false);\n const from: any = {};\n\n if (isValid(width)) {\n from.x = x + width / 2;\n from.width = 0;\n from.x1 = undefined;\n } else {\n from.x = (x + x1) / 2;\n from.x1 = (x + x1) / 2;\n from.width = undefined;\n }\n\n if (isValid(height)) {\n from.y = y + height / 2;\n from.height = 0;\n from.y1 = undefined;\n } else {\n from.y = (y + y1) / 2;\n from.y1 = (y + y1) / 2;\n from.height = undefined;\n }\n\n return {\n from,\n to: { x, y, x1, y1, width, height }\n };\n }\n }\n};\n\nexport const growCenterOut: TypeAnimation<IElement> = (\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n switch (options?.direction) {\n case 'x': {\n const x = element.getGraphicAttribute('x', false);\n const x1 = element.getGraphicAttribute('x1', false);\n const width = element.getGraphicAttribute('width', false);\n\n return {\n to: isValid(width)\n ? {\n x: x + width / 2,\n x1: undefined,\n width: 0\n }\n : {\n x: (x + x1) / 2,\n x1: (x + x1) / 2,\n width: undefined\n }\n };\n }\n case 'y': {\n const y = element.getGraphicAttribute('y', false);\n const y1 = element.getGraphicAttribute('y1', false);\n const height = element.getGraphicAttribute('height', false);\n\n return {\n to: isValid(height)\n ? {\n y: y + height / 2,\n y1: undefined,\n height: 0\n }\n : {\n y: (y + y1) / 2,\n y1: (y + y1) / 2,\n height: undefined\n }\n };\n }\n case 'xy':\n default: {\n const x = element.getGraphicAttribute('x', false);\n const y = element.getGraphicAttribute('y', false);\n const x1 = element.getGraphicAttribute('x1', false);\n const y1 = element.getGraphicAttribute('y1', false);\n const width = element.getGraphicAttribute('width', false);\n const height = element.getGraphicAttribute('height', false);\n const to: any = {};\n\n if (isValid(width)) {\n to.x = x + width / 2;\n to.width = 0;\n to.x1 = undefined;\n } else {\n to.x = (x + x1) / 2;\n to.x1 = (x + x1) / 2;\n to.width = undefined;\n }\n\n if (isValid(height)) {\n to.y = y + height / 2;\n to.height = 0;\n to.y1 = undefined;\n } else {\n to.y = (y + y1) / 2;\n to.y1 = (y + y1) / 2;\n to.height = undefined;\n }\n\n return {\n to\n };\n }\n }\n};\n\n// grow width\nfunction growWidthInIndividual(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n const x = element.getGraphicAttribute('x', false);\n const x1 = element.getGraphicAttribute('x1', false);\n const width = element.getGraphicAttribute('width', false);\n\n if (options && options.orient === 'negative') {\n const computedX1 = isValid(width) ? Math.max(x, x + width) : Math.max(x, x1);\n\n return {\n from: { x: computedX1, x1: isNil(x1) ? undefined : computedX1, width: isNil(width) ? undefined : 0 },\n to: { x: x, x1: x1, width: width }\n };\n }\n\n const computedX = isValid(width) ? Math.min(x, x + width) : Math.min(x, x1);\n return {\n from: { x: computedX, x1: isNil(x1) ? undefined : computedX, width: isNil(width) ? undefined : 0 },\n to: { x: x, x1: x1, width: width }\n };\n}\n\nfunction growWidthInOverall(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n // no need to handle the situation where x > x1\n const x = element.getGraphicAttribute('x', false);\n const x1 = element.getGraphicAttribute('x1', false);\n const width = element.getGraphicAttribute('width', false);\n let overallValue: number;\n if (options && options.orient === 'negative') {\n if (isNumber(options.overall)) {\n overallValue = options.overall;\n } else if (animationParameters.group) {\n overallValue = (animationParameters as any).groupWidth ?? animationParameters.group.getBounds().width();\n\n (animationParameters as any).groupWidth = overallValue;\n } else {\n overallValue = animationParameters.width;\n }\n } else {\n overallValue = isNumber(options?.overall) ? options?.overall : 0;\n }\n return {\n from: { x: overallValue, x1: isNil(x1) ? undefined : overallValue, width: isNil(width) ? undefined : 0 },\n to: { x: x, x1: x1, width: width }\n };\n}\n\nexport const growWidthIn: TypeAnimation<IElement> = (\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n return (options?.overall ?? false) !== false\n ? growWidthInOverall(element, options, animationParameters)\n : growWidthInIndividual(element, options, animationParameters);\n};\n\nfunction growWidthOutIndividual(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n const x = element.getGraphicAttribute('x', false);\n const x1 = element.getGraphicAttribute('x1', false);\n const width = element.getGraphicAttribute('width', false);\n\n if (options && options.orient === 'negative') {\n const computedX1 = isValid(width) ? Math.max(x, x + width) : Math.max(x, x1);\n\n return {\n to: { x: computedX1, x1: isNil(x1) ? undefined : computedX1, width: isNil(width) ? undefined : 0 }\n };\n }\n\n const computedX = isValid(width) ? Math.min(x, x + width) : Math.min(x, x1);\n return {\n to: { x: computedX, x1: isNil(x1) ? undefined : computedX, width: isNil(width) ? undefined : 0 }\n };\n}\n\nfunction growWidthOutOverall(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n const x1 = element.getGraphicAttribute('x1', false);\n const width = element.getGraphicAttribute('width', false);\n\n let overallValue: number;\n if (options && options.orient === 'negative') {\n if (isNumber(options.overall)) {\n overallValue = options.overall;\n } else if (animationParameters.group) {\n overallValue = (animationParameters as any).groupWidth ?? animationParameters.group.getBounds().width();\n\n (animationParameters as any).groupWidth = overallValue;\n } else {\n overallValue = animationParameters.width;\n }\n } else {\n overallValue = isNumber(options?.overall) ? options.overall : 0;\n }\n return {\n to: { x: overallValue, x1: isNil(x1) ? undefined : overallValue, width: isNil(width) ? undefined : 0 }\n };\n}\n\nexport const growWidthOut: TypeAnimation<IElement> = (\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n return (options?.overall ?? false) !== false\n ? growWidthOutOverall(element, options, animationParameters)\n : growWidthOutIndividual(element, options, animationParameters);\n};\n\n// grow height\n\nfunction growHeightInIndividual(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n const y = element.getGraphicAttribute('y', false);\n const y1 = element.getGraphicAttribute('y1', false);\n const height = element.getGraphicAttribute('height', false);\n\n if (options && options.orient === 'negative') {\n const computedY1 = isValid(height) ? Math.max(y, y + height) : Math.max(y, y1);\n return {\n from: { y: computedY1, y1: isNil(y1) ? undefined : computedY1, height: isNil(height) ? undefined : 0 },\n to: { y: y, y1: y1, height: height }\n };\n }\n\n const computedY = isValid(height) ? Math.min(y, y + height) : Math.min(y, y1);\n return {\n from: { y: computedY, y1: isNil(y1) ? undefined : computedY, height: isNil(height) ? undefined : 0 },\n to: { y: y, y1: y1, height: height }\n };\n}\n\nfunction growHeightInOverall(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n const y = element.getGraphicAttribute('y', false);\n const y1 = element.getGraphicAttribute('y1', false);\n const height = element.getGraphicAttribute('height', false);\n\n let overallValue: number;\n if (options && options.orient === 'negative') {\n if (isNumber(options.overall)) {\n overallValue = options.overall;\n } else if (animationParameters.group) {\n overallValue = (animationParameters as any).groupHeight ?? animationParameters.group.getBounds().height();\n\n (animationParameters as any).groupHeight = overallValue;\n } else {\n overallValue = animationParameters.height;\n }\n } else {\n overallValue = isNumber(options?.overall) ? options.overall : 0;\n }\n return {\n from: { y: overallValue, y1: isNil(y1) ? undefined : overallValue, height: isNil(height) ? undefined : 0 },\n to: { y: y, y1: y1, height: height }\n };\n}\n\nexport const growHeightIn: TypeAnimation<IElement> = (\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n return (options?.overall ?? false) !== false\n ? growHeightInOverall(element, options, animationParameters)\n : growHeightInIndividual(element, options, animationParameters);\n};\n\nfunction growHeightOutIndividual(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n const y = element.getGraphicAttribute('y', false);\n const y1 = element.getGraphicAttribute('y1', false);\n const height = element.getGraphicAttribute('height', false);\n\n if (options && options.orient === 'negative') {\n const computedY1 = isValid(height) ? Math.max(y, y + height) : Math.max(y, y1);\n\n return {\n to: { y: computedY1, y1: isNil(y1) ? undefined : computedY1, height: isNil(height) ? undefined : 0 }\n };\n }\n\n const computedY = isValid(height) ? Math.min(y, y + height) : Math.min(y, y1);\n return {\n to: { y: computedY, y1: isNil(y1) ? undefined : computedY, height: isNil(height) ? undefined : 0 }\n };\n}\n\nfunction growHeightOutOverall(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n const y1 = element.getGraphicAttribute('y1', false);\n const height = element.getGraphicAttribute('height', false);\n\n let overallValue: number;\n if (options && options.orient === 'negative') {\n if (isNumber(options.overall)) {\n overallValue = options.overall;\n } else if (animationParameters.group) {\n overallValue = (animationParameters as any).groupHeight ?? animationParameters.group.getBounds().height();\n\n (animationParameters as any).groupHeight = overallValue;\n } else {\n overallValue = animationParameters.height;\n }\n } else {\n overallValue = isNumber(options?.overall) ? options.overall : 0;\n }\n return {\n to: { y: overallValue, y1: isNil(y1) ? undefined : overallValue, height: isNil(height) ? undefined : 0 }\n };\n}\n\nexport const growHeightOut: TypeAnimation<IElement> = (\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n return (options?.overall ?? false) !== false\n ? growHeightOutOverall(element, options, animationParameters)\n : growHeightOutIndividual(element, options, animationParameters);\n};\n"]}
1
+ {"version":3,"sources":["../src/graph/animation/animation/grow-cartesian.ts"],"names":[],"mappings":"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","file":"grow-cartesian.js","sourcesContent":["import { isNil, isNumber, isValid } from '@visactor/vutils';\nimport type { IGrowCartesianAnimationOptions, IAnimationParameters, IElement, TypeAnimation } from '../../../types';\n\n// grow center\nexport const growCenterIn: TypeAnimation<IElement> = (\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n switch (options?.direction) {\n case 'x': {\n const x = element.getFinalGraphicAttributes()?.x;\n const x1 = element.getFinalGraphicAttributes()?.x1;\n const width = element.getFinalGraphicAttributes()?.width;\n\n return {\n from: isValid(width)\n ? {\n x: x + width / 2,\n x1: undefined,\n width: 0\n }\n : {\n x: (x + x1) / 2,\n x1: (x + x1) / 2,\n width: undefined\n },\n to: { x, x1, width }\n };\n }\n case 'y': {\n const y = element.getFinalGraphicAttributes()?.y;\n const y1 = element.getFinalGraphicAttributes()?.y1;\n const height = element.getFinalGraphicAttributes()?.height;\n\n return {\n from: isValid(height)\n ? {\n y: y + height / 2,\n y1: undefined,\n height: 0\n }\n : {\n y: (y + y1) / 2,\n y1: (y + y1) / 2,\n height: undefined\n },\n to: { y, y1, height }\n };\n }\n case 'xy':\n default: {\n const x = element.getFinalGraphicAttributes()?.x;\n const x1 = element.getFinalGraphicAttributes()?.x1;\n const width = element.getFinalGraphicAttributes()?.width;\n const y = element.getFinalGraphicAttributes()?.y;\n const y1 = element.getFinalGraphicAttributes()?.y1;\n const height = element.getFinalGraphicAttributes()?.height;\n const from: any = {};\n\n if (isValid(width)) {\n from.x = x + width / 2;\n from.width = 0;\n from.x1 = undefined;\n } else {\n from.x = (x + x1) / 2;\n from.x1 = (x + x1) / 2;\n from.width = undefined;\n }\n\n if (isValid(height)) {\n from.y = y + height / 2;\n from.height = 0;\n from.y1 = undefined;\n } else {\n from.y = (y + y1) / 2;\n from.y1 = (y + y1) / 2;\n from.height = undefined;\n }\n\n return {\n from,\n to: { x, y, x1, y1, width, height }\n };\n }\n }\n};\n\nexport const growCenterOut: TypeAnimation<IElement> = (\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n switch (options?.direction) {\n case 'x': {\n const x = element.getFinalGraphicAttributes()?.x;\n const x1 = element.getFinalGraphicAttributes()?.x1;\n const width = element.getFinalGraphicAttributes()?.width;\n\n return {\n to: isValid(width)\n ? {\n x: x + width / 2,\n x1: undefined,\n width: 0\n }\n : {\n x: (x + x1) / 2,\n x1: (x + x1) / 2,\n width: undefined\n }\n };\n }\n case 'y': {\n const y = element.getFinalGraphicAttributes()?.y;\n const y1 = element.getFinalGraphicAttributes()?.y1;\n const height = element.getFinalGraphicAttributes()?.height;\n\n return {\n to: isValid(height)\n ? {\n y: y + height / 2,\n y1: undefined,\n height: 0\n }\n : {\n y: (y + y1) / 2,\n y1: (y + y1) / 2,\n height: undefined\n }\n };\n }\n case 'xy':\n default: {\n const x = element.getFinalGraphicAttributes()?.x;\n const y = element.getFinalGraphicAttributes()?.y;\n const x1 = element.getFinalGraphicAttributes()?.x1;\n const y1 = element.getFinalGraphicAttributes()?.y1;\n const width = element.getFinalGraphicAttributes()?.width;\n const height = element.getFinalGraphicAttributes()?.height;\n const to: any = {};\n\n if (isValid(width)) {\n to.x = x + width / 2;\n to.width = 0;\n to.x1 = undefined;\n } else {\n to.x = (x + x1) / 2;\n to.x1 = (x + x1) / 2;\n to.width = undefined;\n }\n\n if (isValid(height)) {\n to.y = y + height / 2;\n to.height = 0;\n to.y1 = undefined;\n } else {\n to.y = (y + y1) / 2;\n to.y1 = (y + y1) / 2;\n to.height = undefined;\n }\n\n return {\n to\n };\n }\n }\n};\n\n// grow width\nfunction growWidthInIndividual(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n const x = element.getFinalGraphicAttributes()?.x;\n const x1 = element.getFinalGraphicAttributes()?.x1;\n const width = element.getFinalGraphicAttributes()?.width;\n\n if (options && options.orient === 'negative') {\n const computedX1 = isValid(width) ? Math.max(x, x + width) : Math.max(x, x1);\n\n return {\n from: { x: computedX1, x1: isNil(x1) ? undefined : computedX1, width: isNil(width) ? undefined : 0 },\n to: { x: x, x1: x1, width: width }\n };\n }\n\n const computedX = isValid(width) ? Math.min(x, x + width) : Math.min(x, x1);\n return {\n from: { x: computedX, x1: isNil(x1) ? undefined : computedX, width: isNil(width) ? undefined : 0 },\n to: { x: x, x1: x1, width: width }\n };\n}\n\nfunction growWidthInOverall(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n // no need to handle the situation where x > x1\n const x = element.getFinalGraphicAttributes()?.x;\n const x1 = element.getFinalGraphicAttributes()?.x1;\n const width = element.getFinalGraphicAttributes()?.width;\n let overallValue: number;\n if (options && options.orient === 'negative') {\n if (isNumber(options.overall)) {\n overallValue = options.overall;\n } else if (animationParameters.group) {\n overallValue = (animationParameters as any).groupWidth ?? animationParameters.group.getBounds().width();\n\n (animationParameters as any).groupWidth = overallValue;\n } else {\n overallValue = animationParameters.width;\n }\n } else {\n overallValue = isNumber(options?.overall) ? options?.overall : 0;\n }\n return {\n from: { x: overallValue, x1: isNil(x1) ? undefined : overallValue, width: isNil(width) ? undefined : 0 },\n to: { x: x, x1: x1, width: width }\n };\n}\n\nexport const growWidthIn: TypeAnimation<IElement> = (\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n return (options?.overall ?? false) !== false\n ? growWidthInOverall(element, options, animationParameters)\n : growWidthInIndividual(element, options, animationParameters);\n};\n\nfunction growWidthOutIndividual(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n const x = element.getFinalGraphicAttributes()?.x;\n const x1 = element.getFinalGraphicAttributes()?.x1;\n const width = element.getFinalGraphicAttributes()?.width;\n\n if (options && options.orient === 'negative') {\n const computedX1 = isValid(width) ? Math.max(x, x + width) : Math.max(x, x1);\n\n return {\n to: { x: computedX1, x1: isNil(x1) ? undefined : computedX1, width: isNil(width) ? undefined : 0 }\n };\n }\n\n const computedX = isValid(width) ? Math.min(x, x + width) : Math.min(x, x1);\n return {\n to: { x: computedX, x1: isNil(x1) ? undefined : computedX, width: isNil(width) ? undefined : 0 }\n };\n}\n\nfunction growWidthOutOverall(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n const x1 = element.getFinalGraphicAttributes()?.x1;\n const width = element.getFinalGraphicAttributes()?.width;\n\n let overallValue: number;\n if (options && options.orient === 'negative') {\n if (isNumber(options.overall)) {\n overallValue = options.overall;\n } else if (animationParameters.group) {\n overallValue = (animationParameters as any).groupWidth ?? animationParameters.group.getBounds().width();\n\n (animationParameters as any).groupWidth = overallValue;\n } else {\n overallValue = animationParameters.width;\n }\n } else {\n overallValue = isNumber(options?.overall) ? options.overall : 0;\n }\n return {\n to: { x: overallValue, x1: isNil(x1) ? undefined : overallValue, width: isNil(width) ? undefined : 0 }\n };\n}\n\nexport const growWidthOut: TypeAnimation<IElement> = (\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n return (options?.overall ?? false) !== false\n ? growWidthOutOverall(element, options, animationParameters)\n : growWidthOutIndividual(element, options, animationParameters);\n};\n\n// grow height\n\nfunction growHeightInIndividual(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n const y = element.getFinalGraphicAttributes()?.y;\n const y1 = element.getFinalGraphicAttributes()?.y1;\n const height = element.getFinalGraphicAttributes()?.height;\n\n if (options && options.orient === 'negative') {\n const computedY1 = isValid(height) ? Math.max(y, y + height) : Math.max(y, y1);\n return {\n from: { y: computedY1, y1: isNil(y1) ? undefined : computedY1, height: isNil(height) ? undefined : 0 },\n to: { y: y, y1: y1, height: height }\n };\n }\n\n const computedY = isValid(height) ? Math.min(y, y + height) : Math.min(y, y1);\n return {\n from: { y: computedY, y1: isNil(y1) ? undefined : computedY, height: isNil(height) ? undefined : 0 },\n to: { y: y, y1: y1, height: height }\n };\n}\n\nfunction growHeightInOverall(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n const y = element.getFinalGraphicAttributes()?.y;\n const y1 = element.getFinalGraphicAttributes()?.y1;\n const height = element.getFinalGraphicAttributes()?.height;\n\n let overallValue: number;\n if (options && options.orient === 'negative') {\n if (isNumber(options.overall)) {\n overallValue = options.overall;\n } else if (animationParameters.group) {\n overallValue = (animationParameters as any).groupHeight ?? animationParameters.group.getBounds().height();\n\n (animationParameters as any).groupHeight = overallValue;\n } else {\n overallValue = animationParameters.height;\n }\n } else {\n overallValue = isNumber(options?.overall) ? options.overall : 0;\n }\n return {\n from: { y: overallValue, y1: isNil(y1) ? undefined : overallValue, height: isNil(height) ? undefined : 0 },\n to: { y: y, y1: y1, height: height }\n };\n}\n\nexport const growHeightIn: TypeAnimation<IElement> = (\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n return (options?.overall ?? false) !== false\n ? growHeightInOverall(element, options, animationParameters)\n : growHeightInIndividual(element, options, animationParameters);\n};\n\nfunction growHeightOutIndividual(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n const y = element.getFinalGraphicAttributes()?.y;\n const y1 = element.getFinalGraphicAttributes()?.y1;\n const height = element.getFinalGraphicAttributes()?.height;\n\n if (options && options.orient === 'negative') {\n const computedY1 = isValid(height) ? Math.max(y, y + height) : Math.max(y, y1);\n\n return {\n to: { y: computedY1, y1: isNil(y1) ? undefined : computedY1, height: isNil(height) ? undefined : 0 }\n };\n }\n\n const computedY = isValid(height) ? Math.min(y, y + height) : Math.min(y, y1);\n return {\n to: { y: computedY, y1: isNil(y1) ? undefined : computedY, height: isNil(height) ? undefined : 0 }\n };\n}\n\nfunction growHeightOutOverall(\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) {\n const y1 = element.getFinalGraphicAttributes()?.y1;\n const height = element.getFinalGraphicAttributes()?.height;\n\n let overallValue: number;\n if (options && options.orient === 'negative') {\n if (isNumber(options.overall)) {\n overallValue = options.overall;\n } else if (animationParameters.group) {\n overallValue = (animationParameters as any).groupHeight ?? animationParameters.group.getBounds().height();\n\n (animationParameters as any).groupHeight = overallValue;\n } else {\n overallValue = animationParameters.height;\n }\n } else {\n overallValue = isNumber(options?.overall) ? options.overall : 0;\n }\n return {\n to: { y: overallValue, y1: isNil(y1) ? undefined : overallValue, height: isNil(height) ? undefined : 0 }\n };\n}\n\nexport const growHeightOut: TypeAnimation<IElement> = (\n element: IElement,\n options: IGrowCartesianAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n return (options?.overall ?? false) !== false\n ? growHeightOutOverall(element, options, animationParameters)\n : growHeightOutIndividual(element, options, animationParameters);\n};\n"]}
@@ -13,7 +13,7 @@ const vutils_1 = require("@visactor/vutils"), moveIn = (element, options, animat
13
13
  animationParameters.groupWidth = changedX, animationParameters.groupHeight = changedY) : (changedX = animationParameters.width,
14
14
  changedY = animationParameters.height)), changedX += offset, changedY += offset;
15
15
  const point = (0, vutils_1.isFunction)(pointOpt) ? pointOpt.call(null, element.getDatum(), element, animationParameters) : pointOpt, fromX = point && (0,
16
- vutils_1.isValidNumber)(point.x) ? point.x : changedX, fromY = point && (0, vutils_1.isValidNumber)(point.y) ? point.y : changedY, finalAttrsX = excludeChannels.includes("x") ? element.getGraphicItem().getNormalAttribute("x") : null === (_c = element.getFinalGraphicAttributes()) || void 0 === _c ? void 0 : _c.x, finalAttrsY = excludeChannels.includes("y") ? element.getGraphicItem().getNormalAttribute("y") : null === (_d = element.getFinalGraphicAttributes()) || void 0 === _d ? void 0 : _d.y;
16
+ vutils_1.isValidNumber)(point.x) ? point.x : changedX, fromY = point && (0, vutils_1.isValidNumber)(point.y) ? point.y : changedY, finalAttrsX = excludeChannels.includes("x") ? element.getGraphicAttribute("x") : null === (_c = element.getFinalGraphicAttributes()) || void 0 === _c ? void 0 : _c.x, finalAttrsY = excludeChannels.includes("y") ? element.getGraphicAttribute("y") : null === (_d = element.getFinalGraphicAttributes()) || void 0 === _d ? void 0 : _d.y;
17
17
  switch (direction) {
18
18
  case "x":
19
19
  return {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/graph/animation/animation/move.ts"],"names":[],"mappings":";;;AAAA,6CAA6D;AAMtD,MAAM,MAAM,GAA4B,CAC7C,OAAiB,EACjB,OAA8B,EAC9B,mBAAyC,EACzC,EAAE;;IACF,MAAM,EAAE,MAAM,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,eAAe,GAAG,EAAE,EAAE,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;IAC/F,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,QAAQ,GAAG,CAAC,CAAC;IAEjB,IAAI,MAAM,KAAK,UAAU,EAAE;QAEzB,IAAI,mBAAmB,CAAC,KAAK,EAAE;YAC7B,QAAQ,GAAG,MAAC,mBAA2B,CAAC,UAAU,mCAAI,mBAAmB,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC;YACpG,QAAQ,GAAG,MAAC,mBAA2B,CAAC,WAAW,mCAAI,mBAAmB,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,CAAC;YAErG,mBAA2B,CAAC,UAAU,GAAG,QAAQ,CAAC;YAClD,mBAA2B,CAAC,WAAW,GAAG,QAAQ,CAAC;SACrD;aAAM;YACL,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CAAC;YACrC,QAAQ,GAAG,mBAAmB,CAAC,MAAM,CAAC;SACvC;KACF;IAED,QAAQ,IAAI,MAAM,CAAC;IACnB,QAAQ,IAAI,MAAM,CAAC;IACnB,MAAM,KAAK,GAAG,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACtH,MAAM,KAAK,GAAG,KAAK,IAAI,IAAA,sBAAa,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACnE,MAAM,KAAK,GAAG,KAAK,IAAI,IAAA,sBAAa,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACnE,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC;QAC/C,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC;QAClD,CAAC,CAAC,MAAA,OAAO,CAAC,yBAAyB,EAAE,0CAAE,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC;QAC/C,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC;QAClD,CAAC,CAAC,MAAA,OAAO,CAAC,yBAAyB,EAAE,0CAAE,CAAC,CAAC;IAE3C,QAAQ,SAAS,EAAE;QACjB,KAAK,GAAG;YACN,OAAO;gBACL,IAAI,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE;gBAClB,EAAE,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE;aACvB,CAAC;QACJ,KAAK,GAAG;YACN,OAAO;gBACL,IAAI,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE;gBAClB,EAAE,EAAE,EAAE,CAAC,EAAE,WAAW,EAAE;aACvB,CAAC;QACJ,KAAK,IAAI,CAAC;QACV;YACE,OAAO;gBACL,IAAI,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE;gBAC5B,EAAE,EAAE;oBACF,CAAC,EAAE,WAAW;oBACd,CAAC,EAAE,WAAW;iBACf;aACF,CAAC;KACL;AACH,CAAC,CAAC;AAxDW,QAAA,MAAM,UAwDjB;AAEK,MAAM,OAAO,GAA4B,CAC9C,OAAiB,EACjB,OAA8B,EAC9B,mBAAyC,EACzC,EAAE;;IACF,MAAM,EAAE,MAAM,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;IAGzE,MAAM,WAAW,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7F,MAAM,UAAU,GAAG,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,EAAE,mCAAI,mBAAmB,CAAC,KAAK,CAAC;IACrE,MAAM,WAAW,GAAG,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,EAAE,mCAAI,mBAAmB,CAAC,MAAM,CAAC;IACxE,MAAM,QAAQ,GAAG,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;IACnE,MAAM,QAAQ,GAAG,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;IACpE,MAAM,KAAK,GAAG,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACtH,MAAM,KAAK,GAAG,KAAK,IAAI,IAAA,sBAAa,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACnE,MAAM,KAAK,GAAG,KAAK,IAAI,IAAA,sBAAa,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAEnE,QAAQ,SAAS,EAAE;QACjB,KAAK,GAAG;YACN,OAAO;gBACL,IAAI,EAAE,EAAE,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE;gBACnD,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE;aACjB,CAAC;QACJ,KAAK,GAAG;YACN,OAAO;gBACL,IAAI,EAAE,EAAE,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE;gBACnD,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE;aACjB,CAAC;QACJ,KAAK,IAAI,CAAC;QACV;YACE,OAAO;gBACL,IAAI,EAAE;oBACJ,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC;oBACzC,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC;iBAC1C;gBACD,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE;aAC3B,CAAC;KACL;AACH,CAAC,CAAC;AAtCW,QAAA,OAAO,WAsClB","file":"move.js","sourcesContent":["import { isFunction, isValidNumber } from '@visactor/vutils';\nimport type { IElement, IMoveAnimationOptions, IAnimationParameters, TypeAnimation } from '../../../types';\n\n// When user did not provide proper x/y value, move animation will never work properly,\n// due to that, default x/y value won't be set.\n\nexport const moveIn: TypeAnimation<IElement> = (\n element: IElement,\n options: IMoveAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n const { offset = 0, orient, direction, point: pointOpt, excludeChannels = [] } = options ?? {};\n let changedX = 0;\n let changedY = 0;\n\n if (orient === 'negative') {\n // consider the offset of group\n if (animationParameters.group) {\n changedX = (animationParameters as any).groupWidth ?? animationParameters.group.getBounds().width();\n changedY = (animationParameters as any).groupHeight ?? animationParameters.group.getBounds().height();\n\n (animationParameters as any).groupWidth = changedX;\n (animationParameters as any).groupHeight = changedY;\n } else {\n changedX = animationParameters.width;\n changedY = animationParameters.height;\n }\n }\n\n changedX += offset;\n changedY += offset;\n const point = isFunction(pointOpt) ? pointOpt.call(null, element.getDatum(), element, animationParameters) : pointOpt;\n const fromX = point && isValidNumber(point.x) ? point.x : changedX;\n const fromY = point && isValidNumber(point.y) ? point.y : changedY;\n const finalAttrsX = excludeChannels.includes('x')\n ? element.getGraphicItem().getNormalAttribute('x')\n : element.getFinalGraphicAttributes()?.x;\n const finalAttrsY = excludeChannels.includes('y')\n ? element.getGraphicItem().getNormalAttribute('y')\n : element.getFinalGraphicAttributes()?.y;\n\n switch (direction) {\n case 'x':\n return {\n from: { x: fromX },\n to: { x: finalAttrsX }\n };\n case 'y':\n return {\n from: { y: fromY },\n to: { y: finalAttrsY }\n };\n case 'xy':\n default:\n return {\n from: { x: fromX, y: fromY },\n to: {\n x: finalAttrsX,\n y: finalAttrsY\n }\n };\n }\n};\n\nexport const moveOut: TypeAnimation<IElement> = (\n element: IElement,\n options: IMoveAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n const { offset = 0, orient, direction, point: pointOpt } = options ?? {};\n\n // consider the offset of group\n const groupBounds = animationParameters.group ? animationParameters.group.getBounds() : null;\n const groupWidth = groupBounds?.width() ?? animationParameters.width;\n const groupHeight = groupBounds?.height() ?? animationParameters.height;\n const changedX = (orient === 'negative' ? groupWidth : 0) + offset;\n const changedY = (orient === 'negative' ? groupHeight : 0) + offset;\n const point = isFunction(pointOpt) ? pointOpt.call(null, element.getDatum(), element, animationParameters) : pointOpt;\n const fromX = point && isValidNumber(point.x) ? point.x : changedX;\n const fromY = point && isValidNumber(point.y) ? point.y : changedY;\n\n switch (direction) {\n case 'x':\n return {\n from: { x: element.getGraphicAttribute('x', true) },\n to: { x: fromX }\n };\n case 'y':\n return {\n from: { y: element.getGraphicAttribute('y', true) },\n to: { y: fromY }\n };\n case 'xy':\n default:\n return {\n from: {\n x: element.getGraphicAttribute('x', true),\n y: element.getGraphicAttribute('y', true)\n },\n to: { x: fromX, y: fromY }\n };\n }\n};\n"]}
1
+ {"version":3,"sources":["../src/graph/animation/animation/move.ts"],"names":[],"mappings":"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","file":"move.js","sourcesContent":["import { isFunction, isValidNumber } from '@visactor/vutils';\nimport type { IElement, IMoveAnimationOptions, IAnimationParameters, TypeAnimation } from '../../../types';\n\n// When user did not provide proper x/y value, move animation will never work properly,\n// due to that, default x/y value won't be set.\n\nexport const moveIn: TypeAnimation<IElement> = (\n element: IElement,\n options: IMoveAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n const { offset = 0, orient, direction, point: pointOpt, excludeChannels = [] } = options ?? {};\n let changedX = 0;\n let changedY = 0;\n\n if (orient === 'negative') {\n // consider the offset of group\n if (animationParameters.group) {\n changedX = (animationParameters as any).groupWidth ?? animationParameters.group.getBounds().width();\n changedY = (animationParameters as any).groupHeight ?? animationParameters.group.getBounds().height();\n\n (animationParameters as any).groupWidth = changedX;\n (animationParameters as any).groupHeight = changedY;\n } else {\n changedX = animationParameters.width;\n changedY = animationParameters.height;\n }\n }\n\n changedX += offset;\n changedY += offset;\n const point = isFunction(pointOpt) ? pointOpt.call(null, element.getDatum(), element, animationParameters) : pointOpt;\n const fromX = point && isValidNumber(point.x) ? point.x : changedX;\n const fromY = point && isValidNumber(point.y) ? point.y : changedY;\n const finalAttrsX = excludeChannels.includes('x')\n ? element.getGraphicAttribute('x')\n : element.getFinalGraphicAttributes()?.x;\n const finalAttrsY = excludeChannels.includes('y')\n ? element.getGraphicAttribute('y')\n : element.getFinalGraphicAttributes()?.y;\n\n switch (direction) {\n case 'x':\n return {\n from: { x: fromX },\n to: { x: finalAttrsX }\n };\n case 'y':\n return {\n from: { y: fromY },\n to: { y: finalAttrsY }\n };\n case 'xy':\n default:\n return {\n from: { x: fromX, y: fromY },\n to: {\n x: finalAttrsX,\n y: finalAttrsY\n }\n };\n }\n};\n\nexport const moveOut: TypeAnimation<IElement> = (\n element: IElement,\n options: IMoveAnimationOptions,\n animationParameters: IAnimationParameters\n) => {\n const { offset = 0, orient, direction, point: pointOpt } = options ?? {};\n\n // consider the offset of group\n const groupBounds = animationParameters.group ? animationParameters.group.getBounds() : null;\n const groupWidth = groupBounds?.width() ?? animationParameters.width;\n const groupHeight = groupBounds?.height() ?? animationParameters.height;\n const changedX = (orient === 'negative' ? groupWidth : 0) + offset;\n const changedY = (orient === 'negative' ? groupHeight : 0) + offset;\n const point = isFunction(pointOpt) ? pointOpt.call(null, element.getDatum(), element, animationParameters) : pointOpt;\n const fromX = point && isValidNumber(point.x) ? point.x : changedX;\n const fromY = point && isValidNumber(point.y) ? point.y : changedY;\n\n switch (direction) {\n case 'x':\n return {\n from: { x: element.getGraphicAttribute('x', true) },\n to: { x: fromX }\n };\n case 'y':\n return {\n from: { y: element.getGraphicAttribute('y', true) },\n to: { y: fromY }\n };\n case 'xy':\n default:\n return {\n from: {\n x: element.getGraphicAttribute('x', true),\n y: element.getGraphicAttribute('y', true)\n },\n to: { x: fromX, y: fromY }\n };\n }\n};\n"]}
@@ -33,7 +33,7 @@ class Element {
33
33
  if (!this.mark) return attributes;
34
34
  return (0, transform_1.transformAttributes)(attrTransforms, attributes, this);
35
35
  }), this.clearGraphicAttributes(), this.mark.needAnimate() && (this.setPrevGraphicAttributes(null),
36
- this.setNextGraphicAttributes(attributes), this.setFinalGraphicAttributes(attributes)));
36
+ this.setNextGraphicAttributes(Object.assign({}, attributes)), this.setFinalGraphicAttributes(Object.assign({}, attributes))));
37
37
  }
38
38
  updateGraphicItem() {
39
39
  if (!this.graphicItem) return;
@@ -91,9 +91,8 @@ class Element {
91
91
  encodeGraphic(attrs) {
92
92
  this.coordinateTransformEncode(this.items);
93
93
  const graphicAttributes = this.transformElementItems(this.items, this.mark.markType);
94
- attrs && (this.mark.isCollectionMark() && delete attrs.defined, Object.assign(graphicAttributes, attrs)),
95
- this.graphicItem ? (this.graphicItem.clearStates(), this.graphicItem.states = {},
96
- this.graphicItem.stateProxy = null, this.applyGraphicAttributes(graphicAttributes)) : this.initGraphicItem(graphicAttributes),
94
+ attrs && Object.assign(graphicAttributes, attrs), this.graphicItem ? (this.graphicItem.clearStates(),
95
+ this.graphicItem.states = {}, this.graphicItem.stateProxy = null, this.applyGraphicAttributes(graphicAttributes)) : this.initGraphicItem(graphicAttributes),
97
96
  this.diffState !== enums_1.DiffState.enter && this.diffState !== enums_1.DiffState.update || !this.states.length || this.useStates(this.states),
98
97
  this.mark.markType === enums_1.GrammarMarkType.shape && (this.graphicItem.datum = this.items[0].datum),
99
98
  this.items.forEach((item => {