@contember/engine-tenant-api 2.1.0-alpha.3 → 2.1.0-alpha.30

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 (776) hide show
  1. package/dist/development/index.cjs +5 -6
  2. package/dist/development/index.cjs.map +1 -1
  3. package/dist/development/index.js +2 -3
  4. package/dist/development/src/TenantContainer.cjs +4 -2
  5. package/dist/development/src/TenantContainer.cjs.map +1 -1
  6. package/dist/development/src/TenantContainer.js +4 -2
  7. package/dist/development/src/TenantContainer.js.map +1 -1
  8. package/dist/development/src/bridges/system/IdentityFetcher.cjs +1 -0
  9. package/dist/development/src/bridges/system/IdentityFetcher.cjs.map +1 -1
  10. package/dist/development/src/bridges/system/IdentityFetcher.js +1 -0
  11. package/dist/development/src/bridges/system/IdentityFetcher.js.map +1 -1
  12. package/dist/development/src/migrations/2025-04-16-180000-config-up.cjs +39 -0
  13. package/dist/development/src/migrations/2025-04-16-180000-config-up.cjs.map +1 -0
  14. package/dist/development/src/migrations/2025-04-16-180000-config-up.js +40 -0
  15. package/dist/development/src/migrations/2025-04-16-180000-config-up.js.map +1 -0
  16. package/dist/development/src/migrations/2025-04-17-160000-auth-log.cjs +45 -0
  17. package/dist/development/src/migrations/2025-04-17-160000-auth-log.cjs.map +1 -0
  18. package/dist/development/src/migrations/2025-04-17-160000-auth-log.js +46 -0
  19. package/dist/development/src/migrations/2025-04-17-160000-auth-log.js.map +1 -0
  20. package/dist/development/src/migrations/runner.cjs +9 -4
  21. package/dist/development/src/migrations/runner.cjs.map +1 -1
  22. package/dist/development/src/migrations/runner.js +7 -2
  23. package/dist/development/src/migrations/runner.js.map +1 -1
  24. package/dist/development/src/migrations/snapshot.cjs +56 -1
  25. package/dist/development/src/migrations/snapshot.cjs.map +1 -1
  26. package/dist/development/src/migrations/snapshot.js +56 -1
  27. package/dist/development/src/migrations/snapshot.js.map +1 -1
  28. package/dist/development/src/model/authorization/MembershipMatcher.cjs +6 -0
  29. package/dist/development/src/model/authorization/MembershipMatcher.cjs.map +1 -1
  30. package/dist/development/src/model/authorization/MembershipMatcher.js +6 -0
  31. package/dist/development/src/model/authorization/MembershipMatcher.js.map +1 -1
  32. package/dist/development/src/model/authorization/PermissionsFactory.cjs +2 -0
  33. package/dist/development/src/model/authorization/PermissionsFactory.cjs.map +1 -1
  34. package/dist/development/src/model/authorization/PermissionsFactory.js +2 -0
  35. package/dist/development/src/model/authorization/PermissionsFactory.js.map +1 -1
  36. package/dist/development/src/model/commands/apiKey/CreateApiKeyCommand.cjs +7 -7
  37. package/dist/development/src/model/commands/apiKey/CreateApiKeyCommand.cjs.map +1 -1
  38. package/dist/development/src/model/commands/apiKey/CreateApiKeyCommand.js +1 -1
  39. package/dist/development/src/model/commands/authLog/CreateAuthLogEntryCommand.cjs +27 -0
  40. package/dist/development/src/model/commands/authLog/CreateAuthLogEntryCommand.cjs.map +1 -0
  41. package/dist/development/src/model/commands/authLog/CreateAuthLogEntryCommand.js +27 -0
  42. package/dist/development/src/model/commands/authLog/CreateAuthLogEntryCommand.js.map +1 -0
  43. package/dist/development/src/model/commands/configuration/UpdateConfigurationCommand.cjs +15 -2
  44. package/dist/development/src/model/commands/configuration/UpdateConfigurationCommand.cjs.map +1 -1
  45. package/dist/development/src/model/commands/configuration/UpdateConfigurationCommand.js +15 -2
  46. package/dist/development/src/model/commands/configuration/UpdateConfigurationCommand.js.map +1 -1
  47. package/dist/development/src/model/commands/personToken/CreatePersonTokenCommand.cjs +4 -4
  48. package/dist/development/src/model/commands/personToken/CreatePersonTokenCommand.cjs.map +1 -1
  49. package/dist/development/src/model/commands/personToken/CreatePersonTokenCommand.js +1 -1
  50. package/dist/development/src/model/commands/personToken/ResetPasswordCommand.cjs +5 -5
  51. package/dist/development/src/model/commands/personToken/ResetPasswordCommand.cjs.map +1 -1
  52. package/dist/development/src/model/commands/personToken/ResetPasswordCommand.js +1 -1
  53. package/dist/development/src/model/mailing/UserMailer.cjs.map +1 -1
  54. package/dist/development/src/model/mailing/UserMailer.js.map +1 -1
  55. package/dist/development/src/model/queries/apiKey/ApiKeyQuery.cjs +4 -4
  56. package/dist/development/src/model/queries/apiKey/ApiKeyQuery.cjs.map +1 -1
  57. package/dist/development/src/model/queries/apiKey/ApiKeyQuery.js +1 -1
  58. package/dist/development/src/model/queries/authLog/NextLoginAttemptQuery.cjs +46 -0
  59. package/dist/development/src/model/queries/authLog/NextLoginAttemptQuery.cjs.map +1 -0
  60. package/dist/development/src/model/queries/authLog/NextLoginAttemptQuery.js +46 -0
  61. package/dist/development/src/model/queries/authLog/NextLoginAttemptQuery.js.map +1 -0
  62. package/dist/development/src/model/queries/configuration/ConfigurationQuery.cjs +18 -1
  63. package/dist/development/src/model/queries/configuration/ConfigurationQuery.cjs.map +1 -1
  64. package/dist/development/src/model/queries/configuration/ConfigurationQuery.js +18 -1
  65. package/dist/development/src/model/queries/configuration/ConfigurationQuery.js.map +1 -1
  66. package/dist/development/src/model/queries/personToken/PersonTokenQuery.cjs +3 -3
  67. package/dist/development/src/model/queries/personToken/PersonTokenQuery.cjs.map +1 -1
  68. package/dist/development/src/model/queries/personToken/PersonTokenQuery.js +1 -1
  69. package/dist/development/src/model/service/AuthLogService.cjs +34 -0
  70. package/dist/development/src/model/service/AuthLogService.cjs.map +1 -0
  71. package/dist/development/src/model/service/AuthLogService.js +34 -0
  72. package/dist/development/src/model/service/AuthLogService.js.map +1 -0
  73. package/dist/development/src/model/service/ConfigurationManager.cjs +0 -10
  74. package/dist/development/src/model/service/ConfigurationManager.cjs.map +1 -1
  75. package/dist/development/src/model/service/ConfigurationManager.js +0 -10
  76. package/dist/development/src/model/service/ConfigurationManager.js.map +1 -1
  77. package/dist/development/src/model/service/IDPSignInManager.cjs +37 -5
  78. package/dist/development/src/model/service/IDPSignInManager.cjs.map +1 -1
  79. package/dist/development/src/model/service/IDPSignInManager.js +37 -5
  80. package/dist/development/src/model/service/IDPSignInManager.js.map +1 -1
  81. package/dist/development/src/model/service/MembershipValidator.cjs +1 -1
  82. package/dist/development/src/model/service/MembershipValidator.cjs.map +1 -1
  83. package/dist/development/src/model/service/MembershipValidator.js +1 -1
  84. package/dist/development/src/model/service/MembershipValidator.js.map +1 -1
  85. package/dist/development/src/model/service/PasswordChangeManager.cjs +21 -12
  86. package/dist/development/src/model/service/PasswordChangeManager.cjs.map +1 -1
  87. package/dist/development/src/model/service/PasswordChangeManager.js +20 -11
  88. package/dist/development/src/model/service/PasswordChangeManager.js.map +1 -1
  89. package/dist/development/src/model/service/PasswordResetManager.cjs +40 -8
  90. package/dist/development/src/model/service/PasswordResetManager.cjs.map +1 -1
  91. package/dist/development/src/model/service/PasswordResetManager.js +40 -8
  92. package/dist/development/src/model/service/PasswordResetManager.js.map +1 -1
  93. package/dist/development/src/model/service/PasswordStrengthValidator.cjs +63 -0
  94. package/dist/development/src/model/service/PasswordStrengthValidator.cjs.map +1 -0
  95. package/dist/development/src/model/service/PasswordStrengthValidator.js +63 -0
  96. package/dist/development/src/model/service/PasswordStrengthValidator.js.map +1 -0
  97. package/dist/development/src/model/service/PasswordlessSignInManager.cjs +91 -25
  98. package/dist/development/src/model/service/PasswordlessSignInManager.cjs.map +1 -1
  99. package/dist/development/src/model/service/PasswordlessSignInManager.js +83 -17
  100. package/dist/development/src/model/service/PasswordlessSignInManager.js.map +1 -1
  101. package/dist/development/src/model/service/PersonAccessManager.cjs +7 -29
  102. package/dist/development/src/model/service/PersonAccessManager.cjs.map +1 -1
  103. package/dist/development/src/model/service/PersonAccessManager.js +7 -29
  104. package/dist/development/src/model/service/PersonAccessManager.js.map +1 -1
  105. package/dist/development/src/model/service/SignInManager.cjs +56 -31
  106. package/dist/development/src/model/service/SignInManager.cjs.map +1 -1
  107. package/dist/development/src/model/service/SignInManager.js +57 -32
  108. package/dist/development/src/model/service/SignInManager.js.map +1 -1
  109. package/dist/development/src/model/service/SignUpManager.cjs +13 -8
  110. package/dist/development/src/model/service/SignUpManager.cjs.map +1 -1
  111. package/dist/development/src/model/service/SignUpManager.js +11 -6
  112. package/dist/development/src/model/service/SignUpManager.js.map +1 -1
  113. package/dist/development/src/model/service/apiKey/ApiKeyManager.cjs +6 -1
  114. package/dist/development/src/model/service/apiKey/ApiKeyManager.cjs.map +1 -1
  115. package/dist/development/src/model/service/apiKey/ApiKeyManager.js +6 -1
  116. package/dist/development/src/model/service/apiKey/ApiKeyManager.js.map +1 -1
  117. package/dist/development/src/model/utils/Response.cjs +2 -1
  118. package/dist/development/src/model/utils/Response.cjs.map +1 -1
  119. package/dist/development/src/model/utils/Response.js +2 -1
  120. package/dist/development/src/model/utils/Response.js.map +1 -1
  121. package/dist/development/src/model/utils/blacklist.cjs +10006 -0
  122. package/dist/development/src/model/utils/blacklist.cjs.map +1 -0
  123. package/dist/development/src/model/utils/blacklist.js +10006 -0
  124. package/dist/development/src/model/utils/blacklist.js.map +1 -0
  125. package/dist/{production/src/model/utils/typeUtils.cjs → development/src/model/utils/hex.cjs} +1 -1
  126. package/dist/development/src/model/utils/hex.cjs.map +1 -0
  127. package/dist/development/src/model/utils/{typeUtils.js → hex.js} +1 -1
  128. package/dist/development/src/model/utils/hex.js.map +1 -0
  129. package/dist/development/src/model/utils/interval.cjs +8 -0
  130. package/dist/development/src/model/utils/interval.cjs.map +1 -0
  131. package/dist/development/src/model/utils/interval.js +8 -0
  132. package/dist/development/src/model/utils/interval.js.map +1 -0
  133. package/dist/development/src/model/utils/{tokenUtils.cjs → token.cjs} +3 -3
  134. package/dist/development/src/model/utils/token.cjs.map +1 -0
  135. package/dist/development/src/model/utils/{tokenUtils.js → token.js} +2 -2
  136. package/dist/development/src/model/utils/token.js.map +1 -0
  137. package/dist/development/src/resolvers/ResolverFactory.cjs +1 -0
  138. package/dist/development/src/resolvers/ResolverFactory.cjs.map +1 -1
  139. package/dist/development/src/resolvers/ResolverFactory.js +2 -1
  140. package/dist/development/src/resolvers/ResolverFactory.js.map +1 -1
  141. package/dist/development/src/resolvers/TenantResolverContextFactory.cjs +10 -2
  142. package/dist/development/src/resolvers/TenantResolverContextFactory.cjs.map +1 -1
  143. package/dist/development/src/resolvers/TenantResolverContextFactory.js +10 -2
  144. package/dist/development/src/resolvers/TenantResolverContextFactory.js.map +1 -1
  145. package/dist/development/src/resolvers/errorUtils.cjs +15 -4
  146. package/dist/development/src/resolvers/errorUtils.cjs.map +1 -1
  147. package/dist/development/src/resolvers/errorUtils.js +15 -4
  148. package/dist/development/src/resolvers/errorUtils.js.map +1 -1
  149. package/dist/development/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.cjs +4 -3
  150. package/dist/development/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.cjs.map +1 -1
  151. package/dist/development/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js +2 -1
  152. package/dist/development/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js.map +1 -1
  153. package/dist/development/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.cjs +1 -0
  154. package/dist/development/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.cjs.map +1 -1
  155. package/dist/development/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js +1 -0
  156. package/dist/development/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js.map +1 -1
  157. package/dist/development/src/resolvers/mutation/configuration/ConfigurationMutationResolver.cjs +1 -0
  158. package/dist/development/src/resolvers/mutation/configuration/ConfigurationMutationResolver.cjs.map +1 -1
  159. package/dist/development/src/resolvers/mutation/configuration/ConfigurationMutationResolver.js +1 -0
  160. package/dist/development/src/resolvers/mutation/configuration/ConfigurationMutationResolver.js.map +1 -1
  161. package/dist/development/src/resolvers/mutation/identity/GlobalRolesMutationResolver.cjs +1 -0
  162. package/dist/development/src/resolvers/mutation/identity/GlobalRolesMutationResolver.cjs.map +1 -1
  163. package/dist/development/src/resolvers/mutation/identity/GlobalRolesMutationResolver.js +1 -0
  164. package/dist/development/src/resolvers/mutation/identity/GlobalRolesMutationResolver.js.map +1 -1
  165. package/dist/development/src/resolvers/mutation/idp/AddIDPMutationResolver.cjs +1 -0
  166. package/dist/development/src/resolvers/mutation/idp/AddIDPMutationResolver.cjs.map +1 -1
  167. package/dist/development/src/resolvers/mutation/idp/AddIDPMutationResolver.js +1 -0
  168. package/dist/development/src/resolvers/mutation/idp/AddIDPMutationResolver.js.map +1 -1
  169. package/dist/development/src/resolvers/mutation/idp/DisableIDPMutationResolver.cjs +1 -0
  170. package/dist/development/src/resolvers/mutation/idp/DisableIDPMutationResolver.cjs.map +1 -1
  171. package/dist/development/src/resolvers/mutation/idp/DisableIDPMutationResolver.js +1 -0
  172. package/dist/development/src/resolvers/mutation/idp/DisableIDPMutationResolver.js.map +1 -1
  173. package/dist/development/src/resolvers/mutation/idp/EnableIDPMutationResolver.cjs +1 -0
  174. package/dist/development/src/resolvers/mutation/idp/EnableIDPMutationResolver.cjs.map +1 -1
  175. package/dist/development/src/resolvers/mutation/idp/EnableIDPMutationResolver.js +1 -0
  176. package/dist/development/src/resolvers/mutation/idp/EnableIDPMutationResolver.js.map +1 -1
  177. package/dist/development/src/resolvers/mutation/idp/UpdateIDPMutationResolver.cjs +1 -0
  178. package/dist/development/src/resolvers/mutation/idp/UpdateIDPMutationResolver.cjs.map +1 -1
  179. package/dist/development/src/resolvers/mutation/idp/UpdateIDPMutationResolver.js +1 -0
  180. package/dist/development/src/resolvers/mutation/idp/UpdateIDPMutationResolver.js.map +1 -1
  181. package/dist/development/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.cjs +1 -0
  182. package/dist/development/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.cjs.map +1 -1
  183. package/dist/development/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.js +1 -0
  184. package/dist/development/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.js.map +1 -1
  185. package/dist/development/src/resolvers/mutation/person/ChangePasswordMutationResolver.cjs +17 -6
  186. package/dist/development/src/resolvers/mutation/person/ChangePasswordMutationResolver.cjs.map +1 -1
  187. package/dist/development/src/resolvers/mutation/person/ChangePasswordMutationResolver.js +17 -6
  188. package/dist/development/src/resolvers/mutation/person/ChangePasswordMutationResolver.js.map +1 -1
  189. package/dist/development/src/resolvers/mutation/person/ChangeProfileMutationResolver.cjs +14 -0
  190. package/dist/development/src/resolvers/mutation/person/ChangeProfileMutationResolver.cjs.map +1 -1
  191. package/dist/development/src/resolvers/mutation/person/ChangeProfileMutationResolver.js +14 -0
  192. package/dist/development/src/resolvers/mutation/person/ChangeProfileMutationResolver.js.map +1 -1
  193. package/dist/development/src/resolvers/mutation/person/DisablePersonMutationResolver.cjs +7 -1
  194. package/dist/development/src/resolvers/mutation/person/DisablePersonMutationResolver.cjs.map +1 -1
  195. package/dist/development/src/resolvers/mutation/person/DisablePersonMutationResolver.js +7 -1
  196. package/dist/development/src/resolvers/mutation/person/DisablePersonMutationResolver.js.map +1 -1
  197. package/dist/development/src/resolvers/mutation/person/IDPMutationResolver.cjs +5 -0
  198. package/dist/development/src/resolvers/mutation/person/IDPMutationResolver.cjs.map +1 -1
  199. package/dist/development/src/resolvers/mutation/person/IDPMutationResolver.js +5 -0
  200. package/dist/development/src/resolvers/mutation/person/IDPMutationResolver.js.map +1 -1
  201. package/dist/development/src/resolvers/mutation/person/InviteMutationResolver.cjs +3 -2
  202. package/dist/development/src/resolvers/mutation/person/InviteMutationResolver.cjs.map +1 -1
  203. package/dist/development/src/resolvers/mutation/person/InviteMutationResolver.js +2 -1
  204. package/dist/development/src/resolvers/mutation/person/InviteMutationResolver.js.map +1 -1
  205. package/dist/development/src/resolvers/mutation/person/OtpMutationResolver.cjs +26 -1
  206. package/dist/development/src/resolvers/mutation/person/OtpMutationResolver.cjs.map +1 -1
  207. package/dist/development/src/resolvers/mutation/person/OtpMutationResolver.js +26 -1
  208. package/dist/development/src/resolvers/mutation/person/OtpMutationResolver.js.map +1 -1
  209. package/dist/development/src/resolvers/mutation/person/PasswordlessMutationResolver.cjs +20 -0
  210. package/dist/development/src/resolvers/mutation/person/PasswordlessMutationResolver.cjs.map +1 -1
  211. package/dist/development/src/resolvers/mutation/person/PasswordlessMutationResolver.js +20 -0
  212. package/dist/development/src/resolvers/mutation/person/PasswordlessMutationResolver.js.map +1 -1
  213. package/dist/development/src/resolvers/mutation/person/ResetPasswordMutationResolver.cjs +25 -2
  214. package/dist/development/src/resolvers/mutation/person/ResetPasswordMutationResolver.cjs.map +1 -1
  215. package/dist/development/src/resolvers/mutation/person/ResetPasswordMutationResolver.js +25 -2
  216. package/dist/development/src/resolvers/mutation/person/ResetPasswordMutationResolver.js.map +1 -1
  217. package/dist/development/src/resolvers/mutation/person/SignInMutationResolver.cjs +22 -0
  218. package/dist/development/src/resolvers/mutation/person/SignInMutationResolver.cjs.map +1 -1
  219. package/dist/development/src/resolvers/mutation/person/SignInMutationResolver.js +22 -0
  220. package/dist/development/src/resolvers/mutation/person/SignInMutationResolver.js.map +1 -1
  221. package/dist/development/src/resolvers/mutation/person/SignOutMutationResolver.cjs +1 -0
  222. package/dist/development/src/resolvers/mutation/person/SignOutMutationResolver.cjs.map +1 -1
  223. package/dist/development/src/resolvers/mutation/person/SignOutMutationResolver.js +1 -0
  224. package/dist/development/src/resolvers/mutation/person/SignOutMutationResolver.js.map +1 -1
  225. package/dist/development/src/resolvers/mutation/person/SignUpMutationResolver.cjs +2 -1
  226. package/dist/development/src/resolvers/mutation/person/SignUpMutationResolver.cjs.map +1 -1
  227. package/dist/development/src/resolvers/mutation/person/SignUpMutationResolver.js +2 -1
  228. package/dist/development/src/resolvers/mutation/person/SignUpMutationResolver.js.map +1 -1
  229. package/dist/development/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.cjs +3 -1
  230. package/dist/development/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.cjs.map +1 -1
  231. package/dist/development/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.js +3 -1
  232. package/dist/development/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.js.map +1 -1
  233. package/dist/development/src/resolvers/mutation/project/CreateProjectMutationResolver.cjs +3 -2
  234. package/dist/development/src/resolvers/mutation/project/CreateProjectMutationResolver.cjs.map +1 -1
  235. package/dist/development/src/resolvers/mutation/project/CreateProjectMutationResolver.js +2 -1
  236. package/dist/development/src/resolvers/mutation/project/CreateProjectMutationResolver.js.map +1 -1
  237. package/dist/development/src/resolvers/mutation/project/SetProjectSecretMutationResolver.cjs +1 -0
  238. package/dist/development/src/resolvers/mutation/project/SetProjectSecretMutationResolver.cjs.map +1 -1
  239. package/dist/development/src/resolvers/mutation/project/SetProjectSecretMutationResolver.js +1 -0
  240. package/dist/development/src/resolvers/mutation/project/SetProjectSecretMutationResolver.js.map +1 -1
  241. package/dist/development/src/resolvers/mutation/project/UpdateProjectMutationResolver.cjs +1 -0
  242. package/dist/development/src/resolvers/mutation/project/UpdateProjectMutationResolver.cjs.map +1 -1
  243. package/dist/development/src/resolvers/mutation/project/UpdateProjectMutationResolver.js +1 -0
  244. package/dist/development/src/resolvers/mutation/project/UpdateProjectMutationResolver.js.map +1 -1
  245. package/dist/development/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.cjs +1 -0
  246. package/dist/development/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.cjs.map +1 -1
  247. package/dist/development/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.js +1 -0
  248. package/dist/development/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.js.map +1 -1
  249. package/dist/development/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.cjs +1 -0
  250. package/dist/development/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.cjs.map +1 -1
  251. package/dist/development/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.js +1 -0
  252. package/dist/development/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.js.map +1 -1
  253. package/dist/development/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.cjs +1 -0
  254. package/dist/development/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.cjs.map +1 -1
  255. package/dist/development/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.js +1 -0
  256. package/dist/development/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.js.map +1 -1
  257. package/dist/development/src/resolvers/query/ConfigurationQueryResolver.cjs +3 -1
  258. package/dist/development/src/resolvers/query/ConfigurationQueryResolver.cjs.map +1 -1
  259. package/dist/development/src/resolvers/query/ConfigurationQueryResolver.js +3 -1
  260. package/dist/development/src/resolvers/query/ConfigurationQueryResolver.js.map +1 -1
  261. package/dist/development/src/resolvers/query/IDPQueryResolver.cjs +1 -0
  262. package/dist/development/src/resolvers/query/IDPQueryResolver.cjs.map +1 -1
  263. package/dist/development/src/resolvers/query/IDPQueryResolver.js +1 -0
  264. package/dist/development/src/resolvers/query/IDPQueryResolver.js.map +1 -1
  265. package/dist/development/src/resolvers/query/MailTemplateQueryResolver.cjs +1 -0
  266. package/dist/development/src/resolvers/query/MailTemplateQueryResolver.cjs.map +1 -1
  267. package/dist/development/src/resolvers/query/MailTemplateQueryResolver.js +1 -0
  268. package/dist/development/src/resolvers/query/MailTemplateQueryResolver.js.map +1 -1
  269. package/dist/development/src/resolvers/query/PersonQueryResolver.cjs +1 -0
  270. package/dist/development/src/resolvers/query/PersonQueryResolver.cjs.map +1 -1
  271. package/dist/development/src/resolvers/query/PersonQueryResolver.js +1 -0
  272. package/dist/development/src/resolvers/query/PersonQueryResolver.js.map +1 -1
  273. package/dist/development/src/resolvers/query/ProjectMembersQueryResolver.cjs +1 -0
  274. package/dist/development/src/resolvers/query/ProjectMembersQueryResolver.cjs.map +1 -1
  275. package/dist/development/src/resolvers/query/ProjectMembersQueryResolver.js +1 -0
  276. package/dist/development/src/resolvers/query/ProjectMembersQueryResolver.js.map +1 -1
  277. package/dist/development/src/resolvers/query/ProjectQueryResolver.cjs +1 -0
  278. package/dist/development/src/resolvers/query/ProjectQueryResolver.cjs.map +1 -1
  279. package/dist/development/src/resolvers/query/ProjectQueryResolver.js +1 -0
  280. package/dist/development/src/resolvers/query/ProjectQueryResolver.js.map +1 -1
  281. package/dist/development/src/resolvers/responseHelpers/SignInResponseFactory.cjs +1 -0
  282. package/dist/development/src/resolvers/responseHelpers/SignInResponseFactory.cjs.map +1 -1
  283. package/dist/development/src/resolvers/responseHelpers/SignInResponseFactory.js +1 -0
  284. package/dist/development/src/resolvers/responseHelpers/SignInResponseFactory.js.map +1 -1
  285. package/dist/development/src/resolvers/types/IdentityTypeResolver.cjs +1 -0
  286. package/dist/development/src/resolvers/types/IdentityTypeResolver.cjs.map +1 -1
  287. package/dist/development/src/resolvers/types/IdentityTypeResolver.js +1 -0
  288. package/dist/development/src/resolvers/types/IdentityTypeResolver.js.map +1 -1
  289. package/dist/development/src/resolvers/types/ProjectTypeResolver.cjs +1 -0
  290. package/dist/development/src/resolvers/types/ProjectTypeResolver.cjs.map +1 -1
  291. package/dist/development/src/resolvers/types/ProjectTypeResolver.js +1 -0
  292. package/dist/development/src/resolvers/types/ProjectTypeResolver.js.map +1 -1
  293. package/dist/development/src/schema/tenant.graphql.cjs +64 -2
  294. package/dist/development/src/schema/tenant.graphql.cjs.map +1 -1
  295. package/dist/development/src/schema/tenant.graphql.js +64 -2
  296. package/dist/development/src/schema/tenant.graphql.js.map +1 -1
  297. package/dist/production/index.cjs +5 -6
  298. package/dist/production/index.cjs.map +1 -1
  299. package/dist/production/index.js +2 -3
  300. package/dist/production/src/TenantContainer.cjs +4 -2
  301. package/dist/production/src/TenantContainer.cjs.map +1 -1
  302. package/dist/production/src/TenantContainer.js +4 -2
  303. package/dist/production/src/TenantContainer.js.map +1 -1
  304. package/dist/production/src/bridges/system/IdentityFetcher.cjs +1 -0
  305. package/dist/production/src/bridges/system/IdentityFetcher.cjs.map +1 -1
  306. package/dist/production/src/bridges/system/IdentityFetcher.js +1 -0
  307. package/dist/production/src/bridges/system/IdentityFetcher.js.map +1 -1
  308. package/dist/production/src/migrations/2025-04-16-180000-config-up.cjs +39 -0
  309. package/dist/production/src/migrations/2025-04-16-180000-config-up.cjs.map +1 -0
  310. package/dist/production/src/migrations/2025-04-16-180000-config-up.js +40 -0
  311. package/dist/production/src/migrations/2025-04-16-180000-config-up.js.map +1 -0
  312. package/dist/production/src/migrations/2025-04-17-160000-auth-log.cjs +45 -0
  313. package/dist/production/src/migrations/2025-04-17-160000-auth-log.cjs.map +1 -0
  314. package/dist/production/src/migrations/2025-04-17-160000-auth-log.js +46 -0
  315. package/dist/production/src/migrations/2025-04-17-160000-auth-log.js.map +1 -0
  316. package/dist/production/src/migrations/runner.cjs +9 -4
  317. package/dist/production/src/migrations/runner.cjs.map +1 -1
  318. package/dist/production/src/migrations/runner.js +7 -2
  319. package/dist/production/src/migrations/runner.js.map +1 -1
  320. package/dist/production/src/migrations/snapshot.cjs +56 -1
  321. package/dist/production/src/migrations/snapshot.cjs.map +1 -1
  322. package/dist/production/src/migrations/snapshot.js +56 -1
  323. package/dist/production/src/migrations/snapshot.js.map +1 -1
  324. package/dist/production/src/model/authorization/MembershipMatcher.cjs +6 -0
  325. package/dist/production/src/model/authorization/MembershipMatcher.cjs.map +1 -1
  326. package/dist/production/src/model/authorization/MembershipMatcher.js +6 -0
  327. package/dist/production/src/model/authorization/MembershipMatcher.js.map +1 -1
  328. package/dist/production/src/model/authorization/PermissionsFactory.cjs +2 -0
  329. package/dist/production/src/model/authorization/PermissionsFactory.cjs.map +1 -1
  330. package/dist/production/src/model/authorization/PermissionsFactory.js +2 -0
  331. package/dist/production/src/model/authorization/PermissionsFactory.js.map +1 -1
  332. package/dist/production/src/model/commands/apiKey/CreateApiKeyCommand.cjs +7 -7
  333. package/dist/production/src/model/commands/apiKey/CreateApiKeyCommand.cjs.map +1 -1
  334. package/dist/production/src/model/commands/apiKey/CreateApiKeyCommand.js +1 -1
  335. package/dist/production/src/model/commands/authLog/CreateAuthLogEntryCommand.cjs +27 -0
  336. package/dist/production/src/model/commands/authLog/CreateAuthLogEntryCommand.cjs.map +1 -0
  337. package/dist/production/src/model/commands/authLog/CreateAuthLogEntryCommand.js +27 -0
  338. package/dist/production/src/model/commands/authLog/CreateAuthLogEntryCommand.js.map +1 -0
  339. package/dist/production/src/model/commands/configuration/UpdateConfigurationCommand.cjs +15 -2
  340. package/dist/production/src/model/commands/configuration/UpdateConfigurationCommand.cjs.map +1 -1
  341. package/dist/production/src/model/commands/configuration/UpdateConfigurationCommand.js +15 -2
  342. package/dist/production/src/model/commands/configuration/UpdateConfigurationCommand.js.map +1 -1
  343. package/dist/production/src/model/commands/personToken/CreatePersonTokenCommand.cjs +4 -4
  344. package/dist/production/src/model/commands/personToken/CreatePersonTokenCommand.cjs.map +1 -1
  345. package/dist/production/src/model/commands/personToken/CreatePersonTokenCommand.js +1 -1
  346. package/dist/production/src/model/commands/personToken/ResetPasswordCommand.cjs +5 -5
  347. package/dist/production/src/model/commands/personToken/ResetPasswordCommand.cjs.map +1 -1
  348. package/dist/production/src/model/commands/personToken/ResetPasswordCommand.js +1 -1
  349. package/dist/production/src/model/mailing/UserMailer.cjs.map +1 -1
  350. package/dist/production/src/model/mailing/UserMailer.js.map +1 -1
  351. package/dist/production/src/model/queries/apiKey/ApiKeyQuery.cjs +4 -4
  352. package/dist/production/src/model/queries/apiKey/ApiKeyQuery.cjs.map +1 -1
  353. package/dist/production/src/model/queries/apiKey/ApiKeyQuery.js +1 -1
  354. package/dist/production/src/model/queries/authLog/NextLoginAttemptQuery.cjs +46 -0
  355. package/dist/production/src/model/queries/authLog/NextLoginAttemptQuery.cjs.map +1 -0
  356. package/dist/production/src/model/queries/authLog/NextLoginAttemptQuery.js +46 -0
  357. package/dist/production/src/model/queries/authLog/NextLoginAttemptQuery.js.map +1 -0
  358. package/dist/production/src/model/queries/configuration/ConfigurationQuery.cjs +18 -1
  359. package/dist/production/src/model/queries/configuration/ConfigurationQuery.cjs.map +1 -1
  360. package/dist/production/src/model/queries/configuration/ConfigurationQuery.js +18 -1
  361. package/dist/production/src/model/queries/configuration/ConfigurationQuery.js.map +1 -1
  362. package/dist/production/src/model/queries/personToken/PersonTokenQuery.cjs +3 -3
  363. package/dist/production/src/model/queries/personToken/PersonTokenQuery.cjs.map +1 -1
  364. package/dist/production/src/model/queries/personToken/PersonTokenQuery.js +1 -1
  365. package/dist/production/src/model/service/AuthLogService.cjs +34 -0
  366. package/dist/production/src/model/service/AuthLogService.cjs.map +1 -0
  367. package/dist/production/src/model/service/AuthLogService.js +34 -0
  368. package/dist/production/src/model/service/AuthLogService.js.map +1 -0
  369. package/dist/production/src/model/service/ConfigurationManager.cjs +0 -10
  370. package/dist/production/src/model/service/ConfigurationManager.cjs.map +1 -1
  371. package/dist/production/src/model/service/ConfigurationManager.js +0 -10
  372. package/dist/production/src/model/service/ConfigurationManager.js.map +1 -1
  373. package/dist/production/src/model/service/IDPSignInManager.cjs +37 -5
  374. package/dist/production/src/model/service/IDPSignInManager.cjs.map +1 -1
  375. package/dist/production/src/model/service/IDPSignInManager.js +37 -5
  376. package/dist/production/src/model/service/IDPSignInManager.js.map +1 -1
  377. package/dist/production/src/model/service/MembershipValidator.cjs +1 -1
  378. package/dist/production/src/model/service/MembershipValidator.cjs.map +1 -1
  379. package/dist/production/src/model/service/MembershipValidator.js +1 -1
  380. package/dist/production/src/model/service/MembershipValidator.js.map +1 -1
  381. package/dist/production/src/model/service/PasswordChangeManager.cjs +21 -12
  382. package/dist/production/src/model/service/PasswordChangeManager.cjs.map +1 -1
  383. package/dist/production/src/model/service/PasswordChangeManager.js +20 -11
  384. package/dist/production/src/model/service/PasswordChangeManager.js.map +1 -1
  385. package/dist/production/src/model/service/PasswordResetManager.cjs +40 -8
  386. package/dist/production/src/model/service/PasswordResetManager.cjs.map +1 -1
  387. package/dist/production/src/model/service/PasswordResetManager.js +40 -8
  388. package/dist/production/src/model/service/PasswordResetManager.js.map +1 -1
  389. package/dist/production/src/model/service/PasswordStrengthValidator.cjs +63 -0
  390. package/dist/production/src/model/service/PasswordStrengthValidator.cjs.map +1 -0
  391. package/dist/production/src/model/service/PasswordStrengthValidator.js +63 -0
  392. package/dist/production/src/model/service/PasswordStrengthValidator.js.map +1 -0
  393. package/dist/production/src/model/service/PasswordlessSignInManager.cjs +91 -25
  394. package/dist/production/src/model/service/PasswordlessSignInManager.cjs.map +1 -1
  395. package/dist/production/src/model/service/PasswordlessSignInManager.js +83 -17
  396. package/dist/production/src/model/service/PasswordlessSignInManager.js.map +1 -1
  397. package/dist/production/src/model/service/PersonAccessManager.cjs +7 -29
  398. package/dist/production/src/model/service/PersonAccessManager.cjs.map +1 -1
  399. package/dist/production/src/model/service/PersonAccessManager.js +7 -29
  400. package/dist/production/src/model/service/PersonAccessManager.js.map +1 -1
  401. package/dist/production/src/model/service/SignInManager.cjs +56 -31
  402. package/dist/production/src/model/service/SignInManager.cjs.map +1 -1
  403. package/dist/production/src/model/service/SignInManager.js +57 -32
  404. package/dist/production/src/model/service/SignInManager.js.map +1 -1
  405. package/dist/production/src/model/service/SignUpManager.cjs +13 -8
  406. package/dist/production/src/model/service/SignUpManager.cjs.map +1 -1
  407. package/dist/production/src/model/service/SignUpManager.js +11 -6
  408. package/dist/production/src/model/service/SignUpManager.js.map +1 -1
  409. package/dist/production/src/model/service/apiKey/ApiKeyManager.cjs +6 -1
  410. package/dist/production/src/model/service/apiKey/ApiKeyManager.cjs.map +1 -1
  411. package/dist/production/src/model/service/apiKey/ApiKeyManager.js +6 -1
  412. package/dist/production/src/model/service/apiKey/ApiKeyManager.js.map +1 -1
  413. package/dist/production/src/model/utils/Response.cjs +2 -1
  414. package/dist/production/src/model/utils/Response.cjs.map +1 -1
  415. package/dist/production/src/model/utils/Response.js +2 -1
  416. package/dist/production/src/model/utils/Response.js.map +1 -1
  417. package/dist/production/src/model/utils/blacklist.cjs +10006 -0
  418. package/dist/production/src/model/utils/blacklist.cjs.map +1 -0
  419. package/dist/production/src/model/utils/blacklist.js +10006 -0
  420. package/dist/production/src/model/utils/blacklist.js.map +1 -0
  421. package/dist/{development/src/model/utils/typeUtils.cjs → production/src/model/utils/hex.cjs} +1 -1
  422. package/dist/production/src/model/utils/hex.cjs.map +1 -0
  423. package/dist/production/src/model/utils/{typeUtils.js → hex.js} +1 -1
  424. package/dist/production/src/model/utils/hex.js.map +1 -0
  425. package/dist/production/src/model/utils/interval.cjs +8 -0
  426. package/dist/production/src/model/utils/interval.cjs.map +1 -0
  427. package/dist/production/src/model/utils/interval.js +8 -0
  428. package/dist/production/src/model/utils/interval.js.map +1 -0
  429. package/dist/production/src/model/utils/{tokenUtils.cjs → token.cjs} +3 -3
  430. package/dist/production/src/model/utils/token.cjs.map +1 -0
  431. package/dist/production/src/model/utils/{tokenUtils.js → token.js} +2 -2
  432. package/dist/production/src/model/utils/token.js.map +1 -0
  433. package/dist/production/src/resolvers/ResolverFactory.cjs +1 -0
  434. package/dist/production/src/resolvers/ResolverFactory.cjs.map +1 -1
  435. package/dist/production/src/resolvers/ResolverFactory.js +2 -1
  436. package/dist/production/src/resolvers/ResolverFactory.js.map +1 -1
  437. package/dist/production/src/resolvers/TenantResolverContextFactory.cjs +10 -2
  438. package/dist/production/src/resolvers/TenantResolverContextFactory.cjs.map +1 -1
  439. package/dist/production/src/resolvers/TenantResolverContextFactory.js +10 -2
  440. package/dist/production/src/resolvers/TenantResolverContextFactory.js.map +1 -1
  441. package/dist/production/src/resolvers/errorUtils.cjs +15 -4
  442. package/dist/production/src/resolvers/errorUtils.cjs.map +1 -1
  443. package/dist/production/src/resolvers/errorUtils.js +15 -4
  444. package/dist/production/src/resolvers/errorUtils.js.map +1 -1
  445. package/dist/production/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.cjs +4 -3
  446. package/dist/production/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.cjs.map +1 -1
  447. package/dist/production/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js +2 -1
  448. package/dist/production/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js.map +1 -1
  449. package/dist/production/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.cjs +1 -0
  450. package/dist/production/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.cjs.map +1 -1
  451. package/dist/production/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js +1 -0
  452. package/dist/production/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js.map +1 -1
  453. package/dist/production/src/resolvers/mutation/configuration/ConfigurationMutationResolver.cjs +1 -0
  454. package/dist/production/src/resolvers/mutation/configuration/ConfigurationMutationResolver.cjs.map +1 -1
  455. package/dist/production/src/resolvers/mutation/configuration/ConfigurationMutationResolver.js +1 -0
  456. package/dist/production/src/resolvers/mutation/configuration/ConfigurationMutationResolver.js.map +1 -1
  457. package/dist/production/src/resolvers/mutation/identity/GlobalRolesMutationResolver.cjs +1 -0
  458. package/dist/production/src/resolvers/mutation/identity/GlobalRolesMutationResolver.cjs.map +1 -1
  459. package/dist/production/src/resolvers/mutation/identity/GlobalRolesMutationResolver.js +1 -0
  460. package/dist/production/src/resolvers/mutation/identity/GlobalRolesMutationResolver.js.map +1 -1
  461. package/dist/production/src/resolvers/mutation/idp/AddIDPMutationResolver.cjs +1 -0
  462. package/dist/production/src/resolvers/mutation/idp/AddIDPMutationResolver.cjs.map +1 -1
  463. package/dist/production/src/resolvers/mutation/idp/AddIDPMutationResolver.js +1 -0
  464. package/dist/production/src/resolvers/mutation/idp/AddIDPMutationResolver.js.map +1 -1
  465. package/dist/production/src/resolvers/mutation/idp/DisableIDPMutationResolver.cjs +1 -0
  466. package/dist/production/src/resolvers/mutation/idp/DisableIDPMutationResolver.cjs.map +1 -1
  467. package/dist/production/src/resolvers/mutation/idp/DisableIDPMutationResolver.js +1 -0
  468. package/dist/production/src/resolvers/mutation/idp/DisableIDPMutationResolver.js.map +1 -1
  469. package/dist/production/src/resolvers/mutation/idp/EnableIDPMutationResolver.cjs +1 -0
  470. package/dist/production/src/resolvers/mutation/idp/EnableIDPMutationResolver.cjs.map +1 -1
  471. package/dist/production/src/resolvers/mutation/idp/EnableIDPMutationResolver.js +1 -0
  472. package/dist/production/src/resolvers/mutation/idp/EnableIDPMutationResolver.js.map +1 -1
  473. package/dist/production/src/resolvers/mutation/idp/UpdateIDPMutationResolver.cjs +1 -0
  474. package/dist/production/src/resolvers/mutation/idp/UpdateIDPMutationResolver.cjs.map +1 -1
  475. package/dist/production/src/resolvers/mutation/idp/UpdateIDPMutationResolver.js +1 -0
  476. package/dist/production/src/resolvers/mutation/idp/UpdateIDPMutationResolver.js.map +1 -1
  477. package/dist/production/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.cjs +1 -0
  478. package/dist/production/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.cjs.map +1 -1
  479. package/dist/production/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.js +1 -0
  480. package/dist/production/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.js.map +1 -1
  481. package/dist/production/src/resolvers/mutation/person/ChangePasswordMutationResolver.cjs +17 -6
  482. package/dist/production/src/resolvers/mutation/person/ChangePasswordMutationResolver.cjs.map +1 -1
  483. package/dist/production/src/resolvers/mutation/person/ChangePasswordMutationResolver.js +17 -6
  484. package/dist/production/src/resolvers/mutation/person/ChangePasswordMutationResolver.js.map +1 -1
  485. package/dist/production/src/resolvers/mutation/person/ChangeProfileMutationResolver.cjs +14 -0
  486. package/dist/production/src/resolvers/mutation/person/ChangeProfileMutationResolver.cjs.map +1 -1
  487. package/dist/production/src/resolvers/mutation/person/ChangeProfileMutationResolver.js +14 -0
  488. package/dist/production/src/resolvers/mutation/person/ChangeProfileMutationResolver.js.map +1 -1
  489. package/dist/production/src/resolvers/mutation/person/DisablePersonMutationResolver.cjs +7 -1
  490. package/dist/production/src/resolvers/mutation/person/DisablePersonMutationResolver.cjs.map +1 -1
  491. package/dist/production/src/resolvers/mutation/person/DisablePersonMutationResolver.js +7 -1
  492. package/dist/production/src/resolvers/mutation/person/DisablePersonMutationResolver.js.map +1 -1
  493. package/dist/production/src/resolvers/mutation/person/IDPMutationResolver.cjs +5 -0
  494. package/dist/production/src/resolvers/mutation/person/IDPMutationResolver.cjs.map +1 -1
  495. package/dist/production/src/resolvers/mutation/person/IDPMutationResolver.js +5 -0
  496. package/dist/production/src/resolvers/mutation/person/IDPMutationResolver.js.map +1 -1
  497. package/dist/production/src/resolvers/mutation/person/InviteMutationResolver.cjs +3 -2
  498. package/dist/production/src/resolvers/mutation/person/InviteMutationResolver.cjs.map +1 -1
  499. package/dist/production/src/resolvers/mutation/person/InviteMutationResolver.js +2 -1
  500. package/dist/production/src/resolvers/mutation/person/InviteMutationResolver.js.map +1 -1
  501. package/dist/production/src/resolvers/mutation/person/OtpMutationResolver.cjs +26 -1
  502. package/dist/production/src/resolvers/mutation/person/OtpMutationResolver.cjs.map +1 -1
  503. package/dist/production/src/resolvers/mutation/person/OtpMutationResolver.js +26 -1
  504. package/dist/production/src/resolvers/mutation/person/OtpMutationResolver.js.map +1 -1
  505. package/dist/production/src/resolvers/mutation/person/PasswordlessMutationResolver.cjs +20 -0
  506. package/dist/production/src/resolvers/mutation/person/PasswordlessMutationResolver.cjs.map +1 -1
  507. package/dist/production/src/resolvers/mutation/person/PasswordlessMutationResolver.js +20 -0
  508. package/dist/production/src/resolvers/mutation/person/PasswordlessMutationResolver.js.map +1 -1
  509. package/dist/production/src/resolvers/mutation/person/ResetPasswordMutationResolver.cjs +25 -2
  510. package/dist/production/src/resolvers/mutation/person/ResetPasswordMutationResolver.cjs.map +1 -1
  511. package/dist/production/src/resolvers/mutation/person/ResetPasswordMutationResolver.js +25 -2
  512. package/dist/production/src/resolvers/mutation/person/ResetPasswordMutationResolver.js.map +1 -1
  513. package/dist/production/src/resolvers/mutation/person/SignInMutationResolver.cjs +22 -0
  514. package/dist/production/src/resolvers/mutation/person/SignInMutationResolver.cjs.map +1 -1
  515. package/dist/production/src/resolvers/mutation/person/SignInMutationResolver.js +22 -0
  516. package/dist/production/src/resolvers/mutation/person/SignInMutationResolver.js.map +1 -1
  517. package/dist/production/src/resolvers/mutation/person/SignOutMutationResolver.cjs +1 -0
  518. package/dist/production/src/resolvers/mutation/person/SignOutMutationResolver.cjs.map +1 -1
  519. package/dist/production/src/resolvers/mutation/person/SignOutMutationResolver.js +1 -0
  520. package/dist/production/src/resolvers/mutation/person/SignOutMutationResolver.js.map +1 -1
  521. package/dist/production/src/resolvers/mutation/person/SignUpMutationResolver.cjs +2 -1
  522. package/dist/production/src/resolvers/mutation/person/SignUpMutationResolver.cjs.map +1 -1
  523. package/dist/production/src/resolvers/mutation/person/SignUpMutationResolver.js +2 -1
  524. package/dist/production/src/resolvers/mutation/person/SignUpMutationResolver.js.map +1 -1
  525. package/dist/production/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.cjs +3 -1
  526. package/dist/production/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.cjs.map +1 -1
  527. package/dist/production/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.js +3 -1
  528. package/dist/production/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.js.map +1 -1
  529. package/dist/production/src/resolvers/mutation/project/CreateProjectMutationResolver.cjs +3 -2
  530. package/dist/production/src/resolvers/mutation/project/CreateProjectMutationResolver.cjs.map +1 -1
  531. package/dist/production/src/resolvers/mutation/project/CreateProjectMutationResolver.js +2 -1
  532. package/dist/production/src/resolvers/mutation/project/CreateProjectMutationResolver.js.map +1 -1
  533. package/dist/production/src/resolvers/mutation/project/SetProjectSecretMutationResolver.cjs +1 -0
  534. package/dist/production/src/resolvers/mutation/project/SetProjectSecretMutationResolver.cjs.map +1 -1
  535. package/dist/production/src/resolvers/mutation/project/SetProjectSecretMutationResolver.js +1 -0
  536. package/dist/production/src/resolvers/mutation/project/SetProjectSecretMutationResolver.js.map +1 -1
  537. package/dist/production/src/resolvers/mutation/project/UpdateProjectMutationResolver.cjs +1 -0
  538. package/dist/production/src/resolvers/mutation/project/UpdateProjectMutationResolver.cjs.map +1 -1
  539. package/dist/production/src/resolvers/mutation/project/UpdateProjectMutationResolver.js +1 -0
  540. package/dist/production/src/resolvers/mutation/project/UpdateProjectMutationResolver.js.map +1 -1
  541. package/dist/production/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.cjs +1 -0
  542. package/dist/production/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.cjs.map +1 -1
  543. package/dist/production/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.js +1 -0
  544. package/dist/production/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.js.map +1 -1
  545. package/dist/production/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.cjs +1 -0
  546. package/dist/production/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.cjs.map +1 -1
  547. package/dist/production/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.js +1 -0
  548. package/dist/production/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.js.map +1 -1
  549. package/dist/production/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.cjs +1 -0
  550. package/dist/production/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.cjs.map +1 -1
  551. package/dist/production/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.js +1 -0
  552. package/dist/production/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.js.map +1 -1
  553. package/dist/production/src/resolvers/query/ConfigurationQueryResolver.cjs +3 -1
  554. package/dist/production/src/resolvers/query/ConfigurationQueryResolver.cjs.map +1 -1
  555. package/dist/production/src/resolvers/query/ConfigurationQueryResolver.js +3 -1
  556. package/dist/production/src/resolvers/query/ConfigurationQueryResolver.js.map +1 -1
  557. package/dist/production/src/resolvers/query/IDPQueryResolver.cjs +1 -0
  558. package/dist/production/src/resolvers/query/IDPQueryResolver.cjs.map +1 -1
  559. package/dist/production/src/resolvers/query/IDPQueryResolver.js +1 -0
  560. package/dist/production/src/resolvers/query/IDPQueryResolver.js.map +1 -1
  561. package/dist/production/src/resolvers/query/MailTemplateQueryResolver.cjs +1 -0
  562. package/dist/production/src/resolvers/query/MailTemplateQueryResolver.cjs.map +1 -1
  563. package/dist/production/src/resolvers/query/MailTemplateQueryResolver.js +1 -0
  564. package/dist/production/src/resolvers/query/MailTemplateQueryResolver.js.map +1 -1
  565. package/dist/production/src/resolvers/query/PersonQueryResolver.cjs +1 -0
  566. package/dist/production/src/resolvers/query/PersonQueryResolver.cjs.map +1 -1
  567. package/dist/production/src/resolvers/query/PersonQueryResolver.js +1 -0
  568. package/dist/production/src/resolvers/query/PersonQueryResolver.js.map +1 -1
  569. package/dist/production/src/resolvers/query/ProjectMembersQueryResolver.cjs +1 -0
  570. package/dist/production/src/resolvers/query/ProjectMembersQueryResolver.cjs.map +1 -1
  571. package/dist/production/src/resolvers/query/ProjectMembersQueryResolver.js +1 -0
  572. package/dist/production/src/resolvers/query/ProjectMembersQueryResolver.js.map +1 -1
  573. package/dist/production/src/resolvers/query/ProjectQueryResolver.cjs +1 -0
  574. package/dist/production/src/resolvers/query/ProjectQueryResolver.cjs.map +1 -1
  575. package/dist/production/src/resolvers/query/ProjectQueryResolver.js +1 -0
  576. package/dist/production/src/resolvers/query/ProjectQueryResolver.js.map +1 -1
  577. package/dist/production/src/resolvers/responseHelpers/SignInResponseFactory.cjs +1 -0
  578. package/dist/production/src/resolvers/responseHelpers/SignInResponseFactory.cjs.map +1 -1
  579. package/dist/production/src/resolvers/responseHelpers/SignInResponseFactory.js +1 -0
  580. package/dist/production/src/resolvers/responseHelpers/SignInResponseFactory.js.map +1 -1
  581. package/dist/production/src/resolvers/types/IdentityTypeResolver.cjs +1 -0
  582. package/dist/production/src/resolvers/types/IdentityTypeResolver.cjs.map +1 -1
  583. package/dist/production/src/resolvers/types/IdentityTypeResolver.js +1 -0
  584. package/dist/production/src/resolvers/types/IdentityTypeResolver.js.map +1 -1
  585. package/dist/production/src/resolvers/types/ProjectTypeResolver.cjs +1 -0
  586. package/dist/production/src/resolvers/types/ProjectTypeResolver.cjs.map +1 -1
  587. package/dist/production/src/resolvers/types/ProjectTypeResolver.js +1 -0
  588. package/dist/production/src/resolvers/types/ProjectTypeResolver.js.map +1 -1
  589. package/dist/production/src/schema/tenant.graphql.cjs +64 -2
  590. package/dist/production/src/schema/tenant.graphql.cjs.map +1 -1
  591. package/dist/production/src/schema/tenant.graphql.js +64 -2
  592. package/dist/production/src/schema/tenant.graphql.js.map +1 -1
  593. package/dist/tests/cases/integration/mocked/sql/createSessionKeySql.d.ts +1 -1
  594. package/dist/tests/cases/integration/mocked/sql/getConfigSql.d.ts +3 -0
  595. package/dist/tests/cases/integration/mocked/sql/getConfigSql.d.ts.map +1 -0
  596. package/dist/tests/cases/integration/mocked/sql/getNextLoginAttemptSql.d.ts +3 -0
  597. package/dist/tests/cases/integration/mocked/sql/getNextLoginAttemptSql.d.ts.map +1 -0
  598. package/dist/tests/src/testTenant.d.ts +2 -0
  599. package/dist/tests/src/testTenant.d.ts.map +1 -1
  600. package/dist/tests/tsconfig.tsbuildinfo +1 -1
  601. package/dist/types/TenantContainer.d.ts +6 -0
  602. package/dist/types/TenantContainer.d.ts.map +1 -1
  603. package/dist/types/migrations/2025-04-16-180000-config-up.d.ts +3 -0
  604. package/dist/types/migrations/2025-04-16-180000-config-up.d.ts.map +1 -0
  605. package/dist/types/migrations/2025-04-17-160000-auth-log.d.ts +3 -0
  606. package/dist/types/migrations/2025-04-17-160000-auth-log.d.ts.map +1 -0
  607. package/dist/types/migrations/runner.d.ts.map +1 -1
  608. package/dist/types/migrations/snapshot.d.ts.map +1 -1
  609. package/dist/types/model/authorization/MembershipMatcher.d.ts.map +1 -1
  610. package/dist/types/model/authorization/PermissionsFactory.d.ts.map +1 -1
  611. package/dist/types/model/commands/authLog/CreateAuthLogEntryCommand.d.ts +26 -0
  612. package/dist/types/model/commands/authLog/CreateAuthLogEntryCommand.d.ts.map +1 -0
  613. package/dist/types/model/commands/configuration/UpdateConfigurationCommand.d.ts.map +1 -1
  614. package/dist/types/model/dtos/AuthLogBag.d.ts +3 -0
  615. package/dist/types/model/dtos/AuthLogBag.d.ts.map +1 -0
  616. package/dist/types/model/mailing/UserMailer.d.ts +1 -0
  617. package/dist/types/model/mailing/UserMailer.d.ts.map +1 -1
  618. package/dist/types/model/queries/authLog/NextLoginAttemptQuery.d.ts +7 -0
  619. package/dist/types/model/queries/authLog/NextLoginAttemptQuery.d.ts.map +1 -0
  620. package/dist/types/model/queries/configuration/ConfigurationQuery.d.ts +1 -1
  621. package/dist/types/model/queries/configuration/ConfigurationQuery.d.ts.map +1 -1
  622. package/dist/types/model/service/AuthLogService.d.ts +34 -0
  623. package/dist/types/model/service/AuthLogService.d.ts.map +1 -0
  624. package/dist/types/model/service/ConfigurationManager.d.ts +1 -2
  625. package/dist/types/model/service/ConfigurationManager.d.ts.map +1 -1
  626. package/dist/types/model/service/IDPSignInManager.d.ts +5 -1
  627. package/dist/types/model/service/IDPSignInManager.d.ts.map +1 -1
  628. package/dist/types/model/service/PasswordChangeManager.d.ts +8 -4
  629. package/dist/types/model/service/PasswordChangeManager.d.ts.map +1 -1
  630. package/dist/types/model/service/PasswordResetManager.d.ts +11 -4
  631. package/dist/types/model/service/PasswordResetManager.d.ts.map +1 -1
  632. package/dist/types/model/service/PasswordStrengthValidator.d.ts +11 -0
  633. package/dist/types/model/service/PasswordStrengthValidator.d.ts.map +1 -0
  634. package/dist/types/model/service/PasswordlessSignInManager.d.ts +16 -6
  635. package/dist/types/model/service/PasswordlessSignInManager.d.ts.map +1 -1
  636. package/dist/types/model/service/PersonAccessManager.d.ts +2 -1
  637. package/dist/types/model/service/PersonAccessManager.d.ts.map +1 -1
  638. package/dist/types/model/service/SignInManager.d.ts +9 -4
  639. package/dist/types/model/service/SignInManager.d.ts.map +1 -1
  640. package/dist/types/model/service/SignUpManager.d.ts +7 -3
  641. package/dist/types/model/service/SignUpManager.d.ts.map +1 -1
  642. package/dist/types/model/service/apiKey/ApiKeyManager.d.ts.map +1 -1
  643. package/dist/types/model/type/AuthLog.d.ts +2 -0
  644. package/dist/types/model/type/AuthLog.d.ts.map +1 -0
  645. package/dist/types/model/type/Config.d.ts +28 -0
  646. package/dist/types/model/type/Config.d.ts.map +1 -0
  647. package/dist/types/model/utils/Response.d.ts +4 -3
  648. package/dist/types/model/utils/Response.d.ts.map +1 -1
  649. package/dist/types/model/utils/blacklist.d.ts +2 -0
  650. package/dist/types/model/utils/blacklist.d.ts.map +1 -0
  651. package/dist/types/model/utils/{typeUtils.d.ts → hex.d.ts} +1 -1
  652. package/dist/types/model/utils/hex.d.ts.map +1 -0
  653. package/dist/types/model/utils/index.d.ts +1 -1
  654. package/dist/types/model/utils/index.d.ts.map +1 -1
  655. package/dist/types/model/utils/interval.d.ts +3 -0
  656. package/dist/types/model/utils/interval.d.ts.map +1 -0
  657. package/dist/types/model/utils/{tokenUtils.d.ts → token.d.ts} +2 -2
  658. package/dist/types/model/utils/token.d.ts.map +1 -0
  659. package/dist/types/resolvers/ResolverFactory.d.ts.map +1 -1
  660. package/dist/types/resolvers/TenantResolverContext.d.ts +2 -0
  661. package/dist/types/resolvers/TenantResolverContext.d.ts.map +1 -1
  662. package/dist/types/resolvers/TenantResolverContextFactory.d.ts +6 -1
  663. package/dist/types/resolvers/TenantResolverContextFactory.d.ts.map +1 -1
  664. package/dist/types/resolvers/errorUtils.d.ts +7 -5
  665. package/dist/types/resolvers/errorUtils.d.ts.map +1 -1
  666. package/dist/types/resolvers/mutation/person/ChangePasswordMutationResolver.d.ts.map +1 -1
  667. package/dist/types/resolvers/mutation/person/ChangeProfileMutationResolver.d.ts.map +1 -1
  668. package/dist/types/resolvers/mutation/person/DisablePersonMutationResolver.d.ts.map +1 -1
  669. package/dist/types/resolvers/mutation/person/IDPMutationResolver.d.ts.map +1 -1
  670. package/dist/types/resolvers/mutation/person/OtpMutationResolver.d.ts.map +1 -1
  671. package/dist/types/resolvers/mutation/person/PasswordlessMutationResolver.d.ts.map +1 -1
  672. package/dist/types/resolvers/mutation/person/ResetPasswordMutationResolver.d.ts.map +1 -1
  673. package/dist/types/resolvers/mutation/person/SignInMutationResolver.d.ts.map +1 -1
  674. package/dist/types/resolvers/mutation/person/TogglePasswordlessMutationResolver.d.ts.map +1 -1
  675. package/dist/types/resolvers/types/ProjectTypeResolver.d.ts +2 -2
  676. package/dist/types/resolvers/types/ProjectTypeResolver.d.ts.map +1 -1
  677. package/dist/types/schema/index.d.ts +103 -8
  678. package/dist/types/schema/index.d.ts.map +1 -1
  679. package/dist/types/schema/tenant.graphql.d.ts.map +1 -1
  680. package/dist/types/schema/types.d.ts +8 -0
  681. package/dist/types/schema/types.d.ts.map +1 -0
  682. package/dist/types/tsconfig.tsbuildinfo +1 -1
  683. package/graphql.codegen.yml +7 -3
  684. package/package.json +13 -12
  685. package/src/TenantContainer.ts +16 -10
  686. package/src/migrations/2025-04-16-180000-config-up.ts +39 -0
  687. package/src/migrations/2025-04-17-160000-auth-log.ts +45 -0
  688. package/src/migrations/runner.ts +4 -1
  689. package/src/migrations/snapshot.ts +56 -1
  690. package/src/model/authorization/MembershipMatcher.ts +6 -0
  691. package/src/model/authorization/PermissionsFactory.ts +3 -1
  692. package/src/model/commands/authLog/CreateAuthLogEntryCommand.ts +51 -0
  693. package/src/model/commands/configuration/UpdateConfigurationCommand.ts +20 -2
  694. package/src/model/dtos/AuthLogBag.ts +3 -0
  695. package/src/model/mailing/UserMailer.ts +1 -1
  696. package/src/model/queries/authLog/NextLoginAttemptQuery.ts +63 -0
  697. package/src/model/queries/configuration/ConfigurationQuery.ts +20 -8
  698. package/src/model/service/AuthLogService.ts +62 -0
  699. package/src/model/service/ConfigurationManager.ts +1 -6
  700. package/src/model/service/IDPSignInManager.ts +41 -6
  701. package/src/model/service/MembershipValidator.ts +1 -1
  702. package/src/model/service/PasswordChangeManager.ts +17 -12
  703. package/src/model/service/PasswordResetManager.ts +42 -11
  704. package/src/model/service/PasswordStrengthValidator.ts +85 -0
  705. package/src/model/service/PasswordlessSignInManager.ts +96 -28
  706. package/src/model/service/PersonAccessManager.ts +8 -27
  707. package/src/model/service/SignInManager.ts +68 -33
  708. package/src/model/service/SignUpManager.ts +16 -8
  709. package/src/model/service/apiKey/ApiKeyManager.ts +8 -2
  710. package/src/model/type/AuthLog.ts +14 -0
  711. package/src/model/type/Config.ts +29 -0
  712. package/src/model/utils/Response.ts +10 -3
  713. package/src/model/utils/blacklist.ts +4 -0
  714. package/src/model/utils/index.ts +1 -1
  715. package/src/model/utils/interval.ts +14 -0
  716. package/src/model/utils/{tokenUtils.ts → token.ts} +1 -1
  717. package/src/resolvers/ResolverFactory.ts +2 -1
  718. package/src/resolvers/TenantResolverContext.ts +2 -0
  719. package/src/resolvers/TenantResolverContextFactory.ts +10 -0
  720. package/src/resolvers/errorUtils.ts +23 -5
  721. package/src/resolvers/mutation/idp/AddIDPMutationResolver.ts +1 -1
  722. package/src/resolvers/mutation/idp/UpdateIDPMutationResolver.ts +1 -1
  723. package/src/resolvers/mutation/person/ChangePasswordMutationResolver.ts +17 -15
  724. package/src/resolvers/mutation/person/ChangeProfileMutationResolver.ts +13 -0
  725. package/src/resolvers/mutation/person/DisablePersonMutationResolver.ts +7 -7
  726. package/src/resolvers/mutation/person/IDPMutationResolver.ts +4 -0
  727. package/src/resolvers/mutation/person/OtpMutationResolver.ts +25 -1
  728. package/src/resolvers/mutation/person/PasswordlessMutationResolver.ts +21 -1
  729. package/src/resolvers/mutation/person/ResetPasswordMutationResolver.ts +27 -3
  730. package/src/resolvers/mutation/person/SignInMutationResolver.ts +26 -8
  731. package/src/resolvers/mutation/person/SignUpMutationResolver.ts +1 -1
  732. package/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.ts +2 -2
  733. package/src/resolvers/mutation/project/CreateProjectMutationResolver.ts +1 -1
  734. package/src/resolvers/mutation/project/UpdateProjectMutationResolver.ts +1 -1
  735. package/src/resolvers/query/ConfigurationQueryResolver.ts +2 -2
  736. package/src/resolvers/types/ProjectTypeResolver.ts +2 -2
  737. package/src/schema/index.ts +114 -5
  738. package/src/schema/tenant.graphql.ts +64 -2
  739. package/src/schema/types.ts +4 -0
  740. package/tests/cases/integration/mocked/changeMyPasswordMutation.test.ts +42 -2
  741. package/tests/cases/integration/mocked/changeMyProfileMutation.test.ts +25 -4
  742. package/tests/cases/integration/mocked/changePasswordMutation.test.ts +10 -2
  743. package/tests/cases/integration/mocked/changeProfileMutation.test.ts +7 -1
  744. package/tests/cases/integration/mocked/confirmOtpMutation.test.ts +13 -8
  745. package/tests/cases/integration/mocked/createSessionKeyMutation.test.ts +9 -21
  746. package/tests/cases/integration/mocked/inviteMutations.test.ts +0 -24
  747. package/tests/cases/integration/mocked/signInIdpMutation.test.ts +16 -1
  748. package/tests/cases/integration/mocked/signInMutation.test.ts +54 -22
  749. package/tests/cases/integration/mocked/signOutMutation.test.ts +0 -5
  750. package/tests/cases/integration/mocked/signUpMutation.test.ts +3 -12
  751. package/tests/cases/integration/mocked/sql/createSessionKeySql.ts +1 -1
  752. package/tests/cases/integration/mocked/sql/getConfigSql.ts +29 -0
  753. package/tests/cases/integration/mocked/sql/getNextLoginAttemptSql.ts +20 -0
  754. package/tests/src/testTenant.ts +13 -0
  755. package/dist/development/src/model/utils/password.cjs +0 -12
  756. package/dist/development/src/model/utils/password.cjs.map +0 -1
  757. package/dist/development/src/model/utils/password.js +0 -12
  758. package/dist/development/src/model/utils/password.js.map +0 -1
  759. package/dist/development/src/model/utils/tokenUtils.cjs.map +0 -1
  760. package/dist/development/src/model/utils/tokenUtils.js.map +0 -1
  761. package/dist/development/src/model/utils/typeUtils.cjs.map +0 -1
  762. package/dist/development/src/model/utils/typeUtils.js.map +0 -1
  763. package/dist/production/src/model/utils/password.cjs +0 -12
  764. package/dist/production/src/model/utils/password.cjs.map +0 -1
  765. package/dist/production/src/model/utils/password.js +0 -12
  766. package/dist/production/src/model/utils/password.js.map +0 -1
  767. package/dist/production/src/model/utils/tokenUtils.cjs.map +0 -1
  768. package/dist/production/src/model/utils/tokenUtils.js.map +0 -1
  769. package/dist/production/src/model/utils/typeUtils.cjs.map +0 -1
  770. package/dist/production/src/model/utils/typeUtils.js.map +0 -1
  771. package/dist/types/model/utils/password.d.ts +0 -4
  772. package/dist/types/model/utils/password.d.ts.map +0 -1
  773. package/dist/types/model/utils/tokenUtils.d.ts.map +0 -1
  774. package/dist/types/model/utils/typeUtils.d.ts.map +0 -1
  775. package/src/model/utils/password.ts +0 -8
  776. /package/src/model/utils/{typeUtils.ts → hex.ts} +0 -0
