@authup/server-core 1.0.0-beta.46 → 1.0.0-beta.47

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 (438) hide show
  1. package/LICENSE +661 -201
  2. package/README.md +3 -1
  3. package/dist/adapters/database/data-source/index.d.ts +0 -1
  4. package/dist/adapters/database/data-source/index.d.ts.map +1 -1
  5. package/dist/adapters/database/data-source/index.mjs +1 -2
  6. package/dist/adapters/database/domains/client/subscriber.d.ts +3 -6
  7. package/dist/adapters/database/domains/client/subscriber.d.ts.map +1 -1
  8. package/dist/adapters/database/domains/client/subscriber.mjs +21 -39
  9. package/dist/adapters/database/domains/client/subscriber.mjs.map +1 -1
  10. package/dist/adapters/database/domains/client-permission/subscriber.d.ts +3 -6
  11. package/dist/adapters/database/domains/client-permission/subscriber.d.ts.map +1 -1
  12. package/dist/adapters/database/domains/client-permission/subscriber.mjs +24 -49
  13. package/dist/adapters/database/domains/client-permission/subscriber.mjs.map +1 -1
  14. package/dist/adapters/database/domains/client-role/subscriber.d.ts +3 -6
  15. package/dist/adapters/database/domains/client-role/subscriber.d.ts.map +1 -1
  16. package/dist/adapters/database/domains/client-role/subscriber.mjs +24 -49
  17. package/dist/adapters/database/domains/client-role/subscriber.mjs.map +1 -1
  18. package/dist/adapters/database/domains/client-scope/subscriber.d.ts +3 -6
  19. package/dist/adapters/database/domains/client-scope/subscriber.d.ts.map +1 -1
  20. package/dist/adapters/database/domains/client-scope/subscriber.mjs +21 -36
  21. package/dist/adapters/database/domains/client-scope/subscriber.mjs.map +1 -1
  22. package/dist/adapters/database/domains/identity-provider/subscriber.d.ts +3 -6
  23. package/dist/adapters/database/domains/identity-provider/subscriber.d.ts.map +1 -1
  24. package/dist/adapters/database/domains/identity-provider/subscriber.mjs +21 -39
  25. package/dist/adapters/database/domains/identity-provider/subscriber.mjs.map +1 -1
  26. package/dist/adapters/database/domains/identity-provider-account/subscriber.d.ts +3 -6
  27. package/dist/adapters/database/domains/identity-provider-account/subscriber.d.ts.map +1 -1
  28. package/dist/adapters/database/domains/identity-provider-account/subscriber.mjs +21 -36
  29. package/dist/adapters/database/domains/identity-provider-account/subscriber.mjs.map +1 -1
  30. package/dist/adapters/database/domains/identity-provider-attribute/subscriber.d.ts +3 -6
  31. package/dist/adapters/database/domains/identity-provider-attribute/subscriber.d.ts.map +1 -1
  32. package/dist/adapters/database/domains/identity-provider-attribute/subscriber.mjs +21 -36
  33. package/dist/adapters/database/domains/identity-provider-attribute/subscriber.mjs.map +1 -1
  34. package/dist/adapters/database/domains/identity-provider-role-mapping/subscriber.d.ts +3 -6
  35. package/dist/adapters/database/domains/identity-provider-role-mapping/subscriber.d.ts.map +1 -1
  36. package/dist/adapters/database/domains/identity-provider-role-mapping/subscriber.mjs +21 -45
  37. package/dist/adapters/database/domains/identity-provider-role-mapping/subscriber.mjs.map +1 -1
  38. package/dist/adapters/database/domains/permission/subscriber.d.ts +3 -6
  39. package/dist/adapters/database/domains/permission/subscriber.d.ts.map +1 -1
  40. package/dist/adapters/database/domains/permission/subscriber.mjs +28 -47
  41. package/dist/adapters/database/domains/permission/subscriber.mjs.map +1 -1
  42. package/dist/adapters/database/domains/policy/subscriber.d.ts +3 -6
  43. package/dist/adapters/database/domains/policy/subscriber.d.ts.map +1 -1
  44. package/dist/adapters/database/domains/policy/subscriber.mjs +21 -36
  45. package/dist/adapters/database/domains/policy/subscriber.mjs.map +1 -1
  46. package/dist/adapters/database/domains/policy-attribute/subscriber.d.ts +3 -6
  47. package/dist/adapters/database/domains/policy-attribute/subscriber.d.ts.map +1 -1
  48. package/dist/adapters/database/domains/policy-attribute/subscriber.mjs +24 -45
  49. package/dist/adapters/database/domains/policy-attribute/subscriber.mjs.map +1 -1
  50. package/dist/adapters/database/domains/realm/subscriber.d.ts +3 -6
  51. package/dist/adapters/database/domains/realm/subscriber.d.ts.map +1 -1
  52. package/dist/adapters/database/domains/realm/subscriber.mjs +21 -36
  53. package/dist/adapters/database/domains/realm/subscriber.mjs.map +1 -1
  54. package/dist/adapters/database/domains/robot/subscriber.d.ts +3 -6
  55. package/dist/adapters/database/domains/robot/subscriber.d.ts.map +1 -1
  56. package/dist/adapters/database/domains/robot/subscriber.mjs +21 -39
  57. package/dist/adapters/database/domains/robot/subscriber.mjs.map +1 -1
  58. package/dist/adapters/database/domains/robot-permission/subscriber.d.ts +3 -6
  59. package/dist/adapters/database/domains/robot-permission/subscriber.d.ts.map +1 -1
  60. package/dist/adapters/database/domains/robot-permission/subscriber.mjs +24 -49
  61. package/dist/adapters/database/domains/robot-permission/subscriber.mjs.map +1 -1
  62. package/dist/adapters/database/domains/robot-role/subscriber.d.ts +3 -6
  63. package/dist/adapters/database/domains/robot-role/subscriber.d.ts.map +1 -1
  64. package/dist/adapters/database/domains/robot-role/subscriber.mjs +24 -49
  65. package/dist/adapters/database/domains/robot-role/subscriber.mjs.map +1 -1
  66. package/dist/adapters/database/domains/role/subscriber.d.ts +3 -6
  67. package/dist/adapters/database/domains/role/subscriber.d.ts.map +1 -1
  68. package/dist/adapters/database/domains/role/subscriber.mjs +21 -41
  69. package/dist/adapters/database/domains/role/subscriber.mjs.map +1 -1
  70. package/dist/adapters/database/domains/role-attribute/subscriber.d.ts +3 -6
  71. package/dist/adapters/database/domains/role-attribute/subscriber.d.ts.map +1 -1
  72. package/dist/adapters/database/domains/role-attribute/subscriber.mjs +24 -45
  73. package/dist/adapters/database/domains/role-attribute/subscriber.mjs.map +1 -1
  74. package/dist/adapters/database/domains/role-permission/subscriber.d.ts +3 -6
  75. package/dist/adapters/database/domains/role-permission/subscriber.d.ts.map +1 -1
  76. package/dist/adapters/database/domains/role-permission/subscriber.mjs +24 -49
  77. package/dist/adapters/database/domains/role-permission/subscriber.mjs.map +1 -1
  78. package/dist/adapters/database/domains/scope/subscriber.d.ts +3 -6
  79. package/dist/adapters/database/domains/scope/subscriber.d.ts.map +1 -1
  80. package/dist/adapters/database/domains/scope/subscriber.mjs +17 -43
  81. package/dist/adapters/database/domains/scope/subscriber.mjs.map +1 -1
  82. package/dist/adapters/database/domains/user/subscriber.d.ts +3 -6
  83. package/dist/adapters/database/domains/user/subscriber.d.ts.map +1 -1
  84. package/dist/adapters/database/domains/user/subscriber.mjs +21 -39
  85. package/dist/adapters/database/domains/user/subscriber.mjs.map +1 -1
  86. package/dist/adapters/database/domains/user-attribute/subscriber.d.ts +3 -6
  87. package/dist/adapters/database/domains/user-attribute/subscriber.d.ts.map +1 -1
  88. package/dist/adapters/database/domains/user-attribute/subscriber.mjs +24 -43
  89. package/dist/adapters/database/domains/user-attribute/subscriber.mjs.map +1 -1
  90. package/dist/adapters/database/domains/user-permission/subscriber.d.ts +3 -6
  91. package/dist/adapters/database/domains/user-permission/subscriber.d.ts.map +1 -1
  92. package/dist/adapters/database/domains/user-permission/subscriber.mjs +24 -49
  93. package/dist/adapters/database/domains/user-permission/subscriber.mjs.map +1 -1
  94. package/dist/adapters/database/domains/user-role/subscriber.d.ts +3 -6
  95. package/dist/adapters/database/domains/user-role/subscriber.d.ts.map +1 -1
  96. package/dist/adapters/database/domains/user-role/subscriber.mjs +24 -49
  97. package/dist/adapters/database/domains/user-role/subscriber.mjs.map +1 -1
  98. package/dist/adapters/database/index.d.ts +1 -0
  99. package/dist/adapters/database/index.d.ts.map +1 -1
  100. package/dist/adapters/database/index.mjs +3 -2
  101. package/dist/adapters/database/subscriber/index.d.ts +3 -0
  102. package/dist/adapters/database/subscriber/index.d.ts.map +1 -0
  103. package/dist/adapters/database/subscriber/index.mjs +5 -0
  104. package/dist/adapters/database/subscriber/module.d.ts +19 -0
  105. package/dist/adapters/database/subscriber/module.d.ts.map +1 -0
  106. package/dist/adapters/database/subscriber/module.mjs +70 -0
  107. package/dist/adapters/database/subscriber/module.mjs.map +1 -0
  108. package/dist/adapters/database/subscriber/types.d.ts +15 -0
  109. package/dist/adapters/database/subscriber/types.d.ts.map +1 -0
  110. package/dist/adapters/database/subscriber/types.mjs +4 -0
  111. package/dist/adapters/http/controllers/entities/identity-provider/module.mjs +1 -1
  112. package/dist/adapters/http/controllers/workflows/activate/module.d.ts +8 -1
  113. package/dist/adapters/http/controllers/workflows/activate/module.d.ts.map +1 -1
  114. package/dist/adapters/http/controllers/workflows/activate/module.mjs +20 -1
  115. package/dist/adapters/http/controllers/workflows/activate/module.mjs.map +1 -1
  116. package/dist/adapters/http/controllers/workflows/authorize/module.d.ts.map +1 -1
  117. package/dist/adapters/http/controllers/workflows/authorize/module.mjs +16 -37
  118. package/dist/adapters/http/controllers/workflows/authorize/module.mjs.map +1 -1
  119. package/dist/adapters/http/controllers/workflows/authorize/types.d.ts +2 -0
  120. package/dist/adapters/http/controllers/workflows/authorize/types.d.ts.map +1 -1
  121. package/dist/adapters/http/controllers/workflows/password-forgot/module.d.ts +8 -1
  122. package/dist/adapters/http/controllers/workflows/password-forgot/module.d.ts.map +1 -1
  123. package/dist/adapters/http/controllers/workflows/password-forgot/module.mjs +23 -2
  124. package/dist/adapters/http/controllers/workflows/password-forgot/module.mjs.map +1 -1
  125. package/dist/adapters/http/controllers/workflows/password-reset/module.d.ts +8 -1
  126. package/dist/adapters/http/controllers/workflows/password-reset/module.d.ts.map +1 -1
  127. package/dist/adapters/http/controllers/workflows/password-reset/module.mjs +21 -1
  128. package/dist/adapters/http/controllers/workflows/password-reset/module.mjs.map +1 -1
  129. package/dist/adapters/http/controllers/workflows/register/module.d.ts +8 -1
  130. package/dist/adapters/http/controllers/workflows/register/module.d.ts.map +1 -1
  131. package/dist/adapters/http/controllers/workflows/register/module.mjs +23 -2
  132. package/dist/adapters/http/controllers/workflows/register/module.mjs.map +1 -1
  133. package/dist/adapters/http/controllers/workflows/status/module.d.ts +11 -4
  134. package/dist/adapters/http/controllers/workflows/status/module.d.ts.map +1 -1
  135. package/dist/adapters/http/controllers/workflows/status/module.mjs +17 -5
  136. package/dist/adapters/http/controllers/workflows/status/module.mjs.map +1 -1
  137. package/dist/adapters/http/index.mjs +4 -1
  138. package/dist/adapters/http/middleware/built-in/cors.d.ts.map +1 -1
  139. package/dist/adapters/http/middleware/built-in/cors.mjs.map +1 -1
  140. package/dist/adapters/http/middleware/built-in/error.d.ts +6 -1
  141. package/dist/adapters/http/middleware/built-in/error.d.ts.map +1 -1
  142. package/dist/adapters/http/middleware/built-in/error.mjs +2 -3
  143. package/dist/adapters/http/middleware/built-in/error.mjs.map +1 -1
  144. package/dist/adapters/http/middleware/built-in/index.d.ts +1 -0
  145. package/dist/adapters/http/middleware/built-in/index.d.ts.map +1 -1
  146. package/dist/adapters/http/middleware/built-in/index.mjs +2 -1
  147. package/dist/adapters/http/middleware/built-in/logger.d.ts +2 -0
  148. package/dist/adapters/http/middleware/built-in/logger.d.ts.map +1 -1
  149. package/dist/adapters/http/middleware/built-in/logger.mjs +1 -2
  150. package/dist/adapters/http/middleware/built-in/logger.mjs.map +1 -1
  151. package/dist/adapters/http/middleware/built-in/ui-http-client.d.ts +15 -0
  152. package/dist/adapters/http/middleware/built-in/ui-http-client.d.ts.map +1 -0
  153. package/dist/adapters/http/middleware/built-in/ui-http-client.mjs +25 -0
  154. package/dist/adapters/http/middleware/built-in/ui-http-client.mjs.map +1 -0
  155. package/dist/adapters/http/middleware/index.mjs +2 -1
  156. package/dist/adapters/http/request/helpers/index.d.ts +2 -0
  157. package/dist/adapters/http/request/helpers/index.d.ts.map +1 -1
  158. package/dist/adapters/http/request/helpers/index.mjs +3 -1
  159. package/dist/adapters/http/request/helpers/locale.d.ts +14 -0
  160. package/dist/adapters/http/request/helpers/locale.d.ts.map +1 -0
  161. package/dist/adapters/http/request/helpers/locale.mjs +32 -0
  162. package/dist/adapters/http/request/helpers/locale.mjs.map +1 -0
  163. package/dist/adapters/http/request/helpers/locations.mjs +1 -1
  164. package/dist/adapters/http/request/helpers/redirect.d.ts +14 -0
  165. package/dist/adapters/http/request/helpers/redirect.d.ts.map +1 -0
  166. package/dist/adapters/http/request/helpers/redirect.mjs +36 -0
  167. package/dist/adapters/http/request/helpers/redirect.mjs.map +1 -0
  168. package/dist/adapters/http/request/index.mjs +3 -1
  169. package/dist/adapters/http/ui/base-path.d.ts +9 -0
  170. package/dist/adapters/http/ui/base-path.d.ts.map +1 -0
  171. package/dist/adapters/http/ui/base-path.mjs +18 -0
  172. package/dist/adapters/http/ui/base-path.mjs.map +1 -0
  173. package/dist/adapters/http/ui/index.d.ts +5 -0
  174. package/dist/adapters/http/ui/index.d.ts.map +1 -0
  175. package/dist/adapters/http/ui/index.mjs +7 -0
  176. package/dist/adapters/http/ui/render.d.ts +4 -0
  177. package/dist/adapters/http/ui/render.d.ts.map +1 -0
  178. package/dist/adapters/http/ui/render.mjs +60 -0
  179. package/dist/adapters/http/ui/render.mjs.map +1 -0
  180. package/dist/adapters/http/ui/serve.d.ts +16 -0
  181. package/dist/adapters/http/ui/serve.d.ts.map +1 -0
  182. package/dist/adapters/http/ui/serve.mjs +32 -0
  183. package/dist/adapters/http/ui/serve.mjs.map +1 -0
  184. package/dist/adapters/http/ui/types.d.ts +8 -0
  185. package/dist/adapters/http/ui/types.d.ts.map +1 -0
  186. package/dist/adapters/http/ui/types.mjs +4 -0
  187. package/dist/app/index.mjs +3 -2
  188. package/dist/app/modules/config/constants.d.ts +1 -0
  189. package/dist/app/modules/config/constants.d.ts.map +1 -1
  190. package/dist/app/modules/config/constants.mjs +1 -0
  191. package/dist/app/modules/config/constants.mjs.map +1 -1
  192. package/dist/app/modules/config/index.d.ts +1 -0
  193. package/dist/app/modules/config/index.d.ts.map +1 -1
  194. package/dist/app/modules/config/index.mjs +2 -1
  195. package/dist/app/modules/config/normalize.d.ts.map +1 -1
  196. package/dist/app/modules/config/normalize.mjs +9 -2
  197. package/dist/app/modules/config/normalize.mjs.map +1 -1
  198. package/dist/app/modules/config/origins.d.ts +10 -0
  199. package/dist/app/modules/config/origins.d.ts.map +1 -0
  200. package/dist/app/modules/config/origins.mjs +21 -0
  201. package/dist/app/modules/config/origins.mjs.map +1 -0
  202. package/dist/app/modules/config/parse.d.ts.map +1 -1
  203. package/dist/app/modules/config/parse.mjs +1 -0
  204. package/dist/app/modules/config/parse.mjs.map +1 -1
  205. package/dist/app/modules/config/read/env.d.ts.map +1 -1
  206. package/dist/app/modules/config/read/env.mjs +2 -0
  207. package/dist/app/modules/config/read/env.mjs.map +1 -1
  208. package/dist/app/modules/config/types.d.ts +14 -0
  209. package/dist/app/modules/config/types.d.ts.map +1 -1
  210. package/dist/app/modules/database/constants.d.ts +2 -0
  211. package/dist/app/modules/database/constants.d.ts.map +1 -1
  212. package/dist/app/modules/database/constants.mjs +4 -1
  213. package/dist/app/modules/database/constants.mjs.map +1 -1
  214. package/dist/app/modules/database/module.d.ts +5 -1
  215. package/dist/app/modules/database/module.d.ts.map +1 -1
  216. package/dist/app/modules/database/module.mjs +26 -15
  217. package/dist/app/modules/database/module.mjs.map +1 -1
  218. package/dist/app/modules/http/constants.d.ts +11 -0
  219. package/dist/app/modules/http/constants.d.ts.map +1 -1
  220. package/dist/app/modules/http/constants.mjs +12 -1
  221. package/dist/app/modules/http/constants.mjs.map +1 -1
  222. package/dist/app/modules/http/modules/controller.d.ts +5 -1
  223. package/dist/app/modules/http/modules/controller.d.ts.map +1 -1
  224. package/dist/app/modules/http/modules/controller.mjs +75 -10
  225. package/dist/app/modules/http/modules/controller.mjs.map +1 -1
  226. package/dist/app/modules/http/modules/middleware.d.ts +2 -1
  227. package/dist/app/modules/http/modules/middleware.d.ts.map +1 -1
  228. package/dist/app/modules/http/modules/middleware.mjs +19 -4
  229. package/dist/app/modules/http/modules/middleware.mjs.map +1 -1
  230. package/dist/app/modules/identity/module.mjs +4 -4
  231. package/dist/app/modules/identity/module.mjs.map +1 -1
  232. package/dist/app/modules/identity/repositories/provider/account/module.d.ts +3 -1
  233. package/dist/app/modules/identity/repositories/provider/account/module.d.ts.map +1 -1
  234. package/dist/app/modules/identity/repositories/provider/account/module.mjs +6 -3
  235. package/dist/app/modules/identity/repositories/provider/account/module.mjs.map +1 -1
  236. package/dist/app/modules/identity/repositories/provider/mapper/attribute.d.ts +3 -0
  237. package/dist/app/modules/identity/repositories/provider/mapper/attribute.d.ts.map +1 -1
  238. package/dist/app/modules/identity/repositories/provider/mapper/attribute.mjs +5 -2
  239. package/dist/app/modules/identity/repositories/provider/mapper/attribute.mjs.map +1 -1
  240. package/dist/app/modules/identity/repositories/provider/mapper/permission.d.ts +3 -0
  241. package/dist/app/modules/identity/repositories/provider/mapper/permission.d.ts.map +1 -1
  242. package/dist/app/modules/identity/repositories/provider/mapper/permission.mjs +5 -2
  243. package/dist/app/modules/identity/repositories/provider/mapper/permission.mjs.map +1 -1
  244. package/dist/app/modules/identity/repositories/provider/mapper/role.d.ts +3 -0
  245. package/dist/app/modules/identity/repositories/provider/mapper/role.d.ts.map +1 -1
  246. package/dist/app/modules/identity/repositories/provider/mapper/role.mjs +5 -2
  247. package/dist/app/modules/identity/repositories/provider/mapper/role.mjs.map +1 -1
  248. package/dist/app/modules/index.mjs +3 -2
  249. package/dist/app/modules/logger/module.d.ts.map +1 -1
  250. package/dist/app/modules/logger/module.mjs +1 -5
  251. package/dist/app/modules/logger/module.mjs.map +1 -1
  252. package/dist/app/modules/mail/constants.d.ts +2 -1
  253. package/dist/app/modules/mail/constants.d.ts.map +1 -1
  254. package/dist/app/modules/mail/constants.mjs +2 -1
  255. package/dist/app/modules/mail/constants.mjs.map +1 -1
  256. package/dist/app/modules/mail/index.mjs +2 -2
  257. package/dist/app/modules/mail/module.d.ts.map +1 -1
  258. package/dist/app/modules/mail/module.mjs +4 -1
  259. package/dist/app/modules/mail/module.mjs.map +1 -1
  260. package/dist/app/modules/oauth2/module.d.ts.map +1 -1
  261. package/dist/app/modules/oauth2/module.mjs +3 -1
  262. package/dist/app/modules/oauth2/module.mjs.map +1 -1
  263. package/dist/app/modules/oauth2/repositories/key/repository.d.ts +3 -0
  264. package/dist/app/modules/oauth2/repositories/key/repository.d.ts.map +1 -1
  265. package/dist/app/modules/oauth2/repositories/key/repository.mjs +5 -2
  266. package/dist/app/modules/oauth2/repositories/key/repository.mjs.map +1 -1
  267. package/dist/app/modules/provisioning/module.d.ts.map +1 -1
  268. package/dist/app/modules/provisioning/module.mjs +12 -0
  269. package/dist/app/modules/provisioning/module.mjs.map +1 -1
  270. package/dist/core/entities/client/index.d.ts +1 -0
  271. package/dist/core/entities/client/index.d.ts.map +1 -1
  272. package/dist/core/entities/client/index.mjs +2 -1
  273. package/dist/core/entities/client/service.d.ts.map +1 -1
  274. package/dist/core/entities/client/service.mjs +3 -2
  275. package/dist/core/entities/client/service.mjs.map +1 -1
  276. package/dist/core/entities/client/types.d.ts +11 -1
  277. package/dist/core/entities/client/types.d.ts.map +1 -1
  278. package/dist/core/entities/client/web-client.d.ts +34 -0
  279. package/dist/core/entities/client/web-client.d.ts.map +1 -0
  280. package/dist/core/entities/client/web-client.mjs +62 -0
  281. package/dist/core/entities/client/web-client.mjs.map +1 -0
  282. package/dist/core/entities/index.mjs +2 -1
  283. package/dist/core/entities/realm/service.d.ts +6 -1
  284. package/dist/core/entities/realm/service.d.ts.map +1 -1
  285. package/dist/core/entities/realm/service.mjs +9 -0
  286. package/dist/core/entities/realm/service.mjs.map +1 -1
  287. package/dist/core/identity/index.d.ts +1 -0
  288. package/dist/core/identity/index.d.ts.map +1 -1
  289. package/dist/core/identity/index.mjs +2 -1
  290. package/dist/core/identity/password-recovery/constants.d.ts +6 -0
  291. package/dist/core/identity/password-recovery/constants.d.ts.map +1 -0
  292. package/dist/core/identity/password-recovery/constants.mjs +12 -0
  293. package/dist/core/identity/password-recovery/constants.mjs.map +1 -0
  294. package/dist/core/identity/password-recovery/index.d.ts +1 -0
  295. package/dist/core/identity/password-recovery/index.d.ts.map +1 -1
  296. package/dist/core/identity/password-recovery/index.mjs +2 -1
  297. package/dist/core/identity/password-recovery/service.d.ts +4 -2
  298. package/dist/core/identity/password-recovery/service.d.ts.map +1 -1
  299. package/dist/core/identity/password-recovery/service.mjs +17 -6
  300. package/dist/core/identity/password-recovery/service.mjs.map +1 -1
  301. package/dist/core/identity/password-recovery/types.d.ts +5 -2
  302. package/dist/core/identity/password-recovery/types.d.ts.map +1 -1
  303. package/dist/core/identity/registration/service.d.ts +4 -2
  304. package/dist/core/identity/registration/service.d.ts.map +1 -1
  305. package/dist/core/identity/registration/service.mjs +15 -6
  306. package/dist/core/identity/registration/service.mjs.map +1 -1
  307. package/dist/core/identity/registration/types.d.ts +5 -2
  308. package/dist/core/identity/registration/types.d.ts.map +1 -1
  309. package/dist/core/identity/role/module.d.ts.map +1 -1
  310. package/dist/core/identity/role/module.mjs +1 -1
  311. package/dist/core/identity/role/module.mjs.map +1 -1
  312. package/dist/core/identity/types.d.ts +10 -0
  313. package/dist/core/identity/types.d.ts.map +1 -0
  314. package/dist/core/identity/types.mjs +4 -0
  315. package/dist/core/index.mjs +8 -1
  316. package/dist/core/mail/format/blocks.d.ts +12 -0
  317. package/dist/core/mail/format/blocks.d.ts.map +1 -0
  318. package/dist/core/mail/format/blocks.mjs +47 -0
  319. package/dist/core/mail/format/blocks.mjs.map +1 -0
  320. package/dist/core/mail/format/html.d.ts +9 -0
  321. package/dist/core/mail/format/html.d.ts.map +1 -0
  322. package/dist/core/mail/format/html.mjs +41 -0
  323. package/dist/core/mail/format/html.mjs.map +1 -0
  324. package/dist/core/mail/format/index.d.ts +5 -0
  325. package/dist/core/mail/format/index.d.ts.map +1 -0
  326. package/dist/core/mail/format/index.mjs +7 -0
  327. package/dist/core/mail/format/text.d.ts +3 -0
  328. package/dist/core/mail/format/text.d.ts.map +1 -0
  329. package/dist/core/mail/format/text.mjs +20 -0
  330. package/dist/core/mail/format/text.mjs.map +1 -0
  331. package/dist/core/mail/format/types.d.ts +30 -0
  332. package/dist/core/mail/format/types.d.ts.map +1 -0
  333. package/dist/core/mail/format/types.mjs +4 -0
  334. package/dist/core/mail/index.d.ts +3 -0
  335. package/dist/core/mail/index.d.ts.map +1 -1
  336. package/dist/core/mail/index.mjs +6 -1
  337. package/dist/core/mail/renderer.d.ts +10 -0
  338. package/dist/core/mail/renderer.d.ts.map +1 -0
  339. package/dist/core/mail/renderer.mjs +49 -0
  340. package/dist/core/mail/renderer.mjs.map +1 -0
  341. package/dist/core/mail/template/define.d.ts +7 -0
  342. package/dist/core/mail/template/define.d.ts.map +1 -0
  343. package/dist/core/mail/template/define.mjs +14 -0
  344. package/dist/core/mail/template/define.mjs.map +1 -0
  345. package/dist/core/mail/template/index.d.ts +4 -0
  346. package/dist/core/mail/template/index.d.ts.map +1 -0
  347. package/dist/core/mail/template/index.mjs +7 -0
  348. package/dist/core/mail/template/registry.d.ts +6 -0
  349. package/dist/core/mail/template/registry.d.ts.map +1 -0
  350. package/dist/core/mail/template/registry.mjs +15 -0
  351. package/dist/core/mail/template/registry.mjs.map +1 -0
  352. package/dist/core/mail/template/templates/password-reset.d.ts +3 -0
  353. package/dist/core/mail/template/templates/password-reset.d.ts.map +1 -0
  354. package/dist/core/mail/template/templates/password-reset.mjs +36 -0
  355. package/dist/core/mail/template/templates/password-reset.mjs.map +1 -0
  356. package/dist/core/mail/template/templates/registration-activation.d.ts +3 -0
  357. package/dist/core/mail/template/templates/registration-activation.d.ts.map +1 -0
  358. package/dist/core/mail/template/templates/registration-activation.mjs +34 -0
  359. package/dist/core/mail/template/templates/registration-activation.mjs.map +1 -0
  360. package/dist/core/mail/template/types.d.ts +39 -0
  361. package/dist/core/mail/template/types.d.ts.map +1 -0
  362. package/dist/core/mail/template/types.mjs +13 -0
  363. package/dist/core/mail/template/types.mjs.map +1 -0
  364. package/dist/core/mail/types.d.ts +21 -0
  365. package/dist/core/mail/types.d.ts.map +1 -1
  366. package/dist/index.mjs +7 -3
  367. package/dist/swagger.json +98 -3
  368. package/dist/ui/client/.vite/ssr-manifest.json +49086 -874
  369. package/dist/ui/client/assets/asap-latin-400-normal-Dc37g3Il.woff +0 -0
  370. package/dist/ui/client/assets/asap-latin-400-normal-DnZ1MOsG.woff2 +0 -0
  371. package/dist/ui/client/assets/asap-latin-700-normal-Dqcopq14.woff +0 -0
  372. package/dist/ui/client/assets/asap-latin-700-normal-l2Y8pi-F.woff2 +0 -0
  373. package/dist/ui/client/assets/asap-latin-ext-400-normal-C-fcRdtE.woff +0 -0
  374. package/dist/ui/client/assets/asap-latin-ext-400-normal-DwYtpHbV.woff2 +0 -0
  375. package/dist/ui/client/assets/asap-latin-ext-700-normal-D00OESsZ.woff +0 -0
  376. package/dist/ui/client/assets/asap-latin-ext-700-normal-y8bo5aW5.woff2 +0 -0
  377. package/dist/ui/client/assets/asap-vietnamese-400-normal-DGyJlJLT.woff2 +0 -0
  378. package/dist/ui/client/assets/asap-vietnamese-400-normal-lfLaoF2x.woff +0 -0
  379. package/dist/ui/client/assets/asap-vietnamese-700-normal-B-e19ug5.woff +0 -0
  380. package/dist/ui/client/assets/asap-vietnamese-700-normal-D-SxY94i.woff2 +0 -0
  381. package/dist/ui/client/assets/index-BeXJgvKE.css +2 -0
  382. package/dist/ui/client/assets/index-CgLTRwpP.js +95 -0
  383. package/dist/ui/client/assets/nunito-cyrillic-300-normal-BPQV259B.woff2 +0 -0
  384. package/dist/ui/client/assets/nunito-cyrillic-300-normal-g5qSsvc0.woff +0 -0
  385. package/dist/ui/client/assets/nunito-cyrillic-400-normal-D1j0u8EH.woff +0 -0
  386. package/dist/ui/client/assets/nunito-cyrillic-400-normal-xAOo5cBP.woff2 +0 -0
  387. package/dist/ui/client/assets/nunito-cyrillic-600-normal-BUjmtIuu.woff +0 -0
  388. package/dist/ui/client/assets/nunito-cyrillic-600-normal-DJGQ2h05.woff2 +0 -0
  389. package/dist/ui/client/assets/nunito-cyrillic-700-normal-DP36NgGt.woff2 +0 -0
  390. package/dist/ui/client/assets/nunito-cyrillic-700-normal-DfHRUDv-.woff +0 -0
  391. package/dist/ui/client/assets/nunito-cyrillic-ext-300-normal-BDHtqmCR.woff +0 -0
  392. package/dist/ui/client/assets/nunito-cyrillic-ext-300-normal-ChMQLIrm.woff2 +0 -0
  393. package/dist/ui/client/assets/nunito-cyrillic-ext-400-normal-CuPM9foi.woff2 +0 -0
  394. package/dist/ui/client/assets/nunito-cyrillic-ext-400-normal-xaE7D4Sw.woff +0 -0
  395. package/dist/ui/client/assets/nunito-cyrillic-ext-600-normal-CWPPjBOD.woff2 +0 -0
  396. package/dist/ui/client/assets/nunito-cyrillic-ext-600-normal-vnfu4DTE.woff +0 -0
  397. package/dist/ui/client/assets/nunito-cyrillic-ext-700-normal-BuR0mlCG.woff2 +0 -0
  398. package/dist/ui/client/assets/nunito-cyrillic-ext-700-normal-DfoqN4Gs.woff +0 -0
  399. package/dist/ui/client/assets/nunito-latin-300-normal-C3ZIKvzv.woff +0 -0
  400. package/dist/ui/client/assets/nunito-latin-300-normal-COoPE5VN.woff2 +0 -0
  401. package/dist/ui/client/assets/nunito-latin-400-normal-DKg4f3fz.woff +0 -0
  402. package/dist/ui/client/assets/nunito-latin-400-normal-r8SDr6Up.woff2 +0 -0
  403. package/dist/ui/client/assets/nunito-latin-600-normal-Br8yIETf.woff2 +0 -0
  404. package/dist/ui/client/assets/nunito-latin-600-normal-Cd0eNu1l.woff +0 -0
  405. package/dist/ui/client/assets/nunito-latin-700-normal-Dort48En.woff2 +0 -0
  406. package/dist/ui/client/assets/nunito-latin-700-normal-OcDqTBcA.woff +0 -0
  407. package/dist/ui/client/assets/nunito-latin-ext-300-normal-D1SyVuPt.woff2 +0 -0
  408. package/dist/ui/client/assets/nunito-latin-ext-300-normal-DfqbmdMl.woff +0 -0
  409. package/dist/ui/client/assets/nunito-latin-ext-400-normal-CjMJVfGn.woff +0 -0
  410. package/dist/ui/client/assets/nunito-latin-ext-400-normal-i-8OOpdj.woff2 +0 -0
  411. package/dist/ui/client/assets/nunito-latin-ext-600-normal-BKUpuB78.woff +0 -0
  412. package/dist/ui/client/assets/nunito-latin-ext-600-normal-Dd9Zuxh1.woff2 +0 -0
  413. package/dist/ui/client/assets/nunito-latin-ext-700-normal-BWeMsAzO.woff2 +0 -0
  414. package/dist/ui/client/assets/nunito-latin-ext-700-normal-D4woHhbd.woff +0 -0
  415. package/dist/ui/client/assets/nunito-vietnamese-300-normal-DATld5Vw.woff +0 -0
  416. package/dist/ui/client/assets/nunito-vietnamese-300-normal-mLneKULB.woff2 +0 -0
  417. package/dist/ui/client/assets/nunito-vietnamese-400-normal-BHkVbP3T.woff2 +0 -0
  418. package/dist/ui/client/assets/nunito-vietnamese-400-normal-DtOtW02z.woff +0 -0
  419. package/dist/ui/client/assets/nunito-vietnamese-600-normal-BY8O6Cug.woff2 +0 -0
  420. package/dist/ui/client/assets/nunito-vietnamese-600-normal-DO1RqFw5.woff +0 -0
  421. package/dist/ui/client/assets/nunito-vietnamese-700-normal-C9SQsXvj.woff +0 -0
  422. package/dist/ui/client/assets/nunito-vietnamese-700-normal-Ch8EUCfz.woff2 +0 -0
  423. package/dist/ui/client/index.html +2 -2
  424. package/dist/ui/server/server.js +2765 -540
  425. package/package.json +20 -17
  426. package/dist/adapters/database/data-source/singleton.d.ts +0 -5
  427. package/dist/adapters/database/data-source/singleton.d.ts.map +0 -1
  428. package/dist/adapters/database/data-source/singleton.mjs +0 -19
  429. package/dist/adapters/database/data-source/singleton.mjs.map +0 -1
  430. package/dist/adapters/database/event-publisher/index.d.ts +0 -2
  431. package/dist/adapters/database/event-publisher/index.d.ts.map +0 -1
  432. package/dist/adapters/database/event-publisher/index.mjs +0 -5
  433. package/dist/adapters/database/event-publisher/module.d.ts +0 -6
  434. package/dist/adapters/database/event-publisher/module.d.ts.map +0 -1
  435. package/dist/adapters/database/event-publisher/module.mjs +0 -25
  436. package/dist/adapters/database/event-publisher/module.mjs.map +0 -1
  437. package/dist/ui/client/assets/index-Cvz0JzBe.js +0 -95
  438. package/dist/ui/client/assets/index-DNeLkYQO.css +0 -1
