dtable-statistic 4.3.3 → 4.3.4
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.
- package/es/api/dtable-db-api.js +3 -10
- package/es/calculator/base-calculator.js +12 -20
- package/es/calculator/basic-chart-calculator.js +65 -72
- package/es/calculator/combination-calculator.js +57 -64
- package/es/calculator/compare-bar-calculator.js +26 -33
- package/es/calculator/completeness-calculator.js +30 -37
- package/es/calculator/copy-value.js +1 -7
- package/es/calculator/dashboard-calculator.js +13 -20
- package/es/calculator/heat-map-calculator.js +18 -25
- package/es/calculator/horizontal-bar-calculator.js +8 -15
- package/es/calculator/index.js +35 -42
- package/es/calculator/map-calculator.js +22 -29
- package/es/calculator/mirror-calculator.js +20 -27
- package/es/calculator/number-card-calculator.js +10 -17
- package/es/calculator/pivot-table-calculator.js +58 -65
- package/es/calculator/scatter-calculator.js +14 -21
- package/es/calculator/thread-manager.js +1 -7
- package/es/calculator/trend-calculator.js +22 -29
- package/es/calculator/workers/basic-chart-calculator-worker.js +76 -83
- package/es/calculator/workers/calculator.worker.js +30 -33
- package/es/calculator/workers/card-calculator-worker.js +13 -19
- package/es/calculator/workers/combination-calculator-worker.js +46 -53
- package/es/calculator/workers/compare-bar-chart-calculator-worker.js +22 -29
- package/es/calculator/workers/completeness-calculator-worker.js +34 -41
- package/es/calculator/workers/dashboard-calculator-worker.js +18 -24
- package/es/calculator/workers/mirror-calculator-worker.js +22 -29
- package/es/calculator/workers/pivot-table-calculator-worker.js +77 -84
- package/es/calculator/workers/scatter-calculator-worker.js +20 -27
- package/es/calculator/workers/trend-calculator-worker.js +27 -34
- package/es/calculator/world-map-calculator.js +17 -24
- package/es/components/common-add-tool.js +5 -12
- package/es/components/dialog/chart-addition-edit-dialog.js +12 -20
- package/es/components/dialog/chart-addition-widgets/chart-selector.js +101 -108
- package/es/components/dialog/color-theme-dialog.js +15 -22
- package/es/components/dialog/delete-confirmation-dialog.js +11 -18
- package/es/components/dialog/enlarged-chart-dialog.js +20 -28
- package/es/components/dialog/new-table-dialog.js +16 -23
- package/es/components/dialog/new-view-dialog.js +14 -21
- package/es/components/dialog/rename-view-dialog.js +14 -22
- package/es/components/dialog/statistic-record-dialog/index.js +37 -45
- package/es/components/dialog/statistic-types-dialog/index.js +14 -22
- package/es/components/dialog/table-select-dialog.js +15 -23
- package/es/components/dropdown-menu/statistic-dropdown-menu.js +41 -49
- package/es/components/dtable-popover.js +12 -19
- package/es/components/dtable-search-input.js +13 -21
- package/es/components/dtable-select.js +15 -21
- package/es/components/icon.js +4 -11
- package/es/components/index.js +11 -76
- package/es/components/loading.js +3 -10
- package/es/components/modal-portal.js +5 -12
- package/es/components/popover/color-rules/color-rule.js +25 -33
- package/es/components/popover/color-rules/index.js +6 -14
- package/es/components/popover/color-rules/rule-filters/filter.js +27 -34
- package/es/components/popover/color-rules/rule-filters/index.js +17 -25
- package/es/components/popover/color-rules/rule-filters/number-input.js +9 -17
- package/es/components/popover/color-rules-popover.js +24 -32
- package/es/components/popover/color-selector-popover.js +10 -17
- package/es/components/seatable-radio/index.js +9 -16
- package/es/components/select/index.js +2 -9
- package/es/components/select/option-group.js +19 -27
- package/es/components/select/option.js +6 -14
- package/es/components/select/select.js +17 -25
- package/es/components/toast/alert.js +24 -31
- package/es/components/toast/index.js +3 -10
- package/es/components/toast/toast.js +12 -20
- package/es/components/toast/toastManager.js +9 -17
- package/es/components/toast/toaster.js +6 -14
- package/es/constants/color-rules.js +6 -12
- package/es/constants/dtable-select-style.js +4 -9
- package/es/constants/event-types.js +4 -10
- package/es/constants/index.js +67 -96
- package/es/constants/key-codes.js +0 -2
- package/es/constants/map.js +2 -8
- package/es/constants/model.js +20 -26
- package/es/constants/regions.js +3 -8
- package/es/constants/zIndexes.js +1 -7
- package/es/custom-g2.js +208 -236
- package/es/dashboard.js +50 -58
- package/es/desktop-dashboard.js +47 -55
- package/es/index.js +3 -6
- package/es/locale/index.js +10 -13
- package/es/locale/lang/de.js +1 -7
- package/es/locale/lang/en.js +1 -7
- package/es/locale/lang/fr.js +1 -7
- package/es/locale/lang/zh_CN.js +1 -7
- package/es/mobile-dashboard.js +38 -46
- package/es/model/bar-group.js +11 -19
- package/es/model/bar.js +10 -18
- package/es/model/base-model.js +2 -9
- package/es/model/basic-number-card.js +8 -16
- package/es/model/collaborators.js +2 -9
- package/es/model/combination.js +12 -20
- package/es/model/compare-bar.js +16 -24
- package/es/model/completeness-group.js +8 -16
- package/es/model/completeness.js +5 -13
- package/es/model/custom-bar.js +6 -14
- package/es/model/dashboard.js +6 -14
- package/es/model/generic-model.js +133 -141
- package/es/model/heat-map.js +11 -19
- package/es/model/horizontal-bar-group.js +10 -18
- package/es/model/horizontal-bar.js +10 -18
- package/es/model/index.js +53 -185
- package/es/model/map.js +15 -23
- package/es/model/mirror.js +13 -21
- package/es/model/pie.js +10 -18
- package/es/model/ring.js +11 -19
- package/es/model/scatter.js +6 -14
- package/es/model/statistic-dashboard.js +2 -9
- package/es/model/table.js +10 -18
- package/es/model/trend.js +12 -20
- package/es/model/world-map.js +13 -21
- package/es/service/chart-service.js +7 -14
- package/es/service/dashboard-service.js +34 -41
- package/es/service/map-json.js +8 -14
- package/es/stat-editor/chart-name-editor.js +8 -15
- package/es/stat-editor/index.js +16 -24
- package/es/stat-editor/stat-settings/advance-chart-settings/basic-number-card-settings.js +21 -29
- package/es/stat-editor/stat-settings/advance-chart-settings/combination-settings.js +49 -57
- package/es/stat-editor/stat-settings/advance-chart-settings/dashboard-chart-settings.js +23 -31
- package/es/stat-editor/stat-settings/advance-chart-settings/geo-granularity-settings.js +4 -11
- package/es/stat-editor/stat-settings/advance-chart-settings/heat-map-settings.js +19 -27
- package/es/stat-editor/stat-settings/advance-chart-settings/index.js +43 -51
- package/es/stat-editor/stat-settings/advance-chart-settings/map-settings.js +23 -31
- package/es/stat-editor/stat-settings/advance-chart-settings/mirror-settings.js +23 -31
- package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/combination-style-setting.js +37 -45
- package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/heat-map-settings.js +19 -27
- package/es/stat-editor/stat-settings/advance-chart-settings/style-setting/map-setting.js +26 -34
- package/es/stat-editor/stat-settings/advance-chart-settings/summary-settings.js +47 -55
- package/es/stat-editor/stat-settings/advance-chart-settings/trend-chart-settings.js +22 -30
- package/es/stat-editor/stat-settings/advance-chart-settings/world-map-settings.js +18 -26
- package/es/stat-editor/stat-settings/basic-chart-settings/advance-bar-chart-settings.js +27 -35
- package/es/stat-editor/stat-settings/basic-chart-settings/bar-settings.js +24 -32
- package/es/stat-editor/stat-settings/basic-chart-settings/completeness-chart-settings.js +33 -41
- package/es/stat-editor/stat-settings/basic-chart-settings/custom-bar-settings.js +22 -30
- package/es/stat-editor/stat-settings/basic-chart-settings/groupby-settings.js +27 -26
- package/es/stat-editor/stat-settings/basic-chart-settings/horizontal-axis-group-settings.js +46 -54
- package/es/stat-editor/stat-settings/basic-chart-settings/horizontal-bar-settings.js +23 -31
- package/es/stat-editor/stat-settings/basic-chart-settings/horizontal-group-chart-settings.js +26 -34
- package/es/stat-editor/stat-settings/basic-chart-settings/index.js +77 -85
- package/es/stat-editor/stat-settings/basic-chart-settings/pie-settings.js +21 -29
- package/es/stat-editor/stat-settings/basic-chart-settings/pivot-table-settings.js +73 -81
- package/es/stat-editor/stat-settings/basic-chart-settings/scatter-settings.js +16 -24
- package/es/stat-editor/stat-settings/basic-chart-settings/stack-item-settings.js +19 -27
- package/es/stat-editor/stat-settings/basic-chart-settings/stacks-settings.js +18 -26
- package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/bar-chart-style-setting.js +49 -57
- package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/completeness-style.js +17 -25
- package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/horizontal-bar-chart-style.js +47 -55
- package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/label-font-size-editor.js +11 -19
- package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/pie-chart-style-settings.js +45 -53
- package/es/stat-editor/stat-settings/basic-chart-settings/style-setting/time-compare-style.js +9 -17
- package/es/stat-editor/stat-settings/basic-chart-settings/summary-method-setting.js +20 -28
- package/es/stat-editor/stat-settings/basic-chart-settings/summary-settings.js +30 -38
- package/es/stat-editor/stat-settings/basic-chart-settings/time-comparison-settings.js +50 -58
- package/es/stat-editor/stat-settings/basic-chart-settings/timer-picker.js +17 -25
- package/es/stat-editor/stat-settings/basic-chart-settings/y-axis-group-settings.js +47 -55
- package/es/stat-editor/stat-settings/color-setting/color-group-selector.js +11 -19
- package/es/stat-editor/stat-settings/color-setting/color-picker.js +12 -19
- package/es/stat-editor/stat-settings/color-setting/color-use-type-selector.js +62 -70
- package/es/stat-editor/stat-settings/map/map-level.js +13 -20
- package/es/stat-editor/stat-settings/map/map-province-city.js +20 -27
- package/es/stat-editor/stat-settings/public-setting/axis-label-position-setting.js +11 -19
- package/es/stat-editor/stat-settings/public-setting/base-settings.js +20 -28
- package/es/stat-editor/stat-settings/public-setting/calender.js +22 -29
- package/es/stat-editor/stat-settings/public-setting/column-settings.js +6 -13
- package/es/stat-editor/stat-settings/public-setting/custom-title-setting.js +9 -16
- package/es/stat-editor/stat-settings/public-setting/data-sort-setting.js +13 -21
- package/es/stat-editor/stat-settings/public-setting/ind-toggle-setting.js +8 -15
- package/es/stat-editor/stat-settings/public-setting/min-max-setting.js +11 -19
- package/es/stat-editor/stat-settings/public-setting/numeric-summary-item.js +27 -35
- package/es/stat-editor/stat-settings/public-setting/toggle-setting.js +8 -15
- package/es/stat-editor/stat-settings/public-setting/type-settings/index.js +18 -26
- package/es/stat-list/chart-preview.js +20 -28
- package/es/stat-list/index.js +27 -35
- package/es/stat-view/area-chart.js +43 -50
- package/es/stat-view/bar-chart.js +47 -54
- package/es/stat-view/base-chart.js +24 -32
- package/es/stat-view/basic-number-card.js +19 -26
- package/es/stat-view/combination-chart.js +49 -56
- package/es/stat-view/compare-chart.js +39 -46
- package/es/stat-view/completeness-chart.js +28 -35
- package/es/stat-view/custom-bar.js +31 -38
- package/es/stat-view/dashboard-chart.js +15 -22
- package/es/stat-view/heat-map.js +43 -50
- package/es/stat-view/horizontal-bar-chart.js +51 -58
- package/es/stat-view/index.js +73 -80
- package/es/stat-view/line-chart.js +39 -46
- package/es/stat-view/map.js +33 -40
- package/es/stat-view/mirror.js +21 -28
- package/es/stat-view/pie-chart.js +29 -36
- package/es/stat-view/pivot-table/index.js +32 -39
- package/es/stat-view/pivot-table/one-dimension-table-no-numeric-columns.js +31 -39
- package/es/stat-view/pivot-table/one-dimension-table-with-numeric-columns.js +29 -37
- package/es/stat-view/pivot-table/pivot-table-display-name.js +46 -54
- package/es/stat-view/pivot-table/two-dimension-table.js +62 -70
- package/es/stat-view/ring-chart.js +38 -45
- package/es/stat-view/scatter-chart.js +30 -37
- package/es/stat-view/treemap-chart.js +37 -44
- package/es/stat-view/trend-chart.js +32 -39
- package/es/stat-view/world-map.js +33 -40
- package/es/tabs/index.js +32 -40
- package/es/tabs/tab.js +26 -34
- package/es/utils/basic-chart-utils.js +2 -9
- package/es/utils/cell-format.js +14 -22
- package/es/utils/cell-value.js +7 -14
- package/es/utils/collaborator.js +4 -13
- package/es/utils/color-utils.js +18 -29
- package/es/utils/column-utils.js +18 -29
- package/es/utils/column.js +4 -11
- package/es/utils/common-utils.js +41 -65
- package/es/utils/date-format.js +2 -8
- package/es/utils/export-table-utils.js +82 -91
- package/es/utils/index.js +11 -100
- package/es/utils/map.js +26 -36
- package/es/utils/model.js +6 -14
- package/es/utils/object.js +6 -15
- package/es/utils/pivot-table.js +16 -23
- package/es/utils/row-utils.js +23 -33
- package/es/utils/search.js +21 -29
- package/es/utils/sql-utils.js +65 -75
- package/es/utils/stat-utils.js +60 -66
- package/es/utils/trend-utils.js +32 -40
- package/package.json +1 -1
|
@@ -1,33 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
var _text = require("@antv/g2/esm/util/text");
|
|
14
|
-
var _dtableStore = require("dtable-store");
|
|
15
|
-
var _baseChart = _interopRequireDefault(require("./base-chart"));
|
|
16
|
-
var _customG = require("../custom-g2");
|
|
17
|
-
var _commonUtils = require("../utils/common-utils");
|
|
18
|
-
var _constants = require("../constants");
|
|
19
|
-
var _statisticChartModule = _interopRequireDefault(require("../assets/css/statistic-chart.module.css"));
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import DataSet from '@antv/data-set';
|
|
4
|
+
import intl from 'react-intl-universal';
|
|
5
|
+
import { each, pick } from '@antv/util';
|
|
6
|
+
import { getEllipsisText } from '@antv/g2/esm/util/text';
|
|
7
|
+
import { TableUtils } from 'dtable-store';
|
|
8
|
+
import BaseChart from './base-chart';
|
|
9
|
+
import { Chart, registerGeometryLabelLayout } from '../custom-g2';
|
|
10
|
+
import { formatPieChartData, getCurrentTheme } from '../utils/common-utils';
|
|
11
|
+
import { EMPTY_NAME, STATISTICS_COUNT_TYPE } from '../constants';
|
|
12
|
+
import chartStyles from '../assets/css/statistic-chart.module.css';
|
|
20
13
|
const propTypes = {
|
|
21
|
-
isPreview:
|
|
22
|
-
isEnlarge:
|
|
23
|
-
theme:
|
|
24
|
-
colorThemeName:
|
|
25
|
-
statItem:
|
|
26
|
-
chartCalculator:
|
|
27
|
-
getTableById:
|
|
28
|
-
toggleStatisticRecordsDialog:
|
|
14
|
+
isPreview: PropTypes.bool,
|
|
15
|
+
isEnlarge: PropTypes.bool,
|
|
16
|
+
theme: PropTypes.string,
|
|
17
|
+
colorThemeName: PropTypes.string,
|
|
18
|
+
statItem: PropTypes.object,
|
|
19
|
+
chartCalculator: PropTypes.object,
|
|
20
|
+
getTableById: PropTypes.func,
|
|
21
|
+
toggleStatisticRecordsDialog: PropTypes.func
|
|
29
22
|
};
|
|
30
|
-
class TreemapChart extends
|
|
23
|
+
class TreemapChart extends BaseChart {
|
|
31
24
|
constructor(props) {
|
|
32
25
|
super(props);
|
|
33
26
|
this.componentDidMount = async () => {
|
|
@@ -90,14 +83,14 @@ class TreemapChart extends _baseChart.default {
|
|
|
90
83
|
summary_column_key
|
|
91
84
|
} = statItem;
|
|
92
85
|
const table = getTableById(table_id);
|
|
93
|
-
const selectedNumericColumn =
|
|
86
|
+
const selectedNumericColumn = TableUtils.getTableColumnByKey(table, summary_column_key);
|
|
94
87
|
if (isPreview) {
|
|
95
|
-
this.chart = new
|
|
88
|
+
this.chart = new Chart({
|
|
96
89
|
container: this.container,
|
|
97
90
|
autoFit: true
|
|
98
91
|
});
|
|
99
92
|
} else {
|
|
100
|
-
this.chart = new
|
|
93
|
+
this.chart = new Chart({
|
|
101
94
|
container: this.container,
|
|
102
95
|
height: 400,
|
|
103
96
|
width: 700
|
|
@@ -106,20 +99,20 @@ class TreemapChart extends _baseChart.default {
|
|
|
106
99
|
this.chart.on('element:click', e => {
|
|
107
100
|
this.props.toggleStatisticRecordsDialog(e.data.data, statItem);
|
|
108
101
|
});
|
|
109
|
-
const currentTheme =
|
|
110
|
-
const newData =
|
|
102
|
+
const currentTheme = getCurrentTheme(colorThemeName);
|
|
103
|
+
const newData = formatPieChartData(data, statItem, table, currentTheme);
|
|
111
104
|
const colorSet = newData.colorSet;
|
|
112
105
|
const {
|
|
113
106
|
DataView
|
|
114
|
-
} =
|
|
107
|
+
} = DataSet;
|
|
115
108
|
const dv = new DataView();
|
|
116
109
|
const fullData = {
|
|
117
110
|
name: 'root',
|
|
118
111
|
children: newData.map(item => {
|
|
119
112
|
let name = item.name;
|
|
120
|
-
item.name = name || name === 0 ? name :
|
|
113
|
+
item.name = name || name === 0 ? name : intl.get(EMPTY_NAME);
|
|
121
114
|
if (name === 'Others') {
|
|
122
|
-
item.name =
|
|
115
|
+
item.name = intl.get('Others');
|
|
123
116
|
}
|
|
124
117
|
return item;
|
|
125
118
|
})
|
|
@@ -174,7 +167,7 @@ class TreemapChart extends _baseChart.default {
|
|
|
174
167
|
chart.polygon().position('x*y').color('name', colorSet).tooltip('name*formatted_value*percent', (name, value, percent) => {
|
|
175
168
|
return {
|
|
176
169
|
name,
|
|
177
|
-
info: summary_type ===
|
|
170
|
+
info: summary_type === STATISTICS_COUNT_TYPE.COUNT ? "".concat(value) : "".concat(selectedNumericColumn.name, ": ").concat(value, " (").concat(percent, ")")
|
|
178
171
|
};
|
|
179
172
|
}).style({
|
|
180
173
|
lineWidth: 1,
|
|
@@ -203,22 +196,22 @@ class TreemapChart extends _baseChart.default {
|
|
|
203
196
|
|
|
204
197
|
// customize label layout: show ellipsis for long labels
|
|
205
198
|
function limitInShape(items, labels, shapes, region) {
|
|
206
|
-
|
|
199
|
+
each(labels, (label, index) => {
|
|
207
200
|
const labelBBox = label.getCanvasBBox();
|
|
208
201
|
const shapeBBox = shapes[index].getBBox();
|
|
209
202
|
if (labelBBox.minX < shapeBBox.minX || labelBBox.minY < shapeBBox.minY || labelBBox.maxX > shapeBBox.maxX || labelBBox.maxY > shapeBBox.maxY) {
|
|
210
203
|
const translateX = labelBBox.width - shapeBBox.width + 20;
|
|
211
204
|
const textShapes = label.findAll(shape => shape.get('type') === 'text');
|
|
212
205
|
textShapes.forEach(textShape => {
|
|
213
|
-
const style =
|
|
206
|
+
const style = pick(textShape.attr(), ['fontSize', 'fontFamily', 'fontWeight', 'fontStyle', 'fontVariant']);
|
|
214
207
|
const textBox = textShape.getCanvasBBox();
|
|
215
|
-
const text =
|
|
208
|
+
const text = getEllipsisText(textShape.attr('text'), textBox.width - Math.abs(translateX), style);
|
|
216
209
|
textShape.attr('text', text);
|
|
217
210
|
});
|
|
218
211
|
}
|
|
219
212
|
});
|
|
220
213
|
}
|
|
221
|
-
|
|
214
|
+
registerGeometryLabelLayout('custom-limit-in-shape', limitInShape);
|
|
222
215
|
}
|
|
223
216
|
shouldComponentUpdate(nextProps, nextState) {
|
|
224
217
|
const {
|
|
@@ -242,11 +235,11 @@ class TreemapChart extends _baseChart.default {
|
|
|
242
235
|
const {
|
|
243
236
|
isCalculatingData
|
|
244
237
|
} = this.state;
|
|
245
|
-
return /*#__PURE__*/
|
|
238
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, isCalculatingData && this.renderLoading(), /*#__PURE__*/React.createElement("div", {
|
|
246
239
|
ref: ref => this.container = ref,
|
|
247
|
-
className: "statistic-chart-container ".concat(
|
|
240
|
+
className: "statistic-chart-container ".concat(chartStyles['statistic-treemap-chart-container'])
|
|
248
241
|
}));
|
|
249
242
|
}
|
|
250
243
|
}
|
|
251
244
|
TreemapChart.propTypes = propTypes;
|
|
252
|
-
|
|
245
|
+
export default TreemapChart;
|
|
@@ -1,24 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
-
var _reactIntlUniversal = _interopRequireDefault(require("react-intl-universal"));
|
|
11
|
-
var _dtableStore = require("dtable-store");
|
|
12
|
-
var _baseChart = _interopRequireDefault(require("./base-chart"));
|
|
13
|
-
var _customG = require("../custom-g2");
|
|
14
|
-
var _constants = require("../constants");
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import intl from 'react-intl-universal';
|
|
4
|
+
import { TableUtils } from 'dtable-store';
|
|
5
|
+
import BaseChart from './base-chart';
|
|
6
|
+
import { Chart } from '../custom-g2';
|
|
7
|
+
import { DATE_GRANULARITY, EMPTY_NAME, STATISTICS_COUNT_TYPE, SUMMARY_METHOD_MAP } from '../constants';
|
|
15
8
|
const propTypes = {
|
|
16
|
-
isPreview:
|
|
17
|
-
statItem:
|
|
18
|
-
chartCalculator:
|
|
19
|
-
getTableById:
|
|
9
|
+
isPreview: PropTypes.bool,
|
|
10
|
+
statItem: PropTypes.object,
|
|
11
|
+
chartCalculator: PropTypes.object,
|
|
12
|
+
getTableById: PropTypes.func
|
|
20
13
|
};
|
|
21
|
-
class BasicNumericCard extends
|
|
14
|
+
class BasicNumericCard extends BaseChart {
|
|
22
15
|
constructor(props) {
|
|
23
16
|
super(props);
|
|
24
17
|
this.componentDidMount = async () => {
|
|
@@ -74,12 +67,12 @@ class BasicNumericCard extends _baseChart.default {
|
|
|
74
67
|
statItem
|
|
75
68
|
} = this.props;
|
|
76
69
|
if (isPreview) {
|
|
77
|
-
this.chart = new
|
|
70
|
+
this.chart = new Chart({
|
|
78
71
|
container: this.container,
|
|
79
72
|
autoFit: true
|
|
80
73
|
});
|
|
81
74
|
} else {
|
|
82
|
-
this.chart = new
|
|
75
|
+
this.chart = new Chart({
|
|
83
76
|
container: this.container,
|
|
84
77
|
autoFit: true,
|
|
85
78
|
height: 400,
|
|
@@ -90,7 +83,7 @@ class BasicNumericCard extends _baseChart.default {
|
|
|
90
83
|
summary_method
|
|
91
84
|
} = statItem;
|
|
92
85
|
const latest = data && data.latest;
|
|
93
|
-
const content = summary_method ===
|
|
86
|
+
const content = summary_method === SUMMARY_METHOD_MAP.Distinct_values ? latest : this.formatData(latest);
|
|
94
87
|
const fontSize = this.getFontSize(content);
|
|
95
88
|
let labelFontSize = fontSize - 32;
|
|
96
89
|
const themeColors = this.getThemeColors();
|
|
@@ -106,15 +99,15 @@ class BasicNumericCard extends _baseChart.default {
|
|
|
106
99
|
getTableById,
|
|
107
100
|
statItem
|
|
108
101
|
} = this.props;
|
|
109
|
-
if (typeof data !== 'number') return
|
|
102
|
+
if (typeof data !== 'number') return intl.get(EMPTY_NAME);
|
|
110
103
|
const {
|
|
111
104
|
table_id,
|
|
112
105
|
summary_type,
|
|
113
106
|
summary_column
|
|
114
107
|
} = statItem;
|
|
115
|
-
if (summary_type !==
|
|
108
|
+
if (summary_type !== STATISTICS_COUNT_TYPE.COUNT) {
|
|
116
109
|
const table = getTableById(table_id);
|
|
117
|
-
const selectedColumn =
|
|
110
|
+
const selectedColumn = TableUtils.getTableColumnByKey(table, summary_column);
|
|
118
111
|
return this.getNumberDisplayString(data, selectedColumn.data || {});
|
|
119
112
|
}
|
|
120
113
|
let string = data + '';
|
|
@@ -174,20 +167,20 @@ class BasicNumericCard extends _baseChart.default {
|
|
|
174
167
|
date_granularity
|
|
175
168
|
} = statItem;
|
|
176
169
|
let conjunctions = '';
|
|
177
|
-
if (date_granularity ===
|
|
178
|
-
conjunctions =
|
|
179
|
-
} else if (date_granularity ===
|
|
180
|
-
conjunctions =
|
|
181
|
-
} else if (date_granularity ===
|
|
182
|
-
conjunctions =
|
|
183
|
-
} else if (date_granularity ===
|
|
184
|
-
conjunctions =
|
|
170
|
+
if (date_granularity === DATE_GRANULARITY.YEAR) {
|
|
171
|
+
conjunctions = intl.get('The_year_before_last');
|
|
172
|
+
} else if (date_granularity === DATE_GRANULARITY.QUARTER) {
|
|
173
|
+
conjunctions = intl.get('The_quarter_before_last');
|
|
174
|
+
} else if (date_granularity === DATE_GRANULARITY.MONTH) {
|
|
175
|
+
conjunctions = intl.get('The_month_before_last');
|
|
176
|
+
} else if (date_granularity === DATE_GRANULARITY.WEEK) {
|
|
177
|
+
conjunctions = intl.get('The_week_before_last');
|
|
185
178
|
} else if (date_granularity === 'days_7') {
|
|
186
|
-
conjunctions =
|
|
179
|
+
conjunctions = intl.get('Previous_7_days');
|
|
187
180
|
} else if (date_granularity === 'days_30') {
|
|
188
|
-
conjunctions =
|
|
181
|
+
conjunctions = intl.get('Previous_30_days');
|
|
189
182
|
} else {
|
|
190
|
-
conjunctions =
|
|
183
|
+
conjunctions = intl.get('The_day_before_yesterday');
|
|
191
184
|
}
|
|
192
185
|
const {
|
|
193
186
|
result,
|
|
@@ -202,7 +195,7 @@ class BasicNumericCard extends _baseChart.default {
|
|
|
202
195
|
}
|
|
203
196
|
let resultText = "".concat(Number.parseFloat(result * 100).toFixed(2), "%•").concat(conjunctions).concat(previous);
|
|
204
197
|
if (!previous) {
|
|
205
|
-
resultText =
|
|
198
|
+
resultText = intl.get('Can_not_compare_with_var', {
|
|
206
199
|
var: conjunctions.toLowerCase()
|
|
207
200
|
});
|
|
208
201
|
}
|
|
@@ -239,11 +232,11 @@ class BasicNumericCard extends _baseChart.default {
|
|
|
239
232
|
const {
|
|
240
233
|
isCalculatingData
|
|
241
234
|
} = this.state;
|
|
242
|
-
return /*#__PURE__*/
|
|
235
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, isCalculatingData && this.renderLoading(), /*#__PURE__*/React.createElement("div", {
|
|
243
236
|
ref: ref => this.container = ref,
|
|
244
237
|
className: "statistic-chart-container statistic-number-card"
|
|
245
238
|
}));
|
|
246
239
|
}
|
|
247
240
|
}
|
|
248
241
|
BasicNumericCard.propTypes = propTypes;
|
|
249
|
-
|
|
242
|
+
export default BasicNumericCard;
|
|
@@ -1,22 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
var _index = _interopRequireDefault(require("@antv/data-set/lib/index"));
|
|
11
|
-
var _reactIntlUniversal = _interopRequireDefault(require("react-intl-universal"));
|
|
12
|
-
var _dtableStore = require("dtable-store");
|
|
13
|
-
var _baseChart = _interopRequireDefault(require("./base-chart"));
|
|
14
|
-
var _customG = require("../custom-g2");
|
|
15
|
-
var _constants = require("../constants");
|
|
16
|
-
var _map = require("../constants/map");
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import DataSet from '@antv/data-set/lib/index';
|
|
4
|
+
import intl from 'react-intl-universal';
|
|
5
|
+
import { TableUtils } from 'dtable-store';
|
|
6
|
+
import BaseChart from './base-chart';
|
|
7
|
+
import { Chart } from '../custom-g2';
|
|
8
|
+
import { COLOR_OPTIONS, DEFAULT_NUMBER_FORMAT_OBJECT, STAT_TYPE, SUMMARY_TYPE, TITLE_AMOUNT } from '../constants';
|
|
9
|
+
import { MAP_LEVEL } from '../constants/map';
|
|
17
10
|
const WIDTH = 798;
|
|
18
11
|
const HEIGHT = 394;
|
|
19
|
-
class WorldMap extends
|
|
12
|
+
class WorldMap extends BaseChart {
|
|
20
13
|
constructor(props) {
|
|
21
14
|
super(props);
|
|
22
15
|
this.rerenderChart = () => {
|
|
@@ -53,13 +46,13 @@ class WorldMap extends _baseChart.default {
|
|
|
53
46
|
value: value || 0,
|
|
54
47
|
formatted_value: item.formatted_value
|
|
55
48
|
});
|
|
56
|
-
if (type ===
|
|
49
|
+
if (type === STAT_TYPE.WORLD_MAP_BUBBLE) {
|
|
57
50
|
sum += item.value;
|
|
58
51
|
}
|
|
59
52
|
}
|
|
60
53
|
}
|
|
61
54
|
});
|
|
62
|
-
if (type ===
|
|
55
|
+
if (type === STAT_TYPE.WORLD_MAP_BUBBLE) {
|
|
63
56
|
statisticNewData.sum = sum;
|
|
64
57
|
}
|
|
65
58
|
return statisticNewData;
|
|
@@ -82,16 +75,16 @@ class WorldMap extends _baseChart.default {
|
|
|
82
75
|
summary_method,
|
|
83
76
|
summary_column
|
|
84
77
|
} = this.props.statItem;
|
|
85
|
-
const currentColorOption =
|
|
78
|
+
const currentColorOption = COLOR_OPTIONS.filter(item => item.name === data_color)[0] || COLOR_OPTIONS[0];
|
|
86
79
|
const {
|
|
87
80
|
exampleColors,
|
|
88
81
|
highlightedBorderColor
|
|
89
82
|
} = currentColorOption;
|
|
90
|
-
let summaryColumnData =
|
|
91
|
-
if (summary_type ===
|
|
83
|
+
let summaryColumnData = DEFAULT_NUMBER_FORMAT_OBJECT;
|
|
84
|
+
if (summary_type === SUMMARY_TYPE.ADVANCED) {
|
|
92
85
|
const table = getTableById(table_id);
|
|
93
|
-
const summaryColumn =
|
|
94
|
-
summaryColumnData = summaryColumn.data ||
|
|
86
|
+
const summaryColumn = TableUtils.getTableColumnByKey(table, summary_column) || {};
|
|
87
|
+
summaryColumnData = summaryColumn.data || DEFAULT_NUMBER_FORMAT_OBJECT;
|
|
95
88
|
}
|
|
96
89
|
this.statisticView = this.chart.createView();
|
|
97
90
|
this.statisticView.data(userDataView.rows);
|
|
@@ -156,11 +149,11 @@ class WorldMap extends _baseChart.default {
|
|
|
156
149
|
summary_method,
|
|
157
150
|
summary_column
|
|
158
151
|
} = this.props.statItem;
|
|
159
|
-
let summaryColumnData =
|
|
160
|
-
if (summary_type ===
|
|
152
|
+
let summaryColumnData = DEFAULT_NUMBER_FORMAT_OBJECT;
|
|
153
|
+
if (summary_type === SUMMARY_TYPE.ADVANCED) {
|
|
161
154
|
const table = getTableById(table_id);
|
|
162
|
-
const summaryColumn =
|
|
163
|
-
summaryColumnData = summaryColumn.data ||
|
|
155
|
+
const summaryColumn = TableUtils.getTableColumnByKey(table, summary_column) || {};
|
|
156
|
+
summaryColumnData = summaryColumn.data || DEFAULT_NUMBER_FORMAT_OBJECT;
|
|
164
157
|
}
|
|
165
158
|
this.statisticView = this.chart.createView();
|
|
166
159
|
this.statisticView.data(userDv.rows);
|
|
@@ -269,7 +262,7 @@ class WorldMap extends _baseChart.default {
|
|
|
269
262
|
} = this.getSize();
|
|
270
263
|
const horizontalPadding = (containerWidth - mapWidth) / 4;
|
|
271
264
|
const leftPadding = horizontalPadding < 20 ? 20 : horizontalPadding;
|
|
272
|
-
this.chart = new
|
|
265
|
+
this.chart = new Chart({
|
|
273
266
|
container: this.container,
|
|
274
267
|
width: containerWidth,
|
|
275
268
|
height: containerHeight,
|
|
@@ -292,7 +285,7 @@ class WorldMap extends _baseChart.default {
|
|
|
292
285
|
showMarkers: false,
|
|
293
286
|
shared: true,
|
|
294
287
|
containerTpl: '<div class="g2-tooltip"><div class="g2-tooltip-list"></div></div>',
|
|
295
|
-
itemTpl: "<div class=\"g2-tooltip-content\"><div class=\"tooltip-name\">{name}<div><div class=\"tooltip-item\">".concat(
|
|
288
|
+
itemTpl: "<div class=\"g2-tooltip-content\"><div class=\"tooltip-name\">{name}<div><div class=\"tooltip-item\">".concat(intl.get(TITLE_AMOUNT), " : {value}<div></div>"),
|
|
296
289
|
domStyles: {
|
|
297
290
|
'g2-tooltip': this.getDefaultChartStyleByKey('g2-tooltip'),
|
|
298
291
|
'tooltip-item': this.getDefaultChartStyleByKey('tooltip-item')
|
|
@@ -307,7 +300,7 @@ class WorldMap extends _baseChart.default {
|
|
|
307
300
|
}
|
|
308
301
|
});
|
|
309
302
|
this.chart.axis(false);
|
|
310
|
-
this.dataSet = new
|
|
303
|
+
this.dataSet = new DataSet();
|
|
311
304
|
|
|
312
305
|
// transform map data
|
|
313
306
|
const mapData = this.dataSet.createView('mapDataModel').source(geolocation, {
|
|
@@ -346,7 +339,7 @@ class WorldMap extends _baseChart.default {
|
|
|
346
339
|
chartCalculator
|
|
347
340
|
} = this.props;
|
|
348
341
|
this.props.queryMapJson({
|
|
349
|
-
map_level:
|
|
342
|
+
map_level: MAP_LEVEL.WORLD
|
|
350
343
|
}, mapJson => {
|
|
351
344
|
this.setState({
|
|
352
345
|
isDataLoaded: true
|
|
@@ -414,18 +407,18 @@ class WorldMap extends _baseChart.default {
|
|
|
414
407
|
isDataLoaded,
|
|
415
408
|
isCalculatingData
|
|
416
409
|
} = this.state;
|
|
417
|
-
return /*#__PURE__*/
|
|
410
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, (!isDataLoaded || isCalculatingData) && this.renderLoading(), /*#__PURE__*/React.createElement("div", {
|
|
418
411
|
ref: ref => this.container = ref,
|
|
419
412
|
className: "statistic-chart-container map d-flex justify-content-around align-items-center w-100 h-100"
|
|
420
413
|
}));
|
|
421
414
|
}
|
|
422
415
|
}
|
|
423
416
|
WorldMap.propTypes = {
|
|
424
|
-
isPreview:
|
|
425
|
-
statItem:
|
|
426
|
-
chartCalculator:
|
|
427
|
-
getTableById:
|
|
428
|
-
queryMapJson:
|
|
429
|
-
toggleStatisticRecordsDialog:
|
|
417
|
+
isPreview: PropTypes.bool,
|
|
418
|
+
statItem: PropTypes.object,
|
|
419
|
+
chartCalculator: PropTypes.object,
|
|
420
|
+
getTableById: PropTypes.func,
|
|
421
|
+
queryMapJson: PropTypes.func.isRequired,
|
|
422
|
+
toggleStatisticRecordsDialog: PropTypes.func
|
|
430
423
|
};
|
|
431
|
-
|
|
424
|
+
export default WorldMap;
|
package/es/tabs/index.js
CHANGED
|
@@ -1,23 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
-
var _reactIntlUniversal = _interopRequireDefault(require("react-intl-universal"));
|
|
11
|
-
var _newViewDialog = _interopRequireDefault(require("../components/dialog/new-view-dialog"));
|
|
12
|
-
var _renameViewDialog = _interopRequireDefault(require("../components/dialog/rename-view-dialog"));
|
|
13
|
-
var _deleteConfirmationDialog = _interopRequireDefault(require("../components/dialog/delete-confirmation-dialog"));
|
|
14
|
-
var _tab = _interopRequireDefault(require("./tab"));
|
|
15
|
-
var _statisticTabsModule = _interopRequireDefault(require("./statistic-tabs.module.css"));
|
|
1
|
+
import React, { Component } from 'react';
|
|
2
|
+
import intl from 'react-intl-universal';
|
|
3
|
+
import NewViewDialog from '../components/dialog/new-view-dialog';
|
|
4
|
+
import RenameViewDialog from '../components/dialog/rename-view-dialog';
|
|
5
|
+
import DeleteConfirmationDialog from '../components/dialog/delete-confirmation-dialog';
|
|
6
|
+
import Tab from './tab';
|
|
7
|
+
import styles from './statistic-tabs.module.css';
|
|
16
8
|
const SCROLL_TYPE = {
|
|
17
9
|
PREV: 'prev',
|
|
18
10
|
NEXT: 'next'
|
|
19
11
|
};
|
|
20
|
-
class DashboardTabs extends
|
|
12
|
+
class DashboardTabs extends Component {
|
|
21
13
|
constructor(_props) {
|
|
22
14
|
super(_props);
|
|
23
15
|
this.initSelectedViewScroll = props => {
|
|
@@ -183,7 +175,7 @@ class DashboardTabs extends _react.Component {
|
|
|
183
175
|
}
|
|
184
176
|
const canDelete = statistics.length > 1;
|
|
185
177
|
return statistics.map((item, index) => {
|
|
186
|
-
return /*#__PURE__*/
|
|
178
|
+
return /*#__PURE__*/React.createElement(Tab, {
|
|
187
179
|
key: "statistic-view-".concat(index),
|
|
188
180
|
item: item,
|
|
189
181
|
theme: theme,
|
|
@@ -232,39 +224,39 @@ class DashboardTabs extends _react.Component {
|
|
|
232
224
|
statistics,
|
|
233
225
|
selectedDashboardIdx
|
|
234
226
|
} = this.props;
|
|
235
|
-
return /*#__PURE__*/
|
|
236
|
-
className:
|
|
237
|
-
}, /*#__PURE__*/
|
|
238
|
-
className: "".concat(
|
|
227
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
228
|
+
className: styles['tabs-container']
|
|
229
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
230
|
+
className: "".concat(styles['views-tabs-scroll'], " d-flex pr-1"),
|
|
239
231
|
ref: ref => this.viewsTabsScroll = ref,
|
|
240
232
|
onScroll: this.onViewsScroll
|
|
241
|
-
}, this.renderTabs()), (canScrollPrev || canScrollNext) && !isMobile && /*#__PURE__*/
|
|
242
|
-
className:
|
|
243
|
-
}, /*#__PURE__*/
|
|
244
|
-
className: "".concat(
|
|
233
|
+
}, this.renderTabs()), (canScrollPrev || canScrollNext) && !isMobile && /*#__PURE__*/React.createElement("div", {
|
|
234
|
+
className: styles['views-scroll-control']
|
|
235
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
236
|
+
className: "".concat(styles['scroll-control-btn'], " ").concat(styles['scroll-prev'], " ").concat(canScrollPrev && styles['scroll-active']),
|
|
245
237
|
onClick: this.onScrollWithControl.bind(this, SCROLL_TYPE.PREV)
|
|
246
|
-
}, /*#__PURE__*/
|
|
247
|
-
className: "dtable-font dtable-icon-left-slide ".concat(
|
|
248
|
-
})), /*#__PURE__*/
|
|
249
|
-
className: "".concat(
|
|
238
|
+
}, /*#__PURE__*/React.createElement("i", {
|
|
239
|
+
className: "dtable-font dtable-icon-left-slide ".concat(styles['btn-scroll-icon'])
|
|
240
|
+
})), /*#__PURE__*/React.createElement("span", {
|
|
241
|
+
className: "".concat(styles['scroll-control-btn'], " ").concat(styles['scroll-next'], " ").concat(canScrollNext && styles['scroll-active']),
|
|
250
242
|
onClick: this.onScrollWithControl.bind(this, SCROLL_TYPE.NEXT)
|
|
251
|
-
}, /*#__PURE__*/
|
|
252
|
-
className: "dtable-font dtable-icon-right-slide ".concat(
|
|
253
|
-
}))), !isMobile && /*#__PURE__*/
|
|
254
|
-
className:
|
|
243
|
+
}, /*#__PURE__*/React.createElement("i", {
|
|
244
|
+
className: "dtable-font dtable-icon-right-slide ".concat(styles['btn-scroll-icon'])
|
|
245
|
+
}))), !isMobile && /*#__PURE__*/React.createElement("div", {
|
|
246
|
+
className: styles['btn-add-view'],
|
|
255
247
|
key: 'btn-add-view',
|
|
256
248
|
onClick: this.onNewViewToggle
|
|
257
|
-
}, /*#__PURE__*/
|
|
258
|
-
className: "".concat(
|
|
259
|
-
})), isShowNewViewDialog && /*#__PURE__*/
|
|
249
|
+
}, /*#__PURE__*/React.createElement("i", {
|
|
250
|
+
className: "".concat(styles['add-map-view-icon'], " dtable-font dtable-icon-add-table")
|
|
251
|
+
})), isShowNewViewDialog && /*#__PURE__*/React.createElement(NewViewDialog, {
|
|
260
252
|
onNewViewConfirm: this.onAddDashboard,
|
|
261
253
|
onNewViewCancel: this.onNewViewCancel
|
|
262
|
-
}), isShowRenameViewDialog && /*#__PURE__*/
|
|
254
|
+
}), isShowRenameViewDialog && /*#__PURE__*/React.createElement(RenameViewDialog, {
|
|
263
255
|
viewName: statistics[selectedDashboardIdx].name,
|
|
264
256
|
onRenameDashboard: this.props.renameDashboard,
|
|
265
257
|
hideRenameViewDialog: this.hideRenameViewDialog
|
|
266
|
-
}), isShowDeleteViewDialog && /*#__PURE__*/
|
|
267
|
-
header:
|
|
258
|
+
}), isShowDeleteViewDialog && /*#__PURE__*/React.createElement(DeleteConfirmationDialog, {
|
|
259
|
+
header: intl.get('Delete_dashboard'),
|
|
268
260
|
name: statistics[selectedDashboardIdx].name,
|
|
269
261
|
onToggle: this.onToggleDeleteView,
|
|
270
262
|
onDelete: this.onDeleteDashBoard
|
|
@@ -274,4 +266,4 @@ class DashboardTabs extends _react.Component {
|
|
|
274
266
|
DashboardTabs.defaultProps = {
|
|
275
267
|
isMobile: false
|
|
276
268
|
};
|
|
277
|
-
|
|
269
|
+
export default DashboardTabs;
|
package/es/tabs/tab.js
CHANGED
|
@@ -1,18 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
-
var _reactIntlUniversal = _interopRequireDefault(require("react-intl-universal"));
|
|
11
|
-
var _components = require("../components");
|
|
12
|
-
var _utils = require("../utils");
|
|
13
|
-
var _constants = require("../constants");
|
|
14
|
-
var _statisticTabsModule = _interopRequireDefault(require("./statistic-tabs.module.css"));
|
|
15
|
-
class DashBoardTab extends _react.Component {
|
|
1
|
+
import React, { Component } from 'react';
|
|
2
|
+
import intl from 'react-intl-universal';
|
|
3
|
+
import { ModalPortal } from '../components';
|
|
4
|
+
import { isMobile } from '../utils';
|
|
5
|
+
import { THEME_NAME_MAP } from '../constants';
|
|
6
|
+
import styles from './statistic-tabs.module.css';
|
|
7
|
+
class DashBoardTab extends Component {
|
|
16
8
|
constructor(props) {
|
|
17
9
|
super(props);
|
|
18
10
|
this.onHideViewDropdown = () => {
|
|
@@ -114,7 +106,7 @@ class DashBoardTab extends _react.Component {
|
|
|
114
106
|
dropdownMenuPosition,
|
|
115
107
|
dropRelativePosition
|
|
116
108
|
} = this.state;
|
|
117
|
-
return /*#__PURE__*/
|
|
109
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
118
110
|
ref: ref => this.itemRef = ref,
|
|
119
111
|
draggable: "true",
|
|
120
112
|
onDragStart: this.onDragStart,
|
|
@@ -122,40 +114,40 @@ class DashBoardTab extends _react.Component {
|
|
|
122
114
|
onDragOver: this.onDragOver,
|
|
123
115
|
onDragLeave: this.onDragLeave,
|
|
124
116
|
onDrop: this.onDrop,
|
|
125
|
-
className: "\n ".concat(
|
|
126
|
-
}, /*#__PURE__*/
|
|
117
|
+
className: "\n ".concat(styles['dashboard-tab'], "\n ").concat(dropRelativePosition === 'before' ? styles['dashboard-tab-can-drop-before'] : '', "\n ").concat(dropRelativePosition === 'after' ? styles['dashboard-tab-can-drop-after'] : '', "\n ")
|
|
118
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
127
119
|
ref: this.props.setViewItem,
|
|
128
120
|
onClick: this.props.onSelectDashboard,
|
|
129
|
-
className: "".concat(
|
|
130
|
-
}, /*#__PURE__*/
|
|
121
|
+
className: "".concat(styles['dashboard-tab-content'], " ").concat(selected ? isMobile ? styles['tab-item-active-mobile'] : styles['tab-item-active'] : '')
|
|
122
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
131
123
|
className: "view-name"
|
|
132
|
-
}, item.name), selected && !
|
|
124
|
+
}, item.name), selected && !isMobile && /*#__PURE__*/React.createElement("div", {
|
|
133
125
|
onClick: this.onDropdownToggle,
|
|
134
126
|
ref: ref => this.btnViewDropdown = ref,
|
|
135
|
-
className: "".concat(
|
|
136
|
-
}, /*#__PURE__*/
|
|
137
|
-
className: "".concat(
|
|
138
|
-
}), isShowViewDropdown && /*#__PURE__*/
|
|
139
|
-
className: "".concat(theme ===
|
|
127
|
+
className: "".concat(styles['btn-view-dropdown'])
|
|
128
|
+
}, /*#__PURE__*/React.createElement("i", {
|
|
129
|
+
className: "".concat(styles['icon'], " dtable-font dtable-icon-drop-down")
|
|
130
|
+
}), isShowViewDropdown && /*#__PURE__*/React.createElement(ModalPortal, null, /*#__PURE__*/React.createElement("div", {
|
|
131
|
+
className: "".concat(theme === THEME_NAME_MAP.DARK ? 'statistic-tabs-dropdown-dark' : 'statistic-tabs-dropdown-light', " statistic-dropdown-menu dropdown-menu large show"),
|
|
140
132
|
style: {
|
|
141
133
|
...dropdownMenuPosition,
|
|
142
134
|
zIndex: 1500
|
|
143
135
|
}
|
|
144
|
-
}, /*#__PURE__*/
|
|
136
|
+
}, /*#__PURE__*/React.createElement("button", {
|
|
145
137
|
className: "dropdown-item",
|
|
146
138
|
onClick: this.props.onToggleRenameView
|
|
147
|
-
}, /*#__PURE__*/
|
|
139
|
+
}, /*#__PURE__*/React.createElement("i", {
|
|
148
140
|
className: "item-icon dtable-font dtable-icon-rename"
|
|
149
|
-
}), /*#__PURE__*/
|
|
141
|
+
}), /*#__PURE__*/React.createElement("span", {
|
|
150
142
|
className: "item-text"
|
|
151
|
-
},
|
|
143
|
+
}, intl.get('Rename'))), canDelete && /*#__PURE__*/React.createElement("button", {
|
|
152
144
|
className: "dropdown-item",
|
|
153
145
|
onClick: this.props.onDeleteDashboard
|
|
154
|
-
}, /*#__PURE__*/
|
|
146
|
+
}, /*#__PURE__*/React.createElement("i", {
|
|
155
147
|
className: "item-icon dtable-font dtable-icon-delete"
|
|
156
|
-
}), /*#__PURE__*/
|
|
148
|
+
}), /*#__PURE__*/React.createElement("span", {
|
|
157
149
|
className: "item-text"
|
|
158
|
-
},
|
|
150
|
+
}, intl.get('Delete'))))))));
|
|
159
151
|
}
|
|
160
152
|
}
|
|
161
|
-
|
|
153
|
+
export default DashBoardTab;
|