@@ -96,7 +96,7 @@ const SignInManager = require("./src/model/service/SignInManager.cjs");
96
96
  const SignUpManager = require("./src/model/service/SignUpManager.cjs");
97
97
  const ApiKey = require("./src/model/type/ApiKey.cjs");
98
98
  const DatabaseContext = require("./src/model/utils/DatabaseContext.cjs");
99
- const tokenUtils = require("./src/model/utils/tokenUtils.cjs");
99
+ const token = require("./src/model/utils/token.cjs");
100
100
  const TenantContainer = require("./src/TenantContainer.cjs");
101
101
  const CreateApiKeyMutationResolver = require("./src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.cjs");
102
102
  const DisableApiKeyMutationResolver = require("./src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.cjs");
@@ -244,7 +244,6 @@ exports.ProjectMemberManager = ProjectMemberManager.ProjectMemberManager;
244
244
  exports.RolesManager = RolesManager.RolesManager;
245
245
  exports.SecretsManager = SecretsManager.SecretsManager;
246
246
  exports.SignInManager = SignInManager.SignInManager;
247
- exports.SignInResult = SignInManager.SignInResult;
248
247
  exports.SignUpManager = SignUpManager.SignUpManager;
249
248
  exports.SignUpResult = SignUpManager.SignUpResult;
