@nocobase/plugin-data-source-manager 2.1.0-alpha.2 → 2.1.0-alpha.20

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.
Files changed (58) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +79 -10
  3. package/dist/ai/ai-employees/orin/index.d.ts +10 -0
  4. package/dist/ai/ai-employees/orin/index.js +58 -0
  5. package/dist/ai/ai-employees/orin/skills/data-modeling/SKILLS.md +245 -0
  6. package/dist/ai/{tools → ai-employees/orin/skills/data-modeling/tools}/defineCollections.js +47 -1
  7. package/dist/ai/{tools → ai-employees/orin/skills/data-modeling/tools}/intentRouter.js +1 -1
  8. package/dist/ai/{tools/data-query → common}/common.js +63 -11
  9. package/dist/ai/{tools/data-query → common}/utils.d.ts +1 -0
  10. package/dist/ai/{tools/data-query → common}/utils.js +15 -0
  11. package/dist/ai/skills/data-metadata/SKILLS.md +108 -0
  12. package/dist/ai/{tools → skills/data-metadata/tools}/getCollectionMetadata.js +2 -2
  13. package/dist/ai/{tools → skills/data-metadata/tools}/getCollectionNames.js +2 -2
  14. package/dist/ai/{tools → skills/data-metadata/tools}/getDataSources.js +2 -2
  15. package/dist/ai/{tools → skills/data-metadata/tools}/searchFieldMetadata.js +2 -2
  16. package/dist/ai/skills/data-query/SKILLS.md +222 -0
  17. package/dist/ai/skills/data-query/tools/dataQuery.js +282 -0
  18. package/dist/ai/{tools/data-query → skills/data-query/tools}/dataSourceCounting.js +12 -4
  19. package/dist/ai/skills/data-query/tools/dataSourceQuery.d.ts +10 -0
  20. package/dist/ai/{tools/data-query → skills/data-query/tools}/dataSourceQuery.js +12 -5
  21. package/dist/client/271.b3c0013cf976adf0.js +10 -0
  22. package/dist/client/369.6025f2112454fab1.js +10 -0
  23. package/dist/client/397.c8c6659cf3f7ac1c.js +10 -0
  24. package/dist/client/416.197712b8b93033c5.js +10 -0
  25. package/dist/client/420.0c3e3c9888e0ba31.js +10 -0
  26. package/dist/client/603.d6022bceb934f5b0.js +10 -0
  27. package/dist/client/644.b98e4b39058e9c32.js +10 -0
  28. package/dist/client/936.d5ab7aecb4eb6004.js +10 -0
  29. package/dist/client/index.js +1 -1
  30. package/dist/externalVersion.js +12 -12
  31. package/dist/locale/en-US.json +11 -3
  32. package/dist/locale/zh-CN.json +11 -3
  33. package/dist/node_modules/zod/package.json +1 -1
  34. package/dist/server/mcp-post-processors.d.ts +24 -0
  35. package/dist/server/mcp-post-processors.js +158 -0
  36. package/dist/server/models/data-source.js +3 -13
  37. package/dist/server/plugin.js +2 -0
  38. package/dist/swagger/index.d.ts +122 -0
  39. package/dist/swagger/index.js +146 -0
  40. package/package.json +3 -2
  41. package/LICENSE.txt +0 -172
  42. package/dist/client/1a8cce8035a89dd9.js +0 -10
  43. package/dist/client/276bcf3de74bebd1.js +0 -10
  44. package/dist/client/2f7a418e7935984d.js +0 -10
  45. package/dist/client/689d3bec33ad2ec3.js +0 -10
  46. package/dist/client/d33eb40009bd7ec6.js +0 -10
  47. package/dist/client/dbf5ddf434ab29c0.js +0 -10
  48. package/dist/client/f528b165e77e3608.js +0 -10
  49. package/dist/client/fdae18574fda07af.js +0 -10
  50. /package/dist/ai/{tools → ai-employees/orin/skills/data-modeling/tools}/defineCollections.d.ts +0 -0
  51. /package/dist/ai/{tools → ai-employees/orin/skills/data-modeling/tools}/intentRouter.d.ts +0 -0
  52. /package/dist/ai/{tools/data-query → common}/common.d.ts +0 -0
  53. /package/dist/ai/{tools → skills/data-metadata/tools}/getCollectionMetadata.d.ts +0 -0
  54. /package/dist/ai/{tools → skills/data-metadata/tools}/getCollectionNames.d.ts +0 -0
  55. /package/dist/ai/{tools → skills/data-metadata/tools}/getDataSources.d.ts +0 -0
  56. /package/dist/ai/{tools → skills/data-metadata/tools}/searchFieldMetadata.d.ts +0 -0
  57. /package/dist/ai/{tools/data-query/dataSourceCounting.d.ts → skills/data-query/tools/dataQuery.d.ts} +0 -0
  58. /package/dist/ai/{tools/data-query/dataSourceQuery.d.ts → skills/data-query/tools/dataSourceCounting.d.ts} +0 -0
