dtable-statistic 4.0.2-test-2

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 (210) hide show
  1. package/README.md +3 -0
  2. package/es/api/dtable-db-api.js +43 -0
  3. package/es/assets/css/color-picker.css +53 -0
  4. package/es/assets/css/color-rules-popover.css +144 -0
  5. package/es/assets/css/color-theme-dialog.css +40 -0
  6. package/es/assets/css/dashboard.css +562 -0
  7. package/es/assets/css/dialog.css +415 -0
  8. package/es/assets/css/mobile-dashboard.module.css +91 -0
  9. package/es/assets/css/slider.css +77 -0
  10. package/es/assets/css/statistic-chart.module.css +11 -0
  11. package/es/assets/css/statistic-custom-title.module.css +3 -0
  12. package/es/assets/css/statistic-custom.module.css +4 -0
  13. package/es/assets/css/statistic-numeric-column-item.module.css +43 -0
  14. package/es/assets/css/statistic-time-picker.module.css +21 -0
  15. package/es/assets/css/theme.css +61 -0
  16. package/es/assets/images/icon.png +0 -0
  17. package/es/calculator/base-calculator.js +111 -0
  18. package/es/calculator/basic-chart-calculator.js +571 -0
  19. package/es/calculator/combination-calculator.js +296 -0
  20. package/es/calculator/compare-bar-calculator.js +291 -0
  21. package/es/calculator/completeness-calculator.js +307 -0
  22. package/es/calculator/copy-value.js +47 -0
  23. package/es/calculator/dashboard-calculator.js +146 -0
  24. package/es/calculator/heat-map-calculator.js +225 -0
  25. package/es/calculator/horizontal-bar-calculator.js +100 -0
  26. package/es/calculator/index.js +88 -0
  27. package/es/calculator/map-calculator.js +169 -0
  28. package/es/calculator/mirror-calculator.js +217 -0
  29. package/es/calculator/number-card-calculator.js +135 -0
  30. package/es/calculator/pivot-table-calculator.js +810 -0
  31. package/es/calculator/scatter-calculator.js +150 -0
  32. package/es/calculator/thread-manager.js +70 -0
  33. package/es/calculator/trend-calculator.js +204 -0
  34. package/es/calculator/workers/basic-chart-calculator-worker.js +410 -0
  35. package/es/calculator/workers/calculator.worker.js +22 -0
  36. package/es/calculator/workers/card-calculator-worker.js +28 -0
  37. package/es/calculator/workers/combination-calculator-worker.js +257 -0
  38. package/es/calculator/workers/compare-bar-chart-calculator-worker.js +149 -0
  39. package/es/calculator/workers/completeness-calculator-worker.js +153 -0
  40. package/es/calculator/workers/dashboard-calculator-worker.js +56 -0
  41. package/es/calculator/workers/mirror-calculator-worker.js +132 -0
  42. package/es/calculator/workers/pivot-table-calculator-worker.js +615 -0
  43. package/es/calculator/workers/scatter-calculator-worker.js +67 -0
  44. package/es/calculator/workers/trend-calculator-worker.js +93 -0
  45. package/es/calculator/world-map-calculator.js +193 -0
  46. package/es/components/common-add-tool.js +19 -0
  47. package/es/components/dialog/chart-addition-edit-dialog.js +89 -0
  48. package/es/components/dialog/chart-addition-widgets/chart-selector.js +261 -0
  49. package/es/components/dialog/chart-addition-widgets/statistic-chart-selector.module.css +74 -0
  50. package/es/components/dialog/color-theme-dialog.js +71 -0
  51. package/es/components/dialog/enlarged-chart-dialog.js +73 -0
  52. package/es/components/dialog/new-table-dialog.js +113 -0
  53. package/es/components/dialog/new-view-dialog.js +87 -0
  54. package/es/components/dialog/rename-view-dialog.js +87 -0
  55. package/es/components/dialog/statistic-record-dialog/index.css +114 -0
  56. package/es/components/dialog/statistic-record-dialog/index.js +174 -0
  57. package/es/components/dialog/table-select-dialog.js +93 -0
  58. package/es/components/dropdown-menu/statistic-dropdown-menu.js +94 -0
  59. package/es/components/dtable-popover.js +109 -0
  60. package/es/components/dtable-search-input.js +137 -0
  61. package/es/components/dtable-select.js +104 -0
  62. package/es/components/index.js +11 -0
  63. package/es/components/loading.js +8 -0
  64. package/es/components/modal-portal.js +36 -0
  65. package/es/components/popover/color-rules/color-rule.js +179 -0
  66. package/es/components/popover/color-rules/index.js +87 -0
  67. package/es/components/popover/color-rules/rule-filters/filter.js +214 -0
  68. package/es/components/popover/color-rules/rule-filters/index.css +214 -0
  69. package/es/components/popover/color-rules/rule-filters/index.js +97 -0
  70. package/es/components/popover/color-rules/rule-filters/number-input.js +85 -0
  71. package/es/components/popover/color-rules-popover.js +213 -0
  72. package/es/components/popover/color-selector-popover.js +85 -0
  73. package/es/components/seatable-radio/index.css +51 -0
  74. package/es/components/seatable-radio/index.js +28 -0
  75. package/es/components/select/index.js +2 -0
  76. package/es/components/select/option-group.css +104 -0
  77. package/es/components/select/option-group.js +225 -0
  78. package/es/components/select/option.js +51 -0
  79. package/es/components/select/select.css +211 -0
  80. package/es/components/select/select.js +157 -0
  81. package/es/components/toast/alert.js +130 -0
  82. package/es/components/toast/index.js +3 -0
  83. package/es/components/toast/toast.js +164 -0
  84. package/es/components/toast/toastManager.js +150 -0
  85. package/es/components/toast/toaster.js +64 -0
  86. package/es/constants/color-rules.js +8 -0
  87. package/es/constants/dtable-select-style.js +61 -0
  88. package/es/constants/event-types.js +1 -0
  89. package/es/constants/index.js +501 -0
  90. package/es/constants/key-codes.js +102 -0
  91. package/es/constants/zIndexes.js +1 -0
  92. package/es/custom-g2.js +614 -0
  93. package/es/dashboard.js +408 -0
  94. package/es/desktop-dashboard.js +299 -0
  95. package/es/index.js +33 -0
  96. package/es/locale/index.js +17 -0
  97. package/es/locale/lang/de.js +237 -0
  98. package/es/locale/lang/en.js +237 -0
  99. package/es/locale/lang/fr.js +237 -0
  100. package/es/locale/lang/zh_CN.js +237 -0
  101. package/es/mobile-dashboard.js +103 -0
  102. package/es/model/collaborators.js +11 -0
  103. package/es/model/stat-item.js +340 -0
  104. package/es/model/statistic-dashboard.js +8 -0
  105. package/es/service/chart-service.js +192 -0
  106. package/es/service/dashboard-service.js +415 -0
  107. package/es/stat-editor/chart-name-editor.js +75 -0
  108. package/es/stat-editor/index.js +74 -0
  109. package/es/stat-editor/stat-settings/advance-chart-settings/basic-number-card-settings.js +149 -0
  110. package/es/stat-editor/stat-settings/advance-chart-settings/combination-settings.js +415 -0
  111. package/es/stat-editor/stat-settings/advance-chart-settings/dashboard-chart-settings.js +193 -0
  112. package/es/stat-editor/stat-settings/advance-chart-settings/geo-granularity-settings.js +13 -0
  113. package/es/stat-editor/stat-settings/advance-chart-settings/heat-map-settings.js +107 -0
  114. package/es/stat-editor/stat-settings/advance-chart-settings/index.js +332 -0
  115. package/es/stat-editor/stat-settings/advance-chart-settings/map-settings.js +170 -0
  116. package/es/stat-editor/stat-settings/advance-chart-settings/mirror-settings.js +141 -0
  117. package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/combination-style-setting.js +219 -0
  118. package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/heat-map-settings.js +89 -0
  119. package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/map-setting.js +132 -0
  120. package/es/stat-editor/stat-settings/advance-chart-settings/summary-settings.js +319 -0
  121. package/es/stat-editor/stat-settings/advance-chart-settings/trend-chart-settings.js +138 -0
  122. package/es/stat-editor/stat-settings/advance-chart-settings/world-map-settings.js +135 -0
  123. package/es/stat-editor/stat-settings/basic-chart-settings/advance-bar-chart-settings.js +156 -0
  124. package/es/stat-editor/stat-settings/basic-chart-settings/bar-settings.js +147 -0
  125. package/es/stat-editor/stat-settings/basic-chart-settings/completeness-chart-settings.js +195 -0
  126. package/es/stat-editor/stat-settings/basic-chart-settings/custom-bar-settings.js +126 -0
  127. package/es/stat-editor/stat-settings/basic-chart-settings/groupby-settings.js +169 -0
  128. package/es/stat-editor/stat-settings/basic-chart-settings/horizontal-axis-group-settings.js +352 -0
  129. package/es/stat-editor/stat-settings/basic-chart-settings/horizontal-bar-settings.js +145 -0
  130. package/es/stat-editor/stat-settings/basic-chart-settings/horizontal-group-chart-settings.js +153 -0
  131. package/es/stat-editor/stat-settings/basic-chart-settings/index.js +466 -0
  132. package/es/stat-editor/stat-settings/basic-chart-settings/pie-settings.js +183 -0
  133. package/es/stat-editor/stat-settings/basic-chart-settings/pivot-table-settings.js +542 -0
  134. package/es/stat-editor/stat-settings/basic-chart-settings/scatter-settings.js +111 -0
  135. package/es/stat-editor/stat-settings/basic-chart-settings/stack-item-settings.js +86 -0
  136. package/es/stat-editor/stat-settings/basic-chart-settings/stacks-settings.js +169 -0
  137. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/bar-chart-style-setting.js +273 -0
  138. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/completeness-style.js +105 -0
  139. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/horizontal-bar-chart-style.js +243 -0
  140. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/label-font-size-editor.js +65 -0
  141. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/pie-chart-style-settings.js +318 -0
  142. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/time-compare-style.js +49 -0
  143. package/es/stat-editor/stat-settings/basic-chart-settings/summary-method-setting.js +124 -0
  144. package/es/stat-editor/stat-settings/basic-chart-settings/summary-settings.js +150 -0
  145. package/es/stat-editor/stat-settings/basic-chart-settings/time-comparison-settings.js +267 -0
  146. package/es/stat-editor/stat-settings/basic-chart-settings/timer-picker.js +109 -0
  147. package/es/stat-editor/stat-settings/basic-chart-settings/y-axis-group-settings.js +351 -0
  148. package/es/stat-editor/stat-settings/color-setting/color-group-selector.js +60 -0
  149. package/es/stat-editor/stat-settings/color-setting/color-picker.js +129 -0
  150. package/es/stat-editor/stat-settings/color-setting/color-use-type-selector.js +348 -0
  151. package/es/stat-editor/stat-settings/public-setting/axis-label-position-setting.js +102 -0
  152. package/es/stat-editor/stat-settings/public-setting/base-settings.js +124 -0
  153. package/es/stat-editor/stat-settings/public-setting/calender.js +124 -0
  154. package/es/stat-editor/stat-settings/public-setting/column-settings.js +15 -0
  155. package/es/stat-editor/stat-settings/public-setting/custom-title-setting.js +60 -0
  156. package/es/stat-editor/stat-settings/public-setting/data-sort-setting.js +57 -0
  157. package/es/stat-editor/stat-settings/public-setting/ind-toggle-setting.js +41 -0
  158. package/es/stat-editor/stat-settings/public-setting/min-max-setting.js +64 -0
  159. package/es/stat-editor/stat-settings/public-setting/numeric-summary-item.js +118 -0
  160. package/es/stat-editor/stat-settings/public-setting/toggle-setting.js +39 -0
  161. package/es/stat-list/chart-preview.js +139 -0
  162. package/es/stat-list/index.js +275 -0
  163. package/es/stat-view/area-chart.js +521 -0
  164. package/es/stat-view/bar-chart.js +568 -0
  165. package/es/stat-view/base-chart.js +44 -0
  166. package/es/stat-view/basic-number-card.js +255 -0
  167. package/es/stat-view/combination-chart.js +558 -0
  168. package/es/stat-view/compare-chart.js +485 -0
  169. package/es/stat-view/completeness-chart.js +389 -0
  170. package/es/stat-view/custom-bar.js +433 -0
  171. package/es/stat-view/dashboard-chart.js +317 -0
  172. package/es/stat-view/heat-map.js +501 -0
  173. package/es/stat-view/horizontal-bar-chart.js +569 -0
  174. package/es/stat-view/index.js +183 -0
  175. package/es/stat-view/line-chart.js +505 -0
  176. package/es/stat-view/map.js +428 -0
  177. package/es/stat-view/mirror.js +285 -0
  178. package/es/stat-view/pie-chart.js +326 -0
  179. package/es/stat-view/pivot-table/index.js +206 -0
  180. package/es/stat-view/pivot-table/one-dimension-table-no-numeric-columns.js +133 -0
  181. package/es/stat-view/pivot-table/one-dimension-table-with-numeric-columns.js +164 -0
  182. package/es/stat-view/pivot-table/statistic-pivot-table.module.css +132 -0
  183. package/es/stat-view/pivot-table/two-dimension-table.js +344 -0
  184. package/es/stat-view/ring-chart.js +416 -0
  185. package/es/stat-view/scatter-chart.js +367 -0
  186. package/es/stat-view/treemap-chart.js +318 -0
  187. package/es/stat-view/trend-chart.js +299 -0
  188. package/es/stat-view/world-map.js +443 -0
  189. package/es/tabs/index.js +252 -0
  190. package/es/tabs/statistic-tabs.module.css +154 -0
  191. package/es/tabs/tab.js +167 -0
  192. package/es/utils/basic-chart-utils.js +24 -0
  193. package/es/utils/cell-format.js +110 -0
  194. package/es/utils/cell-value.js +27 -0
  195. package/es/utils/collaborator.js +31 -0
  196. package/es/utils/color-utils.js +112 -0
  197. package/es/utils/column-utils.js +18 -0
  198. package/es/utils/column.js +13 -0
  199. package/es/utils/common-utils.js +303 -0
  200. package/es/utils/date-format.js +65 -0
  201. package/es/utils/export-table-utils.js +632 -0
  202. package/es/utils/index.js +26 -0
  203. package/es/utils/object.js +26 -0
  204. package/es/utils/row-utils.js +115 -0
  205. package/es/utils/search.js +67 -0
  206. package/es/utils/sql-utils.js +293 -0
  207. package/es/utils/stat-utils.js +353 -0
  208. package/es/utils/trend-utils.js +136 -0
  209. package/index.js +1 -0
  210. package/package.json +188 -0
