@authup/server-core 1.0.0-beta.63 → 1.0.0-beta.64

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 (710) hide show
  1. package/dist/adapters/database/data-source/options/module.d.ts +1 -0
  2. package/dist/adapters/database/data-source/options/module.d.ts.map +1 -1
  3. package/dist/adapters/database/data-source/options/module.mjs +33 -4
  4. package/dist/adapters/database/data-source/options/module.mjs.map +1 -1
  5. package/dist/adapters/database/domains/client/entity.d.ts +1 -2
  6. package/dist/adapters/database/domains/client/entity.d.ts.map +1 -1
  7. package/dist/adapters/database/domains/client/entity.mjs +7 -14
  8. package/dist/adapters/database/domains/client/entity.mjs.map +1 -1
  9. package/dist/adapters/database/domains/identity-provider-attribute/subscriber.d.ts +2 -1
  10. package/dist/adapters/database/domains/identity-provider-attribute/subscriber.d.ts.map +1 -1
  11. package/dist/adapters/database/domains/identity-provider-attribute/subscriber.mjs +2 -2
  12. package/dist/adapters/database/domains/identity-provider-attribute/subscriber.mjs.map +1 -1
  13. package/dist/adapters/database/domains/session/entity.d.ts +8 -0
  14. package/dist/adapters/database/domains/session/entity.d.ts.map +1 -1
  15. package/dist/adapters/database/domains/session/entity.mjs +19 -0
  16. package/dist/adapters/database/domains/session/entity.mjs.map +1 -1
  17. package/dist/adapters/database/domains/user/entity.d.ts +1 -0
  18. package/dist/adapters/database/domains/user/entity.d.ts.map +1 -1
  19. package/dist/adapters/database/domains/user/entity.mjs +6 -0
  20. package/dist/adapters/database/domains/user/entity.mjs.map +1 -1
  21. package/dist/adapters/database/extra-attribute-repository/repository.mjs +1 -1
  22. package/dist/adapters/database/extra-attribute-repository/repository.mjs.map +1 -1
  23. package/dist/adapters/database/extra-attribute-repository/tree/adapter.mjs +4 -2
  24. package/dist/adapters/database/extra-attribute-repository/tree/adapter.mjs.map +1 -1
  25. package/dist/adapters/database/extra-attribute-repository/tree/repository.mjs +1 -1
  26. package/dist/adapters/database/extra-attribute-repository/tree/repository.mjs.map +1 -1
  27. package/dist/adapters/database/index.mjs +3 -3
  28. package/dist/adapters/database/migrations/mysql/1787571998009-SessionUserAndClientColumns.d.ts +56 -0
  29. package/dist/adapters/database/migrations/mysql/1787571998009-SessionUserAndClientColumns.d.ts.map +1 -0
  30. package/dist/adapters/database/migrations/mysql/1787571998009-SessionUserAndClientColumns.mjs +105 -0
  31. package/dist/adapters/database/migrations/mysql/1787571998009-SessionUserAndClientColumns.mjs.map +1 -0
  32. package/dist/adapters/database/migrations/postgres/1787571998009-SessionUserAndClientColumns.d.ts +56 -0
  33. package/dist/adapters/database/migrations/postgres/1787571998009-SessionUserAndClientColumns.d.ts.map +1 -0
  34. package/dist/adapters/database/migrations/postgres/1787571998009-SessionUserAndClientColumns.mjs +104 -0
  35. package/dist/adapters/database/migrations/postgres/1787571998009-SessionUserAndClientColumns.mjs.map +1 -0
  36. package/dist/adapters/database/subscriber/module.d.ts +6 -2
  37. package/dist/adapters/database/subscriber/module.d.ts.map +1 -1
  38. package/dist/adapters/database/subscriber/module.mjs +9 -5
  39. package/dist/adapters/database/subscriber/module.mjs.map +1 -1
  40. package/dist/adapters/http/adapters/oauth2/authorization/module.mjs +1 -1
  41. package/dist/adapters/http/adapters/oauth2/authorization/module.mjs.map +1 -1
  42. package/dist/adapters/http/constants.d.ts +18 -0
  43. package/dist/adapters/http/constants.d.ts.map +1 -0
  44. package/dist/adapters/http/constants.mjs +23 -0
  45. package/dist/adapters/http/constants.mjs.map +1 -0
  46. package/dist/adapters/http/controllers/entities/identity-provider/module.mjs +3 -3
  47. package/dist/adapters/http/controllers/entities/identity-provider/module.mjs.map +1 -1
  48. package/dist/adapters/http/controllers/entities/identity-provider/types.d.ts +6 -0
  49. package/dist/adapters/http/controllers/entities/identity-provider/types.d.ts.map +1 -1
  50. package/dist/adapters/http/controllers/entities/realm/module.d.ts.map +1 -1
  51. package/dist/adapters/http/controllers/entities/realm/module.mjs +2 -0
  52. package/dist/adapters/http/controllers/entities/realm/module.mjs.map +1 -1
  53. package/dist/adapters/http/controllers/entities/session/module.d.ts +33 -1
  54. package/dist/adapters/http/controllers/entities/session/module.d.ts.map +1 -1
  55. package/dist/adapters/http/controllers/entities/session/module.mjs +74 -0
  56. package/dist/adapters/http/controllers/entities/session/module.mjs.map +1 -1
  57. package/dist/adapters/http/controllers/index.mjs +3 -1
  58. package/dist/adapters/http/controllers/workflows/account/index.d.ts +1 -0
  59. package/dist/adapters/http/controllers/workflows/account/index.d.ts.map +1 -1
  60. package/dist/adapters/http/controllers/workflows/account/module.d.ts +25 -16
  61. package/dist/adapters/http/controllers/workflows/account/module.d.ts.map +1 -1
  62. package/dist/adapters/http/controllers/workflows/account/module.mjs +40 -17
  63. package/dist/adapters/http/controllers/workflows/account/module.mjs.map +1 -1
  64. package/dist/adapters/http/controllers/workflows/account/types.d.ts +33 -0
  65. package/dist/adapters/http/controllers/workflows/account/types.d.ts.map +1 -0
  66. package/dist/adapters/http/controllers/workflows/activate/module.d.ts +8 -4
  67. package/dist/adapters/http/controllers/workflows/activate/module.d.ts.map +1 -1
  68. package/dist/adapters/http/controllers/workflows/activate/module.mjs +7 -9
  69. package/dist/adapters/http/controllers/workflows/activate/module.mjs.map +1 -1
  70. package/dist/adapters/http/controllers/workflows/admin/index.d.ts.map +1 -0
  71. package/dist/adapters/http/controllers/workflows/admin/index.mjs +5 -0
  72. package/dist/adapters/http/controllers/workflows/admin/module.d.ts +30 -0
  73. package/dist/adapters/http/controllers/workflows/admin/module.d.ts.map +1 -0
  74. package/dist/adapters/http/controllers/workflows/admin/module.mjs +88 -0
  75. package/dist/adapters/http/controllers/workflows/admin/module.mjs.map +1 -0
  76. package/dist/adapters/http/controllers/workflows/admin/types.d.ts +14 -0
  77. package/dist/adapters/http/controllers/workflows/admin/types.d.ts.map +1 -0
  78. package/dist/adapters/http/controllers/workflows/auth-console.d.ts +16 -0
  79. package/dist/adapters/http/controllers/workflows/auth-console.d.ts.map +1 -0
  80. package/dist/adapters/http/controllers/workflows/auth-console.mjs +32 -0
  81. package/dist/adapters/http/controllers/workflows/auth-console.mjs.map +1 -0
  82. package/dist/adapters/http/controllers/workflows/authorize/module.d.ts +16 -1
  83. package/dist/adapters/http/controllers/workflows/authorize/module.d.ts.map +1 -1
  84. package/dist/adapters/http/controllers/workflows/authorize/module.mjs +40 -22
  85. package/dist/adapters/http/controllers/workflows/authorize/module.mjs.map +1 -1
  86. package/dist/adapters/http/controllers/workflows/authorize/types.d.ts +5 -0
  87. package/dist/adapters/http/controllers/workflows/authorize/types.d.ts.map +1 -1
  88. package/dist/adapters/http/controllers/workflows/console-login/index.d.ts +3 -0
  89. package/dist/adapters/http/controllers/workflows/console-login/index.d.ts.map +1 -0
  90. package/dist/adapters/http/controllers/workflows/console-login/index.mjs +5 -0
  91. package/dist/adapters/http/controllers/workflows/console-login/module.d.ts +83 -0
  92. package/dist/adapters/http/controllers/workflows/console-login/module.d.ts.map +1 -0
  93. package/dist/adapters/http/controllers/workflows/console-login/module.mjs +230 -0
  94. package/dist/adapters/http/controllers/workflows/console-login/module.mjs.map +1 -0
  95. package/dist/adapters/http/controllers/workflows/console-login/types.d.ts +58 -0
  96. package/dist/adapters/http/controllers/workflows/console-login/types.d.ts.map +1 -0
  97. package/dist/adapters/http/controllers/workflows/index.d.ts +2 -0
  98. package/dist/adapters/http/controllers/workflows/index.d.ts.map +1 -1
  99. package/dist/adapters/http/controllers/workflows/index.mjs +5 -1
  100. package/dist/adapters/http/controllers/workflows/logout/module.d.ts +32 -3
  101. package/dist/adapters/http/controllers/workflows/logout/module.d.ts.map +1 -1
  102. package/dist/adapters/http/controllers/workflows/logout/module.mjs +48 -24
  103. package/dist/adapters/http/controllers/workflows/logout/module.mjs.map +1 -1
  104. package/dist/adapters/http/controllers/workflows/logout/types.d.ts +1 -1
  105. package/dist/adapters/http/controllers/workflows/logout/types.d.ts.map +1 -1
  106. package/dist/adapters/http/controllers/workflows/password-forgot/module.d.ts +8 -4
  107. package/dist/adapters/http/controllers/workflows/password-forgot/module.d.ts.map +1 -1
  108. package/dist/adapters/http/controllers/workflows/password-forgot/module.mjs +7 -9
  109. package/dist/adapters/http/controllers/workflows/password-forgot/module.mjs.map +1 -1
  110. package/dist/adapters/http/controllers/workflows/password-reset/module.d.ts +8 -4
  111. package/dist/adapters/http/controllers/workflows/password-reset/module.d.ts.map +1 -1
  112. package/dist/adapters/http/controllers/workflows/password-reset/module.mjs +7 -10
  113. package/dist/adapters/http/controllers/workflows/password-reset/module.mjs.map +1 -1
  114. package/dist/adapters/http/controllers/workflows/register/module.d.ts +8 -4
  115. package/dist/adapters/http/controllers/workflows/register/module.d.ts.map +1 -1
  116. package/dist/adapters/http/controllers/workflows/register/module.mjs +7 -9
  117. package/dist/adapters/http/controllers/workflows/register/module.mjs.map +1 -1
  118. package/dist/adapters/http/controllers/workflows/status/module.mjs +1 -1
  119. package/dist/adapters/http/controllers/workflows/token/module.d.ts +45 -2
  120. package/dist/adapters/http/controllers/workflows/token/module.d.ts.map +1 -1
  121. package/dist/adapters/http/controllers/workflows/token/module.mjs +102 -24
  122. package/dist/adapters/http/controllers/workflows/token/module.mjs.map +1 -1
  123. package/dist/adapters/http/cookie/index.d.ts +2 -0
  124. package/dist/adapters/http/cookie/index.d.ts.map +1 -0
  125. package/dist/adapters/http/cookie/index.mjs +5 -0
  126. package/dist/adapters/http/cookie/session.d.ts +35 -0
  127. package/dist/adapters/http/cookie/session.d.ts.map +1 -0
  128. package/dist/adapters/http/cookie/session.mjs +62 -0
  129. package/dist/adapters/http/cookie/session.mjs.map +1 -0
  130. package/dist/adapters/http/index.d.ts +2 -0
  131. package/dist/adapters/http/index.d.ts.map +1 -1
  132. package/dist/adapters/http/index.mjs +20 -16
  133. package/dist/adapters/http/internal-client/index.d.ts +3 -0
  134. package/dist/adapters/http/internal-client/index.d.ts.map +1 -0
  135. package/dist/adapters/http/internal-client/index.mjs +5 -0
  136. package/dist/adapters/http/internal-client/module.d.ts +21 -0
  137. package/dist/adapters/http/internal-client/module.d.ts.map +1 -0
  138. package/dist/adapters/http/{ui/auth-console/http-client.mjs → internal-client/module.mjs} +16 -15
  139. package/dist/adapters/http/internal-client/module.mjs.map +1 -0
  140. package/dist/adapters/http/internal-client/types.d.ts +13 -0
  141. package/dist/adapters/http/internal-client/types.d.ts.map +1 -0
  142. package/dist/adapters/http/middleware/built-in/authorization/index.d.ts +1 -0
  143. package/dist/adapters/http/middleware/built-in/authorization/index.d.ts.map +1 -1
  144. package/dist/adapters/http/middleware/built-in/authorization/index.mjs +2 -1
  145. package/dist/adapters/http/middleware/built-in/authorization/issuance.d.ts +45 -0
  146. package/dist/adapters/http/middleware/built-in/authorization/issuance.d.ts.map +1 -0
  147. package/dist/adapters/http/middleware/built-in/authorization/issuance.mjs +61 -0
  148. package/dist/adapters/http/middleware/built-in/authorization/issuance.mjs.map +1 -0
  149. package/dist/adapters/http/middleware/built-in/authorization/module.d.ts +26 -2
  150. package/dist/adapters/http/middleware/built-in/authorization/module.d.ts.map +1 -1
  151. package/dist/adapters/http/middleware/built-in/authorization/module.mjs +67 -1
  152. package/dist/adapters/http/middleware/built-in/authorization/module.mjs.map +1 -1
  153. package/dist/adapters/http/middleware/built-in/authorization/types.d.ts +21 -1
  154. package/dist/adapters/http/middleware/built-in/authorization/types.d.ts.map +1 -1
  155. package/dist/adapters/http/middleware/built-in/basic.d.ts +2 -2
  156. package/dist/adapters/http/middleware/built-in/basic.d.ts.map +1 -1
  157. package/dist/adapters/http/middleware/built-in/basic.mjs.map +1 -1
  158. package/dist/adapters/http/middleware/built-in/cors.d.ts +8 -2
  159. package/dist/adapters/http/middleware/built-in/cors.d.ts.map +1 -1
  160. package/dist/adapters/http/middleware/built-in/cors.mjs +20 -3
  161. package/dist/adapters/http/middleware/built-in/cors.mjs.map +1 -1
  162. package/dist/adapters/http/middleware/built-in/error.d.ts +2 -2
  163. package/dist/adapters/http/middleware/built-in/error.d.ts.map +1 -1
  164. package/dist/adapters/http/middleware/built-in/error.mjs.map +1 -1
  165. package/dist/adapters/http/middleware/built-in/index.d.ts +1 -4
  166. package/dist/adapters/http/middleware/built-in/index.d.ts.map +1 -1
  167. package/dist/adapters/http/middleware/built-in/index.mjs +3 -4
  168. package/dist/adapters/http/middleware/built-in/internal-http-client.d.ts +17 -0
  169. package/dist/adapters/http/middleware/built-in/internal-http-client.d.ts.map +1 -0
  170. package/dist/adapters/http/middleware/built-in/internal-http-client.mjs +27 -0
  171. package/dist/adapters/http/middleware/built-in/internal-http-client.mjs.map +1 -0
  172. package/dist/adapters/http/middleware/built-in/logger.mjs +1 -1
  173. package/dist/adapters/http/middleware/built-in/logger.mjs.map +1 -1
  174. package/dist/adapters/http/middleware/built-in/prometheus.d.ts +6 -5
  175. package/dist/adapters/http/middleware/built-in/prometheus.d.ts.map +1 -1
  176. package/dist/adapters/http/middleware/built-in/prometheus.mjs +3 -2
  177. package/dist/adapters/http/middleware/built-in/prometheus.mjs.map +1 -1
  178. package/dist/adapters/http/middleware/built-in/rate-limit.d.ts +2 -2
  179. package/dist/adapters/http/middleware/built-in/rate-limit.d.ts.map +1 -1
  180. package/dist/adapters/http/middleware/built-in/rate-limit.mjs +15 -0
  181. package/dist/adapters/http/middleware/built-in/rate-limit.mjs.map +1 -1
  182. package/dist/adapters/http/middleware/index.mjs +3 -4
  183. package/dist/adapters/http/request/constants.d.ts +1 -1
  184. package/dist/adapters/http/request/constants.d.ts.map +1 -1
  185. package/dist/adapters/http/request/constants.mjs +1 -5
  186. package/dist/adapters/http/request/constants.mjs.map +1 -1
  187. package/dist/adapters/http/request/helpers/index.d.ts +1 -1
  188. package/dist/adapters/http/request/helpers/index.d.ts.map +1 -1
  189. package/dist/adapters/http/request/helpers/index.mjs +2 -2
  190. package/dist/adapters/http/request/helpers/locale.d.ts +2 -1
  191. package/dist/adapters/http/request/helpers/locale.d.ts.map +1 -1
  192. package/dist/adapters/http/request/helpers/locale.mjs +1 -1
  193. package/dist/adapters/http/request/helpers/locale.mjs.map +1 -1
  194. package/dist/adapters/http/request/helpers/same-origin.d.ts +38 -0
  195. package/dist/adapters/http/request/helpers/same-origin.d.ts.map +1 -0
  196. package/dist/adapters/http/request/helpers/same-origin.mjs +68 -0
  197. package/dist/adapters/http/request/helpers/same-origin.mjs.map +1 -0
  198. package/dist/adapters/http/request/index.mjs +2 -2
  199. package/dist/adapters/http/request/permission/module.mjs +1 -1
  200. package/dist/adapters/http/request/permission/module.mjs.map +1 -1
  201. package/dist/adapters/http/request/types.d.ts +1 -2
  202. package/dist/adapters/http/request/types.d.ts.map +1 -1
  203. package/dist/adapters/shared/ldap/module.d.ts.map +1 -1
  204. package/dist/adapters/shared/ldap/module.mjs +4 -1
  205. package/dist/adapters/shared/ldap/module.mjs.map +1 -1
  206. package/dist/app/builder.d.ts +4 -4
  207. package/dist/app/builder.d.ts.map +1 -1
  208. package/dist/app/builder.mjs +7 -4
  209. package/dist/app/builder.mjs.map +1 -1
  210. package/dist/app/factory.d.ts +10 -0
  211. package/dist/app/factory.d.ts.map +1 -1
  212. package/dist/app/factory.mjs +26 -2
  213. package/dist/app/factory.mjs.map +1 -1
  214. package/dist/app/index.mjs +17 -19
  215. package/dist/app/modules/authentication/module.d.ts.map +1 -1
  216. package/dist/app/modules/authentication/module.mjs +15 -2
  217. package/dist/app/modules/authentication/module.mjs.map +1 -1
  218. package/dist/app/modules/authentication/repositories/session.d.ts +4 -1
  219. package/dist/app/modules/authentication/repositories/session.d.ts.map +1 -1
  220. package/dist/app/modules/authentication/repositories/session.mjs +20 -3
  221. package/dist/app/modules/authentication/repositories/session.mjs.map +1 -1
  222. package/dist/app/modules/components/index.d.ts +1 -0
  223. package/dist/app/modules/components/index.d.ts.map +1 -1
  224. package/dist/app/modules/components/module.d.ts +3 -1
  225. package/dist/app/modules/components/module.d.ts.map +1 -1
  226. package/dist/app/modules/components/module.mjs +26 -7
  227. package/dist/app/modules/components/module.mjs.map +1 -1
  228. package/dist/app/modules/components/types.d.ts +11 -0
  229. package/dist/app/modules/components/types.d.ts.map +1 -0
  230. package/dist/app/modules/config/app-origins.d.ts +10 -0
  231. package/dist/app/modules/config/app-origins.d.ts.map +1 -0
  232. package/dist/app/modules/config/app-origins.mjs +21 -0
  233. package/dist/app/modules/config/app-origins.mjs.map +1 -0
  234. package/dist/app/modules/config/constants.d.ts +23 -50
  235. package/dist/app/modules/config/constants.d.ts.map +1 -1
  236. package/dist/app/modules/config/constants.mjs +34 -51
  237. package/dist/app/modules/config/constants.mjs.map +1 -1
  238. package/dist/app/modules/config/index.d.ts +2 -3
  239. package/dist/app/modules/config/index.d.ts.map +1 -1
  240. package/dist/app/modules/config/index.mjs +4 -8
  241. package/dist/app/modules/config/module.d.ts +2 -2
  242. package/dist/app/modules/config/module.d.ts.map +1 -1
  243. package/dist/app/modules/config/module.mjs +1 -1
  244. package/dist/app/modules/config/module.mjs.map +1 -1
  245. package/dist/app/modules/config/read.d.ts +29 -0
  246. package/dist/app/modules/config/read.d.ts.map +1 -0
  247. package/dist/app/modules/config/read.mjs +65 -0
  248. package/dist/app/modules/config/read.mjs.map +1 -0
  249. package/dist/app/modules/config/types.d.ts +30 -405
  250. package/dist/app/modules/config/types.d.ts.map +1 -1
  251. package/dist/app/modules/config/validator.d.ts.map +1 -1
  252. package/dist/app/modules/config/validator.mjs +3 -87
  253. package/dist/app/modules/config/validator.mjs.map +1 -1
  254. package/dist/app/modules/database/index.d.ts +1 -0
  255. package/dist/app/modules/database/index.d.ts.map +1 -1
  256. package/dist/app/modules/database/index.mjs +2 -1
  257. package/dist/app/modules/database/migration.d.ts +33 -0
  258. package/dist/app/modules/database/migration.d.ts.map +1 -0
  259. package/dist/app/modules/database/migration.mjs +52 -0
  260. package/dist/app/modules/database/migration.mjs.map +1 -0
  261. package/dist/app/modules/database/module.d.ts.map +1 -1
  262. package/dist/app/modules/database/module.mjs +12 -6
  263. package/dist/app/modules/database/module.mjs.map +1 -1
  264. package/dist/app/modules/database/repositories/client/repository.d.ts +6 -1
  265. package/dist/app/modules/database/repositories/client/repository.d.ts.map +1 -1
  266. package/dist/app/modules/database/repositories/client/repository.mjs +21 -4
  267. package/dist/app/modules/database/repositories/client/repository.mjs.map +1 -1
  268. package/dist/app/modules/database/repositories/event/repository.d.ts +29 -2
  269. package/dist/app/modules/database/repositories/event/repository.d.ts.map +1 -1
  270. package/dist/app/modules/database/repositories/event/repository.mjs +42 -24
  271. package/dist/app/modules/database/repositories/event/repository.mjs.map +1 -1
  272. package/dist/app/modules/database/repositories/helpers.d.ts +24 -1
  273. package/dist/app/modules/database/repositories/helpers.d.ts.map +1 -1
  274. package/dist/app/modules/database/repositories/helpers.mjs +38 -1
  275. package/dist/app/modules/database/repositories/helpers.mjs.map +1 -1
  276. package/dist/app/modules/database/repositories/identity-provider/repository.mjs +1 -1
  277. package/dist/app/modules/database/repositories/identity-provider-account/repository.mjs +4 -2
  278. package/dist/app/modules/database/repositories/identity-provider-account/repository.mjs.map +1 -1
  279. package/dist/app/modules/database/repositories/key/repository.mjs +1 -1
  280. package/dist/app/modules/database/repositories/permission/repository.mjs +1 -1
  281. package/dist/app/modules/database/repositories/policy/repository.mjs +1 -1
  282. package/dist/app/modules/database/repositories/role/repository.mjs +1 -1
  283. package/dist/app/modules/database/repositories/scope/repository.mjs +1 -1
  284. package/dist/app/modules/database/repositories/trust-anchor/repository.mjs +1 -1
  285. package/dist/app/modules/database/repositories/user/repository.d.ts +7 -2
  286. package/dist/app/modules/database/repositories/user/repository.d.ts.map +1 -1
  287. package/dist/app/modules/database/repositories/user/repository.mjs +21 -4
  288. package/dist/app/modules/database/repositories/user/repository.mjs.map +1 -1
  289. package/dist/app/modules/http/constants.d.ts +3 -1
  290. package/dist/app/modules/http/constants.d.ts.map +1 -1
  291. package/dist/app/modules/http/constants.mjs +3 -2
  292. package/dist/app/modules/http/constants.mjs.map +1 -1
  293. package/dist/app/modules/http/module.d.ts +30 -9
  294. package/dist/app/modules/http/module.d.ts.map +1 -1
  295. package/dist/app/modules/http/module.mjs +31 -33
  296. package/dist/app/modules/http/module.mjs.map +1 -1
  297. package/dist/app/modules/http/modules/controller.d.ts +4 -3
  298. package/dist/app/modules/http/modules/controller.d.ts.map +1 -1
  299. package/dist/app/modules/http/modules/controller.mjs +65 -36
  300. package/dist/app/modules/http/modules/controller.mjs.map +1 -1
  301. package/dist/app/modules/http/modules/middleware.d.ts +13 -22
  302. package/dist/app/modules/http/modules/middleware.d.ts.map +1 -1
  303. package/dist/app/modules/http/modules/middleware.mjs +20 -36
  304. package/dist/app/modules/http/modules/middleware.mjs.map +1 -1
  305. package/dist/app/modules/identity/module.mjs +4 -4
  306. package/dist/app/modules/identity/repositories/client.mjs +4 -2
  307. package/dist/app/modules/identity/repositories/client.mjs.map +1 -1
  308. package/dist/app/modules/identity/repositories/user.mjs +4 -2
  309. package/dist/app/modules/identity/repositories/user.mjs.map +1 -1
  310. package/dist/app/modules/index.mjs +21 -23
  311. package/dist/app/modules/logger/module.mjs +1 -1
  312. package/dist/app/modules/logger/module.mjs.map +1 -1
  313. package/dist/app/modules/mail/module.d.ts.map +1 -1
  314. package/dist/app/modules/mail/module.mjs.map +1 -1
  315. package/dist/app/modules/oauth2/constants.d.ts +2 -1
  316. package/dist/app/modules/oauth2/constants.d.ts.map +1 -1
  317. package/dist/app/modules/oauth2/constants.mjs +1 -0
  318. package/dist/app/modules/oauth2/constants.mjs.map +1 -1
  319. package/dist/app/modules/oauth2/module.d.ts.map +1 -1
  320. package/dist/app/modules/oauth2/module.mjs +9 -4
  321. package/dist/app/modules/oauth2/module.mjs.map +1 -1
  322. package/dist/app/modules/oauth2/repositories/client/repository.mjs +4 -2
  323. package/dist/app/modules/oauth2/repositories/client/repository.mjs.map +1 -1
  324. package/dist/app/modules/oauth2/repositories/consent/repository.d.ts.map +1 -1
  325. package/dist/app/modules/oauth2/repositories/consent/repository.mjs +3 -2
  326. package/dist/app/modules/oauth2/repositories/consent/repository.mjs.map +1 -1
  327. package/dist/app/modules/oauth2/repositories/console-login/index.d.ts +2 -0
  328. package/dist/app/modules/oauth2/repositories/console-login/index.d.ts.map +1 -0
  329. package/dist/app/modules/oauth2/repositories/console-login/index.mjs +5 -0
  330. package/dist/app/modules/oauth2/repositories/console-login/store.d.ts +19 -0
  331. package/dist/app/modules/oauth2/repositories/console-login/store.d.ts.map +1 -0
  332. package/dist/app/modules/oauth2/repositories/console-login/store.mjs +47 -0
  333. package/dist/app/modules/oauth2/repositories/console-login/store.mjs.map +1 -0
  334. package/dist/app/modules/oauth2/repositories/constants.d.ts +1 -0
  335. package/dist/app/modules/oauth2/repositories/constants.d.ts.map +1 -1
  336. package/dist/app/modules/oauth2/repositories/constants.mjs +1 -0
  337. package/dist/app/modules/oauth2/repositories/constants.mjs.map +1 -1
  338. package/dist/app/modules/oauth2/repositories/index.d.ts +1 -0
  339. package/dist/app/modules/oauth2/repositories/index.d.ts.map +1 -1
  340. package/dist/app/modules/oauth2/repositories/index.mjs +3 -1
  341. package/dist/app/modules/oauth2/repositories/session-token/repository.d.ts +2 -2
  342. package/dist/app/modules/oauth2/repositories/session-token/repository.d.ts.map +1 -1
  343. package/dist/app/modules/oauth2/repositories/session-token/repository.mjs +5 -3
  344. package/dist/app/modules/oauth2/repositories/session-token/repository.mjs.map +1 -1
  345. package/dist/app/modules/provisioning/module.d.ts.map +1 -1
  346. package/dist/app/modules/provisioning/module.mjs +5 -6
  347. package/dist/app/modules/provisioning/module.mjs.map +1 -1
  348. package/dist/app/modules/provisioning/sources/composite/module.d.ts.map +1 -1
  349. package/dist/app/modules/provisioning/sources/composite/module.mjs +2 -1
  350. package/dist/app/modules/provisioning/sources/composite/module.mjs.map +1 -1
  351. package/dist/app/modules/provisioning/sources/default/module.d.ts.map +1 -1
  352. package/dist/app/modules/provisioning/sources/default/module.mjs +2 -1
  353. package/dist/app/modules/provisioning/sources/default/module.mjs.map +1 -1
  354. package/dist/app/modules/runtime/module.d.ts.map +1 -1
  355. package/dist/app/modules/runtime/module.mjs +2 -1
  356. package/dist/app/modules/runtime/module.mjs.map +1 -1
  357. package/dist/app/types.d.ts +16 -0
  358. package/dist/app/types.d.ts.map +1 -1
  359. package/dist/cli/commands/config.d.ts +40 -0
  360. package/dist/cli/commands/config.d.ts.map +1 -0
  361. package/dist/cli/commands/config.mjs +65 -0
  362. package/dist/cli/commands/config.mjs.map +1 -0
  363. package/dist/cli/commands/healthcheck.d.ts +3 -2
  364. package/dist/cli/commands/healthcheck.d.ts.map +1 -1
  365. package/dist/cli/commands/healthcheck.mjs +6 -3
  366. package/dist/cli/commands/healthcheck.mjs.map +1 -1
  367. package/dist/cli/commands/index.d.ts +3 -0
  368. package/dist/cli/commands/index.d.ts.map +1 -1
  369. package/dist/cli/commands/index.mjs +3 -1
  370. package/dist/cli/commands/migration.d.ts +3 -10
  371. package/dist/cli/commands/migration.d.ts.map +1 -1
  372. package/dist/cli/commands/migration.mjs +17 -9
  373. package/dist/cli/commands/migration.mjs.map +1 -1
  374. package/dist/cli/commands/shutdown.d.ts +16 -0
  375. package/dist/cli/commands/shutdown.d.ts.map +1 -0
  376. package/dist/cli/commands/shutdown.mjs +41 -0
  377. package/dist/cli/commands/shutdown.mjs.map +1 -0
  378. package/dist/cli/commands/start.d.ts +3 -2
  379. package/dist/cli/commands/start.d.ts.map +1 -1
  380. package/dist/cli/commands/start.mjs +3 -21
  381. package/dist/cli/commands/start.mjs.map +1 -1
  382. package/dist/cli/commands/types.d.ts.map +1 -0
  383. package/dist/cli/index.d.ts +8 -0
  384. package/dist/cli/index.d.ts.map +1 -1
  385. package/dist/cli/index.mjs.map +1 -1
  386. package/dist/cli/module.d.ts +0 -2
  387. package/dist/cli/module.d.ts.map +1 -1
  388. package/dist/cli/module.mjs +4 -3
  389. package/dist/cli/module.mjs.map +1 -1
  390. package/dist/components/oauth2-cleaner/module.d.ts +2 -2
  391. package/dist/components/oauth2-cleaner/module.d.ts.map +1 -1
  392. package/dist/components/oauth2-cleaner/module.mjs +10 -7
  393. package/dist/components/oauth2-cleaner/module.mjs.map +1 -1
  394. package/dist/core/authentication/index.mjs +2 -1
  395. package/dist/core/authentication/session/constants.d.ts +10 -0
  396. package/dist/core/authentication/session/constants.d.ts.map +1 -0
  397. package/dist/core/authentication/session/constants.mjs +16 -0
  398. package/dist/core/authentication/session/constants.mjs.map +1 -0
  399. package/dist/core/authentication/session/index.d.ts +1 -0
  400. package/dist/core/authentication/session/index.d.ts.map +1 -1
  401. package/dist/core/authentication/session/index.mjs +2 -1
  402. package/dist/core/authentication/session/module.d.ts +2 -1
  403. package/dist/core/authentication/session/module.d.ts.map +1 -1
  404. package/dist/core/authentication/session/module.mjs +7 -1
  405. package/dist/core/authentication/session/module.mjs.map +1 -1
  406. package/dist/core/authentication/session/types.d.ts +70 -1
  407. package/dist/core/authentication/session/types.d.ts.map +1 -1
  408. package/dist/core/authentication/session/types.mjs.map +1 -1
  409. package/dist/core/entities/client/schema.d.ts.map +1 -1
  410. package/dist/core/entities/client/schema.mjs +1 -2
  411. package/dist/core/entities/client/schema.mjs.map +1 -1
  412. package/dist/core/entities/client/service.d.ts.map +1 -1
  413. package/dist/core/entities/client/service.mjs +15 -1
  414. package/dist/core/entities/client/service.mjs.map +1 -1
  415. package/dist/core/entities/client/system-clients.d.ts +0 -5
  416. package/dist/core/entities/client/system-clients.d.ts.map +1 -1
  417. package/dist/core/entities/client/system-clients.mjs +0 -6
  418. package/dist/core/entities/client/system-clients.mjs.map +1 -1
  419. package/dist/core/entities/client/types.d.ts +12 -0
  420. package/dist/core/entities/client/types.d.ts.map +1 -1
  421. package/dist/core/entities/client-permission/service.mjs +1 -1
  422. package/dist/core/entities/client-permission/service.mjs.map +1 -1
  423. package/dist/core/entities/event/constants.d.ts +1 -6
  424. package/dist/core/entities/event/constants.d.ts.map +1 -1
  425. package/dist/core/entities/event/constants.mjs +1 -5
  426. package/dist/core/entities/event/constants.mjs.map +1 -1
  427. package/dist/core/entities/event/entity-event-handler.d.ts.map +1 -1
  428. package/dist/core/entities/event/entity-event-handler.mjs +3 -2
  429. package/dist/core/entities/event/entity-event-handler.mjs.map +1 -1
  430. package/dist/core/entities/event/service.d.ts.map +1 -1
  431. package/dist/core/entities/event/service.mjs +3 -3
  432. package/dist/core/entities/event/service.mjs.map +1 -1
  433. package/dist/core/entities/event/types.d.ts +15 -1
  434. package/dist/core/entities/event/types.d.ts.map +1 -1
  435. package/dist/core/entities/permission/service.mjs +1 -2
  436. package/dist/core/entities/permission/service.mjs.map +1 -1
  437. package/dist/core/entities/role-permission/service.mjs +1 -1
  438. package/dist/core/entities/role-permission/service.mjs.map +1 -1
  439. package/dist/core/entities/session/service.d.ts +13 -1
  440. package/dist/core/entities/session/service.d.ts.map +1 -1
  441. package/dist/core/entities/session/service.mjs +19 -16
  442. package/dist/core/entities/session/service.mjs.map +1 -1
  443. package/dist/core/entities/user/schema.d.ts.map +1 -1
  444. package/dist/core/entities/user/schema.mjs +1 -0
  445. package/dist/core/entities/user/schema.mjs.map +1 -1
  446. package/dist/core/entities/user/service.d.ts.map +1 -1
  447. package/dist/core/entities/user/service.mjs +21 -1
  448. package/dist/core/entities/user/service.mjs.map +1 -1
  449. package/dist/core/entities/user/types.d.ts +12 -0
  450. package/dist/core/entities/user/types.d.ts.map +1 -1
  451. package/dist/core/entities/user-permission/service.mjs +1 -1
  452. package/dist/core/entities/user-permission/service.mjs.map +1 -1
  453. package/dist/core/identity/permission/junction-grant.mjs +1 -1
  454. package/dist/core/identity/permission/junction-grant.mjs.map +1 -1
  455. package/dist/core/identity/provider/account/module.mjs +1 -1
  456. package/dist/core/identity/provider/account/module.mjs.map +1 -1
  457. package/dist/core/identity/provider/authentication/protocols/oauth2/assurance.mjs +1 -1
  458. package/dist/core/identity/provider/authentication/protocols/oauth2/assurance.mjs.map +1 -1
  459. package/dist/core/identity/registration/service.d.ts.map +1 -1
  460. package/dist/core/identity/registration/service.mjs +2 -1
  461. package/dist/core/identity/registration/service.mjs.map +1 -1
  462. package/dist/core/index.mjs +11 -3
  463. package/dist/core/oauth2/authorization/helpers.d.ts +14 -0
  464. package/dist/core/oauth2/authorization/helpers.d.ts.map +1 -1
  465. package/dist/core/oauth2/authorization/helpers.mjs +9 -1
  466. package/dist/core/oauth2/authorization/helpers.mjs.map +1 -1
  467. package/dist/core/oauth2/authorization/index.mjs +2 -2
  468. package/dist/core/oauth2/authorization/module.mjs +1 -1
  469. package/dist/core/oauth2/authorization/module.mjs.map +1 -1
  470. package/dist/core/oauth2/backchannel-logout/constants.d.ts +16 -0
  471. package/dist/core/oauth2/backchannel-logout/constants.d.ts.map +1 -0
  472. package/dist/core/oauth2/backchannel-logout/constants.mjs +20 -0
  473. package/dist/core/oauth2/backchannel-logout/constants.mjs.map +1 -0
  474. package/dist/core/oauth2/backchannel-logout/index.d.ts +4 -0
  475. package/dist/core/oauth2/backchannel-logout/index.d.ts.map +1 -0
  476. package/dist/core/oauth2/backchannel-logout/index.mjs +6 -0
  477. package/dist/core/oauth2/backchannel-logout/module.d.ts +26 -0
  478. package/dist/core/oauth2/backchannel-logout/module.d.ts.map +1 -0
  479. package/dist/core/oauth2/backchannel-logout/module.mjs +78 -0
  480. package/dist/core/oauth2/backchannel-logout/module.mjs.map +1 -0
  481. package/dist/core/oauth2/backchannel-logout/types.d.ts +29 -0
  482. package/dist/core/oauth2/backchannel-logout/types.d.ts.map +1 -0
  483. package/dist/core/oauth2/console-login/constants.d.ts +19 -0
  484. package/dist/core/oauth2/console-login/constants.d.ts.map +1 -0
  485. package/dist/core/oauth2/console-login/constants.mjs +24 -0
  486. package/dist/core/oauth2/console-login/constants.mjs.map +1 -0
  487. package/dist/core/oauth2/console-login/index.d.ts +3 -0
  488. package/dist/core/oauth2/console-login/index.d.ts.map +1 -0
  489. package/dist/core/oauth2/console-login/index.mjs +5 -0
  490. package/dist/core/oauth2/console-login/types.d.ts +53 -0
  491. package/dist/core/oauth2/console-login/types.d.ts.map +1 -0
  492. package/dist/core/oauth2/end-session/service.mjs +1 -1
  493. package/dist/core/oauth2/end-session/service.mjs.map +1 -1
  494. package/dist/core/oauth2/federated-login/module.mjs +3 -3
  495. package/dist/core/oauth2/federated-login/module.mjs.map +1 -1
  496. package/dist/core/oauth2/index.d.ts +4 -0
  497. package/dist/core/oauth2/index.d.ts.map +1 -1
  498. package/dist/core/oauth2/index.mjs +13 -3
  499. package/dist/core/oauth2/introspection/index.d.ts +3 -0
  500. package/dist/core/oauth2/introspection/index.d.ts.map +1 -0
  501. package/dist/core/oauth2/introspection/index.mjs +5 -0
  502. package/dist/core/oauth2/introspection/module.d.ts +14 -0
  503. package/dist/core/oauth2/introspection/module.d.ts.map +1 -0
  504. package/dist/core/oauth2/introspection/module.mjs +49 -0
  505. package/dist/core/oauth2/introspection/module.mjs.map +1 -0
  506. package/dist/core/oauth2/introspection/types.d.ts +45 -0
  507. package/dist/core/oauth2/introspection/types.d.ts.map +1 -0
  508. package/dist/core/oauth2/introspection/types.mjs +4 -0
  509. package/dist/core/oauth2/openid/claims.d.ts +20 -2
  510. package/dist/core/oauth2/openid/claims.d.ts.map +1 -1
  511. package/dist/core/oauth2/openid/claims.mjs +18 -4
  512. package/dist/core/oauth2/openid/claims.mjs.map +1 -1
  513. package/dist/core/oauth2/session-credential/constants.d.ts +30 -0
  514. package/dist/core/oauth2/session-credential/constants.d.ts.map +1 -0
  515. package/dist/core/oauth2/session-credential/constants.mjs +34 -0
  516. package/dist/core/oauth2/session-credential/constants.mjs.map +1 -0
  517. package/dist/core/oauth2/session-credential/index.d.ts +3 -0
  518. package/dist/core/oauth2/session-credential/index.d.ts.map +1 -0
  519. package/dist/core/oauth2/session-credential/index.mjs +6 -0
  520. package/dist/core/oauth2/session-credential/module.d.ts +31 -0
  521. package/dist/core/oauth2/session-credential/module.d.ts.map +1 -0
  522. package/dist/core/oauth2/session-credential/module.mjs +43 -0
  523. package/dist/core/oauth2/session-credential/module.mjs.map +1 -0
  524. package/dist/core/oauth2/session-token/constants.d.ts +10 -0
  525. package/dist/core/oauth2/session-token/constants.d.ts.map +1 -0
  526. package/dist/core/oauth2/session-token/constants.mjs +16 -0
  527. package/dist/core/oauth2/session-token/constants.mjs.map +1 -0
  528. package/dist/core/oauth2/session-token/index.d.ts +1 -0
  529. package/dist/core/oauth2/session-token/index.d.ts.map +1 -1
  530. package/dist/core/oauth2/session-token/index.mjs +2 -1
  531. package/dist/core/oauth2/session-token/types.d.ts +13 -2
  532. package/dist/core/oauth2/session-token/types.d.ts.map +1 -1
  533. package/dist/core/provisioning/merge/module.mjs +5 -3
  534. package/dist/core/provisioning/merge/module.mjs.map +1 -1
  535. package/dist/core/query/module.mjs +1 -1
  536. package/dist/core/query/module.mjs.map +1 -1
  537. package/dist/core/security/policy/evaluator.mjs +1 -1
  538. package/dist/core/security/policy/evaluator.mjs.map +1 -1
  539. package/dist/index.mjs +62 -59
  540. package/dist/path.mjs +1 -1
  541. package/dist/swagger.json +466 -104
  542. package/dist/utils/error.d.ts +6 -0
  543. package/dist/utils/error.d.ts.map +1 -1
  544. package/dist/utils/error.mjs +6 -2
  545. package/dist/utils/error.mjs.map +1 -1
  546. package/dist/utils/index.mjs +2 -2
  547. package/package.json +31 -25
  548. package/dist/adapters/http/middleware/built-in/assets.d.ts +0 -11
  549. package/dist/adapters/http/middleware/built-in/assets.d.ts.map +0 -1
  550. package/dist/adapters/http/middleware/built-in/assets.mjs +0 -91
  551. package/dist/adapters/http/middleware/built-in/assets.mjs.map +0 -1
  552. package/dist/adapters/http/middleware/built-in/theme.d.ts +0 -15
  553. package/dist/adapters/http/middleware/built-in/theme.d.ts.map +0 -1
  554. package/dist/adapters/http/middleware/built-in/theme.mjs +0 -27
  555. package/dist/adapters/http/middleware/built-in/theme.mjs.map +0 -1
  556. package/dist/adapters/http/middleware/built-in/types.d.ts +0 -14
  557. package/dist/adapters/http/middleware/built-in/types.d.ts.map +0 -1
  558. package/dist/adapters/http/middleware/built-in/ui-http-client.d.ts +0 -15
  559. package/dist/adapters/http/middleware/built-in/ui-http-client.d.ts.map +0 -1
  560. package/dist/adapters/http/middleware/built-in/ui-http-client.mjs +0 -25
  561. package/dist/adapters/http/middleware/built-in/ui-http-client.mjs.map +0 -1
  562. package/dist/adapters/http/request/helpers/redirect.d.ts +0 -14
  563. package/dist/adapters/http/request/helpers/redirect.d.ts.map +0 -1
  564. package/dist/adapters/http/request/helpers/redirect.mjs +0 -36
  565. package/dist/adapters/http/request/helpers/redirect.mjs.map +0 -1
  566. package/dist/adapters/http/ui/account-console/index.d.ts +0 -4
  567. package/dist/adapters/http/ui/account-console/index.d.ts.map +0 -1
  568. package/dist/adapters/http/ui/account-console/index.mjs +0 -6
  569. package/dist/adapters/http/ui/account-console/module.d.ts +0 -28
  570. package/dist/adapters/http/ui/account-console/module.d.ts.map +0 -1
  571. package/dist/adapters/http/ui/account-console/module.mjs +0 -80
  572. package/dist/adapters/http/ui/account-console/module.mjs.map +0 -1
  573. package/dist/adapters/http/ui/account-console/ref.d.ts +0 -30
  574. package/dist/adapters/http/ui/account-console/ref.d.ts.map +0 -1
  575. package/dist/adapters/http/ui/account-console/ref.mjs +0 -50
  576. package/dist/adapters/http/ui/account-console/ref.mjs.map +0 -1
  577. package/dist/adapters/http/ui/account-console/types.d.ts +0 -11
  578. package/dist/adapters/http/ui/account-console/types.d.ts.map +0 -1
  579. package/dist/adapters/http/ui/auth-console/http-client.d.ts +0 -22
  580. package/dist/adapters/http/ui/auth-console/http-client.d.ts.map +0 -1
  581. package/dist/adapters/http/ui/auth-console/http-client.mjs.map +0 -1
  582. package/dist/adapters/http/ui/auth-console/index.d.ts +0 -6
  583. package/dist/adapters/http/ui/auth-console/index.d.ts.map +0 -1
  584. package/dist/adapters/http/ui/auth-console/index.mjs +0 -8
  585. package/dist/adapters/http/ui/auth-console/module.d.ts +0 -4
  586. package/dist/adapters/http/ui/auth-console/module.d.ts.map +0 -1
  587. package/dist/adapters/http/ui/auth-console/module.mjs +0 -73
  588. package/dist/adapters/http/ui/auth-console/module.mjs.map +0 -1
  589. package/dist/adapters/http/ui/auth-console/resolve.d.ts +0 -21
  590. package/dist/adapters/http/ui/auth-console/resolve.d.ts.map +0 -1
  591. package/dist/adapters/http/ui/auth-console/resolve.mjs +0 -53
  592. package/dist/adapters/http/ui/auth-console/resolve.mjs.map +0 -1
  593. package/dist/adapters/http/ui/auth-console/serve.d.ts +0 -9
  594. package/dist/adapters/http/ui/auth-console/serve.d.ts.map +0 -1
  595. package/dist/adapters/http/ui/auth-console/serve.mjs +0 -35
  596. package/dist/adapters/http/ui/auth-console/serve.mjs.map +0 -1
  597. package/dist/adapters/http/ui/auth-console/types.d.ts +0 -26
  598. package/dist/adapters/http/ui/auth-console/types.d.ts.map +0 -1
  599. package/dist/adapters/http/ui/console-packages/index.d.ts.map +0 -1
  600. package/dist/adapters/http/ui/console-packages/index.mjs +0 -5
  601. package/dist/adapters/http/ui/console-packages/module.d.ts +0 -33
  602. package/dist/adapters/http/ui/console-packages/module.d.ts.map +0 -1
  603. package/dist/adapters/http/ui/console-packages/module.mjs +0 -70
  604. package/dist/adapters/http/ui/console-packages/module.mjs.map +0 -1
  605. package/dist/adapters/http/ui/console-packages/types.d.ts +0 -12
  606. package/dist/adapters/http/ui/console-packages/types.d.ts.map +0 -1
  607. package/dist/adapters/http/ui/index.d.ts +0 -6
  608. package/dist/adapters/http/ui/index.d.ts.map +0 -1
  609. package/dist/adapters/http/ui/index.mjs +0 -25
  610. package/dist/adapters/http/ui/shared/html.d.ts +0 -76
  611. package/dist/adapters/http/ui/shared/html.d.ts.map +0 -1
  612. package/dist/adapters/http/ui/shared/html.mjs +0 -104
  613. package/dist/adapters/http/ui/shared/html.mjs.map +0 -1
  614. package/dist/adapters/http/ui/shared/index.d.ts +0 -2
  615. package/dist/adapters/http/ui/shared/index.d.ts.map +0 -1
  616. package/dist/adapters/http/ui/shared/index.mjs +0 -5
  617. package/dist/adapters/http/ui/theme/apply.d.ts +0 -12
  618. package/dist/adapters/http/ui/theme/apply.d.ts.map +0 -1
  619. package/dist/adapters/http/ui/theme/apply.mjs +0 -29
  620. package/dist/adapters/http/ui/theme/apply.mjs.map +0 -1
  621. package/dist/adapters/http/ui/theme/assets.d.ts +0 -20
  622. package/dist/adapters/http/ui/theme/assets.d.ts.map +0 -1
  623. package/dist/adapters/http/ui/theme/assets.mjs +0 -86
  624. package/dist/adapters/http/ui/theme/assets.mjs.map +0 -1
  625. package/dist/adapters/http/ui/theme/constants.d.ts +0 -16
  626. package/dist/adapters/http/ui/theme/constants.d.ts.map +0 -1
  627. package/dist/adapters/http/ui/theme/constants.mjs +0 -20
  628. package/dist/adapters/http/ui/theme/constants.mjs.map +0 -1
  629. package/dist/adapters/http/ui/theme/contract/constants.d.ts +0 -120
  630. package/dist/adapters/http/ui/theme/contract/constants.d.ts.map +0 -1
  631. package/dist/adapters/http/ui/theme/contract/constants.mjs +0 -136
  632. package/dist/adapters/http/ui/theme/contract/constants.mjs.map +0 -1
  633. package/dist/adapters/http/ui/theme/contract/head.d.ts +0 -12
  634. package/dist/adapters/http/ui/theme/contract/head.d.ts.map +0 -1
  635. package/dist/adapters/http/ui/theme/contract/head.mjs +0 -61
  636. package/dist/adapters/http/ui/theme/contract/head.mjs.map +0 -1
  637. package/dist/adapters/http/ui/theme/contract/index.d.ts +0 -6
  638. package/dist/adapters/http/ui/theme/contract/index.d.ts.map +0 -1
  639. package/dist/adapters/http/ui/theme/contract/index.mjs +0 -8
  640. package/dist/adapters/http/ui/theme/contract/manifest.d.ts +0 -25
  641. package/dist/adapters/http/ui/theme/contract/manifest.d.ts.map +0 -1
  642. package/dist/adapters/http/ui/theme/contract/manifest.mjs +0 -77
  643. package/dist/adapters/http/ui/theme/contract/manifest.mjs.map +0 -1
  644. package/dist/adapters/http/ui/theme/contract/types.d.ts +0 -26
  645. package/dist/adapters/http/ui/theme/contract/types.d.ts.map +0 -1
  646. package/dist/adapters/http/ui/theme/contract/utils.d.ts +0 -11
  647. package/dist/adapters/http/ui/theme/contract/utils.d.ts.map +0 -1
  648. package/dist/adapters/http/ui/theme/contract/utils.mjs +0 -22
  649. package/dist/adapters/http/ui/theme/contract/utils.mjs.map +0 -1
  650. package/dist/adapters/http/ui/theme/index.d.ts +0 -7
  651. package/dist/adapters/http/ui/theme/index.d.ts.map +0 -1
  652. package/dist/adapters/http/ui/theme/index.mjs +0 -13
  653. package/dist/adapters/http/ui/theme/module.d.ts +0 -79
  654. package/dist/adapters/http/ui/theme/module.d.ts.map +0 -1
  655. package/dist/adapters/http/ui/theme/module.mjs +0 -206
  656. package/dist/adapters/http/ui/theme/module.mjs.map +0 -1
  657. package/dist/adapters/http/ui/theme/types.d.ts +0 -42
  658. package/dist/adapters/http/ui/theme/types.d.ts.map +0 -1
  659. package/dist/app/modules/config/helpers.d.ts +0 -9
  660. package/dist/app/modules/config/helpers.d.ts.map +0 -1
  661. package/dist/app/modules/config/helpers.mjs +0 -22
  662. package/dist/app/modules/config/helpers.mjs.map +0 -1
  663. package/dist/app/modules/config/normalize.d.ts +0 -3
  664. package/dist/app/modules/config/normalize.d.ts.map +0 -1
  665. package/dist/app/modules/config/normalize.mjs +0 -117
  666. package/dist/app/modules/config/normalize.mjs.map +0 -1
  667. package/dist/app/modules/config/origins.d.ts +0 -25
  668. package/dist/app/modules/config/origins.d.ts.map +0 -1
  669. package/dist/app/modules/config/origins.mjs +0 -46
  670. package/dist/app/modules/config/origins.mjs.map +0 -1
  671. package/dist/app/modules/config/read/env.d.ts +0 -3
  672. package/dist/app/modules/config/read/env.d.ts.map +0 -1
  673. package/dist/app/modules/config/read/env.mjs +0 -139
  674. package/dist/app/modules/config/read/env.mjs.map +0 -1
  675. package/dist/app/modules/config/read/fs.d.ts +0 -3
  676. package/dist/app/modules/config/read/fs.d.ts.map +0 -1
  677. package/dist/app/modules/config/read/fs.mjs +0 -60
  678. package/dist/app/modules/config/read/fs.mjs.map +0 -1
  679. package/dist/app/modules/config/read/index.d.ts +0 -5
  680. package/dist/app/modules/config/read/index.d.ts.map +0 -1
  681. package/dist/app/modules/config/read/index.mjs +0 -7
  682. package/dist/app/modules/config/read/module.d.ts +0 -4
  683. package/dist/app/modules/config/read/module.d.ts.map +0 -1
  684. package/dist/app/modules/config/read/module.mjs +0 -29
  685. package/dist/app/modules/config/read/module.mjs.map +0 -1
  686. package/dist/app/modules/config/read/types.d.ts +0 -9
  687. package/dist/app/modules/config/read/types.d.ts.map +0 -1
  688. package/dist/app/modules/config/trust-proxy.d.ts +0 -28
  689. package/dist/app/modules/config/trust-proxy.d.ts.map +0 -1
  690. package/dist/app/modules/config/trust-proxy.mjs +0 -64
  691. package/dist/app/modules/config/trust-proxy.mjs.map +0 -1
  692. package/dist/cli/config.d.ts +0 -18
  693. package/dist/cli/config.d.ts.map +0 -1
  694. package/dist/cli/config.mjs +0 -34
  695. package/dist/cli/config.mjs.map +0 -1
  696. package/dist/cli/types.d.ts.map +0 -1
  697. package/dist/utils/host.d.ts +0 -2
  698. package/dist/utils/host.d.ts.map +0 -1
  699. package/dist/utils/host.mjs +0 -12
  700. package/dist/utils/host.mjs.map +0 -1
  701. /package/dist/adapters/http/{middleware/built-in → controllers/workflows/account}/types.mjs +0 -0
  702. /package/dist/adapters/http/{ui/console-packages → controllers/workflows/admin}/index.d.ts +0 -0
  703. /package/dist/adapters/http/{ui/account-console → controllers/workflows/admin}/types.mjs +0 -0
  704. /package/dist/adapters/http/{ui/auth-console → controllers/workflows/console-login}/types.mjs +0 -0
  705. /package/dist/adapters/http/{ui/console-packages → internal-client}/types.mjs +0 -0
  706. /package/dist/{adapters/http/ui/theme/contract → app/modules/components}/types.mjs +0 -0
  707. /package/dist/cli/{types.d.ts → commands/types.d.ts} +0 -0
  708. /package/dist/{adapters/http/ui/theme → cli/commands}/types.mjs +0 -0
  709. /package/dist/{app/modules/config/read → core/oauth2/backchannel-logout}/types.mjs +0 -0
  710. /package/dist/{cli → core/oauth2/console-login}/types.mjs +0 -0
