dtable-statistic 4.3.6 → 4.3.8

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 (112) hide show
  1. package/es/calculator/base-calculator.js +16 -5
  2. package/es/calculator/basic-chart-calculator.js +17 -31
  3. package/es/calculator/combination-calculator.js +20 -34
  4. package/es/calculator/compare-bar-calculator.js +9 -20
  5. package/es/calculator/completeness-calculator.js +10 -24
  6. package/es/calculator/dashboard-calculator.js +6 -20
  7. package/es/calculator/heat-map-calculator.js +6 -20
  8. package/es/calculator/horizontal-bar-calculator.js +2 -13
  9. package/es/calculator/index.js +2 -0
  10. package/es/calculator/map-calculator.js +7 -21
  11. package/es/calculator/mirror-calculator.js +8 -22
  12. package/es/calculator/number-card-calculator.js +4 -18
  13. package/es/calculator/pivot-table-calculator.js +40 -54
  14. package/es/calculator/scatter-calculator.js +6 -20
  15. package/es/calculator/thread-manager.js +41 -41
  16. package/es/calculator/trend-calculator.js +6 -20
  17. package/es/calculator/workers/basic-chart-calculator-worker.js +77 -45
  18. package/es/calculator/workers/calculator.worker.js +5 -2
  19. package/es/calculator/workers/card-calculator-worker.js +13 -9
  20. package/es/calculator/workers/combination-calculator-worker.js +20 -16
  21. package/es/calculator/workers/compare-bar-chart-calculator-worker.js +12 -8
  22. package/es/calculator/workers/completeness-calculator-worker.js +21 -17
  23. package/es/calculator/workers/dashboard-calculator-worker.js +16 -12
  24. package/es/calculator/workers/mirror-calculator-worker.js +14 -10
  25. package/es/calculator/workers/pivot-table-calculator-worker.js +53 -35
  26. package/es/calculator/workers/scatter-calculator-worker.js +15 -11
  27. package/es/calculator/workers/trend-calculator-worker.js +14 -10
  28. package/es/calculator/world-map-calculator.js +6 -20
  29. package/es/components/dialog/chart-addition-edit-dialog.js +1 -1
  30. package/es/components/dialog/chart-addition-widgets/chart-selector.js +1 -1
  31. package/es/components/dialog/statistic-record-dialog/index.js +21 -11
  32. package/es/components/dropdown-menu/statistic-dropdown-menu.js +1 -1
  33. package/es/components/popover/color-rules/rule-filters/number-input.js +5 -5
  34. package/es/components/popover/color-rules-popover.js +2 -2
  35. package/es/components/select/select.js +3 -3
  36. package/es/components/toast/alert.js +2 -0
  37. package/es/components/toast/toastManager.js +1 -0
  38. package/es/constants/color-rules.js +3 -3
  39. package/es/constants/index.js +9 -9
  40. package/es/dashboard.js +7 -13
  41. package/es/desktop-dashboard.js +1 -1
  42. package/es/locale/lang/de.js +10 -10
  43. package/es/locale/lang/en.js +8 -8
  44. package/es/locale/lang/fr.js +10 -10
  45. package/es/locale/lang/zh_CN.js +8 -8
  46. package/es/model/basic-number-card.js +3 -3
  47. package/es/model/compare-bar.js +2 -2
  48. package/es/model/generic-model.js +11 -11
  49. package/es/model/heat-map.js +2 -2
  50. package/es/model/horizontal-bar.js +2 -2
  51. package/es/model/index.js +3 -2
  52. package/es/model/map.js +3 -3
  53. package/es/model/mirror.js +2 -2
  54. package/es/model/trend.js +2 -2
  55. package/es/model/world-map.js +3 -3
  56. package/es/stat-editor/stat-settings/advance-chart-settings/combination-settings.js +7 -7
  57. package/es/stat-editor/stat-settings/advance-chart-settings/index.js +2 -2
  58. package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/combination-style-setting.js +2 -2
  59. package/es/stat-editor/stat-settings/advance-chart-settings/summary-settings.js +1 -1
  60. package/es/stat-editor/stat-settings/basic-chart-settings/bar-settings.js +1 -1
  61. package/es/stat-editor/stat-settings/basic-chart-settings/completeness-chart-settings.js +7 -7
  62. package/es/stat-editor/stat-settings/basic-chart-settings/groupby-settings.js +6 -6
  63. package/es/stat-editor/stat-settings/basic-chart-settings/index.js +4 -4
  64. package/es/stat-editor/stat-settings/basic-chart-settings/pivot-table-settings.js +5 -5
  65. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/bar-chart-style-setting.js +3 -3
  66. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/horizontal-bar-chart-style.js +3 -3
  67. package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/pie-chart-style-settings.js +3 -3
  68. package/es/stat-editor/stat-settings/basic-chart-settings/summary-method-setting.js +1 -1
  69. package/es/stat-editor/stat-settings/basic-chart-settings/summary-settings.js +1 -1
  70. package/es/stat-editor/stat-settings/basic-chart-settings/time-comparison-settings.js +4 -18
  71. package/es/stat-editor/stat-settings/color-setting/color-picker.js +1 -0
  72. package/es/stat-editor/stat-settings/public-setting/column-settings.js +1 -1
  73. package/es/stat-editor/stat-settings/public-setting/numeric-summary-item.js +1 -1
  74. package/es/stat-view/area-chart.js +4 -4
  75. package/es/stat-view/bar-chart.js +4 -4
  76. package/es/stat-view/base-chart.js +2 -2
  77. package/es/stat-view/basic-number-card.js +49 -49
  78. package/es/stat-view/combination-chart.js +69 -69
  79. package/es/stat-view/compare-chart.js +4 -4
  80. package/es/stat-view/completeness-chart.js +3 -3
  81. package/es/stat-view/custom-bar.js +2 -2
  82. package/es/stat-view/dashboard-chart.js +50 -50
  83. package/es/stat-view/heat-map.js +2 -2
  84. package/es/stat-view/horizontal-bar-chart.js +4 -4
  85. package/es/stat-view/line-chart.js +4 -4
  86. package/es/stat-view/map.js +3 -3
  87. package/es/stat-view/mirror.js +2 -2
  88. package/es/stat-view/pivot-table/index.js +6 -6
  89. package/es/stat-view/pivot-table/one-dimension-table-no-numeric-columns.js +5 -5
  90. package/es/stat-view/pivot-table/one-dimension-table-with-numeric-columns.js +3 -3
  91. package/es/stat-view/pivot-table/pivot-table-display-name.js +19 -19
  92. package/es/stat-view/pivot-table/two-dimension-table.js +7 -7
  93. package/es/stat-view/ring-chart.js +2 -2
  94. package/es/stat-view/scatter-chart.js +56 -56
  95. package/es/stat-view/treemap-chart.js +50 -49
  96. package/es/stat-view/trend-chart.js +52 -52
  97. package/es/stat-view/world-map.js +3 -3
  98. package/es/utils/cell-format.js +16 -16
  99. package/es/utils/cell-value.js +3 -3
  100. package/es/utils/color-utils.js +3 -3
  101. package/es/utils/column-utils.js +10 -10
  102. package/es/utils/column.js +2 -2
  103. package/es/utils/common-utils.js +10 -8
  104. package/es/utils/export-table-utils.js +38 -38
  105. package/es/utils/object.js +3 -3
  106. package/es/utils/pivot-table.js +3 -3
  107. package/es/utils/row-utils.js +17 -17
  108. package/es/utils/search.js +14 -14
  109. package/es/utils/sql-utils.js +23 -20
  110. package/es/utils/stat-utils.js +52 -52
  111. package/es/utils/trend-utils.js +1 -0
  112. package/package.json +6 -3
