@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
@@ -1,120 +0,0 @@
1
- /**
2
- * The theme CONTRACT: the on-disk layout, the manifest vocabulary and the
3
- * URL space a theme occupies. Everything here is portable — no node APIs,
4
- * no HTTP — so a browser-side theme editor or a CLI validator can share it
5
- * verbatim. Serving concerns (headers, caches, mounts) live one level up.
6
- */
7
- export declare const THEME_MANIFEST_FILE_NAME = "theme.json";
8
- /**
9
- * The ONLY sub-directory reachable over HTTP. The mount root is
10
- * `<themeDirectoryPath>/assets`, never the theme root, so `theme.json`
11
- * (and any future non-public file) is unreachable by construction rather
12
- * than by an extension filter a later edit could loosen.
13
- */
14
- export declare const THEME_ASSETS_DIRECTORY_NAME = "assets";
15
- export declare const THEME_FRAGMENTS_DIRECTORY_NAME = "fragments";
16
- /**
17
- * Raw markup spliced into `<head>`. Read only when the operator opts in
18
- * via `themeFragmentsEnabled`: a fragment is unsanitized markup on the
19
- * IdP origin, so it must be a deliberate decision and never a consequence
20
- * of dropping a file into the mounted directory.
21
- *
22
- * Head-only by design. There is deliberately no in-`<body>` slot: a
23
- * fragment rendered next to the consent buttons is a strictly better
24
- * consent-forgery primitive than one in `<head>` (it could relabel or
25
- * overlay Allow with no CSS at all).
26
- */
27
- export declare const THEME_HEAD_FRAGMENT_FILE_NAME = "head.html";
28
- export declare const THEME_HEAD_FRAGMENT_MAX_LENGTH: number;
29
- /** The path segment the theme's `assets/` directory is served under. */
30
- export declare const THEME_ASSET_MOUNT_PATH = "theme";
31
- /**
32
- * A manifest declares the contract version it was written against. An
33
- * unknown version fails the boot instead of being partially understood.
34
- */
35
- export declare const THEME_MANIFEST_VERSION = 1;
36
- /**
37
- * Token names are validated by GRAMMAR, not against a closed list of the
38
- * `--authup-*` properties the theme packages happen to declare today.
39
- *
40
- * A closed list would have to live here, and this package cannot depend on
41
- * `@authup/client-web-kit-theme`, so nothing could bind the two and it
42
- * would rot in both directions: a newly added CSS token would fail
43
- * validation for a legitimate override, and a removed one would stay
44
- * accepted. The grammar cannot rot.
45
- *
46
- * It is NOT sufficient for an untrusted (per-realm) token source, and a
47
- * later rung must not adopt it unchanged. Values are guarded by a denylist
48
- * of CSS functions, and a denylist over a language that keeps gaining
49
- * functions leaks by construction: `image-set()` and `src()` already had
50
- * to be added after `url()`. Filesystem input is operator trust, equal to
51
- * the process, so a denylist is proportionate here. Untrusted input needs
52
- * an allowlist of accepted value SHAPES (a colour, a length, a keyword)
53
- * per token, which is a different validator.
54
- */
55
- export declare const THEME_TOKEN_NAME_PATTERN: RegExp;
56
- export declare const THEME_TOKEN_VALUE_MAX_LENGTH = 256;
57
- /**
58
- * Keeps a token value from closing the declaration block, opening a tag,
59
- * starting a new at-rule or comment, or turning the server-emitted token
60
- * block into a request-emitting sink. Layer 2 (`theme.css`) may of course
61
- * use `url()`; that asymmetry is deliberate and documented.
62
- *
63
- * `{` is forbidden alongside `}`: it opens a block inside the declaration,
64
- * which swallows the rule that follows. One stray brace in a light token
65
- * silently absorbs the whole `.dark` rule, so dark mode stops applying
66
- * with no error anywhere.
67
- *
68
- * Vendor prefixes are covered (`-webkit-image-set(`), and so is whitespace
69
- * before the paren; escapes cannot be used to smuggle a name past this
70
- * because `\` is forbidden outright.
71
- */
72
- export declare const THEME_TOKEN_VALUE_FORBIDDEN_PATTERN: RegExp;
73
- /**
74
- * Every asset kind a theme may contain, and the content type it is pinned
75
- * to when served. Notably excludes `.html` and `.js`, so a stray document
76
- * or script in the mounted directory can never be served from the IdP
77
- * origin.
78
- */
79
- export declare const THEME_ASSET_CONTENT_TYPES: Record<string, string>;
80
- /**
81
- * Derived, never hand-maintained: the allowlist and the content-type map
82
- * must describe the same set, or a servable extension would be sent with
83
- * an undefined content type.
84
- */
85
- export declare const THEME_ASSET_EXTENSIONS: string[];
86
- /**
87
- * The subset a `logo` may use. Derived from the content-type map so a new
88
- * image type is servable and usable as a logo in one edit.
89
- */
90
- export declare const THEME_IMAGE_EXTENSIONS: string[];
91
- /**
92
- * Emitted by server-core from a manifest's `logo`, never authored as a raw
93
- * token: the value carries a `url()`, which the token grammar forbids for
94
- * operator-supplied values so the token block cannot become a
95
- * request-emitting sink. The href is built from an already-validated asset
96
- * path.
97
- */
98
- export declare const THEME_LOGO_TOKENS: readonly [{
99
- readonly image: "--authup-auth-logo-image";
100
- readonly markVisibility: "--authup-auth-logo-mark-visibility";
101
- }, {
102
- readonly image: "--authup-account-logo-image";
103
- readonly markVisibility: "--authup-account-logo-mark-visibility";
104
- }];
105
- /**
106
- * The CSS layer the token block is emitted into.
107
- *
108
- * A layer name not present in the bundle's `@layer` statement is appended
109
- * LAST in the layer order, so it beats `@layer authup` (the kit tokens)
110
- * and `@layer base` (the app theme's brand rebinds and its `.dark` flips)
111
- * without needing `!important`. Inside the block `.dark` beats `:root` by
112
- * source order, so dark mode keeps working.
113
- *
114
- * Deliberately NOT an inline `style` attribute on `<html>`: that would win
115
- * permanently, and the color-mode switcher flips the `.dark` class
116
- * client-side with no reload, which would freeze the brand at whatever the
117
- * cookie said at render time.
118
- */
119
- export declare const THEME_CSS_LAYER_NAME = "authup-theme";
120
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/ui/theme/contract/constants.ts"],"names":[],"mappings":"AAOA;;;;;GAKG;AAEH,eAAO,MAAM,wBAAwB,eAAe,CAAC;AAErD;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,WAAW,CAAC;AAEpD,eAAO,MAAM,8BAA8B,cAAc,CAAC;AAE1D;;;;;;;;;;GAUG;AACH,eAAO,MAAM,6BAA6B,cAAc,CAAC;AAEzD,eAAO,MAAM,8BAA8B,QAAY,CAAC;AAExD,wEAAwE;AACxE,eAAO,MAAM,sBAAsB,UAAU,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,wBAAwB,QAAwB,CAAC;AAE9D,eAAO,MAAM,4BAA4B,MAAM,CAAC;AA8BhD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,mCAAmC,QAG/C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,EAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAY7D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,UAAyC,CAAC;AAE7E;;;GAGG;AACH,eAAO,MAAM,sBAAsB,UACkD,CAAC;AAEtF;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB;;;;;;EAGpB,CAAC;AAEX;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,oBAAoB,iBAAiB,CAAC"}
@@ -1,136 +0,0 @@
1
- import "node:path";
2
- import "node:url";
3
- import.meta.url;
4
- //#region src/adapters/http/ui/theme/contract/constants.ts
5
- /**
6
- * The theme CONTRACT: the on-disk layout, the manifest vocabulary and the
7
- * URL space a theme occupies. Everything here is portable — no node APIs,
8
- * no HTTP — so a browser-side theme editor or a CLI validator can share it
9
- * verbatim. Serving concerns (headers, caches, mounts) live one level up.
10
- */ const THEME_MANIFEST_FILE_NAME = "theme.json";
11
- /**
12
- * The ONLY sub-directory reachable over HTTP. The mount root is
13
- * `<themeDirectoryPath>/assets`, never the theme root, so `theme.json`
14
- * (and any future non-public file) is unreachable by construction rather
15
- * than by an extension filter a later edit could loosen.
16
- */ const THEME_ASSETS_DIRECTORY_NAME = "assets";
17
- const THEME_FRAGMENTS_DIRECTORY_NAME = "fragments";
18
- /**
19
- * Raw markup spliced into `<head>`. Read only when the operator opts in
20
- * via `themeFragmentsEnabled`: a fragment is unsanitized markup on the
21
- * IdP origin, so it must be a deliberate decision and never a consequence
22
- * of dropping a file into the mounted directory.
23
- *
24
- * Head-only by design. There is deliberately no in-`<body>` slot: a
25
- * fragment rendered next to the consent buttons is a strictly better
26
- * consent-forgery primitive than one in `<head>` (it could relabel or
27
- * overlay Allow with no CSS at all).
28
- */ const THEME_HEAD_FRAGMENT_FILE_NAME = "head.html";
29
- const THEME_HEAD_FRAGMENT_MAX_LENGTH = 65536;
30
- /** The path segment the theme's `assets/` directory is served under. */ const THEME_ASSET_MOUNT_PATH = "theme";
31
- /**
32
- * A manifest declares the contract version it was written against. An
33
- * unknown version fails the boot instead of being partially understood.
34
- */ const THEME_MANIFEST_VERSION = 1;
35
- /**
36
- * Token names are validated by GRAMMAR, not against a closed list of the
37
- * `--authup-*` properties the theme packages happen to declare today.
38
- *
39
- * A closed list would have to live here, and this package cannot depend on
40
- * `@authup/client-web-kit-theme`, so nothing could bind the two and it
41
- * would rot in both directions: a newly added CSS token would fail
42
- * validation for a legitimate override, and a removed one would stay
43
- * accepted. The grammar cannot rot.
44
- *
45
- * It is NOT sufficient for an untrusted (per-realm) token source, and a
46
- * later rung must not adopt it unchanged. Values are guarded by a denylist
47
- * of CSS functions, and a denylist over a language that keeps gaining
48
- * functions leaks by construction: `image-set()` and `src()` already had
49
- * to be added after `url()`. Filesystem input is operator trust, equal to
50
- * the process, so a denylist is proportionate here. Untrusted input needs
51
- * an allowlist of accepted value SHAPES (a colour, a length, a keyword)
52
- * per token, which is a different validator.
53
- */ const THEME_TOKEN_NAME_PATTERN = /^--[a-z][a-z0-9-]*$/;
54
- const THEME_TOKEN_VALUE_MAX_LENGTH = 256;
55
- /**
56
- * Keeps a token value from closing the declaration block, opening a tag,
57
- * starting a new at-rule or comment, or turning the server-emitted token
58
- * block into a request-emitting sink. Layer 2 (`theme.css`) may of course
59
- * use `url()`; that asymmetry is deliberate and documented.
60
- *
61
- * `{` is forbidden alongside `}`: it opens a block inside the declaration,
62
- * which swallows the rule that follows. One stray brace in a light token
63
- * silently absorbs the whole `.dark` rule, so dark mode stops applying
64
- * with no error anywhere.
65
- *
66
- * Vendor prefixes are covered (`-webkit-image-set(`), and so is whitespace
67
- * before the paren; escapes cannot be used to smuggle a name past this
68
- * because `\` is forbidden outright.
69
- */ const THEME_TOKEN_VALUE_FORBIDDEN_PATTERN = new RegExp(`[{}<>;@\\\\]|\\/\\*|(?:^|[^a-z0-9-])(?:-[a-z]+-)?(?:${[
70
- "url",
71
- "expression",
72
- "image",
73
- "image-set",
74
- "src",
75
- "cross-fade",
76
- "element",
77
- "paint"
78
- ].join("|")})\\s*\\(`, "i");
79
- /**
80
- * Every asset kind a theme may contain, and the content type it is pinned
81
- * to when served. Notably excludes `.html` and `.js`, so a stray document
82
- * or script in the mounted directory can never be served from the IdP
83
- * origin.
84
- */ const THEME_ASSET_CONTENT_TYPES = {
85
- ".css": "text/css; charset=utf-8",
86
- ".svg": "image/svg+xml",
87
- ".png": "image/png",
88
- ".jpg": "image/jpeg",
89
- ".jpeg": "image/jpeg",
90
- ".gif": "image/gif",
91
- ".webp": "image/webp",
92
- ".avif": "image/avif",
93
- ".ico": "image/x-icon",
94
- ".woff": "font/woff",
95
- ".woff2": "font/woff2"
96
- };
97
- /**
98
- * Derived, never hand-maintained: the allowlist and the content-type map
99
- * must describe the same set, or a servable extension would be sent with
100
- * an undefined content type.
101
- */ const THEME_ASSET_EXTENSIONS = Object.keys(THEME_ASSET_CONTENT_TYPES);
102
- /**
103
- * The subset a `logo` may use. Derived from the content-type map so a new
104
- * image type is servable and usable as a logo in one edit.
105
- */ const THEME_IMAGE_EXTENSIONS = THEME_ASSET_EXTENSIONS.filter((extension) => THEME_ASSET_CONTENT_TYPES[extension].startsWith("image/"));
106
- /**
107
- * Emitted by server-core from a manifest's `logo`, never authored as a raw
108
- * token: the value carries a `url()`, which the token grammar forbids for
109
- * operator-supplied values so the token block cannot become a
110
- * request-emitting sink. The href is built from an already-validated asset
111
- * path.
112
- */ const THEME_LOGO_TOKENS = [{
113
- image: "--authup-auth-logo-image",
114
- markVisibility: "--authup-auth-logo-mark-visibility"
115
- }, {
116
- image: "--authup-account-logo-image",
117
- markVisibility: "--authup-account-logo-mark-visibility"
118
- }];
119
- /**
120
- * The CSS layer the token block is emitted into.
121
- *
122
- * A layer name not present in the bundle's `@layer` statement is appended
123
- * LAST in the layer order, so it beats `@layer authup` (the kit tokens)
124
- * and `@layer base` (the app theme's brand rebinds and its `.dark` flips)
125
- * without needing `!important`. Inside the block `.dark` beats `:root` by
126
- * source order, so dark mode keeps working.
127
- *
128
- * Deliberately NOT an inline `style` attribute on `<html>`: that would win
129
- * permanently, and the color-mode switcher flips the `.dark` class
130
- * client-side with no reload, which would freeze the brand at whatever the
131
- * cookie said at render time.
132
- */ const THEME_CSS_LAYER_NAME = "authup-theme";
133
- //#endregion
134
- export { THEME_ASSETS_DIRECTORY_NAME, THEME_ASSET_CONTENT_TYPES, THEME_ASSET_EXTENSIONS, THEME_ASSET_MOUNT_PATH, THEME_CSS_LAYER_NAME, THEME_FRAGMENTS_DIRECTORY_NAME, THEME_HEAD_FRAGMENT_FILE_NAME, THEME_HEAD_FRAGMENT_MAX_LENGTH, THEME_IMAGE_EXTENSIONS, THEME_LOGO_TOKENS, THEME_MANIFEST_FILE_NAME, THEME_MANIFEST_VERSION, THEME_TOKEN_NAME_PATTERN, THEME_TOKEN_VALUE_FORBIDDEN_PATTERN, THEME_TOKEN_VALUE_MAX_LENGTH };
135
-
136
- //# sourceMappingURL=constants.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.mjs","names":["THEME_MANIFEST_FILE_NAME","THEME_ASSETS_DIRECTORY_NAME","THEME_FRAGMENTS_DIRECTORY_NAME","THEME_HEAD_FRAGMENT_FILE_NAME","THEME_HEAD_FRAGMENT_MAX_LENGTH","THEME_ASSET_MOUNT_PATH","THEME_MANIFEST_VERSION","THEME_TOKEN_NAME_PATTERN","THEME_TOKEN_VALUE_MAX_LENGTH","THEME_TOKEN_VALUE_FORBIDDEN_FUNCTIONS","THEME_TOKEN_VALUE_FORBIDDEN_PATTERN","RegExp","join","THEME_ASSET_CONTENT_TYPES","THEME_ASSET_EXTENSIONS","Object","keys","THEME_IMAGE_EXTENSIONS","filter","extension","startsWith","THEME_LOGO_TOKENS","image","markVisibility","THEME_CSS_LAYER_NAME"],"sources":["../../../../../../src/adapters/http/ui/theme/contract/constants.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\n/**\n * The theme CONTRACT: the on-disk layout, the manifest vocabulary and the\n * URL space a theme occupies. Everything here is portable — no node APIs,\n * no HTTP — so a browser-side theme editor or a CLI validator can share it\n * verbatim. Serving concerns (headers, caches, mounts) live one level up.\n */\n\nexport const THEME_MANIFEST_FILE_NAME = 'theme.json';\n\n/**\n * The ONLY sub-directory reachable over HTTP. The mount root is\n * `<themeDirectoryPath>/assets`, never the theme root, so `theme.json`\n * (and any future non-public file) is unreachable by construction rather\n * than by an extension filter a later edit could loosen.\n */\nexport const THEME_ASSETS_DIRECTORY_NAME = 'assets';\n\nexport const THEME_FRAGMENTS_DIRECTORY_NAME = 'fragments';\n\n/**\n * Raw markup spliced into `<head>`. Read only when the operator opts in\n * via `themeFragmentsEnabled`: a fragment is unsanitized markup on the\n * IdP origin, so it must be a deliberate decision and never a consequence\n * of dropping a file into the mounted directory.\n *\n * Head-only by design. There is deliberately no in-`<body>` slot: a\n * fragment rendered next to the consent buttons is a strictly better\n * consent-forgery primitive than one in `<head>` (it could relabel or\n * overlay Allow with no CSS at all).\n */\nexport const THEME_HEAD_FRAGMENT_FILE_NAME = 'head.html';\n\nexport const THEME_HEAD_FRAGMENT_MAX_LENGTH = 64 * 1024;\n\n/** The path segment the theme's `assets/` directory is served under. */\nexport const THEME_ASSET_MOUNT_PATH = 'theme';\n\n/**\n * A manifest declares the contract version it was written against. An\n * unknown version fails the boot instead of being partially understood.\n */\nexport const THEME_MANIFEST_VERSION = 1;\n\n/**\n * Token names are validated by GRAMMAR, not against a closed list of the\n * `--authup-*` properties the theme packages happen to declare today.\n *\n * A closed list would have to live here, and this package cannot depend on\n * `@authup/client-web-kit-theme`, so nothing could bind the two and it\n * would rot in both directions: a newly added CSS token would fail\n * validation for a legitimate override, and a removed one would stay\n * accepted. The grammar cannot rot.\n *\n * It is NOT sufficient for an untrusted (per-realm) token source, and a\n * later rung must not adopt it unchanged. Values are guarded by a denylist\n * of CSS functions, and a denylist over a language that keeps gaining\n * functions leaks by construction: `image-set()` and `src()` already had\n * to be added after `url()`. Filesystem input is operator trust, equal to\n * the process, so a denylist is proportionate here. Untrusted input needs\n * an allowlist of accepted value SHAPES (a colour, a length, a keyword)\n * per token, which is a different validator.\n */\nexport const THEME_TOKEN_NAME_PATTERN = /^--[a-z][a-z0-9-]*$/;\n\nexport const THEME_TOKEN_VALUE_MAX_LENGTH = 256;\n\n/**\n * Every CSS function that can load a remote resource.\n *\n * Blocking `url(` alone does not close the request-emitting-sink hole:\n * `image-set()`, `image()`, `src()` and `cross-fade()` all take a bare\n * string URL, and a token like `--authup-auth-logo-image` is substituted\n * straight into an image-accepting property. `element()` and `paint()`\n * cannot fetch, but they render document content into a paint sink and\n * have no business in an operator token either.\n *\n * A denylist over function names is still a denylist, so this list is the\n * floor rather than the argument: the values it guards are operator\n * authored, and an operator can already ship arbitrary CSS through\n * `theme.css`. It exists so a value cannot QUIETLY do something the\n * grammar advertises as impossible. A per-realm (untrusted) token source\n * must not reuse it as-is; see the note on the name pattern below.\n */\nconst THEME_TOKEN_VALUE_FORBIDDEN_FUNCTIONS = [\n 'url',\n 'expression',\n 'image',\n 'image-set',\n 'src',\n 'cross-fade',\n 'element',\n 'paint',\n];\n\n/**\n * Keeps a token value from closing the declaration block, opening a tag,\n * starting a new at-rule or comment, or turning the server-emitted token\n * block into a request-emitting sink. Layer 2 (`theme.css`) may of course\n * use `url()`; that asymmetry is deliberate and documented.\n *\n * `{` is forbidden alongside `}`: it opens a block inside the declaration,\n * which swallows the rule that follows. One stray brace in a light token\n * silently absorbs the whole `.dark` rule, so dark mode stops applying\n * with no error anywhere.\n *\n * Vendor prefixes are covered (`-webkit-image-set(`), and so is whitespace\n * before the paren; escapes cannot be used to smuggle a name past this\n * because `\\` is forbidden outright.\n */\nexport const THEME_TOKEN_VALUE_FORBIDDEN_PATTERN = new RegExp(\n `[{}<>;@\\\\\\\\]|\\\\/\\\\*|(?:^|[^a-z0-9-])(?:-[a-z]+-)?(?:${THEME_TOKEN_VALUE_FORBIDDEN_FUNCTIONS.join('|')})\\\\s*\\\\(`,\n 'i',\n);\n\n/**\n * Every asset kind a theme may contain, and the content type it is pinned\n * to when served. Notably excludes `.html` and `.js`, so a stray document\n * or script in the mounted directory can never be served from the IdP\n * origin.\n */\nexport const THEME_ASSET_CONTENT_TYPES : Record<string, string> = {\n '.css': 'text/css; charset=utf-8',\n '.svg': 'image/svg+xml',\n '.png': 'image/png',\n '.jpg': 'image/jpeg',\n '.jpeg': 'image/jpeg',\n '.gif': 'image/gif',\n '.webp': 'image/webp',\n '.avif': 'image/avif',\n '.ico': 'image/x-icon',\n '.woff': 'font/woff',\n '.woff2': 'font/woff2',\n};\n\n/**\n * Derived, never hand-maintained: the allowlist and the content-type map\n * must describe the same set, or a servable extension would be sent with\n * an undefined content type.\n */\nexport const THEME_ASSET_EXTENSIONS = Object.keys(THEME_ASSET_CONTENT_TYPES);\n\n/**\n * The subset a `logo` may use. Derived from the content-type map so a new\n * image type is servable and usable as a logo in one edit.\n */\nexport const THEME_IMAGE_EXTENSIONS = THEME_ASSET_EXTENSIONS\n .filter((extension) => THEME_ASSET_CONTENT_TYPES[extension].startsWith('image/'));\n\n/**\n * Emitted by server-core from a manifest's `logo`, never authored as a raw\n * token: the value carries a `url()`, which the token grammar forbids for\n * operator-supplied values so the token block cannot become a\n * request-emitting sink. The href is built from an already-validated asset\n * path.\n */\nexport const THEME_LOGO_TOKENS = [\n { image: '--authup-auth-logo-image', markVisibility: '--authup-auth-logo-mark-visibility' },\n { image: '--authup-account-logo-image', markVisibility: '--authup-account-logo-mark-visibility' },\n] as const;\n\n/**\n * The CSS layer the token block is emitted into.\n *\n * A layer name not present in the bundle's `@layer` statement is appended\n * LAST in the layer order, so it beats `@layer authup` (the kit tokens)\n * and `@layer base` (the app theme's brand rebinds and its `.dark` flips)\n * without needing `!important`. Inside the block `.dark` beats `:root` by\n * source order, so dark mode keeps working.\n *\n * Deliberately NOT an inline `style` attribute on `<html>`: that would win\n * permanently, and the color-mode switcher flips the `.dark` class\n * client-side with no reload, which would freeze the brand at whatever the\n * cookie said at render time.\n */\nexport const THEME_CSS_LAYER_NAME = 'authup-theme';\n"],"mappings":";;;;;;;;;GAcA,MAAaA,2BAA2B;;;;;;GAQxC,MAAaC,8BAA8B;AAE3C,MAAaC,iCAAiC;;;;;;;;;;;GAa9C,MAAaC,gCAAgC;AAE7C,MAAaC,iCAAiC;yEAG9C,MAAaC,yBAAyB;;;;GAMtC,MAAaC,yBAAyB;;;;;;;;;;;;;;;;;;;GAqBtC,MAAaC,2BAA2B;AAExC,MAAaC,+BAA+B;;;;;;;;;;;;;;;GA6C5C,MAAaE,sCAAsC,IAAIC,OACnD,uDAAuDF;CA1BvD;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AAmBuDA,CAAAA,CAAsCG,KAAK,GAAA,EAAK,WACvG,GAAA;;;;;;GASJ,MAAaC,4BAAqD;CAC9D,QAAQ;CACR,QAAQ;CACR,QAAQ;CACR,QAAQ;CACR,SAAS;CACT,QAAQ;CACR,SAAS;CACT,SAAS;CACT,QAAQ;CACR,SAAS;CACT,UAAU;AACd;;;;;GAOA,MAAaC,yBAAyBC,OAAOC,KAAKH,yBAAAA;;;;GAMlD,MAAaI,yBAAyBH,uBACjCI,QAAQC,cAAcN,0BAA0BM,UAAU,CAACC,WAAW,QAAA,CAAA;;;;;;;GAS3E,MAAaC,oBAAoB,CAC7B;CAAEC,OAAO;CAA4BC,gBAAgB;AAAqC,GAC1F;CAAED,OAAO;CAA+BC,gBAAgB;AAAwC,CACnG;;;;;;;;;;;;;;GAgBD,MAAaC,uBAAuB"}
@@ -1,12 +0,0 @@
1
- import type { ThemeManifest } from './types.ts';
2
- export declare function escapeHtml(value: string): string;
3
- /**
4
- * The `<style>`/`<link>` block injected before `</head>`.
5
- *
6
- * Every value here has already passed the manifest grammar (no `<`, `>`,
7
- * `}`, `;` or `@` in a token value; asset paths are alphanumeric plus
8
- * `._/-`), so the emitted CSS cannot be broken out of. The title is the
9
- * one free-form field and is HTML-escaped.
10
- */
11
- export declare function buildThemeHead(manifest: ThemeManifest, basePath: string, fragment?: string): string;
12
- //# sourceMappingURL=head.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"head.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/ui/theme/contract/head.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAI,MAAM,CAMjD;AA2CD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC1B,QAAQ,EAAE,aAAa,EACvB,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,GACjB,MAAM,CAuDT"}
@@ -1,61 +0,0 @@
1
- import "node:path";
2
- import "node:url";
3
- import.meta.url;
4
- import { THEME_ASSETS_DIRECTORY_NAME, THEME_ASSET_MOUNT_PATH, THEME_CSS_LAYER_NAME, THEME_LOGO_TOKENS } from "./constants.mjs";
5
- //#region src/adapters/http/ui/theme/contract/head.ts
6
- function escapeHtml(value) {
7
- return value.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;");
8
- }
9
- /**
10
- * Turn a manifest asset path (`assets/logo.svg`) into the href it is
11
- * served under.
12
- *
13
- * Built with the base path up front rather than via rebaseAssetURLs, which
14
- * only rewrites the fixed `/public/` and `/account/` vite bases.
15
- */ function buildAssetURL(assetPath, basePath) {
16
- const name = assetPath.slice(`${THEME_ASSETS_DIRECTORY_NAME}/`.length);
17
- return `${basePath}/${THEME_ASSET_MOUNT_PATH}/${name}`;
18
- }
19
- /**
20
- * The token pair that swaps the built-in mark for an operator image, for
21
- * one color mode. Empty when that mode declares no logo, so the other
22
- * mode's rule (or the built-in mark) stands.
23
- */ function buildLogoTokens(logo, basePath) {
24
- const tokens = {};
25
- if (!logo) return tokens;
26
- const url = buildAssetURL(logo, basePath);
27
- for (const pair of THEME_LOGO_TOKENS) {
28
- tokens[pair.image] = `url("${url}")`;
29
- tokens[pair.markVisibility] = "hidden";
30
- }
31
- return tokens;
32
- }
33
- function buildTokenRule(selector, tokens) {
34
- return `${selector}{${Object.keys(tokens).map((name) => `${name}:${tokens[name]}`).join(";")}}`;
35
- }
36
- /**
37
- * The `<style>`/`<link>` block injected before `</head>`.
38
- *
39
- * Every value here has already passed the manifest grammar (no `<`, `>`,
40
- * `}`, `;` or `@` in a token value; asset paths are alphanumeric plus
41
- * `._/-`), so the emitted CSS cannot be broken out of. The title is the
42
- * one free-form field and is HTML-escaped.
43
- */ function buildThemeHead(manifest, basePath, fragment) {
44
- const parts = [];
45
- const rules = [];
46
- const tokens = buildLogoTokens(manifest.logo, basePath);
47
- Object.assign(tokens, manifest.tokens);
48
- const tokensDark = buildLogoTokens(manifest.logoDark, basePath);
49
- Object.assign(tokensDark, manifest.tokensDark);
50
- if (Object.keys(tokens).length > 0) rules.push(buildTokenRule(":root", tokens));
51
- if (Object.keys(tokensDark).length > 0) rules.push(buildTokenRule(".dark", tokensDark));
52
- if (rules.length > 0) parts.push(`<style>@layer ${THEME_CSS_LAYER_NAME}{${rules.join("")}}</style>`);
53
- if (manifest.favicon) parts.push(`<link rel="icon" href="${escapeHtml(buildAssetURL(manifest.favicon, basePath))}">`);
54
- if (manifest.stylesheet) parts.push(`<link rel="stylesheet" href="${escapeHtml(buildAssetURL(manifest.stylesheet, basePath))}">`);
55
- if (fragment) parts.push(fragment);
56
- return parts.join("");
57
- }
58
- //#endregion
59
- export { buildThemeHead, escapeHtml };
60
-
61
- //# sourceMappingURL=head.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"head.mjs","names":["THEME_ASSETS_DIRECTORY_NAME","THEME_ASSET_MOUNT_PATH","THEME_CSS_LAYER_NAME","THEME_LOGO_TOKENS","escapeHtml","value","replace","buildAssetURL","assetPath","basePath","name","slice","length","buildLogoTokens","logo","tokens","url","pair","image","markVisibility","buildTokenRule","selector","declarations","Object","keys","map","join","buildThemeHead","manifest","fragment","parts","rules","assign","tokensDark","logoDark","push","favicon","stylesheet"],"sources":["../../../../../../src/adapters/http/ui/theme/contract/head.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 THEME_ASSETS_DIRECTORY_NAME,\n THEME_ASSET_MOUNT_PATH,\n THEME_CSS_LAYER_NAME,\n THEME_LOGO_TOKENS,\n} from './constants.ts';\nimport type { ThemeManifest } from './types.ts';\n\nexport function escapeHtml(value: string) : string {\n return value\n .replace(/&/g, '&amp;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;')\n .replace(/\"/g, '&quot;');\n}\n\n/**\n * Turn a manifest asset path (`assets/logo.svg`) into the href it is\n * served under.\n *\n * Built with the base path up front rather than via rebaseAssetURLs, which\n * only rewrites the fixed `/public/` and `/account/` vite bases.\n */\nfunction buildAssetURL(assetPath: string, basePath: string) : string {\n const name = assetPath.slice(`${THEME_ASSETS_DIRECTORY_NAME}/`.length);\n\n return `${basePath}/${THEME_ASSET_MOUNT_PATH}/${name}`;\n}\n\n/**\n * The token pair that swaps the built-in mark for an operator image, for\n * one color mode. Empty when that mode declares no logo, so the other\n * mode's rule (or the built-in mark) stands.\n */\nfunction buildLogoTokens(logo: string | undefined, basePath: string) : Record<string, string> {\n const tokens : Record<string, string> = {};\n if (!logo) {\n return tokens;\n }\n\n const url = buildAssetURL(logo, basePath);\n for (const pair of THEME_LOGO_TOKENS) {\n tokens[pair.image] = `url(\"${url}\")`;\n tokens[pair.markVisibility] = 'hidden';\n }\n\n return tokens;\n}\n\nfunction buildTokenRule(selector: string, tokens: Record<string, string>) : string {\n const declarations = Object.keys(tokens)\n .map((name) => `${name}:${tokens[name]}`)\n .join(';');\n\n return `${selector}{${declarations}}`;\n}\n\n/**\n * The `<style>`/`<link>` block injected before `</head>`.\n *\n * Every value here has already passed the manifest grammar (no `<`, `>`,\n * `}`, `;` or `@` in a token value; asset paths are alphanumeric plus\n * `._/-`), so the emitted CSS cannot be broken out of. The title is the\n * one free-form field and is HTML-escaped.\n */\nexport function buildThemeHead(\n manifest: ThemeManifest,\n basePath: string,\n fragment?: string,\n) : string {\n const parts : string[] = [];\n\n const rules : string[] = [];\n\n // The logo is a manifest field rather than a raw token because its\n // value needs url(), which the token grammar forbids. Merged before\n // the authored tokens so an explicit token of the same name still wins.\n //\n // `logo` and `logoDark` are emitted into their own rule, so a brand\n // whose mark is dark-on-light can ship a light-on-dark variant instead\n // of disappearing against the dark card. Each mode carries the\n // mark-visibility flag alongside its image, which makes all three\n // combinations coherent:\n // logo only -> one image, inherited by dark mode\n // both -> a per-mode image\n // logoDark only -> the built-in mark in light, the operator's in dark\n const tokens = buildLogoTokens(manifest.logo, basePath);\n Object.assign(tokens, manifest.tokens);\n\n const tokensDark = buildLogoTokens(manifest.logoDark, basePath);\n Object.assign(tokensDark, manifest.tokensDark);\n\n if (Object.keys(tokens).length > 0) {\n rules.push(buildTokenRule(':root', tokens));\n }\n // After :root, so it wins inside the layer by source order and the\n // color-mode switcher keeps working.\n if (Object.keys(tokensDark).length > 0) {\n rules.push(buildTokenRule('.dark', tokensDark));\n }\n\n if (rules.length > 0) {\n parts.push(`<style>@layer ${THEME_CSS_LAYER_NAME}{${rules.join('')}}</style>`);\n }\n\n if (manifest.favicon) {\n parts.push(`<link rel=\"icon\" href=\"${escapeHtml(buildAssetURL(manifest.favicon, basePath))}\">`);\n }\n\n // Last, so the operator stylesheet wins over the token block above it.\n if (manifest.stylesheet) {\n parts.push(`<link rel=\"stylesheet\" href=\"${escapeHtml(buildAssetURL(manifest.stylesheet, basePath))}\">`);\n }\n\n // After the stylesheet, so a fragment can override everything the\n // manifest emitted. Passed through verbatim: it is operator-authored\n // markup, and a partial sanitizer would be worse than none because it\n // invites treating fragments as untrusted-safe. The controls are that\n // it is filesystem-only, off by default, and head-only.\n if (fragment) {\n parts.push(fragment);\n }\n\n return parts.join('');\n}\n"],"mappings":";;;;;AAeA,SAAgBI,WAAWC,OAAa;CACpC,OAAOA,MACFC,QAAQ,MAAM,OAAA,CAAA,CACdA,QAAQ,MAAM,MAAA,CAAA,CACdA,QAAQ,MAAM,MAAA,CAAA,CACdA,QAAQ,MAAM,QAAA;AACvB;;;;;;;GASA,SAASC,cAAcC,WAAmBC,UAAgB;CACtD,MAAMC,OAAOF,UAAUG,MAAM,GAAGX,4BAA4B,GAAGY,MAAM;CAErE,OAAO,GAAGH,SAAS,GAAGR,uBAAuB,GAAGS;AACpD;;;;;GAOA,SAASG,gBAAgBC,MAA0BL,UAAgB;CAC/D,MAAMM,SAAkC,CAAC;CACzC,IAAI,CAACD,MACD,OAAOC;CAGX,MAAMC,MAAMT,cAAcO,MAAML,QAAAA;CAChC,KAAK,MAAMQ,QAAQd,mBAAmB;EAClCY,OAAOE,KAAKC,SAAS,QAAQF,IAAI;EACjCD,OAAOE,KAAKE,kBAAkB;CAClC;CAEA,OAAOJ;AACX;AAEA,SAASK,eAAeC,UAAkBN,QAA8B;CAKpE,OAAO,GAAGM,SAAS,GAJEE,OAAOC,KAAKT,MAAAA,CAAAA,CAC5BU,KAAKf,SAAS,GAAGA,KAAK,GAAGK,OAAOL,OAAO,CAAA,CACvCgB,KAAK,GAEYJ,EAAa;AACvC;;;;;;;;GAUA,SAAgBK,eACZC,UACAnB,UACAoB,UAAiB;CAEjB,MAAMC,QAAmB,CAAA;CAEzB,MAAMC,QAAmB,CAAA;CAczB,MAAMhB,SAASF,gBAAgBe,SAASd,MAAML,QAAAA;CAC9Cc,OAAOS,OAAOjB,QAAQa,SAASb,MAAM;CAErC,MAAMkB,aAAapB,gBAAgBe,SAASM,UAAUzB,QAAAA;CACtDc,OAAOS,OAAOC,YAAYL,SAASK,UAAU;CAE7C,IAAIV,OAAOC,KAAKT,MAAAA,CAAAA,CAAQH,SAAS,GAC7BmB,MAAMI,KAAKf,eAAe,SAASL,MAAAA,CAAAA;CAIvC,IAAIQ,OAAOC,KAAKS,UAAAA,CAAAA,CAAYrB,SAAS,GACjCmB,MAAMI,KAAKf,eAAe,SAASa,UAAAA,CAAAA;CAGvC,IAAIF,MAAMnB,SAAS,GACfkB,MAAMK,KAAK,iBAAiBjC,qBAAqB,GAAG6B,MAAML,KAAK,EAAA,EAAI,UAAU;CAGjF,IAAIE,SAASQ,SACTN,MAAMK,KAAK,0BAA0B/B,WAAWG,cAAcqB,SAASQ,SAAS3B,QAAAA,CAAAA,EAAW,GAAG;CAIlG,IAAImB,SAASS,YACTP,MAAMK,KAAK,gCAAgC/B,WAAWG,cAAcqB,SAASS,YAAY5B,QAAAA,CAAAA,EAAW,GAAG;CAQ3G,IAAIoB,UACAC,MAAMK,KAAKN,QAAAA;CAGf,OAAOC,MAAMJ,KAAK,EAAA;AACtB"}
@@ -1,6 +0,0 @@
1
- export * from './constants.ts';
2
- export * from './head.ts';
3
- export * from './manifest.ts';
4
- export * from './types.ts';
5
- export * from './utils.ts';
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/ui/theme/contract/index.ts"],"names":[],"mappings":"AAOA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
@@ -1,8 +0,0 @@
1
- import "node:path";
2
- import "node:url";
3
- import.meta.url;
4
- import { THEME_ASSETS_DIRECTORY_NAME, THEME_ASSET_CONTENT_TYPES, THEME_ASSET_EXTENSIONS, THEME_ASSET_MOUNT_PATH, THEME_CSS_LAYER_NAME, THEME_FRAGMENTS_DIRECTORY_NAME, THEME_HEAD_FRAGMENT_FILE_NAME, THEME_HEAD_FRAGMENT_MAX_LENGTH, THEME_IMAGE_EXTENSIONS, THEME_LOGO_TOKENS, THEME_MANIFEST_FILE_NAME, THEME_MANIFEST_VERSION, THEME_TOKEN_NAME_PATTERN, THEME_TOKEN_VALUE_FORBIDDEN_PATTERN, THEME_TOKEN_VALUE_MAX_LENGTH } from "./constants.mjs";
5
- import { buildThemeHead, escapeHtml } from "./head.mjs";
6
- import { themeAssetExtension } from "./utils.mjs";
7
- import { ThemeManifestValidator, parseThemeManifest } from "./manifest.mjs";
8
- export { THEME_ASSETS_DIRECTORY_NAME, THEME_ASSET_CONTENT_TYPES, THEME_ASSET_EXTENSIONS, THEME_ASSET_MOUNT_PATH, THEME_CSS_LAYER_NAME, THEME_FRAGMENTS_DIRECTORY_NAME, THEME_HEAD_FRAGMENT_FILE_NAME, THEME_HEAD_FRAGMENT_MAX_LENGTH, THEME_IMAGE_EXTENSIONS, THEME_LOGO_TOKENS, THEME_MANIFEST_FILE_NAME, THEME_MANIFEST_VERSION, THEME_TOKEN_NAME_PATTERN, THEME_TOKEN_VALUE_FORBIDDEN_PATTERN, THEME_TOKEN_VALUE_MAX_LENGTH, ThemeManifestValidator, buildThemeHead, escapeHtml, parseThemeManifest, themeAssetExtension };
@@ -1,25 +0,0 @@
1
- import { Container } from 'validup';
2
- import type { ThemeManifest } from './types.ts';
3
- /**
4
- * Validator for the operator-authored `theme.json`.
5
- *
6
- * A validup Container over zod mounts, matching ConfigValidator: this file
7
- * is config, not an API payload, and the config-shaped precedent in this
8
- * codebase is validup. It also means a second consumer (a per-realm token
9
- * map, an admin-console form, a CLI `theme validate`) reuses these rules
10
- * instead of restating them.
11
- *
12
- * No validator groups: there is one source and one shape. A per-realm
13
- * surface that accepts a narrower manifest than a file does would add one.
14
- */
15
- export declare class ThemeManifestValidator extends Container<ThemeManifest> {
16
- protected initialize(): void;
17
- }
18
- /**
19
- * Validate a parsed `theme.json`. On failure the thrown error names the
20
- * file and renders every issue as `<path>: <message>`, matching
21
- * FileProvisioningSource: a bad entry must never abort a boot with nothing
22
- * to act on.
23
- */
24
- export declare function parseThemeManifest(input: unknown, filePath: string): Promise<ThemeManifest>;
25
- //# sourceMappingURL=manifest.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/ui/theme/contract/manifest.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,SAAS,EAAiC,MAAM,SAAS,CAAC;AAWnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAwChD;;;;;;;;;;;GAWG;AACH,qBAAa,sBAAuB,SAAQ,SAAS,CAAC,aAAa,CAAC;cAC7C,UAAU;CAYhC;AAqBD;;;;;GAKG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAI,OAAO,CAAC,aAAa,CAAC,CA2BlG"}
@@ -1,77 +0,0 @@
1
- import "node:path";
2
- import "node:url";
3
- import.meta.url;
4
- import { THEME_ASSETS_DIRECTORY_NAME, THEME_ASSET_EXTENSIONS, THEME_IMAGE_EXTENSIONS, THEME_TOKEN_NAME_PATTERN, THEME_TOKEN_VALUE_FORBIDDEN_PATTERN } from "./constants.mjs";
5
- import { themeAssetExtension } from "./utils.mjs";
6
- import { AuthupError } from "@authup/errors";
7
- import { Container, isValidupError, stringifyPath } from "validup";
8
- import { createValidator } from "@validup/zod";
9
- import { z } from "zod";
10
- //#region src/adapters/http/ui/theme/contract/manifest.ts
11
- const assetPathSchema = z.string().regex(new RegExp(`^${THEME_ASSETS_DIRECTORY_NAME}/[a-zA-Z0-9][a-zA-Z0-9._/-]*$`), `must be a path inside '${THEME_ASSETS_DIRECTORY_NAME}/'`).refine((value) => !value.split("/").includes(".."), "must not contain a \"..\" segment").refine((value) => THEME_ASSET_EXTENSIONS.includes(themeAssetExtension(value)), `must end in one of: ${THEME_ASSET_EXTENSIONS.join(", ")}`);
12
- /**
13
- * A logo must be an image. The general asset allowlist also covers CSS and
14
- * fonts, which would silently render as nothing here.
15
- */ const logoPathSchema = assetPathSchema.refine((value) => THEME_IMAGE_EXTENSIONS.includes(themeAssetExtension(value)), `must be an image (${THEME_IMAGE_EXTENSIONS.join(", ")})`);
16
- const tokenMapSchema = z.record(z.string().regex(THEME_TOKEN_NAME_PATTERN, "must be a lowercase CSS custom property name (e.g. --authup-auth-accent)"), z.string().min(1).max(256).refine((value) => !THEME_TOKEN_VALUE_FORBIDDEN_PATTERN.test(value), "must not contain }, <, >, ;, @, \\, /*, url( or expression("));
17
- /**
18
- * Validator for the operator-authored `theme.json`.
19
- *
20
- * A validup Container over zod mounts, matching ConfigValidator: this file
21
- * is config, not an API payload, and the config-shaped precedent in this
22
- * codebase is validup. It also means a second consumer (a per-realm token
23
- * map, an admin-console form, a CLI `theme validate`) reuses these rules
24
- * instead of restating them.
25
- *
26
- * No validator groups: there is one source and one shape. A per-realm
27
- * surface that accepts a narrower manifest than a file does would add one.
28
- */ var ThemeManifestValidator = class extends Container {
29
- initialize() {
30
- super.initialize();
31
- this.mount("version", createValidator(z.literal(1)));
32
- this.mount("title", { optional: true }, createValidator(z.string().min(1).max(200)));
33
- this.mount("favicon", { optional: true }, createValidator(assetPathSchema));
34
- this.mount("logo", { optional: true }, createValidator(logoPathSchema));
35
- this.mount("logoDark", { optional: true }, createValidator(logoPathSchema));
36
- this.mount("stylesheet", { optional: true }, createValidator(assetPathSchema));
37
- this.mount("tokens", { optional: true }, createValidator(tokenMapSchema));
38
- this.mount("tokensDark", { optional: true }, createValidator(tokenMapSchema));
39
- }
40
- };
41
- const validator = new ThemeManifestValidator();
42
- /**
43
- * Every key the validator mounts. Validup STRIPS an unmounted key rather
44
- * than rejecting it, and a silently-ignored `stylesheets` typo is the exact
45
- * failure mode this feature must not have, so unknown keys are rejected
46
- * explicitly before the run.
47
- */ const KNOWN_KEYS = [
48
- "version",
49
- "title",
50
- "favicon",
51
- "logo",
52
- "logoDark",
53
- "stylesheet",
54
- "tokens",
55
- "tokensDark"
56
- ];
57
- /**
58
- * Validate a parsed `theme.json`. On failure the thrown error names the
59
- * file and renders every issue as `<path>: <message>`, matching
60
- * FileProvisioningSource: a bad entry must never abort a boot with nothing
61
- * to act on.
62
- */ async function parseThemeManifest(input, filePath) {
63
- if (typeof input !== "object" || input === null || Array.isArray(input)) throw new AuthupError(`The theme manifest "${filePath}" must contain an object at its root.`);
64
- const unknown = Object.keys(input).filter((key) => !KNOWN_KEYS.includes(key));
65
- if (unknown.length > 0) throw new AuthupError(`The theme manifest "${filePath}" is invalid.\n${unknown.map((key) => ` ${key}: unknown property`).join("\n")}`);
66
- try {
67
- return await validator.run(input);
68
- } catch (e) {
69
- if (!isValidupError(e)) throw e;
70
- const issues = e.issues.map((issue) => ` ${stringifyPath(issue.path)}: ${issue.message}`).join("\n");
71
- throw new AuthupError(`The theme manifest "${filePath}" is invalid.\n${issues}`);
72
- }
73
- }
74
- //#endregion
75
- export { ThemeManifestValidator, parseThemeManifest };
76
-
77
- //# sourceMappingURL=manifest.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"manifest.mjs","names":["AuthupError","createValidator","Container","isValidupError","stringifyPath","z","THEME_ASSETS_DIRECTORY_NAME","THEME_ASSET_EXTENSIONS","THEME_IMAGE_EXTENSIONS","THEME_MANIFEST_VERSION","THEME_TOKEN_NAME_PATTERN","THEME_TOKEN_VALUE_FORBIDDEN_PATTERN","THEME_TOKEN_VALUE_MAX_LENGTH","themeAssetExtension","assetPathSchema","string","regex","RegExp","refine","value","split","includes","join","logoPathSchema","tokenMapSchema","record","min","max","test","ThemeManifestValidator","initialize","mount","literal","optional","validator","KNOWN_KEYS","parseThemeManifest","input","filePath","Array","isArray","unknown","Object","keys","filter","key","length","map","run","e","issues","issue","path","message"],"sources":["../../../../../../src/adapters/http/ui/theme/contract/manifest.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 { AuthupError } from '@authup/errors';\nimport { createValidator } from '@validup/zod';\nimport { Container, isValidupError, stringifyPath } from 'validup';\nimport { z } from 'zod';\nimport {\n THEME_ASSETS_DIRECTORY_NAME,\n THEME_ASSET_EXTENSIONS,\n THEME_IMAGE_EXTENSIONS,\n THEME_MANIFEST_VERSION,\n THEME_TOKEN_NAME_PATTERN,\n THEME_TOKEN_VALUE_FORBIDDEN_PATTERN,\n THEME_TOKEN_VALUE_MAX_LENGTH,\n} from './constants.ts';\nimport type { ThemeManifest } from './types.ts';\nimport { themeAssetExtension } from './utils.ts';\n\nconst assetPathSchema = z.string()\n .regex(\n new RegExp(`^${THEME_ASSETS_DIRECTORY_NAME}/[a-zA-Z0-9][a-zA-Z0-9._/-]*$`),\n `must be a path inside '${THEME_ASSETS_DIRECTORY_NAME}/'`,\n )\n .refine(\n (value) => !value.split('/').includes('..'),\n 'must not contain a \"..\" segment',\n )\n .refine(\n (value) => THEME_ASSET_EXTENSIONS.includes(themeAssetExtension(value)),\n `must end in one of: ${THEME_ASSET_EXTENSIONS.join(', ')}`,\n );\n\n/**\n * A logo must be an image. The general asset allowlist also covers CSS and\n * fonts, which would silently render as nothing here.\n */\nconst logoPathSchema = assetPathSchema.refine(\n (value) => THEME_IMAGE_EXTENSIONS.includes(themeAssetExtension(value)),\n `must be an image (${THEME_IMAGE_EXTENSIONS.join(', ')})`,\n);\n\nconst tokenMapSchema = z.record(\n z.string().regex(\n THEME_TOKEN_NAME_PATTERN,\n 'must be a lowercase CSS custom property name (e.g. --authup-auth-accent)',\n ),\n z.string()\n .min(1)\n .max(THEME_TOKEN_VALUE_MAX_LENGTH)\n .refine(\n (value) => !THEME_TOKEN_VALUE_FORBIDDEN_PATTERN.test(value),\n 'must not contain }, <, >, ;, @, \\\\, /*, url( or expression(',\n ),\n);\n\n/**\n * Validator for the operator-authored `theme.json`.\n *\n * A validup Container over zod mounts, matching ConfigValidator: this file\n * is config, not an API payload, and the config-shaped precedent in this\n * codebase is validup. It also means a second consumer (a per-realm token\n * map, an admin-console form, a CLI `theme validate`) reuses these rules\n * instead of restating them.\n *\n * No validator groups: there is one source and one shape. A per-realm\n * surface that accepts a narrower manifest than a file does would add one.\n */\nexport class ThemeManifestValidator extends Container<ThemeManifest> {\n protected override initialize() {\n super.initialize();\n\n this.mount('version', createValidator(z.literal(THEME_MANIFEST_VERSION)));\n this.mount('title', { optional: true }, createValidator(z.string().min(1).max(200)));\n this.mount('favicon', { optional: true }, createValidator(assetPathSchema));\n this.mount('logo', { optional: true }, createValidator(logoPathSchema));\n this.mount('logoDark', { optional: true }, createValidator(logoPathSchema));\n this.mount('stylesheet', { optional: true }, createValidator(assetPathSchema));\n this.mount('tokens', { optional: true }, createValidator(tokenMapSchema));\n this.mount('tokensDark', { optional: true }, createValidator(tokenMapSchema));\n }\n}\n\nconst validator = new ThemeManifestValidator();\n\n/**\n * Every key the validator mounts. Validup STRIPS an unmounted key rather\n * than rejecting it, and a silently-ignored `stylesheets` typo is the exact\n * failure mode this feature must not have, so unknown keys are rejected\n * explicitly before the run.\n */\nconst KNOWN_KEYS = [\n 'version',\n 'title',\n 'favicon',\n 'logo',\n 'logoDark',\n 'stylesheet',\n 'tokens',\n 'tokensDark',\n];\n\n/**\n * Validate a parsed `theme.json`. On failure the thrown error names the\n * file and renders every issue as `<path>: <message>`, matching\n * FileProvisioningSource: a bad entry must never abort a boot with nothing\n * to act on.\n */\nexport async function parseThemeManifest(input: unknown, filePath: string) : Promise<ThemeManifest> {\n if (typeof input !== 'object' || input === null || Array.isArray(input)) {\n throw new AuthupError(`The theme manifest \"${filePath}\" must contain an object at its root.`);\n }\n\n const unknown = Object.keys(input).filter((key) => !KNOWN_KEYS.includes(key));\n if (unknown.length > 0) {\n throw new AuthupError(\n `The theme manifest \"${filePath}\" is invalid.\\n${unknown\n .map((key) => ` ${key}: unknown property`)\n .join('\\n')}`,\n );\n }\n\n try {\n return await validator.run(input as Record<string, any>) as ThemeManifest;\n } catch (e) {\n if (!isValidupError(e)) {\n throw e;\n }\n\n const issues = e.issues\n .map((issue) => ` ${stringifyPath(issue.path)}: ${issue.message}`)\n .join('\\n');\n\n throw new AuthupError(`The theme manifest \"${filePath}\" is invalid.\\n${issues}`);\n }\n}\n"],"mappings":";;;;;;;;;;AAuBA,MAAMc,kBAAkBT,EAAEU,OAAM,CAAA,CAC3BC,MACG,IAAIC,OAAO,IAAIX,4BAA4B,8BAA8B,GACzE,0BAA0BA,4BAA4B,GAAG,CAAA,CAE5DY,QACIC,UAAU,CAACA,MAAMC,MAAM,GAAA,CAAA,CAAKC,SAAS,IAAA,GACtC,mCAAA,CAAA,CAEHH,QACIC,UAAUZ,uBAAuBc,SAASR,oBAAoBM,KAAAA,CAAAA,GAC/D,uBAAuBZ,uBAAuBe,KAAK,IAAA,GAAO;;;;GAOlE,MAAMC,iBAAiBT,gBAAgBI,QAClCC,UAAUX,uBAAuBa,SAASR,oBAAoBM,KAAAA,CAAAA,GAC/D,qBAAqBX,uBAAuBc,KAAK,IAAA,EAAM,EAAE;AAG7D,MAAME,iBAAiBnB,EAAEoB,OACrBpB,EAAEU,OAAM,CAAA,CAAGC,MACPN,0BACA,0EAAA,GAEJL,EAAEU,OAAM,CAAA,CACHW,IAAI,CAAA,CAAA,CACJC,IAAAA,GAAIf,CAAAA,CACJM,QACIC,UAAU,CAACR,oCAAoCiB,KAAKT,KAAAA,GACrD,6DAAA,CAAA;;;;;;;;;;;;GAgBZ,IAAaU,yBAAb,cAA4C3B,UAAAA;CACrB4B,aAAa;EAC5B,MAAMA,WAAAA;EAEN,KAAKC,MAAM,WAAW9B,gBAAgBI,EAAE2B,QAAAA,CAAQvB,CAAAA,CAAAA;EAChD,KAAKsB,MAAM,SAAS,EAAEE,UAAU,KAAK,GAAGhC,gBAAgBI,EAAEU,OAAM,CAAA,CAAGW,IAAI,CAAA,CAAA,CAAGC,IAAI,GAAA,CAAA,CAAA;EAC9E,KAAKI,MAAM,WAAW,EAAEE,UAAU,KAAK,GAAGhC,gBAAgBa,eAAAA,CAAAA;EAC1D,KAAKiB,MAAM,QAAQ,EAAEE,UAAU,KAAK,GAAGhC,gBAAgBsB,cAAAA,CAAAA;EACvD,KAAKQ,MAAM,YAAY,EAAEE,UAAU,KAAK,GAAGhC,gBAAgBsB,cAAAA,CAAAA;EAC3D,KAAKQ,MAAM,cAAc,EAAEE,UAAU,KAAK,GAAGhC,gBAAgBa,eAAAA,CAAAA;EAC7D,KAAKiB,MAAM,UAAU,EAAEE,UAAU,KAAK,GAAGhC,gBAAgBuB,cAAAA,CAAAA;EACzD,KAAKO,MAAM,cAAc,EAAEE,UAAU,KAAK,GAAGhC,gBAAgBuB,cAAAA,CAAAA;CACjE;AACJ;AAEA,MAAMU,YAAY,IAAIL,uBAAAA;;;;;;GAQtB,MAAMM,aAAa;CACf;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACH;;;;;;GAQD,eAAsBC,mBAAmBC,OAAgBC,UAAgB;CACrE,IAAI,OAAOD,UAAU,YAAYA,UAAU,QAAQE,MAAMC,QAAQH,KAAAA,GAC7D,MAAM,IAAIrC,YAAY,uBAAuBsC,SAAS,sCAAsC;CAGhG,MAAMG,UAAUC,OAAOC,KAAKN,KAAAA,CAAAA,CAAOO,QAAQC,QAAQ,CAACV,WAAWd,SAASwB,GAAAA,CAAAA;CACxE,IAAIJ,QAAQK,SAAS,GACjB,MAAM,IAAI9C,YACN,uBAAuBsC,SAAS,iBAAiBG,QAC5CM,KAAKF,QAAQ,KAAKA,IAAI,mBAAmB,CAAA,CACzCvB,KAAK,IAAA,GAAO;CAIzB,IAAI;EACA,OAAO,MAAMY,UAAUc,IAAIX,KAAAA;CAC/B,SAASY,GAAG;EACR,IAAI,CAAC9C,eAAe8C,CAAAA,GAChB,MAAMA;EAGV,MAAMC,SAASD,EAAEC,OACZH,KAAKI,UAAU,KAAK/C,cAAc+C,MAAMC,IAAI,EAAE,IAAID,MAAME,SAAS,CAAA,CACjE/B,KAAK,IAAA;EAEV,MAAM,IAAItB,YAAY,uBAAuBsC,SAAS,iBAAiBY,QAAQ;CACnF;AACJ"}
@@ -1,26 +0,0 @@
1
- /**
2
- * The operator-authored `theme.json`, after validation.
3
- *
4
- * `favicon` / `logo` / `stylesheet` are theme-relative paths inside
5
- * `assets/`; they are emitted as `<basePath>/theme/<name>` hrefs.
6
- */
7
- export type ThemeManifest = {
8
- version: number;
9
- title?: string;
10
- favicon?: string;
11
- /**
12
- * Replaces the built-in logo mark on both consoles. Maps onto the
13
- * `--authup-{auth,account}-logo-*` token pairs.
14
- */
15
- logo?: string;
16
- /**
17
- * Dark-mode variant of `logo`. Without it dark mode inherits `logo`,
18
- * which is wrong for a mark that is dark-on-light. Usable on its own to
19
- * override only dark mode.
20
- */
21
- logoDark?: string;
22
- stylesheet?: string;
23
- tokens?: Record<string, string>;
24
- tokensDark?: Record<string, string>;
25
- };
26
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/ui/theme/contract/types.ts"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC,CAAC"}
@@ -1,11 +0,0 @@
1
- /**
2
- * Lowercased file extension of a theme-relative path, including the dot
3
- * (`assets/logo.SVG` -> `.svg`); empty when there is none.
4
- *
5
- * Hand-rolled rather than `node:path`'s extname so this folder stays free
6
- * of node APIs and can be consumed by a browser-side theme editor.
7
- * Manifest paths are always POSIX and already grammar-checked, so the
8
- * separator handling extname does is not needed here.
9
- */
10
- export declare function themeAssetExtension(value: string): string;
11
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../src/adapters/http/ui/theme/contract/utils.ts"],"names":[],"mappings":"AAOA;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAI,MAAM,CAS1D"}
@@ -1,22 +0,0 @@
1
- import "node:path";
2
- import "node:url";
3
- import.meta.url;
4
- //#region src/adapters/http/ui/theme/contract/utils.ts
5
- /**
6
- * Lowercased file extension of a theme-relative path, including the dot
7
- * (`assets/logo.SVG` -> `.svg`); empty when there is none.
8
- *
9
- * Hand-rolled rather than `node:path`'s extname so this folder stays free
10
- * of node APIs and can be consumed by a browser-side theme editor.
11
- * Manifest paths are always POSIX and already grammar-checked, so the
12
- * separator handling extname does is not needed here.
13
- */ function themeAssetExtension(value) {
14
- const name = value.slice(value.lastIndexOf("/") + 1);
15
- const index = name.lastIndexOf(".");
16
- if (index <= 0) return "";
17
- return name.slice(index).toLowerCase();
18
- }
19
- //#endregion
20
- export { themeAssetExtension };
21
-
22
- //# sourceMappingURL=utils.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.mjs","names":["themeAssetExtension","value","name","slice","lastIndexOf","index","toLowerCase"],"sources":["../../../../../../src/adapters/http/ui/theme/contract/utils.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\n/**\n * Lowercased file extension of a theme-relative path, including the dot\n * (`assets/logo.SVG` -> `.svg`); empty when there is none.\n *\n * Hand-rolled rather than `node:path`'s extname so this folder stays free\n * of node APIs and can be consumed by a browser-side theme editor.\n * Manifest paths are always POSIX and already grammar-checked, so the\n * separator handling extname does is not needed here.\n */\nexport function themeAssetExtension(value: string) : string {\n const name = value.slice(value.lastIndexOf('/') + 1);\n const index = name.lastIndexOf('.');\n\n if (index <= 0) {\n return '';\n }\n\n return name.slice(index).toLowerCase();\n}\n"],"mappings":";;;;;;;;;;;;GAgBA,SAAgBA,oBAAoBC,OAAa;CAC7C,MAAMC,OAAOD,MAAME,MAAMF,MAAMG,YAAY,GAAA,IAAO,CAAA;CAClD,MAAMC,QAAQH,KAAKE,YAAY,GAAA;CAE/B,IAAIC,SAAS,GACT,OAAO;CAGX,OAAOH,KAAKC,MAAME,KAAAA,CAAAA,CAAOC,YAAW;AACxC"}
@@ -1,7 +0,0 @@
1
- export * from './contract/index.ts';
2
- export * from './apply.ts';
3
- export * from './assets.ts';
4
- export * from './constants.ts';
5
- export * from './module.ts';
6
- export * from './types.ts';
7
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/http/ui/theme/index.ts"],"names":[],"mappings":"AAOA,cAAc,qBAAqB,CAAC;AAEpC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}