@nocobase/plugin-data-source-manager 2.1.0-alpha.45 → 2.1.0-alpha.46

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-router-dom"),require("@ant-design/icons"),require("@dnd-kit/core"),require("@nocobase/flow-engine"),require("ahooks"),require("@nocobase/client-v2"),require("@dnd-kit/sortable"),require("dayjs"),require("react"),require("antd"),require("@nocobase/utils/client"),require("lodash")):"function"==typeof define&&define.amd?define("@nocobase/plugin-data-source-manager/client-v2",["react-router-dom","@ant-design/icons","@dnd-kit/core","@nocobase/flow-engine","ahooks","@nocobase/client-v2","@dnd-kit/sortable","dayjs","react","antd","@nocobase/utils/client","lodash"],t):"object"==typeof exports?exports["@nocobase/plugin-data-source-manager/client-v2"]=t(require("react-router-dom"),require("@ant-design/icons"),require("@dnd-kit/core"),require("@nocobase/flow-engine"),require("ahooks"),require("@nocobase/client-v2"),require("@dnd-kit/sortable"),require("dayjs"),require("react"),require("antd"),require("@nocobase/utils/client"),require("lodash")):e["@nocobase/plugin-data-source-manager/client-v2"]=t(e["react-router-dom"],e["@ant-design/icons"],e["@dnd-kit/core"],e["@nocobase/flow-engine"],e.ahooks,e["@nocobase/client-v2"],e["@dnd-kit/sortable"],e.dayjs,e.react,e.antd,e["@nocobase/utils/client"],e.lodash)}(self,function(e,t,n,r,o,a,i,l,u,c,s,f){return function(){"use strict";var d,m,p,y,v,h={978:function(e,t,n){n.d(t,{FL:function(){return T},J6:function(){return q},eA:function(){return _},fT:function(){return D},gt:function(){return P},hK:function(){return C},k_:function(){return V},uT:function(){return M}});var r=n(375),o=n(694),a=n(625),i=n(59),l=n(185),u=n.n(l),c=n(773),s=n(155),f=n.n(s),d=n(938);function m(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,a,i){try{var l=e[a](i),u=l.value}catch(e){n(e);return}l.done?t(u):Promise.resolve(u).then(r,o)}function y(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,l,"next",e)}function l(e){p(a,r,o,i,l,"throw",e)}i(void 0)})}}function v(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 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 b(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var a=[],i=!0,l=!1;try{for(o=o.call(e);!(i=(n=o.next()).done)&&(a.push(n.value),!t||a.length!==t);i=!0);}catch(e){l=!0,r=e}finally{try{i||null==o.return||o.return()}finally{if(l)throw r}}return a}}(e,t)||S(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 m(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||S(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 S(e,t){if(e){if("string"==typeof e)return m(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 m(e,t)}}function w(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),l=Object.defineProperty;return l(i,"next",{value:u(0)}),l(i,"throw",{value:u(1)}),l(i,"return",{value:u(2)}),"function"==typeof Symbol&&l(i,Symbol.iterator,{value:function(){return this}}),i;function u(l){return function(u){var c=[l,u];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&c[0]?r.return:c[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;switch(r=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],r=0}finally{n=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}var O=new Set(["hasOne","hasMany","belongsToMany","belongsTo"]),F="__sqlPreview";function A(e){return!!e&&(void 0===e?"undefined":e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e)=="object"&&!Array.isArray(e)}function j(e){return!!A(e)&&(Array.isArray(e.data)||A(e.fields)||Array.isArray(e.sources)||"string"==typeof e.error)}function C(e){var t=[e,(0,c.get)(e,"data"),(0,c.get)(e,"data.data"),(0,c.get)(e,"data.data.data")].find(j);return t?{data:Array.isArray(t.data)?t.data:[],error:"string"==typeof t.error?t.error:void 0,fields:A(t.fields)?t.fields:{},sources:Array.isArray(t.sources)?t.sources.filter(Boolean):[]}:{data:[],fields:{},sources:[]}}function E(e){return Array.isArray(e)?e.filter(Boolean).join(".")||null:e||null}function k(e){return(null==e?void 0:e.options)||e||{}}function P(e){var t,n=e.currentFields,r=e.manager,o=e.preview,a=new Map,i=(null==o?void 0:o.fields)||{},l=(null==o||null==(t=o.data)?void 0:t[0])||{};return Object.keys(l).length?Object.entries(l).forEach(function(e){var t,n,o=b(e,2),l=o[0],c=o[1],s=i[l],f=(null==s?void 0:s.interface)||("id"===l.toLowerCase()?"id":"number"==typeof c?Number.isInteger(c)?"integer":"number":"boolean"==typeof c?"checkbox":"string"==typeof c&&u()(c).isValid()?"datetime":"input"),d=(null==r||null==(n=r.getFieldInterface)||null==(t=n.call(r,f))?void 0:t.default)||{},m=(null==s?void 0:s.uiSchema)||d.uiSchema||{};a.set(l,{name:l,interface:f,type:(null==s?void 0:s.type)||d.type,source:null==s?void 0:s.source,uiSchema:v({title:l},m)})}):Object.entries(i).forEach(function(e){var t=b(e,2),n=t[0],r=t[1];a.set(n,h(v({name:n,type:"string"},r),{uiSchema:v({title:n},r.uiSchema||{})}))}),(void 0===n?[]:n).forEach(function(e){(null==e?void 0:e.name)&&a.has(e.name)&&a.set(e.name,e)}),Array.from(a.values())}function I(){var e=(0,o.useFlowContext)();return(0,a.useRequest)(function(){return y(function(){return w(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,function(e){var t=(0,c.get)(e,"data.data");if(Array.isArray(t))return t;var n=(0,c.get)(t,"data");return Array.isArray(n)?n:[]}(t.sent())]}})})()})}function x(e){var t=e.editing,n=e.loading,o=e.onChange,a=e.onConfirm,l=e.onEdit,u=e.onExecute,c=e.onValueChange,s=e.t,d=e.value;return f().createElement("div",null,f().createElement(i.Input.TextArea,{disabled:!t,value:d,onChange:function(e){null==c||c(e.target.value),null==o||o(e.target.value)}}),f().createElement(i.Button.Group,null,f().createElement(i.Button,{ghost:!0,icon:f().createElement(r.EditOutlined,null),loading:n&&t,size:"small",type:"primary",onClick:t?a:l},s(t?"Confirm":"Edit")),f().createElement(i.Button,{ghost:!0,icon:f().createElement(r.RightSquareOutlined,null),loading:n,size:"small",type:"primary",onClick:u},s("Execute"))))}function T(e){var t=(0,o.useFlowContext)(),n=t.t,r=b((0,s.useState)(function(){return!!e.form.getFieldValue("sql")}),2),l=r[0],u=r[1],d=b((0,s.useState)(function(){return!e.form.getFieldValue("sql")}),2),m=d[0],p=d[1],v=i.Form.useWatch("sql",e.form),h=t.dataSourceManager.collectionFieldInterfaceManager,S=(0,s.useRef)(!1),O=(0,a.useRequest)(function(e){return y(function(){return w(this,function(n){switch(n.label){case 0:return[4,t.api.resource("sqlCollection").execute({values:{sql:e}})];case 1:return[2,C(n.sent())]}})})()},{manual:!0}),A=(0,s.useCallback)(function(t){var n=C(t),r=e.form.getFieldValue("sources")||[],o=e.form.getFieldValue("fields")||[],a=P({currentFields:Array.isArray(o)?o:[],manager:h,preview:n});e.form.setFieldValue("sources",Array.from(new Set(g(Array.isArray(r)?r:[]).concat(g(n.sources||[]))))),e.form.setFieldValue(F,n),e.form.setFieldValue("fields",a)},[h,e.form]),j=(0,s.useCallback)(function(t){var r=(0,c.get)(t,"response.data.errors"),o=(null==r?void 0:r.map(function(e){return e.message}).filter(Boolean).join("\n"))||(0,c.get)(t,"message");e.form.setFieldValue(F,{error:o||n("SQL error")}),u(!1),p(!0)},[e.form,n]),E=(0,s.useCallback)(function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return y(function(){var n;return w(this,function(r){switch(r.label){case 0:if(!(n=e.form.getFieldValue("sql")||v))return[2];r.label=1;case 1:return r.trys.push([1,3,,4]),[4,O.runAsync(n)];case 2:return A(r.sent()),t.confirm&&(u(!0),p(!1)),[3,4];case 3:return j(r.sent()),[3,4];case 4:return[2]}})})()},[j,A,e.form,O,v]),k=(0,s.useCallback)(function(){return y(function(){return w(this,function(t){switch(t.label){case 0:if(!e.form.getFieldValue("sql")&&!v)return[2];return[4,E({confirm:!0})];case 1:return t.sent(),[2]}})})()},[e.form,E,v]),I=(0,s.useCallback)(function(){return y(function(){return w(this,function(e){switch(e.label){case 0:return[4,E()];case 1:return e.sent(),[2]}})})()},[E]);return(0,s.useEffect)(function(){!S.current&&"edit"===e.mode&&(e.form.getFieldValue("sql")||v)&&(S.current=!0,y(function(){return w(this,function(e){switch(e.label){case 0:return[4,E({confirm:!0})];case 1:return e.sent(),[2]}})})())},[e.form,e.mode,E,v]),f().createElement(i.Form.Item,{name:"sql",label:n("SQL"),rules:[{required:!0},{validator:function(){return l&&!m?Promise.resolve():Promise.reject(Error(n("Please confirm the SQL statement first")))}}]},f().createElement(x,{editing:m,loading:O.loading,t:n,onValueChange:function(){u(!1),p(!0)},onConfirm:k,onEdit:function(){return p(!0)},onExecute:I}))}function M(e){var t=(0,o.useFlowContext)().t,n=I(),r=i.Form.useWatch("sources",e.form),a=(0,s.useMemo)(function(){return Array.isArray(r)?r:[]},[r]),l=(0,s.useMemo)(function(){var e,r=(e=n.data||[],e.filter(function(e){return e.name}).map(function(e){return{value:e.name,label:(0,d.h)(e.title||e.name,t)}})),o=a.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,a,t]);return f().createElement(i.Form.Item,{name:"sources",label:t("Source collections")},f().createElement(i.Select,{mode:"multiple",options:l,loading:n.loading,allowClear:!0}))}function q(e){var t=(0,o.useFlowContext)(),n=t.t,r=I(),a=t.dataSourceManager.collectionFieldInterfaceManager,l=t.dataSourceManager.getDataSource("main"),u=i.Form.useWatch(F,{form:e.form,preserve:!0}),c=(0,s.useMemo)(function(){return C(u)},[u]),m=i.Form.useWatch("sources",e.form),p=i.Form.useWatch("fields",e.form),y=(0,s.useMemo)(function(){return Array.isArray(m)?m:[]},[m]),S=(0,s.useMemo)(function(){return Array.isArray(p)?p:[]},[p]),w=(0,s.useMemo)(function(){var e,t,n,r,o;return n=(null==a||null==(e=a.getFieldInterfaceGroups)?void 0:e.call(a))||{},r=(null==a||null==(t=a.getFieldInterfaces)?void 0:t.call(a))||[],o=new Map,r.filter(function(e){return e.name&&"relation"!==e.group}).forEach(function(e){var t,n=String(e.group||"other"),r=o.get(n)||[];r.push({value:String(e.name),label:e.title||String(e.name),availableTypes:e.availableTypes,defaultType:null==(t=e.default)?void 0:t.type}),o.set(n,r)}),Array.from(o.entries()).sort(function(e,t){var r,o,a,i,l=b(e,1)[0],u=b(t,1)[0];return(null!=(r=null==(a=n[l])?void 0:a.order)?r:0)-(null!=(o=null==(i=n[u])?void 0:i.order)?o:0)}).map(function(e){var t,r=b(e,2),o=r[0],a=r[1];return{label:(null==(t=n[o])?void 0:t.label)||o,options:a}})},[a]),A=(0,s.useMemo)(function(){var e,t,o,a,i;return t=(e={collections:r.data||[],dataSource:l,sources:y,t:n}).collections,o=e.dataSource,a=e.sources,i=e.t,a.map(function(e){return t.find(function(t){return t.name===e})}).filter(Boolean).map(function(e){var t,n=e.name?null==o||null==(t=o.getCollection)?void 0:t.call(o,e.name):void 0,r="function"==typeof(null==n?void 0:n.getFields)?n.getFields():e.fields||[];return{value:e.name,label:(0,d.h)(e.title||(null==n?void 0:n.title)||e.name,i),children:r.map(k).filter(function(e){return e.name&&!O.has(String(e.type))}).map(function(e){var t,n;return{value:e.name,label:(0,d.h)((null==(t=(n=k(e)).uiSchema)?void 0:t.title)||n.title||n.name,i)}})}})},[r.data,l,y,n]),j=(0,s.useRef)();(0,s.useEffect)(function(){if(u&&j.current!==u){j.current=u;var t=P({currentFields:S,manager:a,preview:c});t.length&&e.form.setFieldValue("fields",t)}},[S,a,c,e.form,u]);var x=(0,s.useCallback)(function(t,n){var r=g(S);r.splice(t,1,h(v({},n),{source:E(n.source)})),e.form.setFieldValue("fields",r)},[S,e.form]);if(r.loading)return f().createElement(i.Spin,null);if(null==c?void 0:c.error)return f().createElement(f().Fragment,null,f().createElement(i.Form.Item,{name:"fields",hidden:!0,rules:[{required:!0}]},f().createElement(i.Input,null)),f().createElement(i.Form.Item,{label:n("Fields"),required:!0},f().createElement(i.Alert,{showIcon:!0,message:"".concat(n("SQL error: ")).concat(c.error),type:"error"})));if(!c&&!(null==S?void 0:S.length)||!(null==S?void 0:S.length))return f().createElement(f().Fragment,null,f().createElement(i.Form.Item,{name:"fields",hidden:!0,rules:[{required:!0}]},f().createElement(i.Input,null)),f().createElement(i.Form.Item,{label:n("Fields"),required:!0},f().createElement(i.Alert,{showIcon:!0,message:n("Please use a valid SELECT or WITH AS statement")})));var T=[{title:n("Field name"),dataIndex:"name",width:130},{title:n("Field source"),dataIndex:"source",width:220,render:function(e,t,o){return f().createElement(i.Cascader,{allowClear:!0,options:A,placeholder:n("Select field source"),value:"string"==typeof e?e.split("."):e,onChange:function(e){var n=function(e,t,n){if(null==t?void 0:t.length){var r,o,a=b(t,2),i=a[0],l=a[1],u=null==n||null==(r=n.getCollection)?void 0:r.call(n,i);return("function"==typeof(null==u?void 0:u.getFields)?u.getFields().map(k):(null==(o=e.find(function(e){return e.name===i}))?void 0:o.fields)||[]).find(function(e){return e.name===l})}}(r.data||[],e,l);x(o,h(v({},t),{source:e,interface:(null==n?void 0:n.interface)||t.interface,type:(null==n?void 0:n.type)||t.type,uiSchema:(null==n?void 0:n.uiSchema)||t.uiSchema}))}})}},{title:n("Field interface"),dataIndex:"interface",width:180,render:function(e,t,r){if(t.source){var o,l,u=null==a||null==(l=a.getFieldInterface)?void 0:l.call(a,e);return f().createElement(i.Tag,null,(0,d.h)((null==u?void 0:u.title)||e,n))}return f().createElement(i.Select,{allowClear:!0,popupMatchSelectWidth:!1,style:{width:"100%"},options:(o=t.type,w.map(function(e){return{label:e.label,options:e.options.filter(function(e){var t;return!o||(null==(t=e.availableTypes)?void 0:t.includes(o))||e.defaultType===o})}}).filter(function(e){return e.options.length})).map(function(e){return{label:(0,d.h)(e.label,n),options:e.options.map(function(e){return{value:e.value,label:(0,d.h)(e.label,n)}})}}),value:e||"input",onChange:function(e){var n,o,i,l,u,c,s=null==a||null==(n=a.getFieldInterface)?void 0:n.call(a,e);x(r,h(v({},t),{interface:e||null,type:(null==s||null==(o=s.default)?void 0:o.type)||t.type,uiSchema:h(v({},(null==s||null==(i=s.default)?void 0:i.uiSchema)||{}),{title:(null==s||null==(u=s.default)||null==(l=u.uiSchema)?void 0:l.title)||(null==(c=t.uiSchema)?void 0:c.title)})}))}})}},{title:n("Field display name"),dataIndex:["uiSchema","title"],width:180,render:function(e,t,n){var r;return f().createElement(i.Input,{value:(null==(r=t.uiSchema)?void 0:r.title)||t.name,onChange:function(e){x(n,h(v({},t),{uiSchema:h(v({},t.uiSchema||{}),{title:e.target.value})}))}})}}];return f().createElement(i.Form.Item,{label:n("Fields"),required:!0},f().createElement(i.Form.Item,{name:"fields",hidden:!0,rules:[{required:!0}]},f().createElement(i.Input,null)),f().createElement(i.Table,{bordered:!0,columns:T,dataSource:S,pagination:!1,rowKey:"name",scroll:{y:300},size:"small"}))}function _(e){var t=(0,o.useFlowContext)().t,n=i.Form.useWatch(F,{form:e.form,preserve:!0}),r=(0,s.useMemo)(function(){return C(n)},[n]),a=i.Form.useWatch("fields",e.form),l=(0,s.useMemo)(function(){return Array.isArray(a)?a:[]},[a]),u=(0,s.useMemo)(function(){return l.reduce(function(e,t){if(null==t?void 0:t.name){var n;e[t.name]=(null==(n=t.uiSchema)?void 0:n.title)||t.name}return e},{})},[l]),c=(0,s.useMemo)(function(){var e,t=l.map(function(e){return null==e?void 0:e.name}).filter(function(e){return!!e});return t.length?t:Object.keys((null==r||null==(e=r.data)?void 0:e[0])||{})},[l,null==r?void 0:r.data]),m=(0,s.useMemo)(function(){return c.map(function(e){return{title:(0,d.h)(u[e]||e,t),dataIndex:e,key:e}})},[c,t,u]),p=(0,s.useMemo)(function(){return((null==r?void 0:r.data)||[]).map(function(e,n){return h(v({},Object.entries(e).reduce(function(e,n){var r=b(n,2),o=r[0],a=r[1];return e[o]="string"==typeof a?(0,d.h)(a,t):a,e},{})),{key:n})})},[null==r?void 0:r.data,t]);return f().createElement(i.Form.Item,{label:t("Preview")},f().createElement(i.Table,{bordered:!0,columns:m,dataSource:p,pagination:!1,rowKey:"key",scroll:{x:Math.max(150*m.length,300),y:300}}))}function V(e){var t=v({},e);return delete t[F],Array.isArray(t.fields)&&(t.fields=t.fields.map(function(e){return h(v({},e),{source:E(e.source)})})),t}function D(){return F}},890:function(e,t,n){n.d(t,{A:function(){return er},v:function(){return en}});var r=n(485),o=n(155),a=n.n(o),i=n(143),l=n(978),u=n(694),c=n(625),s=n(59),f=n(773),d=n(938);function m(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,a,i){try{var l=e[a](i),u=l.value}catch(e){n(e);return}l.done?t(u):Promise.resolve(u).then(r,o)}function y(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,l,"next",e)}function l(e){p(a,r,o,i,l,"throw",e)}i(void 0)})}}function v(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function h(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){v(e,t,n[t])})}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 g(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var a=[],i=!0,l=!1;try{for(o=o.call(e);!(i=(n=o.next()).done)&&(a.push(n.value),!t||a.length!==t);i=!0);}catch(e){l=!0,r=e}finally{try{i||null==o.return||o.return()}finally{if(l)throw r}}return a}}(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 S(e){return function(e){if(Array.isArray(e))return m(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 m(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 m(e,t)}}function O(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),l=Object.defineProperty;return l(i,"next",{value:u(0)}),l(i,"throw",{value:u(1)}),l(i,"return",{value:u(2)}),"function"==typeof Symbol&&l(i,Symbol.iterator,{value:function(){return this}}),i;function u(l){return function(u){var c=[l,u];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&c[0]?r.return:c[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;switch(r=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],r=0}finally{n=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}var F=new Set(["hasOne","hasMany","belongsToMany"]),A="__viewUnsupportedFields";function j(e){var t=(0,f.get)(e,"data.data");return Array.isArray(t)?t:Array.isArray((0,f.get)(t,"data"))?(0,f.get)(t,"data"):[]}function C(e){var t=e||{};return t.rawTitle,function(e,t){if(null==e)return{};var n,r,o,a={};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)&&(a[r]=e[r]);return a}if(a=function(e,t){if(null==e)return{};var n,r,o={},a=Object.getOwnPropertyNames(e);for(r=0;r<a.length;r++)n=a[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)&&(a[r]=e[r]);return a}(t,["rawTitle"])}function E(e){return Array.isArray(e)?e.filter(Boolean):"string"==typeof e?e.split(".").filter(Boolean):[]}function k(e){var t=E(e);return t.length?t.join("."):null}function P(e){return(null==e?void 0:e.options)||e||{}}function I(){var e=(0,u.useFlowContext)();return(0,c.useRequest)(function(){return y(function(){return O(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,j(t.sent())]}})})()})}function x(e){var t=(0,u.useFlowContext)(),n=(0,i.kj)(),r=t.dataSourceManager.collectionFieldInterfaceManager,l=(0,o.useRef)(),m=g((0,o.useState)(!1),2),p=m[0],S=m[1],w=s.Form.useWatch("databaseView",e.form),F=s.Form.useWatch("schema",e.form),E=s.Form.useWatch("viewName",e.form),P=(0,o.useMemo)(function(){return w||(E?F?"".concat(F,"@").concat(E):E:void 0)},[w,F,E]),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]),x=(0,c.useRequest)(function(){return y(function(){return O(this,function(e){switch(e.label){case 0:return[4,t.api.resource("dbViews").list()];case 1:return[2,j(e.sent())]}})})()}),T=(0,o.useMemo)(function(){var e=(x.data||[]).map(function(e){return{value:e.schema?"".concat(e.schema,"@").concat(e.name):e.name,label:e.schema?"".concat(e.schema,".").concat((0,d.h)(e.name,n)):(0,d.h)(e.name,n)}});return P&&!e.some(function(e){return e.value===P})&&e.unshift({value:P,label:F?"".concat(F,".").concat((0,d.h)(E||P,n)):(0,d.h)(E||P,n)}),e},[P,n,x.data,F,E]),M=(0,o.useCallback)(function(n,r){return y(function(){var o,a,i,l;return O(this,function(u){switch(u.label){case 0:S(!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,s,d,m,p;return c=u.sent(),o={fields:(s=(0,f.get)(c,"data.data")||(0,f.get)(c,"data")||c||{}).fields,sources:s.sources,unsupportedFields:s.unsupportedFields},p=new Map(((m={currentFields:Array.isArray(a=e.form.getFieldValue("fields")||[])?a:[],fieldInterfacesByName:I,inferredFields:(d=o.fields)?(Array.isArray(d)?d:Object.values(d)).filter(Boolean):[]}).currentFields||[]).map(function(e){return[e.name,e]})),i=m.inferredFields.map(function(e){var t,n,r,o=p.get(e.name)||e,a=m.fieldInterfacesByName[o.interface||e.interface||""],i=(null==a||null==(t=a.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=b(h({},C(i),C(o.uiSchema||e.uiSchema)),{title:l});return e.source?b(h({},e),{interface:e.interface||o.interface,type:e.type||o.type,uiSchema:u}):b(h({},e,o),{uiSchema:u})}),l=Array.isArray(o.sources)?o.sources:[],e.form.setFieldsValue(v({fields:i.map(function(e){return b(h({},e),{source:k(e.source)})}),sources:l},A,Array.isArray(o.unsupportedFields)?o.unsupportedFields:[])),[3,4];case 3:return S(!1),[7];case 4:return[2]}})})()},[t.api,I,e.form]),q=(0,o.useCallback)(function(t){var n=function(e){if(!e)return{schema:null,viewName:null};var t=g(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(v({databaseView:t,schema:r,viewName:o,fields:[],sources:[]},A,[])),o){var a=e.form.getFieldValue("name");(!e.form.isFieldTouched("name")||a===l.current||/^t_[A-Za-z0-9]+$/.test(a))&&(l.current=o,e.form.setFieldValue("name",o)),M(o,r)}},[M,e.form]);return(0,o.useEffect)(function(){!w&&P&&e.form.setFieldValue("databaseView",P)},[P,e.form,w]),a().createElement(s.Spin,{spinning:p},a().createElement(s.Form.Item,{name:"databaseView",label:n("Connect to database view"),rules:[{required:!0,message:n("Please select a database view")}]},a().createElement(s.Select,{allowClear:!0,loading:x.loading,options:T,showSearch:!0,optionFilterProp:"label",disabled:"edit"===e.mode,onChange:q})),a().createElement(s.Form.Item,{name:"schema",hidden:!0},a().createElement(s.Input,null)),a().createElement(s.Form.Item,{name:"viewName",hidden:!0,rules:[{required:!0}]},a().createElement(s.Input,null)))}function T(e){var t=(0,i.kj)(),n=I(),r=s.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,d.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 S(r).concat(S(o))},[n.data,l,t]);return a().createElement(s.Form.Item,{name:"sources",label:t("Source collections")},a().createElement(s.Select,{mode:"multiple",options:u,loading:n.loading,disabled:!0,allowClear:!0}))}function M(e){var t=(0,u.useFlowContext)(),n=(0,i.kj)(),r=I(),l=t.dataSourceManager.collectionFieldInterfaceManager,c=t.dataSourceManager.getDataSource("main"),f=s.Form.useWatch("fields",e.form),m=s.Form.useWatch("sources",e.form),p=s.Form.useWatch(A,{form:e.form,preserve:!0}),y=(0,o.useMemo)(function(){return Array.isArray(f)?f:[]},[f]),v=(0,o.useMemo)(function(){return Array.isArray(m)?m:[]},[m]),w=(0,o.useMemo)(function(){var e,t,n,r,o;return n=(null==l||null==(e=l.getFieldInterfaceGroups)?void 0:e.call(l))||{},r=(null==l||null==(t=l.getFieldInterfaces)?void 0:t.call(l))||[],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,a,i,l=g(e,1)[0],u=g(t,1)[0];return(null!=(r=null==(a=n[l])?void 0:a.order)?r:0)-(null!=(o=null==(i=n[u])?void 0:i.order)?o:0)}).map(function(e){var t,r=g(e,2),o=r[0],a=r[1];return{label:(null==(t=n[o])?void 0:t.label)||o,options:a}})},[l]),O=(0,o.useMemo)(function(){return v.map(function(e){return(r.data||[]).find(function(t){return t.name===e})}).filter(Boolean).map(function(e){var t,r=null==c||null==(t=c.getCollection)?void 0:t.call(c,e.name),o="function"==typeof(null==r?void 0:r.getFields)?r.getFields():e.fields||[];return{value:e.name,label:(0,d.h)(e.title||(null==r?void 0:r.title)||e.name,n),children:o.map(P).filter(function(e){return e.name&&!F.has(String(e.type))}).map(function(e){var t,r;return{value:e.name,label:(0,d.h)((null==(t=(r=P(e)).uiSchema)?void 0:t.title)||r.title||r.name,n)}})}})},[r.data,c,v,n]),j=(0,o.useCallback)(function(t,n){var r=S(y);r.splice(t,1,b(h({},n),{source:k(n.source)})),e.form.setFieldValue("fields",r)},[y,e.form]),x=[{title:n("Field name"),dataIndex:"name",width:130},{title:n("Field source"),dataIndex:"source",width:220,render:function(e,t,o){return a().createElement(s.Cascader,{allowClear:!0,options:O,placeholder:n("Select field source"),value:E(e),onChange:function(e){var n,a,i,l=(e||[]).map(String),u=(r.data||[]).find(function(e){return e.name===l[0]}),s=l[0]?null==c||null==(n=c.getCollection)?void 0:n.call(c,l[0]):void 0,f=("function"==typeof(null==s?void 0:s.getFields)?s.getFields().map(P):(null==u?void 0:u.fields)||[]).find(function(e){return e.name===l[1]});j(o,b(h({},t),{source:l,interface:(null==f?void 0:f.interface)||t.interface,type:(null==f?void 0:f.type)||t.type,uiSchema:b(h({},t.uiSchema,null==f?void 0:f.uiSchema),{title:(null==f||null==(a=f.uiSchema)?void 0:a.title)||(null==(i=t.uiSchema)?void 0:i.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)?a().createElement(s.Select,{value:e,style:{width:"100%"},popupMatchSelectWidth:!1,options:t.possibleTypes.map(function(e){return{label:e,value:e}}),onChange:function(e){return j(n,b(h({},t),{type:e}))}}):a().createElement(s.Tag,null,e)}},{title:n("Field interface"),dataIndex:"interface",width:180,render:function(e,t,r){if(t.source){var o,i=null==l||null==(o=l.getFieldInterface)?void 0:o.call(l,e);return a().createElement(s.Tag,null,(0,d.h)((null==i?void 0:i.title)||e,n))}return a().createElement(s.Select,{allowClear:!0,popupMatchSelectWidth:!1,style:{width:"100%"},options:w.map(function(e){return{label:(0,d.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,d.h)(e.label,n)}})}}),value:e||void 0,onChange:function(e){var n,o,a,i,u,c,s=null==l||null==(n=l.getFieldInterface)?void 0:n.call(l,e);j(r,b(h({},t),{interface:e||null,type:(null==s||null==(o=s.default)?void 0:o.type)||t.type,uiSchema:b(h({},null==s||null==(a=s.default)?void 0:a.uiSchema),{title:(null==s||null==(u=s.default)||null==(i=u.uiSchema)?void 0:i.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 a().createElement(s.Input,{value:(null==(r=t.uiSchema)?void 0:r.title)||t.name,onChange:function(e){j(n,b(h({},t),{uiSchema:b(h({},C(t.uiSchema)),{title:e.target.value})}))}})}}];return r.loading?a().createElement(s.Spin,null):a().createElement(a().Fragment,null,a().createElement(s.Form.Item,{name:"fields",hidden:!0,rules:[{required:!0}]},a().createElement(s.Input,null)),y.length?a().createElement(s.Form.Item,{label:n("Fields"),required:!0,extra:n("Fields can only be used correctly if they are defined with an interface.")},a().createElement(s.Table,{bordered:!0,columns:x,dataSource:y,pagination:!1,rowKey:"name",scroll:{y:300}})):a().createElement(s.Form.Item,{label:n("Fields"),required:!0},a().createElement(s.Alert,{showIcon:!0,message:n("Please select a database view")})),(null==p?void 0:p.length)?a().createElement(s.Alert,{showIcon:!0,type:"warning",message:n("Unsupported fields"),description:p.map(function(e){return e.name}).join(", "),style:{marginBottom:24}}):null)}function q(e){var t=(0,u.useFlowContext)(),n=(0,i.kj)(),r=s.Form.useWatch("viewName",e.form),l=s.Form.useWatch("schema",e.form),c=s.Form.useWatch("fields",e.form),f=(0,o.useMemo)(function(){return Array.isArray(c)?c:[]},[c]),m=g((0,o.useState)(!1),2),p=m[0],v=m[1],h=g((0,o.useState)([]),2),b=h[0],S=h[1],w=(0,o.useMemo)(function(){var e=["lineString","point","circle","polygon"];return JSON.stringify(f.reduce(function(t,n){return n.type&&e.includes(n.type)&&(t[n.name]=n.type),t},{}))},[f]),F=(0,o.useMemo)(function(){return f.filter(function(e){return e.source||e.interface}).map(function(e){var t;return{title:(0,d.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)}}})},[f,n]);return(0,o.useEffect)(function(){if(!r||!f.length)return void S([]);var e=!1;return y(function(){var n;return O(this,function(o){switch(o.label){case 0:v(!0),o.label=1;case 1:return o.trys.push([1,,3,4]),[4,t.api.resource("dbViews").query({filterByTk:r,schema:l||void 0,fieldTypes:JSON.parse(w)})];case 2:return n=o.sent(),e||S(j(n)),[3,4];case 3:return e||v(!1),[7];case 4:return[2]}})})(),function(){e=!0}},[t.api,w,f.length,l,r]),a().createElement(s.Form.Item,{label:n("Preview")},a().createElement(s.Spin,{spinning:p},a().createElement(s.Table,{bordered:!0,columns:F,dataSource:b,pagination:!1,rowKey:function(e,t){return String(null!=t?t:0)},scroll:{x:1e3,y:300}})))}function _(e){var t=h({},e);return delete t[A],Array.isArray(t.fields)&&(t.fields=t.fields.map(function(e){return b(h({},e),{source:k(e.source)})})),t}var V=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,a,i){try{var l=e[a](i),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 a=e.apply(t,n);function i(e){B(a,r,o,i,l,"next",e)}function l(e){B(a,r,o,i,l,"throw",e)}i(void 0)})}}function R(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}function K(e,t,n){return(K=Z()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&Q(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 L(e,t,n){return t&&W(e.prototype,t),n&&W(e,n),e}function U(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function $(e){return($=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function G(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){U(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 Q(e,t){return(Q=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 H(e){var t="function"==typeof Map?new Map:void 0;return(H=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return K(e,arguments,$(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),Q(n,e)})(e)}function Z(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(Z=function(){return!!e})()}function X(e,t){var n,r,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),l=Object.defineProperty;return l(i,"next",{value:u(0)}),l(i,"throw",{value:u(1)}),l(i,"return",{value:u(2)}),"function"==typeof Symbol&&l(i,Symbol.iterator,{value:function(){return this}}),i;function u(l){return function(u){var c=[l,u];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&c[0]?r.return:c[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;switch(r=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],r=0}finally{n=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}var Y=function(){function e(){R(this,e),U(this,"templates",new Map)}return L(e,[{key:"register",value:function(e,t){var n="string"==typeof e?J(G({},t),{name:(null==t?void 0:t.name)||e}):e;(null==n?void 0:n.name)&&this.templates.set(n.name,J(G({},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}(),ee=function(){function e(){R(this,e),U(this,"fields",new Map)}return L(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(G({},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}(),et=function(){function e(){R(this,e),U(this,"managerActions",[])}return L(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}(),en=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=$(n),U(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,Z()?Reflect.construct(n,r||[],$(this).constructor):n.apply(this,r)),"types",new Map),U(e,"extensionManager",new et),U(e,"collectionTemplateRegistry",new Y),U(e,"collectionPresetFieldRegistry",new ee),e}return t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&Q(t,e),L(t,[{key:"load",value:function(){return N(function(){var e;return X(this,function(t){return e=this,this.registerBuiltInCollectionPresetFields(),this.registerBuiltInCollectionTemplates(),this.dataSourceManager.registerLoader("*",function(){return N(function(){var e,t,n;return X(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,V.b)(this.dataSourceManager,n),[2,{dataSources:n}]}})}).call(e)}),this.pluginSettingsManager.addMenuItem({key:i.CU,title:this.t("Data sources"),icon:"ClusterOutlined",isPinned:!0,sort:100,showTabs:!1,aclSnippet:"pm.data-source-manager*"}),this.pluginSettingsManager.addPageTabItem({menuKey:i.CU,key:"index",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:i.CU,key:"collections",title:this.t("Collections"),componentLoader:function(){return n.e("167").then(n.bind(n,442))},sort:2,aclSnippet:"pm.data-source-manager"}),this.pluginSettingsManager.addPageTabItem({menuKey:i.CU,key:"collections/:dataSourceKey",title:this.t("Collections"),componentLoader:function(){return n.e("167").then(n.bind(n,442))},hidden:!0,sort:3,aclSnippet:"pm.data-source-manager"}),[2]})}).call(this)}},{key:"registerType",value:function(e,t){this.types.set(e,J(G({},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:"tree",title:'{{t("Tree collection")}}',order:30,color:"blue",collection:{options:{template:"tree",tree:"adjacencyList"},fields:[{interface:"integer",name:"parentId",type:"bigInt",title:'{{t("Parent ID")}}',isForeignKey:!0,uiSchema:{"x-read-pretty":!0}},{interface:"m2o",type:"belongsTo",name:"parent",title:'{{t("Parent")}}',foreignKey:"parentId",treeParent:!0,onDelete:"CASCADE",componentProps:{multiple:!1,fieldNames:{label:"id",value:"id"}}},{interface:"o2m",type:"hasMany",name:"children",title:'{{t("Children")}}',foreignKey:"parentId",treeChildren:!0,onDelete:"CASCADE",componentProps:{multiple:!0,fieldNames:{label:"id",value:"id"}}}]},presetFields:{disabledIncludes:["id"]},configure:{transformSubmitValues:function(e){if(Array.isArray(e.fields)){e.fields=e.fields.map(function(t){return!t.target&&["belongsToMany","belongsTo","hasMany","hasOne"].includes(t.type)?J(G({},t),{target:e.name}):t});var t=e.fields.find(function(e){return e.primaryKey}),n=e.fields.find(function(e){return"parentId"===e.name&&e.isForeignKey});if(t&&n){var r,o=null==(r=n.uiSchema)?void 0:r.title;n.interface=t.interface,n.type=t.type,n.uiSchema=structuredClone(t.uiSchema||{}),n.uiSchema.title=o,n.autoFill=!1}}}}}),this.registerCollectionTemplate({name:"sql",title:'{{t("SQL collection")}}',order:40,color:"yellow",divider:!0,collection:{options:{template:"sql"},fields:[]},capabilities:{recordUniqueKey:!0},configure:{items:[{name:"sql",Component:l.FL,required:!0},{name:"sources",Component:l.uT},{name:"fields",Component:l.J6,required:!0},{name:"preview",Component:l.eA}],transformSubmitValues:l.k_}}),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:x,required:!0},{name:"sources",Component:T},{name:"fields",Component:M,required:!0,hidden:function(e){return"edit"===e.mode}},{name:"preview",Component:q,hidden:function(e){return"edit"===e.mode}},{name:"writableView",label:'{{t("Allow add new, update and delete actions")}}',component:"Checkbox"}],transformSubmitValues:_}})}}]),t}(H(r.Plugin)),er=en},143:function(e,t,n){n.d(t,{CU:function(){return o},kj:function(){return a}});var r=n(694),o=JSON.parse('{"UU":"@nocobase/plugin-data-source-manager"}').UU;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 a}});var r=n(694);function o(e,t){e&&t.forEach(function(t){var n,o,a,i,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==(a=e.getDataSource(t.key))||a.patchOptions(l):e.addDataSource(l),Array.isArray(t.collections)&&(null==(i=e.getDataSource(t.key))||i.setCollections(t.collections,{clearFields:!0}))})}function a(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 i},h:function(){return a}});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 a(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 i(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"-",r=a(e,t);return null==r||""===r?n:"string"==typeof r||"number"==typeof r||"boolean"==typeof r?String(r):n}},375:function(e){e.exports=t},799:function(e){e.exports=n},428:function(e){e.exports=i},485:function(e){e.exports=a},694:function(e){e.exports=r},768:function(e){e.exports=s},625:function(e){e.exports=o},59:function(e){e.exports=c},185:function(e){e.exports=l},773:function(e){e.exports=f},155:function(e){e.exports=u},61:function(t){t.exports=e}},b={};function g(e){var t=b[e];if(void 0!==t)return t.exports;var n=b[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:"c72713810e2d0526",426:"3cd9f994a3145829"})[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)},S={},g.l=function(e,t,n,r){if(S[e])return void S[e].push(t);if(void 0!==n)for(var o,a,i=document.getElementsByTagName("script"),l=0;l<i.length;l++){var u=i[l];if(u.getAttribute("src")==e||u.getAttribute("data-rspack")=="@nocobase/plugin-data-source-manager/client-v2:"+n){o=u;break}}o||(a=!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),S[e]=[t];var c=function(t,n){o.onerror=o.onload=null,clearTimeout(s);var r=S[e];if(delete S[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),a&&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&&(w=g.g.location+"");var S,w,O=g.g.document;if(!w&&O&&(O.currentScript&&"SCRIPT"===O.currentScript.tagName.toUpperCase()&&(w=O.currentScript.src),!w)){var F=O.getElementsByTagName("script");if(F.length)for(var A=F.length-1;A>-1&&(!w||!/^http(s?):/.test(w));)w=F[A--].src}if(!w)throw Error("Automatic publicPath is not supported in this browser");g.p=w.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),a=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;a.message="Loading chunk "+e+" failed.\n("+r+": "+o+")",a.name="ChunkLoadError",a.type=r,a.request=o,n[1](a)}},"chunk-"+e,e)}},m=function(e,t){var n,r,o=t[0],a=t[1],i=t[2],l=0;if(o.some(function(e){return 0!==d[e]})){for(n in a)g.o(a,n)&&(g.m[n]=a[n]);i&&i(g)}for(e&&e(t);l<o.length;l++)r=o[l],g.o(d,r)&&d[r]&&d[r][0](),d[r]=0},(p=self.webpackChunk_nocobase_plugin_data_source_manager_client_v2=self.webpackChunk_nocobase_plugin_data_source_manager_client_v2||[]).forEach(m.bind(null,0)),p.push=m.bind(null,p.push.bind(p));var j={};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(j),g.d(j,{PluginDataSourceManagerClientV2:function(){return y.v},compileLegacyTemplate:function(){return v.h},compileLegacyTemplateText:function(){return v.A},default:function(){return y.A}}),y=g(890),v=g(938),j}()});
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}()});
@@ -7,5 +7,6 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
  export declare const NAMESPACE: string;
