@visactor/vchart 2.1.0-alpha.9 → 2.1.0

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 (276) hide show
  1. package/build/es5/index.js +3 -3
  2. package/build/index.es.js +49550 -52388
  3. package/build/index.js +49552 -52390
  4. package/build/index.min.js +2 -2
  5. package/build/tsconfig.tsbuildinfo +1 -1
  6. package/cjs/animation/callback-disappear.d.ts +1 -1
  7. package/cjs/animation/callback-disappear.js +2 -2
  8. package/cjs/animation/callback-disappear.js.map +1 -1
  9. package/cjs/animation/config.js +34 -34
  10. package/cjs/animation/config.js.map +1 -1
  11. package/cjs/animation/grammar-dector.js +1 -2
  12. package/cjs/animation/index.js +2 -1
  13. package/cjs/chart/base/base-chart.d.ts +2 -0
  14. package/cjs/chart/base/base-chart.js +14 -5
  15. package/cjs/chart/base/base-chart.js.map +1 -1
  16. package/cjs/compile/compiler.js +8 -3
  17. package/cjs/compile/compiler.js.map +1 -1
  18. package/cjs/compile/interface/compiler.js.map +1 -1
  19. package/cjs/compile/morph.js +4 -4
  20. package/cjs/compile/morph.js.map +1 -1
  21. package/cjs/compile/stage-app.d.ts +10 -2
  22. package/cjs/compile/stage-app.js +69 -26
  23. package/cjs/compile/stage-app.js.map +1 -1
  24. package/cjs/compile/util.js +1 -2
  25. package/cjs/component/axis/base-axis.d.ts +1 -1
  26. package/cjs/component/axis/base-axis.js +3 -3
  27. package/cjs/component/axis/base-axis.js.map +1 -1
  28. package/cjs/component/axis/cartesian/band-axis.js +4 -4
  29. package/cjs/component/axis/cartesian/band-axis.js.map +1 -1
  30. package/cjs/component/axis/cartesian/linear-axis.d.ts +3 -2
  31. package/cjs/component/axis/cartesian/linear-axis.js +8 -4
  32. package/cjs/component/axis/cartesian/linear-axis.js.map +1 -1
  33. package/cjs/component/axis/mixin/linear-axis-mixin.d.ts +2 -0
  34. package/cjs/component/axis/mixin/linear-axis-mixin.js +7 -1
  35. package/cjs/component/axis/mixin/linear-axis-mixin.js.map +1 -1
  36. package/cjs/component/brush/brush.d.ts +1 -0
  37. package/cjs/component/brush/brush.js +15 -10
  38. package/cjs/component/brush/brush.js.map +1 -1
  39. package/cjs/component/crosshair/base.d.ts +1 -1
  40. package/cjs/component/crosshair/base.js +3 -3
  41. package/cjs/component/crosshair/base.js.map +1 -1
  42. package/cjs/component/crosshair/cartesian.js +3 -3
  43. package/cjs/component/crosshair/cartesian.js.map +1 -1
  44. package/cjs/component/index.js +2 -1
  45. package/cjs/component/label/label.js +2 -2
  46. package/cjs/component/label/label.js.map +1 -1
  47. package/cjs/component/legend/base-legend.js +1 -1
  48. package/cjs/component/legend/base-legend.js.map +1 -1
  49. package/cjs/component/legend/discrete/interface.d.ts +11 -1
  50. package/cjs/component/legend/discrete/interface.js.map +1 -1
  51. package/cjs/component/legend/discrete/legend.d.ts +1 -1
  52. package/cjs/component/legend/discrete/legend.js +9 -8
  53. package/cjs/component/legend/discrete/legend.js.map +1 -1
  54. package/cjs/component/legend/discrete/util.d.ts +2 -1
  55. package/cjs/component/legend/discrete/util.js +39 -5
  56. package/cjs/component/legend/discrete/util.js.map +1 -1
  57. package/cjs/component/marker/base-marker.js +11 -7
  58. package/cjs/component/marker/base-marker.js.map +1 -1
  59. package/cjs/component/marker/mark-line/cartesian-mark-line.js +18 -7
  60. package/cjs/component/marker/mark-line/cartesian-mark-line.js.map +1 -1
  61. package/cjs/component/marker/mark-line/interface/spec.d.ts +9 -2
  62. package/cjs/component/marker/mark-line/interface/spec.js.map +1 -1
  63. package/cjs/component/marker/mark-point/base-mark-point.js +30 -17
  64. package/cjs/component/marker/mark-point/base-mark-point.js.map +1 -1
  65. package/cjs/component/marker/utils.js +17 -7
  66. package/cjs/component/marker/utils.js.map +1 -1
  67. package/cjs/constant/correlation.js +2 -1
  68. package/cjs/constant/event.js +1 -2
  69. package/cjs/constant/marker.js +1 -1
  70. package/cjs/constant/polar.js +1 -1
  71. package/cjs/core/index.d.ts +3 -2
  72. package/cjs/core/index.js +9 -5
  73. package/cjs/core/index.js.map +1 -1
  74. package/cjs/core/vchart.js +16 -6
  75. package/cjs/core/vchart.js.map +1 -1
  76. package/cjs/data/data-view-utils.js +1 -1
  77. package/cjs/data/initialize.js +1 -1
  78. package/cjs/data/register.js +1 -1
  79. package/cjs/env/env.js +10 -10
  80. package/cjs/env/env.js.map +1 -1
  81. package/cjs/mark/arc.js +4 -4
  82. package/cjs/mark/arc.js.map +1 -1
  83. package/cjs/mark/area.js +4 -5
  84. package/cjs/mark/area.js.map +1 -1
  85. package/cjs/mark/base/base-line.js +2 -2
  86. package/cjs/mark/base/base-line.js.map +1 -1
  87. package/cjs/mark/base/base-mark.d.ts +0 -1
  88. package/cjs/mark/base/base-mark.js +16 -24
  89. package/cjs/mark/base/base-mark.js.map +1 -1
  90. package/cjs/mark/glyph.d.ts +3 -0
  91. package/cjs/mark/glyph.js +29 -5
  92. package/cjs/mark/glyph.js.map +1 -1
  93. package/cjs/mark/group.js +5 -5
  94. package/cjs/mark/group.js.map +1 -1
  95. package/cjs/mark/interface/common.js.map +1 -1
  96. package/cjs/mark/line.js +4 -5
  97. package/cjs/mark/line.js.map +1 -1
  98. package/cjs/mark/rect.js +3 -3
  99. package/cjs/mark/rect.js.map +1 -1
  100. package/cjs/mark/symbol.js +3 -3
  101. package/cjs/mark/symbol.js.map +1 -1
  102. package/cjs/mark/text.js +4 -4
  103. package/cjs/mark/text.js.map +1 -1
  104. package/cjs/plugin/components/axis-sync/tick-align-transform.js +2 -2
  105. package/cjs/plugin/components/axis-sync/tick-align-transform.js.map +1 -1
  106. package/cjs/plugin/components/tooltip-handler/canvas-tooltip-handler.d.ts +2 -2
  107. package/cjs/plugin/components/tooltip-handler/canvas-tooltip-handler.js +2 -2
  108. package/cjs/plugin/components/tooltip-handler/canvas-tooltip-handler.js.map +1 -1
  109. package/cjs/plugin/other.js +5 -5
  110. package/cjs/plugin/other.js.map +1 -1
  111. package/cjs/series/base/base-series.d.ts +3 -0
  112. package/cjs/series/base/base-series.js +57 -27
  113. package/cjs/series/base/base-series.js.map +1 -1
  114. package/cjs/series/dot/dot.d.ts +1 -0
  115. package/cjs/series/interface/common.d.ts +2 -1
  116. package/cjs/series/interface/common.js.map +1 -1
  117. package/cjs/series/line/line.js +3 -3
  118. package/cjs/series/line/line.js.map +1 -1
  119. package/cjs/series/waterfall/waterfall.d.ts +2 -0
  120. package/cjs/series/waterfall/waterfall.js +12 -4
  121. package/cjs/series/waterfall/waterfall.js.map +1 -1
  122. package/cjs/series/word-cloud/animation.js +3 -0
  123. package/cjs/series/word-cloud/animation.js.map +1 -1
  124. package/cjs/theme/builtin/common/series/word-cloud.js +2 -6
  125. package/cjs/theme/builtin/common/series/word-cloud.js.map +1 -1
  126. package/cjs/util/mark.js +7 -3
  127. package/cjs/util/mark.js.map +1 -1
  128. package/cjs/util/math.d.ts +1 -1
  129. package/cjs/util/math.js +2 -2
  130. package/cjs/util/math.js.map +1 -1
  131. package/cjs/util/style.js +24 -2
  132. package/cjs/util/style.js.map +1 -1
  133. package/cjs/util/text.js +2 -2
  134. package/cjs/util/text.js.map +1 -1
  135. package/cjs/vchart-line.d.ts +4 -0
  136. package/cjs/vchart-line.js +35 -0
  137. package/cjs/vchart-line.js.map +1 -0
  138. package/cjs/vchart-simple.d.ts +5 -1
  139. package/cjs/vchart-simple.js +11 -10
  140. package/cjs/vchart-simple.js.map +1 -1
  141. package/esm/animation/callback-disappear.d.ts +1 -1
  142. package/esm/animation/callback-disappear.js +1 -1
  143. package/esm/animation/callback-disappear.js.map +1 -1
  144. package/esm/animation/config.js +33 -1
  145. package/esm/animation/config.js.map +1 -1
  146. package/esm/animation/grammar-dector.js +1 -2
  147. package/esm/animation/index.js +2 -1
  148. package/esm/chart/base/base-chart.d.ts +2 -0
  149. package/esm/chart/base/base-chart.js +14 -5
  150. package/esm/chart/base/base-chart.js.map +1 -1
  151. package/esm/compile/compiler.js +8 -4
  152. package/esm/compile/compiler.js.map +1 -1
  153. package/esm/compile/interface/compiler.js.map +1 -1
  154. package/esm/compile/morph.js +1 -1
  155. package/esm/compile/morph.js.map +1 -1
  156. package/esm/compile/stage-app.d.ts +10 -2
  157. package/esm/compile/stage-app.js +65 -23
  158. package/esm/compile/stage-app.js.map +1 -1
  159. package/esm/compile/util.js +1 -2
  160. package/esm/component/axis/base-axis.d.ts +1 -1
  161. package/esm/component/axis/base-axis.js +2 -2
  162. package/esm/component/axis/base-axis.js.map +1 -1
  163. package/esm/component/axis/cartesian/band-axis.js +4 -2
  164. package/esm/component/axis/cartesian/band-axis.js.map +1 -1
  165. package/esm/component/axis/cartesian/linear-axis.d.ts +3 -2
  166. package/esm/component/axis/cartesian/linear-axis.js +9 -1
  167. package/esm/component/axis/cartesian/linear-axis.js.map +1 -1
  168. package/esm/component/axis/mixin/linear-axis-mixin.d.ts +2 -0
  169. package/esm/component/axis/mixin/linear-axis-mixin.js +7 -1
  170. package/esm/component/axis/mixin/linear-axis-mixin.js.map +1 -1
  171. package/esm/component/brush/brush.d.ts +1 -0
  172. package/esm/component/brush/brush.js +16 -10
  173. package/esm/component/brush/brush.js.map +1 -1
  174. package/esm/component/crosshair/base.d.ts +1 -1
  175. package/esm/component/crosshair/base.js +1 -1
  176. package/esm/component/crosshair/base.js.map +1 -1
  177. package/esm/component/crosshair/cartesian.js +3 -1
  178. package/esm/component/crosshair/cartesian.js.map +1 -1
  179. package/esm/component/index.js +2 -1
  180. package/esm/component/label/label.js +1 -1
  181. package/esm/component/label/label.js.map +1 -1
  182. package/esm/component/legend/base-legend.js +1 -1
  183. package/esm/component/legend/base-legend.js.map +1 -1
  184. package/esm/component/legend/discrete/interface.d.ts +11 -1
  185. package/esm/component/legend/discrete/interface.js.map +1 -1
  186. package/esm/component/legend/discrete/legend.d.ts +1 -1
  187. package/esm/component/legend/discrete/legend.js +4 -3
  188. package/esm/component/legend/discrete/legend.js.map +1 -1
  189. package/esm/component/legend/discrete/util.d.ts +2 -1
  190. package/esm/component/legend/discrete/util.js +37 -4
  191. package/esm/component/legend/discrete/util.js.map +1 -1
  192. package/esm/component/marker/base-marker.js +11 -7
  193. package/esm/component/marker/base-marker.js.map +1 -1
  194. package/esm/component/marker/mark-line/cartesian-mark-line.js +18 -8
  195. package/esm/component/marker/mark-line/cartesian-mark-line.js.map +1 -1
  196. package/esm/component/marker/mark-line/interface/spec.d.ts +9 -2
  197. package/esm/component/marker/mark-line/interface/spec.js.map +1 -1
  198. package/esm/component/marker/mark-point/base-mark-point.js +29 -16
  199. package/esm/component/marker/mark-point/base-mark-point.js.map +1 -1
  200. package/esm/component/marker/utils.js +16 -6
  201. package/esm/component/marker/utils.js.map +1 -1
  202. package/esm/constant/correlation.js +2 -1
  203. package/esm/constant/event.js +1 -2
  204. package/esm/constant/marker.js +1 -1
  205. package/esm/constant/polar.js +1 -1
  206. package/esm/core/index.d.ts +3 -2
  207. package/esm/core/index.js +4 -2
  208. package/esm/core/index.js.map +1 -1
  209. package/esm/core/vchart.js +15 -5
  210. package/esm/core/vchart.js.map +1 -1
  211. package/esm/data/data-view-utils.js +1 -1
  212. package/esm/data/initialize.js +1 -1
  213. package/esm/data/register.js +1 -1
  214. package/esm/env/env.js +1 -1
  215. package/esm/env/env.js.map +1 -1
  216. package/esm/mark/arc.js +4 -2
  217. package/esm/mark/arc.js.map +1 -1
  218. package/esm/mark/area.js +6 -2
  219. package/esm/mark/area.js.map +1 -1
  220. package/esm/mark/base/base-line.js +2 -2
  221. package/esm/mark/base/base-line.js.map +1 -1
  222. package/esm/mark/base/base-mark.d.ts +0 -1
  223. package/esm/mark/base/base-mark.js +16 -24
  224. package/esm/mark/base/base-mark.js.map +1 -1
  225. package/esm/mark/glyph.d.ts +3 -0
  226. package/esm/mark/glyph.js +30 -4
  227. package/esm/mark/glyph.js.map +1 -1
  228. package/esm/mark/group.js +5 -4
  229. package/esm/mark/group.js.map +1 -1
  230. package/esm/mark/interface/common.js.map +1 -1
  231. package/esm/mark/line.js +6 -2
  232. package/esm/mark/line.js.map +1 -1
  233. package/esm/mark/rect.js +4 -2
  234. package/esm/mark/rect.js.map +1 -1
  235. package/esm/mark/symbol.js +4 -2
  236. package/esm/mark/symbol.js.map +1 -1
  237. package/esm/mark/text.js +5 -1
  238. package/esm/mark/text.js.map +1 -1
  239. package/esm/plugin/components/axis-sync/tick-align-transform.js +1 -1
  240. package/esm/plugin/components/axis-sync/tick-align-transform.js.map +1 -1
  241. package/esm/plugin/components/tooltip-handler/canvas-tooltip-handler.d.ts +2 -2
  242. package/esm/plugin/components/tooltip-handler/canvas-tooltip-handler.js +1 -1
  243. package/esm/plugin/components/tooltip-handler/canvas-tooltip-handler.js.map +1 -1
  244. package/esm/plugin/other.js +2 -2
  245. package/esm/plugin/other.js.map +1 -1
  246. package/esm/series/base/base-series.d.ts +3 -0
  247. package/esm/series/base/base-series.js +54 -24
  248. package/esm/series/base/base-series.js.map +1 -1
  249. package/esm/series/dot/dot.d.ts +1 -0
  250. package/esm/series/interface/common.d.ts +2 -1
  251. package/esm/series/interface/common.js.map +1 -1
  252. package/esm/series/line/line.js +3 -1
  253. package/esm/series/line/line.js.map +1 -1
  254. package/esm/series/waterfall/waterfall.d.ts +2 -0
  255. package/esm/series/waterfall/waterfall.js +12 -4
  256. package/esm/series/waterfall/waterfall.js.map +1 -1
  257. package/esm/series/word-cloud/animation.js +3 -0
  258. package/esm/series/word-cloud/animation.js.map +1 -1
  259. package/esm/theme/builtin/common/series/word-cloud.js +2 -6
  260. package/esm/theme/builtin/common/series/word-cloud.js.map +1 -1
  261. package/esm/util/mark.js +8 -2
  262. package/esm/util/mark.js.map +1 -1
  263. package/esm/util/math.d.ts +1 -1
  264. package/esm/util/math.js +1 -1
  265. package/esm/util/math.js.map +1 -1
  266. package/esm/util/style.js +23 -2
  267. package/esm/util/style.js.map +1 -1
  268. package/esm/util/text.js +1 -1
  269. package/esm/util/text.js.map +1 -1
  270. package/esm/vchart-line.d.ts +4 -0
  271. package/esm/vchart-line.js +28 -0
  272. package/esm/vchart-line.js.map +1 -0
  273. package/esm/vchart-simple.d.ts +5 -1
  274. package/esm/vchart-simple.js +9 -1
  275. package/esm/vchart-simple.js.map +1 -1
  276. package/package.json +10 -9
