@visactor/vchart-extension 1.13.19-alpha.1 → 1.13.19

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 (291) hide show
  1. package/package.json +4 -4
  2. package/build/index.js +0 -13990
  3. package/build/index.min.js +0 -15
  4. package/cjs/charts/conversion-funnel/arrow-data-transform.d.ts +0 -24
  5. package/cjs/charts/conversion-funnel/arrow-data-transform.js +0 -99
  6. package/cjs/charts/conversion-funnel/arrow-data-transform.js.map +0 -1
  7. package/cjs/charts/conversion-funnel/conversion-funnel-transformer.d.ts +0 -7
  8. package/cjs/charts/conversion-funnel/conversion-funnel-transformer.js +0 -196
  9. package/cjs/charts/conversion-funnel/conversion-funnel-transformer.js.map +0 -1
  10. package/cjs/charts/conversion-funnel/conversion-funnel.d.ts +0 -40
  11. package/cjs/charts/conversion-funnel/conversion-funnel.js +0 -78
  12. package/cjs/charts/conversion-funnel/conversion-funnel.js.map +0 -1
  13. package/cjs/charts/conversion-funnel/index.d.ts +0 -2
  14. package/cjs/charts/conversion-funnel/index.js +0 -21
  15. package/cjs/charts/conversion-funnel/index.js.map +0 -1
  16. package/cjs/charts/conversion-funnel/interface.d.ts +0 -35
  17. package/cjs/charts/conversion-funnel/interface.js +0 -6
  18. package/cjs/charts/conversion-funnel/interface.js.map +0 -1
  19. package/cjs/charts/conversion-funnel/util.d.ts +0 -3
  20. package/cjs/charts/conversion-funnel/util.js +0 -17
  21. package/cjs/charts/conversion-funnel/util.js.map +0 -1
  22. package/cjs/charts/ranking-bar/interface.d.ts +0 -45
  23. package/cjs/charts/ranking-bar/interface.js +0 -5
  24. package/cjs/charts/ranking-bar/interface.js.map +0 -1
  25. package/cjs/charts/ranking-bar/ranking-bar-transformer.d.ts +0 -10
  26. package/cjs/charts/ranking-bar/ranking-bar-transformer.js +0 -291
  27. package/cjs/charts/ranking-bar/ranking-bar-transformer.js.map +0 -1
  28. package/cjs/charts/ranking-bar/ranking-bar.d.ts +0 -16
  29. package/cjs/charts/ranking-bar/ranking-bar.js +0 -34
  30. package/cjs/charts/ranking-bar/ranking-bar.js.map +0 -1
  31. package/cjs/charts/ranking-list/constant.d.ts +0 -2
  32. package/cjs/charts/ranking-list/constant.js +0 -75
  33. package/cjs/charts/ranking-list/constant.js.map +0 -1
  34. package/cjs/charts/ranking-list/interface.d.ts +0 -74
  35. package/cjs/charts/ranking-list/interface.js +0 -6
  36. package/cjs/charts/ranking-list/interface.js.map +0 -1
  37. package/cjs/charts/ranking-list/ranking-list-transformer.d.ts +0 -459
  38. package/cjs/charts/ranking-list/ranking-list-transformer.js +0 -383
  39. package/cjs/charts/ranking-list/ranking-list-transformer.js.map +0 -1
  40. package/cjs/charts/ranking-list/ranking-list.d.ts +0 -16
  41. package/cjs/charts/ranking-list/ranking-list.js +0 -34
  42. package/cjs/charts/ranking-list/ranking-list.js.map +0 -1
  43. package/cjs/charts/ranking-list/utils.d.ts +0 -7
  44. package/cjs/charts/ranking-list/utils.js +0 -51
  45. package/cjs/charts/ranking-list/utils.js.map +0 -1
  46. package/cjs/charts/sequence-scatter-kde/constant.d.ts +0 -3
  47. package/cjs/charts/sequence-scatter-kde/constant.js +0 -7
  48. package/cjs/charts/sequence-scatter-kde/constant.js.map +0 -1
  49. package/cjs/charts/sequence-scatter-kde/interface.d.ts +0 -29
  50. package/cjs/charts/sequence-scatter-kde/interface.js +0 -6
  51. package/cjs/charts/sequence-scatter-kde/interface.js.map +0 -1
  52. package/cjs/charts/sequence-scatter-kde/sequence-scatter-kde-transformer.d.ts +0 -6
  53. package/cjs/charts/sequence-scatter-kde/sequence-scatter-kde-transformer.js +0 -142
  54. package/cjs/charts/sequence-scatter-kde/sequence-scatter-kde-transformer.js.map +0 -1
  55. package/cjs/charts/sequence-scatter-kde/sequence-scatter-kde.d.ts +0 -16
  56. package/cjs/charts/sequence-scatter-kde/sequence-scatter-kde.js +0 -34
  57. package/cjs/charts/sequence-scatter-kde/sequence-scatter-kde.js.map +0 -1
  58. package/cjs/charts/sequence-scatter-kde/utils.d.ts +0 -9
  59. package/cjs/charts/sequence-scatter-kde/utils.js +0 -42
  60. package/cjs/charts/sequence-scatter-kde/utils.js.map +0 -1
  61. package/cjs/charts/sequence-scatter-link/interface.d.ts +0 -59
  62. package/cjs/charts/sequence-scatter-link/interface.js +0 -6
  63. package/cjs/charts/sequence-scatter-link/interface.js.map +0 -1
  64. package/cjs/charts/sequence-scatter-link/sequence-scatter-link-transformer.d.ts +0 -6
  65. package/cjs/charts/sequence-scatter-link/sequence-scatter-link-transformer.js +0 -328
  66. package/cjs/charts/sequence-scatter-link/sequence-scatter-link-transformer.js.map +0 -1
  67. package/cjs/charts/sequence-scatter-link/sequence-scatter-link.d.ts +0 -16
  68. package/cjs/charts/sequence-scatter-link/sequence-scatter-link.js +0 -34
  69. package/cjs/charts/sequence-scatter-link/sequence-scatter-link.js.map +0 -1
  70. package/cjs/charts/sequence-scatter-link/utils.d.ts +0 -9
  71. package/cjs/charts/sequence-scatter-link/utils.js +0 -108
  72. package/cjs/charts/sequence-scatter-link/utils.js.map +0 -1
  73. package/cjs/charts/sequence-scatter-pixel/constant.d.ts +0 -3
  74. package/cjs/charts/sequence-scatter-pixel/constant.js +0 -7
  75. package/cjs/charts/sequence-scatter-pixel/constant.js.map +0 -1
  76. package/cjs/charts/sequence-scatter-pixel/interface.d.ts +0 -29
  77. package/cjs/charts/sequence-scatter-pixel/interface.js +0 -6
  78. package/cjs/charts/sequence-scatter-pixel/interface.js.map +0 -1
  79. package/cjs/charts/sequence-scatter-pixel/sequence-scatter-pixel-transformer.d.ts +0 -4
  80. package/cjs/charts/sequence-scatter-pixel/sequence-scatter-pixel-transformer.js +0 -68
  81. package/cjs/charts/sequence-scatter-pixel/sequence-scatter-pixel-transformer.js.map +0 -1
  82. package/cjs/charts/sequence-scatter-pixel/sequence-scatter-pixel.d.ts +0 -16
  83. package/cjs/charts/sequence-scatter-pixel/sequence-scatter-pixel.js +0 -34
  84. package/cjs/charts/sequence-scatter-pixel/sequence-scatter-pixel.js.map +0 -1
  85. package/cjs/charts/sequence-scatter-pixel/utils.d.ts +0 -3
  86. package/cjs/charts/sequence-scatter-pixel/utils.js +0 -53
  87. package/cjs/charts/sequence-scatter-pixel/utils.js.map +0 -1
  88. package/cjs/components/bar-link/bar-link.d.ts +0 -7
  89. package/cjs/components/bar-link/bar-link.js +0 -87
  90. package/cjs/components/bar-link/bar-link.js.map +0 -1
  91. package/cjs/components/bar-link/constant.d.ts +0 -1
  92. package/cjs/components/bar-link/constant.js +0 -6
  93. package/cjs/components/bar-link/constant.js.map +0 -1
  94. package/cjs/components/bar-link/index.d.ts +0 -4
  95. package/cjs/components/bar-link/index.js +0 -49
  96. package/cjs/components/bar-link/index.js.map +0 -1
  97. package/cjs/components/bar-link/type.d.ts +0 -27
  98. package/cjs/components/bar-link/type.js +0 -6
  99. package/cjs/components/bar-link/type.js.map +0 -1
  100. package/cjs/components/bar-link/util.d.ts +0 -22
  101. package/cjs/components/bar-link/util.js +0 -183
  102. package/cjs/components/bar-link/util.js.map +0 -1
  103. package/cjs/components/series-break/constant.d.ts +0 -1
  104. package/cjs/components/series-break/constant.js +0 -6
  105. package/cjs/components/series-break/constant.js.map +0 -1
  106. package/cjs/components/series-break/index.d.ts +0 -4
  107. package/cjs/components/series-break/index.js +0 -49
  108. package/cjs/components/series-break/index.js.map +0 -1
  109. package/cjs/components/series-break/series-break.d.ts +0 -7
  110. package/cjs/components/series-break/series-break.js +0 -118
  111. package/cjs/components/series-break/series-break.js.map +0 -1
  112. package/cjs/components/series-break/type.d.ts +0 -14
  113. package/cjs/components/series-break/type.js +0 -6
  114. package/cjs/components/series-break/type.js.map +0 -1
  115. package/cjs/components/series-break/util.d.ts +0 -13
  116. package/cjs/components/series-break/util.js +0 -248
  117. package/cjs/components/series-break/util.js.map +0 -1
  118. package/cjs/components/series-label/constant.d.ts +0 -1
  119. package/cjs/components/series-label/constant.js +0 -6
  120. package/cjs/components/series-label/constant.js.map +0 -1
  121. package/cjs/components/series-label/index.d.ts +0 -3
  122. package/cjs/components/series-label/index.js +0 -49
  123. package/cjs/components/series-label/index.js.map +0 -1
  124. package/cjs/components/series-label/series-label.d.ts +0 -7
  125. package/cjs/components/series-label/series-label.js +0 -114
  126. package/cjs/components/series-label/series-label.js.map +0 -1
  127. package/cjs/components/series-label/type.d.ts +0 -41
  128. package/cjs/components/series-label/type.js +0 -6
  129. package/cjs/components/series-label/type.js.map +0 -1
  130. package/cjs/components/series-label/util.d.ts +0 -33
  131. package/cjs/components/series-label/util.js +0 -152
  132. package/cjs/components/series-label/util.js.map +0 -1
  133. package/cjs/index.d.ts +0 -9
  134. package/cjs/index.js +0 -25
  135. package/cjs/index.js.map +0 -1
  136. package/cjs/type/index.d.ts +0 -1
  137. package/cjs/type/index.js +0 -21
  138. package/cjs/type/index.js.map +0 -1
  139. package/cjs/type/type.d.ts +0 -8
  140. package/cjs/type/type.js +0 -6
  141. package/cjs/type/type.js.map +0 -1
  142. package/cjs/utils/element.d.ts +0 -7
  143. package/cjs/utils/element.js +0 -21
  144. package/cjs/utils/element.js.map +0 -1
  145. package/cjs/utils/math.d.ts +0 -1
  146. package/cjs/utils/math.js +0 -10
  147. package/cjs/utils/math.js.map +0 -1
  148. package/esm/charts/conversion-funnel/arrow-data-transform.d.ts +0 -24
  149. package/esm/charts/conversion-funnel/arrow-data-transform.js +0 -94
  150. package/esm/charts/conversion-funnel/arrow-data-transform.js.map +0 -1
  151. package/esm/charts/conversion-funnel/conversion-funnel-transformer.d.ts +0 -7
  152. package/esm/charts/conversion-funnel/conversion-funnel-transformer.js +0 -192
  153. package/esm/charts/conversion-funnel/conversion-funnel-transformer.js.map +0 -1
  154. package/esm/charts/conversion-funnel/conversion-funnel.d.ts +0 -40
  155. package/esm/charts/conversion-funnel/conversion-funnel.js +0 -81
  156. package/esm/charts/conversion-funnel/conversion-funnel.js.map +0 -1
  157. package/esm/charts/conversion-funnel/index.d.ts +0 -2
  158. package/esm/charts/conversion-funnel/index.js +0 -4
  159. package/esm/charts/conversion-funnel/index.js.map +0 -1
  160. package/esm/charts/conversion-funnel/interface.d.ts +0 -35
  161. package/esm/charts/conversion-funnel/interface.js +0 -2
  162. package/esm/charts/conversion-funnel/interface.js.map +0 -1
  163. package/esm/charts/conversion-funnel/util.d.ts +0 -3
  164. package/esm/charts/conversion-funnel/util.js +0 -10
  165. package/esm/charts/conversion-funnel/util.js.map +0 -1
  166. package/esm/charts/ranking-bar/interface.d.ts +0 -45
  167. package/esm/charts/ranking-bar/interface.js +0 -1
  168. package/esm/charts/ranking-bar/interface.js.map +0 -1
  169. package/esm/charts/ranking-bar/ranking-bar-transformer.d.ts +0 -10
  170. package/esm/charts/ranking-bar/ranking-bar-transformer.js +0 -285
  171. package/esm/charts/ranking-bar/ranking-bar-transformer.js.map +0 -1
  172. package/esm/charts/ranking-bar/ranking-bar.d.ts +0 -16
  173. package/esm/charts/ranking-bar/ranking-bar.js +0 -27
  174. package/esm/charts/ranking-bar/ranking-bar.js.map +0 -1
  175. package/esm/charts/ranking-list/constant.d.ts +0 -2
  176. package/esm/charts/ranking-list/constant.js +0 -69
  177. package/esm/charts/ranking-list/constant.js.map +0 -1
  178. package/esm/charts/ranking-list/interface.d.ts +0 -74
  179. package/esm/charts/ranking-list/interface.js +0 -2
  180. package/esm/charts/ranking-list/interface.js.map +0 -1
  181. package/esm/charts/ranking-list/ranking-list-transformer.d.ts +0 -459
  182. package/esm/charts/ranking-list/ranking-list-transformer.js +0 -383
  183. package/esm/charts/ranking-list/ranking-list-transformer.js.map +0 -1
  184. package/esm/charts/ranking-list/ranking-list.d.ts +0 -16
  185. package/esm/charts/ranking-list/ranking-list.js +0 -27
  186. package/esm/charts/ranking-list/ranking-list.js.map +0 -1
  187. package/esm/charts/ranking-list/utils.d.ts +0 -7
  188. package/esm/charts/ranking-list/utils.js +0 -41
  189. package/esm/charts/ranking-list/utils.js.map +0 -1
  190. package/esm/charts/sequence-scatter-kde/constant.d.ts +0 -3
  191. package/esm/charts/sequence-scatter-kde/constant.js +0 -6
  192. package/esm/charts/sequence-scatter-kde/constant.js.map +0 -1
  193. package/esm/charts/sequence-scatter-kde/interface.d.ts +0 -29
  194. package/esm/charts/sequence-scatter-kde/interface.js +0 -2
  195. package/esm/charts/sequence-scatter-kde/interface.js.map +0 -1
  196. package/esm/charts/sequence-scatter-kde/sequence-scatter-kde-transformer.d.ts +0 -6
  197. package/esm/charts/sequence-scatter-kde/sequence-scatter-kde-transformer.js +0 -137
  198. package/esm/charts/sequence-scatter-kde/sequence-scatter-kde-transformer.js.map +0 -1
  199. package/esm/charts/sequence-scatter-kde/sequence-scatter-kde.d.ts +0 -16
  200. package/esm/charts/sequence-scatter-kde/sequence-scatter-kde.js +0 -28
  201. package/esm/charts/sequence-scatter-kde/sequence-scatter-kde.js.map +0 -1
  202. package/esm/charts/sequence-scatter-kde/utils.d.ts +0 -9
  203. package/esm/charts/sequence-scatter-kde/utils.js +0 -34
  204. package/esm/charts/sequence-scatter-kde/utils.js.map +0 -1
  205. package/esm/charts/sequence-scatter-link/interface.d.ts +0 -59
  206. package/esm/charts/sequence-scatter-link/interface.js +0 -2
  207. package/esm/charts/sequence-scatter-link/interface.js.map +0 -1
  208. package/esm/charts/sequence-scatter-link/sequence-scatter-link-transformer.d.ts +0 -6
  209. package/esm/charts/sequence-scatter-link/sequence-scatter-link-transformer.js +0 -321
  210. package/esm/charts/sequence-scatter-link/sequence-scatter-link-transformer.js.map +0 -1
  211. package/esm/charts/sequence-scatter-link/sequence-scatter-link.d.ts +0 -16
  212. package/esm/charts/sequence-scatter-link/sequence-scatter-link.js +0 -28
  213. package/esm/charts/sequence-scatter-link/sequence-scatter-link.js.map +0 -1
  214. package/esm/charts/sequence-scatter-link/utils.d.ts +0 -9
  215. package/esm/charts/sequence-scatter-link/utils.js +0 -100
  216. package/esm/charts/sequence-scatter-link/utils.js.map +0 -1
  217. package/esm/charts/sequence-scatter-pixel/constant.d.ts +0 -3
  218. package/esm/charts/sequence-scatter-pixel/constant.js +0 -6
  219. package/esm/charts/sequence-scatter-pixel/constant.js.map +0 -1
  220. package/esm/charts/sequence-scatter-pixel/interface.d.ts +0 -29
  221. package/esm/charts/sequence-scatter-pixel/interface.js +0 -2
  222. package/esm/charts/sequence-scatter-pixel/interface.js.map +0 -1
  223. package/esm/charts/sequence-scatter-pixel/sequence-scatter-pixel-transformer.d.ts +0 -4
  224. package/esm/charts/sequence-scatter-pixel/sequence-scatter-pixel-transformer.js +0 -64
  225. package/esm/charts/sequence-scatter-pixel/sequence-scatter-pixel-transformer.js.map +0 -1
  226. package/esm/charts/sequence-scatter-pixel/sequence-scatter-pixel.d.ts +0 -16
  227. package/esm/charts/sequence-scatter-pixel/sequence-scatter-pixel.js +0 -28
  228. package/esm/charts/sequence-scatter-pixel/sequence-scatter-pixel.js.map +0 -1
  229. package/esm/charts/sequence-scatter-pixel/utils.d.ts +0 -3
  230. package/esm/charts/sequence-scatter-pixel/utils.js +0 -45
  231. package/esm/charts/sequence-scatter-pixel/utils.js.map +0 -1
  232. package/esm/components/bar-link/bar-link.d.ts +0 -7
  233. package/esm/components/bar-link/bar-link.js +0 -85
  234. package/esm/components/bar-link/bar-link.js.map +0 -1
  235. package/esm/components/bar-link/constant.d.ts +0 -1
  236. package/esm/components/bar-link/constant.js +0 -2
  237. package/esm/components/bar-link/constant.js.map +0 -1
  238. package/esm/components/bar-link/index.d.ts +0 -4
  239. package/esm/components/bar-link/index.js +0 -8
  240. package/esm/components/bar-link/index.js.map +0 -1
  241. package/esm/components/bar-link/type.d.ts +0 -27
  242. package/esm/components/bar-link/type.js +0 -2
  243. package/esm/components/bar-link/type.js.map +0 -1
  244. package/esm/components/bar-link/util.d.ts +0 -22
  245. package/esm/components/bar-link/util.js +0 -178
  246. package/esm/components/bar-link/util.js.map +0 -1
  247. package/esm/components/series-break/constant.d.ts +0 -1
  248. package/esm/components/series-break/constant.js +0 -2
  249. package/esm/components/series-break/constant.js.map +0 -1
  250. package/esm/components/series-break/index.d.ts +0 -4
  251. package/esm/components/series-break/index.js +0 -8
  252. package/esm/components/series-break/index.js.map +0 -1
  253. package/esm/components/series-break/series-break.d.ts +0 -7
  254. package/esm/components/series-break/series-break.js +0 -115
  255. package/esm/components/series-break/series-break.js.map +0 -1
  256. package/esm/components/series-break/type.d.ts +0 -14
  257. package/esm/components/series-break/type.js +0 -2
  258. package/esm/components/series-break/type.js.map +0 -1
  259. package/esm/components/series-break/util.d.ts +0 -13
  260. package/esm/components/series-break/util.js +0 -244
  261. package/esm/components/series-break/util.js.map +0 -1
  262. package/esm/components/series-label/constant.d.ts +0 -1
  263. package/esm/components/series-label/constant.js +0 -2
  264. package/esm/components/series-label/constant.js.map +0 -1
  265. package/esm/components/series-label/index.d.ts +0 -3
  266. package/esm/components/series-label/index.js +0 -6
  267. package/esm/components/series-label/index.js.map +0 -1
  268. package/esm/components/series-label/series-label.d.ts +0 -7
  269. package/esm/components/series-label/series-label.js +0 -110
  270. package/esm/components/series-label/series-label.js.map +0 -1
  271. package/esm/components/series-label/type.d.ts +0 -41
  272. package/esm/components/series-label/type.js +0 -2
  273. package/esm/components/series-label/type.js.map +0 -1
  274. package/esm/components/series-label/util.d.ts +0 -33
  275. package/esm/components/series-label/util.js +0 -144
  276. package/esm/components/series-label/util.js.map +0 -1
  277. package/esm/index.d.ts +0 -9
  278. package/esm/index.js +0 -17
  279. package/esm/index.js.map +0 -1
  280. package/esm/type/index.d.ts +0 -1
  281. package/esm/type/index.js +0 -2
  282. package/esm/type/index.js.map +0 -1
  283. package/esm/type/type.d.ts +0 -8
  284. package/esm/type/type.js +0 -2
  285. package/esm/type/type.js.map +0 -1
  286. package/esm/utils/element.d.ts +0 -7
  287. package/esm/utils/element.js +0 -15
  288. package/esm/utils/element.js.map +0 -1
  289. package/esm/utils/math.d.ts +0 -1
  290. package/esm/utils/math.js +0 -4
  291. package/esm/utils/math.js.map +0 -1
