sea-chart 1.1.69 → 1.1.71
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/dist/components/cell-factory/SimpleCellFormatter.js +1 -1
- package/dist/components/cell-factory/link-content.js +4 -4
- package/dist/components/color-picker/index.js +1 -1
- package/dist/components/color-popover/color-rules/color-rule.js +1 -1
- package/dist/components/color-popover/color-rules/index.js +1 -1
- package/dist/components/color-popover/color-rules-popover.js +6 -6
- package/dist/components/color-popover/color-selector-popover.js +2 -2
- package/dist/components/color-setting/color-group-selector.js +1 -1
- package/dist/components/common-add-tool/index.js +2 -2
- package/dist/components/data-process-setter/hide-column-setter.js +1 -1
- package/dist/components/data-process-setter/sort-setter.js +2 -2
- package/dist/components/drill-down-settings/drill-down-fields-popover/index.js +4 -4
- package/dist/components/icon/index.js +2 -2
- package/dist/components/number-input/index.js +7 -13
- package/dist/components/popover/hide-column-popover/hide-column-popover-widgets/hide-column-item.js +1 -1
- package/dist/components/popover/hide-column-popover/hide-column-popover.js +1 -1
- package/dist/components/popover/sort-popover/sort-popover.js +1 -1
- package/dist/components/row-card/row-card-header-cell.js +2 -2
- package/dist/components/row-card/row-card-header.js +2 -2
- package/dist/components/row-card/row-card-item.js +2 -2
- package/dist/components/row-card/row-card.js +2 -2
- package/dist/components/statistic-record-dialog/index.js +1 -1
- package/dist/components/types-dialog/index.js +7 -7
- package/dist/context.js +2 -2
- package/dist/editor/index.js +5 -5
- package/dist/services/map-json.js +4 -4
- package/dist/settings/advance-bar-settings/data-settings.js +2 -6
- package/dist/settings/advance-bar-settings/style-settings.js +2 -6
- package/dist/settings/bar-settings/data-settings.js +2 -6
- package/dist/settings/bar-settings/style-settings.js +2 -6
- package/dist/settings/basic-number-card/style-settings.js +1 -1
- package/dist/settings/combination-settings/data-settings.js +1 -5
- package/dist/settings/combination-settings/style-settings.js +1 -4
- package/dist/settings/index.js +1 -2
- package/dist/settings/map-settings/map-style-settings.js +1 -1
- package/dist/settings/stacks-settings/index.js +1 -1
- package/dist/settings/style-settings.js +1 -1
- package/dist/settings/table-settings/data-settings.js +1 -1
- package/dist/settings/trend-settings/style-setting.js +2 -2
- package/dist/settings/widgets/basic-summary/index.js +6 -14
- package/dist/settings/widgets/common-data-settings.js +1 -4
- package/dist/settings/widgets/date-summary-item.js +2 -2
- package/dist/settings/widgets/numeric-summary-item.js +2 -2
- package/dist/settings/widgets/summary-settings.js +2 -2
- package/dist/settings/widgets/switch/index.js +1 -1
- package/dist/settings/widgets/y-axis-group-settings.js +1 -1
- package/dist/utils/chart-utils/base-utils.js +7 -7
- package/dist/utils/chart-utils/original-data-utils/basic-chart-calculator.js +1 -1
- package/dist/utils/chart-utils/original-data-utils/compare-bar-chart-calculator.js +2 -2
- package/dist/utils/chart-utils/original-data-utils/completeness-calculator.js +1 -1
- package/dist/utils/chart-utils/sql-statistics-utils.js +9 -9
- package/dist/utils/collaborator-utils.js +1 -1
- package/dist/utils/collaborator.js +2 -2
- package/dist/utils/column-utils.js +12 -12
- package/dist/utils/common-utils.js +1 -1
- package/dist/utils/date-translate.js +1 -1
- package/dist/utils/object-utils.js +1 -1
- package/dist/utils/options-utils.js +2 -2
- package/dist/utils/row-record-utils.js +2 -2
- package/dist/utils/sql/chart-data-sql.js +58 -58
- package/dist/utils/sql/column-2-sql-column.js +18 -18
- package/dist/view/index.js +14 -3
- package/dist/view/title/index.js +2 -2
- package/dist/view/wrapper/basic-number-card.js +8 -8
- package/dist/view/wrapper/chart-component.js +22 -13
- package/dist/view/wrapper/combination.js +22 -16
- package/dist/view/wrapper/dashboard.js +4 -4
- package/dist/view/wrapper/funnel.js +2 -2
- package/dist/view/wrapper/heat-map.js +1 -1
- package/dist/view/wrapper/horizontal-component.js +9 -9
- package/dist/view/wrapper/map.js +1 -1
- package/dist/view/wrapper/mirror.js +1 -1
- package/dist/view/wrapper/pie.js +1 -1
- package/dist/view/wrapper/ring.js +1 -1
- package/dist/view/wrapper/scatter.js +2 -2
- package/dist/view/wrapper/table/index.js +1 -1
- package/dist/view/wrapper/table/one-dimension-table-with-numeric-columns.js +3 -3
- package/dist/view/wrapper/table/pivot-table-display-name.js +1 -1
- package/dist/view/wrapper/table/two-dimension-table.js +8 -8
- package/dist/view/wrapper/table-element/components/formatter.js +2 -2
- package/dist/view/wrapper/table-element/components/formatters/FileFormatter/index.js +1 -1
- package/dist/view/wrapper/table-element/components/formatters/link-formatter.js +17 -17
- package/dist/view/wrapper/table-element/components/link-formatter.js +17 -17
- package/dist/view/wrapper/table-element/components/record.js +3 -3
- package/dist/view/wrapper/table-element/components/records.js +4 -4
- package/dist/view/wrapper/table-element/components/utils.js +1 -1
- package/dist/view/wrapper/treemap.js +1 -1
- package/dist/view/wrapper/trend.js +18 -18
- package/dist/view/wrapper/world-map.js +1 -1
- package/package.json +15 -16
|
@@ -20,7 +20,7 @@ class SimpleCellFormatter extends React.Component {
|
|
|
20
20
|
if (typeof value === 'object') {
|
|
21
21
|
return null;
|
|
22
22
|
}
|
|
23
|
-
const gridCellClassName = this.props.type ?
|
|
23
|
+
const gridCellClassName = this.props.type ? `grid-cell-type-${this.props.type}` : 'grid-cell-type-default';
|
|
24
24
|
let formattedValue = this.getFormattedValue(value);
|
|
25
25
|
return /*#__PURE__*/React.createElement("div", {
|
|
26
26
|
className: gridCellClassName,
|
|
@@ -22,7 +22,7 @@ class LinkContent extends Component {
|
|
|
22
22
|
isCellSelected: false,
|
|
23
23
|
readOnly: true
|
|
24
24
|
};
|
|
25
|
-
const className =
|
|
25
|
+
const className = `link formatter-item ${type === CellType.SINGLE_SELECT ? 'mr-1' : ''}`;
|
|
26
26
|
return shownLinks.map(link => {
|
|
27
27
|
if (!link) return null;
|
|
28
28
|
const {
|
|
@@ -36,14 +36,14 @@ class LinkContent extends Component {
|
|
|
36
36
|
if (!Array.isArray(display_value)) {
|
|
37
37
|
formatterProps['value'] = display_value;
|
|
38
38
|
return /*#__PURE__*/React.createElement("div", {
|
|
39
|
-
key:
|
|
39
|
+
key: `link-record-item-${row_id}`,
|
|
40
40
|
className: className
|
|
41
41
|
}, this.createColumnFormatter(Formatter, formatterProps));
|
|
42
42
|
}
|
|
43
43
|
return display_value.map((item, index) => {
|
|
44
44
|
formatterProps['value'] = item;
|
|
45
45
|
return /*#__PURE__*/React.createElement("div", {
|
|
46
|
-
key:
|
|
46
|
+
key: `link-record-item-${row_id}-${index}`,
|
|
47
47
|
className: className
|
|
48
48
|
}, this.createColumnFormatter(Formatter, formatterProps));
|
|
49
49
|
});
|
|
@@ -87,7 +87,7 @@ class LinkContent extends Component {
|
|
|
87
87
|
departments
|
|
88
88
|
});
|
|
89
89
|
return /*#__PURE__*/React.createElement("div", {
|
|
90
|
-
key:
|
|
90
|
+
key: `link-item-${index}`,
|
|
91
91
|
className: "link"
|
|
92
92
|
}, /*#__PURE__*/React.createElement("span", {
|
|
93
93
|
className: "link-name pr-1",
|
|
@@ -31,7 +31,7 @@ class ColorPicker extends React.PureComponent {
|
|
|
31
31
|
}, /*#__PURE__*/React.createElement("div", {
|
|
32
32
|
className: "picker-control"
|
|
33
33
|
}, /*#__PURE__*/React.createElement("div", {
|
|
34
|
-
className:
|
|
34
|
+
className: `color-control ${isWhiteColor ? 'white-color' : ''}`,
|
|
35
35
|
onClick: this.onPickColorToggle,
|
|
36
36
|
style: {
|
|
37
37
|
background: activeColor
|
|
@@ -108,7 +108,7 @@ class ColorRule extends Component {
|
|
|
108
108
|
filter_conjunction,
|
|
109
109
|
filters
|
|
110
110
|
} = rule;
|
|
111
|
-
const target =
|
|
111
|
+
const target = `row-color-rule-${ruleIndex}`;
|
|
112
112
|
const selectedColorConfig = this.props.getColorConfigByColor(color);
|
|
113
113
|
const ruleTitle = ruleName || intl.get('Define_rule');
|
|
114
114
|
const canAddFilter = filters.length < 8;
|
|
@@ -59,7 +59,7 @@ class ColorRules extends Component {
|
|
|
59
59
|
}, rules.map((rule, ruleIndex) => {
|
|
60
60
|
const isEditing = editingRuleIndex === ruleIndex;
|
|
61
61
|
return /*#__PURE__*/React.createElement(ColorRule, {
|
|
62
|
-
key:
|
|
62
|
+
key: `statistic-color-rule-${ruleIndex}`,
|
|
63
63
|
ruleIndex: ruleIndex,
|
|
64
64
|
rule: rule,
|
|
65
65
|
labelColorConfigs: labelColorConfigs,
|
|
@@ -22,7 +22,7 @@ class ColorRulesPopover extends Component {
|
|
|
22
22
|
filter_term
|
|
23
23
|
} = filter;
|
|
24
24
|
const name = DISPLAY_COLOR_RULE_FILTER_TYPE[filter_type];
|
|
25
|
-
const template =
|
|
25
|
+
const template = `${intl.get(name)} ${intl.get(filter_predicate)}`;
|
|
26
26
|
if (EMPTY_PREDICATE.includes(filter_predicate)) {
|
|
27
27
|
return template;
|
|
28
28
|
}
|
|
@@ -30,12 +30,12 @@ class ColorRulesPopover extends Component {
|
|
|
30
30
|
case COLOR_RULE_FILTER_TYPE_MAP.NUMERIC_VALUE:
|
|
31
31
|
{
|
|
32
32
|
if (filter_term === 0) {
|
|
33
|
-
return
|
|
33
|
+
return `${template} 0`;
|
|
34
34
|
}
|
|
35
35
|
if (!filter_term) {
|
|
36
36
|
return null;
|
|
37
37
|
}
|
|
38
|
-
return
|
|
38
|
+
return `${template} ${filter_term}`;
|
|
39
39
|
}
|
|
40
40
|
default:
|
|
41
41
|
{
|
|
@@ -48,10 +48,10 @@ class ColorRulesPopover extends Component {
|
|
|
48
48
|
let contentText = '';
|
|
49
49
|
filterConjunction = filterConjunction || 'And';
|
|
50
50
|
filters.forEach((filter, index) => {
|
|
51
|
-
let filterContentText = index === 0 ? '' :
|
|
51
|
+
let filterContentText = index === 0 ? '' : ` ${filterConjunction === 'And' ? intl.get('And') : intl.get('Or')}`;
|
|
52
52
|
let filterDisplay = this.getFilterDisplay(filter);
|
|
53
53
|
if (filterDisplay) {
|
|
54
|
-
contentText = contentText + filterContentText +
|
|
54
|
+
contentText = contentText + filterContentText + ` ${filterDisplay}`;
|
|
55
55
|
}
|
|
56
56
|
});
|
|
57
57
|
return contentText;
|
|
@@ -140,7 +140,7 @@ class ColorRulesPopover extends Component {
|
|
|
140
140
|
}
|
|
141
141
|
setTimeout(() => {
|
|
142
142
|
if (popoverWrapper) {
|
|
143
|
-
popoverWrapper.style.top =
|
|
143
|
+
popoverWrapper.style.top = `${-offsetHeight + offsetTop}px`;
|
|
144
144
|
}
|
|
145
145
|
}, 300);
|
|
146
146
|
};
|
|
@@ -17,7 +17,7 @@ class ColorSelectorPopover extends Component {
|
|
|
17
17
|
} = hexToRgb(colorOption.color);
|
|
18
18
|
return {
|
|
19
19
|
...colorOption,
|
|
20
|
-
border_color:
|
|
20
|
+
border_color: `rgb(${Math.max(r - 20, 0)}, ${Math.max(g - 20, 0)}, ${Math.max(b - 20, 0)})`
|
|
21
21
|
};
|
|
22
22
|
}
|
|
23
23
|
return colorOption;
|
|
@@ -47,7 +47,7 @@ class ColorSelectorPopover extends Component {
|
|
|
47
47
|
}, /*#__PURE__*/React.createElement("div", {
|
|
48
48
|
className: "sea-chart-color-selector-wrapper"
|
|
49
49
|
}, this.colorOptions.map(colorOption => /*#__PURE__*/React.createElement("div", {
|
|
50
|
-
key:
|
|
50
|
+
key: `sea-chart-color-option-${colorOption.color}`,
|
|
51
51
|
className: "sea-chart-color-option",
|
|
52
52
|
onClick: () => this.onSelectColor(colorOption.color),
|
|
53
53
|
style: {
|
|
@@ -8,12 +8,12 @@ function CommonAddTool(props) {
|
|
|
8
8
|
addIconClassName
|
|
9
9
|
} = props;
|
|
10
10
|
return /*#__PURE__*/React.createElement("div", {
|
|
11
|
-
className:
|
|
11
|
+
className: `add-item-btn ${className ? className : ''}`,
|
|
12
12
|
onClick: e => {
|
|
13
13
|
callBack(e);
|
|
14
14
|
}
|
|
15
15
|
}, /*#__PURE__*/React.createElement("span", {
|
|
16
|
-
className:
|
|
16
|
+
className: `dtable-font dtable-icon-add-table ${addIconClassName || ''}`
|
|
17
17
|
}), /*#__PURE__*/React.createElement("span", {
|
|
18
18
|
className: "add-new-option text-truncate",
|
|
19
19
|
title: footerName
|
|
@@ -60,7 +60,7 @@ class HideColumnSetter extends React.Component {
|
|
|
60
60
|
let settingClass = wrapperClass || '';
|
|
61
61
|
settingClass = settingClass && hiddenColumnsLength > 0 ? settingClass + ' active' : settingClass;
|
|
62
62
|
return /*#__PURE__*/React.createElement("div", {
|
|
63
|
-
className:
|
|
63
|
+
className: `setting-item ${settingClass ? '' : 'mb-1'}`
|
|
64
64
|
}, /*#__PURE__*/React.createElement("div", {
|
|
65
65
|
className: "mr-2 filters-setting-btn",
|
|
66
66
|
onClick: this.onHideColumnToggle
|
|
@@ -45,9 +45,9 @@ class SortSetter extends Component {
|
|
|
45
45
|
let labelClass = wrapperClass || '';
|
|
46
46
|
labelClass = labelClass && sortsLength > 0 ? labelClass + ' active' : labelClass;
|
|
47
47
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
48
|
-
className:
|
|
48
|
+
className: `setting-item ${labelClass ? '' : 'mb-1'}`
|
|
49
49
|
}, /*#__PURE__*/React.createElement("div", {
|
|
50
|
-
className:
|
|
50
|
+
className: `mr-2 setting-item-btn filters-setting-btn ${labelClass}`,
|
|
51
51
|
onClick: this.onSortToggle,
|
|
52
52
|
role: "button",
|
|
53
53
|
onKeyDown: this.onKeyDown,
|
|
@@ -73,13 +73,13 @@ export default function DrillDownFieldsPopover(_ref) {
|
|
|
73
73
|
className: styles['text-truncate']
|
|
74
74
|
}, ''), /*#__PURE__*/React.createElement("th", {
|
|
75
75
|
width: "20%",
|
|
76
|
-
className:
|
|
76
|
+
className: `${styles['column-checkbox']} pr-3`
|
|
77
77
|
}, intl.get('Visible')))), /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", {
|
|
78
78
|
className: styles['drill-down-fields-row']
|
|
79
79
|
}, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("span", {
|
|
80
80
|
className: styles['drill-down-fields-select-all']
|
|
81
81
|
}, intl.get('Select_all'))), /*#__PURE__*/React.createElement("td", {
|
|
82
|
-
className:
|
|
82
|
+
className: `${styles['column-checkbox']} pr-3`
|
|
83
83
|
}, /*#__PURE__*/React.createElement("input", {
|
|
84
84
|
type: "checkbox",
|
|
85
85
|
checked: isAllColumnsVisible,
|
|
@@ -94,9 +94,9 @@ export default function DrillDownFieldsPopover(_ref) {
|
|
|
94
94
|
className: "pl-5 text-truncate",
|
|
95
95
|
title: column.name
|
|
96
96
|
}, /*#__PURE__*/React.createElement("i", {
|
|
97
|
-
className:
|
|
97
|
+
className: `${COLUMNS_ICON_CONFIG[column.type]} mr-2 ${styles['drill-down-fields-icon']}`
|
|
98
98
|
}), /*#__PURE__*/React.createElement("span", null, column.name)), /*#__PURE__*/React.createElement("td", {
|
|
99
|
-
className:
|
|
99
|
+
className: `${styles['column-checkbox']} pr-3`
|
|
100
100
|
}, /*#__PURE__*/React.createElement("input", {
|
|
101
101
|
disabled: checkedByDefault,
|
|
102
102
|
type: "checkbox",
|
|
@@ -14,11 +14,11 @@ const Icon = props => {
|
|
|
14
14
|
className,
|
|
15
15
|
symbol
|
|
16
16
|
} = props;
|
|
17
|
-
const iconClass =
|
|
17
|
+
const iconClass = `sea-chart-icon sea-chart-icon-${symbol} ${className || ''}`;
|
|
18
18
|
return /*#__PURE__*/React.createElement("svg", {
|
|
19
19
|
className: iconClass
|
|
20
20
|
}, /*#__PURE__*/React.createElement("use", {
|
|
21
|
-
xlinkHref:
|
|
21
|
+
xlinkHref: `#${symbol}`
|
|
22
22
|
}));
|
|
23
23
|
};
|
|
24
24
|
export default Icon;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { Input } from 'reactstrap';
|
|
3
|
-
function NumberInput(
|
|
4
|
-
|
|
3
|
+
function NumberInput(_ref) {
|
|
4
|
+
let {
|
|
5
5
|
value,
|
|
6
6
|
onChange,
|
|
7
|
-
min,
|
|
8
|
-
step,
|
|
9
|
-
max,
|
|
10
|
-
readOnly,
|
|
7
|
+
min = 0,
|
|
8
|
+
step = 1,
|
|
9
|
+
max = Infinity,
|
|
10
|
+
readOnly = false,
|
|
11
11
|
className,
|
|
12
12
|
useEmpty,
|
|
13
13
|
...otherProps
|
|
14
|
-
} =
|
|
14
|
+
} = _ref;
|
|
15
15
|
// useempty is used to control whether to use empty string or '0'
|
|
16
16
|
const number = value ? value : useEmpty ? '' : '0';
|
|
17
17
|
return /*#__PURE__*/React.createElement(Input, Object.assign({
|
|
@@ -25,10 +25,4 @@ function NumberInput(props) {
|
|
|
25
25
|
onChange: onChange
|
|
26
26
|
}, otherProps));
|
|
27
27
|
}
|
|
28
|
-
NumberInput.defaultProps = {
|
|
29
|
-
min: 0,
|
|
30
|
-
step: 1,
|
|
31
|
-
max: Infinity,
|
|
32
|
-
readOnly: false
|
|
33
|
-
};
|
|
34
28
|
export default NumberInput;
|
package/dist/components/popover/hide-column-popover/hide-column-popover-widgets/hide-column-item.js
CHANGED
|
@@ -41,7 +41,7 @@ class HideColumnItem extends React.PureComponent {
|
|
|
41
41
|
readonly
|
|
42
42
|
} = this.props;
|
|
43
43
|
const placeholder = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("i", {
|
|
44
|
-
className:
|
|
44
|
+
className: `dtable-font ${setting.columnIcon}`
|
|
45
45
|
}), /*#__PURE__*/React.createElement("span", {
|
|
46
46
|
className: "text-truncate"
|
|
47
47
|
}, setting.columnName));
|
|
@@ -166,7 +166,7 @@ class HideColumnPopover extends React.Component {
|
|
|
166
166
|
ref: ref => this.popoverRef = ref,
|
|
167
167
|
onClick: this.onPopoverInsideClick
|
|
168
168
|
}, /*#__PURE__*/React.createElement("div", {
|
|
169
|
-
className:
|
|
169
|
+
className: `field-settings ${isEmpty ? 'empty' : ''}`
|
|
170
170
|
}, /*#__PURE__*/React.createElement("div", {
|
|
171
171
|
className: "search-column"
|
|
172
172
|
}, /*#__PURE__*/React.createElement("input", {
|
|
@@ -264,7 +264,7 @@ class SortPopover extends Component {
|
|
|
264
264
|
ref: ref => this.sortPopoverRef = ref,
|
|
265
265
|
onClick: this.onPopoverInsideClick
|
|
266
266
|
}, /*#__PURE__*/React.createElement("div", {
|
|
267
|
-
className:
|
|
267
|
+
className: `sorts-list ${isEmpty ? 'empty-sorts-container' : ''}`
|
|
268
268
|
}, isEmpty ? /*#__PURE__*/React.createElement("div", {
|
|
269
269
|
className: "empty-sorts-list"
|
|
270
270
|
}, intl.get('No_sorts')) : this.renderSortsList()), !readonly && /*#__PURE__*/React.createElement(CommonAddTool, {
|
|
@@ -20,7 +20,7 @@ class RowCardHeaderCell extends React.Component {
|
|
|
20
20
|
let headerCellWidth = width;
|
|
21
21
|
if (rowCardType === 'link') {
|
|
22
22
|
const tableId = table._id;
|
|
23
|
-
const draggedCellId =
|
|
23
|
+
const draggedCellId = `${tableId}-${key}`;
|
|
24
24
|
const existedWidth = JSON.parse(localStorage.getItem(draggedCellId));
|
|
25
25
|
if (existedWidth) {
|
|
26
26
|
headerCellWidth = existedWidth;
|
|
@@ -48,7 +48,7 @@ class RowCardHeaderCell extends React.Component {
|
|
|
48
48
|
const {
|
|
49
49
|
_id: tableId
|
|
50
50
|
} = table;
|
|
51
|
-
const draggedCellId =
|
|
51
|
+
const draggedCellId = `${tableId}-${columnKey}`;
|
|
52
52
|
let width = this.getWidthFromMouseEvent(e);
|
|
53
53
|
this.setState({
|
|
54
54
|
resizing: false
|
|
@@ -69,7 +69,7 @@ class RowCardHeader extends React.Component {
|
|
|
69
69
|
} = this.props;
|
|
70
70
|
for (let i = 0; i < renderedColumns.length; i++) {
|
|
71
71
|
const renderedColumn = renderedColumns[i];
|
|
72
|
-
cardHeaderCells.push(
|
|
72
|
+
cardHeaderCells.push(/*#__PURE__*/React.createElement(RowCardHeaderCell, {
|
|
73
73
|
key: renderedColumn.key,
|
|
74
74
|
column: renderedColumn,
|
|
75
75
|
rowCardType: rowCardType,
|
|
@@ -109,7 +109,7 @@ class RowCardHeader extends React.Component {
|
|
|
109
109
|
} = this.state;
|
|
110
110
|
const cardHeaderCells = this.getCardHeaderCells();
|
|
111
111
|
return /*#__PURE__*/React.createElement("div", {
|
|
112
|
-
className:
|
|
112
|
+
className: `row-card-header ${cardHeaderClassName ? cardHeaderClassName : ''}`
|
|
113
113
|
}, /*#__PURE__*/React.createElement("div", {
|
|
114
114
|
className: "row-card-column-names records-column-names",
|
|
115
115
|
ref: ref => this.recordItemRef = ref
|
|
@@ -78,7 +78,7 @@ class RowCardItem extends PureComponent {
|
|
|
78
78
|
data,
|
|
79
79
|
width
|
|
80
80
|
} = column;
|
|
81
|
-
const draggedCellId =
|
|
81
|
+
const draggedCellId = `${tableId}-${key}`;
|
|
82
82
|
const existedWidth = JSON.parse(localStorage.getItem(draggedCellId));
|
|
83
83
|
let columnWidth = existedWidth && rowCardType === 'link' ? existedWidth : width;
|
|
84
84
|
if (draggedCell.id === draggedCellId) {
|
|
@@ -107,7 +107,7 @@ class RowCardItem extends PureComponent {
|
|
|
107
107
|
}, /*#__PURE__*/React.createElement("div", {
|
|
108
108
|
className: "formatter-show"
|
|
109
109
|
}, /*#__PURE__*/React.createElement(LinkContent, {
|
|
110
|
-
key:
|
|
110
|
+
key: `link-formatter-${row._id}-${key}`,
|
|
111
111
|
linkedColumn: linkedColumn,
|
|
112
112
|
computedValue: formulaRow[key],
|
|
113
113
|
Empty: EMPTY_LINK
|
|
@@ -186,7 +186,7 @@ class RowCard extends Component {
|
|
|
186
186
|
displayRows,
|
|
187
187
|
scrollLeft
|
|
188
188
|
} = this.state;
|
|
189
|
-
const rowCardListClass =
|
|
189
|
+
const rowCardListClass = `row-card-list ${cardListClassName ? cardListClassName : ''}`;
|
|
190
190
|
return /*#__PURE__*/React.createElement("div", {
|
|
191
191
|
className: "row-card-container"
|
|
192
192
|
}, isShowRowCardHeader && /*#__PURE__*/React.createElement(RowCardHeader, {
|
|
@@ -225,7 +225,7 @@ class RowCard extends Component {
|
|
|
225
225
|
columns: renderedColumns
|
|
226
226
|
};
|
|
227
227
|
return /*#__PURE__*/React.createElement(RowCardItem, {
|
|
228
|
-
key:
|
|
228
|
+
key: `row-card-${rowIdx}`,
|
|
229
229
|
setItemScrollLeft: this.setItemScrollLeft,
|
|
230
230
|
onRef: this.onRef,
|
|
231
231
|
rowCardType: rowCardType,
|
|
@@ -292,7 +292,7 @@ class StatisticRecordDialog extends React.Component {
|
|
|
292
292
|
if (searchedRows.length === 0) return /*#__PURE__*/React.createElement("div", {
|
|
293
293
|
className: "w-100 h-100"
|
|
294
294
|
}, /*#__PURE__*/React.createElement(_DTableEmptyTip, {
|
|
295
|
-
src:
|
|
295
|
+
src: `${context.getSetting('mediaUrl')}img/no-items-tip.png`,
|
|
296
296
|
text: intl.get('No_record')
|
|
297
297
|
}));
|
|
298
298
|
const props = {
|
|
@@ -37,7 +37,7 @@ const TypesDialog = _ref => {
|
|
|
37
37
|
const currentCatIndex = selectStatisticIndex < 0 ? 0 : selectStatisticIndex;
|
|
38
38
|
if (currentCatIndex === 0) return;
|
|
39
39
|
if (!seaChartTypeContainerRef.current) return;
|
|
40
|
-
seaChartTypeContainerRef.current.scrollTop = document.getElementById(
|
|
40
|
+
seaChartTypeContainerRef.current.scrollTop = document.getElementById(`chart-type-${currentCatIndex + 1}`).offsetTop - 60;
|
|
41
41
|
}, [type]);
|
|
42
42
|
const onToggle = useCallback(() => {
|
|
43
43
|
propsOnToggle();
|
|
@@ -46,7 +46,7 @@ const TypesDialog = _ref => {
|
|
|
46
46
|
eventStopPropagation(event);
|
|
47
47
|
setCurrentCatIndex(index);
|
|
48
48
|
if (!seaChartTypeContainerRef.current) return;
|
|
49
|
-
seaChartTypeContainerRef.current.scrollTop = document.getElementById(
|
|
49
|
+
seaChartTypeContainerRef.current.scrollTop = document.getElementById(`chart-type-${index + 1}`).offsetTop - 60;
|
|
50
50
|
}, [seaChartTypeContainerRef]);
|
|
51
51
|
const onTypeChange = useCallback((event, type, index) => {
|
|
52
52
|
eventStopPropagation(event);
|
|
@@ -76,7 +76,7 @@ const TypesDialog = _ref => {
|
|
|
76
76
|
key: index,
|
|
77
77
|
className: "px-4 py-2 sea-chart-chart-cat-nav-item"
|
|
78
78
|
}, /*#__PURE__*/React.createElement("div", {
|
|
79
|
-
id:
|
|
79
|
+
id: `sea-chart-icon-${item.icon}-container`,
|
|
80
80
|
className: classnames('sea-chart-chart-cat-nav-item-container', {
|
|
81
81
|
'sea-chart-icon-highlight': currentCatIndex === index
|
|
82
82
|
}),
|
|
@@ -86,7 +86,7 @@ const TypesDialog = _ref => {
|
|
|
86
86
|
className: "chart-icon w-100 h-100"
|
|
87
87
|
})), /*#__PURE__*/React.createElement(UncontrolledTooltip, {
|
|
88
88
|
placement: "bottom",
|
|
89
|
-
target:
|
|
89
|
+
target: `sea-chart-icon-${item.icon}-container`,
|
|
90
90
|
delay: 0,
|
|
91
91
|
fade: false
|
|
92
92
|
}, intl.get(item.name)));
|
|
@@ -95,11 +95,11 @@ const TypesDialog = _ref => {
|
|
|
95
95
|
ref: seaChartTypeContainerRef
|
|
96
96
|
}, CHART_TYPES.map((item, index) => {
|
|
97
97
|
return /*#__PURE__*/React.createElement("div", {
|
|
98
|
-
key:
|
|
98
|
+
key: `sea-chart-type-${index}`,
|
|
99
99
|
className: "mb-7"
|
|
100
100
|
}, /*#__PURE__*/React.createElement("h3", {
|
|
101
101
|
className: "sea-chart-type-title m-0",
|
|
102
|
-
id:
|
|
102
|
+
id: `chart-type-${index + 1}`
|
|
103
103
|
}, intl.get(item.name)), /*#__PURE__*/React.createElement("div", {
|
|
104
104
|
className: "d-flex flex-wrap"
|
|
105
105
|
}, item.children.map(chartType => {
|
|
@@ -109,7 +109,7 @@ const TypesDialog = _ref => {
|
|
|
109
109
|
return /*#__PURE__*/React.createElement("div", {
|
|
110
110
|
key: chartType,
|
|
111
111
|
onClick: event => onTypeChange(event, chartType, index),
|
|
112
|
-
className:
|
|
112
|
+
className: `sea-chart-type-item ${selectedType === chartType ? 'selected' : ''}`
|
|
113
113
|
}, /*#__PURE__*/React.createElement("p", {
|
|
114
114
|
className: "sea-chart-type-description"
|
|
115
115
|
}, intl.get(CHART_TYPE_SHOW[chartType])), /*#__PURE__*/React.createElement("div", {
|
package/dist/context.js
CHANGED
|
@@ -114,9 +114,9 @@ class Context {
|
|
|
114
114
|
server,
|
|
115
115
|
mediaUrl
|
|
116
116
|
} = this.settings;
|
|
117
|
-
return
|
|
117
|
+
return `${server}${mediaUrl}dtable-statistic/img/${name}?v=0.0.1`;
|
|
118
118
|
}
|
|
119
|
-
return
|
|
119
|
+
return `${DEFAULT_MEDIAURL}dtable-statistic/img/${name}?v=0.0.1`;
|
|
120
120
|
};
|
|
121
121
|
this.api = null;
|
|
122
122
|
this.settings = {};
|
package/dist/editor/index.js
CHANGED
|
@@ -3,13 +3,13 @@ import View, { defaultProps, propTypes } from '../view';
|
|
|
3
3
|
import Settings from '../settings';
|
|
4
4
|
import { settingsDefaultProps, settingsPropTypes } from '../settings';
|
|
5
5
|
import './index.css';
|
|
6
|
-
function Editor(
|
|
6
|
+
function Editor() {
|
|
7
|
+
let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
|
|
8
|
+
...defaultProps,
|
|
9
|
+
...settingsDefaultProps
|
|
10
|
+
};
|
|
7
11
|
return /*#__PURE__*/React.createElement("div", {
|
|
8
12
|
className: "sea-chart-editor"
|
|
9
13
|
}, /*#__PURE__*/React.createElement(View, props), /*#__PURE__*/React.createElement(Settings, props, props.children));
|
|
10
14
|
}
|
|
11
|
-
Editor.defaultProps = {
|
|
12
|
-
...defaultProps,
|
|
13
|
-
...settingsDefaultProps
|
|
14
|
-
};
|
|
15
15
|
export default Editor;
|
|
@@ -45,7 +45,7 @@ function getMapJsonQueryUrl(mapLevel, mapLocation) {
|
|
|
45
45
|
if (!provinceNameEn) {
|
|
46
46
|
return null;
|
|
47
47
|
}
|
|
48
|
-
return
|
|
48
|
+
return `region-mapjson/${provinceNameEn}/${provinceNameEn}`;
|
|
49
49
|
}
|
|
50
50
|
case MAP_LEVEL.CITY:
|
|
51
51
|
{
|
|
@@ -58,9 +58,9 @@ function getMapJsonQueryUrl(mapLevel, mapLocation) {
|
|
|
58
58
|
|
|
59
59
|
// e.g. 北京市/北京市
|
|
60
60
|
if (provinceNameEn === cityNameEn) {
|
|
61
|
-
return
|
|
61
|
+
return `region-mapjson/${provinceNameEn}/${provinceNameEn}`;
|
|
62
62
|
}
|
|
63
|
-
return
|
|
63
|
+
return `region-mapjson/${provinceNameEn}/${provinceNameEn}_${cityNameEn}`;
|
|
64
64
|
}
|
|
65
65
|
default:
|
|
66
66
|
{
|
|
@@ -88,7 +88,7 @@ export default async function fetchMapJson(mapLevel, mapLocation, mediaUrl) {
|
|
|
88
88
|
}
|
|
89
89
|
let mapJson;
|
|
90
90
|
try {
|
|
91
|
-
const res = await fetch(
|
|
91
|
+
const res = await fetch(`${mediaUrl}dtable-statistic/geolocation/${url}.json`);
|
|
92
92
|
mapJson = await res.json();
|
|
93
93
|
} catch (error) {
|
|
94
94
|
console.error('on fetchMapJson: fetch error', error);
|
|
@@ -15,8 +15,8 @@ const DataSettings = _ref => {
|
|
|
15
15
|
dataSources,
|
|
16
16
|
onChange,
|
|
17
17
|
tables,
|
|
18
|
-
xLabel,
|
|
19
|
-
yLabel
|
|
18
|
+
xLabel = 'X_axis',
|
|
19
|
+
yLabel = 'Y_axis'
|
|
20
20
|
} = _ref;
|
|
21
21
|
const onXAxisColumnChange = useCallback(column => {
|
|
22
22
|
const {
|
|
@@ -148,8 +148,4 @@ const DataSettings = _ref => {
|
|
|
148
148
|
onChange: onChange
|
|
149
149
|
}), renderDataSort());
|
|
150
150
|
};
|
|
151
|
-
DataSettings.defaultProps = {
|
|
152
|
-
xLabel: 'X_axis',
|
|
153
|
-
yLabel: 'Y_axis'
|
|
154
|
-
};
|
|
155
151
|
export default DataSettings;
|
|
@@ -17,8 +17,8 @@ import GoalLineSetting from '../../components/goal-line-setting';
|
|
|
17
17
|
const StyleSettings = _ref => {
|
|
18
18
|
let {
|
|
19
19
|
chart,
|
|
20
|
-
xLabel,
|
|
21
|
-
yLabel,
|
|
20
|
+
xLabel = 'X_axis',
|
|
21
|
+
yLabel = 'Y_axis',
|
|
22
22
|
onChange,
|
|
23
23
|
onStyleChange,
|
|
24
24
|
tables
|
|
@@ -246,8 +246,4 @@ const StyleSettings = _ref => {
|
|
|
246
246
|
onChange: onDisplayBlockChange
|
|
247
247
|
}));
|
|
248
248
|
};
|
|
249
|
-
StyleSettings.defaultProps = {
|
|
250
|
-
xLabel: 'X_axis',
|
|
251
|
-
yLabel: 'Y_axis'
|
|
252
|
-
};
|
|
253
249
|
export default StyleSettings;
|
|
@@ -14,8 +14,8 @@ const DataSettings = _ref => {
|
|
|
14
14
|
chart,
|
|
15
15
|
dataSources,
|
|
16
16
|
tables,
|
|
17
|
-
xLabel,
|
|
18
|
-
yLabel,
|
|
17
|
+
xLabel = 'X_axis',
|
|
18
|
+
yLabel = 'Y_axis',
|
|
19
19
|
onChange
|
|
20
20
|
} = _ref;
|
|
21
21
|
const onXAxisColumnChange = useCallback(column => {
|
|
@@ -156,8 +156,4 @@ const DataSettings = _ref => {
|
|
|
156
156
|
onChange: onChange
|
|
157
157
|
}), renderDataSort());
|
|
158
158
|
};
|
|
159
|
-
DataSettings.defaultProps = {
|
|
160
|
-
xLabel: 'X_axis',
|
|
161
|
-
yLabel: 'Y_axis'
|
|
162
|
-
};
|
|
163
159
|
export default DataSettings;
|
|
@@ -14,8 +14,8 @@ import GoalLineSetting from '../../components/goal-line-setting';
|
|
|
14
14
|
const StyleSettings = _ref => {
|
|
15
15
|
let {
|
|
16
16
|
chart,
|
|
17
|
-
xLabel,
|
|
18
|
-
yLabel,
|
|
17
|
+
xLabel = 'X_axis',
|
|
18
|
+
yLabel = 'Y_axis',
|
|
19
19
|
onChange,
|
|
20
20
|
onStyleChange,
|
|
21
21
|
labelColorConfigs
|
|
@@ -192,8 +192,4 @@ const StyleSettings = _ref => {
|
|
|
192
192
|
onChange: onDisplayValueChange
|
|
193
193
|
}));
|
|
194
194
|
};
|
|
195
|
-
StyleSettings.defaultProps = {
|
|
196
|
-
xLabel: 'X_axis',
|
|
197
|
-
yLabel: 'Y_axis'
|
|
198
|
-
};
|
|
199
195
|
export default StyleSettings;
|
|
@@ -5,7 +5,6 @@ import CommonDataSettings from '../widgets/common-data-settings';
|
|
|
5
5
|
import Divider from '../widgets/divider';
|
|
6
6
|
import GroupBy from '../widgets/group-by';
|
|
7
7
|
import SummarySettings from '../widgets/summary-settings';
|
|
8
|
-
import { eventStopPropagation } from '../../utils';
|
|
9
8
|
import { CHART_SUMMARY_TYPE, CHART_Y_GROUP_TYPE, CHART_SUMMARY_CALCULATION_METHOD, GEOLOCATION_FORMAT_CITY, GEOLOCATION_FORMAT_MAP, COMBINATION_POSITION } from '../../constants';
|
|
10
9
|
import intl from '../../intl';
|
|
11
10
|
const DataSettings = _ref => {
|
|
@@ -13,7 +12,7 @@ const DataSettings = _ref => {
|
|
|
13
12
|
chart,
|
|
14
13
|
dataSources,
|
|
15
14
|
tables,
|
|
16
|
-
xLabel,
|
|
15
|
+
xLabel = 'X_axis',
|
|
17
16
|
onChange
|
|
18
17
|
} = _ref;
|
|
19
18
|
const onXAxisColumnChange = useCallback(column => {
|
|
@@ -272,7 +271,4 @@ const DataSettings = _ref => {
|
|
|
272
271
|
onChange: onChange
|
|
273
272
|
}));
|
|
274
273
|
};
|
|
275
|
-
DataSettings.defaultProps = {
|
|
276
|
-
xLabel: 'X_axis'
|
|
277
|
-
};
|
|
278
274
|
export default DataSettings;
|