@nocobase/plugin-users 1.7.0-beta.9 → 1.8.0-beta.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.
@@ -0,0 +1,10 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ "use strict";(self.webpackChunk_nocobase_plugin_users=self.webpackChunk_nocobase_plugin_users||[]).push([["718"],{404:function(e,t,r){r.r(t),r.d(t,{UsersProvider:function(){return m},useEditProfile:function(){return y}});var n=r(772),o=r(156),i=r.n(o),u=r(888),l=r(875),a=r(505);function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function c(e,t,r,n,o,i,u){try{var l=e[i](u),a=l.value}catch(e){r(e);return}l.done?t(a):Promise.resolve(a).then(n,o)}function f(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function p(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){f(e,t,r[t])})}return e}var d=function(){var e=(0,n.useCurrentUserContext)(),t=(0,n.useActionContext)().setVisible,r=(0,a.useForm)(),o=(0,n.useAPIClient)(),i=(0,a.useFieldSchema)(),u=(0,a.useField)(),l=(0,n.useCollectValuesToSubmit)();return{type:"primary",htmlType:"submit",onClick:function(){var n;return(n=function(){var n,a,s,c,f;return function(e,t){var r,n,o,i,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var a=[i,l];if(r)throw TypeError("Generator is already executing.");for(;u;)try{if(r=1,n&&(o=2&a[0]?n.return:a[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,a[1])).done)return o;switch(n=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return u.label++,{value:a[1],done:!1};case 5:u.label++,n=a[1],a=[0];continue;case 7:a=u.ops.pop(),u.trys.pop();continue;default:if(!(o=(o=u.trys).length>0&&o[o.length-1])&&(6===a[0]||2===a[0])){u=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){u.label=a[1];break}if(6===a[0]&&u.label<o[1]){u.label=o[1],o=a;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(a);break}o[2]&&u.ops.pop(),u.trys.pop();continue}a=t.call(e,u)}catch(e){a=[6,e],n=0}finally{r=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}}}(this,function(d){switch(d.label){case 0:if(s=(a=null!=(n=null==i?void 0:i["x-action-settings"])?n:{}).triggerWorkflows,a.skipValidator)return[3,2];return[4,r.submit()];case 1:d.sent(),d.label=2;case 2:return[4,l()];case 3:c=d.sent(),u.data=u.data||{},u.data.loading=!0,d.label=4;case 4:return d.trys.push([4,7,,8]),[4,o.resource("users").updateProfile({values:c,triggerWorkflows:(null==s?void 0:s.length)?s.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0})];case 5:return d.sent(),e.mutate({data:p({},null==e||null==(f=e.data)?void 0:f.data,c)}),[4,r.reset()];case 6:return d.sent(),u.data.loading=!1,t(!1),[3,8];case 7:return d.sent(),u.data.loading=!1,[3,8];case 8:return[2]}})},function(){var e=this,t=arguments;return new Promise(function(r,o){var i=n.apply(e,t);function u(e){c(i,r,o,u,l,"next",e)}function l(e){c(i,r,o,u,l,"throw",e)}u(void 0)})})()}}},b=function(){var e,t=(0,n.useCollectionManager)().getCollection("users"),r=(0,n.useCurrentUserContext)().data,u=(0,o.useMemo)(function(){var e,r;return e=p({},t),r=r={name:"users",fields:t.fields.filter(function(e){return!["password","roles"].includes(e.name)})},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r})(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}),e},[t]);return i().createElement(n.ExtendCollectionsProvider,{collections:[u]},i().createElement(n.RemoteSchemaComponent,{uid:"nocobase-user-profile-edit-form",noForm:!0,scope:{useUpdateProfileActionProps:d,currentUserId:null==(e=r.data)?void 0:e.id}}))},y=function(){var e,t=(0,o.useContext)(n.DropdownVisibleContext),r=(e=(0,o.useState)(!1),function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r,n,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],u=!0,l=!1;try{for(o=o.call(e);!(u=(r=o.next()).done)&&(i.push(r.value),i.length!==t);u=!0);}catch(e){l=!0,n=e}finally{try{u||null==o.return||o.return()}finally{if(l)throw n}}return i}}(e,2)||function(e,t){if(e){if("string"==typeof e)return s(e,2);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return s(e,t)}}(e,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),a=r[0],c=r[1],p=(0,u.B)().t,d=((0,n.useSystemSettings)()||{}).data,y=((null==d?void 0:d.data)||{}).enableEditProfile,m=(0,o.useMemo)(function(){return{key:"profile",eventKey:"EditProfile",onClick:function(){c(!0),null==t||t.setVisible(!1)},label:i().createElement("div",null,p("Edit profile"),i().createElement(n.ActionContextProvider,{value:{visible:a,setVisible:c}},i().createElement("div",{onClick:function(e){return e.stopPropagation()}},i().createElement(n.SchemaComponent,{components:{ProfileEditForm:b},schema:{type:"object",properties:f({},(0,l.uid)(),{"x-component":"Action.Drawer","x-component-props":{},type:"void",title:'{{t("Edit profile")}}',properties:{form:{type:"void","x-component":"ProfileEditForm"}}})}}))))}},[a]);return!1===y?null:m},m=function(e){var t=(0,n.useCurrentUserSettingsMenu)().addMenuItem,r=y(),u=(0,n.useSystemSettings)().data,l=((null==u?void 0:u.data)||{}).enableEditProfile;return(0,o.useEffect)(function(){!1!==l&&t(r,{after:"divider_1"})},[t,r,l]),i().createElement(i().Fragment,null,e.children)}},888:function(e,t,r){r.d(t,{B:function(){return o}});var n=r(238);function o(){return(0,n.useTranslation)(["users","client"],{nsMode:"fallback"})}}}]);
@@ -0,0 +1,10 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ "use strict";(self.webpackChunk_nocobase_plugin_users=self.webpackChunk_nocobase_plugin_users||[]).push([["554"],{891:function(e,t,n){n.r(t),n.d(t,{UsersManagement:function(){return B}});var r=n(964),o=n(563),a=n(505),u=n(772),i=n(721),s=n(156),l=n.n(s),c=n(888),f=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,t="ABCDEFGHIJKLMNOPQRSTUVWXYZ",n="abcdefghijklmnopqrstuvwxyz",r="0123456789",o="!#$%^&*-_+=",a=t+n+r+o,u=new Uint32Array(e);crypto.getRandomValues(u);var i="";i+=t.charAt(u[0]%t.length),i+=n.charAt(u[1]%n.length),i+=r.charAt(u[2]%r.length),i+=o.charAt(u[3]%o.length);for(var s=4;s<e;s++){var l=u[s]%a.length;i+=a.charAt(l)}return i[0]+i.slice(1).split("").sort(function(){return Math.random()-.5}).join("")};function p(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 m=function(){var e,t=(0,c.B)().t,n=(0,a.useField)(),r=(e=l().useState(!1),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 a=[],u=!0,i=!1;try{for(o=o.call(e);!(u=(n=o.next()).done)&&(a.push(n.value),a.length!==t);u=!0);}catch(e){i=!0,r=e}finally{try{u||null==o.return||o.return()}finally{if(i)throw r}}return a}}(e,2)||function(e,t){if(e){if("string"==typeof e)return p(e,2);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 p(e,t)}}(e,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),o=r[0],m=r[1],b=(0,u.useActionContext)();return(0,s.useEffect)(function(){b.visible||n.reset()},[n,b.visible]),(0,s.useEffect)(function(){n.value&&n.validate()},[n.value]),l().createElement(i.Row,{gutter:10},l().createElement(i.Col,{span:18},l().createElement(u.Password,{checkStrength:!0,visibilityToggle:{visible:o,onVisibleChange:m},value:n.value,onChange:function(e){return n.setValue(e.target.value)},autoComplete:"new-password"})),l().createElement(i.Col,{span:4},l().createElement(i.Button,{onClick:function(){n.setValue(f()),m(!0)}},t("Random password"))))},b=n(241);function v(e,t,n,r,o,a,u){try{var i=e[a](u),s=i.value}catch(e){n(e);return}i.done?t(s):Promise.resolve(s).then(r,o)}function d(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function u(e){v(a,r,o,u,i,"next",e)}function i(e){v(a,r,o,u,i,"throw",e)}u(void 0)})}}function y(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}function h(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 g(e,t){var n,r,o,a,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function i(a){return function(i){var s=[a,i];if(n)throw TypeError("Generator is already executing.");for(;u;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return u.label++,{value:s[1],done:!1};case 5:u.label++,r=s[1],s=[0];continue;case 7:s=u.ops.pop(),u.trys.pop();continue;default:if(!(o=(o=u.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){u=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){u.label=s[1];break}if(6===s[0]&&u.label<o[1]){u.label=o[1],o=s;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(s);break}o[2]&&u.ops.pop(),u.trys.pop();continue}s=t.call(e,u)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}}}function C(){var e,t,n=(e=["\n .ant-tabs-nav {\n margin-bottom: 0px;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return C=function(){return n},n}var w=function(){var e=(0,u.useActionContext)().setVisible,t=(0,a.useForm)();return{type:"default",onClick:function(){e(!1),t.reset()}}},P=function(){var e=(0,u.useActionContext)().setVisible,t=i.App.useApp().message,n=(0,a.useForm)(),r=(0,u.useDataBlockResource)(),o=(0,u.useDataBlockRequest)().refresh,s=(0,c.B)().t,l=(0,u.useCollection)();return{htmlType:"submit",type:"primary",onClick:function(){return d(function(){var a;return g(this,function(u){switch(u.label){case 0:return[4,n.submit()];case 1:if(u.sent(),!(a=n.values)[l.filterTargetKey])return[3,3];return[4,r.update({values:a,filterByTk:a[l.filterTargetKey]})];case 2:return u.sent(),[3,5];case 3:return[4,r.create({values:a})];case 4:u.sent(),u.label=5;case 5:return o(),t.success(s("Saved successfully")),e(!1),n.reset(),[2]}})})()}}},S=function(){var e=(0,u.useCollectionRecordData)();return{form:(0,s.useMemo)(function(){return(0,o.createForm)({initialValues:e})},[e])}},E=function(){return l().createElement(u.RemoteSchemaComponent,{uid:"nocobase-admin-profile-create-form",noForm:!0})},O=function(){var e=(0,u.useCollectionManager)().getCollection("users"),t=h(y({},e),{name:"users",fields:e.fields.filter(function(e){return"password"!==e.name})});return l().createElement(u.ExtendCollectionsProvider,{collections:[t]},l().createElement(u.RemoteSchemaComponent,{uid:"nocobase-admin-profile-edit-form",noForm:!0,scope:{useCancelActionProps:w}}))},A=function(){var e=(0,u.useSchemaComponentContext)();return l().createElement(u.SchemaComponentContext.Provider,{value:h(y({},e),{designable:!1})},l().createElement(u.SchemaComponent,{schema:{type:"void",properties:{filter:{type:"void",title:'{{ t("Filter") }}',"x-action":"filter","x-component":"Filter.Action","x-use-component-props":"useFilterActionProps","x-component-props":{icon:"FilterOutlined"}}}}}))},j=function(){var e=(0,c.B)().t,t=(0,u.useCollectionManager)();return(0,s.useMemo)(function(){return null==t?void 0:t.getCollection("users")},[t])?l().createElement(u.SchemaComponent,{schema:b.SN,scope:{t:e,useCancelActionProps:w,useSubmitActionProps:P,useEditFormProps:S},components:{PasswordField:m,ProfileEditForm:O,ProfileCreateForm:E,FilterAction:A}}):l().createElement(i.Spin,null)},k=(0,s.createContext)({}),F=function(e){var t=(0,u.useRequest)({url:"users:getSystemSettings"});return l().createElement(k.Provider,{value:t},e.children)},x=function(){var e=(0,c.B)().t,t=(0,a.useForm)();return l().createElement(u.SchemaComponent,{schema:b.eF,scope:{t:e,useFormBlockProps:function(){var e,n=(0,s.useContext)(k),r=(null==n||null==(e=n.data)?void 0:e.data)||{},o=r.enableChangePassword,a=r.enableEditProfile;return(0,s.useEffect)(function(){null==t||t.setValues({enableChangePassword:!1!==o,enableEditProfile:!1!==a})},[n]),{form:t}},useSubmitActionProps:function(){var t=(0,u.useAPIClient)(),n=(0,a.useForm)();return{type:"primary",onClick:function(){return d(function(){var r;return g(this,function(o){switch(o.label){case 0:return[4,n.submit()];case 1:return o.sent(),r=n.values,[4,t.request({url:"users:updateSystemSettings",data:r,method:"POST"})];case 2:return o.sent(),i.message.success(e("Saved successfully")),window.location.reload(),[2]}})})()}}}},components:{UsersSettingsProvider:F}})},B=function(){var e=(0,c.B)().t;return l().createElement(i.Tabs,{defaultActiveKey:"usersManager",type:"card",className:(0,r.css)(C()),items:[{label:e("Users manager"),key:"usersManager",children:l().createElement(j,null)},{label:e("Settings"),key:"usersSettings",children:l().createElement(x,null)}]})}}}]);
@@ -0,0 +1,10 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ "use strict";(self.webpackChunk_nocobase_plugin_users=self.webpackChunk_nocobase_plugin_users||[]).push([["114"],{132:function(e,n,r){r.r(n),r.d(n,{RoleUsersManager:function(){return m}});var t=r(156),o=r.n(t),u=r(721),s=r(772),l=r(465),c=r(888),i=r(241),a=function(){var e,n,r=(0,t.useContext)(s.CollectionContext),o=(0,s.useFilterFieldOptions)(r.fields),u=(0,s.useResourceActionContext)();return(0,s.useFilterFieldProps)({options:o,params:(null==(n=u.state)||null==(e=n.params)?void 0:e[0])||u.params,service:u})};function f(e,n,r,t,o,u,s){try{var l=e[u](s),c=l.value}catch(e){r(e);return}l.done?n(c):Promise.resolve(c).then(t,o)}function v(e){return function(){var n=this,r=arguments;return new Promise(function(t,o){var u=e.apply(n,r);function s(e){f(u,t,o,s,l,"next",e)}function l(e){f(u,t,o,s,l,"throw",e)}s(void 0)})}}function p(e,n){var r,t,o,u,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return u={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(u[Symbol.iterator]=function(){return this}),u;function l(u){return function(l){var c=[u,l];if(r)throw TypeError("Generator is already executing.");for(;s;)try{if(r=1,t&&(o=2&c[0]?t.return:c[0]?t.throw||((o=t.return)&&o.call(t),0):t.next)&&!(o=o.call(t,c[1])).done)return o;switch(t=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return s.label++,{value:c[1],done:!1};case 5:s.label++,t=c[1],c=[0];continue;case 7:c=s.ops.pop(),s.trys.pop();continue;default:if(!(o=(o=s.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){s=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){s.label=c[1];break}if(6===c[0]&&s.label<o[1]){s.label=o[1],o=c;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(c);break}o[2]&&s.ops.pop(),s.trys.pop();continue}c=n.call(e,s)}catch(e){c=[6,e],t=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}var d=function(){var e=(0,s.useAPIClient)(),n=(0,t.useContext)(l.RolesManagerContext).role,r=(0,s.useRecord)(),o=(0,s.useResourceActionContext)().refresh;return{run:function(){return v(function(){return p(this,function(t){switch(t.label){case 0:return[4,e.resource("roles.users",null==n?void 0:n.name).remove({values:[r.id]})];case 1:return t.sent(),o(),[2]}})})()}}},h=function(){var e=(0,c.B)().t,n=u.App.useApp().message,r=(0,s.useAPIClient)(),o=(0,s.useResourceActionContext)(),i=o.state,a=o.setState,f=o.refresh,d=(0,t.useContext)(l.RolesManagerContext).role;return{run:function(){return v(function(){var t;return p(this,function(o){switch(o.label){case 0:if(!(null==(t=null==i?void 0:i.selectedRowKeys)?void 0:t.length))return n.warning(e("Please select users")),[2];return[4,r.resource("roles.users",null==d?void 0:d.name).remove({values:t})];case 1:return o.sent(),null==a||a({selectedRowKeys:[]}),f(),[2]}})})()}}},b=function(e){var n=(0,t.useContext)(l.RolesManagerContext).role;return o().createElement(s.ResourceActionProvider,{collection:i.ij,request:{resource:"users",action:"listExcludeRole",params:{roleName:null==n?void 0:n.name}}},e.children)},m=function(){var e=(0,c.B)().t,n=(0,t.useContext)(l.RolesManagerContext).role,r=(0,s.useRequest)({resource:"roles.users",resourceOf:null==n?void 0:n.name,action:"list"},{ready:!!n});(0,t.useEffect)(function(){r.run()},[n]);var u=(0,t.useRef)([]),f=(0,t.useMemo)(function(){return(0,i.Lu)()},[n]);return o().createElement(s.ResourceActionContext.Provider,{value:function(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{},t=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(t=t.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),t.forEach(function(n){var t;t=r[n],n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t})}return e}({},r)},o().createElement(s.CollectionProvider_deprecated,{collection:i.ij},o().createElement(s.SchemaComponent,{schema:f,components:{RoleUsersProvider:b},scope:{useBulkRemoveUsers:h,useRemoveUser:d,handleSelectRoleUsers:function(e,n){u.current=n},useAddRoleUsers:function(){var e=(0,t.useContext)(l.RolesManagerContext).role,n=(0,s.useAPIClient)(),r=(0,s.useActionContext)().setVisible,o=(0,s.useResourceActionContext)().refresh;return{run:function(){return v(function(){return p(this,function(t){switch(t.label){case 0:return[4,n.resource("roles.users",null==e?void 0:e.name).add({values:u.current.map(function(e){return e.id})})];case 1:return t.sent(),u.current=[],r(!1),o(),[2]}})})()}}},useFilterActionProps:a,t:e}})))}}}]);
@@ -7,4 +7,4 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
 
10
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react-i18next"),require("@formily/shared"),require("@nocobase/plugin-acl/client"),require("@nocobase/utils/client"),require("@nocobase/client"),require("@formily/core"),require("antd"),require("@formily/react"),require("react-router-dom"),require("react"),require("@emotion/css")):"function"==typeof define&&define.amd?define("@nocobase/plugin-users",["react-i18next","@formily/shared","@nocobase/plugin-acl/client","@nocobase/utils/client","@nocobase/client","@formily/core","antd","@formily/react","react-router-dom","react","@emotion/css"],t):"object"==typeof exports?exports["@nocobase/plugin-users"]=t(require("react-i18next"),require("@formily/shared"),require("@nocobase/plugin-acl/client"),require("@nocobase/utils/client"),require("@nocobase/client"),require("@formily/core"),require("antd"),require("@formily/react"),require("react-router-dom"),require("react"),require("@emotion/css")):e["@nocobase/plugin-users"]=t(e["react-i18next"],e["@formily/shared"],e["@nocobase/plugin-acl/client"],e["@nocobase/utils/client"],e["@nocobase/client"],e["@formily/core"],e.antd,e["@formily/react"],e["react-router-dom"],e.react,e["@emotion/css"])}(self,function(e,t,n,r,o,i,u,a,s,c,l){return function(){var f,p,d,m,b,y,v={581:function(e){e.exports=function(e,t){return"undefined"!=typeof __deoptimization_sideEffect__&&__deoptimization_sideEffect__(e,t),t}},964:function(e){"use strict";e.exports=l},563:function(e){"use strict";e.exports=i},505:function(e){"use strict";e.exports=a},875:function(e){"use strict";e.exports=t},772:function(e){"use strict";e.exports=o},465:function(e){"use strict";e.exports=n},584:function(e){"use strict";e.exports=r},721:function(e){"use strict";e.exports=u},156:function(e){"use strict";e.exports=c},238:function(t){"use strict";t.exports=e},128:function(e){"use strict";e.exports=s}},h={};function g(e){var t=h[e];if(void 0!==t)return t.exports;var n=h[e]={exports:{}};return v[e](n,n.exports,g),n.exports}g.m=v,g.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return g.d(t,{a:t}),t},g.d=function(e,t){for(var n in t)g.o(t,n)&&!g.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},g.f={},g.e=function(e){return Promise.all(Object.keys(g.f).reduce(function(t,n){return g.f[n](e,t),t},[]))},g.u=function(e){return""+({114:"e727dfc0317bc5a0",360:"893fe71650db2b0b",554:"75dd12764a8863de",718:"57109fd3173f64b0"})[e]+".js"},g.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),g.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},f={},p="@nocobase/plugin-users:",g.l=function(e,t,n,r){if(f[e]){f[e].push(t);return}if(void 0!==n){for(var o,i,u=document.getElementsByTagName("script"),a=0;a<u.length;a++){var s=u[a];if(s.getAttribute("src")==e||s.getAttribute("data-webpack")==p+n){o=s;break}}}!o&&(i=!0,(o=document.createElement("script")).charset="utf-8",o.timeout=120,g.nc&&o.setAttribute("nonce",g.nc),o.setAttribute("data-webpack",p+n),o.src=e),f[e]=[t];var c=function(t,n){o.onerror=o.onload=null,clearTimeout(l);var r=f[e];if(delete f[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach(function(e){return e(n)}),t)return t(n)},l=setTimeout(c.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=c.bind(null,o.onerror),o.onload=c.bind(null,o.onload),i&&document.head.appendChild(o)},g.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},g.p=(!(d=window.__nocobase_public_path__||"/").endsWith("/")&&(d+="/"),d+"static/plugins/@nocobase/plugin-users/dist/client/"),m={909:0},g.f.j=function(e,t){var n=g.o(m,e)?m[e]:void 0;if(0!==n){if(n)t.push(n[2]);else{var r=new Promise(function(t,r){n=m[e]=[t,r]});t.push(n[2]=r);var o=g.p+g.u(e),i=Error();g.l(o,function(t){if(g.o(m,e)&&(0!==(n=m[e])&&(m[e]=void 0),n)){var r=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;i.message="Loading chunk "+e+" failed.\n("+r+": "+o+")",i.name="ChunkLoadError",i.type=r,i.request=o,n[1](i)}},"chunk-"+e,e)}}},b=function(e,t){var n=t[0],r=t[1],o=t[2],i,u,a=0;if(n.some(function(e){return 0!==m[e]})){for(i in r)g.o(r,i)&&(g.m[i]=r[i]);o&&o(g)}for(e&&e(t);a<n.length;a++)u=n[a],g.o(m,u)&&m[u]&&m[u][0](),m[u]=0},(y=self.webpackChunk_nocobase_plugin_users=self.webpackChunk_nocobase_plugin_users||[]).forEach(b.bind(null,0)),y.push=b.bind(null,y.push.bind(y));var w={};return!function(){"use strict";g.r(w),g.d(w,{default:function(){return G}});var e,t,n,r=g("772"),o=g("584"),i=g("465"),u=g.n(i),a=g("505"),s=g("875"),c=g("238"),l=g("128"),f=g("156"),p=g.n(f);function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function m(e,t,n,r,o,i,u){try{var a=e[i](u),s=a.value}catch(e){n(e);return}a.done?t(s):Promise.resolve(s).then(r,o)}function b(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function u(e){m(i,r,o,u,a,"next",e)}function a(e){m(i,r,o,u,a,"throw",e)}u(void 0)})}}function y(e,t){var n,r,o,i,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(n)throw TypeError("Generator is already executing.");for(;u;)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 u.label++,{value:i[1],done:!1};case 5:u.label++,r=i[1],i=[0];continue;case 7:i=u.ops.pop(),u.trys.pop();continue;default:if(!(o=(o=u.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){u=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){u.label=i[1];break}if(6===i[0]&&u.label<o[1]){u.label=o[1],o=i;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(i);break}o[2]&&u.ops.pop(),u.trys.pop();continue}i=t.call(e,u)}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,a])}}}var v=function(){var e=(0,r.useActionContext)().setVisible,t=(0,a.useForm)();return{run:function(){return b(function(){return y(this,function(n){switch(n.label){case 0:return e(!1),[4,t.reset()];case 1:return n.sent(),[2]}})})()}}},h=function(){var e=(0,l.useNavigate)(),t=(0,r.useActionContext)().setVisible,n=(0,a.useForm)(),o=(0,r.useAPIClient)();return{run:function(){return b(function(){return y(this,function(r){switch(r.label){case 0:return[4,n.submit()];case 1:return r.sent(),[4,o.resource("auth").changePassword({values:n.values})];case 2:return r.sent(),[4,n.reset()];case 3:return r.sent(),t(!1),e("/signin"),[2]}})})()}}};var x={type:"object",properties:(e={},t=(0,s.uid)(),n={"x-decorator":"Form","x-component":"Action.Drawer","x-component-props":{zIndex:2e3},type:"void",title:'{{t("Change password")}}',properties:{oldPassword:{type:"string",title:'{{t("Old password")}}',required:!0,"x-component":"Password","x-decorator":"FormItem"},newPassword:{type:"string",title:'{{t("New password")}}',required:!0,"x-component":"Password","x-decorator":"FormItem","x-validator":{password:!0},"x-component-props":{checkStrength:!0,style:{}},"x-reactions":[{dependencies:[".confirmPassword"],fulfill:{state:{selfErrors:'{{$deps[0] && $self.value && $self.value !== $deps[0] ? t("Password mismatch") : ""}}'}}}]},confirmPassword:{type:"string",required:!0,title:'{{t("Confirm password")}}',"x-component":"Password","x-decorator":"FormItem","x-component-props":{checkStrength:!0,style:{}},"x-reactions":[{dependencies:[".newPassword"],fulfill:{state:{selfErrors:'{{$deps[0] && $self.value && $self.value !== $deps[0] ? t("Password mismatch") : ""}}'}}}]},footer:{"x-component":"Action.Drawer.Footer",type:"void",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ useCloseAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useSaveCurrentUserValues }}"}}}}}},t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e)},P=function(){var e,t,n=(0,f.useContext)(r.DropdownVisibleContext);var o=(e=(0,f.useState)(!1),t=2,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=[],u=!0,a=!1;try{for(o=o.call(e);!(u=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);u=!0);}catch(e){a=!0,r=e}finally{try{!u&&null!=o.return&&o.return()}finally{if(a)throw r}}return i}}(e,2)||function(e,t){if(e){if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}}(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.")}()),i=o[0],u=o[1],a=(0,c.useTranslation)().t,s=((0,r.useSystemSettings)()||{}).data,l=((null==s?void 0:s.data)||{}).enableChangePassword,m=(0,r.useZIndexContext)()+10,b=(0,f.useCallback)(function(e){var t;e.stopPropagation(),null==n||null===(t=n.setVisible)||void 0===t||t.call(n,!1),u(function(e){return!e||e})},[n]),y=(0,f.useMemo)(function(){return p().createElement(r.SchemaComponentContext.Provider,{value:{designable:!1}},p().createElement(r.SchemaComponent,{scope:{useCloseAction:v,useSaveCurrentUserValues:h},schema:x}))},[m]);return!1===l?null:p().createElement(r.zIndexContext.Provider,{value:m},p().createElement(r.SchemaSettingsItem,{eventKey:"changePassword",title:"changePassword"},p().createElement("div",{onClick:b},a("Change password"))),p().createElement(r.ActionContextProvider,{value:{visible:i,setVisible:u}},i&&p().createElement("div",{onClick:function(e){return e.stopPropagation()}},y)))};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}function S(e,t,n,r,o,i,u){try{var a=e[i](u),s=a.value}catch(e){n(e);return}a.done?t(s):Promise.resolve(s).then(r,o)}function k(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function O(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){k(e,t,n[t])})}return e}var E=function(){var e=(0,r.useCurrentUserContext)(),t=(0,r.useActionContext)().setVisible,n=(0,a.useForm)(),o=(0,r.useAPIClient)(),i=(0,a.useFieldSchema)(),u=(0,a.useField)(),s=(0,r.useCollectValuesToSubmit)();return{type:"primary",htmlType:"submit",onClick:function(){var r;return(r=function(){var r,a,c,l,f,p;return function(e,t){var n,r,o,i,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(n)throw TypeError("Generator is already executing.");for(;u;)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 u.label++,{value:i[1],done:!1};case 5:u.label++,r=i[1],i=[0];continue;case 7:i=u.ops.pop(),u.trys.pop();continue;default:if(!(o=(o=u.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){u=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){u.label=i[1];break}if(6===i[0]&&u.label<o[1]){u.label=o[1],o=i;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(i);break}o[2]&&u.ops.pop(),u.trys.pop();continue}i=t.call(e,u)}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,a])}}}(this,function(p){switch(p.label){case 0:if(c=(a=null!==(r=null==i?void 0:i["x-action-settings"])&&void 0!==r?r:{}).triggerWorkflows,a.skipValidator)return[3,2];return[4,n.submit()];case 1:p.sent(),p.label=2;case 2:return[4,s()];case 3:l=p.sent(),u.data=u.data||{},u.data.loading=!0,p.label=4;case 4:return p.trys.push([4,7,,8]),[4,o.resource("users").updateProfile({values:l,triggerWorkflows:(null==c?void 0:c.length)?c.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0})];case 5:return p.sent(),e.mutate({data:O({},null==e?void 0:null===(f=e.data)||void 0===f?void 0:f.data,l)}),[4,n.reset()];case 6:return p.sent(),u.data.loading=!1,t(!1),[3,8];case 7:return p.sent(),u.data.loading=!1,[3,8];case 8:return[2]}})},function(){var e=this,t=arguments;return new Promise(function(n,o){var i=r.apply(e,t);function u(e){S(i,n,o,u,a,"next",e)}function a(e){S(i,n,o,u,a,"throw",e)}u(void 0)})})()}}},j=function(){var e=((0,r.useCurrentUserContext)()||{}).data;return{record:null==e?void 0:e.data}},_=function(){var e=(0,r.useActionContext)().setVisible;return{type:"default",onClick:function(){e(!1)}}},A=function(){var e=(0,f.useContext)(r.DropdownVisibleContext),t=(0,r.useCollectionManager)().getCollection("users"),n=(0,f.useMemo)(function(){var e,n;return e=O({},t),n=(n={name:"users",fields:t.fields.filter(function(e){return!["password","roles"].includes(e.name)})},n),Object.getOwnPropertyDescriptors?Object.defineProperties(e,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(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}),e},[t]);return(0,f.useEffect)(function(){null==e||e.setVisible(!1)},[e]),p().createElement(r.ExtendCollectionsProvider,{collections:[n]},p().createElement(r.RemoteSchemaComponent,{uid:"nocobase-user-profile-edit-form",noForm:!0,scope:{useUpdateProfileActionProps:E,useEditFormBlockDecoratorProps:j,useCancelActionProps:_}}))},I=function(){var e,t,n,o=(0,f.useContext)(r.DropdownVisibleContext);var i=(e=(0,f.useState)(!1),t=2,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=[],u=!0,a=!1;try{for(o=o.call(e);!(u=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);u=!0);}catch(e){a=!0,r=e}finally{try{!u&&null!=o.return&&o.return()}finally{if(a)throw r}}return i}}(e,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)}}(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.")}()),u=i[0],a=i[1],l=(0,c.useTranslation)().t,d=((0,r.useSystemSettings)()||{}).data,m=(null!==(n=null==d?void 0:d.data)&&void 0!==n?n:{}).enableEditProfile,b=(0,r.useZIndexContext)()+10,y=(0,f.useCallback)(function(e){var t;e.stopPropagation(),null==o||null===(t=o.setVisible)||void 0===t||t.call(o,!1),a(function(e){return!e||e})},[o]),v=(0,f.useMemo)(function(){return p().createElement(r.SchemaComponent,{components:{ProfileEditForm:A},schema:{type:"object",properties:k({},(0,s.uid)(),{"x-component":"Action.Drawer","x-component-props":{zIndex:b},type:"void",title:'{{t("Edit profile")}}',properties:{form:{type:"void","x-component":"ProfileEditForm"}}})}})},[b]);return!1===m?null:p().createElement(r.zIndexContext.Provider,{value:b},p().createElement(r.SchemaSettingsItem,{eventKey:"EditProfile",title:"EditProfile"},p().createElement("div",{onClick:y},l("Edit profile"))),p().createElement(r.ActionContextProvider,{value:{visible:u,setVisible:a}},u&&p().createElement("div",{onClick:function(e){return e.stopPropagation()}},v)))},q=function(){var e,t,n,o=(0,r.useCurrentUserContext)().data,i=(0,r.useToken)().token;return p().createElement(r.SchemaSettingsItem,{disabled:!0,eventKey:"nickname",title:"nickname"},p().createElement("span",{"aria-disabled":"false",style:{cursor:"text",color:i.colorTextDescription}},(null==o?void 0:null===(e=o.data)||void 0===e?void 0:e.nickname)||(null==o?void 0:null===(t=o.data)||void 0===t?void 0:t.username)||(null==o?void 0:null===(n=o.data)||void 0===n?void 0:n.email)))};function U(e,t,n,r,o,i,u){try{var a=e[i](u),s=a.value}catch(e){n(e);return}a.done?t(s):Promise.resolve(s).then(r,o)}var T=function(){var e,t=(0,c.useTranslation)().t,n=(0,r.useNavigateNoUpdate)(),o=(0,r.useAPIClient)();return p().createElement(r.SchemaSettingsItem,{title:"signOut",eventKey:"signOut",onClick:(e=function(){var e,t;return function(e,t){var n,r,o,i,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(n)throw TypeError("Generator is already executing.");for(;u;)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 u.label++,{value:i[1],done:!1};case 5:u.label++,r=i[1],i=[0];continue;case 7:i=u.ops.pop(),u.trys.pop();continue;default:if(!(o=(o=u.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){u=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){u.label=i[1];break}if(6===i[0]&&u.label<o[1]){u.label=o[1],o=i;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(i);break}o[2]&&u.ops.pop(),u.trys.pop();continue}i=t.call(e,u)}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,a])}}}(this,function(r){switch(r.label){case 0:return[4,o.auth.signOut()];case 1:return(null==(t=r.sent().data)?void 0:null===(e=t.data)||void 0===e?void 0:e.redirect)?window.location.href=t.data.redirect:n("/signin?redirect=".concat(encodeURIComponent(""))),[2]}})},function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function u(e){U(i,r,o,u,a,"next",e)}function a(e){U(i,r,o,u,a,"throw",e)}u(void 0)})})},t("Sign out"))},M=g(581);function F(e,t,n,r,o,i,u){try{var a=e[i](u),s=a.value}catch(e){n(e);return}a.done?t(s):Promise.resolve(s).then(r,o)}function V(e,t,n){return(V=R()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&z(o,n.prototype),o}).apply(null,arguments)}function D(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function $(e){return($=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function z(e,t){return(z=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function N(e){var t="function"==typeof Map?new Map:void 0;return(N=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 V(e,arguments,$(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),z(r,e)})(e)}function R(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(R=function(){return!!e})()}(0,r.lazy)(function(){return M("imported_eeob5k_component",g.e("718").then(g.bind(g,404)))},"UsersProvider").UsersProvider;var B=(0,r.lazy)(function(){return M("imported_-193g1io_component",Promise.all([g.e("360"),g.e("554")]).then(g.bind(g,891)))},"UsersManagement").UsersManagement,K=(0,r.lazy)(function(){return M("imported_-121r5eb_component",Promise.all([g.e("360"),g.e("114")]).then(g.bind(g,132)))},"RoleUsersManager").RoleUsersManager,G=function(e){var t,n,r;function i(){var e,t,n;return!function(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}(this,i),e=this,t=i,n=arguments,t=$(t),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)}(e,R()?Reflect.construct(t,n||[],$(e).constructor):t.apply(e,n))}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&&z(e,t)}(i,e),t=i,n=[{key:"load",value:function(){var e,t=this;return(e=function(){return function(e,t){var n,r,o,i,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(n)throw TypeError("Generator is already executing.");for(;u;)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 u.label++,{value:i[1],done:!1};case 5:u.label++,r=i[1],i=[0];continue;case 7:i=u.ops.pop(),u.trys.pop();continue;default:if(!(o=(o=u.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){u=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){u.label=i[1];break}if(6===i[0]&&u.label<o[1]){u.label=o[1],o=i;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(i);break}o[2]&&u.ops.pop(),u.trys.pop();continue}i=t.call(e,u)}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,a])}}}(this,function(e){return t.app.pluginSettingsManager.add("users-permissions",{title:(0,o.tval)("Users & Permissions",{ns:"users"}),icon:"TeamOutlined"}),t.app.pluginSettingsManager.add("users-permissions.users",{title:(0,o.tval)("Users"),icon:"UserOutlined",Component:B,aclSnippet:"pm.users"}),t.app.pm.get(u()).rolesManager.add("users",{title:(0,o.tval)("Users"),Component:K}),t.app.addUserCenterSettingsItem({name:"nickName",Component:q,sort:0}),t.app.addUserCenterSettingsItem({name:"divider1",type:"divider",sort:10}),t.app.addUserCenterSettingsItem({name:"editProfile",Component:I,sort:50}),t.app.addUserCenterSettingsItem({name:"changePassword",Component:P,sort:100}),t.app.addUserCenterSettingsItem({name:"divider_signOut",type:"divider",sort:900}),t.app.addUserCenterSettingsItem({name:"signOut",Component:T,sort:1e3}),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function u(e){F(i,r,o,u,a,"next",e)}function a(e){F(i,r,o,u,a,"throw",e)}u(void 0)})})()}}],D(t.prototype,n),i}(N(r.Plugin))}(),w}()});
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@nocobase/plugin-acl/client"),require("@formily/core"),require("@formily/shared"),require("@nocobase/client"),require("react-router-dom"),require("react"),require("@emotion/css"),require("@formily/react"),require("@nocobase/utils/client"),require("antd"),require("react-i18next")):"function"==typeof define&&define.amd?define("@nocobase/plugin-users",["@nocobase/plugin-acl/client","@formily/core","@formily/shared","@nocobase/client","react-router-dom","react","@emotion/css","@formily/react","@nocobase/utils/client","antd","react-i18next"],t):"object"==typeof exports?exports["@nocobase/plugin-users"]=t(require("@nocobase/plugin-acl/client"),require("@formily/core"),require("@formily/shared"),require("@nocobase/client"),require("react-router-dom"),require("react"),require("@emotion/css"),require("@formily/react"),require("@nocobase/utils/client"),require("antd"),require("react-i18next")):e["@nocobase/plugin-users"]=t(e["@nocobase/plugin-acl/client"],e["@formily/core"],e["@formily/shared"],e["@nocobase/client"],e["react-router-dom"],e.react,e["@emotion/css"],e["@formily/react"],e["@nocobase/utils/client"],e.antd,e["react-i18next"])}(self,function(e,t,n,r,o,i,a,u,s,c,l){return function(){var f,p,d,m,b,y,v={581:function(e){e.exports=function(e,t){return"undefined"!=typeof __deoptimization_sideEffect__&&__deoptimization_sideEffect__(e,t),t}},964:function(e){"use strict";e.exports=a},563:function(e){"use strict";e.exports=t},505:function(e){"use strict";e.exports=u},875:function(e){"use strict";e.exports=n},772:function(e){"use strict";e.exports=r},465:function(t){"use strict";t.exports=e},584:function(e){"use strict";e.exports=s},721:function(e){"use strict";e.exports=c},156:function(e){"use strict";e.exports=i},238:function(e){"use strict";e.exports=l},128:function(e){"use strict";e.exports=o}},h={};function g(e){var t=h[e];if(void 0!==t)return t.exports;var n=h[e]={exports:{}};return v[e](n,n.exports,g),n.exports}g.m=v,g.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return g.d(t,{a:t}),t},g.d=function(e,t){for(var n in t)g.o(t,n)&&!g.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},g.f={},g.e=function(e){return Promise.all(Object.keys(g.f).reduce(function(t,n){return g.f[n](e,t),t},[]))},g.u=function(e){return""+({114:"e2537acb5e483c2e",360:"883053dbcd1a73d2",554:"8c5392974c7cecee",718:"42e23a167a1b7bf0"})[e]+".js"},g.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),g.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},f={},p="@nocobase/plugin-users:",g.l=function(e,t,n,r){if(f[e])return void f[e].push(t);if(void 0!==n)for(var o,i,a=document.getElementsByTagName("script"),u=0;u<a.length;u++){var s=a[u];if(s.getAttribute("src")==e||s.getAttribute("data-webpack")==p+n){o=s;break}}o||(i=!0,(o=document.createElement("script")).charset="utf-8",o.timeout=120,g.nc&&o.setAttribute("nonce",g.nc),o.setAttribute("data-webpack",p+n),o.src=e),f[e]=[t];var c=function(t,n){o.onerror=o.onload=null,clearTimeout(l);var r=f[e];if(delete f[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach(function(e){return e(n)}),t)return t(n)},l=setTimeout(c.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=c.bind(null,o.onerror),o.onload=c.bind(null,o.onload),i&&document.head.appendChild(o)},g.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(d=window.__nocobase_public_path__||"/").endsWith("/")||(d+="/"),g.p=d+"static/plugins/@nocobase/plugin-users/dist/client/",m={909:0},g.f.j=function(e,t){var n=g.o(m,e)?m[e]:void 0;if(0!==n)if(n)t.push(n[2]);else{var r=new Promise(function(t,r){n=m[e]=[t,r]});t.push(n[2]=r);var o=g.p+g.u(e),i=Error();g.l(o,function(t){if(g.o(m,e)&&(0!==(n=m[e])&&(m[e]=void 0),n)){var r=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;i.message="Loading chunk "+e+" failed.\n("+r+": "+o+")",i.name="ChunkLoadError",i.type=r,i.request=o,n[1](i)}},"chunk-"+e,e)}},b=function(e,t){var n,r,o=t[0],i=t[1],a=t[2],u=0;if(o.some(function(e){return 0!==m[e]})){for(n in i)g.o(i,n)&&(g.m[n]=i[n]);a&&a(g)}for(e&&e(t);u<o.length;u++)r=o[u],g.o(m,r)&&m[r]&&m[r][0](),m[r]=0},(y=self.webpackChunk_nocobase_plugin_users=self.webpackChunk_nocobase_plugin_users||[]).forEach(b.bind(null,0)),y.push=b.bind(null,y.push.bind(y));var w={};return!function(){"use strict";g.r(w),g.d(w,{default:function(){return K}});var e,t,n,r=g(772),o=g(584),i=g(465),a=g.n(i),u=g(505),s=g(875),c=g(238),l=g(128),f=g(156),p=g.n(f);function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function m(e,t,n,r,o,i,a){try{var u=e[i](a),s=u.value}catch(e){n(e);return}u.done?t(s):Promise.resolve(s).then(r,o)}function b(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){m(i,r,o,a,u,"next",e)}function u(e){m(i,r,o,a,u,"throw",e)}a(void 0)})}}function y(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){var s=[i,u];if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}}}var v=function(){var e=(0,r.useActionContext)().setVisible,t=(0,u.useForm)();return{run:function(){return b(function(){return y(this,function(n){switch(n.label){case 0:return e(!1),[4,t.reset()];case 1:return n.sent(),[2]}})})()}}},h=function(){var e=(0,l.useNavigate)(),t=(0,r.useActionContext)().setVisible,n=(0,u.useForm)(),o=(0,r.useAPIClient)();return{run:function(){return b(function(){return y(this,function(r){switch(r.label){case 0:return[4,n.submit()];case 1:return r.sent(),[4,o.resource("auth").changePassword({values:n.values})];case 2:return r.sent(),[4,n.reset()];case 3:return r.sent(),t(!1),e("/signin"),[2]}})})()}}},x={type:"object",properties:(e={},t=(0,s.uid)(),n={"x-decorator":"Form","x-component":"Action.Drawer","x-component-props":{zIndex:2e3},type:"void",title:'{{t("Change password")}}',properties:{oldPassword:{type:"string",title:'{{t("Old password")}}',required:!0,"x-component":"Password","x-decorator":"FormItem"},newPassword:{type:"string",title:'{{t("New password")}}',required:!0,"x-component":"Password","x-decorator":"FormItem","x-validator":{password:!0},"x-component-props":{checkStrength:!0,style:{}},"x-reactions":[{dependencies:[".confirmPassword"],fulfill:{state:{selfErrors:'{{$deps[0] && $self.value && $self.value !== $deps[0] ? t("Password mismatch") : ""}}'}}}]},confirmPassword:{type:"string",required:!0,title:'{{t("Confirm password")}}',"x-component":"Password","x-decorator":"FormItem","x-component-props":{checkStrength:!0,style:{}},"x-reactions":[{dependencies:[".newPassword"],fulfill:{state:{selfErrors:'{{$deps[0] && $self.value && $self.value !== $deps[0] ? t("Password mismatch") : ""}}'}}}]},footer:{"x-component":"Action.Drawer.Footer",type:"void",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ useCloseAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useSaveCurrentUserValues }}"}}}}}},t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e)},P=function(){var e,t=(0,f.useContext)(r.DropdownVisibleContext),n=(e=(0,f.useState)(!1),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),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,2)||function(e,t){if(e){if("string"==typeof e)return d(e,2);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}}(e,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),o=n[0],i=n[1],a=(0,c.useTranslation)().t,u=((0,r.useSystemSettings)()||{}).data,s=((null==u?void 0:u.data)||{}).enableChangePassword,l=(0,r.useZIndexContext)()+10,m=(0,f.useCallback)(function(e){var n;e.stopPropagation(),null==t||null==(n=t.setVisible)||n.call(t,!1),i(function(e){return!e||e})},[t]),b=(0,f.useMemo)(function(){return p().createElement(r.SchemaComponentContext.Provider,{value:{designable:!1}},p().createElement(r.SchemaComponent,{scope:{useCloseAction:v,useSaveCurrentUserValues:h},schema:x}))},[l]);return!1===s?null:p().createElement(r.zIndexContext.Provider,{value:l},p().createElement(r.SchemaSettingsItem,{eventKey:"changePassword",title:"changePassword"},p().createElement("div",{onClick:m},a("Change password"))),p().createElement(r.ActionContextProvider,{value:{visible:o,setVisible:i}},o&&p().createElement("div",{onClick:function(e){return e.stopPropagation()}},b)))};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}function S(e,t,n,r,o,i,a){try{var u=e[i](a),s=u.value}catch(e){n(e);return}u.done?t(s):Promise.resolve(s).then(r,o)}function k(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function O(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){k(e,t,n[t])})}return e}var E=function(){var e=(0,r.useCurrentUserContext)(),t=(0,r.useActionContext)().setVisible,n=(0,u.useForm)(),o=(0,r.useAPIClient)(),i=(0,u.useFieldSchema)(),a=(0,u.useField)(),s=(0,r.useCollectValuesToSubmit)();return{type:"primary",htmlType:"submit",onClick:function(){var r;return(r=function(){var r,u,c,l,f;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){var s=[i,u];if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}}}(this,function(p){switch(p.label){case 0:if(c=(u=null!=(r=null==i?void 0:i["x-action-settings"])?r:{}).triggerWorkflows,u.skipValidator)return[3,2];return[4,n.submit()];case 1:p.sent(),p.label=2;case 2:return[4,s()];case 3:l=p.sent(),a.data=a.data||{},a.data.loading=!0,p.label=4;case 4:return p.trys.push([4,7,,8]),[4,o.resource("users").updateProfile({values:l,triggerWorkflows:(null==c?void 0:c.length)?c.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0})];case 5:return p.sent(),e.mutate({data:O({},null==e||null==(f=e.data)?void 0:f.data,l)}),[4,n.reset()];case 6:return p.sent(),a.data.loading=!1,t(!1),[3,8];case 7:return p.sent(),a.data.loading=!1,[3,8];case 8:return[2]}})},function(){var e=this,t=arguments;return new Promise(function(n,o){var i=r.apply(e,t);function a(e){S(i,n,o,a,u,"next",e)}function u(e){S(i,n,o,a,u,"throw",e)}a(void 0)})})()}}},j=function(){var e=((0,r.useCurrentUserContext)()||{}).data;return{record:null==e?void 0:e.data}},_=function(){var e=(0,r.useActionContext)().setVisible;return{type:"default",onClick:function(){e(!1)}}},A=function(){var e=(0,f.useContext)(r.DropdownVisibleContext),t=(0,r.useCollectionManager)().getCollection("users"),n=(0,f.useMemo)(function(){var e,n;return e=O({},t),n=n={name:"users",fields:t.fields.filter(function(e){return!["password","roles"].includes(e.name)})},Object.getOwnPropertyDescriptors?Object.defineProperties(e,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(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}),e},[t]);return(0,f.useEffect)(function(){null==e||e.setVisible(!1)},[e]),p().createElement(r.ExtendCollectionsProvider,{collections:[n]},p().createElement(r.RemoteSchemaComponent,{uid:"nocobase-user-profile-edit-form",noForm:!0,scope:{useUpdateProfileActionProps:E,useEditFormBlockDecoratorProps:j,useCancelActionProps:_}}))},I=function(){var e,t,n=(0,f.useContext)(r.DropdownVisibleContext),o=(e=(0,f.useState)(!1),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),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,2)||function(e,t){if(e){if("string"==typeof e)return C(e,2);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)}}(e,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=o[0],a=o[1],u=(0,c.useTranslation)().t,l=((0,r.useSystemSettings)()||{}).data,d=(null!=(t=null==l?void 0:l.data)?t:{}).enableEditProfile,m=(0,r.useZIndexContext)()+10,b=(0,f.useCallback)(function(e){var t;e.stopPropagation(),null==n||null==(t=n.setVisible)||t.call(n,!1),a(function(e){return!e||e})},[n]),y=(0,f.useMemo)(function(){return p().createElement(r.SchemaComponent,{components:{ProfileEditForm:A},schema:{type:"object",properties:k({},(0,s.uid)(),{"x-component":"Action.Drawer","x-component-props":{zIndex:m},type:"void",title:'{{t("Edit profile")}}',properties:{form:{type:"void","x-component":"ProfileEditForm"}}})}})},[m]);return!1===d?null:p().createElement(r.zIndexContext.Provider,{value:m},p().createElement(r.SchemaSettingsItem,{eventKey:"EditProfile",title:"EditProfile"},p().createElement("div",{onClick:b},u("Edit profile"))),p().createElement(r.ActionContextProvider,{value:{visible:i,setVisible:a}},i&&p().createElement("div",{onClick:function(e){return e.stopPropagation()}},y)))},q=function(){var e,t,n,o=(0,r.useCurrentUserContext)().data,i=(0,r.useToken)().token;return p().createElement(r.SchemaSettingsItem,{disabled:!0,eventKey:"nickname",title:"nickname"},p().createElement("span",{"aria-disabled":"false",style:{cursor:"text",color:i.colorTextDescription}},(null==o||null==(e=o.data)?void 0:e.nickname)||(null==o||null==(t=o.data)?void 0:t.username)||(null==o||null==(n=o.data)?void 0:n.email)))};function U(e,t,n,r,o,i,a){try{var u=e[i](a),s=u.value}catch(e){n(e);return}u.done?t(s):Promise.resolve(s).then(r,o)}var T=function(){var e,t=(0,c.useTranslation)().t,n=(0,r.useNavigateNoUpdate)(),o=(0,r.useAPIClient)();return p().createElement(r.SchemaSettingsItem,{title:"signOut",eventKey:"signOut",onClick:(e=function(){var e,t;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){var s=[i,u];if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}}}(this,function(r){switch(r.label){case 0:return[4,o.auth.signOut()];case 1:return(null==(t=r.sent().data)||null==(e=t.data)?void 0:e.redirect)?window.location.href=t.data.redirect:n("/signin?redirect=".concat(encodeURIComponent(""))),[2]}})},function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){U(i,r,o,a,u,"next",e)}function u(e){U(i,r,o,a,u,"throw",e)}a(void 0)})})},t("Sign out"))},M=g(581);function F(e,t,n,r,o,i,a){try{var u=e[i](a),s=u.value}catch(e){n(e);return}u.done?t(s):Promise.resolve(s).then(r,o)}function V(e,t,n){return(V=N()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&$(o,n.prototype),o}).apply(null,arguments)}function D(e){return(D=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function $(e,t){return($=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function z(e){var t="function"==typeof Map?new Map:void 0;return(z=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return V(e,arguments,D(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),$(n,e)})(e)}function N(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(N=function(){return!!e})()}(0,r.lazy)(function(){return M("imported_eeob5k_component",g.e("718").then(g.bind(g,404)))},"UsersProvider").UsersProvider;var R=(0,r.lazy)(function(){return M("imported_-193g1io_component",Promise.all([g.e("360"),g.e("554")]).then(g.bind(g,891)))},"UsersManagement").UsersManagement,B=(0,r.lazy)(function(){return M("imported_-121r5eb_component",Promise.all([g.e("360"),g.e("114")]).then(g.bind(g,132)))},"RoleUsersManager").RoleUsersManager,K=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function n(){var e,t;if(!(this instanceof n))throw TypeError("Cannot call a class as a function");return e=n,t=arguments,e=D(e),function(e,t){var n;if(t&&("object"==((n=t)&&"undefined"!=typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,N()?Reflect.construct(e,t||[],D(this).constructor):e.apply(this,t))}return n.prototype=Object.create(e&&e.prototype,{constructor:{value:n,writable:!0,configurable:!0}}),e&&$(n,e),t=[{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){var s=[i,u];if(n)throw TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}}}(this,function(e){return t.app.pluginSettingsManager.add("users-permissions",{title:(0,o.tval)("Users & Permissions",{ns:"users"}),icon:"TeamOutlined"}),t.app.pluginSettingsManager.add("users-permissions.users",{title:(0,o.tval)("Users"),icon:"UserOutlined",Component:R,aclSnippet:"pm.users"}),t.app.pm.get(a()).rolesManager.add("users",{title:(0,o.tval)("Users"),Component:B}),t.app.addUserCenterSettingsItem({name:"nickName",Component:q,sort:0}),t.app.addUserCenterSettingsItem({name:"divider1",type:"divider",sort:10}),t.app.addUserCenterSettingsItem({name:"editProfile",Component:I,sort:50}),t.app.addUserCenterSettingsItem({name:"changePassword",Component:P,sort:100}),t.app.addUserCenterSettingsItem({name:"divider_signOut",type:"divider",sort:900}),t.app.addUserCenterSettingsItem({name:"signOut",Component:T,sort:1e3}),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){F(i,r,o,a,u,"next",e)}function u(e){F(i,r,o,a,u,"throw",e)}a(void 0)})})()}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(n.prototype,t),n}(z(r.Plugin))}(),w}()});
@@ -13,18 +13,17 @@ module.exports = {
13
13
  "react-i18next": "11.18.6",
14
14
  "react-router-dom": "6.28.1",
15
15
  "react": "18.2.0",
16
- "@nocobase/client": "1.7.0-beta.9",
16
+ "@nocobase/client": "1.8.0-beta.1",
17
17
  "antd": "5.24.2",
18
18
  "@formily/core": "2.3.0",
19
- "@nocobase/plugin-acl": "1.7.0-beta.9",
19
+ "@nocobase/plugin-acl": "1.8.0-beta.1",
20
20
  "@emotion/css": "11.13.0",
21
- "@nocobase/utils": "1.7.0-beta.9",
22
- "@nocobase/database": "1.7.0-beta.9",
23
- "@nocobase/server": "1.7.0-beta.9",
24
- "@nocobase/plugin-user-data-sync": "1.7.0-beta.9",
25
- "@nocobase/plugin-ui-schema-storage": "1.7.0-beta.9",
21
+ "@nocobase/utils": "1.8.0-beta.1",
22
+ "@nocobase/database": "1.8.0-beta.1",
23
+ "@nocobase/server": "1.8.0-beta.1",
24
+ "@nocobase/plugin-user-data-sync": "1.8.0-beta.1",
25
+ "@nocobase/plugin-ui-schema-storage": "1.8.0-beta.1",
26
26
  "lodash": "4.17.21",
27
- "@nocobase/actions": "1.7.0-beta.9",
28
- "sequelize": "6.35.2",
29
- "@nocobase/plugin-system-settings": "1.7.0-beta.9"
27
+ "@nocobase/actions": "1.8.0-beta.1",
28
+ "sequelize": "6.35.2"
30
29
  };