@@ -1,7 +1,9 @@
1
1
  import type { IdentityProviderAccount } from '@authup/core-kit';
2
- import type { DeepPartial } from 'typeorm';
2
+ import type { DataSource, DeepPartial } from 'typeorm';
3
3
  import type { IIdentityProviderAccountRepository, IdentityProviderIdentity } from '../../../../../../core/index.ts';
4
4
  export declare class IdentityProviderAccountRepository implements IIdentityProviderAccountRepository {
5
+ protected dataSource: DataSource;
6
+ constructor(dataSource: DataSource);
5
7
  findOneByProviderIdentity(identity: IdentityProviderIdentity): Promise<IdentityProviderAccount | null>;
6
8
  save(entity: DeepPartial<IdentityProviderAccount>): Promise<IdentityProviderAccount>;
7
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../../../../src/app/modules/identity/repositories/provider/account/module.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,OAAO,KAAK,EAAE,kCAAkC,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAGpH,qBAAa,iCAAkC,YAAW,kCAAkC;IAClF,yBAAyB,CAAC,QAAQ,EAAE,wBAAwB,GAAG,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;IAatG,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,uBAAuB,CAAC,GAAG,OAAO,CAAC,uBAAuB,CAAC;CAM7F"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../../../../src/app/modules/identity/repositories/provider/account/module.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,KAAK,EAAE,kCAAkC,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAGpH,qBAAa,iCAAkC,YAAW,kCAAkC;IACxF,SAAS,CAAC,UAAU,EAAG,UAAU,CAAC;gBAEtB,UAAU,EAAE,UAAU;IAI5B,yBAAyB,CAAC,QAAQ,EAAE,wBAAwB,GAAG,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;IAYtG,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,uBAAuB,CAAC,GAAG,OAAO,CAAC,uBAAuB,CAAC;CAK7F"}
@@ -3,11 +3,14 @@ import "node:url";
3
3
  import.meta.url;
