@nocobase/plugin-users 2.1.0-beta.8 → 2.2.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.
Files changed (53) hide show
  1. package/client-v2-api.md +193 -0
  2. package/client-v2.d.ts +2 -0
  3. package/client-v2.js +1 -0
  4. package/dist/client/49.919f2c983a959288.js +10 -0
  5. package/dist/client/70.a415ef0ddba902d8.js +10 -0
  6. package/dist/client/772.61c09631dd20ae13.js +10 -0
  7. package/dist/client/821.8ca2f675db381516.js +10 -0
  8. package/dist/client/index.js +1 -1
  9. package/dist/client/utils.d.ts +1 -1
  10. package/dist/client-v2/143.8fc4573e64ec8c3f.js +10 -0
  11. package/dist/client-v2/521.2dfe166044cc9992.js +10 -0
  12. package/dist/client-v2/564.fd2267ba191f2206.js +10 -0
  13. package/dist/client-v2/569.07f16da700ba0ba6.js +10 -0
  14. package/dist/client-v2/587.a15f1f5b0dbbf4d5.js +10 -0
  15. package/dist/client-v2/784.25ee62a1613da5a6.js +10 -0
  16. package/dist/client-v2/786.ca0dea7bc67662c3.js +10 -0
  17. package/dist/client-v2/862.2aac0dea47472edf.js +10 -0
  18. package/dist/client-v2/917.2202b84c00ddfbdc.js +10 -0
  19. package/dist/client-v2/components/resource/ResourceFormDrawer.d.ts +33 -0
  20. package/dist/client-v2/components/resource/ResourcePickerView.d.ts +46 -0
  21. package/dist/client-v2/components/resource/ResourceTablePage.d.ts +50 -0
  22. package/dist/client-v2/components/resource/SettingsActionCell.d.ts +39 -0
  23. package/dist/client-v2/components/resource/index.d.ts +12 -0
  24. package/dist/client-v2/index.d.ts +11 -0
  25. package/dist/client-v2/index.js +10 -0
  26. package/dist/client-v2/locale.d.ts +14 -0
  27. package/dist/client-v2/models/UserPasswordFieldModel.d.ts +16 -0
  28. package/dist/client-v2/models/UserProfileFormModels.d.ts +19 -0
  29. package/dist/client-v2/models/UserRolesSelectFieldModel.d.ts +14 -0
  30. package/dist/client-v2/pages/ChangeUserPasswordDrawer.d.ts +15 -0
  31. package/dist/client-v2/pages/RoleUsersManager.d.ts +11 -0
  32. package/dist/client-v2/pages/UserFormDrawer.d.ts +15 -0
  33. package/dist/client-v2/pages/UsersManagementPage.d.ts +10 -0
  34. package/dist/client-v2/pages/UsersSettingsForm.d.ts +10 -0
  35. package/dist/client-v2/pages/types.d.ts +30 -0
  36. package/dist/client-v2/plugin.d.ts +26 -0
  37. package/dist/client-v2/shared/adminProfileFormModels.d.ts +15 -0
  38. package/dist/client-v2/shared/generatePassword.d.ts +9 -0
  39. package/dist/client-v2/user-center/ChangePasswordItemModel.d.ts +23 -0
  40. package/dist/client-v2/user-center/CurrentUserSummaryItemModel.d.ts +16 -0
  41. package/dist/client-v2/user-center/EditProfileItemModel.d.ts +18 -0
  42. package/dist/client-v2/user-center/SignOutItemModel.d.ts +17 -0
  43. package/dist/externalVersion.js +14 -9
  44. package/dist/locale/en-US.json +12 -1
  45. package/dist/locale/zh-CN.json +12 -1
  46. package/dist/server/collections/users.js +1 -0
  47. package/dist/server/user-data-sync-resource.d.ts +5 -1
  48. package/dist/server/user-data-sync-resource.js +3 -0
  49. package/package.json +3 -2
  50. package/dist/client/5f46e5d0a78be798.js +0 -10
  51. package/dist/client/647e00de2fe53b8c.js +0 -10
  52. package/dist/client/70d86bd07da0d9fd.js +0 -10
  53. package/dist/client/75baa413a3784860.js +0 -10
