dtable-statistic 4.2.2 → 4.3.1

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,8 +23,10 @@ var GroupingSettings = /*#__PURE__*/function (_Component) {
32
23
  };
33
24
  });
34
25
  };
35
- _this.getDefaultColumnGroupbyType = function (_ref) {
36
- var y_axis_summary_type = _ref.y_axis_summary_type;
26
+ this.getDefaultColumnGroupbyType = _ref => {
27
+ let {
28
+ y_axis_summary_type
29
+ } = _ref;
37
30
  if (y_axis_summary_type === SUMMARY_TYPE.ADVANCED) {
38
31
  return GROUP_TYPES.SINGLE_NUMERIC_COLUMN;
39
32
  } else if (y_axis_summary_type === SUMMARY_TYPE.ADVANCED) {
@@ -41,7 +34,7 @@ var GroupingSettings = /*#__PURE__*/function (_Component) {
41
34
  }
42
35
  return GROUP_TYPES.COUNT;
43
36
  };
44
- _this.getGroupTypeOptions = function () {
37
+ this.getGroupTypeOptions = () => {
45
38
  return [{
46
39
  value: GROUP_TYPES.COUNT,
47
40
  label: /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
@@ -65,20 +58,23 @@ var GroupingSettings = /*#__PURE__*/function (_Component) {
65
58
  }, intl.get('Compute_the_sum_maximum_or_minimum_value_of_records_in_each_group_by_multiple_fields')))
66
59
  }];
67
60
  };
68
- _this.onChangeGroupType = function (option) {
69
- var value = option.value;
70
- if (value === _this.state.columnGroupbyType) return;
71
- var statItem = _this.props.statItem;
72
- var _ref2 = _this.props.statItem || {},
73
- column_groupby_column_key = _ref2.column_groupby_column_key,
74
- column_groupby_date_granularity = _ref2.column_groupby_date_granularity,
75
- column_groupby_geolocation_granularity = _ref2.column_groupby_geolocation_granularity,
76
- column_groupby_multiple_numeric_column = _ref2.column_groupby_multiple_numeric_column,
77
- column_groupby_numeric_columns = _ref2.column_groupby_numeric_columns,
78
- x_axis_column_key = _ref2.x_axis_column_key,
79
- y_axis_summary_type = _ref2.y_axis_summary_type,
80
- y_axis_column_key = _ref2.y_axis_column_key,
81
- y_axis_summary_method = _ref2.y_axis_summary_method;
61
+ this.onChangeGroupType = option => {
62
+ const value = option.value;
63
+ if (value === this.state.columnGroupbyType) return;
64
+ const {
65
+ statItem
66
+ } = this.props;
67
+ let {
68
+ column_groupby_column_key,
69
+ column_groupby_date_granularity,
70
+ column_groupby_geolocation_granularity,
71
+ column_groupby_multiple_numeric_column,
72
+ column_groupby_numeric_columns,
73
+ x_axis_column_key,
74
+ y_axis_summary_type,
75
+ y_axis_column_key,
76
+ y_axis_summary_method
77
+ } = this.props.statItem || {};
82
78
  if (value === GROUP_TYPES.SINGLE_NUMERIC_COLUMN) {
83
79
  y_axis_summary_type = SUMMARY_TYPE.ADVANCED;
84
80
  y_axis_column_key = null;
@@ -91,9 +87,11 @@ var GroupingSettings = /*#__PURE__*/function (_Component) {
91
87
  } else if (value === GROUP_TYPES.COUNT) {
92
88
  column_groupby_multiple_numeric_column = false;
93
89
  column_groupby_numeric_columns = [];
94
- var groupColumn = _this.props.columnGroupbyColumnsOptions.find(function (column) {
95
- var key = column.key,
96
- type = column.type;
90
+ const groupColumn = this.props.columnGroupbyColumnsOptions.find(column => {
91
+ const {
92
+ key,
93
+ type
94
+ } = column;
97
95
  return key !== x_axis_column_key && (type !== 'date' || type !== 'geolocation');
98
96
  }) || {};
99
97
  column_groupby_column_key = groupColumn.key;
@@ -106,100 +104,108 @@ var GroupingSettings = /*#__PURE__*/function (_Component) {
106
104
  column_groupby_multiple_numeric_column = true;
107
105
  column_groupby_numeric_columns = [];
108
106
  y_axis_summary_type = SUMMARY_TYPE.ADVANCED;
109
- y_axis_column_key = _this.props.numericColumnsOptions.length > 0 ? _this.props.numericColumnsOptions[0].value.key : null;
107
+ y_axis_column_key = this.props.numericColumnsOptions.length > 0 ? this.props.numericColumnsOptions[0].value.key : null;
110
108
  column_groupby_date_granularity = null;
111
109
  column_groupby_geolocation_granularity = null;
112
110
  y_axis_summary_method = SUMMARY_METHOD[0];
113
111
  }
114
- var updated = {
115
- column_groupby_column_key: column_groupby_column_key,
116
- column_groupby_date_granularity: column_groupby_date_granularity,
117
- column_groupby_geolocation_granularity: column_groupby_geolocation_granularity,
118
- column_groupby_multiple_numeric_column: column_groupby_multiple_numeric_column,
119
- column_groupby_numeric_columns: column_groupby_numeric_columns,
120
- y_axis_summary_type: y_axis_summary_type,
121
- y_axis_column_key: y_axis_column_key,
122
- y_axis_summary_method: y_axis_summary_method
112
+ let updated = {
113
+ column_groupby_column_key,
114
+ column_groupby_date_granularity,
115
+ column_groupby_geolocation_granularity,
116
+ column_groupby_multiple_numeric_column,
117
+ column_groupby_numeric_columns,
118
+ y_axis_summary_type,
119
+ y_axis_column_key,
120
+ y_axis_summary_method
123
121
  };
124
- _this.setState({
122
+ this.setState({
125
123
  columnGroupbyType: value
126
- }, function () {
127
- _this.props.updateStatItem(Object.assign({}, statItem, updated));
124
+ }, () => {
125
+ this.props.updateStatItem(Object.assign({}, statItem, updated));
128
126
  });
129
127
  };
130
- _this.getSelectedGroupType = function () {
131
- var statItem = _this.props.statItem;
132
- var column_groupby_multiple_numeric_column = statItem.column_groupby_multiple_numeric_column,
133
- y_axis_summary_type = statItem.y_axis_summary_type;
128
+ this.getSelectedGroupType = () => {
129
+ const {
130
+ statItem
131
+ } = this.props;
132
+ const {
133
+ column_groupby_multiple_numeric_column,
134
+ y_axis_summary_type
135
+ } = statItem;
134
136
  if (column_groupby_multiple_numeric_column) {
135
- return _this.groupTypeOptions.find(function (item) {
136
- return item.value === GROUP_TYPES.MULTIPLE_NUMERIC_COLUMN;
137
- });
137
+ return this.groupTypeOptions.find(item => item.value === GROUP_TYPES.MULTIPLE_NUMERIC_COLUMN);
138
138
  }
139
139
  if (y_axis_summary_type === SUMMARY_TYPE.COUNT) {
140
- return _this.groupTypeOptions[0];
140
+ return this.groupTypeOptions[0];
141
141
  }
142
142
  if (y_axis_summary_type === SUMMARY_TYPE.ADVANCED) {
143
- return _this.groupTypeOptions[1];
143
+ return this.groupTypeOptions[1];
144
144
  }
145
145
  };
146
- _this.onSelectGroupbyColumn = function (type, groupbyColumnKey, groupbyDateGranularity, groupbyGeolocationGranularity) {
147
- var updated = {
146
+ this.onSelectGroupbyColumn = (type, groupbyColumnKey, groupbyDateGranularity, groupbyGeolocationGranularity) => {
147
+ let updated = {
148
148
  column_groupby_column_key: groupbyColumnKey,
149
149
  column_groupby_date_granularity: groupbyDateGranularity,
150
150
  column_groupby_geolocation_granularity: groupbyGeolocationGranularity
151
151
  };
152
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, updated));
152
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, updated));
153
153
  };
154
- _this.onSelectGroupbyDateGranularity = function (type, dateGranularity) {
155
- var updated = {
154
+ this.onSelectGroupbyDateGranularity = (type, dateGranularity) => {
155
+ let updated = {
156
156
  column_groupby_date_granularity: dateGranularity
157
157
  };
158
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, updated));
158
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, updated));
159
159
  };
160
- _this.onSelectGroupbyGeolocationGranularity = function (type, geolocationGranularity) {
161
- var updated = {
160
+ this.onSelectGroupbyGeolocationGranularity = (type, geolocationGranularity) => {
161
+ let updated = {
162
162
  column_groupby_geolocation_granularity: geolocationGranularity
163
163
  };
164
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, updated));
164
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, updated));
165
165
  };
166
- _this.updateSummaryMethod = function (summaryMethod) {
167
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
166
+ this.updateSummaryMethod = summaryMethod => {
167
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
168
168
  y_axis_summary_method: summaryMethod
169
169
  }));
170
170
  };
171
- _this.updateSummaryColumn = function (summaryColumnKey) {
172
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
171
+ this.updateSummaryColumn = summaryColumnKey => {
172
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
173
173
  y_axis_column_key: summaryColumnKey
174
174
  }));
175
175
  };