4
4
  import { IdentityProviderAccountEntity } from "../../../../../../adapters/database/domains/identity-provider-account/entity.mjs";
5
5
  import "../../../../../../adapters/database/domains/index.mjs";
6
- import { useDataSource } from "typeorm-extension";
7
6
  //#region src/app/modules/identity/repositories/provider/account/module.ts
8
7
  var IdentityProviderAccountRepository = class {
8
+ dataSource;
9
+ constructor(dataSource) {
10
+ this.dataSource = dataSource;
11
+ }
9
12
  async findOneByProviderIdentity(identity) {
10
- return (await useDataSource()).getRepository(IdentityProviderAccountEntity).findOne({
13
+ return this.dataSource.getRepository(IdentityProviderAccountEntity).findOne({
11
14
  where: {
12
15
  provider_user_id: identity.id,
13
16
  provider_id: identity.provider.id
@@ -16,7 +19,7 @@ var IdentityProviderAccountRepository = class {
16
19
  });
17
20
  }
18
21
  async save(entity) {
19
- return (await useDataSource()).getRepository(IdentityProviderAccountEntity).save(entity);
22
+ return this.dataSource.getRepository(IdentityProviderAccountEntity).save(entity);
20
23
  }
21
24
  };
22
25
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"module.mjs","names":["useDataSource","IdentityProviderAccountEntity","IdentityProviderAccountRepository","findOneByProviderIdentity","identity","dataSource","repository","getRepository","findOne","where","provider_user_id","id","provider_id","provider","relations","save","entity"],"sources":["../../../../../../../src/app/modules/identity/repositories/provider/account/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { IdentityProviderAccount } from '@authup/core-kit';\nimport type { DeepPartial } from 'typeorm';\nimport { useDataSource } from 'typeorm-extension';\nimport type { IIdentityProviderAccountRepository, IdentityProviderIdentity } from '../../../../../../core/index.ts';\nimport { IdentityProviderAccountEntity } from '../../../../../../adapters/database/domains/index.ts';\n\nexport class IdentityProviderAccountRepository implements IIdentityProviderAccountRepository {\n async findOneByProviderIdentity(identity: IdentityProviderIdentity): Promise<IdentityProviderAccount | null> {\n const dataSource = await useDataSource();\n const repository = dataSource.getRepository(IdentityProviderAccountEntity);\n\n return repository.findOne({\n where: {\n provider_user_id: identity.id,\n provider_id: identity.provider.id,\n },\n relations: ['user'],\n });\n }\n\n async save(entity: DeepPartial<IdentityProviderAccount>): Promise<IdentityProviderAccount> {\n const dataSource = await useDataSource();\n const repository = dataSource.getRepository(IdentityProviderAccountEntity);\n\n return repository.save(entity);\n }\n}\n"],"mappings":";;;;;;;AAaA,IAAaE,oCAAb,MAAaA;CACT,MAAMC,0BAA0BC,UAA6E;EAIzG,QAFmBC,MADML,cAAAA,EAAAA,CACKO,cAAcN,6BAErCK,CAAAA,CAAWE,QAAQ;GACtBC,OAAO;IACHC,kBAAkBN,SAASO;IAC3BC,aAAaR,SAASS,SAASF;GACnC;GACAG,WAAW,CAAC,MAAA;EAChB,CAAA;CACJ;CAEA,MAAMC,KAAKC,QAAgF;EAIvF,QAFmBX,MADML,cAAAA,EAAAA,CACKO,cAAcN,6BAErCK,CAAAA,CAAWS,KAAKC,MAAAA;CAC3B;AACJ"}
1
+ {"version":3,"file":"module.mjs","names":["IdentityProviderAccountEntity","IdentityProviderAccountRepository","dataSource","findOneByProviderIdentity","identity","repository","getRepository","findOne","where","provider_user_id","id","provider_id","provider","relations","save","entity"],"sources":["../../../../../../../src/app/modules/identity/repositories/provider/account/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { IdentityProviderAccount } from '@authup/core-kit';\nimport type { DataSource, DeepPartial } from 'typeorm';\nimport type { IIdentityProviderAccountRepository, IdentityProviderIdentity } from '../../../../../../core/index.ts';\nimport { IdentityProviderAccountEntity } from '../../../../../../adapters/database/domains/index.ts';\n\nexport class IdentityProviderAccountRepository implements IIdentityProviderAccountRepository {\n protected dataSource : DataSource;\n\n constructor(dataSource: DataSource) {\n this.dataSource = dataSource;\n }\n\n async findOneByProviderIdentity(identity: IdentityProviderIdentity): Promise<IdentityProviderAccount | null> {\n const repository = this.dataSource.getRepository(IdentityProviderAccountEntity);\n\n return repository.findOne({\n where: {\n provider_user_id: identity.id,\n provider_id: identity.provider.id,\n },\n relations: ['user'],\n });\n }\n\n async save(entity: DeepPartial<IdentityProviderAccount>): Promise<IdentityProviderAccount> {\n const repository = this.dataSource.getRepository(IdentityProviderAccountEntity);\n\n return repository.save(entity);\n }\n}\n"],"mappings":";;;;;;AAYA,IAAaC,oCAAb,MAAaA;CACCC;CAEV,YAAYA,YAAwB;EAChC,KAAKA,aAAaA;CACtB;CAEA,MAAMC,0BAA0BC,UAA6E;EAGzG,OAFmB,KAAKF,WAAWI,cAAcN,6BAE1CK,CAAAA,CAAWE,QAAQ;GACtBC,OAAO;IACHC,kBAAkBL,SAASM;IAC3BC,aAAaP,SAASQ,SAASF;GACnC;GACAG,WAAW,CAAC,MAAA;EAChB,CAAA;CACJ;CAEA,MAAMC,KAAKC,QAAgF;EAGvF,OAFmB,KAAKb,WAAWI,cAAcN,6BAE1CK,CAAAA,CAAWS,KAAKC,MAAAA;CAC3B;AACJ"}
@@ -1,6 +1,9 @@
1
1
  import type { IdentityProviderAttributeMapping } from '@authup/core-kit';
2
+ import type { DataSource } from 'typeorm';
2
3
  import type { IIdentityProviderAttributeMappingRepository } from '../../../../../../core/index.ts';
3
4
  export declare class IdentityProviderAttributeMappingRepository implements IIdentityProviderAttributeMappingRepository {
5
+ protected dataSource: DataSource;
6
+ constructor(dataSource: DataSource);
4
7
  findByProviderId(providerId: string): Promise<IdentityProviderAttributeMapping[]>;
5
8
  }
6
9
  //# sourceMappingURL=attribute.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"attribute.d.ts","sourceRoot":"","sources":["../../../../../../../src/app/modules/identity/repositories/provider/mapper/attribute.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AAEzE,OAAO,KAAK,EAAE,2CAA2C,EAAE,MAAM,iCAAiC,CAAC;AAGnG,qBAAa,0CAA2C,YAAW,2CAA2C;IACpG,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,gCAAgC,EAAE,CAAC;CAM1F"}
1
+ {"version":3,"file":"attribute.d.ts","sourceRoot":"","sources":["../../../../../../../src/app/modules/identity/repositories/provider/mapper/attribute.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,KAAK,EAAE,2CAA2C,EAAE,MAAM,iCAAiC,CAAC;AAGnG,qBAAa,0CAA2C,YAAW,2CAA2C;IAC1G,SAAS,CAAC,UAAU,EAAG,UAAU,CAAC;gBAEtB,UAAU,EAAE,UAAU;IAI5B,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,gCAAgC,EAAE,CAAC;CAK1F"}
@@ -3,11 +3,14 @@ import "node:url";
3
3
  import.meta.url;
4
4
  import { IdentityProviderAttributeMappingEntity } from "../../../../../../adapters/database/domains/identity-provider-attribute-mapping/entity.mjs";
5
5
  import "../../../../../../adapters/database/domains/index.mjs";
6
- import { useDataSource } from "typeorm-extension";
7
6
  //#region src/app/modules/identity/repositories/provider/mapper/attribute.ts
8
7
  var IdentityProviderAttributeMappingRepository = class {
8
+ dataSource;
9
+ constructor(dataSource) {
10
+ this.dataSource = dataSource;
11
+ }
9
12
  async findByProviderId(providerId) {
10
- return (await useDataSource()).getRepository(IdentityProviderAttributeMappingEntity).findBy({ provider_id: providerId });
13
+ return this.dataSource.getRepository(IdentityProviderAttributeMappingEntity).findBy({ provider_id: providerId });
11
14
  }
12
15
  };
13
16
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"attribute.mjs","names":["useDataSource","IdentityProviderAttributeMappingEntity","IdentityProviderAttributeMappingRepository","findByProviderId","providerId","dataSource","repository","getRepository","findBy","provider_id"],"sources":["../../../../../../../src/app/modules/identity/repositories/provider/mapper/attribute.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { IdentityProviderAttributeMapping } from '@authup/core-kit';\nimport { useDataSource } from 'typeorm-extension';\nimport type { IIdentityProviderAttributeMappingRepository } from '../../../../../../core/index.ts';\nimport { IdentityProviderAttributeMappingEntity } from '../../../../../../adapters/database/domains/index.ts';\n\nexport class IdentityProviderAttributeMappingRepository implements IIdentityProviderAttributeMappingRepository {\n async findByProviderId(providerId: string): Promise<IdentityProviderAttributeMapping[]> {\n const dataSource = await useDataSource();\n const repository = dataSource.getRepository(IdentityProviderAttributeMappingEntity);\n\n return repository.findBy({ provider_id: providerId });\n }\n}\n"],"mappings":";;;;;;;AAYA,IAAaE,6CAAb,MAAaA;CACT,MAAMC,iBAAiBC,YAAiE;EAIpF,QAFmBC,MADML,cAAAA,EAAAA,CACKO,cAAcN,sCAErCK,CAAAA,CAAWE,OAAO,EAAEC,aAAaL,WAAW,CAAA;CACvD;AACJ"}
1
+ {"version":3,"file":"attribute.mjs","names":["IdentityProviderAttributeMappingEntity","IdentityProviderAttributeMappingRepository","dataSource","findByProviderId","providerId","repository","getRepository","findBy","provider_id"],"sources":["../../../../../../../src/app/modules/identity/repositories/provider/mapper/attribute.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { IdentityProviderAttributeMapping } from '@authup/core-kit';\nimport type { DataSource } from 'typeorm';\nimport type { IIdentityProviderAttributeMappingRepository } from '../../../../../../core/index.ts';\nimport { IdentityProviderAttributeMappingEntity } from '../../../../../../adapters/database/domains/index.ts';\n\nexport class IdentityProviderAttributeMappingRepository implements IIdentityProviderAttributeMappingRepository {\n protected dataSource : DataSource;\n\n constructor(dataSource: DataSource) {\n this.dataSource = dataSource;\n }\n\n async findByProviderId(providerId: string): Promise<IdentityProviderAttributeMapping[]> {\n const repository = this.dataSource.getRepository(IdentityProviderAttributeMappingEntity);\n\n return repository.findBy({ provider_id: providerId });\n }\n}\n"],"mappings":";;;;;;AAYA,IAAaC,6CAAb,MAAaA;CACCC;CAEV,YAAYA,YAAwB;EAChC,KAAKA,aAAaA;CACtB;CAEA,MAAMC,iBAAiBC,YAAiE;EAGpF,OAFmB,KAAKF,WAAWI,cAAcN,sCAE1CK,CAAAA,CAAWE,OAAO,EAAEC,aAAaJ,WAAW,CAAA;CACvD;AACJ"}
@@ -1,6 +1,9 @@
1
1
  import type { IdentityProviderPermissionMapping } from '@authup/core-kit';
2
+ import type { DataSource } from 'typeorm';
2
3
  import type { IIdentityProviderPermissionMappingRepository } from '../../../../../../core/index.ts';
3
4
  export declare class IdentityProviderPermissionMappingRepository implements IIdentityProviderPermissionMappingRepository {
5
+ protected dataSource: DataSource;
6
+ constructor(dataSource: DataSource);
4
7
  findByProviderId(providerId: string): Promise<IdentityProviderPermissionMapping[]>;
5
8
  }
6
9
  //# sourceMappingURL=permission.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"permission.d.ts","sourceRoot":"","sources":["../../../../../../../src/app/modules/identity/repositories/provider/mapper/permission.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,kBAAkB,CAAC;AAE1E,OAAO,KAAK,EAAE,4CAA4C,EAAE,MAAM,iCAAiC,CAAC;AAGpG,qBAAa,2CAA4C,YAAW,4CAA4C;IACtG,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,iCAAiC,EAAE,CAAC;CAM3F"}
1
+ {"version":3,"file":"permission.d.ts","sourceRoot":"","sources":["../../../../../../../src/app/modules/identity/repositories/provider/mapper/permission.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,KAAK,EAAE,4CAA4C,EAAE,MAAM,iCAAiC,CAAC;AAGpG,qBAAa,2CAA4C,YAAW,4CAA4C;IAC5G,SAAS,CAAC,UAAU,EAAG,UAAU,CAAC;gBAEtB,UAAU,EAAE,UAAU;IAI5B,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,iCAAiC,EAAE,CAAC;CAK3F"}
@@ -3,11 +3,14 @@ import "node:url";
3
3
  import.meta.url;
4
4
  import { IdentityProviderPermissionMappingEntity } from "../../../../../../adapters/database/domains/identity-provider-permission-mapping/entity.mjs";
5
5
  import "../../../../../../adapters/database/domains/index.mjs";
6
- import { useDataSource } from "typeorm-extension";
7
6
  //#region src/app/modules/identity/repositories/provider/mapper/permission.ts
8
7
  var IdentityProviderPermissionMappingRepository = class {
8
+ dataSource;
9
+ constructor(dataSource) {
10
+ this.dataSource = dataSource;
11
+ }
9
12
  async findByProviderId(providerId) {
10
- return (await useDataSource()).getRepository(IdentityProviderPermissionMappingEntity).findBy({ provider_id: providerId });
13
+ return this.dataSource.getRepository(IdentityProviderPermissionMappingEntity).findBy({ provider_id: providerId });
11
14
  }
12
15
  };
13
16
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"permission.mjs","names":["useDataSource","IdentityProviderPermissionMappingEntity","IdentityProviderPermissionMappingRepository","findByProviderId","providerId","dataSource","repository","getRepository","findBy","provider_id"],"sources":["../../../../../../../src/app/modules/identity/repositories/provider/mapper/permission.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { IdentityProviderPermissionMapping } from '@authup/core-kit';\nimport { useDataSource } from 'typeorm-extension';\nimport type { IIdentityProviderPermissionMappingRepository } from '../../../../../../core/index.ts';\nimport { IdentityProviderPermissionMappingEntity } from '../../../../../../adapters/database/domains/index.ts';\n\nexport class IdentityProviderPermissionMappingRepository implements IIdentityProviderPermissionMappingRepository {\n async findByProviderId(providerId: string): Promise<IdentityProviderPermissionMapping[]> {\n const dataSource = await useDataSource();\n const repository = dataSource.getRepository(IdentityProviderPermissionMappingEntity);\n\n return repository.findBy({ provider_id: providerId });\n }\n}\n"],"mappings":";;;;;;;AAYA,IAAaE,8CAAb,MAAaA;CACT,MAAMC,iBAAiBC,YAAkE;EAIrF,QAFmBC,MADML,cAAAA,EAAAA,CACKO,cAAcN,uCAErCK,CAAAA,CAAWE,OAAO,EAAEC,aAAaL,WAAW,CAAA;CACvD;AACJ"}
1
+ {"version":3,"file":"permission.mjs","names":["IdentityProviderPermissionMappingEntity","IdentityProviderPermissionMappingRepository","dataSource","findByProviderId","providerId","repository","getRepository","findBy","provider_id"],"sources":["../../../../../../../src/app/modules/identity/repositories/provider/mapper/permission.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { IdentityProviderPermissionMapping } from '@authup/core-kit';\nimport type { DataSource } from 'typeorm';\nimport type { IIdentityProviderPermissionMappingRepository } from '../../../../../../core/index.ts';\nimport { IdentityProviderPermissionMappingEntity } from '../../../../../../adapters/database/domains/index.ts';\n\nexport class IdentityProviderPermissionMappingRepository implements IIdentityProviderPermissionMappingRepository {\n protected dataSource : DataSource;\n\n constructor(dataSource: DataSource) {\n this.dataSource = dataSource;\n }\n\n async findByProviderId(providerId: string): Promise<IdentityProviderPermissionMapping[]> {\n const repository = this.dataSource.getRepository(IdentityProviderPermissionMappingEntity);\n\n return repository.findBy({ provider_id: providerId });\n }\n}\n"],"mappings":";;;;;;AAYA,IAAaC,8CAAb,MAAaA;CACCC;CAEV,YAAYA,YAAwB;EAChC,KAAKA,aAAaA;CACtB;CAEA,MAAMC,iBAAiBC,YAAkE;EAGrF,OAFmB,KAAKF,WAAWI,cAAcN,uCAE1CK,CAAAA,CAAWE,OAAO,EAAEC,aAAaJ,WAAW,CAAA;CACvD;AACJ"}
@@ -1,6 +1,9 @@
1
1
  import type { IdentityProviderRoleMapping } from '@authup/core-kit';
2
+ import type { DataSource } from 'typeorm';
2
3
  import type { IIdentityProviderRoleMappingFinder } from '../../../../../../core/index.ts';
3
4
  export declare class IdentityProviderRoleMappingRepository implements IIdentityProviderRoleMappingFinder {
5
+ protected dataSource: DataSource;
6
+ constructor(dataSource: DataSource);
4
7
  findByProviderId(providerId: string): Promise<IdentityProviderRoleMapping[]>;
5
8
  }
6
9
  //# sourceMappingURL=role.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"role.d.ts","sourceRoot":"","sources":["../../../../../../../src/app/modules/identity/repositories/provider/mapper/role.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAEpE,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,iCAAiC,CAAC;AAG1F,qBAAa,qCAAsC,YAAW,kCAAkC;IACtF,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,EAAE,CAAC;CAMrF"}
1
+ {"version":3,"file":"role.d.ts","sourceRoot":"","sources":["../../../../../../../src/app/modules/identity/repositories/provider/mapper/role.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,iCAAiC,CAAC;AAG1F,qBAAa,qCAAsC,YAAW,kCAAkC;IAC5F,SAAS,CAAC,UAAU,EAAG,UAAU,CAAC;gBAEtB,UAAU,EAAE,UAAU;IAI5B,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,EAAE,CAAC;CAKrF"}
@@ -3,11 +3,14 @@ import "node:url";
3
3
  import.meta.url;
4
4
  import { IdentityProviderRoleMappingEntity } from "../../../../../../adapters/database/domains/identity-provider-role-mapping/entity.mjs";
5
5
  import "../../../../../../adapters/database/domains/index.mjs";
6
- import { useDataSource } from "typeorm-extension";
7
6
  //#region src/app/modules/identity/repositories/provider/mapper/role.ts
8
7
  var IdentityProviderRoleMappingRepository = class {
8
+ dataSource;
9
+ constructor(dataSource) {
10
+ this.dataSource = dataSource;
11
+ }
9
12
  async findByProviderId(providerId) {
10
- return (await useDataSource()).getRepository(IdentityProviderRoleMappingEntity).findBy({ provider_id: providerId });
13
+ return this.dataSource.getRepository(IdentityProviderRoleMappingEntity).findBy({ provider_id: providerId });
11
14
  }
12
15
  };
13
16
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"role.mjs","names":["useDataSource","IdentityProviderRoleMappingEntity","IdentityProviderRoleMappingRepository","findByProviderId","providerId","dataSource","repository","getRepository","findBy","provider_id"],"sources":["../../../../../../../src/app/modules/identity/repositories/provider/mapper/role.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { IdentityProviderRoleMapping } from '@authup/core-kit';\nimport { useDataSource } from 'typeorm-extension';\nimport type { IIdentityProviderRoleMappingFinder } from '../../../../../../core/index.ts';\nimport { IdentityProviderRoleMappingEntity } from '../../../../../../adapters/database/domains/index.ts';\n\nexport class IdentityProviderRoleMappingRepository implements IIdentityProviderRoleMappingFinder {\n async findByProviderId(providerId: string): Promise<IdentityProviderRoleMapping[]> {\n const dataSource = await useDataSource();\n const repository = dataSource.getRepository(IdentityProviderRoleMappingEntity);\n\n return repository.findBy({ provider_id: providerId });\n }\n}\n"],"mappings":";;;;;;;AAYA,IAAaE,wCAAb,MAAaA;CACT,MAAMC,iBAAiBC,YAA4D;EAI/E,QAFmBC,MADML,cAAAA,EAAAA,CACKO,cAAcN,iCAErCK,CAAAA,CAAWE,OAAO,EAAEC,aAAaL,WAAW,CAAA;CACvD;AACJ"}
1
+ {"version":3,"file":"role.mjs","names":["IdentityProviderRoleMappingEntity","IdentityProviderRoleMappingRepository","dataSource","findByProviderId","providerId","repository","getRepository","findBy","provider_id"],"sources":["../../../../../../../src/app/modules/identity/repositories/provider/mapper/role.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { IdentityProviderRoleMapping } from '@authup/core-kit';\nimport type { DataSource } from 'typeorm';\nimport type { IIdentityProviderRoleMappingFinder } from '../../../../../../core/index.ts';\nimport { IdentityProviderRoleMappingEntity } from '../../../../../../adapters/database/domains/index.ts';\n\nexport class IdentityProviderRoleMappingRepository implements IIdentityProviderRoleMappingFinder {\n protected dataSource : DataSource;\n\n constructor(dataSource: DataSource) {\n this.dataSource = dataSource;\n }\n\n async findByProviderId(providerId: string): Promise<IdentityProviderRoleMapping[]> {\n const repository = this.dataSource.getRepository(IdentityProviderRoleMappingEntity);\n\n return repository.findBy({ provider_id: providerId });\n }\n}\n"],"mappings":";;;;;;AAYA,IAAaC,wCAAb,MAAaA;CACCC;CAEV,YAAYA,YAAwB;EAChC,KAAKA,aAAaA;CACtB;CAEA,MAAMC,iBAAiBC,YAA4D;EAG/E,OAFmB,KAAKF,WAAWI,cAAcN,iCAE1CK,CAAAA,CAAWE,OAAO,EAAEC,aAAaJ,WAAW,CAAA;CACvD;AACJ"}
@@ -6,6 +6,7 @@ import { CacheInjectionKey } from "./cache/constants.mjs";
6
6
  import { ModuleName } from "./constants.mjs";
7
7
  import { ConfigEnvironmentVariableName, ConfigInjectionKey } from "./config/constants.mjs";
8
8
  import { ConfigModule } from "./config/module.mjs";
9
+ import { getAppOrigins } from "./config/origins.mjs";
9
10
  import "./config/index.mjs";
10
11
  import { CacheModule } from "./cache/module.mjs";
11
12
  import "./cache/index.mjs";
@@ -59,7 +60,7 @@ import { IdentityModule } from "./identity/module.mjs";
59
60
  import "./identity/index.mjs";
60
61
  import { OAuth2Module } from "./oauth2/module.mjs";
61
62
  import "./oauth2/index.mjs";
62
- import { MailInjectionKey } from "./mail/constants.mjs";
63
+ import { MailInjectionKey, MailTemplateRendererInjectionKey } from "./mail/constants.mjs";
63
64
  import { MailModule } from "./mail/module.mjs";
64
65
  import "./mail/index.mjs";
65
66
  import { HTTPModule } from "./http/module.mjs";
@@ -71,4 +72,4 @@ import { ProvisionerModule } from "./provisioning/module.mjs";
71
72
  import "./provisioning/index.mjs";
72
73
  import { RuntimeModule } from "./runtime/module.mjs";
73
74
  import "./runtime/index.mjs";
74
- export { AuthenticationInjectionKey, AuthenticationModule, CacheInjectionKey, CacheModule, ClientIdentityRepository, ClientPermissionRepositoryAdapter, ClientRepositoryAdapter, ClientRoleRepositoryAdapter, ClientScopeRepositoryAdapter, ComponentsModule, CompositeProvisioningSource, ConfigEnvironmentVariableName, ConfigInjectionKey, ConfigModule, DatabaseInjectionKey, DatabaseModule, DefaultProvisioningSource, FileProvisioningSource, HTTPInjectionKey, HTTPModule, IdentityInjectionKey, IdentityModule, IdentityProviderAccountRepository, IdentityProviderAttributeMappingRepository, IdentityProviderPermissionMappingRepository, IdentityProviderRepositoryAdapter, IdentityProviderRoleMappingRepository, IdentityProviderRoleMappingRepositoryAdapter, LDAPInjectionKey, LdapModule, LoggerInjectionKey, LoggerModule, MailInjectionKey, MailModule, ModuleName, OAuth2InjectionToken, OAuth2Module, PermissionDatabaseProvider, PermissionPolicyRepositoryAdapter, PermissionRepositoryAdapter, PolicyRepositoryAdapter, ProvisionerModule, RealmRepositoryAdapter, RobotIdentityRepository, RobotPermissionRepositoryAdapter, RobotRepositoryAdapter, RobotRoleRepositoryAdapter, RoleAttributeRepositoryAdapter, RolePermissionRepositoryAdapter, RoleRepositoryAdapter, RuntimeModule, ScopeRepositoryAdapter, SessionRepository, UserAttributeRepositoryAdapter, UserIdentityRepository, UserPermissionRepositoryAdapter, UserRepositoryAdapter, UserRoleRepositoryAdapter };
75
+ export { AuthenticationInjectionKey, AuthenticationModule, CacheInjectionKey, CacheModule, ClientIdentityRepository, ClientPermissionRepositoryAdapter, ClientRepositoryAdapter, ClientRoleRepositoryAdapter, ClientScopeRepositoryAdapter, ComponentsModule, CompositeProvisioningSource, ConfigEnvironmentVariableName, ConfigInjectionKey, ConfigModule, DatabaseInjectionKey, DatabaseModule, DefaultProvisioningSource, FileProvisioningSource, HTTPInjectionKey, HTTPModule, IdentityInjectionKey, IdentityModule, IdentityProviderAccountRepository, IdentityProviderAttributeMappingRepository, IdentityProviderPermissionMappingRepository, IdentityProviderRepositoryAdapter, IdentityProviderRoleMappingRepository, IdentityProviderRoleMappingRepositoryAdapter, LDAPInjectionKey, LdapModule, LoggerInjectionKey, LoggerModule, MailInjectionKey, MailModule, MailTemplateRendererInjectionKey, ModuleName, OAuth2InjectionToken, OAuth2Module, PermissionDatabaseProvider, PermissionPolicyRepositoryAdapter, PermissionRepositoryAdapter, PolicyRepositoryAdapter, ProvisionerModule, RealmRepositoryAdapter, RobotIdentityRepository, RobotPermissionRepositoryAdapter, RobotRepositoryAdapter, RobotRoleRepositoryAdapter, RoleAttributeRepositoryAdapter, RolePermissionRepositoryAdapter, RoleRepositoryAdapter, RuntimeModule, ScopeRepositoryAdapter, SessionRepository, UserAttributeRepositoryAdapter, UserIdentityRepository, UserPermissionRepositoryAdapter, UserRepositoryAdapter, UserRoleRepositoryAdapter, getAppOrigins };
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../src/app/modules/logger/module.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAIrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAExC,qBAAa,YAAa,YAAW,OAAO;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;;IAO1B,KAAK,CAAC,SAAS,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAuBpD"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../src/app/modules/logger/module.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAIrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAExC,qBAAa,YAAa,YAAW,OAAO;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;;IAO1B,KAAK,CAAC,SAAS,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAiBpD"}
@@ -5,7 +5,7 @@ import { ModuleName } from "../constants.mjs";
5
5
  import { ConfigInjectionKey } from "../config/constants.mjs";
6
6
  import "../config/index.mjs";
7
7
  import { LoggerInjectionKey } from "./constants.mjs";
8
- import { createLogger, createNoopLogger, setLoggerFactory } from "@authup/server-kit";
8
+ import { createLogger, createNoopLogger } from "@authup/server-kit";
9
9
  //#region src/app/modules/logger/module.ts
10
10
  var LoggerModule = class {
11
11
  name;
@@ -24,10 +24,6 @@ var LoggerModule = class {
24
24
  env: result.data.env,
25
25
  directory: result.data.writableDirectoryPath
26
26
  }) });
