dtable-statistic 4.4.24-alpha.9 → 5.0.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 (198) hide show
  1. package/es/assets/css/color-picker.css +53 -0
  2. package/es/assets/css/color-rules-popover.css +144 -0
  3. package/es/assets/css/dashboard.css +0 -1
  4. package/es/assets/css/dialog.css +0 -30
  5. package/es/assets/css/slider.css +77 -0
  6. package/es/assets/css/statistic-chart.module.css +11 -0
  7. package/es/assets/css/statistic-custom-title.module.css +3 -0
  8. package/es/assets/css/statistic-custom.module.css +4 -0
  9. package/es/assets/css/statistic-numeric-column-item.module.css +43 -0
  10. package/es/assets/css/statistic-time-picker.module.css +21 -0
  11. package/es/calculator/base-calculator.js +80 -0
  12. package/es/calculator/basic-chart-calculator.js +349 -0
  13. package/es/calculator/combination-calculator.js +246 -0
  14. package/es/calculator/compare-bar-calculator.js +197 -0
  15. package/es/calculator/completeness-calculator.js +215 -0
  16. package/es/calculator/copy-value.js +53 -0
  17. package/es/calculator/dashboard-calculator.js +70 -0
  18. package/es/calculator/heat-map-calculator.js +148 -0
  19. package/es/calculator/horizontal-bar-calculator.js +67 -0
  20. package/es/calculator/index.js +81 -0
  21. package/es/calculator/map-calculator.js +103 -0
  22. package/es/calculator/mirror-calculator.js +146 -0
  23. package/es/calculator/number-card-calculator.js +60 -0
  24. package/es/calculator/pivot-table-calculator.js +821 -0
  25. package/es/calculator/scatter-calculator.js +75 -0
  26. package/es/calculator/thread-manager.js +57 -0
  27. package/es/calculator/trend-calculator.js +113 -0
  28. package/es/calculator/workers/basic-chart-calculator-worker.js +495 -0
  29. package/es/calculator/workers/calculator.worker.js +44 -0
  30. package/es/calculator/workers/card-calculator-worker.js +40 -0
  31. package/es/calculator/workers/combination-calculator-worker.js +276 -0
  32. package/es/calculator/workers/compare-bar-chart-calculator-worker.js +150 -0
  33. package/es/calculator/workers/completeness-calculator-worker.js +208 -0
  34. package/es/calculator/workers/dashboard-calculator-worker.js +68 -0
  35. package/es/calculator/workers/mirror-calculator-worker.js +152 -0
  36. package/es/calculator/workers/pivot-table-calculator-worker.js +718 -0
  37. package/es/calculator/workers/scatter-calculator-worker.js +80 -0
  38. package/es/calculator/workers/trend-calculator-worker.js +108 -0
  39. package/es/calculator/world-map-calculator.js +124 -0
  40. package/es/components/dialog/chart-addition-edit-dialog.js +90 -0
  41. package/es/components/dialog/chart-addition-widgets/chart-selector.js +259 -0
  42. package/es/components/dialog/chart-addition-widgets/statistic-chart-selector.module.css +83 -0
  43. package/es/components/dialog/enlarged-chart-dialog.js +13 -8
  44. package/es/components/dialog/statistic-record-dialog/index.js +34 -25
  45. package/es/components/dialog/statistic-types-dialog/index.css +14 -0
  46. package/es/components/dialog/statistic-types-dialog/index.js +62 -0
  47. package/es/components/dropdown-menu/statistic-dropdown-menu.js +2 -2
  48. package/es/components/popover/color-rules/color-rule.js +183 -0
  49. package/es/components/popover/color-rules/index.js +87 -0
  50. package/es/components/popover/color-rules/rule-filters/filter.js +221 -0
  51. package/es/components/popover/color-rules/rule-filters/index.css +210 -0
  52. package/es/components/popover/color-rules/rule-filters/index.js +97 -0
  53. package/es/components/popover/color-rules/rule-filters/number-input.js +78 -0
  54. package/es/components/popover/color-rules-popover.js +218 -0
  55. package/es/components/popover/color-selector-popover.js +83 -0
  56. package/es/constants/index.js +2 -1
  57. package/es/custom-g2.js +644 -0
  58. package/es/dashboard.js +31 -9
  59. package/es/desktop-dashboard.js +32 -51
  60. package/es/mobile-dashboard.js +16 -8
  61. package/es/model/bar-group.js +58 -0
  62. package/es/model/bar.js +47 -0
  63. package/es/model/base-model.js +18 -0
  64. package/es/model/basic-number-card.js +25 -0
  65. package/es/model/combination.js +48 -0
  66. package/es/model/compare-bar.js +56 -0
  67. package/es/model/completeness-group.js +31 -0
  68. package/es/model/completeness.js +25 -0
  69. package/es/model/custom-bar.js +25 -0
  70. package/es/model/dashboard.js +20 -0
  71. package/es/model/generic-model.js +222 -0
  72. package/es/model/heat-map.js +33 -0
  73. package/es/model/horizontal-bar-group.js +55 -0
  74. package/es/model/horizontal-bar.js +47 -0
  75. package/es/model/index.js +187 -0
  76. package/es/model/map.js +38 -0
  77. package/es/model/mirror.js +33 -0
  78. package/es/model/pie.js +38 -0
  79. package/es/model/ring.js +40 -0
  80. package/es/model/scatter.js +22 -0
  81. package/es/model/table.js +32 -0
  82. package/es/model/trend.js +32 -0
  83. package/es/model/world-map.js +34 -0
  84. package/es/service/chart-service.js +15 -8
  85. package/es/service/dashboard-service.js +29 -25
  86. package/es/stat-editor/chart-name-editor.js +68 -0
  87. package/es/stat-editor/index.js +75 -0
  88. package/es/stat-editor/stat-settings/advance-chart-settings/basic-number-card-settings.js +153 -0
  89. package/es/stat-editor/stat-settings/advance-chart-settings/combination-settings.js +422 -0
  90. package/es/stat-editor/stat-settings/advance-chart-settings/dashboard-chart-settings.js +203 -0
  91. package/es/stat-editor/stat-settings/advance-chart-settings/geo-granularity-settings.js +23 -0
  92. package/es/stat-editor/stat-settings/advance-chart-settings/heat-map-settings.js +104 -0
  93. package/es/stat-editor/stat-settings/advance-chart-settings/index.js +334 -0
  94. package/es/stat-editor/stat-settings/advance-chart-settings/map-settings.js +119 -0
  95. package/es/stat-editor/stat-settings/advance-chart-settings/mirror-settings.js +132 -0
  96. package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/combination-style-setting.js +240 -0
  97. package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/heat-map-settings.js +89 -0
  98. package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/map-setting.js +138 -0
  99. package/es/stat-editor/stat-settings/advance-chart-settings/summary-settings.js +331 -0
  100. package/es/stat-editor/stat-settings/advance-chart-settings/trend-chart-settings.js +143 -0
  101. package/es/stat-editor/stat-settings/advance-chart-settings/world-map-settings.js +109 -0
  102. package/es/stat-editor/stat-settings/basic-chart-settings/advance-bar-chart-settings.js +153 -0
  103. package/es/stat-editor/stat-settings/basic-chart-settings/bar-settings.js +144 -0
  104. package/es/stat-editor/stat-settings/basic-chart-settings/completeness-chart-settings.js +214 -0
  105. package/es/stat-editor/stat-settings/basic-chart-settings/custom-bar-settings.js +121 -0
  106. package/es/stat-editor/stat-settings/basic-chart-settings/groupby-settings.js +172 -0
  107. package/es/stat-editor/stat-settings/basic-chart-settings/horizontal-axis-group-settings.js +366 -0
  108. package/es/stat-editor/stat-settings/basic-chart-settings/horizontal-bar-settings.js +142 -0
  109. package/es/stat-editor/stat-settings/basic-chart-settings/horizontal-group-chart-settings.js +150 -0
  110. package/es/stat-editor/stat-settings/basic-chart-settings/index.js +473 -0
  111. package/es/stat-editor/stat-settings/basic-chart-settings/pie-settings.js +182 -0
  112. package/es/stat-editor/stat-settings/basic-chart-settings/pivot-table-settings.js +564 -0
  113. package/es/stat-editor/stat-settings/basic-chart-settings/scatter-settings.js +112 -0
  114. package/es/stat-editor/stat-settings/basic-chart-settings/stack-item-settings.js +87 -0
  115. package/es/stat-editor/stat-settings/basic-chart-settings/stacks-settings.js +187 -0
  116. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/bar-chart-style-setting.js +300 -0
  117. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/completeness-style.js +113 -0
  118. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/horizontal-bar-chart-style.js +289 -0
  119. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/label-font-size-editor.js +58 -0
  120. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/pie-chart-style-settings.js +359 -0
  121. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/time-compare-style.js +48 -0
  122. package/es/stat-editor/stat-settings/basic-chart-settings/summary-method-setting.js +121 -0
  123. package/es/stat-editor/stat-settings/basic-chart-settings/summary-settings.js +143 -0
  124. package/es/stat-editor/stat-settings/basic-chart-settings/time-comparison-settings.js +269 -0
  125. package/es/stat-editor/stat-settings/basic-chart-settings/timer-picker.js +104 -0
  126. package/es/stat-editor/stat-settings/basic-chart-settings/y-axis-group-settings.js +366 -0
  127. package/es/stat-editor/stat-settings/color-setting/color-group-selector.js +55 -0
  128. package/es/stat-editor/stat-settings/color-setting/color-picker.js +130 -0
  129. package/es/stat-editor/stat-settings/color-setting/color-use-type-selector.js +374 -0
  130. package/es/stat-editor/stat-settings/map/map-level.js +72 -0
  131. package/es/stat-editor/stat-settings/map/map-province-city.js +151 -0
  132. package/es/stat-editor/stat-settings/public-setting/axis-label-position-setting.js +108 -0
  133. package/es/stat-editor/stat-settings/public-setting/base-settings.js +154 -0
  134. package/es/stat-editor/stat-settings/public-setting/calender.js +125 -0
  135. package/es/stat-editor/stat-settings/public-setting/column-settings.js +24 -0
  136. package/es/stat-editor/stat-settings/public-setting/custom-title-setting.js +62 -0
  137. package/es/stat-editor/stat-settings/public-setting/data-sort-setting.js +61 -0
  138. package/es/stat-editor/stat-settings/public-setting/ind-toggle-setting.js +35 -0
  139. package/es/stat-editor/stat-settings/public-setting/min-max-setting.js +60 -0
  140. package/es/stat-editor/stat-settings/public-setting/numeric-summary-item.js +123 -0
  141. package/es/stat-editor/stat-settings/public-setting/toggle-setting.js +33 -0
  142. package/es/stat-editor/stat-settings/public-setting/type-settings/index.css +29 -0
  143. package/es/stat-editor/stat-settings/public-setting/type-settings/index.js +82 -0
  144. package/es/stat-list/chart-preview.js +20 -19
  145. package/es/stat-list/index.js +21 -15
  146. package/es/stat-view/area-chart.js +551 -0
  147. package/es/stat-view/bar-chart.js +582 -0
  148. package/es/stat-view/base-chart.js +132 -0
  149. package/es/stat-view/basic-number-card.js +201 -0
  150. package/es/stat-view/combination-chart.js +546 -0
  151. package/es/stat-view/compare-chart.js +483 -0
  152. package/es/stat-view/completeness-chart.js +390 -0
  153. package/es/stat-view/custom-bar.js +418 -0
  154. package/es/stat-view/dashboard-chart.js +266 -0
  155. package/es/stat-view/heat-map.js +463 -0
  156. package/es/stat-view/horizontal-bar-chart.js +562 -0
  157. package/es/stat-view/index.js +156 -47
  158. package/es/stat-view/line-chart.js +518 -0
  159. package/es/stat-view/map.js +448 -0
  160. package/es/stat-view/mirror.js +275 -0
  161. package/es/stat-view/pie-chart.js +290 -0
  162. package/es/stat-view/pivot-table/index.js +196 -0
  163. package/es/stat-view/pivot-table/one-dimension-table-no-numeric-columns.js +156 -0
  164. package/es/stat-view/pivot-table/one-dimension-table-with-numeric-columns.js +176 -0
  165. package/es/stat-view/pivot-table/pivot-table-display-name.js +215 -0
  166. package/es/stat-view/pivot-table/statistic-pivot-table.module.css +132 -0
  167. package/es/stat-view/pivot-table/two-dimension-table.js +384 -0
  168. package/es/stat-view/ring-chart.js +392 -0
  169. package/es/stat-view/scatter-chart.js +306 -0
  170. package/es/stat-view/treemap-chart.js +253 -0
  171. package/es/stat-view/trend-chart.js +249 -0
  172. package/es/stat-view/world-map.js +431 -0
  173. package/es/tabs/tab.js +2 -2
  174. package/es/utils/basic-chart-utils.js +29 -0
  175. package/es/utils/cell-format.js +115 -0
  176. package/es/utils/collaborator.js +50 -0
  177. package/es/utils/color-utils.js +134 -0
  178. package/es/utils/column-utils.js +110 -0
  179. package/es/utils/column.js +20 -0
  180. package/es/utils/common-utils.js +352 -2
  181. package/es/utils/date-format.js +71 -0
  182. package/es/utils/export-table-utils.js +69 -0
  183. package/es/utils/index.js +89 -12
  184. package/es/utils/map.js +114 -0
  185. package/es/utils/model.js +19 -0
  186. package/es/utils/row-utils.js +134 -0
  187. package/es/utils/search.js +73 -0
  188. package/es/utils/sql-utils.js +359 -0
  189. package/es/utils/stat-utils.js +351 -0
  190. package/es/utils/trend-utils.js +135 -0
  191. package/package.json +8 -6
  192. package/es/components/dialog/chart-edit-dialog.js +0 -93
  193. package/es/components/dtable-popover.js +0 -97
  194. package/es/components/dtable-search-input.js +0 -135
  195. package/es/components/index.js +0 -41
  196. package/es/components/loading.js +0 -15
  197. package/es/components/modal-portal.js +0 -26
  198. package/es/model/conver-statItem.js +0 -124