250
249
  Object.defineProperty(exports, "ApiKey", {
@@ -252,10 +251,10 @@ Object.defineProperty(exports, "ApiKey", {
252
251
  get: () => ApiKey.ApiKey
253
252
  });
254
253
  exports.DatabaseContext = DatabaseContext.DatabaseContext;
255
- exports.computeTokenHash = tokenUtils.computeTokenHash;
256
- exports.generateToken = tokenUtils.generateToken;
257
- exports.isTokenHash = tokenUtils.isTokenHash;
258
- exports.validateToken = tokenUtils.validateToken;
254
+ exports.computeTokenHash = token.computeTokenHash;
255
+ exports.generateToken = token.generateToken;
256
+ exports.isTokenHash = token.isTokenHash;
257
+ exports.validateToken = token.validateToken;
259
258
  exports.TenantContainerFactory = TenantContainer.TenantContainerFactory;
260
259
  exports.CreateApiKeyMutationResolver = CreateApiKeyMutationResolver.CreateApiKeyMutationResolver;
261
260
  exports.DisableApiKeyMutationResolver = DisableApiKeyMutationResolver.DisableApiKeyMutationResolver;
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -90,11 +90,11 @@ import { CreateProjectResult, ProjectInitError, ProjectManager } from "./src/mod
90
90
  import { ProjectMemberManager } from "./src/model/service/ProjectMemberManager.js";
91
91
  import { RolesManager } from "./src/model/service/RolesManager.js";
92
92
  import { SecretsManager } from "./src/model/service/SecretsManager.js";
93
- import { SignInManager, SignInResult } from "./src/model/service/SignInManager.js";
93
+ import { SignInManager } from "./src/model/service/SignInManager.js";
94
94
  import { SignUpManager, SignUpResult } from "./src/model/service/SignUpManager.js";
95
95
  import { ApiKey } from "./src/model/type/ApiKey.js";
96
96
  import { DatabaseContext } from "./src/model/utils/DatabaseContext.js";
97
- import { computeTokenHash, generateToken, isTokenHash, validateToken } from "./src/model/utils/tokenUtils.js";
97
+ import { computeTokenHash, generateToken, isTokenHash, validateToken } from "./src/model/utils/token.js";
98
98
  import { TenantContainerFactory } from "./src/TenantContainer.js";
99
99
  import { CreateApiKeyMutationResolver } from "./src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js";
100
100
  import { DisableApiKeyMutationResolver } from "./src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js";
@@ -259,7 +259,6 @@ export {
259
259
  SetProjectSecretMutationResolver,
260
260
  SignInManager,
261
261
  SignInMutationResolver,
262
- SignInResult,
263
262
  SignOutMutationResolver,
264
263
  SignUpManager,
265
264
  SignUpMutationResolver,
@@ -85,6 +85,8 @@ const ConfigurationQueryResolver = require("./resolvers/query/ConfigurationQuery
85
85
  const PasswordlessMutationResolver = require("./resolvers/mutation/person/PasswordlessMutationResolver.cjs");
86
86
  const PasswordlessSignInManager = require("./model/service/PasswordlessSignInManager.cjs");
87
87
  const TogglePasswordlessMutationResolver = require("./resolvers/mutation/person/TogglePasswordlessMutationResolver.cjs");
88
+ const PasswordStrengthValidator = require("./model/service/PasswordStrengthValidator.cjs");
89
+ const AuthLogService = require("./model/service/AuthLogService.cjs");
88
90
  class TenantContainerFactory {
89
91
  constructor(providers) {
90
92
  this.providers = providers;
@@ -107,13 +109,13 @@ class TenantContainerFactory {
107
109
  );
108
110
  }
109
111
  createBuilder(args) {
110
- return new dic.Builder({}).addService("providers", () => ({ ...this.providers, ...args.cryptoProviders })).addService("mailer", () => Mailer.createMailer(args.mailOptions)).addService("projectSchemaResolver", () => args.projectSchemaResolver).addService("templateRenderer", () => new TemplateRenderer.TemplateRenderer()).addService("accessEvaluator", ({}) => new authorization.AccessEvaluator.PermissionEvaluator(new PermissionsFactory.PermissionsFactory().create())).addService("authorizator", ({ accessEvaluator }) => new authorization.Authorizator.Default(accessEvaluator)).addService("userMailer", ({ mailer, templateRenderer }) => new UserMailer.UserMailer(mailer, templateRenderer)).addService("apiKeyService", () => new ApiKeyService.ApiKeyService()).addService("apiKeyManager", ({ apiKeyService }) => new ApiKeyManager.ApiKeyManager(apiKeyService)).addService("emailValidator", () => new EmailValidator.EmailValidator()).addService("signUpManager", ({ emailValidator }) => new SignUpManager.SignUpManager(emailValidator)).addService("passwordChangeManager", ({ providers }) => new PasswordChangeManager.PasswordChangeManager(providers)).addService("projectMemberManager", () => new ProjectMemberManager.ProjectMemberManager()).addService("identityFactory", ({ projectMemberManager }) => new IdentityFactory.IdentityFactory(projectMemberManager)).addService("projectScopeFactory", () => new ProjectScopeFactory.ProjectScopeFactory(new AclSchemaAccessNodeFactory.AclSchemaAccessNodeFactory())).addService("permissionContextFactory", ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) => new PermissionContextFactory.PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver)).addService("secretManager", ({ providers }) => new SecretsManager.SecretsManager(providers)).addService("projectManager", ({ secretManager, apiKeyService }) => new ProjectManager.ProjectManager(secretManager, args.projectInitializer, apiKeyService)).addService("personAccessManager", ({ apiKeyManager }) => new PersonAccessManager.PersonAccessManager(apiKeyManager)).addService("personManager", ({ emailValidator }) => new PersonManager.PersonManager(emailValidator)).addService("passwordResetManager", ({ userMailer, projectManager }) => new PasswordResetManager.PasswordResetManager(userMailer, projectManager)).addService("idpRegistry", () => {
112
+ return new dic.Builder({}).addService("providers", () => ({ ...this.providers, ...args.cryptoProviders })).addService("mailer", () => Mailer.createMailer(args.mailOptions)).addService("projectSchemaResolver", () => args.projectSchemaResolver).addService("templateRenderer", () => new TemplateRenderer.TemplateRenderer()).addService("accessEvaluator", ({}) => new authorization.AccessEvaluator.PermissionEvaluator(new PermissionsFactory.PermissionsFactory().create())).addService("authorizator", ({ accessEvaluator }) => new authorization.Authorizator.Default(accessEvaluator)).addService("userMailer", ({ mailer, templateRenderer }) => new UserMailer.UserMailer(mailer, templateRenderer)).addService("apiKeyService", () => new ApiKeyService.ApiKeyService()).addService("apiKeyManager", ({ apiKeyService }) => new ApiKeyManager.ApiKeyManager(apiKeyService)).addService("emailValidator", () => new EmailValidator.EmailValidator()).addService("passwordStrengthValidator", () => new PasswordStrengthValidator.PasswordStrengthValidator()).addService("signUpManager", ({ emailValidator, passwordStrengthValidator }) => new SignUpManager.SignUpManager(emailValidator, passwordStrengthValidator)).addService("passwordChangeManager", ({ providers, passwordStrengthValidator }) => new PasswordChangeManager.PasswordChangeManager(providers, passwordStrengthValidator)).addService("projectMemberManager", () => new ProjectMemberManager.ProjectMemberManager()).addService("identityFactory", ({ projectMemberManager }) => new IdentityFactory.IdentityFactory(projectMemberManager)).addService("projectScopeFactory", () => new ProjectScopeFactory.ProjectScopeFactory(new AclSchemaAccessNodeFactory.AclSchemaAccessNodeFactory())).addService("permissionContextFactory", ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) => new PermissionContextFactory.PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver)).addService("secretManager", ({ providers }) => new SecretsManager.SecretsManager(providers)).addService("projectManager", ({ secretManager, apiKeyService }) => new ProjectManager.ProjectManager(secretManager, args.projectInitializer, apiKeyService)).addService("personAccessManager", ({ apiKeyManager }) => new PersonAccessManager.PersonAccessManager(apiKeyManager)).addService("personManager", ({ emailValidator }) => new PersonManager.PersonManager(emailValidator)).addService("passwordResetManager", ({ userMailer, projectManager, passwordStrengthValidator }) => new PasswordResetManager.PasswordResetManager(userMailer, projectManager, passwordStrengthValidator)).addService("idpRegistry", () => {
111
113
  const idpRegistry = new IDPHandlerRegistry.IDPHandlerRegistry();
112
114
  idpRegistry.registerHandler("oidc", new OIDCProvider.OIDCProvider());
113
115
  idpRegistry.registerHandler("facebook", new FacebookProvider.FacebookProvider());
114
116
  idpRegistry.registerHandler("apple", new AppleProvider.AppleProvider());
115
117
  return idpRegistry;
116
- }).addService("idpSignInManager", ({ apiKeyManager, idpRegistry }) => new IDPSignInManager.IDPSignInManager(apiKeyManager, idpRegistry)).addService("idpManager", ({ idpRegistry }) => new IDPManager.IDPManager(idpRegistry)).addService("otpAuthenticator", ({ providers }) => new OtpAuthenticator.OtpAuthenticator(providers)).addService("signInManager", ({ apiKeyManager, providers, otpAuthenticator }) => new SignInManager.SignInManager(apiKeyManager, providers, otpAuthenticator)).addService("membershipValidator", ({ projectSchemaResolver }) => new MembershipValidator.MembershipValidator(projectSchemaResolver)).addService("inviteManager", ({ providers, userMailer, projectSchemaResolver }) => new InviteManager.InviteManager(providers, userMailer, projectSchemaResolver)).addService("otpManager", ({ otpAuthenticator }) => new OtpManager.OtpManager(otpAuthenticator)).addService("mailTemplateManager", () => new MailTemplateManager.MailTemplateManager()).addService("rolesManager", () => new RolesManager.RolesManager()).addService("configurationManager", () => new ConfigurationManager.ConfigurationManager()).addService("passwordlessSignInManager", ({ apiKeyManager, configurationManager, userMailer, projectManager, otpAuthenticator }) => new PasswordlessSignInManager.PasswordlessSignInManager(apiKeyManager, configurationManager, userMailer, projectManager, otpAuthenticator)).addService("identityTypeResolver", ({ projectMemberManager, projectManager, permissionContextFactory }) => new IdentityTypeResolver.IdentityTypeResolver(projectMemberManager, projectManager, permissionContextFactory)).addService("projectTypeResolver", ({ projectMemberManager, projectSchemaResolver }) => new ProjectTypeResolver.ProjectTypeResolver(projectMemberManager, projectSchemaResolver)).addService("signInResponseFactory", ({ permissionContextFactory, identityTypeResolver }) => new SignInResponseFactory.SignInResponseFactory(permissionContextFactory, identityTypeResolver)).addService("meQueryResolver", () => new MeQueryResolver.MeQueryResolver()).addService("personQueryResolver", ({ personManager }) => new PersonQueryResolver.PersonQueryResolver(personManager)).addService("idpQueryResolver", ({ idpManager }) => new IDPQueryResolver.IDPQueryResolver(idpManager)).addService("projectQueryResolver", ({ projectManager }) => new ProjectQueryResolver.ProjectQueryResolver(projectManager)).addService("projectMembersQueryResolver", ({ projectManager, projectMemberManager }) => new ProjectMembersQueryResolver.ProjectMembersQueryResolver(projectManager, projectMemberManager)).addService("mailTemplateQueryResolver", () => new MailTemplateQueryResolver.MailTemplateQueryResolver()).addService("signUpMutationResolver", ({ signUpManager, apiKeyManager }) => new SignUpMutationResolver.SignUpMutationResolver(signUpManager, apiKeyManager)).addService("signInMutationResolver", ({ signInManager, signInResponseFactory }) => new SignInMutationResolver.SignInMutationResolver(signInManager, signInResponseFactory)).addService("signOutMutationResolver", ({ apiKeyManager }) => new SignOutMutationResolver.SignOutMutationResolver(apiKeyManager)).addService("changeProfileMutationResolver", ({ personManager }) => new ChangeProfileMutationResolver.ChangeProfileMutationResolver(personManager)).addService("changePasswordMutationResolver", ({ passwordChangeManager }) => new ChangePasswordMutationResolver.ChangePasswordMutationResolver(passwordChangeManager)).addService("resetPasswordMutationResolver", ({ passwordResetManager, permissionContextFactory }) => new ResetPasswordMutationResolver.ResetPasswordMutationResolver(passwordResetManager, permissionContextFactory)).addService("inviteMutationResolver", ({ inviteManager, projectManager, membershipValidator }) => new InviteMutationResolver.InviteMutationResolver(inviteManager, projectManager, membershipValidator)).addService("addProjectMemberMutationResolver", ({ projectMemberManager, projectManager, membershipValidator }) => new AddProjectMemberMutationResolver.AddProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator)).addService("updateProjectMemberMutationResolver", ({ projectMemberManager, projectManager, membershipValidator }) => new UpdateProjectMemberMutationResolver.UpdateProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator)).addService("removeProjectMemberMutationResolver", ({ projectMemberManager, projectManager }) => new RemoveProjectMemberMutationResolver.RemoveProjectMemberMutationResolver(projectMemberManager, projectManager)).addService("createApiKeyMutationResolver", ({ apiKeyManager, projectManager, membershipValidator }) => new CreateApiKeyMutationResolver.CreateApiKeyMutationResolver(apiKeyManager, projectManager, membershipValidator)).addService("disableApiKeyMutationResolver", ({ apiKeyManager }) => new DisableApiKeyMutationResolver.DisableApiKeyMutationResolver(apiKeyManager)).addService("otpMutationResolver", ({ otpManager }) => new OtpMutationResolver.OtpMutationResolver(otpManager)).addService("mailTemplateMutationResolver", ({ projectManager, mailTemplateManager }) => new MailTemplateMutationResolver.MailTemplateMutationResolver(projectManager, mailTemplateManager)).addService("idpMutationResolver", ({ idpSignInManager, signInResponseFactory }) => new IDPMutationResolver.IDPMutationResolver(idpSignInManager, signInResponseFactory)).addService("registerIdpMutationResolver", ({ idpManager }) => new AddIDPMutationResolver.AddIDPMutationResolver(idpManager)).addService("updateIdpMutationResolver", ({ idpManager }) => new UpdateIDPMutationResolver.UpdateIDPMutationResolver(idpManager)).addService("disableIdpMutationResolver", ({ idpManager }) => new DisableIDPMutationResolver.DisableIDPMutationResolver(idpManager)).addService("enableIdpMutationResolver", ({ idpManager }) => new EnableIDPMutationResolver.EnableIDPMutationResolver(idpManager)).addService("createProjectMutationResolver", ({ projectManager }) => new CreateProjectMutationResolver.CreateProjectMutationResolver(projectManager)).addService("disablePersonMutationResolver", ({ personAccessManager, personManager }) => new DisablePersonMutationResolver.DisablePersonMutationResolver(personAccessManager, personManager)).addService("updateProjectMutationResolver", ({ projectManager }) => new UpdateProjectMutationResolver.UpdateProjectMutationResolver(projectManager)).addService("setProjectSecretMutationResolver", ({ projectManager, secretManager }) => new SetProjectSecretMutationResolver.SetProjectSecretMutationResolver(projectManager, secretManager)).addService("identityGlobalRolesMutationResolver", ({ rolesManager }) => new GlobalRolesMutationResolver.IdentityGlobalRolesMutationResolver(rolesManager)).addService("configurationMutationResolver", ({ configurationManager }) => new ConfigurationMutationResolver.ConfigurationMutationResolver(configurationManager)).addService("configurationQueryResolver", ({ configurationManager }) => new ConfigurationQueryResolver.ConfigurationQueryResolver(configurationManager)).addService("passwordlessMutationResolver", ({ passwordlessSignInManager, signInResponseFactory }) => new PasswordlessMutationResolver.PasswordlessMutationResolver(passwordlessSignInManager, signInResponseFactory)).addService("togglePasswordlessMutationResolver", ({ configurationManager, personManager }) => new TogglePasswordlessMutationResolver.TogglePasswordlessMutationResolver(configurationManager, personManager)).addService("resolverContextFactory", ({ permissionContextFactory }) => new TenantResolverContextFactory.TenantResolverContextFactory(permissionContextFactory)).addService("resolvers", (container) => new ResolverFactory.ResolverFactory(container).create()).addService("connection", () => args.connection).addService("readConnection", () => args.readConnection).addService("databaseContext", ({ connection, providers }) => new DatabaseContext.DatabaseContext(connection.createClient("tenant", { module: "tenant" }), providers)).addService("readDatabaseContext", ({ readConnection, providers }) => new DatabaseContext.DatabaseContext(readConnection.createClient("tenant", { module: "tenant" }), providers)).addService("identityFetcher", ({ databaseContext }) => new IdentityFetcher.IdentityFetcher(databaseContext.client)).addService("migrationsRunner", ({ providers }) => new runner.TenantMigrationsRunner(args.dbCredentials, "tenant", args.tenantCredentials, providers));
118
+ }).addService("idpSignInManager", ({ apiKeyManager, idpRegistry }) => new IDPSignInManager.IDPSignInManager(apiKeyManager, idpRegistry)).addService("idpManager", ({ idpRegistry }) => new IDPManager.IDPManager(idpRegistry)).addService("otpAuthenticator", ({ providers }) => new OtpAuthenticator.OtpAuthenticator(providers)).addService("signInManager", ({ apiKeyManager, providers, otpAuthenticator }) => new SignInManager.SignInManager(apiKeyManager, providers, otpAuthenticator)).addService("membershipValidator", ({ projectSchemaResolver }) => new MembershipValidator.MembershipValidator(projectSchemaResolver)).addService("inviteManager", ({ providers, userMailer, projectSchemaResolver }) => new InviteManager.InviteManager(providers, userMailer, projectSchemaResolver)).addService("otpManager", ({ otpAuthenticator }) => new OtpManager.OtpManager(otpAuthenticator)).addService("mailTemplateManager", () => new MailTemplateManager.MailTemplateManager()).addService("rolesManager", () => new RolesManager.RolesManager()).addService("configurationManager", () => new ConfigurationManager.ConfigurationManager()).addService("passwordlessSignInManager", ({ apiKeyManager, userMailer, projectManager, otpAuthenticator }) => new PasswordlessSignInManager.PasswordlessSignInManager(apiKeyManager, userMailer, projectManager, otpAuthenticator)).addService("identityTypeResolver", ({ projectMemberManager, projectManager, permissionContextFactory }) => new IdentityTypeResolver.IdentityTypeResolver(projectMemberManager, projectManager, permissionContextFactory)).addService("projectTypeResolver", ({ projectMemberManager, projectSchemaResolver }) => new ProjectTypeResolver.ProjectTypeResolver(projectMemberManager, projectSchemaResolver)).addService("signInResponseFactory", ({ permissionContextFactory, identityTypeResolver }) => new SignInResponseFactory.SignInResponseFactory(permissionContextFactory, identityTypeResolver)).addService("meQueryResolver", () => new MeQueryResolver.MeQueryResolver()).addService("personQueryResolver", ({ personManager }) => new PersonQueryResolver.PersonQueryResolver(personManager)).addService("idpQueryResolver", ({ idpManager }) => new IDPQueryResolver.IDPQueryResolver(idpManager)).addService("projectQueryResolver", ({ projectManager }) => new ProjectQueryResolver.ProjectQueryResolver(projectManager)).addService("projectMembersQueryResolver", ({ projectManager, projectMemberManager }) => new ProjectMembersQueryResolver.ProjectMembersQueryResolver(projectManager, projectMemberManager)).addService("mailTemplateQueryResolver", () => new MailTemplateQueryResolver.MailTemplateQueryResolver()).addService("signUpMutationResolver", ({ signUpManager, apiKeyManager }) => new SignUpMutationResolver.SignUpMutationResolver(signUpManager, apiKeyManager)).addService("signInMutationResolver", ({ signInManager, signInResponseFactory }) => new SignInMutationResolver.SignInMutationResolver(signInManager, signInResponseFactory)).addService("signOutMutationResolver", ({ apiKeyManager }) => new SignOutMutationResolver.SignOutMutationResolver(apiKeyManager)).addService("changeProfileMutationResolver", ({ personManager }) => new ChangeProfileMutationResolver.ChangeProfileMutationResolver(personManager)).addService("changePasswordMutationResolver", ({ passwordChangeManager }) => new ChangePasswordMutationResolver.ChangePasswordMutationResolver(passwordChangeManager)).addService("resetPasswordMutationResolver", ({ passwordResetManager, permissionContextFactory }) => new ResetPasswordMutationResolver.ResetPasswordMutationResolver(passwordResetManager, permissionContextFactory)).addService("inviteMutationResolver", ({ inviteManager, projectManager, membershipValidator }) => new InviteMutationResolver.InviteMutationResolver(inviteManager, projectManager, membershipValidator)).addService("addProjectMemberMutationResolver", ({ projectMemberManager, projectManager, membershipValidator }) => new AddProjectMemberMutationResolver.AddProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator)).addService("updateProjectMemberMutationResolver", ({ projectMemberManager, projectManager, membershipValidator }) => new UpdateProjectMemberMutationResolver.UpdateProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator)).addService("removeProjectMemberMutationResolver", ({ projectMemberManager, projectManager }) => new RemoveProjectMemberMutationResolver.RemoveProjectMemberMutationResolver(projectMemberManager, projectManager)).addService("createApiKeyMutationResolver", ({ apiKeyManager, projectManager, membershipValidator }) => new CreateApiKeyMutationResolver.CreateApiKeyMutationResolver(apiKeyManager, projectManager, membershipValidator)).addService("disableApiKeyMutationResolver", ({ apiKeyManager }) => new DisableApiKeyMutationResolver.DisableApiKeyMutationResolver(apiKeyManager)).addService("otpMutationResolver", ({ otpManager }) => new OtpMutationResolver.OtpMutationResolver(otpManager)).addService("mailTemplateMutationResolver", ({ projectManager, mailTemplateManager }) => new MailTemplateMutationResolver.MailTemplateMutationResolver(projectManager, mailTemplateManager)).addService("idpMutationResolver", ({ idpSignInManager, signInResponseFactory }) => new IDPMutationResolver.IDPMutationResolver(idpSignInManager, signInResponseFactory)).addService("registerIdpMutationResolver", ({ idpManager }) => new AddIDPMutationResolver.AddIDPMutationResolver(idpManager)).addService("updateIdpMutationResolver", ({ idpManager }) => new UpdateIDPMutationResolver.UpdateIDPMutationResolver(idpManager)).addService("disableIdpMutationResolver", ({ idpManager }) => new DisableIDPMutationResolver.DisableIDPMutationResolver(idpManager)).addService("enableIdpMutationResolver", ({ idpManager }) => new EnableIDPMutationResolver.EnableIDPMutationResolver(idpManager)).addService("createProjectMutationResolver", ({ projectManager }) => new CreateProjectMutationResolver.CreateProjectMutationResolver(projectManager)).addService("disablePersonMutationResolver", ({ personAccessManager, personManager }) => new DisablePersonMutationResolver.DisablePersonMutationResolver(personAccessManager, personManager)).addService("updateProjectMutationResolver", ({ projectManager }) => new UpdateProjectMutationResolver.UpdateProjectMutationResolver(projectManager)).addService("setProjectSecretMutationResolver", ({ projectManager, secretManager }) => new SetProjectSecretMutationResolver.SetProjectSecretMutationResolver(projectManager, secretManager)).addService("identityGlobalRolesMutationResolver", ({ rolesManager }) => new GlobalRolesMutationResolver.IdentityGlobalRolesMutationResolver(rolesManager)).addService("configurationMutationResolver", ({ configurationManager }) => new ConfigurationMutationResolver.ConfigurationMutationResolver(configurationManager)).addService("configurationQueryResolver", ({ configurationManager }) => new ConfigurationQueryResolver.ConfigurationQueryResolver(configurationManager)).addService("passwordlessMutationResolver", ({ passwordlessSignInManager, signInResponseFactory }) => new PasswordlessMutationResolver.PasswordlessMutationResolver(passwordlessSignInManager, signInResponseFactory)).addService("togglePasswordlessMutationResolver", ({ configurationManager, personManager }) => new TogglePasswordlessMutationResolver.TogglePasswordlessMutationResolver(configurationManager, personManager)).addService("authLogService", () => new AuthLogService.AuthLogService()).addService("resolverContextFactory", ({ permissionContextFactory, authLogService }) => new TenantResolverContextFactory.TenantResolverContextFactory(permissionContextFactory, authLogService)).addService("resolvers", (container) => new ResolverFactory.ResolverFactory(container).create()).addService("connection", () => args.connection).addService("readConnection", () => args.readConnection).addService("databaseContext", ({ connection, providers }) => new DatabaseContext.DatabaseContext(connection.createClient("tenant", { module: "tenant" }), providers)).addService("readDatabaseContext", ({ readConnection, providers }) => new DatabaseContext.DatabaseContext(readConnection.createClient("tenant", { module: "tenant" }), providers)).addService("identityFetcher", ({ databaseContext }) => new IdentityFetcher.IdentityFetcher(databaseContext.client)).addService("migrationsRunner", ({ providers }) => new runner.TenantMigrationsRunner(args.dbCredentials, "tenant", args.tenantCredentials, providers));
117
119
  }
