@baseplate-dev/plugin-auth 0.6.18 → 0.6.19

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 (209) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/better-auth/admin/generators/admin-crud-manage-roles-action/admin-crud-manage-roles-action.generator.d.ts +62 -0
  3. package/dist/better-auth/admin/generators/admin-crud-manage-roles-action/generated/index.d.ts +62 -0
  4. package/dist/better-auth/admin/generators/admin-crud-manage-roles-action/generated/template-renderers.d.ts +31 -0
  5. package/dist/better-auth/admin/generators/admin-crud-manage-roles-action/generated/typed-templates.d.ts +31 -0
  6. package/dist/better-auth/admin/generators/admin-crud-manage-roles-action/templates/routes/-components/role-manager-dialog.js +1 -2
  7. package/dist/better-auth/admin/generators/admin-crud-manage-roles-action/templates/routes/-components/role-manager-dialog.tsx +1 -1
  8. package/dist/better-auth/admin/generators/admin-crud-reset-password-action/admin-crud-reset-password-action.generator.d.ts +62 -0
  9. package/dist/better-auth/admin/generators/admin-crud-reset-password-action/generated/index.d.ts +62 -0
  10. package/dist/better-auth/admin/generators/admin-crud-reset-password-action/generated/template-renderers.d.ts +31 -0
  11. package/dist/better-auth/admin/generators/admin-crud-reset-password-action/generated/typed-templates.d.ts +62 -0
  12. package/dist/better-auth/admin/generators/admin-crud-reset-password-action/templates/routes/-components/password-reset-dialog.js +1 -2
  13. package/dist/better-auth/admin/generators/admin-crud-reset-password-action/templates/routes/-components/password-reset-dialog.tsx +1 -1
  14. package/dist/better-auth/admin/generators/admin-crud-roles-column/admin-crud-roles-column.generator.d.ts +31 -0
  15. package/dist/better-auth/core/node.js +7 -8
  16. package/dist/better-auth/generators/fastify/better-auth-admin-module/generated/index.d.ts +1 -0
  17. package/dist/better-auth/generators/fastify/better-auth-admin-module/generated/ts-import-providers.d.ts +1 -0
  18. package/dist/better-auth/generators/fastify/better-auth-admin-module/generated/ts-import-providers.js +1 -0
  19. package/dist/better-auth/generators/fastify/better-auth-module/better-auth-module.generator.d.ts +20 -3
  20. package/dist/better-auth/generators/fastify/better-auth-module/better-auth-module.generator.js +5 -24
  21. package/dist/better-auth/generators/fastify/better-auth-module/generated/index.d.ts +40 -2
  22. package/dist/better-auth/generators/fastify/better-auth-module/generated/template-renderers.d.ts +19 -1
  23. package/dist/better-auth/generators/fastify/better-auth-module/generated/template-renderers.js +6 -2
  24. package/dist/better-auth/generators/fastify/better-auth-module/generated/ts-import-providers.d.ts +1 -0
  25. package/dist/better-auth/generators/fastify/better-auth-module/generated/ts-import-providers.js +1 -0
  26. package/dist/better-auth/generators/fastify/better-auth-module/generated/typed-templates.d.ts +20 -1
  27. package/dist/better-auth/generators/fastify/better-auth-module/generated/typed-templates.js +4 -1
  28. package/dist/better-auth/generators/fastify/better-auth-module/templates/module/services/auth.ts +16 -8
  29. package/dist/better-auth/generators/react/better-auth-hooks/better-auth-hooks.generator.d.ts +1 -1
  30. package/dist/better-auth/generators/react/better-auth-hooks/generated/index.d.ts +5 -4
  31. package/dist/better-auth/generators/react/better-auth-hooks/generated/template-paths.d.ts +1 -1
  32. package/dist/better-auth/generators/react/better-auth-hooks/generated/template-paths.js +1 -1
  33. package/dist/better-auth/generators/react/better-auth-hooks/generated/ts-import-providers.d.ts +2 -1
  34. package/dist/better-auth/generators/react/better-auth-hooks/generated/ts-import-providers.js +2 -1
  35. package/dist/better-auth/generators/react/better-auth-hooks/generated/typed-templates.d.ts +6 -6
  36. package/dist/better-auth/generators/react/better-auth-hooks/generated/typed-templates.js +13 -13
  37. package/dist/better-auth/generators/react/better-auth-hooks/templates/src/hooks/{use-required-user-id.ts → use-user-id-or-throw.ts} +1 -1
  38. package/dist/better-auth/generators/react/better-auth-pages/better-auth-pages.generator.d.ts +31 -0
  39. package/dist/better-auth/generators/react/better-auth-pages/generated/index.d.ts +186 -0
  40. package/dist/better-auth/generators/react/better-auth-pages/generated/template-renderers.d.ts +31 -0
  41. package/dist/better-auth/generators/react/better-auth-pages/generated/typed-templates.d.ts +310 -0
  42. package/dist/better-auth/generators/react/better-auth-pages/templates/routes/forgot-password.tsx +1 -4
  43. package/dist/better-auth/generators/react/react-better-auth/generated/index.d.ts +65 -2
  44. package/dist/better-auth/generators/react/react-better-auth/generated/template-renderers.d.ts +32 -1
  45. package/dist/better-auth/generators/react/react-better-auth/generated/ts-import-providers.d.ts +1 -0
  46. package/dist/better-auth/generators/react/react-better-auth/generated/ts-import-providers.js +1 -0
  47. package/dist/better-auth/generators/react/react-better-auth/generated/typed-templates.d.ts +32 -1
  48. package/dist/better-auth/generators/react/react-better-auth/react-better-auth.generator.d.ts +32 -1
  49. package/dist/better-auth/generators/react/react-better-auth/templates/src/app/auth-loaded-gate.tsx +12 -3
  50. package/dist/local-auth/admin/generators/admin-crud-invite-user-action/admin-crud-invite-user-action.generator.d.ts +62 -0
  51. package/dist/local-auth/admin/generators/admin-crud-invite-user-action/generated/index.d.ts +62 -0
  52. package/dist/local-auth/admin/generators/admin-crud-invite-user-action/generated/template-renderers.d.ts +31 -0
  53. package/dist/local-auth/admin/generators/admin-crud-invite-user-action/generated/typed-templates.d.ts +31 -0
  54. package/dist/local-auth/admin/generators/admin-crud-invite-user-action/templates/routes/-components/invite-user-dialog.js +1 -2
  55. package/dist/local-auth/admin/generators/admin-crud-invite-user-action/templates/routes/-components/invite-user-dialog.tsx +1 -1
  56. package/dist/local-auth/admin/generators/admin-crud-manage-roles-action/admin-crud-manage-roles-action.generator.d.ts +62 -0
  57. package/dist/local-auth/admin/generators/admin-crud-manage-roles-action/generated/index.d.ts +62 -0
  58. package/dist/local-auth/admin/generators/admin-crud-manage-roles-action/generated/template-renderers.d.ts +31 -0
  59. package/dist/local-auth/admin/generators/admin-crud-manage-roles-action/generated/typed-templates.d.ts +31 -0
  60. package/dist/local-auth/admin/generators/admin-crud-manage-roles-action/templates/routes/-components/role-manager-dialog.js +1 -2
  61. package/dist/local-auth/admin/generators/admin-crud-manage-roles-action/templates/routes/-components/role-manager-dialog.tsx +1 -1
  62. package/dist/local-auth/admin/generators/admin-crud-reset-password-action/admin-crud-reset-password-action.generator.d.ts +62 -0
  63. package/dist/local-auth/admin/generators/admin-crud-reset-password-action/generated/index.d.ts +62 -0
  64. package/dist/local-auth/admin/generators/admin-crud-reset-password-action/generated/template-renderers.d.ts +31 -0
  65. package/dist/local-auth/admin/generators/admin-crud-reset-password-action/generated/typed-templates.d.ts +62 -0
  66. package/dist/local-auth/admin/generators/admin-crud-reset-password-action/templates/routes/-components/password-reset-dialog.js +1 -2
  67. package/dist/local-auth/admin/generators/admin-crud-reset-password-action/templates/routes/-components/password-reset-dialog.tsx +1 -1
  68. package/dist/local-auth/admin/generators/admin-crud-roles-column/admin-crud-roles-column.generator.d.ts +31 -0
  69. package/dist/local-auth/core/generators/auth-email-password/auth-email-password.generator.d.ts +10 -7
  70. package/dist/local-auth/core/generators/auth-email-password/auth-email-password.generator.js +8 -11
  71. package/dist/local-auth/core/generators/auth-email-password/generated/index.d.ts +40 -13
  72. package/dist/local-auth/core/generators/auth-email-password/generated/template-renderers.d.ts +9 -0
  73. package/dist/local-auth/core/generators/auth-email-password/generated/template-renderers.js +6 -5
  74. package/dist/local-auth/core/generators/auth-email-password/generated/ts-import-providers.d.ts +1 -3
  75. package/dist/local-auth/core/generators/auth-email-password/generated/ts-import-providers.js +1 -2
  76. package/dist/local-auth/core/generators/auth-email-password/generated/typed-templates.d.ts +40 -16
  77. package/dist/local-auth/core/generators/auth-email-password/generated/typed-templates.js +11 -8
  78. package/dist/local-auth/core/generators/auth-email-password/templates/module/services/email-verification.service.js +2 -3
  79. package/dist/local-auth/core/generators/auth-email-password/templates/module/services/email-verification.service.ts +5 -3
  80. package/dist/local-auth/core/generators/auth-email-password/templates/module/services/invite.service.js +17 -13
  81. package/dist/local-auth/core/generators/auth-email-password/templates/module/services/invite.service.ts +25 -13
  82. package/dist/local-auth/core/generators/auth-email-password/templates/module/services/password-reset.service.js +2 -3
  83. package/dist/local-auth/core/generators/auth-email-password/templates/module/services/password-reset.service.ts +5 -3
  84. package/dist/local-auth/core/generators/auth-hooks/auth-hooks.generator.d.ts +272 -1
  85. package/dist/local-auth/core/generators/auth-hooks/generated/index.d.ts +547 -4
  86. package/dist/local-auth/core/generators/auth-hooks/generated/template-paths.d.ts +1 -1
  87. package/dist/local-auth/core/generators/auth-hooks/generated/template-paths.js +1 -1
  88. package/dist/local-auth/core/generators/auth-hooks/generated/template-renderers.d.ts +271 -0
  89. package/dist/local-auth/core/generators/auth-hooks/generated/template-renderers.js +4 -2
  90. package/dist/local-auth/core/generators/auth-hooks/generated/ts-import-providers.d.ts +2 -1
  91. package/dist/local-auth/core/generators/auth-hooks/generated/ts-import-providers.js +2 -1
  92. package/dist/local-auth/core/generators/auth-hooks/generated/typed-templates.d.ts +548 -6
  93. package/dist/local-auth/core/generators/auth-hooks/generated/typed-templates.js +15 -14
  94. package/dist/local-auth/core/generators/auth-hooks/templates/src/hooks/use-log-out.js +1 -1
  95. package/dist/local-auth/core/generators/auth-hooks/templates/src/hooks/use-log-out.ts +1 -1
  96. package/dist/local-auth/core/generators/auth-hooks/templates/src/hooks/use-session.d.ts +7 -0
  97. package/dist/local-auth/core/generators/auth-hooks/templates/src/hooks/use-session.ts +7 -0
  98. package/dist/local-auth/core/generators/auth-module/auth-module.generator.d.ts +19 -7
  99. package/dist/local-auth/core/generators/auth-module/auth-module.generator.js +3 -26
  100. package/dist/local-auth/core/generators/auth-module/generated/index.d.ts +48 -7
  101. package/dist/local-auth/core/generators/auth-module/generated/template-paths.d.ts +0 -1
  102. package/dist/local-auth/core/generators/auth-module/generated/template-paths.js +0 -1
  103. package/dist/local-auth/core/generators/auth-module/generated/template-renderers.d.ts +19 -1
  104. package/dist/local-auth/core/generators/auth-module/generated/template-renderers.js +7 -3
  105. package/dist/local-auth/core/generators/auth-module/generated/ts-import-providers.d.ts +1 -0
  106. package/dist/local-auth/core/generators/auth-module/generated/ts-import-providers.js +1 -0
  107. package/dist/local-auth/core/generators/auth-module/generated/typed-templates.d.ts +28 -7
  108. package/dist/local-auth/core/generators/auth-module/generated/typed-templates.js +5 -14
  109. package/dist/local-auth/core/generators/auth-module/templates/module/services/code-verification.service.d.ts +7 -6
  110. package/dist/local-auth/core/generators/auth-module/templates/module/services/code-verification.service.js +23 -17
  111. package/dist/local-auth/core/generators/auth-module/templates/module/services/code-verification.service.ts +25 -18
  112. package/dist/local-auth/core/generators/auth-module/templates/module/services/user-session.service.js +8 -9
  113. package/dist/local-auth/core/generators/auth-module/templates/module/services/user-session.service.ts +10 -11
  114. package/dist/local-auth/core/generators/auth-routes/auth-routes.generator.d.ts +31 -0
  115. package/dist/local-auth/core/generators/auth-routes/generated/index.d.ts +249 -0
  116. package/dist/local-auth/core/generators/auth-routes/generated/template-renderers.d.ts +31 -0
  117. package/dist/local-auth/core/generators/auth-routes/generated/ts-import-providers.d.ts +1 -0
  118. package/dist/local-auth/core/generators/auth-routes/generated/ts-import-providers.js +1 -0
  119. package/dist/local-auth/core/generators/auth-routes/generated/typed-templates.d.ts +310 -0
  120. package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/accept-invite.js +12 -5
  121. package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/accept-invite.tsx +14 -4
  122. package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/forgot-password.js +1 -2
  123. package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/forgot-password.tsx +1 -1
  124. package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/login-otp.js +4 -4
  125. package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/login-otp.tsx +4 -3
  126. package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/login.js +4 -4
  127. package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/login.tsx +4 -3
  128. package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/register.js +4 -4
  129. package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/register.tsx +4 -3
  130. package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/reset-password.js +1 -2
  131. package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/reset-password.tsx +1 -1
  132. package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/verify-email.js +1 -2
  133. package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/verify-email.tsx +1 -1
  134. package/dist/local-auth/core/generators/react-session/generated/index.d.ts +78 -7
  135. package/dist/local-auth/core/generators/react-session/generated/template-renderers.d.ts +32 -1
  136. package/dist/local-auth/core/generators/react-session/generated/ts-import-providers.d.ts +1 -0
  137. package/dist/local-auth/core/generators/react-session/generated/ts-import-providers.js +1 -0
  138. package/dist/local-auth/core/generators/react-session/generated/typed-templates.d.ts +90 -12
  139. package/dist/local-auth/core/generators/react-session/generated/typed-templates.js +5 -2
  140. package/dist/local-auth/core/generators/react-session/react-session.generator.d.ts +48 -1
  141. package/dist/local-auth/core/generators/react-session/react-session.generator.js +35 -1
  142. package/dist/local-auth/core/generators/react-session/templates/src/app/user-session-provider.js +17 -44
  143. package/dist/local-auth/core/generators/react-session/templates/src/app/user-session-provider.tsx +21 -49
  144. package/dist/local-auth/core/generators/react-session/templates/src/services/user-session-client.d.ts +43 -34
  145. package/dist/local-auth/core/generators/react-session/templates/src/services/user-session-client.js +96 -80
  146. package/dist/local-auth/core/generators/react-session/templates/src/services/user-session-client.ts +148 -82
  147. package/dist/local-auth/core/generators/seed-initial-user/generated/index.d.ts +0 -2
  148. package/dist/local-auth/core/generators/seed-initial-user/generated/template-renderers.d.ts +0 -1
  149. package/dist/local-auth/core/generators/seed-initial-user/generated/typed-templates.d.ts +0 -1
  150. package/dist/local-auth/core/generators/seed-initial-user/seed-initial-user.generator.d.ts +0 -1
  151. package/dist/local-auth/core/node.js +7 -7
  152. package/dist/placeholder-auth/core/generators/placeholder-auth-hooks/generated/index.d.ts +4 -3
  153. package/dist/placeholder-auth/core/generators/placeholder-auth-hooks/generated/template-paths.d.ts +1 -1
  154. package/dist/placeholder-auth/core/generators/placeholder-auth-hooks/generated/template-paths.js +1 -1
  155. package/dist/placeholder-auth/core/generators/placeholder-auth-hooks/generated/ts-import-providers.d.ts +2 -1
  156. package/dist/placeholder-auth/core/generators/placeholder-auth-hooks/generated/ts-import-providers.js +2 -1
  157. package/dist/placeholder-auth/core/generators/placeholder-auth-hooks/generated/typed-templates.d.ts +4 -4
  158. package/dist/placeholder-auth/core/generators/placeholder-auth-hooks/generated/typed-templates.js +13 -13
  159. package/dist/placeholder-auth/core/generators/placeholder-auth-hooks/placeholder-auth-hooks.generator.d.ts +1 -1
  160. package/dist/placeholder-auth/core/generators/placeholder-auth-hooks/templates/src/hooks/use-session.d.ts +1 -0
  161. package/dist/placeholder-auth/core/generators/placeholder-auth-hooks/templates/src/hooks/use-session.ts +2 -0
  162. package/dist/placeholder-auth/core/generators/placeholder-auth-module/generated/index.d.ts +1 -2
  163. package/dist/placeholder-auth/core/generators/placeholder-auth-module/generated/template-renderers.d.ts +0 -1
  164. package/dist/placeholder-auth/core/generators/placeholder-auth-module/generated/ts-import-providers.d.ts +1 -0
  165. package/dist/placeholder-auth/core/generators/placeholder-auth-module/generated/ts-import-providers.js +1 -0
  166. package/dist/placeholder-auth/core/generators/placeholder-auth-module/generated/typed-templates.d.ts +0 -1
  167. package/dist/placeholder-auth/core/generators/placeholder-auth-module/placeholder-auth-module.generator.d.ts +0 -1
  168. package/dist/web/assets/{_virtual_mf-localSharedImportMap___mfe_internal__plugin_mf_2_auth__mf_owner__1-CKKmnLep.js → _virtual_mf-localSharedImportMap___mfe_internal__plugin_mf_2_auth__mf_owner__1-DUupKqD4.js} +14 -14
  169. package/dist/web/assets/{_virtual_mf___mfe_internal__plugin_mf_2_auth__mf_owner__1__loadShare___mf_0_baseplate_mf_2_dev_mf_1_project_mf_2_builder_mf_2_lib__loadShare__.js-Cx7TvZ_H.js → _virtual_mf___mfe_internal__plugin_mf_2_auth__mf_owner__1__loadShare___mf_0_baseplate_mf_2_dev_mf_1_project_mf_2_builder_mf_2_lib__loadShare__.js-DE4rTqEA.js} +198 -66
  170. package/dist/web/assets/{_virtual_mf___mfe_internal__plugin_mf_2_auth__mf_owner__1__loadShare___mf_0_baseplate_mf_2_dev_mf_1_project_mf_2_builder_mf_2_lib_mf_1_web__loadShare__.js-D3Nvasea.js → _virtual_mf___mfe_internal__plugin_mf_2_auth__mf_owner__1__loadShare___mf_0_baseplate_mf_2_dev_mf_1_project_mf_2_builder_mf_2_lib_mf_1_web__loadShare__.js-mszeXpf-.js} +1 -1
  171. package/dist/web/assets/{_virtual_mf___mfe_internal__plugin_mf_2_auth__mf_owner__1__loadShare___mf_0_baseplate_mf_2_dev_mf_1_ui_mf_2_components__loadShare__.js-C2GDE8Py.js → _virtual_mf___mfe_internal__plugin_mf_2_auth__mf_owner__1__loadShare___mf_0_baseplate_mf_2_dev_mf_1_ui_mf_2_components__loadShare__.js-CtIleM_e.js} +2517 -1545
  172. package/dist/web/assets/{_virtual_mf___mfe_internal__plugin_mf_2_auth__mf_owner__1__loadShare___mf_0_tanstack_mf_1_react_mf_2_router__loadShare__.js-CiccpWjh.js → _virtual_mf___mfe_internal__plugin_mf_2_auth__mf_owner__1__loadShare___mf_0_tanstack_mf_1_react_mf_2_router__loadShare__.js-BckLhSjF.js} +2 -2
  173. package/dist/web/assets/auth-DR6QxrAW.js +1 -0
  174. package/dist/web/assets/{common-CoLuMS7U.js → common-BsyRiQi3.js} +6 -6
  175. package/dist/web/assets/{common-N3skPbzk.js → common-CRwNlCMn.js} +10 -10
  176. package/dist/web/assets/{common-Co5lW_TK.js → common-CvqlRZC9.js} +12 -12
  177. package/dist/web/assets/{common-C8_sC5pp.js → common-D3atSs7O.js} +15 -15
  178. package/dist/web/assets/common-DuFyXa6l.js +36 -0
  179. package/dist/web/assets/common-islduJTj.js +43 -0
  180. package/dist/web/assets/{get-auth-plugin-definition-DyokUVjX.js → get-auth-plugin-definition-BgWWHl_Y.js} +3 -3
  181. package/dist/web/assets/{hostInit-BCYmw0H5.js → hostInit-DNA4kLRY.js} +1 -1
  182. package/dist/web/assets/{mf-entry-bootstrap-0-3ede9334.js → mf-entry-bootstrap-0-ea77c09b.js} +1 -1
  183. package/dist/web/assets/{mf-entry-bootstrap-1-3da85eea.js → mf-entry-bootstrap-1-9dee3d8d.js} +2 -2
  184. package/dist/web/assets/{mf-entry-bootstrap-2-32e24e11.js → mf-entry-bootstrap-2-3179040b.js} +1 -1
  185. package/dist/web/assets/{mf-entry-bootstrap-3-a3cfea9d.js → mf-entry-bootstrap-3-370d200d.js} +2 -2
  186. package/dist/web/assets/{models-BcPOQC5p.js → models-BOeSYfRn.js} +4 -4
  187. package/dist/web/assets/{models-BcUgOGGn.js → models-DF6DoXt6.js} +4 -4
  188. package/dist/web/assets/{plugin-definition-D1EImXIf.js → plugin-definition--k0VAeK3.js} +9 -9
  189. package/dist/web/assets/{plugin-definition-lw-gB4hU.js → plugin-definition-CMwSlxsJ.js} +3 -3
  190. package/dist/web/assets/{styles-EOyEbGA4.js → styles-BQEcQHoR.js} +8 -8
  191. package/dist/web/assets/{virtualExposes-DWORnjyA.js → virtualExposes-C7fDiAmS.js} +1 -1
  192. package/dist/web/assets/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__plugin-auth__remoteEntry_js-t-KnBiUh.js → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__plugin-auth__remoteEntry_js-BZBRyml2.js} +3 -3
  193. package/dist/web/assets/{virtual_mf-exposes___mfe_internal__plugin-auth__remoteEntry_js-DZfE3QCR.js → virtual_mf-exposes___mfe_internal__plugin-auth__remoteEntry_js-6SjVUCs8.js} +13 -13
  194. package/dist/web/assets/{web-kaD9AzNS.js → web-8wz0ad-V.js} +8 -8
  195. package/dist/web/assets/{web-EDeSquSP.js → web-BGixH_gT.js} +19 -19
  196. package/dist/web/assets/{web-PqAcfBSy.js → web-BxIwkN3O.js} +7 -7
  197. package/dist/web/assets/{web-CBVepebK.js → web-CQMfABjr.js} +19 -19
  198. package/dist/web/assets/{web-RhChfBw_.js → web-CcNpItSu.js} +17 -17
  199. package/dist/web/assets/{web-xJ-GnSkC.js → web-CypPeiVv.js} +25 -25
  200. package/dist/web/assets/{web-Dgb85jhs.js → web-CzK_la2_.js} +41 -41
  201. package/dist/web/index.html +4 -4
  202. package/dist/web/remoteEntry.js +1 -1
  203. package/package.json +12 -12
  204. package/dist/local-auth/core/generators/auth-module/templates/module/utils/cookie-signer.d.ts +0 -38
  205. package/dist/local-auth/core/generators/auth-module/templates/module/utils/cookie-signer.js +0 -71
  206. package/dist/local-auth/core/generators/auth-module/templates/module/utils/cookie-signer.ts +0 -77
  207. package/dist/web/assets/auth-CsHp2bQi.js +0 -1
  208. package/dist/web/assets/common-BGTuTgx7.js +0 -43
  209. package/dist/web/assets/common-Dueu_1NG.js +0 -36
