@contember/engine-tenant-api 1.3.0-alpha.8 → 1.3.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (374) hide show
  1. package/dist/src/TenantContainer.d.ts +17 -3
  2. package/dist/src/TenantContainer.d.ts.map +1 -1
  3. package/dist/src/TenantContainer.js +7 -0
  4. package/dist/src/TenantContainer.js.map +1 -1
  5. package/dist/src/bridges/system/IdentityFetcher.d.ts +1 -1
  6. package/dist/src/bridges/system/IdentityFetcher.d.ts.map +1 -1
  7. package/dist/src/migrations/2023-01-20-135500-person-email-normalize.d.ts +3 -0
  8. package/dist/src/migrations/2023-01-20-135500-person-email-normalize.d.ts.map +1 -0
  9. package/dist/src/migrations/2023-01-20-135500-person-email-normalize.js +28 -0
  10. package/dist/src/migrations/2023-01-20-135500-person-email-normalize.js.map +1 -0
  11. package/dist/src/migrations/2023-06-03-104000-person-disabled.d.ts +3 -0
  12. package/dist/src/migrations/2023-06-03-104000-person-disabled.d.ts.map +1 -0
  13. package/dist/src/migrations/2023-06-03-104000-person-disabled.js +11 -0
  14. package/dist/src/migrations/2023-06-03-104000-person-disabled.js.map +1 -0
  15. package/dist/src/migrations/runner.d.ts.map +1 -1
  16. package/dist/src/migrations/runner.js +4 -0
  17. package/dist/src/migrations/runner.js.map +1 -1
  18. package/dist/src/migrations/snapshot.d.ts.map +1 -1
  19. package/dist/src/migrations/snapshot.js +1 -0
  20. package/dist/src/migrations/snapshot.js.map +1 -1
  21. package/dist/src/model/authorization/AclSchemaAccessNodeFactory.d.ts.map +1 -1
  22. package/dist/src/model/authorization/AclSchemaAccessNodeFactory.js +14 -9
  23. package/dist/src/model/authorization/AclSchemaAccessNodeFactory.js.map +1 -1
  24. package/dist/src/model/authorization/MembershipMatcher.d.ts +1 -1
  25. package/dist/src/model/authorization/MembershipMatcher.d.ts.map +1 -1
  26. package/dist/src/model/authorization/PermissionActions.d.ts +21 -0
  27. package/dist/src/model/authorization/PermissionActions.d.ts.map +1 -1
  28. package/dist/src/model/authorization/PermissionActions.js +4 -2
  29. package/dist/src/model/authorization/PermissionActions.js.map +1 -1
  30. package/dist/src/model/authorization/PermissionContext.d.ts +1 -1
  31. package/dist/src/model/authorization/PermissionContext.d.ts.map +1 -1
  32. package/dist/src/model/authorization/PermissionsFactory.d.ts.map +1 -1
  33. package/dist/src/model/authorization/PermissionsFactory.js +6 -3
  34. package/dist/src/model/authorization/PermissionsFactory.js.map +1 -1
  35. package/dist/src/model/authorization/Roles.js +1 -1
  36. package/dist/src/model/authorization/Roles.js.map +1 -1
  37. package/dist/src/model/commands/apiKey/CreateApiKeyCommand.d.ts +1 -1
  38. package/dist/src/model/commands/apiKey/CreateApiKeyCommand.d.ts.map +1 -1
  39. package/dist/src/model/commands/identity/PatchIdentityGlobalRoles.d.ts +9 -0
  40. package/dist/src/model/commands/identity/PatchIdentityGlobalRoles.d.ts.map +1 -0
  41. package/dist/src/model/commands/identity/PatchIdentityGlobalRoles.js +29 -0
  42. package/dist/src/model/commands/identity/PatchIdentityGlobalRoles.js.map +1 -0
  43. package/dist/src/model/commands/identity/index.d.ts +1 -0
  44. package/dist/src/model/commands/identity/index.d.ts.map +1 -1
  45. package/dist/src/model/commands/identity/index.js +1 -0
  46. package/dist/src/model/commands/identity/index.js.map +1 -1
  47. package/dist/src/model/commands/idp/UpdateIdpCommand.d.ts +1 -1
  48. package/dist/src/model/commands/idp/UpdateIdpCommand.d.ts.map +1 -1
  49. package/dist/src/model/commands/membership/AddProjectMemberCommand.d.ts +2 -6
  50. package/dist/src/model/commands/membership/AddProjectMemberCommand.d.ts.map +1 -1
  51. package/dist/src/model/commands/membership/AddProjectMemberCommand.js +5 -11
  52. package/dist/src/model/commands/membership/AddProjectMemberCommand.js.map +1 -1
  53. package/dist/src/model/commands/membership/RemoveProjectMemberCommand.d.ts +1 -1
  54. package/dist/src/model/commands/membership/RemoveProjectMemberCommand.d.ts.map +1 -1
  55. package/dist/src/model/commands/membership/RemoveProjectMemberCommand.js +1 -2
  56. package/dist/src/model/commands/membership/RemoveProjectMemberCommand.js.map +1 -1
  57. package/dist/src/model/commands/membership/UpdateProjectMemberCommand.d.ts +1 -1
  58. package/dist/src/model/commands/membership/UpdateProjectMemberCommand.d.ts.map +1 -1
  59. package/dist/src/model/commands/membership/UpdateProjectMemberCommand.js +2 -3
  60. package/dist/src/model/commands/membership/UpdateProjectMemberCommand.js.map +1 -1
  61. package/dist/src/model/commands/membership/types.d.ts +3 -3
  62. package/dist/src/model/commands/membership/types.d.ts.map +1 -1
  63. package/dist/src/model/commands/passwordReset/ResetPasswordCommand.d.ts +2 -6
  64. package/dist/src/model/commands/passwordReset/ResetPasswordCommand.d.ts.map +1 -1
  65. package/dist/src/model/commands/passwordReset/ResetPasswordCommand.js +5 -11
  66. package/dist/src/model/commands/passwordReset/ResetPasswordCommand.js.map +1 -1
  67. package/dist/src/model/commands/person/CreatePersonCommand.d.ts.map +1 -1
  68. package/dist/src/model/commands/person/CreatePersonCommand.js +10 -5
  69. package/dist/src/model/commands/person/CreatePersonCommand.js.map +1 -1
  70. package/dist/src/model/commands/person/DisablePersonCommand.d.ts +7 -0
  71. package/dist/src/model/commands/person/DisablePersonCommand.d.ts.map +1 -0
  72. package/dist/src/model/commands/person/DisablePersonCommand.js +22 -0
  73. package/dist/src/model/commands/person/DisablePersonCommand.js.map +1 -0
  74. package/dist/src/model/dtos/Password.d.ts +1 -1
  75. package/dist/src/model/dtos/Password.d.ts.map +1 -1
  76. package/dist/src/model/mailing/type.js +1 -1
  77. package/dist/src/model/mailing/type.js.map +1 -1
  78. package/dist/src/model/queries/apiKey/ApiKeyQuery.d.ts +23 -0
  79. package/dist/src/model/queries/apiKey/ApiKeyQuery.d.ts.map +1 -0
  80. package/dist/src/model/queries/apiKey/ApiKeyQuery.js +45 -0
  81. package/dist/src/model/queries/apiKey/ApiKeyQuery.js.map +1 -0
  82. package/dist/src/model/queries/apiKey/index.d.ts +1 -1
  83. package/dist/src/model/queries/apiKey/index.d.ts.map +1 -1
  84. package/dist/src/model/queries/apiKey/index.js +1 -1
  85. package/dist/src/model/queries/apiKey/index.js.map +1 -1
  86. package/dist/src/model/queries/idp/types.d.ts +4 -4
  87. package/dist/src/model/queries/idp/types.d.ts.map +1 -1
  88. package/dist/src/model/queries/membership/ProjectMembersQuery.d.ts +1 -1
  89. package/dist/src/model/queries/membership/ProjectMembersQuery.d.ts.map +1 -1
  90. package/dist/src/model/queries/membership/ProjectMembersQuery.js +3 -4
  91. package/dist/src/model/queries/membership/ProjectMembersQuery.js.map +1 -1
  92. package/dist/src/model/queries/person/PersonQuery.d.ts +4 -3
  93. package/dist/src/model/queries/person/PersonQuery.d.ts.map +1 -1
  94. package/dist/src/model/queries/person/PersonQuery.js +22 -0
  95. package/dist/src/model/queries/person/PersonQuery.js.map +1 -1
  96. package/dist/src/model/queries/person/PersonQueryBuilderFactory.d.ts.map +1 -1
  97. package/dist/src/model/queries/person/PersonQueryBuilderFactory.js +1 -0
  98. package/dist/src/model/queries/person/PersonQueryBuilderFactory.js.map +1 -1
  99. package/dist/src/model/queries/person/types.d.ts +4 -3
  100. package/dist/src/model/queries/person/types.d.ts.map +1 -1
  101. package/dist/src/model/queries/project/ProjectSecretsQuery.d.ts +1 -1
  102. package/dist/src/model/queries/project/ProjectSecretsQuery.d.ts.map +1 -1
  103. package/dist/src/model/service/IDPSignInManager.d.ts.map +1 -1
  104. package/dist/src/model/service/IDPSignInManager.js +8 -6
  105. package/dist/src/model/service/IDPSignInManager.js.map +1 -1
  106. package/dist/src/model/service/InviteManager.d.ts +1 -1
  107. package/dist/src/model/service/InviteManager.d.ts.map +1 -1
  108. package/dist/src/model/service/InviteManager.js +2 -3
  109. package/dist/src/model/service/InviteManager.js.map +1 -1
  110. package/dist/src/model/service/OtpAuthenticator.d.ts +1 -1
  111. package/dist/src/model/service/OtpAuthenticator.d.ts.map +1 -1
  112. package/dist/src/model/service/PasswordChangeManager.js +4 -5
  113. package/dist/src/model/service/PasswordChangeManager.js.map +1 -1
  114. package/dist/src/model/service/PasswordResetManager.d.ts +2 -4
  115. package/dist/src/model/service/PasswordResetManager.d.ts.map +1 -1
  116. package/dist/src/model/service/PasswordResetManager.js +2 -6
  117. package/dist/src/model/service/PasswordResetManager.js.map +1 -1
  118. package/dist/src/model/service/PersonAccessManager.d.ts +14 -0
  119. package/dist/src/model/service/PersonAccessManager.d.ts.map +1 -0
  120. package/dist/src/model/service/PersonAccessManager.js +42 -0
  121. package/dist/src/model/service/PersonAccessManager.js.map +1 -0
  122. package/dist/src/model/service/PersonManager.d.ts +7 -0
  123. package/dist/src/model/service/PersonManager.d.ts.map +1 -0
  124. package/dist/src/model/service/PersonManager.js +11 -0
  125. package/dist/src/model/service/PersonManager.js.map +1 -0
  126. package/dist/src/model/service/ProjectManager.d.ts +1 -1
  127. package/dist/src/model/service/ProjectManager.d.ts.map +1 -1
  128. package/dist/src/model/service/ProjectManager.js +2 -3
  129. package/dist/src/model/service/ProjectManager.js.map +1 -1
  130. package/dist/src/model/service/ProjectMemberManager.d.ts +2 -2
  131. package/dist/src/model/service/ProjectMemberManager.d.ts.map +1 -1
  132. package/dist/src/model/service/ProjectMemberManager.js +3 -16
  133. package/dist/src/model/service/ProjectMemberManager.js.map +1 -1
  134. package/dist/src/model/service/RolesManager.d.ts +11 -0
  135. package/dist/src/model/service/RolesManager.d.ts.map +1 -0
  136. package/dist/src/model/service/RolesManager.js +35 -0
  137. package/dist/src/model/service/RolesManager.js.map +1 -0
  138. package/dist/src/model/service/SignInManager.d.ts +2 -2
  139. package/dist/src/model/service/SignInManager.d.ts.map +1 -1
  140. package/dist/src/model/service/SignInManager.js +13 -8
  141. package/dist/src/model/service/SignInManager.js.map +1 -1
  142. package/dist/src/model/service/SignUpManager.d.ts +2 -2
  143. package/dist/src/model/service/SignUpManager.d.ts.map +1 -1
  144. package/dist/src/model/service/SignUpManager.js +2 -3
  145. package/dist/src/model/service/SignUpManager.js.map +1 -1
  146. package/dist/src/model/service/apiKey/ApiKeyManager.d.ts +3 -1
  147. package/dist/src/model/service/apiKey/ApiKeyManager.d.ts.map +1 -1
  148. package/dist/src/model/service/apiKey/ApiKeyManager.js +4 -1
  149. package/dist/src/model/service/apiKey/ApiKeyManager.js.map +1 -1
  150. package/dist/src/model/service/apiKey/ApiKeyService.d.ts +1 -1
  151. package/dist/src/model/service/apiKey/ApiKeyService.d.ts.map +1 -1
  152. package/dist/src/model/service/idp/IDPManager.d.ts +4 -4
  153. package/dist/src/model/service/idp/IDPManager.d.ts.map +1 -1
  154. package/dist/src/model/service/idp/IDPManager.js +7 -8
  155. package/dist/src/model/service/idp/IDPManager.js.map +1 -1
  156. package/dist/src/model/service/idp/providers/AppleProvider.d.ts +1 -1
  157. package/dist/src/model/service/idp/providers/AppleProvider.d.ts.map +1 -1
  158. package/dist/src/model/service/idp/providers/FacebookProvider.d.ts +1 -1
  159. package/dist/src/model/service/idp/providers/FacebookProvider.d.ts.map +1 -1
  160. package/dist/src/model/service/idp/providers/OIDCTypes.d.ts +3 -3
  161. package/dist/src/model/service/idp/providers/OIDCTypes.d.ts.map +1 -1
  162. package/dist/src/model/service/index.d.ts +2 -0
  163. package/dist/src/model/service/index.d.ts.map +1 -1
  164. package/dist/src/model/service/index.js +2 -0
  165. package/dist/src/model/service/index.js.map +1 -1
  166. package/dist/src/model/type/Variables.d.ts +1 -1
  167. package/dist/src/model/type/Variables.d.ts.map +1 -1
  168. package/dist/src/model/utils/Response.d.ts +2 -2
  169. package/dist/src/model/utils/Response.d.ts.map +1 -1
  170. package/dist/src/model/utils/email.d.ts +2 -0
  171. package/dist/src/model/utils/email.d.ts.map +1 -0
  172. package/dist/src/model/utils/email.js +8 -0
  173. package/dist/src/model/utils/email.js.map +1 -0
  174. package/dist/src/model/utils/tokenUtils.d.ts +1 -1
  175. package/dist/src/model/utils/tokenUtils.d.ts.map +1 -1
  176. package/dist/src/model/utils/typeUtils.d.ts +1 -1
  177. package/dist/src/model/utils/typeUtils.d.ts.map +1 -1
  178. package/dist/src/resolvers/ResolverFactory.d.ts +4 -1
  179. package/dist/src/resolvers/ResolverFactory.d.ts.map +1 -1
  180. package/dist/src/resolvers/ResolverFactory.js +3 -0
  181. package/dist/src/resolvers/ResolverFactory.js.map +1 -1
  182. package/dist/src/resolvers/errorUtils.d.ts +3 -3
  183. package/dist/src/resolvers/errorUtils.d.ts.map +1 -1
  184. package/dist/src/resolvers/errorUtils.js.map +1 -1
  185. package/dist/src/resolvers/membershipUtils.d.ts +4 -9
  186. package/dist/src/resolvers/membershipUtils.d.ts.map +1 -1
  187. package/dist/src/resolvers/membershipUtils.js +10 -18
  188. package/dist/src/resolvers/membershipUtils.js.map +1 -1
  189. package/dist/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js +1 -2
  190. package/dist/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js.map +1 -1
  191. package/dist/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js +1 -2
  192. package/dist/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js.map +1 -1
  193. package/dist/src/resolvers/mutation/identity/GlobalRolesMutationResolver.d.ts +11 -0
  194. package/dist/src/resolvers/mutation/identity/GlobalRolesMutationResolver.d.ts.map +1 -0
  195. package/dist/src/resolvers/mutation/identity/GlobalRolesMutationResolver.js +44 -0
  196. package/dist/src/resolvers/mutation/identity/GlobalRolesMutationResolver.js.map +1 -0
  197. package/dist/src/resolvers/mutation/identity/index.d.ts +2 -0
  198. package/dist/src/resolvers/mutation/identity/index.d.ts.map +1 -0
  199. package/dist/src/resolvers/mutation/identity/index.js +18 -0
  200. package/dist/src/resolvers/mutation/identity/index.js.map +1 -0
  201. package/dist/src/resolvers/mutation/index.d.ts +1 -0
  202. package/dist/src/resolvers/mutation/index.d.ts.map +1 -1
  203. package/dist/src/resolvers/mutation/index.js +1 -0
  204. package/dist/src/resolvers/mutation/index.js.map +1 -1
  205. package/dist/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.js +6 -7
  206. package/dist/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.js.map +1 -1
  207. package/dist/src/resolvers/mutation/person/ChangePasswordMutationResolver.js +2 -3
  208. package/dist/src/resolvers/mutation/person/ChangePasswordMutationResolver.js.map +1 -1
  209. package/dist/src/resolvers/mutation/person/DisablePersonMutationResolver.d.ts +11 -0
  210. package/dist/src/resolvers/mutation/person/DisablePersonMutationResolver.d.ts.map +1 -0
  211. package/dist/src/resolvers/mutation/person/DisablePersonMutationResolver.js +36 -0
  212. package/dist/src/resolvers/mutation/person/DisablePersonMutationResolver.js.map +1 -0
  213. package/dist/src/resolvers/mutation/person/InviteMutationResolver.d.ts.map +1 -1
  214. package/dist/src/resolvers/mutation/person/InviteMutationResolver.js +3 -4
  215. package/dist/src/resolvers/mutation/person/InviteMutationResolver.js.map +1 -1
  216. package/dist/src/resolvers/mutation/person/OtpMutationResolver.d.ts.map +1 -1
  217. package/dist/src/resolvers/mutation/person/OtpMutationResolver.js +3 -4
  218. package/dist/src/resolvers/mutation/person/OtpMutationResolver.js.map +1 -1
  219. package/dist/src/resolvers/mutation/person/ResetPasswordMutationResolver.d.ts.map +1 -1
  220. package/dist/src/resolvers/mutation/person/ResetPasswordMutationResolver.js +2 -10
  221. package/dist/src/resolvers/mutation/person/ResetPasswordMutationResolver.js.map +1 -1
  222. package/dist/src/resolvers/mutation/person/SignInMutationResolver.d.ts.map +1 -1
  223. package/dist/src/resolvers/mutation/person/SignInMutationResolver.js.map +1 -1
  224. package/dist/src/resolvers/mutation/person/SignOutMutationResolver.d.ts.map +1 -1
  225. package/dist/src/resolvers/mutation/person/SignOutMutationResolver.js +5 -2
  226. package/dist/src/resolvers/mutation/person/SignOutMutationResolver.js.map +1 -1
  227. package/dist/src/resolvers/mutation/project/CreateProjectMutationResolver.d.ts.map +1 -1
  228. package/dist/src/resolvers/mutation/project/CreateProjectMutationResolver.js +1 -2
  229. package/dist/src/resolvers/mutation/project/CreateProjectMutationResolver.js.map +1 -1
  230. package/dist/src/resolvers/mutation/project/SetProjectSecretMutationResolver.js +1 -2
  231. package/dist/src/resolvers/mutation/project/SetProjectSecretMutationResolver.js.map +1 -1
  232. package/dist/src/resolvers/mutation/project/UpdateProjectMutationResolver.d.ts.map +1 -1
  233. package/dist/src/resolvers/mutation/project/UpdateProjectMutationResolver.js +1 -2
  234. package/dist/src/resolvers/mutation/project/UpdateProjectMutationResolver.js.map +1 -1
  235. package/dist/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.js +1 -2
  236. package/dist/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.js.map +1 -1
  237. package/dist/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.js +1 -2
  238. package/dist/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.js.map +1 -1
  239. package/dist/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.js +1 -2
  240. package/dist/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.js.map +1 -1
  241. package/dist/src/resolvers/types/ProjectTypeResolver.d.ts.map +1 -1
  242. package/dist/src/resolvers/types/ProjectTypeResolver.js +5 -6
  243. package/dist/src/resolvers/types/ProjectTypeResolver.js.map +1 -1
  244. package/dist/src/schema/index.d.ts +431 -397
  245. package/dist/src/schema/index.d.ts.map +1 -1
  246. package/dist/src/schema/index.js +0 -188
  247. package/dist/src/schema/index.js.map +1 -1
  248. package/dist/src/schema/tenant.graphql.d.ts.map +1 -1
  249. package/dist/src/schema/tenant.graphql.js +97 -21
  250. package/dist/src/schema/tenant.graphql.js.map +1 -1
  251. package/dist/src/tsconfig.tsbuildinfo +1 -1
  252. package/dist/src/utils/Mailer.d.ts +1 -1
  253. package/dist/src/utils/Mailer.d.ts.map +1 -1
  254. package/dist/src/utils/array.d.ts +1 -1
  255. package/dist/src/utils/array.d.ts.map +1 -1
  256. package/dist/src/utils/batchQuery.d.ts +2 -2
  257. package/dist/src/utils/batchQuery.d.ts.map +1 -1
  258. package/dist/tests/cases/integration/db/updateRoles.test.d.ts +2 -0
  259. package/dist/tests/cases/integration/db/updateRoles.test.d.ts.map +1 -0
  260. package/dist/tests/cases/integration/db/updateRoles.test.js +67 -0
  261. package/dist/tests/cases/integration/db/updateRoles.test.js.map +1 -0
  262. package/dist/tests/cases/integration/mocked/confirmOtpMutation.test.js +1 -2
  263. package/dist/tests/cases/integration/mocked/confirmOtpMutation.test.js.map +1 -1
  264. package/dist/tests/cases/integration/mocked/gql/signUp.d.ts.map +1 -1
  265. package/dist/tests/cases/integration/mocked/gql/signUp.js +4 -0
  266. package/dist/tests/cases/integration/mocked/gql/signUp.js.map +1 -1
  267. package/dist/tests/cases/integration/mocked/gql/types.d.ts +1 -1
  268. package/dist/tests/cases/integration/mocked/gql/types.d.ts.map +1 -1
  269. package/dist/tests/cases/integration/mocked/signInMutation.test.js +36 -4
  270. package/dist/tests/cases/integration/mocked/signInMutation.test.js.map +1 -1
  271. package/dist/tests/cases/integration/mocked/signOutMutation.test.js +53 -0
  272. package/dist/tests/cases/integration/mocked/signOutMutation.test.js.map +1 -1
  273. package/dist/tests/cases/integration/mocked/signUpMutation.test.js +9 -0
  274. package/dist/tests/cases/integration/mocked/signUpMutation.test.js.map +1 -1
  275. package/dist/tests/cases/integration/mocked/sql/getApiKeySql.d.ts +11 -0
  276. package/dist/tests/cases/integration/mocked/sql/getApiKeySql.d.ts.map +1 -0
  277. package/dist/tests/cases/integration/mocked/sql/getApiKeySql.js +31 -0
  278. package/dist/tests/cases/integration/mocked/sql/getApiKeySql.js.map +1 -0
  279. package/dist/tests/cases/integration/mocked/sql/getPersonByEmailSql.d.ts.map +1 -1
  280. package/dist/tests/cases/integration/mocked/sql/getPersonByEmailSql.js +2 -1
  281. package/dist/tests/cases/integration/mocked/sql/getPersonByEmailSql.js.map +1 -1
  282. package/dist/tests/cases/integration/mocked/sql/getPersonByIdSql.js +1 -1
  283. package/dist/tests/cases/integration/mocked/sql/getPersonByIdentity.js +1 -1
  284. package/dist/tests/cases/integration/mocked/sql/getPersonByIdpSql.d.ts.map +1 -1
  285. package/dist/tests/cases/integration/mocked/sql/getPersonByIdpSql.js +2 -1
  286. package/dist/tests/cases/integration/mocked/sql/getPersonByIdpSql.js.map +1 -1
  287. package/dist/tests/cases/unit/authorization/membershipAwareAccessNode.test.js +27 -0
  288. package/dist/tests/cases/unit/authorization/membershipAwareAccessNode.test.js.map +1 -1
  289. package/dist/tests/src/mailer.d.ts +2 -2
  290. package/dist/tests/src/mailer.d.ts.map +1 -1
  291. package/dist/tests/tsconfig.tsbuildinfo +1 -1
  292. package/graphql-tenant.codegen.yml +2 -1
  293. package/package.json +14 -14
  294. package/src/TenantContainer.ts +19 -2
  295. package/src/migrations/2023-01-20-135500-person-email-normalize.ts +28 -0
  296. package/src/migrations/2023-06-03-104000-person-disabled.ts +10 -0
  297. package/src/migrations/runner.ts +4 -0
  298. package/src/migrations/snapshot.ts +1 -0
  299. package/src/model/authorization/AclSchemaAccessNodeFactory.ts +16 -6
  300. package/src/model/authorization/PermissionActions.ts +5 -0
  301. package/src/model/authorization/PermissionsFactory.ts +11 -3
  302. package/src/model/commands/identity/PatchIdentityGlobalRoles.ts +28 -0
  303. package/src/model/commands/identity/index.ts +1 -0
  304. package/src/model/commands/membership/AddProjectMemberCommand.ts +9 -10
  305. package/src/model/commands/membership/RemoveProjectMemberCommand.ts +1 -1
  306. package/src/model/commands/membership/UpdateProjectMemberCommand.ts +2 -2
  307. package/src/model/commands/passwordReset/ResetPasswordCommand.ts +9 -16
  308. package/src/model/commands/person/CreatePersonCommand.ts +9 -4
  309. package/src/model/commands/person/DisablePersonCommand.ts +18 -0
  310. package/src/model/queries/apiKey/ApiKeyQuery.ts +64 -0
  311. package/src/model/queries/apiKey/index.ts +1 -1
  312. package/src/model/queries/idp/types.ts +2 -2
  313. package/src/model/queries/membership/ProjectMembersQuery.ts +3 -3
  314. package/src/model/queries/person/PersonQuery.ts +30 -3
  315. package/src/model/queries/person/PersonQueryBuilderFactory.ts +1 -0
  316. package/src/model/queries/person/types.ts +3 -2
  317. package/src/model/service/IDPSignInManager.ts +11 -6
  318. package/src/model/service/InviteManager.ts +2 -2
  319. package/src/model/service/PasswordChangeManager.ts +4 -4
  320. package/src/model/service/PasswordResetManager.ts +3 -5
  321. package/src/model/service/PersonAccessManager.ts +56 -0
  322. package/src/model/service/PersonManager.ts +14 -0
  323. package/src/model/service/ProjectManager.ts +3 -3
  324. package/src/model/service/ProjectMemberManager.ts +3 -15
  325. package/src/model/service/RolesManager.ts +40 -0
  326. package/src/model/service/SignInManager.ts +25 -7
  327. package/src/model/service/SignUpManager.ts +2 -2
  328. package/src/model/service/apiKey/ApiKeyManager.ts +8 -1
  329. package/src/model/service/idp/IDPManager.ts +8 -8
  330. package/src/model/service/index.ts +2 -0
  331. package/src/model/utils/Response.ts +1 -1
  332. package/src/model/utils/email.ts +5 -0
  333. package/src/resolvers/ResolverFactory.ts +10 -1
  334. package/src/resolvers/errorUtils.ts +1 -1
  335. package/src/resolvers/membershipUtils.ts +21 -21
  336. package/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.ts +2 -2
  337. package/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.ts +1 -1
  338. package/src/resolvers/mutation/identity/GlobalRolesMutationResolver.ts +69 -0
  339. package/src/resolvers/mutation/identity/index.ts +1 -0
  340. package/src/resolvers/mutation/index.ts +1 -0
  341. package/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.ts +6 -6
  342. package/src/resolvers/mutation/person/ChangePasswordMutationResolver.ts +2 -2
  343. package/src/resolvers/mutation/person/DisablePersonMutationResolver.ts +48 -0
  344. package/src/resolvers/mutation/person/InviteMutationResolver.ts +5 -12
  345. package/src/resolvers/mutation/person/OtpMutationResolver.ts +4 -6
  346. package/src/resolvers/mutation/person/ResetPasswordMutationResolver.ts +2 -10
  347. package/src/resolvers/mutation/person/SignInMutationResolver.ts +1 -0
  348. package/src/resolvers/mutation/person/SignOutMutationResolver.ts +13 -3
  349. package/src/resolvers/mutation/project/CreateProjectMutationResolver.ts +2 -7
  350. package/src/resolvers/mutation/project/SetProjectSecretMutationResolver.ts +1 -1
  351. package/src/resolvers/mutation/project/UpdateProjectMutationResolver.ts +2 -7
  352. package/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.ts +2 -2
  353. package/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.ts +1 -1
  354. package/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.ts +2 -2
  355. package/src/resolvers/types/ProjectTypeResolver.ts +2 -2
  356. package/src/schema/index.ts +321 -159
  357. package/src/schema/tenant.graphql.ts +97 -21
  358. package/tests/cases/integration/db/updateRoles.test.ts +74 -0
  359. package/tests/cases/integration/mocked/confirmOtpMutation.test.ts +1 -1
  360. package/tests/cases/integration/mocked/gql/signUp.ts +4 -0
  361. package/tests/cases/integration/mocked/signInMutation.test.ts +37 -3
  362. package/tests/cases/integration/mocked/signOutMutation.test.ts +58 -0
  363. package/tests/cases/integration/mocked/signUpMutation.test.ts +9 -0
  364. package/tests/cases/integration/mocked/sql/getApiKeySql.ts +33 -0
  365. package/tests/cases/integration/mocked/sql/getPersonByEmailSql.ts +2 -1
  366. package/tests/cases/integration/mocked/sql/getPersonByIdSql.ts +1 -1
  367. package/tests/cases/integration/mocked/sql/getPersonByIdentity.ts +1 -1
  368. package/tests/cases/integration/mocked/sql/getPersonByIdpSql.ts +2 -1
  369. package/tests/cases/unit/authorization/membershipAwareAccessNode.test.ts +36 -0
  370. package/dist/src/model/queries/apiKey/ApiKeyByTokenQuery.d.ts +0 -22
  371. package/dist/src/model/queries/apiKey/ApiKeyByTokenQuery.d.ts.map +0 -1
  372. package/dist/src/model/queries/apiKey/ApiKeyByTokenQuery.js +0 -33
  373. package/dist/src/model/queries/apiKey/ApiKeyByTokenQuery.js.map +0 -1
  374. package/src/model/queries/apiKey/ApiKeyByTokenQuery.ts +0 -49
