dtable-statistic 4.2.2 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (219) hide show
  1. package/es/api/dtable-db-api.js +31 -37
  2. package/es/calculator/base-calculator.js +49 -99
  3. package/es/calculator/basic-chart-calculator.js +335 -559
  4. package/es/calculator/combination-calculator.js +231 -299
  5. package/es/calculator/compare-bar-calculator.js +184 -281
  6. package/es/calculator/completeness-calculator.js +203 -288
  7. package/es/calculator/copy-value.js +18 -18
  8. package/es/calculator/dashboard-calculator.js +68 -137
  9. package/es/calculator/heat-map-calculator.js +139 -220
  10. package/es/calculator/horizontal-bar-calculator.js +64 -93
  11. package/es/calculator/index.js +53 -69
  12. package/es/calculator/map-calculator.js +98 -174
  13. package/es/calculator/mirror-calculator.js +137 -216
  14. package/es/calculator/number-card-calculator.js +58 -126
  15. package/es/calculator/pivot-table-calculator.js +750 -792
  16. package/es/calculator/scatter-calculator.js +72 -140
  17. package/es/calculator/thread-manager.js +48 -67
  18. package/es/calculator/trend-calculator.js +107 -191
  19. package/es/calculator/workers/basic-chart-calculator-worker.js +194 -165
  20. package/es/calculator/workers/calculator.worker.js +22 -6
  21. package/es/calculator/workers/card-calculator-worker.js +16 -14
  22. package/es/calculator/workers/combination-calculator-worker.js +128 -135
  23. package/es/calculator/workers/compare-bar-chart-calculator-worker.js +80 -96
  24. package/es/calculator/workers/completeness-calculator-worker.js +56 -49
  25. package/es/calculator/workers/dashboard-calculator-worker.js +24 -22
  26. package/es/calculator/workers/mirror-calculator-worker.js +52 -52
  27. package/es/calculator/workers/pivot-table-calculator-worker.js +247 -230
  28. package/es/calculator/workers/scatter-calculator-worker.js +34 -32
  29. package/es/calculator/workers/trend-calculator-worker.js +33 -29
  30. package/es/calculator/world-map-calculator.js +120 -197
  31. package/es/components/common-add-tool.js +7 -5
  32. package/es/components/dialog/chart-addition-edit-dialog.js +67 -77
  33. package/es/components/dialog/chart-addition-widgets/chart-selector.js +57 -67
  34. package/es/components/dialog/color-theme-dialog.js +34 -47
  35. package/es/components/dialog/delete-confirmation-dialog.js +7 -5
  36. package/es/components/dialog/enlarged-chart-dialog.js +68 -81
  37. package/es/components/dialog/new-table-dialog.js +62 -80
  38. package/es/components/dialog/new-view-dialog.js +50 -62
  39. package/es/components/dialog/rename-view-dialog.js +49 -58
  40. package/es/components/dialog/statistic-record-dialog/index.js +233 -231
  41. package/es/components/dialog/statistic-types-dialog/index.js +40 -49
  42. package/es/components/dialog/table-select-dialog.js +61 -70
  43. package/es/components/dropdown-menu/statistic-dropdown-menu.js +129 -142
  44. package/es/components/dtable-popover.js +62 -81
  45. package/es/components/dtable-search-input.js +89 -99
  46. package/es/components/dtable-select.js +55 -74
  47. package/es/components/icon.js +5 -3
  48. package/es/components/loading.js +1 -1
  49. package/es/components/modal-portal.js +15 -32
  50. package/es/components/popover/color-rules/color-rule.js +137 -141
  51. package/es/components/popover/color-rules/index.js +58 -66
  52. package/es/components/popover/color-rules/rule-filters/filter.js +124 -124
  53. package/es/components/popover/color-rules/rule-filters/index.js +50 -58
  54. package/es/components/popover/color-rules/rule-filters/number-input.js +42 -57
  55. package/es/components/popover/color-rules-popover.js +117 -121
  56. package/es/components/popover/color-selector-popover.js +60 -70
  57. package/es/components/seatable-radio/index.js +2 -2
  58. package/es/components/select/option-group.js +139 -157
  59. package/es/components/select/option.js +26 -40
  60. package/es/components/select/select.js +97 -112
  61. package/es/components/toast/alert.js +65 -80
  62. package/es/components/toast/index.js +1 -1
  63. package/es/components/toast/toast.js +76 -103
  64. package/es/components/toast/toastManager.js +57 -93
  65. package/es/components/toast/toaster.js +58 -56
  66. package/es/constants/color-rules.js +8 -5
  67. package/es/constants/dtable-select-style.js +44 -48
  68. package/es/constants/event-types.js +4 -4
  69. package/es/constants/index.js +328 -242
  70. package/es/constants/map.js +2 -2
  71. package/es/constants/model.js +20 -20
  72. package/es/constants/regions.js +1 -1
  73. package/es/constants/zIndexes.js +1 -1
  74. package/es/custom-g2.js +11 -11
  75. package/es/dashboard.js +343 -333
  76. package/es/desktop-dashboard.js +217 -224
  77. package/es/index.js +45 -58
  78. package/es/locale/index.js +3 -3
  79. package/es/locale/lang/de.js +1 -1
  80. package/es/locale/lang/en.js +7 -7
  81. package/es/locale/lang/fr.js +1 -1
  82. package/es/locale/lang/zh_CN.js +1 -1
  83. package/es/mobile-dashboard.js +76 -89
  84. package/es/model/bar-group.js +34 -44
  85. package/es/model/bar.js +26 -36
  86. package/es/model/base-model.js +11 -12
  87. package/es/model/basic-number-card.js +10 -20
  88. package/es/model/collaborators.js +10 -11
  89. package/es/model/combination.js +32 -42
  90. package/es/model/compare-bar.js +30 -40
  91. package/es/model/completeness-group.js +19 -29
  92. package/es/model/completeness.js +14 -24
  93. package/es/model/custom-bar.js +14 -24
  94. package/es/model/dashboard.js +9 -19
  95. package/es/model/generic-model.js +187 -197
  96. package/es/model/heat-map.js +16 -26
  97. package/es/model/horizontal-bar-group.js +32 -42
  98. package/es/model/horizontal-bar.js +26 -36
  99. package/es/model/index.js +31 -3
  100. package/es/model/map.js +20 -30
  101. package/es/model/mirror.js +15 -25
  102. package/es/model/pie.js +21 -31
  103. package/es/model/ring.js +23 -33
  104. package/es/model/scatter.js +11 -21
  105. package/es/model/statistic-dashboard.js +7 -8
  106. package/es/model/table.js +19 -29
  107. package/es/model/trend.js +15 -25
  108. package/es/model/world-map.js +17 -27
  109. package/es/service/chart-service.js +69 -65
  110. package/es/service/dashboard-service.js +421 -419
  111. package/es/service/map-json.js +112 -132
  112. package/es/stat-editor/chart-name-editor.js +44 -58
  113. package/es/stat-editor/index.js +59 -70
  114. package/es/stat-editor/stat-settings/advance-chart-settings/basic-number-card-settings.js +93 -98
  115. package/es/stat-editor/stat-settings/advance-chart-settings/combination-settings.js +246 -248
  116. package/es/stat-editor/stat-settings/advance-chart-settings/dashboard-chart-settings.js +127 -126
  117. package/es/stat-editor/stat-settings/advance-chart-settings/geo-granularity-settings.js +5 -3
  118. package/es/stat-editor/stat-settings/advance-chart-settings/heat-map-settings.js +78 -90
  119. package/es/stat-editor/stat-settings/advance-chart-settings/index.js +146 -150
  120. package/es/stat-editor/stat-settings/advance-chart-settings/map-settings.js +88 -98
  121. package/es/stat-editor/stat-settings/advance-chart-settings/mirror-settings.js +100 -118
  122. package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/combination-style-setting.js +161 -148
  123. package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/heat-map-settings.js +58 -66
  124. package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/map-setting.js +58 -60
  125. package/es/stat-editor/stat-settings/advance-chart-settings/summary-settings.js +152 -148
  126. package/es/stat-editor/stat-settings/advance-chart-settings/trend-chart-settings.js +101 -105
  127. package/es/stat-editor/stat-settings/advance-chart-settings/world-map-settings.js +81 -91
  128. package/es/stat-editor/stat-settings/basic-chart-settings/advance-bar-chart-settings.js +110 -122
  129. package/es/stat-editor/stat-settings/basic-chart-settings/bar-settings.js +101 -113
  130. package/es/stat-editor/stat-settings/basic-chart-settings/completeness-chart-settings.js +130 -120
  131. package/es/stat-editor/stat-settings/basic-chart-settings/custom-bar-settings.js +88 -102
  132. package/es/stat-editor/stat-settings/basic-chart-settings/groupby-settings.js +88 -102
  133. package/es/stat-editor/stat-settings/basic-chart-settings/horizontal-axis-group-settings.js +200 -194
  134. package/es/stat-editor/stat-settings/basic-chart-settings/horizontal-bar-settings.js +98 -110
  135. package/es/stat-editor/stat-settings/basic-chart-settings/horizontal-group-chart-settings.js +106 -118
  136. package/es/stat-editor/stat-settings/basic-chart-settings/index.js +212 -223
  137. package/es/stat-editor/stat-settings/basic-chart-settings/pie-settings.js +109 -119
  138. package/es/stat-editor/stat-settings/basic-chart-settings/pivot-table-settings.js +329 -319
  139. package/es/stat-editor/stat-settings/basic-chart-settings/scatter-settings.js +82 -90
  140. package/es/stat-editor/stat-settings/basic-chart-settings/stack-item-settings.js +58 -65
  141. package/es/stat-editor/stat-settings/basic-chart-settings/stacks-settings.js +126 -116
  142. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/bar-chart-style-setting.js +201 -182
  143. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/completeness-style.js +79 -79
  144. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/horizontal-bar-chart-style.js +196 -175
  145. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/label-font-size-editor.js +35 -50
  146. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/pie-chart-style-settings.js +180 -147
  147. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/time-compare-style.js +31 -40
  148. package/es/stat-editor/stat-settings/basic-chart-settings/summary-method-setting.js +56 -67
  149. package/es/stat-editor/stat-settings/basic-chart-settings/summary-settings.js +60 -69
  150. package/es/stat-editor/stat-settings/basic-chart-settings/time-comparison-settings.js +165 -158
  151. package/es/stat-editor/stat-settings/basic-chart-settings/timer-picker.js +61 -74
  152. package/es/stat-editor/stat-settings/basic-chart-settings/y-axis-group-settings.js +199 -193
  153. package/es/stat-editor/stat-settings/color-setting/color-group-selector.js +25 -38
  154. package/es/stat-editor/stat-settings/color-setting/color-picker.js +79 -86
  155. package/es/stat-editor/stat-settings/color-setting/color-use-type-selector.js +138 -120
  156. package/es/stat-editor/stat-settings/map/map-level.js +31 -43
  157. package/es/stat-editor/stat-settings/map/map-province-city.js +82 -83
  158. package/es/stat-editor/stat-settings/public-setting/axis-label-position-setting.js +48 -50
  159. package/es/stat-editor/stat-settings/public-setting/base-settings.js +96 -96
  160. package/es/stat-editor/stat-settings/public-setting/calender.js +69 -75
  161. package/es/stat-editor/stat-settings/public-setting/column-settings.js +5 -3
  162. package/es/stat-editor/stat-settings/public-setting/custom-title-setting.js +36 -41
  163. package/es/stat-editor/stat-settings/public-setting/data-sort-setting.js +37 -41
  164. package/es/stat-editor/stat-settings/public-setting/ind-toggle-setting.js +25 -38
  165. package/es/stat-editor/stat-settings/public-setting/min-max-setting.js +40 -52
  166. package/es/stat-editor/stat-settings/public-setting/numeric-summary-item.js +90 -93
  167. package/es/stat-editor/stat-settings/public-setting/toggle-setting.js +23 -36
  168. package/es/stat-editor/stat-settings/public-setting/type-settings/index.js +39 -44
  169. package/es/stat-list/chart-preview.js +85 -98
  170. package/es/stat-list/index.js +170 -178
  171. package/es/stat-view/area-chart.js +282 -274
  172. package/es/stat-view/bar-chart.js +300 -292
  173. package/es/stat-view/base-chart.js +58 -52
  174. package/es/stat-view/basic-number-card.js +115 -168
  175. package/es/stat-view/combination-chart.js +298 -334
  176. package/es/stat-view/compare-chart.js +256 -254
  177. package/es/stat-view/completeness-chart.js +194 -206
  178. package/es/stat-view/custom-bar.js +221 -223
  179. package/es/stat-view/dashboard-chart.js +122 -180
  180. package/es/stat-view/heat-map.js +268 -294
  181. package/es/stat-view/horizontal-bar-chart.js +291 -281
  182. package/es/stat-view/index.js +136 -152
  183. package/es/stat-view/line-chart.js +267 -265
  184. package/es/stat-view/map.js +246 -246
  185. package/es/stat-view/mirror.js +141 -152
  186. package/es/stat-view/pie-chart.js +143 -156
  187. package/es/stat-view/pivot-table/index.js +113 -118
  188. package/es/stat-view/pivot-table/one-dimension-table-no-numeric-columns.js +104 -102
  189. package/es/stat-view/pivot-table/one-dimension-table-with-numeric-columns.js +116 -118
  190. package/es/stat-view/pivot-table/pivot-table-display-name.js +96 -95
  191. package/es/stat-view/pivot-table/two-dimension-table.js +238 -229
  192. package/es/stat-view/ring-chart.js +189 -200
  193. package/es/stat-view/scatter-chart.js +162 -213
  194. package/es/stat-view/treemap-chart.js +136 -200
  195. package/es/stat-view/trend-chart.js +137 -183
  196. package/es/stat-view/world-map.js +233 -243
  197. package/es/tabs/index.js +164 -169
  198. package/es/tabs/tab.js +101 -116
  199. package/es/utils/basic-chart-utils.js +7 -9
  200. package/es/utils/cell-format.js +48 -51
  201. package/es/utils/cell-value.js +1 -1
  202. package/es/utils/collaborator.js +15 -14
  203. package/es/utils/color-utils.js +48 -37
  204. package/es/utils/column-utils.js +47 -33
  205. package/es/utils/column.js +1 -1
  206. package/es/utils/common-utils.js +111 -117
  207. package/es/utils/date-format.js +17 -17
  208. package/es/utils/export-table-utils.js +507 -396
  209. package/es/utils/index.js +6 -6
  210. package/es/utils/map.js +30 -34
  211. package/es/utils/model.js +3 -5
  212. package/es/utils/object.js +4 -4
  213. package/es/utils/pivot-table.js +20 -20
  214. package/es/utils/row-utils.js +41 -33
  215. package/es/utils/search.js +18 -20
  216. package/es/utils/sql-utils.js +132 -98
  217. package/es/utils/stat-utils.js +303 -320
  218. package/es/utils/trend-utils.js +57 -67
  219. package/package.json +2 -2