27
- setLoggerFactory(() => createLogger({
28
- env: result.data.env,
29
- directory: result.data.writableDirectoryPath
30
- }));
31
27
  }
32
28
  };
33
29
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"module.mjs","names":["createLogger","createNoopLogger","setLoggerFactory","ModuleName","ConfigInjectionKey","LoggerInjectionKey","LoggerModule","name","dependencies","LOGGER","CONFIG","setup","container","result","tryResolve","success","data","logger","register","useFactory","env","directory","writableDirectoryPath"],"sources":["../../../../src/app/modules/logger/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 { createLogger, createNoopLogger, setLoggerFactory } from '@authup/server-kit';\nimport type { IModule } from 'orkos';\nimport { ModuleName } from '../constants.ts';\nimport { ConfigInjectionKey } from '../config/index.ts';\nimport { LoggerInjectionKey } from './constants.ts';\nimport type { IContainer } from 'eldin';\n\nexport class LoggerModule implements IModule {\n readonly name: string;\n\n readonly dependencies: string[];\n\n constructor() {\n this.name = ModuleName.LOGGER;\n this.dependencies = [ModuleName.CONFIG];\n }\n\n async setup(container: IContainer): Promise<void> {\n const result = container.tryResolve(ConfigInjectionKey);\n if (!result.success || !result.data.logger) {\n container.register(LoggerInjectionKey, { useFactory: createNoopLogger });\n\n return;\n }\n\n container.register(LoggerInjectionKey, {\n useFactory: () => createLogger({\n env: result.data.env,\n directory: result.data.writableDirectoryPath,\n }),\n });\n\n // todo: remove this\n setLoggerFactory(() => createLogger({\n env: result.data.env,\n directory: result.data.writableDirectoryPath,\n }));\n }\n\n // ----------------------------------------------------\n}\n"],"mappings":";;;;;;;;;AAcA,IAAaM,eAAb,MAAaA;CACAC;CAEAC;CAET,cAAc;EACV,KAAKD,OAAOJ,WAAWM;EACvB,KAAKD,eAAe,CAACL,WAAWO,MAAAA;CACpC;CAEA,MAAMC,MAAMC,WAAsC;EAC9C,MAAMC,SAASD,UAAUE,WAAWV,kBAAAA;EACpC,IAAI,CAACS,OAAOE,WAAW,CAACF,OAAOG,KAAKC,QAAQ;GACxCL,UAAUM,SAASb,oBAAoB,EAAEc,YAAYlB,iBAAiB,CAAA;GAEtE;EACJ;EAEAW,UAAUM,SAASb,oBAAoB,EACnCc,kBAAkBnB,aAAa;GAC3BoB,KAAKP,OAAOG,KAAKI;GACjBC,WAAWR,OAAOG,KAAKM;EAC3B,CAAA,EACJ,CAAA;EAGApB,uBAAuBF,aAAa;GAChCoB,KAAKP,OAAOG,KAAKI;GACjBC,WAAWR,OAAOG,KAAKM;EAC3B,CAAA,CAAA;CACJ;AAGJ"}
1
+ {"version":3,"file":"module.mjs","names":["createLogger","createNoopLogger","ModuleName","ConfigInjectionKey","LoggerInjectionKey","LoggerModule","name","dependencies","LOGGER","CONFIG","setup","container","result","tryResolve","success","data","logger","register","useFactory","env","directory","writableDirectoryPath"],"sources":["../../../../src/app/modules/logger/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 { createLogger, createNoopLogger } from '@authup/server-kit';\nimport type { IModule } from 'orkos';\nimport { ModuleName } from '../constants.ts';\nimport { ConfigInjectionKey } from '../config/index.ts';\nimport { LoggerInjectionKey } from './constants.ts';\nimport type { IContainer } from 'eldin';\n\nexport class LoggerModule implements IModule {\n readonly name: string;\n\n readonly dependencies: string[];\n\n constructor() {\n this.name = ModuleName.LOGGER;\n this.dependencies = [ModuleName.CONFIG];\n }\n\n async setup(container: IContainer): Promise<void> {\n const result = container.tryResolve(ConfigInjectionKey);\n if (!result.success || !result.data.logger) {\n container.register(LoggerInjectionKey, { useFactory: createNoopLogger });\n\n return;\n }\n\n container.register(LoggerInjectionKey, {\n useFactory: () => createLogger({\n env: result.data.env,\n directory: result.data.writableDirectoryPath,\n }),\n });\n }\n\n // ----------------------------------------------------\n}\n"],"mappings":";;;;;;;;;AAcA,IAAaK,eAAb,MAAaA;CACAC;CAEAC;CAET,cAAc;EACV,KAAKD,OAAOJ,WAAWM;EACvB,KAAKD,eAAe,CAACL,WAAWO,MAAAA;CACpC;CAEA,MAAMC,MAAMC,WAAsC;EAC9C,MAAMC,SAASD,UAAUE,WAAWV,kBAAAA;EACpC,IAAI,CAACS,OAAOE,WAAW,CAACF,OAAOG,KAAKC,QAAQ;GACxCL,UAAUM,SAASb,oBAAoB,EAAEc,YAAYjB,iBAAiB,CAAA;GAEtE;EACJ;EAEAU,UAAUM,SAASb,oBAAoB,EACnCc,kBAAkBlB,aAAa;GAC3BmB,KAAKP,OAAOG,KAAKI;GACjBC,WAAWR,OAAOG,KAAKM;EAC3B,CAAA,EACJ,CAAA;CACJ;AAGJ"}
@@ -1,4 +1,5 @@
1
1
  import { TypedToken } from 'eldin';