@@ -1,15 +1,15 @@
1
1
  import { IdentityProviderData } from '../../type';
2
- export declare type IdentityProviderRow = {
2
+ export type IdentityProviderRow = {
3
3
  id: string;
4
4
  slug: string;
5
5
  type: string;
6
- disabledAt: Date | unknown;
6
+ disabledAt: Date | null;
7
7
  configuration: Record<string, unknown>;
8
8
  autoSignUp: boolean;
9
9
  exclusive: boolean;
10
10
  };
11
- export declare type IdentityProviderDto = {
11
+ export type IdentityProviderDto = {
12
12
  id: string;
13
- disabledAt: Date | unknown;
13
+ disabledAt: Date | null;
14
14
  } & IdentityProviderData;
15
15
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/model/queries/idp/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEjD,oBAAY,mBAAmB,GAAG;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,IAAI,GAAG,OAAO,CAAA;IAC1B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACtC,UAAU,EAAE,OAAO,CAAA;IACnB,SAAS,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,oBAAY,mBAAmB,GAC5B;IACD,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,IAAI,GAAG,OAAO,CAAA;CAC1B,GACC,oBAAoB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/model/queries/idp/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEjD,MAAM,MAAM,mBAAmB,GAAG;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,IAAI,GAAG,IAAI,CAAA;IACvB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACtC,UAAU,EAAE,OAAO,CAAA;IACnB,SAAS,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAC5B;IACD,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,IAAI,GAAG,IAAI,CAAA;CACvB,GACC,oBAAoB,CAAA"}
@@ -10,5 +10,5 @@ export interface ProjectMembersQueryRow {
10
10
  id: string;
11
11
  description: string;
12
12
  }
13
- export declare type ProjectMembersQueryResult = ProjectMembersQueryRow[];
13
+ export type ProjectMembersQueryResult = ProjectMembersQueryRow[];
14
14
  //# sourceMappingURL=ProjectMembersQuery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectMembersQuery.d.ts","sourceRoot":"","sources":["../../../../../src/model/queries/membership/ProjectMembersQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAiB,MAAM,qBAAqB,CAAA;AACrF,OAAO,EAAc,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAGjE,qBAAa,mBAAoB,SAAQ,aAAa,CAAC,yBAAyB,CAAC;IAG/E,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;gBADlB,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,mBAAmB;IAKnD,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAAC,yBAAyB,CAAC;CAiC1E;AAED,MAAM,WAAW,sBAAsB;IACtC,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,EAAE,MAAM,CAAA;CACnB;AAED,oBAAY,yBAAyB,GAAG,sBAAsB,EAAE,CAAA"}
1
+ {"version":3,"file":"ProjectMembersQuery.d.ts","sourceRoot":"","sources":["../../../../../src/model/queries/membership/ProjectMembersQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAiB,MAAM,qBAAqB,CAAA;AACrF,OAAO,EAAc,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAGjE,qBAAa,mBAAoB,SAAQ,aAAa,CAAC,yBAAyB,CAAC;IAG/E,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;gBADlB,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,mBAAmB;IAKnD,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAAC,yBAAyB,CAAC;CAiC1E;AAED,MAAM,WAAW,sBAAsB;IACtC,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,MAAM,yBAAyB,GAAG,sBAAsB,EAAE,CAAA"}
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ProjectMembersQuery = void 0;
4
4
  const database_1 = require("@contember/database");
5
- const schema_1 = require("../../../schema");
6
5
  const exceptions_1 = require("../../../exceptions");
7
6
  class ProjectMembersQuery extends database_1.DatabaseQuery {
8
7
  constructor(projectId, projectMemberInput) {
@@ -23,7 +22,7 @@ class ProjectMembersQuery extends database_1.DatabaseQuery {
23
22
  .match(qb => {
24
23
  var _a;
25
24
  const { email, memberType } = (_a = this.projectMemberInput.filter) !== null && _a !== void 0 ? _a : {};
26
- if (email && memberType === schema_1.MemberType.ApiKey) {
25
+ if (email && memberType === 'API_KEY') {
27
26
  throw new exceptions_1.ImplementationException();
28
27
  }
29
28
  const personQuery = database_1.SelectBuilder.create()
@@ -33,9 +32,9 @@ class ProjectMembersQuery extends database_1.DatabaseQuery {
33
32
  return qb.where(it => it.exists(personQuery.where({ email })));
34
33
  }
35
34
  switch (memberType) {
36
- case schema_1.MemberType.ApiKey:
35
+ case 'API_KEY':
37
36
  return qb.where(it => it.not(it => it.exists(personQuery)));
38
- case schema_1.MemberType.Person:
37
+ case 'PERSON':
39
38
  return qb.where(it => it.exists(personQuery));
40
39
  }
41
40
  return qb;
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectMembersQuery.js","sourceRoot":"","sources":["../../../../../src/model/queries/membership/ProjectMembersQuery.ts"],"names":[],"mappings":";;;AAAA,kDAAqF;AACrF,4CAAiE;AACjE,oDAA6D;AAE7D,MAAa,mBAAoB,SAAQ,wBAAwC;IAEhF,YACkB,SAAiB,EACjB,kBAAuC;QAExD,KAAK,EAAE,CAAA;QAHU,cAAS,GAAT,SAAS,CAAQ;QACjB,uBAAkB,GAAlB,kBAAkB,CAAqB;IAGzD,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EAAqB;;QACpC,OAAO,MAAM,wBAAa,CAAC,MAAM,EAAuC;aACtE,MAAM,CAAC,IAAI,CAAC;aACZ,MAAM,CAAC,aAAa,CAAC;aACrB,IAAI,CAAC,UAAU,CAAC;aAChB,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CACrB,OAAO,CAAC,EAAE,CAAC,OAAO;aAChB,IAAI,CAAC,oBAAoB,CAAC;aAC1B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,oBAAoB,EAAE,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;aACxF,KAAK,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CACvC,CAAC;aACD,KAAK,CAAC,EAAE,CAAC,EAAE;;YACX,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,MAAA,IAAI,CAAC,kBAAkB,CAAC,MAAM,mCAAI,EAAE,CAAA;YAClE,IAAI,KAAK,IAAI,UAAU,KAAK,mBAAU,CAAC,MAAM,EAAE;gBAC9C,MAAM,IAAI,oCAAuB,EAAE,CAAA;aACnC;YACD,MAAM,WAAW,GAAG,wBAAa,CAAC,MAAM,EAAE;iBACxC,IAAI,CAAC,QAAQ,CAAC;iBACd,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;YAC9E,IAAI,KAAK,EAAE;gBACV,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;aAC9D;YACD,QAAQ,UAAU,EAAE;gBACnB,KAAK,mBAAU,CAAC,MAAM;oBACrB,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;gBAC5D,KAAK,mBAAU,CAAC,MAAM;oBACrB,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAA;aAC9C;YACD,OAAO,EAAE,CAAA;QACV,CAAC,CAAC;aACD,KAAK,CAAC,MAAA,IAAI,CAAC,kBAAkB,CAAC,KAAK,mCAAI,SAAS,EAAE,MAAA,IAAI,CAAC,kBAAkB,CAAC,MAAM,mCAAI,SAAS,CAAC;aAC9F,SAAS,CAAC,EAAE,CAAC,CAAA;IAChB,CAAC;CACD;AA1CD,kDA0CC"}
1
+ {"version":3,"file":"ProjectMembersQuery.js","sourceRoot":"","sources":["../../../../../src/model/queries/membership/ProjectMembersQuery.ts"],"names":[],"mappings":";;;AAAA,kDAAqF;AAErF,oDAA6D;AAE7D,MAAa,mBAAoB,SAAQ,wBAAwC;IAEhF,YACkB,SAAiB,EACjB,kBAAuC;QAExD,KAAK,EAAE,CAAA;QAHU,cAAS,GAAT,SAAS,CAAQ;QACjB,uBAAkB,GAAlB,kBAAkB,CAAqB;IAGzD,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EAAqB;;QACpC,OAAO,MAAM,wBAAa,CAAC,MAAM,EAAuC;aACtE,MAAM,CAAC,IAAI,CAAC;aACZ,MAAM,CAAC,aAAa,CAAC;aACrB,IAAI,CAAC,UAAU,CAAC;aAChB,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CACrB,OAAO,CAAC,EAAE,CAAC,OAAO;aAChB,IAAI,CAAC,oBAAoB,CAAC;aAC1B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,oBAAoB,EAAE,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;aACxF,KAAK,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CACvC,CAAC;aACD,KAAK,CAAC,EAAE,CAAC,EAAE;;YACX,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,MAAA,IAAI,CAAC,kBAAkB,CAAC,MAAM,mCAAI,EAAE,CAAA;YAClE,IAAI,KAAK,IAAI,UAAU,KAAK,SAAS,EAAE;gBACtC,MAAM,IAAI,oCAAuB,EAAE,CAAA;aACnC;YACD,MAAM,WAAW,GAAG,wBAAa,CAAC,MAAM,EAAE;iBACxC,IAAI,CAAC,QAAQ,CAAC;iBACd,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;YAC9E,IAAI,KAAK,EAAE;gBACV,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;aAC9D;YACD,QAAQ,UAAU,EAAE;gBACnB,KAAK,SAAS;oBACb,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;gBAC5D,KAAK,QAAQ;oBACZ,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAA;aAC9C;YACD,OAAO,EAAE,CAAA;QACV,CAAC,CAAC;aACD,KAAK,CAAC,MAAA,IAAI,CAAC,kBAAkB,CAAC,KAAK,mCAAI,SAAS,EAAE,MAAA,IAAI,CAAC,kBAAkB,CAAC,MAAM,mCAAI,SAAS,CAAC;aAC9F,SAAS,CAAC,EAAE,CAAC,CAAA;IAChB,CAAC;CACD;AA1CD,kDA0CC"}
@@ -1,6 +1,6 @@
1
1
  import { DatabaseQuery, DatabaseQueryable } from '@contember/database';
2
2
  import { MaybePersonRow } from './types';
3
- export declare type PersonUniqueIdentifier = {
3
+ export type PersonUniqueIdentifier = {
4
4
  type: 'id';
5
5
  id: string;
6
6
  } | {
@@ -13,9 +13,10 @@ export declare type PersonUniqueIdentifier = {
13
13
  declare class PersonQuery extends DatabaseQuery<MaybePersonRow> {
14
14
  private readonly spec;
15
15
  private constructor();
16
- static byUniqueIdentifier(identifier: PersonUniqueIdentifier): PersonQuery;
16
+ static byUniqueIdentifier(identifier: PersonUniqueIdentifier): DatabaseQuery<MaybePersonRow>;
17
17
  static byId(id: string): PersonQuery;
18
- static byEmail(email: string): PersonQuery;
18
+ static byEmail(email: string): DatabaseQuery<MaybePersonRow>;
19
+ static byExactEmail(email: string): PersonQuery;
19
20
  static byIdentity(identity_id: string): PersonQuery;
20
21
  fetch({ db }: DatabaseQueryable): Promise<MaybePersonRow>;
21
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PersonQuery.d.ts","sourceRoot":"","sources":["../../../../../src/model/queries/person/PersonQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAwC,MAAM,qBAAqB,CAAA;AAC5G,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAGxC,oBAAY,sBAAsB,GAC/B;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC1B;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAEnC,cAAM,WAAY,SAAQ,aAAa,CAAC,cAAc,CAAC;IAClC,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAzC,OAAO;IAIP,MAAM,CAAC,kBAAkB,CAAC,UAAU,EAAE,sBAAsB,GAAG,WAAW;IAW1E,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW;IAIpC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW;IAI1C,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW;IAI7C,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC;CAO/D;AAED,OAAO,EAAE,WAAW,EAAE,CAAA"}
1
+ {"version":3,"file":"PersonQuery.d.ts","sourceRoot":"","sources":["../../../../../src/model/queries/person/PersonQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAiD,MAAM,qBAAqB,CAAA;AACrH,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAIxC,MAAM,MAAM,sBAAsB,GAC/B;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC1B;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAEnC,cAAM,WAAY,SAAQ,aAAa,CAAC,cAAc,CAAC;IAClC,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAzC,OAAO;IAIP,MAAM,CAAC,kBAAkB,CAAC,UAAU,EAAE,sBAAsB,GAAG,aAAa,CAAC,cAAc,CAAC;IAW5F,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW;IAIpC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC,cAAc,CAAC;IAI5D,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW;IAI/C,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW;IAI7C,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC;CAO/D;AAwBD,OAAO,EAAE,WAAW,EAAE,CAAA"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PersonQuery = void 0;
4
4
  const database_1 = require("@contember/database");
5
5
  const PersonQueryBuilderFactory_1 = require("./PersonQueryBuilderFactory");
6
+ const email_1 = require("../../utils/email");
6
7
  class PersonQuery extends database_1.DatabaseQuery {
7
8
  constructor(spec) {
8
9
  super();
@@ -22,6 +23,9 @@ class PersonQuery extends database_1.DatabaseQuery {
22
23
  return new PersonQuery(qb => qb.where(it => it.compare(['person', 'id'], database_1.Operator.eq, id)));
23
24
  }
24
25
  static byEmail(email) {
26
+ return new PersonByEmailFallbackQuery(email);
27
+ }
28
+ static byExactEmail(email) {
25
29
  return new PersonQuery(qb => qb.where(it => it.compare(['person', 'email'], database_1.Operator.eq, email)));
26
30
  }
27
31
  static byIdentity(identity_id) {
@@ -35,4 +39,22 @@ class PersonQuery extends database_1.DatabaseQuery {
35
39
  }
36
40
  }
37
41
  exports.PersonQuery = PersonQuery;
42
+ class PersonByEmailFallbackQuery extends database_1.DatabaseQuery {
43
+ constructor(email) {
44
+ super();
45
+ this.email = email;
46
+ }
47
+ async fetch(ctx) {
48
+ const handler = ctx.getHandler();
49
+ const exact = await handler.fetch(PersonQuery.byExactEmail(this.email));
50
+ if (exact) {
51
+ return exact;
52
+ }
53
+ const normalizedEmail = (0, email_1.normalizeEmail)(this.email);
54
+ if (normalizedEmail === this.email) {
55
+ return null;
56
+ }
57
+ return await handler.fetch(PersonQuery.byExactEmail(normalizedEmail));
58
+ }
59
+ }
38
60
  //# sourceMappingURL=PersonQuery.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PersonQuery.js","sourceRoot":"","sources":["../../../../../src/model/queries/person/PersonQuery.ts"],"names":[],"mappings":";;;AAAA,kDAA4G;AAE5G,2EAAuE;AAOvE,MAAM,WAAY,SAAQ,wBAA6B;IACtD,YAAqC,IAAgC;QACpE,KAAK,EAAE,CAAA;QAD6B,SAAI,GAAJ,IAAI,CAA4B;IAErE,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,UAAkC;QAC3D,QAAQ,UAAU,CAAC,IAAI,EAAE;YACxB,KAAK,OAAO;gBACX,OAAO,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;YAC7C,KAAK,IAAI;gBACR,OAAO,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;YACvC,KAAK,UAAU;gBACd,OAAO,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;SAC7C;IACF,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,EAAU;QACrB,OAAO,IAAI,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,mBAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;IAC5F,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,KAAa;QAC3B,OAAO,IAAI,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,mBAAQ,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;IAClG,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,WAAmB;QACpC,OAAO,IAAI,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,mBAAQ,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IAC9G,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EAAqB;QACpC,MAAM,IAAI,GAAG,MAAM,qDAAyB,CAAC,wBAAwB,EAAE;aACrE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;aAChB,SAAS,CAAC,EAAE,CAAC,CAAA;QAEf,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;IACjC,CAAC;CACD;AAEQ,kCAAW"}
1
+ {"version":3,"file":"PersonQuery.js","sourceRoot":"","sources":["../../../../../src/model/queries/person/PersonQuery.ts"],"names":[],"mappings":";;;AAAA,kDAAqH;AAErH,2EAAuE;AACvE,6CAAkD;AAOlD,MAAM,WAAY,SAAQ,wBAA6B;IACtD,YAAqC,IAAgC;QACpE,KAAK,EAAE,CAAA;QAD6B,SAAI,GAAJ,IAAI,CAA4B;IAErE,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,UAAkC;QAC3D,QAAQ,UAAU,CAAC,IAAI,EAAE;YACxB,KAAK,OAAO;gBACX,OAAO,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;YAC7C,KAAK,IAAI;gBACR,OAAO,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;YACvC,KAAK,UAAU;gBACd,OAAO,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;SAC7C;IACF,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,EAAU;QACrB,OAAO,IAAI,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,mBAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;IAC5F,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,KAAa;QAC3B,OAAO,IAAI,0BAA0B,CAAC,KAAK,CAAC,CAAA;IAC7C,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,KAAa;QAChC,OAAO,IAAI,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,mBAAQ,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;IAClG,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,WAAmB;QACpC,OAAO,IAAI,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,mBAAQ,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IAC9G,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EAAqB;QACpC,MAAM,IAAI,GAAG,MAAM,qDAAyB,CAAC,wBAAwB,EAAE;aACrE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;aAChB,SAAS,CAAC,EAAE,CAAC,CAAA;QAEf,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;IACjC,CAAC;CACD;AAwBQ,kCAAW;AAtBpB,MAAM,0BAA2B,SAAQ,wBAA6B;IACrE,YACkB,KAAa;QAE9B,KAAK,EAAE,CAAA;QAFU,UAAK,GAAL,KAAK,CAAQ;IAG/B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAAsB;QACjC,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,EAAE,CAAA;QAChC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;QACvE,IAAI,KAAK,EAAE;YACV,OAAO,KAAK,CAAA;SACZ;QACD,MAAM,eAAe,GAAG,IAAA,sBAAc,EAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAClD,IAAI,eAAe,KAAK,IAAI,CAAC,KAAK,EAAE;YACnC,OAAO,IAAI,CAAA;SACX;QACD,OAAO,MAAM,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,CAAA;IACtE,CAAC;CAED"}
@@ -1 +1 @@
1
- {"version":3,"file":"PersonQueryBuilderFactory.d.ts","sourceRoot":"","sources":["../../../../../src/model/queries/person/PersonQueryBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEnD,qBAAa,yBAAyB;WACvB,wBAAwB;CAatC"}
1
+ {"version":3,"file":"PersonQueryBuilderFactory.d.ts","sourceRoot":"","sources":["../../../../../src/model/queries/person/PersonQueryBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEnD,qBAAa,yBAAyB;WACvB,wBAAwB;CActC"}
@@ -12,6 +12,7 @@ class PersonQueryBuilderFactory {
12
12
  .select(['person', 'identity_id'])
13
13
  .select(['person', 'email'])
14
14
  .select(['person', 'name'])
15
+ .select(['person', 'disabled_at'])
15
16
  .select(['identity', 'roles'])
16
17
  .from('person')
17
18
  .join('identity', 'identity', expr => expr.columnsEq(['identity', 'id'], ['person', 'identity_id']));
@@ -1 +1 @@
1
- {"version":3,"file":"PersonQueryBuilderFactory.js","sourceRoot":"","sources":["../../../../../src/model/queries/person/PersonQueryBuilderFactory.ts"],"names":[],"mappings":";;;AACA,kDAAmD;AAEnD,MAAa,yBAAyB;IAC9B,MAAM,CAAC,wBAAwB;QACrC,OAAO,wBAAa,CAAC,MAAM,EAAa;aACtC,MAAM,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;aACxB,MAAM,CAAC,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;aACnC,MAAM,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;aAC7B,MAAM,CAAC,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;aACtC,MAAM,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;aACjC,MAAM,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;aAC3B,MAAM,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;aAC1B,MAAM,CAAC,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;aAC7B,IAAI,CAAC,QAAQ,CAAC;aACd,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;IACtG,CAAC;CACD;AAdD,8DAcC"}
1
+ {"version":3,"file":"PersonQueryBuilderFactory.js","sourceRoot":"","sources":["../../../../../src/model/queries/person/PersonQueryBuilderFactory.ts"],"names":[],"mappings":";;;AACA,kDAAmD;AAEnD,MAAa,yBAAyB;IAC9B,MAAM,CAAC,wBAAwB;QACrC,OAAO,wBAAa,CAAC,MAAM,EAAa;aACtC,MAAM,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;aACxB,MAAM,CAAC,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;aACnC,MAAM,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;aAC7B,MAAM,CAAC,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;aACtC,MAAM,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;aACjC,MAAM,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;aAC3B,MAAM,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;aAC1B,MAAM,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;aACjC,MAAM,CAAC,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;aAC7B,IAAI,CAAC,QAAQ,CAAC;aACd,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;IACtG,CAAC;CACD;AAfD,8DAeC"}
@@ -4,9 +4,10 @@ export interface PersonRow {
4
4
  readonly identity_id: string;
5
5
  readonly otp_uri: string | null;
6
6
  readonly otp_activated_at: Date | null;
7
- readonly email?: string;
8
- readonly name?: string;
7
+ readonly email: string | null;
8
+ readonly name: string | null;
9
9
  readonly roles: string[];
10
+ readonly disabled_at: Date | null;
10
11
  }
11
- export declare type MaybePersonRow = PersonRow | null;
12
+ export type MaybePersonRow = PersonRow | null;
12
13
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/model/queries/person/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,QAAQ,CAAC,gBAAgB,EAAE,IAAI,GAAG,IAAI,CAAA;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,oBAAY,cAAc,GAAG,SAAS,GAAG,IAAI,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/model/queries/person/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,QAAQ,CAAC,gBAAgB,EAAE,IAAI,GAAG,IAAI,CAAA;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAA;IACxB,QAAQ,CAAC,WAAW,EAAE,IAAI,GAAG,IAAI,CAAA;CACjC;AAED,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,IAAI,CAAA"}
@@ -1,7 +1,7 @@
1
1
  /// <reference types="node" />
2
2
  import { DatabaseQuery, DatabaseQueryable } from '@contember/database';
3
3
  import { Providers } from '../../providers';
4
- declare type ProjectSecretsQueryResult = {
4
+ type ProjectSecretsQueryResult = {
5
5
  key: string;
6
6
  value: Buffer;
7
7
  needsReEncrypt: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectSecretsQuery.d.ts","sourceRoot":"","sources":["../../../../../src/model/queries/project/ProjectSecretsQuery.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAiB,MAAM,qBAAqB,CAAA;AACrF,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,aAAK,yBAAyB,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,OAAO,CAAA;CAAE,EAAE,CAAA;AAE1F,qBAAa,mBAAoB,SAAQ,aAAa,CAAC,yBAAyB,CAAC;IACpE,OAAO,CAAC,QAAQ,CAAC,SAAS;IAAU,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAA7C,SAAS,EAAE,MAAM,EAAmB,SAAS,EAAE,SAAS;IAI/E,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAAC,yBAAyB,CAAC;CAoB1E"}
1
+ {"version":3,"file":"ProjectSecretsQuery.d.ts","sourceRoot":"","sources":["../../../../../src/model/queries/project/ProjectSecretsQuery.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAiB,MAAM,qBAAqB,CAAA;AACrF,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,KAAK,yBAAyB,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,OAAO,CAAA;CAAE,EAAE,CAAA;AAE1F,qBAAa,mBAAoB,SAAQ,aAAa,CAAC,yBAAyB,CAAC;IACpE,OAAO,CAAC,QAAQ,CAAC,SAAS;IAAU,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAA7C,SAAS,EAAE,MAAM,EAAmB,SAAS,EAAE,SAAS;IAI/E,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAAC,yBAAyB,CAAC;CAoB1E"}
@@ -1 +1 @@
1
- {"version":3,"file":"IDPSignInManager.d.ts","sourceRoot":"","sources":["../../../../src/model/service/IDPSignInManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAA8D,SAAS,EAAE,MAAM,YAAY,CAAA;AAClG,OAAO,EAAY,kBAAkB,EAAwC,MAAM,OAAO,CAAA;AAC1F,OAAO,EAAE,QAAQ,EAA6B,MAAM,mBAAmB,CAAA;AACvE,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAM1C,cAAM,gBAAgB;IAEpB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,WAAW;gBADX,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,kBAAkB;IAG3C,SAAS,CACd,SAAS,EAAE,eAAe,EAC1B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,OAAO,EACrB,UAAU,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,CAAC,iBAAiB,CAAC;IAiCxC,aAAa,CAAC,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,qBAAqB,CAAC;YAkBlH,aAAa;YAwBb,MAAM;YAiBN,iBAAiB;CAG/B;AAED,kBAAU,gBAAgB,CAAC;IAC1B,MAAM,WAAW,mBAAmB;QACnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;QACxB,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAA;KACzB;IAED,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAA;IAEzF,UAAU,eAAe;QACxB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;QAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KACtB;IAED,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAA;;CAC7E;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
1
+ {"version":3,"file":"IDPSignInManager.d.ts","sourceRoot":"","sources":["../../../../src/model/service/IDPSignInManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAA8D,SAAS,EAAE,MAAM,YAAY,CAAA;AAClG,OAAO,EAAY,kBAAkB,EAAwC,MAAM,OAAO,CAAA;AAC1F,OAAO,EAAE,QAAQ,EAA6B,MAAM,mBAAmB,CAAA;AACvE,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAM1C,cAAM,gBAAgB;IAEpB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,WAAW;gBADX,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,kBAAkB;IAG3C,SAAS,CACd,SAAS,EAAE,eAAe,EAC1B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,OAAO,EACrB,UAAU,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,CAAC,iBAAiB,CAAC;IAsCxC,aAAa,CAAC,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,qBAAqB,CAAC;YAkBlH,aAAa;YAwBb,MAAM;YAiBN,iBAAiB;CAG/B;AAED,kBAAU,gBAAgB,CAAC;IAC1B,MAAM,WAAW,mBAAmB;QACnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;QACxB,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAA;KACzB;IAED,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAA;IAEzF,UAAU,eAAe;QACxB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;QAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KACtB;IAED,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAA;;CAC7E;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
@@ -4,7 +4,6 @@ exports.IDPSignInManager = void 0;
4
4
  const queries_1 = require("../queries");
5
5
  const idp_1 = require("./idp");
6
6
  const Response_1 = require("../utils/Response");
7
- const schema_1 = require("../../schema");
8
7
  const commands_1 = require("../commands");
9
8
  const authorization_1 = require("../authorization");
10
9
  const dtos_1 = require("../dtos");
@@ -27,16 +26,19 @@ class IDPSignInManager {
27
26
  }
28
27
  catch (e) {
29
28
  if (e instanceof idp_1.IDPResponseError) {
30
- return new Response_1.ResponseError(schema_1.SignInIdpErrorCode.InvalidIdpResponse, e.message);
29
+ return new Response_1.ResponseError('INVALID_IDP_RESPONSE', e.message);
31
30
  }
32
31
  if (e instanceof idp_1.IDPValidationError) {
33
- return new Response_1.ResponseError(schema_1.SignInIdpErrorCode.IdpValidationFailed, e.message);
32
+ return new Response_1.ResponseError('IDP_VALIDATION_FAILED', e.message);
34
33
  }
35
34
  throw e;
36
35
  }
37
36
  const personRow = await this.resolvePerson(db, claim, provider);
38
37
  if (!personRow) {
39
- return new Response_1.ResponseError(schema_1.SignInIdpErrorCode.PersonNotFound, `Person ${claim.email} not found`);
38
+ return new Response_1.ResponseError('PERSON_NOT_FOUND', `Person ${claim.email} not found`);
39
+ }
40
+ if (personRow.disabled_at !== null) {
41
+ return new Response_1.ResponseError('PERSON_DISABLED', `Person with e-mail ${claim.email} is disabled`);
40
42
  }
41
43
  const sessionToken = await this.apiKeyManager.createSessionApiKey(db, personRow.identity_id, expiration);
42
44
  return new Response_1.ResponseOk({ person: personRow, token: sessionToken });
@@ -45,7 +47,7 @@ class IDPSignInManager {
45
47
  async initSignInIDP(dbContext, idpSlug, data) {
46
48
  const provider = await dbContext.queryHandler.fetch(new queries_1.IdentityProviderBySlugQuery(idpSlug));
47
49
  if (!provider || provider.disabledAt) {
48
- return new Response_1.ResponseError(schema_1.InitSignInIdpErrorCode.ProviderNotFound, `Identity provider ${idpSlug} not found`);
50
+ return new Response_1.ResponseError('PROVIDER_NOT_FOUND', `Identity provider ${idpSlug} not found`);
49
51
  }
50
52
  const providerService = this.idpRegistry.getHandler(provider.type);
51
53
  const validatedConfig = providerService.validateConfiguration(provider.configuration);
@@ -55,7 +57,7 @@ class IDPSignInManager {
55
57
  }
56
58
  catch (e) {
57
59
  if (e instanceof idp_1.IDPValidationError) {
58
- return new Response_1.ResponseError(schema_1.InitSignInIdpErrorCode.IdpValidationFailed, e.message);
60
+ return new Response_1.ResponseError('IDP_VALIDATION_FAILED', e.message);
59
61
  }
60
62
  throw e;
61
63
  }
@@ -1 +1 @@
1
- {"version":3,"file":"IDPSignInManager.js","sourceRoot":"","sources":["../../../../src/model/service/IDPSignInManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IDPSignInManager.js","sourceRoot":"","sources":["../../../../src/model/service/IDPSignInManager.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@ export declare class InviteManager {
23
23
  constructor(providers: Providers, mailer: UserMailer);
24
24
  invite(dbContext: DatabaseContext, { email, project, name, memberships, method, emailVariant, noEmail, password, passwordResetTokenHash, }: InviteData): Promise<InviteResponse>;
25
25
  }
26
- export declare type InviteResponse = Response<InviteResult, InviteErrorCode>;
26
+ export type InviteResponse = Response<InviteResult, InviteErrorCode>;
27
27
  export declare class InviteResult {
28
28
  readonly person: Omit<PersonRow, 'roles'>;
29
29
  readonly isNew: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"InviteManager.d.ts","sourceRoot":"","sources":["../../../../src/model/service/InviteManager.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAe,SAAS,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAEvC,OAAO,EAAE,QAAQ,EAAc,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAErD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAEvC,MAAM,WAAW,UAAU;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,SAAS,GAAG,CAAC,UAAU,EAAE,CAAA;IACtC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,MAAM,CAAC,EAAE,YAAY,CAAA;IACrB,sBAAsB,CAAC,EAAE,SAAS,CAAA;CAClC;AAID,qBAAa,aAAa;IAExB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,UAAU;IAG9B,MAAM,CACX,SAAS,EAAE,eAAe,EAC1B,EACC,KAAK,EACL,OAAO,EACP,IAAI,EACJ,WAAW,EACX,MAAM,EACN,YAAY,EACZ,OAAe,EACf,QAAQ,EACR,sBAAsB,GACtB,EAAE,UAAU,GACX,OAAO,CAAC,cAAc,CAAC;CAgD1B;AAED,oBAAY,cAAc,GAAG,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC,CAAA;AAEpE,qBAAa,YAAY;aACI,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC;aAAkB,KAAK,EAAE,OAAO;gBAAhE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,EAAkB,KAAK,EAAE,OAAO;CAC5F"}
1
+ {"version":3,"file":"InviteManager.d.ts","sourceRoot":"","sources":["../../../../src/model/service/InviteManager.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAe,SAAS,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAEvC,OAAO,EAAE,QAAQ,EAAc,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAErD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAEvC,MAAM,WAAW,UAAU;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,SAAS,GAAG,CAAC,UAAU,EAAE,CAAA;IACtC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,MAAM,CAAC,EAAE,YAAY,CAAA;IACrB,sBAAsB,CAAC,EAAE,SAAS,CAAA;CAClC;AAID,qBAAa,aAAa;IAExB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,UAAU;IAG9B,MAAM,CACX,SAAS,EAAE,eAAe,EAC1B,EACC,KAAK,EACL,OAAO,EACP,IAAI,EACJ,WAAW,EACX,MAAM,EACN,YAAY,EACZ,OAAe,EACf,QAAQ,EACR,sBAAsB,GACtB,EAAE,UAAU,GACX,OAAO,CAAC,cAAc,CAAC;CAgD1B;AAED,MAAM,MAAM,cAAc,GAAG,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC,CAAA;AAEpE,qBAAa,YAAY;aACI,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC;aAAkB,KAAK,EAAE,OAAO;gBAAhE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,EAAkB,KAAK,EAAE,OAAO;CAC5F"}
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InviteResult = exports.InviteManager = void 0;
4
4
  const commands_1 = require("../commands");
5
5
  const queries_1 = require("../queries");
6
- const schema_1 = require("../../schema");
7
6
  const authorization_1 = require("../authorization");
8
7
  const membershipUtils_1 = require("./membershipUtils");
9
8
  const Response_1 = require("../utils/Response");
@@ -22,7 +21,7 @@ class InviteManager {
22
21
  let resetToken = null;
23
22
  if (!person) {
24
23
  const identityId = await trx.commandBus.execute(new commands_1.CreateIdentityCommand([authorization_1.TenantRole.PERSON]));
25
- generatedPassword = password !== null && password !== void 0 ? password : (method === schema_1.InviteMethod.CreatePassword ? (await this.providers.randomBytes(9)).toString('base64') : null);
24
+ generatedPassword = password !== null && password !== void 0 ? password : (method === 'CREATE_PASSWORD' ? (await this.providers.randomBytes(9)).toString('base64') : null);
26
25
  const passwordWrapper = generatedPassword !== null ? new dtos_1.PasswordPlain(generatedPassword) : dtos_1.NoPassword;
27
26
  person = await trx.commandBus.execute(new commands_1.CreatePersonCommand({
28
27
  identityId,
@@ -30,7 +29,7 @@ class InviteManager {
30
29
  name,
31
30
  password: passwordWrapper,
32
31
  }));
33
- if (method === schema_1.InviteMethod.ResetPassword) {
32
+ if (method === 'RESET_PASSWORD') {
34
33
  const result = await trx.commandBus.execute(new commands_1.CreatePasswordResetRequestCommand(person.id, INVITATION_RESET_TOKEN_EXPIRATION_MINUTES));
35
34
  resetToken = result.token;
36
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"InviteManager.js","sourceRoot":"","sources":["../../../../src/model/service/InviteManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InviteManager.js","sourceRoot":"","sources":["../../../../src/model/service/InviteManager.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ export declare class OtpAuthenticator {
10
10
  generate(secret: SecretLike): string;
11
11
  create(user: string, label: string): Promise<OtpData>;
12
12
  }
13
- declare type SecretLike = {
13
+ type SecretLike = {
14
14
  uri: string;
15
15
  } | {
16
16
  secret: string;
@@ -1 +1 @@
1
- {"version":3,"file":"OtpAuthenticator.d.ts","sourceRoot":"","sources":["../../../../src/model/service/OtpAuthenticator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAGxC,MAAM,WAAW,OAAO;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;CACX;AAID,qBAAa,gBAAgB;IAE3B,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,GAAG,aAAa,CAAC;IAI5D,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IAUpD,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAQ9B,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAYlE;AAED,aAAK,UAAU,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA"}
1
+ {"version":3,"file":"OtpAuthenticator.d.ts","sourceRoot":"","sources":["../../../../src/model/service/OtpAuthenticator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAGxC,MAAM,WAAW,OAAO;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;CACX;AAID,qBAAa,gBAAgB;IAE3B,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,GAAG,aAAa,CAAC;IAI5D,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IAUpD,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAQ9B,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAYlE;AAED,KAAK,UAAU,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PasswordChangeManager = void 0;
4
- const schema_1 = require("../../schema");
5
4
  const commands_1 = require("../commands");
6
5
  const password_1 = require("../utils/password");
7
6
  const Response_1 = require("../utils/Response");
@@ -12,7 +11,7 @@ class PasswordChangeManager {
12
11
  async changePassword(dbContext, personId, password) {
13
12
  const weakPassword = (0, password_1.getPasswordWeaknessMessage)(password);
14
13
  if (weakPassword) {
15
- return new Response_1.ResponseError(schema_1.ChangePasswordErrorCode.TooWeak, weakPassword);
14
+ return new Response_1.ResponseError('TOO_WEAK', weakPassword);
16
15
  }
17
16
  await dbContext.commandBus.execute(new commands_1.ChangePasswordCommand(personId, password));
18
17
  return new Response_1.ResponseOk(null);
@@ -20,13 +19,13 @@ class PasswordChangeManager {
20
19
  async changeMyPassword(dbContext, person, currentPassword, password) {
21
20
  const weakPassword = (0, password_1.getPasswordWeaknessMessage)(password);
22
21
  if (weakPassword) {
23
- return new Response_1.ResponseError(schema_1.ChangeMyPasswordErrorCode.TooWeak, weakPassword);
22
+ return new Response_1.ResponseError('TOO_WEAK', weakPassword);
24
23
  }
25
24
  if (!person.password_hash) {
26
- return new Response_1.ResponseError(schema_1.ChangeMyPasswordErrorCode.NoPasswordSet, 'No password set');
25
+ return new Response_1.ResponseError('NO_PASSWORD_SET', 'No password set');
27
26
  }
28
27
  if (!(await this.providers.bcryptCompare(currentPassword, person.password_hash))) {
29
- return new Response_1.ResponseError(schema_1.ChangeMyPasswordErrorCode.InvalidPassword, 'Password does not match');
28
+ return new Response_1.ResponseError('INVALID_PASSWORD', 'Password does not match');
30
29
  }
31
30
  await dbContext.commandBus.execute(new commands_1.ChangePasswordCommand(person.id, password));
32
31
  return new Response_1.ResponseOk(null);
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordChangeManager.js","sourceRoot":"","sources":["../../../../src/model/service/PasswordChangeManager.ts"],"names":[],"mappings":";;;AAAA,yCAAiF;AACjF,0CAAmD;AACnD,gDAA8D;AAC9D,gDAAuE;AAKvE,MAAM,qBAAqB;IAC1B,YACkB,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;IACnC,CAAC;IAEJ,KAAK,CAAC,cAAc,CAAC,SAA0B,EAAE,QAAgB,EAAE,QAAgB;QAClF,MAAM,YAAY,GAAG,IAAA,qCAA0B,EAAC,QAAQ,CAAC,CAAA;QACzD,IAAI,YAAY,EAAE;YACjB,OAAO,IAAI,wBAAa,CAAC,gCAAuB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;SACvE;QACD,MAAM,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,gCAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAA;QACjF,OAAO,IAAI,qBAAU,CAAC,IAAI,CAAC,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,SAA0B,EAAE,MAAiB,EAAE,eAAuB,EAAE,QAAgB;QAC9G,MAAM,YAAY,GAAG,IAAA,qCAA0B,EAAC,QAAQ,CAAC,CAAA;QACzD,IAAI,YAAY,EAAE;YACjB,OAAO,IAAI,wBAAa,CAAC,kCAAyB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;SACzE;QACD,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;YAC1B,OAAO,IAAI,wBAAa,CAAC,kCAAyB,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAA;SACpF;QACD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,eAAe,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE;YACjF,OAAO,IAAI,wBAAa,CAAC,kCAAyB,CAAC,eAAe,EAAE,yBAAyB,CAAC,CAAA;SAC9F;QAED,MAAM,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,gCAAqB,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAA;QAClF,OAAO,IAAI,qBAAU,CAAC,IAAI,CAAC,CAAA;IAC5B,CAAC;CACD;AAMQ,sDAAqB"}
1
+ {"version":3,"file":"PasswordChangeManager.js","sourceRoot":"","sources":["../../../../src/model/service/PasswordChangeManager.ts"],"names":[],"mappings":";;;AACA,0CAAmD;AACnD,gDAA8D;AAC9D,gDAAuE;AAKvE,MAAM,qBAAqB;IAC1B,YACkB,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;IACnC,CAAC;IAEJ,KAAK,CAAC,cAAc,CAAC,SAA0B,EAAE,QAAgB,EAAE,QAAgB;QAClF,MAAM,YAAY,GAAG,IAAA,qCAA0B,EAAC,QAAQ,CAAC,CAAA;QACzD,IAAI,YAAY,EAAE;YACjB,OAAO,IAAI,wBAAa,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;SAClD;QACD,MAAM,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,gCAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAA;QACjF,OAAO,IAAI,qBAAU,CAAC,IAAI,CAAC,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,SAA0B,EAAE,MAAiB,EAAE,eAAuB,EAAE,QAAgB;QAC9G,MAAM,YAAY,GAAG,IAAA,qCAA0B,EAAC,QAAQ,CAAC,CAAA;QACzD,IAAI,YAAY,EAAE;YACjB,OAAO,IAAI,wBAAa,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;SAClD;QACD,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;YAC1B,OAAO,IAAI,wBAAa,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAA;SAC9D;QACD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,eAAe,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE;YACjF,OAAO,IAAI,wBAAa,CAAC,kBAAkB,EAAE,yBAAyB,CAAC,CAAA;SACvE;QAED,MAAM,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,gCAAqB,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAA;QAClF,OAAO,IAAI,qBAAU,CAAC,IAAI,CAAC,CAAA;IAC5B,CAAC;CACD;AAMQ,sDAAqB"}
@@ -16,9 +16,7 @@ export declare class PasswordResetManager {
16
16
  createPasswordResetRequest(dbContext: DatabaseContext, permissionContext: PermissionContext, person: PersonRow, mailOptions?: MailOptions): Promise<void>;
17
17
  resetPassword(dbContext: DatabaseContext, token: string, password: string): Promise<ResetPasswordResponse>;
18
18
  }
19
- export declare enum ResetPasswordErrorCode {
20
- PASSWORD_TOO_WEAK = "PASSWORD_TOO_WEAK"
21
- }
22
- export declare type ResetPasswordResponse = Response<undefined, ResetPasswordErrorCode | ResetPasswordCommandErrorCode>;
19
+ export type ResetPasswordErrorCode = 'PASSWORD_TOO_WEAK';
20
+ export type ResetPasswordResponse = Response<null, ResetPasswordErrorCode | ResetPasswordCommandErrorCode>;
23
21
  export {};
24
22
  //# sourceMappingURL=PasswordResetManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordResetManager.d.ts","sourceRoot":"","sources":["../../../../src/model/service/PasswordResetManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2D,6BAA6B,EAAE,MAAM,aAAa,CAAA;AACpH,OAAO,EAAE,QAAQ,EAAiB,MAAM,mBAAmB,CAAA;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAG1C,UAAU,WAAW;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,qBAAa,oBAAoB;IAE/B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,cAAc;gBADd,MAAM,EAAE,UAAU,EAClB,cAAc,EAAE,cAAc;IAGnC,0BAA0B,CACtC,SAAS,EAAE,eAAe,EAC1B,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,SAAS,EACjB,WAAW,GAAE,WAAgB,GAC3B,OAAO,CAAC,IAAI,CAAC;IA6BH,aAAa,CAAC,SAAS,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;CAOvH;AAED,oBAAY,sBAAsB;IACjC,iBAAiB,sBAAsB;CACvC;AAED,oBAAY,qBAAqB,GAAG,QAAQ,CAAC,SAAS,EAAE,sBAAsB,GAAG,6BAA6B,CAAC,CAAA"}
1
+ {"version":3,"file":"PasswordResetManager.d.ts","sourceRoot":"","sources":["../../../../src/model/service/PasswordResetManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2D,6BAA6B,EAAE,MAAM,aAAa,CAAA;AACpH,OAAO,EAAE,QAAQ,EAAiB,MAAM,mBAAmB,CAAA;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAG1C,UAAU,WAAW;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,qBAAa,oBAAoB;IAE/B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,cAAc;gBADd,MAAM,EAAE,UAAU,EAClB,cAAc,EAAE,cAAc;IAGnC,0BAA0B,CACtC,SAAS,EAAE,eAAe,EAC1B,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,SAAS,EACjB,WAAW,GAAE,WAAgB,GAC3B,OAAO,CAAC,IAAI,CAAC;IA6BH,aAAa,CAAC,SAAS,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;CAOvH;AAED,MAAM,MAAM,sBAAsB,GAAG,mBAAmB,CAAA;AAExD,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC,IAAI,EAAE,sBAAsB,GAAG,6BAA6B,CAAC,CAAA"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ResetPasswordErrorCode = exports.PasswordResetManager = void 0;
3
+ exports.PasswordResetManager = void 0;
4
4
  const commands_1 = require("../commands");
5
5
  const Response_1 = require("../utils/Response");
6
6
  const password_1 = require("../utils/password");
@@ -37,14 +37,10 @@ class PasswordResetManager {
37
37
  async resetPassword(dbContext, token, password) {
38
38
  const weakPassword = (0, password_1.getPasswordWeaknessMessage)(password);
39
39
  if (weakPassword) {
40
- return new Response_1.ResponseError(ResetPasswordErrorCode.PASSWORD_TOO_WEAK, weakPassword);
40
+ return new Response_1.ResponseError('PASSWORD_TOO_WEAK', weakPassword);
41
41
  }
42
42
  return await dbContext.commandBus.execute(new commands_1.ResetPasswordCommand(token, password));
43
43
  }
44
44
  }
45
45
  exports.PasswordResetManager = PasswordResetManager;
46
- var ResetPasswordErrorCode;
47
- (function (ResetPasswordErrorCode) {
48
- ResetPasswordErrorCode["PASSWORD_TOO_WEAK"] = "PASSWORD_TOO_WEAK";
49
- })(ResetPasswordErrorCode = exports.ResetPasswordErrorCode || (exports.ResetPasswordErrorCode = {}));
50
46
  //# sourceMappingURL=PasswordResetManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordResetManager.js","sourceRoot":"","sources":["../../../../src/model/service/PasswordResetManager.ts"],"names":[],"mappings":";;;AAAA,0CAAoH;AACpH,gDAA2D;AAC3D,gDAA8D;AAM9D,iDAA0D;AAO1D,MAAa,oBAAoB;IAChC,YACkB,MAAkB,EAClB,cAA8B;QAD9B,WAAM,GAAN,MAAM,CAAY;QAClB,mBAAc,GAAd,cAAc,CAAgB;IAC7C,CAAC;IAEG,KAAK,CAAC,0BAA0B,CACtC,SAA0B,EAC1B,iBAAoC,EACpC,MAAiB,EACjB,cAA2B,EAAE;QAE7B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,4CAAiC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;QACnG,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,SAAS,EAAE,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAA;QAClH,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE;YACrB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC1B,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAA;aAClB;iBAAM,IAAI,WAAW,CAAC,OAAO,EAAE;gBAC/B,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,WAAW,CAAC,OAAO,CAAC,IAAI,IAAI,CAAA;aACnE;YACD,OAAO,IAAI,CAAA;QACZ,CAAC,CAAC,EAAE,CAAA;QACJ,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;YAClB,MAAM,IAAI,oCAAuB,EAAE,CAAA;SACnC;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,sBAAsB,CACvC,SAAS,EACT;YACC,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,OAAO,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI;SACtB,EACD;YACC,OAAO,EAAE,WAAW,CAAC,WAAW,IAAI,EAAE;YACtC,SAAS,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,EAAE;SACtB,CACD,CAAA;IACF,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,SAA0B,EAAE,KAAa,EAAE,QAAgB;QACrF,MAAM,YAAY,GAAG,IAAA,qCAA0B,EAAC,QAAQ,CAAC,CAAA;QACzD,IAAI,YAAY,EAAE;YACjB,OAAO,IAAI,wBAAa,CAAC,sBAAsB,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAA;SAChF;QACD,OAAO,MAAM,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,+BAAoB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;IACrF,CAAC;CACD;AA/CD,oDA+CC;AAED,IAAY,sBAEX;AAFD,WAAY,sBAAsB;IACjC,iEAAuC,CAAA;AACxC,CAAC,EAFW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAEjC"}
1
+ {"version":3,"file":"PasswordResetManager.js","sourceRoot":"","sources":["../../../../src/model/service/PasswordResetManager.ts"],"names":[],"mappings":";;;AAAA,0CAAoH;AACpH,gDAA2D;AAC3D,gDAA8D;AAM9D,iDAA0D;AAO1D,MAAa,oBAAoB;IAChC,YACkB,MAAkB,EAClB,cAA8B;QAD9B,WAAM,GAAN,MAAM,CAAY;QAClB,mBAAc,GAAd,cAAc,CAAgB;IAC7C,CAAC;IAEG,KAAK,CAAC,0BAA0B,CACtC,SAA0B,EAC1B,iBAAoC,EACpC,MAAiB,EACjB,cAA2B,EAAE;QAE7B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,4CAAiC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;QACnG,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,SAAS,EAAE,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAA;QAClH,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE;YACrB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC1B,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAA;aAClB;iBAAM,IAAI,WAAW,CAAC,OAAO,EAAE;gBAC/B,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,WAAW,CAAC,OAAO,CAAC,IAAI,IAAI,CAAA;aACnE;YACD,OAAO,IAAI,CAAA;QACZ,CAAC,CAAC,EAAE,CAAA;QACJ,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;YAClB,MAAM,IAAI,oCAAuB,EAAE,CAAA;SACnC;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,sBAAsB,CACvC,SAAS,EACT;YACC,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,OAAO,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI;SACtB,EACD;YACC,OAAO,EAAE,WAAW,CAAC,WAAW,IAAI,EAAE;YACtC,SAAS,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,EAAE;SACtB,CACD,CAAA;IACF,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,SAA0B,EAAE,KAAa,EAAE,QAAgB;QACrF,MAAM,YAAY,GAAG,IAAA,qCAA0B,EAAC,QAAQ,CAAC,CAAA;QACzD,IAAI,YAAY,EAAE;YACjB,OAAO,IAAI,wBAAa,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAA;SAC3D;QACD,OAAO,MAAM,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,+BAAoB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;IACrF,CAAC;CACD;AA/CD,oDA+CC"}
@@ -0,0 +1,14 @@
1
+ import { DatabaseContext } from '../utils';
2
+ import { ApiKeyManager } from './apiKey';
3
+ import { Response } from '../utils/Response';
4
+ import { DisablePersonErrorCode } from '../../schema';
5
+ declare class PersonAccessManager {
6
+ private readonly apiKeyManager;
7
+ constructor(apiKeyManager: ApiKeyManager);
8
+ disablePerson(dbContext: DatabaseContext, personId: string): Promise<PersonDisableAccessResponse>;
9
+ private disablePersonAccount;
10
+ private disableIdentityApiKeys;
11
+ }
12
+ export type PersonDisableAccessResponse = Response<null, DisablePersonErrorCode>;
13
+ export { PersonAccessManager };
14
+ //# sourceMappingURL=PersonAccessManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PersonAccessManager.d.ts","sourceRoot":"","sources":["../../../../src/model/service/PersonAccessManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAE1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,QAAQ,EAA6B,MAAM,mBAAmB,CAAA;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAA;AAErD,cAAM,mBAAmB;IAEZ,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAAb,aAAa,EAAE,aAAa;IAEnD,aAAa,CAAC,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC;YAiCzF,oBAAoB;YAIpB,sBAAsB;CAGpC;AAED,MAAM,MAAM,2BAA2B,GAAG,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAA;AAEhF,OAAO,EAAE,mBAAmB,EAAE,CAAA"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PersonAccessManager = void 0;
4
+ const queries_1 = require("../queries");
5
+ const DisablePersonCommand_1 = require("../commands/person/DisablePersonCommand");
6
+ const Response_1 = require("../utils/Response");
7
+ class PersonAccessManager {
8
+ constructor(apiKeyManager) {
9
+ this.apiKeyManager = apiKeyManager;
10
+ }
11
+ async disablePerson(dbContext, personId) {
12
+ const result = await dbContext.transaction(async (trx) => {
13
+ const personRow = await trx.queryHandler.fetch(queries_1.PersonQuery.byId(personId));
14
+ if (personRow === null) {
15
+ return 'PERSON_NOT_FOUND';
16
+ }
17
+ if (personRow.disabled_at !== null) {
18
+ return 'PERSON_ALREADY_DISABLED';
19
+ }
20
+ // Deactivate person & invalidate all api keys associated with person identity
21
+ await this.disablePersonAccount(trx, personRow.id);
22
+ await this.disableIdentityApiKeys(trx, personRow.identity_id);
23
+ return null;
24
+ });
25
+ switch (result) {
26
+ case null:
27
+ return new Response_1.ResponseOk(null);
28
+ case 'PERSON_ALREADY_DISABLED':
29
+ return new Response_1.ResponseError(result, 'Person is already disable');
30
+ case 'PERSON_NOT_FOUND':
31
+ return new Response_1.ResponseError(result, 'Person not found');
32
+ }
33
+ }
34
+ async disablePersonAccount(dbContext, personId) {
35
+ await dbContext.commandBus.execute(new DisablePersonCommand_1.DisablePersonCommand(personId));
36
+ }
37
+ async disableIdentityApiKeys(dbContext, personIdentityId) {
38
+ await this.apiKeyManager.disableIdentityApiKeys(dbContext, personIdentityId);
39
+ }
40
+ }
41
+ exports.PersonAccessManager = PersonAccessManager;
42
+ //# sourceMappingURL=PersonAccessManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PersonAccessManager.js","sourceRoot":"","sources":["../../../../src/model/service/PersonAccessManager.ts"],"names":[],"mappings":";;;AAAA,wCAAwC;AAExC,kFAA8E;AAE9E,gDAAuE;AAGvE,MAAM,mBAAmB;IAExB,YAA6B,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;IAAG,CAAC;IAE7D,KAAK,CAAC,aAAa,CAAC,SAA0B,EAAE,QAAgB;QAC/D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YACtD,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,KAAK,CAC7C,qBAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC1B,CAAA;YAED,IAAI,SAAS,KAAK,IAAI,EAAE;gBACvB,OAAO,kBAAkB,CAAA;aACzB;YAED,IAAI,SAAS,CAAC,WAAW,KAAK,IAAI,EAAE;gBACnC,OAAO,yBAAyB,CAAA;aAChC;YAED,8EAA8E;YAC9E,MAAM,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,CAAC,CAAA;YAClD,MAAM,IAAI,CAAC,sBAAsB,CAAC,GAAG,EAAE,SAAS,CAAC,WAAW,CAAC,CAAA;YAE7D,OAAO,IAAI,CAAA;QACZ,CAAC,CAAC,CAAA;QAEF,QAAQ,MAAM,EAAE;YACf,KAAK,IAAI;gBACR,OAAO,IAAI,qBAAU,CAAC,IAAI,CAAC,CAAA;YAE5B,KAAK,yBAAyB;gBAC7B,OAAO,IAAI,wBAAa,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAA;YAE9D,KAAK,kBAAkB;gBACtB,OAAO,IAAI,wBAAa,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;SACrD;IACF,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,SAA0B,EAAE,QAAgB;QAC9E,MAAM,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,2CAAoB,CAAC,QAAQ,CAAC,CAAC,CAAA;IACvE,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,SAA0B,EAAE,gBAAwB;QACxF,MAAM,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAA;IAC7E,CAAC;CACD;AAIQ,kDAAmB"}
@@ -0,0 +1,7 @@
1
+ import { PersonRow } from '../queries';
2
+ import { DatabaseContext } from '../utils';
3
+ declare class PersonManager {
4
+ findPersonById(dbContext: DatabaseContext, personId: string): Promise<PersonRow | null>;
5
+ }
6
+ export { PersonManager };
7
+ //# sourceMappingURL=PersonManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PersonManager.d.ts","sourceRoot":"","sources":["../../../../src/model/service/PersonManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,SAAS,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAE1C,cAAM,aAAa;IAEZ,cAAc,CAAC,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;CAM7F;AAED,OAAO,EAAE,aAAa,EAAE,CAAA"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PersonManager = void 0;
4
+ const queries_1 = require("../queries");
5
+ class PersonManager {
6
+ async findPersonById(dbContext, personId) {
7
+ return await dbContext.queryHandler.fetch(queries_1.PersonQuery.byId(personId));
8
+ }
9
+ }
10
+ exports.PersonManager = PersonManager;
11
+ //# sourceMappingURL=PersonManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PersonManager.js","sourceRoot":"","sources":["../../../../src/model/service/PersonManager.ts"],"names":[],"mappings":";;;AAAA,wCAAmD;AAGnD,MAAM,aAAa;IAElB,KAAK,CAAC,cAAc,CAAC,SAA0B,EAAE,QAAgB;QAChE,OAAO,MAAM,SAAS,CAAC,YAAY,CAAC,KAAK,CACxC,qBAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC1B,CAAA;IACF,CAAC;CAED;AAEQ,sCAAa"}
@@ -25,7 +25,7 @@ export declare class ProjectManager {
25
25
  }
26
26
  export declare class ProjectInitError extends Error {
27
27
  }
28
- export declare type CreateProjectResponse = Response<CreateProjectResult, CreateProjectResponseErrorCode>;
28
+ export type CreateProjectResponse = Response<CreateProjectResult, CreateProjectResponseErrorCode>;
29
29
  export declare class CreateProjectResult {
30
30
  readonly deployerApiKey?: CreateApiKeyResult | undefined;
31
31
  constructor(deployerApiKey?: CreateApiKeyResult | undefined);