118
120
  }
119
121
  exports.TenantContainerFactory = TenantContainerFactory;
@@ -1 +1 @@
1
- {"version":3,"file":"TenantContainer.cjs","sources":["../../../../packages/engine-tenant-api/src/TenantContainer.ts"],"sourcesContent":["import { AccessEvaluator, Authorizator } from '@contember/authorization'\nimport { Connection, DatabaseConfig } from '@contember/database'\nimport { Builder } from '@contember/dic'\nimport {\n\tAclSchemaAccessNodeFactory,\n\tApiKeyManager,\n\tApiKeyService,\n\tAppleProvider,\n\tDatabaseContext,\n\tEmailValidator,\n\tFacebookProvider,\n\tIdentity,\n\tIdentityFactory,\n\tIDPHandlerRegistry,\n\tIDPManager,\n\tIDPSignInManager,\n\tInviteManager,\n\tMailTemplateManager,\n\tMembershipValidator,\n\tOIDCProvider,\n\tOtpAuthenticator,\n\tOtpManager,\n\tPasswordChangeManager,\n\tPasswordResetManager,\n\tPermissionContextFactory,\n\tPermissionsFactory,\n\tPersonAccessManager,\n\tPersonManager,\n\tProjectInitializer,\n\tProjectManager,\n\tProjectMemberManager,\n\tProjectSchemaResolver,\n\tProjectScopeFactory,\n\tProviders,\n\tRolesManager,\n\tSecretsManager,\n\tSignInManager,\n\tSignUpManager,\n\tUserMailer,\n} from './model'\nimport {\n\tAddIDPMutationResolver,\n\tAddProjectMemberMutationResolver,\n\tChangePasswordMutationResolver,\n\tChangeProfileMutationResolver,\n\tCreateApiKeyMutationResolver,\n\tCreateProjectMutationResolver,\n\tDisableApiKeyMutationResolver,\n\tDisableIDPMutationResolver,\n\tEnableIDPMutationResolver,\n\tIdentityGlobalRolesMutationResolver,\n\tIdentityTypeResolver,\n\tIDPMutationResolver,\n\tInviteMutationResolver,\n\tMailTemplateMutationResolver,\n\tMeQueryResolver,\n\tOtpMutationResolver,\n\tPersonQueryResolver,\n\tProjectMembersQueryResolver,\n\tProjectQueryResolver,\n\tProjectTypeResolver,\n\tRemoveProjectMemberMutationResolver,\n\tResetPasswordMutationResolver,\n\tResolverFactory,\n\tSetProjectSecretMutationResolver,\n\tSignInMutationResolver,\n\tSignOutMutationResolver,\n\tSignUpMutationResolver,\n\tTenantResolverContextFactory,\n\tUpdateProjectMemberMutationResolver,\n\tUpdateProjectMutationResolver,\n} from './resolvers'\nimport * as Schema from './schema'\nimport { createMailer, MailerOptions, TemplateRenderer } from './utils'\nimport { IdentityFetcher } from './bridges/system/IdentityFetcher'\nimport { SignInResponseFactory } from './resolvers/responseHelpers/SignInResponseFactory'\nimport { IDPQueryResolver } from './resolvers/query/IDPQueryResolver'\nimport { UpdateIDPMutationResolver } from './resolvers/mutation/idp/UpdateIDPMutationResolver'\nimport { TenantCredentials, TenantMigrationsRunner } from './migrations'\nimport { DisablePersonMutationResolver } from './resolvers/mutation/person/DisablePersonMutationResolver'\nimport { MailTemplateQueryResolver } from './resolvers/query/MailTemplateQueryResolver'\nimport { ConfigurationManager } from './model/service/ConfigurationManager'\nimport { ConfigurationMutationResolver } from './resolvers/mutation/configuration/ConfigurationMutationResolver'\nimport { ConfigurationQueryResolver } from './resolvers/query/ConfigurationQueryResolver'\nimport { PasswordlessMutationResolver } from './resolvers/mutation/person/PasswordlessMutationResolver'\nimport { PasswordlessSignInManager } from './model/service/PasswordlessSignInManager'\nimport { TogglePasswordlessMutationResolver } from './resolvers/mutation/person/TogglePasswordlessMutationResolver'\n\nexport interface TenantContainer {\n\tprojectMemberManager: ProjectMemberManager\n\tapiKeyManager: ApiKeyManager\n\tsignUpManager: SignUpManager\n\tprojectManager: ProjectManager\n\tresolvers: Schema.Resolvers\n\tresolverContextFactory: TenantResolverContextFactory\n\tauthorizator: Authorizator<Identity>\n\tidentityFetcher: IdentityFetcher\n\tdatabaseContext: DatabaseContext\n\treadDatabaseContext: DatabaseContext\n\tmigrationsRunner: TenantMigrationsRunner\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n}\n\nexport interface TenantContainerArgs {\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n\tdbCredentials: DatabaseConfig\n\tmailOptions: MailerOptions\n\tprojectSchemaResolver: ProjectSchemaResolver\n\tprojectInitializer: ProjectInitializer\n\ttenantCredentials: TenantCredentials\n\tcryptoProviders: Pick<Providers, 'encrypt' | 'decrypt'>\n}\n\nexport class TenantContainerFactory {\n\tconstructor(\n\t\tprivate readonly providers: Omit<Providers, 'encrypt' | 'decrypt'>,\n\t) { }\n\n\tcreate(args: TenantContainerArgs): TenantContainer {\n\t\treturn this.createBuilder(args)\n\t\t\t.build()\n\t\t\t.pick(\n\t\t\t\t'apiKeyManager',\n\t\t\t\t'projectMemberManager',\n\t\t\t\t'projectManager',\n\t\t\t\t'signUpManager',\n\t\t\t\t'resolvers',\n\t\t\t\t'authorizator',\n\t\t\t\t'resolverContextFactory',\n\t\t\t\t'identityFetcher',\n\t\t\t\t'databaseContext',\n\t\t\t\t'readDatabaseContext',\n\t\t\t\t'migrationsRunner',\n\t\t\t\t'connection',\n\t\t\t\t'readConnection',\n\t\t\t)\n\t}\n\n\tcreateBuilder(args: TenantContainerArgs) {\n\t\treturn new Builder({})\n\t\t\t.addService('providers', () =>\n\t\t\t\t({ ...this.providers, ...args.cryptoProviders }))\n\t\t\t.addService('mailer', () =>\n\t\t\t\tcreateMailer(args.mailOptions))\n\t\t\t.addService('projectSchemaResolver', () =>\n\t\t\t\targs.projectSchemaResolver)\n\t\t\t.addService('templateRenderer', () =>\n\t\t\t\tnew TemplateRenderer())\n\t\t\t.addService('accessEvaluator', ({ }) =>\n\t\t\t\tnew AccessEvaluator.PermissionEvaluator(new PermissionsFactory().create()))\n\t\t\t.addService('authorizator', ({ accessEvaluator }) =>\n\t\t\t\tnew Authorizator.Default(accessEvaluator))\n\t\t\t.addService('userMailer', ({ mailer, templateRenderer }) =>\n\t\t\t\tnew UserMailer(mailer, templateRenderer))\n\t\t\t.addService('apiKeyService', () =>\n\t\t\t\tnew ApiKeyService())\n\t\t\t.addService('apiKeyManager', ({ apiKeyService }) =>\n\t\t\t\tnew ApiKeyManager(apiKeyService))\n\t\t\t.addService('emailValidator', () =>\n\t\t\t\tnew EmailValidator())\n\t\t\t.addService('signUpManager', ({ emailValidator }) =>\n\t\t\t\tnew SignUpManager(emailValidator))\n\t\t\t.addService('passwordChangeManager', ({ providers }) =>\n\t\t\t\tnew PasswordChangeManager(providers))\n\t\t\t.addService('projectMemberManager', () =>\n\t\t\t\tnew ProjectMemberManager())\n\t\t\t.addService('identityFactory', ({ projectMemberManager }) =>\n\t\t\t\tnew IdentityFactory(projectMemberManager))\n\t\t\t.addService('projectScopeFactory', () =>\n\t\t\t\tnew ProjectScopeFactory(new AclSchemaAccessNodeFactory()))\n\t\t\t.addService('permissionContextFactory', ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) =>\n\t\t\t\tnew PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver))\n\t\t\t.addService('secretManager', ({ providers }) =>\n\t\t\t\tnew SecretsManager(providers))\n\t\t\t.addService('projectManager', ({ secretManager, apiKeyService }) =>\n\t\t\t\tnew ProjectManager(secretManager, args.projectInitializer, apiKeyService))\n\t\t\t.addService('personAccessManager', ({ apiKeyManager }) =>\n\t\t\t\tnew PersonAccessManager(apiKeyManager))\n\t\t\t.addService('personManager', ({ emailValidator }) =>\n\t\t\t\tnew PersonManager(emailValidator))\n\t\t\t.addService('passwordResetManager', ({ userMailer, projectManager }) =>\n\t\t\t\tnew PasswordResetManager(userMailer, projectManager))\n\t\t\t.addService('idpRegistry', () => {\n\t\t\t\tconst idpRegistry = new IDPHandlerRegistry()\n\t\t\t\tidpRegistry.registerHandler('oidc', new OIDCProvider())\n\t\t\t\tidpRegistry.registerHandler('facebook', new FacebookProvider())\n\t\t\t\tidpRegistry.registerHandler('apple', new AppleProvider())\n\t\t\t\treturn idpRegistry\n\t\t\t})\n\t\t\t.addService('idpSignInManager', ({ apiKeyManager, idpRegistry }) =>\n\t\t\t\tnew IDPSignInManager(apiKeyManager, idpRegistry))\n\t\t\t.addService('idpManager', ({ idpRegistry }) =>\n\t\t\t\tnew IDPManager(idpRegistry))\n\t\t\t.addService('otpAuthenticator', ({ providers }) =>\n\t\t\t\tnew OtpAuthenticator(providers))\n\t\t\t.addService('signInManager', ({ apiKeyManager, providers, otpAuthenticator }) =>\n\t\t\t\tnew SignInManager(apiKeyManager, providers, otpAuthenticator))\n\t\t\t.addService('membershipValidator', ({ projectSchemaResolver }) =>\n\t\t\t\tnew MembershipValidator(projectSchemaResolver))\n\t\t\t.addService('inviteManager', ({ providers, userMailer, projectSchemaResolver }) =>\n\t\t\t\tnew InviteManager(providers, userMailer, projectSchemaResolver))\n\t\t\t.addService('otpManager', ({ otpAuthenticator }) =>\n\t\t\t\tnew OtpManager(otpAuthenticator))\n\t\t\t.addService('mailTemplateManager', () =>\n\t\t\t\tnew MailTemplateManager())\n\t\t\t.addService('rolesManager', () =>\n\t\t\t\tnew RolesManager())\n\t\t\t.addService('configurationManager', () =>\n\t\t\t\tnew ConfigurationManager())\n\t\t\t.addService('passwordlessSignInManager', ({ apiKeyManager, configurationManager, userMailer, projectManager, otpAuthenticator }) =>\n\t\t\t\tnew PasswordlessSignInManager(apiKeyManager, configurationManager, userMailer, projectManager, otpAuthenticator))\n\n\t\t\t.addService('identityTypeResolver', ({ projectMemberManager, projectManager, permissionContextFactory }) =>\n\t\t\t\tnew IdentityTypeResolver(projectMemberManager, projectManager, permissionContextFactory))\n\t\t\t.addService('projectTypeResolver', ({ projectMemberManager, projectSchemaResolver }) =>\n\t\t\t\tnew ProjectTypeResolver(projectMemberManager, projectSchemaResolver))\n\t\t\t.addService('signInResponseFactory', ({ permissionContextFactory, identityTypeResolver }) =>\n\t\t\t\tnew SignInResponseFactory(permissionContextFactory, identityTypeResolver))\n\t\t\t.addService('meQueryResolver', () =>\n\t\t\t\tnew MeQueryResolver())\n\t\t\t.addService('personQueryResolver', ({ personManager }) =>\n\t\t\t\tnew PersonQueryResolver(personManager))\n\t\t\t.addService('idpQueryResolver', ({ idpManager }) =>\n\t\t\t\tnew IDPQueryResolver(idpManager))\n\t\t\t.addService('projectQueryResolver', ({ projectManager }) =>\n\t\t\t\tnew ProjectQueryResolver(projectManager))\n\t\t\t.addService('projectMembersQueryResolver', ({ projectManager, projectMemberManager }) =>\n\t\t\t\tnew ProjectMembersQueryResolver(projectManager, projectMemberManager))\n\t\t\t.addService('mailTemplateQueryResolver', () =>\n\t\t\t\tnew MailTemplateQueryResolver())\n\t\t\t.addService('signUpMutationResolver', ({ signUpManager, apiKeyManager }) =>\n\t\t\t\tnew SignUpMutationResolver(signUpManager, apiKeyManager))\n\t\t\t.addService('signInMutationResolver', ({ signInManager, signInResponseFactory }) =>\n\t\t\t\tnew SignInMutationResolver(signInManager, signInResponseFactory))\n\t\t\t.addService('signOutMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew SignOutMutationResolver(apiKeyManager))\n\t\t\t.addService('changeProfileMutationResolver', ({ personManager }) =>\n\t\t\t\tnew ChangeProfileMutationResolver(personManager))\n\t\t\t.addService('changePasswordMutationResolver', ({ passwordChangeManager }) =>\n\t\t\t\tnew ChangePasswordMutationResolver(passwordChangeManager))\n\t\t\t.addService('resetPasswordMutationResolver', ({ passwordResetManager, permissionContextFactory }) =>\n\t\t\t\tnew ResetPasswordMutationResolver(passwordResetManager, permissionContextFactory))\n\t\t\t.addService('inviteMutationResolver', ({ inviteManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew InviteMutationResolver(inviteManager, projectManager, membershipValidator))\n\t\t\t.addService('addProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew AddProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('updateProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew UpdateProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('removeProjectMemberMutationResolver', ({ projectMemberManager, projectManager }) =>\n\t\t\t\tnew RemoveProjectMemberMutationResolver(projectMemberManager, projectManager))\n\t\t\t.addService('createApiKeyMutationResolver', ({ apiKeyManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew CreateApiKeyMutationResolver(apiKeyManager, projectManager, membershipValidator))\n\t\t\t.addService('disableApiKeyMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew DisableApiKeyMutationResolver(apiKeyManager))\n\t\t\t.addService('otpMutationResolver', ({ otpManager }) =>\n\t\t\t\tnew OtpMutationResolver(otpManager))\n\t\t\t.addService('mailTemplateMutationResolver', ({ projectManager, mailTemplateManager }) =>\n\t\t\t\tnew MailTemplateMutationResolver(projectManager, mailTemplateManager))\n\t\t\t.addService('idpMutationResolver', ({ idpSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew IDPMutationResolver(idpSignInManager, signInResponseFactory))\n\t\t\t.addService('registerIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew AddIDPMutationResolver(idpManager))\n\t\t\t.addService('updateIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew UpdateIDPMutationResolver(idpManager))\n\t\t\t.addService('disableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew DisableIDPMutationResolver(idpManager))\n\t\t\t.addService('enableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew EnableIDPMutationResolver(idpManager))\n\t\t\t.addService('createProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew CreateProjectMutationResolver(projectManager))\n\t\t\t.addService('disablePersonMutationResolver', ({ personAccessManager, personManager }) =>\n\t\t\t\tnew DisablePersonMutationResolver(personAccessManager, personManager))\n\t\t\t.addService('updateProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew UpdateProjectMutationResolver(projectManager))\n\t\t\t.addService('setProjectSecretMutationResolver', ({ projectManager, secretManager }) =>\n\t\t\t\tnew SetProjectSecretMutationResolver(projectManager, secretManager))\n\t\t\t.addService('identityGlobalRolesMutationResolver', ({ rolesManager }) =>\n\t\t\t\tnew IdentityGlobalRolesMutationResolver(rolesManager))\n\t\t\t.addService('configurationMutationResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationMutationResolver(configurationManager))\n\t\t\t.addService('configurationQueryResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationQueryResolver(configurationManager))\n\t\t\t.addService('passwordlessMutationResolver', ({ passwordlessSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew PasswordlessMutationResolver(passwordlessSignInManager, signInResponseFactory))\n\t\t\t.addService('togglePasswordlessMutationResolver', ({ configurationManager, personManager }) =>\n\t\t\t\tnew TogglePasswordlessMutationResolver(configurationManager, personManager))\n\t\t\t.addService('resolverContextFactory', ({ permissionContextFactory }) =>\n\t\t\t\tnew TenantResolverContextFactory(permissionContextFactory))\n\t\t\t.addService('resolvers', container =>\n\t\t\t\tnew ResolverFactory(container).create())\n\t\t\t.addService('connection', () =>\n\t\t\t\targs.connection)\n\t\t\t.addService('readConnection', () =>\n\t\t\t\targs.readConnection)\n\t\t\t.addService('databaseContext', ({ connection, providers }) =>\n\t\t\t\tnew DatabaseContext(connection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('readDatabaseContext', ({ readConnection, providers }) =>\n\t\t\t\tnew DatabaseContext(readConnection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('identityFetcher', ({ databaseContext }) =>\n\t\t\t\tnew IdentityFetcher(databaseContext.client))\n\t\t\t.addService('migrationsRunner', ({ providers }) =>\n\t\t\t\tnew TenantMigrationsRunner(args.dbCredentials, 'tenant', args.tenantCredentials, providers))\n\t}\n}\n"],"names":["Builder","createMailer","TemplateRenderer","AccessEvaluator","PermissionsFactory","Authorizator","UserMailer","ApiKeyService","ApiKeyManager","EmailValidator","SignUpManager","PasswordChangeManager","ProjectMemberManager","IdentityFactory","ProjectScopeFactory","AclSchemaAccessNodeFactory","PermissionContextFactory","SecretsManager","ProjectManager","PersonAccessManager","PersonManager","PasswordResetManager","IDPHandlerRegistry","OIDCProvider","FacebookProvider","AppleProvider","IDPSignInManager","IDPManager","OtpAuthenticator","SignInManager","MembershipValidator","InviteManager","OtpManager","MailTemplateManager","RolesManager","ConfigurationManager","PasswordlessSignInManager","IdentityTypeResolver","ProjectTypeResolver","SignInResponseFactory","MeQueryResolver","PersonQueryResolver","IDPQueryResolver","ProjectQueryResolver","ProjectMembersQueryResolver","MailTemplateQueryResolver","SignUpMutationResolver","SignInMutationResolver","SignOutMutationResolver","ChangeProfileMutationResolver","ChangePasswordMutationResolver","ResetPasswordMutationResolver","InviteMutationResolver","AddProjectMemberMutationResolver","UpdateProjectMemberMutationResolver","RemoveProjectMemberMutationResolver","CreateApiKeyMutationResolver","DisableApiKeyMutationResolver","OtpMutationResolver","MailTemplateMutationResolver","IDPMutationResolver","AddIDPMutationResolver","UpdateIDPMutationResolver","DisableIDPMutationResolver","EnableIDPMutationResolver","CreateProjectMutationResolver","DisablePersonMutationResolver","UpdateProjectMutationResolver","SetProjectSecretMutationResolver","IdentityGlobalRolesMutationResolver","ConfigurationMutationResolver","ConfigurationQueryResolver","PasswordlessMutationResolver","TogglePasswordlessMutationResolver","TenantResolverContextFactory","ResolverFactory","DatabaseContext","IdentityFetcher","TenantMigrationsRunner"],"mappings":"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"}
1
+ {"version":3,"file":"TenantContainer.cjs","sources":["../../../../packages/engine-tenant-api/src/TenantContainer.ts"],"sourcesContent":["import { AccessEvaluator, Authorizator } from '@contember/authorization'\nimport { Connection, DatabaseConfig } from '@contember/database'\nimport { Builder } from '@contember/dic'\nimport {\n\tAclSchemaAccessNodeFactory,\n\tApiKeyManager,\n\tApiKeyService,\n\tAppleProvider,\n\tDatabaseContext,\n\tEmailValidator,\n\tFacebookProvider,\n\tIdentity,\n\tIdentityFactory,\n\tIDPHandlerRegistry,\n\tIDPManager,\n\tIDPSignInManager,\n\tInviteManager,\n\tMailTemplateManager,\n\tMembershipValidator,\n\tOIDCProvider,\n\tOtpAuthenticator,\n\tOtpManager,\n\tPasswordChangeManager,\n\tPasswordResetManager,\n\tPermissionContextFactory,\n\tPermissionsFactory,\n\tPersonAccessManager,\n\tPersonManager,\n\tProjectInitializer,\n\tProjectManager,\n\tProjectMemberManager,\n\tProjectSchemaResolver,\n\tProjectScopeFactory,\n\tProviders,\n\tRolesManager,\n\tSecretsManager,\n\tSignInManager,\n\tSignUpManager,\n\tUserMailer,\n} from './model'\nimport {\n\tAddIDPMutationResolver,\n\tAddProjectMemberMutationResolver,\n\tChangePasswordMutationResolver,\n\tChangeProfileMutationResolver,\n\tCreateApiKeyMutationResolver,\n\tCreateProjectMutationResolver,\n\tDisableApiKeyMutationResolver,\n\tDisableIDPMutationResolver,\n\tEnableIDPMutationResolver,\n\tIdentityGlobalRolesMutationResolver,\n\tIdentityTypeResolver,\n\tIDPMutationResolver,\n\tInviteMutationResolver,\n\tMailTemplateMutationResolver,\n\tMeQueryResolver,\n\tOtpMutationResolver,\n\tPersonQueryResolver,\n\tProjectMembersQueryResolver,\n\tProjectQueryResolver,\n\tProjectTypeResolver,\n\tRemoveProjectMemberMutationResolver,\n\tResetPasswordMutationResolver,\n\tResolverFactory,\n\tSetProjectSecretMutationResolver,\n\tSignInMutationResolver,\n\tSignOutMutationResolver,\n\tSignUpMutationResolver,\n\tTenantResolverContextFactory,\n\tUpdateProjectMemberMutationResolver,\n\tUpdateProjectMutationResolver,\n} from './resolvers'\nimport * as Schema from './schema'\nimport { createMailer, MailerOptions, TemplateRenderer } from './utils'\nimport { IdentityFetcher } from './bridges/system/IdentityFetcher'\nimport { SignInResponseFactory } from './resolvers/responseHelpers/SignInResponseFactory'\nimport { IDPQueryResolver } from './resolvers/query/IDPQueryResolver'\nimport { UpdateIDPMutationResolver } from './resolvers/mutation/idp/UpdateIDPMutationResolver'\nimport { TenantCredentials, TenantMigrationsRunner } from './migrations'\nimport { DisablePersonMutationResolver } from './resolvers/mutation/person/DisablePersonMutationResolver'\nimport { MailTemplateQueryResolver } from './resolvers/query/MailTemplateQueryResolver'\nimport { ConfigurationManager } from './model/service/ConfigurationManager'\nimport { ConfigurationMutationResolver } from './resolvers/mutation/configuration/ConfigurationMutationResolver'\nimport { ConfigurationQueryResolver } from './resolvers/query/ConfigurationQueryResolver'\nimport { PasswordlessMutationResolver } from './resolvers/mutation/person/PasswordlessMutationResolver'\nimport { PasswordlessSignInManager } from './model/service/PasswordlessSignInManager'\nimport { TogglePasswordlessMutationResolver } from './resolvers/mutation/person/TogglePasswordlessMutationResolver'\nimport { PasswordStrengthValidator } from './model/service/PasswordStrengthValidator'\nimport { AuthLogService } from './model/service/AuthLogService'\n\nexport interface TenantContainer {\n\tprojectMemberManager: ProjectMemberManager\n\tapiKeyManager: ApiKeyManager\n\tsignUpManager: SignUpManager\n\tprojectManager: ProjectManager\n\tresolvers: Schema.Resolvers\n\tresolverContextFactory: TenantResolverContextFactory\n\tauthorizator: Authorizator<Identity>\n\tidentityFetcher: IdentityFetcher\n\tdatabaseContext: DatabaseContext\n\treadDatabaseContext: DatabaseContext\n\tmigrationsRunner: TenantMigrationsRunner\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n}\n\nexport interface TenantContainerArgs {\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n\tdbCredentials: DatabaseConfig\n\tmailOptions: MailerOptions\n\tprojectSchemaResolver: ProjectSchemaResolver\n\tprojectInitializer: ProjectInitializer\n\ttenantCredentials: TenantCredentials\n\tcryptoProviders: Pick<Providers, 'encrypt' | 'decrypt'>\n}\n\nexport class TenantContainerFactory {\n\tconstructor(\n\t\tprivate readonly providers: Omit<Providers, 'encrypt' | 'decrypt'>,\n\t) { }\n\n\tcreate(args: TenantContainerArgs): TenantContainer {\n\t\treturn this.createBuilder(args)\n\t\t\t.build()\n\t\t\t.pick(\n\t\t\t\t'apiKeyManager',\n\t\t\t\t'projectMemberManager',\n\t\t\t\t'projectManager',\n\t\t\t\t'signUpManager',\n\t\t\t\t'resolvers',\n\t\t\t\t'authorizator',\n\t\t\t\t'resolverContextFactory',\n\t\t\t\t'identityFetcher',\n\t\t\t\t'databaseContext',\n\t\t\t\t'readDatabaseContext',\n\t\t\t\t'migrationsRunner',\n\t\t\t\t'connection',\n\t\t\t\t'readConnection',\n\t\t\t)\n\t}\n\n\tcreateBuilder(args: TenantContainerArgs) {\n\t\treturn new Builder({})\n\t\t\t.addService('providers', () =>\n\t\t\t\t({ ...this.providers, ...args.cryptoProviders }))\n\t\t\t.addService('mailer', () =>\n\t\t\t\tcreateMailer(args.mailOptions))\n\t\t\t.addService('projectSchemaResolver', () =>\n\t\t\t\targs.projectSchemaResolver)\n\t\t\t.addService('templateRenderer', () =>\n\t\t\t\tnew TemplateRenderer())\n\t\t\t.addService('accessEvaluator', ({ }) =>\n\t\t\t\tnew AccessEvaluator.PermissionEvaluator(new PermissionsFactory().create()))\n\t\t\t.addService('authorizator', ({ accessEvaluator }) =>\n\t\t\t\tnew Authorizator.Default(accessEvaluator))\n\t\t\t.addService('userMailer', ({ mailer, templateRenderer }) =>\n\t\t\t\tnew UserMailer(mailer, templateRenderer))\n\t\t\t.addService('apiKeyService', () =>\n\t\t\t\tnew ApiKeyService())\n\t\t\t.addService('apiKeyManager', ({ apiKeyService }) =>\n\t\t\t\tnew ApiKeyManager(apiKeyService))\n\t\t\t.addService('emailValidator', () =>\n\t\t\t\tnew EmailValidator())\n\t\t\t.addService('passwordStrengthValidator', () =>\n\t\t\t\tnew PasswordStrengthValidator())\n\t\t\t.addService('signUpManager', ({ emailValidator, passwordStrengthValidator }) =>\n\t\t\t\tnew SignUpManager(emailValidator, passwordStrengthValidator))\n\t\t\t.addService('passwordChangeManager', ({ providers, passwordStrengthValidator }) =>\n\t\t\t\tnew PasswordChangeManager(providers, passwordStrengthValidator))\n\t\t\t.addService('projectMemberManager', () =>\n\t\t\t\tnew ProjectMemberManager())\n\t\t\t.addService('identityFactory', ({ projectMemberManager }) =>\n\t\t\t\tnew IdentityFactory(projectMemberManager))\n\t\t\t.addService('projectScopeFactory', () =>\n\t\t\t\tnew ProjectScopeFactory(new AclSchemaAccessNodeFactory()))\n\t\t\t.addService('permissionContextFactory', ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) =>\n\t\t\t\tnew PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver))\n\t\t\t.addService('secretManager', ({ providers }) =>\n\t\t\t\tnew SecretsManager(providers))\n\t\t\t.addService('projectManager', ({ secretManager, apiKeyService }) =>\n\t\t\t\tnew ProjectManager(secretManager, args.projectInitializer, apiKeyService))\n\t\t\t.addService('personAccessManager', ({ apiKeyManager }) =>\n\t\t\t\tnew PersonAccessManager(apiKeyManager))\n\t\t\t.addService('personManager', ({ emailValidator }) =>\n\t\t\t\tnew PersonManager(emailValidator))\n\t\t\t.addService('passwordResetManager', ({ userMailer, projectManager, passwordStrengthValidator }) =>\n\t\t\t\tnew PasswordResetManager(userMailer, projectManager, passwordStrengthValidator))\n\t\t\t.addService('idpRegistry', () => {\n\t\t\t\tconst idpRegistry = new IDPHandlerRegistry()\n\t\t\t\tidpRegistry.registerHandler('oidc', new OIDCProvider())\n\t\t\t\tidpRegistry.registerHandler('facebook', new FacebookProvider())\n\t\t\t\tidpRegistry.registerHandler('apple', new AppleProvider())\n\t\t\t\treturn idpRegistry\n\t\t\t})\n\t\t\t.addService('idpSignInManager', ({ apiKeyManager, idpRegistry }) =>\n\t\t\t\tnew IDPSignInManager(apiKeyManager, idpRegistry))\n\t\t\t.addService('idpManager', ({ idpRegistry }) =>\n\t\t\t\tnew IDPManager(idpRegistry))\n\t\t\t.addService('otpAuthenticator', ({ providers }) =>\n\t\t\t\tnew OtpAuthenticator(providers))\n\t\t\t.addService('signInManager', ({ apiKeyManager, providers, otpAuthenticator }) =>\n\t\t\t\tnew SignInManager(apiKeyManager, providers, otpAuthenticator))\n\t\t\t.addService('membershipValidator', ({ projectSchemaResolver }) =>\n\t\t\t\tnew MembershipValidator(projectSchemaResolver))\n\t\t\t.addService('inviteManager', ({ providers, userMailer, projectSchemaResolver }) =>\n\t\t\t\tnew InviteManager(providers, userMailer, projectSchemaResolver))\n\t\t\t.addService('otpManager', ({ otpAuthenticator }) =>\n\t\t\t\tnew OtpManager(otpAuthenticator))\n\t\t\t.addService('mailTemplateManager', () =>\n\t\t\t\tnew MailTemplateManager())\n\t\t\t.addService('rolesManager', () =>\n\t\t\t\tnew RolesManager())\n\t\t\t.addService('configurationManager', () =>\n\t\t\t\tnew ConfigurationManager())\n\t\t\t.addService('passwordlessSignInManager', ({ apiKeyManager, userMailer, projectManager, otpAuthenticator }) =>\n\t\t\t\tnew PasswordlessSignInManager(apiKeyManager, userMailer, projectManager, otpAuthenticator))\n\n\t\t\t.addService('identityTypeResolver', ({ projectMemberManager, projectManager, permissionContextFactory }) =>\n\t\t\t\tnew IdentityTypeResolver(projectMemberManager, projectManager, permissionContextFactory))\n\t\t\t.addService('projectTypeResolver', ({ projectMemberManager, projectSchemaResolver }) =>\n\t\t\t\tnew ProjectTypeResolver(projectMemberManager, projectSchemaResolver))\n\t\t\t.addService('signInResponseFactory', ({ permissionContextFactory, identityTypeResolver }) =>\n\t\t\t\tnew SignInResponseFactory(permissionContextFactory, identityTypeResolver))\n\t\t\t.addService('meQueryResolver', () =>\n\t\t\t\tnew MeQueryResolver())\n\t\t\t.addService('personQueryResolver', ({ personManager }) =>\n\t\t\t\tnew PersonQueryResolver(personManager))\n\t\t\t.addService('idpQueryResolver', ({ idpManager }) =>\n\t\t\t\tnew IDPQueryResolver(idpManager))\n\t\t\t.addService('projectQueryResolver', ({ projectManager }) =>\n\t\t\t\tnew ProjectQueryResolver(projectManager))\n\t\t\t.addService('projectMembersQueryResolver', ({ projectManager, projectMemberManager }) =>\n\t\t\t\tnew ProjectMembersQueryResolver(projectManager, projectMemberManager))\n\t\t\t.addService('mailTemplateQueryResolver', () =>\n\t\t\t\tnew MailTemplateQueryResolver())\n\t\t\t.addService('signUpMutationResolver', ({ signUpManager, apiKeyManager }) =>\n\t\t\t\tnew SignUpMutationResolver(signUpManager, apiKeyManager))\n\t\t\t.addService('signInMutationResolver', ({ signInManager, signInResponseFactory }) =>\n\t\t\t\tnew SignInMutationResolver(signInManager, signInResponseFactory))\n\t\t\t.addService('signOutMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew SignOutMutationResolver(apiKeyManager))\n\t\t\t.addService('changeProfileMutationResolver', ({ personManager }) =>\n\t\t\t\tnew ChangeProfileMutationResolver(personManager))\n\t\t\t.addService('changePasswordMutationResolver', ({ passwordChangeManager }) =>\n\t\t\t\tnew ChangePasswordMutationResolver(passwordChangeManager))\n\t\t\t.addService('resetPasswordMutationResolver', ({ passwordResetManager, permissionContextFactory }) =>\n\t\t\t\tnew ResetPasswordMutationResolver(passwordResetManager, permissionContextFactory))\n\t\t\t.addService('inviteMutationResolver', ({ inviteManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew InviteMutationResolver(inviteManager, projectManager, membershipValidator))\n\t\t\t.addService('addProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew AddProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('updateProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew UpdateProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('removeProjectMemberMutationResolver', ({ projectMemberManager, projectManager }) =>\n\t\t\t\tnew RemoveProjectMemberMutationResolver(projectMemberManager, projectManager))\n\t\t\t.addService('createApiKeyMutationResolver', ({ apiKeyManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew CreateApiKeyMutationResolver(apiKeyManager, projectManager, membershipValidator))\n\t\t\t.addService('disableApiKeyMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew DisableApiKeyMutationResolver(apiKeyManager))\n\t\t\t.addService('otpMutationResolver', ({ otpManager }) =>\n\t\t\t\tnew OtpMutationResolver(otpManager))\n\t\t\t.addService('mailTemplateMutationResolver', ({ projectManager, mailTemplateManager }) =>\n\t\t\t\tnew MailTemplateMutationResolver(projectManager, mailTemplateManager))\n\t\t\t.addService('idpMutationResolver', ({ idpSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew IDPMutationResolver(idpSignInManager, signInResponseFactory))\n\t\t\t.addService('registerIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew AddIDPMutationResolver(idpManager))\n\t\t\t.addService('updateIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew UpdateIDPMutationResolver(idpManager))\n\t\t\t.addService('disableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew DisableIDPMutationResolver(idpManager))\n\t\t\t.addService('enableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew EnableIDPMutationResolver(idpManager))\n\t\t\t.addService('createProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew CreateProjectMutationResolver(projectManager))\n\t\t\t.addService('disablePersonMutationResolver', ({ personAccessManager, personManager }) =>\n\t\t\t\tnew DisablePersonMutationResolver(personAccessManager, personManager))\n\t\t\t.addService('updateProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew UpdateProjectMutationResolver(projectManager))\n\t\t\t.addService('setProjectSecretMutationResolver', ({ projectManager, secretManager }) =>\n\t\t\t\tnew SetProjectSecretMutationResolver(projectManager, secretManager))\n\t\t\t.addService('identityGlobalRolesMutationResolver', ({ rolesManager }) =>\n\t\t\t\tnew IdentityGlobalRolesMutationResolver(rolesManager))\n\t\t\t.addService('configurationMutationResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationMutationResolver(configurationManager))\n\t\t\t.addService('configurationQueryResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationQueryResolver(configurationManager))\n\t\t\t.addService('passwordlessMutationResolver', ({ passwordlessSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew PasswordlessMutationResolver(passwordlessSignInManager, signInResponseFactory))\n\t\t\t.addService('togglePasswordlessMutationResolver', ({ configurationManager, personManager }) =>\n\t\t\t\tnew TogglePasswordlessMutationResolver(configurationManager, personManager))\n\t\t\t.addService('authLogService', () =>\n\t\t\t\tnew AuthLogService())\n\t\t\t.addService('resolverContextFactory', ({ permissionContextFactory, authLogService }) =>\n\t\t\t\tnew TenantResolverContextFactory(permissionContextFactory, authLogService))\n\t\t\t.addService('resolvers', container =>\n\t\t\t\tnew ResolverFactory(container).create())\n\t\t\t.addService('connection', () =>\n\t\t\t\targs.connection)\n\t\t\t.addService('readConnection', () =>\n\t\t\t\targs.readConnection)\n\t\t\t.addService('databaseContext', ({ connection, providers }) =>\n\t\t\t\tnew DatabaseContext(connection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('readDatabaseContext', ({ readConnection, providers }) =>\n\t\t\t\tnew DatabaseContext(readConnection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('identityFetcher', ({ databaseContext }) =>\n\t\t\t\tnew IdentityFetcher(databaseContext.client))\n\t\t\t.addService('migrationsRunner', ({ providers }) =>\n\t\t\t\tnew TenantMigrationsRunner(args.dbCredentials, 'tenant', args.tenantCredentials, providers))\n\t}\n}\n"],"names":["Builder","createMailer","TemplateRenderer","AccessEvaluator","PermissionsFactory","Authorizator","UserMailer","ApiKeyService","ApiKeyManager","EmailValidator","PasswordStrengthValidator","SignUpManager","PasswordChangeManager","ProjectMemberManager","IdentityFactory","ProjectScopeFactory","AclSchemaAccessNodeFactory","PermissionContextFactory","SecretsManager","ProjectManager","PersonAccessManager","PersonManager","PasswordResetManager","IDPHandlerRegistry","OIDCProvider","FacebookProvider","AppleProvider","IDPSignInManager","IDPManager","OtpAuthenticator","SignInManager","MembershipValidator","InviteManager","OtpManager","MailTemplateManager","RolesManager","ConfigurationManager","PasswordlessSignInManager","IdentityTypeResolver","ProjectTypeResolver","SignInResponseFactory","MeQueryResolver","PersonQueryResolver","IDPQueryResolver","ProjectQueryResolver","ProjectMembersQueryResolver","MailTemplateQueryResolver","SignUpMutationResolver","SignInMutationResolver","SignOutMutationResolver","ChangeProfileMutationResolver","ChangePasswordMutationResolver","ResetPasswordMutationResolver","InviteMutationResolver","AddProjectMemberMutationResolver","UpdateProjectMemberMutationResolver","RemoveProjectMemberMutationResolver","CreateApiKeyMutationResolver","DisableApiKeyMutationResolver","OtpMutationResolver","MailTemplateMutationResolver","IDPMutationResolver","AddIDPMutationResolver","UpdateIDPMutationResolver","DisableIDPMutationResolver","EnableIDPMutationResolver","CreateProjectMutationResolver","DisablePersonMutationResolver","UpdateProjectMutationResolver","SetProjectSecretMutationResolver","IdentityGlobalRolesMutationResolver","ConfigurationMutationResolver","ConfigurationQueryResolver","PasswordlessMutationResolver","TogglePasswordlessMutationResolver","AuthLogService","TenantResolverContextFactory","ResolverFactory","DatabaseContext","IdentityFetcher","TenantMigrationsRunner"],"mappings":"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"}
@@ -83,6 +83,8 @@ import { ConfigurationQueryResolver } from "./resolvers/query/ConfigurationQuery
83
83
  import { PasswordlessMutationResolver } from "./resolvers/mutation/person/PasswordlessMutationResolver.js";
