@nocobase/plugin-acl 1.4.0-alpha.9 → 1.5.0-alpha.1
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/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("@nocobase/client"),require("react"),require("react-i18next"),require("@ant-design/icons"),require("@formily/shared"),require("@formily/core"),require("@formily/react"),require("@nocobase/utils"),require("antd"),require("antd-style"),require("lodash"),require("ahooks")):"function"==typeof define&&define.amd?define("@nocobase/plugin-acl",["@nocobase/client","react","react-i18next","@ant-design/icons","@formily/shared","@formily/core","@formily/react","@nocobase/utils","antd","antd-style","lodash","ahooks"],t):"object"==typeof exports?exports["@nocobase/plugin-acl"]=t(require("@nocobase/client"),require("react"),require("react-i18next"),require("@ant-design/icons"),require("@formily/shared"),require("@formily/core"),require("@formily/react"),require("@nocobase/utils"),require("antd"),require("antd-style"),require("lodash"),require("ahooks")):e["@nocobase/plugin-acl"]=t(e["@nocobase/client"],e.react,e["react-i18next"],e["@ant-design/icons"],e["@formily/shared"],e["@formily/core"],e["@formily/react"],e["@nocobase/utils"],e.antd,e["antd-style"],e.lodash,e.ahooks)}(self,function(e,t,n,r,o,i,a,u,c,l,s,f){return function(){var p={7973:function(e,t,n){var r=n(1783),o=n(1012),i=n(9900),a=n(6691),u=n(2018);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=a,c.prototype.set=u,e.exports=c},2768:function(e,t,n){var r=n(9896),o=n(2473),i=n(4678),a=n(1240),u=n(4296);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=a,c.prototype.set=u,e.exports=c},1725:function(e,t,n){var r=n(6369)(n(5031),"Map");e.exports=r},736:function(e,t,n){var r=n(6660),o=n(8472),i=n(5637),a=n(9389),u=n(9804);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=a,c.prototype.set=u,e.exports=c},8995:function(e,t,n){var r=n(6369)(n(5031),"Set");e.exports=r},5106:function(e,t,n){var r=n(736),o=n(4867),i=n(9428);function a(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new r;++t<n;)this.add(e[t])}a.prototype.add=a.prototype.push=o,a.prototype.has=i,e.exports=a},5869:function(e,t,n){var r=n(5031).Symbol;e.exports=r},7485:function(e){e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},9360:function(e,t,n){var r=n(7667);e.exports=function(e,t){return!!(null==e?0:e.length)&&r(e,t,0)>-1}},5987:function(e){e.exports=function(e,t,n){for(var r=-1,o=null==e?0:e.length;++r<o;)if(n(t,e[r]))return!0;return!1}},2467:function(e){e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,o=Array(r);++n<r;)o[n]=t(e[n],n,e);return o}},3571:function(e){e.exports=function(e,t){for(var n=-1,r=t.length,o=e.length;++n<r;)e[o+n]=t[n];return e}},5699:function(e,t,n){var r=n(2544),o=n(3947),i=Object.prototype.hasOwnProperty;e.exports=function(e,t,n){var a=e[t];(!(i.call(e,t)&&o(a,n))||void 0===n&&!(t in e))&&r(e,t,n)}},8746:function(e,t,n){var r=n(3947);e.exports=function(e,t){for(var n=e.length;n--;)if(r(e[n][0],t))return n;return -1}},2544:function(e,t,n){var r=n(6554);e.exports=function(e,t,n){"__proto__"==t&&r?r(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}},9443:function(e){e.exports=function(e,t,n,r){for(var o=e.length,i=n+(r?1:-1);r?i--:++i<o;)if(t(e[i],i,e))return i;return -1}},6195:function(e,t,n){var r=n(3571),o=n(1449);e.exports=function e(t,n,i,a,u){var c=-1,l=t.length;for(i||(i=o),u||(u=[]);++c<l;){var s=t[c];n>0&&i(s)?n>1?e(s,n-1,i,a,u):r(u,s):!a&&(u[u.length]=s)}return u}},304:function(e,t,n){var r=n(322),o=n(5107);e.exports=function(e,t){t=r(t,e);for(var n=0,i=t.length;null!=e&&n<i;)e=e[o(t[n++])];return n&&n==i?e:void 0}},4365:function(e,t,n){var r=n(5869),o=n(7043),i=n(5283),a=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":a&&a in Object(e)?o(e):i(e)}},1547:function(e){e.exports=function(e,t){return null!=e&&t in Object(e)}},7667:function(e,t,n){var r=n(9443),o=n(1222),i=n(3691);e.exports=function(e,t,n){return t==t?i(e,t,n):r(e,o,n)}},8719:function(e,t,n){var r=n(4365),o=n(5620);e.exports=function(e){return o(e)&&"[object Arguments]"==r(e)}},1222:function(e){e.exports=function(e){return e!=e}},9930:function(e,t,n){var r=n(3098),o=n(8754),i=n(2917),a=n(1304),u=/^\[object .+?Constructor\]$/,c=Object.prototype,l=Function.prototype.toString,s=c.hasOwnProperty,f=RegExp("^"+l.call(s).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!i(e)||o(e))&&(r(e)?f:u).test(a(e))}},3897:function(e,t,n){var r=n(3405),o=n(9459);e.exports=function(e,t){return r(e,t,function(t,n){return o(e,n)})}},3405:function(e,t,n){var r=n(304),o=n(7113),i=n(322);e.exports=function(e,t,n){for(var a=-1,u=t.length,c={};++a<u;){var l=t[a],s=r(e,l);n(s,l)&&o(c,i(l,e),s)}return c}},7113:function(e,t,n){var r=n(5699),o=n(322),i=n(3501),a=n(2917),u=n(5107);e.exports=function(e,t,n,c){if(!a(e))return e;t=o(t,e);for(var l=-1,s=t.length,f=s-1,p=e;null!=p&&++l<s;){var y=u(t[l]),d=n;if("__proto__"===y||"constructor"===y||"prototype"===y)break;if(l!=f){var v=p[y];void 0===(d=c?c(v,y,p):void 0)&&(d=a(v)?v:i(t[l+1])?[]:{})}r(p,y,d),p=p[y]}return e}},1792:function(e,t,n){var r=n(6710),o=n(6554),i=n(9974),a=o?function(e,t){return o(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:i;e.exports=a},4200:function(e,t,n){var r=n(5869),o=n(2467),i=n(6227),a=n(9528),u=1/0,c=r?r.prototype:void 0,l=c?c.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(i(t))return o(t,e)+"";if(a(t))return l?l.call(t):"";var n=t+"";return"0"==n&&1/t==-u?"-0":n}},1826:function(e,t,n){var r=n(5106),o=n(9360),i=n(5987),a=n(8342),u=n(4248),c=n(735);e.exports=function(e,t,n){var l=-1,s=o,f=e.length,p=!0,y=[],d=y;if(n)p=!1,s=i;else if(f>=200){var v=t?null:u(e);if(v)return c(v);p=!1,s=a,d=new r}else d=t?[]:y;e:for(;++l<f;){var m=e[l],b=t?t(m):m;if(m=n||0!==m?m:0,p&&b==b){for(var h=d.length;h--;)if(d[h]===b)continue e;t&&d.push(b),y.push(m)}else!s(d,b,n)&&(d!==y&&d.push(b),y.push(m))}return y}},8342:function(e){e.exports=function(e,t){return e.has(t)}},322:function(e,t,n){var r=n(6227),o=n(8447),i=n(9765),a=n(2954);e.exports=function(e,t){return r(e)?e:o(e,t)?[e]:i(a(e))}},3823:function(e,t,n){var r=n(5031)["__core-js_shared__"];e.exports=r},4248:function(e,t,n){var r=n(8995),o=n(555),i=n(735),a=r&&1/i(new r([,-0]))[1]==1/0?function(e){return new r(e)}:o;e.exports=a},6554:function(e,t,n){var r=n(6369),o=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();e.exports=o},794:function(e,t,n){var r=n(3219),o=n(2478),i=n(8286);e.exports=function(e){return i(o(e,void 0,r),e+"")}},5274:function(e,t,n){var r="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;e.exports=r},9623:function(e,t,n){var r=n(9005);e.exports=function(e,t){var n=e.__data__;return r(t)?n["string"==typeof t?"string":"hash"]:n.map}},6369:function(e,t,n){var r=n(9930),o=n(4502);e.exports=function(e,t){var n=o(e,t);return r(n)?n:void 0}},7043:function(e,t,n){var r=n(5869),o=Object.prototype,i=o.hasOwnProperty,a=o.toString,u=r?r.toStringTag:void 0;e.exports=function(e){var t=i.call(e,u),n=e[u];try{e[u]=void 0;var r=!0}catch(e){}var o=a.call(e);return r&&(t?e[u]=n:delete e[u]),o}},4502:function(e){e.exports=function(e,t){return null==e?void 0:e[t]}},6953:function(e,t,n){var r=n(322),o=n(8497),i=n(6227),a=n(3501),u=n(6613),c=n(5107);e.exports=function(e,t,n){t=r(t,e);for(var l=-1,s=t.length,f=!1;++l<s;){var p=c(t[l]);if(!(f=null!=e&&n(e,p)))break;e=e[p]}return f||++l!=s?f:!!(s=null==e?0:e.length)&&u(s)&&a(p,s)&&(i(e)||o(e))}},1783:function(e,t,n){var r=n(8163);e.exports=function(){this.__data__=r?r(null):{},this.size=0}},1012:function(e){e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},9900:function(e,t,n){var r=n(8163),o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(r){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return o.call(t,e)?t[e]:void 0}},6691:function(e,t,n){var r=n(8163),o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:o.call(t,e)}},2018:function(e,t,n){var r=n(8163);e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=r&&void 0===t?"__lodash_hash_undefined__":t,this}},1449:function(e,t,n){var r=n(5869),o=n(8497),i=n(6227),a=r?r.isConcatSpreadable:void 0;e.exports=function(e){return i(e)||o(e)||!!(a&&e&&e[a])}},3501:function(e){var t=/^(?:0|[1-9]\d*)$/;e.exports=function(e,n){var r=typeof e;return!!(n=null==n?0x1fffffffffffff:n)&&("number"==r||"symbol"!=r&&t.test(e))&&e>-1&&e%1==0&&e<n}},8447:function(e,t,n){var r=n(6227),o=n(9528),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;e.exports=function(e,t){if(r(e))return!1;var n=typeof e;return!!("number"==n||"symbol"==n||"boolean"==n||null==e||o(e))||a.test(e)||!i.test(e)||null!=t&&e in Object(t)}},9005:function(e){e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},8754:function(e,t,n){var r,o=n(3823);var i=(r=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";e.exports=function(e){return!!i&&i in e}},9896:function(e){e.exports=function(){this.__data__=[],this.size=0}},2473:function(e,t,n){var r=n(8746),o=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0)&&(n==t.length-1?t.pop():o.call(t,n,1),--this.size,!0)}},4678:function(e,t,n){var r=n(8746);e.exports=function(e){var t=this.__data__,n=r(t,e);return n<0?void 0:t[n][1]}},1240:function(e,t,n){var r=n(8746);e.exports=function(e){return r(this.__data__,e)>-1}},4296:function(e,t,n){var r=n(8746);e.exports=function(e,t){var n=this.__data__,o=r(n,e);return o<0?(++this.size,n.push([e,t])):n[o][1]=t,this}},6660:function(e,t,n){var r=n(7973),o=n(2768),i=n(1725);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(i||o),string:new r}}},8472:function(e,t,n){var r=n(9623);e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},5637:function(e,t,n){var r=n(9623);e.exports=function(e){return r(this,e).get(e)}},9389:function(e,t,n){var r=n(9623);e.exports=function(e){return r(this,e).has(e)}},9804:function(e,t,n){var r=n(9623);e.exports=function(e,t){var n=r(this,e),o=n.size;return n.set(e,t),this.size+=n.size==o?0:1,this}},662:function(e,t,n){var r=n(6983);e.exports=function(e){var t=r(e,function(e){return 500===n.size&&n.clear(),e}),n=t.cache;return t}},8163:function(e,t,n){var r=n(6369)(Object,"create");e.exports=r},5283:function(e){var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},2478:function(e,t,n){var r=n(7485),o=Math.max;e.exports=function(e,t,n){return t=o(void 0===t?e.length-1:t,0),function(){for(var i=arguments,a=-1,u=o(i.length-t,0),c=Array(u);++a<u;)c[a]=i[t+a];a=-1;for(var l=Array(t+1);++a<t;)l[a]=i[a];return l[t]=n(c),r(e,this,l)}}},5031:function(e,t,n){var r=n(5274),o="object"==typeof self&&self&&self.Object===Object&&self,i=r||o||Function("return this")();e.exports=i},4867:function(e){e.exports=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}},9428:function(e){e.exports=function(e){return this.__data__.has(e)}},735:function(e){e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}},8286:function(e,t,n){var r=n(1792),o=n(1358)(r);e.exports=o},1358:function(e){var t=Date.now;e.exports=function(e){var n=0,r=0;return function(){var o=t(),i=16-(o-r);if(r=o,i>0){if(++n>=800)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}},3691:function(e){e.exports=function(e,t,n){for(var r=n-1,o=e.length;++r<o;)if(e[r]===t)return r;return -1}},9765:function(e,t,n){var r=n(662),o=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,a=r(function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(o,function(e,n,r,o){t.push(r?o.replace(i,"$1"):n||e)}),t});e.exports=a},5107:function(e,t,n){var r=n(9528),o=1/0;e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-o?"-0":t}},1304:function(e){var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(e){}try{return e+""}catch(e){}}return""}},6710:function(e){e.exports=function(e){return function(){return e}}},3947:function(e){e.exports=function(e,t){return e===t||e!=e&&t!=t}},3219:function(e,t,n){var r=n(6195);e.exports=function(e){return(null==e?0:e.length)?r(e,1):[]}},9459:function(e,t,n){var r=n(1547),o=n(6953);e.exports=function(e,t){return null!=e&&o(e,t,r)}},9974:function(e){e.exports=function(e){return e}},8497:function(e,t,n){var r=n(8719),o=n(5620),i=Object.prototype,a=i.hasOwnProperty,u=i.propertyIsEnumerable,c=r(function(){return arguments}())?r:function(e){return o(e)&&a.call(e,"callee")&&!u.call(e,"callee")};e.exports=c},6227:function(e){var t=Array.isArray;e.exports=t},3098:function(e,t,n){var r=n(4365),o=n(2917);e.exports=function(e){if(!o(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},6613:function(e){e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=0x1fffffffffffff}},2917:function(e){e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},5620:function(e){e.exports=function(e){return null!=e&&"object"==typeof e}},9528:function(e,t,n){var r=n(4365),o=n(5620);e.exports=function(e){return"symbol"==typeof e||o(e)&&"[object Symbol]"==r(e)}},6983:function(e,t,n){var r=n(736);function o(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw TypeError("Expected a function");var n=function(){var r=arguments,o=t?t.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var a=e.apply(this,r);return n.cache=i.set(o,a)||i,a};return n.cache=new(o.Cache||r),n}o.Cache=r,e.exports=o},555:function(e){e.exports=function(){}},5773:function(e,t,n){var r=n(3897),o=n(794)(function(e,t){return null==e?{}:r(e,t)});e.exports=o},2954:function(e,t,n){var r=n(4200);e.exports=function(e){return null==e?"":r(e)}},8402:function(e,t,n){var r=n(1826);e.exports=function(e){return e&&e.length?r(e):[]}},482:function(e){"use strict";e.exports=r},8563:function(e){"use strict";e.exports=i},3505:function(e){"use strict";e.exports=a},8875:function(e){"use strict";e.exports=o},3772:function(t){"use strict";t.exports=e},9473:function(e){"use strict";e.exports=u},2749:function(e){"use strict";e.exports=f},2721:function(e){"use strict";e.exports=c},8202:function(e){"use strict";e.exports=l},467:function(e){"use strict";e.exports=s},8156:function(e){"use strict";e.exports=t},3238:function(e){"use strict";e.exports=n}},y={};function d(e){var t=y[e];if(void 0!==t)return t.exports;var n=y[e]={exports:{}};return p[e](n,n.exports,d),n.exports}d.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return d.d(t,{a:t}),t},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.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)},d.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var v={};return!function(){"use strict";d.r(v),d.d(v,{PluginACLClient:function(){return ez},default:function(){return e$},RolesManagerContext:function(){return p}});var e=d("3772"),t=d("8156"),n=d.n(t),r=d("8563"),o=d("3505"),i=d("8875"),a=d("2749"),u=d("2721"),c=d("8402"),l=d.n(c),s=d("3238");function f(){return(0,s.useTranslation)(["@nocobase/plugin-acl","client"],{nsMode:"fallback"})}var p=(0,t.createContext)({role:null});p.displayName="RolesManagerContext";var y=d("467"),m=d.n(y),b=d("8202");function h(){var e,t,n=(e=["\n .ant-table-cell {\n > .ant-space-horizontal {\n .ant-space-item-split:has(+ .ant-space-item:empty) {\n display: none;\n }\n }\n }\n "],!t&&(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return h=function(){return n},n}var g=(0,b.createStyles)(function(e){return(0,e.css)(h())});function x(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 w(e,t,n,r,o,i,a){try{var u=e[i](a),c=u.value}catch(e){n(e);return}u.done?t(c):Promise.resolve(c).then(r,o)}function O(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){w(i,r,o,a,u,"next",e)}function u(e){w(i,r,o,a,u,"throw",e)}a(void 0)})}}function S(e,t){if(e){if("string"==typeof e)return x(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 x(e,t)}}function j(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:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}var E=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=!0,r=!1,o=void 0;try{for(var i,a=e[Symbol.iterator]();!(n=(i=a.next()).done);n=!0){var u=i.value;t.push(u.aclSnippet),u.children&&u.children.length&&E(u.children,t)}}catch(e){r=!0,o=e}finally{try{!n&&null!=a.return&&a.return()}finally{if(r)throw o}}return t},A=function(r){var o,i,a,c=r.active,l=(0,e.useApp)(),f=g().styles,d=(0,t.useContext)(p).role,v=(0,e.useAPIClient)(),b=(0,e.useCompile)(),h=l.pluginSettingsManager.getList(!1),w=l.pluginSettingsManager.getAclSnippets();var A=(o=(0,t.useState)((null==d?void 0:d.snippets)||[]),i=2,function(e){if(Array.isArray(e))return e}(o)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,u=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{!a&&null!=o.return&&o.return()}finally{if(u)throw r}}return i}}(o,2)||S(o,i)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),P=A[0],_=A[1],C=(0,t.useMemo)(function(){return(0,y.flatMap)(h,function(e){var t;if(!e.children)return e;return[e].concat(function(e){if(Array.isArray(e))return x(e)}(t=e.children)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||S(t)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())})},[h]),k=(0,t.useMemo)(function(){return P.includes("pm.*")&&P.every(function(e){return!e.startsWith("!pm.")})},[P]),I=(0,s.useTranslation)().t,T=(0,e.useRequest)({resource:"roles.snippets",resourceOf:null==d?void 0:d.name,action:"list",params:{paginate:!1}},{ready:!!d&&c,refreshDeps:[null==d?void 0:d.name],manual:!0,onSuccess:function(e){_((null==e?void 0:e.data.filter(function(e){return C.find(function(t){return e.includes("!".concat(t.aclSnippet))||!e.startsWith("!pm.")})}))||[])}}),M=T.loading,R=T.refresh;if(!!d){var D=v.resource("roles.snippets",null==d?void 0:d.name);var F=(a=O(function(e,t){var n;return j(this,function(r){switch(r.label){case 0:if(n=E(null==t?void 0:t.children,[]).concat(t.aclSnippet),e)return[3,2];return[4,D.remove({values:n.map(function(e){return"!"+e})})];case 1:return r.sent(),R(),[3,4];case 2:return[4,D.add({values:n.map(function(e){return"!"+e})})];case 3:r.sent(),R(),r.label=4;case 4:return u.message.success(I("Saved successfully")),[2]}})}),function(e,t){return a.apply(this,arguments)});return n().createElement(u.Table,{className:f,loading:M,rowKey:"key",pagination:!1,expandable:{defaultExpandAllRows:!0},columns:[{dataIndex:"title",title:I("Plugin name"),render:function(e){return b(e)}},{dataIndex:"accessible",title:n().createElement(n().Fragment,null,n().createElement(u.Checkbox,{checked:k,onChange:O(function(){var e;return j(this,function(t){switch(t.label){case 0:if(e=w.map(function(e){return"!"+e}),k)return[3,2];return[4,D.remove({values:e})];case 1:return t.sent(),[3,4];case 2:return[4,D.add({values:e})];case 3:t.sent(),t.label=4;case 4:return R(),u.message.success(I("Saved successfully")),[2]}})})}),I("Accessible")),render:function(e,t){var r=!P.includes("!"+t.aclSnippet);return n().createElement(u.Checkbox,{checked:r,onChange:function(){return F(r,t)}})}}],dataSource:h.filter(function(e){return!1!==e.isTopLevel}).map(function(e){return!1!==e.showTabs?e:m().omit(e,"children")})})}},P=(0,t.createContext)([]);P.displayName="AvailableActionsContext";var _=function(t){var r=(0,e.useRequest)({resource:"availableActions",action:"list"}),o=r.data;return r.loading?n().createElement(u.Spin,null):n().createElement(P.Provider,{value:null==o?void 0:o.data},t.children)};function C(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}var k=function(e){if(!e)return{};var t,n={};return null==e||null===(t=e.forEach)||void 0===t||t.call(e,function(e){var t,r,o=(t=e.split(":"),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,u=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{!a&&null!=o.return&&o.return()}finally{if(u)throw r}}return i}}(t,2)||function(e,t){if(e){if("string"==typeof e)return C(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 C(e,t)}}(t,r)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=o[0],a=o[1];n[i]=a||"all"}),n},I=function(e){var t=[];for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){var r=e[n];"all"===r?t.push(n):t.push("".concat(n,":").concat(r))}return t},T=(0,o.connect)(function(r){var i=r.onChange,a=(0,t.useContext)(P),c=(0,e.useCompile)(),l=(0,s.useTranslation)().t,f=k((0,o.useField)().value);return n().createElement("div",null,n().createElement(u.Table,{rowKey:"name",size:"small",pagination:!1,columns:[{dataIndex:"displayName",title:l("Action display name"),render:function(e){return c(e)}},{dataIndex:"onNewRecord",title:l("Action type"),render:function(e){return e?n().createElement(u.Tag,{color:"green"},l("Action on new records")):n().createElement(u.Tag,{color:"geekblue"},l("Action on existing records"))}},{dataIndex:"enabled",title:l("Allow"),render:function(e,t){return n().createElement(u.Checkbox,{checked:e,"aria-label":"".concat(t.name,"_checkbox"),onChange:function(n){e?delete f[t.name]:f[t.name]="all",i(I(f))}})}},{dataIndex:"scope",title:l("Data scope"),render:function(e,t){return!t.onNewRecord&&n().createElement(u.Select,{"data-testid":"select-data-scope",popupMatchSelectWidth:!1,size:"small",value:e,options:[{label:l("All records"),value:"all"},{label:l("Own records"),value:"own"}],onChange:function(e){f[t.name]=e,i(I(f))}})}}],dataSource:null==a?void 0:a.map(function(e){var t,n,r="all",o=!1;return f[e.name]&&(o=!0,r=f[e.name]),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,o,i;r=e,o=t,i=n[t],o in r?Object.defineProperty(r,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[o]=i})}return e}({},e),n=(n={enabled:o,scope:r},n),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 M(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function R(e,t,n,r,o,i,a){try{var u=e[i](a),c=u.value}catch(e){n(e);return}u.done?t(c):Promise.resolve(c).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){R(i,r,o,a,u,"next",e)}function u(e){R(i,r,o,a,u,"throw",e)}a(void 0)})}}function F(e){return function(e){if(Array.isArray(e))return M(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return M(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return M(e,t)}}(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 q(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:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}var z=(0,o.connect)(function(e){var t=(0,s.useTranslation)().t;return n().createElement(u.Checkbox.Group,{style:{width:"100%",display:"block"},value:e.value,onChange:function(t){var n=["ui.*","pm","pm.*","app"],r=n.map(function(e){return"!".concat(e)}),o=l()(F(e.value||[]).concat(F(t))).filter(function(e){return e&&!r.includes(e)}).map(function(e){return!n.includes(e)||(null==t?void 0:t.includes(e))?e:"!".concat(e)}),i=!0,a=!1,u=void 0;try{for(var c,s=n[Symbol.iterator]();!(i=(c=s.next()).done);i=!0){var f=c.value;!o.includes(f)&&!o.includes("!".concat(f))&&o.push("!".concat(f))}}catch(e){a=!0,u=e}finally{try{!i&&null!=s.return&&s.return()}finally{if(a)throw u}}e.onChange(o)}},n().createElement("div",{style:{marginTop:16}},n().createElement(u.Checkbox,{value:"ui.*"},t("Allows to configure interface"))),n().createElement("div",{style:{marginTop:8}},n().createElement(u.Checkbox,{value:"pm"},t("Allows to install, activate, disable plugins"))),n().createElement("div",{style:{marginTop:8}},n().createElement(u.Checkbox,{value:"pm.*"},t("Allows to configure plugins"))),n().createElement("div",{style:{marginTop:8}},n().createElement(u.Checkbox,{value:"app"},t("Allows to clear cache, reboot application"))))}),$=function(){var o,c,l=(0,t.useContext)(p),s=l.role,y=l.setRole,d=f().t,v=(0,e.useAPIClient)(),m=null==s?void 0:null===(c=s.snippets)||void 0===c?void 0:c.includes("pm.*");var b=(0,a.useMemoizedFn)((o=D(function(e){return q(this,function(t){switch(t.label){case 0:return[4,v.resource("roles").update({filterByTk:s.name,values:{snippets:e.values.snippets}})];case 1:return t.sent(),y(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,o,i;r=e,o=t,i=n[t],o in r?Object.defineProperty(r,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[o]=i})}return e}({},s,e.values)),u.message.success(d("Saved successfully")),[2]}})}),function(e){return o.apply(this,arguments)})),h=(0,t.useMemo)(function(){return(0,r.createForm)({values:s,effects:function(){var e;(0,r.onFormValuesChange)((e=D(function(e){return q(this,function(t){switch(t.label){case 0:return[4,b(e)];case 1:return t.sent(),[2]}})}),function(t){return e.apply(this,arguments)}))}})},[s,b]);return n().createElement(e.SchemaComponent,{components:{SnippetCheckboxGroup:z,StrategyActions:T,PluginPermissions:A},scope:{pm:m},schema:{type:"void",name:(0,i.uid)(),"x-component":"div",properties:{general:{"x-component":"FormV2","x-component-props":{form:h},properties:{snippets:{title:d("Configure permissions"),type:"boolean","x-decorator":"FormItem","x-component":"SnippetCheckboxGroup"}}},plugins:{"x-component":"FormV2",properties:{pluginSettings:{title:d("Plugin settings"),"x-decorator":"FormItem","x-component":"PluginPermissions","x-visible":"{{pm}}"}}}}}})},U=(0,t.createContext)(null);U.displayName="MenuItemsContext";var N=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=[];for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){var r=e[n],o={title:r.title,uid:r["x-uid"]};r.properties&&(o.children=N(r.properties)),t.push(o)}return t},L=function(t){var r,o,i=(0,e.useAdminSchemaUid)(),a=(0,e.useRequest)({url:"uiSchemas:getProperties/".concat(i)});if(a.loading)return n().createElement(u.Spin,null);var c=N(null===(o=a.data)||void 0===o?void 0:null===(r=o.data)||void 0===r?void 0:r.properties);return n().createElement(U.Provider,{value:{service:a,items:c}},t.children)};function G(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 K(e,t,n,r,o,i,a){try{var u=e[i](a),c=u.value}catch(e){n(e);return}u.done?t(c):Promise.resolve(c).then(r,o)}function V(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){K(i,r,o,a,u,"next",e)}function u(e){K(i,r,o,a,u,"throw",e)}a(void 0)})}}function B(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r,o,i;r=e,o=t,i=n[t],o in r?Object.defineProperty(r,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[o]=i})}return e}function W(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function H(e){return function(e){if(Array.isArray(e))return G(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||Y(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 Y(e,t){if(e){if("string"==typeof e)return G(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 G(e,t)}}function J(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:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}var Q=function(e){if(!Array.isArray(e))return[];var t=[],n=!0,r=!1,o=void 0;try{for(var i,a=e[Symbol.iterator]();!(n=(i=a.next()).done);n=!0){var u=i.value;t.push(u.uid),t.push.apply(t,H(Q(u.children)))}}catch(e){r=!0,o=e}finally{try{!n&&null!=a.return&&a.return()}finally{if(r)throw o}}return t},X=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];if(!e)return[];var r=!0,o=!1,i=void 0;try{for(var a,u=e[Symbol.iterator]();!(r=(a=u.next()).done);r=!0){var c=a.value;if(n.push(c.uid),t(c))return n;if(c.children){var l=X(c.children,t,n);if(l.length)return l}n.pop()}}catch(e){o=!0,i=e}finally{try{!r&&null!=u.return&&u.return()}finally{if(o)throw i}}return[]},Z=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=!0,r=!1,o=void 0;try{for(var i,a=e[Symbol.iterator]();!(n=(i=a.next()).done);n=!0){var u=i.value;t.push(u.uid),u.children&&u.children.length&&Z(u.children,t)}}catch(e){r=!0,o=e}finally{try{!n&&null!=a.return&&a.return()}finally{if(r)throw o}}return t},ee=function(o){var c,l,f,d,v,m=o.active,b=g().styles,h=(0,t.useContext)(p),x=h.role,w=h.setRole,O=(0,e.useAPIClient)(),S=(0,t.useContext)(U).items,j=(0,s.useTranslation)().t,E=Q(S);var A=(c=(0,t.useState)([]),l=2,function(e){if(Array.isArray(e))return e}(c)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,u=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{!a&&null!=o.return&&o.return()}finally{if(u)throw r}}return i}}(c,2)||Y(c,l)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),P=A[0],_=A[1],C=(0,e.useRequest)({resource:"roles.menuUiSchemas",resourceOf:x.name,action:"list",params:{paginate:!1}},{ready:!!x&&m,refreshDeps:[null==x?void 0:x.name],onSuccess:function(e){var t;_((null==e?void 0:null===(t=e.data)||void 0===t?void 0:t.map(function(e){return e["x-uid"]}))||[])}}),k=C.loading,I=C.refresh,T=O.resource("roles.menuUiSchemas",x.name),M=E.length===P.length;var R=(f=V(function(e,t){var n,r,o,i;return J(this,function(a){switch(a.label){case 0:if(n=X(S,function(e){return e.uid===t.uid}),r=Z(null==t?void 0:t.children,[]),!e)return[3,2];return o=r.concat(t.uid),_(H(P.filter(function(e){return!o.includes(e)}))),[4,T.remove({values:o})];case 1:return a.sent(),[3,4];case 2:return i=r.concat(n),_(function(e){return(0,y.uniq)(H(e).concat(H(i)))}),[4,T.add({values:i})];case 3:a.sent(),a.label=4;case 4:return u.message.success(j("Saved successfully")),[2]}})}),function(e,t){return f.apply(this,arguments)}),D=function(e){return e.map(function(e){var t=j(e.title);return e.children?W(B({},e),{title:t,children:D(e.children)}):W(B({},e),{title:t})})};var F=(0,a.useMemoizedFn)((d=V(function(e){return J(this,function(t){switch(t.label){case 0:return[4,O.resource("roles").update({filterByTk:x.name,values:e.values})];case 1:return t.sent(),w(B({},x,e.values)),u.message.success(j("Saved successfully")),[2]}})}),function(e){return d.apply(this,arguments)})),q=(0,t.useMemo)(function(){return(0,r.createForm)({values:x,effects:function(){var e;(0,r.onFormValuesChange)((e=V(function(e){return J(this,function(t){switch(t.label){case 0:return[4,F(e)];case 1:return t.sent(),[2]}})}),function(t){return e.apply(this,arguments)}))}})},[x,F]);return n().createElement(n().Fragment,null,n().createElement(e.SchemaComponent,{schema:{type:"void",name:(0,i.uid)(),"x-component":"FormV2","x-component-props":{form:q},properties:{allowNewMenu:{title:j("Menu permissions"),"x-decorator":"FormItem","x-component":"Checkbox","x-content":j("New menu items are allowed to be accessed by default.")}}}}),n().createElement(u.Table,{className:b,loading:k,rowKey:"uid",pagination:!1,expandable:{defaultExpandAllRows:!0},columns:[{dataIndex:"title",title:j("Menu item title")},{dataIndex:"accessible",title:n().createElement(n().Fragment,null,n().createElement(u.Checkbox,{checked:M,onChange:(v=V(function(e){return J(this,function(e){switch(e.label){case 0:if(!M)return[3,2];return[4,T.set({values:[]})];case 1:return e.sent(),[3,4];case 2:return[4,T.set({values:E})];case 3:e.sent(),e.label=4;case 4:return I(),u.message.success(j("Saved successfully")),[2]}})}),function(e){return v.apply(this,arguments)})})," ",j("Accessible")),render:function(e,t){var r=P.includes(t.uid);return n().createElement(u.Checkbox,{checked:r,onChange:function(){return R(r,t)}})}}],dataSource:D(S)}))};function et(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)}}var en=function(){var e,t,r;function o(){var e,t,r;!function(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}(this,o),e=this,t="permissionsTabs",r=[function(e){var t=e.t,r=e.TabLayout;return{key:"general",label:t("System"),children:n().createElement(r,null,n().createElement($,null))}},function(e){var t=e.activeKey,r=e.t,o=e.TabLayout;return{key:"menu",label:r("Desktop menu"),children:n().createElement(o,null,n().createElement(L,null,n().createElement(ee,{active:"menu"===t})))}}],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r}return e=o,t=[{key:"addPermissionsTab",value:function(e){this.permissionsTabs.push(e)}},{key:"getPermissionsTabs",value:function(e){return this.permissionsTabs.map(function(t){return"function"==typeof t?t(e):t})}}],et(e.prototype,t),o}(),er=d("482"),eo=d("5773"),ei=d.n(eo);function ea(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var eu={type:"object",properties:ea({},(0,i.uid)(),{type:"void","x-component":"Action.Drawer","x-decorator":"Form","x-decorator-props":{useValues:function(n){var r,o,i=(0,e.useRecord)();var a=(0,e.useRequest)(function(){return Promise.resolve({data:ei()(i,["title","name","default"])})},(r=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){ea(e,t,n[t])})}return e}({},n),o=(o={manual:!0},o),Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(o)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(o)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(o,e))}),r)),u=(0,e.useActionContext)();return(0,t.useEffect)(function(){u.visible&&a.run()},[u.visible]),a}},title:'{{t("Edit role")}}',properties:{title:{"x-component":"CollectionField","x-decorator":"FormItem"},name:{"x-component":"CollectionField","x-decorator":"FormItem","x-disabled":!0},default:{title:"","x-component":"CollectionField","x-decorator":"FormItem","x-content":'{{t("Default role")}}',"x-reactions":function(e){e.initialValue?e.disabled=!0:e.disabled=!1}},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ cm.useUpdateAction }}"}}}}}})};function ec(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}var el=function(e){var n,r,o=e.loadMore;var i=(n=(0,t.useState)(null),r=2,function(e){if(Array.isArray(e))return e}(n)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,u=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{!a&&null!=o.return&&o.return()}finally{if(u)throw r}}return i}}(n,2)||function(e,t){if(e){if("string"==typeof e)return ec(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 ec(e,t)}}(n,r)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),a=i[0],u=i[1],c=(0,t.useRef)(null),l=(0,t.useCallback)(function(e){if(!!e)c.current&&c.current.disconnect(),c.current=new IntersectionObserver(function(t){t.forEach(function(t){if(t.target===e.current)t.isIntersecting&&(c.current&&c.current.unobserve(e.current),o())})}),e.current&&c.current&&c.current.observe(e.current)},[o]);return(0,t.useEffect)(function(){return l(a),function(){c.current&&c.current.disconnect()}},[a,l]),{lastItem:a,setLastItem:u}};function es(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function ef(e,t,n,r,o,i,a){try{var u=e[i](a),c=u.value}catch(e){n(e);return}u.done?t(c):Promise.resolve(c).then(r,o)}function ep(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){ef(i,r,o,a,u,"next",e)}function u(e){ef(i,r,o,a,u,"throw",e)}a(void 0)})}}function ey(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,u=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{!a&&null!=o.return&&o.return()}finally{if(u)throw r}}return i}}(e,t)||ev(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 ed(e){return function(e){if(Array.isArray(e))return es(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||ev(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 ev(e,t){if(e){if("string"==typeof e)return es(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 es(e,t)}}function em(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:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}var eb=function(){var r=f().t,o=(0,e.useResourceActionContext)(),i=o.data,a=o.mutate,c=ey((0,t.useState)(!1),2),l=c[0],s=c[1],y=ey((0,t.useState)(null),2),d=y[0],v=y[1],m=(0,t.useContext)(p),b=m.role,h=m.setRole,g=ey((0,t.useState)([]),2),x=g[0],w=g[1],O=ey((0,t.useState)(!1),2),S=O[0],j=O[1],E=(0,e.useAPIClient)(),A=el({loadMore:(0,t.useCallback)(ep(function(){var e,t;return em(this,function(n){switch(n.label){case 0:if(!(e=null==i?void 0:i.meta)||e.page>=e.totalPage)return[2];return j(!0),[4,E.resource("roles").list({page:e.page+1,pageSize:e.pageSize,filter:{"name.$ne":"root"},showAnonymous:!0,sort:["createdAt"],appends:[]})];case 1:return a((null==(t=n.sent())?void 0:t.data)||{}),j(!1),[2]}})}),[i])}),P=A.lastItem,_=A.setLastItem;(0,t.useEffect)(function(){if(!!x[0])h(x[0])},[x,h]),(0,t.useEffect)(function(){var e,t;if(!!(null==i?void 0:null===(e=i.data)||void 0===e?void 0:e.length))_(n().createRef()),(null===(t=i.meta)||void 0===t?void 0:t.page)>1?w(function(e){return e.concat(i.data)}):w(i.data)},[i,_]);var C=(0,t.useMemo)(function(){return x.map(function(e,t){return{key:e.name,label:t===x.length-1?n().createElement("div",{ref:P},n().createElement(eb.Item,{item:e,onEdit:function(){s(!0),v(e)}})):n().createElement(eb.Item,{item:e,onEdit:function(){s(!0),v(e)}})}})},[x,P]);return n().createElement(n().Fragment,null,x.length?n().createElement(u.Menu,{style:{border:"none",maxHeight:"65vh",overflowY:"auto"},items:ed(C).concat(ed(S?[{key:"loading",label:n().createElement(u.Spin,null)}]:[])),selectedKeys:[null==b?void 0:b.name],onSelect:function(e){var t=e.key;h(x.find(function(e){return e.name===t}))}}):n().createElement(u.Empty,{image:u.Empty.PRESENTED_IMAGE_SIMPLE}),n().createElement(e.ActionContextProvider,{value:{visible:l,setVisible:s}},n().createElement(e.RecordProvider,{record:d,collectionName:"departments"},n().createElement(e.SchemaComponent,{scope:{t:r},schema:eu}))))};function eh(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}eb.Item=function(t){var r=t.item,i=t.onEdit,a=f().t,c=(0,e.useResourceActionContext)().refreshAsync,l=u.App.useApp(),s=l.modal,p=l.message,y=(0,e.useAPIClient)(),d=function(){s.confirm({title:a("Delete"),content:a("Are you sure you want to delete it?"),onOk:ep(function(){return em(this,function(e){switch(e.label){case 0:return[4,y.resource("roles").destroy({filterByTk:r.name})];case 1:return e.sent(),p.success(a("Deleted successfully")),[4,c()];case 2:return e.sent(),[2]}})})})},v=o.Schema.compile(r.title,{t:a});return n().createElement(u.Row,null,n().createElement(u.Col,{flex:3,style:{display:"inline-flex",alignItems:"center"}},n().createElement("span",{style:{whiteSpace:"nowrap",width:"120px",overflow:"hidden",textOverflow:"ellipsis"}},n().createElement(er.TagOutlined,null),n().createElement("span",{style:{marginLeft:"10px"},title:v},v))),n().createElement(u.Col,null,r.default?n().createElement(u.Tag,{color:"success",bordered:!1},a("Default")):null,n().createElement(u.Dropdown,{menu:{items:[{label:a("Edit"),key:"edit"},{label:a("Delete"),key:"delete"}],onClick:function(e){var t=e.key;switch(e.domEvent.stopPropagation(),t){case"edit":i();break;case"delete":d()}}}},n().createElement(er.MoreOutlined,null))))};var eg=function(e){return n().createElement("div",{style:{maxHeight:"60vh",overflowY:"auto"}},e.children)},ex=function(r){var o,i,a=r.active,c=f().t;var l=(o=n().useState("general"),i=2,function(e){if(Array.isArray(e))return e}(o)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,u=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{!a&&null!=o.return&&o.return()}finally{if(u)throw r}}return i}}(o,2)||function(e,t){if(e){if("string"==typeof e)return eh(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 eh(e,t)}}(o,i)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),s=l[0],y=l[1],d=(0,t.useContext)(p),v=d.role,m=d.setRole,b=(0,e.usePlugin)(e$),h=(0,e.useACLRoleContext)(),g=(0,t.useMemo)(function(){return b.settingsUI.getPermissionsTabs({t:c,activeKey:s,TabLayout:eg,activeRole:v,currentUserRole:h}).filter(Boolean)},[s,b.settingsUI,v,c,h]),x=(0,e.useAPIClient)(),w=(0,e.useRequest)(function(){return x.resource("roles").get({filterByTk:null==v?void 0:v.name}).then(function(e){var t,n,r=null==e?void 0:null===(t=e.data)||void 0===t?void 0:t.data;return null===(n=r.snippets)||void 0===n||n.forEach(function(e){r[e]=!0}),r})},{ready:a&&!!v,refreshDeps:[null==v?void 0:v.name]}).data;return(0,t.useEffect)(function(){y("general")},[null==v?void 0:v.name]),(0,t.useEffect)(function(){m(w)},[w,m]),n().createElement(_,null,n().createElement(u.Tabs,{type:"card",activeKey:s,onChange:function(e){return y(e)},items:g}))},ew=function(){var t=f().t;return n().createElement(e.SchemaComponent,{scope:{t:t},schema:{type:"void",properties:{newRole:{type:"void",title:t("New role"),"x-component":"Action","x-component-props":{type:"text",icon:"PlusOutlined",style:{width:"100%",textAlign:"left"}},properties:{drawer:{type:"void","x-component":"Action.Drawer","x-decorator":"Form","x-decorator-props":{useValues:function(t){var n,r,o=(0,e.useActionContext)();return(0,e.useRequest)(function(){return Promise.resolve({data:{name:"r_".concat((0,i.uid)()),snippets:["!ui.*","!pm","!pm.*"]}})},(n=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r,o,i;r=e,o=t,i=n[t],o in r?Object.defineProperty(r,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[o]=i})}return e}({},t),r=(r={refreshDeps:[o.visible]},r),Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(r)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(r)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(r,e))}),n))}},title:t("New role"),properties:{title:{"x-component":"CollectionField","x-decorator":"FormItem"},name:{"x-component":"CollectionField","x-decorator":"FormItem",description:'{{t("Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.")}}'},default:{"x-component":"CollectionField","x-decorator":"FormItem",title:"","x-content":'{{t("Default role")}}'},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ cm.useCreateAction }}"}}}}}}}}}}})};function eO(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 eS(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,u=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{!a&&null!=o.return&&o.return()}finally{if(u)throw r}}return i}}(e,t)||ej(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 ej(e,t){if(e){if("string"==typeof e)return eO(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 eO(e,t)}}var eE={name:"roles",filterTargetKey:"name",targetKey:"name",fields:[{type:"string",name:"title",interface:"input",uiSchema:{title:'{{t("Role display name")}}',type:"number","x-component":"Input",required:!0}},{type:"string",name:"name",interface:"input",uiSchema:{title:'{{t("Role UID")}}',type:"string","x-component":"Input"}},{type:"boolean",name:"default",interface:"boolean",uiSchema:{title:'{{t("Default role")}}',type:"boolean","x-component":"Checkbox"}}]},eA=function(){var r,i,a,c=f().t,l=(0,e.usePlugin)(e$),s=eS(n().useState("permissions"),2),y=s[0],d=s[1],v=Array.from(l.rolesManager.list()).map(function(e){var t=eS(e,2),r=t[0],i=t[1];return{key:r,label:o.Schema.compile(i.title,{t:c}),children:i.Component?n().createElement(i.Component,{active:y===r}):null}}),m=eS((0,t.useState)(null),2),b=m[0],h=m[1],g=(0,e.useSchemaComponentContext)();return n().createElement(e.SchemaComponentContext.Provider,{value:(r=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r,o,i;r=e,o=t,i=n[t],o in r?Object.defineProperty(r,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[o]=i})}return e}({},g),i=(i={designable:!1},i),Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(i)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(i)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(i,e))}),r)},n().createElement(p.Provider,{value:{role:b,setRole:h}},n().createElement(u.Card,null,n().createElement(u.Row,{gutter:24,style:{flexWrap:"nowrap"}},n().createElement(u.Col,{flex:"280px",style:{borderRight:"1px solid #eee",minWidth:"250px"}},n().createElement(e.ResourceActionProvider,{collection:eE,request:{resource:"roles",action:"list",params:{filter:{"name.$ne":"root"},showAnonymous:!0,sort:["createdAt"],appends:[]}}},n().createElement(e.CollectionProvider_deprecated,{collection:eE},n().createElement(u.Row,null,n().createElement(ew,null)),n().createElement(u.Divider,{style:{margin:"12px 0"}}),n().createElement(eb,null)))),n().createElement(u.Col,{flex:"auto",style:{overflow:"hidden"}},n().createElement(u.Tabs,{activeKey:y,onChange:function(e){return d(e)},items:[{key:"permissions",label:c("Permissions"),children:n().createElement(ex,{active:"permissions"===y})}].concat(function(e){if(Array.isArray(e))return eO(e)}(a=v)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(a)||ej(a)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())}))))))},eP=d("9473");function e_(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)}}var eC=function(){var e,t,n;function r(){var e,t,n;!function(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}(this,r),e=this,t="rolesManager",n=new eP.Registry,t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}return e=r,t=[{key:"add",value:function(e,t){this.rolesManager.register(e,t)}},{key:"list",value:function(){return this.rolesManager.getEntities()}}],e_(e.prototype,t),r}();function ek(e,t,n,r,o,i,a){try{var u=e[i](a),c=u.value}catch(e){n(e);return}u.done?t(c):Promise.resolve(c).then(r,o)}function eI(e,t,n){return(eI=eq()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&eD(o,n.prototype),o}).apply(null,arguments)}function eT(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 eM(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function eR(e){return(eR=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function eD(e,t){return(eD=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function eF(e){var t="function"==typeof Map?new Map:void 0;return(eF=function(e){var n;if(null===e||(n=e,-1===Function.toString.call(n).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,r)}function r(){return eI(e,arguments,eR(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),eD(r,e)})(e)}function eq(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(eq=function(){return!!e})()}var ez=function(e){var t,n,r;function o(){var e,t,n,r;return!function(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}(this,o),t=this,n=o,r=arguments,n=eR(n),eM(e=function(e,t){return t&&("object"===function(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}(t)||"function"==typeof t)?t:function(e){if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(t,eq()?Reflect.construct(n,r||[],eR(t).constructor):n.apply(t,r)),"rolesManager",new eC),eM(e,"settingsUI",new en),e}return!function(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&eD(e,t)}(o,e),t=o,n=[{key:"load",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:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}(this,function(e){return t.pluginSettingsManager.add("users-permissions.roles",{title:t.t("Roles & Permissions"),icon:"LockOutlined",Component:eA,aclSnippet:"pm.acl.roles",sort:3}),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){ek(i,r,o,a,u,"next",e)}function u(e){ek(i,r,o,a,u,"throw",e)}a(void 0)})})()}}],eT(t.prototype,n),o}(eF(e.Plugin)),e$=ez}(),v}()});
|
|
10
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@nocobase/client"),require("react"),require("react-i18next"),require("@ant-design/icons"),require("@formily/shared"),require("@formily/core"),require("@formily/react"),require("antd"),require("antd-style"),require("lodash"),require("ahooks"),require("@nocobase/utils/client")):"function"==typeof define&&define.amd?define("@nocobase/plugin-acl",["@nocobase/client","react","react-i18next","@ant-design/icons","@formily/shared","@formily/core","@formily/react","antd","antd-style","lodash","ahooks","@nocobase/utils/client"],t):"object"==typeof exports?exports["@nocobase/plugin-acl"]=t(require("@nocobase/client"),require("react"),require("react-i18next"),require("@ant-design/icons"),require("@formily/shared"),require("@formily/core"),require("@formily/react"),require("antd"),require("antd-style"),require("lodash"),require("ahooks"),require("@nocobase/utils/client")):e["@nocobase/plugin-acl"]=t(e["@nocobase/client"],e.react,e["react-i18next"],e["@ant-design/icons"],e["@formily/shared"],e["@formily/core"],e["@formily/react"],e.antd,e["antd-style"],e.lodash,e.ahooks,e["@nocobase/utils/client"])}(self,function(e,t,n,r,o,i,a,u,c,l,s,f){return function(){var p={7973:function(e,t,n){var r=n(1783),o=n(1012),i=n(9900),a=n(6691),u=n(2018);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=a,c.prototype.set=u,e.exports=c},2768:function(e,t,n){var r=n(9896),o=n(2473),i=n(4678),a=n(1240),u=n(4296);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=a,c.prototype.set=u,e.exports=c},1725:function(e,t,n){var r=n(6369)(n(5031),"Map");e.exports=r},736:function(e,t,n){var r=n(6660),o=n(8472),i=n(5637),a=n(9389),u=n(9804);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=o,c.prototype.get=i,c.prototype.has=a,c.prototype.set=u,e.exports=c},8995:function(e,t,n){var r=n(6369)(n(5031),"Set");e.exports=r},5106:function(e,t,n){var r=n(736),o=n(4867),i=n(9428);function a(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new r;++t<n;)this.add(e[t])}a.prototype.add=a.prototype.push=o,a.prototype.has=i,e.exports=a},5869:function(e,t,n){var r=n(5031).Symbol;e.exports=r},7485:function(e){e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},9360:function(e,t,n){var r=n(7667);e.exports=function(e,t){return!!(null==e?0:e.length)&&r(e,t,0)>-1}},5987:function(e){e.exports=function(e,t,n){for(var r=-1,o=null==e?0:e.length;++r<o;)if(n(t,e[r]))return!0;return!1}},2467:function(e){e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,o=Array(r);++n<r;)o[n]=t(e[n],n,e);return o}},3571:function(e){e.exports=function(e,t){for(var n=-1,r=t.length,o=e.length;++n<r;)e[o+n]=t[n];return e}},5699:function(e,t,n){var r=n(2544),o=n(3947),i=Object.prototype.hasOwnProperty;e.exports=function(e,t,n){var a=e[t];(!(i.call(e,t)&&o(a,n))||void 0===n&&!(t in e))&&r(e,t,n)}},8746:function(e,t,n){var r=n(3947);e.exports=function(e,t){for(var n=e.length;n--;)if(r(e[n][0],t))return n;return -1}},2544:function(e,t,n){var r=n(6554);e.exports=function(e,t,n){"__proto__"==t&&r?r(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}},9443:function(e){e.exports=function(e,t,n,r){for(var o=e.length,i=n+(r?1:-1);r?i--:++i<o;)if(t(e[i],i,e))return i;return -1}},6195:function(e,t,n){var r=n(3571),o=n(1449);e.exports=function e(t,n,i,a,u){var c=-1,l=t.length;for(i||(i=o),u||(u=[]);++c<l;){var s=t[c];n>0&&i(s)?n>1?e(s,n-1,i,a,u):r(u,s):!a&&(u[u.length]=s)}return u}},304:function(e,t,n){var r=n(322),o=n(5107);e.exports=function(e,t){t=r(t,e);for(var n=0,i=t.length;null!=e&&n<i;)e=e[o(t[n++])];return n&&n==i?e:void 0}},4365:function(e,t,n){var r=n(5869),o=n(7043),i=n(5283),a=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":a&&a in Object(e)?o(e):i(e)}},1547:function(e){e.exports=function(e,t){return null!=e&&t in Object(e)}},7667:function(e,t,n){var r=n(9443),o=n(1222),i=n(3691);e.exports=function(e,t,n){return t==t?i(e,t,n):r(e,o,n)}},8719:function(e,t,n){var r=n(4365),o=n(5620);e.exports=function(e){return o(e)&&"[object Arguments]"==r(e)}},1222:function(e){e.exports=function(e){return e!=e}},9930:function(e,t,n){var r=n(3098),o=n(8754),i=n(2917),a=n(1304),u=/^\[object .+?Constructor\]$/,c=Object.prototype,l=Function.prototype.toString,s=c.hasOwnProperty,f=RegExp("^"+l.call(s).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!i(e)||o(e))&&(r(e)?f:u).test(a(e))}},3897:function(e,t,n){var r=n(3405),o=n(9459);e.exports=function(e,t){return r(e,t,function(t,n){return o(e,n)})}},3405:function(e,t,n){var r=n(304),o=n(7113),i=n(322);e.exports=function(e,t,n){for(var a=-1,u=t.length,c={};++a<u;){var l=t[a],s=r(e,l);n(s,l)&&o(c,i(l,e),s)}return c}},7113:function(e,t,n){var r=n(5699),o=n(322),i=n(3501),a=n(2917),u=n(5107);e.exports=function(e,t,n,c){if(!a(e))return e;t=o(t,e);for(var l=-1,s=t.length,f=s-1,p=e;null!=p&&++l<s;){var y=u(t[l]),d=n;if("__proto__"===y||"constructor"===y||"prototype"===y)break;if(l!=f){var v=p[y];void 0===(d=c?c(v,y,p):void 0)&&(d=a(v)?v:i(t[l+1])?[]:{})}r(p,y,d),p=p[y]}return e}},1792:function(e,t,n){var r=n(6710),o=n(6554),i=n(9974),a=o?function(e,t){return o(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:i;e.exports=a},4200:function(e,t,n){var r=n(5869),o=n(2467),i=n(6227),a=n(9528),u=1/0,c=r?r.prototype:void 0,l=c?c.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(i(t))return o(t,e)+"";if(a(t))return l?l.call(t):"";var n=t+"";return"0"==n&&1/t==-u?"-0":n}},1826:function(e,t,n){var r=n(5106),o=n(9360),i=n(5987),a=n(8342),u=n(4248),c=n(735);e.exports=function(e,t,n){var l=-1,s=o,f=e.length,p=!0,y=[],d=y;if(n)p=!1,s=i;else if(f>=200){var v=t?null:u(e);if(v)return c(v);p=!1,s=a,d=new r}else d=t?[]:y;e:for(;++l<f;){var m=e[l],b=t?t(m):m;if(m=n||0!==m?m:0,p&&b==b){for(var h=d.length;h--;)if(d[h]===b)continue e;t&&d.push(b),y.push(m)}else!s(d,b,n)&&(d!==y&&d.push(b),y.push(m))}return y}},8342:function(e){e.exports=function(e,t){return e.has(t)}},322:function(e,t,n){var r=n(6227),o=n(8447),i=n(9765),a=n(2954);e.exports=function(e,t){return r(e)?e:o(e,t)?[e]:i(a(e))}},3823:function(e,t,n){var r=n(5031)["__core-js_shared__"];e.exports=r},4248:function(e,t,n){var r=n(8995),o=n(555),i=n(735),a=r&&1/i(new r([,-0]))[1]==1/0?function(e){return new r(e)}:o;e.exports=a},6554:function(e,t,n){var r=n(6369),o=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();e.exports=o},794:function(e,t,n){var r=n(3219),o=n(2478),i=n(8286);e.exports=function(e){return i(o(e,void 0,r),e+"")}},5274:function(e,t,n){var r="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;e.exports=r},9623:function(e,t,n){var r=n(9005);e.exports=function(e,t){var n=e.__data__;return r(t)?n["string"==typeof t?"string":"hash"]:n.map}},6369:function(e,t,n){var r=n(9930),o=n(4502);e.exports=function(e,t){var n=o(e,t);return r(n)?n:void 0}},7043:function(e,t,n){var r=n(5869),o=Object.prototype,i=o.hasOwnProperty,a=o.toString,u=r?r.toStringTag:void 0;e.exports=function(e){var t=i.call(e,u),n=e[u];try{e[u]=void 0;var r=!0}catch(e){}var o=a.call(e);return r&&(t?e[u]=n:delete e[u]),o}},4502:function(e){e.exports=function(e,t){return null==e?void 0:e[t]}},6953:function(e,t,n){var r=n(322),o=n(8497),i=n(6227),a=n(3501),u=n(6613),c=n(5107);e.exports=function(e,t,n){t=r(t,e);for(var l=-1,s=t.length,f=!1;++l<s;){var p=c(t[l]);if(!(f=null!=e&&n(e,p)))break;e=e[p]}return f||++l!=s?f:!!(s=null==e?0:e.length)&&u(s)&&a(p,s)&&(i(e)||o(e))}},1783:function(e,t,n){var r=n(8163);e.exports=function(){this.__data__=r?r(null):{},this.size=0}},1012:function(e){e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},9900:function(e,t,n){var r=n(8163),o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(r){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return o.call(t,e)?t[e]:void 0}},6691:function(e,t,n){var r=n(8163),o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:o.call(t,e)}},2018:function(e,t,n){var r=n(8163);e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=r&&void 0===t?"__lodash_hash_undefined__":t,this}},1449:function(e,t,n){var r=n(5869),o=n(8497),i=n(6227),a=r?r.isConcatSpreadable:void 0;e.exports=function(e){return i(e)||o(e)||!!(a&&e&&e[a])}},3501:function(e){var t=/^(?:0|[1-9]\d*)$/;e.exports=function(e,n){var r=typeof e;return!!(n=null==n?0x1fffffffffffff:n)&&("number"==r||"symbol"!=r&&t.test(e))&&e>-1&&e%1==0&&e<n}},8447:function(e,t,n){var r=n(6227),o=n(9528),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;e.exports=function(e,t){if(r(e))return!1;var n=typeof e;return!!("number"==n||"symbol"==n||"boolean"==n||null==e||o(e))||a.test(e)||!i.test(e)||null!=t&&e in Object(t)}},9005:function(e){e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},8754:function(e,t,n){var r,o=n(3823);var i=(r=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";e.exports=function(e){return!!i&&i in e}},9896:function(e){e.exports=function(){this.__data__=[],this.size=0}},2473:function(e,t,n){var r=n(8746),o=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0)&&(n==t.length-1?t.pop():o.call(t,n,1),--this.size,!0)}},4678:function(e,t,n){var r=n(8746);e.exports=function(e){var t=this.__data__,n=r(t,e);return n<0?void 0:t[n][1]}},1240:function(e,t,n){var r=n(8746);e.exports=function(e){return r(this.__data__,e)>-1}},4296:function(e,t,n){var r=n(8746);e.exports=function(e,t){var n=this.__data__,o=r(n,e);return o<0?(++this.size,n.push([e,t])):n[o][1]=t,this}},6660:function(e,t,n){var r=n(7973),o=n(2768),i=n(1725);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(i||o),string:new r}}},8472:function(e,t,n){var r=n(9623);e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},5637:function(e,t,n){var r=n(9623);e.exports=function(e){return r(this,e).get(e)}},9389:function(e,t,n){var r=n(9623);e.exports=function(e){return r(this,e).has(e)}},9804:function(e,t,n){var r=n(9623);e.exports=function(e,t){var n=r(this,e),o=n.size;return n.set(e,t),this.size+=n.size==o?0:1,this}},662:function(e,t,n){var r=n(6983);e.exports=function(e){var t=r(e,function(e){return 500===n.size&&n.clear(),e}),n=t.cache;return t}},8163:function(e,t,n){var r=n(6369)(Object,"create");e.exports=r},5283:function(e){var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},2478:function(e,t,n){var r=n(7485),o=Math.max;e.exports=function(e,t,n){return t=o(void 0===t?e.length-1:t,0),function(){for(var i=arguments,a=-1,u=o(i.length-t,0),c=Array(u);++a<u;)c[a]=i[t+a];a=-1;for(var l=Array(t+1);++a<t;)l[a]=i[a];return l[t]=n(c),r(e,this,l)}}},5031:function(e,t,n){var r=n(5274),o="object"==typeof self&&self&&self.Object===Object&&self,i=r||o||Function("return this")();e.exports=i},4867:function(e){e.exports=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}},9428:function(e){e.exports=function(e){return this.__data__.has(e)}},735:function(e){e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}},8286:function(e,t,n){var r=n(1792),o=n(1358)(r);e.exports=o},1358:function(e){var t=Date.now;e.exports=function(e){var n=0,r=0;return function(){var o=t(),i=16-(o-r);if(r=o,i>0){if(++n>=800)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}},3691:function(e){e.exports=function(e,t,n){for(var r=n-1,o=e.length;++r<o;)if(e[r]===t)return r;return -1}},9765:function(e,t,n){var r=n(662),o=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,a=r(function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(o,function(e,n,r,o){t.push(r?o.replace(i,"$1"):n||e)}),t});e.exports=a},5107:function(e,t,n){var r=n(9528),o=1/0;e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-o?"-0":t}},1304:function(e){var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(e){}try{return e+""}catch(e){}}return""}},6710:function(e){e.exports=function(e){return function(){return e}}},3947:function(e){e.exports=function(e,t){return e===t||e!=e&&t!=t}},3219:function(e,t,n){var r=n(6195);e.exports=function(e){return(null==e?0:e.length)?r(e,1):[]}},9459:function(e,t,n){var r=n(1547),o=n(6953);e.exports=function(e,t){return null!=e&&o(e,t,r)}},9974:function(e){e.exports=function(e){return e}},8497:function(e,t,n){var r=n(8719),o=n(5620),i=Object.prototype,a=i.hasOwnProperty,u=i.propertyIsEnumerable,c=r(function(){return arguments}())?r:function(e){return o(e)&&a.call(e,"callee")&&!u.call(e,"callee")};e.exports=c},6227:function(e){var t=Array.isArray;e.exports=t},3098:function(e,t,n){var r=n(4365),o=n(2917);e.exports=function(e){if(!o(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},6613:function(e){e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=0x1fffffffffffff}},2917:function(e){e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},5620:function(e){e.exports=function(e){return null!=e&&"object"==typeof e}},9528:function(e,t,n){var r=n(4365),o=n(5620);e.exports=function(e){return"symbol"==typeof e||o(e)&&"[object Symbol]"==r(e)}},6983:function(e,t,n){var r=n(736);function o(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw TypeError("Expected a function");var n=function(){var r=arguments,o=t?t.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var a=e.apply(this,r);return n.cache=i.set(o,a)||i,a};return n.cache=new(o.Cache||r),n}o.Cache=r,e.exports=o},555:function(e){e.exports=function(){}},5773:function(e,t,n){var r=n(3897),o=n(794)(function(e,t){return null==e?{}:r(e,t)});e.exports=o},2954:function(e,t,n){var r=n(4200);e.exports=function(e){return null==e?"":r(e)}},8402:function(e,t,n){var r=n(1826);e.exports=function(e){return e&&e.length?r(e):[]}},482:function(e){"use strict";e.exports=r},8563:function(e){"use strict";e.exports=i},3505:function(e){"use strict";e.exports=a},8875:function(e){"use strict";e.exports=o},3772:function(t){"use strict";t.exports=e},7584:function(e){"use strict";e.exports=f},2749:function(e){"use strict";e.exports=s},2721:function(e){"use strict";e.exports=u},8202:function(e){"use strict";e.exports=c},467:function(e){"use strict";e.exports=l},8156:function(e){"use strict";e.exports=t},3238:function(e){"use strict";e.exports=n}},y={};function d(e){var t=y[e];if(void 0!==t)return t.exports;var n=y[e]={exports:{}};return p[e](n,n.exports,d),n.exports}d.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return d.d(t,{a:t}),t},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.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)},d.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var v={};return!function(){"use strict";d.r(v),d.d(v,{PluginACLClient:function(){return ez},default:function(){return e$},RolesManagerContext:function(){return p}});var e=d("3772"),t=d("8156"),n=d.n(t),r=d("8563"),o=d("3505"),i=d("8875"),a=d("2749"),u=d("2721"),c=d("8402"),l=d.n(c),s=d("3238");function f(){return(0,s.useTranslation)(["@nocobase/plugin-acl","client"],{nsMode:"fallback"})}var p=(0,t.createContext)({role:null});p.displayName="RolesManagerContext";var y=d("467"),m=d.n(y),b=d("8202");function h(){var e,t,n=(e=["\n .ant-table-cell {\n > .ant-space-horizontal {\n .ant-space-item-split:has(+ .ant-space-item:empty) {\n display: none;\n }\n }\n }\n "],!t&&(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return h=function(){return n},n}var g=(0,b.createStyles)(function(e){return(0,e.css)(h())});function x(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 w(e,t,n,r,o,i,a){try{var u=e[i](a),c=u.value}catch(e){n(e);return}u.done?t(c):Promise.resolve(c).then(r,o)}function O(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){w(i,r,o,a,u,"next",e)}function u(e){w(i,r,o,a,u,"throw",e)}a(void 0)})}}function S(e,t){if(e){if("string"==typeof e)return x(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 x(e,t)}}function j(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:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}var E=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=!0,r=!1,o=void 0;try{for(var i,a=e[Symbol.iterator]();!(n=(i=a.next()).done);n=!0){var u=i.value;t.push(u.aclSnippet),u.children&&u.children.length&&E(u.children,t)}}catch(e){r=!0,o=e}finally{try{!n&&null!=a.return&&a.return()}finally{if(r)throw o}}return t},A=function(r){var o,i,a,c=r.active,l=(0,e.useApp)(),f=g().styles,d=(0,t.useContext)(p).role,v=(0,e.useAPIClient)(),b=(0,e.useCompile)(),h=l.pluginSettingsManager.getList(!1),w=l.pluginSettingsManager.getAclSnippets();var A=(o=(0,t.useState)((null==d?void 0:d.snippets)||[]),i=2,function(e){if(Array.isArray(e))return e}(o)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,u=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{!a&&null!=o.return&&o.return()}finally{if(u)throw r}}return i}}(o,2)||S(o,i)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),P=A[0],_=A[1],C=(0,t.useMemo)(function(){return(0,y.flatMap)(h,function(e){var t;if(!e.children)return e;return[e].concat(function(e){if(Array.isArray(e))return x(e)}(t=e.children)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||S(t)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())})},[h]),k=(0,t.useMemo)(function(){return P.includes("pm.*")&&P.every(function(e){return!e.startsWith("!pm.")})},[P]),I=(0,s.useTranslation)().t,T=(0,e.useRequest)({resource:"roles.snippets",resourceOf:null==d?void 0:d.name,action:"list",params:{paginate:!1}},{ready:!!d&&c,refreshDeps:[null==d?void 0:d.name],manual:!0,onSuccess:function(e){_((null==e?void 0:e.data.filter(function(e){return C.find(function(t){return e.includes("!".concat(t.aclSnippet))||!e.startsWith("!pm.")})}))||[])}}),M=T.loading,R=T.refresh;if(!!d){var D=v.resource("roles.snippets",null==d?void 0:d.name);var F=(a=O(function(e,t){var n;return j(this,function(r){switch(r.label){case 0:if(n=E(null==t?void 0:t.children,[]).concat(t.aclSnippet),e)return[3,2];return[4,D.remove({values:n.map(function(e){return"!"+e})})];case 1:return r.sent(),R(),[3,4];case 2:return[4,D.add({values:n.map(function(e){return"!"+e})})];case 3:r.sent(),R(),r.label=4;case 4:return u.message.success(I("Saved successfully")),[2]}})}),function(e,t){return a.apply(this,arguments)});return n().createElement(u.Table,{className:f,loading:M,rowKey:"key",pagination:!1,expandable:{defaultExpandAllRows:!0},columns:[{dataIndex:"title",title:I("Plugin name"),render:function(e){return b(e)}},{dataIndex:"accessible",title:n().createElement(n().Fragment,null,n().createElement(u.Checkbox,{checked:k,onChange:O(function(){var e;return j(this,function(t){switch(t.label){case 0:if(e=w.map(function(e){return"!"+e}),k)return[3,2];return[4,D.remove({values:e})];case 1:return t.sent(),[3,4];case 2:return[4,D.add({values:e})];case 3:t.sent(),t.label=4;case 4:return R(),u.message.success(I("Saved successfully")),[2]}})})}),I("Accessible")),render:function(e,t){var r=!P.includes("!"+t.aclSnippet);return n().createElement(u.Checkbox,{checked:r,onChange:function(){return F(r,t)}})}}],dataSource:h.filter(function(e){return!1!==e.isTopLevel}).map(function(e){return!1!==e.showTabs?e:m().omit(e,"children")})})}},P=(0,t.createContext)([]);P.displayName="AvailableActionsContext";var _=function(t){var r=(0,e.useRequest)({resource:"availableActions",action:"list"}),o=r.data;return r.loading?n().createElement(u.Spin,null):n().createElement(P.Provider,{value:null==o?void 0:o.data},t.children)};function C(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}var k=function(e){if(!e)return{};var t,n={};return null==e||null===(t=e.forEach)||void 0===t||t.call(e,function(e){var t,r,o=(t=e.split(":"),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,u=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{!a&&null!=o.return&&o.return()}finally{if(u)throw r}}return i}}(t,2)||function(e,t){if(e){if("string"==typeof e)return C(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 C(e,t)}}(t,r)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=o[0],a=o[1];n[i]=a||"all"}),n},I=function(e){var t=[];for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){var r=e[n];"all"===r?t.push(n):t.push("".concat(n,":").concat(r))}return t},T=(0,o.connect)(function(r){var i=r.onChange,a=(0,t.useContext)(P),c=(0,e.useCompile)(),l=(0,s.useTranslation)().t,f=k((0,o.useField)().value);return n().createElement("div",null,n().createElement(u.Table,{rowKey:"name",size:"small",pagination:!1,columns:[{dataIndex:"displayName",title:l("Action display name"),render:function(e){return c(e)}},{dataIndex:"onNewRecord",title:l("Action type"),render:function(e){return e?n().createElement(u.Tag,{color:"green"},l("Action on new records")):n().createElement(u.Tag,{color:"geekblue"},l("Action on existing records"))}},{dataIndex:"enabled",title:l("Allow"),render:function(e,t){return n().createElement(u.Checkbox,{checked:e,"aria-label":"".concat(t.name,"_checkbox"),onChange:function(n){e?delete f[t.name]:f[t.name]="all",i(I(f))}})}},{dataIndex:"scope",title:l("Data scope"),render:function(e,t){return!t.onNewRecord&&n().createElement(u.Select,{"data-testid":"select-data-scope",popupMatchSelectWidth:!1,size:"small",value:e,options:[{label:l("All records"),value:"all"},{label:l("Own records"),value:"own"}],onChange:function(e){f[t.name]=e,i(I(f))}})}}],dataSource:null==a?void 0:a.map(function(e){var t,n,r="all",o=!1;return f[e.name]&&(o=!0,r=f[e.name]),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,o,i;r=e,o=t,i=n[t],o in r?Object.defineProperty(r,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[o]=i})}return e}({},e),n=(n={enabled:o,scope:r},n),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 M(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function R(e,t,n,r,o,i,a){try{var u=e[i](a),c=u.value}catch(e){n(e);return}u.done?t(c):Promise.resolve(c).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){R(i,r,o,a,u,"next",e)}function u(e){R(i,r,o,a,u,"throw",e)}a(void 0)})}}function F(e){return function(e){if(Array.isArray(e))return M(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return M(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return M(e,t)}}(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 q(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:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}var z=(0,o.connect)(function(e){var t=(0,s.useTranslation)().t;return n().createElement(u.Checkbox.Group,{style:{width:"100%",display:"block"},value:e.value,onChange:function(t){var n=["ui.*","pm","pm.*","app"],r=n.map(function(e){return"!".concat(e)}),o=l()(F(e.value||[]).concat(F(t))).filter(function(e){return e&&!r.includes(e)}).map(function(e){return!n.includes(e)||(null==t?void 0:t.includes(e))?e:"!".concat(e)}),i=!0,a=!1,u=void 0;try{for(var c,s=n[Symbol.iterator]();!(i=(c=s.next()).done);i=!0){var f=c.value;!o.includes(f)&&!o.includes("!".concat(f))&&o.push("!".concat(f))}}catch(e){a=!0,u=e}finally{try{!i&&null!=s.return&&s.return()}finally{if(a)throw u}}e.onChange(o)}},n().createElement("div",{style:{marginTop:16}},n().createElement(u.Checkbox,{value:"ui.*"},t("Allows to configure interface"))),n().createElement("div",{style:{marginTop:8}},n().createElement(u.Checkbox,{value:"pm"},t("Allows to install, activate, disable plugins"))),n().createElement("div",{style:{marginTop:8}},n().createElement(u.Checkbox,{value:"pm.*"},t("Allows to configure plugins"))),n().createElement("div",{style:{marginTop:8}},n().createElement(u.Checkbox,{value:"app"},t("Allows to clear cache, reboot application"))))}),$=function(){var o,c,l=(0,t.useContext)(p),s=l.role,y=l.setRole,d=f().t,v=(0,e.useAPIClient)(),m=null==s?void 0:null===(c=s.snippets)||void 0===c?void 0:c.includes("pm.*");var b=(0,a.useMemoizedFn)((o=D(function(e){return q(this,function(t){switch(t.label){case 0:return[4,v.resource("roles").update({filterByTk:s.name,values:{snippets:e.values.snippets}})];case 1:return t.sent(),y(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,o,i;r=e,o=t,i=n[t],o in r?Object.defineProperty(r,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[o]=i})}return e}({},s,e.values)),u.message.success(d("Saved successfully")),[2]}})}),function(e){return o.apply(this,arguments)})),h=(0,t.useMemo)(function(){return(0,r.createForm)({values:s,effects:function(){var e;(0,r.onFormValuesChange)((e=D(function(e){return q(this,function(t){switch(t.label){case 0:return[4,b(e)];case 1:return t.sent(),[2]}})}),function(t){return e.apply(this,arguments)}))}})},[s,b]);return n().createElement(e.SchemaComponent,{components:{SnippetCheckboxGroup:z,StrategyActions:T,PluginPermissions:A},scope:{pm:m},schema:{type:"void",name:(0,i.uid)(),"x-component":"div",properties:{general:{"x-component":"FormV2","x-component-props":{form:h},properties:{snippets:{title:d("Configure permissions"),type:"boolean","x-decorator":"FormItem","x-component":"SnippetCheckboxGroup"}}},plugins:{"x-component":"FormV2",properties:{pluginSettings:{title:d("Plugin settings"),"x-decorator":"FormItem","x-component":"PluginPermissions","x-visible":"{{pm}}"}}}}}})},U=(0,t.createContext)(null);U.displayName="MenuItemsContext";var N=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=[];for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){var r=e[n],o={title:r.title,uid:r["x-uid"]};r.properties&&(o.children=N(r.properties)),t.push(o)}return t},L=function(t){var r,o,i=(0,e.useAdminSchemaUid)(),a=(0,e.useRequest)({url:"uiSchemas:getProperties/".concat(i)});if(a.loading)return n().createElement(u.Spin,null);var c=N(null===(o=a.data)||void 0===o?void 0:null===(r=o.data)||void 0===r?void 0:r.properties);return n().createElement(U.Provider,{value:{service:a,items:c}},t.children)};function G(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 K(e,t,n,r,o,i,a){try{var u=e[i](a),c=u.value}catch(e){n(e);return}u.done?t(c):Promise.resolve(c).then(r,o)}function V(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){K(i,r,o,a,u,"next",e)}function u(e){K(i,r,o,a,u,"throw",e)}a(void 0)})}}function B(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r,o,i;r=e,o=t,i=n[t],o in r?Object.defineProperty(r,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[o]=i})}return e}function W(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function H(e){return function(e){if(Array.isArray(e))return G(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||Y(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 Y(e,t){if(e){if("string"==typeof e)return G(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 G(e,t)}}function J(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:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}var Q=function(e){if(!Array.isArray(e))return[];var t=[],n=!0,r=!1,o=void 0;try{for(var i,a=e[Symbol.iterator]();!(n=(i=a.next()).done);n=!0){var u=i.value;t.push(u.uid),t.push.apply(t,H(Q(u.children)))}}catch(e){r=!0,o=e}finally{try{!n&&null!=a.return&&a.return()}finally{if(r)throw o}}return t},X=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];if(!e)return[];var r=!0,o=!1,i=void 0;try{for(var a,u=e[Symbol.iterator]();!(r=(a=u.next()).done);r=!0){var c=a.value;if(n.push(c.uid),t(c))return n;if(c.children){var l=X(c.children,t,n);if(l.length)return l}n.pop()}}catch(e){o=!0,i=e}finally{try{!r&&null!=u.return&&u.return()}finally{if(o)throw i}}return[]},Z=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=!0,r=!1,o=void 0;try{for(var i,a=e[Symbol.iterator]();!(n=(i=a.next()).done);n=!0){var u=i.value;t.push(u.uid),u.children&&u.children.length&&Z(u.children,t)}}catch(e){r=!0,o=e}finally{try{!n&&null!=a.return&&a.return()}finally{if(r)throw o}}return t},ee=function(o){var c,l,f,d,v,m=o.active,b=g().styles,h=(0,t.useContext)(p),x=h.role,w=h.setRole,O=(0,e.useAPIClient)(),S=(0,t.useContext)(U).items,j=(0,s.useTranslation)().t,E=Q(S);var A=(c=(0,t.useState)([]),l=2,function(e){if(Array.isArray(e))return e}(c)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,u=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{!a&&null!=o.return&&o.return()}finally{if(u)throw r}}return i}}(c,2)||Y(c,l)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),P=A[0],_=A[1],C=(0,e.useRequest)({resource:"roles.menuUiSchemas",resourceOf:x.name,action:"list",params:{paginate:!1}},{ready:!!x&&m,refreshDeps:[null==x?void 0:x.name],onSuccess:function(e){var t;_((null==e?void 0:null===(t=e.data)||void 0===t?void 0:t.map(function(e){return e["x-uid"]}))||[])}}),k=C.loading,I=C.refresh,T=O.resource("roles.menuUiSchemas",x.name),M=E.length===P.length;var R=(f=V(function(e,t){var n,r,o,i;return J(this,function(a){switch(a.label){case 0:if(n=X(S,function(e){return e.uid===t.uid}),r=Z(null==t?void 0:t.children,[]),!e)return[3,2];return o=r.concat(t.uid),_(H(P.filter(function(e){return!o.includes(e)}))),[4,T.remove({values:o})];case 1:return a.sent(),[3,4];case 2:return i=r.concat(n),_(function(e){return(0,y.uniq)(H(e).concat(H(i)))}),[4,T.add({values:i})];case 3:a.sent(),a.label=4;case 4:return u.message.success(j("Saved successfully")),[2]}})}),function(e,t){return f.apply(this,arguments)}),D=function(e){return e.map(function(e){var t=j(e.title);return e.children?W(B({},e),{title:t,children:D(e.children)}):W(B({},e),{title:t})})};var F=(0,a.useMemoizedFn)((d=V(function(e){return J(this,function(t){switch(t.label){case 0:return[4,O.resource("roles").update({filterByTk:x.name,values:e.values})];case 1:return t.sent(),w(B({},x,e.values)),u.message.success(j("Saved successfully")),[2]}})}),function(e){return d.apply(this,arguments)})),q=(0,t.useMemo)(function(){return(0,r.createForm)({values:x,effects:function(){var e;(0,r.onFormValuesChange)((e=V(function(e){return J(this,function(t){switch(t.label){case 0:return[4,F(e)];case 1:return t.sent(),[2]}})}),function(t){return e.apply(this,arguments)}))}})},[x,F]);return n().createElement(n().Fragment,null,n().createElement(e.SchemaComponent,{schema:{type:"void",name:(0,i.uid)(),"x-component":"FormV2","x-component-props":{form:q},properties:{allowNewMenu:{title:j("Menu permissions"),"x-decorator":"FormItem","x-component":"Checkbox","x-content":j("New menu items are allowed to be accessed by default.")}}}}),n().createElement(u.Table,{className:b,loading:k,rowKey:"uid",pagination:!1,expandable:{defaultExpandAllRows:!0},columns:[{dataIndex:"title",title:j("Menu item title")},{dataIndex:"accessible",title:n().createElement(n().Fragment,null,n().createElement(u.Checkbox,{checked:M,onChange:(v=V(function(e){return J(this,function(e){switch(e.label){case 0:if(!M)return[3,2];return[4,T.set({values:[]})];case 1:return e.sent(),[3,4];case 2:return[4,T.set({values:E})];case 3:e.sent(),e.label=4;case 4:return I(),u.message.success(j("Saved successfully")),[2]}})}),function(e){return v.apply(this,arguments)})})," ",j("Accessible")),render:function(e,t){var r=P.includes(t.uid);return n().createElement(u.Checkbox,{checked:r,onChange:function(){return R(r,t)}})}}],dataSource:D(S)}))};function et(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)}}var en=function(){var e,t,r;function o(){var e,t,r;!function(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}(this,o),e=this,t="permissionsTabs",r=[function(e){var t=e.t,r=e.TabLayout;return{key:"general",label:t("System"),children:n().createElement(r,null,n().createElement($,null))}},function(e){var t=e.activeKey,r=e.t,o=e.TabLayout;return{key:"menu",label:r("Desktop menu"),children:n().createElement(o,null,n().createElement(L,null,n().createElement(ee,{active:"menu"===t})))}}],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r}return e=o,t=[{key:"addPermissionsTab",value:function(e){this.permissionsTabs.push(e)}},{key:"getPermissionsTabs",value:function(e){return this.permissionsTabs.map(function(t){return"function"==typeof t?t(e):t})}}],et(e.prototype,t),o}(),er=d("482"),eo=d("5773"),ei=d.n(eo);function ea(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var eu={type:"object",properties:ea({},(0,i.uid)(),{type:"void","x-component":"Action.Drawer","x-decorator":"Form","x-decorator-props":{useValues:function(n){var r,o,i=(0,e.useRecord)();var a=(0,e.useRequest)(function(){return Promise.resolve({data:ei()(i,["title","name","default"])})},(r=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){ea(e,t,n[t])})}return e}({},n),o=(o={manual:!0},o),Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(o)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(o)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(o,e))}),r)),u=(0,e.useActionContext)();return(0,t.useEffect)(function(){u.visible&&a.run()},[u.visible]),a}},title:'{{t("Edit role")}}',properties:{title:{"x-component":"CollectionField","x-decorator":"FormItem"},name:{"x-component":"CollectionField","x-decorator":"FormItem","x-disabled":!0},default:{title:"","x-component":"CollectionField","x-decorator":"FormItem","x-content":'{{t("Default role")}}',"x-reactions":function(e){e.initialValue?e.disabled=!0:e.disabled=!1}},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ cm.useUpdateAction }}"}}}}}})};function ec(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}var el=function(e){var n,r,o=e.loadMore;var i=(n=(0,t.useState)(null),r=2,function(e){if(Array.isArray(e))return e}(n)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,u=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{!a&&null!=o.return&&o.return()}finally{if(u)throw r}}return i}}(n,2)||function(e,t){if(e){if("string"==typeof e)return ec(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 ec(e,t)}}(n,r)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),a=i[0],u=i[1],c=(0,t.useRef)(null),l=(0,t.useCallback)(function(e){if(!!e)c.current&&c.current.disconnect(),c.current=new IntersectionObserver(function(t){t.forEach(function(t){if(t.target===e.current)t.isIntersecting&&(c.current&&c.current.unobserve(e.current),o())})}),e.current&&c.current&&c.current.observe(e.current)},[o]);return(0,t.useEffect)(function(){return l(a),function(){c.current&&c.current.disconnect()}},[a,l]),{lastItem:a,setLastItem:u}};function es(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function ef(e,t,n,r,o,i,a){try{var u=e[i](a),c=u.value}catch(e){n(e);return}u.done?t(c):Promise.resolve(c).then(r,o)}function ep(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){ef(i,r,o,a,u,"next",e)}function u(e){ef(i,r,o,a,u,"throw",e)}a(void 0)})}}function ey(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,u=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{!a&&null!=o.return&&o.return()}finally{if(u)throw r}}return i}}(e,t)||ev(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 ed(e){return function(e){if(Array.isArray(e))return es(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||ev(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 ev(e,t){if(e){if("string"==typeof e)return es(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 es(e,t)}}function em(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:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}var eb=function(){var r=f().t,o=(0,e.useResourceActionContext)(),i=o.data,a=o.mutate,c=ey((0,t.useState)(!1),2),l=c[0],s=c[1],y=ey((0,t.useState)(null),2),d=y[0],v=y[1],m=(0,t.useContext)(p),b=m.role,h=m.setRole,g=ey((0,t.useState)([]),2),x=g[0],w=g[1],O=ey((0,t.useState)(!1),2),S=O[0],j=O[1],E=(0,e.useAPIClient)(),A=el({loadMore:(0,t.useCallback)(ep(function(){var e,t;return em(this,function(n){switch(n.label){case 0:if(!(e=null==i?void 0:i.meta)||e.page>=e.totalPage)return[2];return j(!0),[4,E.resource("roles").list({page:e.page+1,pageSize:e.pageSize,filter:{"name.$ne":"root"},showAnonymous:!0,sort:["createdAt"],appends:[]})];case 1:return a((null==(t=n.sent())?void 0:t.data)||{}),j(!1),[2]}})}),[i])}),P=A.lastItem,_=A.setLastItem;(0,t.useEffect)(function(){if(!!x[0])h(x[0])},[x,h]),(0,t.useEffect)(function(){var e,t;if(!!(null==i?void 0:null===(e=i.data)||void 0===e?void 0:e.length))_(n().createRef()),(null===(t=i.meta)||void 0===t?void 0:t.page)>1?w(function(e){return e.concat(i.data)}):w(i.data)},[i,_]);var C=(0,t.useMemo)(function(){return x.map(function(e,t){return{key:e.name,label:t===x.length-1?n().createElement("div",{ref:P},n().createElement(eb.Item,{item:e,onEdit:function(){s(!0),v(e)}})):n().createElement(eb.Item,{item:e,onEdit:function(){s(!0),v(e)}})}})},[x,P]);return n().createElement(n().Fragment,null,x.length?n().createElement(u.Menu,{style:{border:"none",maxHeight:"65vh",overflowY:"auto"},items:ed(C).concat(ed(S?[{key:"loading",label:n().createElement(u.Spin,null)}]:[])),selectedKeys:[null==b?void 0:b.name],onSelect:function(e){var t=e.key;h(x.find(function(e){return e.name===t}))}}):n().createElement(u.Empty,{image:u.Empty.PRESENTED_IMAGE_SIMPLE}),n().createElement(e.ActionContextProvider,{value:{visible:l,setVisible:s}},n().createElement(e.RecordProvider,{record:d,collectionName:"departments"},n().createElement(e.SchemaComponent,{scope:{t:r},schema:eu}))))};function eh(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}eb.Item=function(t){var r=t.item,i=t.onEdit,a=f().t,c=(0,e.useResourceActionContext)().refreshAsync,l=u.App.useApp(),s=l.modal,p=l.message,y=(0,e.useAPIClient)(),d=function(){s.confirm({title:a("Delete"),content:a("Are you sure you want to delete it?"),onOk:ep(function(){return em(this,function(e){switch(e.label){case 0:return[4,y.resource("roles").destroy({filterByTk:r.name})];case 1:return e.sent(),p.success(a("Deleted successfully")),[4,c()];case 2:return e.sent(),[2]}})})})},v=o.Schema.compile(r.title,{t:a});return n().createElement(u.Row,null,n().createElement(u.Col,{flex:3,style:{display:"inline-flex",alignItems:"center"}},n().createElement("span",{style:{whiteSpace:"nowrap",width:"120px",overflow:"hidden",textOverflow:"ellipsis"}},n().createElement(er.TagOutlined,null),n().createElement("span",{style:{marginLeft:"10px"},title:v},v))),n().createElement(u.Col,null,r.default?n().createElement(u.Tag,{color:"success",bordered:!1},a("Default")):null,n().createElement(u.Dropdown,{menu:{items:[{label:a("Edit"),key:"edit"},{label:a("Delete"),key:"delete"}],onClick:function(e){var t=e.key;switch(e.domEvent.stopPropagation(),t){case"edit":i();break;case"delete":d()}}}},n().createElement(er.MoreOutlined,null))))};var eg=function(e){return n().createElement("div",{style:{maxHeight:"60vh",overflowY:"auto"}},e.children)},ex=function(r){var o,i,a=r.active,c=f().t;var l=(o=n().useState("general"),i=2,function(e){if(Array.isArray(e))return e}(o)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,u=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{!a&&null!=o.return&&o.return()}finally{if(u)throw r}}return i}}(o,2)||function(e,t){if(e){if("string"==typeof e)return eh(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 eh(e,t)}}(o,i)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),s=l[0],y=l[1],d=(0,t.useContext)(p),v=d.role,m=d.setRole,b=(0,e.usePlugin)(e$),h=(0,e.useACLRoleContext)(),g=(0,t.useMemo)(function(){return b.settingsUI.getPermissionsTabs({t:c,activeKey:s,TabLayout:eg,activeRole:v,currentUserRole:h}).filter(Boolean)},[s,b.settingsUI,v,c,h]),x=(0,e.useAPIClient)(),w=(0,e.useRequest)(function(){return x.resource("roles").get({filterByTk:null==v?void 0:v.name}).then(function(e){var t,n,r=null==e?void 0:null===(t=e.data)||void 0===t?void 0:t.data;return null===(n=r.snippets)||void 0===n||n.forEach(function(e){r[e]=!0}),r})},{ready:a&&!!v,refreshDeps:[null==v?void 0:v.name]}).data;return(0,t.useEffect)(function(){y("general")},[null==v?void 0:v.name]),(0,t.useEffect)(function(){m(w)},[w,m]),n().createElement(_,null,n().createElement(u.Tabs,{type:"card",activeKey:s,onChange:function(e){return y(e)},items:g}))},ew=function(){var t=f().t;return n().createElement(e.SchemaComponent,{scope:{t:t},schema:{type:"void",properties:{newRole:{type:"void",title:t("New role"),"x-component":"Action","x-component-props":{type:"text",icon:"PlusOutlined",style:{width:"100%",textAlign:"left"}},properties:{drawer:{type:"void","x-component":"Action.Drawer","x-decorator":"Form","x-decorator-props":{useValues:function(t){var n,r,o=(0,e.useActionContext)();return(0,e.useRequest)(function(){return Promise.resolve({data:{name:"r_".concat((0,i.uid)()),snippets:["!ui.*","!pm","!pm.*"]}})},(n=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r,o,i;r=e,o=t,i=n[t],o in r?Object.defineProperty(r,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[o]=i})}return e}({},t),r=(r={refreshDeps:[o.visible]},r),Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(r)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(r)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(r,e))}),n))}},title:t("New role"),properties:{title:{"x-component":"CollectionField","x-decorator":"FormItem"},name:{"x-component":"CollectionField","x-decorator":"FormItem",description:'{{t("Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.")}}'},default:{"x-component":"CollectionField","x-decorator":"FormItem",title:"","x-content":'{{t("Default role")}}'},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ cm.useCreateAction }}"}}}}}}}}}}})};function eO(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 eS(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,u=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{!a&&null!=o.return&&o.return()}finally{if(u)throw r}}return i}}(e,t)||ej(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 ej(e,t){if(e){if("string"==typeof e)return eO(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 eO(e,t)}}var eE={name:"roles",filterTargetKey:"name",targetKey:"name",fields:[{type:"string",name:"title",interface:"input",uiSchema:{title:'{{t("Role display name")}}',type:"number","x-component":"Input",required:!0}},{type:"string",name:"name",interface:"input",uiSchema:{title:'{{t("Role UID")}}',type:"string","x-component":"Input"}},{type:"boolean",name:"default",interface:"boolean",uiSchema:{title:'{{t("Default role")}}',type:"boolean","x-component":"Checkbox"}}]},eA=function(){var r,i,a,c=f().t,l=(0,e.usePlugin)(e$),s=eS(n().useState("permissions"),2),y=s[0],d=s[1],v=Array.from(l.rolesManager.list()).map(function(e){var t=eS(e,2),r=t[0],i=t[1];return{key:r,label:o.Schema.compile(i.title,{t:c}),children:i.Component?n().createElement(i.Component,{active:y===r}):null}}),m=eS((0,t.useState)(null),2),b=m[0],h=m[1],g=(0,e.useSchemaComponentContext)();return n().createElement(e.SchemaComponentContext.Provider,{value:(r=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r,o,i;r=e,o=t,i=n[t],o in r?Object.defineProperty(r,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[o]=i})}return e}({},g),i=(i={designable:!1},i),Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(i)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(i)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(i,e))}),r)},n().createElement(p.Provider,{value:{role:b,setRole:h}},n().createElement(u.Card,null,n().createElement(u.Row,{gutter:24,style:{flexWrap:"nowrap"}},n().createElement(u.Col,{flex:"280px",style:{borderRight:"1px solid #eee",minWidth:"250px"}},n().createElement(e.ResourceActionProvider,{collection:eE,request:{resource:"roles",action:"list",params:{filter:{"name.$ne":"root"},showAnonymous:!0,sort:["createdAt"],appends:[]}}},n().createElement(e.CollectionProvider_deprecated,{collection:eE},n().createElement(u.Row,null,n().createElement(ew,null)),n().createElement(u.Divider,{style:{margin:"12px 0"}}),n().createElement(eb,null)))),n().createElement(u.Col,{flex:"auto",style:{overflow:"hidden"}},n().createElement(u.Tabs,{activeKey:y,onChange:function(e){return d(e)},items:[{key:"permissions",label:c("Permissions"),children:n().createElement(ex,{active:"permissions"===y})}].concat(function(e){if(Array.isArray(e))return eO(e)}(a=v)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(a)||ej(a)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())}))))))},eP=d("7584");function e_(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)}}var eC=function(){var e,t,n;function r(){var e,t,n;!function(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}(this,r),e=this,t="rolesManager",n=new eP.Registry,t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}return e=r,t=[{key:"add",value:function(e,t){this.rolesManager.register(e,t)}},{key:"list",value:function(){return this.rolesManager.getEntities()}}],e_(e.prototype,t),r}();function ek(e,t,n,r,o,i,a){try{var u=e[i](a),c=u.value}catch(e){n(e);return}u.done?t(c):Promise.resolve(c).then(r,o)}function eI(e,t,n){return(eI=eq()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&eD(o,n.prototype),o}).apply(null,arguments)}function eT(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 eM(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function eR(e){return(eR=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function eD(e,t){return(eD=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function eF(e){var t="function"==typeof Map?new Map:void 0;return(eF=function(e){var n;if(null===e||(n=e,-1===Function.toString.call(n).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,r)}function r(){return eI(e,arguments,eR(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),eD(r,e)})(e)}function eq(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(eq=function(){return!!e})()}var ez=function(e){var t,n,r;function o(){var e,t,n,r;return!function(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}(this,o),t=this,n=o,r=arguments,n=eR(n),eM(e=function(e,t){return t&&("object"===function(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}(t)||"function"==typeof t)?t:function(e){if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(t,eq()?Reflect.construct(n,r||[],eR(t).constructor):n.apply(t,r)),"rolesManager",new eC),eM(e,"settingsUI",new en),e}return!function(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&eD(e,t)}(o,e),t=o,n=[{key:"load",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:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}(this,function(e){return t.pluginSettingsManager.add("users-permissions.roles",{title:t.t("Roles & Permissions"),icon:"LockOutlined",Component:eA,aclSnippet:"pm.acl.roles",sort:3}),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){ek(i,r,o,a,u,"next",e)}function u(e){ek(i,r,o,a,u,"throw",e)}a(void 0)})})()}}],eT(t.prototype,n),o}(eF(e.Plugin)),e$=ez}(),v}()});
|
package/dist/externalVersion.js
CHANGED
|
@@ -11,21 +11,20 @@ module.exports = {
|
|
|
11
11
|
"antd": "5.12.8",
|
|
12
12
|
"react": "18.2.0",
|
|
13
13
|
"react-i18next": "11.18.6",
|
|
14
|
-
"@nocobase/client": "1.
|
|
14
|
+
"@nocobase/client": "1.5.0-alpha.1",
|
|
15
15
|
"@formily/shared": "2.3.2",
|
|
16
16
|
"@formily/react": "2.3.0",
|
|
17
17
|
"@ant-design/icons": "5.2.6",
|
|
18
|
-
"@nocobase/utils": "1.
|
|
19
|
-
"@nocobase/actions": "1.
|
|
20
|
-
"@nocobase/cache": "1.
|
|
21
|
-
"@nocobase/database": "1.
|
|
22
|
-
"@nocobase/server": "1.
|
|
23
|
-
"async-mutex": "0.3.2",
|
|
18
|
+
"@nocobase/utils": "1.5.0-alpha.1",
|
|
19
|
+
"@nocobase/actions": "1.5.0-alpha.1",
|
|
20
|
+
"@nocobase/cache": "1.5.0-alpha.1",
|
|
21
|
+
"@nocobase/database": "1.5.0-alpha.1",
|
|
22
|
+
"@nocobase/server": "1.5.0-alpha.1",
|
|
24
23
|
"lodash": "4.17.21",
|
|
25
|
-
"@nocobase/test": "1.
|
|
24
|
+
"@nocobase/test": "1.5.0-alpha.1",
|
|
26
25
|
"@formily/core": "2.3.0",
|
|
27
26
|
"ahooks": "3.7.8",
|
|
28
27
|
"@formily/antd-v5": "1.1.9",
|
|
29
28
|
"antd-style": "3.7.1",
|
|
30
|
-
"@nocobase/acl": "1.
|
|
29
|
+
"@nocobase/acl": "1.5.0-alpha.1"
|
|
31
30
|
};
|
package/dist/server/server.d.ts
CHANGED
|
@@ -15,6 +15,7 @@ export declare class PluginACLServer extends Plugin {
|
|
|
15
15
|
get acl(): import("@nocobase/acl").ACL;
|
|
16
16
|
writeResourceToACL(resourceModel: RoleResourceModel, transaction: Transaction): Promise<void>;
|
|
17
17
|
writeActionToACL(actionModel: RoleResourceActionModel, transaction: Transaction): Promise<void>;
|
|
18
|
+
handleSyncMessage(message: any): Promise<void>;
|
|
18
19
|
writeRolesToACL(options: any): Promise<void>;
|
|
19
20
|
writeRoleToACL(role: RoleModel, options?: any): Promise<void>;
|
|
20
21
|
beforeLoad(): Promise<void>;
|
package/dist/server/server.js
CHANGED
|
@@ -43,7 +43,6 @@ module.exports = __toCommonJS(server_exports);
|
|
|
43
43
|
var import_actions = require("@nocobase/actions");
|
|
44
44
|
var import_database = require("@nocobase/database");
|
|
45
45
|
var import_server = require("@nocobase/server");
|
|
46
|
-
var import_async_mutex = require("async-mutex");
|
|
47
46
|
var import_lodash = __toESM(require("lodash"));
|
|
48
47
|
var import_path = require("path");
|
|
49
48
|
var import_available_actions = require("./actions/available-actions");
|
|
@@ -74,6 +73,23 @@ class PluginACLServer extends import_server.Plugin {
|
|
|
74
73
|
resourceName: resource.get("name")
|
|
75
74
|
});
|
|
76
75
|
}
|
|
76
|
+
async handleSyncMessage(message) {
|
|
77
|
+
const { type } = message;
|
|
78
|
+
if (type === "syncRole") {
|
|
79
|
+
const { roleName } = message;
|
|
80
|
+
const role = await this.app.db.getRepository("roles").findOne({
|
|
81
|
+
filter: {
|
|
82
|
+
name: roleName
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
await this.writeRoleToACL(role, {
|
|
86
|
+
withOutResources: true
|
|
87
|
+
});
|
|
88
|
+
await this.app.emitAsync("acl:writeResources", {
|
|
89
|
+
roleName: role.get("name")
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
}
|
|
77
93
|
async writeRolesToACL(options) {
|
|
78
94
|
const roles = await this.app.db.getRepository("roles").find({
|
|
79
95
|
appends: ["resources", "resources.actions"]
|
|
@@ -211,6 +227,15 @@ class PluginACLServer extends import_server.Plugin {
|
|
|
211
227
|
transaction
|
|
212
228
|
});
|
|
213
229
|
}
|
|
230
|
+
this.sendSyncMessage(
|
|
231
|
+
{
|
|
232
|
+
type: "syncRole",
|
|
233
|
+
roleName: model.get("name")
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
transaction: options.transaction
|
|
237
|
+
}
|
|
238
|
+
);
|
|
214
239
|
});
|
|
215
240
|
this.app.db.on("roles.afterDestroy", (model) => {
|
|
216
241
|
const roleName = model.get("name");
|
|
@@ -260,9 +285,9 @@ class PluginACLServer extends import_server.Plugin {
|
|
|
260
285
|
});
|
|
261
286
|
}
|
|
262
287
|
});
|
|
263
|
-
const mutex = new import_async_mutex.Mutex();
|
|
264
288
|
this.app.db.on("fields.afterDestroy", async (model, options) => {
|
|
265
|
-
|
|
289
|
+
const lockKey = `${this.name}:fields.afterDestroy:${model.get("collectionName")}:${model.get("name")}`;
|
|
290
|
+
await this.app.lockManager.runExclusive(lockKey, async () => {
|
|
266
291
|
const collectionName = model.get("collectionName");
|
|
267
292
|
const fieldName = model.get("name");
|
|
268
293
|
const resourceActions = await this.app.db.getRepository("dataSourcesRolesResourcesActions").find({
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"displayName.zh-CN": "权限控制",
|
|
5
5
|
"description": "Based on roles, resources, and actions, access control can precisely manage interface configuration permissions, data operation permissions, menu access permissions, and plugin permissions.",
|
|
6
6
|
"description.zh-CN": "基于角色、资源和操作的权限控制,可以精确控制界面配置权限、数据操作权限、菜单访问权限、插件权限。",
|
|
7
|
-
"version": "1.
|
|
7
|
+
"version": "1.5.0-alpha.1",
|
|
8
8
|
"license": "AGPL-3.0",
|
|
9
9
|
"main": "./dist/server/index.js",
|
|
10
10
|
"homepage": "https://docs.nocobase.com/handbook/acl",
|
|
@@ -14,7 +14,6 @@
|
|
|
14
14
|
],
|
|
15
15
|
"devDependencies": {
|
|
16
16
|
"@types/jsonwebtoken": "^8.5.8",
|
|
17
|
-
"async-mutex": "^0.3.2",
|
|
18
17
|
"jsonwebtoken": "^8.5.1",
|
|
19
18
|
"react": "^18.2.0",
|
|
20
19
|
"react-dom": "^18.2.0"
|
|
@@ -34,5 +33,5 @@
|
|
|
34
33
|
"url": "git+https://github.com/nocobase/nocobase.git",
|
|
35
34
|
"directory": "packages/plugins/acl"
|
|
36
35
|
},
|
|
37
|
-
"gitHead": "
|
|
36
|
+
"gitHead": "abe58fad69534a13c2502a47da86425a597c3ba3"
|
|
38
37
|
}
|