2
- import type { IMailClient } from '../../../core/index.ts';
2
+ import type { IMailClient, IMailTemplateRenderer } from '../../../core/index.ts';
3
3
  export declare const MailInjectionKey: TypedToken<IMailClient>;
4
+ export declare const MailTemplateRendererInjectionKey: TypedToken<IMailTemplateRenderer>;
4
5
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/app/modules/mail/constants.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,eAAO,MAAM,gBAAgB,yBAAsC,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/app/modules/mail/constants.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,KAAK,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAEjF,eAAO,MAAM,gBAAgB,yBAAsC,CAAC;AAEpE,eAAO,MAAM,gCAAgC,mCAAgE,CAAC"}
@@ -4,7 +4,8 @@ import.meta.url;
4
4
  import { TypedToken } from "eldin";
5
5
  //#region src/app/modules/mail/constants.ts
6
6
  const MailInjectionKey = new TypedToken("Mail");
7
+ const MailTemplateRendererInjectionKey = new TypedToken("MailTemplateRenderer");
7
8
  //#endregion
8
- export { MailInjectionKey };
9
+ export { MailInjectionKey, MailTemplateRendererInjectionKey };
9
10
 
10
11
  //# sourceMappingURL=constants.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.mjs","names":["TypedToken","MailInjectionKey"],"sources":["../../../../src/app/modules/mail/constants.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 { TypedToken } from 'eldin';\nimport type { IMailClient } from '../../../core/index.ts';\n\nexport const MailInjectionKey = new TypedToken<IMailClient>('Mail');\n"],"mappings":";;;;;AAUA,MAAaC,mBAAmB,IAAID,WAAwB,MAAA"}
1
+ {"version":3,"file":"constants.mjs","names":["TypedToken","MailInjectionKey","MailTemplateRendererInjectionKey"],"sources":["../../../../src/app/modules/mail/constants.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\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 { TypedToken } from 'eldin';\nimport type { IMailClient, IMailTemplateRenderer } from '../../../core/index.ts';\n\nexport const MailInjectionKey = new TypedToken<IMailClient>('Mail');\n\nexport const MailTemplateRendererInjectionKey = new TypedToken<IMailTemplateRenderer>('MailTemplateRenderer');\n"],"mappings":";;;;;AAUA,MAAaC,mBAAmB,IAAID,WAAwB,MAAA;AAE5D,MAAaE,mCAAmC,IAAIF,WAAkC,sBAAA"}
@@ -1,6 +1,6 @@
1
1
  import "node:path";
2
2
  import "node:url";
3
3
  import.meta.url;
4
- import { MailInjectionKey } from "./constants.mjs";
4
+ import { MailInjectionKey, MailTemplateRendererInjectionKey } from "./constants.mjs";
5
5
  import { MailModule } from "./module.mjs";
6
- export { MailInjectionKey, MailModule };
6
+ export { MailInjectionKey, MailModule, MailTemplateRendererInjectionKey };
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../src/app/modules/mail/module.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAKrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAExC,qBAAa,UAAW,YAAW,OAAO;IACtC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;;IAO1B,KAAK,CAAC,SAAS,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAUpD"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../src/app/modules/mail/module.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAMrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAExC,qBAAa,UAAW,YAAW,OAAO;IACtC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;;IAO1B,KAAK,CAAC,SAAS,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAYpD"}
@@ -1,10 +1,12 @@
1
1
  import "node:path";
2
2
  import "node:url";
3
3
  import.meta.url;
4
+ import { MailTemplateRenderer } from "../../../core/mail/renderer.mjs";
5
+ import "../../../core/index.mjs";
4
6
  import { ModuleName } from "../constants.mjs";
5
7
  import { ConfigInjectionKey } from "../config/constants.mjs";
6
8
  import "../config/index.mjs";
7
- import { MailInjectionKey } from "./constants.mjs";
9
+ import { MailInjectionKey, MailTemplateRendererInjectionKey } from "./constants.mjs";
8
10
  import { SMTPMailClientAdapter } from "./adapter/smtp/smtp.mjs";
9
11
  import { VoidMailClientAdapter } from "./adapter/void.mjs";
10
12
  import "./adapter/index.mjs";
@@ -17,6 +19,7 @@ var MailModule = class {
17
19
  this.dependencies = [ModuleName.CONFIG];
18
20
  }
