sea-chart 0.0.1 → 0.0.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 (330) hide show
  1. package/README.md +117 -1
  2. package/dist/api/index.js +101 -0
  3. package/{lib → dist}/components/collaborator/index.js +8 -6
  4. package/{lib → dist}/components/icon/index.css +1 -1
  5. package/{lib → dist}/components/icon/index.js +7 -5
  6. package/dist/components/index.js +8 -0
  7. package/{lib → dist}/components/loading/index.js +4 -2
  8. package/dist/components/number-input/index.js +31 -0
  9. package/{lib → dist}/components/pixel-editor/index.css +4 -4
  10. package/{lib → dist}/components/pixel-editor/index.js +11 -15
  11. package/{lib → dist}/components/select-group/index.css +10 -10
  12. package/dist/components/select-group/index.js +52 -0
  13. package/dist/components/types-dialog/index.css +97 -0
  14. package/dist/components/types-dialog/index.js +117 -0
  15. package/{lib → dist}/constants/geolocation.js +3 -3
  16. package/dist/constants/index.js +184 -0
  17. package/{lib → dist}/constants/model.js +25 -5
  18. package/dist/constants/style.js +15 -0
  19. package/dist/constants/type-image.js +59 -0
  20. package/dist/constants/type.js +124 -0
  21. package/dist/context.js +83 -0
  22. package/dist/editor/index.js +41 -0
  23. package/dist/index.js +9 -0
  24. package/dist/intl.js +37 -0
  25. package/dist/locale/index.js +18 -0
  26. package/{lib → dist}/locale/lang/de.js +1 -1
  27. package/{lib → dist}/locale/lang/en.js +1 -1
  28. package/{lib → dist}/locale/lang/es.js +1 -1
  29. package/{lib → dist}/locale/lang/fr.js +1 -1
  30. package/{lib → dist}/locale/lang/pt.js +1 -1
  31. package/{lib → dist}/locale/lang/ru.js +1 -1
  32. package/{lib → dist}/locale/lang/zh_CN.js +1 -1
  33. package/dist/model/area-group.js +41 -0
  34. package/dist/model/area.js +32 -0
  35. package/dist/model/bar-group.js +44 -0
  36. package/dist/model/bar-stack.js +41 -0
  37. package/dist/model/bar.js +38 -0
  38. package/dist/model/base-model.js +9 -0
  39. package/dist/model/basic-number-card.js +22 -0
  40. package/dist/model/chart.js +23 -0
  41. package/dist/model/combination.js +38 -0
  42. package/dist/model/compare-bar.js +39 -0
  43. package/dist/model/completeness-group.js +24 -0
  44. package/dist/model/completeness.js +18 -0
  45. package/dist/model/dashboard.js +16 -0
  46. package/dist/model/generic-model.js +224 -0
  47. package/dist/model/heat-map.js +23 -0
  48. package/dist/model/horizontal-bar.js +38 -0
  49. package/dist/model/horizontal-group-bar.js +43 -0
  50. package/dist/model/index.js +63 -0
  51. package/dist/model/line-group.js +44 -0
  52. package/dist/model/line.js +38 -0
  53. package/dist/model/map-bubble.js +27 -0
  54. package/dist/model/map.js +27 -0
  55. package/dist/model/mirror.js +26 -0
  56. package/dist/model/pie.js +26 -0
  57. package/dist/model/ring.js +26 -0
  58. package/dist/model/scatter.js +19 -0
  59. package/dist/model/stacked-horizontal-bar.js +32 -0
  60. package/dist/model/table.js +23 -0
  61. package/dist/model/tree-map.js +20 -0
  62. package/dist/model/trend.js +24 -0
  63. package/dist/model/user.js +15 -0
  64. package/dist/model/world-map-bubble.js +26 -0
  65. package/dist/model/world-map.js +26 -0
  66. package/{lib/components → dist}/settings/advance-bar-settings/data-settings.js +68 -45
  67. package/dist/settings/advance-bar-settings/style-settings.js +161 -0
  68. package/{lib/components → dist}/settings/bar-settings/data-settings.js +76 -51
  69. package/dist/settings/bar-settings/style-settings.js +179 -0
  70. package/dist/settings/basic-number-card/data-settings.js +126 -0
  71. package/dist/settings/basic-number-card/style-settings.js +42 -0
  72. package/dist/settings/combination-settings/data-settings.js +279 -0
  73. package/dist/settings/combination-settings/style-settings.js +174 -0
  74. package/dist/settings/dashboard-settings/data-settings.js +179 -0
  75. package/{lib/components → dist}/settings/data-settings.js +28 -22
  76. package/dist/settings/horizontal-bar-settings/data-settings.js +55 -0
  77. package/dist/settings/horizontal-bar-settings/style-settings.js +46 -0
  78. package/dist/settings/index.css +85 -0
  79. package/dist/settings/index.js +76 -0
  80. package/{lib/components → dist}/settings/pie-settings/data-settings.js +67 -44
  81. package/{lib/components → dist}/settings/pie-settings/style-settings.js +67 -49
  82. package/dist/settings/style-settings.js +118 -0
  83. package/{lib/components → dist}/settings/table-settings/data-settings.js +269 -208
  84. package/{lib/components → dist}/settings/time-comparison-settings/data-settings.js +82 -67
  85. package/dist/settings/time-comparison-settings/style-settings.js +213 -0
  86. package/dist/settings/widgets/basic-summary/index.css +12 -0
  87. package/dist/settings/widgets/basic-summary/index.js +176 -0
  88. package/{lib/components/settings/widgets/statistic-type → dist/settings/widgets/chart-type}/index.css +5 -5
  89. package/dist/settings/widgets/chart-type/index.js +59 -0
  90. package/{lib/components → dist}/settings/widgets/common-data-settings.js +24 -18
  91. package/dist/settings/widgets/data-filter/index.css +17 -0
  92. package/{lib/components → dist}/settings/widgets/data-filter/index.js +51 -37
  93. package/dist/settings/widgets/data-sort.js +44 -0
  94. package/dist/settings/widgets/date-summary-item.js +111 -0
  95. package/dist/settings/widgets/display-values-settings/index.css +13 -0
  96. package/{lib/components → dist}/settings/widgets/display-values-settings/index.js +19 -14
  97. package/{lib/components → dist}/settings/widgets/divider/index.css +1 -1
  98. package/dist/settings/widgets/divider/index.js +12 -0
  99. package/{lib/components → dist}/settings/widgets/font-settings/font-size-settings.js +14 -12
  100. package/{lib/components → dist}/settings/widgets/font-settings/font-weight-settings.js +14 -16
  101. package/dist/settings/widgets/group-by.js +160 -0
  102. package/{lib/components → dist}/settings/widgets/label-color.js +10 -10
  103. package/dist/settings/widgets/min-max-setting.js +52 -0
  104. package/dist/settings/widgets/mininum-slice-percent.js +63 -0
  105. package/dist/settings/widgets/numeric-summary-item.js +90 -0
  106. package/dist/settings/widgets/select-table/index.js +38 -0
  107. package/dist/settings/widgets/stack.js +50 -0
  108. package/dist/settings/widgets/summary-method-setting.js +66 -0
  109. package/dist/settings/widgets/summary-settings.js +411 -0
  110. package/dist/settings/widgets/switch/index.css +37 -0
  111. package/{lib/components → dist}/settings/widgets/switch/index.js +11 -8
  112. package/{lib/components → dist}/settings/widgets/text-horizontal-settings.js +12 -10
  113. package/dist/settings/widgets/time-picker.js +174 -0
  114. package/{lib/components → dist}/settings/widgets/title-settings/index.js +15 -13
  115. package/dist/settings/widgets/title-settings/title-text.js +25 -0
  116. package/dist/settings/widgets/x-axios.js +0 -0
  117. package/dist/settings/widgets/y-axis-group-settings.js +438 -0
  118. package/dist/utils/cell-format-utils.js +42 -0
  119. package/dist/utils/chart-data-sql.js +606 -0
  120. package/dist/utils/chart-utils.js +1803 -0
  121. package/dist/utils/chart.js +6 -0
  122. package/dist/utils/collaborator-manager.js +24 -0
  123. package/dist/utils/collaborator-utils.js +40 -0
  124. package/dist/utils/column-2-sql-column.js +551 -0
  125. package/dist/utils/column-utils.js +208 -0
  126. package/{lib → dist}/utils/custom-g2.js +11 -11
  127. package/{lib → dist}/utils/date-translate.js +11 -11
  128. package/dist/utils/index.js +48 -0
  129. package/dist/utils/key-generator.js +13 -0
  130. package/dist/utils/object-utils.js +45 -0
  131. package/{lib → dist}/utils/options-utils.js +17 -18
  132. package/dist/view/index.css +53 -0
  133. package/dist/view/index.js +169 -0
  134. package/{lib/layout → dist/view}/title/index.css +1 -1
  135. package/dist/view/title/index.js +46 -0
  136. package/dist/view/wrapper/area.js +150 -0
  137. package/dist/view/wrapper/bar-group.js +148 -0
  138. package/dist/view/wrapper/bar.js +138 -0
  139. package/dist/view/wrapper/basic-number-card.js +127 -0
  140. package/dist/view/wrapper/chart-component.js +261 -0
  141. package/dist/view/wrapper/combination.js +399 -0
  142. package/dist/view/wrapper/dashboard.js +164 -0
  143. package/dist/view/wrapper/horizontal-bar-group.js +149 -0
  144. package/dist/view/wrapper/horizontal-bar.js +140 -0
  145. package/dist/view/wrapper/horizontal-component.js +78 -0
  146. package/{lib/components/formatter → dist/view/wrapper}/index.js +90 -71
  147. package/dist/view/wrapper/line-group.js +145 -0
  148. package/dist/view/wrapper/line.js +157 -0
  149. package/dist/view/wrapper/pie.js +185 -0
  150. package/dist/view/wrapper/ring.js +264 -0
  151. package/{lib/components/formatter → dist/view/wrapper}/table/index.css +18 -18
  152. package/dist/view/wrapper/table/index.js +31 -0
  153. package/dist/view/wrapper/table/one-dimension-table-no-numeric-columns.js +144 -0
  154. package/dist/view/wrapper/table/one-dimension-table-with-numeric-columns.js +198 -0
  155. package/dist/view/wrapper/table/pivot-table-display-name.js +248 -0
  156. package/dist/view/wrapper/table/two-dimension-table.js +249 -0
  157. package/dist/view/wrapper/treemap.js +186 -0
  158. package/package.json +91 -100
  159. package/lib/components/formatter/area.js +0 -162
  160. package/lib/components/formatter/bar-group.js +0 -160
  161. package/lib/components/formatter/bar.js +0 -150
  162. package/lib/components/formatter/basic-number-card.js +0 -138
  163. package/lib/components/formatter/chart-component.js +0 -266
  164. package/lib/components/formatter/combination.js +0 -407
  165. package/lib/components/formatter/dashboard.js +0 -182
  166. package/lib/components/formatter/horizontal-bar-group.js +0 -161
  167. package/lib/components/formatter/horizontal-bar.js +0 -152
  168. package/lib/components/formatter/horizontal-component.js +0 -91
  169. package/lib/components/formatter/line-group.js +0 -157
  170. package/lib/components/formatter/line.js +0 -170
  171. package/lib/components/formatter/pie.js +0 -201
  172. package/lib/components/formatter/ring.js +0 -277
  173. package/lib/components/formatter/table/index.js +0 -42
  174. package/lib/components/formatter/table/one-dimension-table-no-numeric-columns.js +0 -145
  175. package/lib/components/formatter/table/one-dimension-table-with-numeric-columns.js +0 -193
  176. package/lib/components/formatter/table/pivot-table-display-name.js +0 -249
  177. package/lib/components/formatter/table/two-dimension-table.js +0 -241
  178. package/lib/components/formatter/treemap.js +0 -213
  179. package/lib/components/index.js +0 -5
  180. package/lib/components/number-input/index.js +0 -31
  181. package/lib/components/select-group/index.js +0 -63
  182. package/lib/components/settings/advance-bar-settings/style-settings.js +0 -149
  183. package/lib/components/settings/bar-settings/style-settings.js +0 -163
  184. package/lib/components/settings/basic-number-card/data-settings.js +0 -121
  185. package/lib/components/settings/basic-number-card/style-settings.js +0 -42
  186. package/lib/components/settings/combination-settings/data-settings.js +0 -256
  187. package/lib/components/settings/combination-settings/style-settings.js +0 -183
  188. package/lib/components/settings/dashboard-settings/data-settings.js +0 -167
  189. package/lib/components/settings/horizontal-bar-settings/data-settings.js +0 -45
  190. package/lib/components/settings/horizontal-bar-settings/style-settings.js +0 -38
  191. package/lib/components/settings/index.css +0 -73
  192. package/lib/components/settings/index.js +0 -74
  193. package/lib/components/settings/style-settings.js +0 -100
  194. package/lib/components/settings/time-comparison-settings/style-settings.js +0 -191
  195. package/lib/components/settings/widgets/basic-summary/index.css +0 -12
  196. package/lib/components/settings/widgets/basic-summary/index.js +0 -173
  197. package/lib/components/settings/widgets/data-filter/index.css +0 -17
  198. package/lib/components/settings/widgets/data-sort.js +0 -38
  199. package/lib/components/settings/widgets/date-summary-item.js +0 -126
  200. package/lib/components/settings/widgets/display-values-settings/index.css +0 -13
  201. package/lib/components/settings/widgets/divider/index.js +0 -10
  202. package/lib/components/settings/widgets/group-by.js +0 -168
  203. package/lib/components/settings/widgets/min-max-setting.js +0 -64
  204. package/lib/components/settings/widgets/mininum-slice-percent.js +0 -72
  205. package/lib/components/settings/widgets/numeric-summary-item.js +0 -109
  206. package/lib/components/settings/widgets/select-table/index.js +0 -49
  207. package/lib/components/settings/widgets/stack.js +0 -58
  208. package/lib/components/settings/widgets/statistic-type/index.js +0 -54
  209. package/lib/components/settings/widgets/summary-method-setting.js +0 -80
  210. package/lib/components/settings/widgets/summary-settings.js +0 -394
  211. package/lib/components/settings/widgets/switch/index.css +0 -37
  212. package/lib/components/settings/widgets/time-picker.js +0 -182
  213. package/lib/components/settings/widgets/title-settings/title-text.js +0 -31
  214. package/lib/components/settings/widgets/y-axis-group-settings.js +0 -399
  215. package/lib/components/types-dialog/index.css +0 -97
  216. package/lib/components/types-dialog/index.js +0 -127
  217. package/lib/constants/index.js +0 -164
  218. package/lib/constants/style.js +0 -13
  219. package/lib/constants/type-image.js +0 -32
  220. package/lib/constants/type.js +0 -97
  221. package/lib/context.js +0 -49
  222. package/lib/index.js +0 -6
  223. package/lib/intl.js +0 -37
  224. package/lib/layout/index.js +0 -4
  225. package/lib/layout/statistic/index.css +0 -53
  226. package/lib/layout/statistic/index.js +0 -190
  227. package/lib/layout/title/index.js +0 -41
  228. package/lib/locale/index.js +0 -11
  229. package/lib/model/area-group.js +0 -51
  230. package/lib/model/area.js +0 -42
  231. package/lib/model/bar-group.js +0 -54
  232. package/lib/model/bar-stack.js +0 -51
  233. package/lib/model/bar.js +0 -48
  234. package/lib/model/base-model.js +0 -11
  235. package/lib/model/basic-number-card.js +0 -32
  236. package/lib/model/combination.js +0 -48
  237. package/lib/model/compare-bar.js +0 -49
  238. package/lib/model/completeness-group.js +0 -34
  239. package/lib/model/completeness.js +0 -28
  240. package/lib/model/dashboard.js +0 -26
  241. package/lib/model/generic-model.js +0 -235
  242. package/lib/model/heat-map.js +0 -33
  243. package/lib/model/horizontal-bar.js +0 -48
  244. package/lib/model/horizontal-group-bar.js +0 -53
  245. package/lib/model/index.js +0 -36
  246. package/lib/model/line-group.js +0 -54
  247. package/lib/model/line.js +0 -48
  248. package/lib/model/map-bubble.js +0 -37
  249. package/lib/model/map.js +0 -37
  250. package/lib/model/mirror.js +0 -36
  251. package/lib/model/pie.js +0 -36
  252. package/lib/model/ring.js +0 -36
  253. package/lib/model/scatter.js +0 -29
  254. package/lib/model/stacked-horizontal-bar.js +0 -42
  255. package/lib/model/statistic.js +0 -22
  256. package/lib/model/table.js +0 -33
  257. package/lib/model/tree-map.js +0 -30
  258. package/lib/model/trend.js +0 -34
  259. package/lib/model/user.js +0 -22
  260. package/lib/model/world-map-bubble.js +0 -36
  261. package/lib/model/world-map.js +0 -36
  262. package/lib/utils/cell-format-utils.js +0 -41
  263. package/lib/utils/chart.js +0 -6
  264. package/lib/utils/collaborator-utils.js +0 -40
  265. package/lib/utils/column-utils.js +0 -247
  266. package/lib/utils/data-filter/filter-item-utils.js +0 -80
  267. package/lib/utils/data-filter/filters-utils.js +0 -406
  268. package/lib/utils/data-filter/index.js +0 -3
  269. package/lib/utils/index.js +0 -50
  270. package/lib/utils/key-generator.js +0 -13
  271. package/lib/utils/object-utils.js +0 -61
  272. package/lib/utils/statistic-column-2-sql-column-utils.js +0 -499
  273. package/lib/utils/statistic-utils.js +0 -1685
  274. /package/{lib → dist}/assets/icons/area-chart.svg +0 -0
  275. /package/{lib → dist}/assets/icons/bar-chart.svg +0 -0
  276. /package/{lib → dist}/assets/icons/card.svg +0 -0
  277. /package/{lib → dist}/assets/icons/combination-chart.svg +0 -0
  278. /package/{lib → dist}/assets/icons/dtable-logo.svg +0 -0
  279. /package/{lib → dist}/assets/icons/facet-chart.svg +0 -0
  280. /package/{lib → dist}/assets/icons/gauge.svg +0 -0
  281. /package/{lib → dist}/assets/icons/heat-map.svg +0 -0
  282. /package/{lib → dist}/assets/icons/histogram.svg +0 -0
  283. /package/{lib → dist}/assets/icons/line-chart.svg +0 -0
  284. /package/{lib → dist}/assets/icons/map.svg +0 -0
  285. /package/{lib → dist}/assets/icons/pie-chart.svg +0 -0
  286. /package/{lib → dist}/assets/icons/rectangular-tree-diagram.svg +0 -0
  287. /package/{lib → dist}/assets/icons/scatter-chart.svg +0 -0
  288. /package/{lib → dist}/assets/icons/type-change.svg +0 -0
  289. /package/{lib → dist}/assets/img/area-chart.png +0 -0
  290. /package/{lib → dist}/assets/img/area-group-chart.png +0 -0
  291. /package/{lib → dist}/assets/img/bar-group.png +0 -0
  292. /package/{lib → dist}/assets/img/bar-stack.png +0 -0
  293. /package/{lib → dist}/assets/img/bar.png +0 -0
  294. /package/{lib → dist}/assets/img/combination-chart.png +0 -0
  295. /package/{lib → dist}/assets/img/compared-chart.png +0 -0
  296. /package/{lib → dist}/assets/img/completeness-chart.png +0 -0
  297. /package/{lib → dist}/assets/img/custom-bar.png +0 -0
  298. /package/{lib → dist}/assets/img/dashboard-chart.png +0 -0
  299. /package/{lib → dist}/assets/img/group-completeness-chart.png +0 -0
  300. /package/{lib → dist}/assets/img/group_line.png +0 -0
  301. /package/{lib → dist}/assets/img/heat-map.png +0 -0
  302. /package/{lib → dist}/assets/img/horizontal-bar.png +0 -0
  303. /package/{lib → dist}/assets/img/horizontal-group-bar.png +0 -0
  304. /package/{lib → dist}/assets/img/line.png +0 -0
  305. /package/{lib → dist}/assets/img/map-bubble.png +0 -0
  306. /package/{lib → dist}/assets/img/map.png +0 -0
  307. /package/{lib → dist}/assets/img/mirror.png +0 -0
  308. /package/{lib → dist}/assets/img/number-card.png +0 -0
  309. /package/{lib → dist}/assets/img/pie.png +0 -0
  310. /package/{lib → dist}/assets/img/pivot-table.png +0 -0
  311. /package/{lib → dist}/assets/img/ring.png +0 -0
  312. /package/{lib → dist}/assets/img/scatter.png +0 -0
  313. /package/{lib → dist}/assets/img/stacked-horizontal-bar.png +0 -0
  314. /package/{lib → dist}/assets/img/treemap.png +0 -0
  315. /package/{lib → dist}/assets/img/trend-chart.png +0 -0
  316. /package/{lib → dist}/assets/img/world-map-bubble.png +0 -0
  317. /package/{lib → dist}/assets/img/world-map.png +0 -0
  318. /package/{lib → dist}/components/loading/index.css +0 -0
  319. /package/{lib/components/settings/widgets/select-table → dist/editor}/index.css +0 -0
  320. /package/{lib/components → dist}/settings/advance-bar-settings/index.js +0 -0
  321. /package/{lib/components → dist}/settings/bar-settings/index.js +0 -0
  322. /package/{lib/components → dist}/settings/basic-number-card/index.js +0 -0
  323. /package/{lib/components → dist}/settings/combination-settings/index.js +0 -0
  324. /package/{lib/components → dist}/settings/dashboard-settings/index.js +0 -0
  325. /package/{lib/components → dist}/settings/horizontal-bar-settings/index.js +0 -0
  326. /package/{lib/components → dist}/settings/pie-settings/index.js +0 -0
  327. /package/{lib/components → dist}/settings/table-settings/index.js +0 -0
  328. /package/{lib/components → dist}/settings/time-comparison-settings/index.js +0 -0
  329. /package/{lib/components → dist}/settings/widgets/font-settings/index.js +0 -0
  330. /package/{lib/components/settings/widgets/x-axios.js → dist/settings/widgets/select-table/index.css} +0 -0