@@ -3,14 +3,24 @@ import "node:url";
3
3
  import.meta.url;
4
4
  import { RECORD_QUERY_PARAMETERS, describeQuerySchema } from "../../../../../core/query/describe.mjs";
5
5
  import { sessionSchema } from "../../../../../core/entities/session/schema.mjs";
6
+ import { SYSTEM_CLIENT_SCOPE_NAMES } from "../../../../../core/entities/client/system-clients.mjs";
7
+ import { deriveAmrAcr } from "../../../../../core/oauth2/authorization/helpers.mjs";
6
8
  import { isSelfToken } from "../../../../../utils/self-id.mjs";
7
9
  import "../../../../../utils/index.mjs";
10
+ import "../../../../../core/oauth2/session-credential/constants.mjs";
11
+ import { resolveIntrospectionSubject } from "../../../../../core/oauth2/introspection/module.mjs";
8
12
  import "../../../../../core/index.mjs";
13
+ import { useRequestIdentity } from "../../../request/helpers/identity.mjs";
9
14
  import { buildActorContext } from "../../../request/helpers/actor.mjs";
10
15
  import { useRequestSessionId } from "../../../request/helpers/session-id.mjs";
11
16
  import "../../../request/index.mjs";
17
+ import { unsetSessionCookie } from "../../../cookie/session.mjs";
18
+ import "../../../cookie/index.mjs";
12
19
  import { ForceLoggedInMiddleware } from "../../../middleware/built-in/loggedin/module.mjs";