10
+ export declare const DATA_SOURCE_MANAGER_SETTINGS_KEY = "data-source-manager";
10
11
  export declare function tExpr(key: string): string;
11
- 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;
@@ -15,12 +15,45 @@ export interface DataSourceSettingsFormProps {
15
15
  initialValues?: Record<string, any>;
16
16
  loadCollections: (key: string) => Promise<any>;
17
17
  }
18
+ export interface DataSourceCollectionActionProps {
19
+ dataSourceKey: string;
20
+ record?: Record<string, any>;
21
+ selectedRowKeys?: React.Key[];
22
+ onSubmitted?: () => void;
23
+ children?: React.ReactNode;
24
+ isBulk?: boolean;
25
+ }
26
+ export interface DataSourceFieldInterfaceFilterOptions {
27
+ groups?: string[];
28
+ include?: string[];
29
+ exclude?: string[];
30
+ }
31
+ export interface DataSourceFieldInterfaceReadOnlyContext {
32
+ collection: Record<string, unknown>;
33
+ field: Record<string, unknown>;
34
+ fieldInterface?: {
35
+ name?: string;
36
+ group?: string;
37
+ isAssociation?: boolean;
38
+ };
39
+ }
18
40
  export interface DataSourceTypeOptions {
19
41
  name?: string;
20
42
  label?: React.ReactNode;
21
43
  defaultValues?: Record<string, any>;
44
+ createFieldInterfaces?: DataSourceFieldInterfaceFilterOptions | ((context: {
45
+ collection: Record<string, any>;
46
+ }) => DataSourceFieldInterfaceFilterOptions | undefined);
22
47
  disableAddFields?: boolean;
48
+ disableConfigureFields?: boolean;
23
49
  disableTestConnection?: boolean;
50
+ AddCollection?: ComponentType<DataSourceCollectionActionProps>;
51
+ EditCollection?: ComponentType<DataSourceCollectionActionProps>;
52
+ DeleteCollection?: ComponentType<DataSourceCollectionActionProps>;
53
+ allowCollectionCreate?: boolean;
54
+ allowCollectionDeletion?: boolean;
55
+ isFieldInterfaceReadOnly?: (context: DataSourceFieldInterfaceReadOnlyContext) => boolean | undefined;
56
+ normalizeValues?: (values: Record<string, any>) => Record<string, any>;
24
57
  SettingsForm?: ComponentType<DataSourceSettingsFormProps>;
25
58
  }
