@tinyrack/issuary-server 0.30.0 → 0.32.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (478) hide show
  1. package/dist/entities/auth-budget.entity.d.ts +20 -0
  2. package/dist/entities/auth-budget.entity.d.ts.map +1 -0
  3. package/dist/entities/auth-budget.entity.js +11 -0
  4. package/dist/entities/auth-budget.entity.js.map +1 -0
  5. package/dist/entities/browser-session.entity.d.ts +32 -0
  6. package/dist/entities/browser-session.entity.d.ts.map +1 -0
  7. package/dist/entities/browser-session.entity.js +12 -0
  8. package/dist/entities/browser-session.entity.js.map +1 -0
  9. package/dist/entities/email-verification.entity.d.ts +18 -0
  10. package/dist/entities/email-verification.entity.d.ts.map +1 -1
  11. package/dist/entities/email-verification.entity.js +2 -0
  12. package/dist/entities/email-verification.entity.js.map +1 -1
  13. package/dist/entities/oauth-client.entity.d.ts +120 -0
  14. package/dist/entities/oauth-client.entity.d.ts.map +1 -1
  15. package/dist/entities/oauth-code.entity.d.ts +120 -0
  16. package/dist/entities/oauth-code.entity.d.ts.map +1 -1
  17. package/dist/entities/oauth-code.entity.js +3 -0
  18. package/dist/entities/oauth-code.entity.js.map +1 -1
  19. package/dist/entities/oauth-device-code.entity.d.ts +120 -0
  20. package/dist/entities/oauth-device-code.entity.d.ts.map +1 -1
  21. package/dist/entities/oauth-device-code.entity.js +3 -0
  22. package/dist/entities/oauth-device-code.entity.js.map +1 -1
  23. package/dist/entities/oauth-grant.entity.d.ts +52 -0
  24. package/dist/entities/oauth-grant.entity.d.ts.map +1 -0
  25. package/dist/entities/oauth-grant.entity.js +19 -0
  26. package/dist/entities/oauth-grant.entity.js.map +1 -0
  27. package/dist/entities/password-reset.entity.d.ts +18 -0
  28. package/dist/entities/password-reset.entity.d.ts.map +1 -1
  29. package/dist/entities/password-reset.entity.js +2 -0
  30. package/dist/entities/password-reset.entity.js.map +1 -1
  31. package/dist/entities/pending-oauth-registration.entity.d.ts +9 -0
  32. package/dist/entities/pending-oauth-registration.entity.d.ts.map +1 -1
  33. package/dist/entities/pending-oauth-registration.entity.js +1 -0
  34. package/dist/entities/pending-oauth-registration.entity.js.map +1 -1
  35. package/dist/entities/revoked-token.entity.d.ts +120 -0
  36. package/dist/entities/revoked-token.entity.d.ts.map +1 -1
  37. package/dist/entities/terms-content.entity.d.ts +36 -0
  38. package/dist/entities/terms-content.entity.d.ts.map +1 -1
  39. package/dist/entities/terms.entity.d.ts +36 -0
  40. package/dist/entities/terms.entity.d.ts.map +1 -1
  41. package/dist/entities/user-consent.entity.d.ts +120 -0
  42. package/dist/entities/user-consent.entity.d.ts.map +1 -1
  43. package/dist/entities/user-terms-consent.entity.d.ts +36 -0
  44. package/dist/entities/user-terms-consent.entity.d.ts.map +1 -1
  45. package/dist/entities/user-totp-recovery-code.entity.d.ts +36 -0
  46. package/dist/entities/user-totp-recovery-code.entity.d.ts.map +1 -1
  47. package/dist/entities/user-totp.entity.d.ts +36 -0
  48. package/dist/entities/user-totp.entity.d.ts.map +1 -1
  49. package/dist/entities/user-totp.entity.js +1 -0
  50. package/dist/entities/user-totp.entity.js.map +1 -1
  51. package/dist/entities/user.entity.d.ts +36 -0
  52. package/dist/entities/user.entity.d.ts.map +1 -1
  53. package/dist/entities/user.entity.js +3 -0
  54. package/dist/entities/user.entity.js.map +1 -1
  55. package/dist/entrypoints/app.d.ts +438 -424
  56. package/dist/entrypoints/app.d.ts.map +1 -1
  57. package/dist/entrypoints/app.js +78 -6
  58. package/dist/entrypoints/app.js.map +1 -1
  59. package/dist/entrypoints/database/postgres/compiled-functions.d.ts +326 -200
  60. package/dist/entrypoints/database/postgres/compiled-functions.js +1849 -518
  61. package/dist/entrypoints/database/postgres/compiled-functions.js.map +1 -1
  62. package/dist/entrypoints/database/sqlite/compiled-functions.d.ts +326 -200
  63. package/dist/entrypoints/database/sqlite/compiled-functions.js +1849 -518
  64. package/dist/entrypoints/database/sqlite/compiled-functions.js.map +1 -1
  65. package/dist/entrypoints/database/sqlite/sqlite.d.ts.map +1 -1
  66. package/dist/entrypoints/database/sqlite/sqlite.js +1 -0
  67. package/dist/entrypoints/database/sqlite/sqlite.js.map +1 -1
  68. package/dist/entrypoints/scheduler/database.d.ts +3 -1
  69. package/dist/entrypoints/scheduler/database.d.ts.map +1 -1
  70. package/dist/entrypoints/scheduler/database.js +13 -2
  71. package/dist/entrypoints/scheduler/database.js.map +1 -1
  72. package/dist/entrypoints/scheduler/distributed-runner.d.ts +4 -0
  73. package/dist/entrypoints/scheduler/distributed-runner.d.ts.map +1 -1
  74. package/dist/entrypoints/scheduler/distributed-runner.js +26 -1
  75. package/dist/entrypoints/scheduler/distributed-runner.js.map +1 -1
  76. package/dist/lib/config/client.js +1 -1
  77. package/dist/lib/config/client.js.map +1 -1
  78. package/dist/lib/config/email.d.ts +1 -0
  79. package/dist/lib/config/email.d.ts.map +1 -1
  80. package/dist/lib/config/email.js.map +1 -1
  81. package/dist/lib/database/entities.d.ts.map +1 -1
  82. package/dist/lib/database/entities.js +6 -0
  83. package/dist/lib/database/entities.js.map +1 -1
  84. package/dist/lib/openapi.d.ts +2 -0
  85. package/dist/lib/openapi.d.ts.map +1 -1
  86. package/dist/lib/openapi.js +36 -1
  87. package/dist/lib/openapi.js.map +1 -1
  88. package/dist/lib/request-ip.d.ts +4 -0
  89. package/dist/lib/request-ip.d.ts.map +1 -0
  90. package/dist/lib/request-ip.js +39 -0
  91. package/dist/lib/request-ip.js.map +1 -0
  92. package/dist/middleware/auth-budget.d.ts +3 -0
  93. package/dist/middleware/auth-budget.d.ts.map +1 -0
  94. package/dist/middleware/auth-budget.js +80 -0
  95. package/dist/middleware/auth-budget.js.map +1 -0
  96. package/dist/middleware/session.d.ts +23 -5
  97. package/dist/middleware/session.d.ts.map +1 -1
  98. package/dist/middleware/session.js +152 -12
  99. package/dist/middleware/session.js.map +1 -1
  100. package/dist/middleware/strict-input.d.ts +4 -0
  101. package/dist/middleware/strict-input.d.ts.map +1 -0
  102. package/dist/middleware/strict-input.js +144 -0
  103. package/dist/middleware/strict-input.js.map +1 -0
  104. package/dist/migrations/postgres/Migration20260910120000_api_security.d.ts +6 -0
  105. package/dist/migrations/postgres/Migration20260910120000_api_security.d.ts.map +1 -0
  106. package/dist/migrations/postgres/Migration20260910120000_api_security.js +20 -0
  107. package/dist/migrations/postgres/Migration20260910120000_api_security.js.map +1 -0
  108. package/dist/migrations/postgres/Migration20260910160000_security_followup.d.ts +6 -0
  109. package/dist/migrations/postgres/Migration20260910160000_security_followup.d.ts.map +1 -0
  110. package/dist/migrations/postgres/Migration20260910160000_security_followup.js +23 -0
  111. package/dist/migrations/postgres/Migration20260910160000_security_followup.js.map +1 -0
  112. package/dist/migrations/postgres/Migration20260910200000_authentication_epoch.d.ts +6 -0
  113. package/dist/migrations/postgres/Migration20260910200000_authentication_epoch.d.ts.map +1 -0
  114. package/dist/migrations/postgres/Migration20260910200000_authentication_epoch.js +28 -0
  115. package/dist/migrations/postgres/Migration20260910200000_authentication_epoch.js.map +1 -0
  116. package/dist/migrations/postgres/Migration20260910220000_flow_revocation.d.ts +6 -0
  117. package/dist/migrations/postgres/Migration20260910220000_flow_revocation.d.ts.map +1 -0
  118. package/dist/migrations/postgres/Migration20260910220000_flow_revocation.js +19 -0
  119. package/dist/migrations/postgres/Migration20260910220000_flow_revocation.js.map +1 -0
  120. package/dist/migrations/postgres/index.d.ts.map +1 -1
  121. package/dist/migrations/postgres/index.js +8 -0
  122. package/dist/migrations/postgres/index.js.map +1 -1
  123. package/dist/migrations/sqlite/Migration20260910120000_api_security.d.ts +6 -0
  124. package/dist/migrations/sqlite/Migration20260910120000_api_security.d.ts.map +1 -0
  125. package/dist/migrations/sqlite/Migration20260910120000_api_security.js +20 -0
  126. package/dist/migrations/sqlite/Migration20260910120000_api_security.js.map +1 -0
  127. package/dist/migrations/sqlite/Migration20260910160000_security_followup.d.ts +6 -0
  128. package/dist/migrations/sqlite/Migration20260910160000_security_followup.d.ts.map +1 -0
  129. package/dist/migrations/sqlite/Migration20260910160000_security_followup.js +23 -0
  130. package/dist/migrations/sqlite/Migration20260910160000_security_followup.js.map +1 -0
  131. package/dist/migrations/sqlite/Migration20260910200000_authentication_epoch.d.ts +8 -0
  132. package/dist/migrations/sqlite/Migration20260910200000_authentication_epoch.d.ts.map +1 -0
  133. package/dist/migrations/sqlite/Migration20260910200000_authentication_epoch.js +72 -0
  134. package/dist/migrations/sqlite/Migration20260910200000_authentication_epoch.js.map +1 -0
  135. package/dist/migrations/sqlite/Migration20260910220000_flow_revocation.d.ts +6 -0
  136. package/dist/migrations/sqlite/Migration20260910220000_flow_revocation.d.ts.map +1 -0
  137. package/dist/migrations/sqlite/Migration20260910220000_flow_revocation.js +19 -0
  138. package/dist/migrations/sqlite/Migration20260910220000_flow_revocation.js.map +1 -0
  139. package/dist/migrations/sqlite/index.d.ts.map +1 -1
  140. package/dist/migrations/sqlite/index.js +8 -0
  141. package/dist/migrations/sqlite/index.js.map +1 -1
  142. package/dist/repositories/email-verification.repository.d.ts +1 -0
  143. package/dist/repositories/email-verification.repository.d.ts.map +1 -1
  144. package/dist/repositories/email-verification.repository.js +8 -17
  145. package/dist/repositories/email-verification.repository.js.map +1 -1
  146. package/dist/repositories/oauth-code.repository.d.ts +2 -0
  147. package/dist/repositories/oauth-code.repository.d.ts.map +1 -1
  148. package/dist/repositories/oauth-code.repository.js +8 -0
  149. package/dist/repositories/oauth-code.repository.js.map +1 -1
  150. package/dist/repositories/oauth-device-code.repository.d.ts +3 -0
  151. package/dist/repositories/oauth-device-code.repository.d.ts.map +1 -1
  152. package/dist/repositories/oauth-device-code.repository.js +64 -29
  153. package/dist/repositories/oauth-device-code.repository.js.map +1 -1
  154. package/dist/repositories/password-reset.repository.d.ts +1 -0
  155. package/dist/repositories/password-reset.repository.d.ts.map +1 -1
  156. package/dist/repositories/password-reset.repository.js +6 -19
  157. package/dist/repositories/password-reset.repository.js.map +1 -1
  158. package/dist/repositories/pending-oauth-registration.repository.d.ts +2 -0
  159. package/dist/repositories/pending-oauth-registration.repository.d.ts.map +1 -1
  160. package/dist/repositories/pending-oauth-registration.repository.js +16 -2
  161. package/dist/repositories/pending-oauth-registration.repository.js.map +1 -1
  162. package/dist/repositories/terms.repository.d.ts.map +1 -1
  163. package/dist/repositories/terms.repository.js +1 -0
  164. package/dist/repositories/terms.repository.js.map +1 -1
  165. package/dist/repositories/user-consent.repository.d.ts.map +1 -1
  166. package/dist/repositories/user-consent.repository.js +9 -3
  167. package/dist/repositories/user-consent.repository.js.map +1 -1
  168. package/dist/repositories/user-terms-consent.repository.d.ts.map +1 -1
  169. package/dist/repositories/user-terms-consent.repository.js +2 -0
  170. package/dist/repositories/user-terms-consent.repository.js.map +1 -1
  171. package/dist/repositories/user-totp-recovery-code.repository.d.ts +24 -0
  172. package/dist/repositories/user-totp-recovery-code.repository.d.ts.map +1 -1
  173. package/dist/repositories/user-totp.repository.d.ts +36 -0
  174. package/dist/repositories/user-totp.repository.d.ts.map +1 -1
  175. package/dist/routes/.well-known/openid-configuration/get.d.ts.map +1 -1
  176. package/dist/routes/.well-known/openid-configuration/get.js +5 -1
  177. package/dist/routes/.well-known/openid-configuration/get.js.map +1 -1
  178. package/dist/routes/api/admin/console/index.d.ts.map +1 -1
  179. package/dist/routes/api/admin/console/index.js +29 -14
  180. package/dist/routes/api/admin/console/index.js.map +1 -1
  181. package/dist/routes/api/admin/me/get.js +2 -3
  182. package/dist/routes/api/admin/me/get.js.map +1 -1
  183. package/dist/routes/api/admin/users/index.d.ts.map +1 -1
  184. package/dist/routes/api/admin/users/index.js +59 -52
  185. package/dist/routes/api/admin/users/index.js.map +1 -1
  186. package/dist/routes/api/auth/accounts/select.post.d.ts +6 -6
  187. package/dist/routes/api/auth/email/resend/post.d.ts.map +1 -1
  188. package/dist/routes/api/auth/email/resend/post.js +3 -24
  189. package/dist/routes/api/auth/email/resend/post.js.map +1 -1
  190. package/dist/routes/api/auth/email/verify/post.d.ts.map +1 -1
  191. package/dist/routes/api/auth/email/verify/post.js +29 -12
  192. package/dist/routes/api/auth/email/verify/post.js.map +1 -1
  193. package/dist/routes/api/auth/login/post.d.ts.map +1 -1
  194. package/dist/routes/api/auth/login/post.js +4 -3
  195. package/dist/routes/api/auth/login/post.js.map +1 -1
  196. package/dist/routes/api/auth/passkey/verify/post.d.ts.map +1 -1
  197. package/dist/routes/api/auth/passkey/verify/post.js +25 -11
  198. package/dist/routes/api/auth/passkey/verify/post.js.map +1 -1
  199. package/dist/routes/api/auth/password/forgot/post.d.ts.map +1 -1
  200. package/dist/routes/api/auth/password/forgot/post.js +2 -19
  201. package/dist/routes/api/auth/password/forgot/post.js.map +1 -1
  202. package/dist/routes/api/auth/register/post.d.ts.map +1 -1
  203. package/dist/routes/api/auth/register/post.js +4 -3
  204. package/dist/routes/api/auth/register/post.js.map +1 -1
  205. package/dist/routes/api/auth/totp/recovery/verify/post.d.ts.map +1 -1
  206. package/dist/routes/api/auth/totp/recovery/verify/post.js +7 -5
  207. package/dist/routes/api/auth/totp/recovery/verify/post.js.map +1 -1
  208. package/dist/routes/api/auth/totp/verify/post.d.ts.map +1 -1
  209. package/dist/routes/api/auth/totp/verify/post.js +7 -5
  210. package/dist/routes/api/auth/totp/verify/post.js.map +1 -1
  211. package/dist/routes/api/consent/get.d.ts +3 -0
  212. package/dist/routes/api/consent/get.d.ts.map +1 -1
  213. package/dist/routes/api/consent/get.js +26 -4
  214. package/dist/routes/api/consent/get.js.map +1 -1
  215. package/dist/routes/api/consent/index.d.ts +3 -0
  216. package/dist/routes/api/consent/index.d.ts.map +1 -1
  217. package/dist/routes/api/consent/post.d.ts.map +1 -1
  218. package/dist/routes/api/consent/post.js +142 -114
  219. package/dist/routes/api/consent/post.js.map +1 -1
  220. package/dist/routes/api/docs/get.d.ts.map +1 -1
  221. package/dist/routes/api/docs/get.js +8 -1
  222. package/dist/routes/api/docs/get.js.map +1 -1
  223. package/dist/routes/api/index.d.ts +382 -379
  224. package/dist/routes/api/index.d.ts.map +1 -1
  225. package/dist/routes/api/oauth/_provider/authorize/get.d.ts.map +1 -1
  226. package/dist/routes/api/oauth/_provider/authorize/get.js +5 -1
  227. package/dist/routes/api/oauth/_provider/authorize/get.js.map +1 -1
  228. package/dist/routes/api/oauth/_provider/callback/get.d.ts.map +1 -1
  229. package/dist/routes/api/oauth/_provider/callback/get.js +30 -6
  230. package/dist/routes/api/oauth/_provider/callback/get.js.map +1 -1
  231. package/dist/routes/api/oauth/_provider/callback/post.d.ts +9 -9
  232. package/dist/routes/api/oauth/_provider/callback/post.d.ts.map +1 -1
  233. package/dist/routes/api/oauth/_provider/callback/post.js +31 -31
  234. package/dist/routes/api/oauth/_provider/callback/post.js.map +1 -1
  235. package/dist/routes/api/oauth/_provider/delete.d.ts.map +1 -1
  236. package/dist/routes/api/oauth/_provider/delete.js +14 -11
  237. package/dist/routes/api/oauth/_provider/delete.js.map +1 -1
  238. package/dist/routes/api/terms/consent/post.d.ts.map +1 -1
  239. package/dist/routes/api/terms/consent/post.js +59 -43
  240. package/dist/routes/api/terms/consent/post.js.map +1 -1
  241. package/dist/routes/api/user/delete.d.ts.map +1 -1
  242. package/dist/routes/api/user/delete.js +8 -8
  243. package/dist/routes/api/user/delete.js.map +1 -1
  244. package/dist/routes/api/user/passkeys/_id/delete.d.ts.map +1 -1
  245. package/dist/routes/api/user/passkeys/_id/delete.js +17 -29
  246. package/dist/routes/api/user/passkeys/_id/delete.js.map +1 -1
  247. package/dist/routes/api/user/passkeys/_id/patch.d.ts.map +1 -1
  248. package/dist/routes/api/user/passkeys/_id/patch.js +16 -13
  249. package/dist/routes/api/user/passkeys/_id/patch.js.map +1 -1
  250. package/dist/routes/api/user/passkeys/register/verify/post.d.ts.map +1 -1
  251. package/dist/routes/api/user/passkeys/register/verify/post.js +27 -19
  252. package/dist/routes/api/user/passkeys/register/verify/post.js.map +1 -1
  253. package/dist/routes/api/user/password/delete.d.ts.map +1 -1
  254. package/dist/routes/api/user/password/delete.js +13 -10
  255. package/dist/routes/api/user/password/delete.js.map +1 -1
  256. package/dist/routes/api/user/password/post.d.ts.map +1 -1
  257. package/dist/routes/api/user/password/post.js +13 -10
  258. package/dist/routes/api/user/password/post.js.map +1 -1
  259. package/dist/routes/api/user/password/put.d.ts.map +1 -1
  260. package/dist/routes/api/user/password/put.js +13 -10
  261. package/dist/routes/api/user/password/put.js.map +1 -1
  262. package/dist/routes/api/user/totp/confirm/post.d.ts.map +1 -1
  263. package/dist/routes/api/user/totp/confirm/post.js +33 -18
  264. package/dist/routes/api/user/totp/confirm/post.js.map +1 -1
  265. package/dist/routes/api/user/totp/delete.d.ts.map +1 -1
  266. package/dist/routes/api/user/totp/delete.js +13 -18
  267. package/dist/routes/api/user/totp/delete.js.map +1 -1
  268. package/dist/routes/api/user/totp/recovery/regenerate/post.d.ts.map +1 -1
  269. package/dist/routes/api/user/totp/recovery/regenerate/post.js +13 -10
  270. package/dist/routes/api/user/totp/recovery/regenerate/post.js.map +1 -1
  271. package/dist/routes/api/user/totp/setup/post.d.ts.map +1 -1
  272. package/dist/routes/api/user/totp/setup/post.js +13 -8
  273. package/dist/routes/api/user/totp/setup/post.js.map +1 -1
  274. package/dist/routes/api/user/totp/verify/post.d.ts.map +1 -1
  275. package/dist/routes/api/user/totp/verify/post.js +23 -12
  276. package/dist/routes/api/user/totp/verify/post.js.map +1 -1
  277. package/dist/routes/index.d.ts +243 -230
  278. package/dist/routes/index.d.ts.map +1 -1
  279. package/dist/routes/oauth/authorize/get.d.ts.map +1 -1
  280. package/dist/routes/oauth/authorize/get.js +12 -4
  281. package/dist/routes/oauth/authorize/get.js.map +1 -1
  282. package/dist/routes/oauth/device/get-post.d.ts +10 -0
  283. package/dist/routes/oauth/device/get-post.d.ts.map +1 -1
  284. package/dist/routes/oauth/device/get-post.js +32 -3
  285. package/dist/routes/oauth/device/get-post.js.map +1 -1
  286. package/dist/routes/oauth/device-authorization/post.d.ts.map +1 -1
  287. package/dist/routes/oauth/device-authorization/post.js +13 -7
  288. package/dist/routes/oauth/device-authorization/post.js.map +1 -1
  289. package/dist/routes/oauth/end-session/get.d.ts +9 -9
  290. package/dist/routes/oauth/end-session/get.d.ts.map +1 -1
  291. package/dist/routes/oauth/end-session/get.js +2 -3
  292. package/dist/routes/oauth/end-session/get.js.map +1 -1
  293. package/dist/routes/oauth/index.d.ts +19 -9
  294. package/dist/routes/oauth/index.d.ts.map +1 -1
  295. package/dist/routes/oauth/revoke/post.d.ts.map +1 -1
  296. package/dist/routes/oauth/revoke/post.js +10 -2
  297. package/dist/routes/oauth/revoke/post.js.map +1 -1
  298. package/dist/routes/oauth/token/post.d.ts.map +1 -1
  299. package/dist/routes/oauth/token/post.js +69 -57
  300. package/dist/routes/oauth/token/post.js.map +1 -1
  301. package/dist/schemas/error.d.ts +75 -0
  302. package/dist/schemas/error.d.ts.map +1 -1
  303. package/dist/schemas/error.js +3 -0
  304. package/dist/schemas/error.js.map +1 -1
  305. package/dist/schemas/field.d.ts.map +1 -1
  306. package/dist/schemas/field.js +3 -0
  307. package/dist/schemas/field.js.map +1 -1
  308. package/dist/seeders/config.seeder.d.ts +1 -1
  309. package/dist/seeders/config.seeder.d.ts.map +1 -1
  310. package/dist/seeders/config.seeder.js +100 -36
  311. package/dist/seeders/config.seeder.js.map +1 -1
  312. package/dist/services/admin-console.service.d.ts.map +1 -1
  313. package/dist/services/admin-console.service.js +137 -100
  314. package/dist/services/admin-console.service.js.map +1 -1
  315. package/dist/services/auth-budget.service.d.ts +6 -0
  316. package/dist/services/auth-budget.service.d.ts.map +1 -0
  317. package/dist/services/auth-budget.service.js +30 -0
  318. package/dist/services/auth-budget.service.js.map +1 -0
  319. package/dist/services/authentication-epoch.d.ts +5 -0
  320. package/dist/services/authentication-epoch.d.ts.map +1 -0
  321. package/dist/services/authentication-epoch.js +22 -0
  322. package/dist/services/authentication-epoch.js.map +1 -0
  323. package/dist/services/authorization-browser.service.d.ts +18 -0
  324. package/dist/services/authorization-browser.service.d.ts.map +1 -0
  325. package/dist/services/authorization-browser.service.js +28 -0
  326. package/dist/services/authorization-browser.service.js.map +1 -0
  327. package/dist/services/browser-security.service.d.ts +14 -0
  328. package/dist/services/browser-security.service.d.ts.map +1 -0
  329. package/dist/services/browser-security.service.js +85 -0
  330. package/dist/services/browser-security.service.js.map +1 -0
  331. package/dist/services/browser-session.service.d.ts +25 -0
  332. package/dist/services/browser-session.service.d.ts.map +1 -0
  333. package/dist/services/browser-session.service.js +102 -0
  334. package/dist/services/browser-session.service.js.map +1 -0
  335. package/dist/services/cleanup.service.d.ts +1 -0
  336. package/dist/services/cleanup.service.d.ts.map +1 -1
  337. package/dist/services/cleanup.service.js +31 -0
  338. package/dist/services/cleanup.service.js.map +1 -1
  339. package/dist/services/client-security.d.ts +641 -0
  340. package/dist/services/client-security.d.ts.map +1 -0
  341. package/dist/services/client-security.js +10 -0
  342. package/dist/services/client-security.js.map +1 -0
  343. package/dist/services/container.d.ts +2 -0
  344. package/dist/services/container.d.ts.map +1 -1
  345. package/dist/services/container.js +7 -3
  346. package/dist/services/container.js.map +1 -1
  347. package/dist/services/email.service.d.ts +2 -14
  348. package/dist/services/email.service.d.ts.map +1 -1
  349. package/dist/services/email.service.js +35 -29
  350. package/dist/services/email.service.js.map +1 -1
  351. package/dist/services/jwt.service.d.ts +1 -0
  352. package/dist/services/jwt.service.d.ts.map +1 -1
  353. package/dist/services/jwt.service.js +13 -1
  354. package/dist/services/jwt.service.js.map +1 -1
  355. package/dist/services/mail-queue.service.d.ts +24 -0
  356. package/dist/services/mail-queue.service.d.ts.map +1 -0
  357. package/dist/services/mail-queue.service.js +223 -0
  358. package/dist/services/mail-queue.service.js.map +1 -0
  359. package/dist/services/mikro.service.d.ts.map +1 -1
  360. package/dist/services/mikro.service.js +2 -0
  361. package/dist/services/mikro.service.js.map +1 -1
  362. package/dist/services/oauth-authorize.service.d.ts +6 -1
  363. package/dist/services/oauth-authorize.service.d.ts.map +1 -1
  364. package/dist/services/oauth-authorize.service.js +136 -77
  365. package/dist/services/oauth-authorize.service.js.map +1 -1
  366. package/dist/services/oauth-browser-security.service.d.ts +7 -0
  367. package/dist/services/oauth-browser-security.service.d.ts.map +1 -0
  368. package/dist/services/oauth-browser-security.service.js +67 -0
  369. package/dist/services/oauth-browser-security.service.js.map +1 -0
  370. package/dist/services/oauth-client.service.d.ts +24 -1
  371. package/dist/services/oauth-client.service.d.ts.map +1 -1
  372. package/dist/services/oauth-client.service.js +52 -13
  373. package/dist/services/oauth-client.service.js.map +1 -1
  374. package/dist/services/oauth-connect.service.d.ts +37 -3
  375. package/dist/services/oauth-connect.service.d.ts.map +1 -1
  376. package/dist/services/oauth-connect.service.js +236 -212
  377. package/dist/services/oauth-connect.service.js.map +1 -1
  378. package/dist/services/oauth-token.service.d.ts +6 -4
  379. package/dist/services/oauth-token.service.d.ts.map +1 -1
  380. package/dist/services/oauth-token.service.js +295 -209
  381. package/dist/services/oauth-token.service.js.map +1 -1
  382. package/dist/services/passkey.service.d.ts +26 -7
  383. package/dist/services/passkey.service.d.ts.map +1 -1
  384. package/dist/services/passkey.service.js +71 -42
  385. package/dist/services/passkey.service.js.map +1 -1
  386. package/dist/services/password-auth.service.d.ts +5 -1
  387. package/dist/services/password-auth.service.d.ts.map +1 -1
  388. package/dist/services/password-auth.service.js +79 -52
  389. package/dist/services/password-auth.service.js.map +1 -1
  390. package/dist/services/password-reset.service.d.ts.map +1 -1
  391. package/dist/services/password-reset.service.js +34 -15
  392. package/dist/services/password-reset.service.js.map +1 -1
  393. package/dist/services/security.service.d.ts +3 -1
  394. package/dist/services/security.service.d.ts.map +1 -1
  395. package/dist/services/security.service.js +11 -2
  396. package/dist/services/security.service.js.map +1 -1
  397. package/dist/services/terms-policy.service.d.ts +7 -0
  398. package/dist/services/terms-policy.service.d.ts.map +1 -0
  399. package/dist/services/terms-policy.service.js +26 -0
  400. package/dist/services/terms-policy.service.js.map +1 -0
  401. package/dist/services/terms.service.d.ts.map +1 -1
  402. package/dist/services/terms.service.js +3 -2
  403. package/dist/services/terms.service.js.map +1 -1
  404. package/dist/services/totp.service.d.ts +4 -5
  405. package/dist/services/totp.service.d.ts.map +1 -1
  406. package/dist/services/totp.service.js +116 -86
  407. package/dist/services/totp.service.js.map +1 -1
  408. package/dist/services/user-consent.service.d.ts +12 -0
  409. package/dist/services/user-consent.service.d.ts.map +1 -1
  410. package/dist/services/user-consent.service.js +19 -1
  411. package/dist/services/user-consent.service.js.map +1 -1
  412. package/dist/services/user-security.service.d.ts +15 -0
  413. package/dist/services/user-security.service.d.ts.map +1 -0
  414. package/dist/services/user-security.service.js +57 -0
  415. package/dist/services/user-security.service.js.map +1 -0
  416. package/dist/services/user.service.d.ts +6 -4
  417. package/dist/services/user.service.d.ts.map +1 -1
  418. package/dist/services/user.service.js +143 -121
  419. package/dist/services/user.service.js.map +1 -1
  420. package/frontend/client/assets/{auth-layout-B4h13HhN.js → auth-layout-sea6nww4.js} +1 -1
  421. package/frontend/client/assets/{auth-page-header-BVY4zRzF.js → auth-page-header-CV85AJLW.js} +1 -1
  422. package/frontend/client/assets/document-navigation-FZbb5ldf.js +1 -0
  423. package/frontend/client/assets/i18n-vfKY-byx.js +1 -0
  424. package/frontend/client/assets/language-selector-Jso2cQNI.js +1 -0
  425. package/frontend/client/assets/manifest-90703545.js +1 -0
  426. package/frontend/client/assets/oauth-search-DebNssaC.js +1 -0
  427. package/frontend/client/assets/{passkey-CWcdr7Vy.js → passkey-CJhT-7yO.js} +1 -1
  428. package/frontend/client/assets/{promise-EbDcmV0j.js → promise-BP9iSIs-.js} +1 -1
  429. package/frontend/client/assets/{root-C2SlHCkE.js → root-BkavuloG.js} +1 -1
  430. package/frontend/client/assets/{route-3gQ9Nsqa.js → route-B0udr9eT.js} +1 -1
  431. package/frontend/client/assets/route-B3Uv9aTa.js +1 -0
  432. package/frontend/client/assets/{route-DSD60oyb.js → route-B6hIfgxz.js} +1 -1
  433. package/frontend/client/assets/{route-DO38I3ML.js → route-BEWds2g-.js} +1 -1
  434. package/frontend/client/assets/route-Bm9LsorH.js +1 -0
  435. package/frontend/client/assets/route-Btv5Y69z.js +1 -0
  436. package/frontend/client/assets/route-BvyDzziE.js +1 -0
  437. package/frontend/client/assets/route-C6kG9u7j.js +1 -0
  438. package/frontend/client/assets/route-C7C3Z0vI.js +1 -0
  439. package/frontend/client/assets/{route-DQpLeFuG.js → route-CVyefM3x.js} +1 -1
  440. package/frontend/client/assets/{route-CkpB3-_U.js → route-CXth2Wqz.js} +1 -1
  441. package/frontend/client/assets/{route-9FLiqn21.js → route-Clxc1C2d.js} +1 -1
  442. package/frontend/client/assets/route-D0IqOurp.js +1 -0
  443. package/frontend/client/assets/route-DHmYUnJR.js +1 -0
  444. package/frontend/client/assets/route-DTjZQ_Fl.js +1 -0
  445. package/frontend/client/assets/route-D_dTeu1b.js +1 -0
  446. package/frontend/client/assets/{route-CrswLAAa.js → route-Dj8gVemC.js} +1 -1
  447. package/frontend/client/assets/{route-BUM2hTU8.js → route-DnhPlHOi.js} +1 -1
  448. package/frontend/client/assets/route-FY92YQhF.js +1 -0
  449. package/frontend/client/assets/{route-DH6kQz8L.js → route-PcLpZHbT.js} +1 -1
  450. package/frontend/client/assets/{route-bKG0wKRh.js → route-qpE7i22X.js} +1 -1
  451. package/frontend/client/assets/{route-3IIrVTOK.js → route-wK89gmoS.js} +1 -1
  452. package/frontend/client/assets/security-error-message-CMsTsiWf.js +1 -0
  453. package/frontend/client/assets/{shell-header-bar-Bg85QIAq.js → shell-header-bar-DRx10tE5.js} +1 -1
  454. package/frontend/client/assets/{terms-DV0oDTRf.js → terms-Bu9Itxxs.js} +1 -1
  455. package/frontend/client/assets/{use-totp-setup-D7XZ6Nos.js → use-totp-setup-CoOXWOcT.js} +1 -1
  456. package/frontend/server/assets/{hydration-Cvbp7-6s.js → hydration-DWMjpNav.js} +1 -1
  457. package/frontend/server/assets/{root-loader.server-DaTcVcNU.js → root-loader.server-B4OqoLGG.js} +3 -3
  458. package/frontend/server/assets/{route-runtime.server-CEa264cW.js → route-runtime.server-03_pjVDT.js} +1 -1
  459. package/frontend/server/assets/{session-QqvIIQ6R.js → session-sJkmzJie.js} +51 -57
  460. package/frontend/server/index.js +337 -403
  461. package/package.json +1 -1
  462. package/frontend/client/assets/authorization-context-banner-az4f8FCY.js +0 -1
  463. package/frontend/client/assets/document-navigation-Cnp3Alf0.js +0 -1
  464. package/frontend/client/assets/i18n-CMepi_uj.js +0 -1
  465. package/frontend/client/assets/language-selector-Chn-k7Pw.js +0 -1
  466. package/frontend/client/assets/manifest-8c4a603f.js +0 -1
  467. package/frontend/client/assets/oauth-search-DybZ6VWp.js +0 -1
  468. package/frontend/client/assets/route-BFU8OK2a.js +0 -1
  469. package/frontend/client/assets/route-BKI6LDOW.js +0 -1
  470. package/frontend/client/assets/route-CusK9Y2K.js +0 -1
  471. package/frontend/client/assets/route-DEVG2czp.js +0 -1
  472. package/frontend/client/assets/route-DjCJn53Y.js +0 -1
  473. package/frontend/client/assets/route-E-_SSP-x.js +0 -1
  474. package/frontend/client/assets/route-J9z_OG4L.js +0 -1
  475. package/frontend/client/assets/route-LjqDZz5f.js +0 -1
  476. package/frontend/client/assets/route-N586tYcn.js +0 -1
  477. package/frontend/client/assets/route-nHjY3_n0.js +0 -1
  478. package/frontend/client/assets/route-sHm4cfOd.js +0 -1
