dtable-statistic 5.0.0 → 5.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (201) hide show
  1. package/es/assets/css/dashboard.css +1 -0
  2. package/es/assets/css/dialog.css +35 -0
  3. package/es/components/dialog/chart-edit-dialog.js +93 -0
  4. package/es/components/dialog/enlarged-chart-dialog.js +8 -13
  5. package/es/components/dialog/statistic-record-dialog/index.js +27 -35
  6. package/es/components/dialog/table-select-dialog.js +3 -3
  7. package/es/components/dropdown-menu/statistic-dropdown-menu.js +2 -2
  8. package/es/constants/index.js +3 -499
  9. package/es/dashboard.js +9 -87
  10. package/es/desktop-dashboard.js +51 -32
  11. package/es/index.js +56 -1
  12. package/es/mobile-dashboard.js +8 -16
  13. package/es/model/conver-statItem.js +124 -0
  14. package/es/service/chart-service.js +8 -27
  15. package/es/service/dashboard-service.js +25 -29
  16. package/es/stat-list/chart-preview.js +19 -20
  17. package/es/stat-list/index.js +17 -23
  18. package/es/stat-view/index.js +47 -156
  19. package/es/tabs/tab.js +18 -15
  20. package/es/utils/common-utils.js +2 -352
  21. package/es/utils/export-table-utils.js +0 -69
  22. package/es/utils/index.js +12 -89
  23. package/package.json +5 -8
  24. package/es/assets/css/color-picker.css +0 -53
  25. package/es/assets/css/color-rules-popover.css +0 -144
  26. package/es/assets/css/slider.css +0 -77
  27. package/es/assets/css/statistic-chart.module.css +0 -11
  28. package/es/assets/css/statistic-custom-title.module.css +0 -3
  29. package/es/assets/css/statistic-custom.module.css +0 -4
  30. package/es/assets/css/statistic-numeric-column-item.module.css +0 -43
  31. package/es/assets/css/statistic-time-picker.module.css +0 -21
  32. package/es/calculator/base-calculator.js +0 -80
  33. package/es/calculator/basic-chart-calculator.js +0 -349
  34. package/es/calculator/combination-calculator.js +0 -246
  35. package/es/calculator/compare-bar-calculator.js +0 -197
  36. package/es/calculator/completeness-calculator.js +0 -215
  37. package/es/calculator/copy-value.js +0 -53
  38. package/es/calculator/dashboard-calculator.js +0 -70
  39. package/es/calculator/heat-map-calculator.js +0 -148
  40. package/es/calculator/horizontal-bar-calculator.js +0 -67
  41. package/es/calculator/index.js +0 -81
  42. package/es/calculator/map-calculator.js +0 -103
  43. package/es/calculator/mirror-calculator.js +0 -146
  44. package/es/calculator/number-card-calculator.js +0 -60
  45. package/es/calculator/pivot-table-calculator.js +0 -821
  46. package/es/calculator/scatter-calculator.js +0 -75
  47. package/es/calculator/thread-manager.js +0 -57
  48. package/es/calculator/trend-calculator.js +0 -113
  49. package/es/calculator/workers/basic-chart-calculator-worker.js +0 -495
  50. package/es/calculator/workers/calculator.worker.js +0 -44
  51. package/es/calculator/workers/card-calculator-worker.js +0 -40
  52. package/es/calculator/workers/combination-calculator-worker.js +0 -276
  53. package/es/calculator/workers/compare-bar-chart-calculator-worker.js +0 -150
  54. package/es/calculator/workers/completeness-calculator-worker.js +0 -208
  55. package/es/calculator/workers/dashboard-calculator-worker.js +0 -68
  56. package/es/calculator/workers/mirror-calculator-worker.js +0 -152
  57. package/es/calculator/workers/pivot-table-calculator-worker.js +0 -718
  58. package/es/calculator/workers/scatter-calculator-worker.js +0 -80
  59. package/es/calculator/workers/trend-calculator-worker.js +0 -108
  60. package/es/calculator/world-map-calculator.js +0 -124
  61. package/es/components/dialog/chart-addition-edit-dialog.js +0 -90
  62. package/es/components/dialog/chart-addition-widgets/chart-selector.js +0 -259
  63. package/es/components/dialog/chart-addition-widgets/statistic-chart-selector.module.css +0 -83
  64. package/es/components/dialog/statistic-types-dialog/index.css +0 -14
  65. package/es/components/dialog/statistic-types-dialog/index.js +0 -62
  66. package/es/components/popover/color-rules/color-rule.js +0 -183
  67. package/es/components/popover/color-rules/index.js +0 -87
  68. package/es/components/popover/color-rules/rule-filters/filter.js +0 -221
  69. package/es/components/popover/color-rules/rule-filters/index.css +0 -210
  70. package/es/components/popover/color-rules/rule-filters/index.js +0 -97
  71. package/es/components/popover/color-rules/rule-filters/number-input.js +0 -78
  72. package/es/components/popover/color-rules-popover.js +0 -218
  73. package/es/components/popover/color-selector-popover.js +0 -83
  74. package/es/constants/color-rules.js +0 -17
  75. package/es/constants/map.js +0 -13
  76. package/es/constants/model.js +0 -26
  77. package/es/constants/regions.js +0 -2111
  78. package/es/constants/zIndexes.js +0 -7
  79. package/es/custom-g2.js +0 -644
  80. package/es/model/bar-group.js +0 -58
  81. package/es/model/bar.js +0 -47
  82. package/es/model/base-model.js +0 -18
  83. package/es/model/basic-number-card.js +0 -25
  84. package/es/model/combination.js +0 -48
  85. package/es/model/compare-bar.js +0 -56
  86. package/es/model/completeness-group.js +0 -31
  87. package/es/model/completeness.js +0 -25
  88. package/es/model/custom-bar.js +0 -25
  89. package/es/model/dashboard.js +0 -20
  90. package/es/model/generic-model.js +0 -222
  91. package/es/model/heat-map.js +0 -33
  92. package/es/model/horizontal-bar-group.js +0 -55
  93. package/es/model/horizontal-bar.js +0 -47
  94. package/es/model/index.js +0 -187
  95. package/es/model/map.js +0 -38
  96. package/es/model/mirror.js +0 -33
  97. package/es/model/pie.js +0 -38
  98. package/es/model/ring.js +0 -40
  99. package/es/model/scatter.js +0 -22
  100. package/es/model/table.js +0 -32
  101. package/es/model/trend.js +0 -32
  102. package/es/model/world-map.js +0 -34
  103. package/es/service/map-json.js +0 -140
  104. package/es/stat-editor/chart-name-editor.js +0 -68
  105. package/es/stat-editor/index.js +0 -75
  106. package/es/stat-editor/stat-settings/advance-chart-settings/basic-number-card-settings.js +0 -153
  107. package/es/stat-editor/stat-settings/advance-chart-settings/combination-settings.js +0 -422
  108. package/es/stat-editor/stat-settings/advance-chart-settings/dashboard-chart-settings.js +0 -203
  109. package/es/stat-editor/stat-settings/advance-chart-settings/geo-granularity-settings.js +0 -23
  110. package/es/stat-editor/stat-settings/advance-chart-settings/heat-map-settings.js +0 -104
  111. package/es/stat-editor/stat-settings/advance-chart-settings/index.js +0 -334
  112. package/es/stat-editor/stat-settings/advance-chart-settings/map-settings.js +0 -119
  113. package/es/stat-editor/stat-settings/advance-chart-settings/mirror-settings.js +0 -132
  114. package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/combination-style-setting.js +0 -240
  115. package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/heat-map-settings.js +0 -89
  116. package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/map-setting.js +0 -138
  117. package/es/stat-editor/stat-settings/advance-chart-settings/summary-settings.js +0 -331
  118. package/es/stat-editor/stat-settings/advance-chart-settings/trend-chart-settings.js +0 -143
  119. package/es/stat-editor/stat-settings/advance-chart-settings/world-map-settings.js +0 -109
  120. package/es/stat-editor/stat-settings/basic-chart-settings/advance-bar-chart-settings.js +0 -153
  121. package/es/stat-editor/stat-settings/basic-chart-settings/bar-settings.js +0 -144
  122. package/es/stat-editor/stat-settings/basic-chart-settings/completeness-chart-settings.js +0 -214
  123. package/es/stat-editor/stat-settings/basic-chart-settings/custom-bar-settings.js +0 -121
  124. package/es/stat-editor/stat-settings/basic-chart-settings/groupby-settings.js +0 -172
  125. package/es/stat-editor/stat-settings/basic-chart-settings/horizontal-axis-group-settings.js +0 -366
  126. package/es/stat-editor/stat-settings/basic-chart-settings/horizontal-bar-settings.js +0 -142
  127. package/es/stat-editor/stat-settings/basic-chart-settings/horizontal-group-chart-settings.js +0 -150
  128. package/es/stat-editor/stat-settings/basic-chart-settings/index.js +0 -473
  129. package/es/stat-editor/stat-settings/basic-chart-settings/pie-settings.js +0 -182
  130. package/es/stat-editor/stat-settings/basic-chart-settings/pivot-table-settings.js +0 -564
  131. package/es/stat-editor/stat-settings/basic-chart-settings/scatter-settings.js +0 -112
  132. package/es/stat-editor/stat-settings/basic-chart-settings/stack-item-settings.js +0 -87
  133. package/es/stat-editor/stat-settings/basic-chart-settings/stacks-settings.js +0 -187
  134. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/bar-chart-style-setting.js +0 -300
  135. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/completeness-style.js +0 -113
  136. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/horizontal-bar-chart-style.js +0 -289
  137. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/label-font-size-editor.js +0 -58
  138. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/pie-chart-style-settings.js +0 -359
  139. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/time-compare-style.js +0 -48
  140. package/es/stat-editor/stat-settings/basic-chart-settings/summary-method-setting.js +0 -121
  141. package/es/stat-editor/stat-settings/basic-chart-settings/summary-settings.js +0 -143
  142. package/es/stat-editor/stat-settings/basic-chart-settings/time-comparison-settings.js +0 -269
  143. package/es/stat-editor/stat-settings/basic-chart-settings/timer-picker.js +0 -104
  144. package/es/stat-editor/stat-settings/basic-chart-settings/y-axis-group-settings.js +0 -366
  145. package/es/stat-editor/stat-settings/color-setting/color-group-selector.js +0 -55
  146. package/es/stat-editor/stat-settings/color-setting/color-picker.js +0 -130
  147. package/es/stat-editor/stat-settings/color-setting/color-use-type-selector.js +0 -374
  148. package/es/stat-editor/stat-settings/map/map-level.js +0 -72
  149. package/es/stat-editor/stat-settings/map/map-province-city.js +0 -151
  150. package/es/stat-editor/stat-settings/public-setting/axis-label-position-setting.js +0 -108
  151. package/es/stat-editor/stat-settings/public-setting/base-settings.js +0 -154
  152. package/es/stat-editor/stat-settings/public-setting/calender.js +0 -125
  153. package/es/stat-editor/stat-settings/public-setting/column-settings.js +0 -24
  154. package/es/stat-editor/stat-settings/public-setting/custom-title-setting.js +0 -62
  155. package/es/stat-editor/stat-settings/public-setting/data-sort-setting.js +0 -61
  156. package/es/stat-editor/stat-settings/public-setting/ind-toggle-setting.js +0 -35
  157. package/es/stat-editor/stat-settings/public-setting/min-max-setting.js +0 -60
  158. package/es/stat-editor/stat-settings/public-setting/numeric-summary-item.js +0 -123
  159. package/es/stat-editor/stat-settings/public-setting/toggle-setting.js +0 -33
  160. package/es/stat-editor/stat-settings/public-setting/type-settings/index.css +0 -29
  161. package/es/stat-editor/stat-settings/public-setting/type-settings/index.js +0 -82
  162. package/es/stat-view/area-chart.js +0 -551
  163. package/es/stat-view/bar-chart.js +0 -582
  164. package/es/stat-view/base-chart.js +0 -132
  165. package/es/stat-view/basic-number-card.js +0 -201
  166. package/es/stat-view/combination-chart.js +0 -546
  167. package/es/stat-view/compare-chart.js +0 -483
  168. package/es/stat-view/completeness-chart.js +0 -390
  169. package/es/stat-view/custom-bar.js +0 -418
  170. package/es/stat-view/dashboard-chart.js +0 -266
  171. package/es/stat-view/heat-map.js +0 -463
  172. package/es/stat-view/horizontal-bar-chart.js +0 -562
  173. package/es/stat-view/line-chart.js +0 -518
  174. package/es/stat-view/map.js +0 -448
  175. package/es/stat-view/mirror.js +0 -275
  176. package/es/stat-view/pie-chart.js +0 -290
  177. package/es/stat-view/pivot-table/index.js +0 -196
  178. package/es/stat-view/pivot-table/one-dimension-table-no-numeric-columns.js +0 -156
  179. package/es/stat-view/pivot-table/one-dimension-table-with-numeric-columns.js +0 -176
  180. package/es/stat-view/pivot-table/pivot-table-display-name.js +0 -215
  181. package/es/stat-view/pivot-table/statistic-pivot-table.module.css +0 -132
  182. package/es/stat-view/pivot-table/two-dimension-table.js +0 -384
  183. package/es/stat-view/ring-chart.js +0 -392
  184. package/es/stat-view/scatter-chart.js +0 -306
  185. package/es/stat-view/treemap-chart.js +0 -253
  186. package/es/stat-view/trend-chart.js +0 -249
  187. package/es/stat-view/world-map.js +0 -431
  188. package/es/utils/basic-chart-utils.js +0 -29
  189. package/es/utils/cell-format.js +0 -115
  190. package/es/utils/collaborator.js +0 -50
  191. package/es/utils/color-utils.js +0 -134
  192. package/es/utils/column-utils.js +0 -110
  193. package/es/utils/column.js +0 -20
  194. package/es/utils/date-format.js +0 -71
  195. package/es/utils/map.js +0 -114
  196. package/es/utils/model.js +0 -19
  197. package/es/utils/row-utils.js +0 -134
  198. package/es/utils/search.js +0 -73
  199. package/es/utils/sql-utils.js +0 -359
  200. package/es/utils/stat-utils.js +0 -351
  201. package/es/utils/trend-utils.js +0 -135
