@nocobase/plugin-async-task-manager 2.1.0 → 2.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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("dayjs"),require("react"),require("antd"),require("@nocobase/client"),require("@nocobase/utils/client")):"function"==typeof define&&define.amd?define("@nocobase/plugin-async-task-manager",["react-i18next","dayjs","react","antd","@nocobase/client","@nocobase/utils/client"],t):"object"==typeof exports?exports["@nocobase/plugin-async-task-manager"]=t(require("react-i18next"),require("dayjs"),require("react"),require("antd"),require("@nocobase/client"),require("@nocobase/utils/client")):e["@nocobase/plugin-async-task-manager"]=t(e["react-i18next"],e.dayjs,e.react,e.antd,e["@nocobase/client"],e["@nocobase/utils/client"])}(self,function(e,t,n,r,o,a){return function(){var i={912:function(e,t,n){e.exports=function(e){"use strict";var t={name:"zh-cn",weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(e,t){return"W"===t?e+"周":e+"日"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},relativeTime:{future:"%s内",past:"%s前",s:"几秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},meridiem:function(e,t){var n=100*e+t;return n<600?"凌晨":n<900?"早上":n<1100?"上午":n<1300?"中午":n<1800?"下午":"晚上"}};return(e&&"object"==typeof e&&"default"in e?e:{default:e}).default.locale(t,null,!0),t}(n(185))},264:function(e){e.exports=function(e,t,n){e=e||{};var r=t.prototype,o={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function a(e,t,n,o){return r.fromToBase(e,t,n,o)}n.en.relativeTime=o,r.fromToBase=function(t,r,a,i,c){for(var l,s,u,f=a.$locale().relativeTime||o,p=e.thresholds||[{l:"s",r:44,d:"second"},{l:"m",r:89},{l:"mm",r:44,d:"minute"},{l:"h",r:89},{l:"hh",r:21,d:"hour"},{l:"d",r:35},{l:"dd",r:25,d:"day"},{l:"M",r:45},{l:"MM",r:10,d:"month"},{l:"y",r:17},{l:"yy",d:"year"}],d=p.length,y=0;y<d;y+=1){var m=p[y];m.d&&(l=i?n(t).diff(a,m.d,!0):a.diff(t,m.d,!0));var b=(e.rounding||Math.round)(Math.abs(l));if(u=l>0,b<=m.r||!m.r){b<=1&&y>0&&(m=p[y-1]);var v=f[m.l];c&&(b=c(""+b)),s="string"==typeof v?v.replace("%d",b):v(b,r,m.l,u);break}}if(r)return s;var h=u?f.future:f.past;return"function"==typeof h?h(s):h.replace("%s",s)},r.to=function(e,t){return a(e,t,this,!0)},r.from=function(e,t){return a(e,t,this)};var i=function(e){return e.$u?n.utc():n()};r.toNow=function(e){return this.to(i(this),e)},r.fromNow=function(e){return this.from(i(this),e)}}},342:function(e){"use strict";e.exports=o},768:function(e){"use strict";e.exports=a},59:function(e){"use strict";e.exports=r},185:function(e){"use strict";e.exports=t},155:function(e){"use strict";e.exports=n},953:function(t){"use strict";t.exports=e}},c={};function l(e){var t=c[e];if(void 0!==t)return t.exports;var n=c[e]={exports:{}};return i[e].call(n.exports,n,n.exports,l),n.exports}l.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return l.d(t,{a:t}),t},l.d=function(e,t){for(var n in t)l.o(t,n)&&!l.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},l.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),l.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},l.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.g.importScripts&&(s=l.g.location+"");var s,u=l.g.document;if(!s&&u&&(u.currentScript&&"SCRIPT"===u.currentScript.tagName.toUpperCase()&&(s=u.currentScript.src),!s)){var f=u.getElementsByTagName("script");if(f.length)for(var p=f.length-1;p>-1&&(!s||!/^http(s?):/.test(s));)s=f[p--].src}if(!s)throw Error("Automatic publicPath is not supported in this browser");l.p=s.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/");var d={};return!function(){"use strict";var e="",t="u">typeof document?document.currentScript:null;if(t&&t.src&&(e=t.src.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")),!e){var n=window.__webpack_public_path__||"";n&&("/"!==n.charAt(n.length-1)&&(n+="/"),e=n+"static/plugins/@nocobase/plugin-async-task-manager/dist/client/")}if(!e){var r=window.__nocobase_modern_client_prefix__||"v",o="/"+(r=String(r).replace(/^\/+|\/+$/g,"")||"v")+"/";if(!(e=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var a=window.location.pathname||"/",i=a.indexOf(o);e=i>=0?a.slice(0,i+1):"/"}e&&(e=e.replace(RegExp("/"+r+"/?$"),"/")),e||(e="/"),"/"!==e.charAt(e.length-1)&&(e+="/"),e+="static/plugins/@nocobase/plugin-async-task-manager/dist/client/"}l.p=e}(),!function(){"use strict";l.r(d),l.d(d,{PluginAsyncTaskManagerClient:function(){return A},default:function(){return I}});var e,t=l(768),n=l(342),r=l(155),o=l.n(r),a=l(59),i=l(953),c=l(185),s=l.n(c);l(912);var u=l(264),f=l.n(u),p=JSON.parse('{"UU":"@nocobase/plugin-async-task-manager"}');function y(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var m="@nocobase/plugin-async-task-manager",b=(y(e={},null,{value:null,label:"{{t('Waiting', { ns: '".concat(m,"' })}}"),color:"default",icon:"ClockCircleOutlined"}),y(e,0,{value:0,label:"{{t('Processing', { ns: '".concat(m,"' })}}"),color:"processing",icon:"LoadingOutlined"}),y(e,1,{value:1,label:"{{t('Completed', { ns: '".concat(m,"' })}}"),color:"success",icon:"CheckCircleOutlined"}),y(e,-1,{value:-1,label:"{{t('Failed', { ns: '".concat(m,"' })}}"),color:"error",icon:"CloseCircleOutlined"}),y(e,-2,{value:-2,label:"{{t('Cancelled', { ns: '".concat(m,"' })}}"),color:"warning",icon:"StopOutlined"}),e);function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function h(e,t,n,r,o,a,i){try{var c=e[a](i),l=c.value}catch(e){n(e);return}c.done?t(l):Promise.resolve(l).then(r,o)}function g(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function i(e){h(a,r,o,i,c,"next",e)}function c(e){h(a,r,o,i,c,"throw",e)}i(void 0)})}}function w(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var a=[],i=!0,c=!1;try{for(o=o.call(e);!(i=(n=o.next()).done)&&(a.push(n.value),!t||a.length!==t);i=!0);}catch(e){c=!0,r=e}finally{try{i||null==o.return||o.return()}finally{if(c)throw r}}return a}}(e,t)||k(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function k(e,t){if(e){if("string"==typeof e)return v(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return v(e,t)}}function _(e,t){var n,r,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),c=Object.defineProperty;return c(i,"next",{value:l(0)}),c(i,"throw",{value:l(1)}),c(i,"return",{value:l(2)}),"function"==typeof Symbol&&c(i,Symbol.iterator,{value:function(){return this}}),i;function l(c){return function(l){var s=[c,l];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}}}var O=(0,n.createStyles)(function(e){return{button:{color:e.token.colorTextHeaderMenu+" !important"}}});s().extend(f());var E=function(e){var t,r=e.popoverVisible,c=e.setPopoverVisible,l=e.tasks,u=e.refresh,f=e.loading;e.hasProcessingTasks;var d=(0,n.useAPIClient)(),y=(t=(0,n.useApp)(),function(e,n){return t.i18n.t(e,function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({ns:[p.UU,"client"]},n))}),m=(0,i.useTranslation)().t,v=O().styles,h=(0,n.usePlugin)("async-task-manager"),w=(0,n.useCompile)(),k=function(e){c(!1)},E=[{title:y("Created at"),dataIndex:"createdAt",key:"createdAt",width:180,render:function(e){return o().createElement(a.Tooltip,{title:s()(e).format("YYYY-MM-DD HH:mm:ss")},s()(e).fromNow())}},{title:y("Task"),dataIndex:"title",key:"title"},{title:y("Status"),dataIndex:"status",key:"status",width:160,render:function(e,t){var r=b[e]||{},i=r.color,c=r.label;return o().createElement("div",{style:{display:"flex",alignItems:"center",gap:8}},o().createElement("div",{style:{flex:1}},function(){var n,r,i={width:100,margin:0};switch(e){case null:case -2:return o().createElement(a.Alert,{showIcon:!1,message:w(c),banner:!0});case 0:return o().createElement(a.Progress,{type:"line",size:"small",strokeWidth:4,percent:Number(((null!=(n=t.progressCurrent)?n:0)/(null!=(r=t.progressTotal)?r:1)*100).toFixed(2)),status:"active",style:i,format:function(e){return"".concat(e.toFixed(1),"%")}});case 1:return o().createElement(a.Progress,{type:"line",size:"small",strokeWidth:4,percent:100,status:"success",style:i,format:function(){return""}});case -1:return o().createElement(a.Progress,{type:"line",size:"small",strokeWidth:4,percent:100,status:"exception",style:i,format:function(){return""}});default:return null}}()),o().createElement(a.Tag,{color:i,icon:(null==r?void 0:r.icon)?o().createElement(n.Icon,{type:r.icon}):null,style:{margin:0,padding:"0 4px",height:22,width:22}}))}},{title:y("Actions"),dataIndex:"result",key:"actions",width:180,render:function(e,t){var r,i=[],l=null!=(r=h.taskOrigins.get(t.origin))?r:{},s=l.Result,f=l.ResultButton,p=s||function(){return null};return t.cancelable&&(0===t.status||null===t.status)&&i.push(o().createElement(a.Popconfirm,{key:"cancel",title:y("Confirm cancel"),description:y("Confirm to cancel this task?"),onConfirm:function(){return g(function(){return _(this,function(e){switch(e.label){case 0:return[4,d.resource("asyncTasks").stop({filterByTk:t.id})];case 1:return e.sent(),u(),[2]}})})()},okText:y("Confirm"),cancelText:y("Cancel"),disabled:!1},o().createElement(a.Button,{type:"link",size:"small",icon:o().createElement(n.Icon,{type:"StopOutlined"}),disabled:!1},y("Stop")))),1===t.status&&e&&(f?i.push(o().createElement(f,{key:"result-button",task:t})):i.push(o().createElement(a.Button,{key:"view",type:"link",size:"small",icon:o().createElement(n.Icon,{type:"EyeOutlined"}),onClick:function(){k(t),a.Modal.info({title:y("Task result"),content:s?o().createElement(p,{payload:e,task:t}):o().createElement("div",null,y("No renderer available for this task type, payload: ".concat(t.result)))})}},y("View result")))),-1===t.status&&e&&i.push(o().createElement(a.Button,{key:"error",type:"link",size:"small",icon:o().createElement(n.Icon,{type:"ExclamationCircleOutlined"}),onClick:function(){c(!1);var n,r,i,l=(null!=(i=h.taskOrigins.get(t.origin))?i:{}).namespace;a.Modal.info({title:y("Error Details"),content:o().createElement(a.Typography.Text,null,m(e.message,(n=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({},e.params),r=r={ns:void 0===l?"client":l},Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(r)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(r)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(r,e))}),n))),closable:!0,width:400})}},y("Error details"))),o().createElement(a.Space,{size:"middle"},i)}}];l.filter(function(e){return[1,-1].includes(e.status)}).length;var x=o().createElement("div",{style:{maxHeight:"70vh",overflow:"auto",width:l.length>0?800:200}},l.length>0?o().createElement(a.Table,{loading:f,columns:E,dataSource:l,size:"small",pagination:!1,rowKey:"taskId"}):o().createElement("div",{style:{padding:"24px 0",display:"flex",justifyContent:"center"}},o().createElement(a.Empty,{description:y("No tasks"),image:a.Empty.PRESENTED_IMAGE_SIMPLE})));return o().createElement(o().Fragment,null,o().createElement(a.Popover,{content:x,trigger:"click",placement:"bottom",open:r,onOpenChange:c},o().createElement(a.Button,{className:["sync-task-button",v.button].join(" "),onClick:function(){c(!r),r||u()},icon:o().createElement(n.Icon,{type:"SyncOutlined",spin:l.some(function(e){return 0===e.status})})})))},x=function(){var e=(0,n.useApp)(),t=(0,n.useRequest)({resource:"asyncTasks",action:"list",params:{sort:"-createdAt"}}),a=t.data,i=t.refresh;t.loading;var c=w((0,r.useState)((null==a?void 0:a.data)||[]),2),l=c[0],s=c[1],u=w((0,r.useState)(!1),2),f=u[0],p=u[1];(0,r.useEffect)(function(){s((null==a?void 0:a.data)||[])},[a]);var d=(0,r.useCallback)(function(){return g(function(){return _(this,function(e){return p(!0),i(),[2]})})()},[i]),y=(0,r.useCallback)(function(e){var t=e.detail;s(function(e){var n=e.findIndex(function(e){return e.id===t.id});return -1===n?e.unshift(t):e.splice(n,1,t),function(e){if(Array.isArray(e))return v(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||k(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.")}()})},[]),m=(0,r.useCallback)(function(){i()},[i]),b=(0,r.useCallback)(function(){i()},[i]);return(0,r.useEffect)(function(){return e.eventBus.addEventListener("ws:message:async-tasks:created",d),e.eventBus.addEventListener("ws:message:async-tasks:progress",y),e.eventBus.addEventListener("ws:message:async-tasks:status",m),e.eventBus.addEventListener("ws:message:async-tasks:deleted",b),function(){e.eventBus.removeEventListener("ws:message:async-tasks:created",d),e.eventBus.removeEventListener("ws:message:async-tasks:progress",y),e.eventBus.removeEventListener("ws:message:async-tasks:status",m),e.eventBus.removeEventListener("ws:message:async-tasks:deleted",b)}},[e,b,d,y,m]),(null==l?void 0:l.length)>0&&o().createElement(E,{tasks:l,refresh:i,popoverVisible:f,setPopoverVisible:p})},j=function(e){return o().createElement(n.PinnedPluginListProvider,{items:{asyncTasks:{order:300,component:"AsyncTasks",pin:!0,snippet:"*"}}},o().createElement(n.SchemaComponentOptions,{components:{AsyncTasks:x}},e.children))};function S(e,t,n,r,o,a,i){try{var c=e[a](i),l=c.value}catch(e){n(e);return}c.done?t(l):Promise.resolve(l).then(r,o)}function P(e,t,n){return(P=C()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&Y(o,n.prototype),o}).apply(null,arguments)}function T(e){return(T=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Y(e,t){return(Y=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function M(e){var t="function"==typeof Map?new Map:void 0;return(M=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,n)}function n(){return P(e,arguments,T(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),Y(n,e)})(e)}function C(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(C=function(){return!!e})()}var A=function(e){var n;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function r(){var e,n,o,a,i,c;if(!(this instanceof r))throw TypeError("Cannot call a class as a function");return n=r,o=arguments,n=T(n),a=e=function(e,t){var n;if(t&&("object"==((n=t)&&"u">typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,C()?Reflect.construct(n,o||[],T(this).constructor):n.apply(this,o)),i="taskOrigins",c=new t.Registry,i in a?Object.defineProperty(a,i,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[i]=c,e}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&Y(r,e),n=[{key:"load",value:function(){var e;return(e=function(){return function(e,t){var n,r,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),c=Object.defineProperty;return c(i,"next",{value:l(0)}),c(i,"throw",{value:l(1)}),c(i,"return",{value:l(2)}),"function"==typeof Symbol&&c(i,Symbol.iterator,{value:function(){return this}}),i;function l(c){return function(l){var s=[c,l];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}}}(this,function(e){return this.app.use(j),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function i(e){S(a,r,o,i,c,"next",e)}function c(e){S(a,r,o,i,c,"throw",e)}i(void 0)})}).call(this)}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(r.prototype,n),r}(M(n.Plugin)),I=A}(),d}()});
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react-i18next"),require("dayjs"),require("react"),require("antd"),require("@nocobase/client"),require("@nocobase/utils/client")):"function"==typeof define&&define.amd?define("@nocobase/plugin-async-task-manager",["react-i18next","dayjs","react","antd","@nocobase/client","@nocobase/utils/client"],t):"object"==typeof exports?exports["@nocobase/plugin-async-task-manager"]=t(require("react-i18next"),require("dayjs"),require("react"),require("antd"),require("@nocobase/client"),require("@nocobase/utils/client")):e["@nocobase/plugin-async-task-manager"]=t(e["react-i18next"],e.dayjs,e.react,e.antd,e["@nocobase/client"],e["@nocobase/utils/client"])}(self,function(e,t,n,r,o,a){return function(){var i={912:function(e,t,n){e.exports=function(e){"use strict";var t={name:"zh-cn",weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(e,t){return"W"===t?e+"周":e+"日"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},relativeTime:{future:"%s内",past:"%s前",s:"几秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},meridiem:function(e,t){var n=100*e+t;return n<600?"凌晨":n<900?"早上":n<1100?"上午":n<1300?"中午":n<1800?"下午":"晚上"}};return(e&&"object"==typeof e&&"default"in e?e:{default:e}).default.locale(t,null,!0),t}(n(185))},264:function(e){e.exports=function(e,t,n){e=e||{};var r=t.prototype,o={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function a(e,t,n,o){return r.fromToBase(e,t,n,o)}n.en.relativeTime=o,r.fromToBase=function(t,r,a,i,c){for(var l,s,u,f=a.$locale().relativeTime||o,p=e.thresholds||[{l:"s",r:44,d:"second"},{l:"m",r:89},{l:"mm",r:44,d:"minute"},{l:"h",r:89},{l:"hh",r:21,d:"hour"},{l:"d",r:35},{l:"dd",r:25,d:"day"},{l:"M",r:45},{l:"MM",r:10,d:"month"},{l:"y",r:17},{l:"yy",d:"year"}],d=p.length,y=0;y<d;y+=1){var m=p[y];m.d&&(l=i?n(t).diff(a,m.d,!0):a.diff(t,m.d,!0));var b=(e.rounding||Math.round)(Math.abs(l));if(u=l>0,b<=m.r||!m.r){b<=1&&y>0&&(m=p[y-1]);var v=f[m.l];c&&(b=c(""+b)),s="string"==typeof v?v.replace("%d",b):v(b,r,m.l,u);break}}if(r)return s;var h=u?f.future:f.past;return"function"==typeof h?h(s):h.replace("%s",s)},r.to=function(e,t){return a(e,t,this,!0)},r.from=function(e,t){return a(e,t,this)};var i=function(e){return e.$u?n.utc():n()};r.toNow=function(e){return this.to(i(this),e)},r.fromNow=function(e){return this.from(i(this),e)}}},342:function(e){"use strict";e.exports=o},768:function(e){"use strict";e.exports=a},59:function(e){"use strict";e.exports=r},185:function(e){"use strict";e.exports=t},155:function(e){"use strict";e.exports=n},953:function(t){"use strict";t.exports=e}},c={};function l(e){var t=c[e];if(void 0!==t)return t.exports;var n=c[e]={exports:{}};return i[e].call(n.exports,n,n.exports,l),n.exports}l.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return l.d(t,{a:t}),t},l.d=function(e,t){for(var n in t)l.o(t,n)&&!l.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},l.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),l.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},l.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.g.importScripts&&(s=l.g.location+"");var s,u=l.g.document;if(!s&&u&&(u.currentScript&&"SCRIPT"===u.currentScript.tagName.toUpperCase()&&(s=u.currentScript.src),!s)){var f=u.getElementsByTagName("script");if(f.length)for(var p=f.length-1;p>-1&&(!s||!/^http(s?):/.test(s));)s=f[p--].src}if(!s)throw Error("Automatic publicPath is not supported in this browser");l.p=s.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/");var d={};return!function(){"use strict";var e="",t="u">typeof document?document.currentScript:null;if(t&&t.src&&(e=t.src.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")),!e){var n=window.__webpack_public_path__||"";n&&("/"!==n.charAt(n.length-1)&&(n+="/"),e=n+"static/plugins/@nocobase/plugin-async-task-manager/dist/client/")}if(!e){var r=window.__nocobase_modern_client_prefix__||"v",o="/"+(r=String(r).replace(/^\/+|\/+$/g,"")||"v")+"/";if(!(e=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var a=window.location.pathname||"/",i=a.indexOf(o);e=i>=0?a.slice(0,i+1):"/"}e&&(e=e.replace(RegExp("/"+r+"/?$"),"/")),e||(e="/"),"/"!==e.charAt(e.length-1)&&(e+="/"),e+="static/plugins/@nocobase/plugin-async-task-manager/dist/client/"}l.p=e}(),!function(){"use strict";l.r(d),l.d(d,{PluginAsyncTaskManagerClient:function(){return I},default:function(){return L}});var e,t=l(768),n=l(342),r=l(155),o=l.n(r),a=l(59),i=l(953),c=l(185),s=l.n(c);l(912);var u=l(264),f=l.n(u),p=JSON.parse('{"UU":"@nocobase/plugin-async-task-manager"}');function y(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var m="@nocobase/plugin-async-task-manager",b=(y(e={},null,{value:null,label:"{{t('Waiting', { ns: '".concat(m,"' })}}"),color:"default",icon:"ClockCircleOutlined"}),y(e,0,{value:0,label:"{{t('Processing', { ns: '".concat(m,"' })}}"),color:"processing",icon:"LoadingOutlined"}),y(e,1,{value:1,label:"{{t('Completed', { ns: '".concat(m,"' })}}"),color:"success",icon:"CheckCircleOutlined"}),y(e,-1,{value:-1,label:"{{t('Failed', { ns: '".concat(m,"' })}}"),color:"error",icon:"CloseCircleOutlined"}),y(e,-2,{value:-2,label:"{{t('Cancelled', { ns: '".concat(m,"' })}}"),color:"warning",icon:"StopOutlined"}),e);function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function h(e,t,n,r,o,a,i){try{var c=e[a](i),l=c.value}catch(e){n(e);return}c.done?t(l):Promise.resolve(l).then(r,o)}function g(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function i(e){h(a,r,o,i,c,"next",e)}function c(e){h(a,r,o,i,c,"throw",e)}i(void 0)})}}function w(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var a=[],i=!0,c=!1;try{for(o=o.call(e);!(i=(n=o.next()).done)&&(a.push(n.value),!t||a.length!==t);i=!0);}catch(e){c=!0,r=e}finally{try{i||null==o.return||o.return()}finally{if(c)throw r}}return a}}(e,t)||k(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function k(e,t){if(e){if("string"==typeof e)return v(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return v(e,t)}}function _(e,t){var n,r,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),c=Object.defineProperty;return c(i,"next",{value:l(0)}),c(i,"throw",{value:l(1)}),c(i,"return",{value:l(2)}),"function"==typeof Symbol&&c(i,Symbol.iterator,{value:function(){return this}}),i;function l(c){return function(l){var s=[c,l];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}}}var O=(0,n.createStyles)(function(e){return{button:{color:e.token.colorTextHeaderMenu+" !important"}}});s().extend(f());var E=function(e){var t=e.message;return o().createElement("div",{style:{maxHeight:"60vh",overflow:"auto",padding:"8px 12px",borderRadius:6,background:"#f5f5f5",whiteSpace:"pre-wrap",wordBreak:"break-word"}},o().createElement(a.Typography.Text,null,t))},x=function(e){var t,r=e.popoverVisible,c=e.setPopoverVisible,l=e.tasks,u=e.refresh,f=e.loading;e.hasProcessingTasks;var d=(0,n.useAPIClient)(),y=(t=(0,n.useApp)(),function(e,n){return t.i18n.t(e,function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({ns:[p.UU,"client"]},n))}),m=(0,i.useTranslation)().t,v=O().styles,h=(0,n.usePlugin)("async-task-manager"),w=(0,n.useCompile)(),k=function(e){c(!1)},x=[{title:y("Created at"),dataIndex:"createdAt",key:"createdAt",width:180,render:function(e){return o().createElement(a.Tooltip,{title:s()(e).format("YYYY-MM-DD HH:mm:ss")},s()(e).fromNow())}},{title:y("Task"),dataIndex:"title",key:"title"},{title:y("Status"),dataIndex:"status",key:"status",width:160,render:function(e,t){var r=b[e]||{},i=r.color,c=r.label;return o().createElement("div",{style:{display:"flex",alignItems:"center",gap:8}},o().createElement("div",{style:{flex:1}},function(){var n,r,i={width:100,margin:0};switch(e){case null:case -2:return o().createElement(a.Alert,{showIcon:!1,message:w(c),banner:!0});case 0:return o().createElement(a.Progress,{type:"line",size:"small",strokeWidth:4,percent:Number(((null!=(n=t.progressCurrent)?n:0)/(null!=(r=t.progressTotal)?r:1)*100).toFixed(2)),status:"active",style:i,format:function(e){return"".concat(e.toFixed(1),"%")}});case 1:return o().createElement(a.Progress,{type:"line",size:"small",strokeWidth:4,percent:100,status:"success",style:i,format:function(){return""}});case -1:return o().createElement(a.Progress,{type:"line",size:"small",strokeWidth:4,percent:100,status:"exception",style:i,format:function(){return""}});default:return null}}()),o().createElement(a.Tag,{color:i,icon:(null==r?void 0:r.icon)?o().createElement(n.Icon,{type:r.icon}):null,style:{margin:0,padding:"0 4px",height:22,width:22}}))}},{title:y("Actions"),dataIndex:"result",key:"actions",width:180,render:function(e,t){var r,i=[],l=null!=(r=h.taskOrigins.get(t.origin))?r:{},s=l.Result,f=l.ResultButton,p=s||function(){return null};return t.cancelable&&(0===t.status||null===t.status)&&i.push(o().createElement(a.Popconfirm,{key:"cancel",title:y("Confirm cancel"),description:y("Confirm to cancel this task?"),onConfirm:function(){return g(function(){return _(this,function(e){switch(e.label){case 0:return[4,d.resource("asyncTasks").stop({filterByTk:t.id})];case 1:return e.sent(),u(),[2]}})})()},okText:y("Confirm"),cancelText:y("Cancel"),disabled:!1},o().createElement(a.Button,{type:"link",size:"small",icon:o().createElement(n.Icon,{type:"StopOutlined"}),disabled:!1},y("Stop")))),1===t.status&&e&&(f?i.push(o().createElement(f,{key:"result-button",task:t})):i.push(o().createElement(a.Button,{key:"view",type:"link",size:"small",icon:o().createElement(n.Icon,{type:"EyeOutlined"}),onClick:function(){k(t),a.Modal.info({title:y("Task result"),content:s?o().createElement(p,{payload:e,task:t}):o().createElement("div",null,y("No renderer available for this task type, payload: ".concat(t.result)))})}},y("View result")))),-1===t.status&&e&&i.push(o().createElement(a.Button,{key:"error",type:"link",size:"small",icon:o().createElement(n.Icon,{type:"ExclamationCircleOutlined"}),onClick:function(){c(!1);var n,r,i,l=(null!=(i=h.taskOrigins.get(t.origin))?i:{}).namespace;a.Modal.info({title:y("Error Details"),content:o().createElement(E,{message:m(e.message,(n=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({},e.params),r=r={ns:void 0===l?"client":l},Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(r)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(r)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(r,e))}),n))}),closable:!0,width:640})}},y("Error details"))),o().createElement(a.Space,{size:"middle"},i)}}];l.filter(function(e){return[1,-1].includes(e.status)}).length;var j=o().createElement("div",{style:{maxHeight:"70vh",overflow:"auto",width:l.length>0?800:200}},l.length>0?o().createElement(a.Table,{loading:f,columns:x,dataSource:l,size:"small",pagination:!1,rowKey:"taskId"}):o().createElement("div",{style:{padding:"24px 0",display:"flex",justifyContent:"center"}},o().createElement(a.Empty,{description:y("No tasks"),image:a.Empty.PRESENTED_IMAGE_SIMPLE})));return o().createElement(o().Fragment,null,o().createElement(a.Popover,{content:j,trigger:"click",placement:"bottom",open:r,onOpenChange:c},o().createElement(a.Button,{className:["sync-task-button",v.button].join(" "),onClick:function(){c(!r),r||u()},icon:o().createElement(n.Icon,{type:"SyncOutlined",spin:l.some(function(e){return 0===e.status})})})))},j=function(){var e=(0,n.useApp)(),t=(0,n.useRequest)({resource:"asyncTasks",action:"list",params:{sort:"-createdAt"}}),a=t.data,i=t.refresh;t.loading;var c=w((0,r.useState)((null==a?void 0:a.data)||[]),2),l=c[0],s=c[1],u=w((0,r.useState)(!1),2),f=u[0],p=u[1];(0,r.useEffect)(function(){s((null==a?void 0:a.data)||[])},[a]);var d=(0,r.useCallback)(function(){return g(function(){return _(this,function(e){return p(!0),i(),[2]})})()},[i]),y=(0,r.useCallback)(function(e){var t=e.detail;s(function(e){var n=e.findIndex(function(e){return e.id===t.id});return -1===n?e.unshift(t):e.splice(n,1,t),function(e){if(Array.isArray(e))return v(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||k(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.")}()})},[]),m=(0,r.useCallback)(function(){i()},[i]),b=(0,r.useCallback)(function(){i()},[i]);return(0,r.useEffect)(function(){return e.eventBus.addEventListener("ws:message:async-tasks:created",d),e.eventBus.addEventListener("ws:message:async-tasks:progress",y),e.eventBus.addEventListener("ws:message:async-tasks:status",m),e.eventBus.addEventListener("ws:message:async-tasks:deleted",b),function(){e.eventBus.removeEventListener("ws:message:async-tasks:created",d),e.eventBus.removeEventListener("ws:message:async-tasks:progress",y),e.eventBus.removeEventListener("ws:message:async-tasks:status",m),e.eventBus.removeEventListener("ws:message:async-tasks:deleted",b)}},[e,b,d,y,m]),(null==l?void 0:l.length)>0&&o().createElement(x,{tasks:l,refresh:i,popoverVisible:f,setPopoverVisible:p})},S=function(e){return o().createElement(n.PinnedPluginListProvider,{items:{asyncTasks:{order:300,component:"AsyncTasks",pin:!0,snippet:"*"}}},o().createElement(n.SchemaComponentOptions,{components:{AsyncTasks:j}},e.children))};function P(e,t,n,r,o,a,i){try{var c=e[a](i),l=c.value}catch(e){n(e);return}c.done?t(l):Promise.resolve(l).then(r,o)}function T(e,t,n){return(T=A()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&M(o,n.prototype),o}).apply(null,arguments)}function Y(e){return(Y=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function M(e,t){return(M=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function C(e){var t="function"==typeof Map?new Map:void 0;return(C=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,n)}function n(){return T(e,arguments,Y(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),M(n,e)})(e)}function A(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(A=function(){return!!e})()}var I=function(e){var n;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function r(){var e,n,o,a,i,c;if(!(this instanceof r))throw TypeError("Cannot call a class as a function");return n=r,o=arguments,n=Y(n),a=e=function(e,t){var n;if(t&&("object"==((n=t)&&"u">typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,A()?Reflect.construct(n,o||[],Y(this).constructor):n.apply(this,o)),i="taskOrigins",c=new t.Registry,i in a?Object.defineProperty(a,i,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[i]=c,e}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&M(r,e),n=[{key:"load",value:function(){var e;return(e=function(){return function(e,t){var n,r,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),c=Object.defineProperty;return c(i,"next",{value:l(0)}),c(i,"throw",{value:l(1)}),c(i,"return",{value:l(2)}),"function"==typeof Symbol&&c(i,Symbol.iterator,{value:function(){return this}}),i;function l(c){return function(l){var s=[c,l];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}}}(this,function(e){return this.app.use(S),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function i(e){P(a,r,o,i,c,"next",e)}function c(e){P(a,r,o,i,c,"throw",e)}i(void 0)})}).call(this)}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(r.prototype,n),r}(C(n.Plugin)),L=I}(),d}()});
@@ -0,0 +1,10 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ (self.webpackChunk_nocobase_plugin_async_task_manager_client_v2=self.webpackChunk_nocobase_plugin_async_task_manager_client_v2||[]).push([["338"],{264:function(e){e.exports=function(e,t,n){e=e||{};var r=t.prototype,o={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function a(e,t,n,o){return r.fromToBase(e,t,n,o)}n.en.relativeTime=o,r.fromToBase=function(t,r,a,l,i){for(var s,c,u,f=a.$locale().relativeTime||o,d=e.thresholds||[{l:"s",r:44,d:"second"},{l:"m",r:89},{l:"mm",r:44,d:"minute"},{l:"h",r:89},{l:"hh",r:21,d:"hour"},{l:"d",r:35},{l:"dd",r:25,d:"day"},{l:"M",r:45},{l:"MM",r:10,d:"month"},{l:"y",r:17},{l:"yy",d:"year"}],p=d.length,y=0;y<p;y+=1){var m=d[y];m.d&&(s=l?n(t).diff(a,m.d,!0):a.diff(t,m.d,!0));var b=(e.rounding||Math.round)(Math.abs(s));if(u=s>0,b<=m.r||!m.r){b<=1&&y>0&&(m=d[y-1]);var h=f[m.l];i&&(b=i(""+b)),c="string"==typeof h?h.replace("%d",b):h(b,r,m.l,u);break}}if(r)return c;var v=u?f.future:f.past;return"function"==typeof v?v(c):v.replace("%s",c)},r.to=function(e,t){return a(e,t,this,!0)},r.from=function(e,t){return a(e,t,this)};var l=function(e){return e.$u?n.utc():n()};r.toNow=function(e){return this.to(l(this),e)},r.fromNow=function(e){return this.from(l(this),e)}}},33:function(e,t,n){"use strict";n.r(t),n.d(t,{AsyncTasksTopbarActionModel:function(){return _},default:function(){return I}});var r,o=n(375),a=n(485),l=n(694),i=n(625),s=n(59),c=n(185),u=n.n(c),f=n(264),d=n.n(f),p=n(155),y=n.n(p);function m(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var b="@nocobase/plugin-async-task-manager",h=(m(r={},null,{value:null,label:"{{t('Waiting', { ns: '".concat(b,"' })}}"),color:"default",icon:"ClockCircleOutlined"}),m(r,0,{value:0,label:"{{t('Processing', { ns: '".concat(b,"' })}}"),color:"processing",icon:"LoadingOutlined"}),m(r,1,{value:1,label:"{{t('Completed', { ns: '".concat(b,"' })}}"),color:"success",icon:"CheckCircleOutlined"}),m(r,-1,{value:-1,label:"{{t('Failed', { ns: '".concat(b,"' })}}"),color:"error",icon:"CloseCircleOutlined"}),m(r,-2,{value:-2,label:"{{t('Cancelled', { ns: '".concat(b,"' })}}"),color:"warning",icon:"StopOutlined"}),r),v="@nocobase/plugin-async-task-manager";function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function k(e,t,n,r,o,a,l){try{var i=e[a](l),s=i.value}catch(e){n(e);return}i.done?t(s):Promise.resolve(s).then(r,o)}function w(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function l(e){k(a,r,o,l,i,"next",e)}function i(e){k(a,r,o,l,i,"throw",e)}l(void 0)})}}function E(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function O(e){return(O=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function S(e,t){return(S=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function j(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var a=[],l=!0,i=!1;try{for(o=o.call(e);!(l=(n=o.next()).done)&&(a.push(n.value),!t||a.length!==t);l=!0);}catch(e){i=!0,r=e}finally{try{l||null==o.return||o.return()}finally{if(i)throw r}}return a}}(e,t)||C(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function P(e){return e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}function C(e,t){if(e){if("string"==typeof e)return g(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return g(e,t)}}function T(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(T=function(){return!!e})()}function x(e,t){var n,r,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},l=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(l,"next",{value:s(0)}),i(l,"throw",{value:s(1)}),i(l,"return",{value:s(2)}),"function"==typeof Symbol&&i(l,Symbol.iterator,{value:function(){return this}}),l;function s(i){return function(s){var c=[i,s];if(n)throw TypeError("Generator is already executing.");for(;l&&(l=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&c[0]?r.return:c[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;switch(r=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++,r=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],r=0}finally{n=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}function M(e){var t=s.theme.useToken().token;return y().createElement("div",{style:{maxHeight:"60vh",overflow:"auto",padding:"".concat(t.paddingXS,"px ").concat(t.paddingSM,"px"),borderRadius:t.borderRadius,background:t.colorFillAlter,whiteSpace:"pre-wrap",wordBreak:"break-word"}},y().createElement(s.Typography.Text,null,e.message))}u().extend(d());var A=y().memo(function(e){var t,n,r=e.popoverVisible,i=e.setPopoverVisible,c=e.tasks,f=e.refresh,d=e.loading,m=(0,a.useApp)(),b=(t=(0,l.useFlowEngine)(),function(e,n){return t.context.t(e,function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({ns:[v,"client"],nsMode:"fallback"},n))}),g=s.theme.useToken().token,k=null!=(n=m.pm.get("async-task-manager"))?n:m.pm.get("@nocobase/plugin-async-task-manager"),O=(0,p.useMemo)(function(){return m.apiClient.resource("asyncTasks")},[m.apiClient]),S=(0,p.useMemo)(function(){return[{title:b("Created at"),dataIndex:"createdAt",key:"createdAt",width:5*g.controlHeight,render:function(e){return e?y().createElement(s.Tooltip,{title:u()(e).format("YYYY-MM-DD HH:mm:ss")},u()(e).fromNow()):"-"}},{title:b("Task"),dataIndex:"title",key:"title",ellipsis:!0},{title:b("Status"),dataIndex:"status",key:"status",width:5*g.controlHeight,render:function(e,t){var n,r=null!=(n=h[String(null!=e?e:null)])?n:h[String(null)];return y().createElement(s.Space,{align:"center",size:g.marginXS},y().createElement("span",null,function(){var n,o,a={width:3*g.controlHeight,margin:0};switch(e){case null:case -2:return y().createElement(s.Alert,{showIcon:!1,message:b(r.label),banner:!0});case 0:return y().createElement(s.Progress,{type:"line",size:"small",strokeWidth:g.lineWidthBold,percent:Number(((null!=(n=t.progressCurrent)?n:0)/(null!=(o=t.progressTotal)?o:1)*100).toFixed(2)),status:"active",style:a,format:function(e){return"".concat((null!=e?e:0).toFixed(1),"%")}});case 1:return y().createElement(s.Progress,{type:"line",size:"small",strokeWidth:g.lineWidthBold,percent:100,status:"success",style:a,format:function(){return""}});case -1:return y().createElement(s.Progress,{type:"line",size:"small",strokeWidth:g.lineWidthBold,percent:100,status:"exception",style:a,format:function(){return""}});default:return null}}()),y().createElement(s.Tag,{color:r.color,icon:r.icon?y().createElement(a.Icon,{type:r.icon}):null,style:{margin:0,paddingInline:g.paddingXXS,height:g.controlHeightSM,width:g.controlHeightSM}}))}},{title:b("Actions"),dataIndex:"result",key:"actions",width:6*g.controlHeight,render:function(e,t){var n,r=[],a=function(e,t){if(t)return null==e?void 0:e.taskOrigins.get(t)}(k,t.origin),l=null==a?void 0:a.Result,c=null==a?void 0:a.ResultButton;return t.cancelable&&(0===t.status||null===t.status)&&r.push(y().createElement(s.Popconfirm,{key:"cancel",title:b("Confirm cancel"),description:b("Confirm to cancel this task?"),onConfirm:function(){return w(function(){return x(this,function(e){switch(e.label){case 0:return[4,O.stop({filterByTk:t.id})];case 1:return e.sent(),f(),[2]}})})()},okText:b("Confirm"),cancelText:b("Cancel")},y().createElement(s.Button,{type:"link",size:"small",icon:y().createElement(o.StopOutlined,null)},b("Stop")))),1===t.status&&e&&(c?r.push(y().createElement(c,{key:"result-button",task:t})):r.push(y().createElement(s.Button,{key:"view",type:"link",size:"small",icon:y().createElement(o.EyeOutlined,null),onClick:function(){i(!1),s.Modal.info({title:b("Task result"),content:l?y().createElement(l,{payload:e,task:t}):y().createElement("div",null,b("No renderer available for this task type, payload: {{payload}}",{payload:String(e)}))})}},b("View result")))),-1===t.status&&(n=e)&&(void 0===n?"undefined":P(n))==="object"&&r.push(y().createElement(s.Button,{key:"error",type:"link",size:"small",icon:y().createElement(o.ExclamationCircleOutlined,null),onClick:function(){i(!1);var t,n,r,o,l=null!=(r=null==a?void 0:a.namespace)?r:"client";s.Modal.info({title:b("Error Details"),content:y().createElement(M,{message:b(null!=(o=e.message)?o:"",(t=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){E(e,t,n[t])})}return e}({},e.params),n=n={ns:l},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}),t))}),closable:!0,width:g.screenMD})}},b("Error details"))),y().createElement(s.Space,{size:g.marginSM},r)}}]},[k,f,i,b,O,g]),j=y().createElement("div",{style:{maxHeight:"70vh",overflow:"auto",width:c.length>0?g.screenLG:6*g.controlHeight}},c.length>0?y().createElement(s.Table,{loading:d,columns:S,dataSource:c,size:"small",pagination:!1,rowKey:"id"}):y().createElement("div",{style:{paddingBlock:g.paddingLG,display:"flex",justifyContent:"center"}},y().createElement(s.Empty,{description:b("No tasks"),image:s.Empty.PRESENTED_IMAGE_SIMPLE})));return y().createElement(s.Popover,{content:j,trigger:"click",placement:"bottom",open:r,onOpenChange:i},y().createElement(s.Button,{type:"text",onClick:function(){i(!r),r||f()},icon:y().createElement(o.SyncOutlined,{spin:c.some(function(e){return 0===e.status})}),"data-testid":"async-tasks-button"}))});A.displayName="AsyncTasksButton";var B=(0,l.observer)(function(){var e=(0,a.useApp)(),t=(0,a.useMobileLayout)().isMobileLayout,n=(0,i.useRequest)(function(){return w(function(){var t,n;return x(this,function(r){switch(r.label){case 0:return[4,e.apiClient.resource("asyncTasks").list({sort:"-createdAt"})];case 1:return[2,null!=(t=null==(n=r.sent())?void 0:n.data)?t:{data:[]}]}})})()}),r=n.data,o=n.refresh,l=n.loading,s=j((0,p.useState)([]),2),c=s[0],u=s[1],f=j((0,p.useState)(!1),2),d=f[0],m=f[1];(0,p.useEffect)(function(){u(Array.isArray(null==r?void 0:r.data)?r.data:[])},[r]);var b=(0,p.useCallback)(function(){m(!0),o()},[o]),h=(0,p.useCallback)(function(e){var t=e.detail;(null==t?void 0:t.id)&&u(function(e){var n=function(e){if(Array.isArray(e))return g(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||C(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.")}(),r=n.findIndex(function(e){return e.id===t.id});return -1===r?n.unshift(t):n.splice(r,1,t),n})},[]),v=(0,p.useCallback)(function(){o()},[o]),k=(0,p.useCallback)(function(){o()},[o]);return((0,p.useEffect)(function(){return e.eventBus.addEventListener("ws:message:async-tasks:created",b),e.eventBus.addEventListener("ws:message:async-tasks:progress",h),e.eventBus.addEventListener("ws:message:async-tasks:status",v),e.eventBus.addEventListener("ws:message:async-tasks:deleted",k),function(){e.eventBus.removeEventListener("ws:message:async-tasks:created",b),e.eventBus.removeEventListener("ws:message:async-tasks:progress",h),e.eventBus.removeEventListener("ws:message:async-tasks:status",v),e.eventBus.removeEventListener("ws:message:async-tasks:deleted",k)}},[e.eventBus,b,k,h,v]),t||0===c.length)?null:y().createElement(A,{tasks:c,refresh:o,loading:l,popoverVisible:d,setPopoverVisible:m})},{displayName:"AsyncTasksTopbarAction"}),_=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function n(){var e,t,r;if(!(this instanceof n))throw TypeError("Cannot call a class as a function");return t=n,r=arguments,t=O(t),E(e=function(e,t){if(t&&("object"===P(t)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,T()?Reflect.construct(t,r||[],O(this).constructor):t.apply(this,r)),"sort",300),E(e,"actionId","async-tasks"),E(e,"testId","async-tasks-button"),E(e,"tooltip",(0,l.tExpr)("Async tasks",{ns:[v,"client"],nsMode:"fallback"})),e}return n.prototype=Object.create(e&&e.prototype,{constructor:{value:n,writable:!0,configurable:!0}}),e&&S(n,e),t=[{key:"render",value:function(){return y().createElement(B,null)}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(n.prototype,t),n}(a.TopbarActionModel),I=_}}]);
@@ -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("ahooks"),require("@nocobase/client-v2"),require("dayjs"),require("react"),require("antd"),require("@ant-design/icons"),require("@nocobase/flow-engine"),require("@nocobase/utils/client")):"function"==typeof define&&define.amd?define("@nocobase/plugin-async-task-manager/client-v2",["ahooks","@nocobase/client-v2","dayjs","react","antd","@ant-design/icons","@nocobase/flow-engine","@nocobase/utils/client"],t):"object"==typeof exports?exports["@nocobase/plugin-async-task-manager/client-v2"]=t(require("ahooks"),require("@nocobase/client-v2"),require("dayjs"),require("react"),require("antd"),require("@ant-design/icons"),require("@nocobase/flow-engine"),require("@nocobase/utils/client")):e["@nocobase/plugin-async-task-manager/client-v2"]=t(e.ahooks,e["@nocobase/client-v2"],e.dayjs,e.react,e.antd,e["@ant-design/icons"],e["@nocobase/flow-engine"],e["@nocobase/utils/client"])}(self,function(e,t,n,r,o,i,a,c){return function(){"use strict";var u,l,s,f={375:function(e){e.exports=i},485:function(e){e.exports=t},694:function(e){e.exports=a},768:function(e){e.exports=c},625:function(t){t.exports=e},59:function(e){e.exports=o},185:function(e){e.exports=n},155:function(e){e.exports=r}},p={};function b(e){var t=p[e];if(void 0!==t)return t.exports;var n=p[e]={exports:{}};return f[e].call(n.exports,n,n.exports,b),n.exports}b.m=f,b.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return b.d(t,{a:t}),t},b.d=function(e,t){for(var n in t)b.o(t,n)&&!b.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},b.f={},b.e=function(e){return Promise.all(Object.keys(b.f).reduce(function(t,n){return b.f[n](e,t),t},[]))},b.u=function(e){return""+e+".272bcdd5bb509394.js"},b.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),b.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},d={},b.l=function(e,t,n,r){if(d[e])return void d[e].push(t);if(void 0!==n)for(var o,i,a=document.getElementsByTagName("script"),c=0;c<a.length;c++){var u=a[c];if(u.getAttribute("src")==e||u.getAttribute("data-rspack")=="@nocobase/plugin-async-task-manager/client-v2:"+n){o=u;break}}o||(i=!0,(o=document.createElement("script")).timeout=120,b.nc&&o.setAttribute("nonce",b.nc),o.setAttribute("data-rspack","@nocobase/plugin-async-task-manager/client-v2:"+n),o.src=e),d[e]=[t];var l=function(t,n){o.onerror=o.onload=null,clearTimeout(s);var r=d[e];if(delete d[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach(function(e){return e(n)}),t)return t(n)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),i&&document.head.appendChild(o)},b.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},b.g.importScripts&&(y=b.g.location+"");var d,y,v=b.g.document;if(!y&&v&&(v.currentScript&&"SCRIPT"===v.currentScript.tagName.toUpperCase()&&(y=v.currentScript.src),!y)){var g=v.getElementsByTagName("script");if(g.length)for(var h=g.length-1;h>-1&&(!y||!/^http(s?):/.test(y));)y=g[h--].src}if(!y)throw Error("Automatic publicPath is not supported in this browser");b.p=y.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),u={889:0},b.f.j=function(e,t){var n=b.o(u,e)?u[e]:void 0;if(0!==n)if(n)t.push(n[2]);else{var r=new Promise(function(t,r){n=u[e]=[t,r]});t.push(n[2]=r);var o=b.p+b.u(e),i=Error();b.l(o,function(t){if(b.o(u,e)&&(0!==(n=u[e])&&(u[e]=void 0),n)){var r=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;i.message="Loading chunk "+e+" failed.\n("+r+": "+o+")",i.name="ChunkLoadError",i.type=r,i.request=o,n[1](i)}},"chunk-"+e,e)}},l=function(e,t){var n,r,o=t[0],i=t[1],a=t[2],c=0;if(o.some(function(e){return 0!==u[e]})){for(n in i)b.o(i,n)&&(b.m[n]=i[n]);a&&a(b)}for(e&&e(t);c<o.length;c++)r=o[c],b.o(u,r)&&u[r]&&u[r][0](),u[r]=0},(s=self.webpackChunk_nocobase_plugin_async_task_manager_client_v2=self.webpackChunk_nocobase_plugin_async_task_manager_client_v2||[]).forEach(l.bind(null,0)),s.push=l.bind(null,s.push.bind(s));var m={};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 n=window.__webpack_public_path__||"";n&&("/"!==n.charAt(n.length-1)&&(n+="/"),e=n+"static/plugins/@nocobase/plugin-async-task-manager/dist/client-v2/")}if(!e){var r=window.__nocobase_modern_client_prefix__||"v",o="/"+(r=String(r).replace(/^\/+|\/+$/g,"")||"v")+"/";if(!(e=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var i=window.location.pathname||"/",a=i.indexOf(o);e=a>=0?i.slice(0,a+1):"/"}e&&(e=e.replace(RegExp("/"+r+"/?$"),"/")),e||(e="/"),"/"!==e.charAt(e.length-1)&&(e+="/"),e+="static/plugins/@nocobase/plugin-async-task-manager/dist/client-v2/"}b.p=e}(),!function(){b.r(m),b.d(m,{PluginAsyncTaskManagerClientV2:function(){return u},default:function(){return l}});var e=b(485),t=b(768);function n(e,t,n,r,o,i,a){try{var c=e[i](a),u=c.value}catch(e){n(e);return}c.done?t(u):Promise.resolve(u).then(r,o)}function r(e,t,n){return(r=c()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&i(o,n.prototype),o}).apply(null,arguments)}b(155);function o(e){return(o=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function i(e,t){return(i=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function a(e){var t="function"==typeof Map?new Map:void 0;return(a=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,n)}function n(){return r(e,arguments,o(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),i(n,e)})(e)}function c(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(c=function(){return!!e})()}var u=function(e){var r;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function a(){var e,n,r,i,u,l;if(!(this instanceof a))throw TypeError("Cannot call a class as a function");return n=a,r=arguments,n=o(n),i=e=function(e,t){var n;if(t&&("object"==((n=t)&&"u">typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,c()?Reflect.construct(n,r||[],o(this).constructor):n.apply(this,r)),u="taskOrigins",l=new t.Registry,u in i?Object.defineProperty(i,u,{value:l,enumerable:!0,configurable:!0,writable:!0}):i[u]=l,e}return a.prototype=Object.create(e&&e.prototype,{constructor:{value:a,writable:!0,configurable:!0}}),e&&i(a,e),r=[{key:"load",value:function(){var e;return(e=function(){return function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),c=Object.defineProperty;return c(a,"next",{value:u(0)}),c(a,"throw",{value:u(1)}),c(a,"return",{value:u(2)}),"function"==typeof Symbol&&c(a,Symbol.iterator,{value:function(){return this}}),a;function u(c){return function(u){var l=[c,u];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&l[0]?r.return:l[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,l[1])).done)return o;switch(r=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,r=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],r=0}finally{n=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(e){return this.flowEngine.registerModelLoaders({AsyncTasksTopbarActionModel:{extends:"TopbarActionModel",loader:function(){return b.e("338").then(b.bind(b,33))}}}),this.app.eventBus.dispatchEvent(new CustomEvent("plugin:async-task-manager:loaded",{detail:this})),[2]})},function(){var t=this,r=arguments;return new Promise(function(o,i){var a=e.apply(t,r);function c(e){n(a,o,i,c,u,"next",e)}function u(e){n(a,o,i,c,u,"throw",e)}c(void 0)})}).call(this)}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(a.prototype,r),a}(a(e.Plugin)),l=u}(),m}()});
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("ahooks"),require("@nocobase/client-v2"),require("dayjs"),require("react"),require("antd"),require("@ant-design/icons"),require("@nocobase/flow-engine"),require("@nocobase/utils/client")):"function"==typeof define&&define.amd?define("@nocobase/plugin-async-task-manager/client-v2",["ahooks","@nocobase/client-v2","dayjs","react","antd","@ant-design/icons","@nocobase/flow-engine","@nocobase/utils/client"],t):"object"==typeof exports?exports["@nocobase/plugin-async-task-manager/client-v2"]=t(require("ahooks"),require("@nocobase/client-v2"),require("dayjs"),require("react"),require("antd"),require("@ant-design/icons"),require("@nocobase/flow-engine"),require("@nocobase/utils/client")):e["@nocobase/plugin-async-task-manager/client-v2"]=t(e.ahooks,e["@nocobase/client-v2"],e.dayjs,e.react,e.antd,e["@ant-design/icons"],e["@nocobase/flow-engine"],e["@nocobase/utils/client"])}(self,function(e,t,n,r,o,i,a,c){return function(){"use strict";var u,l,s,f={375:function(e){e.exports=i},485:function(e){e.exports=t},694:function(e){e.exports=a},768:function(e){e.exports=c},625:function(t){t.exports=e},59:function(e){e.exports=o},185:function(e){e.exports=n},155:function(e){e.exports=r}},p={};function b(e){var t=p[e];if(void 0!==t)return t.exports;var n=p[e]={exports:{}};return f[e].call(n.exports,n,n.exports,b),n.exports}b.m=f,b.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return b.d(t,{a:t}),t},b.d=function(e,t){for(var n in t)b.o(t,n)&&!b.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},b.f={},b.e=function(e){return Promise.all(Object.keys(b.f).reduce(function(t,n){return b.f[n](e,t),t},[]))},b.u=function(e){return""+e+".ab2aa854f987284c.js"},b.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),b.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},d={},b.l=function(e,t,n,r){if(d[e])return void d[e].push(t);if(void 0!==n)for(var o,i,a=document.getElementsByTagName("script"),c=0;c<a.length;c++){var u=a[c];if(u.getAttribute("src")==e||u.getAttribute("data-rspack")=="@nocobase/plugin-async-task-manager/client-v2:"+n){o=u;break}}o||(i=!0,(o=document.createElement("script")).timeout=120,b.nc&&o.setAttribute("nonce",b.nc),o.setAttribute("data-rspack","@nocobase/plugin-async-task-manager/client-v2:"+n),o.src=e),d[e]=[t];var l=function(t,n){o.onerror=o.onload=null,clearTimeout(s);var r=d[e];if(delete d[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach(function(e){return e(n)}),t)return t(n)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),i&&document.head.appendChild(o)},b.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},b.g.importScripts&&(y=b.g.location+"");var d,y,v=b.g.document;if(!y&&v&&(v.currentScript&&"SCRIPT"===v.currentScript.tagName.toUpperCase()&&(y=v.currentScript.src),!y)){var g=v.getElementsByTagName("script");if(g.length)for(var h=g.length-1;h>-1&&(!y||!/^http(s?):/.test(y));)y=g[h--].src}if(!y)throw Error("Automatic publicPath is not supported in this browser");b.p=y.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),u={889:0},b.f.j=function(e,t){var n=b.o(u,e)?u[e]:void 0;if(0!==n)if(n)t.push(n[2]);else{var r=new Promise(function(t,r){n=u[e]=[t,r]});t.push(n[2]=r);var o=b.p+b.u(e),i=Error();b.l(o,function(t){if(b.o(u,e)&&(0!==(n=u[e])&&(u[e]=void 0),n)){var r=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;i.message="Loading chunk "+e+" failed.\n("+r+": "+o+")",i.name="ChunkLoadError",i.type=r,i.request=o,n[1](i)}},"chunk-"+e,e)}},l=function(e,t){var n,r,o=t[0],i=t[1],a=t[2],c=0;if(o.some(function(e){return 0!==u[e]})){for(n in i)b.o(i,n)&&(b.m[n]=i[n]);a&&a(b)}for(e&&e(t);c<o.length;c++)r=o[c],b.o(u,r)&&u[r]&&u[r][0](),u[r]=0},(s=self.webpackChunk_nocobase_plugin_async_task_manager_client_v2=self.webpackChunk_nocobase_plugin_async_task_manager_client_v2||[]).forEach(l.bind(null,0)),s.push=l.bind(null,s.push.bind(s));var m={};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 n=window.__webpack_public_path__||"";n&&("/"!==n.charAt(n.length-1)&&(n+="/"),e=n+"static/plugins/@nocobase/plugin-async-task-manager/dist/client-v2/")}if(!e){var r=window.__nocobase_modern_client_prefix__||"v",o="/"+(r=String(r).replace(/^\/+|\/+$/g,"")||"v")+"/";if(!(e=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var i=window.location.pathname||"/",a=i.indexOf(o);e=a>=0?i.slice(0,a+1):"/"}e&&(e=e.replace(RegExp("/"+r+"/?$"),"/")),e||(e="/"),"/"!==e.charAt(e.length-1)&&(e+="/"),e+="static/plugins/@nocobase/plugin-async-task-manager/dist/client-v2/"}b.p=e}(),!function(){b.r(m),b.d(m,{PluginAsyncTaskManagerClientV2:function(){return u},default:function(){return l}});var e=b(485),t=b(768);function n(e,t,n,r,o,i,a){try{var c=e[i](a),u=c.value}catch(e){n(e);return}c.done?t(u):Promise.resolve(u).then(r,o)}function r(e,t,n){return(r=c()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&i(o,n.prototype),o}).apply(null,arguments)}b(155);function o(e){return(o=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function i(e,t){return(i=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function a(e){var t="function"==typeof Map?new Map:void 0;return(a=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,n)}function n(){return r(e,arguments,o(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),i(n,e)})(e)}function c(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(c=function(){return!!e})()}var u=function(e){var r;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function a(){var e,n,r,i,u,l;if(!(this instanceof a))throw TypeError("Cannot call a class as a function");return n=a,r=arguments,n=o(n),i=e=function(e,t){var n;if(t&&("object"==((n=t)&&"u">typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,c()?Reflect.construct(n,r||[],o(this).constructor):n.apply(this,r)),u="taskOrigins",l=new t.Registry,u in i?Object.defineProperty(i,u,{value:l,enumerable:!0,configurable:!0,writable:!0}):i[u]=l,e}return a.prototype=Object.create(e&&e.prototype,{constructor:{value:a,writable:!0,configurable:!0}}),e&&i(a,e),r=[{key:"load",value:function(){var e;return(e=function(){return function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),c=Object.defineProperty;return c(a,"next",{value:u(0)}),c(a,"throw",{value:u(1)}),c(a,"return",{value:u(2)}),"function"==typeof Symbol&&c(a,Symbol.iterator,{value:function(){return this}}),a;function u(c){return function(u){var l=[c,u];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&l[0]?r.return:l[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,l[1])).done)return o;switch(r=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,r=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],r=0}finally{n=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(e){return this.flowEngine.registerModelLoaders({AsyncTasksTopbarActionModel:{extends:"TopbarActionModel",loader:function(){return b.e("338").then(b.bind(b,33))}}}),this.app.eventBus.dispatchEvent(new CustomEvent("plugin:async-task-manager:loaded",{detail:this})),[2]})},function(){var t=this,r=arguments;return new Promise(function(o,i){var a=e.apply(t,r);function c(e){n(a,o,i,c,u,"next",e)}function u(e){n(a,o,i,c,u,"throw",e)}c(void 0)})}).call(this)}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(a.prototype,r),a}(a(e.Plugin)),l=u}(),m}()});
@@ -8,19 +8,19 @@
8
8
  */
9
9
 
10
10
  module.exports = {
11
- "@nocobase/client": "2.1.0",
11
+ "@nocobase/client": "2.1.2",
12
12
  "react": "18.2.0",
13
- "@nocobase/utils": "2.1.0",
14
- "@nocobase/flow-engine": "2.1.0",
15
- "@nocobase/client-v2": "2.1.0",
13
+ "@nocobase/utils": "2.1.2",
14
+ "@nocobase/flow-engine": "2.1.2",
15
+ "@nocobase/client-v2": "2.1.2",
16
16
  "lodash": "4.18.1",
17
- "@nocobase/server": "2.1.0",
18
- "@nocobase/logger": "2.1.0",
19
- "@nocobase/database": "2.1.0",
17
+ "@nocobase/server": "2.1.2",
18
+ "@nocobase/logger": "2.1.2",
19
+ "@nocobase/database": "2.1.2",
20
20
  "antd": "5.24.2",
21
21
  "react-i18next": "11.18.6",
22
22
  "dayjs": "1.11.13",
23
23
  "@ant-design/icons": "5.6.1",
24
24
  "ahooks": "3.7.8",
25
- "@nocobase/actions": "2.1.0"
25
+ "@nocobase/actions": "2.1.2"
26
26
  };
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "description": "Manage and monitor asynchronous tasks such as data import/export. Support task progress tracking and notification.",
7
7
  "description.ru-RU": "Управление асинхронными задачами и мониторинг (например, импорт/экспорт данных). Поддержка отслеживания прогресса и уведомлений о задачах.",
8
8
  "description.zh-CN": "管理和监控数据导入导出等异步任务。支持任务进度跟踪和通知。",
9
- "version": "2.1.0",
9
+ "version": "2.1.2",
10
10
  "main": "dist/server/index.js",
11
11
  "peerDependencies": {
12
12
  "@nocobase/client": "2.x",
@@ -19,5 +19,5 @@
19
19
  "p-queue": "^6.6.2"
20
20
  },
21
21
  "license": "Apache-2.0",
22
- "gitHead": "9373212dd0f22cd985be1e23674d6b454944b9ee"
22
+ "gitHead": "e1b28561425c5c34ff3bc6ae1f81c66b72f02872"
23
23
  }
@@ -1,10 +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
- (self.webpackChunk_nocobase_plugin_async_task_manager_client_v2=self.webpackChunk_nocobase_plugin_async_task_manager_client_v2||[]).push([["338"],{264:function(e){e.exports=function(e,t,n){e=e||{};var r=t.prototype,o={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function a(e,t,n,o){return r.fromToBase(e,t,n,o)}n.en.relativeTime=o,r.fromToBase=function(t,r,a,l,i){for(var s,c,u,f=a.$locale().relativeTime||o,d=e.thresholds||[{l:"s",r:44,d:"second"},{l:"m",r:89},{l:"mm",r:44,d:"minute"},{l:"h",r:89},{l:"hh",r:21,d:"hour"},{l:"d",r:35},{l:"dd",r:25,d:"day"},{l:"M",r:45},{l:"MM",r:10,d:"month"},{l:"y",r:17},{l:"yy",d:"year"}],p=d.length,y=0;y<p;y+=1){var m=d[y];m.d&&(s=l?n(t).diff(a,m.d,!0):a.diff(t,m.d,!0));var b=(e.rounding||Math.round)(Math.abs(s));if(u=s>0,b<=m.r||!m.r){b<=1&&y>0&&(m=d[y-1]);var h=f[m.l];i&&(b=i(""+b)),c="string"==typeof h?h.replace("%d",b):h(b,r,m.l,u);break}}if(r)return c;var v=u?f.future:f.past;return"function"==typeof v?v(c):v.replace("%s",c)},r.to=function(e,t){return a(e,t,this,!0)},r.from=function(e,t){return a(e,t,this)};var l=function(e){return e.$u?n.utc():n()};r.toNow=function(e){return this.to(l(this),e)},r.fromNow=function(e){return this.from(l(this),e)}}},33:function(e,t,n){"use strict";n.r(t),n.d(t,{AsyncTasksTopbarActionModel:function(){return _},default:function(){return B}});var r,o=n(375),a=n(485),l=n(694),i=n(625),s=n(59),c=n(185),u=n.n(c),f=n(264),d=n.n(f),p=n(155),y=n.n(p);function m(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var b="@nocobase/plugin-async-task-manager",h=(m(r={},null,{value:null,label:"{{t('Waiting', { ns: '".concat(b,"' })}}"),color:"default",icon:"ClockCircleOutlined"}),m(r,0,{value:0,label:"{{t('Processing', { ns: '".concat(b,"' })}}"),color:"processing",icon:"LoadingOutlined"}),m(r,1,{value:1,label:"{{t('Completed', { ns: '".concat(b,"' })}}"),color:"success",icon:"CheckCircleOutlined"}),m(r,-1,{value:-1,label:"{{t('Failed', { ns: '".concat(b,"' })}}"),color:"error",icon:"CloseCircleOutlined"}),m(r,-2,{value:-2,label:"{{t('Cancelled', { ns: '".concat(b,"' })}}"),color:"warning",icon:"StopOutlined"}),r),v="@nocobase/plugin-async-task-manager";function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function k(e,t,n,r,o,a,l){try{var i=e[a](l),s=i.value}catch(e){n(e);return}i.done?t(s):Promise.resolve(s).then(r,o)}function E(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function l(e){k(a,r,o,l,i,"next",e)}function i(e){k(a,r,o,l,i,"throw",e)}l(void 0)})}}function w(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function O(e){return(O=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function S(e,t){return(S=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function j(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var a=[],l=!0,i=!1;try{for(o=o.call(e);!(l=(n=o.next()).done)&&(a.push(n.value),!t||a.length!==t);l=!0);}catch(e){i=!0,r=e}finally{try{l||null==o.return||o.return()}finally{if(i)throw r}}return a}}(e,t)||C(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function P(e){return e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}function C(e,t){if(e){if("string"==typeof e)return g(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return g(e,t)}}function T(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(T=function(){return!!e})()}function M(e,t){var n,r,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},l=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(l,"next",{value:s(0)}),i(l,"throw",{value:s(1)}),i(l,"return",{value:s(2)}),"function"==typeof Symbol&&i(l,Symbol.iterator,{value:function(){return this}}),l;function s(i){return function(s){var c=[i,s];if(n)throw TypeError("Generator is already executing.");for(;l&&(l=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&c[0]?r.return:c[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;switch(r=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++,r=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],r=0}finally{n=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}u().extend(d());var A=y().memo(function(e){var t,n,r=e.popoverVisible,i=e.setPopoverVisible,c=e.tasks,f=e.refresh,d=e.loading,m=(0,a.useApp)(),b=(t=(0,l.useFlowEngine)(),function(e,n){return t.context.t(e,function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({ns:[v,"client"],nsMode:"fallback"},n))}),g=s.theme.useToken().token,k=null!=(n=m.pm.get("async-task-manager"))?n:m.pm.get("@nocobase/plugin-async-task-manager"),O=(0,p.useMemo)(function(){return m.apiClient.resource("asyncTasks")},[m.apiClient]),S=(0,p.useMemo)(function(){return[{title:b("Created at"),dataIndex:"createdAt",key:"createdAt",width:5*g.controlHeight,render:function(e){return e?y().createElement(s.Tooltip,{title:u()(e).format("YYYY-MM-DD HH:mm:ss")},u()(e).fromNow()):"-"}},{title:b("Task"),dataIndex:"title",key:"title",ellipsis:!0},{title:b("Status"),dataIndex:"status",key:"status",width:5*g.controlHeight,render:function(e,t){var n,r=null!=(n=h[String(null!=e?e:null)])?n:h[String(null)];return y().createElement(s.Space,{align:"center",size:g.marginXS},y().createElement("span",null,function(){var n,o,a={width:3*g.controlHeight,margin:0};switch(e){case null:case -2:return y().createElement(s.Alert,{showIcon:!1,message:b(r.label),banner:!0});case 0:return y().createElement(s.Progress,{type:"line",size:"small",strokeWidth:g.lineWidthBold,percent:Number(((null!=(n=t.progressCurrent)?n:0)/(null!=(o=t.progressTotal)?o:1)*100).toFixed(2)),status:"active",style:a,format:function(e){return"".concat((null!=e?e:0).toFixed(1),"%")}});case 1:return y().createElement(s.Progress,{type:"line",size:"small",strokeWidth:g.lineWidthBold,percent:100,status:"success",style:a,format:function(){return""}});case -1:return y().createElement(s.Progress,{type:"line",size:"small",strokeWidth:g.lineWidthBold,percent:100,status:"exception",style:a,format:function(){return""}});default:return null}}()),y().createElement(s.Tag,{color:r.color,icon:r.icon?y().createElement(a.Icon,{type:r.icon}):null,style:{margin:0,paddingInline:g.paddingXXS,height:g.controlHeightSM,width:g.controlHeightSM}}))}},{title:b("Actions"),dataIndex:"result",key:"actions",width:6*g.controlHeight,render:function(e,t){var n,r=[],a=function(e,t){if(t)return null==e?void 0:e.taskOrigins.get(t)}(k,t.origin),l=null==a?void 0:a.Result,c=null==a?void 0:a.ResultButton;return t.cancelable&&(0===t.status||null===t.status)&&r.push(y().createElement(s.Popconfirm,{key:"cancel",title:b("Confirm cancel"),description:b("Confirm to cancel this task?"),onConfirm:function(){return E(function(){return M(this,function(e){switch(e.label){case 0:return[4,O.stop({filterByTk:t.id})];case 1:return e.sent(),f(),[2]}})})()},okText:b("Confirm"),cancelText:b("Cancel")},y().createElement(s.Button,{type:"link",size:"small",icon:y().createElement(o.StopOutlined,null)},b("Stop")))),1===t.status&&e&&(c?r.push(y().createElement(c,{key:"result-button",task:t})):r.push(y().createElement(s.Button,{key:"view",type:"link",size:"small",icon:y().createElement(o.EyeOutlined,null),onClick:function(){i(!1),s.Modal.info({title:b("Task result"),content:l?y().createElement(l,{payload:e,task:t}):y().createElement("div",null,b("No renderer available for this task type, payload: {{payload}}",{payload:String(e)}))})}},b("View result")))),-1===t.status&&(n=e)&&(void 0===n?"undefined":P(n))==="object"&&r.push(y().createElement(s.Button,{key:"error",type:"link",size:"small",icon:y().createElement(o.ExclamationCircleOutlined,null),onClick:function(){i(!1);var t,n,r,o,l=null!=(r=null==a?void 0:a.namespace)?r:"client";s.Modal.info({title:b("Error Details"),content:y().createElement(s.Typography.Text,null,b(null!=(o=e.message)?o:"",(t=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){w(e,t,n[t])})}return e}({},e.params),n=n={ns:l},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}),t))),closable:!0,width:g.screenSM})}},b("Error details"))),y().createElement(s.Space,{size:g.marginSM},r)}}]},[k,f,i,b,O,g]),j=y().createElement("div",{style:{maxHeight:"70vh",overflow:"auto",width:c.length>0?g.screenLG:6*g.controlHeight}},c.length>0?y().createElement(s.Table,{loading:d,columns:S,dataSource:c,size:"small",pagination:!1,rowKey:"id"}):y().createElement("div",{style:{paddingBlock:g.paddingLG,display:"flex",justifyContent:"center"}},y().createElement(s.Empty,{description:b("No tasks"),image:s.Empty.PRESENTED_IMAGE_SIMPLE})));return y().createElement(s.Popover,{content:j,trigger:"click",placement:"bottom",open:r,onOpenChange:i},y().createElement(s.Button,{type:"text",onClick:function(){i(!r),r||f()},icon:y().createElement(o.SyncOutlined,{spin:c.some(function(e){return 0===e.status})}),"data-testid":"async-tasks-button"}))});A.displayName="AsyncTasksButton";var x=(0,l.observer)(function(){var e=(0,a.useApp)(),t=(0,a.useMobileLayout)().isMobileLayout,n=(0,i.useRequest)(function(){return E(function(){var t,n;return M(this,function(r){switch(r.label){case 0:return[4,e.apiClient.resource("asyncTasks").list({sort:"-createdAt"})];case 1:return[2,null!=(t=null==(n=r.sent())?void 0:n.data)?t:{data:[]}]}})})()}),r=n.data,o=n.refresh,l=n.loading,s=j((0,p.useState)([]),2),c=s[0],u=s[1],f=j((0,p.useState)(!1),2),d=f[0],m=f[1];(0,p.useEffect)(function(){u(Array.isArray(null==r?void 0:r.data)?r.data:[])},[r]);var b=(0,p.useCallback)(function(){m(!0),o()},[o]),h=(0,p.useCallback)(function(e){var t=e.detail;(null==t?void 0:t.id)&&u(function(e){var n=function(e){if(Array.isArray(e))return g(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||C(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.")}(),r=n.findIndex(function(e){return e.id===t.id});return -1===r?n.unshift(t):n.splice(r,1,t),n})},[]),v=(0,p.useCallback)(function(){o()},[o]),k=(0,p.useCallback)(function(){o()},[o]);return((0,p.useEffect)(function(){return e.eventBus.addEventListener("ws:message:async-tasks:created",b),e.eventBus.addEventListener("ws:message:async-tasks:progress",h),e.eventBus.addEventListener("ws:message:async-tasks:status",v),e.eventBus.addEventListener("ws:message:async-tasks:deleted",k),function(){e.eventBus.removeEventListener("ws:message:async-tasks:created",b),e.eventBus.removeEventListener("ws:message:async-tasks:progress",h),e.eventBus.removeEventListener("ws:message:async-tasks:status",v),e.eventBus.removeEventListener("ws:message:async-tasks:deleted",k)}},[e.eventBus,b,k,h,v]),t||0===c.length)?null:y().createElement(A,{tasks:c,refresh:o,loading:l,popoverVisible:d,setPopoverVisible:m})},{displayName:"AsyncTasksTopbarAction"}),_=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function n(){var e,t,r;if(!(this instanceof n))throw TypeError("Cannot call a class as a function");return t=n,r=arguments,t=O(t),w(e=function(e,t){if(t&&("object"===P(t)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,T()?Reflect.construct(t,r||[],O(this).constructor):t.apply(this,r)),"sort",300),w(e,"actionId","async-tasks"),w(e,"testId","async-tasks-button"),w(e,"tooltip",(0,l.tExpr)("Async tasks",{ns:[v,"client"],nsMode:"fallback"})),e}return n.prototype=Object.create(e&&e.prototype,{constructor:{value:n,writable:!0,configurable:!0}}),e&&S(n,e),t=[{key:"render",value:function(){return y().createElement(x,null)}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(n.prototype,t),n}(a.TopbarActionModel),B=_}}]);