@@ -52,7 +52,7 @@ export const tokenPost = new Hono().post('/token', describeRoute({
52
52
  ])),
53
53
  },
54
54
  },
55
- description: 'Bad request, unsupported grant type, missing parameters, or disabled client',
55
+ description: 'Bad request, unsupported grant type, missing parameters, disabled client, or a code/device grant invalidated by a client generation change',
56
56
  },
57
57
  401: {
58
58
  content: {
@@ -91,8 +91,9 @@ export const tokenPost = new Hono().post('/token', describeRoute({
91
91
  }
92
92
  // 2. Confidential clients must authenticate; public clients must not.
93
93
  const clientSecret = basicCredentials?.clientSecret ?? body.client_secret;
94
+ let authentication;
94
95
  try {
95
- await oauthClientService.validateClientSecretIfRequired(clientId, clientSecret);
96
+ authentication = await oauthClientService.validateClientSecretIfRequired(clientId, clientSecret);
96
97
  }
97
98
  catch (err) {
98
99
  if (authorizationHeader) {
@@ -105,67 +106,78 @@ export const tokenPost = new Hono().post('/token', describeRoute({
105
106
  throw new e.InvalidAuthorizationRequest.Error();
106
107
  }
107
108
  oauthClientService.validateGrantType(client, grantType);
108
- // 3. Handle grant type
109
- if (grantType === 'authorization_code') {
110
- if (!body.code) {
111
- throw new e.MissingAuthorizationCode.Error();
109
+ try {
110
+ // 3. Handle grant type
111
+ if (grantType === 'authorization_code') {
112
+ if (!body.code) {
113
+ throw new e.MissingAuthorizationCode.Error();
114
+ }
115
+ if (!body.redirect_uri) {
116
+ throw new e.MissingRedirectUri.Error();
117
+ }
118
+ const tokens = await oauthTokenService.exchangeAuthorizationCode({
119
+ authentication,
120
+ code: body.code,
121
+ redirectUri: body.redirect_uri,
122
+ clientId,
123
+ codeVerifier: body.code_verifier ?? undefined,
124
+ });
125
+ c.header('Cache-Control', 'no-store');
126
+ c.header('Pragma', 'no-cache');
127
+ return c.json(tokens, 200);
112
128
  }
113
- if (!body.redirect_uri) {
114
- throw new e.MissingRedirectUri.Error();
129
+ if (grantType === 'refresh_token') {
130
+ if (!body.refresh_token) {
131
+ throw new e.MissingRefreshToken.Error();
132
+ }
133
+ const tokens = await oauthTokenService.refreshAccessToken({
134
+ authentication,
135
+ refreshToken: body.refresh_token,
136
+ clientId,
137
+ scope: body.scope ? body.scope.split(' ') : undefined,
138
+ });
139
+ c.header('Cache-Control', 'no-store');
140
+ c.header('Pragma', 'no-cache');
141
+ return c.json(tokens, 200);
115
142
  }
116
- const tokens = await oauthTokenService.exchangeAuthorizationCode({
117
- code: body.code,
118
- redirectUri: body.redirect_uri,
119
- clientId,
120
- codeVerifier: body.code_verifier ?? undefined,
121
- });
122
- c.header('Cache-Control', 'no-store');
123
- c.header('Pragma', 'no-cache');
124
- return c.json(tokens, 200);
125
- }
126
- if (grantType === 'refresh_token') {
127
- if (!body.refresh_token) {
128
- throw new e.MissingRefreshToken.Error();
143
+ if (grantType === 'client_credentials') {
144
+ await oauthClientService.validateConfidentialClient(clientId);
145
+ const requestedScopes = body.scope ? body.scope.split(' ') : [];
146
+ const endUserScopes = requestedScopes.filter((scope) => END_USER_SCOPES_FOR_CLIENT_CREDENTIALS.has(scope));
147
+ if (endUserScopes.length > 0) {
148
+ throw new e.InvalidScope.Error({
149
+ invalidScopes: endUserScopes,
150
+ });
151
+ }
152
+ oauthClientService.validateScopes(client, requestedScopes);
153
+ const tokens = await oauthTokenService.issueClientCredentialsToken({
154
+ authentication,
155
+ clientId,
156
+ scope: requestedScopes,
157
+ });
158
+ c.header('Cache-Control', 'no-store');
159
+ c.header('Pragma', 'no-cache');
160
+ return c.json(tokens, 200);
129
161
  }
130
- const tokens = await oauthTokenService.refreshAccessToken({
131
- refreshToken: body.refresh_token,
132
- clientId,
133
- scope: body.scope ? body.scope.split(' ') : undefined,
134
- });
135
- c.header('Cache-Control', 'no-store');
136
- c.header('Pragma', 'no-cache');
137
- return c.json(tokens, 200);
138
- }
139
- if (grantType === 'client_credentials') {
140
- await oauthClientService.validateConfidentialClient(clientId);
141
- const requestedScopes = body.scope ? body.scope.split(' ') : [];
142
- const endUserScopes = requestedScopes.filter((scope) => END_USER_SCOPES_FOR_CLIENT_CREDENTIALS.has(scope));
143
- if (endUserScopes.length > 0) {
144
- throw new e.InvalidScope.Error({
145
- invalidScopes: endUserScopes,
162
+ if (grantType === 'urn:ietf:params:oauth:grant-type:device_code') {
163
+ if (!body.device_code) {
164
+ throw new e.MissingDeviceCode.Error();
165
+ }
166
+ const tokens = await oauthTokenService.exchangeDeviceCode({
167
+ authentication,
168
+ deviceCode: body.device_code,
169
+ clientId,
146
170
  });
171
+ c.header('Cache-Control', 'no-store');
172
+ c.header('Pragma', 'no-cache');
173
+ return c.json(tokens, 200);
147
174
  }
148
- oauthClientService.validateScopes(client, requestedScopes);
149
- const tokens = await oauthTokenService.issueClientCredentialsToken({
150
- clientId,
151
- scope: requestedScopes,
152
- });
153
- c.header('Cache-Control', 'no-store');
154
- c.header('Pragma', 'no-cache');
155
- return c.json(tokens, 200);
175
+ throw new e.UnsupportedGrantType.Error();
156
176
  }
157
- if (grantType === 'urn:ietf:params:oauth:grant-type:device_code') {
158
- if (!body.device_code) {
159
- throw new e.MissingDeviceCode.Error();
160
- }
161
- const tokens = await oauthTokenService.exchangeDeviceCode({
162
- deviceCode: body.device_code,
163
- clientId,
164
- });
165
- c.header('Cache-Control', 'no-store');
166
- c.header('Pragma', 'no-cache');
167
- return c.json(tokens, 200);
177
+ catch (error) {
178
+ if (authorizationHeader)
179
+ setBasicClientAuthChallengeIfInvalidClientCredentials(c, error);
180
+ throw error;
168
181
  }
169
- throw new e.UnsupportedGrantType.Error();
170
182
  });
171
183
  //# sourceMappingURL=post.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"post.js","sourceRoot":"","sources":["../../../../src/routes/oauth/token/post.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"post.js","sourceRoot":"","sources":["../../../../src/routes/oauth/token/post.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,81 @@ export declare class IssuaryError<STATUS extends ContentfulStatusCode = Contentf
11
11
  };
12
12
  }
13
13
  export declare const e: {
14
+ ConcurrentSecurityChange: {
15
+ Status: 409;
16
+ Error: {
17
+ new (): {
18
+ cause?: unknown;
19
+ name: string;
20
+ stack?: string;
21
+ readonly status: 409;
22
+ readonly code: "CONCURRENT_SECURITY_CHANGE";
23
+ readonly message: "Security settings changed concurrently. Reload and try again.";
24
+ toJson(): {
25
+ code: "CONCURRENT_SECURITY_CHANGE";
26
+ message: "Security settings changed concurrently. Reload and try again.";
27
+ };
28
+ };
29
+ isError(error: unknown): error is Error;
30
+ captureStackTrace(targetObject: object, constructorOpt?: Function): void;
31
+ prepareStackTrace(err: Error, stackTraces: NodeJS.CallSite[]): any;
32
+ stackTraceLimit: number;
33
+ };
34
+ Schema: z.ZodObject<{
35
+ code: z.ZodLiteral<"CONCURRENT_SECURITY_CHANGE">;
36
+ message: z.ZodLiteral<"Security settings changed concurrently. Reload and try again.">;
37
+ }, z.core.$strip>;
38
+ };
39
+ TooManyRequests: {
40
+ Status: 429;
41
+ Error: {
42
+ new (): {
43
+ cause?: unknown;
44
+ name: string;
45
+ stack?: string;
46
+ readonly status: 429;
47
+ readonly code: "TOO_MANY_REQUESTS";
48
+ readonly message: "Too many attempts. Try again later.";
49
+ toJson(): {
50
+ code: "TOO_MANY_REQUESTS";
51
+ message: "Too many attempts. Try again later.";
52
+ };
53
+ };
54
+ isError(error: unknown): error is Error;
55
+ captureStackTrace(targetObject: object, constructorOpt?: Function): void;
56
+ prepareStackTrace(err: Error, stackTraces: NodeJS.CallSite[]): any;
57
+ stackTraceLimit: number;
58
+ };
59
+ Schema: z.ZodObject<{
60
+ code: z.ZodLiteral<"TOO_MANY_REQUESTS">;
61
+ message: z.ZodLiteral<"Too many attempts. Try again later.">;
62
+ }, z.core.$strip>;
63
+ };
64
+ RequestBodyTooLarge: {
65
+ Status: 413;
66
+ Error: {
67
+ new (): {
68
+ cause?: unknown;
69
+ name: string;
70
+ stack?: string;
71
+ readonly status: 413;
72
+ readonly code: "REQUEST_BODY_TOO_LARGE";
73
+ readonly message: "Request body is too large.";
74
+ toJson(): {
75
+ code: "REQUEST_BODY_TOO_LARGE";
76
+ message: "Request body is too large.";
77
+ };
78
+ };
79
+ isError(error: unknown): error is Error;
80
+ captureStackTrace(targetObject: object, constructorOpt?: Function): void;
81
+ prepareStackTrace(err: Error, stackTraces: NodeJS.CallSite[]): any;
82
+ stackTraceLimit: number;
83
+ };
84
+ Schema: z.ZodObject<{
85
+ code: z.ZodLiteral<"REQUEST_BODY_TOO_LARGE">;
86
+ message: z.ZodLiteral<"Request body is too large.">;
87
+ }, z.core.$strip>;
88
+ };
14
89
  InvalidEmailOrPassword: {
15
90
  Status: 401;
16
91
  Error: {
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/schemas/error.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/schemas/error.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,9 @@ const createErrorWithData = (status, code, message, dataSchema) => {
54
54
  };
55
55
  };
56
56
  export const e = {
57
+ ConcurrentSecurityChange: createError(409, 'CONCURRENT_SECURITY_CHANGE', 'Security settings changed concurrently. Reload and try again.'),
58
+ TooManyRequests: createError(429, 'TOO_MANY_REQUESTS', 'Too many attempts. Try again later.'),
59
+ RequestBodyTooLarge: createError(413, 'REQUEST_BODY_TOO_LARGE', 'Request body is too large.'),
57
60
  InvalidEmailOrPassword: createError(401, 'INVALID_EMAIL_OR_PASSWORD', 'The provided email or password is incorrect.'),
58
61
  EmailAlreadyExists: createError(409, 'EMAIL_ALREADY_EXISTS', 'The provided email is already registered.'),
59
62
  RegistrationDisabled: createError(403, 'REGISTRATION_DISABLED', 'Public registration is disabled.'),
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/schemas/error.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/schemas/error.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../src/schemas/field.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,CAAC;IAEZ,IAAI;IAGJ,OAAO;IACP,SAAS;IACT,YAAY;IAKZ,eAAe;IAKf,aAAa;IAGb,QAAQ;IACR,cAAc;IAKd,YAAY;IACZ,WAAW;IACX,KAAK;IACL,YAAY;IAKZ,KAAK;IAKL,KAAK;IAKL,aAAa;IACb,mBAAmB;;;;IAGnB,YAAY;IASZ,SAAS;;;;;;IAQT,iBAAiB;IAKjB,KAAK;IAIL,aAAa;IAOb,MAAM;IACN,OAAO;;;;;;IAGP,MAAM;IAON,eAAe;;;;IAGf,YAAY;IAIZ,gBAAgB;;;;;IAGhB,SAAS;IAeT,YAAY;IAOZ;;;OAGG;IACH,cAAc;IAgCd,QAAQ;IAOR,YAAY;IAcZ,eAAe;IACf,mBAAmB;IACnB,gBAAgB;IAChB,WAAW;IACX,iBAAiB;;;;IAGjB,sBAAsB;;;;;;;;;IAGtB,2BAA2B;;;;;IAG3B,uBAAuB;IAGvB,uBAAuB;;;;IAGvB,uBAAuB;;;;;CAGxB,CAAC"}
1
+ {"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../src/schemas/field.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,CAAC;IAEZ,IAAI;IAGJ,OAAO;IACP,SAAS;IACT,YAAY;IAKZ,eAAe;IAKf,aAAa;IAGb,QAAQ;IACR,cAAc;IAKd,YAAY;IACZ,WAAW;IACX,KAAK;IACL,YAAY;IAKZ,KAAK;IAKL,KAAK;IAKL,aAAa;IACb,mBAAmB;;;;IAGnB,YAAY;IASZ,SAAS;;;;;;IAQT,iBAAiB;IAKjB,KAAK;IAIL,aAAa;IAOb,MAAM;IACN,OAAO;;;;;;IAGP,MAAM;IAON,eAAe;;;;IAGf,YAAY;IAIZ,gBAAgB;;;;;IAGhB,SAAS;IAkBT,YAAY;IAOZ;;;OAGG;IACH,cAAc;IAgCd,QAAQ;IAOR,YAAY;IAcZ,eAAe;IACf,mBAAmB;IACnB,gBAAgB;IAChB,WAAW;IACX,iBAAiB;;;;IAGjB,sBAAsB;;;;;;;;;IAGtB,2BAA2B;;;;;IAG3B,uBAAuB;IAGvB,uBAAuB;;;;IAGvB,uBAAuB;;;;;CAGxB,CAAC"}
@@ -101,6 +101,9 @@ export const f = {
101
101
  .max(2000)
102
102
  .refine((value) => value.startsWith('/') &&
103
103
  !value.startsWith('//') &&
104
+ !value.includes('\\') &&
105
+ new URL(value, 'https://return.invalid').origin ===
106
+ 'https://return.invalid' &&
104
107
  !value.includes('\r') &&
105
108
  !value.includes('\n'), { message: 'Return URL must be a local path' })
106
109
  .describe('Return URL or path to redirect after completion'),
@@ -1 +1 @@
1
- {"version":3,"file":"field.js","sourceRoot":"","sources":["../../src/schemas/field.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"field.js","sourceRoot":"","sources":["../../src/schemas/field.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { EntityManager } from '@mikro-orm/core';
1
+ import { type EntityManager } from '@mikro-orm/core';
2
2
  import type { IssuaryRuntimeConfig } from '../lib/config/index.ts';
3
3
  import type { SecurityService } from '../services/security.service.ts';
4
4
  export type ConfigSeedMode = 'if-changed' | 'always' | 'skip';
@@ -1 +1 @@
1
- {"version":3,"file":"config.seeder.d.ts","sourceRoot":"","sources":["../../src/seeders/config.seeder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAYrD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAKvE,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,QAAQ,GAAG,MAAM,CAAC;AA+E9D,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,aAAa,EACjB,MAAM,EAAE,oBAAoB,EAC5B,eAAe,EAAE,eAAe,EAChC,IAAI,GAAE,cAA6B,GAClC,OAAO,CAAC,OAAO,CAAC,CA6ClB;AAED;;;;;;;;;;;;GAYG;AAEH;;GAEG;AACH,wBAAsB,UAAU,CAC9B,EAAE,EAAE,aAAa,EACjB,MAAM,EAAE,oBAAoB,EAC5B,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,IAAI,CAAC,CAIf"}
1
+ {"version":3,"file":"config.seeder.d.ts","sourceRoot":"","sources":["../../src/seeders/config.seeder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAO,MAAM,iBAAiB,CAAC;AAY1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAGnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AASvE,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,QAAQ,GAAG,MAAM,CAAC;AA6F9D,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,aAAa,EACjB,MAAM,EAAE,oBAAoB,EAC5B,eAAe,EAAE,eAAe,EAChC,IAAI,GAAE,cAA6B,GAClC,OAAO,CAAC,OAAO,CAAC,CAMlB;AAiDD;;;;;;;;;;;;GAYG;AAEH;;GAEG;AACH,wBAAsB,UAAU,CAC9B,EAAE,EAAE,aAAa,EACjB,MAAM,EAAE,oBAAoB,EAC5B,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,IAAI,CAAC,CASf"}
@@ -1,11 +1,15 @@
1
+ import { raw } from '@mikro-orm/core';
1
2
  import { BootstrapStateEntitySchema } from '../entities/bootstrap-state.entity.js';
2
3
  import { OAuthClientEntitySchema } from '../entities/oauth-client.entity.js';
3
4
  import { TermsEntitySchema } from '../entities/terms.entity.js';
4
5
  import { TermsContentEntitySchema } from '../entities/terms-content.entity.js';
5
6
  import { UserEntity } from '../entities/user.entity.js';
6
7
  import { fromBase64Url, stringToBytes, toArrayBuffer, toBase64Url, } from '../lib/base64url.js';
8
+ import { invalidateUserAuthentication } from '../services/authentication-epoch.js';
9
+ import { lockOAuthClient } from '../services/client-security.js';
10
+ import { initializeTermsPolicy, lockTermsPolicy, } from '../services/terms-policy.service.js';
7
11
  const CONFIG_SEED_STATE_ID = 'config-seed';
8
- const CONFIG_SEED_FINGERPRINT_VERSION = 3;
12
+ const CONFIG_SEED_FINGERPRINT_VERSION = 4;
9
13
  function canonicalJson(value) {
10
14
  if (value === null) {
11
15
  return 'null';
@@ -52,20 +56,33 @@ function isMissingBootstrapStateTableError(err) {
52
56
  normalized.includes('does not exist') ||
53
57
  normalized.includes('not found')));
54
58
  }
59
+ async function lockBootstrap(em) {
60
+ const now = new Date();
61
+ await em.upsert(BootstrapStateEntitySchema, {
62
+ id: 'config-seed-lock',
63
+ value: crypto.randomUUID(),
64
+ created_at: now,
65
+ updated_at: now,
66
+ }, { onConflictFields: ['id'], onConflictExcludeFields: ['created_at'] });
67
+ }
55
68
  export async function seedConfigIfNeeded(em, config, securityService, mode = 'if-changed') {
69
+ if (mode === 'skip')
70
+ return false;
71
+ return em.transactional(async (transaction) => {
72
+ await lockBootstrap(transaction);
73
+ return seedConfigIfNeededLocked(transaction, config, securityService, mode);
74
+ });
75
+ }
76
+ async function seedConfigIfNeededLocked(em, config, securityService, mode = 'if-changed') {
56
77
  if (mode === 'skip') {
57
78
  return false;
58
79
  }
59
- if (mode === 'always') {
60
- await seedConfig(em, config, securityService);
61
- return true;
62
- }
63
80
  const fingerprint = await createConfigSeedFingerprint(config);
64
81
  try {
65
82
  const state = await em.findOne(BootstrapStateEntitySchema, {
66
83
  id: CONFIG_SEED_STATE_ID,
67
84
  });
68
- if (state?.value === fingerprint) {
85
+ if (mode !== 'always' && state?.value === fingerprint) {
69
86
  return false;
70
87
  }
71
88
  }
@@ -106,9 +123,14 @@ export async function seedConfigIfNeeded(em, config, securityService, mode = 'if
106
123
  * Run config seeder with the given config
107
124
  */
108
125
  export async function seedConfig(em, config, securityService) {
109
- await syncTerms(em, config);
110
- await syncUsers(em, config, securityService);
111
- await syncOAuthClients(em, config, securityService);
126
+ await em.transactional(async (transaction) => {
127
+ await lockBootstrap(transaction);
128
+ await initializeTermsPolicy(transaction);
129
+ await lockTermsPolicy(transaction, 'write');
130
+ await syncTerms(transaction, config);
131
+ await syncUsers(transaction, config, securityService);
132
+ await syncOAuthClients(transaction, config, securityService);
133
+ });
112
134
  }
113
135
  /**
114
136
  * Sync terms from config.yaml to database
@@ -172,38 +194,71 @@ async function syncTerms(em, config) {
172
194
  */
173
195
  async function syncUsers(em, config, securityService) {
174
196
  const now = new Date();
175
- for (const configUser of config.users) {
176
- const hashedPassword = await securityService.hashPassword(configUser.password);
177
- // Use upsert for atomic INSERT ON CONFLICT DO UPDATE
178
- // This is cluster-safe: concurrent instances won't cause race conditions
179
- await em.upsert(UserEntity, {
197
+ for (const configUser of [...config.users].sort((a, b) => a.sub.localeCompare(b.sub))) {
198
+ await em.nativeUpdate(UserEntity, { sub: configUser.sub }, { security_revision: raw('security_revision + 1') });
199
+ // The bootstrap write lock is held before this read.
200
+ const user = await em.findOne(UserEntity, { sub: configUser.sub }, { populate: ['password_hash'], refresh: true });
201
+ if (user && user.managed_by !== 'config')
202
+ throw new Error('Config subject conflicts with a database-managed user');
203
+ const samePassword = user?.password_hash
204
+ ? await securityService.verifyPassword(user.password_hash, configUser.password)
205
+ : false;
206
+ const changed = !user ||
207
+ !samePassword ||
208
+ user.email !== configUser.email ||
209
+ user.role !== (configUser.role ?? 'user') ||
210
+ user.deleted_at !== null;
211
+ if (user && changed)
212
+ await invalidateUserAuthentication(em, user);
213
+ const data = {
180
214
  sub: configUser.sub,
181
215
  email: configUser.email,
182
- password_hash: hashedPassword,
216
+ password_hash: samePassword
217
+ ? user?.password_hash
218
+ : await securityService.hashPassword(configUser.password),
183
219
  email_verified: true,
184
220
  managed_by: 'config',
185
221
  role: configUser.role ?? 'user',
186
- created_at: now,
187
- updated_at: now,
188
- }, {
189
- onConflictFields: ['sub'],
190
- onConflictAction: 'merge',
191
- // Exclude sub and created_at from merge (don't update primary key or creation time)
192
- onConflictExcludeFields: ['sub', 'created_at'],
193
- });
222
+ deleted_at: null,
223
+ ...(changed
224
+ ? {
225
+ sessions_invalidated_at: now,
226
+ token_epoch: user?.token_epoch ?? crypto.randomUUID(),
227
+ }
228
+ : {}),
229
+ };
230
+ if (user) {
231
+ await em.nativeUpdate(UserEntity, { sub: user.sub }, {
232
+ ...data,
233
+ security_revision: raw('security_revision + 1'),
234
+ updated_at: now,
235
+ });
236
+ }
237
+ else {
238
+ await em.insert(UserEntity, {
239
+ ...data,
240
+ created_at: now,
241
+ updated_at: now,
242
+ });
243
+ }
194
244
  }
195
- // Remove config-managed users that are no longer in config
196
- const configUserSubs = config.users.map((user) => user.sub);
197
- if (configUserSubs.length > 0) {
198
- await em.nativeDelete(UserEntity, {
199
- managed_by: 'config',
200
- sub: { $nin: configUserSubs },
245
+ const subjects = config.users.map((user) => user.sub);
246
+ const removed = await em.find(UserEntity, {
247
+ managed_by: 'config',
248
+ deleted_at: null,
249
+ ...(subjects.length ? { sub: { $nin: subjects } } : {}),
250
+ });
251
+ for (const candidate of removed.sort((a, b) => a.sub.localeCompare(b.sub))) {
252
+ await em.nativeUpdate(UserEntity, { sub: candidate.sub }, { security_revision: raw('security_revision + 1') });
253
+ const user = await em.findOneOrFail(UserEntity, { sub: candidate.sub }, { refresh: true });
254
+ await invalidateUserAuthentication(em, user);
255
+ await em.nativeUpdate(UserEntity, { sub: user.sub }, {
256
+ deleted_at: now,
257
+ sessions_invalidated_at: now,
258
+ token_epoch: user.token_epoch,
259
+ security_revision: raw('security_revision + 1'),
201
260
  });
202
261
  }
203
- else {
204
- // If no config users, remove all config-managed users
205
- await em.nativeDelete(UserEntity, { managed_by: 'config' });
206
- }
207
262
  }
208
263
  /**
209
264
  * Sync OAuth clients from config.yaml to database
@@ -211,10 +266,18 @@ async function syncUsers(em, config, securityService) {
211
266
  */
212
267
  async function syncOAuthClients(em, config, securityService) {
213
268
  const now = new Date();
214
- for (const client of config.clients) {
269
+ for (const client of [...config.clients].sort((a, b) => a.id.localeCompare(b.id))) {
270
+ const current = await lockOAuthClient(em, client.id);
271
+ if (current)
272
+ await em.populate(current, ['clientSecretHash']);
215
273
  // Public clients (PKCE-only) don't have client_secret
274
+ const sameSecret = current?.clientSecretHash && client.client_secret
275
+ ? await securityService.verifyClientSecret(current.clientSecretHash, client.client_secret)
276
+ : false;
216
277
  const hashedSecret = client.client_secret
217
- ? await securityService.hashClientSecret(client.client_secret)
278
+ ? sameSecret
279
+ ? current?.clientSecretHash
280
+ : await securityService.hashClientSecret(client.client_secret)
218
281
  : null;
219
282
  // Use upsert for atomic INSERT ON CONFLICT DO UPDATE
220
283
  // This is cluster-safe: concurrent instances won't cause race conditions
@@ -252,7 +315,8 @@ async function syncOAuthClients(em, config, securityService) {
252
315
  deletedAt: null,
253
316
  ...(configClientIds.length > 0 && { id: { $nin: configClientIds } }),
254
317
  });
255
- for (const client of removedClients) {
318
+ for (const client of removedClients.sort((a, b) => a.id.localeCompare(b.id))) {
319
+ await lockOAuthClient(em, client.id);
256
320
  client.deletedAt = now;
257
321
  client.tokenEpoch = crypto.randomUUID();
258
322
  }