@nocobase/plugin-action-custom-request 2.1.0-alpha.12 → 2.1.0-alpha.14

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.
@@ -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("react-i18next"),require("@emotion/css"),require("@formily/antd-v5"),require("@formily/react"),require("@nocobase/flow-engine"),require("file-saver"),require("@formily/shared"),require("react"),require("antd"),require("@nocobase/client"),require("@nocobase/utils/client"),require("lodash")):"function"==typeof define&&define.amd?define("@nocobase/plugin-action-custom-request",["react-i18next","@emotion/css","@formily/antd-v5","@formily/react","@nocobase/flow-engine","file-saver","@formily/shared","react","antd","@nocobase/client","@nocobase/utils/client","lodash"],t):"object"==typeof exports?exports["@nocobase/plugin-action-custom-request"]=t(require("react-i18next"),require("@emotion/css"),require("@formily/antd-v5"),require("@formily/react"),require("@nocobase/flow-engine"),require("file-saver"),require("@formily/shared"),require("react"),require("antd"),require("@nocobase/client"),require("@nocobase/utils/client"),require("lodash")):e["@nocobase/plugin-action-custom-request"]=t(e["react-i18next"],e["@emotion/css"],e["@formily/antd-v5"],e["@formily/react"],e["@nocobase/flow-engine"],e["file-saver"],e["@formily/shared"],e.react,e.antd,e["@nocobase/client"],e["@nocobase/utils/client"],e.lodash)}(self,function(e,t,r,n,o,a,i,u,l,c,s,p){return function(){"use strict";var f={477:function(e){e.exports=t},418:function(e){e.exports=r},230:function(e){e.exports=n},166:function(e){e.exports=i},342:function(e){e.exports=c},694:function(e){e.exports=o},768:function(e){e.exports=s},59:function(e){e.exports=l},506:function(e){e.exports=a},773:function(e){e.exports=p},155:function(e){e.exports=u},953:function(t){t.exports=e}},m={};function d(e){var t=m[e];if(void 0!==t)return t.exports;var r=m[e]={exports:{}};return f[e](r,r.exports,d),r.exports}d.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return d.d(t,{a:t}),t},d.d=function(e,t){for(var r in t)d.o(t,r)&&!d.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},d.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),d.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},d.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},d.g.importScripts&&(y=d.g.location+"");var y,b=d.g.document;if(!y&&b&&(b.currentScript&&"SCRIPT"===b.currentScript.tagName.toUpperCase()&&(y=b.currentScript.src),!y)){var v=b.getElementsByTagName("script");if(v.length)for(var h=v.length-1;h>-1&&(!y||!/^http(s?):/.test(y));)y=v[h--].src}if(!y)throw Error("Automatic publicPath is not supported in this browser");d.p=y.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/");var g={},x=window.__nocobase_public_path__||"";if(!x&&window.location&&window.location.pathname){var O=window.location.pathname||"/",w=O.indexOf("/v2/");x=w>=0?O.slice(0,w+1):"/"}return x&&(x=x.replace(/\/v2\/?$/,"/")),x||(x="/"),"/"!==x.charAt(x.length-1)&&(x+="/"),d.p=x+"static/plugins/@nocobase/plugin-action-custom-request/dist/client/",!function(){d.r(g),d.d(g,{default:function(){return ek},PluginActionCustomRequestClient:function(){return eI}});var e,t,r,n=d(342),o=d(155),a=d.n(o),i=d(230),u=d(768),l=d(59),c=d(506);function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function p(e,t,r,n,o,a,i){try{var u=e[a](i),l=u.value}catch(e){r(e);return}u.done?t(l):Promise.resolve(l).then(n,o)}function f(e){return function(){var t=this,r=arguments;return new Promise(function(n,o){var a=e.apply(t,r);function i(e){p(a,n,o,i,u,"next",e)}function u(e){p(a,n,o,i,u,"throw",e)}i(void 0)})}}function m(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}function y(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(i,"next",{value:l(0)}),u(i,"throw",{value:l(1)}),u(i,"return",{value:l(2)}),"function"==typeof Symbol&&u(i,Symbol.iterator,{value:function(){return this}}),i;function l(u){return function(l){var c=[u,l];if(r)throw TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,n=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}var b=function(){var e=(0,n.useAPIClient)(),t=(0,n.useNavigateNoUpdate)(),r=(0,i.useFieldSchema)(),o=(0,n.useBlockRequestContext)().field,a=(0,n.useCompile)(),p=(0,i.useForm)(),d=((0,n.useBlockContext)()||{}).name,b=(0,n.useCollectionRecordData)(),v=(0,i.useFieldSchema)(),h=(0,i.useField)(),g=(0,n.useActionContext)().setVisible,x=l.App.useApp(),O=x.modal,w=x.message,S=(0,n.useDataSourceKey)(),j=(0,n.useContextVariable)().ctx,P=(0,n.useLocalVariables)(),A=(0,n.useVariables)();return{onClick:function(i,l){return f(function(){var i,x,T,C,I,k,q,E,R,F,D,N,B,M,V,_,U,$,z,L,G,K,W;return y(this,function(H){switch(H.label){case 0:if(I=(null==o||null==(T=o.data)?void 0:T.selectedRowData)?null==o||null==(C=o.data)?void 0:C.selectedRowData:j,q=(k=null!=(i=null==r?void 0:r["x-action-settings"])?i:{}).skipValidator,R=(E=k.onSuccess||{}).manualClose,F=E.redirecting,D=E.redirectTo,N=E.successMessage,B=E.actionAfterSuccess,M=N,V=D,_=null==r?void 0:r["x-action"],!0===q||"customize:form:request"!==_)return[3,2];return[4,p.submit()];case 1:H.sent(),H.label=2;case 2:U=m({},b),"customize:form:request"===_&&(U=p.values),null!=(x=h).data||(x.data={}),h.data.loading=!0,H.label=3;case 3:return H.trys.push([3,,8,9]),z=v["x-custom-request-id"]||v["x-uid"],[4,e.request({url:"/customRequests:send/".concat(z),method:"POST",data:{currentRecord:{dataSourceKey:S,data:U},$nForm:"form"===d?p.values:void 0,$nSelectedRecord:I},responseType:"stream"===v["x-response-type"]?"blob":"json"})];case 4:return L=H.sent(),[4,(0,n.getVariableValue)(M,{variables:A,localVariables:((function(e){if(Array.isArray(e))return s(e)})(P)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(P)||function(e){if(e){if("string"==typeof e)return s(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return s(e,void 0)}}(P)||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:"$nResponse",ctx:new Proxy(m({},null==L||null==($=L.data)?void 0:$.data,null==L?void 0:L.data),{})}])})];case 5:if(M=H.sent(),!D)return[3,7];return[4,(0,n.getVariableValue)(D,{variables:A,localVariables:P})];case 6:V=H.sent(),H.label=7;case 7:if(L.headers["content-disposition"]&&(K=(G=L.headers["content-disposition"]).match(/filename\*=utf-8''([^;]+)/i),W=G.match(/filename="([^"]+)"/i),K?(0,c.saveAs)(L.data,decodeURIComponent(K[1])):W&&(0,c.saveAs)(L.data,W[1])),h.data.loading=!1,l&&(null==l||l()),"previous"!==B&&(B||!0===F)||null==g||g(!1),!M)return(F&&!B||"redirect"===B)&&V&&((0,u.isURL)(V)?window.location.href=V:t(V)),[2];return R?O.success({title:a(M),onOk:function(){return f(function(){return y(this,function(e){return(F&&!B||"redirect"===B)&&V&&((0,u.isURL)(V)?window.location.href=V:t(V)),[2]})})()}}):(w.success(a(M)),(F&&!B||"redirect"===B)&&V&&((0,u.isURL)(V)?window.location.href=V:t(V))),[3,9];case 8:return h.data.loading=!1,[7];case 9:return[2]}})})()}}},v=function(){var e=(0,i.useFieldSchema)(),t=e["x-custom-request-id"]||e["x-uid"],r="customRequests:get/".concat(t);return(0,n.useRequest)({url:r,params:{appends:["roles"]}},{manual:!0,cacheKey:r})},h=d(773),x=d(953),O="action-custom-request";function w(e){return"{{t('".concat(e,"', { ns: '").concat(O,"', nsMode: 'fallback' })}}")}function S(){return(0,x.useTranslation)(O,{nsMode:"fallback"})}function j(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function P(e){return function(e){if(Array.isArray(e))return j(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||A(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 A(e,t){if(e){if("string"==typeof e)return j(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 j(e,t)}}var T=function(){var e,t=(0,n.useCurrentPopupContext)().params,r=(0,n.useCollectionRecordData)(),o=(0,n.useTableBlockContext)();if(r)return!1;var a=null==(e=(0,n.getStoredPopupContext)(null==t?void 0:t.popupuid))?void 0:e.tableBlockContext;return!(0,h.isEmpty)(a)||!(0,h.isEmpty)(o)},C=function(){var e,t=(0,n.useCollection_deprecated)(),r=S().t,a=(0,n.useCollectionFilterOptions)(t),i=(0,n.useCollectionFilterOptions)("users",n.DEFAULT_DATA_SOURCE_KEY),u=(0,n.useCompile)(),l=(0,n.useCollectionRecordData)(),c=((0,n.useBlockContext)()||{}).name,s=(0,n.useFormBlockContext)().form,p=function(e){if(Array.isArray(e))return e}(e=(0,o.useMemo)(function(){return[u(a),u(i)]},[a,i]))||function(e){var t,r,n=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o=[],a=!0,i=!1;try{for(n=n.call(e);!(a=(t=n.next()).done)&&(o.push(t.value),2!==o.length);a=!0);}catch(e){i=!0,r=e}finally{try{a||null==n.return||n.return()}finally{if(i)throw r}}return o}}(e)||A(e,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.")}(),f=p[0],m=p[1],d=(0,n.useGlobalVariable)("$env"),y=(0,n.useContextAssociationFields)({maxDepth:2,contextCollectionName:t.name}),b=T();return(0,o.useMemo)(function(){var e,t;return[d,l&&{name:"currentRecord",title:r("Current record",{ns:"client"}),children:P(f)},("form"===c||s)&&{name:"$nForm",title:r("Current form",{ns:"client"}),children:P(f)},{name:"currentUser",title:r("Current user",{ns:"client"}),children:m},{name:"currentTime",title:r("Current time",{ns:"client"}),children:null},{name:"$nToken",title:"API token",children:null},b&&(e=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}({},y),t=t={name:"$nSelectedRecord",title:y.label},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)].filter(Boolean)},[l,r,f,c,m,b])},I=d(418),k=function(){return(0,n.useAPIClient)().resource("customRequests")},q={value:"name",label:"title"},E=function(){return{scope:C(),fieldNames:q,useTypedConstant:!0}},R={type:"object",properties:{method:{type:"string",required:!0,title:w("HTTP method"),"x-decorator-props":{tooltip:w("When the HTTP method is Post, Put or Patch, and this custom request inside the form, the request body will be automatically filled in with the form data")},"x-decorator":"FormItem","x-component":"Select","x-component-props":{showSearch:!1,allowClear:!1,className:"auto-width"},enum:[{label:"GET",value:"GET"},{label:"POST",value:"POST"},{label:"PUT",value:"PUT"},{label:"PATCH",value:"PATCH"},{label:"DELETE",value:"DELETE"}],default:"POST"},url:{type:"string",required:!0,title:w("URL"),"x-decorator":"FormItem","x-component":"Variable.TextArea","x-use-component-props":E,"x-component-props":{placeholder:"https://www.nocobase.com"}},headers:{type:"array","x-component":"ArrayItems","x-decorator":"FormItem",title:w("Headers"),description:w('"Content-Type" only support "application/json", and no need to specify'),items:{type:"object",properties:{space:{type:"void","x-component":"Space",properties:{name:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:w("Name")}},value:{type:"string","x-decorator":"FormItem","x-component":"Variable.TextArea","x-use-component-props":E},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},properties:{add:{type:"void",title:w("Add request header"),"x-component":"ArrayItems.Addition"}}},params:{type:"array","x-component":"ArrayItems","x-decorator":"FormItem",title:w("Parameters"),items:{type:"object",properties:{space:{type:"void","x-component":"Space",properties:{name:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:w("Name")}},value:{type:"string","x-decorator":"FormItem","x-component":"Variable.TextArea","x-use-component-props":E},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},properties:{add:{type:"void",title:w("Add parameter"),"x-component":"ArrayItems.Addition"}}},data:{type:"string",title:w("Body"),"x-decorator":"FormItem","x-decorator-props":{},"x-component":"Variable.JSON","x-component-props":{scope:"{{useCustomRequestVariableOptions}}",fieldNames:{value:"name",label:"title"},changeOnSelect:!0,autoSize:{minRows:10},placeholder:w("Input request data")},description:w("Only support standard JSON data")},timeout:{type:"number",title:w("Timeout config"),"x-decorator":"FormItem","x-decorator-props":{},"x-component":"InputNumber","x-component-props":{addonAfter:w("ms"),min:1,step:1e3,defaultValue:5e3}},responseType:{type:"string",title:w("Response type"),"x-decorator":"FormItem","x-decorator-props":{},"x-component":"Select",default:"json",enum:[{value:"json",label:"JSON"},{value:"stream",label:"Stream"}]}}};function F(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function D(e,t,r,n,o,a,i){try{var u=e[a](i),l=u.value}catch(e){r(e);return}u.done?t(l):Promise.resolve(l).then(n,o)}function N(){return(N=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}function B(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}function M(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 V(){var e,t=S().t,r=(0,n.useCollection_deprecated)().name,u=(0,n.useDataSourceKey)(),l=(0,i.useFieldSchema)(),c=k(),s=v(),p=s.data,f=s.refresh,m=(0,n.useDesignable)().dn,d=(0,o.useMemo)(function(){var e,t=B({},null==p||null==(e=p.data)?void 0:e.options);return t.data&&"string"!=typeof t.data&&(t.data=JSON.stringify(t.data,null,2)),t},[null==p||null==(e=p.data)?void 0:e.options]);return a().createElement(a().Fragment,null,a().createElement(n.SchemaSettingsActionModalItem,{title:t("Request settings"),components:{ArrayItems:I.ArrayItems},beforeOpen:function(){return!p&&f()},scope:{useCustomRequestVariableOptions:C},schema:R,initialValues:d,onSubmit:function(e){var t;return(t=function(){var t,n,o;return function(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(i,"next",{value:l(0)}),u(i,"throw",{value:l(1)}),u(i,"return",{value:l(2)}),"function"==typeof Symbol&&u(i,Symbol.iterator,{value:function(){return this}}),i;function l(u){return function(l){var c=[u,l];if(r)throw TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,n=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(a){switch(a.label){case 0:return function(e){if(null==e)throw TypeError("Cannot destructure "+e)}(e),t=N({},e),l["x-response-type"]=t.responseType,n=!l["x-custom-request-id"]||l["x-custom-request-id"]===l["x-uid"],[4,c.updateOrCreate({values:{key:l["x-uid"],options:M(B({},t),{collectionName:r,dataSourceKey:u})},filterKeys:["key"]})];case 1:return a.sent(),o={"x-response-type":t.responseType,"x-uid":l["x-uid"]},!n&&l["x-custom-request-id"]&&(o["x-custom-request-id"]=l["x-uid"],l["x-custom-request-id"]=l["x-uid"]),[4,m.emit("patch",{schema:o})];case 2:return a.sent(),m.refresh(),f(),[2]}})},function(){var e=this,r=arguments;return new Promise(function(n,o){var a=t.apply(e,r);function i(e){D(a,n,o,i,u,"next",e)}function u(e){D(a,n,o,i,u,"throw",e)}i(void 0)})})()}}))}var _=new n.SchemaSettings({name:"CustomRequestActionSettings",items:[M(B({},n.actionSettingsItems["0"]),{children:((function(e){if(Array.isArray(e))return F(e)})(e=n.actionSettingsItems["0"].children)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e){if(e){if("string"==typeof e)return F(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return F(e,void 0)}}(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.")}()).concat([{name:"request settings",Component:V},n.SchemaSettingAccessControl])})]}),U={"customize:table:request":n.Action.Link},$=(0,n.withDynamicSchemaProps)(function(e){var t,r,o=U[(0,i.useFieldSchema)()["x-action"]]||n.Action;return a().createElement(o,(t=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}({},e),r=r={useProps:b},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))});$.Designer=function(){var e=k(),t=(0,i.useFieldSchema)();return a().createElement(n.Action.Designer,{linkageAction:!0,schemaSettings:"CustomRequestActionSettings",buttonEditorProps:{isLink:"customize:table:request"===t["x-action"]},linkageRulesProps:{type:"button"},removeButtonProps:{onConfirmOk:function(){return e.destroy({filterByTk:t["x-uid"]})}}})},$.Decorator=function(e){return(0,n.useAPIClient)(),a().createElement(n.ACLActionProvider,null,e.children)};var z=d(166);function L(e,t,r,n,o,a,i){try{var u=e[a](i),l=u.value}catch(e){r(e);return}u.done?t(l):Promise.resolve(l).then(n,o)}var G=function(e){var t,r,o=k(),i=(0,n.useSchemaInitializerItem)(),u=(0,n.useSchemaInitializer)().insert,l={title:'{{ t("Custom request") }}',"x-component":"CustomRequestAction","x-action":"customize:form:request","x-toolbar":"ActionSchemaToolbar","x-settings":"actionSettings:customRequest","x-decorator":"CustomRequestAction.Decorator","x-uid":(0,z.uid)(),"x-action-settings":{onSuccess:{manualClose:!1,redirecting:!1,successMessage:'{{t("Request success")}}'}}};return a().createElement(n.SchemaInitializerItem,(t=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}({},i),r=r={onClick:function(){var e;return(e=function(){var e,t;return function(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(i,"next",{value:l(0)}),u(i,"throw",{value:l(1)}),u(i,"return",{value:l(2)}),"function"==typeof Symbol&&u(i,Symbol.iterator,{value:function(){return this}}),i;function l(u){return function(l){var c=[u,l];if(r)throw TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,n=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(r){switch(r.label){case 0:return t=(0,z.merge)(l||{},i.schema||{}),null==i||null==(e=i.schemaInitialize)||e.call(i,t),[4,o.create({values:{key:t["x-uid"]}})];case 1:return r.sent(),u(t),[2]}})},function(){var t=this,r=arguments;return new Promise(function(n,o){var a=e.apply(t,r);function i(e){L(a,n,o,i,u,"next",e)}function u(e){L(a,n,o,i,u,"throw",e)}i(void 0)})})()}},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))},K=d(694),W=d(477);function H(){var e,t,r=(e=["\n &:not(:hover) {\n border-right-color: transparent;\n border-top-color: transparent;\n background-color: transparent;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return H=function(){return r},r}var J=n.Input.JSON;function Y(){return"request-".concat((0,u.uid)())}function Q(e){return Array.isArray(e)?e.map(function(e){return{name:String((null==e?void 0:e.name)||"").trim(),value:void 0===(null==e?void 0:e.value)||(null==e?void 0:e.value)===null?"":e.value}}).filter(function(e){return!!e.name}):[]}function X(e,t,r,n,o,a,i){try{var u=e[a](i),l=u.value}catch(e){r(e);return}u.done?t(l):Promise.resolve(l).then(n,o)}function Z(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function ee(){var e=Z(["\n & > .ant-space-item:first-child {\n flex: 3;\n }\n & > .ant-space-item:nth-child(2) {\n flex-shrink: 0;\n flex: 5;\n }\n & > .ant-space-item:last-child {\n flex-shrink: 0;\n flex: 1;\n }\n "]);return ee=function(){return e},e}function et(){var e=Z(["\n & > .ant-space-item:first-child {\n flex: 3;\n }\n & > .ant-space-item:nth-child(2) {\n flex-shrink: 0;\n flex: 5;\n }\n & > .ant-space-item:last-child {\n flex-shrink: 0;\n flex: 1;\n }\n "]);return et=function(){return e},e}var er=new Map,en={key:{type:"string",title:w("Key"),"x-decorator":"FormItem","x-decorator-props":{style:{display:"none"}},"x-component":function(e){var t=e.value,r=e.onChange,n=(0,K.useFlowContext)(),o=(0,i.useForm)(),u=a().useRef(null);return a().useEffect(function(){t||null==r||r(Y())},[t,r]),a().useEffect(function(){if(t&&u.current!==t){var e,r=!0;return(e=function(){var e,a,i,l,c,s,p,f,m,d,y;return function(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(i,"next",{value:l(0)}),u(i,"throw",{value:l(1)}),u(i,"return",{value:l(2)}),"function"==typeof Symbol&&u(i,Symbol.iterator,{value:function(){return this}}),i;function l(u){return function(l){var c=[u,l];if(r)throw TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,n=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(b){switch(b.label){case 0:return b.trys.push([0,2,,3]),(s=er.get(t))||(s=n.request({url:"/customRequests:get/".concat(t),method:"GET",params:{appends:["roles"]}}).finally(function(){er.delete(t)}),er.set(t,s)),[4,s];case 1:if(m=(null==(f=null==(p=b.sent())||null==(e=p.data)?void 0:e.data)?void 0:f.options)||{},d=Array.isArray(null==f?void 0:f.roles)?f.roles.map(function(e){return null==e?void 0:e.name}).filter(Boolean):[],!r)return[2];return y=void 0===(null==m?void 0:m.data)||(null==m?void 0:m.data)===null?void 0:"string"==typeof(null==m?void 0:m.data)?m.data:JSON.stringify(m.data,null,2),o.setValues({method:(null==m?void 0:m.method)||(null==(a=o.values)?void 0:a.method)||"POST",url:(null==m?void 0:m.url)||(null==(i=o.values)?void 0:i.url),headers:Array.isArray(null==m?void 0:m.headers)?m.headers:[],params:Array.isArray(null==m?void 0:m.params)?m.params:[],data:y,timeout:(null==m?void 0:m.timeout)||(null==(l=o.values)?void 0:l.timeout)||5e3,responseType:(null==m?void 0:m.responseType)||(null==(c=o.values)?void 0:c.responseType)||"json",roles:d}),u.current=t,[3,3];case 2:return b.sent(),[3,3];case 3:return[2]}})},function(){var t=this,r=arguments;return new Promise(function(n,o){var a=e.apply(t,r);function i(e){X(a,n,o,i,u,"next",e)}function u(e){X(a,n,o,i,u,"throw",e)}i(void 0)})})(),function(){r=!1}}},[t,n,o]),a().createElement(l.Input,{value:t,disabled:!0})}},method:{type:"string",title:w("HTTP method"),required:!0,"x-decorator-props":{tooltip:w("When the HTTP method is Post, Put or Patch, and this custom request inside the form, the request body will be automatically filled in with the form data")},"x-decorator":"FormItem","x-component":"Select","x-component-props":{showSearch:!1,allowClear:!1,className:"auto-width"},default:"POST",enum:[{label:"GET",value:"GET"},{label:"POST",value:"POST"},{label:"PUT",value:"PUT"},{label:"PATCH",value:"PATCH"},{label:"DELETE",value:"DELETE"}]},url:{type:"string",title:w("URL"),required:!0,"x-decorator":"FormItem","x-component":n.TextAreaWithContextSelector,"x-component-props":{placeholder:"https://www.nocobase.com"}},headers:{type:"array","x-component":"ArrayItems","x-decorator":"FormItem",title:w("Headers"),items:{type:"object",properties:{space:{type:"void","x-component":"Space","x-component-props":{style:{flexWrap:"nowrap",maxWidth:"100%",display:"flex"},className:(0,W.css)(ee())},properties:{name:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:w("Name")}},value:{type:"string","x-decorator":"FormItem","x-component":n.TextAreaWithContextSelector,"x-component-props":{rows:1}},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},properties:{add:{type:"void",title:w("Add request header"),"x-component":"ArrayItems.Addition"}}},params:{type:"array","x-component":"ArrayItems","x-decorator":"FormItem",title:w("Parameters"),items:{type:"object",properties:{space:{type:"void","x-component":"Space","x-component-props":{style:{flexWrap:"nowrap",maxWidth:"100%",display:"flex"},className:(0,W.css)(et())},properties:{name:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:w("Name")}},value:{type:"string","x-decorator":"FormItem","x-component":n.TextAreaWithContextSelector,"x-component-props":{rows:1}},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},properties:{add:{type:"void",title:w("Add parameter"),"x-component":"ArrayItems.Addition"}}},data:{type:"string",title:w("Body"),"x-decorator":"FormItem","x-component":function(e){var t=e.value,r=e.onChange,n=function(e,t){if(null==e)return{};var r,n,o,a={};if("u">typeof Reflect&&Reflect.ownKeys){for(o=0,r=Reflect.ownKeys(Object(e));o<r.length;o++)n=r[o],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n]);return a}if(a=function(e,t){if(null==e)return{};var r,n,o={},a=Object.getOwnPropertyNames(e);for(n=0;n<a.length;n++)r=a[n],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r]);return o}(e,t),Object.getOwnPropertySymbols)for(o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)n=r[o],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n]);return a}(e,["value","onChange"]),i=(0,K.useFlowContext)(),u=(0,o.useRef)(null),c=(0,o.useCallback)(function(e){var t,r,n,o,a=null==(o=u.current)||null==(n=o.resizableTextArea)?void 0:n.textArea;if(a){var i,l,c=a.value||"",s=null!=(t=a.selectionStart)?t:c.length,p=null!=(r=a.selectionEnd)?r:s,f=c.slice(0,s)+e+c.slice(p);null==(l=null==(i=Object.getOwnPropertyDescriptor(a.constructor.prototype,"value"))?void 0:i.set)||l.call(a,f),a.dispatchEvent(new Event("input",{bubbles:!0})),requestAnimationFrame(function(){var t=s+e.length;a.setSelectionRange(t,t),a.focus()})}},[]),s=(0,o.useCallback)(function(e){e&&c(e)},[c]),p=(0,o.useMemo)(function(){return function(){var e;return null==(e=i.getPropertyMetaTree)?void 0:e.call(i)}},[i]);return a().createElement("div",{style:{position:"relative",width:"100%"}},a().createElement(J,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}({ref:u,value:t,onChange:r},n)),a().createElement("div",{style:{position:"absolute",top:0,right:0,zIndex:1,lineHeight:0}},a().createElement(K.FlowContextSelector,{metaTree:p,onChange:function(e){return s(e)}},a().createElement(l.Button,{type:"default",style:{fontStyle:"italic",fontFamily:"New York, Times New Roman, Times, serif"},className:(0,W.css)(H())},"x"))))},"x-component-props":{autoSize:{minRows:10},placeholder:w("Input request data")},description:w("Only support standard JSON data")},timeout:{type:"number",title:w("Timeout config"),"x-decorator":"FormItem","x-component":l.InputNumber,"x-component-props":{min:1,step:1e3,addonAfter:w("ms"),style:{width:"100%"}},default:5e3},responseType:{type:"string",title:w("Response type"),"x-decorator":"FormItem","x-component":"Select",default:"json",enum:[{value:"json",label:"JSON"},{value:"stream",label:w("Stream")}]},roles:{type:"array",title:w("Access control"),"x-decorator":"FormItem","x-decorator-props":{tooltip:w("If not set, all roles can access this request")},"x-component":function(e){var t=e.value,r=e.onChange;return a().createElement(n.RemoteSelect,{mode:"multiple",manual:!1,value:void 0===t?[]:t,service:{resource:"roles"},fieldNames:{label:"title",value:"name"},allowClear:!0,onChange:function(e){return null==r?void 0:r(Array.isArray(e)?e.map(function(e){return"string"==typeof e?e:e&&(void 0===e?"undefined":e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e)=="object"?(null==e?void 0:e.name)||(null==e?void 0:e.value)||(null==e?void 0:e.roleName):void 0}).filter(Boolean):[])}})}}};function eo(e,t,r,n,o,a,i){try{var u=e[a](i),l=u.value}catch(e){r(e);return}u.done?t(l):Promise.resolve(l).then(n,o)}function ea(e){return function(){var t=this,r=arguments;return new Promise(function(n,o){var a=e.apply(t,r);function i(e){eo(a,n,o,i,u,"next",e)}function u(e){eo(a,n,o,i,u,"throw",e)}i(void 0)})}}function ei(e){return e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}function eu(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(i,"next",{value:l(0)}),u(i,"throw",{value:l(1)}),u(i,"return",{value:l(2)}),"function"==typeof Symbol&&u(i,Symbol.iterator,{value:function(){return this}}),i;function l(u){return function(l){var c=[u,l];if(r)throw TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,n=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}var el=/\{\{\s*([^{}]+?)\s*\}\}/g,ec=function(e){if(null!=e&&("string"!=typeof e||""!==e.trim())){if("string"!=typeof e)return e;var t=e.trim();if(!t)return e;try{return JSON.parse(t)}catch(t){return e}}},es=function(e){var t=e.match(/filename\*=utf-8''([^;]+)/i);if(t)return decodeURIComponent(t[1]);var r=e.match(/filename="([^"]+)"/i);if(r)return r[1]},ep=function(e,t){if("string"==typeof e){var r=e.matchAll(el),n=!0,o=!1,a=void 0;try{for(var i,u=r[Symbol.iterator]();!(n=(i=u.next()).done);n=!0){var l,c=i.value,s=null==c||null==(l=c[1])?void 0:l.trim();s&&s.startsWith("ctx.")&&t.add(s)}}catch(e){o=!0,a=e}finally{try{n||null==u.return||u.return()}finally{if(o)throw a}}return}Array.isArray(e)?e.forEach(function(e){return ep(e,t)}):e&&(void 0===e?"undefined":ei(e))==="object"&&Object.values(e).forEach(function(e){return ep(e,t)})},ef=function(e){var t=[null==e?void 0:e.url,null==e?void 0:e.headers,null==e?void 0:e.params,null==e?void 0:e.data],r=new Set;return t.forEach(function(e){return ep(e,r)}),Array.from(r)},em=(0,K.defineAction)({name:"customRequest",title:(0,K.tExpr)("Custom request"),scene:[K.ActionScene.DYNAMIC_EVENT_FLOW],paramsRequired:!0,sort:700,uiSchema:en,defaultParams:function(){return ea(function(){return eu(this,function(e){return[2,{key:Y(),method:"POST",timeout:5e3,responseType:"json",headers:[],params:[]}]})})()},beforeParamsSave:function(e,t){return ea(function(){var r,n,o,a,i,u,l,c,s,p,f,m;return eu(this,function(d){switch(d.label){case 0:var y;return c=(null==t?void 0:t.key)||Y(),s=(null==(r=e.collection)?void 0:r.name)||(null==(n=e.collectionField)?void 0:n.collectionName)||(null==(o=e.resource)?void 0:o.name)||e.resourceName,p=(null==(a=e.collection)?void 0:a.dataSourceKey)||(null==(i=e.dataSource)?void 0:i.key)||(null==(l=e.resource)||null==(u=l.getDataSourceKey)?void 0:u.call(l)),f=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}({method:(null==t?void 0:t.method)||"POST",url:null==t?void 0:t.url,headers:Q(null==t?void 0:t.headers),params:Q(null==t?void 0:t.params),data:ec(null==t?void 0:t.data),timeout:null==t?void 0:t.timeout,responseType:(null==t?void 0:t.responseType)||"json"},s?{collectionName:s}:{},p?{dataSourceKey:p}:{}),m=ef(t),[4,e.api.resource("customRequests").updateOrCreate({filterKeys:["key"],values:{key:c,options:f,roles:Array.isArray(y=null==t?void 0:t.roles)?y.map(function(e){return"string"==typeof e?e:e&&(void 0===e?"undefined":ei(e))==="object"?e.name||e.value||e.roleName:void 0}).map(function(e){return"string"==typeof e?e.trim():""}).filter(Boolean):[]}})];case 1:return d.sent(),Object.keys(t||{}).forEach(function(e){["key","variablePaths","responseType"].includes(e)||delete t[e]}),t.key=c,t.variablePaths=m,t.responseType=(null==t?void 0:t.responseType)||"json",[2]}})})()},handler:function(e,t){return ea(function(){var r,n,o,a,i,u,l,s,p;return eu(this,function(f){switch(f.label){case 0:var m;if(!(r=null==t?void 0:t.key))return[2,{ok:!1,status:400,error:{message:"custom request key is required"}}];return n=(null==t?void 0:t.responseType)||"json",[4,(m=null==t?void 0:t.variablePaths,ea(function(){var t,r;return eu(this,function(n){switch(n.label){case 0:if(!Array.isArray(m)||!m.length||"function"!=typeof(null==e?void 0:e.resolveJsonTemplate))return[2,void 0];n.label=1;case 1:return n.trys.push([1,3,,4]),t=m.reduce(function(e,t){return e[t]="{{".concat(t,"}}"),e},{}),[4,e.resolveJsonTemplate(t)];case 2:if(!(r=n.sent())||(void 0===r?"undefined":ei(r))!=="object")return[2,void 0];return[2,m.reduce(function(e,t){var n=r[t];return void 0===n||"string"==typeof n&&n.trim()==="{{".concat(t,"}}")||(e[t]=n),e},{})];case 3:return n.sent(),[2,void 0];case 4:return[2]}})})())];case 1:o=f.sent(),f.label=2;case 2:return f.trys.push([2,4,,5]),[4,e.request({url:"/customRequests:send/".concat(r),method:"POST",responseType:"stream"===n?"blob":"json",data:{vars:o}})];case 3:if(a=f.sent(),"stream"===n)return(l=(null==a||null==(i=a.headers)?void 0:i["content-disposition"])||(null==a||null==(u=a.headers)?void 0:u["Content-Disposition"]))&&(s=es(l))&&(0,c.saveAs)(a.data,s),[2];return[2,a];case 4:if(p=f.sent(),"stream"===n)throw p;return[2,p];case 5:return[2]}})})()}});function ed(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function ey(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function eb(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){ey(e,t,r[t])})}return e}function ev(e){return function(e){if(Array.isArray(e))return ed(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e){if(e){if("string"==typeof e)return ed(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return ed(e,void 0)}}(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.")}()}var eh=function(){var e=(0,n.useAfterSuccessOptions)();return[{value:"$nResponse",label:(0,(0,x.useTranslation)().t)("Response",{ns:"client"}),children:null}].concat(ev(e.filter(function(e){return["currentUser","currentTime","$nRole"].includes(e.value)}))).filter(Boolean)},eg=function(){var e=(0,n.useAfterSuccessOptions)(),t=(0,n.useGlobalVariable)("$env");return ev(e.filter(function(e){return"$record"!==e.value})).concat([t]).filter(Boolean)},ex=function(){return{scope:eg(),useTypedConstant:!0}},eO=new n.SchemaSettings({name:"actionSettings:customRequest",items:[{name:"editButton",Component:n.ButtonEditor,useComponentProps:function(){return{isLink:"customize:table:request"===(0,i.useFieldSchema)()["x-action"]}}},{name:"linkageRules",Component:n.SchemaSettingsLinkageRules,useComponentProps:function(){return eb({},(0,n.useSchemaToolbar)().linkageRulesProps)}},{name:"secondConFirm",Component:n.SecondConFirm},{name:"afterSuccessfulSubmission",Component:function(){var e,t=(0,n.useDesignable)().dn,r=(0,x.useTranslation)().t,o=(0,i.useFieldSchema)(),u=((null==o?void 0:o["x-action-settings"])||{}).onSuccess,l=(0,n.usePlugin)("@nocobase/plugin-block-template"),c=null==l||null==(e=l.isInBlockTemplateConfigPage)?void 0:e.call(l);return a().createElement(n.SchemaSettingsModalItem,{dialogRootClassName:"dialog-after-successful-submission",width:700,title:r("After successful submission"),initialValues:u?eb({actionAfterSuccess:(null==u?void 0:u.redirecting)?"redirect":"previous"},u):{manualClose:!1,redirecting:!1,successMessage:'{{t("Saved successfully")}}',actionAfterSuccess:"previous"},schema:{type:"object",title:r("After successful submission"),properties:{successMessage:{title:r("Popup message"),"x-decorator":"FormItem","x-component":"Variable.RawTextArea","x-component-props":{scope:eh,style:{minWidth:"220px"}}},manualClose:{title:r("Message popup close method"),enum:[{label:r("Automatic close"),value:!1},{label:r("Manually close"),value:!0}],"x-decorator":"FormItem","x-component":"Radio.Group","x-component-props":{}},redirecting:{title:r("Then"),"x-hidden":!0,enum:[{label:r("Stay on current page"),value:!1},{label:r("Redirect to"),value:!0}],"x-decorator":"FormItem","x-component":"Radio.Group","x-component-props":{},"x-reactions":{target:"redirectTo",fulfill:{state:{visible:"{{!!$self.value}}"}}}},actionAfterSuccess:{title:r("Action after successful submission"),enum:[{label:r("Stay on the current popup or page"),value:"stay"},{label:r("Return to the previous popup or page"),value:"previous"},{label:r("Redirect to"),value:"redirect"}],"x-decorator":"FormItem","x-component":"Radio.Group","x-component-props":{},"x-reactions":{target:"redirectTo",fulfill:{state:{visible:"{{$self.value==='redirect'}}"}}}},redirectTo:{title:r("Link"),"x-decorator":"FormItem","x-component":"Variable.TextArea","x-use-component-props":ex},blocksToRefresh:{type:"array",title:r("Refresh data blocks"),"x-decorator":"FormItem","x-use-decorator-props":function(){return{tooltip:r("After successful submission, the selected data blocks will be automatically refreshed.")}},"x-component":n.BlocksSelector,"x-hidden":c}}},onSubmit:function(e){var r;o["x-action-settings"].onSuccess=e,t.emit("patch",{schema:(ey(r={},"x-uid",o["x-uid"]),ey(r,"x-action-settings",o["x-action-settings"]),r)})}})}},{name:"request settings",Component:V},(t=eb({},n.SchemaSettingAccessControl),r=r={useVisible:function(){return!0}},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:"refreshDataBlockRequest",Component:n.RefreshDataBlockRequest,useComponentProps:function(){return{isPopupAction:!1}},useVisible:function(){return!!(0,n.useCollection)()}},{name:"delete",sort:100,Component:n.RemoveButton,useComponentProps:function(){return(0,n.useSchemaToolbar)().removeButtonProps}}]});function ew(e,t,r,n,o,a,i){try{var u=e[a](i),l=u.value}catch(e){r(e);return}u.done?t(l):Promise.resolve(l).then(n,o)}function eS(e,t,r){return(eS=eT()?Reflect.construct:function(e,t,r){var n=[null];n.push.apply(n,t);var o=new(Function.bind.apply(e,n));return r&&eP(o,r.prototype),o}).apply(null,arguments)}function ej(e){return(ej=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function eP(e,t){return(eP=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function eA(e){var t="function"==typeof Map?new Map:void 0;return(eA=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 eS(e,arguments,ej(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),eP(r,e)})(e)}function eT(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(eT=function(){return!!e})()}var eC=function(e){return a().createElement(n.SchemaComponentOptions,{scope:{CustomRequestConfigurationFieldsSchema:R},components:{CustomRequestAction:$,CustomRequestInitializer:G}},e.children)},eI=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=ej(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,eT()?Reflect.construct(e,t||[],ej(this).constructor):e.apply(this,t))}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&eP(r,e),t=[{key:"load",value:function(){var e;return(e=function(){return function(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(i,"next",{value:l(0)}),u(i,"throw",{value:l(1)}),u(i,"return",{value:l(2)}),"function"==typeof Symbol&&u(i,Symbol.iterator,{value:function(){return this}}),i;function l(u){return function(l){var c=[u,l];if(r)throw TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,n=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(e){return this.app.use(eC),this.app.flowEngine.registerActions({customRequestFlowAction:em}),this.app.schemaSettingsManager.add(eO),this.app.schemaSettingsManager.add(_),[2]})},function(){var t=this,r=arguments;return new Promise(function(n,o){var a=e.apply(t,r);function i(e){ew(a,n,o,i,u,"next",e)}function u(e){ew(a,n,o,i,u,"throw",e)}i(void 0)})}).call(this)}}],function(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}(r.prototype,t),r}(eA(n.Plugin)),ek=eI}(),g}()});
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react-i18next"),require("@emotion/css"),require("@formily/antd-v5"),require("@formily/react"),require("@nocobase/flow-engine"),require("file-saver"),require("@formily/shared"),require("react"),require("antd"),require("@nocobase/client"),require("@nocobase/utils/client"),require("lodash")):"function"==typeof define&&define.amd?define("@nocobase/plugin-action-custom-request",["react-i18next","@emotion/css","@formily/antd-v5","@formily/react","@nocobase/flow-engine","file-saver","@formily/shared","react","antd","@nocobase/client","@nocobase/utils/client","lodash"],t):"object"==typeof exports?exports["@nocobase/plugin-action-custom-request"]=t(require("react-i18next"),require("@emotion/css"),require("@formily/antd-v5"),require("@formily/react"),require("@nocobase/flow-engine"),require("file-saver"),require("@formily/shared"),require("react"),require("antd"),require("@nocobase/client"),require("@nocobase/utils/client"),require("lodash")):e["@nocobase/plugin-action-custom-request"]=t(e["react-i18next"],e["@emotion/css"],e["@formily/antd-v5"],e["@formily/react"],e["@nocobase/flow-engine"],e["file-saver"],e["@formily/shared"],e.react,e.antd,e["@nocobase/client"],e["@nocobase/utils/client"],e.lodash)}(self,function(e,t,r,n,o,a,i,u,c,l,s,p){return function(){"use strict";var f={477:function(e){e.exports=t},418:function(e){e.exports=r},230:function(e){e.exports=n},166:function(e){e.exports=i},342:function(e){e.exports=l},694:function(e){e.exports=o},768:function(e){e.exports=s},59:function(e){e.exports=c},506:function(e){e.exports=a},773:function(e){e.exports=p},155:function(e){e.exports=u},953:function(t){t.exports=e}},m={};function d(e){var t=m[e];if(void 0!==t)return t.exports;var r=m[e]={exports:{}};return f[e](r,r.exports,d),r.exports}d.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return d.d(t,{a:t}),t},d.d=function(e,t){for(var r in t)d.o(t,r)&&!d.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},d.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),d.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},d.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},d.g.importScripts&&(y=d.g.location+"");var y,b=d.g.document;if(!y&&b&&(b.currentScript&&"SCRIPT"===b.currentScript.tagName.toUpperCase()&&(y=b.currentScript.src),!y)){var v=b.getElementsByTagName("script");if(v.length)for(var h=v.length-1;h>-1&&(!y||!/^http(s?):/.test(y));)y=v[h--].src}if(!y)throw Error("Automatic publicPath is not supported in this browser");d.p=y.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/");var g={};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-action-custom-request/dist/client/")}if(!e){if(!(e=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var n=window.location.pathname||"/",o=n.indexOf("/v2/");e=o>=0?n.slice(0,o+1):"/"}e&&(e=e.replace(/\/v2\/?$/,"/")),e||(e="/"),"/"!==e.charAt(e.length-1)&&(e+="/"),e+="static/plugins/@nocobase/plugin-action-custom-request/dist/client/"}d.p=e}(),!function(){d.r(g),d.d(g,{default:function(){return eH},PluginActionCustomRequestClient:function(){return eW}});var e,t,r,n=d(342),o=d(155),a=d.n(o),i=d(230),u=d(768),c=d(59),l=d(506);function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function p(e,t,r,n,o,a,i){try{var u=e[a](i),c=u.value}catch(e){r(e);return}u.done?t(c):Promise.resolve(c).then(n,o)}function f(e){return function(){var t=this,r=arguments;return new Promise(function(n,o){var a=e.apply(t,r);function i(e){p(a,n,o,i,u,"next",e)}function u(e){p(a,n,o,i,u,"throw",e)}i(void 0)})}}function m(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}function y(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(i,"next",{value:c(0)}),u(i,"throw",{value:c(1)}),u(i,"return",{value:c(2)}),"function"==typeof Symbol&&u(i,Symbol.iterator,{value:function(){return this}}),i;function c(u){return function(c){var l=[u,c];if(r)throw TypeError("Generator is already executing.");for(;i&&(i=0,l[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return a.label++,{value:l[1],done:!1};case 5:a.label++,n=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){a=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){a.label=l[1];break}if(6===l[0]&&a.label<o[1]){a.label=o[1],o=l;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(l);break}o[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}var b=function(){var e=(0,n.useAPIClient)(),t=(0,n.useNavigateNoUpdate)(),r=(0,i.useFieldSchema)(),o=(0,n.useBlockRequestContext)().field,a=(0,n.useCompile)(),p=(0,i.useForm)(),d=((0,n.useBlockContext)()||{}).name,b=(0,n.useCollectionRecordData)(),v=(0,i.useFieldSchema)(),h=(0,i.useField)(),g=(0,n.useActionContext)().setVisible,O=c.App.useApp(),x=O.modal,w=O.message,S=(0,n.useDataSourceKey)(),j=(0,n.useContextVariable)().ctx,P=(0,n.useLocalVariables)(),A=(0,n.useVariables)();return{onClick:function(i,c){return f(function(){var i,O,C,q,T,k,I,E,R,F,D,M,_,N,B,V,$,G,U,z,L,W,H;return y(this,function(J){switch(J.label){case 0:if(T=(null==o||null==(C=o.data)?void 0:C.selectedRowData)?null==o||null==(q=o.data)?void 0:q.selectedRowData:j,I=(k=null!=(i=null==r?void 0:r["x-action-settings"])?i:{}).skipValidator,R=(E=k.onSuccess||{}).manualClose,F=E.redirecting,D=E.redirectTo,M=E.successMessage,_=E.actionAfterSuccess,N=M,B=D,V=null==r?void 0:r["x-action"],!0===I||"customize:form:request"!==V)return[3,2];return[4,p.submit()];case 1:J.sent(),J.label=2;case 2:$=m({},b),"customize:form:request"===V&&($=p.values),null!=(O=h).data||(O.data={}),h.data.loading=!0,J.label=3;case 3:return J.trys.push([3,,8,9]),U=v["x-custom-request-id"]||v["x-uid"],[4,e.request({url:"/customRequests:send/".concat(U),method:"POST",data:{currentRecord:{dataSourceKey:S,data:$},$nForm:"form"===d?p.values:void 0,$nSelectedRecord:T},responseType:"stream"===v["x-response-type"]?"blob":"json"})];case 4:return z=J.sent(),[4,(0,n.getVariableValue)(N,{variables:A,localVariables:((function(e){if(Array.isArray(e))return s(e)})(P)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(P)||function(e){if(e){if("string"==typeof e)return s(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return s(e,void 0)}}(P)||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:"$nResponse",ctx:new Proxy(m({},null==z||null==(G=z.data)?void 0:G.data,null==z?void 0:z.data),{})}])})];case 5:if(N=J.sent(),!D)return[3,7];return[4,(0,n.getVariableValue)(D,{variables:A,localVariables:P})];case 6:B=J.sent(),J.label=7;case 7:if(z.headers["content-disposition"]&&(W=(L=z.headers["content-disposition"]).match(/filename\*=utf-8''([^;]+)/i),H=L.match(/filename="([^"]+)"/i),W?(0,l.saveAs)(z.data,decodeURIComponent(W[1])):H&&(0,l.saveAs)(z.data,H[1])),h.data.loading=!1,c&&(null==c||c()),"previous"!==_&&(_||!0===F)||null==g||g(!1),!N)return(F&&!_||"redirect"===_)&&B&&((0,u.isURL)(B)?window.location.href=B:t(B)),[2];return R?x.success({title:a(N),onOk:function(){return f(function(){return y(this,function(e){return(F&&!_||"redirect"===_)&&B&&((0,u.isURL)(B)?window.location.href=B:t(B)),[2]})})()}}):(w.success(a(N)),(F&&!_||"redirect"===_)&&B&&((0,u.isURL)(B)?window.location.href=B:t(B))),[3,9];case 8:return h.data.loading=!1,[7];case 9:return[2]}})})()}}},v=function(){var e=(0,i.useFieldSchema)(),t=e["x-custom-request-id"]||e["x-uid"],r="customRequests:get/".concat(t);return(0,n.useRequest)({url:r,params:{appends:["roles"]}},{manual:!0,cacheKey:r})},h=d(773),O=d(953),x="action-custom-request";function w(e){return"{{t('".concat(e,"', { ns: '").concat(x,"', nsMode: 'fallback' })}}")}function S(){return(0,O.useTranslation)(x,{nsMode:"fallback"})}function j(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function P(e){return function(e){if(Array.isArray(e))return j(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||A(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 A(e,t){if(e){if("string"==typeof e)return j(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 j(e,t)}}var C=function(){var e,t=(0,n.useCurrentPopupContext)().params,r=(0,n.useCollectionRecordData)(),o=(0,n.useTableBlockContext)();if(r)return!1;var a=null==(e=(0,n.getStoredPopupContext)(null==t?void 0:t.popupuid))?void 0:e.tableBlockContext;return!(0,h.isEmpty)(a)||!(0,h.isEmpty)(o)},q=function(){var e,t=(0,n.useCollection_deprecated)(),r=S().t,a=(0,n.useCollectionFilterOptions)(t),i=(0,n.useCollectionFilterOptions)("users",n.DEFAULT_DATA_SOURCE_KEY),u=(0,n.useCompile)(),c=(0,n.useCollectionRecordData)(),l=((0,n.useBlockContext)()||{}).name,s=(0,n.useFormBlockContext)().form,p=function(e){if(Array.isArray(e))return e}(e=(0,o.useMemo)(function(){return[u(a),u(i)]},[a,i]))||function(e){var t,r,n=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o=[],a=!0,i=!1;try{for(n=n.call(e);!(a=(t=n.next()).done)&&(o.push(t.value),2!==o.length);a=!0);}catch(e){i=!0,r=e}finally{try{a||null==n.return||n.return()}finally{if(i)throw r}}return o}}(e)||A(e,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.")}(),f=p[0],m=p[1],d=(0,n.useGlobalVariable)("$env"),y=(0,n.useContextAssociationFields)({maxDepth:2,contextCollectionName:t.name}),b=C();return(0,o.useMemo)(function(){var e,t;return[d,c&&{name:"currentRecord",title:r("Current record",{ns:"client"}),children:P(f)},("form"===l||s)&&{name:"$nForm",title:r("Current form",{ns:"client"}),children:P(f)},{name:"currentUser",title:r("Current user",{ns:"client"}),children:m},{name:"currentTime",title:r("Current time",{ns:"client"}),children:null},{name:"$nToken",title:"API token",children:null},b&&(e=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}({},y),t=t={name:"$nSelectedRecord",title:y.label},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)].filter(Boolean)},[c,r,f,l,m,b])},T=d(418),k=function(){return(0,n.useAPIClient)().resource("customRequests")},I={value:"name",label:"title"},E=function(){return{scope:q(),fieldNames:I,useTypedConstant:!0}},R={type:"object",properties:{method:{type:"string",required:!0,title:w("HTTP method"),"x-decorator-props":{tooltip:w("When the HTTP method is Post, Put or Patch, and this custom request inside the form, the request body will be automatically filled in with the form data")},"x-decorator":"FormItem","x-component":"Select","x-component-props":{showSearch:!1,allowClear:!1,className:"auto-width"},enum:[{label:"GET",value:"GET"},{label:"POST",value:"POST"},{label:"PUT",value:"PUT"},{label:"PATCH",value:"PATCH"},{label:"DELETE",value:"DELETE"}],default:"POST"},url:{type:"string",required:!0,title:w("URL"),"x-decorator":"FormItem","x-component":"Variable.TextArea","x-use-component-props":E,"x-component-props":{placeholder:"https://www.nocobase.com"}},headers:{type:"array","x-component":"ArrayItems","x-decorator":"FormItem",title:w("Headers"),description:w('"Content-Type" only support "application/json", and no need to specify'),items:{type:"object",properties:{space:{type:"void","x-component":"Space",properties:{name:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:w("Name")}},value:{type:"string","x-decorator":"FormItem","x-component":"Variable.TextArea","x-use-component-props":E},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},properties:{add:{type:"void",title:w("Add request header"),"x-component":"ArrayItems.Addition"}}},params:{type:"array","x-component":"ArrayItems","x-decorator":"FormItem",title:w("Parameters"),items:{type:"object",properties:{space:{type:"void","x-component":"Space",properties:{name:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:w("Name")}},value:{type:"string","x-decorator":"FormItem","x-component":"Variable.TextArea","x-use-component-props":E},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},properties:{add:{type:"void",title:w("Add parameter"),"x-component":"ArrayItems.Addition"}}},data:{type:"string",title:w("Body"),"x-decorator":"FormItem","x-decorator-props":{},"x-component":"Variable.JSON","x-component-props":{scope:"{{useCustomRequestVariableOptions}}",fieldNames:{value:"name",label:"title"},changeOnSelect:!0,autoSize:{minRows:10},placeholder:w("Input request data")},description:w("Only support standard JSON data")},timeout:{type:"number",title:w("Timeout config"),"x-decorator":"FormItem","x-decorator-props":{},"x-component":"InputNumber","x-component-props":{addonAfter:w("ms"),min:1,step:1e3,defaultValue:5e3}},responseType:{type:"string",title:w("Response type"),"x-decorator":"FormItem","x-decorator-props":{},"x-component":"Select",default:"json",enum:[{value:"json",label:"JSON"},{value:"stream",label:"Stream"}]}}};function F(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function D(e,t,r,n,o,a,i){try{var u=e[a](i),c=u.value}catch(e){r(e);return}u.done?t(c):Promise.resolve(c).then(n,o)}function M(){return(M=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}function _(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}function N(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 B(){var e,t=S().t,r=(0,n.useCollection_deprecated)().name,u=(0,n.useDataSourceKey)(),c=(0,i.useFieldSchema)(),l=k(),s=v(),p=s.data,f=s.refresh,m=(0,n.useDesignable)().dn,d=(0,o.useMemo)(function(){var e,t=_({},null==p||null==(e=p.data)?void 0:e.options);return t.data&&"string"!=typeof t.data&&(t.data=JSON.stringify(t.data,null,2)),t},[null==p||null==(e=p.data)?void 0:e.options]);return a().createElement(a().Fragment,null,a().createElement(n.SchemaSettingsActionModalItem,{title:t("Request settings"),components:{ArrayItems:T.ArrayItems},beforeOpen:function(){return!p&&f()},scope:{useCustomRequestVariableOptions:q},schema:R,initialValues:d,onSubmit:function(e){var t;return(t=function(){var t,n,o;return function(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(i,"next",{value:c(0)}),u(i,"throw",{value:c(1)}),u(i,"return",{value:c(2)}),"function"==typeof Symbol&&u(i,Symbol.iterator,{value:function(){return this}}),i;function c(u){return function(c){var l=[u,c];if(r)throw TypeError("Generator is already executing.");for(;i&&(i=0,l[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return a.label++,{value:l[1],done:!1};case 5:a.label++,n=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){a=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){a.label=l[1];break}if(6===l[0]&&a.label<o[1]){a.label=o[1],o=l;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(l);break}o[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(a){switch(a.label){case 0:return function(e){if(null==e)throw TypeError("Cannot destructure "+e)}(e),t=M({},e),c["x-response-type"]=t.responseType,n=!c["x-custom-request-id"]||c["x-custom-request-id"]===c["x-uid"],[4,l.updateOrCreate({values:{key:c["x-uid"],options:N(_({},t),{collectionName:r,dataSourceKey:u})},filterKeys:["key"]})];case 1:return a.sent(),o={"x-response-type":t.responseType,"x-uid":c["x-uid"]},!n&&c["x-custom-request-id"]&&(o["x-custom-request-id"]=c["x-uid"],c["x-custom-request-id"]=c["x-uid"]),[4,m.emit("patch",{schema:o})];case 2:return a.sent(),m.refresh(),f(),[2]}})},function(){var e=this,r=arguments;return new Promise(function(n,o){var a=t.apply(e,r);function i(e){D(a,n,o,i,u,"next",e)}function u(e){D(a,n,o,i,u,"throw",e)}i(void 0)})})()}}))}var V=new n.SchemaSettings({name:"CustomRequestActionSettings",items:[N(_({},n.actionSettingsItems["0"]),{children:((function(e){if(Array.isArray(e))return F(e)})(e=n.actionSettingsItems["0"].children)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e){if(e){if("string"==typeof e)return F(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return F(e,void 0)}}(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.")}()).concat([{name:"request settings",Component:B},n.SchemaSettingAccessControl])})]}),$={"customize:table:request":n.Action.Link},G=(0,n.withDynamicSchemaProps)(function(e){var t,r,o=$[(0,i.useFieldSchema)()["x-action"]]||n.Action;return a().createElement(o,(t=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}({},e),r=r={useProps:b},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))});G.Designer=function(){var e=k(),t=(0,i.useFieldSchema)();return a().createElement(n.Action.Designer,{linkageAction:!0,schemaSettings:"CustomRequestActionSettings",buttonEditorProps:{isLink:"customize:table:request"===t["x-action"]},linkageRulesProps:{type:"button"},removeButtonProps:{onConfirmOk:function(){return e.destroy({filterByTk:t["x-uid"]})}}})},G.Decorator=function(e){return(0,n.useAPIClient)(),a().createElement(n.ACLActionProvider,null,e.children)};var U=d(166);function z(e,t,r,n,o,a,i){try{var u=e[a](i),c=u.value}catch(e){r(e);return}u.done?t(c):Promise.resolve(c).then(n,o)}var L=function(e){var t,r,o=k(),i=(0,n.useSchemaInitializerItem)(),u=(0,n.useSchemaInitializer)().insert,c={title:'{{ t("Custom request") }}',"x-component":"CustomRequestAction","x-action":"customize:form:request","x-toolbar":"ActionSchemaToolbar","x-settings":"actionSettings:customRequest","x-decorator":"CustomRequestAction.Decorator","x-uid":(0,U.uid)(),"x-action-settings":{onSuccess:{manualClose:!1,redirecting:!1,successMessage:'{{t("Request success")}}'}}};return a().createElement(n.SchemaInitializerItem,(t=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}({},i),r=r={onClick:function(){var e;return(e=function(){var e,t;return function(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(i,"next",{value:c(0)}),u(i,"throw",{value:c(1)}),u(i,"return",{value:c(2)}),"function"==typeof Symbol&&u(i,Symbol.iterator,{value:function(){return this}}),i;function c(u){return function(c){var l=[u,c];if(r)throw TypeError("Generator is already executing.");for(;i&&(i=0,l[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return a.label++,{value:l[1],done:!1};case 5:a.label++,n=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){a=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){a.label=l[1];break}if(6===l[0]&&a.label<o[1]){a.label=o[1],o=l;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(l);break}o[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(r){switch(r.label){case 0:return t=(0,U.merge)(c||{},i.schema||{}),null==i||null==(e=i.schemaInitialize)||e.call(i,t),[4,o.create({values:{key:t["x-uid"]}})];case 1:return r.sent(),u(t),[2]}})},function(){var t=this,r=arguments;return new Promise(function(n,o){var a=e.apply(t,r);function i(e){z(a,n,o,i,u,"next",e)}function u(e){z(a,n,o,i,u,"throw",e)}i(void 0)})})()}},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))},W=d(694);function H(e,t,r,n,o,a,i){try{var u=e[a](i),c=u.value}catch(e){r(e);return}u.done?t(c):Promise.resolve(c).then(n,o)}function J(e){return function(){var t=this,r=arguments;return new Promise(function(n,o){var a=e.apply(t,r);function i(e){H(a,n,o,i,u,"next",e)}function u(e){H(a,n,o,i,u,"throw",e)}i(void 0)})}}function K(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}function Y(e){return e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}function Q(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(i,"next",{value:c(0)}),u(i,"throw",{value:c(1)}),u(i,"return",{value:c(2)}),"function"==typeof Symbol&&u(i,Symbol.iterator,{value:function(){return this}}),i;function c(u){return function(c){var l=[u,c];if(r)throw TypeError("Generator is already executing.");for(;i&&(i=0,l[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return a.label++,{value:l[1],done:!1};case 5:a.label++,n=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){a=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){a.label=l[1];break}if(6===l[0]&&a.label<o[1]){a.label=o[1],o=l;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(l);break}o[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}function X(){return"req-".concat((0,u.uid)())}function Z(e){return Array.isArray(e)?e.map(function(e){return{name:String((null==e?void 0:e.name)||"").trim(),value:void 0===(null==e?void 0:e.value)||(null==e?void 0:e.value)===null?"":e.value}}).filter(function(e){return!!e.name}):[]}var ee={method:"POST",timeout:5e3,responseType:"json",headers:[],params:[]},et=function(e){return Array.isArray(e)?e.map(function(e){return"string"==typeof e?e:e&&(void 0===e?"undefined":Y(e))==="object"?e.name||e.value||e.roleName:void 0}).map(function(e){return"string"==typeof e?e.trim():""}).filter(Boolean):[]},er=function(e){if(null!=e&&("string"!=typeof e||""!==e.trim())){if("string"!=typeof e)return e;var t=e.trim();if(t)try{return JSON.parse(t)}catch(t){return e}}},en=function(e){var t=K({},(null==e?void 0:e.options)||{});return void 0!==t.data&&null!==t.data&&"string"!=typeof t.data&&(t.data=JSON.stringify(t.data,null,2)),t.roles=et(null==e?void 0:e.roles),t},eo=function(e){var t=e.match(/filename\*=utf-8''([^;]+)/i);if(t)return decodeURIComponent(t[1]);var r=e.match(/filename="([^"]+)"/i);if(r)return r[1]},ea=function(e){var t,r,n=(null==e||null==(t=e.headers)?void 0:t["content-disposition"])||(null==e||null==(r=e.headers)?void 0:r["Content-Disposition"]);if(n){var o=eo(n);if(o)return{filename:o,data:e.data}}},ei=/\{\{\s*([^{}]+?)\s*\}\}/g,eu=function(e,t){if("string"==typeof e){var r=e.matchAll(ei),n=!0,o=!1,a=void 0;try{for(var i,u=r[Symbol.iterator]();!(n=(i=u.next()).done);n=!0){var c,l=i.value,s=null==l||null==(c=l[1])?void 0:c.trim();s&&s.startsWith("ctx.")&&t.add(s)}}catch(e){o=!0,a=e}finally{try{n||null==u.return||u.return()}finally{if(o)throw a}}return}Array.isArray(e)?e.forEach(function(e){return eu(e,t)}):e&&(void 0===e?"undefined":Y(e))==="object"&&Object.values(e).forEach(function(e){return eu(e,t)})},ec=function(e){var t=[null==e?void 0:e.url,null==e?void 0:e.headers,null==e?void 0:e.params,null==e?void 0:e.data],r=new Set;return t.forEach(function(e){return eu(e,r)}),Array.from(r)};function el(e){var t,r,n,o;return"function"==typeof(null==e?void 0:e.request)?e.request.bind(e):"function"==typeof(null==e||null==(t=e.api)?void 0:t.request)?e.api.request.bind(e.api):"function"==typeof(null==e||null==(o=e.model)||null==(n=o.context)||null==(r=n.api)?void 0:r.request)?e.model.context.api.request.bind(e.model.context.api):void 0}var es=d(477);function ep(){var e,t,r=(e=["\n &:not(:hover) {\n border-right-color: transparent;\n border-top-color: transparent;\n background-color: transparent;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return ep=function(){return r},r}var ef=n.Input.JSON;function em(e,t,r,n,o,a,i){try{var u=e[a](i),c=u.value}catch(e){r(e);return}u.done?t(c):Promise.resolve(c).then(n,o)}var ed=new Map;function ey(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function eb(){var e=ey(["\n & > .ant-space-item:first-child {\n flex: 3;\n }\n & > .ant-space-item:nth-child(2) {\n flex-shrink: 0;\n flex: 5;\n }\n & > .ant-space-item:last-child {\n flex-shrink: 0;\n flex: 1;\n }\n "]);return eb=function(){return e},e}function ev(){var e=ey(["\n & > .ant-space-item:first-child {\n flex: 3;\n }\n & > .ant-space-item:nth-child(2) {\n flex-shrink: 0;\n flex: 5;\n }\n & > .ant-space-item:last-child {\n flex-shrink: 0;\n flex: 1;\n }\n "]);return ev=function(){return e},e}var eh={key:{type:"string",title:w("Key"),"x-decorator":"FormItem","x-decorator-props":{style:{display:"none"}},"x-component":function(e){var t=e.value,r=e.onChange,n=(0,W.useFlowContext)(),o=(0,i.useForm)(),u=a().useRef(null);return a().useEffect(function(){t||null==r||r(X())},[t,r]),a().useEffect(function(){if(t&&u.current!==t){var e,r=!0;return(e=function(){var e,a,i,c,l,s,p;return function(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(i,"next",{value:c(0)}),u(i,"throw",{value:c(1)}),u(i,"return",{value:c(2)}),"function"==typeof Symbol&&u(i,Symbol.iterator,{value:function(){return this}}),i;function c(u){return function(c){var l=[u,c];if(r)throw TypeError("Generator is already executing.");for(;i&&(i=0,l[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return a.label++,{value:l[1],done:!1};case 5:a.label++,n=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){a=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){a.label=l[1];break}if(6===l[0]&&a.label<o[1]){a.label=o[1],o=l;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(l);break}o[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(f){switch(f.label){case 0:(f.trys.push([0,2,,3]),!(l=ed.get(t)))&&(l=J(function(){var e,r,o;return Q(this,function(a){switch(a.label){case 0:if(!t||"function"!=typeof(e=el(n)))return[2,void 0];a.label=1;case 1:return a.trys.push([1,3,,4]),[4,e({url:"/customRequests:get/".concat(t),method:"GET",params:{appends:["roles"]}})];case 2:return[2,null==(o=a.sent())||null==(r=o.data)?void 0:r.data];case 3:return a.sent(),[2,void 0];case 4:return[2]}})})().finally(function(){ed.delete(t)}),ed.set(t,l));return[4,l];case 1:if(s=f.sent(),!r)return[2];return p=en(s),o.setValues({method:p.method||(null==(e=o.values)?void 0:e.method)||"POST",url:p.url||(null==(a=o.values)?void 0:a.url),headers:Array.isArray(p.headers)?p.headers:[],params:Array.isArray(p.params)?p.params:[],data:p.data,timeout:p.timeout||(null==(i=o.values)?void 0:i.timeout)||5e3,responseType:p.responseType||(null==(c=o.values)?void 0:c.responseType)||"json",roles:p.roles}),u.current=t,[3,3];case 2:return f.sent(),[3,3];case 3:return[2]}})},function(){var t=this,r=arguments;return new Promise(function(n,o){var a=e.apply(t,r);function i(e){em(a,n,o,i,u,"next",e)}function u(e){em(a,n,o,i,u,"throw",e)}i(void 0)})})(),function(){r=!1}}},[t,n,o]),a().createElement(c.Input,{value:t,disabled:!0})}},method:{type:"string",title:w("HTTP method"),required:!0,"x-decorator-props":{tooltip:w("When the HTTP method is Post, Put or Patch, and this custom request inside the form, the request body will be automatically filled in with the form data")},"x-decorator":"FormItem","x-component":"Select","x-component-props":{showSearch:!1,allowClear:!1,className:"auto-width"},default:"POST",enum:[{label:"GET",value:"GET"},{label:"POST",value:"POST"},{label:"PUT",value:"PUT"},{label:"PATCH",value:"PATCH"},{label:"DELETE",value:"DELETE"}]},url:{type:"string",title:w("URL"),required:!0,"x-decorator":"FormItem","x-component":n.TextAreaWithContextSelector,"x-component-props":{placeholder:"https://www.nocobase.com"}},headers:{type:"array","x-component":"ArrayItems","x-decorator":"FormItem",title:w("Headers"),items:{type:"object",properties:{space:{type:"void","x-component":"Space","x-component-props":{style:{flexWrap:"nowrap",maxWidth:"100%",display:"flex"},className:(0,es.css)(eb())},properties:{name:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:w("Name")}},value:{type:"string","x-decorator":"FormItem","x-component":n.TextAreaWithContextSelector,"x-component-props":{rows:1}},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},properties:{add:{type:"void",title:w("Add request header"),"x-component":"ArrayItems.Addition"}}},params:{type:"array","x-component":"ArrayItems","x-decorator":"FormItem",title:w("Parameters"),items:{type:"object",properties:{space:{type:"void","x-component":"Space","x-component-props":{style:{flexWrap:"nowrap",maxWidth:"100%",display:"flex"},className:(0,es.css)(ev())},properties:{name:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:w("Name")}},value:{type:"string","x-decorator":"FormItem","x-component":n.TextAreaWithContextSelector,"x-component-props":{rows:1}},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},properties:{add:{type:"void",title:w("Add parameter"),"x-component":"ArrayItems.Addition"}}},data:{type:"string",title:w("Body"),"x-decorator":"FormItem","x-component":function(e){var t=e.value,r=e.onChange,n=function(e,t){if(null==e)return{};var r,n,o,a={};if("u">typeof Reflect&&Reflect.ownKeys){for(o=0,r=Reflect.ownKeys(Object(e));o<r.length;o++)n=r[o],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n]);return a}if(a=function(e,t){if(null==e)return{};var r,n,o={},a=Object.getOwnPropertyNames(e);for(n=0;n<a.length;n++)r=a[n],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r]);return o}(e,t),Object.getOwnPropertySymbols)for(o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)n=r[o],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n]);return a}(e,["value","onChange"]),i=(0,W.useFlowContext)(),u=(0,o.useRef)(null),l=(0,o.useCallback)(function(e){var t,r,n,o,a=null==(o=u.current)||null==(n=o.resizableTextArea)?void 0:n.textArea;if(a){var i,c,l=a.value||"",s=null!=(t=a.selectionStart)?t:l.length,p=null!=(r=a.selectionEnd)?r:s,f=l.slice(0,s)+e+l.slice(p);null==(c=null==(i=Object.getOwnPropertyDescriptor(a.constructor.prototype,"value"))?void 0:i.set)||c.call(a,f),a.dispatchEvent(new Event("input",{bubbles:!0})),requestAnimationFrame(function(){var t=s+e.length;a.setSelectionRange(t,t),a.focus()})}},[]),s=(0,o.useCallback)(function(e){e&&l(e)},[l]),p=(0,o.useMemo)(function(){return function(){var e;return null==(e=i.getPropertyMetaTree)?void 0:e.call(i)}},[i]);return a().createElement("div",{style:{position:"relative",width:"100%"}},a().createElement(ef,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}({ref:u,value:t,onChange:r},n)),a().createElement("div",{style:{position:"absolute",top:0,right:0,zIndex:1,lineHeight:0}},a().createElement(W.FlowContextSelector,{metaTree:p,onChange:function(e){return s(e)}},a().createElement(c.Button,{type:"default",style:{fontStyle:"italic",fontFamily:"New York, Times New Roman, Times, serif"},className:(0,es.css)(ep())},"x"))))},"x-component-props":{autoSize:{minRows:10},placeholder:w("Input request data")},description:w("Only support standard JSON data")},timeout:{type:"number",title:w("Timeout config"),"x-decorator":"FormItem","x-component":c.InputNumber,"x-component-props":{min:1,step:1e3,addonAfter:w("ms"),style:{width:"100%"}},default:5e3},responseType:{type:"string",title:w("Response type"),"x-decorator":"FormItem","x-component":"Select",default:"json",enum:[{value:"json",label:"JSON"},{value:"stream",label:w("Stream")}]},roles:{type:"array",title:w("Access control"),"x-decorator":"FormItem","x-decorator-props":{tooltip:w("If not set, all roles can access this request")},"x-component":function(e){var t=e.value,r=e.onChange;return a().createElement(n.RemoteSelect,{mode:"multiple",manual:!1,value:void 0===t?[]:t,service:{resource:"roles"},fieldNames:{label:"title",value:"name"},allowClear:!0,onChange:function(e){return null==r?void 0:r(et(e))}})}}};function eg(e,t,r,n,o,a,i){try{var u=e[a](i),c=u.value}catch(e){r(e);return}u.done?t(c):Promise.resolve(c).then(n,o)}function eO(e){return function(){var t=this,r=arguments;return new Promise(function(n,o){var a=e.apply(t,r);function i(e){eg(a,n,o,i,u,"next",e)}function u(e){eg(a,n,o,i,u,"throw",e)}i(void 0)})}}function ex(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}function ew(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 eS(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(i,"next",{value:c(0)}),u(i,"throw",{value:c(1)}),u(i,"return",{value:c(2)}),"function"==typeof Symbol&&u(i,Symbol.iterator,{value:function(){return this}}),i;function c(u){return function(c){var l=[u,c];if(r)throw TypeError("Generator is already executing.");for(;i&&(i=0,l[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return a.label++,{value:l[1],done:!1};case 5:a.label++,n=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){a=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){a.label=l[1];break}if(6===l[0]&&a.label<o[1]){a.label=o[1],o=l;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(l);break}o[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}var ej="customRequest",eP=(0,W.defineAction)({name:ej,title:(0,W.tExpr)("Custom request",{ns:x}),scene:[W.ActionScene.DYNAMIC_EVENT_FLOW],sort:1e3,paramsRequired:!0,uiSchema:eh,defaultParams:function(e){return ex({key:X()},ee)},beforeParamsSave:function(e,t){return eO(function(){var r,n,o;return eS(this,function(a){var i;switch(a.label){case 0:return[4,(i=n=(null==t?void 0:t.key)||X(),J(function(){return Q(this,function(r){switch(r.label){case 0:var n,o,a;return[4,e.api.resource("customRequests").updateOrCreate({filterKeys:["key"],values:{key:i,options:{method:(null==(n=K({},t),o=o={key:i},Object.getOwnPropertyDescriptors?Object.defineProperties(n,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(n,e,Object.getOwnPropertyDescriptor(o,e))}),a=n)?void 0:a.method)||"POST",url:null==a?void 0:a.url,headers:Z(null==a?void 0:a.headers),params:Z(null==a?void 0:a.params),data:er(null==a?void 0:a.data),timeout:null==a?void 0:a.timeout,responseType:(null==a?void 0:a.responseType)||"json"},roles:et(null==t?void 0:t.roles)}})];case 1:return r.sent(),[2]}})})())];case 1:return a.sent(),o={key:n,variablePaths:ec(t),responseType:(null==t?void 0:t.responseType)||"json"},Object.keys(t||{}).forEach(function(e){delete t[e]}),Object.assign(t,o),(null==(r=e.model.stepParams)?void 0:r.customRequestClickSettings)&&(e.model.stepParams.customRequestClickSettings=ew(ex({},e.model.stepParams.customRequestSettings||{}),{sendRequest:o})),[2]}})})()},handler:function(e,t){return eO(function(){var r,n,o,a,i,u;return eS(this,function(c){switch(c.label){case 0:if(o=(null==(r=(n=e.model).getStepParams)?void 0:r.call(n,"customRequestSettings","requestConfig"))||{},!(i=null==(a=(null==t?void 0:t.key)?t:ew(ex({},o),{key:null==o?void 0:o.key}))?void 0:a.key))return e.message.error(e.t("Please configure the request settings first",{ns:x})),e.exit(),[2];c.label=1;case 1:var s,p;return c.trys.push([1,3,,4]),[4,(s=ew(ex({},a),{key:i}),p={throwOnError:!0},J(function(){var t,r,n,o,a,i,u;return Q(this,function(c){switch(c.label){case 0:if(!(t=null==s?void 0:s.key))return[2,{ok:!1,status:400,error:{message:"custom request key is required"}}];if("function"!=typeof(r=el(e)))throw Error("custom request executor is not available");n=(null==s?void 0:s.responseType)||"json",c.label=1;case 1:var f;return c.trys.push([1,4,,5]),a={url:"/customRequests:send/".concat(t),method:"POST",responseType:"stream"===n?"blob":"json"},[4,(f=null==s?void 0:s.variablePaths,J(function(){var t;return Q(this,function(r){switch(r.label){case 0:return t={},[4,J(function(){var t,r;return Q(this,function(n){switch(n.label){case 0:if(!Array.isArray(f)||!f.length||"function"!=typeof(null==e?void 0:e.resolveJsonTemplate))return[2,void 0];n.label=1;case 1:return n.trys.push([1,3,,4]),t=f.reduce(function(e,t){return e[t]="{{".concat(t,"}}"),e},{}),[4,e.resolveJsonTemplate(t)];case 2:if(!(r=n.sent())||(void 0===r?"undefined":Y(r))!=="object")return[2,void 0];return[2,f.reduce(function(e,t){var n=r[t];return void 0===n||"string"==typeof n&&n.trim()==="{{".concat(t,"}}")||(e[t]=n),e},{})];case 3:return n.sent(),[2,void 0];case 4:return[2]}})})()];case 1:return[2,(t.vars=r.sent(),t)]}})})())];case 2:return[4,r.apply(void 0,[(a.data=c.sent(),a)])];case 3:if(o=c.sent(),"stream"===n)return(i=ea(o))&&(0,l.saveAs)(i.data,i.filename),[2];return[2,o];case 4:if(u=c.sent(),"stream"===n||(null==p?void 0:p.throwOnError))throw u;return[2,u];case 5:return[2]}})})())];case 2:return[2,c.sent()];case 3:throw u=c.sent(),e.exit(),u;case 4:return[2]}})})()}});function eA(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}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 eq(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){eC(e,t,r[t])})}return e}function eT(e){return function(e){if(Array.isArray(e))return eA(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e){if(e){if("string"==typeof e)return eA(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return eA(e,void 0)}}(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.")}()}var ek=function(){var e=(0,n.useAfterSuccessOptions)();return[{value:"$nResponse",label:(0,(0,O.useTranslation)().t)("Response",{ns:"client"}),children:null}].concat(eT(e.filter(function(e){return["currentUser","currentTime","$nRole"].includes(e.value)}))).filter(Boolean)},eI=function(){var e=(0,n.useAfterSuccessOptions)(),t=(0,n.useGlobalVariable)("$env");return eT(e.filter(function(e){return"$record"!==e.value})).concat([t]).filter(Boolean)},eE=function(){return{scope:eI(),useTypedConstant:!0}},eR=new n.SchemaSettings({name:"actionSettings:customRequest",items:[{name:"editButton",Component:n.ButtonEditor,useComponentProps:function(){return{isLink:"customize:table:request"===(0,i.useFieldSchema)()["x-action"]}}},{name:"linkageRules",Component:n.SchemaSettingsLinkageRules,useComponentProps:function(){return eq({},(0,n.useSchemaToolbar)().linkageRulesProps)}},{name:"secondConFirm",Component:n.SecondConFirm},{name:"afterSuccessfulSubmission",Component:function(){var e,t=(0,n.useDesignable)().dn,r=(0,O.useTranslation)().t,o=(0,i.useFieldSchema)(),u=((null==o?void 0:o["x-action-settings"])||{}).onSuccess,c=(0,n.usePlugin)("@nocobase/plugin-block-template"),l=null==c||null==(e=c.isInBlockTemplateConfigPage)?void 0:e.call(c);return a().createElement(n.SchemaSettingsModalItem,{dialogRootClassName:"dialog-after-successful-submission",width:700,title:r("After successful submission"),initialValues:u?eq({actionAfterSuccess:(null==u?void 0:u.redirecting)?"redirect":"previous"},u):{manualClose:!1,redirecting:!1,successMessage:'{{t("Saved successfully")}}',actionAfterSuccess:"previous"},schema:{type:"object",title:r("After successful submission"),properties:{successMessage:{title:r("Popup message"),"x-decorator":"FormItem","x-component":"Variable.RawTextArea","x-component-props":{scope:ek,style:{minWidth:"220px"}}},manualClose:{title:r("Message popup close method"),enum:[{label:r("Automatic close"),value:!1},{label:r("Manually close"),value:!0}],"x-decorator":"FormItem","x-component":"Radio.Group","x-component-props":{}},redirecting:{title:r("Then"),"x-hidden":!0,enum:[{label:r("Stay on current page"),value:!1},{label:r("Redirect to"),value:!0}],"x-decorator":"FormItem","x-component":"Radio.Group","x-component-props":{},"x-reactions":{target:"redirectTo",fulfill:{state:{visible:"{{!!$self.value}}"}}}},actionAfterSuccess:{title:r("Action after successful submission"),enum:[{label:r("Stay on the current popup or page"),value:"stay"},{label:r("Return to the previous popup or page"),value:"previous"},{label:r("Redirect to"),value:"redirect"}],"x-decorator":"FormItem","x-component":"Radio.Group","x-component-props":{},"x-reactions":{target:"redirectTo",fulfill:{state:{visible:"{{$self.value==='redirect'}}"}}}},redirectTo:{title:r("Link"),"x-decorator":"FormItem","x-component":"Variable.TextArea","x-use-component-props":eE},blocksToRefresh:{type:"array",title:r("Refresh data blocks"),"x-decorator":"FormItem","x-use-decorator-props":function(){return{tooltip:r("After successful submission, the selected data blocks will be automatically refreshed.")}},"x-component":n.BlocksSelector,"x-hidden":l}}},onSubmit:function(e){var r;o["x-action-settings"].onSuccess=e,t.emit("patch",{schema:(eC(r={},"x-uid",o["x-uid"]),eC(r,"x-action-settings",o["x-action-settings"]),r)})}})}},{name:"request settings",Component:B},(t=eq({},n.SchemaSettingAccessControl),r=r={useVisible:function(){return!0}},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:"refreshDataBlockRequest",Component:n.RefreshDataBlockRequest,useComponentProps:function(){return{isPopupAction:!1}},useVisible:function(){return!!(0,n.useCollection)()}},{name:"delete",sort:100,Component:n.RemoveButton,useComponentProps:function(){return(0,n.useSchemaToolbar)().removeButtonProps}}]});function eF(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function eD(e){return(eD=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function eM(e,t){return(eM=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function e_(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(e_=function(){return!!e})()}var eN=function(e){if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function t(){var e,r,n;if(!(this instanceof t))throw TypeError("Cannot call a class as a function");return r=t,n=arguments,r=eD(r),eF(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,e_()?Reflect.construct(r,n||[],eD(this).constructor):r.apply(this,n)),"defaultProps",{title:(0,W.tExpr)("Custom request",{ns:x})}),e}return t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&eM(t,e),t}(n.ActionModel);function eB(e,t,r,n,o,a,i){try{var u=e[a](i),c=u.value}catch(e){r(e);return}u.done?t(c):Promise.resolve(c).then(n,o)}function eV(e,t,r){return(eV=ez()?Reflect.construct:function(e,t,r){var n=[null];n.push.apply(n,t);var o=new(Function.bind.apply(e,n));return r&&eG(o,r.prototype),o}).apply(null,arguments)}eF(eN,"scene",n.ActionSceneEnum.all),eN.define({label:(0,W.tExpr)("Custom request",{ns:x}),sort:5e3,createModelOptions:{use:"CustomRequestActionModel"}}),eN.registerFlow({key:"customRequestClickSettings",on:"click",title:(0,W.tExpr)("Click settings",{ns:x}),steps:{confirm:{use:"confirm",defaultParams:{enable:!1,title:(0,W.tExpr)("Please confirm custom request",{ns:x}),content:(0,W.tExpr)("Are you sure you want to send this custom request?",{ns:x})}},sendRequest:{use:ej}}}),n.CollectionActionGroupModel.registerActionModels({CustomRequestActionModel:eN}),n.RecordActionGroupModel.registerActionModels({CustomRequestActionModel:eN}),n.FormActionGroupModel.registerActionModels({CustomRequestActionModel:eN}),n.PopupSubTableFormActionGroupModel.registerActionModels({CustomRequestActionModel:eN});function e$(e){return(e$=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function eG(e,t){return(eG=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function eU(e){var t="function"==typeof Map?new Map:void 0;return(eU=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 eV(e,arguments,e$(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),eG(r,e)})(e)}function ez(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(ez=function(){return!!e})()}var eL=function(e){return a().createElement(n.SchemaComponentOptions,{scope:{CustomRequestConfigurationFieldsSchema:R},components:{CustomRequestAction:G,CustomRequestInitializer:L}},e.children)},eW=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=e$(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||[],e$(this).constructor):e.apply(this,t))}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&eG(r,e),t=[{key:"load",value:function(){var e;return(e=function(){return function(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(i,"next",{value:c(0)}),u(i,"throw",{value:c(1)}),u(i,"return",{value:c(2)}),"function"==typeof Symbol&&u(i,Symbol.iterator,{value:function(){return this}}),i;function c(u){return function(c){var l=[u,c];if(r)throw TypeError("Generator is already executing.");for(;i&&(i=0,l[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return a.label++,{value:l[1],done:!1};case 5:a.label++,n=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){a=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){a.label=l[1];break}if(6===l[0]&&a.label<o[1]){a.label=o[1],o=l;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(l);break}o[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(e){return this.app.use(eL),this.app.flowEngine.registerActions({customRequestFlowAction:eP}),this.app.flowEngine.registerModels({CustomRequestActionModel:eN}),this.app.schemaSettingsManager.add(eR),this.app.schemaSettingsManager.add(V),[2]})},function(){var t=this,r=arguments;return new Promise(function(n,o){var a=e.apply(t,r);function i(e){eB(a,n,o,i,u,"next",e)}function u(e){eB(a,n,o,i,u,"throw",e)}i(void 0)})}).call(this)}}],function(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}(r.prototype,t),r}(eU(n.Plugin)),eH=eW}(),g}()});
@@ -0,0 +1,14 @@
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 { ActionModel } from '@nocobase/client';
10
+ import type { ButtonProps } from 'antd/es/button';
11
+ export declare class CustomRequestActionModel extends ActionModel {
12
+ static scene: import("@nocobase/client").ActionSceneType;
13
+ defaultProps: ButtonProps;
14
+ }
@@ -0,0 +1,13 @@
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 React from 'react';
10
+ export declare const RequestKeyField: (props: {
11
+ value?: string;
12
+ onChange?: (value: string) => void;
13
+ }) => React.JSX.Element;
@@ -0,0 +1,13 @@
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 React from 'react';
10
+ export declare const RolesSelect: (props: {
11
+ value?: string[];
12
+ onChange?: (value: string[]) => void;
13
+ }) => React.JSX.Element;
@@ -6,4 +6,5 @@
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
+ export declare const CUSTOM_REQUEST_ACTION_NAME = "customRequest";
9
10
  export declare const customRequestFlowAction: import("@nocobase/flow-engine").ActionDefinition<import("@nocobase/flow-engine").FlowModel<import("@nocobase/flow-engine").DefaultStructure>, import("@nocobase/flow-engine").FlowContext>;
@@ -6,8 +6,8 @@
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 React from 'react';
10
- export declare const customRequestFlowActionUiSchema: {
9
+ /// <reference types="react" />
10
+ export declare const customRequestUiSchema: {
11
11
  key: {
12
12
  type: string;
13
13
  title: string;
@@ -20,7 +20,7 @@ export declare const customRequestFlowActionUiSchema: {
20
20
  'x-component': (props: {
21
21
  value?: string;
22
22
  onChange?: (value: string) => void;
23
- }) => React.JSX.Element;
23
+ }) => import("react").JSX.Element;
24
24
  };
25
25
  method: {
26
26
  type: string;
@@ -47,7 +47,7 @@ export declare const customRequestFlowActionUiSchema: {
47
47
  title: string;
48
48
  required: boolean;
49
49
  'x-decorator': string;
50
- 'x-component': React.FC<import("@nocobase/client").TextAreaWithContextSelectorProps>;
50
+ 'x-component': import("react").FC<import("@nocobase/client").TextAreaWithContextSelectorProps>;
51
51
  'x-component-props': {
52
52
  placeholder: string;
53
53
  };
@@ -83,7 +83,7 @@ export declare const customRequestFlowActionUiSchema: {
83
83
  value: {
84
84
  type: string;
85
85
  'x-decorator': string;
86
- 'x-component': React.FC<import("@nocobase/client").TextAreaWithContextSelectorProps>;
86
+ 'x-component': import("react").FC<import("@nocobase/client").TextAreaWithContextSelectorProps>;
87
87
  'x-component-props': {
88
88
  rows: number;
89
89
  };
@@ -136,7 +136,7 @@ export declare const customRequestFlowActionUiSchema: {
136
136
  value: {
137
137
  type: string;
138
138
  'x-decorator': string;
139
- 'x-component': React.FC<import("@nocobase/client").TextAreaWithContextSelectorProps>;
139
+ 'x-component': import("react").FC<import("@nocobase/client").TextAreaWithContextSelectorProps>;
140
140
  'x-component-props': {
141
141
  rows: number;
142
142
  };
@@ -162,7 +162,7 @@ export declare const customRequestFlowActionUiSchema: {
162
162
  type: string;
163
163
  title: string;
164
164
  'x-decorator': string;
165
- 'x-component': React.FC<import("./FlowJsonWithContextSelector").FlowJsonWithContextSelectorProps>;
165
+ 'x-component': import("react").FC<import("./components/FlowJsonWithContextSelector").FlowJsonWithContextSelectorProps>;
166
166
  'x-component-props': {
167
167
  autoSize: {
168
168
  minRows: number;
@@ -176,10 +176,10 @@ export declare const customRequestFlowActionUiSchema: {
176
176
  title: string;
177
177
  'x-decorator': string;
178
178
  'x-component': (<T extends import("rc-input-number").ValueType = import("rc-input-number").ValueType>(props: import("antd").InputNumberProps<T> & {
179
- children?: React.ReactNode;
180
- } & React.RefAttributes<HTMLInputElement>) => React.ReactElement<any, string | React.JSXElementConstructor<any>>) & {
179
+ children?: import("react").ReactNode;
180
+ } & import("react").RefAttributes<HTMLInputElement>) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>) & {
181
181
  displayName?: string;
182
- _InternalPanelDoNotUseOrYouWillBeFired: React.FC<import("antd").InputNumberProps<import("rc-input-number").ValueType>>;
182
+ _InternalPanelDoNotUseOrYouWillBeFired: import("react").FC<import("antd").InputNumberProps<import("rc-input-number").ValueType>>;
183
183
  };
184
184
  'x-component-props': {
185
185
  min: number;
@@ -212,6 +212,6 @@ export declare const customRequestFlowActionUiSchema: {
212
212
  'x-component': (props: {
213
213
  value?: string[];
214
214
  onChange?: (value: string[]) => void;
215
- }) => React.JSX.Element;
215
+ }) => import("react").JSX.Element;
216
216
  };
217
217
  };
@@ -6,6 +6,4 @@
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 type { FlowActionSchemaContribution, FlowSchemaContribution } from '@nocobase/flow-engine';
10
- export declare const customRequestActionSchemaContribution: FlowActionSchemaContribution;
11
- export declare const flowSchemaContribution: FlowSchemaContribution;
9
+ export * from './CustomRequestActionModel';
@@ -10,7 +10,60 @@ type RequestNameValue = {
10
10
  name: string;
11
11
  value: unknown;
12
12
  };
13
+ export type CustomRequestRecord = {
14
+ options?: Record<string, any>;
15
+ roles?: unknown[];
16
+ };
17
+ export type CustomRequestConfigParams = {
18
+ key?: string;
19
+ method?: string;
20
+ url?: string;
21
+ headers?: Array<{
22
+ name?: string;
23
+ value?: string;
24
+ }>;
25
+ params?: Array<{
26
+ name?: string;
27
+ value?: string;
28
+ }>;
29
+ data?: unknown;
30
+ timeout?: number;
31
+ responseType?: 'json' | 'stream';
32
+ variablePaths?: string[];
33
+ roles?: string[];
34
+ };
35
+ export type ExecuteCustomRequestOptions = {
36
+ throwOnError?: boolean;
37
+ };
13
38
  export declare function makeRequestKey(): string;
14
- export declare function parseJsonString(input: unknown): any;
15
39
  export declare function normalizeNameValueArray(arr: any): RequestNameValue[];
40
+ export declare const DEFAULT_CUSTOM_REQUEST_SETTINGS: CustomRequestConfigParams;
41
+ export declare const normalizeRoleNames: (roles: unknown) => string[];
42
+ export declare const normalizeBodyData: (input: unknown) => any;
43
+ export declare const toCustomRequestConfigurationInitialValues: (record?: CustomRequestRecord) => {
44
+ [x: string]: any;
45
+ };
46
+ export declare const loadCustomRequestRecord: (ctx: any, key?: string) => Promise<CustomRequestRecord | undefined>;
47
+ export declare const getDownloadFilename: (contentDisposition: string) => string | undefined;
48
+ export declare const buildCustomRequestOptions: (ctx: any, params: CustomRequestConfigParams) => {
49
+ method: string;
50
+ url: string;
51
+ headers: RequestNameValue[];
52
+ params: RequestNameValue[];
53
+ data: any;
54
+ timeout: number;
55
+ responseType: "stream" | "json";
56
+ };
57
+ export declare const saveCustomRequestConfig: (ctx: any, key: string, params: CustomRequestConfigParams) => Promise<void>;
58
+ export declare const handleCustomRequestStreamResponse: (response: any) => {
59
+ filename: string;
60
+ data: any;
61
+ };
62
+ export declare const walkAndCollectVariablePaths: (input: unknown, output: Set<string>) => void;
63
+ export declare const extractVariablePaths: (params: any) => string[];
64
+ export declare const resolveCustomRequestVars: (ctx: any, variablePaths?: string[]) => Promise<Record<string, unknown>>;
65
+ export declare const buildCustomRequestSendData: (ctx: any, variablePaths?: string[]) => Promise<{
66
+ vars: Record<string, unknown>;
67
+ }>;
68
+ export declare const executeCustomRequest: (ctx: any, params?: CustomRequestConfigParams, options?: ExecuteCustomRequestOptions) => Promise<any>;
16
69
  export {};
@@ -8,23 +8,23 @@
8
8
  */
9
9
 
10
10
  module.exports = {
11
- "@nocobase/client": "2.1.0-alpha.12",
11
+ "@nocobase/client": "2.1.0-alpha.14",
12
12
  "react": "18.2.0",
13
13
  "react-i18next": "11.18.6",
14
14
  "@formily/react": "2.3.7",
15
- "@nocobase/flow-engine": "2.1.0-alpha.12",
16
- "@nocobase/logger": "2.1.0-alpha.12",
17
- "@nocobase/server": "2.1.0-alpha.12",
18
- "@nocobase/test": "2.1.0-alpha.12",
15
+ "@nocobase/logger": "2.1.0-alpha.14",
16
+ "@nocobase/server": "2.1.0-alpha.14",
17
+ "@nocobase/test": "2.1.0-alpha.14",
19
18
  "@formily/antd-v5": "1.2.3",
20
19
  "lodash": "4.17.21",
21
- "@nocobase/utils": "2.1.0-alpha.12",
20
+ "@nocobase/utils": "2.1.0-alpha.14",
22
21
  "antd": "5.24.2",
23
22
  "file-saver": "2.0.5",
24
23
  "@formily/shared": "2.3.7",
24
+ "@nocobase/flow-engine": "2.1.0-alpha.14",
25
25
  "@emotion/css": "11.13.0",
26
- "@nocobase/actions": "2.1.0-alpha.12",
27
- "@nocobase/evaluators": "2.1.0-alpha.12",
26
+ "@nocobase/actions": "2.1.0-alpha.14",
27
+ "@nocobase/evaluators": "2.1.0-alpha.14",
28
28
  "axios": "1.7.7",
29
- "@nocobase/database": "2.1.0-alpha.12"
29
+ "@nocobase/database": "2.1.0-alpha.14"
30
30
  };
@@ -18,7 +18,9 @@
18
18
  "Name": "Name",
19
19
  "Only support standard JSON data": "Only support standard JSON data",
20
20
  "Parameters": "Parameters",
21
+ "Please confirm custom request": "Please confirm custom request",
21
22
  "Please configure the request settings first": "Please configure the request settings first",
23
+ "Are you sure you want to send this custom request?": "Are you sure you want to send this custom request?",
22
24
  "Request settings": "Request settings",
23
25
  "Response type": "Response type",
24
26
  "Roles": "Roles",
@@ -18,7 +18,9 @@
18
18
  "Name": "名称",
19
19
  "Only support standard JSON data": "仅支持标准 JSON 数据",
20
20
  "Parameters": "参数",
21
+ "Please confirm custom request": "请确认自定义请求",
21
22
  "Please configure the request settings first": "请先配置请求设置",
23
+ "Are you sure you want to send this custom request?": "你确定要发送这个自定义请求吗?",
22
24
  "Request settings": "请求设置",
23
25
  "Response type": "响应类型",
24
26
  "Roles": "角色",
@@ -6,12 +6,10 @@
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 type { FlowSchemaContribution } from '@nocobase/flow-engine';
10
9
  import { Logger } from '@nocobase/logger';
11
10
  import { InstallOptions, Plugin } from '@nocobase/server';
12
11
  export declare class PluginActionCustomRequestServer extends Plugin {
13
12
  logger: Logger;
14
- getFlowSchemaContributions(): FlowSchemaContribution;
15
13
  afterAdd(): void;
16
14
  beforeLoad(): void;
17
15
  getLogger(): Logger;
@@ -33,12 +33,8 @@ module.exports = __toCommonJS(plugin_exports);
33
33
  var import_server = require("@nocobase/server");
34
34
  var import_listByCurrentRole = require("./actions/listByCurrentRole");
35
35
  var import_send = require("./actions/send");
36
- var import_flow_schema_contributions = require("./flow-schema-contributions");
37
36
  class PluginActionCustomRequestServer extends import_server.Plugin {
38
37
  logger;
39
- getFlowSchemaContributions() {
40
- return import_flow_schema_contributions.flowSchemaContribution;
41
- }
42
38
  afterAdd() {
43
39
  }
44
40
  beforeLoad() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nocobase/plugin-action-custom-request",
3
- "version": "2.1.0-alpha.12",
3
+ "version": "2.1.0-alpha.14",
4
4
  "main": "dist/server/index.js",
5
5
  "homepage": "https://docs.nocobase.com/handbook/action-custom-request",
6
6
  "homepage.ru-RU": "https://docs-ru.nocobase.com/handbook/action-custom-request",
@@ -31,7 +31,7 @@
31
31
  "@nocobase/server": "2.x",
32
32
  "@nocobase/test": "2.x"
33
33
  },
34
- "gitHead": "f12c4a75470590b1670ce54510b96ef94c2cd7a2",
34
+ "gitHead": "d8735b541de0ff9557bba704de49c799b4962672",
35
35
  "keywords": [
36
36
  "Actions"
37
37
  ]
@@ -1,115 +0,0 @@
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
- var __defProp = Object.defineProperty;
11
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
12
- var __getOwnPropNames = Object.getOwnPropertyNames;
13
- var __hasOwnProp = Object.prototype.hasOwnProperty;
14
- var __export = (target, all) => {
15
- for (var name in all)
16
- __defProp(target, name, { get: all[name], enumerable: true });
17
- };
18
- var __copyProps = (to, from, except, desc) => {
19
- if (from && typeof from === "object" || typeof from === "function") {
20
- for (let key of __getOwnPropNames(from))
21
- if (!__hasOwnProp.call(to, key) && key !== except)
22
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
23
- }
24
- return to;
25
- };
26
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
27
- var flow_schema_contributions_exports = {};
28
- __export(flow_schema_contributions_exports, {
29
- customRequestActionSchemaContribution: () => customRequestActionSchemaContribution,
30
- flowSchemaContribution: () => flowSchemaContribution
31
- });
32
- module.exports = __toCommonJS(flow_schema_contributions_exports);
33
- const requestNameValueSchema = {
34
- type: "object",
35
- properties: {
36
- name: { type: "string" },
37
- value: { type: "string" }
38
- },
39
- additionalProperties: false
40
- };
41
- const customRequestActionSchemaContribution = {
42
- name: "customRequest",
43
- title: "Custom request",
44
- source: "plugin",
45
- strict: false,
46
- paramsSchema: {
47
- type: "object",
48
- properties: {
49
- key: { type: "string" },
50
- method: {
51
- type: "string",
52
- enum: ["GET", "POST", "PUT", "PATCH", "DELETE"]
53
- },
54
- url: { type: "string" },
55
- headers: {
56
- type: "array",
57
- items: requestNameValueSchema
58
- },
59
- params: {
60
- type: "array",
61
- items: requestNameValueSchema
62
- },
63
- data: {},
64
- timeout: { type: "number" },
65
- responseType: {
66
- type: "string",
67
- enum: ["json", "stream"]
68
- },
69
- variablePaths: {
70
- type: "array",
71
- items: { type: "string" }
72
- },
73
- roles: {
74
- type: "array",
75
- items: { type: "string" }
76
- }
77
- },
78
- additionalProperties: false
79
- },
80
- docs: {
81
- minimalExample: {
82
- key: "req_demo",
83
- method: "POST",
84
- url: "https://api.example.com/orders",
85
- headers: [
86
- {
87
- name: "Authorization",
88
- value: "Bearer {{ctx.token}}"
89
- }
90
- ],
91
- params: [
92
- {
93
- name: "id",
94
- value: "{{ctx.record.id}}"
95
- }
96
- ],
97
- data: {
98
- status: "processed"
99
- },
100
- timeout: 5e3,
101
- responseType: "json"
102
- }
103
- }
104
- };
105
- const flowSchemaContribution = {
106
- actions: [customRequestActionSchemaContribution],
107
- defaults: {
108
- source: "plugin"
109
- }
110
- };
111
- // Annotate the CommonJS export names for ESM import in node:
112
- 0 && (module.exports = {
113
- customRequestActionSchemaContribution,
114
- flowSchemaContribution
115
- });