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,65 +1,50 @@
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 { Form, FormGroup, Label } from 'reactstrap';
8
- var LabelFontSizeEditor = /*#__PURE__*/function (_Component) {
9
- _inherits(LabelFontSizeEditor, _Component);
10
- var _super = _createSuper(LabelFontSizeEditor);
11
- function LabelFontSizeEditor() {
12
- var _this;
13
- _classCallCheck(this, LabelFontSizeEditor);
14
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
15
- args[_key] = arguments[_key];
16
- }
17
- _this = _super.call.apply(_super, [this].concat(args));
18
- _this.onChange = function (evt) {
19
- var value = evt.target.value.trim().replace(/[^0-9]/g, '');
20
- var fontSize = value ? Number(value) : null;
21
- if (fontSize === _this.props.fontSize) {
4
+ class LabelFontSizeEditor extends Component {
5
+ constructor() {
6
+ super(...arguments);
7
+ this.onChange = evt => {
8
+ const value = evt.target.value.trim().replace(/[^0-9]/g, '');
9
+ const fontSize = value ? Number(value) : null;
10
+ if (fontSize === this.props.fontSize) {
22
11
  return;
23
12
  }
24
13
  if (fontSize) {
25
- _this.props.onChangeFontSize(fontSize);
14
+ this.props.onChangeFontSize(fontSize);
26
15
  }
27
16
  };
28
- _this.onKeyDown = function (e) {
17
+ this.onKeyDown = e => {
29
18
  if (e.key == 'Enter') {
30
19
  e.preventDefault();
31
20
  e.target.blur();
32
21
  }
33
22
  };
34
- return _this;
35
23
  }
36
- _createClass(LabelFontSizeEditor, [{
37
- key: "render",
38
- value: function render() {
39
- var _this$props = this.props,
40
- fontSize = _this$props.fontSize,
41
- className = _this$props.className,
42
- id = _this$props.id,
43
- labelText = _this$props.labelText;
44
- var inputID = id || 'label-font-size';
45
- return /*#__PURE__*/React.createElement("div", {
46
- className: "label-font-size-editor ".concat(className ? className : '')
47
- }, /*#__PURE__*/React.createElement(Form, null, /*#__PURE__*/React.createElement(FormGroup, null, /*#__PURE__*/React.createElement(Label, {
48
- for: inputID
49
- }, labelText || intl.get('Label_font_size')), /*#__PURE__*/React.createElement("div", {
50
- className: "font-size-editor-wrapper"
51
- }, /*#__PURE__*/React.createElement("input", {
52
- type: "text",
53
- className: "form-control",
54
- id: inputID,
55
- defaultValue: fontSize,
56
- onBlur: this.onChange,
57
- onKeyDown: this.onKeyDown
58
- }), /*#__PURE__*/React.createElement("div", {
59
- className: "font-size-unit"
60
- }, /*#__PURE__*/React.createElement("span", null, "px"))))));
61
- }
62
- }]);
63
- return LabelFontSizeEditor;
64
- }(Component);
24
+ render() {
25
+ const {
26
+ fontSize,
27
+ className,
28
+ id,
29
+ labelText
30
+ } = this.props;
31
+ const inputID = id || 'label-font-size';
32
+ return /*#__PURE__*/React.createElement("div", {
33
+ className: "label-font-size-editor ".concat(className ? className : '')
34
+ }, /*#__PURE__*/React.createElement(Form, null, /*#__PURE__*/React.createElement(FormGroup, null, /*#__PURE__*/React.createElement(Label, {
35
+ for: inputID
36
+ }, labelText || intl.get('Label_font_size')), /*#__PURE__*/React.createElement("div", {
37
+ className: "font-size-editor-wrapper"
38
+ }, /*#__PURE__*/React.createElement("input", {
39
+ type: "text",
40
+ className: "form-control",
41
+ id: inputID,
42
+ defaultValue: fontSize,
43
+ onBlur: this.onChange,
44
+ onKeyDown: this.onKeyDown
45
+ }), /*#__PURE__*/React.createElement("div", {
46
+ className: "font-size-unit"
47
+ }, /*#__PURE__*/React.createElement("span", null, "px"))))));
48
+ }
49
+ }
65
50
  export default LabelFontSizeEditor;
@@ -1,7 +1,3 @@
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, Fragment } from 'react';
6
2
  import { Form, FormGroup, Label } from 'reactstrap';
7
3
  import intl from 'react-intl-universal';
@@ -11,23 +7,19 @@ import ToggleSetting from '../../public-setting/toggle-setting';
11
7
  import ColorUseTypeSelector from '../../color-setting/color-use-type-selector';
12
8
  import LabelFontSizeEditor from './label-font-size-editor';
13
9
  import { DEFAULT_ANNOTATION_SIZE, LABEL_FORMATS, LABEL_FORMATS_MAP, LABEL_POSITIONS, LABEL_POSITIONS_MAP, STAT_TYPE } from '../../../../constants';
14
- var PieStyleSettings = /*#__PURE__*/function (_Component) {
15
- _inherits(PieStyleSettings, _Component);
16
- var _super = _createSuper(PieStyleSettings);
17
- function PieStyleSettings(props) {
18
- var _this;
19
- _classCallCheck(this, PieStyleSettings);
20
- _this = _super.call(this, props);
21
- _this.renderShowLegend = function () {
10
+ class PieStyleSettings extends Component {
11
+ constructor(props) {
12
+ super(props);
13
+ this.renderShowLegend = () => {
22
14
  return /*#__PURE__*/React.createElement("div", {
23
15
  className: "statistic-chart-parameter-item"
24
16
  }, /*#__PURE__*/React.createElement(ToggleSetting, {
25
- isChecked: _this.props.statItem.show_legend || false,
26
- handleToggleChange: _this.onToggleShowLegend,
17
+ isChecked: this.props.statItem.show_legend || false,
18
+ handleToggleChange: this.onToggleShowLegend,
27
19
  label: intl.get('Display_legend')
28
20
  }));
29
21
  };
30
- _this.replaceNumberNotAllowInput = function (value) {
22
+ this.replaceNumberNotAllowInput = value => {
31
23
  if (!value) {
32
24
  return '';
33
25
  }
@@ -35,8 +27,10 @@ var PieStyleSettings = /*#__PURE__*/function (_Component) {
35
27
  value = value.replace(/-/g, '');
36
28
  return value.replace(/[^.-\d,]/g, '');
37
29
  };
38
- _this.renderMinimumPercent = function () {
39
- var minimumSlicePercent = _this.state.minimumSlicePercent;
30
+ this.renderMinimumPercent = () => {
31
+ const {
32
+ minimumSlicePercent
33
+ } = this.state;
40
34
  return /*#__PURE__*/React.createElement("div", {
41
35
  className: "statistic-chart-parameter-item"
42
36
  }, /*#__PURE__*/React.createElement(Form, null, /*#__PURE__*/React.createElement(FormGroup, null, /*#__PURE__*/React.createElement(Label, {
@@ -44,73 +38,83 @@ var PieStyleSettings = /*#__PURE__*/function (_Component) {
44
38
  }, intl.get('Minimum_slice_percent')), /*#__PURE__*/React.createElement("input", {
45
39
  className: "form-control",
46
40
  id: "percent",
47
- ref: function ref(_ref) {
48
- return _this.inputRef = _ref;
49
- },
41
+ ref: ref => this.inputRef = ref,
50
42
  type: "text",
51
43
  autoComplete: "off",
52
- onKeyDown: _this.onKeyDown,
53
- onBlur: _this.onBlur,
44
+ onKeyDown: this.onKeyDown,
45
+ onBlur: this.onBlur,
54
46
  value: minimumSlicePercent,
55
- onChange: _this.onPercentChange
47
+ onChange: this.onPercentChange
56
48
  }))));
57
49
  };
58
- _this.labelFontSizeEditor = function () {
59
- var statItem = _this.props.statItem;
60
- var label_font_size = statItem.label_font_size;
50
+ this.labelFontSizeEditor = () => {
51
+ const {
52
+ statItem
53
+ } = this.props;
54
+ const {
55
+ label_font_size
56
+ } = statItem;
61
57
  return /*#__PURE__*/React.createElement("div", {
62
58
  className: "statistic-chart-parameter-item"
63
59
  }, /*#__PURE__*/React.createElement(LabelFontSizeEditor, {
64
60
  fontSize: label_font_size,
65
- onChangeFontSize: _this.onChangeLabelFontSize
61
+ onChangeFontSize: this.onChangeLabelFontSize
66
62
  }));
67
63
  };
68
- _this.onKeyDown = function (event) {
64
+ this.onKeyDown = event => {
69
65
  if (event.keyCode === 13) {
70
66
  event.preventDefault();
71
- _this.inputRef.blur();
72
- _this.onCommit();
67
+ this.inputRef.blur();
68
+ this.onCommit();
73
69
  }
74
70
  };
75
- _this.onPercentChange = function (e) {
76
- var value = e.target.value;
77
- value = _this.replaceNumberNotAllowInput(value);
78
- _this.setState({
71
+ this.onPercentChange = e => {
72
+ let value = e.target.value;
73
+ value = this.replaceNumberNotAllowInput(value);
74
+ this.setState({
79
75
  minimumSlicePercent: value
80
76
  });
81
77
  };
82
- _this.onBlur = function () {
83
- _this.onCommit();
78
+ this.onBlur = () => {
79
+ this.onCommit();
84
80
  };
85
- _this.onCommit = function () {
86
- var statItem = _this.props.statItem;
87
- var minimumSlicePercent = _this.state.minimumSlicePercent;
81
+ this.onCommit = () => {
82
+ const {
83
+ statItem
84
+ } = this.props;
85
+ let {
86
+ minimumSlicePercent
87
+ } = this.state;
88
88
  if (minimumSlicePercent > 100) {
89
89
  minimumSlicePercent = 100;
90
90
  }
91
- _this.setState({
91
+ this.setState({
92
92
  minimumSlicePercent: Number(minimumSlicePercent)
93
93
  });
94
94
  if (minimumSlicePercent === statItem.minimum_slice_percent) return;
95
- _this.props.updateStatisticsSettings(Object.assign({}, statItem, {
95
+ this.props.updateStatisticsSettings(Object.assign({}, statItem, {
96
96
  minimum_slice_percent: Number(minimumSlicePercent)
97
97
  }));
98
98
  };
99
- _this.onToggleShowLegend = function () {
100
- var statItem = _this.props.statItem;
101
- var show_legend = !statItem.show_legend;
102
- _this.props.updateStatisticsSettings(Object.assign({}, statItem, {
103
- show_legend: show_legend
99
+ this.onToggleShowLegend = () => {
100
+ let {
101
+ statItem
102
+ } = this.props;
103
+ let show_legend = !statItem.show_legend;
104
+ this.props.updateStatisticsSettings(Object.assign({}, statItem, {
105
+ show_legend
104
106
  }));
105
107
  };
106
- _this.onChangeLabelFontSize = function (label_font_size) {
107
- var statItem = _this.props.statItem;
108
- _this.props.updateStatisticsSettings(Object.assign({}, statItem, {
109
- label_font_size: label_font_size
108
+ this.onChangeLabelFontSize = label_font_size => {
109
+ const {
110
+ statItem
111
+ } = this.props;
112
+ this.props.updateStatisticsSettings(Object.assign({}, statItem, {
113
+ label_font_size
110
114
  }));
111
115
  };
112
- _this.getLabelFormatOptions = function () {
113
- var options = LABEL_FORMATS.map(function (item) {
116
+ this.getLabelFormatOptions = () => {
117
+ const options = LABEL_FORMATS.map(item => {
114
118
  return {
115
119
  value: item,
116
120
  label: /*#__PURE__*/React.createElement("span", {
@@ -120,46 +124,49 @@ var PieStyleSettings = /*#__PURE__*/function (_Component) {
120
124
  });
121
125
  return options;
122
126
  };
123
- _this.getSelectedLabelFormat = function () {
124
- var options = _this.labelFormatOptions;
125
- var _this$props$statItem = _this.props.statItem,
126
- show_percent = _this$props$statItem.show_percent,
127
- label_format = _this$props$statItem.label_format;
127
+ this.getSelectedLabelFormat = () => {
128
+ const options = this.labelFormatOptions;
129
+ const {
130
+ show_percent,
131
+ label_format
132
+ } = this.props.statItem;
128
133
 
129
134
  // be compatible with `show_percent`(the previous `display percent` setting option)
130
135
  if (show_percent) {
131
136
  return options[0]; // the 'percent' option
132
137
  }
133
138
 
134
- return options.filter(function (option) {
135
- return option.value == label_format;
136
- })[0] || options[0];
139
+ return options.filter(option => option.value == label_format)[0] || options[0];
137
140
  };
138
- _this.onSelectLabelFormat = function (option) {
139
- var statItem = _this.props.statItem;
140
- var newObj = {
141
+ this.onSelectLabelFormat = option => {
142
+ const {
143
+ statItem
144
+ } = this.props;
145
+ const newObj = {
141
146
  label_format: option.value
142
147
  };
143
148
 
144
149
  // make `show_percent` no longer work (as there is a 'percent' option in this 'label format selector')
145
- var show_percent = statItem.show_percent;
150
+ const {
151
+ show_percent
152
+ } = statItem;
146
153
  if (show_percent) {
147
154
  newObj.show_percent = false;
148
155
  }
149
- _this.props.updateStatisticsSettings(Object.assign({}, statItem, newObj));
156
+ this.props.updateStatisticsSettings(Object.assign({}, statItem, newObj));
150
157
  };
151
- _this.renderLabelFormatSelector = function () {
152
- var selectedOption = _this.getSelectedLabelFormat();
158
+ this.renderLabelFormatSelector = () => {
159
+ let selectedOption = this.getSelectedLabelFormat();
153
160
  return /*#__PURE__*/React.createElement("div", {
154
161
  className: "statistic-chart-parameter-item"
155
162
  }, /*#__PURE__*/React.createElement("label", null, intl.get('Label_format')), /*#__PURE__*/React.createElement(DTableSelect, {
156
163
  value: selectedOption,
157
- onChange: _this.onSelectLabelFormat,
158
- options: _this.labelFormatOptions
164
+ onChange: this.onSelectLabelFormat,
165
+ options: this.labelFormatOptions
159
166
  }));
160
167
  };
161
- _this.getLabelPositionOptions = function () {
162
- var options = LABEL_POSITIONS.map(function (item) {
168
+ this.getLabelPositionOptions = () => {
169
+ const options = LABEL_POSITIONS.map(item => {
163
170
  return {
164
171
  value: item,
165
172
  label: /*#__PURE__*/React.createElement("span", {
@@ -169,35 +176,41 @@ var PieStyleSettings = /*#__PURE__*/function (_Component) {
169
176
  });
170
177
  return options;
171
178
  };
172
- _this.getSelectedLabelPosition = function () {
173
- var options = _this.labelPositionOptions;
174
- var label_position = _this.props.statItem.label_position;
175
- return options.filter(function (option) {
176
- return option.value == label_position;
177
- })[0] || options[0];
179
+ this.getSelectedLabelPosition = () => {
180
+ const options = this.labelPositionOptions;
181
+ const {
182
+ label_position
183
+ } = this.props.statItem;
184
+ return options.filter(option => option.value == label_position)[0] || options[0];
178
185
  };
179
- _this.onSelectLabelPosition = function (option) {
180
- var statItem = _this.props.statItem;
181
- var newObj = {
186
+ this.onSelectLabelPosition = option => {
187
+ const {
188
+ statItem
189
+ } = this.props;
190
+ const newObj = {
182
191
  label_position: option.value
183
192
  };
184
- _this.props.updateStatisticsSettings(Object.assign({}, statItem, newObj));
193
+ this.props.updateStatisticsSettings(Object.assign({}, statItem, newObj));
185
194
  };
186
- _this.renderLabelPositionSelector = function () {
187
- var selectedOption = _this.getSelectedLabelPosition();
195
+ this.renderLabelPositionSelector = () => {
196
+ let selectedOption = this.getSelectedLabelPosition();
188
197
  return /*#__PURE__*/React.createElement("div", {
189
198
  className: "statistic-chart-parameter-item"
190
199
  }, /*#__PURE__*/React.createElement("label", null, intl.get('Label_position')), /*#__PURE__*/React.createElement(DTableSelect, {
191
200
  value: selectedOption,
192
- onChange: _this.onSelectLabelPosition,
193
- options: _this.labelPositionOptions
201
+ onChange: this.onSelectLabelPosition,
202
+ options: this.labelPositionOptions
194
203
  }));
195
204
  };
196
- _this.onToggleDisplayLabel = function () {
197
- var statItem = _this.props.statItem;
198
- var display_label = statItem.display_label,
199
- show_percent = statItem.show_percent;
200
- var newObj;
205
+ this.onToggleDisplayLabel = () => {
206
+ const {
207
+ statItem
208
+ } = this.props;
209
+ const {
210
+ display_label,
211
+ show_percent
212
+ } = statItem;
213
+ let newObj;
201
214
  // be compatible with the previous `show_percent`(the `display percent` option)
202
215
  if (show_percent) {
203
216
  newObj = {
@@ -209,12 +222,16 @@ var PieStyleSettings = /*#__PURE__*/function (_Component) {
209
222
  display_label: !display_label
210
223
  };
211
224
  }
212
- _this.props.updateStatisticsSettings(Object.assign({}, statItem, newObj));
225
+ this.props.updateStatisticsSettings(Object.assign({}, statItem, newObj));
213
226
  };
214
- _this.renderDisplayLabel = function () {
215
- var statItem = _this.props.statItem;
216
- var show_percent = statItem.show_percent,
217
- display_label = statItem.display_label;
227
+ this.renderDisplayLabel = () => {
228
+ const {
229
+ statItem
230
+ } = this.props;
231
+ let {
232
+ show_percent,
233
+ display_label
234
+ } = statItem;
218
235
  // be compatible with the previous `show_percent`(the `display percent` option)
219
236
  if (show_percent) {
220
237
  display_label = true;
@@ -223,96 +240,112 @@ var PieStyleSettings = /*#__PURE__*/function (_Component) {
223
240
  className: "statistic-chart-parameter-item"
224
241
  }, /*#__PURE__*/React.createElement(ToggleSetting, {
225
242
  isChecked: display_label || false,
226
- handleToggleChange: _this.onToggleDisplayLabel,
243
+ handleToggleChange: this.onToggleDisplayLabel,
227
244
  label: intl.get('Display_label')
228
245
  }));
229
246
  };
230
- _this.displayColorSelector = function () {
231
- var _this$props = _this.props,
232
- getTableById = _this$props.getTableById,
233
- statItem = _this$props.statItem;
234
- var table_id = statItem.table_id,
235
- groupby_column_key = statItem.groupby_column_key;
247
+ this.displayColorSelector = () => {
248
+ const {
249
+ getTableById,
250
+ statItem
251
+ } = this.props;
252
+ const {
253
+ table_id,
254
+ groupby_column_key
255
+ } = statItem;
236
256
  if (!groupby_column_key) {
237
257
  return false;
238
258
  }
239
- var table = getTableById(table_id);
240
- var groupByColumn = TableUtils.getTableColumnByKey(table, groupby_column_key);
241
- var columnType = groupByColumn.type;
259
+ const table = getTableById(table_id);
260
+ const groupByColumn = TableUtils.getTableColumnByKey(table, groupby_column_key);
261
+ const {
262
+ type: columnType
263
+ } = groupByColumn;
242
264
  if (columnType == CellType.SINGLE_SELECT) {
243
265
  return true;
244
266
  }
245
267
  return false;
246
268
  };
247
- _this.renderDisplayAnnotation = function () {
248
- var display_annotation = _this.getDisplayAnnotation();
269
+ this.renderDisplayAnnotation = () => {
270
+ const display_annotation = this.getDisplayAnnotation();
249
271
  return /*#__PURE__*/React.createElement("div", {
250
272
  className: "statistic-chart-parameter-item"
251
273
  }, /*#__PURE__*/React.createElement(ToggleSetting, {
252
274
  isChecked: display_annotation,
253
- handleToggleChange: _this.onToggleDisplayAnnotation,
275
+ handleToggleChange: this.onToggleDisplayAnnotation,
254
276
  label: intl.get('Display_annotation')
255
277
  }));
256
278
  };
257
- _this.onToggleDisplayAnnotation = function (e) {
258
- var statItem = _this.props.statItem;
259
- _this.props.updateStatisticsSettings(Object.assign({}, statItem, {
279
+ this.onToggleDisplayAnnotation = e => {
280
+ const {
281
+ statItem
282
+ } = this.props;
283
+ this.props.updateStatisticsSettings(Object.assign({}, statItem, {
260
284
  display_annotation: e.target.checked
261
285
  }));
262
286
  };
263
- _this.getDisplayAnnotation = function () {
264
- var statItem = _this.props.statItem;
265
- var display_annotation = statItem.display_annotation;
287
+ this.getDisplayAnnotation = () => {
288
+ const {
289
+ statItem
290
+ } = this.props;
291
+ let {
292
+ display_annotation
293
+ } = statItem;
266
294
  // for stat items created before `display_annotation` was added.
267
295
  if (display_annotation == undefined) {
268
296
  display_annotation = true;
269
297
  }
270
298
  return display_annotation;
271
299
  };
272
- _this.renderAnnotationFontSizeEditor = function () {
273
- var statItem = _this.props.statItem;
274
- var annotation_font_size = statItem.annotation_font_size;
300
+ this.renderAnnotationFontSizeEditor = () => {
301
+ const {
302
+ statItem
303
+ } = this.props;
304
+ const {
305
+ annotation_font_size
306
+ } = statItem;
275
307
  return /*#__PURE__*/React.createElement("div", {
276
308
  className: "statistic-chart-parameter-item"
277
309
  }, /*#__PURE__*/React.createElement(LabelFontSizeEditor, {
278
310
  id: 'annotation-font-size',
279
311
  labelText: intl.get('Font_size'),
280
312
  fontSize: annotation_font_size || DEFAULT_ANNOTATION_SIZE,
281
- onChangeFontSize: _this.onChangeAnnotationFontSize
313
+ onChangeFontSize: this.onChangeAnnotationFontSize
282
314
  }));
283
315
  };
284
- _this.onChangeAnnotationFontSize = function (annotation_font_size) {
285
- var statItem = _this.props.statItem;
286
- _this.props.updateStatisticsSettings(Object.assign({}, statItem, {
287
- annotation_font_size: annotation_font_size
316
+ this.onChangeAnnotationFontSize = annotation_font_size => {
317
+ const {
318
+ statItem
319
+ } = this.props;
320
+ this.props.updateStatisticsSettings(Object.assign({}, statItem, {
321
+ annotation_font_size
288
322
  }));
289
323
  };
290
- _this.labelFormatOptions = _this.getLabelFormatOptions();
291
- _this.labelPositionOptions = _this.getLabelPositionOptions();
292
- var _minimumSlicePercent = typeof props.statItem.minimum_slice_percent === 'number' ? props.statItem.minimum_slice_percent : 1.5;
293
- _this.state = {
324
+ this.labelFormatOptions = this.getLabelFormatOptions();
325
+ this.labelPositionOptions = this.getLabelPositionOptions();
326
+ let _minimumSlicePercent = typeof props.statItem.minimum_slice_percent === 'number' ? props.statItem.minimum_slice_percent : 1.5;
327
+ this.state = {
294
328
  minimumSlicePercent: _minimumSlicePercent
295
329
  };
296
- return _this;
297
330
  }
298
- _createClass(PieStyleSettings, [{
299
- key: "render",
300
- value: function render() {
301
- var statItem = this.props.statItem;
302
- var show_percent = statItem.show_percent,
303
- display_label = statItem.display_label;
304
- return /*#__PURE__*/React.createElement(Fragment, null, this.renderShowLegend(), /*#__PURE__*/React.createElement("div", {
305
- className: "statistic-chart-parameter-divider"
306
- }), this.renderDisplayLabel(), (show_percent || display_label) && /*#__PURE__*/React.createElement(Fragment, null, this.renderLabelPositionSelector(), this.renderLabelFormatSelector(), this.renderMinimumPercent(), this.labelFontSizeEditor()), statItem.type == STAT_TYPE.RING && /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement("div", {
307
- className: "statistic-chart-parameter-divider"
308
- }), this.renderDisplayAnnotation(), this.getDisplayAnnotation() && this.renderAnnotationFontSizeEditor()), this.displayColorSelector() && /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement("div", {
309
- className: "statistic-chart-parameter-divider"
310
- }), /*#__PURE__*/React.createElement(ColorUseTypeSelector, {
311
- chart: statItem,
312
- updateChart: this.props.updateStatisticsSettings
313
- })));
314
- }
315
- }]);
316
- return PieStyleSettings;
317
- }(Component);
331
+ render() {
332
+ const {
333
+ statItem
334
+ } = this.props;
335
+ const {
336
+ show_percent,
337
+ display_label
338
+ } = statItem;
339
+ return /*#__PURE__*/React.createElement(Fragment, null, this.renderShowLegend(), /*#__PURE__*/React.createElement("div", {
340
+ className: "statistic-chart-parameter-divider"
341
+ }), this.renderDisplayLabel(), (show_percent || display_label) && /*#__PURE__*/React.createElement(Fragment, null, this.renderLabelPositionSelector(), this.renderLabelFormatSelector(), this.renderMinimumPercent(), this.labelFontSizeEditor()), statItem.type == STAT_TYPE.RING && /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement("div", {
342
+ className: "statistic-chart-parameter-divider"
343
+ }), this.renderDisplayAnnotation(), this.getDisplayAnnotation() && this.renderAnnotationFontSizeEditor()), this.displayColorSelector() && /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement("div", {
344
+ className: "statistic-chart-parameter-divider"
345
+ }), /*#__PURE__*/React.createElement(ColorUseTypeSelector, {
346
+ chart: statItem,
347
+ updateChart: this.props.updateStatisticsSettings
348
+ })));
349
+ }
350
+ }
318
351
  export default PieStyleSettings;