@authup/server-core 1.0.0-beta.40 → 1.0.0-beta.42

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 (900) hide show
  1. package/dist/adapters/database/cache/module.mjs.map +1 -1
  2. package/dist/adapters/database/data-source/options/module.mjs.map +1 -1
  3. package/dist/adapters/database/data-source/singleton.mjs.map +1 -1
  4. package/dist/adapters/database/domains/client/entity.mjs.map +1 -1
  5. package/dist/adapters/database/domains/client/subscriber.mjs.map +1 -1
  6. package/dist/adapters/database/domains/client-permission/entity.mjs.map +1 -1
  7. package/dist/adapters/database/domains/client-permission/subscriber.mjs.map +1 -1
  8. package/dist/adapters/database/domains/client-role/entity.mjs.map +1 -1
  9. package/dist/adapters/database/domains/client-role/subscriber.mjs.map +1 -1
  10. package/dist/adapters/database/domains/client-scope/entity.mjs.map +1 -1
  11. package/dist/adapters/database/domains/client-scope/subscriber.mjs.map +1 -1
  12. package/dist/adapters/database/domains/identity-provider/entity.mjs.map +1 -1
  13. package/dist/adapters/database/domains/identity-provider/repository.mjs.map +1 -1
  14. package/dist/adapters/database/domains/identity-provider/subscriber.mjs.map +1 -1
  15. package/dist/adapters/database/domains/identity-provider-account/entity.mjs.map +1 -1
  16. package/dist/adapters/database/domains/identity-provider-account/subscriber.mjs.map +1 -1
  17. package/dist/adapters/database/domains/identity-provider-attribute/entity.mjs.map +1 -1
  18. package/dist/adapters/database/domains/identity-provider-attribute/subscriber.mjs.map +1 -1
  19. package/dist/adapters/database/domains/identity-provider-attribute-mapping/entity.mjs.map +1 -1
  20. package/dist/adapters/database/domains/identity-provider-permission-mapping/entity.mjs.map +1 -1
  21. package/dist/adapters/database/domains/identity-provider-role-mapping/entity.mjs.map +1 -1
  22. package/dist/adapters/database/domains/identity-provider-role-mapping/subscriber.mjs.map +1 -1
  23. package/dist/adapters/database/domains/key/entity.mjs.map +1 -1
  24. package/dist/adapters/database/domains/permission/entity.mjs.map +1 -1
  25. package/dist/adapters/database/domains/permission/subscriber.mjs.map +1 -1
  26. package/dist/adapters/database/domains/permission-policy/entity.mjs.map +1 -1
  27. package/dist/adapters/database/domains/policy/entity.mjs.map +1 -1
  28. package/dist/adapters/database/domains/policy/repository.mjs.map +1 -1
  29. package/dist/adapters/database/domains/policy/subscriber.mjs.map +1 -1
  30. package/dist/adapters/database/domains/policy-attribute/entity.mjs.map +1 -1
  31. package/dist/adapters/database/domains/policy-attribute/subscriber.mjs.map +1 -1
  32. package/dist/adapters/database/domains/realm/entity.mjs.map +1 -1
  33. package/dist/adapters/database/domains/realm/repository.mjs.map +1 -1
  34. package/dist/adapters/database/domains/realm/subscriber.mjs.map +1 -1
  35. package/dist/adapters/database/domains/robot/entity.mjs.map +1 -1
  36. package/dist/adapters/database/domains/robot/subscriber.mjs.map +1 -1
  37. package/dist/adapters/database/domains/robot-permission/entity.mjs.map +1 -1
  38. package/dist/adapters/database/domains/robot-permission/subscriber.mjs.map +1 -1
  39. package/dist/adapters/database/domains/robot-role/entity.mjs.map +1 -1
  40. package/dist/adapters/database/domains/robot-role/subscriber.mjs.map +1 -1
  41. package/dist/adapters/database/domains/role/entity.mjs.map +1 -1
  42. package/dist/adapters/database/domains/role/repository.mjs.map +1 -1
  43. package/dist/adapters/database/domains/role/subscriber.mjs.map +1 -1
  44. package/dist/adapters/database/domains/role-attribute/entity.mjs.map +1 -1
  45. package/dist/adapters/database/domains/role-attribute/subscriber.mjs.map +1 -1
  46. package/dist/adapters/database/domains/role-permission/entity.mjs.map +1 -1
  47. package/dist/adapters/database/domains/role-permission/subscriber.mjs.map +1 -1
  48. package/dist/adapters/database/domains/scope/entity.mjs.map +1 -1
  49. package/dist/adapters/database/domains/scope/subscriber.mjs.map +1 -1
  50. package/dist/adapters/database/domains/session/entity.mjs.map +1 -1
  51. package/dist/adapters/database/domains/user/entity.mjs.map +1 -1
  52. package/dist/adapters/database/domains/user/repository.mjs.map +1 -1
  53. package/dist/adapters/database/domains/user/subscriber.mjs.map +1 -1
  54. package/dist/adapters/database/domains/user-attribute/entity.mjs.map +1 -1
  55. package/dist/adapters/database/domains/user-attribute/subscriber.mjs.map +1 -1
  56. package/dist/adapters/database/domains/user-permission/entity.mjs.map +1 -1
  57. package/dist/adapters/database/domains/user-permission/subscriber.mjs.map +1 -1
  58. package/dist/adapters/database/domains/user-role/entity.mjs.map +1 -1
  59. package/dist/adapters/database/domains/user-role/subscriber.mjs.map +1 -1
  60. package/dist/adapters/database/errors/conflict.d.ts +2 -2
  61. package/dist/adapters/database/errors/conflict.d.ts.map +1 -1
  62. package/dist/adapters/database/errors/conflict.mjs +6 -3
  63. package/dist/adapters/database/errors/conflict.mjs.map +1 -1
  64. package/dist/adapters/database/event-publisher/module.mjs.map +1 -1
  65. package/dist/adapters/database/extra-attribute-repository/adapter.mjs.map +1 -1
  66. package/dist/adapters/database/extra-attribute-repository/repository.mjs.map +1 -1
  67. package/dist/adapters/database/extra-attribute-repository/tree/adapter.mjs.map +1 -1
  68. package/dist/adapters/database/extra-attribute-repository/tree/repository.mjs.map +1 -1
  69. package/dist/adapters/database/helpers/is-supported.mjs.map +1 -1
  70. package/dist/adapters/database/logger/module.mjs.map +1 -1
  71. package/dist/adapters/database/migrations/mysql/1673449341125-Default.mjs.map +1 -1
  72. package/dist/adapters/database/migrations/mysql/1689597906910-Default.mjs.map +1 -1
  73. package/dist/adapters/database/migrations/mysql/1718790373914-Default.mjs.map +1 -1
  74. package/dist/adapters/database/migrations/mysql/1722673916392-Default.mjs.map +1 -1
  75. package/dist/adapters/database/migrations/mysql/1740991051622-Default.mjs.map +1 -1
  76. package/dist/adapters/database/migrations/mysql/1766830857009-Default.mjs.map +1 -1
  77. package/dist/adapters/database/migrations/mysql/1774800953474-Default.mjs.map +1 -1
  78. package/dist/adapters/database/migrations/postgres/1673449341125-Default.mjs.map +1 -1
  79. package/dist/adapters/database/migrations/postgres/1689597906910-Default.mjs.map +1 -1
  80. package/dist/adapters/database/migrations/postgres/1718790373914-Default.mjs.map +1 -1
  81. package/dist/adapters/database/migrations/postgres/1722673916392-Default.mjs.map +1 -1
  82. package/dist/adapters/database/migrations/postgres/1740991051622-Default.mjs.map +1 -1
  83. package/dist/adapters/database/migrations/postgres/1766830857009-Default.mjs.map +1 -1
  84. package/dist/adapters/database/migrations/postgres/1774800953474-Default.mjs.map +1 -1
  85. package/dist/adapters/http/adapters/oauth2/authorization/module.d.ts +5 -8
  86. package/dist/adapters/http/adapters/oauth2/authorization/module.d.ts.map +1 -1
  87. package/dist/adapters/http/adapters/oauth2/authorization/module.mjs +8 -10
  88. package/dist/adapters/http/adapters/oauth2/authorization/module.mjs.map +1 -1
  89. package/dist/adapters/http/adapters/oauth2/grant-types/authorize.d.ts +3 -3
  90. package/dist/adapters/http/adapters/oauth2/grant-types/authorize.d.ts.map +1 -1
  91. package/dist/adapters/http/adapters/oauth2/grant-types/authorize.mjs +15 -14
  92. package/dist/adapters/http/adapters/oauth2/grant-types/authorize.mjs.map +1 -1
  93. package/dist/adapters/http/adapters/oauth2/grant-types/client-credentials.d.ts +2 -2
  94. package/dist/adapters/http/adapters/oauth2/grant-types/client-credentials.d.ts.map +1 -1
  95. package/dist/adapters/http/adapters/oauth2/grant-types/client-credentials.mjs +8 -8
  96. package/dist/adapters/http/adapters/oauth2/grant-types/client-credentials.mjs.map +1 -1
  97. package/dist/adapters/http/adapters/oauth2/grant-types/identity.d.ts +2 -2
  98. package/dist/adapters/http/adapters/oauth2/grant-types/identity.d.ts.map +1 -1
  99. package/dist/adapters/http/adapters/oauth2/grant-types/identity.mjs +4 -4
  100. package/dist/adapters/http/adapters/oauth2/grant-types/identity.mjs.map +1 -1
  101. package/dist/adapters/http/adapters/oauth2/grant-types/password.d.ts +2 -2
  102. package/dist/adapters/http/adapters/oauth2/grant-types/password.d.ts.map +1 -1
  103. package/dist/adapters/http/adapters/oauth2/grant-types/password.mjs +6 -6
  104. package/dist/adapters/http/adapters/oauth2/grant-types/password.mjs.map +1 -1
  105. package/dist/adapters/http/adapters/oauth2/grant-types/refresh_token.d.ts +2 -2
  106. package/dist/adapters/http/adapters/oauth2/grant-types/refresh_token.d.ts.map +1 -1
  107. package/dist/adapters/http/adapters/oauth2/grant-types/refresh_token.mjs +12 -11
  108. package/dist/adapters/http/adapters/oauth2/grant-types/refresh_token.mjs.map +1 -1
  109. package/dist/adapters/http/adapters/oauth2/grant-types/robot-credentials.d.ts +2 -2
  110. package/dist/adapters/http/adapters/oauth2/grant-types/robot-credentials.d.ts.map +1 -1
  111. package/dist/adapters/http/adapters/oauth2/grant-types/robot-credentials.mjs +5 -5
  112. package/dist/adapters/http/adapters/oauth2/grant-types/robot-credentials.mjs.map +1 -1
  113. package/dist/adapters/http/adapters/oauth2/grant-types/types.d.ts +2 -2
  114. package/dist/adapters/http/adapters/oauth2/grant-types/types.d.ts.map +1 -1
  115. package/dist/adapters/http/adapters/oauth2/grant-types/utils/credentials.d.ts +2 -2
  116. package/dist/adapters/http/adapters/oauth2/grant-types/utils/credentials.d.ts.map +1 -1
  117. package/dist/adapters/http/adapters/oauth2/grant-types/utils/credentials.mjs +15 -14
  118. package/dist/adapters/http/adapters/oauth2/grant-types/utils/credentials.mjs.map +1 -1
  119. package/dist/adapters/http/adapters/oauth2/grant-types/utils/guess.d.ts +2 -2
  120. package/dist/adapters/http/adapters/oauth2/grant-types/utils/guess.d.ts.map +1 -1
  121. package/dist/adapters/http/adapters/oauth2/grant-types/utils/guess.mjs +16 -13
  122. package/dist/adapters/http/adapters/oauth2/grant-types/utils/guess.mjs.map +1 -1
  123. package/dist/adapters/http/controllers/entities/client/module.d.ts +9 -6
  124. package/dist/adapters/http/controllers/entities/client/module.d.ts.map +1 -1
  125. package/dist/adapters/http/controllers/entities/client/module.mjs +54 -65
  126. package/dist/adapters/http/controllers/entities/client/module.mjs.map +1 -1
  127. package/dist/adapters/http/controllers/entities/client-permission/module.d.ts +8 -5
  128. package/dist/adapters/http/controllers/entities/client-permission/module.d.ts.map +1 -1
  129. package/dist/adapters/http/controllers/entities/client-permission/module.mjs +35 -48
  130. package/dist/adapters/http/controllers/entities/client-permission/module.mjs.map +1 -1
  131. package/dist/adapters/http/controllers/entities/client-permission/utils/validation.mjs.map +1 -1
  132. package/dist/adapters/http/controllers/entities/client-role/module.d.ts +7 -4
  133. package/dist/adapters/http/controllers/entities/client-role/module.d.ts.map +1 -1
  134. package/dist/adapters/http/controllers/entities/client-role/module.mjs +27 -40
  135. package/dist/adapters/http/controllers/entities/client-role/module.mjs.map +1 -1
  136. package/dist/adapters/http/controllers/entities/client-role/utils/validation.mjs.map +1 -1
  137. package/dist/adapters/http/controllers/entities/client-scope/module.d.ts +7 -4
  138. package/dist/adapters/http/controllers/entities/client-scope/module.d.ts.map +1 -1
  139. package/dist/adapters/http/controllers/entities/client-scope/module.mjs +27 -40
  140. package/dist/adapters/http/controllers/entities/client-scope/module.mjs.map +1 -1
  141. package/dist/adapters/http/controllers/entities/client-scope/utils/validator.mjs.map +1 -1
  142. package/dist/adapters/http/controllers/entities/identity-provide-role/module.d.ts +8 -6
  143. package/dist/adapters/http/controllers/entities/identity-provide-role/module.d.ts.map +1 -1
  144. package/dist/adapters/http/controllers/entities/identity-provide-role/module.mjs +35 -48
  145. package/dist/adapters/http/controllers/entities/identity-provide-role/module.mjs.map +1 -1
  146. package/dist/adapters/http/controllers/entities/identity-provider/module.d.ts +10 -9
  147. package/dist/adapters/http/controllers/entities/identity-provider/module.d.ts.map +1 -1
  148. package/dist/adapters/http/controllers/entities/identity-provider/module.mjs +92 -114
  149. package/dist/adapters/http/controllers/entities/identity-provider/module.mjs.map +1 -1
  150. package/dist/adapters/http/controllers/entities/permission/module.d.ts +13 -17
  151. package/dist/adapters/http/controllers/entities/permission/module.d.ts.map +1 -1
  152. package/dist/adapters/http/controllers/entities/permission/module.mjs +60 -112
  153. package/dist/adapters/http/controllers/entities/permission/module.mjs.map +1 -1
  154. package/dist/adapters/http/controllers/entities/permission-policy/module.d.ts +7 -4
  155. package/dist/adapters/http/controllers/entities/permission-policy/module.d.ts.map +1 -1
  156. package/dist/adapters/http/controllers/entities/permission-policy/module.mjs +27 -40
  157. package/dist/adapters/http/controllers/entities/permission-policy/module.mjs.map +1 -1
  158. package/dist/adapters/http/controllers/entities/policy/module.d.ts +14 -16
  159. package/dist/adapters/http/controllers/entities/policy/module.d.ts.map +1 -1
  160. package/dist/adapters/http/controllers/entities/policy/module.mjs +65 -106
  161. package/dist/adapters/http/controllers/entities/policy/module.mjs.map +1 -1
  162. package/dist/adapters/http/controllers/entities/policy/utils/attributes-validator.mjs.map +1 -1
  163. package/dist/adapters/http/controllers/entities/policy/utils/validation.mjs.map +1 -1
  164. package/dist/adapters/http/controllers/entities/realm/module.d.ts +13 -8
  165. package/dist/adapters/http/controllers/entities/realm/module.d.ts.map +1 -1
  166. package/dist/adapters/http/controllers/entities/realm/module.mjs +55 -74
  167. package/dist/adapters/http/controllers/entities/realm/module.mjs.map +1 -1
  168. package/dist/adapters/http/controllers/entities/robot/module.d.ts +9 -6
  169. package/dist/adapters/http/controllers/entities/robot/module.d.ts.map +1 -1
  170. package/dist/adapters/http/controllers/entities/robot/module.mjs +54 -67
  171. package/dist/adapters/http/controllers/entities/robot/module.mjs.map +1 -1
  172. package/dist/adapters/http/controllers/entities/robot-permission/module.d.ts +8 -5
  173. package/dist/adapters/http/controllers/entities/robot-permission/module.d.ts.map +1 -1
  174. package/dist/adapters/http/controllers/entities/robot-permission/module.mjs +35 -48
  175. package/dist/adapters/http/controllers/entities/robot-permission/module.mjs.map +1 -1
  176. package/dist/adapters/http/controllers/entities/robot-permission/utils/validation.mjs.map +1 -1
  177. package/dist/adapters/http/controllers/entities/robot-role/module.d.ts +7 -4
  178. package/dist/adapters/http/controllers/entities/robot-role/module.d.ts.map +1 -1
  179. package/dist/adapters/http/controllers/entities/robot-role/module.mjs +27 -40
  180. package/dist/adapters/http/controllers/entities/robot-role/module.mjs.map +1 -1
  181. package/dist/adapters/http/controllers/entities/robot-role/utils/validation.mjs.map +1 -1
  182. package/dist/adapters/http/controllers/entities/role/module.d.ts +9 -6
  183. package/dist/adapters/http/controllers/entities/role/module.d.ts.map +1 -1
  184. package/dist/adapters/http/controllers/entities/role/module.mjs +42 -57
  185. package/dist/adapters/http/controllers/entities/role/module.mjs.map +1 -1
  186. package/dist/adapters/http/controllers/entities/role-attribute/module.d.ts +8 -5
  187. package/dist/adapters/http/controllers/entities/role-attribute/module.d.ts.map +1 -1
  188. package/dist/adapters/http/controllers/entities/role-attribute/module.mjs +35 -48
  189. package/dist/adapters/http/controllers/entities/role-attribute/module.mjs.map +1 -1
  190. package/dist/adapters/http/controllers/entities/role-attribute/utils/validation.mjs.map +1 -1
  191. package/dist/adapters/http/controllers/entities/role-permission/module.d.ts +8 -5
  192. package/dist/adapters/http/controllers/entities/role-permission/module.d.ts.map +1 -1
  193. package/dist/adapters/http/controllers/entities/role-permission/module.mjs +35 -48
  194. package/dist/adapters/http/controllers/entities/role-permission/module.mjs.map +1 -1
  195. package/dist/adapters/http/controllers/entities/role-permission/utils/validation.mjs.map +1 -1
  196. package/dist/adapters/http/controllers/entities/scope/module.d.ts +9 -6
  197. package/dist/adapters/http/controllers/entities/scope/module.d.ts.map +1 -1
  198. package/dist/adapters/http/controllers/entities/scope/module.mjs +42 -57
  199. package/dist/adapters/http/controllers/entities/scope/module.mjs.map +1 -1
  200. package/dist/adapters/http/controllers/entities/user/module.d.ts +9 -6
  201. package/dist/adapters/http/controllers/entities/user/module.d.ts.map +1 -1
  202. package/dist/adapters/http/controllers/entities/user/module.mjs +48 -59
  203. package/dist/adapters/http/controllers/entities/user/module.mjs.map +1 -1
  204. package/dist/adapters/http/controllers/entities/user-attribute/module.d.ts +8 -5
  205. package/dist/adapters/http/controllers/entities/user-attribute/module.d.ts.map +1 -1
  206. package/dist/adapters/http/controllers/entities/user-attribute/module.mjs +35 -48
  207. package/dist/adapters/http/controllers/entities/user-attribute/module.mjs.map +1 -1
  208. package/dist/adapters/http/controllers/entities/user-attribute/utils/validation.mjs.map +1 -1
  209. package/dist/adapters/http/controllers/entities/user-permission/module.d.ts +8 -5
  210. package/dist/adapters/http/controllers/entities/user-permission/module.d.ts.map +1 -1
  211. package/dist/adapters/http/controllers/entities/user-permission/module.mjs +35 -48
  212. package/dist/adapters/http/controllers/entities/user-permission/module.mjs.map +1 -1
  213. package/dist/adapters/http/controllers/entities/user-permission/utils/validation.mjs.map +1 -1
  214. package/dist/adapters/http/controllers/entities/user-role/module.d.ts +7 -4
  215. package/dist/adapters/http/controllers/entities/user-role/module.d.ts.map +1 -1
  216. package/dist/adapters/http/controllers/entities/user-role/module.mjs +27 -40
  217. package/dist/adapters/http/controllers/entities/user-role/module.mjs.map +1 -1
  218. package/dist/adapters/http/controllers/entities/user-role/utils/validation.mjs.map +1 -1
  219. package/dist/adapters/http/controllers/workflows/activate/module.d.ts +3 -2
  220. package/dist/adapters/http/controllers/workflows/activate/module.d.ts.map +1 -1
  221. package/dist/adapters/http/controllers/workflows/activate/module.mjs +6 -11
  222. package/dist/adapters/http/controllers/workflows/activate/module.mjs.map +1 -1
  223. package/dist/adapters/http/controllers/workflows/activate/validator.mjs.map +1 -1
  224. package/dist/adapters/http/controllers/workflows/authorize/module.d.ts +7 -5
  225. package/dist/adapters/http/controllers/workflows/authorize/module.d.ts.map +1 -1
  226. package/dist/adapters/http/controllers/workflows/authorize/module.mjs +21 -22
  227. package/dist/adapters/http/controllers/workflows/authorize/module.mjs.map +1 -1
  228. package/dist/adapters/http/controllers/workflows/jwks/handlers/read.d.ts +5 -3
  229. package/dist/adapters/http/controllers/workflows/jwks/handlers/read.d.ts.map +1 -1
  230. package/dist/adapters/http/controllers/workflows/jwks/handlers/read.mjs +15 -18
  231. package/dist/adapters/http/controllers/workflows/jwks/handlers/read.mjs.map +1 -1
  232. package/dist/adapters/http/controllers/workflows/jwks/module.d.ts +6 -3
  233. package/dist/adapters/http/controllers/workflows/jwks/module.d.ts.map +1 -1
  234. package/dist/adapters/http/controllers/workflows/jwks/module.mjs +20 -30
  235. package/dist/adapters/http/controllers/workflows/jwks/module.mjs.map +1 -1
  236. package/dist/adapters/http/controllers/workflows/openid/module.d.ts.map +1 -1
  237. package/dist/adapters/http/controllers/workflows/openid/module.mjs +10 -7
  238. package/dist/adapters/http/controllers/workflows/openid/module.mjs.map +1 -1
  239. package/dist/adapters/http/controllers/workflows/password-forgot/module.d.ts +3 -3
  240. package/dist/adapters/http/controllers/workflows/password-forgot/module.d.ts.map +1 -1
  241. package/dist/adapters/http/controllers/workflows/password-forgot/module.mjs +7 -11
  242. package/dist/adapters/http/controllers/workflows/password-forgot/module.mjs.map +1 -1
  243. package/dist/adapters/http/controllers/workflows/password-reset/module.d.ts +3 -3
  244. package/dist/adapters/http/controllers/workflows/password-reset/module.d.ts.map +1 -1
  245. package/dist/adapters/http/controllers/workflows/password-reset/module.mjs +7 -11
  246. package/dist/adapters/http/controllers/workflows/password-reset/module.mjs.map +1 -1
  247. package/dist/adapters/http/controllers/workflows/register/module.d.ts +3 -3
  248. package/dist/adapters/http/controllers/workflows/register/module.d.ts.map +1 -1
  249. package/dist/adapters/http/controllers/workflows/register/module.mjs +7 -11
  250. package/dist/adapters/http/controllers/workflows/register/module.mjs.map +1 -1
  251. package/dist/adapters/http/controllers/workflows/status/module.d.ts.map +1 -1
  252. package/dist/adapters/http/controllers/workflows/status/module.mjs.map +1 -1
  253. package/dist/adapters/http/controllers/workflows/token/module.d.ts +5 -5
  254. package/dist/adapters/http/controllers/workflows/token/module.d.ts.map +1 -1
  255. package/dist/adapters/http/controllers/workflows/token/module.mjs +26 -27
  256. package/dist/adapters/http/controllers/workflows/token/module.mjs.map +1 -1
  257. package/dist/adapters/http/controllers/workflows/token/utils/extract.d.ts +2 -2
  258. package/dist/adapters/http/controllers/workflows/token/utils/extract.d.ts.map +1 -1
  259. package/dist/adapters/http/controllers/workflows/token/utils/extract.mjs +8 -7
  260. package/dist/adapters/http/controllers/workflows/token/utils/extract.mjs.map +1 -1
  261. package/dist/adapters/http/controllers/workflows/token/utils/validator.mjs.map +1 -1
  262. package/dist/adapters/http/index.d.ts +0 -2
  263. package/dist/adapters/http/index.d.ts.map +1 -1
  264. package/dist/adapters/http/index.mjs +7 -7
  265. package/dist/adapters/http/middleware/built-in/assets.d.ts +1 -0
  266. package/dist/adapters/http/middleware/built-in/assets.d.ts.map +1 -1
  267. package/dist/adapters/http/middleware/built-in/assets.mjs +9 -9
  268. package/dist/adapters/http/middleware/built-in/assets.mjs.map +1 -1
  269. package/dist/adapters/http/middleware/built-in/authorization/factory.d.ts.map +1 -1
  270. package/dist/adapters/http/middleware/built-in/authorization/factory.mjs +5 -2
  271. package/dist/adapters/http/middleware/built-in/authorization/factory.mjs.map +1 -1
  272. package/dist/adapters/http/middleware/built-in/authorization/module.d.ts +4 -10
  273. package/dist/adapters/http/middleware/built-in/authorization/module.d.ts.map +1 -1
  274. package/dist/adapters/http/middleware/built-in/authorization/module.mjs +25 -40
  275. package/dist/adapters/http/middleware/built-in/authorization/module.mjs.map +1 -1
  276. package/dist/adapters/http/middleware/built-in/basic.mjs.map +1 -1
  277. package/dist/adapters/http/middleware/built-in/cors.d.ts +1 -1
  278. package/dist/adapters/http/middleware/built-in/cors.d.ts.map +1 -1
  279. package/dist/adapters/http/middleware/built-in/cors.mjs +18 -10
  280. package/dist/adapters/http/middleware/built-in/cors.mjs.map +1 -1
  281. package/dist/adapters/http/middleware/built-in/error.d.ts.map +1 -1
  282. package/dist/adapters/http/middleware/built-in/error.mjs +9 -18
  283. package/dist/adapters/http/middleware/built-in/error.mjs.map +1 -1
  284. package/dist/adapters/http/middleware/built-in/index.d.ts +1 -0
  285. package/dist/adapters/http/middleware/built-in/index.d.ts.map +1 -1
  286. package/dist/adapters/http/middleware/built-in/index.mjs +5 -2
  287. package/dist/adapters/http/middleware/built-in/loggedin/module.d.ts +2 -2
  288. package/dist/adapters/http/middleware/built-in/loggedin/module.d.ts.map +1 -1
  289. package/dist/adapters/http/middleware/built-in/loggedin/module.mjs +3 -3
  290. package/dist/adapters/http/middleware/built-in/loggedin/module.mjs.map +1 -1
  291. package/dist/adapters/http/middleware/built-in/loggedin/user.d.ts +2 -2
  292. package/dist/adapters/http/middleware/built-in/loggedin/user.d.ts.map +1 -1
  293. package/dist/adapters/http/middleware/built-in/loggedin/user.mjs +4 -4
  294. package/dist/adapters/http/middleware/built-in/loggedin/user.mjs.map +1 -1
  295. package/dist/adapters/http/middleware/built-in/logger.d.ts.map +1 -1
  296. package/dist/adapters/http/middleware/built-in/logger.mjs +21 -29
  297. package/dist/adapters/http/middleware/built-in/logger.mjs.map +1 -1
  298. package/dist/adapters/http/middleware/built-in/prometheus.d.ts.map +1 -1
  299. package/dist/adapters/http/middleware/built-in/prometheus.mjs +2 -3
  300. package/dist/adapters/http/middleware/built-in/prometheus.mjs.map +1 -1
  301. package/dist/adapters/http/middleware/built-in/rate-limit.d.ts.map +1 -1
  302. package/dist/adapters/http/middleware/built-in/rate-limit.mjs +2 -2
  303. package/dist/adapters/http/middleware/built-in/rate-limit.mjs.map +1 -1
  304. package/dist/adapters/http/middleware/built-in/realm-resolver/factory.d.ts +4 -0
  305. package/dist/adapters/http/middleware/built-in/realm-resolver/factory.d.ts.map +1 -0
  306. package/dist/adapters/http/middleware/built-in/realm-resolver/factory.mjs +14 -0
  307. package/dist/adapters/http/middleware/built-in/realm-resolver/factory.mjs.map +1 -0
  308. package/dist/adapters/http/middleware/built-in/realm-resolver/index.d.ts +4 -0
  309. package/dist/adapters/http/middleware/built-in/realm-resolver/index.d.ts.map +1 -0
  310. package/dist/adapters/http/middleware/built-in/realm-resolver/index.mjs +3 -0
  311. package/dist/adapters/http/middleware/built-in/realm-resolver/module.d.ts +9 -0
  312. package/dist/adapters/http/middleware/built-in/realm-resolver/module.d.ts.map +1 -0
  313. package/dist/adapters/http/middleware/built-in/realm-resolver/module.mjs +26 -0
  314. package/dist/adapters/http/middleware/built-in/realm-resolver/module.mjs.map +1 -0
  315. package/dist/adapters/http/middleware/built-in/realm-resolver/types.d.ts +5 -0
  316. package/dist/adapters/http/middleware/built-in/realm-resolver/types.d.ts.map +1 -0
  317. package/dist/adapters/http/middleware/built-in/swagger.d.ts +3 -4
  318. package/dist/adapters/http/middleware/built-in/swagger.d.ts.map +1 -1
  319. package/dist/adapters/http/middleware/built-in/swagger.mjs +4 -16
  320. package/dist/adapters/http/middleware/built-in/swagger.mjs.map +1 -1
  321. package/dist/adapters/http/middleware/index.mjs +4 -2
  322. package/dist/adapters/http/request/helpers/actor.d.ts +3 -3
  323. package/dist/adapters/http/request/helpers/actor.d.ts.map +1 -1
  324. package/dist/adapters/http/request/helpers/actor.mjs +3 -3
  325. package/dist/adapters/http/request/helpers/actor.mjs.map +1 -1
  326. package/dist/adapters/http/request/helpers/body-realm-id.d.ts +1 -2
  327. package/dist/adapters/http/request/helpers/body-realm-id.d.ts.map +1 -1
  328. package/dist/adapters/http/request/helpers/body-realm-id.mjs +3 -4
  329. package/dist/adapters/http/request/helpers/body-realm-id.mjs.map +1 -1
  330. package/dist/adapters/http/request/helpers/identity.d.ts +4 -4
  331. package/dist/adapters/http/request/helpers/identity.d.ts.map +1 -1
  332. package/dist/adapters/http/request/helpers/identity.mjs +7 -8
  333. package/dist/adapters/http/request/helpers/identity.mjs.map +1 -1
  334. package/dist/adapters/http/request/helpers/index.d.ts +2 -0
  335. package/dist/adapters/http/request/helpers/index.d.ts.map +1 -1
  336. package/dist/adapters/http/request/helpers/index.mjs +4 -2
  337. package/dist/adapters/http/request/helpers/locations.d.ts +4 -0
  338. package/dist/adapters/http/request/helpers/locations.d.ts.map +1 -0
  339. package/dist/adapters/http/request/helpers/locations.mjs +28 -0
  340. package/dist/adapters/http/request/helpers/locations.mjs.map +1 -0
  341. package/dist/adapters/http/request/helpers/param-id.d.ts +5 -5
  342. package/dist/adapters/http/request/helpers/param-id.d.ts.map +1 -1
  343. package/dist/adapters/http/request/helpers/param-id.mjs +8 -9
  344. package/dist/adapters/http/request/helpers/param-id.mjs.map +1 -1
  345. package/dist/adapters/http/request/helpers/realm-id.d.ts +5 -0
  346. package/dist/adapters/http/request/helpers/realm-id.d.ts.map +1 -0
  347. package/dist/adapters/http/request/helpers/realm-id.mjs +19 -0
  348. package/dist/adapters/http/request/helpers/realm-id.mjs.map +1 -0
  349. package/dist/adapters/http/request/helpers/scopes.d.ts +3 -3
  350. package/dist/adapters/http/request/helpers/scopes.d.ts.map +1 -1
  351. package/dist/adapters/http/request/helpers/scopes.mjs +4 -5
  352. package/dist/adapters/http/request/helpers/scopes.mjs.map +1 -1
  353. package/dist/adapters/http/request/helpers/token.d.ts +3 -3
  354. package/dist/adapters/http/request/helpers/token.d.ts.map +1 -1
  355. package/dist/adapters/http/request/helpers/token.mjs +4 -5
  356. package/dist/adapters/http/request/helpers/token.mjs.map +1 -1
  357. package/dist/adapters/http/request/index.mjs +4 -2
  358. package/dist/adapters/http/request/permission/helper.d.ts +3 -3
  359. package/dist/adapters/http/request/permission/helper.d.ts.map +1 -1
  360. package/dist/adapters/http/request/permission/helper.mjs +4 -5
  361. package/dist/adapters/http/request/permission/helper.mjs.map +1 -1
  362. package/dist/adapters/http/request/permission/module.d.ts +3 -3
  363. package/dist/adapters/http/request/permission/module.d.ts.map +1 -1
  364. package/dist/adapters/http/request/permission/module.mjs +5 -5
  365. package/dist/adapters/http/request/permission/module.mjs.map +1 -1
  366. package/dist/adapters/shared/ldap/factory.mjs.map +1 -1
  367. package/dist/adapters/shared/ldap/module.mjs.map +1 -1
  368. package/dist/app/builder.d.ts +1 -2
  369. package/dist/app/builder.d.ts.map +1 -1
  370. package/dist/app/builder.mjs +0 -5
  371. package/dist/app/builder.mjs.map +1 -1
  372. package/dist/app/factory.d.ts.map +1 -1
  373. package/dist/app/factory.mjs +1 -1
  374. package/dist/app/factory.mjs.map +1 -1
  375. package/dist/app/index.mjs +1 -2
  376. package/dist/app/modules/authentication/constants.mjs.map +1 -1
  377. package/dist/app/modules/authentication/module.mjs.map +1 -1
  378. package/dist/app/modules/authentication/repositories/session.mjs.map +1 -1
  379. package/dist/app/modules/cache/constants.mjs.map +1 -1
  380. package/dist/app/modules/cache/module.mjs.map +1 -1
  381. package/dist/app/modules/components/module.mjs.map +1 -1
  382. package/dist/app/modules/config/constants.mjs.map +1 -1
  383. package/dist/app/modules/config/module.mjs.map +1 -1
  384. package/dist/app/modules/config/normalize.mjs.map +1 -1
  385. package/dist/app/modules/config/parse.mjs.map +1 -1
  386. package/dist/app/modules/config/read/env.mjs.map +1 -1
  387. package/dist/app/modules/config/read/fs.mjs.map +1 -1
  388. package/dist/app/modules/config/read/module.mjs.map +1 -1
  389. package/dist/app/modules/config/types.d.ts +2 -2
  390. package/dist/app/modules/config/types.d.ts.map +1 -1
  391. package/dist/app/modules/constants.d.ts +0 -1
  392. package/dist/app/modules/constants.d.ts.map +1 -1
  393. package/dist/app/modules/constants.mjs +0 -1
  394. package/dist/app/modules/constants.mjs.map +1 -1
  395. package/dist/app/modules/database/constants.mjs.map +1 -1
  396. package/dist/app/modules/database/module.mjs.map +1 -1
  397. package/dist/app/modules/database/repositories/bindings.mjs.map +1 -1
  398. package/dist/app/modules/database/repositories/client/repository.d.ts +2 -1
  399. package/dist/app/modules/database/repositories/client/repository.d.ts.map +1 -1
  400. package/dist/app/modules/database/repositories/client/repository.mjs.map +1 -1
  401. package/dist/app/modules/database/repositories/client-permission/repository.d.ts +1 -1
  402. package/dist/app/modules/database/repositories/client-permission/repository.d.ts.map +1 -1
  403. package/dist/app/modules/database/repositories/client-permission/repository.mjs.map +1 -1
  404. package/dist/app/modules/database/repositories/client-role/repository.d.ts +1 -1
  405. package/dist/app/modules/database/repositories/client-role/repository.d.ts.map +1 -1
  406. package/dist/app/modules/database/repositories/client-role/repository.mjs.map +1 -1
  407. package/dist/app/modules/database/repositories/client-scope/repository.d.ts +1 -1
  408. package/dist/app/modules/database/repositories/client-scope/repository.d.ts.map +1 -1
  409. package/dist/app/modules/database/repositories/client-scope/repository.mjs.map +1 -1
  410. package/dist/app/modules/database/repositories/helpers.mjs.map +1 -1
  411. package/dist/app/modules/database/repositories/identity-provider/repository.d.ts +2 -1
  412. package/dist/app/modules/database/repositories/identity-provider/repository.d.ts.map +1 -1
  413. package/dist/app/modules/database/repositories/identity-provider/repository.mjs.map +1 -1
  414. package/dist/app/modules/database/repositories/identity-provider-role-mapping/repository.d.ts +2 -1
  415. package/dist/app/modules/database/repositories/identity-provider-role-mapping/repository.d.ts.map +1 -1
  416. package/dist/app/modules/database/repositories/identity-provider-role-mapping/repository.mjs.map +1 -1
  417. package/dist/app/modules/database/repositories/permission/repository.d.ts +2 -1
  418. package/dist/app/modules/database/repositories/permission/repository.d.ts.map +1 -1
  419. package/dist/app/modules/database/repositories/permission/repository.mjs.map +1 -1
  420. package/dist/app/modules/database/repositories/permission-policy/repository.d.ts +2 -1
  421. package/dist/app/modules/database/repositories/permission-policy/repository.d.ts.map +1 -1
  422. package/dist/app/modules/database/repositories/permission-policy/repository.mjs.map +1 -1
  423. package/dist/app/modules/database/repositories/permission-provider/module.mjs.map +1 -1
  424. package/dist/app/modules/database/repositories/policy/repository.d.ts +2 -1
  425. package/dist/app/modules/database/repositories/policy/repository.d.ts.map +1 -1
  426. package/dist/app/modules/database/repositories/policy/repository.mjs.map +1 -1
  427. package/dist/app/modules/database/repositories/realm/repository.d.ts +2 -1
  428. package/dist/app/modules/database/repositories/realm/repository.d.ts.map +1 -1
  429. package/dist/app/modules/database/repositories/realm/repository.mjs.map +1 -1
  430. package/dist/app/modules/database/repositories/robot/repository.d.ts +2 -1
  431. package/dist/app/modules/database/repositories/robot/repository.d.ts.map +1 -1
  432. package/dist/app/modules/database/repositories/robot/repository.mjs.map +1 -1
  433. package/dist/app/modules/database/repositories/robot-permission/repository.d.ts +1 -1
  434. package/dist/app/modules/database/repositories/robot-permission/repository.d.ts.map +1 -1
  435. package/dist/app/modules/database/repositories/robot-permission/repository.mjs.map +1 -1
  436. package/dist/app/modules/database/repositories/robot-role/repository.d.ts +2 -1
  437. package/dist/app/modules/database/repositories/robot-role/repository.d.ts.map +1 -1
  438. package/dist/app/modules/database/repositories/robot-role/repository.mjs.map +1 -1
  439. package/dist/app/modules/database/repositories/role/repository.d.ts +2 -1
  440. package/dist/app/modules/database/repositories/role/repository.d.ts.map +1 -1
  441. package/dist/app/modules/database/repositories/role/repository.mjs.map +1 -1
  442. package/dist/app/modules/database/repositories/role-attribute/repository.d.ts +2 -1
  443. package/dist/app/modules/database/repositories/role-attribute/repository.d.ts.map +1 -1
  444. package/dist/app/modules/database/repositories/role-attribute/repository.mjs.map +1 -1
  445. package/dist/app/modules/database/repositories/role-permission/repository.d.ts +2 -1
  446. package/dist/app/modules/database/repositories/role-permission/repository.d.ts.map +1 -1
  447. package/dist/app/modules/database/repositories/role-permission/repository.mjs.map +1 -1
  448. package/dist/app/modules/database/repositories/scope/repository.d.ts +2 -1
  449. package/dist/app/modules/database/repositories/scope/repository.d.ts.map +1 -1
  450. package/dist/app/modules/database/repositories/scope/repository.mjs.map +1 -1
  451. package/dist/app/modules/database/repositories/user/repository.d.ts +2 -1
  452. package/dist/app/modules/database/repositories/user/repository.d.ts.map +1 -1
  453. package/dist/app/modules/database/repositories/user/repository.mjs.map +1 -1
  454. package/dist/app/modules/database/repositories/user-attribute/repository.d.ts +2 -1
  455. package/dist/app/modules/database/repositories/user-attribute/repository.d.ts.map +1 -1
  456. package/dist/app/modules/database/repositories/user-attribute/repository.mjs.map +1 -1
  457. package/dist/app/modules/database/repositories/user-permission/repository.d.ts +2 -1
  458. package/dist/app/modules/database/repositories/user-permission/repository.d.ts.map +1 -1
  459. package/dist/app/modules/database/repositories/user-permission/repository.mjs.map +1 -1
  460. package/dist/app/modules/database/repositories/user-role/repository.d.ts +2 -1
  461. package/dist/app/modules/database/repositories/user-role/repository.d.ts.map +1 -1
  462. package/dist/app/modules/database/repositories/user-role/repository.mjs.map +1 -1
  463. package/dist/app/modules/http/constants.d.ts +3 -2
  464. package/dist/app/modules/http/constants.d.ts.map +1 -1
  465. package/dist/app/modules/http/constants.mjs.map +1 -1
  466. package/dist/app/modules/http/module.d.ts +2 -2
  467. package/dist/app/modules/http/module.d.ts.map +1 -1
  468. package/dist/app/modules/http/module.mjs +10 -17
  469. package/dist/app/modules/http/module.mjs.map +1 -1
  470. package/dist/app/modules/http/modules/controller.d.ts.map +1 -1
  471. package/dist/app/modules/http/modules/controller.mjs +59 -70
  472. package/dist/app/modules/http/modules/controller.mjs.map +1 -1
  473. package/dist/app/modules/http/modules/middleware.d.ts +1 -0
  474. package/dist/app/modules/http/modules/middleware.d.ts.map +1 -1
  475. package/dist/app/modules/http/modules/middleware.mjs +13 -6
  476. package/dist/app/modules/http/modules/middleware.mjs.map +1 -1
  477. package/dist/app/modules/identity/constants.mjs.map +1 -1
  478. package/dist/app/modules/identity/module.mjs.map +1 -1
  479. package/dist/app/modules/identity/repositories/client.mjs.map +1 -1
  480. package/dist/app/modules/identity/repositories/provider/account/module.mjs.map +1 -1
  481. package/dist/app/modules/identity/repositories/provider/mapper/attribute.mjs.map +1 -1
  482. package/dist/app/modules/identity/repositories/provider/mapper/permission.mjs.map +1 -1
  483. package/dist/app/modules/identity/repositories/provider/mapper/role.mjs.map +1 -1
  484. package/dist/app/modules/identity/repositories/robot.mjs.map +1 -1
  485. package/dist/app/modules/identity/repositories/user.mjs.map +1 -1
  486. package/dist/app/modules/index.d.ts +0 -1
  487. package/dist/app/modules/index.d.ts.map +1 -1
  488. package/dist/app/modules/index.mjs +1 -3
  489. package/dist/app/modules/ldap/constants.mjs.map +1 -1
  490. package/dist/app/modules/ldap/module.mjs.map +1 -1
  491. package/dist/app/modules/logger/constants.mjs.map +1 -1
  492. package/dist/app/modules/logger/module.mjs.map +1 -1
  493. package/dist/app/modules/mail/adapter/smtp/module.mjs.map +1 -1
  494. package/dist/app/modules/mail/adapter/smtp/smtp.mjs.map +1 -1
  495. package/dist/app/modules/mail/adapter/void.mjs.map +1 -1
  496. package/dist/app/modules/mail/constants.mjs.map +1 -1
  497. package/dist/app/modules/mail/module.mjs.map +1 -1
  498. package/dist/app/modules/oauth2/constants.mjs.map +1 -1
  499. package/dist/app/modules/oauth2/module.mjs.map +1 -1
  500. package/dist/app/modules/oauth2/repositories/authorize/code/repository.mjs.map +1 -1
  501. package/dist/app/modules/oauth2/repositories/authorize/state/repository.mjs.map +1 -1
  502. package/dist/app/modules/oauth2/repositories/client/repository.mjs.map +1 -1
  503. package/dist/app/modules/oauth2/repositories/key/repository.mjs.map +1 -1
  504. package/dist/app/modules/oauth2/repositories/scope/repository.mjs.map +1 -1
  505. package/dist/app/modules/oauth2/repositories/token/repository.mjs.map +1 -1
  506. package/dist/app/modules/provisioning/module.mjs.map +1 -1
  507. package/dist/app/modules/provisioning/sources/composite/module.mjs.map +1 -1
  508. package/dist/app/modules/provisioning/sources/default/module.mjs.map +1 -1
  509. package/dist/app/modules/provisioning/sources/file/module.mjs.map +1 -1
  510. package/dist/app/modules/runtime/module.d.ts.map +1 -1
  511. package/dist/app/modules/runtime/module.mjs +3 -1
  512. package/dist/app/modules/runtime/module.mjs.map +1 -1
  513. package/dist/cli/commands/healthcheck.mjs +1 -1
  514. package/dist/cli/commands/healthcheck.mjs.map +1 -1
  515. package/dist/cli/commands/index.d.ts +0 -1
  516. package/dist/cli/commands/index.d.ts.map +1 -1
  517. package/dist/cli/commands/index.mjs +1 -2
  518. package/dist/cli/commands/migration.mjs.map +1 -1
  519. package/dist/cli/commands/reset.mjs.map +1 -1
  520. package/dist/cli/commands/start.d.ts.map +1 -1
  521. package/dist/cli/commands/start.mjs +22 -1
  522. package/dist/cli/commands/start.mjs.map +1 -1
  523. package/dist/cli/index.mjs.map +1 -1
  524. package/dist/cli/module.d.ts.map +1 -1
  525. package/dist/cli/module.mjs +1 -3
  526. package/dist/cli/module.mjs.map +1 -1
  527. package/dist/components/database/unique-entries/factory.mjs.map +1 -1
  528. package/dist/components/database/unique-entries/module.mjs.map +1 -1
  529. package/dist/components/oauth2-cleaner/module.mjs.map +1 -1
  530. package/dist/core/authentication/base.mjs.map +1 -1
  531. package/dist/core/authentication/credential/entities/client/module.mjs.map +1 -1
  532. package/dist/core/authentication/credential/entities/robot/module.mjs.map +1 -1
  533. package/dist/core/authentication/credential/entities/user/module.mjs.map +1 -1
  534. package/dist/core/authentication/entities/client/module.d.ts.map +1 -1
  535. package/dist/core/authentication/entities/client/module.mjs +7 -5
  536. package/dist/core/authentication/entities/client/module.mjs.map +1 -1
  537. package/dist/core/authentication/entities/robot/module.d.ts.map +1 -1
  538. package/dist/core/authentication/entities/robot/module.mjs +5 -4
  539. package/dist/core/authentication/entities/robot/module.mjs.map +1 -1
  540. package/dist/core/authentication/entities/user/module.d.ts.map +1 -1
  541. package/dist/core/authentication/entities/user/module.mjs +5 -4
  542. package/dist/core/authentication/entities/user/module.mjs.map +1 -1
  543. package/dist/core/authentication/module.mjs.map +1 -1
  544. package/dist/core/authentication/session/module.mjs.map +1 -1
  545. package/dist/core/entities/client/service.d.ts +2 -3
  546. package/dist/core/entities/client/service.d.ts.map +1 -1
  547. package/dist/core/entities/client/service.mjs +8 -8
  548. package/dist/core/entities/client/service.mjs.map +1 -1
  549. package/dist/core/entities/client/types.d.ts +1 -2
  550. package/dist/core/entities/client/types.d.ts.map +1 -1
  551. package/dist/core/entities/client-permission/service.d.ts +2 -3
  552. package/dist/core/entities/client-permission/service.d.ts.map +1 -1
  553. package/dist/core/entities/client-permission/service.mjs +8 -7
  554. package/dist/core/entities/client-permission/service.mjs.map +1 -1
  555. package/dist/core/entities/client-permission/types.d.ts +1 -2
  556. package/dist/core/entities/client-permission/types.d.ts.map +1 -1
  557. package/dist/core/entities/client-role/service.d.ts +2 -3
  558. package/dist/core/entities/client-role/service.d.ts.map +1 -1
  559. package/dist/core/entities/client-role/service.mjs +9 -8
  560. package/dist/core/entities/client-role/service.mjs.map +1 -1
  561. package/dist/core/entities/client-role/types.d.ts +1 -2
  562. package/dist/core/entities/client-role/types.d.ts.map +1 -1
  563. package/dist/core/entities/client-scope/service.d.ts +2 -3
  564. package/dist/core/entities/client-scope/service.d.ts.map +1 -1
  565. package/dist/core/entities/client-scope/service.mjs +7 -6
  566. package/dist/core/entities/client-scope/service.mjs.map +1 -1
  567. package/dist/core/entities/client-scope/types.d.ts +1 -2
  568. package/dist/core/entities/client-scope/types.d.ts.map +1 -1
  569. package/dist/core/entities/identity-provider/types.d.ts +1 -1
  570. package/dist/core/entities/identity-provider/types.d.ts.map +1 -1
  571. package/dist/core/entities/identity-provider-role-mapping/service.d.ts +2 -3
  572. package/dist/core/entities/identity-provider-role-mapping/service.d.ts.map +1 -1
  573. package/dist/core/entities/identity-provider-role-mapping/service.mjs +10 -9
  574. package/dist/core/entities/identity-provider-role-mapping/service.mjs.map +1 -1
  575. package/dist/core/entities/identity-provider-role-mapping/types.d.ts +1 -2
  576. package/dist/core/entities/identity-provider-role-mapping/types.d.ts.map +1 -1
  577. package/dist/core/entities/index.d.ts +0 -3
  578. package/dist/core/entities/index.d.ts.map +1 -1
  579. package/dist/core/entities/index.mjs +1 -2
  580. package/dist/core/entities/permission/service.d.ts +2 -3
  581. package/dist/core/entities/permission/service.d.ts.map +1 -1
  582. package/dist/core/entities/permission/service.mjs +8 -9
  583. package/dist/core/entities/permission/service.mjs.map +1 -1
  584. package/dist/core/entities/permission/types.d.ts +1 -2
  585. package/dist/core/entities/permission/types.d.ts.map +1 -1
  586. package/dist/core/entities/permission-policy/service.d.ts +2 -3
  587. package/dist/core/entities/permission-policy/service.d.ts.map +1 -1
  588. package/dist/core/entities/permission-policy/service.mjs +7 -6
  589. package/dist/core/entities/permission-policy/service.mjs.map +1 -1
  590. package/dist/core/entities/permission-policy/types.d.ts +1 -2
  591. package/dist/core/entities/permission-policy/types.d.ts.map +1 -1
  592. package/dist/core/entities/policy/attributes-validator.mjs.map +1 -1
  593. package/dist/core/entities/policy/service.d.ts +2 -3
  594. package/dist/core/entities/policy/service.d.ts.map +1 -1
  595. package/dist/core/entities/policy/service.mjs +8 -8
  596. package/dist/core/entities/policy/service.mjs.map +1 -1
  597. package/dist/core/entities/policy/types.d.ts +1 -2
  598. package/dist/core/entities/policy/types.d.ts.map +1 -1
  599. package/dist/core/entities/realm/service.d.ts +2 -3
  600. package/dist/core/entities/realm/service.d.ts.map +1 -1
  601. package/dist/core/entities/realm/service.mjs +8 -8
  602. package/dist/core/entities/realm/service.mjs.map +1 -1
  603. package/dist/core/entities/realm/types.d.ts +1 -2
  604. package/dist/core/entities/realm/types.d.ts.map +1 -1
  605. package/dist/core/entities/robot/service.d.ts +2 -3
  606. package/dist/core/entities/robot/service.d.ts.map +1 -1
  607. package/dist/core/entities/robot/service.mjs +8 -8
  608. package/dist/core/entities/robot/service.mjs.map +1 -1
  609. package/dist/core/entities/robot/types.d.ts +1 -2
  610. package/dist/core/entities/robot/types.d.ts.map +1 -1
  611. package/dist/core/entities/robot-permission/service.d.ts +2 -3
  612. package/dist/core/entities/robot-permission/service.d.ts.map +1 -1
  613. package/dist/core/entities/robot-permission/service.mjs +8 -7
  614. package/dist/core/entities/robot-permission/service.mjs.map +1 -1
  615. package/dist/core/entities/robot-permission/types.d.ts +1 -2
  616. package/dist/core/entities/robot-permission/types.d.ts.map +1 -1
  617. package/dist/core/entities/robot-role/service.d.ts +2 -3
  618. package/dist/core/entities/robot-role/service.d.ts.map +1 -1
  619. package/dist/core/entities/robot-role/service.mjs +9 -8
  620. package/dist/core/entities/robot-role/service.mjs.map +1 -1
  621. package/dist/core/entities/robot-role/types.d.ts +1 -2
  622. package/dist/core/entities/robot-role/types.d.ts.map +1 -1
  623. package/dist/core/entities/role/service.d.ts +2 -3
  624. package/dist/core/entities/role/service.d.ts.map +1 -1
  625. package/dist/core/entities/role/service.mjs +8 -8
  626. package/dist/core/entities/role/service.mjs.map +1 -1
  627. package/dist/core/entities/role/types.d.ts +1 -2
  628. package/dist/core/entities/role/types.d.ts.map +1 -1
  629. package/dist/core/entities/role-attribute/service.d.ts +2 -3
  630. package/dist/core/entities/role-attribute/service.d.ts.map +1 -1
  631. package/dist/core/entities/role-attribute/service.mjs +5 -5
  632. package/dist/core/entities/role-attribute/service.mjs.map +1 -1
  633. package/dist/core/entities/role-attribute/types.d.ts +1 -2
  634. package/dist/core/entities/role-attribute/types.d.ts.map +1 -1
  635. package/dist/core/entities/role-permission/service.d.ts +2 -3
  636. package/dist/core/entities/role-permission/service.d.ts.map +1 -1
  637. package/dist/core/entities/role-permission/service.mjs +8 -7
  638. package/dist/core/entities/role-permission/service.mjs.map +1 -1
  639. package/dist/core/entities/role-permission/types.d.ts +1 -2
  640. package/dist/core/entities/role-permission/types.d.ts.map +1 -1
  641. package/dist/core/entities/scope/service.d.ts +2 -3
  642. package/dist/core/entities/scope/service.d.ts.map +1 -1
  643. package/dist/core/entities/scope/service.mjs +8 -8
  644. package/dist/core/entities/scope/service.mjs.map +1 -1
  645. package/dist/core/entities/scope/types.d.ts +1 -2
  646. package/dist/core/entities/scope/types.d.ts.map +1 -1
  647. package/dist/core/entities/user/service.d.ts +2 -3
  648. package/dist/core/entities/user/service.d.ts.map +1 -1
  649. package/dist/core/entities/user/service.mjs +8 -8
  650. package/dist/core/entities/user/service.mjs.map +1 -1
  651. package/dist/core/entities/user/types.d.ts +1 -2
  652. package/dist/core/entities/user/types.d.ts.map +1 -1
  653. package/dist/core/entities/user-attribute/service.d.ts +2 -3
  654. package/dist/core/entities/user-attribute/service.d.ts.map +1 -1
  655. package/dist/core/entities/user-attribute/service.mjs +8 -8
  656. package/dist/core/entities/user-attribute/service.mjs.map +1 -1
  657. package/dist/core/entities/user-attribute/types.d.ts +1 -2
  658. package/dist/core/entities/user-attribute/types.d.ts.map +1 -1
  659. package/dist/core/entities/user-permission/service.d.ts +2 -3
  660. package/dist/core/entities/user-permission/service.d.ts.map +1 -1
  661. package/dist/core/entities/user-permission/service.mjs +8 -7
  662. package/dist/core/entities/user-permission/service.mjs.map +1 -1
  663. package/dist/core/entities/user-permission/types.d.ts +1 -2
  664. package/dist/core/entities/user-permission/types.d.ts.map +1 -1
  665. package/dist/core/entities/user-role/service.d.ts +2 -3
  666. package/dist/core/entities/user-role/service.d.ts.map +1 -1
  667. package/dist/core/entities/user-role/service.mjs +9 -8
  668. package/dist/core/entities/user-role/service.mjs.map +1 -1
  669. package/dist/core/entities/user-role/types.d.ts +1 -2
  670. package/dist/core/entities/user-role/types.d.ts.map +1 -1
  671. package/dist/core/identity/index.d.ts +1 -0
  672. package/dist/core/identity/index.d.ts.map +1 -1
  673. package/dist/core/identity/index.mjs +4 -1
  674. package/dist/core/identity/password-recovery/check.d.ts +7 -0
  675. package/dist/core/identity/password-recovery/check.d.ts.map +1 -0
  676. package/dist/core/identity/password-recovery/check.mjs +24 -0
  677. package/dist/core/identity/password-recovery/check.mjs.map +1 -0
  678. package/dist/core/identity/password-recovery/disabled.d.ts +6 -0
  679. package/dist/core/identity/password-recovery/disabled.d.ts.map +1 -0
  680. package/dist/core/identity/password-recovery/disabled.mjs +16 -0
  681. package/dist/core/identity/password-recovery/disabled.mjs.map +1 -0
  682. package/dist/core/identity/password-recovery/email-verification-required.d.ts +6 -0
  683. package/dist/core/identity/password-recovery/email-verification-required.d.ts.map +1 -0
  684. package/dist/core/identity/password-recovery/email-verification-required.mjs +16 -0
  685. package/dist/core/identity/password-recovery/email-verification-required.mjs.map +1 -0
  686. package/dist/core/identity/password-recovery/service.d.ts.map +1 -1
  687. package/dist/core/identity/password-recovery/service.mjs +10 -7
  688. package/dist/core/identity/password-recovery/service.mjs.map +1 -1
  689. package/dist/core/identity/password-recovery/token-expired.d.ts +6 -0
  690. package/dist/core/identity/password-recovery/token-expired.d.ts.map +1 -0
  691. package/dist/core/identity/password-recovery/token-expired.mjs +16 -0
  692. package/dist/core/identity/password-recovery/token-expired.mjs.map +1 -0
  693. package/dist/core/identity/permission/checker/index.d.ts +3 -0
  694. package/dist/core/identity/permission/checker/index.d.ts.map +1 -0
  695. package/dist/core/identity/permission/checker/index.mjs +2 -0
  696. package/dist/core/identity/permission/checker/service.d.ts +10 -0
  697. package/dist/core/identity/permission/checker/service.d.ts.map +1 -0
  698. package/dist/core/identity/permission/checker/service.mjs +55 -0
  699. package/dist/core/identity/permission/checker/service.mjs.map +1 -0
  700. package/dist/core/identity/permission/checker/types.d.ts +42 -0
  701. package/dist/core/identity/permission/checker/types.d.ts.map +1 -0
  702. package/dist/core/identity/permission/identity-policy-data.d.ts +4 -0
  703. package/dist/core/identity/permission/identity-policy-data.d.ts.map +1 -0
  704. package/dist/core/identity/permission/identity-policy-data.mjs +23 -0
  705. package/dist/core/identity/permission/identity-policy-data.mjs.map +1 -0
  706. package/dist/core/identity/permission/index.d.ts +1 -0
  707. package/dist/core/identity/permission/index.d.ts.map +1 -1
  708. package/dist/core/identity/permission/index.mjs +3 -1
  709. package/dist/core/identity/permission/module.mjs.map +1 -1
  710. package/dist/core/identity/policy/checker/index.d.ts +3 -0
  711. package/dist/core/identity/policy/checker/index.d.ts.map +1 -0
  712. package/dist/core/identity/policy/checker/index.mjs +2 -0
  713. package/dist/core/identity/policy/checker/service.d.ts +10 -0
  714. package/dist/core/identity/policy/checker/service.d.ts.map +1 -0
  715. package/dist/core/identity/policy/checker/service.mjs +46 -0
  716. package/dist/core/identity/policy/checker/service.mjs.map +1 -0
  717. package/dist/core/identity/policy/checker/types.d.ts +40 -0
  718. package/dist/core/identity/policy/checker/types.d.ts.map +1 -0
  719. package/dist/core/identity/policy/index.d.ts +2 -0
  720. package/dist/core/identity/policy/index.d.ts.map +1 -0
  721. package/dist/core/identity/policy/index.mjs +3 -0
  722. package/dist/core/identity/provider/account/module.d.ts.map +1 -1
  723. package/dist/core/identity/provider/account/module.mjs +2 -2
  724. package/dist/core/identity/provider/account/module.mjs.map +1 -1
  725. package/dist/core/identity/provider/authentication/constants.mjs.map +1 -1
  726. package/dist/core/identity/provider/authentication/factory.mjs.map +1 -1
  727. package/dist/core/identity/provider/authentication/presets/facebook.mjs.map +1 -1
  728. package/dist/core/identity/provider/authentication/presets/github.mjs.map +1 -1
  729. package/dist/core/identity/provider/authentication/presets/google.mjs.map +1 -1
  730. package/dist/core/identity/provider/authentication/presets/instagram.mjs.map +1 -1
  731. package/dist/core/identity/provider/authentication/presets/paypal.mjs.map +1 -1
  732. package/dist/core/identity/provider/authentication/protocols/ldap/collection.d.ts.map +1 -1
  733. package/dist/core/identity/provider/authentication/protocols/ldap/collection.mjs +3 -2
  734. package/dist/core/identity/provider/authentication/protocols/ldap/collection.mjs.map +1 -1
  735. package/dist/core/identity/provider/authentication/protocols/ldap/module.d.ts.map +1 -1
  736. package/dist/core/identity/provider/authentication/protocols/ldap/module.mjs +7 -4
  737. package/dist/core/identity/provider/authentication/protocols/ldap/module.mjs.map +1 -1
  738. package/dist/core/identity/provider/authentication/protocols/oauth2/module.mjs.map +1 -1
  739. package/dist/core/identity/provider/authentication/protocols/open-id/module.mjs.map +1 -1
  740. package/dist/core/identity/provider/mapper/attributes/module.mjs.map +1 -1
  741. package/dist/core/identity/provider/mapper/base.mjs.map +1 -1
  742. package/dist/core/identity/provider/mapper/permission/module.mjs.map +1 -1
  743. package/dist/core/identity/provider/mapper/role/module.mjs.map +1 -1
  744. package/dist/core/identity/registration/check.d.ts +3 -0
  745. package/dist/core/identity/registration/check.d.ts.map +1 -0
  746. package/dist/core/identity/registration/check.mjs +12 -0
  747. package/dist/core/identity/registration/check.mjs.map +1 -0
  748. package/dist/core/identity/registration/error.d.ts +6 -0
  749. package/dist/core/identity/registration/error.d.ts.map +1 -0
  750. package/dist/core/identity/registration/error.mjs +16 -0
  751. package/dist/core/identity/registration/error.mjs.map +1 -0
  752. package/dist/core/identity/registration/service.d.ts.map +1 -1
  753. package/dist/core/identity/registration/service.mjs +4 -3
  754. package/dist/core/identity/registration/service.mjs.map +1 -1
  755. package/dist/core/identity/resolver/entities/ldap/module.mjs.map +1 -1
  756. package/dist/core/identity/resolver/module.mjs.map +1 -1
  757. package/dist/core/identity/role/module.mjs.map +1 -1
  758. package/dist/core/index.mjs +5 -4
  759. package/dist/core/oauth2/authorization/code/issuer/module.mjs.map +1 -1
  760. package/dist/core/oauth2/authorization/code/verifier/module.mjs +8 -8
  761. package/dist/core/oauth2/authorization/code/verifier/module.mjs.map +1 -1
  762. package/dist/core/oauth2/authorization/code-request/validator.mjs +2 -2
  763. package/dist/core/oauth2/authorization/code-request/validator.mjs.map +1 -1
  764. package/dist/core/oauth2/authorization/code-request/verifier/module.d.ts.map +1 -1
  765. package/dist/core/oauth2/authorization/code-request/verifier/module.mjs +8 -8
  766. package/dist/core/oauth2/authorization/code-request/verifier/module.mjs.map +1 -1
  767. package/dist/core/oauth2/authorization/helpers.mjs.map +1 -1
  768. package/dist/core/oauth2/authorization/module.d.ts.map +1 -1
  769. package/dist/core/oauth2/authorization/module.mjs +4 -4
  770. package/dist/core/oauth2/authorization/module.mjs.map +1 -1
  771. package/dist/core/oauth2/authorization/state/module.mjs +4 -4
  772. package/dist/core/oauth2/authorization/state/module.mjs.map +1 -1
  773. package/dist/core/oauth2/client/authenticator.mjs +6 -6
  774. package/dist/core/oauth2/client/authenticator.mjs.map +1 -1
  775. package/dist/core/oauth2/grant-types/authorize.mjs.map +1 -1
  776. package/dist/core/oauth2/grant-types/base.mjs.map +1 -1
  777. package/dist/core/oauth2/grant-types/client-credentials.mjs.map +1 -1
  778. package/dist/core/oauth2/grant-types/identity.mjs.map +1 -1
  779. package/dist/core/oauth2/grant-types/password.mjs.map +1 -1
  780. package/dist/core/oauth2/grant-types/refresh-token.mjs.map +1 -1
  781. package/dist/core/oauth2/grant-types/robot-credentials.mjs.map +1 -1
  782. package/dist/core/oauth2/helpers/error.d.ts +8 -0
  783. package/dist/core/oauth2/helpers/error.d.ts.map +1 -0
  784. package/dist/core/oauth2/helpers/error.mjs +26 -0
  785. package/dist/core/oauth2/helpers/error.mjs.map +1 -0
  786. package/dist/core/oauth2/helpers/index.d.ts +1 -1
  787. package/dist/core/oauth2/helpers/index.mjs +1 -1
  788. package/dist/core/oauth2/openid/claims.mjs.map +1 -1
  789. package/dist/core/oauth2/response/bearer.mjs.map +1 -1
  790. package/dist/core/oauth2/scope/resolver.mjs.map +1 -1
  791. package/dist/core/oauth2/token/issuer/access/module.mjs.map +1 -1
  792. package/dist/core/oauth2/token/issuer/base.mjs.map +1 -1
  793. package/dist/core/oauth2/token/issuer/open-id/module.mjs.map +1 -1
  794. package/dist/core/oauth2/token/issuer/refresh/module.mjs.map +1 -1
  795. package/dist/core/oauth2/token/revoker/module.mjs.map +1 -1
  796. package/dist/core/oauth2/token/signer/module.mjs.map +1 -1
  797. package/dist/core/oauth2/token/verifier/module.mjs.map +1 -1
  798. package/dist/core/provisioning/entities/client/relations-validator.mjs.map +1 -1
  799. package/dist/core/provisioning/entities/client/validator.mjs.map +1 -1
  800. package/dist/core/provisioning/entities/permission/validator.mjs.map +1 -1
  801. package/dist/core/provisioning/entities/realm/relations-validator.mjs.map +1 -1
  802. package/dist/core/provisioning/entities/realm/validator.mjs.map +1 -1
  803. package/dist/core/provisioning/entities/robot/relations-validator.mjs.map +1 -1
  804. package/dist/core/provisioning/entities/robot/validator.mjs.map +1 -1
  805. package/dist/core/provisioning/entities/role/relations-validator.mjs.map +1 -1
  806. package/dist/core/provisioning/entities/role/validator.mjs.map +1 -1
  807. package/dist/core/provisioning/entities/root/validator.mjs.map +1 -1
  808. package/dist/core/provisioning/entities/scope/validator.mjs.map +1 -1
  809. package/dist/core/provisioning/entities/user/relations-validator.mjs.map +1 -1
  810. package/dist/core/provisioning/entities/user/validator.mjs.map +1 -1
  811. package/dist/core/provisioning/strategy/normalize.mjs.map +1 -1
  812. package/dist/core/provisioning/strategy/validator.mjs.map +1 -1
  813. package/dist/core/provisioning/synchronizer/base.mjs.map +1 -1
  814. package/dist/core/provisioning/synchronizer/client/module.mjs.map +1 -1
  815. package/dist/core/provisioning/synchronizer/entity-resolver.d.ts +1 -1
  816. package/dist/core/provisioning/synchronizer/entity-resolver.d.ts.map +1 -1
  817. package/dist/core/provisioning/synchronizer/entity-resolver.mjs.map +1 -1
  818. package/dist/core/provisioning/synchronizer/junction-synchronizer.d.ts +1 -1
  819. package/dist/core/provisioning/synchronizer/junction-synchronizer.d.ts.map +1 -1
  820. package/dist/core/provisioning/synchronizer/junction-synchronizer.mjs.map +1 -1
  821. package/dist/core/provisioning/synchronizer/permission/module.mjs.map +1 -1
  822. package/dist/core/provisioning/synchronizer/policy/module.mjs.map +1 -1
  823. package/dist/core/provisioning/synchronizer/realm/module.mjs.map +1 -1
  824. package/dist/core/provisioning/synchronizer/robot/module.mjs.map +1 -1
  825. package/dist/core/provisioning/synchronizer/role/module.mjs.map +1 -1
  826. package/dist/core/provisioning/synchronizer/root/module.mjs.map +1 -1
  827. package/dist/core/provisioning/synchronizer/scope/module.mjs.map +1 -1
  828. package/dist/core/provisioning/synchronizer/user/module.mjs.map +1 -1
  829. package/dist/core/security/policy/engine.mjs.map +1 -1
  830. package/dist/core/security/policy/evaluator.mjs.map +1 -1
  831. package/dist/index.mjs +7 -7
  832. package/dist/path.mjs.map +1 -1
  833. package/dist/swagger.json +9413 -2773
  834. package/dist/ui/client/.vite/ssr-manifest.json +33 -113
  835. package/dist/ui/client/assets/index-BdPtpN2t.js +66 -0
  836. package/dist/ui/client/index.html +1 -1
  837. package/dist/ui/server/server.js +1483 -1066
  838. package/dist/utils/error.d.ts +13 -0
  839. package/dist/utils/error.d.ts.map +1 -1
  840. package/dist/utils/error.mjs +26 -24
  841. package/dist/utils/error.mjs.map +1 -1
  842. package/dist/utils/host.mjs.map +1 -1
  843. package/dist/utils/index.d.ts +1 -0
  844. package/dist/utils/index.d.ts.map +1 -1
  845. package/dist/utils/index.mjs +2 -1
  846. package/dist/utils/self-id.mjs.map +1 -1
  847. package/dist/utils/url.d.ts +10 -0
  848. package/dist/utils/url.d.ts.map +1 -0
  849. package/dist/utils/url.mjs +17 -0
  850. package/dist/utils/url.mjs.map +1 -0
  851. package/package.json +32 -33
  852. package/dist/adapters/http/server/index.d.ts +0 -3
  853. package/dist/adapters/http/server/index.d.ts.map +0 -1
  854. package/dist/adapters/http/server/index.mjs +0 -2
  855. package/dist/adapters/http/server/module.d.ts +0 -3
  856. package/dist/adapters/http/server/module.d.ts.map +0 -1
  857. package/dist/adapters/http/server/module.mjs +0 -10
  858. package/dist/adapters/http/server/module.mjs.map +0 -1
  859. package/dist/adapters/http/server/type.d.ts +0 -8
  860. package/dist/adapters/http/server/type.d.ts.map +0 -1
  861. package/dist/adapters/http/swagger/index.d.ts +0 -3
  862. package/dist/adapters/http/swagger/index.d.ts.map +0 -1
  863. package/dist/adapters/http/swagger/index.mjs +0 -2
  864. package/dist/adapters/http/swagger/module.d.ts +0 -12
  865. package/dist/adapters/http/swagger/module.d.ts.map +0 -1
  866. package/dist/adapters/http/swagger/module.mjs +0 -75
  867. package/dist/adapters/http/swagger/module.mjs.map +0 -1
  868. package/dist/adapters/http/swagger/type.d.ts +0 -4
  869. package/dist/adapters/http/swagger/type.d.ts.map +0 -1
  870. package/dist/adapters/http/swagger/type.mjs +0 -1
  871. package/dist/app/modules/swagger/index.d.ts +0 -2
  872. package/dist/app/modules/swagger/index.d.ts.map +0 -1
  873. package/dist/app/modules/swagger/index.mjs +0 -2
  874. package/dist/app/modules/swagger/module.d.ts +0 -9
  875. package/dist/app/modules/swagger/module.d.ts.map +0 -1
  876. package/dist/app/modules/swagger/module.mjs +0 -32
  877. package/dist/app/modules/swagger/module.mjs.map +0 -1
  878. package/dist/cli/commands/swagger.d.ts +0 -8
  879. package/dist/cli/commands/swagger.d.ts.map +0 -1
  880. package/dist/cli/commands/swagger.mjs +0 -29
  881. package/dist/cli/commands/swagger.mjs.map +0 -1
  882. package/dist/core/entities/actor/index.d.ts +0 -2
  883. package/dist/core/entities/actor/index.d.ts.map +0 -1
  884. package/dist/core/entities/actor/index.mjs +0 -1
  885. package/dist/core/entities/actor/types.d.ts +0 -7
  886. package/dist/core/entities/actor/types.d.ts.map +0 -1
  887. package/dist/core/entities/service.d.ts +0 -6
  888. package/dist/core/entities/service.d.ts.map +0 -1
  889. package/dist/core/entities/service.mjs +0 -21
  890. package/dist/core/entities/service.mjs.map +0 -1
  891. package/dist/core/entities/types.d.ts +0 -22
  892. package/dist/core/entities/types.d.ts.map +0 -1
  893. package/dist/core/oauth2/helpers/erorr.d.ts +0 -9
  894. package/dist/core/oauth2/helpers/erorr.d.ts.map +0 -1
  895. package/dist/core/oauth2/helpers/erorr.mjs +0 -26
  896. package/dist/core/oauth2/helpers/erorr.mjs.map +0 -1
  897. package/dist/ui/client/assets/index-Noe7uiOY.js +0 -41
  898. /package/dist/{core/entities/actor → adapters/http/middleware/built-in/realm-resolver}/types.mjs +0 -0
  899. /package/dist/core/{entities → identity/permission/checker}/types.mjs +0 -0
  900. /package/dist/{adapters/http/server/type.mjs → core/identity/policy/checker/types.mjs} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildEntityNamespaceName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","IdentityProviderRoleMappingEntity","CachePrefix","publishEvent","event","data","destinations","channel","id","IDENTITY_PROVIDER_ROLE_MAPPING","provider_realm_id","push","namespace","role_realm_id","content","type","IdentityProviderRoleSubscriber","listenTo","afterInsert","entity","CREATED","afterUpdate","connection","queryResultCache","remove","prefix","IDENTITY_PROVIDER_ROLE","key","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/identity-provider-role-mapping/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 {\n EntityDefaultEventName,\n EntityType,\n buildEntityChannelName,\n buildEntityNamespaceName,\n} from '@authup/core-kit';\nimport type { DomainEventDestination } from '@authup/server-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface, \n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { IdentityProviderRoleMappingEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: IdentityProviderRoleMapping,\n) {\n const destinations : DomainEventDestination[] = [\n { channel: (id) => buildEntityChannelName(EntityType.IDENTITY_PROVIDER_ROLE_MAPPING, id) },\n ];\n\n if (data.provider_realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.IDENTITY_PROVIDER_ROLE_MAPPING, id),\n namespace: buildEntityNamespaceName(data.provider_realm_id),\n });\n }\n\n if (data.role_realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.IDENTITY_PROVIDER_ROLE_MAPPING, id),\n namespace: buildEntityNamespaceName(data.role_realm_id),\n });\n }\n\n await publishDomainEvent({\n content: {\n type: EntityType.IDENTITY_PROVIDER_ROLE_MAPPING,\n event,\n data,\n },\n destinations,\n });\n}\n\n@EventSubscriber()\nexport class IdentityProviderRoleSubscriber implements EntitySubscriberInterface<IdentityProviderRoleMapping> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return IdentityProviderRoleMappingEntity;\n }\n\n async afterInsert(event: InsertEvent<IdentityProviderRoleMapping>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<IdentityProviderRoleMapping>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.IDENTITY_PROVIDER_ROLE,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as IdentityProviderRoleMapping);\n }\n\n async afterRemove(event: RemoveEvent<IdentityProviderRoleMapping>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.IDENTITY_PROVIDER_ROLE,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAsBD,eAAeS,aACXC,OACAC,MAAiC;CAEjC,MAAMC,eAA0C,CAC5C,EAAEC,UAAUC,OAAOZ,uBAAuBD,WAAWc,gCAAgCD,GAAAA,EAAI,CAC5F;AAED,KAAIH,KAAKK,kBACLJ,cAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,gCAAgCD,GAAAA;EACnFI,WAAWf,yBAAyBQ,KAAKK,kBAAiB;EAC9D,CAAA;AAGJ,KAAIL,KAAKQ,cACLP,cAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,gCAAgCD,GAAAA;EACnFI,WAAWf,yBAAyBQ,KAAKQ,cAAa;EAC1D,CAAA;AAGJ,OAAMb,mBAAmB;EACrBc,SAAS;GACLC,MAAMpB,WAAWc;GACjBL;GACAC;GACJ;EACAC;EACJ,CAAA;;AAIJ,IAAaU,iCAAb,MAAaA;CAETC,WAA8B;AAC1B,SAAOhB;;CAGX,MAAMiB,YAAYd,OAA+D;AAC7E,MAAI,CAACA,MAAMe,OACP;AAGJ,QAAMhB,aAAaT,uBAAuB0B,SAAShB,MAAMe,OAAM;;CAGnE,MAAME,YAAYjB,OAA+D;AAC7E,MAAI,CAACA,MAAMe,OACP;AAGJ,MAAIf,MAAMkB,WAAWC,iBACjB,OAAMnB,MAAMkB,WAAWC,iBAAiBC,OAAO,CAC3C1B,kBAAkB;GACd2B,QAAQvB,YAAYwB;GACpBC,KAAKvB,MAAMe,OAAOX;GACtB,CAAA,CACH,CAAA;AAGL,QAAML,aAAaT,uBAAuBkC,SAASxB,MAAMe,OAAM;;CAGnE,MAAMU,YAAYzB,OAA+D;AAC7E,MAAI,CAACA,MAAMe,OACP;AAGJ,MAAIf,MAAMkB,WAAWC,iBACjB,OAAMnB,MAAMkB,WAAWC,iBAAiBC,OAAO,CAC3C1B,kBAAkB;GACd2B,QAAQvB,YAAYwB;GACpBC,KAAKvB,MAAMe,OAAOX;GACtB,CAAA,CACH,CAAA;AAGL,QAAML,aAAaT,uBAAuBoC,SAAS1B,MAAMe,OAAM"}