@@ -0,0 +1,614 @@
1
+ // register theme
2
+ import * as CanvasEngine from '@antv/g-canvas/esm/index';
3
+ import Area from '@antv/g2/esm/geometry/area';
4
+ import Edge from '@antv/g2/esm/geometry/edge';
5
+ import HeatMap from '@antv/g2/esm/geometry/heatmap';
6
+ import Interval from '@antv/g2/esm/geometry/interval';
7
+ import Line from '@antv/g2/esm/geometry/line';
8
+ import Path from '@antv/g2/esm/geometry/path';
9
+ import Point from '@antv/g2/esm/geometry/point';
10
+ import Polygon from '@antv/g2/esm/geometry/polygon';
11
+ import Schema from '@antv/g2/esm/geometry/schema';
12
+
13
+ // import all internal shapes
14
+ import '@antv/g2/esm/geometry/shape/area/line';
15
+ import '@antv/g2/esm/geometry/shape/area/smooth';
16
+ import '@antv/g2/esm/geometry/shape/area/smooth-line';
17
+ import '@antv/g2/esm/geometry/shape/edge/arc';
18
+ import '@antv/g2/esm/geometry/shape/edge/smooth';
19
+ import '@antv/g2/esm/geometry/shape/edge/vhv';
20
+ import '@antv/g2/esm/geometry/shape/interval/funnel';
21
+ import '@antv/g2/esm/geometry/shape/interval/hollow-rect';
22
+ import '@antv/g2/esm/geometry/shape/interval/line';
23
+ import '@antv/g2/esm/geometry/shape/interval/pyramid';
24
+ import '@antv/g2/esm/geometry/shape/interval/tick';
25
+ import '@antv/g2/esm/geometry/shape/line/step';
26
+ import '@antv/g2/esm/geometry/shape/point/hollow';
27
+ import '@antv/g2/esm/geometry/shape/point/image';
28
+ import '@antv/g2/esm/geometry/shape/point/solid';
29
+ import '@antv/g2/esm/geometry/shape/schema/box';
30
+ import '@antv/g2/esm/geometry/shape/schema/candle';
31
+ import GeometryLabel from '@antv/g2/esm/geometry/label/base';
32
+ import IntervalLabel from '@antv/g2/esm/geometry/label/interval';
33
+ import PieLabel from '@antv/g2/esm/geometry/label/pie';
34
+ import PolarLabel from '@antv/g2/esm/geometry/label/polar';
35
+ import { limitInCanvas } from '@antv/g2/esm/geometry/label/layout/limit-in-canvas';
36
+ import { limitInShape } from '@antv/g2/esm/geometry/label/layout/limit-in-shape';
37
+ import { fixedOverlap, overlap } from '@antv/g2/esm/geometry/label/layout/overlap';
38
+ import { fadeIn, fadeOut } from '@antv/g2/esm/animate/animation/fade';
39
+ import { growInX, growInXY, growInY } from '@antv/g2/esm/animate/animation/grow-in';
40
+ import { pathIn } from '@antv/g2/esm/animate/animation/path-in';
41
+ import { positionUpdate } from '@antv/g2/esm/animate/animation/position-update';
42
+ import { scaleInX, scaleInY } from '@antv/g2/esm/animate/animation/scale-in';
43
+ import { sectorPathUpdate } from '@antv/g2/esm/animate/animation/sector-path-update';
44
+ import { waveIn } from '@antv/g2/esm/animate/animation/wave-in';
45
+ import { zoomIn, zoomOut } from '@antv/g2/esm/animate/animation/zoom';
46
+ import { registerEngine, registerGeometry, registerAnimation, registerFacet, registerComponentController, registerAction, registerInteraction, registerGeometryLabelLayout, registerGeometryLabel } from '@antv/g2/esm/core';
47
+ import Circle from '@antv/g2/esm/facet/circle';
48
+ import List from '@antv/g2/esm/facet/list';
49
+ import Matrix from '@antv/g2/esm/facet/matrix';
50
+ import Mirror from '@antv/g2/esm/facet/mirror';
51
+ import Rect from '@antv/g2/esm/facet/rect';
52
+ import Tree from '@antv/g2/esm/facet/tree';
53
+ import Annotation from '@antv/g2/esm/chart/controller/annotation';
54
+ import Axis from '@antv/g2/esm/chart/controller/axis';
55
+ import Legend from '@antv/g2/esm/chart/controller/legend';
56
+ import Slider from '@antv/g2/esm/chart/controller/slider';
57
+ import Tooltip from '@antv/g2/esm/chart/controller/tooltip';
58
+ import ActiveRegion from '@antv/g2/esm/interaction/action/active-region';
59
+ import SiblingTooltip from '@antv/g2/esm/interaction/action/component/tooltip/sibling';
60
+ import TooltipAction from '@antv/g2/esm/interaction/action/component/tooltip/geometry';
61
+ import ElementActive from '@antv/g2/esm/interaction/action/element/active';
62
+ import ElementLinkByColor from '@antv/g2/esm/interaction/action/element/link-by-color';
63
+ import ElementRangeActive from '@antv/g2/esm/interaction/action/element/range-active';
64
+ import ElementSingleActive from '@antv/g2/esm/interaction/action/element/single-active';
65
+ import ElementHighlight from '@antv/g2/esm/interaction/action/element/highlight';
66
+ import ElementHighlightByColor from '@antv/g2/esm/interaction/action/element/highlight-by-color';
67
+ import ElementHighlightByX from '@antv/g2/esm/interaction/action/element/highlight-by-x';
68
+ import ElementRangeHighlight from '@antv/g2/esm/interaction/action/element/range-highlight';
69
+ import ElementSingleHighlight from '@antv/g2/esm/interaction/action/element/single-highlight';
70
+ import ElementRangeSelected from '@antv/g2/esm/interaction/action/element/range-selected';
71
+ import ElementSelected from '@antv/g2/esm/interaction/action/element/selected';
72
+ import ElementSingleSelected from '@antv/g2/esm/interaction/action/element/single-selected';
73
+ import ListActive from '@antv/g2/esm/interaction/action/component/list-active';
74
+ import ListHighlight from '@antv/g2/esm/interaction/action/component/list-highlight';
75
+ import ListSelected from '@antv/g2/esm/interaction/action/component/list-selected';
76
+ import ListUnchecked from '@antv/g2/esm/interaction/action/component/list-unchecked';
77
+ import CircleMask from '@antv/g2/esm/interaction/action/mask/circle';
78
+ import DimMask from '@antv/g2/esm/interaction/action/mask/dim-rect';
79
+ import PathMask from '@antv/g2/esm/interaction/action/mask/path';
80
+ import RectMask from '@antv/g2/esm/interaction/action/mask/rect';
81
+ import SmoothPathMask from '@antv/g2/esm/interaction/action/mask/smooth-path';
82
+ import CursorAction from '@antv/g2/esm/interaction/action/cursor';
83
+ import DataFilter from '@antv/g2/esm/interaction/action/data/filter';
84
+ import DataRangeFilter from '@antv/g2/esm/interaction/action/data/range-filter';
85
+ import SiblingFilter from '@antv/g2/esm/interaction/action/data/sibling-filter';
86
+ import ElementFilter from '@antv/g2/esm/interaction/action/element/filter';
87
+ import ElementSiblingFilter from '@antv/g2/esm/interaction/action/element/sibling-filter';
88
+ import ButtonAction from '@antv/g2/esm/interaction/action/view/button';
89
+ import ViewDrag from '@antv/g2/esm/interaction/action/view/drag';
90
+ import ViewMove from '@antv/g2/esm/interaction/action/view/move';
91
+ import ScaleTranslate from '@antv/g2/esm/interaction/action/view/scale-translate';
92
+ import ScaleZoom from '@antv/g2/esm/interaction/action/view/scale-zoom';
93
+ import { getAngle, polarToCartesian } from '@antv/g2/esm/util/graphics';
94
+ import { rotate, transform, translate, zoom } from '@antv/g2/esm/util/transform';
95
+ export { getRectWithCornerRadius } from '@antv/g2/esm/geometry/shape/interval/util';
96
+
97
+ // register G renderer
98
+ registerEngine('canvas', CanvasEngine);
99
+
100
+ // register internal G2 geometry
101
+ registerGeometry('Polygon', Polygon);
102
+ registerGeometry('Interval', Interval);
103
+ registerGeometry('Schema', Schema);
104
+ registerGeometry('Path', Path);
105
+ registerGeometry('Point', Point);
106
+ registerGeometry('Line', Line);
107
+ registerGeometry('Area', Area);
108
+ registerGeometry('Edge', Edge);
109
+ registerGeometry('Heatmap', HeatMap);
110
+
111
+ // register internal Geometry'label
112
+ registerGeometryLabel('base', GeometryLabel);
113
+ registerGeometryLabel('interval', IntervalLabel);
114
+ registerGeometryLabel('pie', PieLabel);
115
+ registerGeometryLabel('polar', PolarLabel);
116
+
117
+ // register internal Geometry-label's layout funcs
118
+ registerGeometryLabelLayout('overlap', overlap);
119
+ registerGeometryLabelLayout('fixed-overlap', fixedOverlap);
120
+ registerGeometryLabelLayout('limit-in-shape', limitInShape);
121
+ registerGeometryLabelLayout('limit-in-canvas', limitInCanvas);
122
+
123
+ // register animation funcs
124
+ registerAnimation('fade-in', fadeIn);
125
+ registerAnimation('fade-out', fadeOut);
126
+ registerAnimation('grow-in-x', growInX);
127
+ registerAnimation('grow-in-xy', growInXY);
128
+ registerAnimation('grow-in-y', growInY);
129
+ registerAnimation('scale-in-x', scaleInX);
130
+ registerAnimation('scale-in-y', scaleInY);
131
+ registerAnimation('wave-in', waveIn);
132
+ registerAnimation('zoom-in', zoomIn);
133
+ registerAnimation('zoom-out', zoomOut);
134
+ registerAnimation('position-update', positionUpdate);
135
+ registerAnimation('sector-path-update', sectorPathUpdate);
136
+ registerAnimation('path-in', pathIn);
137
+
138
+ // register internal Facet
139
+ registerFacet('rect', Rect);
140
+ registerFacet('mirror', Mirror);
141
+ registerFacet('list', List);
142
+ registerFacet('matrix', Matrix);
143
+ registerFacet('circle', Circle);
144
+ registerFacet('tree', Tree);
145
+
146
+ // register internal Component
147
+ // register build-in components
148
+ registerComponentController('axis', Axis);
149
+ registerComponentController('legend', Legend);
150
+ registerComponentController('tooltip', Tooltip);
151
+ registerComponentController('annotation', Annotation);
152
+ registerComponentController('slider', Slider);
153
+
154
+ // register Interaction Action
155
+ registerAction('tooltip', TooltipAction);
156
+ registerAction('sibling-tooltip', SiblingTooltip);
157
+ registerAction('element-active', ElementActive);
158
+ registerAction('element-single-active', ElementSingleActive);
159
+ registerAction('element-range-active', ElementRangeActive);
160
+ registerAction('element-highlight', ElementHighlight);
161
+ registerAction('element-highlight-by-x', ElementHighlightByX);
162
+ registerAction('element-highlight-by-color', ElementHighlightByColor);
163
+ registerAction('element-single-highlight', ElementSingleHighlight);
164
+ registerAction('element-range-highlight', ElementRangeHighlight);
165
+ registerAction('element-sibling-highlight', ElementRangeHighlight, {
166
+ effectSiblings: true,
167
+ effectByRecord: true
168
+ });
169
+ registerAction('element-selected', ElementSelected);
170
+ registerAction('element-single-selected', ElementSingleSelected);
171
+ registerAction('element-range-selected', ElementRangeSelected);
172
+ registerAction('element-link-by-color', ElementLinkByColor);
173
+ registerAction('active-region', ActiveRegion);
174
+ registerAction('list-active', ListActive);
175
+ registerAction('list-selected', ListSelected);
176
+ registerAction('list-highlight', ListHighlight);
177
+ registerAction('list-unchecked', ListUnchecked);
178
+ registerAction('rect-mask', RectMask);
179
+ registerAction('x-rect-mask', DimMask, {
180
+ dim: 'x'
181
+ });
182
+ registerAction('y-rect-mask', DimMask, {
183
+ dim: 'y'
184
+ });
185
+ registerAction('circle-mask', CircleMask);
186
+ registerAction('path-mask', PathMask);
187
+ registerAction('smooth-path-mask', SmoothPathMask);
188
+ registerAction('cursor', CursorAction);
189
+ registerAction('data-filter', DataFilter);
190
+ registerAction('brush', DataRangeFilter);
191
+ registerAction('brush-x', DataRangeFilter, {
192
+ dims: ['x']
193
+ });
194
+ registerAction('brush-y', DataRangeFilter, {
195
+ dims: ['y']
196
+ });
197
+ registerAction('sibling-filter', SiblingFilter);
198
+ registerAction('sibling-x-filter', SiblingFilter);
199
+ registerAction('sibling-y-filter', SiblingFilter);
200
+ registerAction('element-filter', ElementFilter);
201
+ registerAction('element-sibling-filter', ElementSiblingFilter);
202
+ registerAction('element-sibling-filter-record', ElementSiblingFilter, {
203
+ byRecord: true
204
+ });
205
+ registerAction('view-drag', ViewDrag);
206
+ registerAction('view-move', ViewMove);
207
+ registerAction('scale-translate', ScaleTranslate);
208
+ registerAction('scale-zoom', ScaleZoom);
209
+ registerAction('reset-button', ButtonAction, {
210
+ name: 'reset-button',
211
+ text: 'reset'
212
+ });
213
+
214
+ // register default Interaction
215
+ function isPointInView(context) {
216
+ return context.isInPlot();
217
+ }
218
+
219
+ // register tooltip's interaction
220
+ registerInteraction('tooltip', {
221
+ start: [{
222
+ trigger: 'plot:mousemove',
223
+ action: 'tooltip:show'
224
+ }],
225
+ end: [{
226
+ trigger: 'plot:mouseleave',
227
+ action: 'tooltip:hide'
228
+ }]
229
+ });
230
+
231
+ // activities of element while moved on
232
+ registerInteraction('element-active', {
233
+ start: [{
234
+ trigger: 'element:mouseenter',
235
+ action: 'element-active:active'
236
+ }],
237
+ end: [{
238
+ trigger: 'element:mouseleave',
239
+ action: 'element-active:reset'
240
+ }]
241
+ });
242
+
243
+ // allow unchecked via click
244
+ registerInteraction('element-selected', {
245
+ start: [{
246
+ trigger: 'element:click',
247
+ action: 'element-selected:toggle'
248
+ }]
249
+ });
250
+
251
+ // allow cancel via hover highlight
252
+ registerInteraction('element-highlight', {
253
+ start: [{
254
+ trigger: 'element:mouseenter',
255
+ action: 'element-highlight:highlight'
256
+ }],
257
+ end: [{
258
+ trigger: 'element:mouseleave',
259
+ action: 'element-highlight:reset'
260
+ }]
261
+ });
262
+
263
+ // allow cancel via hover highlight by x
264
+ registerInteraction('element-highlight-by-x', {
265
+ start: [{
266
+ trigger: 'element:mouseenter',
267
+ action: 'element-highlight-by-x:highlight'
268
+ }],
269
+ end: [{
270
+ trigger: 'element:mouseleave',
271
+ action: 'element-highlight-by-x:reset'
272
+ }]
273
+ });
274
+
275
+ // allow cancel via hover highlight by y
276
+ registerInteraction('element-highlight-by-color', {
277
+ start: [{
278
+ trigger: 'element:mouseenter',
279
+ action: 'element-highlight-by-color:highlight'
280
+ }],
281
+ end: [{
282
+ trigger: 'element:mouseleave',
283
+ action: 'element-highlight-by-color:reset'
284
+ }]
285
+ });
286
+
287
+ // legend hover,element active
288
+ registerInteraction('legend-active', {
289
+ start: [{
290
+ trigger: 'legend-item:mouseenter',
291
+ action: ['list-active:active', 'element-active:active']
292
+ }],
293
+ end: [{
294
+ trigger: 'legend-item:mouseleave',
295
+ action: ['list-active:reset', 'element-active:reset']
296
+ }]
297
+ });
298
+
299
+ // legend hover,element active
300
+ registerInteraction('legend-highlight', {
301
+ start: [{
302
+ trigger: 'legend-item:mouseenter',
303
+ action: ['list-highlight:highlight', 'element-highlight:highlight']
304
+ }],
305
+ end: [{
306
+ trigger: 'legend-item:mouseleave',
307
+ action: ['list-highlight:reset', 'element-highlight:reset']
308
+ }]
309
+ });
310
+
311
+ // legend hover,element active
312
+ registerInteraction('axis-label-highlight', {
313
+ start: [{
314
+ trigger: 'axis-label:mouseenter',
315
+ action: ['list-highlight:highlight', 'element-highlight:highlight']
316
+ }],
317
+ end: [{
318
+ trigger: 'axis-label:mouseleave',
319
+ action: ['list-highlight:reset', 'element-highlight:reset']
320
+ }]
321
+ });
322
+
323
+ // legend hover,element active
324
+ registerInteraction('element-list-highlight', {
325
+ start: [{
326
+ trigger: 'element:mouseenter',
327
+ action: ['list-highlight:highlight', 'element-highlight:highlight']
328
+ }],
329
+ end: [{
330
+ trigger: 'element:mouseleave',
331
+ action: ['list-highlight:reset', 'element-highlight:reset']
332
+ }]
333
+ });
334
+
335
+ // box selection
336
+ registerInteraction('element-range-highlight', {
337
+ showEnable: [{
338
+ trigger: 'plot:mouseenter',
339
+ action: 'cursor:crosshair'
340
+ }, {
341
+ trigger: 'mask:mouseenter',
342
+ action: 'cursor:move'
343
+ }, {
344
+ trigger: 'plot:mouseleave',
345
+ action: 'cursor:default'
346
+ }, {
347
+ trigger: 'mask:mouseleave',
348
+ action: 'cursor:crosshair'
349
+ }],
350
+ start: [{
351
+ trigger: 'plot:mousedown',
352
+ isEnable: function isEnable(context) {
353
+ return !context.isInShape('mask');
354
+ },
355
+ action: ['rect-mask:start', 'rect-mask:show']
356
+ }, {
357
+ trigger: 'mask:dragstart',
358
+ action: ['rect-mask:moveStart']
359
+ }],
360
+ processing: [{
361
+ trigger: 'plot:mousemove',
362
+ action: ['rect-mask:resize']
363
+ }, {
364
+ trigger: 'mask:drag',
365
+ action: ['rect-mask:move']
366
+ }, {
367
+ trigger: 'mask:change',
368
+ action: ['element-range-highlight:highlight']
369
+ }],
370
+ end: [{
371
+ trigger: 'plot:mouseup',
372
+ action: ['rect-mask:end']
373
+ }, {
374
+ trigger: 'mask:dragend',
375
+ action: ['rect-mask:moveEnd']
376
+ }, {
377
+ trigger: 'document:mouseup',
378
+ isEnable: function isEnable(context) {
379
+ return !context.isInPlot();
380
+ },
381
+ action: ['element-range-highlight:clear', 'rect-mask:end', 'rect-mask:hide']
382
+ }],
383
+ rollback: [{
384
+ trigger: 'dblclick',
385
+ action: ['element-range-highlight:clear', 'rect-mask:hide']
386
+ }]
387
+ });
388
+ registerInteraction('brush', {
389
+ showEnable: [{
390
+ trigger: 'plot:mouseenter',
391
+ action: 'cursor:crosshair'
392
+ }, {
393
+ trigger: 'plot:mouseleave',
394
+ action: 'cursor:default'
395
+ }],
396
+ start: [{
397
+ trigger: 'mousedown',
398
+ isEnable: isPointInView,
399
+ action: ['brush:start', 'rect-mask:start', 'rect-mask:show']
400
+ }],
401
+ processing: [{
402
+ trigger: 'mousemove',
403
+ isEnable: isPointInView,
404
+ action: ['rect-mask:resize']
405
+ }],
406
+ end: [{
407
+ trigger: 'mouseup',
408
+ isEnable: isPointInView,
409
+ action: ['brush:filter', 'brush:end', 'rect-mask:end', 'rect-mask:hide', 'reset-button:show']
410
+ }],
411
+ rollback: [{
412
+ trigger: 'reset-button:click',
413
+ action: ['brush:reset', 'reset-button:hide', 'cursor:crosshair']
414
+ }]
415
+ });
416
+ registerInteraction('brush-visible', {
417
+ showEnable: [{
418
+ trigger: 'plot:mouseenter',
419
+ action: 'cursor:crosshair'
420
+ }, {
421
+ trigger: 'plot:mouseleave',
422
+ action: 'cursor:default'
423
+ }],
424
+ start: [{
425
+ trigger: 'plot:mousedown',
426
+ action: ['rect-mask:start', 'rect-mask:show', 'element-range-highlight:start']
427
+ }],
428
+ processing: [{
429
+ trigger: 'plot:mousemove',
430
+ action: ['rect-mask:resize', 'element-range-highlight:highlight']
431
+ }, {
432
+ trigger: 'mask:end',
433
+ action: ['element-filter:filter']
434
+ }],
435
+ end: [{
436
+ trigger: 'mouseup',
437
+ isEnable: isPointInView,
438
+ action: ['rect-mask:end', 'rect-mask:hide', 'element-range-highlight:end', 'element-range-highlight:clear']
439
+ }],
440
+ rollback: [{
441
+ trigger: 'dblclick',
442
+ action: ['element-filter:clear']
443
+ }]
444
+ });
445
+ registerInteraction('brush-x', {
446
+ showEnable: [{
447
+ trigger: 'plot:mouseenter',
448
+ action: 'cursor:crosshair'
449
+ }, {
450
+ trigger: 'plot:mouseleave',
451
+ action: 'cursor:default'
452
+ }],
453
+ start: [{
454
+ trigger: 'mousedown',
455
+ isEnable: isPointInView,
456
+ action: ['brush-x:start', 'x-rect-mask:start', 'x-rect-mask:show']
457
+ }],
458
+ processing: [{
459
+ trigger: 'mousemove',
460
+ isEnable: isPointInView,
461
+ action: ['x-rect-mask:resize']
462
+ }],
463
+ end: [{
464
+ trigger: 'mouseup',
465
+ isEnable: isPointInView,
466
+ action: ['brush-x:filter', 'brush-x:end', 'x-rect-mask:end', 'x-rect-mask:hide']
467
+ }],
468
+ rollback: [{
469
+ trigger: 'dblclick',
470
+ action: ['brush-x:reset']
471
+ }]
472
+ });
473
+ registerInteraction('element-path-highlight', {
474
+ showEnable: [{
475
+ trigger: 'plot:mouseenter',
476
+ action: 'cursor:crosshair'
477
+ }, {
478
+ trigger: 'plot:mouseleave',
479
+ action: 'cursor:default'
480
+ }],
481
+ start: [{
482
+ trigger: 'mousedown',
483
+ isEnable: isPointInView,
484
+ action: 'path-mask:start'
485
+ }, {
486
+ trigger: 'mousedown',
487
+ isEnable: isPointInView,
488
+ action: 'path-mask:show'
489
+ }],
490
+ processing: [{
491
+ trigger: 'mousemove',
492
+ action: 'path-mask:addPoint'
493
+ }],
494
+ end: [{
495
+ trigger: 'mouseup',
496
+ action: 'path-mask:end'
497
+ }],
498
+ rollback: [{
499
+ trigger: 'dblclick',
500
+ action: 'path-mask:hide'
501
+ }]
502
+ });
503
+
504
+ // allow unchecked via click
505
+ registerInteraction('element-single-selected', {
506
+ start: [{
507
+ trigger: 'element:click',
508
+ action: 'element-single-selected:toggle'
509
+ }]
510
+ });
511
+
512
+ // filter data
513
+ registerInteraction('legend-filter', {
514
+ showEnable: [{
515
+ trigger: 'legend-item:mouseenter',
516
+ action: 'cursor:pointer'
517
+ }, {
518
+ trigger: 'legend-item:mouseleave',
519
+ action: 'cursor:default'
520
+ }],
521
+ start: [{
522
+ trigger: 'legend-item:click',
523
+ action: 'list-unchecked:toggle'
524
+ }, {
525
+ trigger: 'legend-item:click',
526
+ action: 'data-filter:filter'
527
+ }]
528
+ });
529
+
530
+ // filter data
531
+ registerInteraction('continuous-filter', {
532
+ start: [{
533
+ trigger: 'legend:valuechanged',
534
+ action: 'data-filter:filter'
535
+ }]
536
+ });
537
+
538
+ // filter data
539
+ registerInteraction('continuous-visible-filter', {
540
+ start: [{
541
+ trigger: 'legend:valuechanged',
542
+ action: 'element-filter:filter'
543
+ }]
544
+ });
545
+
546
+ // filter graphical
547
+ registerInteraction('legend-visible-filter', {
548
+ showEnable: [{
549
+ trigger: 'legend-item:mouseenter',
550
+ action: 'cursor:pointer'
551
+ }, {
552
+ trigger: 'legend-item:mouseleave',
553
+ action: 'cursor:default'
554
+ }],
555
+ start: [{
556
+ trigger: 'legend-item:click',
557
+ action: 'list-unchecked:toggle'
558
+ }, {
559
+ trigger: 'legend-item:click',
560
+ action: 'element-filter:filter'
561
+ }]
562
+ });
563
+
564
+ // show background box
565
+ registerInteraction('active-region', {
566
+ start: [{
567
+ trigger: 'plot:mousemove',
568
+ action: 'active-region:show'
569
+ }],
570
+ end: [{
571
+ trigger: 'plot:mouseleave',
572
+ action: 'active-region:hide'
573
+ }]
574
+ });
575
+ function isWheelDown(event) {
576
+ event.gEvent.preventDefault();
577
+ return event.gEvent.originalEvent.deltaY > 0;
578
+ }
579
+ registerInteraction('view-zoom', {
580
+ start: [{
581
+ trigger: 'plot:mousewheel',
582
+ isEnable: function isEnable(context) {
583
+ return isWheelDown(context.event);
584
+ },
585
+ action: 'scale-zoom:zoomOut'
586
+ }, {
587
+ trigger: 'plot:mousewheel',
588
+ isEnable: function isEnable(context) {
589
+ return !isWheelDown(context.event);
590
+ },
591
+ action: 'scale-zoom:zoomIn'
592
+ }]
593
+ });
594
+ registerInteraction('sibling-tooltip', {
595
+ start: [{
596
+ trigger: 'plot:mousemove',
597
+ action: 'sibling-tooltip:show'
598
+ }],
599
+ end: [{
600
+ trigger: 'plot:mouseleave',
601
+ action: 'sibling-tooltip:hide'
602
+ }]
603
+ });
604
+ export * from '@antv/g2/esm/core';
605
+
606
+ // common utils
607
+ export var Util = {
608
+ translate: translate,
609
+ rotate: rotate,
610
+ zoom: zoom,
611
+ transform: transform,
612
+ getAngle: getAngle,
613
+ polarToCartesian: polarToCartesian
614
+ };