176
- _this.renderGroupbyNumericColumns = function () {
177
- var statItem = _this.props.statItem;
178
- var column_groupby_numeric_columns = statItem.column_groupby_numeric_columns;
176
+ this.renderGroupbyNumericColumns = () => {
177
+ const {
178
+ statItem
179
+ } = this.props;
180
+ let {
181
+ column_groupby_numeric_columns
182
+ } = statItem;
179
183
  if (!column_groupby_numeric_columns || !Array.isArray(column_groupby_numeric_columns)) return null;
180
- return column_groupby_numeric_columns.map(function (item, index) {
184
+ return column_groupby_numeric_columns.map((item, index) => {
181
185
  return /*#__PURE__*/React.createElement(NumericSummaryItem, {
182
186
  statItem: statItem,
183
187
  key: "number-column-".concat(index),
184
- numericColumnsOptions: _this.props.numericColumnsOptions,
185
- summaryMethodOptions: _this.summaryMethodsOptions,
188
+ numericColumnsOptions: this.props.numericColumnsOptions,
189
+ summaryMethodOptions: this.summaryMethodsOptions,
186
190
  index: index + 1,
187
191
  numericColumnItem: item,
188
- onDeleteNumericColumnItem: _this.onDeleteNumericColumnItem,
189
- onChangeColumnOption: _this.onChangeGroupbyNumericColumn,
190
- onChangeSummaryMethod: _this.onChangeSummaryMethod
192
+ onDeleteNumericColumnItem: this.onDeleteNumericColumnItem,
193
+ onChangeColumnOption: this.onChangeGroupbyNumericColumn,
194
+ onChangeSummaryMethod: this.onChangeSummaryMethod
191
195
  });
192
196
  });
193
197
  };
194
- _this.onAddNumericColumn = function () {
195
- var _this$props = _this.props,
196
- statItem = _this$props.statItem,
197
- numericColumnsOptions = _this$props.numericColumnsOptions;
198
- var _ref3 = statItem || {},
199
- column_groupby_numeric_columns = _ref3.column_groupby_numeric_columns;
200
- var newNumericColumnKey = numericColumnsOptions[0].value.key;
198
+ this.onAddNumericColumn = () => {
199
+ let {
200
+ statItem,
201
+ numericColumnsOptions
202
+ } = this.props;
203
+ let {
204
+ column_groupby_numeric_columns
205
+ } = statItem || {};
206
+ let newNumericColumnKey = numericColumnsOptions[0].value.key;
201
207
  if (Array.isArray(column_groupby_numeric_columns)) {
202
- column_groupby_numeric_columns = _toConsumableArray(column_groupby_numeric_columns);
208
+ column_groupby_numeric_columns = [...column_groupby_numeric_columns];
203
209
  column_groupby_numeric_columns.push({
204
210
  column_key: newNumericColumnKey,
205
211
  summary_method: SUMMARY_METHOD[0]
@@ -210,142 +216,142 @@ var GroupingSettings = /*#__PURE__*/function (_Component) {
210
216
  summary_method: SUMMARY_METHOD[0]
211
217
  }];
212
218
  }
213
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
214
- column_groupby_numeric_columns: _toConsumableArray(column_groupby_numeric_columns)
219
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
220
+ column_groupby_numeric_columns: [...column_groupby_numeric_columns]
215
221
  }));
216
222
  };
217
- _this.onChangeGroupbyNumericColumn = function (index, columnOption) {
223
+ this.onChangeGroupbyNumericColumn = (index, columnOption) => {
218
224
  if (index === 0) {
219
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
225
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
220
226
  y_axis_column_key: columnOption.value.key
221
227
  }));
222
228
  } else {
223
- var _ref4 = _this.props.statItem || {},
224
- column_groupby_numeric_columns = _ref4.column_groupby_numeric_columns;
229
+ let {
230
+ column_groupby_numeric_columns
231
+ } = this.props.statItem || {};
225
232
  column_groupby_numeric_columns = column_groupby_numeric_columns || [];
226
- column_groupby_numeric_columns = _toConsumableArray(column_groupby_numeric_columns);
227
- var selectedItem = column_groupby_numeric_columns[index - 1];
233
+ column_groupby_numeric_columns = [...column_groupby_numeric_columns];
234
+ let selectedItem = column_groupby_numeric_columns[index - 1];
228
235
  selectedItem = Object.assign({}, selectedItem, {
229
236
  column_key: columnOption.value.key
230
237
  });
231
238
  column_groupby_numeric_columns[index - 1] = selectedItem;
232
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
233
- column_groupby_numeric_columns: column_groupby_numeric_columns
239
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
240
+ column_groupby_numeric_columns
234
241
  }));
