@nocobase/plugin-workflow-custom-action-trigger 2.1.0-beta.8 → 2.2.0-alpha.1

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 (55) hide show
  1. package/client-v2.d.ts +2 -0
  2. package/client-v2.js +3 -0
  3. package/dist/client/CustomActionTrigger.d.ts +36 -2
  4. package/dist/client/index.js +1 -1
  5. package/dist/client-v2/index.d.ts +10 -0
  6. package/dist/client-v2/index.js +10 -0
  7. package/dist/client-v2/locale.d.ts +11 -0
  8. package/dist/{client/flows.d.ts → client-v2/models/actions/TriggerWorkflowActionModels.d.ts} +6 -8
  9. package/dist/client-v2/models/actions/index.d.ts +9 -0
  10. package/dist/client-v2/models/index.d.ts +9 -0
  11. package/dist/client-v2/plugin.d.ts +15 -0
  12. package/dist/client-v2/triggers/CustomActionTrigger.d.ts +149 -0
  13. package/dist/externalVersion.js +14 -12
  14. package/dist/node_modules/joi/dist/joi-browser.min.js +1 -0
  15. package/dist/node_modules/joi/lib/annotate.js +175 -0
  16. package/dist/node_modules/joi/lib/base.js +1069 -0
  17. package/dist/node_modules/joi/lib/cache.js +143 -0
  18. package/dist/node_modules/joi/lib/common.js +216 -0
  19. package/dist/node_modules/joi/lib/compile.js +283 -0
  20. package/dist/node_modules/joi/lib/errors.js +271 -0
  21. package/dist/node_modules/joi/lib/extend.js +312 -0
  22. package/dist/node_modules/joi/lib/index.d.ts +2365 -0
  23. package/dist/node_modules/joi/lib/index.js +1 -0
  24. package/dist/node_modules/joi/lib/manifest.js +476 -0
  25. package/dist/node_modules/joi/lib/messages.js +178 -0
  26. package/dist/node_modules/joi/lib/modify.js +267 -0
  27. package/dist/node_modules/joi/lib/ref.js +414 -0
  28. package/dist/node_modules/joi/lib/schemas.js +302 -0
  29. package/dist/node_modules/joi/lib/state.js +166 -0
  30. package/dist/node_modules/joi/lib/template.js +463 -0
  31. package/dist/node_modules/joi/lib/trace.js +346 -0
  32. package/dist/node_modules/joi/lib/types/alternatives.js +364 -0
  33. package/dist/node_modules/joi/lib/types/any.js +174 -0
  34. package/dist/node_modules/joi/lib/types/array.js +809 -0
  35. package/dist/node_modules/joi/lib/types/binary.js +100 -0
  36. package/dist/node_modules/joi/lib/types/boolean.js +150 -0
  37. package/dist/node_modules/joi/lib/types/date.js +233 -0
  38. package/dist/node_modules/joi/lib/types/function.js +93 -0
  39. package/dist/node_modules/joi/lib/types/keys.js +1067 -0
  40. package/dist/node_modules/joi/lib/types/link.js +168 -0
  41. package/dist/node_modules/joi/lib/types/number.js +363 -0
  42. package/dist/node_modules/joi/lib/types/object.js +22 -0
  43. package/dist/node_modules/joi/lib/types/string.js +850 -0
  44. package/dist/node_modules/joi/lib/types/symbol.js +102 -0
  45. package/dist/node_modules/joi/lib/validator.js +750 -0
  46. package/dist/node_modules/joi/lib/values.js +263 -0
  47. package/dist/node_modules/joi/node_modules/@hapi/topo/lib/index.d.ts +60 -0
  48. package/dist/node_modules/joi/node_modules/@hapi/topo/lib/index.js +225 -0
  49. package/dist/node_modules/joi/node_modules/@hapi/topo/package.json +30 -0
  50. package/dist/node_modules/joi/package.json +1 -0
  51. package/dist/server/CustomActionTrigger.d.ts +17 -4
  52. package/dist/server/CustomActionTrigger.js +126 -12
  53. package/dist/server/migrations/20260416000000-grant-trigger-action-to-roles.d.ts +40 -0
  54. package/dist/server/migrations/20260416000000-grant-trigger-action-to-roles.js +120 -0
  55. package/package.json +6 -2
