sea-chart 2.0.1 → 2.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/dist/components/cell-factory/SimpleCellFormatter.js +1 -1
  2. package/dist/components/cell-factory/link-content.js +4 -4
  3. package/dist/components/color-picker/index.js +1 -1
  4. package/dist/components/color-popover/color-rules/color-rule.js +1 -1
  5. package/dist/components/color-popover/color-rules/index.js +1 -1
  6. package/dist/components/color-popover/color-rules-popover.js +6 -6
  7. package/dist/components/color-popover/color-selector-popover.js +2 -2
  8. package/dist/components/color-setting/color-group-selector.js +1 -1
  9. package/dist/components/common-add-tool/index.js +2 -2
  10. package/dist/components/data-process-setter/hide-column-setter.js +1 -1
  11. package/dist/components/data-process-setter/sort-setter.js +2 -2
  12. package/dist/components/drill-down-settings/drill-down-fields-popover/index.js +4 -4
  13. package/dist/components/icon/index.js +2 -2
  14. package/dist/components/popover/hide-column-popover/hide-column-popover-widgets/hide-column-item.js +1 -1
  15. package/dist/components/popover/hide-column-popover/hide-column-popover.js +1 -1
  16. package/dist/components/popover/sort-popover/sort-popover.js +1 -1
  17. package/dist/components/row-card/row-card-header-cell.js +2 -2
  18. package/dist/components/row-card/row-card-header.js +1 -1
  19. package/dist/components/row-card/row-card-item.js +2 -2
  20. package/dist/components/row-card/row-card.js +2 -2
  21. package/dist/components/statistic-record-dialog/index.js +1 -1
  22. package/dist/components/types-dialog/index.js +7 -7
  23. package/dist/context.js +2 -2
  24. package/dist/services/map-json.js +4 -4
  25. package/dist/settings/basic-number-card/style-settings.js +1 -1
  26. package/dist/settings/index.js +3 -3
  27. package/dist/settings/map-settings/map-style-settings.js +1 -1
  28. package/dist/settings/stacks-settings/index.js +1 -1
  29. package/dist/settings/style-settings.js +1 -1
  30. package/dist/settings/table-settings/data-settings.js +1 -1
  31. package/dist/settings/trend-settings/style-setting.js +2 -2
  32. package/dist/settings/widgets/chart-type/index.js +3 -3
  33. package/dist/settings/widgets/date-summary-item.js +2 -2
  34. package/dist/settings/widgets/numeric-summary-item.js +2 -2
  35. package/dist/settings/widgets/summary-settings.js +2 -2
  36. package/dist/settings/widgets/switch/index.js +1 -1
  37. package/dist/settings/widgets/y-axis-group-settings.js +1 -1
  38. package/dist/utils/chart-utils/base-utils.js +7 -7
  39. package/dist/utils/chart-utils/original-data-utils/basic-chart-calculator.js +1 -1
  40. package/dist/utils/chart-utils/original-data-utils/compare-bar-chart-calculator.js +2 -2
  41. package/dist/utils/chart-utils/original-data-utils/completeness-calculator.js +1 -1
  42. package/dist/utils/chart-utils/sql-statistics-utils.js +9 -9
  43. package/dist/utils/collaborator-utils.js +1 -1
  44. package/dist/utils/collaborator.js +2 -2
  45. package/dist/utils/column-utils.js +12 -12
  46. package/dist/utils/common-utils.js +1 -1
  47. package/dist/utils/date-translate.js +1 -1
  48. package/dist/utils/object-utils.js +1 -1
  49. package/dist/utils/options-utils.js +2 -2
  50. package/dist/utils/row-record-utils.js +2 -2
  51. package/dist/utils/sql/chart-data-sql.js +58 -58
  52. package/dist/utils/sql/column-2-sql-column.js +18 -18
  53. package/dist/view/index.js +2 -5
  54. package/dist/view/title/index.js +2 -2
  55. package/dist/view/wrapper/bar.js +168 -93
  56. package/dist/view/wrapper/basic-number-card.js +8 -8
  57. package/dist/view/wrapper/chart-component.js +16 -52
  58. package/dist/view/wrapper/index.js +1 -237
  59. package/dist/view/wrapper/table/index.js +1 -1
  60. package/dist/view/wrapper/table/one-dimension-table-with-numeric-columns.js +3 -3
  61. package/dist/view/wrapper/table/pivot-table-display-name.js +1 -1
  62. package/dist/view/wrapper/table/two-dimension-table.js +8 -8
  63. package/dist/view/wrapper/table-element/components/formatter.js +2 -2
  64. package/dist/view/wrapper/table-element/components/formatters/FileFormatter/index.js +1 -1
  65. package/dist/view/wrapper/table-element/components/formatters/link-formatter.js +17 -17
  66. package/dist/view/wrapper/table-element/components/link-formatter.js +17 -17
  67. package/dist/view/wrapper/table-element/components/record.js +3 -3
  68. package/dist/view/wrapper/table-element/components/records.js +4 -4
  69. package/dist/view/wrapper/table-element/components/utils.js +1 -1
  70. package/dist/view/wrapper/trend.js +18 -18
  71. package/package.json +5 -11
  72. package/dist/utils/custom-g2.js +0 -684
  73. package/dist/view/wrapper/area.js +0 -282
  74. package/dist/view/wrapper/bar-custom.js +0 -239
  75. package/dist/view/wrapper/bar-group.js +0 -274
  76. package/dist/view/wrapper/combination.js +0 -728
  77. package/dist/view/wrapper/compare.js +0 -383
  78. package/dist/view/wrapper/completeness.js +0 -174
  79. package/dist/view/wrapper/dashboard.js +0 -179
  80. package/dist/view/wrapper/funnel.js +0 -206
  81. package/dist/view/wrapper/heat-map.js +0 -434
  82. package/dist/view/wrapper/horizontal-bar-group.js +0 -226
  83. package/dist/view/wrapper/horizontal-bar.js +0 -175
  84. package/dist/view/wrapper/horizontal-component.js +0 -89
  85. package/dist/view/wrapper/line-group.js +0 -219
  86. package/dist/view/wrapper/line.js +0 -222
  87. package/dist/view/wrapper/map.js +0 -368
  88. package/dist/view/wrapper/mirror.js +0 -218
  89. package/dist/view/wrapper/pie.js +0 -253
  90. package/dist/view/wrapper/ring.js +0 -328
  91. package/dist/view/wrapper/scatter.js +0 -140
  92. package/dist/view/wrapper/treemap.js +0 -206
  93. package/dist/view/wrapper/world-map.js +0 -413
  94. package/dist/view/wrapper/wrappers-d3/bar.js +0 -262