1
+ {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildEntityNamespaceName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","IdentityProviderRoleMappingEntity","CachePrefix","publishEvent","event","data","destinations","channel","id","IDENTITY_PROVIDER_ROLE_MAPPING","provider_realm_id","push","namespace","role_realm_id","content","type","IdentityProviderRoleSubscriber","listenTo","afterInsert","entity","CREATED","afterUpdate","connection","queryResultCache","remove","prefix","IDENTITY_PROVIDER_ROLE","key","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/identity-provider-role-mapping/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 {\n EntityDefaultEventName,\n EntityType,\n buildEntityChannelName,\n buildEntityNamespaceName,\n} from '@authup/core-kit';\nimport type { DomainEventDestination } from '@authup/server-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface, \n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { IdentityProviderRoleMappingEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: IdentityProviderRoleMapping,\n) {\n const destinations : DomainEventDestination[] = [\n { channel: (id) => buildEntityChannelName(EntityType.IDENTITY_PROVIDER_ROLE_MAPPING, id) },\n ];\n\n if (data.provider_realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.IDENTITY_PROVIDER_ROLE_MAPPING, id),\n namespace: buildEntityNamespaceName(data.provider_realm_id),\n });\n }\n\n if (data.role_realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.IDENTITY_PROVIDER_ROLE_MAPPING, id),\n namespace: buildEntityNamespaceName(data.role_realm_id),\n });\n }\n\n await publishDomainEvent({\n content: {\n type: EntityType.IDENTITY_PROVIDER_ROLE_MAPPING,\n event,\n data,\n },\n destinations,\n });\n}\n\n@EventSubscriber()\nexport class IdentityProviderRoleSubscriber implements EntitySubscriberInterface<IdentityProviderRoleMapping> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return IdentityProviderRoleMappingEntity;\n }\n\n async afterInsert(event: InsertEvent<IdentityProviderRoleMapping>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<IdentityProviderRoleMapping>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.IDENTITY_PROVIDER_ROLE,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as IdentityProviderRoleMapping);\n }\n\n async afterRemove(event: RemoveEvent<IdentityProviderRoleMapping>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.IDENTITY_PROVIDER_ROLE,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAsBD,eAAeS,aACXC,OACAC,MAAiC;CAEjC,MAAMC,eAA0C,CAC5C,EAAEC,UAAUC,OAAOZ,uBAAuBD,WAAWc,gCAAgCD,EAAAA,EAAI,CAAA;CAG7F,IAAIH,KAAKK,mBACLJ,aAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,gCAAgCD,EAAAA;EACnFI,WAAWf,yBAAyBQ,KAAKK,iBAAiB;CAC9D,CAAA;CAGJ,IAAIL,KAAKQ,eACLP,aAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,gCAAgCD,EAAAA;EACnFI,WAAWf,yBAAyBQ,KAAKQ,aAAa;CAC1D,CAAA;CAGJ,MAAMb,mBAAmB;EACrBc,SAAS;GACLC,MAAMpB,WAAWc;GACjBL;GACAC;EACJ;EACAC;CACJ,CAAA;AACJ;AAGA,IAAaU,iCAAb,MAAaA;CAETC,WAA8B;EAC1B,OAAOhB;CACX;CAEA,MAAMiB,YAAYd,OAA+D;EAC7E,IAAI,CAACA,MAAMe,QACP;EAGJ,MAAMhB,aAAaT,uBAAuB0B,SAAShB,MAAMe,MAAM;CACnE;CAEA,MAAME,YAAYjB,OAA+D;EAC7E,IAAI,CAACA,MAAMe,QACP;EAGJ,IAAIf,MAAMkB,WAAWC,kBACjB,MAAMnB,MAAMkB,WAAWC,iBAAiBC,OAAO,CAC3C1B,kBAAkB;GACd2B,QAAQvB,YAAYwB;GACpBC,KAAKvB,MAAMe,OAAOX;EACtB,CAAA,CAAA,CACH;EAGL,MAAML,aAAaT,uBAAuBkC,SAASxB,MAAMe,MAAM;CACnE;CAEA,MAAMU,YAAYzB,OAA+D;EAC7E,IAAI,CAACA,MAAMe,QACP;EAGJ,IAAIf,MAAMkB,WAAWC,kBACjB,MAAMnB,MAAMkB,WAAWC,iBAAiBC,OAAO,CAC3C1B,kBAAkB;GACd2B,QAAQvB,YAAYwB;GACpBC,KAAKvB,MAAMe,OAAOX;EACtB,CAAA,CAAA,CACH;EAGL,MAAML,aAAaT,uBAAuBoC,SAAS1B,MAAMe,MAAM;CACnE;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","UpdateDateColumn","RealmEntity","KeyEntity","id","type","priority","signature_algorithm","decryption_key","encryption_key","created_at","updated_at","realm_id","realm","length","default","unsigned","select","nullable","onDelete","name"],"sources":["../../../../../src/adapters/database/domains/key/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column, \n CreateDateColumn, \n Entity, \n Index, \n JoinColumn, \n ManyToOne, \n PrimaryGeneratedColumn, \n UpdateDateColumn,\n} from 'typeorm';\nimport type { JWKType } from '@authup/specs';\nimport type {\n Key,\n Realm,\n} from '@authup/core-kit';\nimport { RealmEntity } from '../realm/index.ts';\n\n@Index([\n 'priority',\n 'realm_id',\n 'type',\n])\n@Entity({ name: 'auth_keys' })\nexport class KeyEntity implements Key {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Index()\n @Column({\n type: 'varchar',\n length: 64,\n default: null,\n })\n type: `${JWKType}`;\n\n @Column({\n type: 'int',\n unsigned: true,\n default: 0,\n })\n priority: number;\n\n @Column({\n type: 'varchar',\n length: 64,\n default: null,\n })\n signature_algorithm: Key['signature_algorithm'];\n\n @Column({\n type: 'varchar',\n length: 4096,\n default: null,\n select: false,\n })\n decryption_key?: string | null;\n\n @Column({\n type: 'varchar',\n length: 4096,\n default: null,\n })\n encryption_key: string | null;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: Date;\n\n @UpdateDateColumn()\n updated_at: Date;\n\n // ------------------------------------------------------------------\n\n @Index()\n @Column({\n nullable: true,\n default: null, \n })\n realm_id: Realm['id'];\n\n @ManyToOne(() => RealmEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'realm_id' })\n realm: RealmEntity;\n}\n"],"mappings":";;;;;;;;;;;;;AA8BA,IAAaS,YAAb,MAAaA;CAETC;CAQAC;CAOAC;CAOAC;CAQAC;CAOAC;CAKAC;CAGAC;CASAC;CAIAC;;;;;;EAtDIR,MAAM;EACNS,QAAQ;EACRC,SAAS;;;;;CAKTV,MAAM;CACNW,UAAU;CACVD,SAAS;;;CAKTV,MAAM;CACNS,QAAQ;CACRC,SAAS;;;CAKTV,MAAM;CACNS,QAAQ;CACRC,SAAS;CACTE,QAAQ;;;CAKRZ,MAAM;CACNS,QAAQ;CACRC,SAAS;;;;;;;EAgBTG,UAAU;EACVH,SAAS;;;;;iBAIIb,aAAAA,EAAeiB,UAAU,WAAA,CAAA;cAC5BC,MAAM,YAAA,CAAA;;;;CAhEpB;CACA;CACA;aAEMA,MAAM,aAAA,CAAA,CAAA,EAAA,UAAA"}
1
+ {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","UpdateDateColumn","RealmEntity","KeyEntity","id","type","priority","signature_algorithm","decryption_key","encryption_key","created_at","updated_at","realm_id","realm","length","default","unsigned","select","nullable","onDelete","name"],"sources":["../../../../../src/adapters/database/domains/key/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2022.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column, \n CreateDateColumn, \n Entity, \n Index, \n JoinColumn, \n ManyToOne, \n PrimaryGeneratedColumn, \n UpdateDateColumn,\n} from 'typeorm';\nimport type { JWKType } from '@authup/specs';\nimport type {\n Key,\n Realm,\n} from '@authup/core-kit';\nimport { RealmEntity } from '../realm/index.ts';\n\n@Index([\n 'priority',\n 'realm_id',\n 'type',\n])\n@Entity({ name: 'auth_keys' })\nexport class KeyEntity implements Key {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Index()\n @Column({\n type: 'varchar',\n length: 64,\n default: null,\n })\n type: `${JWKType}`;\n\n @Column({\n type: 'int',\n unsigned: true,\n default: 0,\n })\n priority: number;\n\n @Column({\n type: 'varchar',\n length: 64,\n default: null,\n })\n signature_algorithm: Key['signature_algorithm'];\n\n @Column({\n type: 'varchar',\n length: 4096,\n default: null,\n select: false,\n })\n decryption_key?: string | null;\n\n @Column({\n type: 'varchar',\n length: 4096,\n default: null,\n })\n encryption_key: string | null;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: Date;\n\n @UpdateDateColumn()\n updated_at: Date;\n\n // ------------------------------------------------------------------\n\n @Index()\n @Column({\n nullable: true,\n default: null, \n })\n realm_id: Realm['id'];\n\n @ManyToOne(() => RealmEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'realm_id' })\n realm: RealmEntity;\n}\n"],"mappings":";;;;;;;;;;;;;AA8BA,IAAaS,YAAb,MAAaA;CAETC;CAQAC;CAOAC;CAOAC;CAQAC;CAOAC;CAKAC;CAGAC;CASAC;CAIAC;AACJ;;;;;EAvDQR,MAAM;EACNS,QAAQ;EACRC,SAAS;;;;;CAKTV,MAAM;CACNW,UAAU;CACVD,SAAS;;;CAKTV,MAAM;CACNS,QAAQ;CACRC,SAAS;;;CAKTV,MAAM;CACNS,QAAQ;CACRC,SAAS;CACTE,QAAQ;;;CAKRZ,MAAM;CACNS,QAAQ;CACRC,SAAS;;;;;;;EAgBTG,UAAU;EACVH,SAAS;;;;;iBAIIb,aAAAA,EAAeiB,UAAU,UAAA,CAAA;cAC5BC,MAAM,WAAA,CAAA;;;;CAhEpB;CACA;CACA;aAEMA,MAAM,YAAA,CAAA,CAAA,GAAA,SAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","Unique","UpdateDateColumn","RealmEntity","ClientEntity","PermissionEntity","id","built_in","name","display_name","description","decision_strategy","client_id","client","realm_id","realm","created_at","updated_at","type","default","length","nullable","onDelete"],"sources":["../../../../../src/adapters/database/domains/permission/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n JoinColumn,\n ManyToOne,\n PrimaryGeneratedColumn, \n Unique,\n UpdateDateColumn,\n} from 'typeorm';\nimport type { DecisionStrategy } from '@authup/kit';\nimport type { Client, Realm } from '@authup/core-kit';\nimport { RealmEntity } from '../realm/index.ts';\nimport { ClientEntity } from '../client/entity.ts';\n\n@Unique(['name', 'client_id', 'realm_id'])\n@Entity({ name: 'auth_permissions' })\nexport class PermissionEntity {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Column({\n type: 'boolean',\n default: false, \n })\n built_in: boolean;\n\n @Column({\n type: 'varchar',\n length: 128, \n })\n name: string;\n\n @Column({\n type: 'varchar',\n length: 256,\n nullable: true, \n })\n display_name: string | null;\n\n @Column({\n type: 'text',\n nullable: true, \n })\n description: string | null;\n\n @Column({\n type: 'varchar',\n length: 50,\n nullable: true,\n default: null, \n })\n decision_strategy: `${DecisionStrategy}` | null;\n\n // ------------------------------------------------------------------\n\n @Index()\n @Column({ nullable: true })\n client_id: Client['id'] | null;\n\n @ManyToOne(() => ClientEntity, {\n onDelete: 'SET NULL',\n nullable: true, \n })\n @JoinColumn({ name: 'client_id' })\n client: Client | null;\n\n // ------------------------------------------------------------------\n\n @Index()\n @Column({ nullable: true })\n realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'realm_id' })\n realm: Realm | null;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: string;\n\n @UpdateDateColumn()\n updated_at: string;\n}\n"],"mappings":";;;;;;;;;;;;;;AAyBA,IAAaW,mBAAb,MAAaA;CAETC;CAMAC;CAMAC;CAOAC;CAMAC;CAQAC;CAMAC;CAOAC;CAMAC;CAOAC;CAKAC;CAGAC;;;;CAhEIC,MAAM;CACNC,SAAS;;;CAKTD,MAAM;CACNE,QAAQ;;;CAKRF,MAAM;CACNE,QAAQ;CACRC,UAAU;;;CAKVH,MAAM;CACNG,UAAU;;;CAKVH,MAAM;CACNE,QAAQ;CACRC,UAAU;CACVF,SAAS;;;;UAOHE,UAAU,MAAA,CAAA;;;;iBAGHjB,cAAAA;EACbkB,UAAU;EACVD,UAAU;;cAEAb,MAAM,aAAA,CAAA;;;;;UAMVa,UAAU,MAAA,CAAA;;;;iBAGHlB,aAAAA;EACbmB,UAAU;EACVD,UAAU;;cAEAb,MAAM,YAAA,CAAA;;;;;;CA9Df;CAAQ;CAAa;aACpBA,MAAM,oBAAA,CAAA,CAAA,EAAA,iBAAA"}
1
+ {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","Unique","UpdateDateColumn","RealmEntity","ClientEntity","PermissionEntity","id","built_in","name","display_name","description","decision_strategy","client_id","client","realm_id","realm","created_at","updated_at","type","default","length","nullable","onDelete"],"sources":["../../../../../src/adapters/database/domains/permission/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n JoinColumn,\n ManyToOne,\n PrimaryGeneratedColumn, \n Unique,\n UpdateDateColumn,\n} from 'typeorm';\nimport type { DecisionStrategy } from '@authup/kit';\nimport type { Client, Realm } from '@authup/core-kit';\nimport { RealmEntity } from '../realm/index.ts';\nimport { ClientEntity } from '../client/entity.ts';\n\n@Unique(['name', 'client_id', 'realm_id'])\n@Entity({ name: 'auth_permissions' })\nexport class PermissionEntity {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Column({\n type: 'boolean',\n default: false, \n })\n built_in: boolean;\n\n @Column({\n type: 'varchar',\n length: 128, \n })\n name: string;\n\n @Column({\n type: 'varchar',\n length: 256,\n nullable: true, \n })\n display_name: string | null;\n\n @Column({\n type: 'text',\n nullable: true, \n })\n description: string | null;\n\n @Column({\n type: 'varchar',\n length: 50,\n nullable: true,\n default: null, \n })\n decision_strategy: `${DecisionStrategy}` | null;\n\n // ------------------------------------------------------------------\n\n @Index()\n @Column({ nullable: true })\n client_id: Client['id'] | null;\n\n @ManyToOne(() => ClientEntity, {\n onDelete: 'SET NULL',\n nullable: true, \n })\n @JoinColumn({ name: 'client_id' })\n client: Client | null;\n\n // ------------------------------------------------------------------\n\n @Index()\n @Column({ nullable: true })\n realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'realm_id' })\n realm: Realm | null;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: string;\n\n @UpdateDateColumn()\n updated_at: string;\n}\n"],"mappings":";;;;;;;;;;;;;;AAyBA,IAAaW,mBAAb,MAAaA;CAETC;CAMAC;CAMAC;CAOAC;CAMAC;CAQAC;CAMAC;CAOAC;CAMAC;CAOAC;CAKAC;CAGAC;AACJ;;;CAjEQC,MAAM;CACNC,SAAS;;;CAKTD,MAAM;CACNE,QAAQ;;;CAKRF,MAAM;CACNE,QAAQ;CACRC,UAAU;;;CAKVH,MAAM;CACNG,UAAU;;;CAKVH,MAAM;CACNE,QAAQ;CACRC,UAAU;CACVF,SAAS;;;;UAOHE,UAAU,KAAA,CAAA;;;;iBAGHjB,cAAAA;EACbkB,UAAU;EACVD,UAAU;;cAEAb,MAAM,YAAA,CAAA;;;;;UAMVa,UAAU,KAAA,CAAA;;;;iBAGHlB,aAAAA;EACbmB,UAAU;EACVD,UAAU;;cAEAb,MAAM,WAAA,CAAA;;;;;;CA9Df;CAAQ;CAAa;aACpBA,MAAM,mBAAA,CAAA,CAAA,GAAA,gBAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"subscriber.mjs","names":["buildPermissionKey","EntityDefaultEventName","EntityType","buildEntityChannelName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","PermissionEntity","CachePrefix","publishEvent","event","data","content","type","PERMISSION","destinations","channel","id","PermissionSubscriber","listenTo","afterInsert","entity","CREATED","afterUpdate","connection","queryResultCache","remove","prefix","key","name","client_id","realm_id","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/permission/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { buildPermissionKey } from '@authup/access';\nimport {\n EntityDefaultEventName,\n EntityType,\n buildEntityChannelName,\n} from '@authup/core-kit';\nimport type { Permission } from '@authup/core-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface,\n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { PermissionEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: Permission,\n) {\n await publishDomainEvent({\n content: {\n type: EntityType.PERMISSION,\n event,\n data,\n },\n destinations: [\n { channel: (id) => buildEntityChannelName(EntityType.PERMISSION, id) },\n ],\n });\n}\n\n@EventSubscriber()\nexport class PermissionSubscriber implements EntitySubscriberInterface<Permission> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return PermissionEntity;\n }\n\n async afterInsert(event: InsertEvent<Permission>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<Permission>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.PERMISSION,\n key: event.entity.id,\n }),\n buildRedisKeyPath({\n prefix: CachePrefix.PERMISSION,\n key: buildPermissionKey({\n name: event.entity.name,\n client_id: event.entity.client_id,\n realm_id: event.entity.realm_id,\n }),\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as Permission);\n }\n\n async afterRemove(event: RemoveEvent<Permission>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.PERMISSION,\n key: event.entity.id,\n }),\n buildPermissionKey({\n name: event.entity.name,\n client_id: event.entity.client_id,\n realm_id: event.entity.realm_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AA0BA,eAAeS,aACXC,OACAC,MAAgB;AAEhB,OAAML,mBAAmB;EACrBM,SAAS;GACLC,MAAMX,WAAWY;GACjBJ;GACAC;GACJ;EACAI,cAAc,CACV,EAAEC,UAAUC,OAAOd,uBAAuBD,WAAWY,YAAYG,GAAAA,EAAI,CACxE;EACL,CAAA;;AAIJ,IAAaC,uBAAb,MAAaA;CAETC,WAA8B;AAC1B,SAAOZ;;CAGX,MAAMa,YAAYV,OAA8C;AAC5D,MAAI,CAACA,MAAMW,OACP;AAGJ,QAAMZ,aAAaR,uBAAuBqB,SAASZ,MAAMW,OAAM;;CAGnE,MAAME,YAAYb,OAA8C;AAC5D,MAAI,CAACA,MAAMW,OACP;AAGJ,MAAIX,MAAMc,WAAWC,iBACjB,OAAMf,MAAMc,WAAWC,iBAAiBC,OAAO,CAC3CtB,kBAAkB;GACduB,QAAQnB,YAAYM;GACpBc,KAAKlB,MAAMW,OAAOJ;GACtB,CAAA,EACAb,kBAAkB;GACduB,QAAQnB,YAAYM;GACpBc,KAAK5B,mBAAmB;IACpB6B,MAAMnB,MAAMW,OAAOQ;IACnBC,WAAWpB,MAAMW,OAAOS;IACxBC,UAAUrB,MAAMW,OAAOU;IAC3B,CAAA;GACJ,CAAA,CACH,CAAA;AAGL,QAAMtB,aAAaR,uBAAuB+B,SAAStB,MAAMW,OAAM;;CAGnE,MAAMY,YAAYvB,OAA8C;AAC5D,MAAI,CAACA,MAAMW,OACP;AAGJ,MAAIX,MAAMc,WAAWC,iBACjB,OAAMf,MAAMc,WAAWC,iBAAiBC,OAAO,CAC3CtB,kBAAkB;GACduB,QAAQnB,YAAYM;GACpBc,KAAKlB,MAAMW,OAAOJ;GACtB,CAAA,EACAjB,mBAAmB;GACf6B,MAAMnB,MAAMW,OAAOQ;GACnBC,WAAWpB,MAAMW,OAAOS;GACxBC,UAAUrB,MAAMW,OAAOU;GAC3B,CAAA,CACH,CAAA;AAGL,QAAMtB,aAAaR,uBAAuBiC,SAASxB,MAAMW,OAAM"}
1
+ {"version":3,"file":"subscriber.mjs","names":["buildPermissionKey","EntityDefaultEventName","EntityType","buildEntityChannelName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","PermissionEntity","CachePrefix","publishEvent","event","data","content","type","PERMISSION","destinations","channel","id","PermissionSubscriber","listenTo","afterInsert","entity","CREATED","afterUpdate","connection","queryResultCache","remove","prefix","key","name","client_id","realm_id","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/permission/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { buildPermissionKey } from '@authup/access';\nimport {\n EntityDefaultEventName,\n EntityType,\n buildEntityChannelName,\n} from '@authup/core-kit';\nimport type { Permission } from '@authup/core-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface,\n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { PermissionEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: Permission,\n) {\n await publishDomainEvent({\n content: {\n type: EntityType.PERMISSION,\n event,\n data,\n },\n destinations: [\n { channel: (id) => buildEntityChannelName(EntityType.PERMISSION, id) },\n ],\n });\n}\n\n@EventSubscriber()\nexport class PermissionSubscriber implements EntitySubscriberInterface<Permission> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return PermissionEntity;\n }\n\n async afterInsert(event: InsertEvent<Permission>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<Permission>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.PERMISSION,\n key: event.entity.id,\n }),\n buildRedisKeyPath({\n prefix: CachePrefix.PERMISSION,\n key: buildPermissionKey({\n name: event.entity.name,\n client_id: event.entity.client_id,\n realm_id: event.entity.realm_id,\n }),\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as Permission);\n }\n\n async afterRemove(event: RemoveEvent<Permission>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.PERMISSION,\n key: event.entity.id,\n }),\n buildPermissionKey({\n name: event.entity.name,\n client_id: event.entity.client_id,\n realm_id: event.entity.realm_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AA0BA,eAAeS,aACXC,OACAC,MAAgB;CAEhB,MAAML,mBAAmB;EACrBM,SAAS;GACLC,MAAMX,WAAWY;GACjBJ;GACAC;EACJ;EACAI,cAAc,CACV,EAAEC,UAAUC,OAAOd,uBAAuBD,WAAWY,YAAYG,EAAAA,EAAI,CAAA;CAE7E,CAAA;AACJ;AAGA,IAAaC,uBAAb,MAAaA;CAETC,WAA8B;EAC1B,OAAOZ;CACX;CAEA,MAAMa,YAAYV,OAA8C;EAC5D,IAAI,CAACA,MAAMW,QACP;EAGJ,MAAMZ,aAAaR,uBAAuBqB,SAASZ,MAAMW,MAAM;CACnE;CAEA,MAAME,YAAYb,OAA8C;EAC5D,IAAI,CAACA,MAAMW,QACP;EAGJ,IAAIX,MAAMc,WAAWC,kBACjB,MAAMf,MAAMc,WAAWC,iBAAiBC,OAAO,CAC3CtB,kBAAkB;GACduB,QAAQnB,YAAYM;GACpBc,KAAKlB,MAAMW,OAAOJ;EACtB,CAAA,GACAb,kBAAkB;GACduB,QAAQnB,YAAYM;GACpBc,KAAK5B,mBAAmB;IACpB6B,MAAMnB,MAAMW,OAAOQ;IACnBC,WAAWpB,MAAMW,OAAOS;IACxBC,UAAUrB,MAAMW,OAAOU;GAC3B,CAAA;EACJ,CAAA,CAAA,CACH;EAGL,MAAMtB,aAAaR,uBAAuB+B,SAAStB,MAAMW,MAAM;CACnE;CAEA,MAAMY,YAAYvB,OAA8C;EAC5D,IAAI,CAACA,MAAMW,QACP;EAGJ,IAAIX,MAAMc,WAAWC,kBACjB,MAAMf,MAAMc,WAAWC,iBAAiBC,OAAO,CAC3CtB,kBAAkB;GACduB,QAAQnB,YAAYM;GACpBc,KAAKlB,MAAMW,OAAOJ;EACtB,CAAA,GACAjB,mBAAmB;GACf6B,MAAMnB,MAAMW,OAAOQ;GACnBC,WAAWpB,MAAMW,OAAOS;GACxBC,UAAUrB,MAAMW,OAAOU;EAC3B,CAAA,CAAA,CACH;EAGL,MAAMtB,aAAaR,uBAAuBiC,SAASxB,MAAMW,MAAM;CACnE;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","UpdateDateColumn","PermissionEntity","PolicyEntity","RealmEntity","PermissionPolicyEntity","id","created_at","updated_at","permission_id","permission","permission_realm_id","permission_realm","policy_id","policy","policy_realm_id","policy_realm","onDelete","name","nullable","unique"],"sources":["../../../../../src/adapters/database/domains/permission-policy/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2026.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n JoinColumn,\n ManyToOne,\n PrimaryGeneratedColumn,\n UpdateDateColumn,\n} from 'typeorm';\nimport type {\n Permission, \n PermissionPolicy, \n Policy, \n Realm,\n} from '@authup/core-kit';\nimport { PermissionEntity } from '../permission/index.ts';\nimport { PolicyEntity } from '../policy/index.ts';\nimport { RealmEntity } from '../realm/index.ts';\n\n@Entity({ name: 'auth_permission_policies' })\n@Index(['permission_id', 'policy_id'], { unique: true })\nexport class PermissionPolicyEntity implements PermissionPolicy {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @CreateDateColumn()\n created_at: string;\n\n @UpdateDateColumn()\n updated_at: string;\n\n // ------------------------------------------------------------------\n\n @Column()\n permission_id: string;\n\n @ManyToOne(() => PermissionEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'permission_id' })\n permission: Permission;\n\n @Column({ nullable: true })\n permission_realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'permission_realm_id' })\n permission_realm: Realm | null;\n\n // ------------------------------------------------------------------\n\n @Column()\n policy_id: string;\n\n @ManyToOne(() => PolicyEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'policy_id' })\n policy: Policy;\n\n @Column({ nullable: true })\n policy_realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'policy_realm_id' })\n policy_realm: Realm | null;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AA6BA,IAAaW,yBAAb,MAAaA;CAETC;CAGAC;CAGAC;CAKAC;CAIAC;CAGAC;CAOAC;CAKAC;CAIAC;CAGAC;CAOAC;;;;;;;iBA/BiBd,kBAAAA,EAAoBe,UAAU,WAAA,CAAA;cACjCC,MAAM,iBAAA,CAAA;;;uBAGVC,UAAU,MAAA,CAAA,EAAA,aAAA,eAAA,OAAA,CAAA,EAAA,uBAAA,WAAA,uBAAA,KAAA,EAAA;;iBAGHf,aAAAA;EACba,UAAU;EACVE,UAAU;;cAEAD,MAAM,uBAAA,CAAA;;;;;iBAQHf,cAAAA,EAAgBc,UAAU,WAAA,CAAA;cAC7BC,MAAM,aAAA,CAAA;;;uBAGVC,UAAU,MAAA,CAAA,EAAA,aAAA,eAAA,OAAA,CAAA,EAAA,uBAAA,WAAA,mBAAA,KAAA,EAAA;;iBAGHf,aAAAA;EACba,UAAU;EACVE,UAAU;;cAEAD,MAAM,mBAAA,CAAA;;;gDA/CdA,MAAM,4BAAA,CAAA,EAAA,MAAA,CACR,iBAAiB,YAAA,EAAA,EAAgBE,QAAQ,MAAA,CAAA,CAAA,EAAA,uBAAA"}
1
+ {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","UpdateDateColumn","PermissionEntity","PolicyEntity","RealmEntity","PermissionPolicyEntity","id","created_at","updated_at","permission_id","permission","permission_realm_id","permission_realm","policy_id","policy","policy_realm_id","policy_realm","onDelete","name","nullable","unique"],"sources":["../../../../../src/adapters/database/domains/permission-policy/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2026.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n JoinColumn,\n ManyToOne,\n PrimaryGeneratedColumn,\n UpdateDateColumn,\n} from 'typeorm';\nimport type {\n Permission, \n PermissionPolicy, \n Policy, \n Realm,\n} from '@authup/core-kit';\nimport { PermissionEntity } from '../permission/index.ts';\nimport { PolicyEntity } from '../policy/index.ts';\nimport { RealmEntity } from '../realm/index.ts';\n\n@Entity({ name: 'auth_permission_policies' })\n@Index(['permission_id', 'policy_id'], { unique: true })\nexport class PermissionPolicyEntity implements PermissionPolicy {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @CreateDateColumn()\n created_at: string;\n\n @UpdateDateColumn()\n updated_at: string;\n\n // ------------------------------------------------------------------\n\n @Column()\n permission_id: string;\n\n @ManyToOne(() => PermissionEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'permission_id' })\n permission: Permission;\n\n @Column({ nullable: true })\n permission_realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'permission_realm_id' })\n permission_realm: Realm | null;\n\n // ------------------------------------------------------------------\n\n @Column()\n policy_id: string;\n\n @ManyToOne(() => PolicyEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'policy_id' })\n policy: Policy;\n\n @Column({ nullable: true })\n policy_realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'policy_realm_id' })\n policy_realm: Realm | null;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AA6BA,IAAaW,yBAAb,MAAaA;CAETC;CAGAC;CAGAC;CAKAC;CAIAC;CAGAC;CAOAC;CAKAC;CAIAC;CAGAC;CAOAC;AACJ;;;;;;iBAhCqBd,kBAAAA,EAAoBe,UAAU,UAAA,CAAA;cACjCC,MAAM,gBAAA,CAAA;;;uBAGVC,UAAU,KAAA,CAAA,GAAA,aAAA,eAAA,MAAA,CAAA,GAAA,uBAAA,WAAA,uBAAA,KAAA,CAAA;;iBAGHf,aAAAA;EACba,UAAU;EACVE,UAAU;;cAEAD,MAAM,sBAAA,CAAA;;;;;iBAQHf,cAAAA,EAAgBc,UAAU,UAAA,CAAA;cAC7BC,MAAM,YAAA,CAAA;;;uBAGVC,UAAU,KAAA,CAAA,GAAA,aAAA,eAAA,MAAA,CAAA,GAAA,uBAAA,WAAA,mBAAA,KAAA,CAAA;;iBAGHf,aAAAA;EACba,UAAU;EACVE,UAAU;;cAEAD,MAAM,kBAAA,CAAA;;;gDA/CdA,MAAM,2BAAA,CAAA,GAAA,MAAA,CACR,iBAAiB,WAAA,GAAA,EAAgBE,QAAQ,KAAA,CAAA,CAAA,GAAA,sBAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","Tree","TreeChildren","TreeParent","Unique","UpdateDateColumn","RealmEntity","PolicyEntity","id","built_in","type","name","display_name","description","invert","children","parent_id","parent","realm_id","realm","created_at","updated_at","default","length","nullable","cascade","onDelete","closureTableName","ancestorColumnName","descendantColumnName"],"sources":["../../../../../src/adapters/database/domains/policy/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity, \n Index,\n JoinColumn,\n ManyToOne,\n PrimaryGeneratedColumn, \n Tree, \n TreeChildren,\n TreeParent,\n Unique,\n UpdateDateColumn,\n} from 'typeorm';\nimport type { Policy, Realm } from '@authup/core-kit';\nimport { RealmEntity } from '../realm/index.ts';\n\n@Unique(['name', 'realm_id'])\n@Entity({ name: 'auth_policies' })\n@Tree('closure-table', {\n closureTableName: 'auth_policy_tree',\n ancestorColumnName: () => 'ancestor_id',\n descendantColumnName: () => 'descendant_id',\n})\nexport class PolicyEntity implements Policy {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Column({\n type: 'boolean',\n default: false, \n })\n built_in: boolean;\n\n @Column({\n type: 'varchar',\n length: 64, \n })\n type: string;\n\n @Column({\n type: 'varchar',\n length: 128, \n })\n name: string;\n\n @Column({\n type: 'varchar',\n length: 256,\n nullable: true, \n })\n display_name: string | null;\n\n @Column({\n type: 'text',\n nullable: true, \n })\n description: string | null;\n\n @Column({\n type: 'boolean',\n default: false, \n })\n invert: boolean;\n\n @TreeChildren({ cascade: true })\n children: PolicyEntity[];\n\n @Column({ nullable: true })\n parent_id: Policy['id'] | null;\n\n @TreeParent({ onDelete: 'CASCADE' })\n @JoinColumn({ name: 'parent_id' })\n parent: Policy | null;\n\n @Index()\n @Column({ nullable: true })\n realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'realm_id' })\n realm: Realm | null;\n\n @CreateDateColumn()\n created_at: string;\n\n @UpdateDateColumn()\n updated_at: string;\n}\n"],"mappings":";;;;;;;;;;;;;AA+BA,IAAaa,eAAb,MAAaA;CAETC;CAMAC;CAMAC;CAMAC;CAOAC;CAMAC;CAMAC;CAGAC;CAGAC;CAIAC;CAIAC;CAOAC;CAGAC;CAGAC;;;;CA7DIX,MAAM;CACNY,SAAS;;;CAKTZ,MAAM;CACNa,QAAQ;;;CAKRb,MAAM;CACNa,QAAQ;;;CAKRb,MAAM;CACNa,QAAQ;CACRC,UAAU;;;CAKVd,MAAM;CACNc,UAAU;;;CAKVd,MAAM;CACNY,SAAS;;6BAIGG,SAAS,MAAA,CAAA,EAAA,aAAA,eAAA,MAAA,CAAA,EAAA,aAAA,WAAA,YAAA,KAAA,EAAA;uBAGfD,UAAU,MAAA,CAAA,EAAA,aAAA,eAAA,OAAA,CAAA,EAAA,aAAA,WAAA,aAAA,KAAA,EAAA;;cAGNE,UAAU,WAAA,CAAA;cACVf,MAAM,aAAA,CAAA;;;;;UAIVa,UAAU,MAAA,CAAA;;;;iBAGHlB,aAAAA;EACboB,UAAU;EACVF,UAAU;;cAEAb,MAAM,YAAA,CAAA;;;;;;SAlEf,QAAQ,WAAA,CAAA;UACPA,MAAM,iBAAA,CAAA;;EAEZgB,kBAAkB;EAClBC,0BAA0B;EAC1BC,4BAA4B"}
1
+ {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","Tree","TreeChildren","TreeParent","Unique","UpdateDateColumn","RealmEntity","PolicyEntity","id","built_in","type","name","display_name","description","invert","children","parent_id","parent","realm_id","realm","created_at","updated_at","default","length","nullable","cascade","onDelete","closureTableName","ancestorColumnName","descendantColumnName"],"sources":["../../../../../src/adapters/database/domains/policy/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity, \n Index,\n JoinColumn,\n ManyToOne,\n PrimaryGeneratedColumn, \n Tree, \n TreeChildren,\n TreeParent,\n Unique,\n UpdateDateColumn,\n} from 'typeorm';\nimport type { Policy, Realm } from '@authup/core-kit';\nimport { RealmEntity } from '../realm/index.ts';\n\n@Unique(['name', 'realm_id'])\n@Entity({ name: 'auth_policies' })\n@Tree('closure-table', {\n closureTableName: 'auth_policy_tree',\n ancestorColumnName: () => 'ancestor_id',\n descendantColumnName: () => 'descendant_id',\n})\nexport class PolicyEntity implements Policy {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Column({\n type: 'boolean',\n default: false, \n })\n built_in: boolean;\n\n @Column({\n type: 'varchar',\n length: 64, \n })\n type: string;\n\n @Column({\n type: 'varchar',\n length: 128, \n })\n name: string;\n\n @Column({\n type: 'varchar',\n length: 256,\n nullable: true, \n })\n display_name: string | null;\n\n @Column({\n type: 'text',\n nullable: true, \n })\n description: string | null;\n\n @Column({\n type: 'boolean',\n default: false, \n })\n invert: boolean;\n\n @TreeChildren({ cascade: true })\n children: PolicyEntity[];\n\n @Column({ nullable: true })\n parent_id: Policy['id'] | null;\n\n @TreeParent({ onDelete: 'CASCADE' })\n @JoinColumn({ name: 'parent_id' })\n parent: Policy | null;\n\n @Index()\n @Column({ nullable: true })\n realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'realm_id' })\n realm: Realm | null;\n\n @CreateDateColumn()\n created_at: string;\n\n @UpdateDateColumn()\n updated_at: string;\n}\n"],"mappings":";;;;;;;;;;;;;AA+BA,IAAaa,eAAb,MAAaA;CAETC;CAMAC;CAMAC;CAMAC;CAOAC;CAMAC;CAMAC;CAGAC;CAGAC;CAIAC;CAIAC;CAOAC;CAGAC;CAGAC;AACJ;;;CA9DQX,MAAM;CACNY,SAAS;;;CAKTZ,MAAM;CACNa,QAAQ;;;CAKRb,MAAM;CACNa,QAAQ;;;CAKRb,MAAM;CACNa,QAAQ;CACRC,UAAU;;;CAKVd,MAAM;CACNc,UAAU;;;CAKVd,MAAM;CACNY,SAAS;;6BAIGG,SAAS,KAAA,CAAA,GAAA,aAAA,eAAA,KAAA,CAAA,GAAA,aAAA,WAAA,YAAA,KAAA,CAAA;uBAGfD,UAAU,KAAA,CAAA,GAAA,aAAA,eAAA,MAAA,CAAA,GAAA,aAAA,WAAA,aAAA,KAAA,CAAA;;cAGNE,UAAU,UAAA,CAAA;cACVf,MAAM,YAAA,CAAA;;;;;UAIVa,UAAU,KAAA,CAAA;;;;iBAGHlB,aAAAA;EACboB,UAAU;EACVF,UAAU;;cAEAb,MAAM,WAAA,CAAA;;;;;;SAlEf,QAAQ,UAAA,CAAA;UACPA,MAAM,gBAAA,CAAA;;EAEZgB,kBAAkB;EAClBC,0BAA0B;EAC1BC,4BAA4B"}
@@ -1 +1 @@
1
- {"version":3,"file":"repository.mjs","names":["EntityNotFoundError","CachePrefix","EATreeRepository","PolicyAttributeEntity","PolicyEntity","PolicyRepository","instance","attributeProperties","input","parent","policy_id","id","realm_id","entity","entityPrimaryColumn","attributeEntity","attributeForeignColumn","cachePrefix","POLICY_OWNED_ATTRIBUTES","findDescendantsTreeById","create","findDescendantsTree","e"],"sources":["../../../../../src/adapters/database/domains/policy/repository.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\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 { BasePolicy } from '@authup/access';\nimport type { Policy, PolicyAttribute } from '@authup/core-kit';\nimport type { DataSource, EntityManager } from 'typeorm';\nimport { EntityNotFoundError } from 'typeorm';\nimport { CachePrefix } from '../constants.ts';\nimport { EATreeRepository } from '../../extra-attribute-repository/index.ts';\nimport { PolicyAttributeEntity } from '../policy-attribute/index.ts';\nimport { PolicyEntity } from './entity.ts';\n\nexport class PolicyRepository extends EATreeRepository<Policy, PolicyAttribute> {\n constructor(instance: DataSource | EntityManager) {\n super(instance, {\n attributeProperties: (input, parent) => {\n input.policy_id = parent.id;\n input.realm_id = parent.realm_id;\n\n return input;\n },\n entity: PolicyEntity,\n entityPrimaryColumn: 'id',\n attributeEntity: PolicyAttributeEntity,\n attributeForeignColumn: 'policy_id',\n cachePrefix: CachePrefix.POLICY_OWNED_ATTRIBUTES,\n });\n }\n\n async findDescendantsTreeById(id: string): Promise<BasePolicy | null> {\n const entity = this.create();\n entity.id = id;\n\n try {\n return await this.findDescendantsTree(entity);\n } catch (e) {\n if (e instanceof EntityNotFoundError) {\n return null;\n }\n\n throw e;\n }\n }\n}\n"],"mappings":";;;;;;;;AAgBA,IAAaK,mBAAb,cAAsCH,iBAAAA;CAClC,YAAYI,UAAsC;AAC9C,QAAMA,UAAU;GACZC,sBAAsBC,OAAOC,WAAAA;AACzBD,UAAME,YAAYD,OAAOE;AACzBH,UAAMI,WAAWH,OAAOG;AAExB,WAAOJ;;GAEXK,QAAQT;GACRU,qBAAqB;GACrBC,iBAAiBZ;GACjBa,wBAAwB;GACxBC,aAAahB,YAAYiB;GAC7B,CAAA;;CAGJ,MAAMC,wBAAwBR,IAAwC;EAClE,MAAME,SAAS,KAAKO,QAAM;AAC1BP,SAAOF,KAAKA;AAEZ,MAAI;AACA,UAAO,MAAM,KAAKU,oBAAoBR,OAAAA;WACjCS,GAAG;AACR,OAAIA,aAAatB,oBACb,QAAO;AAGX,SAAMsB"}
1
+ {"version":3,"file":"repository.mjs","names":["EntityNotFoundError","CachePrefix","EATreeRepository","PolicyAttributeEntity","PolicyEntity","PolicyRepository","instance","attributeProperties","input","parent","policy_id","id","realm_id","entity","entityPrimaryColumn","attributeEntity","attributeForeignColumn","cachePrefix","POLICY_OWNED_ATTRIBUTES","findDescendantsTreeById","create","findDescendantsTree","e"],"sources":["../../../../../src/adapters/database/domains/policy/repository.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\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 { BasePolicy } from '@authup/access';\nimport type { Policy, PolicyAttribute } from '@authup/core-kit';\nimport type { DataSource, EntityManager } from 'typeorm';\nimport { EntityNotFoundError } from 'typeorm';\nimport { CachePrefix } from '../constants.ts';\nimport { EATreeRepository } from '../../extra-attribute-repository/index.ts';\nimport { PolicyAttributeEntity } from '../policy-attribute/index.ts';\nimport { PolicyEntity } from './entity.ts';\n\nexport class PolicyRepository extends EATreeRepository<Policy, PolicyAttribute> {\n constructor(instance: DataSource | EntityManager) {\n super(instance, {\n attributeProperties: (input, parent) => {\n input.policy_id = parent.id;\n input.realm_id = parent.realm_id;\n\n return input;\n },\n entity: PolicyEntity,\n entityPrimaryColumn: 'id',\n attributeEntity: PolicyAttributeEntity,\n attributeForeignColumn: 'policy_id',\n cachePrefix: CachePrefix.POLICY_OWNED_ATTRIBUTES,\n });\n }\n\n async findDescendantsTreeById(id: string): Promise<BasePolicy | null> {\n const entity = this.create();\n entity.id = id;\n\n try {\n return await this.findDescendantsTree(entity);\n } catch (e) {\n if (e instanceof EntityNotFoundError) {\n return null;\n }\n\n throw e;\n }\n }\n}\n"],"mappings":";;;;;;;;AAgBA,IAAaK,mBAAb,cAAsCH,iBAAAA;CAClC,YAAYI,UAAsC;EAC9C,MAAMA,UAAU;GACZC,sBAAsBC,OAAOC,WAAAA;IACzBD,MAAME,YAAYD,OAAOE;IACzBH,MAAMI,WAAWH,OAAOG;IAExB,OAAOJ;GACX;GACAK,QAAQT;GACRU,qBAAqB;GACrBC,iBAAiBZ;GACjBa,wBAAwB;GACxBC,aAAahB,YAAYiB;EAC7B,CAAA;CACJ;CAEA,MAAMC,wBAAwBR,IAAwC;EAClE,MAAME,SAAS,KAAKO,OAAM;EAC1BP,OAAOF,KAAKA;EAEZ,IAAI;GACA,OAAO,MAAM,KAAKU,oBAAoBR,MAAAA;EAC1C,SAASS,GAAG;GACR,IAAIA,aAAatB,qBACb,OAAO;GAGX,MAAMsB;EACV;CACJ;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","PolicyEntity","CachePrefix","publishEvent","event","data","content","type","POLICY","destinations","channel","id","PolicySubscriber","listenTo","afterInsert","entity","CREATED","afterUpdate","connection","queryResultCache","remove","prefix","REALM","key","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/policy/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { Policy } from '@authup/core-kit';\nimport {\n EntityDefaultEventName,\n EntityType,\n buildEntityChannelName,\n} from '@authup/core-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface, \n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { PolicyEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: Policy,\n) {\n await publishDomainEvent({\n content: {\n type: EntityType.POLICY,\n event,\n data,\n },\n destinations: [\n { channel: (id) => buildEntityChannelName(EntityType.POLICY, id) },\n ],\n });\n}\n\n@EventSubscriber()\nexport class PolicySubscriber implements EntitySubscriberInterface<Policy> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return PolicyEntity;\n }\n\n async afterInsert(event: InsertEvent<Policy>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<Policy>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.REALM,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as Policy);\n }\n\n async afterRemove(event: RemoveEvent<Policy>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.POLICY,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAoBD,eAAeQ,aACXC,OACAC,MAAY;AAEZ,OAAML,mBAAmB;EACrBM,SAAS;GACLC,MAAMX,WAAWY;GACjBJ;GACAC;GACJ;EACAI,cAAc,CACV,EAAEC,UAAUC,OAAOd,uBAAuBD,WAAWY,QAAQG,GAAAA,EAAI,CACpE;EACL,CAAA;;AAIJ,IAAaC,mBAAb,MAAaA;CAETC,WAA8B;AAC1B,SAAOZ;;CAGX,MAAMa,YAAYV,OAA0C;AACxD,MAAI,CAACA,MAAMW,OACP;AAGJ,QAAMZ,aAAaR,uBAAuBqB,SAASZ,MAAMW,OAAM;;CAGnE,MAAME,YAAYb,OAA0C;AACxD,MAAI,CAACA,MAAMW,OACP;AAGJ,MAAIX,MAAMc,WAAWC,iBACjB,OAAMf,MAAMc,WAAWC,iBAAiBC,OAAO,CAC3CtB,kBAAkB;GACduB,QAAQnB,YAAYoB;GACpBC,KAAKnB,MAAMW,OAAOJ;GACtB,CAAA,CACH,CAAA;AAGL,QAAMR,aAAaR,uBAAuB6B,SAASpB,MAAMW,OAAM;;CAGnE,MAAMU,YAAYrB,OAA0C;AACxD,MAAI,CAACA,MAAMW,OACP;AAGJ,MAAIX,MAAMc,WAAWC,iBACjB,OAAMf,MAAMc,WAAWC,iBAAiBC,OAAO,CAC3CtB,kBAAkB;GACduB,QAAQnB,YAAYM;GACpBe,KAAKnB,MAAMW,OAAOJ;GACtB,CAAA,CACH,CAAA;AAGL,QAAMR,aAAaR,uBAAuB+B,SAAStB,MAAMW,OAAM"}
1
+ {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","PolicyEntity","CachePrefix","publishEvent","event","data","content","type","POLICY","destinations","channel","id","PolicySubscriber","listenTo","afterInsert","entity","CREATED","afterUpdate","connection","queryResultCache","remove","prefix","REALM","key","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/policy/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { Policy } from '@authup/core-kit';\nimport {\n EntityDefaultEventName,\n EntityType,\n buildEntityChannelName,\n} from '@authup/core-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface, \n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { PolicyEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: Policy,\n) {\n await publishDomainEvent({\n content: {\n type: EntityType.POLICY,\n event,\n data,\n },\n destinations: [\n { channel: (id) => buildEntityChannelName(EntityType.POLICY, id) },\n ],\n });\n}\n\n@EventSubscriber()\nexport class PolicySubscriber implements EntitySubscriberInterface<Policy> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return PolicyEntity;\n }\n\n async afterInsert(event: InsertEvent<Policy>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<Policy>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.REALM,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as Policy);\n }\n\n async afterRemove(event: RemoveEvent<Policy>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.POLICY,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAoBD,eAAeQ,aACXC,OACAC,MAAY;CAEZ,MAAML,mBAAmB;EACrBM,SAAS;GACLC,MAAMX,WAAWY;GACjBJ;GACAC;EACJ;EACAI,cAAc,CACV,EAAEC,UAAUC,OAAOd,uBAAuBD,WAAWY,QAAQG,EAAAA,EAAI,CAAA;CAEzE,CAAA;AACJ;AAGA,IAAaC,mBAAb,MAAaA;CAETC,WAA8B;EAC1B,OAAOZ;CACX;CAEA,MAAMa,YAAYV,OAA0C;EACxD,IAAI,CAACA,MAAMW,QACP;EAGJ,MAAMZ,aAAaR,uBAAuBqB,SAASZ,MAAMW,MAAM;CACnE;CAEA,MAAME,YAAYb,OAA0C;EACxD,IAAI,CAACA,MAAMW,QACP;EAGJ,IAAIX,MAAMc,WAAWC,kBACjB,MAAMf,MAAMc,WAAWC,iBAAiBC,OAAO,CAC3CtB,kBAAkB;GACduB,QAAQnB,YAAYoB;GACpBC,KAAKnB,MAAMW,OAAOJ;EACtB,CAAA,CAAA,CACH;EAGL,MAAMR,aAAaR,uBAAuB6B,SAASpB,MAAMW,MAAM;CACnE;CAEA,MAAMU,YAAYrB,OAA0C;EACxD,IAAI,CAACA,MAAMW,QACP;EAGJ,IAAIX,MAAMc,WAAWC,kBACjB,MAAMf,MAAMc,WAAWC,iBAAiBC,OAAO,CAC3CtB,kBAAkB;GACduB,QAAQnB,YAAYM;GACpBe,KAAKnB,MAAMW,OAAOJ;EACtB,CAAA,CAAA,CACH;EAGL,MAAMR,aAAaR,uBAAuB+B,SAAStB,MAAMW,MAAM;CACnE;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","JoinColumn","ManyToOne","PrimaryGeneratedColumn","Unique","UpdateDateColumn","deserialize","serialize","PolicyEntity","RealmEntity","PolicyAttributeEntity","id","name","value","realm_id","realm","policy_id","policy","created_at","updated_at","type","length","nullable","transformer","to","from","onDelete"],"sources":["../../../../../src/adapters/database/domains/policy-attribute/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity, \n JoinColumn, \n ManyToOne,\n PrimaryGeneratedColumn, \n Unique,\n UpdateDateColumn,\n} from 'typeorm';\nimport type { Policy, PolicyAttribute, Realm } from '@authup/core-kit';\nimport {\n deserialize,\n serialize,\n} from '@authup/kit';\nimport { PolicyEntity } from '../policy/entity.ts';\nimport { RealmEntity } from '../realm/index.ts';\n\n@Unique(['name', 'policy_id'])\n@Entity({ name: 'auth_policy_attributes' })\nexport class PolicyAttributeEntity implements PolicyAttribute {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Column({\n type: 'varchar',\n length: 255, \n })\n name: string;\n\n @Column({\n type: 'text',\n nullable: true,\n transformer: {\n to(value: any): any {\n return serialize(value);\n },\n from(value: any): any {\n return deserialize(value);\n },\n },\n })\n value: string | null;\n\n // ------------------------------------------------------------------\n\n @Column({ nullable: true })\n realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'realm_id' })\n realm: RealmEntity | null;\n\n // ------------------------------------------------------------------\n\n @Column()\n policy_id: Policy['id'];\n\n @ManyToOne(() => PolicyEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'policy_id' })\n policy: PolicyEntity;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: Date;\n\n @UpdateDateColumn()\n updated_at: Date;\n}\n"],"mappings":";;;;;;;;;;;;;;;AA2BA,IAAaY,wBAAb,MAAaA;CAETC;CAMAC;CAcAC;CAKAC;CAOAC;CAKAC;CAIAC;CAKAC;CAGAC;;;;CA9CIC,MAAM;CACNC,QAAQ;;;CAKRD,MAAM;CACNE,UAAU;CACVC,aAAa;EACTC,GAAGX,OAAU;AACT,UAAON,UAAUM,MAAAA;;EAErBY,KAAKZ,OAAU;AACX,UAAOP,YAAYO,MAAAA;;EAE3B;;uBAMMS,UAAU,MAAA,CAAA,EAAA,aAAA,eAAA,OAAA,CAAA,EAAA,sBAAA,WAAA,YAAA,KAAA,EAAA;;iBAGHb,aAAAA;EACbiB,UAAU;EACVJ,UAAU;;cAEAV,MAAM,YAAA,CAAA;;;;;iBAQHJ,cAAAA,EAAgBkB,UAAU,WAAA,CAAA;cAC7Bd,MAAM,aAAA,CAAA;;;;;8CA5Cf,QAAQ,YAAA,CAAA,EAAA,OAAA,EACPA,MAAM,0BAAA,CAAA,CAAA,EAAA,sBAAA"}
1
+ {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","JoinColumn","ManyToOne","PrimaryGeneratedColumn","Unique","UpdateDateColumn","deserialize","serialize","PolicyEntity","RealmEntity","PolicyAttributeEntity","id","name","value","realm_id","realm","policy_id","policy","created_at","updated_at","type","length","nullable","transformer","to","from","onDelete"],"sources":["../../../../../src/adapters/database/domains/policy-attribute/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity, \n JoinColumn, \n ManyToOne,\n PrimaryGeneratedColumn, \n Unique,\n UpdateDateColumn,\n} from 'typeorm';\nimport type { Policy, PolicyAttribute, Realm } from '@authup/core-kit';\nimport {\n deserialize,\n serialize,\n} from '@authup/kit';\nimport { PolicyEntity } from '../policy/entity.ts';\nimport { RealmEntity } from '../realm/index.ts';\n\n@Unique(['name', 'policy_id'])\n@Entity({ name: 'auth_policy_attributes' })\nexport class PolicyAttributeEntity implements PolicyAttribute {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Column({\n type: 'varchar',\n length: 255, \n })\n name: string;\n\n @Column({\n type: 'text',\n nullable: true,\n transformer: {\n to(value: any): any {\n return serialize(value);\n },\n from(value: any): any {\n return deserialize(value);\n },\n },\n })\n value: string | null;\n\n // ------------------------------------------------------------------\n\n @Column({ nullable: true })\n realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'realm_id' })\n realm: RealmEntity | null;\n\n // ------------------------------------------------------------------\n\n @Column()\n policy_id: Policy['id'];\n\n @ManyToOne(() => PolicyEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'policy_id' })\n policy: PolicyEntity;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: Date;\n\n @UpdateDateColumn()\n updated_at: Date;\n}\n"],"mappings":";;;;;;;;;;;;;;;AA2BA,IAAaY,wBAAb,MAAaA;CAETC;CAMAC;CAcAC;CAKAC;CAOAC;CAKAC;CAIAC;CAKAC;CAGAC;AACJ;;;CA/CQC,MAAM;CACNC,QAAQ;;;CAKRD,MAAM;CACNE,UAAU;CACVC,aAAa;EACTC,GAAGX,OAAU;GACT,OAAON,UAAUM,KAAAA;EACrB;EACAY,KAAKZ,OAAU;GACX,OAAOP,YAAYO,KAAAA;EACvB;CACJ;;uBAMMS,UAAU,KAAA,CAAA,GAAA,aAAA,eAAA,MAAA,CAAA,GAAA,sBAAA,WAAA,YAAA,KAAA,CAAA;;iBAGHb,aAAAA;EACbiB,UAAU;EACVJ,UAAU;;cAEAV,MAAM,WAAA,CAAA;;;;;iBAQHJ,cAAAA,EAAgBkB,UAAU,UAAA,CAAA;cAC7Bd,MAAM,YAAA,CAAA;;;;;8CA5Cf,QAAQ,WAAA,CAAA,GAAA,OAAA,EACPA,MAAM,yBAAA,CAAA,CAAA,GAAA,qBAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildEntityNamespaceName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","PolicyAttributeEntity","CachePrefix","publishEvent","event","data","destinations","channel","id","POLICY_ATTRIBUTE","realm_id","push","namespace","content","type","PolicyAttributeSubscriber","listenTo","afterInsert","entity","connection","queryResultCache","remove","prefix","POLICY_OWNED_ATTRIBUTES","key","policy_id","CREATED","afterUpdate","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/policy-attribute/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { PolicyAttribute } from '@authup/core-kit';\nimport {\n EntityDefaultEventName, \n EntityType, \n buildEntityChannelName, \n buildEntityNamespaceName,\n} from '@authup/core-kit';\nimport type { DomainEventDestinations } from '@authup/server-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface, \n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { PolicyAttributeEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: PolicyAttribute,\n) {\n const destinations : DomainEventDestinations = [\n { channel: (id) => buildEntityChannelName(EntityType.POLICY_ATTRIBUTE, id) },\n ];\n if (data.realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.POLICY_ATTRIBUTE, id),\n namespace: buildEntityNamespaceName(data.realm_id),\n });\n }\n await publishDomainEvent({\n content: {\n type: EntityType.POLICY_ATTRIBUTE,\n event,\n data,\n },\n destinations,\n });\n}\n\n@EventSubscriber()\nexport class PolicyAttributeSubscriber implements EntitySubscriberInterface<PolicyAttribute> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return PolicyAttributeEntity;\n }\n\n async afterInsert(event: InsertEvent<PolicyAttribute>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.POLICY_OWNED_ATTRIBUTES,\n key: event.entity.policy_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<PolicyAttribute>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.POLICY_OWNED_ATTRIBUTES,\n key: event.entity.policy_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as PolicyAttribute);\n }\n\n async afterRemove(event: RemoveEvent<PolicyAttribute>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.POLICY_OWNED_ATTRIBUTES,\n key: event.entity.policy_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAsBD,eAAeS,aACXC,OACAC,MAAqB;CAErB,MAAMC,eAAyC,CAC3C,EAAEC,UAAUC,OAAOZ,uBAAuBD,WAAWc,kBAAkBD,GAAAA,EAAI,CAC9E;AACD,KAAIH,KAAKK,SACLJ,cAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,kBAAkBD,GAAAA;EACrEI,WAAWf,yBAAyBQ,KAAKK,SAAQ;EACrD,CAAA;AAEJ,OAAMV,mBAAmB;EACrBa,SAAS;GACLC,MAAMnB,WAAWc;GACjBL;GACAC;GACJ;EACAC;EACJ,CAAA;;AAIJ,IAAaS,4BAAb,MAAaA;CAETC,WAA8B;AAC1B,SAAOf;;CAGX,MAAMgB,YAAYb,OAAmD;AACjE,MAAI,CAACA,MAAMc,OACP;AAGJ,MAAId,MAAMe,WAAWC,iBACjB,OAAMhB,MAAMe,WAAWC,iBAAiBC,OAAO,CAC3CvB,kBAAkB;GACdwB,QAAQpB,YAAYqB;GACpBC,KAAKpB,MAAMc,OAAOO;GACtB,CAAA,CACH,CAAA;AAGL,QAAMtB,aAAaT,uBAAuBgC,SAAStB,MAAMc,OAAM;;CAGnE,MAAMS,YAAYvB,OAAmD;AACjE,MAAI,CAACA,MAAMc,OACP;AAGJ,MAAId,MAAMe,WAAWC,iBACjB,OAAMhB,MAAMe,WAAWC,iBAAiBC,OAAO,CAC3CvB,kBAAkB;GACdwB,QAAQpB,YAAYqB;GACpBC,KAAKpB,MAAMc,OAAOO;GACtB,CAAA,CACH,CAAA;AAGL,QAAMtB,aAAaT,uBAAuBkC,SAASxB,MAAMc,OAAM;;CAGnE,MAAMW,YAAYzB,OAAmD;AACjE,MAAI,CAACA,MAAMc,OACP;AAGJ,MAAId,MAAMe,WAAWC,iBACjB,OAAMhB,MAAMe,WAAWC,iBAAiBC,OAAO,CAC3CvB,kBAAkB;GACdwB,QAAQpB,YAAYqB;GACpBC,KAAKpB,MAAMc,OAAOO;GACtB,CAAA,CACH,CAAA;AAGL,QAAMtB,aAAaT,uBAAuBoC,SAAS1B,MAAMc,OAAM"}
1
+ {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildEntityNamespaceName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","PolicyAttributeEntity","CachePrefix","publishEvent","event","data","destinations","channel","id","POLICY_ATTRIBUTE","realm_id","push","namespace","content","type","PolicyAttributeSubscriber","listenTo","afterInsert","entity","connection","queryResultCache","remove","prefix","POLICY_OWNED_ATTRIBUTES","key","policy_id","CREATED","afterUpdate","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/policy-attribute/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { PolicyAttribute } from '@authup/core-kit';\nimport {\n EntityDefaultEventName, \n EntityType, \n buildEntityChannelName, \n buildEntityNamespaceName,\n} from '@authup/core-kit';\nimport type { DomainEventDestinations } from '@authup/server-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface, \n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { PolicyAttributeEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: PolicyAttribute,\n) {\n const destinations : DomainEventDestinations = [\n { channel: (id) => buildEntityChannelName(EntityType.POLICY_ATTRIBUTE, id) },\n ];\n if (data.realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.POLICY_ATTRIBUTE, id),\n namespace: buildEntityNamespaceName(data.realm_id),\n });\n }\n await publishDomainEvent({\n content: {\n type: EntityType.POLICY_ATTRIBUTE,\n event,\n data,\n },\n destinations,\n });\n}\n\n@EventSubscriber()\nexport class PolicyAttributeSubscriber implements EntitySubscriberInterface<PolicyAttribute> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return PolicyAttributeEntity;\n }\n\n async afterInsert(event: InsertEvent<PolicyAttribute>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.POLICY_OWNED_ATTRIBUTES,\n key: event.entity.policy_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<PolicyAttribute>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.POLICY_OWNED_ATTRIBUTES,\n key: event.entity.policy_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as PolicyAttribute);\n }\n\n async afterRemove(event: RemoveEvent<PolicyAttribute>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.POLICY_OWNED_ATTRIBUTES,\n key: event.entity.policy_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAsBD,eAAeS,aACXC,OACAC,MAAqB;CAErB,MAAMC,eAAyC,CAC3C,EAAEC,UAAUC,OAAOZ,uBAAuBD,WAAWc,kBAAkBD,EAAAA,EAAI,CAAA;CAE/E,IAAIH,KAAKK,UACLJ,aAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,kBAAkBD,EAAAA;EACrEI,WAAWf,yBAAyBQ,KAAKK,QAAQ;CACrD,CAAA;CAEJ,MAAMV,mBAAmB;EACrBa,SAAS;GACLC,MAAMnB,WAAWc;GACjBL;GACAC;EACJ;EACAC;CACJ,CAAA;AACJ;AAGA,IAAaS,4BAAb,MAAaA;CAETC,WAA8B;EAC1B,OAAOf;CACX;CAEA,MAAMgB,YAAYb,OAAmD;EACjE,IAAI,CAACA,MAAMc,QACP;EAGJ,IAAId,MAAMe,WAAWC,kBACjB,MAAMhB,MAAMe,WAAWC,iBAAiBC,OAAO,CAC3CvB,kBAAkB;GACdwB,QAAQpB,YAAYqB;GACpBC,KAAKpB,MAAMc,OAAOO;EACtB,CAAA,CAAA,CACH;EAGL,MAAMtB,aAAaT,uBAAuBgC,SAAStB,MAAMc,MAAM;CACnE;CAEA,MAAMS,YAAYvB,OAAmD;EACjE,IAAI,CAACA,MAAMc,QACP;EAGJ,IAAId,MAAMe,WAAWC,kBACjB,MAAMhB,MAAMe,WAAWC,iBAAiBC,OAAO,CAC3CvB,kBAAkB;GACdwB,QAAQpB,YAAYqB;GACpBC,KAAKpB,MAAMc,OAAOO;EACtB,CAAA,CAAA,CACH;EAGL,MAAMtB,aAAaT,uBAAuBkC,SAASxB,MAAMc,MAAM;CACnE;CAEA,MAAMW,YAAYzB,OAAmD;EACjE,IAAI,CAACA,MAAMc,QACP;EAGJ,IAAId,MAAMe,WAAWC,kBACjB,MAAMhB,MAAMe,WAAWC,iBAAiBC,OAAO,CAC3CvB,kBAAkB;GACdwB,QAAQpB,YAAYqB;GACpBC,KAAKpB,MAAMc,OAAOO;EACtB,CAAA,CAAA,CACH;EAGL,MAAMtB,aAAaT,uBAAuBoC,SAAS1B,MAAMc,MAAM;CACnE;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","PrimaryGeneratedColumn","UpdateDateColumn","RealmEntity","id","name","display_name","description","built_in","created_at","updated_at","type","length","unique","nullable","default"],"sources":["../../../../../src/adapters/database/domains/realm/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity,\n PrimaryGeneratedColumn,\n UpdateDateColumn,\n} from 'typeorm';\nimport type { Realm } from '@authup/core-kit';\n\n@Entity({ name: 'auth_realms' })\nexport class RealmEntity implements Realm {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Column({\n type: 'varchar',\n length: 128,\n unique: true, \n })\n name: string;\n\n @Column({\n type: 'varchar',\n length: 256,\n nullable: true, \n })\n display_name: string | null;\n\n @Column({\n type: 'text',\n nullable: true,\n default: null, \n })\n description: string | null;\n\n @Column({\n type: 'boolean',\n default: false, \n })\n built_in: boolean;\n\n @CreateDateColumn()\n created_at: string;\n\n @UpdateDateColumn()\n updated_at: string;\n}\n"],"mappings":";;;;;;;;;;;AAiBA,IAAaK,cAAb,MAAaA;CAETC;CAOAC;CAOAC;CAOAC;CAMAC;CAGAC;CAGAC;;;;CA9BIC,MAAM;CACNC,QAAQ;CACRC,QAAQ;;;CAKRF,MAAM;CACNC,QAAQ;CACRE,UAAU;;;CAKVH,MAAM;CACNG,UAAU;CACVC,SAAS;;;CAKTJ,MAAM;CACNI,SAAS;;;;qCA5BPV,MAAM,eAAA,CAAA,CAAA,EAAA,YAAA"}
1
+ {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","PrimaryGeneratedColumn","UpdateDateColumn","RealmEntity","id","name","display_name","description","built_in","created_at","updated_at","type","length","unique","nullable","default"],"sources":["../../../../../src/adapters/database/domains/realm/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity,\n PrimaryGeneratedColumn,\n UpdateDateColumn,\n} from 'typeorm';\nimport type { Realm } from '@authup/core-kit';\n\n@Entity({ name: 'auth_realms' })\nexport class RealmEntity implements Realm {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Column({\n type: 'varchar',\n length: 128,\n unique: true, \n })\n name: string;\n\n @Column({\n type: 'varchar',\n length: 256,\n nullable: true, \n })\n display_name: string | null;\n\n @Column({\n type: 'text',\n nullable: true,\n default: null, \n })\n description: string | null;\n\n @Column({\n type: 'boolean',\n default: false, \n })\n built_in: boolean;\n\n @CreateDateColumn()\n created_at: string;\n\n @UpdateDateColumn()\n updated_at: string;\n}\n"],"mappings":";;;;;;;;;;;AAiBA,IAAaK,cAAb,MAAaA;CAETC;CAOAC;CAOAC;CAOAC;CAMAC;CAGAC;CAGAC;AACJ;;;CA/BQC,MAAM;CACNC,QAAQ;CACRC,QAAQ;;;CAKRF,MAAM;CACNC,QAAQ;CACRE,UAAU;;;CAKVH,MAAM;CACNG,UAAU;CACVC,SAAS;;;CAKTJ,MAAM;CACNI,SAAS;;;;qCA5BPV,MAAM,cAAA,CAAA,CAAA,GAAA,WAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"repository.mjs","names":["REALM_MASTER_NAME","InstanceChecker","Repository","RealmEntity","RealmRepository","instance","isDataSource","manager","getMaster","repository","getRepository","entity","findOne","where","name","cache","Error"],"sources":["../../../../../src/adapters/database/domains/realm/repository.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\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 { REALM_MASTER_NAME } from '@authup/core-kit';\nimport type { DataSource, EntityManager } from 'typeorm';\nimport { InstanceChecker, Repository } from 'typeorm';\nimport { RealmEntity } from './entity.ts';\n\nexport class RealmRepository extends Repository<RealmEntity> {\n constructor(instance: DataSource | EntityManager) {\n super(RealmEntity, InstanceChecker.isDataSource(instance) ? instance.manager : instance);\n }\n\n async getMaster() : Promise<RealmEntity> {\n const repository = this.manager.getRepository(RealmEntity);\n\n const entity = await repository.findOne({\n where: { name: REALM_MASTER_NAME },\n cache: true,\n });\n\n if (!entity) {\n throw new Error(`The ${REALM_MASTER_NAME} does not exist.`);\n }\n\n return entity;\n }\n}\n"],"mappings":";;;;AAYA,IAAaI,kBAAb,cAAqCF,WAAAA;CACjC,YAAYG,UAAsC;AAC9C,QAAMF,aAAaF,gBAAgBK,aAAaD,SAAAA,GAAYA,SAASE,UAAUF,SAAAA;;CAGnF,MAAMG,YAAmC;EAGrC,MAAMG,SAAS,MAFI,KAAKJ,QAAQG,cAAcP,YAEzBM,CAAWG,QAAQ;GACpCC,OAAO,EAAEC,MAAMd,mBAAkB;GACjCe,OAAO;GACX,CAAA;AAEA,MAAI,CAACJ,OACD,OAAM,IAAIK,MAAM,OAAOhB,kBAAkB,kBAAiB;AAG9D,SAAOW"}
1
+ {"version":3,"file":"repository.mjs","names":["REALM_MASTER_NAME","InstanceChecker","Repository","RealmEntity","RealmRepository","instance","isDataSource","manager","getMaster","repository","getRepository","entity","findOne","where","name","cache","Error"],"sources":["../../../../../src/adapters/database/domains/realm/repository.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\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 { REALM_MASTER_NAME } from '@authup/core-kit';\nimport type { DataSource, EntityManager } from 'typeorm';\nimport { InstanceChecker, Repository } from 'typeorm';\nimport { RealmEntity } from './entity.ts';\n\nexport class RealmRepository extends Repository<RealmEntity> {\n constructor(instance: DataSource | EntityManager) {\n super(RealmEntity, InstanceChecker.isDataSource(instance) ? instance.manager : instance);\n }\n\n async getMaster() : Promise<RealmEntity> {\n const repository = this.manager.getRepository(RealmEntity);\n\n const entity = await repository.findOne({\n where: { name: REALM_MASTER_NAME },\n cache: true,\n });\n\n if (!entity) {\n throw new Error(`The ${REALM_MASTER_NAME} does not exist.`);\n }\n\n return entity;\n }\n}\n"],"mappings":";;;;AAYA,IAAaI,kBAAb,cAAqCF,WAAAA;CACjC,YAAYG,UAAsC;EAC9C,MAAMF,aAAaF,gBAAgBK,aAAaD,QAAAA,IAAYA,SAASE,UAAUF,QAAAA;CACnF;CAEA,MAAMG,YAAmC;EAGrC,MAAMG,SAAS,MAFI,KAAKJ,QAAQG,cAAcP,WAEzBM,EAAWG,QAAQ;GACpCC,OAAO,EAAEC,MAAMd,kBAAkB;GACjCe,OAAO;EACX,CAAA;EAEA,IAAI,CAACJ,QACD,MAAM,IAAIK,MAAM,OAAOhB,kBAAkB,iBAAiB;EAG9D,OAAOW;CACX;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","RealmEntity","CachePrefix","publishEvent","event","data","content","type","REALM","destinations","channel","id","RealmSubscriber","listenTo","afterInsert","entity","CREATED","afterUpdate","connection","queryResultCache","remove","prefix","key","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/realm/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { Realm } from '@authup/core-kit';\nimport {\n EntityDefaultEventName,\n EntityType,\n buildEntityChannelName,\n} from '@authup/core-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface, \n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { RealmEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: Realm,\n) {\n await publishDomainEvent({\n content: {\n type: EntityType.REALM,\n event,\n data,\n },\n destinations: [\n { channel: (id) => buildEntityChannelName(EntityType.REALM, id) },\n ],\n });\n}\n\n@EventSubscriber()\nexport class RealmSubscriber implements EntitySubscriberInterface<Realm> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return RealmEntity;\n }\n\n async afterInsert(event: InsertEvent<Realm>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<Realm>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.REALM,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as Realm);\n }\n\n async afterRemove(event: RemoveEvent<Realm>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.REALM,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAoBD,eAAeQ,aACXC,OACAC,MAAW;AAEX,OAAML,mBAAmB;EACrBM,SAAS;GACLC,MAAMX,WAAWY;GACjBJ;GACAC;GACJ;EACAI,cAAc,CACV,EAAEC,UAAUC,OAAOd,uBAAuBD,WAAWY,OAAOG,GAAAA,EAAI,CACnE;EACL,CAAA;;AAIJ,IAAaC,kBAAb,MAAaA;CAETC,WAA8B;AAC1B,SAAOZ;;CAGX,MAAMa,YAAYV,OAAyC;AACvD,MAAI,CAACA,MAAMW,OACP;AAGJ,QAAMZ,aAAaR,uBAAuBqB,SAASZ,MAAMW,OAAM;;CAGnE,MAAME,YAAYb,OAAyC;AACvD,MAAI,CAACA,MAAMW,OACP;AAGJ,MAAIX,MAAMc,WAAWC,iBACjB,OAAMf,MAAMc,WAAWC,iBAAiBC,OAAO,CAC3CtB,kBAAkB;GACduB,QAAQnB,YAAYM;GACpBc,KAAKlB,MAAMW,OAAOJ;GACtB,CAAA,CACH,CAAA;AAGL,QAAMR,aAAaR,uBAAuB4B,SAASnB,MAAMW,OAAM;;CAGnE,MAAMS,YAAYpB,OAAyC;AACvD,MAAI,CAACA,MAAMW,OACP;AAGJ,MAAIX,MAAMc,WAAWC,iBACjB,OAAMf,MAAMc,WAAWC,iBAAiBC,OAAO,CAC3CtB,kBAAkB;GACduB,QAAQnB,YAAYM;GACpBc,KAAKlB,MAAMW,OAAOJ;GACtB,CAAA,CACH,CAAA;AAGL,QAAMR,aAAaR,uBAAuB8B,SAASrB,MAAMW,OAAM"}
1
+ {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","RealmEntity","CachePrefix","publishEvent","event","data","content","type","REALM","destinations","channel","id","RealmSubscriber","listenTo","afterInsert","entity","CREATED","afterUpdate","connection","queryResultCache","remove","prefix","key","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/realm/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { Realm } from '@authup/core-kit';\nimport {\n EntityDefaultEventName,\n EntityType,\n buildEntityChannelName,\n} from '@authup/core-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface, \n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { RealmEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: Realm,\n) {\n await publishDomainEvent({\n content: {\n type: EntityType.REALM,\n event,\n data,\n },\n destinations: [\n { channel: (id) => buildEntityChannelName(EntityType.REALM, id) },\n ],\n });\n}\n\n@EventSubscriber()\nexport class RealmSubscriber implements EntitySubscriberInterface<Realm> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return RealmEntity;\n }\n\n async afterInsert(event: InsertEvent<Realm>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<Realm>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.REALM,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as Realm);\n }\n\n async afterRemove(event: RemoveEvent<Realm>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.REALM,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAoBD,eAAeQ,aACXC,OACAC,MAAW;CAEX,MAAML,mBAAmB;EACrBM,SAAS;GACLC,MAAMX,WAAWY;GACjBJ;GACAC;EACJ;EACAI,cAAc,CACV,EAAEC,UAAUC,OAAOd,uBAAuBD,WAAWY,OAAOG,EAAAA,EAAI,CAAA;CAExE,CAAA;AACJ;AAGA,IAAaC,kBAAb,MAAaA;CAETC,WAA8B;EAC1B,OAAOZ;CACX;CAEA,MAAMa,YAAYV,OAAyC;EACvD,IAAI,CAACA,MAAMW,QACP;EAGJ,MAAMZ,aAAaR,uBAAuBqB,SAASZ,MAAMW,MAAM;CACnE;CAEA,MAAME,YAAYb,OAAyC;EACvD,IAAI,CAACA,MAAMW,QACP;EAGJ,IAAIX,MAAMc,WAAWC,kBACjB,MAAMf,MAAMc,WAAWC,iBAAiBC,OAAO,CAC3CtB,kBAAkB;GACduB,QAAQnB,YAAYM;GACpBc,KAAKlB,MAAMW,OAAOJ;EACtB,CAAA,CAAA,CACH;EAGL,MAAMR,aAAaR,uBAAuB4B,SAASnB,MAAMW,MAAM;CACnE;CAEA,MAAMS,YAAYpB,OAAyC;EACvD,IAAI,CAACA,MAAMW,QACP;EAGJ,IAAIX,MAAMc,WAAWC,kBACjB,MAAMf,MAAMc,WAAWC,iBAAiBC,OAAO,CAC3CtB,kBAAkB;GACduB,QAAQnB,YAAYM;GACpBc,KAAKlB,MAAMW,OAAOJ;EACtB,CAAA,CAAA,CACH;EAGL,MAAMR,aAAaR,uBAAuB8B,SAASrB,MAAMW,MAAM;CACnE;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity.mjs","names":["createNanoID","BeforeInsert","BeforeUpdate","Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","Unique","UpdateDateColumn","RealmEntity","UserEntity","RobotEntity","id","secret","name","display_name","description","active","created_at","updated_at","user_id","user","client_id","client","realm_id","realm","setName","length","type","select","nullable","default","onDelete"],"sources":["../../../../../src/adapters/database/domains/robot/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\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 { createNanoID } from '@authup/kit';\nimport {\n BeforeInsert,\n BeforeUpdate,\n Column,\n CreateDateColumn,\n Entity, \n Index,\n JoinColumn,\n ManyToOne,\n PrimaryGeneratedColumn,\n Unique,\n UpdateDateColumn,\n} from 'typeorm';\nimport type {\n Client,\n Realm,\n Robot,\n User,\n} from '@authup/core-kit';\nimport { RealmEntity } from '../realm/index.ts';\nimport { UserEntity } from '../user/index.ts';\n\n@Entity({ name: 'auth_robots' })\n@Unique(['name', 'realm_id'])\nexport class RobotEntity implements Robot {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Column({\n type: 'varchar',\n length: 256,\n select: false, \n })\n secret: string;\n\n @Column({\n type: 'varchar',\n length: 128, \n })\n name: string;\n\n @Column({\n type: 'varchar',\n length: 256,\n nullable: true, \n })\n display_name: string | null;\n\n @Column({\n type: 'text',\n nullable: true, \n })\n description: string;\n\n @Column({\n type: 'boolean',\n default: true, \n })\n active: boolean;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: Date;\n\n @UpdateDateColumn()\n updated_at: Date;\n\n // ------------------------------------------------------------------\n\n @Column({\n nullable: true,\n default: null, \n })\n user_id: User['id'] | null;\n\n @ManyToOne(() => UserEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'user_id' })\n user: User | null;\n\n // ------------------------------------------------------------------\n\n @Index()\n @Column({ nullable: true })\n client_id: Client['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'client_id' })\n client: Client | null;\n\n // ------------------------------------------------------------------\n\n @Index()\n @Column()\n realm_id: Realm['id'];\n\n @ManyToOne(() => RealmEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'realm_id' })\n realm: Realm;\n\n // ------------------------------------------------------------------\n\n @BeforeUpdate()\n @BeforeInsert()\n setName() {\n if (!this.name || this.name.length === 0) {\n this.name = createNanoID(36);\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAgCA,IAAac,cAAb,MAAaA;CAETC;CAOAC;CAMAC;CAOAC;CAMAC;CAMAC;CAKAC;CAGAC;CAQAC;CAOAC;CAMAC;CAOAC;CAMAC;CAIAC;CAMAC,UAAU;AACN,MAAI,CAAC,KAAKZ,QAAQ,KAAKA,KAAKa,WAAW,EACnC,MAAKb,OAAOjB,aAAa,GAAA;;;;;CAnF7B+B,MAAM;CACND,QAAQ;CACRE,QAAQ;;;CAKRD,MAAM;CACND,QAAQ;;;CAKRC,MAAM;CACND,QAAQ;CACRG,UAAU;;;CAKVF,MAAM;CACNE,UAAU;;;CAKVF,MAAM;CACNG,SAAS;;;;;CAeTD,UAAU;CACVC,SAAS;;;iBAIIrB,YAAAA;EACbsB,UAAU;EACVF,UAAU;;cAEAhB,MAAM,WAAA,CAAA;;;;;UAMVgB,UAAU,MAAA,CAAA;;;;iBAGHrB,aAAAA;EACbuB,UAAU;EACVF,UAAU;;cAEAhB,MAAM,aAAA,CAAA;;;;;;;;;iBASHL,aAAAA,EAAeuB,UAAU,WAAA,CAAA;cAC5BlB,MAAM,YAAA,CAAA;;;;;;;;;;qCAjFdA,MAAM,eAAA,CAAA,EAAA,OAAA,CACP,QAAQ,WAAA,CAAA,CAAA,EAAA,YAAA"}
1
+ {"version":3,"file":"entity.mjs","names":["createNanoID","BeforeInsert","BeforeUpdate","Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","Unique","UpdateDateColumn","RealmEntity","UserEntity","RobotEntity","id","secret","name","display_name","description","active","created_at","updated_at","user_id","user","client_id","client","realm_id","realm","setName","length","type","select","nullable","default","onDelete"],"sources":["../../../../../src/adapters/database/domains/robot/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\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 { createNanoID } from '@authup/kit';\nimport {\n BeforeInsert,\n BeforeUpdate,\n Column,\n CreateDateColumn,\n Entity, \n Index,\n JoinColumn,\n ManyToOne,\n PrimaryGeneratedColumn,\n Unique,\n UpdateDateColumn,\n} from 'typeorm';\nimport type {\n Client,\n Realm,\n Robot,\n User,\n} from '@authup/core-kit';\nimport { RealmEntity } from '../realm/index.ts';\nimport { UserEntity } from '../user/index.ts';\n\n@Entity({ name: 'auth_robots' })\n@Unique(['name', 'realm_id'])\nexport class RobotEntity implements Robot {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Column({\n type: 'varchar',\n length: 256,\n select: false, \n })\n secret: string;\n\n @Column({\n type: 'varchar',\n length: 128, \n })\n name: string;\n\n @Column({\n type: 'varchar',\n length: 256,\n nullable: true, \n })\n display_name: string | null;\n\n @Column({\n type: 'text',\n nullable: true, \n })\n description: string;\n\n @Column({\n type: 'boolean',\n default: true, \n })\n active: boolean;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: Date;\n\n @UpdateDateColumn()\n updated_at: Date;\n\n // ------------------------------------------------------------------\n\n @Column({\n nullable: true,\n default: null, \n })\n user_id: User['id'] | null;\n\n @ManyToOne(() => UserEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'user_id' })\n user: User | null;\n\n // ------------------------------------------------------------------\n\n @Index()\n @Column({ nullable: true })\n client_id: Client['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'client_id' })\n client: Client | null;\n\n // ------------------------------------------------------------------\n\n @Index()\n @Column()\n realm_id: Realm['id'];\n\n @ManyToOne(() => RealmEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'realm_id' })\n realm: Realm;\n\n // ------------------------------------------------------------------\n\n @BeforeUpdate()\n @BeforeInsert()\n setName() {\n if (!this.name || this.name.length === 0) {\n this.name = createNanoID(36);\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAgCA,IAAac,cAAb,MAAaA;CAETC;CAOAC;CAMAC;CAOAC;CAMAC;CAMAC;CAKAC;CAGAC;CAQAC;CAOAC;CAMAC;CAOAC;CAMAC;CAIAC;CAMAC,UAAU;EACN,IAAI,CAAC,KAAKZ,QAAQ,KAAKA,KAAKa,WAAW,GACnC,KAAKb,OAAOjB,aAAa,EAAA;CAEjC;AACJ;;;CAtFQ+B,MAAM;CACND,QAAQ;CACRE,QAAQ;;;CAKRD,MAAM;CACND,QAAQ;;;CAKRC,MAAM;CACND,QAAQ;CACRG,UAAU;;;CAKVF,MAAM;CACNE,UAAU;;;CAKVF,MAAM;CACNG,SAAS;;;;;CAeTD,UAAU;CACVC,SAAS;;;iBAIIrB,YAAAA;EACbsB,UAAU;EACVF,UAAU;;cAEAhB,MAAM,UAAA,CAAA;;;;;UAMVgB,UAAU,KAAA,CAAA;;;;iBAGHrB,aAAAA;EACbuB,UAAU;EACVF,UAAU;;cAEAhB,MAAM,YAAA,CAAA;;;;;;;;;iBASHL,aAAAA,EAAeuB,UAAU,UAAA,CAAA;cAC5BlB,MAAM,WAAA,CAAA;;;;;;;;;;qCAjFdA,MAAM,cAAA,CAAA,GAAA,OAAA,CACP,QAAQ,UAAA,CAAA,CAAA,GAAA,WAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildEntityNamespaceName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","RobotEntity","CachePrefix","publishEvent","event","data","content","type","ROBOT","destinations","channel","id","namespace","realm_id","RobotSubscriber","listenTo","afterInsert","entity","CREATED","afterUpdate","connection","queryResultCache","remove","prefix","key","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/robot/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { Robot } from '@authup/core-kit';\nimport {\n EntityDefaultEventName, \n EntityType,\n buildEntityChannelName,\n buildEntityNamespaceName,\n} from '@authup/core-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface, \n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { RobotEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: Robot,\n) {\n await publishDomainEvent({\n content: {\n type: EntityType.ROBOT,\n event,\n data,\n },\n destinations: [\n {\n channel: (id) => buildEntityChannelName(EntityType.ROBOT, id),\n namespace: buildEntityNamespaceName(data.realm_id),\n },\n { channel: (id) => buildEntityChannelName(EntityType.ROBOT, id) },\n ],\n });\n}\n\n@EventSubscriber()\nexport class RobotSubscriber implements EntitySubscriberInterface<Robot> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return RobotEntity;\n }\n\n async afterInsert(event: InsertEvent<Robot>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<Robot>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as Robot);\n }\n\n async afterRemove(event: RemoveEvent<Robot>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAqBD,eAAeS,aACXC,OACAC,MAAW;AAEX,OAAML,mBAAmB;EACrBM,SAAS;GACLC,MAAMZ,WAAWa;GACjBJ;GACAC;GACJ;EACAI,cAAc,CACV;GACIC,UAAUC,OAAOf,uBAAuBD,WAAWa,OAAOG,GAAAA;GAC1DC,WAAWf,yBAAyBQ,KAAKQ,SAAQ;GACrD,EACA,EAAEH,UAAUC,OAAOf,uBAAuBD,WAAWa,OAAOG,GAAAA,EAAI,CACnE;EACL,CAAA;;AAIJ,IAAaG,kBAAb,MAAaA;CAETC,WAA8B;AAC1B,SAAOd;;CAGX,MAAMe,YAAYZ,OAAyC;AACvD,MAAI,CAACA,MAAMa,OACP;AAGJ,QAAMd,aAAaT,uBAAuBwB,SAASd,MAAMa,OAAM;;CAGnE,MAAME,YAAYf,OAAyC;AACvD,MAAI,CAACA,MAAMa,OACP;AAGJ,MAAIb,MAAMgB,WAAWC,iBACjB,OAAMjB,MAAMgB,WAAWC,iBAAiBC,OAAO,CAC3CxB,kBAAkB;GACdyB,QAAQrB,YAAYM;GACpBgB,KAAKpB,MAAMa,OAAON;GACtB,CAAA,CACH,CAAA;AAGL,QAAMR,aAAaT,uBAAuB+B,SAASrB,MAAMa,OAAM;;CAGnE,MAAMS,YAAYtB,OAAyC;AACvD,MAAI,CAACA,MAAMa,OACP;AAGJ,MAAIb,MAAMgB,WAAWC,iBACjB,OAAMjB,MAAMgB,WAAWC,iBAAiBC,OAAO,CAC3CxB,kBAAkB;GACdyB,QAAQrB,YAAYM;GACpBgB,KAAKpB,MAAMa,OAAON;GACtB,CAAA,CACH,CAAA;AAGL,QAAMR,aAAaT,uBAAuBiC,SAASvB,MAAMa,OAAM"}
1
+ {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildEntityNamespaceName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","RobotEntity","CachePrefix","publishEvent","event","data","content","type","ROBOT","destinations","channel","id","namespace","realm_id","RobotSubscriber","listenTo","afterInsert","entity","CREATED","afterUpdate","connection","queryResultCache","remove","prefix","key","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/robot/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { Robot } from '@authup/core-kit';\nimport {\n EntityDefaultEventName, \n EntityType,\n buildEntityChannelName,\n buildEntityNamespaceName,\n} from '@authup/core-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface, \n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { RobotEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: Robot,\n) {\n await publishDomainEvent({\n content: {\n type: EntityType.ROBOT,\n event,\n data,\n },\n destinations: [\n {\n channel: (id) => buildEntityChannelName(EntityType.ROBOT, id),\n namespace: buildEntityNamespaceName(data.realm_id),\n },\n { channel: (id) => buildEntityChannelName(EntityType.ROBOT, id) },\n ],\n });\n}\n\n@EventSubscriber()\nexport class RobotSubscriber implements EntitySubscriberInterface<Robot> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return RobotEntity;\n }\n\n async afterInsert(event: InsertEvent<Robot>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<Robot>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as Robot);\n }\n\n async afterRemove(event: RemoveEvent<Robot>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAqBD,eAAeS,aACXC,OACAC,MAAW;CAEX,MAAML,mBAAmB;EACrBM,SAAS;GACLC,MAAMZ,WAAWa;GACjBJ;GACAC;EACJ;EACAI,cAAc,CACV;GACIC,UAAUC,OAAOf,uBAAuBD,WAAWa,OAAOG,EAAAA;GAC1DC,WAAWf,yBAAyBQ,KAAKQ,QAAQ;EACrD,GACA,EAAEH,UAAUC,OAAOf,uBAAuBD,WAAWa,OAAOG,EAAAA,EAAI,CAAA;CAExE,CAAA;AACJ;AAGA,IAAaG,kBAAb,MAAaA;CAETC,WAA8B;EAC1B,OAAOd;CACX;CAEA,MAAMe,YAAYZ,OAAyC;EACvD,IAAI,CAACA,MAAMa,QACP;EAGJ,MAAMd,aAAaT,uBAAuBwB,SAASd,MAAMa,MAAM;CACnE;CAEA,MAAME,YAAYf,OAAyC;EACvD,IAAI,CAACA,MAAMa,QACP;EAGJ,IAAIb,MAAMgB,WAAWC,kBACjB,MAAMjB,MAAMgB,WAAWC,iBAAiBC,OAAO,CAC3CxB,kBAAkB;GACdyB,QAAQrB,YAAYM;GACpBgB,KAAKpB,MAAMa,OAAON;EACtB,CAAA,CAAA,CACH;EAGL,MAAMR,aAAaT,uBAAuB+B,SAASrB,MAAMa,MAAM;CACnE;CAEA,MAAMS,YAAYtB,OAAyC;EACvD,IAAI,CAACA,MAAMa,QACP;EAGJ,IAAIb,MAAMgB,WAAWC,kBACjB,MAAMjB,MAAMgB,WAAWC,iBAAiBC,OAAO,CAC3CxB,kBAAkB;GACdyB,QAAQrB,YAAYM;GACpBgB,KAAKpB,MAAMa,OAAON;EACtB,CAAA,CAAA,CACH;EAGL,MAAMR,aAAaT,uBAAuBiC,SAASvB,MAAMa,MAAM;CACnE;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","UpdateDateColumn","PermissionEntity","PolicyEntity","RobotEntity","RealmEntity","RobotPermissionEntity","id","policy_id","policy","robot_id","robot","robot_realm_id","robot_realm","permission_id","permission","permission_realm_id","permission_realm","created_at","updated_at","nullable","onDelete","name","type","unique"],"sources":["../../../../../src/adapters/database/domains/robot-permission/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity, \n Index,\n JoinColumn,\n ManyToOne,\n PrimaryGeneratedColumn,\n UpdateDateColumn,\n} from 'typeorm';\nimport type {\n Permission, \n Policy, \n Realm,\n Robot, \n RobotPermission,\n} from '@authup/core-kit';\nimport { PermissionEntity } from '../permission/index.ts';\nimport { PolicyEntity } from '../policy/index.ts';\nimport { RobotEntity } from '../robot/entity.ts';\nimport { RealmEntity } from '../realm/index.ts';\n\n@Entity({ name: 'auth_robot_permissions' })\n@Index(['permission_id', 'robot_id'], { unique: true })\nexport class RobotPermissionEntity implements RobotPermission {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n // ------------------------------------------------------------------\n\n @Column({ nullable: true })\n policy_id: string | null;\n\n @ManyToOne(() => PolicyEntity, {\n onDelete: 'SET NULL',\n nullable: true, \n })\n @JoinColumn({ name: 'policy_id' })\n policy: Policy | null;\n\n @Column()\n robot_id: string;\n\n @ManyToOne(() => RobotEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'robot_id' })\n robot: Robot;\n\n @Column({ nullable: true })\n robot_realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'robot_realm_id' })\n robot_realm: Realm | null;\n\n @Column({ type: 'varchar' })\n permission_id: string;\n\n @ManyToOne(() => PermissionEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'permission_id' })\n permission: Permission;\n\n @Column({ nullable: true })\n permission_realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'permission_realm_id' })\n permission_realm: Realm | null;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: Date;\n\n @UpdateDateColumn()\n updated_at: Date;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AA+BA,IAAaY,wBAAb,MAAaA;CAETC;CAKAC;CAOAC;CAGAC;CAIAC;CAGAC;CAOAC;CAGAC;CAIAC;CAGAC;CAOAC;CAKAC;CAGAC;;;uBAlDUC,UAAU,MAAA,CAAA,EAAA,aAAA,eAAA,OAAA,CAAA,EAAA,sBAAA,WAAA,aAAA,KAAA,EAAA;;iBAGHjB,cAAAA;EACbkB,UAAU;EACVD,UAAU;;cAEAE,MAAM,aAAA,CAAA;;;;;iBAMHlB,aAAAA,EAAeiB,UAAU,WAAA,CAAA;cAC5BC,MAAM,YAAA,CAAA;;;uBAGVF,UAAU,MAAA,CAAA,EAAA,aAAA,eAAA,OAAA,CAAA,EAAA,sBAAA,WAAA,kBAAA,KAAA,EAAA;;iBAGHf,aAAAA;EACbgB,UAAU;EACVD,UAAU;;cAEAE,MAAM,kBAAA,CAAA;;;uBAGVC,MAAM,WAAA,CAAA,EAAA,aAAA,eAAA,OAAA,CAAA,EAAA,sBAAA,WAAA,iBAAA,KAAA,EAAA;;iBAGCrB,kBAAAA,EAAoBmB,UAAU,WAAA,CAAA;cACjCC,MAAM,iBAAA,CAAA;;;uBAGVF,UAAU,MAAA,CAAA,EAAA,aAAA,eAAA,OAAA,CAAA,EAAA,sBAAA,WAAA,uBAAA,KAAA,EAAA;;iBAGHf,aAAAA;EACbgB,UAAU;EACVD,UAAU;;cAEAE,MAAM,uBAAA,CAAA;;;;;+CAjDdA,MAAM,0BAAA,CAAA,EAAA,MAAA,CACR,iBAAiB,WAAA,EAAA,EAAeE,QAAQ,MAAA,CAAA,CAAA,EAAA,sBAAA"}
1
+ {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","UpdateDateColumn","PermissionEntity","PolicyEntity","RobotEntity","RealmEntity","RobotPermissionEntity","id","policy_id","policy","robot_id","robot","robot_realm_id","robot_realm","permission_id","permission","permission_realm_id","permission_realm","created_at","updated_at","nullable","onDelete","name","type","unique"],"sources":["../../../../../src/adapters/database/domains/robot-permission/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity, \n Index,\n JoinColumn,\n ManyToOne,\n PrimaryGeneratedColumn,\n UpdateDateColumn,\n} from 'typeorm';\nimport type {\n Permission, \n Policy, \n Realm,\n Robot, \n RobotPermission,\n} from '@authup/core-kit';\nimport { PermissionEntity } from '../permission/index.ts';\nimport { PolicyEntity } from '../policy/index.ts';\nimport { RobotEntity } from '../robot/entity.ts';\nimport { RealmEntity } from '../realm/index.ts';\n\n@Entity({ name: 'auth_robot_permissions' })\n@Index(['permission_id', 'robot_id'], { unique: true })\nexport class RobotPermissionEntity implements RobotPermission {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n // ------------------------------------------------------------------\n\n @Column({ nullable: true })\n policy_id: string | null;\n\n @ManyToOne(() => PolicyEntity, {\n onDelete: 'SET NULL',\n nullable: true, \n })\n @JoinColumn({ name: 'policy_id' })\n policy: Policy | null;\n\n @Column()\n robot_id: string;\n\n @ManyToOne(() => RobotEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'robot_id' })\n robot: Robot;\n\n @Column({ nullable: true })\n robot_realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'robot_realm_id' })\n robot_realm: Realm | null;\n\n @Column({ type: 'varchar' })\n permission_id: string;\n\n @ManyToOne(() => PermissionEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'permission_id' })\n permission: Permission;\n\n @Column({ nullable: true })\n permission_realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'permission_realm_id' })\n permission_realm: Realm | null;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: Date;\n\n @UpdateDateColumn()\n updated_at: Date;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AA+BA,IAAaY,wBAAb,MAAaA;CAETC;CAKAC;CAOAC;CAGAC;CAIAC;CAGAC;CAOAC;CAGAC;CAIAC;CAGAC;CAOAC;CAKAC;CAGAC;AACJ;;uBAnDcC,UAAU,KAAA,CAAA,GAAA,aAAA,eAAA,MAAA,CAAA,GAAA,sBAAA,WAAA,aAAA,KAAA,CAAA;;iBAGHjB,cAAAA;EACbkB,UAAU;EACVD,UAAU;;cAEAE,MAAM,YAAA,CAAA;;;;;iBAMHlB,aAAAA,EAAeiB,UAAU,UAAA,CAAA;cAC5BC,MAAM,WAAA,CAAA;;;uBAGVF,UAAU,KAAA,CAAA,GAAA,aAAA,eAAA,MAAA,CAAA,GAAA,sBAAA,WAAA,kBAAA,KAAA,CAAA;;iBAGHf,aAAAA;EACbgB,UAAU;EACVD,UAAU;;cAEAE,MAAM,iBAAA,CAAA;;;uBAGVC,MAAM,UAAA,CAAA,GAAA,aAAA,eAAA,MAAA,CAAA,GAAA,sBAAA,WAAA,iBAAA,KAAA,CAAA;;iBAGCrB,kBAAAA,EAAoBmB,UAAU,UAAA,CAAA;cACjCC,MAAM,gBAAA,CAAA;;;uBAGVF,UAAU,KAAA,CAAA,GAAA,aAAA,eAAA,MAAA,CAAA,GAAA,sBAAA,WAAA,uBAAA,KAAA,CAAA;;iBAGHf,aAAAA;EACbgB,UAAU;EACVD,UAAU;;cAEAE,MAAM,sBAAA,CAAA;;;;;+CAjDdA,MAAM,yBAAA,CAAA,GAAA,MAAA,CACR,iBAAiB,UAAA,GAAA,EAAeE,QAAQ,KAAA,CAAA,CAAA,GAAA,qBAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildEntityNamespaceName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","RobotPermissionEntity","CachePrefix","publishEvent","event","data","destinations","channel","id","ROBOT_PERMISSION","robot_realm_id","push","namespace","permission_realm_id","content","type","RobotPermissionSubscriber","listenTo","afterInsert","connection","queryResultCache","remove","prefix","ROBOT_OWNED_PERMISSIONS","key","entity","robot_id","CREATED","Promise","resolve","undefined","afterUpdate","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/robot-permission/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { RobotPermission } from '@authup/core-kit';\nimport {\n EntityDefaultEventName, \n EntityType,\n buildEntityChannelName,\n buildEntityNamespaceName,\n} from '@authup/core-kit';\nimport type { DomainEventDestination } from '@authup/server-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface, \n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { RobotPermissionEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: RobotPermission,\n) {\n const destinations : DomainEventDestination[] = [\n { channel: (id) => buildEntityChannelName(EntityType.ROBOT_PERMISSION, id) },\n ];\n if (data.robot_realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.ROBOT_PERMISSION, id),\n namespace: buildEntityNamespaceName(data.robot_realm_id),\n });\n }\n if (data.permission_realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.ROBOT_PERMISSION, id),\n namespace: buildEntityNamespaceName(data.permission_realm_id),\n });\n }\n\n await publishDomainEvent({\n content: {\n type: EntityType.ROBOT_PERMISSION,\n event,\n data,\n },\n destinations,\n });\n}\n\n@EventSubscriber()\nexport class RobotPermissionSubscriber implements EntitySubscriberInterface<RobotPermission> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return RobotPermissionEntity;\n }\n\n async afterInsert(event: InsertEvent<RobotPermission>): Promise<any> {\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT_OWNED_PERMISSIONS,\n key: event.entity.robot_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n\n return Promise.resolve(undefined);\n }\n\n async afterUpdate(event: UpdateEvent<RobotPermission>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT_OWNED_PERMISSIONS,\n key: event.entity.robot_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as RobotPermission);\n }\n\n async afterRemove(event: RemoveEvent<RobotPermission>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT_OWNED_PERMISSIONS,\n key: event.entity.robot_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAsBD,eAAeS,aACXC,OACAC,MAAqB;CAErB,MAAMC,eAA0C,CAC5C,EAAEC,UAAUC,OAAOZ,uBAAuBD,WAAWc,kBAAkBD,GAAAA,EAAI,CAC9E;AACD,KAAIH,KAAKK,eACLJ,cAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,kBAAkBD,GAAAA;EACrEI,WAAWf,yBAAyBQ,KAAKK,eAAc;EAC3D,CAAA;AAEJ,KAAIL,KAAKQ,oBACLP,cAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,kBAAkBD,GAAAA;EACrEI,WAAWf,yBAAyBQ,KAAKQ,oBAAmB;EAChE,CAAA;AAGJ,OAAMb,mBAAmB;EACrBc,SAAS;GACLC,MAAMpB,WAAWc;GACjBL;GACAC;GACJ;EACAC;EACJ,CAAA;;AAIJ,IAAaU,4BAAb,MAAaA;CAETC,WAA8B;AAC1B,SAAOhB;;CAGX,MAAMiB,YAAYd,OAAmD;AACjE,MAAIA,MAAMe,WAAWC,iBACjB,OAAMhB,MAAMe,WAAWC,iBAAiBC,OAAO,CAC3CvB,kBAAkB;GACdwB,QAAQpB,YAAYqB;GACpBC,KAAKpB,MAAMqB,OAAOC;GACtB,CAAA,CACH,CAAA;AAGL,QAAMvB,aAAaT,uBAAuBiC,SAASvB,MAAMqB,OAAM;AAE/D,SAAOG,QAAQC,QAAQC,KAAAA,EAAAA;;CAG3B,MAAMC,YAAY3B,OAAmD;AACjE,MAAI,CAACA,MAAMqB,OACP;AAGJ,MAAIrB,MAAMe,WAAWC,iBACjB,OAAMhB,MAAMe,WAAWC,iBAAiBC,OAAO,CAC3CvB,kBAAkB;GACdwB,QAAQpB,YAAYqB;GACpBC,KAAKpB,MAAMqB,OAAOC;GACtB,CAAA,CACH,CAAA;AAGL,QAAMvB,aAAaT,uBAAuBsC,SAAS5B,MAAMqB,OAAM;;CAGnE,MAAMQ,YAAY7B,OAAmD;AACjE,MAAI,CAACA,MAAMqB,OACP;AAGJ,MAAIrB,MAAMe,WAAWC,iBACjB,OAAMhB,MAAMe,WAAWC,iBAAiBC,OAAO,CAC3CvB,kBAAkB;GACdwB,QAAQpB,YAAYqB;GACpBC,KAAKpB,MAAMqB,OAAOC;GACtB,CAAA,CACH,CAAA;AAGL,QAAMvB,aAAaT,uBAAuBwC,SAAS9B,MAAMqB,OAAM"}
1
+ {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildEntityNamespaceName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","RobotPermissionEntity","CachePrefix","publishEvent","event","data","destinations","channel","id","ROBOT_PERMISSION","robot_realm_id","push","namespace","permission_realm_id","content","type","RobotPermissionSubscriber","listenTo","afterInsert","connection","queryResultCache","remove","prefix","ROBOT_OWNED_PERMISSIONS","key","entity","robot_id","CREATED","Promise","resolve","undefined","afterUpdate","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/robot-permission/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { RobotPermission } from '@authup/core-kit';\nimport {\n EntityDefaultEventName, \n EntityType,\n buildEntityChannelName,\n buildEntityNamespaceName,\n} from '@authup/core-kit';\nimport type { DomainEventDestination } from '@authup/server-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface, \n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { RobotPermissionEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: RobotPermission,\n) {\n const destinations : DomainEventDestination[] = [\n { channel: (id) => buildEntityChannelName(EntityType.ROBOT_PERMISSION, id) },\n ];\n if (data.robot_realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.ROBOT_PERMISSION, id),\n namespace: buildEntityNamespaceName(data.robot_realm_id),\n });\n }\n if (data.permission_realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.ROBOT_PERMISSION, id),\n namespace: buildEntityNamespaceName(data.permission_realm_id),\n });\n }\n\n await publishDomainEvent({\n content: {\n type: EntityType.ROBOT_PERMISSION,\n event,\n data,\n },\n destinations,\n });\n}\n\n@EventSubscriber()\nexport class RobotPermissionSubscriber implements EntitySubscriberInterface<RobotPermission> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return RobotPermissionEntity;\n }\n\n async afterInsert(event: InsertEvent<RobotPermission>): Promise<any> {\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT_OWNED_PERMISSIONS,\n key: event.entity.robot_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n\n return Promise.resolve(undefined);\n }\n\n async afterUpdate(event: UpdateEvent<RobotPermission>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT_OWNED_PERMISSIONS,\n key: event.entity.robot_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as RobotPermission);\n }\n\n async afterRemove(event: RemoveEvent<RobotPermission>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT_OWNED_PERMISSIONS,\n key: event.entity.robot_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAsBD,eAAeS,aACXC,OACAC,MAAqB;CAErB,MAAMC,eAA0C,CAC5C,EAAEC,UAAUC,OAAOZ,uBAAuBD,WAAWc,kBAAkBD,EAAAA,EAAI,CAAA;CAE/E,IAAIH,KAAKK,gBACLJ,aAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,kBAAkBD,EAAAA;EACrEI,WAAWf,yBAAyBQ,KAAKK,cAAc;CAC3D,CAAA;CAEJ,IAAIL,KAAKQ,qBACLP,aAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,kBAAkBD,EAAAA;EACrEI,WAAWf,yBAAyBQ,KAAKQ,mBAAmB;CAChE,CAAA;CAGJ,MAAMb,mBAAmB;EACrBc,SAAS;GACLC,MAAMpB,WAAWc;GACjBL;GACAC;EACJ;EACAC;CACJ,CAAA;AACJ;AAGA,IAAaU,4BAAb,MAAaA;CAETC,WAA8B;EAC1B,OAAOhB;CACX;CAEA,MAAMiB,YAAYd,OAAmD;EACjE,IAAIA,MAAMe,WAAWC,kBACjB,MAAMhB,MAAMe,WAAWC,iBAAiBC,OAAO,CAC3CvB,kBAAkB;GACdwB,QAAQpB,YAAYqB;GACpBC,KAAKpB,MAAMqB,OAAOC;EACtB,CAAA,CAAA,CACH;EAGL,MAAMvB,aAAaT,uBAAuBiC,SAASvB,MAAMqB,MAAM;EAE/D,OAAOG,QAAQC,QAAQC,KAAAA,CAAAA;CAC3B;CAEA,MAAMC,YAAY3B,OAAmD;EACjE,IAAI,CAACA,MAAMqB,QACP;EAGJ,IAAIrB,MAAMe,WAAWC,kBACjB,MAAMhB,MAAMe,WAAWC,iBAAiBC,OAAO,CAC3CvB,kBAAkB;GACdwB,QAAQpB,YAAYqB;GACpBC,KAAKpB,MAAMqB,OAAOC;EACtB,CAAA,CAAA,CACH;EAGL,MAAMvB,aAAaT,uBAAuBsC,SAAS5B,MAAMqB,MAAM;CACnE;CAEA,MAAMQ,YAAY7B,OAAmD;EACjE,IAAI,CAACA,MAAMqB,QACP;EAGJ,IAAIrB,MAAMe,WAAWC,kBACjB,MAAMhB,MAAMe,WAAWC,iBAAiBC,OAAO,CAC3CvB,kBAAkB;GACdwB,QAAQpB,YAAYqB;GACpBC,KAAKpB,MAAMqB,OAAOC;EACtB,CAAA,CAAA,CACH;EAGL,MAAMvB,aAAaT,uBAAuBwC,SAAS9B,MAAMqB,MAAM;CACnE;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","UpdateDateColumn","RoleEntity","RobotEntity","RealmEntity","RobotRoleEntity","id","role_id","role","role_realm_id","role_realm","robot_id","robot","robot_realm_id","robot_realm","created_at","updated_at","onDelete","name","nullable","unique"],"sources":["../../../../../src/adapters/database/domains/robot-role/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n JoinColumn,\n ManyToOne,\n PrimaryGeneratedColumn,\n UpdateDateColumn,\n} from 'typeorm';\nimport type {\n Realm, \n Robot, \n RobotRole, \n Role,\n} from '@authup/core-kit';\nimport { RoleEntity } from '../role/index.ts';\nimport { RobotEntity } from '../robot/entity.ts';\nimport { RealmEntity } from '../realm/index.ts';\n\n@Entity({ name: 'auth_robot_roles' })\n@Index(['role_id', 'robot_id'], { unique: true })\nexport class RobotRoleEntity implements RobotRole {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n // ------------------------------------------------------------------\n\n @Column()\n role_id: string;\n\n @ManyToOne(() => RoleEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'role_id' })\n role: Role;\n\n @Column({ nullable: true })\n role_realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'role_realm_id' })\n role_realm: Realm | null;\n\n @Column()\n robot_id: string;\n\n @ManyToOne(() => RobotEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'client_id' })\n robot: Robot;\n\n @Column({ nullable: true })\n robot_realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'robot_realm_id' })\n robot_realm: Realm | null;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: string;\n\n @UpdateDateColumn()\n updated_at: string;\n}\n"],"mappings":";;;;;;;;;;;;;;;;AA6BA,IAAaW,kBAAb,MAAaA;CAETC;CAKAC;CAIAC;CAGAC;CAOAC;CAGAC;CAIAC;CAGAC;CAOAC;CAKAC;CAGAC;;;;;iBArCiBd,YAAAA,EAAce,UAAU,WAAA,CAAA;cAC3BC,MAAM,WAAA,CAAA;;;uBAGVC,UAAU,MAAA,CAAA,EAAA,aAAA,eAAA,OAAA,CAAA,EAAA,gBAAA,WAAA,iBAAA,KAAA,EAAA;;iBAGHf,aAAAA;EACba,UAAU;EACVE,UAAU;;cAEAD,MAAM,iBAAA,CAAA;;;;;iBAMHf,aAAAA,EAAec,UAAU,WAAA,CAAA;cAC5BC,MAAM,aAAA,CAAA;;;uBAGVC,UAAU,MAAA,CAAA,EAAA,aAAA,eAAA,OAAA,CAAA,EAAA,gBAAA,WAAA,kBAAA,KAAA,EAAA;;iBAGHf,aAAAA;EACba,UAAU;EACVE,UAAU;;cAEAD,MAAM,kBAAA,CAAA;;;;;yCAvCdA,MAAM,oBAAA,CAAA,EAAA,MAAA,CACR,WAAW,WAAA,EAAA,EAAeE,QAAQ,MAAA,CAAA,CAAA,EAAA,gBAAA"}
1
+ {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","UpdateDateColumn","RoleEntity","RobotEntity","RealmEntity","RobotRoleEntity","id","role_id","role","role_realm_id","role_realm","robot_id","robot","robot_realm_id","robot_realm","created_at","updated_at","onDelete","name","nullable","unique"],"sources":["../../../../../src/adapters/database/domains/robot-role/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n JoinColumn,\n ManyToOne,\n PrimaryGeneratedColumn,\n UpdateDateColumn,\n} from 'typeorm';\nimport type {\n Realm, \n Robot, \n RobotRole, \n Role,\n} from '@authup/core-kit';\nimport { RoleEntity } from '../role/index.ts';\nimport { RobotEntity } from '../robot/entity.ts';\nimport { RealmEntity } from '../realm/index.ts';\n\n@Entity({ name: 'auth_robot_roles' })\n@Index(['role_id', 'robot_id'], { unique: true })\nexport class RobotRoleEntity implements RobotRole {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n // ------------------------------------------------------------------\n\n @Column()\n role_id: string;\n\n @ManyToOne(() => RoleEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'role_id' })\n role: Role;\n\n @Column({ nullable: true })\n role_realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'role_realm_id' })\n role_realm: Realm | null;\n\n @Column()\n robot_id: string;\n\n @ManyToOne(() => RobotEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'client_id' })\n robot: Robot;\n\n @Column({ nullable: true })\n robot_realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'robot_realm_id' })\n robot_realm: Realm | null;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: string;\n\n @UpdateDateColumn()\n updated_at: string;\n}\n"],"mappings":";;;;;;;;;;;;;;;;AA6BA,IAAaW,kBAAb,MAAaA;CAETC;CAKAC;CAIAC;CAGAC;CAOAC;CAGAC;CAIAC;CAGAC;CAOAC;CAKAC;CAGAC;AACJ;;;;iBAtCqBd,YAAAA,EAAce,UAAU,UAAA,CAAA;cAC3BC,MAAM,UAAA,CAAA;;;uBAGVC,UAAU,KAAA,CAAA,GAAA,aAAA,eAAA,MAAA,CAAA,GAAA,gBAAA,WAAA,iBAAA,KAAA,CAAA;;iBAGHf,aAAAA;EACba,UAAU;EACVE,UAAU;;cAEAD,MAAM,gBAAA,CAAA;;;;;iBAMHf,aAAAA,EAAec,UAAU,UAAA,CAAA;cAC5BC,MAAM,YAAA,CAAA;;;uBAGVC,UAAU,KAAA,CAAA,GAAA,aAAA,eAAA,MAAA,CAAA,GAAA,gBAAA,WAAA,kBAAA,KAAA,CAAA;;iBAGHf,aAAAA;EACba,UAAU;EACVE,UAAU;;cAEAD,MAAM,iBAAA,CAAA;;;;;yCAvCdA,MAAM,mBAAA,CAAA,GAAA,MAAA,CACR,WAAW,UAAA,GAAA,EAAeE,QAAQ,KAAA,CAAA,CAAA,GAAA,eAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildEntityNamespaceName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","CachePrefix","RobotRoleEntity","publishEvent","event","data","destinations","channel","id","ROBOT_ROLE","robot_realm_id","push","namespace","role_realm_id","content","type","RobotRoleSubscriber","listenTo","afterInsert","entity","connection","queryResultCache","remove","prefix","ROBOT_OWNED_ROLES","key","robot_id","CREATED","afterUpdate","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/robot-role/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { RobotRole } from '@authup/core-kit';\nimport {\n EntityDefaultEventName, \n EntityType,\n buildEntityChannelName,\n buildEntityNamespaceName,\n} from '@authup/core-kit';\nimport type { DomainEventDestination } from '@authup/server-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface, \n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { CachePrefix } from '../constants.ts';\nimport { RobotRoleEntity } from './entity.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: RobotRole,\n) {\n const destinations : DomainEventDestination[] = [\n { channel: (id) => buildEntityChannelName(EntityType.ROBOT_ROLE, id) },\n ];\n if (data.robot_realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.ROBOT_ROLE, id),\n namespace: buildEntityNamespaceName(data.robot_realm_id),\n });\n }\n if (data.role_realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.ROBOT_ROLE, id),\n namespace: buildEntityNamespaceName(data.role_realm_id),\n });\n }\n\n await publishDomainEvent({\n content: {\n type: EntityType.ROBOT_ROLE,\n event,\n data,\n },\n destinations,\n });\n}\n\n@EventSubscriber()\nexport class RobotRoleSubscriber implements EntitySubscriberInterface<RobotRole> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return RobotRoleEntity;\n }\n\n async afterInsert(event: InsertEvent<RobotRole>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT_OWNED_ROLES,\n key: event.entity.robot_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<RobotRole>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT_OWNED_ROLES,\n key: event.entity.robot_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as RobotRole);\n }\n\n async afterRemove(event: RemoveEvent<RobotRole>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT_OWNED_ROLES,\n key: event.entity.robot_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAsBD,eAAeS,aACXC,OACAC,MAAe;CAEf,MAAMC,eAA0C,CAC5C,EAAEC,UAAUC,OAAOZ,uBAAuBD,WAAWc,YAAYD,GAAAA,EAAI,CACxE;AACD,KAAIH,KAAKK,eACLJ,cAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,YAAYD,GAAAA;EAC/DI,WAAWf,yBAAyBQ,KAAKK,eAAc;EAC3D,CAAA;AAEJ,KAAIL,KAAKQ,cACLP,cAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,YAAYD,GAAAA;EAC/DI,WAAWf,yBAAyBQ,KAAKQ,cAAa;EAC1D,CAAA;AAGJ,OAAMb,mBAAmB;EACrBc,SAAS;GACLC,MAAMpB,WAAWc;GACjBL;GACAC;GACJ;EACAC;EACJ,CAAA;;AAIJ,IAAaU,sBAAb,MAAaA;CAETC,WAA8B;AAC1B,SAAOf;;CAGX,MAAMgB,YAAYd,OAA6C;AAC3D,MAAI,CAACA,MAAMe,OACP;AAGJ,MAAIf,MAAMgB,WAAWC,iBACjB,OAAMjB,MAAMgB,WAAWC,iBAAiBC,OAAO,CAC3CxB,kBAAkB;GACdyB,QAAQtB,YAAYuB;GACpBC,KAAKrB,MAAMe,OAAOO;GACtB,CAAA,CACH,CAAA;AAGL,QAAMvB,aAAaT,uBAAuBiC,SAASvB,MAAMe,OAAM;;CAGnE,MAAMS,YAAYxB,OAA6C;AAC3D,MAAI,CAACA,MAAMe,OACP;AAGJ,MAAIf,MAAMgB,WAAWC,iBACjB,OAAMjB,MAAMgB,WAAWC,iBAAiBC,OAAO,CAC3CxB,kBAAkB;GACdyB,QAAQtB,YAAYuB;GACpBC,KAAKrB,MAAMe,OAAOO;GACtB,CAAA,CACH,CAAA;AAGL,QAAMvB,aAAaT,uBAAuBmC,SAASzB,MAAMe,OAAM;;CAGnE,MAAMW,YAAY1B,OAA6C;AAC3D,MAAI,CAACA,MAAMe,OACP;AAGJ,MAAIf,MAAMgB,WAAWC,iBACjB,OAAMjB,MAAMgB,WAAWC,iBAAiBC,OAAO,CAC3CxB,kBAAkB;GACdyB,QAAQtB,YAAYuB;GACpBC,KAAKrB,MAAMe,OAAOO;GACtB,CAAA,CACH,CAAA;AAGL,QAAMvB,aAAaT,uBAAuBqC,SAAS3B,MAAMe,OAAM"}
1
+ {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildEntityNamespaceName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","CachePrefix","RobotRoleEntity","publishEvent","event","data","destinations","channel","id","ROBOT_ROLE","robot_realm_id","push","namespace","role_realm_id","content","type","RobotRoleSubscriber","listenTo","afterInsert","entity","connection","queryResultCache","remove","prefix","ROBOT_OWNED_ROLES","key","robot_id","CREATED","afterUpdate","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/robot-role/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { RobotRole } from '@authup/core-kit';\nimport {\n EntityDefaultEventName, \n EntityType,\n buildEntityChannelName,\n buildEntityNamespaceName,\n} from '@authup/core-kit';\nimport type { DomainEventDestination } from '@authup/server-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface, \n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { CachePrefix } from '../constants.ts';\nimport { RobotRoleEntity } from './entity.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: RobotRole,\n) {\n const destinations : DomainEventDestination[] = [\n { channel: (id) => buildEntityChannelName(EntityType.ROBOT_ROLE, id) },\n ];\n if (data.robot_realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.ROBOT_ROLE, id),\n namespace: buildEntityNamespaceName(data.robot_realm_id),\n });\n }\n if (data.role_realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.ROBOT_ROLE, id),\n namespace: buildEntityNamespaceName(data.role_realm_id),\n });\n }\n\n await publishDomainEvent({\n content: {\n type: EntityType.ROBOT_ROLE,\n event,\n data,\n },\n destinations,\n });\n}\n\n@EventSubscriber()\nexport class RobotRoleSubscriber implements EntitySubscriberInterface<RobotRole> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return RobotRoleEntity;\n }\n\n async afterInsert(event: InsertEvent<RobotRole>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT_OWNED_ROLES,\n key: event.entity.robot_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<RobotRole>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT_OWNED_ROLES,\n key: event.entity.robot_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as RobotRole);\n }\n\n async afterRemove(event: RemoveEvent<RobotRole>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROBOT_OWNED_ROLES,\n key: event.entity.robot_id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAsBD,eAAeS,aACXC,OACAC,MAAe;CAEf,MAAMC,eAA0C,CAC5C,EAAEC,UAAUC,OAAOZ,uBAAuBD,WAAWc,YAAYD,EAAAA,EAAI,CAAA;CAEzE,IAAIH,KAAKK,gBACLJ,aAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,YAAYD,EAAAA;EAC/DI,WAAWf,yBAAyBQ,KAAKK,cAAc;CAC3D,CAAA;CAEJ,IAAIL,KAAKQ,eACLP,aAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,YAAYD,EAAAA;EAC/DI,WAAWf,yBAAyBQ,KAAKQ,aAAa;CAC1D,CAAA;CAGJ,MAAMb,mBAAmB;EACrBc,SAAS;GACLC,MAAMpB,WAAWc;GACjBL;GACAC;EACJ;EACAC;CACJ,CAAA;AACJ;AAGA,IAAaU,sBAAb,MAAaA;CAETC,WAA8B;EAC1B,OAAOf;CACX;CAEA,MAAMgB,YAAYd,OAA6C;EAC3D,IAAI,CAACA,MAAMe,QACP;EAGJ,IAAIf,MAAMgB,WAAWC,kBACjB,MAAMjB,MAAMgB,WAAWC,iBAAiBC,OAAO,CAC3CxB,kBAAkB;GACdyB,QAAQtB,YAAYuB;GACpBC,KAAKrB,MAAMe,OAAOO;EACtB,CAAA,CAAA,CACH;EAGL,MAAMvB,aAAaT,uBAAuBiC,SAASvB,MAAMe,MAAM;CACnE;CAEA,MAAMS,YAAYxB,OAA6C;EAC3D,IAAI,CAACA,MAAMe,QACP;EAGJ,IAAIf,MAAMgB,WAAWC,kBACjB,MAAMjB,MAAMgB,WAAWC,iBAAiBC,OAAO,CAC3CxB,kBAAkB;GACdyB,QAAQtB,YAAYuB;GACpBC,KAAKrB,MAAMe,OAAOO;EACtB,CAAA,CAAA,CACH;EAGL,MAAMvB,aAAaT,uBAAuBmC,SAASzB,MAAMe,MAAM;CACnE;CAEA,MAAMW,YAAY1B,OAA6C;EAC3D,IAAI,CAACA,MAAMe,QACP;EAGJ,IAAIf,MAAMgB,WAAWC,kBACjB,MAAMjB,MAAMgB,WAAWC,iBAAiBC,OAAO,CAC3CxB,kBAAkB;GACdyB,QAAQtB,YAAYuB;GACpBC,KAAKrB,MAAMe,OAAOO;EACtB,CAAA,CAAA,CACH;EAGL,MAAMvB,aAAaT,uBAAuBqC,SAAS3B,MAAMe,MAAM;CACnE;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","Unique","UpdateDateColumn","RealmEntity","RoleEntity","id","built_in","name","display_name","description","target","client_id","client","realm_id","realm","created_at","updated_at","type","default","length","nullable","onDelete"],"sources":["../../../../../src/adapters/database/domains/role/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\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 { Client, Realm, Role } from '@authup/core-kit';\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n JoinColumn,\n ManyToOne,\n PrimaryGeneratedColumn,\n Unique,\n UpdateDateColumn,\n} from 'typeorm';\nimport { RealmEntity } from '../realm/index.ts';\n\n@Entity({ name: 'auth_roles' })\n@Unique(['name', 'client_id', 'realm_id'])\nexport class RoleEntity implements Role {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Column({\n type: 'boolean',\n default: false,\n })\n built_in: boolean;\n\n @Column({\n type: 'varchar',\n length: 128, \n })\n name: string;\n\n @Column({\n type: 'varchar',\n length: 256,\n nullable: true, \n })\n display_name: string | null;\n\n @Column({\n type: 'text',\n nullable: true, \n })\n description: string | null;\n\n @Column({\n type: 'varchar',\n length: 16,\n nullable: true, \n })\n target: string | null;\n\n // ------------------------------------------------------------------\n\n @Index()\n @Column({ nullable: true })\n client_id: Client['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'SET NULL',\n nullable: true, \n })\n @JoinColumn({ name: 'client_id' })\n client: Client | null;\n\n // ------------------------------------------------------------------\n\n @Index()\n @Column({ nullable: true })\n realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'realm_id' })\n realm: Realm | null;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: string;\n\n @UpdateDateColumn()\n updated_at: string;\n}\n"],"mappings":";;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;;;;AAkBD,IAAaU,aAAb,MAAaA;CAETC;CAMAC;CAMAC;CAOAC;CAMAC;CAOAC;CAMAC;CAOAC;CAMAC;CAOAC;CAKAC;CAGAC;;;;CA/DIC,MAAM;CACNC,SAAS;;;CAKTD,MAAM;CACNE,QAAQ;;;CAKRF,MAAM;CACNE,QAAQ;CACRC,UAAU;;;CAKVH,MAAM;CACNG,UAAU;;;CAKVH,MAAM;CACNE,QAAQ;CACRC,UAAU;;;;UAOJA,UAAU,MAAA,CAAA;;;;iBAGHjB,aAAAA;EACbkB,UAAU;EACVD,UAAU;;cAEAb,MAAM,aAAA,CAAA;;;;;UAMVa,UAAU,MAAA,CAAA;;;;iBAGHjB,aAAAA;EACbkB,UAAU;EACVD,UAAU;;cAEAb,MAAM,YAAA,CAAA;;;;;oCA7DdA,MAAM,cAAA,CAAA,EAAA,OAAA;CACP;CAAQ;CAAa"}
1
+ {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","Index","JoinColumn","ManyToOne","PrimaryGeneratedColumn","Unique","UpdateDateColumn","RealmEntity","RoleEntity","id","built_in","name","display_name","description","target","client_id","client","realm_id","realm","created_at","updated_at","type","default","length","nullable","onDelete"],"sources":["../../../../../src/adapters/database/domains/role/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\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 { Client, Realm, Role } from '@authup/core-kit';\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n JoinColumn,\n ManyToOne,\n PrimaryGeneratedColumn,\n Unique,\n UpdateDateColumn,\n} from 'typeorm';\nimport { RealmEntity } from '../realm/index.ts';\n\n@Entity({ name: 'auth_roles' })\n@Unique(['name', 'client_id', 'realm_id'])\nexport class RoleEntity implements Role {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Column({\n type: 'boolean',\n default: false,\n })\n built_in: boolean;\n\n @Column({\n type: 'varchar',\n length: 128, \n })\n name: string;\n\n @Column({\n type: 'varchar',\n length: 256,\n nullable: true, \n })\n display_name: string | null;\n\n @Column({\n type: 'text',\n nullable: true, \n })\n description: string | null;\n\n @Column({\n type: 'varchar',\n length: 16,\n nullable: true, \n })\n target: string | null;\n\n // ------------------------------------------------------------------\n\n @Index()\n @Column({ nullable: true })\n client_id: Client['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'SET NULL',\n nullable: true, \n })\n @JoinColumn({ name: 'client_id' })\n client: Client | null;\n\n // ------------------------------------------------------------------\n\n @Index()\n @Column({ nullable: true })\n realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'realm_id' })\n realm: Realm | null;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: string;\n\n @UpdateDateColumn()\n updated_at: string;\n}\n"],"mappings":";;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;;;;AAkBD,IAAaU,aAAb,MAAaA;CAETC;CAMAC;CAMAC;CAOAC;CAMAC;CAOAC;CAMAC;CAOAC;CAMAC;CAOAC;CAKAC;CAGAC;AACJ;;;CAhEQC,MAAM;CACNC,SAAS;;;CAKTD,MAAM;CACNE,QAAQ;;;CAKRF,MAAM;CACNE,QAAQ;CACRC,UAAU;;;CAKVH,MAAM;CACNG,UAAU;;;CAKVH,MAAM;CACNE,QAAQ;CACRC,UAAU;;;;UAOJA,UAAU,KAAA,CAAA;;;;iBAGHjB,aAAAA;EACbkB,UAAU;EACVD,UAAU;;cAEAb,MAAM,YAAA,CAAA;;;;;UAMVa,UAAU,KAAA,CAAA;;;;iBAGHjB,aAAAA;EACbkB,UAAU;EACVD,UAAU;;cAEAb,MAAM,WAAA,CAAA;;;;;oCA7DdA,MAAM,aAAA,CAAA,GAAA,OAAA;CACP;CAAQ;CAAa"}
@@ -1 +1 @@
1
- {"version":3,"file":"repository.mjs","names":["CachePrefix","EARepository","RoleAttributeEntity","RoleEntity","RoleRepository","instance","attributeProperties","input","parent","role_id","id","realm_id","entity","entityPrimaryColumn","attributeEntity","attributeForeignColumn","cachePrefix","ROLE_OWNED_PERMISSIONS"],"sources":["../../../../../src/adapters/database/domains/role/repository.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\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 { DataSource, EntityManager } from 'typeorm';\nimport { CachePrefix } from '../constants.ts';\nimport { EARepository } from '../../extra-attribute-repository/index.ts';\nimport { RoleAttributeEntity } from '../role-attribute/entity.ts';\nimport { RoleEntity } from './entity.ts';\n\nexport class RoleRepository extends EARepository<RoleEntity, RoleAttributeEntity> {\n constructor(instance: DataSource | EntityManager) {\n super(instance, {\n attributeProperties: (input, parent) => {\n input.role_id = parent.id;\n input.realm_id = parent.realm_id;\n\n return input;\n },\n entity: RoleEntity,\n entityPrimaryColumn: 'id',\n attributeEntity: RoleAttributeEntity,\n attributeForeignColumn: 'role_id',\n cachePrefix: CachePrefix.ROLE_OWNED_PERMISSIONS,\n });\n }\n}\n"],"mappings":";;;;;;AAaA,IAAaI,iBAAb,cAAoCH,aAAAA;CAChC,YAAYI,UAAsC;AAC9C,QAAMA,UAAU;GACZC,sBAAsBC,OAAOC,WAAAA;AACzBD,UAAME,UAAUD,OAAOE;AACvBH,UAAMI,WAAWH,OAAOG;AAExB,WAAOJ;;GAEXK,QAAQT;GACRU,qBAAqB;GACrBC,iBAAiBZ;GACjBa,wBAAwB;GACxBC,aAAahB,YAAYiB;GAC7B,CAAA"}
1
+ {"version":3,"file":"repository.mjs","names":["CachePrefix","EARepository","RoleAttributeEntity","RoleEntity","RoleRepository","instance","attributeProperties","input","parent","role_id","id","realm_id","entity","entityPrimaryColumn","attributeEntity","attributeForeignColumn","cachePrefix","ROLE_OWNED_PERMISSIONS"],"sources":["../../../../../src/adapters/database/domains/role/repository.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\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 { DataSource, EntityManager } from 'typeorm';\nimport { CachePrefix } from '../constants.ts';\nimport { EARepository } from '../../extra-attribute-repository/index.ts';\nimport { RoleAttributeEntity } from '../role-attribute/entity.ts';\nimport { RoleEntity } from './entity.ts';\n\nexport class RoleRepository extends EARepository<RoleEntity, RoleAttributeEntity> {\n constructor(instance: DataSource | EntityManager) {\n super(instance, {\n attributeProperties: (input, parent) => {\n input.role_id = parent.id;\n input.realm_id = parent.realm_id;\n\n return input;\n },\n entity: RoleEntity,\n entityPrimaryColumn: 'id',\n attributeEntity: RoleAttributeEntity,\n attributeForeignColumn: 'role_id',\n cachePrefix: CachePrefix.ROLE_OWNED_PERMISSIONS,\n });\n }\n}\n"],"mappings":";;;;;;AAaA,IAAaI,iBAAb,cAAoCH,aAAAA;CAChC,YAAYI,UAAsC;EAC9C,MAAMA,UAAU;GACZC,sBAAsBC,OAAOC,WAAAA;IACzBD,MAAME,UAAUD,OAAOE;IACvBH,MAAMI,WAAWH,OAAOG;IAExB,OAAOJ;GACX;GACAK,QAAQT;GACRU,qBAAqB;GACrBC,iBAAiBZ;GACjBa,wBAAwB;GACxBC,aAAahB,YAAYiB;EAC7B,CAAA;CACJ;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildEntityNamespaceName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","RoleEntity","CachePrefix","publishEvent","event","data","destinations","channel","id","ROLE","realm_id","push","namespace","content","type","RoleSubscriber","listenTo","afterInsert","entity","CREATED","afterUpdate","connection","queryResultCache","remove","prefix","key","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/role/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { Role } from '@authup/core-kit';\nimport {\n EntityDefaultEventName, \n EntityType,\n buildEntityChannelName,\n buildEntityNamespaceName,\n} from '@authup/core-kit';\nimport type { DomainEventDestinations } from '@authup/server-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface,\n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { RoleEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: Role,\n) {\n const destinations : DomainEventDestinations = [\n { channel: (id) => buildEntityChannelName(EntityType.ROLE, id) },\n ];\n if (data.realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.ROLE, id),\n namespace: buildEntityNamespaceName(data.realm_id),\n });\n }\n await publishDomainEvent({\n content: {\n type: EntityType.ROLE,\n event,\n data,\n },\n destinations,\n });\n}\n\n@EventSubscriber()\nexport class RoleSubscriber implements EntitySubscriberInterface<Role> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return RoleEntity;\n }\n\n async afterInsert(event: InsertEvent<Role>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<Role>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROLE,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as Role);\n }\n\n async afterRemove(event: RemoveEvent<Role>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROLE,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAsBD,eAAeS,aACXC,OACAC,MAAU;CAEV,MAAMC,eAAyC,CAC3C,EAAEC,UAAUC,OAAOZ,uBAAuBD,WAAWc,MAAMD,GAAAA,EAAI,CAClE;AACD,KAAIH,KAAKK,SACLJ,cAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,MAAMD,GAAAA;EACzDI,WAAWf,yBAAyBQ,KAAKK,SAAQ;EACrD,CAAA;AAEJ,OAAMV,mBAAmB;EACrBa,SAAS;GACLC,MAAMnB,WAAWc;GACjBL;GACAC;GACJ;EACAC;EACJ,CAAA;;AAIJ,IAAaS,iBAAb,MAAaA;CAETC,WAA8B;AAC1B,SAAOf;;CAGX,MAAMgB,YAAYb,OAAwC;AACtD,MAAI,CAACA,MAAMc,OACP;AAGJ,QAAMf,aAAaT,uBAAuByB,SAASf,MAAMc,OAAM;;CAGnE,MAAME,YAAYhB,OAAwC;AACtD,MAAI,CAACA,MAAMc,OACP;AAGJ,MAAId,MAAMiB,WAAWC,iBACjB,OAAMlB,MAAMiB,WAAWC,iBAAiBC,OAAO,CAC3CzB,kBAAkB;GACd0B,QAAQtB,YAAYO;GACpBgB,KAAKrB,MAAMc,OAAOV;GACtB,CAAA,CACH,CAAA;AAGL,QAAML,aAAaT,uBAAuBgC,SAAStB,MAAMc,OAAM;;CAGnE,MAAMS,YAAYvB,OAAwC;AACtD,MAAI,CAACA,MAAMc,OACP;AAGJ,MAAId,MAAMiB,WAAWC,iBACjB,OAAMlB,MAAMiB,WAAWC,iBAAiBC,OAAO,CAC3CzB,kBAAkB;GACd0B,QAAQtB,YAAYO;GACpBgB,KAAKrB,MAAMc,OAAOV;GACtB,CAAA,CACH,CAAA;AAGL,QAAML,aAAaT,uBAAuBkC,SAASxB,MAAMc,OAAM"}
1
+ {"version":3,"file":"subscriber.mjs","names":["EntityDefaultEventName","EntityType","buildEntityChannelName","buildEntityNamespaceName","buildRedisKeyPath","EventSubscriber","publishDomainEvent","RoleEntity","CachePrefix","publishEvent","event","data","destinations","channel","id","ROLE","realm_id","push","namespace","content","type","RoleSubscriber","listenTo","afterInsert","entity","CREATED","afterUpdate","connection","queryResultCache","remove","prefix","key","UPDATED","afterRemove","DELETED"],"sources":["../../../../../src/adapters/database/domains/role/subscriber.ts"],"sourcesContent":["/*\n * Copyright (c) 2022-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 { Role } from '@authup/core-kit';\nimport {\n EntityDefaultEventName, \n EntityType,\n buildEntityChannelName,\n buildEntityNamespaceName,\n} from '@authup/core-kit';\nimport type { DomainEventDestinations } from '@authup/server-kit';\nimport { buildRedisKeyPath } from '@authup/server-kit';\nimport type {\n EntitySubscriberInterface,\n InsertEvent,\n RemoveEvent,\n UpdateEvent,\n} from 'typeorm';\nimport { EventSubscriber } from 'typeorm';\nimport { publishDomainEvent } from '../../event-publisher/index.ts';\nimport { RoleEntity } from './entity.ts';\nimport { CachePrefix } from '../constants.ts';\n\nasync function publishEvent(\n event: `${EntityDefaultEventName}`,\n data: Role,\n) {\n const destinations : DomainEventDestinations = [\n { channel: (id) => buildEntityChannelName(EntityType.ROLE, id) },\n ];\n if (data.realm_id) {\n destinations.push({\n channel: (id) => buildEntityChannelName(EntityType.ROLE, id),\n namespace: buildEntityNamespaceName(data.realm_id),\n });\n }\n await publishDomainEvent({\n content: {\n type: EntityType.ROLE,\n event,\n data,\n },\n destinations,\n });\n}\n\n@EventSubscriber()\nexport class RoleSubscriber implements EntitySubscriberInterface<Role> {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n listenTo(): Function | string {\n return RoleEntity;\n }\n\n async afterInsert(event: InsertEvent<Role>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n await publishEvent(EntityDefaultEventName.CREATED, event.entity);\n }\n\n async afterUpdate(event: UpdateEvent<Role>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROLE,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.UPDATED, event.entity as Role);\n }\n\n async afterRemove(event: RemoveEvent<Role>): Promise<any> {\n if (!event.entity) {\n return;\n }\n\n if (event.connection.queryResultCache) {\n await event.connection.queryResultCache.remove([\n buildRedisKeyPath({\n prefix: CachePrefix.ROLE,\n key: event.entity.id,\n }),\n ]);\n }\n\n await publishEvent(EntityDefaultEventName.DELETED, event.entity);\n }\n}\n"],"mappings":";;;;;;;;AAKC,SAAA,aAAA,YAAA,QAAA,KAAA,MAAA;;;;;;AAsBD,eAAeS,aACXC,OACAC,MAAU;CAEV,MAAMC,eAAyC,CAC3C,EAAEC,UAAUC,OAAOZ,uBAAuBD,WAAWc,MAAMD,EAAAA,EAAI,CAAA;CAEnE,IAAIH,KAAKK,UACLJ,aAAaK,KAAK;EACdJ,UAAUC,OAAOZ,uBAAuBD,WAAWc,MAAMD,EAAAA;EACzDI,WAAWf,yBAAyBQ,KAAKK,QAAQ;CACrD,CAAA;CAEJ,MAAMV,mBAAmB;EACrBa,SAAS;GACLC,MAAMnB,WAAWc;GACjBL;GACAC;EACJ;EACAC;CACJ,CAAA;AACJ;AAGA,IAAaS,iBAAb,MAAaA;CAETC,WAA8B;EAC1B,OAAOf;CACX;CAEA,MAAMgB,YAAYb,OAAwC;EACtD,IAAI,CAACA,MAAMc,QACP;EAGJ,MAAMf,aAAaT,uBAAuByB,SAASf,MAAMc,MAAM;CACnE;CAEA,MAAME,YAAYhB,OAAwC;EACtD,IAAI,CAACA,MAAMc,QACP;EAGJ,IAAId,MAAMiB,WAAWC,kBACjB,MAAMlB,MAAMiB,WAAWC,iBAAiBC,OAAO,CAC3CzB,kBAAkB;GACd0B,QAAQtB,YAAYO;GACpBgB,KAAKrB,MAAMc,OAAOV;EACtB,CAAA,CAAA,CACH;EAGL,MAAML,aAAaT,uBAAuBgC,SAAStB,MAAMc,MAAM;CACnE;CAEA,MAAMS,YAAYvB,OAAwC;EACtD,IAAI,CAACA,MAAMc,QACP;EAGJ,IAAId,MAAMiB,WAAWC,kBACjB,MAAMlB,MAAMiB,WAAWC,iBAAiBC,OAAO,CAC3CzB,kBAAkB;GACd0B,QAAQtB,YAAYO;GACpBgB,KAAKrB,MAAMc,OAAOV;EACtB,CAAA,CAAA,CACH;EAGL,MAAML,aAAaT,uBAAuBkC,SAASxB,MAAMc,MAAM;CACnE;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","JoinColumn","ManyToOne","PrimaryGeneratedColumn","Unique","UpdateDateColumn","deserialize","serialize","RealmEntity","RoleEntity","RoleAttributeEntity","id","name","value","realm_id","realm","role_id","role","created_at","updated_at","type","length","nullable","transformer","to","from","onDelete"],"sources":["../../../../../src/adapters/database/domains/role-attribute/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity, \n JoinColumn, \n ManyToOne,\n PrimaryGeneratedColumn, \n Unique,\n UpdateDateColumn,\n} from 'typeorm';\nimport type { Realm, Role, RoleAttribute } from '@authup/core-kit';\nimport {\n deserialize,\n serialize,\n} from '@authup/kit';\nimport { RealmEntity } from '../realm/index.ts';\nimport { RoleEntity } from '../role/entity.ts';\n\n@Unique(['name', 'role_id'])\n@Entity({ name: 'auth_role_attributes' })\nexport class RoleAttributeEntity implements RoleAttribute {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Column({\n type: 'varchar',\n length: 255, \n })\n name: string;\n\n @Column({\n type: 'text',\n nullable: true,\n transformer: {\n to(value: any): any {\n return serialize(value);\n },\n from(value: any): any {\n return deserialize(value);\n },\n },\n })\n value: string | null;\n\n // ------------------------------------------------------------------\n\n @Column({ nullable: true })\n realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'realm_id' })\n realm: RealmEntity | null;\n\n @Column()\n role_id: Role['id'];\n\n @ManyToOne(() => RoleEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'role_id' })\n role: RoleEntity;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: string;\n\n @UpdateDateColumn()\n updated_at: string;\n}\n"],"mappings":";;;;;;;;;;;;;;;AA2BA,IAAaY,sBAAb,MAAaA;CAETC;CAMAC;CAcAC;CAKAC;CAOAC;CAGAC;CAIAC;CAKAC;CAGAC;;;;CA5CIC,MAAM;CACNC,QAAQ;;;CAKRD,MAAM;CACNE,UAAU;CACVC,aAAa;EACTC,GAAGX,OAAU;AACT,UAAON,UAAUM,MAAAA;;EAErBY,KAAKZ,OAAU;AACX,UAAOP,YAAYO,MAAAA;;EAE3B;;uBAMMS,UAAU,MAAA,CAAA,EAAA,aAAA,eAAA,OAAA,CAAA,EAAA,oBAAA,WAAA,YAAA,KAAA,EAAA;;iBAGHd,aAAAA;EACbkB,UAAU;EACVJ,UAAU;;cAEAV,MAAM,YAAA,CAAA;;;;;iBAMHH,YAAAA,EAAciB,UAAU,WAAA,CAAA;cAC3Bd,MAAM,WAAA,CAAA;;;;;4CA1Cf,QAAQ,UAAA,CAAA,EAAA,OAAA,EACPA,MAAM,wBAAA,CAAA,CAAA,EAAA,oBAAA"}
1
+ {"version":3,"file":"entity.mjs","names":["Column","CreateDateColumn","Entity","JoinColumn","ManyToOne","PrimaryGeneratedColumn","Unique","UpdateDateColumn","deserialize","serialize","RealmEntity","RoleEntity","RoleAttributeEntity","id","name","value","realm_id","realm","role_id","role","created_at","updated_at","type","length","nullable","transformer","to","from","onDelete"],"sources":["../../../../../src/adapters/database/domains/role-attribute/entity.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2021.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport {\n Column,\n CreateDateColumn,\n Entity, \n JoinColumn, \n ManyToOne,\n PrimaryGeneratedColumn, \n Unique,\n UpdateDateColumn,\n} from 'typeorm';\nimport type { Realm, Role, RoleAttribute } from '@authup/core-kit';\nimport {\n deserialize,\n serialize,\n} from '@authup/kit';\nimport { RealmEntity } from '../realm/index.ts';\nimport { RoleEntity } from '../role/entity.ts';\n\n@Unique(['name', 'role_id'])\n@Entity({ name: 'auth_role_attributes' })\nexport class RoleAttributeEntity implements RoleAttribute {\n @PrimaryGeneratedColumn('uuid')\n id: string;\n\n @Column({\n type: 'varchar',\n length: 255, \n })\n name: string;\n\n @Column({\n type: 'text',\n nullable: true,\n transformer: {\n to(value: any): any {\n return serialize(value);\n },\n from(value: any): any {\n return deserialize(value);\n },\n },\n })\n value: string | null;\n\n // ------------------------------------------------------------------\n\n @Column({ nullable: true })\n realm_id: Realm['id'] | null;\n\n @ManyToOne(() => RealmEntity, {\n onDelete: 'CASCADE',\n nullable: true, \n })\n @JoinColumn({ name: 'realm_id' })\n realm: RealmEntity | null;\n\n @Column()\n role_id: Role['id'];\n\n @ManyToOne(() => RoleEntity, { onDelete: 'CASCADE' })\n @JoinColumn({ name: 'role_id' })\n role: RoleEntity;\n\n // ------------------------------------------------------------------\n\n @CreateDateColumn()\n created_at: string;\n\n @UpdateDateColumn()\n updated_at: string;\n}\n"],"mappings":";;;;;;;;;;;;;;;AA2BA,IAAaY,sBAAb,MAAaA;CAETC;CAMAC;CAcAC;CAKAC;CAOAC;CAGAC;CAIAC;CAKAC;CAGAC;AACJ;;;CA7CQC,MAAM;CACNC,QAAQ;;;CAKRD,MAAM;CACNE,UAAU;CACVC,aAAa;EACTC,GAAGX,OAAU;GACT,OAAON,UAAUM,KAAAA;EACrB;EACAY,KAAKZ,OAAU;GACX,OAAOP,YAAYO,KAAAA;EACvB;CACJ;;uBAMMS,UAAU,KAAA,CAAA,GAAA,aAAA,eAAA,MAAA,CAAA,GAAA,oBAAA,WAAA,YAAA,KAAA,CAAA;;iBAGHd,aAAAA;EACbkB,UAAU;EACVJ,UAAU;;cAEAV,MAAM,WAAA,CAAA;;;;;iBAMHH,YAAAA,EAAciB,UAAU,UAAA,CAAA;cAC3Bd,MAAM,UAAA,CAAA;;;;;4CA1Cf,QAAQ,SAAA,CAAA,GAAA,OAAA,EACPA,MAAM,uBAAA,CAAA,CAAA,GAAA,mBAAA"}