84
84
  import { PasswordlessSignInManager } from "./model/service/PasswordlessSignInManager.js";
85
85
  import { TogglePasswordlessMutationResolver } from "./resolvers/mutation/person/TogglePasswordlessMutationResolver.js";
86
+ import { PasswordStrengthValidator } from "./model/service/PasswordStrengthValidator.js";
87
+ import { AuthLogService } from "./model/service/AuthLogService.js";
86
88
  class TenantContainerFactory {
87
89
  constructor(providers) {
88
90
  this.providers = providers;
@@ -105,13 +107,13 @@ class TenantContainerFactory {
105
107
  );
106
108
  }
107
109
  createBuilder(args) {
108
- return new Builder({}).addService("providers", () => ({ ...this.providers, ...args.cryptoProviders })).addService("mailer", () => createMailer(args.mailOptions)).addService("projectSchemaResolver", () => args.projectSchemaResolver).addService("templateRenderer", () => new TemplateRenderer()).addService("accessEvaluator", ({}) => new AccessEvaluator.PermissionEvaluator(new PermissionsFactory().create())).addService("authorizator", ({ accessEvaluator }) => new Authorizator.Default(accessEvaluator)).addService("userMailer", ({ mailer, templateRenderer }) => new UserMailer(mailer, templateRenderer)).addService("apiKeyService", () => new ApiKeyService()).addService("apiKeyManager", ({ apiKeyService }) => new ApiKeyManager(apiKeyService)).addService("emailValidator", () => new EmailValidator()).addService("signUpManager", ({ emailValidator }) => new SignUpManager(emailValidator)).addService("passwordChangeManager", ({ providers }) => new PasswordChangeManager(providers)).addService("projectMemberManager", () => new ProjectMemberManager()).addService("identityFactory", ({ projectMemberManager }) => new IdentityFactory(projectMemberManager)).addService("projectScopeFactory", () => new ProjectScopeFactory(new AclSchemaAccessNodeFactory())).addService("permissionContextFactory", ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) => new PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver)).addService("secretManager", ({ providers }) => new SecretsManager(providers)).addService("projectManager", ({ secretManager, apiKeyService }) => new ProjectManager(secretManager, args.projectInitializer, apiKeyService)).addService("personAccessManager", ({ apiKeyManager }) => new PersonAccessManager(apiKeyManager)).addService("personManager", ({ emailValidator }) => new PersonManager(emailValidator)).addService("passwordResetManager", ({ userMailer, projectManager }) => new PasswordResetManager(userMailer, projectManager)).addService("idpRegistry", () => {
110
+ return new Builder({}).addService("providers", () => ({ ...this.providers, ...args.cryptoProviders })).addService("mailer", () => createMailer(args.mailOptions)).addService("projectSchemaResolver", () => args.projectSchemaResolver).addService("templateRenderer", () => new TemplateRenderer()).addService("accessEvaluator", ({}) => new AccessEvaluator.PermissionEvaluator(new PermissionsFactory().create())).addService("authorizator", ({ accessEvaluator }) => new Authorizator.Default(accessEvaluator)).addService("userMailer", ({ mailer, templateRenderer }) => new UserMailer(mailer, templateRenderer)).addService("apiKeyService", () => new ApiKeyService()).addService("apiKeyManager", ({ apiKeyService }) => new ApiKeyManager(apiKeyService)).addService("emailValidator", () => new EmailValidator()).addService("passwordStrengthValidator", () => new PasswordStrengthValidator()).addService("signUpManager", ({ emailValidator, passwordStrengthValidator }) => new SignUpManager(emailValidator, passwordStrengthValidator)).addService("passwordChangeManager", ({ providers, passwordStrengthValidator }) => new PasswordChangeManager(providers, passwordStrengthValidator)).addService("projectMemberManager", () => new ProjectMemberManager()).addService("identityFactory", ({ projectMemberManager }) => new IdentityFactory(projectMemberManager)).addService("projectScopeFactory", () => new ProjectScopeFactory(new AclSchemaAccessNodeFactory())).addService("permissionContextFactory", ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) => new PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver)).addService("secretManager", ({ providers }) => new SecretsManager(providers)).addService("projectManager", ({ secretManager, apiKeyService }) => new ProjectManager(secretManager, args.projectInitializer, apiKeyService)).addService("personAccessManager", ({ apiKeyManager }) => new PersonAccessManager(apiKeyManager)).addService("personManager", ({ emailValidator }) => new PersonManager(emailValidator)).addService("passwordResetManager", ({ userMailer, projectManager, passwordStrengthValidator }) => new PasswordResetManager(userMailer, projectManager, passwordStrengthValidator)).addService("idpRegistry", () => {
109
111
  const idpRegistry = new IDPHandlerRegistry();
110
112
  idpRegistry.registerHandler("oidc", new OIDCProvider());
111
113
  idpRegistry.registerHandler("facebook", new FacebookProvider());
112
114
  idpRegistry.registerHandler("apple", new AppleProvider());
113
115
  return idpRegistry;
114
- }).addService("idpSignInManager", ({ apiKeyManager, idpRegistry }) => new IDPSignInManager(apiKeyManager, idpRegistry)).addService("idpManager", ({ idpRegistry }) => new IDPManager(idpRegistry)).addService("otpAuthenticator", ({ providers }) => new OtpAuthenticator(providers)).addService("signInManager", ({ apiKeyManager, providers, otpAuthenticator }) => new SignInManager(apiKeyManager, providers, otpAuthenticator)).addService("membershipValidator", ({ projectSchemaResolver }) => new MembershipValidator(projectSchemaResolver)).addService("inviteManager", ({ providers, userMailer, projectSchemaResolver }) => new InviteManager(providers, userMailer, projectSchemaResolver)).addService("otpManager", ({ otpAuthenticator }) => new OtpManager(otpAuthenticator)).addService("mailTemplateManager", () => new MailTemplateManager()).addService("rolesManager", () => new RolesManager()).addService("configurationManager", () => new ConfigurationManager()).addService("passwordlessSignInManager", ({ apiKeyManager, configurationManager, userMailer, projectManager, otpAuthenticator }) => new PasswordlessSignInManager(apiKeyManager, configurationManager, userMailer, projectManager, otpAuthenticator)).addService("identityTypeResolver", ({ projectMemberManager, projectManager, permissionContextFactory }) => new IdentityTypeResolver(projectMemberManager, projectManager, permissionContextFactory)).addService("projectTypeResolver", ({ projectMemberManager, projectSchemaResolver }) => new ProjectTypeResolver(projectMemberManager, projectSchemaResolver)).addService("signInResponseFactory", ({ permissionContextFactory, identityTypeResolver }) => new SignInResponseFactory(permissionContextFactory, identityTypeResolver)).addService("meQueryResolver", () => new MeQueryResolver()).addService("personQueryResolver", ({ personManager }) => new PersonQueryResolver(personManager)).addService("idpQueryResolver", ({ idpManager }) => new IDPQueryResolver(idpManager)).addService("projectQueryResolver", ({ projectManager }) => new ProjectQueryResolver(projectManager)).addService("projectMembersQueryResolver", ({ projectManager, projectMemberManager }) => new ProjectMembersQueryResolver(projectManager, projectMemberManager)).addService("mailTemplateQueryResolver", () => new MailTemplateQueryResolver()).addService("signUpMutationResolver", ({ signUpManager, apiKeyManager }) => new SignUpMutationResolver(signUpManager, apiKeyManager)).addService("signInMutationResolver", ({ signInManager, signInResponseFactory }) => new SignInMutationResolver(signInManager, signInResponseFactory)).addService("signOutMutationResolver", ({ apiKeyManager }) => new SignOutMutationResolver(apiKeyManager)).addService("changeProfileMutationResolver", ({ personManager }) => new ChangeProfileMutationResolver(personManager)).addService("changePasswordMutationResolver", ({ passwordChangeManager }) => new ChangePasswordMutationResolver(passwordChangeManager)).addService("resetPasswordMutationResolver", ({ passwordResetManager, permissionContextFactory }) => new ResetPasswordMutationResolver(passwordResetManager, permissionContextFactory)).addService("inviteMutationResolver", ({ inviteManager, projectManager, membershipValidator }) => new InviteMutationResolver(inviteManager, projectManager, membershipValidator)).addService("addProjectMemberMutationResolver", ({ projectMemberManager, projectManager, membershipValidator }) => new AddProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator)).addService("updateProjectMemberMutationResolver", ({ projectMemberManager, projectManager, membershipValidator }) => new UpdateProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator)).addService("removeProjectMemberMutationResolver", ({ projectMemberManager, projectManager }) => new RemoveProjectMemberMutationResolver(projectMemberManager, projectManager)).addService("createApiKeyMutationResolver", ({ apiKeyManager, projectManager, membershipValidator }) => new CreateApiKeyMutationResolver(apiKeyManager, projectManager, membershipValidator)).addService("disableApiKeyMutationResolver", ({ apiKeyManager }) => new DisableApiKeyMutationResolver(apiKeyManager)).addService("otpMutationResolver", ({ otpManager }) => new OtpMutationResolver(otpManager)).addService("mailTemplateMutationResolver", ({ projectManager, mailTemplateManager }) => new MailTemplateMutationResolver(projectManager, mailTemplateManager)).addService("idpMutationResolver", ({ idpSignInManager, signInResponseFactory }) => new IDPMutationResolver(idpSignInManager, signInResponseFactory)).addService("registerIdpMutationResolver", ({ idpManager }) => new AddIDPMutationResolver(idpManager)).addService("updateIdpMutationResolver", ({ idpManager }) => new UpdateIDPMutationResolver(idpManager)).addService("disableIdpMutationResolver", ({ idpManager }) => new DisableIDPMutationResolver(idpManager)).addService("enableIdpMutationResolver", ({ idpManager }) => new EnableIDPMutationResolver(idpManager)).addService("createProjectMutationResolver", ({ projectManager }) => new CreateProjectMutationResolver(projectManager)).addService("disablePersonMutationResolver", ({ personAccessManager, personManager }) => new DisablePersonMutationResolver(personAccessManager, personManager)).addService("updateProjectMutationResolver", ({ projectManager }) => new UpdateProjectMutationResolver(projectManager)).addService("setProjectSecretMutationResolver", ({ projectManager, secretManager }) => new SetProjectSecretMutationResolver(projectManager, secretManager)).addService("identityGlobalRolesMutationResolver", ({ rolesManager }) => new IdentityGlobalRolesMutationResolver(rolesManager)).addService("configurationMutationResolver", ({ configurationManager }) => new ConfigurationMutationResolver(configurationManager)).addService("configurationQueryResolver", ({ configurationManager }) => new ConfigurationQueryResolver(configurationManager)).addService("passwordlessMutationResolver", ({ passwordlessSignInManager, signInResponseFactory }) => new PasswordlessMutationResolver(passwordlessSignInManager, signInResponseFactory)).addService("togglePasswordlessMutationResolver", ({ configurationManager, personManager }) => new TogglePasswordlessMutationResolver(configurationManager, personManager)).addService("resolverContextFactory", ({ permissionContextFactory }) => new TenantResolverContextFactory(permissionContextFactory)).addService("resolvers", (container) => new ResolverFactory(container).create()).addService("connection", () => args.connection).addService("readConnection", () => args.readConnection).addService("databaseContext", ({ connection, providers }) => new DatabaseContext(connection.createClient("tenant", { module: "tenant" }), providers)).addService("readDatabaseContext", ({ readConnection, providers }) => new DatabaseContext(readConnection.createClient("tenant", { module: "tenant" }), providers)).addService("identityFetcher", ({ databaseContext }) => new IdentityFetcher(databaseContext.client)).addService("migrationsRunner", ({ providers }) => new TenantMigrationsRunner(args.dbCredentials, "tenant", args.tenantCredentials, providers));
116
+ }).addService("idpSignInManager", ({ apiKeyManager, idpRegistry }) => new IDPSignInManager(apiKeyManager, idpRegistry)).addService("idpManager", ({ idpRegistry }) => new IDPManager(idpRegistry)).addService("otpAuthenticator", ({ providers }) => new OtpAuthenticator(providers)).addService("signInManager", ({ apiKeyManager, providers, otpAuthenticator }) => new SignInManager(apiKeyManager, providers, otpAuthenticator)).addService("membershipValidator", ({ projectSchemaResolver }) => new MembershipValidator(projectSchemaResolver)).addService("inviteManager", ({ providers, userMailer, projectSchemaResolver }) => new InviteManager(providers, userMailer, projectSchemaResolver)).addService("otpManager", ({ otpAuthenticator }) => new OtpManager(otpAuthenticator)).addService("mailTemplateManager", () => new MailTemplateManager()).addService("rolesManager", () => new RolesManager()).addService("configurationManager", () => new ConfigurationManager()).addService("passwordlessSignInManager", ({ apiKeyManager, userMailer, projectManager, otpAuthenticator }) => new PasswordlessSignInManager(apiKeyManager, userMailer, projectManager, otpAuthenticator)).addService("identityTypeResolver", ({ projectMemberManager, projectManager, permissionContextFactory }) => new IdentityTypeResolver(projectMemberManager, projectManager, permissionContextFactory)).addService("projectTypeResolver", ({ projectMemberManager, projectSchemaResolver }) => new ProjectTypeResolver(projectMemberManager, projectSchemaResolver)).addService("signInResponseFactory", ({ permissionContextFactory, identityTypeResolver }) => new SignInResponseFactory(permissionContextFactory, identityTypeResolver)).addService("meQueryResolver", () => new MeQueryResolver()).addService("personQueryResolver", ({ personManager }) => new PersonQueryResolver(personManager)).addService("idpQueryResolver", ({ idpManager }) => new IDPQueryResolver(idpManager)).addService("projectQueryResolver", ({ projectManager }) => new ProjectQueryResolver(projectManager)).addService("projectMembersQueryResolver", ({ projectManager, projectMemberManager }) => new ProjectMembersQueryResolver(projectManager, projectMemberManager)).addService("mailTemplateQueryResolver", () => new MailTemplateQueryResolver()).addService("signUpMutationResolver", ({ signUpManager, apiKeyManager }) => new SignUpMutationResolver(signUpManager, apiKeyManager)).addService("signInMutationResolver", ({ signInManager, signInResponseFactory }) => new SignInMutationResolver(signInManager, signInResponseFactory)).addService("signOutMutationResolver", ({ apiKeyManager }) => new SignOutMutationResolver(apiKeyManager)).addService("changeProfileMutationResolver", ({ personManager }) => new ChangeProfileMutationResolver(personManager)).addService("changePasswordMutationResolver", ({ passwordChangeManager }) => new ChangePasswordMutationResolver(passwordChangeManager)).addService("resetPasswordMutationResolver", ({ passwordResetManager, permissionContextFactory }) => new ResetPasswordMutationResolver(passwordResetManager, permissionContextFactory)).addService("inviteMutationResolver", ({ inviteManager, projectManager, membershipValidator }) => new InviteMutationResolver(inviteManager, projectManager, membershipValidator)).addService("addProjectMemberMutationResolver", ({ projectMemberManager, projectManager, membershipValidator }) => new AddProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator)).addService("updateProjectMemberMutationResolver", ({ projectMemberManager, projectManager, membershipValidator }) => new UpdateProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator)).addService("removeProjectMemberMutationResolver", ({ projectMemberManager, projectManager }) => new RemoveProjectMemberMutationResolver(projectMemberManager, projectManager)).addService("createApiKeyMutationResolver", ({ apiKeyManager, projectManager, membershipValidator }) => new CreateApiKeyMutationResolver(apiKeyManager, projectManager, membershipValidator)).addService("disableApiKeyMutationResolver", ({ apiKeyManager }) => new DisableApiKeyMutationResolver(apiKeyManager)).addService("otpMutationResolver", ({ otpManager }) => new OtpMutationResolver(otpManager)).addService("mailTemplateMutationResolver", ({ projectManager, mailTemplateManager }) => new MailTemplateMutationResolver(projectManager, mailTemplateManager)).addService("idpMutationResolver", ({ idpSignInManager, signInResponseFactory }) => new IDPMutationResolver(idpSignInManager, signInResponseFactory)).addService("registerIdpMutationResolver", ({ idpManager }) => new AddIDPMutationResolver(idpManager)).addService("updateIdpMutationResolver", ({ idpManager }) => new UpdateIDPMutationResolver(idpManager)).addService("disableIdpMutationResolver", ({ idpManager }) => new DisableIDPMutationResolver(idpManager)).addService("enableIdpMutationResolver", ({ idpManager }) => new EnableIDPMutationResolver(idpManager)).addService("createProjectMutationResolver", ({ projectManager }) => new CreateProjectMutationResolver(projectManager)).addService("disablePersonMutationResolver", ({ personAccessManager, personManager }) => new DisablePersonMutationResolver(personAccessManager, personManager)).addService("updateProjectMutationResolver", ({ projectManager }) => new UpdateProjectMutationResolver(projectManager)).addService("setProjectSecretMutationResolver", ({ projectManager, secretManager }) => new SetProjectSecretMutationResolver(projectManager, secretManager)).addService("identityGlobalRolesMutationResolver", ({ rolesManager }) => new IdentityGlobalRolesMutationResolver(rolesManager)).addService("configurationMutationResolver", ({ configurationManager }) => new ConfigurationMutationResolver(configurationManager)).addService("configurationQueryResolver", ({ configurationManager }) => new ConfigurationQueryResolver(configurationManager)).addService("passwordlessMutationResolver", ({ passwordlessSignInManager, signInResponseFactory }) => new PasswordlessMutationResolver(passwordlessSignInManager, signInResponseFactory)).addService("togglePasswordlessMutationResolver", ({ configurationManager, personManager }) => new TogglePasswordlessMutationResolver(configurationManager, personManager)).addService("authLogService", () => new AuthLogService()).addService("resolverContextFactory", ({ permissionContextFactory, authLogService }) => new TenantResolverContextFactory(permissionContextFactory, authLogService)).addService("resolvers", (container) => new ResolverFactory(container).create()).addService("connection", () => args.connection).addService("readConnection", () => args.readConnection).addService("databaseContext", ({ connection, providers }) => new DatabaseContext(connection.createClient("tenant", { module: "tenant" }), providers)).addService("readDatabaseContext", ({ readConnection, providers }) => new DatabaseContext(readConnection.createClient("tenant", { module: "tenant" }), providers)).addService("identityFetcher", ({ databaseContext }) => new IdentityFetcher(databaseContext.client)).addService("migrationsRunner", ({ providers }) => new TenantMigrationsRunner(args.dbCredentials, "tenant", args.tenantCredentials, providers));
115
117
  }