@@ -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("@formily/core"),require("@formily/antd-v5"),require("react"),require("@nocobase/flow-engine"),require("@emotion/css"),require("lodash"),require("@nocobase/plugin-acl/client"),require("@formily/shared"),require("@nocobase/client"),require("react-router-dom"),require("@dnd-kit/core"),require("@formily/reactive"),require("@formily/react"),require("@nocobase/utils/client"),require("@ant-design/icons"),require("antd-style"),require("antd"),require("react-i18next")):"function"==typeof define&&define.amd?define("@nocobase/plugin-data-source-manager",["@formily/core","@formily/antd-v5","react","@nocobase/flow-engine","@emotion/css","lodash","@nocobase/plugin-acl/client","@formily/shared","@nocobase/client","react-router-dom","@dnd-kit/core","@formily/reactive","@formily/react","@nocobase/utils/client","@ant-design/icons","antd-style","antd","react-i18next"],t):"object"==typeof exports?exports["@nocobase/plugin-data-source-manager"]=t(require("@formily/core"),require("@formily/antd-v5"),require("react"),require("@nocobase/flow-engine"),require("@emotion/css"),require("lodash"),require("@nocobase/plugin-acl/client"),require("@formily/shared"),require("@nocobase/client"),require("react-router-dom"),require("@dnd-kit/core"),require("@formily/reactive"),require("@formily/react"),require("@nocobase/utils/client"),require("@ant-design/icons"),require("antd-style"),require("antd"),require("react-i18next")):e["@nocobase/plugin-data-source-manager"]=t(e["@formily/core"],e["@formily/antd-v5"],e.react,e["@nocobase/flow-engine"],e["@emotion/css"],e.lodash,e["@nocobase/plugin-acl/client"],e["@formily/shared"],e["@nocobase/client"],e["react-router-dom"],e["@dnd-kit/core"],e["@formily/reactive"],e["@formily/react"],e["@nocobase/utils/client"],e["@ant-design/icons"],e["antd-style"],e.antd,e["react-i18next"])}(self,function(e,t,n,r,o,i,a,c,u,s,l,f,p,d,b,y,m,g){return function(){var h,v,w,_,O,P,S={329:function(e,t,n){"use strict";n.r(t),n.d(t,{PluginDataSourceManagerClient:function(){return A}});var r=n(772),o=n(465),i=n.n(o),a=n(584),c=n(156),u=n.n(c),s=n(347),l=n(551),f=n(581);function p(e,t,n,r,o,i,a){try{var c=e[i](a),u=c.value}catch(e){n(e);return}c.done?t(u):Promise.resolve(u).then(r,o)}function d(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,c,"next",e)}function c(e){p(i,r,o,a,c,"throw",e)}a(void 0)})}}function b(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}function y(e,t,n){return(y=O()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&w(o,n.prototype),o}).apply(null,arguments)}function m(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function g(e,t,n){return t&&m(e.prototype,t),n&&m(e,n),e}function h(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function v(e){return(v=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function w(e,t){return(w=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function _(e){var t="function"==typeof Map?new Map:void 0;return(_=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 y(e,arguments,v(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),w(n,e)})(e)}function O(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(O=function(){return!!e})()}function P(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:c(0),throw:c(1),return:c(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function c(i){return function(c){var u=[i,c];if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&u[0]?r.return:u[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,u[1])).done)return o;switch(r=0,o&&(u=[2&u[0],o.value]),u[0]){case 0:case 1:o=u;break;case 4:return a.label++,{value:u[1],done:!1};case 5:a.label++,r=u[1],u=[0];continue;case 7:u=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===u[0]||2===u[0])){a=0;continue}if(3===u[0]&&(!o||u[1]>o[0]&&u[1]<o[3])){a.label=u[1];break}if(6===u[0]&&a.label<o[1]){a.label=o[1],o=u;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(u);break}o[2]&&a.ops.pop(),a.trys.pop();continue}u=t.call(e,a)}catch(e){u=[6,e],r=0}finally{n=o=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}}var S=(0,r.lazy)(function(){return f("imported_174m4o3_component",n.e("236").then(n.bind(n,612)))},"DatabaseConnectionProvider").DatabaseConnectionProvider,x=(0,r.lazy)(function(){return f("imported_-1bdhn46_component",Promise.all([n.e("236"),n.e("65")]).then(n.bind(n,130)))},"BreadcumbTitle").BreadcumbTitle,k=(0,r.lazy)(function(){return f("imported_l1a36j_component",Promise.all([n.e("236"),n.e("398"),n.e("10")]).then(n.bind(n,645)))},"CollectionManagerPage").CollectionManagerPage,j=(0,r.lazy)(function(){return f("imported_k8ts4l_component",Promise.all([n.e("236"),n.e("296")]).then(n.bind(n,919)))},"DatabaseConnectionManagerPane").DatabaseConnectionManagerPane,q=(0,r.lazy)(function(){return f("imported_1cub3nb_component",Promise.all([n.e("236"),n.e("398"),n.e("843")]).then(n.bind(n,439)))},"MainDataSourceManager").MainDataSourceManager,C=(0,r.lazy)(function(){return f("imported_-1b29440_component",n.e("674").then(n.bind(n,937)))},"DataSourcePermissionManager").DataSourcePermissionManager,M=(0,r.lazy)(function(){return f("imported_cef22q_component",n.e("746").then(n.bind(n,93)))},"CollectionMainProvider").CollectionMainProvider,T=function(){function e(t){b(this,e),h(this,"plugin",void 0),h(this,"componentRegistry",void 0),this.plugin=t,this.componentRegistry=new a.Registry}return g(e,[{key:"registerManagerAction",value:function(e){var t=e.order,n=e.component,r="managerAction";this.componentRegistry.get(r)||this.componentRegistry.register(r,[]),this.componentRegistry.get(r).push({order:null!=t?t:0,component:n})}},{key:"getManagerActions",value:function(){var e;return null!=(e=this.componentRegistry.get("managerAction"))?e:[]}}]),e}(),A=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 b(this,t),n=t,r=arguments,n=v(n),h(e=function(e,t){var n;if(t&&("object"==((n=t)&&"undefined"!=typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,O()?Reflect.construct(n,r||[],v(this).constructor):n.apply(this,r)),"types",new Map),h(e,"extensionManager",new T(e)),h(e,"extendedTabs",{}),e}return t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&w(t,e),g(t,[{key:"getExtendedTabs",value:function(){return this.extendedTabs}},{key:"registerPermissionTab",value:function(e){this.extendedTabs[(0,a.uid)()]=e}},{key:"load",value:function(){var e=this;return d(function(){return P(this,function(t){return e.app.pm.get(i()).settingsUI.addPermissionsTab(function(e){var t=e.t,n=e.TabLayout,r=e.activeRole;return{key:"dataSource",label:t("Data sources"),sort:15,children:u().createElement(n,null,u().createElement(C,{role:r}))}}),e.app.use(S),e.app.pluginSettingsManager.add(l.A7,{title:'{{t("Data sources", { ns: "'.concat(l.A7,'" })}}'),icon:"ClusterOutlined",isPinned:!0,sort:100,showTabs:!1,aclSnippet:"pm.data-source-manager*"}),e.app.pluginSettingsManager.add("".concat(l.A7,".list"),{title:'{{t("Data sources", { ns: "'.concat(l.A7,'" })}}'),Component:j,sort:1,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager"}),e.app.pluginSettingsManager.add("".concat(l.A7,"/:name"),{title:u().createElement(x,null),icon:"ClusterOutlined",isTopLevel:!1,sort:100,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager"}),e.app.pluginSettingsManager.add("".concat(l.A7,"/main"),{title:u().createElement(x,null),icon:"ClusterOutlined",isTopLevel:!1,sort:100,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager.data-source-main",Component:M}),e.app.pluginSettingsManager.add("".concat(l.A7,"/main.collections"),{title:'{{t("Collections", { ns: "'.concat(l.A7,'" })}}'),Component:q,topLevelName:"".concat(l.A7,"/main"),pluginKey:l.A7,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager.data-source-main"}),e.app.pluginSettingsManager.add("".concat(l.A7,"/:name.collections"),{title:'{{t("Collections", { ns: "'.concat(l.A7,'" })}}'),Component:k,topLevelName:"".concat(l.A7,"/:name"),pluginKey:l.A7,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager.data-source-main"}),e.app.dataSourceManager.addDataSources(e.getThirdDataSource.bind(e),s.F),[2]})})()}},{key:"setDataSources",value:function(){var e=this;return d(function(){var t,n;return P(this,function(r){switch(r.label){case 0:return[4,e.app.apiClient.request({resource:"dataSources",action:"listEnabled",params:{paginate:!1}})];case 1:return[2,null==(n=r.sent())||null==(t=n.data)?void 0:t.data]}})})()}},{key:"getThirdDataSource",value:function(){var e=this;return d(function(){var t,n;return P(this,function(r){switch(r.label){case 0:return[4,e.app.apiClient.request({resource:"dataSources",action:"listEnabled",params:{paginate:!1,appends:["collections"]}})];case 1:return[2,null==(n=r.sent())||null==(t=n.data)?void 0:t.data]}})})()}},{key:"registerType",value:function(e,t){this.types.set(e,t)}}]),t}(_(r.Plugin));t.default=A},347:function(e,t,n){"use strict";n.d(t,{F:function(){return u}});var r=n(772);function o(e,t,n,r,o,i,a){try{var c=e[i](a),u=c.value}catch(e){n(e);return}c.done?t(u):Promise.resolve(u).then(r,o)}function i(e){return(i=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function c(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(c=function(){return!!e})()}var u=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function n(){var e,t;if(!(this instanceof n))throw TypeError("Cannot call a class as a function");return e=n,t=arguments,e=i(e),function(e,t){var n;if(t&&("object"==((n=t)&&"undefined"!=typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,c()?Reflect.construct(e,t||[],i(this).constructor):e.apply(this,t))}return n.prototype=Object.create(e&&e.prototype,{constructor:{value:n,writable:!0,configurable:!0}}),e&&a(n,e),t=[{key:"getDataSource",value:function(){var e,t=this;return(e=function(){return function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:c(0),throw:c(1),return:c(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function c(i){return function(c){var u=[i,c];if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&u[0]?r.return:u[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,u[1])).done)return o;switch(r=0,o&&(u=[2&u[0],o.value]),u[0]){case 0:case 1:o=u;break;case 4:return a.label++,{value:u[1],done:!1};case 5:a.label++,r=u[1],u=[0];continue;case 7:u=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===u[0]||2===u[0])){a=0;continue}if(3===u[0]&&(!o||u[1]>o[0]&&u[1]<o[3])){a.label=u[1];break}if(6===u[0]&&a.label<o[1]){a.label=o[1],o=u;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(u);break}o[2]&&a.ops.pop(),a.trys.pop();continue}u=t.call(e,a)}catch(e){u=[6,e],r=0}finally{n=o=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}}(this,function(e){switch(e.label){case 0:return[4,t.app.apiClient.request({url:"dataSources:get/".concat(t.key),params:{appends:["collections"]}})];case 1:return[2,e.sent().data.data]}})},function(){var t=this,n=arguments;return new Promise(function(r,i){var a=e.apply(t,n);function c(e){o(a,r,i,c,u,"next",e)}function u(e){o(a,r,i,c,u,"throw",e)}c(void 0)})})()}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(n.prototype,t),n}(r.DataSource)},551:function(e,t,n){"use strict";n.d(t,{A7:function(){return i},EL:function(){return c},KQ:function(){return a}});var r=n(772),o=n(238),i="data-source-manager";function a(e){var t,n,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return r.i18n.t(e,(t=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({},o),n=n={ns:i},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}),t))}function c(){return(0,o.useTranslation)([i,"client"],{nsMode:"fallback"})}},581:function(e){e.exports=function(e,t){return"undefined"!=typeof __deoptimization_sideEffect__&&__deoptimization_sideEffect__(e,t),t}},482:function(e){"use strict";e.exports=b},948:function(e){"use strict";e.exports=l},964:function(e){"use strict";e.exports=o},632:function(e){"use strict";e.exports=t},563:function(t){"use strict";t.exports=e},505:function(e){"use strict";e.exports=p},229:function(e){"use strict";e.exports=f},875:function(e){"use strict";e.exports=c},772:function(e){"use strict";e.exports=u},667:function(e){"use strict";e.exports=r},465:function(e){"use strict";e.exports=a},584:function(e){"use strict";e.exports=d},721:function(e){"use strict";e.exports=m},933:function(e){"use strict";e.exports=y},467:function(e){"use strict";e.exports=i},156:function(e){"use strict";e.exports=n},238:function(e){"use strict";e.exports=g},128:function(e){"use strict";e.exports=s}},x={};function k(e){var t=x[e];if(void 0!==t)return t.exports;var n=x[e]={exports:{}};return S[e](n,n.exports,k),n.exports}return k.m=S,k.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return k.d(t,{a:t}),t},k.d=function(e,t){for(var n in t)k.o(t,n)&&!k.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},k.f={},k.e=function(e){return Promise.all(Object.keys(k.f).reduce(function(t,n){return k.f[n](e,t),t},[]))},k.u=function(e){return""+({10:"689d3bec33ad2ec3",236:"fdae18574fda07af",296:"d33eb40009bd7ec6",398:"2f7a418e7935984d",65:"f528b165e77e3608",674:"276bcf3de74bebd1",746:"1a8cce8035a89dd9",843:"dbf5ddf434ab29c0"})[e]+".js"},k.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),k.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},h={},v="@nocobase/plugin-data-source-manager:",k.l=function(e,t,n,r){if(h[e])return void h[e].push(t);if(void 0!==n)for(var o,i,a=document.getElementsByTagName("script"),c=0;c<a.length;c++){var u=a[c];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==v+n){o=u;break}}o||(i=!0,(o=document.createElement("script")).charset="utf-8",o.timeout=120,k.nc&&o.setAttribute("nonce",k.nc),o.setAttribute("data-webpack",v+n),o.src=e),h[e]=[t];var s=function(t,n){o.onerror=o.onload=null,clearTimeout(l);var r=h[e];if(delete h[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach(function(e){return e(n)}),t)return t(n)},l=setTimeout(s.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=s.bind(null,o.onerror),o.onload=s.bind(null,o.onload),i&&document.head.appendChild(o)},k.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(w=window.__webpack_public_path__||"/").endsWith("/")||(w+="/"),k.p=w+"static/plugins/@nocobase/plugin-data-source-manager/dist/client/",_={909:0},k.f.j=function(e,t){var n=k.o(_,e)?_[e]:void 0;if(0!==n)if(n)t.push(n[2]);else{var r=new Promise(function(t,r){n=_[e]=[t,r]});t.push(n[2]=r);var o=k.p+k.u(e),i=Error();k.l(o,function(t){if(k.o(_,e)&&(0!==(n=_[e])&&(_[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)}},O=function(e,t){var n,r,o=t[0],i=t[1],a=t[2],c=0;if(o.some(function(e){return 0!==_[e]})){for(n in i)k.o(i,n)&&(k.m[n]=i[n]);a&&a(k)}for(e&&e(t);c<o.length;c++)r=o[c],k.o(_,r)&&_[r]&&_[r][0](),_[r]=0},(P=self.webpackChunk_nocobase_plugin_data_source_manager=self.webpackChunk_nocobase_plugin_data_source_manager||[]).forEach(O.bind(null,0)),P.push=O.bind(null,P.push.bind(P)),k(329)}()});
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react-i18next"),require("@emotion/css"),require("react-router-dom"),require("@formily/antd-v5"),require("@formily/reactive"),require("@formily/react"),require("@nocobase/plugin-acl/client"),require("@dnd-kit/core"),require("@nocobase/flow-engine"),require("@ant-design/icons"),require("@formily/core"),require("@formily/shared"),require("react"),require("antd"),require("@nocobase/client"),require("antd-style"),require("@nocobase/utils/client"),require("lodash")):"function"==typeof define&&define.amd?define("@nocobase/plugin-data-source-manager",["react-i18next","@emotion/css","react-router-dom","@formily/antd-v5","@formily/reactive","@formily/react","@nocobase/plugin-acl/client","@dnd-kit/core","@nocobase/flow-engine","@ant-design/icons","@formily/core","@formily/shared","react","antd","@nocobase/client","antd-style","@nocobase/utils/client","lodash"],t):"object"==typeof exports?exports["@nocobase/plugin-data-source-manager"]=t(require("react-i18next"),require("@emotion/css"),require("react-router-dom"),require("@formily/antd-v5"),require("@formily/reactive"),require("@formily/react"),require("@nocobase/plugin-acl/client"),require("@dnd-kit/core"),require("@nocobase/flow-engine"),require("@ant-design/icons"),require("@formily/core"),require("@formily/shared"),require("react"),require("antd"),require("@nocobase/client"),require("antd-style"),require("@nocobase/utils/client"),require("lodash")):e["@nocobase/plugin-data-source-manager"]=t(e["react-i18next"],e["@emotion/css"],e["react-router-dom"],e["@formily/antd-v5"],e["@formily/reactive"],e["@formily/react"],e["@nocobase/plugin-acl/client"],e["@dnd-kit/core"],e["@nocobase/flow-engine"],e["@ant-design/icons"],e["@formily/core"],e["@formily/shared"],e.react,e.antd,e["@nocobase/client"],e["antd-style"],e["@nocobase/utils/client"],e.lodash)}(self,function(e,t,n,r,o,a,i,c,u,l,s,p,f,d,b,y,g,h){return function(){"use strict";var m,v,w,O={719:function(e,t,n){n.r(t),n.d(t,{PluginDataSourceManagerClient:function(){return M}});var r=n(342),o=n(79),a=n.n(o),i=n(768),c=n(155),u=n.n(c),l=n(135),s=n(872);function p(e,t,n,r,o,a,i){try{var c=e[a](i),u=c.value}catch(e){n(e);return}c.done?t(u):Promise.resolve(u).then(r,o)}function f(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function i(e){p(a,r,o,i,c,"next",e)}function c(e){p(a,r,o,i,c,"throw",e)}i(void 0)})}}function d(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}function b(e,t,n){return(b=O()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&v(o,n.prototype),o}).apply(null,arguments)}function y(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function g(e,t,n){return t&&y(e.prototype,t),n&&y(e,n),e}function h(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function m(e){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function v(e,t){return(v=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function w(e){var t="function"==typeof Map?new Map:void 0;return(w=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return b(e,arguments,m(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),v(n,e)})(e)}function O(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(O=function(){return!!e})()}function P(e,t){var n,r,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),c=Object.defineProperty;return c(i,"next",{value:u(0)}),c(i,"throw",{value:u(1)}),c(i,"return",{value:u(2)}),"function"==typeof Symbol&&c(i,Symbol.iterator,{value:function(){return this}}),i;function u(c){return function(u){var l=[c,u];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,l[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&l[0]?r.return:l[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,l[1])).done)return o;switch(r=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return a.label++,{value:l[1],done:!1};case 5:a.label++,r=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){a=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){a.label=l[1];break}if(6===l[0]&&a.label<o[1]){a.label=o[1],o=l;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(l);break}o[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],r=0}finally{n=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}var S=(0,r.lazy)(function(){return n.e("936").then(n.bind(n,35))},"DatabaseConnectionProvider").DatabaseConnectionProvider,C=(0,r.lazy)(function(){return Promise.all([n.e("936"),n.e("397")]).then(n.bind(n,620))},"BreadcumbTitle").BreadcumbTitle,j=(0,r.lazy)(function(){return Promise.all([n.e("936"),n.e("369"),n.e("420")]).then(n.bind(n,111))},"CollectionManagerPage").CollectionManagerPage,x=(0,r.lazy)(function(){return Promise.all([n.e("936"),n.e("271")]).then(n.bind(n,61))},"DatabaseConnectionManagerPane").DatabaseConnectionManagerPane,k=(0,r.lazy)(function(){return Promise.all([n.e("936"),n.e("369"),n.e("644")]).then(n.bind(n,687))},"MainDataSourceManager").MainDataSourceManager,_=(0,r.lazy)(function(){return n.e("603").then(n.bind(n,886))},"DataSourcePermissionManager").DataSourcePermissionManager,q=(0,r.lazy)(function(){return n.e("416").then(n.bind(n,819))},"CollectionMainProvider").CollectionMainProvider,T=function(){function e(t){d(this,e),h(this,"plugin",void 0),h(this,"componentRegistry",void 0),this.plugin=t,this.componentRegistry=new i.Registry}return g(e,[{key:"registerManagerAction",value:function(e){var t=e.order,n=e.component,r="managerAction";this.componentRegistry.get(r)||this.componentRegistry.register(r,[]),this.componentRegistry.get(r).push({order:null!=t?t:0,component:n})}},{key:"getManagerActions",value:function(){var e;return null!=(e=this.componentRegistry.get("managerAction"))?e:[]}}]),e}(),M=function(e){if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function t(){var e,n,r;return d(this,t),n=t,r=arguments,n=m(n),h(e=function(e,t){var n;if(t&&("object"==((n=t)&&"u">typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,O()?Reflect.construct(n,r||[],m(this).constructor):n.apply(this,r)),"types",new Map),h(e,"extensionManager",new T(e)),h(e,"extendedTabs",{}),e}return t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&v(t,e),g(t,[{key:"getExtendedTabs",value:function(){return this.extendedTabs}},{key:"registerPermissionTab",value:function(e){this.extendedTabs[(0,i.uid)()]=e}},{key:"load",value:function(){return f(function(){return P(this,function(e){return this.app.pm.get(a()).settingsUI.addPermissionsTab(function(e){var t=e.t,n=e.TabLayout,r=e.activeRole;return{key:"dataSource",label:t("Data sources"),sort:15,children:u().createElement(n,null,u().createElement(_,{role:r}))}}),this.app.use(S),this.app.pluginSettingsManager.add(s.CU,{title:'{{t("Data sources", { ns: "'.concat(s.CU,'" })}}'),icon:"ClusterOutlined",isPinned:!0,sort:100,showTabs:!1,aclSnippet:"pm.data-source-manager*"}),this.app.pluginSettingsManager.add("".concat(s.CU,".list"),{title:'{{t("Data sources", { ns: "'.concat(s.CU,'" })}}'),Component:x,sort:1,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager"}),this.app.pluginSettingsManager.add("".concat(s.CU,"/:name"),{title:u().createElement(C,null),icon:"ClusterOutlined",isTopLevel:!1,sort:100,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager"}),this.app.pluginSettingsManager.add("".concat(s.CU,"/main"),{title:u().createElement(C,null),icon:"ClusterOutlined",isTopLevel:!1,sort:100,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager.data-source-main",Component:q}),this.app.pluginSettingsManager.add("".concat(s.CU,"/main.collections"),{title:'{{t("Collections", { ns: "'.concat(s.CU,'" })}}'),Component:k,topLevelName:"".concat(s.CU,"/main"),pluginKey:s.CU,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager.data-source-main"}),this.app.pluginSettingsManager.add("".concat(s.CU,"/:name.collections"),{title:'{{t("Collections", { ns: "'.concat(s.CU,'" })}}'),Component:j,topLevelName:"".concat(s.CU,"/:name"),pluginKey:s.CU,skipAclConfigure:!0,aclSnippet:"pm.data-source-manager.data-source-main"}),this.app.dataSourceManager.addDataSources(this.getThirdDataSource.bind(this),l.J),[2]})}).call(this)}},{key:"setDataSources",value:function(){return f(function(){var e,t;return P(this,function(n){switch(n.label){case 0:return[4,this.app.apiClient.request({resource:"dataSources",action:"listEnabled",params:{paginate:!1}})];case 1:return[2,null==(t=n.sent())||null==(e=t.data)?void 0:e.data]}})}).call(this)}},{key:"getThirdDataSource",value:function(){return f(function(){var e,t;return P(this,function(n){switch(n.label){case 0:return[4,this.app.apiClient.request({resource:"dataSources",action:"listEnabled",params:{paginate:!1,appends:["collections"]}})];case 1:return[2,null==(t=n.sent())||null==(e=t.data)?void 0:e.data]}})}).call(this)}},{key:"registerType",value:function(e,t){this.types.set(e,t)}}]),t}(w(r.Plugin));t.default=M},135:function(e,t,n){n.d(t,{J:function(){return u}});var r=n(342);function o(e,t,n,r,o,a,i){try{var c=e[a](i),u=c.value}catch(e){n(e);return}c.done?t(u):Promise.resolve(u).then(r,o)}function a(e){return(a=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function i(e,t){return(i=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function c(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(c=function(){return!!e})()}var u=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function n(){var e,t;if(!(this instanceof n))throw TypeError("Cannot call a class as a function");return e=n,t=arguments,e=a(e),function(e,t){var n;if(t&&("object"==((n=t)&&"u">typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,c()?Reflect.construct(e,t||[],a(this).constructor):e.apply(this,t))}return n.prototype=Object.create(e&&e.prototype,{constructor:{value:n,writable:!0,configurable:!0}}),e&&i(n,e),t=[{key:"getDataSource",value:function(){var e;return(e=function(){return function(e,t){var n,r,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),c=Object.defineProperty;return c(i,"next",{value:u(0)}),c(i,"throw",{value:u(1)}),c(i,"return",{value:u(2)}),"function"==typeof Symbol&&c(i,Symbol.iterator,{value:function(){return this}}),i;function u(c){return function(u){var l=[c,u];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,l[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&l[0]?r.return:l[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,l[1])).done)return o;switch(r=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return a.label++,{value:l[1],done:!1};case 5:a.label++,r=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){a=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){a.label=l[1];break}if(6===l[0]&&a.label<o[1]){a.label=o[1],o=l;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(l);break}o[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],r=0}finally{n=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(e){switch(e.label){case 0:return[4,this.app.apiClient.request({url:"dataSources:get/".concat(this.key),params:{appends:["collections"]}})];case 1:return[2,e.sent().data.data]}})},function(){var t=this,n=arguments;return new Promise(function(r,a){var i=e.apply(t,n);function c(e){o(i,r,a,c,u,"next",e)}function u(e){o(i,r,a,c,u,"throw",e)}c(void 0)})}).call(this)}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(n.prototype,t),n}(r.DataSource)},872:function(e,t,n){n.d(t,{CU:function(){return a},VP:function(){return c},vV:function(){return i}});var r=n(342),o=n(953),a="data-source-manager";function i(e){var t,n,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return r.i18n.t(e,(t=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({},o),n=n={ns:a},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}),t))}function c(){return(0,o.useTranslation)([a,"client"],{nsMode:"fallback"})}},375:function(e){e.exports=l},799:function(e){e.exports=c},477:function(e){e.exports=t},418:function(e){e.exports=r},452:function(e){e.exports=s},230:function(e){e.exports=a},992:function(e){e.exports=o},166:function(e){e.exports=p},342:function(e){e.exports=b},694:function(e){e.exports=u},79:function(e){e.exports=i},768:function(e){e.exports=g},59:function(e){e.exports=d},235:function(e){e.exports=y},773:function(e){e.exports=h},155:function(e){e.exports=f},953:function(t){t.exports=e},442:function(e){e.exports=n},634:function(e,t,n){var r="",o="u">typeof document?document.currentScript:null;if(o&&o.src&&(r=o.src.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")),!r){var a=window.__webpack_public_path__||"";a&&("/"!==a.charAt(a.length-1)&&(a+="/"),r=a+"static/plugins/@nocobase/plugin-data-source-manager/dist/client/")}if(!r){if(!(r=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var i=window.location.pathname||"/",c=i.indexOf("/v2/");r=c>=0?i.slice(0,c+1):"/"}r&&(r=r.replace(/\/v2\/?$/,"/")),r||(r="/"),"/"!==r.charAt(r.length-1)&&(r+="/"),r+="static/plugins/@nocobase/plugin-data-source-manager/dist/client/"}n.p=r}},P={};function S(e){var t=P[e];if(void 0!==t)return t.exports;var n=P[e]={exports:{}};return O[e](n,n.exports,S),n.exports}S.m=O,S.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return S.d(t,{a:t}),t},S.d=function(e,t){for(var n in t)S.o(t,n)&&!S.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},S.f={},S.e=function(e){return Promise.all(Object.keys(S.f).reduce(function(t,n){return S.f[n](e,t),t},[]))},S.u=function(e){return""+e+"."+({271:"b3c0013cf976adf0",369:"6025f2112454fab1",397:"c8c6659cf3f7ac1c",416:"197712b8b93033c5",420:"0c3e3c9888e0ba31",603:"d6022bceb934f5b0",644:"b98e4b39058e9c32",936:"d5ab7aecb4eb6004"})[e]+".js"},S.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),S.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},C={},S.l=function(e,t,n,r){if(C[e])return void C[e].push(t);if(void 0!==n)for(var o,a,i=document.getElementsByTagName("script"),c=0;c<i.length;c++){var u=i[c];if(u.getAttribute("src")==e||u.getAttribute("data-rspack")=="@nocobase/plugin-data-source-manager:"+n){o=u;break}}o||(a=!0,(o=document.createElement("script")).timeout=120,S.nc&&o.setAttribute("nonce",S.nc),o.setAttribute("data-rspack","@nocobase/plugin-data-source-manager:"+n),o.src=e),C[e]=[t];var l=function(t,n){o.onerror=o.onload=null,clearTimeout(s);var r=C[e];if(delete C[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach(function(e){return e(n)}),t)return t(n)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),a&&document.head.appendChild(o)},S.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},S.g.importScripts&&(j=S.g.location+"");var C,j,x=S.g.document;if(!j&&x&&(x.currentScript&&"SCRIPT"===x.currentScript.tagName.toUpperCase()&&(j=x.currentScript.src),!j)){var k=x.getElementsByTagName("script");if(k.length)for(var _=k.length-1;_>-1&&(!j||!/^http(s?):/.test(j));)j=k[_--].src}if(!j)throw Error("Automatic publicPath is not supported in this browser");return S.p=j.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),m={889:0},S.f.j=function(e,t){var n=S.o(m,e)?m[e]:void 0;if(0!==n)if(n)t.push(n[2]);else{var r=new Promise(function(t,r){n=m[e]=[t,r]});t.push(n[2]=r);var o=S.p+S.u(e),a=Error();S.l(o,function(t){if(S.o(m,e)&&(0!==(n=m[e])&&(m[e]=void 0),n)){var r=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;a.message="Loading chunk "+e+" failed.\n("+r+": "+o+")",a.name="ChunkLoadError",a.type=r,a.request=o,n[1](a)}},"chunk-"+e,e)}},v=function(e,t){var n,r,o=t[0],a=t[1],i=t[2],c=0;if(o.some(function(e){return 0!==m[e]})){for(n in a)S.o(a,n)&&(S.m[n]=a[n]);i&&i(S)}for(e&&e(t);c<o.length;c++)r=o[c],S.o(m,r)&&m[r]&&m[r][0](),m[r]=0},(w=self.webpackChunk_nocobase_plugin_data_source_manager=self.webpackChunk_nocobase_plugin_data_source_manager||[]).forEach(v.bind(null,0)),w.push=v.bind(null,w.push.bind(w)),S(634),S(719)}()});
@@ -8,27 +8,27 @@
8
8
  */
9
9
 
10
10
  module.exports = {
11
- "@nocobase/client": "2.1.0-alpha.2",
11
+ "@nocobase/client": "2.1.0-alpha.20",
12
12
  "react": "18.2.0",
13
- "@nocobase/plugin-acl": "2.1.0-alpha.2",
14
- "@nocobase/utils": "2.1.0-alpha.2",
15
- "@nocobase/server": "2.1.0-alpha.2",
16
- "@nocobase/data-source-manager": "2.1.0-alpha.2",
17
- "lodash": "4.17.21",
18
- "@nocobase/acl": "2.1.0-alpha.2",
19
- "@nocobase/database": "2.1.0-alpha.2",
20
- "@nocobase/actions": "2.1.0-alpha.2",
21
- "@nocobase/ai": "2.1.0-alpha.2",
13
+ "@nocobase/plugin-acl": "2.1.0-alpha.20",
14
+ "@nocobase/utils": "2.1.0-alpha.20",
15
+ "@nocobase/ai": "2.1.0-alpha.20",
16
+ "@nocobase/server": "2.1.0-alpha.20",
17
+ "@nocobase/data-source-manager": "2.1.0-alpha.20",
18
+ "lodash": "4.18.1",
19
+ "@nocobase/acl": "2.1.0-alpha.20",
20
+ "@nocobase/database": "2.1.0-alpha.20",
22
21
  "@ant-design/icons": "5.6.1",
23
22
  "antd": "5.24.2",
24
23
  "react-router-dom": "6.30.1",
25
- "@nocobase/flow-engine": "2.1.0-alpha.2",
24
+ "@nocobase/flow-engine": "2.1.0-alpha.20",
26
25
  "@formily/shared": "2.3.7",
27
26
  "@formily/react": "2.3.7",
28
27
  "react-i18next": "11.18.6",
29
28
  "@emotion/css": "11.13.0",
29
+ "@nocobase/actions": "2.1.0-alpha.20",
30
30
  "sequelize": "6.35.2",
31
- "@nocobase/test": "2.1.0-alpha.2",
31
+ "@nocobase/test": "2.1.0-alpha.20",
32
32
  "@formily/antd-v5": "1.2.3",
33
33
  "@formily/core": "2.3.7",
34
34
  "@formily/reactive": "2.3.7",
@@ -57,8 +57,10 @@
57
57
  "ai.tools.intentRouter.about": "Route intents to appropriate workflow",
58
58
  "ai.tools.searchFieldMetadata.title": "Search field metadata",
59
59
  "ai.tools.searchFieldMetadata.about": "Search fields in data models by keyword (english first). Returns either search results or a suggested query.",
60
- "ai.tools.dataSourceQuery.title": "Data source query",
61
- "ai.tools.dataSourceQuery.about": "Use dataSource, collectionName, and collection fields to query data from the database",
60
+ "ai.tools.dataSourceQuery.title": "Get records",
61
+ "ai.tools.dataSourceQuery.about": "Use dataSource, collectionName, fields, filters, and sorting to get records",
62
+ "ai.tools.dataQuery.title": "Query data",
63
+ "ai.tools.dataQuery.about": "Run aggregate repository queries with measures, dimensions, orders, filter, and having",
62
64
  "ai.tools.dataSourceCounting.title": "Data source records counting",
63
65
  "ai.tools.dataSourceCounting.about": "Use dataSource, collectionName, and collection fields to query data from the database, get total count of records",
64
66
  "ai.tools.dataQuery.args.datasource": "Data source key",
@@ -67,5 +69,11 @@
67
69
  "ai.tools.dataQuery.args.appends": "Related collection to be queried",
68
70
  "ai.tools.dataQuery.args.sort": "Sort field names. By default, they are in ascending order. A minus sign before the field name indicates descending order",
69
71
  "ai.tools.dataQuery.args.offset": "Offset of records to be queried",
70
- "ai.tools.dataQuery.args.limit": "Maximum number of records to be queried"
72
+ "ai.tools.dataQuery.args.limit": "Maximum number of records to be queried",
73
+ "ai.skills.dataQuery.title": "Data query",
74
+ "ai.skills.dataQuery.about": "Use tools to inspect metadata, query records, and run aggregate analysis on specified data sources",
75
+ "ai.skills.dataModeling.title": "Data modeling",
76
+ "ai.skills.dataModeling.about": "helps translate business scenarios into normalized database schemas with table declarations and relationship diagrams.",
77
+ "ai.skills.dataMetadata.title": "Data metadata",
78
+ "ai.skills.dataMetadata.about": "helps get collection metadata (data model, like database table definition, RESTful API definition), like collection definition, field metadata"
71
79
  }
@@ -57,8 +57,10 @@
57
57
  "ai.tools.intentRouter.about": "将意图路由到适当的工作流",
58
58
  "ai.tools.searchFieldMetadata.title": "搜索字段元数据",
59
59
  "ai.tools.searchFieldMetadata.about": "通过关键词搜索数据模型字段(优先英文)。返回搜索结果或建议的查询。",
60
- "ai.tools.dataSourceQuery.title": "数据源查询操作",
61
- "ai.tools.dataSourceQuery.about": "使用 dataSource、collectionName 和 collection fields 从数据库中查询数据。",
60
+ "ai.tools.dataSourceQuery.title": "获取数据记录",
61
+ "ai.tools.dataSourceQuery.about": "使用 dataSource、collectionName、字段、筛选和排序条件获取数据记录",
62
+ "ai.tools.dataQuery.title": "查询数据",
63
+ "ai.tools.dataQuery.about": "使用 measures、dimensions、orders、filter 和 having 执行聚合查询",
62
64
  "ai.tools.dataSourceCounting.title": "数据源记录数统计",
63
65
  "ai.tools.dataSourceCounting.about": "使用 dataSource、collectionName 和 collection fields 从数据库中获取记录总数",
64
66
  "ai.tools.dataQuery.args.datasource": "数据源标识",
@@ -67,5 +69,11 @@
67
69
  "ai.tools.dataQuery.args.appends": "需要查询的关联数据表",
68
70
  "ai.tools.dataQuery.args.sort": "排序字段名称,默认升序。字段名前加减号表示降序",
69
71
  "ai.tools.dataQuery.args.offset": "查询记录的偏移量",
70
- "ai.tools.dataQuery.args.limit": "查询记录的最大数量"
72
+ "ai.tools.dataQuery.args.limit": "查询记录的最大数量",
73
+ "ai.skills.dataQuery.title": "数据查询",
74
+ "ai.skills.dataQuery.about": "使用工具查看元数据、查询记录并对指定数据源执行聚合分析",
75
+ "ai.skills.dataModeling.title": "数据建模",
76
+ "ai.skills.dataModeling.about": "帮助将业务场景转换为带有表声明和关系图的规范化数据库模式。",
77
+ "ai.skills.dataMetadata.title": "获取数据模型元信息",
78
+ "ai.skills.dataMetadata.about": "帮助获取数据模型元数据(如数据库表定义,RESTful API 定义),如数据表定义,字段元数据"
71
79
  }
@@ -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-02-14T17:41:51.777Z"}
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-04-20T10:43:09.247Z"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import type { McpToolsManager } from '@nocobase/ai';
10
+ export declare function simplifyDataSourceListResult(result: any): {
11
+ data: any;
12
+ meta: any;
13
+ };
14
+ export declare function simplifyDataSourceCollectionsListResult(result: any): {
15
+ data: any;
16
+ meta: any;
17
+ };
18
+ export declare function simplifyDataSourceFieldsListResult(result: any, options?: {
19
+ args?: Record<string, any>;
20
+ }): {
21
+ data: any;
22
+ meta: any;
23
+ };
24
+ export declare function registerDataSourceManagerMcpPostProcessors(manager: McpToolsManager): void;
@@ -0,0 +1,158 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ var __defProp = Object.defineProperty;
11
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
12
+ var __getOwnPropNames = Object.getOwnPropertyNames;
13
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
14
+ var __export = (target, all) => {
15
+ for (var name in all)
16
+ __defProp(target, name, { get: all[name], enumerable: true });
17
+ };
18
+ var __copyProps = (to, from, except, desc) => {
19
+ if (from && typeof from === "object" || typeof from === "function") {
20
+ for (let key of __getOwnPropNames(from))
21
+ if (!__hasOwnProp.call(to, key) && key !== except)
22
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
23
+ }
24
+ return to;
25
+ };
26
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
27
+ var mcp_post_processors_exports = {};
28
+ __export(mcp_post_processors_exports, {
29
+ registerDataSourceManagerMcpPostProcessors: () => registerDataSourceManagerMcpPostProcessors,
30
+ simplifyDataSourceCollectionsListResult: () => simplifyDataSourceCollectionsListResult,
31
+ simplifyDataSourceFieldsListResult: () => simplifyDataSourceFieldsListResult,
32
+ simplifyDataSourceListResult: () => simplifyDataSourceListResult
33
+ });
34
+ module.exports = __toCommonJS(mcp_post_processors_exports);
35
+ function toArray(value) {
36
+ if (Array.isArray(value)) {
37
+ return value;
38
+ }
39
+ if (Array.isArray(value == null ? void 0 : value.data)) {
40
+ return value.data;
41
+ }
42
+ return [];
43
+ }
44
+ function parseAssociatedIndex(value) {
45
+ if (typeof value !== "string") {
46
+ return {};
47
+ }
48
+ const separatorIndex = value.indexOf(".");
49
+ if (separatorIndex === -1) {
50
+ return {};
51
+ }
52
+ return {
53
+ dataSourceKey: value.slice(0, separatorIndex),
54
+ collectionName: value.slice(separatorIndex + 1)
55
+ };
56
+ }
57
+ function pickDataSourceSummary(item) {
58
+ const summary = {
59
+ displayName: item == null ? void 0 : item.displayName,
60
+ key: item == null ? void 0 : item.key,
61
+ type: item == null ? void 0 : item.type,
62
+ status: item == null ? void 0 : item.status
63
+ };
64
+ if (Array.isArray(item == null ? void 0 : item.collections)) {
65
+ summary.collections = item.collections.map((collection) => {
66
+ const nextCollection = pickCollectionSummary({
67
+ ...collection,
68
+ dataSourceKey: (collection == null ? void 0 : collection.dataSourceKey) ?? (item == null ? void 0 : item.key)
69
+ });
70
+ if (Array.isArray(collection == null ? void 0 : collection.fields)) {
71
+ nextCollection.fields = collection.fields.map(
72
+ (field) => pickRemoteFieldSummary(field, {
73
+ dataSourceKey: (collection == null ? void 0 : collection.dataSourceKey) ?? (item == null ? void 0 : item.key),
74
+ collectionName: collection == null ? void 0 : collection.name
75
+ })
76
+ );
77
+ }
78
+ return nextCollection;
79
+ });
80
+ }
81
+ return summary;
82
+ }
83
+ function pickCollectionSummary(item) {
84
+ var _a, _b;
85
+ return {
86
+ name: item == null ? void 0 : item.name,
87
+ title: (item == null ? void 0 : item.title) ?? ((_a = item == null ? void 0 : item.options) == null ? void 0 : _a.title) ?? (item == null ? void 0 : item.displayName),
88
+ description: (item == null ? void 0 : item.description) ?? ((_b = item == null ? void 0 : item.options) == null ? void 0 : _b.description),
89
+ dataSourceKey: item == null ? void 0 : item.dataSourceKey
90
+ };
91
+ }
92
+ function pickFieldSummary(item) {
93
+ var _a;
94
+ return {
95
+ name: item == null ? void 0 : item.name,
96
+ type: item == null ? void 0 : item.type,
97
+ title: (_a = item == null ? void 0 : item.uiSchema) == null ? void 0 : _a.title,
98
+ description: item == null ? void 0 : item.description,
99
+ dataSourceKey: item == null ? void 0 : item.dataSourceKey,
100
+ collectionName: item == null ? void 0 : item.collectionName
101
+ };
102
+ }
103
+ function pickRemoteFieldSummary(item, defaults) {
104
+ var _a;
105
+ return {
106
+ name: item == null ? void 0 : item.name,
107
+ type: item == null ? void 0 : item.type,
108
+ title: (_a = item == null ? void 0 : item.uiSchema) == null ? void 0 : _a.title,
109
+ description: item == null ? void 0 : item.description,
110
+ dataSourceKey: item == null ? void 0 : item.dataSourceKey,
111
+ collectionName: item == null ? void 0 : item.collectionName,
112
+ ...defaults
113
+ };
114
+ }
115
+ function simplifyDataSourceListResult(result) {
116
+ const items = toArray(result);
117
+ return {
118
+ data: items.map((item) => pickDataSourceSummary(item)),
119
+ meta: result == null ? void 0 : result.meta
120
+ };
121
+ }
122
+ function simplifyDataSourceCollectionsListResult(result) {
123
+ const items = toArray(result);
124
+ return {
125
+ data: items.map((item) => pickCollectionSummary(item)),
126
+ meta: result == null ? void 0 : result.meta
127
+ };
128
+ }
129
+ function simplifyDataSourceFieldsListResult(result, options) {
130
+ var _a;
131
+ const items = toArray(result);
132
+ const defaults = parseAssociatedIndex((_a = options == null ? void 0 : options.args) == null ? void 0 : _a.associatedIndex);
133
+ return {
134
+ data: items.map(
135
+ (item) => (item == null ? void 0 : item.dataSourceKey) || (item == null ? void 0 : item.collectionName) ? pickFieldSummary(item) : pickRemoteFieldSummary(item, defaults)
136
+ ),
137
+ meta: result == null ? void 0 : result.meta
138
+ };
139
+ }
140
+ function registerDataSourceManagerMcpPostProcessors(manager) {
141
+ manager.registerToolResultPostProcessor("dataSources", "list", simplifyDataSourceListResult);
142
+ manager.registerToolResultPostProcessor("dataSources", "listEnabled", simplifyDataSourceListResult);
143
+ manager.registerToolResultPostProcessor("dataSources.collections", "list", simplifyDataSourceCollectionsListResult);
144
+ manager.registerToolResultPostProcessor(
145
+ "dataSourcesCollections.fields",
146
+ "list",
147
+ (result, context) => simplifyDataSourceFieldsListResult(result, {
148
+ args: context == null ? void 0 : context.args
149
+ })
150
+ );
151
+ }
152
+ // Annotate the CommonJS export names for ESM import in node:
153
+ 0 && (module.exports = {
154
+ registerDataSourceManagerMcpPostProcessors,
155
+ simplifyDataSourceCollectionsListResult,
156
+ simplifyDataSourceFieldsListResult,
157
+ simplifyDataSourceListResult
158
+ });
@@ -7,11 +7,9 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
 
10
- var __create = Object.create;
11
10
  var __defProp = Object.defineProperty;
12
11
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
13
12
  var __getOwnPropNames = Object.getOwnPropertyNames;
14
- var __getProtoOf = Object.getPrototypeOf;
15
13
  var __hasOwnProp = Object.prototype.hasOwnProperty;
16
14
  var __export = (target, all) => {
17
15
  for (var name in all)
@@ -25,14 +23,6 @@ var __copyProps = (to, from, except, desc) => {
25
23
  }
26
24
  return to;
27
25
  };
28
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
29
- // If the importer is in node compatibility mode or this is not an ESM
30
- // file that has been converted to a CommonJS file using a Babel-
31
- // compatible transform (i.e. "__esModule" has not been set), then set
32
- // "default" to the CommonJS "module.exports" for node compatibility.
33
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
34
- mod
35
- ));
36
26
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
37
27
  var data_source_exports = {};
38
28
  __export(data_source_exports, {
@@ -41,7 +31,7 @@ __export(data_source_exports, {
41
31
  module.exports = __toCommonJS(data_source_exports);
42
32
  var import_database = require("@nocobase/database");
43
33
  var import_plugin_acl = require("@nocobase/plugin-acl");
44
- var import_path = __toESM(require("path"));
34
+ var import_utils = require("@nocobase/utils");
45
35
  const availableActions = {
46
36
  create: {
47
37
  displayName: '{{t("Add new")}}',
@@ -62,7 +52,7 @@ const availableActions = {
62
52
  view: {
63
53
  displayName: '{{t("View")}}',
64
54
  type: "old-data",
65
- aliases: ["get", "list"],
55
+ aliases: ["get", "list", "query"],
66
56
  allowConfigureFields: true
67
57
  },
68
58
  update: {
@@ -117,7 +107,7 @@ class DataSourceModel extends import_database.Model {
117
107
  logger: app.logger.child({ dataSourceKey }),
118
108
  sqlLogger: app.sqlLogger.child({ dataSourceKey }),
119
109
  cache: app.cache,
120
- storagePath: import_path.default.join(process.cwd(), "storage", "cache", "apps", app.name),
110
+ storagePath: (0, import_utils.storagePathJoin)("cache", "apps", app.name),
121
111
  databaseInstance
122
112
  });
123
113
  dataSource.on("loadingProgress", (progress) => {
@@ -57,6 +57,7 @@ var import_data_source = require("./models/data-source");
57
57
  var import_data_sources_roles_model = require("./models/data-sources-roles-model");
58
58
  var import_acl = require("@nocobase/acl");
59
59
  var import_load_tables = require("./middlewares/load-tables");
60
+ var import_mcp_post_processors = require("./mcp-post-processors");
60
61
  class PluginDataSourceManagerServer extends import_server.Plugin {
61
62
  dataSourceErrors = {};
62
63
  dataSourceStatus = {};
@@ -313,6 +314,7 @@ class PluginDataSourceManagerServer extends import_server.Plugin {
313
314
  await next();
314
315
  });
315
316
  this.app.resourceManager.use(import_load_tables.loadDataSourceTablesIntoCollections);
317
+ (0, import_mcp_post_processors.registerDataSourceManagerMcpPostProcessors)(this.ai.mcpToolsManager);
316
318
  this.app.use(async function handleAppendDataSourceCollection(ctx, next) {
317
319
  await next();
318
320
  if (!ctx.action) {
@@ -0,0 +1,122 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ declare const _default: {
10
+ openapi: string;
11
+ info: {
12
+ title: string;
13
+ };
14
+ paths: {
15
+ '/dataSources:listEnabled': {
16
+ get: {
17
+ tags: string[];
18
+ summary: string;
19
+ description: string;
20
+ parameters: {
21
+ name: string;
22
+ in: string;
23
+ description: string;
24
+ required: boolean;
25
+ schema: {
26
+ type: string;
27
+ };
28
+ }[];
29
+ responses: {
30
+ 200: {
31
+ description: string;
32
+ content: {
33
+ 'application/json': {
34
+ schema: {
35
+ type: string;
36
+ properties: {
37
+ data: {
38
+ type: string;
39
+ items: {
40
+ $ref: string;
41
+ };
42
+ };
43
+ meta: {
44
+ type: string;
45
+ additionalProperties: boolean;
46
+ };
47
+ };
48
+ };
49
+ };
50
+ };
51
+ };
52
+ };
53
+ };
54
+ };
55
+ };
56
+ components: {
57
+ schemas: {
58
+ DataSourceInfo: {
59
+ type: string;
60
+ properties: {
61
+ key: {
62
+ type: string;
63
+ };
64
+ displayName: {
65
+ type: string;
66
+ };
67
+ status: {
68
+ type: string;
69
+ };
70
+ type: {
71
+ type: string;
72
+ };
73
+ isDBInstance: {
74
+ type: string;
75
+ };
76
+ options: {
77
+ type: string;
78
+ additionalProperties: boolean;
79
+ };
80
+ errorMessage: {
81
+ type: string;
82
+ };
83
+ collections: {
84
+ type: string;
85
+ items: {
86
+ $ref: string;
87
+ };
88
+ };
89
+ };
90
+ additionalProperties: boolean;
91
+ };
92
+ DataSourceCollectionInfo: {
93
+ type: string;
94
+ properties: {
95
+ name: {
96
+ type: string;
97
+ };
98
+ title: {
99
+ type: string;
100
+ };
101
+ fields: {
102
+ type: string;
103
+ items: {
104
+ type: string;
105
+ additionalProperties: boolean;
106
+ };
107
+ };
108
+ availableActions: {
109
+ type: string;
110
+ additionalProperties: boolean;
111
+ };
112
+ unavailableActions: {
113
+ type: string;
114
+ additionalProperties: boolean;
115
+ };
116
+ };
117
+ additionalProperties: boolean;
118
+ };
119
+ };
120
+ };
121
+ };
122
+ export default _default;