@acorex-platform/module-security-management-client 0.0.58 → 0.0.60

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 (61) hide show
  1. package/fesm2022/{acorex-platform-module-security-management-client-acorex-platform-module-security-management-client-BSGZRsGz.mjs → acorex-platform-module-security-management-client-acorex-platform-module-security-management-client-B61j_cJF.mjs} +212 -13
  2. package/fesm2022/acorex-platform-module-security-management-client-acorex-platform-module-security-management-client-B61j_cJF.mjs.map +1 -0
  3. package/fesm2022/acorex-platform-module-security-management-client-approve-join-request.command-BSvK59LV.mjs +322 -0
  4. package/fesm2022/acorex-platform-module-security-management-client-approve-join-request.command-BSvK59LV.mjs.map +1 -0
  5. package/fesm2022/acorex-platform-module-security-management-client-contracts-entities-device-sessions.mjs +21 -2
  6. package/fesm2022/acorex-platform-module-security-management-client-contracts-entities-device-sessions.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-module-security-management-client-contracts-entities-users.mjs +173 -14
  8. package/fesm2022/acorex-platform-module-security-management-client-contracts-entities-users.mjs.map +1 -1
  9. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-acorex-platform-module-security-management-client-contracts-entity-catalog-B4oiF8FO.mjs → acorex-platform-module-security-management-client-contracts-entity-catalog-acorex-platform-module-security-management-client-contracts-entity-catalog-JP3zTrun.mjs} +10 -10
  10. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-acorex-platform-module-security-management-client-contracts-entity-catalog-B4oiF8FO.mjs.map → acorex-platform-module-security-management-client-contracts-entity-catalog-acorex-platform-module-security-management-client-contracts-entity-catalog-JP3zTrun.mjs.map} +1 -1
  11. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-device-sessions.entity-CU-5X-qu.mjs → acorex-platform-module-security-management-client-contracts-entity-catalog-device-sessions.entity-lwQtCJoy.mjs} +23 -4
  12. package/fesm2022/acorex-platform-module-security-management-client-contracts-entity-catalog-device-sessions.entity-lwQtCJoy.mjs.map +1 -0
  13. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-identity-provider.entity-Bld1buTd.mjs → acorex-platform-module-security-management-client-contracts-entity-catalog-identity-provider.entity-DZfizo-n.mjs} +2 -2
  14. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-identity-provider.entity-Bld1buTd.mjs.map → acorex-platform-module-security-management-client-contracts-entity-catalog-identity-provider.entity-DZfizo-n.mjs.map} +1 -1
  15. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-policy.entity-DZVzHzVM.mjs → acorex-platform-module-security-management-client-contracts-entity-catalog-policy.entity-Dkl_6Iio.mjs} +2 -2
  16. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-policy.entity-DZVzHzVM.mjs.map → acorex-platform-module-security-management-client-contracts-entity-catalog-policy.entity-Dkl_6Iio.mjs.map} +1 -1
  17. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-profile.entity-BCy5fNc9.mjs → acorex-platform-module-security-management-client-contracts-entity-catalog-profile.entity-Ddbd-rAG.mjs} +2 -2
  18. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-profile.entity-BCy5fNc9.mjs.map → acorex-platform-module-security-management-client-contracts-entity-catalog-profile.entity-Ddbd-rAG.mjs.map} +1 -1
  19. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-role-permission.entity-DcvYjfZm.mjs → acorex-platform-module-security-management-client-contracts-entity-catalog-role-permission.entity-WCgik8MV.mjs} +2 -2
  20. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-role-permission.entity-DcvYjfZm.mjs.map → acorex-platform-module-security-management-client-contracts-entity-catalog-role-permission.entity-WCgik8MV.mjs.map} +1 -1
  21. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-roles.entity-lNKDIDry.mjs → acorex-platform-module-security-management-client-contracts-entity-catalog-roles.entity-CRZftClq.mjs} +2 -2
  22. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-roles.entity-lNKDIDry.mjs.map → acorex-platform-module-security-management-client-contracts-entity-catalog-roles.entity-CRZftClq.mjs.map} +1 -1
  23. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-user-role.entity-DKII6o5N.mjs → acorex-platform-module-security-management-client-contracts-entity-catalog-user-role.entity-9QpoRCOF.mjs} +2 -2
  24. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-user-role.entity-DKII6o5N.mjs.map → acorex-platform-module-security-management-client-contracts-entity-catalog-user-role.entity-9QpoRCOF.mjs.map} +1 -1
  25. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-user-two-factor.entity-ge21b3mE.mjs → acorex-platform-module-security-management-client-contracts-entity-catalog-user-two-factor.entity-C34VzcYk.mjs} +2 -2
  26. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-user-two-factor.entity-ge21b3mE.mjs.map → acorex-platform-module-security-management-client-contracts-entity-catalog-user-two-factor.entity-C34VzcYk.mjs.map} +1 -1
  27. package/fesm2022/{acorex-platform-module-security-management-client-contracts-entity-catalog-users.entity-CJ7x5rjC.mjs → acorex-platform-module-security-management-client-contracts-entity-catalog-users.entity-DuC5cfIb.mjs} +175 -16
  28. package/fesm2022/acorex-platform-module-security-management-client-contracts-entity-catalog-users.entity-DuC5cfIb.mjs.map +1 -0
  29. package/fesm2022/acorex-platform-module-security-management-client-contracts-entity-catalog.mjs +1 -1
  30. package/fesm2022/acorex-platform-module-security-management-client-contracts.mjs +342 -4
  31. package/fesm2022/acorex-platform-module-security-management-client-contracts.mjs.map +1 -1
  32. package/fesm2022/acorex-platform-module-security-management-client-create-user-in-tenant.command-BFnZRmh9.mjs +376 -0
  33. package/fesm2022/acorex-platform-module-security-management-client-create-user-in-tenant.command-BFnZRmh9.mjs.map +1 -0
  34. package/fesm2022/{acorex-platform-module-security-management-client-index-DKk9lEIl.mjs → acorex-platform-module-security-management-client-index-B6qo6qLT.mjs} +5 -156
  35. package/fesm2022/acorex-platform-module-security-management-client-index-B6qo6qLT.mjs.map +1 -0
  36. package/fesm2022/acorex-platform-module-security-management-client-invite-user.command-ClQ6WxxN.mjs +370 -0
  37. package/fesm2022/acorex-platform-module-security-management-client-invite-user.command-ClQ6WxxN.mjs.map +1 -0
  38. package/fesm2022/acorex-platform-module-security-management-client-reject-join-request.command-B3kiok6b.mjs +76 -0
  39. package/fesm2022/acorex-platform-module-security-management-client-reject-join-request.command-B3kiok6b.mjs.map +1 -0
  40. package/fesm2022/{acorex-platform-module-security-management-client-reset-two-factor.command-psTDKoNf.mjs → acorex-platform-module-security-management-client-reset-two-factor.command-C27mUZ1-.mjs} +7 -2
  41. package/fesm2022/acorex-platform-module-security-management-client-reset-two-factor.command-C27mUZ1-.mjs.map +1 -0
  42. package/fesm2022/{acorex-platform-module-security-management-client-send-password-reset-email.command-CoQgWdya.mjs → acorex-platform-module-security-management-client-send-password-reset-email.command-DFxm2T_x.mjs} +7 -2
  43. package/fesm2022/acorex-platform-module-security-management-client-send-password-reset-email.command-DFxm2T_x.mjs.map +1 -0
  44. package/fesm2022/acorex-platform-module-security-management-client-settings.provider-CwDiU-C8.mjs +54 -0
  45. package/fesm2022/acorex-platform-module-security-management-client-settings.provider-CwDiU-C8.mjs.map +1 -0
  46. package/fesm2022/acorex-platform-module-security-management-client-user-role-grant.service-6U17jzjq.mjs +231 -0
  47. package/fesm2022/acorex-platform-module-security-management-client-user-role-grant.service-6U17jzjq.mjs.map +1 -0
  48. package/fesm2022/acorex-platform-module-security-management-client.mjs +1 -1
  49. package/i18n/en-AU/security-management.json +91 -4
  50. package/i18n/en-US/security-management.json +91 -4
  51. package/i18n/fa-IR/security-management.json +91 -4
  52. package/package.json +1 -1
  53. package/types/acorex-platform-module-security-management-client-contracts.d.ts +288 -8
  54. package/fesm2022/acorex-platform-module-security-management-client-acorex-platform-module-security-management-client-BSGZRsGz.mjs.map +0 -1
  55. package/fesm2022/acorex-platform-module-security-management-client-contracts-entity-catalog-device-sessions.entity-CU-5X-qu.mjs.map +0 -1
  56. package/fesm2022/acorex-platform-module-security-management-client-contracts-entity-catalog-users.entity-CJ7x5rjC.mjs.map +0 -1
  57. package/fesm2022/acorex-platform-module-security-management-client-index-DKk9lEIl.mjs.map +0 -1
  58. package/fesm2022/acorex-platform-module-security-management-client-invite-user.command-kFXjLdxy.mjs +0 -143
  59. package/fesm2022/acorex-platform-module-security-management-client-invite-user.command-kFXjLdxy.mjs.map +0 -1
  60. package/fesm2022/acorex-platform-module-security-management-client-reset-two-factor.command-psTDKoNf.mjs.map +0 -1
  61. package/fesm2022/acorex-platform-module-security-management-client-send-password-reset-email.command-CoQgWdya.mjs.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import { AXPSystemActionType, AXPWidgetsCatalog, AXPWidgetsList } from '@acorex-platform/framework-shared/core';
2
- import { createAllQueryView, createQueryView, AXPEntityCommandScope, entityMasterCrudActions, entityMasterRecordActions } from '@acorex-platform/framework-shared/entity';
2
+ import { AXPEntityCommandScope, createAllQueryView, createQueryView, entityMasterCrudActions, entityMasterRecordActions } from '@acorex-platform/framework-shared/entity';
3
3
 
4
4
  /** Status provider key for `accessState` on SecurityManagement.User (transitions define editable paths in the status UI). */
5
5
  const AXM_USER_ACCESS_STATE_DEFINITION_KEY = 'security-management.access-state.user';