26
59
  export interface CollectionPresetFieldOptions {
@@ -46,6 +79,18 @@ export interface CollectionTemplateFormProps {
46
79
  export interface CollectionTemplateConfigureItemProps extends CollectionTemplateFormProps {
47
80
  item: CollectionTemplateConfigureItem;
48
81
  }
82
+ export interface CollectionTemplateSyncFieldsProps {
83
+ collection: Record<string, any>;
84
+ dataSourceKey: string;
85
+ onSubmitted: () => void;
86
+ }
87
+ export interface CollectionTemplateSyncFieldsOptions {
88
+ Component?: ComponentType<CollectionTemplateSyncFieldsProps>;
89
+ visible?: boolean | ((props: {
90
+ collection: Record<string, any>;
91
+ dataSourceKey: string;
92
+ }) => boolean);
93
+ }
49
94
  export interface CollectionTemplateConfigureItem {
50
95
  name?: string;
51
96
  label?: React.ReactNode;
@@ -77,6 +122,7 @@ export interface CollectionTemplateOptions {
77
122
  configure?: {
78
123
  items?: CollectionTemplateConfigureItem[];
79
124
  Form?: ComponentType<CollectionTemplateFormProps>;
125
+ syncFields?: CollectionTemplateSyncFieldsOptions;
80
126
  transformSubmitValues?: (values: Record<string, any>) => Record<string, any> | void;
81
127
  };
82
128
  fieldInterfaces?: {
@@ -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-alpha.45",
11
+ "@nocobase/client": "2.1.0-alpha.46",
12
12
  "react": "18.2.0",
13
- "@nocobase/plugin-acl": "2.1.0-alpha.45",
14
- "@nocobase/utils": "2.1.0-alpha.45",
15
- "@nocobase/flow-engine": "2.1.0-alpha.45",
16
- "@nocobase/client-v2": "2.1.0-alpha.45",
17
- "@nocobase/ai": "2.1.0-alpha.45",
18
- "@nocobase/server": "2.1.0-alpha.45",
19
- "@nocobase/data-source-manager": "2.1.0-alpha.45",
13
+ "@nocobase/plugin-acl": "2.1.0-alpha.46",
14
+ "@nocobase/utils": "2.1.0-alpha.46",
15
+ "@nocobase/flow-engine": "2.1.0-alpha.46",
16
+ "@nocobase/client-v2": "2.1.0-alpha.46",
17
+ "@nocobase/ai": "2.1.0-alpha.46",
18
+ "@nocobase/server": "2.1.0-alpha.46",
19
+ "@nocobase/data-source-manager": "2.1.0-alpha.46",
20
20
  "lodash": "4.18.1",
21
- "@nocobase/acl": "2.1.0-alpha.45",
22
- "@nocobase/database": "2.1.0-alpha.45",
21
+ "@nocobase/acl": "2.1.0-alpha.46",
22
+ "@nocobase/database": "2.1.0-alpha.46",
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-alpha.45",
31
+ "@nocobase/actions": "2.1.0-alpha.46",
32
32
  "sequelize": "6.35.2",
33
- "@nocobase/test": "2.1.0-alpha.45",
33
+ "@nocobase/test": "2.1.0-alpha.46",
34
34
  "@formily/antd-v5": "1.2.3",
35
35
  "@formily/core": "2.3.7",
36
36
  "@formily/reactive": "2.3.7",
@@ -24,6 +24,7 @@
24
24
  "Category name": "Category name",
25
25
  "Color": "Color",
26
26
  "Collection category": "Collection category",
27
+ "Configure": "Configure",
27
28
  "Configure fields": "Configure fields",
28
29
  "Collections": "Collections",
29
30
  "Comparison": "Comparison",
@@ -44,6 +45,7 @@
44
45
  "Data source display name": "Data source display name",
45
46
  "Data source manager": "Data source manager",
46
47
  "Data source name": "Data source name",
48
+ "Data source synchronization failed": "Data source synchronization failed",
47
49
  "Data source synchronization in progress": "Data source synchronization in progress",
48
50
  "Data source synchronization successful": "Data source synchronization successful",
49
51
  "Data sources": "Data sources",
@@ -24,6 +24,7 @@
24
24
  "Category name": "分类名称",
25
25
  "Color": "颜色",
26
26
  "Collection category": "数据表类别",
27
+ "Configure": "配置",
27
28
  "Configure fields": "配置字段",
28
29
  "Collections": "数据表",
29
30
  "Comparison": "比较",
@@ -44,6 +45,7 @@
44
45
  "Data source display name": "数据源名称",
45
46
  "Data source manager": "数据源管理",
46
47
  "Data source name": "数据源标识",
48
+ "Data source synchronization failed": "数据源同步失败",
47
49
  "Data source synchronization in progress": "数据源同步中",
48
50
  "Data source synchronization successful": "数据源同步成功",
49
51
  "Data sources": "数据源",
@@ -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-05-29T12:50:07.759Z"}
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-04T11:30:13.387Z"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nocobase/plugin-data-source-manager",
3
- "version": "2.1.0-alpha.45",
3
+ "version": "2.1.0-alpha.46",
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": "e9e24987e12d0ad10a5db8815b1e1b7b447f1938",
25
+ "gitHead": "42b269944cdd1908d7a848c0af4936fe94c03bb7",
26
26
  "license": "Apache-2.0"
27
27
  }