@@ -0,0 +1,179 @@
1
+ import React, { useMemo, useCallback } from 'react';
2
+ import { Label, FormGroup } from 'reactstrap';
3
+ import DTableSelect from "dtable-ui-component/lib/DTableSelect";
4
+ import Switch from '../widgets/switch';
5
+ import Divider from '../widgets/divider';
6
+ import LabelColor from '../widgets/label-color';
7
+ import MinMaxSetting from '../widgets/min-max-setting';
8
+ import DisplayValuesSettings from '../widgets/display-values-settings';
9
+ import { eventStopPropagation } from '../../utils';
10
+ import { X_LABEL_POSITIONS, Y_LABEL_POSITIONS, LABEL_POSITION_TYPE_SHOW } from '../../constants';
11
+ import intl from '../../intl';
12
+ const StyleSettings = _ref => {
13
+ let {
14
+ chart,
15
+ xLabel,
16
+ yLabel,
17
+ onChange
18
+ } = _ref;
19
+ const xAxisLabelOptions = useMemo(() => {
20
+ return X_LABEL_POSITIONS.map(item => {
21
+ return {
22
+ value: item,
23
+ label: intl.get(LABEL_POSITION_TYPE_SHOW[item])
24
+ };
25
+ });
26
+ }, []);
27
+ const yAxisLabelOptions = useMemo(() => {
28
+ return Y_LABEL_POSITIONS.map(item => {
29
+ return {
30
+ value: item,
31
+ label: intl.get(LABEL_POSITION_TYPE_SHOW[item])
32
+ };
33
+ });
34
+ }, []);
35
+ const onAxisLabelShowChange = useCallback((event, labelKey) => {
36
+ eventStopPropagation(event);
37
+ const {
38
+ config
39
+ } = chart;
40
+ const value = config[labelKey];
41
+ onChange && onChange({
42
+ [labelKey]: !value
43
+ });
44
+ }, [chart, onChange]);
45
+ const onAxisLabelPositionChange = useCallback((option, positionKey) => {
46
+ const position = option.value;
47
+ const {
48
+ config
49
+ } = chart;
50
+ const oldValue = config[positionKey];
51
+ if (position === oldValue) return;
52
+ onChange && onChange({
53
+ [positionKey]: position
54
+ });
55
+ }, [chart, onChange]);
56
+ const onYAxisAutoRangeChange = useCallback(event => {
57
+ eventStopPropagation(event);
58
+ const {
59
+ config
60
+ } = chart;
61
+ const {
62
+ y_axis_auto_range
63
+ } = config;
64
+ onChange && onChange({
65
+ y_axis_auto_range: !y_axis_auto_range
66
+ });
67
+ }, [chart, onChange]);
68
+ const onYAxisMinChange = useCallback(min => {
69
+ const newMin = parseInt(min);
70
+ if (Number.isNaN(newMin)) return;
71
+ const {
72
+ config
73
+ } = chart;
74
+ const {
75
+ y_axis_min
76
+ } = config;
77
+ if (y_axis_min === newMin) return;
78
+ onChange && onChange({
79
+ y_axis_min: newMin
80
+ });
81
+ }, [chart, onChange]);
82
+ const onYAxisMaxChange = useCallback(max => {
83
+ const newMax = parseInt(max);
84
+ if (Number.isNaN(newMax)) return;
85
+ const {
86
+ config
87
+ } = chart;
88
+ const {
89
+ y_axis_max
90
+ } = config;
91
+ if (y_axis_max === newMax) return;
92
+ onChange && onChange({
93
+ y_axis_max: newMax
94
+ });
95
+ }, [chart, onChange]);
96
+ const onLabelColorChange = useCallback((event, color) => {
97
+ eventStopPropagation(event);
98
+ const {
99
+ config
100
+ } = chart;
101
+ const {
102
+ y_axis_label_color
103
+ } = config;
104
+ if (y_axis_label_color === color) return;
105
+ onChange && onChange({
106
+ y_axis_label_color: color
107
+ });
108
+ }, [chart, onChange]);
109
+ const onDisplayValueChange = useCallback(update => {
110
+ onChange && onChange(update);
111
+ }, [onChange]);
112
+ const {
113
+ config
114
+ } = chart;
115
+ const {
116
+ x_axis_show_label,
117
+ x_axis_label_position,
118
+ y_axis_show_label,
119
+ y_axis_label_position,
120
+ y_axis_auto_range = true,
121
+ y_axis_min,
122
+ y_axis_max,
123
+ y_axis_show_value,
124
+ label_font_size,
125
+ y_axis_label_color
126
+ } = config;
127
+ const xAxisLabelPosition = xAxisLabelOptions.find(option => option.value === x_axis_label_position) || xAxisLabelOptions[0];
128
+ const yAxisLabelPosition = yAxisLabelOptions.find(option => option.value === y_axis_label_position) || yAxisLabelOptions[0];
129
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(FormGroup, {
130
+ className: "sea-chart-parameter-item"
131
+ }, /*#__PURE__*/React.createElement(Label, null, intl.get(xLabel)), /*#__PURE__*/React.createElement(Switch, {
132
+ key: "x_axis_show_label",
133
+ checked: x_axis_show_label || false,
134
+ placeholder: intl.get('Display_title'),
135
+ onChange: event => onAxisLabelShowChange(event, 'x_axis_show_label')
136
+ }), x_axis_show_label && /*#__PURE__*/React.createElement(DTableSelect, {
137
+ value: xAxisLabelPosition,
138
+ options: xAxisLabelOptions,
139
+ onChange: option => onAxisLabelPositionChange(option, 'x_axis_label_position')
140
+ })), /*#__PURE__*/React.createElement(Divider, null), /*#__PURE__*/React.createElement(FormGroup, {
141
+ className: "sea-chart-parameter-item"
142
+ }, /*#__PURE__*/React.createElement(Label, null, intl.get(yLabel)), /*#__PURE__*/React.createElement(Switch, {
143
+ key: "y_axis_show_label",
144
+ checked: y_axis_show_label || false,
145
+ placeholder: intl.get('Display_title'),
146
+ onChange: event => onAxisLabelShowChange(event, 'y_axis_show_label')
147
+ }), y_axis_show_label && /*#__PURE__*/React.createElement("div", {
148
+ className: "sea-chart-parameter-container"
149
+ }, /*#__PURE__*/React.createElement(DTableSelect, {
150
+ value: yAxisLabelPosition,
151
+ classNamePrefix: "chart-y-axis-label-position",
152
+ options: yAxisLabelOptions,
153
+ onChange: option => onAxisLabelPositionChange(option, 'y_axis_label_position')
154
+ })), /*#__PURE__*/React.createElement(Switch, {
155
+ key: "y_axis_auto_range",
156
+ checked: y_axis_auto_range,
157
+ placeholder: intl.get('Auto_range'),
158
+ onChange: onYAxisAutoRangeChange
159
+ }), !y_axis_auto_range && /*#__PURE__*/React.createElement(MinMaxSetting, {
160
+ min: y_axis_min,
161
+ max: y_axis_max,
162
+ onMinChange: onYAxisMinChange,
163
+ onMaxChange: onYAxisMaxChange
164
+ })), /*#__PURE__*/React.createElement(Divider, null), /*#__PURE__*/React.createElement(LabelColor, {
165
+ labelColor: y_axis_label_color,
166
+ onChange: onLabelColorChange
167
+ }), /*#__PURE__*/React.createElement(Divider, null), /*#__PURE__*/React.createElement(DisplayValuesSettings, {
168
+ isShowValueKey: "y_axis_show_value",
169
+ isShowValue: y_axis_show_value,
170
+ fontSizeKey: "label_font_size",
171
+ fontSize: label_font_size,
172
+ onChange: onDisplayValueChange
173
+ }));
174
+ };
175
+ StyleSettings.defaultProps = {
176
+ xLabel: 'X_axis',
177
+ yLabel: 'Y_axis'
178
+ };
179
+ export default StyleSettings;
@@ -0,0 +1,126 @@
1
+ import React, { useCallback, useMemo } from 'react';
2
+ import { FormGroup } from 'reactstrap';
3
+ import { COLUMNS_ICON_CONFIG, getTableById } from 'dtable-utils';
4
+ import DTableSelect from "dtable-ui-component/lib/DTableSelect";
5
+ import CommonDataSettings from '../widgets/common-data-settings';
6
+ import { ChartUtils } from '../../utils';
7
+ import { CHART_SUMMARY_SHOW, CHART_SUMMARY_CALCULATION_METHOD, CHART_SUPPORT_COLUMNS, BASIC_NUMBER_CARD_CALCULATION_METHOD } from '../../constants';
8
+ import intl from '../../intl';
9
+ const DataSettings = _ref => {
10
+ let {
11
+ tables,
12
+ chart,
13
+ onChange
14
+ } = _ref;
15
+ const summaryMethodsOptions = useMemo(() => {
16
+ const numberCardSummaryMethod = [BASIC_NUMBER_CARD_CALCULATION_METHOD, ...CHART_SUMMARY_CALCULATION_METHOD];
17
+ return numberCardSummaryMethod.map(method => {
18
+ return {
19
+ label: /*#__PURE__*/React.createElement("span", {
20
+ className: "select-option-name"
21
+ }, intl.get(CHART_SUMMARY_SHOW[method])),
22
+ value: method
23
+ };
24
+ });
25
+ }, []);
26
+ const selectedTable = useMemo(() => {
27
+ const {
28
+ table_id: selectedTableId
29
+ } = chart.config;
30
+ return getTableById(tables, selectedTableId);
31
+ }, [chart.config, tables]);
32
+ const validColumns = useMemo(() => {
33
+ const columns = selectedTable && Array.isArray(selectedTable.columns) ? selectedTable.columns : [];
34
+ if (!columns || !Array.isArray(columns)) return [];
35
+ return columns.filter(column => CHART_SUPPORT_COLUMNS.includes(column.type));
36
+ }, [selectedTable]);
37
+ const numericColumns = useMemo(() => {
38
+ return validColumns.filter(column => ChartUtils.isNumericSummaryColumn(column));
39
+ }, [validColumns]);
40
+ const numericColumnOptions = useMemo(() => {
41
+ const options = numericColumns.map(column => {
42
+ return {
43
+ value: column,
44
+ label: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", {
45
+ className: "sea-chart-column-icon"
46
+ }, /*#__PURE__*/React.createElement("i", {
47
+ className: COLUMNS_ICON_CONFIG[column.type]
48
+ })), /*#__PURE__*/React.createElement("span", {
49
+ className: 'select-module select-module-name ml-0'
50
+ }, column.name))
51
+ };
52
+ });
53
+ return [{
54
+ value: {
55
+ key: 'Groupby_null'
56
+ },
57
+ label: /*#__PURE__*/React.createElement("span", {
58
+ className: 'select-module select-module-name null-option-name ml-0'
59
+ }, intl.get('Select_a_column')),
60
+ style: {
61
+ color: 'rgba(0, 0, 0, .25)'
62
+ }
63
+ }, ...options];
64
+ }, [numericColumns]);
65
+ const onSelectColumnChange = useCallback(option => {
66
+ const {
67
+ config
68
+ } = chart;
69
+ const {
70
+ numeric_column_key
71
+ } = config;
72
+ const newColumnKey = option.value.key;
73
+ if (numeric_column_key === newColumnKey) return;
74
+ onChange && onChange({
75
+ numeric_column_key: newColumnKey
76
+ });
77
+ }, [chart, onChange]);
78
+ const onSelectSummaryMethod = useCallback(option => {
79
+ const {
80
+ config
81
+ } = chart;
82
+ const {
83
+ summary_method
84
+ } = config;
85
+ const newSummaryMethod = option.value;
86
+ if (newSummaryMethod === summary_method) return;
87
+ onChange && onChange({
88
+ summary_method: newSummaryMethod
89
+ });
90
+ }, [chart, onChange]);
91
+ const getSelectedMethodOption = useCallback((method, summaryMethodsOptions) => {
92
+ return summaryMethodsOptions.find(m => m.value === method) || summaryMethodsOptions[0];
93
+ }, []);
94
+ const renderSummaryMethod = useCallback(() => {
95
+ const {
96
+ summary_method
97
+ } = chart.config;
98
+ const selectedMethodOption = getSelectedMethodOption(summary_method, summaryMethodsOptions);
99
+ return /*#__PURE__*/React.createElement("div", {
100
+ className: "dtable-plugin-stat-parameter-item"
101
+ }, /*#__PURE__*/React.createElement("label", null, intl.get('Summary_method')), /*#__PURE__*/React.createElement(DTableSelect, {
102
+ value: selectedMethodOption,
103
+ onChange: onSelectSummaryMethod,
104
+ options: summaryMethodsOptions
105
+ }));
106
+ }, [chart, getSelectedMethodOption, onSelectSummaryMethod, summaryMethodsOptions]);
107
+ const {
108
+ config
109
+ } = chart;
110
+ const selectedColumnOption = numericColumnOptions.find(option => option.value.key === config.numeric_column_key) || numericColumnOptions[0];
111
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(CommonDataSettings, {
112
+ chart: chart,
113
+ tables: tables,
114
+ onChange: onChange
115
+ }), /*#__PURE__*/React.createElement(FormGroup, {
116
+ className: "sea-chart-parameter-item"
117
+ }, /*#__PURE__*/React.createElement("label", null, intl.get('Statistic_field')), /*#__PURE__*/React.createElement(DTableSelect, {
118
+ value: selectedColumnOption,
119
+ options: numericColumnOptions,
120
+ placeholder: intl.get('Select_a_column'),
121
+ onChange: onSelectColumnChange
122
+ })), /*#__PURE__*/React.createElement(FormGroup, {
123
+ className: "sea-chart-parameter-item"
124
+ }, renderSummaryMethod()));
125
+ };
126
+ export default DataSettings;
@@ -0,0 +1,42 @@
1
+ import React, { useCallback, useState } from 'react';
2
+ import { Input, FormGroup } from 'reactstrap';
3
+ import intl from '../../intl';
4
+ const StyleSettings = _ref => {
5
+ let {
6
+ chart,
7
+ onChange
8
+ } = _ref;
9
+ const [name, setName] = useState(chart.config.name || '');
10
+ const onChangeName = useCallback(event => {
11
+ const newName = event.target.value;
12
+ if (newName === name) return;
13
+ setName(newName);
14
+ }, [name]);
15
+ const onSaveName = useCallback(() => {
16
+ const oldName = chart.config.name || '';
17
+ if (oldName === name) return;
18
+ onChange && onChange({
19
+ name
20
+ });
21
+ }, [name, chart, onChange]);
22
+ const onKeyDown = useCallback(e => {
23
+ if (e.key === 'Enter') {
24
+ e.preventDefault();
25
+ e.target.blur();
26
+ }
27
+ }, []);
28
+ const {
29
+ config
30
+ } = chart;
31
+ return /*#__PURE__*/React.createElement(FormGroup, {
32
+ className: "sea-chart-parameter-item"
33
+ }, /*#__PURE__*/React.createElement("label", null, intl.get('Label')), /*#__PURE__*/React.createElement(Input, {
34
+ type: "text",
35
+ value: name,
36
+ placeholder: config.name || '',
37
+ onBlur: onSaveName,
38
+ onChange: onChangeName,
39
+ onKeyDown: onKeyDown
40
+ }));
41
+ };
42
+ export default StyleSettings;
@@ -0,0 +1,279 @@
1
+ import React, { useCallback } from 'react';
2
+ import { CellType, DATE_COLUMN_OPTIONS } from 'dtable-utils';
3
+ import CommonDataSettings from '../widgets/common-data-settings';
4
+ import Divider from '../widgets/divider';
5
+ import GroupBy from '../widgets/group-by';
6
+ import Switch from '../widgets/switch';
7
+ import SummarySettings from '../widgets/summary-settings';
8
+ import { eventStopPropagation } from '../../utils';
9
+ import { CHART_SUMMARY_TYPE, CHART_Y_GROUP_TYPE, CHART_SUMMARY_CALCULATION_METHOD, GEOLOCATION_FORMAT_CITY, GEOLOCATION_FORMAT_MAP, COMBINATION_POSITION } from '../../constants';
10
+ import intl from '../../intl';
11
+ const DataSettings = _ref => {
12
+ let {
13
+ chart,
14
+ tables,
15
+ xLabel,
16
+ onChange
17
+ } = _ref;
18
+ const onXAxisColumnChange = useCallback(option => {
19
+ const {
20
+ config
21
+ } = chart;
22
+ const {
23
+ x_axis_column_key
24
+ } = config;
25
+ const column = option.value;
26
+ const {
27
+ key: newXAxisColumnKey,
28
+ type
29
+ } = column;
30
+ const validValue = newXAxisColumnKey === 'Groupby_null' ? null : newXAxisColumnKey;
31
+ if (x_axis_column_key === validValue) return;
32
+ let update = {
33
+ x_axis_column_key: validValue
34
+ };
35
+ if (!validValue) {
36
+ update['x_axis_date_granularity'] = null;
37
+ update['x_axis_geolocation_granularity'] = null;
38
+ } else {
39
+ if (DATE_COLUMN_OPTIONS.includes(type)) {
40
+ update['x_axis_date_granularity'] = CHART_SUMMARY_TYPE.MONTH;
41
+ update['x_axis_geolocation_granularity'] = null;
42
+ } else if (type === CellType.GEOLOCATION) {
43
+ const {
44
+ geo_format
45
+ } = column.data || {};
46
+ if (geo_format === GEOLOCATION_FORMAT_MAP.PROVINCE) {
47
+ update['x_axis_geolocation_granularity'] = GEOLOCATION_FORMAT_MAP.PROVINCE;
48
+ } else if (geo_format === GEOLOCATION_FORMAT_MAP.PROVINCE_CITY) {
49
+ update['x_axis_geolocation_granularity'] = GEOLOCATION_FORMAT_CITY;
50
+ } else if (geo_format === GEOLOCATION_FORMAT_MAP.GEOLOCATION || !geo_format) {
51
+ update['x_axis_geolocation_granularity'] = 'district';
52
+ } else {
53
+ update['x_axis_geolocation_granularity'] = null;
54
+ }
55
+ update['x_axis_date_granularity'] = null;
56
+ }
57
+ }
58
+ onChange && onChange(update);
59
+ }, [chart, onChange]);
60
+ const onGroupbyDateGranularityChange = useCallback(option => {
61
+ const {
62
+ config
63
+ } = chart;
64
+ const {
65
+ x_axis_date_granularity
66
+ } = config;
67
+ const value = option.value;
68
+ if (value === x_axis_date_granularity) return;
69
+ onChange && onChange({
70
+ x_axis_date_granularity: value
71
+ });
72
+ }, [chart, onChange]);
73
+ const onGroupbyGeolocationGranularityChange = useCallback(option => {
74
+ const {
75
+ config
76
+ } = chart;
77
+ const {
78
+ x_axis_geolocation_granularity
79
+ } = config;
80
+ const value = option.value;
81
+ if (value === x_axis_geolocation_granularity) return;
82
+ onChange && onChange({
83
+ x_axis_geolocation_granularity: value
84
+ });
85
+ }, [chart, onChange]);
86
+ const onIncludeEmptyChange = useCallback(event => {
87
+ eventStopPropagation(event);
88
+ const {
89
+ config
90
+ } = chart;
91
+ const {
92
+ x_axis_include_empty_cells
93
+ } = config;
94
+ onChange && onChange({
95
+ x_axis_include_empty_cells: !x_axis_include_empty_cells
96
+ });
97
+ }, [chart, onChange]);
98
+ const onChangeSummaryType = useCallback((option, position) => {
99
+ const {
100
+ config
101
+ } = chart;
102
+ let {
103
+ y_axis_right_summary_type,
104
+ y_axis_left_summary_type,
105
+ y_axis_right_summary_column,
106
+ y_axis_left_summary_column,
107
+ y_axis_left_group_by_multiple_numeric_column,
108
+ y_axis_left_summary_method,
109
+ y_axis_left_group_by_numeric_columns
110
+ } = config;
111
+ let newSummaryType = option === CHART_Y_GROUP_TYPE.COUNT ? CHART_SUMMARY_TYPE.COUNT : CHART_SUMMARY_TYPE.ADVANCED;
112
+ if (position === COMBINATION_POSITION.LEFT) {
113
+ if (newSummaryType === CHART_SUMMARY_TYPE.COUNT && y_axis_left_summary_type === CHART_SUMMARY_TYPE.COUNT) return;
114
+ if (option === CHART_Y_GROUP_TYPE.SINGLE_NUMERIC_COLUMN && !y_axis_left_group_by_multiple_numeric_column && y_axis_left_summary_type !== CHART_SUMMARY_TYPE.COUNT) return;
115
+ if (option === CHART_Y_GROUP_TYPE.MULTIPLE_NUMERIC_COLUMN && y_axis_left_group_by_multiple_numeric_column) return;
116
+ if (option === CHART_Y_GROUP_TYPE.COUNT) {
117
+ y_axis_left_summary_column = null;
118
+ y_axis_left_summary_method = 'sum';
119
+ y_axis_left_group_by_multiple_numeric_column = false;
120
+ y_axis_left_group_by_numeric_columns = [];
121
+ }
122
+ if (option === CHART_Y_GROUP_TYPE.SINGLE_NUMERIC_COLUMN) {
123
+ y_axis_left_summary_column = null;
124
+ y_axis_left_summary_method = CHART_SUMMARY_CALCULATION_METHOD[0];
125
+ y_axis_left_group_by_multiple_numeric_column = false;
126
+ y_axis_left_group_by_numeric_columns = [];
127
+ }
128
+ if (option === CHART_Y_GROUP_TYPE.MULTIPLE_NUMERIC_COLUMN) {
129
+ y_axis_left_summary_column = null;
130
+ y_axis_left_summary_method = CHART_SUMMARY_CALCULATION_METHOD[0];
131
+ y_axis_left_group_by_multiple_numeric_column = true;
132
+ y_axis_left_group_by_numeric_columns = [];
133
+ }
134
+ onChange && onChange({
135
+ y_axis_left_summary_type: newSummaryType,
136
+ y_axis_left_summary_column,
137
+ y_axis_left_summary_method,
138
+ y_axis_left_group_by_multiple_numeric_column,
139
+ y_axis_left_group_by_numeric_columns
140
+ });
141
+ return;
142
+ }
143
+ if (y_axis_right_summary_type === newSummaryType) return;
144
+ y_axis_right_summary_type = newSummaryType;
145
+ let y_axis_right_summary_method = CHART_SUMMARY_CALCULATION_METHOD[0];
146
+ if (newSummaryType === CHART_SUMMARY_TYPE.COUNT) {
147
+ y_axis_right_summary_column = null;
148
+ y_axis_right_summary_method = 'sum';
149
+ }
150
+ onChange && onChange({
151
+ y_axis_right_summary_type: newSummaryType,
152
+ y_axis_right_summary_column,
153
+ y_axis_right_summary_method
154
+ });
155
+ }, [chart, onChange]);
156
+ const onSelectSummaryColumn = useCallback((option, position) => {
157
+ const {
158
+ config
159
+ } = chart;
160
+ let {
161
+ y_axis_right_summary_column,
162
+ y_axis_left_summary_column,
163
+ y_axis_left_summary_method,
164
+ y_axis_right_summary_method
165
+ } = config;
166
+ const newSummaryColumnKey = option;
167
+ if (position === COMBINATION_POSITION.LEFT) {
168
+ if (y_axis_left_summary_column === newSummaryColumnKey) return;
169
+ if (!y_axis_left_summary_method) {
170
+ y_axis_left_summary_method = 'Sum';
171
+ }
172
+ onChange && onChange({
173
+ y_axis_left_summary_column: newSummaryColumnKey,
174
+ y_axis_left_summary_method
175
+ });
176
+ return;
177
+ }
178
+ if (y_axis_right_summary_column === newSummaryColumnKey) return;
179
+ if (!y_axis_right_summary_method) {
180
+ y_axis_right_summary_method = 'Sum';
181
+ }
182
+ onChange && onChange({
183
+ y_axis_right_summary_column: newSummaryColumnKey,
184
+ y_axis_right_summary_method
185
+ });
186
+ }, [chart, onChange]);
187
+ const onSelectSummaryMethod = useCallback((option, position) => {
188
+ const {
189
+ config
190
+ } = chart;
191
+ const {
192
+ y_axis_right_summary_method,
193
+ y_axis_left_summary_method
194
+ } = config;
195
+ const newSummaryColumnMethod = option;
196
+ if (position === COMBINATION_POSITION.LEFT) {
197
+ if (y_axis_left_summary_method !== newSummaryColumnMethod) {
198
+ onChange && onChange({
199
+ y_axis_left_summary_method: newSummaryColumnMethod
200
+ });
201
+ }
202
+ return;
203
+ }
204
+ if (y_axis_right_summary_method === newSummaryColumnMethod) return;
205
+ onChange && onChange({
206
+ y_axis_right_summary_method: newSummaryColumnMethod
207
+ });
208
+ }, [chart, onChange]);
209
+ const {
210
+ config
211
+ } = chart;
212
+ const {
213
+ table_id,
214
+ x_axis_column_key,
215
+ x_axis_date_granularity,
216
+ x_axis_geolocation_granularity,
217
+ x_axis_include_empty_cells,
218
+ y_axis_right_summary_type,
219
+ y_axis_right_summary_method,
220
+ y_axis_right_summary_column,
221
+ y_axis_left_summary_type,
222
+ y_axis_left_summary_method,
223
+ y_axis_left_summary_column
224
+ } = config;
225
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(CommonDataSettings, {
226
+ chart: chart,
227
+ tables: tables,
228
+ onChange: onChange
229
+ }), /*#__PURE__*/React.createElement(GroupBy, {
230
+ tables: tables,
231
+ className: "selected-x-axis",
232
+ label: intl.get(xLabel),
233
+ selectedTableId: table_id,
234
+ selectedColumnKey: x_axis_column_key,
235
+ selectedDateGranularity: x_axis_date_granularity,
236
+ selectedGeolocationGranularity: x_axis_geolocation_granularity,
237
+ onGroupByChange: onXAxisColumnChange,
238
+ onGroupbyDateGranularityChange: onGroupbyDateGranularityChange,
239
+ onGroupbyGeolocationGranularityChange: onGroupbyGeolocationGranularityChange
240
+ }), /*#__PURE__*/React.createElement(Switch, {
241
+ key: "x_axis_include_empty_cells",
242
+ checked: x_axis_include_empty_cells,
243
+ placeholder: intl.get('Include_empty'),
244
+ onChange: onIncludeEmptyChange
245
+ }), /*#__PURE__*/React.createElement(Divider, {
246
+ className: "mt-4"
247
+ }), /*#__PURE__*/React.createElement(SummarySettings, {
248
+ chartType: 'combination_chart',
249
+ label: intl.get('Y-axis(left side)'),
250
+ config: config,
251
+ chart: chart,
252
+ summaryType: y_axis_left_summary_type,
253
+ summaryMethod: y_axis_left_summary_method,
254
+ summaryColumn: y_axis_left_summary_column,
255
+ onChangeSummaryType: option => onChangeSummaryType(option, COMBINATION_POSITION.LEFT),
256
+ onSelectSummaryColumn: option => onSelectSummaryColumn(option, COMBINATION_POSITION.LEFT),
257
+ onSelectSummaryMethod: option => onSelectSummaryMethod(option, COMBINATION_POSITION.LEFT),
258
+ useMultipleSummaryColumns: true,
259
+ tables: tables,
260
+ onChange: onChange
261
+ }), /*#__PURE__*/React.createElement(SummarySettings, {
262
+ chartType: 'combination_chart',
263
+ label: intl.get('Y-axis(right side)'),
264
+ config: config,
265
+ summaryType: y_axis_right_summary_type,
266
+ summaryMethod: y_axis_right_summary_method,
267
+ summaryColumn: y_axis_right_summary_column,
268
+ onChangeSummaryType: option => onChangeSummaryType(option, COMBINATION_POSITION.RIGHT),
269
+ onSelectSummaryColumn: option => onSelectSummaryColumn(option, COMBINATION_POSITION.RIGHT),
270
+ onSelectSummaryMethod: option => onSelectSummaryMethod(option, COMBINATION_POSITION.RIGHT),
271
+ tables: tables,
272
+ chart: chart,
273
+ onChange: onChange
274
+ }));
275
+ };
276
+ DataSettings.defaultProps = {
277
+ xLabel: 'X_axis'
278
+ };
279
+ export default DataSettings;