@acorex-platform/module-security-management-server 0.0.15 → 2.0.0-next.42

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 (453) hide show
  1. package/contracts/src/AXM_USER_ACCESS_STATE_DEFINITION_KEY.js.map +1 -1
  2. package/contracts/src/AXM_USER_EFFECTIVE_STATE_DEFINITION_KEY.js.map +1 -1
  3. package/contracts/src/ROLE_PERMISSIONS_PAGE_COMPONENT_KEY.d.ts +2 -0
  4. package/contracts/src/ROLE_PERMISSIONS_PAGE_COMPONENT_KEY.js +6 -0
  5. package/contracts/src/ROLE_PERMISSIONS_PAGE_COMPONENT_KEY.js.map +1 -0
  6. package/contracts/src/USER_ROLES_PAGE_COMPONENT_KEY.d.ts +1 -0
  7. package/contracts/src/USER_ROLES_PAGE_COMPONENT_KEY.js +5 -0
  8. package/contracts/src/USER_ROLES_PAGE_COMPONENT_KEY.js.map +1 -0
  9. package/contracts/src/create-application-role-rows.util.d.ts +15 -0
  10. package/contracts/src/create-application-role-rows.util.js +67 -0
  11. package/contracts/src/create-application-role-rows.util.js.map +1 -0
  12. package/contracts/src/device-session-admin-scope.d.ts +15 -0
  13. package/contracts/src/device-session-admin-scope.js +16 -0
  14. package/contracts/src/device-session-admin-scope.js.map +1 -0
  15. package/contracts/src/entities/device-sessions/device-sessions.entity.js +50 -1
  16. package/contracts/src/entities/device-sessions/device-sessions.entity.js.map +1 -1
  17. package/contracts/src/entities/device-sessions/device-sessions.types.d.ts +7 -0
  18. package/contracts/src/entities/device-sessions/device-sessions.types.js.map +1 -1
  19. package/contracts/src/entities/device-sessions/index.d.ts +0 -1
  20. package/contracts/src/entities/device-sessions/index.js +0 -1
  21. package/contracts/src/entities/device-sessions/index.js.map +1 -1
  22. package/contracts/src/entities/identity-provider/identity-provider.entity.d.ts +2 -0
  23. package/contracts/src/entities/identity-provider/identity-provider.entity.js +453 -0
  24. package/contracts/src/entities/identity-provider/identity-provider.entity.js.map +1 -0
  25. package/contracts/src/entities/identity-provider/identity-provider.types.d.ts +61 -0
  26. package/contracts/src/entities/identity-provider/identity-provider.types.js +14 -0
  27. package/contracts/src/entities/identity-provider/identity-provider.types.js.map +1 -0
  28. package/contracts/src/entities/identity-provider/index.d.ts +1 -0
  29. package/contracts/src/entities/identity-provider/index.js +5 -0
  30. package/contracts/src/entities/identity-provider/index.js.map +1 -0
  31. package/contracts/src/entities/index.d.ts +4 -0
  32. package/contracts/src/entities/index.js +4 -0
  33. package/contracts/src/entities/index.js.map +1 -1
  34. package/contracts/src/entities/policy/index.d.ts +0 -1
  35. package/contracts/src/entities/policy/index.js +0 -1
  36. package/contracts/src/entities/policy/index.js.map +1 -1
  37. package/contracts/src/entities/policy/policy.entity.js +15 -0
  38. package/contracts/src/entities/policy/policy.entity.js.map +1 -1
  39. package/contracts/src/entities/policy/policy.types.js.map +1 -1
  40. package/contracts/src/entities/profile/index.d.ts +0 -1
  41. package/contracts/src/entities/profile/index.js +0 -1
  42. package/contracts/src/entities/profile/index.js.map +1 -1
  43. package/contracts/src/entities/profile/profile.entity.js +15 -0
  44. package/contracts/src/entities/profile/profile.entity.js.map +1 -1
  45. package/contracts/src/entities/profile/profile.types.js.map +1 -1
  46. package/contracts/src/entities/role-permission/index.d.ts +1 -0
  47. package/contracts/src/entities/role-permission/index.js +5 -0
  48. package/contracts/src/entities/role-permission/index.js.map +1 -0
  49. package/contracts/src/entities/role-permission/role-permission.entity.d.ts +2 -0
  50. package/contracts/src/entities/role-permission/role-permission.entity.js +163 -0
  51. package/contracts/src/entities/role-permission/role-permission.entity.js.map +1 -0
  52. package/contracts/src/entities/role-permission/role-permission.types.d.ts +11 -0
  53. package/contracts/src/entities/role-permission/role-permission.types.js +5 -0
  54. package/contracts/src/entities/role-permission/role-permission.types.js.map +1 -0
  55. package/contracts/src/entities/roles/index.d.ts +0 -1
  56. package/contracts/src/entities/roles/index.js +0 -1
  57. package/contracts/src/entities/roles/index.js.map +1 -1
  58. package/contracts/src/entities/roles/roles.entity.js +73 -144
  59. package/contracts/src/entities/roles/roles.entity.js.map +1 -1
  60. package/contracts/src/entities/roles/roles.types.d.ts +4 -1
  61. package/contracts/src/entities/roles/roles.types.js.map +1 -1
  62. package/contracts/src/entities/user-role/index.d.ts +1 -0
  63. package/{src/lib/seed/tenant → contracts/src/entities/user-role}/index.js +1 -1
  64. package/contracts/src/entities/user-role/index.js.map +1 -0
  65. package/contracts/src/entities/user-role/user-role.entity.d.ts +2 -0
  66. package/contracts/src/entities/user-role/user-role.entity.js +164 -0
  67. package/contracts/src/entities/user-role/user-role.entity.js.map +1 -0
  68. package/contracts/src/entities/user-role/user-role.types.d.ts +11 -0
  69. package/contracts/src/entities/user-role/user-role.types.js +5 -0
  70. package/contracts/src/entities/user-role/user-role.types.js.map +1 -0
  71. package/contracts/src/entities/user-two-factor/index.d.ts +2 -0
  72. package/contracts/src/entities/user-two-factor/index.js +8 -0
  73. package/contracts/src/entities/user-two-factor/index.js.map +1 -0
  74. package/contracts/src/entities/user-two-factor/user-two-factor.entity.d.ts +6 -0
  75. package/contracts/src/entities/user-two-factor/user-two-factor.entity.js +103 -0
  76. package/contracts/src/entities/user-two-factor/user-two-factor.entity.js.map +1 -0
  77. package/contracts/src/entities/user-two-factor/user-two-factor.types.d.ts +24 -0
  78. package/contracts/src/entities/user-two-factor/user-two-factor.types.js +4 -0
  79. package/contracts/src/entities/user-two-factor/user-two-factor.types.js.map +1 -0
  80. package/contracts/src/entities/users/index.d.ts +1 -1
  81. package/contracts/src/entities/users/index.js +1 -1
  82. package/contracts/src/entities/users/index.js.map +1 -1
  83. package/contracts/src/entities/users/user-provisioning-list-actions.d.ts +8 -0
  84. package/contracts/src/entities/users/user-provisioning-list-actions.js +95 -0
  85. package/contracts/src/entities/users/user-provisioning-list-actions.js.map +1 -0
  86. package/contracts/src/entities/users/users.entity.js +341 -283
  87. package/contracts/src/entities/users/users.entity.js.map +1 -1
  88. package/contracts/src/entities/users/users.types.d.ts +24 -1
  89. package/contracts/src/entities/users/users.types.js.map +1 -1
  90. package/contracts/src/entity-catalog.d.ts +7 -0
  91. package/contracts/src/entity-catalog.js +28 -0
  92. package/contracts/src/entity-catalog.js.map +1 -0
  93. package/contracts/src/entity-entry.device-sessions.d.ts +1 -0
  94. package/contracts/src/entity-entry.device-sessions.js +6 -0
  95. package/contracts/src/entity-entry.device-sessions.js.map +1 -0
  96. package/contracts/src/entity-entry.identity-provider.d.ts +1 -0
  97. package/contracts/src/entity-entry.identity-provider.js +6 -0
  98. package/contracts/src/entity-entry.identity-provider.js.map +1 -0
  99. package/contracts/src/entity-entry.policy.d.ts +1 -0
  100. package/contracts/src/entity-entry.policy.js +6 -0
  101. package/contracts/src/entity-entry.policy.js.map +1 -0
  102. package/contracts/src/entity-entry.profile.d.ts +1 -0
  103. package/contracts/src/entity-entry.profile.js +6 -0
  104. package/contracts/src/entity-entry.profile.js.map +1 -0
  105. package/contracts/src/entity-entry.role-permission.d.ts +1 -0
  106. package/contracts/src/entity-entry.role-permission.js +6 -0
  107. package/contracts/src/entity-entry.role-permission.js.map +1 -0
  108. package/contracts/src/entity-entry.roles.d.ts +1 -0
  109. package/contracts/src/entity-entry.roles.js +6 -0
  110. package/contracts/src/entity-entry.roles.js.map +1 -0
  111. package/contracts/src/entity-entry.user-role.d.ts +1 -0
  112. package/contracts/src/entity-entry.user-role.js +6 -0
  113. package/contracts/src/entity-entry.user-role.js.map +1 -0
  114. package/contracts/src/entity-entry.user-two-factor.d.ts +1 -0
  115. package/contracts/src/entity-entry.user-two-factor.js +6 -0
  116. package/contracts/src/entity-entry.user-two-factor.js.map +1 -0
  117. package/contracts/src/entity-entry.users.d.ts +1 -0
  118. package/contracts/src/entity-entry.users.js +6 -0
  119. package/contracts/src/entity-entry.users.js.map +1 -0
  120. package/contracts/src/features.keys.d.ts +4 -0
  121. package/contracts/src/features.keys.js +4 -0
  122. package/contracts/src/features.keys.js.map +1 -1
  123. package/contracts/src/index.d.ts +13 -1
  124. package/contracts/src/index.js +13 -1
  125. package/contracts/src/index.js.map +1 -1
  126. package/contracts/src/invite-application-role-rows.util.d.ts +16 -0
  127. package/contracts/src/invite-application-role-rows.util.js +68 -0
  128. package/contracts/src/invite-application-role-rows.util.js.map +1 -0
  129. package/contracts/src/invite-assignable-roles.util.d.ts +34 -0
  130. package/contracts/src/invite-assignable-roles.util.js +75 -0
  131. package/contracts/src/invite-assignable-roles.util.js.map +1 -0
  132. package/contracts/src/lib/context.definitions.d.ts +2 -0
  133. package/contracts/src/lib/context.definitions.js +15 -0
  134. package/contracts/src/lib/context.definitions.js.map +1 -0
  135. package/contracts/src/manifest.d.ts +6 -0
  136. package/contracts/src/manifest.js +24 -0
  137. package/contracts/src/manifest.js.map +1 -0
  138. package/contracts/src/menu.keys.d.ts +1 -0
  139. package/contracts/src/menu.keys.js +1 -0
  140. package/contracts/src/menu.keys.js.map +1 -1
  141. package/contracts/src/permission.keys.d.ts +48 -18
  142. package/contracts/src/permission.keys.js +49 -21
  143. package/contracts/src/permission.keys.js.map +1 -1
  144. package/contracts/src/resolve-user-effective-state.d.ts +10 -0
  145. package/contracts/src/resolve-user-effective-state.js +46 -0
  146. package/contracts/src/resolve-user-effective-state.js.map +1 -0
  147. package/contracts/src/root-config.d.ts +33 -0
  148. package/contracts/src/root-config.js +33 -0
  149. package/contracts/src/root-config.js.map +1 -1
  150. package/contracts/src/server-commands.d.ts +340 -0
  151. package/contracts/src/server-commands.js +88 -0
  152. package/contracts/src/server-commands.js.map +1 -0
  153. package/contracts/src/settings.keys.d.ts +16 -0
  154. package/contracts/src/settings.keys.js +21 -0
  155. package/contracts/src/settings.keys.js.map +1 -0
  156. package/contracts/src/user-access-state.js.map +1 -1
  157. package/contracts/src/user-effective-state.js.map +1 -1
  158. package/contracts/src/user-invitation.d.ts +41 -0
  159. package/contracts/src/user-invitation.js +18 -0
  160. package/contracts/src/user-invitation.js.map +1 -0
  161. package/contracts/src/user-password-reset.d.ts +9 -0
  162. package/contracts/src/user-password-reset.js +5 -0
  163. package/contracts/src/user-password-reset.js.map +1 -0
  164. package/package.json +16 -11
  165. package/server/src/index.d.ts +3 -0
  166. package/server/src/index.js +11 -0
  167. package/server/src/index.js.map +1 -0
  168. package/server/src/lib/effective-access-history/effective-access-history.service.d.ts +35 -0
  169. package/server/src/lib/effective-access-history/effective-access-history.service.js +486 -0
  170. package/server/src/lib/effective-access-history/effective-access-history.service.js.map +1 -0
  171. package/server/src/lib/effective-access-history/effective-access-history.types.d.ts +64 -0
  172. package/server/src/lib/effective-access-history/effective-access-history.types.js +5 -0
  173. package/server/src/lib/effective-access-history/effective-access-history.types.js.map +1 -0
  174. package/server/src/lib/effective-access-history/version-as-of.util.d.ts +37 -0
  175. package/server/src/lib/effective-access-history/version-as-of.util.js +167 -0
  176. package/server/src/lib/effective-access-history/version-as-of.util.js.map +1 -0
  177. package/server/src/lib/entities/index.d.ts +1 -0
  178. package/server/src/lib/entities/index.js +5 -0
  179. package/{src/lib/seed/tenant → server/src/lib/entities}/index.js.map +1 -1
  180. package/server/src/lib/entities/security-management.entity-catalog.d.ts +1 -0
  181. package/server/src/lib/entities/security-management.entity-catalog.js +12 -0
  182. package/server/src/lib/entities/security-management.entity-catalog.js.map +1 -0
  183. package/server/src/lib/handlers/security-report.handlers.d.ts +36 -0
  184. package/server/src/lib/handlers/security-report.handlers.js +164 -0
  185. package/server/src/lib/handlers/security-report.handlers.js.map +1 -0
  186. package/server/src/lib/identity-provider/auth-oauth-clients.constants.d.ts +5 -0
  187. package/server/src/lib/identity-provider/auth-oauth-clients.constants.js +11 -0
  188. package/server/src/lib/identity-provider/auth-oauth-clients.constants.js.map +1 -0
  189. package/server/src/lib/identity-provider/identity-provider-catalog.service.d.ts +20 -0
  190. package/server/src/lib/identity-provider/identity-provider-catalog.service.js +169 -0
  191. package/server/src/lib/identity-provider/identity-provider-catalog.service.js.map +1 -0
  192. package/server/src/lib/identity-provider/identity-provider-ids.constants.d.ts +8 -0
  193. package/server/src/lib/identity-provider/identity-provider-ids.constants.js +19 -0
  194. package/server/src/lib/identity-provider/identity-provider-ids.constants.js.map +1 -0
  195. package/server/src/lib/identity-provider/identity-provider-stub.bootstrap.d.ts +12 -0
  196. package/server/src/lib/identity-provider/identity-provider-stub.bootstrap.js +48 -0
  197. package/server/src/lib/identity-provider/identity-provider-stub.bootstrap.js.map +1 -0
  198. package/server/src/lib/identity-provider/identity-provider.constants.d.ts +1 -0
  199. package/server/src/lib/identity-provider/identity-provider.constants.js +7 -0
  200. package/server/src/lib/identity-provider/identity-provider.constants.js.map +1 -0
  201. package/server/src/lib/middlewares/device-sessions-active.middleware.d.ts +15 -0
  202. package/server/src/lib/middlewares/device-sessions-active.middleware.js +76 -0
  203. package/server/src/lib/middlewares/device-sessions-active.middleware.js.map +1 -0
  204. package/server/src/lib/middlewares/device-sessions-app-scope.middleware.d.ts +29 -0
  205. package/server/src/lib/middlewares/device-sessions-app-scope.middleware.js +137 -0
  206. package/server/src/lib/middlewares/device-sessions-app-scope.middleware.js.map +1 -0
  207. package/server/src/lib/middlewares/device-sessions-app-scope.util.d.ts +41 -0
  208. package/server/src/lib/middlewares/device-sessions-app-scope.util.js +69 -0
  209. package/server/src/lib/middlewares/device-sessions-app-scope.util.js.map +1 -0
  210. package/server/src/lib/middlewares/device-sessions-token-revoke.middleware.d.ts +18 -0
  211. package/server/src/lib/middlewares/device-sessions-token-revoke.middleware.js +90 -0
  212. package/server/src/lib/middlewares/device-sessions-token-revoke.middleware.js.map +1 -0
  213. package/server/src/lib/middlewares/user-assigned-roles.middleware.d.ts +36 -0
  214. package/server/src/lib/middlewares/user-assigned-roles.middleware.js +359 -0
  215. package/server/src/lib/middlewares/user-assigned-roles.middleware.js.map +1 -0
  216. package/server/src/lib/middlewares/user-effective-state.middleware.d.ts +13 -0
  217. package/server/src/lib/middlewares/user-effective-state.middleware.js +57 -0
  218. package/server/src/lib/middlewares/user-effective-state.middleware.js.map +1 -0
  219. package/server/src/lib/middlewares/user-invitation-list.middleware.d.ts +32 -0
  220. package/server/src/lib/middlewares/user-invitation-list.middleware.js +250 -0
  221. package/server/src/lib/middlewares/user-invitation-list.middleware.js.map +1 -0
  222. package/server/src/lib/middlewares/user-profile-write.middleware.d.ts +18 -0
  223. package/server/src/lib/middlewares/user-profile-write.middleware.js +206 -0
  224. package/server/src/lib/middlewares/user-profile-write.middleware.js.map +1 -0
  225. package/server/src/lib/password-reset/change-own-password.command.d.ts +8 -0
  226. package/server/src/lib/password-reset/change-own-password.command.js +38 -0
  227. package/server/src/lib/password-reset/change-own-password.command.js.map +1 -0
  228. package/server/src/lib/password-reset/complete-password-reset.command.d.ts +8 -0
  229. package/server/src/lib/password-reset/complete-password-reset.command.js +37 -0
  230. package/server/src/lib/password-reset/complete-password-reset.command.js.map +1 -0
  231. package/server/src/lib/password-reset/get-own-password-status.command.d.ts +8 -0
  232. package/server/src/lib/password-reset/get-own-password-status.command.js +31 -0
  233. package/server/src/lib/password-reset/get-own-password-status.command.js.map +1 -0
  234. package/server/src/lib/password-reset/send-password-reset-email.command.d.ts +20 -0
  235. package/server/src/lib/password-reset/send-password-reset-email.command.js +43 -0
  236. package/server/src/lib/password-reset/send-password-reset-email.command.js.map +1 -0
  237. package/server/src/lib/password-reset/user-change-password.service.d.ts +24 -0
  238. package/server/src/lib/password-reset/user-change-password.service.js +92 -0
  239. package/server/src/lib/password-reset/user-change-password.service.js.map +1 -0
  240. package/server/src/lib/password-reset/user-password-reset.service.d.ts +26 -0
  241. package/server/src/lib/password-reset/user-password-reset.service.js +221 -0
  242. package/server/src/lib/password-reset/user-password-reset.service.js.map +1 -0
  243. package/server/src/lib/queries/get-permission-holders-history.query.d.ts +4 -0
  244. package/server/src/lib/queries/get-permission-holders-history.query.definition.d.ts +5 -0
  245. package/server/src/lib/queries/get-permission-holders-history.query.definition.js +38 -0
  246. package/server/src/lib/queries/get-permission-holders-history.query.definition.js.map +1 -0
  247. package/server/src/lib/queries/get-permission-holders-history.query.js +25 -0
  248. package/server/src/lib/queries/get-permission-holders-history.query.js.map +1 -0
  249. package/server/src/lib/queries/get-role-holders-history.query.d.ts +4 -0
  250. package/server/src/lib/queries/get-role-holders-history.query.definition.d.ts +5 -0
  251. package/server/src/lib/queries/get-role-holders-history.query.definition.js +38 -0
  252. package/server/src/lib/queries/get-role-holders-history.query.definition.js.map +1 -0
  253. package/server/src/lib/queries/get-role-holders-history.query.js +25 -0
  254. package/server/src/lib/queries/get-role-holders-history.query.js.map +1 -0
  255. package/server/src/lib/queries/get-user-effective-permissions-history.query.d.ts +4 -0
  256. package/server/src/lib/queries/get-user-effective-permissions-history.query.definition.d.ts +5 -0
  257. package/server/src/lib/queries/get-user-effective-permissions-history.query.definition.js +35 -0
  258. package/server/src/lib/queries/get-user-effective-permissions-history.query.definition.js.map +1 -0
  259. package/server/src/lib/queries/get-user-effective-permissions-history.query.js +26 -0
  260. package/server/src/lib/queries/get-user-effective-permissions-history.query.js.map +1 -0
  261. package/server/src/lib/queries/get-user-effective-roles-history.query.d.ts +4 -0
  262. package/server/src/lib/queries/get-user-effective-roles-history.query.definition.d.ts +5 -0
  263. package/server/src/lib/queries/get-user-effective-roles-history.query.definition.js +36 -0
  264. package/server/src/lib/queries/get-user-effective-roles-history.query.definition.js.map +1 -0
  265. package/server/src/lib/queries/get-user-effective-roles-history.query.js +25 -0
  266. package/server/src/lib/queries/get-user-effective-roles-history.query.js.map +1 -0
  267. package/server/src/lib/queries/get-user-password-change-history.query.d.ts +4 -0
  268. package/server/src/lib/queries/get-user-password-change-history.query.definition.d.ts +5 -0
  269. package/server/src/lib/queries/get-user-password-change-history.query.definition.js +33 -0
  270. package/server/src/lib/queries/get-user-password-change-history.query.definition.js.map +1 -0
  271. package/server/src/lib/queries/get-user-password-change-history.query.js +23 -0
  272. package/server/src/lib/queries/get-user-password-change-history.query.js.map +1 -0
  273. package/server/src/lib/queries/security-query.helpers.d.ts +47 -0
  274. package/server/src/lib/queries/security-query.helpers.js +184 -0
  275. package/server/src/lib/queries/security-query.helpers.js.map +1 -0
  276. package/server/src/lib/reports/password-change-history.service.d.ts +14 -0
  277. package/server/src/lib/reports/password-change-history.service.js +74 -0
  278. package/server/src/lib/reports/password-change-history.service.js.map +1 -0
  279. package/server/src/lib/reports/permission-display-catalog.d.ts +7 -0
  280. package/server/src/lib/reports/permission-display-catalog.js +101 -0
  281. package/server/src/lib/reports/permission-display-catalog.js.map +1 -0
  282. package/server/src/lib/reports/security-report-definition.provider.d.ts +5 -0
  283. package/server/src/lib/reports/security-report-definition.provider.js +23 -0
  284. package/server/src/lib/reports/security-report-definition.provider.js.map +1 -0
  285. package/server/src/lib/reports/security-report-parameter-groups.d.ts +343 -0
  286. package/server/src/lib/reports/security-report-parameter-groups.js +167 -0
  287. package/server/src/lib/reports/security-report-parameter-groups.js.map +1 -0
  288. package/server/src/lib/reports/security-report-scope.constants.d.ts +5 -0
  289. package/server/src/lib/reports/security-report-scope.constants.js +11 -0
  290. package/server/src/lib/reports/security-report-scope.constants.js.map +1 -0
  291. package/server/src/lib/reports/security-report.definitions.d.ts +12 -0
  292. package/server/src/lib/reports/security-report.definitions.js +386 -0
  293. package/server/src/lib/reports/security-report.definitions.js.map +1 -0
  294. package/server/src/lib/security-management-entity-storage.bootstrap.d.ts +26 -0
  295. package/server/src/lib/security-management-entity-storage.bootstrap.js +56 -0
  296. package/server/src/lib/security-management-entity-storage.bootstrap.js.map +1 -0
  297. package/server/src/lib/security-management-server.module.d.ts +7 -0
  298. package/server/src/lib/security-management-server.module.js +190 -0
  299. package/server/src/lib/security-management-server.module.js.map +1 -0
  300. package/server/src/lib/two-factor/admin-reset-two-factor.command.d.ts +8 -0
  301. package/server/src/lib/two-factor/admin-reset-two-factor.command.js +35 -0
  302. package/server/src/lib/two-factor/admin-reset-two-factor.command.js.map +1 -0
  303. package/server/src/lib/two-factor/confirm-two-factor-enrollment.command.d.ts +8 -0
  304. package/server/src/lib/two-factor/confirm-two-factor-enrollment.command.js +34 -0
  305. package/server/src/lib/two-factor/confirm-two-factor-enrollment.command.js.map +1 -0
  306. package/server/src/lib/two-factor/disable-two-factor.command.d.ts +8 -0
  307. package/server/src/lib/two-factor/disable-two-factor.command.js +31 -0
  308. package/server/src/lib/two-factor/disable-two-factor.command.js.map +1 -0
  309. package/server/src/lib/two-factor/generate-two-factor-recovery-codes.command.d.ts +8 -0
  310. package/server/src/lib/two-factor/generate-two-factor-recovery-codes.command.js +34 -0
  311. package/server/src/lib/two-factor/generate-two-factor-recovery-codes.command.js.map +1 -0
  312. package/server/src/lib/two-factor/get-two-factor-status.command.d.ts +8 -0
  313. package/server/src/lib/two-factor/get-two-factor-status.command.js +31 -0
  314. package/server/src/lib/two-factor/get-two-factor-status.command.js.map +1 -0
  315. package/server/src/lib/two-factor/recovery-codes.util.d.ts +11 -0
  316. package/server/src/lib/two-factor/recovery-codes.util.js +73 -0
  317. package/server/src/lib/two-factor/recovery-codes.util.js.map +1 -0
  318. package/server/src/lib/two-factor/start-two-factor-enrollment.command.d.ts +8 -0
  319. package/server/src/lib/two-factor/start-two-factor-enrollment.command.js +31 -0
  320. package/server/src/lib/two-factor/start-two-factor-enrollment.command.js.map +1 -0
  321. package/server/src/lib/two-factor/totp.util.d.ts +32 -0
  322. package/server/src/lib/two-factor/totp.util.js +128 -0
  323. package/server/src/lib/two-factor/totp.util.js.map +1 -0
  324. package/server/src/lib/two-factor/two-factor-encryption.util.d.ts +25 -0
  325. package/server/src/lib/two-factor/two-factor-encryption.util.js +123 -0
  326. package/server/src/lib/two-factor/two-factor-encryption.util.js.map +1 -0
  327. package/server/src/lib/two-factor/two-factor-gate.bootstrap.d.ts +9 -0
  328. package/server/src/lib/two-factor/two-factor-gate.bootstrap.js +65 -0
  329. package/server/src/lib/two-factor/two-factor-gate.bootstrap.js.map +1 -0
  330. package/server/src/lib/two-factor/two-factor-redis.store.d.ts +63 -0
  331. package/server/src/lib/two-factor/two-factor-redis.store.js +321 -0
  332. package/server/src/lib/two-factor/two-factor-redis.store.js.map +1 -0
  333. package/server/src/lib/two-factor/user-two-factor.service.d.ts +62 -0
  334. package/server/src/lib/two-factor/user-two-factor.service.js +573 -0
  335. package/server/src/lib/two-factor/user-two-factor.service.js.map +1 -0
  336. package/server/src/lib/two-factor/verify-two-factor-login.command.d.ts +18 -0
  337. package/server/src/lib/two-factor/verify-two-factor-login.command.js +54 -0
  338. package/server/src/lib/two-factor/verify-two-factor-login.command.js.map +1 -0
  339. package/server/src/lib/user-invitation/accept-invitation.command.d.ts +8 -0
  340. package/server/src/lib/user-invitation/accept-invitation.command.js +41 -0
  341. package/server/src/lib/user-invitation/accept-invitation.command.js.map +1 -0
  342. package/server/src/lib/user-invitation/accept-my-invitation.command.d.ts +8 -0
  343. package/server/src/lib/user-invitation/accept-my-invitation.command.js +40 -0
  344. package/server/src/lib/user-invitation/accept-my-invitation.command.js.map +1 -0
  345. package/server/src/lib/user-invitation/approve-join-request.command.d.ts +8 -0
  346. package/server/src/lib/user-invitation/approve-join-request.command.js +41 -0
  347. package/server/src/lib/user-invitation/approve-join-request.command.js.map +1 -0
  348. package/server/src/lib/user-invitation/cancel-invitation.command.d.ts +8 -0
  349. package/server/src/lib/user-invitation/cancel-invitation.command.js +37 -0
  350. package/server/src/lib/user-invitation/cancel-invitation.command.js.map +1 -0
  351. package/server/src/lib/user-invitation/cancel-my-join-request.command.d.ts +8 -0
  352. package/server/src/lib/user-invitation/cancel-my-join-request.command.js +40 -0
  353. package/server/src/lib/user-invitation/cancel-my-join-request.command.js.map +1 -0
  354. package/server/src/lib/user-invitation/create-user-in-tenant.command.d.ts +8 -0
  355. package/server/src/lib/user-invitation/create-user-in-tenant.command.js +37 -0
  356. package/server/src/lib/user-invitation/create-user-in-tenant.command.js.map +1 -0
  357. package/server/src/lib/user-invitation/decline-invitation.command.d.ts +8 -0
  358. package/server/src/lib/user-invitation/decline-invitation.command.js +37 -0
  359. package/server/src/lib/user-invitation/decline-invitation.command.js.map +1 -0
  360. package/server/src/lib/user-invitation/invite-user.command.d.ts +8 -0
  361. package/server/src/lib/user-invitation/invite-user.command.js +37 -0
  362. package/server/src/lib/user-invitation/invite-user.command.js.map +1 -0
  363. package/server/src/lib/user-invitation/list-invite-assignable-roles.command.d.ts +8 -0
  364. package/server/src/lib/user-invitation/list-invite-assignable-roles.command.js +41 -0
  365. package/server/src/lib/user-invitation/list-invite-assignable-roles.command.js.map +1 -0
  366. package/server/src/lib/user-invitation/list-my-join-requests.command.d.ts +8 -0
  367. package/server/src/lib/user-invitation/list-my-join-requests.command.js +40 -0
  368. package/server/src/lib/user-invitation/list-my-join-requests.command.js.map +1 -0
  369. package/server/src/lib/user-invitation/list-my-pending-invitations.command.d.ts +8 -0
  370. package/server/src/lib/user-invitation/list-my-pending-invitations.command.js +37 -0
  371. package/server/src/lib/user-invitation/list-my-pending-invitations.command.js.map +1 -0
  372. package/server/src/lib/user-invitation/list-tenant-entitled-applications.command.d.ts +8 -0
  373. package/server/src/lib/user-invitation/list-tenant-entitled-applications.command.js +41 -0
  374. package/server/src/lib/user-invitation/list-tenant-entitled-applications.command.js.map +1 -0
  375. package/server/src/lib/user-invitation/lookup-tenant-by-unique-name.command.d.ts +8 -0
  376. package/server/src/lib/user-invitation/lookup-tenant-by-unique-name.command.js +40 -0
  377. package/server/src/lib/user-invitation/lookup-tenant-by-unique-name.command.js.map +1 -0
  378. package/server/src/lib/user-invitation/reject-join-request.command.d.ts +8 -0
  379. package/server/src/lib/user-invitation/reject-join-request.command.js +41 -0
  380. package/server/src/lib/user-invitation/reject-join-request.command.js.map +1 -0
  381. package/server/src/lib/user-invitation/request-tenant-membership.command.d.ts +8 -0
  382. package/server/src/lib/user-invitation/request-tenant-membership.command.js +40 -0
  383. package/server/src/lib/user-invitation/request-tenant-membership.command.js.map +1 -0
  384. package/server/src/lib/user-invitation/resend-invitation.command.d.ts +12 -0
  385. package/server/src/lib/user-invitation/resend-invitation.command.js +37 -0
  386. package/server/src/lib/user-invitation/resend-invitation.command.js.map +1 -0
  387. package/server/src/lib/user-invitation/user-invitation-application-access.util.d.ts +25 -0
  388. package/server/src/lib/user-invitation/user-invitation-application-access.util.js +121 -0
  389. package/server/src/lib/user-invitation/user-invitation-application-access.util.js.map +1 -0
  390. package/server/src/lib/user-invitation/user-invitation.service.d.ts +162 -0
  391. package/server/src/lib/user-invitation/user-invitation.service.js +1658 -0
  392. package/server/src/lib/user-invitation/user-invitation.service.js.map +1 -0
  393. package/contracts/src/datasource.keys.d.ts +0 -4
  394. package/contracts/src/datasource.keys.js +0 -10
  395. package/contracts/src/datasource.keys.js.map +0 -1
  396. package/src/index.d.ts +0 -5
  397. package/src/index.js +0 -13
  398. package/src/index.js.map +0 -1
  399. package/src/lib/security-management-server.module.d.ts +0 -2
  400. package/src/lib/security-management-server.module.js +0 -23
  401. package/src/lib/security-management-server.module.js.map +0 -1
  402. package/src/lib/seed/index.d.ts +0 -22
  403. package/src/lib/seed/index.js +0 -24
  404. package/src/lib/seed/index.js.map +0 -1
  405. package/src/lib/seed/policy/index.d.ts +0 -2
  406. package/src/lib/seed/policy/index.js +0 -6
  407. package/src/lib/seed/policy/index.js.map +0 -1
  408. package/src/lib/seed/policy/policy.mock.d.ts +0 -7
  409. package/src/lib/seed/policy/policy.mock.js +0 -40
  410. package/src/lib/seed/policy/policy.mock.js.map +0 -1
  411. package/src/lib/seed/policy/policy.seed.d.ts +0 -5
  412. package/src/lib/seed/policy/policy.seed.js +0 -31
  413. package/src/lib/seed/policy/policy.seed.js.map +0 -1
  414. package/src/lib/seed/role/index.d.ts +0 -4
  415. package/src/lib/seed/role/index.js +0 -8
  416. package/src/lib/seed/role/index.js.map +0 -1
  417. package/src/lib/seed/role/role-ids.constants.d.ts +0 -14
  418. package/src/lib/seed/role/role-ids.constants.js +0 -20
  419. package/src/lib/seed/role/role-ids.constants.js.map +0 -1
  420. package/src/lib/seed/role/role-permission-keys.constants.d.ts +0 -578
  421. package/src/lib/seed/role/role-permission-keys.constants.js +0 -620
  422. package/src/lib/seed/role/role-permission-keys.constants.js.map +0 -1
  423. package/src/lib/seed/role/role.mock.d.ts +0 -4
  424. package/src/lib/seed/role/role.mock.js +0 -321
  425. package/src/lib/seed/role/role.mock.js.map +0 -1
  426. package/src/lib/seed/role/role.seed.d.ts +0 -5
  427. package/src/lib/seed/role/role.seed.js +0 -31
  428. package/src/lib/seed/role/role.seed.js.map +0 -1
  429. package/src/lib/seed/security-management-seed.provider.d.ts +0 -4
  430. package/src/lib/seed/security-management-seed.provider.js +0 -18
  431. package/src/lib/seed/security-management-seed.provider.js.map +0 -1
  432. package/src/lib/seed/security-management-seed.tokens.d.ts +0 -1
  433. package/src/lib/seed/security-management-seed.tokens.js +0 -7
  434. package/src/lib/seed/security-management-seed.tokens.js.map +0 -1
  435. package/src/lib/seed/security-management.seed-catalog.d.ts +0 -2
  436. package/src/lib/seed/security-management.seed-catalog.js +0 -17
  437. package/src/lib/seed/security-management.seed-catalog.js.map +0 -1
  438. package/src/lib/seed/tenant/index.d.ts +0 -1
  439. package/src/lib/seed/tenant/tenant-ids.constants.d.ts +0 -11
  440. package/src/lib/seed/tenant/tenant-ids.constants.js +0 -17
  441. package/src/lib/seed/tenant/tenant-ids.constants.js.map +0 -1
  442. package/src/lib/seed/user/index.d.ts +0 -4
  443. package/src/lib/seed/user/index.js +0 -13
  444. package/src/lib/seed/user/index.js.map +0 -1
  445. package/src/lib/seed/user/resolve-user-effective-state.util.d.ts +0 -14
  446. package/src/lib/seed/user/resolve-user-effective-state.util.js +0 -61
  447. package/src/lib/seed/user/resolve-user-effective-state.util.js.map +0 -1
  448. package/src/lib/seed/user/user.mock.d.ts +0 -20
  449. package/src/lib/seed/user/user.mock.js +0 -332
  450. package/src/lib/seed/user/user.mock.js.map +0 -1
  451. package/src/lib/seed/user/user.seed.d.ts +0 -5
  452. package/src/lib/seed/user/user.seed.js +0 -31
  453. package/src/lib/seed/user/user.seed.js.map +0 -1