235
242
  }
236
243
  };
237
- _this.onDeleteNumericColumnItem = function (index) {
238
- var _ref5 = _this.props.statItem || {},
239
- column_groupby_numeric_columns = _ref5.column_groupby_numeric_columns;
244
+ this.onDeleteNumericColumnItem = index => {
245
+ let {
246
+ column_groupby_numeric_columns
247
+ } = this.props.statItem || {};
240
248
  column_groupby_numeric_columns = column_groupby_numeric_columns || [];
241
- column_groupby_numeric_columns = _toConsumableArray(column_groupby_numeric_columns);
249
+ column_groupby_numeric_columns = [...column_groupby_numeric_columns];
242
250
  column_groupby_numeric_columns.splice(index - 1, 1);
243
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
244
- column_groupby_numeric_columns: _toConsumableArray(column_groupby_numeric_columns)
251
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
252
+ column_groupby_numeric_columns: [...column_groupby_numeric_columns]
245
253
  }));
246
254
  };
247
- _this.onChangeSummaryMethod = function (index, option) {
255
+ this.onChangeSummaryMethod = (index, option) => {
248
256
  if (index === 0) {
249
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
257
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
250
258
  y_axis_summary_method: option.value
251
259
  }));
252
260
  } else {
253
- var _ref6 = _this.props.statItem || {},
254
- column_groupby_numeric_columns = _ref6.column_groupby_numeric_columns;
261
+ let {
262
+ column_groupby_numeric_columns
263
+ } = this.props.statItem || {};
255
264
  column_groupby_numeric_columns = column_groupby_numeric_columns || [];
256
- column_groupby_numeric_columns = _toConsumableArray(column_groupby_numeric_columns);
257
- var selectedItem = column_groupby_numeric_columns[index - 1];
265
+ column_groupby_numeric_columns = [...column_groupby_numeric_columns];
266
+ let selectedItem = column_groupby_numeric_columns[index - 1];
258
267
  selectedItem = Object.assign({}, selectedItem, {
259
268
  summary_method: option.value
260
269
  });
261
270
  column_groupby_numeric_columns[index - 1] = selectedItem;
262
- _this.props.updateStatItem(Object.assign({}, _this.props.statItem, {
263
- column_groupby_numeric_columns: column_groupby_numeric_columns
271
+ this.props.updateStatItem(Object.assign({}, this.props.statItem, {
272
+ column_groupby_numeric_columns
264
273
  }));
265
274
  }
266
275
  };
267
- _this.groupTypeOptions = _this.getGroupTypeOptions();
268
- _this.summaryMethodsOptions = _this.getSummaryMethodsOptions();
269
- _this.state = {
270
- columnGroupbyType: _this.getDefaultColumnGroupbyType(props.statItem)
276
+ this.groupTypeOptions = this.getGroupTypeOptions();
277
+ this.summaryMethodsOptions = this.getSummaryMethodsOptions();
278
+ this.state = {
279
+ columnGroupbyType: this.getDefaultColumnGroupbyType(props.statItem)
271
280
  };
272
- return _this;
273
281
  }
274
- _createClass(GroupingSettings, [{
275
- key: "render",
276
- value: function render() {
277
- var _this$props2 = this.props,
278
- label = _this$props2.label,
279
- statItem = _this$props2.statItem,
280
- selectedTable = _this$props2.selectedTable,
281
- columnGroupbyColumnsOptions = _this$props2.columnGroupbyColumnsOptions,
282
- numericColumnsOptions = _this$props2.numericColumnsOptions,
283
- dateGranularityOptions = _this$props2.dateGranularityOptions,
284
- geolocationGranularityOptions = _this$props2.geolocationGranularityOptions;
285
- var selectedGroupItem = this.getSelectedGroupType();
286
- var _ref7 = statItem || {},
287
- y_axis_summary_type = _ref7.y_axis_summary_type,
288
- y_axis_column_key = _ref7.y_axis_column_key,
289
- y_axis_summary_method = _ref7.y_axis_summary_method,
290
- column_groupby_column_key = _ref7.column_groupby_column_key,
291
- column_groupby_date_granularity = _ref7.column_groupby_date_granularity,
292
- column_groupby_geolocation_granularity = _ref7.column_groupby_geolocation_granularity,
293
- column_groupby_multiple_numeric_column = _ref7.column_groupby_multiple_numeric_column;
294
- return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement("div", {
295
- className: "statistic-chart-parameter-item"
296
- }, /*#__PURE__*/React.createElement("label", null, label), /*#__PURE__*/React.createElement(DTableSelect, {
297
- classNamePrefix: "statistic-chart-summary-types",
298
- value: selectedGroupItem,
299
- onChange: this.onChangeGroupType,
300
- options: this.groupTypeOptions
301
- })), y_axis_summary_type === SUMMARY_TYPE.ADVANCED && (column_groupby_multiple_numeric_column ? /*#__PURE__*/React.createElement(NumericSummaryItem, {
302
- statItem: statItem,
303
- key: "number-column-".concat(0),
304
- numericColumnsOptions: numericColumnsOptions,
305
- summaryMethodOptions: this.summaryMethodsOptions,
306
- index: 0,
307
- numericColumnItem: {
308
- column_key: y_axis_column_key,
309
- summary_method: y_axis_summary_method
310
- },
311
- onChangeColumnOption: this.onChangeGroupbyNumericColumn,
312
- onChangeSummaryMethod: this.onChangeSummaryMethod
313
- }) : /*#__PURE__*/React.createElement(SummaryMethodSettings, {
314
- statItem: statItem,
315
- numericColumnsOptions: numericColumnsOptions,
316
- summaryType: y_axis_summary_type,
317
- summaryColumnKey: y_axis_column_key,
318
- summaryMethod: y_axis_summary_method,
319
- getSelectedColumnOption: this.props.getSelectedColumnOption,
320
- onChangeSummaryType: this.updatedSummaryType,
321
- onSelectSummaryMethod: this.updateSummaryMethod,
322
- onSelectNumericColumn: this.updateSummaryColumn,
323
- updateStatItem: this.props.updateStatItem
324
- })), column_groupby_multiple_numeric_column && /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement("div", {
325
- className: "statistics-add-number"
326
- }, this.renderGroupbyNumericColumns()), Array.isArray(numericColumnsOptions) && numericColumnsOptions.length > 0 && /*#__PURE__*/React.createElement("div", {
327
- className: "statistics-add-number-column",
328
- onClick: this.onAddNumericColumn
329
- }, /*#__PURE__*/React.createElement("span", {
330
- className: "number-column-item dtable-font dtable-icon-add-table"
331
- }), /*#__PURE__*/React.createElement("span", {
332
- className: "number-column-item add-number-column-description"
333
- }, intl.get('Add_new_numeric_column')))), (!column_groupby_multiple_numeric_column && y_axis_summary_type === SUMMARY_TYPE.ADVANCED || y_axis_summary_type === SUMMARY_TYPE.COUNT) && /*#__PURE__*/React.createElement(GroupbySettings, {
334
- selectedTable: selectedTable,
335
- columnsOptions: columnGroupbyColumnsOptions,
336
- dateGranularityOptions: dateGranularityOptions,
337
- geolocationGranularityOptions: geolocationGranularityOptions,
338
- label: intl.get('Group_by'),
339
- groupbyColumnKey: column_groupby_column_key,
340
- groupbyDateGranularity: column_groupby_date_granularity,
341
- groupbyGeolocationGranularity: column_groupby_geolocation_granularity,
342
- getSelectedColumnOption: this.props.getSelectedColumnOption,
343
- onSelectGroupbyColumn: this.onSelectGroupbyColumn.bind(this, GROUPBY_TYPE.COLUMN),
344
- onSelectGroupbyDateGranularity: this.onSelectGroupbyDateGranularity.bind(this, GROUPBY_TYPE.COLUMN),
345
- onSelectGroupbyGeolocationGranularity: this.onSelectGroupbyGeolocationGranularity.bind(this, GROUPBY_TYPE.COLUMN)
346
- }));
347
- }
348
- }]);
349
- return GroupingSettings;
350
- }(Component);
282
+ render() {
283
+ let {
284
+ label,
285
+ statItem,
286
+ selectedTable,
287
+ columnGroupbyColumnsOptions,
288
+ numericColumnsOptions,
289
+ dateGranularityOptions,
290
+ geolocationGranularityOptions
291
+ } = this.props;
292
+ const selectedGroupItem = this.getSelectedGroupType();
293
+ let {
294
+ y_axis_summary_type,
295
+ y_axis_column_key,
296
+ y_axis_summary_method,
297
+ column_groupby_column_key,
298
+ column_groupby_date_granularity,
299
+ column_groupby_geolocation_granularity,
300
+ column_groupby_multiple_numeric_column
301
+ } = statItem || {};
302
+ return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement("div", {
303
+ className: "statistic-chart-parameter-item"
304
+ }, /*#__PURE__*/React.createElement("label", null, label), /*#__PURE__*/React.createElement(DTableSelect, {
305
+ classNamePrefix: "statistic-chart-summary-types",
306
+ value: selectedGroupItem,
307
+ onChange: this.onChangeGroupType,
308
+ options: this.groupTypeOptions
309
+ })), y_axis_summary_type === SUMMARY_TYPE.ADVANCED && (column_groupby_multiple_numeric_column ? /*#__PURE__*/React.createElement(NumericSummaryItem, {
310
+ statItem: statItem,
311
+ key: "number-column-".concat(0),
312
+ numericColumnsOptions: numericColumnsOptions,
313
+ summaryMethodOptions: this.summaryMethodsOptions,
314
+ index: 0,
315
+ numericColumnItem: {
316
+ column_key: y_axis_column_key,
317
+ summary_method: y_axis_summary_method
318
+ },
319
+ onChangeColumnOption: this.onChangeGroupbyNumericColumn,
320
+ onChangeSummaryMethod: this.onChangeSummaryMethod
321
+ }) : /*#__PURE__*/React.createElement(SummaryMethodSettings, {
322
+ statItem: statItem,
323
+ numericColumnsOptions: numericColumnsOptions,
324
+ summaryType: y_axis_summary_type,
325
+ summaryColumnKey: y_axis_column_key,
326
+ summaryMethod: y_axis_summary_method,
327
+ getSelectedColumnOption: this.props.getSelectedColumnOption,
328
+ onChangeSummaryType: this.updatedSummaryType,
329
+ onSelectSummaryMethod: this.updateSummaryMethod,
330
+ onSelectNumericColumn: this.updateSummaryColumn,
331
+ updateStatItem: this.props.updateStatItem
332
+ })), column_groupby_multiple_numeric_column && /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement("div", {
333
+ className: "statistics-add-number"
334
+ }, this.renderGroupbyNumericColumns()), Array.isArray(numericColumnsOptions) && numericColumnsOptions.length > 0 && /*#__PURE__*/React.createElement("div", {
335
+ className: "statistics-add-number-column",
336
+ onClick: this.onAddNumericColumn
337
+ }, /*#__PURE__*/React.createElement("span", {
338
+ className: "number-column-item dtable-font dtable-icon-add-table"
339
+ }), /*#__PURE__*/React.createElement("span", {
340
+ className: "number-column-item add-number-column-description"
341
+ }, intl.get('Add_new_numeric_column')))), (!column_groupby_multiple_numeric_column && y_axis_summary_type === SUMMARY_TYPE.ADVANCED || y_axis_summary_type === SUMMARY_TYPE.COUNT) && /*#__PURE__*/React.createElement(GroupbySettings, {
342
+ selectedTable: selectedTable,
343
+ columnsOptions: columnGroupbyColumnsOptions,
344
+ dateGranularityOptions: dateGranularityOptions,
345
+ geolocationGranularityOptions: geolocationGranularityOptions,
346
+ label: intl.get('Group_by'),
347
+ groupbyColumnKey: column_groupby_column_key,
348
+ groupbyDateGranularity: column_groupby_date_granularity,
349
+ groupbyGeolocationGranularity: column_groupby_geolocation_granularity,
350
+ getSelectedColumnOption: this.props.getSelectedColumnOption,
351
+ onSelectGroupbyColumn: this.onSelectGroupbyColumn.bind(this, GROUPBY_TYPE.COLUMN),
352
+ onSelectGroupbyDateGranularity: this.onSelectGroupbyDateGranularity.bind(this, GROUPBY_TYPE.COLUMN),
353
+ onSelectGroupbyGeolocationGranularity: this.onSelectGroupbyGeolocationGranularity.bind(this, GROUPBY_TYPE.COLUMN)
354
+ }));
355
+ }
356
+ }
351
357
  export default GroupingSettings;