@@ -1,218 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _classnames = _interopRequireDefault(require("classnames"));
11
- var _dtableUtils = require("dtable-utils");
12
- var _intl = _interopRequireDefault(require("../../intl"));
13
- var _utils = require("../../utils");
14
- var _constants = require("../../constants");
15
- var _chartComponent = _interopRequireDefault(require("./chart-component"));
16
- class Mirror extends _chartComponent.default {
17
- constructor(props) {
18
- super(props);
19
- this.createChart = () => {
20
- const {
21
- chart
22
- } = this.props;
23
- const {
24
- is_transpose
25
- } = chart.config;
26
- const appendPadding = is_transpose ? [35, 30, 30, 30] : [30, 100, 30, 30];
27
- const height = 520;
28
- const width = 800;
29
- this.initChart(this.container, {
30
- appendPadding,
31
- autoFit: false,
32
- height,
33
- width
34
- });
35
- this.chart.on('element:click', e => {
36
- this.props.toggleRecords(e.data.data);
37
- });
38
- };
39
- this.drawChart = () => {
40
- let {
41
- result
42
- } = this.props;
43
- const data = _utils.BaseUtils.formatEmptyName(result.data, '', _intl.default.get('Empty'));
44
- if (!Array.isArray(data)) return;
45
- this.draw({
46
- data,
47
- colorSet: result.colorSet
48
- });
49
- this.renderAxisLabel(this.props.chart, this.props.tables);
50
- };
51
- this.draw = _ref => {
52
- let {
53
- data,
54
- colorSet
55
- } = _ref;
56
- const {
57
- chart,
58
- tables
59
- } = this.props;
60
- const {
61
- summary_method,
62
- table_id,
63
- summary_type,
64
- summary_column,
65
- is_transpose
66
- } = chart.config;
67
- const themeColors = this.getThemeColors();
68
- let columnData = _constants.DEFAULT_NUMBER_FORMAT_OBJECT;
69
- if (summary_type === _constants.CHART_SUMMARY_TYPE.ADVANCED) {
70
- const table = (0, _dtableUtils.getTableById)(tables, table_id);
71
- const summaryColumn = (0, _dtableUtils.getTableColumnByKey)(table, summary_column) || {};
72
- columnData = summaryColumn.data || _constants.DEFAULT_NUMBER_FORMAT_OBJECT;
73
- }
74
- this.chart.data(data);
75
- this.chart.axis('name', {
76
- line: {
77
- style: themeColors.gridColor
78
- },
79
- label: {
80
- style: {
81
- fill: themeColors.labelColor,
82
- ...this.labelStroke
83
- },
84
- formatter: name => {
85
- let label = name;
86
- if (name.length > 5) {
87
- label = `${name.slice(0, 5)}...`;
88
- }
89
- return label;
90
- }
91
- }
92
- });
93
- this.chart.axis('value', {
94
- label: {
95
- style: {
96
- fill: themeColors.textColor
97
- }
98
- },
99
- grid: {
100
- line: {
101
- style: {
102
- stroke: themeColors.gridColor
103
- }
104
- }
105
- }
106
- });
107
- this.chart.scale({
108
- name: {
109
- sync: true
110
- },
111
- value: {
112
- sync: true,
113
- formatter: value => {
114
- return (0, _dtableUtils.getNumberDisplayString)(value, columnData);
115
- }
116
- },
117
- group_name: {
118
- sync: true
119
- },
120
- color: {
121
- sync: true
122
- }
123
- });
124
- this.chart.tooltip({
125
- showTitle: true,
126
- showMarkers: false,
127
- containerTpl: '<div class="g2-tooltip"><div class="g2-tooltip-list"></div></div>',
128
- itemTpl: '<div class="g2-tooltip-content"><div class="tooltip-name">{title}<div><div class="tooltip-item">{name}: {value}<div></div>',
129
- domStyles: {
130
- 'g2-tooltip': {
131
- borderRadius: '2px',
132
- backgroundColor: '#fff',
133
- padding: '10px'
134
- },
135
- 'tooltip-item': {
136
- marginTop: '5px'
137
- }
138
- }
139
- });
140
- this.chart.facet('mirror', {
141
- fields: ['group_name'],
142
- transpose: is_transpose,
143
- padding: 'auto',
144
- title: {
145
- style: {
146
- fill: themeColors.textColor
147
- }
148
- },
149
- eachView: (view, facet) => {
150
- if (facet.rowValue && facet.rowValue.length > 5) {
151
- facet.rowValue = facet.rowValue.slice(0, 5) + '...';
152
- }
153
- view.interval().position('name*value').color('group_name', colorSet).tooltip('name*formatted_value', (name, value) => {
154
- return {
155
- title: summary_type === 'count' ? _intl.default.get(_constants.TITLE_AMOUNT) : _intl.default.get(_constants.CHART_SUMMARY_SHOW[summary_method]),
156
- name,
157
- value
158
- };
159
- }).state({
160
- active: {
161
- style: element => {
162
- return {
163
- fillOpacity: 0.6
164
- };
165
- }
166
- }
167
- });
168
- view.interaction('active-region');
169
- }
170
- });
171
- this.chart.legend({
172
- itemName: {
173
- style: {
174
- fill: themeColors.textColor
175
- }
176
- }
177
- });
178
- this.chart.render();
179
- };
180
- this.chart = null;
181
- }
182
- componentDidMount() {
183
- this.createChart();
184
- this.drawChart();
185
- }
186
- componentDidUpdate(prevProps) {
187
- super.componentDidUpdate(prevProps);
188
- if (_utils.BaseUtils.shouldChartComponentUpdate(prevProps, this.props)) {
189
- var _this$chart;
190
- ((_this$chart = this.chart) === null || _this$chart === void 0 ? void 0 : _this$chart.autoPadding) && this.chart.destroy();
191
- this.createChart();
192
- this.drawChart();
193
- }
194
- }
195
- componentWillUnmount() {
196
- var _this$chart2;
197
- ((_this$chart2 = this.chart) === null || _this$chart2 === void 0 ? void 0 : _this$chart2.autoPadding) && this.chart.destroy();
198
- }
199
- render() {
200
- return /*#__PURE__*/_react.default.createElement("div", {
201
- className: (0, _classnames.default)('sea-chart-container w-100'),
202
- ref: ref => this.container = ref
203
- });
204
- }
205
- }
206
- Mirror.propTypes = {
207
- canvasStyle: _propTypes.default.object,
208
- chart: _propTypes.default.object,
209
- groupbyColumn: _propTypes.default.object,
210
- columnGroupbyColumn: _propTypes.default.object,
211
- summaryColumn: _propTypes.default.object,
212
- result: _propTypes.default.object,
213
- tables: _propTypes.default.array,
214
- theme: _propTypes.default.object,
215
- toggleRecords: _propTypes.default.func,
216
- customRender: _propTypes.default.func
217
- };
218
- var _default = exports.default = Mirror;
@@ -1,253 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _constants = require("dtable-ui-component/lib/constants");
11
- var _constants2 = require("../../constants");
12
- var _utils = require("../../utils");
13
- var _intl = _interopRequireDefault(require("../../intl"));
14
- var _colorRules = require("../../constants/color-rules");
15
- var _chartComponent = _interopRequireDefault(require("./chart-component"));
16
- class Pie extends _chartComponent.default {
17
- constructor(props) {
18
- super(props);
19
- this.createChart = () => {
20
- const {
21
- chart
22
- } = this.props;
23
- const {
24
- label_position
25
- } = chart.config;
26
- this.initChart(this.container, {
27
- appendPadding: label_position === _constants2.CHART_LABEL_POSITIONS[1] ? [10, 0, 10, 0] : null
28
- });
29
- };
30
- this.destroyChart = () => {
31
- this.chart.destroy();
32
- this.chart = null;
33
- };
34
- this.clearChart = () => {
35
- this.chart.annotation().clear(true);
36
- this.chart.clear(true);
37
- };
38
- this.drawChart = () => {
39
- let {
40
- result: data,
41
- chart,
42
- tables,
43
- globalTheme,
44
- chartColorTheme,
45
- summaryColumn,
46
- customRender
47
- } = this.props;
48
- const theme = _constants2.CHART_THEME_COLOR[globalTheme];
49
- if (data.length === 0) return;
50
- this.chart.coordinate('theta', {
51
- radius: 0.7
52
- });
53
- const {
54
- show_legend,
55
- display_label,
56
- label_position,
57
- label_font_size,
58
- summary_method,
59
- color_theme
60
- } = chart.config;
61
- const currentTheme = _utils.BaseUtils.getCurrentTheme(chartColorTheme);
62
- const useSingleSelectColumnColor = color_theme === _colorRules.SUPPORT_SINGLE_SELECT_THEMES_OPTIONS.SINGLE_SELECT_COLUMN_COLORS;
63
- const {
64
- data: newData,
65
- colorMap
66
- } = _utils.BaseUtils.formatPieChartData(data, chart, tables, currentTheme, useSingleSelectColumnColor);
67
- if (!Array.isArray(newData)) return;
68
- this.loadData(newData);
69
- this.chart.on('interval:click', e => {
70
- this.props.toggleRecords(e.data.data);
71
- });
72
- if (show_legend) {
73
- this.setLegendForTheta('name', theme, 'right');
74
- } else {
75
- this.chart.legend(false);
76
- }
77
-
78
- // Do not automatically adjust the maximum and minimum values in pie chart
79
- this.chart.scale({
80
- value: {
81
- nice: false
82
- }
83
- });
84
- this.isInnerLabel = !label_position || label_position === _constants2.CHART_LABEL_POSITIONS[0];
85
- this.innerLabelOffset = '-25%';
86
- this.outerLabelOffset = 20;
87
- this.currentChart = this.chart.interval().adjust('stack').position('value').color('name', name => {
88
- return colorMap[name.trim()];
89
- }).label('value*percent', (value, percent) => {
90
- const displayValue = _utils.BaseUtils.getSummaryValueDisplayString(summaryColumn, value, summary_method);
91
- return {
92
- content: this.getLabel(displayValue, percent)
93
- };
94
- }, {
95
- offset: this.isInnerLabel ? this.innerLabelOffset : this.outerLabelOffset,
96
- style: {
97
- fill: theme.labelColor,
98
- fontSize: _utils.BaseUtils.getLabelFontSize(label_font_size),
99
- ...this.labelStroke
100
- }
101
- }).tooltip('name*value*percent', (name, value, percent) => {
102
- let title = name;
103
- if (!name || name.trim() === 'undefined' || name.trim() === 'null') {
104
- title = _intl.default.get('Empty');
105
- } else if (name === '_Others') {
106
- title = _intl.default.get('Others');
107
- }
108
- const displayValue = _utils.BaseUtils.getSummaryValueDisplayString(summaryColumn, value, summary_method);
109
- return {
110
- name: title,
111
- value: display_label ? this.getLabel(displayValue, percent) : displayValue
112
- };
113
- }).state({
114
- active: {
115
- style: {
116
- fillOpacity: 0.7,
117
- border: 'none',
118
- stroke: 0
119
- }
120
- }
121
- }).shape('withClip2').style('value', value => {
122
- return {
123
- lineWidth: 2,
124
- stroke: '#fff'
125
- };
126
- });
127
- this.setToolTipForTheta();
128
- this.chart.interaction('element-highlight');
129
- this.chart.on('interval:mouseenter', evt => this.onEnterElement(evt, {
130
- summaryColumn,
131
- summaryMethod: summary_method
132
- }));
133
- this.chart.on('interval:mouseleave', evt => this.onLeaveElement(evt, {
134
- summaryColumn,
135
- summaryMethod: summary_method
136
- }));
137
- (0, _utils.isFunction)(customRender) && customRender(this.chart);
138
- requestAnimationFrame(() => {
139
- this.chart.render();
140
- });
141
- };
142
- this.onEnterElement = (evt, _ref) => {
143
- let {
144
- summaryColumn,
145
- summaryMethod
146
- } = _ref;
147
- const {
148
- label_font_size
149
- } = this.props.chart.config;
150
- const {
151
- globalTheme
152
- } = this.props;
153
- const theme = _constants2.CHART_THEME_COLOR[globalTheme];
154
- this.currentChart.label('name*value*percent', (name, value, percent) => {
155
- let displayValue;
156
- displayValue = _utils.BaseUtils.getSummaryValueDisplayString(summaryColumn, value, summaryMethod);
157
- return {
158
- content: this.getLabel(displayValue, percent)
159
- };
160
- }, {
161
- offset: this.isInnerLabel ? this.innerLabelOffset : this.outerLabelOffset,
162
- style: {
163
- fill: theme.labelColor,
164
- fontSize: _utils.BaseUtils.getLabelFontSize(label_font_size),
165
- ...this.labelStroke
166
- }
167
- });
168
- this.chart.render(true);
169
- };
170
- this.onLeaveElement = (evt, _ref2) => {
171
- let {
172
- summaryColumn,
173
- summaryMethod
174
- } = _ref2;
175
- const {
176
- summary_method,
177
- label_font_size
178
- } = this.props.chart.config;
179
- const {
180
- globalTheme
181
- } = this.props;
182
- const theme = _constants2.CHART_THEME_COLOR[globalTheme];
183
- this.currentChart.label('value*percent', (value, percent) => {
184
- let displayValue = _utils.BaseUtils.getSummaryValueDisplayString(summaryColumn, value, summary_method);
185
- return {
186
- content: this.getLabel(displayValue, percent)
187
- };
188
- }, {
189
- offset: this.isInnerLabel ? this.innerLabelOffset : this.outerLabelOffset,
190
- style: {
191
- fill: theme.labelColor,
192
- fontSize: _utils.BaseUtils.getLabelFontSize(label_font_size),
193
- ...this.labelStroke
194
- }
195
- });
196
- this.chart.render(true);
197
- };
198
- this.getLabel = (value, percent) => {
199
- const {
200
- display_label,
201
- label_format
202
- } = this.props.chart.config;
203
- if (!display_label || !value || !percent) {
204
- return '';
205
- }
206
- switch (label_format) {
207
- case _constants2.CHART_LABEL_FORMATS[0]:
208
- return percent;
209
- case _constants2.CHART_LABEL_FORMATS[1]:
210
- return value;
211
- case _constants2.CHART_LABEL_FORMATS[2]:
212
- return `${value} (${percent})`;
213
- default:
214
- return percent;
215
- }
216
- };
217
- this.chart = null;
218
- }
219
- componentDidMount() {
220
- this.createChart();
221
- this.drawChart();
222
- }
223
- componentDidUpdate(prevProps) {
224
- super.componentDidUpdate(prevProps);
225
- if (_utils.BaseUtils.shouldChartComponentUpdate(prevProps, this.props)) {
226
- this.chart && this.destroyChart();
227
- this.createChart();
228
- this.drawChart();
229
- }
230
- }
231
- componentWillUnmount() {
232
- this.chart && this.destroyChart();
233
- }
234
- render() {
235
- return /*#__PURE__*/_react.default.createElement("div", {
236
- className: "sea-chart-container ",
237
- ref: ref => this.container = ref
238
- });
239
- }
240
- }
241
- Pie.propTypes = {
242
- canvasStyle: _propTypes.default.object,
243
- chart: _propTypes.default.object,
244
- groupbyColumn: _propTypes.default.object,
245
- summaryColumn: _propTypes.default.object,
246
- result: _propTypes.default.array,
247
- tables: _propTypes.default.array,
248
- globalTheme: _propTypes.default.string,
249
- chartColorTheme: _propTypes.default.string,
250
- toggleRecords: _propTypes.default.func,
251
- customRender: _propTypes.default.func
252
- };
253
- var _default = exports.default = Pie;