13
20
  import "../../../middleware/index.mjs";
21
+ import { IdentityType } from "@authup/core-kit";
22
+ import { OAuth2SubKind, serializeOAuth2Scope } from "@authup/specs";
23
+ import { useRequestCookie } from "@routup/basic/cookie";
14
24
  import { useRequestQuery } from "@routup/basic/query";
15
25
  import { DContext, DController, DDelete, DGet, DPath, DTags } from "@routup/decorators";
16
26
  //#region src/adapters/http/controllers/entities/session/module.ts
@@ -30,8 +40,64 @@ function _ts_param(paramIndex, decorator) {
30
40
  }
31
41
  var SessionController = class {
32
42
  service;
43
+ baseURL;
44
+ identityResolver;
45
+ identityPermissionProvider;
46
+ sessionRepository;
33
47
  constructor(ctx) {
34
48
  this.service = ctx.service;
49
+ this.baseURL = ctx.baseURL;
50
+ this.identityResolver = ctx.identityResolver;
51
+ this.identityPermissionProvider = ctx.identityPermissionProvider;
52
+ this.sessionRepository = ctx.sessionRepository;
53
+ }
54
+ /**
55
+ * The caller's own session as a CONTEXT rather than a row: the identity
56
+ * claims and permission projection a console hydrates its store from, which
57
+ * is what `POST /token/introspect` answers minus everything token-shaped.
58
+ *
59
+ * A sibling of `@me` rather than a replacement for it: `GET /sessions/@me`
60
+ * returns the `auth_sessions` ROW, and a console needs the subject's claims
61
+ * and permissions, which are not on it. Named `introspect` because it is
62
+ * literally the introspection projection, keyed off the request's own
63
+ * credential instead of a token in the body.
64
+ *
65
+ * No client scope on the permission read, deliberately.
66
+ * `reduceBindingsByIdentityClient` keeps only permissions whose own
67
+ * `clientId` matches the one passed, so naming a console's client would
68
+ * drop every global permission — nearly all of them. The bearer path passes
69
+ * the token's `client_id` because a token IS issued to one client; a
70
+ * session is not.
71
+ */ async getOwnIntrospection(event) {
72
+ event.response.headers.set("cache-control", "no-store");
73
+ event.response.headers.append("vary", "cookie");
74
+ const identity = useRequestIdentity(event);
75
+ const sessionId = useRequestSessionId(event);
76
+ if (!identity || !sessionId || identity.type !== IdentityType.USER || !this.identityResolver || !this.identityPermissionProvider) return { active: false };
77
+ const actor = buildActorContext(event);
78
+ const session = await this.service.getOne(sessionId, actor);
79
+ if (!session) return { active: false };
80
+ const subject = await resolveIntrospectionSubject({
81
+ identityResolver: this.identityResolver,
82
+ identityPermissionProvider: this.identityPermissionProvider
83
+ }, {
84
+ sub: identity.id,
85
+ subKind: identity.type,
86
+ realmId: identity.realmId,
87
+ active: true
88
+ });
89
+ return {
90
+ active: true,
91
+ permissions: subject.permissions,
92
+ sub: identity.id,
93
+ sub_kind: OAuth2SubKind.USER,
94
+ session_id: session.id,
95
+ realm_id: identity.realmId,
96
+ realm_name: identity.realmName,
97
+ scope: serializeOAuth2Scope(SYSTEM_CLIENT_SCOPE_NAMES),
98
+ ...deriveAmrAcr(session),
99
+ ...subject.claims
100
+ };
35
101
  }
36
102
  async getMany(event) {
37
103
  const actor = buildActorContext(event);
@@ -65,6 +131,7 @@ var SessionController = class {
65
131
  const actor = buildActorContext(event);
66
132
  const resolvedId = isSelfToken(id) ? useRequestSessionId(event) ?? id : id;
67
133
  const entity = await this.service.delete(resolvedId, actor);
134
+ if (this.baseURL && resolvedId === useRequestSessionId(event) && useRequestCookie(event, "authup_session")) unsetSessionCookie(event, this.baseURL);
68
135
  event.response.status = 202;
69
136
  return {
70
137
  data: entity,
@@ -72,6 +139,13 @@ var SessionController = class {
72
139
  };
73
140
  }
74
141
  };
142
+ _ts_decorate([
143
+ DGet("/@me/introspect", [ForceLoggedInMiddleware]),
144
+ _ts_param(0, DContext()),
145
+ _ts_metadata("design:type", Function),
146
+ _ts_metadata("design:paramtypes", [typeof IAppEvent === "undefined" ? Object : IAppEvent]),
147
+ _ts_metadata("design:returntype", Promise)
148
+ ], SessionController.prototype, "getOwnIntrospection", null);
75
149
  _ts_decorate([
76
150
  DGet("", [ForceLoggedInMiddleware]),
77
151
  _ts_param(0, DContext()),
@@ -1 +1 @@
1
- {"version":3,"file":"module.mjs","names":["DContext","DController","DDelete","DGet","DPath","DTags","useRequestQuery","isSelfToken","RECORD_QUERY_PARAMETERS","describeQuerySchema","sessionSchema","ForceLoggedInMiddleware","buildActorContext","useRequestSessionId","SessionController","service","ctx","getMany","event","actor","data","meta","schema","getOne","id","resolvedId","entity","dropMany","result","deleteMany","query","currentSessionId","response","status","drop","delete"],"sources":["../../../../../../src/adapters/http/controllers/entities/session/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2026.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n DContext,\n DController,\n DDelete,\n DGet,\n DPath,\n DTags,\n} from '@routup/decorators';\nimport type { Session } from '@authup/core-kit';\nimport type { IAppEvent } from 'routup';\nimport { useRequestQuery } from '@routup/basic/query';\nimport type { EntityCollectionResponse, EntityRecordResponse, SessionDeleteManyResponse } from '@authup/core-http-kit';\nimport { isSelfToken } from '../../../../../utils/index.ts';\nimport type { ISessionService } from '../../../../../core/index.ts';\nimport {\n RECORD_QUERY_PARAMETERS,\n describeQuerySchema,\n sessionSchema,\n} from '../../../../../core/index.ts';\nimport { ForceLoggedInMiddleware } from '../../../middleware/index.ts';\nimport { buildActorContext, useRequestSessionId } from '../../../request/index.ts';\n\nexport type SessionControllerContext = {\n service: ISessionService,\n};\n\n@DTags('session')\n@DController(['/sessions', '/realms/:realmId/sessions'])\nexport class SessionController {\n protected service: ISessionService;\n\n constructor(ctx: SessionControllerContext) {\n this.service = ctx.service;\n }\n\n @DGet('', [ForceLoggedInMiddleware])\n async getMany(\n @DContext() event: IAppEvent,\n ): Promise<EntityCollectionResponse<Session>> {\n const actor = buildActorContext(event);\n const {\n data,\n meta,\n } = await this.service.getMany(useRequestQuery(event), actor);\n\n return {\n data,\n meta: {\n ...meta,\n schema: describeQuerySchema(sessionSchema),\n },\n };\n }\n\n @DGet('/:id', [ForceLoggedInMiddleware])\n async getOne(\n @DPath('id') id: string,\n @DContext() event: IAppEvent,\n ): Promise<EntityRecordResponse<Session>> {\n const actor = buildActorContext(event);\n\n // `@me` / `@self` resolve to the caller's current session.\n const resolvedId = isSelfToken(id) ? (useRequestSessionId(event) ?? id) : id;\n\n const entity = await this.service.getOne(resolvedId, actor);\n\n return { data: entity, meta: { schema: describeQuerySchema(sessionSchema, RECORD_QUERY_PARAMETERS) } };\n }\n\n @DDelete('', [ForceLoggedInMiddleware])\n async dropMany(\n @DContext() event: IAppEvent,\n ): Promise<SessionDeleteManyResponse> {\n const actor = buildActorContext(event);\n\n // A recognized target filter (e.g. `?filter[userId]=<uuid>`) → admin\n // force-logout (SESSION_DELETE + per-session realm-match). No filter →\n // self-service \"log out my other devices\" (keeps the current session).\n const result = await this.service.deleteMany(actor, {\n query: useRequestQuery(event),\n currentSessionId: useRequestSessionId(event),\n });\n\n event.response.status = 202;\n return result;\n }\n\n @DDelete('/:id', [ForceLoggedInMiddleware])\n async drop(\n @DPath('id') id: string,\n @DContext() event: IAppEvent,\n ): Promise<EntityRecordResponse<Session>> {\n const actor = buildActorContext(event);\n\n const resolvedId = isSelfToken(id) ? (useRequestSessionId(event) ?? id) : id;\n const entity = await this.service.delete(resolvedId, actor);\n\n event.response.status = 202;\n return { data: entity, meta: {} };\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCA,IAAac,oBAAb,MAAaA;CACCC;CAEV,YAAYC,KAA+B;EACvC,KAAKD,UAAUC,IAAID;CACvB;CAEA,MACME,QACF,OAC0C;EAC1C,MAAME,QAAQP,kBAAkBM,KAAAA;EAChC,MAAM,EACFE,MACAC,SACA,MAAM,KAAKN,QAAQE,QAAQX,gBAAgBY,KAAAA,GAAQC,KAAAA;EAEvD,OAAO;GACHC;GACAC,MAAM;IACF,GAAGA;IACHC,QAAQb,oBAAoBC,aAAAA;GAChC;EACJ;CACJ;CAEA,MACMa,OACF,IACA,OACsC;EACtC,MAAMJ,QAAQP,kBAAkBM,KAAAA;EAGhC,MAAMO,aAAalB,YAAYiB,EAAAA,IAAOX,oBAAoBK,KAAAA,KAAUM,KAAMA;EAI1E,OAAO;GAAEJ,MAAMM,MAFM,KAAKX,QAAQQ,OAAOE,YAAYN,KAAAA;GAE9BE,MAAM,EAAEC,QAAQb,oBAAoBC,eAAeF,uBAAAA,EAAyB;EAAE;CACzG;CAEA,MACMmB,SACF,OACkC;EAClC,MAAMR,QAAQP,kBAAkBM,KAAAA;EAKhC,MAAMU,SAAS,MAAM,KAAKb,QAAQc,WAAWV,OAAO;GAChDW,OAAOxB,gBAAgBY,KAAAA;GACvBa,kBAAkBlB,oBAAoBK,KAAAA;EAC1C,CAAA;EAEAA,MAAMc,SAASC,SAAS;EACxB,OAAOL;CACX;CAEA,MACMM,KACF,IACA,OACsC;EACtC,MAAMf,QAAQP,kBAAkBM,KAAAA;EAEhC,MAAMO,aAAalB,YAAYiB,EAAAA,IAAOX,oBAAoBK,KAAAA,KAAUM,KAAMA;EAC1E,MAAME,SAAS,MAAM,KAAKX,QAAQoB,OAAOV,YAAYN,KAAAA;EAErDD,MAAMc,SAASC,SAAS;EACxB,OAAO;GAAEb,MAAMM;GAAQL,MAAM,CAAC;EAAE;CACpC;AACJ;;CAjEeV,KAAAA,IAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;CAmBIA,KAAAA,QAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;;CAeDA,QAAAA,IAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;CAkBIA,QAAAA,QAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;;;CA5DR,YAAA,CAAA,aAAa,2BAAA,CAAA"}
1
+ {"version":3,"file":"module.mjs","names":["DContext","DController","DDelete","DGet","DPath","DTags","useRequestQuery","isSelfToken","RECORD_QUERY_PARAMETERS","SESSION_COOKIE","deriveAmrAcr","describeQuerySchema","resolveIntrospectionSubject","sessionSchema","ForceLoggedInMiddleware","buildActorContext","useRequestIdentity","useRequestSessionId","IdentityType","OAuth2SubKind","serializeOAuth2Scope","useRequestCookie","SYSTEM_CLIENT_SCOPE_NAMES","unsetSessionCookie","SessionController","service","baseURL","identityResolver","identityPermissionProvider","sessionRepository","ctx","getOwnIntrospection","event","response","headers","set","append","identity","sessionId","type","USER","active","actor","session","getOne","subject","sub","id","subKind","realmId","permissions","sub_kind","session_id","realm_id","realm_name","realmName","scope","claims","getMany","data","meta","schema","resolvedId","entity","dropMany","result","deleteMany","query","currentSessionId","status","drop","delete"],"sources":["../../../../../../src/adapters/http/controllers/entities/session/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2026.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n DContext,\n DController,\n DDelete,\n DGet,\n DPath,\n DTags,\n} from '@routup/decorators';\nimport type { Session } from '@authup/core-kit';\nimport type { IAppEvent } from 'routup';\nimport { useRequestQuery } from '@routup/basic/query';\nimport type { EntityCollectionResponse, EntityRecordResponse, SessionDeleteManyResponse } from '@authup/core-http-kit';\nimport { isSelfToken } from '../../../../../utils/index.ts';\nimport type { \n IIdentityPermissionProvider, \n IIdentityResolver, \n ISessionRepository, \n ISessionService, \n} from '../../../../../core/index.ts';\nimport {\n RECORD_QUERY_PARAMETERS,\n SESSION_COOKIE,\n deriveAmrAcr, \n describeQuerySchema, \n resolveIntrospectionSubject, \n sessionSchema, \n} from '../../../../../core/index.ts';\nimport { ForceLoggedInMiddleware } from '../../../middleware/index.ts';\nimport { buildActorContext, useRequestIdentity, useRequestSessionId } from '../../../request/index.ts';\nimport { IdentityType } from '@authup/core-kit';\nimport type { OAuth2TokenIntrospectionResponse } from '@authup/specs';\nimport { OAuth2SubKind, serializeOAuth2Scope } from '@authup/specs';\nimport { useRequestCookie } from '@routup/basic/cookie';\nimport { SYSTEM_CLIENT_SCOPE_NAMES } from '../../../../../core/entities/client/system-clients.ts';\nimport { unsetSessionCookie } from '../../../cookie/index.ts';\n\nexport type SessionControllerContext = {\n /**\n * Only the cookie-session additions below use these (plan 088). The entity\n * routes delegate wholly to `service`, as every entity controller does.\n */\n baseURL?: string,\n identityResolver?: IIdentityResolver,\n identityPermissionProvider?: IIdentityPermissionProvider,\n sessionRepository?: ISessionRepository,\n service: ISessionService,\n};\n\n@DTags('session')\n@DController(['/sessions', '/realms/:realmId/sessions'])\nexport class SessionController {\n protected service: ISessionService;\n\n protected baseURL?: string;\n\n protected identityResolver?: IIdentityResolver;\n\n protected identityPermissionProvider?: IIdentityPermissionProvider;\n\n protected sessionRepository?: ISessionRepository;\n\n constructor(ctx: SessionControllerContext) {\n this.service = ctx.service;\n this.baseURL = ctx.baseURL;\n this.identityResolver = ctx.identityResolver;\n this.identityPermissionProvider = ctx.identityPermissionProvider;\n this.sessionRepository = ctx.sessionRepository;\n }\n\n /**\n * The caller's own session as a CONTEXT rather than a row: the identity\n * claims and permission projection a console hydrates its store from, which\n * is what `POST /token/introspect` answers minus everything token-shaped.\n *\n * A sibling of `@me` rather than a replacement for it: `GET /sessions/@me`\n * returns the `auth_sessions` ROW, and a console needs the subject's claims\n * and permissions, which are not on it. Named `introspect` because it is\n * literally the introspection projection, keyed off the request's own\n * credential instead of a token in the body.\n *\n * No client scope on the permission read, deliberately.\n * `reduceBindingsByIdentityClient` keeps only permissions whose own\n * `clientId` matches the one passed, so naming a console's client would\n * drop every global permission — nearly all of them. The bearer path passes\n * the token's `client_id` because a token IS issued to one client; a\n * session is not.\n */\n @DGet('/@me/introspect', [ForceLoggedInMiddleware])\n async getOwnIntrospection(\n @DContext() event: IAppEvent,\n ): Promise<OAuth2TokenIntrospectionResponse> {\n // A per-user document whose only discriminator may be an opaque\n // cookie, which is exactly what an intermediary can cross-serve.\n // `vary` is APPENDED because @routup/cors already put `origin` there.\n event.response.headers.set('cache-control', 'no-store');\n event.response.headers.append('vary', 'cookie');\n\n const identity = useRequestIdentity(event);\n const sessionId = useRequestSessionId(event);\n\n if (\n !identity ||\n !sessionId ||\n identity.type !== IdentityType.USER ||\n !this.identityResolver ||\n !this.identityPermissionProvider\n ) {\n return { active: false };\n }\n\n const actor = buildActorContext(event);\n const session = await this.service.getOne(sessionId, actor);\n if (!session) {\n return { active: false };\n }\n\n const subject = await resolveIntrospectionSubject({\n identityResolver: this.identityResolver,\n identityPermissionProvider: this.identityPermissionProvider,\n }, {\n sub: identity.id,\n subKind: identity.type,\n realmId: identity.realmId,\n active: true,\n });\n\n return {\n active: true,\n // todo: permissions property should be removed.\n permissions: subject.permissions,\n sub: identity.id,\n sub_kind: OAuth2SubKind.USER,\n session_id: session.id,\n realm_id: identity.realmId,\n realm_name: identity.realmName,\n scope: serializeOAuth2Scope(SYSTEM_CLIENT_SCOPE_NAMES),\n ...deriveAmrAcr(session),\n ...subject.claims,\n };\n }\n\n @DGet('', [ForceLoggedInMiddleware])\n async getMany(\n @DContext() event: IAppEvent,\n ): Promise<EntityCollectionResponse<Session>> {\n const actor = buildActorContext(event);\n const {\n data,\n meta,\n } = await this.service.getMany(useRequestQuery(event), actor);\n\n return {\n data,\n meta: {\n ...meta,\n schema: describeQuerySchema(sessionSchema),\n },\n };\n }\n\n @DGet('/:id', [ForceLoggedInMiddleware])\n async getOne(\n @DPath('id') id: string,\n @DContext() event: IAppEvent,\n ): Promise<EntityRecordResponse<Session>> {\n const actor = buildActorContext(event);\n\n // `@me` / `@self` resolve to the caller's current session.\n const resolvedId = isSelfToken(id) ? (useRequestSessionId(event) ?? id) : id;\n\n const entity = await this.service.getOne(resolvedId, actor);\n\n return { data: entity, meta: { schema: describeQuerySchema(sessionSchema, RECORD_QUERY_PARAMETERS) } };\n }\n\n @DDelete('', [ForceLoggedInMiddleware])\n async dropMany(\n @DContext() event: IAppEvent,\n ): Promise<SessionDeleteManyResponse> {\n const actor = buildActorContext(event);\n\n // A recognized target filter (e.g. `?filter[userId]=<uuid>`) → admin\n // force-logout (SESSION_DELETE + per-session realm-match). No filter →\n // self-service \"log out my other devices\" (keeps the current session).\n const result = await this.service.deleteMany(actor, {\n query: useRequestQuery(event),\n currentSessionId: useRequestSessionId(event),\n });\n\n event.response.status = 202;\n return result;\n }\n\n @DDelete('/:id', [ForceLoggedInMiddleware])\n async drop(\n @DPath('id') id: string,\n @DContext() event: IAppEvent,\n ): Promise<EntityRecordResponse<Session>> {\n const actor = buildActorContext(event);\n\n const resolvedId = isSelfToken(id) ? (useRequestSessionId(event) ?? id) : id;\n const entity = await this.service.delete(resolvedId, actor);\n\n // Sign-out for a cookie session, folded in here rather than given its\n // own route (plan 088). Revoking the row was always most of the job;\n // the reason this endpoint could not BE the sign-out was that it left\n // a dead cookie the browser kept presenting on every request. Clearing\n // it removes that, and the same-origin gate is already upstream: a\n // cookie only authenticates at all when the middleware accepted it.\n // Only for the caller's OWN session: revoking another device must not\n // drop the credential of the one doing the revoking.\n if (\n this.baseURL &&\n resolvedId === useRequestSessionId(event) &&\n useRequestCookie(event, SESSION_COOKIE)\n ) {\n unsetSessionCookie(event, this.baseURL);\n }\n\n event.response.status = 202;\n return { data: entity, meta: {} };\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyDA,IAAawB,oBAAb,MAAaA;CACCC;CAEAC;CAEAC;CAEAC;CAEAC;CAEV,YAAYC,KAA+B;EACvC,KAAKL,UAAUK,IAAIL;EACnB,KAAKC,UAAUI,IAAIJ;EACnB,KAAKC,mBAAmBG,IAAIH;EAC5B,KAAKC,6BAA6BE,IAAIF;EACtC,KAAKC,oBAAoBC,IAAID;CACjC;;;;;;;;;;;;;;;;;;IAoBA,MACME,oBACF,OACyC;EAIzCC,MAAMC,SAASC,QAAQC,IAAI,iBAAiB,UAAA;EAC5CH,MAAMC,SAASC,QAAQE,OAAO,QAAQ,QAAA;EAEtC,MAAMC,WAAWrB,mBAAmBgB,KAAAA;EACpC,MAAMM,YAAYrB,oBAAoBe,KAAAA;EAEtC,IACI,CAACK,YACD,CAACC,aACDD,SAASE,SAASrB,aAAasB,QAC/B,CAAC,KAAKb,oBACN,CAAC,KAAKC,4BAEN,OAAO,EAAEa,QAAQ,MAAM;EAG3B,MAAMC,QAAQ3B,kBAAkBiB,KAAAA;EAChC,MAAMW,UAAU,MAAM,KAAKlB,QAAQmB,OAAON,WAAWI,KAAAA;EACrD,IAAI,CAACC,SACD,OAAO,EAAEF,QAAQ,MAAM;EAG3B,MAAMI,UAAU,MAAMjC,4BAA4B;GAC9Ce,kBAAkB,KAAKA;GACvBC,4BAA4B,KAAKA;EACrC,GAAG;GACCkB,KAAKT,SAASU;GACdC,SAASX,SAASE;GAClBU,SAASZ,SAASY;GAClBR,QAAQ;EACZ,CAAA;EAEA,OAAO;GACHA,QAAQ;GAERS,aAAaL,QAAQK;GACrBJ,KAAKT,SAASU;GACdI,UAAUhC,cAAcqB;GACxBY,YAAYT,QAAQI;GACpBM,UAAUhB,SAASY;GACnBK,YAAYjB,SAASkB;GACrBC,OAAOpC,qBAAqBE,yBAAAA;GAC5B,GAAGZ,aAAaiC,OAAAA;GAChB,GAAGE,QAAQY;EACf;CACJ;CAEA,MACMC,QACF,OAC0C;EAC1C,MAAMhB,QAAQ3B,kBAAkBiB,KAAAA;EAChC,MAAM,EACF2B,MACAC,SACA,MAAM,KAAKnC,QAAQiC,QAAQpD,gBAAgB0B,KAAAA,GAAQU,KAAAA;EAEvD,OAAO;GACHiB;GACAC,MAAM;IACF,GAAGA;IACHC,QAAQlD,oBAAoBE,aAAAA;GAChC;EACJ;CACJ;CAEA,MACM+B,OACF,IACA,OACsC;EACtC,MAAMF,QAAQ3B,kBAAkBiB,KAAAA;EAGhC,MAAM8B,aAAavD,YAAYwC,EAAAA,IAAO9B,oBAAoBe,KAAAA,KAAUe,KAAMA;EAI1E,OAAO;GAAEY,MAAMI,MAFM,KAAKtC,QAAQmB,OAAOkB,YAAYpB,KAAAA;GAE9BkB,MAAM,EAAEC,QAAQlD,oBAAoBE,eAAeL,uBAAAA,EAAyB;EAAE;CACzG;CAEA,MACMwD,SACF,OACkC;EAClC,MAAMtB,QAAQ3B,kBAAkBiB,KAAAA;EAKhC,MAAMiC,SAAS,MAAM,KAAKxC,QAAQyC,WAAWxB,OAAO;GAChDyB,OAAO7D,gBAAgB0B,KAAAA;GACvBoC,kBAAkBnD,oBAAoBe,KAAAA;EAC1C,CAAA;EAEAA,MAAMC,SAASoC,SAAS;EACxB,OAAOJ;CACX;CAEA,MACMK,KACF,IACA,OACsC;EACtC,MAAM5B,QAAQ3B,kBAAkBiB,KAAAA;EAEhC,MAAM8B,aAAavD,YAAYwC,EAAAA,IAAO9B,oBAAoBe,KAAAA,KAAUe,KAAMA;EAC1E,MAAMgB,SAAS,MAAM,KAAKtC,QAAQ8C,OAAOT,YAAYpB,KAAAA;EAUrD,IACI,KAAKhB,WACLoC,eAAe7C,oBAAoBe,KAAAA,KACnCX,iBAAiBW,OAAAA,gBAAOvB,GAExBc,mBAAmBS,OAAO,KAAKN,OAAO;EAG1CM,MAAMC,SAASoC,SAAS;EACxB,OAAO;GAAEV,MAAMI;GAAQH,MAAM,CAAC;EAAE;CACpC;AACJ;;CAvI8B9C,KAAAA,mBAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;CAsDfA,KAAAA,IAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;CAmBIA,KAAAA,QAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;;CAeDA,QAAAA,IAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;CAkBIA,QAAAA,QAAAA,CAAAA,uBAAAA,CAAAA;;;;;;;;;CAhJR,YAAA,CAAA,aAAa,2BAAA,CAAA"}
@@ -16,8 +16,10 @@ import { IdentityProviderRoleMappingController } from "./entities/identity-provi
16
16
  import { KeyController } from "./entities/key/module.mjs";
17
17
  import { PermissionController } from "./entities/permission/module.mjs";
18
18
  import { PermissionPolicyController } from "./entities/permission-policy/module.mjs";
19
+ import { ConsoleLogin } from "./workflows/console-login/module.mjs";
19
20
  import { AccountController } from "./workflows/account/module.mjs";
20
21
  import { ActivateController } from "./workflows/activate/module.mjs";
22
+ import { AdminController } from "./workflows/admin/module.mjs";
21
23
  import { AuthenticatorChallengeController } from "./workflows/authenticator-challenge/module.mjs";
22
24
  import { AuthorizeController } from "./workflows/authorize/module.mjs";
23
25
  import { getJwkRouteHandler, getJwksRouteHandler } from "./workflows/jwks/handlers/read.mjs";
@@ -53,4 +55,4 @@ import { UserPermissionRequestValidator } from "./entities/user-permission/utils
53
55
  import { UserRoleController } from "./entities/user-role/module.mjs";
54
56
  import { UserRoleRequestValidator } from "./entities/user-role/utils/validation.mjs";
55
57
  import "./entities/index.mjs";
56
- export { AccountController, ActivateController, AuthenticatorChallengeController, AuthorizeController, ClientController, ClientPermissionController, ClientPermissionRequestValidator, ClientRoleController, ClientRoleRequestValidator, ClientScopeController, ClientScopeRequestValidator, ConsentController, EventController, IdentityProviderAccountController, IdentityProviderController, IdentityProviderRoleMappingController, JwkController, KeyController, LogoutController, OpenIDController, PasswordForgotController, PasswordResetController, PermissionController, PermissionPolicyController, PolicyAttributesValidator, PolicyController, PolicyValidator, RealmController, RegisterController, RoleAttributeController, RoleAttributeRequestValidator, RoleController, RolePermissionController, RolePermissionRequestValidator, ScopeController, SessionController, SessionTokenController, StatusController, TokenController, TrustAnchorController, UserAttributeController, UserAttributeRequestValidator, UserAuthenticatorController, UserController, UserInfoController, UserPermissionController, UserPermissionRequestValidator, UserRoleController, UserRoleRequestValidator, getJwkRouteHandler, getJwksRouteHandler };
58
+ export { AccountController, ActivateController, AdminController, AuthenticatorChallengeController, AuthorizeController, ClientController, ClientPermissionController, ClientPermissionRequestValidator, ClientRoleController, ClientRoleRequestValidator, ClientScopeController, ClientScopeRequestValidator, ConsentController, ConsoleLogin, EventController, IdentityProviderAccountController, IdentityProviderController, IdentityProviderRoleMappingController, JwkController, KeyController, LogoutController, OpenIDController, PasswordForgotController, PasswordResetController, PermissionController, PermissionPolicyController, PolicyAttributesValidator, PolicyController, PolicyValidator, RealmController, RegisterController, RoleAttributeController, RoleAttributeRequestValidator, RoleController, RolePermissionController, RolePermissionRequestValidator, ScopeController, SessionController, SessionTokenController, StatusController, TokenController, TrustAnchorController, UserAttributeController, UserAttributeRequestValidator, UserAuthenticatorController, UserController, UserInfoController, UserPermissionController, UserPermissionRequestValidator, UserRoleController, UserRoleRequestValidator, getJwkRouteHandler, getJwksRouteHandler };
@@ -1,2 +1,3 @@
1
1
  export * from './module.ts';
2
+ export * from './types.ts';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/account/index.ts"],"names":[],"mappings":"AAOA,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/account/index.ts"],"names":[],"mappings":"AAOA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
@@ -1,24 +1,33 @@
1
- import type { StatusResponseFeatures } from '@authup/core-http-kit';
2
1
  import type { IAppEvent } from 'routup';
3
- export type AccountControllerOptions = {
4
- baseURL: string;
5
- features: StatusResponseFeatures;
6
- trustedOrigins: string[];
7
- };
8
- export type AccountControllerContext = {
9
- options: AccountControllerOptions;
10
- };
2
+ import { ConsoleLogin } from '../console-login/index.ts';
3
+ import type { AccountControllerContext, AccountControllerOptions } from './types.ts';
11
4
  /**
12
- * Serves the account console SPA (`@authup/client-account-console`) shell
13
- * client-side routing owns the sub-paths, so every route returns the same
14
- * shell with the runtime config (apiUrl, base path, feature flags) injected.
15
- * The bundle's static assets ride the assets middleware (/account/assets).
5
+ * The account console's server half (plan 088): the login kick and the code
6
+ * redemption, so no OAuth2 token ever reaches the console's JavaScript.
7
+ *
8
+ * The console itself is served by `@authup/server-account-console`, which
9
+ * owns everything else under `/console/account`. These two routes stay here
10
+ * because they are sessions, keys and cache, and because the pending-login
11
+ * cookie has to be issued on the origin that reads it back (plan 101
12
+ * invariant 3). A proxy therefore routes these two exact paths to the API
13
+ * set and the rest of the console's segment to the console set.
16
14
  */
17
15
  export declare class AccountController {
18
16
  protected options: AccountControllerOptions;
17
+ protected consoleLogin: ConsoleLogin;
19
18
  constructor(ctx: AccountControllerContext);
20
- serve(event: IAppEvent): Promise<string>;
21
- servePage(event: IAppEvent): Promise<string>;
22
- protected render(event: IAppEvent): Promise<string>;
19
+ /**
20
+ * A path of its own rather than a `realmId`-carrying `/login` (098 C1).
21
+ * The bare `/login` is the console's own page now, served by the console
22
+ * service, so there is nothing left here to dispatch against.
23
+ */
24
+ login(event: IAppEvent): Promise<Response>;
25
+ callback(event: IAppEvent): Promise<Response>;
26
+ /**
27
+ * Disabled means disabled on the server too: the kick must not mint a
28
+ * pending login and a session for a console nothing is serving. There is
29
+ * no shell to answer with any more, so the route simply does not exist.
30
+ */
31
+ protected assertEnabled(): void;
23
32
  }
24
33
  //# sourceMappingURL=module.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/account/module.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAMpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAGxC,MAAM,MAAM,wBAAwB,GAAG;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,sBAAsB,CAAC;IACjC,cAAc,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACnC,OAAO,EAAE,wBAAwB,CAAC;CACrC,CAAC;AAEF;;;;;GAKG;AACH,qBACa,iBAAiB;IAC1B,SAAS,CAAC,OAAO,EAAE,wBAAwB,CAAC;gBAEhC,GAAG,EAAE,wBAAwB;IAKnC,KAAK,CAAa,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;IAKpD,SAAS,CAAa,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;IAI9D,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;CAOtD"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/account/module.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAErF;;;;;;;;;;GAUG;AACH,qBACa,iBAAiB;IAC1B,SAAS,CAAC,OAAO,EAAE,wBAAwB,CAAC;IAE5C,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;gBAEzB,GAAG,EAAE,wBAAwB;IAoBzC;;;;OAIG;IAEG,KAAK,CAAa,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;IAOtD,QAAQ,CAAa,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;IAM/D;;;;OAIG;IACH,SAAS,CAAC,aAAa,IAAI,IAAI;CAKlC"}
@@ -1,8 +1,11 @@
1
1
  import "node:path";
2
2
  import "node:url";
3
3
  import.meta.url;
4
- import { serveAccountConsolePage } from "../../../ui/account-console/module.mjs";
5
- import "../../../ui/index.mjs";
4
+ import { ACCOUNT_CONSOLE_SEGMENT } from "../../../constants.mjs";
5
+ import { ConsoleLogin } from "../console-login/module.mjs";
6
+ import "../console-login/index.mjs";
7
+ import { CLIENT_ACCOUNT_CONSOLE_NAME } from "@authup/core-kit";
8
+ import { NotFoundError } from "@ebec/http";
6
9
  import { DContext, DController, DGet } from "@routup/decorators";
7
10
  //#region src/adapters/http/controllers/workflows/account/module.ts
8
11
  function _ts_decorate(decorators, target, key, desc) {
@@ -21,39 +24,59 @@ function _ts_param(paramIndex, decorator) {
21
24
  }
22
25
  var AccountController = class {
23
26
  options;
27
+ consoleLogin;
24
28
  constructor(ctx) {
25
29
  this.options = ctx.options;
30
+ this.consoleLogin = new ConsoleLogin({
31
+ clientName: CLIENT_ACCOUNT_CONSOLE_NAME,
32
+ segment: ACCOUNT_CONSOLE_SEGMENT,
33
+ consoleUrl: ctx.options.consoleUrl
34
+ }, {
35
+ options: { baseURL: ctx.options.baseURL },
36
+ loginStore: ctx.loginStore,
37
+ sessionRepository: ctx.sessionRepository,
38
+ sessionManager: ctx.sessionManager,
39
+ tokenVerifier: ctx.tokenVerifier,
40
+ tokenRevoker: ctx.tokenRevoker,
41
+ logger: ctx.logger
42
+ });
26
43
  }
27
- async serve(event) {
28
- return this.render(event);
44
+ /**
45
+ * A path of its own rather than a `realmId`-carrying `/login` (098 C1).
46
+ * The bare `/login` is the console's own page now, served by the console
47
+ * service, so there is nothing left here to dispatch against.
48
+ */ async login(event) {
49
+ this.assertEnabled();
50
+ return this.consoleLogin.login(event);
29
51
  }
30
- async servePage(event) {
31
- return this.render(event);
52
+ async callback(event) {
53
+ this.assertEnabled();
54
+ return this.consoleLogin.callback(event);
32
55
  }
33
- render(event) {
34
- return serveAccountConsolePage(event, {
35
- baseURL: this.options.baseURL,
36
- features: this.options.features,
37
- trustedOrigins: this.options.trustedOrigins
38
- });
56
+ /**
57
+ * Disabled means disabled on the server too: the kick must not mint a
58
+ * pending login and a session for a console nothing is serving. There is
59
+ * no shell to answer with any more, so the route simply does not exist.
60
+ */ assertEnabled() {
61
+ if (!this.options.enabled) throw new NotFoundError();
39
62
  }
40
63
  };
41
64
  _ts_decorate([
42
- DGet("", []),
65
+ DGet("/login/start", []),
43
66
  _ts_param(0, DContext()),
44
67
  _ts_metadata("design:type", Function),
45
68
  _ts_metadata("design:paramtypes", [typeof IAppEvent === "undefined" ? Object : IAppEvent]),
46
69
  _ts_metadata("design:returntype", Promise)
47
- ], AccountController.prototype, "serve", null);
70
+ ], AccountController.prototype, "login", null);
48
71
  _ts_decorate([
49
- DGet("/:page", []),
72
+ DGet("/callback", []),
50
73
  _ts_param(0, DContext()),
51
74
  _ts_metadata("design:type", Function),
52
75
  _ts_metadata("design:paramtypes", [typeof IAppEvent === "undefined" ? Object : IAppEvent]),
53
76
  _ts_metadata("design:returntype", Promise)
54
- ], AccountController.prototype, "servePage", null);
77
+ ], AccountController.prototype, "callback", null);
55
78
  AccountController = _ts_decorate([
56
- DController("/account"),
79
+ DController(`/${ACCOUNT_CONSOLE_SEGMENT}`),
57
80
  _ts_metadata("design:type", Function),
58
81
  _ts_metadata("design:paramtypes", [typeof AccountControllerContext === "undefined" ? Object : AccountControllerContext])
59
82
  ], AccountController);
@@ -1 +1 @@
1
- {"version":3,"file":"module.mjs","names":["DContext","DController","DGet","serveAccountConsolePage","AccountController","options","ctx","serve","event","render","servePage","baseURL","features","trustedOrigins"],"sources":["../../../../../../src/adapters/http/controllers/workflows/account/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2026.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { StatusResponseFeatures } from '@authup/core-http-kit';\nimport {\n DContext,\n DController,\n DGet,\n} from '@routup/decorators';\nimport type { IAppEvent } from 'routup';\nimport { serveAccountConsolePage } from '../../../ui/index.ts';\n\nexport type AccountControllerOptions = {\n baseURL: string,\n features: StatusResponseFeatures,\n trustedOrigins: string[],\n};\n\nexport type AccountControllerContext = {\n options: AccountControllerOptions,\n};\n\n/**\n * Serves the account console SPA (`@authup/client-account-console`) shell —\n * client-side routing owns the sub-paths, so every route returns the same\n * shell with the runtime config (apiUrl, base path, feature flags) injected.\n * The bundle's static assets ride the assets middleware (/account/assets).\n */\n@DController('/account')\nexport class AccountController {\n protected options: AccountControllerOptions;\n\n constructor(ctx: AccountControllerContext) {\n this.options = ctx.options;\n }\n\n @DGet('', [])\n async serve(@DContext() event: IAppEvent): Promise<string> {\n return this.render(event);\n }\n\n @DGet('/:page', [])\n async servePage(@DContext() event: IAppEvent): Promise<string> {\n return this.render(event);\n }\n\n protected render(event: IAppEvent): Promise<string> {\n return serveAccountConsolePage(event, {\n baseURL: this.options.baseURL,\n features: this.options.features,\n trustedOrigins: this.options.trustedOrigins,\n });\n }\n}\n"],"mappings":";;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;;;;;;;;;AA4BD,IAAaI,oBAAb,MAAaA;CACCC;CAEV,YAAYC,KAA+B;EACvC,KAAKD,UAAUC,IAAID;CACvB;CAEA,MACME,MAAM,OAA+C;EACvD,OAAO,KAAKE,OAAOD,KAAAA;CACvB;CAEA,MACME,UAAU,OAA+C;EAC3D,OAAO,KAAKD,OAAOD,KAAAA;CACvB;CAEUC,OAAOD,OAAmC;EAChD,OAAOL,wBAAwBK,OAAO;GAClCG,SAAS,KAAKN,QAAQM;GACtBC,UAAU,KAAKP,QAAQO;GACvBC,gBAAgB,KAAKR,QAAQQ;EACjC,CAAA;CACJ;AACJ"}
1
+ {"version":3,"file":"module.mjs","names":["CLIENT_ACCOUNT_CONSOLE_NAME","NotFoundError","DContext","DController","DGet","ACCOUNT_CONSOLE_SEGMENT","ConsoleLogin","AccountController","options","consoleLogin","ctx","clientName","segment","consoleUrl","baseURL","loginStore","sessionRepository","sessionManager","tokenVerifier","tokenRevoker","logger","login","event","assertEnabled","callback","enabled"],"sources":["../../../../../../src/adapters/http/controllers/workflows/account/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2026.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { CLIENT_ACCOUNT_CONSOLE_NAME } from '@authup/core-kit';\nimport { NotFoundError } from '@ebec/http';\nimport {\n DContext,\n DController,\n DGet,\n} from '@routup/decorators';\nimport type { IAppEvent } from 'routup';\nimport { ACCOUNT_CONSOLE_SEGMENT } from '../../../constants.ts';\nimport { ConsoleLogin } from '../console-login/index.ts';\nimport type { AccountControllerContext, AccountControllerOptions } from './types.ts';\n\n/**\n * The account console's server half (plan 088): the login kick and the code\n * redemption, so no OAuth2 token ever reaches the console's JavaScript.\n *\n * The console itself is served by `@authup/server-account-console`, which\n * owns everything else under `/console/account`. These two routes stay here\n * because they are sessions, keys and cache, and because the pending-login\n * cookie has to be issued on the origin that reads it back (plan 101\n * invariant 3). A proxy therefore routes these two exact paths to the API\n * set and the rest of the console's segment to the console set.\n */\n@DController(`/${ACCOUNT_CONSOLE_SEGMENT}`)\nexport class AccountController {\n protected options: AccountControllerOptions;\n\n protected consoleLogin: ConsoleLogin;\n\n constructor(ctx: AccountControllerContext) {\n this.options = ctx.options;\n this.consoleLogin = new ConsoleLogin(\n {\n clientName: CLIENT_ACCOUNT_CONSOLE_NAME,\n segment: ACCOUNT_CONSOLE_SEGMENT,\n consoleUrl: ctx.options.consoleUrl,\n },\n {\n options: { baseURL: ctx.options.baseURL },\n loginStore: ctx.loginStore,\n sessionRepository: ctx.sessionRepository,\n sessionManager: ctx.sessionManager,\n tokenVerifier: ctx.tokenVerifier,\n tokenRevoker: ctx.tokenRevoker,\n logger: ctx.logger,\n },\n );\n }\n\n /**\n * A path of its own rather than a `realmId`-carrying `/login` (098 C1).\n * The bare `/login` is the console's own page now, served by the console\n * service, so there is nothing left here to dispatch against.\n */\n @DGet('/login/start', [])\n async login(@DContext() event: IAppEvent): Promise<Response> {\n this.assertEnabled();\n\n return this.consoleLogin.login(event);\n }\n\n @DGet('/callback', [])\n async callback(@DContext() event: IAppEvent): Promise<Response> {\n this.assertEnabled();\n\n return this.consoleLogin.callback(event);\n }\n\n /**\n * Disabled means disabled on the server too: the kick must not mint a\n * pending login and a session for a console nothing is serving. There is\n * no shell to answer with any more, so the route simply does not exist.\n */\n protected assertEnabled(): void {\n if (!this.options.enabled) {\n throw new NotFoundError();\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AA+BA,IAAaO,oBAAb,MAAaA;CACCC;CAEAC;CAEV,YAAYC,KAA+B;EACvC,KAAKF,UAAUE,IAAIF;EACnB,KAAKC,eAAe,IAAIH,aACpB;GACIK,YAAYX;GACZY,SAASP;GACTQ,YAAYH,IAAIF,QAAQK;EAC5B,GACA;GACIL,SAAS,EAAEM,SAASJ,IAAIF,QAAQM,QAAQ;GACxCC,YAAYL,IAAIK;GAChBC,mBAAmBN,IAAIM;GACvBC,gBAAgBP,IAAIO;GACpBC,eAAeR,IAAIQ;GACnBC,cAAcT,IAAIS;GAClBC,QAAQV,IAAIU;EAChB,CAAA;CAER;;;;;IAOA,MACMC,MAAM,OAAiD;EACzD,KAAKE,cAAa;EAElB,OAAO,KAAKd,aAAaY,MAAMC,KAAAA;CACnC;CAEA,MACME,SAAS,OAAiD;EAC5D,KAAKD,cAAa;EAElB,OAAO,KAAKd,aAAae,SAASF,KAAAA;CACtC;;;;;IAOA,gBAAgC;EAC5B,IAAI,CAAC,KAAKd,QAAQiB,SACd,MAAM,IAAIxB,cAAAA;CAElB;AACJ;;;;;;;;;;;;;;;;CAvDc,YAAA,IAAGI,yBAAAA"}
@@ -0,0 +1,33 @@
1
+ import type { Logger } from '@authup/server-kit';
2
+ import type { IConsoleLoginStore, IOAuth2TokenRevoker, IOAuth2TokenVerifier, ISessionManager, ISessionRepository } from '../../../../../core/index.ts';
3
+ export type AccountControllerOptions = {
4
+ baseURL: string;
5
+ /**
6
+ * Where the console this authenticates for is served. The browser lands
7
+ * there once the credential is issued, and a refusal renders there.
8
+ */
9
+ consoleUrl: string;
10
+ enabled: boolean;
11
+ };
12
+ export type AccountControllerContext = {
13
+ options: AccountControllerOptions;
14
+ /**
15
+ * Holds the PKCE verifier and `state` while the browser is away at
16
+ * `/authorize` (plan 088).
17
+ */
18
+ loginStore: IConsoleLoginStore;
19
+ /**
20
+ * Writes and clears the opaque credential on the session row. The session
21
+ * MANAGER cannot: the column is `select: false` and has a dedicated write.
22
+ */
23
+ sessionRepository: ISessionRepository;
24
+ sessionManager: ISessionManager;
25
+ /**
26
+ * Reads the exchanged access token (session, subject) and the refresh
27
+ * token, so both can be revoked before either leaves the process.
28
+ */
29
+ tokenVerifier: IOAuth2TokenVerifier;
30
+ tokenRevoker: IOAuth2TokenRevoker;
31
+ logger?: Logger;
32
+ };
33
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/account/types.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EACR,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EACrB,MAAM,8BAA8B,CAAC;AAEtC,MAAM,MAAM,wBAAwB,GAAG;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACnC,OAAO,EAAE,wBAAwB,CAAC;IAClC;;;OAGG;IACH,UAAU,EAAE,kBAAkB,CAAC;IAC/B;;;OAGG;IACH,iBAAiB,EAAE,kBAAkB,CAAC;IACtC,cAAc,EAAE,eAAe,CAAC;IAChC;;;OAGG;IACH,aAAa,EAAE,oBAAoB,CAAC;IACpC,YAAY,EAAE,mBAAmB,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC"}
@@ -1,9 +1,8 @@
1
1
  import type { IAppEvent } from 'routup';
2
- import type { ActivatePayload, StatusResponseFeatures } from '@authup/core-http-kit';
2
+ import type { ActivatePayload } from '@authup/core-http-kit';
3
3
  import type { IRegistrationService } from '../../../../../core/index.ts';
4
4
  export type ActivateControllerOptions = {
5
- baseURL: string;
6
- features: StatusResponseFeatures;
5
+ authConsoleUrl: string;
7
6
  };
8
7
  export type ActivateControllerContext = {
9
8
  options: ActivateControllerOptions;
@@ -13,7 +12,12 @@ export declare class ActivateController {
13
12
  protected options: ActivateControllerOptions;
14
13
  protected service: IRegistrationService;
15
14
  constructor(ctx: ActivateControllerContext);
16
- serve(event: IAppEvent): Promise<string>;
15
+ /**
16
+ * The page renders in the auth console service; this hop carries the
17
+ * request's own parameters over to it. The POST below stays here:
18
+ * server-core keeps the protocol, the service keeps the render.
19
+ */
20
+ serve(event: IAppEvent): Promise<Response>;
17
21
  execute(data: ActivatePayload, event: IAppEvent): Promise<null>;
18
22
  }
19
23
  //# sourceMappingURL=module.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/activate/module.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,KAAK,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAIzE,MAAM,MAAM,yBAAyB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,sBAAsB,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACpC,OAAO,EAAE,yBAAyB,CAAC;IACnC,OAAO,EAAE,oBAAoB,CAAC;CACjC,CAAC;AAEF,qBACa,kBAAkB;IAC3B,SAAS,CAAC,OAAO,EAAE,yBAAyB,CAAC;IAE7C,SAAS,CAAC,OAAO,EAAE,oBAAoB,CAAC;gBAE5B,GAAG,EAAE,yBAAyB;IAMpC,KAAK,CAAa,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;IAUpD,OAAO,CACA,IAAI,EAAE,eAAe,EAClB,KAAK,EAAE,SAAS,GAC7B,OAAO,CAAC,IAAI,CAAC;CASnB"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/activate/module.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAIzE,MAAM,MAAM,yBAAyB,GAAG;IACpC,cAAc,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACpC,OAAO,EAAE,yBAAyB,CAAC;IACnC,OAAO,EAAE,oBAAoB,CAAC;CACjC,CAAC;AAEF,qBACa,kBAAkB;IAC3B,SAAS,CAAC,OAAO,EAAE,yBAAyB,CAAC;IAE7C,SAAS,CAAC,OAAO,EAAE,oBAAoB,CAAC;gBAE5B,GAAG,EAAE,yBAAyB;IAK1C;;;;OAIG;IAEG,KAAK,CAAa,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;IAKtD,OAAO,CACA,IAAI,EAAE,eAAe,EAClB,KAAK,EAAE,SAAS,GAC7B,OAAO,CAAC,IAAI,CAAC;CASnB"}
@@ -1,8 +1,7 @@
1
1
  import "node:path";
2
2
  import "node:url";
3
3
  import.meta.url;
4
- import { serveWorkflowPage } from "../../../ui/auth-console/serve.mjs";
5
- import "../../../ui/index.mjs";
4
+ import { redirectToAuthConsole } from "../auth-console.mjs";
6
5
  import { ActivateRequestValidator } from "./validator.mjs";
7
6
  import { DBody, DContext, DController, DGet, DPost } from "@routup/decorators";
8
7
  //#region src/adapters/http/controllers/workflows/activate/module.ts
@@ -27,13 +26,12 @@ var ActivateController = class {
27
26
  this.options = ctx.options;
28
27
  this.service = ctx.service;
29
28
  }
30
- async serve(event) {
31
- return serveWorkflowPage(event, {
32
- url: "/activate",
33
- baseURL: this.options.baseURL,
34
- features: this.options.features,
35
- tokenAware: true
36
- });
29
+ /**
30
+ * The page renders in the auth console service; this hop carries the
31
+ * request's own parameters over to it. The POST below stays here:
32
+ * server-core keeps the protocol, the service keeps the render.
33
+ */ async serve(event) {
34
+ return redirectToAuthConsole(event, this.options.authConsoleUrl, "/activate");
37
35
  }
38
36
  async execute(data, event) {
39
37
  const validated = await new ActivateRequestValidator().run(data);
@@ -1 +1 @@
1
- {"version":3,"file":"module.mjs","names":["DBody","DContext","DController","DGet","DPost","serveWorkflowPage","ActivateRequestValidator","ActivateController","options","service","ctx","serve","event","url","baseURL","features","tokenAware","execute","data","validator","validated","run","activate","response","status"],"sources":["../../../../../../src/adapters/http/controllers/workflows/activate/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n DBody,\n DContext,\n DController,\n DGet,\n DPost,\n} from '@routup/decorators';\nimport type { IAppEvent } from 'routup';\nimport type { ActivatePayload, StatusResponseFeatures } from '@authup/core-http-kit';\nimport type { IRegistrationService } from '../../../../../core/index.ts';\nimport { serveWorkflowPage } from '../../../ui/index.ts';\nimport { ActivateRequestValidator } from './validator.ts';\n\nexport type ActivateControllerOptions = {\n baseURL: string,\n features: StatusResponseFeatures,\n};\n\nexport type ActivateControllerContext = {\n options: ActivateControllerOptions,\n service: IRegistrationService,\n};\n\n@DController('/activate')\nexport class ActivateController {\n protected options: ActivateControllerOptions;\n\n protected service: IRegistrationService;\n\n constructor(ctx: ActivateControllerContext) {\n this.options = ctx.options;\n this.service = ctx.service;\n }\n\n @DGet('', [])\n async serve(@DContext() event: IAppEvent): Promise<string> {\n return serveWorkflowPage(event, {\n url: '/activate',\n baseURL: this.options.baseURL,\n features: this.options.features,\n tokenAware: true,\n });\n }\n\n @DPost('', [])\n async execute(\n @DBody() data: ActivatePayload,\n @DContext() event: IAppEvent,\n ): Promise<null> {\n const validator = new ActivateRequestValidator();\n const validated = await validator.run(data);\n\n await this.service.activate(validated);\n\n event.response.status = 202;\n return null;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AA+BA,IAAaO,qBAAb,MAAaA;CACCC;CAEAC;CAEV,YAAYC,KAAgC;EACxC,KAAKF,UAAUE,IAAIF;EACnB,KAAKC,UAAUC,IAAID;CACvB;CAEA,MACME,MAAM,OAA+C;EACvD,OAAON,kBAAkBO,OAAO;GAC5BC,KAAK;GACLC,SAAS,KAAKN,QAAQM;GACtBC,UAAU,KAAKP,QAAQO;GACvBC,YAAY;EAChB,CAAA;CACJ;CAEA,MACMC,QACF,MACA,OACa;EAEb,MAAMG,YAAY,MAAMD,IADFb,yBACEa,CAAAA,CAAUE,IAAIH,IAAAA;EAEtC,MAAM,KAAKT,QAAQa,SAASF,SAAAA;EAE5BR,MAAMW,SAASC,SAAS;EACxB,OAAO;CACX;AACJ"}
1
+ {"version":3,"file":"module.mjs","names":["DBody","DContext","DController","DGet","DPost","redirectToAuthConsole","ActivateRequestValidator","ActivateController","options","service","ctx","serve","event","authConsoleUrl","execute","data","validator","validated","run","activate","response","status"],"sources":["../../../../../../src/adapters/http/controllers/workflows/activate/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n DBody,\n DContext,\n DController,\n DGet,\n DPost,\n} from '@routup/decorators';\nimport type { IAppEvent } from 'routup';\nimport type { ActivatePayload } from '@authup/core-http-kit';\nimport type { IRegistrationService } from '../../../../../core/index.ts';\nimport { redirectToAuthConsole } from '../auth-console.ts';\nimport { ActivateRequestValidator } from './validator.ts';\n\nexport type ActivateControllerOptions = {\n authConsoleUrl: string,\n};\n\nexport type ActivateControllerContext = {\n options: ActivateControllerOptions,\n service: IRegistrationService,\n};\n\n@DController('/activate')\nexport class ActivateController {\n protected options: ActivateControllerOptions;\n\n protected service: IRegistrationService;\n\n constructor(ctx: ActivateControllerContext) {\n this.options = ctx.options;\n this.service = ctx.service;\n }\n\n /**\n * The page renders in the auth console service; this hop carries the\n * request's own parameters over to it. The POST below stays here:\n * server-core keeps the protocol, the service keeps the render.\n */\n @DGet('', [])\n async serve(@DContext() event: IAppEvent): Promise<Response> {\n return redirectToAuthConsole(event, this.options.authConsoleUrl, '/activate');\n }\n\n @DPost('', [])\n async execute(\n @DBody() data: ActivatePayload,\n @DContext() event: IAppEvent,\n ): Promise<null> {\n const validator = new ActivateRequestValidator();\n const validated = await validator.run(data);\n\n await this.service.activate(validated);\n\n event.response.status = 202;\n return null;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA8BA,IAAaO,qBAAb,MAAaA;CACCC;CAEAC;CAEV,YAAYC,KAAgC;EACxC,KAAKF,UAAUE,IAAIF;EACnB,KAAKC,UAAUC,IAAID;CACvB;;;;;IAOA,MACME,MAAM,OAAiD;EACzD,OAAON,sBAAsBO,OAAO,KAAKJ,QAAQK,gBAAgB,WAAA;CACrE;CAEA,MACMC,QACF,MACA,OACa;EAEb,MAAMG,YAAY,MAAMD,IADFV,yBACEU,CAAAA,CAAUE,IAAIH,IAAAA;EAEtC,MAAM,KAAKN,QAAQU,SAASF,SAAAA;EAE5BL,MAAMQ,SAASC,SAAS;EACxB,OAAO;CACX;AACJ"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/admin/index.ts"],"names":[],"mappings":"AAOA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,5 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
4
+ import { AdminController } from "./module.mjs";
5
+ export { AdminController };
@@ -0,0 +1,30 @@
1
+ import type { IAppEvent } from 'routup';
2
+ import { ConsoleLogin } from '../console-login/index.ts';
3
+ import type { AdminControllerContext, AdminControllerOptions } from './types.ts';
4
+ /**
5
+ * The admin console's server half (plan 088): the login kick and the code
6
+ * redemption, bound to the per-realm `admin-console` client.
7
+ *
8
+ * The console itself is served by `@authup/server-admin-console`. See
9
+ * {@link AccountController} for why these two routes stay on the API.
10
+ */
11
+ export declare class AdminController {
12
+ protected options: AdminControllerOptions;
13
+ protected consoleLogin: ConsoleLogin;
14
+ constructor(ctx: AdminControllerContext);
15
+ /**
16
+ * A path of its own rather than a `realmId`-carrying `/login` (098 C1).
17
+ * One URL used to mean two things: with a realm the server-side kick,
18
+ * without one the console's own login PAGE. The page is served by the
19
+ * console service now, so the kick can no longer fall back to it and the
20
+ * split became required rather than optional.
21
+ */
22
+ login(event: IAppEvent): Promise<Response>;
23
+ callback(event: IAppEvent): Promise<Response>;
24
+ /**
25
+ * Disabled means disabled on the server too: the kick must not mint a
26
+ * pending login and a session for a console nothing is serving.
27
+ */
28
+ protected assertEnabled(): void;
29
+ }
30
+ //# sourceMappingURL=module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/controllers/workflows/admin/module.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEjF;;;;;;GAMG;AACH,qBACa,eAAe;IACxB,SAAS,CAAC,OAAO,EAAE,sBAAsB,CAAC;IAE1C,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;gBAEzB,GAAG,EAAE,sBAAsB;IAwBvC;;;;;;OAMG;IAEG,KAAK,CAAa,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;IAOtD,QAAQ,CAAa,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;IAM/D;;;OAGG;IACH,SAAS,CAAC,aAAa,IAAI,IAAI;CAKlC"}
@@ -0,0 +1,88 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
4
+ import { ADMIN_CONSOLE_SEGMENT } from "../../../constants.mjs";
5
+ import { ConsoleLogin } from "../console-login/module.mjs";
6
+ import "../console-login/index.mjs";
7
+ import { CLIENT_ADMIN_CONSOLE_NAME } from "@authup/core-kit";
8
+ import { NotFoundError } from "@ebec/http";
9
+ import { DContext, DController, DGet } from "@routup/decorators";
10
+ //#region src/adapters/http/controllers/workflows/admin/module.ts
11
+ function _ts_decorate(decorators, target, key, desc) {
12
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
15
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
16
+ }
17
+ function _ts_metadata(metadataKey, metadataValue) {
18
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
19
+ }
20
+ function _ts_param(paramIndex, decorator) {
21
+ return function(target, key) {
22
+ decorator(target, key, paramIndex);
23
+ };
24
+ }
25
+ var AdminController = class {
26
+ options;
27
+ consoleLogin;
28
+ constructor(ctx) {
29
+ this.options = ctx.options;
30
+ this.consoleLogin = new ConsoleLogin({
31
+ clientName: CLIENT_ADMIN_CONSOLE_NAME,
32
+ segment: ADMIN_CONSOLE_SEGMENT,
33
+ consoleUrl: ctx.options.consoleUrl,
34
+ refusalPath: "login"
35
+ }, {
36
+ options: { baseURL: ctx.options.baseURL },
37
+ loginStore: ctx.loginStore,
38
+ sessionRepository: ctx.sessionRepository,
39
+ sessionManager: ctx.sessionManager,
40
+ tokenVerifier: ctx.tokenVerifier,
41
+ tokenRevoker: ctx.tokenRevoker,
42
+ logger: ctx.logger
43
+ });
44
+ }
45
+ /**
46
+ * A path of its own rather than a `realmId`-carrying `/login` (098 C1).
47
+ * One URL used to mean two things: with a realm the server-side kick,
48
+ * without one the console's own login PAGE. The page is served by the
49
+ * console service now, so the kick can no longer fall back to it and the
50
+ * split became required rather than optional.
51
+ */ async login(event) {
52
+ this.assertEnabled();
53
+ return this.consoleLogin.login(event);
54
+ }
55
+ async callback(event) {
56
+ this.assertEnabled();
57
+ return this.consoleLogin.callback(event);
58
+ }
59
+ /**
60
+ * Disabled means disabled on the server too: the kick must not mint a
61
+ * pending login and a session for a console nothing is serving.
62
+ */ assertEnabled() {
63
+ if (!this.options.enabled) throw new NotFoundError();
64
+ }
65
+ };
66
+ _ts_decorate([
67
+ DGet("/login/start", []),
68
+ _ts_param(0, DContext()),
69
+ _ts_metadata("design:type", Function),
70
+ _ts_metadata("design:paramtypes", [typeof IAppEvent === "undefined" ? Object : IAppEvent]),
71
+ _ts_metadata("design:returntype", Promise)
72
+ ], AdminController.prototype, "login", null);
73
+ _ts_decorate([
74
+ DGet("/callback", []),
75
+ _ts_param(0, DContext()),
76
+ _ts_metadata("design:type", Function),
77
+ _ts_metadata("design:paramtypes", [typeof IAppEvent === "undefined" ? Object : IAppEvent]),
78
+ _ts_metadata("design:returntype", Promise)
79
+ ], AdminController.prototype, "callback", null);
80
+ AdminController = _ts_decorate([
81
+ DController(`/${ADMIN_CONSOLE_SEGMENT}`),
82
+ _ts_metadata("design:type", Function),
83
+ _ts_metadata("design:paramtypes", [typeof AdminControllerContext === "undefined" ? Object : AdminControllerContext])
84
+ ], AdminController);
85
+ //#endregion
86
+ export { AdminController };
87
+
88
+ //# sourceMappingURL=module.mjs.map