@@ -1,150 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
- var _react = _interopRequireWildcard(require("react"));
10
- var _reactIntlUniversal = _interopRequireDefault(require("react-intl-universal"));
11
- var _baseSettings = _interopRequireDefault(require("../public-setting/base-settings"));
12
- var _horizontalBarChartStyle = _interopRequireDefault(require("./style-setting/horizontal-bar-chart-style"));
13
- var _groupbySettings = _interopRequireDefault(require("./groupby-settings"));
14
- var _horizontalAxisGroupSettings = _interopRequireDefault(require("./horizontal-axis-group-settings"));
15
- var _dataSortSetting = _interopRequireDefault(require("../public-setting/data-sort-setting"));
16
- var _constants = require("../../../constants");
17
- class HorizontalGroupBarChartSettings extends _react.Component {
18
- constructor() {
19
- super(...arguments);
20
- this.onSelectGroupbyColumn = (type, groupbyColumnKey, groupbyDateGranularity, groupbyGeolocationGranularity) => {
21
- let updated = {
22
- vertical_axis_column_key: groupbyColumnKey,
23
- vertical_axis_date_granularity: groupbyDateGranularity,
24
- vertical_axis_geolocation_granularity: groupbyGeolocationGranularity
25
- };
26
- this.props.updateStatItem(Object.assign({}, this.props.statItem, updated));
27
- };
28
- this.onSelectGroupbyDateGranularity = (type, dateGranularity) => {
29
- let updated = {
30
- vertical_axis_date_granularity: dateGranularity
31
- };
32
- this.props.updateStatItem(Object.assign({}, this.props.statItem, updated));
33
- };
34
- this.onSelectGroupbyGeolocationGranularity = (type, geolocationGranularity) => {
35
- let updated = {
36
- vertical_axis_geolocation_granularity: geolocationGranularity
37
- };
38
- this.props.updateStatItem(Object.assign({}, this.props.statItem, updated));
39
- };
40
- this.updatedSummaryType = (summaryType, summaryColumnKey, summaryMethod) => {
41
- let {
42
- statItem
43
- } = this.props;
44
- let updated = {
45
- horizontal_axis_summary_type: summaryType,
46
- horizontal_axis_column_key: summaryColumnKey,
47
- horizontal_axis_summary_method: summaryMethod
48
- };
49
- this.props.updateStatItem(Object.assign({}, statItem, updated));
50
- };
51
- this.updateSummaryColumn = summaryColumnKey => {
52
- this.props.updateStatItem(Object.assign({}, this.props.statItem, {
53
- horizontal_axis_column_key: summaryColumnKey
54
- }));
55
- };
56
- this.updateSummaryMethod = summaryMethod => {
57
- this.props.updateStatItem(Object.assign({}, this.props.statItem, {
58
- horizontal_axis_summary_method: summaryMethod
59
- }));
60
- };
61
- }
62
- render() {
63
- let {
64
- getTables,
65
- getViews,
66
- eventBus,
67
- statItem,
68
- labelColorConfigs,
69
- selectedTable,
70
- generalColumnsOptions,
71
- numericColumnsOptions,
72
- dateGranularityOptions,
73
- geolocationGranularityOptions,
74
- renderIncludeEmpty,
75
- settingType,
76
- columnGroupbyColumnsOptions
77
- } = this.props;
78
- let {
79
- table_id: selectedTableId,
80
- view_id: selectedViewId,
81
- vertical_axis_column_key,
82
- vertical_axis_date_granularity,
83
- vertical_axis_geolocation_granularity,
84
- horizontal_axis_summary_type,
85
- horizontal_axis_column_key,
86
- horizontal_axis_summary_method
87
- } = statItem || {};
88
- if (settingType === 'style') {
89
- return /*#__PURE__*/_react.default.createElement(_horizontalBarChartStyle.default, {
90
- statItem: statItem,
91
- labelColorConfigs: labelColorConfigs,
92
- eventBus: eventBus,
93
- getTableById: this.props.getTableById,
94
- updateStatItem: this.props.updateStatItem
95
- });
96
- }
97
- return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_baseSettings.default, {
98
- statItem: statItem,
99
- selectedTableId: selectedTableId,
100
- selectedViewId: selectedViewId,
101
- getTables: getTables,
102
- getViews: getViews,
103
- getTableById: this.props.getTableById,
104
- getConvertedChart: this.props.getConvertedChart,
105
- updateStatItem: this.props.updateStatItem
106
- }), /*#__PURE__*/_react.default.createElement("div", {
107
- className: "statistic-chart-parameter-divider"
108
- }), /*#__PURE__*/_react.default.createElement(_groupbySettings.default, {
109
- selectedTable: selectedTable,
110
- columnsOptions: generalColumnsOptions,
111
- dateGranularityOptions: dateGranularityOptions,
112
- geolocationGranularityOptions: geolocationGranularityOptions,
113
- label: _reactIntlUniversal.default.get('Vertical_axis'),
114
- groupbyColumnKey: vertical_axis_column_key,
115
- groupbyDateGranularity: vertical_axis_date_granularity,
116
- groupbyGeolocationGranularity: vertical_axis_geolocation_granularity,
117
- getSelectedColumnOption: this.props.getSelectedColumnOption,
118
- onSelectGroupbyColumn: this.onSelectGroupbyColumn.bind(this, _constants.GROUPBY_TYPE.ROW),
119
- onSelectGroupbyDateGranularity: this.onSelectGroupbyDateGranularity.bind(this, _constants.GROUPBY_TYPE.ROW),
120
- onSelectGroupbyGeolocationGranularity: this.onSelectGroupbyGeolocationGranularity.bind(this, _constants.GROUPBY_TYPE.ROW),
121
- renderIncludeEmpty: renderIncludeEmpty
122
- }), /*#__PURE__*/_react.default.createElement("div", {
123
- className: "statistic-chart-parameter-divider"
124
- }), /*#__PURE__*/_react.default.createElement(_horizontalAxisGroupSettings.default, {
125
- label: _reactIntlUniversal.default.get('Horizontal_axis'),
126
- statItem: statItem,
127
- selectedTable: selectedTable,
128
- summaryType: horizontal_axis_summary_type,
129
- summaryColumnKey: horizontal_axis_column_key,
130
- summaryMethod: horizontal_axis_summary_method,
131
- columnGroupbyColumnsOptions: columnGroupbyColumnsOptions,
132
- dateGranularityOptions: dateGranularityOptions,
133
- geolocationGranularityOptions: geolocationGranularityOptions,
134
- numericColumnsOptions: numericColumnsOptions,
135
- getSelectedColumnOption: this.props.getSelectedColumnOption,
136
- onChangeColumnGroupbyType: this.updateColumnGroupbys,
137
- onSelectGroupbyColumn: this.onSelectGroupbyColumn.bind(this, _constants.GROUPBY_TYPE.COLUMN),
138
- onSelectGroupbyDateGranularity: this.onSelectGroupbyDateGranularity.bind(this, _constants.GROUPBY_TYPE.COLUMN),
139
- onSelectGroupbyGeolocationGranularity: this.onSelectGroupbyGeolocationGranularity.bind(this, _constants.GROUPBY_TYPE.COLUMN),
140
- updatedColumnGroupbyNumericColumns: this.updatedColumnGroupbyNumericColumns,
141
- updateStatItem: this.props.updateStatItem
142
- }), statItem.type === _constants.STAT_TYPE.STACKED_HORIZONTAL_BAR && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
143
- className: "statistic-chart-parameter-divider"
144
- }), /*#__PURE__*/_react.default.createElement(_dataSortSetting.default, {
145
- statItem: statItem,
146
- updateStatItem: this.props.updateStatItem
147
- })));
148
- }
149
- }
150
- var _default = exports.default = HorizontalGroupBarChartSettings;
@@ -1,473 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
- var _react = _interopRequireWildcard(require("react"));
10
- var _classnames = _interopRequireDefault(require("classnames"));
11
- var _reactIntlUniversal = _interopRequireDefault(require("react-intl-universal"));
12
- var _dtableUtils = require("dtable-utils");
13
- var _toggleSetting = _interopRequireDefault(require("../public-setting/toggle-setting"));
14
- var _pieSettings = _interopRequireDefault(require("./pie-settings"));
15
- var _scatterSettings = _interopRequireDefault(require("./scatter-settings"));
16
- var _barSettings = _interopRequireDefault(require("./bar-settings"));
17
- var _advanceBarChartSettings = _interopRequireDefault(require("./advance-bar-chart-settings"));
18
- var _horizontalBarSettings = _interopRequireDefault(require("./horizontal-bar-settings"));
19
- var _horizontalGroupChartSettings = _interopRequireDefault(require("./horizontal-group-chart-settings"));
20
- var _timeComparisonSettings = _interopRequireDefault(require("./time-comparison-settings"));
21
- var _completenessChartSettings = _interopRequireDefault(require("./completeness-chart-settings"));
22
- var _pivotTableSettings = _interopRequireDefault(require("./pivot-table-settings"));
23
- var _customBarSettings = _interopRequireDefault(require("./custom-bar-settings"));
24
- var _constants = require("../../../constants");
25
- const DATE_GRANULARITY_LIST = [_constants.DATE_GRANULARITY.DAY, _constants.DATE_GRANULARITY.WEEK, _constants.DATE_GRANULARITY.MONTH, _constants.DATE_GRANULARITY.QUARTER, _constants.DATE_GRANULARITY.YEAR];
26
- const GEOLOCATION_GRANULARITY_LIST = [_constants.GEOLOCATION_GRANULARITY.PROVINCE, _constants.GEOLOCATION_GRANULARITY.CITY, _constants.GEOLOCATION_GRANULARITY.DISTRICT];
27
- class BasicChartSettings extends _react.Component {
28
- constructor(props) {
29
- super(props);
30
- this.setData = selectedTable => {
31
- this.availableColumns = this.getAvailableColumns(selectedTable.columns);
32
- this.columnsOptions = this.getColumnsOptions(this.availableColumns);
33
- this.generalColumnsOptions = this.getGeneralColumnsOptions(this.columnsOptions);
34
- this.columnGroupbyColumnsOptions = this.getColumnGroupbyColumnsOptions(this.columnsOptions);
35
- const numericColumns = this.getNumericColumns(this.availableColumns);
36
- this.numericColumnsOptions = this.getColumnsOptions(numericColumns);
37
- this.pivotTableSummaryColumnOptions = this.getPivotTableSummaryColumnOptions(this.availableColumns);
38
- };
39
- this.renderIncludeEmpty = () => {
40
- const {
41
- statItem
42
- } = this.props;
43
- const {
44
- type,
45
- groupby_include_empty_cells,
46
- x_axis_include_empty,
47
- vertical_axis_include_empty
48
- } = statItem || {};
49
- let includeEmptyCells;
50
- if (type === _constants.STAT_TYPE.PIE || type === _constants.STAT_TYPE.RING || type === _constants.STAT_TYPE.TREEMAP || type === _constants.STAT_TYPE.PIVOT_TABLE) {
51
- includeEmptyCells = groupby_include_empty_cells;
52
- } else if (type === _constants.STAT_TYPE.HORIZONTAL_BAR || type === _constants.STAT_TYPE.HORIZONTAL_GROUP_BAR || type === _constants.STAT_TYPE.STACKED_HORIZONTAL_BAR) {
53
- includeEmptyCells = vertical_axis_include_empty;
54
- } else {
55
- includeEmptyCells = x_axis_include_empty;
56
- }
57
- return /*#__PURE__*/_react.default.createElement("div", {
58
- className: "mt-1"
59
- }, /*#__PURE__*/_react.default.createElement(_toggleSetting.default, {
60
- isChecked: includeEmptyCells || false,
61
- handleToggleChange: this.onToggleIncludeEmpty,
62
- label: _reactIntlUniversal.default.get('Including_empty_cell')
63
- }));
64
- };
65
- this.getAvailableColumns = columns => {
66
- if (!columns || !Array.isArray(columns)) return [];
67
- return columns.filter(column => _constants.BASIC_CHART_COLUMN_LIST.includes(column.type));
68
- };
69
- this.getPivotTableSummaryColumnOptions = columns => {
70
- const summaryColumns = columns.filter(column => {
71
- return column && ((0, _dtableUtils.isNumericColumn)(column) || _constants.TIME_COLUMN_LIST.includes(column.type));
72
- });
73
- return this.getColumnsOptions(summaryColumns);
74
- };
75
- this.getColumnsOptions = columns => {
76
- if (!Array.isArray(columns)) return [];
77
- return columns.map(column => {
78
- let option = _dtableUtils.COLUMN_OPTIONS.find(o => o.type === column.type) || {};
79
- const {
80
- name,
81
- key,
82
- type
83
- } = column;
84
- return {
85
- label: /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement("span", {
86
- className: "header-icon"
87
- }, /*#__PURE__*/_react.default.createElement("i", {
88
- className: option.iconClass
89
- })), /*#__PURE__*/_react.default.createElement("span", {
90
- className: "select-option-name"
91
- }, name)),
92
- value: {
93
- name,
94
- key,
95
- type
96
- }
97
- };
98
- });
99
- };
100
- this.getGeneralColumnsOptions = columnsOptions => {
101
- const {
102
- statItem
103
- } = this.props;
104
- const list = [...columnsOptions];
105
- if (statItem.type === _constants.STAT_TYPE.PIVOT_TABLE) {
106
- list.unshift({
107
- label: /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement("span", {
108
- className: "header-icon"
109
- }), /*#__PURE__*/_react.default.createElement("span", {
110
- style: {
111
- color: '#999999'
112
- },
113
- className: "select-option-name"
114
- }, _reactIntlUniversal.default.get('Not_used'))),
115
- value: {
116
- key: null
117
- }
118
- });
119
- }
120
- return list;
121
- };
122
- this.getColumnGroupbyColumnsOptions = columnsOptions => {
123
- let statItem = this.props.statItem || {};
124
- let availableOptions = columnsOptions.filter(o => o.value.key !== statItem.x_axis_column_key);
125
- return availableOptions;
126
- };
127
- this.getNumericColumns = columns => {
128
- if (!columns) return [];
129
- return columns.filter(column => column && (0, _dtableUtils.isNumericColumn)(column));
130
- };
131
- this.getSelectedColumnOption = (key, columnsOptions) => {
132
- if (!key || !Array.isArray(columnsOptions) || columnsOptions.length === 0) {
133
- return null;
134
- }
135
- return columnsOptions.find(o => o.value.key === key) || columnsOptions[0];
136
- };
137
- this.getGranularityOptions = options => {
138
- return options.map(g => {
139
- return {
140
- value: g,
141
- label: /*#__PURE__*/_react.default.createElement("span", {
142
- className: 'select-module select-module-name'
143
- }, _reactIntlUniversal.default.get(_constants.STATISTICS_COUNT_SHOW[g]))
144
- };
145
- });
146
- };
147
- this.getSettingsByType = () => {
148
- const {
149
- statItem,
150
- labelColorConfigs,
151
- eventBus,
152
- getTableById,
153
- getTables,
154
- getViews
155
- } = this.props;
156
- const {
157
- selectedTable,
158
- settingType
159
- } = this.state;
160
- const type = statItem.type;
161
- switch (statItem.type) {
162
- case _constants.STAT_TYPE.BAR:
163
- case _constants.STAT_TYPE.LINE:
164
- case _constants.STAT_TYPE.AREA_CHART:
165
- {
166
- return /*#__PURE__*/_react.default.createElement(_barSettings.default, {
167
- settingType: settingType,
168
- statItem: statItem,
169
- labelColorConfigs: labelColorConfigs,
170
- eventBus: eventBus,
171
- getTables: getTables,
172
- getViews: getViews,
173
- getTableById: getTableById,
174
- selectedTable: selectedTable,
175
- generalColumnsOptions: this.generalColumnsOptions,
176
- columnGroupbyColumnsOptions: this.columnGroupbyColumnsOptions,
177
- numericColumnsOptions: this.numericColumnsOptions,
178
- dateGranularityOptions: this.dateGranularityOptions,
179
- geolocationGranularityOptions: this.geolocationGranularityOptions,
180
- getSelectedColumnOption: this.getSelectedColumnOption,
181
- getConvertedChart: this.props.getConvertedChart,
182
- updateStatItem: this.props.updateStatItem,
183
- renderIncludeEmpty: this.renderIncludeEmpty
184
- });
185
- }
186
- case _constants.STAT_TYPE.COMPARE_BAR:
187
- {
188
- return /*#__PURE__*/_react.default.createElement(_timeComparisonSettings.default, {
189
- settingType: settingType,
190
- statItem: statItem,
191
- labelColorConfigs: labelColorConfigs,
192
- eventBus: eventBus,
193
- getTables: getTables,
194
- getViews: getViews,
195
- getTableById: getTableById,
196
- selectedTable: selectedTable,
197
- generalColumnsOptions: this.generalColumnsOptions,
198
- numericColumnsOptions: this.numericColumnsOptions,
199
- dateGranularityOptions: this.dateGranularityOptions,
200
- getSelectedColumnOption: this.getSelectedColumnOption,
201
- getConvertedChart: this.props.getConvertedChart,
202
- updateStatItem: this.props.updateStatItem
203
- });
204
- }
205
- case _constants.STAT_TYPE.BAR_GROUP:
206
- case _constants.STAT_TYPE.BAR_STACK:
207
- case _constants.STAT_TYPE.GROUP_LINE:
208
- case _constants.STAT_TYPE.AREA_GROUP_CHART:
209
- {
210
- return /*#__PURE__*/_react.default.createElement(_advanceBarChartSettings.default, {
211
- chartType: type,
212
- settingType: settingType,
213
- statItem: statItem,
214
- labelColorConfigs: labelColorConfigs,
215
- eventBus: eventBus,
216
- getTables: getTables,
217
- getViews: getViews,
218
- getTableById: getTableById,
219
- selectedTable: selectedTable,
220
- generalColumnsOptions: this.generalColumnsOptions,
221
- columnGroupbyColumnsOptions: this.columnGroupbyColumnsOptions,
222
- numericColumnsOptions: this.numericColumnsOptions,
223
- dateGranularityOptions: this.dateGranularityOptions,
224
- geolocationGranularityOptions: this.geolocationGranularityOptions,
225
- getSelectedColumnOption: this.getSelectedColumnOption,
226
- getConvertedChart: this.props.getConvertedChart,
227
- updateStatItem: this.props.updateStatItem,
228
- renderIncludeEmpty: this.renderIncludeEmpty
229
- });
230
- }
231
- case _constants.STAT_TYPE.CUSTOM_BAR:
232
- {
233
- return /*#__PURE__*/_react.default.createElement(_customBarSettings.default, {
234
- chartType: type,
235
- settingType: settingType,
236
- statItem: statItem,
237
- labelColorConfigs: labelColorConfigs,
238
- eventBus: eventBus,
239
- getTables: getTables,
240
- getViews: getViews,
241
- getTableById: getTableById,
242
- selectedTable: selectedTable,
243
- generalColumnsOptions: this.generalColumnsOptions,
244
- numericColumnsOptions: this.numericColumnsOptions,
245
- dateGranularityOptions: this.dateGranularityOptions,
246
- geolocationGranularityOptions: this.geolocationGranularityOptions,
247
- getSelectedColumnOption: this.getSelectedColumnOption,
248
- getConvertedChart: this.props.getConvertedChart,
249
- updateStatItem: this.props.updateStatItem,
250
- renderIncludeEmpty: this.renderIncludeEmpty
251
- });
252
- }
253
- case _constants.STAT_TYPE.PIE:
254
- case _constants.STAT_TYPE.RING:
255
- case _constants.STAT_TYPE.TREEMAP:
256
- {
257
- return /*#__PURE__*/_react.default.createElement(_pieSettings.default, {
258
- settingType: settingType,
259
- statItem: statItem,
260
- labelColorConfigs: labelColorConfigs,
261
- eventBus: eventBus,
262
- getTables: getTables,
263
- getViews: getViews,
264
- getTableById: getTableById,
265
- selectedTable: selectedTable,
266
- getConvertedChart: this.props.getConvertedChart,
267
- columnsOptions: this.generalColumnsOptions,
268
- numericColumnsOptions: this.numericColumnsOptions,
269
- dateGranularityOptions: this.dateGranularityOptions,
270
- geolocationGranularityOptions: this.geolocationGranularityOptions,
271
- getSelectedColumnOption: this.getSelectedColumnOption,
272
- updateStatisticsSettings: this.props.updateStatItem,
273
- renderIncludeEmpty: this.renderIncludeEmpty
274
- });
275
- }
276
- case _constants.STAT_TYPE.SCATTER:
277
- {
278
- return /*#__PURE__*/_react.default.createElement(_scatterSettings.default, {
279
- settingType: settingType,
280
- statItem: statItem,
281
- labelColorConfigs: labelColorConfigs,
282
- eventBus: eventBus,
283
- getTables: getTables,
284
- getViews: getViews,
285
- getTableById: getTableById,
286
- getConvertedChart: this.props.getConvertedChart,
287
- numericColumnsOptions: this.numericColumnsOptions,
288
- generalColumnsOptions: this.generalColumnsOptions,
289
- columnGroupbyColumnsOptions: this.columnGroupbyColumnsOptions,
290
- getSelectedColumnOption: this.getSelectedColumnOption,
291
- updateStatItem: this.props.updateStatItem
292
- });
293
- }
294
- case _constants.STAT_TYPE.HORIZONTAL_BAR:
295
- {
296
- return /*#__PURE__*/_react.default.createElement(_horizontalBarSettings.default, {
297
- settingType: settingType,
298
- statItem: statItem,
299
- labelColorConfigs: labelColorConfigs,
300
- eventBus: eventBus,
301
- getTables: getTables,
302
- getViews: getViews,
303
- getTableById: getTableById,
304
- selectedTable: selectedTable,
305
- getConvertedChart: this.props.getConvertedChart,
306
- generalColumnsOptions: this.generalColumnsOptions,
307
- columnGroupbyColumnsOptions: this.columnGroupbyColumnsOptions,
308
- numericColumnsOptions: this.numericColumnsOptions,
309
- dateGranularityOptions: this.dateGranularityOptions,
310
- geolocationGranularityOptions: this.geolocationGranularityOptions,
311
- getSelectedColumnOption: this.getSelectedColumnOption,
312
- updateStatItem: this.props.updateStatItem,
313
- renderIncludeEmpty: this.renderIncludeEmpty
314
- });
315
- }
316
- case _constants.STAT_TYPE.HORIZONTAL_GROUP_BAR:
317
- case _constants.STAT_TYPE.STACKED_HORIZONTAL_BAR:
318
- {
319
- return /*#__PURE__*/_react.default.createElement(_horizontalGroupChartSettings.default, {
320
- settingType: settingType,
321
- statItem: statItem,
322
- labelColorConfigs: labelColorConfigs,
323
- eventBus: eventBus,
324
- getTables: getTables,
325
- getViews: getViews,
326
- getTableById: getTableById,
327
- selectedTable: selectedTable,
328
- generalColumnsOptions: this.generalColumnsOptions,
329
- columnGroupbyColumnsOptions: this.columnGroupbyColumnsOptions,
330
- numericColumnsOptions: this.numericColumnsOptions,
331
- dateGranularityOptions: this.dateGranularityOptions,
332
- geolocationGranularityOptions: this.geolocationGranularityOptions,
333
- getSelectedColumnOption: this.getSelectedColumnOption,
334
- updateStatItem: this.props.updateStatItem,
335
- getConvertedChart: this.props.getConvertedChart,
336
- renderIncludeEmpty: this.renderIncludeEmpty
337
- });
338
- }
339
- case _constants.STAT_TYPE.COMPLETENESS_CHART:
340
- case _constants.STAT_TYPE.GROUP_COMPLETENESS_CHART:
341
- {
342
- return /*#__PURE__*/_react.default.createElement(_completenessChartSettings.default, {
343
- settingType: settingType,
344
- statItem: statItem,
345
- labelColorConfigs: labelColorConfigs,
346
- eventBus: eventBus,
347
- getTables: getTables,
348
- getViews: getViews,
349
- getTableById: getTableById,
350
- getConvertedChart: this.props.getConvertedChart,
351
- selectedTable: selectedTable,
352
- generalColumnsOptions: this.generalColumnsOptions,
353
- numericColumnsOptions: this.numericColumnsOptions,
354
- updateStatItem: this.props.updateStatItem,
355
- getSelectedColumnOption: this.getSelectedColumnOption,
356
- columnGroupbyColumnsOptions: this.columnGroupbyColumnsOptions,
357
- geolocationGranularityOptions: this.geolocationGranularityOptions,
358
- dateGranularityOptions: this.dateGranularityOptions
359
- });
360
- }
361
- case _constants.STAT_TYPE.PIVOT_TABLE:
362
- {
363
- return /*#__PURE__*/_react.default.createElement(_pivotTableSettings.default, {
364
- settingType: settingType,
365
- statItem: statItem,
366
- labelColorConfigs: labelColorConfigs,
367
- eventBus: eventBus,
368
- getTables: getTables,
369
- getViews: getViews,
370
- getTableById: getTableById,
371
- getConvertedChart: this.props.getConvertedChart,
372
- selectedTable: selectedTable,
373
- generalColumnsOptions: this.generalColumnsOptions,
374
- pivotTableSummaryColumnOptions: this.pivotTableSummaryColumnOptions,
375
- updateStatItem: this.props.updateStatItem,
376
- getSelectedColumnOption: this.getSelectedColumnOption,
377
- columnGroupbyColumnsOptions: this.columnGroupbyColumnsOptions,
378
- geolocationGranularityOptions: this.geolocationGranularityOptions,
379
- dateGranularityOptions: this.dateGranularityOptions,
380
- renderIncludeEmpty: this.renderIncludeEmpty
381
- });
382
- }
383
- default:
384
- {
385
- return null;
386
- }
387
- }
388
- };
389
- this.onToggleIncludeEmpty = () => {
390
- let {
391
- statItem
392
- } = this.props;
393
- let {
394
- type,
395
- groupby_include_empty_cells,
396
- x_axis_include_empty,
397
- vertical_axis_include_empty
398
- } = statItem || {};
399
- let updated;
400
- if (type === _constants.STAT_TYPE.PIE || type === _constants.STAT_TYPE.RING || type === _constants.STAT_TYPE.TREEMAP || type === _constants.STAT_TYPE.PIVOT_TABLE) {
401
- updated = {
402
- groupby_include_empty_cells: !groupby_include_empty_cells
403
- };
404
- } else if (type === _constants.STAT_TYPE.HORIZONTAL_BAR || type === _constants.STAT_TYPE.HORIZONTAL_GROUP_BAR || type === _constants.STAT_TYPE.STACKED_HORIZONTAL_BAR) {
405
- updated = {
406
- vertical_axis_include_empty: !vertical_axis_include_empty
407
- };
408
- } else {
409
- updated = {
410
- x_axis_include_empty: !x_axis_include_empty
411
- };
412
- }
413
- this.props.updateStatItem(Object.assign({}, statItem, updated));
414
- };
415
- this.selectEditType = type => {
416
- this.setState({
417
- settingType: type
418
- });
419
- };
420
- const {
421
- getTableById: _getTableById,
422
- statItem: _statItem
423
- } = props;
424
- let _selectedTable = _getTableById(_statItem.table_id);
425
- this.state = {
426
- selectedTable: _selectedTable,
427
- settingType: 'data'
428
- };
429
- this.setData(_selectedTable);
430
- this.dateGranularityOptions = this.getGranularityOptions(DATE_GRANULARITY_LIST);
431
- this.geolocationGranularityOptions = this.getGranularityOptions(GEOLOCATION_GRANULARITY_LIST);
432
- }
433
- UNSAFE_componentWillReceiveProps(nextProps) {
434
- const {
435
- getTableById
436
- } = this.props;
437
- if (nextProps.statItem.table_id !== this.props.statItem.table_id) {
438
- const {
439
- statItem
440
- } = nextProps;
441
- const selectedTable = getTableById(statItem.table_id);
442
- this.setState({
443
- selectedTable
444
- });
445
- this.setData(selectedTable);
446
- }
447
- }
448
- render() {
449
- const {
450
- settingType
451
- } = this.state;
452
- return /*#__PURE__*/_react.default.createElement("div", {
453
- className: "statistic-chart-settings"
454
- }, /*#__PURE__*/_react.default.createElement("div", {
455
- className: "statistic-chart-settings-type"
456
- }, /*#__PURE__*/_react.default.createElement("div", {
457
- onClick: () => this.selectEditType('data'),
458
- className: (0, _classnames.default)('statistic-type-item', {
459
- 'selected-statistic-type-item': settingType === 'data'
460
- })
461
- }, _reactIntlUniversal.default.get('Data_settings')), /*#__PURE__*/_react.default.createElement("div", {
462
- onClick: () => this.selectEditType('style'),
463
- className: (0, _classnames.default)('statistic-type-item', {
464
- 'selected-statistic-type-item': settingType === 'style'
465
- })
466
- }, _reactIntlUniversal.default.get('Style_settings'))), /*#__PURE__*/_react.default.createElement("div", {
467
- className: "statistic-chart-settings-container"
468
- }, /*#__PURE__*/_react.default.createElement("div", {
469
- className: "statistic-chart-settings-parameter-list pt-4"
470
- }, this.getSettingsByType())));
471
- }
472
- }
473
- var _default = exports.default = BasicChartSettings;