19
21
  async setup(container) {
22
+ container.register(MailTemplateRendererInjectionKey, { useFactory: () => new MailTemplateRenderer() });
20
23
  const result = container.tryResolve(ConfigInjectionKey);
21
24
  if (!result.success || !result.data.smtp) {
22
25
  container.register(MailInjectionKey, { useFactory: () => new VoidMailClientAdapter() });
@@ -1 +1 @@
1
- {"version":3,"file":"module.mjs","names":["ModuleName","SMTPMailClientAdapter","VoidMailClientAdapter","MailInjectionKey","ConfigInjectionKey","MailModule","name","dependencies","MAIL","CONFIG","setup","container","result","tryResolve","success","data","smtp","register","useFactory"],"sources":["../../../../src/app/modules/mail/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { IModule } from 'orkos';\nimport { ModuleName } from '../constants.ts';\nimport { SMTPMailClientAdapter, VoidMailClientAdapter } from './adapter/index.ts';\nimport { MailInjectionKey } from './constants.ts';\nimport { ConfigInjectionKey } from '../config/index.ts';\nimport type { IContainer } from 'eldin';\n\nexport class MailModule implements IModule {\n readonly name: string;\n\n readonly dependencies: string[];\n\n constructor() {\n this.name = ModuleName.MAIL;\n this.dependencies = [ModuleName.CONFIG];\n }\n\n async setup(container: IContainer): Promise<void> {\n const result = container.tryResolve(ConfigInjectionKey);\n if (!result.success || !result.data.smtp) {\n container.register(MailInjectionKey, { useFactory: () => new VoidMailClientAdapter() });\n\n return;\n }\n\n container.register(MailInjectionKey, { useFactory: () => new SMTPMailClientAdapter(result.data.smtp) });\n }\n}\n"],"mappings":";;;;;;;;;;;AAcA,IAAaK,aAAb,MAAaA;CACAC;CAEAC;CAET,cAAc;EACV,KAAKD,OAAON,WAAWQ;EACvB,KAAKD,eAAe,CAACP,WAAWS,MAAAA;CACpC;CAEA,MAAMC,MAAMC,WAAsC;EAC9C,MAAMC,SAASD,UAAUE,WAAWT,kBAAAA;EACpC,IAAI,CAACQ,OAAOE,WAAW,CAACF,OAAOG,KAAKC,MAAM;GACtCL,UAAUM,SAASd,kBAAkB,EAAEe,kBAAkB,IAAIhB,sBAAAA,EAAwB,CAAA;GAErF;EACJ;EAEAS,UAAUM,SAASd,kBAAkB,EAAEe,kBAAkB,IAAIjB,sBAAsBW,OAAOG,KAAKC,IAAI,EAAE,CAAA;CACzG;AACJ"}
1
+ {"version":3,"file":"module.mjs","names":["ModuleName","MailTemplateRenderer","SMTPMailClientAdapter","VoidMailClientAdapter","MailInjectionKey","MailTemplateRendererInjectionKey","ConfigInjectionKey","MailModule","name","dependencies","MAIL","CONFIG","setup","container","register","useFactory","result","tryResolve","success","data","smtp"],"sources":["../../../../src/app/modules/mail/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { IModule } from 'orkos';\nimport { ModuleName } from '../constants.ts';\nimport { MailTemplateRenderer } from '../../../core/index.ts';\nimport { SMTPMailClientAdapter, VoidMailClientAdapter } from './adapter/index.ts';\nimport { MailInjectionKey, MailTemplateRendererInjectionKey } from './constants.ts';\nimport { ConfigInjectionKey } from '../config/index.ts';\nimport type { IContainer } from 'eldin';\n\nexport class MailModule implements IModule {\n readonly name: string;\n\n readonly dependencies: string[];\n\n constructor() {\n this.name = ModuleName.MAIL;\n this.dependencies = [ModuleName.CONFIG];\n }\n\n async setup(container: IContainer): Promise<void> {\n container.register(MailTemplateRendererInjectionKey, { useFactory: () => new MailTemplateRenderer() });\n\n const result = container.tryResolve(ConfigInjectionKey);\n if (!result.success || !result.data.smtp) {\n container.register(MailInjectionKey, { useFactory: () => new VoidMailClientAdapter() });\n\n return;\n }\n\n container.register(MailInjectionKey, { useFactory: () => new SMTPMailClientAdapter(result.data.smtp) });\n }\n}\n"],"mappings":";;;;;;;;;;;;;AAeA,IAAaO,aAAb,MAAaA;CACAC;CAEAC;CAET,cAAc;EACV,KAAKD,OAAOR,WAAWU;EACvB,KAAKD,eAAe,CAACT,WAAWW,MAAAA;CACpC;CAEA,MAAMC,MAAMC,WAAsC;EAC9CA,UAAUC,SAAST,kCAAkC,EAAEU,kBAAkB,IAAId,qBAAAA,EAAuB,CAAA;EAEpG,MAAMe,SAASH,UAAUI,WAAWX,kBAAAA;EACpC,IAAI,CAACU,OAAOE,WAAW,CAACF,OAAOG,KAAKC,MAAM;GACtCP,UAAUC,SAASV,kBAAkB,EAAEW,kBAAkB,IAAIZ,sBAAAA,EAAwB,CAAA;GAErF;EACJ;EAEAU,UAAUC,SAASV,kBAAkB,EAAEW,kBAAkB,IAAIb,sBAAsBc,OAAOG,KAAKC,IAAI,EAAE,CAAA;CACzG;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../src/app/modules/oauth2/module.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AA4BrC,qBAAa,YAAa,YAAW,OAAO;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;;IAO1B,KAAK,CAAC,SAAS,EAAE,UAAU,GAAI,OAAO,CAAC,IAAI,CAAC;CAwKrD"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../src/app/modules/oauth2/module.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AA6BrC,qBAAa,YAAa,YAAW,OAAO;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;;IAO1B,KAAK,CAAC,SAAS,EAAE,UAAU,GAAI,OAAO,CAAC,IAAI,CAAC;CAwKrD"}
@@ -20,6 +20,8 @@ import { ModuleName } from "../constants.mjs";
20
20
  import { ConfigInjectionKey } from "../config/constants.mjs";
21
21
  import "../config/index.mjs";
22
22
  import "../cache/index.mjs";
23
+ import { DatabaseInjectionKey } from "../database/constants.mjs";
24
+ import "../database/index.mjs";
23
25
  import { OAuth2InjectionToken } from "./constants.mjs";
24
26
  import { OAuth2AuthorizationCodeRepository } from "./repositories/authorize/code/repository.mjs";
25
27
  import { OAuth2AuthorizationStateRepository } from "./repositories/authorize/state/repository.mjs";
@@ -60,7 +62,7 @@ var OAuth2Module = class {
60
62
  container.register(OAuth2InjectionToken.TokenRepository, { useFactory: (c) => {
61
63
  return new OAuth2TokenRepository(c.resolve(CacheInjectionKey));
62
64
  } });
63
- container.register(OAuth2InjectionToken.KeyRepository, { useFactory: () => new OAuth2KeyRepository() });
65
+ container.register(OAuth2InjectionToken.KeyRepository, { useFactory: (c) => new OAuth2KeyRepository(c.resolve(DatabaseInjectionKey.DataSource)) });
64
66
  container.register(OAuth2InjectionToken.TokenSigner, { useFactory: (c) => {
65
67
  return new OAuth2TokenSigner(c.resolve(OAuth2InjectionToken.KeyRepository));
66
68
  } });
@@ -1 +1 @@
1
- {"version":3,"file":"module.mjs","names":["CacheInjectionKey","ModuleName","OAuth2AuthorizationCodeRepository","OAuth2AuthorizationStateRepository","OAuth2ClientRepository","OAuth2KeyRepository","OAuth2ScopeRepository","OAuth2TokenRepository","OAuth2AccessTokenIssuer","OAuth2AuthorizationCodeIssuer","OAuth2AuthorizationCodeRequestVerifier","OAuth2AuthorizationCodeVerifier","OAuth2AuthorizationStateManager","OAuth2OpenIDTokenIssuer","OAuth2RefreshTokenIssuer","OAuth2TokenRevoker","OAuth2TokenSigner","OAuth2TokenVerifier","OAuth2InjectionToken","IdentityInjectionKey","ClientEntity","ClientScopeEntity","ConfigInjectionKey","OAuth2Module","name","dependencies","OAUTH2","DATABASE","CACHE","CONFIG","IDENTITY","setup","container","config","resolve","register","ClientRepository","useFactory","c","repository","ScopeRepository","AuthorizationCodeRepository","cache","AuthorizationStateRepository","TokenRepository","KeyRepository","TokenSigner","keyRepository","AuthorizationCodeIssuer","codeRepository","maxAge","tokenAccessMaxAge","AuthorizationCodeVerifier","AuthorizationCodeRequestVerifier","clientRepository","clientScopeRepository","scopeRepository","AuthorizationStateManager","stateRepository","TokenRevoker","tokenRepository","TokenVerifier","AccessTokenIssuer","tokenSigner","identityRoleProvider","RoleProvider","issuer","publicUrl","RefreshTokenIssuer","tokenRefreshMaxAge","OpenIDTokenIssuer","signer","identityResolver","Resolver","options"],"sources":["../../../../src/app/modules/oauth2/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Repository } from 'typeorm';\nimport { CacheInjectionKey } from '../cache/index.ts';\nimport type { IContainer } from 'eldin';\nimport type { IModule } from 'orkos';\nimport { ModuleName } from '../constants.ts';\n\nimport {\n OAuth2AuthorizationCodeRepository,\n OAuth2AuthorizationStateRepository,\n OAuth2ClientRepository,\n OAuth2KeyRepository,\n OAuth2ScopeRepository,\n OAuth2TokenRepository,\n} from './repositories/index.ts';\nimport {\n OAuth2AccessTokenIssuer,\n OAuth2AuthorizationCodeIssuer,\n OAuth2AuthorizationCodeRequestVerifier,\n OAuth2AuthorizationCodeVerifier,\n OAuth2AuthorizationStateManager,\n OAuth2OpenIDTokenIssuer,\n OAuth2RefreshTokenIssuer,\n OAuth2TokenRevoker,\n OAuth2TokenSigner,\n OAuth2TokenVerifier,\n} from '../../../core/index.ts';\nimport { OAuth2InjectionToken } from './constants.ts';\nimport { IdentityInjectionKey } from '../identity/index.ts';\nimport { ClientEntity, ClientScopeEntity } from '../../../adapters/database/domains/index.ts';\nimport { ConfigInjectionKey } from '../config/index.ts';\n\nexport class OAuth2Module implements IModule {\n readonly name: string;\n\n readonly dependencies: string[];\n\n constructor() {\n this.name = ModuleName.OAUTH2;\n this.dependencies = [ModuleName.DATABASE, ModuleName.CACHE, ModuleName.CONFIG, ModuleName.IDENTITY];\n }\n\n async setup(container: IContainer) : Promise<void> {\n const config = container.resolve(ConfigInjectionKey);\n\n container.register(OAuth2InjectionToken.ClientRepository, {\n useFactory: (c) => {\n const repository = c.resolve<Repository<ClientEntity>>(ClientEntity);\n return new OAuth2ClientRepository(repository);\n },\n });\n\n container.register(OAuth2InjectionToken.ScopeRepository, {\n useFactory: (c) => {\n const repository = c.resolve<Repository<ClientScopeEntity>>(ClientScopeEntity);\n return new OAuth2ScopeRepository(repository);\n },\n });\n\n container.register(OAuth2InjectionToken.AuthorizationCodeRepository, {\n useFactory: (c) => {\n const cache = c.resolve(CacheInjectionKey);\n return new OAuth2AuthorizationCodeRepository(cache);\n },\n });\n\n container.register(OAuth2InjectionToken.AuthorizationStateRepository, {\n useFactory: (c) => {\n const cache = c.resolve(CacheInjectionKey);\n return new OAuth2AuthorizationStateRepository(cache);\n },\n });\n\n container.register(OAuth2InjectionToken.TokenRepository, {\n useFactory: (c) => {\n const cache = c.resolve(CacheInjectionKey);\n return new OAuth2TokenRepository(cache);\n },\n });\n\n container.register(OAuth2InjectionToken.KeyRepository, {\n // todo: cache use here\n useFactory: () => new OAuth2KeyRepository(),\n });\n\n container.register(OAuth2InjectionToken.TokenSigner, {\n useFactory: (c) => {\n const keyRepository = c.resolve(OAuth2InjectionToken.KeyRepository);\n return new OAuth2TokenSigner(keyRepository);\n },\n });\n\n // authorization code issuer\n container.register(OAuth2InjectionToken.AuthorizationCodeIssuer, {\n useFactory: (c) => {\n const codeRepository = c.resolve(OAuth2InjectionToken.AuthorizationCodeRepository);\n\n return new OAuth2AuthorizationCodeIssuer(\n codeRepository,\n {\n // todo: own constant here\n maxAge: config.tokenAccessMaxAge,\n },\n );\n },\n });\n container.register(OAuth2InjectionToken.AuthorizationCodeVerifier, {\n useFactory: (c) => {\n const codeRepository = c.resolve(OAuth2InjectionToken.AuthorizationCodeRepository);\n\n return new OAuth2AuthorizationCodeVerifier(codeRepository);\n },\n });\n\n // authorization code request verifier\n container.register(OAuth2InjectionToken.AuthorizationCodeRequestVerifier, {\n useFactory: (c) => {\n const clientRepository = c.resolve(OAuth2InjectionToken.ClientRepository);\n const clientScopeRepository = c.resolve(OAuth2InjectionToken.ScopeRepository);\n\n return new OAuth2AuthorizationCodeRequestVerifier({\n clientRepository,\n scopeRepository: clientScopeRepository,\n });\n },\n });\n\n container.register(OAuth2InjectionToken.AuthorizationStateManager, {\n useFactory: (c) => {\n const stateRepository = c.resolve(OAuth2InjectionToken.AuthorizationStateRepository);\n\n return new OAuth2AuthorizationStateManager(stateRepository);\n },\n });\n\n // token revoker\n container.register(OAuth2InjectionToken.TokenRevoker, {\n useFactory: (c) => {\n const tokenRepository = c.resolve(OAuth2InjectionToken.TokenRepository);\n return new OAuth2TokenRevoker(tokenRepository);\n },\n });\n\n // token verifier\n container.register(OAuth2InjectionToken.TokenVerifier, {\n useFactory: (c) => {\n const keyRepository = c.resolve(OAuth2InjectionToken.KeyRepository);\n const tokenRepository = c.resolve(OAuth2InjectionToken.TokenRepository);\n\n return new OAuth2TokenVerifier(keyRepository, tokenRepository);\n },\n });\n\n // access token issuer\n container.register(OAuth2InjectionToken.AccessTokenIssuer, {\n useFactory: (c) => {\n const tokenRepository = c.resolve(OAuth2InjectionToken.TokenRepository);\n const tokenSigner = c.resolve(OAuth2InjectionToken.TokenSigner);\n const identityRoleProvider = c.resolve(IdentityInjectionKey.RoleProvider);\n return new OAuth2AccessTokenIssuer(\n tokenRepository,\n tokenSigner,\n {\n maxAge: config.tokenAccessMaxAge,\n issuer: config.publicUrl,\n },\n identityRoleProvider,\n );\n },\n });\n\n // refresh token issuer\n container.register(OAuth2InjectionToken.RefreshTokenIssuer, {\n useFactory: (c) => {\n const tokenRepository = c.resolve(OAuth2InjectionToken.TokenRepository);\n const tokenSigner = c.resolve(OAuth2InjectionToken.TokenSigner);\n\n return new OAuth2RefreshTokenIssuer(\n tokenRepository,\n tokenSigner,\n {\n maxAge: config.tokenRefreshMaxAge,\n issuer: config.publicUrl,\n },\n );\n },\n });\n\n // open-id token issuer\n container.register(OAuth2InjectionToken.OpenIDTokenIssuer, {\n useFactory: (c) => {\n const repository = c.resolve(OAuth2InjectionToken.TokenRepository);\n const signer = c.resolve(OAuth2InjectionToken.TokenSigner);\n const identityResolver = c.resolve(IdentityInjectionKey.Resolver);\n\n return new OAuth2OpenIDTokenIssuer({\n repository,\n signer,\n\n identityResolver,\n\n options: {\n // todo: own constant here\n maxAge: config.tokenAccessMaxAge,\n issuer: config.publicUrl,\n },\n });\n },\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCA,IAAauB,eAAb,MAAaA;CACAC;CAEAC;CAET,cAAc;EACV,KAAKD,OAAOvB,WAAWyB;EACvB,KAAKD,eAAe;GAACxB,WAAW0B;GAAU1B,WAAW2B;GAAO3B,WAAW4B;GAAQ5B,WAAW6B;;CAC9F;CAEA,MAAMC,MAAMC,WAAuC;EAC/C,MAAMC,SAASD,UAAUE,QAAQZ,kBAAAA;EAEjCU,UAAUG,SAASjB,qBAAqBkB,kBAAkB,EACtDC,aAAaC,MAAAA;GAET,OAAO,IAAIlC,uBADQkC,EAAEJ,QAAkCd,YACrBmB,CAAAA;EACtC,EACJ,CAAA;EAEAP,UAAUG,SAASjB,qBAAqBsB,iBAAiB,EACrDH,aAAaC,MAAAA;GAET,OAAO,IAAIhC,sBADQgC,EAAEJ,QAAuCb,iBAC3BkB,CAAAA;EACrC,EACJ,CAAA;EAEAP,UAAUG,SAASjB,qBAAqBuB,6BAA6B,EACjEJ,aAAaC,MAAAA;GAET,OAAO,IAAIpC,kCADGoC,EAAEJ,QAAQlC,iBACqB0C,CAAAA;EACjD,EACJ,CAAA;EAEAV,UAAUG,SAASjB,qBAAqByB,8BAA8B,EAClEN,aAAaC,MAAAA;GAET,OAAO,IAAInC,mCADGmC,EAAEJ,QAAQlC,iBACsB0C,CAAAA;EAClD,EACJ,CAAA;EAEAV,UAAUG,SAASjB,qBAAqB0B,iBAAiB,EACrDP,aAAaC,MAAAA;GAET,OAAO,IAAI/B,sBADG+B,EAAEJ,QAAQlC,iBACS0C,CAAAA;EACrC,EACJ,CAAA;EAEAV,UAAUG,SAASjB,qBAAqB2B,eAAe,EAEnDR,kBAAkB,IAAIhC,oBAAAA,EAC1B,CAAA;EAEA2B,UAAUG,SAASjB,qBAAqB4B,aAAa,EACjDT,aAAaC,MAAAA;GAET,OAAO,IAAItB,kBADWsB,EAAEJ,QAAQhB,qBAAqB2B,aACxBE,CAAAA;EACjC,EACJ,CAAA;EAGAf,UAAUG,SAASjB,qBAAqB8B,yBAAyB,EAC7DX,aAAaC,MAAAA;GAGT,OAAO,IAAI7B,8BAFY6B,EAAEJ,QAAQhB,qBAAqBuB,2BAGlDQ,GACA,EAEIC,QAAQjB,OAAOkB,kBACnB,CAAA;EAER,EACJ,CAAA;EACAnB,UAAUG,SAASjB,qBAAqBkC,2BAA2B,EAC/Df,aAAaC,MAAAA;GAGT,OAAO,IAAI3B,gCAFY2B,EAAEJ,QAAQhB,qBAAqBuB,2BAEXQ,CAAAA;EAC/C,EACJ,CAAA;EAGAjB,UAAUG,SAASjB,qBAAqBmC,kCAAkC,EACtEhB,aAAaC,MAAAA;GAIT,OAAO,IAAI5B,uCAAuC;IAC9C4C,kBAJqBhB,EAAEJ,QAAQhB,qBAAqBkB,gBAIpDkB;IACAE,iBAJ0BlB,EAAEJ,QAAQhB,qBAAqBsB,eAIxCe;GACrB,CAAA;EACJ,EACJ,CAAA;EAEAvB,UAAUG,SAASjB,qBAAqBuC,2BAA2B,EAC/DpB,aAAaC,MAAAA;GAGT,OAAO,IAAI1B,gCAFa0B,EAAEJ,QAAQhB,qBAAqByB,4BAEZe,CAAAA;EAC/C,EACJ,CAAA;EAGA1B,UAAUG,SAASjB,qBAAqByC,cAAc,EAClDtB,aAAaC,MAAAA;GAET,OAAO,IAAIvB,mBADauB,EAAEJ,QAAQhB,qBAAqB0B,eACzBgB,CAAAA;EAClC,EACJ,CAAA;EAGA5B,UAAUG,SAASjB,qBAAqB2C,eAAe,EACnDxB,aAAaC,MAAAA;GAIT,OAAO,IAAIrB,oBAHWqB,EAAEJ,QAAQhB,qBAAqB2B,aAGtBE,GAFPT,EAAEJ,QAAQhB,qBAAqB0B,eAETgB,CAAAA;EAClD,EACJ,CAAA;EAGA5B,UAAUG,SAASjB,qBAAqB4C,mBAAmB,EACvDzB,aAAaC,MAAAA;GACT,MAAMsB,kBAAkBtB,EAAEJ,QAAQhB,qBAAqB0B,eAAe;GACtE,MAAMmB,cAAczB,EAAEJ,QAAQhB,qBAAqB4B,WAAW;GAC9D,MAAMkB,uBAAuB1B,EAAEJ,QAAQf,qBAAqB8C,YAAY;GACxE,OAAO,IAAIzD,wBACPoD,iBACAG,aACA;IACIb,QAAQjB,OAAOkB;IACfe,QAAQjC,OAAOkC;GACnB,GACAH,oBAAAA;EAER,EACJ,CAAA;EAGAhC,UAAUG,SAASjB,qBAAqBkD,oBAAoB,EACxD/B,aAAaC,MAAAA;GAIT,OAAO,IAAIxB,yBAHawB,EAAEJ,QAAQhB,qBAAqB0B,eAInDgB,GAHgBtB,EAAEJ,QAAQhB,qBAAqB4B,WAI/CiB,GACA;IACIb,QAAQjB,OAAOoC;IACfH,QAAQjC,OAAOkC;GACnB,CAAA;EAER,EACJ,CAAA;EAGAnC,UAAUG,SAASjB,qBAAqBoD,mBAAmB,EACvDjC,aAAaC,MAAAA;GAKT,OAAO,IAAIzB,wBAAwB;IAC/B0B,YALeD,EAAEJ,QAAQhB,qBAAqB0B,eAK9CL;IACAgC,QALWjC,EAAEJ,QAAQhB,qBAAqB4B,WAK1CyB;IAEAC,kBANqBlC,EAAEJ,QAAQf,qBAAqBsD,QAMpDD;IAEAE,SAAS;KAELxB,QAAQjB,OAAOkB;KACfe,QAAQjC,OAAOkC;IACnB;GACJ,CAAA;EACJ,EACJ,CAAA;CACJ;AACJ"}
1
+ {"version":3,"file":"module.mjs","names":["CacheInjectionKey","ModuleName","OAuth2AuthorizationCodeRepository","OAuth2AuthorizationStateRepository","OAuth2ClientRepository","OAuth2KeyRepository","OAuth2ScopeRepository","OAuth2TokenRepository","OAuth2AccessTokenIssuer","OAuth2AuthorizationCodeIssuer","OAuth2AuthorizationCodeRequestVerifier","OAuth2AuthorizationCodeVerifier","OAuth2AuthorizationStateManager","OAuth2OpenIDTokenIssuer","OAuth2RefreshTokenIssuer","OAuth2TokenRevoker","OAuth2TokenSigner","OAuth2TokenVerifier","OAuth2InjectionToken","IdentityInjectionKey","ClientEntity","ClientScopeEntity","ConfigInjectionKey","DatabaseInjectionKey","OAuth2Module","name","dependencies","OAUTH2","DATABASE","CACHE","CONFIG","IDENTITY","setup","container","config","resolve","register","ClientRepository","useFactory","c","repository","ScopeRepository","AuthorizationCodeRepository","cache","AuthorizationStateRepository","TokenRepository","KeyRepository","DataSource","TokenSigner","keyRepository","AuthorizationCodeIssuer","codeRepository","maxAge","tokenAccessMaxAge","AuthorizationCodeVerifier","AuthorizationCodeRequestVerifier","clientRepository","clientScopeRepository","scopeRepository","AuthorizationStateManager","stateRepository","TokenRevoker","tokenRepository","TokenVerifier","AccessTokenIssuer","tokenSigner","identityRoleProvider","RoleProvider","issuer","publicUrl","RefreshTokenIssuer","tokenRefreshMaxAge","OpenIDTokenIssuer","signer","identityResolver","Resolver","options"],"sources":["../../../../src/app/modules/oauth2/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Repository } from 'typeorm';\nimport { CacheInjectionKey } from '../cache/index.ts';\nimport type { IContainer } from 'eldin';\nimport type { IModule } from 'orkos';\nimport { ModuleName } from '../constants.ts';\n\nimport {\n OAuth2AuthorizationCodeRepository,\n OAuth2AuthorizationStateRepository,\n OAuth2ClientRepository,\n OAuth2KeyRepository,\n OAuth2ScopeRepository,\n OAuth2TokenRepository,\n} from './repositories/index.ts';\nimport {\n OAuth2AccessTokenIssuer,\n OAuth2AuthorizationCodeIssuer,\n OAuth2AuthorizationCodeRequestVerifier,\n OAuth2AuthorizationCodeVerifier,\n OAuth2AuthorizationStateManager,\n OAuth2OpenIDTokenIssuer,\n OAuth2RefreshTokenIssuer,\n OAuth2TokenRevoker,\n OAuth2TokenSigner,\n OAuth2TokenVerifier,\n} from '../../../core/index.ts';\nimport { OAuth2InjectionToken } from './constants.ts';\nimport { IdentityInjectionKey } from '../identity/index.ts';\nimport { ClientEntity, ClientScopeEntity } from '../../../adapters/database/domains/index.ts';\nimport { ConfigInjectionKey } from '../config/index.ts';\nimport { DatabaseInjectionKey } from '../database/index.ts';\n\nexport class OAuth2Module implements IModule {\n readonly name: string;\n\n readonly dependencies: string[];\n\n constructor() {\n this.name = ModuleName.OAUTH2;\n this.dependencies = [ModuleName.DATABASE, ModuleName.CACHE, ModuleName.CONFIG, ModuleName.IDENTITY];\n }\n\n async setup(container: IContainer) : Promise<void> {\n const config = container.resolve(ConfigInjectionKey);\n\n container.register(OAuth2InjectionToken.ClientRepository, {\n useFactory: (c) => {\n const repository = c.resolve<Repository<ClientEntity>>(ClientEntity);\n return new OAuth2ClientRepository(repository);\n },\n });\n\n container.register(OAuth2InjectionToken.ScopeRepository, {\n useFactory: (c) => {\n const repository = c.resolve<Repository<ClientScopeEntity>>(ClientScopeEntity);\n return new OAuth2ScopeRepository(repository);\n },\n });\n\n container.register(OAuth2InjectionToken.AuthorizationCodeRepository, {\n useFactory: (c) => {\n const cache = c.resolve(CacheInjectionKey);\n return new OAuth2AuthorizationCodeRepository(cache);\n },\n });\n\n container.register(OAuth2InjectionToken.AuthorizationStateRepository, {\n useFactory: (c) => {\n const cache = c.resolve(CacheInjectionKey);\n return new OAuth2AuthorizationStateRepository(cache);\n },\n });\n\n container.register(OAuth2InjectionToken.TokenRepository, {\n useFactory: (c) => {\n const cache = c.resolve(CacheInjectionKey);\n return new OAuth2TokenRepository(cache);\n },\n });\n\n container.register(OAuth2InjectionToken.KeyRepository, {\n // todo: cache use here\n useFactory: (c) => new OAuth2KeyRepository(c.resolve(DatabaseInjectionKey.DataSource)),\n });\n\n container.register(OAuth2InjectionToken.TokenSigner, {\n useFactory: (c) => {\n const keyRepository = c.resolve(OAuth2InjectionToken.KeyRepository);\n return new OAuth2TokenSigner(keyRepository);\n },\n });\n\n // authorization code issuer\n container.register(OAuth2InjectionToken.AuthorizationCodeIssuer, {\n useFactory: (c) => {\n const codeRepository = c.resolve(OAuth2InjectionToken.AuthorizationCodeRepository);\n\n return new OAuth2AuthorizationCodeIssuer(\n codeRepository,\n {\n // todo: own constant here\n maxAge: config.tokenAccessMaxAge,\n },\n );\n },\n });\n container.register(OAuth2InjectionToken.AuthorizationCodeVerifier, {\n useFactory: (c) => {\n const codeRepository = c.resolve(OAuth2InjectionToken.AuthorizationCodeRepository);\n\n return new OAuth2AuthorizationCodeVerifier(codeRepository);\n },\n });\n\n // authorization code request verifier\n container.register(OAuth2InjectionToken.AuthorizationCodeRequestVerifier, {\n useFactory: (c) => {\n const clientRepository = c.resolve(OAuth2InjectionToken.ClientRepository);\n const clientScopeRepository = c.resolve(OAuth2InjectionToken.ScopeRepository);\n\n return new OAuth2AuthorizationCodeRequestVerifier({\n clientRepository,\n scopeRepository: clientScopeRepository,\n });\n },\n });\n\n container.register(OAuth2InjectionToken.AuthorizationStateManager, {\n useFactory: (c) => {\n const stateRepository = c.resolve(OAuth2InjectionToken.AuthorizationStateRepository);\n\n return new OAuth2AuthorizationStateManager(stateRepository);\n },\n });\n\n // token revoker\n container.register(OAuth2InjectionToken.TokenRevoker, {\n useFactory: (c) => {\n const tokenRepository = c.resolve(OAuth2InjectionToken.TokenRepository);\n return new OAuth2TokenRevoker(tokenRepository);\n },\n });\n\n // token verifier\n container.register(OAuth2InjectionToken.TokenVerifier, {\n useFactory: (c) => {\n const keyRepository = c.resolve(OAuth2InjectionToken.KeyRepository);\n const tokenRepository = c.resolve(OAuth2InjectionToken.TokenRepository);\n\n return new OAuth2TokenVerifier(keyRepository, tokenRepository);\n },\n });\n\n // access token issuer\n container.register(OAuth2InjectionToken.AccessTokenIssuer, {\n useFactory: (c) => {\n const tokenRepository = c.resolve(OAuth2InjectionToken.TokenRepository);\n const tokenSigner = c.resolve(OAuth2InjectionToken.TokenSigner);\n const identityRoleProvider = c.resolve(IdentityInjectionKey.RoleProvider);\n return new OAuth2AccessTokenIssuer(\n tokenRepository,\n tokenSigner,\n {\n maxAge: config.tokenAccessMaxAge,\n issuer: config.publicUrl,\n },\n identityRoleProvider,\n );\n },\n });\n\n // refresh token issuer\n container.register(OAuth2InjectionToken.RefreshTokenIssuer, {\n useFactory: (c) => {\n const tokenRepository = c.resolve(OAuth2InjectionToken.TokenRepository);\n const tokenSigner = c.resolve(OAuth2InjectionToken.TokenSigner);\n\n return new OAuth2RefreshTokenIssuer(\n tokenRepository,\n tokenSigner,\n {\n maxAge: config.tokenRefreshMaxAge,\n issuer: config.publicUrl,\n },\n );\n },\n });\n\n // open-id token issuer\n container.register(OAuth2InjectionToken.OpenIDTokenIssuer, {\n useFactory: (c) => {\n const repository = c.resolve(OAuth2InjectionToken.TokenRepository);\n const signer = c.resolve(OAuth2InjectionToken.TokenSigner);\n const identityResolver = c.resolve(IdentityInjectionKey.Resolver);\n\n return new OAuth2OpenIDTokenIssuer({\n repository,\n signer,\n\n identityResolver,\n\n options: {\n // todo: own constant here\n maxAge: config.tokenAccessMaxAge,\n issuer: config.publicUrl,\n },\n });\n },\n });\n }\n}\n"],"mappings":"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"}
@@ -1,6 +1,9 @@
1
1
  import type { Key } from '@authup/core-kit';
2
+ import type { DataSource } from 'typeorm';
2
3
  import type { IOAuth2KeyRepository } from '../../../../../core/index.ts';
3
4
  export declare class OAuth2KeyRepository implements IOAuth2KeyRepository {
5
+ protected dataSource: DataSource;
6
+ constructor(dataSource: DataSource);
4
7
  findByRealmId(realmId: string): Promise<Key | null>;
5
8
  findById(id: string): Promise<Key | null>;
6
9
  protected createOrGet(where: {
@@ -1 +1 @@
1
- {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../../../../src/app/modules/oauth2/repositories/key/repository.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAK5C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,qBAAa,mBAAoB,YAAW,oBAAoB;IACtD,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;IAInD,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;cAI/B,WAAW,CAAC,KAAK,EAAE;QAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,EAAE,CAAC,EAAE,MAAM,CAAA;KACd,GAAI,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;CAwC3B"}
1
+ {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../../../../src/app/modules/oauth2/repositories/key/repository.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,qBAAa,mBAAoB,YAAW,oBAAoB;IAC5D,SAAS,CAAC,UAAU,EAAG,UAAU,CAAC;gBAEtB,UAAU,EAAE,UAAU;IAI5B,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;IAInD,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;cAI/B,WAAW,CAAC,KAAK,EAAE;QAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,EAAE,CAAC,EAAE,MAAM,CAAA;KACd,GAAI,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;CAuC3B"}
@@ -5,9 +5,12 @@ import { KeyEntity } from "../../../../../adapters/database/domains/key/entity.m
5
5
  import "../../../../../adapters/database/index.mjs";
6
6
  import { AsymmetricKey, CryptoAsymmetricAlgorithm, createAsymmetricKeyPair } from "@authup/server-kit";
7
7
  import { JWKType, JWTAlgorithm } from "@authup/specs";
8
- import { useDataSource } from "typeorm-extension";
9
8
  //#region src/app/modules/oauth2/repositories/key/repository.ts
10
9
  var OAuth2KeyRepository = class {
10
+ dataSource;
11
+ constructor(dataSource) {
12
+ this.dataSource = dataSource;
13
+ }
11
14
  async findByRealmId(realmId) {
12
15
  return this.createOrGet({ realm_id: realmId });
13
16
  }
@@ -15,7 +18,7 @@ var OAuth2KeyRepository = class {
15
18
  return this.createOrGet({ id });
16
19
  }
17
20
  async createOrGet(where) {
18
- const repository = (await useDataSource()).getRepository(KeyEntity);
21
+ const repository = this.dataSource.getRepository(KeyEntity);
19
22
  let entity = await repository.findOne({
20
23
  select: {
21
24
  id: true,
@@ -1 +1 @@
1
- {"version":3,"file":"repository.mjs","names":["AsymmetricKey","CryptoAsymmetricAlgorithm","createAsymmetricKeyPair","JWKType","JWTAlgorithm","useDataSource","KeyEntity","OAuth2KeyRepository","findByRealmId","realmId","createOrGet","realm_id","findById","id","where","dataSource","repository","getRepository","entity","findOne","select","type","signature_algorithm","encryption_key","decryption_key","keyPair","name","RSASSA_PKCS1_V1_5","privateKeyContainer","privateKey","publicKeyContainer","publicKey","create","RSA","toBase64","RS256","save"],"sources":["../../../../../../src/app/modules/oauth2/repositories/key/repository.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Key } from '@authup/core-kit';\nimport { AsymmetricKey, CryptoAsymmetricAlgorithm, createAsymmetricKeyPair } from '@authup/server-kit';\nimport { JWKType, JWTAlgorithm } from '@authup/specs';\nimport { useDataSource } from 'typeorm-extension';\nimport { KeyEntity } from '../../../../../adapters/database/index.ts';\nimport type { IOAuth2KeyRepository } from '../../../../../core/index.ts';\n\nexport class OAuth2KeyRepository implements IOAuth2KeyRepository {\n async findByRealmId(realmId: string): Promise<Key | null> {\n return this.createOrGet({ realm_id: realmId });\n }\n\n async findById(id: string): Promise<Key | null> {\n return this.createOrGet({ id });\n }\n\n protected async createOrGet(where: {\n realm_id?: string,\n id?: string\n }) : Promise<Key | null> {\n const dataSource = await useDataSource();\n const repository = dataSource.getRepository(KeyEntity);\n\n let entity = await repository.findOne({\n select: {\n id: true,\n type: true,\n signature_algorithm: true,\n encryption_key: true,\n decryption_key: true,\n },\n where,\n });\n\n if (entity) {\n return entity;\n }\n\n if (typeof where.realm_id !== 'string') {\n return null;\n }\n\n const keyPair = await createAsymmetricKeyPair({ name: CryptoAsymmetricAlgorithm.RSASSA_PKCS1_V1_5 });\n\n const privateKeyContainer = new AsymmetricKey(keyPair.privateKey);\n const publicKeyContainer = new AsymmetricKey(keyPair.publicKey);\n\n entity = repository.create({\n type: JWKType.RSA,\n decryption_key: await privateKeyContainer.toBase64(),\n encryption_key: await publicKeyContainer.toBase64(),\n realm_id: where.realm_id,\n signature_algorithm: `${JWTAlgorithm.RS256}`,\n });\n\n await repository.save(entity);\n\n return entity;\n }\n}\n"],"mappings":";;;;;;;;;AAcA,IAAaO,sBAAb,MAAaA;CACT,MAAMC,cAAcC,SAAsC;EACtD,OAAO,KAAKC,YAAY,EAAEC,UAAUF,QAAQ,CAAA;CAChD;CAEA,MAAMG,SAASC,IAAiC;EAC5C,OAAO,KAAKH,YAAY,EAAEG,GAAG,CAAA;CACjC;CAEA,MAAgBH,YAAYI,OAGH;EAErB,MAAME,cAAaD,MADMV,cAAAA,EAAAA,CACKY,cAAcX,SAAAA;EAE5C,IAAIY,SAAS,MAAMF,WAAWG,QAAQ;GAClCC,QAAQ;IACJP,IAAI;IACJQ,MAAM;IACNC,qBAAqB;IACrBC,gBAAgB;IAChBC,gBAAgB;GACpB;GACAV;EACJ,CAAA;EAEA,IAAII,QACA,OAAOA;EAGX,IAAI,OAAOJ,MAAMH,aAAa,UAC1B,OAAO;EAGX,MAAMc,UAAU,MAAMvB,wBAAwB,EAAEwB,MAAMzB,0BAA0B0B,kBAAkB,CAAA;EAElG,MAAMC,sBAAsB,IAAI5B,cAAcyB,QAAQI,UAAU;EAChE,MAAMC,qBAAqB,IAAI9B,cAAcyB,QAAQM,SAAS;EAE9Db,SAASF,WAAWgB,OAAO;GACvBX,MAAMlB,QAAQ8B;GACdT,gBAAgB,MAAMI,oBAAoBM,SAAQ;GAClDX,gBAAgB,MAAMO,mBAAmBI,SAAQ;GACjDvB,UAAUG,MAAMH;GAChBW,qBAAqB,GAAGlB,aAAa+B;EACzC,CAAA;EAEA,MAAMnB,WAAWoB,KAAKlB,MAAAA;EAEtB,OAAOA;CACX;AACJ"}
1
+ {"version":3,"file":"repository.mjs","names":["AsymmetricKey","CryptoAsymmetricAlgorithm","createAsymmetricKeyPair","JWKType","JWTAlgorithm","KeyEntity","OAuth2KeyRepository","dataSource","findByRealmId","realmId","createOrGet","realm_id","findById","id","where","repository","getRepository","entity","findOne","select","type","signature_algorithm","encryption_key","decryption_key","keyPair","name","RSASSA_PKCS1_V1_5","privateKeyContainer","privateKey","publicKeyContainer","publicKey","create","RSA","toBase64","RS256","save"],"sources":["../../../../../../src/app/modules/oauth2/repositories/key/repository.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Key } from '@authup/core-kit';\nimport { AsymmetricKey, CryptoAsymmetricAlgorithm, createAsymmetricKeyPair } from '@authup/server-kit';\nimport { JWKType, JWTAlgorithm } from '@authup/specs';\nimport type { DataSource } from 'typeorm';\nimport { KeyEntity } from '../../../../../adapters/database/index.ts';\nimport type { IOAuth2KeyRepository } from '../../../../../core/index.ts';\n\nexport class OAuth2KeyRepository implements IOAuth2KeyRepository {\n protected dataSource : DataSource;\n\n constructor(dataSource: DataSource) {\n this.dataSource = dataSource;\n }\n\n async findByRealmId(realmId: string): Promise<Key | null> {\n return this.createOrGet({ realm_id: realmId });\n }\n\n async findById(id: string): Promise<Key | null> {\n return this.createOrGet({ id });\n }\n\n protected async createOrGet(where: {\n realm_id?: string,\n id?: string\n }) : Promise<Key | null> {\n const repository = this.dataSource.getRepository(KeyEntity);\n\n let entity = await repository.findOne({\n select: {\n id: true,\n type: true,\n signature_algorithm: true,\n encryption_key: true,\n decryption_key: true,\n },\n where,\n });\n\n if (entity) {\n return entity;\n }\n\n if (typeof where.realm_id !== 'string') {\n return null;\n }\n\n const keyPair = await createAsymmetricKeyPair({ name: CryptoAsymmetricAlgorithm.RSASSA_PKCS1_V1_5 });\n\n const privateKeyContainer = new AsymmetricKey(keyPair.privateKey);\n const publicKeyContainer = new AsymmetricKey(keyPair.publicKey);\n\n entity = repository.create({\n type: JWKType.RSA,\n decryption_key: await privateKeyContainer.toBase64(),\n encryption_key: await publicKeyContainer.toBase64(),\n realm_id: where.realm_id,\n signature_algorithm: `${JWTAlgorithm.RS256}`,\n });\n\n await repository.save(entity);\n\n return entity;\n }\n}\n"],"mappings":";;;;;;;;AAcA,IAAaM,sBAAb,MAAaA;CACCC;CAEV,YAAYA,YAAwB;EAChC,KAAKA,aAAaA;CACtB;CAEA,MAAMC,cAAcC,SAAsC;EACtD,OAAO,KAAKC,YAAY,EAAEC,UAAUF,QAAQ,CAAA;CAChD;CAEA,MAAMG,SAASC,IAAiC;EAC5C,OAAO,KAAKH,YAAY,EAAEG,GAAG,CAAA;CACjC;CAEA,MAAgBH,YAAYI,OAGH;EACrB,MAAMC,aAAa,KAAKR,WAAWS,cAAcX,SAAAA;EAEjD,IAAIY,SAAS,MAAMF,WAAWG,QAAQ;GAClCC,QAAQ;IACJN,IAAI;IACJO,MAAM;IACNC,qBAAqB;IACrBC,gBAAgB;IAChBC,gBAAgB;GACpB;GACAT;EACJ,CAAA;EAEA,IAAIG,QACA,OAAOA;EAGX,IAAI,OAAOH,MAAMH,aAAa,UAC1B,OAAO;EAGX,MAAMa,UAAU,MAAMtB,wBAAwB,EAAEuB,MAAMxB,0BAA0ByB,kBAAkB,CAAA;EAElG,MAAMC,sBAAsB,IAAI3B,cAAcwB,QAAQI,UAAU;EAChE,MAAMC,qBAAqB,IAAI7B,cAAcwB,QAAQM,SAAS;EAE9Db,SAASF,WAAWgB,OAAO;GACvBX,MAAMjB,QAAQ6B;GACdT,gBAAgB,MAAMI,oBAAoBM,SAAQ;GAClDX,gBAAgB,MAAMO,mBAAmBI,SAAQ;GACjDtB,UAAUG,MAAMH;GAChBU,qBAAqB,GAAGjB,aAAa8B;EACzC,CAAA;EAEA,MAAMnB,WAAWoB,KAAKlB,MAAAA;EAEtB,OAAOA;CACX;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../src/app/modules/provisioning/module.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,UAAU,EAAc,MAAM,SAAS,CAAC;AAsBtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAYxC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,EAMH,uBAAuB,EAW1B,MAAM,mCAAmC,CAAC;AAE3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAOrC,qBAAa,iBAAkB,YAAW,OAAO;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IAEhC,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAC;gBAE7B,OAAO,GAAE,mBAAmB,EAAO;IAMzC,KAAK,CAAC,SAAS,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;cAgJjC,mBAAmB,CAC/B,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,uBAAuB,GAC1C,OAAO,CAAC,IAAI,CAAC;CAuBnB"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../src/app/modules/provisioning/module.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,UAAU,EAAc,MAAM,SAAS,CAAC;AAsBtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAYxC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,EAMH,uBAAuB,EAW1B,MAAM,mCAAmC,CAAC;AAE3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AASrC,qBAAa,iBAAkB,YAAW,OAAO;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IAEhC,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAC;gBAE7B,OAAO,GAAE,mBAAmB,EAAO;IAMzC,KAAK,CAAC,SAAS,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;cAgKjC,mBAAmB,CAC/B,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,uBAAuB,GAC1C,OAAO,CAAC,IAAI,CAAC;CAuBnB"}
@@ -18,6 +18,8 @@ import { RolePermissionEntity } from "../../../adapters/database/domains/role-pe
18
18
  import { UserPermissionEntity } from "../../../adapters/database/domains/user-permission/entity.mjs";
19
19
  import { UserRoleEntity } from "../../../adapters/database/domains/user-role/entity.mjs";
20
20
  import "../../../adapters/database/domains/index.mjs";
21
+ import { WebClientProvisioner } from "../../../core/entities/client/web-client.mjs";
22
+ import "../../../core/entities/client/index.mjs";
21
23
  import { ClientProvisioningSynchronizer } from "../../../core/provisioning/synchronizer/client/module.mjs";
22
24
  import { PermissionProvisioningSynchronizer } from "../../../core/provisioning/synchronizer/permission/module.mjs";
23
25
  import { PolicyProvisioningSynchronizer } from "../../../core/provisioning/synchronizer/policy/module.mjs";
@@ -30,9 +32,12 @@ import { UserProvisioningSynchronizer } from "../../../core/provisioning/synchro
30
32
  import "../../../core/provisioning/synchronizer/index.mjs";
31
33
  import { ModuleName } from "../constants.mjs";
32
34
  import { ConfigInjectionKey } from "../config/constants.mjs";
35
+ import { getAppOrigins } from "../config/origins.mjs";
33
36
  import "../config/index.mjs";
34
37
  import { DatabaseInjectionKey } from "../database/constants.mjs";
35
38
  import "../../../adapters/database/index.mjs";
39
+ import { LoggerInjectionKey } from "../logger/constants.mjs";
40
+ import "../logger/index.mjs";
36
41
  import { RealmRepositoryAdapter } from "../database/repositories/realm/repository.mjs";
37
42
  import { ClientRepositoryAdapter } from "../database/repositories/client/repository.mjs";
38
43
  import { ClientPermissionRepositoryAdapter } from "../database/repositories/client-permission/repository.mjs";
@@ -156,6 +161,13 @@ var ProvisionerModule = class {
156
161
  }),
157
162
  scopeSynchronizer
158
163
  }).synchronize(data);
164
+ const webClientProvisioner = new WebClientProvisioner({
165
+ clientRepository,
166
+ appOrigins: getAppOrigins(config),
167
+ logger: container.resolve(LoggerInjectionKey)
168
+ });
169
+ const realms = await realmRepository.find();
170
+ for (const realm of realms) await webClientProvisioner.ensureForRealm(realm);
159
171
  if (config.permissionsDefaultPolicyAssignment) await this.assignDefaultPolicy(dataSource, policyRepository);
160
172
  }
161
173
  async assignDefaultPolicy(dataSource, policyRepository) {