package/cjs/env/env.js CHANGED
@@ -4,56 +4,56 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.registerHarmonyEnv = exports.registerTTEnv = exports.registerWXEnv = exports.registerTaroEnv = exports.registerNodeEnv = exports.registerLynxEnv = exports.registerLarkEnv = exports.registerBrowserEnv = exports.registerAllEnv = void 0;
6
6
 
7
- const vrender_kits_1 = require("@visactor/vrender-kits"), vrender_core_1 = require("@visactor/vrender-core"), registerAllEnv = () => {
8
- (0, vrender_kits_1.initAllEnv)();
7
+ const env_1 = require("@visactor/vrender-kits/env"), vrender_core_1 = require("@visactor/vrender-core"), registerAllEnv = () => {
8
+ (0, env_1.initAllEnv)();
9
9
  };
10
10
 
11
11
  exports.registerAllEnv = registerAllEnv;
12
12
 
13
13
  const registerBrowserEnv = () => {
14
- (0, vrender_kits_1.loadBrowserEnv)(vrender_core_1.container);
14
+ (0, env_1.loadBrowserEnv)(vrender_core_1.container);
15
15
  };
16
16
 
17
17
  exports.registerBrowserEnv = registerBrowserEnv;
18
18
 
19
19
  const registerLarkEnv = () => {
20
- (0, vrender_kits_1.loadFeishuEnv)(vrender_core_1.container);
20
+ (0, env_1.loadFeishuEnv)(vrender_core_1.container);
21
21
  };
22
22
 
23
23
  exports.registerLarkEnv = registerLarkEnv;
24
24
 
25
25
  const registerLynxEnv = () => {
26
- (0, vrender_kits_1.loadLynxEnv)(vrender_core_1.container);
26
+ (0, env_1.loadLynxEnv)(vrender_core_1.container);
27
27
  };
28
28
 
29
29
  exports.registerLynxEnv = registerLynxEnv;
30
30
 
31
31
  const registerNodeEnv = () => {
32
- (0, vrender_kits_1.loadNodeEnv)(vrender_core_1.container);
32
+ (0, env_1.loadNodeEnv)(vrender_core_1.container);
33
33
  };
34
34
 
35
35
  exports.registerNodeEnv = registerNodeEnv;
36
36
 
37
37
  const registerTaroEnv = () => {
38
- (0, vrender_kits_1.loadTaroEnv)(vrender_core_1.container);
38
+ (0, env_1.loadTaroEnv)(vrender_core_1.container);
39
39
  };
40
40
 
41
41
  exports.registerTaroEnv = registerTaroEnv;
42
42
 
43
43
  const registerWXEnv = () => {
44
- (0, vrender_kits_1.loadWxEnv)(vrender_core_1.container);
44
+ (0, env_1.loadWxEnv)(vrender_core_1.container);
45
45
  };
46
46
 
47
47
  exports.registerWXEnv = registerWXEnv;
48
48
 
49
49
  const registerTTEnv = () => {
50
- (0, vrender_kits_1.loadTTEnv)(vrender_core_1.container);
50
+ (0, env_1.loadTTEnv)(vrender_core_1.container);
51
51
  };
52
52
 
53
53
  exports.registerTTEnv = registerTTEnv;
54
54
 
55
55
  const registerHarmonyEnv = () => {
56
- (0, vrender_kits_1.loadHarmonyEnv)(vrender_core_1.container);
56
+ (0, env_1.loadHarmonyEnv)(vrender_core_1.container);
57
57
  };
58
58
 
59
59
  exports.registerHarmonyEnv = registerHarmonyEnv;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/env/env.ts"],"names":[],"mappings":";;;AAAA,yDAUgC;AAChC,yDAAmD;AAK5C,MAAM,cAAc,GAAG,GAAG,EAAE;IACjC,IAAA,yBAAU,GAAE,CAAC;AACf,CAAC,CAAC;AAFW,QAAA,cAAc,kBAEzB;AAKK,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,IAAA,6BAAc,EAAC,wBAAS,CAAC,CAAC;AAC5B,CAAC,CAAC;AAFW,QAAA,kBAAkB,sBAE7B;AAKK,MAAM,eAAe,GAAG,GAAG,EAAE;IAElC,IAAA,4BAAa,EAAC,wBAAS,CAAC,CAAC;AAC3B,CAAC,CAAC;AAHW,QAAA,eAAe,mBAG1B;AAKK,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,IAAA,0BAAW,EAAC,wBAAS,CAAC,CAAC;AACzB,CAAC,CAAC;AAFW,QAAA,eAAe,mBAE1B;AAKK,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,IAAA,0BAAW,EAAC,wBAAS,CAAC,CAAC;AACzB,CAAC,CAAC;AAFW,QAAA,eAAe,mBAE1B;AAKK,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,IAAA,0BAAW,EAAC,wBAAS,CAAC,CAAC;AACzB,CAAC,CAAC;AAFW,QAAA,eAAe,mBAE1B;AAKK,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,IAAA,wBAAS,EAAC,wBAAS,CAAC,CAAC;AACvB,CAAC,CAAC;AAFW,QAAA,aAAa,iBAExB;AAIK,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,IAAA,wBAAS,EAAC,wBAAS,CAAC,CAAC;AACvB,CAAC,CAAC;AAFW,QAAA,aAAa,iBAExB;AAIK,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,IAAA,6BAAc,EAAC,wBAAS,CAAC,CAAC;AAC5B,CAAC,CAAC;AAFW,QAAA,kBAAkB,sBAE7B","file":"env.js","sourcesContent":["import {\n initAllEnv,\n loadBrowserEnv,\n loadFeishuEnv,\n loadLynxEnv,\n loadNodeEnv,\n loadTaroEnv,\n loadWxEnv,\n loadTTEnv,\n loadHarmonyEnv\n} from '@visactor/vrender-kits';\nimport { container } from '@visactor/vrender-core';\n\n/**\n * 加载所有环境兼容代码\n */\nexport const registerAllEnv = () => {\n initAllEnv();\n};\n\n/**\n * 加载浏览器环境代码\n */\nexport const registerBrowserEnv = () => {\n loadBrowserEnv(container);\n};\n\n/**\n * 加载飞书(飞书小程序/block/tt)环境代码\n */\nexport const registerLarkEnv = () => {\n // TODO: 后续统一为 loadLarkEnv\n loadFeishuEnv(container);\n};\n\n/**\n * 加载 Lynx 环境代码\n */\nexport const registerLynxEnv = () => {\n loadLynxEnv(container);\n};\n\n/**\n * 加载 Node 环境代码\n */\nexport const registerNodeEnv = () => {\n loadNodeEnv(container);\n};\n\n/**\n * 加载 Taro 环境代码\n */\nexport const registerTaroEnv = () => {\n loadTaroEnv(container);\n};\n\n/**\n * 加载微信小程序环境代码\n */\nexport const registerWXEnv = () => {\n loadWxEnv(container);\n};\n/**\n * 加载TT小程序环境代码\n */\nexport const registerTTEnv = () => {\n loadTTEnv(container);\n};\n/**\n * 加载Harmony环境代码\n */\nexport const registerHarmonyEnv = () => {\n loadHarmonyEnv(container);\n};\n"]}
1
+ {"version":3,"sources":["../src/env/env.ts"],"names":[],"mappings":";;;AAAA,oDAUoC;AACpC,yDAAmD;AAK5C,MAAM,cAAc,GAAG,GAAG,EAAE;IACjC,IAAA,gBAAU,GAAE,CAAC;AACf,CAAC,CAAC;AAFW,QAAA,cAAc,kBAEzB;AAKK,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,IAAA,oBAAc,EAAC,wBAAS,CAAC,CAAC;AAC5B,CAAC,CAAC;AAFW,QAAA,kBAAkB,sBAE7B;AAKK,MAAM,eAAe,GAAG,GAAG,EAAE;IAElC,IAAA,mBAAa,EAAC,wBAAS,CAAC,CAAC;AAC3B,CAAC,CAAC;AAHW,QAAA,eAAe,mBAG1B;AAKK,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,IAAA,iBAAW,EAAC,wBAAS,CAAC,CAAC;AACzB,CAAC,CAAC;AAFW,QAAA,eAAe,mBAE1B;AAKK,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,IAAA,iBAAW,EAAC,wBAAS,CAAC,CAAC;AACzB,CAAC,CAAC;AAFW,QAAA,eAAe,mBAE1B;AAKK,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,IAAA,iBAAW,EAAC,wBAAS,CAAC,CAAC;AACzB,CAAC,CAAC;AAFW,QAAA,eAAe,mBAE1B;AAKK,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,IAAA,eAAS,EAAC,wBAAS,CAAC,CAAC;AACvB,CAAC,CAAC;AAFW,QAAA,aAAa,iBAExB;AAIK,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,IAAA,eAAS,EAAC,wBAAS,CAAC,CAAC;AACvB,CAAC,CAAC;AAFW,QAAA,aAAa,iBAExB;AAIK,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,IAAA,oBAAc,EAAC,wBAAS,CAAC,CAAC;AAC5B,CAAC,CAAC;AAFW,QAAA,kBAAkB,sBAE7B","file":"env.js","sourcesContent":["import {\n initAllEnv,\n loadBrowserEnv,\n loadFeishuEnv,\n loadLynxEnv,\n loadNodeEnv,\n loadTaroEnv,\n loadWxEnv,\n loadTTEnv,\n loadHarmonyEnv\n} from '@visactor/vrender-kits/env';\nimport { container } from '@visactor/vrender-core';\n\n/**\n * 加载所有环境兼容代码\n */\nexport const registerAllEnv = () => {\n initAllEnv();\n};\n\n/**\n * 加载浏览器环境代码\n */\nexport const registerBrowserEnv = () => {\n loadBrowserEnv(container);\n};\n\n/**\n * 加载飞书(飞书小程序/block/tt)环境代码\n */\nexport const registerLarkEnv = () => {\n // TODO: 后续统一为 loadLarkEnv\n loadFeishuEnv(container);\n};\n\n/**\n * 加载 Lynx 环境代码\n */\nexport const registerLynxEnv = () => {\n loadLynxEnv(container);\n};\n\n/**\n * 加载 Node 环境代码\n */\nexport const registerNodeEnv = () => {\n loadNodeEnv(container);\n};\n\n/**\n * 加载 Taro 环境代码\n */\nexport const registerTaroEnv = () => {\n loadTaroEnv(container);\n};\n\n/**\n * 加载微信小程序环境代码\n */\nexport const registerWXEnv = () => {\n loadWxEnv(container);\n};\n/**\n * 加载TT小程序环境代码\n */\nexport const registerTTEnv = () => {\n loadTTEnv(container);\n};\n/**\n * 加载Harmony环境代码\n */\nexport const registerHarmonyEnv = () => {\n loadHarmonyEnv(container);\n};\n"]}
package/cjs/mark/arc.js CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.registerArcMark = exports.ArcMark = exports.BaseArcMark = void 0;
6
6
 
7
- const factory_1 = require("./../core/factory"), polar_1 = require("../constant/polar"), base_mark_1 = require("./base/base-mark"), config_1 = require("../animation/config"), vutils_1 = require("@visactor/vutils"), vrender_core_1 = require("@visactor/vrender-core"), vrender_components_1 = require("@visactor/vrender-components"), vrender_kits_1 = require("@visactor/vrender-kits");
7
+ const factory_1 = require("./../core/factory"), polar_1 = require("../constant/polar"), base_mark_1 = require("./base/base-mark"), config_1 = require("../animation/config"), vutils_1 = require("@visactor/vutils"), vrender_core_1 = require("@visactor/vrender-core"), label_1 = require("@visactor/vrender-components/label"), register_arc_1 = require("@visactor/vrender-kits/register/register-arc"), register_shadowRoot_1 = require("@visactor/vrender-kits/register/register-shadowRoot");
8
8
 
9
9
  class BaseArcMark extends base_mark_1.BaseMark {
10
10
  constructor(name, option) {
@@ -47,9 +47,9 @@ class ArcMark extends BaseArcMark {
47
47
  exports.ArcMark = ArcMark, ArcMark.type = "arc";
48
48
 
49
49
  const registerArcMark = () => {
50
- (0, vrender_kits_1.registerShadowRoot)(), (0, vrender_kits_1.registerArc)(), (0,
51
- vrender_components_1.registerArcDataLabel)(), (0, config_1.registerArcAnimation)(),
52
- factory_1.Factory.registerGraphicComponent("arc", vrender_core_1.createArc), factory_1.Factory.registerMark(ArcMark.type, ArcMark);
50
+ (0, register_shadowRoot_1.registerShadowRoot)(), (0, register_arc_1.registerArc)(),
51
+ (0, label_1.registerArcDataLabel)(), (0, config_1.registerArcAnimation)(), factory_1.Factory.registerGraphicComponent("arc", vrender_core_1.createArc),
52
+ factory_1.Factory.registerMark(ArcMark.type, ArcMark);
53
53
  };
54
54
 
55
55
  exports.registerArcMark = registerArcMark;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/arc.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAC5C,6CAAqD;AAIrD,gDAA4C;AAI5C,gDAA2D;AAC3D,6CAAoD;AACpD,yDAAmD;AACnD,qEAAoE;AACpE,yDAAyE;AAEzE,MAAa,WAAoC,SAAQ,oBAAW;IAKlE,YAAY,IAAY,EAAE,MAAmB;QAC3C,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QALb,SAAI,GAAW,OAAO,CAAC,IAAI,CAAC;QAErC,sBAAiB,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;QA6BrD,uBAAkB,GAAG,CAC7B,GAAW,EACX,KAAY,EACZ,SAAyB,QAAQ,EACjC,UAAkB,EACV,EAAE;;YACV,MAAM,MAAM,GAAG,MAAC,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,KAAK,EAAE,MAAM,CAAY,mCAAI,CAAC,CAAC;YACjF,OAAO,UAAU,GAAG,MAAM,CAAC;QAC7B,CAAC,CAAC;QAEQ,kBAAa,GAAG,CAAC,GAAc,EAAE,KAAY,EAAE,SAAyB,QAAQ,EAAE,MAAc,EAAE,EAAE;YAC5G,OAAO,CACL,IAAA,yBAAgB,EACd,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EACd,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,KAAK,EAAE,MAAM,CAAW,EAC1D,KAAK,CAAC,wBAAgB,CAAC,CACxB,CAAC,GAAG,CAAC,GAAG,MAAM,CAChB,CAAC;QACJ,CAAC,CAAC;QAzCA,IAAI,CAAC,iBAAiB,CAAC,CAAC,GAAG,IAAI,CAAC,aAA8B,CAAC;QAC/D,IAAI,CAAC,iBAAiB,CAAC,CAAC,GAAG,IAAI,CAAC,aAA8B,CAAC;QAC/D,IAAI,CAAC,iBAAiB,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAmC,CAAC;QAE9E,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACjD,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,CAAC,aAAa,CAAC,CAAC;IACxD,CAAC;IAES,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,UAAU,EAAE,CAAC,EACb,QAAQ,EAAE,CAAC,EACX,WAAW,EAAE,CAAC,EACd,WAAW,EAAE,CAAC,EACd,YAAY,EAAE,CAAC,EACf,SAAS,EAAE,CAAC,EACZ,YAAY,EAAE,CAAC,EACf,YAAY,EAAE,CAAC,GAChB,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;CAqBF;AAnDD,kCAmDC;AAED,MAAa,OAAQ,SAAQ,WAAyB;IAAtD;;QAEW,SAAI,GAAiB,OAAO,CAAC,IAAI,CAAC;IAC7C,CAAC;;AAHD,0BAGC;AAFiB,YAAI,SAAoB;AAInC,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,IAAA,iCAAkB,GAAE,CAAC;IACrB,IAAA,0BAAW,GAAE,CAAC;IACd,IAAA,yCAAoB,GAAE,CAAC;IACvB,IAAA,6BAAoB,GAAE,CAAC;IACvB,iBAAO,CAAC,wBAAwB,QAAmB,wBAAS,CAAC,CAAC;IAC9D,iBAAO,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC,CAAC;AAPW,QAAA,eAAe,mBAO1B","file":"arc.js","sourcesContent":["import { Factory } from './../core/factory';\nimport { ARC_MIDDLE_ANGLE } from '../constant/polar';\nimport type { IArcMarkSpec, Datum, StateValueType } from '../typings';\nimport type { ExChannelCall } from './base/base-mark';\n// eslint-disable-next-line no-duplicate-imports\nimport { BaseMark } from './base/base-mark';\nimport type { IArcMark, IMarkOption, IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerArcAnimation } from '../animation/config';\nimport { polarToCartesian } from '@visactor/vutils';\nimport { createArc } from '@visactor/vrender-core';\nimport { registerArcDataLabel } from '@visactor/vrender-components';\nimport { registerArc, registerShadowRoot } from '@visactor/vrender-kits';\n\nexport class BaseArcMark<T extends IArcMarkSpec> extends BaseMark<T> implements IMarkRaw<T> {\n readonly type: string = ArcMark.type;\n\n _unCompileChannel = { centerOffset: true, radiusOffset: true };\n\n constructor(name: string, option: IMarkOption) {\n super(name, option);\n\n // because of set object.function, this setting should be write after object init\n this._computeExChannel.x = this.computeCenter as ExChannelCall;\n this._computeExChannel.y = this.computeCenter as ExChannelCall;\n this._computeExChannel.outerRadius = this.computeOuterRadius as ExChannelCall;\n\n this._extensionChannel.centerOffset = ['x', 'y'];\n this._extensionChannel.radiusOffset = ['outerRadius'];\n }\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<T> = {\n ...super._getDefaultStyle(),\n startAngle: 0,\n endAngle: 0,\n outerRadius: 0,\n innerRadius: 0,\n cornerRadius: 0,\n lineWidth: 0,\n innerPadding: 0,\n outerPadding: 0\n };\n return defaultStyle;\n }\n\n protected computeOuterRadius = (\n key: string,\n datum: Datum,\n states: StateValueType = 'normal',\n superValue: number\n ): number => {\n const offset = (this.getAttribute('radiusOffset', datum, states) as number) ?? 0;\n return superValue + offset;\n };\n\n protected computeCenter = (key: 'x' | 'y', datum: Datum, states: StateValueType = 'normal', center: number) => {\n return (\n polarToCartesian(\n { x: 0, y: 0 },\n this.getAttribute('centerOffset', datum, states) as number,\n datum[ARC_MIDDLE_ANGLE]\n )[key] + center\n );\n };\n}\n\nexport class ArcMark extends BaseArcMark<IArcMarkSpec> implements IArcMark {\n static readonly type = MarkTypeEnum.arc;\n readonly type: MarkTypeEnum = ArcMark.type;\n}\n\nexport const registerArcMark = () => {\n registerShadowRoot();\n registerArc();\n registerArcDataLabel();\n registerArcAnimation();\n Factory.registerGraphicComponent(MarkTypeEnum.arc, createArc);\n Factory.registerMark(ArcMark.type, ArcMark);\n};\n"]}
1
+ {"version":3,"sources":["../src/mark/arc.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAC5C,6CAAqD;AAIrD,gDAA4C;AAI5C,gDAA2D;AAC3D,6CAAoD;AACpD,yDAAmD;AACnD,8DAA0E;AAC1E,+EAA2E;AAC3E,6FAAyF;AAEzF,MAAa,WAAoC,SAAQ,oBAAW;IAKlE,YAAY,IAAY,EAAE,MAAmB;QAC3C,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QALb,SAAI,GAAW,OAAO,CAAC,IAAI,CAAC;QAErC,sBAAiB,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;QA6BrD,uBAAkB,GAAG,CAC7B,GAAW,EACX,KAAY,EACZ,SAAyB,QAAQ,EACjC,UAAkB,EACV,EAAE;;YACV,MAAM,MAAM,GAAG,MAAC,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,KAAK,EAAE,MAAM,CAAY,mCAAI,CAAC,CAAC;YACjF,OAAO,UAAU,GAAG,MAAM,CAAC;QAC7B,CAAC,CAAC;QAEQ,kBAAa,GAAG,CAAC,GAAc,EAAE,KAAY,EAAE,SAAyB,QAAQ,EAAE,MAAc,EAAE,EAAE;YAC5G,OAAO,CACL,IAAA,yBAAgB,EACd,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EACd,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,KAAK,EAAE,MAAM,CAAW,EAC1D,KAAK,CAAC,wBAAgB,CAAC,CACxB,CAAC,GAAG,CAAC,GAAG,MAAM,CAChB,CAAC;QACJ,CAAC,CAAC;QAzCA,IAAI,CAAC,iBAAiB,CAAC,CAAC,GAAG,IAAI,CAAC,aAA8B,CAAC;QAC/D,IAAI,CAAC,iBAAiB,CAAC,CAAC,GAAG,IAAI,CAAC,aAA8B,CAAC;QAC/D,IAAI,CAAC,iBAAiB,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAmC,CAAC;QAE9E,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACjD,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,CAAC,aAAa,CAAC,CAAC;IACxD,CAAC;IAES,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,UAAU,EAAE,CAAC,EACb,QAAQ,EAAE,CAAC,EACX,WAAW,EAAE,CAAC,EACd,WAAW,EAAE,CAAC,EACd,YAAY,EAAE,CAAC,EACf,SAAS,EAAE,CAAC,EACZ,YAAY,EAAE,CAAC,EACf,YAAY,EAAE,CAAC,GAChB,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;CAqBF;AAnDD,kCAmDC;AAED,MAAa,OAAQ,SAAQ,WAAyB;IAAtD;;QAEW,SAAI,GAAiB,OAAO,CAAC,IAAI,CAAC;IAC7C,CAAC;;AAHD,0BAGC;AAFiB,YAAI,SAAoB;AAInC,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,IAAA,wCAAkB,GAAE,CAAC;IACrB,IAAA,0BAAW,GAAE,CAAC;IACd,IAAA,4BAAoB,GAAE,CAAC;IACvB,IAAA,6BAAoB,GAAE,CAAC;IACvB,iBAAO,CAAC,wBAAwB,QAAmB,wBAAS,CAAC,CAAC;IAC9D,iBAAO,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC,CAAC;AAPW,QAAA,eAAe,mBAO1B","file":"arc.js","sourcesContent":["import { Factory } from './../core/factory';\nimport { ARC_MIDDLE_ANGLE } from '../constant/polar';\nimport type { IArcMarkSpec, Datum, StateValueType } from '../typings';\nimport type { ExChannelCall } from './base/base-mark';\n// eslint-disable-next-line no-duplicate-imports\nimport { BaseMark } from './base/base-mark';\nimport type { IArcMark, IMarkOption, IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerArcAnimation } from '../animation/config';\nimport { polarToCartesian } from '@visactor/vutils';\nimport { createArc } from '@visactor/vrender-core';\nimport { registerArcDataLabel } from '@visactor/vrender-components/label';\nimport { registerArc } from '@visactor/vrender-kits/register/register-arc';\nimport { registerShadowRoot } from '@visactor/vrender-kits/register/register-shadowRoot';\n\nexport class BaseArcMark<T extends IArcMarkSpec> extends BaseMark<T> implements IMarkRaw<T> {\n readonly type: string = ArcMark.type;\n\n _unCompileChannel = { centerOffset: true, radiusOffset: true };\n\n constructor(name: string, option: IMarkOption) {\n super(name, option);\n\n // because of set object.function, this setting should be write after object init\n this._computeExChannel.x = this.computeCenter as ExChannelCall;\n this._computeExChannel.y = this.computeCenter as ExChannelCall;\n this._computeExChannel.outerRadius = this.computeOuterRadius as ExChannelCall;\n\n this._extensionChannel.centerOffset = ['x', 'y'];\n this._extensionChannel.radiusOffset = ['outerRadius'];\n }\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<T> = {\n ...super._getDefaultStyle(),\n startAngle: 0,\n endAngle: 0,\n outerRadius: 0,\n innerRadius: 0,\n cornerRadius: 0,\n lineWidth: 0,\n innerPadding: 0,\n outerPadding: 0\n };\n return defaultStyle;\n }\n\n protected computeOuterRadius = (\n key: string,\n datum: Datum,\n states: StateValueType = 'normal',\n superValue: number\n ): number => {\n const offset = (this.getAttribute('radiusOffset', datum, states) as number) ?? 0;\n return superValue + offset;\n };\n\n protected computeCenter = (key: 'x' | 'y', datum: Datum, states: StateValueType = 'normal', center: number) => {\n return (\n polarToCartesian(\n { x: 0, y: 0 },\n this.getAttribute('centerOffset', datum, states) as number,\n datum[ARC_MIDDLE_ANGLE]\n )[key] + center\n );\n };\n}\n\nexport class ArcMark extends BaseArcMark<IArcMarkSpec> implements IArcMark {\n static readonly type = MarkTypeEnum.arc;\n readonly type: MarkTypeEnum = ArcMark.type;\n}\n\nexport const registerArcMark = () => {\n registerShadowRoot();\n registerArc();\n registerArcDataLabel();\n registerArcAnimation();\n Factory.registerGraphicComponent(MarkTypeEnum.arc, createArc);\n Factory.registerMark(ArcMark.type, ArcMark);\n};\n"]}
package/cjs/mark/area.js CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.registerAreaMark = exports.AreaMark = void 0;
6
6
 
7
- const factory_1 = require("./../core/factory"), base_line_1 = require("./base/base-line"), config_1 = require("../animation/config"), vrender_kits_1 = require("@visactor/vrender-kits"), vrender_components_1 = require("@visactor/vrender-components"), vrender_core_1 = require("@visactor/vrender-core"), AREA_SEGMENT_ATTRIBUTES = [ ...base_line_1.LINE_SEGMENT_ATTRIBUTES, "fill", "fillOpacity", "background", "texture", "texturePadding", "textureSize", "textureColor" ];
7
+ const factory_1 = require("./../core/factory"), base_line_1 = require("./base/base-line"), config_1 = require("../animation/config"), register_area_1 = require("@visactor/vrender-kits/register/register-area"), register_shadowRoot_1 = require("@visactor/vrender-kits/register/register-shadowRoot"), line_1 = require("@visactor/vrender-components/label/line"), symbol_1 = require("@visactor/vrender-components/label/symbol"), vrender_core_1 = require("@visactor/vrender-core"), AREA_SEGMENT_ATTRIBUTES = [ ...base_line_1.LINE_SEGMENT_ATTRIBUTES, "fill", "fillOpacity", "background", "texture", "texturePadding", "textureSize", "textureColor" ];
8
8
 
9
9
  class AreaMark extends base_line_1.BaseLineMark {
10
10
  constructor() {
@@ -26,10 +26,9 @@ class AreaMark extends base_line_1.BaseLineMark {
26
26
  exports.AreaMark = AreaMark, AreaMark.type = "area";
27
27
 
28
28
  const registerAreaMark = () => {
29
- factory_1.Factory.registerMark(AreaMark.type, AreaMark), (0, vrender_kits_1.registerShadowRoot)(),
30
- (0, vrender_kits_1.registerArea)(), (0, vrender_components_1.registerLineDataLabel)(),
31
- (0, vrender_components_1.registerSymbolDataLabel)(), (0, config_1.registerLineOrAreaAnimation)(),
32
- factory_1.Factory.registerGraphicComponent("area", vrender_core_1.createArea);
29
+ factory_1.Factory.registerMark(AreaMark.type, AreaMark), (0, register_shadowRoot_1.registerShadowRoot)(),
30
+ (0, register_area_1.registerArea)(), (0, line_1.registerLineDataLabel)(), (0, symbol_1.registerSymbolDataLabel)(),
31
+ (0, config_1.registerLineOrAreaAnimation)(), factory_1.Factory.registerGraphicComponent("area", vrender_core_1.createArea);
33
32
  };
34
33
 
35
34
  exports.registerAreaMark = registerAreaMark;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/area.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAE5C,gDAAyE;AAIzE,gDAAkE;AAClE,yDAA0E;AAC1E,qEAA8F;AAC9F,yDAAoD;AAEpD,MAAM,uBAAuB,GAAG;IAC9B,GAAG,mCAAuB;IAC1B,MAAM;IACN,aAAa;IACb,YAAY;IACZ,SAAS;IACT,gBAAgB;IAChB,aAAa;IACb,cAAc;CACf,CAAC;AAEF,MAAa,QAAS,SAAQ,wBAA2B;IAAzD;;QAEW,SAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QAkB9B,yBAAoB,GAAG,CAAC,OAAe,EAAE,EAAE;YACzC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC7D,CAAC,CAAC;IACJ,CAAC;IAnBW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,SAAS,EAAE,CAAC,GACb,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;IAES,qBAAqB;QAC7B,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAES,oBAAoB;QAC5B,OAAO,EAAE,CAAC;IACZ,CAAC;;AAlBH,4BAuBC;AAtBiB,aAAI,UAAqB;AAwBpC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,iBAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC9C,IAAA,iCAAkB,GAAE,CAAC;IACrB,IAAA,2BAAY,GAAE,CAAC;IACf,IAAA,0CAAqB,GAAE,CAAC;IACxB,IAAA,4CAAuB,GAAE,CAAC;IAC1B,IAAA,oCAA2B,GAAE,CAAC;IAC9B,iBAAO,CAAC,wBAAwB,SAAoB,yBAAU,CAAC,CAAC;AAClE,CAAC,CAAC;AARW,QAAA,gBAAgB,oBAQ3B","file":"area.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { IAreaMarkSpec } from '../typings/visual';\nimport { BaseLineMark, LINE_SEGMENT_ATTRIBUTES } from './base/base-line';\nimport type { IAreaMark, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerLineOrAreaAnimation } from '../animation/config';\nimport { registerArea, registerShadowRoot } from '@visactor/vrender-kits';\nimport { registerLineDataLabel, registerSymbolDataLabel } from '@visactor/vrender-components';\nimport { createArea } from '@visactor/vrender-core';\n\nconst AREA_SEGMENT_ATTRIBUTES = [\n ...LINE_SEGMENT_ATTRIBUTES,\n 'fill',\n 'fillOpacity',\n 'background',\n 'texture',\n 'texturePadding',\n 'textureSize',\n 'textureColor'\n];\n\nexport class AreaMark extends BaseLineMark<IAreaMarkSpec> implements IAreaMark {\n static readonly type = MarkTypeEnum.area;\n readonly type = AreaMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IAreaMarkSpec> = {\n ...super._getDefaultStyle(),\n lineWidth: 0\n };\n return defaultStyle;\n }\n\n protected _getSegmentAttributes() {\n return AREA_SEGMENT_ATTRIBUTES;\n }\n\n protected _getIgnoreAttributes(): string[] {\n return [];\n }\n\n _isValidPointChannel = (channel: string) => {\n return ['x', 'y', 'x1', 'y1', 'defined'].includes(channel);\n };\n}\n\nexport const registerAreaMark = () => {\n Factory.registerMark(AreaMark.type, AreaMark);\n registerShadowRoot();\n registerArea();\n registerLineDataLabel();\n registerSymbolDataLabel();\n registerLineOrAreaAnimation();\n Factory.registerGraphicComponent(MarkTypeEnum.area, createArea);\n};\n"]}
1
+ {"version":3,"sources":["../src/mark/area.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAE5C,gDAAyE;AAIzE,gDAAkE;AAClE,iFAA6E;AAC7E,6FAAyF;AACzF,kEAAgF;AAChF,sEAAoF;AACpF,yDAAoD;AAEpD,MAAM,uBAAuB,GAAG;IAC9B,GAAG,mCAAuB;IAC1B,MAAM;IACN,aAAa;IACb,YAAY;IACZ,SAAS;IACT,gBAAgB;IAChB,aAAa;IACb,cAAc;CACf,CAAC;AAEF,MAAa,QAAS,SAAQ,wBAA2B;IAAzD;;QAEW,SAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QAkB9B,yBAAoB,GAAG,CAAC,OAAe,EAAE,EAAE;YACzC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC7D,CAAC,CAAC;IACJ,CAAC;IAnBW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,SAAS,EAAE,CAAC,GACb,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;IAES,qBAAqB;QAC7B,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAES,oBAAoB;QAC5B,OAAO,EAAE,CAAC;IACZ,CAAC;;AAlBH,4BAuBC;AAtBiB,aAAI,UAAqB;AAwBpC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,iBAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC9C,IAAA,wCAAkB,GAAE,CAAC;IACrB,IAAA,4BAAY,GAAE,CAAC;IACf,IAAA,4BAAqB,GAAE,CAAC;IACxB,IAAA,gCAAuB,GAAE,CAAC;IAC1B,IAAA,oCAA2B,GAAE,CAAC;IAC9B,iBAAO,CAAC,wBAAwB,SAAoB,yBAAU,CAAC,CAAC;AAClE,CAAC,CAAC;AARW,QAAA,gBAAgB,oBAQ3B","file":"area.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { IAreaMarkSpec } from '../typings/visual';\nimport { BaseLineMark, LINE_SEGMENT_ATTRIBUTES } from './base/base-line';\nimport type { IAreaMark, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerLineOrAreaAnimation } from '../animation/config';\nimport { registerArea } from '@visactor/vrender-kits/register/register-area';\nimport { registerShadowRoot } from '@visactor/vrender-kits/register/register-shadowRoot';\nimport { registerLineDataLabel } from '@visactor/vrender-components/label/line';\nimport { registerSymbolDataLabel } from '@visactor/vrender-components/label/symbol';\nimport { createArea } from '@visactor/vrender-core';\n\nconst AREA_SEGMENT_ATTRIBUTES = [\n ...LINE_SEGMENT_ATTRIBUTES,\n 'fill',\n 'fillOpacity',\n 'background',\n 'texture',\n 'texturePadding',\n 'textureSize',\n 'textureColor'\n];\n\nexport class AreaMark extends BaseLineMark<IAreaMarkSpec> implements IAreaMark {\n static readonly type = MarkTypeEnum.area;\n readonly type = AreaMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IAreaMarkSpec> = {\n ...super._getDefaultStyle(),\n lineWidth: 0\n };\n return defaultStyle;\n }\n\n protected _getSegmentAttributes() {\n return AREA_SEGMENT_ATTRIBUTES;\n }\n\n protected _getIgnoreAttributes(): string[] {\n return [];\n }\n\n _isValidPointChannel = (channel: string) => {\n return ['x', 'y', 'x1', 'y1', 'defined'].includes(channel);\n };\n}\n\nexport const registerAreaMark = () => {\n Factory.registerMark(AreaMark.type, AreaMark);\n registerShadowRoot();\n registerArea();\n registerLineDataLabel();\n registerSymbolDataLabel();\n registerLineOrAreaAnimation();\n Factory.registerGraphicComponent(MarkTypeEnum.area, createArea);\n};\n"]}
@@ -52,7 +52,7 @@ class BaseLineMark extends base_mark_1.BaseMark {
52
52
  })), res)), []) : null;
53
53
  }
54
54
  _runPointsEncoder(newStyles, g, attrs = {}) {
55
- var _a, _b, _c;
55
+ var _a, _b;
56
56
  const data = g.context.data, lineAttrs = [], points = [], commonAttrs = {}, progressive = null === (_a = this.renderContext) || void 0 === _a ? void 0 : _a.progressive, isFirstFrame = progressive && 0 === progressive.currentIndex;
57
57
  if (data.forEach(((datum, index) => {
58
58
  var _a;
@@ -60,7 +60,7 @@ class BaseLineMark extends base_mark_1.BaseMark {
60
60
  this._isValidPointChannel(attrName) ? points[index][attrName] = newStyles[attrName](datum) : this._segmentStyleKeys.includes(attrName) && !progressive ? lineAttrs[index][attrName] = newStyles[attrName](datum) : 0 !== index || progressive && !isFirstFrame || (commonAttrs[attrName] = newStyles[attrName](datum));
61
61
  })), points[index].context = null !== (_a = this._keyGetter(datum)) && void 0 !== _a ? _a : index;
62
62
  })), progressive) {
63
- const segments = null !== (_c = null === (_b = g.attribute) || void 0 === _b ? void 0 : _b.segments) && void 0 !== _c ? _c : [];
63
+ const segments = (null === (_b = g.attribute) || void 0 === _b ? void 0 : _b.segments) ? [ ...g.attribute.segments ] : [];
64
64
  return segments.push({
65
65
  points: points
66
66
  }), isFirstFrame ? Object.assign(Object.assign({}, commonAttrs), {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/base/base-line.ts"],"names":[],"mappings":"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","file":"base-line.js","sourcesContent":["import { isValidScaleType } from '@visactor/vscale';\nimport type { StateValueType } from '../../compile/mark';\nimport type { ConvertToMarkStyleSpec, ILineLikeMarkSpec } from '../../typings/visual';\nimport type { IPointLike } from '@visactor/vutils';\nimport { isFunction, isNil } from '@visactor/vutils';\nimport { BaseMark } from './base-mark';\nimport { DiffState, type IMarkGraphic, type IMarkStyle } from '../interface';\nimport type { Datum } from '../../typings/common';\nimport type { IGroup, ILine, ILineGraphicAttribute } from '@visactor/vrender-core';\nimport { isSegmentAttrEqual } from '../utils/line';\nimport type { IMarkSpec } from '../../typings/spec/common';\nimport { DEFAULT_DATA_KEY } from '../../constant/data';\n\nexport const LINE_SEGMENT_ATTRIBUTES = [\n 'stroke',\n 'strokeOpacity',\n 'lineDash',\n 'lineDashOffset',\n 'lineCap',\n 'lineJoin',\n 'lineWidth',\n 'miterLimit'\n];\n\nexport abstract class BaseLineMark<T extends ILineLikeMarkSpec = ILineLikeMarkSpec> extends BaseMark<T> {\n protected abstract _getIgnoreAttributes(): string[];\n\n protected _getSegmentAttributes() {\n return LINE_SEGMENT_ATTRIBUTES;\n }\n\n protected _segmentStyleKeys: string[] = [];\n\n initStyleWithSpec(spec: IMarkSpec<T>) {\n this._segmentStyleKeys = [];\n\n super.initStyleWithSpec(spec);\n }\n /**\n * @override\n * 之所以覆写是因为 vgrammar 侧默认都会处理 lineSegments,非常耗性能,所以需要 VChart 给一个标志位用于是否执行。\n * 由外部series调用,设置markStyle的接口。\n * @param style\n * @param level\n * @param state\n */\n setStyle<T>(\n style: Partial<ConvertToMarkStyleSpec<T>> | Partial<IMarkStyle<T>>,\n state: StateValueType = 'normal',\n level: number = 0\n ): void {\n if (isNil(style)) {\n return;\n }\n\n if (this.stateStyle[state] === undefined) {\n this.stateStyle[state] = {};\n }\n\n const ignoreAttributes = this._getIgnoreAttributes();\n const segmentAttributes = this._getSegmentAttributes();\n const isUserLevel = this.isUserLevel(level);\n\n Object.keys(style).forEach(attr => {\n const attrStyle = (style as any)[attr];\n if (isNil(attrStyle) || ignoreAttributes.includes(attr)) {\n return;\n }\n if (\n isUserLevel &&\n segmentAttributes.includes(attr) &&\n (isValidScaleType(attrStyle?.type) || attrStyle?.scale || isFunction(attrStyle))\n ) {\n if (!this._segmentStyleKeys.includes(attr)) {\n this._segmentStyleKeys.push(attr);\n }\n }\n\n const styleConverter = this._filterAttribute(attr as any, attrStyle, state, level, isUserLevel);\n\n this.setAttribute(attr as any, styleConverter, state, level);\n });\n }\n\n _isValidPointChannel = (channel: string) => {\n return ['x', 'y', 'defined'].includes(channel);\n };\n\n _getLineSegments(items: any[], points: IPointLike[]) {\n if (!this._segmentStyleKeys || !this._segmentStyleKeys.length) {\n return null;\n }\n\n const segments: { attrs: any; startIndex: number; endIndex?: number }[] = [];\n let prevSegmentAttrs: any = null;\n\n items.forEach((item, index) => {\n if (\n !prevSegmentAttrs ||\n !this._segmentStyleKeys.every(key => {\n return isSegmentAttrEqual(prevSegmentAttrs[key], item[key], key);\n })\n ) {\n if (segments.length) {\n segments[segments.length - 1].endIndex = index;\n }\n\n prevSegmentAttrs = item;\n segments.push({\n attrs: prevSegmentAttrs,\n startIndex: index\n });\n }\n });\n\n if (segments.length >= 2) {\n return segments.map(entry => {\n return {\n ...entry.attrs,\n points: points.slice(entry.startIndex, isNil(entry.endIndex) ? points.length : entry.endIndex)\n };\n });\n }\n\n return null;\n }\n\n _getPrevPoints(g: ILine): IPointLike[] | null {\n const { points, segments } = g.attribute;\n\n return (\n points ??\n (segments\n ? segments.reduce((res: IPointLike[], seg: ILineGraphicAttribute) => {\n if (seg.points) {\n seg.points.forEach((point: IPointLike) => {\n res.push(point);\n });\n }\n\n return res;\n }, [])\n : null)\n );\n }\n\n _runPointsEncoder(newStyles: Record<string, (datum: Datum) => any>, g: IMarkGraphic, attrs: any = {}) {\n const data = g.context.data;\n const lineAttrs: any[] = [];\n const points: IPointLike[] = [];\n const commonAttrs: any = {};\n const progressive = this.renderContext?.progressive;\n const isFirstFrame = progressive && progressive.currentIndex === 0;\n\n data.forEach((datum: Datum, index: number) => {\n points[index] = {} as IPointLike;\n lineAttrs[index] = {};\n\n Object.keys(newStyles).forEach(attrName => {\n if (this._isValidPointChannel(attrName)) {\n (points[index] as any)[attrName] = newStyles[attrName](datum);\n } else if (this._segmentStyleKeys.includes(attrName) && !progressive) {\n lineAttrs[index][attrName] = newStyles[attrName](datum);\n } else if (index === 0 && (!progressive || isFirstFrame)) {\n commonAttrs[attrName] = newStyles[attrName](datum);\n }\n });\n\n // todo 上下文,似乎是动画相关的\n (points[index] as any).context = this._keyGetter(datum) ?? index;\n });\n\n if (progressive) {\n const segments = (g as any).attribute?.segments ?? [];\n\n segments.push({\n points\n });\n return isFirstFrame\n ? {\n ...commonAttrs,\n segments\n }\n : { segments };\n } else if (this._segmentStyleKeys && this._segmentStyleKeys.length) {\n const segments = this._getLineSegments(lineAttrs, points);\n\n if (segments) {\n return {\n ...commonAttrs,\n ...lineAttrs[0],\n segments,\n points: null as IPointLike[]\n };\n }\n }\n\n return {\n ...commonAttrs,\n ...lineAttrs[0],\n points,\n segments: null as any[]\n };\n }\n\n _runEncoderOfGraphic(newStyles: Record<string, (datum: Datum) => any>, g: IMarkGraphic, attrs: any = {}) {\n const data = g.context.data;\n if (newStyles && Object.keys(newStyles).some(this._isValidPointChannel) && data && data.length) {\n return this._runPointsEncoder(newStyles, g, attrs);\n }\n\n return super._runEncoderOfGraphic(newStyles, g, attrs);\n }\n\n protected _getDataByKey(data: Datum[]) {\n return this._dataByGroup;\n }\n\n protected _runProgressiveJoin() {\n const currentIndex = this.renderContext.progressive.currentIndex;\n const graphics: IMarkGraphic[] = [];\n\n this._dataByGroup.keys.forEach((groupKey, index) => {\n const data = this.renderContext.progressive.groupedData.get(groupKey as string);\n const groupStep = this.renderContext.progressive.step;\n const dataSlice = data.slice(currentIndex * groupStep, (currentIndex + 1) * groupStep);\n\n if (currentIndex === 0) {\n const g = {\n context: {\n ...this._getCommonContext(),\n diffState: DiffState.enter,\n data: dataSlice,\n uniqueKey: groupKey,\n key: groupKey,\n groupKey: groupKey\n }\n };\n\n graphics.push(g as IMarkGraphic);\n } else {\n const g = this._graphics[index];\n g.context.data = dataSlice;\n }\n });\n const res = currentIndex === 0 ? graphics : this._graphics;\n\n return {\n graphicsByGroup: { [DEFAULT_DATA_KEY]: res },\n graphics: res,\n needUpdate: false\n };\n }\n\n protected _setCommonAttributesToTheme(g: IMarkGraphic) {\n // do nothing in line/area\n }\n protected _addProgressiveGraphic(parent: IGroup, g: IMarkGraphic) {\n g.incremental = 1;\n (parent as IGroup).appendChild(g);\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/mark/base/base-line.ts"],"names":[],"mappings":"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","file":"base-line.js","sourcesContent":["import { isValidScaleType } from '@visactor/vscale';\nimport type { StateValueType } from '../../compile/mark';\nimport type { ConvertToMarkStyleSpec, ILineLikeMarkSpec } from '../../typings/visual';\nimport type { IPointLike } from '@visactor/vutils';\nimport { isFunction, isNil } from '@visactor/vutils';\nimport { BaseMark } from './base-mark';\nimport { DiffState, type IMarkGraphic, type IMarkStyle } from '../interface';\nimport type { Datum } from '../../typings/common';\nimport type { IGroup, ILine, ILineGraphicAttribute } from '@visactor/vrender-core';\nimport { isSegmentAttrEqual } from '../utils/line';\nimport type { IMarkSpec } from '../../typings/spec/common';\nimport { DEFAULT_DATA_KEY } from '../../constant/data';\n\nexport const LINE_SEGMENT_ATTRIBUTES = [\n 'stroke',\n 'strokeOpacity',\n 'lineDash',\n 'lineDashOffset',\n 'lineCap',\n 'lineJoin',\n 'lineWidth',\n 'miterLimit'\n];\n\nexport abstract class BaseLineMark<T extends ILineLikeMarkSpec = ILineLikeMarkSpec> extends BaseMark<T> {\n protected abstract _getIgnoreAttributes(): string[];\n\n protected _getSegmentAttributes() {\n return LINE_SEGMENT_ATTRIBUTES;\n }\n\n protected _segmentStyleKeys: string[] = [];\n\n initStyleWithSpec(spec: IMarkSpec<T>) {\n this._segmentStyleKeys = [];\n\n super.initStyleWithSpec(spec);\n }\n /**\n * @override\n * 之所以覆写是因为 vgrammar 侧默认都会处理 lineSegments,非常耗性能,所以需要 VChart 给一个标志位用于是否执行。\n * 由外部series调用,设置markStyle的接口。\n * @param style\n * @param level\n * @param state\n */\n setStyle<T>(\n style: Partial<ConvertToMarkStyleSpec<T>> | Partial<IMarkStyle<T>>,\n state: StateValueType = 'normal',\n level: number = 0\n ): void {\n if (isNil(style)) {\n return;\n }\n\n if (this.stateStyle[state] === undefined) {\n this.stateStyle[state] = {};\n }\n\n const ignoreAttributes = this._getIgnoreAttributes();\n const segmentAttributes = this._getSegmentAttributes();\n const isUserLevel = this.isUserLevel(level);\n\n Object.keys(style).forEach(attr => {\n const attrStyle = (style as any)[attr];\n if (isNil(attrStyle) || ignoreAttributes.includes(attr)) {\n return;\n }\n if (\n isUserLevel &&\n segmentAttributes.includes(attr) &&\n (isValidScaleType(attrStyle?.type) || attrStyle?.scale || isFunction(attrStyle))\n ) {\n if (!this._segmentStyleKeys.includes(attr)) {\n this._segmentStyleKeys.push(attr);\n }\n }\n\n const styleConverter = this._filterAttribute(attr as any, attrStyle, state, level, isUserLevel);\n\n this.setAttribute(attr as any, styleConverter, state, level);\n });\n }\n\n _isValidPointChannel = (channel: string) => {\n return ['x', 'y', 'defined'].includes(channel);\n };\n\n _getLineSegments(items: any[], points: IPointLike[]) {\n if (!this._segmentStyleKeys || !this._segmentStyleKeys.length) {\n return null;\n }\n\n const segments: { attrs: any; startIndex: number; endIndex?: number }[] = [];\n let prevSegmentAttrs: any = null;\n\n items.forEach((item, index) => {\n if (\n !prevSegmentAttrs ||\n !this._segmentStyleKeys.every(key => {\n return isSegmentAttrEqual(prevSegmentAttrs[key], item[key], key);\n })\n ) {\n if (segments.length) {\n segments[segments.length - 1].endIndex = index;\n }\n\n prevSegmentAttrs = item;\n segments.push({\n attrs: prevSegmentAttrs,\n startIndex: index\n });\n }\n });\n\n if (segments.length >= 2) {\n return segments.map(entry => {\n return {\n ...entry.attrs,\n points: points.slice(entry.startIndex, isNil(entry.endIndex) ? points.length : entry.endIndex)\n };\n });\n }\n\n return null;\n }\n\n _getPrevPoints(g: ILine): IPointLike[] | null {\n const { points, segments } = g.attribute;\n\n return (\n points ??\n (segments\n ? segments.reduce((res: IPointLike[], seg: ILineGraphicAttribute) => {\n if (seg.points) {\n seg.points.forEach((point: IPointLike) => {\n res.push(point);\n });\n }\n\n return res;\n }, [])\n : null)\n );\n }\n\n _runPointsEncoder(newStyles: Record<string, (datum: Datum) => any>, g: IMarkGraphic, attrs: any = {}) {\n const data = g.context.data;\n const lineAttrs: any[] = [];\n const points: IPointLike[] = [];\n const commonAttrs: any = {};\n const progressive = this.renderContext?.progressive;\n const isFirstFrame = progressive && progressive.currentIndex === 0;\n\n data.forEach((datum: Datum, index: number) => {\n points[index] = {} as IPointLike;\n lineAttrs[index] = {};\n\n Object.keys(newStyles).forEach(attrName => {\n if (this._isValidPointChannel(attrName)) {\n (points[index] as any)[attrName] = newStyles[attrName](datum);\n } else if (this._segmentStyleKeys.includes(attrName) && !progressive) {\n lineAttrs[index][attrName] = newStyles[attrName](datum);\n } else if (index === 0 && (!progressive || isFirstFrame)) {\n commonAttrs[attrName] = newStyles[attrName](datum);\n }\n });\n\n // todo 上下文,似乎是动画相关的\n (points[index] as any).context = this._keyGetter(datum) ?? index;\n });\n\n if (progressive) {\n const segments = (g as any).attribute?.segments ? [...(g as any).attribute.segments] : [];\n\n segments.push({\n points\n });\n return isFirstFrame\n ? {\n ...commonAttrs,\n segments\n }\n : { segments };\n } else if (this._segmentStyleKeys && this._segmentStyleKeys.length) {\n const segments = this._getLineSegments(lineAttrs, points);\n\n if (segments) {\n return {\n ...commonAttrs,\n ...lineAttrs[0],\n segments,\n points: null as IPointLike[]\n };\n }\n }\n\n return {\n ...commonAttrs,\n ...lineAttrs[0],\n points,\n segments: null as any[]\n };\n }\n\n _runEncoderOfGraphic(newStyles: Record<string, (datum: Datum) => any>, g: IMarkGraphic, attrs: any = {}) {\n const data = g.context.data;\n if (newStyles && Object.keys(newStyles).some(this._isValidPointChannel) && data && data.length) {\n return this._runPointsEncoder(newStyles, g, attrs);\n }\n\n return super._runEncoderOfGraphic(newStyles, g, attrs);\n }\n\n protected _getDataByKey(data: Datum[]) {\n return this._dataByGroup;\n }\n\n protected _runProgressiveJoin() {\n const currentIndex = this.renderContext.progressive.currentIndex;\n const graphics: IMarkGraphic[] = [];\n\n this._dataByGroup.keys.forEach((groupKey, index) => {\n const data = this.renderContext.progressive.groupedData.get(groupKey as string);\n const groupStep = this.renderContext.progressive.step;\n const dataSlice = data.slice(currentIndex * groupStep, (currentIndex + 1) * groupStep);\n\n if (currentIndex === 0) {\n const g = {\n context: {\n ...this._getCommonContext(),\n diffState: DiffState.enter,\n data: dataSlice,\n uniqueKey: groupKey,\n key: groupKey,\n groupKey: groupKey\n }\n };\n\n graphics.push(g as IMarkGraphic);\n } else {\n const g = this._graphics[index];\n g.context.data = dataSlice;\n }\n });\n const res = currentIndex === 0 ? graphics : this._graphics;\n\n return {\n graphicsByGroup: { [DEFAULT_DATA_KEY]: res },\n graphics: res,\n needUpdate: false\n };\n }\n\n protected _setCommonAttributesToTheme(g: IMarkGraphic) {\n // do nothing in line/area\n }\n protected _addProgressiveGraphic(parent: IGroup, g: IMarkGraphic) {\n g.incremental = 1;\n (parent as IGroup).appendChild(g);\n }\n}\n"]}
@@ -86,7 +86,6 @@ export declare class BaseMark<T extends ICommonSpec> extends GrammarItem impleme
86
86
  protected _sharedStateDefinitionsCache?: StateDefinitionsInput<Record<string, unknown>>;
87
87
  protected _sharedStateDefinitionRefIds: WeakMap<object, number>;
88
88
  protected _sharedStateDefinitionRefId: number;
89
- protected _dynamicSharedStateNames: Set<string>;
90
89
  _extensionChannel: {
91
90
  [key: string | number | symbol]: string[];
92
91
  };
@@ -190,8 +190,8 @@ class BaseMark extends grammar_item_1.GrammarItem {
190
190
  morph: !1
191
191
  }, this._visible = !0, this.stateStyle = {}, this._unCompileChannel = {}, this._disabledAnimationStates = [],
192
192
  this._skipBeforeLayouted = !1, this._sharedStateDefinitionRefIds = new WeakMap,
193
- this._sharedStateDefinitionRefId = 0, this._dynamicSharedStateNames = new Set, this._extensionChannel = {},
194
- this._computeExChannel = {}, this._graphicMap = new Map, this._graphics = [], this._getEncoderOfStyle = (stateName, style) => {
193
+ this._sharedStateDefinitionRefId = 0, this._extensionChannel = {}, this._computeExChannel = {},
194
+ this._graphicMap = new Map, this._graphics = [], this._getEncoderOfStyle = (stateName, style) => {
195
195
  if (style && stateName) {
196
196
  const validEncoder = {};
197
197
  return Object.keys(style).forEach((key => {
@@ -205,7 +205,6 @@ class BaseMark extends grammar_item_1.GrammarItem {
205
205
  graphicName && ((0, vutils_1.isFunction)(graphicName) ? g.name = graphicName(g) : g.name = graphicName);
206
206
  }, this._setStateOfGraphic = (g, hasAnimation) => {
207
207
  var _a, _b, _c;
208
- g.stateProxy = null;
209
208
  const targetStates = g.context.diffState === enum_1.DiffState.enter || g.context.diffState === enum_1.DiffState.update ? g.context.states : void 0, hasCurrentState = !!((null === (_a = g.currentStates) || void 0 === _a ? void 0 : _a.length) || (null === (_b = g.effectiveStates) || void 0 === _b ? void 0 : _b.length) || g.resolvedStatePatch || (null === (_c = g.registeredActiveScopes) || void 0 === _c ? void 0 : _c.size));
210
209
  ((null == targetStates ? void 0 : targetStates.length) || hasCurrentState) && (0,
211
210
  graphic_state_1.setGraphicStates)(g, targetStates, hasAnimation);
@@ -577,7 +576,7 @@ class BaseMark extends grammar_item_1.GrammarItem {
577
576
  return diffState === interface_3.AnimationStateEnum.exit ? interface_3.AnimationStateEnum.exit : diffState === interface_3.AnimationStateEnum.update ? interface_3.AnimationStateEnum.update : interface_3.AnimationStateEnum.appear;
578
577
  }), customizedState = callback(g);
579
578
  g.context.animationState = null != customizedState ? customizedState : g.context.diffState,
580
- g.context.animationState === enum_1.DiffState.exit && (g.context.reusing = !0, g.animates && g.animates.forEach((a => a.stop())));
579
+ g.context.animationState === enum_1.DiffState.exit && (g.context.reusing = !0, g.stopAnimates());
581
580
  }
582
581
  _runJoin(data) {
583
582
  const newGroupedData = this._getDataByKey(data), prevGroupedData = this._prevDataByKey, allGraphics = [], enterGraphics = new Set(this._graphics.filter((g => g.context.diffState === enum_1.DiffState.enter))), callback = (key, newData, prevData) => {
@@ -673,12 +672,12 @@ class BaseMark extends grammar_item_1.GrammarItem {
673
672
  var _a;
674
673
  if (!this._product) return;
675
674
  const stateNames = Object.keys(null !== (_a = this._encoderOfState) && void 0 !== _a ? _a : {}).filter((stateName => "group" !== stateName && "update" !== stateName));
676
- if (!stateNames.length) return this._dynamicSharedStateNames.clear(), void (void 0 !== this._product.sharedStateDefinitions && (this._product.sharedStateDefinitions = void 0));
675
+ if (!stateNames.length) return void (void 0 !== this._product.sharedStateDefinitions && (this._product.sharedStateDefinitions = void 0));
677
676
  const sortedStateNames = this._stateSort ? stateNames.slice().sort(this._stateSort) : stateNames, statePriority = new Map;
678
677
  sortedStateNames.forEach(((stateName, index) => {
679
678
  statePriority.set(stateName, index);
680
679
  }));
681
- const sharedStateDefinitions = {}, cacheKeys = [], dynamicSharedStateNames = new Set;
680
+ const sharedStateDefinitions = {}, cacheKeys = [];
682
681
  if (stateNames.forEach((stateName => {
683
682
  var _a;
684
683
  const encoder = this._encoderOfState[stateName], patch = {}, dynamicEncoder = {}, patchKeys = [], dynamicKeys = [];
@@ -689,16 +688,16 @@ class BaseMark extends grammar_item_1.GrammarItem {
689
688
  const definition = {
690
689
  priority: null !== (_a = statePriority.get(stateName)) && void 0 !== _a ? _a : 0
691
690
  };
692
- patchKeys.length && (definition.patch = patch), dynamicKeys.length && (dynamicSharedStateNames.add(stateName),
693
- definition.declaredAffectedKeys = dynamicKeys, definition.resolver = ({graphic: graphic}) => this._runEncoderOfGraphic(dynamicEncoder, graphic)),
691
+ patchKeys.length && (definition.patch = patch), dynamicKeys.length && (definition.declaredAffectedKeys = dynamicKeys,
692
+ definition.resolver = ({graphic: graphic}) => this._runEncoderOfGraphic(dynamicEncoder, graphic)),
694
693
  sharedStateDefinitions[stateName] = definition, cacheKeys.push([ stateName, definition.priority, patchKeys.sort().map((key => `${key}:${this._getSharedStateDefinitionValueKey(patch[key])}`)), dynamicKeys.sort().map((key => {
695
694
  var _a;
696
695
  const stateStyle = null === (_a = this.stateStyle[stateName]) || void 0 === _a ? void 0 : _a[key];
697
696
  return `${key}:${this._getSharedStateDefinitionRefId(null == stateStyle ? void 0 : stateStyle.style)}:${this._getSharedStateDefinitionRefId(null == stateStyle ? void 0 : stateStyle.postProcess)}:${this._getSharedStateDefinitionRefId(null == stateStyle ? void 0 : stateStyle.referer)}`;
698
697
  })) ].join("|"));
699
- })), !cacheKeys.length) return this._dynamicSharedStateNames.clear(), void (void 0 !== this._product.sharedStateDefinitions && (this._product.sharedStateDefinitions = void 0));
698
+ })), !cacheKeys.length) return void (void 0 !== this._product.sharedStateDefinitions && (this._product.sharedStateDefinitions = void 0));
700
699
  const cacheKey = cacheKeys.sort().join("||");
701
- this._dynamicSharedStateNames = dynamicSharedStateNames, cacheKey === this._sharedStateDefinitionsCacheKey && this._sharedStateDefinitionsCache ? this._product.sharedStateDefinitions !== this._sharedStateDefinitionsCache && (this._product.sharedStateDefinitions = this._sharedStateDefinitionsCache) : (this._sharedStateDefinitionsCacheKey = cacheKey,
700
+ cacheKey === this._sharedStateDefinitionsCacheKey && this._sharedStateDefinitionsCache ? this._product.sharedStateDefinitions !== this._sharedStateDefinitionsCache && (this._product.sharedStateDefinitions = this._sharedStateDefinitionsCache) : (this._sharedStateDefinitionsCacheKey = cacheKey,
702
701
  this._sharedStateDefinitionsCache = sharedStateDefinitions, this._product.sharedStateDefinitions = sharedStateDefinitions);
703
702
  }
704
703
  _addProgressiveGraphic(parent, g) {
@@ -716,18 +715,11 @@ class BaseMark extends grammar_item_1.GrammarItem {
716
715
  }));
717
716
  }
718
717
  _excludeStateControlledDiffAttrs(g, diffAttrs) {
719
- var _a;
720
- if (!diffAttrs || !Object.keys(diffAttrs).length) return diffAttrs;
718
+ if (!diffAttrs || !Object.keys(diffAttrs).length || !g.resolvedStatePatch) return diffAttrs;
721
719
  let nextDiffAttrs;
722
- const excludeKey = key => {
720
+ return Object.keys(g.resolvedStatePatch).forEach((key => {
723
721
  key in diffAttrs && (nextDiffAttrs || (nextDiffAttrs = Object.assign({}, diffAttrs)),
724
722
  delete nextDiffAttrs[key]);
725
- };
726
- return g.resolvedStatePatch && Object.keys(g.resolvedStatePatch).forEach(excludeKey),
727
- null === (_a = g.context.states) || void 0 === _a || _a.forEach((stateName => {
728
- var _a;
729
- const encoder = null === (_a = this._encoderOfState) || void 0 === _a ? void 0 : _a[stateName];
730
- encoder && Object.keys(encoder).forEach(excludeKey);
731
723
  })), null != nextDiffAttrs ? nextDiffAttrs : diffAttrs;
732
724
  }
733
725
  _hasDiffAttrs(g) {
@@ -736,19 +728,19 @@ class BaseMark extends grammar_item_1.GrammarItem {
736
728
  _runApplyGraphic(graphics) {
737
729
  const hasAnimation = this.hasAnimation();
738
730
  graphics.forEach(((g, index) => {
739
- var _a, _b, _c;
731
+ var _a, _b;
740
732
  const finalAttrs = g.context.finalAttrs, hasStateAnimation = this.hasAnimationByState(g.context.animationState);
741
733
  if (g.setAttributes) {
742
734
  const diffAttrs = this._excludeStateControlledDiffAttrs(g, (0, mark_2.getDiffAttributesOfGraphic)(g, finalAttrs));
743
735
  g.context.diffAttrs = diffAttrs, g.context.reusing ? (g.context.lastAttrs = g.attribute,
744
736
  g.initAttributes(finalAttrs), g.context.reusing = !1) : hasStateAnimation || (hasAnimation ? g.setAttributesAndPreventAnimate(diffAttrs) : g.setAttributes(diffAttrs)),
745
- !(null === (_c = this.renderContext) || void 0 === _c ? void 0 : _c.progressive) && this._product && g.parent !== this._product && this._product.appendChild(g);
737
+ !(null === (_b = this.renderContext) || void 0 === _b ? void 0 : _b.progressive) && this._product && g.parent !== this._product && this._product.appendChild(g);
746
738
  } else {
747
739
  const mockGraphic = g;
748
- g = this._createGraphic(finalAttrs), hasAnimation && (null === (_a = g.setFinalAttributes) || void 0 === _a || _a.call(g, finalAttrs)),
749
- g.context = mockGraphic.context, g.context.diffAttrs = finalAttrs, g.stateSort = this._stateSort;
740
+ (g = this._createGraphic(finalAttrs)).context = mockGraphic.context, g.context.diffAttrs = finalAttrs,
741
+ g.stateSort = this._stateSort;
750
742
  const gIndex = this._graphics === graphics ? index : index + this._graphics.length - graphics.length;
751
- if (gIndex >= 0 && (this._graphics[gIndex] = g), null === (_b = this.renderContext) || void 0 === _b ? void 0 : _b.progressive) {
743
+ if (gIndex >= 0 && (this._graphics[gIndex] = g), null === (_a = this.renderContext) || void 0 === _a ? void 0 : _a.progressive) {
752
744
  const groupIndex = this._dataByGroup ? this._dataByGroup.keys.indexOf(g.context.groupKey) : 0, group = groupIndex >= 0 ? this._product.getChildAt(groupIndex) : null;
753
745
  group && this._addProgressiveGraphic(group, g);
754
746
  } else this._product.appendChild(g), this._graphicMap.set(g.context.uniqueKey, g);