@@ -1,25 +1,17 @@
1
- import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
2
- import _createClass from "@babel/runtime/helpers/esm/createClass";
3
- import _inherits from "@babel/runtime/helpers/esm/inherits";
4
- import _createSuper from "@babel/runtime/helpers/esm/createSuper";
5
1
  import React, { Component } from 'react';
6
2
  import intl from 'react-intl-universal';
7
3
  import { DTableSelect } from '../../../components';
8
4
  import { COLOR_OPTIONS } from '../../../constants';
9
- var ColorGroupSelector = /*#__PURE__*/function (_Component) {
10
- _inherits(ColorGroupSelector, _Component);
11
- var _super = _createSuper(ColorGroupSelector);
12
- function ColorGroupSelector(props) {
13
- var _this;
14
- _classCallCheck(this, ColorGroupSelector);
15
- _this = _super.call(this, props);
16
- _this.getColorOptions = function () {
17
- return COLOR_OPTIONS.map(function (colorOption) {
5
+ class ColorGroupSelector extends Component {
6
+ constructor(props) {
7
+ super(props);
8
+ this.getColorOptions = () => {
9
+ return COLOR_OPTIONS.map(colorOption => {
18
10
  return {
19
11
  value: colorOption.name,
20
12
  label: /*#__PURE__*/React.createElement("div", {
21
13
  className: "statistic-color-option d-flex"
22
- }, colorOption.exampleColors.map(function (color, index) {
14
+ }, colorOption.exampleColors.map((color, index) => {
23
15
  return /*#__PURE__*/React.createElement("span", {
24
16
  className: "statistic-color-block",
25
17
  key: index,
@@ -31,30 +23,25 @@ var ColorGroupSelector = /*#__PURE__*/function (_Component) {
31
23
  };
32
24
  });
33
25
  };
34
- _this.changeColor = function (option) {
35
- var selected = option.value;
36
- _this.props.onChangeColor(selected);
26
+ this.changeColor = option => {
27
+ const selected = option.value;
28
+ this.props.onChangeColor(selected);
37
29
  };
38
- _this.colorOptions = _this.getColorOptions();
39
- return _this;
30
+ this.colorOptions = this.getColorOptions();
40
31
  }
41
- _createClass(ColorGroupSelector, [{
42
- key: "render",
43
- value: function render() {
44
- var currentColor = this.props.currentColor;
45
- var currentOption = this.colorOptions.filter(function (item) {
46
- return item.value == currentColor;
47
- })[0] || this.colorOptions[0];
48
- return /*#__PURE__*/React.createElement("div", {
49
- className: "statistic-chart-parameter-item"
50
- }, /*#__PURE__*/React.createElement("label", null, intl.get('Color')), /*#__PURE__*/React.createElement(DTableSelect, {
51
- classNamePrefix: 'chart-color',
52
- value: currentOption,
53
- onChange: this.changeColor,
54
- options: this.colorOptions
55
- }));
56
- }
57
- }]);
58
- return ColorGroupSelector;
59
- }(Component);
32
+ render() {
33
+ const {
34
+ currentColor
35
+ } = this.props;
36
+ const currentOption = this.colorOptions.filter(item => item.value == currentColor)[0] || this.colorOptions[0];
37
+ return /*#__PURE__*/React.createElement("div", {
38
+ className: "statistic-chart-parameter-item"
39
+ }, /*#__PURE__*/React.createElement("label", null, intl.get('Color')), /*#__PURE__*/React.createElement(DTableSelect, {
40
+ classNamePrefix: 'chart-color',
41
+ value: currentOption,
42
+ onChange: this.changeColor,
43
+ options: this.colorOptions
44
+ }));
45
+ }
46
+ }
60
47
  export default ColorGroupSelector;