@cloud-app-dev/vidc 1.0.12 → 1.0.16
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/.umirc.ts +18 -11
- package/es/AppLayout/AppHorizontalMenu/index.js +6 -2
- package/es/AppLayout/AppInlineMenu/index.js +9 -3
- package/es/InitialConfig/index.js +0 -1
- package/es/InitialRequest/index.js +4 -2
- package/es/InitialRequest/utils.js +120 -61
- package/es/OrgTree/index.js +6 -5
- package/es/WorkerFlow/Demo.d.ts +2 -0
- package/es/WorkerFlow/Demo.js +34 -0
- package/es/WorkerFlow/Form/Approver.d.ts +2 -0
- package/es/WorkerFlow/Form/Approver.js +7 -0
- package/es/WorkerFlow/Form/Condition.d.ts +2 -0
- package/es/WorkerFlow/Form/Condition.js +7 -0
- package/es/WorkerFlow/Form/FormAuth.d.ts +7 -0
- package/es/WorkerFlow/Form/FormAuth.js +116 -0
- package/es/WorkerFlow/Form/Handle.d.ts +8 -0
- package/es/WorkerFlow/Form/Handle.js +19 -0
- package/es/WorkerFlow/Form/UserSelect.d.ts +7 -0
- package/es/WorkerFlow/Form/UserSelect.js +253 -0
- package/es/WorkerFlow/Form/UserSet.d.ts +9 -0
- package/es/WorkerFlow/Form/UserSet.js +124 -0
- package/es/WorkerFlow/Form/UsersHandleType.d.ts +6 -0
- package/es/WorkerFlow/Form/UsersHandleType.js +30 -0
- package/es/WorkerFlow/Nodes/Add.d.ts +7 -0
- package/es/WorkerFlow/Nodes/Add.js +81 -0
- package/es/WorkerFlow/Nodes/AddOption.d.ts +9 -0
- package/es/WorkerFlow/Nodes/AddOption.js +23 -0
- package/es/WorkerFlow/Nodes/AddOptionList.d.ts +6 -0
- package/es/WorkerFlow/Nodes/AddOptionList.js +44 -0
- package/es/WorkerFlow/Nodes/Approver.d.ts +11 -0
- package/es/WorkerFlow/Nodes/Approver.js +53 -0
- package/es/WorkerFlow/Nodes/Condition.d.ts +9 -0
- package/es/WorkerFlow/Nodes/Condition.js +154 -0
- package/es/WorkerFlow/Nodes/Constants.d.ts +34 -0
- package/es/WorkerFlow/Nodes/Constants.js +110 -0
- package/es/WorkerFlow/Nodes/End.d.ts +6 -0
- package/es/WorkerFlow/Nodes/End.js +16 -0
- package/es/WorkerFlow/Nodes/Handle.d.ts +11 -0
- package/es/WorkerFlow/Nodes/Handle.js +53 -0
- package/es/WorkerFlow/Nodes/Node.d.ts +7 -0
- package/es/WorkerFlow/Nodes/Node.js +26 -0
- package/es/WorkerFlow/Nodes/Notifier.d.ts +11 -0
- package/es/WorkerFlow/Nodes/Notifier.js +58 -0
- package/es/WorkerFlow/Nodes/Render.d.ts +7 -0
- package/es/WorkerFlow/Nodes/Render.js +16 -0
- package/es/WorkerFlow/Nodes/Start.d.ts +11 -0
- package/es/WorkerFlow/Nodes/Start.js +26 -0
- package/es/WorkerFlow/Nodes/TitleElement.d.ts +9 -0
- package/es/WorkerFlow/Nodes/TitleElement.js +92 -0
- package/es/WorkerFlow/Nodes/Wrap.d.ts +13 -0
- package/es/WorkerFlow/Nodes/Wrap.js +29 -0
- package/es/WorkerFlow/OperatorContext.d.ts +4 -0
- package/es/WorkerFlow/OperatorContext.js +3 -0
- package/es/WorkerFlow/Tools.d.ts +8 -0
- package/es/WorkerFlow/Tools.js +80 -0
- package/es/WorkerFlow/XML/CanvasTag.d.ts +3 -0
- package/es/WorkerFlow/XML/CanvasTag.js +126 -0
- package/es/WorkerFlow/XML/EndEvent.d.ts +1 -0
- package/es/WorkerFlow/XML/EndEvent.js +14 -0
- package/es/WorkerFlow/XML/ExclusiveGateway.d.ts +8 -0
- package/es/WorkerFlow/XML/ExclusiveGateway.js +120 -0
- package/es/WorkerFlow/XML/Root.d.ts +1 -0
- package/es/WorkerFlow/XML/Root.js +5 -0
- package/es/WorkerFlow/XML/StartEvent.d.ts +5 -0
- package/es/WorkerFlow/XML/StartEvent.js +28 -0
- package/es/WorkerFlow/XML/UserTask.d.ts +5 -0
- package/es/WorkerFlow/XML/UserTask.js +45 -0
- package/es/WorkerFlow/XML/index.d.ts +3 -0
- package/es/WorkerFlow/XML/index.js +97 -0
- package/es/WorkerFlow/XML/utils.d.ts +4 -0
- package/es/WorkerFlow/XML/utils.js +47 -0
- package/es/WorkerFlow/api.d.ts +8 -0
- package/es/WorkerFlow/api.js +49 -0
- package/es/WorkerFlow/bpmn-mock.bpmn +103 -0
- package/es/WorkerFlow/data.json +83 -0
- package/es/WorkerFlow/index.css +728 -0
- package/es/WorkerFlow/index.d.ts +8 -0
- package/es/WorkerFlow/index.js +223 -0
- package/es/WorkerFlow/interface.d.ts +58 -0
- package/es/WorkerFlow/useDrawer.d.ts +14 -0
- package/es/WorkerFlow/useDrawer.js +77 -0
- package/es/WorkerFlow/useModal.d.ts +14 -0
- package/es/WorkerFlow/useModal.js +79 -0
- package/es/core.d.ts +16 -0
- package/es/index.d.ts +1 -0
- package/es/index.js +2 -1
- package/package.json +7 -2
- package/tsconfig.json +1 -0
- package/es/InitialConfig/index.css +0 -0
- package/es/InitialRequest/index.css +0 -0
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import "antd/lib/radio/style/css";
|
|
2
|
+
import _Radio from "antd/lib/radio";
|
|
3
|
+
import "antd/lib/table/style/css";
|
|
4
|
+
import _Table from "antd/lib/table";
|
|
5
|
+
import _ContentBox from "@cloud-app-dev/basic-components/es/ContentBox";
|
|
6
|
+
|
|
7
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
8
|
+
|
|
9
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
10
|
+
|
|
11
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
12
|
+
|
|
13
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
14
|
+
|
|
15
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
16
|
+
|
|
17
|
+
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."); }
|
|
18
|
+
|
|
19
|
+
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); }
|
|
20
|
+
|
|
21
|
+
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; }
|
|
22
|
+
|
|
23
|
+
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; }
|
|
24
|
+
|
|
25
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
26
|
+
|
|
27
|
+
import React, { useCallback, useEffect, useState } from 'react';
|
|
28
|
+
import { cloneDeep } from 'lodash';
|
|
29
|
+
|
|
30
|
+
function FormAuth(_ref) {
|
|
31
|
+
var form = _ref.form,
|
|
32
|
+
onChange = _ref.onChange;
|
|
33
|
+
|
|
34
|
+
var _useState = useState({
|
|
35
|
+
form: cloneDeep(form)
|
|
36
|
+
}),
|
|
37
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
38
|
+
state = _useState2[0],
|
|
39
|
+
setState = _useState2[1];
|
|
40
|
+
|
|
41
|
+
var onFormAuthChange = useCallback(function (options) {
|
|
42
|
+
var newForm = state.form;
|
|
43
|
+
newForm.forEach(function (item) {
|
|
44
|
+
if (item.name === options.name) {
|
|
45
|
+
item.auth = options.auth;
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
console.log(newForm);
|
|
49
|
+
setState(function (old) {
|
|
50
|
+
return Object.assign(Object.assign({}, old), {
|
|
51
|
+
form: _toConsumableArray(newForm)
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
}, [state.form]);
|
|
55
|
+
useEffect(function () {
|
|
56
|
+
return onChange(state.form);
|
|
57
|
+
}, [state.form]);
|
|
58
|
+
return /*#__PURE__*/React.createElement(_ContentBox.InfoBox, {
|
|
59
|
+
className: "user-form-auth-layout",
|
|
60
|
+
title: "\u8868\u5355\u64CD\u4F5C\u6743\u9650"
|
|
61
|
+
}, /*#__PURE__*/React.createElement(_Table, {
|
|
62
|
+
className: "user-form-table",
|
|
63
|
+
pagination: false,
|
|
64
|
+
rowKey: "name",
|
|
65
|
+
columns: [{
|
|
66
|
+
title: '表单字段',
|
|
67
|
+
dataIndex: 'label',
|
|
68
|
+
align: 'center'
|
|
69
|
+
}, {
|
|
70
|
+
title: '可编辑',
|
|
71
|
+
align: 'center',
|
|
72
|
+
render: function render(item) {
|
|
73
|
+
return /*#__PURE__*/React.createElement(_Radio, {
|
|
74
|
+
checked: item.auth === 1,
|
|
75
|
+
onClick: function onClick() {
|
|
76
|
+
return onFormAuthChange({
|
|
77
|
+
name: item.name,
|
|
78
|
+
auth: 1
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
}, {
|
|
84
|
+
title: '只读',
|
|
85
|
+
align: 'center',
|
|
86
|
+
render: function render(item) {
|
|
87
|
+
return /*#__PURE__*/React.createElement(_Radio, {
|
|
88
|
+
checked: item.auth === 2,
|
|
89
|
+
onClick: function onClick() {
|
|
90
|
+
return onFormAuthChange({
|
|
91
|
+
name: item.name,
|
|
92
|
+
auth: 2
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
}, {
|
|
98
|
+
title: '隐藏',
|
|
99
|
+
align: 'center',
|
|
100
|
+
render: function render(item) {
|
|
101
|
+
return /*#__PURE__*/React.createElement(_Radio, {
|
|
102
|
+
checked: item.auth === 3,
|
|
103
|
+
onClick: function onClick() {
|
|
104
|
+
return onFormAuthChange({
|
|
105
|
+
name: item.name,
|
|
106
|
+
auth: 3
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
}],
|
|
112
|
+
dataSource: state.form
|
|
113
|
+
}));
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
export default FormAuth;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NodeItem, WorkerFlowFormType } from '../interface';
|
|
2
|
+
interface IHandleFormProps {
|
|
3
|
+
form: WorkerFlowFormType[];
|
|
4
|
+
item?: NodeItem;
|
|
5
|
+
onChange: (data: any) => void;
|
|
6
|
+
}
|
|
7
|
+
declare function HandleForm({ form, item, onChange }: IHandleFormProps): JSX.Element;
|
|
8
|
+
export default HandleForm;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import UserSet from './UserSet';
|
|
3
|
+
import FormAuth from './FormAuth';
|
|
4
|
+
|
|
5
|
+
function HandleForm(_ref) {
|
|
6
|
+
var form = _ref.form,
|
|
7
|
+
item = _ref.item,
|
|
8
|
+
onChange = _ref.onChange;
|
|
9
|
+
return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(UserSet, {
|
|
10
|
+
userType: item.userType,
|
|
11
|
+
nodeUserList: item.nodeUserList,
|
|
12
|
+
onChange: onChange
|
|
13
|
+
}), /*#__PURE__*/React.createElement(FormAuth, {
|
|
14
|
+
form: form,
|
|
15
|
+
onChange: onChange
|
|
16
|
+
}));
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export default HandleForm;
|
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
import _useHttp2 from "@cloud-app-dev/basic-components/es/useHttp";
|
|
2
|
+
import "antd/lib/tag/style/css";
|
|
3
|
+
import _Tag from "antd/lib/tag";
|
|
4
|
+
import _IconFont from "@cloud-app-dev/basic-components/es/IconFont";
|
|
5
|
+
import "antd/lib/button/style/css";
|
|
6
|
+
import _Button from "antd/lib/button";
|
|
7
|
+
import "antd/lib/message/style/css";
|
|
8
|
+
import _message from "antd/lib/message";
|
|
9
|
+
|
|
10
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
11
|
+
|
|
12
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
13
|
+
|
|
14
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
15
|
+
|
|
16
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
17
|
+
|
|
18
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
19
|
+
|
|
20
|
+
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."); }
|
|
21
|
+
|
|
22
|
+
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); }
|
|
23
|
+
|
|
24
|
+
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; }
|
|
25
|
+
|
|
26
|
+
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; }
|
|
27
|
+
|
|
28
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
29
|
+
|
|
30
|
+
import { __awaiter } from "tslib";
|
|
31
|
+
import React, { useCallback, useMemo, useRef, useState, forwardRef, useImperativeHandle, useEffect } from 'react';
|
|
32
|
+
import useModal from '../useModal';
|
|
33
|
+
import api from '../api';
|
|
34
|
+
import OrgTree from '@/OrgTree';
|
|
35
|
+
import { treeHelper } from '@cloud-app-dev/utils';
|
|
36
|
+
import List from '../../List';
|
|
37
|
+
import _, { uniq } from 'lodash';
|
|
38
|
+
import chroma from 'chroma-js';
|
|
39
|
+
|
|
40
|
+
function UserSelect(_ref) {
|
|
41
|
+
var _this = this;
|
|
42
|
+
|
|
43
|
+
var _ref$userList = _ref.userList,
|
|
44
|
+
userList = _ref$userList === void 0 ? [] : _ref$userList;
|
|
45
|
+
|
|
46
|
+
var _useState = useState({
|
|
47
|
+
userList: userList
|
|
48
|
+
}),
|
|
49
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
50
|
+
state = _useState2[0],
|
|
51
|
+
setState = _useState2[1];
|
|
52
|
+
|
|
53
|
+
var modal = useModal();
|
|
54
|
+
var cRef = useRef(null);
|
|
55
|
+
var color = useMemo(function () {
|
|
56
|
+
var c = getComputedStyle(document.querySelector(':root')).getPropertyValue('--primary');
|
|
57
|
+
|
|
58
|
+
var col = _.replace(c, ' ', '');
|
|
59
|
+
|
|
60
|
+
return chroma(col).alpha(0.5).hex('rgba');
|
|
61
|
+
}, []);
|
|
62
|
+
var userModify = useCallback(function () {
|
|
63
|
+
modal.open({
|
|
64
|
+
title: '添加人员',
|
|
65
|
+
content: /*#__PURE__*/React.createElement(SelectContent, {
|
|
66
|
+
selectUsers: state.userList,
|
|
67
|
+
ref: cRef
|
|
68
|
+
}),
|
|
69
|
+
width: 800,
|
|
70
|
+
onOk: function onOk() {
|
|
71
|
+
return __awaiter(_this, void 0, void 0, /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
|
|
72
|
+
return regeneratorRuntime.wrap(function _callee$(_context) {
|
|
73
|
+
while (1) {
|
|
74
|
+
switch (_context.prev = _context.next) {
|
|
75
|
+
case 0:
|
|
76
|
+
if (!(cRef.current.userList.length > 20)) {
|
|
77
|
+
_context.next = 2;
|
|
78
|
+
break;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
return _context.abrupt("return", _message.warn('最多能选择20人!'));
|
|
82
|
+
|
|
83
|
+
case 2:
|
|
84
|
+
setState(function (old) {
|
|
85
|
+
return Object.assign(Object.assign({}, old), {
|
|
86
|
+
userList: cRef.current.userList
|
|
87
|
+
});
|
|
88
|
+
});
|
|
89
|
+
modal.close();
|
|
90
|
+
|
|
91
|
+
case 4:
|
|
92
|
+
case "end":
|
|
93
|
+
return _context.stop();
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}, _callee);
|
|
97
|
+
}));
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
}, [state.userList]);
|
|
101
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
102
|
+
className: "user-select-component"
|
|
103
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
104
|
+
className: "user-select-tools"
|
|
105
|
+
}, /*#__PURE__*/React.createElement(_Button, {
|
|
106
|
+
icon: /*#__PURE__*/React.createElement(_IconFont, {
|
|
107
|
+
type: "icon-S_Edit_Draw"
|
|
108
|
+
}),
|
|
109
|
+
type: "primary",
|
|
110
|
+
onClick: userModify
|
|
111
|
+
}, state.userList.length === 0 ? '添加人员' : '修改人员'), /*#__PURE__*/React.createElement("span", {
|
|
112
|
+
className: "placeholder"
|
|
113
|
+
}, "\u4E0D\u80FD\u8D85\u8FC720\u4EBA")), /*#__PURE__*/React.createElement("div", {
|
|
114
|
+
className: "user-list-wrapper"
|
|
115
|
+
}, state.userList.map(function (v) {
|
|
116
|
+
return /*#__PURE__*/React.createElement(_Tag, {
|
|
117
|
+
closable: true,
|
|
118
|
+
key: v.value,
|
|
119
|
+
color: color
|
|
120
|
+
}, v.name);
|
|
121
|
+
})));
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
var SelectContent = /*#__PURE__*/forwardRef(function SelectContentContent(_ref2, ref) {
|
|
125
|
+
var selectUsers = _ref2.selectUsers;
|
|
126
|
+
|
|
127
|
+
var _useState3 = useState({
|
|
128
|
+
keyword1: '',
|
|
129
|
+
keyword2: '',
|
|
130
|
+
orgId: '',
|
|
131
|
+
selectUsers: selectUsers,
|
|
132
|
+
selectIds: selectUsers.map(function (v) {
|
|
133
|
+
return v.value;
|
|
134
|
+
})
|
|
135
|
+
}),
|
|
136
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
137
|
+
state = _useState4[0],
|
|
138
|
+
setState = _useState4[1];
|
|
139
|
+
|
|
140
|
+
var _useHttp = _useHttp2('QueryOrgList', function () {
|
|
141
|
+
return api.getOrgs();
|
|
142
|
+
}),
|
|
143
|
+
_useHttp$data = _useHttp.data,
|
|
144
|
+
orgList = _useHttp$data === void 0 ? [] : _useHttp$data;
|
|
145
|
+
|
|
146
|
+
var treeData = useMemo(function () {
|
|
147
|
+
return treeHelper.computTreeList(orgList);
|
|
148
|
+
}, [orgList]);
|
|
149
|
+
var selectId = useMemo(function () {
|
|
150
|
+
return state.orgId ? state.orgId : treeData[0] ? treeData[0].id : undefined;
|
|
151
|
+
}, [treeData, state.orgId]);
|
|
152
|
+
|
|
153
|
+
var _useHttp3 = _useHttp2(['QueryUserList', selectId], function (_ref3) {
|
|
154
|
+
var _ref4 = _slicedToArray(_ref3, 2),
|
|
155
|
+
_ = _ref4[0],
|
|
156
|
+
id = _ref4[1];
|
|
157
|
+
|
|
158
|
+
return id ? api.getUsers(id) : Promise.resolve();
|
|
159
|
+
}),
|
|
160
|
+
_useHttp3$data = _useHttp3.data,
|
|
161
|
+
userList = _useHttp3$data === void 0 ? [] : _useHttp3$data;
|
|
162
|
+
|
|
163
|
+
var onUserChecked1 = useCallback(function (ids) {
|
|
164
|
+
var items = userList.filter(function (v) {
|
|
165
|
+
return ids.includes(v.id);
|
|
166
|
+
});
|
|
167
|
+
var arr = [];
|
|
168
|
+
items.forEach(function (item) {
|
|
169
|
+
arr.push({
|
|
170
|
+
key: 'userId',
|
|
171
|
+
type: 'user',
|
|
172
|
+
name: item.realName,
|
|
173
|
+
value: item.id
|
|
174
|
+
});
|
|
175
|
+
});
|
|
176
|
+
setState(function (old) {
|
|
177
|
+
return Object.assign(Object.assign({}, old), {
|
|
178
|
+
selectUsers: arr,
|
|
179
|
+
selectIds: uniq([].concat(_toConsumableArray(old.selectIds), _toConsumableArray(ids)))
|
|
180
|
+
});
|
|
181
|
+
});
|
|
182
|
+
}, [userList]);
|
|
183
|
+
var onUserChecked2 = useCallback(function (ids) {
|
|
184
|
+
return setState(function (old) {
|
|
185
|
+
return Object.assign(Object.assign({}, old), {
|
|
186
|
+
selectIds: ids
|
|
187
|
+
});
|
|
188
|
+
});
|
|
189
|
+
}, []);
|
|
190
|
+
var list1CheckedKeys = useMemo(function () {
|
|
191
|
+
return _.intersectionWith(userList, state.selectUsers, function (a, b) {
|
|
192
|
+
return a.id === b.value;
|
|
193
|
+
}).map(function (v) {
|
|
194
|
+
return v.id;
|
|
195
|
+
});
|
|
196
|
+
}, [userList, state.selectUsers]);
|
|
197
|
+
useImperativeHandle(ref, function () {
|
|
198
|
+
return {
|
|
199
|
+
userList: state.selectUsers.filter(function (v) {
|
|
200
|
+
return state.selectIds.includes(v.value);
|
|
201
|
+
})
|
|
202
|
+
};
|
|
203
|
+
}, [state.selectUsers]);
|
|
204
|
+
useEffect(function () {
|
|
205
|
+
console.log(treeData);
|
|
206
|
+
}, [treeData]);
|
|
207
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
208
|
+
className: "user-select-modal-content"
|
|
209
|
+
}, /*#__PURE__*/React.createElement(OrgTree, {
|
|
210
|
+
treeData: treeData,
|
|
211
|
+
title: "\u7EC4\u7EC7\u673A\u6784",
|
|
212
|
+
onSelect: function onSelect(ids) {
|
|
213
|
+
return setState(function (old) {
|
|
214
|
+
return Object.assign(Object.assign({}, old), {
|
|
215
|
+
orgId: ids[0]
|
|
216
|
+
});
|
|
217
|
+
});
|
|
218
|
+
},
|
|
219
|
+
activeKey: selectId
|
|
220
|
+
}), /*#__PURE__*/React.createElement(List, {
|
|
221
|
+
onChecked: onUserChecked1,
|
|
222
|
+
list: userList,
|
|
223
|
+
key: userList.length,
|
|
224
|
+
checkedKeys: list1CheckedKeys,
|
|
225
|
+
itemKey: "id",
|
|
226
|
+
itemNameKey: "realName",
|
|
227
|
+
title: "\u4EBA\u5458",
|
|
228
|
+
onKeywordChange: function onKeywordChange(v) {
|
|
229
|
+
return setState(function (old) {
|
|
230
|
+
return Object.assign(Object.assign({}, old), {
|
|
231
|
+
keyword1: v
|
|
232
|
+
});
|
|
233
|
+
});
|
|
234
|
+
},
|
|
235
|
+
keywords: state.keyword1
|
|
236
|
+
}), /*#__PURE__*/React.createElement(List, {
|
|
237
|
+
list: state.selectUsers,
|
|
238
|
+
itemKey: "value",
|
|
239
|
+
itemNameKey: "name",
|
|
240
|
+
checkedKeys: state.selectIds,
|
|
241
|
+
title: "\u5DF2\u6DFB\u52A0(".concat(state.selectUsers.length, "\u4EBA)"),
|
|
242
|
+
onKeywordChange: function onKeywordChange(v) {
|
|
243
|
+
return setState(function (old) {
|
|
244
|
+
return Object.assign(Object.assign({}, old), {
|
|
245
|
+
keyword2: v
|
|
246
|
+
});
|
|
247
|
+
});
|
|
248
|
+
},
|
|
249
|
+
keywords: state.keyword2,
|
|
250
|
+
onChecked: onUserChecked2
|
|
251
|
+
}));
|
|
252
|
+
});
|
|
253
|
+
export default UserSelect;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { MutipleUserHandleType, NodeUserType, UserSetType } from '../interface';
|
|
2
|
+
interface IUserSetProps {
|
|
3
|
+
userType?: UserSetType;
|
|
4
|
+
nodeUserList?: NodeUserType[];
|
|
5
|
+
usersHandType?: MutipleUserHandleType;
|
|
6
|
+
onChange: (data: any) => void;
|
|
7
|
+
}
|
|
8
|
+
declare function UserSet({ userType, nodeUserList, usersHandType, onChange }: IUserSetProps): JSX.Element;
|
|
9
|
+
export default UserSet;
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import "antd/lib/radio/style/css";
|
|
2
|
+
import _Radio from "antd/lib/radio";
|
|
3
|
+
import _ContentBox from "@cloud-app-dev/basic-components/es/ContentBox";
|
|
4
|
+
|
|
5
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
|
+
|
|
7
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
8
|
+
|
|
9
|
+
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."); }
|
|
10
|
+
|
|
11
|
+
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); }
|
|
12
|
+
|
|
13
|
+
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; }
|
|
14
|
+
|
|
15
|
+
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; }
|
|
16
|
+
|
|
17
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
18
|
+
|
|
19
|
+
import React, { useCallback, useEffect, useMemo, useState } from 'react';
|
|
20
|
+
import { UserSetOptions } from '../Nodes/Constants';
|
|
21
|
+
import { cloneDeep } from 'lodash';
|
|
22
|
+
import UsersHandleType from './UsersHandleType';
|
|
23
|
+
import UserSelect from './UserSelect';
|
|
24
|
+
var contentMap = {
|
|
25
|
+
1: UserSelectType1
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
function UserSet(_ref) {
|
|
29
|
+
var _ref$userType = _ref.userType,
|
|
30
|
+
userType = _ref$userType === void 0 ? 1 : _ref$userType,
|
|
31
|
+
_ref$nodeUserList = _ref.nodeUserList,
|
|
32
|
+
nodeUserList = _ref$nodeUserList === void 0 ? [] : _ref$nodeUserList,
|
|
33
|
+
usersHandType = _ref.usersHandType,
|
|
34
|
+
onChange = _ref.onChange;
|
|
35
|
+
|
|
36
|
+
var _useState = useState(_defineProperty({
|
|
37
|
+
type: userType,
|
|
38
|
+
usersHandType: usersHandType,
|
|
39
|
+
1: [],
|
|
40
|
+
2: [],
|
|
41
|
+
3: [],
|
|
42
|
+
4: [],
|
|
43
|
+
5: []
|
|
44
|
+
}, userType, cloneDeep(nodeUserList))),
|
|
45
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
46
|
+
state = _useState2[0],
|
|
47
|
+
setState = _useState2[1];
|
|
48
|
+
|
|
49
|
+
var options = useMemo(function () {
|
|
50
|
+
return Object.values(UserSetOptions);
|
|
51
|
+
}, []);
|
|
52
|
+
var Content = useMemo(function () {
|
|
53
|
+
return contentMap[state.type];
|
|
54
|
+
}, []);
|
|
55
|
+
var stateChange = useCallback(function (options) {
|
|
56
|
+
return setState(function (old) {
|
|
57
|
+
return cloneDeep(Object.assign(Object.assign({}, old), options));
|
|
58
|
+
});
|
|
59
|
+
}, []);
|
|
60
|
+
var data = useMemo(function () {
|
|
61
|
+
return {
|
|
62
|
+
userType: state.type,
|
|
63
|
+
nodeUserList: state[state.type],
|
|
64
|
+
usersHandType: state.usersHandType
|
|
65
|
+
};
|
|
66
|
+
}, [state]);
|
|
67
|
+
console.log(data);
|
|
68
|
+
useEffect(function () {
|
|
69
|
+
return onChange(data);
|
|
70
|
+
}, [data]);
|
|
71
|
+
return /*#__PURE__*/React.createElement(_ContentBox.InfoBox, {
|
|
72
|
+
title: "\u8BBE\u7F6E\u4EBA\u5458"
|
|
73
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
74
|
+
className: "user-select-type-wrapper"
|
|
75
|
+
}, /*#__PURE__*/React.createElement(_Radio.Group, {
|
|
76
|
+
className: "user-select-type-group",
|
|
77
|
+
value: state.type,
|
|
78
|
+
onChange: function onChange(e) {
|
|
79
|
+
return stateChange({
|
|
80
|
+
type: e.target.value
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
}, options.map(function (item) {
|
|
84
|
+
return /*#__PURE__*/React.createElement(_Radio, {
|
|
85
|
+
key: item.value,
|
|
86
|
+
value: item.value
|
|
87
|
+
}, item.label);
|
|
88
|
+
})), /*#__PURE__*/React.createElement(Content, {
|
|
89
|
+
users: state[state.type],
|
|
90
|
+
usersHandType: state.usersHandType,
|
|
91
|
+
onChange: function onChange(options) {
|
|
92
|
+
return stateChange(options);
|
|
93
|
+
}
|
|
94
|
+
})));
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* @desc 指定人员
|
|
98
|
+
*/
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
function UserSelectType1(_ref2) {
|
|
102
|
+
var users = _ref2.users,
|
|
103
|
+
usersHandType = _ref2.usersHandType,
|
|
104
|
+
_onChange = _ref2.onChange;
|
|
105
|
+
var userList = useMemo(function () {
|
|
106
|
+
return users.filter(function (v) {
|
|
107
|
+
return v.key === 'userId';
|
|
108
|
+
});
|
|
109
|
+
}, [users]);
|
|
110
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
111
|
+
className: "user-select-type1"
|
|
112
|
+
}, /*#__PURE__*/React.createElement(UserSelect, {
|
|
113
|
+
userList: userList
|
|
114
|
+
}), /*#__PURE__*/React.createElement(UsersHandleType, {
|
|
115
|
+
usersHandType: usersHandType,
|
|
116
|
+
onChange: function onChange(value) {
|
|
117
|
+
return _onChange({
|
|
118
|
+
usersHandType: value
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
}));
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export default UserSet;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import "antd/lib/radio/style/css";
|
|
2
|
+
import _Radio from "antd/lib/radio";
|
|
3
|
+
import React, { useMemo } from 'react';
|
|
4
|
+
import { UserHandleTypeOptions } from '../Nodes/Constants';
|
|
5
|
+
|
|
6
|
+
function UsersHandleType(_ref) {
|
|
7
|
+
var usersHandType = _ref.usersHandType,
|
|
8
|
+
_onChange = _ref.onChange;
|
|
9
|
+
var options = useMemo(function () {
|
|
10
|
+
return Object.values(UserHandleTypeOptions);
|
|
11
|
+
}, []);
|
|
12
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
13
|
+
className: "users-handle-type-content"
|
|
14
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
15
|
+
className: "handle-title"
|
|
16
|
+
}, "\u591A\u4EBA\u5BA1\u6279\u65F6\u91C7\u7528\u7684\u5BA1\u6279\u65B9\u5F0F"), /*#__PURE__*/React.createElement(_Radio.Group, {
|
|
17
|
+
className: "users-handle-type-group",
|
|
18
|
+
value: usersHandType,
|
|
19
|
+
onChange: function onChange(e) {
|
|
20
|
+
return _onChange(e.target.value);
|
|
21
|
+
}
|
|
22
|
+
}, options.map(function (item) {
|
|
23
|
+
return /*#__PURE__*/React.createElement(_Radio, {
|
|
24
|
+
key: item.value,
|
|
25
|
+
value: item.value
|
|
26
|
+
}, item.label, "(".concat(item.desc, ")"));
|
|
27
|
+
})));
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export default UsersHandleType;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import _IconFont from "@cloud-app-dev/basic-components/es/IconFont";
|
|
2
|
+
|
|
3
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
4
|
+
|
|
5
|
+
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."); }
|
|
6
|
+
|
|
7
|
+
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); }
|
|
8
|
+
|
|
9
|
+
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; }
|
|
10
|
+
|
|
11
|
+
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; }
|
|
12
|
+
|
|
13
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
14
|
+
|
|
15
|
+
import React, { useState, useContext, useEffect, useRef } from 'react';
|
|
16
|
+
import AddNodeList from './AddOptionList';
|
|
17
|
+
import WFC from '../OperatorContext';
|
|
18
|
+
import QueueAnim from 'rc-queue-anim';
|
|
19
|
+
|
|
20
|
+
function AddNode(_ref) {
|
|
21
|
+
var pRef = _ref.pRef,
|
|
22
|
+
objRef = _ref.objRef;
|
|
23
|
+
var boxRef = useRef(null);
|
|
24
|
+
|
|
25
|
+
var _useState = useState(false),
|
|
26
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
27
|
+
showPop = _useState2[0],
|
|
28
|
+
setShowPop = _useState2[1];
|
|
29
|
+
|
|
30
|
+
function onClick() {
|
|
31
|
+
setShowPop(!showPop);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
var _useContext = useContext(WFC),
|
|
35
|
+
onAddNode = _useContext.onAddNode;
|
|
36
|
+
|
|
37
|
+
function onOptionClick(type) {
|
|
38
|
+
onAddNode(type, pRef, objRef);
|
|
39
|
+
setShowPop(false);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
useEffect(function () {
|
|
43
|
+
if (!showPop) {
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
var fn = function fn(e) {
|
|
48
|
+
var _a;
|
|
49
|
+
|
|
50
|
+
var dom = (_a = boxRef.current) === null || _a === void 0 ? void 0 : _a.querySelector('.add-popover');
|
|
51
|
+
var arrs = Array.from(e.path);
|
|
52
|
+
|
|
53
|
+
if (!arrs.includes(dom)) {
|
|
54
|
+
setShowPop(false);
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
document.body.addEventListener('click', fn, false);
|
|
59
|
+
return function () {
|
|
60
|
+
document.body.removeEventListener('click', fn, false);
|
|
61
|
+
};
|
|
62
|
+
}, [showPop]);
|
|
63
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
64
|
+
className: "add-node-btn-box",
|
|
65
|
+
ref: boxRef
|
|
66
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
67
|
+
className: "add-node-btn"
|
|
68
|
+
}, /*#__PURE__*/React.createElement(QueueAnim, null, showPop ? /*#__PURE__*/React.createElement("div", {
|
|
69
|
+
className: "add-popover",
|
|
70
|
+
key: "add-popover"
|
|
71
|
+
}, /*#__PURE__*/React.createElement(AddNodeList, {
|
|
72
|
+
onOptionClick: onOptionClick
|
|
73
|
+
})) : /*#__PURE__*/React.createElement(React.Fragment, null)), /*#__PURE__*/React.createElement("span", null, /*#__PURE__*/React.createElement("button", {
|
|
74
|
+
className: "btn",
|
|
75
|
+
onClick: onClick
|
|
76
|
+
}, /*#__PURE__*/React.createElement(_IconFont, {
|
|
77
|
+
type: "icon-S_Edit_PlusLine"
|
|
78
|
+
})))));
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export default AddNode;
|