@@ -5,13 +5,17 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
- var _dtableStore = require("dtable-store");
8
+ var _dtableUtils = require("dtable-utils");
9
9
  var _utils = require("../../utils");
10
10
  var _commonUtils = require("../../utils/common-utils");
11
11
  var _rowUtils = require("../../utils/row-utils");
12
12
  var _constants = require("../../constants");
13
13
  var _statUtils = _interopRequireDefault(require("../../utils/stat-utils"));
14
- function calculateStatItem(chart, dtableValue, username, userId) {
14
+ async function calculateStatItem(chart, dtableValue, _ref) {
15
+ let {
16
+ getViewRows,
17
+ getTableFormulaResults
18
+ } = _ref;
15
19
  const {
16
20
  table_id,
17
21
  view_id,
@@ -21,13 +25,13 @@ function calculateStatItem(chart, dtableValue, username, userId) {
21
25
  summary_method,
22
26
  group_column
23
27
  } = chart;
24
- const table = _dtableStore.TableUtils.getTableById(dtableValue.tables, table_id);
25
- const view = table && _dtableStore.Views.getViewById(table.views, view_id);
26
- const columnItem = _dtableStore.TableUtils.getTableColumnByKey(table, column);
27
- const rows = _dtableStore.Views.getViewRows(view, table, dtableValue, username, userId);
28
- const formulaRows = _dtableStore.Views.getTableFormulaResults(table, rows, dtableValue);
29
- const groupColumn = _dtableStore.TableUtils.getTableColumnByKey(table, group_column);
30
- const numericColumn = summary_column && _dtableStore.TableUtils.getTableColumnByKey(table, summary_column);
28
+ const table = (0, _dtableUtils.getTableById)(dtableValue.tables, table_id);
29
+ const view = table && (0, _dtableUtils.getViewById)(table.views, view_id);
30
+ const columnItem = (0, _dtableUtils.getTableColumnByKey)(table, column);
31
+ const rows = await getViewRows(view, table);
32
+ const formulaRows = await getTableFormulaResults(table, rows);
33
+ const groupColumn = (0, _dtableUtils.getTableColumnByKey)(table, group_column);
34
+ const numericColumn = summary_column && (0, _dtableUtils.getTableColumnByKey)(table, summary_column);
31
35
  const groupItems = getGroupItems(rows, groupColumn);
32
36
  if (groupColumn.length === 0) return;
33
37
  let result = {};
@@ -74,7 +78,7 @@ function calculateStatItem(chart, dtableValue, username, userId) {
74
78
  const list = result[groupItem][value];
75
79
  const formulaRow = formulaRows[row._id];
76
80
  let cellValue = (0, _rowUtils.getCellValue)(row, formulaRow, numericColumn);
77
- cellValue = (0, _dtableStore.isNumber)(cellValue) ? cellValue : 0;
81
+ cellValue = (0, _dtableUtils.isNumber)(cellValue) ? cellValue : 0;
78
82
  if (groupItem === groupValue) {
79
83
  if (!list) {
80
84
  result[groupItem][value] = [cellValue];
@@ -5,12 +5,16 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = calculateStatItem;
8
- var _dtableStore = require("dtable-store");
8
+ var _dtableUtils = require("dtable-utils");
9
9
  var _constants = require("../../constants");
10
10
  var _commonUtils = require("../../utils/common-utils");
11
11
  var _rowUtils = require("../../utils/row-utils");
12
12
  var _statUtils = _interopRequireDefault(require("../../utils/stat-utils"));
13
- function calculateStatItem(chart, value, username, userId) {
13
+ function calculateStatItem(chart, value, _ref) {
14
+ let {
15
+ getViewRows,
16
+ getTableFormulaResults
17
+ } = _ref;
14
18
  const {
15
19
  groupby_column_key,
16
20
  column_groupby_column_key
@@ -19,11 +23,21 @@ function calculateStatItem(chart, value, username, userId) {
19
23
  return {};
20
24
  }
21
25
  if (!column_groupby_column_key) {
22
- return calculateOneDimensionTable(chart, value, username, userId);
26
+ return calculateOneDimensionTable(chart, value, {
27
+ getViewRows,
28
+ getTableFormulaResults
29
+ });
23
30
  }
24
- return calculateTwoDimensionTable(chart, value, username, userId);
31
+ return calculateTwoDimensionTable(chart, value, {
32
+ getViewRows,
33
+ getTableFormulaResults
34
+ });
25
35
  }
26
- function calculateOneDimensionTable(chart, value, username, userId) {
36
+ async function calculateOneDimensionTable(chart, value, _ref2) {
37
+ let {
38
+ getViewRows,
39
+ getTableFormulaResults
40
+ } = _ref2;
27
41
  const {
28
42
  table_id,
29
43
  view_id,
@@ -36,13 +50,13 @@ function calculateOneDimensionTable(chart, value, username, userId) {
36
50
  groupby_geolocation_granularity,
37
51
  summary_columns_option
38
52
  } = chart;
39
- const table = _dtableStore.TableUtils.getTableById(value.tables, table_id);
40
- const view = table && _dtableStore.Views.getViewById(table.views, view_id);
41
- const column = _dtableStore.TableUtils.getTableColumnByKey(table, groupby_column_key);
53
+ const table = (0, _dtableUtils.getTableById)(value.tables, table_id);
54
+ const view = table && (0, _dtableUtils.getViewById)(table.views, view_id);
55
+ const column = (0, _dtableUtils.getTableColumnByKey)(table, groupby_column_key);
42
56
  if (!column) return {};
43
57
  const isColumnDataAsAnArray = (0, _commonUtils.isArrayCellValue)(column);
44
- const statRows = _dtableStore.Views.getViewRows(view, table, value, username, userId);
45
- const formulaRows = _dtableStore.Views.getTableFormulaResults(table, statRows, value);
58
+ const statRows = await getViewRows(view, table);
59
+ const formulaRows = await getTableFormulaResults(table, statRows);
46
60
  let pivot_rows = [];
47
61
  statRows.forEach(row => {
48
62
  const {
@@ -74,7 +88,7 @@ function calculateOneDimensionTable(chart, value, username, userId) {
74
88
  const statisticColumnKeys = [summary_column_key, ...summary_columns_option_keys];
75
89
  const validStatisticColumnKeys = statisticColumnKeys;
76
90
  let statisticColumns = validStatisticColumnKeys.map(key => {
77
- const column = _dtableStore.TableUtils.getTableColumnByKey(table, key);
91
+ const column = (0, _dtableUtils.getTableColumnByKey)(table, key);
78
92
  return column ? {
79
93
  ...column
80
94
  } : null;
@@ -96,7 +110,7 @@ function calculateOneDimensionTable(chart, value, username, userId) {
96
110
  key: column.key,
97
111
  method: column.method
98
112
  };
99
- }).filter(item => _dtableStore.TableUtils.getTableColumnByKey(table, item.key));
113
+ }).filter(item => (0, _dtableUtils.getTableColumnByKey)(table, item.key));
100
114
  pivot_rows.forEach(row => {
101
115
  row.original_name = row.name;
102
116
  row.name = (0, _rowUtils.getFormattedLabel)(column, row.name, value.collaborators);
@@ -128,7 +142,7 @@ function getOneDimensionTotal(columns, summary_type, formula_rows) {
128
142
  let dateColumnsTotalArr = {};
129
143
  if (Array.isArray(columns) && columns.length > 0) {
130
144
  columns.forEach(column => {
131
- if (column && (0, _dtableStore.isDateColumn)(column)) {
145
+ if (column && (0, _dtableUtils.isDateColumn)(column)) {
132
146
  dateColumnsTotalArr[column.key] = [];
133
147
  }
134
148
  });
@@ -153,7 +167,7 @@ function getOneDimensionTotal(columns, summary_type, formula_rows) {
153
167
  method
154
168
  } = summaryColumn;
155
169
  const total = getTotal(summaryColumn, summary_type, method, rows, formula_rows);
156
- if (summaryColumn && (0, _dtableStore.isDateColumn)(summaryColumn)) {
170
+ if (summaryColumn && (0, _dtableUtils.isDateColumn)(summaryColumn)) {
157
171
  if (method === _constants.SUMMARY_METHOD_MAP.Distinct_values) {
158
172
  totalMap['total'] = total;
159
173
  } else {
@@ -184,7 +198,7 @@ function getOneDimensionTotal(columns, summary_type, formula_rows) {
184
198
  } = column;
185
199
  const totalKey = key + method;
186
200
  const total = getTotal(column, summary_type, method, rows, formula_rows);
187
- if (column && (0, _dtableStore.isDateColumn)(column)) {
201
+ if (column && (0, _dtableUtils.isDateColumn)(column)) {
188
202
  if (method === _constants.SUMMARY_METHOD_MAP.Distinct_values) {
189
203
  totalMap[totalKey] = total;
190
204
  } else {
@@ -218,7 +232,11 @@ function getOneDimensionTotal(columns, summary_type, formula_rows) {
218
232
  pivot_columns_total
219
233
  };
220
234
  }
221
- function calculateTwoDimensionTable(chart, value, username, userId) {
235
+ async function calculateTwoDimensionTable(chart, value, _ref3) {
236
+ let {
237
+ getViewRows,
238
+ getTableFormulaResults
239
+ } = _ref3;
222
240
  const {
223
241
  table_id,
224
242
  view_id,
@@ -234,24 +252,24 @@ function calculateTwoDimensionTable(chart, value, username, userId) {
234
252
  column_groupby_geolocation_granularity,
235
253
  summary_columns_option
236
254
  } = chart;
237
- const table = _dtableStore.TableUtils.getTableById(value.tables, table_id);
238
- const view = table && _dtableStore.Views.getViewById(table.views, view_id);
255
+ const table = (0, _dtableUtils.getTableById)(value.tables, table_id);
256
+ const view = table && (0, _dtableUtils.getViewById)(table.views, view_id);
239
257
  if (!view) return;
240
- const groupbyColumn = _dtableStore.TableUtils.getTableColumnByKey(table, groupby_column_key);
258
+ const groupbyColumn = (0, _dtableUtils.getTableColumnByKey)(table, groupby_column_key);
241
259
  if (!groupbyColumn) return;
242
260
  const isGroupbyColumnDataAsAnArray = (0, _commonUtils.isArrayCellValue)(groupbyColumn);
243
- const rowGroupbyColumn = _dtableStore.TableUtils.getTableColumnByKey(table, column_groupby_column_key);
261
+ const rowGroupbyColumn = (0, _dtableUtils.getTableColumnByKey)(table, column_groupby_column_key);
244
262
  if (!rowGroupbyColumn) {
245
263
  return calculateOneDimensionTable(chart, value);
246
264
  }
247
265
  const isRowGroupbyColumnDataAsAnArray = (0, _commonUtils.isArrayCellValue)(rowGroupbyColumn);
248
- const summaryColumn = _dtableStore.TableUtils.getTableColumnByKey(table, summary_column_key);
249
- const statRows = _dtableStore.Views.getViewRows(view, table, value, username, userId);
250
- const formulaRows = _dtableStore.Views.getTableFormulaResults(table, statRows, value);
266
+ const summaryColumn = (0, _dtableUtils.getTableColumnByKey)(table, summary_column_key);
267
+ const statRows = await getViewRows(view, table);
268
+ const formulaRows = await getTableFormulaResults(table, statRows);
251
269
  const pivot_summary_multiple_columns = [];
252
270
  summary_columns_option.forEach(item => {
253
- const column = _dtableStore.TableUtils.getTableColumnByKey(table, item.key);
254
- if (column && (0, _dtableStore.isNumericColumn)(column)) {
271
+ const column = (0, _dtableUtils.getTableColumnByKey)(table, item.key);
272
+ if (column && (0, _dtableUtils.isNumericColumn)(column)) {
255
273
  pivot_summary_multiple_columns.push({
256
274
  key: item.key,
257
275
  type: column.type,
@@ -420,7 +438,7 @@ function updateTwoDimensionRows(pivot_rows, pivot_columns, index, name, row, isC
420
438
  }
421
439
  }
422
440
  function isSameName(prevName, currName) {
423
- if ((0, _dtableStore.isNumber)(prevName) && (0, _dtableStore.isNumber)(currName)) {
441
+ if ((0, _dtableUtils.isNumber)(prevName) && (0, _dtableUtils.isNumber)(currName)) {
424
442
  return prevName === currName;
425
443
  }
426
444
  if (!prevName && !currName) {
@@ -443,7 +461,7 @@ function getTwoDimensionTotal(summaryColumn, summary_type, summary_method, formu
443
461
  let {
444
462
  type: summary_column_type
445
463
  } = summaryColumn || {};
446
- const isSummaryDateColumn = summaryColumn && (0, _dtableStore.isDateColumn)(summaryColumn);
464
+ const isSummaryDateColumn = summaryColumn && (0, _dtableUtils.isDateColumn)(summaryColumn);
447
465
  let date_summary_column_format = isSummaryDateColumn ? summaryColumn.data.format : '';
448
466
  Array.isArray(pivot_rows) && pivot_rows.forEach(pivotRow => {
449
467
  let {
@@ -482,7 +500,7 @@ function getTwoDimensionTotal(summaryColumn, summary_type, summary_method, formu
482
500
  pivot_table_total += total;
483
501
  }
484
502
  });
485
- if (summaryColumn && (0, _dtableStore.isDateColumn)(summaryColumn)) {
503
+ if (summaryColumn && (0, _dtableUtils.isDateColumn)(summaryColumn)) {
486
504
  if (summary_method === _constants.SUMMARY_METHOD_MAP.Distinct_values) {
487
505
  pivot_columns_total = Number.parseFloat(pivot_table_total.toFixed(8));
488
506
  } else {
@@ -516,7 +534,7 @@ function getTotal(summary_column, summary_type, summary_method) {
516
534
  let existMap = {};
517
535
  rows.forEach(row => {
518
536
  let num;
519
- if (_dtableStore.FORMULA_COLUMN_TYPES_MAP[summary_column_type]) {
537
+ if (_dtableUtils.FORMULA_COLUMN_TYPES_MAP[summary_column_type]) {
520
538
  const formulaRow = formula_rows[row._id] || {};
521
539
  num = formulaRow[summary_column_key];
522
540
  num = Array.isArray(num) ? num[0] : num;
@@ -537,14 +555,14 @@ function getTotal(summary_column, summary_type, summary_method) {
537
555
  });
538
556
  return total;
539
557
  }
540
- if (summary_column && (0, _dtableStore.isDateColumn)(summary_column)) {
558
+ if (summary_column && (0, _dtableUtils.isDateColumn)(summary_column)) {
541
559
  if (rowsLength === 0) return;
542
560
  let dateArr = [];
543
561
  rows.forEach(r => {
544
562
  let formatDate = {};
545
563
  let formatDateData;
546
564
  let value = r[summary_column_key];
547
- if (_dtableStore.FORMULA_COLUMN_TYPES_MAP[summary_column_type]) {
565
+ if (_dtableUtils.FORMULA_COLUMN_TYPES_MAP[summary_column_type]) {
548
566
  let formulaRow = formula_rows[r._id] || {};
549
567
  value = formulaRow[summary_column_key];
550
568
  }
@@ -575,7 +593,7 @@ function getTotal(summary_column, summary_type, summary_method) {
575
593
  let validNumbersCount = 0;
576
594
  rows.forEach(r => {
577
595
  let num;
578
- if (_dtableStore.FORMULA_COLUMN_TYPES_MAP[summary_column_type]) {
596
+ if (_dtableUtils.FORMULA_COLUMN_TYPES_MAP[summary_column_type]) {
579
597
  let formulaRow = formula_rows[r._id] || {};
580
598
  if (formulaRow[summary_column_key] && typeof formulaRow[summary_column_key] === 'object') {
581
599
  num = formulaRow[summary_column_key][0];
@@ -585,7 +603,7 @@ function getTotal(summary_column, summary_type, summary_method) {
585
603
  } else {
586
604
  num = r[summary_column_key];
587
605
  }
588
- if ((0, _dtableStore.isNumber)(num)) {
606
+ if ((0, _dtableUtils.isNumber)(num)) {
589
607
  validNumbersCount++;
590
608
  sum += num;
591
609
  }
@@ -603,7 +621,7 @@ function getTotal(summary_column, summary_type, summary_method) {
603
621
  if (rowsLength > 0) {
604
622
  let result = rows.reduce((current, next) => {
605
623
  let currentValue, nextValue;
606
- if (_dtableStore.FORMULA_COLUMN_TYPES_MAP[summary_column_type]) {
624
+ if (_dtableUtils.FORMULA_COLUMN_TYPES_MAP[summary_column_type]) {
607
625
  let currentFormulaRow = formula_rows[current._id] || {};
608
626
  let nextFormulaRow = formula_rows[next._id] || {};
609
627
  currentValue = currentFormulaRow[summary_column_key];
@@ -622,7 +640,7 @@ function getTotal(summary_column, summary_type, summary_method) {
622
640
  return isNextGreater ? next : current;
623
641
  }
624
642
  });
625
- if (_dtableStore.FORMULA_COLUMN_TYPES_MAP[summary_column_type]) {
643
+ if (_dtableUtils.FORMULA_COLUMN_TYPES_MAP[summary_column_type]) {
626
644
  let formulaRow = formula_rows[result._id];
627
645
  if (formulaRow) {
628
646
  if (formulaRow[summary_column_key] && typeof formulaRow[summary_column_key] === 'object') {
@@ -5,12 +5,16 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
- var _dtableStore = require("dtable-store");
8
+ var _dtableUtils = require("dtable-utils");
9
9
  var _statUtils = _interopRequireDefault(require("../../utils/stat-utils"));
10
10
  var _commonUtils = require("../../utils/common-utils");
11
11
  var _rowUtils = require("../../utils/row-utils");
12
12
  var _constants = require("../../constants");
13
- function calculateResult(chart, value, username, userId) {
13
+ async function calculateResult(chart, value, _ref) {
14
+ let {
15
+ getViewRows,
16
+ getTableFormulaResults
17
+ } = _ref;
14
18
  const {
15
19
  table_id,
16
20
  view_id,
@@ -18,16 +22,16 @@ function calculateResult(chart, value, username, userId) {
18
22
  y_axis_column,
19
23
  group_column
20
24
  } = chart;
21
- const table = _dtableStore.TableUtils.getTableById(value.tables, table_id);
22
- const view = table && _dtableStore.Views.getViewById(table.views, view_id);
25
+ const table = (0, _dtableUtils.getTableById)(value.tables, table_id);
26
+ const view = table && (0, _dtableUtils.getViewById)(table.views, view_id);
23
27
  if (!view) {
24
28
  return [];
25
29
  }
26
- const selectedXAxisColumn = _dtableStore.TableUtils.getTableColumnByKey(table, x_axis_column);
27
- const selectedYAxisColumn = _dtableStore.TableUtils.getTableColumnByKey(table, y_axis_column);
28
- const selectedGroupColumn = _dtableStore.TableUtils.getTableColumnByKey(table, group_column);
29
- const statRows = _dtableStore.Views.getViewRows(view, table, value, username, userId);
30
- const formulaRows = _dtableStore.Views.getTableFormulaResults(table, statRows, value);
30
+ const selectedXAxisColumn = (0, _dtableUtils.getTableColumnByKey)(table, x_axis_column);
31
+ const selectedYAxisColumn = (0, _dtableUtils.getTableColumnByKey)(table, y_axis_column);
32
+ const selectedGroupColumn = (0, _dtableUtils.getTableColumnByKey)(table, group_column);
33
+ const statRows = await getViewRows(view, table);
34
+ const formulaRows = await getTableFormulaResults(table, statRows);
31
35
  const data = [];
32
36
  statRows.forEach(row => {
33
37
  const {
@@ -36,8 +40,8 @@ function calculateResult(chart, value, username, userId) {
36
40
  const formulaRow = formulaRows[rowId] || {};
37
41
  let x_axis = (0, _rowUtils.getCellValue)(row, formulaRow, selectedXAxisColumn);
38
42
  let y_axis = (0, _rowUtils.getCellValue)(row, formulaRow, selectedYAxisColumn);
39
- x_axis = (0, _dtableStore.isNumber)(x_axis) ? x_axis : 0;
40
- y_axis = (0, _dtableStore.isNumber)(y_axis) ? y_axis : 0;
43
+ x_axis = (0, _dtableUtils.isNumber)(x_axis) ? x_axis : 0;
44
+ y_axis = (0, _dtableUtils.isNumber)(y_axis) ? y_axis : 0;
41
45
  const name = getColumnValue(row, formulaRow, selectedGroupColumn, value);
42
46
  const nameIndex = data.findIndex(r => r.name === name && r.x_axis === x_axis && r.y_axis === y_axis);
43
47
  const dataItem = {
@@ -7,14 +7,18 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = void 0;
8
8
  var _dayjs = _interopRequireDefault(require("dayjs"));
9
9
  var _quarterOfYear = _interopRequireDefault(require("dayjs/plugin/quarterOfYear"));
10
- var _dtableStore = require("dtable-store");
10
+ var _dtableUtils = require("dtable-utils");
11
11
  var _constants = require("../../constants");
12
12
  var _statUtils = _interopRequireDefault(require("../../utils/stat-utils"));
13
13
  var _rowUtils = require("../../utils/row-utils");
14
14
  var _commonUtils = require("../../utils/common-utils");
15
15
  var _trendUtils = require("../../utils/trend-utils");
16
16
  _dayjs.default.extend(_quarterOfYear.default);
17
- function calculateStatItem(chart, value, username, userId) {
17
+ async function calculateStatItem(chart, value, _ref) {
18
+ let {
19
+ getViewRows,
20
+ getTableFormulaResults
21
+ } = _ref;
18
22
  const {
19
23
  table_id,
20
24
  view_id,
@@ -24,16 +28,16 @@ function calculateStatItem(chart, value, username, userId) {
24
28
  summary_type,
25
29
  summary_method
26
30
  } = chart;
27
- const selectedTable = _dtableStore.TableUtils.getTableById(value.tables, table_id);
28
- const selectedView = selectedTable && _dtableStore.Views.getViewById(selectedTable.views, view_id);
29
- const selectedColumn = _dtableStore.TableUtils.getTableColumnByKey(selectedTable, date_column);
31
+ const selectedTable = (0, _dtableUtils.getTableById)(value.tables, table_id);
32
+ const selectedView = selectedTable && (0, _dtableUtils.getViewById)(selectedTable.views, view_id);
33
+ const selectedColumn = (0, _dtableUtils.getTableColumnByKey)(selectedTable, date_column);
30
34
  const resultMap = new Map();
31
35
  let formulaRows = {};
32
- const rows = _dtableStore.Views.getViewRows(selectedView, selectedTable, value, username, userId);
33
- const numericColumn = _dtableStore.TableUtils.getTableColumnByKey(selectedTable, summary_column);
36
+ const rows = await getViewRows(selectedView, selectedTable);
37
+ const numericColumn = (0, _dtableUtils.getTableColumnByKey)(selectedTable, summary_column);
34
38
  if (summary_type === _constants.SUMMARY_TYPE.ADVANCED) {
35
- if (_dtableStore.FORMULA_COLUMN_TYPES_MAP[numericColumn.type]) {
36
- formulaRows = _dtableStore.Views.getTableFormulaResults(selectedTable, rows, value);
39
+ if (_dtableUtils.FORMULA_COLUMN_TYPES_MAP[numericColumn.type]) {
40
+ formulaRows = await getTableFormulaResults(selectedTable, rows);
37
41
  }
38
42
  }
39
43
  let granularity = date_granularity;
@@ -51,7 +55,7 @@ function calculateStatItem(chart, value, username, userId) {
51
55
  const formulaRow = formulaRows[row._id];
52
56
  const numericValue = (0, _rowUtils.getCellValue)(row, formulaRow, numericColumn);
53
57
  const currentList = resultMap.get(label) || [];
54
- if ((0, _dtableStore.isNumber)(numericValue)) {
58
+ if ((0, _dtableUtils.isNumber)(numericValue)) {
55
59
  currentList.push(numericValue);
56
60
  }
57
61
  resultMap.set(label, currentList);
@@ -5,26 +5,12 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
- var _dtableStore = require("dtable-store");
8
+ var _dtableUtils = require("dtable-utils");
9
9
  var _baseCalculator = _interopRequireDefault(require("./base-calculator"));
10
10
  var _commonUtils = require("../utils/common-utils");
11
11
  var _constants = require("../constants");
12
12
  var _statUtils = _interopRequireDefault(require("../utils/stat-utils"));
13
13
  class WorldMapCalculator extends _baseCalculator.default {
14
- constructor(_ref) {
15
- let {
16
- value,
17
- statisticThreadManager,
18
- username,
19
- userId
20
- } = _ref;
21
- super({
22
- value,
23
- statisticThreadManager,
24
- username,
25
- userId
26
- });
27
- }
28
14
  isValidChart(chart) {
29
15
  if (!this.validateBaseConfigs(chart)) {
30
16
  return false;
@@ -35,11 +21,11 @@ class WorldMapCalculator extends _baseCalculator.default {
35
21
  summary_column
36
22
  } = chart;
37
23
  const table = this.getTableById(table_id);
38
- const selectedColumn = column && _dtableStore.TableUtils.getTableColumnByKey(table, column);
24
+ const selectedColumn = column && (0, _dtableUtils.getTableColumnByKey)(table, column);
39
25
  if (column && !selectedColumn) {
40
26
  return false;
41
27
  }
42
- if (summary_column && !_dtableStore.TableUtils.getTableColumnByKey(table, summary_column)) {
28
+ if (summary_column && !(0, _dtableUtils.getTableColumnByKey)(table, summary_column)) {
43
29
  return false;
44
30
  }
45
31
  return true;
@@ -63,17 +49,17 @@ class WorldMapCalculator extends _baseCalculator.default {
63
49
  } = chart;
64
50
  const selectedTable = this.getTableById(table_id);
65
51
  const selectedView = this.getViewById(view_id, selectedTable);
66
- const selectedColumn = _dtableStore.TableUtils.getTableColumnByKey(selectedTable, column);
52
+ const selectedColumn = (0, _dtableUtils.getTableColumnByKey)(selectedTable, column);
67
53
  if (!selectedColumn) return [];
68
54
  const columnName = selectedColumn.name;
69
55
  const isAdvanced = summary_type === 'advanced';
70
56
  const method = isAdvanced ? _constants.DTABLE_DB_SUMMARY_METHOD[summary_method] : 'COUNT';
71
- const sqlCondition = (0, _dtableStore.filter2SqlCondition)(selectedTable, selectedView);
57
+ const sqlCondition = this.filter2SqlCondition(selectedTable, selectedView);
72
58
  let summaryColumnName = '';
73
59
  let summaryColumn;
74
60
  let sqlString = '';
75
61
  if (isAdvanced) {
76
- summaryColumn = _dtableStore.TableUtils.getTableColumnByKey(selectedTable, summary_column);
62
+ summaryColumn = (0, _dtableUtils.getTableColumnByKey)(selectedTable, summary_column);
77
63
  if (!summaryColumn) {
78
64
  return [];
79
65
  }
@@ -65,7 +65,7 @@ class ChartAdditionEditDialog extends _react.Component {
65
65
  zIndex: 1048
66
66
  }, /*#__PURE__*/_react.default.createElement(_reactstrap.ModalHeader, {
67
67
  toggle: this.props.hideChartAdditionDialog
68
- }, _reactIntlUniversal.default.get(editMode ? 'Edit_the_chart' : 'Choose_a_chart')), /*#__PURE__*/_react.default.createElement(_reactstrap.ModalBody, {
68
+ }, _reactIntlUniversal.default.get(editMode ? 'Edit_the_chart' : 'All_charts')), /*#__PURE__*/_react.default.createElement(_reactstrap.ModalBody, {
69
69
  className: "statistic-modal-body"
70
70
  }, editMode ? /*#__PURE__*/_react.default.createElement(_statEditor.default, {
71
71
  dtableChangedTime: this.props.dtableChangedTime,
@@ -174,7 +174,7 @@ class ChartSelector extends _react.default.Component {
174
174
  image: 'number-card.png'
175
175
  }, {
176
176
  type: _constants.STAT_TYPE.TREND_CHART,
177
- title: _reactIntlUniversal.default.get('Trend_chart'),
177
+ title: _reactIntlUniversal.default.get('Trend_card'),
178
178
  image: 'trend-chart.png'
179
179
  }]
180
180
  }, {
@@ -9,7 +9,7 @@ exports.default = void 0;
9
9
  var _react = _interopRequireWildcard(require("react"));
10
10
  var _reactIntlUniversal = _interopRequireDefault(require("react-intl-universal"));
11
11
  var _reactstrap = require("reactstrap");
12
- var _dtableStore = require("dtable-store");
12
+ var _dtableUtils = require("dtable-utils");
13
13
  var _dtableDbApi = _interopRequireDefault(require("../../../api/dtable-db-api"));
14
14
  var _index = require("../../index");
15
15
  var _utils = require("../../../utils");
@@ -42,16 +42,24 @@ class StatisticRecordDialog extends _react.default.Component {
42
42
  view_id
43
43
  } = chart;
44
44
  this.table = getTableById(table_id);
45
- this.view = _dtableStore.Views.getViewById(this.table.views, view_id);
46
- this.isArchiveView = _dtableStore.Views.isArchiveView(this.view);
45
+ this.view = (0, _dtableUtils.getViewById)(this.table.views, view_id);
46
+ this.isArchiveView = (0, _dtableUtils.isArchiveView)(this.view);
47
47
  this.unShowColumnKeyList = this.getUnShowColumnKeyList(this.view);
48
48
  this.renderedColumns = this.getRenderedColumns(this.table);
49
49
  if (this.isArchiveView || !records) {
50
+ const {
51
+ username,
52
+ userId,
53
+ userDepartmentIdsMap
54
+ } = window.dtable || {};
50
55
  const sqlString = (0, _sqlUtils.getSqlString)(chart, statisticRecord, {
51
56
  isColumn,
52
57
  isCurrentView,
53
58
  isRow,
54
- getTableById
59
+ getTableById,
60
+ username,
61
+ userId,
62
+ userDepartmentIdsMap
55
63
  });
56
64
  _dtableDbApi.default.sqlQuery(sqlString).then(res => {
57
65
  const {
@@ -86,7 +94,7 @@ class StatisticRecordDialog extends _react.default.Component {
86
94
  };
87
95
  this.initComputedProperties = drilledRows => {
88
96
  if (this.isArchiveView) {
89
- const formulaColumns = _dtableStore.Views.getFormulaColumnsContainLinks(this.table);
97
+ const formulaColumns = (0, _dtableUtils.getFormulaColumnsContainLinks)(this.table);
90
98
  if (formulaColumns.length === 0) return {};
91
99
  let formulaRows = {};
92
100
  drilledRows.forEach(row => {
@@ -131,7 +139,7 @@ class StatisticRecordDialog extends _react.default.Component {
131
139
  this.getSearchedRows = (rows, searchVal) => {
132
140
  if (!Array.isArray(rows) || rows.length === 0) return [];
133
141
  if (searchVal) {
134
- return (0, _utils.searchRows)(rows, _dtableStore.Views.getColumns(this.view, this.table), searchVal, row => {
142
+ return (0, _utils.searchRows)(rows, (0, _dtableUtils.getViewShownColumns)(this.view, this.table.columns), searchVal, row => {
135
143
  return row;
136
144
  }).map(row => row._id);
137
145
  }
@@ -236,11 +244,13 @@ class StatisticRecordDialog extends _react.default.Component {
236
244
  formulaRows: view.formula_rows
237
245
  };
238
246
  }
239
- _dtableStore.Views.cacheFormulaResults(table.rows, {
240
- targetViewId: view._id,
241
- table,
242
- value
243
- });
247
+ if (window.app && window.app.cacheFormulaResults) {
248
+ window.app.cacheFormulaResults(table.rows, {
249
+ targetViewId: view._id,
250
+ table,
251
+ value
252
+ });
253
+ }
244
254
  return {
245
255
  formulaRows: view.formula_rows
246
256
  };
@@ -90,7 +90,7 @@ class StatisticDropdownMenu extends _react.default.Component {
90
90
  className: "item-icon dtable-font dtable-icon-copy"
91
91
  }), /*#__PURE__*/_react.default.createElement("span", {
92
92
  className: "item-text"
93
- }, _reactIntlUniversal.default.get('Copy')))), chartType === _constants.STAT_TYPE.PIVOT_TABLE && !isTableReadOnly && /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownItem, {
93
+ }, _reactIntlUniversal.default.get('Duplicate')))), chartType === _constants.STAT_TYPE.PIVOT_TABLE && !isTableReadOnly && /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownItem, {
94
94
  onClick: this.props.onNewTableDialogToggle
95
95
  }, /*#__PURE__*/_react.default.createElement("i", {
96
96
  className: "item-icon dtable-font dtable-icon-export"
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.default = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
- var _dtableStore = require("dtable-store");
9
+ var _dtableUtils = require("dtable-utils");
10
10
  /**
11
11
  * support type number with format
12
12
  */
@@ -23,19 +23,19 @@ class NumberInput extends _react.Component {
23
23
  if (valueType === 'number') {
24
24
  numericValue = value;
25
25
  } else if (valueType === 'string') {
26
- numericValue = (0, _dtableStore.formatStringToNumber)(value, {});
26
+ numericValue = (0, _dtableUtils.formatStringToNumber)(value, {});
27
27
  }
28
28
  if (!numericValue && numericValue !== 0) {
29
29
  return '';
30
30
  }
31
- return (0, _dtableStore.getNumberDisplayString)(numericValue, {}) || '';
31
+ return (0, _dtableUtils.getNumberDisplayString)(numericValue, {}) || '';
32
32
  };
33
33
  this.onChange = evt => {
34
- const value = (0, _dtableStore.replaceNumberNotAllowInput)(evt.target.value.trim(), _dtableStore.DEFAULT_NUMBER_FORMAT, null);
34
+ const value = (0, _dtableUtils.replaceNumberNotAllowInput)(evt.target.value.trim(), _dtableUtils.DEFAULT_NUMBER_FORMAT, null);
35
35
  this.setState({
36
36
  value
37
37
  }, () => {
38
- this.props.onChange((0, _dtableStore.formatStringToNumber)(value, {}));
38
+ this.props.onChange((0, _dtableUtils.formatStringToNumber)(value, {}));
39
39
  });
40
40
  };
41
41
  this.onPaste = evt => {
@@ -9,7 +9,7 @@ exports.default = void 0;
9
9
  var _react = _interopRequireWildcard(require("react"));
10
10
  var _classnames = _interopRequireDefault(require("classnames"));
11
11
  var _reactIntlUniversal = _interopRequireDefault(require("react-intl-universal"));
12
- var _dtableStore = require("dtable-store");
12
+ var _dtableUtils = require("dtable-utils");
13
13
  var _index = require("../index");
14
14
  var _colorRules = _interopRequireDefault(require("./color-rules"));
15
15
  var _colorRules2 = require("../../constants/color-rules");
@@ -82,7 +82,7 @@ class ColorRulesPopover extends _react.Component {
82
82
  switch (filterType) {
83
83
  case _colorRules2.COLOR_RULE_FILTER_TYPE_MAP.NUMERIC_VALUE:
84
84
  {
85
- return _dtableStore.FILTER_COLUMN_OPTIONS[_dtableStore.CellType.NUMBER];
85
+ return _dtableUtils.FILTER_COLUMN_OPTIONS[_dtableUtils.CellType.NUMBER];
86
86
  }
87
87
  default:
88
88
  {
@@ -31,7 +31,7 @@ class Select extends _react.Component {
31
31
  });
32
32
  window.app.eventBus.dispatch(_constants.CommonEventTypes.OPEN_SELECT, !this.state.isShowSelectOptions);
33
33
  };
34
- this.onClick = event => {
34
+ this.onMousedown = event => {
35
35
  if (this.props.isShowSelected && event.target.className.includes('icon-fork-number')) {
36
36
  return;
37
37
  }
@@ -84,10 +84,10 @@ class Select extends _react.Component {
84
84
  };
85
85
  }
86
86
  componentDidMount() {
87
- document.addEventListener('click', this.onClick);
87
+ document.addEventListener('mousedown', this.onMousedown);
88
88
  }
89
89
  componentWillUnmount() {
90
- document.removeEventListener('click', this.onClick);
90
+ document.removeEventListener('mousedown', this.onMousedown);
91
91
  }
92
92
  render() {
93
93
  let {
@@ -99,6 +99,8 @@ class Alert extends _react.default.PureComponent {
99
99
  }),
100
100
  iconClass: 'dtable-font dtable-icon-exclamation-circle'
101
101
  };
102
+ default:
103
+ return null;
102
104
  }
103
105
  }
104
106
  render() {