@@ -0,0 +1,340 @@
1
+ export declare const AXMSecurityManagementServerCommands: {
2
+ readonly SendPasswordResetEmail: "SecurityManagement:Server:SendPasswordResetEmail";
3
+ readonly CompletePasswordReset: "SecurityManagement:Server:CompletePasswordReset";
4
+ readonly ChangeOwnPassword: "SecurityManagement:Server:ChangeOwnPassword";
5
+ readonly GetOwnPasswordStatus: "SecurityManagement:Server:GetOwnPasswordStatus";
6
+ readonly InviteUser: "SecurityManagement:Server:InviteUser";
7
+ /** Tenant-subscribed applications for TM invite picker (ADR-TEN-001 D-05). */
8
+ readonly ListTenantEntitledApplications: "SecurityManagement:Server:ListTenantEntitledApplications";
9
+ /** Per-app Role overlays for TM invite repeater (bypasses app-catalog list isolation). */
10
+ readonly ListInviteAssignableRoles: "SecurityManagement:Server:ListInviteAssignableRoles";
11
+ readonly ResendInvitation: "SecurityManagement:Server:ResendInvitation";
12
+ readonly CancelInvitation: "SecurityManagement:Server:CancelInvitation";
13
+ readonly AcceptInvitation: "SecurityManagement:Server:AcceptInvitation";
14
+ readonly ListMyPendingInvitations: "SecurityManagement:Server:ListMyPendingInvitations";
15
+ readonly DeclineInvitation: "SecurityManagement:Server:DeclineInvitation";
16
+ readonly AcceptMyInvitation: "SecurityManagement:Server:AcceptMyInvitation";
17
+ readonly LookupTenantByUniqueName: "SecurityManagement:Server:LookupTenantByUniqueName";
18
+ readonly RequestTenantMembership: "SecurityManagement:Server:RequestTenantMembership";
19
+ readonly ListMyJoinRequests: "SecurityManagement:Server:ListMyJoinRequests";
20
+ readonly CancelMyJoinRequest: "SecurityManagement:Server:CancelMyJoinRequest";
21
+ readonly ApproveJoinRequest: "SecurityManagement:Server:ApproveJoinRequest";
22
+ readonly RejectJoinRequest: "SecurityManagement:Server:RejectJoinRequest";
23
+ readonly CreateUserInTenant: "SecurityManagement:Server:CreateUserInTenant";
24
+ readonly StartTwoFactorEnrollment: "SecurityManagement:Server:StartTwoFactorEnrollment";
25
+ readonly ConfirmTwoFactorEnrollment: "SecurityManagement:Server:ConfirmTwoFactorEnrollment";
26
+ readonly DisableTwoFactor: "SecurityManagement:Server:DisableTwoFactor";
27
+ readonly GenerateTwoFactorRecoveryCodes: "SecurityManagement:Server:GenerateTwoFactorRecoveryCodes";
28
+ readonly GetTwoFactorStatus: "SecurityManagement:Server:GetTwoFactorStatus";
29
+ readonly AdminResetTwoFactor: "SecurityManagement:Server:AdminResetTwoFactor";
30
+ /** Public — completes login after password challenge (TOTP or recovery). */
31
+ readonly VerifyTwoFactorLogin: "SecurityManagement:Server:VerifyTwoFactorLogin";
32
+ };
33
+ /** Stable codes for self-service password change (client maps to i18n). */
34
+ export declare const AXM_CHANGE_OWN_PASSWORD_ERROR_CODES: {
35
+ readonly NotSignedIn: "CHANGE_OWN_PASSWORD_NOT_SIGNED_IN";
36
+ readonly IncorrectCurrent: "CHANGE_OWN_PASSWORD_INCORRECT_CURRENT";
37
+ readonly SameAsCurrent: "CHANGE_OWN_PASSWORD_SAME_AS_CURRENT";
38
+ readonly InvalidInput: "CHANGE_OWN_PASSWORD_INVALID_INPUT";
39
+ };
40
+ /** Client/UI action key (confirm dialog → server send). */
41
+ export declare const AXM_USER_SEND_PASSWORD_RESET_COMMAND = "SecurityManagement:User:SendPasswordResetEmail";
42
+ /** Client/UI action key (confirm dialog → server admin reset 2FA). */
43
+ export declare const AXM_USER_RESET_TWO_FACTOR_COMMAND = "SecurityManagement:User:ResetTwoFactor";
44
+ /** Client/UI action keys for invite / create-in-tenant flows. */
45
+ export declare const AXM_USER_INVITE_COMMAND = "SecurityManagement:User:Invite";
46
+ export declare const AXM_USER_RESEND_INVITATION_COMMAND = "SecurityManagement:User:ResendInvitation";
47
+ export declare const AXM_USER_CANCEL_INVITATION_COMMAND = "SecurityManagement:User:CancelInvitation";
48
+ export declare const AXM_USER_APPROVE_JOIN_REQUEST_COMMAND = "SecurityManagement:User:ApproveJoinRequest";
49
+ export declare const AXM_USER_REJECT_JOIN_REQUEST_COMMAND = "SecurityManagement:User:RejectJoinRequest";
50
+ export declare const AXM_USER_CREATE_IN_TENANT_COMMAND = "SecurityManagement:User:CreateInTenant";
51
+ export interface AXMSendPasswordResetEmailInput {
52
+ /** Admin path: target user id. */
53
+ userId?: string;
54
+ /** Forgot path: email or username. */
55
+ login?: string;
56
+ /** Optional absolute web origin for reset link (defaults to env / localhost). */
57
+ webOrigin?: string;
58
+ }
59
+ export interface AXMCompletePasswordResetInput {
60
+ token: string;
61
+ newPassword: string;
62
+ }
63
+ export interface AXMChangeOwnPasswordInput {
64
+ /** Required when the account already has a password; omit/empty when setting the first password. */
65
+ currentPassword?: string;
66
+ newPassword: string;
67
+ }
68
+ export interface AXMChangeOwnPasswordResult {
69
+ passwordChangedAt: string;
70
+ }
71
+ export interface AXMGetOwnPasswordStatusResult {
72
+ /** True when the signed-in user has a non-empty stored password credential. */
73
+ hasPassword: boolean;
74
+ }
75
+ export interface AXMInviteUserInput {
76
+ email: string;
77
+ displayName?: string;
78
+ applicationIds?: string[];
79
+ /**
80
+ * Role ids to assign on invite (scoped UserRole grant).
81
+ * Application invite → app-scoped grant; tenant invite without per-app rows → tenant-wide grant.
82
+ */
83
+ roleIds?: string[];
84
+ /**
85
+ * TM Tenant Users repeater: roles per selected application.
86
+ * When present, server upserts a UserRole grant per application (not one tenant-wide grant).
87
+ */
88
+ applicationRoleAssignments?: Array<{
89
+ applicationId: string;
90
+ roleIds: string[];
91
+ }>;
92
+ /**
93
+ * True when invite is from Tenant Users (tenant-membership) with multi-app UI.
94
+ * Server SoT with session edition feature — not Application.code === 'TM'.
95
+ */
96
+ tenantMembershipInvite?: boolean;
97
+ /** Client sets true after warning that the identity already exists. */
98
+ confirmExisting?: boolean;
99
+ webOrigin?: string;
100
+ }
101
+ /** One selectable application for TM invite (tenant subscription entitlement). */
102
+ export interface AXMTenantEntitledApplicationItem {
103
+ id: string;
104
+ /** Raw MLS / string title — client resolves for display. */
105
+ title: unknown;
106
+ }
107
+ export interface AXMListTenantEntitledApplicationsResult {
108
+ items: AXMTenantEntitledApplicationItem[];
109
+ }
110
+ /** One Role overlay selectable on a TM invite repeater row. */
111
+ export interface AXMInviteAssignableRoleItem {
112
+ id: string;
113
+ title: unknown;
114
+ name?: string;
115
+ applicationId: string;
116
+ }
117
+ export interface AXMListInviteAssignableRolesInput {
118
+ /** When set, only overlays for this application (current tenant). */
119
+ applicationId?: string;
120
+ }
121
+ export interface AXMListInviteAssignableRolesResult {
122
+ items: AXMInviteAssignableRoleItem[];
123
+ }
124
+ export interface AXMInviteUserResult {
125
+ userId: string;
126
+ tenantUserId: string;
127
+ userAlreadyExists: boolean;
128
+ sent: boolean;
129
+ }
130
+ export interface AXMResendInvitationInput {
131
+ tenantUserId?: string;
132
+ userId?: string;
133
+ webOrigin?: string;
134
+ }
135
+ export interface AXMCancelInvitationInput {
136
+ tenantUserId?: string;
137
+ userId?: string;
138
+ }
139
+ /** Stable codes for public invitation accept (client maps invalid/expired to the page, not a toast). */
140
+ export declare const AXM_ACCEPT_INVITATION_ERROR_CODES: {
141
+ readonly Invalid: "ACCEPT_INVITATION_INVALID";
142
+ readonly Expired: "ACCEPT_INVITATION_EXPIRED";
143
+ readonly PasswordRequired: "ACCEPT_INVITATION_PASSWORD_REQUIRED";
144
+ };
145
+ export type AXMAcceptInvitationReason = 'valid' | 'invalid' | 'expired';
146
+ export interface AXMAcceptInvitationInput {
147
+ token: string;
148
+ newPassword?: string;
149
+ /** Check the token only. Does not set a password or consume the link. */
150
+ preview?: boolean;
151
+ }
152
+ export interface AXMAcceptInvitationPreviewResult {
153
+ usable: boolean;
154
+ reason: AXMAcceptInvitationReason;
155
+ }
156
+ export interface AXMPendingInvitationItem {
157
+ tenantUserId: string;
158
+ tenantId: string;
159
+ tenantTitle?: string;
160
+ /** Tenant branding logo URL / storage id when available. */
161
+ tenantLogo?: string;
162
+ invitedByUserId?: string;
163
+ expiresAt?: string;
164
+ sentAt?: string;
165
+ applicationIds?: string[];
166
+ }
167
+ export interface AXMListMyPendingInvitationsResult {
168
+ items: AXMPendingInvitationItem[];
169
+ }
170
+ export interface AXMAcceptMyInvitationInput {
171
+ tenantUserId: string;
172
+ newPassword?: string;
173
+ }
174
+ export interface AXMDeclineInvitationInput {
175
+ tenantUserId: string;
176
+ }
177
+ /** Stable codes for waiting-room join-by-unique-name (client maps to i18n). */
178
+ export declare const AXM_JOIN_REQUEST_ERROR_CODES: {
179
+ readonly NotSignedIn: "JOIN_REQUEST_NOT_SIGNED_IN";
180
+ readonly InvalidInput: "JOIN_REQUEST_INVALID_INPUT";
181
+ readonly TenantNotFound: "JOIN_REQUEST_TENANT_NOT_FOUND";
182
+ readonly AlreadyMember: "JOIN_REQUEST_ALREADY_MEMBER";
183
+ readonly InvitePending: "JOIN_REQUEST_INVITE_PENDING";
184
+ readonly RequestNotFound: "JOIN_REQUEST_NOT_FOUND";
185
+ readonly NotPending: "JOIN_REQUEST_NOT_PENDING";
186
+ };
187
+ export interface AXMLookupTenantByUniqueNameInput {
188
+ /** Tenant unique `name` or display `title` (any locale). Case-insensitive exact match. */
189
+ uniqueName: string;
190
+ }
191
+ export interface AXMLookupTenantByUniqueNameItem {
192
+ id: string;
193
+ /** Stored unique name with original casing. */
194
+ name: string;
195
+ }
196
+ export interface AXMLookupTenantByUniqueNameResult {
197
+ /** Present only when the name/title matches exactly one active tenant. */
198
+ item?: AXMLookupTenantByUniqueNameItem | null;
199
+ }
200
+ export interface AXMRequestTenantMembershipInput {
201
+ /** Tenant unique `name` or display `title` (any locale). Case-insensitive exact match. */
202
+ uniqueName: string;
203
+ }
204
+ export interface AXMRequestTenantMembershipResult {
205
+ tenantUserId: string;
206
+ tenantId: string;
207
+ tenantName: string;
208
+ }
209
+ export interface AXMJoinRequestItem {
210
+ tenantUserId: string;
211
+ tenantId: string;
212
+ tenantName?: string;
213
+ tenantTitle?: string;
214
+ /** Tenant branding logo URL / storage id when available. */
215
+ tenantLogo?: string;
216
+ sentAt?: string;
217
+ expiresAt?: string;
218
+ }
219
+ export interface AXMListMyJoinRequestsResult {
220
+ items: AXMJoinRequestItem[];
221
+ }
222
+ export interface AXMCancelMyJoinRequestInput {
223
+ tenantUserId: string;
224
+ }
225
+ export interface AXMApproveJoinRequestInput {
226
+ tenantUserId?: string;
227
+ userId?: string;
228
+ /** Product / app-scoped approve: roles for the current session application. */
229
+ roleIds?: string[];
230
+ applicationIds?: string[];
231
+ /** TM Tenant Users: per-application role rows (same shape as invite). */
232
+ applicationRoleAssignments?: Array<{
233
+ applicationId: string;
234
+ roleIds: string[];
235
+ }>;
236
+ /**
237
+ * When true, allow multi-application assignment (TM Tenant Users + edition feature).
238
+ * Mirrors invite `tenantMembershipInvite`.
239
+ */
240
+ tenantMembershipApprove?: boolean;
241
+ }
242
+ export interface AXMRejectJoinRequestInput {
243
+ tenantUserId?: string;
244
+ userId?: string;
245
+ }
246
+ export interface AXMCreateUserInTenantInput {
247
+ email?: string;
248
+ username?: string;
249
+ displayName?: string;
250
+ password?: string;
251
+ applicationIds?: string[];
252
+ /** Product Users create: roles for the current session application. */
253
+ roleIds?: string[];
254
+ /** TM Tenant Users create: per-application role rows (merged client-side before submit). */
255
+ applicationRoleAssignments?: Array<{
256
+ applicationId: string;
257
+ roleIds: string[];
258
+ }>;
259
+ /**
260
+ * When true, allow multi-application assignment (TM Tenant Users + edition feature).
261
+ * Parallel to invite `tenantMembershipInvite`; Create path only.
262
+ */
263
+ tenantMembershipCreate?: boolean;
264
+ }
265
+ export interface AXMCreateUserInTenantResult {
266
+ userId: string;
267
+ tenantUserId: string;
268
+ }
269
+ /** Stable codes for two-factor self-service and login challenge (client maps to i18n). */
270
+ export declare const AXM_TWO_FACTOR_ERROR_CODES: {
271
+ readonly NotSignedIn: "TWO_FACTOR_NOT_SIGNED_IN";
272
+ readonly InvalidInput: "TWO_FACTOR_INVALID_INPUT";
273
+ readonly IncorrectPassword: "TWO_FACTOR_INCORRECT_PASSWORD";
274
+ readonly IncorrectCode: "TWO_FACTOR_INCORRECT_CODE";
275
+ readonly AlreadyEnabled: "TWO_FACTOR_ALREADY_ENABLED";
276
+ readonly NotEnabled: "TWO_FACTOR_NOT_ENABLED";
277
+ readonly EnrollmentExpired: "TWO_FACTOR_ENROLLMENT_EXPIRED";
278
+ readonly ChallengeExpired: "TWO_FACTOR_CHALLENGE_EXPIRED";
279
+ readonly RateLimited: "TWO_FACTOR_RATE_LIMITED";
280
+ readonly InvalidConfiguration: "TWO_FACTOR_INVALID_CONFIGURATION";
281
+ readonly ProofRequired: "TWO_FACTOR_PROOF_REQUIRED";
282
+ readonly UserNotFound: "TWO_FACTOR_USER_NOT_FOUND";
283
+ readonly Forbidden: "TWO_FACTOR_FORBIDDEN";
284
+ };
285
+ export interface AXMStartTwoFactorEnrollmentInput {
286
+ password: string;
287
+ }
288
+ export interface AXMStartTwoFactorEnrollmentResult {
289
+ enrollmentId: string;
290
+ otpauthUri: string;
291
+ /** Base32 secret for manual entry (client renders QR via ax-qrcode). */
292
+ secretBase32: string;
293
+ expiresAt: string;
294
+ }
295
+ export interface AXMConfirmTwoFactorEnrollmentInput {
296
+ enrollmentId: string;
297
+ code: string;
298
+ }
299
+ export interface AXMConfirmTwoFactorEnrollmentResult {
300
+ enabled: true;
301
+ verifiedAt: string;
302
+ }
303
+ export interface AXMDisableTwoFactorInput {
304
+ /** At least one of password or totpCode is required. */
305
+ password?: string;
306
+ totpCode?: string;
307
+ }
308
+ export interface AXMDisableTwoFactorResult {
309
+ enabled: false;
310
+ }
311
+ export interface AXMGenerateTwoFactorRecoveryCodesInput {
312
+ /** At least one of password or totpCode is required. */
313
+ password?: string;
314
+ totpCode?: string;
315
+ }
316
+ export interface AXMGenerateTwoFactorRecoveryCodesResult {
317
+ /** Plaintext codes shown once only (display format ABCD-EFGH). */
318
+ codes: string[];
319
+ }
320
+ export interface AXMGetTwoFactorStatusResult {
321
+ enabled: boolean;
322
+ enrolled: boolean;
323
+ verifiedAt?: string | null;
324
+ hasRecoveryCodes: boolean;
325
+ unusedRecoveryCodeCount: number;
326
+ }
327
+ export interface AXMAdminResetTwoFactorInput {
328
+ userId: string;
329
+ /** When true, only validates that 2FA is enabled; does not wipe or revoke sessions. */
330
+ dryRun?: boolean;
331
+ }
332
+ export interface AXMAdminResetTwoFactorResult {
333
+ reset: boolean;
334
+ }
335
+ export interface AXMVerifyTwoFactorLoginInput {
336
+ challengeId: string;
337
+ /** TOTP (6 digits) or recovery code. */
338
+ code: string;
339
+ rememberMe?: boolean;
340
+ }
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ //#region ---- Security management server command keys ----
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.AXM_TWO_FACTOR_ERROR_CODES = exports.AXM_JOIN_REQUEST_ERROR_CODES = exports.AXM_ACCEPT_INVITATION_ERROR_CODES = exports.AXM_USER_CREATE_IN_TENANT_COMMAND = exports.AXM_USER_REJECT_JOIN_REQUEST_COMMAND = exports.AXM_USER_APPROVE_JOIN_REQUEST_COMMAND = exports.AXM_USER_CANCEL_INVITATION_COMMAND = exports.AXM_USER_RESEND_INVITATION_COMMAND = exports.AXM_USER_INVITE_COMMAND = exports.AXM_USER_RESET_TWO_FACTOR_COMMAND = exports.AXM_USER_SEND_PASSWORD_RESET_COMMAND = exports.AXM_CHANGE_OWN_PASSWORD_ERROR_CODES = exports.AXMSecurityManagementServerCommands = void 0;
5
+ exports.AXMSecurityManagementServerCommands = {
6
+ SendPasswordResetEmail: 'SecurityManagement:Server:SendPasswordResetEmail',
7
+ CompletePasswordReset: 'SecurityManagement:Server:CompletePasswordReset',
8
+ ChangeOwnPassword: 'SecurityManagement:Server:ChangeOwnPassword',
9
+ GetOwnPasswordStatus: 'SecurityManagement:Server:GetOwnPasswordStatus',
10
+ InviteUser: 'SecurityManagement:Server:InviteUser',
11
+ /** Tenant-subscribed applications for TM invite picker (ADR-TEN-001 D-05). */
12
+ ListTenantEntitledApplications: 'SecurityManagement:Server:ListTenantEntitledApplications',
13
+ /** Per-app Role overlays for TM invite repeater (bypasses app-catalog list isolation). */
14
+ ListInviteAssignableRoles: 'SecurityManagement:Server:ListInviteAssignableRoles',
15
+ ResendInvitation: 'SecurityManagement:Server:ResendInvitation',
16
+ CancelInvitation: 'SecurityManagement:Server:CancelInvitation',
17
+ AcceptInvitation: 'SecurityManagement:Server:AcceptInvitation',
18
+ ListMyPendingInvitations: 'SecurityManagement:Server:ListMyPendingInvitations',
19
+ DeclineInvitation: 'SecurityManagement:Server:DeclineInvitation',
20
+ AcceptMyInvitation: 'SecurityManagement:Server:AcceptMyInvitation',
21
+ LookupTenantByUniqueName: 'SecurityManagement:Server:LookupTenantByUniqueName',
22
+ RequestTenantMembership: 'SecurityManagement:Server:RequestTenantMembership',
23
+ ListMyJoinRequests: 'SecurityManagement:Server:ListMyJoinRequests',
24
+ CancelMyJoinRequest: 'SecurityManagement:Server:CancelMyJoinRequest',
25
+ ApproveJoinRequest: 'SecurityManagement:Server:ApproveJoinRequest',
26
+ RejectJoinRequest: 'SecurityManagement:Server:RejectJoinRequest',
27
+ CreateUserInTenant: 'SecurityManagement:Server:CreateUserInTenant',
28
+ StartTwoFactorEnrollment: 'SecurityManagement:Server:StartTwoFactorEnrollment',
29
+ ConfirmTwoFactorEnrollment: 'SecurityManagement:Server:ConfirmTwoFactorEnrollment',
30
+ DisableTwoFactor: 'SecurityManagement:Server:DisableTwoFactor',
31
+ GenerateTwoFactorRecoveryCodes: 'SecurityManagement:Server:GenerateTwoFactorRecoveryCodes',
32
+ GetTwoFactorStatus: 'SecurityManagement:Server:GetTwoFactorStatus',
33
+ AdminResetTwoFactor: 'SecurityManagement:Server:AdminResetTwoFactor',
34
+ /** Public — completes login after password challenge (TOTP or recovery). */
35
+ VerifyTwoFactorLogin: 'SecurityManagement:Server:VerifyTwoFactorLogin',
36
+ };
37
+ /** Stable codes for self-service password change (client maps to i18n). */
38
+ exports.AXM_CHANGE_OWN_PASSWORD_ERROR_CODES = {
39
+ NotSignedIn: 'CHANGE_OWN_PASSWORD_NOT_SIGNED_IN',
40
+ IncorrectCurrent: 'CHANGE_OWN_PASSWORD_INCORRECT_CURRENT',
41
+ SameAsCurrent: 'CHANGE_OWN_PASSWORD_SAME_AS_CURRENT',
42
+ InvalidInput: 'CHANGE_OWN_PASSWORD_INVALID_INPUT',
43
+ };
44
+ /** Client/UI action key (confirm dialog → server send). */
45
+ exports.AXM_USER_SEND_PASSWORD_RESET_COMMAND = 'SecurityManagement:User:SendPasswordResetEmail';
46
+ /** Client/UI action key (confirm dialog → server admin reset 2FA). */
47
+ exports.AXM_USER_RESET_TWO_FACTOR_COMMAND = 'SecurityManagement:User:ResetTwoFactor';
48
+ /** Client/UI action keys for invite / create-in-tenant flows. */
49
+ exports.AXM_USER_INVITE_COMMAND = 'SecurityManagement:User:Invite';
50
+ exports.AXM_USER_RESEND_INVITATION_COMMAND = 'SecurityManagement:User:ResendInvitation';
51
+ exports.AXM_USER_CANCEL_INVITATION_COMMAND = 'SecurityManagement:User:CancelInvitation';
52
+ exports.AXM_USER_APPROVE_JOIN_REQUEST_COMMAND = 'SecurityManagement:User:ApproveJoinRequest';
53
+ exports.AXM_USER_REJECT_JOIN_REQUEST_COMMAND = 'SecurityManagement:User:RejectJoinRequest';
54
+ exports.AXM_USER_CREATE_IN_TENANT_COMMAND = 'SecurityManagement:User:CreateInTenant';
55
+ /** Stable codes for public invitation accept (client maps invalid/expired to the page, not a toast). */
56
+ exports.AXM_ACCEPT_INVITATION_ERROR_CODES = {
57
+ Invalid: 'ACCEPT_INVITATION_INVALID',
58
+ Expired: 'ACCEPT_INVITATION_EXPIRED',
59
+ PasswordRequired: 'ACCEPT_INVITATION_PASSWORD_REQUIRED',
60
+ };
61
+ /** Stable codes for waiting-room join-by-unique-name (client maps to i18n). */
62
+ exports.AXM_JOIN_REQUEST_ERROR_CODES = {
63
+ NotSignedIn: 'JOIN_REQUEST_NOT_SIGNED_IN',
64
+ InvalidInput: 'JOIN_REQUEST_INVALID_INPUT',
65
+ TenantNotFound: 'JOIN_REQUEST_TENANT_NOT_FOUND',
66
+ AlreadyMember: 'JOIN_REQUEST_ALREADY_MEMBER',
67
+ InvitePending: 'JOIN_REQUEST_INVITE_PENDING',
68
+ RequestNotFound: 'JOIN_REQUEST_NOT_FOUND',
69
+ NotPending: 'JOIN_REQUEST_NOT_PENDING',
70
+ };
71
+ /** Stable codes for two-factor self-service and login challenge (client maps to i18n). */
72
+ exports.AXM_TWO_FACTOR_ERROR_CODES = {
73
+ NotSignedIn: 'TWO_FACTOR_NOT_SIGNED_IN',
74
+ InvalidInput: 'TWO_FACTOR_INVALID_INPUT',
75
+ IncorrectPassword: 'TWO_FACTOR_INCORRECT_PASSWORD',
76
+ IncorrectCode: 'TWO_FACTOR_INCORRECT_CODE',
77
+ AlreadyEnabled: 'TWO_FACTOR_ALREADY_ENABLED',
78
+ NotEnabled: 'TWO_FACTOR_NOT_ENABLED',
79
+ EnrollmentExpired: 'TWO_FACTOR_ENROLLMENT_EXPIRED',
80
+ ChallengeExpired: 'TWO_FACTOR_CHALLENGE_EXPIRED',
81
+ RateLimited: 'TWO_FACTOR_RATE_LIMITED',
82
+ InvalidConfiguration: 'TWO_FACTOR_INVALID_CONFIGURATION',
83
+ ProofRequired: 'TWO_FACTOR_PROOF_REQUIRED',
84
+ UserNotFound: 'TWO_FACTOR_USER_NOT_FOUND',
85
+ Forbidden: 'TWO_FACTOR_FORBIDDEN',
86
+ };
87
+ //#endregion
88
+ //# sourceMappingURL=server-commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-commands.js","sourceRoot":"","sources":["../../../../../libs/modules/security-management/contracts/src/server-commands.ts"],"names":[],"mappings":";AAAA,2DAA2D;;;AAE9C,QAAA,mCAAmC,GAAG;IACjD,sBAAsB,EAAE,kDAAkD;IAC1E,qBAAqB,EAAE,iDAAiD;IACxE,iBAAiB,EAAE,6CAA6C;IAChE,oBAAoB,EAAE,gDAAgD;IACtE,UAAU,EAAE,sCAAsC;IAClD,8EAA8E;IAC9E,8BAA8B,EAAE,0DAA0D;IAC1F,0FAA0F;IAC1F,yBAAyB,EAAE,qDAAqD;IAChF,gBAAgB,EAAE,4CAA4C;IAC9D,gBAAgB,EAAE,4CAA4C;IAC9D,gBAAgB,EAAE,4CAA4C;IAC9D,wBAAwB,EAAE,oDAAoD;IAC9E,iBAAiB,EAAE,6CAA6C;IAChE,kBAAkB,EAAE,8CAA8C;IAClE,wBAAwB,EAAE,oDAAoD;IAC9E,uBAAuB,EAAE,mDAAmD;IAC5E,kBAAkB,EAAE,8CAA8C;IAClE,mBAAmB,EAAE,+CAA+C;IACpE,kBAAkB,EAAE,8CAA8C;IAClE,iBAAiB,EAAE,6CAA6C;IAChE,kBAAkB,EAAE,8CAA8C;IAClE,wBAAwB,EAAE,oDAAoD;IAC9E,0BAA0B,EAAE,sDAAsD;IAClF,gBAAgB,EAAE,4CAA4C;IAC9D,8BAA8B,EAAE,0DAA0D;IAC1F,kBAAkB,EAAE,8CAA8C;IAClE,mBAAmB,EAAE,+CAA+C;IACpE,4EAA4E;IAC5E,oBAAoB,EAAE,gDAAgD;CAC9D,CAAC;AAEX,2EAA2E;AAC9D,QAAA,mCAAmC,GAAG;IACjD,WAAW,EAAE,mCAAmC;IAChD,gBAAgB,EAAE,uCAAuC;IACzD,aAAa,EAAE,qCAAqC;IACpD,YAAY,EAAE,mCAAmC;CACzC,CAAC;AAEX,2DAA2D;AAC9C,QAAA,oCAAoC,GAAG,gDAAgD,CAAC;AAErG,sEAAsE;AACzD,QAAA,iCAAiC,GAAG,wCAAwC,CAAC;AAE1F,iEAAiE;AACpD,QAAA,uBAAuB,GAAG,gCAAgC,CAAC;AAC3D,QAAA,kCAAkC,GAAG,0CAA0C,CAAC;AAChF,QAAA,kCAAkC,GAAG,0CAA0C,CAAC;AAChF,QAAA,qCAAqC,GAAG,4CAA4C,CAAC;AACrF,QAAA,oCAAoC,GAAG,2CAA2C,CAAC;AACnF,QAAA,iCAAiC,GAAG,wCAAwC,CAAC;AAqG1F,wGAAwG;AAC3F,QAAA,iCAAiC,GAAG;IAC/C,OAAO,EAAE,2BAA2B;IACpC,OAAO,EAAE,2BAA2B;IACpC,gBAAgB,EAAE,qCAAqC;CAC/C,CAAC;AAyCX,+EAA+E;AAClE,QAAA,4BAA4B,GAAG;IAC1C,WAAW,EAAE,4BAA4B;IACzC,YAAY,EAAE,4BAA4B;IAC1C,cAAc,EAAE,+BAA+B;IAC/C,aAAa,EAAE,6BAA6B;IAC5C,aAAa,EAAE,6BAA6B;IAC5C,eAAe,EAAE,wBAAwB;IACzC,UAAU,EAAE,0BAA0B;CAC9B,CAAC;AA0FX,0FAA0F;AAC7E,QAAA,0BAA0B,GAAG;IACxC,WAAW,EAAE,0BAA0B;IACvC,YAAY,EAAE,0BAA0B;IACxC,iBAAiB,EAAE,+BAA+B;IAClD,aAAa,EAAE,2BAA2B;IAC1C,cAAc,EAAE,4BAA4B;IAC5C,UAAU,EAAE,wBAAwB;IACpC,iBAAiB,EAAE,+BAA+B;IAClD,gBAAgB,EAAE,8BAA8B;IAChD,WAAW,EAAE,yBAAyB;IACtC,oBAAoB,EAAE,kCAAkC;IACxD,aAAa,EAAE,2BAA2B;IAC1C,YAAY,EAAE,2BAA2B;IACzC,SAAS,EAAE,sBAAsB;CACzB,CAAC;AAsEX,YAAY"}
@@ -0,0 +1,16 @@
1
+ /** Platform settings owned by Security Management. */
2
+ export declare const AXMSecurityManagementSettings: {
3
+ /**
4
+ * Which Users-list add actions are available.
5
+ * `create` and `invite` are primary. `both` shows them as secondary actions.
6
+ */
7
+ readonly UserProvisioningMode: "SecurityManagement:Setting:User.ProvisioningMode";
8
+ };
9
+ export declare const AXMUserProvisioningMode: {
10
+ readonly Create: "create";
11
+ readonly Invite: "invite";
12
+ readonly Both: "both";
13
+ };
14
+ export type AXMUserProvisioningMode = (typeof AXMUserProvisioningMode)[keyof typeof AXMUserProvisioningMode];
15
+ /** Used when the platform setting has not been saved yet. */
16
+ export declare const AXM_USER_PROVISIONING_MODE_DEFAULT: "both";
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ //#region ----- User provisioning settings -----
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.AXM_USER_PROVISIONING_MODE_DEFAULT = exports.AXMUserProvisioningMode = exports.AXMSecurityManagementSettings = void 0;
5
+ /** Platform settings owned by Security Management. */
6
+ exports.AXMSecurityManagementSettings = {
7
+ /**
8
+ * Which Users-list add actions are available.
9
+ * `create` and `invite` are primary. `both` shows them as secondary actions.
10
+ */
11
+ UserProvisioningMode: 'SecurityManagement:Setting:User.ProvisioningMode',
12
+ };
13
+ exports.AXMUserProvisioningMode = {
14
+ Create: 'create',
15
+ Invite: 'invite',
16
+ Both: 'both',
17
+ };
18
+ /** Used when the platform setting has not been saved yet. */
19
+ exports.AXM_USER_PROVISIONING_MODE_DEFAULT = exports.AXMUserProvisioningMode.Both;
20
+ //#endregion
21
+ //# sourceMappingURL=settings.keys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.keys.js","sourceRoot":"","sources":["../../../../../libs/modules/security-management/contracts/src/settings.keys.ts"],"names":[],"mappings":";AAAA,gDAAgD;;;AAEhD,sDAAsD;AACzC,QAAA,6BAA6B,GAAG;IAC3C;;;OAGG;IACH,oBAAoB,EAAE,kDAAkD;CAChE,CAAC;AAEE,QAAA,uBAAuB,GAAG;IACrC,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;CACJ,CAAC;AAIX,6DAA6D;AAChD,QAAA,kCAAkC,GAAG,+BAAuB,CAAC,IAAI,CAAC;AAE/E,YAAY"}
@@ -1 +1 @@
1
- {"version":3,"file":"user-access-state.js","sourceRoot":"","sources":["../../../../../libs/modules/security-management/server/contracts/src/user-access-state.ts"],"names":[],"mappings":";AAAA,qCAAqC;;;AAErC;;;GAGG;AACH,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC5B,yCAAmB,CAAA;IACnB,yCAAmB,CAAA;IACnB,yCAAmB,CAAA;AACrB,CAAC,EAJW,kBAAkB,kCAAlB,kBAAkB,QAI7B;AAED,YAAY"}
1
+ {"version":3,"file":"user-access-state.js","sourceRoot":"","sources":["../../../../../libs/modules/security-management/contracts/src/user-access-state.ts"],"names":[],"mappings":";AAAA,qCAAqC;;;AAErC;;;GAGG;AACH,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC5B,yCAAmB,CAAA;IACnB,yCAAmB,CAAA;IACnB,yCAAmB,CAAA;AACrB,CAAC,EAJW,kBAAkB,kCAAlB,kBAAkB,QAI7B;AAED,YAAY"}
@@ -1 +1 @@
1
- {"version":3,"file":"user-effective-state.js","sourceRoot":"","sources":["../../../../../libs/modules/security-management/server/contracts/src/user-effective-state.ts"],"names":[],"mappings":";AAAA,kDAAkD;;;AAElD;;GAEG;AACH,IAAY,qBAQX;AARD,WAAY,qBAAqB;IAC/B,4CAAmB,CAAA;IACnB,0CAAiB,CAAA;IACjB,gDAAuB,CAAA;IACvB,8CAAqB,CAAA;IACrB,8CAAqB,CAAA;IACrB,0DAAiC,CAAA;IACjC,iEAAwC,CAAA;AAC1C,CAAC,EARW,qBAAqB,qCAArB,qBAAqB,QAQhC;AAED,YAAY"}
1
+ {"version":3,"file":"user-effective-state.js","sourceRoot":"","sources":["../../../../../libs/modules/security-management/contracts/src/user-effective-state.ts"],"names":[],"mappings":";AAAA,kDAAkD;;;AAElD;;GAEG;AACH,IAAY,qBAQX;AARD,WAAY,qBAAqB;IAC/B,4CAAmB,CAAA;IACnB,0CAAiB,CAAA;IACjB,gDAAuB,CAAA;IACvB,8CAAqB,CAAA;IACrB,8CAAqB,CAAA;IACrB,0DAAiC,CAAA;IACjC,iEAAwC,CAAA;AAC1C,CAAC,EARW,qBAAqB,qCAArB,qBAAqB,QAQhC;AAED,YAAY"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Invitation challenge / audit metadata on TenantManagement.TenantUser.
3
+ * The raw token is never persisted — only a SHA-256 hash while the invite is pending.
4
+ */
5
+ export interface AXMUserInvitationInfo {
6
+ /** Present only while `TenantUser.statusId` is pending; cleared after resolve. */
7
+ tokenHash?: string;
8
+ expiresAt: string;
9
+ sentAt: string;
10
+ invitedByUserId: string;
11
+ applicationIds?: string[];
12
+ /** Role ids selected at invite time (flat union; mirrored onto scoped UserRole). */
13
+ roleIds?: string[];
14
+ /** TM Tenant Users: roles grouped by application (optional audit / accept helper). */
15
+ applicationRoleAssignments?: Array<{
16
+ applicationId: string;
17
+ roleIds: string[];
18
+ }>;
19
+ /**
20
+ * `invite` = admin sent; `join-request` = user requested membership from waiting room;
21
+ * `tenant-request` = user requested creation of a new tenant (public form).
22
+ */
23
+ source: AXMMembershipInvitationSource;
24
+ /** Set when the invitee accepts; distinguishes accepted invite from create-in-tenant. */
25
+ acceptedAt?: string;
26
+ }
27
+ export type AXMMembershipInvitationSource = 'invite' | 'join-request' | 'tenant-request';
28
+ export declare const AXM_MEMBERSHIP_INVITATION_SOURCE: {
29
+ readonly Invite: "invite";
30
+ readonly JoinRequest: "join-request";
31
+ readonly TenantRequest: "tenant-request";
32
+ };
33
+ /** How a User identity row was created (directory provenance). */
34
+ export type AXMUserCreatedVia = 'invite' | 'create-in-tenant' | 'register' | 'seed' | 'idp' | 'tenant-request';
35
+ /**
36
+ * In-app inbox definition for membership invites to users who already have a tenant.
37
+ * Inbox row action opens the auth waiting room (Approve/Decline live there).
38
+ */
39
+ export declare const AXM_MEMBERSHIP_INVITATION_NOTIFICATION_DEFINITION_KEY: "security-management.membership-invitation";
40
+ /** Query `source` value when opening waiting room from a membership-invite notification. */
41
+ export declare const AXM_MEMBERSHIP_INVITE_WAITING_ROOM_SOURCE: "membership-invite";
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ //#region ---- User invitation payload on TenantUser ----
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.AXM_MEMBERSHIP_INVITE_WAITING_ROOM_SOURCE = exports.AXM_MEMBERSHIP_INVITATION_NOTIFICATION_DEFINITION_KEY = exports.AXM_MEMBERSHIP_INVITATION_SOURCE = void 0;
5
+ exports.AXM_MEMBERSHIP_INVITATION_SOURCE = {
6
+ Invite: 'invite',
7
+ JoinRequest: 'join-request',
8
+ TenantRequest: 'tenant-request',
9
+ };
10
+ /**
11
+ * In-app inbox definition for membership invites to users who already have a tenant.
12
+ * Inbox row action opens the auth waiting room (Approve/Decline live there).
13
+ */
14
+ exports.AXM_MEMBERSHIP_INVITATION_NOTIFICATION_DEFINITION_KEY = 'security-management.membership-invitation';
15
+ /** Query `source` value when opening waiting room from a membership-invite notification. */
16
+ exports.AXM_MEMBERSHIP_INVITE_WAITING_ROOM_SOURCE = 'membership-invite';
17
+ //#endregion
18
+ //# sourceMappingURL=user-invitation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-invitation.js","sourceRoot":"","sources":["../../../../../libs/modules/security-management/contracts/src/user-invitation.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AA4B5C,QAAA,gCAAgC,GAAG;IAC9C,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,cAAc;IAC3B,aAAa,EAAE,gBAAgB;CACvB,CAAC;AAUX;;;GAGG;AACU,QAAA,qDAAqD,GAChE,2CAAoD,CAAC;AAEvD,4FAA4F;AAC/E,QAAA,yCAAyC,GAAG,mBAA4B,CAAC;AAEtF,YAAY"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * One-time password-reset token state stored as JSON on SecurityManagement.User.
3
+ * The raw token is never persisted — only a SHA-256 hash.
4
+ */
5
+ export interface AXMUserPasswordResetInfo {
6
+ tokenHash: string;
7
+ expiresAt: string;
8
+ sentAt: string;
9
+ }
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ //#region ---- Password reset payload on User ----
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //#endregion
5
+ //# sourceMappingURL=user-password-reset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-password-reset.js","sourceRoot":"","sources":["../../../../../libs/modules/security-management/contracts/src/user-password-reset.ts"],"names":[],"mappings":";AAAA,kDAAkD;;AAYlD,YAAY"}
package/package.json CHANGED
@@ -1,22 +1,27 @@
1
1
  {
2
2
  "name": "@acorex-platform/module-security-management-server",
3
- "version": "0.0.15",
3
+ "version": "2.0.0-next.42",
4
4
  "type": "commonjs",
5
- "main": "./src/index.js",
6
- "types": "./src/index.d.ts",
5
+ "main": "./server/src/index.js",
6
+ "types": "./server/src/index.d.ts",
7
7
  "peerDependencies": {
8
- "@nestjs/common": "^11.0.0",
9
- "@acorex-platform/module-common-server": "0.0.15"
8
+ "@acorex-platform/framework-server": "2.0.0-next.42",
9
+ "@acorex-platform/framework-shared": "2.0.0-next.42",
10
+ "@acorex-platform/module-auth-client": "2.0.0-next.42",
11
+ "@acorex-platform/module-common-client": "2.0.0-next.42",
12
+ "@acorex-platform/module-common-server": "2.0.0-next.42",
13
+ "@acorex-platform/module-communication-management-client": "2.0.0-next.42",
14
+ "@acorex-platform/module-content-management-client": "2.0.0-next.42",
15
+ "@acorex-platform/module-organization-management-client": "2.0.0-next.42",
16
+ "@acorex-platform/module-security-management-client": "2.0.0-next.42",
17
+ "@acorex-platform/module-settings-management-server": "2.0.0-next.42",
18
+ "@nestjs/common": "^11.0.0"
10
19
  },
11
20
  "exports": {
12
21
  "./package.json": "./package.json",
13
22
  ".": {
14
- "types": "./src/index.d.ts",
15
- "default": "./src/index.js"
16
- },
17
- "./seed": {
18
- "types": "./src/lib/seed/index.d.ts",
19
- "default": "./src/lib/seed/index.js"
23
+ "types": "./server/src/index.d.ts",
24
+ "default": "./server/src/index.js"
20
25
  },
21
26
  "./contracts": {
22
27
  "types": "./contracts/src/index.d.ts",
@@ -0,0 +1,3 @@
1
+ export * from './lib/security-management-server.module';
2
+ export { securityManagementEntityCatalog } from './lib/entities';
3
+ export { ADMINISTRATION_REPORTS_CATEGORY_ID, SECURITY_ACCESS_CATEGORY_ID, } from './lib/reports/security-report.definitions';
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SECURITY_ACCESS_CATEGORY_ID = exports.ADMINISTRATION_REPORTS_CATEGORY_ID = exports.securityManagementEntityCatalog = void 0;
4
+ const tslib_1 = require("tslib");
5
+ tslib_1.__exportStar(require("./lib/security-management-server.module"), exports);
6
+ var entities_1 = require("./lib/entities");
7
+ Object.defineProperty(exports, "securityManagementEntityCatalog", { enumerable: true, get: function () { return entities_1.securityManagementEntityCatalog; } });
8
+ var security_report_definitions_1 = require("./lib/reports/security-report.definitions");
9
+ Object.defineProperty(exports, "ADMINISTRATION_REPORTS_CATEGORY_ID", { enumerable: true, get: function () { return security_report_definitions_1.ADMINISTRATION_REPORTS_CATEGORY_ID; } });
10
+ Object.defineProperty(exports, "SECURITY_ACCESS_CATEGORY_ID", { enumerable: true, get: function () { return security_report_definitions_1.SECURITY_ACCESS_CATEGORY_ID; } });
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/modules/security-management/server/src/index.ts"],"names":[],"mappings":";;;;AAAA,kFAAwD;AACxD,2CAAiE;AAAxD,2HAAA,+BAA+B,OAAA;AACxC,yFAGmD;AAFjD,iJAAA,kCAAkC,OAAA;AAClC,0IAAA,2BAA2B,OAAA"}