@antv/gpt-vis 0.5.4 → 0.5.6

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 (86) hide show
  1. package/dist/cjs/Area/index.d.ts +2 -3
  2. package/dist/cjs/Area/index.js +48 -5
  3. package/dist/cjs/Bar/index.d.ts +2 -2
  4. package/dist/cjs/Bar/index.js +38 -7
  5. package/dist/cjs/ChartCodeRender/VisChart.d.ts +7 -1
  6. package/dist/cjs/ChartCodeRender/VisChart.js +100 -12
  7. package/dist/cjs/ChartCodeRender/index.js +16 -2
  8. package/dist/cjs/ChartCodeRender/type.d.ts +104 -5
  9. package/dist/cjs/Column/index.d.ts +2 -3
  10. package/dist/cjs/Column/index.js +38 -7
  11. package/dist/cjs/ConfigProvider/hooks/useConfig.js +2 -1
  12. package/dist/cjs/DualAxes/index.d.ts +1 -1
  13. package/dist/cjs/DualAxes/index.js +20 -8
  14. package/dist/cjs/FishboneDiagram/index.d.ts +1 -0
  15. package/dist/cjs/FishboneDiagram/index.js +21 -7
  16. package/dist/cjs/Histogram/index.d.ts +4 -3
  17. package/dist/cjs/Histogram/index.js +32 -3
  18. package/dist/cjs/IndentedTree/index.d.ts +1 -0
  19. package/dist/cjs/IndentedTree/index.js +32 -20
  20. package/dist/cjs/Line/index.d.ts +2 -3
  21. package/dist/cjs/Line/index.js +36 -3
  22. package/dist/cjs/MindMap/index.d.ts +1 -0
  23. package/dist/cjs/MindMap/index.js +29 -21
  24. package/dist/cjs/Pie/index.d.ts +2 -2
  25. package/dist/cjs/Pie/index.js +22 -3
  26. package/dist/cjs/Radar/index.d.ts +5 -3
  27. package/dist/cjs/Radar/index.js +106 -37
  28. package/dist/cjs/Scatter/index.d.ts +2 -3
  29. package/dist/cjs/Scatter/index.js +46 -3
  30. package/dist/cjs/Treemap/index.d.ts +2 -3
  31. package/dist/cjs/Treemap/index.js +22 -3
  32. package/dist/cjs/WordCloud/index.d.ts +2 -3
  33. package/dist/cjs/WordCloud/index.js +34 -7
  34. package/dist/cjs/theme.d.ts +2 -0
  35. package/dist/cjs/theme.js +133 -0
  36. package/dist/cjs/types/chart.d.ts +11 -0
  37. package/dist/cjs/utils/palette.d.ts +2 -0
  38. package/dist/cjs/utils/palette.js +54 -0
  39. package/dist/cjs/utils/plot.d.ts +1 -0
  40. package/dist/cjs/utils/plot.js +15 -0
  41. package/dist/cjs/version.d.ts +1 -1
  42. package/dist/cjs/version.js +1 -1
  43. package/dist/esm/Area/index.d.ts +2 -3
  44. package/dist/esm/Area/index.js +80 -6
  45. package/dist/esm/Bar/index.d.ts +2 -2
  46. package/dist/esm/Bar/index.js +56 -9
  47. package/dist/esm/ChartCodeRender/VisChart.d.ts +7 -1
  48. package/dist/esm/ChartCodeRender/VisChart.js +144 -34
  49. package/dist/esm/ChartCodeRender/index.js +15 -1
  50. package/dist/esm/ChartCodeRender/type.d.ts +104 -5
  51. package/dist/esm/Column/index.d.ts +2 -3
  52. package/dist/esm/Column/index.js +56 -9
  53. package/dist/esm/ConfigProvider/hooks/useConfig.js +9 -1
  54. package/dist/esm/DualAxes/index.d.ts +1 -1
  55. package/dist/esm/DualAxes/index.js +35 -12
  56. package/dist/esm/FishboneDiagram/index.d.ts +1 -0
  57. package/dist/esm/FishboneDiagram/index.js +23 -7
  58. package/dist/esm/Histogram/index.d.ts +4 -3
  59. package/dist/esm/Histogram/index.js +55 -5
  60. package/dist/esm/IndentedTree/index.d.ts +1 -0
  61. package/dist/esm/IndentedTree/index.js +36 -29
  62. package/dist/esm/Line/index.d.ts +2 -3
  63. package/dist/esm/Line/index.js +63 -4
  64. package/dist/esm/MindMap/index.d.ts +1 -0
  65. package/dist/esm/MindMap/index.js +37 -30
  66. package/dist/esm/Pie/index.d.ts +2 -2
  67. package/dist/esm/Pie/index.js +37 -4
  68. package/dist/esm/Radar/index.d.ts +5 -3
  69. package/dist/esm/Radar/index.js +138 -42
  70. package/dist/esm/Scatter/index.d.ts +2 -3
  71. package/dist/esm/Scatter/index.js +65 -5
  72. package/dist/esm/Treemap/index.d.ts +2 -3
  73. package/dist/esm/Treemap/index.js +38 -4
  74. package/dist/esm/WordCloud/index.d.ts +2 -3
  75. package/dist/esm/WordCloud/index.js +51 -9
  76. package/dist/esm/theme.d.ts +2 -0
  77. package/dist/esm/theme.js +103 -0
  78. package/dist/esm/types/chart.d.ts +11 -0
  79. package/dist/esm/utils/palette.d.ts +2 -0
  80. package/dist/esm/utils/palette.js +2 -0
  81. package/dist/esm/utils/plot.d.ts +1 -0
  82. package/dist/esm/utils/plot.js +10 -0
  83. package/dist/esm/version.d.ts +1 -1
  84. package/dist/esm/version.js +1 -1
  85. package/dist/umd/index.min.js +1 -1
  86. package/package.json +2 -1
