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,27 +1,22 @@
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 from 'react';
6
2
  import intl from 'react-intl-universal';
7
3
  import { Select } from '../../../index';
8
4
  import NumberInput from './number-input';
9
5
  import { COLOR_RULE_FILTER_TYPE_MAP, EMPTY_PREDICATE } from '../../../../constants/color-rules';
10
- var INPUT_CMP_TYPE_MAP = {
6
+ const INPUT_CMP_TYPE_MAP = {
11
7
  NUMBER: 'number'
12
8
  };
13
- var Filter = /*#__PURE__*/function (_React$Component) {
14
- _inherits(Filter, _React$Component);
15
- var _super = _createSuper(Filter);
16
- function Filter(_props) {
17
- var _this;
18
- _classCallCheck(this, Filter);
19
- _this = _super.call(this, _props);
20
- _this.initSelectOptions = function (props) {
21
- var filter = props.filter;
22
- var _this$props$getFilter = _this.props.getFilterConfigByType(filter.filter_type),
23
- filterPredicateList = _this$props$getFilter.filterPredicateList;
24
- _this.predicateOptions = filterPredicateList ? filterPredicateList.map(function (predicate) {
9
+ class Filter extends React.Component {
10
+ constructor(_props) {
11
+ super(_props);
12
+ this.initSelectOptions = props => {
13
+ const {
14
+ filter
15
+ } = props;
16
+ const {
17
+ filterPredicateList
18
+ } = this.props.getFilterConfigByType(filter.filter_type);
19
+ this.predicateOptions = filterPredicateList ? filterPredicateList.map(predicate => {
25
20
  if (EMPTY_PREDICATE.includes(predicate)) {
26
21
  return null;
27
22
  }
@@ -33,63 +28,73 @@ var Filter = /*#__PURE__*/function (_React$Component) {
33
28
  };
34
29
  }).filter(Boolean) : [];
35
30
  };
36
- _this.onDeleteFilter = function (event) {
31
+ this.onDeleteFilter = event => {
37
32
  event.nativeEvent.stopImmediatePropagation();
38
- var index = _this.props.index;
39
- _this.props.deleteFilter(index);
33
+ const {
34
+ index
35
+ } = this.props;
36
+ this.props.deleteFilter(index);
40
37
  };
41
- _this.onSelectConjunction = function (filterConjunction) {
42
- if (filterConjunction === _this.props.filterConjunction) {
38
+ this.onSelectConjunction = filterConjunction => {
39
+ if (filterConjunction === this.props.filterConjunction) {
43
40
  return;
44
41
  }
45
- _this.props.modifyConjunction(filterConjunction);
42
+ this.props.modifyConjunction(filterConjunction);
46
43
  };
47
- _this.onSelectFilterBy = function (filterType) {
48
- var _this$props = _this.props,
49
- index = _this$props.index,
50
- filter = _this$props.filter;
44
+ this.onSelectFilterBy = filterType => {
45
+ const {
46
+ index,
47
+ filter
48
+ } = this.props;
51
49
  if (filter.filter_type === filterType) return;
52
- var _this$props$getFilter2 = _this.props.getFilterConfigByType(filter.filter_type),
53
- filterPredicateList = _this$props$getFilter2.filterPredicateList;
50
+ const {
51
+ filterPredicateList
52
+ } = this.props.getFilterConfigByType(filter.filter_type);
54
53
  if (!filterPredicateList) return;
55
- var updatedFilter = Object.assign({}, filter, {
54
+ const updatedFilter = Object.assign({}, filter, {
56
55
  filter_type: filterType,
57
56
  filter_predicate: filterPredicateList[0]
58
57
  });
59
- _this.props.updateFilter(index, updatedFilter);
58
+ this.props.updateFilter(index, updatedFilter);
60
59
  };
61
- _this.onSelectPredicate = function (predicate) {
62
- var _this$props2 = _this.props,
63
- index = _this$props2.index,
64
- filter = _this$props2.filter;
60
+ this.onSelectPredicate = predicate => {
61
+ const {
62
+ index,
63
+ filter
64
+ } = this.props;
65
65
  if (filter.filter_predicate === predicate) {
66
66
  return;
67
67
  }
68
- var updatedFilter = Object.assign({}, filter, {
68
+ const updatedFilter = Object.assign({}, filter, {
69
69
  filter_predicate: predicate
70
70
  });
71
- _this.props.updateFilter(index, updatedFilter);
71
+ this.props.updateFilter(index, updatedFilter);
72
72
  };
73
- _this.onNumberFilterTermChanged = function (newFilterTerm) {
74
- var _this$props3 = _this.props,
75
- index = _this$props3.index,
76
- filter = _this$props3.filter;
73
+ this.onNumberFilterTermChanged = newFilterTerm => {
74
+ const {
75
+ index,
76
+ filter
77
+ } = this.props;
77
78
  if (newFilterTerm === filter.filter_term) return;
78
- var newFilter = Object.assign({}, filter, {
79
+ const newFilter = Object.assign({}, filter, {
79
80
  filter_term: newFilterTerm
80
81
  });
81
- _this.props.updateFilter(index, newFilter);
82
+ this.props.updateFilter(index, newFilter);
82
83
  };
83
- _this.getInputComponent = function (type) {
84
- var filter = _this.props.filter;
85
- var filter_term = filter.filter_term;
84
+ this.getInputComponent = type => {
85
+ const {
86
+ filter
87
+ } = this.props;
88
+ const {
89
+ filter_term
90
+ } = filter;
86
91
  switch (type) {
87
92
  case INPUT_CMP_TYPE_MAP.NUMBER:
88
93
  {
89
- var number = filter_term || filter_term == 0 ? filter_term : '';
94
+ const number = filter_term || filter_term == 0 ? filter_term : '';
90
95
  return /*#__PURE__*/React.createElement(NumberInput, {
91
96
  value: number,
92
- onChange: _this.onNumberFilterTermChanged
97
+ onChange: this.onNumberFilterTermChanged
93
98
  });
94
99
  }
95
100
  default:
@@ -98,11 +103,12 @@ var Filter = /*#__PURE__*/function (_React$Component) {
98
103
  }
99
104
  }
100
105
  };
101
- _this.renderConjunction = function () {
102
- var _this$props4 = _this.props,
103
- index = _this$props4.index,
104
- filterConjunction = _this$props4.filterConjunction,
105
- conjunctionOptions = _this$props4.conjunctionOptions;
106
+ this.renderConjunction = () => {
107
+ const {
108
+ index,
109
+ filterConjunction,
110
+ conjunctionOptions
111
+ } = this.props;
106
112
  switch (index) {
107
113
  case 0:
108
114
  {
@@ -110,13 +116,11 @@ var Filter = /*#__PURE__*/function (_React$Component) {
110
116
  }
111
117
  case 1:
112
118
  {
113
- var selectedConjunction = conjunctionOptions.find(function (option) {
114
- return option.value === filterConjunction;
115
- });
119
+ const selectedConjunction = conjunctionOptions.find(option => option.value === filterConjunction);
116
120
  return /*#__PURE__*/React.createElement(Select, {
117
121
  value: selectedConjunction,
118
122
  options: conjunctionOptions,
119
- onSelectOption: _this.onSelectConjunction
123
+ onSelectOption: this.onSelectConjunction
120
124
  });
121
125
  }
122
126
  default:
@@ -127,10 +131,14 @@ var Filter = /*#__PURE__*/function (_React$Component) {
127
131
  }
128
132
  }
129
133
  };
130
- _this.renderFilterTerm = function () {
131
- var filter = _this.props.filter;
132
- var filter_type = filter.filter_type,
133
- filter_predicate = filter.filter_predicate;
134
+ this.renderFilterTerm = () => {
135
+ const {
136
+ filter
137
+ } = this.props;
138
+ const {
139
+ filter_type,
140
+ filter_predicate
141
+ } = filter;
134
142
 
135
143
  // predicate is empty or not empty
136
144
  if (EMPTY_PREDICATE.includes(filter_predicate)) {
@@ -139,7 +147,7 @@ var Filter = /*#__PURE__*/function (_React$Component) {
139
147
  switch (filter_type) {
140
148
  case COLOR_RULE_FILTER_TYPE_MAP.NUMERIC_VALUE:
141
149
  {
142
- return _this.getInputComponent(INPUT_CMP_TYPE_MAP.NUMBER);
150
+ return this.getInputComponent(INPUT_CMP_TYPE_MAP.NUMBER);
143
151
  }
144
152
  default:
145
153
  {
@@ -147,68 +155,60 @@ var Filter = /*#__PURE__*/function (_React$Component) {
147
155
  }
148
156
  }
149
157
  };
150
- _this.initSelectOptions(_props);
151
- return _this;
158
+ this.initSelectOptions(_props);
152
159
  }
153
- _createClass(Filter, [{
154
- key: "UNSAFE_componentWillReceiveProps",
155
- value: function UNSAFE_componentWillReceiveProps(nextProps) {
156
- var filter = this.props.filter;
157
- if (nextProps.filter !== filter) {
158
- this.initSelectOptions(nextProps);
159
- }
160
- }
161
- }, {
162
- key: "shouldComponentUpdate",
163
- value: function shouldComponentUpdate(nextProps) {
164
- var currentProps = this.props;
165
- var shouldUpdated = nextProps.index !== currentProps.index || nextProps.filter !== currentProps.filter || nextProps.filterConjunction !== currentProps.filterConjunction;
166
- return shouldUpdated;
160
+ UNSAFE_componentWillReceiveProps(nextProps) {
161
+ const {
162
+ filter
163
+ } = this.props;
164
+ if (nextProps.filter !== filter) {
165
+ this.initSelectOptions(nextProps);
167
166
  }
168
- }, {
169
- key: "render",
170
- value: function render() {
171
- var _this$props5 = this.props,
172
- filterTypeOptions = _this$props5.filterTypeOptions,
173
- filter = _this$props5.filter;
174
- var filter_type = filter.filter_type,
175
- filter_predicate = filter.filter_predicate;
176
- var selectedFilterType = filterTypeOptions.find(function (option) {
177
- return option.value === filter_type;
178
- });
179
- var selectedPredicate = this.predicateOptions.find(function (option) {
180
- return option.value === filter_predicate;
181
- });
182
- return /*#__PURE__*/React.createElement("div", {
183
- className: "filter-item"
184
- }, /*#__PURE__*/React.createElement("div", {
185
- className: "delete-filter",
186
- onClick: this.onDeleteFilter
187
- }, /*#__PURE__*/React.createElement("i", {
188
- className: "dtable-font dtable-icon-fork-number"
189
- })), /*#__PURE__*/React.createElement("div", {
190
- className: "condition"
191
- }, /*#__PURE__*/React.createElement("div", {
192
- className: "filter-conjunction"
193
- }, this.renderConjunction()), /*#__PURE__*/React.createElement("div", {
194
- className: "filter-container"
195
- }, /*#__PURE__*/React.createElement("div", {
196
- className: "filter-column"
197
- }, /*#__PURE__*/React.createElement(Select, {
198
- value: selectedFilterType,
199
- options: filterTypeOptions,
200
- onSelectOption: this.onSelectFilterBy
201
- })), /*#__PURE__*/React.createElement("div", {
202
- className: "filter-predicate ml-2"
203
- }, /*#__PURE__*/React.createElement(Select, {
204
- value: selectedPredicate,
205
- options: this.predicateOptions,
206
- onSelectOption: this.onSelectPredicate
207
- })), /*#__PURE__*/React.createElement("div", {
208
- className: "filter-term ml-2"
209
- }, this.renderFilterTerm()))));
210
- }
211
- }]);
212
- return Filter;
213
- }(React.Component);
167
+ }
168
+ shouldComponentUpdate(nextProps) {
169
+ const currentProps = this.props;
170
+ const shouldUpdated = nextProps.index !== currentProps.index || nextProps.filter !== currentProps.filter || nextProps.filterConjunction !== currentProps.filterConjunction;
171
+ return shouldUpdated;
172
+ }
173
+ render() {
174
+ const {
175
+ filterTypeOptions,
176
+ filter
177
+ } = this.props;
178
+ const {
179
+ filter_type,
180
+ filter_predicate
181
+ } = filter;
182
+ const selectedFilterType = filterTypeOptions.find(option => option.value === filter_type);
183
+ const selectedPredicate = this.predicateOptions.find(option => option.value === filter_predicate);
184
+ return /*#__PURE__*/React.createElement("div", {
185
+ className: "filter-item"
186
+ }, /*#__PURE__*/React.createElement("div", {
187
+ className: "delete-filter",
188
+ onClick: this.onDeleteFilter
189
+ }, /*#__PURE__*/React.createElement("i", {
190
+ className: "dtable-font dtable-icon-fork-number"
191
+ })), /*#__PURE__*/React.createElement("div", {
192
+ className: "condition"
193
+ }, /*#__PURE__*/React.createElement("div", {
194
+ className: "filter-conjunction"
195
+ }, this.renderConjunction()), /*#__PURE__*/React.createElement("div", {
196
+ className: "filter-container"
197
+ }, /*#__PURE__*/React.createElement("div", {
198
+ className: "filter-column"
199
+ }, /*#__PURE__*/React.createElement(Select, {
200
+ value: selectedFilterType,
201
+ options: filterTypeOptions,
202
+ onSelectOption: this.onSelectFilterBy
203
+ })), /*#__PURE__*/React.createElement("div", {
204
+ className: "filter-predicate ml-2"
205
+ }, /*#__PURE__*/React.createElement(Select, {
206
+ value: selectedPredicate,
207
+ options: this.predicateOptions,
208
+ onSelectOption: this.onSelectPredicate
209
+ })), /*#__PURE__*/React.createElement("div", {
210
+ className: "filter-term ml-2"
211
+ }, this.renderFilterTerm()))));
212
+ }
213
+ }
214
214
  export default Filter;
@@ -1,23 +1,14 @@
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 } from 'react';
7
2
  import classnames from 'classnames';
8
3
  import intl from 'react-intl-universal';
9
4
  import Filter from './filter';
10
5
  import { DISPLAY_COLOR_RULE_FILTER_TYPE } from '../../../../constants/color-rules';
11
6
  import './index.css';
12
- var RuleFilters = /*#__PURE__*/function (_Component) {
13
- _inherits(RuleFilters, _Component);
14
- var _super = _createSuper(RuleFilters);
15
- function RuleFilters(props) {
16
- var _this;
17
- _classCallCheck(this, RuleFilters);
18
- _this = _super.call(this, props);
19
- _this.generateConjunctionOptions = function () {
20
- _this.conjunctionOptions = [{
7
+ class RuleFilters extends Component {
8
+ constructor(props) {
9
+ super(props);
10
+ this.generateConjunctionOptions = () => {
11
+ this.conjunctionOptions = [{
21
12
  value: 'And',
22
13
  label: /*#__PURE__*/React.createElement("span", {
23
14
  className: "select-option-name"
@@ -29,9 +20,11 @@ var RuleFilters = /*#__PURE__*/function (_Component) {
29
20
  }, intl.get('Or'))
30
21
  }];
31
22
  };
32
- _this.generateFilterTypeOptions = function (_ref) {
33
- var filterTypes = _ref.filterTypes;
34
- _this.filterTypeOptions = filterTypes.map(function (filterType) {
23
+ this.generateFilterTypeOptions = _ref => {
24
+ let {
25
+ filterTypes
26
+ } = _ref;
27
+ this.filterTypeOptions = filterTypes.map(filterType => {
35
28
  return {
36
29
  value: filterType,
37
30
  label: /*#__PURE__*/React.createElement("span", {
@@ -40,58 +33,57 @@ var RuleFilters = /*#__PURE__*/function (_Component) {
40
33
  };
41
34
  });
42
35
  };
43
- _this.deleteFilter = function (index) {
44
- var filters = _this.props.filters;
45
- var updatedFilters = _toConsumableArray(filters);
36
+ this.deleteFilter = index => {
37
+ const {
38
+ filters
39
+ } = this.props;
40
+ let updatedFilters = [...filters];
46
41
  updatedFilters.splice(index, 1);
47
- _this.props.updateFilters(updatedFilters);
42
+ this.props.updateFilters(updatedFilters);
48
43
  };
49
- _this.updateFilter = function (index, updatedFilter) {
50
- var filters = _this.props.filters;
51
- var updatedFilters = _toConsumableArray(filters);
44
+ this.updateFilter = (index, updatedFilter) => {
45
+ const {
46
+ filters
47
+ } = this.props;
48
+ let updatedFilters = [...filters];
52
49
  updatedFilters[index] = updatedFilter;
53
- _this.props.updateFilters(updatedFilters);
50
+ this.props.updateFilters(updatedFilters);
54
51
  };
55
- _this.renderFilter = function (filter, index) {
56
- var filterConjunction = _this.props.filterConjunction;
52
+ this.renderFilter = (filter, index) => {
53
+ const {
54
+ filterConjunction
55
+ } = this.props;
57
56
  return /*#__PURE__*/React.createElement(Filter, {
58
57
  key: index,
59
58
  index: index,
60
59
  filter: filter,
61
60
  filterConjunction: filterConjunction,
62
- conjunctionOptions: _this.conjunctionOptions,
63
- filterTypeOptions: _this.filterTypeOptions,
64
- getFilterConfigByType: _this.props.getFilterConfigByType,
65
- modifyConjunction: _this.props.modifyConjunction,
66
- deleteFilter: _this.deleteFilter,
67
- updateFilter: _this.updateFilter
61
+ conjunctionOptions: this.conjunctionOptions,
62
+ filterTypeOptions: this.filterTypeOptions,
63
+ getFilterConfigByType: this.props.getFilterConfigByType,
64
+ modifyConjunction: this.props.modifyConjunction,
65
+ deleteFilter: this.deleteFilter,
66
+ updateFilter: this.updateFilter
68
67
  });
69
68
  };
70
- _this.generateConjunctionOptions();
71
- _this.generateFilterTypeOptions(props);
72
- return _this;
69
+ this.generateConjunctionOptions();
70
+ this.generateFilterTypeOptions(props);
73
71
  }
74
- _createClass(RuleFilters, [{
75
- key: "UNSAFE_componentWillReceiveProps",
76
- value: function UNSAFE_componentWillReceiveProps(nextProps) {
77
- if (nextProps.filterTypes !== this.props.filterTypes) {
78
- this.generateFilterTypeOptions(nextProps);
79
- }
72
+ UNSAFE_componentWillReceiveProps(nextProps) {
73
+ if (nextProps.filterTypes !== this.props.filterTypes) {
74
+ this.generateFilterTypeOptions(nextProps);
80
75
  }
81
- }, {
82
- key: "render",
83
- value: function render() {
84
- var _this2 = this;
85
- var _this$props = this.props,
86
- filters = _this$props.filters,
87
- className = _this$props.className;
88
- return /*#__PURE__*/React.createElement("div", {
89
- className: classnames('statistic-color-rule-filters', className)
90
- }, filters.map(function (filter, index) {
91
- return _this2.renderFilter(filter, index);
92
- }));
93
- }
94
- }]);
95
- return RuleFilters;
96
- }(Component);
76
+ }
77
+ render() {
78
+ const {
79
+ filters,
80
+ className
81
+ } = this.props;
82
+ return /*#__PURE__*/React.createElement("div", {
83
+ className: classnames('statistic-color-rule-filters', className)
84
+ }, filters.map((filter, index) => {
85
+ return this.renderFilter(filter, index);
86
+ }));
87
+ }
88
+ }
97
89
  export default RuleFilters;
@@ -1,23 +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
  /**
6
2
  * support type number with format
7
3
  */
8
4
  import React, { Component } from 'react';
9
5
  import { DEFAULT_NUMBER_FORMAT, formatStringToNumber, getNumberDisplayString, replaceNumberNotAllowInput } from 'dtable-store';
10
- var NumberInput = /*#__PURE__*/function (_Component) {
11
- _inherits(NumberInput, _Component);
12
- var _super = _createSuper(NumberInput);
13
- function NumberInput(props) {
14
- var _this;
15
- _classCallCheck(this, NumberInput);
16
- _this = _super.call(this, props);
17
- _this.getInitValue = function () {
18
- var value = _this.props.value;
19
- var numericValue = null;
20
- var valueType = typeof value;
6
+ class NumberInput extends Component {
7
+ constructor(props) {
8
+ super(props);
9
+ this.getInitValue = () => {
10
+ const {
11
+ value
12
+ } = this.props;
13
+ let numericValue = null;
14
+ const valueType = typeof value;
21
15
  if (valueType === 'number') {
22
16
  numericValue = value;
23
17
  } else if (valueType === 'string') {
@@ -28,56 +22,47 @@ var NumberInput = /*#__PURE__*/function (_Component) {
28
22
  }
29
23
  return getNumberDisplayString(numericValue, {}) || '';
30
24
  };
31
- _this.onChange = function (evt) {
32
- var value = replaceNumberNotAllowInput(evt.target.value.trim(), DEFAULT_NUMBER_FORMAT, null);
33
- _this.setState({
34
- value: value
35
- }, function () {
36
- _this.props.onChange(formatStringToNumber(value, {}));
25
+ this.onChange = evt => {
26
+ const value = replaceNumberNotAllowInput(evt.target.value.trim(), DEFAULT_NUMBER_FORMAT, null);
27
+ this.setState({
28
+ value
29
+ }, () => {
30
+ this.props.onChange(formatStringToNumber(value, {}));
37
31
  });
38
32
  };
39
- _this.onPaste = function (evt) {
33
+ this.onPaste = evt => {
40
34
  evt.stopPropagation();
41
35
  };
42
- _this.state = {
43
- value: _this.getInitValue()
36
+ this.state = {
37
+ value: this.getInitValue()
44
38
  };
45
- return _this;
46
39
  }
47
- _createClass(NumberInput, [{
48
- key: "componentDidUpdate",
49
- value: function componentDidUpdate(prevProps) {
50
- if (this.props.value !== prevProps.value) {
51
- this.setState({
52
- value: this.getInitValue()
53
- });
54
- }
55
- }
56
- }, {
57
- key: "render",
58
- value: function render() {
59
- var _this2 = this;
60
- var _this$props = this.props,
61
- placeholder = _this$props.placeholder,
62
- disabled = _this$props.disabled,
63
- autoFocus = _this$props.autoFocus;
64
- return /*#__PURE__*/React.createElement("input", {
65
- ref: function ref(_ref) {
66
- return _this2.input = _ref;
67
- },
68
- type: "text",
69
- className: "form-control",
70
- value: this.state.value,
71
- onChange: this.onChange,
72
- onPaste: this.onPaste,
73
- placeholder: placeholder || '',
74
- autoFocus: autoFocus,
75
- disabled: disabled
40
+ componentDidUpdate(prevProps) {
41
+ if (this.props.value !== prevProps.value) {
42
+ this.setState({
43
+ value: this.getInitValue()
76
44
  });
77
45
  }
78
- }]);
79
- return NumberInput;
80
- }(Component);
46
+ }
47
+ render() {
48
+ const {
49
+ placeholder,
50
+ disabled,
51
+ autoFocus
52
+ } = this.props;
53
+ return /*#__PURE__*/React.createElement("input", {
54
+ ref: ref => this.input = ref,
55
+ type: "text",
56
+ className: "form-control",
57
+ value: this.state.value,
58
+ onChange: this.onChange,
59
+ onPaste: this.onPaste,
60
+ placeholder: placeholder || '',
61
+ autoFocus: autoFocus,
62
+ disabled: disabled
63
+ });
64
+ }
65
+ }
81
66
  NumberInput.defaultProps = {
82
67
  autoFocus: false,
83
68
  disabled: false