116
118
  }
117
119
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"TenantContainer.js","sources":["../../../../packages/engine-tenant-api/src/TenantContainer.ts"],"sourcesContent":["import { AccessEvaluator, Authorizator } from '@contember/authorization'\nimport { Connection, DatabaseConfig } from '@contember/database'\nimport { Builder } from '@contember/dic'\nimport {\n\tAclSchemaAccessNodeFactory,\n\tApiKeyManager,\n\tApiKeyService,\n\tAppleProvider,\n\tDatabaseContext,\n\tEmailValidator,\n\tFacebookProvider,\n\tIdentity,\n\tIdentityFactory,\n\tIDPHandlerRegistry,\n\tIDPManager,\n\tIDPSignInManager,\n\tInviteManager,\n\tMailTemplateManager,\n\tMembershipValidator,\n\tOIDCProvider,\n\tOtpAuthenticator,\n\tOtpManager,\n\tPasswordChangeManager,\n\tPasswordResetManager,\n\tPermissionContextFactory,\n\tPermissionsFactory,\n\tPersonAccessManager,\n\tPersonManager,\n\tProjectInitializer,\n\tProjectManager,\n\tProjectMemberManager,\n\tProjectSchemaResolver,\n\tProjectScopeFactory,\n\tProviders,\n\tRolesManager,\n\tSecretsManager,\n\tSignInManager,\n\tSignUpManager,\n\tUserMailer,\n} from './model'\nimport {\n\tAddIDPMutationResolver,\n\tAddProjectMemberMutationResolver,\n\tChangePasswordMutationResolver,\n\tChangeProfileMutationResolver,\n\tCreateApiKeyMutationResolver,\n\tCreateProjectMutationResolver,\n\tDisableApiKeyMutationResolver,\n\tDisableIDPMutationResolver,\n\tEnableIDPMutationResolver,\n\tIdentityGlobalRolesMutationResolver,\n\tIdentityTypeResolver,\n\tIDPMutationResolver,\n\tInviteMutationResolver,\n\tMailTemplateMutationResolver,\n\tMeQueryResolver,\n\tOtpMutationResolver,\n\tPersonQueryResolver,\n\tProjectMembersQueryResolver,\n\tProjectQueryResolver,\n\tProjectTypeResolver,\n\tRemoveProjectMemberMutationResolver,\n\tResetPasswordMutationResolver,\n\tResolverFactory,\n\tSetProjectSecretMutationResolver,\n\tSignInMutationResolver,\n\tSignOutMutationResolver,\n\tSignUpMutationResolver,\n\tTenantResolverContextFactory,\n\tUpdateProjectMemberMutationResolver,\n\tUpdateProjectMutationResolver,\n} from './resolvers'\nimport * as Schema from './schema'\nimport { createMailer, MailerOptions, TemplateRenderer } from './utils'\nimport { IdentityFetcher } from './bridges/system/IdentityFetcher'\nimport { SignInResponseFactory } from './resolvers/responseHelpers/SignInResponseFactory'\nimport { IDPQueryResolver } from './resolvers/query/IDPQueryResolver'\nimport { UpdateIDPMutationResolver } from './resolvers/mutation/idp/UpdateIDPMutationResolver'\nimport { TenantCredentials, TenantMigrationsRunner } from './migrations'\nimport { DisablePersonMutationResolver } from './resolvers/mutation/person/DisablePersonMutationResolver'\nimport { MailTemplateQueryResolver } from './resolvers/query/MailTemplateQueryResolver'\nimport { ConfigurationManager } from './model/service/ConfigurationManager'\nimport { ConfigurationMutationResolver } from './resolvers/mutation/configuration/ConfigurationMutationResolver'\nimport { ConfigurationQueryResolver } from './resolvers/query/ConfigurationQueryResolver'\nimport { PasswordlessMutationResolver } from './resolvers/mutation/person/PasswordlessMutationResolver'\nimport { PasswordlessSignInManager } from './model/service/PasswordlessSignInManager'\nimport { TogglePasswordlessMutationResolver } from './resolvers/mutation/person/TogglePasswordlessMutationResolver'\n\nexport interface TenantContainer {\n\tprojectMemberManager: ProjectMemberManager\n\tapiKeyManager: ApiKeyManager\n\tsignUpManager: SignUpManager\n\tprojectManager: ProjectManager\n\tresolvers: Schema.Resolvers\n\tresolverContextFactory: TenantResolverContextFactory\n\tauthorizator: Authorizator<Identity>\n\tidentityFetcher: IdentityFetcher\n\tdatabaseContext: DatabaseContext\n\treadDatabaseContext: DatabaseContext\n\tmigrationsRunner: TenantMigrationsRunner\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n}\n\nexport interface TenantContainerArgs {\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n\tdbCredentials: DatabaseConfig\n\tmailOptions: MailerOptions\n\tprojectSchemaResolver: ProjectSchemaResolver\n\tprojectInitializer: ProjectInitializer\n\ttenantCredentials: TenantCredentials\n\tcryptoProviders: Pick<Providers, 'encrypt' | 'decrypt'>\n}\n\nexport class TenantContainerFactory {\n\tconstructor(\n\t\tprivate readonly providers: Omit<Providers, 'encrypt' | 'decrypt'>,\n\t) { }\n\n\tcreate(args: TenantContainerArgs): TenantContainer {\n\t\treturn this.createBuilder(args)\n\t\t\t.build()\n\t\t\t.pick(\n\t\t\t\t'apiKeyManager',\n\t\t\t\t'projectMemberManager',\n\t\t\t\t'projectManager',\n\t\t\t\t'signUpManager',\n\t\t\t\t'resolvers',\n\t\t\t\t'authorizator',\n\t\t\t\t'resolverContextFactory',\n\t\t\t\t'identityFetcher',\n\t\t\t\t'databaseContext',\n\t\t\t\t'readDatabaseContext',\n\t\t\t\t'migrationsRunner',\n\t\t\t\t'connection',\n\t\t\t\t'readConnection',\n\t\t\t)\n\t}\n\n\tcreateBuilder(args: TenantContainerArgs) {\n\t\treturn new Builder({})\n\t\t\t.addService('providers', () =>\n\t\t\t\t({ ...this.providers, ...args.cryptoProviders }))\n\t\t\t.addService('mailer', () =>\n\t\t\t\tcreateMailer(args.mailOptions))\n\t\t\t.addService('projectSchemaResolver', () =>\n\t\t\t\targs.projectSchemaResolver)\n\t\t\t.addService('templateRenderer', () =>\n\t\t\t\tnew TemplateRenderer())\n\t\t\t.addService('accessEvaluator', ({ }) =>\n\t\t\t\tnew AccessEvaluator.PermissionEvaluator(new PermissionsFactory().create()))\n\t\t\t.addService('authorizator', ({ accessEvaluator }) =>\n\t\t\t\tnew Authorizator.Default(accessEvaluator))\n\t\t\t.addService('userMailer', ({ mailer, templateRenderer }) =>\n\t\t\t\tnew UserMailer(mailer, templateRenderer))\n\t\t\t.addService('apiKeyService', () =>\n\t\t\t\tnew ApiKeyService())\n\t\t\t.addService('apiKeyManager', ({ apiKeyService }) =>\n\t\t\t\tnew ApiKeyManager(apiKeyService))\n\t\t\t.addService('emailValidator', () =>\n\t\t\t\tnew EmailValidator())\n\t\t\t.addService('signUpManager', ({ emailValidator }) =>\n\t\t\t\tnew SignUpManager(emailValidator))\n\t\t\t.addService('passwordChangeManager', ({ providers }) =>\n\t\t\t\tnew PasswordChangeManager(providers))\n\t\t\t.addService('projectMemberManager', () =>\n\t\t\t\tnew ProjectMemberManager())\n\t\t\t.addService('identityFactory', ({ projectMemberManager }) =>\n\t\t\t\tnew IdentityFactory(projectMemberManager))\n\t\t\t.addService('projectScopeFactory', () =>\n\t\t\t\tnew ProjectScopeFactory(new AclSchemaAccessNodeFactory()))\n\t\t\t.addService('permissionContextFactory', ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) =>\n\t\t\t\tnew PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver))\n\t\t\t.addService('secretManager', ({ providers }) =>\n\t\t\t\tnew SecretsManager(providers))\n\t\t\t.addService('projectManager', ({ secretManager, apiKeyService }) =>\n\t\t\t\tnew ProjectManager(secretManager, args.projectInitializer, apiKeyService))\n\t\t\t.addService('personAccessManager', ({ apiKeyManager }) =>\n\t\t\t\tnew PersonAccessManager(apiKeyManager))\n\t\t\t.addService('personManager', ({ emailValidator }) =>\n\t\t\t\tnew PersonManager(emailValidator))\n\t\t\t.addService('passwordResetManager', ({ userMailer, projectManager }) =>\n\t\t\t\tnew PasswordResetManager(userMailer, projectManager))\n\t\t\t.addService('idpRegistry', () => {\n\t\t\t\tconst idpRegistry = new IDPHandlerRegistry()\n\t\t\t\tidpRegistry.registerHandler('oidc', new OIDCProvider())\n\t\t\t\tidpRegistry.registerHandler('facebook', new FacebookProvider())\n\t\t\t\tidpRegistry.registerHandler('apple', new AppleProvider())\n\t\t\t\treturn idpRegistry\n\t\t\t})\n\t\t\t.addService('idpSignInManager', ({ apiKeyManager, idpRegistry }) =>\n\t\t\t\tnew IDPSignInManager(apiKeyManager, idpRegistry))\n\t\t\t.addService('idpManager', ({ idpRegistry }) =>\n\t\t\t\tnew IDPManager(idpRegistry))\n\t\t\t.addService('otpAuthenticator', ({ providers }) =>\n\t\t\t\tnew OtpAuthenticator(providers))\n\t\t\t.addService('signInManager', ({ apiKeyManager, providers, otpAuthenticator }) =>\n\t\t\t\tnew SignInManager(apiKeyManager, providers, otpAuthenticator))\n\t\t\t.addService('membershipValidator', ({ projectSchemaResolver }) =>\n\t\t\t\tnew MembershipValidator(projectSchemaResolver))\n\t\t\t.addService('inviteManager', ({ providers, userMailer, projectSchemaResolver }) =>\n\t\t\t\tnew InviteManager(providers, userMailer, projectSchemaResolver))\n\t\t\t.addService('otpManager', ({ otpAuthenticator }) =>\n\t\t\t\tnew OtpManager(otpAuthenticator))\n\t\t\t.addService('mailTemplateManager', () =>\n\t\t\t\tnew MailTemplateManager())\n\t\t\t.addService('rolesManager', () =>\n\t\t\t\tnew RolesManager())\n\t\t\t.addService('configurationManager', () =>\n\t\t\t\tnew ConfigurationManager())\n\t\t\t.addService('passwordlessSignInManager', ({ apiKeyManager, configurationManager, userMailer, projectManager, otpAuthenticator }) =>\n\t\t\t\tnew PasswordlessSignInManager(apiKeyManager, configurationManager, userMailer, projectManager, otpAuthenticator))\n\n\t\t\t.addService('identityTypeResolver', ({ projectMemberManager, projectManager, permissionContextFactory }) =>\n\t\t\t\tnew IdentityTypeResolver(projectMemberManager, projectManager, permissionContextFactory))\n\t\t\t.addService('projectTypeResolver', ({ projectMemberManager, projectSchemaResolver }) =>\n\t\t\t\tnew ProjectTypeResolver(projectMemberManager, projectSchemaResolver))\n\t\t\t.addService('signInResponseFactory', ({ permissionContextFactory, identityTypeResolver }) =>\n\t\t\t\tnew SignInResponseFactory(permissionContextFactory, identityTypeResolver))\n\t\t\t.addService('meQueryResolver', () =>\n\t\t\t\tnew MeQueryResolver())\n\t\t\t.addService('personQueryResolver', ({ personManager }) =>\n\t\t\t\tnew PersonQueryResolver(personManager))\n\t\t\t.addService('idpQueryResolver', ({ idpManager }) =>\n\t\t\t\tnew IDPQueryResolver(idpManager))\n\t\t\t.addService('projectQueryResolver', ({ projectManager }) =>\n\t\t\t\tnew ProjectQueryResolver(projectManager))\n\t\t\t.addService('projectMembersQueryResolver', ({ projectManager, projectMemberManager }) =>\n\t\t\t\tnew ProjectMembersQueryResolver(projectManager, projectMemberManager))\n\t\t\t.addService('mailTemplateQueryResolver', () =>\n\t\t\t\tnew MailTemplateQueryResolver())\n\t\t\t.addService('signUpMutationResolver', ({ signUpManager, apiKeyManager }) =>\n\t\t\t\tnew SignUpMutationResolver(signUpManager, apiKeyManager))\n\t\t\t.addService('signInMutationResolver', ({ signInManager, signInResponseFactory }) =>\n\t\t\t\tnew SignInMutationResolver(signInManager, signInResponseFactory))\n\t\t\t.addService('signOutMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew SignOutMutationResolver(apiKeyManager))\n\t\t\t.addService('changeProfileMutationResolver', ({ personManager }) =>\n\t\t\t\tnew ChangeProfileMutationResolver(personManager))\n\t\t\t.addService('changePasswordMutationResolver', ({ passwordChangeManager }) =>\n\t\t\t\tnew ChangePasswordMutationResolver(passwordChangeManager))\n\t\t\t.addService('resetPasswordMutationResolver', ({ passwordResetManager, permissionContextFactory }) =>\n\t\t\t\tnew ResetPasswordMutationResolver(passwordResetManager, permissionContextFactory))\n\t\t\t.addService('inviteMutationResolver', ({ inviteManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew InviteMutationResolver(inviteManager, projectManager, membershipValidator))\n\t\t\t.addService('addProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew AddProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('updateProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew UpdateProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('removeProjectMemberMutationResolver', ({ projectMemberManager, projectManager }) =>\n\t\t\t\tnew RemoveProjectMemberMutationResolver(projectMemberManager, projectManager))\n\t\t\t.addService('createApiKeyMutationResolver', ({ apiKeyManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew CreateApiKeyMutationResolver(apiKeyManager, projectManager, membershipValidator))\n\t\t\t.addService('disableApiKeyMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew DisableApiKeyMutationResolver(apiKeyManager))\n\t\t\t.addService('otpMutationResolver', ({ otpManager }) =>\n\t\t\t\tnew OtpMutationResolver(otpManager))\n\t\t\t.addService('mailTemplateMutationResolver', ({ projectManager, mailTemplateManager }) =>\n\t\t\t\tnew MailTemplateMutationResolver(projectManager, mailTemplateManager))\n\t\t\t.addService('idpMutationResolver', ({ idpSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew IDPMutationResolver(idpSignInManager, signInResponseFactory))\n\t\t\t.addService('registerIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew AddIDPMutationResolver(idpManager))\n\t\t\t.addService('updateIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew UpdateIDPMutationResolver(idpManager))\n\t\t\t.addService('disableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew DisableIDPMutationResolver(idpManager))\n\t\t\t.addService('enableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew EnableIDPMutationResolver(idpManager))\n\t\t\t.addService('createProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew CreateProjectMutationResolver(projectManager))\n\t\t\t.addService('disablePersonMutationResolver', ({ personAccessManager, personManager }) =>\n\t\t\t\tnew DisablePersonMutationResolver(personAccessManager, personManager))\n\t\t\t.addService('updateProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew UpdateProjectMutationResolver(projectManager))\n\t\t\t.addService('setProjectSecretMutationResolver', ({ projectManager, secretManager }) =>\n\t\t\t\tnew SetProjectSecretMutationResolver(projectManager, secretManager))\n\t\t\t.addService('identityGlobalRolesMutationResolver', ({ rolesManager }) =>\n\t\t\t\tnew IdentityGlobalRolesMutationResolver(rolesManager))\n\t\t\t.addService('configurationMutationResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationMutationResolver(configurationManager))\n\t\t\t.addService('configurationQueryResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationQueryResolver(configurationManager))\n\t\t\t.addService('passwordlessMutationResolver', ({ passwordlessSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew PasswordlessMutationResolver(passwordlessSignInManager, signInResponseFactory))\n\t\t\t.addService('togglePasswordlessMutationResolver', ({ configurationManager, personManager }) =>\n\t\t\t\tnew TogglePasswordlessMutationResolver(configurationManager, personManager))\n\t\t\t.addService('resolverContextFactory', ({ permissionContextFactory }) =>\n\t\t\t\tnew TenantResolverContextFactory(permissionContextFactory))\n\t\t\t.addService('resolvers', container =>\n\t\t\t\tnew ResolverFactory(container).create())\n\t\t\t.addService('connection', () =>\n\t\t\t\targs.connection)\n\t\t\t.addService('readConnection', () =>\n\t\t\t\targs.readConnection)\n\t\t\t.addService('databaseContext', ({ connection, providers }) =>\n\t\t\t\tnew DatabaseContext(connection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('readDatabaseContext', ({ readConnection, providers }) =>\n\t\t\t\tnew DatabaseContext(readConnection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('identityFetcher', ({ databaseContext }) =>\n\t\t\t\tnew IdentityFetcher(databaseContext.client))\n\t\t\t.addService('migrationsRunner', ({ providers }) =>\n\t\t\t\tnew TenantMigrationsRunner(args.dbCredentials, 'tenant', args.tenantCredentials, providers))\n\t}\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TenantContainer.js","sources":["../../../../packages/engine-tenant-api/src/TenantContainer.ts"],"sourcesContent":["import { AccessEvaluator, Authorizator } from '@contember/authorization'\nimport { Connection, DatabaseConfig } from '@contember/database'\nimport { Builder } from '@contember/dic'\nimport {\n\tAclSchemaAccessNodeFactory,\n\tApiKeyManager,\n\tApiKeyService,\n\tAppleProvider,\n\tDatabaseContext,\n\tEmailValidator,\n\tFacebookProvider,\n\tIdentity,\n\tIdentityFactory,\n\tIDPHandlerRegistry,\n\tIDPManager,\n\tIDPSignInManager,\n\tInviteManager,\n\tMailTemplateManager,\n\tMembershipValidator,\n\tOIDCProvider,\n\tOtpAuthenticator,\n\tOtpManager,\n\tPasswordChangeManager,\n\tPasswordResetManager,\n\tPermissionContextFactory,\n\tPermissionsFactory,\n\tPersonAccessManager,\n\tPersonManager,\n\tProjectInitializer,\n\tProjectManager,\n\tProjectMemberManager,\n\tProjectSchemaResolver,\n\tProjectScopeFactory,\n\tProviders,\n\tRolesManager,\n\tSecretsManager,\n\tSignInManager,\n\tSignUpManager,\n\tUserMailer,\n} from './model'\nimport {\n\tAddIDPMutationResolver,\n\tAddProjectMemberMutationResolver,\n\tChangePasswordMutationResolver,\n\tChangeProfileMutationResolver,\n\tCreateApiKeyMutationResolver,\n\tCreateProjectMutationResolver,\n\tDisableApiKeyMutationResolver,\n\tDisableIDPMutationResolver,\n\tEnableIDPMutationResolver,\n\tIdentityGlobalRolesMutationResolver,\n\tIdentityTypeResolver,\n\tIDPMutationResolver,\n\tInviteMutationResolver,\n\tMailTemplateMutationResolver,\n\tMeQueryResolver,\n\tOtpMutationResolver,\n\tPersonQueryResolver,\n\tProjectMembersQueryResolver,\n\tProjectQueryResolver,\n\tProjectTypeResolver,\n\tRemoveProjectMemberMutationResolver,\n\tResetPasswordMutationResolver,\n\tResolverFactory,\n\tSetProjectSecretMutationResolver,\n\tSignInMutationResolver,\n\tSignOutMutationResolver,\n\tSignUpMutationResolver,\n\tTenantResolverContextFactory,\n\tUpdateProjectMemberMutationResolver,\n\tUpdateProjectMutationResolver,\n} from './resolvers'\nimport * as Schema from './schema'\nimport { createMailer, MailerOptions, TemplateRenderer } from './utils'\nimport { IdentityFetcher } from './bridges/system/IdentityFetcher'\nimport { SignInResponseFactory } from './resolvers/responseHelpers/SignInResponseFactory'\nimport { IDPQueryResolver } from './resolvers/query/IDPQueryResolver'\nimport { UpdateIDPMutationResolver } from './resolvers/mutation/idp/UpdateIDPMutationResolver'\nimport { TenantCredentials, TenantMigrationsRunner } from './migrations'\nimport { DisablePersonMutationResolver } from './resolvers/mutation/person/DisablePersonMutationResolver'\nimport { MailTemplateQueryResolver } from './resolvers/query/MailTemplateQueryResolver'\nimport { ConfigurationManager } from './model/service/ConfigurationManager'\nimport { ConfigurationMutationResolver } from './resolvers/mutation/configuration/ConfigurationMutationResolver'\nimport { ConfigurationQueryResolver } from './resolvers/query/ConfigurationQueryResolver'\nimport { PasswordlessMutationResolver } from './resolvers/mutation/person/PasswordlessMutationResolver'\nimport { PasswordlessSignInManager } from './model/service/PasswordlessSignInManager'\nimport { TogglePasswordlessMutationResolver } from './resolvers/mutation/person/TogglePasswordlessMutationResolver'\nimport { PasswordStrengthValidator } from './model/service/PasswordStrengthValidator'\nimport { AuthLogService } from './model/service/AuthLogService'\n\nexport interface TenantContainer {\n\tprojectMemberManager: ProjectMemberManager\n\tapiKeyManager: ApiKeyManager\n\tsignUpManager: SignUpManager\n\tprojectManager: ProjectManager\n\tresolvers: Schema.Resolvers\n\tresolverContextFactory: TenantResolverContextFactory\n\tauthorizator: Authorizator<Identity>\n\tidentityFetcher: IdentityFetcher\n\tdatabaseContext: DatabaseContext\n\treadDatabaseContext: DatabaseContext\n\tmigrationsRunner: TenantMigrationsRunner\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n}\n\nexport interface TenantContainerArgs {\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n\tdbCredentials: DatabaseConfig\n\tmailOptions: MailerOptions\n\tprojectSchemaResolver: ProjectSchemaResolver\n\tprojectInitializer: ProjectInitializer\n\ttenantCredentials: TenantCredentials\n\tcryptoProviders: Pick<Providers, 'encrypt' | 'decrypt'>\n}\n\nexport class TenantContainerFactory {\n\tconstructor(\n\t\tprivate readonly providers: Omit<Providers, 'encrypt' | 'decrypt'>,\n\t) { }\n\n\tcreate(args: TenantContainerArgs): TenantContainer {\n\t\treturn this.createBuilder(args)\n\t\t\t.build()\n\t\t\t.pick(\n\t\t\t\t'apiKeyManager',\n\t\t\t\t'projectMemberManager',\n\t\t\t\t'projectManager',\n\t\t\t\t'signUpManager',\n\t\t\t\t'resolvers',\n\t\t\t\t'authorizator',\n\t\t\t\t'resolverContextFactory',\n\t\t\t\t'identityFetcher',\n\t\t\t\t'databaseContext',\n\t\t\t\t'readDatabaseContext',\n\t\t\t\t'migrationsRunner',\n\t\t\t\t'connection',\n\t\t\t\t'readConnection',\n\t\t\t)\n\t}\n\n\tcreateBuilder(args: TenantContainerArgs) {\n\t\treturn new Builder({})\n\t\t\t.addService('providers', () =>\n\t\t\t\t({ ...this.providers, ...args.cryptoProviders }))\n\t\t\t.addService('mailer', () =>\n\t\t\t\tcreateMailer(args.mailOptions))\n\t\t\t.addService('projectSchemaResolver', () =>\n\t\t\t\targs.projectSchemaResolver)\n\t\t\t.addService('templateRenderer', () =>\n\t\t\t\tnew TemplateRenderer())\n\t\t\t.addService('accessEvaluator', ({ }) =>\n\t\t\t\tnew AccessEvaluator.PermissionEvaluator(new PermissionsFactory().create()))\n\t\t\t.addService('authorizator', ({ accessEvaluator }) =>\n\t\t\t\tnew Authorizator.Default(accessEvaluator))\n\t\t\t.addService('userMailer', ({ mailer, templateRenderer }) =>\n\t\t\t\tnew UserMailer(mailer, templateRenderer))\n\t\t\t.addService('apiKeyService', () =>\n\t\t\t\tnew ApiKeyService())\n\t\t\t.addService('apiKeyManager', ({ apiKeyService }) =>\n\t\t\t\tnew ApiKeyManager(apiKeyService))\n\t\t\t.addService('emailValidator', () =>\n\t\t\t\tnew EmailValidator())\n\t\t\t.addService('passwordStrengthValidator', () =>\n\t\t\t\tnew PasswordStrengthValidator())\n\t\t\t.addService('signUpManager', ({ emailValidator, passwordStrengthValidator }) =>\n\t\t\t\tnew SignUpManager(emailValidator, passwordStrengthValidator))\n\t\t\t.addService('passwordChangeManager', ({ providers, passwordStrengthValidator }) =>\n\t\t\t\tnew PasswordChangeManager(providers, passwordStrengthValidator))\n\t\t\t.addService('projectMemberManager', () =>\n\t\t\t\tnew ProjectMemberManager())\n\t\t\t.addService('identityFactory', ({ projectMemberManager }) =>\n\t\t\t\tnew IdentityFactory(projectMemberManager))\n\t\t\t.addService('projectScopeFactory', () =>\n\t\t\t\tnew ProjectScopeFactory(new AclSchemaAccessNodeFactory()))\n\t\t\t.addService('permissionContextFactory', ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) =>\n\t\t\t\tnew PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver))\n\t\t\t.addService('secretManager', ({ providers }) =>\n\t\t\t\tnew SecretsManager(providers))\n\t\t\t.addService('projectManager', ({ secretManager, apiKeyService }) =>\n\t\t\t\tnew ProjectManager(secretManager, args.projectInitializer, apiKeyService))\n\t\t\t.addService('personAccessManager', ({ apiKeyManager }) =>\n\t\t\t\tnew PersonAccessManager(apiKeyManager))\n\t\t\t.addService('personManager', ({ emailValidator }) =>\n\t\t\t\tnew PersonManager(emailValidator))\n\t\t\t.addService('passwordResetManager', ({ userMailer, projectManager, passwordStrengthValidator }) =>\n\t\t\t\tnew PasswordResetManager(userMailer, projectManager, passwordStrengthValidator))\n\t\t\t.addService('idpRegistry', () => {\n\t\t\t\tconst idpRegistry = new IDPHandlerRegistry()\n\t\t\t\tidpRegistry.registerHandler('oidc', new OIDCProvider())\n\t\t\t\tidpRegistry.registerHandler('facebook', new FacebookProvider())\n\t\t\t\tidpRegistry.registerHandler('apple', new AppleProvider())\n\t\t\t\treturn idpRegistry\n\t\t\t})\n\t\t\t.addService('idpSignInManager', ({ apiKeyManager, idpRegistry }) =>\n\t\t\t\tnew IDPSignInManager(apiKeyManager, idpRegistry))\n\t\t\t.addService('idpManager', ({ idpRegistry }) =>\n\t\t\t\tnew IDPManager(idpRegistry))\n\t\t\t.addService('otpAuthenticator', ({ providers }) =>\n\t\t\t\tnew OtpAuthenticator(providers))\n\t\t\t.addService('signInManager', ({ apiKeyManager, providers, otpAuthenticator }) =>\n\t\t\t\tnew SignInManager(apiKeyManager, providers, otpAuthenticator))\n\t\t\t.addService('membershipValidator', ({ projectSchemaResolver }) =>\n\t\t\t\tnew MembershipValidator(projectSchemaResolver))\n\t\t\t.addService('inviteManager', ({ providers, userMailer, projectSchemaResolver }) =>\n\t\t\t\tnew InviteManager(providers, userMailer, projectSchemaResolver))\n\t\t\t.addService('otpManager', ({ otpAuthenticator }) =>\n\t\t\t\tnew OtpManager(otpAuthenticator))\n\t\t\t.addService('mailTemplateManager', () =>\n\t\t\t\tnew MailTemplateManager())\n\t\t\t.addService('rolesManager', () =>\n\t\t\t\tnew RolesManager())\n\t\t\t.addService('configurationManager', () =>\n\t\t\t\tnew ConfigurationManager())\n\t\t\t.addService('passwordlessSignInManager', ({ apiKeyManager, userMailer, projectManager, otpAuthenticator }) =>\n\t\t\t\tnew PasswordlessSignInManager(apiKeyManager, userMailer, projectManager, otpAuthenticator))\n\n\t\t\t.addService('identityTypeResolver', ({ projectMemberManager, projectManager, permissionContextFactory }) =>\n\t\t\t\tnew IdentityTypeResolver(projectMemberManager, projectManager, permissionContextFactory))\n\t\t\t.addService('projectTypeResolver', ({ projectMemberManager, projectSchemaResolver }) =>\n\t\t\t\tnew ProjectTypeResolver(projectMemberManager, projectSchemaResolver))\n\t\t\t.addService('signInResponseFactory', ({ permissionContextFactory, identityTypeResolver }) =>\n\t\t\t\tnew SignInResponseFactory(permissionContextFactory, identityTypeResolver))\n\t\t\t.addService('meQueryResolver', () =>\n\t\t\t\tnew MeQueryResolver())\n\t\t\t.addService('personQueryResolver', ({ personManager }) =>\n\t\t\t\tnew PersonQueryResolver(personManager))\n\t\t\t.addService('idpQueryResolver', ({ idpManager }) =>\n\t\t\t\tnew IDPQueryResolver(idpManager))\n\t\t\t.addService('projectQueryResolver', ({ projectManager }) =>\n\t\t\t\tnew ProjectQueryResolver(projectManager))\n\t\t\t.addService('projectMembersQueryResolver', ({ projectManager, projectMemberManager }) =>\n\t\t\t\tnew ProjectMembersQueryResolver(projectManager, projectMemberManager))\n\t\t\t.addService('mailTemplateQueryResolver', () =>\n\t\t\t\tnew MailTemplateQueryResolver())\n\t\t\t.addService('signUpMutationResolver', ({ signUpManager, apiKeyManager }) =>\n\t\t\t\tnew SignUpMutationResolver(signUpManager, apiKeyManager))\n\t\t\t.addService('signInMutationResolver', ({ signInManager, signInResponseFactory }) =>\n\t\t\t\tnew SignInMutationResolver(signInManager, signInResponseFactory))\n\t\t\t.addService('signOutMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew SignOutMutationResolver(apiKeyManager))\n\t\t\t.addService('changeProfileMutationResolver', ({ personManager }) =>\n\t\t\t\tnew ChangeProfileMutationResolver(personManager))\n\t\t\t.addService('changePasswordMutationResolver', ({ passwordChangeManager }) =>\n\t\t\t\tnew ChangePasswordMutationResolver(passwordChangeManager))\n\t\t\t.addService('resetPasswordMutationResolver', ({ passwordResetManager, permissionContextFactory }) =>\n\t\t\t\tnew ResetPasswordMutationResolver(passwordResetManager, permissionContextFactory))\n\t\t\t.addService('inviteMutationResolver', ({ inviteManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew InviteMutationResolver(inviteManager, projectManager, membershipValidator))\n\t\t\t.addService('addProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew AddProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('updateProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew UpdateProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('removeProjectMemberMutationResolver', ({ projectMemberManager, projectManager }) =>\n\t\t\t\tnew RemoveProjectMemberMutationResolver(projectMemberManager, projectManager))\n\t\t\t.addService('createApiKeyMutationResolver', ({ apiKeyManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew CreateApiKeyMutationResolver(apiKeyManager, projectManager, membershipValidator))\n\t\t\t.addService('disableApiKeyMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew DisableApiKeyMutationResolver(apiKeyManager))\n\t\t\t.addService('otpMutationResolver', ({ otpManager }) =>\n\t\t\t\tnew OtpMutationResolver(otpManager))\n\t\t\t.addService('mailTemplateMutationResolver', ({ projectManager, mailTemplateManager }) =>\n\t\t\t\tnew MailTemplateMutationResolver(projectManager, mailTemplateManager))\n\t\t\t.addService('idpMutationResolver', ({ idpSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew IDPMutationResolver(idpSignInManager, signInResponseFactory))\n\t\t\t.addService('registerIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew AddIDPMutationResolver(idpManager))\n\t\t\t.addService('updateIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew UpdateIDPMutationResolver(idpManager))\n\t\t\t.addService('disableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew DisableIDPMutationResolver(idpManager))\n\t\t\t.addService('enableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew EnableIDPMutationResolver(idpManager))\n\t\t\t.addService('createProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew CreateProjectMutationResolver(projectManager))\n\t\t\t.addService('disablePersonMutationResolver', ({ personAccessManager, personManager }) =>\n\t\t\t\tnew DisablePersonMutationResolver(personAccessManager, personManager))\n\t\t\t.addService('updateProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew UpdateProjectMutationResolver(projectManager))\n\t\t\t.addService('setProjectSecretMutationResolver', ({ projectManager, secretManager }) =>\n\t\t\t\tnew SetProjectSecretMutationResolver(projectManager, secretManager))\n\t\t\t.addService('identityGlobalRolesMutationResolver', ({ rolesManager }) =>\n\t\t\t\tnew IdentityGlobalRolesMutationResolver(rolesManager))\n\t\t\t.addService('configurationMutationResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationMutationResolver(configurationManager))\n\t\t\t.addService('configurationQueryResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationQueryResolver(configurationManager))\n\t\t\t.addService('passwordlessMutationResolver', ({ passwordlessSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew PasswordlessMutationResolver(passwordlessSignInManager, signInResponseFactory))\n\t\t\t.addService('togglePasswordlessMutationResolver', ({ configurationManager, personManager }) =>\n\t\t\t\tnew TogglePasswordlessMutationResolver(configurationManager, personManager))\n\t\t\t.addService('authLogService', () =>\n\t\t\t\tnew AuthLogService())\n\t\t\t.addService('resolverContextFactory', ({ permissionContextFactory, authLogService }) =>\n\t\t\t\tnew TenantResolverContextFactory(permissionContextFactory, authLogService))\n\t\t\t.addService('resolvers', container =>\n\t\t\t\tnew ResolverFactory(container).create())\n\t\t\t.addService('connection', () =>\n\t\t\t\targs.connection)\n\t\t\t.addService('readConnection', () =>\n\t\t\t\targs.readConnection)\n\t\t\t.addService('databaseContext', ({ connection, providers }) =>\n\t\t\t\tnew DatabaseContext(connection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('readDatabaseContext', ({ readConnection, providers }) =>\n\t\t\t\tnew DatabaseContext(readConnection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('identityFetcher', ({ databaseContext }) =>\n\t\t\t\tnew IdentityFetcher(databaseContext.client))\n\t\t\t.addService('migrationsRunner', ({ providers }) =>\n\t\t\t\tnew TenantMigrationsRunner(args.dbCredentials, 'tenant', args.tenantCredentials, providers))\n\t}\n}\n"],"names":[],"mappings":"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"}
@@ -17,6 +17,7 @@ require("openid-client");
17
17
  require("@contember/typesafe");