@@ -17,36 +17,43 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
17
17
  import { MindMap as ADCMindMap } from '@ant-design/graphs';
18
18
  import React, { useMemo } from 'react';
19
19
  import { useGraphConfig } from "../ConfigProvider/hooks";
20
+ import { G6THEME_MAP } from "../theme";
20
21
  import { visTreeData2GraphData } from "../utils/graph";
21
- var defaultConfig = {
22
- type: 'boxed',
23
- autoFit: 'view',
24
- autoResize: true,
25
- padding: 2,
26
- zoomRange: [0.1, 5],
27
- zoom: 1,
28
- node: {
29
- animation: {
30
- translate: false,
31
- update: false
32
- }
33
- },
34
- edge: {
35
- animation: {
36
- translate: false,
37
- update: false
38
- }
39
- },
40
- transforms: function transforms(prev) {
41
- return [].concat(_toConsumableArray(prev.filter(function (transform) {
42
- return transform.type !== 'collapse-expand-react-node';
43
- })), [_objectSpread(_objectSpread({}, prev.find(function (transform) {
44
- return transform.type === 'collapse-expand-react-node';
45
- })), {}, {
46
- enable: true
47
- })]);
48
- },
49
- behaviors: ['drag-canvas']
22
+ var getDefaultConfig = function getDefaultConfig(props) {
23
+ var _props$theme = props.theme,
24
+ theme = _props$theme === void 0 ? 'default' : _props$theme;
25
+ return {
26
+ type: 'boxed',
27
+ autoFit: 'view',
28
+ autoResize: true,
29
+ padding: 2,
30
+ zoomRange: [0.1, 5],
31
+ zoom: 1,
32
+ node: {
33
+ animation: {
34
+ translate: false,
35
+ update: false
36
+ }
37
+ },
38
+ edge: {
39
+ animation: {
40
+ translate: false,
41
+ update: false
42
+ }
43
+ },
44
+ transforms: function transforms(prev) {
45
+ return [].concat(_toConsumableArray(prev.filter(function (transform) {
46
+ return transform.type !== 'collapse-expand-react-node';
47
+ })), [_objectSpread(_objectSpread({}, prev.find(function (transform) {
48
+ return transform.type === 'collapse-expand-react-node';
49
+ })), {}, {
50
+ enable: true
51
+ }), _objectSpread(_objectSpread({}, prev.find(function (transform) {
52
+ return transform.key === 'assign-color-by-branch';
53
+ }) || {}), G6THEME_MAP[theme])]);
54
+ },
55
+ behaviors: ['drag-canvas']
56
+ };
50
57
  };
51
58
  var MindMap = function MindMap(props) {
52
59
  var propsData = props.data,
@@ -54,7 +61,7 @@ var MindMap = function MindMap(props) {
54
61
  var data = useMemo(function () {
55
62
  return visTreeData2GraphData(propsData);
56
63
  }, [propsData]);
57
- var config = useGraphConfig('MindMap', defaultConfig, restProps);
64
+ var config = useGraphConfig('MindMap', getDefaultConfig(props), restProps);
58
65
  return /*#__PURE__*/React.createElement(ADCMindMap, _extends({
59
66
  data: data
60
67
  }, config));
@@ -1,6 +1,6 @@
1
1
  import type { PieConfig } from '@ant-design/plots';
2
2
  import React from 'react';
3
- import type { BasePlotProps } from '../types';
3
+ import type { BasePlotProps, Theme } from '../types';
4
4
  /**
5
5
  * PieDataItem is the type for each data item in the pie chart.
6
6
  * It includes the name of the sector and its corresponding value.
@@ -16,6 +16,6 @@ type PieDataItem = {
16
16
  * the props for the Pie
17
17
  * @param data pie data
18
18
  */
19
- export type PieProps = BasePlotProps<PieDataItem> & Partial<PieConfig>;
19
+ export type PieProps = BasePlotProps<PieDataItem> & Partial<PieConfig> & Theme;
20
20
  declare const Pie: (props: PieProps) => React.JSX.Element;
21
21
  export default Pie;
@@ -1,7 +1,14 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
1
7
  import { Pie as ADCPie } from '@ant-design/plots';
2
8
  import { round, sumBy } from 'lodash';
3
9
  import React from 'react';
4
10
  import { usePlotConfig } from "../ConfigProvider/hooks";
11
+ import { THEME_MAP } from "../theme";
5
12
 
6
13
  /**
7
14
  * PieDataItem is the type for each data item in the pie chart.
@@ -21,9 +28,24 @@ var defaultConfig = function defaultConfig(props) {
21
28
  _props$angleField = props.angleField,
22
29
  angleField = _props$angleField === void 0 ? 'value' : _props$angleField,
23
30
  _props$colorField = props.colorField,
24
- colorField = _props$colorField === void 0 ? 'category' : _props$colorField;
31
+ colorField = _props$colorField === void 0 ? 'category' : _props$colorField,
32
+ _props$style = props.style,
33
+ style = _props$style === void 0 ? {} : _props$style;
25
34
  var sumValue = sumBy(data, angleField);
26
- return {
35
+ var backgroundColor = style.backgroundColor,
36
+ palette = style.palette;
37
+ var hasPalette = !!(palette !== null && palette !== void 0 && palette[0]);
38
+ var paletteConfig = {
39
+ color: undefined
40
+ };
41
+ if (hasPalette) {
42
+ paletteConfig = {
43
+ color: {
44
+ range: palette
45
+ }
46
+ };
47
+ }
48
+ return _objectSpread({
27
49
  angleField: angleField,
28
50
  colorField: colorField,
29
51
  tooltip: function tooltip(d) {
@@ -49,11 +71,22 @@ var defaultConfig = function defaultConfig(props) {
49
71
  elementSelect: {
50
72
  single: true
51
73
  }
74
+ },
75
+ scale: _objectSpread({}, paletteConfig)
76
+ }, backgroundColor ? {
77
+ viewStyle: {
78
+ viewFill: backgroundColor
52
79
  }
53
- };
80
+ } : {
81
+ viewStyle: undefined
82
+ });
54
83
  };
55
84
  var Pie = function Pie(props) {
56
- var config = usePlotConfig('Pie', defaultConfig, props);
85
+ var _props$theme;
86
+ var themeConfig = THEME_MAP[(_props$theme = props.theme) !== null && _props$theme !== void 0 ? _props$theme : 'default'];
87
+ var config = usePlotConfig('Pie', defaultConfig, _objectSpread(_objectSpread({}, props), {}, {
88
+ theme: themeConfig
89
+ }));
57
90
  return /*#__PURE__*/React.createElement(ADCPie, config);
58
91
  };
59
92
  export default Pie;
@@ -1,11 +1,13 @@
1
- import type { RadarConfig } from '@ant-design/plots';
2
1
  import React from 'react';
3
- import type { BasePlotProps } from '../types';
2
+ import type { BasePlotProps, Style, Theme } from '../types';
4
3
  export type RadarDataItem = {
5
4
  name: string;
6
5
  value: number;
7
6
  [key: string]: string | number;
8
7
  };
9
- export type RadarProps = BasePlotProps<RadarDataItem> & Partial<RadarConfig>;
8
+ export type RadarProps = BasePlotProps<RadarDataItem> & Theme & Style & {
9
+ width?: number;
10
+ height?: number;
11
+ };
10
12
  declare const Radar: (props: RadarProps) => React.JSX.Element;
11
13
  export default Radar;
@@ -1,54 +1,150 @@
1
- import { Radar as ADCRadar } from '@ant-design/plots';
2
- import { get } from 'lodash';
3
- import React from 'react';
4
- import { usePlotConfig } from "../ConfigProvider/hooks";
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
8
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
10
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
11
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
12
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
13
+ import { Chart } from '@antv/g2';
14
+ import React, { useEffect, useRef } from 'react';
15
+ import { THEME_MAP } from "../theme";
16
+ import { groupBy } from "../utils/plot";
17
+ function transformRadartoParallel(data) {
18
+ if (!data || data.length === 0) {
19
+ return [];
20
+ }
21
+ var groups = groupBy(data, function (d) {
22
+ return d.group || '';
23
+ });
24
+ return Object.entries(groups).map(function (_ref) {
25
+ var _ref2 = _slicedToArray(_ref, 2),
26
+ group = _ref2[0],
27
+ values = _ref2[1];
28
+ var paralleValues = (values || []).reduce(function (acc, _ref3) {
29
+ var name = _ref3.name,
30
+ value = _ref3.value;
31
+ acc[name] = value;
32
+ return acc;
33
+ }, {});
34
+ return _objectSpread(_objectSpread({}, paralleValues), {}, {
35
+ group: group
36
+ });
37
+ });
38
+ }
5
39
  var defaultConfig = function defaultConfig(props) {
6
40
  var data = props.data,
7
- _props$xField = props.xField,
8
- xField = _props$xField === void 0 ? 'name' : _props$xField,
9
- _props$yField = props.yField,
10
- yField = _props$yField === void 0 ? 'value' : _props$yField;
11
- var hasGroupField = get(data, '[0].group') !== undefined;
12
- return {
13
- xField: xField,
14
- yField: yField,
15
- colorField: hasGroupField ? 'group' : undefined,
16
- area: {
17
- style: {
18
- fillOpacity: 0.5
19
- }
41
+ title = props.title,
42
+ _props$theme = props.theme,
43
+ theme = _props$theme === void 0 ? 'default' : _props$theme,
44
+ _props$style = props.style,
45
+ style = _props$style === void 0 ? {} : _props$style;
46
+ var backgroundColor = style.backgroundColor,
47
+ _style$palette = style.palette,
48
+ palette = _style$palette === void 0 ? [] : _style$palette,
49
+ _style$lineWidth = style.lineWidth,
50
+ lineWidth = _style$lineWidth === void 0 ? 2 : _style$lineWidth;
51
+ var parallelData = transformRadartoParallel(data);
52
+ var position = Object.keys(parallelData[0] || {}).filter(function (key) {
53
+ return key !== 'group';
54
+ });
55
+ return _objectSpread(_objectSpread({
56
+ title: title,
57
+ autoFit: true,
58
+ theme: THEME_MAP[theme],
59
+ inset: 18,
60
+ type: 'line',
61
+ data: parallelData,
62
+ coordinate: {
63
+ type: 'radar'
64
+ },
65
+ encode: {
66
+ position: position,
67
+ color: 'group'
20
68
  },
21
- scale: {
22
- x: {
23
- padding: 0.6,
24
- align: 0
25
- },
26
- y: {
69
+ style: {
70
+ lineWidth: lineWidth,
71
+ lineCap: 'round',
72
+ lineJoin: 'round'
73
+ }
74
+ }, backgroundColor ? {
75
+ viewStyle: {
76
+ viewFill: backgroundColor
77
+ }
78
+ } : {}), {}, {
79
+ legend: {
80
+ color: parallelData.length > 1 ? {
81
+ itemMarker: 'point'
82
+ } : false
83
+ },
84
+ scale: _objectSpread(_objectSpread({}, Object.fromEntries(Array.from({
85
+ length: position.length
86
+ }, function (_, i) {
87
+ return ["position".concat(i === 0 ? '' : i), {
88
+ domainMin: 0,
27
89
  nice: true
90
+ }];
91
+ }))), palette !== null && palette !== void 0 && palette[0] ? {
92
+ color: {
93
+ range: palette
28
94
  }
29
- },
30
- axis: {
31
- x: {
32
- title: false,
33
- grid: true
34
- },
35
- y: {
95
+ } : {}),
96
+ axis: Object.fromEntries(Array.from({
97
+ length: position.length
98
+ }, function (_, i) {
99
+ return ["position".concat(i === 0 ? '' : i), {
36
100
  zIndex: 1,
37
- title: false,
38
- gridConnect: 'line',
39
- gridLineWidth: 1
101
+ titleFontSize: 10,
102
+ titleSpacing: 8,
103
+ label: true,
104
+ labelFill: theme === 'dark' ? '#fff' : '#000',
105
+ labelOpacity: 0.45,
106
+ labelFontSize: 10,
107
+ line: true,
108
+ lineFill: '#000',
109
+ lineStrokeOpacity: 0.25,
110
+ tickFilter: function tickFilter(_, idx) {
111
+ return !(i !== 0 && idx === 0);
112
+ },
113
+ tickCount: 4,
114
+ gridStrokeOpacity: 0.45,
115
+ gridStroke: theme === 'dark' ? '#fff' : '#000',
116
+ gridLineWidth: 1,
117
+ gridLineDash: [4, 4]
118
+ }];
119
+ })),
120
+ interaction: {
121
+ tooltip: {
122
+ series: false
40
123
  }
41
- },
42
- tooltip: function tooltip(d) {
43
- return {
44
- name: d[xField],
45
- value: d[yField]
46
- };
47
124
  }
48
- };
125
+ });
49
126
  };
50
127
  var Radar = function Radar(props) {
51
- var config = usePlotConfig('Radar', defaultConfig, props);
52
- return /*#__PURE__*/React.createElement(ADCRadar, config);
128
+ var containerRef = useRef(null);
129
+ var chartRef = useRef(null);
130
+ useEffect(function () {
131
+ if (!containerRef.current) return;
132
+ var chart = new Chart({
133
+ container: containerRef.current,
134
+ autoFit: true,
135
+ padding: 'auto'
136
+ });
137
+ var config = defaultConfig(props);
138
+ chart.options(config);
139
+ chart.render();
140
+ chartRef.current = chart;
141
+ return function () {
142
+ chart.destroy();
143
+ chartRef.current = null;
144
+ };
145
+ }, [props]);
146
+ return /*#__PURE__*/React.createElement("div", {
147
+ ref: containerRef
148
+ });
53
149
  };
54
150
  export default Radar;
@@ -1,11 +1,10 @@
1
- import type { ScatterConfig } from '@ant-design/plots';
2
1
  import React from 'react';
3
- import type { BasePlotProps } from '../types';
2
+ import type { BasePlotProps, Style, Theme } from '../types';
4
3
  type ScatterDataItem = {
5
4
  x: number;
6
5
  y: number;
7
6
  [key: string]: string | number;
8
7
  };
9
- export type ScatterProps = BasePlotProps<ScatterDataItem> & Partial<ScatterConfig>;
8
+ export type ScatterProps = BasePlotProps<ScatterDataItem> & Theme & Style;
10
9
  declare const Scatter: (props: ScatterProps) => React.JSX.Element;
11
10
  export default Scatter;
@@ -1,16 +1,56 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
1
7
  import { Scatter as ADCScatter } from '@ant-design/plots';
2
8
  import { get } from 'lodash';
3
9
  import React from 'react';
4
10
  import { usePlotConfig } from "../ConfigProvider/hooks";
11
+ import { THEME_MAP } from "../theme";
5
12
  var defaultConfig = function defaultConfig(props) {
13
+ var _;
6
14
  var data = props.data,
7
15
  _props$xField = props.xField,
8
16
  xField = _props$xField === void 0 ? 'x' : _props$xField,
9
17
  _props$yField = props.yField,
10
- yField = _props$yField === void 0 ? 'y' : _props$yField;
18
+ yField = _props$yField === void 0 ? 'y' : _props$yField,
19
+ _props$style = props.style,
20
+ style = _props$style === void 0 ? {} : _props$style;
21
+ var backgroundColor = style.backgroundColor,
22
+ palette = style.palette;
11
23
  var axisXTitle = get(props, 'axis.x.title');
12
24
  var axisYTitle = get(props, 'axis.y.title');
13
- return {
25
+ var hasGroupField = ((_ = (data || [])[0]) === null || _ === void 0 ? void 0 : _.group) !== undefined;
26
+ var hasPalette = !!(palette !== null && palette !== void 0 && palette[0]);
27
+ var paletteConfig = {
28
+ color: undefined
29
+ };
30
+ var encode = {};
31
+ if (hasPalette) {
32
+ paletteConfig = {
33
+ color: {
34
+ range: palette
35
+ }
36
+ };
37
+ }
38
+ if (hasGroupField) {
39
+ encode = {
40
+ x: xField,
41
+ y: yField,
42
+ color: 'group'
43
+ };
44
+ } else {
45
+ encode = {
46
+ x: xField,
47
+ y: yField,
48
+ color: function color() {
49
+ return 'all';
50
+ }
51
+ };
52
+ }
53
+ return _objectSpread({
14
54
  data: data,
15
55
  xField: xField,
16
56
  yField: yField,
@@ -20,11 +60,31 @@ var defaultConfig = function defaultConfig(props) {
20
60
  }, {
21
61
  channel: 'y',
22
62
  name: axisYTitle || 'y'
23
- }]
24
- };
63
+ }],
64
+ legend: hasGroupField ? {} : false,
65
+ encode: encode,
66
+ scale: _objectSpread({
67
+ y: {
68
+ nice: true
69
+ }
70
+ }, paletteConfig),
71
+ style: {
72
+ lineWidth: 1
73
+ }
74
+ }, backgroundColor ? {
75
+ viewStyle: {
76
+ viewFill: backgroundColor
77
+ }
78
+ } : {
79
+ viewStyle: undefined
80
+ });
25
81
  };
26
82
  var Scatter = function Scatter(props) {
27
- var config = usePlotConfig('Scatter', defaultConfig, props);
83
+ var _props$theme;
84
+ var themeConfig = THEME_MAP[(_props$theme = props.theme) !== null && _props$theme !== void 0 ? _props$theme : 'default'];
85
+ var config = usePlotConfig('Scatter', defaultConfig, _objectSpread(_objectSpread({}, props), {}, {
86
+ theme: themeConfig
87
+ }));
28
88
  return /*#__PURE__*/React.createElement(ADCScatter, config);
29
89
  };
30
90
  export default Scatter;
@@ -1,11 +1,10 @@
1
- import type { TreemapConfig } from '@ant-design/plots';
2
1
  import React from 'react';
3
- import type { BasePlotProps } from '../types';
2
+ import type { BasePlotProps, Style, Theme } from '../types';
4
3
  type TreeNode = {
5
4
  name: string;
6
5
  value: number;
7
6
  children?: TreeNode[];
8
7
  };
9
- export type TreemapProps = BasePlotProps<TreeNode> & Partial<TreemapConfig>;
8
+ export type TreemapProps = BasePlotProps<TreeNode> & Theme & Style;
10
9
  declare const Treemap: (props: TreemapProps) => React.JSX.Element;
11
10
  export default Treemap;
@@ -1,17 +1,39 @@
1
1
  var _excluded = ["data"];
2
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
3
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
4
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
4
5
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
6
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
7
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
8
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
9
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
10
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
5
11
  import { Treemap as ADCTreemap } from '@ant-design/plots';
6
12
  import React, { useMemo } from 'react';
7
13
  import { usePlotConfig } from "../ConfigProvider/hooks";
14
+ import { THEME_MAP } from "../theme";
8
15
 
9
16
  // binNumber和binWidth为互斥属性,选其一即可
10
17
 
11
18
  var defaultConfig = function defaultConfig(props) {
12
19
  var _props$valueField = props.valueField,
13
- valueField = _props$valueField === void 0 ? 'value' : _props$valueField;
14
- return {
20
+ valueField = _props$valueField === void 0 ? 'value' : _props$valueField,
21
+ _props$style = props.style,
22
+ style = _props$style === void 0 ? {} : _props$style;
23
+ var backgroundColor = style.backgroundColor,
24
+ palette = style.palette;
25
+ var hasPalette = !!(palette !== null && palette !== void 0 && palette[0]);
26
+ var paletteConfig = {
27
+ color: undefined
28
+ };
29
+ if (hasPalette) {
30
+ paletteConfig = {
31
+ color: {
32
+ range: palette
33
+ }
34
+ };
35
+ }
36
+ return _objectSpread(_objectSpread({
15
37
  legend: false,
16
38
  layout: {
17
39
  tile: 'treemapBinary',
@@ -31,7 +53,15 @@ var defaultConfig = function defaultConfig(props) {
31
53
  fillOpacity: 0.8,
32
54
  labelFontSize: 12
33
55
  }
34
- };
56
+ }, backgroundColor ? {
57
+ viewStyle: {
58
+ viewFill: backgroundColor
59
+ }
60
+ } : {
61
+ viewStyle: undefined
62
+ }), {}, {
63
+ scale: _objectSpread({}, paletteConfig)
64
+ });
35
65
  };
36
66
  var transform = function transform(data) {
37
67
  return {
@@ -40,7 +70,11 @@ var transform = function transform(data) {
40
70
  };
41
71
  };
42
72
  var Treemap = function Treemap(props) {
43
- var config = usePlotConfig('Treemap', defaultConfig, props);
73
+ var _props$theme;
74
+ var themeConfig = THEME_MAP[(_props$theme = props.theme) !== null && _props$theme !== void 0 ? _props$theme : 'default'];
75
+ var config = usePlotConfig('Treemap', defaultConfig, _objectSpread(_objectSpread({}, props), {}, {
76
+ theme: themeConfig
77
+ }));
44
78
  var data = config.data,
45
79
  others = _objectWithoutProperties(config, _excluded);
46
80
  var transformData = useMemo(function () {
@@ -1,10 +1,9 @@
1
- import type { WordCloudConfig } from '@ant-design/plots';
2
1
  import { type FC } from 'react';
3
- import type { BasePlotProps } from '../types';
2
+ import type { BasePlotProps, Style, Theme } from '../types';
4
3
  type WordCloudDataItem = {
5
4
  text: string;
6
5
  value: number;
7
6
  };
8
- export type WordCloudProps = BasePlotProps<WordCloudDataItem> & Partial<WordCloudConfig>;
7
+ export type WordCloudProps = BasePlotProps<WordCloudDataItem> & Theme & Style;
9
8
  declare const WordCloud: FC<WordCloudProps>;
10
9
  export default WordCloud;
@@ -1,17 +1,59 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
1
7
  import { WordCloud as ADCWordCloud } from '@ant-design/plots';
2
8
  import React from 'react';
3
9
  import { usePlotConfig } from "../ConfigProvider/hooks";
4
- var defaultConfig = {
5
- autoFit: true,
6
- layout: {
7
- fontSize: [20, 100]
8
- },
9
- colorField: 'text',
10
- legend: false,
11
- tooltip: false
10
+ import { THEME_MAP } from "../theme";
11
+ var defaultConfig = function defaultConfig(props) {
12
+ var data = props.data,
13
+ _props$style = props.style,
14
+ style = _props$style === void 0 ? {} : _props$style;
15
+ var backgroundColor = style.backgroundColor,
16
+ palette = style.palette;
17
+ var hasPalette = !!(palette !== null && palette !== void 0 && palette[0]);
18
+ var paletteConfig = {
19
+ color: undefined
20
+ };
21
+ if (hasPalette) {
22
+ paletteConfig = {
23
+ color: {
24
+ range: palette
25
+ }
26
+ };
27
+ }
28
+ return _objectSpread(_objectSpread({
29
+ data: data,
30
+ layout: {
31
+ fontSize: [20, 100]
32
+ },
33
+ colorField: 'text',
34
+ legend: false,
35
+ tooltip: false,
36
+ encode: {
37
+ text: 'text',
38
+ color: 'text',
39
+ value: 'value'
40
+ }
41
+ }, backgroundColor ? {
42
+ viewStyle: {
43
+ viewFill: backgroundColor
44
+ }
45
+ } : {
46
+ viewStyle: undefined
47
+ }), {}, {
48
+ scale: _objectSpread({}, paletteConfig)
49
+ });
12
50
  };
13
51
  var WordCloud = function WordCloud(props) {
14
- var config = usePlotConfig('WordCloud', defaultConfig, props);
52
+ var _props$theme;
53
+ var themeConfig = THEME_MAP[(_props$theme = props.theme) !== null && _props$theme !== void 0 ? _props$theme : 'default'];
54
+ var config = usePlotConfig('WordCloud', defaultConfig, _objectSpread(_objectSpread({}, props), {}, {
55
+ theme: themeConfig
56
+ }));
15
57
  return /*#__PURE__*/React.createElement(ADCWordCloud, config);
16
58
  };
17
59
  export default WordCloud;