@nocobase/plugin-data-source-manager 2.1.0-beta.44 → 2.1.0-beta.45

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,4 +7,4 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
 
10
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react-i18next"),require("@emotion/css"),require("react-router-dom"),require("@formily/antd-v5"),require("@formily/reactive"),require("@formily/react"),require("@nocobase/plugin-acl/client"),require("@dnd-kit/core"),require("@nocobase/flow-engine"),require("@ant-design/icons"),require("@formily/core"),require("@formily/shared"),require("react"),require("antd"),require("@nocobase/client"),require("antd-style"),require("@nocobase/utils/client"),require("lodash")):"function"==typeof define&&define.amd?define("@nocobase/plugin-data-source-manager",["react-i18next","@emotion/css","react-router-dom","@formily/antd-v5","@formily/reactive","@formily/react","@nocobase/plugin-acl/client","@dnd-kit/core","@nocobase/flow-engine","@ant-design/icons","@formily/core","@formily/shared","react","antd","@nocobase/client","antd-style","@nocobase/utils/client","lodash"],t):"object"==typeof exports?exports["@nocobase/plugin-data-source-manager"]=t(require("react-i18next"),require("@emotion/css"),require("react-router-dom"),require("@formily/antd-v5"),require("@formily/reactive"),require("@formily/react"),require("@nocobase/plugin-acl/client"),require("@dnd-kit/core"),require("@nocobase/flow-engine"),require("@ant-design/icons"),require("@formily/core"),require("@formily/shared"),require("react"),require("antd"),require("@nocobase/client"),require("antd-style"),require("@nocobase/utils/client"),require("lodash")):e["@nocobase/plugin-data-source-manager"]=t(e["react-i18next"],e["@emotion/css"],e["react-router-dom"],e["@formily/antd-v5"],e["@formily/reactive"],e["@formily/react"],e["@nocobase/plugin-acl/client"],e["@dnd-kit/core"],e["@nocobase/flow-engine"],e["@ant-design/icons"],e["@formily/core"],e["@formily/shared"],e.react,e.antd,e["@nocobase/client"],e["antd-style"],e["@nocobase/utils/client"],e.lodash)}(self,function(e,t,n,r,o,a,i,c,u,l,s,p,f,d,b,y,g,h){return function(){"use strict";var m,v,w,O={719:function(e,t,n){n.r(t),n.d(t,{PluginDataSourceManagerClient:function(){return M}});var r=n(342),o=n(79),a=n.n(o),i=n(768),c=n(155),u=n.n(c),l=n(135),s=n(872);function p(e,t,n,r,o,a,i){try{var c=e[a](i),u=c.value}catch(e){n(e);return}c.done?t(u):Promise.resolve(u).then(r,o)}function f(e){return 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)})}}function d(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}function b(e,t,n){return(b=O()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&v(o,n.prototype),o}).apply(null,arguments)}function y(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)}}function g(e,t,n){return t&&y(e.prototype,t),n&&y(e,n),e}function h(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){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function v(e,t){return(v=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function w(e){var t="function"==typeof Map?new Map:void 0;return(w=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 b(e,arguments,m(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),v(n,e)})(e)}function O(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(O=function(){return!!e})()}function P(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:u(0)}),c(i,"throw",{value:u(1)}),c(i,"return",{value:u(2)}),"function"==typeof Symbol&&c(i,Symbol.iterator,{value:function(){return this}}),i;function u(c){return function(u){var l=[c,u];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,l[0]&&(a=0)),a;)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 a.label++,{value:l[1],done:!1};case 5:a.label++,r=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){a=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){a.label=l[1];break}if(6===l[0]&&a.label<o[1]){a.label=o[1],o=l;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(l);break}o[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],r=0}finally{n=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}var S=(0,r.lazy)(function(){return n.e("936").then(n.bind(n,35))},"DatabaseConnectionProvider").DatabaseConnectionProvider,C=(0,r.lazy)(function(){return Promise.all([n.e("936"),n.e("397")]).then(n.bind(n,620))},"BreadcumbTitle").BreadcumbTitle,j=(0,r.lazy)(function(){return Promise.all([n.e("936"),n.e("369"),n.e("420")]).then(n.bind(n,111))},"CollectionManagerPage").CollectionManagerPage,x=(0,r.lazy)(function(){return Promise.all([n.e("936"),n.e("271")]).then(n.bind(n,61))},"DatabaseConnectionManagerPane").DatabaseConnectionManagerPane,k=(0,r.lazy)(function(){return Promise.all([n.e("936"),n.e("369"),n.e("644")]).then(n.bind(n,687))},"MainDataSourceManager").MainDataSourceManager,_=(0,r.lazy)(function(){return n.e("603").then(n.bind(n,886))},"DataSourcePermissionManager").DataSourcePermissionManager,q=(0,r.lazy)(function(){return n.e("416").then(n.bind(n,819))},"CollectionMainProvider").CollectionMainProvider,T=function(){function e(t){d(this,e),h(this,"plugin",void 0),h(this,"componentRegistry",void 0),this.plugin=t,this.componentRegistry=new i.Registry}return g(e,[{key:"registerManagerAction",value:function(e){var t=e.order,n=e.component,r="managerAction";this.componentRegistry.get(r)||this.componentRegistry.register(r,[]),this.componentRegistry.get(r).push({order:null!=t?t:0,component:n})}},{key:"getManagerActions",value:function(){var e;return null!=(e=this.componentRegistry.get("managerAction"))?e:[]}}]),e}(),M=function(e){if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function t(){var e,n,r;return d(this,t),n=t,r=arguments,n=m(n),h(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,O()?Reflect.construct(n,r||[],m(this).constructor):n.apply(this,r)),"types",new Map),h(e,"extensionManager",new T(e)),h(e,"extendedTabs",{}),e}return t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&v(t,e),g(t,[{key:"getExtendedTabs",value:function(){return this.extendedTabs}},{key:"registerPermissionTab",value:function(e){this.extendedTabs[(0,i.uid)()]=e}},{key:"load",value:function(){return f(function(){return P(this,function(e){return this.app.pm.get(a()).settingsUI.addPermissionsTab(function(e){var t=e.t,n=e.TabLayout,r=e.activeRole;return{key:"dataSource",label:t("Data sources"),sort:15,children:u().createElement(n,null,u().createElement(_,{role:r}))}}),this.app.use(S),this.app.pluginSettingsManager.add(s.CU,{title:'{{t("Data sources", { ns: "'.concat(s.CU,'" })}}'),icon:"ClusterOutlined",isPinned:!0,sort:100,showTabs:!1,aclSnippet:"pm.data-source-manager*"}),this.app.pluginSettingsManager.add("".concat(s.CU,".list"),{title:'{{t("Data sources", { ns: "'.concat(s.CU,'" })}}'),Component:x,sort:1,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager"}),this.app.pluginSettingsManager.add("".concat(s.CU,"/:name"),{title:u().createElement(C,null),icon:"ClusterOutlined",isTopLevel:!1,sort:100,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager"}),this.app.pluginSettingsManager.add("".concat(s.CU,"/main"),{title:u().createElement(C,null),icon:"ClusterOutlined",isTopLevel:!1,sort:100,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager.data-source-main",Component:q}),this.app.pluginSettingsManager.add("".concat(s.CU,"/main.collections"),{title:'{{t("Collections", { ns: "'.concat(s.CU,'" })}}'),Component:k,topLevelName:"".concat(s.CU,"/main"),pluginKey:s.CU,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager.data-source-main"}),this.app.pluginSettingsManager.add("".concat(s.CU,"/:name.collections"),{title:'{{t("Collections", { ns: "'.concat(s.CU,'" })}}'),Component:j,topLevelName:"".concat(s.CU,"/:name"),pluginKey:s.CU,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager.data-source-main"}),this.app.dataSourceManager.addDataSources(this.getThirdDataSource.bind(this),l.J),[2]})}).call(this)}},{key:"setDataSources",value:function(){return f(function(){var e,t;return P(this,function(n){switch(n.label){case 0:return[4,this.app.apiClient.request({resource:"dataSources",action:"listEnabled",params:{paginate:!1}})];case 1:return[2,null==(t=n.sent())||null==(e=t.data)?void 0:e.data]}})}).call(this)}},{key:"getThirdDataSource",value:function(){return f(function(){var e,t;return P(this,function(n){switch(n.label){case 0:return[4,this.app.apiClient.request({resource:"dataSources",action:"listEnabled",params:{paginate:!1,appends:["collections"]}})];case 1:return[2,null==(t=n.sent())||null==(e=t.data)?void 0:e.data]}})}).call(this)}},{key:"registerType",value:function(e,t){this.types.set(e,t)}}]),t}(w(r.Plugin));t.default=M},135:function(e,t,n){n.d(t,{J:function(){return u}});var r=n(342);function o(e,t,n,r,o,a,i){try{var c=e[a](i),u=c.value}catch(e){n(e);return}c.done?t(u):Promise.resolve(u).then(r,o)}function a(e){return(a=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 c(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(c=function(){return!!e})()}var u=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;if(!(this instanceof n))throw TypeError("Cannot call a class as a function");return e=n,t=arguments,e=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(e,t||[],a(this).constructor):e.apply(this,t))}return n.prototype=Object.create(e&&e.prototype,{constructor:{value:n,writable:!0,configurable:!0}}),e&&i(n,e),t=[{key:"getDataSource",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:u(0)}),c(i,"throw",{value:u(1)}),c(i,"return",{value:u(2)}),"function"==typeof Symbol&&c(i,Symbol.iterator,{value:function(){return this}}),i;function u(c){return function(u){var l=[c,u];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,l[0]&&(a=0)),a;)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 a.label++,{value:l[1],done:!1};case 5:a.label++,r=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){a=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){a.label=l[1];break}if(6===l[0]&&a.label<o[1]){a.label=o[1],o=l;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(l);break}o[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],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){switch(e.label){case 0:return[4,this.app.apiClient.request({url:"dataSources:get/".concat(this.key),params:{appends:["collections"]}})];case 1:return[2,e.sent().data.data]}})},function(){var t=this,n=arguments;return new Promise(function(r,a){var i=e.apply(t,n);function c(e){o(i,r,a,c,u,"next",e)}function u(e){o(i,r,a,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)}}(n.prototype,t),n}(r.DataSource)},872:function(e,t,n){n.d(t,{CU:function(){return a},VP:function(){return c},vV:function(){return i}});var r=n(342),o=n(953),a="data-source-manager";function i(e){var t,n,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return r.i18n.t(e,(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){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}({},o),n=n={ns:a},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))}function c(){return(0,o.useTranslation)([a,"client"],{nsMode:"fallback"})}},375:function(e){e.exports=l},799:function(e){e.exports=c},477:function(e){e.exports=t},418:function(e){e.exports=r},452:function(e){e.exports=s},230:function(e){e.exports=a},992:function(e){e.exports=o},166:function(e){e.exports=p},342:function(e){e.exports=b},694:function(e){e.exports=u},79:function(e){e.exports=i},768:function(e){e.exports=g},59:function(e){e.exports=d},235:function(e){e.exports=y},773:function(e){e.exports=h},155:function(e){e.exports=f},953:function(t){t.exports=e},442:function(e){e.exports=n},634:function(e,t,n){var r="",o="u">typeof document?document.currentScript:null;if(o&&o.src&&(r=o.src.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")),!r){var a=window.__webpack_public_path__||"";a&&("/"!==a.charAt(a.length-1)&&(a+="/"),r=a+"static/plugins/@nocobase/plugin-data-source-manager/dist/client/")}if(!r){if(!(r=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var i=window.location.pathname||"/",c=i.indexOf("/v2/");r=c>=0?i.slice(0,c+1):"/"}r&&(r=r.replace(/\/v2\/?$/,"/")),r||(r="/"),"/"!==r.charAt(r.length-1)&&(r+="/"),r+="static/plugins/@nocobase/plugin-data-source-manager/dist/client/"}n.p=r}},P={};function S(e){var t=P[e];if(void 0!==t)return t.exports;var n=P[e]={exports:{}};return O[e](n,n.exports,S),n.exports}S.m=O,S.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return S.d(t,{a:t}),t},S.d=function(e,t){for(var n in t)S.o(t,n)&&!S.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},S.f={},S.e=function(e){return Promise.all(Object.keys(S.f).reduce(function(t,n){return S.f[n](e,t),t},[]))},S.u=function(e){return""+e+"."+({271:"b3c0013cf976adf0",369:"6025f2112454fab1",397:"c8c6659cf3f7ac1c",416:"197712b8b93033c5",420:"0c3e3c9888e0ba31",603:"d6022bceb934f5b0",644:"b98e4b39058e9c32",936:"d5ab7aecb4eb6004"})[e]+".js"},S.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),S.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},C={},S.l=function(e,t,n,r){if(C[e])return void C[e].push(t);if(void 0!==n)for(var o,a,i=document.getElementsByTagName("script"),c=0;c<i.length;c++){var u=i[c];if(u.getAttribute("src")==e||u.getAttribute("data-rspack")=="@nocobase/plugin-data-source-manager:"+n){o=u;break}}o||(a=!0,(o=document.createElement("script")).timeout=120,S.nc&&o.setAttribute("nonce",S.nc),o.setAttribute("data-rspack","@nocobase/plugin-data-source-manager:"+n),o.src=e),C[e]=[t];var l=function(t,n){o.onerror=o.onload=null,clearTimeout(s);var r=C[e];if(delete C[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),a&&document.head.appendChild(o)},S.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},S.g.importScripts&&(j=S.g.location+"");var C,j,x=S.g.document;if(!j&&x&&(x.currentScript&&"SCRIPT"===x.currentScript.tagName.toUpperCase()&&(j=x.currentScript.src),!j)){var k=x.getElementsByTagName("script");if(k.length)for(var _=k.length-1;_>-1&&(!j||!/^http(s?):/.test(j));)j=k[_--].src}if(!j)throw Error("Automatic publicPath is not supported in this browser");return S.p=j.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),m={889:0},S.f.j=function(e,t){var n=S.o(m,e)?m[e]:void 0;if(0!==n)if(n)t.push(n[2]);else{var r=new Promise(function(t,r){n=m[e]=[t,r]});t.push(n[2]=r);var o=S.p+S.u(e),a=Error();S.l(o,function(t){if(S.o(m,e)&&(0!==(n=m[e])&&(m[e]=void 0),n)){var r=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;a.message="Loading chunk "+e+" failed.\n("+r+": "+o+")",a.name="ChunkLoadError",a.type=r,a.request=o,n[1](a)}},"chunk-"+e,e)}},v=function(e,t){var n,r,o=t[0],a=t[1],i=t[2],c=0;if(o.some(function(e){return 0!==m[e]})){for(n in a)S.o(a,n)&&(S.m[n]=a[n]);i&&i(S)}for(e&&e(t);c<o.length;c++)r=o[c],S.o(m,r)&&m[r]&&m[r][0](),m[r]=0},(w=self.webpackChunk_nocobase_plugin_data_source_manager=self.webpackChunk_nocobase_plugin_data_source_manager||[]).forEach(v.bind(null,0)),w.push=v.bind(null,w.push.bind(w)),S(634),S(719)}()});
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react-i18next"),require("@emotion/css"),require("react-router-dom"),require("@formily/antd-v5"),require("@formily/reactive"),require("@formily/react"),require("@nocobase/plugin-acl/client"),require("@dnd-kit/core"),require("@nocobase/flow-engine"),require("@ant-design/icons"),require("@formily/core"),require("@formily/shared"),require("react"),require("antd"),require("@nocobase/client"),require("antd-style"),require("@nocobase/utils/client"),require("lodash")):"function"==typeof define&&define.amd?define("@nocobase/plugin-data-source-manager",["react-i18next","@emotion/css","react-router-dom","@formily/antd-v5","@formily/reactive","@formily/react","@nocobase/plugin-acl/client","@dnd-kit/core","@nocobase/flow-engine","@ant-design/icons","@formily/core","@formily/shared","react","antd","@nocobase/client","antd-style","@nocobase/utils/client","lodash"],t):"object"==typeof exports?exports["@nocobase/plugin-data-source-manager"]=t(require("react-i18next"),require("@emotion/css"),require("react-router-dom"),require("@formily/antd-v5"),require("@formily/reactive"),require("@formily/react"),require("@nocobase/plugin-acl/client"),require("@dnd-kit/core"),require("@nocobase/flow-engine"),require("@ant-design/icons"),require("@formily/core"),require("@formily/shared"),require("react"),require("antd"),require("@nocobase/client"),require("antd-style"),require("@nocobase/utils/client"),require("lodash")):e["@nocobase/plugin-data-source-manager"]=t(e["react-i18next"],e["@emotion/css"],e["react-router-dom"],e["@formily/antd-v5"],e["@formily/reactive"],e["@formily/react"],e["@nocobase/plugin-acl/client"],e["@dnd-kit/core"],e["@nocobase/flow-engine"],e["@ant-design/icons"],e["@formily/core"],e["@formily/shared"],e.react,e.antd,e["@nocobase/client"],e["antd-style"],e["@nocobase/utils/client"],e.lodash)}(self,function(e,t,n,r,o,a,i,c,u,l,s,p,f,d,b,y,g,h){return function(){"use strict";var m,v,w,O={719:function(e,t,n){n.r(t),n.d(t,{PluginDataSourceManagerClient:function(){return M}});var r=n(342),o=n(79),a=n.n(o),i=n(768),c=n(155),u=n.n(c),l=n(135),s=n(872);function p(e,t,n,r,o,a,i){try{var c=e[a](i),u=c.value}catch(e){n(e);return}c.done?t(u):Promise.resolve(u).then(r,o)}function f(e){return 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)})}}function d(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}function b(e,t,n){return(b=O()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&v(o,n.prototype),o}).apply(null,arguments)}function y(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)}}function g(e,t,n){return t&&y(e.prototype,t),n&&y(e,n),e}function h(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){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function v(e,t){return(v=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function w(e){var t="function"==typeof Map?new Map:void 0;return(w=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 b(e,arguments,m(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),v(n,e)})(e)}function O(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(O=function(){return!!e})()}function P(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:u(0)}),c(i,"throw",{value:u(1)}),c(i,"return",{value:u(2)}),"function"==typeof Symbol&&c(i,Symbol.iterator,{value:function(){return this}}),i;function u(c){return function(u){var l=[c,u];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,l[0]&&(a=0)),a;)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 a.label++,{value:l[1],done:!1};case 5:a.label++,r=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){a=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){a.label=l[1];break}if(6===l[0]&&a.label<o[1]){a.label=o[1],o=l;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(l);break}o[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],r=0}finally{n=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}var S=(0,r.lazy)(function(){return n.e("936").then(n.bind(n,35))},"DatabaseConnectionProvider").DatabaseConnectionProvider,_=(0,r.lazy)(function(){return Promise.all([n.e("936"),n.e("397")]).then(n.bind(n,620))},"BreadcumbTitle").BreadcumbTitle,x=(0,r.lazy)(function(){return Promise.all([n.e("936"),n.e("369"),n.e("420")]).then(n.bind(n,111))},"CollectionManagerPage").CollectionManagerPage,C=(0,r.lazy)(function(){return Promise.all([n.e("936"),n.e("271")]).then(n.bind(n,61))},"DatabaseConnectionManagerPane").DatabaseConnectionManagerPane,j=(0,r.lazy)(function(){return Promise.all([n.e("936"),n.e("369"),n.e("644")]).then(n.bind(n,687))},"MainDataSourceManager").MainDataSourceManager,k=(0,r.lazy)(function(){return n.e("603").then(n.bind(n,886))},"DataSourcePermissionManager").DataSourcePermissionManager,q=(0,r.lazy)(function(){return n.e("416").then(n.bind(n,819))},"CollectionMainProvider").CollectionMainProvider,T=function(){function e(t){d(this,e),h(this,"plugin",void 0),h(this,"componentRegistry",void 0),this.plugin=t,this.componentRegistry=new i.Registry}return g(e,[{key:"registerManagerAction",value:function(e){var t=e.order,n=e.component,r="managerAction";this.componentRegistry.get(r)||this.componentRegistry.register(r,[]),this.componentRegistry.get(r).push({order:null!=t?t:0,component:n})}},{key:"getManagerActions",value:function(){var e;return null!=(e=this.componentRegistry.get("managerAction"))?e:[]}}]),e}(),M=function(e){if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function t(){var e,n,r;return d(this,t),n=t,r=arguments,n=m(n),h(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,O()?Reflect.construct(n,r||[],m(this).constructor):n.apply(this,r)),"types",new Map),h(e,"extensionManager",new T(e)),h(e,"extendedTabs",{}),e}return t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&v(t,e),g(t,[{key:"getExtendedTabs",value:function(){return this.extendedTabs}},{key:"registerPermissionTab",value:function(e){this.extendedTabs[(0,i.uid)()]=e}},{key:"load",value:function(){return f(function(){return P(this,function(e){return this.app.pm.get(a()).settingsUI.addPermissionsTab(function(e){var t=e.t,n=e.TabLayout,r=e.activeRole;return{key:"dataSource",label:t("Data sources"),sort:15,children:u().createElement(n,null,u().createElement(k,{role:r}))}}),this.app.use(S),this.app.pluginSettingsManager.add(s.CU,{title:'{{t("Data sources", { ns: "'.concat(s.CU,'" })}}'),icon:"ClusterOutlined",isPinned:!0,sort:100,showTabs:!1,aclSnippet:"pm.data-source-manager*"}),this.app.pluginSettingsManager.add("".concat(s.CU,".list"),{title:'{{t("Data sources", { ns: "'.concat(s.CU,'" })}}'),Component:C,sort:1,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager"}),this.app.pluginSettingsManager.add("".concat(s.CU,"/:name"),{title:u().createElement(_,null),icon:"ClusterOutlined",isTopLevel:!1,sort:100,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager"}),this.app.pluginSettingsManager.add("".concat(s.CU,"/main"),{title:u().createElement(_,null),icon:"ClusterOutlined",isTopLevel:!1,sort:100,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager.data-source-main",Component:q}),this.app.pluginSettingsManager.add("".concat(s.CU,"/main.collections"),{title:'{{t("Collections", { ns: "'.concat(s.CU,'" })}}'),Component:j,topLevelName:"".concat(s.CU,"/main"),pluginKey:s.CU,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager.data-source-main"}),this.app.pluginSettingsManager.add("".concat(s.CU,"/:name.collections"),{title:'{{t("Collections", { ns: "'.concat(s.CU,'" })}}'),Component:x,topLevelName:"".concat(s.CU,"/:name"),pluginKey:s.CU,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager.data-source-main"}),this.app.dataSourceManager.addDataSources(this.getThirdDataSource.bind(this),l.J),[2]})}).call(this)}},{key:"setDataSources",value:function(){return f(function(){var e,t;return P(this,function(n){switch(n.label){case 0:return[4,this.app.apiClient.request({resource:"dataSources",action:"listEnabled",params:{paginate:!1}})];case 1:return[2,null==(t=n.sent())||null==(e=t.data)?void 0:e.data]}})}).call(this)}},{key:"getThirdDataSource",value:function(){return f(function(){var e,t;return P(this,function(n){switch(n.label){case 0:return[4,this.app.apiClient.request({resource:"dataSources",action:"listEnabled",params:{paginate:!1,appends:["collections"]}})];case 1:return[2,null==(t=n.sent())||null==(e=t.data)?void 0:e.data]}})}).call(this)}},{key:"registerType",value:function(e,t){this.types.set(e,t)}}]),t}(w(r.Plugin));t.default=M},135:function(e,t,n){n.d(t,{J:function(){return u}});var r=n(342);function o(e,t,n,r,o,a,i){try{var c=e[a](i),u=c.value}catch(e){n(e);return}c.done?t(u):Promise.resolve(u).then(r,o)}function a(e){return(a=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 c(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(c=function(){return!!e})()}var u=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;if(!(this instanceof n))throw TypeError("Cannot call a class as a function");return e=n,t=arguments,e=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(e,t||[],a(this).constructor):e.apply(this,t))}return n.prototype=Object.create(e&&e.prototype,{constructor:{value:n,writable:!0,configurable:!0}}),e&&i(n,e),t=[{key:"getDataSource",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:u(0)}),c(i,"throw",{value:u(1)}),c(i,"return",{value:u(2)}),"function"==typeof Symbol&&c(i,Symbol.iterator,{value:function(){return this}}),i;function u(c){return function(u){var l=[c,u];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,l[0]&&(a=0)),a;)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 a.label++,{value:l[1],done:!1};case 5:a.label++,r=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){a=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){a.label=l[1];break}if(6===l[0]&&a.label<o[1]){a.label=o[1],o=l;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(l);break}o[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],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){switch(e.label){case 0:return[4,this.app.apiClient.request({url:"dataSources:get/".concat(this.key),params:{appends:["collections"]}})];case 1:return[2,e.sent().data.data]}})},function(){var t=this,n=arguments;return new Promise(function(r,a){var i=e.apply(t,n);function c(e){o(i,r,a,c,u,"next",e)}function u(e){o(i,r,a,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)}}(n.prototype,t),n}(r.DataSource)},872:function(e,t,n){n.d(t,{CU:function(){return a},VP:function(){return c},vV:function(){return i}});var r=n(342),o=n(953),a="data-source-manager";function i(e){var t,n,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return r.i18n.t(e,(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){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}({},o),n=n={ns:a},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))}function c(){return(0,o.useTranslation)([a,"client"],{nsMode:"fallback"})}},375:function(e){e.exports=l},799:function(e){e.exports=c},477:function(e){e.exports=t},418:function(e){e.exports=r},452:function(e){e.exports=s},230:function(e){e.exports=a},992:function(e){e.exports=o},166:function(e){e.exports=p},342:function(e){e.exports=b},694:function(e){e.exports=u},79:function(e){e.exports=i},768:function(e){e.exports=g},59:function(e){e.exports=d},235:function(e){e.exports=y},773:function(e){e.exports=h},155:function(e){e.exports=f},953:function(t){t.exports=e},442:function(e){e.exports=n},645:function(e,t,n){var r="",o="u">typeof document?document.currentScript:null;if(o&&o.src&&(r=o.src.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")),!r){var a=window.__webpack_public_path__||"";a&&("/"!==a.charAt(a.length-1)&&(a+="/"),r=a+"static/plugins/@nocobase/plugin-data-source-manager/dist/client/")}if(!r){var i=window.__nocobase_modern_client_prefix__||"v",c="/"+(i=String(i).replace(/^\/+|\/+$/g,"")||"v")+"/";if(!(r=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var u=window.location.pathname||"/",l=u.indexOf(c);r=l>=0?u.slice(0,l+1):"/"}r&&(r=r.replace(RegExp("/"+i+"/?$"),"/")),r||(r="/"),"/"!==r.charAt(r.length-1)&&(r+="/"),r+="static/plugins/@nocobase/plugin-data-source-manager/dist/client/"}n.p=r}},P={};function S(e){var t=P[e];if(void 0!==t)return t.exports;var n=P[e]={exports:{}};return O[e](n,n.exports,S),n.exports}S.m=O,S.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return S.d(t,{a:t}),t},S.d=function(e,t){for(var n in t)S.o(t,n)&&!S.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},S.f={},S.e=function(e){return Promise.all(Object.keys(S.f).reduce(function(t,n){return S.f[n](e,t),t},[]))},S.u=function(e){return""+e+"."+({271:"b3c0013cf976adf0",369:"6025f2112454fab1",397:"c8c6659cf3f7ac1c",416:"197712b8b93033c5",420:"0c3e3c9888e0ba31",603:"d6022bceb934f5b0",644:"b98e4b39058e9c32",936:"d5ab7aecb4eb6004"})[e]+".js"},S.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),S.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},_={},S.l=function(e,t,n,r){if(_[e])return void _[e].push(t);if(void 0!==n)for(var o,a,i=document.getElementsByTagName("script"),c=0;c<i.length;c++){var u=i[c];if(u.getAttribute("src")==e||u.getAttribute("data-rspack")=="@nocobase/plugin-data-source-manager:"+n){o=u;break}}o||(a=!0,(o=document.createElement("script")).timeout=120,S.nc&&o.setAttribute("nonce",S.nc),o.setAttribute("data-rspack","@nocobase/plugin-data-source-manager:"+n),o.src=e),_[e]=[t];var l=function(t,n){o.onerror=o.onload=null,clearTimeout(s);var r=_[e];if(delete _[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),a&&document.head.appendChild(o)},S.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},S.g.importScripts&&(x=S.g.location+"");var _,x,C=S.g.document;if(!x&&C&&(C.currentScript&&"SCRIPT"===C.currentScript.tagName.toUpperCase()&&(x=C.currentScript.src),!x)){var j=C.getElementsByTagName("script");if(j.length)for(var k=j.length-1;k>-1&&(!x||!/^http(s?):/.test(x));)x=j[k--].src}if(!x)throw Error("Automatic publicPath is not supported in this browser");return S.p=x.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),m={889:0},S.f.j=function(e,t){var n=S.o(m,e)?m[e]:void 0;if(0!==n)if(n)t.push(n[2]);else{var r=new Promise(function(t,r){n=m[e]=[t,r]});t.push(n[2]=r);var o=S.p+S.u(e),a=Error();S.l(o,function(t){if(S.o(m,e)&&(0!==(n=m[e])&&(m[e]=void 0),n)){var r=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;a.message="Loading chunk "+e+" failed.\n("+r+": "+o+")",a.name="ChunkLoadError",a.type=r,a.request=o,n[1](a)}},"chunk-"+e,e)}},v=function(e,t){var n,r,o=t[0],a=t[1],i=t[2],c=0;if(o.some(function(e){return 0!==m[e]})){for(n in a)S.o(a,n)&&(S.m[n]=a[n]);i&&i(S)}for(e&&e(t);c<o.length;c++)r=o[c],S.o(m,r)&&m[r]&&m[r][0](),m[r]=0},(w=self.webpackChunk_nocobase_plugin_data_source_manager=self.webpackChunk_nocobase_plugin_data_source_manager||[]).forEach(v.bind(null,0)),w.push=v.bind(null,w.push.bind(w)),S(645),S(719)}()});
@@ -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
+ "use strict";(self.webpackChunk_nocobase_plugin_data_source_manager_client_v2=self.webpackChunk_nocobase_plugin_data_source_manager_client_v2||[]).push([["167"],{442:function(e,t,n){n.r(t),n.d(t,{default:function(){return ts}});var r=n(694),l=n(625),a=n(59),o=n(155),i=n.n(o),u=n(61),c=n(143),s=n(938),d=n(375),m=n(799),f=n(485),p=n(768),v=n(890);function y(e,t,n,r){var l="main"===e?"collections/".concat(t,"/fields:").concat(n):"dataSourcesCollections/".concat(e,".").concat(t,"/fields:").concat(n);return null==r?l:"".concat(l,"?filterByTk=").concat(encodeURIComponent(String(r)))}function g(e){return(null==e?void 0:e.fieldInterfaces)||(null==e?void 0:e.availableFieldInterfaces)}function b(e,t){return null==e?void 0:e.some(function(e){return("string"==typeof e?e:e.interface||e.name)===t})}function h(e,t,n,r){var l=g(t)||{},a=l.include,o=l.exclude,i=void 0===o?[]:o,u=Array.isArray(a)&&a.length>0;return e.filter(function(e){return"systemInfo"===e.group?"tableoid"===e.name?u?b(a,e.name):(null==r?void 0:r.databaseDialect)==="postgres":"boolean"!=typeof n[e.name]||n[e.name]:u?b(a,e.name):!i.includes(e.name)})}function S(e,t){var n=(g(t)||{}).create,r=null==n?void 0:n.include,l=(null==n?void 0:n.exclude)||[],a=Array.isArray(r)&&r.length>0;return e.filter(function(e){return a?b(r,e.name):!l.includes(e.name)})}var E=n(428);"u">typeof window&&void 0!==window.document&&window.document.createElement;let w=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:n}=e;return"translate3d("+(t?Math.round(t):0)+"px, "+(n?Math.round(n):0)+"px, 0)"}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:n}=e;return"scaleX("+t+") scaleY("+n+")"}},Transform:{toString(e){if(e)return[w.Translate.toString(e),w.Scale.toString(e)].join(" ")}},Transition:{toString(e){let{property:t,duration:n,easing:r}=e;return t+" "+n+"ms "+r}}});var C=n(185),F=n.n(C),k=n(773);function I(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 x(e,t,n,r,l,a,o){try{var i=e[a](o),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,l)}function O(e){return function(){var t=this,n=arguments;return new Promise(function(r,l){var a=e.apply(t,n);function o(e){x(a,r,l,o,i,"next",e)}function i(e){x(a,r,l,o,i,"throw",e)}o(void 0)})}}function A(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function T(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){A(e,t,n[t])})}return e}function M(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function D(e,t){if(null==e)return{};var n,r,l,a={};if("u">typeof Reflect&&Reflect.ownKeys){for(l=0,n=Reflect.ownKeys(Object(e));l<n.length;l++)r=n[l],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}if(a=function(e,t){if(null==e)return{};var n,r,l={},a=Object.getOwnPropertyNames(e);for(r=0;r<a.length;r++)n=a[r],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(l[n]=e[n]);return l}(e,t),Object.getOwnPropertySymbols)for(l=0,n=Object.getOwnPropertySymbols(e);l<n.length;l++)r=n[l],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}function j(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,l=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=l){var a=[],o=!0,i=!1;try{for(l=l.call(e);!(o=(n=l.next()).done)&&(a.push(n.value),!t||a.length!==t);o=!0);}catch(e){i=!0,r=e}finally{try{o||null==l.return||l.return()}finally{if(i)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 P(e){return function(e){if(Array.isArray(e))return I(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.")}()}function K(e,t){if(e){if("string"==typeof e)return I(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 I(e,t)}}function R(e,t){var n,r,l,a={label:0,sent:function(){if(1&l[0])throw l[1];return l[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(o,"next",{value:u(0)}),i(o,"throw",{value:u(1)}),i(o,"return",{value:u(2)}),"function"==typeof Symbol&&i(o,Symbol.iterator,{value:function(){return this}}),o;function u(i){return function(u){var c=[i,u];if(n)throw TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(l=2&c[0]?r.return:c[0]?r.throw||((l=r.return)&&l.call(r),0):r.next)&&!(l=l.call(r,c[1])).done)return l;switch(r=0,l&&(c=[2&c[0],l.value]),c[0]){case 0:case 1:l=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(!(l=(l=a.trys).length>0&&l[l.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!l||c[1]>l[0]&&c[1]<l[3])){a.label=c[1];break}if(6===c[0]&&a.label<l[1]){a.label=l[1],l=c;break}if(l&&a.label<l[2]){a.label=l[2],a.ops.push(c);break}l[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],r=0}finally{n=l=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}function q(e){return e.split(".")}var V=/^[a-zA-Z][a-zA-Z0-9_-]*$/,N="Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.",B=new Set(["Select","CollectionSelect","RemoteSelect"]),z=new Set(["target"]),L="{{fileCollections}}",_=new Set(["sourceKey"]),G=new Set(["targetKey"]),$={red:"Red",magenta:"Magenta",volcano:"Volcano",orange:"Orange",gold:"Gold",lime:"Lime",green:"Green",cyan:"Cyan",blue:"Blue",geekblue:"Geek blue",purple:"Purple",default:"Default"},U=[{label:"Recommended",colors:["#8BBB11","#52C41A","#13A8A8","#1677FF","#F5222D","#FADB14","#E6F4FF","#fff1f0","#F6FFED","#E6FFFB","#FA8C164D","#FADB144D","#52C41A4D","#1677FF4D","#2F54EB4D","#722ED14D"]}],W=i().createContext(null);function J(e){var t=String(e["data-row-key"]),n=(0,E.useSortable)({id:t}),r=n.attributes,l=n.isDragging,a=n.listeners,o=n.setActivatorNodeRef,u=n.setNodeRef,c=n.transform,s=n.transition,d=T(M(T({},e.style),{transform:w.Transform.toString(c),transition:s}),l?{position:"relative",zIndex:1}:null);return i().createElement(W.Provider,{value:{attributes:r,listeners:a,setActivatorNodeRef:o}},i().createElement("tr",M(T({ref:u},e),{style:d})))}function X(e){var t=i().useContext(W);return i().createElement("span",M(T({ref:e.disabled||null==t?void 0:t.setActivatorNodeRef},e.disabled?{}:null==t?void 0:t.attributes,e.disabled?{}:null==t?void 0:t.listeners),{style:{alignItems:"center",color:"var(--ant-color-text-tertiary)",cursor:e.disabled?"not-allowed":"grab",display:"inline-flex"}}),i().createElement(d.MenuOutlined,null))}function H(e,t){return(0,f.evaluateFieldConfigureExpression)(e,{context:t,values:t,getValue:function(e){return(0,k.get)(t,e)},setValue:function(){}})}function Z(e,t){return Array.isArray(e)?e.map(function(e){var n;return(void 0===e?"undefined":e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e)=="object"&&null!==e?{value:e.value,label:(0,s.hd)(null!=(n=e.label)?n:e.value,t)}:{value:e,label:String(e)}}):[]}function Y(e,t){t.forEach(function(t){void 0===(0,k.get)(e,t.name)&&void 0!==t.defaultValue&&(0,k.set)(e,t.name,function(e){if("string"!=typeof e)return(0,k.cloneDeep)(e);var t=e.match(/^\s*\{\{\s*useNewId\((['"])(.*?)\1\)\s*\}\}\s*$/);return t?(0,r.randomId)(t[2]):e}(t.defaultValue))})}function Q(e,t,n,r){return{changedName:r,context:n,values:t,getValue:function(e){return(0,k.get)(t,e)},setValue:function(t,n){(0,k.get)(e.getFieldsValue(!0),t)!==n&&e.setFieldValue(q(t),n)}}}function ee(e,t,n){if(t)return(0,k.cloneDeep)(t);var l=M(T({name:(0,r.randomId)("f_")},(0,k.cloneDeep)((null==e?void 0:e.default)||{})),{interface:null==e?void 0:e.name});return l.reverseField&&(l.reverseField.name=(0,r.randomId)("f_")),l.uiSchema&&(null==e?void 0:e.name)!=="tableoid"&&delete l.uiSchema.title,(null==e?void 0:e.name)==="tableoid"&&((0,k.set)(l,"name","__collection"),(0,k.set)(l,"uiSchema.title",(0,s.Ad)((0,k.get)(l,"uiSchema.title")||'{{t("Table OID")}}',n))),l}function et(e){return"string"==typeof e?e.replace(/[^a-zA-Z0-9_-]/g,""):""}function en(e){return[e.mode,e.dataSourceKey,e.collectionName||"",e.fieldName||"",e.interfaceName||""].join(":")}function er(e){var t=(0,c.kj)(),n=a.Form.useFormInstance(),l=(0,m.useSensors)((0,m.useSensor)(m.PointerSensor,{activationConstraint:{distance:4}})),u=(0,o.useMemo)(function(){return Object.keys($).map(function(e){return{value:e,label:i().createElement(a.Tag,{color:e,style:{marginInlineEnd:0}},t($[e]||$.default))}})},[t]),s=(0,o.useCallback)(function(e){var t=n.getFieldValue("defaultValue");Array.isArray(t)?n.setFieldValue("defaultValue",t.filter(function(t){return t!==e})):t===e&&n.setFieldValue("defaultValue",void 0)},[n]);return i().createElement(a.Form.List,{name:e.name},function(o,c){var f=c.add,p=c.move,v=c.remove,y=o.map(function(e){return String(e.key)}),g=[{key:"sort",width:48,align:"center",render:function(){return i().createElement(X,{disabled:e.disabled})}},{title:t("Option value"),dataIndex:"value",render:function(t,n){return i().createElement(a.Form.Item,{name:[n.name,"value"],rules:[{required:!0}],style:{marginBottom:0}},i().createElement(a.Input,{disabled:e.disabled}))}},{title:t("Option label"),dataIndex:"label",render:function(t,n){return i().createElement(a.Form.Item,{name:[n.name,"label"],rules:[{required:!0}],style:{marginBottom:0}},i().createElement(a.Input,{disabled:e.disabled}))}},{title:t("Color"),dataIndex:"color",width:180,render:function(t,n){return i().createElement(a.Form.Item,{name:[n.name,"color"],style:{marginBottom:0}},i().createElement(a.Select,{allowClear:!0,disabled:e.disabled,options:u}))}},{key:"actions",width:56,align:"center",render:function(r,l){return i().createElement(a.Button,{"aria-label":t("Delete"),icon:i().createElement(d.DeleteOutlined,null),disabled:e.disabled,type:"text",onClick:function(){s(n.getFieldValue(P(e.name).concat([l.name,"value"]))),v(l.name)}})}}];return i().createElement("div",{style:{border:"1px solid var(--ant-color-border)",borderRadius:6,overflow:"hidden"}},i().createElement(m.DndContext,{sensors:l,collisionDetection:m.closestCenter,onDragEnd:function(e){var t=e.active,n=e.over;if(n&&t.id!==n.id){var r=y.indexOf(String(t.id)),l=y.indexOf(String(n.id));r<0||l<0||p(r,l)}}},i().createElement(E.SortableContext,{items:y,strategy:E.verticalListSortingStrategy},i().createElement(a.Table,{columns:g,dataSource:o,pagination:!1,rowKey:function(e){return String(e.key)},size:"small",locale:{emptyText:t("No data")},components:{body:{row:J}}}))),i().createElement(a.Button,{block:!0,icon:i().createElement(d.PlusOutlined,null),disabled:e.disabled,type:"dashed",size:"small",style:{borderBlockEnd:0,borderInline:0,borderRadius:0,height:36,marginTop:-1},onClick:function(){return f({value:(0,r.randomId)(),label:""})}},t("Add option")))})}function el(e,t){if(!e)return null;var n=(null==t?void 0:t.timeOnly)&&"string"==typeof e?"2000-01-01 ".concat(e):e,r=F()(n);return r.isValid()?r:null}function ea(e){var t=e.component,n=e.componentProps,r=e.disabled,l=e.onChange,o=e.options,u=e.value;if("Checkbox"===t)return i().createElement(a.Checkbox,{checked:!!u,disabled:r,onChange:function(e){return null==l?void 0:l(e.target.checked)}});if("Checkbox.Group"===t)return i().createElement(a.Checkbox.Group,{disabled:r,options:o,value:Array.isArray(u)?u:[],onChange:function(e){return null==l?void 0:l(e)}});if("Radio.Group"===t)return i().createElement(a.Radio.Group,{disabled:r,options:o,value:u,onChange:function(e){return null==l?void 0:l(e.target.value)}});if("Select"===t){var c=n.mode;return i().createElement(a.Select,{allowClear:!0,disabled:r,mode:c,options:o,value:u,onChange:function(e){return null==l?void 0:l(e)}})}if("InputNumber"===t||"Percent"===t||"UnixTimestamp"===t){var s=n.style,d=D(n,["style"]);return i().createElement(a.InputNumber,T({style:T({width:"100%"},s),disabled:r,value:u,onChange:function(e){return null==l?void 0:l(e)}},d))}if("DatePicker"===t){var m=n.dateFormat,f=n.dateOnly,v=n.format,y=(n.gmt,n.picker),g=void 0===y?"date":y,b=n.showTime,h=n.timeFormat,S=(n.utc,D(n,["dateFormat","dateOnly","format","gmt","picker","showTime","timeFormat","utc"])),E=v||m||(0,p.getPickerFormat)(g),w=b?"".concat(E," ").concat(void 0===h?"HH:mm:ss":h):E;return i().createElement(a.DatePicker,T({style:{width:"100%"},disabled:r,picker:g,showTime:!f&&b,format:w,value:el(u),onChange:function(e,t){return null==l?void 0:l(t||null)}},S))}if("TimePicker"===t){var C=n.format,F=D(n,["format"]);return i().createElement(a.TimePicker,T({style:{width:"100%"},disabled:r,format:void 0===C?"HH:mm:ss":C,value:el(u,{timeOnly:!0}),onChange:function(e,t){return null==l?void 0:l(t||null)}},F))}return"ColorPicker"===t?i().createElement(a.ColorPicker,T({allowClear:!0,disabled:r,value:u,trigger:"hover",destroyTooltipOnHide:!0,presets:U,onChange:function(e,t){return null==l?void 0:l(t)}},n)):["Input.TextArea","Markdown","RichText","Input.JSON"].includes(t||"")?i().createElement(a.Input.TextArea,{autoSize:{minRows:4,maxRows:8},disabled:r,value:u,onChange:function(e){return null==l?void 0:l(e.target.value)}}):i().createElement(a.Input,{disabled:r,value:u,onChange:function(e){return null==l?void 0:l(e.target.value)}})}function eo(e){var t=e.allowClear,n=e.autoSelectFirstOption,r=e.disabled,l=e.form,u=e.namePath,c=e.onChange,s=e.options,d=e.selectProps,m=e.showSearch,f=e.value,p=a.Form.useWatch(u,l),v=null!=f?f:p;d.allowClear,d.filterOption,d.showSearch;var y=D(d,["allowClear","filterOption","showSearch"]);return(0,o.useEffect)(function(){if(n&&(null==v||""===v)&&s.length){var e=s[0].value;l.setFieldValue(u,e),null==c||c(e,s[0])}},[n,v,l,u,c,s]),i().createElement(a.Select,M(T({allowClear:t,disabled:r,options:s,showSearch:m,value:f,onChange:c},y),{filterOption:function(e,t){return String((null==t?void 0:t.label)||"").toLowerCase().includes(e.toLowerCase())}}))}function ei(e){var t=(0,c.kj)(),n=e.availableValidationOptions,l=e.excludeValidationOptions,u=e.onChange,m=e.type,p=e.value,v=(0,o.useMemo)(function(){return(null==p?void 0:p.rules)||[]},[null==p?void 0:p.rules]),y=(null==p?void 0:p.type)||m||"string",g=(0,o.useMemo)(function(){var e=f.fieldValidationConfigureRegistry.getGroup(y),t=(null==l?void 0:l.length)?e.filter(function(e){return!l.includes(e.key)}):e;if(null==n?void 0:n.filter(function(e){return"required"!==e}).length){var r=n.map(function(e){return t.find(function(t){return t.key===e})}).filter(Boolean);return r.length?r:t}return t},[n,l,y]),b=new Set(v.map(function(e){return e.name})),h=g.filter(function(e){return!b.has(e.key)}).map(function(e){return{key:e.key,label:(0,s.hd)(e.label,t)}}),S=(0,o.useCallback)(function(e){return g.find(function(t){return t.key===e})},[g]),E=(0,o.useCallback)(function(e,t){null==u||u({type:y,rules:v.map(function(n){return n.key===e?t(n):n})})},[u,v,y]),w=(0,o.useMemo)(function(){return{items:h,onClick:function(e){var t=e.key,n=S(String(t)),l=((null==n?void 0:n.params)||[]).reduce(function(e,t){return void 0!==t.defaultValue&&(e[t.key]=t.defaultValue),e},{});null==u||u({type:y,rules:P(v).concat([{key:(0,r.randomId)("r_"),name:String(t),args:l,paramsType:null==n?void 0:n.paramsType}])})}}},[S,h,u,v,y]),C=(0,o.useCallback)(function(e){var t=v.filter(function(t){return t.key!==e});null==u||u({type:y,rules:t})},[u,v,y]),k=(0,o.useCallback)(function(e,n){var r,l,o=null!=(r=null==(l=e.args)?void 0:l[n.key])?r:n.defaultValue,u=function(t){E(e.key,function(e){return M(T({},e),{args:M(T({},e.args||{}),A({},n.key,t))})})};return"checkbox"===n.componentType?i().createElement(a.Checkbox,{checked:!!o,onChange:function(e){return u(e.target.checked)}}):"radio"===n.componentType?i().createElement(a.Radio.Group,{value:o,options:(n.options||[]).map(function(e){return{label:(0,s.hd)(e.label,t),value:e.value}}),onChange:function(e){return u(e.target.value)}}):"singleSelect"===n.componentType||"multipleSelect"===n.componentType?i().createElement(a.Select,{allowClear:!0,mode:"multipleSelect"===n.componentType?"multiple":void 0,value:o,options:(n.options||[]).map(function(e){return{label:(0,s.hd)(e.label,t),value:e.value}}),onChange:u}):"inputNumber"===n.componentType?i().createElement(a.InputNumber,{style:{width:"100%"},value:o,onChange:u}):"datePicker"===n.componentType?i().createElement(a.DatePicker,{style:{width:"100%"},value:o?F()(o):null,onChange:function(e){return u(null==e?void 0:e.toISOString())}}):i().createElement(a.Input,{value:o,onChange:function(e){return u(e.target.value)}})},[t,E]);return i().createElement("div",null,i().createElement(a.Space,{direction:"vertical",style:{width:"100%",marginBottom:12*!!v.length},size:0},v.map(function(e){var n,r=S(e.name);return i().createElement("div",{key:e.key,style:{border:"1px solid var(--ant-color-border)",borderRadius:6,overflow:"hidden"}},i().createElement("div",{style:{alignItems:"center",display:"flex",justifyContent:"space-between",minHeight:40,padding:"8px 12px"}},i().createElement(a.Space,null,i().createElement(d.DownOutlined,null),i().createElement("span",null,(0,s.hd)((null==r?void 0:r.label)||e.name,t))),i().createElement(a.Button,{"aria-label":t("Delete"),icon:i().createElement(d.DeleteOutlined,null),size:"small",type:"text",onClick:function(){return C(e.key)}})),(null==r?void 0:r.hasValue)&&(null==(n=r.params)?void 0:n.length)?i().createElement("div",{style:{background:"var(--ant-color-fill-tertiary)",borderTop:"1px solid var(--ant-color-border)",padding:12}},r.params.map(function(n){return i().createElement(a.Form.Item,{key:n.key,label:(0,s.hd)(n.label,t),required:!!n.required,style:{marginBottom:0}},k(e,n))})):null)})),i().createElement("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"}},i().createElement(a.Dropdown,{menu:w,placement:"bottomLeft",disabled:!h.length},i().createElement(a.Button,{size:"small",type:"dashed",icon:i().createElement(d.PlusOutlined,null)},t("Add rule")," ",i().createElement(d.DownOutlined,null))),i().createElement("span",null,i().createElement("span",{style:{color:"var(--ant-color-text-secondary)"}},t("References"),": "),i().createElement("a",{href:"https://joi.dev/api/",target:"_blank",rel:"noreferrer"},t("Joi API")))))}function eu(e){var t=a.theme.useToken().token;return e.content?i().createElement("span",{style:{background:t.colorBgTextHover,borderRadius:t.borderRadiusOuter,display:"inline-block",lineHeight:1,marginLeft:t.marginMD,padding:t.paddingXXS}},e.content):null}function ec(e){return i().createElement("span",{style:{display:"inline-flex"}},i().createElement("span",null,e.format),i().createElement(eu,{content:F()().format(e.format)}))}function es(e){var t=(0,o.useMemo)(function(){return e.formats||[]},[e.formats]),n=!!e.value&&!t.includes(e.value),r=j((0,o.useState)(n?e.value:e.defaultValue||t[0]||""),2),l=r[0],u=r[1];return(0,o.useEffect)(function(){u(e.value&&!t.includes(e.value)?e.value:e.defaultValue||t[0]||"")},[t,e.defaultValue,e.value]),i().createElement(a.Radio.Group,{disabled:e.disabled,value:n?"custom":e.value,onChange:function(t){var n,r;if("custom"===t.target.value){null==(r=e.onChange)||r.call(e,l);return}null==(n=e.onChange)||n.call(e,t.target.value)}},i().createElement(a.Space,{direction:"vertical"},e.options.map(function(t){if("custom"===t.value)return i().createElement(a.Radio,{key:"custom",value:"custom",style:{display:"flex",margin:"5px 0"}},i().createElement(a.Input,{disabled:e.disabled,style:{width:150},value:l,onChange:function(t){var n,r=t.target.value;u(r),null==(n=e.onChange)||n.call(e,r||void 0)}}),i().createElement(eu,{content:l?F()().format(l):null}));if(e.picker&&"date"!==e.picker)return null;var n=String(t.value);return i().createElement(a.Radio,{key:n,value:t.value,"aria-label":n,style:{display:"flex",margin:"5px 0"}},i().isValidElement(t.label)?t.label:i().createElement(ec,{format:"string"==typeof t.label?t.label:n}))})))}function ed(e){var t=e.fallbackTitle,n=e.fieldInterface,r=e.label,l=(0,c.kj)(),u=a.theme.useToken().token,d=(0,o.useMemo)(function(){return{container:{backgroundColor:u.colorFillAlter,marginBottom:u.marginLG,padding:u.paddingSM+u.paddingXXS},title:{color:u.colorText},description:{color:u.colorTextDescription,marginTop:u.marginXS},tag:{background:"none"}}},[u.colorFillAlter,u.colorText,u.colorTextDescription,u.marginLG,u.marginXS,u.paddingSM,u.paddingXXS]);return i().createElement("div",{style:d.container},i().createElement("div",{style:d.title},r,": ",i().createElement(a.Tag,{style:d.tag},(0,s.hd)((null==n?void 0:n.title)||t,l))),(null==n?void 0:n.description)?i().createElement("div",{style:d.description},(0,s.hd)(n.description,l)):null)}function em(e,t){return e.map(function(e){return{value:e.name,label:(0,s.hd)(e.title||e.name,t)}})}function ef(e){var t=(0,c.kj)(),n=e.collection,r=e.collections,l=e.components,u=e.context,d=e.form,m=e.name,p=e.schema,v=q(m),y=null==p?void 0:p["x-component"],g=y?null==l?void 0:l[y]:void 0,b=a.Form.useWatch("target",d),h=a.Form.useWatch("autoCreateReverseField",d),S=a.Form.useWatch("inputable",d),E=a.Form.useWatch(["uiSchema","enum"],d),w=a.Form.useWatch([],d)||d.getFieldsValue(!0),C=(0,o.useRef)(),F=(0,o.useMemo)(function(){return M(T({},u),{inputable:!!S,showReverseFieldConfig:!!h||!!d.getFieldValue(["reverseField","key"])})},[h,u,d,S]),I=(0,f.getCoreFieldConfigureState)(m,w,F),x=(0,o.useMemo)(function(){return JSON.stringify([null==I?void 0:I.hasValue,null==I?void 0:I.value])},[null==I?void 0:I.hasValue,null==I?void 0:I.value]),O=null!=(el=I.disabled)?el:H(null==p?void 0:p["x-disabled"],F),A=!!I.hidden||H(null==p?void 0:p["x-hidden"],F)||(null==p?void 0:p["x-visible"])!==void 0&&!H(null==p?void 0:p["x-visible"],F)||m.startsWith("reverseField.")&&!F.showReverseFieldConfig,P=null==p?void 0:p.title,K=null==p?void 0:p["x-content"],R=(0,s.hd)(P||K||m,t),V=(0,s.hd)(K||P||m,t),N=!!P&&!!K&&P!==K,$=(0,s.hd)(null==p?void 0:p.description,t),U=T({},(null==p?void 0:p["x-component-props"])||{},I.componentProps||{}),W=r.find(function(e){return e.name===n.name}),J=Array.isArray(n.fields)&&n.fields.length?n.fields:(null==W?void 0:W.fields)||[],X=r.find(function(e){return e.name===b}),Y=(null==X?void 0:X.fields)||[];if((0,o.useEffect)(function(){if(!I.hasValue){C.current=void 0;return}C.current===x||(C.current=x,(0,k.get)(d.getFieldsValue(!0),v)!==I.value&&d.setFieldValue(v,I.value))},[I.hasValue,I.value,d,v,x]),A)return null;if("defaultValue"===m){var Q=Z(I.dataSource||(Array.isArray(E)?E:void 0)||(null==p?void 0:p.enum)||U.options,t);return i().createElement(a.Form.Item,{name:v,label:R,tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(ea,{component:y,componentProps:U,disabled:O,options:Q}))}if(g)return i().createElement(g,{name:m,namePath:v,schema:p,form:d,disabled:O,collection:n,collections:r,context:F,title:R,tooltip:$,componentProps:U,mode:u.createOnly?"create":"edit",fieldInterface:e.fieldInterface});if("Checkbox"===y)return N?i().createElement(a.Form.Item,{name:v,label:R,valuePropName:"checked",tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(a.Checkbox,{disabled:O},V)):i().createElement(a.Form.Item,{name:v,valuePropName:"checked",tooltip:$},i().createElement(a.Checkbox,{disabled:O},V));if("Space"===y&&(null==p?void 0:p.properties))return i().createElement(a.Form.Item,{label:R,tooltip:$},i().createElement(a.Space,{wrap:!0},Object.entries(p.properties).filter(function(e){var t=j(e,2)[1];return(null==t?void 0:t["x-component"])==="Checkbox"}).map(function(e){var n=j(e,2),r=n[0],l=n[1],o=H(null==l?void 0:l["x-disabled"],F),u=(0,s.hd)((null==l?void 0:l.title)||(null==l?void 0:l["x-content"])||r,t);return i().createElement(a.Form.Item,{key:r,name:q(r),valuePropName:"checked",noStyle:!0},i().createElement(a.Checkbox,{disabled:o},u))})));if("InputNumber"===y)return i().createElement(a.Form.Item,{name:v,label:R,tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(a.InputNumber,T({style:{width:"100%"},disabled:O},U)));if("ExpiresRadio"===y){var ee=U.defaultValue,et=U.formats,en=U.picker;return i().createElement(a.Form.Item,{name:v,label:R,tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(es,{defaultValue:ee,disabled:O,formats:et,options:Z(null==p?void 0:p.enum,t),picker:en}))}if("Select"===y||"CollectionSelect"===y||"RemoteSelect"===y||"TargetKey"===y||"SourceKey"===y){var el,eu,ec=G.has(m)?Y.filter(function(e){return e.primaryKey||e.unique}).map(function(e){var n;return{value:e.name,label:(0,s.hd)((null==(n=e.uiSchema)?void 0:n.title)||e.name,t)}}):_.has(m)?J.filter(function(e){return e.primaryKey||e.unique}).map(function(e){var n;return{value:e.name,label:(0,s.hd)((null==(n=e.uiSchema)?void 0:n.title)||e.name,t)}}):z.has(m)&&B.has(y)&&!Array.isArray(null==p?void 0:p.enum)?em(r.filter(function(e){return e.name&&e.name!==n.name}),t):(null==p?void 0:p.enum)==="{{collections}}"?em(r,t):(null==p?void 0:p.enum)===L?em(r.filter(function(e){var t;return e.name&&"file"===((null==e?void 0:e.template)||(null==e||null==(t=e.options)?void 0:t.template))}),t):"CollectionSelect"===y||"RemoteSelect"===y?em(r,t):Z(null==p?void 0:p.enum,t),ed=U.filter,ef=U.multiple,ep=D(U,["filter","multiple"]),ev=M(T({},ep),{mode:ef?"multiple":ep.mode}),ey="function"==typeof ed?ec.filter(function(e){return ed(r.find(function(t){return t.name===e.value}))}):ec;return i().createElement(a.Form.Item,{name:v,label:R,tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(eo,{allowClear:"SourceKey"!==y&&(null==(eu=ep.allowClear)||eu),autoSelectFirstOption:"SourceKey"===y,disabled:O,form:d,namePath:v,options:ey,selectProps:ev,showSearch:"SourceKey"===y||ev.showSearch}))}return"Radio.Group"===y?i().createElement(a.Form.Item,{name:v,label:R,tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(a.Radio.Group,{disabled:O,options:Z(null==p?void 0:p.enum,t)})):"ArrayTable"===y&&"uiSchema.enum"===m?i().createElement(a.Form.Item,{label:R,tooltip:$},i().createElement(er,{name:v,disabled:O})):"FieldValidation"===y?i().createElement(a.Form.Item,{name:v,label:R,tooltip:$},i().createElement(ei,(null==p?void 0:p["x-component-props"])||{})):"Input.TextArea"===y?i().createElement(a.Form.Item,{name:v,label:R,tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(a.Input.TextArea,{disabled:O})):"SourceCollection"===y?i().createElement(a.Form.Item,{label:R,tooltip:$},i().createElement(a.Input,{disabled:!0,value:(0,s.Ad)(n.title||n.name,t)})):i().createElement(a.Form.Item,{name:v,label:R,tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(a.Input,{disabled:O}))}function ep(e){var t=a.Form.useWatch([],e.form)||e.form.getFieldsValue(!0),n=(0,o.useMemo)(function(){return(e.item.dependencies||[e.item.name]).map(function(e){return(0,k.get)(t,e)})},[e.item.dependencies,e.item.name,t]),r=(0,o.useMemo)(function(){return JSON.stringify(n)},[n]),l=(0,o.useRef)();return(0,o.useEffect)(function(){e.item.effect&&l.current!==r&&(l.current=r,e.item.effect(Q(e.form,t,e.context)))},[e.context,e.form,e.item,r,t]),null}function ev(e){var t,n,r=(0,c.kj)(),l=a.Form.useWatch([],e.form)||e.form.getFieldsValue(!0),o=Q(e.form,l,e.context),u="function"==typeof e.item.hidden?e.item.hidden(o):e.item.hidden,d="function"==typeof e.item.disabled?e.item.disabled(o):e.item.disabled,m="string"==typeof d?(0,f.evaluateFieldConfigureExpression)(d,o):d,p=e.item.Component,v=M(T({},e.item.schema||{},(t=e.item,n={},void 0!==t.title&&(n.title=t.title),void 0!==t.description&&(n.description=t.description),void 0!==t.required&&(n.required=t.required),void 0!==t.options&&(n.enum=t.options),void 0!==t.defaultValue&&(n.default=t.defaultValue),void 0!==t.component&&(n["x-component"]=t.component),void 0!==t.componentProps&&(n["x-component-props"]=t.componentProps),n)),{"x-disabled":m});return("string"==typeof u?(0,f.evaluateFieldConfigureExpression)(u,o):u)?i().createElement(ep,{context:e.context,form:e.form,item:e.item}):p?i().createElement(i().Fragment,null,i().createElement(ep,{context:e.context,form:e.form,item:e.item}),i().createElement(p,{name:e.item.name,namePath:q(e.item.name),schema:v,form:e.form,disabled:m,collection:e.collection,collections:e.collections,context:e.context,title:(0,s.hd)(e.item.title,r),tooltip:(0,s.hd)(e.item.description,r),componentProps:e.item.componentProps,mode:e.context.createOnly?"create":"edit",createOnly:e.context.createOnly,editMainOnly:e.context.editMainOnly,disabledJSONB:e.context.disabledJSONB,fieldInterface:e.fieldInterface})):i().createElement(i().Fragment,null,i().createElement(ep,{context:e.context,form:e.form,item:e.item}),i().createElement(ef,{name:e.item.name,schema:v,collection:e.collection,collections:e.collections,configureProperties:e.configureProperties,fieldInterface:e.fieldInterface,form:e.form,context:e.context}))}function ey(e){for(var t=function(t){return i().createElement(ev,{key:t.name,item:t,collection:e.collection,collections:e.collections,configureProperties:[],fieldInterface:e.fieldInterface,form:e.form,context:e.context})},n=[],r=0;r<e.items.length;)!function(){var l,o,u=e.items[r],c=null==(l=u.layout)?void 0:l.row;if(!c)return n.push(t(u)),r+=1;for(var s=[];r<e.items.length&&(null==(o=e.items[r].layout)?void 0:o.row)===c;)s.push(e.items[r]),r+=1;var d=s.reduce(function(e,t){var n,r,l,a,o=(null==(r=t.layout)?void 0:r.column)||t.name,i=e.find(function(e){return e.key===o});return i?i.items.push(t):e.push({key:o,index:null!=(n=null==(l=t.layout)?void 0:l.columnIndex)?n:e.length,span:(null==(a=t.layout)?void 0:a.span)||24,items:[t]}),e},[]).sort(function(e,t){return e.index-t.index}),m=0;n.push(i().createElement(a.Row,{key:"".concat(c,"-").concat(n.length),gutter:24},d.map(function(e){var n=Math.max(e.index-m,0)*e.span;return m=e.index+1,i().createElement(a.Col,{key:e.key,xs:24,md:{span:e.span,offset:n}},e.items.map(function(e){return t(e)}))})))}();return i().createElement(i().Fragment,null,n)}function eg(e){var t,n,l,u,d,m,p,g=(0,c.kj)(),b=(0,r.useFlowContext)(),E=a.App.useApp().notification,w=(0,f.useCurrentAppInfo)(),C=b.dataSourceManager.collectionFieldInterfaceManager,F=j(a.Form.useForm(),1)[0],I=j((0,o.useState)(!1),2),x=I[0],A=I[1],D=(0,o.useRef)(),P=(0,o.useRef)(),K=b.dataSourceManager.getDataSource(e.dataSourceKey),q=(null==w||null==(t=w.database)?void 0:t.dialect)||(null==w||null==(l=w.data)||null==(n=l.database)?void 0:n.dialect),B=(0,o.useMemo)(function(){var t,n,r,l;return function(e,t,n,r,l){if("create"!==r)return e;var a,o=n.app.pm.get(v.v),i=null==o||null==(a=o.getCollectionTemplate)?void 0:a.call(o,t.template||"general");return S(h(e,i,t,{databaseDialect:l}),i)}((n=null==K||null==(t=K.options)?void 0:t.type,(null==(l=b.dataSourceManager.collectionFieldInterfaceManager)||null==(r=l.getFieldInterfaces)?void 0:r.call(l,n))||[]),e.collection,b,e.mode,q)},[q,b,null==K||null==(u=K.options)?void 0:u.type,e.collection,e.mode]),_=j((0,o.useState)((null==(d=e.field)?void 0:d.interface)||e.interfaceName||(null==(m=B[0])?void 0:m.name)),2),G=_[0],$=_[1],U=(0,o.useMemo)(function(){return B.find(function(e){return e.name===G})},[B,G]),W=(0,o.useMemo)(function(){var t;return G?null==C||null==(t=C.getFieldInterfaceConfigure)?void 0:t.call(C,G,e.collection):void 0},[C,G,e.collection]),J=(0,o.useMemo)(function(){return U||W?M(T({},U,W),{default:(null==W?void 0:W.default)||(null==U?void 0:U.default),name:(null==W?void 0:W.name)||(null==U?void 0:U.name)}):void 0},[W,U]),X=(0,s.hd)((null==J?void 0:J.title)||G||"-",g),H=(0,s.Ad)((null==J?void 0:J.title)||G||"-",g),Z=(null==W?void 0:W.ConfigureForm)||(null==W?void 0:W.Component),er=(0,o.useMemo)(function(){return(null==W?void 0:W.items)||[]},[null==W?void 0:W.items]),el=j((0,o.useState)([]),2),ea=el[0],eo=el[1],ei=(0,o.useMemo)(function(){return er.some(function(e){var t,n;return z.has(e.name)||(null==(t=e.schema)?void 0:t.enum)==="{{collections}}"||(null==(n=e.schema)?void 0:n.enum)===L||"CollectionSelect"===e.component||"RemoteSelect"===e.component})},[er]),eu=(0,o.useMemo)(function(){return er.some(function(e){return"type"===e.name})},[er]),ec=(0,o.useMemo)(function(){var t=ee(J,e.field,g);return!e.field&&(D.current||(D.current=t.name||(0,r.randomId)("f_")),t.name=D.current,Y(t,er),((null==U?void 0:U.isAssociation)||(null==W?void 0:W.isAssociation))&&!(0,k.get)(t,"source")&&(0,k.set)(t,"source",e.collection.name)),t},[null==W?void 0:W.isAssociation,er,null==U?void 0:U.isAssociation,J,e.collection.name,e.field,g]),es=(0,o.useMemo)(function(){var t;return en({mode:e.mode,dataSourceKey:e.dataSourceKey,collectionName:e.collection.name,fieldName:null==(t=e.field)?void 0:t.name,interfaceName:G})},[G,e.collection.name,e.dataSourceKey,null==(p=e.field)?void 0:p.name,e.mode]),em=(0,o.useMemo)(function(){return{createOnly:"create"===e.mode,editMainOnly:"edit"===e.mode,createMainOnly:"create"===e.mode&&"main"===e.dataSourceKey,disabledJSONB:"edit"===e.mode,isDialect:function(e){return q===e},primaryKeyOnly:!1}},[q,e.dataSourceKey,e.mode]),ef=(0,o.useRef)(),ep=(0,o.useRef)();(0,o.useEffect)(function(){P.current!==es&&(P.current=es,ep.current=(0,k.cloneDeep)(ec),ef.current=(0,k.cloneDeep)(ec),F.resetFields(),F.setFieldsValue(ec))},[F,ec,es]);var ev=a.Form.useWatch([],F)||F.getFieldsValue(!0),eg=(0,o.useMemo)(function(){return JSON.stringify(ev)},[ev]);(0,o.useEffect)(function(){if(ep.current){var e=ep.current;if((0,k.get)(ev,"name")!==(0,k.get)(e,"name")||(0,k.get)(ev,"interface")!==(0,k.get)(e,"interface")||(0,k.get)(ev,"type")!==(0,k.get)(e,"type"))return;ep.current=void 0,ef.current=(0,k.cloneDeep)(ev),(0,f.runCoreFieldConfigureEffects)(Q(F,ev,em));return}var t=ef.current||{};if(!ef.current){ef.current=(0,k.cloneDeep)(ev),(0,f.runCoreFieldConfigureEffects)(Q(F,ev,em));return}var n=["primaryKey","unique","autoIncrement","autoCreateReverseField","defaultToCurrentTime","uiSchema.x-component-props.picker","uiSchema.x-component-props.showTime"].find(function(e){return(0,k.get)(t,e)!==(0,k.get)(ev,e)});ef.current=(0,k.cloneDeep)(ev),(0,f.runCoreFieldConfigureEffects)(Q(F,ev,em,n))},[em,F,ev,eg]),(0,o.useEffect)(function(){if(ei){var t=!1;return O(function(){var n;return R(this,function(r){switch(r.label){case 0:return[4,b.api.request({url:"dataSources/".concat(e.dataSourceKey,"/collections:list"),params:{paginate:!1,sort:["sort"],filter:{"hidden.$isFalsy":!0},appends:["fields"]}})];case 1:var l,a;return n=r.sent(),t||eo(Array.isArray(a=null==n||null==(l=n.data)?void 0:l.data)?a:Array.isArray(null==a?void 0:a.data)?a.data:[]),[2]}})})(),function(){t=!0}}},[b.api,ei,e.dataSourceKey]),(0,o.useEffect)(function(){var t;!G&&e.interfaceName?$(e.interfaceName):!G&&(null==(t=B[0])?void 0:t.name)&&$(B[0].name)},[B,G,e.interfaceName]);var eb=(0,o.useCallback)(function(t){var n,l=B.find(function(e){return e.name===t}),a=null==C||null==(n=C.getFieldInterfaceConfigure)?void 0:n.call(C,t,e.collection),o=F.getFieldValue(["uiSchema","title"]),i=ee(M(T({},l,a),{default:(null==a?void 0:a.default)||(null==l?void 0:l.default),name:(null==a?void 0:a.name)||(null==l?void 0:l.name)}),void 0,g);Y(i,(null==a?void 0:a.items)||[]),((null==l?void 0:l.isAssociation)||(null==a?void 0:a.isAssociation))&&!(0,k.get)(i,"source")&&(0,k.set)(i,"source",e.collection.name),o&&(0,k.set)(i,"uiSchema.title",o);var u=F.getFieldValue("name");F.isFieldTouched("name")&&u?(0,k.set)(i,"name",u):(D.current||(D.current=i.name||(0,r.randomId)("f_")),(0,k.set)(i,"name",D.current)),P.current=en({mode:e.mode,dataSourceKey:e.dataSourceKey,collectionName:e.collection.name,interfaceName:t}),$(t),F.resetFields(),F.setFieldsValue(i)},[C,B,F,e.collection,e.dataSourceKey,e.mode,g]),eh=(0,o.useCallback)(function(t){var n,r,l={mode:e.mode,fieldInterface:J,collection:e.collection,field:e.field,createOnly:"create"===e.mode,editMainOnly:"edit"===e.mode,disabledJSONB:"edit"===e.mode},a=(null==W?void 0:W.normalizeValues)?W.normalizeValues(t,l):(null==W?void 0:W.normalize)?W.normalize(t,l):t,o=(0,k.cloneDeep)(a);return o.autoCreateReverseField?(0,k.get)(o,"reverseField.uiSchema.title")||(0,k.set)(o,"reverseField.uiSchema.title",(0,k.get)(o,"uiSchema.title")):delete o.reverseField,delete o.autoCreateReverseField,null==U||null==(n=U.initialize)||n.call(U,o),null==W||null==(r=W.initialize)||r.call(W,o,l),o},[W,U,J,e.collection,e.field,e.mode]),eS=(0,o.useCallback)(function(){return O(function(){var t,n,l,a,o,i,u;return R(this,function(c){switch(c.label){case 0:return c.trys.push([0,8,9,10]),l=F.getFieldsValue(!0),"create"===e.mode&&!F.isFieldTouched("name")&&function(e,t){var n=null==e?void 0:e.name;if(!n)return!0;var r=(0,k.get)(e,"uiSchema.title"),l=et(n);return n===r||n===t||!!l&&(l===et(r)||l===et(t))}(l,H)&&(D.current||(D.current=(0,r.randomId)("f_")),F.setFieldValue("name",D.current)),[4,F.validateFields()];case 1:return a=c.sent(),[4,null==W||null==(t=W.validate)?void 0:t.call(W,a,{mode:e.mode,fieldInterface:J,collection:e.collection,field:e.field,createOnly:"create"===e.mode,editMainOnly:"edit"===e.mode,disabledJSONB:"edit"===e.mode})];case 2:if(c.sent(),o=eh(a),A(!0),"create"!==e.mode)return[3,4];return[4,b.api.request({url:y(e.dataSourceKey,e.collection.name,"create"),method:"post",data:o})];case 3:return c.sent(),[3,6];case 4:return[4,b.api.request({url:y(e.dataSourceKey,e.collection.name,"update",null==(i=e.field)?void 0:i.name),method:"post",data:o})];case 5:c.sent(),c.label=6;case 6:return[4,null==(n=b.dataSourceManager.getDataSource(e.dataSourceKey))?void 0:n.reload()];case 7:return c.sent(),e.onSubmitted(),[3,10];case 8:var s,d,m,f;throw Array.isArray(null==(s=u=c.sent())?void 0:s.errorFields)||E.error({message:(d=g("Submit failed"),"string"==typeof(f=(null==(m=(0,k.get)(u,"response.data.errors"))?void 0:m.map(function(e){return e.message}).filter(Boolean).join("\n"))||(0,k.get)(u,"response.data.message")||(0,k.get)(u,"message"))&&f?f:d)}),u;case 9:return A(!1),[7];case 10:return[2]}})})()},[W,b.api,b.dataSourceManager,J,H,F,eh,E,e,g]),eE=(0,s.Ad)((0,k.get)(e.collection,"title")||e.collection.name,g),ew="".concat(eE," - ").concat("create"===e.mode?g("Add field"):g("Edit field")),eC=new Set((e.collection.fields||[]).map(function(e){return e.name}));return i().createElement(f.DrawerFormLayout,{title:ew,onSubmit:eS,submitting:x,submitText:g("Submit"),cancelText:g("Cancel")},i().createElement(a.Form,{form:F,layout:"vertical",initialValues:ec,autoComplete:"off"},i().createElement(ed,{fieldInterface:J,label:g("Field interface"),fallbackTitle:X}),e.interfaceName||"create"!==e.mode?i().createElement(a.Form.Item,{name:"interface",hidden:!0,rules:[{required:!0}]},i().createElement(a.Input,null)):i().createElement(a.Form.Item,{name:"interface",label:g("Field interface"),rules:[{required:!0}]},i().createElement(a.Select,{options:B.map(function(e){return{value:e.name,label:(0,s.hd)(e.title||e.name,g)}}),onChange:eb})),i().createElement(a.Form.Item,{name:["uiSchema","title"],label:g("Field display name"),rules:[{required:!0}]},i().createElement(a.Input,{autoComplete:"off"})),i().createElement(a.Form.Item,{name:"name",label:g("Field name"),rules:[{required:!0},{pattern:"tableoid"===G?/^__collection$/:V,message:g(N)},{validator:function(t,n){return"edit"!==e.mode&&n&&eC.has(n)?Promise.reject(Error(g("Field name already exists"))):Promise.resolve()}}],extra:g(N)},i().createElement(a.Input,{autoComplete:"off",disabled:"edit"===e.mode||"tableoid"===G})),i().createElement(ey,{items:er,collection:e.collection,collections:ea,fieldInterface:J,form:F,context:em}),eu?null:i().createElement(a.Form.Item,{name:"type",hidden:!0,rules:[{required:!0}]},i().createElement(a.Input,null)),Z&&W?i().createElement(Z,{mode:e.mode,fieldInterface:W,collection:e.collection,field:e.field,createOnly:"create"===e.mode,editMainOnly:"edit"===e.mode,disabledJSONB:"edit"===e.mode}):null,i().createElement(a.Form.Item,{name:"description",label:g("Description")},i().createElement(a.Input.TextArea,{autoSize:{minRows:4,maxRows:8}}))))}function eb(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,l,a,o){try{var i=e[a](o),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,l)}function eS(e){return function(){var t=this,n=arguments;return new Promise(function(r,l){var a=e.apply(t,n);function o(e){eh(a,r,l,o,i,"next",e)}function i(e){eh(a,r,l,o,i,"throw",e)}o(void 0)})}}function eE(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}function ew(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function eC(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,l=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=l){var a=[],o=!0,i=!1;try{for(l=l.call(e);!(o=(n=l.next()).done)&&(a.push(n.value),!t||a.length!==t);o=!0);}catch(e){i=!0,r=e}finally{try{o||null==l.return||l.return()}finally{if(i)throw r}}return a}}(e,t)||eF(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 eF(e,t){if(e){if("string"==typeof e)return eb(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 eb(e,t)}}function ek(e,t){var n,r,l,a={label:0,sent:function(){if(1&l[0])throw l[1];return l[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(o,"next",{value:u(0)}),i(o,"throw",{value:u(1)}),i(o,"return",{value:u(2)}),"function"==typeof Symbol&&i(o,Symbol.iterator,{value:function(){return this}}),o;function u(i){return function(u){var c=[i,u];if(n)throw TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(l=2&c[0]?r.return:c[0]?r.throw||((l=r.return)&&l.call(r),0):r.next)&&!(l=l.call(r,c[1])).done)return l;switch(r=0,l&&(c=[2&c[0],l.value]),c[0]){case 0:case 1:l=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(!(l=(l=a.trys).length>0&&l[l.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!l||c[1]>l[0]&&c[1]<l[3])){a.label=c[1];break}if(6===c[0]&&a.label<l[1]){a.label=l[1],l=c;break}if(l&&a.label<l[2]){a.label=l[2],a.ops.push(c);break}l[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],r=0}finally{n=l=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}var eI={basic:{label:"Basic",order:1},choices:{label:"Choices",order:20},media:{label:"Media",order:40},datetime:{label:"Date & Time",order:80},relation:{label:"Relation",order:100},advanced:{label:"Advanced type",order:200},systemInfo:{label:"System info",order:400},others:{label:"Others",order:800}};function ex(e,t){var n,r=e.dataSourceManager.collectionFieldInterfaceManager;return(null==r||null==(n=r.getFieldInterfaces)?void 0:n.call(r,t))||[]}function eO(e,t,n,r){var l,a=n.app.pm.get(v.v);return h(e,null==a||null==(l=a.getCollectionTemplate)?void 0:l.call(a,t.template||"general"),t,{databaseDialect:r})}function eA(e,t){return(null==e?void 0:e.title)||(null==e?void 0:e.label)||t||(null==e?void 0:e.name)}function eT(e){var t,n=null==(t=e.uiSchema)?void 0:t.title;return"string"==typeof n?n:null==n?e.name:String(n)}function eM(e){var t=eC((0,o.useState)(eT(e.record)),2),n=t[0],r=t[1];(0,o.useEffect)(function(){r(eT(e.record))},[e.record]);var l=(0,o.useCallback)(function(){var t=eT(e.record),l=n.trim();l&&l!==t?e.onSave(e.record,l).catch(function(){r(t)}):r(t)},[e,n]);return i().createElement(a.Input,{disabled:e.loading,value:n,onBlur:l,onChange:function(e){return r(e.target.value)},onPressEnter:function(e){return e.currentTarget.blur()},suffix:e.loading?i().createElement(a.Spin,{size:"small"}):null})}function eD(e){return"view"===e.template||e.view}function ej(e,t){var n,r=e.app.pm.get(v.v);return null==r||null==(n=r.getCollectionTemplate)?void 0:n.call(r,t.template||"general")}function eP(e){var t=e||{};return t.rawTitle,function(e,t){if(null==e)return{};var n,r,l,a={};if("u">typeof Reflect&&Reflect.ownKeys){for(l=0,n=Reflect.ownKeys(Object(e));l<n.length;l++)r=n[l],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}if(a=function(e,t){if(null==e)return{};var n,r,l={},a=Object.getOwnPropertyNames(e);for(r=0;r<a.length;r++)n=a[r],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(l[n]=e[n]);return l}(e,t),Object.getOwnPropertySymbols)for(l=0,n=Object.getOwnPropertySymbols(e);l<n.length;l++)r=n[l],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}(t,["rawTitle"])}function eK(e){return Array.isArray(e)?e.filter(Boolean):"string"==typeof e?e.split(".").filter(Boolean):[]}function eR(e){var t=eK(e);return t.length?t.join("."):null}function eq(e){var t,n=(0,c.kj)(),l=(0,r.useFlowContext)(),u=a.App.useApp().message,d=eC(a.Form.useForm(),1)[0],m=eC((0,o.useState)([]),2),p=m[0],v=m[1],y=eC((0,o.useState)(!1),2),g=y[0],b=y[1],h=eC((0,o.useState)([]),2),S=h[0],E=h[1],w=eC((0,o.useState)(!1),2),C=w[0],F=w[1],k=eC((0,o.useState)(!1),2),I=k[0],x=k[1],O=eC((0,o.useState)([]),2),A=O[0],T=O[1],M=eC((0,o.useState)([]),2),D=M[0],j=M[1],P=l.dataSourceManager.getDataSource("main"),K=(t=e.collection).viewName||t.name,R=(0,o.useMemo)(function(){var e=[];return D.forEach(function(t){var r=null==P?void 0:P.getCollection(t);if(r){var l=r.getFields().filter(function(e){return!["hasOne","hasMany","belongsToMany"].includes(e.type)}).map(function(e){var t,r;return{value:e.name,label:(0,s.hd)((null==(t=(r=(null==e?void 0:e.options)||e||{}).uiSchema)?void 0:t.title)||r.title||r.name,n)}});e.push({value:t,label:(0,s.hd)(r.title||r.name,n),children:l})}}),e},[P,D,n]),q=(0,o.useMemo)(function(){return p.filter(function(e){return e.source||e.interface}).map(function(e){var t;return{title:(0,s.hd)((null==(t=e.uiSchema)?void 0:t.title)||e.name,n),dataIndex:e.name,key:e.name,width:200,ellipsis:!0,render:function(e){return null==e?null:(void 0===e?"undefined":e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e)=="object"?JSON.stringify(e):String(e)}}})},[p,n]),V=(0,o.useCallback)(function(t){return eS(function(){var n,r,a,o;return ek(this,function(i){switch(i.label){case 0:F(!0),i.label=1;case 1:return i.trys.push([1,,3,4]),r=["lineString","point","circle","polygon"],a=t.reduce(function(e,t){return t.type&&r.includes(t.type)&&(e[t.name]=t.type),e},{}),[4,l.api.resource("dbViews").query({filterByTk:K,schema:e.collection.schema,fieldTypes:a})];case 2:return E((null==(o=i.sent())||null==(n=o.data)?void 0:n.data)||[]),[3,4];case 3:return F(!1),[7];case 4:return[2]}})})()},[l.api,e.collection.schema,K]);(0,o.useEffect)(function(){var t=!1;return eS(function(){var n,r,a,o;return ek(this,function(i){switch(i.label){case 0:b(!0),i.label=1;case 1:return i.trys.push([1,,4,5]),[4,l.api.resource("dbViews").get({filterByTk:K,schema:e.collection.schema})];case 2:var u,c,s,m,f;if(n=i.sent(),t)return[2];return r={fields:(c=(null==n||null==(u=n.data)?void 0:u.data)||(null==n?void 0:n.data)||n||{}).fields,sources:c.sources,unsupportedFields:c.unsupportedFields},f=new Map(((m={currentFields:e.currentFields,fieldInterfacesByName:e.fieldInterfacesByName,inferredFields:(s=r.fields)?(Array.isArray(s)?s:Object.values(s)).filter(Boolean):[]}).currentFields||[]).map(function(e){return[e.name,e]})),a=m.inferredFields.map(function(e){var t,n,r,l=f.get(e.name)||e,a=m.fieldInterfacesByName[l.interface||e.interface||""],o=(null==a||null==(t=a.default)?void 0:t.uiSchema)||{},i=(null==(n=l.uiSchema)?void 0:n.title)||l.title||(null==(r=e.uiSchema)?void 0:r.title)||e.name,u=ew(eE({},eP(o),eP(l.uiSchema||e.uiSchema)),{title:i});return e.source?ew(eE({},e),{interface:e.interface||l.interface,type:e.type||l.type,uiSchema:u}):ew(eE({},e,l),{uiSchema:u})}),o=Array.isArray(r.sources)?r.sources:[],v(a),T(Array.isArray(r.unsupportedFields)?r.unsupportedFields:[]),j(o),d.setFieldsValue({fields:a.map(function(e){return ew(eE({},e),{source:eR(e.source)})}),schema:e.collection.schema,sources:o,viewName:K}),[4,V(a)];case 3:return i.sent(),[3,5];case 4:return t||b(!1),[7];case 5:return[2]}})})(),function(){t=!0}},[l.api,d,V,e.collection.schema,e.currentFields,e.fieldInterfacesByName,K]);var N=(0,o.useCallback)(function(e,t){var n=function(e){if(Array.isArray(e))return eb(e)}(p)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(p)||eF(p)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}();n[e]=t,v(n),d.setFieldValue("fields",n.map(function(e){return ew(eE({},e),{source:eR(e.source)})}))},[p,d]),B=(0,o.useMemo)(function(){return[{title:n("Field name"),dataIndex:"name",width:130},{title:n("Field source"),dataIndex:"source",width:220,render:function(e,t,r){return i().createElement(a.Cascader,{allowClear:!0,options:R,value:eK(t.source),style:{width:"100%"},placeholder:n("Select field source"),onChange:function(e){var n,l,a,o=(e||[]).map(String),i=o.length?null==P||null==(n=P.getCollectionField(o.join(".")))?void 0:n.options:void 0;N(r,ew(eE({},t),{interface:(null==i?void 0:i.interface)||t.interface,source:o,type:(null==i?void 0:i.type)||t.type,uiSchema:ew(eE({},t.uiSchema,null==i?void 0:i.uiSchema),{title:(null==i||null==(l=i.uiSchema)?void 0:l.title)||(null==(a=t.uiSchema)?void 0:a.title)||t.name})}))}})}},{title:n("Field type"),dataIndex:"type",width:140,render:function(e,t,n){var r;return!t.source&&(null==(r=t.possibleTypes)?void 0:r.length)?i().createElement(a.Select,{value:e,style:{width:"100%"},popupMatchSelectWidth:!1,options:t.possibleTypes.map(function(e){return{label:e,value:e}}),onChange:function(e){return N(n,ew(eE({},t),{type:e}))}}):i().createElement(a.Tag,null,e)}},{title:n("Field interface"),dataIndex:"interface",width:170,render:function(t,r,l){var o,u;return r.source?i().createElement(a.Tag,null,(0,s.hd)(eA(e.fieldInterfacesByName[t],t),n)):i().createElement(a.Select,{allowClear:!0,value:t||void 0,style:{width:"100%"},popupMatchSelectWidth:!1,options:(o=e.fieldInterfaceGroups,u=r.type,o.filter(function(e){return!["relation","systemInfo"].includes(e.key)}).map(function(e){return{label:e.label,options:e.children.filter(function(e){var t,n;return!u||(null==(t=e.availableTypes)?void 0:t.includes(u))||(null==(n=e.default)?void 0:n.type)===u}).map(function(e){return{label:e.title||e.label||e.name,value:e.name}})}}).filter(function(e){return e.options.length})).map(function(e){return{label:(0,s.hd)(e.label,n),options:e.options.map(function(e){return{value:e.value,label:(0,s.hd)(e.label,n)}})}}),onChange:function(t){var n,a,o,i,u,c=e.fieldInterfacesByName[t];N(l,ew(eE({},r),{interface:t||null,type:(null==c||null==(n=c.default)?void 0:n.type)||r.type,uiSchema:ew(eE({},null==c||null==(a=c.default)?void 0:a.uiSchema),{title:(null==c||null==(i=c.default)||null==(o=i.uiSchema)?void 0:o.title)||(null==(u=r.uiSchema)?void 0:u.title)||r.name})}))}})}},{title:n("Field display name"),dataIndex:["uiSchema","title"],width:200,render:function(e,t,n){var r;return i().createElement(a.Input,{value:(null==(r=t.uiSchema)?void 0:r.title)||t.name,onChange:function(e){return N(n,ew(eE({},t),{uiSchema:ew(eE({},eP(t.uiSchema)),{title:e.target.value})}))}})}}]},[N,P,e.fieldInterfaceGroups,e.fieldInterfacesByName,R,n]),z=(0,o.useCallback)(function(){return eS(function(){var t,r;return ek(this,function(a){switch(a.label){case 0:return[4,d.validateFields()];case 1:a.sent(),t=d.getFieldsValue(!0),x(!0),a.label=2;case 2:return a.trys.push([2,,5,6]),[4,l.api.resource("collections").setFields({filterByTk:e.collection.name,values:{fields:t.fields,schema:t.schema,sources:t.sources,viewName:t.viewName}})];case 3:return a.sent(),[4,null==(r=l.dataSourceManager.getDataSource("main"))?void 0:r.reload()];case 4:return a.sent(),e.onSubmitted(),u.success(n("Sync successfully")),[3,6];case 5:return x(!1),[7];case 6:return[2]}})})()},[l.api,l.dataSourceManager,d,u,e,n]);return i().createElement(f.DrawerFormLayout,{title:n("Sync from database"),submitting:I,submitText:n("Submit"),cancelText:n("Cancel"),onSubmit:z},i().createElement(a.Spin,{spinning:g},i().createElement(a.Form,{form:d,layout:"vertical"},p.length?i().createElement(a.Form.Item,{label:n("Fields")},i().createElement(a.Table,{bordered:!0,columns:B,dataSource:p,pagination:!1,rowKey:"name",scroll:{y:300},size:"middle"})):null,A.length?i().createElement(a.Alert,{showIcon:!0,type:"warning",message:n("Unsupported fields"),description:A.map(function(e){return e.name}).join(", ")}):null,i().createElement(a.Form.Item,{label:n("Preview")},i().createElement(a.Spin,{spinning:C},i().createElement(a.Table,{bordered:!0,columns:q,dataSource:S,pagination:!1,rowKey:function(e,t){return String(null!=t?t:0)},scroll:{x:1e3,y:300},size:"middle"}))))))}function eV(e){var t,n,u,m,p,g,b,h,E,w,C,F,k,I,x,O,A,T,M,D,j,P,K=(0,c.kj)(),R=(0,r.useFlowContext)(),q=(0,f.useCurrentAppInfo)(),V=a.App.useApp(),N=V.message,B=V.modal,z=V.notification,L=eC((0,o.useState)([]),2),_=L[0],G=L[1],$=eC((0,o.useState)(e.collection.titleField),2),U=$[0],W=$[1],J=eC((0,o.useState)(),2),X=J[0],H=J[1],Z=eC((0,o.useState)(),2),Y=Z[0],Q=Z[1],ee=eC((0,o.useState)(!1),2),et=ee[0],en=ee[1],er=(0,l.useRequest)(function(){return eS(function(){return ek(this,function(t){switch(t.label){case 0:return[4,R.api.request({url:y(e.dataSourceKey,e.collection.name,"list"),params:{paginate:!1,filter:JSON.stringify({$or:[{"interface.$not":null},{"options.source.$notEmpty":!0}]}),sort:["sort"]}})];case 1:var n,r,l;return[2,Array.isArray(l=null==(n=t.sent())||null==(r=n.data)?void 0:r.data)?l:[]]}})})()});(0,o.useEffect)(function(){W(e.collection.titleField)},[e.collection.titleField]);var el=R.dataSourceManager.getDataSource(e.dataSourceKey),ea=null==(A=R.app.pm.get(v.v))||null==(O=A.getType)?void 0:O.call(A,null==el||null==(x=el.options)?void 0:x.type),eo="main"===e.dataSourceKey,ei=(null==q||null==(h=q.database)?void 0:h.dialect)||(null==q||null==(w=q.data)||null==(E=w.database)?void 0:E.dialect),eu=(0,o.useMemo)(function(){var e,t,n,r,l,a,o;return t=null==el||null==(e=el.options)?void 0:e.type,r=R.dataSourceManager.collectionFieldInterfaceManager,l=ex(R,t),a=eE({},eI,(null==r||null==(n=r.getFieldInterfaceGroups)?void 0:n.call(r))||{}),o=l.reduce(function(e,t){if(t.hidden)return e;var n=t.group||"basic";return e[n]=e[n]||[],e[n].push(t),e},{}),Object.keys(a).map(function(e){return ew(eE({},a[e]),{key:e,children:(o[e]||[]).sort(function(e,t){var n,r;return(null!=(n=e.order)?n:0)-(null!=(r=t.order)?r:0)})})}).filter(function(e){return e.children.length}).sort(function(e,t){var n,r;return(null!=(n=e.order)?n:0)-(null!=(r=t.order)?r:0)})},[R,null==el||null==(T=el.options)?void 0:T.type]),ec=(0,o.useMemo)(function(){var t,n,r,l,a,o;return function(e,t,n){var r,l,a,o="function"==typeof(null==t?void 0:t.createFieldInterfaces)?t.createFieldInterfaces({collection:n}):null==t?void 0:t.createFieldInterfaces;if(!o)return e;var i=(null==(r=o.groups)?void 0:r.length)?new Set(o.groups):null,u=(null==(l=o.include)?void 0:l.length)?new Set(o.include):null,c=(null==(a=o.exclude)?void 0:a.length)?new Set(o.exclude):null;return e.map(function(e){return ew(eE({},e),{children:i&&!i.has(e.key)?[]:e.children.filter(function(e){return!(u&&!u.has(e.name)||(null==c?void 0:c.has(e.name)))})})}).filter(function(e){return e.children.length})}((t=e.collection,n=eu.map(function(e){return ew(eE({},e),{children:eO(e.children,t,R,ei)})}).filter(function(e){return e.children.length}),r=e.collection,o=null==(a=R.app.pm.get(v.v))||null==(l=a.getCollectionTemplate)?void 0:l.call(a,r.template||"general"),n.map(function(e){return ew(eE({},e),{children:S(e.children,o)})}).filter(function(e){return e.children.length})),ea,e.collection)},[eu,ei,R,ea,e.collection]),es=(0,o.useMemo)(function(){var t;return eO(ex(R,null==el||null==(t=el.options)?void 0:t.type),e.collection,R,ei).reduce(function(e,t){return e[t.name]=t,e},{})},[ei,R,null==el||null==(M=el.options)?void 0:M.type,e.collection]),ed=(0,o.useMemo)(function(){var e,t,n,r;return n=(null==(t=R.app.pm.get(v.v))||null==(e=t.getCollectionPresetFields)?void 0:e.call(t))||[],r=new Set,n.forEach(function(e){var t,n,l=(null==(t=e.value)?void 0:t.interface)||(null==(n=e.value)?void 0:n.name);l&&r.add(l)}),r},[R]),em=(0,o.useCallback)(function(t,n,r){R.viewer.drawer({width:800,closable:!0,content:function(){return i().createElement(eg,{mode:t,dataSourceKey:e.dataSourceKey,collection:e.collection,interfaceName:r,field:n,onSubmitted:function(){return er.refresh()}})}})},[R.viewer,e.collection,e.dataSourceKey,er]),ef=(0,o.useMemo)(function(){return{style:{maxHeight:"60vh",overflow:"auto"},items:ec.map(function(e){return{type:"group",key:e.key,label:(0,s.hd)(e.label,K),children:e.children.map(function(e){return{key:e.name,label:(0,s.hd)(eA(e),K)}})}}),onClick:function(e){return em("create",void 0,String(e.key))}}},[ec,em,K]),ep=(0,o.useMemo)(function(){return ej(R,e.collection)},[R,e.collection]),ev=null==ep||null==(j=ep.configure)||null==(D=j.syncFields)?void 0:D.Component,ey=(0,o.useCallback)(function(){ev&&R.viewer.drawer({width:900,closable:!0,content:function(){return i().createElement(ev,{collection:e.collection,dataSourceKey:e.dataSourceKey,onSubmitted:function(){er.refresh()}})}})},[ev,R.viewer,e.collection,e.dataSourceKey,er]),eb=(0,o.useCallback)(function(){R.viewer.drawer({width:900,closable:!0,content:function(){return i().createElement(eq,{collection:e.collection,currentFields:er.data||e.collection.fields||[],fieldInterfaceGroups:eu,fieldInterfacesByName:es,onSubmitted:function(){er.refresh()}})}})},[eu,R.viewer,es,e.collection,er]),eh=(0,o.useCallback)(function(t){B.confirm({title:K("Delete record"),content:K("Are you sure you want to delete it?"),onOk:function(){return eS(function(){var n;return ek(this,function(r){switch(r.label){case 0:return[4,Promise.all((Array.isArray(t)?t:[t]).map(function(t){return R.api.request({url:y(e.dataSourceKey,e.collection.name,"destroy",String(t)),method:"post"})}))];case 1:return r.sent(),[4,null==(n=R.dataSourceManager.getDataSource(e.dataSourceKey))?void 0:n.reload()];case 2:return r.sent(),G([]),er.refresh(),[2]}})})()}})},[R.api,R.dataSourceManager,B,e.collection.name,e.dataSourceKey,er,K]),eF=(0,o.useCallback)(function(t,n){return eS(function(){var r,l,a,o,i;return ek(this,function(u){switch(u.label){case 0:return i=(o=(null==(a=n?es[n]:void 0)?void 0:a.default)||{}).uiSchema?ew(eE({},o.uiSchema),{title:o.uiSchema.title||(null==(r=t.uiSchema)?void 0:r.title)}):t.uiSchema,[4,R.api.request({url:y(e.dataSourceKey,e.collection.name,"update",t.name),method:"post",data:ew(eE({},t,o),{name:t.name,interface:n||null,type:o.type||t.type,uiSchema:i})})];case 1:return u.sent(),[4,null==(l=R.dataSourceManager.getDataSource(e.dataSourceKey))?void 0:l.reload()];case 2:return u.sent(),er.refresh(),[2]}})})()},[R.api,R.dataSourceManager,es,e.collection.name,e.dataSourceKey,er]),eK=(0,o.useCallback)(function(t,n){return eS(function(){var r,l,a;return ek(this,function(o){switch(o.label){case 0:if(!(r=n.trim()))throw N.error(K("Field display name is required")),Error("Field display name is required");Q(t.name),o.label=1;case 1:return o.trys.push([1,4,5,6]),[4,R.api.request({url:y(e.dataSourceKey,e.collection.name,"update",t.name),method:"post",data:ew(eE({},t),{uiSchema:ew(eE({},eP(t.uiSchema)),{title:r})})})];case 2:return o.sent(),[4,null==(l=R.dataSourceManager.getDataSource(e.dataSourceKey))?void 0:l.reload()];case 3:return o.sent(),er.refresh(),N.success(K("Saved successfully")),[3,6];case 4:var i,u,c,s;throw a=o.sent(),z.error({message:(i=K("Save failed"),"string"==typeof(s=(Array.isArray(null==(c=null==a||null==(u=a.response)?void 0:u.data)?void 0:c.errors)?c.errors.map(function(e){return e.message}).filter(Boolean).join("\n"):void 0)||(null==c?void 0:c.message)||(null==a?void 0:a.message))&&s?s:i)}),a;case 5:return Q(void 0),[7];case 6:return[2]}})})()},[R.api,R.dataSourceManager,N,z,e.collection.name,e.dataSourceKey,er,K]),eR=(0,o.useCallback)(function(t,n){return eS(function(){var r,l;return ek(this,function(a){switch(a.label){case 0:r=n?t.name:"id",H(t.name),a.label=1;case 1:var o;return a.trys.push([1,,4,5]),[4,R.api.request({url:"main"===(o=e.dataSourceKey)?"collections:update":"dataSources/".concat(o,"/collections:update"),method:"post",params:{filterByTk:e.collection.name},data:{titleField:r}})];case 2:return a.sent(),W(r),[4,null==(l=R.dataSourceManager.getDataSource(e.dataSourceKey))?void 0:l.reload()];case 3:return a.sent(),N.success(K("Saved successfully")),[3,5];case 4:return H(void 0),[7];case 5:return[2]}})})()},[R.api,R.dataSourceManager,N,e.collection.name,e.dataSourceKey,K]),eV=(0,o.useCallback)(function(){return eS(function(){var t;return ek(this,function(n){switch(n.label){case 0:if(ev)return ey(),[2];if(eD(e.collection))return eb(),[2];en(!0),n.label=1;case 1:return n.trys.push([1,,4,5]),[4,R.api.resource("mainDataSource").syncFields({values:{collections:[e.collection.name]}})];case 2:return n.sent(),er.refresh(),[4,null==(t=R.dataSourceManager.getDataSource("main"))?void 0:t.reload()];case 3:return n.sent(),N.success(K("Sync successfully")),[3,5];case 4:return en(!1),[7];case 5:return[2]}})})()},[R.api,R.dataSourceManager,N,ey,eb,e.collection,er,ev,K]),eN=(t=e.dataSourceKey,n=e.collection,u=R,eD(n)?"main"===t:!!((b=null==(g=ej((m={collection:n,ctx:u,dataSourceKey:t}).ctx,m.collection))||null==(p=g.configure)?void 0:p.syncFields)&&("function"==typeof b.visible?b.visible({collection:m.collection,dataSourceKey:m.dataSourceKey}):!1!==b.visible))||"db2cm"!==n.from&&"main"===t),eB=!!(null==ea?void 0:ea.disableConfigureFields),ez=eo&&!eB,eL=!(null==(I=null==(k=(C={collection:e.collection,ctx:R,dataSourceType:null==el||null==(P=el.options)?void 0:P.type,fieldInterfaceGroups:ec}).ctx.app.pm.get(v.v))||null==(F=k.getType)?void 0:F.call(k,C.dataSourceType))?void 0:I.disableConfigureFields)&&!(null==I?void 0:I.disableAddFields)&&"sql"!==C.collection.template&&C.fieldInterfaceGroups.length>0;(0,o.useEffect)(function(){ez||G([])},[ez]);var e_=(0,o.useMemo)(function(){var t=[{title:K("Field display name"),width:240,render:function(e){return eB?(0,s.hd)(eT(e),K):i().createElement(eM,{loading:Y===e.name,record:e,onSave:eK})}},{title:K("Field name"),dataIndex:"name"},{title:K("Field type"),dataIndex:"type",render:function(e){return i().createElement(a.Tag,null,e)}},{title:K("Field interface"),dataIndex:"interface",width:180,render:function(t,n){var r,l,o,u,c,d,m=t?es[t]:void 0,f=eu.map(function(e){return ew(eE({},e),{children:e.children.filter(function(e){var t,r;return e.name===n.interface||(null==(t=e.availableTypes)?void 0:t.includes(n.type))||(null==(r=e.default)?void 0:r.type)===n.type})})}).filter(function(e){return"sort"===n.type?"advanced"===e.key&&e.children.length:e.children.length});if(eB||t&&!m||("boolean"==typeof(d=null==(o=(r={collection:e.collection,currentFieldInterface:m,dataSourceType:ea,presetFieldInterfaces:ed}).dataSourceType)||null==(l=o.isFieldInterfaceReadOnly)?void 0:l.call(o,{collection:r.collection,field:n,fieldInterface:r.currentFieldInterface}))?d:!!(n.source||(null==(u=r.currentFieldInterface)?void 0:u.isAssociation)||(null==(c=r.currentFieldInterface)?void 0:c.group)==="systemInfo"||r.presetFieldInterfaces.has(n.interface)))||!f.length)return i().createElement(a.Tag,null,(0,s.hd)(eA(m,t),K)||t);var p=f.map(function(e){return{label:(0,s.hd)(e.label,K),options:e.children.map(function(e){return{value:e.name,label:(0,s.hd)(eA(e),K)}})}}).filter(function(e){return e.options.length});return i().createElement(a.Select,{allowClear:!0,value:t||void 0,style:{width:"100%"},popupMatchSelectWidth:!1,options:p,onChange:function(e){return eF(n,e)}})}},{title:K("Title field"),dataIndex:"titleField",width:120,render:function(e,t){return(0,f.isTitleField)(R.dataSourceManager,t)?i().createElement(a.Tooltip,{title:K("Default title for each record"),placement:"right"},i().createElement(a.Switch,{"aria-label":"switch-title-field-".concat(t.name),size:"small",disabled:eB,loading:t.name===X,checked:t.name===(U||"id"),onChange:function(e){return eR(t,e)}})):null}},{title:K("Description"),dataIndex:"description",ellipsis:!0}];return eB||t.push({title:K("Actions"),width:160,render:function(e,t){return i().createElement(a.Space,null,i().createElement("a",{onClick:function(){return em("edit",t)}},K("Edit")),ez?i().createElement("a",{onClick:function(){return eh(t.name)}},K("Delete")):null)}}),t},[eu,eB,ez,R.dataSourceManager,ea,es,eh,eK,eF,eR,em,ed,e.collection,K,Y,U,X]);return i().createElement(i().Fragment,null,i().createElement("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginBottom:16}},i().createElement(a.Space,null,ez?i().createElement(a.Button,{icon:i().createElement(d.DeleteOutlined,null),disabled:!_.length,onClick:function(){return eh(_)}},K("Delete")):null,eN?i().createElement(a.Button,{icon:i().createElement(d.SyncOutlined,null),loading:et,onClick:eV},K("Sync from database")):null,eL?i().createElement(a.Dropdown,{menu:ef,placement:"bottomRight",trigger:["hover"]},i().createElement(a.Button,{type:"primary",icon:i().createElement(d.PlusOutlined,null)},K("Add field")," ",i().createElement(d.DownOutlined,null))):null)),i().createElement(f.Table,{rowKey:"name",loading:er.loading,dataSource:er.data||[],columns:e_,pagination:!1,rowSelection:ez?{selectedRowKeys:_,onChange:G}:void 0}))}function eN(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 eB(e,t,n,r,l,a,o){try{var i=e[a](o),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,l)}function ez(e){return function(){var t=this,n=arguments;return new Promise(function(r,l){var a=e.apply(t,n);function o(e){eB(a,r,l,o,i,"next",e)}function i(e){eB(a,r,l,o,i,"throw",e)}o(void 0)})}}function eL(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}function e_(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function eG(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,l=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=l){var a=[],o=!0,i=!1;try{for(l=l.call(e);!(o=(n=l.next()).done)&&(a.push(n.value),!t||a.length!==t);o=!0);}catch(e){i=!0,r=e}finally{try{o||null==l.return||l.return()}finally{if(i)throw r}}return a}}(e,t)||eU(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 e$(e){return function(e){if(Array.isArray(e))return eN(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||eU(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function eU(e,t){if(e){if("string"==typeof e)return eN(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 eN(e,t)}}function eW(e,t){var n,r,l,a={label:0,sent:function(){if(1&l[0])throw l[1];return l[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(o,"next",{value:u(0)}),i(o,"throw",{value:u(1)}),i(o,"return",{value:u(2)}),"function"==typeof Symbol&&i(o,Symbol.iterator,{value:function(){return this}}),o;function u(i){return function(u){var c=[i,u];if(n)throw TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(l=2&c[0]?r.return:c[0]?r.throw||((l=r.return)&&l.call(r),0):r.next)&&!(l=l.call(r,c[1])).done)return l;switch(r=0,l&&(c=[2&c[0],l.value]),c[0]){case 0:case 1:l=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(!(l=(l=a.trys).length>0&&l[l.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!l||c[1]>l[0]&&c[1]<l[3])){a.label=c[1];break}if(6===c[0]&&a.label<l[1]){a.label=l[1],l=c;break}if(l&&a.label<l[2]){a.label=l[2],a.ops.push(c);break}l[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],r=0}finally{n=l=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}var eJ=["default","red","orange","yellow","green","cyan","blue","purple"],eX={default:"Default",red:"Red",orange:"Orange",yellow:"Yellow",green:"Green",cyan:"Cyan",blue:"Blue",purple:"Purple"};function eH(e){var t=(0,m.useDraggable)({id:String(e.item.id),data:e.item}),n=t.attributes,r=t.listeners,l=t.setNodeRef;return i().createElement("div",eL({ref:l},r,n),e.children)}function eZ(e){var t=(0,m.useDroppable)({id:String(e.item.id),data:e.item}),n=t.isOver,r=t.setNodeRef;return i().createElement("div",{ref:r,style:n?{color:"green"}:void 0},e.children)}function eY(e){var t=(0,c.kj)();return i().createElement(a.Space,{size:6},i().createElement(a.Badge,{color:"default"===e.item.color?void 0:e.item.color}),(0,s.hd)(e.item.name||e.item.id,t),i().createElement(a.Dropdown,{menu:{items:[{key:"edit",label:t("Edit category")},{key:"delete",label:t("Delete category")}],onClick:function(t){var n=t.key;(t.domEvent.stopPropagation(),"edit"===n)?e.onEdit(e.item):e.onDelete(e.item)}},trigger:["click"]},i().createElement(a.Button,{"aria-label":t("Edit category"),icon:i().createElement(d.MenuOutlined,null),size:"small",type:"text",onClick:function(e){return e.stopPropagation()}})))}function eQ(e){return i().createElement(eZ,{item:e.item},i().createElement(eH,{item:e.item},i().createElement(eY,{item:e.item,onDelete:e.onDelete,onEdit:e.onEdit})))}function e0(e){var t=e.children,n=e.onSort,r=eG((0,o.useState)(),2),l=r[0],a=r[1],u=(0,m.useSensors)((0,m.useSensor)(m.MouseSensor,{activationConstraint:{distance:10}})),c=(0,o.useCallback)(function(e){a(e.active.data.current)},[]),s=(0,o.useCallback)(function(e){return ez(function(){var t,r,l,o;return eW(this,function(i){switch(i.label){case 0:if(t=e.active,r=e.over,a(void 0),!r||r.id===t.id||(l=t.data.current,o=r.data.current,!l||!o))return[2];return[4,n(l,o)];case 1:return i.sent(),[2]}})})()},[n]);return i().createElement(m.DndContext,{sensors:u,onDragStart:c,onDragEnd:s},t,i().createElement(m.DragOverlay,{dropAnimation:null},l?i().createElement("span",{style:{whiteSpace:"nowrap"}},i().createElement(eY,{item:l,onDelete:function(){},onEdit:function(){}})):null))}function e1(e){return[{value:"$includes",label:e("contains")},{value:"$notIncludes",label:e("does not contain")},{value:"$eq",label:e("is")},{value:"$ne",label:e("is not")}]}var e2=function(e){var t=e.value,n=e.onChange;return i().createElement(a.Input,{style:{minWidth:180},value:null!=t?t:"",onChange:function(e){return n(e.target.value)}})},e4=function(e){var t=e.value,n=e.onChange,l=(0,c.kj)(),o=(0,r.useFlowContext)().app.pm.get(v.v).getCollectionTemplates();return i().createElement(a.Select,{style:{minWidth:220},value:t,options:o.map(function(e){return{value:e.name,label:(0,s.hd)(e.title,l)}}),onChange:function(e){return n(e)},allowClear:!0})};function e3(e){var t,n=null==e||null==(t=e.data)?void 0:t.data;return Array.isArray(n)?n:Array.isArray(null==n?void 0:n.data)?n.data:[]}function e6(){return{hidden:{$isFalsy:!0}}}function e5(e){var t,n=Array.isArray(t=e.filterTargetKey)?t.filter(Boolean).map(String):t?[String(t)]:void 0;if(null==n?void 0:n.length)return n;if(Array.isArray(e.fields)){var r=e.fields.filter(function(e){return(null==e?void 0:e.primaryKey)&&(null==e?void 0:e.name)}).map(function(e){return String(e.name)});return 1===r.length?r:void 0}}var e8=(0,r.observer)(function(e){var t,n,r,l=e.value,u=(0,c.kj)(),s=(t=(0,c.kj)(),(0,o.useMemo)(function(){return[{name:"title",title:t("Collection display name"),operators:e1(t),RenderValue:e2},{name:"name",title:t("Collection name"),operators:e1(t),RenderValue:e2},{name:"template",title:t("Collection template"),operators:[{value:"$eq",label:t("is")},{value:"$ne",label:t("is not")}],RenderValue:e4},{name:"description",title:t("Description"),operators:e1(t),RenderValue:e2}]},[t])),d=s.find(function(e){return e.name===l.path}),m=null!=(n=null==d?void 0:d.operators)?n:[],f=null!=(r=null==d?void 0:d.RenderValue)?r:e2,p=(0,o.useMemo)(function(){return s.map(function(e){return{value:e.name,label:e.title}})},[s]);return i().createElement(a.Space,{style:{flex:1},wrap:!0},i().createElement(a.Select,{style:{minWidth:180},placeholder:u("Select field"),value:l.path||void 0,options:p,onChange:function(e){var t,n,r=s.find(function(t){return t.name===e});l.path=e,l.operator=null!=(t=null==r||null==(n=r.operators[0])?void 0:n.value)?t:"",l.value=void 0}}),i().createElement(a.Select,{style:{minWidth:140},placeholder:u("Comparison"),value:l.operator||void 0,options:m,disabled:!l.path,onChange:function(e){l.operator=e,l.value=void 0}}),i().createElement(f,{value:l.value,onChange:function(e){return l.value=e}}))},{displayName:"CollectionFilterItem"}),e7=(0,r.observer)(function(e){var t=e.value,n=e.onSubmit,r=e.onReset,l=(0,c.kj)(),u=eG((0,o.useState)(!1),2),s=u[0],m=u[1],p=(0,o.useMemo)(function(){return{model:{translate:function(e){return l(e)},dispatchEvent:function(e){"submit"===e&&(n(),m(!1)),"reset"===e&&r()}}}},[r,n,l]),v=t.items.length,y=v?l("{{count}} filter items").replace("{{count}}",String(v)):l("Filter");return i().createElement(a.Popover,{open:s,onOpenChange:m,trigger:"click",placement:"bottomLeft",content:i().createElement("div",{style:{minWidth:560}},i().createElement(f.FilterContent,{value:t,ctx:p,FilterItem:e8}))},i().createElement(a.Button,{icon:i().createElement(d.FilterOutlined,null),type:v?"primary":"default"},y))},{displayName:"CollectionFilterPopover"});function e9(e){return e.name||e.value.name}function te(e){var t,n=null==(t=e.collection)?void 0:t.options;return"function"==typeof n?n():n||("function"==typeof e.defaultValues?e.defaultValues():e.defaultValues||{})}function tt(e,t){var n;return!!(null==e||null==(n=e.capabilities)?void 0:n[t])}var tn=function(e){var t=e.template,n=(0,c.kj)(),r=a.theme.useToken().token,l=(0,o.useMemo)(function(){return{container:{backgroundColor:r.colorFillAlter,marginBottom:r.marginLG,padding:r.paddingSM+r.paddingXXS},title:{color:r.colorText},description:{color:r.colorTextDescription,marginTop:r.marginXS},tag:{background:"none"}}},[r.colorFillAlter,r.colorText,r.colorTextDescription,r.marginLG,r.marginXS,r.paddingSM,r.paddingXXS]);return t?i().createElement("div",{style:l.container},i().createElement("div",{style:l.title},n("Collection template"),": ",i().createElement(a.Tag,{style:l.tag},(0,s.hd)(t.title,n))),t.description?i().createElement("div",{style:l.description},(0,s.hd)(t.description,n)):null):null},tr=function(e){var t,n=e.form,r=e.mode,l=e.template,o=(0,c.kj)(),u=(null==(t=l.configure)?void 0:t.items)||[];return u.length?i().createElement(i().Fragment,null,u.map(function(e,t){var u="function"==typeof e.hidden?e.hidden({mode:r,template:l,form:n}):!!e.hidden,c=e.Component;if(u||!c){if(u||!e.name)return null;var d=(0,s.hd)(e.label||e.name,o),m=e.required?[{required:!0}]:void 0,f=e.componentProps||{},p=i().createElement(a.Input,f);return("Input.TextArea"===e.component&&(p=i().createElement(a.Input.TextArea,eL({autoSize:{minRows:3,maxRows:8}},f))),"Select"===e.component&&(p=i().createElement(a.Select,eL({options:(e.options||[]).map(function(e){return{value:e.value,label:(0,s.hd)(e.label,o)}})},f))),"Checkbox"===e.component)?i().createElement(a.Form.Item,{key:e.name||t,name:e.name,valuePropName:"checked",rules:m},i().createElement(a.Checkbox,f,d)):i().createElement(a.Form.Item,{key:e.name||t,name:e.name,label:d,rules:m},p)}return c?i().createElement(c,{key:e.name||t,mode:r,template:l,form:n,item:e}):null})):null},tl=function(e){var t=e.form,n=(0,c.kj)(),r=a.Form.useWatch("fields",t),l=(0,o.useMemo)(function(){return(Array.isArray(r)?r:[]).filter(function(e){return null==e?void 0:e.name}).map(function(e){var t;return{value:e.name,label:(0,s.hd)((null==(t=e.uiSchema)?void 0:t.title)||e.title||e.name,n)}})},[r,n]);return i().createElement(a.Form.Item,{name:"filterTargetKey",label:n("Record unique key"),extra:n("If a collection lacks a primary key, you must configure a unique record key to locate row records within a block, failure to configure this will prevent the creation of data blocks for the collection.")},i().createElement(a.Select,{mode:"multiple",options:l,allowClear:!0}))};function ta(e){var t,n=e.activeCategoryKey,u=e.categories,d=e.onSubmitted,m=e.template,p=(0,c.kj)(),y=(0,r.useFlowContext)(),g=y.app.pm.get(v.v),b=eG(a.Form.useForm(),1)[0],h=(0,o.useMemo)(function(){return g.getCollectionPresetFields()},[g]),S=eG((0,o.useState)(!1),2),E=S[0],w=S[1],C="sql"===m.name,F="view"===m.name,k=eG((0,o.useState)(function(){return C||F?[]:h.filter(function(e){return!1!==e.defaultSelected}).map(function(e){return e9(e)})}),2),I=k[0],x=k[1],O=(0,l.useRequest)(function(){return ez(function(){return eW(this,function(e){switch(e.label){case 0:return[4,y.api.request({url:"dataSources/main/collections:list",params:{paginate:!1,sort:["sort"],filter:JSON.stringify(e6())}})];case 1:return[2,e3(e.sent())]}})})()}),A=(0,o.useMemo)(function(){return(O.data||[]).filter(function(e){return e.name}).map(function(e){return{value:e.name,label:(0,s.hd)(e.title||e.name,p)}})},[O.data,p]),T=(0,o.useMemo)(function(){return e_(eL({},te(m)),{template:m.name,name:(0,r.randomId)("t_"),category:"all"===n?[]:[n]})},[n,m]),M=(0,o.useMemo)(function(){var e;return new Set((null==(e=m.presetFields)?void 0:e.disabledIncludes)||m.presetFieldsDisabledIncludes||[])},[m]),D=(0,o.useMemo)(function(){var e;return e=y.dataSourceManager.collectionFieldInterfaceManager,h.map(function(t){var n,r,l,a=t.value.interface?null==e||null==(n=e.getFieldInterface)?void 0:n.call(e,t.value.interface):void 0,o=(null==(r=t.value.uiSchema)?void 0:r.title)||(null==a?void 0:a.title),i=t.field||(null==(l=t.value.uiSchema)?void 0:l.title)||t.value.name,u=t.interfaceLabel||(null==a?void 0:a.title)||t.value.interface||t.value.type;return{name:e9(t),field:(0,s.sZ)(i,o),interfaceLabel:(0,s.sZ)(u,null==a?void 0:a.title),description:t.description}})},[h,y.dataSourceManager.collectionFieldInterfaceManager]),j=(0,o.useMemo)(function(){return[{title:p("Field"),dataIndex:"field",render:function(e){return(0,s.hd)(e,p)}},{title:p("Interface"),dataIndex:"interfaceLabel",render:function(e){return i().createElement(a.Tag,null,(0,s.hd)(e,p))}},{title:p("Description"),dataIndex:"description",render:function(e){return(0,s.hd)(e,p)}}]},[p]),P=(null==(t=m.configure)?void 0:t.Form)||m.ConfigureForm,K=i().createElement(a.Form.Item,{name:"category",label:p("Categories")},i().createElement(a.Select,{mode:"multiple",options:u.map(function(e){return{value:String(e.id),label:(0,s.hd)(e.name||e.id,p)}}),allowClear:!0})),R=i().createElement(a.Form.Item,{name:"description",label:p("Description")},i().createElement(a.Input.TextArea,{autoSize:{minRows:3,maxRows:8}})),q=(0,o.useCallback)(function(){return ez(function(){var e,t;return eW(this,function(n){switch(n.label){case 0:return[4,b.validateFields()];case 1:e=function(e){var t,n,r,l,a,o,i,u=e.fieldInterfaceManager,c=e.formValues,s=e.presetFields,d=e.selectedPresetFields,m=e.template,p=te(m),v=Array.isArray(p.fields)?p.fields:[],y=(0,f.normalizeCollectionTemplateFields)(Array.isArray(c.fields)?c.fields:[],u,{collectionInfo:e_(eL({},p,c),{template:m.name})}),g=(0,f.normalizeCollectionTemplateFields)(e$(v).concat(e$("function"==typeof(n=null==(t=m.collection)?void 0:t.fields)?n():n||[])),u,{collectionInfo:e_(eL({},p,c),{template:m.name})}),b=e_(eL({autoGenId:!1,view:!1},p,c),{template:m.name,logging:!0,category:null==(r=c.category)?void 0:r.map(function(e){if("string"!=typeof e)return e;var t=Number(e);return Number.isSafeInteger(t)&&String(t)===e?t:e}),fields:e$(g).concat(e$((l=new Set(d.map(String)),s.filter(function(e){return l.has(e9(e))}).map(function(e){return structuredClone(e.value)}))),e$(y))}),h=null==(o=m.configure)||null==(a=o.transformSubmitValues)?void 0:a.call(o,b);return h||(null==(i=m.beforeSubmit)||i.call(m,b),b)}({template:m,formValues:n.sent(),selectedPresetFields:I,presetFields:h,fieldInterfaceManager:y.dataSourceManager.collectionFieldInterfaceManager}),w(!0),n.label=2;case 2:return n.trys.push([2,,4,5]),[4,y.api.resource("collections").create({values:e})];case 3:return n.sent(),d(),null==(t=y.dataSourceManager.getDataSource("main"))||t.reload(),[3,5];case 4:return w(!1),[7];case 5:return[2]}})})()},[h,y.api,y.dataSourceManager,b,d,I,m]);return i().createElement(f.DrawerFormLayout,{title:p("Create collection"),submitting:E,submitText:p("Submit"),cancelText:p("Cancel"),onSubmit:q},i().createElement(a.Form,{form:b,layout:"vertical",initialValues:T},i().createElement(tn,{template:m}),i().createElement(a.Form.Item,{name:"template",hidden:!0},i().createElement(a.Input,null)),i().createElement(a.Form.Item,{name:"title",label:p("Collection display name"),rules:[{required:!0}]},i().createElement(a.Input,null)),i().createElement(a.Form.Item,{name:"name",label:p("Collection name"),rules:[{required:!0},{pattern:/^[A-Za-z][A-Za-z0-9_]*$/,message:p("Support letters, numbers and underscores, must start with an letter.")}],extra:p("Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.")},i().createElement(a.Input,null)),C?i().createElement(i().Fragment,null,P?i().createElement(P,{mode:"create",template:m,form:b}):null,i().createElement(tr,{mode:"create",template:m,form:b}),tt(m,"recordUniqueKey")?i().createElement(tl,{form:b}):null,K,R):F?i().createElement(i().Fragment,null,P?i().createElement(P,{mode:"create",template:m,form:b}):null,i().createElement(tr,{mode:"create",template:m,form:b}),tt(m,"recordUniqueKey")?i().createElement(tl,{form:b}):null,K,R,i().createElement(a.Form.Item,{name:"simplePaginate",valuePropName:"checked",extra:p("Skip getting the total number of table records during paging to speed up loading. It is recommended to enable this option for data tables with a large amount of data")},i().createElement(a.Checkbox,null,p("Use simple pagination mode")))):i().createElement(i().Fragment,null,i().createElement(a.Form.Item,{name:"inherits",label:p("Inherits")},i().createElement(a.Select,{mode:"multiple",options:A,loading:O.loading,allowClear:!0})),K,R,i().createElement(a.Form.Item,{name:"simplePaginate",valuePropName:"checked",extra:p("Skip getting the total number of table records during paging to speed up loading. It is recommended to enable this option for data tables with a large amount of data")},i().createElement(a.Checkbox,null,p("Use simple pagination mode"))),P?i().createElement(P,{mode:"create",template:m,form:b}):null,i().createElement(tr,{mode:"create",template:m,form:b}),tt(m,"recordUniqueKey")?i().createElement(tl,{form:b}):null,i().createElement(a.Form.Item,{label:p("Preset fields")},i().createElement(f.Table,{size:"small",rowKey:"name",bordered:!0,pagination:!1,dataSource:D,columns:j,rowSelection:{type:"checkbox",selectedRowKeys:I,getCheckboxProps:function(e){var t,n;return{disabled:(null!=(t=null==(n=m.presetFields)?void 0:n.disabled)?t:m.presetFieldsDisabled)||M.has(e.name)}},onChange:function(e){return x(e)}}})))))}function to(e){var t,n=e.categories,u=e.collection,d=e.dataSourceKey,m=e.onSubmitted,p=(0,c.kj)(),g=(0,r.useFlowContext)(),b=g.app.pm.get(v.v),h=eG(a.Form.useForm(),1)[0],S=eG((0,o.useState)(!1),2),E=S[0],w=S[1],C="main"===d,F=(0,o.useMemo)(function(){return b.getCollectionTemplate(u.template||"general")},[u.template,b]),k=(0,l.useRequest)(function(){return ez(function(){return eW(this,function(e){switch(e.label){case 0:return[4,g.api.request({url:"dataSources/".concat(d,"/collections:list"),params:{paginate:!1,sort:["sort"],filter:JSON.stringify(e6())}})];case 1:return[2,e3(e.sent())]}})})()}),I=(0,l.useRequest)(function(){return ez(function(){return eW(this,function(e){switch(e.label){case 0:return[4,g.api.request({url:y(d,u.name,"list"),params:{}})];case 1:return[2,e3(e.sent())]}})})()}),x=(0,o.useMemo)(function(){return(k.data||[]).filter(function(e){return e.name&&e.name!==u.name&&"view"!==e.template&&"file"!==e.template}).map(function(e){return{value:e.name,label:(0,s.hd)(e.title||e.name,p)}})},[u.name,k.data,p]),O=(0,o.useMemo)(function(){var e=Array.isArray(u.fields)&&u.fields.length?u.fields:I.data||[],t=e5(u)||[],n=e.filter(function(e){return!!e.name}).map(function(e){var t;return{value:e.name,label:(0,s.hd)((null==(t=e.uiSchema)?void 0:t.title)||e.name,p)}});return t.forEach(function(e){n.some(function(t){return t.value===e})||n.push({value:e,label:e})}),n},[u,I.data,p]),A=(0,o.useMemo)(function(){return{title:u.title,name:u.name,inherits:Array.isArray(u.inherits)?u.inherits:u.inherits?[u.inherits]:void 0,category:Array.isArray(u.category)?u.category.map(function(e){return String(e.id)}):[],description:u.description,simplePaginate:u.simplePaginate,filterTargetKey:e5(u),databaseView:function(e){var t=e.viewName||e.name;if(t)return e.schema?"".concat(e.schema,"@").concat(t):t}(u),schema:u.schema,viewName:u.viewName||u.name,writableView:u.writableView,sql:u.sql,sources:u.sources,fields:u.fields}},[u]),T=(0,o.useCallback)(function(){return ez(function(){var e,t,n,r;return eW(this,function(l){switch(l.label){case 0:return[4,h.validateFields()];case 1:n=eL({},l.sent()),"sql"===u.template?(n.name=u.name,n.key=u.key):delete n.name,C||(delete n.category,delete n.inherits),n=(null==F||null==(t=F.configure)||null==(e=t.transformSubmitValues)?void 0:e.call(t,n))||n,w(!0),l.label=2;case 2:if(l.trys.push([2,,7,8]),!C)return[3,4];return[4,g.api.resource("sql"===u.template?"sqlCollection":"collections").update({filterByTk:u.name,values:n})];case 3:return l.sent(),[3,6];case 4:return[4,g.api.request({url:"dataSources/".concat(d,"/collections:update"),method:"post",params:{filterByTk:u.name},data:n})];case 5:l.sent(),l.label=6;case 6:return m(),null==(r=g.dataSourceManager.getDataSource(d))||r.reload(),[3,8];case 7:return w(!1),[7];case 8:return[2]}})})()},[u.key,u.name,u.template,g.api,g.dataSourceManager,d,h,C,m,F]);if(!C)return i().createElement(f.DrawerFormLayout,{title:p("Edit collection"),submitting:E,submitText:p("Submit"),cancelText:p("Cancel"),onSubmit:T},i().createElement(a.Form,{form:h,layout:"vertical",initialValues:A},i().createElement(a.Form.Item,{name:"title",label:p("Collection display name"),rules:[{required:!0}]},i().createElement(a.Input,null)),i().createElement(a.Form.Item,{name:"name",label:p("Collection name"),extra:p("Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.")},i().createElement(a.Input,{disabled:!0})),i().createElement(a.Form.Item,{name:"description",label:p("Description")},i().createElement(a.Input.TextArea,{autoSize:{minRows:3,maxRows:8}})),i().createElement(a.Form.Item,{name:"simplePaginate",valuePropName:"checked",extra:p("Skip getting the total number of table records during paging to speed up loading. It is recommended to enable this option for data tables with a large amount of data")},i().createElement(a.Checkbox,null,p("Use simple pagination mode"))),i().createElement(a.Form.Item,{name:"filterTargetKey",label:p("Record unique key"),extra:p("If a collection lacks a primary key, you must configure a unique record key to locate row records within a block, failure to configure this will prevent the creation of data blocks for the collection.")},i().createElement(a.Select,{mode:"multiple",options:O,loading:I.loading,allowClear:!0}))));var M=(null==F||null==(t=F.configure)?void 0:t.Form)||(null==F?void 0:F.ConfigureForm);return i().createElement(f.DrawerFormLayout,{title:p("Edit collection"),submitting:E,submitText:p("Submit"),cancelText:p("Cancel"),onSubmit:T},i().createElement(a.Form,{form:h,layout:"vertical",initialValues:A},i().createElement(tn,{template:F}),i().createElement(a.Form.Item,{name:"title",label:p("Collection display name"),rules:[{required:!0}]},i().createElement(a.Input,null)),i().createElement(a.Form.Item,{name:"name",label:p("Collection name"),extra:p("Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.")},i().createElement(a.Input,{disabled:!0})),C?i().createElement(i().Fragment,null,i().createElement(a.Form.Item,{name:"inherits",label:p("Inherits")},i().createElement(a.Select,{mode:"multiple",options:x,loading:k.loading,allowClear:!0})),i().createElement(a.Form.Item,{name:"category",label:p("Categories")},i().createElement(a.Select,{mode:"multiple",options:n.map(function(e){return{value:String(e.id),label:(0,s.hd)(e.name||e.id,p)}}),allowClear:!0}))):null,i().createElement(a.Form.Item,{name:"description",label:p("Description")},i().createElement(a.Input.TextArea,{autoSize:{minRows:3,maxRows:8}})),i().createElement(a.Form.Item,{name:"simplePaginate",valuePropName:"checked",extra:p("Skip getting the total number of table records during paging to speed up loading. It is recommended to enable this option for data tables with a large amount of data")},i().createElement(a.Checkbox,null,p("Use simple pagination mode"))),tt(F,"recordUniqueKey")?i().createElement(a.Form.Item,{name:"filterTargetKey",label:p("Record unique key"),extra:p("If a collection lacks a primary key, you must configure a unique record key to locate row records within a block, failure to configure this will prevent the creation of data blocks for the collection.")},i().createElement(a.Select,{mode:"multiple",options:O,loading:I.loading,allowClear:!0})):null,F&&M?i().createElement(M,{mode:"edit",template:F,form:h}):null,F?i().createElement(tr,{mode:"edit",template:F,form:h}):null))}var ti=function(e){var t,n,u,m=(0,c.kj)(),y=(0,r.useFlowContext)(),g=a.App.useApp(),b=g.message,h=g.modal,S=y.app.pm.get(v.v),E=eG(a.Form.useForm(),1)[0],w=(0,o.useRef)((0,r.observable)({logic:"$and",items:[]})),C=eG((0,o.useState)(1),2),F=C[0],k=C[1],I=eG((0,o.useState)(f.DEFAULT_PAGE_SIZE),2),x=I[0],O=I[1],A=eG((0,o.useState)("all"),2),T=A[0],M=A[1],D=eG((0,o.useState)(!1),2),j=D[0],P=D[1],K=eG((0,o.useState)(!1),2),R=K[0],q=K[1],V=eG((0,o.useState)(),2),N=V[0],B=V[1],z=eG((0,o.useState)([]),2),L=z[0],_=z[1],G=eG((0,o.useState)(),2),$=G[0],U=G[1],W=eG((0,o.useState)(!1),2),J=W[0],X=W[1],H=eG((0,o.useState)(!1),2),Z=H[0],Y=H[1],Q=eG((0,o.useState)([]),2),ee=Q[0],et=Q[1],en=eG((0,o.useState)([]),2),er=en[0],el=en[1],ea=eG((0,o.useState)([]),2),eo=ea[0],ei=ea[1],eu=eG((0,o.useState)(""),2),ec=eu[0],es=eu[1],ed=eG((0,o.useState)(!1),2),em=ed[0],ef=ed[1],ep="main"===e.dataSourceKey,ev=y.dataSourceManager.getDataSource(e.dataSourceKey),ey=S.getType(null==ev||null==(t=ev.options)?void 0:t.type),eg=null==ey?void 0:ey.AddCollection,eb=null==ey?void 0:ey.EditCollection,eh=null==ey?void 0:ey.DeleteCollection,eS=!!(null==ey?void 0:ey.disableConfigureFields),eE=!eS,ew=!!(!ep&&!eS&&eb),eC=!!(!ep&&!eS&&(null==ey?void 0:ey.allowCollectionCreate)&&eg),eF=!!(!ep&&!eS&&(null==ey?void 0:ey.allowCollectionDeletion)&&eh),ek=(0,o.useMemo)(function(){return S.getCollectionTemplates()},[S]),eI=(0,l.useRequest)(function(){return ez(function(){return eW(this,function(e){switch(e.label){case 0:if(!ep)return[2,[]];return[4,y.api.request({url:"collectionCategories:list",params:{paginate:!1,sort:["sort"]}})];case 1:return[2,e3(e.sent())]}})})()},{refreshDeps:[ep]}),ex=(0,l.useRequest)(function(){return ez(function(){var t;return eW(this,function(n){var r,l,a,o,i,u,c,s,d;switch(n.label){case 0:return r={activeCategoryKey:T,filterPayload:$,isMainDataSource:ep},l=[e6()],r.isMainDataSource&&"all"!==r.activeCategoryKey&&l.push({"category.id":Number.isSafeInteger(o=Number(a=r.activeCategoryKey))&&String(o)===a?o:a}),r.filterPayload&&l.push(r.filterPayload),t=l.length>1?{$and:l}:l[0],[4,y.api.request({url:ep?"collections:list":"dataSources/".concat(e.dataSourceKey,"/collections:list"),params:{page:F,pageSize:x,sort:["sort"],filter:JSON.stringify(t),appends:ep?["fields","category"]:["fields"]}})];case 1:return[2,{records:s=Array.isArray(c=null==(u=null==(i=n.sent())?void 0:i.data)?void 0:u.data)?c:Array.isArray(null==c?void 0:c.data)?c.data:[],total:(d=(null==u?void 0:u.meta)||(null==c?void 0:c.meta)||{}).count||d.total||s.length}]}})})()},{refreshDeps:[T,$,ep,e.dataSourceKey,F,x]}),eO=(0,o.useMemo)(function(){return eI.data||[]},[eI.data]);(0,o.useEffect)(function(){ep&&("all"===T||eO.some(function(e){return String(e.id)===T}))||M("all")},[T,eO,ep]);var eA=(0,o.useCallback)(function(t){y.viewer.drawer({title:i().createElement("span",null,(0,s.hd)(t.title||t.name,m)," - ",m("Configure fields")),width:"80%",closable:!0,content:function(){return i().createElement(eV,{dataSourceKey:e.dataSourceKey,collection:t})}})},[y.viewer,e.dataSourceKey,m]),eT=(0,o.useCallback)(function(e){M(e),k(1)},[]),eM=(0,o.useCallback)(function(){B(void 0),E.setFieldsValue({color:"default"}),P(!0)},[E]),eD=(0,o.useCallback)(function(e){B(e),E.setFieldsValue({name:e.name,color:e.color||"default"}),P(!0)},[E]),ej=(0,o.useCallback)(function(){return ez(function(){var e;return eW(this,function(t){switch(t.label){case 0:return[4,E.validateFields()];case 1:e=t.sent(),q(!0),t.label=2;case 2:if(t.trys.push([2,,7,8]),!N)return[3,4];return[4,y.api.resource("collectionCategories").update({filter:{id:N.id},values:e})];case 3:return t.sent(),[3,6];case 4:return[4,y.api.resource("collectionCategories").create({values:e})];case 5:t.sent(),t.label=6;case 6:return P(!1),B(void 0),E.resetFields(),eI.refresh(),ex.refresh(),[3,8];case 7:return q(!1),[7];case 8:return[2]}})})()},[E,eI,y.api,N,ex]),eP=(0,o.useCallback)(function(e){h.confirm({title:m("Delete category"),content:m("Are you sure you want to delete it?"),onOk:function(){return ez(function(){return eW(this,function(t){switch(t.label){case 0:return[4,y.api.resource("collectionCategories").destroy({filter:{id:e.id}})];case 1:return t.sent(),String(e.id)===T&&M("all"),eI.refresh(),ex.refresh(),[2]}})})()}})},[T,eI,y.api,h,ex,m]),eK=(0,o.useCallback)(function(e,t){return ez(function(){return eW(this,function(n){switch(n.label){case 0:return[4,y.api.resource("collectionCategories").move({sourceId:e.id,targetId:t.id})];case 1:return n.sent(),eI.refresh(),ex.refresh(),[2]}})})()},[eI,y.api,ex]),eR=(0,o.useCallback)(function(e){y.viewer.drawer({width:"50%",closable:!0,content:function(){return i().createElement(ta,{template:e,categories:eO,activeCategoryKey:T,onSubmitted:function(){_([]),ex.refresh()}})}})},[T,eO,y.viewer,ex]),eq=(0,o.useCallback)(function(t){y.viewer.drawer({width:"50%",closable:!0,content:function(){return i().createElement(to,{dataSourceKey:e.dataSourceKey,collection:t,categories:eO,onSubmitted:function(){_([]),ex.refresh()}})}})},[eO,y.viewer,e.dataSourceKey,ex]),eN=(0,o.useCallback)(function(e){var t=Array.isArray(e)?e:[e];if(t.length){var n=!1;h.confirm({closable:!0,icon:i().createElement(d.ExclamationCircleFilled,{style:{color:"#faad14"}}),okText:m("Ok"),cancelText:m("Cancel"),title:m("Delete collection"),width:520,content:i().createElement("div",null,i().createElement("div",null,m("Are you sure you want to delete it?")),i().createElement(a.Checkbox,{style:{marginTop:8},onChange:function(e){return n=e.target.checked}},m("Automatically drop objects that depend on the collection (such as views), and in turn all objects that depend on those objects"))),onOk:function(){return ez(function(){var e;return eW(this,function(r){switch(r.label){case 0:return[4,y.api.resource("collections").destroy({filterByTk:t,cascade:n})];case 1:return r.sent(),_([]),ex.refresh(),null==(e=y.dataSourceManager.getDataSource("main"))||e.reload(),[2]}})})()}})}},[y.api,y.dataSourceManager,h,ex,m]),eB=(0,o.useCallback)(function(e,t){return ez(function(){var n;return eW(this,function(r){switch(r.label){case 0:if(!ep)return[2];return[4,y.api.resource("collections").move({sourceId:e.name,targetId:t.name})];case 1:return r.sent(),b.success(m("Saved successfully")),ex.refresh(),null==(n=y.dataSourceManager.getDataSource("main"))||n.reload(),[2]}})})()},[y.api,y.dataSourceManager,ep,b,ex,m]),eL=(0,o.useCallback)(function(){return ez(function(){var t,n,r,l,a,o,i;return eW(this,function(u){switch(u.label){case 0:if(ep)return ex.refresh(),[2];ef(!0),u.label=1;case 1:return u.trys.push([1,4,5,6]),a=(null==ev?void 0:ev.status)||"loaded",[4,y.api.request({url:"dataSources:refresh?filterByTk=".concat(encodeURIComponent(e.dataSourceKey),"&clientStatus=").concat(encodeURIComponent(a)),method:"post"})];case 2:return"reloading"===(i=(null==(o=u.sent())||null==(n=o.data)||null==(t=n.data)?void 0:t.status)||(null==o||null==(r=o.data)?void 0:r.status))?b.warning(m("Data source synchronization in progress")):"loaded"===i&&(b.success(m("Data source synchronization successful")),ex.refresh()),[4,null==(l=y.dataSourceManager.getDataSource(e.dataSourceKey))?void 0:l.reload()];case 3:return u.sent(),[3,6];case 4:return u.sent(),b.error(m("Data source synchronization failed")),[3,6];case 5:return ef(!1),[7];case 6:return[2]}})})()},[y.api,y.dataSourceManager,null==ev?void 0:ev.status,ep,b,e.dataSourceKey,ex,m]),e_=(0,o.useCallback)(function(){h.confirm({title:m("Sync field changes from database"),content:m("Field synchronization confirmation prompt"),onOk:function(){return ez(function(){var e;return eW(this,function(t){switch(t.label){case 0:return[4,y.api.resource("mainDataSource").syncFields()];case 1:return t.sent(),ex.refresh(),null==(e=y.dataSourceManager.getDataSource("main"))||e.reload(),b.success(m("Sync successfully")),[2]}})})()}})},[y.api,y.dataSourceManager,b,h,ex,m]),eU=(0,o.useCallback)(function(){X(!1),el([]),ei([]),es("")},[]),eH=(0,o.useCallback)(function(){return ez(function(){var e,t,n;return eW(this,function(r){switch(r.label){case 0:X(!0),Y(!0),r.label=1;case 1:return r.trys.push([1,3,4,5]),[4,y.api.resource("dataSources").readTables({values:{dataSourceKey:"main"}})];case 2:return et((Array.isArray(n=null==(t=r.sent())||null==(e=t.data)?void 0:e.data)?n:[]).map(function(e){return{key:e.name,name:e.name,title:e.title||e.name,description:e.description}})),el([]),ei([]),[3,5];case 3:return r.sent(),b.error(m("Failed to load tables")),[3,5];case 4:return Y(!1),[7];case 5:return[2]}})})()},[y.api,b,m]),eZ=(0,o.useCallback)(function(){er.length?h.confirm({title:m("Confirm load tables"),content:m("Are you sure you want to load {{count}} table(s)?").replace("{{count}}",String(er.length)),onOk:function(){return ez(function(){var e;return eW(this,function(t){switch(t.label){case 0:Y(!0),t.label=1;case 1:return t.trys.push([1,3,4,5]),[4,y.api.resource("dataSources").loadTables({values:{dataSourceKey:"main",tables:er}})];case 2:return t.sent(),b.success(m("Tables loaded successfully")),eU(),ex.refresh(),null==(e=y.dataSourceManager.getDataSource("main"))||e.reload(),[3,5];case 3:return t.sent(),b.error(m("Failed to load tables")),[3,5];case 4:return Y(!1),[7];case 5:return[2]}})})()}}):b.warning(m("Please select at least one table"))},[y.api,y.dataSourceManager,b,h,ex,eU,er,m]),eY=(0,o.useCallback)(function(){U((0,p.transformFilter)(w.current)),k(1)},[]),e1=(0,o.useCallback)(function(){w.current.logic="$and",w.current.items.splice(0,w.current.items.length),U(void 0),k(1)},[]),e2=(0,o.useMemo)(function(){if(!ec)return ee;var e=ec.toLowerCase();return ee.filter(function(t){var n;return t.title.toLowerCase().includes(e)||t.name.toLowerCase().includes(e)||(null==(n=t.description)?void 0:n.toLowerCase().includes(e))})},[ee,ec]),e4=(0,o.useMemo)(function(){return[{key:"all",label:m("All collections"),closable:!1}].concat(e$(eO.map(function(e){return{key:String(e.id),label:i().createElement(eQ,{item:e,onDelete:eP,onEdit:eD}),closable:!1}})))},[eO,eP,eD,m]),e5=(0,o.useMemo)(function(){var t=[{title:m("Collection display name"),render:function(e){return(0,s.hd)(e.title||e.name,m)}},{title:m("Collection name"),dataIndex:"name",ellipsis:!0},{title:m("Collection template"),dataIndex:"template",render:function(e){var t,n;return i().createElement(a.Tag,null,(t=e||"general",(n=S.getCollectionTemplate(t))?(0,s.hd)(n.title,m):t))}}];return ep&&"all"===T&&t.push({title:m("Collection category"),dataIndex:"category",render:function(e){return Array.isArray(e)&&e.length?i().createElement(a.Space,{size:[4,4],wrap:!0},e.map(function(e){return i().createElement(a.Tag,{key:e.id,color:"default"===e.color?void 0:e.color},(0,s.hd)(e.name||e.id,m))})):null}}),t.push({title:m("Description"),dataIndex:"description",ellipsis:!0},{title:m("Actions"),width:ep||eE||ew||eF?260:140,render:function(t,n){return i().createElement(a.Space,{size:16},i().createElement("a",{onClick:function(){return eA(n)}},m("Configure fields")),ep?i().createElement(i().Fragment,null,i().createElement("a",{onClick:function(){return eq(n)}},m("Edit")),i().createElement("a",{onClick:function(){return eN(n.name)}},m("Delete"))):i().createElement(i().Fragment,null,ew&&eb?i().createElement(eb,{dataSourceKey:e.dataSourceKey,record:n,onSubmitted:function(){_([]),ex.refresh()}}):eE?i().createElement("a",{onClick:function(){return eq(n)}},m("Edit")):null,eF&&eh?i().createElement(eh,{dataSourceKey:e.dataSourceKey,record:n,onSubmitted:function(){_([]),ex.refresh()}}):null))}}),t},[eb,eh,T,ew,eE,eF,eN,ep,eq,eA,S,e.dataSourceKey,ex,m]);return i().createElement(a.Card,{title:(0,s.hd)(e.title,m),variant:"borderless"},ep?i().createElement(e0,{onSort:eK},i().createElement(a.Tabs,{activeKey:T,type:"editable-card",items:e4,onChange:eT,onEdit:function(e,t){"add"===t&&eM()}})):null,i().createElement(a.Flex,{justify:"space-between",align:"center",style:{marginBottom:16}},i().createElement(e7,{value:w.current,onSubmit:eY,onReset:e1}),i().createElement(a.Space,null,i().createElement(a.Button,{icon:i().createElement(d.ReloadOutlined,null),loading:em,onClick:eL},m("Refresh")),ep?i().createElement(i().Fragment,null,i().createElement(a.Button,{icon:i().createElement(d.DeleteOutlined,null),disabled:!L.length,onClick:function(){return eN(L)}},m("Delete")),i().createElement(a.Dropdown,{placement:"bottomLeft",menu:{items:[{key:"load-tables",icon:i().createElement(d.ImportOutlined,null),label:m("Load tables from database")},{key:"sync-fields",icon:i().createElement(d.ReloadOutlined,null),label:m("Sync field changes from database")}],onClick:function(e){var t=e.key;"load-tables"===t&&eH(),"sync-fields"===t&&e_()}}},i().createElement(a.Button,{icon:i().createElement(d.SyncOutlined,null)},m("Sync from database")," ",i().createElement(d.DownOutlined,null))),i().createElement(a.Dropdown,{menu:{items:ek.flatMap(function(e){var t={key:e.name,label:(0,s.hd)(e.title,m)};return e.divider?[{type:"divider"},t]:[t]}),onClick:function(e){var t=e.key,n=ek.find(function(e){return e.name===t});n&&eR(n)}}},i().createElement(a.Button,{type:"primary",icon:i().createElement(d.PlusOutlined,null)},m("Create collection")," ",i().createElement(d.DownOutlined,null)))):i().createElement(i().Fragment,null,eF&&eh?i().createElement(eh,{dataSourceKey:e.dataSourceKey,selectedRowKeys:L,isBulk:!0,onSubmitted:function(){_([]),ex.refresh()}},m("Delete")):null,eC&&eg?i().createElement(eg,{dataSourceKey:e.dataSourceKey,onSubmitted:function(){_([]),ex.refresh()}}):null))),i().createElement(f.Table,{rowKey:"name",isDraggable:ep,onSortEnd:ep?eB:void 0,loading:ex.loading,dataSource:(null==(n=ex.data)?void 0:n.records)||[],columns:e5,rowSelection:ep||eF?{selectedRowKeys:L,onChange:function(e){return _(e)}}:void 0,pagination:{current:F,pageSize:x,total:null==(u=ex.data)?void 0:u.total,onChange:function(e,t){if(t!==x){O(t),k(1);return}k(e)}}}),i().createElement(a.Modal,{title:N?m("Edit category"):m("Add category"),open:j,confirmLoading:R,okText:m("Submit"),cancelText:m("Cancel"),onOk:ej,onCancel:function(){P(!1),B(void 0),E.resetFields()}},i().createElement(a.Form,{form:E,layout:"vertical",initialValues:{color:"default"}},i().createElement(a.Form.Item,{name:"name",label:m("Category name"),rules:[{required:!0}]},i().createElement(a.Input,null)),i().createElement(a.Form.Item,{name:"color",label:m("Color")},i().createElement(a.Select,{options:eJ.map(function(e){return{value:e,label:i().createElement(a.Tag,{color:"default"===e?void 0:e},m(eX[e]))}})})))),i().createElement(a.Drawer,{title:m("Load tables from database"),placement:"right",width:800,open:J,onClose:eU,footer:i().createElement(a.Flex,{justify:"flex-end",gap:8},i().createElement(a.Button,{onClick:eU},m("Cancel")),i().createElement(a.Button,{type:"primary",loading:Z,disabled:!er.length,onClick:eZ},m("Submit")))},i().createElement(a.Spin,{spinning:Z},i().createElement(a.Transfer,{dataSource:e2,titles:[m("Available tables"),m("Selected tables")],targetKeys:er,selectedKeys:eo,onChange:function(e){return el(e.map(String))},onSelectChange:function(e,t){return ei(e$(e).concat(e$(t)).map(String))},onSearch:function(e,t){return es(t)},render:function(e){return e.title},showSearch:!0,style:{height:"calc(100vh - 160px)"},listStyle:{width:350,height:"calc(100vh - 220px)"},locale:{itemUnit:m("item"),itemsUnit:m("items"),searchPlaceholder:m("Search collections...")}}))))};function tu(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 tc(e,t,n,r,l,a,o){try{var i=e[a](o),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,l)}function ts(){var e=(0,c.kj)(),t=(0,r.useFlowContext)(),n=(0,u.useParams)(),d=function(e){if(e)try{return decodeURIComponent(e)}catch(t){return e}}(n.name||n.dataSourceKey),m=function(e){if(Array.isArray(e))return e}(w=(0,o.useState)("main"))||function(e){var t,n,r=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var l=[],a=!0,o=!1;try{for(r=r.call(e);!(a=(t=r.next()).done)&&(l.push(t.value),2!==l.length);a=!0);}catch(e){o=!0,n=e}finally{try{a||null==r.return||r.return()}finally{if(o)throw n}}return l}}(w)||function(e){if(e){if("string"==typeof e)return tu(e,2);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return tu(e,2)}}(w)||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=m[0],p=m[1],v=d||f,y=(0,l.useRequest)(function(){var e;return(e=function(){return function(e,t){var n,r,l,a={label:0,sent:function(){if(1&l[0])throw l[1];return l[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(o,"next",{value:u(0)}),i(o,"throw",{value:u(1)}),i(o,"return",{value:u(2)}),"function"==typeof Symbol&&i(o,Symbol.iterator,{value:function(){return this}}),o;function u(i){return function(u){var c=[i,u];if(n)throw TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(l=2&c[0]?r.return:c[0]?r.throw||((l=r.return)&&l.call(r),0):r.next)&&!(l=l.call(r,c[1])).done)return l;switch(r=0,l&&(c=[2&c[0],l.value]),c[0]){case 0:case 1:l=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(!(l=(l=a.trys).length>0&&l[l.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!l||c[1]>l[0]&&c[1]<l[3])){a.label=c[1];break}if(6===c[0]&&a.label<l[1]){a.label=l[1],l=c;break}if(l&&a.label<l[2]){a.label=l[2],a.ops.push(c);break}l[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],r=0}finally{n=l=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(e){switch(e.label){case 0:return[4,t.dataSourceManager.ensureLoaded({force:!0,keys:["*"]})];case 1:return e.sent(),[2,t.dataSourceManager.getDataSources()]}})},function(){var t=this,n=arguments;return new Promise(function(r,l){var a=e.apply(t,n);function o(e){tc(a,r,l,o,i,"next",e)}function i(e){tc(a,r,l,o,i,"throw",e)}o(void 0)})})()}),g=(0,o.useMemo)(function(){return y.data||[]},[y.data]),b=(0,o.useMemo)(function(){return g.find(function(e){return e.key===v})},[v,g]),h=(0,o.useCallback)(function(t){return"main"===t.key?e("Main"):(0,s.hd)(t.displayName||t.key,e)},[e]),S=(0,o.useMemo)(function(){return t.app.pluginSettingsManager.getRoutePath("".concat(c.Ji,".list"))},[t.app.pluginSettingsManager]),E=(0,o.useCallback)(function(){t.router.navigate(S)},[t.router,S]);if((0,o.useEffect)(function(){!d&&g.length&&(g.some(function(e){return e.key===v})||p(g[0].key))},[v,g,d]),y.loading)return i().createElement(a.Spin,null);if(d){var w,C,F,k=b?h(b):d;return i().createElement(ti,{dataSourceKey:d,title:i().createElement(a.Breadcrumb,{items:[{title:i().createElement("a",{onClick:E},e("Data sources"))},{title:i().createElement(a.Space,{size:8},i().createElement("span",null,k),(C=null==b?void 0:b.status,(F=({loading:{color:"orange",label:e("Loading")},"loading-failed":{color:"red",label:e("Failed")},loaded:{color:"green",label:e("Loaded")},reloading:{color:"orange",label:e("Reloading")}})[C||""])?i().createElement(a.Tag,{color:F.color},F.label):null))}]})})}return i().createElement(a.Space,{direction:"vertical",size:16,style:{width:"100%"}},i().createElement(a.Select,{style:{width:320},value:v,options:g.map(function(e){return{value:e.key,label:h(e)}}),onChange:p}),v?i().createElement(ti,{dataSourceKey:v}):null)}}}]);
@@ -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
+ "use strict";(self.webpackChunk_nocobase_plugin_data_source_manager_client_v2=self.webpackChunk_nocobase_plugin_data_source_manager_client_v2||[]).push([["426"],{649:function(e,t,n){n.r(t),n.d(t,{default:function(){return I}});var r=n(375),a=n(485),l=n(694),o=n(625),u=n(59),i=n(155),c=n.n(i),s=n(143),d=n(938);function f(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 m(e,t,n,r,a,l,o){try{var u=e[l](o),i=u.value}catch(e){n(e);return}u.done?t(i):Promise.resolve(i).then(r,a)}function p(e){return function(){var t=this,n=arguments;return new Promise(function(r,a){var l=e.apply(t,n);function o(e){m(l,r,a,o,u,"next",e)}function u(e){m(l,r,a,o,u,"throw",e)}o(void 0)})}}function y(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}function b(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function v(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,a=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var l=[],o=!0,u=!1;try{for(a=a.call(e);!(o=(n=a.next()).done)&&(l.push(n.value),!t||l.length!==t);o=!0);}catch(e){u=!0,r=e}finally{try{o||null==a.return||a.return()}finally{if(u)throw r}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return f(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 f(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function g(e,t){var n,r,a,l={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(o,"next",{value:i(0)}),u(o,"throw",{value:i(1)}),u(o,"return",{value:i(2)}),"function"==typeof Symbol&&u(o,Symbol.iterator,{value:function(){return this}}),o;function i(u){return function(i){var c=[u,i];if(n)throw TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(l=0)),l;)try{if(n=1,r&&(a=2&c[0]?r.return:c[0]?r.throw||((a=r.return)&&a.call(r),0):r.next)&&!(a=a.call(r,c[1])).done)return a;switch(r=0,a&&(c=[2&c[0],a.value]),c[0]){case 0:case 1:a=c;break;case 4:return l.label++,{value:c[1],done:!1};case 5:l.label++,r=c[1],c=[0];continue;case 7:c=l.ops.pop(),l.trys.pop();continue;default:if(!(a=(a=l.trys).length>0&&a[a.length-1])&&(6===c[0]||2===c[0])){l=0;continue}if(3===c[0]&&(!a||c[1]>a[0]&&c[1]<a[3])){l.label=c[1];break}if(6===c[0]&&l.label<a[1]){l.label=a[1],a=c;break}if(a&&l.label<a[2]){l.label=a[2],l.ops.push(c);break}a[2]&&l.ops.pop(),l.trys.pop();continue}c=t.call(e,l)}catch(e){c=[6,e],r=0}finally{n=a=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}function h(e){if("string"==typeof e)return e;var t,n,r,a,l,o,u,i,c,s,d=null==e||null==(t=e.response)?void 0:t.data;return(null==e||null==(a=e.errorFields)||null==(r=a[0])||null==(n=r.errors)?void 0:n[0])||(null==d||null==(o=d.errors)||null==(l=o[0])?void 0:l.message)||(null==d||null==(i=d.messages)||null==(u=i[0])?void 0:u.message)||(null==d||null==(c=d.messages)?void 0:c[0])||(null==d||null==(s=d.error)?void 0:s.message)||(null==d?void 0:d.message)||(null==e?void 0:e.message)}function w(e){var t=(0,s.kj)(),n=(0,l.useFlowContext)(),r=(0,l.useFlowView)(),o=u.App.useApp(),f=o.message,m=o.notification,w=v(u.Form.useForm(),1)[0],S=v((0,i.useState)(!1),2),E=S[0],k=S[1],C=v((0,i.useState)(!1),2),O=C[0],A=C[1],j=(0,i.useMemo)(function(){return n.api.resource("dataSources")},[n.api]),_=(0,i.useMemo)(function(){return"create"===e.mode?b(y({},e.type.defaultValues),{type:e.type.name,key:(0,l.randomId)("d_")}):e.initialValues||{}},[e.initialValues,e.mode,e.type]),I=e.type.SettingsForm;(0,i.useEffect)(function(){w.setFieldsValue(_)},[w,_]);var x=(0,i.useCallback)(function(e){return p(function(){var t;return g(this,function(n){switch(n.label){case 0:return[4,j.readTables({values:{dataSourceKey:e}})];case 1:return[2,null==(t=n.sent())?void 0:t.data]}})})()},[j]),P=(0,i.useCallback)(function(t){var n,r,a,l=t.collections||[],o=y({},t.options||{});"string"==typeof o.port&&/^\d+$/.test(o.port.trim())&&(o.port=Number(o.port.trim())),(null==(n=o.ssl)?void 0:n.sslMode)==="disable"&&(o.ssl={sslMode:"disable"});var u=b(y({},t),{options:o,collections:l.filter(function(e){return"string"==typeof e||e.selected}).map(function(e){return"string"==typeof e?e:e.name})});return(null==(r=(a=e.type).normalizeValues)?void 0:r.call(a,u))||u},[e.type]),M=(0,i.useCallback)(function(){return p(function(){var e,n,r;return g(this,function(a){switch(a.label){case 0:A(!0),a.label=1;case 1:return a.trys.push([1,4,5,6]),[4,w.validateFields()];case 2:return e=a.sent(),[4,j.testConnection({values:P(e)})];case 3:var l,o,i,c,s,d,p,y;if(n=(null==(y=null==(l=a.sent())?void 0:l.data)||null==(i=y.errors)||null==(o=i[0])?void 0:o.message)||(null==y||null==(s=y.messages)||null==(c=s[0])?void 0:c.message)||(null==y||null==(d=y.messages)?void 0:d[0])||(null==y||null==(p=y.error)?void 0:p.message)||(null==y?void 0:y.message))throw Error(n);return f.success(t("Connection successful")),[3,6];case 4:return r=h(a.sent())||t("Connection failed"),(m||u.notification).error({message:t("Test Connection"),description:r}),[3,6];case 5:return A(!1),[7];case 6:return[2]}})})()},[w,f,P,m,j,t]),D=(0,i.useCallback)(function(){return p(function(){var n,a,l,o,i;return g(this,function(c){switch(c.label){case 0:return[4,w.validateFields()];case 1:n=P.apply(void 0,[c.sent()]),k(!0),c.label=2;case 2:if(c.trys.push([2,9,10,11]),"create"!==e.mode)return[3,4];return[4,j.create({values:n})];case 3:return l=c.sent(),[3,6];case 4:return[4,j.update({filterByTk:null==(o=e.initialValues)?void 0:o.key,values:n})];case 5:l=c.sent(),c.label=6;case 6:return[4,e.onSubmitted((null==l||null==(a=l.data)?void 0:a.data)||n)];case 7:return c.sent(),[4,r.close()];case 8:return c.sent(),[3,11];case 9:return i=h(c.sent())||t("Submit failed"),(m||u.notification).error({message:t("Submit failed"),description:i}),[3,11];case 10:return k(!1),[7];case 11:return[2]}})})()},[w,P,m,e,j,t,r]),T=(0,d.Ad)(e.type.label||e.type.name,t),F="".concat("create"===e.mode?t("Add new"):t("Edit")," - ").concat(T);return c().createElement(a.DrawerFormLayout,{title:F,onSubmit:D,submitting:E,submitText:t("Submit"),cancelText:t("Cancel"),footer:c().createElement(u.Space,null,e.type.disableTestConnection?null:c().createElement(u.Button,{loading:O,onClick:M},t("Test Connection")),c().createElement(u.Button,{onClick:function(){return r.close()}},t("Cancel")),c().createElement(u.Button,{type:"primary",loading:E,onClick:D},t("Submit")))},c().createElement(u.Form,{form:w,layout:"vertical",initialValues:_},c().createElement(u.Form.Item,{name:"type",hidden:!0},c().createElement(u.Input,null)),c().createElement(u.Form.Item,{name:"key",label:t("Data source name"),rules:[{required:!0,message:t("Data source name")},{pattern:/^[A-Za-z][A-Za-z0-9_]*$/,message:t("Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.")}],extra:t("Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.")},c().createElement(u.Input,{disabled:"edit"===e.mode})),c().createElement(u.Form.Item,{name:"displayName",label:t("Data source display name"),rules:[{required:!0,message:t("Data source display name")}]},c().createElement(u.Input,null)),I?c().createElement(I,{mode:e.mode,type:e.type,initialValues:_,loadCollections:x}):null))}var S=n(890),E=n(448);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 C(e,t,n,r,a,l,o){try{var u=e[l](o),i=u.value}catch(e){n(e);return}u.done?t(i):Promise.resolve(i).then(r,a)}function O(e){return function(){var t=this,n=arguments;return new Promise(function(r,a){var l=e.apply(t,n);function o(e){C(l,r,a,o,u,"next",e)}function u(e){C(l,r,a,o,u,"throw",e)}o(void 0)})}}function A(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,a=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var l=[],o=!0,u=!1;try{for(a=a.call(e);!(o=(n=a.next()).done)&&(l.push(n.value),!t||l.length!==t);o=!0);}catch(e){u=!0,r=e}finally{try{o||null==a.return||a.return()}finally{if(u)throw r}}return l}}(e,t)||j(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function j(e,t){if(e){if("string"==typeof e)return k(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 k(e,t)}}function _(e,t){var n,r,a,l={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(o,"next",{value:i(0)}),u(o,"throw",{value:i(1)}),u(o,"return",{value:i(2)}),"function"==typeof Symbol&&u(o,Symbol.iterator,{value:function(){return this}}),o;function i(u){return function(i){var c=[u,i];if(n)throw TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(l=0)),l;)try{if(n=1,r&&(a=2&c[0]?r.return:c[0]?r.throw||((a=r.return)&&a.call(r),0):r.next)&&!(a=a.call(r,c[1])).done)return a;switch(r=0,a&&(c=[2&c[0],a.value]),c[0]){case 0:case 1:a=c;break;case 4:return l.label++,{value:c[1],done:!1};case 5:l.label++,r=c[1],c=[0];continue;case 7:c=l.ops.pop(),l.trys.pop();continue;default:if(!(a=(a=l.trys).length>0&&a[a.length-1])&&(6===c[0]||2===c[0])){l=0;continue}if(3===c[0]&&(!a||c[1]>a[0]&&c[1]<a[3])){l.label=c[1];break}if(6===c[0]&&l.label<a[1]){l.label=a[1],a=c;break}if(a&&l.label<a[2]){l.label=a[2],l.ops.push(c);break}a[2]&&l.ops.pop(),l.trys.pop();continue}c=t.call(e,l)}catch(e){c=[6,e],r=0}finally{n=a=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}function I(){var e,t,n=(0,s.kj)(),f=(0,l.useFlowContext)(),m=u.App.useApp().modal,p=f.app.pm.get(S.v),y=(0,i.useMemo)(function(){return f.api.resource("dataSources")},[f.api]),b=(0,i.useMemo)(function(){var e;return function(e){if(Array.isArray(e))return k(e)}(e=p.types.values())||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||j(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.")}()},[p]),v=A((0,i.useState)(1),2),g=v[0],h=v[1],C=A((0,i.useState)(a.DEFAULT_PAGE_SIZE),2),I=C[0],x=C[1],P=A((0,i.useState)([]),2),M=P[0],D=P[1],T=(0,o.useRequest)(function(){return O(function(){var e;return _(this,function(t){switch(t.label){case 0:return[4,y.list({page:g,pageSize:I,appends:[]})];case 1:var n,r,a,l,o;return e={records:l=Array.isArray(a=null==(r=null==(n=t.sent())?void 0:n.data)?void 0:r.data)?a:Array.isArray(null==a?void 0:a.data)?a.data:[],total:(o=(null==r?void 0:r.meta)||(null==a?void 0:a.meta)||{}).count||o.total||l.length},(0,E.b)(f.dataSourceManager,e.records),[2,e]}})})()},{refreshDeps:[g,I]}),F=(0,i.useMemo)(function(){var e;return(null==(e=T.data)?void 0:e.records)||[]},[null==(e=T.data)?void 0:e.records]),V=(0,i.useCallback)(function(e,t,n){var r=p.getType(t);r&&f.viewer.drawer({width:650,closable:!0,content:function(){return c().createElement(w,{mode:e,type:r,initialValues:n,onSubmitted:function(e){e&&(0,E.b)(f.dataSourceManager,[e]),T.refresh()}})}})},[f.dataSourceManager,f.viewer,p,T]),R=(0,i.useCallback)(function(e){var t=f.app.pluginSettingsManager.getRoutePath("".concat(s.Ji,".:name/collections")).replace(":name",encodeURIComponent(e.key));f.router.navigate(t)},[f.app.pluginSettingsManager,f.router]),B=(0,i.useCallback)(function(){return O(function(){return _(this,function(e){switch(e.label){case 0:return[4,Promise.all(F.filter(function(e){return"loaded"!==e.status}).map(function(e){return e.key}).map(function(e){var t;return null==(t=f.dataSourceManager.getDataSource(e))?void 0:t.reload()}))];case 1:return e.sent(),T.refresh(),[2]}})})()},[f.dataSourceManager,F,T]),z=(0,i.useCallback)(function(e){var t=Array.isArray(e)?e:[e];m.confirm({title:n("Delete"),content:n("Are you sure you want to delete it?"),onOk:function(){return O(function(){return _(this,function(n){switch(n.label){case 0:return[4,y.destroy({filterByTk:e})];case 1:return n.sent(),(0,E.h)(f.dataSourceManager,t),D([]),T.refresh(),[2]}})})()}})},[f.dataSourceManager,m,T,y,n]),N=(0,i.useMemo)(function(){return[{title:n("Data source name"),dataIndex:"key",ellipsis:!0},{title:n("Data source display name"),dataIndex:"displayName",ellipsis:!0,render:function(e){return(0,d.hd)(e,n)}},{title:n("Type"),dataIndex:"type",render:function(e){var t;return"main"===e?n("Main"):(0,d.hd)((null==(t=p.getType(e))?void 0:t.label)||e||"-",n)}},{title:n("Status"),dataIndex:"status",render:function(e){var t;return t=({loading:{color:"orange",label:n("Loading")},"loading-failed":{color:"red",label:n("Failed")},loaded:{color:"green",label:n("Loaded")},reloading:{color:"orange",label:n("Reloading")}})[e||""]||{color:"default",label:e||"-"},c().createElement(u.Tag,{color:t.color},t.label)}},{title:n("Enabled"),dataIndex:"enabled",render:function(e){return c().createElement(u.Switch,{checked:e,disabled:!0,size:"small"})}},{title:n("Actions"),width:260,render:function(e,t){return c().createElement(u.Space,{size:12,wrap:!0},c().createElement("a",{onClick:function(){return R(t)}},n("Configure")),"main"!==t.key?c().createElement("a",{onClick:function(){return V("edit",t.type||"",t)}},n("Edit")):null,"main"!==t.key?c().createElement("a",{onClick:function(){return z(t.key)}},n("Delete")):null)}}]},[z,R,V,p,n]),L=(0,i.useMemo)(function(){return b.length?b.map(function(e){return{key:e.name||"",label:(0,d.hd)(e.label||e.name,n)}}):[{key:"__empty__",label:c().createElement(u.Empty,{image:u.Empty.PRESENTED_IMAGE_SIMPLE,description:c().createElement("span",null,n("No external data source plugin installed"),c().createElement("br",null),c().createElement("a",{target:"_blank",rel:"noreferrer",href:"zh-CN"===f.api.auth.locale?"https://docs-cn.nocobase.com/handbook/data-source-manager":"https://docs.nocobase.com/handbook/data-source-manager"},n("View documentation")))})}]},[f.api.auth.locale,b,n]);return c().createElement(u.Card,{variant:"borderless"},c().createElement("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginBottom:16}},c().createElement(u.Space,null,c().createElement(u.Button,{icon:c().createElement(r.ReloadOutlined,null),onClick:B},n("Refresh")),c().createElement(u.Button,{icon:c().createElement(r.DeleteOutlined,null),disabled:!M.length,onClick:function(){return z(M)}},n("Delete")),c().createElement(u.Dropdown,{menu:{items:L,onClick:function(e){var t=e.key;"__empty__"!==t&&V("create",t)}}},c().createElement(u.Button,{type:"primary",icon:c().createElement(r.PlusOutlined,null)},n("Add new")," ",c().createElement(r.DownOutlined,null))))),c().createElement(a.Table,{rowKey:"key",loading:T.loading,dataSource:F,columns:N,rowSelection:{selectedRowKeys:M,getCheckboxProps:function(e){return{disabled:"main"===e.key}},onChange:D},pagination:{current:g,pageSize:I,total:null==(t=T.data)?void 0:t.total,onChange:function(e,t){if(t!==I){x(t),h(1);return}h(e)}}}))}}}]);
@@ -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("react-router-dom"),require("@dnd-kit/sortable"),require("dayjs"),require("react"),require("antd"),require("@ant-design/icons"),require("@nocobase/flow-engine"),require("@dnd-kit/core"),require("@nocobase/utils/client"),require("lodash")):"function"==typeof define&&define.amd?define("@nocobase/plugin-data-source-manager/client-v2",["ahooks","@nocobase/client-v2","react-router-dom","@dnd-kit/sortable","dayjs","react","antd","@ant-design/icons","@nocobase/flow-engine","@dnd-kit/core","@nocobase/utils/client","lodash"],t):"object"==typeof exports?exports["@nocobase/plugin-data-source-manager/client-v2"]=t(require("ahooks"),require("@nocobase/client-v2"),require("react-router-dom"),require("@dnd-kit/sortable"),require("dayjs"),require("react"),require("antd"),require("@ant-design/icons"),require("@nocobase/flow-engine"),require("@dnd-kit/core"),require("@nocobase/utils/client"),require("lodash")):e["@nocobase/plugin-data-source-manager/client-v2"]=t(e.ahooks,e["@nocobase/client-v2"],e["react-router-dom"],e["@dnd-kit/sortable"],e.dayjs,e.react,e.antd,e["@ant-design/icons"],e["@nocobase/flow-engine"],e["@dnd-kit/core"],e["@nocobase/utils/client"],e.lodash)}(self,function(e,t,n,r,o,i,a,l,u,c,s,f){return function(){"use strict";var d,p,m,y,b,h={890:function(e,t,n){n.d(t,{A:function(){return en},v:function(){return et}});var r=n(485),o=n(155),i=n.n(o),a=n(143),l=n(694),u=n(625),c=n(59),s=n(773),f=n(938);function d(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,n,r,o,i,a){try{var l=e[i](a),u=l.value}catch(e){n(e);return}l.done?t(u):Promise.resolve(u).then(r,o)}function m(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){p(i,r,o,a,l,"next",e)}function l(e){p(i,r,o,a,l,"throw",e)}a(void 0)})}}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}function b(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){y(e,t,n[t])})}return e}function h(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function v(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 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)||w(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 g(e){return function(e){if(Array.isArray(e))return d(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||w(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function w(e,t){if(e){if("string"==typeof e)return d(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 d(e,t)}}function S(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),l=Object.defineProperty;return l(a,"next",{value:u(0)}),l(a,"throw",{value:u(1)}),l(a,"return",{value:u(2)}),"function"==typeof Symbol&&l(a,Symbol.iterator,{value:function(){return this}}),a;function u(l){return function(u){var c=[l,u];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(i=0)),i;)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 i.label++,{value:c[1],done:!1};case 5:i.label++,r=c[1],c=[0];continue;case 7:c=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){i=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){i.label=c[1];break}if(6===c[0]&&i.label<o[1]){i.label=o[1],o=c;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(c);break}o[2]&&i.ops.pop(),i.trys.pop();continue}c=t.call(e,i)}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 O=new Set(["hasOne","hasMany","belongsToMany"]),j="__viewUnsupportedFields";function k(e){var t=(0,s.get)(e,"data.data");return Array.isArray(t)?t:Array.isArray((0,s.get)(t,"data"))?(0,s.get)(t,"data"):[]}function F(e){var t=e||{};return t.rawTitle,function(e,t){if(null==e)return{};var n,r,o,i={};if("u">typeof Reflect&&Reflect.ownKeys){for(o=0,n=Reflect.ownKeys(Object(e));o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r]);return i}if(i=function(e,t){if(null==e)return{};var n,r,o={},i=Object.getOwnPropertyNames(e);for(r=0;r<i.length;r++)n=i[r],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n]);return o}(e,t),Object.getOwnPropertySymbols)for(o=0,n=Object.getOwnPropertySymbols(e);o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r]);return i}(t,["rawTitle"])}function P(e){return Array.isArray(e)?e.filter(Boolean):"string"==typeof e?e.split(".").filter(Boolean):[]}function A(e){var t=P(e);return t.length?t.join("."):null}function x(e){return(null==e?void 0:e.options)||e||{}}function C(){var e=(0,l.useFlowContext)();return(0,u.useRequest)(function(){return m(function(){return S(this,function(t){switch(t.label){case 0:return[4,e.api.request({url:"dataSources/main/collections:list",params:{paginate:!1,sort:["sort"],filter:{"hidden.$isFalsy":!0},appends:["fields"]}})];case 1:return[2,k(t.sent())]}})})()})}function I(e){var t=(0,l.useFlowContext)(),n=(0,a.kj)(),r=t.dataSourceManager.collectionFieldInterfaceManager,d=(0,o.useRef)(),p=v((0,o.useState)(!1),2),g=p[0],w=p[1],O=c.Form.useWatch("databaseView",e.form),P=c.Form.useWatch("schema",e.form),x=c.Form.useWatch("viewName",e.form),C=(0,o.useMemo)(function(){return O||(x?P?"".concat(P,"@").concat(x):x:void 0)},[O,P,x]),I=(0,o.useMemo)(function(){var e;return((null==r||null==(e=r.getFieldInterfaces)?void 0:e.call(r))||[]).reduce(function(e,t){return t.name&&(e[t.name]=t),e},{})},[r]),E=(0,u.useRequest)(function(){return m(function(){return S(this,function(e){switch(e.label){case 0:return[4,t.api.resource("dbViews").list()];case 1:return[2,k(e.sent())]}})})()}),T=(0,o.useMemo)(function(){var e=(E.data||[]).map(function(e){return{value:e.schema?"".concat(e.schema,"@").concat(e.name):e.name,label:e.schema?"".concat(e.schema,".").concat((0,f.h)(e.name,n)):(0,f.h)(e.name,n)}});return C&&!e.some(function(e){return e.value===C})&&e.unshift({value:C,label:P?"".concat(P,".").concat((0,f.h)(x||C,n)):(0,f.h)(x||C,n)}),e},[C,n,E.data,P,x]),M=(0,o.useCallback)(function(n,r){return m(function(){var o,i,a,l;return S(this,function(u){switch(u.label){case 0:w(!0),u.label=1;case 1:return u.trys.push([1,,3,4]),[4,t.api.resource("dbViews").get({filterByTk:n,schema:r||void 0})];case 2:var c,f,d,p,m;return c=u.sent(),o={fields:(f=(0,s.get)(c,"data.data")||(0,s.get)(c,"data")||c||{}).fields,sources:f.sources,unsupportedFields:f.unsupportedFields},m=new Map(((p={currentFields:Array.isArray(i=e.form.getFieldValue("fields")||[])?i:[],fieldInterfacesByName:I,inferredFields:(d=o.fields)?(Array.isArray(d)?d:Object.values(d)).filter(Boolean):[]}).currentFields||[]).map(function(e){return[e.name,e]})),a=p.inferredFields.map(function(e){var t,n,r,o=m.get(e.name)||e,i=p.fieldInterfacesByName[o.interface||e.interface||""],a=(null==i||null==(t=i.default)?void 0:t.uiSchema)||{},l=(null==(n=o.uiSchema)?void 0:n.title)||o.title||(null==(r=e.uiSchema)?void 0:r.title)||e.name,u=h(b({},F(a),F(o.uiSchema||e.uiSchema)),{title:l});return e.source?h(b({},e),{interface:e.interface||o.interface,type:e.type||o.type,uiSchema:u}):h(b({},e,o),{uiSchema:u})}),l=Array.isArray(o.sources)?o.sources:[],e.form.setFieldsValue(y({fields:a.map(function(e){return h(b({},e),{source:A(e.source)})}),sources:l},j,Array.isArray(o.unsupportedFields)?o.unsupportedFields:[])),[3,4];case 3:return w(!1),[7];case 4:return[2]}})})()},[t.api,I,e.form]),_=(0,o.useCallback)(function(t){var n=function(e){if(!e)return{schema:null,viewName:null};var t=v(e.includes("@")?e.split("@"):[null,e],2);return{schema:t[0]||null,viewName:t[1]||e}}(t),r=n.schema,o=n.viewName;if(e.form.setFieldsValue(y({databaseView:t,schema:r,viewName:o,fields:[],sources:[]},j,[])),o){var i=e.form.getFieldValue("name");(!e.form.isFieldTouched("name")||i===d.current||/^t_[A-Za-z0-9]+$/.test(i))&&(d.current=o,e.form.setFieldValue("name",o)),M(o,r)}},[M,e.form]);return(0,o.useEffect)(function(){!O&&C&&e.form.setFieldValue("databaseView",C)},[C,e.form,O]),i().createElement(c.Spin,{spinning:g},i().createElement(c.Form.Item,{name:"databaseView",label:n("Connect to database view"),rules:[{required:!0,message:n("Please select a database view")}]},i().createElement(c.Select,{allowClear:!0,loading:E.loading,options:T,showSearch:!0,optionFilterProp:"label",disabled:"edit"===e.mode,onChange:_})),i().createElement(c.Form.Item,{name:"schema",hidden:!0},i().createElement(c.Input,null)),i().createElement(c.Form.Item,{name:"viewName",hidden:!0,rules:[{required:!0}]},i().createElement(c.Input,null)))}function E(e){var t=(0,a.kj)(),n=C(),r=c.Form.useWatch("sources",e.form),l=(0,o.useMemo)(function(){return Array.isArray(r)?r:[]},[r]),u=(0,o.useMemo)(function(){var e,r=(e=n.data||[],e.filter(function(e){return e.name}).map(function(e){return{value:e.name,label:(0,f.h)(e.title||e.name,t)}})),o=l.filter(function(e){return!r.some(function(t){return t.value===e})}).map(function(e){return{value:e,label:e}});return g(r).concat(g(o))},[n.data,l,t]);return i().createElement(c.Form.Item,{name:"sources",label:t("Source collections")},i().createElement(c.Select,{mode:"multiple",options:u,loading:n.loading,disabled:!0,allowClear:!0}))}function T(e){var t=(0,l.useFlowContext)(),n=(0,a.kj)(),r=C(),u=t.dataSourceManager.collectionFieldInterfaceManager,s=t.dataSourceManager.getDataSource("main"),d=c.Form.useWatch("fields",e.form),p=c.Form.useWatch("sources",e.form),m=c.Form.useWatch(j,{form:e.form,preserve:!0}),y=(0,o.useMemo)(function(){return Array.isArray(d)?d:[]},[d]),w=(0,o.useMemo)(function(){return Array.isArray(p)?p:[]},[p]),S=(0,o.useMemo)(function(){var e,t,n,r,o;return n=(null==u||null==(e=u.getFieldInterfaceGroups)?void 0:e.call(u))||{},r=(null==u||null==(t=u.getFieldInterfaces)?void 0:t.call(u))||[],o=new Map,r.filter(function(e){return e.name&&!["relation","systemInfo"].includes(String(e.group))}).forEach(function(e){var t=String(e.group||"other"),n=o.get(t)||[];n.push({value:String(e.name),label:e.title||String(e.name),availableTypes:e.availableTypes}),o.set(t,n)}),Array.from(o.entries()).sort(function(e,t){var r,o,i,a,l=v(e,1)[0],u=v(t,1)[0];return(null!=(r=null==(i=n[l])?void 0:i.order)?r:0)-(null!=(o=null==(a=n[u])?void 0:a.order)?o:0)}).map(function(e){var t,r=v(e,2),o=r[0],i=r[1];return{label:(null==(t=n[o])?void 0:t.label)||o,options:i}})},[u]),k=(0,o.useMemo)(function(){return w.map(function(e){return(r.data||[]).find(function(t){return t.name===e})}).filter(Boolean).map(function(e){var t,r=null==s||null==(t=s.getCollection)?void 0:t.call(s,e.name),o="function"==typeof(null==r?void 0:r.getFields)?r.getFields():e.fields||[];return{value:e.name,label:(0,f.h)(e.title||(null==r?void 0:r.title)||e.name,n),children:o.map(x).filter(function(e){return e.name&&!O.has(String(e.type))}).map(function(e){var t,r;return{value:e.name,label:(0,f.h)((null==(t=(r=x(e)).uiSchema)?void 0:t.title)||r.title||r.name,n)}})}})},[r.data,s,w,n]),I=(0,o.useCallback)(function(t,n){var r=g(y);r.splice(t,1,h(b({},n),{source:A(n.source)})),e.form.setFieldValue("fields",r)},[y,e.form]),E=[{title:n("Field name"),dataIndex:"name",width:130},{title:n("Field source"),dataIndex:"source",width:220,render:function(e,t,o){return i().createElement(c.Cascader,{allowClear:!0,options:k,placeholder:n("Select field source"),value:P(e),onChange:function(e){var n,i,a,l=(e||[]).map(String),u=(r.data||[]).find(function(e){return e.name===l[0]}),c=l[0]?null==s||null==(n=s.getCollection)?void 0:n.call(s,l[0]):void 0,f=("function"==typeof(null==c?void 0:c.getFields)?c.getFields().map(x):(null==u?void 0:u.fields)||[]).find(function(e){return e.name===l[1]});I(o,h(b({},t),{source:l,interface:(null==f?void 0:f.interface)||t.interface,type:(null==f?void 0:f.type)||t.type,uiSchema:h(b({},t.uiSchema,null==f?void 0:f.uiSchema),{title:(null==f||null==(i=f.uiSchema)?void 0:i.title)||(null==(a=t.uiSchema)?void 0:a.title)||t.name})}))}})}},{title:n("Field type"),dataIndex:"type",width:140,render:function(e,t,n){var r;return!t.source&&(null==(r=t.possibleTypes)?void 0:r.length)?i().createElement(c.Select,{value:e,style:{width:"100%"},popupMatchSelectWidth:!1,options:t.possibleTypes.map(function(e){return{label:e,value:e}}),onChange:function(e){return I(n,h(b({},t),{type:e}))}}):i().createElement(c.Tag,null,e)}},{title:n("Field interface"),dataIndex:"interface",width:180,render:function(e,t,r){if(t.source){var o,a=null==u||null==(o=u.getFieldInterface)?void 0:o.call(u,e);return i().createElement(c.Tag,null,(0,f.h)((null==a?void 0:a.title)||e,n))}return i().createElement(c.Select,{allowClear:!0,popupMatchSelectWidth:!1,style:{width:"100%"},options:S.map(function(e){return{label:(0,f.h)(e.label,n),options:e.options.filter(function(e){var n;return!t.type||(null==(n=e.availableTypes)?void 0:n.includes(t.type))}).map(function(e){return{value:e.value,label:(0,f.h)(e.label,n)}})}}),value:e||void 0,onChange:function(e){var n,o,i,a,l,c,s=null==u||null==(n=u.getFieldInterface)?void 0:n.call(u,e);I(r,h(b({},t),{interface:e||null,type:(null==s||null==(o=s.default)?void 0:o.type)||t.type,uiSchema:h(b({},null==s||null==(i=s.default)?void 0:i.uiSchema),{title:(null==s||null==(l=s.default)||null==(a=l.uiSchema)?void 0:a.title)||(null==(c=t.uiSchema)?void 0:c.title)||t.name})}))}})}},{title:n("Field display name"),dataIndex:["uiSchema","title"],width:180,render:function(e,t,n){var r;return i().createElement(c.Input,{value:(null==(r=t.uiSchema)?void 0:r.title)||t.name,onChange:function(e){I(n,h(b({},t),{uiSchema:h(b({},F(t.uiSchema)),{title:e.target.value})}))}})}}];return r.loading?i().createElement(c.Spin,null):i().createElement(i().Fragment,null,i().createElement(c.Form.Item,{name:"fields",hidden:!0,rules:[{required:!0}]},i().createElement(c.Input,null)),y.length?i().createElement(c.Form.Item,{label:n("Fields"),required:!0,extra:n("Fields can only be used correctly if they are defined with an interface.")},i().createElement(c.Table,{bordered:!0,columns:E,dataSource:y,pagination:!1,rowKey:"name",scroll:{y:300}})):i().createElement(c.Form.Item,{label:n("Fields"),required:!0},i().createElement(c.Alert,{showIcon:!0,message:n("Please select a database view")})),(null==m?void 0:m.length)?i().createElement(c.Alert,{showIcon:!0,type:"warning",message:n("Unsupported fields"),description:m.map(function(e){return e.name}).join(", "),style:{marginBottom:24}}):null)}function M(e){var t=(0,l.useFlowContext)(),n=(0,a.kj)(),r=c.Form.useWatch("viewName",e.form),u=c.Form.useWatch("schema",e.form),s=c.Form.useWatch("fields",e.form),d=(0,o.useMemo)(function(){return Array.isArray(s)?s:[]},[s]),p=v((0,o.useState)(!1),2),y=p[0],b=p[1],h=v((0,o.useState)([]),2),g=h[0],w=h[1],O=(0,o.useMemo)(function(){var e=["lineString","point","circle","polygon"];return JSON.stringify(d.reduce(function(t,n){return n.type&&e.includes(n.type)&&(t[n.name]=n.type),t},{}))},[d]),j=(0,o.useMemo)(function(){return d.filter(function(e){return e.source||e.interface}).map(function(e){var t;return{title:(0,f.h)((null==(t=e.uiSchema)?void 0:t.title)||e.name,n),dataIndex:e.name,key:e.name,width:200,ellipsis:!0,render:function(e){return null==e?null:(void 0===e?"undefined":e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e)=="object"?JSON.stringify(e):String(e)}}})},[d,n]);return(0,o.useEffect)(function(){if(!r||!d.length)return void w([]);var e=!1;return m(function(){var n;return S(this,function(o){switch(o.label){case 0:b(!0),o.label=1;case 1:return o.trys.push([1,,3,4]),[4,t.api.resource("dbViews").query({filterByTk:r,schema:u||void 0,fieldTypes:JSON.parse(O)})];case 2:return n=o.sent(),e||w(k(n)),[3,4];case 3:return e||b(!1),[7];case 4:return[2]}})})(),function(){e=!0}},[t.api,O,d.length,u,r]),i().createElement(c.Form.Item,{label:n("Preview")},i().createElement(c.Spin,{spinning:y},i().createElement(c.Table,{bordered:!0,columns:j,dataSource:g,pagination:!1,rowKey:function(e,t){return String(null!=t?t:0)},scroll:{x:1e3,y:300}})))}function _(e){var t=b({},e);return delete t[j],Array.isArray(t.fields)&&(t.fields=t.fields.map(function(e){return h(b({},e),{source:A(e.source)})})),t}var q=n(448);function D(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 B(e,t,n,r,o,i,a){try{var l=e[i](a),u=l.value}catch(e){n(e);return}l.done?t(u):Promise.resolve(u).then(r,o)}function N(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){B(i,r,o,a,l,"next",e)}function l(e){B(i,r,o,a,l,"throw",e)}a(void 0)})}}function R(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}function V(e,t,n){return(V=H()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&G(o,n.prototype),o}).apply(null,arguments)}function W(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)}}function $(e,t,n){return t&&W(e.prototype,t),n&&W(e,n),e}function K(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function U(e){return(U=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function L(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){K(e,t,n[t])})}return e}function J(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function G(e,t){return(G=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function z(e){return function(e){if(Array.isArray(e))return D(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e){if(e){if("string"==typeof e)return D(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return D(e,void 0)}}(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Z(e){var t="function"==typeof Map?new Map:void 0;return(Z=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 V(e,arguments,U(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),G(n,e)})(e)}function H(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(H=function(){return!!e})()}function Q(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),l=Object.defineProperty;return l(a,"next",{value:u(0)}),l(a,"throw",{value:u(1)}),l(a,"return",{value:u(2)}),"function"==typeof Symbol&&l(a,Symbol.iterator,{value:function(){return this}}),a;function u(l){return function(u){var c=[l,u];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(i=0)),i;)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 i.label++,{value:c[1],done:!1};case 5:i.label++,r=c[1],c=[0];continue;case 7:c=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){i=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){i.label=c[1];break}if(6===c[0]&&i.label<o[1]){i.label=o[1],o=c;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(c);break}o[2]&&i.ops.pop(),i.trys.pop();continue}c=t.call(e,i)}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 X=function(){function e(){R(this,e),K(this,"templates",new Map)}return $(e,[{key:"register",value:function(e,t){var n="string"==typeof e?J(L({},t),{name:(null==t?void 0:t.name)||e}):e;(null==n?void 0:n.name)&&this.templates.set(n.name,J(L({},n),{name:n.name}))}},{key:"get",value:function(e){return e?this.templates.get(e):void 0}},{key:"getAll",value:function(){return z(this.templates.values()).sort(function(e,t){var n,r;return(null!=(n=e.order)?n:0)-(null!=(r=t.order)?r:0)})}}]),e}(),Y=function(){function e(){R(this,e),K(this,"fields",new Map)}return $(e,[{key:"register",value:function(e){var t,n=e.name||(null==(t=e.value)?void 0:t.name);n&&this.fields.set(n,J(L({},e),{name:n}))}},{key:"remove",value:function(e){this.fields.delete(e)}},{key:"getAll",value:function(){return z(this.fields.values()).sort(function(e,t){var n,r;return(null!=(n=e.order)?n:0)-(null!=(r=t.order)?r:0)})}}]),e}(),ee=function(){function e(){R(this,e),K(this,"managerActions",[])}return $(e,[{key:"registerManagerAction",value:function(e){var t=e.order,n=e.component;this.managerActions.push({order:null!=t?t:0,component:n})}},{key:"getManagerActions",value:function(){return z(this.managerActions).sort(function(e,t){return e.order-t.order})}}]),e}(),et=function(e){if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function t(){var e,n,r;return R(this,t),n=t,r=arguments,n=U(n),K(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,H()?Reflect.construct(n,r||[],U(this).constructor):n.apply(this,r)),"types",new Map),K(e,"extensionManager",new ee),K(e,"collectionTemplateRegistry",new X),K(e,"collectionPresetFieldRegistry",new Y),e}return t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&G(t,e),$(t,[{key:"load",value:function(){return N(function(){var e;return Q(this,function(t){return e=this,this.registerBuiltInCollectionPresetFields(),this.registerBuiltInCollectionTemplates(),this.dataSourceManager.registerLoader("*",function(){return N(function(){var e,t,n;return Q(this,function(r){switch(r.label){case 0:return[4,this.app.apiClient.request({resource:"dataSources",action:"listEnabled",params:{paginate:!1,appends:["collections"]}})];case 1:return n=(null==(t=r.sent())||null==(e=t.data)?void 0:e.data)||[],(0,q.b)(this.dataSourceManager,n),[2,{dataSources:n}]}})}).call(e)}),this.pluginSettingsManager.addMenuItem({key:a.Ji,title:this.t("Data sources"),icon:"ClusterOutlined",isPinned:!0,sort:100,showTabs:!1,aclSnippet:"pm.data-source-manager*"}),this.pluginSettingsManager.addPageTabItem({menuKey:a.Ji,key:"list",title:this.t("Data sources"),componentLoader:function(){return n.e("426").then(n.bind(n,649))},sort:1,aclSnippet:"pm.data-source-manager"}),this.pluginSettingsManager.addPageTabItem({menuKey:a.Ji,key:":name/collections",title:this.t("Collections"),componentLoader:function(){return n.e("167").then(n.bind(n,442))},hidden:!0,sort:2,aclSnippet:"pm.data-source-manager"}),[2]})}).call(this)}},{key:"registerType",value:function(e,t){this.types.set(e,J(L({},t),{name:t.name||e}))}},{key:"getType",value:function(e){return e?this.types.get(e):void 0}},{key:"registerFieldInterfaceConfigure",value:function(e){var t,n;null==(n=this.dataSourceManager.collectionFieldInterfaceManager)||null==(t=n.registerFieldInterfaceConfigure)||t.call(n,e)}},{key:"registerCollectionTemplate",value:function(e,t){this.collectionTemplateRegistry.register(e,t)}},{key:"registerCollectionPresetField",value:function(e){this.collectionPresetFieldRegistry.register(e)}},{key:"addCollectionPresetField",value:function(e){this.registerCollectionPresetField(e)}},{key:"removeCollectionPresetField",value:function(e){this.collectionPresetFieldRegistry.remove(e)}},{key:"getCollectionPresetFields",value:function(){return this.collectionPresetFieldRegistry.getAll()}},{key:"getCollectionTemplate",value:function(e){return this.collectionTemplateRegistry.get(e)}},{key:"getCollectionTemplates",value:function(){return this.collectionTemplateRegistry.getAll()}},{key:"registerBuiltInCollectionPresetFields",value:function(){this.registerCollectionPresetField({order:100,description:'{{t("Primary key, distributed uniqueness, time-ordering") }}',value:{name:"id",type:"snowflakeId",autoIncrement:!1,primaryKey:!0,allowNull:!1,uiSchema:{type:"number",title:'{{t("ID")}}',"x-component":"InputNumber","x-component-props":{stringMode:!0,separator:"0.00",step:"1"},"x-validator":"integer"},interface:"snowflakeId"}}),this.registerCollectionPresetField({order:200,description:'{{t("Store the creation time of each record")}}',value:{name:"createdAt",interface:"createdAt",type:"date",field:"createdAt",uiSchema:{type:"datetime",title:'{{t("Created at")}}',"x-component":"DatePicker","x-component-props":{},"x-read-pretty":!0}}}),this.registerCollectionPresetField({order:300,description:'{{t("Store the creation user of each record") }}',value:{name:"createdBy",interface:"createdBy",type:"belongsTo",target:"users",foreignKey:"createdById",uiSchema:{type:"object",title:'{{t("Created by")}}',"x-component":"AssociationField","x-component-props":{fieldNames:{value:"id",label:"nickname"}},"x-read-pretty":!0}}}),this.registerCollectionPresetField({order:400,description:'{{t("Store the last update time of each record")}}',value:{type:"date",field:"updatedAt",name:"updatedAt",interface:"updatedAt",uiSchema:{type:"datetime",title:'{{t("Last updated at")}}',"x-component":"DatePicker","x-component-props":{},"x-read-pretty":!0}}}),this.registerCollectionPresetField({order:500,description:'{{t("Store the last update user of each record")}}',value:{type:"belongsTo",target:"users",foreignKey:"updatedById",name:"updatedBy",interface:"updatedBy",uiSchema:{type:"object",title:'{{t("Last updated by")}}',"x-component":"AssociationField","x-component-props":{fieldNames:{value:"id",label:"nickname"}},"x-read-pretty":!0}}})}},{key:"registerBuiltInCollectionTemplates",value:function(){this.registerCollectionTemplate({name:"general",title:'{{t("General collection")}}',order:10,color:"blue",collection:{options:{template:"general"},fields:[]}}),this.registerCollectionTemplate({name:"view",title:'{{t("Connect to database view")}}',order:50,color:"yellow",divider:!0,collection:{options:{template:"view",view:!0},fields:[]},capabilities:{recordUniqueKey:!0,simplePaginate:!0},presetFields:{disabled:!0},fieldInterfaces:{create:{include:["m2o"]}},configure:{items:[{name:"databaseView",Component:I,required:!0},{name:"sources",Component:E},{name:"fields",Component:T,required:!0,hidden:function(e){return"edit"===e.mode}},{name:"preview",Component:M,hidden:function(e){return"edit"===e.mode}},{name:"writableView",label:'{{t("Allow add new, update and delete actions")}}',component:"Checkbox"}],transformSubmitValues:_}})}}]),t}(Z(r.Plugin)),en=et},143:function(e,t,n){n.d(t,{Ji:function(){return i},kj:function(){return a}});var r=n(694),o=JSON.parse('{"UU":"@nocobase/plugin-data-source-manager"}').UU,i="data-source-manager";function a(){var e=(0,r.useFlowEngine)();return function(t){return e.context.t(t,{ns:[o,"client"]})}}},448:function(e,t,n){n.d(t,{b:function(){return o},h:function(){return i}});var r=n(694);function o(e,t){e&&t.forEach(function(t){var n,o,i,a,l=(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}({},t),o=o={key:t.key,use:"main"===t.key?void 0:r.DataSource},Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(o)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(o)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(o,e))}),n);e.getDataSource(t.key)?null==(i=e.getDataSource(t.key))||i.patchOptions(l):e.addDataSource(l),Array.isArray(t.collections)&&(null==(a=e.getDataSource(t.key))||a.setCollections(t.collections,{clearFields:!0}))})}function i(e,t){e&&t.forEach(function(t){"main"!==String(t)&&e.removeDataSource(String(t))})}},938:function(e,t,n){n.d(t,{A:function(){return a},h:function(){return i}});var r=/^\s*\{\{\s*t\s*\(\s*(['"])(.*?)\1(?:\s*,[\s\S]*?)?\)\s*\}\}\s*$/,o=/\{\{\s*t\s*\(\s*(['"])(.*?)\1(?:\s*,[\s\S]*?)?\)\s*\}\}/g;function i(e,t){if("string"!=typeof e)return e;var n=e.match(r);return(null==n?void 0:n[2])?t(n[2]):e.replace(o,function(e,n,r){return t(r)})}function a(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"-",r=i(e,t);return null==r||""===r?n:"string"==typeof r||"number"==typeof r||"boolean"==typeof r?String(r):n}},375:function(e){e.exports=l},799:function(e){e.exports=c},428:function(e){e.exports=r},485:function(e){e.exports=t},694:function(e){e.exports=u},768:function(e){e.exports=s},625:function(t){t.exports=e},59:function(e){e.exports=a},185:function(e){e.exports=o},773:function(e){e.exports=f},155:function(e){e.exports=i},61:function(e){e.exports=n}},v={};function g(e){var t=v[e];if(void 0!==t)return t.exports;var n=v[e]={exports:{}};return h[e](n,n.exports,g),n.exports}g.m=h,g.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return g.d(t,{a:t}),t},g.d=function(e,t){for(var n in t)g.o(t,n)&&!g.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},g.f={},g.e=function(e){return Promise.all(Object.keys(g.f).reduce(function(t,n){return g.f[n](e,t),t},[]))},g.u=function(e){return""+e+"."+({167:"6ab06b72d2505913",426:"33617eb1d6d668b5"})[e]+".js"},g.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),g.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},w={},g.l=function(e,t,n,r){if(w[e])return void w[e].push(t);if(void 0!==n)for(var o,i,a=document.getElementsByTagName("script"),l=0;l<a.length;l++){var u=a[l];if(u.getAttribute("src")==e||u.getAttribute("data-rspack")=="@nocobase/plugin-data-source-manager/client-v2:"+n){o=u;break}}o||(i=!0,(o=document.createElement("script")).timeout=120,g.nc&&o.setAttribute("nonce",g.nc),o.setAttribute("data-rspack","@nocobase/plugin-data-source-manager/client-v2:"+n),o.src=e),w[e]=[t];var c=function(t,n){o.onerror=o.onload=null,clearTimeout(s);var r=w[e];if(delete w[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach(function(e){return e(n)}),t)return t(n)},s=setTimeout(c.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=c.bind(null,o.onerror),o.onload=c.bind(null,o.onload),i&&document.head.appendChild(o)},g.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},g.g.importScripts&&(S=g.g.location+"");var w,S,O=g.g.document;if(!S&&O&&(O.currentScript&&"SCRIPT"===O.currentScript.tagName.toUpperCase()&&(S=O.currentScript.src),!S)){var j=O.getElementsByTagName("script");if(j.length)for(var k=j.length-1;k>-1&&(!S||!/^http(s?):/.test(S));)S=j[k--].src}if(!S)throw Error("Automatic publicPath is not supported in this browser");g.p=S.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),d={889:0},g.f.j=function(e,t){var n=g.o(d,e)?d[e]:void 0;if(0!==n)if(n)t.push(n[2]);else{var r=new Promise(function(t,r){n=d[e]=[t,r]});t.push(n[2]=r);var o=g.p+g.u(e),i=Error();g.l(o,function(t){if(g.o(d,e)&&(0!==(n=d[e])&&(d[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)}},p=function(e,t){var n,r,o=t[0],i=t[1],a=t[2],l=0;if(o.some(function(e){return 0!==d[e]})){for(n in i)g.o(i,n)&&(g.m[n]=i[n]);a&&a(g)}for(e&&e(t);l<o.length;l++)r=o[l],g.o(d,r)&&d[r]&&d[r][0](),d[r]=0},(m=self.webpackChunk_nocobase_plugin_data_source_manager_client_v2=self.webpackChunk_nocobase_plugin_data_source_manager_client_v2||[]).forEach(p.bind(null,0)),m.push=p.bind(null,m.push.bind(m));var F={};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-data-source-manager/dist/client-v2/")}if(!e){if(!(e=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var r=window.location.pathname||"/",o=r.indexOf("/v2/");e=o>=0?r.slice(0,o+1):"/"}e&&(e=e.replace(/\/v2\/?$/,"/")),e||(e="/"),"/"!==e.charAt(e.length-1)&&(e+="/"),e+="static/plugins/@nocobase/plugin-data-source-manager/dist/client-v2/"}g.p=e}(),g.r(F),g.d(F,{PluginDataSourceManagerClientV2:function(){return y.v},compileLegacyTemplate:function(){return b.h},compileLegacyTemplateText:function(){return b.A},default:function(){return y.A}}),y=g(890),b=g(938),F}()});
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("ahooks"),require("@nocobase/client-v2"),require("react-router-dom"),require("@dnd-kit/sortable"),require("dayjs"),require("react"),require("antd"),require("@ant-design/icons"),require("@nocobase/flow-engine"),require("@dnd-kit/core"),require("@nocobase/utils/client"),require("lodash")):"function"==typeof define&&define.amd?define("@nocobase/plugin-data-source-manager/client-v2",["ahooks","@nocobase/client-v2","react-router-dom","@dnd-kit/sortable","dayjs","react","antd","@ant-design/icons","@nocobase/flow-engine","@dnd-kit/core","@nocobase/utils/client","lodash"],t):"object"==typeof exports?exports["@nocobase/plugin-data-source-manager/client-v2"]=t(require("ahooks"),require("@nocobase/client-v2"),require("react-router-dom"),require("@dnd-kit/sortable"),require("dayjs"),require("react"),require("antd"),require("@ant-design/icons"),require("@nocobase/flow-engine"),require("@dnd-kit/core"),require("@nocobase/utils/client"),require("lodash")):e["@nocobase/plugin-data-source-manager/client-v2"]=t(e.ahooks,e["@nocobase/client-v2"],e["react-router-dom"],e["@dnd-kit/sortable"],e.dayjs,e.react,e.antd,e["@ant-design/icons"],e["@nocobase/flow-engine"],e["@dnd-kit/core"],e["@nocobase/utils/client"],e.lodash)}(self,function(e,t,n,r,o,i,a,l,u,c,s,f){return function(){"use strict";var d,p,m,y,b,v={890:function(e,t,n){n.d(t,{A:function(){return en},v:function(){return et}});var r=n(485),o=n(155),i=n.n(o),a=n(143),l=n(694),u=n(625),c=n(59),s=n(773),f=n(938);function d(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,n,r,o,i,a){try{var l=e[i](a),u=l.value}catch(e){n(e);return}l.done?t(u):Promise.resolve(u).then(r,o)}function m(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){p(i,r,o,a,l,"next",e)}function l(e){p(i,r,o,a,l,"throw",e)}a(void 0)})}}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}function b(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){y(e,t,n[t])})}return e}function v(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function h(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 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)||w(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 g(e){return function(e){if(Array.isArray(e))return d(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||w(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function w(e,t){if(e){if("string"==typeof e)return d(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 d(e,t)}}function S(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),l=Object.defineProperty;return l(a,"next",{value:u(0)}),l(a,"throw",{value:u(1)}),l(a,"return",{value:u(2)}),"function"==typeof Symbol&&l(a,Symbol.iterator,{value:function(){return this}}),a;function u(l){return function(u){var c=[l,u];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(i=0)),i;)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 i.label++,{value:c[1],done:!1};case 5:i.label++,r=c[1],c=[0];continue;case 7:c=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){i=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){i.label=c[1];break}if(6===c[0]&&i.label<o[1]){i.label=o[1],o=c;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(c);break}o[2]&&i.ops.pop(),i.trys.pop();continue}c=t.call(e,i)}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 O=new Set(["hasOne","hasMany","belongsToMany"]),j="__viewUnsupportedFields";function k(e){var t=(0,s.get)(e,"data.data");return Array.isArray(t)?t:Array.isArray((0,s.get)(t,"data"))?(0,s.get)(t,"data"):[]}function F(e){var t=e||{};return t.rawTitle,function(e,t){if(null==e)return{};var n,r,o,i={};if("u">typeof Reflect&&Reflect.ownKeys){for(o=0,n=Reflect.ownKeys(Object(e));o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r]);return i}if(i=function(e,t){if(null==e)return{};var n,r,o={},i=Object.getOwnPropertyNames(e);for(r=0;r<i.length;r++)n=i[r],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n]);return o}(e,t),Object.getOwnPropertySymbols)for(o=0,n=Object.getOwnPropertySymbols(e);o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r]);return i}(t,["rawTitle"])}function P(e){return Array.isArray(e)?e.filter(Boolean):"string"==typeof e?e.split(".").filter(Boolean):[]}function A(e){var t=P(e);return t.length?t.join("."):null}function x(e){return(null==e?void 0:e.options)||e||{}}function C(){var e=(0,l.useFlowContext)();return(0,u.useRequest)(function(){return m(function(){return S(this,function(t){switch(t.label){case 0:return[4,e.api.request({url:"dataSources/main/collections:list",params:{paginate:!1,sort:["sort"],filter:{"hidden.$isFalsy":!0},appends:["fields"]}})];case 1:return[2,k(t.sent())]}})})()})}function I(e){var t=(0,l.useFlowContext)(),n=(0,a.kj)(),r=t.dataSourceManager.collectionFieldInterfaceManager,d=(0,o.useRef)(),p=h((0,o.useState)(!1),2),g=p[0],w=p[1],O=c.Form.useWatch("databaseView",e.form),P=c.Form.useWatch("schema",e.form),x=c.Form.useWatch("viewName",e.form),C=(0,o.useMemo)(function(){return O||(x?P?"".concat(P,"@").concat(x):x:void 0)},[O,P,x]),I=(0,o.useMemo)(function(){var e;return((null==r||null==(e=r.getFieldInterfaces)?void 0:e.call(r))||[]).reduce(function(e,t){return t.name&&(e[t.name]=t),e},{})},[r]),E=(0,u.useRequest)(function(){return m(function(){return S(this,function(e){switch(e.label){case 0:return[4,t.api.resource("dbViews").list()];case 1:return[2,k(e.sent())]}})})()}),T=(0,o.useMemo)(function(){var e=(E.data||[]).map(function(e){return{value:e.schema?"".concat(e.schema,"@").concat(e.name):e.name,label:e.schema?"".concat(e.schema,".").concat((0,f.hd)(e.name,n)):(0,f.hd)(e.name,n)}});return C&&!e.some(function(e){return e.value===C})&&e.unshift({value:C,label:P?"".concat(P,".").concat((0,f.hd)(x||C,n)):(0,f.hd)(x||C,n)}),e},[C,n,E.data,P,x]),_=(0,o.useCallback)(function(n,r){return m(function(){var o,i,a,l;return S(this,function(u){switch(u.label){case 0:w(!0),u.label=1;case 1:return u.trys.push([1,,3,4]),[4,t.api.resource("dbViews").get({filterByTk:n,schema:r||void 0})];case 2:var c,f,d,p,m;return c=u.sent(),o={fields:(f=(0,s.get)(c,"data.data")||(0,s.get)(c,"data")||c||{}).fields,sources:f.sources,unsupportedFields:f.unsupportedFields},m=new Map(((p={currentFields:Array.isArray(i=e.form.getFieldValue("fields")||[])?i:[],fieldInterfacesByName:I,inferredFields:(d=o.fields)?(Array.isArray(d)?d:Object.values(d)).filter(Boolean):[]}).currentFields||[]).map(function(e){return[e.name,e]})),a=p.inferredFields.map(function(e){var t,n,r,o=m.get(e.name)||e,i=p.fieldInterfacesByName[o.interface||e.interface||""],a=(null==i||null==(t=i.default)?void 0:t.uiSchema)||{},l=(null==(n=o.uiSchema)?void 0:n.title)||o.title||(null==(r=e.uiSchema)?void 0:r.title)||e.name,u=v(b({},F(a),F(o.uiSchema||e.uiSchema)),{title:l});return e.source?v(b({},e),{interface:e.interface||o.interface,type:e.type||o.type,uiSchema:u}):v(b({},e,o),{uiSchema:u})}),l=Array.isArray(o.sources)?o.sources:[],e.form.setFieldsValue(y({fields:a.map(function(e){return v(b({},e),{source:A(e.source)})}),sources:l},j,Array.isArray(o.unsupportedFields)?o.unsupportedFields:[])),[3,4];case 3:return w(!1),[7];case 4:return[2]}})})()},[t.api,I,e.form]),M=(0,o.useCallback)(function(t){var n=function(e){if(!e)return{schema:null,viewName:null};var t=h(e.includes("@")?e.split("@"):[null,e],2);return{schema:t[0]||null,viewName:t[1]||e}}(t),r=n.schema,o=n.viewName;if(e.form.setFieldsValue(y({databaseView:t,schema:r,viewName:o,fields:[],sources:[]},j,[])),o){var i=e.form.getFieldValue("name");(!e.form.isFieldTouched("name")||i===d.current||/^t_[A-Za-z0-9]+$/.test(i))&&(d.current=o,e.form.setFieldValue("name",o)),_(o,r)}},[_,e.form]);return(0,o.useEffect)(function(){!O&&C&&e.form.setFieldValue("databaseView",C)},[C,e.form,O]),i().createElement(c.Spin,{spinning:g},i().createElement(c.Form.Item,{name:"databaseView",label:n("Connect to database view"),rules:[{required:!0,message:n("Please select a database view")}]},i().createElement(c.Select,{allowClear:!0,loading:E.loading,options:T,showSearch:!0,optionFilterProp:"label",disabled:"edit"===e.mode,onChange:M})),i().createElement(c.Form.Item,{name:"schema",hidden:!0},i().createElement(c.Input,null)),i().createElement(c.Form.Item,{name:"viewName",hidden:!0,rules:[{required:!0}]},i().createElement(c.Input,null)))}function E(e){var t=(0,a.kj)(),n=C(),r=c.Form.useWatch("sources",e.form),l=(0,o.useMemo)(function(){return Array.isArray(r)?r:[]},[r]),u=(0,o.useMemo)(function(){var e,r=(e=n.data||[],e.filter(function(e){return e.name}).map(function(e){return{value:e.name,label:(0,f.hd)(e.title||e.name,t)}})),o=l.filter(function(e){return!r.some(function(t){return t.value===e})}).map(function(e){return{value:e,label:e}});return g(r).concat(g(o))},[n.data,l,t]);return i().createElement(c.Form.Item,{name:"sources",label:t("Source collections")},i().createElement(c.Select,{mode:"multiple",options:u,loading:n.loading,disabled:!0,allowClear:!0}))}function T(e){var t=(0,l.useFlowContext)(),n=(0,a.kj)(),r=C(),u=t.dataSourceManager.collectionFieldInterfaceManager,s=t.dataSourceManager.getDataSource("main"),d=c.Form.useWatch("fields",e.form),p=c.Form.useWatch("sources",e.form),m=c.Form.useWatch(j,{form:e.form,preserve:!0}),y=(0,o.useMemo)(function(){return Array.isArray(d)?d:[]},[d]),w=(0,o.useMemo)(function(){return Array.isArray(p)?p:[]},[p]),S=(0,o.useMemo)(function(){var e,t,n,r,o;return n=(null==u||null==(e=u.getFieldInterfaceGroups)?void 0:e.call(u))||{},r=(null==u||null==(t=u.getFieldInterfaces)?void 0:t.call(u))||[],o=new Map,r.filter(function(e){return e.name&&!["relation","systemInfo"].includes(String(e.group))}).forEach(function(e){var t=String(e.group||"other"),n=o.get(t)||[];n.push({value:String(e.name),label:e.title||String(e.name),availableTypes:e.availableTypes}),o.set(t,n)}),Array.from(o.entries()).sort(function(e,t){var r,o,i,a,l=h(e,1)[0],u=h(t,1)[0];return(null!=(r=null==(i=n[l])?void 0:i.order)?r:0)-(null!=(o=null==(a=n[u])?void 0:a.order)?o:0)}).map(function(e){var t,r=h(e,2),o=r[0],i=r[1];return{label:(null==(t=n[o])?void 0:t.label)||o,options:i}})},[u]),k=(0,o.useMemo)(function(){return w.map(function(e){return(r.data||[]).find(function(t){return t.name===e})}).filter(Boolean).map(function(e){var t,r=null==s||null==(t=s.getCollection)?void 0:t.call(s,e.name),o="function"==typeof(null==r?void 0:r.getFields)?r.getFields():e.fields||[];return{value:e.name,label:(0,f.hd)(e.title||(null==r?void 0:r.title)||e.name,n),children:o.map(x).filter(function(e){return e.name&&!O.has(String(e.type))}).map(function(e){var t,r;return{value:e.name,label:(0,f.hd)((null==(t=(r=x(e)).uiSchema)?void 0:t.title)||r.title||r.name,n)}})}})},[r.data,s,w,n]),I=(0,o.useCallback)(function(t,n){var r=g(y);r.splice(t,1,v(b({},n),{source:A(n.source)})),e.form.setFieldValue("fields",r)},[y,e.form]),E=[{title:n("Field name"),dataIndex:"name",width:130},{title:n("Field source"),dataIndex:"source",width:220,render:function(e,t,o){return i().createElement(c.Cascader,{allowClear:!0,options:k,placeholder:n("Select field source"),value:P(e),onChange:function(e){var n,i,a,l=(e||[]).map(String),u=(r.data||[]).find(function(e){return e.name===l[0]}),c=l[0]?null==s||null==(n=s.getCollection)?void 0:n.call(s,l[0]):void 0,f=("function"==typeof(null==c?void 0:c.getFields)?c.getFields().map(x):(null==u?void 0:u.fields)||[]).find(function(e){return e.name===l[1]});I(o,v(b({},t),{source:l,interface:(null==f?void 0:f.interface)||t.interface,type:(null==f?void 0:f.type)||t.type,uiSchema:v(b({},t.uiSchema,null==f?void 0:f.uiSchema),{title:(null==f||null==(i=f.uiSchema)?void 0:i.title)||(null==(a=t.uiSchema)?void 0:a.title)||t.name})}))}})}},{title:n("Field type"),dataIndex:"type",width:140,render:function(e,t,n){var r;return!t.source&&(null==(r=t.possibleTypes)?void 0:r.length)?i().createElement(c.Select,{value:e,style:{width:"100%"},popupMatchSelectWidth:!1,options:t.possibleTypes.map(function(e){return{label:e,value:e}}),onChange:function(e){return I(n,v(b({},t),{type:e}))}}):i().createElement(c.Tag,null,e)}},{title:n("Field interface"),dataIndex:"interface",width:180,render:function(e,t,r){if(t.source){var o,a=null==u||null==(o=u.getFieldInterface)?void 0:o.call(u,e);return i().createElement(c.Tag,null,(0,f.hd)((null==a?void 0:a.title)||e,n))}return i().createElement(c.Select,{allowClear:!0,popupMatchSelectWidth:!1,style:{width:"100%"},options:S.map(function(e){return{label:(0,f.hd)(e.label,n),options:e.options.filter(function(e){var n;return!t.type||(null==(n=e.availableTypes)?void 0:n.includes(t.type))}).map(function(e){return{value:e.value,label:(0,f.hd)(e.label,n)}})}}),value:e||void 0,onChange:function(e){var n,o,i,a,l,c,s=null==u||null==(n=u.getFieldInterface)?void 0:n.call(u,e);I(r,v(b({},t),{interface:e||null,type:(null==s||null==(o=s.default)?void 0:o.type)||t.type,uiSchema:v(b({},null==s||null==(i=s.default)?void 0:i.uiSchema),{title:(null==s||null==(l=s.default)||null==(a=l.uiSchema)?void 0:a.title)||(null==(c=t.uiSchema)?void 0:c.title)||t.name})}))}})}},{title:n("Field display name"),dataIndex:["uiSchema","title"],width:180,render:function(e,t,n){var r;return i().createElement(c.Input,{value:(null==(r=t.uiSchema)?void 0:r.title)||t.name,onChange:function(e){I(n,v(b({},t),{uiSchema:v(b({},F(t.uiSchema)),{title:e.target.value})}))}})}}];return r.loading?i().createElement(c.Spin,null):i().createElement(i().Fragment,null,i().createElement(c.Form.Item,{name:"fields",hidden:!0,rules:[{required:!0}]},i().createElement(c.Input,null)),y.length?i().createElement(c.Form.Item,{label:n("Fields"),required:!0,extra:n("Fields can only be used correctly if they are defined with an interface.")},i().createElement(c.Table,{bordered:!0,columns:E,dataSource:y,pagination:!1,rowKey:"name",scroll:{y:300}})):i().createElement(c.Form.Item,{label:n("Fields"),required:!0},i().createElement(c.Alert,{showIcon:!0,message:n("Please select a database view")})),(null==m?void 0:m.length)?i().createElement(c.Alert,{showIcon:!0,type:"warning",message:n("Unsupported fields"),description:m.map(function(e){return e.name}).join(", "),style:{marginBottom:24}}):null)}function _(e){var t=(0,l.useFlowContext)(),n=(0,a.kj)(),r=c.Form.useWatch("viewName",e.form),u=c.Form.useWatch("schema",e.form),s=c.Form.useWatch("fields",e.form),d=(0,o.useMemo)(function(){return Array.isArray(s)?s:[]},[s]),p=h((0,o.useState)(!1),2),y=p[0],b=p[1],v=h((0,o.useState)([]),2),g=v[0],w=v[1],O=(0,o.useMemo)(function(){var e=["lineString","point","circle","polygon"];return JSON.stringify(d.reduce(function(t,n){return n.type&&e.includes(n.type)&&(t[n.name]=n.type),t},{}))},[d]),j=(0,o.useMemo)(function(){return d.filter(function(e){return e.source||e.interface}).map(function(e){var t;return{title:(0,f.hd)((null==(t=e.uiSchema)?void 0:t.title)||e.name,n),dataIndex:e.name,key:e.name,width:200,ellipsis:!0,render:function(e){return null==e?null:(void 0===e?"undefined":e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e)=="object"?JSON.stringify(e):String(e)}}})},[d,n]);return(0,o.useEffect)(function(){if(!r||!d.length)return void w([]);var e=!1;return m(function(){var n;return S(this,function(o){switch(o.label){case 0:b(!0),o.label=1;case 1:return o.trys.push([1,,3,4]),[4,t.api.resource("dbViews").query({filterByTk:r,schema:u||void 0,fieldTypes:JSON.parse(O)})];case 2:return n=o.sent(),e||w(k(n)),[3,4];case 3:return e||b(!1),[7];case 4:return[2]}})})(),function(){e=!0}},[t.api,O,d.length,u,r]),i().createElement(c.Form.Item,{label:n("Preview")},i().createElement(c.Spin,{spinning:y},i().createElement(c.Table,{bordered:!0,columns:j,dataSource:g,pagination:!1,rowKey:function(e,t){return String(null!=t?t:0)},scroll:{x:1e3,y:300}})))}function M(e){var t=b({},e);return delete t[j],Array.isArray(t.fields)&&(t.fields=t.fields.map(function(e){return v(b({},e),{source:A(e.source)})})),t}var q=n(448);function D(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 N(e,t,n,r,o,i,a){try{var l=e[i](a),u=l.value}catch(e){n(e);return}l.done?t(u):Promise.resolve(u).then(r,o)}function B(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){N(i,r,o,a,l,"next",e)}function l(e){N(i,r,o,a,l,"throw",e)}a(void 0)})}}function R(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}function V(e,t,n){return(V=H()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&G(o,n.prototype),o}).apply(null,arguments)}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)}}function W(e,t,n){return t&&$(e.prototype,t),n&&$(e,n),e}function K(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function L(e){return(L=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function U(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){K(e,t,n[t])})}return e}function J(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function G(e,t){return(G=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function z(e){return function(e){if(Array.isArray(e))return D(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e){if(e){if("string"==typeof e)return D(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return D(e,void 0)}}(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Z(e){var t="function"==typeof Map?new Map:void 0;return(Z=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 V(e,arguments,L(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),G(n,e)})(e)}function H(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(H=function(){return!!e})()}function Q(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),l=Object.defineProperty;return l(a,"next",{value:u(0)}),l(a,"throw",{value:u(1)}),l(a,"return",{value:u(2)}),"function"==typeof Symbol&&l(a,Symbol.iterator,{value:function(){return this}}),a;function u(l){return function(u){var c=[l,u];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(i=0)),i;)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 i.label++,{value:c[1],done:!1};case 5:i.label++,r=c[1],c=[0];continue;case 7:c=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){i=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){i.label=c[1];break}if(6===c[0]&&i.label<o[1]){i.label=o[1],o=c;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(c);break}o[2]&&i.ops.pop(),i.trys.pop();continue}c=t.call(e,i)}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 X=function(){function e(){R(this,e),K(this,"templates",new Map)}return W(e,[{key:"register",value:function(e,t){var n="string"==typeof e?J(U({},t),{name:(null==t?void 0:t.name)||e}):e;(null==n?void 0:n.name)&&this.templates.set(n.name,J(U({},n),{name:n.name}))}},{key:"get",value:function(e){return e?this.templates.get(e):void 0}},{key:"getAll",value:function(){return z(this.templates.values()).sort(function(e,t){var n,r;return(null!=(n=e.order)?n:0)-(null!=(r=t.order)?r:0)})}}]),e}(),Y=function(){function e(){R(this,e),K(this,"fields",new Map)}return W(e,[{key:"register",value:function(e){var t,n=e.name||(null==(t=e.value)?void 0:t.name);n&&this.fields.set(n,J(U({},e),{name:n}))}},{key:"remove",value:function(e){this.fields.delete(e)}},{key:"getAll",value:function(){return z(this.fields.values()).sort(function(e,t){var n,r;return(null!=(n=e.order)?n:0)-(null!=(r=t.order)?r:0)})}}]),e}(),ee=function(){function e(){R(this,e),K(this,"managerActions",[])}return W(e,[{key:"registerManagerAction",value:function(e){var t=e.order,n=e.component;this.managerActions.push({order:null!=t?t:0,component:n})}},{key:"getManagerActions",value:function(){return z(this.managerActions).sort(function(e,t){return e.order-t.order})}}]),e}(),et=function(e){if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function t(){var e,n,r;return R(this,t),n=t,r=arguments,n=L(n),K(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,H()?Reflect.construct(n,r||[],L(this).constructor):n.apply(this,r)),"types",new Map),K(e,"extensionManager",new ee),K(e,"collectionTemplateRegistry",new X),K(e,"collectionPresetFieldRegistry",new Y),e}return t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&G(t,e),W(t,[{key:"load",value:function(){return B(function(){var e;return Q(this,function(t){return e=this,this.registerBuiltInCollectionPresetFields(),this.registerBuiltInCollectionTemplates(),this.dataSourceManager.registerLoader("*",function(){return B(function(){var e,t,n;return Q(this,function(r){switch(r.label){case 0:return[4,this.app.apiClient.request({resource:"dataSources",action:"listEnabled",params:{paginate:!1,appends:["collections"]}})];case 1:return n=(null==(t=r.sent())||null==(e=t.data)?void 0:e.data)||[],(0,q.b)(this.dataSourceManager,n),[2,{dataSources:n}]}})}).call(e)}),this.pluginSettingsManager.addMenuItem({key:a.Ji,title:this.t("Data sources"),icon:"ClusterOutlined",isPinned:!0,sort:100,showTabs:!1,aclSnippet:"pm.data-source-manager*"}),this.pluginSettingsManager.addPageTabItem({menuKey:a.Ji,key:"list",title:this.t("Data sources"),componentLoader:function(){return n.e("426").then(n.bind(n,649))},sort:1,aclSnippet:"pm.data-source-manager"}),this.pluginSettingsManager.addPageTabItem({menuKey:a.Ji,key:":name/collections",title:this.t("Collections"),componentLoader:function(){return n.e("167").then(n.bind(n,442))},hidden:!0,sort:2,aclSnippet:"pm.data-source-manager"}),[2]})}).call(this)}},{key:"registerType",value:function(e,t){this.types.set(e,J(U({},t),{name:t.name||e}))}},{key:"getType",value:function(e){return e?this.types.get(e):void 0}},{key:"registerFieldInterfaceConfigure",value:function(e){var t,n;null==(n=this.dataSourceManager.collectionFieldInterfaceManager)||null==(t=n.registerFieldInterfaceConfigure)||t.call(n,e)}},{key:"registerCollectionTemplate",value:function(e,t){this.collectionTemplateRegistry.register(e,t)}},{key:"registerCollectionPresetField",value:function(e){this.collectionPresetFieldRegistry.register(e)}},{key:"addCollectionPresetField",value:function(e){this.registerCollectionPresetField(e)}},{key:"removeCollectionPresetField",value:function(e){this.collectionPresetFieldRegistry.remove(e)}},{key:"getCollectionPresetFields",value:function(){return this.collectionPresetFieldRegistry.getAll()}},{key:"getCollectionTemplate",value:function(e){return this.collectionTemplateRegistry.get(e)}},{key:"getCollectionTemplates",value:function(){return this.collectionTemplateRegistry.getAll()}},{key:"registerBuiltInCollectionPresetFields",value:function(){this.registerCollectionPresetField({order:100,description:'{{t("Primary key, distributed uniqueness, time-ordering") }}',value:{name:"id",type:"snowflakeId",autoIncrement:!1,primaryKey:!0,allowNull:!1,uiSchema:{type:"number",title:'{{t("ID")}}',"x-component":"InputNumber","x-component-props":{stringMode:!0,separator:"0.00",step:"1"},"x-validator":"integer"},interface:"snowflakeId"}}),this.registerCollectionPresetField({order:200,description:'{{t("Store the creation time of each record")}}',value:{name:"createdAt",interface:"createdAt",type:"date",field:"createdAt",uiSchema:{type:"datetime",title:'{{t("Created at")}}',"x-component":"DatePicker","x-component-props":{},"x-read-pretty":!0}}}),this.registerCollectionPresetField({order:300,description:'{{t("Store the creation user of each record") }}',value:{name:"createdBy",interface:"createdBy",type:"belongsTo",target:"users",foreignKey:"createdById",uiSchema:{type:"object",title:'{{t("Created by")}}',"x-component":"AssociationField","x-component-props":{fieldNames:{value:"id",label:"nickname"}},"x-read-pretty":!0}}}),this.registerCollectionPresetField({order:400,description:'{{t("Store the last update time of each record")}}',value:{type:"date",field:"updatedAt",name:"updatedAt",interface:"updatedAt",uiSchema:{type:"datetime",title:'{{t("Last updated at")}}',"x-component":"DatePicker","x-component-props":{},"x-read-pretty":!0}}}),this.registerCollectionPresetField({order:500,description:'{{t("Store the last update user of each record")}}',value:{type:"belongsTo",target:"users",foreignKey:"updatedById",name:"updatedBy",interface:"updatedBy",uiSchema:{type:"object",title:'{{t("Last updated by")}}',"x-component":"AssociationField","x-component-props":{fieldNames:{value:"id",label:"nickname"}},"x-read-pretty":!0}}})}},{key:"registerBuiltInCollectionTemplates",value:function(){this.registerCollectionTemplate({name:"general",title:'{{t("General collection")}}',order:10,color:"blue",collection:{options:{template:"general"},fields:[]}}),this.registerCollectionTemplate({name:"view",title:'{{t("Connect to database view")}}',order:50,color:"yellow",divider:!0,collection:{options:{template:"view",view:!0},fields:[]},capabilities:{recordUniqueKey:!0,simplePaginate:!0},presetFields:{disabled:!0},fieldInterfaces:{create:{include:["m2o"]}},configure:{items:[{name:"databaseView",Component:I,required:!0},{name:"sources",Component:E},{name:"fields",Component:T,required:!0,hidden:function(e){return"edit"===e.mode}},{name:"preview",Component:_,hidden:function(e){return"edit"===e.mode}},{name:"writableView",label:'{{t("Allow add new, update and delete actions")}}',component:"Checkbox"}],transformSubmitValues:M}})}}]),t}(Z(r.Plugin)),en=et},143:function(e,t,n){n.d(t,{Ji:function(){return i},kj:function(){return a}});var r=n(694),o=JSON.parse('{"UU":"@nocobase/plugin-data-source-manager"}').UU,i="data-source-manager";function a(){var e=(0,r.useFlowEngine)();return function(t,n){return e.context.t(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){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:[o,"client"]},n))}}},448:function(e,t,n){n.d(t,{b:function(){return o},h:function(){return i}});var r=n(694);function o(e,t){e&&t.forEach(function(t){var n,o,i,a,l=(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}({},t),o=o={key:t.key,use:"main"===t.key?void 0:r.DataSource},Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(o)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(o)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(o,e))}),n);e.getDataSource(t.key)?null==(i=e.getDataSource(t.key))||i.patchOptions(l):e.addDataSource(l),Array.isArray(t.collections)&&(null==(a=e.getDataSource(t.key))||a.setCollections(t.collections,{clearFields:!0}))})}function i(e,t){e&&t.forEach(function(t){"main"!==String(t)&&e.removeDataSource(String(t))})}},938:function(e,t,n){n.d(t,{Ad:function(){return c},hd:function(){return l},sZ:function(){return u},zN:function(){return i}});var r=/^\s*\{\{\s*t\s*\(\s*(['"])(.*?)\1(?:\s*,\s*([\s\S]*?))?\)\s*\}\}\s*$/,o=/\{\{\s*t\s*\(\s*(['"])(.*?)\1(?:\s*,\s*([\s\S]*?))?\)\s*\}\}/g;function i(e){var t;return"string"==typeof e?null==(t=e.match(r))?void 0:t[2]:void 0}function a(e){var t=null==e?void 0:e.trim();if(t){try{var n=JSON.parse(t);return n&&(void 0===n?"undefined":n&&"u">typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)=="object"&&!Array.isArray(n)?n:void 0}catch(e){}var r={},o=t.match(/(?:^|[{,\s])ns\s*:\s*(\[[\s\S]*?\])/);if(null==o?void 0:o[1]){var i,a,l=(i=o[1],a=[],i.replace(/(['"])(.*?)\1/g,function(e,t,n){return a.push(n),""}),a.length?a:void 0);l&&(r.ns=l)}else{var u=t.match(/(?:^|[{,\s])ns\s*:\s*(['"])(.*?)\1/);(null==u?void 0:u[2])&&(r.ns=u[2])}var c=t.match(/(?:^|[{,\s])nsMode\s*:\s*(['"])(.*?)\1/);return(null==c?void 0:c[2])&&(r.nsMode=c[2]),Object.keys(r).length?r:void 0}}function l(e,t){if("string"!=typeof e)return e;var n=e.match(r);return(null==n?void 0:n[2])?t(n[2],a(n[3])):e.replace(o,function(e,n,r,o){return t(r,a(o))})}function u(e,t){var n=i(t);return"string"==typeof e&&n===e?t:e}function c(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"-",r=l(e,t);return null==r||""===r?n:"string"==typeof r||"number"==typeof r||"boolean"==typeof r?String(r):n}},375:function(e){e.exports=l},799:function(e){e.exports=c},428:function(e){e.exports=r},485:function(e){e.exports=t},694:function(e){e.exports=u},768:function(e){e.exports=s},625:function(t){t.exports=e},59:function(e){e.exports=a},185:function(e){e.exports=o},773:function(e){e.exports=f},155:function(e){e.exports=i},61:function(e){e.exports=n}},h={};function g(e){var t=h[e];if(void 0!==t)return t.exports;var n=h[e]={exports:{}};return v[e](n,n.exports,g),n.exports}g.m=v,g.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return g.d(t,{a:t}),t},g.d=function(e,t){for(var n in t)g.o(t,n)&&!g.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},g.f={},g.e=function(e){return Promise.all(Object.keys(g.f).reduce(function(t,n){return g.f[n](e,t),t},[]))},g.u=function(e){return""+e+"."+({167:"a04d61a8103d37ed",426:"8387d793b913b8e0"})[e]+".js"},g.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),g.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},w={},g.l=function(e,t,n,r){if(w[e])return void w[e].push(t);if(void 0!==n)for(var o,i,a=document.getElementsByTagName("script"),l=0;l<a.length;l++){var u=a[l];if(u.getAttribute("src")==e||u.getAttribute("data-rspack")=="@nocobase/plugin-data-source-manager/client-v2:"+n){o=u;break}}o||(i=!0,(o=document.createElement("script")).timeout=120,g.nc&&o.setAttribute("nonce",g.nc),o.setAttribute("data-rspack","@nocobase/plugin-data-source-manager/client-v2:"+n),o.src=e),w[e]=[t];var c=function(t,n){o.onerror=o.onload=null,clearTimeout(s);var r=w[e];if(delete w[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach(function(e){return e(n)}),t)return t(n)},s=setTimeout(c.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=c.bind(null,o.onerror),o.onload=c.bind(null,o.onload),i&&document.head.appendChild(o)},g.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},g.g.importScripts&&(S=g.g.location+"");var w,S,O=g.g.document;if(!S&&O&&(O.currentScript&&"SCRIPT"===O.currentScript.tagName.toUpperCase()&&(S=O.currentScript.src),!S)){var j=O.getElementsByTagName("script");if(j.length)for(var k=j.length-1;k>-1&&(!S||!/^http(s?):/.test(S));)S=j[k--].src}if(!S)throw Error("Automatic publicPath is not supported in this browser");g.p=S.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),d={889:0},g.f.j=function(e,t){var n=g.o(d,e)?d[e]:void 0;if(0!==n)if(n)t.push(n[2]);else{var r=new Promise(function(t,r){n=d[e]=[t,r]});t.push(n[2]=r);var o=g.p+g.u(e),i=Error();g.l(o,function(t){if(g.o(d,e)&&(0!==(n=d[e])&&(d[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)}},p=function(e,t){var n,r,o=t[0],i=t[1],a=t[2],l=0;if(o.some(function(e){return 0!==d[e]})){for(n in i)g.o(i,n)&&(g.m[n]=i[n]);a&&a(g)}for(e&&e(t);l<o.length;l++)r=o[l],g.o(d,r)&&d[r]&&d[r][0](),d[r]=0},(m=self.webpackChunk_nocobase_plugin_data_source_manager_client_v2=self.webpackChunk_nocobase_plugin_data_source_manager_client_v2||[]).forEach(p.bind(null,0)),m.push=p.bind(null,m.push.bind(m));var F={};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-data-source-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-data-source-manager/dist/client-v2/"}g.p=e}(),g.r(F),g.d(F,{PluginDataSourceManagerClientV2:function(){return y.v},compileLegacyTemplate:function(){return b.hd},compileLegacyTemplateText:function(){return b.Ad},default:function(){return y.A},getLegacyTemplateKey:function(){return b.zN},preferLegacyTemplateTitle:function(){return b.sZ}}),y=g(890),b=g(938),F}()});
@@ -9,4 +9,4 @@
9
9
  export declare const NAMESPACE: string;
10
10
  export declare const DATA_SOURCE_MANAGER_SETTINGS_KEY = "data-source-manager";
11
11
  export declare function tExpr(key: string): string;
12
- export declare function useT(): (key: string) => string;
12
+ export declare function useT(): (key: string, options?: Record<string, unknown>) => string;
@@ -7,9 +7,21 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
  import React from 'react';
10
+ import { type CollectionPresetFieldOptions } from '../../plugin';
10
11
  interface CollectionsPageProps {
11
12
  dataSourceKey: string;
12
13
  title?: React.ReactNode;
13
14
  }
15
+ type PresetFieldRow = {
16
+ name: string;
17
+ field: React.ReactNode;
18
+ interfaceLabel: React.ReactNode;
19
+ description?: React.ReactNode;
20
+ };
21
+ export declare function getPresetFieldRows(presetFields: CollectionPresetFieldOptions[], fieldInterfaceManager?: {
22
+ getFieldInterface?: (name: string) => {
23
+ title?: React.ReactNode;
24
+ } | undefined;
25
+ }): PresetFieldRow[];
14
26
  declare function CollectionsPage(props: CollectionsPageProps): React.JSX.Element;
15
27
  export default CollectionsPage;
@@ -7,7 +7,10 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
  import type { ReactNode } from 'react';
10
- type TFunction = (key: string) => string;
10
+ type TOptions = Record<string, unknown>;
11
+ type TFunction = (key: string, options?: TOptions) => string;
12
+ export declare function getLegacyTemplateKey(value: ReactNode): string;
11
13
  export declare function compileLegacyTemplate(value: ReactNode, t: TFunction): ReactNode;
14
+ export declare function preferLegacyTemplateTitle(value: ReactNode, templateTitle?: ReactNode): ReactNode;
12
15
  export declare function compileLegacyTemplateText(value: ReactNode, t: TFunction, fallback?: string): string;
13
16
  export {};
@@ -8,18 +8,18 @@
8
8
  */
9
9
 
10
10
  module.exports = {
11
- "@nocobase/client": "2.1.0-beta.44",
11
+ "@nocobase/client": "2.1.0-beta.45",
12
12
  "react": "18.2.0",
13
- "@nocobase/plugin-acl": "2.1.0-beta.44",
14
- "@nocobase/utils": "2.1.0-beta.44",
15
- "@nocobase/flow-engine": "2.1.0-beta.44",
16
- "@nocobase/client-v2": "2.1.0-beta.44",
17
- "@nocobase/ai": "2.1.0-beta.44",
18
- "@nocobase/server": "2.1.0-beta.44",
19
- "@nocobase/data-source-manager": "2.1.0-beta.44",
13
+ "@nocobase/plugin-acl": "2.1.0-beta.45",
14
+ "@nocobase/utils": "2.1.0-beta.45",
15
+ "@nocobase/flow-engine": "2.1.0-beta.45",
16
+ "@nocobase/client-v2": "2.1.0-beta.45",
17
+ "@nocobase/ai": "2.1.0-beta.45",
18
+ "@nocobase/server": "2.1.0-beta.45",
19
+ "@nocobase/data-source-manager": "2.1.0-beta.45",
20
20
  "lodash": "4.18.1",
21
- "@nocobase/acl": "2.1.0-beta.44",
22
- "@nocobase/database": "2.1.0-beta.44",
21
+ "@nocobase/acl": "2.1.0-beta.45",
22
+ "@nocobase/database": "2.1.0-beta.45",
23
23
  "@ant-design/icons": "5.6.1",
24
24
  "antd": "5.24.2",
25
25
  "react-router-dom": "6.30.1",
@@ -28,9 +28,9 @@ module.exports = {
28
28
  "react-i18next": "11.18.6",
29
29
  "@emotion/css": "11.13.0",
30
30
  "ahooks": "3.7.8",
31
- "@nocobase/actions": "2.1.0-beta.44",
31
+ "@nocobase/actions": "2.1.0-beta.45",
32
32
  "sequelize": "6.35.2",
33
- "@nocobase/test": "2.1.0-beta.44",
33
+ "@nocobase/test": "2.1.0-beta.45",
34
34
  "@formily/antd-v5": "1.2.3",
35
35
  "@formily/core": "2.3.7",
36
36
  "@formily/reactive": "2.3.7",
@@ -1 +1 @@
1
- {"name":"zod","version":"4.3.5","type":"module","license":"MIT","author":"Colin McDonnell <zod@colinhacks.com>","description":"TypeScript-first schema declaration and validation library with static type inference","homepage":"https://zod.dev","llms":"https://zod.dev/llms.txt","llmsFull":"https://zod.dev/llms-full.txt","mcpServer":"https://mcp.inkeep.com/zod/mcp","funding":"https://github.com/sponsors/colinhacks","sideEffects":false,"files":["src","**/*.js","**/*.mjs","**/*.cjs","**/*.d.ts","**/*.d.mts","**/*.d.cts","**/package.json"],"keywords":["typescript","schema","validation","type","inference"],"main":"./index.cjs","types":"./index.d.cts","module":"./index.js","zshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts","./mini":"./src/mini/index.ts","./locales":"./src/locales/index.ts","./v3":"./src/v3/index.ts","./v4":"./src/v4/index.ts","./v4-mini":"./src/v4-mini/index.ts","./v4/mini":"./src/v4/mini/index.ts","./v4/core":"./src/v4/core/index.ts","./v4/locales":"./src/v4/locales/index.ts","./v4/locales/*":"./src/v4/locales/*"},"conditions":{"@zod/source":"src"}},"exports":{"./package.json":"./package.json",".":{"@zod/source":"./src/index.ts","types":"./index.d.cts","import":"./index.js","require":"./index.cjs"},"./mini":{"@zod/source":"./src/mini/index.ts","types":"./mini/index.d.cts","import":"./mini/index.js","require":"./mini/index.cjs"},"./locales":{"@zod/source":"./src/locales/index.ts","types":"./locales/index.d.cts","import":"./locales/index.js","require":"./locales/index.cjs"},"./v3":{"@zod/source":"./src/v3/index.ts","types":"./v3/index.d.cts","import":"./v3/index.js","require":"./v3/index.cjs"},"./v4":{"@zod/source":"./src/v4/index.ts","types":"./v4/index.d.cts","import":"./v4/index.js","require":"./v4/index.cjs"},"./v4-mini":{"@zod/source":"./src/v4-mini/index.ts","types":"./v4-mini/index.d.cts","import":"./v4-mini/index.js","require":"./v4-mini/index.cjs"},"./v4/mini":{"@zod/source":"./src/v4/mini/index.ts","types":"./v4/mini/index.d.cts","import":"./v4/mini/index.js","require":"./v4/mini/index.cjs"},"./v4/core":{"@zod/source":"./src/v4/core/index.ts","types":"./v4/core/index.d.cts","import":"./v4/core/index.js","require":"./v4/core/index.cjs"},"./v4/locales":{"@zod/source":"./src/v4/locales/index.ts","types":"./v4/locales/index.d.cts","import":"./v4/locales/index.js","require":"./v4/locales/index.cjs"},"./v4/locales/*":{"@zod/source":"./src/v4/locales/*","types":"./v4/locales/*","import":"./v4/locales/*","require":"./v4/locales/*"}},"repository":{"type":"git","url":"git+https://github.com/colinhacks/zod.git"},"bugs":{"url":"https://github.com/colinhacks/zod/issues"},"support":{"backing":{"npm-funding":true}},"scripts":{"clean":"git clean -xdf . -e node_modules","build":"zshy --project tsconfig.build.json","postbuild":"tsx ../../scripts/write-stub-package-jsons.ts && pnpm biome check --write .","test:watch":"pnpm vitest","test":"pnpm vitest run","prepublishOnly":"tsx ../../scripts/check-versions.ts"},"_lastModified":"2026-06-03T13:56:39.654Z"}
1
+ {"name":"zod","version":"4.3.5","type":"module","license":"MIT","author":"Colin McDonnell <zod@colinhacks.com>","description":"TypeScript-first schema declaration and validation library with static type inference","homepage":"https://zod.dev","llms":"https://zod.dev/llms.txt","llmsFull":"https://zod.dev/llms-full.txt","mcpServer":"https://mcp.inkeep.com/zod/mcp","funding":"https://github.com/sponsors/colinhacks","sideEffects":false,"files":["src","**/*.js","**/*.mjs","**/*.cjs","**/*.d.ts","**/*.d.mts","**/*.d.cts","**/package.json"],"keywords":["typescript","schema","validation","type","inference"],"main":"./index.cjs","types":"./index.d.cts","module":"./index.js","zshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts","./mini":"./src/mini/index.ts","./locales":"./src/locales/index.ts","./v3":"./src/v3/index.ts","./v4":"./src/v4/index.ts","./v4-mini":"./src/v4-mini/index.ts","./v4/mini":"./src/v4/mini/index.ts","./v4/core":"./src/v4/core/index.ts","./v4/locales":"./src/v4/locales/index.ts","./v4/locales/*":"./src/v4/locales/*"},"conditions":{"@zod/source":"src"}},"exports":{"./package.json":"./package.json",".":{"@zod/source":"./src/index.ts","types":"./index.d.cts","import":"./index.js","require":"./index.cjs"},"./mini":{"@zod/source":"./src/mini/index.ts","types":"./mini/index.d.cts","import":"./mini/index.js","require":"./mini/index.cjs"},"./locales":{"@zod/source":"./src/locales/index.ts","types":"./locales/index.d.cts","import":"./locales/index.js","require":"./locales/index.cjs"},"./v3":{"@zod/source":"./src/v3/index.ts","types":"./v3/index.d.cts","import":"./v3/index.js","require":"./v3/index.cjs"},"./v4":{"@zod/source":"./src/v4/index.ts","types":"./v4/index.d.cts","import":"./v4/index.js","require":"./v4/index.cjs"},"./v4-mini":{"@zod/source":"./src/v4-mini/index.ts","types":"./v4-mini/index.d.cts","import":"./v4-mini/index.js","require":"./v4-mini/index.cjs"},"./v4/mini":{"@zod/source":"./src/v4/mini/index.ts","types":"./v4/mini/index.d.cts","import":"./v4/mini/index.js","require":"./v4/mini/index.cjs"},"./v4/core":{"@zod/source":"./src/v4/core/index.ts","types":"./v4/core/index.d.cts","import":"./v4/core/index.js","require":"./v4/core/index.cjs"},"./v4/locales":{"@zod/source":"./src/v4/locales/index.ts","types":"./v4/locales/index.d.cts","import":"./v4/locales/index.js","require":"./v4/locales/index.cjs"},"./v4/locales/*":{"@zod/source":"./src/v4/locales/*","types":"./v4/locales/*","import":"./v4/locales/*","require":"./v4/locales/*"}},"repository":{"type":"git","url":"git+https://github.com/colinhacks/zod.git"},"bugs":{"url":"https://github.com/colinhacks/zod/issues"},"support":{"backing":{"npm-funding":true}},"scripts":{"clean":"git clean -xdf . -e node_modules","build":"zshy --project tsconfig.build.json","postbuild":"tsx ../../scripts/write-stub-package-jsons.ts && pnpm biome check --write .","test:watch":"pnpm vitest","test":"pnpm vitest run","prepublishOnly":"tsx ../../scripts/check-versions.ts"},"_lastModified":"2026-06-08T04:32:19.349Z"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nocobase/plugin-data-source-manager",
3
- "version": "2.1.0-beta.44",
3
+ "version": "2.1.0-beta.45",
4
4
  "main": "dist/server/index.js",
5
5
  "displayName": "Data source manager",
6
6
  "displayName.ru-RU": "Менеджер управления источниками данных",
@@ -22,6 +22,6 @@
22
22
  "keywords": [
23
23
  "Data model tools"
24
24
  ],
25
- "gitHead": "540d4897b1696cc24c0754521b0b766978b4933c",
25
+ "gitHead": "42587115fc34c3eb01ef2b2549f1c998e5708318",
26
26
  "license": "Apache-2.0"
27
27
  }
@@ -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
- "use strict";(self.webpackChunk_nocobase_plugin_data_source_manager_client_v2=self.webpackChunk_nocobase_plugin_data_source_manager_client_v2||[]).push([["167"],{442:function(e,t,n){n.r(t),n.d(t,{default:function(){return ts}});var r=n(694),l=n(625),a=n(59),o=n(155),i=n.n(o),u=n(61),c=n(143),s=n(938),d=n(375),m=n(799),f=n(485),p=n(768),v=n(890);function y(e,t,n,r){var l="main"===e?"collections/".concat(t,"/fields:").concat(n):"dataSourcesCollections/".concat(e,".").concat(t,"/fields:").concat(n);return null==r?l:"".concat(l,"?filterByTk=").concat(encodeURIComponent(String(r)))}function g(e){return(null==e?void 0:e.fieldInterfaces)||(null==e?void 0:e.availableFieldInterfaces)}function b(e,t){return null==e?void 0:e.some(function(e){return("string"==typeof e?e:e.interface||e.name)===t})}function h(e,t,n,r){var l=g(t)||{},a=l.include,o=l.exclude,i=void 0===o?[]:o,u=Array.isArray(a)&&a.length>0;return e.filter(function(e){return"systemInfo"===e.group?"tableoid"===e.name?u?b(a,e.name):(null==r?void 0:r.databaseDialect)==="postgres":"boolean"!=typeof n[e.name]||n[e.name]:u?b(a,e.name):!i.includes(e.name)})}function S(e,t){var n=(g(t)||{}).create,r=null==n?void 0:n.include,l=(null==n?void 0:n.exclude)||[],a=Array.isArray(r)&&r.length>0;return e.filter(function(e){return a?b(r,e.name):!l.includes(e.name)})}var E=n(428);"u">typeof window&&void 0!==window.document&&window.document.createElement;let w=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:n}=e;return"translate3d("+(t?Math.round(t):0)+"px, "+(n?Math.round(n):0)+"px, 0)"}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:n}=e;return"scaleX("+t+") scaleY("+n+")"}},Transform:{toString(e){if(e)return[w.Translate.toString(e),w.Scale.toString(e)].join(" ")}},Transition:{toString(e){let{property:t,duration:n,easing:r}=e;return t+" "+n+"ms "+r}}});var C=n(185),F=n.n(C),k=n(773);function I(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 x(e,t,n,r,l,a,o){try{var i=e[a](o),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,l)}function O(e){return function(){var t=this,n=arguments;return new Promise(function(r,l){var a=e.apply(t,n);function o(e){x(a,r,l,o,i,"next",e)}function i(e){x(a,r,l,o,i,"throw",e)}o(void 0)})}}function A(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function T(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){A(e,t,n[t])})}return e}function M(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function D(e,t){if(null==e)return{};var n,r,l,a={};if("u">typeof Reflect&&Reflect.ownKeys){for(l=0,n=Reflect.ownKeys(Object(e));l<n.length;l++)r=n[l],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}if(a=function(e,t){if(null==e)return{};var n,r,l={},a=Object.getOwnPropertyNames(e);for(r=0;r<a.length;r++)n=a[r],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(l[n]=e[n]);return l}(e,t),Object.getOwnPropertySymbols)for(l=0,n=Object.getOwnPropertySymbols(e);l<n.length;l++)r=n[l],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}function j(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,l=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=l){var a=[],o=!0,i=!1;try{for(l=l.call(e);!(o=(n=l.next()).done)&&(a.push(n.value),!t||a.length!==t);o=!0);}catch(e){i=!0,r=e}finally{try{o||null==l.return||l.return()}finally{if(i)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 P(e){return function(e){if(Array.isArray(e))return I(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.")}()}function K(e,t){if(e){if("string"==typeof e)return I(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 I(e,t)}}function R(e,t){var n,r,l,a={label:0,sent:function(){if(1&l[0])throw l[1];return l[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(o,"next",{value:u(0)}),i(o,"throw",{value:u(1)}),i(o,"return",{value:u(2)}),"function"==typeof Symbol&&i(o,Symbol.iterator,{value:function(){return this}}),o;function u(i){return function(u){var c=[i,u];if(n)throw TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(l=2&c[0]?r.return:c[0]?r.throw||((l=r.return)&&l.call(r),0):r.next)&&!(l=l.call(r,c[1])).done)return l;switch(r=0,l&&(c=[2&c[0],l.value]),c[0]){case 0:case 1:l=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(!(l=(l=a.trys).length>0&&l[l.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!l||c[1]>l[0]&&c[1]<l[3])){a.label=c[1];break}if(6===c[0]&&a.label<l[1]){a.label=l[1],l=c;break}if(l&&a.label<l[2]){a.label=l[2],a.ops.push(c);break}l[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],r=0}finally{n=l=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}function q(e){return e.split(".")}var V=/^[a-zA-Z][a-zA-Z0-9_-]*$/,N="Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.",B=new Set(["Select","CollectionSelect","RemoteSelect"]),z=new Set(["target"]),L="{{fileCollections}}",_=new Set(["sourceKey"]),G=new Set(["targetKey"]),$={red:"Red",magenta:"Magenta",volcano:"Volcano",orange:"Orange",gold:"Gold",lime:"Lime",green:"Green",cyan:"Cyan",blue:"Blue",geekblue:"Geek blue",purple:"Purple",default:"Default"},U=[{label:"Recommended",colors:["#8BBB11","#52C41A","#13A8A8","#1677FF","#F5222D","#FADB14","#E6F4FF","#fff1f0","#F6FFED","#E6FFFB","#FA8C164D","#FADB144D","#52C41A4D","#1677FF4D","#2F54EB4D","#722ED14D"]}],W=i().createContext(null);function J(e){var t=String(e["data-row-key"]),n=(0,E.useSortable)({id:t}),r=n.attributes,l=n.isDragging,a=n.listeners,o=n.setActivatorNodeRef,u=n.setNodeRef,c=n.transform,s=n.transition,d=T(M(T({},e.style),{transform:w.Transform.toString(c),transition:s}),l?{position:"relative",zIndex:1}:null);return i().createElement(W.Provider,{value:{attributes:r,listeners:a,setActivatorNodeRef:o}},i().createElement("tr",M(T({ref:u},e),{style:d})))}function X(e){var t=i().useContext(W);return i().createElement("span",M(T({ref:e.disabled||null==t?void 0:t.setActivatorNodeRef},e.disabled?{}:null==t?void 0:t.attributes,e.disabled?{}:null==t?void 0:t.listeners),{style:{alignItems:"center",color:"var(--ant-color-text-tertiary)",cursor:e.disabled?"not-allowed":"grab",display:"inline-flex"}}),i().createElement(d.MenuOutlined,null))}function H(e,t){return(0,f.evaluateFieldConfigureExpression)(e,{context:t,values:t,getValue:function(e){return(0,k.get)(t,e)},setValue:function(){}})}function Z(e,t){return Array.isArray(e)?e.map(function(e){var n;return(void 0===e?"undefined":e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e)=="object"&&null!==e?{value:e.value,label:(0,s.h)(null!=(n=e.label)?n:e.value,t)}:{value:e,label:String(e)}}):[]}function Y(e,t){t.forEach(function(t){void 0===(0,k.get)(e,t.name)&&void 0!==t.defaultValue&&(0,k.set)(e,t.name,function(e){if("string"!=typeof e)return(0,k.cloneDeep)(e);var t=e.match(/^\s*\{\{\s*useNewId\((['"])(.*?)\1\)\s*\}\}\s*$/);return t?(0,r.randomId)(t[2]):e}(t.defaultValue))})}function Q(e,t,n,r){return{changedName:r,context:n,values:t,getValue:function(e){return(0,k.get)(t,e)},setValue:function(t,n){(0,k.get)(e.getFieldsValue(!0),t)!==n&&e.setFieldValue(q(t),n)}}}function ee(e,t,n){if(t)return(0,k.cloneDeep)(t);var l=M(T({name:(0,r.randomId)("f_")},(0,k.cloneDeep)((null==e?void 0:e.default)||{})),{interface:null==e?void 0:e.name});return l.reverseField&&(l.reverseField.name=(0,r.randomId)("f_")),l.uiSchema&&(null==e?void 0:e.name)!=="tableoid"&&delete l.uiSchema.title,(null==e?void 0:e.name)==="tableoid"&&((0,k.set)(l,"name","__collection"),(0,k.set)(l,"uiSchema.title",(0,s.A)((0,k.get)(l,"uiSchema.title")||'{{t("Table OID")}}',n))),l}function et(e){return"string"==typeof e?e.replace(/[^a-zA-Z0-9_-]/g,""):""}function en(e){return[e.mode,e.dataSourceKey,e.collectionName||"",e.fieldName||"",e.interfaceName||""].join(":")}function er(e){var t=(0,c.kj)(),n=a.Form.useFormInstance(),l=(0,m.useSensors)((0,m.useSensor)(m.PointerSensor,{activationConstraint:{distance:4}})),u=(0,o.useMemo)(function(){return Object.keys($).map(function(e){return{value:e,label:i().createElement(a.Tag,{color:e,style:{marginInlineEnd:0}},t($[e]||$.default))}})},[t]),s=(0,o.useCallback)(function(e){var t=n.getFieldValue("defaultValue");Array.isArray(t)?n.setFieldValue("defaultValue",t.filter(function(t){return t!==e})):t===e&&n.setFieldValue("defaultValue",void 0)},[n]);return i().createElement(a.Form.List,{name:e.name},function(o,c){var f=c.add,p=c.move,v=c.remove,y=o.map(function(e){return String(e.key)}),g=[{key:"sort",width:48,align:"center",render:function(){return i().createElement(X,{disabled:e.disabled})}},{title:t("Option value"),dataIndex:"value",render:function(t,n){return i().createElement(a.Form.Item,{name:[n.name,"value"],rules:[{required:!0}],style:{marginBottom:0}},i().createElement(a.Input,{disabled:e.disabled}))}},{title:t("Option label"),dataIndex:"label",render:function(t,n){return i().createElement(a.Form.Item,{name:[n.name,"label"],rules:[{required:!0}],style:{marginBottom:0}},i().createElement(a.Input,{disabled:e.disabled}))}},{title:t("Color"),dataIndex:"color",width:180,render:function(t,n){return i().createElement(a.Form.Item,{name:[n.name,"color"],style:{marginBottom:0}},i().createElement(a.Select,{allowClear:!0,disabled:e.disabled,options:u}))}},{key:"actions",width:56,align:"center",render:function(r,l){return i().createElement(a.Button,{"aria-label":t("Delete"),icon:i().createElement(d.DeleteOutlined,null),disabled:e.disabled,type:"text",onClick:function(){s(n.getFieldValue(P(e.name).concat([l.name,"value"]))),v(l.name)}})}}];return i().createElement("div",{style:{border:"1px solid var(--ant-color-border)",borderRadius:6,overflow:"hidden"}},i().createElement(m.DndContext,{sensors:l,collisionDetection:m.closestCenter,onDragEnd:function(e){var t=e.active,n=e.over;if(n&&t.id!==n.id){var r=y.indexOf(String(t.id)),l=y.indexOf(String(n.id));r<0||l<0||p(r,l)}}},i().createElement(E.SortableContext,{items:y,strategy:E.verticalListSortingStrategy},i().createElement(a.Table,{columns:g,dataSource:o,pagination:!1,rowKey:function(e){return String(e.key)},size:"small",locale:{emptyText:t("No data")},components:{body:{row:J}}}))),i().createElement(a.Button,{block:!0,icon:i().createElement(d.PlusOutlined,null),disabled:e.disabled,type:"dashed",size:"small",style:{borderBlockEnd:0,borderInline:0,borderRadius:0,height:36,marginTop:-1},onClick:function(){return f({value:(0,r.randomId)(),label:""})}},t("Add option")))})}function el(e,t){if(!e)return null;var n=(null==t?void 0:t.timeOnly)&&"string"==typeof e?"2000-01-01 ".concat(e):e,r=F()(n);return r.isValid()?r:null}function ea(e){var t=e.component,n=e.componentProps,r=e.disabled,l=e.onChange,o=e.options,u=e.value;if("Checkbox"===t)return i().createElement(a.Checkbox,{checked:!!u,disabled:r,onChange:function(e){return null==l?void 0:l(e.target.checked)}});if("Checkbox.Group"===t)return i().createElement(a.Checkbox.Group,{disabled:r,options:o,value:Array.isArray(u)?u:[],onChange:function(e){return null==l?void 0:l(e)}});if("Radio.Group"===t)return i().createElement(a.Radio.Group,{disabled:r,options:o,value:u,onChange:function(e){return null==l?void 0:l(e.target.value)}});if("Select"===t){var c=n.mode;return i().createElement(a.Select,{allowClear:!0,disabled:r,mode:c,options:o,value:u,onChange:function(e){return null==l?void 0:l(e)}})}if("InputNumber"===t||"Percent"===t||"UnixTimestamp"===t){var s=n.style,d=D(n,["style"]);return i().createElement(a.InputNumber,T({style:T({width:"100%"},s),disabled:r,value:u,onChange:function(e){return null==l?void 0:l(e)}},d))}if("DatePicker"===t){var m=n.dateFormat,f=n.dateOnly,v=n.format,y=(n.gmt,n.picker),g=void 0===y?"date":y,b=n.showTime,h=n.timeFormat,S=(n.utc,D(n,["dateFormat","dateOnly","format","gmt","picker","showTime","timeFormat","utc"])),E=v||m||(0,p.getPickerFormat)(g),w=b?"".concat(E," ").concat(void 0===h?"HH:mm:ss":h):E;return i().createElement(a.DatePicker,T({style:{width:"100%"},disabled:r,picker:g,showTime:!f&&b,format:w,value:el(u),onChange:function(e,t){return null==l?void 0:l(t||null)}},S))}if("TimePicker"===t){var C=n.format,F=D(n,["format"]);return i().createElement(a.TimePicker,T({style:{width:"100%"},disabled:r,format:void 0===C?"HH:mm:ss":C,value:el(u,{timeOnly:!0}),onChange:function(e,t){return null==l?void 0:l(t||null)}},F))}return"ColorPicker"===t?i().createElement(a.ColorPicker,T({allowClear:!0,disabled:r,value:u,trigger:"hover",destroyTooltipOnHide:!0,presets:U,onChange:function(e,t){return null==l?void 0:l(t)}},n)):["Input.TextArea","Markdown","RichText","Input.JSON"].includes(t||"")?i().createElement(a.Input.TextArea,{autoSize:{minRows:4,maxRows:8},disabled:r,value:u,onChange:function(e){return null==l?void 0:l(e.target.value)}}):i().createElement(a.Input,{disabled:r,value:u,onChange:function(e){return null==l?void 0:l(e.target.value)}})}function eo(e){var t=e.allowClear,n=e.autoSelectFirstOption,r=e.disabled,l=e.form,u=e.namePath,c=e.onChange,s=e.options,d=e.selectProps,m=e.showSearch,f=e.value,p=a.Form.useWatch(u,l),v=null!=f?f:p;d.allowClear,d.filterOption,d.showSearch;var y=D(d,["allowClear","filterOption","showSearch"]);return(0,o.useEffect)(function(){if(n&&(null==v||""===v)&&s.length){var e=s[0].value;l.setFieldValue(u,e),null==c||c(e,s[0])}},[n,v,l,u,c,s]),i().createElement(a.Select,M(T({allowClear:t,disabled:r,options:s,showSearch:m,value:f,onChange:c},y),{filterOption:function(e,t){return String((null==t?void 0:t.label)||"").toLowerCase().includes(e.toLowerCase())}}))}function ei(e){var t=(0,c.kj)(),n=e.availableValidationOptions,l=e.excludeValidationOptions,u=e.onChange,m=e.type,p=e.value,v=(0,o.useMemo)(function(){return(null==p?void 0:p.rules)||[]},[null==p?void 0:p.rules]),y=(null==p?void 0:p.type)||m||"string",g=(0,o.useMemo)(function(){var e=f.fieldValidationConfigureRegistry.getGroup(y),t=(null==l?void 0:l.length)?e.filter(function(e){return!l.includes(e.key)}):e;if(null==n?void 0:n.filter(function(e){return"required"!==e}).length){var r=n.map(function(e){return t.find(function(t){return t.key===e})}).filter(Boolean);return r.length?r:t}return t},[n,l,y]),b=new Set(v.map(function(e){return e.name})),h=g.filter(function(e){return!b.has(e.key)}).map(function(e){return{key:e.key,label:(0,s.h)(e.label,t)}}),S=(0,o.useCallback)(function(e){return g.find(function(t){return t.key===e})},[g]),E=(0,o.useCallback)(function(e,t){null==u||u({type:y,rules:v.map(function(n){return n.key===e?t(n):n})})},[u,v,y]),w=(0,o.useMemo)(function(){return{items:h,onClick:function(e){var t=e.key,n=S(String(t)),l=((null==n?void 0:n.params)||[]).reduce(function(e,t){return void 0!==t.defaultValue&&(e[t.key]=t.defaultValue),e},{});null==u||u({type:y,rules:P(v).concat([{key:(0,r.randomId)("r_"),name:String(t),args:l,paramsType:null==n?void 0:n.paramsType}])})}}},[S,h,u,v,y]),C=(0,o.useCallback)(function(e){var t=v.filter(function(t){return t.key!==e});null==u||u({type:y,rules:t})},[u,v,y]),k=(0,o.useCallback)(function(e,n){var r,l,o=null!=(r=null==(l=e.args)?void 0:l[n.key])?r:n.defaultValue,u=function(t){E(e.key,function(e){return M(T({},e),{args:M(T({},e.args||{}),A({},n.key,t))})})};return"checkbox"===n.componentType?i().createElement(a.Checkbox,{checked:!!o,onChange:function(e){return u(e.target.checked)}}):"radio"===n.componentType?i().createElement(a.Radio.Group,{value:o,options:(n.options||[]).map(function(e){return{label:(0,s.h)(e.label,t),value:e.value}}),onChange:function(e){return u(e.target.value)}}):"singleSelect"===n.componentType||"multipleSelect"===n.componentType?i().createElement(a.Select,{allowClear:!0,mode:"multipleSelect"===n.componentType?"multiple":void 0,value:o,options:(n.options||[]).map(function(e){return{label:(0,s.h)(e.label,t),value:e.value}}),onChange:u}):"inputNumber"===n.componentType?i().createElement(a.InputNumber,{style:{width:"100%"},value:o,onChange:u}):"datePicker"===n.componentType?i().createElement(a.DatePicker,{style:{width:"100%"},value:o?F()(o):null,onChange:function(e){return u(null==e?void 0:e.toISOString())}}):i().createElement(a.Input,{value:o,onChange:function(e){return u(e.target.value)}})},[t,E]);return i().createElement("div",null,i().createElement(a.Space,{direction:"vertical",style:{width:"100%",marginBottom:12*!!v.length},size:0},v.map(function(e){var n,r=S(e.name);return i().createElement("div",{key:e.key,style:{border:"1px solid var(--ant-color-border)",borderRadius:6,overflow:"hidden"}},i().createElement("div",{style:{alignItems:"center",display:"flex",justifyContent:"space-between",minHeight:40,padding:"8px 12px"}},i().createElement(a.Space,null,i().createElement(d.DownOutlined,null),i().createElement("span",null,(0,s.h)((null==r?void 0:r.label)||e.name,t))),i().createElement(a.Button,{"aria-label":t("Delete"),icon:i().createElement(d.DeleteOutlined,null),size:"small",type:"text",onClick:function(){return C(e.key)}})),(null==r?void 0:r.hasValue)&&(null==(n=r.params)?void 0:n.length)?i().createElement("div",{style:{background:"var(--ant-color-fill-tertiary)",borderTop:"1px solid var(--ant-color-border)",padding:12}},r.params.map(function(n){return i().createElement(a.Form.Item,{key:n.key,label:(0,s.h)(n.label,t),required:!!n.required,style:{marginBottom:0}},k(e,n))})):null)})),i().createElement("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"}},i().createElement(a.Dropdown,{menu:w,placement:"bottomLeft",disabled:!h.length},i().createElement(a.Button,{size:"small",type:"dashed",icon:i().createElement(d.PlusOutlined,null)},t("Add rule")," ",i().createElement(d.DownOutlined,null))),i().createElement("span",null,i().createElement("span",{style:{color:"var(--ant-color-text-secondary)"}},t("References"),": "),i().createElement("a",{href:"https://joi.dev/api/",target:"_blank",rel:"noreferrer"},t("Joi API")))))}function eu(e){var t=a.theme.useToken().token;return e.content?i().createElement("span",{style:{background:t.colorBgTextHover,borderRadius:t.borderRadiusOuter,display:"inline-block",lineHeight:1,marginLeft:t.marginMD,padding:t.paddingXXS}},e.content):null}function ec(e){return i().createElement("span",{style:{display:"inline-flex"}},i().createElement("span",null,e.format),i().createElement(eu,{content:F()().format(e.format)}))}function es(e){var t=(0,o.useMemo)(function(){return e.formats||[]},[e.formats]),n=!!e.value&&!t.includes(e.value),r=j((0,o.useState)(n?e.value:e.defaultValue||t[0]||""),2),l=r[0],u=r[1];return(0,o.useEffect)(function(){u(e.value&&!t.includes(e.value)?e.value:e.defaultValue||t[0]||"")},[t,e.defaultValue,e.value]),i().createElement(a.Radio.Group,{disabled:e.disabled,value:n?"custom":e.value,onChange:function(t){var n,r;if("custom"===t.target.value){null==(r=e.onChange)||r.call(e,l);return}null==(n=e.onChange)||n.call(e,t.target.value)}},i().createElement(a.Space,{direction:"vertical"},e.options.map(function(t){if("custom"===t.value)return i().createElement(a.Radio,{key:"custom",value:"custom",style:{display:"flex",margin:"5px 0"}},i().createElement(a.Input,{disabled:e.disabled,style:{width:150},value:l,onChange:function(t){var n,r=t.target.value;u(r),null==(n=e.onChange)||n.call(e,r||void 0)}}),i().createElement(eu,{content:l?F()().format(l):null}));if(e.picker&&"date"!==e.picker)return null;var n=String(t.value);return i().createElement(a.Radio,{key:n,value:t.value,"aria-label":n,style:{display:"flex",margin:"5px 0"}},i().isValidElement(t.label)?t.label:i().createElement(ec,{format:"string"==typeof t.label?t.label:n}))})))}function ed(e){var t=e.fallbackTitle,n=e.fieldInterface,r=e.label,l=(0,c.kj)(),u=a.theme.useToken().token,d=(0,o.useMemo)(function(){return{container:{backgroundColor:u.colorFillAlter,marginBottom:u.marginLG,padding:u.paddingSM+u.paddingXXS},title:{color:u.colorText},description:{color:u.colorTextDescription,marginTop:u.marginXS},tag:{background:"none"}}},[u.colorFillAlter,u.colorText,u.colorTextDescription,u.marginLG,u.marginXS,u.paddingSM,u.paddingXXS]);return i().createElement("div",{style:d.container},i().createElement("div",{style:d.title},r,": ",i().createElement(a.Tag,{style:d.tag},(0,s.h)((null==n?void 0:n.title)||t,l))),(null==n?void 0:n.description)?i().createElement("div",{style:d.description},(0,s.h)(n.description,l)):null)}function em(e,t){return e.map(function(e){return{value:e.name,label:(0,s.h)(e.title||e.name,t)}})}function ef(e){var t=(0,c.kj)(),n=e.collection,r=e.collections,l=e.components,u=e.context,d=e.form,m=e.name,p=e.schema,v=q(m),y=null==p?void 0:p["x-component"],g=y?null==l?void 0:l[y]:void 0,b=a.Form.useWatch("target",d),h=a.Form.useWatch("autoCreateReverseField",d),S=a.Form.useWatch("inputable",d),E=a.Form.useWatch(["uiSchema","enum"],d),w=a.Form.useWatch([],d)||d.getFieldsValue(!0),C=(0,o.useRef)(),F=(0,o.useMemo)(function(){return M(T({},u),{inputable:!!S,showReverseFieldConfig:!!h||!!d.getFieldValue(["reverseField","key"])})},[h,u,d,S]),I=(0,f.getCoreFieldConfigureState)(m,w,F),x=(0,o.useMemo)(function(){return JSON.stringify([null==I?void 0:I.hasValue,null==I?void 0:I.value])},[null==I?void 0:I.hasValue,null==I?void 0:I.value]),O=null!=(el=I.disabled)?el:H(null==p?void 0:p["x-disabled"],F),A=!!I.hidden||H(null==p?void 0:p["x-hidden"],F)||(null==p?void 0:p["x-visible"])!==void 0&&!H(null==p?void 0:p["x-visible"],F)||m.startsWith("reverseField.")&&!F.showReverseFieldConfig,P=null==p?void 0:p.title,K=null==p?void 0:p["x-content"],R=(0,s.h)(P||K||m,t),V=(0,s.h)(K||P||m,t),N=!!P&&!!K&&P!==K,$=(0,s.h)(null==p?void 0:p.description,t),U=T({},(null==p?void 0:p["x-component-props"])||{},I.componentProps||{}),W=r.find(function(e){return e.name===n.name}),J=Array.isArray(n.fields)&&n.fields.length?n.fields:(null==W?void 0:W.fields)||[],X=r.find(function(e){return e.name===b}),Y=(null==X?void 0:X.fields)||[];if((0,o.useEffect)(function(){if(!I.hasValue){C.current=void 0;return}C.current===x||(C.current=x,(0,k.get)(d.getFieldsValue(!0),v)!==I.value&&d.setFieldValue(v,I.value))},[I.hasValue,I.value,d,v,x]),A)return null;if("defaultValue"===m){var Q=Z(I.dataSource||(Array.isArray(E)?E:void 0)||(null==p?void 0:p.enum)||U.options,t);return i().createElement(a.Form.Item,{name:v,label:R,tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(ea,{component:y,componentProps:U,disabled:O,options:Q}))}if(g)return i().createElement(g,{name:m,namePath:v,schema:p,form:d,disabled:O,collection:n,collections:r,context:F,title:R,tooltip:$,componentProps:U,mode:u.createOnly?"create":"edit",fieldInterface:e.fieldInterface});if("Checkbox"===y)return N?i().createElement(a.Form.Item,{name:v,label:R,valuePropName:"checked",tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(a.Checkbox,{disabled:O},V)):i().createElement(a.Form.Item,{name:v,valuePropName:"checked",tooltip:$},i().createElement(a.Checkbox,{disabled:O},V));if("Space"===y&&(null==p?void 0:p.properties))return i().createElement(a.Form.Item,{label:R,tooltip:$},i().createElement(a.Space,{wrap:!0},Object.entries(p.properties).filter(function(e){var t=j(e,2)[1];return(null==t?void 0:t["x-component"])==="Checkbox"}).map(function(e){var n=j(e,2),r=n[0],l=n[1],o=H(null==l?void 0:l["x-disabled"],F),u=(0,s.h)((null==l?void 0:l.title)||(null==l?void 0:l["x-content"])||r,t);return i().createElement(a.Form.Item,{key:r,name:q(r),valuePropName:"checked",noStyle:!0},i().createElement(a.Checkbox,{disabled:o},u))})));if("InputNumber"===y)return i().createElement(a.Form.Item,{name:v,label:R,tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(a.InputNumber,T({style:{width:"100%"},disabled:O},U)));if("ExpiresRadio"===y){var ee=U.defaultValue,et=U.formats,en=U.picker;return i().createElement(a.Form.Item,{name:v,label:R,tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(es,{defaultValue:ee,disabled:O,formats:et,options:Z(null==p?void 0:p.enum,t),picker:en}))}if("Select"===y||"CollectionSelect"===y||"RemoteSelect"===y||"TargetKey"===y||"SourceKey"===y){var el,eu,ec=G.has(m)?Y.filter(function(e){return e.primaryKey||e.unique}).map(function(e){var n;return{value:e.name,label:(0,s.h)((null==(n=e.uiSchema)?void 0:n.title)||e.name,t)}}):_.has(m)?J.filter(function(e){return e.primaryKey||e.unique}).map(function(e){var n;return{value:e.name,label:(0,s.h)((null==(n=e.uiSchema)?void 0:n.title)||e.name,t)}}):z.has(m)&&B.has(y)&&!Array.isArray(null==p?void 0:p.enum)?em(r.filter(function(e){return e.name&&e.name!==n.name}),t):(null==p?void 0:p.enum)==="{{collections}}"?em(r,t):(null==p?void 0:p.enum)===L?em(r.filter(function(e){var t;return e.name&&"file"===((null==e?void 0:e.template)||(null==e||null==(t=e.options)?void 0:t.template))}),t):"CollectionSelect"===y||"RemoteSelect"===y?em(r,t):Z(null==p?void 0:p.enum,t),ed=U.filter,ef=U.multiple,ep=D(U,["filter","multiple"]),ev=M(T({},ep),{mode:ef?"multiple":ep.mode}),ey="function"==typeof ed?ec.filter(function(e){return ed(r.find(function(t){return t.name===e.value}))}):ec;return i().createElement(a.Form.Item,{name:v,label:R,tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(eo,{allowClear:"SourceKey"!==y&&(null==(eu=ep.allowClear)||eu),autoSelectFirstOption:"SourceKey"===y,disabled:O,form:d,namePath:v,options:ey,selectProps:ev,showSearch:"SourceKey"===y||ev.showSearch}))}return"Radio.Group"===y?i().createElement(a.Form.Item,{name:v,label:R,tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(a.Radio.Group,{disabled:O,options:Z(null==p?void 0:p.enum,t)})):"ArrayTable"===y&&"uiSchema.enum"===m?i().createElement(a.Form.Item,{label:R,tooltip:$},i().createElement(er,{name:v,disabled:O})):"FieldValidation"===y?i().createElement(a.Form.Item,{name:v,label:R,tooltip:$},i().createElement(ei,(null==p?void 0:p["x-component-props"])||{})):"Input.TextArea"===y?i().createElement(a.Form.Item,{name:v,label:R,tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(a.Input.TextArea,{disabled:O})):"SourceCollection"===y?i().createElement(a.Form.Item,{label:R,tooltip:$},i().createElement(a.Input,{disabled:!0,value:(0,s.A)(n.title||n.name,t)})):i().createElement(a.Form.Item,{name:v,label:R,tooltip:$,rules:(null==p?void 0:p.required)?[{required:!0}]:void 0},i().createElement(a.Input,{disabled:O}))}function ep(e){var t=a.Form.useWatch([],e.form)||e.form.getFieldsValue(!0),n=(0,o.useMemo)(function(){return(e.item.dependencies||[e.item.name]).map(function(e){return(0,k.get)(t,e)})},[e.item.dependencies,e.item.name,t]),r=(0,o.useMemo)(function(){return JSON.stringify(n)},[n]),l=(0,o.useRef)();return(0,o.useEffect)(function(){e.item.effect&&l.current!==r&&(l.current=r,e.item.effect(Q(e.form,t,e.context)))},[e.context,e.form,e.item,r,t]),null}function ev(e){var t,n,r=(0,c.kj)(),l=a.Form.useWatch([],e.form)||e.form.getFieldsValue(!0),o=Q(e.form,l,e.context),u="function"==typeof e.item.hidden?e.item.hidden(o):e.item.hidden,d="function"==typeof e.item.disabled?e.item.disabled(o):e.item.disabled,m="string"==typeof d?(0,f.evaluateFieldConfigureExpression)(d,o):d,p=e.item.Component,v=M(T({},e.item.schema||{},(t=e.item,n={},void 0!==t.title&&(n.title=t.title),void 0!==t.description&&(n.description=t.description),void 0!==t.required&&(n.required=t.required),void 0!==t.options&&(n.enum=t.options),void 0!==t.defaultValue&&(n.default=t.defaultValue),void 0!==t.component&&(n["x-component"]=t.component),void 0!==t.componentProps&&(n["x-component-props"]=t.componentProps),n)),{"x-disabled":m});return("string"==typeof u?(0,f.evaluateFieldConfigureExpression)(u,o):u)?i().createElement(ep,{context:e.context,form:e.form,item:e.item}):p?i().createElement(i().Fragment,null,i().createElement(ep,{context:e.context,form:e.form,item:e.item}),i().createElement(p,{name:e.item.name,namePath:q(e.item.name),schema:v,form:e.form,disabled:m,collection:e.collection,collections:e.collections,context:e.context,title:(0,s.h)(e.item.title,r),tooltip:(0,s.h)(e.item.description,r),componentProps:e.item.componentProps,mode:e.context.createOnly?"create":"edit",createOnly:e.context.createOnly,editMainOnly:e.context.editMainOnly,disabledJSONB:e.context.disabledJSONB,fieldInterface:e.fieldInterface})):i().createElement(i().Fragment,null,i().createElement(ep,{context:e.context,form:e.form,item:e.item}),i().createElement(ef,{name:e.item.name,schema:v,collection:e.collection,collections:e.collections,configureProperties:e.configureProperties,fieldInterface:e.fieldInterface,form:e.form,context:e.context}))}function ey(e){for(var t=function(t){return i().createElement(ev,{key:t.name,item:t,collection:e.collection,collections:e.collections,configureProperties:[],fieldInterface:e.fieldInterface,form:e.form,context:e.context})},n=[],r=0;r<e.items.length;)!function(){var l,o,u=e.items[r],c=null==(l=u.layout)?void 0:l.row;if(!c)return n.push(t(u)),r+=1;for(var s=[];r<e.items.length&&(null==(o=e.items[r].layout)?void 0:o.row)===c;)s.push(e.items[r]),r+=1;var d=s.reduce(function(e,t){var n,r,l,a,o=(null==(r=t.layout)?void 0:r.column)||t.name,i=e.find(function(e){return e.key===o});return i?i.items.push(t):e.push({key:o,index:null!=(n=null==(l=t.layout)?void 0:l.columnIndex)?n:e.length,span:(null==(a=t.layout)?void 0:a.span)||24,items:[t]}),e},[]).sort(function(e,t){return e.index-t.index}),m=0;n.push(i().createElement(a.Row,{key:"".concat(c,"-").concat(n.length),gutter:24},d.map(function(e){var n=Math.max(e.index-m,0)*e.span;return m=e.index+1,i().createElement(a.Col,{key:e.key,xs:24,md:{span:e.span,offset:n}},e.items.map(function(e){return t(e)}))})))}();return i().createElement(i().Fragment,null,n)}function eg(e){var t,n,l,u,d,m,p,g=(0,c.kj)(),b=(0,r.useFlowContext)(),E=a.App.useApp().notification,w=(0,f.useCurrentAppInfo)(),C=b.dataSourceManager.collectionFieldInterfaceManager,F=j(a.Form.useForm(),1)[0],I=j((0,o.useState)(!1),2),x=I[0],A=I[1],D=(0,o.useRef)(),P=(0,o.useRef)(),K=b.dataSourceManager.getDataSource(e.dataSourceKey),q=(null==w||null==(t=w.database)?void 0:t.dialect)||(null==w||null==(l=w.data)||null==(n=l.database)?void 0:n.dialect),B=(0,o.useMemo)(function(){var t,n,r,l;return function(e,t,n,r,l){if("create"!==r)return e;var a,o=n.app.pm.get(v.v),i=null==o||null==(a=o.getCollectionTemplate)?void 0:a.call(o,t.template||"general");return S(h(e,i,t,{databaseDialect:l}),i)}((n=null==K||null==(t=K.options)?void 0:t.type,(null==(l=b.dataSourceManager.collectionFieldInterfaceManager)||null==(r=l.getFieldInterfaces)?void 0:r.call(l,n))||[]),e.collection,b,e.mode,q)},[q,b,null==K||null==(u=K.options)?void 0:u.type,e.collection,e.mode]),_=j((0,o.useState)((null==(d=e.field)?void 0:d.interface)||e.interfaceName||(null==(m=B[0])?void 0:m.name)),2),G=_[0],$=_[1],U=(0,o.useMemo)(function(){return B.find(function(e){return e.name===G})},[B,G]),W=(0,o.useMemo)(function(){var t;return G?null==C||null==(t=C.getFieldInterfaceConfigure)?void 0:t.call(C,G,e.collection):void 0},[C,G,e.collection]),J=(0,o.useMemo)(function(){return U||W?M(T({},U,W),{default:(null==W?void 0:W.default)||(null==U?void 0:U.default),name:(null==W?void 0:W.name)||(null==U?void 0:U.name)}):void 0},[W,U]),X=(0,s.h)((null==J?void 0:J.title)||G||"-",g),H=(0,s.A)((null==J?void 0:J.title)||G||"-",g),Z=(null==W?void 0:W.ConfigureForm)||(null==W?void 0:W.Component),er=(0,o.useMemo)(function(){return(null==W?void 0:W.items)||[]},[null==W?void 0:W.items]),el=j((0,o.useState)([]),2),ea=el[0],eo=el[1],ei=(0,o.useMemo)(function(){return er.some(function(e){var t,n;return z.has(e.name)||(null==(t=e.schema)?void 0:t.enum)==="{{collections}}"||(null==(n=e.schema)?void 0:n.enum)===L||"CollectionSelect"===e.component||"RemoteSelect"===e.component})},[er]),eu=(0,o.useMemo)(function(){return er.some(function(e){return"type"===e.name})},[er]),ec=(0,o.useMemo)(function(){var t=ee(J,e.field,g);return!e.field&&(D.current||(D.current=t.name||(0,r.randomId)("f_")),t.name=D.current,Y(t,er),((null==U?void 0:U.isAssociation)||(null==W?void 0:W.isAssociation))&&!(0,k.get)(t,"source")&&(0,k.set)(t,"source",e.collection.name)),t},[null==W?void 0:W.isAssociation,er,null==U?void 0:U.isAssociation,J,e.collection.name,e.field,g]),es=(0,o.useMemo)(function(){var t;return en({mode:e.mode,dataSourceKey:e.dataSourceKey,collectionName:e.collection.name,fieldName:null==(t=e.field)?void 0:t.name,interfaceName:G})},[G,e.collection.name,e.dataSourceKey,null==(p=e.field)?void 0:p.name,e.mode]),em=(0,o.useMemo)(function(){return{createOnly:"create"===e.mode,editMainOnly:"edit"===e.mode,createMainOnly:"create"===e.mode&&"main"===e.dataSourceKey,disabledJSONB:"edit"===e.mode,isDialect:function(e){return q===e},primaryKeyOnly:!1}},[q,e.dataSourceKey,e.mode]),ef=(0,o.useRef)(),ep=(0,o.useRef)();(0,o.useEffect)(function(){P.current!==es&&(P.current=es,ep.current=(0,k.cloneDeep)(ec),ef.current=(0,k.cloneDeep)(ec),F.resetFields(),F.setFieldsValue(ec))},[F,ec,es]);var ev=a.Form.useWatch([],F)||F.getFieldsValue(!0),eg=(0,o.useMemo)(function(){return JSON.stringify(ev)},[ev]);(0,o.useEffect)(function(){if(ep.current){var e=ep.current;if((0,k.get)(ev,"name")!==(0,k.get)(e,"name")||(0,k.get)(ev,"interface")!==(0,k.get)(e,"interface")||(0,k.get)(ev,"type")!==(0,k.get)(e,"type"))return;ep.current=void 0,ef.current=(0,k.cloneDeep)(ev),(0,f.runCoreFieldConfigureEffects)(Q(F,ev,em));return}var t=ef.current||{};if(!ef.current){ef.current=(0,k.cloneDeep)(ev),(0,f.runCoreFieldConfigureEffects)(Q(F,ev,em));return}var n=["primaryKey","unique","autoIncrement","autoCreateReverseField","defaultToCurrentTime","uiSchema.x-component-props.picker","uiSchema.x-component-props.showTime"].find(function(e){return(0,k.get)(t,e)!==(0,k.get)(ev,e)});ef.current=(0,k.cloneDeep)(ev),(0,f.runCoreFieldConfigureEffects)(Q(F,ev,em,n))},[em,F,ev,eg]),(0,o.useEffect)(function(){if(ei){var t=!1;return O(function(){var n;return R(this,function(r){switch(r.label){case 0:return[4,b.api.request({url:"dataSources/".concat(e.dataSourceKey,"/collections:list"),params:{paginate:!1,sort:["sort"],filter:{"hidden.$isFalsy":!0},appends:["fields"]}})];case 1:var l,a;return n=r.sent(),t||eo(Array.isArray(a=null==n||null==(l=n.data)?void 0:l.data)?a:Array.isArray(null==a?void 0:a.data)?a.data:[]),[2]}})})(),function(){t=!0}}},[b.api,ei,e.dataSourceKey]),(0,o.useEffect)(function(){var t;!G&&e.interfaceName?$(e.interfaceName):!G&&(null==(t=B[0])?void 0:t.name)&&$(B[0].name)},[B,G,e.interfaceName]);var eb=(0,o.useCallback)(function(t){var n,l=B.find(function(e){return e.name===t}),a=null==C||null==(n=C.getFieldInterfaceConfigure)?void 0:n.call(C,t,e.collection),o=F.getFieldValue(["uiSchema","title"]),i=ee(M(T({},l,a),{default:(null==a?void 0:a.default)||(null==l?void 0:l.default),name:(null==a?void 0:a.name)||(null==l?void 0:l.name)}),void 0,g);Y(i,(null==a?void 0:a.items)||[]),((null==l?void 0:l.isAssociation)||(null==a?void 0:a.isAssociation))&&!(0,k.get)(i,"source")&&(0,k.set)(i,"source",e.collection.name),o&&(0,k.set)(i,"uiSchema.title",o);var u=F.getFieldValue("name");F.isFieldTouched("name")&&u?(0,k.set)(i,"name",u):(D.current||(D.current=i.name||(0,r.randomId)("f_")),(0,k.set)(i,"name",D.current)),P.current=en({mode:e.mode,dataSourceKey:e.dataSourceKey,collectionName:e.collection.name,interfaceName:t}),$(t),F.resetFields(),F.setFieldsValue(i)},[C,B,F,e.collection,e.dataSourceKey,e.mode,g]),eh=(0,o.useCallback)(function(t){var n,r,l={mode:e.mode,fieldInterface:J,collection:e.collection,field:e.field,createOnly:"create"===e.mode,editMainOnly:"edit"===e.mode,disabledJSONB:"edit"===e.mode},a=(null==W?void 0:W.normalizeValues)?W.normalizeValues(t,l):(null==W?void 0:W.normalize)?W.normalize(t,l):t,o=(0,k.cloneDeep)(a);return o.autoCreateReverseField?(0,k.get)(o,"reverseField.uiSchema.title")||(0,k.set)(o,"reverseField.uiSchema.title",(0,k.get)(o,"uiSchema.title")):delete o.reverseField,delete o.autoCreateReverseField,null==U||null==(n=U.initialize)||n.call(U,o),null==W||null==(r=W.initialize)||r.call(W,o,l),o},[W,U,J,e.collection,e.field,e.mode]),eS=(0,o.useCallback)(function(){return O(function(){var t,n,l,a,o,i,u;return R(this,function(c){switch(c.label){case 0:return c.trys.push([0,8,9,10]),l=F.getFieldsValue(!0),"create"===e.mode&&!F.isFieldTouched("name")&&function(e,t){var n=null==e?void 0:e.name;if(!n)return!0;var r=(0,k.get)(e,"uiSchema.title"),l=et(n);return n===r||n===t||!!l&&(l===et(r)||l===et(t))}(l,H)&&(D.current||(D.current=(0,r.randomId)("f_")),F.setFieldValue("name",D.current)),[4,F.validateFields()];case 1:return a=c.sent(),[4,null==W||null==(t=W.validate)?void 0:t.call(W,a,{mode:e.mode,fieldInterface:J,collection:e.collection,field:e.field,createOnly:"create"===e.mode,editMainOnly:"edit"===e.mode,disabledJSONB:"edit"===e.mode})];case 2:if(c.sent(),o=eh(a),A(!0),"create"!==e.mode)return[3,4];return[4,b.api.request({url:y(e.dataSourceKey,e.collection.name,"create"),method:"post",data:o})];case 3:return c.sent(),[3,6];case 4:return[4,b.api.request({url:y(e.dataSourceKey,e.collection.name,"update",null==(i=e.field)?void 0:i.name),method:"post",data:o})];case 5:c.sent(),c.label=6;case 6:return[4,null==(n=b.dataSourceManager.getDataSource(e.dataSourceKey))?void 0:n.reload()];case 7:return c.sent(),e.onSubmitted(),[3,10];case 8:var s,d,m,f;throw Array.isArray(null==(s=u=c.sent())?void 0:s.errorFields)||E.error({message:(d=g("Submit failed"),"string"==typeof(f=(null==(m=(0,k.get)(u,"response.data.errors"))?void 0:m.map(function(e){return e.message}).filter(Boolean).join("\n"))||(0,k.get)(u,"response.data.message")||(0,k.get)(u,"message"))&&f?f:d)}),u;case 9:return A(!1),[7];case 10:return[2]}})})()},[W,b.api,b.dataSourceManager,J,H,F,eh,E,e,g]),eE=(0,s.A)((0,k.get)(e.collection,"title")||e.collection.name,g),ew="".concat(eE," - ").concat("create"===e.mode?g("Add field"):g("Edit field")),eC=new Set((e.collection.fields||[]).map(function(e){return e.name}));return i().createElement(f.DrawerFormLayout,{title:ew,onSubmit:eS,submitting:x,submitText:g("Submit"),cancelText:g("Cancel")},i().createElement(a.Form,{form:F,layout:"vertical",initialValues:ec,autoComplete:"off"},i().createElement(ed,{fieldInterface:J,label:g("Field interface"),fallbackTitle:X}),e.interfaceName||"create"!==e.mode?i().createElement(a.Form.Item,{name:"interface",hidden:!0,rules:[{required:!0}]},i().createElement(a.Input,null)):i().createElement(a.Form.Item,{name:"interface",label:g("Field interface"),rules:[{required:!0}]},i().createElement(a.Select,{options:B.map(function(e){return{value:e.name,label:(0,s.h)(e.title||e.name,g)}}),onChange:eb})),i().createElement(a.Form.Item,{name:["uiSchema","title"],label:g("Field display name"),rules:[{required:!0}]},i().createElement(a.Input,{autoComplete:"off"})),i().createElement(a.Form.Item,{name:"name",label:g("Field name"),rules:[{required:!0},{pattern:"tableoid"===G?/^__collection$/:V,message:g(N)},{validator:function(t,n){return"edit"!==e.mode&&n&&eC.has(n)?Promise.reject(Error(g("Field name already exists"))):Promise.resolve()}}],extra:g(N)},i().createElement(a.Input,{autoComplete:"off",disabled:"edit"===e.mode||"tableoid"===G})),i().createElement(ey,{items:er,collection:e.collection,collections:ea,fieldInterface:J,form:F,context:em}),eu?null:i().createElement(a.Form.Item,{name:"type",hidden:!0,rules:[{required:!0}]},i().createElement(a.Input,null)),Z&&W?i().createElement(Z,{mode:e.mode,fieldInterface:W,collection:e.collection,field:e.field,createOnly:"create"===e.mode,editMainOnly:"edit"===e.mode,disabledJSONB:"edit"===e.mode}):null,i().createElement(a.Form.Item,{name:"description",label:g("Description")},i().createElement(a.Input.TextArea,{autoSize:{minRows:4,maxRows:8}}))))}function eb(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,l,a,o){try{var i=e[a](o),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,l)}function eS(e){return function(){var t=this,n=arguments;return new Promise(function(r,l){var a=e.apply(t,n);function o(e){eh(a,r,l,o,i,"next",e)}function i(e){eh(a,r,l,o,i,"throw",e)}o(void 0)})}}function eE(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}function ew(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function eC(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,l=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=l){var a=[],o=!0,i=!1;try{for(l=l.call(e);!(o=(n=l.next()).done)&&(a.push(n.value),!t||a.length!==t);o=!0);}catch(e){i=!0,r=e}finally{try{o||null==l.return||l.return()}finally{if(i)throw r}}return a}}(e,t)||eF(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 eF(e,t){if(e){if("string"==typeof e)return eb(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 eb(e,t)}}function ek(e,t){var n,r,l,a={label:0,sent:function(){if(1&l[0])throw l[1];return l[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(o,"next",{value:u(0)}),i(o,"throw",{value:u(1)}),i(o,"return",{value:u(2)}),"function"==typeof Symbol&&i(o,Symbol.iterator,{value:function(){return this}}),o;function u(i){return function(u){var c=[i,u];if(n)throw TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(l=2&c[0]?r.return:c[0]?r.throw||((l=r.return)&&l.call(r),0):r.next)&&!(l=l.call(r,c[1])).done)return l;switch(r=0,l&&(c=[2&c[0],l.value]),c[0]){case 0:case 1:l=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(!(l=(l=a.trys).length>0&&l[l.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!l||c[1]>l[0]&&c[1]<l[3])){a.label=c[1];break}if(6===c[0]&&a.label<l[1]){a.label=l[1],l=c;break}if(l&&a.label<l[2]){a.label=l[2],a.ops.push(c);break}l[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],r=0}finally{n=l=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}var eI={basic:{label:"Basic",order:1},choices:{label:"Choices",order:20},media:{label:"Media",order:40},datetime:{label:"Date & Time",order:80},relation:{label:"Relation",order:100},advanced:{label:"Advanced type",order:200},systemInfo:{label:"System info",order:400},others:{label:"Others",order:800}};function ex(e,t){var n,r=e.dataSourceManager.collectionFieldInterfaceManager;return(null==r||null==(n=r.getFieldInterfaces)?void 0:n.call(r,t))||[]}function eO(e,t,n,r){var l,a=n.app.pm.get(v.v);return h(e,null==a||null==(l=a.getCollectionTemplate)?void 0:l.call(a,t.template||"general"),t,{databaseDialect:r})}function eA(e,t){return(null==e?void 0:e.title)||(null==e?void 0:e.label)||t||(null==e?void 0:e.name)}function eT(e){var t,n=null==(t=e.uiSchema)?void 0:t.title;return"string"==typeof n?n:null==n?e.name:String(n)}function eM(e){var t=eC((0,o.useState)(eT(e.record)),2),n=t[0],r=t[1];(0,o.useEffect)(function(){r(eT(e.record))},[e.record]);var l=(0,o.useCallback)(function(){var t=eT(e.record),l=n.trim();l&&l!==t?e.onSave(e.record,l).catch(function(){r(t)}):r(t)},[e,n]);return i().createElement(a.Input,{disabled:e.loading,value:n,onBlur:l,onChange:function(e){return r(e.target.value)},onPressEnter:function(e){return e.currentTarget.blur()},suffix:e.loading?i().createElement(a.Spin,{size:"small"}):null})}function eD(e){return"view"===e.template||e.view}function ej(e,t){var n,r=e.app.pm.get(v.v);return null==r||null==(n=r.getCollectionTemplate)?void 0:n.call(r,t.template||"general")}function eP(e){var t=e||{};return t.rawTitle,function(e,t){if(null==e)return{};var n,r,l,a={};if("u">typeof Reflect&&Reflect.ownKeys){for(l=0,n=Reflect.ownKeys(Object(e));l<n.length;l++)r=n[l],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}if(a=function(e,t){if(null==e)return{};var n,r,l={},a=Object.getOwnPropertyNames(e);for(r=0;r<a.length;r++)n=a[r],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(l[n]=e[n]);return l}(e,t),Object.getOwnPropertySymbols)for(l=0,n=Object.getOwnPropertySymbols(e);l<n.length;l++)r=n[l],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}(t,["rawTitle"])}function eK(e){return Array.isArray(e)?e.filter(Boolean):"string"==typeof e?e.split(".").filter(Boolean):[]}function eR(e){var t=eK(e);return t.length?t.join("."):null}function eq(e){var t,n=(0,c.kj)(),l=(0,r.useFlowContext)(),u=a.App.useApp().message,d=eC(a.Form.useForm(),1)[0],m=eC((0,o.useState)([]),2),p=m[0],v=m[1],y=eC((0,o.useState)(!1),2),g=y[0],b=y[1],h=eC((0,o.useState)([]),2),S=h[0],E=h[1],w=eC((0,o.useState)(!1),2),C=w[0],F=w[1],k=eC((0,o.useState)(!1),2),I=k[0],x=k[1],O=eC((0,o.useState)([]),2),A=O[0],T=O[1],M=eC((0,o.useState)([]),2),D=M[0],j=M[1],P=l.dataSourceManager.getDataSource("main"),K=(t=e.collection).viewName||t.name,R=(0,o.useMemo)(function(){var e=[];return D.forEach(function(t){var r=null==P?void 0:P.getCollection(t);if(r){var l=r.getFields().filter(function(e){return!["hasOne","hasMany","belongsToMany"].includes(e.type)}).map(function(e){var t,r;return{value:e.name,label:(0,s.h)((null==(t=(r=(null==e?void 0:e.options)||e||{}).uiSchema)?void 0:t.title)||r.title||r.name,n)}});e.push({value:t,label:(0,s.h)(r.title||r.name,n),children:l})}}),e},[P,D,n]),q=(0,o.useMemo)(function(){return p.filter(function(e){return e.source||e.interface}).map(function(e){var t;return{title:(0,s.h)((null==(t=e.uiSchema)?void 0:t.title)||e.name,n),dataIndex:e.name,key:e.name,width:200,ellipsis:!0,render:function(e){return null==e?null:(void 0===e?"undefined":e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e)=="object"?JSON.stringify(e):String(e)}}})},[p,n]),V=(0,o.useCallback)(function(t){return eS(function(){var n,r,a,o;return ek(this,function(i){switch(i.label){case 0:F(!0),i.label=1;case 1:return i.trys.push([1,,3,4]),r=["lineString","point","circle","polygon"],a=t.reduce(function(e,t){return t.type&&r.includes(t.type)&&(e[t.name]=t.type),e},{}),[4,l.api.resource("dbViews").query({filterByTk:K,schema:e.collection.schema,fieldTypes:a})];case 2:return E((null==(o=i.sent())||null==(n=o.data)?void 0:n.data)||[]),[3,4];case 3:return F(!1),[7];case 4:return[2]}})})()},[l.api,e.collection.schema,K]);(0,o.useEffect)(function(){var t=!1;return eS(function(){var n,r,a,o;return ek(this,function(i){switch(i.label){case 0:b(!0),i.label=1;case 1:return i.trys.push([1,,4,5]),[4,l.api.resource("dbViews").get({filterByTk:K,schema:e.collection.schema})];case 2:var u,c,s,m,f;if(n=i.sent(),t)return[2];return r={fields:(c=(null==n||null==(u=n.data)?void 0:u.data)||(null==n?void 0:n.data)||n||{}).fields,sources:c.sources,unsupportedFields:c.unsupportedFields},f=new Map(((m={currentFields:e.currentFields,fieldInterfacesByName:e.fieldInterfacesByName,inferredFields:(s=r.fields)?(Array.isArray(s)?s:Object.values(s)).filter(Boolean):[]}).currentFields||[]).map(function(e){return[e.name,e]})),a=m.inferredFields.map(function(e){var t,n,r,l=f.get(e.name)||e,a=m.fieldInterfacesByName[l.interface||e.interface||""],o=(null==a||null==(t=a.default)?void 0:t.uiSchema)||{},i=(null==(n=l.uiSchema)?void 0:n.title)||l.title||(null==(r=e.uiSchema)?void 0:r.title)||e.name,u=ew(eE({},eP(o),eP(l.uiSchema||e.uiSchema)),{title:i});return e.source?ew(eE({},e),{interface:e.interface||l.interface,type:e.type||l.type,uiSchema:u}):ew(eE({},e,l),{uiSchema:u})}),o=Array.isArray(r.sources)?r.sources:[],v(a),T(Array.isArray(r.unsupportedFields)?r.unsupportedFields:[]),j(o),d.setFieldsValue({fields:a.map(function(e){return ew(eE({},e),{source:eR(e.source)})}),schema:e.collection.schema,sources:o,viewName:K}),[4,V(a)];case 3:return i.sent(),[3,5];case 4:return t||b(!1),[7];case 5:return[2]}})})(),function(){t=!0}},[l.api,d,V,e.collection.schema,e.currentFields,e.fieldInterfacesByName,K]);var N=(0,o.useCallback)(function(e,t){var n=function(e){if(Array.isArray(e))return eb(e)}(p)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(p)||eF(p)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}();n[e]=t,v(n),d.setFieldValue("fields",n.map(function(e){return ew(eE({},e),{source:eR(e.source)})}))},[p,d]),B=(0,o.useMemo)(function(){return[{title:n("Field name"),dataIndex:"name",width:130},{title:n("Field source"),dataIndex:"source",width:220,render:function(e,t,r){return i().createElement(a.Cascader,{allowClear:!0,options:R,value:eK(t.source),style:{width:"100%"},placeholder:n("Select field source"),onChange:function(e){var n,l,a,o=(e||[]).map(String),i=o.length?null==P||null==(n=P.getCollectionField(o.join(".")))?void 0:n.options:void 0;N(r,ew(eE({},t),{interface:(null==i?void 0:i.interface)||t.interface,source:o,type:(null==i?void 0:i.type)||t.type,uiSchema:ew(eE({},t.uiSchema,null==i?void 0:i.uiSchema),{title:(null==i||null==(l=i.uiSchema)?void 0:l.title)||(null==(a=t.uiSchema)?void 0:a.title)||t.name})}))}})}},{title:n("Field type"),dataIndex:"type",width:140,render:function(e,t,n){var r;return!t.source&&(null==(r=t.possibleTypes)?void 0:r.length)?i().createElement(a.Select,{value:e,style:{width:"100%"},popupMatchSelectWidth:!1,options:t.possibleTypes.map(function(e){return{label:e,value:e}}),onChange:function(e){return N(n,ew(eE({},t),{type:e}))}}):i().createElement(a.Tag,null,e)}},{title:n("Field interface"),dataIndex:"interface",width:170,render:function(t,r,l){var o,u;return r.source?i().createElement(a.Tag,null,(0,s.h)(eA(e.fieldInterfacesByName[t],t),n)):i().createElement(a.Select,{allowClear:!0,value:t||void 0,style:{width:"100%"},popupMatchSelectWidth:!1,options:(o=e.fieldInterfaceGroups,u=r.type,o.filter(function(e){return!["relation","systemInfo"].includes(e.key)}).map(function(e){return{label:e.label,options:e.children.filter(function(e){var t,n;return!u||(null==(t=e.availableTypes)?void 0:t.includes(u))||(null==(n=e.default)?void 0:n.type)===u}).map(function(e){return{label:e.title||e.label||e.name,value:e.name}})}}).filter(function(e){return e.options.length})).map(function(e){return{label:(0,s.h)(e.label,n),options:e.options.map(function(e){return{value:e.value,label:(0,s.h)(e.label,n)}})}}),onChange:function(t){var n,a,o,i,u,c=e.fieldInterfacesByName[t];N(l,ew(eE({},r),{interface:t||null,type:(null==c||null==(n=c.default)?void 0:n.type)||r.type,uiSchema:ew(eE({},null==c||null==(a=c.default)?void 0:a.uiSchema),{title:(null==c||null==(i=c.default)||null==(o=i.uiSchema)?void 0:o.title)||(null==(u=r.uiSchema)?void 0:u.title)||r.name})}))}})}},{title:n("Field display name"),dataIndex:["uiSchema","title"],width:200,render:function(e,t,n){var r;return i().createElement(a.Input,{value:(null==(r=t.uiSchema)?void 0:r.title)||t.name,onChange:function(e){return N(n,ew(eE({},t),{uiSchema:ew(eE({},eP(t.uiSchema)),{title:e.target.value})}))}})}}]},[N,P,e.fieldInterfaceGroups,e.fieldInterfacesByName,R,n]),z=(0,o.useCallback)(function(){return eS(function(){var t,r;return ek(this,function(a){switch(a.label){case 0:return[4,d.validateFields()];case 1:a.sent(),t=d.getFieldsValue(!0),x(!0),a.label=2;case 2:return a.trys.push([2,,5,6]),[4,l.api.resource("collections").setFields({filterByTk:e.collection.name,values:{fields:t.fields,schema:t.schema,sources:t.sources,viewName:t.viewName}})];case 3:return a.sent(),[4,null==(r=l.dataSourceManager.getDataSource("main"))?void 0:r.reload()];case 4:return a.sent(),e.onSubmitted(),u.success(n("Sync successfully")),[3,6];case 5:return x(!1),[7];case 6:return[2]}})})()},[l.api,l.dataSourceManager,d,u,e,n]);return i().createElement(f.DrawerFormLayout,{title:n("Sync from database"),submitting:I,submitText:n("Submit"),cancelText:n("Cancel"),onSubmit:z},i().createElement(a.Spin,{spinning:g},i().createElement(a.Form,{form:d,layout:"vertical"},p.length?i().createElement(a.Form.Item,{label:n("Fields")},i().createElement(a.Table,{bordered:!0,columns:B,dataSource:p,pagination:!1,rowKey:"name",scroll:{y:300},size:"middle"})):null,A.length?i().createElement(a.Alert,{showIcon:!0,type:"warning",message:n("Unsupported fields"),description:A.map(function(e){return e.name}).join(", ")}):null,i().createElement(a.Form.Item,{label:n("Preview")},i().createElement(a.Spin,{spinning:C},i().createElement(a.Table,{bordered:!0,columns:q,dataSource:S,pagination:!1,rowKey:function(e,t){return String(null!=t?t:0)},scroll:{x:1e3,y:300},size:"middle"}))))))}function eV(e){var t,n,u,m,p,g,b,h,E,w,C,F,k,I,x,O,A,T,M,D,j,P,K=(0,c.kj)(),R=(0,r.useFlowContext)(),q=(0,f.useCurrentAppInfo)(),V=a.App.useApp(),N=V.message,B=V.modal,z=V.notification,L=eC((0,o.useState)([]),2),_=L[0],G=L[1],$=eC((0,o.useState)(e.collection.titleField),2),U=$[0],W=$[1],J=eC((0,o.useState)(),2),X=J[0],H=J[1],Z=eC((0,o.useState)(),2),Y=Z[0],Q=Z[1],ee=eC((0,o.useState)(!1),2),et=ee[0],en=ee[1],er=(0,l.useRequest)(function(){return eS(function(){return ek(this,function(t){switch(t.label){case 0:return[4,R.api.request({url:y(e.dataSourceKey,e.collection.name,"list"),params:{paginate:!1,filter:JSON.stringify({$or:[{"interface.$not":null},{"options.source.$notEmpty":!0}]}),sort:["sort"]}})];case 1:var n,r,l;return[2,Array.isArray(l=null==(n=t.sent())||null==(r=n.data)?void 0:r.data)?l:[]]}})})()});(0,o.useEffect)(function(){W(e.collection.titleField)},[e.collection.titleField]);var el=R.dataSourceManager.getDataSource(e.dataSourceKey),ea=null==(A=R.app.pm.get(v.v))||null==(O=A.getType)?void 0:O.call(A,null==el||null==(x=el.options)?void 0:x.type),eo="main"===e.dataSourceKey,ei=(null==q||null==(h=q.database)?void 0:h.dialect)||(null==q||null==(w=q.data)||null==(E=w.database)?void 0:E.dialect),eu=(0,o.useMemo)(function(){var e,t,n,r,l,a,o;return t=null==el||null==(e=el.options)?void 0:e.type,r=R.dataSourceManager.collectionFieldInterfaceManager,l=ex(R,t),a=eE({},eI,(null==r||null==(n=r.getFieldInterfaceGroups)?void 0:n.call(r))||{}),o=l.reduce(function(e,t){if(t.hidden)return e;var n=t.group||"basic";return e[n]=e[n]||[],e[n].push(t),e},{}),Object.keys(a).map(function(e){return ew(eE({},a[e]),{key:e,children:(o[e]||[]).sort(function(e,t){var n,r;return(null!=(n=e.order)?n:0)-(null!=(r=t.order)?r:0)})})}).filter(function(e){return e.children.length}).sort(function(e,t){var n,r;return(null!=(n=e.order)?n:0)-(null!=(r=t.order)?r:0)})},[R,null==el||null==(T=el.options)?void 0:T.type]),ec=(0,o.useMemo)(function(){var t,n,r,l,a,o;return function(e,t,n){var r,l,a,o="function"==typeof(null==t?void 0:t.createFieldInterfaces)?t.createFieldInterfaces({collection:n}):null==t?void 0:t.createFieldInterfaces;if(!o)return e;var i=(null==(r=o.groups)?void 0:r.length)?new Set(o.groups):null,u=(null==(l=o.include)?void 0:l.length)?new Set(o.include):null,c=(null==(a=o.exclude)?void 0:a.length)?new Set(o.exclude):null;return e.map(function(e){return ew(eE({},e),{children:i&&!i.has(e.key)?[]:e.children.filter(function(e){return!(u&&!u.has(e.name)||(null==c?void 0:c.has(e.name)))})})}).filter(function(e){return e.children.length})}((t=e.collection,n=eu.map(function(e){return ew(eE({},e),{children:eO(e.children,t,R,ei)})}).filter(function(e){return e.children.length}),r=e.collection,o=null==(a=R.app.pm.get(v.v))||null==(l=a.getCollectionTemplate)?void 0:l.call(a,r.template||"general"),n.map(function(e){return ew(eE({},e),{children:S(e.children,o)})}).filter(function(e){return e.children.length})),ea,e.collection)},[eu,ei,R,ea,e.collection]),es=(0,o.useMemo)(function(){var t;return eO(ex(R,null==el||null==(t=el.options)?void 0:t.type),e.collection,R,ei).reduce(function(e,t){return e[t.name]=t,e},{})},[ei,R,null==el||null==(M=el.options)?void 0:M.type,e.collection]),ed=(0,o.useMemo)(function(){var e,t,n,r;return n=(null==(t=R.app.pm.get(v.v))||null==(e=t.getCollectionPresetFields)?void 0:e.call(t))||[],r=new Set,n.forEach(function(e){var t,n,l=(null==(t=e.value)?void 0:t.interface)||(null==(n=e.value)?void 0:n.name);l&&r.add(l)}),r},[R]),em=(0,o.useCallback)(function(t,n,r){R.viewer.drawer({width:800,closable:!0,content:function(){return i().createElement(eg,{mode:t,dataSourceKey:e.dataSourceKey,collection:e.collection,interfaceName:r,field:n,onSubmitted:function(){return er.refresh()}})}})},[R.viewer,e.collection,e.dataSourceKey,er]),ef=(0,o.useMemo)(function(){return{style:{maxHeight:"60vh",overflow:"auto"},items:ec.map(function(e){return{type:"group",key:e.key,label:(0,s.h)(e.label,K),children:e.children.map(function(e){return{key:e.name,label:(0,s.h)(eA(e),K)}})}}),onClick:function(e){return em("create",void 0,String(e.key))}}},[ec,em,K]),ep=(0,o.useMemo)(function(){return ej(R,e.collection)},[R,e.collection]),ev=null==ep||null==(j=ep.configure)||null==(D=j.syncFields)?void 0:D.Component,ey=(0,o.useCallback)(function(){ev&&R.viewer.drawer({width:900,closable:!0,content:function(){return i().createElement(ev,{collection:e.collection,dataSourceKey:e.dataSourceKey,onSubmitted:function(){er.refresh()}})}})},[ev,R.viewer,e.collection,e.dataSourceKey,er]),eb=(0,o.useCallback)(function(){R.viewer.drawer({width:900,closable:!0,content:function(){return i().createElement(eq,{collection:e.collection,currentFields:er.data||e.collection.fields||[],fieldInterfaceGroups:eu,fieldInterfacesByName:es,onSubmitted:function(){er.refresh()}})}})},[eu,R.viewer,es,e.collection,er]),eh=(0,o.useCallback)(function(t){B.confirm({title:K("Delete record"),content:K("Are you sure you want to delete it?"),onOk:function(){return eS(function(){var n;return ek(this,function(r){switch(r.label){case 0:return[4,Promise.all((Array.isArray(t)?t:[t]).map(function(t){return R.api.request({url:y(e.dataSourceKey,e.collection.name,"destroy",String(t)),method:"post"})}))];case 1:return r.sent(),[4,null==(n=R.dataSourceManager.getDataSource(e.dataSourceKey))?void 0:n.reload()];case 2:return r.sent(),G([]),er.refresh(),[2]}})})()}})},[R.api,R.dataSourceManager,B,e.collection.name,e.dataSourceKey,er,K]),eF=(0,o.useCallback)(function(t,n){return eS(function(){var r,l,a,o,i;return ek(this,function(u){switch(u.label){case 0:return i=(o=(null==(a=n?es[n]:void 0)?void 0:a.default)||{}).uiSchema?ew(eE({},o.uiSchema),{title:o.uiSchema.title||(null==(r=t.uiSchema)?void 0:r.title)}):t.uiSchema,[4,R.api.request({url:y(e.dataSourceKey,e.collection.name,"update",t.name),method:"post",data:ew(eE({},t,o),{name:t.name,interface:n||null,type:o.type||t.type,uiSchema:i})})];case 1:return u.sent(),[4,null==(l=R.dataSourceManager.getDataSource(e.dataSourceKey))?void 0:l.reload()];case 2:return u.sent(),er.refresh(),[2]}})})()},[R.api,R.dataSourceManager,es,e.collection.name,e.dataSourceKey,er]),eK=(0,o.useCallback)(function(t,n){return eS(function(){var r,l,a;return ek(this,function(o){switch(o.label){case 0:if(!(r=n.trim()))throw N.error(K("Field display name is required")),Error("Field display name is required");Q(t.name),o.label=1;case 1:return o.trys.push([1,4,5,6]),[4,R.api.request({url:y(e.dataSourceKey,e.collection.name,"update",t.name),method:"post",data:ew(eE({},t),{uiSchema:ew(eE({},eP(t.uiSchema)),{title:r})})})];case 2:return o.sent(),[4,null==(l=R.dataSourceManager.getDataSource(e.dataSourceKey))?void 0:l.reload()];case 3:return o.sent(),er.refresh(),N.success(K("Saved successfully")),[3,6];case 4:var i,u,c,s;throw a=o.sent(),z.error({message:(i=K("Save failed"),"string"==typeof(s=(Array.isArray(null==(c=null==a||null==(u=a.response)?void 0:u.data)?void 0:c.errors)?c.errors.map(function(e){return e.message}).filter(Boolean).join("\n"):void 0)||(null==c?void 0:c.message)||(null==a?void 0:a.message))&&s?s:i)}),a;case 5:return Q(void 0),[7];case 6:return[2]}})})()},[R.api,R.dataSourceManager,N,z,e.collection.name,e.dataSourceKey,er,K]),eR=(0,o.useCallback)(function(t,n){return eS(function(){var r,l;return ek(this,function(a){switch(a.label){case 0:r=n?t.name:"id",H(t.name),a.label=1;case 1:var o;return a.trys.push([1,,4,5]),[4,R.api.request({url:"main"===(o=e.dataSourceKey)?"collections:update":"dataSources/".concat(o,"/collections:update"),method:"post",params:{filterByTk:e.collection.name},data:{titleField:r}})];case 2:return a.sent(),W(r),[4,null==(l=R.dataSourceManager.getDataSource(e.dataSourceKey))?void 0:l.reload()];case 3:return a.sent(),N.success(K("Saved successfully")),[3,5];case 4:return H(void 0),[7];case 5:return[2]}})})()},[R.api,R.dataSourceManager,N,e.collection.name,e.dataSourceKey,K]),eV=(0,o.useCallback)(function(){return eS(function(){var t;return ek(this,function(n){switch(n.label){case 0:if(ev)return ey(),[2];if(eD(e.collection))return eb(),[2];en(!0),n.label=1;case 1:return n.trys.push([1,,4,5]),[4,R.api.resource("mainDataSource").syncFields({values:{collections:[e.collection.name]}})];case 2:return n.sent(),er.refresh(),[4,null==(t=R.dataSourceManager.getDataSource("main"))?void 0:t.reload()];case 3:return n.sent(),N.success(K("Sync successfully")),[3,5];case 4:return en(!1),[7];case 5:return[2]}})})()},[R.api,R.dataSourceManager,N,ey,eb,e.collection,er,ev,K]),eN=(t=e.dataSourceKey,n=e.collection,u=R,eD(n)?"main"===t:!!((b=null==(g=ej((m={collection:n,ctx:u,dataSourceKey:t}).ctx,m.collection))||null==(p=g.configure)?void 0:p.syncFields)&&("function"==typeof b.visible?b.visible({collection:m.collection,dataSourceKey:m.dataSourceKey}):!1!==b.visible))||"db2cm"!==n.from&&"main"===t),eB=!!(null==ea?void 0:ea.disableConfigureFields),ez=eo&&!eB,eL=!(null==(I=null==(k=(C={collection:e.collection,ctx:R,dataSourceType:null==el||null==(P=el.options)?void 0:P.type,fieldInterfaceGroups:ec}).ctx.app.pm.get(v.v))||null==(F=k.getType)?void 0:F.call(k,C.dataSourceType))?void 0:I.disableConfigureFields)&&!(null==I?void 0:I.disableAddFields)&&"sql"!==C.collection.template&&C.fieldInterfaceGroups.length>0;(0,o.useEffect)(function(){ez||G([])},[ez]);var e_=(0,o.useMemo)(function(){var t=[{title:K("Field display name"),width:240,render:function(e){return eB?(0,s.h)(eT(e),K):i().createElement(eM,{loading:Y===e.name,record:e,onSave:eK})}},{title:K("Field name"),dataIndex:"name"},{title:K("Field type"),dataIndex:"type",render:function(e){return i().createElement(a.Tag,null,e)}},{title:K("Field interface"),dataIndex:"interface",width:180,render:function(t,n){var r,l,o,u,c,d,m=t?es[t]:void 0,f=eu.map(function(e){return ew(eE({},e),{children:e.children.filter(function(e){var t,r;return e.name===n.interface||(null==(t=e.availableTypes)?void 0:t.includes(n.type))||(null==(r=e.default)?void 0:r.type)===n.type})})}).filter(function(e){return"sort"===n.type?"advanced"===e.key&&e.children.length:e.children.length});if(eB||t&&!m||("boolean"==typeof(d=null==(o=(r={collection:e.collection,currentFieldInterface:m,dataSourceType:ea,presetFieldInterfaces:ed}).dataSourceType)||null==(l=o.isFieldInterfaceReadOnly)?void 0:l.call(o,{collection:r.collection,field:n,fieldInterface:r.currentFieldInterface}))?d:!!(n.source||(null==(u=r.currentFieldInterface)?void 0:u.isAssociation)||(null==(c=r.currentFieldInterface)?void 0:c.group)==="systemInfo"||r.presetFieldInterfaces.has(n.interface)))||!f.length)return i().createElement(a.Tag,null,(0,s.h)(eA(m,t),K)||t);var p=f.map(function(e){return{label:(0,s.h)(e.label,K),options:e.children.map(function(e){return{value:e.name,label:(0,s.h)(eA(e),K)}})}}).filter(function(e){return e.options.length});return i().createElement(a.Select,{allowClear:!0,value:t||void 0,style:{width:"100%"},popupMatchSelectWidth:!1,options:p,onChange:function(e){return eF(n,e)}})}},{title:K("Title field"),dataIndex:"titleField",width:120,render:function(e,t){return(0,f.isTitleField)(R.dataSourceManager,t)?i().createElement(a.Tooltip,{title:K("Default title for each record"),placement:"right"},i().createElement(a.Switch,{"aria-label":"switch-title-field-".concat(t.name),size:"small",disabled:eB,loading:t.name===X,checked:t.name===(U||"id"),onChange:function(e){return eR(t,e)}})):null}},{title:K("Description"),dataIndex:"description",ellipsis:!0}];return eB||t.push({title:K("Actions"),width:160,render:function(e,t){return i().createElement(a.Space,null,i().createElement("a",{onClick:function(){return em("edit",t)}},K("Edit")),ez?i().createElement("a",{onClick:function(){return eh(t.name)}},K("Delete")):null)}}),t},[eu,eB,ez,R.dataSourceManager,ea,es,eh,eK,eF,eR,em,ed,e.collection,K,Y,U,X]);return i().createElement(i().Fragment,null,i().createElement("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginBottom:16}},i().createElement(a.Space,null,ez?i().createElement(a.Button,{icon:i().createElement(d.DeleteOutlined,null),disabled:!_.length,onClick:function(){return eh(_)}},K("Delete")):null,eN?i().createElement(a.Button,{icon:i().createElement(d.SyncOutlined,null),loading:et,onClick:eV},K("Sync from database")):null,eL?i().createElement(a.Dropdown,{menu:ef,placement:"bottomRight",trigger:["hover"]},i().createElement(a.Button,{type:"primary",icon:i().createElement(d.PlusOutlined,null)},K("Add field")," ",i().createElement(d.DownOutlined,null))):null)),i().createElement(f.Table,{rowKey:"name",loading:er.loading,dataSource:er.data||[],columns:e_,pagination:!1,rowSelection:ez?{selectedRowKeys:_,onChange:G}:void 0}))}function eN(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 eB(e,t,n,r,l,a,o){try{var i=e[a](o),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,l)}function ez(e){return function(){var t=this,n=arguments;return new Promise(function(r,l){var a=e.apply(t,n);function o(e){eB(a,r,l,o,i,"next",e)}function i(e){eB(a,r,l,o,i,"throw",e)}o(void 0)})}}function eL(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}function e_(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function eG(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,l=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=l){var a=[],o=!0,i=!1;try{for(l=l.call(e);!(o=(n=l.next()).done)&&(a.push(n.value),!t||a.length!==t);o=!0);}catch(e){i=!0,r=e}finally{try{o||null==l.return||l.return()}finally{if(i)throw r}}return a}}(e,t)||eU(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 e$(e){return function(e){if(Array.isArray(e))return eN(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||eU(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function eU(e,t){if(e){if("string"==typeof e)return eN(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 eN(e,t)}}function eW(e,t){var n,r,l,a={label:0,sent:function(){if(1&l[0])throw l[1];return l[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(o,"next",{value:u(0)}),i(o,"throw",{value:u(1)}),i(o,"return",{value:u(2)}),"function"==typeof Symbol&&i(o,Symbol.iterator,{value:function(){return this}}),o;function u(i){return function(u){var c=[i,u];if(n)throw TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(l=2&c[0]?r.return:c[0]?r.throw||((l=r.return)&&l.call(r),0):r.next)&&!(l=l.call(r,c[1])).done)return l;switch(r=0,l&&(c=[2&c[0],l.value]),c[0]){case 0:case 1:l=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(!(l=(l=a.trys).length>0&&l[l.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!l||c[1]>l[0]&&c[1]<l[3])){a.label=c[1];break}if(6===c[0]&&a.label<l[1]){a.label=l[1],l=c;break}if(l&&a.label<l[2]){a.label=l[2],a.ops.push(c);break}l[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],r=0}finally{n=l=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}var eJ=["default","red","orange","yellow","green","cyan","blue","purple"],eX={default:"Default",red:"Red",orange:"Orange",yellow:"Yellow",green:"Green",cyan:"Cyan",blue:"Blue",purple:"Purple"};function eH(e){var t=(0,m.useDraggable)({id:String(e.item.id),data:e.item}),n=t.attributes,r=t.listeners,l=t.setNodeRef;return i().createElement("div",eL({ref:l},r,n),e.children)}function eZ(e){var t=(0,m.useDroppable)({id:String(e.item.id),data:e.item}),n=t.isOver,r=t.setNodeRef;return i().createElement("div",{ref:r,style:n?{color:"green"}:void 0},e.children)}function eY(e){var t=(0,c.kj)();return i().createElement(a.Space,{size:6},i().createElement(a.Badge,{color:"default"===e.item.color?void 0:e.item.color}),(0,s.h)(e.item.name||e.item.id,t),i().createElement(a.Dropdown,{menu:{items:[{key:"edit",label:t("Edit category")},{key:"delete",label:t("Delete category")}],onClick:function(t){var n=t.key;(t.domEvent.stopPropagation(),"edit"===n)?e.onEdit(e.item):e.onDelete(e.item)}},trigger:["click"]},i().createElement(a.Button,{"aria-label":t("Edit category"),icon:i().createElement(d.MenuOutlined,null),size:"small",type:"text",onClick:function(e){return e.stopPropagation()}})))}function eQ(e){return i().createElement(eZ,{item:e.item},i().createElement(eH,{item:e.item},i().createElement(eY,{item:e.item,onDelete:e.onDelete,onEdit:e.onEdit})))}function e0(e){var t=e.children,n=e.onSort,r=eG((0,o.useState)(),2),l=r[0],a=r[1],u=(0,m.useSensors)((0,m.useSensor)(m.MouseSensor,{activationConstraint:{distance:10}})),c=(0,o.useCallback)(function(e){a(e.active.data.current)},[]),s=(0,o.useCallback)(function(e){return ez(function(){var t,r,l,o;return eW(this,function(i){switch(i.label){case 0:if(t=e.active,r=e.over,a(void 0),!r||r.id===t.id||(l=t.data.current,o=r.data.current,!l||!o))return[2];return[4,n(l,o)];case 1:return i.sent(),[2]}})})()},[n]);return i().createElement(m.DndContext,{sensors:u,onDragStart:c,onDragEnd:s},t,i().createElement(m.DragOverlay,{dropAnimation:null},l?i().createElement("span",{style:{whiteSpace:"nowrap"}},i().createElement(eY,{item:l,onDelete:function(){},onEdit:function(){}})):null))}function e1(e){return[{value:"$includes",label:e("contains")},{value:"$notIncludes",label:e("does not contain")},{value:"$eq",label:e("is")},{value:"$ne",label:e("is not")}]}var e2=function(e){var t=e.value,n=e.onChange;return i().createElement(a.Input,{style:{minWidth:180},value:null!=t?t:"",onChange:function(e){return n(e.target.value)}})},e4=function(e){var t=e.value,n=e.onChange,l=(0,c.kj)(),o=(0,r.useFlowContext)().app.pm.get(v.v).getCollectionTemplates();return i().createElement(a.Select,{style:{minWidth:220},value:t,options:o.map(function(e){return{value:e.name,label:(0,s.h)(e.title,l)}}),onChange:function(e){return n(e)},allowClear:!0})};function e3(e){var t,n=null==e||null==(t=e.data)?void 0:t.data;return Array.isArray(n)?n:Array.isArray(null==n?void 0:n.data)?n.data:[]}function e6(){return{hidden:{$isFalsy:!0}}}function e5(e){var t,n=Array.isArray(t=e.filterTargetKey)?t.filter(Boolean).map(String):t?[String(t)]:void 0;if(null==n?void 0:n.length)return n;if(Array.isArray(e.fields)){var r=e.fields.filter(function(e){return(null==e?void 0:e.primaryKey)&&(null==e?void 0:e.name)}).map(function(e){return String(e.name)});return 1===r.length?r:void 0}}var e8=(0,r.observer)(function(e){var t,n,r,l=e.value,u=(0,c.kj)(),s=(t=(0,c.kj)(),(0,o.useMemo)(function(){return[{name:"title",title:t("Collection display name"),operators:e1(t),RenderValue:e2},{name:"name",title:t("Collection name"),operators:e1(t),RenderValue:e2},{name:"template",title:t("Collection template"),operators:[{value:"$eq",label:t("is")},{value:"$ne",label:t("is not")}],RenderValue:e4},{name:"description",title:t("Description"),operators:e1(t),RenderValue:e2}]},[t])),d=s.find(function(e){return e.name===l.path}),m=null!=(n=null==d?void 0:d.operators)?n:[],f=null!=(r=null==d?void 0:d.RenderValue)?r:e2,p=(0,o.useMemo)(function(){return s.map(function(e){return{value:e.name,label:e.title}})},[s]);return i().createElement(a.Space,{style:{flex:1},wrap:!0},i().createElement(a.Select,{style:{minWidth:180},placeholder:u("Select field"),value:l.path||void 0,options:p,onChange:function(e){var t,n,r=s.find(function(t){return t.name===e});l.path=e,l.operator=null!=(t=null==r||null==(n=r.operators[0])?void 0:n.value)?t:"",l.value=void 0}}),i().createElement(a.Select,{style:{minWidth:140},placeholder:u("Comparison"),value:l.operator||void 0,options:m,disabled:!l.path,onChange:function(e){l.operator=e,l.value=void 0}}),i().createElement(f,{value:l.value,onChange:function(e){return l.value=e}}))},{displayName:"CollectionFilterItem"}),e7=(0,r.observer)(function(e){var t=e.value,n=e.onSubmit,r=e.onReset,l=(0,c.kj)(),u=eG((0,o.useState)(!1),2),s=u[0],m=u[1],p=(0,o.useMemo)(function(){return{model:{translate:function(e){return l(e)},dispatchEvent:function(e){"submit"===e&&(n(),m(!1)),"reset"===e&&r()}}}},[r,n,l]),v=t.items.length,y=v?l("{{count}} filter items").replace("{{count}}",String(v)):l("Filter");return i().createElement(a.Popover,{open:s,onOpenChange:m,trigger:"click",placement:"bottomLeft",content:i().createElement("div",{style:{minWidth:560}},i().createElement(f.FilterContent,{value:t,ctx:p,FilterItem:e8}))},i().createElement(a.Button,{icon:i().createElement(d.FilterOutlined,null),type:v?"primary":"default"},y))},{displayName:"CollectionFilterPopover"});function e9(e){return e.name||e.value.name}function te(e){var t,n=null==(t=e.collection)?void 0:t.options;return"function"==typeof n?n():n||("function"==typeof e.defaultValues?e.defaultValues():e.defaultValues||{})}function tt(e,t){var n;return!!(null==e||null==(n=e.capabilities)?void 0:n[t])}var tn=function(e){var t=e.template,n=(0,c.kj)(),r=a.theme.useToken().token,l=(0,o.useMemo)(function(){return{container:{backgroundColor:r.colorFillAlter,marginBottom:r.marginLG,padding:r.paddingSM+r.paddingXXS},title:{color:r.colorText},description:{color:r.colorTextDescription,marginTop:r.marginXS},tag:{background:"none"}}},[r.colorFillAlter,r.colorText,r.colorTextDescription,r.marginLG,r.marginXS,r.paddingSM,r.paddingXXS]);return t?i().createElement("div",{style:l.container},i().createElement("div",{style:l.title},n("Collection template"),": ",i().createElement(a.Tag,{style:l.tag},(0,s.h)(t.title,n))),t.description?i().createElement("div",{style:l.description},(0,s.h)(t.description,n)):null):null},tr=function(e){var t,n=e.form,r=e.mode,l=e.template,o=(0,c.kj)(),u=(null==(t=l.configure)?void 0:t.items)||[];return u.length?i().createElement(i().Fragment,null,u.map(function(e,t){var u="function"==typeof e.hidden?e.hidden({mode:r,template:l,form:n}):!!e.hidden,c=e.Component;if(u||!c){if(u||!e.name)return null;var d=(0,s.h)(e.label||e.name,o),m=e.required?[{required:!0}]:void 0,f=e.componentProps||{},p=i().createElement(a.Input,f);return("Input.TextArea"===e.component&&(p=i().createElement(a.Input.TextArea,eL({autoSize:{minRows:3,maxRows:8}},f))),"Select"===e.component&&(p=i().createElement(a.Select,eL({options:(e.options||[]).map(function(e){return{value:e.value,label:(0,s.h)(e.label,o)}})},f))),"Checkbox"===e.component)?i().createElement(a.Form.Item,{key:e.name||t,name:e.name,valuePropName:"checked",rules:m},i().createElement(a.Checkbox,f,d)):i().createElement(a.Form.Item,{key:e.name||t,name:e.name,label:d,rules:m},p)}return c?i().createElement(c,{key:e.name||t,mode:r,template:l,form:n,item:e}):null})):null},tl=function(e){var t=e.form,n=(0,c.kj)(),r=a.Form.useWatch("fields",t),l=(0,o.useMemo)(function(){return(Array.isArray(r)?r:[]).filter(function(e){return null==e?void 0:e.name}).map(function(e){var t;return{value:e.name,label:(0,s.h)((null==(t=e.uiSchema)?void 0:t.title)||e.title||e.name,n)}})},[r,n]);return i().createElement(a.Form.Item,{name:"filterTargetKey",label:n("Record unique key"),extra:n("If a collection lacks a primary key, you must configure a unique record key to locate row records within a block, failure to configure this will prevent the creation of data blocks for the collection.")},i().createElement(a.Select,{mode:"multiple",options:l,allowClear:!0}))};function ta(e){var t,n=e.activeCategoryKey,u=e.categories,d=e.onSubmitted,m=e.template,p=(0,c.kj)(),y=(0,r.useFlowContext)(),g=y.app.pm.get(v.v),b=eG(a.Form.useForm(),1)[0],h=(0,o.useMemo)(function(){return g.getCollectionPresetFields()},[g]),S=eG((0,o.useState)(!1),2),E=S[0],w=S[1],C="sql"===m.name,F="view"===m.name,k=eG((0,o.useState)(function(){return C||F?[]:h.filter(function(e){return!1!==e.defaultSelected}).map(function(e){return e9(e)})}),2),I=k[0],x=k[1],O=(0,l.useRequest)(function(){return ez(function(){return eW(this,function(e){switch(e.label){case 0:return[4,y.api.request({url:"dataSources/main/collections:list",params:{paginate:!1,sort:["sort"],filter:JSON.stringify(e6())}})];case 1:return[2,e3(e.sent())]}})})()}),A=(0,o.useMemo)(function(){return(O.data||[]).filter(function(e){return e.name}).map(function(e){return{value:e.name,label:(0,s.h)(e.title||e.name,p)}})},[O.data,p]),T=(0,o.useMemo)(function(){return e_(eL({},te(m)),{template:m.name,name:(0,r.randomId)("t_"),category:"all"===n?[]:[n]})},[n,m]),M=(0,o.useMemo)(function(){var e;return new Set((null==(e=m.presetFields)?void 0:e.disabledIncludes)||m.presetFieldsDisabledIncludes||[])},[m]),D=(0,o.useMemo)(function(){var e;return e=y.dataSourceManager.collectionFieldInterfaceManager,h.map(function(t){var n,r,l=t.value.interface?null==e||null==(n=e.getFieldInterface)?void 0:n.call(e,t.value.interface):void 0;return{name:e9(t),field:t.field||(null==(r=t.value.uiSchema)?void 0:r.title)||t.value.name,interfaceLabel:t.interfaceLabel||(null==l?void 0:l.title)||t.value.interface||t.value.type,description:t.description}})},[h,y.dataSourceManager.collectionFieldInterfaceManager]),j=(0,o.useMemo)(function(){return[{title:p("Field"),dataIndex:"field",render:function(e){return(0,s.h)(e,p)}},{title:p("Interface"),dataIndex:"interfaceLabel",render:function(e){return i().createElement(a.Tag,null,(0,s.h)(e,p))}},{title:p("Description"),dataIndex:"description",render:function(e){return(0,s.h)(e,p)}}]},[p]),P=(null==(t=m.configure)?void 0:t.Form)||m.ConfigureForm,K=i().createElement(a.Form.Item,{name:"category",label:p("Categories")},i().createElement(a.Select,{mode:"multiple",options:u.map(function(e){return{value:String(e.id),label:(0,s.h)(e.name||e.id,p)}}),allowClear:!0})),R=i().createElement(a.Form.Item,{name:"description",label:p("Description")},i().createElement(a.Input.TextArea,{autoSize:{minRows:3,maxRows:8}})),q=(0,o.useCallback)(function(){return ez(function(){var e,t;return eW(this,function(n){switch(n.label){case 0:return[4,b.validateFields()];case 1:e=function(e){var t,n,r,l,a,o,i,u=e.fieldInterfaceManager,c=e.formValues,s=e.presetFields,d=e.selectedPresetFields,m=e.template,p=te(m),v=Array.isArray(p.fields)?p.fields:[],y=(0,f.normalizeCollectionTemplateFields)(Array.isArray(c.fields)?c.fields:[],u,{collectionInfo:e_(eL({},p,c),{template:m.name})}),g=(0,f.normalizeCollectionTemplateFields)(e$(v).concat(e$("function"==typeof(n=null==(t=m.collection)?void 0:t.fields)?n():n||[])),u,{collectionInfo:e_(eL({},p,c),{template:m.name})}),b=e_(eL({autoGenId:!1,view:!1},p,c),{template:m.name,logging:!0,category:null==(r=c.category)?void 0:r.map(function(e){if("string"!=typeof e)return e;var t=Number(e);return Number.isSafeInteger(t)&&String(t)===e?t:e}),fields:e$(g).concat(e$((l=new Set(d.map(String)),s.filter(function(e){return l.has(e9(e))}).map(function(e){return structuredClone(e.value)}))),e$(y))}),h=null==(o=m.configure)||null==(a=o.transformSubmitValues)?void 0:a.call(o,b);return h||(null==(i=m.beforeSubmit)||i.call(m,b),b)}({template:m,formValues:n.sent(),selectedPresetFields:I,presetFields:h,fieldInterfaceManager:y.dataSourceManager.collectionFieldInterfaceManager}),w(!0),n.label=2;case 2:return n.trys.push([2,,4,5]),[4,y.api.resource("collections").create({values:e})];case 3:return n.sent(),d(),null==(t=y.dataSourceManager.getDataSource("main"))||t.reload(),[3,5];case 4:return w(!1),[7];case 5:return[2]}})})()},[h,y.api,y.dataSourceManager,b,d,I,m]);return i().createElement(f.DrawerFormLayout,{title:p("Create collection"),submitting:E,submitText:p("Submit"),cancelText:p("Cancel"),onSubmit:q},i().createElement(a.Form,{form:b,layout:"vertical",initialValues:T},i().createElement(tn,{template:m}),i().createElement(a.Form.Item,{name:"template",hidden:!0},i().createElement(a.Input,null)),i().createElement(a.Form.Item,{name:"title",label:p("Collection display name"),rules:[{required:!0}]},i().createElement(a.Input,null)),i().createElement(a.Form.Item,{name:"name",label:p("Collection name"),rules:[{required:!0},{pattern:/^[A-Za-z][A-Za-z0-9_]*$/,message:p("Support letters, numbers and underscores, must start with an letter.")}],extra:p("Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.")},i().createElement(a.Input,null)),C?i().createElement(i().Fragment,null,P?i().createElement(P,{mode:"create",template:m,form:b}):null,i().createElement(tr,{mode:"create",template:m,form:b}),tt(m,"recordUniqueKey")?i().createElement(tl,{form:b}):null,K,R):F?i().createElement(i().Fragment,null,P?i().createElement(P,{mode:"create",template:m,form:b}):null,i().createElement(tr,{mode:"create",template:m,form:b}),tt(m,"recordUniqueKey")?i().createElement(tl,{form:b}):null,K,R,i().createElement(a.Form.Item,{name:"simplePaginate",valuePropName:"checked",extra:p("Skip getting the total number of table records during paging to speed up loading. It is recommended to enable this option for data tables with a large amount of data")},i().createElement(a.Checkbox,null,p("Use simple pagination mode")))):i().createElement(i().Fragment,null,i().createElement(a.Form.Item,{name:"inherits",label:p("Inherits")},i().createElement(a.Select,{mode:"multiple",options:A,loading:O.loading,allowClear:!0})),K,R,i().createElement(a.Form.Item,{name:"simplePaginate",valuePropName:"checked",extra:p("Skip getting the total number of table records during paging to speed up loading. It is recommended to enable this option for data tables with a large amount of data")},i().createElement(a.Checkbox,null,p("Use simple pagination mode"))),P?i().createElement(P,{mode:"create",template:m,form:b}):null,i().createElement(tr,{mode:"create",template:m,form:b}),tt(m,"recordUniqueKey")?i().createElement(tl,{form:b}):null,i().createElement(a.Form.Item,{label:p("Preset fields")},i().createElement(f.Table,{size:"small",rowKey:"name",bordered:!0,pagination:!1,dataSource:D,columns:j,rowSelection:{type:"checkbox",selectedRowKeys:I,getCheckboxProps:function(e){var t,n;return{disabled:(null!=(t=null==(n=m.presetFields)?void 0:n.disabled)?t:m.presetFieldsDisabled)||M.has(e.name)}},onChange:function(e){return x(e)}}})))))}function to(e){var t,n=e.categories,u=e.collection,d=e.dataSourceKey,m=e.onSubmitted,p=(0,c.kj)(),g=(0,r.useFlowContext)(),b=g.app.pm.get(v.v),h=eG(a.Form.useForm(),1)[0],S=eG((0,o.useState)(!1),2),E=S[0],w=S[1],C="main"===d,F=(0,o.useMemo)(function(){return b.getCollectionTemplate(u.template||"general")},[u.template,b]),k=(0,l.useRequest)(function(){return ez(function(){return eW(this,function(e){switch(e.label){case 0:return[4,g.api.request({url:"dataSources/".concat(d,"/collections:list"),params:{paginate:!1,sort:["sort"],filter:JSON.stringify(e6())}})];case 1:return[2,e3(e.sent())]}})})()}),I=(0,l.useRequest)(function(){return ez(function(){return eW(this,function(e){switch(e.label){case 0:return[4,g.api.request({url:y(d,u.name,"list"),params:{}})];case 1:return[2,e3(e.sent())]}})})()}),x=(0,o.useMemo)(function(){return(k.data||[]).filter(function(e){return e.name&&e.name!==u.name&&"view"!==e.template&&"file"!==e.template}).map(function(e){return{value:e.name,label:(0,s.h)(e.title||e.name,p)}})},[u.name,k.data,p]),O=(0,o.useMemo)(function(){var e=Array.isArray(u.fields)&&u.fields.length?u.fields:I.data||[],t=e5(u)||[],n=e.filter(function(e){return!!e.name}).map(function(e){var t;return{value:e.name,label:(0,s.h)((null==(t=e.uiSchema)?void 0:t.title)||e.name,p)}});return t.forEach(function(e){n.some(function(t){return t.value===e})||n.push({value:e,label:e})}),n},[u,I.data,p]),A=(0,o.useMemo)(function(){return{title:u.title,name:u.name,inherits:Array.isArray(u.inherits)?u.inherits:u.inherits?[u.inherits]:void 0,category:Array.isArray(u.category)?u.category.map(function(e){return String(e.id)}):[],description:u.description,simplePaginate:u.simplePaginate,filterTargetKey:e5(u),databaseView:function(e){var t=e.viewName||e.name;if(t)return e.schema?"".concat(e.schema,"@").concat(t):t}(u),schema:u.schema,viewName:u.viewName||u.name,writableView:u.writableView,sql:u.sql,sources:u.sources,fields:u.fields}},[u]),T=(0,o.useCallback)(function(){return ez(function(){var e,t,n,r;return eW(this,function(l){switch(l.label){case 0:return[4,h.validateFields()];case 1:n=eL({},l.sent()),"sql"===u.template?(n.name=u.name,n.key=u.key):delete n.name,C||(delete n.category,delete n.inherits),n=(null==F||null==(t=F.configure)||null==(e=t.transformSubmitValues)?void 0:e.call(t,n))||n,w(!0),l.label=2;case 2:if(l.trys.push([2,,7,8]),!C)return[3,4];return[4,g.api.resource("sql"===u.template?"sqlCollection":"collections").update({filterByTk:u.name,values:n})];case 3:return l.sent(),[3,6];case 4:return[4,g.api.request({url:"dataSources/".concat(d,"/collections:update"),method:"post",params:{filterByTk:u.name},data:n})];case 5:l.sent(),l.label=6;case 6:return m(),null==(r=g.dataSourceManager.getDataSource(d))||r.reload(),[3,8];case 7:return w(!1),[7];case 8:return[2]}})})()},[u.key,u.name,u.template,g.api,g.dataSourceManager,d,h,C,m,F]);if(!C)return i().createElement(f.DrawerFormLayout,{title:p("Edit collection"),submitting:E,submitText:p("Submit"),cancelText:p("Cancel"),onSubmit:T},i().createElement(a.Form,{form:h,layout:"vertical",initialValues:A},i().createElement(a.Form.Item,{name:"title",label:p("Collection display name"),rules:[{required:!0}]},i().createElement(a.Input,null)),i().createElement(a.Form.Item,{name:"name",label:p("Collection name"),extra:p("Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.")},i().createElement(a.Input,{disabled:!0})),i().createElement(a.Form.Item,{name:"description",label:p("Description")},i().createElement(a.Input.TextArea,{autoSize:{minRows:3,maxRows:8}})),i().createElement(a.Form.Item,{name:"simplePaginate",valuePropName:"checked",extra:p("Skip getting the total number of table records during paging to speed up loading. It is recommended to enable this option for data tables with a large amount of data")},i().createElement(a.Checkbox,null,p("Use simple pagination mode"))),i().createElement(a.Form.Item,{name:"filterTargetKey",label:p("Record unique key"),extra:p("If a collection lacks a primary key, you must configure a unique record key to locate row records within a block, failure to configure this will prevent the creation of data blocks for the collection.")},i().createElement(a.Select,{mode:"multiple",options:O,loading:I.loading,allowClear:!0}))));var M=(null==F||null==(t=F.configure)?void 0:t.Form)||(null==F?void 0:F.ConfigureForm);return i().createElement(f.DrawerFormLayout,{title:p("Edit collection"),submitting:E,submitText:p("Submit"),cancelText:p("Cancel"),onSubmit:T},i().createElement(a.Form,{form:h,layout:"vertical",initialValues:A},i().createElement(tn,{template:F}),i().createElement(a.Form.Item,{name:"title",label:p("Collection display name"),rules:[{required:!0}]},i().createElement(a.Input,null)),i().createElement(a.Form.Item,{name:"name",label:p("Collection name"),extra:p("Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.")},i().createElement(a.Input,{disabled:!0})),C?i().createElement(i().Fragment,null,i().createElement(a.Form.Item,{name:"inherits",label:p("Inherits")},i().createElement(a.Select,{mode:"multiple",options:x,loading:k.loading,allowClear:!0})),i().createElement(a.Form.Item,{name:"category",label:p("Categories")},i().createElement(a.Select,{mode:"multiple",options:n.map(function(e){return{value:String(e.id),label:(0,s.h)(e.name||e.id,p)}}),allowClear:!0}))):null,i().createElement(a.Form.Item,{name:"description",label:p("Description")},i().createElement(a.Input.TextArea,{autoSize:{minRows:3,maxRows:8}})),i().createElement(a.Form.Item,{name:"simplePaginate",valuePropName:"checked",extra:p("Skip getting the total number of table records during paging to speed up loading. It is recommended to enable this option for data tables with a large amount of data")},i().createElement(a.Checkbox,null,p("Use simple pagination mode"))),tt(F,"recordUniqueKey")?i().createElement(a.Form.Item,{name:"filterTargetKey",label:p("Record unique key"),extra:p("If a collection lacks a primary key, you must configure a unique record key to locate row records within a block, failure to configure this will prevent the creation of data blocks for the collection.")},i().createElement(a.Select,{mode:"multiple",options:O,loading:I.loading,allowClear:!0})):null,F&&M?i().createElement(M,{mode:"edit",template:F,form:h}):null,F?i().createElement(tr,{mode:"edit",template:F,form:h}):null))}var ti=function(e){var t,n,u,m=(0,c.kj)(),y=(0,r.useFlowContext)(),g=a.App.useApp(),b=g.message,h=g.modal,S=y.app.pm.get(v.v),E=eG(a.Form.useForm(),1)[0],w=(0,o.useRef)((0,r.observable)({logic:"$and",items:[]})),C=eG((0,o.useState)(1),2),F=C[0],k=C[1],I=eG((0,o.useState)(f.DEFAULT_PAGE_SIZE),2),x=I[0],O=I[1],A=eG((0,o.useState)("all"),2),T=A[0],M=A[1],D=eG((0,o.useState)(!1),2),j=D[0],P=D[1],K=eG((0,o.useState)(!1),2),R=K[0],q=K[1],V=eG((0,o.useState)(),2),N=V[0],B=V[1],z=eG((0,o.useState)([]),2),L=z[0],_=z[1],G=eG((0,o.useState)(),2),$=G[0],U=G[1],W=eG((0,o.useState)(!1),2),J=W[0],X=W[1],H=eG((0,o.useState)(!1),2),Z=H[0],Y=H[1],Q=eG((0,o.useState)([]),2),ee=Q[0],et=Q[1],en=eG((0,o.useState)([]),2),er=en[0],el=en[1],ea=eG((0,o.useState)([]),2),eo=ea[0],ei=ea[1],eu=eG((0,o.useState)(""),2),ec=eu[0],es=eu[1],ed=eG((0,o.useState)(!1),2),em=ed[0],ef=ed[1],ep="main"===e.dataSourceKey,ev=y.dataSourceManager.getDataSource(e.dataSourceKey),ey=S.getType(null==ev||null==(t=ev.options)?void 0:t.type),eg=null==ey?void 0:ey.AddCollection,eb=null==ey?void 0:ey.EditCollection,eh=null==ey?void 0:ey.DeleteCollection,eS=!!(null==ey?void 0:ey.disableConfigureFields),eE=!eS,ew=!!(!ep&&!eS&&eb),eC=!!(!ep&&!eS&&(null==ey?void 0:ey.allowCollectionCreate)&&eg),eF=!!(!ep&&!eS&&(null==ey?void 0:ey.allowCollectionDeletion)&&eh),ek=(0,o.useMemo)(function(){return S.getCollectionTemplates()},[S]),eI=(0,l.useRequest)(function(){return ez(function(){return eW(this,function(e){switch(e.label){case 0:if(!ep)return[2,[]];return[4,y.api.request({url:"collectionCategories:list",params:{paginate:!1,sort:["sort"]}})];case 1:return[2,e3(e.sent())]}})})()},{refreshDeps:[ep]}),ex=(0,l.useRequest)(function(){return ez(function(){var t;return eW(this,function(n){var r,l,a,o,i,u,c,s,d;switch(n.label){case 0:return r={activeCategoryKey:T,filterPayload:$,isMainDataSource:ep},l=[e6()],r.isMainDataSource&&"all"!==r.activeCategoryKey&&l.push({"category.id":Number.isSafeInteger(o=Number(a=r.activeCategoryKey))&&String(o)===a?o:a}),r.filterPayload&&l.push(r.filterPayload),t=l.length>1?{$and:l}:l[0],[4,y.api.request({url:ep?"collections:list":"dataSources/".concat(e.dataSourceKey,"/collections:list"),params:{page:F,pageSize:x,sort:["sort"],filter:JSON.stringify(t),appends:ep?["fields","category"]:["fields"]}})];case 1:return[2,{records:s=Array.isArray(c=null==(u=null==(i=n.sent())?void 0:i.data)?void 0:u.data)?c:Array.isArray(null==c?void 0:c.data)?c.data:[],total:(d=(null==u?void 0:u.meta)||(null==c?void 0:c.meta)||{}).count||d.total||s.length}]}})})()},{refreshDeps:[T,$,ep,e.dataSourceKey,F,x]}),eO=(0,o.useMemo)(function(){return eI.data||[]},[eI.data]);(0,o.useEffect)(function(){ep&&("all"===T||eO.some(function(e){return String(e.id)===T}))||M("all")},[T,eO,ep]);var eA=(0,o.useCallback)(function(t){y.viewer.drawer({title:i().createElement("span",null,(0,s.h)(t.title||t.name,m)," - ",m("Configure fields")),width:"80%",closable:!0,content:function(){return i().createElement(eV,{dataSourceKey:e.dataSourceKey,collection:t})}})},[y.viewer,e.dataSourceKey,m]),eT=(0,o.useCallback)(function(e){M(e),k(1)},[]),eM=(0,o.useCallback)(function(){B(void 0),E.setFieldsValue({color:"default"}),P(!0)},[E]),eD=(0,o.useCallback)(function(e){B(e),E.setFieldsValue({name:e.name,color:e.color||"default"}),P(!0)},[E]),ej=(0,o.useCallback)(function(){return ez(function(){var e;return eW(this,function(t){switch(t.label){case 0:return[4,E.validateFields()];case 1:e=t.sent(),q(!0),t.label=2;case 2:if(t.trys.push([2,,7,8]),!N)return[3,4];return[4,y.api.resource("collectionCategories").update({filter:{id:N.id},values:e})];case 3:return t.sent(),[3,6];case 4:return[4,y.api.resource("collectionCategories").create({values:e})];case 5:t.sent(),t.label=6;case 6:return P(!1),B(void 0),E.resetFields(),eI.refresh(),ex.refresh(),[3,8];case 7:return q(!1),[7];case 8:return[2]}})})()},[E,eI,y.api,N,ex]),eP=(0,o.useCallback)(function(e){h.confirm({title:m("Delete category"),content:m("Are you sure you want to delete it?"),onOk:function(){return ez(function(){return eW(this,function(t){switch(t.label){case 0:return[4,y.api.resource("collectionCategories").destroy({filter:{id:e.id}})];case 1:return t.sent(),String(e.id)===T&&M("all"),eI.refresh(),ex.refresh(),[2]}})})()}})},[T,eI,y.api,h,ex,m]),eK=(0,o.useCallback)(function(e,t){return ez(function(){return eW(this,function(n){switch(n.label){case 0:return[4,y.api.resource("collectionCategories").move({sourceId:e.id,targetId:t.id})];case 1:return n.sent(),eI.refresh(),ex.refresh(),[2]}})})()},[eI,y.api,ex]),eR=(0,o.useCallback)(function(e){y.viewer.drawer({width:"50%",closable:!0,content:function(){return i().createElement(ta,{template:e,categories:eO,activeCategoryKey:T,onSubmitted:function(){_([]),ex.refresh()}})}})},[T,eO,y.viewer,ex]),eq=(0,o.useCallback)(function(t){y.viewer.drawer({width:"50%",closable:!0,content:function(){return i().createElement(to,{dataSourceKey:e.dataSourceKey,collection:t,categories:eO,onSubmitted:function(){_([]),ex.refresh()}})}})},[eO,y.viewer,e.dataSourceKey,ex]),eN=(0,o.useCallback)(function(e){var t=Array.isArray(e)?e:[e];if(t.length){var n=!1;h.confirm({closable:!0,icon:i().createElement(d.ExclamationCircleFilled,{style:{color:"#faad14"}}),okText:m("Ok"),cancelText:m("Cancel"),title:m("Delete collection"),width:520,content:i().createElement("div",null,i().createElement("div",null,m("Are you sure you want to delete it?")),i().createElement(a.Checkbox,{style:{marginTop:8},onChange:function(e){return n=e.target.checked}},m("Automatically drop objects that depend on the collection (such as views), and in turn all objects that depend on those objects"))),onOk:function(){return ez(function(){var e;return eW(this,function(r){switch(r.label){case 0:return[4,y.api.resource("collections").destroy({filterByTk:t,cascade:n})];case 1:return r.sent(),_([]),ex.refresh(),null==(e=y.dataSourceManager.getDataSource("main"))||e.reload(),[2]}})})()}})}},[y.api,y.dataSourceManager,h,ex,m]),eB=(0,o.useCallback)(function(e,t){return ez(function(){var n;return eW(this,function(r){switch(r.label){case 0:if(!ep)return[2];return[4,y.api.resource("collections").move({sourceId:e.name,targetId:t.name})];case 1:return r.sent(),b.success(m("Saved successfully")),ex.refresh(),null==(n=y.dataSourceManager.getDataSource("main"))||n.reload(),[2]}})})()},[y.api,y.dataSourceManager,ep,b,ex,m]),eL=(0,o.useCallback)(function(){return ez(function(){var t,n,r,l,a,o,i;return eW(this,function(u){switch(u.label){case 0:if(ep)return ex.refresh(),[2];ef(!0),u.label=1;case 1:return u.trys.push([1,4,5,6]),a=(null==ev?void 0:ev.status)||"loaded",[4,y.api.request({url:"dataSources:refresh?filterByTk=".concat(encodeURIComponent(e.dataSourceKey),"&clientStatus=").concat(encodeURIComponent(a)),method:"post"})];case 2:return"reloading"===(i=(null==(o=u.sent())||null==(n=o.data)||null==(t=n.data)?void 0:t.status)||(null==o||null==(r=o.data)?void 0:r.status))?b.warning(m("Data source synchronization in progress")):"loaded"===i&&(b.success(m("Data source synchronization successful")),ex.refresh()),[4,null==(l=y.dataSourceManager.getDataSource(e.dataSourceKey))?void 0:l.reload()];case 3:return u.sent(),[3,6];case 4:return u.sent(),b.error(m("Data source synchronization failed")),[3,6];case 5:return ef(!1),[7];case 6:return[2]}})})()},[y.api,y.dataSourceManager,null==ev?void 0:ev.status,ep,b,e.dataSourceKey,ex,m]),e_=(0,o.useCallback)(function(){h.confirm({title:m("Sync field changes from database"),content:m("Field synchronization confirmation prompt"),onOk:function(){return ez(function(){var e;return eW(this,function(t){switch(t.label){case 0:return[4,y.api.resource("mainDataSource").syncFields()];case 1:return t.sent(),ex.refresh(),null==(e=y.dataSourceManager.getDataSource("main"))||e.reload(),b.success(m("Sync successfully")),[2]}})})()}})},[y.api,y.dataSourceManager,b,h,ex,m]),eU=(0,o.useCallback)(function(){X(!1),el([]),ei([]),es("")},[]),eH=(0,o.useCallback)(function(){return ez(function(){var e,t,n;return eW(this,function(r){switch(r.label){case 0:X(!0),Y(!0),r.label=1;case 1:return r.trys.push([1,3,4,5]),[4,y.api.resource("dataSources").readTables({values:{dataSourceKey:"main"}})];case 2:return et((Array.isArray(n=null==(t=r.sent())||null==(e=t.data)?void 0:e.data)?n:[]).map(function(e){return{key:e.name,name:e.name,title:e.title||e.name,description:e.description}})),el([]),ei([]),[3,5];case 3:return r.sent(),b.error(m("Failed to load tables")),[3,5];case 4:return Y(!1),[7];case 5:return[2]}})})()},[y.api,b,m]),eZ=(0,o.useCallback)(function(){er.length?h.confirm({title:m("Confirm load tables"),content:m("Are you sure you want to load {{count}} table(s)?").replace("{{count}}",String(er.length)),onOk:function(){return ez(function(){var e;return eW(this,function(t){switch(t.label){case 0:Y(!0),t.label=1;case 1:return t.trys.push([1,3,4,5]),[4,y.api.resource("dataSources").loadTables({values:{dataSourceKey:"main",tables:er}})];case 2:return t.sent(),b.success(m("Tables loaded successfully")),eU(),ex.refresh(),null==(e=y.dataSourceManager.getDataSource("main"))||e.reload(),[3,5];case 3:return t.sent(),b.error(m("Failed to load tables")),[3,5];case 4:return Y(!1),[7];case 5:return[2]}})})()}}):b.warning(m("Please select at least one table"))},[y.api,y.dataSourceManager,b,h,ex,eU,er,m]),eY=(0,o.useCallback)(function(){U((0,p.transformFilter)(w.current)),k(1)},[]),e1=(0,o.useCallback)(function(){w.current.logic="$and",w.current.items.splice(0,w.current.items.length),U(void 0),k(1)},[]),e2=(0,o.useMemo)(function(){if(!ec)return ee;var e=ec.toLowerCase();return ee.filter(function(t){var n;return t.title.toLowerCase().includes(e)||t.name.toLowerCase().includes(e)||(null==(n=t.description)?void 0:n.toLowerCase().includes(e))})},[ee,ec]),e4=(0,o.useMemo)(function(){return[{key:"all",label:m("All collections"),closable:!1}].concat(e$(eO.map(function(e){return{key:String(e.id),label:i().createElement(eQ,{item:e,onDelete:eP,onEdit:eD}),closable:!1}})))},[eO,eP,eD,m]),e5=(0,o.useMemo)(function(){var t=[{title:m("Collection display name"),render:function(e){return(0,s.h)(e.title||e.name,m)}},{title:m("Collection name"),dataIndex:"name",ellipsis:!0},{title:m("Collection template"),dataIndex:"template",render:function(e){var t,n;return i().createElement(a.Tag,null,(t=e||"general",(n=S.getCollectionTemplate(t))?(0,s.h)(n.title,m):t))}}];return ep&&"all"===T&&t.push({title:m("Collection category"),dataIndex:"category",render:function(e){return Array.isArray(e)&&e.length?i().createElement(a.Space,{size:[4,4],wrap:!0},e.map(function(e){return i().createElement(a.Tag,{key:e.id,color:"default"===e.color?void 0:e.color},(0,s.h)(e.name||e.id,m))})):null}}),t.push({title:m("Description"),dataIndex:"description",ellipsis:!0},{title:m("Actions"),width:ep||eE||ew||eF?260:140,render:function(t,n){return i().createElement(a.Space,{size:16},i().createElement("a",{onClick:function(){return eA(n)}},m("Configure fields")),ep?i().createElement(i().Fragment,null,i().createElement("a",{onClick:function(){return eq(n)}},m("Edit")),i().createElement("a",{onClick:function(){return eN(n.name)}},m("Delete"))):i().createElement(i().Fragment,null,ew&&eb?i().createElement(eb,{dataSourceKey:e.dataSourceKey,record:n,onSubmitted:function(){_([]),ex.refresh()}}):eE?i().createElement("a",{onClick:function(){return eq(n)}},m("Edit")):null,eF&&eh?i().createElement(eh,{dataSourceKey:e.dataSourceKey,record:n,onSubmitted:function(){_([]),ex.refresh()}}):null))}}),t},[eb,eh,T,ew,eE,eF,eN,ep,eq,eA,S,e.dataSourceKey,ex,m]);return i().createElement(a.Card,{title:(0,s.h)(e.title,m),variant:"borderless"},ep?i().createElement(e0,{onSort:eK},i().createElement(a.Tabs,{activeKey:T,type:"editable-card",items:e4,onChange:eT,onEdit:function(e,t){"add"===t&&eM()}})):null,i().createElement(a.Flex,{justify:"space-between",align:"center",style:{marginBottom:16}},i().createElement(e7,{value:w.current,onSubmit:eY,onReset:e1}),i().createElement(a.Space,null,i().createElement(a.Button,{icon:i().createElement(d.ReloadOutlined,null),loading:em,onClick:eL},m("Refresh")),ep?i().createElement(i().Fragment,null,i().createElement(a.Button,{icon:i().createElement(d.DeleteOutlined,null),disabled:!L.length,onClick:function(){return eN(L)}},m("Delete")),i().createElement(a.Dropdown,{placement:"bottomLeft",menu:{items:[{key:"load-tables",icon:i().createElement(d.ImportOutlined,null),label:m("Load tables from database")},{key:"sync-fields",icon:i().createElement(d.ReloadOutlined,null),label:m("Sync field changes from database")}],onClick:function(e){var t=e.key;"load-tables"===t&&eH(),"sync-fields"===t&&e_()}}},i().createElement(a.Button,{icon:i().createElement(d.SyncOutlined,null)},m("Sync from database")," ",i().createElement(d.DownOutlined,null))),i().createElement(a.Dropdown,{menu:{items:ek.flatMap(function(e){var t={key:e.name,label:(0,s.h)(e.title,m)};return e.divider?[{type:"divider"},t]:[t]}),onClick:function(e){var t=e.key,n=ek.find(function(e){return e.name===t});n&&eR(n)}}},i().createElement(a.Button,{type:"primary",icon:i().createElement(d.PlusOutlined,null)},m("Create collection")," ",i().createElement(d.DownOutlined,null)))):i().createElement(i().Fragment,null,eF&&eh?i().createElement(eh,{dataSourceKey:e.dataSourceKey,selectedRowKeys:L,isBulk:!0,onSubmitted:function(){_([]),ex.refresh()}},m("Delete")):null,eC&&eg?i().createElement(eg,{dataSourceKey:e.dataSourceKey,onSubmitted:function(){_([]),ex.refresh()}}):null))),i().createElement(f.Table,{rowKey:"name",isDraggable:ep,onSortEnd:ep?eB:void 0,loading:ex.loading,dataSource:(null==(n=ex.data)?void 0:n.records)||[],columns:e5,rowSelection:ep||eF?{selectedRowKeys:L,onChange:function(e){return _(e)}}:void 0,pagination:{current:F,pageSize:x,total:null==(u=ex.data)?void 0:u.total,onChange:function(e,t){if(t!==x){O(t),k(1);return}k(e)}}}),i().createElement(a.Modal,{title:N?m("Edit category"):m("Add category"),open:j,confirmLoading:R,okText:m("Submit"),cancelText:m("Cancel"),onOk:ej,onCancel:function(){P(!1),B(void 0),E.resetFields()}},i().createElement(a.Form,{form:E,layout:"vertical",initialValues:{color:"default"}},i().createElement(a.Form.Item,{name:"name",label:m("Category name"),rules:[{required:!0}]},i().createElement(a.Input,null)),i().createElement(a.Form.Item,{name:"color",label:m("Color")},i().createElement(a.Select,{options:eJ.map(function(e){return{value:e,label:i().createElement(a.Tag,{color:"default"===e?void 0:e},m(eX[e]))}})})))),i().createElement(a.Drawer,{title:m("Load tables from database"),placement:"right",width:800,open:J,onClose:eU,footer:i().createElement(a.Flex,{justify:"flex-end",gap:8},i().createElement(a.Button,{onClick:eU},m("Cancel")),i().createElement(a.Button,{type:"primary",loading:Z,disabled:!er.length,onClick:eZ},m("Submit")))},i().createElement(a.Spin,{spinning:Z},i().createElement(a.Transfer,{dataSource:e2,titles:[m("Available tables"),m("Selected tables")],targetKeys:er,selectedKeys:eo,onChange:function(e){return el(e.map(String))},onSelectChange:function(e,t){return ei(e$(e).concat(e$(t)).map(String))},onSearch:function(e,t){return es(t)},render:function(e){return e.title},showSearch:!0,style:{height:"calc(100vh - 160px)"},listStyle:{width:350,height:"calc(100vh - 220px)"},locale:{itemUnit:m("item"),itemsUnit:m("items"),searchPlaceholder:m("Search collections...")}}))))};function tu(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 tc(e,t,n,r,l,a,o){try{var i=e[a](o),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,l)}function ts(){var e=(0,c.kj)(),t=(0,r.useFlowContext)(),n=(0,u.useParams)(),d=function(e){if(e)try{return decodeURIComponent(e)}catch(t){return e}}(n.name||n.dataSourceKey),m=function(e){if(Array.isArray(e))return e}(w=(0,o.useState)("main"))||function(e){var t,n,r=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var l=[],a=!0,o=!1;try{for(r=r.call(e);!(a=(t=r.next()).done)&&(l.push(t.value),2!==l.length);a=!0);}catch(e){o=!0,n=e}finally{try{a||null==r.return||r.return()}finally{if(o)throw n}}return l}}(w)||function(e){if(e){if("string"==typeof e)return tu(e,2);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return tu(e,2)}}(w)||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=m[0],p=m[1],v=d||f,y=(0,l.useRequest)(function(){var e;return(e=function(){return function(e,t){var n,r,l,a={label:0,sent:function(){if(1&l[0])throw l[1];return l[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(o,"next",{value:u(0)}),i(o,"throw",{value:u(1)}),i(o,"return",{value:u(2)}),"function"==typeof Symbol&&i(o,Symbol.iterator,{value:function(){return this}}),o;function u(i){return function(u){var c=[i,u];if(n)throw TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(l=2&c[0]?r.return:c[0]?r.throw||((l=r.return)&&l.call(r),0):r.next)&&!(l=l.call(r,c[1])).done)return l;switch(r=0,l&&(c=[2&c[0],l.value]),c[0]){case 0:case 1:l=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(!(l=(l=a.trys).length>0&&l[l.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!l||c[1]>l[0]&&c[1]<l[3])){a.label=c[1];break}if(6===c[0]&&a.label<l[1]){a.label=l[1],l=c;break}if(l&&a.label<l[2]){a.label=l[2],a.ops.push(c);break}l[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],r=0}finally{n=l=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(e){switch(e.label){case 0:return[4,t.dataSourceManager.ensureLoaded({force:!0,keys:["*"]})];case 1:return e.sent(),[2,t.dataSourceManager.getDataSources()]}})},function(){var t=this,n=arguments;return new Promise(function(r,l){var a=e.apply(t,n);function o(e){tc(a,r,l,o,i,"next",e)}function i(e){tc(a,r,l,o,i,"throw",e)}o(void 0)})})()}),g=(0,o.useMemo)(function(){return y.data||[]},[y.data]),b=(0,o.useMemo)(function(){return g.find(function(e){return e.key===v})},[v,g]),h=(0,o.useCallback)(function(t){return"main"===t.key?e("Main"):(0,s.h)(t.displayName||t.key,e)},[e]),S=(0,o.useMemo)(function(){return t.app.pluginSettingsManager.getRoutePath("".concat(c.Ji,".list"))},[t.app.pluginSettingsManager]),E=(0,o.useCallback)(function(){t.router.navigate(S)},[t.router,S]);if((0,o.useEffect)(function(){!d&&g.length&&(g.some(function(e){return e.key===v})||p(g[0].key))},[v,g,d]),y.loading)return i().createElement(a.Spin,null);if(d){var w,C,F,k=b?h(b):d;return i().createElement(ti,{dataSourceKey:d,title:i().createElement(a.Breadcrumb,{items:[{title:i().createElement("a",{onClick:E},e("Data sources"))},{title:i().createElement(a.Space,{size:8},i().createElement("span",null,k),(C=null==b?void 0:b.status,(F=({loading:{color:"orange",label:e("Loading")},"loading-failed":{color:"red",label:e("Failed")},loaded:{color:"green",label:e("Loaded")},reloading:{color:"orange",label:e("Reloading")}})[C||""])?i().createElement(a.Tag,{color:F.color},F.label):null))}]})})}return i().createElement(a.Space,{direction:"vertical",size:16,style:{width:"100%"}},i().createElement(a.Select,{style:{width:320},value:v,options:g.map(function(e){return{value:e.key,label:h(e)}}),onChange:p}),v?i().createElement(ti,{dataSourceKey:v}):null)}}}]);
@@ -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
- "use strict";(self.webpackChunk_nocobase_plugin_data_source_manager_client_v2=self.webpackChunk_nocobase_plugin_data_source_manager_client_v2||[]).push([["426"],{649:function(e,t,n){n.r(t),n.d(t,{default:function(){return I}});var r=n(375),a=n(485),l=n(694),o=n(625),u=n(59),i=n(155),c=n.n(i),s=n(143),d=n(938);function f(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 m(e,t,n,r,a,l,o){try{var u=e[l](o),i=u.value}catch(e){n(e);return}u.done?t(i):Promise.resolve(i).then(r,a)}function p(e){return function(){var t=this,n=arguments;return new Promise(function(r,a){var l=e.apply(t,n);function o(e){m(l,r,a,o,u,"next",e)}function u(e){m(l,r,a,o,u,"throw",e)}o(void 0)})}}function y(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}function b(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function v(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,a=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var l=[],o=!0,u=!1;try{for(a=a.call(e);!(o=(n=a.next()).done)&&(l.push(n.value),!t||l.length!==t);o=!0);}catch(e){u=!0,r=e}finally{try{o||null==a.return||a.return()}finally{if(u)throw r}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return f(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 f(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function g(e,t){var n,r,a,l={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(o,"next",{value:i(0)}),u(o,"throw",{value:i(1)}),u(o,"return",{value:i(2)}),"function"==typeof Symbol&&u(o,Symbol.iterator,{value:function(){return this}}),o;function i(u){return function(i){var c=[u,i];if(n)throw TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(l=0)),l;)try{if(n=1,r&&(a=2&c[0]?r.return:c[0]?r.throw||((a=r.return)&&a.call(r),0):r.next)&&!(a=a.call(r,c[1])).done)return a;switch(r=0,a&&(c=[2&c[0],a.value]),c[0]){case 0:case 1:a=c;break;case 4:return l.label++,{value:c[1],done:!1};case 5:l.label++,r=c[1],c=[0];continue;case 7:c=l.ops.pop(),l.trys.pop();continue;default:if(!(a=(a=l.trys).length>0&&a[a.length-1])&&(6===c[0]||2===c[0])){l=0;continue}if(3===c[0]&&(!a||c[1]>a[0]&&c[1]<a[3])){l.label=c[1];break}if(6===c[0]&&l.label<a[1]){l.label=a[1],a=c;break}if(a&&l.label<a[2]){l.label=a[2],l.ops.push(c);break}a[2]&&l.ops.pop(),l.trys.pop();continue}c=t.call(e,l)}catch(e){c=[6,e],r=0}finally{n=a=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}function h(e){if("string"==typeof e)return e;var t,n,r,a,l,o,u,i,c,s,d=null==e||null==(t=e.response)?void 0:t.data;return(null==e||null==(a=e.errorFields)||null==(r=a[0])||null==(n=r.errors)?void 0:n[0])||(null==d||null==(o=d.errors)||null==(l=o[0])?void 0:l.message)||(null==d||null==(i=d.messages)||null==(u=i[0])?void 0:u.message)||(null==d||null==(c=d.messages)?void 0:c[0])||(null==d||null==(s=d.error)?void 0:s.message)||(null==d?void 0:d.message)||(null==e?void 0:e.message)}function w(e){var t=(0,s.kj)(),n=(0,l.useFlowContext)(),r=(0,l.useFlowView)(),o=u.App.useApp(),f=o.message,m=o.notification,w=v(u.Form.useForm(),1)[0],S=v((0,i.useState)(!1),2),E=S[0],k=S[1],C=v((0,i.useState)(!1),2),O=C[0],A=C[1],j=(0,i.useMemo)(function(){return n.api.resource("dataSources")},[n.api]),_=(0,i.useMemo)(function(){return"create"===e.mode?b(y({},e.type.defaultValues),{type:e.type.name,key:(0,l.randomId)("d_")}):e.initialValues||{}},[e.initialValues,e.mode,e.type]),I=e.type.SettingsForm;(0,i.useEffect)(function(){w.setFieldsValue(_)},[w,_]);var x=(0,i.useCallback)(function(e){return p(function(){var t;return g(this,function(n){switch(n.label){case 0:return[4,j.readTables({values:{dataSourceKey:e}})];case 1:return[2,null==(t=n.sent())?void 0:t.data]}})})()},[j]),P=(0,i.useCallback)(function(t){var n,r,a,l=t.collections||[],o=y({},t.options||{});"string"==typeof o.port&&/^\d+$/.test(o.port.trim())&&(o.port=Number(o.port.trim())),(null==(n=o.ssl)?void 0:n.sslMode)==="disable"&&(o.ssl={sslMode:"disable"});var u=b(y({},t),{options:o,collections:l.filter(function(e){return"string"==typeof e||e.selected}).map(function(e){return"string"==typeof e?e:e.name})});return(null==(r=(a=e.type).normalizeValues)?void 0:r.call(a,u))||u},[e.type]),M=(0,i.useCallback)(function(){return p(function(){var e,n,r;return g(this,function(a){switch(a.label){case 0:A(!0),a.label=1;case 1:return a.trys.push([1,4,5,6]),[4,w.validateFields()];case 2:return e=a.sent(),[4,j.testConnection({values:P(e)})];case 3:var l,o,i,c,s,d,p,y;if(n=(null==(y=null==(l=a.sent())?void 0:l.data)||null==(i=y.errors)||null==(o=i[0])?void 0:o.message)||(null==y||null==(s=y.messages)||null==(c=s[0])?void 0:c.message)||(null==y||null==(d=y.messages)?void 0:d[0])||(null==y||null==(p=y.error)?void 0:p.message)||(null==y?void 0:y.message))throw Error(n);return f.success(t("Connection successful")),[3,6];case 4:return r=h(a.sent())||t("Connection failed"),(m||u.notification).error({message:t("Test Connection"),description:r}),[3,6];case 5:return A(!1),[7];case 6:return[2]}})})()},[w,f,P,m,j,t]),D=(0,i.useCallback)(function(){return p(function(){var n,a,l,o,i;return g(this,function(c){switch(c.label){case 0:return[4,w.validateFields()];case 1:n=P.apply(void 0,[c.sent()]),k(!0),c.label=2;case 2:if(c.trys.push([2,9,10,11]),"create"!==e.mode)return[3,4];return[4,j.create({values:n})];case 3:return l=c.sent(),[3,6];case 4:return[4,j.update({filterByTk:null==(o=e.initialValues)?void 0:o.key,values:n})];case 5:l=c.sent(),c.label=6;case 6:return[4,e.onSubmitted((null==l||null==(a=l.data)?void 0:a.data)||n)];case 7:return c.sent(),[4,r.close()];case 8:return c.sent(),[3,11];case 9:return i=h(c.sent())||t("Submit failed"),(m||u.notification).error({message:t("Submit failed"),description:i}),[3,11];case 10:return k(!1),[7];case 11:return[2]}})})()},[w,P,m,e,j,t,r]),T=(0,d.A)(e.type.label||e.type.name,t),F="".concat("create"===e.mode?t("Add new"):t("Edit")," - ").concat(T);return c().createElement(a.DrawerFormLayout,{title:F,onSubmit:D,submitting:E,submitText:t("Submit"),cancelText:t("Cancel"),footer:c().createElement(u.Space,null,e.type.disableTestConnection?null:c().createElement(u.Button,{loading:O,onClick:M},t("Test Connection")),c().createElement(u.Button,{onClick:function(){return r.close()}},t("Cancel")),c().createElement(u.Button,{type:"primary",loading:E,onClick:D},t("Submit")))},c().createElement(u.Form,{form:w,layout:"vertical",initialValues:_},c().createElement(u.Form.Item,{name:"type",hidden:!0},c().createElement(u.Input,null)),c().createElement(u.Form.Item,{name:"key",label:t("Data source name"),rules:[{required:!0,message:t("Data source name")},{pattern:/^[A-Za-z][A-Za-z0-9_]*$/,message:t("Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.")}],extra:t("Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.")},c().createElement(u.Input,{disabled:"edit"===e.mode})),c().createElement(u.Form.Item,{name:"displayName",label:t("Data source display name"),rules:[{required:!0,message:t("Data source display name")}]},c().createElement(u.Input,null)),I?c().createElement(I,{mode:e.mode,type:e.type,initialValues:_,loadCollections:x}):null))}var S=n(890),E=n(448);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 C(e,t,n,r,a,l,o){try{var u=e[l](o),i=u.value}catch(e){n(e);return}u.done?t(i):Promise.resolve(i).then(r,a)}function O(e){return function(){var t=this,n=arguments;return new Promise(function(r,a){var l=e.apply(t,n);function o(e){C(l,r,a,o,u,"next",e)}function u(e){C(l,r,a,o,u,"throw",e)}o(void 0)})}}function A(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,a=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var l=[],o=!0,u=!1;try{for(a=a.call(e);!(o=(n=a.next()).done)&&(l.push(n.value),!t||l.length!==t);o=!0);}catch(e){u=!0,r=e}finally{try{o||null==a.return||a.return()}finally{if(u)throw r}}return l}}(e,t)||j(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function j(e,t){if(e){if("string"==typeof e)return k(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 k(e,t)}}function _(e,t){var n,r,a,l={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(o,"next",{value:i(0)}),u(o,"throw",{value:i(1)}),u(o,"return",{value:i(2)}),"function"==typeof Symbol&&u(o,Symbol.iterator,{value:function(){return this}}),o;function i(u){return function(i){var c=[u,i];if(n)throw TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(l=0)),l;)try{if(n=1,r&&(a=2&c[0]?r.return:c[0]?r.throw||((a=r.return)&&a.call(r),0):r.next)&&!(a=a.call(r,c[1])).done)return a;switch(r=0,a&&(c=[2&c[0],a.value]),c[0]){case 0:case 1:a=c;break;case 4:return l.label++,{value:c[1],done:!1};case 5:l.label++,r=c[1],c=[0];continue;case 7:c=l.ops.pop(),l.trys.pop();continue;default:if(!(a=(a=l.trys).length>0&&a[a.length-1])&&(6===c[0]||2===c[0])){l=0;continue}if(3===c[0]&&(!a||c[1]>a[0]&&c[1]<a[3])){l.label=c[1];break}if(6===c[0]&&l.label<a[1]){l.label=a[1],a=c;break}if(a&&l.label<a[2]){l.label=a[2],l.ops.push(c);break}a[2]&&l.ops.pop(),l.trys.pop();continue}c=t.call(e,l)}catch(e){c=[6,e],r=0}finally{n=a=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}function I(){var e,t,n=(0,s.kj)(),f=(0,l.useFlowContext)(),m=u.App.useApp().modal,p=f.app.pm.get(S.v),y=(0,i.useMemo)(function(){return f.api.resource("dataSources")},[f.api]),b=(0,i.useMemo)(function(){var e;return function(e){if(Array.isArray(e))return k(e)}(e=p.types.values())||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||j(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.")}()},[p]),v=A((0,i.useState)(1),2),g=v[0],h=v[1],C=A((0,i.useState)(a.DEFAULT_PAGE_SIZE),2),I=C[0],x=C[1],P=A((0,i.useState)([]),2),M=P[0],D=P[1],T=(0,o.useRequest)(function(){return O(function(){var e;return _(this,function(t){switch(t.label){case 0:return[4,y.list({page:g,pageSize:I,appends:[]})];case 1:var n,r,a,l,o;return e={records:l=Array.isArray(a=null==(r=null==(n=t.sent())?void 0:n.data)?void 0:r.data)?a:Array.isArray(null==a?void 0:a.data)?a.data:[],total:(o=(null==r?void 0:r.meta)||(null==a?void 0:a.meta)||{}).count||o.total||l.length},(0,E.b)(f.dataSourceManager,e.records),[2,e]}})})()},{refreshDeps:[g,I]}),F=(0,i.useMemo)(function(){var e;return(null==(e=T.data)?void 0:e.records)||[]},[null==(e=T.data)?void 0:e.records]),V=(0,i.useCallback)(function(e,t,n){var r=p.getType(t);r&&f.viewer.drawer({width:650,closable:!0,content:function(){return c().createElement(w,{mode:e,type:r,initialValues:n,onSubmitted:function(e){e&&(0,E.b)(f.dataSourceManager,[e]),T.refresh()}})}})},[f.dataSourceManager,f.viewer,p,T]),R=(0,i.useCallback)(function(e){var t=f.app.pluginSettingsManager.getRoutePath("".concat(s.Ji,".:name/collections")).replace(":name",encodeURIComponent(e.key));f.router.navigate(t)},[f.app.pluginSettingsManager,f.router]),B=(0,i.useCallback)(function(){return O(function(){return _(this,function(e){switch(e.label){case 0:return[4,Promise.all(F.filter(function(e){return"loaded"!==e.status}).map(function(e){return e.key}).map(function(e){var t;return null==(t=f.dataSourceManager.getDataSource(e))?void 0:t.reload()}))];case 1:return e.sent(),T.refresh(),[2]}})})()},[f.dataSourceManager,F,T]),z=(0,i.useCallback)(function(e){var t=Array.isArray(e)?e:[e];m.confirm({title:n("Delete"),content:n("Are you sure you want to delete it?"),onOk:function(){return O(function(){return _(this,function(n){switch(n.label){case 0:return[4,y.destroy({filterByTk:e})];case 1:return n.sent(),(0,E.h)(f.dataSourceManager,t),D([]),T.refresh(),[2]}})})()}})},[f.dataSourceManager,m,T,y,n]),N=(0,i.useMemo)(function(){return[{title:n("Data source name"),dataIndex:"key",ellipsis:!0},{title:n("Data source display name"),dataIndex:"displayName",ellipsis:!0,render:function(e){return(0,d.h)(e,n)}},{title:n("Type"),dataIndex:"type",render:function(e){var t;return"main"===e?n("Main"):(0,d.h)((null==(t=p.getType(e))?void 0:t.label)||e||"-",n)}},{title:n("Status"),dataIndex:"status",render:function(e){var t;return t=({loading:{color:"orange",label:n("Loading")},"loading-failed":{color:"red",label:n("Failed")},loaded:{color:"green",label:n("Loaded")},reloading:{color:"orange",label:n("Reloading")}})[e||""]||{color:"default",label:e||"-"},c().createElement(u.Tag,{color:t.color},t.label)}},{title:n("Enabled"),dataIndex:"enabled",render:function(e){return c().createElement(u.Switch,{checked:e,disabled:!0,size:"small"})}},{title:n("Actions"),width:260,render:function(e,t){return c().createElement(u.Space,{size:12,wrap:!0},c().createElement("a",{onClick:function(){return R(t)}},n("Configure")),"main"!==t.key?c().createElement("a",{onClick:function(){return V("edit",t.type||"",t)}},n("Edit")):null,"main"!==t.key?c().createElement("a",{onClick:function(){return z(t.key)}},n("Delete")):null)}}]},[z,R,V,p,n]),L=(0,i.useMemo)(function(){return b.length?b.map(function(e){return{key:e.name||"",label:(0,d.h)(e.label||e.name,n)}}):[{key:"__empty__",label:c().createElement(u.Empty,{image:u.Empty.PRESENTED_IMAGE_SIMPLE,description:c().createElement("span",null,n("No external data source plugin installed"),c().createElement("br",null),c().createElement("a",{target:"_blank",rel:"noreferrer",href:"zh-CN"===f.api.auth.locale?"https://docs-cn.nocobase.com/handbook/data-source-manager":"https://docs.nocobase.com/handbook/data-source-manager"},n("View documentation")))})}]},[f.api.auth.locale,b,n]);return c().createElement(u.Card,{variant:"borderless"},c().createElement("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginBottom:16}},c().createElement(u.Space,null,c().createElement(u.Button,{icon:c().createElement(r.ReloadOutlined,null),onClick:B},n("Refresh")),c().createElement(u.Button,{icon:c().createElement(r.DeleteOutlined,null),disabled:!M.length,onClick:function(){return z(M)}},n("Delete")),c().createElement(u.Dropdown,{menu:{items:L,onClick:function(e){var t=e.key;"__empty__"!==t&&V("create",t)}}},c().createElement(u.Button,{type:"primary",icon:c().createElement(r.PlusOutlined,null)},n("Add new")," ",c().createElement(r.DownOutlined,null))))),c().createElement(a.Table,{rowKey:"key",loading:T.loading,dataSource:F,columns:N,rowSelection:{selectedRowKeys:M,getCheckboxProps:function(e){return{disabled:"main"===e.key}},onChange:D},pagination:{current:g,pageSize:I,total:null==(t=T.data)?void 0:t.total,onChange:function(e,t){if(t!==I){x(t),h(1);return}h(e)}}}))}}}]);