@@ -0,0 +1,193 @@
1
+ # 给其他插件扩展用户和权限模块
2
+
3
+ 默认有三个扩展入口:
4
+ - 给「Users & Permissions」增加新的设置页签
5
+ - 给「Roles & Permissions」增加新的角色级扩展面板
6
+ - 给「Roles & Permissions」页面里的「Permissions」区域增加子 tab
7
+
8
+
9
+ ## 扩展点总览
10
+
11
+ | 扩展点 | 写法 | 适合放什么 |
12
+ | --- | --- | --- |
13
+ | 设置页签 | `pluginSettingsManager.addPageTabItem({ menuKey: 'users-permissions' })` | 用户、角色、授权相关的独立管理页面 |
14
+ | 角色详情页 | `aclPlugin.rolesManager.add()` | 围绕“当前角色”的附加信息、附加配置和附加操作 |
15
+ | 权限页子 tab | `aclPlugin.settingsUI.addPermissionsTab()` | 挂到「Roles & Permissions」页面里「Permissions」这一层的权限配置子页面 |
16
+
17
+ `pluginSettingsManager.addMenuItem()` 对应的 `users-permissions` 父菜单通常已经由 `plugin-users` 或 `plugin-acl` 创建好了。其他插件一般不用重复创建。
18
+
19
+ ## 1. 扩展「Users & Permissions」设置页签
20
+
21
+ 这是最常见的扩展方式。只要你的功能需要出现在「Users & Permissions」模块里,就往 `menuKey: 'users-permissions'` 下加页签。
22
+
23
+ `plugin-users` 自己注册 `Users` 页签的方式是:
24
+
25
+ ```ts
26
+ this.pluginSettingsManager.addPageTabItem({
27
+ menuKey: 'users-permissions',
28
+ key: 'users',
29
+ title: this.t('Users'),
30
+ icon: 'UserOutlined',
31
+ aclSnippet: 'pm.users',
32
+ sort: 2,
33
+ componentLoader: () => import('./pages/UsersManagementPage'),
34
+ });
35
+ ```
36
+
37
+ 其他插件扩展时,通常只需要换掉 `key`、`title`、`aclSnippet` 和 `componentLoader`:
38
+
39
+ ```ts
40
+ import { Plugin } from '@nocobase/client-v2';
41
+
42
+ export class PluginLockedUsersClientV2 extends Plugin {
43
+ async load() {
44
+ this.pluginSettingsManager.addPageTabItem({
45
+ menuKey: 'users-permissions',
46
+ key: 'locked-users',
47
+ title: this.t('Locked users'),
48
+ icon: 'StopOutlined',
49
+ aclSnippet: 'pm.users.locked',
50
+ sort: 20,
51
+ componentLoader: () => import('./pages/LockedUsersPage'),
52
+ });
53
+ }
54
+ }
55
+ ```
56
+
57
+ 这些字段的职责可以这样理解:
58
+
59
+ | 字段 | 作用 |
60
+ | --- | --- |
61
+ | `menuKey` | 指定挂到哪个父菜单下。这里固定写 `users-permissions` |
62
+ | `key` | 当前页签自己的稳定标识。不要和别的插件重复 |
63
+ | `title` | 页签标题 |
64
+ | `icon` | 页签图标 |
65
+ | `aclSnippet` | 控制当前用户是否能看到这个页签 |
66
+ | `sort` | 控制页签顺序。数值越小越靠前 |
67
+ | `componentLoader` | 懒加载页面组件。v2 默认推荐这种写法 |
68
+
69
+ 适合放进这里的内容,比如:
70
+
71
+ - 锁定用户
72
+ - 用户同步
73
+ - 用户导入导出
74
+ - 组织成员映射
75
+ - 额外的账号安全策略
76
+
77
+
78
+ ## 2. 扩展角色详情页
79
+
80
+ 如果你的功能不是“再加一个总管理页面”,而是“给当前角色多一块内容”,那么应该走 `PluginAclClientV2.rolesManager.add()`。
81
+
82
+ `plugin-users` 自己就是这样把“角色下的用户管理”挂进去的:
83
+
84
+ ```ts
85
+ import PluginAclClientV2 from '@nocobase/plugin-acl/client-v2';
86
+
87
+ const aclPlugin = this.app.pm.get(PluginAclClientV2) as PluginAclClientV2 | undefined;
88
+
89
+ aclPlugin?.rolesManager.add('users', {
90
+ title: String(this.t('Users')),
91
+ sort: 10,
92
+ componentLoader: () => import('./pages/RoleUsersManager'),
93
+ });
94
+ ```
95
+
96
+ 其他插件可以按同样方式,把角色级扩展页接进去:
97
+
98
+ ```ts
99
+ import { Plugin } from '@nocobase/client-v2';
100
+ import PluginAclClientV2 from '@nocobase/plugin-acl/client-v2';
101
+
102
+ export class PluginUserGroupsClientV2 extends Plugin {
103
+ async load() {
104
+ const aclPlugin = this.app.pm.get(PluginAclClientV2) as PluginAclClientV2 | undefined;
105
+ if (!aclPlugin) {
106
+ return;
107
+ }
108
+
109
+ aclPlugin.rolesManager.add('user-groups', {
110
+ title: this.t('User groups'),
111
+ sort: 30,
112
+ componentLoader: () => import('./pages/RoleUserGroupsTab'),
113
+ });
114
+ }
115
+ }
116
+ ```
117
+
118
+ 这里要注意的是,`rolesManager.add()` 挂进去的不是全局设置页,而是**角色详情页里的一个 tab**。它更适合放和“当前角色”强相关的内容。
119
+
120
+ 适合放进这里的内容,比如:
121
+
122
+ - 当前角色关联的用户列表
123
+ - 当前角色允许访问的组织、部门或用户组
124
+ - 当前角色的附加安全策略
125
+ - 当前角色下才生效的第三方系统映射
126
+
127
+ ## 3. 扩展权限页面内的子 tab
128
+
129
+ 这一层和前面两个扩展点不太一样。它不是往「Users & Permissions」顶层再加一个页签,也不是给角色详情区再加一个独立 tab,而是往「Roles & Permissions」页面里已经存在的「Permissions」区域继续加内部子 tab。
130
+
131
+ 你可以把页面结构理解成这样:
132
+
133
+ ```text
134
+ Users & Permissions
135
+ ├─ Users
136
+ └─ Roles & Permissions
137
+ ├─ Permissions
138
+ │ ├─ System
139
+ │ ├─ Desktop routes
140
+ │ └─ 这里可以继续扩展更多权限子 tab
141
+ ├─ Users
142
+ └─ 其他 rolesManager tab
143
+ ```
144
+
145
+ 扩展入口在 `PluginAclClientV2.settingsUI.addPermissionsTab()` 上。`plugin-acl` 自己在 `load()` 里已经注册了两个内置子 tab:
146
+
147
+ ```ts
148
+ this.settingsUI.addPermissionsTab({
149
+ key: 'general',
150
+ label: String(this.t('System')),
151
+ sort: 10,
152
+ componentLoader: () => import('./pages/permissions/SystemPermissionsTab'),
153
+ });
154
+
155
+ this.settingsUI.addPermissionsTab({
156
+ key: 'menu',
157
+ label: String(this.t('Desktop routes')),
158
+ sort: 20,
159
+ componentLoader: () => import('./pages/permissions/DesktopRoutesPermissionsTab'),
160
+ });
161
+ ```
162
+
163
+ 写法如下:
164
+
165
+ ```ts
166
+ import { Plugin } from '@nocobase/client-v2';
167
+ import PluginAclClientV2 from '@nocobase/plugin-acl/client-v2';
168
+
169
+ export class PluginAIClientV2 extends Plugin {
170
+ async load() {
171
+ const aclPlugin = this.app.pm.get(PluginAclClientV2) as PluginAclClientV2 | undefined;
172
+ if (!aclPlugin) {
173
+ return;
174
+ }
175
+
176
+ aclPlugin.settingsUI.addPermissionsTab({
177
+ key: 'ai-employees',
178
+ label: this.t('AI employees'),
179
+ sort: 30,
180
+ componentLoader: () => import('./pages/permissions/AIEmployeesPermissionsTab'),
181
+ });
182
+ }
183
+ }
184
+ ```
185
+
186
+ 被加载的组件会收到这些 props:
187
+
188
+ - `activeKey`
189
+ - `activeRole`
190
+ - `currentUserRole`
191
+ - `onRoleChange`
192
+
193
+ 也就是说,子 tab 里的组件可以同时拿到正在配置的角色 `activeRole`,以及当前登录用户的角色 `currentUserRole`。`currentUserRole` 会经过 `RolesManagementPage` 归一化,至少包含 `name`、`title`、`snippets` 等常用字段;如果当前角色上下文不可用,则为 `null`。
package/client-v2.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export * from './dist/client-v2';
2
+ export { default } from './dist/client-v2';
package/client-v2.js ADDED
@@ -0,0 +1 @@
1
+ module.exports = require('./dist/client-v2/index.js');
@@ -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([["49"],{460:function(e,o,t){t.d(o,{n:function(){return r}});var n=t(953);function r(){return(0,n.useTranslation)(["users","client"],{nsMode:"fallback"})}},54:function(e,o,t){t.d(o,{Oo:function(){return i},Wz:function(){return p},fj:function(){return c},qn:function(){return s}});var n=t(166);function r(e,o,t){return o in e?Object.defineProperty(e,o,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[o]=t,e}var p={name:"users",fields:[{name:"id",type:"bigInt",autoIncrement:!0,primaryKey:!0,allowNull:!1,uiSchema:{type:"number",title:'{{t("ID")}}',"x-component":"InputNumber","x-read-pretty":!0},interface:"id"},{interface:"input",type:"string",name:"nickname",uiSchema:{type:"string",title:'{{t("Nickname")}}',"x-component":"Input"}},{interface:"input",type:"string",name:"username",unique:!0,uiSchema:{type:"string",title:'{{t("Username")}}',"x-component":"Input","x-validator":{username:!0},required:!0}},{interface:"email",type:"string",name:"email",unique:!0,uiSchema:{type:"string",title:'{{t("Email")}}',"x-component":"Input","x-validator":"email",required:!0}},{interface:"phone",type:"string",name:"phone",unique:!0,uiSchema:{type:"string",title:'{{t("Phone")}}',"x-component":"Input",required:!0}},{interface:"password",type:"password",name:"password",hidden:!0,uiSchema:{type:"string",title:'{{t("Password")}}',"x-component":"Password"}},{interface:"m2m",type:"belongsToMany",name:"roles",target:"roles",foreignKey:"userId",otherKey:"roleName",onDelete:"CASCADE",sourceKey:"id",targetKey:"name",through:"rolesUsers",uiSchema:{type:"array",title:'{{t("Roles")}}',"x-component":"AssociationField","x-component-props":{multiple:!0,fieldNames:{label:"title",value:"name"}}}}]},i={type:"object",properties:{block1:{type:"void","x-component":"CardItem","x-component-props":{heightMode:"fullHeight"},"x-decorator":"TableBlockProvider","x-decorator-props":{dataSource:"main",rowKey:"id",collection:"users",action:"list",params:{pageSize:20}},"x-use-decorator-props":"useTableBlockDecoratorProps",properties:{actions:{type:"void","x-component":"ActionBar","x-component-props":{style:{marginBottom:"var(--nb-spacing)"}},properties:{filter:{type:"void","x-component":"FilterAction","x-align":"left"},refresh:{type:"void",title:'{{ t("Refresh") }}',"x-action":"refresh","x-component":"Action","x-component-props":{icon:"ReloadOutlined"},"x-use-component-props":"useRefreshActionProps"},delete:{type:"void",title:'{{ t("Delete") }}',"x-component":"Action","x-component-props":{confirm:{title:"{{t('Delete users')}}",content:"{{t('Are you sure you want to delete it?')}}"},icon:"DeleteOutlined"},"x-use-component-props":"useBulkDestroyActionProps"},create:{type:"void",title:'{{t("Add new")}}',"x-component":"Action","x-component-props":{type:"primary",icon:"PlusOutlined"},properties:{drawer:{type:"void","x-component":"Action.Drawer","x-decorator":"FormV2",title:'{{t("Add user")}}',properties:{form:{type:"void","x-component":"ProfileCreateForm"}}}}}}},table:{type:"array","x-uid":"input","x-component":"TableV2","x-component-props":{rowKey:"id",rowSelection:{type:"checkbox"}},"x-use-component-props":"useTableBlockProps",properties:{column1:{type:"void","x-decorator":"TableV2.Column.Decorator","x-component":"TableV2.Column",properties:{nickname:{type:"number","x-component":"CollectionField","x-read-pretty":!0}}},column2:{type:"void","x-decorator":"TableV2.Column.Decorator","x-component":"TableV2.Column",properties:{username:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},column3:{type:"void","x-decorator":"TableV2.Column.Decorator","x-component":"TableV2.Column",properties:{email:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},column4:{type:"void","x-decorator":"TableV2.Column.Decorator","x-component":"TableV2.Column",title:'{{t("Roles")}}',properties:{roles:{"x-component":"CollectionField","x-component-props":{mode:"Tag",enableLink:!1,ellipsis:!0},"x-read-pretty":!0,"x-collection-field":"users.roles"}}},column5:{type:"void",title:'{{t("Actions")}}',"x-component":"TableV2.Column","x-decorator":"TableV2.Column.ActionBar",properties:{actions:{type:"void","x-component":"Space","x-component-props":{split:"|"},properties:{update:{type:"void",title:'{{t("Edit profile")}}',"x-decorator":"ACLActionProvider","x-acl-action":"users:update","x-component":"Action.Link","x-component-props":{type:"primary"},properties:{drawer:{type:"void","x-component":"Action.Drawer",title:'{{t("Edit profile")}}',properties:{form:{type:"void","x-component":"ProfileEditForm"}}}}},changePassword:{type:"void",title:'{{t("Change password")}}',"x-decorator":"ACLActionProvider","x-acl-action":"users:update","x-component":"Action.Link","x-component-props":{type:"primary"},properties:{drawer:{type:"void","x-component":"Action.Drawer","x-decorator":"FormV2","x-use-decorator-props":"useEditFormProps",title:'{{t("Change password")}}',properties:{username:{"x-component":"CollectionField","x-component-props":{hidden:!0}},password:{"x-component":"CollectionField","x-component-props":{component:"PasswordField"},"x-decorator":"FormItem",required:!0},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-use-component-props":"useCancelActionProps"},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary"},"x-use-component-props":"useSubmitActionProps"}}}}}}},delete:{type:"void",title:'{{ t("Delete") }}',"x-acl-action":"users:destroy","x-action":"destroy","x-decorator":"ACLActionProvider","x-component":"Action.Link","x-component-props":{confirm:{title:"{{t('Delete')}}",content:"{{t('Are you sure you want to delete it?')}}"}},"x-use-component-props":"useDestroyActionProps"}}}}}}}}}}},c={type:"object","x-decorator":"UsersSettingsProvider",properties:{usersSettings:{type:"void","x-component":"CardItem","x-decorator":"UsersSettingsProvider",properties:{form:{type:"void","x-component":"FormV2","x-use-component-props":"useFormBlockProps",properties:{enableEditProfile:{type:"string","x-component":"Checkbox","x-decorator":"FormItem",default:!0,"x-content":'{{t("Allow edit profile")}}'},enableChangePassword:{type:"string","x-component":"Checkbox","x-decorator":"FormItem",default:!0,"x-content":'{{t("Allow change password")}}'},submit:{title:'{{t("Save")}}',"x-component":"Action","x-use-component-props":"useSubmitActionProps"}}}}}}},s=function(){var e;return{name:"roleUsers",type:"void",properties:{actions:{type:"void","x-component":"ActionBar","x-component-props":{style:{marginBottom:16}},properties:(r(e={},(0,n.uid)(),{type:"void",title:'{{ t("Filter") }}',"x-action":"filter","x-component":"Filter.Action","x-use-component-props":"useFilterActionProps","x-component-props":{icon:"FilterOutlined"},"x-align":"left"}),r(e,"actions",{type:"void","x-component":"Space",properties:{remove:{type:"void",title:'{{t("Remove")}}',"x-component":"Action","x-component-props":{icon:"MinusOutlined",confirm:{title:"{{t('Remove')}}",content:"{{t('Are you sure you want to remove these users?')}}"},style:{marginRight:8},useAction:"{{ useBulkRemoveUsers }}"}},create:{type:"void",title:'{{t("Add users")}}',"x-component":"Action","x-component-props":{type:"primary",icon:"PlusOutlined"},properties:{drawer:{type:"void","x-component":"Action.Drawer","x-decorator":"FormV2",title:'{{t("Add users")}}',properties:{resource:{type:"void","x-decorator":"FormItem","x-component":"RoleUsersProvider",properties:{actions:{type:"void","x-component":"ActionBar","x-component-props":{style:{marginBottom:16}},properties:{filter:{type:"void",title:'{{ t("Filter") }}',default:{$and:[{username:{$includes:""}},{nickname:{$includes:""}}]},"x-action":"filter","x-component":"Filter.Action","x-use-component-props":"useFilterActionProps","x-component-props":{icon:"FilterOutlined"},"x-align":"left"}}},table:{type:"void","x-component":"Table.Void","x-component-props":{rowKey:"id",rowSelection:{type:"checkbox",onChange:"{{ handleSelectRoleUsers }}"},useDataSource:"{{ cm.useDataSourceFromRAC }}"},properties:{username:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{username:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},nickname:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{nickname:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},phone:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{phone:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},email:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{email:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}}}}}},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:"{{ useAddRoleUsers }}"}}}}}}}}}}),e)},table:{type:"void","x-component":"Table.Void","x-component-props":{rowKey:"id",rowSelection:{type:"checkbox"},useDataSource:"{{ cm.useDataSourceFromRAC }}"},properties:{username:{type:"void",title:'{{t("Username")}}',"x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{username:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},nickname:{type:"void",title:'{{t("Nickname")}}',"x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{nickname:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},actions:{type:"void",title:'{{t("Actions")}}',"x-component":"Table.Column",properties:{actions:{type:"void","x-component":"Space","x-component-props":{split:"|"},properties:{remove:{type:"void",title:'{{ t("Remove") }}',"x-component":"Action.Link","x-component-props":{confirm:{title:"{{t('Remove user')}}",content:"{{t('Are you sure you want to remove it?')}}"},useAction:"{{ useRemoveUser }}"}}}}}}}}}}}}}]);
@@ -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([["70"],{301:function(e,t,r){r.r(t),r.d(t,{UsersManagement:function(){return M}});var n=r(477),o=r(452),a=r(230),u=r(342),i=r(59),c=r(155),l=r.n(c),s=r(460),f=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,t="ABCDEFGHIJKLMNOPQRSTUVWXYZ",r="abcdefghijklmnopqrstuvwxyz",n="0123456789",o="!#$%^&*-_+=",a=t+r+n+o,u=new Uint32Array(e);crypto.getRandomValues(u);var i="";i+=t.charAt(u[0]%t.length),i+=r.charAt(u[1]%r.length),i+=n.charAt(u[2]%n.length),i+=o.charAt(u[3]%o.length);for(var c=4;c<e;c++){var l=u[c]%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 r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var m=function(){var e,t=(0,s.n)().t,r=(0,a.useField)(),n=function(e){if(Array.isArray(e))return e}(e=l().useState(!1))||function(e){var t,r,n=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o=[],a=!0,u=!1;try{for(n=n.call(e);!(a=(t=n.next()).done)&&(o.push(t.value),2!==o.length);a=!0);}catch(e){u=!0,r=e}finally{try{a||null==n.return||n.return()}finally{if(u)throw r}}return o}}(e)||function(e){if(e){if("string"==typeof e)return p(e,2);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return p(e,2)}}(e)||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],m=n[1],b=(0,u.useActionContext)();return(0,c.useEffect)(function(){b.visible||r.reset()},[r,b.visible]),(0,c.useEffect)(function(){r.value&&r.validate()},[r.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:r.value,onChange:function(e){return r.setValue(e.target.value)},autoComplete:"new-password"})),l().createElement(i.Col,{span:4},l().createElement(i.Button,{onClick:function(){r.setValue(f()),m(!0)}},t("Random password"))))},b=r(54);function v(e,t,r,n,o,a,u){try{var i=e[a](u),c=i.value}catch(e){r(e);return}i.done?t(c):Promise.resolve(c).then(n,o)}function d(e){return function(){var t=this,r=arguments;return new Promise(function(n,o){var a=e.apply(t,r);function u(e){v(a,n,o,u,i,"next",e)}function i(e){v(a,n,o,u,i,"throw",e)}u(void 0)})}}function y(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){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}function h(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}function g(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},u=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(u,"next",{value:c(0)}),i(u,"throw",{value:c(1)}),i(u,"return",{value:c(2)}),"function"==typeof Symbol&&i(u,Symbol.iterator,{value:function(){return this}}),u;function c(i){return function(c){var l=[i,c];if(r)throw TypeError("Generator is already executing.");for(;u&&(u=0,l[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return a.label++,{value:l[1],done:!1};case 5:a.label++,n=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){a=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){a.label=l[1];break}if(6===l[0]&&a.label<o[1]){a.label=o[1],o=l;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(l);break}o[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}function C(){var e,t,r=(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 r},r}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,r=(0,a.useForm)(),n=(0,u.useDataBlockResource)(),o=(0,u.useDataBlockRequest)().refresh,c=(0,s.n)().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,r.submit()];case 1:if(u.sent(),!(a=r.values)[l.filterTargetKey])return[3,3];return[4,n.update({values:a,filterByTk:a[l.filterTargetKey]})];case 2:return u.sent(),[3,5];case 3:return[4,n.create({values:a})];case 4:u.sent(),u.label=5;case 5:return o(),t.success(c("Saved successfully")),e(!1),r.reset(),[2]}})})()}}},O=function(){var e=(0,u.useCollectionRecordData)();return{form:(0,c.useMemo)(function(){return(0,o.createForm)({initialValues:e})},[e])}},S=function(){return l().createElement(u.RemoteSchemaComponent,{uid:"nocobase-admin-profile-create-form",noForm:!0})},E=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,s.n)().t,t=(0,u.useCollectionManager)();return(0,c.useMemo)(function(){return null==t?void 0:t.getCollection("users")},[t])?l().createElement(u.SchemaComponent,{schema:b.Oo,scope:{t:e,useCancelActionProps:w,useSubmitActionProps:P,useEditFormProps:O},components:{PasswordField:m,ProfileEditForm:E,ProfileCreateForm:S,FilterAction:A}}):l().createElement(i.Spin,null)},k=(0,c.createContext)({}),x=function(e){var t=(0,u.useRequest)({url:"users:getSystemSettings"});return l().createElement(k.Provider,{value:t},e.children)},F=function(){var e=(0,s.n)().t,t=(0,a.useForm)();return l().createElement(u.SchemaComponent,{schema:b.fj,scope:{t:e,useFormBlockProps:function(){var e,r=(0,c.useContext)(k),n=(null==r||null==(e=r.data)?void 0:e.data)||{},o=n.enableChangePassword,a=n.enableEditProfile;return(0,c.useEffect)(function(){null==t||t.setValues({enableChangePassword:!1!==o,enableEditProfile:!1!==a})},[r]),{form:t}},useSubmitActionProps:function(){var t=(0,u.useAPIClient)(),r=(0,a.useForm)();return{type:"primary",onClick:function(){return d(function(){var n;return g(this,function(o){switch(o.label){case 0:return[4,r.submit()];case 1:return o.sent(),n=r.values,[4,t.request({url:"users:updateSystemSettings",data:n,method:"POST"})];case 2:return o.sent(),i.message.success(e("Saved successfully")),window.location.reload(),[2]}})})()}}}},components:{UsersSettingsProvider:x}})},M=function(){var e=(0,s.n)().t;return l().createElement(i.Tabs,{defaultActiveKey:"usersManager",type:"card",className:(0,n.css)(C()),items:[{label:e("Users manager"),key:"usersManager",children:l().createElement(j,null)},{label:e("Settings"),key:"usersSettings",children:l().createElement(F,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([["772"],{687:function(e,r,t){t.r(r),t.d(r,{RoleUsersManager:function(){return m}});var n=t(155),o=t.n(n),u=t(59),s=t(342),l=t(79),c=t(460),a=t(54),i=function(){var e,r,t=(0,n.useContext)(s.CollectionContext),o=(0,s.useFilterFieldOptions)(t.fields),u=(0,s.useResourceActionContext)();return(0,s.useFilterFieldProps)({options:o,params:(null==(r=u.state)||null==(e=r.params)?void 0:e[0])||u.params,service:u})};function f(e,r,t,n,o,u,s){try{var l=e[u](s),c=l.value}catch(e){t(e);return}l.done?r(c):Promise.resolve(c).then(n,o)}function v(e){return function(){var r=this,t=arguments;return new Promise(function(n,o){var u=e.apply(r,t);function s(e){f(u,n,o,s,l,"next",e)}function l(e){f(u,n,o,s,l,"throw",e)}s(void 0)})}}function p(e,r){var t,n,o,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),l=Object.defineProperty;return l(s,"next",{value:c(0)}),l(s,"throw",{value:c(1)}),l(s,"return",{value:c(2)}),"function"==typeof Symbol&&l(s,Symbol.iterator,{value:function(){return this}}),s;function c(l){return function(c){var a=[l,c];if(t)throw TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(u=0)),u;)try{if(t=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=r.call(e,u)}catch(e){a=[6,e],n=0}finally{t=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}}}var d=function(){var e=(0,s.useAPIClient)(),r=(0,n.useContext)(l.RolesManagerContext).role,t=(0,s.useRecord)(),o=(0,s.useResourceActionContext)().refresh;return{run:function(){return v(function(){return p(this,function(n){switch(n.label){case 0:return[4,e.resource("roles.users",null==r?void 0:r.name).remove({values:[t.id]})];case 1:return n.sent(),o(),[2]}})})()}}},b=function(){var e=(0,c.n)().t,r=u.App.useApp().message,t=(0,s.useAPIClient)(),o=(0,s.useResourceActionContext)(),a=o.state,i=o.setState,f=o.refresh,d=(0,n.useContext)(l.RolesManagerContext).role;return{run:function(){return v(function(){var n;return p(this,function(o){switch(o.label){case 0:if(!(null==(n=null==a?void 0:a.selectedRowKeys)?void 0:n.length))return r.warning(e("Please select users")),[2];return[4,t.resource("roles.users",null==d?void 0:d.name).remove({values:n})];case 1:return o.sent(),null==i||i({selectedRowKeys:[]}),f(),[2]}})})()}}},h=function(e){var r=(0,n.useContext)(l.RolesManagerContext).role;return o().createElement(s.ResourceActionProvider,{collection:a.Wz,request:{resource:"users",action:"listExcludeRole",params:{roleName:null==r?void 0:r.name}}},e.children)},m=function(){var e=(0,c.n)().t,r=(0,n.useContext)(l.RolesManagerContext).role,t=(0,s.useRequest)({resource:"roles.users",resourceOf:null==r?void 0:r.name,action:"list"},{ready:!!r});(0,n.useEffect)(function(){t.run()},[r]);var u=(0,n.useRef)([]),f=(0,n.useMemo)(function(){return(0,a.qn)()},[r]);return o().createElement(s.ResourceActionContext.Provider,{value:function(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{},n=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.forEach(function(r){var n;n=t[r],r in e?Object.defineProperty(e,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[r]=n})}return e}({},t)},o().createElement(s.CollectionProvider_deprecated,{collection:a.Wz},o().createElement(s.SchemaComponent,{schema:f,components:{RoleUsersProvider:h},scope:{useBulkRemoveUsers:b,useRemoveUser:d,handleSelectRoleUsers:function(e,r){u.current=r},useAddRoleUsers:function(){var e=(0,n.useContext)(l.RolesManagerContext).role,r=(0,s.useAPIClient)(),t=(0,s.useActionContext)().setVisible,o=(0,s.useResourceActionContext)().refresh;return{run:function(){return v(function(){return p(this,function(n){switch(n.label){case 0:return[4,r.resource("roles.users",null==e?void 0:e.name).add({values:u.current.map(function(e){return e.id})})];case 1:return n.sent(),u.current=[],t(!1),o(),[2]}})})()}}},useFilterActionProps:i,t:e}})))}}}]);
@@ -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([["821"],{404:function(e,t,r){r.r(t),r.d(t,{UsersProvider:function(){return m},useEditProfile:function(){return y}});var n=r(342),o=r(155),i=r.n(o),u=r(460),a=r(166),l=r(230);function c(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 s(e,t,r,n,o,i,u){try{var a=e[i](u),l=a.value}catch(e){r(e);return}a.done?t(l):Promise.resolve(l).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,l.useForm)(),o=(0,n.useAPIClient)(),i=(0,l.useFieldSchema)(),u=(0,l.useField)(),a=(0,n.useCollectValuesToSubmit)();return{type:"primary",htmlType:"submit",onClick:function(){var n;return(n=function(){var n,l,c,s,f;return function(e,t){var r,n,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},u=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),a=Object.defineProperty;return a(u,"next",{value:l(0)}),a(u,"throw",{value:l(1)}),a(u,"return",{value:l(2)}),"function"==typeof Symbol&&a(u,Symbol.iterator,{value:function(){return this}}),u;function l(a){return function(l){var c=[a,l];if(r)throw TypeError("Generator is already executing.");for(;u&&(u=0,c[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return i.label++,{value:c[1],done:!1};case 5:i.label++,n=c[1],c=[0];continue;case 7:c=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){i=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){i.label=c[1];break}if(6===c[0]&&i.label<o[1]){i.label=o[1],o=c;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(c);break}o[2]&&i.ops.pop(),i.trys.pop();continue}c=t.call(e,i)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(d){switch(d.label){case 0:if(c=(l=null!=(n=null==i?void 0:i["x-action-settings"])?n:{}).triggerWorkflows,l.skipValidator)return[3,2];return[4,r.submit()];case 1:d.sent(),d.label=2;case 2:return[4,a()];case 3:s=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:s,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 d.sent(),e.mutate({data:p({},null==e||null==(f=e.data)?void 0:f.data,s)}),[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){s(i,r,o,u,a,"next",e)}function a(e){s(i,r,o,u,a,"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){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(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=function(e){if(Array.isArray(e))return e}(e=(0,o.useState)(!1))||function(e){var t,r,n=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(t=n.next()).done)&&(o.push(t.value),2!==o.length);i=!0);}catch(e){u=!0,r=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw r}}return o}}(e)||function(e){if(e){if("string"==typeof e)return c(e,2);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return c(e,2)}}(e)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),l=r[0],s=r[1],p=(0,u.n)().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(){s(!0),null==t||t.setVisible(!1)},label:i().createElement("div",null,p("Edit profile"),i().createElement(n.ActionContextProvider,{value:{visible:l,setVisible:s}},i().createElement("div",{onClick:function(e){return e.stopPropagation()}},i().createElement(n.SchemaComponent,{components:{ProfileEditForm:b},schema:{type:"object",properties:f({},(0,a.uid)(),{"x-component":"Action.Drawer","x-component-props":{},type:"void",title:'{{t("Edit profile")}}',properties:{form:{type:"void","x-component":"ProfileEditForm"}}})}}))))}},[l]);return!1===y?null:m},m=function(e){var t=(0,n.useCurrentUserSettingsMenu)().addMenuItem,r=y(),u=(0,n.useSystemSettings)().data,a=((null==u?void 0:u.data)||{}).enableEditProfile;return(0,o.useEffect)(function(){!1!==a&&t(r,{after:"divider_1"})},[t,r,a]),i().createElement(i().Fragment,null,e.children)}},460:function(e,t,r){r.d(t,{n:function(){return o}});var n=r(953);function o(){return(0,n.useTranslation)(["users","client"],{nsMode:"fallback"})}}}]);
@@ -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/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,l,c){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=l},156:function(e){"use strict";e.exports=i},238:function(e){"use strict";e.exports=c},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""+({138:"70d86bd07da0d9fd",386:"75baa413a3784860",74:"5f46e5d0a78be798",836:"647e00de2fe53b8c"})[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 l=function(t,n){o.onerror=o.onload=null,clearTimeout(c);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)},c=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),i&&document.head.appendChild(o)},g.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(d=window.__webpack_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),l=g(238),c=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,c.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,l.useTranslation)().t,u=((0,r.useSystemSettings)()||{}).data,s=((null==u?void 0:u.data)||{}).enableChangePassword,c=(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}))},[c]);return!1===s?null:p().createElement(r.zIndexContext.Provider,{value:c},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,l,c,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(l=(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:c=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:c,triggerWorkflows:(null==l?void 0:l.length)?l.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,c)}),[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,l.useTranslation)().t,c=((0,r.useSystemSettings)()||{}).data,d=(null!=(t=null==c?void 0:c.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)))},U=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 q(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,l.useTranslation)().t,n=(0,r.useNavigateNoUpdate)(),o=(0,r.useAPIClient)(),i=(0,r.useCurrentUserContext)();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(""))),i.mutate(null),[2]}})},function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){q(i,r,o,a,u,"next",e)}function u(e){q(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("138").then(g.bind(g,71)))},"UsersProvider").UsersProvider;var R=(0,r.lazy)(function(){return M("imported_-193g1io_component",Promise.all([g.e("836"),g.e("74")]).then(g.bind(g,281)))},"UsersManagement").UsersManagement,B=(0,r.lazy)(function(){return M("imported_-121r5eb_component",Promise.all([g.e("836"),g.e("386")]).then(g.bind(g,7)))},"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"}),isPinned:!0,sort:200,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:U,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}()});
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react-i18next"),require("@emotion/css"),require("react-router-dom"),require("@formily/core"),require("@formily/shared"),require("react"),require("antd"),require("@nocobase/client"),require("@formily/react"),require("@nocobase/plugin-acl/client"),require("@nocobase/utils/client")):"function"==typeof define&&define.amd?define("@nocobase/plugin-users",["react-i18next","@emotion/css","react-router-dom","@formily/core","@formily/shared","react","antd","@nocobase/client","@formily/react","@nocobase/plugin-acl/client","@nocobase/utils/client"],t):"object"==typeof exports?exports["@nocobase/plugin-users"]=t(require("react-i18next"),require("@emotion/css"),require("react-router-dom"),require("@formily/core"),require("@formily/shared"),require("react"),require("antd"),require("@nocobase/client"),require("@formily/react"),require("@nocobase/plugin-acl/client"),require("@nocobase/utils/client")):e["@nocobase/plugin-users"]=t(e["react-i18next"],e["@emotion/css"],e["react-router-dom"],e["@formily/core"],e["@formily/shared"],e.react,e.antd,e["@nocobase/client"],e["@formily/react"],e["@nocobase/plugin-acl/client"],e["@nocobase/utils/client"])}(self,function(e,t,r,n,o,i,a,u,c,l,s){return function(){"use strict";var p,f,d,b={477:function(e){e.exports=t},452:function(e){e.exports=n},230:function(e){e.exports=c},166:function(e){e.exports=o},342:function(e){e.exports=u},79:function(e){e.exports=l},768:function(e){e.exports=s},59:function(e){e.exports=a},155:function(e){e.exports=i},953:function(t){t.exports=e},442:function(e){e.exports=r}},m={};function y(e){var t=m[e];if(void 0!==t)return t.exports;var r=m[e]={exports:{}};return b[e](r,r.exports,y),r.exports}y.m=b,y.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return y.d(t,{a:t}),t},y.d=function(e,t){for(var r in t)y.o(t,r)&&!y.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},y.f={},y.e=function(e){return Promise.all(Object.keys(y.f).reduce(function(t,r){return y.f[r](e,t),t},[]))},y.u=function(e){return""+e+"."+({49:"919f2c983a959288",70:"a415ef0ddba902d8",772:"61c09631dd20ae13",821:"8ca2f675db381516"})[e]+".js"},y.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),y.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},v={},y.l=function(e,t,r,n){if(v[e])return void v[e].push(t);if(void 0!==r)for(var o,i,a=document.getElementsByTagName("script"),u=0;u<a.length;u++){var c=a[u];if(c.getAttribute("src")==e||c.getAttribute("data-rspack")=="@nocobase/plugin-users:"+r){o=c;break}}o||(i=!0,(o=document.createElement("script")).timeout=120,y.nc&&o.setAttribute("nonce",y.nc),o.setAttribute("data-rspack","@nocobase/plugin-users:"+r),o.src=e),v[e]=[t];var l=function(t,r){o.onerror=o.onload=null,clearTimeout(s);var n=v[e];if(delete v[e],o.parentNode&&o.parentNode.removeChild(o),n&&n.forEach(function(e){return e(r)}),t)return t(r)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),i&&document.head.appendChild(o)},y.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},y.g.importScripts&&(h=y.g.location+"");var v,h,g=y.g.document;if(!h&&g&&(g.currentScript&&"SCRIPT"===g.currentScript.tagName.toUpperCase()&&(h=g.currentScript.src),!h)){var w=g.getElementsByTagName("script");if(w.length)for(var x=w.length-1;x>-1&&(!h||!/^http(s?):/.test(h));)h=w[x--].src}if(!h)throw Error("Automatic publicPath is not supported in this browser");y.p=h.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),p={889:0},y.f.j=function(e,t){var r=y.o(p,e)?p[e]:void 0;if(0!==r)if(r)t.push(r[2]);else{var n=new Promise(function(t,n){r=p[e]=[t,n]});t.push(r[2]=n);var o=y.p+y.u(e),i=Error();y.l(o,function(t){if(y.o(p,e)&&(0!==(r=p[e])&&(p[e]=void 0),r)){var n=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;i.message="Loading chunk "+e+" failed.\n("+n+": "+o+")",i.name="ChunkLoadError",i.type=n,i.request=o,r[1](i)}},"chunk-"+e,e)}},f=function(e,t){var r,n,o=t[0],i=t[1],a=t[2],u=0;if(o.some(function(e){return 0!==p[e]})){for(r in i)y.o(i,r)&&(y.m[r]=i[r]);a&&a(y)}for(e&&e(t);u<o.length;u++)n=o[u],y.o(p,n)&&p[n]&&p[n][0](),p[n]=0},(d=self.webpackChunk_nocobase_plugin_users=self.webpackChunk_nocobase_plugin_users||[]).forEach(f.bind(null,0)),d.push=f.bind(null,d.push.bind(d));var P={};return!function(){var e="",t="u">typeof document?document.currentScript:null;if(t&&t.src&&(e=t.src.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")),!e){var r=window.__webpack_public_path__||"";r&&("/"!==r.charAt(r.length-1)&&(r+="/"),e=r+"static/plugins/@nocobase/plugin-users/dist/client/")}if(!e){var n=window.__nocobase_modern_client_prefix__||"v",o="/"+(n=String(n).replace(/^\/+|\/+$/g,"")||"v")+"/";if(!(e=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var i=window.location.pathname||"/",a=i.indexOf(o);e=a>=0?i.slice(0,a+1):"/"}e&&(e=e.replace(RegExp("/"+n+"/?$"),"/")),e||(e="/"),"/"!==e.charAt(e.length-1)&&(e+="/"),e+="static/plugins/@nocobase/plugin-users/dist/client/"}y.p=e}(),!function(){y.r(P),y.d(P,{default:function(){return B}});var e,t,r,n=y(342),o=y(768),i=y(79),a=y.n(i),u=y(230),c=y(166),l=y(953),s=y(442),p=y(155),f=y.n(p);function d(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 b(e,t,r,n,o,i,a){try{var u=e[i](a),c=u.value}catch(e){r(e);return}u.done?t(c):Promise.resolve(c).then(n,o)}function m(e){return function(){var t=this,r=arguments;return new Promise(function(n,o){var i=e.apply(t,r);function a(e){b(i,n,o,a,u,"next",e)}function u(e){b(i,n,o,a,u,"throw",e)}a(void 0)})}}function v(e,t){var r,n,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(a,"next",{value:c(0)}),u(a,"throw",{value:c(1)}),u(a,"return",{value:c(2)}),"function"==typeof Symbol&&u(a,Symbol.iterator,{value:function(){return this}}),a;function c(u){return function(c){var l=[u,c];if(r)throw TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,n=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}var h=function(){var e=(0,n.useActionContext)().setVisible,t=(0,u.useForm)();return{run:function(){return m(function(){return v(this,function(r){switch(r.label){case 0:return e(!1),[4,t.reset()];case 1:return r.sent(),[2]}})})()}}},g=function(){var e=(0,s.useNavigate)(),t=(0,n.useActionContext)().setVisible,r=(0,u.useForm)(),o=(0,n.useAPIClient)();return{run:function(){return m(function(){return v(this,function(n){switch(n.label){case 0:return[4,r.submit()];case 1:return n.sent(),[4,o.resource("auth").changePassword({values:r.values})];case 2:return n.sent(),[4,r.reset()];case 3:return n.sent(),t(!1),e("/signin"),[2]}})})()}}},w={type:"object",properties:(e={},t=(0,c.uid)(),r={"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:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e)},x=function(){var e,t=(0,p.useContext)(n.DropdownVisibleContext),r=function(e){if(Array.isArray(e))return e}(e=(0,p.useState)(!1))||function(e){var t,r,n=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o=[],i=!0,a=!1;try{for(n=n.call(e);!(i=(t=n.next()).done)&&(o.push(t.value),2!==o.length);i=!0);}catch(e){a=!0,r=e}finally{try{i||null==n.return||n.return()}finally{if(a)throw r}}return o}}(e)||function(e){if(e){if("string"==typeof e)return d(e,2);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return d(e,2)}}(e)||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],i=r[1],a=(0,l.useTranslation)().t,u=((0,n.useSystemSettings)()||{}).data,c=((null==u?void 0:u.data)||{}).enableChangePassword,s=(0,n.useZIndexContext)()+10,b=(0,p.useCallback)(function(e){var r;e.stopPropagation(),null==t||null==(r=t.setVisible)||r.call(t,!1),i(function(e){return!e||e})},[t]),m=(0,p.useMemo)(function(){return f().createElement(n.SchemaComponentContext.Provider,{value:{designable:!1}},f().createElement(n.SchemaComponent,{scope:{useCloseAction:h,useSaveCurrentUserValues:g},schema:w}))},[s]);return!1===c?null:f().createElement(n.zIndexContext.Provider,{value:s},f().createElement(n.SchemaSettingsItem,{eventKey:"changePassword",title:"changePassword"},f().createElement("div",{onClick:b},a("Change password"))),f().createElement(n.ActionContextProvider,{value:{visible:o,setVisible:i}},o&&f().createElement("div",{onClick:function(e){return e.stopPropagation()}},m)))};function C(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 S(e,t,r,n,o,i,a){try{var u=e[i](a),c=u.value}catch(e){r(e);return}u.done?t(c):Promise.resolve(c).then(n,o)}function O(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function j(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){O(e,t,r[t])})}return e}var k=function(){var e=(0,n.useCurrentUserContext)(),t=(0,n.useActionContext)().setVisible,r=(0,u.useForm)(),o=(0,n.useAPIClient)(),i=(0,u.useFieldSchema)(),a=(0,u.useField)(),c=(0,n.useCollectValuesToSubmit)();return{type:"primary",htmlType:"submit",onClick:function(){var n;return(n=function(){var n,u,l,s,p;return function(e,t){var r,n,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(a,"next",{value:c(0)}),u(a,"throw",{value:c(1)}),u(a,"return",{value:c(2)}),"function"==typeof Symbol&&u(a,Symbol.iterator,{value:function(){return this}}),a;function c(u){return function(c){var l=[u,c];if(r)throw TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,n=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(f){switch(f.label){case 0:if(l=(u=null!=(n=null==i?void 0:i["x-action-settings"])?n:{}).triggerWorkflows,u.skipValidator)return[3,2];return[4,r.submit()];case 1:f.sent(),f.label=2;case 2:return[4,c()];case 3:s=f.sent(),a.data=a.data||{},a.data.loading=!0,f.label=4;case 4:return f.trys.push([4,7,,8]),[4,o.resource("users").updateProfile({values:s,triggerWorkflows:(null==l?void 0:l.length)?l.map(function(e){return[e.workflowKey,e.context].filter(Boolean).join("!")}).join(","):void 0})];case 5:return f.sent(),e.mutate({data:j({},null==e||null==(p=e.data)?void 0:p.data,s)}),[4,r.reset()];case 6:return f.sent(),a.data.loading=!1,t(!1),[3,8];case 7:return f.sent(),a.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 a(e){S(i,r,o,a,u,"next",e)}function u(e){S(i,r,o,a,u,"throw",e)}a(void 0)})})()}}},E=function(){var e,t=((0,n.useCurrentUserContext)()||{}).data;return{params:{filterByTk:null==t||null==(e=t.data)?void 0:e.id}}},A=function(){var e=(0,n.useActionContext)().setVisible;return{type:"default",onClick:function(){e(!1)}}},_=function(){var e=(0,p.useContext)(n.DropdownVisibleContext),t=(0,n.useCollectionManager)().getCollection("users"),r=(0,p.useMemo)(function(){var e,r;return e=j({},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){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}),e},[t]);return(0,p.useEffect)(function(){null==e||e.setVisible(!1)},[e]),f().createElement(n.ExtendCollectionsProvider,{collections:[r]},f().createElement(n.RemoteSchemaComponent,{uid:"nocobase-user-profile-edit-form",noForm:!0,scope:{useUpdateProfileActionProps:k,useEditFormBlockDecoratorProps:E,useCancelActionProps:A}}))},I=function(){var e,t,r=(0,p.useContext)(n.DropdownVisibleContext),o=function(e){if(Array.isArray(e))return e}(e=(0,p.useState)(!1))||function(e){var t,r,n=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o=[],i=!0,a=!1;try{for(n=n.call(e);!(i=(t=n.next()).done)&&(o.push(t.value),2!==o.length);i=!0);}catch(e){a=!0,r=e}finally{try{i||null==n.return||n.return()}finally{if(a)throw r}}return o}}(e)||function(e){if(e){if("string"==typeof e)return C(e,2);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return C(e,2)}}(e)||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,l.useTranslation)().t,s=((0,n.useSystemSettings)()||{}).data,d=(null!=(t=null==s?void 0:s.data)?t:{}).enableEditProfile,b=(0,n.useZIndexContext)()+10,m=(0,p.useCallback)(function(e){var t;e.stopPropagation(),null==r||null==(t=r.setVisible)||t.call(r,!1),a(function(e){return!e||e})},[r]),y=(0,p.useMemo)(function(){return f().createElement(n.SchemaComponent,{components:{ProfileEditForm:_},schema:{type:"object",properties:O({},(0,c.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===d?null:f().createElement(n.zIndexContext.Provider,{value:b},f().createElement(n.SchemaSettingsItem,{eventKey:"EditProfile",title:"EditProfile"},f().createElement("div",{onClick:m},u("Edit profile"))),f().createElement(n.ActionContextProvider,{value:{visible:i,setVisible:a}},i&&f().createElement("div",{onClick:function(e){return e.stopPropagation()}},y)))},T=function(){var e,t,r,o=(0,n.useCurrentUserContext)().data,i=(0,n.useToken)().token;return f().createElement(n.SchemaSettingsItem,{disabled:!0,eventKey:"nickname",title:"nickname"},f().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==(r=o.data)?void 0:r.email)))};function U(e,t,r,n,o,i,a){try{var u=e[i](a),c=u.value}catch(e){r(e);return}u.done?t(c):Promise.resolve(c).then(n,o)}var q=function(){var e=(0,l.useTranslation)().t,t=(0,n.useNavigateNoUpdate)(),r=(0,n.useAPIClient)();return f().createElement(n.SchemaSettingsItem,{title:"signOut",eventKey:"signOut",onClick:function(){var e;return(e=function(){var e,n;return function(e,t){var r,n,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(a,"next",{value:c(0)}),u(a,"throw",{value:c(1)}),u(a,"return",{value:c(2)}),"function"==typeof Symbol&&u(a,Symbol.iterator,{value:function(){return this}}),a;function c(u){return function(c){var l=[u,c];if(r)throw TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,n=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(o){switch(o.label){case 0:return[4,r.auth.signOut()];case 1:return(null==(n=o.sent().data)||null==(e=n.data)?void 0:e.redirect)?window.location.href=n.data.redirect:t("/signin?redirect=".concat(encodeURIComponent("")),{replace:!0}),[2]}})},function(){var t=this,r=arguments;return new Promise(function(n,o){var i=e.apply(t,r);function a(e){U(i,n,o,a,u,"next",e)}function u(e){U(i,n,o,a,u,"throw",e)}a(void 0)})})()}},e("Sign out"))};function M(e,t,r,n,o,i,a){try{var u=e[i](a),c=u.value}catch(e){r(e);return}u.done?t(c):Promise.resolve(c).then(n,o)}function $(e,t,r){return($=N()?Reflect.construct:function(e,t,r){var n=[null];n.push.apply(n,t);var o=new(Function.bind.apply(e,n));return r&&V(o,r.prototype),o}).apply(null,arguments)}function F(e){return(F=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function V(e,t){return(V=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function D(e){var t="function"==typeof Map?new Map:void 0;return(D=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,r)}function r(){return $(e,arguments,F(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),V(r,e)})(e)}function N(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(N=function(){return!!e})()}(0,n.lazy)(function(){return y.e("821").then(y.bind(y,404))},"UsersProvider").UsersProvider;var R=(0,n.lazy)(function(){return Promise.all([y.e("49"),y.e("70")]).then(y.bind(y,301))},"UsersManagement").UsersManagement,z=(0,n.lazy)(function(){return Promise.all([y.e("49"),y.e("772")]).then(y.bind(y,687))},"RoleUsersManager").RoleUsersManager,B=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function r(){var e,t;if(!(this instanceof r))throw TypeError("Cannot call a class as a function");return e=r,t=arguments,e=F(e),function(e,t){var r;if(t&&("object"==((r=t)&&"u">typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"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||[],F(this).constructor):e.apply(this,t))}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&V(r,e),t=[{key:"load",value:function(){var e;return(e=function(){return function(e,t){var r,n,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(a,"next",{value:c(0)}),u(a,"throw",{value:c(1)}),u(a,"return",{value:c(2)}),"function"==typeof Symbol&&u(a,Symbol.iterator,{value:function(){return this}}),a;function c(u){return function(c){var l=[u,c];if(r)throw TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,n=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(e){return this.app.pluginSettingsManager.add("users-permissions",{title:(0,o.tval)("Users & Permissions",{ns:"users"}),isPinned:!0,sort:200,icon:"TeamOutlined"}),this.app.pluginSettingsManager.add("users-permissions.users",{title:(0,o.tval)("Users"),icon:"UserOutlined",Component:R,aclSnippet:"pm.users"}),this.app.pm.get(a()).rolesManager.add("users",{title:(0,o.tval)("Users"),Component:z}),this.app.addUserCenterSettingsItem({name:"nickName",Component:T,sort:0}),this.app.addUserCenterSettingsItem({name:"divider1",type:"divider",sort:10}),this.app.addUserCenterSettingsItem({name:"editProfile",Component:I,sort:50}),this.app.addUserCenterSettingsItem({name:"changePassword",Component:x,sort:100}),this.app.addUserCenterSettingsItem({name:"divider_signOut",type:"divider",sort:900}),this.app.addUserCenterSettingsItem({name:"signOut",Component:q,sort:1e3}),[2]})},function(){var t=this,r=arguments;return new Promise(function(n,o){var i=e.apply(t,r);function a(e){M(i,n,o,a,u,"next",e)}function u(e){M(i,n,o,a,u,"throw",e)}a(void 0)})}).call(this)}}],function(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}(r.prototype,t),r}(D(n.Plugin))}(),P}()});
@@ -6,4 +6,4 @@
6
6
  * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
- export declare const generatePassword: (length?: number) => string;
9
+ export { generatePassword } from '../client-v2/shared/generatePassword';
@@ -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_client_v2=self.webpackChunk_nocobase_plugin_users_client_v2||[]).push([["143"],{466:function(e,t,r){r.r(t),r.d(t,{UserRolesSelectFieldModel:function(){return i}});var o=r(485);function n(e,t,r){return(n="u">typeof Reflect&&Reflect.get?Reflect.get:function(e,t,r){var o=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=u(e)););return e}(e,t);if(o){var n=Object.getOwnPropertyDescriptor(o,t);return n.get?n.get.call(r||e):n.value}})(e,t,r||e)}function u(e){return(u=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function c(e,t){return(c=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function l(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(l=function(){return!!e})()}var i=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function r(){var e,t;if(!(this instanceof r))throw TypeError("Cannot call a class as a function");return e=r,t=arguments,e=u(e),function(e,t){var r;if(t&&("object"==((r=t)&&"u">typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,l()?Reflect.construct(e,t||[],u(this).constructor):e.apply(this,t))}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&c(r,e),t=[{key:"ensureResourceRequestDefaults",value:function(){this.resource&&(this.resource.addRequestParameter("showAnonymous",!0),this.resource.addFilterGroup("__plugin_users__exclude_root_role__",{"name.$ne":"root"}))}},{key:"render",value:function(){return this.ensureResourceRequestDefaults(),n(u(r.prototype),"render",this).call(this)}}],function(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}(r.prototype,t),r}(o.RecordSelectFieldModel)}}]);
@@ -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_client_v2=self.webpackChunk_nocobase_plugin_users_client_v2||[]).push([["521"],{240:function(e,t,n){n.r(t),n.d(t,{default:function(){return g}});var r=n(375),o=n(694),a=n(625),u=n(59),l=n(155),i=n.n(l),c=n(712),s=n(488),f=n(158);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,a,u){try{var l=e[a](u),i=l.value}catch(e){n(e);return}l.done?t(i):Promise.resolve(i).then(r,o)}function p(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function u(e){m(a,r,o,u,l,"next",e)}function l(e){m(a,r,o,u,l,"throw",e)}u(void 0)})}}function y(e){return function(e){if(Array.isArray(e))return d(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||v(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 v(e,t){if(e){if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}}function h(e,t){var n,r,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},u=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),l=Object.defineProperty;return l(u,"next",{value:i(0)}),l(u,"throw",{value:i(1)}),l(u,"return",{value:i(2)}),"function"==typeof Symbol&&l(u,Symbol.iterator,{value:function(){return this}}),u;function i(l){return function(i){var c=[l,i];if(n)throw TypeError("Generator is already executing.");for(;u&&(u=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&c[0]?r.return:c[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;switch(r=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],r=0}finally{n=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}function b(e){return[{title:e("Username"),dataIndex:"username"},{title:e("Nickname"),dataIndex:"nickname"}]}function g(e){var t,n,d,m=(0,o.useFlowContext)(),g=(0,s.kj)(),w=null==(d=m.dataSourceManager)||null==(n=d.getDataSource("main"))?void 0:n.getCollection("users"),S=(0,l.useRef)(),k=function(e){if(Array.isArray(e))return e}(t=(0,l.useState)([]))||function(e){var t,n,r=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var o=[],a=!0,u=!1;try{for(r=r.call(e);!(a=(t=r.next()).done)&&(o.push(t.value),2!==o.length);a=!0);}catch(e){u=!0,n=e}finally{try{a||null==r.return||r.return()}finally{if(u)throw n}}return o}}(t)||v(t,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),A=k[0],z=k[1],E=e.role,x=(0,a.useMemoizedFn)(function(){return p(function(){var e;return h(this,function(t){switch(t.label){case 0:return[4,null==(e=S.current)?void 0:e.call(S)];case 1:return t.sent(),[2]}})})()}),_=(0,a.useMemoizedFn)(function(e){return p(function(){return h(this,function(t){switch(t.label){case 0:if(!E||!e.length)return[2];return[4,m.api.resource("roles.users",E.name).remove({values:e})];case 1:return t.sent(),z([]),m.message.success(g("Removed successfully")),[4,x()];case 2:return t.sent(),[2]}})})()}),I=(0,a.useMemoizedFn)(function(){E&&m.viewer.open({type:"drawer",width:"50%",closable:!0,styles:{body:{display:"flex",flexDirection:"column",overflow:"hidden"}},content:function(){return i().createElement(c._h,{title:g("Add users"),collection:w,rowKey:"id",columns:b(g),t:g,defaultPageSize:20,request:function(e){var t=e.filter,n=e.page,r=e.pageSize;return p(function(){var e,o,a,u,l,i,c,s;return h(this,function(d){switch(d.label){case 0:return[4,m.api.resource("users").listExcludeRole({page:n,pageSize:r,roleName:E.name,filter:t})];case 1:return c=d.sent(),[2,{data:null!=(e=(s=(0,f.G)(null==c?void 0:c.data)).data)?e:[],page:null==(a=s.meta)?void 0:a.page,pageSize:null==(u=s.meta)?void 0:u.pageSize,total:null!=(o=null==(l=s.meta)?void 0:l.total)?o:null==(i=s.meta)?void 0:i.count}]}})})()},onSubmit:function(e){return p(function(){return h(this,function(t){switch(t.label){case 0:return[4,m.api.resource("roles.users",E.name).add({values:e.map(function(e){return e.id})})];case 1:return t.sent(),m.message.success(g("Saved successfully")),[4,x()];case 2:return t.sent(),[2]}})})()}})}})}),C=(0,l.useMemo)(function(){return y(b(g)).concat([{title:g("Actions"),key:"actions",render:function(e,t){return i().createElement(c.AQ,{record:t,showIcons:!1,actions:[{key:"remove",label:g("Remove"),confirm:{title:g("Remove user"),description:g("Are you sure you want to remove it?")},onClick:function(e){return _([e.id])}}]})}}])},[_,g]),R=(0,a.useMemoizedFn)(function(e){return S.current=e.refreshAsync,i().createElement(i().Fragment,null,i().createElement(u.Popconfirm,{title:g("Remove"),description:g("Are you sure you want to remove these users?"),onConfirm:function(){return _(A)}},i().createElement(u.Button,{icon:i().createElement(r.DeleteOutlined,null),disabled:!A.length},g("Remove"))),i().createElement(u.Button,{type:"primary",icon:i().createElement(r.PlusOutlined,null),onClick:I},g("Add users")))});return E?i().createElement(c.g5,{fillHeight:!0,padding:!1,collection:w,rowKey:"id",columns:C,t:g,toolbar:R,toolbarLayout:"split",showRefresh:!1,defaultPageSize:20,request:function(e){var t=e.filter,n=e.page,r=e.pageSize;return p(function(){var e,o,a,u,l,i,c,s;return h(this,function(d){switch(d.label){case 0:return[4,m.api.resource("roles.users",E.name).list({page:n,pageSize:r,filter:t})];case 1:return c=d.sent(),[2,{data:null!=(e=(s=(0,f.G)(null==c?void 0:c.data)).data)?e:[],page:null==(a=s.meta)?void 0:a.page,pageSize:null==(u=s.meta)?void 0:u.pageSize,total:null!=(o=null==(l=s.meta)?void 0:l.total)?o:null==(i=s.meta)?void 0:i.count}]}})})()},tableProps:{rowSelection:{type:"checkbox",selectedRowKeys:A,onChange:function(e){z(y(e))}}}}):i().createElement(u.Typography.Text,{type:"secondary"},g("Select a role to configure permissions"))}}}]);
@@ -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_client_v2=self.webpackChunk_nocobase_plugin_users_client_v2||[]).push([["564"],{712:function(e,t,n){n.d(t,{Yi:function(){return s},AQ:function(){return z},_h:function(){return x},g5:function(){return T}});var r=n(625),o=n(59),l=n(155),a=n.n(l),i=n(485);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 u(e,t,n,r,o,l,a){try{var i=e[l](a),c=i.value}catch(e){n(e);return}i.done?t(c):Promise.resolve(c).then(r,o)}function f(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var l=[],a=!0,i=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(l.push(n.value),!t||l.length!==t);a=!0);}catch(e){i=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(i)throw r}}return l}}(e,t)||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.")}()}function s(e){var t,n=f(o.Form.useForm(),1)[0],c=null!=(t=e.form)?t:n,s=f((0,l.useState)(!1),2),p=s[0],y=s[1];(0,l.useEffect)(function(){var t;c.resetFields(),c.setFieldsValue(null!=(t=e.initialValues)?t:{})},[c,e.initialValues]);var b=(0,r.useMemoizedFn)(function(){var t;return(t=function(){var t,n;return function(e,t){var n,r,o,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(a,"next",{value:c(0)}),i(a,"throw",{value:c(1)}),i(a,"return",{value:c(2)}),"function"==typeof Symbol&&i(a,Symbol.iterator,{value:function(){return this}}),a;function c(i){return function(c){var u=[i,c];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,u[0]&&(l=0)),l;)try{if(n=1,r&&(o=2&u[0]?r.return:u[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,u[1])).done)return o;switch(r=0,o&&(u=[2&u[0],o.value]),u[0]){case 0:case 1:o=u;break;case 4:return l.label++,{value:u[1],done:!1};case 5:l.label++,r=u[1],u=[0];continue;case 7:u=l.ops.pop(),l.trys.pop();continue;default:if(!(o=(o=l.trys).length>0&&o[o.length-1])&&(6===u[0]||2===u[0])){l=0;continue}if(3===u[0]&&(!o||u[1]>o[0]&&u[1]<o[3])){l.label=u[1];break}if(6===u[0]&&l.label<o[1]){l.label=o[1],o=u;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(u);break}o[2]&&l.ops.pop(),l.trys.pop();continue}u=t.call(e,l)}catch(e){u=[6,e],r=0}finally{n=o=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}}(this,function(r){switch(r.label){case 0:return[4,c.validateFields()];case 1:t=r.sent(),y(!0),r.label=2;case 2:return r.trys.push([2,,5,6]),[4,e.onSubmit(t,c)];case 3:return r.sent(),[4,null==(n=e.onSubmitted)?void 0:n.call(e,t)];case 4:return r.sent(),[3,6];case 5:return y(!1),[7];case 6:return[2]}})},function(){var e=this,n=arguments;return new Promise(function(r,o){var l=t.apply(e,n);function a(e){u(l,r,o,a,i,"next",e)}function i(e){u(l,r,o,a,i,"throw",e)}a(void 0)})})()});return a().createElement(i.DrawerFormLayout,{title:e.title,onSubmit:b,submitting:p,submitText:e.submitText,cancelText:e.cancelText,footer:e.footer},a().createElement(o.Form,function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({form:c,layout:"vertical"},e.formProps),"function"==typeof e.children?e.children({form:c,submitting:p}):e.children))}var p=n(375),y=n(477),b=n(694);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 d(e,t,n,r,o,l,a){try{var i=e[l](a),c=i.value}catch(e){n(e);return}i.done?t(c):Promise.resolve(c).then(r,o)}function h(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var l=e.apply(t,n);function a(e){d(l,r,o,a,i,"next",e)}function i(e){d(l,r,o,a,i,"throw",e)}a(void 0)})}}function g(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}function v(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var l=[],a=!0,i=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(l.push(n.value),!t||l.length!==t);a=!0);}catch(e){i=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(i)throw r}}return l}}(e,t)||O(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 O(e,t){if(e){if("string"==typeof e)return m(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,t)}}function w(e,t){var n,r,o,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(a,"next",{value:c(0)}),i(a,"throw",{value:c(1)}),i(a,"return",{value:c(2)}),"function"==typeof Symbol&&i(a,Symbol.iterator,{value:function(){return this}}),a;function c(i){return function(c){var u=[i,c];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,u[0]&&(l=0)),l;)try{if(n=1,r&&(o=2&u[0]?r.return:u[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,u[1])).done)return o;switch(r=0,o&&(u=[2&u[0],o.value]),u[0]){case 0:case 1:o=u;break;case 4:return l.label++,{value:u[1],done:!1};case 5:l.label++,r=u[1],u=[0];continue;case 7:u=l.ops.pop(),l.trys.pop();continue;default:if(!(o=(o=l.trys).length>0&&o[o.length-1])&&(6===u[0]||2===u[0])){l=0;continue}if(3===u[0]&&(!o||u[1]>o[0]&&u[1]<o[3])){l.label=u[1];break}if(6===u[0]&&l.label<o[1]){l.label=o[1],o=u;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(u);break}o[2]&&l.ops.pop(),l.trys.pop();continue}u=t.call(e,l)}catch(e){u=[6,e],r=0}finally{n=o=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}}function j(){var e,t,n=(e=["\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n\n .ant-spin-nested-loading,\n .ant-spin-container,\n .ant-table,\n .ant-table-container {\n min-height: 0;\n flex: 1;\n display: flex;\n flex-direction: column;\n }\n\n .ant-table-content,\n .ant-table-body {\n flex: 1;\n min-height: 0;\n }\n\n .ant-table-thead > tr > th {\n white-space: nowrap;\n }\n\n .ant-pagination {\n flex: 0 0 auto;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return j=function(){return n},n}var S=function(e){return e};function x(e){var t,n,c,u,f,s,d,x,P,E=(0,b.useFlowView)(),k=o.theme.useToken().token,I=null!=(c=e.t)?c:S,A=v((0,l.useState)(),2),F=A[0],T=A[1],C=v((0,l.useState)(1),2),z=C[0],D=C[1],M=v((0,l.useState)(null!=(u=e.defaultPageSize)?u:i.DEFAULT_PAGE_SIZE),2),R=M[0],_=M[1],N=v((0,l.useState)([]),2),H=N[0],K=N[1],G=v((0,l.useState)([]),2),B=G[0],q=G[1],L=(0,l.useMemo)(function(){return(0,y.css)(j())},[]),U=(0,r.useMemoizedFn)(function(){return h(function(){return w(this,function(t){return[2,e.request({filter:F,page:z,pageSize:R})]})})()}),V=(0,r.useRequest)(U,{refreshDeps:[F,z,R]}),X=V.data,W=V.loading,$=V.refresh,Z=(0,l.useMemo)(function(){var e,t;return{current:null!=(e=null==X?void 0:X.page)?e:z,pageSize:null!=(t=null==X?void 0:X.pageSize)?t:R,total:null==X?void 0:X.total,onChange:function(e,t){D(e),_(t)}}},[null==X?void 0:X.page,null==X?void 0:X.pageSize,null==X?void 0:X.total,z,R]),Q=(0,r.useMemoizedFn)(function(e){D(1),T(e)}),Y=(0,r.useMemoizedFn)(function(){return h(function(){return w(this,function(e){switch(e.label){case 0:return[4,E.close()];case 1:return e.sent(),[2]}})})()}),J=(0,r.useMemoizedFn)(function(){return h(function(){return w(this,function(t){switch(t.label){case 0:return[4,e.onSubmit(B,H)];case 1:return t.sent(),[4,E.close({selectedRows:B,selectedRowKeys:H})];case 2:return t.sent(),[2]}})})()}),ee=null!=(f=e.tableProps)?f:{},et=ee.className,en=ee.scroll,er=function(e,t){if(null==e)return{};var n,r,o,l={};if("u">typeof Reflect&&Reflect.ownKeys){for(o=0,n=Reflect.ownKeys(Object(e));o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r]);return l}if(l=function(e,t){if(null==e)return{};var n,r,o={},l=Object.getOwnPropertyNames(e);for(r=0;r<l.length;r++)n=l[r],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n]);return o}(e,t),Object.getOwnPropertySymbols)for(o=0,n=Object.getOwnPropertySymbols(e);o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r]);return l}(ee,["className","scroll"]);return a().createElement("div",{style:{flex:1,height:"100%",minHeight:0,display:"flex",flexDirection:"column"}},E.Header?a().createElement(E.Header,{title:e.title}):null,a().createElement("div",{style:{flex:1,minHeight:0,display:"flex",flexDirection:"column",overflow:"hidden"}},a().createElement("div",{style:{flex:"0 0 auto",display:"flex",justifyContent:"space-between",alignItems:"center",gap:k.marginSM,flexWrap:"wrap",marginBottom:k.marginSM}},a().createElement(o.Space,{wrap:!0},e.collection?a().createElement(i.CollectionFilter,{collection:e.collection,t:I,filterableFieldNames:e.filterableFieldNames,noIgnore:e.noIgnore,onChange:Q}):null),a().createElement(o.Space,{wrap:!0},a().createElement(o.Button,{icon:a().createElement(p.ReloadOutlined,null),onClick:$},I("Refresh")))),a().createElement(i.Table,(t=g({},er),n=n={rowKey:e.rowKey,loading:W,dataSource:null!=(s=null==X?void 0:X.data)?s:[],columns:e.columns,pagination:Z,scroll:g({x:"max-content",y:"100%"},en),className:(0,y.cx)(L,et),rowSelection:{type:null!=(d=e.selectionType)?d:"checkbox",selectedRowKeys:H,onChange:function(e,t){K(function(e){if(Array.isArray(e))return m(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||O(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.")}()),q(t)}}},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}),t))),E.Footer?a().createElement(E.Footer,null,a().createElement(o.Space,null,a().createElement(o.Button,{onClick:Y},null!=(x=e.cancelText)?x:I("Cancel")),a().createElement(o.Button,{type:"primary",disabled:!1!==e.requireSelection&&!H.length,onClick:J},null!=(P=e.submitText)?P:I("Submit")))):null)}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}function E(e,t,n,r,o,l,a){try{var i=e[l](a),c=i.value}catch(e){n(e);return}i.done?t(c):Promise.resolve(c).then(r,o)}function k(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 I(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var l=[],a=!0,i=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(l.push(n.value),!t||l.length!==t);a=!0);}catch(e){i=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(i)throw r}}return l}}(e,t)||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.")}()}function A(){var e,t,n=(e=["\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n\n .ant-spin-nested-loading,\n .ant-spin-container,\n .ant-table,\n .ant-table-container {\n min-height: 0;\n flex: 1;\n display: flex;\n flex-direction: column;\n }\n\n .ant-table-content {\n flex: 1;\n min-height: 0;\n }\n\n .ant-table-body {\n flex: 1;\n min-height: 0;\n }\n\n .ant-table-thead > tr > th {\n white-space: nowrap;\n }\n\n .ant-pagination {\n flex: 0 0 auto;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return A=function(){return n},n}var F=function(e){return e};function T(e){var t,n,c,u,f,s,b=o.theme.useToken().token,m=null!=(c=e.t)?c:F,d=I((0,l.useState)(),2),h=d[0],g=d[1],v=I((0,l.useState)(1),2),O=v[0],w=v[1],j=I((0,l.useState)(null!=(u=e.defaultPageSize)?u:i.DEFAULT_PAGE_SIZE),2),S=j[0],x=j[1],P=(0,r.useMemoizedFn)(function(){var t;return(t=function(){return function(e,t){var n,r,o,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(a,"next",{value:c(0)}),i(a,"throw",{value:c(1)}),i(a,"return",{value:c(2)}),"function"==typeof Symbol&&i(a,Symbol.iterator,{value:function(){return this}}),a;function c(i){return function(c){var u=[i,c];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,u[0]&&(l=0)),l;)try{if(n=1,r&&(o=2&u[0]?r.return:u[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,u[1])).done)return o;switch(r=0,o&&(u=[2&u[0],o.value]),u[0]){case 0:case 1:o=u;break;case 4:return l.label++,{value:u[1],done:!1};case 5:l.label++,r=u[1],u=[0];continue;case 7:u=l.ops.pop(),l.trys.pop();continue;default:if(!(o=(o=l.trys).length>0&&o[o.length-1])&&(6===u[0]||2===u[0])){l=0;continue}if(3===u[0]&&(!o||u[1]>o[0]&&u[1]<o[3])){l.label=u[1];break}if(6===u[0]&&l.label<o[1]){l.label=o[1],o=u;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(u);break}o[2]&&l.ops.pop(),l.trys.pop();continue}u=t.call(e,l)}catch(e){u=[6,e],r=0}finally{n=o=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}}(this,function(t){return[2,e.request({filter:h,page:O,pageSize:S})]})},function(){var e=this,n=arguments;return new Promise(function(r,o){var l=t.apply(e,n);function a(e){E(l,r,o,a,i,"next",e)}function i(e){E(l,r,o,a,i,"throw",e)}a(void 0)})})()}),T=(0,r.useRequest)(P,{refreshDeps:[h,O,S]}),C=T.data,z=T.loading,D=T.refresh,M=T.refreshAsync,R=(0,l.useMemo)(function(){return(0,y.css)(A())},[]),_=(0,l.useMemo)(function(){var e,t;return{current:null!=(e=null==C?void 0:C.page)?e:O,pageSize:null!=(t=null==C?void 0:C.pageSize)?t:S,total:null==C?void 0:C.total,onChange:function(e,t){w(e),x(t)}}},[null==C?void 0:C.page,null==C?void 0:C.pageSize,null==C?void 0:C.total,O,S]),N=(0,r.useMemoizedFn)(function(e){w(1),g(e)}),H=(0,l.useMemo)(function(){return{loading:z,refresh:D,refreshAsync:M}},[z,D,M]),K="function"==typeof e.toolbar?e.toolbar(H):e.toolbar,G=null!=(f=e.tableProps)?f:{},B=G.className,q=G.scroll,L=function(e,t){if(null==e)return{};var n,r,o,l={};if("u">typeof Reflect&&Reflect.ownKeys){for(o=0,n=Reflect.ownKeys(Object(e));o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r]);return l}if(l=function(e,t){if(null==e)return{};var n,r,o={},l=Object.getOwnPropertyNames(e);for(r=0;r<l.length;r++)n=l[r],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n]);return o}(e,t),Object.getOwnPropertySymbols)for(o=0,n=Object.getOwnPropertySymbols(e);o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r]);return l}(G,["className","scroll"]),U=e.collection?a().createElement(i.CollectionFilter,{collection:e.collection,t:m,filterableFieldNames:e.filterableFieldNames,noIgnore:e.noIgnore,onChange:N}):null,V=!1===e.showRefresh?null:a().createElement(o.Button,{icon:a().createElement(p.ReloadOutlined,null),onClick:D},m("Refresh"));return a().createElement("div",{style:k({},!1===e.padding?void 0:{padding:b.paddingLG},e.fillHeight?{height:"100%",minHeight:0,display:"flex",flexDirection:"column",overflow:"hidden"}:void 0)},"split"===e.toolbarLayout?a().createElement("div",{style:{flex:e.fillHeight?"0 0 auto":void 0,display:"flex",justifyContent:"space-between",alignItems:"center",gap:b.marginSM,flexWrap:"wrap",marginBottom:b.marginSM}},a().createElement(o.Space,{wrap:!0},U),a().createElement(o.Space,{wrap:!0},K,V)):a().createElement(o.Space,{style:{flex:e.fillHeight?"0 0 auto":void 0,marginBottom:b.marginSM},wrap:!0},K,V,U),a().createElement(i.Table,(t=k({},L),n=n={rowKey:e.rowKey,loading:z,dataSource:null!=(s=null==C?void 0:C.data)?s:[],columns:e.columns,pagination:_,scroll:e.fillHeight?k({x:"max-content",y:"100%"},q):q,className:(0,y.cx)(e.fillHeight&&R,B)},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}),t)))}function C(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 z(e){var t=o.theme.useToken().token,n=e.actions.filter(function(e){return!e.hidden}),r=void 0===e.split?"|":e.split;return a().createElement("span",{style:{display:"inline-flex",alignItems:"center",flexWrap:"wrap",columnGap:t.marginXXS,rowGap:t.marginXXS}},n.map(function(t,n){var l,i,c,u=a().createElement(o.Button,(l=C({},t.buttonProps),i=i={type:"link",size:"small",danger:t.danger,disabled:t.disabled,icon:!1===e.showIcons?void 0:t.icon,onClick:function(){var n;return null==(n=t.onClick)?void 0:n.call(t,e.record)},style:C({paddingInline:0,height:"auto"},null==(c=t.buttonProps)?void 0:c.style)},Object.getOwnPropertyDescriptors?Object.defineProperties(l,Object.getOwnPropertyDescriptors(i)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(i)).forEach(function(e){Object.defineProperty(l,e,Object.getOwnPropertyDescriptor(i,e))}),l),t.label),f=t.confirm?a().createElement(o.Popconfirm,{key:t.key,title:t.confirm.title,description:t.confirm.description,okText:t.confirm.okText,cancelText:t.confirm.cancelText,onConfirm:function(){var n;return null==(n=t.onClick)?void 0:n.call(t,e.record)}},a().cloneElement(u,{onClick:void 0})):u;return a().createElement(a().Fragment,{key:t.key},n>0&&r?a().createElement("span",null,r):null,f)}))}},158:function(e,t,n){n.d(t,{G:function(){return r}});function r(e){return e&&(void 0===e?"undefined":e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e)=="object"?{data:Array.isArray(e.data)?e.data:[],meta:e.meta}:{}}}}]);
@@ -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_client_v2=self.webpackChunk_nocobase_plugin_users_client_v2||[]).push([["569"],{552:function(e,t,r){r.r(t),r.d(t,{UserPasswordFieldModel:function(){return y}});var n=r(485),o=r(155),a=r.n(o),u=r(667);function i(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 l(e,t,r,n,o,a,u){try{var i=e[a](u),l=i.value}catch(e){r(e);return}i.done?t(l):Promise.resolve(l).then(n,o)}function c(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function s(e){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function f(e,t){return(f=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function p(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(p=function(){return!!e})()}var y=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function r(){var e,t,n;if(!(this instanceof r))throw TypeError("Cannot call a class as a function");return t=r,n=arguments,t=s(t),c(e=function(e,t){var r;if(t&&("object"==((r=t)&&"u">typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,p()?Reflect.construct(t,n||[],s(this).constructor):t.apply(this,n)),"validatePassword",function(t,r){var n;return(n=function(){var t,n,o,a,i,l,c,s,f,p,y,b,v,d,h;return function(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},u=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(u,"next",{value:l(0)}),i(u,"throw",{value:l(1)}),i(u,"return",{value:l(2)}),"function"==typeof Symbol&&i(u,Symbol.iterator,{value:function(){return this}}),u;function l(i){return function(l){var c=[i,l];if(r)throw TypeError("Generator is already executing.");for(;u&&(u=0,c[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,n=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(g){switch(g.label){case 0:if("string"!=typeof r||!r)return[2];c=null!=(t=null==(l=null==(a=e.context.app)||null==(o=a.pm)||null==(n=o.get)?void 0:n.call(o,u.X))||null==(i=l.getPasswordValidators)?void 0:i.call(l))?t:[],s=e.getUsernameForValidation(),f=!0,p=!1,y=void 0,g.label=1;case 1:g.trys.push([1,6,7,8]),b=c[Symbol.iterator](),g.label=2;case 2:if(f=(v=b.next()).done)return[3,5];return[4,(0,v.value)(r,{username:s})];case 3:if(d=g.sent())throw Error(d);g.label=4;case 4:return f=!0,[3,2];case 5:return[3,8];case 6:return h=g.sent(),p=!0,y=h,[3,8];case 7:try{f||null==b.return||b.return()}finally{if(p)throw y}return[7];case 8:return[2]}})},function(){var e=this,t=arguments;return new Promise(function(r,o){var a=n.apply(e,t);function u(e){l(a,r,o,u,i,"next",e)}function i(e){l(a,r,o,u,i,"throw",e)}u(void 0)})})()}),e}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&f(r,e),t=[{key:"getUsernameForValidation",value:function(){var e,t,r=null==(t=this.context.form)||null==(e=t.getFieldValue)?void 0:e.call(t,"username");return"string"==typeof r&&r?r:void 0}},{key:"ensurePasswordValidationRule",value:function(){var e,t,r=this.parent;if(r){var n=Array.isArray(null==(e=r.getProps())?void 0:e.rules)?null==(t=r.getProps())?void 0:t.rules:[];n.some(function(e){return e.__pluginUsersPasswordPolicy})||r.setProps({rules:((function(e){if(Array.isArray(e))return i(e)})(n)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(n)||function(e){if(e){if("string"==typeof e)return i(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return i(e,void 0)}}(n)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).concat([{validator:this.validatePassword,__pluginUsersPasswordPolicy:!0}])})}}},{key:"render",value:function(){var e,t,r;return this.ensurePasswordValidationRule(),a().createElement(n.PasswordInput,(t=function(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){c(e,t,r[t])})}return e}({},this.props),r=r={checkStrength:null!=(e=this.props.checkStrength)&&e},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}),t))}}],function(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}(r.prototype,t),r}(n.PasswordFieldModel)}}]);
@@ -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_client_v2=self.webpackChunk_nocobase_plugin_users_client_v2||[]).push([["587"],{638:function(e,t,r){r.r(t),r.d(t,{CurrentUserSummaryItemModel:function(){return l}});var n=r(485);function o(e,t,r,n,o,u,i){try{var a=e[u](i),c=a.value}catch(e){r(e);return}a.done?t(c):Promise.resolve(c).then(n,o)}function u(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e){return(i=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function c(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(c=function(){return!!e})()}var l=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function r(){var e,t,n;if(!(this instanceof r))throw TypeError("Cannot call a class as a function");return t=r,n=arguments,t=i(t),u(e=function(e,t){var r;if(t&&("object"==((r=t)&&"u">typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,c()?Reflect.construct(t,n||[],i(this).constructor):t.apply(this,n)),"section","profile"),u(e,"sort",0),e}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&a(r,e),t=[{key:"prepare",value:function(){var e;return(e=function(){var e;return function(e,t){var r,n,o,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),a=Object.defineProperty;return a(i,"next",{value:c(0)}),a(i,"throw",{value:c(1)}),a(i,"return",{value:c(2)}),"function"==typeof Symbol&&a(i,Symbol.iterator,{value:function(){return this}}),i;function c(a){return function(c){var l=[a,c];if(r)throw TypeError("Generator is already executing.");for(;i&&(i=0,l[0]&&(u=0)),u;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return u.label++,{value:l[1],done:!1};case 5:u.label++,n=l[1],l=[0];continue;case 7:l=u.ops.pop(),u.trys.pop();continue;default:if(!(o=(o=u.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){u=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){u.label=l[1];break}if(6===l[0]&&u.label<o[1]){u.label=o[1],o=l;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(l);break}o[2]&&u.ops.pop(),u.trys.pop();continue}l=t.call(e,u)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(t){return e=this.context.user||{},this.label=e.nickname||e.username||e.email||"",this.value=void 0,this.description=void 0,this.ready=!!this.label,[2]})},function(){var t=this,r=arguments;return new Promise(function(n,u){var i=e.apply(t,r);function a(e){o(i,n,u,a,c,"next",e)}function c(e){o(i,n,u,a,c,"throw",e)}a(void 0)})}).call(this)}}],function(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}(r.prototype,t),r}(n.UserCenterTextItemModel);u(l,"itemId","current-user-summary"),t.default=l}}]);