@nocobase/plugin-acl 2.3.0-alpha.1 → 3.0.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client-v2/{532.f0e5480be9e70a8a.js → 532.1e8b5965d370b9da.js} +1 -1
- package/dist/client-v2/index.js +1 -1
- package/dist/externalVersion.js +10 -10
- package/dist/server/actions/role-check.js +1 -0
- package/dist/swagger/index.d.ts +7 -0
- package/dist/swagger/index.js +5 -0
- package/package.json +2 -2
- package/dist/client-v2/800.020212b7d7b3875d.js +0 -10
|
@@ -7,4 +7,4 @@
|
|
|
7
7
|
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
|
-
"use strict";(self.webpackChunk_nocobase_plugin_acl_client_v2=self.webpackChunk_nocobase_plugin_acl_client_v2||[]).push([["532"],{407:function(e,t,n){n.r(t),n.d(t,{default:function(){return j}});var r=n(375),l=n(485),o=n(694),a=n(625),i=n(59),u=n(155),c=n.n(u);function s(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 f(e,t,n,r,l,o,a){try{var i=e[o](a),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,l)}function m(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,l=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=l){var o=[],a=!0,i=!1;try{for(l=l.call(e);!(a=(n=l.next()).done)&&(o.push(n.value),!t||o.length!==t);a=!0);}catch(e){i=!0,r=e}finally{try{a||null==l.return||l.return()}finally{if(i)throw r}}return o}}(e,t)||function(e,t){if(e){if("string"==typeof e)return s(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 s(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(e){var t,n=m(i.Form.useForm(),1)[0],r=null!=(t=e.form)?t:n,o=m((0,u.useState)(!1),2),s=o[0],d=o[1];(0,u.useEffect)(function(){var t;r.resetFields(),r.setFieldsValue(null!=(t=e.initialValues)?t:{})},[r,e.initialValues]);var p=(0,a.useMemoizedFn)(function(){var t;return(t=function(){var t,n;return function(e,t){var n,r,l,o={label:0,sent:function(){if(1&l[0])throw l[1];return l[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(a,"next",{value:u(0)}),i(a,"throw",{value:u(1)}),i(a,"return",{value:u(2)}),"function"==typeof Symbol&&i(a,Symbol.iterator,{value:function(){return this}}),a;function u(i){return function(u){var c=[i,u];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(o=0)),o;)try{if(n=1,r&&(l=2&c[0]?r.return:c[0]?r.throw||((l=r.return)&&l.call(r),0):r.next)&&!(l=l.call(r,c[1])).done)return l;switch(r=0,l&&(c=[2&c[0],l.value]),c[0]){case 0:case 1:l=c;break;case 4:return o.label++,{value:c[1],done:!1};case 5:o.label++,r=c[1],c=[0];continue;case 7:c=o.ops.pop(),o.trys.pop();continue;default:if(!(l=(l=o.trys).length>0&&l[l.length-1])&&(6===c[0]||2===c[0])){o=0;continue}if(3===c[0]&&(!l||c[1]>l[0]&&c[1]<l[3])){o.label=c[1];break}if(6===c[0]&&o.label<l[1]){o.label=l[1],l=c;break}if(l&&o.label<l[2]){o.label=l[2],o.ops.push(c);break}l[2]&&o.ops.pop(),o.trys.pop();continue}c=t.call(e,o)}catch(e){c=[6,e],r=0}finally{n=l=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(l){switch(l.label){case 0:return[4,r.validateFields()];case 1:t=l.sent(),d(!0),l.label=2;case 2:return l.trys.push([2,,5,6]),[4,e.onSubmit(t,r)];case 3:return l.sent(),[4,null==(n=e.onSubmitted)?void 0:n.call(e,t)];case 4:return l.sent(),[3,6];case 5:return d(!1),[7];case 6:return[2]}})},function(){var e=this,n=arguments;return new Promise(function(r,l){var o=t.apply(e,n);function a(e){f(o,r,l,a,i,"next",e)}function i(e){f(o,r,l,a,i,"throw",e)}a(void 0)})})()});return c().createElement(l.DrawerFormLayout,{title:e.title,onSubmit:p,submitting:s,submitText:e.submitText,cancelText:e.cancelText,footer:e.footer},c().createElement(i.Form,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}({form:r,layout:"vertical"},e.formProps),"function"==typeof e.children?e.children({form:r,submitting:s}):e.children))}var p=n(488),y=n(667);function b(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 v(e,t,n,r,l,o,a){try{var i=e[o](a),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,l)}function h(e){return function(){var t=this,n=arguments;return new Promise(function(r,l){var o=e.apply(t,n);function a(e){v(o,r,l,a,i,"next",e)}function i(e){v(o,r,l,a,i,"throw",e)}a(void 0)})}}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){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 w(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,l=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=l){var o=[],a=!0,i=!1;try{for(l=l.call(e);!(a=(n=l.next()).done)&&(o.push(n.value),!t||o.length!==t);a=!0);}catch(e){i=!0,r=e}finally{try{a||null==l.return||l.return()}finally{if(i)throw r}}return o}}(e,t)||E(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function E(e,t){if(e){if("string"==typeof e)return b(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 b(e,t)}}function S(e,t){var n,r,l,o={label:0,sent:function(){if(1&l[0])throw l[1];return l[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(a,"next",{value:u(0)}),i(a,"throw",{value:u(1)}),i(a,"return",{value:u(2)}),"function"==typeof Symbol&&i(a,Symbol.iterator,{value:function(){return this}}),a;function u(i){return function(u){var c=[i,u];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(o=0)),o;)try{if(n=1,r&&(l=2&c[0]?r.return:c[0]?r.throw||((l=r.return)&&l.call(r),0):r.next)&&!(l=l.call(r,c[1])).done)return l;switch(r=0,l&&(c=[2&c[0],l.value]),c[0]){case 0:case 1:l=c;break;case 4:return o.label++,{value:c[1],done:!1};case 5:o.label++,r=c[1],c=[0];continue;case 7:c=o.ops.pop(),o.trys.pop();continue;default:if(!(l=(l=o.trys).length>0&&l[l.length-1])&&(6===c[0]||2===c[0])){o=0;continue}if(3===c[0]&&(!l||c[1]>l[0]&&c[1]<l[3])){o.label=c[1];break}if(6===c[0]&&o.label<l[1]){o.label=l[1],l=c;break}if(l&&o.label<l[2]){o.label=l[2],o.ops.push(c);break}l[2]&&o.ops.pop(),o.trys.pop();continue}c=t.call(e,o)}catch(e){c=[6,e],r=0}finally{n=l=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}function k(e,t,n){var r=e.get(t);if((null==r?void 0:r.loader)===n)return r.Component;var l=(0,u.lazy)(n);return e.set(t,{loader:n,Component:l}),l}function x(e){var t,n=(0,o.useFlowContext)(),r=(0,p.kj)(),l=!!e.role;return c().createElement(d,{title:l?r("Edit role"):r("New role"),initialValues:e.role?{title:e.role.title,name:e.role.name,default:e.role.default}:{name:(0,o.randomId)("r_"),default:!1},submitText:r("Submit"),cancelText:r("Cancel"),onSubmit:function(t){return h(function(){var r,o,a,i;return S(this,function(u){switch(u.label){case 0:if(!(l&&(null==(r=e.role)?void 0:r.name)))return[3,2];return[4,n.api.resource("roles").update({filterByTk:e.role.name,values:t})];case 1:return i=u.sent(),e.onRoleChange(null!=(o=null==i||null==(a=i.data)?void 0:a.data)?o:g({},e.role,t)),[2];case 2:var c,s;return[4,n.api.resource("roles").create({values:(c=g({},t),s=s={snippets:["!ui.*","!pm","!pm.*"]},Object.getOwnPropertyDescriptors?Object.defineProperties(c,Object.getOwnPropertyDescriptors(s)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(s)).forEach(function(e){Object.defineProperty(c,e,Object.getOwnPropertyDescriptor(s,e))}),c)})];case 3:return u.sent(),[2]}})})()},onSubmitted:function(){return h(function(){return S(this,function(t){switch(t.label){case 0:return n.message.success(r("Saved successfully")),[4,e.onSubmitted()];case 1:return t.sent(),[2]}})})()}},c().createElement(i.Form.Item,{name:"title",label:r("Role display name"),rules:[{required:!0}]},c().createElement(i.Input,null)),c().createElement(i.Form.Item,{name:"name",label:r("Role UID"),rules:[{required:!0}],normalize:function(e){var t;return null==e||null==(t=e.trim)?void 0:t.call(e)}},c().createElement(i.Input,{disabled:l})),c().createElement(i.Form.Item,{name:"default",valuePropName:"checked"},c().createElement(i.Checkbox,{disabled:!!(null==(t=e.role)?void 0:t.default)},r("Default role"))))}function O(){var e=(0,o.useFlowContext)(),t=(0,p.kj)(),n=w((0,u.useState)(function(){var t,n;return(null==(n=e.acl)||null==(t=n.data)?void 0:t.roleMode)||"default"}),2),r=n[0],l=n[1],s=(0,a.useRequest)(function(t){return h(function(){return S(this,function(n){switch(n.label){case 0:return[4,e.api.resource("roles").setSystemRoleMode({values:{roleMode:t}})];case 1:return n.sent(),[2,t]}})})()},{manual:!0,onSuccess:function(n){l(n),e.message.success(t("Saved successfully")),window.location.reload()}}),f=s.runAsync,m=s.loading;return c().createElement(i.Select,{value:r,loading:m,onChange:function(e){return f(e)},options:[{value:"default",label:t("Independent roles")},{value:"allow-use-union",label:t("Allow roles union")},{value:"only-use-union",label:t("Roles union only")}]})}function j(){var e,t=(0,o.useFlowContext)(),n=(0,p.kj)(),s=i.App.useApp().modal,f=i.theme.useToken().token,m=t.app.pm.get(y.A),d=function(e){if(!e)return null;var t="string"==typeof e.name?e.name:e.role||null,n="string"==typeof e.title?e.title:t;return t&&n?{name:t,title:n,snippets:Array.isArray(e.snippets)?e.snippets:[],strategy:e.strategy,allowConfigure:e.allowConfigure}:null}((0,l.useACLRoleContext)()),v=c().useRef(new Map),g=c().useRef(new Map),j=w((0,u.useState)(null),2),C=j[0],I=j[1],A=w((0,u.useState)(null),2),P=A[0],M=A[1],T=w((0,u.useState)("permissions"),2),R=T[0],F=T[1],D=w((0,u.useState)("general"),2),_=D[0],L=D[1],z=(0,a.useRequest)(function(){return h(function(){var e;return S(this,function(n){switch(n.label){case 0:return[4,t.api.resource("roles").list({paginate:!1,filter:{"name.$ne":"root"},showAnonymous:!0,sort:["createdAt"],appends:[]})];case 1:var r;return[2,(r=null==(e=n.sent())?void 0:e.data)&&(void 0===r?"undefined":r&&"u">typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)=="object"?{data:Array.isArray(r.data)?r.data:[],meta:r.meta}:{}]}})})()},{}),B=(0,u.useMemo)(function(){var e,t;return null!=(e=null==(t=z.data)?void 0:t.data)?e:[]},[null==(e=z.data)?void 0:e.data]),U=(0,a.useRequest)(function(){return h(function(){var e,n,r;return S(this,function(l){switch(l.label){case 0:if(!C)return[2,null];return[4,t.api.resource("roles").get({filterByTk:C})];case 1:return[2,null!=(e=null==(r=l.sent())||null==(n=r.data)?void 0:n.data)?e:null]}})})()},{manual:!0,ready:!!C,onSuccess:function(e){M(e)}}),G=(0,a.useMemoizedFn)(function(){U.run()});(0,u.useEffect)(function(){if(!(C&&B.some(function(e){return e.name===C}))){if(B[0])return void I(B[0].name);I(null)}},[B,C]),(0,u.useEffect)(function(){C?G():M(null)},[G,C]),(0,u.useEffect)(function(){L("general")},[null==P?void 0:P.name]);var W=(0,a.useMemoizedFn)(function(e){(M(e),(null==e?void 0:e.name)&&e.name!==C)?I(e.name):e||I(null)}),X=(0,a.useMemoizedFn)(function(e){t.viewer.open({type:"drawer",width:"50%",closable:!0,content:function(){return c().createElement(x,{role:e,onSubmitted:function(){return h(function(){return S(this,function(e){switch(e.label){case 0:return[4,z.refreshAsync()];case 1:return e.sent(),[4,U.refreshAsync()];case 2:return e.sent(),[2]}})})()},onRoleChange:W})}})}),q=(0,a.useMemoizedFn)(function(e){return h(function(){return S(this,function(r){switch(r.label){case 0:return[4,t.api.resource("roles").destroy({filterByTk:e.name})];case 1:return r.sent(),C===e.name&&(M(null),I(null)),t.message.success(n("Deleted successfully")),[4,z.refreshAsync()];case 2:return r.sent(),[2]}})})()}),H=(0,a.useMemoizedFn)(function(e){return[{key:"edit",label:n("Edit")},{key:"delete",label:n("Delete"),disabled:e.default}]}),K=(0,a.useMemoizedFn)(function(e,t){return h(function(){return S(this,function(r){return"edit"===e?X(t):"delete"===e&&s.confirm({title:n("Delete"),content:n("Are you sure you want to delete it?"),onOk:function(){return h(function(){return S(this,function(e){switch(e.label){case 0:return[4,q(t)];case 1:return e.sent(),[2]}})})()}}),[2]})})()}),N=(0,u.useMemo)(function(){return m.rolesManager.list().map(function(e){var t=w(e,2),n=t[0],r=t[1];return{key:n,label:r.title,Component:k(v.current,n,r.componentLoader)}})},[m.rolesManager]),V=(0,u.useMemo)(function(){return m.settingsUI.getPermissionsTabs({activeKey:_,activeRole:P,currentUserRole:d,onRoleChange:W}).map(function(e){return{key:e.key,label:e.label,Component:k(g.current,e.key,e.componentLoader)}})},[m.settingsUI,_,d,W,P]);(0,u.useEffect)(function(){!V.length||V.some(function(e){return e.key===_})||L(V[0].key)},[_,V]);var $=N.map(function(e){var t=e.key,n=e.label,r=e.Component;return{key:t,label:n,children:c().createElement(u.Suspense,{fallback:null},c().createElement(r,{active:R===t,role:P,onRoleChange:W}))}}),Y=V.map(function(e){var t=e.key,n=e.label,r=e.Component;return{key:t,label:n,children:c().createElement("div",{style:{maxHeight:"60vh",overflowY:"auto",paddingRight:f.paddingXS}},c().createElement(u.Suspense,{fallback:null},c().createElement(r,{activeKey:_,activeRole:P,currentUserRole:d,onRoleChange:W})))}}),J=[{key:"permissions",label:n("Permissions"),children:Y.length?c().createElement(i.Tabs,{type:"card",activeKey:_,onChange:L,items:Y}):c().createElement("div",{style:{color:f.colorTextDescription}},n("Select a role to configure permissions"))}].concat(function(e){if(Array.isArray(e))return b(e)}($)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}($)||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.")}());return c().createElement(i.Card,null,c().createElement("div",{style:{display:"flex",gap:f.marginLG,alignItems:"stretch",flexWrap:"nowrap"}},c().createElement("div",{style:{flex:"0 0 320px",minWidth:320,minHeight:0,paddingRight:f.paddingLG,borderRight:"1px solid ".concat(f.colorBorderSecondary),display:"flex",flexDirection:"column"}},c().createElement("div",{style:{display:"flex",flex:"0 0 auto",justifyContent:"space-between",alignItems:"center",gap:f.marginSM}},c().createElement(i.Button,{type:"text",icon:c().createElement(r.PlusOutlined,null),onClick:function(){return X()},style:{paddingInline:0}},n("New role")),c().createElement(O,null)),c().createElement(i.Divider,{style:{flex:"0 0 auto",marginBlock:f.marginSM}}),c().createElement("div",{style:{maxHeight:"65vh",overflowY:"auto"}},B.length?c().createElement(i.List,{loading:z.loading,dataSource:B,split:!1,renderItem:function(e){var t=(null==P?void 0:P.name)===e.name;return c().createElement(i.List.Item,{onClick:function(){return I(e.name)},style:{cursor:"pointer",padding:"".concat(f.paddingXS,"px ").concat(f.paddingSM,"px"),marginBottom:f.marginXXS,borderRadius:f.borderRadiusLG,background:t?f.controlItemBgActive:"transparent"}},c().createElement("div",{style:{width:"100%",display:"flex",alignItems:"center",justifyContent:"space-between",gap:f.marginSM,minWidth:0}},c().createElement(i.Typography.Text,{ellipsis:!0,style:{flex:"1 1 auto",minWidth:0}},c().createElement("span",{style:{display:"inline-flex",alignItems:"center",gap:f.marginXS,minWidth:0}},c().createElement(r.TagOutlined,null),c().createElement("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}},n(e.title)))),c().createElement("div",{style:{display:"inline-flex",alignItems:"center",gap:f.marginXS,flex:"0 0 auto"},onClick:function(e){e.stopPropagation()}},e.default?c().createElement(i.Tag,{color:"success"},n("Default")):null,c().createElement(i.Dropdown,{menu:{items:H(e),onClick:function(t){var n=t.key;return h(function(){return S(this,function(t){switch(t.label){case 0:return[4,K(String(n),e)];case 1:return t.sent(),[2]}})})()}},trigger:["click"]},c().createElement(i.Button,{type:"text",icon:c().createElement(r.MoreOutlined,null)})))))}}):z.loading?c().createElement(i.List,{loading:!0}):c().createElement(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE}))),c().createElement("div",{style:{flex:"1 1 auto",minWidth:0}},C&&U.loading&&(null==P?void 0:P.name)!==C?c().createElement("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",minHeight:160}},c().createElement(i.Spin,null)):P?c().createElement(i.Tabs,{activeKey:R,onChange:F,items:J}):c().createElement(i.Typography.Text,{type:"secondary"},n("Select a role to configure permissions")))))}}}]);
|
|
10
|
+
"use strict";(self.webpackChunk_nocobase_plugin_acl_client_v2=self.webpackChunk_nocobase_plugin_acl_client_v2||[]).push([["532"],{407:function(e,t,n){n.r(t),n.d(t,{default:function(){return j}});var r=n(375),l=n(485),o=n(694),a=n(625),i=n(59),u=n(155),c=n.n(u);function s(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 f(e,t,n,r,l,o,a){try{var i=e[o](a),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,l)}function m(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,l=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=l){var o=[],a=!0,i=!1;try{for(l=l.call(e);!(a=(n=l.next()).done)&&(o.push(n.value),!t||o.length!==t);a=!0);}catch(e){i=!0,r=e}finally{try{a||null==l.return||l.return()}finally{if(i)throw r}}return o}}(e,t)||function(e,t){if(e){if("string"==typeof e)return s(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 s(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(e){var t,n=m(i.Form.useForm(),1)[0],r=null!=(t=e.form)?t:n,o=m((0,u.useState)(!1),2),s=o[0],d=o[1];(0,u.useEffect)(function(){var t;r.resetFields(),r.setFieldsValue(null!=(t=e.initialValues)?t:{})},[r,e.initialValues]);var p=(0,a.useMemoizedFn)(function(){var t;return(t=function(){var t,n;return function(e,t){var n,r,l,o={label:0,sent:function(){if(1&l[0])throw l[1];return l[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(a,"next",{value:u(0)}),i(a,"throw",{value:u(1)}),i(a,"return",{value:u(2)}),"function"==typeof Symbol&&i(a,Symbol.iterator,{value:function(){return this}}),a;function u(i){return function(u){var c=[i,u];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(o=0)),o;)try{if(n=1,r&&(l=2&c[0]?r.return:c[0]?r.throw||((l=r.return)&&l.call(r),0):r.next)&&!(l=l.call(r,c[1])).done)return l;switch(r=0,l&&(c=[2&c[0],l.value]),c[0]){case 0:case 1:l=c;break;case 4:return o.label++,{value:c[1],done:!1};case 5:o.label++,r=c[1],c=[0];continue;case 7:c=o.ops.pop(),o.trys.pop();continue;default:if(!(l=(l=o.trys).length>0&&l[l.length-1])&&(6===c[0]||2===c[0])){o=0;continue}if(3===c[0]&&(!l||c[1]>l[0]&&c[1]<l[3])){o.label=c[1];break}if(6===c[0]&&o.label<l[1]){o.label=l[1],l=c;break}if(l&&o.label<l[2]){o.label=l[2],o.ops.push(c);break}l[2]&&o.ops.pop(),o.trys.pop();continue}c=t.call(e,o)}catch(e){c=[6,e],r=0}finally{n=l=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(l){switch(l.label){case 0:return[4,r.validateFields()];case 1:t=l.sent(),d(!0),l.label=2;case 2:return l.trys.push([2,,5,6]),[4,e.onSubmit(t,r)];case 3:return l.sent(),[4,null==(n=e.onSubmitted)?void 0:n.call(e,t)];case 4:return l.sent(),[3,6];case 5:return d(!1),[7];case 6:return[2]}})},function(){var e=this,n=arguments;return new Promise(function(r,l){var o=t.apply(e,n);function a(e){f(o,r,l,a,i,"next",e)}function i(e){f(o,r,l,a,i,"throw",e)}a(void 0)})})()});return c().createElement(l.DrawerFormLayout,{title:e.title,onSubmit:p,submitting:s,submitText:e.submitText,cancelText:e.cancelText,footer:e.footer},c().createElement(i.Form,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}({form:r,layout:"vertical"},e.formProps),"function"==typeof e.children?e.children({form:r,submitting:s}):e.children))}var p=n(488),y=n(667);function b(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 v(e,t,n,r,l,o,a){try{var i=e[o](a),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,l)}function h(e){return function(){var t=this,n=arguments;return new Promise(function(r,l){var o=e.apply(t,n);function a(e){v(o,r,l,a,i,"next",e)}function i(e){v(o,r,l,a,i,"throw",e)}a(void 0)})}}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){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 w(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,l=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=l){var o=[],a=!0,i=!1;try{for(l=l.call(e);!(a=(n=l.next()).done)&&(o.push(n.value),!t||o.length!==t);a=!0);}catch(e){i=!0,r=e}finally{try{a||null==l.return||l.return()}finally{if(i)throw r}}return o}}(e,t)||E(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function E(e,t){if(e){if("string"==typeof e)return b(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 b(e,t)}}function S(e,t){var n,r,l,o={label:0,sent:function(){if(1&l[0])throw l[1];return l[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(a,"next",{value:u(0)}),i(a,"throw",{value:u(1)}),i(a,"return",{value:u(2)}),"function"==typeof Symbol&&i(a,Symbol.iterator,{value:function(){return this}}),a;function u(i){return function(u){var c=[i,u];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(o=0)),o;)try{if(n=1,r&&(l=2&c[0]?r.return:c[0]?r.throw||((l=r.return)&&l.call(r),0):r.next)&&!(l=l.call(r,c[1])).done)return l;switch(r=0,l&&(c=[2&c[0],l.value]),c[0]){case 0:case 1:l=c;break;case 4:return o.label++,{value:c[1],done:!1};case 5:o.label++,r=c[1],c=[0];continue;case 7:c=o.ops.pop(),o.trys.pop();continue;default:if(!(l=(l=o.trys).length>0&&l[l.length-1])&&(6===c[0]||2===c[0])){o=0;continue}if(3===c[0]&&(!l||c[1]>l[0]&&c[1]<l[3])){o.label=c[1];break}if(6===c[0]&&o.label<l[1]){o.label=l[1],l=c;break}if(l&&o.label<l[2]){o.label=l[2],o.ops.push(c);break}l[2]&&o.ops.pop(),o.trys.pop();continue}c=t.call(e,o)}catch(e){c=[6,e],r=0}finally{n=l=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}function k(e,t,n){var r=e.get(t);if((null==r?void 0:r.loader)===n)return r.Component;var l=(0,u.lazy)(n);return e.set(t,{loader:n,Component:l}),l}function x(e){var t,n=(0,o.useFlowContext)(),r=(0,p.kj)(),l=!!e.role;return c().createElement(d,{title:l?r("Edit role"):r("New role"),initialValues:e.role?{title:e.role.title,name:e.role.name,default:e.role.default}:{name:(0,o.randomId)("r_"),default:!1},submitText:r("Submit"),cancelText:r("Cancel"),onSubmit:function(t){return h(function(){var r,o,a,i;return S(this,function(u){switch(u.label){case 0:if(!(l&&(null==(r=e.role)?void 0:r.name)))return[3,2];return[4,n.api.resource("roles").update({filterByTk:e.role.name,values:t})];case 1:return i=u.sent(),e.onRoleChange(null!=(o=null==i||null==(a=i.data)?void 0:a.data)?o:g({},e.role,t)),[2];case 2:var c,s;return[4,n.api.resource("roles").create({values:(c=g({},t),s=s={snippets:["!ui.*","!pm","!pm.*"]},Object.getOwnPropertyDescriptors?Object.defineProperties(c,Object.getOwnPropertyDescriptors(s)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(s)).forEach(function(e){Object.defineProperty(c,e,Object.getOwnPropertyDescriptor(s,e))}),c)})];case 3:return u.sent(),[2]}})})()},onSubmitted:function(){return h(function(){return S(this,function(t){switch(t.label){case 0:return n.message.success(r("Saved successfully")),[4,e.onSubmitted()];case 1:return t.sent(),[2]}})})()}},c().createElement(i.Form.Item,{name:"title",label:r("Role display name"),rules:[{required:!0}]},c().createElement(i.Input,null)),c().createElement(i.Form.Item,{name:"name",label:r("Role UID"),rules:[{required:!0}],normalize:function(e){var t;return null==e||null==(t=e.trim)?void 0:t.call(e)}},c().createElement(i.Input,{disabled:l})),c().createElement(i.Form.Item,{name:"default",valuePropName:"checked"},c().createElement(i.Checkbox,{disabled:!!(null==(t=e.role)?void 0:t.default)},r("Default role"))))}function O(){var e=(0,o.useFlowContext)(),t=(0,p.kj)(),n=w((0,u.useState)(function(){var t,n;return(null==(n=e.acl)||null==(t=n.data)?void 0:t.roleMode)||"default"}),2),r=n[0],l=n[1],s=(0,a.useRequest)(function(t){return h(function(){return S(this,function(n){switch(n.label){case 0:return[4,e.api.resource("roles").setSystemRoleMode({values:{roleMode:t}})];case 1:return n.sent(),[2,t]}})})()},{manual:!0,onSuccess:function(n){l(n),e.message.success(t("Saved successfully")),window.location.reload()}}),f=s.runAsync,m=s.loading;return c().createElement(i.Select,{value:r,loading:m,onChange:function(e){return f(e)},options:[{value:"default",label:t("Independent roles")},{value:"allow-use-union",label:t("Allow roles union")},{value:"only-use-union",label:t("Roles union only")}]})}function j(){var e,t=(0,o.useFlowContext)(),n=(0,p.kj)(),s=i.App.useApp().modal,f=i.theme.useToken().token,m=(0,l.getItemActiveColors)(f),d=m.bg,v=m.color,g=t.app.pm.get(y.A),j=function(e){if(!e)return null;var t="string"==typeof e.name?e.name:e.role||null,n="string"==typeof e.title?e.title:t;return t&&n?{name:t,title:n,snippets:Array.isArray(e.snippets)?e.snippets:[],strategy:e.strategy,allowConfigure:e.allowConfigure}:null}((0,l.useACLRoleContext)()),C=c().useRef(new Map),I=c().useRef(new Map),A=w((0,u.useState)(null),2),P=A[0],M=A[1],T=w((0,u.useState)(null),2),R=T[0],F=T[1],D=w((0,u.useState)("permissions"),2),_=D[0],L=D[1],z=w((0,u.useState)("general"),2),B=z[0],U=z[1],G=(0,a.useRequest)(function(){return h(function(){var e;return S(this,function(n){switch(n.label){case 0:return[4,t.api.resource("roles").list({paginate:!1,filter:{"name.$ne":"root"},showAnonymous:!0,sort:["createdAt"],appends:[]})];case 1:var r;return[2,(r=null==(e=n.sent())?void 0:e.data)&&(void 0===r?"undefined":r&&"u">typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)=="object"?{data:Array.isArray(r.data)?r.data:[],meta:r.meta}:{}]}})})()},{}),W=(0,u.useMemo)(function(){var e,t;return null!=(e=null==(t=G.data)?void 0:t.data)?e:[]},[null==(e=G.data)?void 0:e.data]),X=(0,a.useRequest)(function(){return h(function(){var e,n,r;return S(this,function(l){switch(l.label){case 0:if(!P)return[2,null];return[4,t.api.resource("roles").get({filterByTk:P})];case 1:return[2,null!=(e=null==(r=l.sent())||null==(n=r.data)?void 0:n.data)?e:null]}})})()},{manual:!0,ready:!!P,onSuccess:function(e){F(e)}}),q=(0,a.useMemoizedFn)(function(){X.run()});(0,u.useEffect)(function(){if(!(P&&W.some(function(e){return e.name===P}))){if(W[0])return void M(W[0].name);M(null)}},[W,P]),(0,u.useEffect)(function(){P?q():F(null)},[q,P]),(0,u.useEffect)(function(){U("general")},[null==R?void 0:R.name]);var H=(0,a.useMemoizedFn)(function(e){(F(e),(null==e?void 0:e.name)&&e.name!==P)?M(e.name):e||M(null)}),K=(0,a.useMemoizedFn)(function(e){t.viewer.open({type:"drawer",width:"50%",closable:!0,content:function(){return c().createElement(x,{role:e,onSubmitted:function(){return h(function(){return S(this,function(e){switch(e.label){case 0:return[4,G.refreshAsync()];case 1:return e.sent(),[4,X.refreshAsync()];case 2:return e.sent(),[2]}})})()},onRoleChange:H})}})}),N=(0,a.useMemoizedFn)(function(e){return h(function(){return S(this,function(r){switch(r.label){case 0:return[4,t.api.resource("roles").destroy({filterByTk:e.name})];case 1:return r.sent(),P===e.name&&(F(null),M(null)),t.message.success(n("Deleted successfully")),[4,G.refreshAsync()];case 2:return r.sent(),[2]}})})()}),V=(0,a.useMemoizedFn)(function(e){return[{key:"edit",label:n("Edit")},{key:"delete",label:n("Delete"),disabled:e.default}]}),$=(0,a.useMemoizedFn)(function(e,t){return h(function(){return S(this,function(r){return"edit"===e?K(t):"delete"===e&&s.confirm({title:n("Delete"),content:n("Are you sure you want to delete it?"),onOk:function(){return h(function(){return S(this,function(e){switch(e.label){case 0:return[4,N(t)];case 1:return e.sent(),[2]}})})()}}),[2]})})()}),Y=(0,u.useMemo)(function(){return g.rolesManager.list().map(function(e){var t=w(e,2),n=t[0],r=t[1];return{key:n,label:r.title,Component:k(C.current,n,r.componentLoader)}})},[g.rolesManager]),J=(0,u.useMemo)(function(){return g.settingsUI.getPermissionsTabs({activeKey:B,activeRole:R,currentUserRole:j,onRoleChange:H}).map(function(e){return{key:e.key,label:e.label,Component:k(I.current,e.key,e.componentLoader)}})},[g.settingsUI,B,j,H,R]);(0,u.useEffect)(function(){!J.length||J.some(function(e){return e.key===B})||U(J[0].key)},[B,J]);var Q=Y.map(function(e){var t=e.key,n=e.label,r=e.Component;return{key:t,label:n,children:c().createElement(u.Suspense,{fallback:null},c().createElement(r,{active:_===t,role:R,onRoleChange:H}))}}),Z=J.map(function(e){var t=e.key,n=e.label,r=e.Component;return{key:t,label:n,children:c().createElement("div",{style:{maxHeight:"60vh",overflowY:"auto",paddingRight:f.paddingXS}},c().createElement(u.Suspense,{fallback:null},c().createElement(r,{activeKey:B,activeRole:R,currentUserRole:j,onRoleChange:H})))}}),ee=[{key:"permissions",label:n("Permissions"),children:Z.length?c().createElement(i.Tabs,{type:"card",activeKey:B,onChange:U,items:Z}):c().createElement("div",{style:{color:f.colorTextDescription}},n("Select a role to configure permissions"))}].concat(function(e){if(Array.isArray(e))return b(e)}(Q)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(Q)||E(Q)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}());return c().createElement(i.Card,null,c().createElement("div",{style:{display:"flex",gap:f.marginLG,alignItems:"stretch",flexWrap:"nowrap"}},c().createElement("div",{style:{flex:"0 0 320px",minWidth:320,minHeight:0,paddingRight:f.paddingLG,borderRight:"1px solid ".concat(f.colorBorderSecondary),display:"flex",flexDirection:"column"}},c().createElement("div",{style:{display:"flex",flex:"0 0 auto",justifyContent:"space-between",alignItems:"center",gap:f.marginSM}},c().createElement(i.Button,{type:"text",icon:c().createElement(r.PlusOutlined,null),onClick:function(){return K()},style:{paddingInline:0}},n("New role")),c().createElement(O,null)),c().createElement(i.Divider,{style:{flex:"0 0 auto",marginBlock:f.marginSM}}),c().createElement("div",{style:{maxHeight:"65vh",overflowY:"auto"}},W.length?c().createElement(i.List,{loading:G.loading,dataSource:W,split:!1,renderItem:function(e){var t=(null==R?void 0:R.name)===e.name;return c().createElement(i.List.Item,{onClick:function(){return M(e.name)},style:{cursor:"pointer",padding:"".concat(f.paddingXS,"px ").concat(f.paddingSM,"px"),marginBottom:f.marginXXS,borderRadius:f.borderRadiusLG,background:t?d:"transparent",color:t?v:void 0}},c().createElement("div",{style:{width:"100%",display:"flex",alignItems:"center",justifyContent:"space-between",gap:f.marginSM,minWidth:0}},c().createElement(i.Typography.Text,{ellipsis:!0,style:{flex:"1 1 auto",minWidth:0,color:t?v:void 0}},c().createElement("span",{style:{display:"inline-flex",alignItems:"center",gap:f.marginXS,minWidth:0}},c().createElement(r.TagOutlined,null),c().createElement("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}},n(e.title)))),c().createElement("div",{style:{display:"inline-flex",alignItems:"center",gap:f.marginXS,flex:"0 0 auto"},onClick:function(e){e.stopPropagation()}},e.default?c().createElement(i.Tag,{color:"success"},n("Default")):null,c().createElement(i.Dropdown,{menu:{items:V(e),onClick:function(t){var n=t.key;return h(function(){return S(this,function(t){switch(t.label){case 0:return[4,$(String(n),e)];case 1:return t.sent(),[2]}})})()}},trigger:["click"]},c().createElement(i.Button,{type:"text",icon:c().createElement(r.MoreOutlined,null)})))))}}):G.loading?c().createElement(i.List,{loading:!0}):c().createElement(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE}))),c().createElement("div",{style:{flex:"1 1 auto",minWidth:0}},P&&X.loading&&(null==R?void 0:R.name)!==P?c().createElement("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",minHeight:160}},c().createElement(i.Spin,null)):R?c().createElement(i.Tabs,{activeKey:_,onChange:L,items:ee}):c().createElement(i.Typography.Text,{type:"secondary"},n("Select a role to configure permissions")))))}}}]);
|
package/dist/client-v2/index.js
CHANGED
|
@@ -7,4 +7,4 @@
|
|
|
7
7
|
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("ahooks"),require("@nocobase/client-v2"),require("react"),require("antd"),require("@ant-design/icons"),require("@nocobase/flow-engine"),require("lodash")):"function"==typeof define&&define.amd?define("@nocobase/plugin-acl/client-v2",["ahooks","@nocobase/client-v2","react","antd","@ant-design/icons","@nocobase/flow-engine","lodash"],t):"object"==typeof exports?exports["@nocobase/plugin-acl/client-v2"]=t(require("ahooks"),require("@nocobase/client-v2"),require("react"),require("antd"),require("@ant-design/icons"),require("@nocobase/flow-engine"),require("lodash")):e["@nocobase/plugin-acl/client-v2"]=t(e.ahooks,e["@nocobase/client-v2"],e.react,e.antd,e["@ant-design/icons"],e["@nocobase/flow-engine"],e.lodash)}(self,function(e,t,n,r,o,i,u){return function(){"use strict";var c,a,l,s,f,p,b={667:function(e,t,n){n.d(t,{h:function(){return p}});var r=n(485),o=n(101);function i(e,t,n,r,o,i,u){try{var c=e[i](u),a=c.value}catch(e){n(e);return}c.done?t(a):Promise.resolve(a).then(r,o)}function u(e,t,n){return(u=f()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&l(o,n.prototype),o}).apply(null,arguments)}function c(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e){return(a=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function l(e,t){return(l=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function s(e){var t="function"==typeof Map?new Map:void 0;return(s=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 u(e,arguments,a(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),l(n,e)})(e)}function f(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(f=function(){return!!e})()}var p=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function u(){var e,t,n;if(!(this instanceof u))throw TypeError("Cannot call a class as a function");return t=u,n=arguments,t=a(t),c(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,f()?Reflect.construct(t,n||[],a(this).constructor):t.apply(this,n)),"rolesManager",new o.H),c(e,"settingsUI",new o.k),e}return u.prototype=Object.create(e&&e.prototype,{constructor:{value:u,writable:!0,configurable:!0}}),e&&l(u,e),t=[{key:"load",value:function(){var e;return(e=function(){return function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},u=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),c=Object.defineProperty;return c(u,"next",{value:a(0)}),c(u,"throw",{value:a(1)}),c(u,"return",{value:a(2)}),"function"==typeof Symbol&&c(u,Symbol.iterator,{value:function(){return this}}),u;function a(c){return function(a){var l=[c,a];if(n)throw TypeError("Generator is already executing.");for(;u&&(u=0,l[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&l[0]?r.return:l[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,l[1])).done)return o;switch(r=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,r=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],r=0}finally{n=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(e){return this.app.use(r.ACLRolesCheckProvider),this.pluginSettingsManager.addMenuItem({key:"users-permissions",title:this.t("Users & Permissions"),isPinned:!0,sort:200,icon:"TeamOutlined",showTabs:!0}),this.pluginSettingsManager.addPageTabItem({menuKey:"users-permissions",key:"roles",title:this.t("Roles & Permissions"),icon:"LockOutlined",aclSnippet:"pm.acl.roles",sort:4,componentLoader:function(){return n.e("532").then(n.bind(n,407))}}),this.pluginSettingsManager.setPluginSettingsLink("acl","users-permissions.roles"),this.settingsUI.addPermissionsTab({key:"general",label:String(this.t("System")),sort:10,componentLoader:function(){return n.e("336").then(n.bind(n,227))}}),this.settingsUI.addPermissionsTab({key:"menu",label:String(this.t("Desktop routes")),sort:20,componentLoader:function(){return n.e("800").then(n.bind(n,235))}}),this.flowEngine.registerModelLoaders({UIEditorTopbarActionModel:{loader:function(){return Promise.resolve().then(n.t.bind(n,485,23)).then(function(e){return e.UIEditorTopbarActionModel})}},SwitchRoleItemModel:{extends:"UserCenterItemModel",loader:function(){return n.e("870").then(n.bind(n,173))}}}),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var u=e.apply(t,n);function c(e){i(u,r,o,c,a,"next",e)}function a(e){i(u,r,o,c,a,"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)}}(u.prototype,t),u}(s(r.Plugin));t.A=p},488:function(e,t,n){n.d(t,{CU:function(){return i},MZ:function(){return c},kj:function(){return u}});var r=n(694);function o(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}var i="@nocobase/plugin-acl";function u(){var e=(0,r.useFlowEngine)();return function(t,n){return e.context.t(t,o({ns:[i,"acl","client"]},n))}}function c(e,t){return(0,r.tExpr)(e,o({ns:[i,"acl","client"]},t))}},101:function(e,t,n){function r(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}function o(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 i(e,t,n){return t&&o(e.prototype,t),n&&o(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}n.d(t,{H:function(){return c},k:function(){return a}});var c=function(){function e(){r(this,e),u(this,"items",new Map)}return i(e,[{key:"add",value:function(e,t){this.items.set(e,t)}},{key:"list",value:function(){return Array.from(this.items.entries()).sort(function(e,t){var n,r;return(null!=(n=e[1].sort)?n:100)-(null!=(r=t[1].sort)?r:100)})}}]),e}(),a=function(){function e(){r(this,e),u(this,"permissionTabs",new Map)}return i(e,[{key:"addPermissionsTab",value:function(e){var t="function"==typeof e?"callback:".concat(this.permissionTabs.size):e.key;this.permissionTabs.set(t,e)}},{key:"getPermissionsTabs",value:function(e){return Array.from(this.permissionTabs.values()).map(function(t){return"function"==typeof t?t(e):t}).filter(function(e){return!!e}).sort(function(e,t){var n,r;return(null!=(n=e.sort)?n:100)-(null!=(r=t.sort)?r:100)})}}]),e}()},375:function(e){e.exports=o},485:function(e){e.exports=t},694:function(e){e.exports=i},625:function(t){t.exports=e},59:function(e){e.exports=r},773:function(e){e.exports=u},155:function(e){e.exports=n}},d={};function h(e){var t=d[e];if(void 0!==t)return t.exports;var n=d[e]={exports:{}};return b[e](n,n.exports,h),n.exports}h.m=b,h.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return h.d(t,{a:t}),t},y=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__},h.t=function(e,t){if(1&t&&(e=this(e)),8&t||"object"==typeof e&&e&&(4&t&&e.__esModule||16&t&&"function"==typeof e.then))return e;var n=Object.create(null);h.r(n);var r={};v=v||[null,y({}),y([]),y(y)];for(var o=2&t&&e;("object"==typeof o||"function"==typeof o)&&!~v.indexOf(o);o=y(o))Object.getOwnPropertyNames(o).forEach(function(t){r[t]=function(){return e[t]}});return r.default=function(){return e},h.d(n,r),n},h.d=function(e,t){for(var n in t)h.o(t,n)&&!h.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},h.f={},h.e=function(e){return Promise.all(Object.keys(h.f).reduce(function(t,n){return h.f[n](e,t),t},[]))},h.u=function(e){return""+e+"."+({336:"ea65270626ea5401",532:"f0e5480be9e70a8a",800:"020212b7d7b3875d",870:"1d9bac44ccd1f650"})[e]+".js"},h.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),h.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},g={},h.l=function(e,t,n,r){if(g[e])return void g[e].push(t);if(void 0!==n)for(var o,i,u=document.getElementsByTagName("script"),c=0;c<u.length;c++){var a=u[c];if(a.getAttribute("src")==e||a.getAttribute("data-rspack")=="@nocobase/plugin-acl/client-v2:"+n){o=a;break}}o||(i=!0,(o=document.createElement("script")).timeout=120,h.nc&&o.setAttribute("nonce",h.nc),o.setAttribute("data-rspack","@nocobase/plugin-acl/client-v2:"+n),o.src=e),g[e]=[t];var l=function(t,n){o.onerror=o.onload=null,clearTimeout(s);var r=g[e];if(delete g[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach(function(e){return e(n)}),t)return t(n)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),i&&document.head.appendChild(o)},h.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},h.g.importScripts&&(m=h.g.location+"");var v,y,g,m,w=h.g.document;if(!m&&w&&(w.currentScript&&"SCRIPT"===w.currentScript.tagName.toUpperCase()&&(m=w.currentScript.src),!m)){var _=w.getElementsByTagName("script");if(_.length)for(var O=_.length-1;O>-1&&(!m||!/^http(s?):/.test(m));)m=_[O--].src}if(!m)throw Error("Automatic publicPath is not supported in this browser");h.p=m.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),c={889:0},h.f.j=function(e,t){var n=h.o(c,e)?c[e]:void 0;if(0!==n)if(n)t.push(n[2]);else{var r=new Promise(function(t,r){n=c[e]=[t,r]});t.push(n[2]=r);var o=h.p+h.u(e),i=Error();h.l(o,function(t){if(h.o(c,e)&&(0!==(n=c[e])&&(c[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)}},a=function(e,t){var n,r,o=t[0],i=t[1],u=t[2],a=0;if(o.some(function(e){return 0!==c[e]})){for(n in i)h.o(i,n)&&(h.m[n]=i[n]);u&&u(h)}for(e&&e(t);a<o.length;a++)r=o[a],h.o(c,r)&&c[r]&&c[r][0](),c[r]=0},(l=self.webpackChunk_nocobase_plugin_acl_client_v2=self.webpackChunk_nocobase_plugin_acl_client_v2||[]).forEach(a.bind(null,0)),l.push=a.bind(null,l.push.bind(l));var k={};return!function(){var e="",t="u">typeof document?document.currentScript:null;if(t&&t.src){var n=t.src.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"");n.indexOf("/static/plugins/@nocobase/plugin-acl/dist/client-v2/")>=0&&(e=n.replace(/\/[^\/]+$/,"/"))}if(!e){var r=window.__webpack_public_path__||"";r&&("/"!==r.charAt(r.length-1)&&(r+="/"),e=r+"static/plugins/@nocobase/plugin-acl/dist/client-v2/")}if(!e){var o=window.__nocobase_modern_client_prefix__||"v",i="/"+(o=String(o).replace(/^\/+|\/+$/g,"")||"v")+"/";if(!(e=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var u=window.location.pathname||"/",c=u.indexOf(i);e=c>=0?u.slice(0,c+1):"/"}e&&(e=e.replace(RegExp("/"+o+"/?$"),"/")),e||(e="/"),"/"!==e.charAt(e.length-1)&&(e+="/"),e+="static/plugins/@nocobase/plugin-acl/dist/client-v2/"}h.p=e}(),h.r(k),h.d(k,{ACLSettingsUI:function(){return p.k},NAMESPACE:function(){return f.CU},PluginAclClientV2:function(){return s.h},RolesManager:function(){return p.H},default:function(){return s.A},tExpr:function(){return f.MZ},useT:function(){return f.kj}}),s=h(667),f=h(488),p=h(101),k}()});
|
|
10
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("ahooks"),require("@nocobase/client-v2"),require("react"),require("antd"),require("@ant-design/icons"),require("@nocobase/flow-engine")):"function"==typeof define&&define.amd?define("@nocobase/plugin-acl/client-v2",["ahooks","@nocobase/client-v2","react","antd","@ant-design/icons","@nocobase/flow-engine"],t):"object"==typeof exports?exports["@nocobase/plugin-acl/client-v2"]=t(require("ahooks"),require("@nocobase/client-v2"),require("react"),require("antd"),require("@ant-design/icons"),require("@nocobase/flow-engine")):e["@nocobase/plugin-acl/client-v2"]=t(e.ahooks,e["@nocobase/client-v2"],e.react,e.antd,e["@ant-design/icons"],e["@nocobase/flow-engine"])}(self,function(e,t,n,r,o,i){return function(){"use strict";var u,c,a,l,s,f,p={667:function(e,t,n){n.d(t,{h:function(){return p}});var r=n(485),o=n(101);function i(e,t,n,r,o,i,u){try{var c=e[i](u),a=c.value}catch(e){n(e);return}c.done?t(a):Promise.resolve(a).then(r,o)}function u(e,t,n){return(u=f()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&l(o,n.prototype),o}).apply(null,arguments)}function c(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e){return(a=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function l(e,t){return(l=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function s(e){var t="function"==typeof Map?new Map:void 0;return(s=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 u(e,arguments,a(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),l(n,e)})(e)}function f(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(f=function(){return!!e})()}var p=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function u(){var e,t,n;if(!(this instanceof u))throw TypeError("Cannot call a class as a function");return t=u,n=arguments,t=a(t),c(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,f()?Reflect.construct(t,n||[],a(this).constructor):t.apply(this,n)),"rolesManager",new o.H),c(e,"settingsUI",new o.k),e}return u.prototype=Object.create(e&&e.prototype,{constructor:{value:u,writable:!0,configurable:!0}}),e&&l(u,e),t=[{key:"load",value:function(){var e;return(e=function(){return function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},u=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),c=Object.defineProperty;return c(u,"next",{value:a(0)}),c(u,"throw",{value:a(1)}),c(u,"return",{value:a(2)}),"function"==typeof Symbol&&c(u,Symbol.iterator,{value:function(){return this}}),u;function a(c){return function(a){var l=[c,a];if(n)throw TypeError("Generator is already executing.");for(;u&&(u=0,l[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&l[0]?r.return:l[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,l[1])).done)return o;switch(r=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,r=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],r=0}finally{n=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(e){return this.app.use(r.ACLRolesCheckProvider),this.pluginSettingsManager.addMenuItem({key:"users-permissions",title:this.t("Users & Permissions"),isPinned:!0,sort:200,icon:"TeamOutlined",showTabs:!0}),this.pluginSettingsManager.addPageTabItem({menuKey:"users-permissions",key:"roles",title:this.t("Roles & Permissions"),icon:"LockOutlined",aclSnippet:"pm.acl.roles",sort:4,componentLoader:function(){return n.e("532").then(n.bind(n,407))}}),this.pluginSettingsManager.setPluginSettingsLink("acl","users-permissions.roles"),this.settingsUI.addPermissionsTab({key:"general",label:String(this.t("System")),sort:10,componentLoader:function(){return n.e("336").then(n.bind(n,227))}}),this.flowEngine.registerModelLoaders({UIEditorTopbarActionModel:{loader:function(){return Promise.resolve().then(n.t.bind(n,485,23)).then(function(e){return e.UIEditorTopbarActionModel})}},SwitchRoleItemModel:{extends:"UserCenterItemModel",loader:function(){return n.e("870").then(n.bind(n,173))}}}),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var u=e.apply(t,n);function c(e){i(u,r,o,c,a,"next",e)}function a(e){i(u,r,o,c,a,"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)}}(u.prototype,t),u}(s(r.Plugin));t.A=p},488:function(e,t,n){n.d(t,{CU:function(){return i},MZ:function(){return c},kj:function(){return u}});var r=n(694);function o(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}var i="@nocobase/plugin-acl";function u(){var e=(0,r.useFlowEngine)();return function(t,n){return e.context.t(t,o({ns:[i,"acl","client"]},n))}}function c(e,t){return(0,r.tExpr)(e,o({ns:[i,"acl","client"]},t))}},101:function(e,t,n){function r(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}function o(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 i(e,t,n){return t&&o(e.prototype,t),n&&o(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}n.d(t,{H:function(){return c},k:function(){return a}});var c=function(){function e(){r(this,e),u(this,"items",new Map)}return i(e,[{key:"add",value:function(e,t){this.items.set(e,t)}},{key:"list",value:function(){return Array.from(this.items.entries()).sort(function(e,t){var n,r;return(null!=(n=e[1].sort)?n:100)-(null!=(r=t[1].sort)?r:100)})}}]),e}(),a=function(){function e(){r(this,e),u(this,"permissionTabs",new Map)}return i(e,[{key:"addPermissionsTab",value:function(e){var t="function"==typeof e?"callback:".concat(this.permissionTabs.size):e.key;this.permissionTabs.set(t,e)}},{key:"getPermissionsTabs",value:function(e){return Array.from(this.permissionTabs.values()).map(function(t){return"function"==typeof t?t(e):t}).filter(function(e){return!!e}).sort(function(e,t){var n,r;return(null!=(n=e.sort)?n:100)-(null!=(r=t.sort)?r:100)})}}]),e}()},375:function(e){e.exports=o},485:function(e){e.exports=t},694:function(e){e.exports=i},625:function(t){t.exports=e},59:function(e){e.exports=r},155:function(e){e.exports=n}},b={};function d(e){var t=b[e];if(void 0!==t)return t.exports;var n=b[e]={exports:{}};return p[e](n,n.exports,d),n.exports}d.m=p,d.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return d.d(t,{a:t}),t},v=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__},d.t=function(e,t){if(1&t&&(e=this(e)),8&t||"object"==typeof e&&e&&(4&t&&e.__esModule||16&t&&"function"==typeof e.then))return e;var n=Object.create(null);d.r(n);var r={};h=h||[null,v({}),v([]),v(v)];for(var o=2&t&&e;("object"==typeof o||"function"==typeof o)&&!~h.indexOf(o);o=v(o))Object.getOwnPropertyNames(o).forEach(function(t){r[t]=function(){return e[t]}});return r.default=function(){return e},d.d(n,r),n},d.d=function(e,t){for(var n in t)d.o(t,n)&&!d.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},d.f={},d.e=function(e){return Promise.all(Object.keys(d.f).reduce(function(t,n){return d.f[n](e,t),t},[]))},d.u=function(e){return""+e+"."+({336:"ea65270626ea5401",532:"1e8b5965d370b9da",870:"1d9bac44ccd1f650"})[e]+".js"},d.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),d.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},y={},d.l=function(e,t,n,r){if(y[e])return void y[e].push(t);if(void 0!==n)for(var o,i,u=document.getElementsByTagName("script"),c=0;c<u.length;c++){var a=u[c];if(a.getAttribute("src")==e||a.getAttribute("data-rspack")=="@nocobase/plugin-acl/client-v2:"+n){o=a;break}}o||(i=!0,(o=document.createElement("script")).timeout=120,d.nc&&o.setAttribute("nonce",d.nc),o.setAttribute("data-rspack","@nocobase/plugin-acl/client-v2:"+n),o.src=e),y[e]=[t];var l=function(t,n){o.onerror=o.onload=null,clearTimeout(s);var r=y[e];if(delete y[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach(function(e){return e(n)}),t)return t(n)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),i&&document.head.appendChild(o)},d.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},d.g.importScripts&&(g=d.g.location+"");var h,v,y,g,m=d.g.document;if(!g&&m&&(m.currentScript&&"SCRIPT"===m.currentScript.tagName.toUpperCase()&&(g=m.currentScript.src),!g)){var w=m.getElementsByTagName("script");if(w.length)for(var _=w.length-1;_>-1&&(!g||!/^http(s?):/.test(g));)g=w[_--].src}if(!g)throw Error("Automatic publicPath is not supported in this browser");d.p=g.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),u={889:0},d.f.j=function(e,t){var n=d.o(u,e)?u[e]:void 0;if(0!==n)if(n)t.push(n[2]);else{var r=new Promise(function(t,r){n=u[e]=[t,r]});t.push(n[2]=r);var o=d.p+d.u(e),i=Error();d.l(o,function(t){if(d.o(u,e)&&(0!==(n=u[e])&&(u[e]=void 0),n)){var r=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;i.message="Loading chunk "+e+" failed.\n("+r+": "+o+")",i.name="ChunkLoadError",i.type=r,i.request=o,n[1](i)}},"chunk-"+e,e)}},c=function(e,t){var n,r,o=t[0],i=t[1],c=t[2],a=0;if(o.some(function(e){return 0!==u[e]})){for(n in i)d.o(i,n)&&(d.m[n]=i[n]);c&&c(d)}for(e&&e(t);a<o.length;a++)r=o[a],d.o(u,r)&&u[r]&&u[r][0](),u[r]=0},(a=self.webpackChunk_nocobase_plugin_acl_client_v2=self.webpackChunk_nocobase_plugin_acl_client_v2||[]).forEach(c.bind(null,0)),a.push=c.bind(null,a.push.bind(a));var O={};return!function(){var e="",t="u">typeof document?document.currentScript:null;if(t&&t.src){var n=t.src.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"");n.indexOf("/static/plugins/@nocobase/plugin-acl/dist/client-v2/")>=0&&(e=n.replace(/\/[^\/]+$/,"/"))}if(!e){var r=window.__webpack_public_path__||"";r&&("/"!==r.charAt(r.length-1)&&(r+="/"),e=r+"static/plugins/@nocobase/plugin-acl/dist/client-v2/")}if(!e){var o=window.__nocobase_modern_client_prefix__||"v",i="/"+(o=String(o).replace(/^\/+|\/+$/g,"")||"v")+"/";if(!(e=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var u=window.location.pathname||"/",c=u.indexOf(i);e=c>=0?u.slice(0,c+1):"/"}e&&(e=e.replace(RegExp("/"+o+"/?$"),"/")),e||(e="/"),"/"!==e.charAt(e.length-1)&&(e+="/"),e+="static/plugins/@nocobase/plugin-acl/dist/client-v2/"}d.p=e}(),d.r(O),d.d(O,{ACLSettingsUI:function(){return f.k},NAMESPACE:function(){return s.CU},PluginAclClientV2:function(){return l.h},RolesManager:function(){return f.H},default:function(){return l.A},tExpr:function(){return s.MZ},useT:function(){return s.kj}}),l=d(667),s=d(488),f=d(101),O}()});
|
package/dist/externalVersion.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
module.exports = {
|
|
11
|
-
"@nocobase/client": "
|
|
11
|
+
"@nocobase/client": "3.0.0-alpha.2",
|
|
12
12
|
"antd": "5.24.2",
|
|
13
13
|
"react": "18.2.0",
|
|
14
14
|
"react-i18next": "11.18.6",
|
|
@@ -17,15 +17,15 @@ module.exports = {
|
|
|
17
17
|
"@formily/react": "2.3.7",
|
|
18
18
|
"@ant-design/icons": "5.6.1",
|
|
19
19
|
"lodash": "4.18.1",
|
|
20
|
-
"@nocobase/utils": "
|
|
21
|
-
"@nocobase/flow-engine": "
|
|
22
|
-
"@nocobase/client-v2": "
|
|
23
|
-
"@nocobase/actions": "
|
|
24
|
-
"@nocobase/cache": "
|
|
25
|
-
"@nocobase/database": "
|
|
26
|
-
"@nocobase/server": "
|
|
27
|
-
"@nocobase/acl": "
|
|
28
|
-
"@nocobase/test": "
|
|
20
|
+
"@nocobase/utils": "3.0.0-alpha.2",
|
|
21
|
+
"@nocobase/flow-engine": "3.0.0-alpha.2",
|
|
22
|
+
"@nocobase/client-v2": "3.0.0-alpha.2",
|
|
23
|
+
"@nocobase/actions": "3.0.0-alpha.2",
|
|
24
|
+
"@nocobase/cache": "3.0.0-alpha.2",
|
|
25
|
+
"@nocobase/database": "3.0.0-alpha.2",
|
|
26
|
+
"@nocobase/server": "3.0.0-alpha.2",
|
|
27
|
+
"@nocobase/acl": "3.0.0-alpha.2",
|
|
28
|
+
"@nocobase/test": "3.0.0-alpha.2",
|
|
29
29
|
"@formily/core": "2.3.7",
|
|
30
30
|
"@formily/antd-v5": "1.2.3",
|
|
31
31
|
"antd-style": "3.7.1"
|
package/dist/swagger/index.d.ts
CHANGED
package/dist/swagger/index.js
CHANGED
|
@@ -944,6 +944,11 @@ var swagger_default = {
|
|
|
944
944
|
type: "object",
|
|
945
945
|
properties: {
|
|
946
946
|
role: { type: "string", description: "Current effective role name." },
|
|
947
|
+
roles: {
|
|
948
|
+
type: "array",
|
|
949
|
+
items: { type: "string" },
|
|
950
|
+
description: "Role names participating in the current effective ACL context."
|
|
951
|
+
},
|
|
947
952
|
roleMode: {
|
|
948
953
|
type: "string",
|
|
949
954
|
enum: ["default", "allow-use-union", "only-use-union"],
|
package/package.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"description": "Based on roles, resources, and actions, access control can precisely manage interface configuration permissions, data operation permissions, menu access permissions, and plugin permissions.",
|
|
7
7
|
"description.ru-RU": "На основе ролей, ресурсов и действий система контроля доступа может точно управлять разрешениями на изменение интерфейса, работу с данными, доступ к меню и разрешениями для подключаемых модулей.",
|
|
8
8
|
"description.zh-CN": "基于角色、资源和操作的权限控制,可以精确控制界面配置权限、数据操作权限、菜单访问权限、插件权限。",
|
|
9
|
-
"version": "
|
|
9
|
+
"version": "3.0.0-alpha.2",
|
|
10
10
|
"license": "Apache-2.0",
|
|
11
11
|
"main": "./dist/server/index.js",
|
|
12
12
|
"homepage": "https://docs.nocobase.com/handbook/acl",
|
|
@@ -46,5 +46,5 @@
|
|
|
46
46
|
"url": "git+https://github.com/nocobase/nocobase.git",
|
|
47
47
|
"directory": "packages/plugins/acl"
|
|
48
48
|
},
|
|
49
|
-
"gitHead": "
|
|
49
|
+
"gitHead": "a3faea21082b30989301de04591ee1b91fd4e6a5"
|
|
50
50
|
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This file is part of the NocoBase (R) project.
|
|
3
|
-
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
-
* Authors: NocoBase Team.
|
|
5
|
-
*
|
|
6
|
-
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
-
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
"use strict";(self.webpackChunk_nocobase_plugin_acl_client_v2=self.webpackChunk_nocobase_plugin_acl_client_v2||[]).push([["800"],{235:function(e,t,n){n.r(t),n.d(t,{default:function(){return g}});var r=n(485),o=n(694),u=n(625),a=n(59),i=n(773),c=n(155),l=n.n(c),s=n(488);function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function d(e,t,n,r,o,u,a){try{var i=e[u](a),c=i.value}catch(e){n(e);return}i.done?t(c):Promise.resolve(c).then(r,o)}function p(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var u=e.apply(t,n);function a(e){d(u,r,o,a,i,"next",e)}function i(e){d(u,r,o,a,i,"throw",e)}a(void 0)})}}function y(e){return function(e){if(Array.isArray(e))return f(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||h(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,t){if(e){if("string"==typeof e)return f(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return f(e,t)}}function b(e,t){var n,r,o,u={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),i=Object.defineProperty;return i(a,"next",{value:c(0)}),i(a,"throw",{value:c(1)}),i(a,"return",{value:c(2)}),"function"==typeof Symbol&&i(a,Symbol.iterator,{value:function(){return this}}),a;function c(i){return function(c){var l=[i,c];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(u=0)),u;)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 u.label++,{value:l[1],done:!1};case 5:u.label++,r=l[1],l=[0];continue;case 7:l=u.ops.pop(),u.trys.pop();continue;default:if(!(o=(o=u.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){u=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){u.label=l[1];break}if(6===l[0]&&u.label<o[1]){u.label=o[1],o=l;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(l);break}o[2]&&u.ops.pop(),u.trys.pop();continue}l=t.call(e,u)}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}}}}function m(e){return Array.isArray(e)?e.flatMap(function(e){return[e.id].concat(y(m(e.children)))}):[]}function v(e){return e&&(void 0===e?"undefined":e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e)=="object"?{data:Array.isArray(e.data)?e.data:[]}:{}}function g(e){var t,n=(0,o.useFlowContext)(),f=(0,s.kj)(),d=a.theme.useToken().token,g=e.activeRole,w=function(e){if(Array.isArray(e))return e}(t=(0,c.useState)([]))||function(e){var t,n,r=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var o=[],u=!0,a=!1;try{for(r=r.call(e);!(u=(t=r.next()).done)&&(o.push(t.value),2!==o.length);u=!0);}catch(e){a=!0,n=e}finally{try{u||null==r.return||r.return()}finally{if(a)throw n}}return o}}(t)||h(t,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),O=w[0],S=w[1],j="menu"===e.activeKey,k=(0,u.useRequest)(function(){return p(function(){var e,t;return b(this,function(r){switch(r.label){case 0:return[4,n.api.resource("desktopRoutes").list({tree:!0,sort:"sort",paginate:!1,filter:{hidden:{$ne:!0}}})];case 1:return[2,null!=(e=v(null==(t=r.sent())?void 0:t.data).data)?e:[]]}})})()},{ready:j,refreshDeps:[j]}),A=(0,c.useMemo)(function(){return function e(t,n){return Array.isArray(t)?t.map(function(t){var r=e(t.children,t.id);return{id:t.id,title:t.title,parentId:n,children:r.length?r:void 0}}):[]}(k.data)},[k.data]),x=(0,c.useMemo)(function(){return function e(t){return t.flatMap(function(t){var n;return[t].concat(y(e(null!=(n=t.children)?n:[])))})}(A)},[A]),I=(0,c.useMemo)(function(){return m(A)},[A]),M=(0,c.useMemo)(function(){return new Map(x.map(function(e){return[e.id,e]}))},[x]),P=g?n.api.resource("roles.desktopRoutes",g.name):null,E=(0,u.useRequest)(function(){return p(function(){var e,t,n;return b(this,function(r){switch(r.label){case 0:if(!P)return[2,[]];return[4,P.list({paginate:!1,filter:{hidden:{$ne:!0}}})];case 1:return[2,null!=(e=null==(t=v(null==(n=r.sent())?void 0:n.data).data)?void 0:t.map(function(e){return e.id}))?e:[]]}})})()},{ready:j&&!!P,refreshDeps:[null==g?void 0:g.name,j],onSuccess:function(e){S(e)}}),C=(0,u.useMemoizedFn)(function(){return p(function(){var e;return b(this,function(t){switch(t.label){case 0:if(!P)return[2];return S(e=O.length===I.length?[]:I),[4,P.set({values:e})];case 1:return t.sent(),[4,E.refreshAsync()];case 2:return t.sent(),n.message.success(f("Saved successfully")),[2]}})})()}),T=(0,u.useMemoizedFn)(function(e){return p(function(){var t,r,o,u,a,c;return b(this,function(l){switch(l.label){case 0:if(!P)return[2];if(t=O.includes(e.id),r=m(e.children),o=t?O.filter(function(t){return t!==e.id&&!r.includes(t)}):(0,i.uniq)(y(O).concat([e.id],y(r))),e.parentId&&(c=null==(a=M.get(e.parentId))||null==(u=a.children)?void 0:u.some(function(e){return o.includes(e.id)}),t&&!c&&(o=o.filter(function(t){return t!==e.parentId})),t||o.includes(e.parentId)||o.push(e.parentId)),S(o),!t)return[3,2];return[4,P.remove({values:O.filter(function(e){return!o.includes(e)})})];case 1:return l.sent(),[3,4];case 2:return[4,P.add({values:o.filter(function(e){return!O.includes(e)})})];case 3:l.sent(),l.label=4;case 4:return[4,E.refreshAsync()];case 5:return l.sent(),n.message.success(f("Saved successfully")),[2]}})})()}),_=(0,c.useMemo)(function(){return[{dataIndex:"title",title:f("Route name"),render:function(e){return"string"!=typeof e?f("Unnamed"):f(e)||f("Unnamed")}},{dataIndex:"accessible",title:l().createElement(a.Checkbox,{checked:!!I.length&&O.length===I.length,onChange:C},f("Allow access")),render:function(e,t){return l().createElement(a.Checkbox,{checked:O.includes(t.id),onChange:function(){return T(t)}})}}]},[I.length,O,C,f,T]);return g?l().createElement("div",{style:{width:"100%",display:"flex",flexDirection:"column",gap:d.marginSM}},l().createElement(a.Typography.Text,{strong:!0},f("Route permissions")),l().createElement(a.Checkbox,{checked:!!g.allowNewMenu,onChange:function(t){return p(function(){var r;return b(this,function(o){var u,a,i;switch(o.label){case 0:return[4,(u={allowNewMenu:r=t.target.checked},p(function(){return b(this,function(e){switch(e.label){case 0:return[4,n.api.resource("roles").update({filterByTk:g.name,values:u})];case 1:return e.sent(),[2]}})})())];case 1:return o.sent(),e.onRoleChange((a=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}({},g),i=i={allowNewMenu:r},Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(i)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(i)).forEach(function(e){Object.defineProperty(a,e,Object.getOwnPropertyDescriptor(i,e))}),a)),n.message.success(f("Saved successfully")),[2]}})})()}},f("New routes are allowed to be accessed by default")),l().createElement(r.Table,{rowKey:"id",loading:k.loading||E.loading,pagination:!1,expandable:{defaultExpandAllRows:!1},columns:_,dataSource:A})):l().createElement(a.Typography.Text,{type:"secondary"},f("Select a role to configure permissions"))}}}]);
|