@@ -1,285 +0,0 @@
1
- import { BaseChartSpecTransformer } from "@visactor/vchart";
2
-
3
- import { isValid } from "@visactor/vutils";
4
-
5
- export class RankingBarChartSpecTransformer extends BaseChartSpecTransformer {
6
- transformSpec(spec) {
7
- const {timeData: timeData, timeNodes: timeNodes} = processData(spec), {interval: userInterval, xField: xField, yField: yField, color: color, icon: icon, iconPosition: iconPosition, iconShape: iconShape, timeLabel: timeLabel, label: label, nameLabel: nameLabel, xAxis: xAxis, yAxis: yAxis} = spec, interval = userInterval || 1e3, exchangeDuration = Math.min(interval, 500);
8
- if (spec.type = "common", spec.data = [ {
9
- id: "timeData",
10
- values: timeData.get(timeNodes[0])
11
- }, {
12
- id: "time",
13
- values: [ {
14
- time: timeNodes[0]
15
- } ]
16
- } ], spec.color = {
17
- specified: Object.assign({}, color)
18
- }, spec.region = [ {
19
- clip: !0
20
- } ], spec.series = [ {
21
- type: "bar",
22
- id: "ranking-bar",
23
- dataId: "timeData",
24
- direction: "horizontal",
25
- yField: yField,
26
- xField: xField,
27
- seriesField: yField,
28
- extensionMark: [],
29
- label: labelSpec(label, Object.assign(Object.assign({}, nameLabel), {
30
- yField: yField
31
- }))
32
- } ], spec.axes = axisSpec(xAxis, yAxis), spec.player = {
33
- type: "continuous",
34
- auto: !0,
35
- loop: !1,
36
- interval: interval,
37
- specs: timeNodes.map((time => ({
38
- data: [ {
39
- id: "timeData",
40
- values: timeData.get(time)
41
- }, {
42
- id: "time",
43
- values: [ {
44
- time: time
45
- } ]
46
- } ]
47
- })))
48
- }, spec.tooltip = {
49
- visible: !1
50
- }, spec.customMark = [], transformAnimationSpec(spec, {
51
- interval: interval,
52
- exchangeDuration: exchangeDuration
53
- }), timeLabel && !1 === timeLabel.visible || spec.customMark.push(timeLabelSpec(timeLabel.style)),
54
- icon) {
55
- const icon = iconSpec(iconPosition, iconShape, {
56
- interval: interval,
57
- exchangeDuration: exchangeDuration
58
- });
59
- spec.series[0].extensionMark.push(icon);
60
- }
61
- super.transformSpec(spec);
62
- }
63
- }
64
-
65
- export function processData(spec) {
66
- const {xField: xField, yField: yField, timeField: timeField, data: data, topN: topN = 10, icon: icon} = spec, timeNodes = new Set, timeData = new Map;
67
- return data.sort(((d1, d2) => Number(d2[xField]) - Number(d1[xField]))), data.forEach((d => {
68
- const time = d[timeField];
69
- isValid(time) && timeNodes.add(time), timeData.has(time) || timeData.set(time, []);
70
- const currentData = timeData.get(time);
71
- if (currentData.length < topN) {
72
- const _d = Object.assign({}, d);
73
- icon && icon[_d[yField]] && (_d.icon = icon[_d[yField]]), currentData.push(_d);
74
- }
75
- })), {
76
- timeData: timeData,
77
- timeNodes: Array.from(timeNodes).sort()
78
- };
79
- }
80
-
81
- function transformAnimationSpec(spec, {interval: interval, exchangeDuration: exchangeDuration}) {
82
- spec.animationAppear = !1, spec.animationUpdate = {
83
- bar: [ {
84
- type: "update",
85
- options: {
86
- excludeChannels: [ "y" ]
87
- },
88
- easing: "linear",
89
- duration: interval
90
- }, {
91
- channel: [ "y" ],
92
- easing: "circInOut",
93
- duration: exchangeDuration
94
- } ],
95
- axis: {
96
- duration: interval,
97
- easing: "linear"
98
- }
99
- }, spec.animationEnter = {
100
- bar: [ {
101
- type: "moveIn",
102
- duration: exchangeDuration,
103
- easing: "cubicInOut",
104
- options: {
105
- direction: "y",
106
- orient: "negative",
107
- point: (datum, element, param) => ({
108
- y: param.groupHeight + element.getBounds().height()
109
- })
110
- }
111
- } ]
112
- }, spec.animationExit = {
113
- bar: [ {
114
- type: "moveOut",
115
- duration: exchangeDuration,
116
- easing: "cubicInOut",
117
- options: {
118
- direction: "y",
119
- orient: "negative"
120
- }
121
- } ]
122
- };
123
- }
124
-
125
- function labelSpec(label = {}, nameLabel) {
126
- var _a, _b, _c, _e;
127
- const spec = [];
128
- return !1 !== label.visible && spec.push({
129
- visible: !0,
130
- overlap: !1,
131
- style: Object.assign({
132
- fill: "rgb(64, 64, 64)"
133
- }, label.style),
134
- smartInvert: {
135
- fillStrategy: (null === (_a = label.style) || void 0 === _a ? void 0 : _a.fill) ? "null" : void 0,
136
- strokeStrategy: (null === (_b = label.style) || void 0 === _b ? void 0 : _b.stroke) ? "null" : void 0
137
- }
138
- }), nameLabel.visible && spec.push({
139
- visible: !0,
140
- overlap: !1,
141
- style: Object.assign({}, nameLabel.style),
142
- smartInvert: {
143
- fillStrategy: (null === (_c = nameLabel.style) || void 0 === _c ? void 0 : _c.fill) ? "null" : void 0,
144
- strokeStrategy: (null === (_e = nameLabel.style) || void 0 === _e ? void 0 : _e.stroke) ? "null" : void 0
145
- },
146
- position: "bar-end" === nameLabel.position ? "inside-right" : "inside-left",
147
- formatter: `{${nameLabel.yField}}`
148
- }), spec;
149
- }
150
-
151
- function axisSpec(xAxis = {}, yAxis = {}) {
152
- const leftAxis = {
153
- orient: "left",
154
- type: "band",
155
- inverse: !0,
156
- label: {
157
- style: yAxis.label
158
- },
159
- domainLine: {
160
- style: yAxis.domainLine
161
- },
162
- grid: {
163
- style: yAxis.grid
164
- }
165
- }, bottomAxis = {
166
- orient: "bottom",
167
- type: "linear",
168
- nice: !1,
169
- animation: !0,
170
- label: {
171
- style: xAxis.label
172
- },
173
- domainLine: {
174
- style: xAxis.domainLine
175
- },
176
- grid: {
177
- style: xAxis.grid
178
- },
179
- innerOffset: {
180
- right: "10%"
181
- }
182
- };
183
- return xAxis.label && (bottomAxis.label = xAxis.label), [ leftAxis, bottomAxis ];
184
- }
185
-
186
- function timeLabelSpec(textStyle = {}) {
187
- return {
188
- type: "text",
189
- dataId: "time",
190
- style: Object.assign({
191
- textBaseline: "bottom",
192
- fontSize: 200,
193
- textAlign: "end",
194
- fontWeight: 600,
195
- text: datum => datum.time,
196
- x: (datum, ctx) => {
197
- var _a;
198
- return (null === (_a = ctx.vchart.getChart().getCanvasRect()) || void 0 === _a ? void 0 : _a.width) - 50;
199
- },
200
- y: (datum, ctx) => {
201
- var _a;
202
- return (null === (_a = ctx.vchart.getChart().getCanvasRect()) || void 0 === _a ? void 0 : _a.height) - 80;
203
- },
204
- fill: "grey",
205
- fillOpacity: .5
206
- }, textStyle)
207
- };
208
- }
209
-
210
- function iconSpec(iconPosition = "bar-end", iconShape = "circle", {interval: interval, exchangeDuration: exchangeDuration}) {
211
- return {
212
- type: "symbol",
213
- dataId: "timeData",
214
- style: {
215
- symbolType: iconShape,
216
- stroke: "white",
217
- lineWidth: 1,
218
- size: (data, ctx) => {
219
- var _a, _b;
220
- const vchart = ctx.vchart, series = null === (_a = vchart.getChart()) || void 0 === _a ? void 0 : _a.getSeriesInIndex(0)[0];
221
- if (vchart && series) {
222
- const bandwidth = null !== (_b = series.getYAxisHelper().getBandwidth(0)) && void 0 !== _b ? _b : 0;
223
- return Math.max(bandwidth - 4, 0);
224
- }
225
- return 10;
226
- },
227
- background: data => data.icon,
228
- x: (data, ctx) => {
229
- var _a, _b;
230
- const vchart = ctx.vchart, series = null === (_a = vchart.getChart()) || void 0 === _a ? void 0 : _a.getSeriesInIndex(0)[0];
231
- if (vchart && series) {
232
- const bandwidth = null !== (_b = series.getYAxisHelper().getBandwidth(0)) && void 0 !== _b ? _b : 0;
233
- return "bar-start" === iconPosition ? bandwidth / 2 : "axis" === iconPosition ? -bandwidth / 2 : series.dataToPositionX(data) - bandwidth / 2;
234
- }
235
- },
236
- y: (data, ctx) => {
237
- var _a, _b;
238
- const vchart = ctx.vchart, series = null === (_a = vchart.getChart()) || void 0 === _a ? void 0 : _a.getSeriesInIndex(0)[0];
239
- if (vchart && series) {
240
- const bandwidth = null !== (_b = series.getYAxisHelper().getBandwidth(0)) && void 0 !== _b ? _b : 0;
241
- return series.dataToPositionY(data) + bandwidth / 2;
242
- }
243
- },
244
- scaleY: "rect" === iconShape ? 1.2 : 1
245
- },
246
- animationUpdate: customMarkUpdateAnimation(interval, exchangeDuration),
247
- animationEnter: [ {
248
- type: "moveIn",
249
- duration: exchangeDuration,
250
- easing: "cubicInOut",
251
- options: {
252
- direction: "y",
253
- orient: "negative",
254
- point: (datum, element, param) => ({
255
- y: param.groupHeight + element.getBounds().height()
256
- })
257
- }
258
- } ],
259
- animationExit: [ {
260
- type: "moveOut",
261
- duration: exchangeDuration,
262
- easing: "cubicInOut",
263
- options: {
264
- direction: "y",
265
- orient: "negative"
266
- }
267
- } ]
268
- };
269
- }
270
-
271
- function customMarkUpdateAnimation(duration, exchangeDuration) {
272
- return [ {
273
- duration: exchangeDuration,
274
- easing: "cubicInOut",
275
- channel: [ "y" ]
276
- }, {
277
- options: {
278
- excludeChannels: [ "y" ]
279
- },
280
- channel: [ "x", "x2", "x1" ],
281
- easing: "linear",
282
- duration: duration
283
- } ];
284
- }
285
- //# sourceMappingURL=ranking-bar-transformer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["charts/ranking-bar/ranking-bar-transformer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,MAAM,OAAO,8BAA2D,SAAQ,wBAA6B;IAC3G,aAAa,CAAC,IAAO;QACnB,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,WAAW,CAAC,IAAkC,CAAC,CAAC;QAChF,MAAM,EACJ,QAAQ,EAAE,YAAY,EACtB,MAAM,EACN,MAAM,EACN,KAAK,EACL,IAAI,EACJ,YAAY,EACZ,SAAS,EACT,SAAS,EACT,KAAK,EACL,SAAS,EACT,KAAK,EACL,KAAK,EACN,GAAG,IAAkC,CAAC;QAEvC,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;QACpD,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QAEjD,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG;YACV;gBACE,EAAE,EAAE,UAAU;gBACd,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;aACnC;YACD;gBACE,EAAE,EAAE,MAAM;gBACV,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;aACjC;SACF,CAAC;QAGF,IAAI,CAAC,KAAK,GAAG;YACX,SAAS,oBACJ,KAAK,CACT;SACF,CAAC;QACF,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG;YACZ;gBACE,IAAI,EAAE,KAAK;gBACX,EAAE,EAAE,aAAa;gBACjB,MAAM,EAAE,UAAU;gBAClB,SAAS,EAAE,YAAY;gBACvB,MAAM;gBACN,MAAM;gBACN,WAAW,EAAE,MAAM;gBACnB,aAAa,EAAE,EAAE;gBACjB,KAAK,EAAE,SAAS,CAAC,KAAK,kCAAO,SAAS,KAAE,MAAM,IAAU;aACzD;SACF,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG;YACZ,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,KAAK;YACX,QAAQ;YACR,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC5B,IAAI,EAAE;oBACJ,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBAC9C,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE;iBACnC;aACF,CAAC,CAAC;SACJ,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QAErB,sBAAsB,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAE7D,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,OAAO,KAAK,KAAK,EAAE;YAC7C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAQ,CAAC,CAAC;SAC7D;QACD,IAAI,IAAI,EAAE;YACR,MAAM,IAAI,GAAG,QAAQ,CAAC,YAAY,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,CAAC;YAC/E,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,IAAW,CAAC,CAAC;SAChD;QAED,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;CACF;AAED,MAAM,UAAU,WAAW,CAAC,IAAqB;IAC/C,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IAGlE,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;IAE3B,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAE/D,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACf,MAAM,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;QAC1B,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;YACjB,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;SACrB;QACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACvB,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;SACxB;QACD,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,WAAW,CAAC,MAAM,GAAG,IAAI,EAAE;YAC7B,MAAM,EAAE,qBAAQ,CAAC,CAAE,CAAC;YACpB,IAAI,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE;gBAC5B,EAAE,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;aAC/B;YACD,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACtB;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;AAC/D,CAAC;AAED,SAAS,sBAAsB,CAC7B,IAAsB,EACtB,EAAE,QAAQ,EAAE,gBAAgB,EAAkD;IAE7E,IAAY,CAAC,eAAe,GAAG,KAAK,CAAC;IACrC,IAAY,CAAC,eAAe,GAAG;QAC9B,GAAG,EAAE;YACH;gBACE,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE,eAAe,EAAE,CAAC,GAAG,CAAC,EAAE;gBACnC,MAAM,EAAE,QAAQ;gBAChB,QAAQ,EAAE,QAAQ;aACnB;YACD;gBACE,OAAO,EAAE,CAAC,GAAG,CAAC;gBACd,MAAM,EAAE,WAAW;gBACnB,QAAQ,EAAE,gBAAgB;aAC3B;SACF;QACD,IAAI,EAAE;YACJ,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,QAAQ;SACjB;KACF,CAAC;IACD,IAAY,CAAC,cAAc,GAAG;QAC7B,GAAG,EAAE;YACH;gBACE,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,gBAAgB;gBAC1B,MAAM,EAAE,YAAY;gBACpB,OAAO,EAAE;oBACP,SAAS,EAAE,GAAG;oBACd,MAAM,EAAE,UAAU;oBAClB,KAAK,EAAE,CAAC,KAAU,EAAE,OAAY,EAAE,KAAU,EAAE,EAAE;wBAC9C,OAAO;4BACL,CAAC,EAAE,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE;yBACpD,CAAC;oBACJ,CAAC;iBACF;aACF;SACF;KACF,CAAC;IACD,IAAY,CAAC,aAAa,GAAG;QAC5B,GAAG,EAAE;YACH;gBACE,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,gBAAgB;gBAC1B,MAAM,EAAE,YAAY;gBACpB,OAAO,EAAE;oBACP,SAAS,EAAE,GAAG;oBACd,MAAM,EAAE,UAAU;iBACnB;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,QAAkC,EAAE,EAAE,SAA4D;;IACnH,MAAM,IAAI,GAAiB,EAAE,CAAC;IAE9B,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK,EAAE;QAC3B,IAAI,CAAC,IAAI,CAAC;YACR,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,KAAK;YACd,KAAK,kBAEH,IAAI,EAAE,iBAAiB,IACpB,KAAK,CAAC,KAAK,CACf;YACD,WAAW,EAAE;gBACX,YAAY,EAAE,CAAA,MAAA,KAAK,CAAC,KAAK,0CAAE,IAAI,EAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gBACpD,cAAc,EAAE,CAAA,MAAA,KAAK,CAAC,KAAK,0CAAE,MAAM,EAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;aACzD;SACF,CAAC,CAAC;KACJ;IAED,IAAI,SAAS,CAAC,OAAO,EAAE;QACrB,IAAI,CAAC,IAAI,CAAC;YACR,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,KAAK;YAEd,KAAK,oBACA,SAAS,CAAC,KAAK,CACnB;YACD,WAAW,EAAE;gBACX,YAAY,EAAE,CAAA,MAAA,SAAS,CAAC,KAAK,0CAAE,IAAI,EAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gBACxD,cAAc,EAAE,CAAA,MAAA,SAAS,CAAC,KAAK,0CAAE,MAAM,EAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;aAC7D;YACD,QAAQ,EAAE,SAAS,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa;YAC3E,SAAS,EAAE,IAAI,SAAS,CAAC,MAAM,GAAG;SACnC,CAAC,CAAC;KACJ;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,QAAQ,CAAC,QAAkC,EAAE,EAAE,QAAkC,EAAE;IAC1F,MAAM,QAAQ,GAAuB;QACnC,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE;QAC7B,UAAU,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE;QACvC,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;KAC5B,CAAC;IACF,MAAM,UAAU,GAAuB;QACrC,MAAM,EAAE,QAAQ;QAChB,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE;QAC7B,UAAU,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE;QACvC,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;QAC3B,WAAW,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;KAC9B,CAAC;IAEF,IAAI,KAAK,CAAC,KAAK,EAAE;QACf,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;KAChC;IACD,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,aAAa,CAAC,YAAmC,EAAE;IAC1D,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,MAAM;QACd,KAAK,kBACH,YAAY,EAAE,QAAQ,EACtB,QAAQ,EAAE,GAAG,EACb,SAAS,EAAE,KAAK,EAChB,UAAU,EAAE,GAAG,EACf,IAAI,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAChC,CAAC,EAAE,CAAC,KAAU,EAAE,GAAQ,EAAE,EAAE;;gBAC1B,OAAO,CAAA,MAAA,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,aAAa,EAAE,0CAAE,KAAK,IAAG,EAAE,CAAC;YAC3D,CAAC,EACD,CAAC,EAAE,CAAC,KAAU,EAAE,GAAQ,EAAE,EAAE;;gBAC1B,OAAO,CAAA,MAAA,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,aAAa,EAAE,0CAAE,MAAM,IAAG,EAAE,CAAC;YAC5D,CAAC,EACD,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,GAAG,IACb,SAAS,CACb;KACF,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CACf,eAAgD,SAAS,EACzD,YAA0C,QAAQ,EAClD,EAAE,QAAQ,EAAE,gBAAgB,EAAO;IAEnC,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,UAAU;QAClB,KAAK,EAAE;YACL,UAAU,EAAE,SAAS;YACrB,MAAM,EAAE,OAAO;YACf,SAAS,EAAE,CAAC;YACZ,IAAI,EAAE,CAAC,IAAS,EAAE,GAAQ,EAAE,EAAE;;gBAC5B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;gBAC1B,MAAM,MAAM,GAAG,MAAA,MAAM,CAAC,QAAQ,EAAE,0CAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzD,IAAI,MAAM,IAAI,MAAM,EAAE;oBACpB,MAAM,SAAS,GAAG,MAAA,MAAM,CAAC,cAAc,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,mCAAI,CAAC,CAAC;oBAC/D,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;iBACnC;gBACD,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,UAAU,EAAE,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI;YAGpC,CAAC,EAAE,CAAC,IAAS,EAAE,GAAQ,EAAE,EAAE;;gBACzB,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;gBAC1B,MAAM,MAAM,GAAG,MAAA,MAAM,CAAC,QAAQ,EAAE,0CAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzD,IAAI,MAAM,IAAI,MAAM,EAAE;oBACpB,MAAM,SAAS,GAAG,MAAA,MAAM,CAAC,cAAc,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,mCAAI,CAAC,CAAC;oBAC/D,IAAI,YAAY,KAAK,WAAW,EAAE;wBAChC,OAAO,SAAS,GAAG,CAAC,CAAC;qBACtB;yBAAM,IAAI,YAAY,KAAK,MAAM,EAAE;wBAClC,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;qBACvB;yBAAM;wBACL,OAAO,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC;qBACrD;iBACF;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,CAAC,EAAE,CAAC,IAAS,EAAE,GAAQ,EAAE,EAAE;;gBACzB,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;gBAC1B,MAAM,MAAM,GAAG,MAAA,MAAM,CAAC,QAAQ,EAAE,0CAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzD,IAAI,MAAM,IAAI,MAAM,EAAE;oBACpB,MAAM,SAAS,GAAG,MAAA,MAAM,CAAC,cAAc,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,mCAAI,CAAC,CAAC;oBAC/D,OAAO,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC;iBACrD;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,MAAM,EAAE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SACvC;QACD,eAAe,EAAE,yBAAyB,CAAC,QAAQ,EAAE,gBAAgB,CAAC;QACtE,cAAc,EAAE;YACd;gBACE,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,gBAAgB;gBAC1B,MAAM,EAAE,YAAY;gBACpB,OAAO,EAAE;oBACP,SAAS,EAAE,GAAG;oBACd,MAAM,EAAE,UAAU;oBAClB,KAAK,EAAE,CAAC,KAAU,EAAE,OAAY,EAAE,KAAU,EAAE,EAAE;wBAC9C,OAAO;4BACL,CAAC,EAAE,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE;yBACpD,CAAC;oBACJ,CAAC;iBACF;aACF;SACF;QACD,aAAa,EAAE;YACb;gBACE,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,gBAAgB;gBAC1B,MAAM,EAAE,YAAY;gBACpB,OAAO,EAAE;oBACP,SAAS,EAAE,GAAG;oBACd,MAAM,EAAE,UAAU;iBACnB;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,QAAgB,EAAE,gBAAwB;IAC3E,OAAO;QACL;YACE,QAAQ,EAAE,gBAAgB;YAC1B,MAAM,EAAE,YAAY;YACpB,OAAO,EAAE,CAAC,GAAG,CAAC;SACf;QACD;YACE,OAAO,EAAE,EAAE,eAAe,EAAE,CAAC,GAAG,CAAC,EAAE;YACnC,OAAO,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC;YAC1B,MAAM,EAAE,QAAQ;YAChB,QAAQ;SACT;KACF,CAAC;AACJ,CAAC","file":"ranking-bar-transformer.js","sourcesContent":["import type { IRankingBarSpec } from './interface';\nimport type { ICartesianAxisSpec, ICommonChartSpec, ILabelSpec } from '@visactor/vchart';\nimport type { ITextGraphicAttribute } from '@visactor/vrender-core';\nimport { BaseChartSpecTransformer } from '@visactor/vchart';\nimport { isValid } from '@visactor/vutils';\n\nexport class RankingBarChartSpecTransformer<T extends ICommonChartSpec> extends BaseChartSpecTransformer<any> {\n transformSpec(spec: T): void {\n const { timeData, timeNodes } = processData(spec as unknown as IRankingBarSpec);\n const {\n interval: userInterval,\n xField,\n yField,\n color,\n icon,\n iconPosition,\n iconShape,\n timeLabel,\n label,\n nameLabel,\n xAxis,\n yAxis\n } = spec as unknown as IRankingBarSpec;\n\n const interval = userInterval ? userInterval : 1000;\n const exchangeDuration = Math.min(interval, 500);\n\n spec.type = 'common';\n spec.data = [\n {\n id: 'timeData',\n values: timeData.get(timeNodes[0])\n },\n {\n id: 'time',\n values: [{ time: timeNodes[0] }]\n }\n ];\n\n // @ts-ignore FIXME: type definition\n spec.color = {\n specified: {\n ...color\n }\n };\n spec.region = [{ clip: true }];\n spec.series = [\n {\n type: 'bar',\n id: 'ranking-bar',\n dataId: 'timeData',\n direction: 'horizontal',\n yField,\n xField,\n seriesField: yField,\n extensionMark: [],\n label: labelSpec(label, { ...nameLabel, yField }) as any\n }\n ];\n spec.axes = axisSpec(xAxis, yAxis);\n spec.player = {\n type: 'continuous',\n auto: true,\n loop: false,\n interval,\n specs: timeNodes.map(time => ({\n data: [\n { id: 'timeData', values: timeData.get(time) },\n { id: 'time', values: [{ time }] }\n ]\n }))\n };\n spec.tooltip = { visible: false };\n spec.customMark = [];\n\n transformAnimationSpec(spec, { interval, exchangeDuration });\n\n if (!timeLabel || timeLabel.visible !== false) {\n spec.customMark.push(timeLabelSpec(timeLabel.style) as any);\n }\n if (icon) {\n const icon = iconSpec(iconPosition, iconShape, { interval, exchangeDuration });\n spec.series[0].extensionMark.push(icon as any);\n }\n\n super.transformSpec(spec);\n }\n}\n\nexport function processData(spec: IRankingBarSpec) {\n const { xField, yField, timeField, data, topN = 10, icon } = spec;\n\n // 数据处理\n const timeNodes = new Set<string>();\n const timeData = new Map();\n\n data.sort((d1, d2) => Number(d2[xField]) - Number(d1[xField]));\n\n data.forEach(d => {\n const time = d[timeField];\n if (isValid(time)) {\n timeNodes.add(time);\n }\n if (!timeData.has(time)) {\n timeData.set(time, []);\n }\n const currentData = timeData.get(time);\n if (currentData.length < topN) {\n const _d = { ...d };\n if (icon && icon[_d[yField]]) {\n _d['icon'] = icon[_d[yField]];\n }\n currentData.push(_d);\n }\n });\n\n return { timeData, timeNodes: Array.from(timeNodes).sort() };\n}\n\nfunction transformAnimationSpec(\n spec: ICommonChartSpec,\n { interval, exchangeDuration }: { interval: number; exchangeDuration: number }\n) {\n (spec as any).animationAppear = false;\n (spec as any).animationUpdate = {\n bar: [\n {\n type: 'update',\n options: { excludeChannels: ['y'] },\n easing: 'linear',\n duration: interval\n },\n {\n channel: ['y'],\n easing: 'circInOut',\n duration: exchangeDuration\n }\n ],\n axis: {\n duration: interval,\n easing: 'linear'\n }\n };\n (spec as any).animationEnter = {\n bar: [\n {\n type: 'moveIn',\n duration: exchangeDuration,\n easing: 'cubicInOut',\n options: {\n direction: 'y',\n orient: 'negative',\n point: (datum: any, element: any, param: any) => {\n return {\n y: param.groupHeight + element.getBounds().height()\n };\n }\n }\n }\n ]\n };\n (spec as any).animationExit = {\n bar: [\n {\n type: 'moveOut',\n duration: exchangeDuration,\n easing: 'cubicInOut',\n options: {\n direction: 'y',\n orient: 'negative'\n }\n }\n ]\n };\n}\n\nfunction labelSpec(label: IRankingBarSpec['label'] = {}, nameLabel: IRankingBarSpec['nameLabel'] & { yField: string }) {\n const spec: ILabelSpec[] = [];\n\n if (label.visible !== false) {\n spec.push({\n visible: true,\n overlap: false,\n style: {\n // @ts-ignore\n fill: `rgb(64, 64, 64)`,\n ...label.style\n },\n smartInvert: {\n fillStrategy: label.style?.fill ? 'null' : undefined,\n strokeStrategy: label.style?.stroke ? 'null' : undefined\n }\n });\n }\n\n if (nameLabel.visible) {\n spec.push({\n visible: true,\n overlap: false,\n // @ts-ignore\n style: {\n ...nameLabel.style\n },\n smartInvert: {\n fillStrategy: nameLabel.style?.fill ? 'null' : undefined,\n strokeStrategy: nameLabel.style?.stroke ? 'null' : undefined\n },\n position: nameLabel.position === 'bar-end' ? 'inside-right' : 'inside-left',\n formatter: `{${nameLabel.yField}}`\n });\n }\n\n return spec;\n}\n\nfunction axisSpec(xAxis: IRankingBarSpec['xAxis'] = {}, yAxis: IRankingBarSpec['yAxis'] = {}) {\n const leftAxis: ICartesianAxisSpec = {\n orient: 'left',\n type: 'band',\n inverse: true,\n label: { style: yAxis.label },\n domainLine: { style: yAxis.domainLine },\n grid: { style: yAxis.grid }\n };\n const bottomAxis: ICartesianAxisSpec = {\n orient: 'bottom',\n type: 'linear',\n nice: false,\n animation: true,\n label: { style: xAxis.label },\n domainLine: { style: xAxis.domainLine },\n grid: { style: xAxis.grid },\n innerOffset: { right: '10%' }\n };\n\n if (xAxis.label) {\n bottomAxis.label = xAxis.label;\n }\n return [leftAxis, bottomAxis];\n}\n\nfunction timeLabelSpec(textStyle: ITextGraphicAttribute = {}) {\n return {\n type: 'text',\n dataId: 'time',\n style: {\n textBaseline: 'bottom',\n fontSize: 200,\n textAlign: 'end',\n fontWeight: 600,\n text: (datum: any) => datum.time,\n x: (datum: any, ctx: any) => {\n return ctx.vchart.getChart().getCanvasRect()?.width - 50;\n },\n y: (datum: any, ctx: any) => {\n return ctx.vchart.getChart().getCanvasRect()?.height - 80;\n },\n fill: 'grey',\n fillOpacity: 0.5,\n ...textStyle\n }\n };\n}\n\nfunction iconSpec(\n iconPosition: IRankingBarSpec['iconPosition'] = 'bar-end',\n iconShape: IRankingBarSpec['iconShape'] = 'circle',\n { interval, exchangeDuration }: any\n) {\n return {\n type: 'symbol',\n dataId: 'timeData',\n style: {\n symbolType: iconShape,\n stroke: 'white',\n lineWidth: 1,\n size: (data: any, ctx: any) => {\n const vchart = ctx.vchart;\n const series = vchart.getChart()?.getSeriesInIndex(0)[0];\n if (vchart && series) {\n const bandwidth = series.getYAxisHelper().getBandwidth(0) ?? 0;\n return Math.max(bandwidth - 4, 0);\n }\n return 10;\n },\n background: (data: any) => data.icon,\n // globalZIndex 有bug,会有动画闪烁和报错\n // globalZIndex: 1, // 否则会被 region 区域 clip\n x: (data: any, ctx: any) => {\n const vchart = ctx.vchart;\n const series = vchart.getChart()?.getSeriesInIndex(0)[0];\n if (vchart && series) {\n const bandwidth = series.getYAxisHelper().getBandwidth(0) ?? 0;\n if (iconPosition === 'bar-start') {\n return bandwidth / 2;\n } else if (iconPosition === 'axis') {\n return -bandwidth / 2;\n } else {\n return series.dataToPositionX(data) - bandwidth / 2;\n }\n }\n return undefined;\n },\n y: (data: any, ctx: any) => {\n const vchart = ctx.vchart;\n const series = vchart.getChart()?.getSeriesInIndex(0)[0];\n if (vchart && series) {\n const bandwidth = series.getYAxisHelper().getBandwidth(0) ?? 0;\n return series.dataToPositionY(data) + bandwidth / 2;\n }\n return undefined;\n },\n scaleY: iconShape === 'rect' ? 1.2 : 1\n },\n animationUpdate: customMarkUpdateAnimation(interval, exchangeDuration),\n animationEnter: [\n {\n type: 'moveIn',\n duration: exchangeDuration,\n easing: 'cubicInOut',\n options: {\n direction: 'y',\n orient: 'negative',\n point: (datum: any, element: any, param: any) => {\n return {\n y: param.groupHeight + element.getBounds().height()\n };\n }\n }\n }\n ],\n animationExit: [\n {\n type: 'moveOut',\n duration: exchangeDuration,\n easing: 'cubicInOut',\n options: {\n direction: 'y',\n orient: 'negative'\n }\n }\n ]\n };\n}\n\nfunction customMarkUpdateAnimation(duration: number, exchangeDuration: number) {\n return [\n {\n duration: exchangeDuration,\n easing: 'cubicInOut',\n channel: ['y']\n },\n {\n options: { excludeChannels: ['y'] },\n channel: ['x', 'x2', 'x1'],\n easing: 'linear',\n duration\n }\n ];\n}\n"]}
@@ -1,16 +0,0 @@
1
- import { IRankingBarSpec } from './interface';
2
- import { VChart, BaseChart } from '@visactor/vchart';
3
- import { RankingBarChartSpecTransformer } from './ranking-bar-transformer';
4
- export declare class RankingBar extends BaseChart<Omit<IRankingBarSpec, 'color'>> {
5
- type: string;
6
- static type: string;
7
- static readonly view: string;
8
- _spec: IRankingBarSpec;
9
- static readonly transformerConstructor: typeof RankingBarChartSpecTransformer;
10
- readonly transformerConstructor: typeof RankingBarChartSpecTransformer;
11
- init(): void;
12
- protected isValid(): boolean;
13
- }
14
- export declare const registerRankingBarChart: (option?: {
15
- VChart?: typeof VChart;
16
- }) => void;
@@ -1,27 +0,0 @@
1
- import { VChart, BaseChart } from "@visactor/vchart";
2
-
3
- import { RankingBarChartSpecTransformer } from "./ranking-bar-transformer";
4
-
5
- export class RankingBar extends BaseChart {
6
- constructor() {
7
- super(...arguments), this.type = "rankingBar", this.transformerConstructor = RankingBarChartSpecTransformer;
8
- }
9
- init() {
10
- this.isValid() && super.init();
11
- }
12
- isValid() {
13
- var _a, _b, _c, _d;
14
- const {xField: xField, yField: yField, timeField: timeField, data: data} = this._spec;
15
- return xField && yField && timeField ? !!data || (null === (_d = (_c = this._option).onError) || void 0 === _d || _d.call(_c, "Data is required"),
16
- !1) : (null === (_b = (_a = this._option).onError) || void 0 === _b || _b.call(_a, "Missing Required Config: `xField`, `yField`, `timeField` "),
17
- !1);
18
- }
19
- }
20
-
21
- RankingBar.type = "rankingBar", RankingBar.view = "singleDefault", RankingBar.transformerConstructor = RankingBarChartSpecTransformer;
22
-
23
- export const registerRankingBarChart = option => {
24
- const vchartConstructor = (null == option ? void 0 : option.VChart) || VChart;
25
- vchartConstructor && vchartConstructor.useChart([ RankingBar ]);
26
- };
27
- //# sourceMappingURL=ranking-bar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["charts/ranking-bar/ranking-bar.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC;AAE3E,MAAM,OAAO,UAAW,SAAQ,SAAyC;IAAzE;;QACE,SAAI,GAAG,YAAY,CAAC;QAOX,2BAAsB,GAAG,8BAA8B,CAAC;IAqBnE,CAAC;IAnBC,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE;YACnB,OAAO;SACR;QACD,KAAK,CAAC,IAAI,EAAE,CAAC;IACf,CAAC;IAES,OAAO;;QACf,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QACvD,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE;YACpC,MAAA,MAAA,IAAI,CAAC,OAAO,EAAC,OAAO,mDAAG,2DAA2D,CAAC,CAAC;YACpF,OAAO,KAAK,CAAC;SACd;QACD,IAAI,CAAC,IAAI,EAAE;YACT,MAAA,MAAA,IAAI,CAAC,OAAO,EAAC,OAAO,mDAAG,kBAAkB,CAAC,CAAC;YAC3C,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;IACd,CAAC;;AA1BM,eAAI,GAAG,YAAY,CAAC;AACX,eAAI,GAAW,eAAe,CAAC;AAI/B,iCAAsB,GAAG,8BAA8B,CAAC;AAwB1E,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,MAAmC,EAAE,EAAE;IAC7E,MAAM,iBAAiB,GAAG,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,KAAI,MAAM,CAAC;IACnD,IAAI,iBAAiB,EAAE;QACrB,iBAAiB,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;KAC1C;AACH,CAAC,CAAC","file":"ranking-bar.js","sourcesContent":["import { IRankingBarSpec } from './interface';\nimport { VChart, BaseChart } from '@visactor/vchart';\nimport { RankingBarChartSpecTransformer } from './ranking-bar-transformer';\n\nexport class RankingBar extends BaseChart<Omit<IRankingBarSpec, 'color'>> {\n type = 'rankingBar';\n static type = 'rankingBar';\n static readonly view: string = 'singleDefault';\n\n declare _spec: IRankingBarSpec;\n\n static readonly transformerConstructor = RankingBarChartSpecTransformer;\n readonly transformerConstructor = RankingBarChartSpecTransformer;\n\n init() {\n if (!this.isValid()) {\n return;\n }\n super.init();\n }\n\n protected isValid() {\n const { xField, yField, timeField, data } = this._spec;\n if (!xField || !yField || !timeField) {\n this._option.onError?.('Missing Required Config: `xField`, `yField`, `timeField` ');\n return false;\n }\n if (!data) {\n this._option.onError?.('Data is required');\n return false;\n }\n return true;\n }\n}\n\nexport const registerRankingBarChart = (option?: { VChart?: typeof VChart }) => {\n const vchartConstructor = option?.VChart || VChart;\n if (vchartConstructor) {\n vchartConstructor.useChart([RankingBar]);\n }\n};\n"]}
@@ -1,2 +0,0 @@
1
- import { IRankingListSpec } from './interface';
2
- export declare const defaultSpec: Omit<IRankingListSpec, 'type' | 'data' | 'xField' | 'yField'>;
@@ -1,69 +0,0 @@
1
- const cornerRadius = 5, animationDuration = 1e3, fontSize = 20, pageSize = 5, scrollSize = 1, primaryFontColor = "#21252c", shadowColor = "rgba(33,37,44,0.1)";
2
-
3
- export const defaultSpec = {
4
- labelLayout: "top",
5
- bar: {
6
- style: {
7
- cornerRadius: 5
8
- }
9
- },
10
- barBackground: {
11
- type: "rect",
12
- style: {
13
- fill: shadowColor,
14
- cornerRadius: 5
15
- }
16
- },
17
- rankingIcon: {
18
- visible: !0,
19
- style: {
20
- fill: "#21252c",
21
- size: 20
22
- }
23
- },
24
- nameLabel: {
25
- visible: !0,
26
- style: {
27
- fontSize: 20,
28
- fontWeight: "normal",
29
- fill: "#21252c",
30
- textBaseline: "middle"
31
- }
32
- },
33
- orderLabel: {
34
- visible: !0,
35
- style: {
36
- fontSize: 20,
37
- fontWeight: "normal",
38
- fill: "#21252c",
39
- textBaseline: "middle"
40
- }
41
- },
42
- valueLabel: {
43
- visible: !0,
44
- style: {
45
- fontSize: 20,
46
- fontWeight: "normal",
47
- fill: "#21252c",
48
- textBaseline: "middle"
49
- }
50
- },
51
- pageSize: 5,
52
- scrollSize: 1,
53
- animationAppear: {
54
- enable: !0,
55
- type: "grow",
56
- duration: 1e3,
57
- easing: "linear"
58
- },
59
- animationUpdate: {
60
- enable: !0,
61
- type: "grow",
62
- duration: 1e3,
63
- easing: "linear"
64
- },
65
- animationNormal: {
66
- interval: 1e3
67
- }
68
- };
69
- //# sourceMappingURL=constant.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["charts/ranking-list/constant.ts"],"names":[],"mappings":"AAEA,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAC/B,MAAM,QAAQ,GAAG,EAAE,CAAC;AACpB,MAAM,QAAQ,GAAG,CAAC,CAAC;AACnB,MAAM,UAAU,GAAG,CAAC,CAAC;AAGrB,MAAM,gBAAgB,GAAG,SAAS,CAAC;AACnC,MAAM,WAAW,GAAG,oBAAoB,CAAC;AAEzC,MAAM,CAAC,MAAM,WAAW,GAAkE;IACxF,WAAW,EAAE,KAAK;IAClB,GAAG,EAAE;QACH,KAAK,EAAE;YACL,YAAY;SACb;KACF;IACD,aAAa,EAAE;QACb,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE;YACL,IAAI,EAAE,WAAW;YACjB,YAAY;SACb;KACF;IACD,WAAW,EAAE;QACX,OAAO,EAAE,IAAI;QACb,KAAK,EAAE;YACL,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,QAAQ;SACf;KACF;IACD,SAAS,EAAE;QACT,OAAO,EAAE,IAAI;QACb,KAAK,EAAE;YAEL,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,QAAQ;YACpB,IAAI,EAAE,gBAAgB;YACtB,YAAY,EAAE,QAAQ;SACvB;KACF;IACD,UAAU,EAAE;QACV,OAAO,EAAE,IAAI;QACb,KAAK,EAAE;YAEL,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,QAAQ;YACpB,IAAI,EAAE,gBAAgB;YACtB,YAAY,EAAE,QAAQ;SACvB;KACF;IACD,UAAU,EAAE;QACV,OAAO,EAAE,IAAI;QACb,KAAK,EAAE;YAEL,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,QAAQ;YACpB,IAAI,EAAE,gBAAgB;YACtB,YAAY,EAAE,QAAQ;SACvB;KACF;IACD,QAAQ;IACR,UAAU;IACV,eAAe,EAAE;QACf,MAAM,EAAE,IAAI;QACZ,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,iBAAiB;QAC3B,MAAM,EAAE,QAAQ;KACjB;IACD,eAAe,EAAE;QACf,MAAM,EAAE,IAAI;QACZ,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,iBAAiB;QAC3B,MAAM,EAAE,QAAQ;KACjB;IACD,eAAe,EAAE;QAGf,QAAQ,EAAE,iBAAiB;KAE5B;CACF,CAAC","file":"constant.js","sourcesContent":["import { IRankingListSpec } from './interface';\n\nconst cornerRadius = 5;\nconst animationDuration = 1000;\nconst fontSize = 20;\nconst pageSize = 5;\nconst scrollSize = 1;\n\n// from: packages/vchart/src/theme/builtin/light/color-scheme.ts\nconst primaryFontColor = '#21252c';\nconst shadowColor = 'rgba(33,37,44,0.1)';\n\nexport const defaultSpec: Omit<IRankingListSpec, 'type' | 'data' | 'xField' | 'yField'> = {\n labelLayout: 'top',\n bar: {\n style: {\n cornerRadius\n }\n },\n barBackground: {\n type: 'rect',\n style: {\n fill: shadowColor,\n cornerRadius\n }\n },\n rankingIcon: {\n visible: true,\n style: {\n fill: primaryFontColor,\n size: fontSize\n }\n },\n nameLabel: {\n visible: true,\n style: {\n // fontFamily: ''\n fontSize: fontSize,\n fontWeight: 'normal',\n fill: primaryFontColor,\n textBaseline: 'middle'\n }\n },\n orderLabel: {\n visible: true,\n style: {\n // fontFamily: ''\n fontSize: fontSize,\n fontWeight: 'normal',\n fill: primaryFontColor,\n textBaseline: 'middle'\n }\n },\n valueLabel: {\n visible: true,\n style: {\n // fontFamily: ''\n fontSize: fontSize,\n fontWeight: 'normal',\n fill: primaryFontColor,\n textBaseline: 'middle'\n }\n },\n pageSize,\n scrollSize,\n animationAppear: {\n enable: true,\n type: 'grow',\n duration: animationDuration,\n easing: 'linear'\n },\n animationUpdate: {\n enable: true,\n type: 'grow',\n duration: animationDuration,\n easing: 'linear'\n },\n animationNormal: {\n // enable: true,\n // type: 'scroll',\n interval: animationDuration\n // easing: 'linear'\n }\n};\n"]}
@@ -1,74 +0,0 @@
1
- import { IMarkStateSpec, IMarkStateStyleSpec } from '@visactor/vchart';
2
- import { StateValue } from '@visactor/vchart/src/compile/mark';
3
- import { Datum } from '@visactor/vchart/src/typings/common';
4
- import { ITextGraphicAttribute, ISymbolGraphicAttribute, IRectGraphicAttribute, EasingType } from '@visactor/vrender-core';
5
- type IRankingListData = Datum[];
6
- export interface IRankingListSpec {
7
- type: 'rankingList';
8
- data: IRankingListData;
9
- xField: string;
10
- yField: string;
11
- width?: number;
12
- height?: number;
13
- labelLayout?: 'top' | 'bothEnd';
14
- bar?: {
15
- height?: number;
16
- style?: IRectGraphicAttribute;
17
- state?: Record<StateValue, IMarkStateSpec<IRectGraphicAttribute> | IMarkStateStyleSpec<IRectGraphicAttribute>>;
18
- };
19
- barBackground?: {
20
- visible?: boolean;
21
- type?: string;
22
- style?: ISymbolGraphicAttribute | IRectGraphicAttribute;
23
- state?: Record<StateValue, IMarkStateSpec<ISymbolGraphicAttribute | IRectGraphicAttribute> | IMarkStateStyleSpec<ISymbolGraphicAttribute | IRectGraphicAttribute>>;
24
- };
25
- rankingIcon?: {
26
- visible?: boolean;
27
- style?: ISymbolGraphicAttribute;
28
- state?: Record<StateValue, IMarkStateSpec<ISymbolGraphicAttribute> | IMarkStateStyleSpec<ISymbolGraphicAttribute>>;
29
- };
30
- decorateHaloIcons?: [
31
- {
32
- visible?: boolean;
33
- style?: ISymbolGraphicAttribute;
34
- state?: Record<StateValue, IMarkStateSpec<ISymbolGraphicAttribute> | IMarkStateStyleSpec<ISymbolGraphicAttribute>>;
35
- }
36
- ];
37
- orderLabel?: {
38
- visible?: boolean;
39
- style?: ITextGraphicAttribute;
40
- formatMethod?: (text: string, datum: Datum) => string;
41
- state?: Record<StateValue, IMarkStateSpec<ITextGraphicAttribute> | IMarkStateStyleSpec<ITextGraphicAttribute>>;
42
- };
43
- nameLabel?: {
44
- visible?: boolean;
45
- style?: ITextGraphicAttribute;
46
- formatMethod?: (text: string, datum: Datum) => string;
47
- state?: Record<StateValue, IMarkStateSpec<ITextGraphicAttribute> | IMarkStateStyleSpec<ITextGraphicAttribute>>;
48
- };
49
- valueLabel?: {
50
- visible?: boolean;
51
- style?: ITextGraphicAttribute;
52
- formatMethod?: (text: string, datum: Datum) => string;
53
- state?: Record<StateValue, IMarkStateSpec<ITextGraphicAttribute> | IMarkStateStyleSpec<ITextGraphicAttribute>>;
54
- };
55
- pageSize?: number;
56
- scrollSize?: number;
57
- animationAppear?: {
58
- enable?: boolean;
59
- type?: 'grow';
60
- duration?: number;
61
- easing?: EasingType;
62
- customTransformSpec?: (spec: any) => void;
63
- };
64
- animationUpdate?: {
65
- enable?: boolean;
66
- type?: 'grow';
67
- duration?: number;
68
- easing?: EasingType;
69
- };
70
- animationNormal?: {
71
- interval?: number;
72
- };
73
- }
74
- export {};
@@ -1,2 +0,0 @@
1
- export { };
2
- //# sourceMappingURL=interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["charts/ranking-list/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import { IMarkStateSpec, IMarkStateStyleSpec } from '@visactor/vchart';\nimport { StateValue } from '@visactor/vchart/src/compile/mark';\nimport { Datum } from '@visactor/vchart/src/typings/common';\nimport {\n ITextGraphicAttribute,\n ISymbolGraphicAttribute,\n IRectGraphicAttribute,\n EasingType\n} from '@visactor/vrender-core';\n\ntype IRankingListData = Datum[];\n\nexport interface IRankingListSpec {\n /**\n * 图表类型\n */\n type: 'rankingList';\n /**\n * 数据\n */\n data: IRankingListData;\n /**\n * x轴字段\n */\n xField: string;\n /**\n * y轴字段\n */\n yField: string;\n width?: number;\n height?: number;\n /**\n * 标签布局\n * @default 'top'\n */\n labelLayout?: 'top' | 'bothEnd';\n /**\n * 柱样式\n */\n bar?: {\n height?: number;\n style?: IRectGraphicAttribute;\n state?: Record<StateValue, IMarkStateSpec<IRectGraphicAttribute> | IMarkStateStyleSpec<IRectGraphicAttribute>>;\n };\n /**\n * 柱图背景\n */\n barBackground?: {\n visible?: boolean;\n type?: string;\n style?: ISymbolGraphicAttribute | IRectGraphicAttribute;\n state?: Record<\n StateValue,\n | IMarkStateSpec<ISymbolGraphicAttribute | IRectGraphicAttribute>\n | IMarkStateStyleSpec<ISymbolGraphicAttribute | IRectGraphicAttribute>\n >;\n };\n /**\n * 排名图标\n */\n rankingIcon?: {\n visible?: boolean;\n style?: ISymbolGraphicAttribute;\n state?: Record<StateValue, IMarkStateSpec<ISymbolGraphicAttribute> | IMarkStateStyleSpec<ISymbolGraphicAttribute>>;\n };\n /**\n * 装饰图元\n */\n decorateHaloIcons?: [\n {\n visible?: boolean;\n // type?: 'circle' | 'square' | 'emptyCircle' | 'diamond' | 'halo' | 'concentric' | 'custom';\n style?: ISymbolGraphicAttribute;\n state?: Record<\n StateValue,\n IMarkStateSpec<ISymbolGraphicAttribute> | IMarkStateStyleSpec<ISymbolGraphicAttribute>\n >;\n }\n ];\n /**\n * 排名序号\n */\n orderLabel?: {\n visible?: boolean;\n style?: ITextGraphicAttribute;\n formatMethod?: (text: string, datum: Datum) => string;\n state?: Record<StateValue, IMarkStateSpec<ITextGraphicAttribute> | IMarkStateStyleSpec<ITextGraphicAttribute>>;\n };\n /**\n * 名称标签(yField对应的标签)\n */\n nameLabel?: {\n visible?: boolean;\n style?: ITextGraphicAttribute;\n formatMethod?: (text: string, datum: Datum) => string;\n state?: Record<StateValue, IMarkStateSpec<ITextGraphicAttribute> | IMarkStateStyleSpec<ITextGraphicAttribute>>;\n };\n /**\n * 值标签(xField对应的标签)\n */\n valueLabel?: {\n visible?: boolean;\n style?: ITextGraphicAttribute;\n formatMethod?: (text: string, datum: Datum) => string;\n state?: Record<StateValue, IMarkStateSpec<ITextGraphicAttribute> | IMarkStateStyleSpec<ITextGraphicAttribute>>;\n };\n /**\n * 每页行数\n */\n pageSize?: number;\n /**\n * 滚动行数\n */\n scrollSize?: number;\n /**\n * 排行榜动画效果的定义和普通图表不甚相同\n * animationNormal动画代表由player控制其更新数据时执行的滚动效果的动画, 本质上是由普通图表的 update + enter + exit 共同构成的\n */\n /**\n * 出现动画\n */\n animationAppear?: {\n /**\n * 是否开启\n * @default true\n */\n enable?: boolean;\n /**\n * 动画类型\n * @default 'grow'\n * 'grow' 伸展\n */\n type?: 'grow';\n /**\n * 动画时长\n */\n duration?: number;\n /**\n * 动画缓动效果\n */\n easing?: EasingType;\n /**\n * @param spec 经过rankingList转化后的vchart原始spec\n * @description 获取vchart原始spec, 并根据业务自行添加转换逻辑\n */\n customTransformSpec?: (spec: any) => void;\n };\n\n /**\n * 更新动画\n */\n animationUpdate?: {\n /**\n * 是否开启\n * @default true\n */\n enable?: boolean;\n /**\n * 动画类型\n * @default 'grow'\n * 'grow' 伸展\n */\n type?: 'grow';\n /**\n * 动画时长\n */\n duration?: number;\n /**\n * 动画缓动效果\n */\n easing?: EasingType;\n };\n\n /**\n * 循环滚动动画\n */\n animationNormal?: {\n // /**\n // * 是否开启\n // * @default true\n // */\n // enable?: boolean;\n // /**\n // * 动画类型\n // * @default 'scroll'\n // * 'scroll' 伸展\n // */\n // type?: 'scroll';\n /**\n * 动画间隔\n */\n interval?: number;\n };\n}\n"]}