@@ -1,8 +1,3 @@
1
- import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
2
- import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
3
- import _createClass from "@babel/runtime/helpers/esm/createClass";
4
- import _inherits from "@babel/runtime/helpers/esm/inherits";
5
- import _createSuper from "@babel/runtime/helpers/esm/createSuper";
6
1
  import React, { Component, Fragment } from 'react';
7
2
  import intl from 'react-intl-universal';
8
3
  import { DTableSelect } from '../../../components';
@@ -10,20 +5,16 @@ import GroupbySettings from './groupby-settings';
10
5
  import SummaryMethodSettings from './summary-method-setting';
11
6
  import NumericSummaryItem from '../public-setting/numeric-summary-item';
12
7
  import { GROUPBY_TYPE, STATISTICS_COUNT_SHOW, SUMMARY_METHOD, SUMMARY_TYPE } from '../../../constants';
13
- var GROUP_TYPES = {
8
+ const GROUP_TYPES = {
14
9
  COUNT: 'count',
15
10
  SINGLE_NUMERIC_COLUMN: 'single_numeric_column',
16
11
  MULTIPLE_NUMERIC_COLUMN: 'multiple_numeric_column'
17
12
  };
18
- var GroupingSettings = /*#__PURE__*/function (_Component) {
19
- _inherits(GroupingSettings, _Component);
20
- var _super = _createSuper(GroupingSettings);
21
- function GroupingSettings(props) {
22
- var _this;
23
- _classCallCheck(this, GroupingSettings);
24
- _this = _super.call(this, props);
25
- _this.getSummaryMethodsOptions = function () {
26
- return SUMMARY_METHOD.map(function (m) {
13
+ class GroupingSettings extends Component {
14
+ constructor(props) {
15
+ super(props);
16
+ this.getSummaryMethodsOptions = () => {
17
+ return SUMMARY_METHOD.map(m => {
27
18
  return {
28
19
  value: m,
29
20
  label: /*#__PURE__*/React.createElement("span", {
@@ -32,9 +23,11 @@ var GroupingSettings = /*#__PURE__*/function (_Component) {
32
23
  };
33
24
  });
34
25
  };
35
- _this.getDefaultColumnGroupbyType = function (_ref) {
36
- var horizontal_axis_summary_type = _ref.horizontal_axis_summary_type,
37
- column_groupby_multiple_numeric_column = _ref.column_groupby_multiple_numeric_column;
26
+ this.getDefaultColumnGroupbyType = _ref => {
27
+ let {
28
+ horizontal_axis_summary_type,
29
+ column_groupby_multiple_numeric_column
30
+ } = _ref;
38
31
  if (column_groupby_multiple_numeric_column) {
39
32
  return GROUP_TYPES.MULTIPLE_NUMERIC_COLUMN;
40
33
  } else if (horizontal_axis_summary_type === SUMMARY_TYPE.ADVANCED) {
@@ -42,7 +35,7 @@ var GroupingSettings = /*#__PURE__*/function (_Component) {
42
35
  }
43
36
  return GROUP_TYPES.COUNT;
44
37
  };
45
- _this.getGroupTypeOptions = function () {
38
+ this.getGroupTypeOptions = () => {
46
39
  return [{
47
40
  value: GROUP_TYPES.COUNT,
48
41
  label: /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
@@ -66,20 +59,23 @@ var GroupingSettings = /*#__PURE__*/function (_Component) {
66
59
  }, intl.get('Compute_the_sum_maximum_or_minimum_value_of_records_in_each_group_by_multiple_fields')))
67
60
  }];
68
61
  };
69
- _this.onChangeGroupType = function (option) {
70
- var value = option.value;
71
- if (value === _this.state.columnGroupbyType) return;
72
- var statItem = _this.props.statItem;
73
- var _ref2 = _this.props.statItem || {},
74
- column_groupby_column_key = _ref2.column_groupby_column_key,
75
- column_groupby_date_granularity = _ref2.column_groupby_date_granularity,
76
- column_groupby_geolocation_granularity = _ref2.column_groupby_geolocation_granularity,
77
- column_groupby_multiple_numeric_column = _ref2.column_groupby_multiple_numeric_column,
78
- column_groupby_numeric_columns = _ref2.column_groupby_numeric_columns,
79
- vertical_axis_column_key = _ref2.vertical_axis_column_key,
80
- horizontal_axis_summary_type = _ref2.horizontal_axis_summary_type,
81
- horizontal_axis_column_key = _ref2.horizontal_axis_column_key,
82
- horizontal_axis_summary_method = _ref2.horizontal_axis_summary_method;
62
+ this.onChangeGroupType = option => {
63
+ const value = option.value;
64
+ if (value === this.state.columnGroupbyType) return;
65
+ const {
66
+ statItem
67
+ } = this.props;
68
+ let {
69
+ column_groupby_column_key,
70
+ column_groupby_date_granularity,
71
+ column_groupby_geolocation_granularity,
72
+ column_groupby_multiple_numeric_column,
73
+ column_groupby_numeric_columns,
74
+ vertical_axis_column_key,
75
+ horizontal_axis_summary_type,
76
+ horizontal_axis_column_key,
77
+ horizontal_axis_summary_method
78
+ } = this.props.statItem || {};
83
79
  if (value === GROUP_TYPES.SINGLE_NUMERIC_COLUMN) {
84
80
  column_groupby_multiple_numeric_column = false;
85
81
  column_groupby_numeric_columns = [];
@@ -92,9 +88,11 @@ var GroupingSettings = /*#__PURE__*/function (_Component) {
92
88
  } else if (value === GROUP_TYPES.COUNT) {
93
89
  column_groupby_multiple_numeric_column = false;
94
90
  column_groupby_numeric_columns = [];
95
- var groupColumn = _this.props.columnGroupbyColumnsOptions.find(function (column) {
96
- var key = column.key,
97
- type = column.type;
91
+ const groupColumn = this.props.columnGroupbyColumnsOptions.find(column => {
92
+ const {
93
+ key,
94
+ type
95
+ } = column;
98
96
  return key !== vertical_axis_column_key && (type !== 'date' || type !== 'geolocation');
99
97
  }) || {};
100
98
  column_groupby_column_key = groupColumn.key;
@@ -107,100 +105,108 @@ var GroupingSettings = /*#__PURE__*/function (_Component) {
107
105
  column_groupby_multiple_numeric_column = true;
108
106
  column_groupby_numeric_columns = [];
109
107
  horizontal_axis_summary_type = SUMMARY_TYPE.ADVANCED;
110
- horizontal_axis_column_key = _this.props.numericColumnsOptions.length > 0 ? _this.props.numericColumnsOptions[0].value.key : null;
108
+ horizontal_axis_column_key = this.props.numericColumnsOptions.length > 0 ? this.props.numericColumnsOptions[0].value.key : null;
111
109
  column_groupby_date_granularity = null;
112
110
  column_groupby_geolocation_granularity = null;
113
111
  horizontal_axis_summary_method = SUMMARY_METHOD[0];
114
112
  }
115
- var updated = {
116
- column_groupby_column_key: column_groupby_column_key,
117
- column_groupby_date_granularity: column_groupby_date_granularity,
118
- column_groupby_geolocation_granularity: column_groupby_geolocation_granularity,
119
- column_groupby_multiple_numeric_column: column_groupby_multiple_numeric_column,
120
- column_groupby_numeric_columns: column_groupby_numeric_columns,
121
- horizontal_axis_summary_type: horizontal_axis_summary_type,
122
- horizontal_axis_column_key: horizontal_axis_column_key,
123
- horizontal_axis_summary_method: horizontal_axis_summary_method
113
+ let updated = {
114
+ column_groupby_column_key,
115
+ column_groupby_date_granularity,
116
+ column_groupby_geolocation_granularity,
117
+ column_groupby_multiple_numeric_column,
118
+ column_groupby_numeric_columns,
119
+ horizontal_axis_summary_type,
120
+ horizontal_axis_column_key,
121
+ horizontal_axis_summary_method
124
122
  };
125
- _this.setState({
123
+ this.setState({
126
124
  columnGroupbyType: value
127
- }, function () {
128
- _this.props.updateStatItem(Object.assign({}, statItem, updated));
125
+ }, () => {
126
+ this.props.updateStatItem(Object.assign({}, statItem, updated));
129
127
  });
130
128
  };
131
- _this.getSelectedGroupType = function () {
132
- var statItem = _this.props.statItem;
133
- var horizontal_axis_summary_type = statItem.horizontal_axis_summary_type,
134
- column_groupby_multiple_numeric_column = statItem.column_groupby_multiple_numeric_column;
129
+ this.getSelectedGroupType = () => {
130
+ const {
131
+ statItem
132
+ } = this.props;
133
+ const {
134
+ horizontal_axis_summary_type,
135
+ column_groupby_multiple_numeric_column
136
+ } = statItem;
135
137
  if (column_groupby_multiple_numeric_column) {
136
- return _this.groupTypeOptions.find(function (item) {
137
- return item.value === GROUP_TYPES.MULTIPLE_NUMERIC_COLUMN;
138
- });
138
+ return this.groupTypeOptions.find(item => item.value === GROUP_TYPES.MULTIPLE_NUMERIC_COLUMN);
139
139
  }
140
140
  if (horizontal_axis_summary_type === SUMMARY_TYPE.COUNT) {
141
- return _this.groupTypeOptions[0];
141
+ return this.groupTypeOptions[0];
142
142
  }
143
143
  if (horizontal_axis_summary_type === SUMMARY_TYPE.ADVANCED) {
144
- return _this.groupTypeOptions[1];
144
+ return this.groupTypeOptions[1];
145
145
  }
146
146
  };
147
- _this.onSelectGroupbyColumn = function (type, groupbyColumnKey, groupbyDateGranularity, groupbyGeolocationGranularity) {
148
- var updated = {
147
+ this.onSelectGroupbyColumn = (type, groupbyColumnKey, groupbyDateGranularity, groupbyGeolocationGranularity) => {
148
+ let updated = {
149
149
  column_groupby_column_key: groupbyColumnKey,
150
150
  column_groupby_date_granularity: groupbyDateGranularity,
151
151
  column_groupby_geolocation_granularity: groupbyGeolocationGranularity
152
152
  };
153
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, updated));
153
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, updated));
154
154
  };
155
- _this.onSelectGroupbyDateGranularity = function (type, dateGranularity) {
156
- var updated = {
155
+ this.onSelectGroupbyDateGranularity = (type, dateGranularity) => {
156
+ let updated = {
157
157
  column_groupby_date_granularity: dateGranularity
158
158
  };
159
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, updated));
159
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, updated));
160
160
  };
161
- _this.onSelectGroupbyGeolocationGranularity = function (type, geolocationGranularity) {
162
- var updated = {
161
+ this.onSelectGroupbyGeolocationGranularity = (type, geolocationGranularity) => {
162
+ let updated = {
163
163
  column_groupby_geolocation_granularity: geolocationGranularity
164
164
  };
165
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, updated));
165
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, updated));
166
166
  };
167
- _this.updateSummaryMethod = function (summaryMethod) {
168
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
167
+ this.updateSummaryMethod = summaryMethod => {
168
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
169
169
  horizontal_axis_summary_method: summaryMethod
170
170
  }));
171
171
  };
172
- _this.updateSummaryColumn = function (summaryColumnKey) {
173
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
172
+ this.updateSummaryColumn = summaryColumnKey => {
173
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
174
174
  horizontal_axis_column_key: summaryColumnKey
175
175
  }));
176
176
  };
177
- _this.renderGroupbyNumericColumns = function () {
178
- var statItem = _this.props.statItem;
179
- var column_groupby_numeric_columns = statItem.column_groupby_numeric_columns;
177
+ this.renderGroupbyNumericColumns = () => {
178
+ const {
179
+ statItem
180
+ } = this.props;
181
+ let {
182
+ column_groupby_numeric_columns
183
+ } = statItem;
180
184
  if (!column_groupby_numeric_columns || !Array.isArray(column_groupby_numeric_columns)) return null;
181
- return column_groupby_numeric_columns.map(function (item, index) {
185
+ return column_groupby_numeric_columns.map((item, index) => {
182
186
  return /*#__PURE__*/React.createElement(NumericSummaryItem, {
183
187
  statItem: statItem,
184
188
  key: "number-column-".concat(index),
185
- numericColumnsOptions: _this.props.numericColumnsOptions,
186
- summaryMethodOptions: _this.summaryMethodsOptions,
189
+ numericColumnsOptions: this.props.numericColumnsOptions,
190
+ summaryMethodOptions: this.summaryMethodsOptions,
187
191
  index: index + 1,
188
192
  numericColumnItem: item,
189
- onDeleteNumericColumnItem: _this.onDeleteNumericColumnItem,
190
- onChangeColumnOption: _this.onChangeGroupbyNumericColumn,
191
- onChangeSummaryMethod: _this.onChangeSummaryMethod
193
+ onDeleteNumericColumnItem: this.onDeleteNumericColumnItem,
194
+ onChangeColumnOption: this.onChangeGroupbyNumericColumn,
195
+ onChangeSummaryMethod: this.onChangeSummaryMethod
192
196
  });
193
197
  });
194
198
  };
195
- _this.onAddNumericColumn = function () {
196
- var _this$props = _this.props,
197
- statItem = _this$props.statItem,
198
- numericColumnsOptions = _this$props.numericColumnsOptions;
199
- var _ref3 = statItem || {},
200
- column_groupby_numeric_columns = _ref3.column_groupby_numeric_columns;
201
- var newNumericColumnKey = numericColumnsOptions[0].value.key;
199
+ this.onAddNumericColumn = () => {
200
+ let {
201
+ statItem,
202
+ numericColumnsOptions
203
+ } = this.props;
204
+ let {
205
+ column_groupby_numeric_columns
206
+ } = statItem || {};
207
+ let newNumericColumnKey = numericColumnsOptions[0].value.key;
202
208
  if (Array.isArray(column_groupby_numeric_columns)) {
203
- column_groupby_numeric_columns = _toConsumableArray(column_groupby_numeric_columns);
209
+ column_groupby_numeric_columns = [...column_groupby_numeric_columns];
204
210
  column_groupby_numeric_columns.push({
205
211
  column_key: newNumericColumnKey,
206
212
  summary_method: SUMMARY_METHOD[0]
@@ -211,142 +217,142 @@ var GroupingSettings = /*#__PURE__*/function (_Component) {
211
217
  summary_method: SUMMARY_METHOD[0]
212
218
  }];
213
219
  }
214
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
215
- column_groupby_numeric_columns: _toConsumableArray(column_groupby_numeric_columns)
220
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
221
+ column_groupby_numeric_columns: [...column_groupby_numeric_columns]
216
222
  }));
217
223
  };
218
- _this.onChangeGroupbyNumericColumn = function (index, columnOption) {
224
+ this.onChangeGroupbyNumericColumn = (index, columnOption) => {
219
225
  if (index === 0) {
220
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
226
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
221
227
  horizontal_axis_column_key: columnOption.value.key
222
228
  }));
223
229
  } else {
224
- var _ref4 = _this.props.statItem || {},
225
- column_groupby_numeric_columns = _ref4.column_groupby_numeric_columns;
230
+ let {
231
+ column_groupby_numeric_columns
232
+ } = this.props.statItem || {};
226
233
  column_groupby_numeric_columns = column_groupby_numeric_columns || [];
227
- column_groupby_numeric_columns = _toConsumableArray(column_groupby_numeric_columns);
228
- var selectedItem = column_groupby_numeric_columns[index - 1];
234
+ column_groupby_numeric_columns = [...column_groupby_numeric_columns];
235
+ let selectedItem = column_groupby_numeric_columns[index - 1];
229
236
  selectedItem = Object.assign({}, selectedItem, {
230
237
  column_key: columnOption.value.key
231
238
  });
232
239
  column_groupby_numeric_columns[index - 1] = selectedItem;
233
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
234
- column_groupby_numeric_columns: column_groupby_numeric_columns
240
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
241
+ column_groupby_numeric_columns
235
242
  }));
236
243
  }
237
244
  };
238
- _this.onDeleteNumericColumnItem = function (index) {
239
- var _ref5 = _this.props.statItem || {},
240
- column_groupby_numeric_columns = _ref5.column_groupby_numeric_columns;
245
+ this.onDeleteNumericColumnItem = index => {
246
+ let {
247
+ column_groupby_numeric_columns
248
+ } = this.props.statItem || {};
241
249
  column_groupby_numeric_columns = column_groupby_numeric_columns || [];
242
- column_groupby_numeric_columns = _toConsumableArray(column_groupby_numeric_columns);
250
+ column_groupby_numeric_columns = [...column_groupby_numeric_columns];
243
251
  column_groupby_numeric_columns.splice(index - 1, 1);
244
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
245
- column_groupby_numeric_columns: _toConsumableArray(column_groupby_numeric_columns)
252
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
253
+ column_groupby_numeric_columns: [...column_groupby_numeric_columns]
246
254
  }));
247
255
  };
248
- _this.onChangeSummaryMethod = function (index, option) {
256
+ this.onChangeSummaryMethod = (index, option) => {
249
257
  if (index === 0) {
250
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
258
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
251
259
  horizontal_axis_summary_method: option.value
252
260
  }));
253
261
  } else {
254
- var _ref6 = _this.props.statItem || {},
255
- column_groupby_numeric_columns = _ref6.column_groupby_numeric_columns;
262
+ let {
263
+ column_groupby_numeric_columns
264
+ } = this.props.statItem || {};
256
265
  column_groupby_numeric_columns = column_groupby_numeric_columns || [];
257
- column_groupby_numeric_columns = _toConsumableArray(column_groupby_numeric_columns);
258
- var selectedItem = column_groupby_numeric_columns[index - 1];
266
+ column_groupby_numeric_columns = [...column_groupby_numeric_columns];
267
+ let selectedItem = column_groupby_numeric_columns[index - 1];
259
268
  selectedItem = Object.assign({}, selectedItem, {
260
269
  summary_method: option.value
261
270
  });
262
271
  column_groupby_numeric_columns[index - 1] = selectedItem;
263
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
264
- column_groupby_numeric_columns: column_groupby_numeric_columns
272
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
273
+ column_groupby_numeric_columns
265
274
  }));
266
275
  }
267
276
  };
268
- _this.groupTypeOptions = _this.getGroupTypeOptions();
269
- _this.summaryMethodsOptions = _this.getSummaryMethodsOptions();
270
- _this.state = {
271
- columnGroupbyType: _this.getDefaultColumnGroupbyType(props.statItem)
277
+ this.groupTypeOptions = this.getGroupTypeOptions();
278
+ this.summaryMethodsOptions = this.getSummaryMethodsOptions();
279
+ this.state = {
280
+ columnGroupbyType: this.getDefaultColumnGroupbyType(props.statItem)
272
281
  };
273
- return _this;
274
282
  }
275
- _createClass(GroupingSettings, [{
276
- key: "render",
277
- value: function render() {
278
- var _this$props2 = this.props,
279
- label = _this$props2.label,
280
- statItem = _this$props2.statItem,
281
- selectedTable = _this$props2.selectedTable,
282
- columnGroupbyColumnsOptions = _this$props2.columnGroupbyColumnsOptions,
283
- numericColumnsOptions = _this$props2.numericColumnsOptions,
284
- dateGranularityOptions = _this$props2.dateGranularityOptions,
285
- geolocationGranularityOptions = _this$props2.geolocationGranularityOptions;
286
- var selectedGroupItem = this.getSelectedGroupType();
287
- var _ref7 = statItem || {},
288
- horizontal_axis_summary_type = _ref7.horizontal_axis_summary_type,
289
- horizontal_axis_column_key = _ref7.horizontal_axis_column_key,
290
- horizontal_axis_summary_method = _ref7.horizontal_axis_summary_method,
291
- column_groupby_column_key = _ref7.column_groupby_column_key,
292
- column_groupby_date_granularity = _ref7.column_groupby_date_granularity,
293
- column_groupby_geolocation_granularity = _ref7.column_groupby_geolocation_granularity,
294
- column_groupby_multiple_numeric_column = _ref7.column_groupby_multiple_numeric_column;
295
- return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement("div", {
296
- className: "statistic-chart-parameter-item"
297
- }, /*#__PURE__*/React.createElement("label", null, label), /*#__PURE__*/React.createElement(DTableSelect, {
298
- classNamePrefix: "statistic-chart-summary-types",
299
- value: selectedGroupItem,
300
- onChange: this.onChangeGroupType,
301
- options: this.groupTypeOptions
302
- })), horizontal_axis_summary_type === SUMMARY_TYPE.ADVANCED && (column_groupby_multiple_numeric_column ? /*#__PURE__*/React.createElement(NumericSummaryItem, {
303
- statItem: statItem,
304
- index: 0,
305
- key: "number-column-".concat(0),
306
- numericColumnsOptions: numericColumnsOptions,
307
- summaryMethodOptions: this.summaryMethodsOptions,
308
- numericColumnItem: {
309
- column_key: horizontal_axis_column_key,
310
- summary_method: horizontal_axis_summary_method
311
- },
312
- onChangeColumnOption: this.onChangeGroupbyNumericColumn,
313
- onChangeSummaryMethod: this.onChangeSummaryMethod
314
- }) : /*#__PURE__*/React.createElement(SummaryMethodSettings, {
315
- statItem: statItem,
316
- numericColumnsOptions: numericColumnsOptions,
317
- summaryType: horizontal_axis_summary_type,
318
- summaryColumnKey: horizontal_axis_column_key,
319
- summaryMethod: horizontal_axis_summary_method,
320
- getSelectedColumnOption: this.props.getSelectedColumnOption,
321
- onChangeSummaryType: this.updatedSummaryType,
322
- onSelectSummaryMethod: this.updateSummaryMethod,
323
- onSelectNumericColumn: this.updateSummaryColumn,
324
- updateStatItem: this.props.updateStatItem
325
- })), column_groupby_multiple_numeric_column && /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement("div", {
326
- className: "statistics-add-number"
327
- }, this.renderGroupbyNumericColumns()), Array.isArray(numericColumnsOptions) && numericColumnsOptions.length > 0 && /*#__PURE__*/React.createElement("div", {
328
- className: "statistics-add-number-column",
329
- onClick: this.onAddNumericColumn
330
- }, /*#__PURE__*/React.createElement("span", {
331
- className: "number-column-item dtable-font dtable-icon-add-table"
332
- }), /*#__PURE__*/React.createElement("span", {
333
- className: "number-column-item add-number-column-description"
334
- }, intl.get('Add_new_numeric_column')))), (!column_groupby_multiple_numeric_column && horizontal_axis_summary_type === SUMMARY_TYPE.ADVANCED || horizontal_axis_summary_type === SUMMARY_TYPE.COUNT) && /*#__PURE__*/React.createElement(GroupbySettings, {
335
- selectedTable: selectedTable,
336
- columnsOptions: columnGroupbyColumnsOptions,
337
- dateGranularityOptions: dateGranularityOptions,
338
- geolocationGranularityOptions: geolocationGranularityOptions,
339
- label: intl.get('Group_by'),
340
- groupbyColumnKey: column_groupby_column_key,
341
- groupbyDateGranularity: column_groupby_date_granularity,
342
- groupbyGeolocationGranularity: column_groupby_geolocation_granularity,
343
- getSelectedColumnOption: this.props.getSelectedColumnOption,
344
- onSelectGroupbyColumn: this.onSelectGroupbyColumn.bind(this, GROUPBY_TYPE.COLUMN),
345
- onSelectGroupbyDateGranularity: this.onSelectGroupbyDateGranularity.bind(this, GROUPBY_TYPE.COLUMN),
346
- onSelectGroupbyGeolocationGranularity: this.onSelectGroupbyGeolocationGranularity.bind(this, GROUPBY_TYPE.COLUMN)
347
- }));
348
- }
349
- }]);
350
- return GroupingSettings;
351
- }(Component);
283
+ render() {
284
+ let {
285
+ label,
286
+ statItem,
287
+ selectedTable,
288
+ columnGroupbyColumnsOptions,
289
+ numericColumnsOptions,
290
+ dateGranularityOptions,
291
+ geolocationGranularityOptions
292
+ } = this.props;
293
+ const selectedGroupItem = this.getSelectedGroupType();
294
+ let {
295
+ horizontal_axis_summary_type,
296
+ horizontal_axis_column_key,
297
+ horizontal_axis_summary_method,
298
+ column_groupby_column_key,
299
+ column_groupby_date_granularity,
300
+ column_groupby_geolocation_granularity,
301
+ column_groupby_multiple_numeric_column
302
+ } = statItem || {};
303
+ return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement("div", {
304
+ className: "statistic-chart-parameter-item"
305
+ }, /*#__PURE__*/React.createElement("label", null, label), /*#__PURE__*/React.createElement(DTableSelect, {
306
+ classNamePrefix: "statistic-chart-summary-types",
307
+ value: selectedGroupItem,
308
+ onChange: this.onChangeGroupType,
309
+ options: this.groupTypeOptions
310
+ })), horizontal_axis_summary_type === SUMMARY_TYPE.ADVANCED && (column_groupby_multiple_numeric_column ? /*#__PURE__*/React.createElement(NumericSummaryItem, {
311
+ statItem: statItem,
312
+ index: 0,
313
+ key: "number-column-".concat(0),
314
+ numericColumnsOptions: numericColumnsOptions,
315
+ summaryMethodOptions: this.summaryMethodsOptions,
316
+ numericColumnItem: {
317
+ column_key: horizontal_axis_column_key,
318
+ summary_method: horizontal_axis_summary_method
319
+ },
320
+ onChangeColumnOption: this.onChangeGroupbyNumericColumn,
321
+ onChangeSummaryMethod: this.onChangeSummaryMethod
322
+ }) : /*#__PURE__*/React.createElement(SummaryMethodSettings, {
323
+ statItem: statItem,
324
+ numericColumnsOptions: numericColumnsOptions,
325
+ summaryType: horizontal_axis_summary_type,
326
+ summaryColumnKey: horizontal_axis_column_key,
327
+ summaryMethod: horizontal_axis_summary_method,
328
+ getSelectedColumnOption: this.props.getSelectedColumnOption,
329
+ onChangeSummaryType: this.updatedSummaryType,
330
+ onSelectSummaryMethod: this.updateSummaryMethod,
331
+ onSelectNumericColumn: this.updateSummaryColumn,
332
+ updateStatItem: this.props.updateStatItem
333
+ })), column_groupby_multiple_numeric_column && /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement("div", {
334
+ className: "statistics-add-number"
335
+ }, this.renderGroupbyNumericColumns()), Array.isArray(numericColumnsOptions) && numericColumnsOptions.length > 0 && /*#__PURE__*/React.createElement("div", {
336
+ className: "statistics-add-number-column",
337
+ onClick: this.onAddNumericColumn
338
+ }, /*#__PURE__*/React.createElement("span", {
339
+ className: "number-column-item dtable-font dtable-icon-add-table"
340
+ }), /*#__PURE__*/React.createElement("span", {
341
+ className: "number-column-item add-number-column-description"
342
+ }, intl.get('Add_new_numeric_column')))), (!column_groupby_multiple_numeric_column && horizontal_axis_summary_type === SUMMARY_TYPE.ADVANCED || horizontal_axis_summary_type === SUMMARY_TYPE.COUNT) && /*#__PURE__*/React.createElement(GroupbySettings, {
343
+ selectedTable: selectedTable,
344
+ columnsOptions: columnGroupbyColumnsOptions,
345
+ dateGranularityOptions: dateGranularityOptions,
346
+ geolocationGranularityOptions: geolocationGranularityOptions,
347
+ label: intl.get('Group_by'),
348
+ groupbyColumnKey: column_groupby_column_key,
349
+ groupbyDateGranularity: column_groupby_date_granularity,
350
+ groupbyGeolocationGranularity: column_groupby_geolocation_granularity,
351
+ getSelectedColumnOption: this.props.getSelectedColumnOption,
352
+ onSelectGroupbyColumn: this.onSelectGroupbyColumn.bind(this, GROUPBY_TYPE.COLUMN),
353
+ onSelectGroupbyDateGranularity: this.onSelectGroupbyDateGranularity.bind(this, GROUPBY_TYPE.COLUMN),
354
+ onSelectGroupbyGeolocationGranularity: this.onSelectGroupbyGeolocationGranularity.bind(this, GROUPBY_TYPE.COLUMN)
355
+ }));
356
+ }
357
+ }
352
358
  export default GroupingSettings;