@@ -12,13 +12,25 @@ const AXMSecurityManagementServerCommands = {
12
12
  SendPasswordResetEmail: 'SecurityManagement:Server:SendPasswordResetEmail',
13
13
  CompletePasswordReset: 'SecurityManagement:Server:CompletePasswordReset',
14
14
  ChangeOwnPassword: 'SecurityManagement:Server:ChangeOwnPassword',
15
+ GetOwnPasswordStatus: 'SecurityManagement:Server:GetOwnPasswordStatus',
15
16
  InviteUser: 'SecurityManagement:Server:InviteUser',
17
+ /** Tenant-subscribed applications for TM invite picker (ADR-TEN-001 D-05). */
18
+ ListTenantEntitledApplications: 'SecurityManagement:Server:ListTenantEntitledApplications',
19
+ /** Per-app Role overlays for TM invite repeater (bypasses app-catalog list isolation). */
20
+ ListInviteAssignableRoles: 'SecurityManagement:Server:ListInviteAssignableRoles',
16
21
  ResendInvitation: 'SecurityManagement:Server:ResendInvitation',
17
22
  CancelInvitation: 'SecurityManagement:Server:CancelInvitation',
18
23
  AcceptInvitation: 'SecurityManagement:Server:AcceptInvitation',
19
24
  ListMyPendingInvitations: 'SecurityManagement:Server:ListMyPendingInvitations',
20
25
  DeclineInvitation: 'SecurityManagement:Server:DeclineInvitation',
21
26
  AcceptMyInvitation: 'SecurityManagement:Server:AcceptMyInvitation',
27
+ LookupTenantByUniqueName: 'SecurityManagement:Server:LookupTenantByUniqueName',
28
+ RequestTenantMembership: 'SecurityManagement:Server:RequestTenantMembership',
29
+ ListMyJoinRequests: 'SecurityManagement:Server:ListMyJoinRequests',
30
+ CancelMyJoinRequest: 'SecurityManagement:Server:CancelMyJoinRequest',
31
+ ApproveJoinRequest: 'SecurityManagement:Server:ApproveJoinRequest',
32
+ RejectJoinRequest: 'SecurityManagement:Server:RejectJoinRequest',
33
+ CreateUserInTenant: 'SecurityManagement:Server:CreateUserInTenant',
22
34
  StartTwoFactorEnrollment: 'SecurityManagement:Server:StartTwoFactorEnrollment',
23
35
  ConfirmTwoFactorEnrollment: 'SecurityManagement:Server:ConfirmTwoFactorEnrollment',
24
36
  DisableTwoFactor: 'SecurityManagement:Server:DisableTwoFactor',
@@ -39,16 +51,29 @@ const AXM_CHANGE_OWN_PASSWORD_ERROR_CODES = {
39
51
  const AXM_USER_SEND_PASSWORD_RESET_COMMAND = 'SecurityManagement:User:SendPasswordResetEmail';
40
52
  /** Client/UI action key (confirm dialog → server admin reset 2FA). */
41
53
  const AXM_USER_RESET_TWO_FACTOR_COMMAND = 'SecurityManagement:User:ResetTwoFactor';
42
- /** Client/UI action keys for invite flows. */
54
+ /** Client/UI action keys for invite / create-in-tenant flows. */
43
55
  const AXM_USER_INVITE_COMMAND = 'SecurityManagement:User:Invite';
44
56
  const AXM_USER_RESEND_INVITATION_COMMAND = 'SecurityManagement:User:ResendInvitation';
45
57
  const AXM_USER_CANCEL_INVITATION_COMMAND = 'SecurityManagement:User:CancelInvitation';
58
+ const AXM_USER_APPROVE_JOIN_REQUEST_COMMAND = 'SecurityManagement:User:ApproveJoinRequest';
59
+ const AXM_USER_REJECT_JOIN_REQUEST_COMMAND = 'SecurityManagement:User:RejectJoinRequest';
60
+ const AXM_USER_CREATE_IN_TENANT_COMMAND = 'SecurityManagement:User:CreateInTenant';
46
61
  /** Stable codes for public invitation accept (client maps invalid/expired to the page, not a toast). */
47
62
  const AXM_ACCEPT_INVITATION_ERROR_CODES = {
48
63
  Invalid: 'ACCEPT_INVITATION_INVALID',
49
64
  Expired: 'ACCEPT_INVITATION_EXPIRED',
50
65
  PasswordRequired: 'ACCEPT_INVITATION_PASSWORD_REQUIRED',
51
66
  };
67
+ /** Stable codes for waiting-room join-by-unique-name (client maps to i18n). */
68
+ const AXM_JOIN_REQUEST_ERROR_CODES = {
69
+ NotSignedIn: 'JOIN_REQUEST_NOT_SIGNED_IN',
70
+ InvalidInput: 'JOIN_REQUEST_INVALID_INPUT',
71
+ TenantNotFound: 'JOIN_REQUEST_TENANT_NOT_FOUND',
72
+ AlreadyMember: 'JOIN_REQUEST_ALREADY_MEMBER',
73
+ InvitePending: 'JOIN_REQUEST_INVITE_PENDING',
74
+ RequestNotFound: 'JOIN_REQUEST_NOT_FOUND',
75
+ NotPending: 'JOIN_REQUEST_NOT_PENDING',
76
+ };
52
77
  /** Stable codes for two-factor self-service and login challenge (client maps to i18n). */
53
78
  const AXM_TWO_FACTOR_ERROR_CODES = {
54
79
  NotSignedIn: 'TWO_FACTOR_NOT_SIGNED_IN',
@@ -67,6 +92,109 @@ const AXM_TWO_FACTOR_ERROR_CODES = {
67
92
  };
68
93
  //#endregion
69
94
 
95
+ //#region ----- User provisioning settings -----
96
+ /** Platform settings owned by Security Management. */
97
+ const AXMSecurityManagementSettings = {
98
+ /**
99
+ * Which Users-list add actions are available.
100
+ * `create` and `invite` are primary. `both` shows them as secondary actions.
101
+ */
102
+ UserProvisioningMode: 'SecurityManagement:Setting:User.ProvisioningMode',
103
+ };
104
+ const AXMUserProvisioningMode = {
105
+ Create: 'create',
106
+ Invite: 'invite',
107
+ Both: 'both',
108
+ };
109
+ /** Used when the platform setting has not been saved yet. */
110
+ const AXM_USER_PROVISIONING_MODE_DEFAULT = AXMUserProvisioningMode.Both;
111
+ //#endregion
112
+
113
+ //#region ----- Imports -----
114
+ //#endregion
115
+ //#region ----- List actions -----
116
+ const PROVISIONING_MODE_KEY = AXMSecurityManagementSettings.UserProvisioningMode;
117
+ /**
118
+ * Hides the action unless the platform provisioning setting matches `mode`.
119
+ * A missing value uses {@link AXM_USER_PROVISIONING_MODE_DEFAULT}.
120
+ * Select widgets may persist either the scalar or `{ value }`.
121
+ */
122
+ function hiddenUnlessProvisioningMode(mode) {
123
+ return `{{ (((await settings.get('${PROVISIONING_MODE_KEY}'))?.value ?? (await settings.get('${PROVISIONING_MODE_KEY}'))) || '${AXM_USER_PROVISIONING_MODE_DEFAULT}') !== '${mode}' }}`;
124
+ }
125
+ const USER_ADD_COMMANDS = new Set([AXM_USER_INVITE_COMMAND, AXM_USER_CREATE_IN_TENANT_COMMAND]);
126
+ function commandNameOf(action) {
127
+ return typeof action.command === 'string' ? action.command : action.command?.name;
128
+ }
129
+ /** Type-level Invite / Create actions, including the legacy Create dropdown. */
130
+ function isUserProvisioningListAction(action) {
131
+ if (action.scope !== AXPEntityCommandScope.TypeLevel) {
132
+ return false;
133
+ }
134
+ if (USER_ADD_COMMANDS.has(commandNameOf(action) ?? '')) {
135
+ return true;
136
+ }
137
+ return (action.items ?? []).some((child) => USER_ADD_COMMANDS.has(commandNameOf(child) ?? ''));
138
+ }
139
+ function provisioningAction(input) {
140
+ return {
141
+ name: input.name,
142
+ title: input.title,
143
+ icon: input.icon,
144
+ command: { name: input.command },
145
+ priority: input.priority,
146
+ type: AXPSystemActionType.Create,
147
+ scope: AXPEntityCommandScope.TypeLevel,
148
+ order: input.order,
149
+ hidden: hiddenUnlessProvisioningMode(input.mode),
150
+ };
151
+ }
152
+ /**
153
+ * Users list add actions driven by the platform provisioning setting.
154
+ * Create-only and invite-only stay primary. Both are secondary menu items.
155
+ */
156
+ function userProvisioningListActions() {
157
+ return [
158
+ provisioningAction({
159
+ name: 'provision-create',
160
+ title: '@general:actions.create.title',
161
+ icon: 'fa-light fa-user-plus',
162
+ command: AXM_USER_CREATE_IN_TENANT_COMMAND,
163
+ priority: 'primary',
164
+ mode: AXMUserProvisioningMode.Create,
165
+ order: 1,
166
+ }),
167
+ provisioningAction({
168
+ name: 'provision-invite',
169
+ title: '@security-management:users.entities.user.actions.invite.title',
170
+ icon: 'fa-light fa-envelope',
171
+ command: AXM_USER_INVITE_COMMAND,
172
+ priority: 'primary',
173
+ mode: AXMUserProvisioningMode.Invite,
174
+ order: 1,
175
+ }),
176
+ provisioningAction({
177
+ name: 'provision-invite-secondary',
178
+ title: '@security-management:users.entities.user.actions.invite.title',
179
+ icon: 'fa-light fa-envelope',
180
+ command: AXM_USER_INVITE_COMMAND,
181
+ priority: 'secondary',
182
+ mode: AXMUserProvisioningMode.Both,
183
+ order: 1,
184
+ }),
185
+ provisioningAction({
186
+ name: 'provision-create-secondary',
187
+ title: '@security-management:users.entities.user.actions.create-in-tenant.title',
188
+ icon: 'fa-light fa-user-plus',
189
+ command: AXM_USER_CREATE_IN_TENANT_COMMAND,
190
+ priority: 'secondary',
191
+ mode: AXMUserProvisioningMode.Both,
192
+ order: 2,
193
+ }),
194
+ ];
195
+ }
196
+ //#endregion
197
+
70
198
  const USER_ROLES_PAGE_COMPONENT_KEY = 'user-roles-page';
71
199
 
72
200
  const config = {
@@ -380,7 +508,7 @@ async function usersFactory() {
380
508
  {
381
509
  /**
382
510
  * Hidden view filter marker only; rewritten server-side to TenantUser
383
- * invitation.source=invite. Never persisted on User documents.
511
+ * invitation.source invite or join-request. Never persisted on User documents.
384
512
  */
385
513
  name: 'membershipInviteScope',
386
514
  title: '@security-management:users.entities.user.fields.membership-invite-scope.title',
@@ -396,6 +524,25 @@ async function usersFactory() {
396
524
  },
397
525
  },
398
526
  },
527
+ {
528
+ /**
529
+ * Display-only. Hydrated from session-tenant TenantUser.invitation.source.
530
+ * Used to show Approve/Reject only for pending join-requests.
531
+ */
532
+ name: 'membershipInvitationSource',
533
+ title: '@security-management:users.entities.user.fields.membership-invitation-source.title',
534
+ groupId: 'user-account-access',
535
+ schema: {
536
+ dataType: 'string',
537
+ readonly: true,
538
+ visible: false,
539
+ nullable: true,
540
+ interface: {
541
+ type: AXPWidgetsCatalog.text,
542
+ options: {},
543
+ },
544
+ },
545
+ },
399
546
  {
400
547
  name: 'homeTenantId',
401
548
  title: '@security-management:users.entities.user.fields.home-tenant.title',
@@ -646,6 +793,7 @@ async function usersFactory() {
646
793
  priority: 'secondary',
647
794
  type: 'view',
648
795
  scope: AXPEntityCommandScope.Individual,
796
+ hidden: '{{ context.eval("membershipStatusId") !== "pending" || context.eval("membershipInvitationSource") !== "invite" }}',
649
797
  },
650
798
  {
651
799
  title: '@security-management:users.entities.user.actions.cancel-invitation.title',
@@ -654,23 +802,34 @@ async function usersFactory() {
654
802
  priority: 'secondary',
655
803
  type: 'view',
656
804
  scope: AXPEntityCommandScope.Individual,
805
+ hidden: '{{ context.eval("membershipStatusId") !== "pending" || context.eval("membershipInvitationSource") !== "invite" }}',
806
+ },
807
+ {
808
+ title: '@security-management:users.entities.user.actions.approve-join-request.title',
809
+ icon: 'fa-light fa-user-check',
810
+ command: AXM_USER_APPROVE_JOIN_REQUEST_COMMAND,
811
+ color: 'success',
812
+ priority: 'primary',
813
+ type: 'view',
814
+ scope: AXPEntityCommandScope.Individual,
815
+ hidden: '{{ context.eval("membershipStatusId") !== "pending" || context.eval("membershipInvitationSource") !== "join-request" }}',
816
+ },
817
+ {
818
+ title: '@security-management:users.entities.user.actions.reject-join-request.title',
819
+ icon: 'fa-light fa-user-xmark',
820
+ command: AXM_USER_REJECT_JOIN_REQUEST_COMMAND,
821
+ color: 'warning',
822
+ priority: 'primary',
823
+ type: 'view',
824
+ scope: AXPEntityCommandScope.Individual,
825
+ hidden: '{{ context.eval("membershipStatusId") !== "pending" || context.eval("membershipInvitationSource") !== "join-request" }}',
657
826
  },
658
827
  ...entityMasterRecordActions(),
659
828
  ],
660
829
  },
661
830
  list: {
662
831
  actions: [
663
- {
664
- name: 'invite',
665
- title: '@security-management:users.entities.user.actions.invite.title',
666
- icon: 'fa-light fa-user-plus',
667
- command: {
668
- name: AXM_USER_INVITE_COMMAND,
669
- },
670
- priority: 'primary',
671
- type: AXPSystemActionType.Create,
672
- scope: AXPEntityCommandScope.TypeLevel,
673
- },
832
+ ...userProvisioningListActions(),
674
833
  ...entityMasterCrudActions({ create: false }),
675
834
  ],
676
835
  views: [
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-security-management-client-contracts-entities-users.mjs","sources":["../../../../libs/modules/security-management/contracts/src/AXM_USER_ACCESS_STATE_DEFINITION_KEY.ts","../../../../libs/modules/security-management/contracts/src/AXM_USER_EFFECTIVE_STATE_DEFINITION_KEY.ts","../../../../libs/modules/security-management/contracts/src/server-commands.ts","../../../../libs/modules/security-management/contracts/src/USER_ROLES_PAGE_COMPONENT_KEY.ts","../../../../libs/modules/security-management/contracts/src/root-config.ts","../../../../libs/modules/security-management/contracts/src/entities/users/users.entity.ts","../../../../libs/modules/security-management/contracts/src/acorex-platform-module-security-management-client-contracts-entities-users.ts"],"sourcesContent":["/** Status provider key for `accessState` on SecurityManagement.User (transitions define editable paths in the status UI). */\nexport const AXM_USER_ACCESS_STATE_DEFINITION_KEY = 'security-management.access-state.user';\n","/** Status provider key for persisted `effectiveState` on SecurityManagement.User (derived; read-only in UI). */\nexport const AXM_USER_EFFECTIVE_STATE_DEFINITION_KEY = 'security-management.effective-state.user';\n","//#region ---- Security management server command keys ----\n\nexport const AXMSecurityManagementServerCommands = {\n SendPasswordResetEmail: 'SecurityManagement:Server:SendPasswordResetEmail',\n CompletePasswordReset: 'SecurityManagement:Server:CompletePasswordReset',\n ChangeOwnPassword: 'SecurityManagement:Server:ChangeOwnPassword',\n InviteUser: 'SecurityManagement:Server:InviteUser',\n ResendInvitation: 'SecurityManagement:Server:ResendInvitation',\n CancelInvitation: 'SecurityManagement:Server:CancelInvitation',\n AcceptInvitation: 'SecurityManagement:Server:AcceptInvitation',\n ListMyPendingInvitations: 'SecurityManagement:Server:ListMyPendingInvitations',\n DeclineInvitation: 'SecurityManagement:Server:DeclineInvitation',\n AcceptMyInvitation: 'SecurityManagement:Server:AcceptMyInvitation',\n StartTwoFactorEnrollment: 'SecurityManagement:Server:StartTwoFactorEnrollment',\n ConfirmTwoFactorEnrollment: 'SecurityManagement:Server:ConfirmTwoFactorEnrollment',\n DisableTwoFactor: 'SecurityManagement:Server:DisableTwoFactor',\n GenerateTwoFactorRecoveryCodes: 'SecurityManagement:Server:GenerateTwoFactorRecoveryCodes',\n GetTwoFactorStatus: 'SecurityManagement:Server:GetTwoFactorStatus',\n AdminResetTwoFactor: 'SecurityManagement:Server:AdminResetTwoFactor',\n /** Public — completes login after password challenge (TOTP or recovery). */\n VerifyTwoFactorLogin: 'SecurityManagement:Server:VerifyTwoFactorLogin',\n} as const;\n\n/** Stable codes for self-service password change (client maps to i18n). */\nexport const AXM_CHANGE_OWN_PASSWORD_ERROR_CODES = {\n NotSignedIn: 'CHANGE_OWN_PASSWORD_NOT_SIGNED_IN',\n IncorrectCurrent: 'CHANGE_OWN_PASSWORD_INCORRECT_CURRENT',\n SameAsCurrent: 'CHANGE_OWN_PASSWORD_SAME_AS_CURRENT',\n InvalidInput: 'CHANGE_OWN_PASSWORD_INVALID_INPUT',\n} as const;\n\n/** Client/UI action key (confirm dialog → server send). */\nexport const AXM_USER_SEND_PASSWORD_RESET_COMMAND = 'SecurityManagement:User:SendPasswordResetEmail';\n\n/** Client/UI action key (confirm dialog → server admin reset 2FA). */\nexport const AXM_USER_RESET_TWO_FACTOR_COMMAND = 'SecurityManagement:User:ResetTwoFactor';\n\n/** Client/UI action keys for invite flows. */\nexport const AXM_USER_INVITE_COMMAND = 'SecurityManagement:User:Invite';\nexport const AXM_USER_RESEND_INVITATION_COMMAND = 'SecurityManagement:User:ResendInvitation';\nexport const AXM_USER_CANCEL_INVITATION_COMMAND = 'SecurityManagement:User:CancelInvitation';\n\nexport interface AXMSendPasswordResetEmailInput {\n /** Admin path: target user id. */\n userId?: string;\n /** Forgot path: email or username. */\n login?: string;\n /** Optional absolute web origin for reset link (defaults to env / localhost). */\n webOrigin?: string;\n}\n\nexport interface AXMCompletePasswordResetInput {\n token: string;\n newPassword: string;\n}\n\nexport interface AXMChangeOwnPasswordInput {\n currentPassword: string;\n newPassword: string;\n}\n\nexport interface AXMChangeOwnPasswordResult {\n passwordChangedAt: string;\n}\n\nexport interface AXMInviteUserInput {\n email: string;\n displayName?: string;\n applicationIds?: string[];\n /** Client sets true after warning that the identity already exists. */\n confirmExisting?: boolean;\n webOrigin?: string;\n}\n\nexport interface AXMInviteUserResult {\n userId: string;\n tenantUserId: string;\n userAlreadyExists: boolean;\n sent: boolean;\n}\n\nexport interface AXMResendInvitationInput {\n tenantUserId?: string;\n userId?: string;\n webOrigin?: string;\n}\n\nexport interface AXMCancelInvitationInput {\n tenantUserId?: string;\n userId?: string;\n}\n\n/** Stable codes for public invitation accept (client maps invalid/expired to the page, not a toast). */\nexport const AXM_ACCEPT_INVITATION_ERROR_CODES = {\n Invalid: 'ACCEPT_INVITATION_INVALID',\n Expired: 'ACCEPT_INVITATION_EXPIRED',\n PasswordRequired: 'ACCEPT_INVITATION_PASSWORD_REQUIRED',\n} as const;\n\nexport type AXMAcceptInvitationReason = 'valid' | 'invalid' | 'expired';\n\nexport interface AXMAcceptInvitationInput {\n token: string;\n newPassword?: string;\n /** Check the token only. Does not set a password or consume the link. */\n preview?: boolean;\n}\n\nexport interface AXMAcceptInvitationPreviewResult {\n usable: boolean;\n reason: AXMAcceptInvitationReason;\n}\n\nexport interface AXMPendingInvitationItem {\n tenantUserId: string;\n tenantId: string;\n tenantTitle?: string;\n invitedByUserId?: string;\n expiresAt?: string;\n sentAt?: string;\n applicationIds?: string[];\n}\n\nexport interface AXMListMyPendingInvitationsResult {\n items: AXMPendingInvitationItem[];\n}\n\nexport interface AXMAcceptMyInvitationInput {\n tenantUserId: string;\n newPassword?: string;\n}\n\nexport interface AXMDeclineInvitationInput {\n tenantUserId: string;\n}\n\n/** Stable codes for two-factor self-service and login challenge (client maps to i18n). */\nexport const AXM_TWO_FACTOR_ERROR_CODES = {\n NotSignedIn: 'TWO_FACTOR_NOT_SIGNED_IN',\n InvalidInput: 'TWO_FACTOR_INVALID_INPUT',\n IncorrectPassword: 'TWO_FACTOR_INCORRECT_PASSWORD',\n IncorrectCode: 'TWO_FACTOR_INCORRECT_CODE',\n AlreadyEnabled: 'TWO_FACTOR_ALREADY_ENABLED',\n NotEnabled: 'TWO_FACTOR_NOT_ENABLED',\n EnrollmentExpired: 'TWO_FACTOR_ENROLLMENT_EXPIRED',\n ChallengeExpired: 'TWO_FACTOR_CHALLENGE_EXPIRED',\n RateLimited: 'TWO_FACTOR_RATE_LIMITED',\n InvalidConfiguration: 'TWO_FACTOR_INVALID_CONFIGURATION',\n ProofRequired: 'TWO_FACTOR_PROOF_REQUIRED',\n UserNotFound: 'TWO_FACTOR_USER_NOT_FOUND',\n Forbidden: 'TWO_FACTOR_FORBIDDEN',\n} as const;\n\nexport interface AXMStartTwoFactorEnrollmentInput {\n password: string;\n}\n\nexport interface AXMStartTwoFactorEnrollmentResult {\n enrollmentId: string;\n otpauthUri: string;\n /** Base32 secret for manual entry (client renders QR via ax-qrcode). */\n secretBase32: string;\n expiresAt: string;\n}\n\nexport interface AXMConfirmTwoFactorEnrollmentInput {\n enrollmentId: string;\n code: string;\n}\n\nexport interface AXMConfirmTwoFactorEnrollmentResult {\n enabled: true;\n verifiedAt: string;\n}\n\nexport interface AXMDisableTwoFactorInput {\n /** At least one of password or totpCode is required. */\n password?: string;\n totpCode?: string;\n}\n\nexport interface AXMDisableTwoFactorResult {\n enabled: false;\n}\n\nexport interface AXMGenerateTwoFactorRecoveryCodesInput {\n /** At least one of password or totpCode is required. */\n password?: string;\n totpCode?: string;\n}\n\nexport interface AXMGenerateTwoFactorRecoveryCodesResult {\n /** Plaintext codes shown once only (display format ABCD-EFGH). */\n codes: string[];\n}\n\nexport interface AXMGetTwoFactorStatusResult {\n enabled: boolean;\n enrolled: boolean;\n verifiedAt?: string | null;\n hasRecoveryCodes: boolean;\n unusedRecoveryCodeCount: number;\n}\n\nexport interface AXMAdminResetTwoFactorInput {\n userId: string;\n /** When true, only validates that 2FA is enabled; does not wipe or revoke sessions. */\n dryRun?: boolean;\n}\n\nexport interface AXMAdminResetTwoFactorResult {\n reset: boolean;\n}\n\nexport interface AXMVerifyTwoFactorLoginInput {\n challengeId: string;\n /** TOTP (6 digits) or recovery code. */\n code: string;\n rememberMe?: boolean;\n}\n\n//#endregion\n","export const USER_ROLES_PAGE_COMPONENT_KEY = 'user-roles-page';\n","const config = {\n i18n: 'security-management',\n profileEntity: 'Profile',\n};\nexport const RootConfig = {\n config,\n module: {\n route: 'security-management',\n name: 'SecurityManagement',\n title: `@${config.i18n}:module.title`,\n icon: 'fa-light fa-shield-halved',\n },\n entities: {\n policy: {\n name: 'Policy',\n title: `@${config.i18n}:policies.entities.policy.title`,\n titlePlural: `@${config.i18n}:policies.entities.policy.plural`,\n icon: 'fa-light fa-clipboard-list',\n },\n deviceSessions: {\n name: 'DeviceSessions',\n title: `@${config.i18n}:sessions.entities.session.title`,\n titlePlural: `@${config.i18n}:sessions.entities.session.plural`,\n icon: 'fa-light fa-laptop',\n },\n users: {\n name: 'User',\n title: `@${config.i18n}:users.entities.user.title`,\n titlePlural: `@${config.i18n}:users.entities.user.plural`,\n icon: 'fa-light fa-users',\n },\n roles: {\n name: 'Role',\n title: `@${config.i18n}:roles.entities.role.title`,\n titlePlural: `@${config.i18n}:roles.entities.role.plural`,\n icon: 'fa-light fa-user-tag',\n },\n rolePermission: {\n name: 'RolePermission',\n title: `@${config.i18n}:role-permissions.entities.role-permission.title`,\n titlePlural: `@${config.i18n}:role-permissions.entities.role-permission.plural`,\n icon: 'fa-light fa-key',\n },\n userRole: {\n name: 'UserRole',\n title: `@${config.i18n}:user-roles.entities.user-role.title`,\n titlePlural: `@${config.i18n}:user-roles.entities.user-role.plural`,\n icon: 'fa-light fa-user-tag',\n },\n profile: {\n name: 'Profile',\n title: `@${config.i18n}:profile.entities.profile.title`,\n titlePlural: `@${config.i18n}:profile.entities.profile.plural`,\n icon: 'fa-light fa-user',\n },\n identityProvider: {\n name: 'IdentityProvider',\n title: `@${config.i18n}:identity-providers.entities.identity-provider.title`,\n titlePlural: `@${config.i18n}:identity-providers.entities.identity-provider.plural`,\n icon: 'fa-light fa-id-badge',\n },\n userTwoFactor: {\n name: 'UserTwoFactor',\n title: `@${config.i18n}:user-two-factor.entities.user-two-factor.title`,\n titlePlural: `@${config.i18n}:user-two-factor.entities.user-two-factor.plural`,\n icon: 'fa-light fa-shield-keyhole',\n },\n },\n queries: {\n reports: {\n getUserEffectiveRolesHistory: 'SecurityManagement:Reports:GetUserEffectiveRolesHistory',\n getUserEffectivePermissionsHistory:\n 'SecurityManagement:Reports:GetUserEffectivePermissionsHistory',\n getRoleHoldersHistory: 'SecurityManagement:Reports:GetRoleHoldersHistory',\n getPermissionHoldersHistory: 'SecurityManagement:Reports:GetPermissionHoldersHistory',\n getUserPasswordChangeHistory: 'SecurityManagement:Reports:GetUserPasswordChangeHistory',\n },\n },\n} as const;\n","import { AXPSystemActionType, AXPWidgetsCatalog, AXPWidgetsList } from '@acorex-platform/framework-shared/core';\nimport {\n AXPEntity,\n AXPEntityCommandScope,\n createAllQueryView,\n createQueryView,\n entityMasterCrudActions,\n entityMasterRecordActions,\n} from '@acorex-platform/framework-shared/entity';\nimport { AXM_USER_ACCESS_STATE_DEFINITION_KEY } from '../../AXM_USER_ACCESS_STATE_DEFINITION_KEY';\nimport { AXM_USER_EFFECTIVE_STATE_DEFINITION_KEY } from '../../AXM_USER_EFFECTIVE_STATE_DEFINITION_KEY';\nimport {\n AXM_USER_CANCEL_INVITATION_COMMAND,\n AXM_USER_INVITE_COMMAND,\n AXM_USER_RESEND_INVITATION_COMMAND,\n AXM_USER_RESET_TWO_FACTOR_COMMAND,\n AXM_USER_SEND_PASSWORD_RESET_COMMAND,\n} from '../../server-commands';\nimport { USER_ROLES_PAGE_COMPONENT_KEY } from '../../USER_ROLES_PAGE_COMPONENT_KEY';\nimport { RootConfig } from '../../root-config';\n\nexport async function usersFactory(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.users.name,\n title: RootConfig.entities.users.title,\n icon: RootConfig.entities.users.icon,\n searchTags: [\n 'user',\n 'users',\n 'account',\n 'identity',\n 'sign-in',\n 'password',\n 'access-state',\n 'lifecycle',\n 'authorization',\n 'home-tenant',\n 'کاربر',\n 'کاربران',\n 'رمز عبور',\n 'ورود',\n 'حساب کاربری',\n ],\n formats: {\n individual: RootConfig.entities.users.title,\n plural: RootConfig.entities.users.titlePlural,\n searchResult: {\n title: '{{ displayName }}',\n description:\n '{{ context.eval(\"lastSignInAt\", { pipes: [\"timeleft\"] }) || \"@security-management:users.entities.user.fields.last-sign-in-at.never\" }}',\n },\n },\n plugins: [\n {\n name: 'status',\n options: {\n definition: 'security-management.account-state.user',\n field: 'accountState',\n isPrimary: false,\n groupId: 'user-account-access',\n title: '@security-management:users.entities.user.fields.account-lifecycle.title',\n showInCreate: false,\n generate: { views: { enabled: false } },\n },\n },\n {\n name: 'status',\n options: {\n field: 'accessState',\n definition: AXM_USER_ACCESS_STATE_DEFINITION_KEY,\n isPrimary: false,\n groupId: 'user-account-access',\n title: '@security-management:users.entities.user.fields.access-state.title',\n showInCreate: false,\n // Platform-scoped sign-in gate: display-only on User detail (tenant must not change).\n // Platform mutations should go through a dedicated ops path once client isPlatform is available.\n readonly: true,\n generate: { views: { enabled: false } },\n },\n },\n {\n name: 'status',\n options: {\n field: 'effectiveState',\n definition: AXM_USER_EFFECTIVE_STATE_DEFINITION_KEY,\n isPrimary: true,\n groupId: 'user-account-access',\n title: '@security-management:users.entities.user.fields.effective-state.title',\n showInCreate: false,\n readonly: true,\n generate: { views: { enabled: true } },\n },\n },\n { name: 'unique-fields', options: { fields: 'email', scope: 'global' } },\n { name: 'history' },\n { name: 'lock' },\n { name: 'compare' },\n { name: 'reports' },\n ],\n pages: [\n {\n componentKey: USER_ROLES_PAGE_COMPONENT_KEY,\n title: '@security-management:users.entities.user.pages.roles.title',\n icon: 'fa-light fa-user-tag',\n layout: { order: 1, position: 'after' },\n appearOn: { create: true, update: true },\n },\n ],\n groups: [\n {\n id: 'basic-info',\n title: '@general:terms.interface.basic-info',\n },\n {\n id: 'avatar',\n title: '@general:terms.common.avatar',\n icon: 'fa-light fa-image',\n },\n {\n id: 'user-account-access',\n title: '@security-management:users.entities.user.groups.account-access',\n },\n ],\n properties: [\n {\n name: 'username',\n title: '@general:terms.contact.username',\n groupId: 'basic-info',\n options: {\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: true,\n },\n },\n sort: {\n enabled: true,\n },\n },\n schema: {\n dataType: 'string',\n readonly: '{{ !!context.eval(\"id\") }}',\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {},\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'displayName',\n title: `@general:terms.common.display-name`,\n groupId: 'basic-info',\n options: {\n sort: {\n enabled: true,\n },\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: true,\n },\n },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'email',\n title: '@general:terms.communication.email',\n groupId: 'basic-info',\n options: {\n filter: {\n advance: { enabled: true },\n inline: { enabled: true },\n },\n sort: { enabled: true },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {},\n },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'rolesList',\n title: '@security-management:users.entities.user.fields.roles.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'array',\n /**\n * Display-only Role snapshots. Not a stored FK — source of truth is\n * scoped SecurityManagement.UserRole. Name must not end in Id/Ids so\n * the query planner does not join Role from this User document.\n */\n readonly: true,\n visible: false,\n interface: {\n type: AXPWidgetsList.Editors.LookupBox,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.roles.name}`,\n textField: 'title',\n valueField: 'id',\n multiple: true,\n look: 'select',\n },\n },\n },\n },\n {\n /**\n * Display-only (like rolesList). Never persisted on User documents.\n * Hydrated from session-tenant TenantUser.statusId (+ acceptedAt → accepted).\n */\n name: 'membershipStatusId',\n title: '@security-management:users.entities.user.fields.membership-status.title',\n groupId: 'user-account-access',\n schema: {\n dataType: 'string',\n readonly: true,\n nullable: true,\n visible: false,\n interface: {\n type: AXPWidgetsList.Advanced.Status,\n options: {\n definitionKey: 'security-management.status.user-invitation',\n },\n },\n },\n },\n {\n /**\n * Hidden view filter marker only; rewritten server-side to TenantUser\n * invitation.source=invite. Never persisted on User documents.\n */\n name: 'membershipInviteScope',\n title: '@security-management:users.entities.user.fields.membership-invite-scope.title',\n groupId: 'user-account-access',\n schema: {\n dataType: 'string',\n readonly: true,\n visible: false,\n nullable: true,\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {},\n },\n },\n },\n {\n name: 'homeTenantId',\n title: '@security-management:users.entities.user.fields.home-tenant.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n /** Stamped on create from session; not shown on User forms. */\n readonly: true,\n visible: false,\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {},\n },\n },\n },\n {\n name: 'password',\n title: '@security-management:users.entities.user.fields.password.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n visible: false,\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'avatar',\n title: '@general:terms.common.avatar',\n groupId: 'avatar',\n schema: {\n dataType: 'string',\n nullable: true,\n interface: {\n type: AXPWidgetsList.Advanced.Image,\n options: {\n type: 'profile-photo',\n },\n },\n },\n },\n {\n name: 'pinCode',\n title: '@security-management:users.entities.user.fields.pin-code.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n readonly: true,\n visible: false,\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'passwordChangedAt',\n title: '@security-management:users.entities.user.fields.password-changed-at.title',\n groupId: 'user-account-access',\n schema: {\n dataType: 'date',\n readonly: true,\n visible: false,\n nullable: true,\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n },\n },\n },\n {\n name: 'pinChangedAt',\n title: '@security-management:users.entities.user.fields.pin-changed-at.title',\n groupId: 'user-account-access',\n schema: {\n dataType: 'date',\n readonly: true,\n visible: false,\n nullable: true,\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n },\n },\n },\n {\n name: 'lastSignInAt',\n title: '@security-management:users.entities.user.fields.last-sign-in-at.title',\n groupId: 'user-account-access',\n schema: {\n dataType: 'date',\n readonly: true,\n visible: false,\n nullable: true,\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n },\n },\n },\n {\n name: 'passwordReset',\n title: '@security-management:users.entities.user.fields.password-reset.title',\n groupId: 'user-account-access',\n schema: {\n dataType: 'object',\n readonly: true,\n visible: false,\n nullable: true,\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n ],\n columns: [\n { name: 'username' },\n { name: 'displayName' },\n { name: 'email' },\n { name: 'rolesList' },\n { name: 'membershipStatusId', options: { visible: false } },\n { name: 'lastSignInAt', options: { visible: false } },\n ],\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'basic-info',\n order: 1,\n layout: { positions: { lg: { colSpan: 8, colStart: 1 } } },\n },\n {\n id: 'avatar',\n order: 2,\n layout: { positions: { lg: { colSpan: 4, colStart: 9 } } },\n },\n ],\n properties: [\n {\n name: 'username',\n layout: { positions: { lg: { colSpan: 6 } } },\n },\n {\n name: 'displayName',\n layout: { positions: { lg: { colSpan: 6 } } },\n },\n {\n name: 'email',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'avatar',\n layout: {\n label: { visible: false },\n positions: { lg: { colSpan: 12, order: 1 } },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'basic-info',\n order: 1,\n layout: { positions: { lg: { colSpan: 8, colStart: 1 } } },\n },\n {\n id: 'avatar',\n order: 2,\n layout: { positions: { lg: { colSpan: 4, colStart: 9 } } },\n },\n {\n id: 'user-account-access',\n order: 3,\n layout: { positions: { lg: { colSpan: 12, colStart: 1 } } },\n },\n ],\n properties: [\n { name: 'username', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'displayName', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'email', layout: { positions: { lg: { colSpan: 6 } } } },\n {\n name: 'avatar',\n layout: {\n label: { visible: false },\n positions: { lg: { colSpan: 12, order: 1 } },\n },\n },\n { name: 'accountState', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'accessState', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'effectiveState', layout: { positions: { lg: { colSpan: 4 } } } },\n ],\n },\n single: {\n title: '{{ context.eval(\"displayName\") ?? context.eval(\"username\") }}',\n description:\n '{{ context.eval(\"lastSignInAt\", { pipes: [\"timeleft\"] }) || \"@security-management:users.entities.user.fields.last-sign-in-at.never\" }}',\n\n sections: [\n {\n id: 'basic-info',\n order: 1,\n layout: { positions: { lg: { colSpan: 8, colStart: 1 } } },\n },\n {\n id: 'avatar',\n order: 2,\n layout: { positions: { lg: { colSpan: 4, colStart: 9 } } },\n },\n {\n id: 'user-account-access',\n order: 3,\n layout: { positions: { lg: { colSpan: 12, colStart: 1 } } },\n },\n ],\n properties: [\n { name: 'username', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'displayName', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'email', layout: { positions: { lg: { colSpan: 6 } } } },\n {\n name: 'avatar',\n layout: {\n label: { visible: false },\n positions: { lg: { colSpan: 12, order: 1 } },\n },\n },\n { name: 'accountState', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'accessState', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'effectiveState', layout: { positions: { lg: { colSpan: 4 } } } },\n ],\n actions: [\n {\n title: '@security-management:users.entities.user.actions.send-password-reset.title',\n icon: 'fa-light fa-envelope',\n command: AXM_USER_SEND_PASSWORD_RESET_COMMAND,\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: '@security-management:users.entities.user.actions.reset-two-factor.title',\n icon: 'fa-light fa-shield-keyhole',\n command: AXM_USER_RESET_TWO_FACTOR_COMMAND,\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: '@security-management:users.entities.user.actions.resend-invitation.title',\n icon: 'fa-light fa-paper-plane',\n command: AXM_USER_RESEND_INVITATION_COMMAND,\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: '@security-management:users.entities.user.actions.cancel-invitation.title',\n icon: 'fa-light fa-user-xmark',\n command: AXM_USER_CANCEL_INVITATION_COMMAND,\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n ...entityMasterRecordActions(),\n ],\n },\n list: {\n actions: [\n {\n name: 'invite',\n title: '@security-management:users.entities.user.actions.invite.title',\n icon: 'fa-light fa-user-plus',\n command: {\n name: AXM_USER_INVITE_COMMAND,\n },\n priority: 'primary',\n type: AXPSystemActionType.Create,\n scope: AXPEntityCommandScope.TypeLevel,\n },\n ...entityMasterCrudActions({ create: false }),\n ],\n views: [\n createAllQueryView({\n sorts: [{ name: 'displayName', dir: 'asc' }],\n }),\n createQueryView(\n 'invitations',\n '@security-management:users.entities.user.views.invitations.title',\n true,\n {\n conditions: [\n {\n name: 'membershipInviteScope',\n operator: { type: 'equal' },\n value: 'lifecycle',\n hidden: true,\n },\n ],\n columns: [\n 'username',\n 'displayName',\n 'email',\n 'membershipStatusId',\n 'rolesList',\n ],\n sorts: [{ name: 'displayName', dir: 'asc' }],\n },\n ),\n ],\n },\n card: {\n enabled: true,\n header: {\n title: 'displayName',\n description:\n '{{ context.eval(\"lastSignInAt\", { pipes: [\"timeleft\"] }) || \"@security-management:users.entities.user.fields.last-sign-in-at.never\" }}',\n avatar: 'avatar',\n },\n fields: [\n { name: 'username', display: 'meta' },\n { name: 'email', display: 'meta' },\n { name: 'rolesList', display: 'simple' },\n ],\n },\n },\n },\n };\n return entityDef;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './entity-entry.users';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-platform-module-security-management-client-contracts-entities-users.mjs","sources":["../../../../libs/modules/security-management/contracts/src/AXM_USER_ACCESS_STATE_DEFINITION_KEY.ts","../../../../libs/modules/security-management/contracts/src/AXM_USER_EFFECTIVE_STATE_DEFINITION_KEY.ts","../../../../libs/modules/security-management/contracts/src/server-commands.ts","../../../../libs/modules/security-management/contracts/src/settings.keys.ts","../../../../libs/modules/security-management/contracts/src/entities/users/user-provisioning-list-actions.ts","../../../../libs/modules/security-management/contracts/src/USER_ROLES_PAGE_COMPONENT_KEY.ts","../../../../libs/modules/security-management/contracts/src/root-config.ts","../../../../libs/modules/security-management/contracts/src/entities/users/users.entity.ts","../../../../libs/modules/security-management/contracts/src/acorex-platform-module-security-management-client-contracts-entities-users.ts"],"sourcesContent":["/** Status provider key for `accessState` on SecurityManagement.User (transitions define editable paths in the status UI). */\nexport const AXM_USER_ACCESS_STATE_DEFINITION_KEY = 'security-management.access-state.user';\n","/** Status provider key for persisted `effectiveState` on SecurityManagement.User (derived; read-only in UI). */\nexport const AXM_USER_EFFECTIVE_STATE_DEFINITION_KEY = 'security-management.effective-state.user';\n","//#region ---- Security management server command keys ----\n\nexport const AXMSecurityManagementServerCommands = {\n SendPasswordResetEmail: 'SecurityManagement:Server:SendPasswordResetEmail',\n CompletePasswordReset: 'SecurityManagement:Server:CompletePasswordReset',\n ChangeOwnPassword: 'SecurityManagement:Server:ChangeOwnPassword',\n GetOwnPasswordStatus: 'SecurityManagement:Server:GetOwnPasswordStatus',\n InviteUser: 'SecurityManagement:Server:InviteUser',\n /** Tenant-subscribed applications for TM invite picker (ADR-TEN-001 D-05). */\n ListTenantEntitledApplications: 'SecurityManagement:Server:ListTenantEntitledApplications',\n /** Per-app Role overlays for TM invite repeater (bypasses app-catalog list isolation). */\n ListInviteAssignableRoles: 'SecurityManagement:Server:ListInviteAssignableRoles',\n ResendInvitation: 'SecurityManagement:Server:ResendInvitation',\n CancelInvitation: 'SecurityManagement:Server:CancelInvitation',\n AcceptInvitation: 'SecurityManagement:Server:AcceptInvitation',\n ListMyPendingInvitations: 'SecurityManagement:Server:ListMyPendingInvitations',\n DeclineInvitation: 'SecurityManagement:Server:DeclineInvitation',\n AcceptMyInvitation: 'SecurityManagement:Server:AcceptMyInvitation',\n LookupTenantByUniqueName: 'SecurityManagement:Server:LookupTenantByUniqueName',\n RequestTenantMembership: 'SecurityManagement:Server:RequestTenantMembership',\n ListMyJoinRequests: 'SecurityManagement:Server:ListMyJoinRequests',\n CancelMyJoinRequest: 'SecurityManagement:Server:CancelMyJoinRequest',\n ApproveJoinRequest: 'SecurityManagement:Server:ApproveJoinRequest',\n RejectJoinRequest: 'SecurityManagement:Server:RejectJoinRequest',\n CreateUserInTenant: 'SecurityManagement:Server:CreateUserInTenant',\n StartTwoFactorEnrollment: 'SecurityManagement:Server:StartTwoFactorEnrollment',\n ConfirmTwoFactorEnrollment: 'SecurityManagement:Server:ConfirmTwoFactorEnrollment',\n DisableTwoFactor: 'SecurityManagement:Server:DisableTwoFactor',\n GenerateTwoFactorRecoveryCodes: 'SecurityManagement:Server:GenerateTwoFactorRecoveryCodes',\n GetTwoFactorStatus: 'SecurityManagement:Server:GetTwoFactorStatus',\n AdminResetTwoFactor: 'SecurityManagement:Server:AdminResetTwoFactor',\n /** Public — completes login after password challenge (TOTP or recovery). */\n VerifyTwoFactorLogin: 'SecurityManagement:Server:VerifyTwoFactorLogin',\n} as const;\n\n/** Stable codes for self-service password change (client maps to i18n). */\nexport const AXM_CHANGE_OWN_PASSWORD_ERROR_CODES = {\n NotSignedIn: 'CHANGE_OWN_PASSWORD_NOT_SIGNED_IN',\n IncorrectCurrent: 'CHANGE_OWN_PASSWORD_INCORRECT_CURRENT',\n SameAsCurrent: 'CHANGE_OWN_PASSWORD_SAME_AS_CURRENT',\n InvalidInput: 'CHANGE_OWN_PASSWORD_INVALID_INPUT',\n} as const;\n\n/** Client/UI action key (confirm dialog → server send). */\nexport const AXM_USER_SEND_PASSWORD_RESET_COMMAND = 'SecurityManagement:User:SendPasswordResetEmail';\n\n/** Client/UI action key (confirm dialog → server admin reset 2FA). */\nexport const AXM_USER_RESET_TWO_FACTOR_COMMAND = 'SecurityManagement:User:ResetTwoFactor';\n\n/** Client/UI action keys for invite / create-in-tenant flows. */\nexport const AXM_USER_INVITE_COMMAND = 'SecurityManagement:User:Invite';\nexport const AXM_USER_RESEND_INVITATION_COMMAND = 'SecurityManagement:User:ResendInvitation';\nexport const AXM_USER_CANCEL_INVITATION_COMMAND = 'SecurityManagement:User:CancelInvitation';\nexport const AXM_USER_APPROVE_JOIN_REQUEST_COMMAND = 'SecurityManagement:User:ApproveJoinRequest';\nexport const AXM_USER_REJECT_JOIN_REQUEST_COMMAND = 'SecurityManagement:User:RejectJoinRequest';\nexport const AXM_USER_CREATE_IN_TENANT_COMMAND = 'SecurityManagement:User:CreateInTenant';\n\nexport interface AXMSendPasswordResetEmailInput {\n /** Admin path: target user id. */\n userId?: string;\n /** Forgot path: email or username. */\n login?: string;\n /** Optional absolute web origin for reset link (defaults to env / localhost). */\n webOrigin?: string;\n}\n\nexport interface AXMCompletePasswordResetInput {\n token: string;\n newPassword: string;\n}\n\nexport interface AXMChangeOwnPasswordInput {\n /** Required when the account already has a password; omit/empty when setting the first password. */\n currentPassword?: string;\n newPassword: string;\n}\n\nexport interface AXMChangeOwnPasswordResult {\n passwordChangedAt: string;\n}\n\nexport interface AXMGetOwnPasswordStatusResult {\n /** True when the signed-in user has a non-empty stored password credential. */\n hasPassword: boolean;\n}\n\nexport interface AXMInviteUserInput {\n email: string;\n displayName?: string;\n applicationIds?: string[];\n /**\n * Role ids to assign on invite (scoped UserRole grant).\n * Application invite → app-scoped grant; tenant invite without per-app rows → tenant-wide grant.\n */\n roleIds?: string[];\n /**\n * TM Tenant Users repeater: roles per selected application.\n * When present, server upserts a UserRole grant per application (not one tenant-wide grant).\n */\n applicationRoleAssignments?: Array<{ applicationId: string; roleIds: string[] }>;\n /**\n * True when invite is from Tenant Users (tenant-membership) with multi-app UI.\n * Server SoT with session edition feature — not Application.code === 'TM'.\n */\n tenantMembershipInvite?: boolean;\n /** Client sets true after warning that the identity already exists. */\n confirmExisting?: boolean;\n webOrigin?: string;\n}\n\n/** One selectable application for TM invite (tenant subscription entitlement). */\nexport interface AXMTenantEntitledApplicationItem {\n id: string;\n /** Raw MLS / string title — client resolves for display. */\n title: unknown;\n}\n\nexport interface AXMListTenantEntitledApplicationsResult {\n items: AXMTenantEntitledApplicationItem[];\n}\n\n/** One Role overlay selectable on a TM invite repeater row. */\nexport interface AXMInviteAssignableRoleItem {\n id: string;\n title: unknown;\n name?: string;\n applicationId: string;\n}\n\nexport interface AXMListInviteAssignableRolesInput {\n /** When set, only overlays for this application (current tenant). */\n applicationId?: string;\n}\n\nexport interface AXMListInviteAssignableRolesResult {\n items: AXMInviteAssignableRoleItem[];\n}\n\nexport interface AXMInviteUserResult {\n userId: string;\n tenantUserId: string;\n userAlreadyExists: boolean;\n sent: boolean;\n}\n\nexport interface AXMResendInvitationInput {\n tenantUserId?: string;\n userId?: string;\n webOrigin?: string;\n}\n\nexport interface AXMCancelInvitationInput {\n tenantUserId?: string;\n userId?: string;\n}\n\n/** Stable codes for public invitation accept (client maps invalid/expired to the page, not a toast). */\nexport const AXM_ACCEPT_INVITATION_ERROR_CODES = {\n Invalid: 'ACCEPT_INVITATION_INVALID',\n Expired: 'ACCEPT_INVITATION_EXPIRED',\n PasswordRequired: 'ACCEPT_INVITATION_PASSWORD_REQUIRED',\n} as const;\n\nexport type AXMAcceptInvitationReason = 'valid' | 'invalid' | 'expired';\n\nexport interface AXMAcceptInvitationInput {\n token: string;\n newPassword?: string;\n /** Check the token only. Does not set a password or consume the link. */\n preview?: boolean;\n}\n\nexport interface AXMAcceptInvitationPreviewResult {\n usable: boolean;\n reason: AXMAcceptInvitationReason;\n}\n\nexport interface AXMPendingInvitationItem {\n tenantUserId: string;\n tenantId: string;\n tenantTitle?: string;\n /** Tenant branding logo URL / storage id when available. */\n tenantLogo?: string;\n invitedByUserId?: string;\n expiresAt?: string;\n sentAt?: string;\n applicationIds?: string[];\n}\n\nexport interface AXMListMyPendingInvitationsResult {\n items: AXMPendingInvitationItem[];\n}\n\nexport interface AXMAcceptMyInvitationInput {\n tenantUserId: string;\n newPassword?: string;\n}\n\nexport interface AXMDeclineInvitationInput {\n tenantUserId: string;\n}\n\n/** Stable codes for waiting-room join-by-unique-name (client maps to i18n). */\nexport const AXM_JOIN_REQUEST_ERROR_CODES = {\n NotSignedIn: 'JOIN_REQUEST_NOT_SIGNED_IN',\n InvalidInput: 'JOIN_REQUEST_INVALID_INPUT',\n TenantNotFound: 'JOIN_REQUEST_TENANT_NOT_FOUND',\n AlreadyMember: 'JOIN_REQUEST_ALREADY_MEMBER',\n InvitePending: 'JOIN_REQUEST_INVITE_PENDING',\n RequestNotFound: 'JOIN_REQUEST_NOT_FOUND',\n NotPending: 'JOIN_REQUEST_NOT_PENDING',\n} as const;\n\nexport interface AXMLookupTenantByUniqueNameInput {\n /** Tenant unique `name` or display `title` (any locale). Case-insensitive exact match. */\n uniqueName: string;\n}\n\nexport interface AXMLookupTenantByUniqueNameItem {\n id: string;\n /** Stored unique name with original casing. */\n name: string;\n}\n\nexport interface AXMLookupTenantByUniqueNameResult {\n /** Present only when the name/title matches exactly one active tenant. */\n item?: AXMLookupTenantByUniqueNameItem | null;\n}\n\nexport interface AXMRequestTenantMembershipInput {\n /** Tenant unique `name` or display `title` (any locale). Case-insensitive exact match. */\n uniqueName: string;\n}\n\nexport interface AXMRequestTenantMembershipResult {\n tenantUserId: string;\n tenantId: string;\n tenantName: string;\n}\n\nexport interface AXMJoinRequestItem {\n tenantUserId: string;\n tenantId: string;\n tenantName?: string;\n tenantTitle?: string;\n /** Tenant branding logo URL / storage id when available. */\n tenantLogo?: string;\n sentAt?: string;\n expiresAt?: string;\n}\n\nexport interface AXMListMyJoinRequestsResult {\n items: AXMJoinRequestItem[];\n}\n\nexport interface AXMCancelMyJoinRequestInput {\n tenantUserId: string;\n}\n\nexport interface AXMApproveJoinRequestInput {\n tenantUserId?: string;\n userId?: string;\n /** Product / app-scoped approve: roles for the current session application. */\n roleIds?: string[];\n applicationIds?: string[];\n /** TM Tenant Users: per-application role rows (same shape as invite). */\n applicationRoleAssignments?: Array<{ applicationId: string; roleIds: string[] }>;\n /**\n * When true, allow multi-application assignment (TM Tenant Users + edition feature).\n * Mirrors invite `tenantMembershipInvite`.\n */\n tenantMembershipApprove?: boolean;\n}\n\nexport interface AXMRejectJoinRequestInput {\n tenantUserId?: string;\n userId?: string;\n}\n\nexport interface AXMCreateUserInTenantInput {\n email?: string;\n username?: string;\n displayName?: string;\n password?: string;\n applicationIds?: string[];\n /** Product Users create: roles for the current session application. */\n roleIds?: string[];\n /** TM Tenant Users create: per-application role rows (merged client-side before submit). */\n applicationRoleAssignments?: Array<{ applicationId: string; roleIds: string[] }>;\n /**\n * When true, allow multi-application assignment (TM Tenant Users + edition feature).\n * Parallel to invite `tenantMembershipInvite`; Create path only.\n */\n tenantMembershipCreate?: boolean;\n}\n\nexport interface AXMCreateUserInTenantResult {\n userId: string;\n tenantUserId: string;\n}\n\n/** Stable codes for two-factor self-service and login challenge (client maps to i18n). */\nexport const AXM_TWO_FACTOR_ERROR_CODES = {\n NotSignedIn: 'TWO_FACTOR_NOT_SIGNED_IN',\n InvalidInput: 'TWO_FACTOR_INVALID_INPUT',\n IncorrectPassword: 'TWO_FACTOR_INCORRECT_PASSWORD',\n IncorrectCode: 'TWO_FACTOR_INCORRECT_CODE',\n AlreadyEnabled: 'TWO_FACTOR_ALREADY_ENABLED',\n NotEnabled: 'TWO_FACTOR_NOT_ENABLED',\n EnrollmentExpired: 'TWO_FACTOR_ENROLLMENT_EXPIRED',\n ChallengeExpired: 'TWO_FACTOR_CHALLENGE_EXPIRED',\n RateLimited: 'TWO_FACTOR_RATE_LIMITED',\n InvalidConfiguration: 'TWO_FACTOR_INVALID_CONFIGURATION',\n ProofRequired: 'TWO_FACTOR_PROOF_REQUIRED',\n UserNotFound: 'TWO_FACTOR_USER_NOT_FOUND',\n Forbidden: 'TWO_FACTOR_FORBIDDEN',\n} as const;\n\nexport interface AXMStartTwoFactorEnrollmentInput {\n password: string;\n}\n\nexport interface AXMStartTwoFactorEnrollmentResult {\n enrollmentId: string;\n otpauthUri: string;\n /** Base32 secret for manual entry (client renders QR via ax-qrcode). */\n secretBase32: string;\n expiresAt: string;\n}\n\nexport interface AXMConfirmTwoFactorEnrollmentInput {\n enrollmentId: string;\n code: string;\n}\n\nexport interface AXMConfirmTwoFactorEnrollmentResult {\n enabled: true;\n verifiedAt: string;\n}\n\nexport interface AXMDisableTwoFactorInput {\n /** At least one of password or totpCode is required. */\n password?: string;\n totpCode?: string;\n}\n\nexport interface AXMDisableTwoFactorResult {\n enabled: false;\n}\n\nexport interface AXMGenerateTwoFactorRecoveryCodesInput {\n /** At least one of password or totpCode is required. */\n password?: string;\n totpCode?: string;\n}\n\nexport interface AXMGenerateTwoFactorRecoveryCodesResult {\n /** Plaintext codes shown once only (display format ABCD-EFGH). */\n codes: string[];\n}\n\nexport interface AXMGetTwoFactorStatusResult {\n enabled: boolean;\n enrolled: boolean;\n verifiedAt?: string | null;\n hasRecoveryCodes: boolean;\n unusedRecoveryCodeCount: number;\n}\n\nexport interface AXMAdminResetTwoFactorInput {\n userId: string;\n /** When true, only validates that 2FA is enabled; does not wipe or revoke sessions. */\n dryRun?: boolean;\n}\n\nexport interface AXMAdminResetTwoFactorResult {\n reset: boolean;\n}\n\nexport interface AXMVerifyTwoFactorLoginInput {\n challengeId: string;\n /** TOTP (6 digits) or recovery code. */\n code: string;\n rememberMe?: boolean;\n}\n\n//#endregion\n","//#region ----- User provisioning settings -----\n\n/** Platform settings owned by Security Management. */\nexport const AXMSecurityManagementSettings = {\n /**\n * Which Users-list add actions are available.\n * `create` and `invite` are primary. `both` shows them as secondary actions.\n */\n UserProvisioningMode: 'SecurityManagement:Setting:User.ProvisioningMode',\n} as const;\n\nexport const AXMUserProvisioningMode = {\n Create: 'create',\n Invite: 'invite',\n Both: 'both',\n} as const;\n\nexport type AXMUserProvisioningMode = (typeof AXMUserProvisioningMode)[keyof typeof AXMUserProvisioningMode];\n\n/** Used when the platform setting has not been saved yet. */\nexport const AXM_USER_PROVISIONING_MODE_DEFAULT = AXMUserProvisioningMode.Both;\n\n//#endregion\n","//#region ----- Imports -----\n\nimport { AXPSystemActionType } from '@acorex-platform/framework-shared/core';\nimport { AXPEntityCommandScope, type AXPEntityAction } from '@acorex-platform/framework-shared/entity';\nimport { AXM_USER_CREATE_IN_TENANT_COMMAND, AXM_USER_INVITE_COMMAND } from '../../server-commands';\nimport {\n AXM_USER_PROVISIONING_MODE_DEFAULT,\n AXMSecurityManagementSettings,\n AXMUserProvisioningMode,\n} from '../../settings.keys';\n\n//#endregion\n\n//#region ----- List actions -----\n\nconst PROVISIONING_MODE_KEY = AXMSecurityManagementSettings.UserProvisioningMode;\n\n/**\n * Hides the action unless the platform provisioning setting matches `mode`.\n * A missing value uses {@link AXM_USER_PROVISIONING_MODE_DEFAULT}.\n * Select widgets may persist either the scalar or `{ value }`.\n */\nfunction hiddenUnlessProvisioningMode(mode: AXMUserProvisioningMode): string {\n return `{{ (((await settings.get('${PROVISIONING_MODE_KEY}'))?.value ?? (await settings.get('${PROVISIONING_MODE_KEY}'))) || '${AXM_USER_PROVISIONING_MODE_DEFAULT}') !== '${mode}' }}`;\n}\n\nconst USER_ADD_COMMANDS = new Set<string>([AXM_USER_INVITE_COMMAND, AXM_USER_CREATE_IN_TENANT_COMMAND]);\n\nfunction commandNameOf(action: AXPEntityAction): string | undefined {\n return typeof action.command === 'string' ? action.command : action.command?.name;\n}\n\n/** Type-level Invite / Create actions, including the legacy Create dropdown. */\nexport function isUserProvisioningListAction(action: AXPEntityAction): boolean {\n if (action.scope !== AXPEntityCommandScope.TypeLevel) {\n return false;\n }\n if (USER_ADD_COMMANDS.has(commandNameOf(action) ?? '')) {\n return true;\n }\n return (action.items ?? []).some((child) => USER_ADD_COMMANDS.has(commandNameOf(child) ?? ''));\n}\n\nfunction provisioningAction(input: {\n name: string;\n title: string;\n icon: string;\n command: string;\n priority: 'primary' | 'secondary';\n mode: AXMUserProvisioningMode;\n order: number;\n}): AXPEntityAction {\n return {\n name: input.name,\n title: input.title,\n icon: input.icon,\n command: { name: input.command },\n priority: input.priority,\n type: AXPSystemActionType.Create,\n scope: AXPEntityCommandScope.TypeLevel,\n order: input.order,\n hidden: hiddenUnlessProvisioningMode(input.mode),\n };\n}\n\n/**\n * Users list add actions driven by the platform provisioning setting.\n * Create-only and invite-only stay primary. Both are secondary menu items.\n */\nexport function userProvisioningListActions(): AXPEntityAction[] {\n return [\n provisioningAction({\n name: 'provision-create',\n title: '@general:actions.create.title',\n icon: 'fa-light fa-user-plus',\n command: AXM_USER_CREATE_IN_TENANT_COMMAND,\n priority: 'primary',\n mode: AXMUserProvisioningMode.Create,\n order: 1,\n }),\n provisioningAction({\n name: 'provision-invite',\n title: '@security-management:users.entities.user.actions.invite.title',\n icon: 'fa-light fa-envelope',\n command: AXM_USER_INVITE_COMMAND,\n priority: 'primary',\n mode: AXMUserProvisioningMode.Invite,\n order: 1,\n }),\n provisioningAction({\n name: 'provision-invite-secondary',\n title: '@security-management:users.entities.user.actions.invite.title',\n icon: 'fa-light fa-envelope',\n command: AXM_USER_INVITE_COMMAND,\n priority: 'secondary',\n mode: AXMUserProvisioningMode.Both,\n order: 1,\n }),\n provisioningAction({\n name: 'provision-create-secondary',\n title: '@security-management:users.entities.user.actions.create-in-tenant.title',\n icon: 'fa-light fa-user-plus',\n command: AXM_USER_CREATE_IN_TENANT_COMMAND,\n priority: 'secondary',\n mode: AXMUserProvisioningMode.Both,\n order: 2,\n }),\n ];\n}\n\n//#endregion\n","export const USER_ROLES_PAGE_COMPONENT_KEY = 'user-roles-page';\n","const config = {\n i18n: 'security-management',\n profileEntity: 'Profile',\n};\nexport const RootConfig = {\n config,\n module: {\n route: 'security-management',\n name: 'SecurityManagement',\n title: `@${config.i18n}:module.title`,\n icon: 'fa-light fa-shield-halved',\n },\n entities: {\n policy: {\n name: 'Policy',\n title: `@${config.i18n}:policies.entities.policy.title`,\n titlePlural: `@${config.i18n}:policies.entities.policy.plural`,\n icon: 'fa-light fa-clipboard-list',\n },\n deviceSessions: {\n name: 'DeviceSessions',\n title: `@${config.i18n}:sessions.entities.session.title`,\n titlePlural: `@${config.i18n}:sessions.entities.session.plural`,\n icon: 'fa-light fa-laptop',\n },\n users: {\n name: 'User',\n title: `@${config.i18n}:users.entities.user.title`,\n titlePlural: `@${config.i18n}:users.entities.user.plural`,\n icon: 'fa-light fa-users',\n },\n roles: {\n name: 'Role',\n title: `@${config.i18n}:roles.entities.role.title`,\n titlePlural: `@${config.i18n}:roles.entities.role.plural`,\n icon: 'fa-light fa-user-tag',\n },\n rolePermission: {\n name: 'RolePermission',\n title: `@${config.i18n}:role-permissions.entities.role-permission.title`,\n titlePlural: `@${config.i18n}:role-permissions.entities.role-permission.plural`,\n icon: 'fa-light fa-key',\n },\n userRole: {\n name: 'UserRole',\n title: `@${config.i18n}:user-roles.entities.user-role.title`,\n titlePlural: `@${config.i18n}:user-roles.entities.user-role.plural`,\n icon: 'fa-light fa-user-tag',\n },\n profile: {\n name: 'Profile',\n title: `@${config.i18n}:profile.entities.profile.title`,\n titlePlural: `@${config.i18n}:profile.entities.profile.plural`,\n icon: 'fa-light fa-user',\n },\n identityProvider: {\n name: 'IdentityProvider',\n title: `@${config.i18n}:identity-providers.entities.identity-provider.title`,\n titlePlural: `@${config.i18n}:identity-providers.entities.identity-provider.plural`,\n icon: 'fa-light fa-id-badge',\n },\n userTwoFactor: {\n name: 'UserTwoFactor',\n title: `@${config.i18n}:user-two-factor.entities.user-two-factor.title`,\n titlePlural: `@${config.i18n}:user-two-factor.entities.user-two-factor.plural`,\n icon: 'fa-light fa-shield-keyhole',\n },\n },\n queries: {\n reports: {\n getUserEffectiveRolesHistory: 'SecurityManagement:Reports:GetUserEffectiveRolesHistory',\n getUserEffectivePermissionsHistory:\n 'SecurityManagement:Reports:GetUserEffectivePermissionsHistory',\n getRoleHoldersHistory: 'SecurityManagement:Reports:GetRoleHoldersHistory',\n getPermissionHoldersHistory: 'SecurityManagement:Reports:GetPermissionHoldersHistory',\n getUserPasswordChangeHistory: 'SecurityManagement:Reports:GetUserPasswordChangeHistory',\n },\n },\n} as const;\n","import { AXPSystemActionType, AXPWidgetsCatalog, AXPWidgetsList } from '@acorex-platform/framework-shared/core';\nimport {\n AXPEntity,\n AXPEntityCommandScope,\n createAllQueryView,\n createQueryView,\n entityMasterCrudActions,\n entityMasterRecordActions,\n} from '@acorex-platform/framework-shared/entity';\nimport { AXM_USER_ACCESS_STATE_DEFINITION_KEY } from '../../AXM_USER_ACCESS_STATE_DEFINITION_KEY';\nimport { AXM_USER_EFFECTIVE_STATE_DEFINITION_KEY } from '../../AXM_USER_EFFECTIVE_STATE_DEFINITION_KEY';\nimport {\n AXM_USER_APPROVE_JOIN_REQUEST_COMMAND,\n AXM_USER_CANCEL_INVITATION_COMMAND,\n AXM_USER_REJECT_JOIN_REQUEST_COMMAND,\n AXM_USER_RESEND_INVITATION_COMMAND,\n AXM_USER_RESET_TWO_FACTOR_COMMAND,\n AXM_USER_SEND_PASSWORD_RESET_COMMAND,\n} from '../../server-commands';\nimport { userProvisioningListActions } from './user-provisioning-list-actions';\nimport { USER_ROLES_PAGE_COMPONENT_KEY } from '../../USER_ROLES_PAGE_COMPONENT_KEY';\nimport { RootConfig } from '../../root-config';\n\nexport async function usersFactory(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.users.name,\n title: RootConfig.entities.users.title,\n icon: RootConfig.entities.users.icon,\n searchTags: [\n 'user',\n 'users',\n 'account',\n 'identity',\n 'sign-in',\n 'password',\n 'access-state',\n 'lifecycle',\n 'authorization',\n 'home-tenant',\n 'کاربر',\n 'کاربران',\n 'رمز عبور',\n 'ورود',\n 'حساب کاربری',\n ],\n formats: {\n individual: RootConfig.entities.users.title,\n plural: RootConfig.entities.users.titlePlural,\n searchResult: {\n title: '{{ displayName }}',\n description:\n '{{ context.eval(\"lastSignInAt\", { pipes: [\"timeleft\"] }) || \"@security-management:users.entities.user.fields.last-sign-in-at.never\" }}',\n },\n },\n plugins: [\n {\n name: 'status',\n options: {\n definition: 'security-management.account-state.user',\n field: 'accountState',\n isPrimary: false,\n groupId: 'user-account-access',\n title: '@security-management:users.entities.user.fields.account-lifecycle.title',\n showInCreate: false,\n generate: { views: { enabled: false } },\n },\n },\n {\n name: 'status',\n options: {\n field: 'accessState',\n definition: AXM_USER_ACCESS_STATE_DEFINITION_KEY,\n isPrimary: false,\n groupId: 'user-account-access',\n title: '@security-management:users.entities.user.fields.access-state.title',\n showInCreate: false,\n // Platform-scoped sign-in gate: display-only on User detail (tenant must not change).\n // Platform mutations should go through a dedicated ops path once client isPlatform is available.\n readonly: true,\n generate: { views: { enabled: false } },\n },\n },\n {\n name: 'status',\n options: {\n field: 'effectiveState',\n definition: AXM_USER_EFFECTIVE_STATE_DEFINITION_KEY,\n isPrimary: true,\n groupId: 'user-account-access',\n title: '@security-management:users.entities.user.fields.effective-state.title',\n showInCreate: false,\n readonly: true,\n generate: { views: { enabled: true } },\n },\n },\n { name: 'unique-fields', options: { fields: 'email', scope: 'global' } },\n { name: 'history' },\n { name: 'lock' },\n { name: 'compare' },\n { name: 'reports' },\n ],\n pages: [\n {\n componentKey: USER_ROLES_PAGE_COMPONENT_KEY,\n title: '@security-management:users.entities.user.pages.roles.title',\n icon: 'fa-light fa-user-tag',\n layout: { order: 1, position: 'after' },\n appearOn: { create: true, update: true },\n },\n ],\n groups: [\n {\n id: 'basic-info',\n title: '@general:terms.interface.basic-info',\n },\n {\n id: 'avatar',\n title: '@general:terms.common.avatar',\n icon: 'fa-light fa-image',\n },\n {\n id: 'user-account-access',\n title: '@security-management:users.entities.user.groups.account-access',\n },\n ],\n properties: [\n {\n name: 'username',\n title: '@general:terms.contact.username',\n groupId: 'basic-info',\n options: {\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: true,\n },\n },\n sort: {\n enabled: true,\n },\n },\n schema: {\n dataType: 'string',\n readonly: '{{ !!context.eval(\"id\") }}',\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {},\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'displayName',\n title: `@general:terms.common.display-name`,\n groupId: 'basic-info',\n options: {\n sort: {\n enabled: true,\n },\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: true,\n },\n },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'email',\n title: '@general:terms.communication.email',\n groupId: 'basic-info',\n options: {\n filter: {\n advance: { enabled: true },\n inline: { enabled: true },\n },\n sort: { enabled: true },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {},\n },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'rolesList',\n title: '@security-management:users.entities.user.fields.roles.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'array',\n /**\n * Display-only Role snapshots. Not a stored FK — source of truth is\n * scoped SecurityManagement.UserRole. Name must not end in Id/Ids so\n * the query planner does not join Role from this User document.\n */\n readonly: true,\n visible: false,\n interface: {\n type: AXPWidgetsList.Editors.LookupBox,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.roles.name}`,\n textField: 'title',\n valueField: 'id',\n multiple: true,\n look: 'select',\n },\n },\n },\n },\n {\n /**\n * Display-only (like rolesList). Never persisted on User documents.\n * Hydrated from session-tenant TenantUser.statusId (+ acceptedAt → accepted).\n */\n name: 'membershipStatusId',\n title: '@security-management:users.entities.user.fields.membership-status.title',\n groupId: 'user-account-access',\n schema: {\n dataType: 'string',\n readonly: true,\n nullable: true,\n visible: false,\n interface: {\n type: AXPWidgetsList.Advanced.Status,\n options: {\n definitionKey: 'security-management.status.user-invitation',\n },\n },\n },\n },\n {\n /**\n * Hidden view filter marker only; rewritten server-side to TenantUser\n * invitation.source invite or join-request. Never persisted on User documents.\n */\n name: 'membershipInviteScope',\n title: '@security-management:users.entities.user.fields.membership-invite-scope.title',\n groupId: 'user-account-access',\n schema: {\n dataType: 'string',\n readonly: true,\n visible: false,\n nullable: true,\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {},\n },\n },\n },\n {\n /**\n * Display-only. Hydrated from session-tenant TenantUser.invitation.source.\n * Used to show Approve/Reject only for pending join-requests.\n */\n name: 'membershipInvitationSource',\n title: '@security-management:users.entities.user.fields.membership-invitation-source.title',\n groupId: 'user-account-access',\n schema: {\n dataType: 'string',\n readonly: true,\n visible: false,\n nullable: true,\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {},\n },\n },\n },\n {\n name: 'homeTenantId',\n title: '@security-management:users.entities.user.fields.home-tenant.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n /** Stamped on create from session; not shown on User forms. */\n readonly: true,\n visible: false,\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {},\n },\n },\n },\n {\n name: 'password',\n title: '@security-management:users.entities.user.fields.password.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n visible: false,\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'avatar',\n title: '@general:terms.common.avatar',\n groupId: 'avatar',\n schema: {\n dataType: 'string',\n nullable: true,\n interface: {\n type: AXPWidgetsList.Advanced.Image,\n options: {\n type: 'profile-photo',\n },\n },\n },\n },\n {\n name: 'pinCode',\n title: '@security-management:users.entities.user.fields.pin-code.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n readonly: true,\n visible: false,\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n {\n name: 'passwordChangedAt',\n title: '@security-management:users.entities.user.fields.password-changed-at.title',\n groupId: 'user-account-access',\n schema: {\n dataType: 'date',\n readonly: true,\n visible: false,\n nullable: true,\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n },\n },\n },\n {\n name: 'pinChangedAt',\n title: '@security-management:users.entities.user.fields.pin-changed-at.title',\n groupId: 'user-account-access',\n schema: {\n dataType: 'date',\n readonly: true,\n visible: false,\n nullable: true,\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n },\n },\n },\n {\n name: 'lastSignInAt',\n title: '@security-management:users.entities.user.fields.last-sign-in-at.title',\n groupId: 'user-account-access',\n schema: {\n dataType: 'date',\n readonly: true,\n visible: false,\n nullable: true,\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n },\n },\n },\n {\n name: 'passwordReset',\n title: '@security-management:users.entities.user.fields.password-reset.title',\n groupId: 'user-account-access',\n schema: {\n dataType: 'object',\n readonly: true,\n visible: false,\n nullable: true,\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n },\n ],\n columns: [\n { name: 'username' },\n { name: 'displayName' },\n { name: 'email' },\n { name: 'rolesList' },\n { name: 'membershipStatusId', options: { visible: false } },\n { name: 'lastSignInAt', options: { visible: false } },\n ],\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'basic-info',\n order: 1,\n layout: { positions: { lg: { colSpan: 8, colStart: 1 } } },\n },\n {\n id: 'avatar',\n order: 2,\n layout: { positions: { lg: { colSpan: 4, colStart: 9 } } },\n },\n ],\n properties: [\n {\n name: 'username',\n layout: { positions: { lg: { colSpan: 6 } } },\n },\n {\n name: 'displayName',\n layout: { positions: { lg: { colSpan: 6 } } },\n },\n {\n name: 'email',\n layout: { positions: { lg: { colSpan: 12 } } },\n },\n {\n name: 'avatar',\n layout: {\n label: { visible: false },\n positions: { lg: { colSpan: 12, order: 1 } },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'basic-info',\n order: 1,\n layout: { positions: { lg: { colSpan: 8, colStart: 1 } } },\n },\n {\n id: 'avatar',\n order: 2,\n layout: { positions: { lg: { colSpan: 4, colStart: 9 } } },\n },\n {\n id: 'user-account-access',\n order: 3,\n layout: { positions: { lg: { colSpan: 12, colStart: 1 } } },\n },\n ],\n properties: [\n { name: 'username', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'displayName', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'email', layout: { positions: { lg: { colSpan: 6 } } } },\n {\n name: 'avatar',\n layout: {\n label: { visible: false },\n positions: { lg: { colSpan: 12, order: 1 } },\n },\n },\n { name: 'accountState', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'accessState', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'effectiveState', layout: { positions: { lg: { colSpan: 4 } } } },\n ],\n },\n single: {\n title: '{{ context.eval(\"displayName\") ?? context.eval(\"username\") }}',\n description:\n '{{ context.eval(\"lastSignInAt\", { pipes: [\"timeleft\"] }) || \"@security-management:users.entities.user.fields.last-sign-in-at.never\" }}',\n\n sections: [\n {\n id: 'basic-info',\n order: 1,\n layout: { positions: { lg: { colSpan: 8, colStart: 1 } } },\n },\n {\n id: 'avatar',\n order: 2,\n layout: { positions: { lg: { colSpan: 4, colStart: 9 } } },\n },\n {\n id: 'user-account-access',\n order: 3,\n layout: { positions: { lg: { colSpan: 12, colStart: 1 } } },\n },\n ],\n properties: [\n { name: 'username', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'displayName', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'email', layout: { positions: { lg: { colSpan: 6 } } } },\n {\n name: 'avatar',\n layout: {\n label: { visible: false },\n positions: { lg: { colSpan: 12, order: 1 } },\n },\n },\n { name: 'accountState', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'accessState', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'effectiveState', layout: { positions: { lg: { colSpan: 4 } } } },\n ],\n actions: [\n {\n title: '@security-management:users.entities.user.actions.send-password-reset.title',\n icon: 'fa-light fa-envelope',\n command: AXM_USER_SEND_PASSWORD_RESET_COMMAND,\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: '@security-management:users.entities.user.actions.reset-two-factor.title',\n icon: 'fa-light fa-shield-keyhole',\n command: AXM_USER_RESET_TWO_FACTOR_COMMAND,\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: '@security-management:users.entities.user.actions.resend-invitation.title',\n icon: 'fa-light fa-paper-plane',\n command: AXM_USER_RESEND_INVITATION_COMMAND,\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n hidden:\n '{{ context.eval(\"membershipStatusId\") !== \"pending\" || context.eval(\"membershipInvitationSource\") !== \"invite\" }}',\n },\n {\n title: '@security-management:users.entities.user.actions.cancel-invitation.title',\n icon: 'fa-light fa-user-xmark',\n command: AXM_USER_CANCEL_INVITATION_COMMAND,\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n hidden:\n '{{ context.eval(\"membershipStatusId\") !== \"pending\" || context.eval(\"membershipInvitationSource\") !== \"invite\" }}',\n },\n {\n title: '@security-management:users.entities.user.actions.approve-join-request.title',\n icon: 'fa-light fa-user-check',\n command: AXM_USER_APPROVE_JOIN_REQUEST_COMMAND,\n color: 'success',\n priority: 'primary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n hidden:\n '{{ context.eval(\"membershipStatusId\") !== \"pending\" || context.eval(\"membershipInvitationSource\") !== \"join-request\" }}',\n },\n {\n title: '@security-management:users.entities.user.actions.reject-join-request.title',\n icon: 'fa-light fa-user-xmark',\n command: AXM_USER_REJECT_JOIN_REQUEST_COMMAND,\n color: 'warning',\n priority: 'primary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n hidden:\n '{{ context.eval(\"membershipStatusId\") !== \"pending\" || context.eval(\"membershipInvitationSource\") !== \"join-request\" }}',\n },\n ...entityMasterRecordActions(),\n ],\n },\n list: {\n actions: [\n ...userProvisioningListActions(),\n ...entityMasterCrudActions({ create: false }),\n ],\n views: [\n createAllQueryView({\n sorts: [{ name: 'displayName', dir: 'asc' }],\n }),\n createQueryView(\n 'invitations',\n '@security-management:users.entities.user.views.invitations.title',\n true,\n {\n conditions: [\n {\n name: 'membershipInviteScope',\n operator: { type: 'equal' },\n value: 'lifecycle',\n hidden: true,\n },\n ],\n columns: [\n 'username',\n 'displayName',\n 'email',\n 'membershipStatusId',\n 'rolesList',\n ],\n sorts: [{ name: 'displayName', dir: 'asc' }],\n },\n ),\n ],\n },\n card: {\n enabled: true,\n header: {\n title: 'displayName',\n description:\n '{{ context.eval(\"lastSignInAt\", { pipes: [\"timeleft\"] }) || \"@security-management:users.entities.user.fields.last-sign-in-at.never\" }}',\n avatar: 'avatar',\n },\n fields: [\n { name: 'username', display: 'meta' },\n { name: 'email', display: 'meta' },\n { name: 'rolesList', display: 'simple' },\n ],\n },\n },\n },\n };\n return entityDef;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './entity-entry.users';\n"],"names":[],"mappings":"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"}
@@ -88,15 +88,15 @@ const RootConfig = {
88
88
  const securityManagementLocalEntityCatalog = {
89
89
  moduleName: RootConfig.module.name,
90
90
  loaders: {
91
- [RootConfig.entities.deviceSessions.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-device-sessions.entity-CU-5X-qu.mjs').then((m) => m.deviceSessionsFactory()),
92
- [RootConfig.entities.identityProvider.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-identity-provider.entity-Bld1buTd.mjs').then((m) => m.identityProviderFactory()),
93
- [RootConfig.entities.policy.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-policy.entity-DZVzHzVM.mjs').then((m) => m.policyFactory()),
94
- [RootConfig.entities.profile.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-profile.entity-BCy5fNc9.mjs').then((m) => m.profileFactory()),
95
- [RootConfig.entities.rolePermission.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-role-permission.entity-DcvYjfZm.mjs').then((m) => m.rolePermissionFactory()),
96
- [RootConfig.entities.roles.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-roles.entity-lNKDIDry.mjs').then((m) => m.rolesFactory()),
97
- [RootConfig.entities.userRole.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-user-role.entity-DKII6o5N.mjs').then((m) => m.userRoleFactory()),
98
- [RootConfig.entities.users.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-users.entity-CJ7x5rjC.mjs').then((m) => m.usersFactory()),
99
- [RootConfig.entities.userTwoFactor.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-user-two-factor.entity-ge21b3mE.mjs').then((m) => m.userTwoFactorFactory()),
91
+ [RootConfig.entities.deviceSessions.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-device-sessions.entity-lwQtCJoy.mjs').then((m) => m.deviceSessionsFactory()),
92
+ [RootConfig.entities.identityProvider.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-identity-provider.entity-DZfizo-n.mjs').then((m) => m.identityProviderFactory()),
93
+ [RootConfig.entities.policy.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-policy.entity-Dkl_6Iio.mjs').then((m) => m.policyFactory()),
94
+ [RootConfig.entities.profile.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-profile.entity-Ddbd-rAG.mjs').then((m) => m.profileFactory()),
95
+ [RootConfig.entities.rolePermission.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-role-permission.entity-WCgik8MV.mjs').then((m) => m.rolePermissionFactory()),
96
+ [RootConfig.entities.roles.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-roles.entity-CRZftClq.mjs').then((m) => m.rolesFactory()),
97
+ [RootConfig.entities.userRole.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-user-role.entity-9QpoRCOF.mjs').then((m) => m.userRoleFactory()),
98
+ [RootConfig.entities.users.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-users.entity-DuC5cfIb.mjs').then((m) => m.usersFactory()),
99
+ [RootConfig.entities.userTwoFactor.name]: () => import('./acorex-platform-module-security-management-client-contracts-entity-catalog-user-two-factor.entity-C34VzcYk.mjs').then((m) => m.userTwoFactorFactory()),
100
100
  },
101
101
  };
102
102
  //#endregion
@@ -106,4 +106,4 @@ const securityManagementLocalEntityCatalog = {
106
106
  */
107
107
 
108
108
  export { RootConfig as R, securityManagementLocalEntityCatalog as s };
109
- //# sourceMappingURL=acorex-platform-module-security-management-client-contracts-entity-catalog-acorex-platform-module-security-management-client-contracts-entity-catalog-B4oiF8FO.mjs.map
109
+ //# sourceMappingURL=acorex-platform-module-security-management-client-contracts-entity-catalog-acorex-platform-module-security-management-client-contracts-entity-catalog-JP3zTrun.mjs.map