18
18
  require("../../model/service/idp/providers/OIDCTypes.cjs");
19
19
  require("../../model/service/idp/providers/FacebookProvider.cjs");
20
+ require("../../model/service/AuthLogService.cjs");
20
21
  require("@contember/schema-utils");
21
22
  require("otpauth");
22
23
  var __defProp = Object.defineProperty;
@@ -1 +1 @@
1
- {"version":3,"file":"IdentityFetcher.cjs","sources":["../../../../../../packages/engine-tenant-api/src/bridges/system/IdentityFetcher.ts"],"sourcesContent":["import { Client } from '@contember/database'\nimport { IdentityQuery, PersonByIdentityBatchQuery } from '../../model'\n\nexport class IdentityFetcher {\n\tconstructor(\n\t\tprivate client: Client,\n\t) {\n\t}\n\n\tpublic async fetchIdentities(ids: string[]): Promise<Identity[]> {\n\t\tconst queryHandler = this.client.createQueryHandler()\n\t\tconst persons = await queryHandler.fetch(new PersonByIdentityBatchQuery(ids))\n\t\tconst personIds = new Set(persons.map(it => it.identity_id))\n\t\tconst otherIdentityIds = ids.filter(it => !personIds.has(it))\n\t\tconst otherIdentities = await queryHandler.fetch(new IdentityQuery(otherIdentityIds))\n\n\t\treturn [\n\t\t\t...persons.map(\n\t\t\t\tit =>\n\t\t\t\t\tnew PersonIdentity(it.identity_id, {\n\t\t\t\t\t\tid: it.id,\n\t\t\t\t\t\tname: it.name ?? 'unnamed',\n\t\t\t\t\t}),\n\t\t\t),\n\t\t\t...otherIdentities.map(it => new ApiKeyIdentity(it.id, it.description)),\n\t\t]\n\t}\n}\n\nexport type Identity = PersonIdentity | ApiKeyIdentity\n\nexport class PersonIdentity {\n\tpublic readonly type = 'person' as const\n\n\tconstructor(\n\t\tpublic readonly identityId: string,\n\t\tpublic readonly person: {\n\t\t\tid: string\n\t\t\tname: string\n\t\t},\n\t) {}\n}\n\nexport class ApiKeyIdentity {\n\tpublic readonly type = 'apiKey' as const\n\n\tconstructor(public readonly identityId: string, public readonly description: string) {}\n}\n"],"names":["PersonByIdentityBatchQuery","IdentityQuery"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAGO,MAAM,gBAAgB;AAAA,EAC5B,YACS,QACP;AADO,SAAA,SAAA;AAAA,EAAA;AAAA,EAIT,MAAa,gBAAgB,KAAoC;AAC1D,UAAA,eAAe,KAAK,OAAO,mBAAmB;AACpD,UAAM,UAAU,MAAM,aAAa,MAAM,IAAIA,2BAAAA,2BAA2B,GAAG,CAAC;AACtE,UAAA,YAAY,IAAI,IAAI,QAAQ,IAAI,CAAM,OAAA,GAAG,WAAW,CAAC;AACrD,UAAA,mBAAmB,IAAI,OAAO,CAAA,OAAM,CAAC,UAAU,IAAI,EAAE,CAAC;AAC5D,UAAM,kBAAkB,MAAM,aAAa,MAAM,IAAIC,cAAAA,cAAc,gBAAgB,CAAC;AAE7E,WAAA;AAAA,MACN,GAAG,QAAQ;AAAA,QACV,CACC,OAAA,IAAI,eAAe,GAAG,aAAa;AAAA,UAClC,IAAI,GAAG;AAAA,UACP,MAAM,GAAG,QAAQ;AAAA,QACjB,CAAA;AAAA,MACH;AAAA,MACA,GAAG,gBAAgB,IAAI,CAAM,OAAA,IAAI,eAAe,GAAG,IAAI,GAAG,WAAW,CAAC;AAAA,IACvE;AAAA,EAAA;AAEF;AAIO,MAAM,eAAe;AAAA,EAG3B,YACiB,YACA,QAIf;AALe,SAAA,aAAA;AACA,SAAA,SAAA;AAJjB,kBAAA,MAAgB,QAAO,QAAA;AAAA,EAAA;AASxB;AAEO,MAAM,eAAe;AAAA,EAG3B,YAA4B,YAAoC,aAAqB;AAAzD,SAAA,aAAA;AAAoC,SAAA,cAAA;AAFhE,kBAAA,MAAgB,QAAO,QAAA;AAAA,EAAA;AAGxB;;;;"}
1
+ {"version":3,"file":"IdentityFetcher.cjs","sources":["../../../../../../packages/engine-tenant-api/src/bridges/system/IdentityFetcher.ts"],"sourcesContent":["import { Client } from '@contember/database'\nimport { IdentityQuery, PersonByIdentityBatchQuery } from '../../model'\n\nexport class IdentityFetcher {\n\tconstructor(\n\t\tprivate client: Client,\n\t) {\n\t}\n\n\tpublic async fetchIdentities(ids: string[]): Promise<Identity[]> {\n\t\tconst queryHandler = this.client.createQueryHandler()\n\t\tconst persons = await queryHandler.fetch(new PersonByIdentityBatchQuery(ids))\n\t\tconst personIds = new Set(persons.map(it => it.identity_id))\n\t\tconst otherIdentityIds = ids.filter(it => !personIds.has(it))\n\t\tconst otherIdentities = await queryHandler.fetch(new IdentityQuery(otherIdentityIds))\n\n\t\treturn [\n\t\t\t...persons.map(\n\t\t\t\tit =>\n\t\t\t\t\tnew PersonIdentity(it.identity_id, {\n\t\t\t\t\t\tid: it.id,\n\t\t\t\t\t\tname: it.name ?? 'unnamed',\n\t\t\t\t\t}),\n\t\t\t),\n\t\t\t...otherIdentities.map(it => new ApiKeyIdentity(it.id, it.description)),\n\t\t]\n\t}\n}\n\nexport type Identity = PersonIdentity | ApiKeyIdentity\n\nexport class PersonIdentity {\n\tpublic readonly type = 'person' as const\n\n\tconstructor(\n\t\tpublic readonly identityId: string,\n\t\tpublic readonly person: {\n\t\t\tid: string\n\t\t\tname: string\n\t\t},\n\t) {}\n}\n\nexport class ApiKeyIdentity {\n\tpublic readonly type = 'apiKey' as const\n\n\tconstructor(public readonly identityId: string, public readonly description: string) {}\n}\n"],"names":["PersonByIdentityBatchQuery","IdentityQuery"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAGO,MAAM,gBAAgB;AAAA,EAC5B,YACS,QACP;AADO,SAAA,SAAA;AAAA,EAAA;AAAA,EAIT,MAAa,gBAAgB,KAAoC;AAC1D,UAAA,eAAe,KAAK,OAAO,mBAAmB;AACpD,UAAM,UAAU,MAAM,aAAa,MAAM,IAAIA,2BAAAA,2BAA2B,GAAG,CAAC;AACtE,UAAA,YAAY,IAAI,IAAI,QAAQ,IAAI,CAAM,OAAA,GAAG,WAAW,CAAC;AACrD,UAAA,mBAAmB,IAAI,OAAO,CAAA,OAAM,CAAC,UAAU,IAAI,EAAE,CAAC;AAC5D,UAAM,kBAAkB,MAAM,aAAa,MAAM,IAAIC,cAAAA,cAAc,gBAAgB,CAAC;AAE7E,WAAA;AAAA,MACN,GAAG,QAAQ;AAAA,QACV,CACC,OAAA,IAAI,eAAe,GAAG,aAAa;AAAA,UAClC,IAAI,GAAG;AAAA,UACP,MAAM,GAAG,QAAQ;AAAA,QACjB,CAAA;AAAA,MACH;AAAA,MACA,GAAG,gBAAgB,IAAI,CAAM,OAAA,IAAI,eAAe,GAAG,IAAI,GAAG,WAAW,CAAC;AAAA,IACvE;AAAA,EAAA;AAEF;AAIO,MAAM,eAAe;AAAA,EAG3B,YACiB,YACA,QAIf;AALe,SAAA,aAAA;AACA,SAAA,SAAA;AAJjB,kBAAA,MAAgB,QAAO,QAAA;AAAA,EAAA;AASxB;AAEO,MAAM,eAAe;AAAA,EAG3B,YAA4B,YAAoC,aAAqB;AAAzD,SAAA,aAAA;AAAoC,SAAA,cAAA;AAFhE,kBAAA,MAAgB,QAAO,QAAA;AAAA,EAAA;AAGxB;;;;"}
@@ -15,6 +15,7 @@ import "openid-client";
15
15
  import "@contember/typesafe";
16
16
  import "../../model/service/idp/providers/OIDCTypes.js";
17
17
  import "../../model/service/idp/providers/FacebookProvider.js";
18
+ import "../../model/service/AuthLogService.js";
18
19
  import "@contember/schema-utils";
19
20
  import "otpauth";
20
21
  var __defProp = Object.defineProperty;
@@ -1 +1 @@
1
- {"version":3,"file":"IdentityFetcher.js","sources":["../../../../../../packages/engine-tenant-api/src/bridges/system/IdentityFetcher.ts"],"sourcesContent":["import { Client } from '@contember/database'\nimport { IdentityQuery, PersonByIdentityBatchQuery } from '../../model'\n\nexport class IdentityFetcher {\n\tconstructor(\n\t\tprivate client: Client,\n\t) {\n\t}\n\n\tpublic async fetchIdentities(ids: string[]): Promise<Identity[]> {\n\t\tconst queryHandler = this.client.createQueryHandler()\n\t\tconst persons = await queryHandler.fetch(new PersonByIdentityBatchQuery(ids))\n\t\tconst personIds = new Set(persons.map(it => it.identity_id))\n\t\tconst otherIdentityIds = ids.filter(it => !personIds.has(it))\n\t\tconst otherIdentities = await queryHandler.fetch(new IdentityQuery(otherIdentityIds))\n\n\t\treturn [\n\t\t\t...persons.map(\n\t\t\t\tit =>\n\t\t\t\t\tnew PersonIdentity(it.identity_id, {\n\t\t\t\t\t\tid: it.id,\n\t\t\t\t\t\tname: it.name ?? 'unnamed',\n\t\t\t\t\t}),\n\t\t\t),\n\t\t\t...otherIdentities.map(it => new ApiKeyIdentity(it.id, it.description)),\n\t\t]\n\t}\n}\n\nexport type Identity = PersonIdentity | ApiKeyIdentity\n\nexport class PersonIdentity {\n\tpublic readonly type = 'person' as const\n\n\tconstructor(\n\t\tpublic readonly identityId: string,\n\t\tpublic readonly person: {\n\t\t\tid: string\n\t\t\tname: string\n\t\t},\n\t) {}\n}\n\nexport class ApiKeyIdentity {\n\tpublic readonly type = 'apiKey' as const\n\n\tconstructor(public readonly identityId: string, public readonly description: string) {}\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAGO,MAAM,gBAAgB;AAAA,EAC5B,YACS,QACP;AADO,SAAA,SAAA;AAAA,EAAA;AAAA,EAIT,MAAa,gBAAgB,KAAoC;AAC1D,UAAA,eAAe,KAAK,OAAO,mBAAmB;AACpD,UAAM,UAAU,MAAM,aAAa,MAAM,IAAI,2BAA2B,GAAG,CAAC;AACtE,UAAA,YAAY,IAAI,IAAI,QAAQ,IAAI,CAAM,OAAA,GAAG,WAAW,CAAC;AACrD,UAAA,mBAAmB,IAAI,OAAO,CAAA,OAAM,CAAC,UAAU,IAAI,EAAE,CAAC;AAC5D,UAAM,kBAAkB,MAAM,aAAa,MAAM,IAAI,cAAc,gBAAgB,CAAC;AAE7E,WAAA;AAAA,MACN,GAAG,QAAQ;AAAA,QACV,CACC,OAAA,IAAI,eAAe,GAAG,aAAa;AAAA,UAClC,IAAI,GAAG;AAAA,UACP,MAAM,GAAG,QAAQ;AAAA,QACjB,CAAA;AAAA,MACH;AAAA,MACA,GAAG,gBAAgB,IAAI,CAAM,OAAA,IAAI,eAAe,GAAG,IAAI,GAAG,WAAW,CAAC;AAAA,IACvE;AAAA,EAAA;AAEF;AAIO,MAAM,eAAe;AAAA,EAG3B,YACiB,YACA,QAIf;AALe,SAAA,aAAA;AACA,SAAA,SAAA;AAJjB,kBAAA,MAAgB,QAAO,QAAA;AAAA,EAAA;AASxB;AAEO,MAAM,eAAe;AAAA,EAG3B,YAA4B,YAAoC,aAAqB;AAAzD,SAAA,aAAA;AAAoC,SAAA,cAAA;AAFhE,kBAAA,MAAgB,QAAO,QAAA;AAAA,EAAA;AAGxB;"}
1
+ {"version":3,"file":"IdentityFetcher.js","sources":["../../../../../../packages/engine-tenant-api/src/bridges/system/IdentityFetcher.ts"],"sourcesContent":["import { Client } from '@contember/database'\nimport { IdentityQuery, PersonByIdentityBatchQuery } from '../../model'\n\nexport class IdentityFetcher {\n\tconstructor(\n\t\tprivate client: Client,\n\t) {\n\t}\n\n\tpublic async fetchIdentities(ids: string[]): Promise<Identity[]> {\n\t\tconst queryHandler = this.client.createQueryHandler()\n\t\tconst persons = await queryHandler.fetch(new PersonByIdentityBatchQuery(ids))\n\t\tconst personIds = new Set(persons.map(it => it.identity_id))\n\t\tconst otherIdentityIds = ids.filter(it => !personIds.has(it))\n\t\tconst otherIdentities = await queryHandler.fetch(new IdentityQuery(otherIdentityIds))\n\n\t\treturn [\n\t\t\t...persons.map(\n\t\t\t\tit =>\n\t\t\t\t\tnew PersonIdentity(it.identity_id, {\n\t\t\t\t\t\tid: it.id,\n\t\t\t\t\t\tname: it.name ?? 'unnamed',\n\t\t\t\t\t}),\n\t\t\t),\n\t\t\t...otherIdentities.map(it => new ApiKeyIdentity(it.id, it.description)),\n\t\t]\n\t}\n}\n\nexport type Identity = PersonIdentity | ApiKeyIdentity\n\nexport class PersonIdentity {\n\tpublic readonly type = 'person' as const\n\n\tconstructor(\n\t\tpublic readonly identityId: string,\n\t\tpublic readonly person: {\n\t\t\tid: string\n\t\t\tname: string\n\t\t},\n\t) {}\n}\n\nexport class ApiKeyIdentity {\n\tpublic readonly type = 'apiKey' as const\n\n\tconstructor(public readonly identityId: string, public readonly description: string) {}\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAGO,MAAM,gBAAgB;AAAA,EAC5B,YACS,QACP;AADO,SAAA,SAAA;AAAA,EAAA;AAAA,EAIT,MAAa,gBAAgB,KAAoC;AAC1D,UAAA,eAAe,KAAK,OAAO,mBAAmB;AACpD,UAAM,UAAU,MAAM,aAAa,MAAM,IAAI,2BAA2B,GAAG,CAAC;AACtE,UAAA,YAAY,IAAI,IAAI,QAAQ,IAAI,CAAM,OAAA,GAAG,WAAW,CAAC;AACrD,UAAA,mBAAmB,IAAI,OAAO,CAAA,OAAM,CAAC,UAAU,IAAI,EAAE,CAAC;AAC5D,UAAM,kBAAkB,MAAM,aAAa,MAAM,IAAI,cAAc,gBAAgB,CAAC;AAE7E,WAAA;AAAA,MACN,GAAG,QAAQ;AAAA,QACV,CACC,OAAA,IAAI,eAAe,GAAG,aAAa;AAAA,UAClC,IAAI,GAAG;AAAA,UACP,MAAM,GAAG,QAAQ;AAAA,QACjB,CAAA;AAAA,MACH;AAAA,MACA,GAAG,gBAAgB,IAAI,CAAM,OAAA,IAAI,eAAe,GAAG,IAAI,GAAG,WAAW,CAAC;AAAA,IACvE;AAAA,EAAA;AAEF;AAIO,MAAM,eAAe;AAAA,EAG3B,YACiB,YACA,QAIf;AALe,SAAA,aAAA;AACA,SAAA,SAAA;AAJjB,kBAAA,MAAgB,QAAO,QAAA;AAAA,EAAA;AASxB;AAEO,MAAM,eAAe;AAAA,EAG3B,YAA4B,YAAoC,aAAqB;AAAzD,SAAA,aAAA;AAAoC,SAAA,cAAA;AAFhE,kBAAA,MAAgB,QAAO,QAAA;AAAA,EAAA;AAGxB;"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ const sql = `
3
+ ALTER TABLE "config"
4
+ ADD COLUMN "password_min_length" INTEGER NOT NULL DEFAULT 8,
5
+ ADD COLUMN "password_require_uppercase" INTEGER NOT NULL DEFAULT 1,
6
+ ADD COLUMN "password_require_lowercase" INTEGER NOT NULL DEFAULT 1,
7
+ ADD COLUMN "password_require_digit" INTEGER NOT NULL DEFAULT 1,
8
+ ADD COLUMN "password_require_special" INTEGER NOT NULL DEFAULT 0,
9
+ ADD COLUMN "password_pattern" TEXT DEFAULT NULL,
10
+ ADD COLUMN "password_check_blacklist" BOOLEAN NOT NULL DEFAULT TRUE,
11
+ ADD COLUMN "login_base_backoff" INTERVAL NOT NULL DEFAULT '1 second',
12
+ ADD COLUMN "login_max_backoff" INTERVAL NOT NULL DEFAULT '60 second',
13
+ ADD COLUMN "login_attempt_window" INTERVAL NOT NULL DEFAULT '5 minute',
14
+ ADD COLUMN "login_reveal_user_exits" BOOLEAN NOT NULL DEFAULT TRUE,
15
+ ADD COLUMN "login_default_token_expiration" INTERVAL NOT NULL DEFAULT '30 minute',
16
+ ADD COLUMN "login_max_token_expiration" INTERVAL DEFAULT '6 month';
17
+ ALTER TABLE "config"
18
+ RENAME passwordless_expiration_minutes TO passwordless_expiration;
19
+
20
+ ALTER TABLE "config"
21
+ ALTER COLUMN passwordless_expiration DROP DEFAULT,
22
+ ALTER COLUMN passwordless_expiration TYPE INTERVAL USING passwordless_expiration * INTERVAL '1 minute',
23
+ ALTER COLUMN passwordless_expiration SET DEFAULT INTERVAL '5 minute';
24
+
25
+ -- revert defaults for existing projects
26
+ UPDATE "config"
27
+ SET password_min_length = 6,
28
+ password_require_uppercase = 0,
29
+ password_require_lowercase = 0,
30
+ password_require_digit = 0,
31
+ password_check_blacklist = FALSE,
32
+ login_max_token_expiration = NULL;
33
+
34
+ `;
35
+ async function _20250416180000configup(builder) {
36
+ builder.sql(sql);
37
+ }
38
+ module.exports = _20250416180000configup;
39
+ //# sourceMappingURL=2025-04-16-180000-config-up.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"2025-04-16-180000-config-up.cjs","sources":["../../../../../packages/engine-tenant-api/src/migrations/2025-04-16-180000-config-up.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\n\nconst sql = `\n ALTER TABLE \"config\"\n ADD COLUMN \"password_min_length\" INTEGER NOT NULL DEFAULT 8,\n ADD COLUMN \"password_require_uppercase\" INTEGER NOT NULL DEFAULT 1,\n ADD COLUMN \"password_require_lowercase\" INTEGER NOT NULL DEFAULT 1,\n ADD COLUMN \"password_require_digit\" INTEGER NOT NULL DEFAULT 1,\n ADD COLUMN \"password_require_special\" INTEGER NOT NULL DEFAULT 0,\n ADD COLUMN \"password_pattern\" TEXT DEFAULT NULL,\n ADD COLUMN \"password_check_blacklist\" BOOLEAN NOT NULL DEFAULT TRUE,\n ADD COLUMN \"login_base_backoff\" INTERVAL NOT NULL DEFAULT '1 second',\n ADD COLUMN \"login_max_backoff\" INTERVAL NOT NULL DEFAULT '60 second',\n ADD COLUMN \"login_attempt_window\" INTERVAL NOT NULL DEFAULT '5 minute',\n ADD COLUMN \"login_reveal_user_exits\" BOOLEAN NOT NULL DEFAULT TRUE,\n ADD COLUMN \"login_default_token_expiration\" INTERVAL NOT NULL DEFAULT '30 minute',\n ADD COLUMN \"login_max_token_expiration\" INTERVAL DEFAULT '6 month';\n ALTER TABLE \"config\"\n RENAME passwordless_expiration_minutes TO passwordless_expiration;\n\n ALTER TABLE \"config\"\n ALTER COLUMN passwordless_expiration DROP DEFAULT,\n ALTER COLUMN passwordless_expiration TYPE INTERVAL USING passwordless_expiration * INTERVAL '1 minute',\n ALTER COLUMN passwordless_expiration SET DEFAULT INTERVAL '5 minute';\n\n-- revert defaults for existing projects\n UPDATE \"config\"\n SET password_min_length = 6,\n password_require_uppercase = 0,\n password_require_lowercase = 0,\n password_require_digit = 0,\n password_check_blacklist = FALSE,\n login_max_token_expiration = NULL;\n\n`\n\nexport default async function (builder: MigrationBuilder) {\n\tbuilder.sql(sql)\n}\n"],"names":[],"mappings":";AAEA,MAAM,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkCZ,eAAA,wBAA+B,SAA2B;AACzD,UAAQ,IAAI,GAAG;AAChB;;"}
@@ -0,0 +1,40 @@
1
+ const sql = `
2
+ ALTER TABLE "config"
3
+ ADD COLUMN "password_min_length" INTEGER NOT NULL DEFAULT 8,
4
+ ADD COLUMN "password_require_uppercase" INTEGER NOT NULL DEFAULT 1,
5
+ ADD COLUMN "password_require_lowercase" INTEGER NOT NULL DEFAULT 1,
6
+ ADD COLUMN "password_require_digit" INTEGER NOT NULL DEFAULT 1,
7
+ ADD COLUMN "password_require_special" INTEGER NOT NULL DEFAULT 0,
8
+ ADD COLUMN "password_pattern" TEXT DEFAULT NULL,
9
+ ADD COLUMN "password_check_blacklist" BOOLEAN NOT NULL DEFAULT TRUE,
10
+ ADD COLUMN "login_base_backoff" INTERVAL NOT NULL DEFAULT '1 second',
11
+ ADD COLUMN "login_max_backoff" INTERVAL NOT NULL DEFAULT '60 second',
12
+ ADD COLUMN "login_attempt_window" INTERVAL NOT NULL DEFAULT '5 minute',
13
+ ADD COLUMN "login_reveal_user_exits" BOOLEAN NOT NULL DEFAULT TRUE,
14
+ ADD COLUMN "login_default_token_expiration" INTERVAL NOT NULL DEFAULT '30 minute',
15
+ ADD COLUMN "login_max_token_expiration" INTERVAL DEFAULT '6 month';
16
+ ALTER TABLE "config"
17
+ RENAME passwordless_expiration_minutes TO passwordless_expiration;
18
+
19
+ ALTER TABLE "config"
20
+ ALTER COLUMN passwordless_expiration DROP DEFAULT,
21
+ ALTER COLUMN passwordless_expiration TYPE INTERVAL USING passwordless_expiration * INTERVAL '1 minute',
22
+ ALTER COLUMN passwordless_expiration SET DEFAULT INTERVAL '5 minute';
23
+
24
+ -- revert defaults for existing projects
25
+ UPDATE "config"
26
+ SET password_min_length = 6,
27
+ password_require_uppercase = 0,
28
+ password_require_lowercase = 0,
29
+ password_require_digit = 0,
30
+ password_check_blacklist = FALSE,
31
+ login_max_token_expiration = NULL;
32
+
33
+ `;
34
+ async function _20250416180000configup(builder) {
35
+ builder.sql(sql);
36
+ }
37
+ export {
38
+ _20250416180000configup as default
39
+ };
40
+ //# sourceMappingURL=2025-04-16-180000-config-up.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"2025-04-16-180000-config-up.js","sources":["../../../../../packages/engine-tenant-api/src/migrations/2025-04-16-180000-config-up.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\n\nconst sql = `\n ALTER TABLE \"config\"\n ADD COLUMN \"password_min_length\" INTEGER NOT NULL DEFAULT 8,\n ADD COLUMN \"password_require_uppercase\" INTEGER NOT NULL DEFAULT 1,\n ADD COLUMN \"password_require_lowercase\" INTEGER NOT NULL DEFAULT 1,\n ADD COLUMN \"password_require_digit\" INTEGER NOT NULL DEFAULT 1,\n ADD COLUMN \"password_require_special\" INTEGER NOT NULL DEFAULT 0,\n ADD COLUMN \"password_pattern\" TEXT DEFAULT NULL,\n ADD COLUMN \"password_check_blacklist\" BOOLEAN NOT NULL DEFAULT TRUE,\n ADD COLUMN \"login_base_backoff\" INTERVAL NOT NULL DEFAULT '1 second',\n ADD COLUMN \"login_max_backoff\" INTERVAL NOT NULL DEFAULT '60 second',\n ADD COLUMN \"login_attempt_window\" INTERVAL NOT NULL DEFAULT '5 minute',\n ADD COLUMN \"login_reveal_user_exits\" BOOLEAN NOT NULL DEFAULT TRUE,\n ADD COLUMN \"login_default_token_expiration\" INTERVAL NOT NULL DEFAULT '30 minute',\n ADD COLUMN \"login_max_token_expiration\" INTERVAL DEFAULT '6 month';\n ALTER TABLE \"config\"\n RENAME passwordless_expiration_minutes TO passwordless_expiration;\n\n ALTER TABLE \"config\"\n ALTER COLUMN passwordless_expiration DROP DEFAULT,\n ALTER COLUMN passwordless_expiration TYPE INTERVAL USING passwordless_expiration * INTERVAL '1 minute',\n ALTER COLUMN passwordless_expiration SET DEFAULT INTERVAL '5 minute';\n\n-- revert defaults for existing projects\n UPDATE \"config\"\n SET password_min_length = 6,\n password_require_uppercase = 0,\n password_require_lowercase = 0,\n password_require_digit = 0,\n password_check_blacklist = FALSE,\n login_max_token_expiration = NULL;\n\n`\n\nexport default async function (builder: MigrationBuilder) {\n\tbuilder.sql(sql)\n}\n"],"names":[],"mappings":"AAEA,MAAM,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkCZ,eAAA,wBAA+B,SAA2B;AACzD,UAAQ,IAAI,GAAG;AAChB;"}