@zgfe/business-lib 1.0.7 → 1.0.10

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 (73) hide show
  1. package/es/addToPanel/components/addPanel.d.ts +7 -0
  2. package/es/addToPanel/components/addPanel.js +101 -0
  3. package/es/addToPanel/components/radioGroup.d.ts +7 -0
  4. package/es/addToPanel/components/radioGroup.js +29 -0
  5. package/es/addToPanel/components/styleList.d.ts +5 -0
  6. package/es/{dialog/components/tab.js → addToPanel/components/styleList.js} +10 -6
  7. package/es/{dialog/demo/index2.d.ts → addToPanel/demo/edit.d.ts} +0 -0
  8. package/es/{dialog/components/list.js → addToPanel/demo/edit.js} +63 -44
  9. package/es/{dialog/demo/index3.d.ts → addToPanel/demo/index.d.ts} +0 -0
  10. package/es/addToPanel/demo/index.js +78 -0
  11. package/es/addToPanel/index.d.ts +6 -0
  12. package/es/addToPanel/index.js +233 -0
  13. package/es/addToPanel/styles/addPanel.less +25 -0
  14. package/es/addToPanel/styles/index.less +6 -0
  15. package/es/{dialog/components/styles/tab.less → addToPanel/styles/style.less} +7 -2
  16. package/es/addToPanel/types.d.ts +56 -0
  17. package/es/addToPanel/types.js +1 -0
  18. package/es/addToScene/addGroup.d.ts +11 -0
  19. package/es/addToScene/addGroup.js +34 -0
  20. package/es/addToScene/demo/index.d.ts +2 -0
  21. package/es/addToScene/demo/index.js +34 -0
  22. package/es/addToScene/index.d.ts +6 -0
  23. package/es/addToScene/index.js +187 -0
  24. package/es/addToScene/styles/index.less +23 -0
  25. package/es/addToScene/types.d.ts +29 -0
  26. package/es/addToScene/types.js +1 -0
  27. package/es/analysisLayout/demo/index.js +6 -1
  28. package/es/analysisLayout/index.d.ts +1 -0
  29. package/es/analysisLayout/index.js +1 -0
  30. package/es/assets/styles/chunks.less +14 -2
  31. package/es/attrConditions/components/stringList.js +3 -3
  32. package/es/attrConditions/demo/group.js +2 -2
  33. package/es/attrConditions/demo/index.js +1 -1
  34. package/es/attrConditions/index.js +2 -2
  35. package/es/attrConditions/types.d.ts +1 -1
  36. package/es/attributeSelector/demo/index.js +1 -1
  37. package/es/attributeSelector/index.js +12 -2
  38. package/es/attributeSelector/styles/index.less +0 -1
  39. package/es/chart/demo/index.js +36 -4
  40. package/es/chart/index.d.ts +1 -1
  41. package/es/chart/index.js +16 -5
  42. package/es/constants/apis.d.ts +8 -0
  43. package/es/constants/apis.js +8 -0
  44. package/es/dialog/demo/index.d.ts +0 -23
  45. package/es/dialog/demo/index.js +6 -129
  46. package/es/dialog/index.d.ts +1 -2
  47. package/es/dialog/index.js +14 -183
  48. package/es/dialog/types.d.ts +2 -74
  49. package/es/index.d.ts +3 -1
  50. package/es/index.js +3 -1
  51. package/es/select/index.js +4 -2
  52. package/es/select/overlay.js +3 -1
  53. package/es/select/styles/handle.less +1 -0
  54. package/es/select/types.d.ts +2 -0
  55. package/es/targetConditionGroup/demo/index.js +1 -1
  56. package/es/userCondition/conditions/propCondition.js +3 -3
  57. package/es/userGroup/demo/index.js +4 -1
  58. package/es/userGroup/index.js +1 -1
  59. package/es/utils/ajax.d.ts +21 -7
  60. package/es/utils/ajax.js +205 -111
  61. package/package.json +3 -2
  62. package/es/dialog/components/itemNode.d.ts +0 -10
  63. package/es/dialog/components/itemNode.js +0 -109
  64. package/es/dialog/components/list.d.ts +0 -5
  65. package/es/dialog/components/selectToInput.d.ts +0 -6
  66. package/es/dialog/components/selectToInput.js +0 -175
  67. package/es/dialog/components/styles/handle.less +0 -39
  68. package/es/dialog/components/styles/list.less +0 -60
  69. package/es/dialog/components/tab.d.ts +0 -5
  70. package/es/dialog/data/data.d.ts +0 -20
  71. package/es/dialog/data/data.js +0 -73
  72. package/es/dialog/demo/index2.js +0 -109
  73. package/es/dialog/demo/index3.js +0 -61
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import '../styles/addPanel.less';
3
+ declare const AddPanel: React.FC<{
4
+ onChange?: (val: any) => void;
5
+ onBack?: () => void;
6
+ }>;
7
+ export default AddPanel;
@@ -0,0 +1,101 @@
1
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
+
3
+ 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."); }
4
+
5
+ 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); }
6
+
7
+ 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; }
8
+
9
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
10
+
11
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
12
+
13
+ import { Input, Tooltip, Radio, Space } from 'antd';
14
+ import React, { useState } from 'react';
15
+ import IconFont from '../../icon/iconFont';
16
+ import '../styles/addPanel.less';
17
+ var inputOptions = [{
18
+ label: '公开',
19
+ value: 1
20
+ }, {
21
+ label: '指定人员明显',
22
+ value: 2,
23
+ title: '通过看板的共享功能指定可见成员'
24
+ }, {
25
+ label: '仅自己可见',
26
+ value: 3
27
+ }];
28
+
29
+ var AddPanel = function AddPanel(props) {
30
+ var classPrefix = 'biz-addpanel';
31
+
32
+ var _useState = useState(3),
33
+ _useState2 = _slicedToArray(_useState, 2),
34
+ radioData = _useState2[0],
35
+ setRadioData = _useState2[1];
36
+
37
+ var _useState3 = useState(''),
38
+ _useState4 = _slicedToArray(_useState3, 2),
39
+ inputData = _useState4[0],
40
+ setInputData = _useState4[1];
41
+
42
+ var onChangeRadio = function onChangeRadio(e) {
43
+ var value = e.target.value;
44
+ setRadioData(value);
45
+ if (props.onChange) props.onChange({
46
+ id: 0,
47
+ name: inputData,
48
+ open_type: value
49
+ });
50
+ };
51
+
52
+ var onInput = function onInput(e) {
53
+ e.persist();
54
+ var value = e.target.value;
55
+ setInputData(value);
56
+ if (props.onChange) props.onChange({
57
+ id: 0,
58
+ name: value,
59
+ open_type: radioData
60
+ });
61
+ };
62
+
63
+ return /*#__PURE__*/React.createElement("div", {
64
+ className: classPrefix
65
+ }, /*#__PURE__*/React.createElement("div", {
66
+ className: "".concat(classPrefix, "-input-row")
67
+ }, /*#__PURE__*/React.createElement(Input, {
68
+ className: "".concat(classPrefix, "-input"),
69
+ placeholder: "\u8F93\u5165\u770B\u677F\u540D\u79F0",
70
+ autoFocus: true,
71
+ allowClear: {
72
+ clearIcon: /*#__PURE__*/React.createElement(IconFont, {
73
+ type: 'qingchu'
74
+ })
75
+ },
76
+ onInput: onInput,
77
+ onBlur: onInput
78
+ }), /*#__PURE__*/React.createElement(Tooltip, {
79
+ title: "\u8FD4\u56DE\u9009\u62E9\u770B\u677F\u5217\u8868"
80
+ }, /*#__PURE__*/React.createElement(IconFont, {
81
+ className: "".concat(classPrefix, "-switch"),
82
+ type: "shurukuang_fanhui",
83
+ onClick: props.onBack
84
+ }))), /*#__PURE__*/React.createElement("div", {
85
+ className: "".concat(classPrefix, "-radio")
86
+ }, /*#__PURE__*/React.createElement(Radio.Group, {
87
+ value: radioData,
88
+ onChange: onChangeRadio
89
+ }, /*#__PURE__*/React.createElement(Space, {
90
+ direction: "horizontal"
91
+ }, inputOptions.map(function (item) {
92
+ return /*#__PURE__*/React.createElement(Radio, {
93
+ key: item.value,
94
+ value: item.value
95
+ }, item.title ? /*#__PURE__*/React.createElement(Tooltip, {
96
+ title: item.title
97
+ }, item.label) : item.label);
98
+ })))));
99
+ };
100
+
101
+ export default AddPanel;
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ declare const RadioGroup: React.FC<{
3
+ value?: string;
4
+ options?: any[];
5
+ onChange?: (value: any) => void;
6
+ }>;
7
+ export default RadioGroup;
@@ -0,0 +1,29 @@
1
+ import { Radio, Space } from 'antd';
2
+ import React from 'react';
3
+
4
+ var RadioGroup = function RadioGroup(props) {
5
+ var options = props.options,
6
+ onChange = props.onChange;
7
+ return /*#__PURE__*/React.createElement(Radio.Group, {
8
+ onChange: onChange,
9
+ defaultValue: props.value
10
+ }, /*#__PURE__*/React.createElement(Space, {
11
+ direction: "vertical"
12
+ }, options && options.map(function (item) {
13
+ return /*#__PURE__*/React.createElement(Radio, {
14
+ key: item.value,
15
+ value: item.value
16
+ }, item.label);
17
+ })));
18
+ };
19
+
20
+ RadioGroup.defaultProps = {
21
+ options: [{
22
+ label: '动态显示数据最多的10个分组',
23
+ value: 'dynamic'
24
+ }, {
25
+ label: '固定显示当前选择的分组',
26
+ value: 'fix'
27
+ }]
28
+ };
29
+ export default RadioGroup;
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import AddToPanel from '../types';
3
+ import '../styles/style.less';
4
+ declare const StyleList: React.FC<AddToPanel.StyleProps>;
5
+ export default StyleList;
@@ -12,10 +12,10 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
12
12
 