@@ -0,0 +1,135 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.getCompareDate = getCompareDate;
8
+ exports.summaryDurationResult = summaryDurationResult;
9
+ var _dayjs = _interopRequireDefault(require("dayjs"));
10
+ var _quarterOfYear = _interopRequireDefault(require("dayjs/plugin/quarterOfYear"));
11
+ var _commonUtils = require("./common-utils");
12
+ var _constants = require("../constants");
13
+ _dayjs.default.extend(_quarterOfYear.default);
14
+ function getCompareDate(dateGranularity) {
15
+ const currentDate = (0, _dayjs.default)();
16
+ switch (dateGranularity) {
17
+ case _constants.DATE_GRANULARITY.DAY:
18
+ {
19
+ const compareDate = (0, _dayjs.default)(currentDate).subtract(1, 'days').format('YYYY-MM-DD');
20
+ const comparedDate = (0, _dayjs.default)(currentDate).subtract(2, 'days').format('YYYY-MM-DD');
21
+ return {
22
+ compareDate,
23
+ comparedDate
24
+ };
25
+ }
26
+ case _constants.DATE_GRANULARITY.WEEK:
27
+ {
28
+ const currentWeek = (0, _dayjs.default)().day(1);
29
+ const compareDate = (0, _dayjs.default)(currentWeek).subtract(1, 'weeks').format('YYYY-MM-DD');
30
+ const comparedDate = (0, _dayjs.default)(currentWeek).subtract(2, 'weeks').format('YYYY-MM-DD');
31
+ return {
32
+ compareDate,
33
+ comparedDate
34
+ };
35
+ }
36
+ case _constants.DATE_GRANULARITY.MONTH:
37
+ {
38
+ const compareDate = (0, _dayjs.default)(currentDate).subtract(1, 'months').format('YYYY-MM');
39
+ const comparedDate = (0, _dayjs.default)(currentDate).subtract(2, 'months').format('YYYY-MM');
40
+ return {
41
+ compareDate,
42
+ comparedDate
43
+ };
44
+ }
45
+ case _constants.DATE_GRANULARITY.QUARTER:
46
+ {
47
+ const currentQuarter = (0, _dayjs.default)().quarter();
48
+ const currentYear = (0, _dayjs.default)().year();
49
+ let lastQuarter = currentQuarter - 1;
50
+ let compareDate, comparedDate;
51
+ if (lastQuarter < 1) {
52
+ compareDate = currentYear - 1 + '-Q4';
53
+ comparedDate = currentYear - 1 + '-Q3';
54
+ return {
55
+ compareDate,
56
+ comparedDate
57
+ };
58
+ }
59
+ compareDate = currentYear + '-Q' + lastQuarter;
60
+ comparedDate = currentYear + '-Q' + (lastQuarter - 1);
61
+ if (lastQuarter - 1 < 1) {
62
+ comparedDate = currentYear - 1 + '-Q4';
63
+ }
64
+ return {
65
+ compareDate,
66
+ comparedDate
67
+ };
68
+ }
69
+ case _constants.DATE_GRANULARITY.YEAR:
70
+ {
71
+ const currentYear = (0, _dayjs.default)().year();
72
+ return {
73
+ compareDate: currentYear - 1 + '',
74
+ comparedDate: currentYear - 2 + ''
75
+ };
76
+ }
77
+ default:
78
+ {
79
+ return {};
80
+ }
81
+ }
82
+ }
83
+ function summaryDurationResult(result, duration, summaryType, summaryMethod, useDataDb, dbDateKey, valueKey) {
84
+ const currentTime = (0, _dayjs.default)();
85
+ const days = duration === 'days_30' ? 30 : 7;
86
+ const endDate = currentTime.format('YYYY-MM-DD');
87
+ const middleDate = currentTime.subtract(days, 'days').format('YYYY-MM-DD');
88
+ const startDate = (0, _dayjs.default)(middleDate).subtract(days, 'days').format('YYYY-MM-DD');
89
+ let compareValue = [];
90
+ let comparedValue = [];
91
+ if (useDataDb) {
92
+ const days1 = [];
93
+ const days2 = [];
94
+ for (let index = 0; index < result.length; index++) {
95
+ const item = result[index];
96
+ const key = item[dbDateKey];
97
+ if (key >= startDate && key < middleDate) {
98
+ comparedValue.push(item[valueKey]);
99
+ days1.push(key);
100
+ } else if (key >= middleDate && key < endDate) {
101
+ compareValue.push(item[valueKey]);
102
+ days2.push(key);
103
+ }
104
+ }
105
+ } else {
106
+ // eslint-disable-next-line
107
+ for (let item of result) {
108
+ const key = item[0];
109
+ if (key >= startDate && key < middleDate) {
110
+ if (summaryType === _constants.SUMMARY_TYPE.ADVANCED) {
111
+ comparedValue = comparedValue.concat(item[1] || []);
112
+ } else {
113
+ comparedValue.push(item[1]);
114
+ }
115
+ } else if (key >= middleDate && key < endDate) {
116
+ if (summaryType === _constants.SUMMARY_TYPE.ADVANCED) {
117
+ compareValue = compareValue.concat(item[1] || []);
118
+ } else {
119
+ compareValue.push(item[1]);
120
+ }
121
+ }
122
+ }
123
+ }
124
+ if (summaryType === _constants.SUMMARY_TYPE.ADVANCED) {
125
+ comparedValue = (0, _commonUtils.getSummaryResult)(comparedValue, summaryMethod);
126
+ compareValue = (0, _commonUtils.getSummaryResult)(compareValue, summaryMethod);
127
+ } else {
128
+ compareValue = (0, _commonUtils.getSummaryResult)(compareValue, 'Sum');
129
+ comparedValue = (0, _commonUtils.getSummaryResult)(comparedValue, 'Sum');
130
+ }
131
+ return {
132
+ compareValue,
133
+ comparedValue
134
+ };
135
+ }
package/package.json CHANGED
@@ -1,12 +1,14 @@
1
1
  {
2
2
  "name": "dtable-statistic",
3
- "version": "4.4.24-alpha.9",
3
+ "version": "5.0.0",
4
4
  "description": "statistics",
5
5
  "main": "dist/dtable-statistic.js",
6
6
  "author": "seafile",
7
7
  "private": false,
8
8
  "dependencies": {
9
- "@antv/util": "^3.3.2",
9
+ "@antv/data-set": "0.11.8",
10
+ "@antv/g2": "4.1.46",
11
+ "@antv/util": "3.3.2",
10
12
  "@seafile/seafile-calendar": "0.0.24",
11
13
  "comlink": "^4.4.1",
12
14
  "dayjs": "1.10.7",
@@ -17,11 +19,11 @@
17
19
  "react-dom": "17.0.2",
18
20
  "react-grid-layout": "^1.2.5",
19
21
  "react-intl-universal": "^2.4.8",
20
- "reactstrap": "8.9.0",
21
- "sea-chart": "0.0.42-alpha.7"
22
+ "reactstrap": "8.9.0"
22
23
  },
23
24
  "peerDependencies": {
24
- "dtable-ui-component": "~4.4.*",
25
+ "@antv/scale": "0.3.14",
26
+ "dtable-ui-component": "~5.0.*",
25
27
  "dtable-utils": "~4.4.*"
26
28
  },
27
29
  "devDependencies": {
@@ -54,7 +56,7 @@
54
56
  "dotenv": "^10.0.0",
55
57
  "dotenv-expand": "^5.1.0",
56
58
  "dtable-store": "4.3.6",
57
- "dtable-ui-component": "4.4.34",
59
+ "dtable-ui-component": "5.0.0",
58
60
  "dtable-utils": "4.4.0",
59
61
  "eslint": "^8.3.0",
60
62
  "eslint-config-react-app": "^7.0.1",
@@ -1,93 +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 _seaChart = require("sea-chart");
12
- var _reactstrap = require("reactstrap");
13
- class ChartEditDialog extends _react.Component {
14
- constructor(props) {
15
- super(props);
16
- this.modifyChart = update => {
17
- const {
18
- chart
19
- } = this.state;
20
- this.setState({
21
- chart: {
22
- ...chart,
23
- ...update
24
- }
25
- });
26
- };
27
- this.onSettingChange = (update, type) => {
28
- this.modifyChart(update);
29
- };
30
- this.state = {
31
- chart: props.editingChart || null
32
- };
33
- this.value = props.getValue();
34
- }
35
- componentWillUnmount() {
36
- const {
37
- statistics,
38
- selectedDashboardIdx
39
- } = this.props;
40
- const {
41
- chart
42
- } = this.state;
43
- if (chart) {
44
- const dashboard = statistics[selectedDashboardIdx];
45
- const hasChart = dashboard.stat_items.find(item => item.config._id === chart.config._id);
46
- if (hasChart) {
47
- this.props.modifyChart(chart);
48
- } else {
49
- this.props.addChart(chart);
50
- }
51
- }
52
- }
53
- render() {
54
- const {
55
- api,
56
- colorThemeName,
57
- theme
58
- } = this.props;
59
- const {
60
- chart
61
- } = this.state;
62
- return /*#__PURE__*/_react.default.createElement(_reactstrap.Modal, {
63
- isOpen: true,
64
- toggle: () => {
65
- this.props.onToggleEditChart();
66
- },
67
- className: "statistic-chart-addition-dialog",
68
- zIndex: 1048
69
- }, /*#__PURE__*/_react.default.createElement(_reactstrap.ModalHeader, {
70
- toggle: () => {
71
- this.props.onToggleEditChart();
72
- }
73
- }, _reactIntlUniversal.default.get('Edit_the_chart')), /*#__PURE__*/_react.default.createElement(_reactstrap.ModalBody, {
74
- className: "statistic-modal-body"
75
- }, /*#__PURE__*/_react.default.createElement("div", {
76
- className: "statistic-chart-render-container"
77
- }, /*#__PURE__*/_react.default.createElement("div", {
78
- className: "statistic-chart-render"
79
- }, /*#__PURE__*/_react.default.createElement(_seaChart.Editor, {
80
- chart: chart,
81
- config: window.dtable,
82
- api: api,
83
- tables: this.value.tables,
84
- collaborators: this.value.collaborators,
85
- dataSources: "view",
86
- theme: theme,
87
- chartColorTheme: colorThemeName,
88
- integrator: "statistic",
89
- onChange: this.onSettingChange
90
- })))));
91
- }
92
- }
93
- var _default = exports.default = ChartEditDialog;
@@ -1,97 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _reactstrap = require("reactstrap");
10
- var _utils = require("../utils");
11
- var _constants = require("../constants");
12
- class DTablePopover extends _react.default.Component {
13
- constructor() {
14
- super(...arguments);
15
- this.dtablePopoverRef = null;
16
- this.isSelectOpen = false;
17
- this.onHistoryState = e => {
18
- e.preventDefault();
19
- this.props.hideDTablePopover(e);
20
- };
21
- this.onKeyDown = e => {
22
- const {
23
- canHideDTablePopover,
24
- hideDTablePopoverWithEsc
25
- } = this.props;
26
- if (e.keyCode === _constants.KeyCodes.Escape && typeof hideDTablePopoverWithEsc === 'function' && !this.isSelectOpen) {
27
- e.preventDefault();
28
- hideDTablePopoverWithEsc();
29
- } else if (e.keyCode === _constants.KeyCodes.Enter) {
30
- // Resolve the default behavior of the enter key when entering formulas is blocked
31
- if (canHideDTablePopover) return;
32
- e.stopImmediatePropagation();
33
- }
34
- };
35
- this.setSelectStatus = status => {
36
- this.isSelectOpen = status;
37
- };
38
- this.onMouseDown = e => {
39
- const {
40
- canHideDTablePopover
41
- } = this.props;
42
- if (!canHideDTablePopover) return;
43
- if (this.dtablePopoverRef && e && (0, _utils.getEventClassName)(e).indexOf('popover') === -1 && !this.dtablePopoverRef.contains(e.target)) {
44
- this.props.hideDTablePopover(e);
45
- }
46
- };
47
- this.onPopoverInsideClick = e => {
48
- e.stopPropagation();
49
- };
50
- }
51
- componentDidMount() {
52
- document.addEventListener('mousedown', this.onMouseDown);
53
- document.addEventListener('keydown', this.onKeyDown);
54
- window.addEventListener('popstate', this.onHistoryState);
55
- this.unsubscribeOpenSelect = window.app.eventBus.subscribe(_constants.CommonEventTypes.OPEN_SELECT, this.setSelectStatus);
56
- }
57
- componentWillUnmount() {
58
- document.removeEventListener('mousedown', this.onMouseDown);
59
- document.removeEventListener('keydown', this.onKeyDown);
60
- window.removeEventListener('popstate', this.onHistoryState);
61
- this.unsubscribeOpenSelect();
62
- }
63
- render() {
64
- const {
65
- target,
66
- boundariesElement,
67
- innerClassName,
68
- popoverClassName,
69
- hideArrow,
70
- modifiers,
71
- placement
72
- } = this.props;
73
- let additionalProps = {};
74
- if (boundariesElement) {
75
- additionalProps.boundariesElement = boundariesElement;
76
- }
77
- return /*#__PURE__*/_react.default.createElement(_reactstrap.Popover, Object.assign({
78
- placement: placement,
79
- isOpen: true,
80
- target: target,
81
- fade: false,
82
- hideArrow: hideArrow,
83
- innerClassName: innerClassName,
84
- className: popoverClassName,
85
- modifiers: modifiers
86
- }, additionalProps), /*#__PURE__*/_react.default.createElement("div", {
87
- ref: ref => this.dtablePopoverRef = ref,
88
- onClick: this.onPopoverInsideClick
89
- }, this.props.children));
90
- }
91
- }
92
- DTablePopover.defaultProps = {
93
- placement: 'bottom-start',
94
- hideArrow: true,
95
- canHideDTablePopover: true
96
- };
97
- var _default = exports.default = DTablePopover;
@@ -1,135 +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 _utils = require("../utils");
12
- class DtableSearchInput extends _react.Component {
13
- constructor(props) {
14
- super(props);
15
- this.onCompositionStart = () => {
16
- this.isInputtingChinese = true;
17
- };
18
- this.onChange = e => {
19
- this.timer && clearTimeout(this.timer);
20
- const {
21
- onChange,
22
- wait
23
- } = this.props;
24
- let text = e.target.value;
25
- this.setState({
26
- searchValue: text || ''
27
- }, () => {
28
- if (this.isInputtingChinese) return;
29
- this.timer = setTimeout(() => {
30
- onChange && onChange(this.state.searchValue.trim());
31
- }, wait);
32
- });
33
- };
34
- this.onCompositionEnd = e => {
35
- this.isInputtingChinese = false;
36
- this.onChange(e);
37
- };
38
- this.clearSearch = () => {
39
- const {
40
- clearValue
41
- } = this.props;
42
- this.setState({
43
- searchValue: ''
44
- }, () => {
45
- clearValue && clearValue();
46
- });
47
- };
48
- this.setFocus = isSelectAllText => {
49
- if (this.inputRef === document.activeElement) return;
50
- this.inputRef.focus();
51
- if (isSelectAllText) {
52
- const txtLength = this.state.searchValue.length;
53
- this.inputRef.setSelectionRange(0, txtLength);
54
- }
55
- };
56
- this.renderClear = () => {
57
- const {
58
- isClearable,
59
- clearClassName,
60
- components = {}
61
- } = this.props;
62
- const {
63
- searchValue
64
- } = this.state;
65
- if (!isClearable || !searchValue) return null;
66
- const {
67
- ClearIndicator
68
- } = components;
69
- if ( /*#__PURE__*/_react.default.isValidElement(ClearIndicator)) {
70
- return /*#__PURE__*/_react.default.cloneElement(ClearIndicator, {
71
- clearValue: this.clearSearch
72
- });
73
- } else if ((0, _utils.isFunction)(ClearIndicator)) {
74
- return /*#__PURE__*/_react.default.createElement(ClearIndicator, {
75
- clearValue: this.clearSearch
76
- });
77
- }
78
- return /*#__PURE__*/_react.default.createElement("i", {
79
- className: (0, _classnames.default)('search-text-clear input-icon-addon', clearClassName),
80
- onClick: this.clearSearch
81
- }, "\xD7");
82
- };
83
- this.state = {
84
- searchValue: props.value
85
- };
86
- this.isInputtingChinese = false;
87
- this.timer = null;
88
- this.inputRef = null;
89
- }
90
- componentWillReceiveProps(nextProps) {
91
- if (nextProps.value !== this.props.value) {
92
- this.setState({
93
- searchValue: nextProps.value
94
- });
95
- }
96
- }
97
- componentWillUnmount() {
98
- this.timer && clearTimeout(this.timer);
99
- this.timer = null;
100
- this.inputRef = null;
101
- }
102
- render() {
103
- const {
104
- placeholder,
105
- autoFocus,
106
- className,
107
- onKeyDown,
108
- disabled,
109
- style
110
- } = this.props;
111
- const {
112
- searchValue
113
- } = this.state;
114
- return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement("input", {
115
- type: "text",
116
- value: searchValue,
117
- className: (0, _classnames.default)('form-control', className),
118
- onChange: this.onChange,
119
- autoFocus: autoFocus,
120
- placeholder: placeholder,
121
- onCompositionStart: this.onCompositionStart,
122
- onCompositionEnd: this.onCompositionEnd,
123
- onKeyDown: onKeyDown,
124
- disabled: disabled,
125
- style: style,
126
- ref: ref => this.inputRef = ref
127
- }), this.renderClear());
128
- }
129
- }
130
- DtableSearchInput.defaultProps = {
131
- wait: 100,
132
- disabled: false,
133
- value: ''
134
- };
135
- var _default = exports.default = DtableSearchInput;
@@ -1,41 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- Object.defineProperty(exports, "DTablePopover", {
8
- enumerable: true,
9
- get: function () {
10
- return _dtablePopover.default;
11
- }
12
- });
13
- Object.defineProperty(exports, "DtableSearchInput", {
14
- enumerable: true,
15
- get: function () {
16
- return _dtableSearchInput.default;
17
- }
18
- });
19
- Object.defineProperty(exports, "Loading", {
20
- enumerable: true,
21
- get: function () {
22
- return _loading.default;
23
- }
24
- });
25
- Object.defineProperty(exports, "ModalPortal", {
26
- enumerable: true,
27
- get: function () {
28
- return _modalPortal.default;
29
- }
30
- });
31
- Object.defineProperty(exports, "NewTableDialog", {
32
- enumerable: true,
33
- get: function () {
34
- return _newTableDialog.default;
35
- }
36
- });
37
- var _dtablePopover = _interopRequireDefault(require("./dtable-popover"));
38
- var _dtableSearchInput = _interopRequireDefault(require("./dtable-search-input"));
39
- var _loading = _interopRequireDefault(require("./loading"));
40
- var _modalPortal = _interopRequireDefault(require("./modal-portal"));
41
- var _newTableDialog = _interopRequireDefault(require("./dialog/new-table-dialog"));
@@ -1,15 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _react = _interopRequireDefault(require("react"));
9
- function Loading() {
10
- let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
11
- return /*#__PURE__*/_react.default.createElement("span", Object.assign({}, props, {
12
- className: "loading-icon loading-tip"
13
- }));
14
- }
15
- var _default = exports.default = Loading;
@@ -1,26 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _reactDom = _interopRequireDefault(require("react-dom"));
10
- const modalRoot = document.getElementById('modal-wrapper');
11
- class ModalPortal extends _react.default.Component {
12
- constructor(props) {
13
- super(props);
14
- this.el = document.createElement('div');
15
- }
16
- componentDidMount() {
17
- modalRoot.appendChild(this.el);
18
- }
19
- componentWillUnmount() {
20
- modalRoot.removeChild(this.el);
21
- }
22
- render() {
23
- return /*#__PURE__*/_reactDom.default.createPortal(this.props.children, this.el);
24
- }
25
- }
26
- var _default = exports.default = ModalPortal;