package/client-v2.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export * from './dist/client-v2';
2
+ export { default } from './dist/client-v2';
package/client-v2.js ADDED
@@ -0,0 +1,3 @@
1
+ 'use strict';
2
+
3
+ module.exports = require('./dist/client-v2/index.js');
@@ -23,6 +23,40 @@ declare function useVariables(config: any, options: any): import("@nocobase/plug
23
23
  export default class extends Trigger {
24
24
  title: string;
25
25
  description: string;
26
+ presetFieldset: {
27
+ type: {
28
+ type: string;
29
+ title: string;
30
+ description: string;
31
+ 'x-decorator': string;
32
+ 'x-component': string;
33
+ 'x-component-props': {
34
+ direction: string;
35
+ options: {
36
+ label: string;
37
+ value: number;
38
+ tooltip: string;
39
+ }[];
40
+ };
41
+ required: boolean;
42
+ default: number;
43
+ };
44
+ collection: {
45
+ type: string;
46
+ title: string;
47
+ required: boolean;
48
+ 'x-decorator': string;
49
+ 'x-component': string;
50
+ "x-reactions": {
51
+ dependencies: string[];
52
+ fulfill: {
53
+ state: {
54
+ visible: string;
55
+ };
56
+ };
57
+ }[];
58
+ };
59
+ };
26
60
  fieldset: {
27
61
  type: {
28
62
  type: string;
@@ -39,7 +73,7 @@ export default class extends Trigger {
39
73
  }[];
40
74
  };
41
75
  default: number;
42
- 'x-disabled': string;
76
+ 'x-disabled': boolean;
43
77
  };
44
78
  collection: {
45
79
  type: string;
@@ -47,7 +81,7 @@ export default class extends Trigger {
47
81
  required: boolean;
48
82
  'x-decorator': string;
49
83
  'x-component': string;
50
- 'x-disabled': string;
84
+ 'x-disabled': boolean;
51
85
  "x-reactions": ({
52
86
  target: string;
53
87
  effects: string[];
@@ -7,4 +7,4 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
 
10
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@nocobase/client"),require("react-router-dom"),require("@nocobase/plugin-workflow/client"),require("@formily/antd-v5"),require("react"),require("@nocobase/flow-engine"),require("@emotion/css"),require("@formily/react"),require("@nocobase/utils/client"),require("antd"),require("react-i18next")):"function"==typeof define&&define.amd?define("@nocobase/plugin-workflow-custom-action-trigger",["@nocobase/client","react-router-dom","@nocobase/plugin-workflow/client","@formily/antd-v5","react","@nocobase/flow-engine","@emotion/css","@formily/react","@nocobase/utils/client","antd","react-i18next"],t):"object"==typeof exports?exports["@nocobase/plugin-workflow-custom-action-trigger"]=t(require("@nocobase/client"),require("react-router-dom"),require("@nocobase/plugin-workflow/client"),require("@formily/antd-v5"),require("react"),require("@nocobase/flow-engine"),require("@emotion/css"),require("@formily/react"),require("@nocobase/utils/client"),require("antd"),require("react-i18next")):e["@nocobase/plugin-workflow-custom-action-trigger"]=t(e["@nocobase/client"],e["react-router-dom"],e["@nocobase/plugin-workflow/client"],e["@formily/antd-v5"],e.react,e["@nocobase/flow-engine"],e["@emotion/css"],e["@formily/react"],e["@nocobase/utils/client"],e.antd,e["react-i18next"])}(self,function(e,t,r,o,n,i,c,a,l,s,u){return function(){"use strict";var f={964:function(e){e.exports=c},632:function(e){e.exports=o},505:function(e){e.exports=a},772:function(t){t.exports=e},667:function(e){e.exports=i},433:function(e){e.exports=r},584:function(e){e.exports=l},721:function(e){e.exports=s},156:function(e){e.exports=n},238:function(e){e.exports=u},128:function(e){e.exports=t}},p={};function g(e){var t=p[e];if(void 0!==t)return t.exports;var r=p[e]={exports:{}};return f[e](r,r.exports,g),r.exports}g.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return g.d(t,{a:t}),t},g.d=function(e,t){for(var r in t)g.o(t,r)&&!g.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},g.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},g.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var d={};return!function(){g.r(d),g.d(d,{default:function(){return eN}});var e=g(772),t=g(667),r=g(433),o=g(156),n=g.n(o),i="@nocobase/plugin-workflow-custom-action-trigger",c="custom-action",a={GLOBAL:0,SINGLE_RECORD:1,MULTIPLE_RECORDS:2},l=[{label:"{{t('Custom context', { ns: \"".concat(i,'" })}}'),value:a.GLOBAL,tooltip:"{{t('Could be used on non-record related action buttons. You can provide custom JSON as trigger data.', { ns: \"".concat(i,'" })}}')},{label:"{{t('Single collection record', { ns: \"".concat(i,'" })}}'),value:a.SINGLE_RECORD,tooltip:"{{t('Could only be used on single record related action buttons. Such as in form, detail block and table row of record.', { ns: \"".concat(i,'" })}}')},{label:"{{t('Multiple collection records', { ns: \"".concat(i,'" })}}'),value:a.MULTIPLE_RECORDS,tooltip:"{{t('Could only be used on multiple record related action buttons. Such as for batch action in table block. The data in trigger variable will be an array.', { ns: \"".concat(i,'" })}}')}],s=g(964),u=g(128),f=g(721),p=g(505),m=g(584);function b(t){var r,o,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.i18n.t(t,(r=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){var o;o=r[t],t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o})}return e}({},n),o=o={ns:i},Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(o)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r.push.apply(r,o)}return r})(Object(o)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(o,e))}),r))}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=Array(t);r<t;r++)o[r]=e[r];return o}function w(e,t,r,o,n,i,c){try{var a=e[i](c),l=a.value}catch(e){r(e);return}a.done?t(l):Promise.resolve(l).then(o,n)}function h(e){return function(){var t=this,r=arguments;return new Promise(function(o,n){var i=e.apply(t,r);function c(e){w(i,o,n,c,a,"next",e)}function a(e){w(i,o,n,c,a,"throw",e)}c(void 0)})}}function v(e,t){if(e){if("string"==typeof e)return y(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return y(e,t)}}function k(e,t){var r,o,n,i,c={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){var l=[i,a];if(r)throw TypeError("Generator is already executing.");for(;c;)try{if(r=1,o&&(n=2&l[0]?o.return:l[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,l[1])).done)return n;switch(o=0,n&&(l=[2&l[0],n.value]),l[0]){case 0:case 1:n=l;break;case 4:return c.label++,{value:l[1],done:!1};case 5:c.label++,o=l[1],l=[0];continue;case 7:l=c.ops.pop(),c.trys.pop();continue;default:if(!(n=(n=c.trys).length>0&&n[n.length-1])&&(6===l[0]||2===l[0])){c=0;continue}if(3===l[0]&&(!n||l[1]>n[0]&&l[1]<n[3])){c.label=l[1];break}if(6===l[0]&&c.label<n[1]){c.label=n[1],n=l;break}if(n&&c.label<n[2]){c.label=n[2],c.ops.push(l);break}n[2]&&c.ops.pop(),c.trys.pop();continue}l=t.call(e,c)}catch(e){l=[6,e],o=0}finally{r=n=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}var S=/\{\{.+?\}\}/;function x(e,t){return O.apply(this,arguments)}function O(){return(O=h(function(t,r){var o,n,i,c,a,l,s,u,f;return k(this,function(p){var g;switch(p.label){case 0:if("string"==typeof t)return[2,S.test(t)?(0,e.getVariableValue)(t,r):t];if(Array.isArray(t))return[2,Promise.all(t.map(function(e){return x(e,r)}))];if(null===t||(void 0===t?"undefined":t&&"undefined"!=typeof Symbol&&t.constructor===Symbol?"symbol":typeof t)!="object")return[3,9];o={},n=!0,i=!1,c=void 0,p.label=1;case 1:p.trys.push([1,6,7,8]),a=Object.entries(t)[Symbol.iterator](),p.label=2;case 2:if(n=(l=a.next()).done)return[3,5];return g=l.value,u=(s=function(e){if(Array.isArray(e))return e}(g)||function(e,t){var r,o,n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var i=[],c=!0,a=!1;try{for(n=n.call(e);!(c=(r=n.next()).done)&&(i.push(r.value),i.length!==t);c=!0);}catch(e){a=!0,o=e}finally{try{c||null==n.return||n.return()}finally{if(a)throw o}}return i}}(g,2)||v(g,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())[0],[4,x(s[1],r)];case 3:o[u]=p.sent(),p.label=4;case 4:return n=!0,[3,2];case 5:return[3,8];case 6:return f=p.sent(),i=!0,c=f,[3,8];case 7:try{n||null==a.return||a.return()}finally{if(i)throw c}return[7];case 8:return[2,o];case 9:return[2,t]}})})).apply(this,arguments)}function C(){var t=(0,e.useAPIClient)(),r=(0,e.useActionContext)().setVisible,o=(0,u.useNavigate)(),n=(0,p.useFieldSchema)(),i=(0,p.useField)(),c=(0,e.useCompile)(),a=f.App.useApp(),l=a.modal,s=a.message,g=(0,e.useLocalVariables)(),d=(0,e.useVariables)();return{onClick:function(a,u){return h(function(){var a,f,p,y,w,v,S,O,C,T,P,A,j,W,R;return k(this,function(E){switch(E.label){case 0:if(p=(f=null!=(a=null==n?void 0:n["x-action-settings"])?a:{}).onSuccess,y=f.triggerWorkflows,w=f.contextData,S=(v=p||{}).manualClose,O=v.redirecting,C=v.redirectTo,T=v.successMessage,P=v.actionAfterSuccess,!(null==y?void 0:y.length))return s.error(b("Button is not configured properly, please contact the administrator.")),[2];i.data=i.data||{},i.data.loading=!0,E.label=1;case 1:if(E.trys.push([1,8,9,10]),A={variables:d,localVariables:g},!w)return[3,5];E.label=2;case 2:return E.trys.push([2,4,,5]),[4,x("string"==typeof w?JSON.parse(w):w,A)];case 3:return j=E.sent(),[3,5];case 4:return E.sent(),[3,5];case 5:return[4,t.resource("workflows").trigger({values:j,triggerWorkflows:y.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(",")})];case 6:return W=E.sent(),i.data.data=W,null==u||u(),"previous"!==P&&(P||!0===O)||null==r||r(!1),[4,(0,e.getVariableValue)(C,{variables:d,localVariables:g})];case 7:if(R=E.sent(),!T)return(O&&!P||"redirect"===P)&&R&&((0,m.isURL)(R)?window.location.href=R:o(R)),[2];return S?l.success({title:c(T),onOk:h(function(){return k(this,function(e){return(O&&!P||"redirect"===P)&&R&&((0,m.isURL)(R)?window.location.href=R:o(R)),[2]})})}):(s.success(c(T)),(O&&!P||"redirect"===P)&&R&&((0,m.isURL)(p.redirectTo)?window.location.href=p.redirectTo:o(p.redirectTo))),[3,10];case 8:return console.error(E.sent()),[3,10];case 9:return i.data.loading=!1,[7];case 10:return[2]}})})()}}}function T(){var t=(0,e.useAPIClient)(),r=(0,e.useActionContext)().setVisible,o=(0,u.useNavigate)(),n=(0,p.useFieldSchema)(),i=(0,p.useField)(),c=(0,e.useCompile)(),a=f.App.useApp(),l=a.modal,s=a.message,g=(0,e.useCollection)(),d=(0,e.useBlockRequestContext)().field,y=(0,e.useLocalVariables)(),w=(0,e.useVariables)();return{onClick:function(a,u){return h(function(){var a,f,p,v,S,x,O,C,T,P,A,j,W,R,E,I;return k(this,function(B){switch(B.label){case 0:if(S=(v=null!=(p=null==n?void 0:n["x-action-settings"])?p:{}).onSuccess,x=v.triggerWorkflows,C=(O=S||{}).manualClose,T=O.redirecting,P=O.redirectTo,A=O.successMessage,j=O.actionAfterSuccess,!(null==x?void 0:x.length))return s.error(b("Button is not configured properly, please contact the administrator.")),[2];if(!(null==(f=d.data)||null==(a=f.selectedRowKeys)?void 0:a.length))return s.error(b("Please select at least one record.")),[2];i.data=i.data||{},i.data.loading=!0,B.label=1;case 1:return B.trys.push([1,4,5,6]),[4,t.resource(g.name,void 0,{"x-data-source":g.dataSource}).trigger({filterByTk:null==(W=d.data)?void 0:W.selectedRowKeys,triggerWorkflows:(null==x?void 0:x.length)?x.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0})];case 2:return E=B.sent(),(null==(R=d.data)?void 0:R.clearSelectedRowKeys)&&d.data.clearSelectedRowKeys(),i.data.data=E,null==u||u(),"previous"!==j&&(j||!0===T)||null==r||r(!1),[4,(0,e.getVariableValue)(P,{variables:w,localVariables:y})];case 3:if(I=B.sent(),!A)return(T&&!j||"redirect"===j)&&I&&((0,m.isURL)(I)?window.location.href=I:o(I)),[2];return C?l.success({title:c(A),onOk:h(function(){return k(this,function(e){return(T&&!j||"redirect"===j)&&I&&((0,m.isURL)(I)?window.location.href=I:o(I)),[2]})})}):(s.success(c(A)),(T&&!j||"redirect"===j)&&I&&((0,m.isURL)(S.redirectTo)?window.location.href=S.redirectTo:o(S.redirectTo))),[3,6];case 4:return console.error(B.sent()),[3,6];case 5:return i.data.loading=!1,[7];case 6:return[2]}})})()}}}function P(){var t=(0,p.useForm)(),r=(0,e.useBlockRequestContext)(),o=(r.field,r.resource),n=(0,e.useActionContext)().setVisible,i=(0,e.useFilterByTk)(),c=(0,u.useNavigate)(),a=(0,p.useFieldSchema)(),l=(0,p.useField)(),s=(0,e.useCompile)(),g=f.App.useApp(),d=g.modal,y=g.message,w=(0,e.useCollectValuesToSubmit)(),v=(0,e.useLocalVariables)(),S=(0,e.useVariables)();return{onClick:function(r,u){return h(function(){var r,f,p,g,x,O,C,T,P,A,j,W,R,E;return k(this,function(I){switch(I.label){case 0:if(p=(f=null!=(r=null==a?void 0:a["x-action-settings"])?r:{}).onSuccess,g=f.skipValidator,x=f.triggerWorkflows,C=(O=p||{}).manualClose,T=O.redirecting,P=O.redirectTo,A=O.successMessage,j=O.actionAfterSuccess,!(null==x?void 0:x.length))return y.error(b("Button is not configured properly, please contact the administrator.")),[2];if(g)return[3,2];return[4,t.submit()];case 1:I.sent(),I.label=2;case 2:return[4,w()];case 3:W=I.sent(),l.data=l.data||{},l.data.loading=!0,I.label=4;case 4:return I.trys.push([4,7,8,9]),[4,o.trigger({values:W,filterByTk:i,triggerWorkflows:(null==x?void 0:x.length)?x.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0})];case 5:return R=I.sent(),l.data.data=R,null==u||u(),"previous"!==j&&(j||!0===T)||null==n||n(!1),[4,(0,e.getVariableValue)(P,{variables:S,localVariables:v})];case 6:if(E=I.sent(),!A)return(T&&!j||"redirect"===j)&&E&&((0,m.isURL)(E)?window.location.href=E:c(E)),[2];return C?d.success({title:s(A),onOk:h(function(){return k(this,function(e){switch(e.label){case 0:return[4,t.reset()];case 1:return e.sent(),(T&&!j||"redirect"===j)&&E&&((0,m.isURL)(E)?window.location.href=E:c(E)),[2]}})})}):(y.success(s(A)),(T&&!j||"redirect"===j)&&E&&((0,m.isURL)(p.redirectTo)?window.location.href=p.redirectTo:c(p.redirectTo))),[3,9];case 7:return console.error(I.sent()),[3,9];case 8:return l.data.loading=!1,[7];case 9:return[2]}})})()}}}function A(){var t=(0,e.useCompile)(),r=(0,e.useFilterByTk)(),o=(0,e.useCollectionRecordData)(),n=(0,p.useField)(),i=(0,p.useFieldSchema)(),c=(0,e.useBlockRequestContext)(),a=(c.field,c.resource),l=(0,e.useActionContext)(),s=l.setVisible,g=l.setSubmitted,d=f.App.useApp(),w=d.modal,S=d.message,x=(0,u.useNavigate)(),O=(0,e.useLocalVariables)(),C=(0,e.useVariables)();return{onClick:function(c,l){return h(function(){var c,u,f,p,d,T,P,A,j,W,R;return k(this,function(E){switch(E.label){case 0:if(f=(u=null!=(c=null==i?void 0:i["x-action-settings"])?c:{}).onSuccess,p=u.triggerWorkflows,T=(d=f||{}).manualClose,P=d.redirecting,A=d.redirectTo,j=d.successMessage,W=d.actionAfterSuccess,!(null==p?void 0:p.length))return S.error(b("Button is not configured properly, please contact the administrator.")),[2];n.data=n.data||{},n.data.loading=!0,E.label=1;case 1:return E.trys.push([1,4,5,6]),[4,a.trigger({filterByTk:r,triggerWorkflows:(null==p?void 0:p.length)?p.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0})];case 2:return E.sent(),l&&l(),"previous"!==W&&(W||!0===P)||null==s||s(!1),null==g||g(!0),[4,(0,e.getVariableValue)(A,{variables:C,localVariables:((function(e){if(Array.isArray(e))return y(e)})(O)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(O)||v(O)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).concat([{name:"$record",ctx:new Proxy(o,{})}])})];case 3:if(R=E.sent(),!j)return(P&&!W||"redirect"===W)&&R&&((0,m.isURL)(R)?window.location.href=R:x(R)),[2];return T?w.success({title:t(j),onOk:function(){return h(function(){return k(this,function(e){return(P&&!W||"redirect"===W)&&R&&((0,m.isURL)(R)?window.location.href=R:x(R)),[2]})})()}}):(S.success(t(j)),(P&&!W||"redirect"===W)&&R&&((0,m.isURL)(f.redirectTo)?window.location.href=f.redirectTo:x(f.redirectTo))),[3,6];case 4:return console.error(E.sent()),[3,6];case 5:return n.data.loading=!1,[7];case 6:return[2]}})})()}}}function j(e,t,r,o,n,i,c){try{var a=e[i](c),l=a.value}catch(e){r(e);return}a.done?t(l):Promise.resolve(l).then(o,n)}function W(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){var o;o=r[t],t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o})}return e}function R(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r.push.apply(r,o)}return r})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}function E(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function I(){var e=E(["\n position: relative;\n .ant-input {\n width: 100%;\n }\n "]);return I=function(){return e},e}function B(){var e=E(["\n position: absolute;\n right: 0;\n top: 0;\n "]);return B=function(){return e},e}function M(e){var t=(0,r.useCurrentWorkflowContext)();return e.types.includes(t.config.type)||e.types.includes(a.GLOBAL)&&!t.config.type?e.children:null}function D(e){return(0,r.useCurrentWorkflowContext)().config.type?n().createElement(r.TriggerCollectionRecordSelect,e):n().createElement(r.WorkflowVariableJSON,W({changeOnSelect:!0,autoSize:{minRows:6}},e))}function L(t){var r=C().onClick;return n().createElement(e.Action,R(W({},t),{onClick:r}))}function F(r){var i,c=r.value,a=r.onChange,l=function(e,t){if(null==e)return{};var r,o,n=function(e,t){if(null==e)return{};var r,o,n={},i=Object.keys(e);for(o=0;o<i.length;o++)r=i[o],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)r=i[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}(r,["value","onChange"]),u=(0,o.useRef)(null),f=(0,t.useFlowContext)(),p=(0,o.useCallback)((i=function(){var e;return function(e,t){var r,o,n,i,c={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){var l=[i,a];if(r)throw TypeError("Generator is already executing.");for(;c;)try{if(r=1,o&&(n=2&l[0]?o.return:l[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,l[1])).done)return n;switch(o=0,n&&(l=[2&l[0],n.value]),l[0]){case 0:case 1:n=l;break;case 4:return c.label++,{value:l[1],done:!1};case 5:c.label++,o=l[1],l=[0];continue;case 7:l=c.ops.pop(),c.trys.pop();continue;default:if(!(n=(n=c.trys).length>0&&n[n.length-1])&&(6===l[0]||2===l[0])){c=0;continue}if(3===l[0]&&(!n||l[1]>n[0]&&l[1]<n[3])){c.label=l[1];break}if(6===l[0]&&c.label<n[1]){c.label=n[1],n=l;break}if(n&&c.label<n[2]){c.label=n[2],c.ops.push(l);break}n[2]&&c.ops.pop(),c.trys.pop();continue}l=t.call(e,c)}catch(e){l=[6,e],o=0}finally{r=n=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(t){return[2,(null==f||null==(e=f.getPropertyMetaTree)?void 0:e.call(f))||[]]})},function(){var e=this,t=arguments;return new Promise(function(r,o){var n=i.apply(e,t);function c(e){j(n,r,o,c,a,"next",e)}function a(e){j(n,r,o,c,a,"throw",e)}c(void 0)})}),[f]),g=(0,o.useCallback)(function(e){if(u.current){var t,r,o=u.current.querySelector("textarea");if(o){var n,i,c=null!=(t=o.selectionStart)?t:0,a=null!=(r=o.selectionEnd)?r:0,l=o.value.slice(0,c)+e+o.value.slice(a),s=c+e.length;null==(i=null==(n=Object.getOwnPropertyDescriptor(o.constructor.prototype,"value"))?void 0:n.set)||i.call(o,l),o.dispatchEvent(new Event("input",{bubbles:!0})),o.setSelectionRange(s,s),o.focus()}}},[]);return n().createElement("div",{ref:u,className:(0,s.css)(I())},n().createElement(e.Input.JSON,R(W({autoSize:{minRows:5}},l),{value:c,onChange:a})),n().createElement("div",{className:(0,s.css)(B())},n().createElement(t.FlowContextSelector,{metaTree:p,onChange:g})))}function z(t){var r=(0,e.useCurrentUserVariable)({noDisabled:!0}).currentUserSettings,i=(0,e.useCurrentRoleVariable)({noDisabled:!0}).currentRoleSettings,c=(0,e.useAPITokenVariable)({noDisabled:!0}).apiTokenSettings,a=(0,o.useMemo)(function(){return[r,i,c].filter(Boolean)},[r,i,c]);return n().createElement(e.Variable.JSON,W({changeOnSelect:!0,scope:a},t))}function V(e,t,r,o,n,i,c){try{var a=e[i](c),l=a.value}catch(e){r(e);return}a.done?t(l):Promise.resolve(l).then(o,n)}function q(e){return function(){var t=this,r=arguments;return new Promise(function(o,n){var i=e.apply(t,r);function c(e){V(i,o,n,c,a,"next",e)}function a(e){V(i,o,n,c,a,"throw",e)}c(void 0)})}}function _(e,t,r){return t=K(t),function(e,t){var r;if(t&&("object"==((r=t)&&"undefined"!=typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e,Q()?Reflect.construct(t,r||[],K(e).constructor):t.apply(e,r))}function N(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}function G(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function U(){return(U=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o])}return e}).apply(this,arguments)}function K(e){return(K=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function J(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Y(e,t)}function $(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){G(e,t,r[t])})}return e}function H(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r.push.apply(r,o)}return r})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}function Y(e,t){return(Y=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Q(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(Q=function(){return!!e})()}function X(e,t){var r,o,n,i,c={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){var l=[i,a];if(r)throw TypeError("Generator is already executing.");for(;c;)try{if(r=1,o&&(n=2&l[0]?o.return:l[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,l[1])).done)return n;switch(o=0,n&&(l=[2&l[0],n.value]),l[0]){case 0:case 1:n=l;break;case 4:return c.label++,{value:l[1],done:!1};case 5:c.label++,o=l[1],l=[0];continue;case 7:l=c.ops.pop(),c.trys.pop();continue;default:if(!(n=(n=c.trys).length>0&&n[n.length-1])&&(6===l[0]||2===l[0])){c=0;continue}if(3===l[0]&&(!n||l[1]>n[0]&&l[1]<n[3])){c.label=l[1];break}if(6===l[0]&&c.label<n[1]){c.label=n[1],n=l;break}if(n&&c.label<n[2]){c.label=n[2],c.ops.push(l);break}n[2]&&c.ops.pop(),c.trys.pop();continue}l=t.call(e,c)}catch(e){l=[6,e],o=0}finally{r=n=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}var Z=function(e){function r(){var e;return N(this,r),e=_(this,r,arguments),G(e,"defaultProps",{title:(0,t.tExpr)("Trigger workflow",{ns:i})}),e}return J(r,e),r}(e.FormActionModel);Z.define({label:(0,t.tExpr)("Trigger workflow",{ns:i})}),Z.registerFlow({key:"customFormTriggerWorkflowsActionSettings",on:"click",title:"{{t('Workflow', { ns: 'workflow' })}}",steps:{confirm:{use:"confirm"},triggerWorkflows:{title:"{{t('Bind workflows', { ns: 'workflow' })}}",uiSchema:(0,r.createTriggerWorkflowsSchema)({filter:{type:c},optionFilter:function(e){return e.config.type===a.SINGLE_RECORD}}),handler:function(e,t){return q(function(){var r,o;return X(this,function(n){switch(n.label){case 0:if(!(null==(r=t.group)?void 0:r.length))return e.message.error(e.t("Button is not configured properly, please contact the administrator.",{ns:i})),e.exit(),[2];if(!e.blockModel)return e.exit(),[2];n.label=1;case 1:var c;return n.trys.push([1,3,4,5]),e.model.setProps("loading",!0),[4,e.blockModel.submitHandler(e,{},(c=q(function(r,o){var n;return X(this,function(i){switch(i.label){case 0:return[4,e.blockModel.resource.runAction("trigger",{params:H($({},null!=o?{filterByTk:o}:{}),{triggerWorkflows:(null==(n=t.group)?void 0:n.length)?t.group.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0}),data:r})];case 1:return[2,i.sent()]}})}),function(e,t){return c.apply(this,arguments)}))];case 2:return n.sent(),e.model.setProps("loading",!1),[3,5];case 3:return o=n.sent(),e.model.setProps("loading",!1),console.error("Error triggering workflows:",o),e.exit(),[3,5];case 4:return e.model.setProps("loading",!1),[7];case 5:return[2]}})})()}},afterSuccess:{use:"afterSuccess",defaultParams:{successMessage:(0,t.tExpr)("Operation succeeded")}}}});var ee=function(e){function r(){var e;return N(this,r),e=_(this,r,arguments),G(e,"defaultProps",{title:(0,t.tExpr)("Trigger workflow",{ns:i})}),e}return J(r,e),r}(e.ActionModel);G(ee,"scene",e.ActionSceneEnum.record),ee.define({label:(0,t.tExpr)("Trigger workflow",{ns:i})}),ee.registerFlow({key:"customRecordTriggerWorkflowsActionSettings",on:"click",title:"{{t('Workflow', { ns: 'workflow' })}}",steps:{confirm:{use:"confirm"},triggerWorkflows:{title:"{{t('Bind workflows', { ns: 'workflow' })}}",uiSchema:(0,r.createTriggerWorkflowsSchema)({filter:{type:c},optionFilter:function(e){return e.config.type===a.SINGLE_RECORD}}),handler:function(e,t){return q(function(){var r,o,n,c,a;return X(this,function(l){switch(l.label){case 0:if(n=(o=e.blockModel).resource,c=o.collection,!n||!c)return e.exit(),[2];if(!(null==(r=t.group)?void 0:r.length))return e.message.error(e.t("Button is not configured properly, please contact the administrator.",{ns:i})),e.exit(),[2];l.label=1;case 1:return l.trys.push([1,3,,4]),[4,n.runAction("trigger",{params:{triggerWorkflows:(null==(a=t.group)?void 0:a.length)?t.group.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0,filterByTk:function(e,t){if(!e||!t)return null;var r=t.filterTargetKey;return Array.isArray(r)?r.reduce(function(t,r){return t[r]=e[r],t},{}):e[r]}(e.record,c)}})];case 2:return l.sent(),[3,4];case 3:return console.error("Error triggering workflows:",l.sent()),e.exit(),[3,4];case 4:return[2]}})})()}},afterSuccess:{use:"afterSuccess",defaultParams:{successMessage:(0,t.tExpr)("Operation succeeded"),actionAfterSuccess:"previous"}}}});var et=function(e){function t(){var e;return N(this,t),e=_(this,t,arguments),G(e,"defaultProps",{title:null}),e}return J(t,e),t}(e.CollectionActionModel);function er(e){var i=U({},function(e){if(null==e)throw TypeError("Cannot destructure "+e);return e}(e)),c=(0,t.useFlowContext)().model,a=(0,o.useCallback)(function(e){var t=e.config,r=c.stepParams.customCollectionTriggerWorkflowsActionSettings.setContextType.type;return r&&t.type===r||!t.type},[c.stepParams.customCollectionTriggerWorkflowsActionSettings.setContextType]);return n().createElement(r.TriggerWorkflowSelect,H($({},i),{optionFilter:a}))}G(et,"scene",e.ActionSceneEnum.collection),et.define({label:"{{t('Trigger workflow', { ns: '".concat(i,"' })}}")}),et.registerFlow({key:"customCollectionTriggerWorkflowsActionSettings",title:"{{t('Workflow', { ns: 'workflow' })}}",steps:{setContextType:{hideInSettings:!0,preset:!0,title:"{{t('Context type', { ns: '".concat(i,"' })}}"),uiSchema:{type:{type:"number","x-decorator":"FormItem","x-component":"Radio.Group",enum:[{label:"{{t('Custom context', { ns: '".concat(i,"' })}}"),value:a.GLOBAL},{label:"{{t('Multiple collection records', { ns: '".concat(i,"' })}}"),value:a.MULTIPLE_RECORDS}],required:!0}},handler:function(e,t){e.model.props.title||e.model.setProps("title",t.type?e.t("Trigger workflow",{ns:i}):e.t("Trigger global workflow",{ns:i}))}},triggerWorkflows:{title:"{{t('Bind workflows', { ns: 'workflow' })}}",uiSchema:function(e){var t,o,n=(0,r.createTriggerWorkflowsSchema)({WorkflowSelectComponent:er,filter:{type:c},usingContext:!1})(e);return(null!=(o=null==(t=e.model.stepParams.customCollectionTriggerWorkflowsActionSettings)?void 0:t.setContextType)?o:{}).type?n:H($({},n),{contextData:{type:"string",title:"{{t('Context data', { ns: '".concat(i,"' })}}"),"x-decorator":"FormItem","x-component":F}})}}}}),et.registerFlow({key:"customCollectionTriggerWorkflowsActionEventSettings",on:"click",steps:{confirm:{use:"confirm"},trigger:{handler:function(e){return q(function(){var r,o,n,c,l,s,u,f,p;return X(this,function(g){switch(g.label){case 0:if(o=(r=e.model.stepParams.customCollectionTriggerWorkflowsActionSettings).setContextType.type,l=(c=null!=(n=r.triggerWorkflows)?n:{}).group,s=c.contextData,!(null==l?void 0:l.length))return e.message.error(e.t("Button is not configured properly, please contact the administrator.",{ns:i})),e.exit(),[2];if(o!==a.MULTIPLE_RECORDS)return[3,5];if(!(null==(u=e.blockModel)?void 0:u.resource))return e.message.error(e.t("No resource selected for deletion")),e.exit(),[2];if(0===(f=e.blockModel.resource).getSelectedRows().length)return e.message.warning(e.t("Please select at least one record.",{ns:i})),e.exit(),[2];g.label=1;case 1:return g.trys.push([1,3,,4]),[4,f.runAction("trigger",{params:{triggerWorkflows:(null==l?void 0:l.length)?l.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0,filterByTk:e.blockModel.collection.getFilterByTK(f.getSelectedRows())}})];case 2:return g.sent(),f.setSelectedRows([]),[3,4];case 3:return console.error("Error triggering workflows:",g.sent()),e.exit(),[2];case 4:return[3,14];case 5:if(o)return[3,13];if(!s)return[3,9];g.label=6;case 6:return g.trys.push([6,8,,9]),[4,(0,t.resolveExpressions)(s,e)];case 7:return p=g.sent(),[3,9];case 8:return g.sent(),[3,9];case 9:return g.trys.push([9,11,,12]),[4,e.api.request({url:"workflows:trigger",method:"post",params:{triggerWorkflows:(null==l?void 0:l.length)?l.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0},data:{values:p}})];case 10:return g.sent(),[3,12];case 11:return console.error("Error triggering workflows:",g.sent()),e.exit(),[2];case 12:return[3,14];case 13:throw Error("Invalid context type");case 14:return[2]}})})()}},afterSuccess:{use:"afterSuccess",defaultParams:{successMessage:(0,t.tExpr)("Operation succeeded"),actionAfterSuccess:"previous"}}}});var eo=function(e){function r(){var e;return N(this,r),e=_(this,r,arguments),G(e,"defaultProps",{title:(0,t.tExpr)("Trigger global workflow",{ns:i})}),e}return J(r,e),r}(e.ActionModel);G(eo,"scene",e.ActionSceneEnum.collection);var en=function(e){function r(){var e;return N(this,r),e=_(this,r,arguments),G(e,"defaultProps",{title:(0,t.tExpr)("Trigger global workflow",{ns:i}),icon:"ThunderboltOutlined"}),e}return J(r,e),r}(e.ActionModel);function ei(e){return H($({},(0,r.createTriggerWorkflowsSchema)({filter:{type:c},optionFilter:function(e){return!e.config.type},usingContext:!1})(e)),{contextData:{type:"string",title:"{{t('Context data', { ns: '".concat(i,"' })}}"),"x-decorator":"FormItem","x-component":F}})}function ec(e,t){return ea.apply(this,arguments)}function ea(){return(ea=q(function(e,r){var o,n;return X(this,function(i){switch(i.label){case 0:if(!r.contextData)return[3,4];i.label=1;case 1:return i.trys.push([1,3,,4]),[4,(0,t.resolveExpressions)(r.contextData,e)];case 2:return o=i.sent(),[3,4];case 3:return i.sent(),[3,4];case 4:return i.trys.push([4,6,,7]),[4,e.api.request({url:"workflows:trigger",method:"post",params:{triggerWorkflows:(null==(n=r.group)?void 0:n.length)?r.group.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0},data:{values:o}})];case 5:return i.sent(),e.message.success(e.t("Operation succeeded")),[3,7];case 6:return console.error("Error triggering workflows:",i.sent()),[3,7];case 7:return[2]}})})).apply(this,arguments)}function el(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=Array(t);r<t;r++)o[r]=e[r];return o}eo.define({label:(0,t.tExpr)("Trigger global workflow",{ns:i})}),en.define({label:(0,t.tExpr)("Trigger global workflow",{ns:i})}),eo.registerFlow({key:"customCollectionGlobalTriggerWorkflowsActionSettings",on:"click",title:"{{t('Workflow', { ns: 'workflow' })}}",steps:{confirm:{use:"confirm"},triggerWorkflows:{title:"{{t('Bind workflows', { ns: 'workflow' })}}",uiSchema:ei,handler:ec},afterSuccess:{use:"afterSuccess",defaultParams:{successMessage:(0,t.tExpr)("Operation succeeded"),actionAfterSuccess:"previous"}}}}),en.registerFlow({key:"workbenchTriggerWorkflowsActionSettings",on:"click",title:"{{t('Workflow', { ns: 'workflow' })}}",steps:{confirm:{use:"confirm"},triggerWorkflows:{title:"{{t('Bind workflows', { ns: 'workflow' })}}",uiSchema:ei,handler:ec},afterSuccess:{use:"afterSuccess",defaultParams:{successMessage:(0,t.tExpr)("Operation succeeded"),actionAfterSuccess:"previous"}}}});function es(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function eu(e){return(eu=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function ef(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){es(e,t,r[t])})}return e}function ep(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r.push.apply(r,o)}return r})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}function eg(e,t){return(eg=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function ed(e){return function(e){if(Array.isArray(e))return el(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||em(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function em(e,t){if(e){if("string"==typeof e)return el(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return el(e,t)}}function eb(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(eb=function(){return!!e})()}function ey(t,o){var n,i,c=(0,e.useCompile)(),l=(0,r.useGetDataSourceCollectionManager)(),s=(n=t.collection?(0,e.parseCollectionName)(t.collection):[],function(e){if(Array.isArray(e))return e}(n)||function(e,t){var r,o,n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var i=[],c=!0,a=!1;try{for(n=n.call(e);!(c=(r=n.next()).done)&&(i.push(r.value),i.length!==t);c=!0);}catch(e){a=!0,o=e}finally{try{c||null==n.return||n.return()}finally{if(a)throw o}}return i}}(n,1)||em(n,1)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())[0],u=(0,r.useGetDataSourceCollectionManager)(s),f=(0,r.getCollectionFieldOptions)(ep(ef({appends:["user"]},o),{fields:[{collectionName:"users",name:"user",type:"hasOne",target:"users",uiSchema:{title:b("User acted")}}],compile:c,collectionManager:l}));return t.global||t.type===a.GLOBAL||!t.collection?[{label:b("Trigger data"),value:"data"}].concat(ed(f),[{label:b("Role of user acted"),value:"roleName"}]):ed((0,r.getCollectionFieldOptions)(ep(ef({appends:["data"].concat(ed((null==(i=t.appends)?void 0:i.map(function(e){return"data.".concat(e)}))||[]))},o),{fields:[{collectionName:t.collection,name:"data",type:"hasOne",target:t.collection,uiSchema:{title:b("Trigger data")}}],compile:c,collectionManager:u}))).concat(ed(f),[{label:b("Role of user acted"),value:"roleName"}])}var ew=function(t){var o;if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function");function c(){var t,o,s;if(!(this instanceof c))throw TypeError("Cannot call a class as a function");return o=c,s=arguments,o=eu(o),es(t=function(e,t){var r;if(t&&("object"==((r=t)&&"undefined"!=typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,eb()?Reflect.construct(o,s||[],eu(this).constructor):o.apply(this,s)),"title",'{{t("Custom action event", { ns: "'.concat(i,'" })}}')),es(t,"description",'{{t(\'When the "Trigger Workflow" button is clicked, the event is triggered based on different context where the button is located. For complex data processing that cannot be handled simply by built-in operations (CRUD) of NocoBase, you can define a series of operations through a workflow and trigger it with the "Trigger Workflow" button.\', { ns: "'.concat(i,'" })}}')),es(t,"fieldset",{type:{type:"number",title:'{{t("Context type", { ns: "'.concat(i,'" })}}'),description:'{{t("", { ns: "'.concat(i,'" })}}'),"x-decorator":"FormItem","x-component":"RadioWithTooltip","x-component-props":{direction:"vertical",options:l},default:a.GLOBAL,"x-disabled":"{{ useWorkflowAnyExecuted() }}"},collection:es({type:"string",title:'{{t("Collection")}}',required:!0,"x-decorator":"FormItem","x-component":"DataSourceCollectionCascader","x-disabled":"{{ useWorkflowAnyExecuted() }}"},"x-reactions",[{target:"appends",effects:["onFieldValueChange"],fulfill:{state:{value:[]}}},{dependencies:["type"],fulfill:{state:{visible:"{{Boolean($deps[0])}}"}}}]),appends:{type:"array",title:'{{t("Associations to use", { ns: "'.concat(i,'" })}}'),description:'{{t("Please select the associated fields that need to be accessed in subsequent nodes. With more than two levels of to-many associations may cause performance issue, please use with caution.", { ns: "workflow" })}}',"x-decorator":"FormItem","x-component":"AppendsTreeSelect","x-component-props":{multiple:!0,useCollection:function(){var e=(0,p.useForm)().values;return null==e?void 0:e.collection}},"x-reactions":[{dependencies:["collection"],fulfill:{state:{visible:"{{!!$deps[0]}}"}}}]}}),es(t,"triggerFieldset",{data:{type:"void","x-component":"TriggerScopeProvider","x-component-props":{types:[a.GLOBAL,a.SINGLE_RECORD]},properties:{data:{type:"object",title:'{{t("Trigger data", { ns: "'.concat(i,'" })}}'),description:'{{t("Use JSON as trigger data for custom data context, or choose a record in single record context.", { ns: "'.concat(i,'" })}}'),"x-decorator":"FormItem","x-component":"TriggerDataInput",default:null}}},filterByTk:{type:"void","x-component":"TriggerScopeProvider","x-component-props":{types:[a.MULTIPLE_RECORDS]},properties:{filterByTk:{type:"array",title:'{{t("Trigger data", { ns: "'.concat(i,'" })}}'),description:'{{t("Choose a record or primary key of a record in the collection to trigger.", { ns: "workflow" })}}',"x-decorator":"FormItem","x-component":"TriggerCollectionRecordSelect","x-component-props":{multiple:!0,objectValue:!1},default:[],required:!0}}},userId:{type:"number",title:'{{t("User acted", { ns: "'.concat(i,'" })}}'),"x-decorator":"FormItem","x-component":"WorkflowVariableWrapper","x-component-props":{nullable:!1,changeOnSelect:!0,variableOptions:{types:[function(e){return e.isForeignKey||"context"===e.type?"users"===e.target:"users"===e.collectionName&&"id"===e.name}]},render:function(t){return n().createElement(e.RemoteSelect,ef({fieldNames:{label:"nickname",value:"id"},service:{resource:"users"},manual:!1},t))}},default:null,required:!0},roleName:{type:"string",title:'{{t("Role of user acted", { ns: "'.concat(i,'" })}}'),"x-decorator":"FormItem","x-component":"WorkflowVariableWrapper","x-component-props":{nullable:!1,changeOnSelect:!0,variableOptions:{types:[function(e){return e.isForeignKey?"roles"===e.target:"roles"===e.collectionName&&"name"===e.name}]},render:function(t){return n().createElement(e.RemoteSelect,ef({fieldNames:{label:"title",value:"name"},service:{resource:"roles"},manual:!1},t))}},default:null}}),es(t,"scope",{useWorkflowAnyExecuted:r.useWorkflowAnyExecuted,useCollectionDataSource:e.useCollectionDataSource}),es(t,"components",{TriggerScopeProvider:M,TriggerDataInput:D,TriggerCollectionRecordSelect:r.TriggerCollectionRecordSelect,WorkflowVariableWrapper:r.WorkflowVariableWrapper,WorkflowVariableJSON:r.WorkflowVariableJSON,RadioWithTooltip:r.RadioWithTooltip}),es(t,"isActionTriggerable_deprecated",function(e,t){return"customize:triggerWorkflows"===t.buttonAction&&e.type===a.SINGLE_RECORD}),es(t,"useVariables",ey),t}return c.prototype=Object.create(t&&t.prototype,{constructor:{value:c,writable:!0,configurable:!0}}),t&&eg(c,t),o=[{key:"validate",value:function(e){return!e.type||e.type===a.GLOBAL||[a.SINGLE_RECORD,a.MULTIPLE_RECORDS].includes(e.type)&&e.collection}},{key:"useInitializers",value:function(e){return e.global||!e.collection?null:{name:"triggerData",type:"item",key:"triggerData",title:'{{t("Trigger data", { ns: "workflow" })}}',Component:r.CollectionBlockInitializer,collection:e.collection,dataPath:"$context.data"}}},{key:"getCreateModelMenuItem",value:function(e){var t=e.config;return t.collection?{key:"triggerData",label:'{{t("Trigger data", { ns: "workflow" })}}',useModel:"NodeDetailsModel",createModelOptions:{use:"NodeDetailsModel",stepParams:{resourceSettings:{init:{dataSourceKey:"main",collectionName:t.collection,dataPath:"$context.data"}},cardSettings:{titleDescription:{title:'{{t("Trigger data", { ns: "workflow" })}}'}}},subModels:{grid:{use:"NodeDetailsGridModel",subType:"object"}}}}:null}}],function(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}(c.prototype,o),c}(r.Trigger),eh=g(632),ev=g(238);function ek(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function eS(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){ek(e,t,r[t])})}return e}function ex(){var t,r,o=(0,e.useDesignable)().dn,c=(0,ev.useTranslation)().t,l=(0,p.useFieldSchema)(),s=(0,e.useCollection)(),u="customize:collectionTriggerWorkflows"===l["x-action"];return n().createElement(e.SchemaSettingsActionModalItem,{title:c("Bind workflows",{ns:"workflow"}),width:"30%",components:{Alert:f.Alert,ArrayTable:eh.ArrayTable,RemoteSelect:e.RemoteSelect,GlobalContextDataInput:z},scope:{t:c},schema:{type:"void",title:c("Bind workflows",{ns:"workflow"}),properties:eS({description:{type:"void","x-component":"Alert","x-component-props":{message:u?'{{t(\'Only support custom action workflow with context type set to "Multiple records".\', { ns: "'.concat(i,'" })}}'):'{{t(\'Only support custom action workflow with context type set to "Custom context".\', { ns: "'.concat(i,'" })}}'),style:{marginBottom:"1em"}}},group:{type:"array","x-component":"ArrayTable","x-decorator":"FormItem",items:{type:"object",properties:{sort:{type:"void","x-component":"ArrayTable.Column","x-component-props":{width:50,title:"",align:"center"},properties:{sort:{type:"void","x-component":"ArrayTable.SortHandle"}}},workflowKey:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:"{{t('Workflow', { ns: 'workflow' })}}"},properties:{workflowKey:{type:"string","x-decorator":"FormItem","x-component":"RemoteSelect","x-component-props":{manual:!1,placeholder:c("Select workflow",{ns:"workflow"}),fieldNames:{label:"title",value:"key"},dataSource:"main",service:{resource:"workflows",action:"list",params:{filter:eS({type:"custom-action",enabled:!0},u?{"config.type":a.MULTIPLE_RECORDS,"config.collection":(0,e.joinCollectionName)(s.dataSource,s.name)}:{$or:[{"config.type":a.GLOBAL},{"config.type":null}]})}}},required:!0}}},operations:{type:"void","x-component":"ArrayTable.Column","x-component-props":{width:32},properties:{remove:{type:"void","x-component":"ArrayTable.Remove"}}}}},properties:{add:{type:"void",title:c("Add workflow",{ns:"workflow"}),"x-component":"ArrayTable.Addition"}}}},u?{}:{contextData:{type:"string",title:"{{t('Context data', { ns: \"".concat(i,'" })}}'),description:"{{t('Input JSON as context data passed into the workflow. Frontend variables are supported.', { ns: \"".concat(i,'" })}}'),"x-decorator":"FormItem","x-component":"GlobalContextDataInput","x-component-props":{autoSize:{minRows:5}}}})},initialValues:{group:null==l||null==(t=l["x-action-settings"])?void 0:t.triggerWorkflows,contextData:null==l||null==(r=l["x-action-settings"])?void 0:r.contextData},onSubmit:function(e){var t,r=e.group,n=e.contextData;l["x-action-settings"]||(l["x-action-settings"]={}),l["x-action-settings"].triggerWorkflows=r,l["x-action-settings"].contextData=n,o.emit("patch",{schema:(ek(t={},"x-uid",l["x-uid"]),ek(t,"x-action-settings",l["x-action-settings"]),t)})}})}var eO=new e.SchemaSettings({name:"actionSettings:submitToWorkflow",items:[{name:"editButton",Component:e.ButtonEditor,useComponentProps:function(){return(0,e.useSchemaToolbar)().buttonEditorProps}},{name:"linkageRules",Component:e.SchemaSettingsLinkageRules,useComponentProps:function(){var t,r,o=(0,e.useCollection_deprecated)().name;return t=eS({},(0,e.useSchemaToolbar)().linkageRulesProps),r=r={collectionName:o},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r.push.apply(r,o)}return r})(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}),t}},{name:"secondConfirmation",Component:e.SecondConFirm},{name:"assignFieldValues",Component:e.AssignedFieldValues},{name:"skipRequiredValidation",Component:e.SkipValidation},{name:"afterSuccessfulSubmission",Component:e.AfterSuccess},{name:"refreshDataBlockRequest",Component:e.RefreshDataBlockRequest,useComponentProps:function(){return{isPopupAction:!1}}},{name:"bindWorkflow",Component:r.BindWorkflowConfig},e.SchemaSettingAccessControl,{name:"delete",sort:100,Component:e.RemoveButton,useComponentProps:function(){return(0,e.useSchemaToolbar)().removeButtonProps}}]}),eC=new e.SchemaSettings({name:"actionSettings:collectionTriggerWorkflow",items:[{name:"editButton",Component:e.ButtonEditor,useComponentProps:function(){return(0,e.useSchemaToolbar)().buttonEditorProps}},{name:"linkageRules",Component:e.SchemaSettingsLinkageRules,useComponentProps:function(){return eS({},(0,e.useSchemaToolbar)().linkageRulesProps)}},{name:"secondConfirmation",Component:e.SecondConFirm},{name:"afterSuccessfulSubmission",Component:e.AfterSuccess},{name:"refreshDataBlockRequest",Component:e.RefreshDataBlockRequest,useComponentProps:function(){return{isPopupAction:!1}}},{name:"bindWorkflow",Component:ex},e.SchemaSettingAccessControl,{name:"delete",sort:100,Component:e.RemoveButton,useComponentProps:function(){return(0,e.useSchemaToolbar)().removeButtonProps}}]}),eT=new e.SchemaSettings({name:"actionSettings:globalTriggerWorkflow",items:[{name:"editButton",Component:e.ButtonEditor,useComponentProps:function(){return(0,e.useSchemaToolbar)().buttonEditorProps}},{name:"linkageRules",Component:e.SchemaSettingsLinkageRules,useComponentProps:function(){return eS({},(0,e.useSchemaToolbar)().linkageRulesProps)}},{name:"secondConfirmation",Component:e.SecondConFirm},{name:"afterSuccessfulSubmission",Component:e.AfterSuccess},{name:"bindWorkflow",Component:ex},{name:"refreshDataBlockRequest",Component:e.RefreshDataBlockRequest,useComponentProps:function(){return{isPopupAction:!1}},useVisible:function(){return!!(0,(0,e.useDataBlockRequestGetter)().getDataBlockRequest)()}},e.SchemaSettingAccessControl,{name:"delete",sort:100,Component:e.RemoveButton,useComponentProps:function(){return(0,e.useSchemaToolbar)().removeButtonProps}}]});function eP(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){var o;o=r[t],t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o})}return e}function eA(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r.push.apply(r,o)}return r})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}var ej={name:"triggerWorkflow",title:'{{t("Trigger workflow", { ns: "'.concat(i,'" })}}'),Component:"CustomizeActionInitializer",schema:{title:'{{t("Trigger workflow", { ns: "'.concat(i,'" })}}'),"x-component":"Action","x-use-component-props":"useFormWorkflowCustomActionProps","x-settings":"actionSettings:submitToWorkflow","x-decorator":"ACLActionProvider","x-action-settings":{skipValidator:!1,onSuccess:{manualClose:!0,redirecting:!1,successMessage:'{{t("Submitted successfully")}}'},refreshDataBlockRequest:!0,triggerWorkflows:[]},"x-toolbar-props":{initializer:!1,showBorder:!1},"x-action":"customize:triggerWorkflows"},useVisible:function(){return"publicForm"!==((0,e.useDataBlockProps)()||{}).type}},eW={name:"triggerWorkflow",title:'{{t("Trigger workflow", { ns: "'.concat(i,'" })}}'),Component:"CustomizeActionInitializer",schema:{title:'{{t("Trigger workflow", { ns: "'.concat(i,'" })}}'),"x-component":"Action","x-use-component-props":"useRecordWorkflowCustomTriggerActionProps","x-settings":"actionSettings:submitToWorkflow","x-decorator":"ACLActionProvider","x-action-settings":{onSuccess:{manualClose:!0,redirecting:!1,successMessage:'{{t("Submitted successfully")}}'},refreshDataBlockRequest:!0,triggerWorkflows:[]},"x-toolbar-props":{initializer:!1,showBorder:!1},"x-action":"customize:triggerWorkflows"}},eR=eA(eP({},eW),{schema:eA(eP({},eW.schema),{"x-component":"Action.Link"})}),eE={name:"triggerWorkflow",title:'{{t("Trigger workflow", { ns: "'.concat(i,'" })}}'),Component:"CustomizeActionInitializer",schema:{title:'{{t("Trigger workflow", { ns: "'.concat(i,'" })}}'),"x-component":"Action","x-use-component-props":"useGlobalTriggerWorkflowCustomActionProps","x-settings":"actionSettings:globalTriggerWorkflow","x-decorator":"ACLActionProvider","x-action-settings":{onSuccess:{manualClose:!0,redirecting:!1,successMessage:'{{t("Submitted successfully")}}'},refreshDataBlockRequest:!0,triggerWorkflows:[]},"x-toolbar-props":{initializer:!1,showBorder:!1},"x-action":"customize:globalTriggerWorkflows"}};function eI(t){var o=(0,e.useSchemaInitializer)().insert,c=(0,ev.useTranslation)().t;return n().createElement(e.ModalActionSchemaInitializerItem,{title:c("Trigger workflow",{ns:i}),components:{RadioWithTooltip:r.RadioWithTooltip},modalSchema:{title:'{{t("Trigger workflow", { ns: "'.concat(i,'" })}}'),properties:{type:{title:"{{t('Context type', { ns: \"".concat(i,'" })}}'),"x-decorator":"FormItem","x-component":"RadioWithTooltip","x-component-props":{options:l.filter(function(e){var t=e.value;return[a.GLOBAL,a.MULTIPLE_RECORDS].includes(t)})},required:!0}}},onSubmit:function(e){o(eP({type:"void",title:"{{t('".concat(e.type?"Trigger workflow":"Trigger global workflow","', { ns: \"").concat(i,'" })}}'),"x-component":"Action","x-component-props":{},"x-action":e.type?"customize:collectionTriggerWorkflows":"customize:globalTriggerWorkflows","x-toolbar":"ActionSchemaToolbar","x-decorator":"ACLActionProvider","x-action-settings":{onSuccess:{manualClose:!1,redirecting:!1,successMessage:'{{t("Operation succeeded")}}'}}},e.type?{"x-use-component-props":"useCollectionTriggerWorkflowCustomActionProps","x-settings":"actionSettings:collectionTriggerWorkflow"}:{"x-use-component-props":"useGlobalTriggerWorkflowCustomActionProps","x-settings":"actionSettings:globalTriggerWorkflow"}))}})}function eB(t){var r=(0,e.useSchemaInitializer)().insert,o=(0,ev.useTranslation)().t;return n().createElement(e.ModalActionSchemaInitializerItem,{title:o("Trigger workflow",{ns:i}),modalSchema:{title:'{{t("Trigger workflow", { ns: "'.concat(i,'" })}}'),properties:{title:{title:"{{t('Title')}}","x-component":"Input","x-decorator":"FormItem",required:!0,default:'{{t("Trigger workflow", { ns: "'.concat(i,'" })}}')},icon:{title:"{{t('Icon')}}","x-component":"IconPicker","x-decorator":"FormItem",required:!0,default:"thunderboltoutlined"},iconColor:{title:"{{t('Color')}}","x-component":"ColorPicker","x-decorator":"FormItem",required:!0,default:"#1677FF"}}},onSubmit:function(e){r({type:"void",title:e.title,"x-component":"WorkbenchAction","x-decorator":"ACLActionProvider","x-component-props":{icon:e.icon,iconColor:e.iconColor,targetComponent:"GlobalTriggerWorkflowAction"},"x-action":"customize:globalTriggerWorkflows","x-toolbar":"ActionSchemaToolbar","x-settings":"actionSettings:globalTriggerWorkflow","x-action-settings":{onSuccess:{manualClose:!1,redirecting:!1,successMessage:'{{t("Operation succeeded")}}'}}})}})}function eM(e,t,r,o,n,i,c){try{var a=e[i](c),l=a.value}catch(e){r(e);return}a.done?t(l):Promise.resolve(l).then(o,n)}function eD(e){return function(){var t=this,r=arguments;return new Promise(function(o,n){var i=e.apply(t,r);function c(e){eM(i,o,n,c,a,"next",e)}function a(e){eM(i,o,n,c,a,"throw",e)}c(void 0)})}}function eL(e,t,r){return(eL=eq()?Reflect.construct:function(e,t,r){var o=[null];o.push.apply(o,t);var n=new(Function.bind.apply(e,o));return r&&ez(n,r.prototype),n}).apply(null,arguments)}function eF(e){return(eF=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function ez(e,t){return(ez=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function eV(e){var t="function"==typeof Map?new Map:void 0;return(eV=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return eL(e,arguments,eF(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),ez(r,e)})(e)}function eq(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(eq=function(){return!!e})()}function e_(e,t){var r,o,n,i,c={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){var l=[i,a];if(r)throw TypeError("Generator is already executing.");for(;c;)try{if(r=1,o&&(n=2&l[0]?o.return:l[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,l[1])).done)return n;switch(o=0,n&&(l=[2&l[0],n.value]),l[0]){case 0:case 1:n=l;break;case 4:return c.label++,{value:l[1],done:!1};case 5:c.label++,o=l[1],l=[0];continue;case 7:l=c.ops.pop(),c.trys.pop();continue;default:if(!(n=(n=c.trys).length>0&&n[n.length-1])&&(6===l[0]||2===l[0])){c=0;continue}if(3===l[0]&&(!n||l[1]>n[0]&&l[1]<n[3])){c.label=l[1];break}if(6===l[0]&&c.label<n[1]){c.label=n[1],n=l;break}if(n&&c.label<n[2]){c.label=n[2],c.ops.push(l);break}n[2]&&c.ops.pop(),c.trys.pop();continue}l=t.call(e,c)}catch(e){l=[6,e],o=0}finally{r=n=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}var eN=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function r(){var e,t;if(!(this instanceof r))throw TypeError("Cannot call a class as a function");return e=r,t=arguments,e=eF(e),function(e,t){var r;if(t&&("object"==((r=t)&&"undefined"!=typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,eq()?Reflect.construct(e,t||[],eF(this).constructor):e.apply(this,t))}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&ez(r,e),t=[{key:"beforeLoad",value:function(){var e=this;return eD(function(){return e_(this,function(t){return e.app.eventBus.addEventListener("plugin:kanban:loaded",function(){e.app.schemaInitializerManager.get("kanban:configureActions").add("customize.triggerWorkflow",eE)}),e.app.eventBus.addEventListener("plugin:calendar:loaded",function(){e.app.schemaInitializerManager.get("calendar:configureActions").add("customize.triggerWorkflow",eE)}),e.app.eventBus.addEventListener("plugin:gantt:loaded",function(){e.app.schemaInitializerManager.get("gantt:configureActions").add("customize.triggerWorkflow",eE),e.app.schemaInitializerManager.addItem("gantt:configureActions","customize.triggerWorkflow",{Component:eI})}),e.app.eventBus.addEventListener("plugin:block-workbench:loaded",function(){e.app.schemaInitializerManager.addItem("workbench:configureActions","customize.triggerWorkflow",{Component:eB});var t=e.flowEngine.getModelClass("ActionPanelGroupActionModel");t&&t.registerActionModels({WorkbenchTriggerWorkflowActionModel:en})}),[2]})})()}},{key:"load",value:function(){var e=this;return eD(function(){return e_(this,function(t){return e.app.pm.get("workflow").registerTrigger(c,ew),e.app.addScopes({useFormWorkflowCustomActionProps:P,useRecordWorkflowCustomTriggerActionProps:A,useCollectionTriggerWorkflowCustomActionProps:T,useGlobalTriggerWorkflowCustomActionProps:C}),e.app.addComponents({GlobalTriggerWorkflowAction:L}),e.app.schemaSettingsManager.add(eO),e.app.schemaSettingsManager.add(eC),e.app.schemaSettingsManager.add(eT),e.app.schemaInitializerManager.get("FormActionInitializers").add("customize.triggerWorkflow",ej),e.app.schemaInitializerManager.get("createForm:configureActions").add("customize.triggerWorkflow",ej),e.app.schemaInitializerManager.get("editForm:configureActions").add("customize.triggerWorkflow",ej),e.app.schemaInitializerManager.get("detailsWithPaging:configureActions").add("customize.triggerWorkflow",eW),e.app.schemaInitializerManager.get("details:configureActions").add("customize.triggerWorkflow",eW),e.app.schemaInitializerManager.get("table:configureItemActions").add("customize.triggerWorkflow",eR),e.app.schemaInitializerManager.get("gridCard:configureItemActions").add("customize.triggerWorkflow",eR),e.app.schemaInitializerManager.get("list:configureItemActions").add("customize.triggerWorkflow",eR),e.app.schemaInitializerManager.get("list:configureActions").add("customize.triggerWorkflow",eE),e.app.schemaInitializerManager.get("gridCard:configureActions").add("customize.triggerWorkflow",eE),e.app.schemaInitializerManager.addItem("table:configureActions","customize.triggerWorkflow",{Component:eI}),e.flowEngine.registerModels({FormTriggerWorkflowActionModel:Z,RecordTriggerWorkflowActionModel:ee,CollectionTriggerWorkflowActionModel:et,WorkbenchTriggerWorkflowActionModel:en}),[2]})})()}}],function(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}(r.prototype,t),r}(eV(e.Plugin))}(),d}()});
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react-i18next"),require("@emotion/css"),require("@nocobase/client-v2"),require("react-router-dom"),require("@formily/antd-v5"),require("react"),require("antd"),require("@nocobase/client"),require("@formily/react"),require("@nocobase/flow-engine"),require("@nocobase/plugin-workflow/client"),require("@nocobase/utils/client")):"function"==typeof define&&define.amd?define("@nocobase/plugin-workflow-custom-action-trigger",["react-i18next","@emotion/css","@nocobase/client-v2","react-router-dom","@formily/antd-v5","react","antd","@nocobase/client","@formily/react","@nocobase/flow-engine","@nocobase/plugin-workflow/client","@nocobase/utils/client"],t):"object"==typeof exports?exports["@nocobase/plugin-workflow-custom-action-trigger"]=t(require("react-i18next"),require("@emotion/css"),require("@nocobase/client-v2"),require("react-router-dom"),require("@formily/antd-v5"),require("react"),require("antd"),require("@nocobase/client"),require("@formily/react"),require("@nocobase/flow-engine"),require("@nocobase/plugin-workflow/client"),require("@nocobase/utils/client")):e["@nocobase/plugin-workflow-custom-action-trigger"]=t(e["react-i18next"],e["@emotion/css"],e["@nocobase/client-v2"],e["react-router-dom"],e["@formily/antd-v5"],e.react,e.antd,e["@nocobase/client"],e["@formily/react"],e["@nocobase/flow-engine"],e["@nocobase/plugin-workflow/client"],e["@nocobase/utils/client"])}(self,function(e,t,r,o,n,i,c,a,l,s,u,p){return function(){"use strict";var f={477:function(e){e.exports=t},418:function(e){e.exports=n},230:function(e){e.exports=l},342:function(e){e.exports=a},485:function(e){e.exports=r},694:function(e){e.exports=s},990:function(e){e.exports=u},768:function(e){e.exports=p},59:function(e){e.exports=c},155:function(e){e.exports=i},953:function(t){t.exports=e},442:function(e){e.exports=o}},d={};function g(e){var t=d[e];if(void 0!==t)return t.exports;var r=d[e]={exports:{}};return f[e](r,r.exports,g),r.exports}g.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return g.d(t,{a:t}),t},g.d=function(e,t){for(var r in t)g.o(t,r)&&!g.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},g.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),g.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},g.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},g.g.importScripts&&(m=g.g.location+"");var m,b=g.g.document;if(!m&&b&&(b.currentScript&&"SCRIPT"===b.currentScript.tagName.toUpperCase()&&(m=b.currentScript.src),!m)){var y=b.getElementsByTagName("script");if(y.length)for(var w=y.length-1;w>-1&&(!m||!/^http(s?):/.test(m));)m=y[w--].src}if(!m)throw Error("Automatic publicPath is not supported in this browser");g.p=m.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/");var h={};return!function(){var e="",t="u">typeof document?document.currentScript:null;if(t&&t.src&&(e=t.src.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")),!e){var r=window.__webpack_public_path__||"";r&&("/"!==r.charAt(r.length-1)&&(r+="/"),e=r+"static/plugins/@nocobase/plugin-workflow-custom-action-trigger/dist/client/")}if(!e){var o=window.__nocobase_modern_client_prefix__||"v",n="/"+(o=String(o).replace(/^\/+|\/+$/g,"")||"v")+"/";if(!(e=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var i=window.location.pathname||"/",c=i.indexOf(n);e=c>=0?i.slice(0,c+1):"/"}e&&(e=e.replace(RegExp("/"+o+"/?$"),"/")),e||(e="/"),"/"!==e.charAt(e.length-1)&&(e+="/"),e+="static/plugins/@nocobase/plugin-workflow-custom-action-trigger/dist/client/"}g.p=e}(),!function(){g.r(h),g.d(h,{default:function(){return e_}});var e=g(342),t=g(155),r=g.n(t),o=g(485),n=g(477),i=g(694),c=g(59),a="@nocobase/plugin-workflow-custom-action-trigger",l="custom-action",s=[{label:"{{t('Custom context', { ns: \"".concat(a,'" })}}'),value:0,tooltip:"{{t('Could be used on non-record related action buttons. You can provide custom JSON as trigger data.', { ns: \"".concat(a,'" })}}')},{label:"{{t('Single collection record', { ns: \"".concat(a,'" })}}'),value:1,tooltip:"{{t('Could only be used on single record related action buttons. Such as in form, detail block and table row of record.', { ns: \"".concat(a,'" })}}')},{label:"{{t('Multiple collection records', { ns: \"".concat(a,'" })}}'),value:2,tooltip:"{{t('Could only be used on multiple record related action buttons. Such as for batch action in table block. The data in trigger variable will be an array.', { ns: \"".concat(a,'" })}}')}],u="@nocobase/plugin-workflow-custom-action-trigger";function p(e,t){return(0,i.tExpr)(e,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){var o;o=r[t],t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o})}return e}({ns:u},t))}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=Array(t);r<t;r++)o[r]=e[r];return o}function d(e,t,r,o,n,i,c){try{var a=e[i](c),l=a.value}catch(e){r(e);return}a.done?t(l):Promise.resolve(l).then(o,n)}function m(e){return function(){var t=this,r=arguments;return new Promise(function(o,n){var i=e.apply(t,r);function c(e){d(i,o,n,c,a,"next",e)}function a(e){d(i,o,n,c,a,"throw",e)}c(void 0)})}}function b(e,t,r){return t=v(t),function(e,t){var r;if(t&&("object"==((r=t)&&"u">typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e,P()?Reflect.construct(t,r||[],v(e).constructor):t.apply(e,r))}function y(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}function w(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function v(e){return(v=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function k(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&O(e,t)}function x(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){w(e,t,r[t])})}return e}function S(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}function O(e,t){return(O=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function C(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r,o,n=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var i=[],c=!0,a=!1;try{for(n=n.call(e);!(c=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);c=!0);}catch(e){a=!0,o=e}finally{try{c||null==n.return||n.return()}finally{if(a)throw o}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return f(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return f(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function P(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(P=function(){return!!e})()}function T(e,t){var r,o,n,i={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]},c=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),a=Object.defineProperty;return a(c,"next",{value:l(0)}),a(c,"throw",{value:l(1)}),a(c,"return",{value:l(2)}),"function"==typeof Symbol&&a(c,Symbol.iterator,{value:function(){return this}}),c;function l(a){return function(l){var s=[a,l];if(r)throw TypeError("Generator is already executing.");for(;c&&(c=0,s[0]&&(i=0)),i;)try{if(r=1,o&&(n=2&s[0]?o.return:s[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,s[1])).done)return n;switch(o=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,o=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(n=(n=i.trys).length>0&&n[n.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){i.label=s[1];break}if(6===s[0]&&i.label<n[1]){i.label=n[1],n=s;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(s);break}n[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e],o=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}}}function j(){var e,t,r=(e=["\n & > .ant-space-item:first-child,\n & > .ant-space-item:last-child {\n flex: 0 0 auto;\n }\n & > .ant-space-item:nth-child(2) {\n flex: 1;\n min-width: 0;\n }\n & > .ant-space-item:nth-child(2) .ant-select {\n width: 100%;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return j=function(){return r},r}function A(e){var t,r,o,n,i=function(e){var t,r=(null==e?void 0:e.dataSourceKey)||(null==e||null==(t=e.dataSource)?void 0:t.key),o=null==e?void 0:e.name;if(o)return r&&"main"!==r?"".concat(r,":").concat(o):o}((null==e||null==(t=e.blockModel)?void 0:t.collection)||(null==e||null==(n=e.model)||null==(o=n.context)||null==(r=o.blockModel)?void 0:r.collection));return i?{"config.collection":i}:void 0}var W=function(e){return(null==e?void 0:e.length)?e.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0};function I(e){var t=e.filter,o=e.optionFilter,n=function(e,t){if(null==e)return{};var r,o,n,i={};if("u">typeof Reflect&&Reflect.ownKeys){for(n=0,r=Reflect.ownKeys(Object(e));n<r.length;n++)o=r[n],!(t.indexOf(o)>=0)&&Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o]);return i}if(i=function(e,t){if(null==e)return{};var r,o,n={},i=Object.getOwnPropertyNames(e);for(o=0;o<i.length;o++)r=i[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r]);return n}(e,t),Object.getOwnPropertySymbols)for(n=0,r=Object.getOwnPropertySymbols(e);n<r.length;n++)o=r[n],!(t.indexOf(o)>=0)&&Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o]);return i}(e,["filter","optionFilter"]),a=(0,i.useFlowContext)(),s=C(r().useState([]),2),u=s[0],p=s[1],f=C(r().useState(!1),2),d=f[0],g=f[1];return r().useEffect(function(){var e=!0;return m(function(){var r,n,i;return T(this,function(c){switch(c.label){case 0:g(!0),c.label=1;case 1:return c.trys.push([1,3,4,5]),[4,a.api.request({url:"workflows:list",method:"get",params:{paginate:!1,filter:x({type:l,enabled:!0},t)}})];case 2:if(n=c.sent(),!e)return[2];return i=(null==n||null==(r=n.data)?void 0:r.data)||[],p(("function"==typeof o?i.filter(o):i).map(function(e){return{label:e.title,value:e.key}})),[3,5];case 3:return console.error("Error loading workflows:",c.sent()),[3,5];case 4:return e&&g(!1),[7];case 5:return[2]}})})(),function(){e=!1}},[a.api,t,o]),r().createElement(c.Select,S(x({},n),{loading:d,options:u}))}function R(e){var t=e.description,r=e.filter,i=e.optionFilter,a=e.withContextData;return x({description:{type:"void","x-component":c.Alert,"x-component-props":{type:"info",showIcon:!0,message:t,style:{marginBottom:"1em"}}},group:{type:"array","x-component":"ArrayItems","x-decorator":"FormItem",items:{type:"object",properties:{space:{type:"void","x-component-props":{align:"center",style:{display:"flex",width:"100%"},className:(0,n.css)(j())},"x-component":c.Space,properties:{sort:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.SortHandle"},workflowKey:{type:"string","x-decorator":"FormItem","x-component":I,"x-component-props":{filter:r,optionFilter:i,placeholder:"{{t('Select workflow', { ns: 'workflow' })}}",style:{width:"100%"}},required:!0},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},properties:{add:{type:"void",title:"{{t('Add workflow', { ns: 'workflow' })}}","x-component":"ArrayItems.Addition"}}}},void 0!==a&&a?{contextData:{type:"string",title:p("Context data"),description:p("Input JSON as context data passed into the workflow. Frontend variables are supported."),"x-decorator":"FormItem","x-component":o.TextAreaWithContextSelector,"x-component-props":{rows:5}}}:{})}var M=p('Workflow will be triggered directly once the button clicked, without data saving. Only supports to be bound with "Custom action event".');function F(e,t){var r=null==e?void 0:e.type;return 0===t||null==t?0===r||null==r:r===t}var B=function(e){function t(){var e;return y(this,t),e=b(this,t,arguments),w(e,"defaultProps",{title:p("Trigger workflow")}),e}return k(t,e),t}(o.FormActionModel);B.define({label:p("Trigger workflow")}),B.registerFlow({key:"customFormTriggerWorkflowsActionSettings",on:"click",title:"{{t('Workflow', { ns: 'workflow' })}}",steps:{confirm:{use:"confirm"},triggerWorkflows:{title:"{{t('Bind workflows', { ns: 'workflow' })}}",uiSchema:function(e){return R({description:M,filter:A(e),optionFilter:function(e){var t;return(null==(t=e.config)?void 0:t.type)===1}})},handler:function(e,t){return m(function(){var r;return T(this,function(o){switch(o.label){case 0:if(!(null==(r=t.group)?void 0:r.length))return e.message.error(e.t("Button is not configured properly, please contact the administrator.",{ns:u})),e.exit(),[2];if(!e.blockModel)return e.exit(),[2];o.label=1;case 1:return o.trys.push([1,3,4,5]),e.model.setProps("loading",!0),[4,e.blockModel.submitHandler(e,{},function(r,o){return m(function(){return T(this,function(n){switch(n.label){case 0:return[4,e.blockModel.resource.runAction("trigger",{params:S(x({},null!=o?{filterByTk:o}:{}),{triggerWorkflows:W(t.group)}),data:r})];case 1:return[2,n.sent()]}})})()})];case 2:return o.sent(),[3,5];case 3:return console.error("Error triggering workflows:",o.sent()),e.exit(),[3,5];case 4:return e.model.setProps("loading",!1),[7];case 5:return[2]}})})()}},afterSuccess:{use:"afterSuccess",defaultParams:{successMessage:p("Operation succeeded")}}}});var E=function(e){function t(){var e;return y(this,t),e=b(this,t,arguments),w(e,"defaultProps",{title:p("Trigger workflow")}),e}return k(t,e),t}(o.ActionModel);w(E,"scene",o.ActionSceneEnum.record),E.define({label:p("Trigger workflow")}),E.registerFlow({key:"customRecordTriggerWorkflowsActionSettings",on:"click",title:"{{t('Workflow', { ns: 'workflow' })}}",steps:{confirm:{use:"confirm"},triggerWorkflows:{title:"{{t('Bind workflows', { ns: 'workflow' })}}",uiSchema:function(e){return R({description:M,filter:A(e),optionFilter:function(e){var t;return(null==(t=e.config)?void 0:t.type)===1}})},handler:function(e,t){return m(function(){var r,o,n,i;return T(this,function(c){switch(c.label){case 0:if(n=(o=e.blockModel).resource,i=o.collection,!n||!i)return e.exit(),[2];if(!(null==(r=t.group)?void 0:r.length))return e.message.error(e.t("Button is not configured properly, please contact the administrator.",{ns:u})),e.exit(),[2];c.label=1;case 1:return c.trys.push([1,3,,4]),[4,n.runAction("trigger",{params:{triggerWorkflows:W(t.group),filterByTk:function(e,t){if(!e||!t)return null;var r=t.filterTargetKey;return Array.isArray(r)?r.reduce(function(t,r){return t[r]=e[r],t},{}):e[r]}(e.record,i)}})];case 2:return c.sent(),[3,4];case 3:return console.error("Error triggering workflows:",c.sent()),e.exit(),[3,4];case 4:return[2]}})})()}},afterSuccess:{use:"afterSuccess",defaultParams:{successMessage:p("Operation succeeded"),actionAfterSuccess:"previous"}}}});var D=function(e){function t(){var e;return y(this,t),e=b(this,t,arguments),w(e,"defaultProps",{title:null}),e}return k(t,e),t}(o.CollectionActionModel);w(D,"scene",o.ActionSceneEnum.collection),D.define({label:p("Trigger workflow")}),D.registerFlow({key:"customCollectionTriggerWorkflowsActionSettings",title:"{{t('Workflow', { ns: 'workflow' })}}",steps:{setContextType:{hideInSettings:!0,preset:!0,title:p("Context type"),uiSchema:{type:{type:"number","x-decorator":"FormItem","x-component":"Radio.Group",enum:[{label:p("Custom context"),value:0},{label:p("Multiple collection records"),value:2}],required:!0}},handler:function(e,t){e.model.props.title||e.model.setProps("title",t.type?e.t("Trigger workflow",{ns:u}):e.t("Trigger global workflow",{ns:u}))}},triggerWorkflows:{title:"{{t('Bind workflows', { ns: 'workflow' })}}",uiSchema:function(e){var t,r,o=(null!=(t=null==(r=e.model.stepParams.customCollectionTriggerWorkflowsActionSettings)?void 0:r.setContextType)?t:{}).type;return R({withContextData:!o,filter:o?A(e):void 0,description:o?p('Only support custom action workflow with context type set to "Multiple records".'):p('Only support custom action workflow with context type set to "Custom context".'),optionFilter:function(e){return F(e.config,o)}})}}}}),D.registerFlow({key:"customCollectionTriggerWorkflowsActionEventSettings",on:"click",steps:{confirm:{use:"confirm"},trigger:{handler:function(e){return m(function(){var t,r,o,n,c,a,l,s,p;return T(this,function(f){switch(f.label){case 0:if(o=(r=e.model.stepParams.customCollectionTriggerWorkflowsActionSettings).setContextType.type,c=(n=null!=(t=r.triggerWorkflows)?t:{}).group,a=n.contextData,!(null==c?void 0:c.length))return e.message.error(e.t("Button is not configured properly, please contact the administrator.",{ns:u})),e.exit(),[2];if(2!==o)return[3,5];if(!(null==(l=e.blockModel)?void 0:l.resource))return e.message.error(e.t("No resource selected for deletion")),e.exit(),[2];if(0===(s=e.blockModel.resource).getSelectedRows().length)return e.message.warning(e.t("Please select at least one record.",{ns:u})),e.exit(),[2];f.label=1;case 1:return f.trys.push([1,3,,4]),[4,s.runAction("trigger",{params:{triggerWorkflows:W(c),filterByTk:e.blockModel.collection.getFilterByTK(s.getSelectedRows())}})];case 2:return f.sent(),s.setSelectedRows([]),[3,4];case 3:return console.error("Error triggering workflows:",f.sent()),e.exit(),[3,4];case 4:return[3,14];case 5:if(o)return[3,13];if(!a)return[3,9];f.label=6;case 6:return f.trys.push([6,8,,9]),[4,(0,i.resolveExpressions)(a,e)];case 7:return p=f.sent(),[3,9];case 8:return f.sent(),[3,9];case 9:return f.trys.push([9,11,,12]),[4,e.api.request({url:"workflows:trigger",method:"post",params:{triggerWorkflows:W(c)},data:{values:p}})];case 10:return f.sent(),[3,12];case 11:return console.error("Error triggering workflows:",f.sent()),e.exit(),[3,12];case 12:return[3,14];case 13:throw Error("Invalid context type");case 14:return[2]}})})()}},afterSuccess:{use:"afterSuccess",defaultParams:{successMessage:p("Operation succeeded"),actionAfterSuccess:"previous"}}}});var z=function(e){function t(){var e;return y(this,t),e=b(this,t,arguments),w(e,"defaultProps",{title:p("Trigger global workflow"),icon:"ThunderboltOutlined"}),e}return k(t,e),t}(o.ActionModel);z.define({label:p("Trigger global workflow")}),z.registerFlow({key:"workbenchTriggerWorkflowsActionSettings",on:"click",title:"{{t('Workflow', { ns: 'workflow' })}}",steps:{confirm:{use:"confirm"},triggerWorkflows:{title:"{{t('Bind workflows', { ns: 'workflow' })}}",uiSchema:function(){return R({withContextData:!0,description:p('Only support custom action workflow with context type set to "Custom context".'),optionFilter:function(e){return F(e.config,0)}})},handler:function(e,t){return m(function(){var r;return T(this,function(o){switch(o.label){case 0:if(!t.contextData)return[3,4];o.label=1;case 1:return o.trys.push([1,3,,4]),[4,(0,i.resolveExpressions)(t.contextData,e)];case 2:return r=o.sent(),[3,4];case 3:return o.sent(),[3,4];case 4:return o.trys.push([4,6,,7]),[4,e.api.request({url:"workflows:trigger",method:"post",params:{triggerWorkflows:W(t.group)},data:{values:r}})];case 5:return o.sent(),e.message.success(e.t("Operation succeeded")),[3,7];case 6:return console.error("Error triggering workflows:",o.sent()),[3,7];case 7:return[2]}})})()}},afterSuccess:{use:"afterSuccess",defaultParams:{successMessage:p("Operation succeeded"),actionAfterSuccess:"previous"}}}});var q=g(230),_=g(990);function V(t){var r,o,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.i18n.t(t,(r=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){var o;o=r[t],t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o})}return e}({},n),o=o={ns:a},Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(o)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(o)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(o,e))}),r))}var N=g(442),L=g(768);function U(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=Array(t);r<t;r++)o[r]=e[r];return o}function K(e,t,r,o,n,i,c){try{var a=e[i](c),l=a.value}catch(e){r(e);return}a.done?t(l):Promise.resolve(l).then(o,n)}function $(e){return function(){var t=this,r=arguments;return new Promise(function(o,n){var i=e.apply(t,r);function c(e){K(i,o,n,c,a,"next",e)}function a(e){K(i,o,n,c,a,"throw",e)}c(void 0)})}}function G(e,t){if(e){if("string"==typeof e)return U(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return U(e,t)}}function J(e,t){var r,o,n,i={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]},c=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),a=Object.defineProperty;return a(c,"next",{value:l(0)}),a(c,"throw",{value:l(1)}),a(c,"return",{value:l(2)}),"function"==typeof Symbol&&a(c,Symbol.iterator,{value:function(){return this}}),c;function l(a){return function(l){var s=[a,l];if(r)throw TypeError("Generator is already executing.");for(;c&&(c=0,s[0]&&(i=0)),i;)try{if(r=1,o&&(n=2&s[0]?o.return:s[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,s[1])).done)return n;switch(o=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,o=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(n=(n=i.trys).length>0&&n[n.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){i.label=s[1];break}if(6===s[0]&&i.label<n[1]){i.label=n[1],n=s;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(s);break}n[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e],o=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}}}var H=/\{\{.+?\}\}/;function Y(){var t=(0,e.useAPIClient)(),r=(0,e.useActionContext)().setVisible,o=(0,N.useNavigate)(),n=(0,q.useFieldSchema)(),i=(0,q.useField)(),a=(0,e.useCompile)(),l=c.App.useApp(),s=l.modal,u=l.message,p=(0,e.useLocalVariables)(),f=(0,e.useVariables)();return{onClick:function(c,l){return $(function(){var c,d,g,m,b,y,w,h,v,k,x,S,O,C,P;return J(this,function(T){switch(T.label){case 0:if(g=(d=null!=(c=null==n?void 0:n["x-action-settings"])?c:{}).onSuccess,m=d.triggerWorkflows,b=d.contextData,w=(y=g||{}).manualClose,h=y.redirecting,v=y.redirectTo,k=y.successMessage,x=y.actionAfterSuccess,!(null==m?void 0:m.length))return u.error(V("Button is not configured properly, please contact the administrator.")),[2];i.data=i.data||{},i.data.loading=!0,T.label=1;case 1:if(T.trys.push([1,8,9,10]),S={variables:f,localVariables:p},!b)return[3,5];T.label=2;case 2:return T.trys.push([2,4,,5]),[4,function t(r,o){return $(function(){var n,i,c,a,l,s,u,p,f;return J(this,function(d){var g;switch(d.label){case 0:if("string"==typeof r)return[2,H.test(r)?(0,e.getVariableValue)(r,o):r];if(Array.isArray(r))return[2,Promise.all(r.map(function(e){return t(e,o)}))];if(null===r||(void 0===r?"undefined":r&&"u">typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)!="object")return[3,9];n={},i=!0,c=!1,a=void 0,d.label=1;case 1:d.trys.push([1,6,7,8]),l=Object.entries(r)[Symbol.iterator](),d.label=2;case 2:if(i=(s=l.next()).done)return[3,5];return p=(u=function(e){if(Array.isArray(e))return e}(g=s.value)||function(e){var t,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var n=[],i=!0,c=!1;try{for(o=o.call(e);!(i=(t=o.next()).done)&&(n.push(t.value),2!==n.length);i=!0);}catch(e){c=!0,r=e}finally{try{i||null==o.return||o.return()}finally{if(c)throw r}}return n}}(g)||G(g,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())[0],[4,t(u[1],o)];case 3:n[p]=d.sent(),d.label=4;case 4:return i=!0,[3,2];case 5:return[3,8];case 6:return f=d.sent(),c=!0,a=f,[3,8];case 7:try{i||null==l.return||l.return()}finally{if(c)throw a}return[7];case 8:return[2,n];case 9:return[2,r]}})})()}("string"==typeof b?JSON.parse(b):b,S)];case 3:return O=T.sent(),[3,5];case 4:return T.sent(),[3,5];case 5:return[4,t.resource("workflows").trigger({values:O,triggerWorkflows:m.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(",")})];case 6:return C=T.sent(),i.data.data=C,null==l||l(),"previous"!==x&&(x||!0===h)||null==r||r(!1),[4,(0,e.getVariableValue)(v,{variables:f,localVariables:p})];case 7:if(P=T.sent(),!k)return(h&&!x||"redirect"===x)&&P&&((0,L.isURL)(P)?window.location.href=P:o(P)),[2];return w?s.success({title:a(k),onOk:function(){return $(function(){return J(this,function(e){return(h&&!x||"redirect"===x)&&P&&((0,L.isURL)(P)?window.location.href=P:o(P)),[2]})})()}}):(u.success(a(k)),(h&&!x||"redirect"===x)&&P&&((0,L.isURL)(g.redirectTo)?window.location.href=g.redirectTo:o(g.redirectTo))),[3,10];case 8:return console.error(T.sent()),[3,10];case 9:return i.data.loading=!1,[7];case 10:return[2]}})})()}}}function Q(){var t=(0,e.useAPIClient)(),r=(0,e.useActionContext)().setVisible,o=(0,N.useNavigate)(),n=(0,q.useFieldSchema)(),i=(0,q.useField)(),a=(0,e.useCompile)(),l=c.App.useApp(),s=l.modal,u=l.message,p=(0,e.useCollection)(),f=(0,e.useBlockRequestContext)().field,d=(0,e.useLocalVariables)(),g=(0,e.useVariables)();return{onClick:function(c,l){return $(function(){var c,m,b,y,w,h,v,k,x,S,O,C,P,T,j,A;return J(this,function(W){switch(W.label){case 0:if(w=(y=null!=(c=null==n?void 0:n["x-action-settings"])?c:{}).onSuccess,h=y.triggerWorkflows,k=(v=w||{}).manualClose,x=v.redirecting,S=v.redirectTo,O=v.successMessage,C=v.actionAfterSuccess,!(null==h?void 0:h.length))return u.error(V("Button is not configured properly, please contact the administrator.")),[2];if(!(null==(b=f.data)||null==(m=b.selectedRowKeys)?void 0:m.length))return u.error(V("Please select at least one record.")),[2];i.data=i.data||{},i.data.loading=!0,W.label=1;case 1:return W.trys.push([1,4,5,6]),[4,t.resource(p.name,void 0,{"x-data-source":p.dataSource}).trigger({filterByTk:null==(P=f.data)?void 0:P.selectedRowKeys,triggerWorkflows:(null==h?void 0:h.length)?h.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0})];case 2:return j=W.sent(),(null==(T=f.data)?void 0:T.clearSelectedRowKeys)&&f.data.clearSelectedRowKeys(),i.data.data=j,null==l||l(),"previous"!==C&&(C||!0===x)||null==r||r(!1),[4,(0,e.getVariableValue)(S,{variables:g,localVariables:d})];case 3:if(A=W.sent(),!O)return(x&&!C||"redirect"===C)&&A&&((0,L.isURL)(A)?window.location.href=A:o(A)),[2];return k?s.success({title:a(O),onOk:function(){return $(function(){return J(this,function(e){return(x&&!C||"redirect"===C)&&A&&((0,L.isURL)(A)?window.location.href=A:o(A)),[2]})})()}}):(u.success(a(O)),(x&&!C||"redirect"===C)&&A&&((0,L.isURL)(w.redirectTo)?window.location.href=w.redirectTo:o(w.redirectTo))),[3,6];case 4:return console.error(W.sent()),[3,6];case 5:return i.data.loading=!1,[7];case 6:return[2]}})})()}}}function X(){var t=(0,q.useForm)(),r=(0,e.useBlockRequestContext)(),o=(r.field,r.resource),n=(0,e.useActionContext)().setVisible,i=(0,e.useFilterByTk)(),a=(0,N.useNavigate)(),l=(0,q.useFieldSchema)(),s=(0,q.useField)(),u=(0,e.useCompile)(),p=c.App.useApp(),f=p.modal,d=p.message,g=(0,e.useCollectValuesToSubmit)(),m=(0,e.useLocalVariables)(),b=(0,e.useVariables)();return{onClick:function(r,c){return $(function(){var r,p,y,w,h,v,k,x,S,O,C,P,T,j;return J(this,function(A){switch(A.label){case 0:if(y=(p=null!=(r=null==l?void 0:l["x-action-settings"])?r:{}).onSuccess,w=p.skipValidator,h=p.triggerWorkflows,k=(v=y||{}).manualClose,x=v.redirecting,S=v.redirectTo,O=v.successMessage,C=v.actionAfterSuccess,!(null==h?void 0:h.length))return d.error(V("Button is not configured properly, please contact the administrator.")),[2];if(w)return[3,2];return[4,t.submit()];case 1:A.sent(),A.label=2;case 2:return[4,g()];case 3:P=A.sent(),s.data=s.data||{},s.data.loading=!0,A.label=4;case 4:return A.trys.push([4,7,8,9]),[4,o.trigger({values:P,filterByTk:i,triggerWorkflows:(null==h?void 0:h.length)?h.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0})];case 5:return T=A.sent(),s.data.data=T,null==c||c(),"previous"!==C&&(C||!0===x)||null==n||n(!1),[4,(0,e.getVariableValue)(S,{variables:b,localVariables:m})];case 6:if(j=A.sent(),!O)return(x&&!C||"redirect"===C)&&j&&((0,L.isURL)(j)?window.location.href=j:a(j)),[2];return k?f.success({title:u(O),onOk:function(){return $(function(){return J(this,function(e){switch(e.label){case 0:return[4,t.reset()];case 1:return e.sent(),(x&&!C||"redirect"===C)&&j&&((0,L.isURL)(j)?window.location.href=j:a(j)),[2]}})})()}}):(d.success(u(O)),(x&&!C||"redirect"===C)&&j&&((0,L.isURL)(y.redirectTo)?window.location.href=y.redirectTo:a(y.redirectTo))),[3,9];case 7:return console.error(A.sent()),[3,9];case 8:return s.data.loading=!1,[7];case 9:return[2]}})})()}}}function Z(){var t=(0,e.useCompile)(),r=(0,e.useFilterByTk)(),o=(0,e.useCollectionRecordData)(),n=(0,q.useField)(),i=(0,q.useFieldSchema)(),a=(0,e.useBlockRequestContext)(),l=(a.field,a.resource),s=(0,e.useActionContext)(),u=s.setVisible,p=s.setSubmitted,f=c.App.useApp(),d=f.modal,g=f.message,m=(0,N.useNavigate)(),b=(0,e.useLocalVariables)(),y=(0,e.useVariables)();return{onClick:function(c,a){return $(function(){var c,s,f,w,h,v,k,x,S,O,C;return J(this,function(P){switch(P.label){case 0:if(f=(s=null!=(c=null==i?void 0:i["x-action-settings"])?c:{}).onSuccess,w=s.triggerWorkflows,v=(h=f||{}).manualClose,k=h.redirecting,x=h.redirectTo,S=h.successMessage,O=h.actionAfterSuccess,!(null==w?void 0:w.length))return g.error(V("Button is not configured properly, please contact the administrator.")),[2];n.data=n.data||{},n.data.loading=!0,P.label=1;case 1:return P.trys.push([1,4,5,6]),[4,l.trigger({filterByTk:r,triggerWorkflows:(null==w?void 0:w.length)?w.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0})];case 2:return P.sent(),a&&a(),"previous"!==O&&(O||!0===k)||null==u||u(!1),null==p||p(!0),[4,(0,e.getVariableValue)(x,{variables:y,localVariables:((function(e){if(Array.isArray(e))return U(e)})(b)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(b)||G(b)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).concat([{name:"$record",ctx:new Proxy(o,{})}])})];case 3:if(C=P.sent(),!S)return(k&&!O||"redirect"===O)&&C&&((0,L.isURL)(C)?window.location.href=C:m(C)),[2];return v?d.success({title:t(S),onOk:function(){return $(function(){return J(this,function(e){return(k&&!O||"redirect"===O)&&C&&((0,L.isURL)(C)?window.location.href=C:m(C)),[2]})})()}}):(g.success(t(S)),(k&&!O||"redirect"===O)&&C&&((0,L.isURL)(f.redirectTo)?window.location.href=f.redirectTo:m(f.redirectTo))),[3,6];case 4:return console.error(P.sent()),[3,6];case 5:return n.data.loading=!1,[7];case 6:return[2]}})})()}}}function ee(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){var o;o=r[t],t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o})}return e}function et(e){var t=(0,_.useCurrentWorkflowContext)();return e.types.includes(t.config.type)||e.types.includes(0)&&!t.config.type?e.children:null}function er(e){return(0,_.useCurrentWorkflowContext)().config.type?r().createElement(_.TriggerCollectionRecordSelect,e):r().createElement(_.WorkflowVariableJSON,ee({changeOnSelect:!0,autoSize:{minRows:6}},e))}function eo(t){var o,n,i=Y().onClick;return r().createElement(e.Action,(o=ee({},t),n=n={onClick:i},Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(n)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(n)).forEach(function(e){Object.defineProperty(o,e,Object.getOwnPropertyDescriptor(n,e))}),o))}function en(o){var n=(0,e.useCurrentUserVariable)({noDisabled:!0}).currentUserSettings,i=(0,e.useCurrentRoleVariable)({noDisabled:!0}).currentRoleSettings,c=(0,e.useAPITokenVariable)({noDisabled:!0}).apiTokenSettings,a=(0,t.useMemo)(function(){return[n,i,c].filter(Boolean)},[n,i,c]);return r().createElement(e.Variable.JSON,ee({changeOnSelect:!0,scope:a},o))}function ei(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=Array(t);r<t;r++)o[r]=e[r];return o}function ec(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ea(e){return(ea=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function el(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){ec(e,t,r[t])})}return e}function es(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}function eu(e,t){return(eu=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function ep(e){return function(e){if(Array.isArray(e))return ei(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||ef(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ef(e,t){if(e){if("string"==typeof e)return ei(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return ei(e,t)}}function ed(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(ed=function(){return!!e})()}function eg(t,r){var o,n,i=(0,e.useCompile)(),c=(0,_.useGetDataSourceCollectionManager)(),a=(function(e){if(Array.isArray(e))return e}(o=t.collection?(0,e.parseCollectionName)(t.collection):[])||function(e){var t,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var n=[],i=!0,c=!1;try{for(o=o.call(e);!(i=(t=o.next()).done)&&(n.push(t.value),1!==n.length);i=!0);}catch(e){c=!0,r=e}finally{try{i||null==o.return||o.return()}finally{if(c)throw r}}return n}}(o)||ef(o,1)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())[0],l=(0,_.useGetDataSourceCollectionManager)(a),s=(0,_.getCollectionFieldOptions)(es(el({appends:["user"]},r),{fields:[{collectionName:"users",name:"user",type:"hasOne",target:"users",uiSchema:{title:V("User acted")}}],compile:i,collectionManager:c}));return t.global||0===t.type||!t.collection?[{label:V("Trigger data"),value:"data"}].concat(ep(s),[{label:V("Role of user acted"),value:"roleName"}]):ep((0,_.getCollectionFieldOptions)(es(el({appends:["data"].concat(ep((null==(n=t.appends)?void 0:n.map(function(e){return"data.".concat(e)}))||[]))},r),{fields:[{collectionName:t.collection,name:"data",type:"hasOne",target:t.collection,uiSchema:{title:V("Trigger data")}}],compile:i,collectionManager:l}))).concat(ep(s),[{label:V("Role of user acted"),value:"roleName"}])}var em=function(t){var o;if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function");function n(){var t,o,i;if(!(this instanceof n))throw TypeError("Cannot call a class as a function");return o=n,i=arguments,o=ea(o),ec(t=function(e,t){var r;if(t&&("object"==((r=t)&&"u">typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,ed()?Reflect.construct(o,i||[],ea(this).constructor):o.apply(this,i)),"title",'{{t("Custom action event", { ns: "'.concat(a,'" })}}')),ec(t,"description",'{{t(\'When the "Trigger Workflow" button is clicked, the event is triggered based on different context where the button is located. For complex data processing that cannot be handled simply by built-in operations (CRUD) of NocoBase, you can define a series of operations through a workflow and trigger it with the "Trigger Workflow" button.\', { ns: "'.concat(a,'" })}}')),ec(t,"presetFieldset",{type:{type:"number",title:'{{t("Context type", { ns: "'.concat(a,'" })}}'),description:'{{t("", { ns: "'.concat(a,'" })}}'),"x-decorator":"FormItem","x-component":"RadioWithTooltip","x-component-props":{direction:"vertical",options:s},required:!0,default:0},collection:ec({type:"string",title:'{{t("Collection")}}',required:!0,"x-decorator":"FormItem","x-component":"DataSourceCollectionCascader"},"x-reactions",[{dependencies:[".type"],fulfill:{state:{visible:"{{Boolean($deps[0])}}"}}}])}),ec(t,"fieldset",{type:{type:"number",title:'{{t("Context type", { ns: "'.concat(a,'" })}}'),description:'{{t("", { ns: "'.concat(a,'" })}}'),"x-decorator":"FormItem","x-component":"RadioWithTooltip","x-component-props":{direction:"vertical",options:s},default:0,"x-disabled":!0},collection:ec({type:"string",title:'{{t("Collection")}}',required:!0,"x-decorator":"FormItem","x-component":"DataSourceCollectionCascader","x-disabled":!0},"x-reactions",[{target:"appends",effects:["onFieldValueChange"],fulfill:{state:{value:[]}}},{dependencies:["type"],fulfill:{state:{visible:"{{Boolean($deps[0])}}"}}}]),appends:{type:"array",title:'{{t("Associations to use", { ns: "'.concat(a,'" })}}'),description:'{{t("Please select the associated fields that need to be accessed in subsequent nodes. With more than two levels of to-many associations may cause performance issue, please use with caution.", { ns: "workflow" })}}',"x-decorator":"FormItem","x-component":"AppendsTreeSelect","x-component-props":{multiple:!0,useCollection:function(){var e=(0,q.useForm)().values;return null==e?void 0:e.collection}},"x-reactions":[{dependencies:["collection"],fulfill:{state:{visible:"{{!!$deps[0]}}"}}}]}}),ec(t,"triggerFieldset",{data:{type:"void","x-component":"TriggerScopeProvider","x-component-props":{types:[0,1]},properties:{data:{type:"object",title:'{{t("Trigger data", { ns: "'.concat(a,'" })}}'),description:'{{t("Use JSON as trigger data for custom data context, or choose a record in single record context.", { ns: "'.concat(a,'" })}}'),"x-decorator":"FormItem","x-component":"TriggerDataInput",default:null}}},filterByTk:{type:"void","x-component":"TriggerScopeProvider","x-component-props":{types:[2]},properties:{filterByTk:{type:"array",title:'{{t("Trigger data", { ns: "'.concat(a,'" })}}'),description:'{{t("Choose a record or primary key of a record in the collection to trigger.", { ns: "workflow" })}}',"x-decorator":"FormItem","x-component":"TriggerCollectionRecordSelect","x-component-props":{multiple:!0,objectValue:!1},default:[],required:!0}}},userId:{type:"number",title:'{{t("User acted", { ns: "'.concat(a,'" })}}'),"x-decorator":"FormItem","x-component":"WorkflowVariableWrapper","x-component-props":{nullable:!1,changeOnSelect:!0,variableOptions:{types:[function(e){return e.isForeignKey||"context"===e.type?"users"===e.target:"users"===e.collectionName&&"id"===e.name}]},render:function(t){return r().createElement(e.RemoteSelect,el({fieldNames:{label:"nickname",value:"id"},service:{resource:"users"},manual:!1},t))}},default:null,required:!0},roleName:{type:"string",title:'{{t("Role of user acted", { ns: "'.concat(a,'" })}}'),"x-decorator":"FormItem","x-component":"WorkflowVariableWrapper","x-component-props":{nullable:!1,changeOnSelect:!0,variableOptions:{types:[function(e){return e.isForeignKey?"roles"===e.target:"roles"===e.collectionName&&"name"===e.name}]},render:function(t){return r().createElement(e.RemoteSelect,el({fieldNames:{label:"title",value:"name"},service:{resource:"roles"},manual:!1},t))}},default:null}}),ec(t,"scope",{useWorkflowAnyExecuted:_.useWorkflowAnyExecuted,useCollectionDataSource:e.useCollectionDataSource}),ec(t,"components",{TriggerScopeProvider:et,TriggerDataInput:er,TriggerCollectionRecordSelect:_.TriggerCollectionRecordSelect,WorkflowVariableWrapper:_.WorkflowVariableWrapper,WorkflowVariableJSON:_.WorkflowVariableJSON,RadioWithTooltip:_.RadioWithTooltip}),ec(t,"isActionTriggerable_deprecated",function(e,t){return"customize:triggerWorkflows"===t.buttonAction&&1===e.type}),ec(t,"useVariables",eg),t}return n.prototype=Object.create(t&&t.prototype,{constructor:{value:n,writable:!0,configurable:!0}}),t&&eu(n,t),o=[{key:"validate",value:function(e){return!e.type||0===e.type||[1,2].includes(e.type)&&e.collection}},{key:"useInitializers",value:function(e){return e.global||!e.collection?null:{name:"triggerData",type:"item",key:"triggerData",title:'{{t("Trigger data", { ns: "workflow" })}}',Component:_.CollectionBlockInitializer,collection:e.collection,dataPath:"$context.data"}}},{key:"getCreateModelMenuItem",value:function(e){var t=e.config;return t.collection?{key:"triggerData",label:'{{t("Trigger data", { ns: "workflow" })}}',useModel:"NodeDetailsModel",createModelOptions:{use:"NodeDetailsModel",stepParams:{resourceSettings:{init:{dataSourceKey:"main",collectionName:t.collection,dataPath:"$context.data"}},cardSettings:{titleDescription:{title:'{{t("Trigger data", { ns: "workflow" })}}'}}},subModels:{grid:{use:"NodeDetailsGridModel",subType:"object"}}}}:null}}],function(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}(n.prototype,o),n}(_.Trigger),eb=g(418),ey=g(953);function ew(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function eh(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){ew(e,t,r[t])})}return e}function ev(){var t,o,n=(0,e.useDesignable)().dn,i=(0,ey.useTranslation)().t,l=(0,q.useFieldSchema)(),s=(0,e.useCollection)(),u="customize:collectionTriggerWorkflows"===l["x-action"];return r().createElement(e.SchemaSettingsActionModalItem,{title:i("Bind workflows",{ns:"workflow"}),width:"30%",components:{Alert:c.Alert,ArrayTable:eb.ArrayTable,RemoteSelect:e.RemoteSelect,GlobalContextDataInput:en},scope:{t:i},schema:{type:"void",title:i("Bind workflows",{ns:"workflow"}),properties:eh({description:{type:"void","x-component":"Alert","x-component-props":{message:u?'{{t(\'Only support custom action workflow with context type set to "Multiple records".\', { ns: "'.concat(a,'" })}}'):'{{t(\'Only support custom action workflow with context type set to "Custom context".\', { ns: "'.concat(a,'" })}}'),style:{marginBottom:"1em"}}},group:{type:"array","x-component":"ArrayTable","x-decorator":"FormItem",items:{type:"object",properties:{sort:{type:"void","x-component":"ArrayTable.Column","x-component-props":{width:50,title:"",align:"center"},properties:{sort:{type:"void","x-component":"ArrayTable.SortHandle"}}},workflowKey:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:"{{t('Workflow', { ns: 'workflow' })}}"},properties:{workflowKey:{type:"string","x-decorator":"FormItem","x-component":"RemoteSelect","x-component-props":{manual:!1,placeholder:i("Select workflow",{ns:"workflow"}),fieldNames:{label:"title",value:"key"},dataSource:"main",service:{resource:"workflows",action:"list",params:{filter:eh({type:"custom-action",enabled:!0},u?{"config.type":2,"config.collection":(0,e.joinCollectionName)(s.dataSource,s.name)}:{$or:[{"config.type":0},{"config.type":null}]})}}},required:!0}}},operations:{type:"void","x-component":"ArrayTable.Column","x-component-props":{width:32},properties:{remove:{type:"void","x-component":"ArrayTable.Remove"}}}}},properties:{add:{type:"void",title:i("Add workflow",{ns:"workflow"}),"x-component":"ArrayTable.Addition"}}}},u?{}:{contextData:{type:"string",title:"{{t('Context data', { ns: \"".concat(a,'" })}}'),description:"{{t('Input JSON as context data passed into the workflow. Frontend variables are supported.', { ns: \"".concat(a,'" })}}'),"x-decorator":"FormItem","x-component":"GlobalContextDataInput","x-component-props":{autoSize:{minRows:5}}}})},initialValues:{group:null==l||null==(t=l["x-action-settings"])?void 0:t.triggerWorkflows,contextData:null==l||null==(o=l["x-action-settings"])?void 0:o.contextData},onSubmit:function(e){var t,r=e.group,o=e.contextData;l["x-action-settings"]||(l["x-action-settings"]={}),l["x-action-settings"].triggerWorkflows=r,l["x-action-settings"].contextData=o,n.emit("patch",{schema:(ew(t={},"x-uid",l["x-uid"]),ew(t,"x-action-settings",l["x-action-settings"]),t)})}})}var ek=new e.SchemaSettings({name:"actionSettings:submitToWorkflow",items:[{name:"editButton",Component:e.ButtonEditor,useComponentProps:function(){return(0,e.useSchemaToolbar)().buttonEditorProps}},{name:"linkageRules",Component:e.SchemaSettingsLinkageRules,useComponentProps:function(){var t,r,o=(0,e.useCollection_deprecated)().name;return t=eh({},(0,e.useSchemaToolbar)().linkageRulesProps),r=r={collectionName:o},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}),t}},{name:"secondConfirmation",Component:e.SecondConFirm},{name:"assignFieldValues",Component:e.AssignedFieldValues},{name:"skipRequiredValidation",Component:e.SkipValidation},{name:"afterSuccessfulSubmission",Component:e.AfterSuccess},{name:"refreshDataBlockRequest",Component:e.RefreshDataBlockRequest,useComponentProps:function(){return{isPopupAction:!1}}},{name:"bindWorkflow",Component:_.BindWorkflowConfig},e.SchemaSettingAccessControl,{name:"delete",sort:100,Component:e.RemoveButton,useComponentProps:function(){return(0,e.useSchemaToolbar)().removeButtonProps}}]}),ex=new e.SchemaSettings({name:"actionSettings:collectionTriggerWorkflow",items:[{name:"editButton",Component:e.ButtonEditor,useComponentProps:function(){return(0,e.useSchemaToolbar)().buttonEditorProps}},{name:"linkageRules",Component:e.SchemaSettingsLinkageRules,useComponentProps:function(){return eh({},(0,e.useSchemaToolbar)().linkageRulesProps)}},{name:"secondConfirmation",Component:e.SecondConFirm},{name:"afterSuccessfulSubmission",Component:e.AfterSuccess},{name:"refreshDataBlockRequest",Component:e.RefreshDataBlockRequest,useComponentProps:function(){return{isPopupAction:!1}}},{name:"bindWorkflow",Component:ev},e.SchemaSettingAccessControl,{name:"delete",sort:100,Component:e.RemoveButton,useComponentProps:function(){return(0,e.useSchemaToolbar)().removeButtonProps}}]}),eS=new e.SchemaSettings({name:"actionSettings:globalTriggerWorkflow",items:[{name:"editButton",Component:e.ButtonEditor,useComponentProps:function(){return(0,e.useSchemaToolbar)().buttonEditorProps}},{name:"linkageRules",Component:e.SchemaSettingsLinkageRules,useComponentProps:function(){return eh({},(0,e.useSchemaToolbar)().linkageRulesProps)}},{name:"secondConfirmation",Component:e.SecondConFirm},{name:"afterSuccessfulSubmission",Component:e.AfterSuccess},{name:"bindWorkflow",Component:ev},{name:"refreshDataBlockRequest",Component:e.RefreshDataBlockRequest,useComponentProps:function(){return{isPopupAction:!1}},useVisible:function(){return!!(0,(0,e.useDataBlockRequestGetter)().getDataBlockRequest)()}},e.SchemaSettingAccessControl,{name:"delete",sort:100,Component:e.RemoveButton,useComponentProps:function(){return(0,e.useSchemaToolbar)().removeButtonProps}}]});function eO(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){var o;o=r[t],t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o})}return e}function eC(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}var eP={name:"triggerWorkflow",title:'{{t("Trigger workflow", { ns: "'.concat(a,'" })}}'),Component:"CustomizeActionInitializer",schema:{title:'{{t("Trigger workflow", { ns: "'.concat(a,'" })}}'),"x-component":"Action","x-use-component-props":"useFormWorkflowCustomActionProps","x-settings":"actionSettings:submitToWorkflow","x-decorator":"ACLActionProvider","x-action-settings":{skipValidator:!1,onSuccess:{manualClose:!0,redirecting:!1,successMessage:'{{t("Submitted successfully")}}'},refreshDataBlockRequest:!0,triggerWorkflows:[]},"x-toolbar-props":{initializer:!1,showBorder:!1},"x-action":"customize:triggerWorkflows"},useVisible:function(){return"publicForm"!==((0,e.useDataBlockProps)()||{}).type}},eT={name:"triggerWorkflow",title:'{{t("Trigger workflow", { ns: "'.concat(a,'" })}}'),Component:"CustomizeActionInitializer",schema:{title:'{{t("Trigger workflow", { ns: "'.concat(a,'" })}}'),"x-component":"Action","x-use-component-props":"useRecordWorkflowCustomTriggerActionProps","x-settings":"actionSettings:submitToWorkflow","x-decorator":"ACLActionProvider","x-action-settings":{onSuccess:{manualClose:!0,redirecting:!1,successMessage:'{{t("Submitted successfully")}}'},refreshDataBlockRequest:!0,triggerWorkflows:[]},"x-toolbar-props":{initializer:!1,showBorder:!1},"x-action":"customize:triggerWorkflows"}},ej=eC(eO({},eT),{schema:eC(eO({},eT.schema),{"x-component":"Action.Link"})}),eA={name:"triggerWorkflow",title:'{{t("Trigger workflow", { ns: "'.concat(a,'" })}}'),Component:"CustomizeActionInitializer",schema:{title:'{{t("Trigger workflow", { ns: "'.concat(a,'" })}}'),"x-component":"Action","x-use-component-props":"useGlobalTriggerWorkflowCustomActionProps","x-settings":"actionSettings:globalTriggerWorkflow","x-decorator":"ACLActionProvider","x-action-settings":{onSuccess:{manualClose:!0,redirecting:!1,successMessage:'{{t("Submitted successfully")}}'},refreshDataBlockRequest:!0,triggerWorkflows:[]},"x-toolbar-props":{initializer:!1,showBorder:!1},"x-action":"customize:globalTriggerWorkflows"}};function eW(t){var o=(0,e.useSchemaInitializer)().insert,n=(0,ey.useTranslation)().t;return r().createElement(e.ModalActionSchemaInitializerItem,{title:n("Trigger workflow",{ns:a}),components:{RadioWithTooltip:_.RadioWithTooltip},modalSchema:{title:'{{t("Trigger workflow", { ns: "'.concat(a,'" })}}'),properties:{type:{title:"{{t('Context type', { ns: \"".concat(a,'" })}}'),"x-decorator":"FormItem","x-component":"RadioWithTooltip","x-component-props":{options:s.filter(function(e){return[0,2].includes(e.value)})},required:!0}}},onSubmit:function(e){o(eO({type:"void",title:"{{t('".concat(e.type?"Trigger workflow":"Trigger global workflow","', { ns: \"").concat(a,'" })}}'),"x-component":"Action","x-component-props":{},"x-action":e.type?"customize:collectionTriggerWorkflows":"customize:globalTriggerWorkflows","x-toolbar":"ActionSchemaToolbar","x-decorator":"ACLActionProvider","x-action-settings":{onSuccess:{manualClose:!1,redirecting:!1,successMessage:'{{t("Operation succeeded")}}'}}},e.type?{"x-use-component-props":"useCollectionTriggerWorkflowCustomActionProps","x-settings":"actionSettings:collectionTriggerWorkflow"}:{"x-use-component-props":"useGlobalTriggerWorkflowCustomActionProps","x-settings":"actionSettings:globalTriggerWorkflow"}))}})}function eI(t){var o=(0,e.useSchemaInitializer)().insert,n=(0,ey.useTranslation)().t;return r().createElement(e.ModalActionSchemaInitializerItem,{title:n("Trigger workflow",{ns:a}),modalSchema:{title:'{{t("Trigger workflow", { ns: "'.concat(a,'" })}}'),properties:{title:{title:"{{t('Title')}}","x-component":"Input","x-decorator":"FormItem",required:!0,default:'{{t("Trigger workflow", { ns: "'.concat(a,'" })}}')},icon:{title:"{{t('Icon')}}","x-component":"IconPicker","x-decorator":"FormItem",required:!0,default:"thunderboltoutlined"},iconColor:{title:"{{t('Color')}}","x-component":"ColorPicker","x-decorator":"FormItem",required:!0,default:"#1677FF"}}},onSubmit:function(e){o({type:"void",title:e.title,"x-component":"WorkbenchAction","x-decorator":"ACLActionProvider","x-component-props":{icon:e.icon,iconColor:e.iconColor,targetComponent:"GlobalTriggerWorkflowAction"},"x-action":"customize:globalTriggerWorkflows","x-toolbar":"ActionSchemaToolbar","x-settings":"actionSettings:globalTriggerWorkflow","x-action-settings":{onSuccess:{manualClose:!1,redirecting:!1,successMessage:'{{t("Operation succeeded")}}'}}})}})}function eR(e,t,r,o,n,i,c){try{var a=e[i](c),l=a.value}catch(e){r(e);return}a.done?t(l):Promise.resolve(l).then(o,n)}function eM(e){return function(){var t=this,r=arguments;return new Promise(function(o,n){var i=e.apply(t,r);function c(e){eR(i,o,n,c,a,"next",e)}function a(e){eR(i,o,n,c,a,"throw",e)}c(void 0)})}}function eF(e,t,r){return(eF=ez()?Reflect.construct:function(e,t,r){var o=[null];o.push.apply(o,t);var n=new(Function.bind.apply(e,o));return r&&eE(n,r.prototype),n}).apply(null,arguments)}function eB(e){return(eB=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function eE(e,t){return(eE=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function eD(e){var t="function"==typeof Map?new Map:void 0;return(eD=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return eF(e,arguments,eB(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),eE(r,e)})(e)}function ez(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(ez=function(){return!!e})()}function eq(e,t){var r,o,n,i={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]},c=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),a=Object.defineProperty;return a(c,"next",{value:l(0)}),a(c,"throw",{value:l(1)}),a(c,"return",{value:l(2)}),"function"==typeof Symbol&&a(c,Symbol.iterator,{value:function(){return this}}),c;function l(a){return function(l){var s=[a,l];if(r)throw TypeError("Generator is already executing.");for(;c&&(c=0,s[0]&&(i=0)),i;)try{if(r=1,o&&(n=2&s[0]?o.return:s[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,s[1])).done)return n;switch(o=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,o=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(n=(n=i.trys).length>0&&n[n.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){i.label=s[1];break}if(6===s[0]&&i.label<n[1]){i.label=n[1],n=s;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(s);break}n[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e],o=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}}}var e_=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function r(){var e,t;if(!(this instanceof r))throw TypeError("Cannot call a class as a function");return e=r,t=arguments,e=eB(e),function(e,t){var r;if(t&&("object"==((r=t)&&"u">typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,ez()?Reflect.construct(e,t||[],eB(this).constructor):e.apply(this,t))}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&eE(r,e),t=[{key:"beforeLoad",value:function(){return eM(function(){var e;return eq(this,function(t){return e=this,this.app.eventBus.addEventListener("plugin:kanban:loaded",function(){e.app.schemaInitializerManager.get("kanban:configureActions").add("customize.triggerWorkflow",eA)}),this.app.eventBus.addEventListener("plugin:calendar:loaded",function(){e.app.schemaInitializerManager.get("calendar:configureActions").add("customize.triggerWorkflow",eA)}),this.app.eventBus.addEventListener("plugin:gantt:loaded",function(){e.app.schemaInitializerManager.get("gantt:configureActions").add("customize.triggerWorkflow",eA),e.app.schemaInitializerManager.addItem("gantt:configureActions","customize.triggerWorkflow",{Component:eW})}),this.app.eventBus.addEventListener("plugin:block-workbench:loaded",function(){e.app.schemaInitializerManager.addItem("workbench:configureActions","customize.triggerWorkflow",{Component:eI});var t=e.flowEngine.getModelClass("ActionPanelGroupActionModel");t&&t.registerActionModels({WorkbenchTriggerWorkflowActionModel:z})}),[2]})}).call(this)}},{key:"load",value:function(){return eM(function(){return eq(this,function(e){return this.app.pm.get("workflow").registerTrigger(l,em),this.app.addScopes({useFormWorkflowCustomActionProps:X,useRecordWorkflowCustomTriggerActionProps:Z,useCollectionTriggerWorkflowCustomActionProps:Q,useGlobalTriggerWorkflowCustomActionProps:Y}),this.app.addComponents({GlobalTriggerWorkflowAction:eo}),this.app.schemaSettingsManager.add(ek),this.app.schemaSettingsManager.add(ex),this.app.schemaSettingsManager.add(eS),this.app.schemaInitializerManager.get("FormActionInitializers").add("customize.triggerWorkflow",eP),this.app.schemaInitializerManager.get("createForm:configureActions").add("customize.triggerWorkflow",eP),this.app.schemaInitializerManager.get("editForm:configureActions").add("customize.triggerWorkflow",eP),this.app.schemaInitializerManager.get("detailsWithPaging:configureActions").add("customize.triggerWorkflow",eT),this.app.schemaInitializerManager.get("details:configureActions").add("customize.triggerWorkflow",eT),this.app.schemaInitializerManager.get("table:configureItemActions").add("customize.triggerWorkflow",ej),this.app.schemaInitializerManager.get("gridCard:configureItemActions").add("customize.triggerWorkflow",ej),this.app.schemaInitializerManager.get("list:configureItemActions").add("customize.triggerWorkflow",ej),this.app.schemaInitializerManager.get("list:configureActions").add("customize.triggerWorkflow",eA),this.app.schemaInitializerManager.get("gridCard:configureActions").add("customize.triggerWorkflow",eA),this.app.schemaInitializerManager.addItem("table:configureActions","customize.triggerWorkflow",{Component:eW}),this.flowEngine.registerModels({FormTriggerWorkflowActionModel:B,RecordTriggerWorkflowActionModel:E,CollectionTriggerWorkflowActionModel:D,WorkbenchTriggerWorkflowActionModel:z}),[2]})}).call(this)}}],function(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}(r.prototype,t),r}(eD(e.Plugin))}(),h}()});
@@ -0,0 +1,10 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ export { default } from './plugin';
10
+ export * from './models';
@@ -0,0 +1,10 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react"),require("@emotion/css"),require("antd"),require("@nocobase/client-v2"),require("@nocobase/flow-engine")):"function"==typeof define&&define.amd?define("@nocobase/plugin-workflow-custom-action-trigger/client-v2",["react","@emotion/css","antd","@nocobase/client-v2","@nocobase/flow-engine"],t):"object"==typeof exports?exports["@nocobase/plugin-workflow-custom-action-trigger/client-v2"]=t(require("react"),require("@emotion/css"),require("antd"),require("@nocobase/client-v2"),require("@nocobase/flow-engine")):e["@nocobase/plugin-workflow-custom-action-trigger/client-v2"]=t(e.react,e["@emotion/css"],e.antd,e["@nocobase/client-v2"],e["@nocobase/flow-engine"])}(self,function(e,t,r,o,n){return function(){"use strict";var i={477:function(e){e.exports=t},485:function(e){e.exports=o},694:function(e){e.exports=n},59:function(e){e.exports=r},155:function(t){t.exports=e}},c={};function l(e){var t=c[e];if(void 0!==t)return t.exports;var r=c[e]={exports:{}};return i[e](r,r.exports,l),r.exports}l.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return l.d(t,{a:t}),t},l.d=function(e,t){for(var r in t)l.o(t,r)&&!l.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},l.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),l.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},l.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.g.importScripts&&(a=l.g.location+"");var a,u=l.g.document;if(!a&&u&&(u.currentScript&&"SCRIPT"===u.currentScript.tagName.toUpperCase()&&(a=u.currentScript.src),!a)){var s=u.getElementsByTagName("script");if(s.length)for(var f=s.length-1;f>-1&&(!a||!/^http(s?):/.test(a));)a=s[f--].src}if(!a)throw Error("Automatic publicPath is not supported in this browser");l.p=a.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/");var p={};return!function(){var e="",t="u">typeof document?document.currentScript:null;if(t&&t.src&&(e=t.src.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")),!e){var r=window.__webpack_public_path__||"";r&&("/"!==r.charAt(r.length-1)&&(r+="/"),e=r+"static/plugins/@nocobase/plugin-workflow-custom-action-trigger/dist/client-v2/")}if(!e){var o=window.__nocobase_modern_client_prefix__||"v",n="/"+(o=String(o).replace(/^\/+|\/+$/g,"")||"v")+"/";if(!(e=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var i=window.location.pathname||"/",c=i.indexOf(n);e=c>=0?i.slice(0,c+1):"/"}e&&(e=e.replace(RegExp("/"+o+"/?$"),"/")),e||(e="/"),"/"!==e.charAt(e.length-1)&&(e+="/"),e+="static/plugins/@nocobase/plugin-workflow-custom-action-trigger/dist/client-v2/"}l.p=e}(),!function(){l.r(p),l.d(p,{CollectionTriggerWorkflowActionModel:function(){return R},FormTriggerWorkflowActionModel:function(){return E},default:function(){return Y},registerTriggerWorkflowActionGroups:function(){return q},WorkbenchTriggerWorkflowActionModel:function(){return B},RecordTriggerWorkflowActionModel:function(){return I}});var e=l(485),t="@nocobase/plugin-workflow-custom-action-trigger",r="custom-action",o=[{label:"{{t('Custom context', { ns: \"".concat(t,'" })}}'),value:0,tooltip:"{{t('Could be used on non-record related action buttons. You can provide custom JSON as trigger data.', { ns: \"".concat(t,'" })}}')},{label:"{{t('Single collection record', { ns: \"".concat(t,'" })}}'),value:1,tooltip:"{{t('Could only be used on single record related action buttons. Such as in form, detail block and table row of record.', { ns: \"".concat(t,'" })}}')},{label:"{{t('Multiple collection records', { ns: \"".concat(t,'" })}}'),value:2,tooltip:"{{t('Could only be used on multiple record related action buttons. Such as for batch action in table block. The data in trigger variable will be an array.', { ns: \"".concat(t,'" })}}')}],n=l(155),i=l.n(n),c=l(477),a=l(694),u=l(59),s="@nocobase/plugin-workflow-custom-action-trigger";function f(e,t){return(0,a.tExpr)(e,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){var o;o=r[t],t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o})}return e}({ns:s},t))}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=Array(t);r<t;r++)o[r]=e[r];return o}function g(e,t,r,o,n,i,c){try{var l=e[i](c),a=l.value}catch(e){r(e);return}l.done?t(a):Promise.resolve(a).then(o,n)}function b(e){return function(){var t=this,r=arguments;return new Promise(function(o,n){var i=e.apply(t,r);function c(e){g(i,o,n,c,l,"next",e)}function l(e){g(i,o,n,c,l,"throw",e)}c(void 0)})}}function y(e,t,r){return t=h(t),function(e,t){var r;if(t&&("object"==((r=t)&&"u">typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e,j()?Reflect.construct(t,r||[],h(e).constructor):t.apply(e,r))}function w(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}function m(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function h(e){return(h=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function v(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&O(e,t)}function k(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){m(e,t,r[t])})}return e}function x(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}function O(e,t){return(O=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function S(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r,o,n=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var i=[],c=!0,l=!1;try{for(n=n.call(e);!(c=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{c||null==n.return||n.return()}finally{if(l)throw o}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return d(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return d(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function j(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(j=function(){return!!e})()}function A(e,t){var r,o,n,i={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]},c=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),l=Object.defineProperty;return l(c,"next",{value:a(0)}),l(c,"throw",{value:a(1)}),l(c,"return",{value:a(2)}),"function"==typeof Symbol&&l(c,Symbol.iterator,{value:function(){return this}}),c;function a(l){return function(a){var u=[l,a];if(r)throw TypeError("Generator is already executing.");for(;c&&(c=0,u[0]&&(i=0)),i;)try{if(r=1,o&&(n=2&u[0]?o.return:u[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,u[1])).done)return n;switch(o=0,n&&(u=[2&u[0],n.value]),u[0]){case 0:case 1:n=u;break;case 4:return i.label++,{value:u[1],done:!1};case 5:i.label++,o=u[1],u=[0];continue;case 7:u=i.ops.pop(),i.trys.pop();continue;default:if(!(n=(n=i.trys).length>0&&n[n.length-1])&&(6===u[0]||2===u[0])){i=0;continue}if(3===u[0]&&(!n||u[1]>n[0]&&u[1]<n[3])){i.label=u[1];break}if(6===u[0]&&i.label<n[1]){i.label=n[1],n=u;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(u);break}n[2]&&i.ops.pop(),i.trys.pop();continue}u=t.call(e,i)}catch(e){u=[6,e],o=0}finally{r=n=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}}function T(){var e,t,r=(e=["\n & > .ant-space-item:first-child,\n & > .ant-space-item:last-child {\n flex: 0 0 auto;\n }\n & > .ant-space-item:nth-child(2) {\n flex: 1;\n min-width: 0;\n }\n & > .ant-space-item:nth-child(2) .ant-select {\n width: 100%;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return T=function(){return r},r}function P(e){var t,r,o,n,i=function(e){var t,r=(null==e?void 0:e.dataSourceKey)||(null==e||null==(t=e.dataSource)?void 0:t.key),o=null==e?void 0:e.name;if(o)return r&&"main"!==r?"".concat(r,":").concat(o):o}((null==e||null==(t=e.blockModel)?void 0:t.collection)||(null==e||null==(n=e.model)||null==(o=n.context)||null==(r=o.blockModel)?void 0:r.collection));return i?{"config.collection":i}:void 0}var M=function(e){return(null==e?void 0:e.length)?e.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0};function C(e){var t=e.filter,o=e.optionFilter,n=function(e,t){if(null==e)return{};var r,o,n,i={};if("u">typeof Reflect&&Reflect.ownKeys){for(n=0,r=Reflect.ownKeys(Object(e));n<r.length;n++)o=r[n],!(t.indexOf(o)>=0)&&Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o]);return i}if(i=function(e,t){if(null==e)return{};var r,o,n={},i=Object.getOwnPropertyNames(e);for(o=0;o<i.length;o++)r=i[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r]);return n}(e,t),Object.getOwnPropertySymbols)for(n=0,r=Object.getOwnPropertySymbols(e);n<r.length;n++)o=r[n],!(t.indexOf(o)>=0)&&Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o]);return i}(e,["filter","optionFilter"]),c=(0,a.useFlowContext)(),l=S(i().useState([]),2),s=l[0],f=l[1],p=S(i().useState(!1),2),d=p[0],g=p[1];return i().useEffect(function(){var e=!0;return b(function(){var n,i,l;return A(this,function(a){switch(a.label){case 0:g(!0),a.label=1;case 1:return a.trys.push([1,3,4,5]),[4,c.api.request({url:"workflows:list",method:"get",params:{paginate:!1,filter:k({type:r,enabled:!0},t)}})];case 2:if(i=a.sent(),!e)return[2];return l=(null==i||null==(n=i.data)?void 0:n.data)||[],f(("function"==typeof o?l.filter(o):l).map(function(e){return{label:e.title,value:e.key}})),[3,5];case 3:return console.error("Error loading workflows:",a.sent()),[3,5];case 4:return e&&g(!1),[7];case 5:return[2]}})})(),function(){e=!1}},[c.api,t,o]),i().createElement(u.Select,x(k({},n),{loading:d,options:s}))}function W(t){var r=t.description,o=t.filter,n=t.optionFilter,i=t.withContextData;return k({description:{type:"void","x-component":u.Alert,"x-component-props":{type:"info",showIcon:!0,message:r,style:{marginBottom:"1em"}}},group:{type:"array","x-component":"ArrayItems","x-decorator":"FormItem",items:{type:"object",properties:{space:{type:"void","x-component-props":{align:"center",style:{display:"flex",width:"100%"},className:(0,c.css)(T())},"x-component":u.Space,properties:{sort:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.SortHandle"},workflowKey:{type:"string","x-decorator":"FormItem","x-component":C,"x-component-props":{filter:o,optionFilter:n,placeholder:"{{t('Select workflow', { ns: 'workflow' })}}",style:{width:"100%"}},required:!0},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},properties:{add:{type:"void",title:"{{t('Add workflow', { ns: 'workflow' })}}","x-component":"ArrayItems.Addition"}}}},void 0!==i&&i?{contextData:{type:"string",title:f("Context data"),description:f("Input JSON as context data passed into the workflow. Frontend variables are supported."),"x-decorator":"FormItem","x-component":e.TextAreaWithContextSelector,"x-component-props":{rows:5}}}:{})}var F=f('Workflow will be triggered directly once the button clicked, without data saving. Only supports to be bound with "Custom action event".');function _(e,t){var r=null==e?void 0:e.type;return 0===t||null==t?0===r||null==r:r===t}var E=function(e){function t(){var e;return w(this,t),e=y(this,t,arguments),m(e,"defaultProps",{title:f("Trigger workflow")}),e}return v(t,e),t}(e.FormActionModel);E.define({label:f("Trigger workflow")}),E.registerFlow({key:"customFormTriggerWorkflowsActionSettings",on:"click",title:"{{t('Workflow', { ns: 'workflow' })}}",steps:{confirm:{use:"confirm"},triggerWorkflows:{title:"{{t('Bind workflows', { ns: 'workflow' })}}",uiSchema:function(e){return W({description:F,filter:P(e),optionFilter:function(e){var t;return(null==(t=e.config)?void 0:t.type)===1}})},handler:function(e,t){return b(function(){var r;return A(this,function(o){switch(o.label){case 0:if(!(null==(r=t.group)?void 0:r.length))return e.message.error(e.t("Button is not configured properly, please contact the administrator.",{ns:s})),e.exit(),[2];if(!e.blockModel)return e.exit(),[2];o.label=1;case 1:return o.trys.push([1,3,4,5]),e.model.setProps("loading",!0),[4,e.blockModel.submitHandler(e,{},function(r,o){return b(function(){return A(this,function(n){switch(n.label){case 0:return[4,e.blockModel.resource.runAction("trigger",{params:x(k({},null!=o?{filterByTk:o}:{}),{triggerWorkflows:M(t.group)}),data:r})];case 1:return[2,n.sent()]}})})()})];case 2:return o.sent(),[3,5];case 3:return console.error("Error triggering workflows:",o.sent()),e.exit(),[3,5];case 4:return e.model.setProps("loading",!1),[7];case 5:return[2]}})})()}},afterSuccess:{use:"afterSuccess",defaultParams:{successMessage:f("Operation succeeded")}}}});var I=function(e){function t(){var e;return w(this,t),e=y(this,t,arguments),m(e,"defaultProps",{title:f("Trigger workflow")}),e}return v(t,e),t}(e.ActionModel);m(I,"scene",e.ActionSceneEnum.record),I.define({label:f("Trigger workflow")}),I.registerFlow({key:"customRecordTriggerWorkflowsActionSettings",on:"click",title:"{{t('Workflow', { ns: 'workflow' })}}",steps:{confirm:{use:"confirm"},triggerWorkflows:{title:"{{t('Bind workflows', { ns: 'workflow' })}}",uiSchema:function(e){return W({description:F,filter:P(e),optionFilter:function(e){var t;return(null==(t=e.config)?void 0:t.type)===1}})},handler:function(e,t){return b(function(){var r,o,n,i;return A(this,function(c){switch(c.label){case 0:if(n=(o=e.blockModel).resource,i=o.collection,!n||!i)return e.exit(),[2];if(!(null==(r=t.group)?void 0:r.length))return e.message.error(e.t("Button is not configured properly, please contact the administrator.",{ns:s})),e.exit(),[2];c.label=1;case 1:return c.trys.push([1,3,,4]),[4,n.runAction("trigger",{params:{triggerWorkflows:M(t.group),filterByTk:function(e,t){if(!e||!t)return null;var r=t.filterTargetKey;return Array.isArray(r)?r.reduce(function(t,r){return t[r]=e[r],t},{}):e[r]}(e.record,i)}})];case 2:return c.sent(),[3,4];case 3:return console.error("Error triggering workflows:",c.sent()),e.exit(),[3,4];case 4:return[2]}})})()}},afterSuccess:{use:"afterSuccess",defaultParams:{successMessage:f("Operation succeeded"),actionAfterSuccess:"previous"}}}});var R=function(e){function t(){var e;return w(this,t),e=y(this,t,arguments),m(e,"defaultProps",{title:null}),e}return v(t,e),t}(e.CollectionActionModel);m(R,"scene",e.ActionSceneEnum.collection),R.define({label:f("Trigger workflow")}),R.registerFlow({key:"customCollectionTriggerWorkflowsActionSettings",title:"{{t('Workflow', { ns: 'workflow' })}}",steps:{setContextType:{hideInSettings:!0,preset:!0,title:f("Context type"),uiSchema:{type:{type:"number","x-decorator":"FormItem","x-component":"Radio.Group",enum:[{label:f("Custom context"),value:0},{label:f("Multiple collection records"),value:2}],required:!0}},handler:function(e,t){e.model.props.title||e.model.setProps("title",t.type?e.t("Trigger workflow",{ns:s}):e.t("Trigger global workflow",{ns:s}))}},triggerWorkflows:{title:"{{t('Bind workflows', { ns: 'workflow' })}}",uiSchema:function(e){var t,r,o=(null!=(t=null==(r=e.model.stepParams.customCollectionTriggerWorkflowsActionSettings)?void 0:r.setContextType)?t:{}).type;return W({withContextData:!o,filter:o?P(e):void 0,description:o?f('Only support custom action workflow with context type set to "Multiple records".'):f('Only support custom action workflow with context type set to "Custom context".'),optionFilter:function(e){return _(e.config,o)}})}}}}),R.registerFlow({key:"customCollectionTriggerWorkflowsActionEventSettings",on:"click",steps:{confirm:{use:"confirm"},trigger:{handler:function(e){return b(function(){var t,r,o,n,i,c,l,u,f;return A(this,function(p){switch(p.label){case 0:if(o=(r=e.model.stepParams.customCollectionTriggerWorkflowsActionSettings).setContextType.type,i=(n=null!=(t=r.triggerWorkflows)?t:{}).group,c=n.contextData,!(null==i?void 0:i.length))return e.message.error(e.t("Button is not configured properly, please contact the administrator.",{ns:s})),e.exit(),[2];if(2!==o)return[3,5];if(!(null==(l=e.blockModel)?void 0:l.resource))return e.message.error(e.t("No resource selected for deletion")),e.exit(),[2];if(0===(u=e.blockModel.resource).getSelectedRows().length)return e.message.warning(e.t("Please select at least one record.",{ns:s})),e.exit(),[2];p.label=1;case 1:return p.trys.push([1,3,,4]),[4,u.runAction("trigger",{params:{triggerWorkflows:M(i),filterByTk:e.blockModel.collection.getFilterByTK(u.getSelectedRows())}})];case 2:return p.sent(),u.setSelectedRows([]),[3,4];case 3:return console.error("Error triggering workflows:",p.sent()),e.exit(),[3,4];case 4:return[3,14];case 5:if(o)return[3,13];if(!c)return[3,9];p.label=6;case 6:return p.trys.push([6,8,,9]),[4,(0,a.resolveExpressions)(c,e)];case 7:return f=p.sent(),[3,9];case 8:return p.sent(),[3,9];case 9:return p.trys.push([9,11,,12]),[4,e.api.request({url:"workflows:trigger",method:"post",params:{triggerWorkflows:M(i)},data:{values:f}})];case 10:return p.sent(),[3,12];case 11:return console.error("Error triggering workflows:",p.sent()),e.exit(),[3,12];case 12:return[3,14];case 13:throw Error("Invalid context type");case 14:return[2]}})})()}},afterSuccess:{use:"afterSuccess",defaultParams:{successMessage:f("Operation succeeded"),actionAfterSuccess:"previous"}}}});var B=function(e){function t(){var e;return w(this,t),e=y(this,t,arguments),m(e,"defaultProps",{title:f("Trigger global workflow"),icon:"ThunderboltOutlined"}),e}return v(t,e),t}(e.ActionModel);B.define({label:f("Trigger global workflow")}),B.registerFlow({key:"workbenchTriggerWorkflowsActionSettings",on:"click",title:"{{t('Workflow', { ns: 'workflow' })}}",steps:{confirm:{use:"confirm"},triggerWorkflows:{title:"{{t('Bind workflows', { ns: 'workflow' })}}",uiSchema:function(){return W({withContextData:!0,description:f('Only support custom action workflow with context type set to "Custom context".'),optionFilter:function(e){return _(e.config,0)}})},handler:function(e,t){return b(function(){var r;return A(this,function(o){switch(o.label){case 0:if(!t.contextData)return[3,4];o.label=1;case 1:return o.trys.push([1,3,,4]),[4,(0,a.resolveExpressions)(t.contextData,e)];case 2:return r=o.sent(),[3,4];case 3:return o.sent(),[3,4];case 4:return o.trys.push([4,6,,7]),[4,e.api.request({url:"workflows:trigger",method:"post",params:{triggerWorkflows:M(t.group)},data:{values:r}})];case 5:return o.sent(),e.message.success(e.t("Operation succeeded")),[3,7];case 6:return console.error("Error triggering workflows:",o.sent()),[3,7];case 7:return[2]}})})()}},afterSuccess:{use:"afterSuccess",defaultParams:{successMessage:f("Operation succeeded"),actionAfterSuccess:"previous"}}}});var D={CollectionActionGroupModel:{CollectionTriggerWorkflowActionModel:R},RecordActionGroupModel:{RecordTriggerWorkflowActionModel:I},FormActionGroupModel:{FormTriggerWorkflowActionModel:E},ActionPanelGroupActionModel:{WorkbenchTriggerWorkflowActionModel:B}};function q(e){Object.entries(D).forEach(function(t){var r,o=S(t,2),n=o[0],i=o[1],c=e.getModelClass(n);null==c||null==(r=c.registerActionModels)||r.call(c,i)})}function N(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var G=function(){var e;function t(){if(!(this instanceof t))throw TypeError("Cannot call a class as a function");N(this,"title",'{{t("Custom action event", { ns: "'.concat(s,'" })}}')),N(this,"description",'{{t(\'When the "Trigger Workflow" button is clicked, the event is triggered based on different context where the button is located. For complex data processing that cannot be handled simply by built-in operations (CRUD) of NocoBase, you can define a series of operations through a workflow and trigger it with the "Trigger Workflow" button.\', { ns: "'.concat(s,'" })}}')),N(this,"sync",!1),N(this,"presetFieldset",{type:{type:"number",title:'{{t("Context type", { ns: "'.concat(s,'" })}}'),"x-decorator":"FormItem","x-component":"Radio.Group",enum:o,required:!0,default:0},collection:N({type:"string",title:'{{t("Collection")}}',required:!0,"x-decorator":"FormItem","x-component":"DataSourceCollectionCascader","x-component-props":{dataSourceFilter:function(e){return"main"===e.options.key||e.options.isDBInstance}}},"x-reactions",[{dependencies:[".type"],fulfill:{state:{visible:"{{Boolean($deps[0])}}"}}}])}),N(this,"fieldset",{type:{type:"number",title:'{{t("Context type", { ns: "'.concat(s,'" })}}'),"x-decorator":"FormItem","x-component":"Radio.Group",enum:o,default:0,"x-disabled":!0},collection:N({type:"string",title:'{{t("Collection")}}',required:!0,"x-decorator":"FormItem","x-component":"DataSourceCollectionCascader","x-disabled":!0},"x-reactions",[{target:"appends",effects:["onFieldValueChange"],fulfill:{state:{value:[]}}},{dependencies:["type"],fulfill:{state:{visible:"{{Boolean($deps[0])}}"}}}]),appends:{type:"array",title:'{{t("Associations to use", { ns: "'.concat(s,'" })}}'),description:'{{t("Please select the associated fields that need to be accessed in subsequent nodes. With more than two levels of to-many associations may cause performance issue, please use with caution.", { ns: "workflow" })}}',"x-decorator":"FormItem","x-component":"AppendsTreeSelect","x-component-props":{multiple:!0},"x-reactions":[{dependencies:["collection"],fulfill:{state:{visible:"{{!!$deps[0]}}"}}}]}}),N(this,"triggerFieldset",{data:{type:"object",title:'{{t("Trigger data", { ns: "'.concat(s,'" })}}'),description:'{{t("Use JSON as trigger data for custom data context, or choose a record in single record context.", { ns: "'.concat(s,'" })}}'),"x-decorator":"FormItem","x-component":"Input.JSON",default:null},filterByTk:{type:"array",title:'{{t("Trigger data", { ns: "'.concat(s,'" })}}'),description:'{{t("Choose a record or primary key of a record in the collection to trigger.", { ns: "workflow" })}}',"x-decorator":"FormItem","x-component":"Input.JSON",default:[]},userId:{type:"number",title:'{{t("User acted", { ns: "'.concat(s,'" })}}'),"x-decorator":"FormItem","x-component":"InputNumber",default:null,required:!0},roleName:{type:"string",title:'{{t("Role of user acted", { ns: "'.concat(s,'" })}}'),"x-decorator":"FormItem","x-component":"Input",default:null}}),N(this,"isActionTriggerable_deprecated",function(e,t){return"customize:triggerWorkflows"===t.buttonAction&&1===e.type})}return e=[{key:"validate",value:function(e){return!e.type||0===e.type||[1,2].includes(e.type)&&e.collection}},{key:"getCreateModelMenuItem",value:function(e){var t=e.config;return t.collection?{key:"triggerData",label:'{{t("Trigger data", { ns: "workflow" })}}',useModel:"NodeDetailsModel",createModelOptions:{use:"NodeDetailsModel",stepParams:{resourceSettings:{init:{dataSourceKey:"main",collectionName:t.collection,dataPath:"$context.data"}},cardSettings:{titleDescription:{title:'{{t("Trigger data", { ns: "workflow" })}}'}}},subModels:{grid:{use:"NodeDetailsGridModel",subType:"object"}}}}:null}}],function(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}(t.prototype,e),t}();function $(e,t,r,o,n,i,c){try{var l=e[i](c),a=l.value}catch(e){r(e);return}l.done?t(a):Promise.resolve(a).then(o,n)}function K(e){return function(){var t=this,r=arguments;return new Promise(function(o,n){var i=e.apply(t,r);function c(e){$(i,o,n,c,l,"next",e)}function l(e){$(i,o,n,c,l,"throw",e)}c(void 0)})}}function J(e,t,r){return(J=L()?Reflect.construct:function(e,t,r){var o=[null];o.push.apply(o,t);var n=new(Function.bind.apply(e,o));return r&&z(n,r.prototype),n}).apply(null,arguments)}function U(e){return(U=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function z(e,t){return(z=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function H(e){var t="function"==typeof Map?new Map:void 0;return(H=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return J(e,arguments,U(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),z(r,e)})(e)}function L(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(L=function(){return!!e})()}function V(e,t){var r,o,n,i={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]},c=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),l=Object.defineProperty;return l(c,"next",{value:a(0)}),l(c,"throw",{value:a(1)}),l(c,"return",{value:a(2)}),"function"==typeof Symbol&&l(c,Symbol.iterator,{value:function(){return this}}),c;function a(l){return function(a){var u=[l,a];if(r)throw TypeError("Generator is already executing.");for(;c&&(c=0,u[0]&&(i=0)),i;)try{if(r=1,o&&(n=2&u[0]?o.return:u[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,u[1])).done)return n;switch(o=0,n&&(u=[2&u[0],n.value]),u[0]){case 0:case 1:n=u;break;case 4:return i.label++,{value:u[1],done:!1};case 5:i.label++,o=u[1],u=[0];continue;case 7:u=i.ops.pop(),i.trys.pop();continue;default:if(!(n=(n=i.trys).length>0&&n[n.length-1])&&(6===u[0]||2===u[0])){i=0;continue}if(3===u[0]&&(!n||u[1]>n[0]&&u[1]<n[3])){i.label=u[1];break}if(6===u[0]&&i.label<n[1]){i.label=n[1],n=u;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(u);break}n[2]&&i.ops.pop(),i.trys.pop();continue}u=t.call(e,i)}catch(e){u=[6,e],o=0}finally{r=n=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}}var Y=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function o(){var e,t,r,n,i,c;if(!(this instanceof o))throw TypeError("Cannot call a class as a function");return t=o,r=arguments,t=U(t),n=e=function(e,t){var r;if(t&&("object"==((r=t)&&"u">typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,L()?Reflect.construct(t,r||[],U(this).constructor):t.apply(this,r)),i="registerWorkbenchActionGroups",c=function(){return K(function(){return V(this,function(t){switch(t.label){case 0:return[4,e.flowEngine.getModelClassAsync("ActionPanelGroupActionModel")];case 1:return t.sent(),q(e.flowEngine),[2]}})})()},i in n?Object.defineProperty(n,i,{value:c,enumerable:!0,configurable:!0,writable:!0}):n[i]=c,e}return o.prototype=Object.create(e&&e.prototype,{constructor:{value:o,writable:!0,configurable:!0}}),e&&z(o,e),t=[{key:"beforeLoad",value:function(){return K(function(){return V(this,function(e){return this.app.eventBus.addEventListener("plugin:block-workbench:loaded",this.registerWorkbenchActionGroups),[2]})}).call(this)}},{key:"load",value:function(){return K(function(){var e,t;return V(this,function(o){return this.flowEngine.registerModels({FormTriggerWorkflowActionModel:E,RecordTriggerWorkflowActionModel:I,CollectionTriggerWorkflowActionModel:R,WorkbenchTriggerWorkflowActionModel:B}),null==(t=this.app.pm.get("workflow"))||null==(e=t.registerTrigger)||e.call(t,r,G),q(this.flowEngine),[2]})}).call(this)}}],function(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}(o.prototype,t),o}(H(e.Plugin))}(),p}()});
@@ -0,0 +1,11 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ export declare const NAMESPACE = "@nocobase/plugin-workflow-custom-action-trigger";
10
+ export declare function tExpr(key: string, options?: Record<string, any>): string;
11
+ export declare function useT(): (key: string, options?: Record<string, any>) => string;
@@ -6,23 +6,21 @@
6
6
  * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
- import { ActionModel, CollectionActionModel, FormActionModel } from '@nocobase/client';
10
- import { ButtonProps } from 'antd';
9
+ import { ActionModel, CollectionActionModel, FormActionModel } from '@nocobase/client-v2';
10
+ import type { FlowEngine } from '@nocobase/flow-engine';
11
+ import type { ButtonProps } from 'antd/es/button';
11
12
  export declare class FormTriggerWorkflowActionModel extends FormActionModel {
12
13
  defaultProps: ButtonProps;
13
14
  }
14
15
  export declare class RecordTriggerWorkflowActionModel extends ActionModel {
15
- static scene: import("@nocobase/client").ActionSceneType;
16
+ static scene: import("@nocobase/client-v2").ActionSceneType;
16
17
  defaultProps: ButtonProps;
17
18
  }
18
19
  export declare class CollectionTriggerWorkflowActionModel extends CollectionActionModel {
19
- static scene: import("@nocobase/client").ActionSceneType;
20
- defaultProps: ButtonProps;
21
- }
22
- export declare class CollectionGlobalTriggerWorkflowActionModel extends ActionModel {
23
- static scene: import("@nocobase/client").ActionSceneType;
20
+ static scene: import("@nocobase/client-v2").ActionSceneType;
24
21
  defaultProps: ButtonProps;
25
22
  }
26
23
  export declare class WorkbenchTriggerWorkflowActionModel extends ActionModel {
27
24
  defaultProps: ButtonProps;
28
25
  }
26
+ export declare function registerTriggerWorkflowActionGroups(flowEngine: FlowEngine): void;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ export * from './TriggerWorkflowActionModels';
@@ -0,0 +1,9 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ export * from './actions';
@@ -0,0 +1,15 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import { Plugin } from '@nocobase/client-v2';
10
+ export declare class CustomActionTriggerPlugin extends Plugin {
11
+ private registerWorkbenchActionGroups;
12
+ beforeLoad(): Promise<void>;
13
+ load(): Promise<void>;
14
+ }
15
+ export default CustomActionTriggerPlugin;