13
13
  import { Dropdown, Radio, Space } from 'antd';
14
14
  import React, { useState } from 'react';
15
+ import '../styles/style.less';
15
16
  import IconFont from '../../icon/iconFont';
16
- import './styles/tab.less';
17
17
 
18
- var BizTab = function BizTab(props) {
18
+ var StyleList = function StyleList(props) {
19
19
  var _props$value;
20
20
 
21
21
  var _useState = useState((_props$value = props.value) === null || _props$value === void 0 ? void 0 : _props$value.split(',')),
@@ -23,7 +23,7 @@ var BizTab = function BizTab(props) {
23
23
  tab = _useState2[0],
24
24
  setTab = _useState2[1];
25
25
 
26
- var classPrefix = 'biz-tab';
26
+ var classPrefix = 'biz-style';
27
27
 
28
28
  var ChildList = function ChildList(data) {
29
29
  var _data$children;
@@ -35,6 +35,7 @@ var BizTab = function BizTab(props) {
35
35
  }, /*#__PURE__*/React.createElement(Space, null, (_data$children = data.children) === null || _data$children === void 0 ? void 0 : _data$children.map(function (item) {
36
36
  return /*#__PURE__*/React.createElement(Radio, {
37
37
  key: item.value,
38
+ disabled: item.disabled,
38
39
  value: item.value,
39
40
  onClick: function onClick() {
40
41
  return onChange(data, item);
@@ -48,7 +49,7 @@ var BizTab = function BizTab(props) {
48
49
 
49
50
  var onChange = function onChange(data, child) {
50
51
  setTab([data.value, child.value]);
51
- props.onChange && props.onChange("".concat(data.value, ",").concat(child.value));
52
+ props.onChange && props.onChange("".concat(child.value, ",").concat(data.value));
52
53
  };
53
54
 
54
55
  var _onClick = function onClick(data) {
@@ -74,7 +75,7 @@ var BizTab = function BizTab(props) {
74
75
  return ChildList(item);
75
76
  }
76
77
  }, /*#__PURE__*/React.createElement("div", {
77
- className: "".concat(classPrefix, "-item ").concat(item.disabled ? 'disabled' : '', " ").concat(tab && tab[0] === item.value ? 'active' : ''),
78
+ className: "".concat(classPrefix, "-item").concat(item.disabled ? ' disabled' : '', " ").concat(tab && tab[0] === item.value ? 'active' : ''),
78
79
  onClick: function onClick() {
79
80
  return _onClick(item);
80
81
  }
@@ -85,4 +86,7 @@ var BizTab = function BizTab(props) {
85
86
  }));
86
87
  };
87
88
 
88
- export default BizTab;
89
+ StyleList.defaultProps = {
90
+ options: []
91
+ };
92
+ export default StyleList;
@@ -10,51 +10,70 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
10
10
 
11
11
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
12
12
 
13
- import React, { useEffect, useState } from 'react';
14
- import IconFont from '../../icon/iconFont';
15
- import { typeMenus } from '../data/data';
16
- import './styles/list.less';
17
-
18
- var BizList = function BizList(props) {
19
- var options = props.options,
20
- value = props.value,
21
- onChange = props.onChange;
22
-
23
- var _useState = useState(value || options && options[0].id),
13
+ import React, { useState } from 'react';
14
+ import { BizAddToPanel } from '@zgfe/business-lib';
15
+ import { Button } from 'antd';
16
+ var chartTypes = [{
17
+ label: '趋势图',
18
+ value: 'line',
19
+ icon: 'qushitu1'
20
+ }, {
21
+ label: '汇总图',
22
+ value: 'bar',
23
+ icon: 'huizongtu'
24
+ }, {
25
+ label: '地图',
26
+ value: 'map',
27
+ icon: 'ditu',
28
+ disabled: true
29
+ }, {
30
+ label: '表格',
31
+ value: 'table',
32
+ icon: 'biaoge',
33
+ children: [{
34
+ label: '趋势图',
35
+ value: 'line',
36
+ icon: 'qushitu1'
37
+ }, {
38
+ label: '汇总图',
39
+ value: 'bar',
40
+ icon: 'huizongtu'
41
+ }]
42
+ }, {
43
+ label: '分数',
44
+ value: 'fraction',
45
+ icon: 'fenshu'
46
+ }];
47
+ var defaultValue = {
48
+ panel: {
49
+ id: 52397,
50
+ name: '默认看板',
51
+ open_type: 1
52
+ },
53
+ name: '嗯嗯',
54
+ chartType: 'line',
55
+ showList: 'dynamic'
56
+ };
57
+ export default (function () {
58
+ var _useState = useState(false),
24
59
  _useState2 = _slicedToArray(_useState, 2),
25
- selectList = _useState2[0],
26
- setSelectList = _useState2[1];
60
+ showDialog = _useState2[0],
61
+ setShowDialog = _useState2[1];
27
62
 
28
- var classPrefix = 'biz-list';
29
- useEffect(function () {
30
- if (!value && options) {
31
- onChange && onChange(options[0].id);
63
+ return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Button, {
64
+ onClick: function onClick() {
65
+ setShowDialog(true);
66
+ }
67
+ }, "\u6DFB\u52A0\u5230\u770B\u677F"), showDialog && /*#__PURE__*/React.createElement(BizAddToPanel, {
68
+ defaultValue: defaultValue,
69
+ type: "edit",
70
+ params: {},
71
+ styleOptions: chartTypes,
72
+ onCancel: function onCancel() {
73
+ setShowDialog(false);
74
+ },
75
+ onOk: function onOk() {
76
+ setShowDialog(false);
32
77
  }
33
- }, []);
34
- return /*#__PURE__*/React.createElement("div", {
35
- className: classPrefix
36
- }, options && options.map(function (item) {
37
- return /*#__PURE__*/React.createElement("div", {
38
- key: item.id,
39
- className: "".concat(classPrefix, "-item ").concat(selectList === item.id ? 'active' : ''),
40
- onClick: function onClick() {
41
- setSelectList(function () {
42
- return item.id;
43
- });
44
- onChange && onChange(item.id);
45
- }
46
- }, /*#__PURE__*/React.createElement("div", {
47
- className: "".concat(classPrefix, "-title")
48
- }, item.icon && /*#__PURE__*/React.createElement(IconFont, {
49
- className: "".concat(classPrefix, "-icon"),
50
- type: item.icon
51
- }), item.title), /*#__PURE__*/React.createElement("div", {
52
- className: "".concat(classPrefix, "-content")
53
- }, item.content));
54
78
  }));
55
- };
56
-
57
- BizList.defaultProps = {
58
- options: typeMenus
59
- };
60
- export default BizList;
79
+ });
@@ -0,0 +1,78 @@
1
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
+
3
+ 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."); }
4
+
5
+ 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); }
6
+
7
+ 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; }
8
+
9
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
10
+
11
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
12
+
13
+ import React, { useState } from 'react';
14
+ import { BizAddToPanel } from '@zgfe/business-lib';
15
+ import { Button } from 'antd';
16
+ var chartTypes = [{
17
+ label: '趋势图',
18
+ value: 'line',
19
+ icon: 'qushitu1'
20
+ }, {
21
+ label: '汇总图',
22
+ value: 'bar',
23
+ icon: 'huizongtu'
24
+ }, {
25
+ label: '地图',
26
+ value: 'map',
27
+ icon: 'ditu',
28
+ disabled: true
29
+ }, {
30
+ label: '表格',
31
+ value: 'table',
32
+ icon: 'biaoge',
33
+ children: [{
34
+ label: '趋势图',
35
+ value: 'line',
36
+ icon: 'qushitu1'
37
+ }, {
38
+ label: '汇总图',
39
+ value: 'bar',
40
+ icon: 'huizongtu'
41
+ }]
42
+ }, {
43
+ label: '分数',
44
+ value: 'fraction',
45
+ icon: 'fenshu'
46
+ }];
47
+ var defaultValue = {
48
+ panel: {
49
+ id: 52397,
50
+ name: '默认看板',
51
+ open_type: 1
52
+ },
53
+ name: '嗯嗯',
54
+ chartType: 'line',
55
+ showList: 'dynamic'
56
+ };
57
+ export default (function () {
58
+ var _useState = useState(false),
59
+ _useState2 = _slicedToArray(_useState, 2),
60
+ showDialog = _useState2[0],
61
+ setShowDialog = _useState2[1];
62
+
63
+ return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Button, {
64
+ onClick: function onClick() {
65
+ setShowDialog(true);
66
+ }
67
+ }, "\u6DFB\u52A0\u5230\u770B\u677F"), showDialog && /*#__PURE__*/React.createElement(BizAddToPanel, {
68
+ defaultValue: defaultValue,
69
+ params: {},
70
+ styleOptions: chartTypes,
71
+ onCancel: function onCancel() {
72
+ setShowDialog(false);
73
+ },
74
+ onOk: function onOk() {
75
+ setShowDialog(false);
76
+ }
77
+ }));
78
+ });
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import AddToPanel from './types';
3
+ import './styles/index.less';
4
+ export declare const classPrefix = "biz-addtopanel";
5
+ declare const BizAddToPanel: React.FC<AddToPanel.Props>;
6
+ export default BizAddToPanel;
@@ -0,0 +1,233 @@
1
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
+
3
+ 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."); }
4
+
5
+ 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); }
6
+
7
+ 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; }
8
+
9
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
10
+
11
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
12
+
13
+ import { Button, Form, Input, notification, Skeleton } from 'antd';
14
+ import React, { useContext, useEffect, useRef, useState } from 'react';
15
+ import BizDialog from '../dialog';
16
+ import BizSelect from '../select';
17
+ import './styles/index.less';
18
+ import StyleList from './components/styleList';
19
+ import RadioGroup from './components/radioGroup';
20
+ import IconFont from '../icon/iconFont';
21
+ import AddPanel from './components/addPanel';
22
+ import request from '../utils/ajax';
23
+ import Apis from '../constants/apis';
24
+ import BizGlobalDataContext from '../context';
25
+ import _ from 'lodash';
26
+ export var classPrefix = 'biz-addtopanel';
27
+
28
+ var BizAddToPanel = function BizAddToPanel(props) {
29
+ var refForm = useRef();
30
+
31
+ var _useState = useState(false),
32
+ _useState2 = _slicedToArray(_useState, 2),
33
+ addMode = _useState2[0],
34
+ setAddMode = _useState2[1];
35
+
36
+ var _useState3 = useState([]),
37
+ _useState4 = _slicedToArray(_useState3, 2),
38
+ groupList = _useState4[0],
39
+ setGroupList = _useState4[1];
40
+
41
+ var _useState5 = useState(),
42
+ _useState6 = _slicedToArray(_useState5, 2),
43
+ formData = _useState6[0],
44
+ setFormData = _useState6[1];
45
+
46
+ var _useState7 = useState(true),
47
+ _useState8 = _slicedToArray(_useState7, 2),
48
+ ready = _useState8[0],
49
+ setReady = _useState8[1];
50
+
51
+ var _useState9 = useState(false),
52
+ _useState10 = _slicedToArray(_useState9, 2),
53
+ loading = _useState10[0],
54
+ setLoading = _useState10[1];
55
+
56
+ var _useContext = useContext(BizGlobalDataContext),
57
+ currentApp = _useContext.currentApp;
58
+
59
+ useEffect(function () {
60
+ queryGroups();
61
+
62
+ if (props.defaultValue) {
63
+ setFormData(props.defaultValue);
64
+ }
65
+
66
+ setReady(false);
67
+ }, []);
68
+
69
+ function queryGroups() {
70
+ request(Apis.queryPanelGroup, {
71
+ method: 'post',
72
+ data: {
73
+ appId: currentApp === null || currentApp === void 0 ? void 0 : currentApp.appId,
74
+ platform: (currentApp === null || currentApp === void 0 ? void 0 : currentApp.platform) || 0
75
+ }
76
+ }).then(function (res) {
77
+ if (!res) {
78
+ notification.error({
79
+ message: '获取看板列表失败'
80
+ });
81
+ return;
82
+ }
83
+
84
+ setGroupList(res.panels);
85
+ });
86
+ }
87
+
88
+ function toCreatePanel() {
89
+ var _refForm$current;
90
+
91
+ (_refForm$current = refForm.current) === null || _refForm$current === void 0 ? void 0 : _refForm$current.resetFields(['panel']);
92
+ setAddMode(true);
93
+ }
94
+
95
+ function onBack() {
96
+ var _refForm$current2;
97
+
98
+ (_refForm$current2 = refForm.current) === null || _refForm$current2 === void 0 ? void 0 : _refForm$current2.resetFields(['panel']);
99
+ setAddMode(false);
100
+ }
101
+
102
+ function onAdd() {
103
+ var _refForm$current3;
104
+
105
+ (_refForm$current3 = refForm.current) === null || _refForm$current3 === void 0 ? void 0 : _refForm$current3.submit();
106
+ }
107
+
108
+ function onSubmit(form) {
109
+ setLoading(true);
110
+
111
+ var searchParam = _.cloneDeep(props.params);
112
+
113
+ if (form.showList) {
114
+ searchParam.chosen_data = form.showList === 'dynamic' ? [] : props.showList;
115
+ }
116
+
117
+ searchParam.chartType = form.chartType;
118
+ var data = {
119
+ appId: currentApp === null || currentApp === void 0 ? void 0 : currentApp.appId,
120
+ platform: (currentApp === null || currentApp === void 0 ? void 0 : currentApp.platform) || 0,
121
+ name: form.name,
122
+ panelId: form.panel.id,
123
+ panelName: form.panel.name,
124
+ openType: form.panel.open_type,
125
+ webData: searchParam,
126
+ mobileData: searchParam
127
+ };
128
+ request(Apis.addPanel, {
129
+ method: 'post',
130
+ data: data
131
+ }).then(function () {
132
+ setLoading(false);
133
+ notification.success({
134
+ message: props.type === 'edit' ? '保存' : '添加成功'
135
+ });
136
+ if (props.onOk) props.onOk();
137
+ }).catch(function () {
138
+ setLoading(false);
139
+ });
140
+ }
141
+
142
+ return /*#__PURE__*/React.createElement(BizDialog, {
143
+ visible: true,
144
+ title: props.type === 'edit' ? '修改当前看板指标' : '向看板添加指标',
145
+ width: 520,
146
+ onCancel: props.onCancel,
147
+ onOk: onAdd,
148
+ confirmLoading: loading
149
+ }, /*#__PURE__*/React.createElement(Skeleton, {
150
+ loading: ready
151
+ }, /*#__PURE__*/React.createElement(Form, {
152
+ ref: refForm,
153
+ onFinish: onSubmit,
154
+ initialValues: formData,
155
+ requiredMark: false
156
+ }, /*#__PURE__*/React.createElement(Form.Item, {
157
+ label: "\u770B\u677F",
158
+ name: "panel",
159
+ hidden: props.type === 'edit',
160
+ rules: [{
161
+ validator: function validator(_, value) {
162
+ if (!value || !/\S+/.test(value.name)) return Promise.reject("\u8BF7".concat(addMode ? '输入' : '选择', "\u770B\u677F!"));
163
+ if (!/^[\S\s]{1,20}$/.test(value.name)) return Promise.reject('看板名称最多为20个字符!');
164
+ return Promise.resolve();
165
+ }
166
+ }]
167
+ }, addMode ? /*#__PURE__*/React.createElement(AddPanel, {
168
+ onBack: onBack
169
+ }) : /*#__PURE__*/React.createElement(BizSelect, {
170
+ options: groupList,
171
+ enableSearch: true,
172
+ placeholder: "\u9009\u62E9\u770B\u677F",
173
+ keyField: "id",
174
+ labelField: "name",
175
+ dropdownExtra: /*#__PURE__*/React.createElement(Button, {
176
+ className: "".concat(classPrefix, "-btn-add"),
177
+ type: "ghost",
178
+ onClick: toCreatePanel
179
+ }, /*#__PURE__*/React.createElement(IconFont, {
180
+ className: "".concat(classPrefix, "-icon-add"),
181
+ type: 'tianjia1'
182
+ }), " \u521B\u5EFA\u770B\u677F")
183
+ })), /*#__PURE__*/React.createElement(Form.Item, {
184
+ label: "\u540D\u79F0",
185
+ name: "name",
186
+ hidden: props.type === 'edit',
187
+ rules: [{
188
+ validator: function validator(_, value) {
189
+ if (!value || !/\S+/.test(value)) return Promise.reject('请输入指标名称!');
190
+ if (!/^[\S\s]{1,20}$/.test(value)) return Promise.reject('指标名称最多为20个字符!');
191
+ return Promise.resolve();
192
+ }
193
+ }]
194
+ }, /*#__PURE__*/React.createElement(Input, {
195
+ placeholder: "\u6307\u6807\u540D\u79F0",
196
+ size: "large",
197
+ allowClear: {
198
+ clearIcon: /*#__PURE__*/React.createElement(IconFont, {
199
+ type: 'qingchu'
200
+ })
201
+ }
202
+ })), /*#__PURE__*/React.createElement(Form.Item, {
203
+ label: "\u6837\u5F0F",
204
+ name: "chartType",
205
+ rules: [{
206
+ required: true,
207
+ message: '请选择样式'
208
+ }]
209
+ }, /*#__PURE__*/React.createElement(StyleList, {
210
+ options: props.styleOptions
211
+ })), /*#__PURE__*/React.createElement(Form.Item, {
212
+ noStyle: true,
213
+ shouldUpdate: true
214
+ }, function (_ref) {
215
+ var getFieldValue = _ref.getFieldValue;
216
+ var type = getFieldValue('chartType');
217
+ return type === 'line' || type === 'bar' ? /*#__PURE__*/React.createElement(Form.Item, {
218
+ label: "\u663E\u793A",
219
+ name: "showList",
220
+ rules: [{
221
+ required: true,
222
+ message: '请选择显示'
223
+ }]
224
+ }, /*#__PURE__*/React.createElement(RadioGroup, {
225
+ options: props.showOptions
226
+ })) : null;
227
+ }))));
228
+ };
229
+
230
+ BizAddToPanel.defaultProps = {
231
+ showList: []
232
+ };
233
+ export default BizAddToPanel;
@@ -0,0 +1,25 @@
1
+ @import '../../assets/styles/inner.less';
2
+
3
+ .biz-addpanel {
4
+ &-input-row {
5
+ display: flex;
6
+ align-items: center;
7
+ }
8
+
9
+ &-switch {
10
+ margin-left: 8px;
11
+ cursor: pointer;
12
+
13
+ &:hover {
14
+ color: @primary-color;
15
+ }
16
+ }
17
+
18
+ &-icon-add {
19
+ cursor: pointer;
20
+ }
21
+
22
+ &-radio {
23
+ margin-top: 12px;
24
+ }
25
+ }
@@ -0,0 +1,6 @@
1
+ @import '../../assets/styles/inner.less';
2
+ .biz-addtopanel {
3
+ &-btn-add {
4
+ .__text-btn();
5
+ }
6
+ }