@@ -1,9 +1,9 @@
1
1
  export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_GENERATED: {
2
2
  imports: {
3
+ generatorName: string;
3
4
  task: import("@baseplate-dev/sync").GeneratorTask<{
4
5
  authEmailPasswordImports: import("@baseplate-dev/sync").ProviderExport<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
5
6
  authenticateUserWithEmailAndPassword: {};
6
- cleanupExpiredPasswordResetTokens: {};
7
7
  completePasswordReset: {};
8
8
  createUserWithEmailAndPassword: {};
9
9
  PASSWORD_MAX_LENGTH: {};
@@ -30,6 +30,15 @@ export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_GENERATED: {
30
30
  task: import("@baseplate-dev/sync").GeneratorTask<{
31
31
  localAuthCoreAuthEmailPasswordRenderers: import("@baseplate-dev/sync").ProviderExport<import("./template-renderers.js").LocalAuthCoreAuthEmailPasswordRenderers>;
32
32
  }, {
33
+ appUrlsImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
34
+ getApiUrl: {};
35
+ getWebAppForUrl: {};
36
+ getWebOrigins: {};
37
+ getWebUrl: {};
38
+ WebAppName: {
39
+ isTypeOnly: true;
40
+ };
41
+ }>>;
33
42
  authModuleImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
34
43
  cleanupAuthVerificationQueue: {};
35
44
  cleanupAuthVerificationWorker: {};
@@ -143,9 +152,19 @@ export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_GENERATED: {
143
152
  servicesUserPassword: {};
144
153
  }>;
145
154
  servicesPasswordReset: import("@baseplate-dev/core-generators").TsTemplateFile<{
155
+ TPL_AUTH_WEB_APP: {};
146
156
  TPL_PASSWORD_CHANGED_EMAIL: {};
147
157
  TPL_PASSWORD_RESET_EMAIL: {};
148
158
  }, {
159
+ appUrlsImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
160
+ getApiUrl: {};
161
+ getWebAppForUrl: {};
162
+ getWebOrigins: {};
163
+ getWebUrl: {};
164
+ WebAppName: {
165
+ isTypeOnly: true;
166
+ };
167
+ }>>;
149
168
  authModuleImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
150
169
  cleanupAuthVerificationQueue: {};
151
170
  cleanupAuthVerificationWorker: {};
@@ -158,10 +177,6 @@ export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_GENERATED: {
158
177
  validateAuthVerification: {};
159
178
  validateCodeVerification: {};
160
179
  }>>;
161
- configServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
162
- getConfig: {};
163
- isDevelopment: {};
164
- }>>;
165
180
  errorHandlerServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
166
181
  BadRequestError: {};
167
182
  ForbiddenError: {};
@@ -389,7 +404,17 @@ export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_GENERATED: {
389
404
  }>;
390
405
  servicesEmailVerification: import("@baseplate-dev/core-generators").TsTemplateFile<{
391
406
  TPL_ACCOUNT_VERIFICATION_EMAIL: {};
407
+ TPL_AUTH_WEB_APP: {};
392
408
  }, {
409
+ appUrlsImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
410
+ getApiUrl: {};
411
+ getWebAppForUrl: {};
412
+ getWebOrigins: {};
413
+ getWebUrl: {};
414
+ WebAppName: {
415
+ isTypeOnly: true;
416
+ };
417
+ }>>;
393
418
  authModuleImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
394
419
  cleanupAuthVerificationQueue: {};
395
420
  cleanupAuthVerificationWorker: {};
@@ -402,10 +427,6 @@ export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_GENERATED: {
402
427
  validateAuthVerification: {};
403
428
  validateCodeVerification: {};
404
429
  }>>;
405
- configServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
406
- getConfig: {};
407
- isDevelopment: {};
408
- }>>;
409
430
  errorHandlerServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
410
431
  BadRequestError: {};
411
432
  ForbiddenError: {};
@@ -447,8 +468,18 @@ export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_GENERATED: {
447
468
  constantsPassword: {};
448
469
  }>;
449
470
  servicesInvite: import("@baseplate-dev/core-generators").TsTemplateFile<{
471
+ TPL_AUTH_WEB_APP: {};
450
472
  TPL_INVITE_EMAIL: {};
451
473
  }, {
474
+ appUrlsImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
475
+ getApiUrl: {};
476
+ getWebAppForUrl: {};
477
+ getWebOrigins: {};
478
+ getWebUrl: {};
479
+ WebAppName: {
480
+ isTypeOnly: true;
481
+ };
482
+ }>>;
452
483
  authModuleImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
453
484
  cleanupAuthVerificationQueue: {};
454
485
  cleanupAuthVerificationWorker: {};
@@ -461,10 +492,6 @@ export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_GENERATED: {
461
492
  validateAuthVerification: {};
462
493
  validateCodeVerification: {};
463
494
  }>>;
464
- configServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
465
- getConfig: {};
466
- isDevelopment: {};
467
- }>>;
468
495
  errorHandlerServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
469
496
  BadRequestError: {};
470
497
  ForbiddenError: {};
@@ -32,6 +32,15 @@ export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_RENDERERS: {
32
32
  task: import("@baseplate-dev/sync").GeneratorTask<{
33
33
  localAuthCoreAuthEmailPasswordRenderers: import("@baseplate-dev/sync").ProviderExport<LocalAuthCoreAuthEmailPasswordRenderers>;
34
34
  }, {
35
+ appUrlsImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
36
+ getApiUrl: {};
37
+ getWebAppForUrl: {};
38
+ getWebOrigins: {};
39
+ getWebUrl: {};
40
+ WebAppName: {
41
+ isTypeOnly: true;
42
+ };
43
+ }>>;
35
44
  authModuleImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
36
45
  cleanupAuthVerificationQueue: {};
37
46
  cleanupAuthVerificationWorker: {};
@@ -1,5 +1,5 @@
1
1
  import { typescriptFileProvider } from '@baseplate-dev/core-generators';
2
- import { configServiceImportsProvider, errorHandlerServiceImportsProvider, passwordHasherServiceImportsProvider, pothosImportsProvider, prismaGeneratedImportsProvider, prismaImportsProvider, requestServiceContextImportsProvider, userSessionTypesImportsProvider, } from '@baseplate-dev/fastify-generators';
2
+ import { appUrlsImportsProvider, configServiceImportsProvider, errorHandlerServiceImportsProvider, passwordHasherServiceImportsProvider, pothosImportsProvider, prismaGeneratedImportsProvider, prismaImportsProvider, requestServiceContextImportsProvider, userSessionTypesImportsProvider, } from '@baseplate-dev/fastify-generators';
3
3
  import { rateLimitImportsProvider } from '@baseplate-dev/plugin-rate-limit';
4
4
  import { createGeneratorTask, createProviderType } from '@baseplate-dev/sync';
5
5
  import { authModuleImportsProvider } from '#src/local-auth/core/generators/auth-module/generated/ts-import-providers.js';
@@ -8,6 +8,7 @@ import { LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_TEMPLATES } from './typed-templates
8
8
  const localAuthCoreAuthEmailPasswordRenderers = createProviderType('local-auth-core-auth-email-password-renderers');
9
9
  const localAuthCoreAuthEmailPasswordRenderersTask = createGeneratorTask({
10
10
  dependencies: {
11
+ appUrlsImports: appUrlsImportsProvider,
11
12
  authModuleImports: authModuleImportsProvider,
12
13
  configServiceImports: configServiceImportsProvider,
13
14
  errorHandlerServiceImports: errorHandlerServiceImportsProvider,
@@ -24,7 +25,7 @@ const localAuthCoreAuthEmailPasswordRenderersTask = createGeneratorTask({
24
25
  exports: {
25
26
  localAuthCoreAuthEmailPasswordRenderers: localAuthCoreAuthEmailPasswordRenderers.export(),
26
27
  },
27
- run({ authModuleImports, configServiceImports, errorHandlerServiceImports, passwordHasherServiceImports, paths, pothosImports, prismaGeneratedImports, prismaImports, rateLimitImports, requestServiceContextImports, typescriptFile, userSessionTypesImports, }) {
28
+ run({ appUrlsImports, authModuleImports, configServiceImports, errorHandlerServiceImports, passwordHasherServiceImports, paths, pothosImports, prismaGeneratedImports, prismaImports, rateLimitImports, requestServiceContextImports, typescriptFile, userSessionTypesImports, }) {
28
29
  return {
29
30
  providers: {
30
31
  localAuthCoreAuthEmailPasswordRenderers: {
@@ -40,8 +41,8 @@ const localAuthCoreAuthEmailPasswordRenderersTask = createGeneratorTask({
40
41
  group: LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_TEMPLATES.moduleGroup,
41
42
  paths,
42
43
  importMapProviders: {
44
+ appUrlsImports,
43
45
  authModuleImports,
44
- configServiceImports,
45
46
  errorHandlerServiceImports,
46
47
  passwordHasherServiceImports,
47
48
  pothosImports,
@@ -112,8 +113,8 @@ const localAuthCoreAuthEmailPasswordRenderersTask = createGeneratorTask({
112
113
  template: LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_TEMPLATES.servicesEmailVerification,
113
114
  destination: paths.servicesEmailVerification,
114
115
  importMapProviders: {
116
+ appUrlsImports,
115
117
  authModuleImports,
116
- configServiceImports,
117
118
  errorHandlerServiceImports,
118
119
  prismaImports,
119
120
  rateLimitImports,
@@ -128,8 +129,8 @@ const localAuthCoreAuthEmailPasswordRenderersTask = createGeneratorTask({
128
129
  template: LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_TEMPLATES.servicesInvite,
129
130
  destination: paths.servicesInvite,
130
131
  importMapProviders: {
132
+ appUrlsImports,
131
133
  authModuleImports,
132
- configServiceImports,
133
134
  errorHandlerServiceImports,
134
135
  passwordHasherServiceImports,
135
136
  prismaGeneratedImports,
@@ -1,7 +1,6 @@
1
1
  import type { TsImportMapProviderFromSchema } from '@baseplate-dev/core-generators';
2
2
  export declare const authEmailPasswordImportsSchema: {
3
3
  authenticateUserWithEmailAndPassword: {};
4
- cleanupExpiredPasswordResetTokens: {};
5
4
  completePasswordReset: {};
6
5
  createUserWithEmailAndPassword: {};
7
6
  PASSWORD_MAX_LENGTH: {};
@@ -14,7 +13,6 @@ export declare const authEmailPasswordImportsSchema: {
14
13
  export type AuthEmailPasswordImportsProvider = TsImportMapProviderFromSchema<typeof authEmailPasswordImportsSchema>;
15
14
  export declare const authEmailPasswordImportsProvider: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
16
15
  authenticateUserWithEmailAndPassword: {};
17
- cleanupExpiredPasswordResetTokens: {};
18
16
  completePasswordReset: {};
19
17
  createUserWithEmailAndPassword: {};
20
18
  PASSWORD_MAX_LENGTH: {};
@@ -25,10 +23,10 @@ export declare const authEmailPasswordImportsProvider: import("@baseplate-dev/sy
25
23
  validatePasswordResetToken: {};
26
24
  }>>;
27
25
  export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_IMPORTS: {
26
+ generatorName: string;
28
27
  task: import("@baseplate-dev/sync").GeneratorTask<{
29
28
  authEmailPasswordImports: import("@baseplate-dev/sync").ProviderExport<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
30
29
  authenticateUserWithEmailAndPassword: {};
31
- cleanupExpiredPasswordResetTokens: {};
32
30
  completePasswordReset: {};
33
31
  createUserWithEmailAndPassword: {};
34
32
  PASSWORD_MAX_LENGTH: {};
@@ -3,7 +3,6 @@ import { createGeneratorTask, createReadOnlyProviderType, } from '@baseplate-dev
3
3
  import { LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_PATHS } from './template-paths.js';
4
4
  export const authEmailPasswordImportsSchema = createTsImportMapSchema({
5
5
  authenticateUserWithEmailAndPassword: {},
6
- cleanupExpiredPasswordResetTokens: {},
7
6
  completePasswordReset: {},
8
7
  createUserWithEmailAndPassword: {},
9
8
  PASSWORD_MAX_LENGTH: {},
@@ -26,7 +25,6 @@ const localAuthCoreAuthEmailPasswordImportsTask = createGeneratorTask({
26
25
  providers: {
27
26
  authEmailPasswordImports: createTsImportMap(authEmailPasswordImportsSchema, {
28
27
  authenticateUserWithEmailAndPassword: paths.servicesUserPassword,
29
- cleanupExpiredPasswordResetTokens: paths.servicesPasswordReset,
30
28
  completePasswordReset: paths.servicesPasswordReset,
31
29
  createUserWithEmailAndPassword: paths.servicesUserPassword,
32
30
  PASSWORD_MAX_LENGTH: paths.constantsPassword,
@@ -41,6 +39,7 @@ const localAuthCoreAuthEmailPasswordImportsTask = createGeneratorTask({
41
39
  },
42
40
  });
43
41
  export const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_IMPORTS = {
42
+ generatorName: '@baseplate-dev/plugin-auth#local-auth/core/auth-email-password',
44
43
  task: localAuthCoreAuthEmailPasswordImportsTask,
45
44
  };
46
45
  //# sourceMappingURL=ts-import-providers.js.map
@@ -31,9 +31,19 @@ export declare const moduleGroup: {
31
31
  servicesUserPassword: {};
32
32
  }>;
33
33
  servicesPasswordReset: import("@baseplate-dev/core-generators").TsTemplateFile<{
34
+ TPL_AUTH_WEB_APP: {};
34
35
  TPL_PASSWORD_CHANGED_EMAIL: {};
35
36
  TPL_PASSWORD_RESET_EMAIL: {};
36
37
  }, {
38
+ appUrlsImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
39
+ getApiUrl: {};
40
+ getWebAppForUrl: {};
41
+ getWebOrigins: {};
42
+ getWebUrl: {};
43
+ WebAppName: {
44
+ isTypeOnly: true;
45
+ };
46
+ }>>;
37
47
  authModuleImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
38
48
  cleanupAuthVerificationQueue: {};
39
49
  cleanupAuthVerificationWorker: {};
@@ -46,10 +56,6 @@ export declare const moduleGroup: {
46
56
  validateAuthVerification: {};
47
57
  validateCodeVerification: {};
48
58
  }>>;
49
- configServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
50
- getConfig: {};
51
- isDevelopment: {};
52
- }>>;
53
59
  errorHandlerServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
54
60
  BadRequestError: {};
55
61
  ForbiddenError: {};
@@ -193,9 +199,19 @@ export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_TEMPLATES: {
193
199
  servicesUserPassword: {};
194
200
  }>;
195
201
  servicesPasswordReset: import("@baseplate-dev/core-generators").TsTemplateFile<{
202
+ TPL_AUTH_WEB_APP: {};
196
203
  TPL_PASSWORD_CHANGED_EMAIL: {};
197
204
  TPL_PASSWORD_RESET_EMAIL: {};
198
205
  }, {
206
+ appUrlsImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
207
+ getApiUrl: {};
208
+ getWebAppForUrl: {};
209
+ getWebOrigins: {};
210
+ getWebUrl: {};
211
+ WebAppName: {
212
+ isTypeOnly: true;
213
+ };
214
+ }>>;
199
215
  authModuleImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
200
216
  cleanupAuthVerificationQueue: {};
201
217
  cleanupAuthVerificationWorker: {};
@@ -208,10 +224,6 @@ export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_TEMPLATES: {
208
224
  validateAuthVerification: {};
209
225
  validateCodeVerification: {};
210
226
  }>>;
211
- configServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
212
- getConfig: {};
213
- isDevelopment: {};
214
- }>>;
215
227
  errorHandlerServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
216
228
  BadRequestError: {};
217
229
  ForbiddenError: {};
@@ -439,7 +451,17 @@ export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_TEMPLATES: {
439
451
  }>;
440
452
  servicesEmailVerification: import("@baseplate-dev/core-generators").TsTemplateFile<{
441
453
  TPL_ACCOUNT_VERIFICATION_EMAIL: {};
454
+ TPL_AUTH_WEB_APP: {};
442
455
  }, {
456
+ appUrlsImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
457
+ getApiUrl: {};
458
+ getWebAppForUrl: {};
459
+ getWebOrigins: {};
460
+ getWebUrl: {};
461
+ WebAppName: {
462
+ isTypeOnly: true;
463
+ };
464
+ }>>;
443
465
  authModuleImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
444
466
  cleanupAuthVerificationQueue: {};
445
467
  cleanupAuthVerificationWorker: {};
@@ -452,10 +474,6 @@ export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_TEMPLATES: {
452
474
  validateAuthVerification: {};
453
475
  validateCodeVerification: {};
454
476
  }>>;
455
- configServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
456
- getConfig: {};
457
- isDevelopment: {};
458
- }>>;
459
477
  errorHandlerServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
460
478
  BadRequestError: {};
461
479
  ForbiddenError: {};
@@ -497,8 +515,18 @@ export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_TEMPLATES: {
497
515
  constantsPassword: {};
498
516
  }>;
499
517
  servicesInvite: import("@baseplate-dev/core-generators").TsTemplateFile<{
518
+ TPL_AUTH_WEB_APP: {};
500
519
  TPL_INVITE_EMAIL: {};
501
520
  }, {
521
+ appUrlsImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
522
+ getApiUrl: {};
523
+ getWebAppForUrl: {};
524
+ getWebOrigins: {};
525
+ getWebUrl: {};
526
+ WebAppName: {
527
+ isTypeOnly: true;
528
+ };
529
+ }>>;
502
530
  authModuleImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
503
531
  cleanupAuthVerificationQueue: {};
504
532
  cleanupAuthVerificationWorker: {};
@@ -511,10 +539,6 @@ export declare const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_TEMPLATES: {
511
539
  validateAuthVerification: {};
512
540
  validateCodeVerification: {};
513
541
  }>>;
514
- configServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
515
- getConfig: {};
516
- isDevelopment: {};
517
- }>>;
518
542
  errorHandlerServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
519
543
  BadRequestError: {};
520
544
  ForbiddenError: {};
@@ -1,5 +1,5 @@
1
1
  import { createTsTemplateFile } from '@baseplate-dev/core-generators';
2
- import { configServiceImportsProvider, errorHandlerServiceImportsProvider, passwordHasherServiceImportsProvider, pothosImportsProvider, prismaGeneratedImportsProvider, prismaImportsProvider, requestServiceContextImportsProvider, userSessionTypesImportsProvider, } from '@baseplate-dev/fastify-generators';
2
+ import { appUrlsImportsProvider, configServiceImportsProvider, errorHandlerServiceImportsProvider, passwordHasherServiceImportsProvider, pothosImportsProvider, prismaGeneratedImportsProvider, prismaImportsProvider, requestServiceContextImportsProvider, userSessionTypesImportsProvider, } from '@baseplate-dev/fastify-generators';
3
3
  import { rateLimitImportsProvider } from '@baseplate-dev/plugin-rate-limit';
4
4
  import path from 'node:path';
5
5
  import { authModuleImportsProvider } from '#src/local-auth/core/generators/auth-module/generated/ts-import-providers.js';
@@ -60,8 +60,8 @@ const servicesPasswordReset = createTsTemplateFile({
60
60
  fileOptions: { kind: 'singleton' },
61
61
  group: 'module',
62
62
  importMapProviders: {
63
+ appUrlsImports: appUrlsImportsProvider,
63
64
  authModuleImports: authModuleImportsProvider,
64
- configServiceImports: configServiceImportsProvider,
65
65
  errorHandlerServiceImports: errorHandlerServiceImportsProvider,
66
66
  passwordHasherServiceImports: passwordHasherServiceImportsProvider,
67
67
  prismaImports: prismaImportsProvider,
@@ -70,7 +70,6 @@ const servicesPasswordReset = createTsTemplateFile({
70
70
  },
71
71
  name: 'services-password-reset',
72
72
  projectExports: {
73
- cleanupExpiredPasswordResetTokens: { isTypeOnly: false },
74
73
  completePasswordReset: { isTypeOnly: false },
75
74
  requestPasswordReset: { isTypeOnly: false },
76
75
  validatePasswordResetToken: { isTypeOnly: false },
@@ -82,7 +81,11 @@ const servicesPasswordReset = createTsTemplateFile({
82
81
  source: {
83
82
  path: path.join(import.meta.dirname, '../templates/module/services/password-reset.service.ts'),
84
83
  },
85
- variables: { TPL_PASSWORD_CHANGED_EMAIL: {}, TPL_PASSWORD_RESET_EMAIL: {} },
84
+ variables: {
85
+ TPL_AUTH_WEB_APP: {},
86
+ TPL_PASSWORD_CHANGED_EMAIL: {},
87
+ TPL_PASSWORD_RESET_EMAIL: {},
88
+ },
86
89
  });
87
90
  const servicesUserPassword = createTsTemplateFile({
88
91
  fileOptions: { kind: 'singleton' },
@@ -175,8 +178,8 @@ const servicesEmailOtp = createTsTemplateFile({
175
178
  const servicesEmailVerification = createTsTemplateFile({
176
179
  fileOptions: { kind: 'singleton' },
177
180
  importMapProviders: {
181
+ appUrlsImports: appUrlsImportsProvider,
178
182
  authModuleImports: authModuleImportsProvider,
179
- configServiceImports: configServiceImportsProvider,
180
183
  errorHandlerServiceImports: errorHandlerServiceImportsProvider,
181
184
  prismaImports: prismaImportsProvider,
182
185
  rateLimitImports: rateLimitImportsProvider,
@@ -187,13 +190,13 @@ const servicesEmailVerification = createTsTemplateFile({
187
190
  source: {
188
191
  path: path.join(import.meta.dirname, '../templates/module/services/email-verification.service.ts'),
189
192
  },
190
- variables: { TPL_ACCOUNT_VERIFICATION_EMAIL: {} },
193
+ variables: { TPL_ACCOUNT_VERIFICATION_EMAIL: {}, TPL_AUTH_WEB_APP: {} },
191
194
  });
192
195
  const servicesInvite = createTsTemplateFile({
193
196
  fileOptions: { kind: 'singleton' },
194
197
  importMapProviders: {
198
+ appUrlsImports: appUrlsImportsProvider,
195
199
  authModuleImports: authModuleImportsProvider,
196
- configServiceImports: configServiceImportsProvider,
197
200
  errorHandlerServiceImports: errorHandlerServiceImportsProvider,
198
201
  passwordHasherServiceImports: passwordHasherServiceImportsProvider,
199
202
  prismaGeneratedImports: prismaGeneratedImportsProvider,
@@ -206,7 +209,7 @@ const servicesInvite = createTsTemplateFile({
206
209
  source: {
207
210
  path: path.join(import.meta.dirname, '../templates/module/services/invite.service.ts'),
208
211
  },
209
- variables: { TPL_INVITE_EMAIL: {} },
212
+ variables: { TPL_AUTH_WEB_APP: {}, TPL_INVITE_EMAIL: {} },
210
213
  });
211
214
  export const LOCAL_AUTH_CORE_AUTH_EMAIL_PASSWORD_TEMPLATES = {
212
215
  constantsOtp,
@@ -1,7 +1,7 @@
1
1
  // @ts-nocheck
2
2
  import { EMAIL_VERIFICATION_TOKEN_EXPIRY_SEC } from '$constantsPassword';
3
+ import { getWebAppForUrl, getWebUrl } from '%appUrlsImports';
3
4
  import { createAuthVerification, validateAuthVerification, } from '%authModuleImports';
4
- import { getConfig } from '%configServiceImports';
5
5
  import { BadRequestError } from '%errorHandlerServiceImports';
6
6
  import { prisma } from '%prismaImports';
7
7
  import { memoizeRateLimiter } from '%rateLimitImports';
@@ -49,8 +49,7 @@ export async function requestEmailVerification({ userId, context, }) {
49
49
  userId: user.id,
50
50
  expiresInSec: EMAIL_VERIFICATION_TOKEN_EXPIRY_SEC,
51
51
  });
52
- // Construct verification URL using configured domain
53
- const verifyLink = `${getConfig().AUTH_FRONTEND_URL}/auth/verify-email?token=${encodeURIComponent(token)}`;
52
+ const verifyLink = getWebUrl(getWebAppForUrl(context.reqInfo.headers.origin) ?? TPL_AUTH_WEB_APP, `/auth/verify-email?token=${encodeURIComponent(token)}`);
54
53
  await services.email.send(TPL_ACCOUNT_VERIFICATION_EMAIL, {
55
54
  to: user.email,
56
55
  data: { verifyLink },
@@ -6,11 +6,11 @@ import type {
6
6
  } from '%requestServiceContextImports';
7
7
 
8
8
  import { EMAIL_VERIFICATION_TOKEN_EXPIRY_SEC } from '$constantsPassword';
9
+ import { getWebAppForUrl, getWebUrl } from '%appUrlsImports';
9
10
  import {
10
11
  createAuthVerification,
11
12
  validateAuthVerification,
12
13
  } from '%authModuleImports';
13
- import { getConfig } from '%configServiceImports';
14
14
  import { BadRequestError } from '%errorHandlerServiceImports';
15
15
  import { prisma } from '%prismaImports';
16
16
  import { memoizeRateLimiter } from '%rateLimitImports';
@@ -90,8 +90,10 @@ export async function requestEmailVerification({
90
90
  expiresInSec: EMAIL_VERIFICATION_TOKEN_EXPIRY_SEC,
91
91
  });
92
92
 
93
- // Construct verification URL using configured domain
94
- const verifyLink = `${getConfig().AUTH_FRONTEND_URL}/auth/verify-email?token=${encodeURIComponent(token)}`;
93
+ const verifyLink = getWebUrl(
94
+ getWebAppForUrl(context.reqInfo.headers.origin) ?? TPL_AUTH_WEB_APP,
95
+ `/auth/verify-email?token=${encodeURIComponent(token)}`,
96
+ );
95
97
 
96
98
  await services.email.send(TPL_ACCOUNT_VERIFICATION_EMAIL, {
97
99
  to: user.email,
@@ -1,7 +1,7 @@
1
1
  // @ts-nocheck
2
2
  import { AUTH_TOKEN_MAX_LENGTH, INVITE_TOKEN_EXPIRY_SEC, PASSWORD_MAX_LENGTH, PASSWORD_MIN_LENGTH, } from '$constantsPassword';
3
+ import { getWebUrl } from '%appUrlsImports';
3
4
  import { createAuthVerification, validateAuthVerification, } from '%authModuleImports';
4
- import { getConfig } from '%configServiceImports';
5
5
  import { BadRequestError, handleZodRequestValidationError, NotFoundError, } from '%errorHandlerServiceImports';
6
6
  import { createPasswordHash } from '%passwordHasherServiceImports';
7
7
  import { prisma } from '%prismaImports';
@@ -38,7 +38,7 @@ export async function inviteUser({ userId, context, }) {
38
38
  userId: user.id,
39
39
  expiresInSec: INVITE_TOKEN_EXPIRY_SEC,
40
40
  });
41
- const acceptLink = `${getConfig().AUTH_FRONTEND_URL}/auth/accept-invite?token=${encodeURIComponent(token)}`;
41
+ const acceptLink = getWebUrl(TPL_AUTH_WEB_APP, `/auth/accept-invite?token=${encodeURIComponent(token)}`);
42
42
  await services.email.send(TPL_INVITE_EMAIL, {
43
43
  to: user.email,
44
44
  data: { acceptLink },
@@ -105,27 +105,31 @@ export async function acceptInvite({ token: rawToken, newPassword: rawNewPasswor
105
105
  if (!user.email) {
106
106
  throw new BadRequestError('User has no email', 'user-has-no-email');
107
107
  }
108
+ // The invite token outlives the check in `inviteUser`, so the user may have
109
+ // registered in the meantime.
110
+ const existingAccount = await prisma.userAccount.findUnique({
111
+ where: {
112
+ accountId_providerId: {
113
+ accountId: user.email,
114
+ providerId: PROVIDER_ID,
115
+ },
116
+ },
117
+ });
118
+ if (existingAccount) {
119
+ throw new BadRequestError('User already has a password set', 'user-already-has-account');
120
+ }
108
121
  const passwordHash = await createPasswordHash(newPassword);
109
122
  await prisma.$transaction([
110
123
  prisma.authVerification.deleteMany({
111
124
  where: { type: INVITE_TYPE, userId: user.id },
112
125
  }),
113
- prisma.userAccount.upsert({
114
- where: {
115
- accountId_providerId: {
116
- accountId: user.email,
117
- providerId: PROVIDER_ID,
118
- },
119
- },
120
- create: {
126
+ prisma.userAccount.create({
127
+ data: {
121
128
  userId: user.id,
122
129
  accountId: user.email,
123
130
  providerId: PROVIDER_ID,
124
131
  password: passwordHash,
125
132
  },
126
- update: {
127
- password: passwordHash,
128
- },
129
133
  }),
130
134
  prisma.user.update({
131
135
  where: { id: user.id },
@@ -13,11 +13,11 @@ import {
13
13
  PASSWORD_MAX_LENGTH,
14
14
  PASSWORD_MIN_LENGTH,
15
15
  } from '$constantsPassword';
16
+ import { getWebUrl } from '%appUrlsImports';
16
17
  import {
17
18
  createAuthVerification,
18
19
  validateAuthVerification,
19
20
  } from '%authModuleImports';
20
- import { getConfig } from '%configServiceImports';
21
21
  import {
22
22
  BadRequestError,
23
23
  handleZodRequestValidationError,
@@ -76,7 +76,10 @@ export async function inviteUser({
76
76
  expiresInSec: INVITE_TOKEN_EXPIRY_SEC,
77
77
  });
78
78
 
79
- const acceptLink = `${getConfig().AUTH_FRONTEND_URL}/auth/accept-invite?token=${encodeURIComponent(token)}`;
79
+ const acceptLink = getWebUrl(
80
+ TPL_AUTH_WEB_APP,
81
+ `/auth/accept-invite?token=${encodeURIComponent(token)}`,
82
+ );
80
83
 
81
84
  await services.email.send(TPL_INVITE_EMAIL, {
82
85
  to: user.email,
@@ -171,28 +174,37 @@ export async function acceptInvite({
171
174
  throw new BadRequestError('User has no email', 'user-has-no-email');
172
175
  }
173
176
 
177
+ // The invite token outlives the check in `inviteUser`, so the user may have
178
+ // registered in the meantime.
179
+ const existingAccount = await prisma.userAccount.findUnique({
180
+ where: {
181
+ accountId_providerId: {
182
+ accountId: user.email,
183
+ providerId: PROVIDER_ID,
184
+ },
185
+ },
186
+ });
187
+
188
+ if (existingAccount) {
189
+ throw new BadRequestError(
190
+ 'User already has a password set',
191
+ 'user-already-has-account',
192
+ );
193
+ }
194
+
174
195
  const passwordHash = await createPasswordHash(newPassword);
175
196
 
176
197
  await prisma.$transaction([
177
198
  prisma.authVerification.deleteMany({
178
199
  where: { type: INVITE_TYPE, userId: user.id },
179
200
  }),
180
- prisma.userAccount.upsert({
181
- where: {
182
- accountId_providerId: {
183
- accountId: user.email,
184
- providerId: PROVIDER_ID,
185
- },
186
- },
187
- create: {
201
+ prisma.userAccount.create({
202
+ data: {
188
203
  userId: user.id,
189
204
  accountId: user.email,
190
205
  providerId: PROVIDER_ID,
191
206
  password: passwordHash,
192
207
  },
193
- update: {
194
- password: passwordHash,
195
- },
196
208
  }),
197
209
  prisma.user.update({
198
210
  where: { id: user.id },
@@ -1,8 +1,8 @@
1
1
  // @ts-nocheck
2
2
  import { AUTH_TOKEN_MAX_LENGTH, PASSWORD_MAX_LENGTH, PASSWORD_MIN_LENGTH, PASSWORD_RESET_TOKEN_EXPIRY_SEC, } from '$constantsPassword';
3
3
  import { resetLoginRateLimits } from '$servicesUserPassword';
4
+ import { getWebAppForUrl, getWebUrl } from '%appUrlsImports';
4
5
  import { createAuthVerification, validateAuthVerification, } from '%authModuleImports';
5
- import { getConfig } from '%configServiceImports';
6
6
  import { BadRequestError, handleZodRequestValidationError, } from '%errorHandlerServiceImports';
7
7
  import { createPasswordHash } from '%passwordHasherServiceImports';
8
8
  import { prisma } from '%prismaImports';
@@ -58,8 +58,7 @@ export async function requestPasswordReset({ email: rawEmail, context, }) {
58
58
  userId: user.id,
59
59
  expiresInSec: PASSWORD_RESET_TOKEN_EXPIRY_SEC,
60
60
  });
61
- // Construct reset URL using configured domain
62
- const resetLink = `${getConfig().AUTH_FRONTEND_URL}/auth/reset-password?token=${encodeURIComponent(token)}`;
61
+ const resetLink = getWebUrl(getWebAppForUrl(context.reqInfo.headers.origin) ?? TPL_AUTH_WEB_APP, `/auth/reset-password?token=${encodeURIComponent(token)}`);
63
62
  // Send email asynchronously (queue-based)
64
63
  await services.email.send(TPL_PASSWORD_RESET_EMAIL, {
65
64
  to: user.email,
@@ -9,11 +9,11 @@ import {
9
9
  PASSWORD_RESET_TOKEN_EXPIRY_SEC,
10
10
  } from '$constantsPassword';
11
11
  import { resetLoginRateLimits } from '$servicesUserPassword';
12
+ import { getWebAppForUrl, getWebUrl } from '%appUrlsImports';
12
13
  import {
13
14
  createAuthVerification,
14
15
  validateAuthVerification,
15
16
  } from '%authModuleImports';
16
- import { getConfig } from '%configServiceImports';
17
17
  import {
18
18
  BadRequestError,
19
19
  handleZodRequestValidationError,
@@ -108,8 +108,10 @@ export async function requestPasswordReset({
108
108
  expiresInSec: PASSWORD_RESET_TOKEN_EXPIRY_SEC,
109
109
  });
110
110
 
111
- // Construct reset URL using configured domain
112
- const resetLink = `${getConfig().AUTH_FRONTEND_URL}/auth/reset-password?token=${encodeURIComponent(token)}`;
111
+ const resetLink = getWebUrl(
112
+ getWebAppForUrl(context.reqInfo.headers.origin) ?? TPL_AUTH_WEB_APP,
113
+ `/auth/reset-password?token=${encodeURIComponent(token)}`,
114
+ );
113
115
 
114
116
  // Send email asynchronously (queue-based)
115
117
  await services.email.send(TPL_PASSWORD_RESET_EMAIL, {