@@ -1,8 +1,12 @@
1
1
  {
2
2
  "Users & Permissions": "Gebruikers & Toegangen",
3
- "Add users": "Gebruiker toevoegen",
3
+ "Add users": "Gebruikers toevoegen",
4
+ "Add user": "Gebruiker toevoegen",
4
5
  "Remove user": "Gebruiker verwijderen",
5
6
  "Are you sure you want to remove it?": "Ben je zeker dat je het wil verwijderen?",
6
7
  "Random password": "Willekeurig wachtwoord",
8
+ "Users manager": "Gebruikersbeheer",
9
+ "Allow edit profile": "Profiel bewerken toestaan",
10
+ "Allow change password": "Wachtwoord wijzigen toestaan",
7
11
  "User profile is not allowed to be edited": "Het gebruikersprofiel mag niet bewerkt worden."
8
12
  }
@@ -47,14 +47,33 @@ var import_actions = require("@nocobase/actions");
47
47
  var import_lodash = __toESM(require("lodash"));
48
48
  var import__ = require("..");
49
49
  var import_sequelize = require("sequelize");
50
+ function findNonVoidTypeObjects(obj, path = "", results = []) {
51
+ for (const key in obj) {
52
+ const value = obj[key];
53
+ const currentPath = path ? `${path}.${key}` : key;
54
+ if (value && typeof value === "object") {
55
+ if (value.type && value.type !== "void") {
56
+ results.push({
57
+ name: key,
58
+ props: value
59
+ });
60
+ }
61
+ if (value.properties) {
62
+ findNonVoidTypeObjects(value.properties, `${currentPath}.properties`, results);
63
+ } else {
64
+ findNonVoidTypeObjects(value, currentPath, results);
65
+ }
66
+ }
67
+ }
68
+ return results;
69
+ }
50
70
  function parseProfileFormSchema(schema) {
51
71
  const properties = import_lodash.default.get(schema, "properties.form.properties.edit.properties.grid.properties") || {};
52
72
  const fields = [];
53
73
  const requiredFields = [];
54
- Object.values(properties).forEach((row) => {
55
- const col = Object.values(row.properties)[0];
56
- const [name, props] = Object.entries(col.properties)[0];
57
- if (props["x-read-pretty"] || props["x-disable"]) {
74
+ const configs = findNonVoidTypeObjects(properties);
75
+ Object.values(configs).forEach(({ name, props }) => {
76
+ if (props["x-read-pretty"] || props["x-disabled"]) {
58
77
  return;
59
78
  }
60
79
  if (props["required"]) {
package/package.json CHANGED
@@ -4,14 +4,14 @@
4
4
  "displayName.zh-CN": "用户",
5
5
  "description": "Provides basic user model, as well as created by and updated by fields.",
6
6
  "description.zh-CN": "提供了基础的用户模型,以及创建人和最后更新人字段。",
7
- "version": "1.7.0-beta.9",
7
+ "version": "1.8.0-beta.1",
8
8
  "license": "AGPL-3.0",
9
9
  "main": "./dist/server/index.js",
10
10
  "homepage": "https://docs.nocobase.com/handbook/users",
11
11
  "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/users",
12
12
  "devDependencies": {
13
- "@types/jsonwebtoken": "^8.5.8",
14
- "jsonwebtoken": "^8.5.1"
13
+ "@types/jsonwebtoken": "^9.0.9",
14
+ "jsonwebtoken": "^9.0.2"
15
15
  },
16
16
  "peerDependencies": {
17
17
  "@nocobase/actions": "1.x",
@@ -27,7 +27,7 @@
27
27
  "@nocobase/test": "1.x",
28
28
  "@nocobase/utils": "1.x"
29
29
  },
30
- "gitHead": "7013a5080f3695d7750ab21005c90d2172c16480",
30
+ "gitHead": "103935669123174f2942247202e3d9ff15f0d4ed",
31
31
  "keywords": [
32
32
  "Users & permissions"
33
33
  ]
@@ -1,10 +0,0 @@
1
- /**
2
- * This file is part of the NocoBase (R) project.
3
- * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
- * Authors: NocoBase Team.
5
- *
6
- * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
- * For more information, please refer to: https://www.nocobase.com/agreement.
8
- */
9
-
10
- "use strict";(self.webpackChunk_nocobase_plugin_users=self.webpackChunk_nocobase_plugin_users||[]).push([["718"],{404:function(e,t,r){r.r(t),r.d(t,{UsersProvider:function(){return m},useEditProfile:function(){return y}});var n=r(772),o=r(156),i=r.n(o),u=r(888),l=r(875),a=r(505);function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function c(e,t,r,n,o,i,u){try{var l=e[i](u),a=l.value}catch(e){r(e);return}l.done?t(a):Promise.resolve(a).then(n,o)}function f(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function d(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){f(e,t,r[t])})}return e}var p=function(){var e=(0,n.useCurrentUserContext)(),t=(0,n.useActionContext)().setVisible,r=(0,a.useForm)(),o=(0,n.useAPIClient)(),i=(0,a.useFieldSchema)(),u=(0,a.useField)(),l=(0,n.useCollectValuesToSubmit)();return{type:"primary",htmlType:"submit",onClick:function(){var n;return(n=function(){var n,a,s,c,f,p;return function(e,t){var r,n,o,i,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){return function(i){if(r)throw TypeError("Generator is already executing.");for(;u;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return u.label++,{value:i[1],done:!1};case 5:u.label++,n=i[1],i=[0];continue;case 7:i=u.ops.pop(),u.trys.pop();continue;default:if(!(o=(o=u.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){u=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){u.label=i[1];break}if(6===i[0]&&u.label<o[1]){u.label=o[1],o=i;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(i);break}o[2]&&u.ops.pop(),u.trys.pop();continue}i=t.call(e,u)}catch(e){i=[6,e],n=0}finally{r=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,l])}}}(this,function(p){switch(p.label){case 0:if(s=(a=null!==(n=null==i?void 0:i["x-action-settings"])&&void 0!==n?n:{}).triggerWorkflows,a.skipValidator)return[3,2];return[4,r.submit()];case 1:p.sent(),p.label=2;case 2:return[4,l()];case 3:c=p.sent(),u.data=u.data||{},u.data.loading=!0,p.label=4;case 4:return p.trys.push([4,7,,8]),[4,o.resource("users").updateProfile({values:c,triggerWorkflows:(null==s?void 0:s.length)?s.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0})];case 5:return p.sent(),e.mutate({data:d({},null==e?void 0:null===(f=e.data)||void 0===f?void 0:f.data,c)}),[4,r.reset()];case 6:return p.sent(),u.data.loading=!1,t(!1),[3,8];case 7:return p.sent(),u.data.loading=!1,[3,8];case 8:return[2]}})},function(){var e=this,t=arguments;return new Promise(function(r,o){var i=n.apply(e,t);function u(e){c(i,r,o,u,l,"next",e)}function l(e){c(i,r,o,u,l,"throw",e)}u(void 0)})})()}}},b=function(){var e,t=(0,n.useCollectionManager)().getCollection("users"),r=(0,n.useCurrentUserContext)().data,u=(0,o.useMemo)(function(){var e,r;return e=d({},t),r=(r={name:"users",fields:t.fields.filter(function(e){return!["password","roles"].includes(e.name)})},r),Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r})(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}),e},[t]);return i().createElement(n.ExtendCollectionsProvider,{collections:[u]},i().createElement(n.RemoteSchemaComponent,{uid:"nocobase-user-profile-edit-form",noForm:!0,scope:{useUpdateProfileActionProps:p,currentUserId:null===(e=r.data)||void 0===e?void 0:e.id}}))},y=function(){var e,t,r=(0,o.useContext)(n.DropdownVisibleContext);var a=(e=(0,o.useState)(!1),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r,n,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],u=!0,l=!1;try{for(o=o.call(e);!(u=(r=o.next()).done)&&(i.push(r.value),!t||i.length!==t);u=!0);}catch(e){l=!0,n=e}finally{try{!u&&null!=o.return&&o.return()}finally{if(l)throw n}}return i}}(e,2)||function(e,t){if(e){if("string"==typeof e)return s(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return s(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),c=a[0],d=a[1],p=(0,u.B)().t,y=((0,n.useSystemSettings)()||{}).data,m=((null==y?void 0:y.data)||{}).enableEditProfile,v=(0,o.useMemo)(function(){return{key:"profile",eventKey:"EditProfile",onClick:function(){d(!0),null==r||r.setVisible(!1)},label:i().createElement("div",null,p("Edit profile"),i().createElement(n.ActionContextProvider,{value:{visible:c,setVisible:d}},i().createElement("div",{onClick:function(e){return e.stopPropagation()}},i().createElement(n.SchemaComponent,{components:{ProfileEditForm:b},schema:{type:"object",properties:f({},(0,l.uid)(),{"x-component":"Action.Drawer","x-component-props":{},type:"void",title:'{{t("Edit profile")}}',properties:{form:{type:"void","x-component":"ProfileEditForm"}}})}}))))}},[c]);return!1===m?null:v},m=function(e){var t=(0,n.useCurrentUserSettingsMenu)().addMenuItem,r=y(),u=(0,n.useSystemSettings)().data,l=((null==u?void 0:u.data)||{}).enableEditProfile;return(0,o.useEffect)(function(){if(!1!==l)t(r,{after:"divider_1"})},[t,r,l]),i().createElement(i().Fragment,null,e.children)}},888:function(e,t,r){r.d(t,{B:function(){return o}});var n=r(238);function o(){return(0,n.useTranslation)(["users","client"],{nsMode:"fallback"})}}}]);
@@ -1,10 +0,0 @@
1
- /**
2
- * This file is part of the NocoBase (R) project.
3
- * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
- * Authors: NocoBase Team.
5
- *
6
- * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
- * For more information, please refer to: https://www.nocobase.com/agreement.
8
- */
9
-
10
- "use strict";(self.webpackChunk_nocobase_plugin_users=self.webpackChunk_nocobase_plugin_users||[]).push([["554"],{891:function(e,t,n){n.r(t),n.d(t,{UsersManagement:function(){return B}});var r=n("964"),o=n("563"),a=n("505"),u=n("772"),i=n("721"),s=n("156"),c=n.n(s),l=n("888"),f=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,t="ABCDEFGHIJKLMNOPQRSTUVWXYZ",n="abcdefghijklmnopqrstuvwxyz",r="0123456789",o="!#$%^&*-_+=",a=t+n+r+o,u=new Uint32Array(e);crypto.getRandomValues(u);var i="";i+=t.charAt(u[0]%t.length),i+=n.charAt(u[1]%n.length),i+=r.charAt(u[2]%r.length),i+=o.charAt(u[3]%o.length);for(var s=4;s<e;s++){var c=u[s]%a.length;i+=a.charAt(c)}return i=i[0]+i.slice(1).split("").sort(function(){return Math.random()-.5}).join("")};function p(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 m=function(){var e,t,n=(0,l.B)().t,r=(0,a.useField)();var o=(e=c().useState(!1),t=2,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 a=[],u=!0,i=!1;try{for(o=o.call(e);!(u=(n=o.next()).done)&&(a.push(n.value),!t||a.length!==t);u=!0);}catch(e){i=!0,r=e}finally{try{!u&&null!=o.return&&o.return()}finally{if(i)throw r}}return a}}(e,2)||function(e,t){if(e){if("string"==typeof e)return p(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 p(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),m=o[0],b=o[1],v=(0,u.useActionContext)();return(0,s.useEffect)(function(){if(!v.visible)r.reset()},[r,v.visible]),(0,s.useEffect)(function(){if(!!r.value)r.validate()},[r.value]),c().createElement(i.Row,{gutter:10},c().createElement(i.Col,{span:18},c().createElement(u.Password,{checkStrength:!0,visibilityToggle:{visible:m,onVisibleChange:b},value:r.value,onChange:function(e){return r.setValue(e.target.value)},autoComplete:"new-password"})),c().createElement(i.Col,{span:4},c().createElement(i.Button,{onClick:function(){r.setValue(f()),b(!0)}},n("Random password"))))},b=n("241");function v(e,t,n,r,o,a,u){try{var i=e[a](u),s=i.value}catch(e){n(e);return}i.done?t(s):Promise.resolve(s).then(r,o)}function d(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function u(e){v(a,r,o,u,i,"next",e)}function i(e){v(a,r,o,u,i,"throw",e)}u(void 0)})}}function y(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r,o,a;r=e,o=t,a=n[t],o in r?Object.defineProperty(r,o,{value:a,enumerable:!0,configurable:!0,writable:!0}):r[o]=a})}return e}function h(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 g(e,t){var n,r,o,a,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:i(0),throw:i(1),return:i(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function i(a){return function(i){return function(a){if(n)throw TypeError("Generator is already executing.");for(;u;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return u.label++,{value:a[1],done:!1};case 5:u.label++,r=a[1],a=[0];continue;case 7:a=u.ops.pop(),u.trys.pop();continue;default:if(!(o=(o=u.trys).length>0&&o[o.length-1])&&(6===a[0]||2===a[0])){u=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){u.label=a[1];break}if(6===a[0]&&u.label<o[1]){u.label=o[1],o=a;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(a);break}o[2]&&u.ops.pop(),u.trys.pop();continue}a=t.call(e,u)}catch(e){a=[6,e],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,i])}}}function C(){var e,t,n=(e=["\n .ant-tabs-nav {\n margin-bottom: 0px;\n }\n "],!t&&(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return C=function(){return n},n}var w=function(){var e=(0,u.useActionContext)().setVisible,t=(0,a.useForm)();return{type:"default",onClick:function(){e(!1),t.reset()}}},P=function(){var e=(0,u.useActionContext)().setVisible,t=i.App.useApp().message,n=(0,a.useForm)(),r=(0,u.useDataBlockResource)(),o=(0,u.useDataBlockRequest)().refresh,s=(0,l.B)().t,c=(0,u.useCollection)();return{htmlType:"submit",type:"primary",onClick:function(){return d(function(){var a;return g(this,function(u){switch(u.label){case 0:return[4,n.submit()];case 1:if(u.sent(),!(a=n.values)[c.filterTargetKey])return[3,3];return[4,r.update({values:a,filterByTk:a[c.filterTargetKey]})];case 2:return u.sent(),[3,5];case 3:return[4,r.create({values:a})];case 4:u.sent(),u.label=5;case 5:return o(),t.success(s("Saved successfully")),e(!1),n.reset(),[2]}})})()}}},S=function(){var e=(0,u.useCollectionRecordData)();return{form:(0,s.useMemo)(function(){return(0,o.createForm)({initialValues:e})},[e])}},E=function(){return c().createElement(u.RemoteSchemaComponent,{uid:"nocobase-admin-profile-create-form",noForm:!0})},O=function(){var e=(0,u.useCollectionManager)().getCollection("users"),t=h(y({},e),{name:"users",fields:e.fields.filter(function(e){return"password"!==e.name})});return c().createElement(u.ExtendCollectionsProvider,{collections:[t]},c().createElement(u.RemoteSchemaComponent,{uid:"nocobase-admin-profile-edit-form",noForm:!0,scope:{useCancelActionProps:w}}))},A=function(){var e=(0,u.useSchemaComponentContext)();return c().createElement(u.SchemaComponentContext.Provider,{value:h(y({},e),{designable:!1})},c().createElement(u.SchemaComponent,{schema:{type:"void",properties:{filter:{type:"void",title:'{{ t("Filter") }}',"x-action":"filter","x-component":"Filter.Action","x-use-component-props":"useFilterActionProps","x-component-props":{icon:"FilterOutlined"}}}}}))},j=function(){var e=(0,l.B)().t,t=(0,u.useCollectionManager)();return(0,s.useMemo)(function(){return null==t?void 0:t.getCollection("users")},[t])?c().createElement(u.SchemaComponent,{schema:b.SN,scope:{t:e,useCancelActionProps:w,useSubmitActionProps:P,useEditFormProps:S},components:{PasswordField:m,ProfileEditForm:O,ProfileCreateForm:E,FilterAction:A}}):c().createElement(i.Spin,null)},k=(0,s.createContext)({}),F=function(e){var t=(0,u.useRequest)({url:"users:getSystemSettings"});return c().createElement(k.Provider,{value:t},e.children)},x=function(){var e=(0,l.B)().t,t=(0,a.useForm)();return c().createElement(u.SchemaComponent,{schema:b.eF,scope:{t:e,useFormBlockProps:function(){var e,n=(0,s.useContext)(k),r=(null==n?void 0:null===(e=n.data)||void 0===e?void 0:e.data)||{},o=r.enableChangePassword,a=r.enableEditProfile;return(0,s.useEffect)(function(){null==t||t.setValues({enableChangePassword:!1!==o,enableEditProfile:!1!==a})},[n]),{form:t}},useSubmitActionProps:function(){var t=(0,u.useAPIClient)(),n=(0,a.useForm)();return{type:"primary",onClick:function(){return d(function(){var r;return g(this,function(o){switch(o.label){case 0:return[4,n.submit()];case 1:return o.sent(),r=n.values,[4,t.request({url:"users:updateSystemSettings",data:r,method:"POST"})];case 2:return o.sent(),i.message.success(e("Saved successfully")),window.location.reload(),[2]}})})()}}}},components:{UsersSettingsProvider:F}})},B=function(){var e=(0,l.B)().t;return c().createElement(i.Tabs,{defaultActiveKey:"usersManager",type:"card",className:(0,r.css)(C()),items:[{label:e("Users manager"),key:"usersManager",children:c().createElement(j,null)},{label:e("Settings"),key:"usersSettings",children:c().createElement(x,null)}]})}}}]);
@@ -1,10 +0,0 @@
1
- /**
2
- * This file is part of the NocoBase (R) project.
3
- * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
- * Authors: NocoBase Team.
5
- *
6
- * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
- * For more information, please refer to: https://www.nocobase.com/agreement.
8
- */
9
-
10
- "use strict";(self.webpackChunk_nocobase_plugin_users=self.webpackChunk_nocobase_plugin_users||[]).push([["114"],{132:function(e,n,r){r.r(n),r.d(n,{RoleUsersManager:function(){return m}});var t=r("156"),o=r.n(t),u=r("721"),s=r("772"),l=r("465"),c=r("888"),i=r("241"),a=function(){var e,n,r=(0,t.useContext)(s.CollectionContext),o=(0,s.useFilterFieldOptions)(r.fields),u=(0,s.useResourceActionContext)();return(0,s.useFilterFieldProps)({options:o,params:(null===(n=u.state)||void 0===n?void 0:null===(e=n.params)||void 0===e?void 0:e[0])||u.params,service:u})};function f(e,n,r,t,o,u,s){try{var l=e[u](s),c=l.value}catch(e){r(e);return}l.done?n(c):Promise.resolve(c).then(t,o)}function v(e){return function(){var n=this,r=arguments;return new Promise(function(t,o){var u=e.apply(n,r);function s(e){f(u,t,o,s,l,"next",e)}function l(e){f(u,t,o,s,l,"throw",e)}s(void 0)})}}function p(e,n){var r,t,o,u,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return u={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(u[Symbol.iterator]=function(){return this}),u;function l(u){return function(l){return function(u){if(r)throw TypeError("Generator is already executing.");for(;s;)try{if(r=1,t&&(o=2&u[0]?t.return:u[0]?t.throw||((o=t.return)&&o.call(t),0):t.next)&&!(o=o.call(t,u[1])).done)return o;switch(t=0,o&&(u=[2&u[0],o.value]),u[0]){case 0:case 1:o=u;break;case 4:return s.label++,{value:u[1],done:!1};case 5:s.label++,t=u[1],u=[0];continue;case 7:u=s.ops.pop(),s.trys.pop();continue;default:if(!(o=(o=s.trys).length>0&&o[o.length-1])&&(6===u[0]||2===u[0])){s=0;continue}if(3===u[0]&&(!o||u[1]>o[0]&&u[1]<o[3])){s.label=u[1];break}if(6===u[0]&&s.label<o[1]){s.label=o[1],o=u;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(u);break}o[2]&&s.ops.pop(),s.trys.pop();continue}u=n.call(e,s)}catch(e){u=[6,e],t=0}finally{r=o=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}([u,l])}}}var d=function(){var e=(0,s.useAPIClient)(),n=(0,t.useContext)(l.RolesManagerContext).role,r=(0,s.useRecord)(),o=(0,s.useResourceActionContext)().refresh;return{run:function(){return v(function(){return p(this,function(t){switch(t.label){case 0:return[4,e.resource("roles.users",null==n?void 0:n.name).remove({values:[r.id]})];case 1:return t.sent(),o(),[2]}})})()}}},h=function(){var e=(0,c.B)().t,n=u.App.useApp().message,r=(0,s.useAPIClient)(),o=(0,s.useResourceActionContext)(),i=o.state,a=o.setState,f=o.refresh,d=(0,t.useContext)(l.RolesManagerContext).role;return{run:function(){return v(function(){var t;return p(this,function(o){switch(o.label){case 0:if(!(null==(t=null==i?void 0:i.selectedRowKeys)?void 0:t.length))return n.warning(e("Please select users")),[2];return[4,r.resource("roles.users",null==d?void 0:d.name).remove({values:t})];case 1:return o.sent(),null==a||a({selectedRowKeys:[]}),f(),[2]}})})()}}},b=function(e){var n=(0,t.useContext)(l.RolesManagerContext).role;return o().createElement(s.ResourceActionProvider,{collection:i.ij,request:{resource:"users",action:"listExcludeRole",params:{roleName:null==n?void 0:n.name}}},e.children)},m=function(){var e=(0,c.B)().t,n=(0,t.useContext)(l.RolesManagerContext).role,r=(0,s.useRequest)({resource:"roles.users",resourceOf:null==n?void 0:n.name,action:"list"},{ready:!!n});(0,t.useEffect)(function(){r.run()},[n]);var u=(0,t.useRef)([]),f=(0,t.useMemo)(function(){return(0,i.Lu)()},[n]);return o().createElement(s.ResourceActionContext.Provider,{value:function(e){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{},t=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(t=t.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),t.forEach(function(n){var t,o,u;t=e,o=n,u=r[n],o in t?Object.defineProperty(t,o,{value:u,enumerable:!0,configurable:!0,writable:!0}):t[o]=u})}return e}({},r)},o().createElement(s.CollectionProvider_deprecated,{collection:i.ij},o().createElement(s.SchemaComponent,{schema:f,components:{RoleUsersProvider:b},scope:{useBulkRemoveUsers:h,useRemoveUser:d,handleSelectRoleUsers:function(e,n){u.current=n},useAddRoleUsers:function(){var e=(0,t.useContext)(l.RolesManagerContext).role,n=(0,s.useAPIClient)(),r=(0,s.useActionContext)().setVisible,o=(0,s.useResourceActionContext)().refresh;return{run:function(){return v(function(){return p(this,function(t){switch(t.label){case 0:return[4,n.resource("roles.users",null==e?void 0:e.name).add({values:u.current.map(function(e){return e.id})})];case 1:return t.sent(),u.current=[],r(!1),o(),[2]}})})()}}},useFilterActionProps:a,t:e}})))}}}]);