@nocobase/plugin-workflow 0.9.1-alpha.1 → 0.9.1-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/client/AddButton.js +40 -29
- package/lib/client/WorkflowCanvas.js +1 -2
- package/lib/client/components/CollectionFieldset.js +4 -8
- package/lib/client/nodes/calculation.d.ts +2 -4
- package/lib/client/nodes/calculation.js +6 -12
- package/lib/client/nodes/condition.d.ts +4 -8
- package/lib/client/nodes/condition.js +9 -17
- package/lib/client/nodes/create.d.ts +2 -4
- package/lib/client/nodes/create.js +2 -10
- package/lib/client/nodes/delay.d.ts +2 -4
- package/lib/client/nodes/delay.js +2 -4
- package/lib/client/nodes/destroy.d.ts +2 -5
- package/lib/client/nodes/destroy.js +2 -3
- package/lib/client/nodes/index.js +172 -111
- package/lib/client/nodes/manual/AssigneesSelect.js +2 -1
- package/lib/client/nodes/manual/index.d.ts +3 -5
- package/lib/client/nodes/manual/index.js +4 -13
- package/lib/client/nodes/parallel.d.ts +1 -2
- package/lib/client/nodes/parallel.js +10 -5
- package/lib/client/nodes/query.d.ts +2 -5
- package/lib/client/nodes/query.js +2 -3
- package/lib/client/nodes/request.d.ts +7 -14
- package/lib/client/nodes/request.js +8 -15
- package/lib/client/nodes/update.d.ts +31 -27
- package/lib/client/nodes/update.js +12 -5
- package/lib/client/schemas/collection.d.ts +0 -3
- package/lib/client/schemas/collection.js +1 -6
- package/lib/client/style.js +51 -5
- package/lib/client/triggers/collection.d.ts +37 -12
- package/lib/client/triggers/collection.js +77 -46
- package/lib/client/triggers/index.d.ts +1 -1
- package/lib/client/triggers/index.js +149 -78
- package/lib/client/triggers/schedule/DateFieldsSelect.js +1 -3
- package/lib/client/triggers/schedule/ScheduleConfig.js +15 -17
- package/lib/client/triggers/schedule/index.d.ts +0 -1
- package/lib/client/triggers/schedule/index.js +1 -2
- package/package.json +10 -10
|
@@ -144,6 +144,18 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
144
144
|
|
|
145
145
|
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; }
|
|
146
146
|
|
|
147
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
148
|
+
|
|
149
|
+
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."); }
|
|
150
|
+
|
|
151
|
+
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); }
|
|
152
|
+
|
|
153
|
+
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; }
|
|
154
|
+
|
|
155
|
+
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; }
|
|
156
|
+
|
|
157
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
158
|
+
|
|
147
159
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
148
160
|
|
|
149
161
|
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
@@ -183,21 +195,14 @@ function useUpdateAction() {
|
|
|
183
195
|
if (workflow.executed) {
|
|
184
196
|
_antd().message.error((0, _locale.lang)('Node in executed workflow cannot be modified'));
|
|
185
197
|
|
|
186
|
-
return;
|
|
187
|
-
} // TODO: how to do validation separately for each field? especially disabled for dynamic fields?
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
try {
|
|
191
|
-
yield form.submit();
|
|
192
|
-
} catch (err) {
|
|
193
198
|
return;
|
|
194
199
|
}
|
|
195
200
|
|
|
201
|
+
yield form.submit();
|
|
196
202
|
yield (_api$resource$update = (_api$resource = api.resource('flow_nodes', data.id)).update) === null || _api$resource$update === void 0 ? void 0 : _api$resource$update.call(_api$resource, {
|
|
197
203
|
filterByTk: data.id,
|
|
198
204
|
values: {
|
|
199
|
-
|
|
200
|
-
config: form.values.config
|
|
205
|
+
config: form.values
|
|
201
206
|
}
|
|
202
207
|
});
|
|
203
208
|
ctx.setVisible(false);
|
|
@@ -271,7 +276,7 @@ function RemoveButton() {
|
|
|
271
276
|
const _ref = (_useFlowContext2 = (0, _FlowContext.useFlowContext)()) !== null && _useFlowContext2 !== void 0 ? _useFlowContext2 : {},
|
|
272
277
|
workflow = _ref.workflow,
|
|
273
278
|
nodes = _ref.nodes,
|
|
274
|
-
|
|
279
|
+
refresh = _ref.refresh;
|
|
275
280
|
|
|
276
281
|
const current = useNodeContext();
|
|
277
282
|
|
|
@@ -295,12 +300,10 @@ function RemoveButton() {
|
|
|
295
300
|
_onOk = _asyncToGenerator(function* () {
|
|
296
301
|
var _resource$destroy;
|
|
297
302
|
|
|
298
|
-
|
|
303
|
+
yield (_resource$destroy = resource.destroy) === null || _resource$destroy === void 0 ? void 0 : _resource$destroy.call(resource, {
|
|
299
304
|
filterByTk: current.id
|
|
300
|
-
})
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
onNodeRemoved(node);
|
|
305
|
+
});
|
|
306
|
+
refresh();
|
|
304
307
|
});
|
|
305
308
|
return _onOk.apply(this, arguments);
|
|
306
309
|
}
|
|
@@ -372,6 +375,7 @@ function JobButton() {
|
|
|
372
375
|
className: (0, _css().cx)('workflow-node-job-button', (0, _css().css)`
|
|
373
376
|
border: 2px solid #d9d9d9;
|
|
374
377
|
border-radius: 50%;
|
|
378
|
+
cursor: not-allowed;
|
|
375
379
|
`)
|
|
376
380
|
});
|
|
377
381
|
}
|
|
@@ -458,34 +462,97 @@ function JobButton() {
|
|
|
458
462
|
}
|
|
459
463
|
|
|
460
464
|
function NodeDefaultView(props) {
|
|
461
|
-
var _useFlowContext4;
|
|
465
|
+
var _useFlowContext4, _data$title;
|
|
462
466
|
|
|
467
|
+
const data = props.data,
|
|
468
|
+
children = props.children;
|
|
463
469
|
const compile = (0, _client2().useCompile)();
|
|
470
|
+
const api = (0, _client2().useAPIClient)();
|
|
464
471
|
|
|
465
472
|
const _ref3 = (_useFlowContext4 = (0, _FlowContext.useFlowContext)()) !== null && _useFlowContext4 !== void 0 ? _useFlowContext4 : {},
|
|
466
|
-
workflow = _ref3.workflow
|
|
473
|
+
workflow = _ref3.workflow,
|
|
474
|
+
refresh = _ref3.refresh;
|
|
467
475
|
|
|
468
|
-
if (!workflow) {
|
|
469
|
-
return null;
|
|
470
|
-
}
|
|
471
|
-
|
|
472
|
-
const data = props.data,
|
|
473
|
-
children = props.children;
|
|
474
476
|
const instruction = instructions.get(data.type);
|
|
475
477
|
const detailText = workflow.executed ? '{{t("View")}}' : '{{t("Configure")}}';
|
|
478
|
+
const typeTitle = compile(instruction.title);
|
|
479
|
+
|
|
480
|
+
const _useState = (0, _react().useState)((_data$title = data.title) !== null && _data$title !== void 0 ? _data$title : typeTitle),
|
|
481
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
482
|
+
editingTitle = _useState2[0],
|
|
483
|
+
setEditingTitle = _useState2[1];
|
|
484
|
+
|
|
485
|
+
const _useState3 = (0, _react().useState)(false),
|
|
486
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
487
|
+
editingConfig = _useState4[0],
|
|
488
|
+
setEditingConfig = _useState4[1];
|
|
489
|
+
|
|
490
|
+
function onChangeTitle(_x) {
|
|
491
|
+
return _onChangeTitle.apply(this, arguments);
|
|
492
|
+
}
|
|
493
|
+
|
|
494
|
+
function _onChangeTitle() {
|
|
495
|
+
_onChangeTitle = _asyncToGenerator(function* (next) {
|
|
496
|
+
var _api$resource$update2, _api$resource2;
|
|
497
|
+
|
|
498
|
+
const title = next || typeTitle;
|
|
499
|
+
setEditingTitle(title);
|
|
500
|
+
|
|
501
|
+
if (title === data.title) {
|
|
502
|
+
return;
|
|
503
|
+
}
|
|
504
|
+
|
|
505
|
+
yield (_api$resource$update2 = (_api$resource2 = api.resource('flow_nodes')).update) === null || _api$resource$update2 === void 0 ? void 0 : _api$resource$update2.call(_api$resource2, {
|
|
506
|
+
filterByTk: data.id,
|
|
507
|
+
values: {
|
|
508
|
+
title
|
|
509
|
+
}
|
|
510
|
+
});
|
|
511
|
+
refresh();
|
|
512
|
+
});
|
|
513
|
+
return _onChangeTitle.apply(this, arguments);
|
|
514
|
+
}
|
|
515
|
+
|
|
516
|
+
function onOpenDrawer(ev) {
|
|
517
|
+
if (ev.target === ev.currentTarget) {
|
|
518
|
+
setEditingConfig(true);
|
|
519
|
+
return;
|
|
520
|
+
}
|
|
521
|
+
|
|
522
|
+
const whiteSet = new Set(['workflow-node-meta', 'workflow-node-config-button', 'ant-input-disabled']);
|
|
523
|
+
|
|
524
|
+
for (let el = ev.target; el && el !== ev.currentTarget; el = el.parentNode) {
|
|
525
|
+
if (Array.from(el.classList).some(name => whiteSet.has(name))) {
|
|
526
|
+
setEditingConfig(true);
|
|
527
|
+
ev.stopPropagation();
|
|
528
|
+
return;
|
|
529
|
+
}
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
|
|
476
533
|
return _react().default.createElement("div", {
|
|
477
534
|
className: (0, _css().cx)(_style.nodeClass, `workflow-node-type-${data.type}`)
|
|
478
535
|
}, _react().default.createElement("div", {
|
|
479
|
-
className: (0, _css().cx)(_style.nodeCardClass
|
|
536
|
+
className: (0, _css().cx)(_style.nodeCardClass, {
|
|
537
|
+
configuring: editingConfig
|
|
538
|
+
}),
|
|
539
|
+
onClick: onOpenDrawer
|
|
480
540
|
}, _react().default.createElement("div", {
|
|
481
|
-
className: (0, _css().cx)(_style.
|
|
482
|
-
}, _react().default.createElement("
|
|
483
|
-
className: (0, _css().cx)(_style.nodeMetaClass)
|
|
484
|
-
}, _react().default.createElement(_antd().Tag, null, compile(instruction.title))), _react().default.createElement("h4", {
|
|
485
|
-
className: (0, _css().cx)(_style.nodeTitleClass)
|
|
486
|
-
}, _react().default.createElement("strong", null, data.title), _react().default.createElement("span", {
|
|
541
|
+
className: (0, _css().cx)(_style.nodeMetaClass, 'workflow-node-meta')
|
|
542
|
+
}, _react().default.createElement(_antd().Tag, null, typeTitle), _react().default.createElement("span", {
|
|
487
543
|
className: "workflow-node-id"
|
|
488
|
-
},
|
|
544
|
+
}, data.id)), _react().default.createElement("div", null, _react().default.createElement(_antd().Input.TextArea, {
|
|
545
|
+
disabled: workflow.executed,
|
|
546
|
+
value: editingTitle,
|
|
547
|
+
onChange: ev => setEditingTitle(ev.target.value),
|
|
548
|
+
onBlur: ev => onChangeTitle(ev.target.value),
|
|
549
|
+
autoSize: true
|
|
550
|
+
})), _react().default.createElement(RemoveButton, null), _react().default.createElement(JobButton, null), _react().default.createElement(_client2().ActionContext.Provider, {
|
|
551
|
+
value: {
|
|
552
|
+
visible: editingConfig,
|
|
553
|
+
setVisible: setEditingConfig
|
|
554
|
+
}
|
|
555
|
+
}, _react().default.createElement(_client2().SchemaComponent, {
|
|
489
556
|
scope: instruction.scope,
|
|
490
557
|
components: instruction.components,
|
|
491
558
|
schema: {
|
|
@@ -493,99 +560,93 @@ function NodeDefaultView(props) {
|
|
|
493
560
|
properties: _objectSpread(_objectSpread({}, instruction.view ? {
|
|
494
561
|
view: instruction.view
|
|
495
562
|
} : {}), {}, {
|
|
496
|
-
|
|
563
|
+
button: {
|
|
497
564
|
type: 'void',
|
|
498
|
-
|
|
499
|
-
'x-component':
|
|
565
|
+
'x-content': detailText,
|
|
566
|
+
'x-component': _antd().Button,
|
|
500
567
|
'x-component-props': {
|
|
501
|
-
type: '
|
|
568
|
+
type: 'link',
|
|
569
|
+
className: 'workflow-node-config-button'
|
|
570
|
+
}
|
|
571
|
+
},
|
|
572
|
+
[`${instruction.type}_${data.id}`]: {
|
|
573
|
+
type: 'void',
|
|
574
|
+
title: instruction.title,
|
|
575
|
+
'x-component': 'Action.Drawer',
|
|
576
|
+
'x-decorator': 'Form',
|
|
577
|
+
'x-decorator-props': {
|
|
578
|
+
disabled: workflow.executed,
|
|
579
|
+
|
|
580
|
+
useValues(options) {
|
|
581
|
+
const _useNodeContext2 = useNodeContext(),
|
|
582
|
+
config = _useNodeContext2.config;
|
|
583
|
+
|
|
584
|
+
return (0, _client2().useRequest)(() => {
|
|
585
|
+
return Promise.resolve({
|
|
586
|
+
data: config
|
|
587
|
+
});
|
|
588
|
+
}, options);
|
|
589
|
+
}
|
|
590
|
+
|
|
502
591
|
},
|
|
503
|
-
properties: {
|
|
504
|
-
|
|
592
|
+
properties: _objectSpread(_objectSpread({}, workflow.executed ? {
|
|
593
|
+
alert: {
|
|
505
594
|
type: 'void',
|
|
506
|
-
|
|
507
|
-
'x-component':
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
595
|
+
'x-component': _antd().Alert,
|
|
596
|
+
'x-component-props': {
|
|
597
|
+
type: 'warning',
|
|
598
|
+
showIcon: true,
|
|
599
|
+
message: `{{t("Node in executed workflow cannot be modified", { ns: "${_locale.NAMESPACE}" })}}`,
|
|
600
|
+
className: (0, _css().css)`
|
|
601
|
+
width: 100%;
|
|
602
|
+
font-size: 85%;
|
|
603
|
+
margin-bottom: 2em;
|
|
604
|
+
`
|
|
605
|
+
}
|
|
606
|
+
}
|
|
607
|
+
} : {}), {}, {
|
|
608
|
+
fieldset: {
|
|
609
|
+
type: 'void',
|
|
610
|
+
'x-component': 'fieldset',
|
|
611
|
+
'x-component-props': {
|
|
612
|
+
className: (0, _css().css)`
|
|
613
|
+
.ant-input,
|
|
614
|
+
.ant-select,
|
|
615
|
+
.ant-cascader-picker,
|
|
616
|
+
.ant-picker,
|
|
617
|
+
.ant-input-number,
|
|
618
|
+
.ant-input-affix-wrapper{
|
|
619
|
+
width: auto;
|
|
620
|
+
min-width: 6em;
|
|
621
|
+
}
|
|
622
|
+
`
|
|
521
623
|
},
|
|
522
|
-
properties:
|
|
523
|
-
|
|
524
|
-
|
|
624
|
+
properties: instruction.fieldset
|
|
625
|
+
},
|
|
626
|
+
actions: workflow.executed ? null : {
|
|
627
|
+
type: 'void',
|
|
628
|
+
'x-component': 'Action.Drawer.Footer',
|
|
629
|
+
properties: {
|
|
630
|
+
cancel: {
|
|
631
|
+
title: '{{t("Cancel")}}',
|
|
632
|
+
'x-component': 'Action',
|
|
525
633
|
'x-component-props': {
|
|
526
|
-
|
|
527
|
-
showIcon: true,
|
|
528
|
-
message: `{{t("Node in executed workflow cannot be modified", { ns: "${_locale.NAMESPACE}" })}}`,
|
|
529
|
-
className: (0, _css().css)`
|
|
530
|
-
width: 100%;
|
|
531
|
-
font-size: 85%;
|
|
532
|
-
margin-bottom: 2em;
|
|
533
|
-
`
|
|
634
|
+
useAction: '{{ cm.useCancelAction }}'
|
|
534
635
|
}
|
|
535
|
-
}
|
|
536
|
-
} : {}), {}, {
|
|
537
|
-
title: {
|
|
538
|
-
type: 'string',
|
|
539
|
-
name: 'title',
|
|
540
|
-
title: '{{t("Name")}}',
|
|
541
|
-
'x-decorator': 'FormItem',
|
|
542
|
-
'x-component': 'Input'
|
|
543
636
|
},
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
'x-component': 'fieldset',
|
|
637
|
+
submit: {
|
|
638
|
+
title: '{{t("Submit")}}',
|
|
639
|
+
'x-component': 'Action',
|
|
548
640
|
'x-component-props': {
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
.ant-select,
|
|
552
|
-
.ant-cascader-picker,
|
|
553
|
-
.ant-picker,
|
|
554
|
-
.ant-input-number,
|
|
555
|
-
.ant-input-affix-wrapper{
|
|
556
|
-
width: auto;
|
|
557
|
-
min-width: 6em;
|
|
558
|
-
}
|
|
559
|
-
`
|
|
560
|
-
},
|
|
561
|
-
properties: instruction.fieldset
|
|
562
|
-
},
|
|
563
|
-
actions: workflow.executed ? null : {
|
|
564
|
-
type: 'void',
|
|
565
|
-
'x-component': 'Action.Drawer.Footer',
|
|
566
|
-
properties: {
|
|
567
|
-
cancel: {
|
|
568
|
-
title: '{{t("Cancel")}}',
|
|
569
|
-
'x-component': 'Action',
|
|
570
|
-
'x-component-props': {
|
|
571
|
-
useAction: '{{ cm.useCancelAction }}'
|
|
572
|
-
}
|
|
573
|
-
},
|
|
574
|
-
submit: {
|
|
575
|
-
title: '{{t("Submit")}}',
|
|
576
|
-
'x-component': 'Action',
|
|
577
|
-
'x-component-props': {
|
|
578
|
-
type: 'primary',
|
|
579
|
-
useAction: useUpdateAction
|
|
580
|
-
}
|
|
581
|
-
}
|
|
641
|
+
type: 'primary',
|
|
642
|
+
useAction: useUpdateAction
|
|
582
643
|
}
|
|
583
644
|
}
|
|
584
|
-
}
|
|
645
|
+
}
|
|
585
646
|
}
|
|
586
|
-
}
|
|
647
|
+
})
|
|
587
648
|
}
|
|
588
649
|
})
|
|
589
650
|
}
|
|
590
|
-
})), children);
|
|
651
|
+
}))), children);
|
|
591
652
|
}
|
|
@@ -8,9 +8,8 @@ declare const _default: {
|
|
|
8
8
|
type: string;
|
|
9
9
|
group: string;
|
|
10
10
|
fieldset: {
|
|
11
|
-
|
|
11
|
+
assignees: {
|
|
12
12
|
type: string;
|
|
13
|
-
name: string;
|
|
14
13
|
title: string;
|
|
15
14
|
'x-decorator': string;
|
|
16
15
|
'x-component': string;
|
|
@@ -18,9 +17,8 @@ declare const _default: {
|
|
|
18
17
|
required: boolean;
|
|
19
18
|
default: any[];
|
|
20
19
|
};
|
|
21
|
-
|
|
20
|
+
mode: {
|
|
22
21
|
type: string;
|
|
23
|
-
name: string;
|
|
24
22
|
title: string;
|
|
25
23
|
'x-decorator': string;
|
|
26
24
|
'x-component': string;
|
|
@@ -34,7 +32,7 @@ declare const _default: {
|
|
|
34
32
|
};
|
|
35
33
|
};
|
|
36
34
|
};
|
|
37
|
-
|
|
35
|
+
schema: {
|
|
38
36
|
type: string;
|
|
39
37
|
title: string;
|
|
40
38
|
'x-decorator': string;
|
|
@@ -54,33 +54,24 @@ var _default = {
|
|
|
54
54
|
type: 'manual',
|
|
55
55
|
group: 'manual',
|
|
56
56
|
fieldset: {
|
|
57
|
-
|
|
57
|
+
assignees: {
|
|
58
58
|
type: 'array',
|
|
59
|
-
name: 'config.assignees',
|
|
60
59
|
title: `{{t("Assignees", { ns: "${_locale.NAMESPACE}" })}}`,
|
|
61
60
|
'x-decorator': 'FormItem',
|
|
62
61
|
'x-component': 'AssigneesSelect',
|
|
63
62
|
'x-component-props': {// multiple: true,
|
|
64
|
-
// fieldNames: {
|
|
65
|
-
// label: 'nickname',
|
|
66
|
-
// value: 'id',
|
|
67
|
-
// },
|
|
68
|
-
// service: {
|
|
69
|
-
// resource: 'users'
|
|
70
|
-
// },
|
|
71
63
|
},
|
|
72
64
|
required: true,
|
|
73
65
|
default: []
|
|
74
66
|
},
|
|
75
|
-
|
|
67
|
+
mode: {
|
|
76
68
|
type: 'number',
|
|
77
|
-
name: 'config.mode',
|
|
78
69
|
title: `{{t("Mode", { ns: "${_locale.NAMESPACE}" })}}`,
|
|
79
70
|
'x-decorator': 'FormItem',
|
|
80
71
|
'x-component': 'ModeConfig',
|
|
81
72
|
default: 1,
|
|
82
73
|
'x-reactions': {
|
|
83
|
-
dependencies: ['
|
|
74
|
+
dependencies: ['assignees'],
|
|
84
75
|
fulfill: {
|
|
85
76
|
state: {
|
|
86
77
|
visible: '{{$deps[0].length > 1}}'
|
|
@@ -88,7 +79,7 @@ var _default = {
|
|
|
88
79
|
}
|
|
89
80
|
}
|
|
90
81
|
},
|
|
91
|
-
|
|
82
|
+
schema: {
|
|
92
83
|
type: 'void',
|
|
93
84
|
title: `{{t("User interface", { ns: "${_locale.NAMESPACE}" })}}`,
|
|
94
85
|
'x-decorator': 'FormItem',
|
|
@@ -78,9 +78,8 @@ var _default = {
|
|
|
78
78
|
type: 'parallel',
|
|
79
79
|
group: 'control',
|
|
80
80
|
fieldset: {
|
|
81
|
-
|
|
81
|
+
mode: {
|
|
82
82
|
type: 'string',
|
|
83
|
-
name: 'config.mode',
|
|
84
83
|
title: `{{t("Mode", { ns: "${_locale.NAMESPACE}" })}}`,
|
|
85
84
|
'x-decorator': 'FormItem',
|
|
86
85
|
'x-component': 'RadioWithTooltip',
|
|
@@ -109,6 +108,7 @@ var _default = {
|
|
|
109
108
|
mode = data.config.mode;
|
|
110
109
|
|
|
111
110
|
const _useFlowContext = (0, _FlowContext.useFlowContext)(),
|
|
111
|
+
workflow = _useFlowContext.workflow,
|
|
112
112
|
nodes = _useFlowContext.nodes;
|
|
113
113
|
|
|
114
114
|
const branches = nodes.reduce((result, node) => {
|
|
@@ -154,7 +154,8 @@ var _default = {
|
|
|
154
154
|
}, _react().default.createElement(_antd().Button, {
|
|
155
155
|
shape: "circle",
|
|
156
156
|
icon: _react().default.createElement(_icons().PlusOutlined, null),
|
|
157
|
-
onClick: () => setBranchCount(branchCount - 1)
|
|
157
|
+
onClick: () => setBranchCount(branchCount - 1),
|
|
158
|
+
disabled: workflow.executed
|
|
158
159
|
})) : null
|
|
159
160
|
}))), _react().default.createElement("div", {
|
|
160
161
|
className: (0, _css().css)`
|
|
@@ -162,7 +163,10 @@ var _default = {
|
|
|
162
163
|
height: 2em;
|
|
163
164
|
`
|
|
164
165
|
}, _react().default.createElement(_antd().Tooltip, {
|
|
165
|
-
title: (0, _locale.lang)('Add branch')
|
|
166
|
+
title: (0, _locale.lang)('Add branch'),
|
|
167
|
+
className: (0, _css().css)`
|
|
168
|
+
visibility: ${workflow.executed ? 'hidden' : 'visible'}
|
|
169
|
+
`
|
|
166
170
|
}, _react().default.createElement(_antd().Button, {
|
|
167
171
|
icon: _react().default.createElement(_icons().PlusOutlined, null),
|
|
168
172
|
className: (0, _css().css)`
|
|
@@ -174,7 +178,8 @@ var _default = {
|
|
|
174
178
|
transform: rotate(-45deg);
|
|
175
179
|
}
|
|
176
180
|
`,
|
|
177
|
-
onClick: () => setBranchCount(branchCount + 1)
|
|
181
|
+
onClick: () => setBranchCount(branchCount + 1),
|
|
182
|
+
disabled: workflow.executed
|
|
178
183
|
})))));
|
|
179
184
|
},
|
|
180
185
|
|
|
@@ -6,10 +6,9 @@ declare const _default: {
|
|
|
6
6
|
type: string;
|
|
7
7
|
group: string;
|
|
8
8
|
fieldset: {
|
|
9
|
-
|
|
9
|
+
collection: {
|
|
10
10
|
type: string;
|
|
11
11
|
title: string;
|
|
12
|
-
name: string;
|
|
13
12
|
required: boolean;
|
|
14
13
|
'x-reactions': string[];
|
|
15
14
|
'x-decorator': string;
|
|
@@ -18,16 +17,14 @@ declare const _default: {
|
|
|
18
17
|
placeholder: string;
|
|
19
18
|
};
|
|
20
19
|
};
|
|
21
|
-
|
|
20
|
+
params: {
|
|
22
21
|
type: string;
|
|
23
|
-
name: string;
|
|
24
22
|
title: string;
|
|
25
23
|
'x-decorator': string;
|
|
26
24
|
properties: {
|
|
27
25
|
filter: {
|
|
28
26
|
type: string;
|
|
29
27
|
title: string;
|
|
30
|
-
name: string;
|
|
31
28
|
'x-decorator': string;
|
|
32
29
|
'x-decorator-props': {
|
|
33
30
|
labelAlign: string;
|
|
@@ -32,7 +32,7 @@ var _default = {
|
|
|
32
32
|
type: 'query',
|
|
33
33
|
group: 'collection',
|
|
34
34
|
fieldset: {
|
|
35
|
-
|
|
35
|
+
collection: _collection.collection,
|
|
36
36
|
// 'config.multiple': {
|
|
37
37
|
// type: 'boolean',
|
|
38
38
|
// title: `{{t("Multiple records", { ns: "${NAMESPACE}" })}}`,
|
|
@@ -43,9 +43,8 @@ var _default = {
|
|
|
43
43
|
// disabled: true
|
|
44
44
|
// }
|
|
45
45
|
// },
|
|
46
|
-
|
|
46
|
+
params: {
|
|
47
47
|
type: 'object',
|
|
48
|
-
name: 'config.params',
|
|
49
48
|
title: '',
|
|
50
49
|
'x-decorator': 'FormItem',
|
|
51
50
|
properties: {
|
|
@@ -4,9 +4,8 @@ declare const _default: {
|
|
|
4
4
|
type: string;
|
|
5
5
|
group: string;
|
|
6
6
|
fieldset: {
|
|
7
|
-
|
|
7
|
+
method: {
|
|
8
8
|
type: string;
|
|
9
|
-
name: string;
|
|
10
9
|
required: boolean;
|
|
11
10
|
title: string;
|
|
12
11
|
'x-decorator': string;
|
|
@@ -21,9 +20,8 @@ declare const _default: {
|
|
|
21
20
|
}[];
|
|
22
21
|
default: string;
|
|
23
22
|
};
|
|
24
|
-
|
|
23
|
+
url: {
|
|
25
24
|
type: string;
|
|
26
|
-
name: string;
|
|
27
25
|
required: boolean;
|
|
28
26
|
title: string;
|
|
29
27
|
'x-decorator': string;
|
|
@@ -35,9 +33,8 @@ declare const _default: {
|
|
|
35
33
|
placeholder: string;
|
|
36
34
|
};
|
|
37
35
|
};
|
|
38
|
-
|
|
36
|
+
headers: {
|
|
39
37
|
type: string;
|
|
40
|
-
name: string;
|
|
41
38
|
'x-component': string;
|
|
42
39
|
'x-decorator': string;
|
|
43
40
|
title: string;
|
|
@@ -82,9 +79,8 @@ declare const _default: {
|
|
|
82
79
|
};
|
|
83
80
|
};
|
|
84
81
|
};
|
|
85
|
-
|
|
82
|
+
params: {
|
|
86
83
|
type: string;
|
|
87
|
-
name: string;
|
|
88
84
|
'x-component': string;
|
|
89
85
|
'x-decorator': string;
|
|
90
86
|
title: string;
|
|
@@ -128,9 +124,8 @@ declare const _default: {
|
|
|
128
124
|
};
|
|
129
125
|
};
|
|
130
126
|
};
|
|
131
|
-
|
|
127
|
+
data: {
|
|
132
128
|
type: string;
|
|
133
|
-
name: string;
|
|
134
129
|
title: string;
|
|
135
130
|
'x-decorator': string;
|
|
136
131
|
'x-decorator-props': {};
|
|
@@ -145,9 +140,8 @@ declare const _default: {
|
|
|
145
140
|
};
|
|
146
141
|
description: string;
|
|
147
142
|
};
|
|
148
|
-
|
|
143
|
+
timeout: {
|
|
149
144
|
type: string;
|
|
150
|
-
name: string;
|
|
151
145
|
title: string;
|
|
152
146
|
'x-decorator': string;
|
|
153
147
|
'x-decorator-props': {};
|
|
@@ -159,9 +153,8 @@ declare const _default: {
|
|
|
159
153
|
defaultValue: number;
|
|
160
154
|
};
|
|
161
155
|
};
|
|
162
|
-
|
|
156
|
+
ignoreFail: {
|
|
163
157
|
type: string;
|
|
164
|
-
name: string;
|
|
165
158
|
title: string;
|
|
166
159
|
'x-decorator': string;
|
|
167
160
|
'x-component': string;
|