@nocobase/plugin-action-import
Version:
Import records using excel templates. You can configure which fields to import and templates will be generated automatically.
10 lines (9 loc) • 47.7 kB
JavaScript
/**
* This file is part of the NocoBase (R) project.
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
* Authors: NocoBase Team.
*
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
* For more information, please refer to: https://www.nocobase.com/agreement.
*/
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@formily/core"),require("react-dom"),require("react"),require("@formily/antd-v5"),require("@emotion/css"),require("@nocobase/flow-engine"),require("lodash"),require("file-saver"),require("@formily/shared"),require("@nocobase/client"),require("@formily/reactive"),require("@formily/react"),require("@nocobase/utils/client"),require("@ant-design/icons"),require("antd"),require("react-i18next")):"function"==typeof define&&define.amd?define("@nocobase/plugin-action-import",["@formily/core","react-dom","react","@formily/antd-v5","@emotion/css","@nocobase/flow-engine","lodash","file-saver","@formily/shared","@nocobase/client","@formily/reactive","@formily/react","@nocobase/utils/client","@ant-design/icons","antd","react-i18next"],t):"object"==typeof exports?exports["@nocobase/plugin-action-import"]=t(require("@formily/core"),require("react-dom"),require("react"),require("@formily/antd-v5"),require("@emotion/css"),require("@nocobase/flow-engine"),require("lodash"),require("file-saver"),require("@formily/shared"),require("@nocobase/client"),require("@formily/reactive"),require("@formily/react"),require("@nocobase/utils/client"),require("@ant-design/icons"),require("antd"),require("react-i18next")):e["@nocobase/plugin-action-import"]=t(e["@formily/core"],e["react-dom"],e.react,e["@formily/antd-v5"],e["@emotion/css"],e["@nocobase/flow-engine"],e.lodash,e["file-saver"],e["@formily/shared"],e["@nocobase/client"],e["@formily/reactive"],e["@formily/react"],e["@nocobase/utils/client"],e["@ant-design/icons"],e.antd,e["react-i18next"])}(self,function(e,t,n,r,o,i,a,l,c,u,s,p,f,m,d,y){return function(){"use strict";var b={482:function(e){e.exports=m},964:function(e){e.exports=o},632:function(e){e.exports=r},563:function(t){t.exports=e},505:function(e){e.exports=p},229:function(e){e.exports=s},875:function(e){e.exports=c},772:function(e){e.exports=u},667:function(e){e.exports=i},584:function(e){e.exports=f},721:function(e){e.exports=d},346:function(e){e.exports=l},467:function(e){e.exports=a},156:function(e){e.exports=n},111:function(e){e.exports=t},238:function(e){e.exports=y}},v={};function h(e){var t=v[e];if(void 0!==t)return t.exports;var n=v[e]={exports:{}};return b[e](n,n.exports,h),n.exports}h.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return h.d(t,{a:t}),t},h.d=function(e,t){for(var n in t)h.o(t,n)&&!h.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},h.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},h.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var g={};return!function(){h.r(g),h.d(g,{PluginActionImportClient:function(){return ez},ImportActionInitializer:function(){return x},useImportStartAction:function(){return Y},DownloadTips:function(){return O},buildImportFieldOptions:function(){return m},ImportContextProvider:function(){return eu},ImportWarning:function(){return S},initImportSettings:function(){return v},ImportDesigner:function(){return B},default:function(){return eN},useDownloadXlsxTemplateAction:function(){return Q},ImportPluginProvider:function(){return ec}});var e,t=h(875),n=h(772),r=h(156),o=h.n(r),i=h(238);function a(){return(0,i.useTranslation)(["action-import","client"],{nsMode:"fallback"})}var l=["createdAt","createdBy","updatedAt","updatedBy"],c=["hasOne","belongsTo","hasMany","belongsToMany","belongsToArray"],u=function(e){return(null==e?void 0:e.target)&&c.includes(e.type)},s=function(e){return!(null==e?void 0:e.interface)||l.includes(e.interface)},p=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return{name:e.name,title:t(e),schema:null==e?void 0:e.uiSchema,disabled:n}},f=function(e,t,n){var r,o,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;if(s(e))return null;if(!u(e))return p(e,t);var a=(n(e)||[]).map(function(e){return s(e)?null:u(e)?i>=1?p(e,t,!0):f(e,t,n,i+1):f(e,t,n)}).filter(Boolean);return a.length?(r=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}({},p(e,t)),o=o={children:a},Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(o)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(o)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(o,e))}),r):p(e,t,!0)},m=function(e,t,n){return(e||[]).map(function(e){return f(e,t,n,+!!u(e))}).filter(Boolean)},d=function(e){var t=(0,n.useCollectionManager_deprecated)().getCollectionFields,r=t(e),o=(0,n.useCompile)();return m(r,function(e){var t;return o(null==e||null==(t=e.uiSchema)?void 0:t.title)||e.name},function(e){return t(e.target)})},y=h(721),b=h(584),v=function(e){return{importColumns:null==e?void 0:e.filter(function(e){return!e.children&&!e.disabled}).map(function(e){return{dataIndex:[e.name]}}),explain:""}},x=function(){var e=(0,n.useSchemaInitializerItem)(),r=(0,n.useSchemaInitializer)().insert,i=d((0,n.useCollection_deprecated)().name),a={type:"void",title:'{{ t("Import") }}',"x-component":"ImportAction","x-action":"importXlsx","x-settings":"actionSettings:import","x-toolbar":"ActionSchemaToolbar"};return o().createElement(n.SchemaInitializerItem,{title:e.title,onClick:function(){b.lodash.set(a,"x-action-settings.importSettings",v(i));var n,o=(0,t.merge)(a||{},e.schema||{});null==e||null==(n=e.schemaInitialize)||n.call(e,o),r(o)}})},S=function(){var e=a().t;return o().createElement(y.Alert,{type:"warning",style:{marginBottom:"10px"},message:e("Import warnings",{limit:2e3})})},O=function(){var e=a().t;return o().createElement(y.Alert,{type:"info",style:{marginBottom:"10px",whiteSpace:"pre-line"},message:e("Download tips")})},I=h(632),w=h(505),j="action-import";function A(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 P(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function C(){var e=P(["\n width: 100%;\n & .ant-space-item:nth-child(2) {\n flex: 1;\n }\n "]);return C=function(){return e},e}function E(){var e=P(["\n border-color: var(--colorSettings);\n color: var(--colorSettings);\n &.ant-btn-dashed:hover {\n border-color: var(--colorSettings);\n color: var(--colorSettings);\n }\n "]);return E=function(){return e},e}var T=["application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/vnd.ms-excel","application/wps-office.xlsx"],F=function(){var e=(0,i.useTranslation)(j).t,t=d((0,n.useCollection_deprecated)().name),r=(0,n.useCompile)();return{importSettingsSchema:{type:"void","x-component":"Grid",properties:{explain:{type:"string",title:'{{ t("Import explain", {ns: "'.concat(j,'"}) }}'),"x-decorator":"FormItem","x-component":"Input.TextArea"},importColumns:{type:"array","x-component":"ArrayItems","x-decorator":"FormItem",items:{type:"object",properties:{space:{type:"void","x-component":"Space","x-component-props":{className:(0,n.css)(C())},properties:{sort:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.SortHandle"},dataIndex:{type:"array","x-decorator":"FormItem","x-component":n.Cascader,required:!0,"x-use-component-props":function(){return{options:r(t)}},"x-component-props":{fieldNames:{label:"title",value:"name",children:"children"},changeOnSelect:!1}},title:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:'{{ t("Custom column title") }}'}},description:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:'{{ t("Field description placeholder", {ns: "'.concat(j,'"}) }}')}},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},properties:{add:{type:"void",title:'{{ t("Add importable field", {ns: "'.concat(j,'"}) }}'),"x-component":"ArrayItems.Addition","x-component-props":{className:(0,n.css)(E())}}}}}},beforeUploadHandler:function(){return!1},uploadValidator:function(t,n){if(t.length>1)return{type:"error",message:e("Only one file is allowed to be uploaded")};var r,o=null!=(r=t[0])?r:{};return T.includes(o.type)?"":{type:"error",message:e("Please upload the file of Excel")}},validateUpload:function(e,t,n){var r,o,i,a=(function(e){if(Array.isArray(e))return e}(n)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(n,1)||function(e,t){if(e){if("string"==typeof e)return A(e,1);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 A(e,t)}}(n,1)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())[0];t.disabled=(null==a?void 0:a.length)===0,r=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}({},t.componentProps),o=o={disabled:(null==a?void 0:a.length)===0||(null==(i=e.errors)?void 0:i.length)>0},Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(o)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(o)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(o,e))}),t.componentProps=r}}};function k(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 D(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function M(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){D(e,t,n[t])})}return e}var B=function(){var e,t,a,l,c,u,s,p=(0,w.useField)(),f=(0,w.useFieldSchema)(),m=(0,i.useTranslation)().t,d=(0,n.useDesignable)().dn,y=(e=(0,r.useState)(),function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,2)||function(e,t){if(e){if("string"==typeof e)return k(e,2);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 k(e,t)}}(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.")}()),b=y[0],v=y[1],h=F().importSettingsSchema;return(0,r.useEffect)(function(){v(h)},[p.address,null==f||null==(t=f["x-action-settings"])?void 0:t.importSettings]),o().createElement(n.GeneralSchemaDesigner,{disableInitializer:!0},o().createElement(n.SchemaSettingsModalItem,{title:m("Edit button"),schema:{type:"object",title:m("Edit button"),properties:{title:{"x-decorator":"FormItem","x-component":"Input",title:m("Button title"),default:f.title,"x-component-props":{}},icon:{"x-decorator":"FormItem","x-component":"IconPicker",title:m("Button icon"),default:null==f||null==(a=f["x-component-props"])?void 0:a.icon,"x-component-props":{}},type:{"x-decorator":"FormItem","x-component":"Radio.Group",title:m("Button background color"),default:(null==f||null==(l=f["x-component-props"])?void 0:l.danger)?"danger":(null==f||null==(c=f["x-component-props"])?void 0:c.type)==="primary"?"primary":"default",enum:[{value:"default",label:'{{t("Default")}}'},{value:"primary",label:'{{t("Highlight")}}'},{value:"danger",label:'{{t("Danger red")}}'}]}}},onSubmit:function(e){var t,n=e.title,r=e.icon,o=e.type;f.title=n,p.title=n,p.componentProps.icon=r,p.componentProps.danger="danger"===o,p.componentProps.type=o,f["x-component-props"]=f["x-component-props"]||{},f["x-component-props"].icon=r,f["x-component-props"].danger="danger"===o,f["x-component-props"].type=o,d.emit("patch",{schema:(D(t={},"x-uid",f["x-uid"]),D(t,"title",n),D(t,"x-component-props",M({},f["x-component-props"])),t)}),d.refresh()}}),o().createElement(n.SchemaSettingsActionModalItem,{title:m("Importable fields"),schema:b,initialValues:M({},null!=(s=null==f||null==(u=f["x-action-settings"])?void 0:u.importSettings)?s:{}),components:{ArrayItems:I.ArrayItems},onSubmit:function(e){var t,n=e.importColumns,r=e.explain,o=null==n?void 0:n.filter(function(e){var t;return null==e||null==(t=e.dataIndex)?void 0:t.length}).map(function(e){return{dataIndex:e.dataIndex.map(function(e){var t;return null!=(t=e.name)?t:e}),title:e.title}});f["x-action-settings"].importSettings={importColumns:o,explain:r},d.emit("patch",{schema:(D(t={},"x-uid",f["x-uid"]),D(t,"x-action-settings",f["x-action-settings"]),t)}),d.refresh()}}),o().createElement(n.SchemaSettingsDivider,null),o().createElement(n.SchemaSettingsRemove,{removeParentsIfNoChildren:!0,breakRemoveOn:function(e){return"Space"===e["x-component"]||e["x-component"].endsWith("ActionBar")},confirm:{title:m("Delete action")}}))},q=h(111),R=(0,r.createContext)(null);R.displayName="ImportContext";var _=function(){return(0,r.useContext)(R)},U=h(482),z=h(346);function N(){var e,t,n=(e=["\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100%;\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return N=function(){return n},n}var V={IMPORTING:1,IMPORTED:2},X=function(e){var t=(0,i.useTranslation)(j).t,r=_(),a=r.importModalVisible,l=r.importStatus,c=r.importResult,u=r.setImportModalVisible,s=null!=c?c:{},p=s.data,f=s.meta,m=function(){u(!1)};return o().createElement(y.Modal,{title:t("Import Data"),width:"50%",styles:{body:{height:"calc(80vh - 200px)"}},open:a,footer:null,closable:l===V.IMPORTED,onCancel:m},o().createElement("div",{className:(0,n.css)(N())},l===V.IMPORTING&&o().createElement(y.Spin,{indicator:o().createElement(U.LoadingOutlined,{style:{fontSize:24},spin:!0}),tip:t("Excel data importing")}),l===V.IMPORTED&&o().createElement(y.Space,{direction:"vertical",align:"center"},o().createElement(U.ExclamationCircleFilled,{style:{fontSize:72,color:"#1890ff"}}),o().createElement("p",null,function(e){if(!e)return null;var n=e.data,r=e.meta;if(r)return t("{{successCount}} records have been successfully imported",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}({},null!=r?r:{}));var o=["".concat(t("Total records"),": ").concat(n.total||0),"".concat(t("Successfully imported"),": ").concat(n.success||0)];return n.skipped>0&&o.push("".concat(t("Skipped"),": ").concat(n.skipped)),n.updated>0&&o.push("".concat(t("Updated"),": ").concat(n.updated)),o.join(", ")}(c)),o().createElement(y.Space,null,(null==f?void 0:f.failureCount)>0&&o().createElement(y.Button,{onClick:function(){var e=new Blob([new Int8Array(null==p?void 0:p.data)],{type:"application/x-xls"});(0,z.saveAs)(e,"fail.xlsx")}},t("To download the failure data")),o().createElement(y.Button,{type:"primary",onClick:m},t("Done"))))))},G=h(467),L=h.n(G);function $(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function H(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){$(i,r,o,a,l,"next",e)}function l(e){$(i,r,o,a,l,"throw",e)}a(void 0)})}}function W(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;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}}}}var J=function(){for(var e=(0,n.useActionContext)().fieldSchema,t=(0,w.useFieldSchema)(),r=e||t;r&&"importXlsx"!==r["x-action"];)console.log("schema",r=r.parent);return{schema:r}},K=function(e){return e&&Array.isArray(e)?e:[]},Q=function(){var e=(0,n.useBlockRequestContext)().resource,t=(0,n.useCompile)(),r=(0,n.useCollectionManager_deprecated)(),o=r.getCollectionJoinField,i=r.getCollectionField,a=(0,n.useCollection_deprecated)(),l=a.name,c=a.title,u=J().schema;return{run:function(){return H(function(){var n,r,a,s,p,f,m;return W(this,function(d){switch(d.label){case 0:return s=(a=L().cloneDeep(null!=(r=null==u||null==(n=u["x-action-settings"])?void 0:n.importSettings)?r:{})).importColumns,p=a.explain,f=K(s).map(function(e){var n=i("".concat(l,".").concat(e.dataIndex[0]));if(n){if(e.defaultTitle=t(null==n||null==(r=n.uiSchema)?void 0:r.title)||n.name,e.dataIndex.length>1){var r,a,c=o("".concat(l,".").concat(e.dataIndex.join(".")));if(!c)return;e.defaultTitle=e.defaultTitle+"/"+t(null==c||null==(a=c.uiSchema)?void 0:a.title)||c.name}return"chinaRegion"===n.interface&&e.dataIndex.push("name"),e}}).filter(Boolean),[4,e.downloadXlsxTemplate({values:{title:t(c),explain:p,columns:t(f)}},{method:"post",responseType:"blob"})];case 1:return m=new Blob([d.sent().data],{type:"application/x-xls"}),(0,z.saveAs)(m,"".concat(t(c),".xlsx")),[2]}})})()}}},Y=function(){var e,t=(0,n.useBlockRequestContext)().service,o=(0,n.useCompile)(),i=(0,n.useCollectionManager_deprecated)(),a=i.getCollectionJoinField,l=i.getCollectionField,c=(0,n.useCollection_deprecated)().name,u=J().schema,s=(0,w.useForm)(),p=(0,n.useActionContext)().setVisible,f=_(),m=f.setImportModalVisible,d=f.setImportStatus,y=f.setImportResult,b=s.values.upload,v=(0,n.useDataBlockResource)();return(0,r.useEffect)(function(){s.reset()},[]),{run:function(){return H(function(){var e,n,r,i,f,b,h,g,x,S,O,I,w,j;return W(this,function(A){switch(A.label){case 0:b=(f=L().cloneDeep(null!=(i=null==u||null==(e=u["x-action-settings"])?void 0:e.importSettings)?i:{})).importColumns,h=f.explain,g=K(b).map(function(e){var t=l("".concat(c,".").concat(e.dataIndex[0]));if(t){if(e.defaultTitle=o(null==t||null==(n=t.uiSchema)?void 0:n.title)||t.name,e.dataIndex.length>1){var n,r,i=a("".concat(c,".").concat(e.dataIndex.join(".")));if(!i)return;e.defaultTitle=e.defaultTitle+"/"+o(null==i||null==(r=i.uiSchema)?void 0:r.title)||i.name}return"chinaRegion"===t.interface&&e.dataIndex.push("name"),e}}).filter(Boolean),x=new FormData,S=s.values.upload.map(function(e){return e.originFileObj}),x.append("file",S[0]),x.append("columns",JSON.stringify(g)),x.append("explain",h),O=(null==u||null==(n=u["x-action-settings"])?void 0:n.importMode)||"auto",I=(null==u||null==(r=u["x-action-settings"])?void 0:r.timeout)||6e5,p(!1),m(!0),d(V.IMPORTING),A.label=1;case 1:return A.trys.push([1,6,,7]),[4,v.importXlsx({values:x,mode:O,timeout:I})];case 2:if(w=A.sent().data,s.reset(),w.data.taskId)return[3,4];return y(w),[4,null==t||null==(j=t.refresh)?void 0:j.call(t)];case 3:return A.sent(),d(V.IMPORTED),[3,5];case 4:m(!1),p(!1),A.label=5;case 5:return[3,7];case 6:return A.sent(),m(!1),p(!0),[3,7];case 7:return[2]}})})()},disabled:(null==b?void 0:b.length)===0||(null==(e=s.errors)?void 0:e.length)>0}},Z=h(964);function ee(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 et(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function en(){var e=et(["\n .ant-formily-item-label {\n height: var(--controlHeightLG);\n }\n "]);return en=function(){return e},e}function er(){var e=et(["\n margin-top: 5px;\n "]);return er=function(){return e},e}var eo={type:"void",name:"import-modal",title:'{{ t("Import Data", {ns: "'.concat(j,'" }) }}'),"x-component":"Action.Modal","x-decorator":"Form","x-component-props":{width:"100%",style:{maxWidth:"750px"},className:(0,Z.css)(en())},properties:{formLayout:{type:"void","x-component":"FormLayout",properties:{warning:{type:"void","x-component":"ImportWarning"},download:{type:"void",title:'{{ t("Step 1: Download template", {ns: "'.concat(j,'" }) }}'),"x-component":"FormItem","x-acl-ignore":!0,properties:{tip:{type:"void","x-component":"DownloadTips"},downloadAction:{type:"void",title:'{{ t("Download template", {ns: "'.concat(j,'" }) }}'),"x-component":"Action","x-component-props":{className:(0,Z.css)(er()),useAction:"{{ useDownloadXlsxTemplateAction }}"}}}},upload:{type:"array",title:'{{ t("Step 2: Upload Excel", {ns: "'.concat(j,'" }) }}'),"x-decorator":"FormItem","x-acl-ignore":!0,"x-component":"Upload.Dragger","x-validator":"{{ uploadValidator }}","x-component-props":{action:"",height:"150px",tipContent:'{{ t("Upload placeholder", {ns: "'.concat(j,'" }) }}'),beforeUpload:"{{ beforeUploadHandler }}"}}}},footer:{"x-component":"Action.Modal.Footer","x-component-props":{},properties:{actions:{type:"void","x-component":"ActionBar","x-component-props":{},properties:{cancel:{type:"void",title:'{{ t("Cancel") }}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},startImport:{type:"void",title:'{{ t("Start import", {ns: "'.concat(j,'" }) }}'),"x-component":"Action","x-component-props":{type:"primary",htmlType:"submit",useAction:"{{ useImportStartAction }}"},"x-reactions":{dependencies:["upload"],fulfill:{run:"validateUpload($form, $self, $deps)"}}}}}}}}},ei=function(e){var t,i,a,l=(t=(0,r.useState)(!1),function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(t,2)||function(e,t){if(e){if("string"==typeof e)return ee(e,2);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 ee(e,t)}}(t,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.")}()),c=l[0],u=l[1],s=(0,n.useCompile)(),p=(0,w.useFieldSchema)();return o().createElement(n.ActionContextProvider,{value:{visible:c,setVisible:u,fieldSchema:p}},o().createElement(n.Action,(i=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}({icon:e.icon||"uploadoutlined",title:s((null==p?void 0:p.title)||"t('Import')")},e),a=a={onClick:function(){return u(!0)}},Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(a)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(a)).forEach(function(e){Object.defineProperty(i,e,Object.getOwnPropertyDescriptor(a,e))}),i)),o().createElement(n.SchemaComponent,{schema:eo}))};function ea(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 el(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return ea(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 ea(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var ec=function(e){var t=F(),r=t.uploadValidator,i=t.beforeUploadHandler,a=t.validateUpload;return o().createElement(n.SchemaComponentOptions,{components:{ImportActionInitializer:x,ImportDesigner:B,ImportWarning:S,DownloadTips:O,ImportAction:ei},scope:{uploadValidator:r,validateUpload:a,beforeUploadHandler:i,useDownloadXlsxTemplateAction:Q,useImportStartAction:Y}},o().createElement(eu,null,e.children))},eu=function(e){var t=el((0,r.useState)(!1),2),n=t[0],i=t[1],a=el((0,r.useState)(V.IMPORTING),2),l=a[0],c=a[1],u=el((0,r.useState)(null),2),s=u[0],p=u[1];return o().createElement(R.Provider,{value:{importModalVisible:n,setImportModalVisible:i,importStatus:l,setImportStatus:c,importResult:s,setImportResult:p}},(0,q.createPortal)(o().createElement(X,null),document.body),e.children)};function es(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 ep(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ef(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){ep(e,t,n[t])})}return e}var em=new n.SchemaSettings({name:"actionSettings:import",items:[{name:"editButton",Component:n.ButtonEditor,useComponentProps:function(){return(0,n.useSchemaToolbar)().buttonEditorProps}},{name:"linkageRules",Component:n.SchemaSettingsLinkageRules,useComponentProps:function(){return ef({},(0,n.useSchemaToolbar)().linkageRulesProps)}},{name:"importableFields",type:"actionModal",useComponentProps:function(){var e,t,o,a,l=(0,w.useField)(),c=(0,w.useFieldSchema)(),u=(0,i.useTranslation)().t,s=(0,n.useDesignable)().dn,p=(e=(0,r.useState)(),function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,2)||function(e,t){if(e){if("string"==typeof e)return es(e,2);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 es(e,t)}}(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=F().importSettingsSchema;return(0,r.useEffect)(function(){m(d)},[l.address,null==c||null==(t=c["x-action-settings"])?void 0:t.importSettings]),{title:u("Importable fields"),schema:ef({},f),initialValues:ef({},null!=(a=null==c||null==(o=c["x-action-settings"])?void 0:o.importSettings)?a:{}),components:{ArrayItems:I.ArrayItems},onSubmit:function(e){var t,n=e.importColumns,r=e.explain,o=null==n?void 0:n.filter(function(e){var t;return null==e||null==(t=e.dataIndex)?void 0:t.length}).map(function(e){return{dataIndex:e.dataIndex.map(function(e){var t;return null!=(t=e.name)?t:e}),title:e.title,description:e.description}});c["x-action-settings"].importSettings={importColumns:o,explain:r},s.emit("patch",{schema:(ep(t={},"x-uid",c["x-uid"]),ep(t,"x-action-settings",c["x-action-settings"]),t)}),s.refresh()}}}},{name:"divider",type:"divider"},{name:"delete",type:"remove",useComponentProps:function(){return{removeParentsIfNoChildren:!0,breakRemoveOn:function(e){return"Space"===e["x-component"]||e["x-component"].endsWith("ActionBar")},confirm:{title:(0,(0,i.useTranslation)().t)("Delete action")}}}}]}),ed=h(563),ey=h(229),eb=h(667);function ev(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 eh(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function eg(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){eh(i,r,o,a,l,"next",e)}function l(e){eh(i,r,o,a,l,"throw",e)}a(void 0)})}}function ex(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function eS(e){return(eS=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function eO(e,t){return(eO=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function eI(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function ew(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(ew=function(){return!!e})()}function ej(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;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 eA(){var e=eI(["\n margin-top: 5px;\n "]);return eA=function(){return e},e}function eP(){var e=eI(["\n width: 100%;\n & .ant-space-item:nth-child(2) {\n flex: 1;\n }\n "]);return eP=function(){return e},e}function eC(){var e=eI(["\n border-color: var(--colorSettings);\n color: var(--colorSettings);\n &.ant-btn-dashed:hover {\n border-color: var(--colorSettings);\n color: var(--colorSettings);\n }\n "]);return eC=function(){return e},e}var eE=["id","createdAt","createdBy","updatedAt","updatedBy"],eT=["application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/vnd.ms-excel","application/wps-office.xlsx"],eF={type:"object",properties:{warning:{type:"void","x-component":"ImportWarning"},download:{type:"void",title:(0,eb.escapeT)("Step 1: Download template",{ns:"".concat(j)}),"x-component":"FormItem",properties:{tip:{type:"void","x-component":"DownloadTips"},downloadAction:{type:"void",title:(0,eb.escapeT)("Download template",{ns:"".concat(j)}),"x-component":"Button","x-component-props":{className:(0,Z.css)(eA()),children:(0,eb.escapeT)("Download template",{ns:"".concat(j)}),onClick:"{{ handelDownloadXlsxTemplateAction }}"}}}},upload:{type:"array",title:(0,eb.escapeT)("Step 2: Upload Excel",{ns:"".concat(j)}),"x-decorator":"FormItem","x-acl-ignore":!0,"x-component":"Upload.Dragger","x-validator":function(e,t){var n,r=e.fileList;if(r.length>1)return{type:"error",message:(0,eb.escapeT)("Only one file is allowed to be uploaded")};var o=null!=(n=r[0])?n:{};return eT.includes(o.type)?"":{type:"error",message:(0,eb.escapeT)("Please upload the file of Excel")}},"x-component-props":{action:"",height:"150px",maxCount:1,children:(0,eb.escapeT)("Upload placeholder",{ns:"".concat(j)}),beforeUpload:function(){return!1}}}}},ek=(0,w.createSchemaField)({components:{ImportWarning:S,DownloadTips:O,Upload:y.Upload,FormItem:I.FormItem,Button:y.Button}}),eD=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=eS(t),ex(e=function(e,t){var n;if(t&&("object"==((n=t)&&"undefined"!=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,ew()?Reflect.construct(t,r||[],eS(this).constructor):t.apply(this,r)),"defaultProps",{title:(0,eb.escapeT)("Import"),type:"default",icon:"uploadoutlined"}),e}return n.prototype=Object.create(e&&e.prototype,{constructor:{value:n,writable:!0,configurable:!0}}),e&&eO(n,e),t=[{key:"getAclActionName",value:function(){return"importXlsx"}}],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}(n.ActionModel);function eM(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function eB(e,t,n){return(eB=eU()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&eR(o,n.prototype),o}).apply(null,arguments)}ex(eD,"scene",n.ActionSceneEnum.collection),eD.define({label:(0,eb.escapeT)("Import")}),eD.registerFlow({key:"importSettings",title:(0,eb.escapeT)("Import settings"),on:"click",steps:{import:{handler:(e=eg(function(e,t){var n,r,i,a,l,c,u,s,p,f,m,d;return ej(this,function(t){switch(t.label){case 0:var b,v,h;return n=(0,ey.observable)({status:"",result:null}),r=(0,ed.createForm)(),a=(i=e.model.context.blockModel).resource,c=(l=i.collection).title,u=l.name,p=(s=e.model.getProps().importSettings).explain,f=(!(b=s.importColumns)||!Array.isArray(b)?[]:b).map(function(t){var n=e.model.context.dataSourceManager.getCollectionField("".concat(i.collection.dataSourceKey,".").concat(u,".").concat(t.dataIndex[0]));if(n){if(t.defaultTitle=e.t(null==n||null==(r=n.uiSchema)?void 0:r.title)||n.name,t.dataIndex.length>1){var r,o,a=e.model.context.dataSourceManager.getCollectionField("".concat(e.model.context.collection.dataSourceKey,".").concat(u,".").concat(t.dataIndex.join(".")));if(!a)return;t.defaultTitle=t.defaultTitle+"/"+e.t(null==a||null==(o=a.uiSchema)?void 0:o.title)||a.name}return t}}).filter(Boolean),v=eg(function(){var t;return ej(this,function(n){switch(n.label){case 0:return[4,a.runAction("downloadXlsxTemplate",{data:{title:e.t(c),explain:p,columns:function(e){if(Array.isArray(e))return ev(e)}(f)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(f)||function(e,t){if(e){if("string"==typeof e)return ev(e,void 0);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 ev(e,t)}}(f)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()},responseType:"blob",method:"post"})];case 1:return t=new Blob([n.sent()],{type:"application/x-xls"}),(0,z.saveAs)(t,"".concat(e.t(c),".xlsx")),[2]}})}),m=function(){return v.apply(this,arguments)},h=eg(function(t){var o,i,l,c,u,s,m,d;return ej(this,function(y){switch(y.label){case 0:o=r.values.upload.fileList,i=new FormData,l=o.map(function(e){return e.originFileObj}),i.append("file",l[0]),i.append("columns",JSON.stringify(f)),i.append("explain",p),c=e.model.getProps().importMode,n.status="importing",y.label=1;case 1:return y.trys.push([1,6,,7]),[4,a.runAction("importXlsx",{data:i,mode:c,timeout:6e5})];case 2:if(null==(s=y.sent().data)||null==(u=s.data)?void 0:u.taskId)return[3,4];return n.result=s,n.status="imported",[4,null==a||null==(m=a.refresh)?void 0:m.call(a)];case 3:return y.sent(),r.reset(),[3,5];case 4:t.close(),r.reset(),y.label=5;case 5:return[3,7];case 6:return d=y.sent(),n.status="",console.error(d),[3,7];case 7:return[2]}})}),d=(0,eb.observer)(function(t){var i=t.popover,a=e.t;if("importing"===n.status)return o().createElement("div",{style:{display:"flex",justifyContent:"center",padding:40}},o().createElement(y.Spin,{tip:a("Excel data importing"),indicator:o().createElement(U.LoadingOutlined,{spin:!0,style:{fontSize:24}})}));if("imported"===n.status){var l,c,u,s=null==(u=n.result)?void 0:u.meta;return o().createElement(y.Space,{direction:"vertical",align:"center",style:{width:"100%",padding:24}},o().createElement(U.ExclamationCircleFilled,{style:{fontSize:72,color:"#1890ff"}}),o().createElement("p",null,function(e){if(!e)return null;var t=e.successCount;if(e.meta,t)return a("{{successCount}} records have been successfully imported",{successCount:t},{ns:j})}(n.result)),o().createElement(y.Space,null,(null==s?void 0:s.failureCount)>0&&o().createElement(y.Button,{onClick:function(){var e,t,r=new Blob([new Int8Array(null==(t=n.result)||null==(e=t.data)?void 0:e.data)],{type:"application/x-xls"});(0,z.saveAs)(r,"fail.xlsx")}},a("To download the failure data")),o().createElement(y.Button,{type:"primary",onClick:function(){i.close(),n.status="",n.result=null}},a("Done"))))}return o().createElement(w.FormProvider,{form:r},o().createElement(I.FormLayout,{layout:"vertical"},o().createElement(ek,{schema:eF,scope:{t:e.t,handelDownloadXlsxTemplateAction:m}})),o().createElement(I.FormButtonGroup,{align:"right"},o().createElement(y.Button,{onClick:function(){return i.close()}},a("Cancel")),o().createElement(y.Button,{type:"primary",onClick:function(){return function(e){return h.apply(this,arguments)}(i)},disabled:!(null==(c=r.values.upload)||null==(l=c.fileList)?void 0:l.length)},a("Start import",{ns:"".concat(j)}))))}),[4,e.viewer.open({type:"dialog",placement:"center",width:800,title:e.t("Import Data",{ns:"".concat(j)}),content:function(e){return o().createElement(d,{popover:e})}})];case 1:return t.sent(),[2]}})}),function(t,n){return e.apply(this,arguments)})}}}),eD.registerFlow({key:"importActionSetting",title:(0,eb.escapeT)("Import action settings",{ns:j}),steps:{importSetting:{title:(0,eb.escapeT)("Importable fields"),uiSchema:function(e){var t,r,o=(t=e.model.context.blockModel.collection.getFields(),r=e.t,m(t,function(e){var t;return r(null==e||null==(t=e.uiSchema)?void 0:t.title)||e.name},function(e){return e.targetCollection&&e.targetCollection.getFields()||[]}));return{explain:{type:"string",title:'{{ t("Import explain", {ns: "'.concat(j,'"}) }}'),"x-decorator":"FormItem","x-component":"Input.TextArea"},importColumns:{type:"array","x-component":"ArrayItems","x-decorator":"FormItem",items:{type:"object",properties:{space:{type:"void","x-component":"Space","x-component-props":{className:(0,Z.css)(eP())},properties:{sort:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.SortHandle"},dataIndex:{type:"array","x-decorator":"FormItem","x-component":n.Cascader,required:!0,"x-component-props":{fieldNames:{label:"title",value:"name",children:"children"},changeOnSelect:!1,options:o}},title:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:'{{ t("Custom column title") }}'}},description:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:'{{ t("Field description placeholder", {ns: "'.concat(j,'"}) }}')}},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},properties:{add:{type:"void",title:'{{ t("Add importable field", {ns: "'.concat(j,'"}) }}'),"x-component":"ArrayItems.Addition","x-component-props":{className:(0,Z.css)(eC())}}}}}},defaultParams:function(e){var t;return 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){ex(e,t,n[t])})}return e}({},{importColumns:null==(t=e.model.context.blockModel.collection.getFields())?void 0:t.filter(function(e){return!e.isAssociationField()&&!(eE.includes(e.interface)||!e.options.interface)}).map(function(e){return{dataIndex:[e.name]}}),explain:""})},handler:function(e,t){var n=t.importColumns,r=t.explain,o=null==n?void 0:n.filter(function(e){var t;return null==e||null==(t=e.dataIndex)?void 0:t.length}).map(function(e){return{dataIndex:e.dataIndex.map(function(e){var t;return null!=(t=e.name)?t:e}),title:e.title,description:e.description}});e.model.setProps("importSettings",{importColumns:o,explain:r})}}}});function eq(e){return(eq=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function eR(e,t){return(eR=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function e_(e){var t="function"==typeof Map?new Map:void 0;return(e_=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 eB(e,arguments,eq(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),eR(n,e)})(e)}function eU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(eU=function(){return!!e})()}var ez=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=eq(e),function(e,t){var n;if(t&&("object"==((n=t)&&"undefined"!=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,eU()?Reflect.construct(e,t||[],eq(this).constructor):e.apply(this,t))}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&eR(r,e),t=[{key:"load",value:function(){var e,t=this;return(e=function(){var e,r;return function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;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}}}}(this,function(o){return t.app.use(ec),e={title:"{{t('Import')}}",Component:"ImportActionInitializer",schema:{"x-align":"right","x-decorator":"ACLActionProvider","x-acl-action":"importXlsx","x-acl-action-props":{skipScopeCheck:!0}},useVisible:function(){return(0,n.useActionAvailable)("importXlsx")}},null==(r=t.app.schemaInitializerManager.get("table:configureActions"))||r.add("enableActions.import",e),t.app.schemaInitializerManager.addItem("gantt:configureActions","enableActions.import",e),t.app.schemaSettingsManager.add(em),t.app.flowEngine.registerModels({ImportActionModel:eD}),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){eM(i,r,o,a,l,"next",e)}function l(e){eM(i,r,o,a,l,"throw",e)}a(void 0)})})()}}],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,t),r}(e_(n.Plugin)),eN=ez}(),g}()});