@authup/server-core 1.0.0-beta.52 → 1.0.0-beta.54

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 (1541) hide show
  1. package/dist/adapters/database/data-source/options/module.d.ts.map +1 -1
  2. package/dist/adapters/database/data-source/options/module.mjs +18 -21
  3. package/dist/adapters/database/data-source/options/module.mjs.map +1 -1
  4. package/dist/adapters/database/domains/client/entity.d.ts +17 -14
  5. package/dist/adapters/database/domains/client/entity.d.ts.map +1 -1
  6. package/dist/adapters/database/domains/client/entity.mjs +72 -30
  7. package/dist/adapters/database/domains/client/entity.mjs.map +1 -1
  8. package/dist/adapters/database/domains/client/subscriber.mjs +1 -1
  9. package/dist/adapters/database/domains/client/subscriber.mjs.map +1 -1
  10. package/dist/adapters/database/domains/client-permission/entity.d.ts +10 -10
  11. package/dist/adapters/database/domains/client-permission/entity.d.ts.map +1 -1
  12. package/dist/adapters/database/domains/client-permission/entity.mjs +42 -23
  13. package/dist/adapters/database/domains/client-permission/entity.mjs.map +1 -1
  14. package/dist/adapters/database/domains/client-permission/subscriber.mjs +2 -2
  15. package/dist/adapters/database/domains/client-permission/subscriber.mjs.map +1 -1
  16. package/dist/adapters/database/domains/client-role/entity.d.ts +8 -8
  17. package/dist/adapters/database/domains/client-role/entity.d.ts.map +1 -1
  18. package/dist/adapters/database/domains/client-role/entity.mjs +29 -17
  19. package/dist/adapters/database/domains/client-role/entity.mjs.map +1 -1
  20. package/dist/adapters/database/domains/client-role/subscriber.mjs +2 -2
  21. package/dist/adapters/database/domains/client-role/subscriber.mjs.map +1 -1
  22. package/dist/adapters/database/domains/client-scope/entity.d.ts +8 -8
  23. package/dist/adapters/database/domains/client-scope/entity.d.ts.map +1 -1
  24. package/dist/adapters/database/domains/client-scope/entity.mjs +29 -17
  25. package/dist/adapters/database/domains/client-scope/entity.mjs.map +1 -1
  26. package/dist/adapters/database/domains/consent/entity.d.ts +20 -0
  27. package/dist/adapters/database/domains/consent/entity.d.ts.map +1 -0
  28. package/dist/adapters/database/domains/consent/entity.mjs +125 -0
  29. package/dist/adapters/database/domains/consent/entity.mjs.map +1 -0
  30. package/dist/adapters/database/domains/consent/index.d.ts.map +1 -0
  31. package/dist/adapters/database/domains/consent/index.mjs +6 -0
  32. package/dist/adapters/database/domains/consent/subscriber.d.ts +6 -0
  33. package/dist/adapters/database/domains/consent/subscriber.d.ts.map +1 -0
  34. package/dist/adapters/database/domains/{robot-role → consent}/subscriber.mjs +11 -11
  35. package/dist/adapters/database/domains/consent/subscriber.mjs.map +1 -0
  36. package/dist/adapters/database/domains/constants.d.ts +1 -3
  37. package/dist/adapters/database/domains/constants.d.ts.map +1 -1
  38. package/dist/adapters/database/domains/constants.mjs +1 -3
  39. package/dist/adapters/database/domains/constants.mjs.map +1 -1
  40. package/dist/adapters/database/domains/event/entity.d.ts +22 -0
  41. package/dist/adapters/database/domains/event/entity.d.ts.map +1 -0
  42. package/dist/adapters/database/domains/event/entity.mjs +189 -0
  43. package/dist/adapters/database/domains/event/entity.mjs.map +1 -0
  44. package/dist/adapters/database/domains/event/index.d.ts +2 -0
  45. package/dist/adapters/database/domains/event/index.d.ts.map +1 -0
  46. package/dist/adapters/database/domains/event/index.mjs +5 -0
  47. package/dist/adapters/database/domains/identity-provider/entity.d.ts +4 -4
  48. package/dist/adapters/database/domains/identity-provider/entity.d.ts.map +1 -1
  49. package/dist/adapters/database/domains/identity-provider/entity.mjs +17 -10
  50. package/dist/adapters/database/domains/identity-provider/entity.mjs.map +1 -1
  51. package/dist/adapters/database/domains/identity-provider/repository.mjs +3 -3
  52. package/dist/adapters/database/domains/identity-provider/repository.mjs.map +1 -1
  53. package/dist/adapters/database/domains/identity-provider/subscriber.mjs +1 -1
  54. package/dist/adapters/database/domains/identity-provider/subscriber.mjs.map +1 -1
  55. package/dist/adapters/database/domains/identity-provider-account/entity.d.ts +15 -15
  56. package/dist/adapters/database/domains/identity-provider-account/entity.d.ts.map +1 -1
  57. package/dist/adapters/database/domains/identity-provider-account/entity.mjs +52 -33
  58. package/dist/adapters/database/domains/identity-provider-account/entity.mjs.map +1 -1
  59. package/dist/adapters/database/domains/identity-provider-attribute/entity.d.ts +4 -4
  60. package/dist/adapters/database/domains/identity-provider-attribute/entity.d.ts.map +1 -1
  61. package/dist/adapters/database/domains/identity-provider-attribute/entity.mjs +18 -9
  62. package/dist/adapters/database/domains/identity-provider-attribute/entity.mjs.map +1 -1
  63. package/dist/adapters/database/domains/identity-provider-attribute-mapping/entity.d.ts +9 -9
  64. package/dist/adapters/database/domains/identity-provider-attribute-mapping/entity.d.ts.map +1 -1
  65. package/dist/adapters/database/domains/identity-provider-attribute-mapping/entity.mjs +29 -19
  66. package/dist/adapters/database/domains/identity-provider-attribute-mapping/entity.mjs.map +1 -1
  67. package/dist/adapters/database/domains/identity-provider-permission-mapping/entity.d.ts +10 -10
  68. package/dist/adapters/database/domains/identity-provider-permission-mapping/entity.d.ts.map +1 -1
  69. package/dist/adapters/database/domains/identity-provider-permission-mapping/entity.mjs +32 -21
  70. package/dist/adapters/database/domains/identity-provider-permission-mapping/entity.mjs.map +1 -1
  71. package/dist/adapters/database/domains/identity-provider-role-mapping/entity.d.ts +10 -10
  72. package/dist/adapters/database/domains/identity-provider-role-mapping/entity.d.ts.map +1 -1
  73. package/dist/adapters/database/domains/identity-provider-role-mapping/entity.mjs +32 -21
  74. package/dist/adapters/database/domains/identity-provider-role-mapping/entity.mjs.map +1 -1
  75. package/dist/adapters/database/domains/identity-provider-role-mapping/subscriber.mjs +1 -1
  76. package/dist/adapters/database/domains/identity-provider-role-mapping/subscriber.mjs.map +1 -1
  77. package/dist/adapters/database/domains/index.d.ts +4 -3
  78. package/dist/adapters/database/domains/index.d.ts.map +1 -1
  79. package/dist/adapters/database/domains/index.mjs +24 -24
  80. package/dist/adapters/database/domains/key/entity.d.ts +12 -8
  81. package/dist/adapters/database/domains/key/entity.d.ts.map +1 -1
  82. package/dist/adapters/database/domains/key/entity.mjs +56 -21
  83. package/dist/adapters/database/domains/key/entity.mjs.map +1 -1
  84. package/dist/adapters/database/domains/permission/entity.d.ts +7 -7
  85. package/dist/adapters/database/domains/permission/entity.d.ts.map +1 -1
  86. package/dist/adapters/database/domains/permission/entity.mjs +33 -18
  87. package/dist/adapters/database/domains/permission/entity.mjs.map +1 -1
  88. package/dist/adapters/database/domains/permission/subscriber.mjs +2 -2
  89. package/dist/adapters/database/domains/permission/subscriber.mjs.map +1 -1
  90. package/dist/adapters/database/domains/permission-policy/entity.d.ts +8 -8
  91. package/dist/adapters/database/domains/permission-policy/entity.d.ts.map +1 -1
  92. package/dist/adapters/database/domains/permission-policy/entity.mjs +31 -19
  93. package/dist/adapters/database/domains/permission-policy/entity.mjs.map +1 -1
  94. package/dist/adapters/database/domains/policy/entity.d.ts +6 -6
  95. package/dist/adapters/database/domains/policy/entity.d.ts.map +1 -1
  96. package/dist/adapters/database/domains/policy/entity.mjs +28 -14
  97. package/dist/adapters/database/domains/policy/entity.mjs.map +1 -1
  98. package/dist/adapters/database/domains/policy/repository.d.ts.map +1 -1
  99. package/dist/adapters/database/domains/policy/repository.mjs +6 -6
  100. package/dist/adapters/database/domains/policy/repository.mjs.map +1 -1
  101. package/dist/adapters/database/domains/policy-attribute/entity.d.ts +4 -4
  102. package/dist/adapters/database/domains/policy-attribute/entity.d.ts.map +1 -1
  103. package/dist/adapters/database/domains/policy-attribute/entity.mjs +18 -9
  104. package/dist/adapters/database/domains/policy-attribute/entity.mjs.map +1 -1
  105. package/dist/adapters/database/domains/policy-attribute/subscriber.mjs +2 -2
  106. package/dist/adapters/database/domains/policy-attribute/subscriber.mjs.map +1 -1
  107. package/dist/adapters/database/domains/realm/entity.d.ts +4 -4
  108. package/dist/adapters/database/domains/realm/entity.d.ts.map +1 -1
  109. package/dist/adapters/database/domains/realm/entity.mjs +16 -8
  110. package/dist/adapters/database/domains/realm/entity.mjs.map +1 -1
  111. package/dist/adapters/database/domains/role/entity.d.ts +6 -6
  112. package/dist/adapters/database/domains/role/entity.d.ts.map +1 -1
  113. package/dist/adapters/database/domains/role/entity.mjs +30 -16
  114. package/dist/adapters/database/domains/role/entity.mjs.map +1 -1
  115. package/dist/adapters/database/domains/role/repository.mjs +4 -4
  116. package/dist/adapters/database/domains/role/repository.mjs.map +1 -1
  117. package/dist/adapters/database/domains/role/subscriber.mjs +1 -1
  118. package/dist/adapters/database/domains/role/subscriber.mjs.map +1 -1
  119. package/dist/adapters/database/domains/role-attribute/entity.d.ts +4 -4
  120. package/dist/adapters/database/domains/role-attribute/entity.d.ts.map +1 -1
  121. package/dist/adapters/database/domains/role-attribute/entity.mjs +18 -9
  122. package/dist/adapters/database/domains/role-attribute/entity.mjs.map +1 -1
  123. package/dist/adapters/database/domains/role-attribute/subscriber.mjs +2 -2
  124. package/dist/adapters/database/domains/role-attribute/subscriber.mjs.map +1 -1
  125. package/dist/adapters/database/domains/role-permission/entity.d.ts +10 -10
  126. package/dist/adapters/database/domains/role-permission/entity.d.ts.map +1 -1
  127. package/dist/adapters/database/domains/role-permission/entity.mjs +39 -23
  128. package/dist/adapters/database/domains/role-permission/entity.mjs.map +1 -1
  129. package/dist/adapters/database/domains/role-permission/subscriber.mjs +2 -2
  130. package/dist/adapters/database/domains/role-permission/subscriber.mjs.map +1 -1
  131. package/dist/adapters/database/domains/scope/entity.d.ts +5 -5
  132. package/dist/adapters/database/domains/scope/entity.d.ts.map +1 -1
  133. package/dist/adapters/database/domains/scope/entity.mjs +23 -12
  134. package/dist/adapters/database/domains/scope/entity.mjs.map +1 -1
  135. package/dist/adapters/database/domains/scope/subscriber.mjs +1 -1
  136. package/dist/adapters/database/domains/scope/subscriber.mjs.map +1 -1
  137. package/dist/adapters/database/domains/session/entity.d.ts +14 -15
  138. package/dist/adapters/database/domains/session/entity.d.ts.map +1 -1
  139. package/dist/adapters/database/domains/session/entity.mjs +50 -38
  140. package/dist/adapters/database/domains/session/entity.mjs.map +1 -1
  141. package/dist/adapters/database/domains/session-token/entity.d.ts +9 -9
  142. package/dist/adapters/database/domains/session-token/entity.d.ts.map +1 -1
  143. package/dist/adapters/database/domains/session-token/entity.mjs +32 -19
  144. package/dist/adapters/database/domains/session-token/entity.mjs.map +1 -1
  145. package/dist/adapters/database/domains/trust-anchor/entity.d.ts +13 -0
  146. package/dist/adapters/database/domains/trust-anchor/entity.d.ts.map +1 -0
  147. package/dist/adapters/database/domains/trust-anchor/entity.mjs +61 -0
  148. package/dist/adapters/database/domains/trust-anchor/entity.mjs.map +1 -0
  149. package/dist/adapters/database/domains/trust-anchor/index.d.ts +2 -0
  150. package/dist/adapters/database/domains/trust-anchor/index.d.ts.map +1 -0
  151. package/dist/adapters/database/domains/trust-anchor/index.mjs +5 -0
  152. package/dist/adapters/database/domains/user/entity.d.ts +12 -12
  153. package/dist/adapters/database/domains/user/entity.d.ts.map +1 -1
  154. package/dist/adapters/database/domains/user/entity.mjs +42 -27
  155. package/dist/adapters/database/domains/user/entity.mjs.map +1 -1
  156. package/dist/adapters/database/domains/user/repository.mjs +3 -3
  157. package/dist/adapters/database/domains/user/repository.mjs.map +1 -1
  158. package/dist/adapters/database/domains/user/subscriber.mjs +1 -1
  159. package/dist/adapters/database/domains/user/subscriber.mjs.map +1 -1
  160. package/dist/adapters/database/domains/user-attribute/entity.d.ts +4 -4
  161. package/dist/adapters/database/domains/user-attribute/entity.d.ts.map +1 -1
  162. package/dist/adapters/database/domains/user-attribute/entity.mjs +15 -9
  163. package/dist/adapters/database/domains/user-attribute/entity.mjs.map +1 -1
  164. package/dist/adapters/database/domains/user-attribute/subscriber.mjs +2 -2
  165. package/dist/adapters/database/domains/user-attribute/subscriber.mjs.map +1 -1
  166. package/dist/adapters/database/domains/user-authenticator/entity.d.ts +20 -0
  167. package/dist/adapters/database/domains/user-authenticator/entity.d.ts.map +1 -0
  168. package/dist/adapters/database/domains/user-authenticator/entity.mjs +111 -0
  169. package/dist/adapters/database/domains/user-authenticator/entity.mjs.map +1 -0
  170. package/dist/adapters/database/domains/user-authenticator/index.d.ts +2 -0
  171. package/dist/adapters/database/domains/user-authenticator/index.d.ts.map +1 -0
  172. package/dist/adapters/database/domains/user-authenticator/index.mjs +5 -0
  173. package/dist/adapters/database/domains/user-permission/entity.d.ts +10 -10
  174. package/dist/adapters/database/domains/user-permission/entity.d.ts.map +1 -1
  175. package/dist/adapters/database/domains/user-permission/entity.mjs +38 -22
  176. package/dist/adapters/database/domains/user-permission/entity.mjs.map +1 -1
  177. package/dist/adapters/database/domains/user-permission/subscriber.mjs +2 -2
  178. package/dist/adapters/database/domains/user-permission/subscriber.mjs.map +1 -1
  179. package/dist/adapters/database/domains/user-role/entity.d.ts +8 -8
  180. package/dist/adapters/database/domains/user-role/entity.d.ts.map +1 -1
  181. package/dist/adapters/database/domains/user-role/entity.mjs +29 -17
  182. package/dist/adapters/database/domains/user-role/entity.mjs.map +1 -1
  183. package/dist/adapters/database/domains/user-role/subscriber.mjs +2 -2
  184. package/dist/adapters/database/domains/user-role/subscriber.mjs.map +1 -1
  185. package/dist/adapters/database/errors/driver.d.ts +14 -0
  186. package/dist/adapters/database/errors/driver.d.ts.map +1 -0
  187. package/dist/adapters/database/errors/driver.mjs +32 -0
  188. package/dist/adapters/database/errors/driver.mjs.map +1 -0
  189. package/dist/adapters/database/errors/index.d.ts +1 -0
  190. package/dist/adapters/database/errors/index.d.ts.map +1 -1
  191. package/dist/adapters/database/errors/index.mjs +2 -1
  192. package/dist/adapters/database/helpers/is-supported.mjs +1 -1
  193. package/dist/adapters/database/helpers/is-supported.mjs.map +1 -1
  194. package/dist/adapters/database/index.mjs +17 -17
  195. package/dist/adapters/database/migrations/mysql/1783769340000-Default.d.ts +50 -0
  196. package/dist/adapters/database/migrations/mysql/1783769340000-Default.d.ts.map +1 -0
  197. package/dist/adapters/database/migrations/mysql/1783769340000-Default.mjs +320 -0
  198. package/dist/adapters/database/migrations/mysql/1783769340000-Default.mjs.map +1 -0
  199. package/dist/adapters/database/migrations/mysql/1784289540000-CamelCaseAttributes.d.ts +12 -0
  200. package/dist/adapters/database/migrations/mysql/1784289540000-CamelCaseAttributes.d.ts.map +1 -0
  201. package/dist/adapters/database/migrations/mysql/1784289540000-CamelCaseAttributes.mjs +42 -0
  202. package/dist/adapters/database/migrations/mysql/1784289540000-CamelCaseAttributes.mjs.map +1 -0
  203. package/dist/adapters/database/migrations/mysql/1784460916000-RemoveRobots.d.ts +18 -0
  204. package/dist/adapters/database/migrations/mysql/1784460916000-RemoveRobots.d.ts.map +1 -0
  205. package/dist/adapters/database/migrations/mysql/1784460916000-RemoveRobots.mjs +161 -0
  206. package/dist/adapters/database/migrations/mysql/1784460916000-RemoveRobots.mjs.map +1 -0
  207. package/dist/adapters/database/migrations/postgres/1783769340000-Default.d.ts +50 -0
  208. package/dist/adapters/database/migrations/postgres/1783769340000-Default.d.ts.map +1 -0
  209. package/dist/adapters/database/migrations/postgres/1783769340000-Default.mjs +310 -0
  210. package/dist/adapters/database/migrations/postgres/1783769340000-Default.mjs.map +1 -0
  211. package/dist/adapters/database/migrations/postgres/1784289540000-CamelCaseAttributes.d.ts +12 -0
  212. package/dist/adapters/database/migrations/postgres/1784289540000-CamelCaseAttributes.d.ts.map +1 -0
  213. package/dist/adapters/database/migrations/postgres/1784289540000-CamelCaseAttributes.mjs +42 -0
  214. package/dist/adapters/database/migrations/postgres/1784289540000-CamelCaseAttributes.mjs.map +1 -0
  215. package/dist/adapters/database/migrations/postgres/1784460916000-RemoveRobots.d.ts +18 -0
  216. package/dist/adapters/database/migrations/postgres/1784460916000-RemoveRobots.d.ts.map +1 -0
  217. package/dist/adapters/database/migrations/postgres/1784460916000-RemoveRobots.mjs +167 -0
  218. package/dist/adapters/database/migrations/postgres/1784460916000-RemoveRobots.mjs.map +1 -0
  219. package/dist/adapters/database/subscriber/module.d.ts +1 -1
  220. package/dist/adapters/database/subscriber/module.d.ts.map +1 -1
  221. package/dist/adapters/database/subscriber/module.mjs +4 -3
  222. package/dist/adapters/database/subscriber/module.mjs.map +1 -1
  223. package/dist/adapters/http/adapters/index.mjs +2 -2
  224. package/dist/adapters/http/adapters/oauth2/authorization/module.d.ts +4 -1
  225. package/dist/adapters/http/adapters/oauth2/authorization/module.d.ts.map +1 -1
  226. package/dist/adapters/http/adapters/oauth2/authorization/module.mjs +27 -2
  227. package/dist/adapters/http/adapters/oauth2/authorization/module.mjs.map +1 -1
  228. package/dist/adapters/http/adapters/oauth2/authorization/types.d.ts +9 -1
  229. package/dist/adapters/http/adapters/oauth2/authorization/types.d.ts.map +1 -1
  230. package/dist/adapters/http/adapters/oauth2/grant-types/authorize.d.ts +4 -1
  231. package/dist/adapters/http/adapters/oauth2/grant-types/authorize.d.ts.map +1 -1
  232. package/dist/adapters/http/adapters/oauth2/grant-types/authorize.mjs +24 -4
  233. package/dist/adapters/http/adapters/oauth2/grant-types/authorize.mjs.map +1 -1
  234. package/dist/adapters/http/adapters/oauth2/grant-types/client-credentials.d.ts +4 -3
  235. package/dist/adapters/http/adapters/oauth2/grant-types/client-credentials.d.ts.map +1 -1
  236. package/dist/adapters/http/adapters/oauth2/grant-types/client-credentials.mjs +13 -6
  237. package/dist/adapters/http/adapters/oauth2/grant-types/client-credentials.mjs.map +1 -1
  238. package/dist/adapters/http/adapters/oauth2/grant-types/index.d.ts +0 -1
  239. package/dist/adapters/http/adapters/oauth2/grant-types/index.d.ts.map +1 -1
  240. package/dist/adapters/http/adapters/oauth2/grant-types/index.mjs +2 -2
  241. package/dist/adapters/http/adapters/oauth2/grant-types/password.d.ts +38 -2
  242. package/dist/adapters/http/adapters/oauth2/grant-types/password.d.ts.map +1 -1
  243. package/dist/adapters/http/adapters/oauth2/grant-types/password.mjs +119 -6
  244. package/dist/adapters/http/adapters/oauth2/grant-types/password.mjs.map +1 -1
  245. package/dist/adapters/http/adapters/oauth2/grant-types/refresh_token.d.ts +2 -0
  246. package/dist/adapters/http/adapters/oauth2/grant-types/refresh_token.d.ts.map +1 -1
  247. package/dist/adapters/http/adapters/oauth2/grant-types/refresh_token.mjs +16 -3
  248. package/dist/adapters/http/adapters/oauth2/grant-types/refresh_token.mjs.map +1 -1
  249. package/dist/adapters/http/adapters/oauth2/grant-types/types.d.ts +14 -6
  250. package/dist/adapters/http/adapters/oauth2/grant-types/types.d.ts.map +1 -1
  251. package/dist/adapters/http/adapters/oauth2/grant-types/utils/certificate.d.ts +5 -0
  252. package/dist/adapters/http/adapters/oauth2/grant-types/utils/certificate.d.ts.map +1 -0
  253. package/dist/adapters/http/adapters/oauth2/grant-types/utils/certificate.mjs +18 -0
  254. package/dist/adapters/http/adapters/oauth2/grant-types/utils/certificate.mjs.map +1 -0
  255. package/dist/adapters/http/adapters/oauth2/grant-types/utils/credentials.mjs +1 -1
  256. package/dist/adapters/http/adapters/oauth2/grant-types/utils/guess.d.ts.map +1 -1
  257. package/dist/adapters/http/adapters/oauth2/grant-types/utils/guess.mjs +1 -4
  258. package/dist/adapters/http/adapters/oauth2/grant-types/utils/guess.mjs.map +1 -1
  259. package/dist/adapters/http/adapters/oauth2/grant-types/utils/index.d.ts +1 -0
  260. package/dist/adapters/http/adapters/oauth2/grant-types/utils/index.d.ts.map +1 -1
  261. package/dist/adapters/http/adapters/oauth2/grant-types/utils/index.mjs +2 -1
  262. package/dist/adapters/http/adapters/oauth2/index.mjs +2 -2
  263. package/dist/adapters/http/controllers/entities/client-permission/utils/validation.mjs +3 -3
  264. package/dist/adapters/http/controllers/entities/client-permission/utils/validation.mjs.map +1 -1
  265. package/dist/adapters/http/controllers/entities/client-role/utils/validation.mjs +2 -2
  266. package/dist/adapters/http/controllers/entities/client-role/utils/validation.mjs.map +1 -1
  267. package/dist/adapters/http/controllers/entities/client-scope/utils/validator.mjs +2 -2
  268. package/dist/adapters/http/controllers/entities/client-scope/utils/validator.mjs.map +1 -1
  269. package/dist/adapters/http/controllers/entities/consent/index.d.ts.map +1 -0
  270. package/dist/adapters/http/controllers/entities/consent/index.mjs +5 -0
  271. package/dist/adapters/http/controllers/entities/consent/module.d.ts +15 -0
  272. package/dist/adapters/http/controllers/entities/consent/module.d.ts.map +1 -0
  273. package/dist/adapters/http/controllers/entities/{robot-role → consent}/module.mjs +16 -29
  274. package/dist/adapters/http/controllers/entities/consent/module.mjs.map +1 -0
  275. package/dist/adapters/http/controllers/entities/event/index.d.ts.map +1 -0
  276. package/dist/adapters/http/controllers/entities/event/index.mjs +5 -0
  277. package/dist/adapters/http/controllers/entities/event/module.d.ts +14 -0
  278. package/dist/adapters/http/controllers/entities/event/module.d.ts.map +1 -0
  279. package/dist/adapters/http/controllers/entities/event/module.mjs +68 -0
  280. package/dist/adapters/http/controllers/entities/event/module.mjs.map +1 -0
  281. package/dist/adapters/http/controllers/entities/identity-provider/module.d.ts +4 -1
  282. package/dist/adapters/http/controllers/entities/identity-provider/module.d.ts.map +1 -1
  283. package/dist/adapters/http/controllers/entities/identity-provider/module.mjs +55 -21
  284. package/dist/adapters/http/controllers/entities/identity-provider/module.mjs.map +1 -1
  285. package/dist/adapters/http/controllers/entities/identity-provider/types.d.ts +3 -1
  286. package/dist/adapters/http/controllers/entities/identity-provider/types.d.ts.map +1 -1
  287. package/dist/adapters/http/controllers/entities/index.d.ts +5 -3
  288. package/dist/adapters/http/controllers/entities/index.d.ts.map +1 -1
  289. package/dist/adapters/http/controllers/entities/index.mjs +11 -9
  290. package/dist/adapters/http/controllers/entities/key/index.d.ts.map +1 -0
  291. package/dist/adapters/http/controllers/entities/key/index.mjs +5 -0
  292. package/dist/adapters/http/controllers/entities/key/module.d.ts +17 -0
  293. package/dist/adapters/http/controllers/entities/key/module.d.ts.map +1 -0
  294. package/dist/adapters/http/controllers/entities/key/module.mjs +116 -0
  295. package/dist/adapters/http/controllers/entities/key/module.mjs.map +1 -0
  296. package/dist/adapters/http/controllers/entities/policy/utils/validation.d.ts +1 -1
  297. package/dist/adapters/http/controllers/entities/policy/utils/validation.d.ts.map +1 -1
  298. package/dist/adapters/http/controllers/entities/policy/utils/validation.mjs +4 -4
  299. package/dist/adapters/http/controllers/entities/policy/utils/validation.mjs.map +1 -1
  300. package/dist/adapters/http/controllers/entities/realm/module.d.ts +2 -0
  301. package/dist/adapters/http/controllers/entities/realm/module.d.ts.map +1 -1
  302. package/dist/adapters/http/controllers/entities/realm/module.mjs +16 -1
  303. package/dist/adapters/http/controllers/entities/realm/module.mjs.map +1 -1
  304. package/dist/adapters/http/controllers/entities/role-attribute/utils/validation.mjs +1 -1
  305. package/dist/adapters/http/controllers/entities/role-attribute/utils/validation.mjs.map +1 -1
  306. package/dist/adapters/http/controllers/entities/role-permission/utils/validation.mjs +3 -3
  307. package/dist/adapters/http/controllers/entities/role-permission/utils/validation.mjs.map +1 -1
  308. package/dist/adapters/http/controllers/entities/session/module.mjs.map +1 -1
  309. package/dist/adapters/http/controllers/entities/trust-anchor/index.d.ts +2 -0
  310. package/dist/adapters/http/controllers/entities/trust-anchor/index.d.ts.map +1 -0
  311. package/dist/adapters/http/controllers/entities/trust-anchor/index.mjs +5 -0
  312. package/dist/adapters/http/controllers/entities/trust-anchor/module.d.ts +17 -0
  313. package/dist/adapters/http/controllers/entities/trust-anchor/module.d.ts.map +1 -0
  314. package/dist/adapters/http/controllers/entities/{robot-permission → trust-anchor}/module.mjs +30 -30
  315. package/dist/adapters/http/controllers/entities/trust-anchor/module.mjs.map +1 -0
  316. package/dist/adapters/http/controllers/entities/user-attribute/utils/validation.mjs +1 -1
  317. package/dist/adapters/http/controllers/entities/user-attribute/utils/validation.mjs.map +1 -1
  318. package/dist/adapters/http/controllers/entities/user-authenticator/index.d.ts +2 -0
  319. package/dist/adapters/http/controllers/entities/user-authenticator/index.d.ts.map +1 -0
  320. package/dist/adapters/http/controllers/entities/user-authenticator/index.mjs +5 -0
  321. package/dist/adapters/http/controllers/entities/user-authenticator/module.d.ts +21 -0
  322. package/dist/adapters/http/controllers/entities/user-authenticator/module.d.ts.map +1 -0
  323. package/dist/adapters/http/controllers/entities/user-authenticator/module.mjs +154 -0
  324. package/dist/adapters/http/controllers/entities/user-authenticator/module.mjs.map +1 -0
  325. package/dist/adapters/http/controllers/entities/user-permission/utils/validation.mjs +3 -3
  326. package/dist/adapters/http/controllers/entities/user-permission/utils/validation.mjs.map +1 -1
  327. package/dist/adapters/http/controllers/entities/user-role/utils/validation.mjs +2 -2
  328. package/dist/adapters/http/controllers/entities/user-role/utils/validation.mjs.map +1 -1
  329. package/dist/adapters/http/controllers/index.mjs +7 -6
  330. package/dist/adapters/http/controllers/workflows/authenticator-challenge/index.d.ts +2 -0
  331. package/dist/adapters/http/controllers/workflows/authenticator-challenge/index.d.ts.map +1 -0
  332. package/dist/adapters/http/controllers/workflows/authenticator-challenge/index.mjs +5 -0
  333. package/dist/adapters/http/controllers/workflows/authenticator-challenge/module.d.ts +46 -0
  334. package/dist/adapters/http/controllers/workflows/authenticator-challenge/module.d.ts.map +1 -0
  335. package/dist/adapters/http/controllers/workflows/authenticator-challenge/module.mjs +132 -0
  336. package/dist/adapters/http/controllers/workflows/authenticator-challenge/module.mjs.map +1 -0
  337. package/dist/adapters/http/controllers/workflows/authorize/module.d.ts.map +1 -1
  338. package/dist/adapters/http/controllers/workflows/authorize/module.mjs +38 -10
  339. package/dist/adapters/http/controllers/workflows/authorize/module.mjs.map +1 -1
  340. package/dist/adapters/http/controllers/workflows/authorize/types.d.ts +17 -1
  341. package/dist/adapters/http/controllers/workflows/authorize/types.d.ts.map +1 -1
  342. package/dist/adapters/http/controllers/workflows/index.d.ts +1 -0
  343. package/dist/adapters/http/controllers/workflows/index.d.ts.map +1 -1
  344. package/dist/adapters/http/controllers/workflows/index.mjs +3 -1
  345. package/dist/adapters/http/controllers/workflows/jwks/handlers/read.d.ts.map +1 -1
  346. package/dist/adapters/http/controllers/workflows/jwks/handlers/read.mjs +32 -18
  347. package/dist/adapters/http/controllers/workflows/jwks/handlers/read.mjs.map +1 -1
  348. package/dist/adapters/http/controllers/workflows/jwks/module.d.ts.map +1 -1
  349. package/dist/adapters/http/controllers/workflows/jwks/module.mjs +31 -17
  350. package/dist/adapters/http/controllers/workflows/jwks/module.mjs.map +1 -1
  351. package/dist/adapters/http/controllers/workflows/status/module.mjs +2 -2
  352. package/dist/adapters/http/controllers/workflows/status/module.mjs.map +1 -1
  353. package/dist/adapters/http/controllers/workflows/token/module.d.ts +2 -1
  354. package/dist/adapters/http/controllers/workflows/token/module.d.ts.map +1 -1
  355. package/dist/adapters/http/controllers/workflows/token/module.mjs +30 -16
  356. package/dist/adapters/http/controllers/workflows/token/module.mjs.map +1 -1
  357. package/dist/adapters/http/controllers/workflows/token/types.d.ts +11 -5
  358. package/dist/adapters/http/controllers/workflows/token/types.d.ts.map +1 -1
  359. package/dist/adapters/http/index.mjs +13 -9
  360. package/dist/adapters/http/middleware/built-in/assets.mjs +3 -3
  361. package/dist/adapters/http/middleware/built-in/assets.mjs.map +1 -1
  362. package/dist/adapters/http/middleware/built-in/authorization/module.d.ts +14 -2
  363. package/dist/adapters/http/middleware/built-in/authorization/module.d.ts.map +1 -1
  364. package/dist/adapters/http/middleware/built-in/authorization/module.mjs +52 -16
  365. package/dist/adapters/http/middleware/built-in/authorization/module.mjs.map +1 -1
  366. package/dist/adapters/http/middleware/built-in/authorization/types.d.ts +2 -1
  367. package/dist/adapters/http/middleware/built-in/authorization/types.d.ts.map +1 -1
  368. package/dist/adapters/http/middleware/built-in/index.mjs +2 -2
  369. package/dist/adapters/http/middleware/built-in/prometheus.d.ts +12 -1
  370. package/dist/adapters/http/middleware/built-in/prometheus.d.ts.map +1 -1
  371. package/dist/adapters/http/middleware/built-in/prometheus.mjs +75 -6
  372. package/dist/adapters/http/middleware/built-in/prometheus.mjs.map +1 -1
  373. package/dist/adapters/http/middleware/built-in/rate-limit.d.ts.map +1 -1
  374. package/dist/adapters/http/middleware/built-in/rate-limit.mjs +0 -1
  375. package/dist/adapters/http/middleware/built-in/rate-limit.mjs.map +1 -1
  376. package/dist/adapters/http/middleware/index.mjs +2 -2
  377. package/dist/adapters/http/request/client-certificate.d.ts +6 -0
  378. package/dist/adapters/http/request/client-certificate.d.ts.map +1 -0
  379. package/dist/adapters/http/request/client-certificate.mjs +89 -0
  380. package/dist/adapters/http/request/client-certificate.mjs.map +1 -0
  381. package/dist/adapters/http/request/constants.d.ts +1 -0
  382. package/dist/adapters/http/request/constants.d.ts.map +1 -1
  383. package/dist/adapters/http/request/constants.mjs +6 -1
  384. package/dist/adapters/http/request/constants.mjs.map +1 -1
  385. package/dist/adapters/http/request/event-context.d.ts +19 -0
  386. package/dist/adapters/http/request/event-context.d.ts.map +1 -0
  387. package/dist/adapters/http/request/event-context.mjs +37 -0
  388. package/dist/adapters/http/request/event-context.mjs.map +1 -0
  389. package/dist/adapters/http/request/helpers/body-realm-id.mjs +1 -1
  390. package/dist/adapters/http/request/helpers/body-realm-id.mjs.map +1 -1
  391. package/dist/adapters/http/request/helpers/identity.d.ts +2 -2
  392. package/dist/adapters/http/request/helpers/identity.d.ts.map +1 -1
  393. package/dist/adapters/http/request/helpers/identity.mjs +2 -2
  394. package/dist/adapters/http/request/helpers/identity.mjs.map +1 -1
  395. package/dist/adapters/http/request/helpers/index.d.ts +1 -0
  396. package/dist/adapters/http/request/helpers/index.d.ts.map +1 -1
  397. package/dist/adapters/http/request/helpers/index.mjs +2 -1
  398. package/dist/adapters/http/request/helpers/mfa-login-ticket.d.ts +16 -0
  399. package/dist/adapters/http/request/helpers/mfa-login-ticket.d.ts.map +1 -0
  400. package/dist/adapters/http/request/helpers/mfa-login-ticket.mjs +15 -0
  401. package/dist/adapters/http/request/helpers/mfa-login-ticket.mjs.map +1 -0
  402. package/dist/adapters/http/request/helpers/realm-id.mjs +1 -1
  403. package/dist/adapters/http/request/helpers/realm-id.mjs.map +1 -1
  404. package/dist/adapters/http/request/index.d.ts +3 -0
  405. package/dist/adapters/http/request/index.d.ts.map +1 -1
  406. package/dist/adapters/http/request/index.mjs +5 -2
  407. package/dist/adapters/http/request/permission/module.d.ts +3 -2
  408. package/dist/adapters/http/request/permission/module.d.ts.map +1 -1
  409. package/dist/adapters/http/request/permission/module.mjs +3 -0
  410. package/dist/adapters/http/request/permission/module.mjs.map +1 -1
  411. package/dist/adapters/http/request/types.d.ts +3 -0
  412. package/dist/adapters/http/request/types.d.ts.map +1 -0
  413. package/dist/adapters/http/ui/render.mjs +4 -4
  414. package/dist/adapters/http/ui/render.mjs.map +1 -1
  415. package/dist/adapters/http/ui/serve.d.ts.map +1 -1
  416. package/dist/adapters/http/ui/serve.mjs +4 -1
  417. package/dist/adapters/http/ui/serve.mjs.map +1 -1
  418. package/dist/app/index.mjs +11 -9
  419. package/dist/app/modules/authentication/repositories/session.d.ts +3 -2
  420. package/dist/app/modules/authentication/repositories/session.d.ts.map +1 -1
  421. package/dist/app/modules/authentication/repositories/session.mjs +8 -40
  422. package/dist/app/modules/authentication/repositories/session.mjs.map +1 -1
  423. package/dist/app/modules/components/module.d.ts.map +1 -1
  424. package/dist/app/modules/components/module.mjs +22 -2
  425. package/dist/app/modules/components/module.mjs.map +1 -1
  426. package/dist/app/modules/config/constants.d.ts +14 -4
  427. package/dist/app/modules/config/constants.d.ts.map +1 -1
  428. package/dist/app/modules/config/constants.mjs +14 -4
  429. package/dist/app/modules/config/constants.mjs.map +1 -1
  430. package/dist/app/modules/config/normalize.d.ts.map +1 -1
  431. package/dist/app/modules/config/normalize.mjs +30 -6
  432. package/dist/app/modules/config/normalize.mjs.map +1 -1
  433. package/dist/app/modules/config/read/env.d.ts.map +1 -1
  434. package/dist/app/modules/config/read/env.mjs +57 -8
  435. package/dist/app/modules/config/read/env.mjs.map +1 -1
  436. package/dist/app/modules/config/types.d.ts +101 -19
  437. package/dist/app/modules/config/types.d.ts.map +1 -1
  438. package/dist/app/modules/config/validator.d.ts.map +1 -1
  439. package/dist/app/modules/config/validator.mjs +16 -4
  440. package/dist/app/modules/config/validator.mjs.map +1 -1
  441. package/dist/app/modules/database/constants.d.ts +3 -0
  442. package/dist/app/modules/database/constants.d.ts.map +1 -1
  443. package/dist/app/modules/database/constants.mjs +3 -1
  444. package/dist/app/modules/database/constants.mjs.map +1 -1
  445. package/dist/app/modules/database/index.mjs +7 -6
  446. package/dist/app/modules/database/module.d.ts +1 -0
  447. package/dist/app/modules/database/module.d.ts.map +1 -1
  448. package/dist/app/modules/database/module.mjs +34 -1
  449. package/dist/app/modules/database/module.mjs.map +1 -1
  450. package/dist/app/modules/database/repositories/bindings.d.ts +2 -2
  451. package/dist/app/modules/database/repositories/bindings.d.ts.map +1 -1
  452. package/dist/app/modules/database/repositories/bindings.mjs +3 -3
  453. package/dist/app/modules/database/repositories/bindings.mjs.map +1 -1
  454. package/dist/app/modules/database/repositories/client/repository.d.ts +3 -2
  455. package/dist/app/modules/database/repositories/client/repository.d.ts.map +1 -1
  456. package/dist/app/modules/database/repositories/client/repository.mjs +10 -78
  457. package/dist/app/modules/database/repositories/client/repository.mjs.map +1 -1
  458. package/dist/app/modules/database/repositories/client-permission/repository.d.ts +2 -1
  459. package/dist/app/modules/database/repositories/client-permission/repository.d.ts.map +1 -1
  460. package/dist/app/modules/database/repositories/client-permission/repository.mjs +3 -17
  461. package/dist/app/modules/database/repositories/client-permission/repository.mjs.map +1 -1
  462. package/dist/app/modules/database/repositories/client-role/repository.d.ts +2 -1
  463. package/dist/app/modules/database/repositories/client-role/repository.d.ts.map +1 -1
  464. package/dist/app/modules/database/repositories/client-role/repository.mjs +3 -17
  465. package/dist/app/modules/database/repositories/client-role/repository.mjs.map +1 -1
  466. package/dist/app/modules/database/repositories/client-scope/repository.d.ts +2 -1
  467. package/dist/app/modules/database/repositories/client-scope/repository.d.ts.map +1 -1
  468. package/dist/app/modules/database/repositories/client-scope/repository.mjs +3 -17
  469. package/dist/app/modules/database/repositories/client-scope/repository.mjs.map +1 -1
  470. package/dist/app/modules/database/repositories/event/index.d.ts.map +1 -0
  471. package/dist/app/modules/database/repositories/event/index.mjs +5 -0
  472. package/dist/app/modules/database/repositories/event/repository.d.ts +16 -0
  473. package/dist/app/modules/database/repositories/event/repository.d.ts.map +1 -0
  474. package/dist/app/modules/database/repositories/event/repository.mjs +74 -0
  475. package/dist/app/modules/database/repositories/event/repository.mjs.map +1 -0
  476. package/dist/app/modules/database/repositories/helpers.d.ts +21 -5
  477. package/dist/app/modules/database/repositories/helpers.d.ts.map +1 -1
  478. package/dist/app/modules/database/repositories/helpers.mjs +46 -7
  479. package/dist/app/modules/database/repositories/helpers.mjs.map +1 -1
  480. package/dist/app/modules/database/repositories/identity-provider/repository.d.ts +2 -1
  481. package/dist/app/modules/database/repositories/identity-provider/repository.d.ts.map +1 -1
  482. package/dist/app/modules/database/repositories/identity-provider/repository.mjs +6 -37
  483. package/dist/app/modules/database/repositories/identity-provider/repository.mjs.map +1 -1
  484. package/dist/app/modules/database/repositories/identity-provider-role-mapping/repository.d.ts +2 -1
  485. package/dist/app/modules/database/repositories/identity-provider-role-mapping/repository.d.ts.map +1 -1
  486. package/dist/app/modules/database/repositories/identity-provider-role-mapping/repository.mjs +3 -17
  487. package/dist/app/modules/database/repositories/identity-provider-role-mapping/repository.mjs.map +1 -1
  488. package/dist/app/modules/database/repositories/index.d.ts +4 -3
  489. package/dist/app/modules/database/repositories/index.d.ts.map +1 -1
  490. package/dist/app/modules/database/repositories/index.mjs +9 -7
  491. package/dist/app/modules/database/repositories/key/index.d.ts.map +1 -0
  492. package/dist/app/modules/database/repositories/key/index.mjs +5 -0
  493. package/dist/app/modules/database/repositories/key/repository.d.ts +51 -0
  494. package/dist/app/modules/database/repositories/key/repository.d.ts.map +1 -0
  495. package/dist/app/modules/database/repositories/key/repository.mjs +239 -0
  496. package/dist/app/modules/database/repositories/key/repository.mjs.map +1 -0
  497. package/dist/app/modules/database/repositories/permission/repository.d.ts +2 -1
  498. package/dist/app/modules/database/repositories/permission/repository.d.ts.map +1 -1
  499. package/dist/app/modules/database/repositories/permission/repository.mjs +5 -20
  500. package/dist/app/modules/database/repositories/permission/repository.mjs.map +1 -1
  501. package/dist/app/modules/database/repositories/permission-policy/repository.d.ts +2 -1
  502. package/dist/app/modules/database/repositories/permission-policy/repository.d.ts.map +1 -1
  503. package/dist/app/modules/database/repositories/permission-policy/repository.mjs +3 -17
  504. package/dist/app/modules/database/repositories/permission-policy/repository.mjs.map +1 -1
  505. package/dist/app/modules/database/repositories/permission-provider/module.mjs +7 -7
  506. package/dist/app/modules/database/repositories/permission-provider/module.mjs.map +1 -1
  507. package/dist/app/modules/database/repositories/policy/repository.d.ts +2 -1
  508. package/dist/app/modules/database/repositories/policy/repository.d.ts.map +1 -1
  509. package/dist/app/modules/database/repositories/policy/repository.mjs +5 -39
  510. package/dist/app/modules/database/repositories/policy/repository.mjs.map +1 -1
  511. package/dist/app/modules/database/repositories/query.d.ts +18 -0
  512. package/dist/app/modules/database/repositories/query.d.ts.map +1 -0
  513. package/dist/app/modules/database/repositories/query.mjs +29 -0
  514. package/dist/app/modules/database/repositories/query.mjs.map +1 -0
  515. package/dist/app/modules/database/repositories/realm/repository.d.ts +2 -1
  516. package/dist/app/modules/database/repositories/realm/repository.d.ts.map +1 -1
  517. package/dist/app/modules/database/repositories/realm/repository.mjs +3 -25
  518. package/dist/app/modules/database/repositories/realm/repository.mjs.map +1 -1
  519. package/dist/app/modules/database/repositories/role/repository.d.ts +2 -1
  520. package/dist/app/modules/database/repositories/role/repository.d.ts.map +1 -1
  521. package/dist/app/modules/database/repositories/role/repository.mjs +6 -30
  522. package/dist/app/modules/database/repositories/role/repository.mjs.map +1 -1
  523. package/dist/app/modules/database/repositories/role-attribute/repository.d.ts +2 -1
  524. package/dist/app/modules/database/repositories/role-attribute/repository.d.ts.map +1 -1
  525. package/dist/app/modules/database/repositories/role-attribute/repository.mjs +3 -19
  526. package/dist/app/modules/database/repositories/role-attribute/repository.mjs.map +1 -1
  527. package/dist/app/modules/database/repositories/role-permission/repository.d.ts +2 -1
  528. package/dist/app/modules/database/repositories/role-permission/repository.d.ts.map +1 -1
  529. package/dist/app/modules/database/repositories/role-permission/repository.mjs +3 -17
  530. package/dist/app/modules/database/repositories/role-permission/repository.mjs.map +1 -1
  531. package/dist/app/modules/database/repositories/schema-validation.d.ts +11 -0
  532. package/dist/app/modules/database/repositories/schema-validation.d.ts.map +1 -0
  533. package/dist/app/modules/database/repositories/schema-validation.mjs +77 -0
  534. package/dist/app/modules/database/repositories/schema-validation.mjs.map +1 -0
  535. package/dist/app/modules/database/repositories/scope/repository.d.ts +2 -1
  536. package/dist/app/modules/database/repositories/scope/repository.d.ts.map +1 -1
  537. package/dist/app/modules/database/repositories/scope/repository.mjs +5 -29
  538. package/dist/app/modules/database/repositories/scope/repository.mjs.map +1 -1
  539. package/dist/app/modules/database/repositories/trust-anchor/index.d.ts.map +1 -0
  540. package/dist/app/modules/database/repositories/trust-anchor/index.mjs +5 -0
  541. package/dist/app/modules/database/repositories/trust-anchor/repository.d.ts +25 -0
  542. package/dist/app/modules/database/repositories/trust-anchor/repository.d.ts.map +1 -0
  543. package/dist/app/modules/database/repositories/trust-anchor/repository.mjs +89 -0
  544. package/dist/app/modules/database/repositories/trust-anchor/repository.mjs.map +1 -0
  545. package/dist/app/modules/database/repositories/user/repository.d.ts +3 -2
  546. package/dist/app/modules/database/repositories/user/repository.d.ts.map +1 -1
  547. package/dist/app/modules/database/repositories/user/repository.mjs +9 -66
  548. package/dist/app/modules/database/repositories/user/repository.mjs.map +1 -1
  549. package/dist/app/modules/database/repositories/user-attribute/repository.d.ts +2 -1
  550. package/dist/app/modules/database/repositories/user-attribute/repository.d.ts.map +1 -1
  551. package/dist/app/modules/database/repositories/user-attribute/repository.mjs +4 -20
  552. package/dist/app/modules/database/repositories/user-attribute/repository.mjs.map +1 -1
  553. package/dist/app/modules/database/repositories/user-authenticator/index.d.ts.map +1 -0
  554. package/dist/app/modules/database/repositories/user-authenticator/index.mjs +5 -0
  555. package/dist/app/modules/database/repositories/user-authenticator/repository.d.ts +20 -0
  556. package/dist/app/modules/database/repositories/user-authenticator/repository.d.ts.map +1 -0
  557. package/dist/app/modules/database/repositories/user-authenticator/repository.mjs +66 -0
  558. package/dist/app/modules/database/repositories/user-authenticator/repository.mjs.map +1 -0
  559. package/dist/app/modules/database/repositories/user-permission/repository.d.ts +2 -1
  560. package/dist/app/modules/database/repositories/user-permission/repository.d.ts.map +1 -1
  561. package/dist/app/modules/database/repositories/user-permission/repository.mjs +3 -17
  562. package/dist/app/modules/database/repositories/user-permission/repository.mjs.map +1 -1
  563. package/dist/app/modules/database/repositories/user-role/repository.d.ts +2 -1
  564. package/dist/app/modules/database/repositories/user-role/repository.d.ts.map +1 -1
  565. package/dist/app/modules/database/repositories/user-role/repository.mjs +3 -17
  566. package/dist/app/modules/database/repositories/user-role/repository.mjs.map +1 -1
  567. package/dist/app/modules/http/module.d.ts +8 -0
  568. package/dist/app/modules/http/module.d.ts.map +1 -1
  569. package/dist/app/modules/http/module.mjs +19 -1
  570. package/dist/app/modules/http/module.mjs.map +1 -1
  571. package/dist/app/modules/http/modules/controller.d.ts +16 -6
  572. package/dist/app/modules/http/modules/controller.d.ts.map +1 -1
  573. package/dist/app/modules/http/modules/controller.mjs +186 -67
  574. package/dist/app/modules/http/modules/controller.mjs.map +1 -1
  575. package/dist/app/modules/http/modules/middleware.d.ts +1 -0
  576. package/dist/app/modules/http/modules/middleware.d.ts.map +1 -1
  577. package/dist/app/modules/http/modules/middleware.mjs +10 -5
  578. package/dist/app/modules/http/modules/middleware.mjs.map +1 -1
  579. package/dist/app/modules/identity/index.mjs +1 -2
  580. package/dist/app/modules/identity/module.d.ts.map +1 -1
  581. package/dist/app/modules/identity/module.mjs +3 -14
  582. package/dist/app/modules/identity/module.mjs.map +1 -1
  583. package/dist/app/modules/identity/repositories/client.mjs +2 -2
  584. package/dist/app/modules/identity/repositories/client.mjs.map +1 -1
  585. package/dist/app/modules/identity/repositories/index.d.ts +0 -1
  586. package/dist/app/modules/identity/repositories/index.d.ts.map +1 -1
  587. package/dist/app/modules/identity/repositories/index.mjs +1 -2
  588. package/dist/app/modules/identity/repositories/provider/account/module.mjs +3 -3
  589. package/dist/app/modules/identity/repositories/provider/account/module.mjs.map +1 -1
  590. package/dist/app/modules/identity/repositories/provider/mapper/attribute.mjs +1 -1
  591. package/dist/app/modules/identity/repositories/provider/mapper/attribute.mjs.map +1 -1
  592. package/dist/app/modules/identity/repositories/provider/mapper/permission.mjs +1 -1
  593. package/dist/app/modules/identity/repositories/provider/mapper/permission.mjs.map +1 -1
  594. package/dist/app/modules/identity/repositories/provider/mapper/role.mjs +1 -1
  595. package/dist/app/modules/identity/repositories/provider/mapper/role.mjs.map +1 -1
  596. package/dist/app/modules/identity/repositories/user.mjs +18 -18
  597. package/dist/app/modules/identity/repositories/user.mjs.map +1 -1
  598. package/dist/app/modules/index.d.ts +1 -0
  599. package/dist/app/modules/index.d.ts.map +1 -1
  600. package/dist/app/modules/index.mjs +13 -10
  601. package/dist/app/modules/mail/module.d.ts.map +1 -1
  602. package/dist/app/modules/mail/module.mjs +2 -1
  603. package/dist/app/modules/mail/module.mjs.map +1 -1
  604. package/dist/app/modules/metrics/constants.d.ts +4 -0
  605. package/dist/app/modules/metrics/constants.d.ts.map +1 -0
  606. package/dist/app/modules/metrics/constants.mjs +10 -0
  607. package/dist/app/modules/metrics/constants.mjs.map +1 -0
  608. package/dist/app/modules/metrics/index.d.ts +3 -0
  609. package/dist/app/modules/metrics/index.d.ts.map +1 -0
  610. package/dist/app/modules/metrics/index.mjs +6 -0
  611. package/dist/app/modules/metrics/prom.d.ts +15 -0
  612. package/dist/app/modules/metrics/prom.d.ts.map +1 -0
  613. package/dist/app/modules/metrics/prom.mjs +42 -0
  614. package/dist/app/modules/metrics/prom.mjs.map +1 -0
  615. package/dist/app/modules/oauth2/constants.d.ts +9 -2
  616. package/dist/app/modules/oauth2/constants.d.ts.map +1 -1
  617. package/dist/app/modules/oauth2/constants.mjs +7 -1
  618. package/dist/app/modules/oauth2/constants.mjs.map +1 -1
  619. package/dist/app/modules/oauth2/module.d.ts.map +1 -1
  620. package/dist/app/modules/oauth2/module.mjs +23 -4
  621. package/dist/app/modules/oauth2/module.mjs.map +1 -1
  622. package/dist/app/modules/oauth2/repositories/client/repository.mjs +1 -1
  623. package/dist/app/modules/oauth2/repositories/client/repository.mjs.map +1 -1
  624. package/dist/app/modules/oauth2/repositories/consent/index.d.ts +2 -0
  625. package/dist/app/modules/oauth2/repositories/consent/index.d.ts.map +1 -0
  626. package/dist/app/modules/oauth2/repositories/consent/index.mjs +5 -0
  627. package/dist/app/modules/oauth2/repositories/consent/repository.d.ts +21 -0
  628. package/dist/app/modules/oauth2/repositories/consent/repository.d.ts.map +1 -0
  629. package/dist/app/modules/oauth2/repositories/consent/repository.mjs +92 -0
  630. package/dist/app/modules/oauth2/repositories/consent/repository.mjs.map +1 -0
  631. package/dist/app/modules/oauth2/repositories/index.d.ts +1 -1
  632. package/dist/app/modules/oauth2/repositories/index.d.ts.map +1 -1
  633. package/dist/app/modules/oauth2/repositories/index.mjs +3 -3
  634. package/dist/app/modules/oauth2/repositories/scope/repository.mjs +1 -1
  635. package/dist/app/modules/oauth2/repositories/scope/repository.mjs.map +1 -1
  636. package/dist/app/modules/oauth2/repositories/session-token/repository.mjs +21 -18
  637. package/dist/app/modules/oauth2/repositories/session-token/repository.mjs.map +1 -1
  638. package/dist/app/modules/oauth2/repositories/token/repository.d.ts +1 -0
  639. package/dist/app/modules/oauth2/repositories/token/repository.d.ts.map +1 -1
  640. package/dist/app/modules/oauth2/repositories/token/repository.mjs +8 -0
  641. package/dist/app/modules/oauth2/repositories/token/repository.mjs.map +1 -1
  642. package/dist/app/modules/provisioning/module.d.ts.map +1 -1
  643. package/dist/app/modules/provisioning/module.mjs +25 -29
  644. package/dist/app/modules/provisioning/module.mjs.map +1 -1
  645. package/dist/app/modules/provisioning/sources/composite/module.d.ts +17 -0
  646. package/dist/app/modules/provisioning/sources/composite/module.d.ts.map +1 -1
  647. package/dist/app/modules/provisioning/sources/composite/module.mjs +54 -2
  648. package/dist/app/modules/provisioning/sources/composite/module.mjs.map +1 -1
  649. package/dist/app/modules/provisioning/sources/default/module.d.ts.map +1 -1
  650. package/dist/app/modules/provisioning/sources/default/module.mjs +54 -74
  651. package/dist/app/modules/provisioning/sources/default/module.mjs.map +1 -1
  652. package/dist/app/modules/provisioning/sources/file/module.d.ts.map +1 -1
  653. package/dist/app/modules/provisioning/sources/file/module.mjs +16 -5
  654. package/dist/app/modules/provisioning/sources/file/module.mjs.map +1 -1
  655. package/dist/app/modules/provisioning/sources/file/types.d.ts +2 -0
  656. package/dist/app/modules/provisioning/sources/file/types.d.ts.map +1 -1
  657. package/dist/app/modules/provisioning/sources/index.mjs +1 -0
  658. package/dist/components/database/unique-entries/module.mjs +6 -6
  659. package/dist/components/database/unique-entries/module.mjs.map +1 -1
  660. package/dist/components/event-cleaner/index.d.ts +2 -0
  661. package/dist/components/event-cleaner/index.d.ts.map +1 -0
  662. package/dist/components/event-cleaner/index.mjs +5 -0
  663. package/dist/components/event-cleaner/module.d.ts +5 -0
  664. package/dist/components/event-cleaner/module.d.ts.map +1 -0
  665. package/dist/components/event-cleaner/module.mjs +30 -0
  666. package/dist/components/event-cleaner/module.mjs.map +1 -0
  667. package/dist/components/index.d.ts +1 -0
  668. package/dist/components/index.d.ts.map +1 -1
  669. package/dist/components/index.mjs +3 -1
  670. package/dist/components/oauth2-cleaner/module.d.ts +2 -1
  671. package/dist/components/oauth2-cleaner/module.d.ts.map +1 -1
  672. package/dist/components/oauth2-cleaner/module.mjs +9 -4
  673. package/dist/components/oauth2-cleaner/module.mjs.map +1 -1
  674. package/dist/core/authentication/credential/entities/client/module.d.ts +2 -2
  675. package/dist/core/authentication/credential/entities/client/module.d.ts.map +1 -1
  676. package/dist/core/authentication/credential/entities/client/module.mjs +4 -3
  677. package/dist/core/authentication/credential/entities/client/module.mjs.map +1 -1
  678. package/dist/core/authentication/credential/entities/index.d.ts +0 -1
  679. package/dist/core/authentication/credential/entities/index.d.ts.map +1 -1
  680. package/dist/core/authentication/credential/entities/index.mjs +1 -3
  681. package/dist/core/authentication/credential/index.mjs +1 -2
  682. package/dist/core/authentication/entities/client/module.mjs +2 -2
  683. package/dist/core/authentication/entities/client/module.mjs.map +1 -1
  684. package/dist/core/authentication/entities/index.d.ts +0 -1
  685. package/dist/core/authentication/entities/index.d.ts.map +1 -1
  686. package/dist/core/authentication/entities/index.mjs +1 -3
  687. package/dist/core/authentication/index.d.ts +1 -0
  688. package/dist/core/authentication/index.d.ts.map +1 -1
  689. package/dist/core/authentication/index.mjs +3 -3
  690. package/dist/core/authentication/login-throttle/index.d.ts.map +1 -0
  691. package/dist/core/authentication/login-throttle/index.mjs +5 -0
  692. package/dist/core/authentication/login-throttle/service.d.ts +13 -0
  693. package/dist/core/authentication/login-throttle/service.d.ts.map +1 -0
  694. package/dist/core/authentication/login-throttle/service.mjs +33 -0
  695. package/dist/core/authentication/login-throttle/service.mjs.map +1 -0
  696. package/dist/core/authentication/login-throttle/types.d.ts +34 -0
  697. package/dist/core/authentication/login-throttle/types.d.ts.map +1 -0
  698. package/dist/core/authentication/session/module.d.ts +1 -0
  699. package/dist/core/authentication/session/module.d.ts.map +1 -1
  700. package/dist/core/authentication/session/module.mjs +17 -16
  701. package/dist/core/authentication/session/module.mjs.map +1 -1
  702. package/dist/core/authentication/session/types.d.ts +12 -5
  703. package/dist/core/authentication/session/types.d.ts.map +1 -1
  704. package/dist/core/authentication/session/types.mjs +4 -5
  705. package/dist/core/authentication/session/types.mjs.map +1 -1
  706. package/dist/core/client-certificate/index.d.ts.map +1 -0
  707. package/dist/core/client-certificate/index.mjs +5 -0
  708. package/dist/core/client-certificate/module.d.ts +19 -0
  709. package/dist/core/client-certificate/module.d.ts.map +1 -0
  710. package/dist/core/client-certificate/module.mjs +196 -0
  711. package/dist/core/client-certificate/module.mjs.map +1 -0
  712. package/dist/core/client-certificate/reflect.d.ts +2 -0
  713. package/dist/core/client-certificate/reflect.d.ts.map +1 -0
  714. package/dist/core/client-certificate/reflect.mjs +5 -0
  715. package/dist/core/client-certificate/types.d.ts +22 -0
  716. package/dist/core/client-certificate/types.d.ts.map +1 -0
  717. package/dist/core/entities/client/index.d.ts +1 -0
  718. package/dist/core/entities/client/index.d.ts.map +1 -1
  719. package/dist/core/entities/client/index.mjs +2 -1
  720. package/dist/core/entities/client/schema.d.ts +3 -0
  721. package/dist/core/entities/client/schema.d.ts.map +1 -0
  722. package/dist/core/entities/client/schema.mjs +59 -0
  723. package/dist/core/entities/client/schema.mjs.map +1 -0
  724. package/dist/core/entities/client/service.d.ts.map +1 -1
  725. package/dist/core/entities/client/service.mjs +50 -19
  726. package/dist/core/entities/client/service.mjs.map +1 -1
  727. package/dist/core/entities/client/types.d.ts +2 -1
  728. package/dist/core/entities/client/types.d.ts.map +1 -1
  729. package/dist/core/entities/client/web-client.d.ts +4 -4
  730. package/dist/core/entities/client/web-client.d.ts.map +1 -1
  731. package/dist/core/entities/client/web-client.mjs +14 -13
  732. package/dist/core/entities/client/web-client.mjs.map +1 -1
  733. package/dist/core/entities/client-permission/index.d.ts +1 -0
  734. package/dist/core/entities/client-permission/index.d.ts.map +1 -1
  735. package/dist/core/entities/client-permission/index.mjs +2 -1
  736. package/dist/core/entities/client-permission/schema.d.ts +3 -0
  737. package/dist/core/entities/client-permission/schema.d.ts.map +1 -0
  738. package/dist/core/entities/client-permission/schema.mjs +41 -0
  739. package/dist/core/entities/client-permission/schema.mjs.map +1 -0
  740. package/dist/core/entities/client-permission/service.d.ts +1 -1
  741. package/dist/core/entities/client-permission/service.d.ts.map +1 -1
  742. package/dist/core/entities/client-permission/service.mjs +24 -18
  743. package/dist/core/entities/client-permission/service.mjs.map +1 -1
  744. package/dist/core/entities/client-role/index.d.ts +1 -0
  745. package/dist/core/entities/client-role/index.d.ts.map +1 -1
  746. package/dist/core/entities/client-role/index.mjs +2 -1
  747. package/dist/core/entities/client-role/schema.d.ts +3 -0
  748. package/dist/core/entities/client-role/schema.d.ts.map +1 -0
  749. package/dist/core/entities/client-role/schema.mjs +39 -0
  750. package/dist/core/entities/client-role/schema.mjs.map +1 -0
  751. package/dist/core/entities/client-role/service.d.ts +1 -1
  752. package/dist/core/entities/client-role/service.d.ts.map +1 -1
  753. package/dist/core/entities/client-role/service.mjs +14 -8
  754. package/dist/core/entities/client-role/service.mjs.map +1 -1
  755. package/dist/core/entities/client-scope/index.d.ts +1 -0
  756. package/dist/core/entities/client-scope/index.d.ts.map +1 -1
  757. package/dist/core/entities/client-scope/index.mjs +2 -1
  758. package/dist/core/entities/client-scope/schema.d.ts +3 -0
  759. package/dist/core/entities/client-scope/schema.d.ts.map +1 -0
  760. package/dist/core/entities/client-scope/schema.mjs +37 -0
  761. package/dist/core/entities/client-scope/schema.mjs.map +1 -0
  762. package/dist/core/entities/client-scope/service.d.ts +1 -1
  763. package/dist/core/entities/client-scope/service.d.ts.map +1 -1
  764. package/dist/core/entities/client-scope/service.mjs +12 -6
  765. package/dist/core/entities/client-scope/service.mjs.map +1 -1
  766. package/dist/core/entities/consent/index.d.ts +4 -0
  767. package/dist/core/entities/consent/index.d.ts.map +1 -0
  768. package/dist/core/entities/consent/index.mjs +7 -0
  769. package/dist/core/entities/consent/schema.d.ts +3 -0
  770. package/dist/core/entities/consent/schema.d.ts.map +1 -0
  771. package/dist/core/entities/consent/schema.mjs +40 -0
  772. package/dist/core/entities/consent/schema.mjs.map +1 -0
  773. package/dist/core/entities/consent/service.d.ts +19 -0
  774. package/dist/core/entities/consent/service.d.ts.map +1 -0
  775. package/dist/core/entities/consent/service.mjs +138 -0
  776. package/dist/core/entities/consent/service.mjs.map +1 -0
  777. package/dist/core/entities/consent/types.d.ts +98 -0
  778. package/dist/core/entities/consent/types.d.ts.map +1 -0
  779. package/dist/core/entities/consent/types.mjs +25 -0
  780. package/dist/core/entities/consent/types.mjs.map +1 -0
  781. package/dist/core/entities/event/constants.d.ts +7 -0
  782. package/dist/core/entities/event/constants.d.ts.map +1 -0
  783. package/dist/core/entities/event/constants.mjs +13 -0
  784. package/dist/core/entities/event/constants.mjs.map +1 -0
  785. package/dist/core/entities/event/diff.d.ts +20 -0
  786. package/dist/core/entities/event/diff.d.ts.map +1 -0
  787. package/dist/core/entities/event/diff.mjs +45 -0
  788. package/dist/core/entities/event/diff.mjs.map +1 -0
  789. package/dist/core/entities/event/entity-event-handler.d.ts +19 -0
  790. package/dist/core/entities/event/entity-event-handler.d.ts.map +1 -0
  791. package/dist/core/entities/event/entity-event-handler.mjs +98 -0
  792. package/dist/core/entities/event/entity-event-handler.mjs.map +1 -0
  793. package/dist/core/entities/event/index.d.ts +8 -0
  794. package/dist/core/entities/event/index.d.ts.map +1 -0
  795. package/dist/core/entities/event/index.mjs +10 -0
  796. package/dist/core/entities/event/sanitize.d.ts +2 -0
  797. package/dist/core/entities/event/sanitize.d.ts.map +1 -0
  798. package/dist/core/entities/event/sanitize.mjs +83 -0
  799. package/dist/core/entities/event/sanitize.mjs.map +1 -0
  800. package/dist/core/entities/event/schema.d.ts +3 -0
  801. package/dist/core/entities/event/schema.d.ts.map +1 -0
  802. package/dist/core/entities/event/schema.mjs +51 -0
  803. package/dist/core/entities/event/schema.mjs.map +1 -0
  804. package/dist/core/entities/event/service.d.ts +22 -0
  805. package/dist/core/entities/event/service.d.ts.map +1 -0
  806. package/dist/core/entities/event/service.mjs +185 -0
  807. package/dist/core/entities/event/service.mjs.map +1 -0
  808. package/dist/core/entities/event/types.d.ts +125 -0
  809. package/dist/core/entities/event/types.d.ts.map +1 -0
  810. package/dist/core/entities/identity-provider/index.d.ts +1 -0
  811. package/dist/core/entities/identity-provider/index.d.ts.map +1 -1
  812. package/dist/core/entities/identity-provider/index.mjs +2 -1
  813. package/dist/core/entities/identity-provider/schema.d.ts +3 -0
  814. package/dist/core/entities/identity-provider/schema.d.ts.map +1 -0
  815. package/dist/core/entities/identity-provider/schema.mjs +43 -0
  816. package/dist/core/entities/identity-provider/schema.mjs.map +1 -0
  817. package/dist/core/entities/identity-provider-role-mapping/index.d.ts +1 -0
  818. package/dist/core/entities/identity-provider-role-mapping/index.d.ts.map +1 -1
  819. package/dist/core/entities/identity-provider-role-mapping/index.mjs +2 -1
  820. package/dist/core/entities/identity-provider-role-mapping/schema.d.ts +3 -0
  821. package/dist/core/entities/identity-provider-role-mapping/schema.d.ts.map +1 -0
  822. package/dist/core/entities/identity-provider-role-mapping/schema.mjs +43 -0
  823. package/dist/core/entities/identity-provider-role-mapping/schema.mjs.map +1 -0
  824. package/dist/core/entities/identity-provider-role-mapping/service.d.ts +1 -1
  825. package/dist/core/entities/identity-provider-role-mapping/service.d.ts.map +1 -1
  826. package/dist/core/entities/identity-provider-role-mapping/service.mjs +18 -12
  827. package/dist/core/entities/identity-provider-role-mapping/service.mjs.map +1 -1
  828. package/dist/core/entities/index.d.ts +5 -3
  829. package/dist/core/entities/index.d.ts.map +1 -1
  830. package/dist/core/entities/index.mjs +45 -7
  831. package/dist/core/entities/key/index.d.ts +4 -0
  832. package/dist/core/entities/key/index.d.ts.map +1 -0
  833. package/dist/core/entities/key/index.mjs +6 -0
  834. package/dist/core/entities/key/schema.d.ts +3 -0
  835. package/dist/core/entities/key/schema.d.ts.map +1 -0
  836. package/dist/core/entities/key/schema.mjs +53 -0
  837. package/dist/core/entities/key/schema.mjs.map +1 -0
  838. package/dist/core/entities/key/service.d.ts +55 -0
  839. package/dist/core/entities/key/service.d.ts.map +1 -0
  840. package/dist/core/entities/key/service.mjs +320 -0
  841. package/dist/core/entities/key/service.mjs.map +1 -0
  842. package/dist/core/entities/key/types.d.ts +41 -0
  843. package/dist/core/entities/key/types.d.ts.map +1 -0
  844. package/dist/core/entities/permission/index.d.ts +1 -0
  845. package/dist/core/entities/permission/index.d.ts.map +1 -1
  846. package/dist/core/entities/permission/index.mjs +2 -1
  847. package/dist/core/entities/permission/schema.d.ts +3 -0
  848. package/dist/core/entities/permission/schema.d.ts.map +1 -0
  849. package/dist/core/entities/permission/schema.mjs +28 -0
  850. package/dist/core/entities/permission/schema.mjs.map +1 -0
  851. package/dist/core/entities/permission/service.d.ts +7 -2
  852. package/dist/core/entities/permission/service.d.ts.map +1 -1
  853. package/dist/core/entities/permission/service.mjs +54 -41
  854. package/dist/core/entities/permission/service.mjs.map +1 -1
  855. package/dist/core/entities/permission-policy/index.d.ts +1 -0
  856. package/dist/core/entities/permission-policy/index.d.ts.map +1 -1
  857. package/dist/core/entities/permission-policy/index.mjs +2 -1
  858. package/dist/core/entities/permission-policy/schema.d.ts +3 -0
  859. package/dist/core/entities/permission-policy/schema.d.ts.map +1 -0
  860. package/dist/core/entities/permission-policy/schema.mjs +39 -0
  861. package/dist/core/entities/permission-policy/schema.mjs.map +1 -0
  862. package/dist/core/entities/permission-policy/service.d.ts +1 -1
  863. package/dist/core/entities/permission-policy/service.d.ts.map +1 -1
  864. package/dist/core/entities/permission-policy/service.mjs +12 -6
  865. package/dist/core/entities/permission-policy/service.mjs.map +1 -1
  866. package/dist/core/entities/policy/index.d.ts +1 -0
  867. package/dist/core/entities/policy/index.d.ts.map +1 -1
  868. package/dist/core/entities/policy/index.mjs +2 -1
  869. package/dist/core/entities/policy/schema.d.ts +3 -0
  870. package/dist/core/entities/policy/schema.d.ts.map +1 -0
  871. package/dist/core/entities/policy/schema.mjs +49 -0
  872. package/dist/core/entities/policy/schema.mjs.map +1 -0
  873. package/dist/core/entities/policy/service.d.ts.map +1 -1
  874. package/dist/core/entities/policy/service.mjs +15 -9
  875. package/dist/core/entities/policy/service.mjs.map +1 -1
  876. package/dist/core/entities/realm/index.d.ts +1 -0
  877. package/dist/core/entities/realm/index.d.ts.map +1 -1
  878. package/dist/core/entities/realm/index.mjs +2 -1
  879. package/dist/core/entities/realm/schema.d.ts +3 -0
  880. package/dist/core/entities/realm/schema.d.ts.map +1 -0
  881. package/dist/core/entities/realm/schema.mjs +36 -0
  882. package/dist/core/entities/realm/schema.mjs.map +1 -0
  883. package/dist/core/entities/realm/service.d.ts +3 -0
  884. package/dist/core/entities/realm/service.d.ts.map +1 -1
  885. package/dist/core/entities/realm/service.mjs +10 -4
  886. package/dist/core/entities/realm/service.mjs.map +1 -1
  887. package/dist/core/entities/realm/types.d.ts +1 -1
  888. package/dist/core/entities/role/index.d.ts +1 -0
  889. package/dist/core/entities/role/index.d.ts.map +1 -1
  890. package/dist/core/entities/role/index.mjs +2 -1
  891. package/dist/core/entities/role/schema.d.ts +3 -0
  892. package/dist/core/entities/role/schema.d.ts.map +1 -0
  893. package/dist/core/entities/role/schema.mjs +43 -0
  894. package/dist/core/entities/role/schema.mjs.map +1 -0
  895. package/dist/core/entities/role/service.d.ts.map +1 -1
  896. package/dist/core/entities/role/service.mjs +13 -7
  897. package/dist/core/entities/role/service.mjs.map +1 -1
  898. package/dist/core/entities/role-attribute/index.d.ts +1 -0
  899. package/dist/core/entities/role-attribute/index.d.ts.map +1 -1
  900. package/dist/core/entities/role-attribute/index.mjs +2 -1
  901. package/dist/core/entities/role-attribute/schema.d.ts +3 -0
  902. package/dist/core/entities/role-attribute/schema.d.ts.map +1 -0
  903. package/dist/core/entities/role-attribute/schema.mjs +47 -0
  904. package/dist/core/entities/role-attribute/schema.mjs.map +1 -0
  905. package/dist/core/entities/role-attribute/service.d.ts.map +1 -1
  906. package/dist/core/entities/role-attribute/service.mjs +22 -9
  907. package/dist/core/entities/role-attribute/service.mjs.map +1 -1
  908. package/dist/core/entities/role-permission/index.d.ts +1 -0
  909. package/dist/core/entities/role-permission/index.d.ts.map +1 -1
  910. package/dist/core/entities/role-permission/index.mjs +2 -1
  911. package/dist/core/entities/role-permission/schema.d.ts +3 -0
  912. package/dist/core/entities/role-permission/schema.d.ts.map +1 -0
  913. package/dist/core/entities/role-permission/schema.mjs +41 -0
  914. package/dist/core/entities/role-permission/schema.mjs.map +1 -0
  915. package/dist/core/entities/role-permission/service.d.ts +1 -1
  916. package/dist/core/entities/role-permission/service.d.ts.map +1 -1
  917. package/dist/core/entities/role-permission/service.mjs +24 -18
  918. package/dist/core/entities/role-permission/service.mjs.map +1 -1
  919. package/dist/core/entities/scope/index.d.ts +1 -0
  920. package/dist/core/entities/scope/index.d.ts.map +1 -1
  921. package/dist/core/entities/scope/index.mjs +2 -1
  922. package/dist/core/entities/scope/schema.d.ts +3 -0
  923. package/dist/core/entities/scope/schema.d.ts.map +1 -0
  924. package/dist/core/entities/scope/schema.mjs +43 -0
  925. package/dist/core/entities/scope/schema.mjs.map +1 -0
  926. package/dist/core/entities/scope/service.d.ts.map +1 -1
  927. package/dist/core/entities/scope/service.mjs +11 -5
  928. package/dist/core/entities/scope/service.mjs.map +1 -1
  929. package/dist/core/entities/session/index.d.ts +1 -0
  930. package/dist/core/entities/session/index.d.ts.map +1 -1
  931. package/dist/core/entities/session/index.mjs +2 -1
  932. package/dist/core/entities/session/schema.d.ts +3 -0
  933. package/dist/core/entities/session/schema.d.ts.map +1 -0
  934. package/dist/core/entities/session/schema.mjs +44 -0
  935. package/dist/core/entities/session/schema.mjs.map +1 -0
  936. package/dist/core/entities/session/service.d.ts +11 -0
  937. package/dist/core/entities/session/service.d.ts.map +1 -1
  938. package/dist/core/entities/session/service.mjs +53 -13
  939. package/dist/core/entities/session/service.mjs.map +1 -1
  940. package/dist/core/entities/session/types.d.ts +2 -2
  941. package/dist/core/entities/trust-anchor/index.d.ts +4 -0
  942. package/dist/core/entities/trust-anchor/index.d.ts.map +1 -0
  943. package/dist/core/entities/trust-anchor/index.mjs +6 -0
  944. package/dist/core/entities/trust-anchor/schema.d.ts +3 -0
  945. package/dist/core/entities/trust-anchor/schema.d.ts.map +1 -0
  946. package/dist/core/entities/trust-anchor/schema.mjs +43 -0
  947. package/dist/core/entities/trust-anchor/schema.mjs.map +1 -0
  948. package/dist/core/entities/trust-anchor/service.d.ts +33 -0
  949. package/dist/core/entities/trust-anchor/service.d.ts.map +1 -0
  950. package/dist/core/entities/trust-anchor/service.mjs +191 -0
  951. package/dist/core/entities/trust-anchor/service.mjs.map +1 -0
  952. package/dist/core/entities/trust-anchor/types.d.ts +22 -0
  953. package/dist/core/entities/trust-anchor/types.d.ts.map +1 -0
  954. package/dist/core/entities/user/index.d.ts +1 -0
  955. package/dist/core/entities/user/index.d.ts.map +1 -1
  956. package/dist/core/entities/user/index.mjs +2 -1
  957. package/dist/core/entities/user/schema.d.ts +3 -0
  958. package/dist/core/entities/user/schema.d.ts.map +1 -0
  959. package/dist/core/entities/user/schema.mjs +50 -0
  960. package/dist/core/entities/user/schema.mjs.map +1 -0
  961. package/dist/core/entities/user/service.d.ts.map +1 -1
  962. package/dist/core/entities/user/service.mjs +35 -14
  963. package/dist/core/entities/user/service.mjs.map +1 -1
  964. package/dist/core/entities/user/types.d.ts +2 -1
  965. package/dist/core/entities/user/types.d.ts.map +1 -1
  966. package/dist/core/entities/user-attribute/index.d.ts +1 -0
  967. package/dist/core/entities/user-attribute/index.d.ts.map +1 -1
  968. package/dist/core/entities/user-attribute/index.mjs +2 -1
  969. package/dist/core/entities/user-attribute/schema.d.ts +3 -0
  970. package/dist/core/entities/user-attribute/schema.d.ts.map +1 -0
  971. package/dist/core/entities/user-attribute/schema.mjs +47 -0
  972. package/dist/core/entities/user-attribute/schema.mjs.map +1 -0
  973. package/dist/core/entities/user-attribute/service.d.ts.map +1 -1
  974. package/dist/core/entities/user-attribute/service.mjs +29 -13
  975. package/dist/core/entities/user-attribute/service.mjs.map +1 -1
  976. package/dist/core/entities/user-authenticator/constants.d.ts +26 -0
  977. package/dist/core/entities/user-authenticator/constants.d.ts.map +1 -0
  978. package/dist/core/entities/user-authenticator/constants.mjs +32 -0
  979. package/dist/core/entities/user-authenticator/constants.mjs.map +1 -0
  980. package/dist/core/entities/user-authenticator/helpers.d.ts +10 -0
  981. package/dist/core/entities/user-authenticator/helpers.d.ts.map +1 -0
  982. package/dist/core/entities/user-authenticator/helpers.mjs +35 -0
  983. package/dist/core/entities/user-authenticator/helpers.mjs.map +1 -0
  984. package/dist/core/entities/user-authenticator/index.d.ts +7 -0
  985. package/dist/core/entities/user-authenticator/index.d.ts.map +1 -0
  986. package/dist/core/entities/user-authenticator/index.mjs +10 -0
  987. package/dist/core/entities/user-authenticator/schema.d.ts +3 -0
  988. package/dist/core/entities/user-authenticator/schema.d.ts.map +1 -0
  989. package/dist/core/entities/user-authenticator/schema.mjs +47 -0
  990. package/dist/core/entities/user-authenticator/schema.mjs.map +1 -0
  991. package/dist/core/entities/user-authenticator/service.d.ts +89 -0
  992. package/dist/core/entities/user-authenticator/service.d.ts.map +1 -0
  993. package/dist/core/entities/user-authenticator/service.mjs +731 -0
  994. package/dist/core/entities/user-authenticator/service.mjs.map +1 -0
  995. package/dist/core/entities/user-authenticator/types.d.ts +222 -0
  996. package/dist/core/entities/user-authenticator/types.d.ts.map +1 -0
  997. package/dist/core/entities/user-authenticator/types.mjs +15 -0
  998. package/dist/core/entities/user-authenticator/types.mjs.map +1 -0
  999. package/dist/core/entities/user-authenticator/webauthn.d.ts +28 -0
  1000. package/dist/core/entities/user-authenticator/webauthn.d.ts.map +1 -0
  1001. package/dist/core/entities/user-authenticator/webauthn.mjs +88 -0
  1002. package/dist/core/entities/user-authenticator/webauthn.mjs.map +1 -0
  1003. package/dist/core/entities/user-permission/index.d.ts +1 -0
  1004. package/dist/core/entities/user-permission/index.d.ts.map +1 -1
  1005. package/dist/core/entities/user-permission/index.mjs +2 -1
  1006. package/dist/core/entities/user-permission/schema.d.ts +3 -0
  1007. package/dist/core/entities/user-permission/schema.d.ts.map +1 -0
  1008. package/dist/core/entities/user-permission/schema.mjs +41 -0
  1009. package/dist/core/entities/user-permission/schema.mjs.map +1 -0
  1010. package/dist/core/entities/user-permission/service.d.ts +1 -1
  1011. package/dist/core/entities/user-permission/service.d.ts.map +1 -1
  1012. package/dist/core/entities/user-permission/service.mjs +24 -18
  1013. package/dist/core/entities/user-permission/service.mjs.map +1 -1
  1014. package/dist/core/entities/user-role/index.d.ts +1 -0
  1015. package/dist/core/entities/user-role/index.d.ts.map +1 -1
  1016. package/dist/core/entities/user-role/index.mjs +2 -1
  1017. package/dist/core/entities/user-role/schema.d.ts +3 -0
  1018. package/dist/core/entities/user-role/schema.d.ts.map +1 -0
  1019. package/dist/core/entities/user-role/schema.mjs +39 -0
  1020. package/dist/core/entities/user-role/schema.mjs.map +1 -0
  1021. package/dist/core/entities/user-role/service.d.ts +1 -1
  1022. package/dist/core/entities/user-role/service.d.ts.map +1 -1
  1023. package/dist/core/entities/user-role/service.mjs +14 -8
  1024. package/dist/core/entities/user-role/service.mjs.map +1 -1
  1025. package/dist/core/identity/entities/index.d.ts +0 -1
  1026. package/dist/core/identity/entities/index.d.ts.map +1 -1
  1027. package/dist/core/identity/index.mjs +2 -1
  1028. package/dist/core/identity/password-recovery/disabled.d.ts +2 -2
  1029. package/dist/core/identity/password-recovery/disabled.d.ts.map +1 -1
  1030. package/dist/core/identity/password-recovery/disabled.mjs +2 -2
  1031. package/dist/core/identity/password-recovery/disabled.mjs.map +1 -1
  1032. package/dist/core/identity/password-recovery/email-verification-required.d.ts +2 -2
  1033. package/dist/core/identity/password-recovery/email-verification-required.d.ts.map +1 -1
  1034. package/dist/core/identity/password-recovery/email-verification-required.mjs +2 -2
  1035. package/dist/core/identity/password-recovery/email-verification-required.mjs.map +1 -1
  1036. package/dist/core/identity/password-recovery/service.d.ts +2 -1
  1037. package/dist/core/identity/password-recovery/service.d.ts.map +1 -1
  1038. package/dist/core/identity/password-recovery/service.mjs +45 -23
  1039. package/dist/core/identity/password-recovery/service.mjs.map +1 -1
  1040. package/dist/core/identity/password-recovery/token-expired.d.ts +2 -2
  1041. package/dist/core/identity/password-recovery/token-expired.d.ts.map +1 -1
  1042. package/dist/core/identity/password-recovery/token-expired.mjs +2 -2
  1043. package/dist/core/identity/password-recovery/token-expired.mjs.map +1 -1
  1044. package/dist/core/identity/password-recovery/types.d.ts +4 -3
  1045. package/dist/core/identity/password-recovery/types.d.ts.map +1 -1
  1046. package/dist/core/identity/permission/checker/service.mjs +2 -2
  1047. package/dist/core/identity/permission/checker/service.mjs.map +1 -1
  1048. package/dist/core/identity/permission/identity-policy-data.mjs +2 -2
  1049. package/dist/core/identity/permission/identity-policy-data.mjs.map +1 -1
  1050. package/dist/core/identity/permission/index.d.ts +1 -0
  1051. package/dist/core/identity/permission/index.d.ts.map +1 -1
  1052. package/dist/core/identity/permission/index.mjs +2 -1
  1053. package/dist/core/identity/permission/junction-grant.d.ts +6 -6
  1054. package/dist/core/identity/permission/junction-grant.mjs +14 -14
  1055. package/dist/core/identity/permission/junction-grant.mjs.map +1 -1
  1056. package/dist/core/identity/permission/module.d.ts +0 -3
  1057. package/dist/core/identity/permission/module.d.ts.map +1 -1
  1058. package/dist/core/identity/permission/module.mjs +9 -15
  1059. package/dist/core/identity/permission/module.mjs.map +1 -1
  1060. package/dist/core/identity/permission/types.d.ts +0 -2
  1061. package/dist/core/identity/permission/types.d.ts.map +1 -1
  1062. package/dist/core/identity/policy/checker/service.mjs +2 -2
  1063. package/dist/core/identity/policy/checker/service.mjs.map +1 -1
  1064. package/dist/core/identity/provider/account/module.mjs +9 -9
  1065. package/dist/core/identity/provider/account/module.mjs.map +1 -1
  1066. package/dist/core/identity/provider/authentication/presets/facebook.mjs +5 -5
  1067. package/dist/core/identity/provider/authentication/presets/facebook.mjs.map +1 -1
  1068. package/dist/core/identity/provider/authentication/presets/github.mjs +3 -3
  1069. package/dist/core/identity/provider/authentication/presets/github.mjs.map +1 -1
  1070. package/dist/core/identity/provider/authentication/presets/google.mjs +5 -5
  1071. package/dist/core/identity/provider/authentication/presets/google.mjs.map +1 -1
  1072. package/dist/core/identity/provider/authentication/presets/instagram.mjs +3 -3
  1073. package/dist/core/identity/provider/authentication/presets/instagram.mjs.map +1 -1
  1074. package/dist/core/identity/provider/authentication/presets/paypal.mjs +3 -3
  1075. package/dist/core/identity/provider/authentication/presets/paypal.mjs.map +1 -1
  1076. package/dist/core/identity/provider/authentication/protocols/ldap/module.mjs +20 -20
  1077. package/dist/core/identity/provider/authentication/protocols/ldap/module.mjs.map +1 -1
  1078. package/dist/core/identity/provider/authentication/protocols/oauth2/module.mjs +7 -7
  1079. package/dist/core/identity/provider/authentication/protocols/oauth2/module.mjs.map +1 -1
  1080. package/dist/core/identity/provider/mapper/attributes/module.mjs +3 -3
  1081. package/dist/core/identity/provider/mapper/attributes/module.mjs.map +1 -1
  1082. package/dist/core/identity/provider/mapper/base.mjs +2 -2
  1083. package/dist/core/identity/provider/mapper/base.mjs.map +1 -1
  1084. package/dist/core/identity/provider/mapper/permission/module.mjs +2 -2
  1085. package/dist/core/identity/provider/mapper/permission/module.mjs.map +1 -1
  1086. package/dist/core/identity/provider/mapper/role/module.mjs +2 -2
  1087. package/dist/core/identity/provider/mapper/role/module.mjs.map +1 -1
  1088. package/dist/core/identity/registration/error.d.ts +2 -2
  1089. package/dist/core/identity/registration/error.d.ts.map +1 -1
  1090. package/dist/core/identity/registration/error.mjs +2 -2
  1091. package/dist/core/identity/registration/error.mjs.map +1 -1
  1092. package/dist/core/identity/registration/service.d.ts +2 -1
  1093. package/dist/core/identity/registration/service.d.ts.map +1 -1
  1094. package/dist/core/identity/registration/service.mjs +33 -11
  1095. package/dist/core/identity/registration/service.mjs.map +1 -1
  1096. package/dist/core/identity/registration/types.d.ts +2 -1
  1097. package/dist/core/identity/registration/types.d.ts.map +1 -1
  1098. package/dist/core/identity/resolver/module.d.ts +1 -3
  1099. package/dist/core/identity/resolver/module.d.ts.map +1 -1
  1100. package/dist/core/identity/resolver/module.mjs +0 -13
  1101. package/dist/core/identity/resolver/module.mjs.map +1 -1
  1102. package/dist/core/identity/resolver/types.d.ts +1 -2
  1103. package/dist/core/identity/resolver/types.d.ts.map +1 -1
  1104. package/dist/core/identity/role/module.d.ts +0 -2
  1105. package/dist/core/identity/role/module.d.ts.map +1 -1
  1106. package/dist/core/identity/role/module.mjs +1 -4
  1107. package/dist/core/identity/role/module.mjs.map +1 -1
  1108. package/dist/core/identity/role/types.d.ts +0 -2
  1109. package/dist/core/identity/role/types.d.ts.map +1 -1
  1110. package/dist/core/index.d.ts +4 -0
  1111. package/dist/core/index.d.ts.map +1 -1
  1112. package/dist/core/index.mjs +66 -16
  1113. package/dist/core/key/certificate-error.d.ts +10 -0
  1114. package/dist/core/key/certificate-error.d.ts.map +1 -0
  1115. package/dist/core/key/certificate-error.mjs +19 -0
  1116. package/dist/core/key/certificate-error.mjs.map +1 -0
  1117. package/dist/core/key/certificate.d.ts +15 -0
  1118. package/dist/core/key/certificate.d.ts.map +1 -0
  1119. package/dist/core/key/certificate.mjs +72 -0
  1120. package/dist/core/key/certificate.mjs.map +1 -0
  1121. package/dist/core/key/check.d.ts +3 -0
  1122. package/dist/core/key/check.d.ts.map +1 -0
  1123. package/dist/core/key/check.mjs +13 -0
  1124. package/dist/core/key/check.mjs.map +1 -0
  1125. package/dist/core/key/constants.d.ts +10 -0
  1126. package/dist/core/key/constants.d.ts.map +1 -0
  1127. package/dist/core/key/constants.mjs +15 -0
  1128. package/dist/core/key/constants.mjs.map +1 -0
  1129. package/dist/core/key/error.d.ts +14 -0
  1130. package/dist/core/key/error.d.ts.map +1 -0
  1131. package/dist/core/key/error.mjs +23 -0
  1132. package/dist/core/key/error.mjs.map +1 -0
  1133. package/dist/core/key/index.d.ts +10 -0
  1134. package/dist/core/key/index.d.ts.map +1 -0
  1135. package/dist/core/key/index.mjs +12 -0
  1136. package/dist/core/key/provisioner.d.ts +22 -0
  1137. package/dist/core/key/provisioner.d.ts.map +1 -0
  1138. package/dist/core/key/provisioner.mjs +30 -0
  1139. package/dist/core/key/provisioner.mjs.map +1 -0
  1140. package/dist/core/key/realm-cipher.d.ts +20 -0
  1141. package/dist/core/key/realm-cipher.d.ts.map +1 -0
  1142. package/dist/core/key/realm-cipher.mjs +60 -0
  1143. package/dist/core/key/realm-cipher.mjs.map +1 -0
  1144. package/dist/core/key/types.d.ts +59 -0
  1145. package/dist/core/key/types.d.ts.map +1 -0
  1146. package/dist/core/key/wrap.d.ts +5 -0
  1147. package/dist/core/key/wrap.d.ts.map +1 -0
  1148. package/dist/core/key/wrap.mjs +21 -0
  1149. package/dist/core/key/wrap.mjs.map +1 -0
  1150. package/dist/core/mail/template/registry.d.ts.map +1 -1
  1151. package/dist/core/mail/template/registry.mjs +3 -1
  1152. package/dist/core/mail/template/registry.mjs.map +1 -1
  1153. package/dist/core/mail/template/templates/mfa-email-otp.d.ts +3 -0
  1154. package/dist/core/mail/template/templates/mfa-email-otp.d.ts.map +1 -0
  1155. package/dist/core/mail/template/templates/mfa-email-otp.mjs +34 -0
  1156. package/dist/core/mail/template/templates/mfa-email-otp.mjs.map +1 -0
  1157. package/dist/core/mail/template/types.d.ts +6 -1
  1158. package/dist/core/mail/template/types.d.ts.map +1 -1
  1159. package/dist/core/mail/template/types.mjs +1 -0
  1160. package/dist/core/mail/template/types.mjs.map +1 -1
  1161. package/dist/core/metrics/index.d.ts +3 -0
  1162. package/dist/core/metrics/index.d.ts.map +1 -0
  1163. package/dist/core/metrics/index.mjs +5 -0
  1164. package/dist/core/metrics/noop.d.ts +8 -0
  1165. package/dist/core/metrics/noop.d.ts.map +1 -0
  1166. package/dist/core/metrics/noop.mjs +14 -0
  1167. package/dist/core/metrics/noop.mjs.map +1 -0
  1168. package/dist/core/metrics/types.d.ts +19 -0
  1169. package/dist/core/metrics/types.d.ts.map +1 -0
  1170. package/dist/core/oauth2/access-policy/index.d.ts +3 -0
  1171. package/dist/core/oauth2/access-policy/index.d.ts.map +1 -0
  1172. package/dist/core/oauth2/access-policy/index.mjs +5 -0
  1173. package/dist/core/oauth2/access-policy/module.d.ts +12 -0
  1174. package/dist/core/oauth2/access-policy/module.d.ts.map +1 -0
  1175. package/dist/core/oauth2/access-policy/module.mjs +32 -0
  1176. package/dist/core/oauth2/access-policy/module.mjs.map +1 -0
  1177. package/dist/core/oauth2/access-policy/types.d.ts +19 -0
  1178. package/dist/core/oauth2/access-policy/types.d.ts.map +1 -0
  1179. package/dist/core/oauth2/authorization/code/issuer/module.d.ts.map +1 -1
  1180. package/dist/core/oauth2/authorization/code/issuer/module.mjs +2 -0
  1181. package/dist/core/oauth2/authorization/code/issuer/module.mjs.map +1 -1
  1182. package/dist/core/oauth2/authorization/code/issuer/types.d.ts +6 -1
  1183. package/dist/core/oauth2/authorization/code/issuer/types.d.ts.map +1 -1
  1184. package/dist/core/oauth2/authorization/code/verifier/module.mjs.map +1 -1
  1185. package/dist/core/oauth2/authorization/code-request/validator.d.ts.map +1 -1
  1186. package/dist/core/oauth2/authorization/code-request/validator.mjs +1 -0
  1187. package/dist/core/oauth2/authorization/code-request/validator.mjs.map +1 -1
  1188. package/dist/core/oauth2/authorization/code-request/verifier/module.mjs +6 -6
  1189. package/dist/core/oauth2/authorization/code-request/verifier/module.mjs.map +1 -1
  1190. package/dist/core/oauth2/authorization/helpers.d.ts +10 -1
  1191. package/dist/core/oauth2/authorization/helpers.d.ts.map +1 -1
  1192. package/dist/core/oauth2/authorization/helpers.mjs +28 -2
  1193. package/dist/core/oauth2/authorization/helpers.mjs.map +1 -1
  1194. package/dist/core/oauth2/authorization/index.mjs +2 -2
  1195. package/dist/core/oauth2/authorization/module.d.ts +9 -0
  1196. package/dist/core/oauth2/authorization/module.d.ts.map +1 -1
  1197. package/dist/core/oauth2/authorization/module.mjs +82 -5
  1198. package/dist/core/oauth2/authorization/module.mjs.map +1 -1
  1199. package/dist/core/oauth2/authorization/types.d.ts +36 -0
  1200. package/dist/core/oauth2/authorization/types.d.ts.map +1 -1
  1201. package/dist/core/oauth2/client/authenticator.d.ts +16 -7
  1202. package/dist/core/oauth2/client/authenticator.d.ts.map +1 -1
  1203. package/dist/core/oauth2/client/authenticator.mjs +49 -12
  1204. package/dist/core/oauth2/client/authenticator.mjs.map +1 -1
  1205. package/dist/core/oauth2/client/grant-type.d.ts +1 -1
  1206. package/dist/core/oauth2/client/grant-type.d.ts.map +1 -1
  1207. package/dist/core/oauth2/client/grant-type.mjs +2 -2
  1208. package/dist/core/oauth2/client/grant-type.mjs.map +1 -1
  1209. package/dist/core/oauth2/end-session/service.d.ts +2 -1
  1210. package/dist/core/oauth2/end-session/service.d.ts.map +1 -1
  1211. package/dist/core/oauth2/end-session/service.mjs +15 -2
  1212. package/dist/core/oauth2/end-session/service.mjs.map +1 -1
  1213. package/dist/core/oauth2/end-session/types.d.ts +2 -1
  1214. package/dist/core/oauth2/end-session/types.d.ts.map +1 -1
  1215. package/dist/core/oauth2/grant-types/authorize.d.ts +2 -2
  1216. package/dist/core/oauth2/grant-types/authorize.d.ts.map +1 -1
  1217. package/dist/core/oauth2/grant-types/authorize.mjs +20 -16
  1218. package/dist/core/oauth2/grant-types/authorize.mjs.map +1 -1
  1219. package/dist/core/oauth2/grant-types/client-credentials.d.ts.map +1 -1
  1220. package/dist/core/oauth2/grant-types/client-credentials.mjs +10 -8
  1221. package/dist/core/oauth2/grant-types/client-credentials.mjs.map +1 -1
  1222. package/dist/core/oauth2/grant-types/identity.d.ts.map +1 -1
  1223. package/dist/core/oauth2/grant-types/identity.mjs +16 -9
  1224. package/dist/core/oauth2/grant-types/identity.mjs.map +1 -1
  1225. package/dist/core/oauth2/grant-types/index.d.ts +0 -1
  1226. package/dist/core/oauth2/grant-types/index.d.ts.map +1 -1
  1227. package/dist/core/oauth2/grant-types/index.mjs +1 -2
  1228. package/dist/core/oauth2/grant-types/password.d.ts +9 -0
  1229. package/dist/core/oauth2/grant-types/password.d.ts.map +1 -1
  1230. package/dist/core/oauth2/grant-types/password.mjs +39 -11
  1231. package/dist/core/oauth2/grant-types/password.mjs.map +1 -1
  1232. package/dist/core/oauth2/grant-types/refresh-token.d.ts +4 -0
  1233. package/dist/core/oauth2/grant-types/refresh-token.d.ts.map +1 -1
  1234. package/dist/core/oauth2/grant-types/refresh-token.mjs +29 -13
  1235. package/dist/core/oauth2/grant-types/refresh-token.mjs.map +1 -1
  1236. package/dist/core/oauth2/grant-types/types.d.ts +10 -3
  1237. package/dist/core/oauth2/grant-types/types.d.ts.map +1 -1
  1238. package/dist/core/oauth2/index.d.ts +2 -1
  1239. package/dist/core/oauth2/index.d.ts.map +1 -1
  1240. package/dist/core/oauth2/index.mjs +7 -3
  1241. package/dist/core/oauth2/mfa-login/index.d.ts +3 -0
  1242. package/dist/core/oauth2/mfa-login/index.d.ts.map +1 -0
  1243. package/dist/core/oauth2/mfa-login/index.mjs +5 -0
  1244. package/dist/core/oauth2/mfa-login/module.d.ts +19 -0
  1245. package/dist/core/oauth2/mfa-login/module.d.ts.map +1 -0
  1246. package/dist/core/oauth2/mfa-login/module.mjs +109 -0
  1247. package/dist/core/oauth2/mfa-login/module.mjs.map +1 -0
  1248. package/dist/core/oauth2/mfa-login/types.d.ts +64 -0
  1249. package/dist/core/oauth2/mfa-login/types.d.ts.map +1 -0
  1250. package/dist/core/oauth2/mfa-login/types.mjs +4 -0
  1251. package/dist/core/oauth2/openid/claims.d.ts +1 -3
  1252. package/dist/core/oauth2/openid/claims.d.ts.map +1 -1
  1253. package/dist/core/oauth2/openid/claims.mjs +6 -19
  1254. package/dist/core/oauth2/openid/claims.mjs.map +1 -1
  1255. package/dist/core/oauth2/scope/resolver.d.ts +1 -3
  1256. package/dist/core/oauth2/scope/resolver.d.ts.map +1 -1
  1257. package/dist/core/oauth2/scope/resolver.mjs +9 -31
  1258. package/dist/core/oauth2/scope/resolver.mjs.map +1 -1
  1259. package/dist/core/oauth2/session-token/types.d.ts +8 -8
  1260. package/dist/core/oauth2/session-token/types.d.ts.map +1 -1
  1261. package/dist/core/oauth2/token/index.mjs +2 -1
  1262. package/dist/core/oauth2/token/issuer/access/module.mjs +7 -7
  1263. package/dist/core/oauth2/token/issuer/access/module.mjs.map +1 -1
  1264. package/dist/core/oauth2/token/issuer/index.d.ts +1 -0
  1265. package/dist/core/oauth2/token/issuer/index.d.ts.map +1 -1
  1266. package/dist/core/oauth2/token/issuer/index.mjs +3 -1
  1267. package/dist/core/oauth2/token/issuer/mfa/index.d.ts +2 -0
  1268. package/dist/core/oauth2/token/issuer/mfa/index.d.ts.map +1 -0
  1269. package/dist/core/oauth2/token/issuer/mfa/index.mjs +5 -0
  1270. package/dist/core/oauth2/token/issuer/mfa/module.d.ts +18 -0
  1271. package/dist/core/oauth2/token/issuer/mfa/module.d.ts.map +1 -0
  1272. package/dist/core/oauth2/token/issuer/mfa/module.mjs +36 -0
  1273. package/dist/core/oauth2/token/issuer/mfa/module.mjs.map +1 -0
  1274. package/dist/core/oauth2/token/issuer/refresh/module.mjs +5 -5
  1275. package/dist/core/oauth2/token/issuer/refresh/module.mjs.map +1 -1
  1276. package/dist/core/oauth2/token/repository/types.d.ts +10 -0
  1277. package/dist/core/oauth2/token/repository/types.d.ts.map +1 -1
  1278. package/dist/core/oauth2/token/revoker/module.d.ts.map +1 -1
  1279. package/dist/core/oauth2/token/revoker/module.mjs +1 -0
  1280. package/dist/core/oauth2/token/revoker/module.mjs.map +1 -1
  1281. package/dist/core/oauth2/token/signer/module.d.ts +3 -3
  1282. package/dist/core/oauth2/token/signer/module.d.ts.map +1 -1
  1283. package/dist/core/oauth2/token/signer/module.mjs +11 -12
  1284. package/dist/core/oauth2/token/signer/module.mjs.map +1 -1
  1285. package/dist/core/oauth2/token/verifier/module.d.ts +3 -3
  1286. package/dist/core/oauth2/token/verifier/module.d.ts.map +1 -1
  1287. package/dist/core/oauth2/token/verifier/module.mjs +16 -13
  1288. package/dist/core/oauth2/token/verifier/module.mjs.map +1 -1
  1289. package/dist/core/provisioning/entities/index.d.ts +0 -1
  1290. package/dist/core/provisioning/entities/index.d.ts.map +1 -1
  1291. package/dist/core/provisioning/entities/index.mjs +1 -3
  1292. package/dist/core/provisioning/entities/policy/validator.d.ts +2 -0
  1293. package/dist/core/provisioning/entities/policy/validator.d.ts.map +1 -1
  1294. package/dist/core/provisioning/entities/policy/validator.mjs +10 -1
  1295. package/dist/core/provisioning/entities/policy/validator.mjs.map +1 -1
  1296. package/dist/core/provisioning/entities/realm/relations-validator.d.ts.map +1 -1
  1297. package/dist/core/provisioning/entities/realm/relations-validator.mjs +0 -4
  1298. package/dist/core/provisioning/entities/realm/relations-validator.mjs.map +1 -1
  1299. package/dist/core/provisioning/entities/realm/types.d.ts +0 -2
  1300. package/dist/core/provisioning/entities/realm/types.d.ts.map +1 -1
  1301. package/dist/core/provisioning/entities/role/types.d.ts +2 -2
  1302. package/dist/core/provisioning/index.mjs +1 -3
  1303. package/dist/core/provisioning/synchronizer/client/module.mjs +11 -11
  1304. package/dist/core/provisioning/synchronizer/client/module.mjs.map +1 -1
  1305. package/dist/core/provisioning/synchronizer/entity-resolver.mjs +12 -12
  1306. package/dist/core/provisioning/synchronizer/entity-resolver.mjs.map +1 -1
  1307. package/dist/core/provisioning/synchronizer/index.d.ts +0 -1
  1308. package/dist/core/provisioning/synchronizer/index.d.ts.map +1 -1
  1309. package/dist/core/provisioning/synchronizer/index.mjs +1 -3
  1310. package/dist/core/provisioning/synchronizer/junction-synchronizer.d.ts +2 -2
  1311. package/dist/core/provisioning/synchronizer/junction-synchronizer.d.ts.map +1 -1
  1312. package/dist/core/provisioning/synchronizer/junction-synchronizer.mjs +2 -2
  1313. package/dist/core/provisioning/synchronizer/junction-synchronizer.mjs.map +1 -1
  1314. package/dist/core/provisioning/synchronizer/permission/module.mjs +8 -8
  1315. package/dist/core/provisioning/synchronizer/permission/module.mjs.map +1 -1
  1316. package/dist/core/provisioning/synchronizer/policy/module.mjs +11 -11
  1317. package/dist/core/provisioning/synchronizer/policy/module.mjs.map +1 -1
  1318. package/dist/core/provisioning/synchronizer/realm/module.d.ts +0 -2
  1319. package/dist/core/provisioning/synchronizer/realm/module.d.ts.map +1 -1
  1320. package/dist/core/provisioning/synchronizer/realm/module.mjs +5 -15
  1321. package/dist/core/provisioning/synchronizer/realm/module.mjs.map +1 -1
  1322. package/dist/core/provisioning/synchronizer/realm/types.d.ts +0 -2
  1323. package/dist/core/provisioning/synchronizer/realm/types.d.ts.map +1 -1
  1324. package/dist/core/provisioning/synchronizer/role/module.mjs +7 -7
  1325. package/dist/core/provisioning/synchronizer/role/module.mjs.map +1 -1
  1326. package/dist/core/provisioning/synchronizer/scope/module.mjs +1 -1
  1327. package/dist/core/provisioning/synchronizer/scope/module.mjs.map +1 -1
  1328. package/dist/core/provisioning/synchronizer/user/module.mjs +13 -13
  1329. package/dist/core/provisioning/synchronizer/user/module.mjs.map +1 -1
  1330. package/dist/core/query/index.d.ts +4 -0
  1331. package/dist/core/query/index.d.ts.map +1 -0
  1332. package/dist/core/query/index.mjs +6 -0
  1333. package/dist/core/query/module.d.ts +60 -0
  1334. package/dist/core/query/module.d.ts.map +1 -0
  1335. package/dist/core/query/module.mjs +128 -0
  1336. package/dist/core/query/module.mjs.map +1 -0
  1337. package/dist/core/query/relations.d.ts +39 -0
  1338. package/dist/core/query/relations.d.ts.map +1 -0
  1339. package/dist/core/query/relations.mjs +103 -0
  1340. package/dist/core/query/relations.mjs.map +1 -0
  1341. package/dist/core/query/types.d.ts +39 -0
  1342. package/dist/core/query/types.d.ts.map +1 -0
  1343. package/dist/core/query/types.mjs +4 -0
  1344. package/dist/core/security/policy/evaluator.d.ts +1 -0
  1345. package/dist/core/security/policy/evaluator.d.ts.map +1 -1
  1346. package/dist/core/security/policy/evaluator.mjs +52 -5
  1347. package/dist/core/security/policy/evaluator.mjs.map +1 -1
  1348. package/dist/index.mjs +52 -46
  1349. package/dist/swagger.json +4524 -3291
  1350. package/dist/ui/client/.vite/ssr-manifest.json +4606 -934
  1351. package/dist/ui/client/assets/{index-CP9HCHoS.js → index-BmJ2X468.js} +21 -17
  1352. package/dist/ui/client/assets/index-DiOvW76Q.css +2 -0
  1353. package/dist/ui/client/index.html +2 -2
  1354. package/dist/ui/server/server.js +64002 -56519
  1355. package/package.json +35 -24
  1356. package/dist/adapters/database/domains/robot/entity.d.ts +0 -19
  1357. package/dist/adapters/database/domains/robot/entity.d.ts.map +0 -1
  1358. package/dist/adapters/database/domains/robot/entity.mjs +0 -112
  1359. package/dist/adapters/database/domains/robot/entity.mjs.map +0 -1
  1360. package/dist/adapters/database/domains/robot/index.d.ts +0 -3
  1361. package/dist/adapters/database/domains/robot/index.d.ts.map +0 -1
  1362. package/dist/adapters/database/domains/robot/index.mjs +0 -6
  1363. package/dist/adapters/database/domains/robot/subscriber.d.ts +0 -6
  1364. package/dist/adapters/database/domains/robot/subscriber.d.ts.map +0 -1
  1365. package/dist/adapters/database/domains/robot/subscriber.mjs +0 -42
  1366. package/dist/adapters/database/domains/robot/subscriber.mjs.map +0 -1
  1367. package/dist/adapters/database/domains/robot-permission/entity.d.ts +0 -18
  1368. package/dist/adapters/database/domains/robot-permission/entity.d.ts.map +0 -1
  1369. package/dist/adapters/database/domains/robot-permission/entity.mjs +0 -91
  1370. package/dist/adapters/database/domains/robot-permission/entity.mjs.map +0 -1
  1371. package/dist/adapters/database/domains/robot-permission/index.d.ts.map +0 -1
  1372. package/dist/adapters/database/domains/robot-permission/index.mjs +0 -6
  1373. package/dist/adapters/database/domains/robot-permission/subscriber.d.ts +0 -6
  1374. package/dist/adapters/database/domains/robot-permission/subscriber.d.ts.map +0 -1
  1375. package/dist/adapters/database/domains/robot-permission/subscriber.mjs +0 -45
  1376. package/dist/adapters/database/domains/robot-permission/subscriber.mjs.map +0 -1
  1377. package/dist/adapters/database/domains/robot-role/entity.d.ts +0 -15
  1378. package/dist/adapters/database/domains/robot-role/entity.d.ts.map +0 -1
  1379. package/dist/adapters/database/domains/robot-role/entity.mjs +0 -72
  1380. package/dist/adapters/database/domains/robot-role/entity.mjs.map +0 -1
  1381. package/dist/adapters/database/domains/robot-role/index.d.ts +0 -3
  1382. package/dist/adapters/database/domains/robot-role/index.d.ts.map +0 -1
  1383. package/dist/adapters/database/domains/robot-role/index.mjs +0 -6
  1384. package/dist/adapters/database/domains/robot-role/subscriber.d.ts +0 -6
  1385. package/dist/adapters/database/domains/robot-role/subscriber.d.ts.map +0 -1
  1386. package/dist/adapters/database/domains/robot-role/subscriber.mjs.map +0 -1
  1387. package/dist/adapters/http/adapters/oauth2/grant-types/robot-credentials.d.ts +0 -12
  1388. package/dist/adapters/http/adapters/oauth2/grant-types/robot-credentials.d.ts.map +0 -1
  1389. package/dist/adapters/http/adapters/oauth2/grant-types/robot-credentials.mjs +0 -27
  1390. package/dist/adapters/http/adapters/oauth2/grant-types/robot-credentials.mjs.map +0 -1
  1391. package/dist/adapters/http/controllers/entities/robot/index.d.ts.map +0 -1
  1392. package/dist/adapters/http/controllers/entities/robot/index.mjs +0 -5
  1393. package/dist/adapters/http/controllers/entities/robot/module.d.ts +0 -25
  1394. package/dist/adapters/http/controllers/entities/robot/module.d.ts.map +0 -1
  1395. package/dist/adapters/http/controllers/entities/robot/module.mjs +0 -180
  1396. package/dist/adapters/http/controllers/entities/robot/module.mjs.map +0 -1
  1397. package/dist/adapters/http/controllers/entities/robot-permission/index.d.ts +0 -3
  1398. package/dist/adapters/http/controllers/entities/robot-permission/index.d.ts.map +0 -1
  1399. package/dist/adapters/http/controllers/entities/robot-permission/index.mjs +0 -7
  1400. package/dist/adapters/http/controllers/entities/robot-permission/module.d.ts +0 -17
  1401. package/dist/adapters/http/controllers/entities/robot-permission/module.d.ts.map +0 -1
  1402. package/dist/adapters/http/controllers/entities/robot-permission/module.mjs.map +0 -1
  1403. package/dist/adapters/http/controllers/entities/robot-permission/utils/index.d.ts +0 -2
  1404. package/dist/adapters/http/controllers/entities/robot-permission/utils/index.d.ts.map +0 -1
  1405. package/dist/adapters/http/controllers/entities/robot-permission/utils/index.mjs +0 -5
  1406. package/dist/adapters/http/controllers/entities/robot-permission/utils/validation.d.ts +0 -6
  1407. package/dist/adapters/http/controllers/entities/robot-permission/utils/validation.d.ts.map +0 -1
  1408. package/dist/adapters/http/controllers/entities/robot-permission/utils/validation.mjs +0 -21
  1409. package/dist/adapters/http/controllers/entities/robot-permission/utils/validation.mjs.map +0 -1
  1410. package/dist/adapters/http/controllers/entities/robot-role/index.d.ts +0 -3
  1411. package/dist/adapters/http/controllers/entities/robot-role/index.d.ts.map +0 -1
  1412. package/dist/adapters/http/controllers/entities/robot-role/index.mjs +0 -7
  1413. package/dist/adapters/http/controllers/entities/robot-role/module.d.ts +0 -16
  1414. package/dist/adapters/http/controllers/entities/robot-role/module.d.ts.map +0 -1
  1415. package/dist/adapters/http/controllers/entities/robot-role/module.mjs.map +0 -1
  1416. package/dist/adapters/http/controllers/entities/robot-role/utils/index.d.ts +0 -2
  1417. package/dist/adapters/http/controllers/entities/robot-role/utils/index.d.ts.map +0 -1
  1418. package/dist/adapters/http/controllers/entities/robot-role/utils/index.mjs +0 -5
  1419. package/dist/adapters/http/controllers/entities/robot-role/utils/validation.d.ts +0 -6
  1420. package/dist/adapters/http/controllers/entities/robot-role/utils/validation.d.ts.map +0 -1
  1421. package/dist/adapters/http/controllers/entities/robot-role/utils/validation.mjs +0 -20
  1422. package/dist/adapters/http/controllers/entities/robot-role/utils/validation.mjs.map +0 -1
  1423. package/dist/app/modules/database/repositories/robot/index.d.ts.map +0 -1
  1424. package/dist/app/modules/database/repositories/robot/index.mjs +0 -5
  1425. package/dist/app/modules/database/repositories/robot/repository.d.ts +0 -31
  1426. package/dist/app/modules/database/repositories/robot/repository.d.ts.map +0 -1
  1427. package/dist/app/modules/database/repositories/robot/repository.mjs +0 -190
  1428. package/dist/app/modules/database/repositories/robot/repository.mjs.map +0 -1
  1429. package/dist/app/modules/database/repositories/robot-permission/index.d.ts.map +0 -1
  1430. package/dist/app/modules/database/repositories/robot-permission/index.mjs +0 -5
  1431. package/dist/app/modules/database/repositories/robot-permission/repository.d.ts +0 -20
  1432. package/dist/app/modules/database/repositories/robot-permission/repository.d.ts.map +0 -1
  1433. package/dist/app/modules/database/repositories/robot-permission/repository.mjs +0 -79
  1434. package/dist/app/modules/database/repositories/robot-permission/repository.mjs.map +0 -1
  1435. package/dist/app/modules/database/repositories/robot-role/index.d.ts.map +0 -1
  1436. package/dist/app/modules/database/repositories/robot-role/index.mjs +0 -5
  1437. package/dist/app/modules/database/repositories/robot-role/repository.d.ts +0 -20
  1438. package/dist/app/modules/database/repositories/robot-role/repository.d.ts.map +0 -1
  1439. package/dist/app/modules/database/repositories/robot-role/repository.mjs +0 -79
  1440. package/dist/app/modules/database/repositories/robot-role/repository.mjs.map +0 -1
  1441. package/dist/app/modules/identity/repositories/robot.d.ts +0 -13
  1442. package/dist/app/modules/identity/repositories/robot.d.ts.map +0 -1
  1443. package/dist/app/modules/identity/repositories/robot.mjs +0 -47
  1444. package/dist/app/modules/identity/repositories/robot.mjs.map +0 -1
  1445. package/dist/app/modules/oauth2/repositories/key/index.d.ts.map +0 -1
  1446. package/dist/app/modules/oauth2/repositories/key/index.mjs +0 -5
  1447. package/dist/app/modules/oauth2/repositories/key/repository.d.ts +0 -14
  1448. package/dist/app/modules/oauth2/repositories/key/repository.d.ts.map +0 -1
  1449. package/dist/app/modules/oauth2/repositories/key/repository.mjs +0 -51
  1450. package/dist/app/modules/oauth2/repositories/key/repository.mjs.map +0 -1
  1451. package/dist/core/authentication/credential/entities/robot/index.d.ts.map +0 -1
  1452. package/dist/core/authentication/credential/entities/robot/index.mjs +0 -5
  1453. package/dist/core/authentication/credential/entities/robot/module.d.ts +0 -8
  1454. package/dist/core/authentication/credential/entities/robot/module.d.ts.map +0 -1
  1455. package/dist/core/authentication/credential/entities/robot/module.mjs +0 -22
  1456. package/dist/core/authentication/credential/entities/robot/module.mjs.map +0 -1
  1457. package/dist/core/authentication/entities/robot/index.d.ts.map +0 -1
  1458. package/dist/core/authentication/entities/robot/index.mjs +0 -5
  1459. package/dist/core/authentication/entities/robot/module.d.ts +0 -11
  1460. package/dist/core/authentication/entities/robot/module.d.ts.map +0 -1
  1461. package/dist/core/authentication/entities/robot/module.mjs +0 -29
  1462. package/dist/core/authentication/entities/robot/module.mjs.map +0 -1
  1463. package/dist/core/entities/robot/index.d.ts +0 -3
  1464. package/dist/core/entities/robot/index.d.ts.map +0 -1
  1465. package/dist/core/entities/robot/index.mjs +0 -5
  1466. package/dist/core/entities/robot/service.d.ts +0 -28
  1467. package/dist/core/entities/robot/service.d.ts.map +0 -1
  1468. package/dist/core/entities/robot/service.mjs +0 -201
  1469. package/dist/core/entities/robot/service.mjs.map +0 -1
  1470. package/dist/core/entities/robot/types.d.ts +0 -24
  1471. package/dist/core/entities/robot/types.d.ts.map +0 -1
  1472. package/dist/core/entities/robot-permission/index.d.ts.map +0 -1
  1473. package/dist/core/entities/robot-permission/index.mjs +0 -5
  1474. package/dist/core/entities/robot-permission/service.d.ts +0 -25
  1475. package/dist/core/entities/robot-permission/service.d.ts.map +0 -1
  1476. package/dist/core/entities/robot-permission/service.mjs +0 -137
  1477. package/dist/core/entities/robot-permission/service.mjs.map +0 -1
  1478. package/dist/core/entities/robot-permission/types.d.ts +0 -12
  1479. package/dist/core/entities/robot-permission/types.d.ts.map +0 -1
  1480. package/dist/core/entities/robot-role/index.d.ts +0 -3
  1481. package/dist/core/entities/robot-role/index.d.ts.map +0 -1
  1482. package/dist/core/entities/robot-role/index.mjs +0 -5
  1483. package/dist/core/entities/robot-role/service.d.ts +0 -22
  1484. package/dist/core/entities/robot-role/service.d.ts.map +0 -1
  1485. package/dist/core/entities/robot-role/service.mjs +0 -90
  1486. package/dist/core/entities/robot-role/service.mjs.map +0 -1
  1487. package/dist/core/entities/robot-role/types.d.ts +0 -11
  1488. package/dist/core/entities/robot-role/types.d.ts.map +0 -1
  1489. package/dist/core/identity/entities/robot/index.d.ts +0 -2
  1490. package/dist/core/identity/entities/robot/index.d.ts.map +0 -1
  1491. package/dist/core/identity/entities/robot/types.d.ts +0 -8
  1492. package/dist/core/identity/entities/robot/types.d.ts.map +0 -1
  1493. package/dist/core/oauth2/grant-types/robot-credentials.d.ts +0 -8
  1494. package/dist/core/oauth2/grant-types/robot-credentials.d.ts.map +0 -1
  1495. package/dist/core/oauth2/grant-types/robot-credentials.mjs +0 -38
  1496. package/dist/core/oauth2/grant-types/robot-credentials.mjs.map +0 -1
  1497. package/dist/core/oauth2/key/index.d.ts +0 -2
  1498. package/dist/core/oauth2/key/index.d.ts.map +0 -1
  1499. package/dist/core/oauth2/key/types.d.ts +0 -16
  1500. package/dist/core/oauth2/key/types.d.ts.map +0 -1
  1501. package/dist/core/provisioning/entities/robot/index.d.ts +0 -3
  1502. package/dist/core/provisioning/entities/robot/index.d.ts.map +0 -1
  1503. package/dist/core/provisioning/entities/robot/index.mjs +0 -5
  1504. package/dist/core/provisioning/entities/robot/relations-validator.d.ts +0 -6
  1505. package/dist/core/provisioning/entities/robot/relations-validator.d.ts.map +0 -1
  1506. package/dist/core/provisioning/entities/robot/relations-validator.mjs +0 -20
  1507. package/dist/core/provisioning/entities/robot/relations-validator.mjs.map +0 -1
  1508. package/dist/core/provisioning/entities/robot/types.d.ts +0 -25
  1509. package/dist/core/provisioning/entities/robot/types.d.ts.map +0 -1
  1510. package/dist/core/provisioning/entities/robot/validator.d.ts +0 -6
  1511. package/dist/core/provisioning/entities/robot/validator.d.ts.map +0 -1
  1512. package/dist/core/provisioning/entities/robot/validator.mjs +0 -24
  1513. package/dist/core/provisioning/entities/robot/validator.mjs.map +0 -1
  1514. package/dist/core/provisioning/synchronizer/robot/index.d.ts.map +0 -1
  1515. package/dist/core/provisioning/synchronizer/robot/index.mjs +0 -5
  1516. package/dist/core/provisioning/synchronizer/robot/module.d.ts +0 -17
  1517. package/dist/core/provisioning/synchronizer/robot/module.d.ts.map +0 -1
  1518. package/dist/core/provisioning/synchronizer/robot/module.mjs +0 -72
  1519. package/dist/core/provisioning/synchronizer/robot/module.mjs.map +0 -1
  1520. package/dist/core/provisioning/synchronizer/robot/types.d.ts +0 -9
  1521. package/dist/core/provisioning/synchronizer/robot/types.d.ts.map +0 -1
  1522. package/dist/ui/client/assets/index-VM4JXBXw.css +0 -2
  1523. /package/dist/adapters/database/domains/{robot-permission → consent}/index.d.ts +0 -0
  1524. /package/dist/adapters/http/controllers/entities/{robot → consent}/index.d.ts +0 -0
  1525. /package/dist/{core/authentication/credential/entities/robot → adapters/http/controllers/entities/event}/index.d.ts +0 -0
  1526. /package/dist/{core/authentication/entities/robot → adapters/http/controllers/entities/key}/index.d.ts +0 -0
  1527. /package/dist/{core/entities/robot-permission → adapters/http/request}/types.mjs +0 -0
  1528. /package/dist/app/modules/database/repositories/{robot-permission → event}/index.d.ts +0 -0
  1529. /package/dist/app/modules/database/repositories/{robot-role → key}/index.d.ts +0 -0
  1530. /package/dist/app/modules/database/repositories/{robot → trust-anchor}/index.d.ts +0 -0
  1531. /package/dist/app/modules/{oauth2/repositories/key → database/repositories/user-authenticator}/index.d.ts +0 -0
  1532. /package/dist/core/{entities/robot-permission → authentication/login-throttle}/index.d.ts +0 -0
  1533. /package/dist/core/{entities/robot-role → authentication/login-throttle}/types.mjs +0 -0
  1534. /package/dist/core/{provisioning/synchronizer/robot → client-certificate}/index.d.ts +0 -0
  1535. /package/dist/core/{entities/robot → client-certificate}/types.mjs +0 -0
  1536. /package/dist/core/{identity/entities/robot → entities/event}/types.mjs +0 -0
  1537. /package/dist/core/{oauth2 → entities}/key/types.mjs +0 -0
  1538. /package/dist/core/{provisioning/entities/robot → entities/trust-anchor}/types.mjs +0 -0
  1539. /package/dist/core/{provisioning/synchronizer/robot → key}/types.mjs +0 -0
  1540. /package/dist/core/{identity/entities/robot/index.mjs → metrics/types.mjs} +0 -0
  1541. /package/dist/core/oauth2/{key/index.mjs → access-policy/types.mjs} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"module.mjs","names":["buildUserFakeEmail","pickRecord","ProvisioningEntityStrategyType","normalizeEntityProvisioningStrategy","BaseProvisioningSynchronizer","ProvisioningEntityResolver","ProvisioningJunctionSynchronizer","UserProvisioningSynchronizer","userRepository","clientRepository","permissionResolver","roleResolver","permissionJunction","roleJunction","ctx","permissionRepository","roleRepository","repository","userPermissionRepository","ownerKey","ownerRealmKey","userRoleRepository","synchronize","input","canonicalizeName","attributes","strategy","findOneBy","name","realm_id","type","ABSENT","remove","MERGE","includes","email","merge","save","REPLACE","undefined","id","create","permissions","resolveGlobal","relations","globalPermissions","resolveRealm","realmPermissions","clientPermissions","clientKeys","Object","keys","clientKey","client","entities","resolveClient","push","length","roles","globalRoles","realmRoles","clientRoles"],"sources":["../../../../../src/core/provisioning/synchronizer/user/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2026-2026.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type {\n Permission, \n Role, \n UserPermission, \n UserRole,\n} from '@authup/core-kit';\nimport { buildUserFakeEmail } from '@authup/core-kit';\nimport { pickRecord } from '@authup/kit';\nimport type {\n IClientRepository,\n IUserRepository,\n} from '../../../entities/index.ts';\nimport type { UserProvisioningEntity } from '../../entities/user/index.ts';\nimport { ProvisioningEntityStrategyType, normalizeEntityProvisioningStrategy } from '../../strategy/index.ts';\nimport { BaseProvisioningSynchronizer } from '../base.ts';\nimport { ProvisioningEntityResolver } from '../entity-resolver.ts';\nimport { ProvisioningJunctionSynchronizer } from '../junction-synchronizer.ts';\nimport type { UserProvisioningSynchronizerContext } from './types.ts';\n\nexport class UserProvisioningSynchronizer extends BaseProvisioningSynchronizer<UserProvisioningEntity> {\n protected userRepository: IUserRepository;\n\n protected clientRepository: IClientRepository;\n\n protected permissionResolver: ProvisioningEntityResolver<Permission>;\n\n protected roleResolver: ProvisioningEntityResolver<Role>;\n\n protected permissionJunction: ProvisioningJunctionSynchronizer<UserPermission>;\n\n protected roleJunction: ProvisioningJunctionSynchronizer<UserRole>;\n\n constructor(ctx: UserProvisioningSynchronizerContext) {\n super();\n\n this.userRepository = ctx.userRepository;\n this.clientRepository = ctx.clientRepository;\n\n this.permissionResolver = new ProvisioningEntityResolver(ctx.permissionRepository);\n this.roleResolver = new ProvisioningEntityResolver(ctx.roleRepository);\n\n this.permissionJunction = new ProvisioningJunctionSynchronizer({\n repository: ctx.userPermissionRepository,\n ownerKey: 'user_id',\n ownerRealmKey: 'user_realm_id',\n });\n this.roleJunction = new ProvisioningJunctionSynchronizer({\n repository: ctx.userRoleRepository,\n ownerKey: 'user_id',\n ownerRealmKey: 'user_realm_id',\n });\n }\n\n async synchronize(input: UserProvisioningEntity): Promise<UserProvisioningEntity> {\n this.canonicalizeName(input.attributes);\n\n const strategy = normalizeEntityProvisioningStrategy(input.strategy);\n\n let attributes = await this.userRepository.findOneBy({\n name: input.attributes.name,\n realm_id: input.attributes.realm_id || null,\n });\n\n if (strategy.type === ProvisioningEntityStrategyType.ABSENT) {\n if (attributes) {\n await this.userRepository.remove(attributes);\n }\n return {\n ...input,\n attributes: attributes || input.attributes, \n };\n }\n\n if (attributes) {\n switch (strategy.type) {\n case ProvisioningEntityStrategyType.MERGE:\n if (\n strategy.attributes &&\n strategy.attributes.includes('email')\n ) {\n input.attributes.email = input.attributes.email ||\n attributes.email ||\n buildUserFakeEmail(input.attributes.name || attributes.name);\n }\n\n attributes = this.userRepository.merge(\n attributes,\n strategy.attributes ?\n pickRecord(input.attributes, strategy.attributes) :\n input.attributes,\n );\n\n attributes = await this.userRepository.save(attributes);\n break;\n case ProvisioningEntityStrategyType.REPLACE:\n input.attributes.email = input.attributes.email ||\n attributes.email ||\n (input.attributes.name ? buildUserFakeEmail(input.attributes.name) : undefined);\n\n input.attributes.id = attributes.id;\n attributes = await this.userRepository.save(this.userRepository.create(input.attributes));\n break;\n }\n } else {\n if (!input.attributes.email && input.attributes.name) {\n input.attributes.email = buildUserFakeEmail(input.attributes.name);\n }\n\n attributes = await this.userRepository.save(this.userRepository.create(input.attributes));\n }\n\n // Permissions (Global, Realm & Client)\n const permissions : Permission[] = [\n ...await this.permissionResolver.resolveGlobal(\n input.relations && input.relations.globalPermissions,\n ),\n ...(attributes.realm_id ?\n await this.permissionResolver.resolveRealm(\n input.relations && input.relations.realmPermissions,\n attributes.realm_id,\n ) :\n []),\n ];\n\n if (input.relations && input.relations.clientPermissions) {\n const clientKeys = Object.keys(input.relations.clientPermissions);\n for (const clientKey of clientKeys) {\n const client = await this.clientRepository.findOneBy({\n name: clientKey,\n realm_id: attributes.realm_id,\n });\n\n if (client) {\n const entities = await this.permissionResolver.resolveClient(\n input.relations.clientPermissions[clientKey],\n attributes.realm_id,\n client.id,\n );\n permissions.push(...entities);\n }\n }\n }\n\n if (permissions.length > 0) {\n await this.permissionJunction.synchronize(\n attributes,\n permissions,\n 'permission_id',\n 'permission_realm_id',\n );\n }\n\n // Roles (Global, Realm & Client)\n const roles : Role[] = [\n ...await this.roleResolver.resolveGlobal(\n input.relations && input.relations.globalRoles,\n ),\n ...(attributes.realm_id ?\n await this.roleResolver.resolveRealm(\n input.relations && input.relations.realmRoles,\n attributes.realm_id,\n ) :\n []),\n ];\n\n if (input.relations && input.relations.clientRoles) {\n const clientKeys = Object.keys(input.relations.clientRoles);\n for (const clientKey of clientKeys) {\n const client = await this.clientRepository.findOneBy({\n name: clientKey,\n realm_id: attributes.realm_id,\n });\n\n if (client) {\n const entities = await this.roleResolver.resolveClient(\n input.relations.clientRoles[clientKey],\n attributes.realm_id,\n client.id,\n );\n roles.push(...entities);\n }\n }\n }\n\n if (roles.length > 0) {\n await this.roleJunction.synchronize(\n attributes,\n roles,\n 'role_id',\n 'role_realm_id',\n );\n }\n\n return {\n ...input,\n attributes,\n };\n }\n}\n"],"mappings":";;;;;;;;;;;;AA0BA,IAAaO,+BAAb,cAAkDH,6BAAAA;CACpCI;CAEAC;CAEAC;CAEAC;CAEAC;CAEAC;CAEV,YAAYC,KAA0C;EAClD,MAAK;EAEL,KAAKN,iBAAiBM,IAAIN;EAC1B,KAAKC,mBAAmBK,IAAIL;EAE5B,KAAKC,qBAAqB,IAAIL,2BAA2BS,IAAIC,oBAAoB;EACjF,KAAKJ,eAAe,IAAIN,2BAA2BS,IAAIE,cAAc;EAErE,KAAKJ,qBAAqB,IAAIN,iCAAiC;GAC3DW,YAAYH,IAAII;GAChBC,UAAU;GACVC,eAAe;EACnB,CAAA;EACA,KAAKP,eAAe,IAAIP,iCAAiC;GACrDW,YAAYH,IAAIO;GAChBF,UAAU;GACVC,eAAe;EACnB,CAAA;CACJ;CAEA,MAAME,YAAYC,OAAgE;EAC9E,KAAKC,iBAAiBD,MAAME,UAAU;EAEtC,MAAMC,WAAWvB,oCAAoCoB,MAAMG,QAAQ;EAEnE,IAAID,aAAa,MAAM,KAAKjB,eAAemB,UAAU;GACjDC,MAAML,MAAME,WAAWG;GACvBC,UAAUN,MAAME,WAAWI,YAAY;EAC3C,CAAA;EAEA,IAAIH,SAASI,SAAS5B,+BAA+B6B,QAAQ;GACzD,IAAIN,YACA,MAAM,KAAKjB,eAAewB,OAAOP,UAAAA;GAErC,OAAO;IACH,GAAGF;IACHE,YAAYA,cAAcF,MAAME;GACpC;EACJ;EAEA,IAAIA,YACA,QAAQC,SAASI,MAAjB;GACI,KAAK5B,+BAA+B+B;IAChC,IACIP,SAASD,cACTC,SAASD,WAAWS,SAAS,OAAA,GAE7BX,MAAME,WAAWU,QAAQZ,MAAME,WAAWU,SACtCV,WAAWU,SACXnC,mBAAmBuB,MAAME,WAAWG,QAAQH,WAAWG,IAAI;IAGnEH,aAAa,KAAKjB,eAAe4B,MAC7BX,YACAC,SAASD,aACLxB,WAAWsB,MAAME,YAAYC,SAASD,UAAU,IAChDF,MAAME,UAAU;IAGxBA,aAAa,MAAM,KAAKjB,eAAe6B,KAAKZ,UAAAA;IAC5C;GACJ,KAAKvB,+BAA+BoC;IAChCf,MAAME,WAAWU,QAAQZ,MAAME,WAAWU,SACtCV,WAAWU,UACVZ,MAAME,WAAWG,OAAO5B,mBAAmBuB,MAAME,WAAWG,IAAI,IAAIW,KAAAA;IAEzEhB,MAAME,WAAWe,KAAKf,WAAWe;IACjCf,aAAa,MAAM,KAAKjB,eAAe6B,KAAK,KAAK7B,eAAeiC,OAAOlB,MAAME,UAAU,CAAA;IACvF;EACR;OACG;GACH,IAAI,CAACF,MAAME,WAAWU,SAASZ,MAAME,WAAWG,MAC5CL,MAAME,WAAWU,QAAQnC,mBAAmBuB,MAAME,WAAWG,IAAI;GAGrEH,aAAa,MAAM,KAAKjB,eAAe6B,KAAK,KAAK7B,eAAeiC,OAAOlB,MAAME,UAAU,CAAA;EAC3F;EAGA,MAAMiB,cAA6B,CAAA,GAC5B,MAAM,KAAKhC,mBAAmBiC,cAC7BpB,MAAMqB,aAAarB,MAAMqB,UAAUC,iBAAiB,GAAA,GAEpDpB,WAAWI,WACX,MAAM,KAAKnB,mBAAmBoC,aAC1BvB,MAAMqB,aAAarB,MAAMqB,UAAUG,kBACnCtB,WAAWI,QAAQ,IAEvB,CAAA,CAAA;EAGR,IAAIN,MAAMqB,aAAarB,MAAMqB,UAAUI,mBAAmB;GACtD,MAAMC,aAAaC,OAAOC,KAAK5B,MAAMqB,UAAUI,iBAAiB;GAChE,KAAK,MAAMI,aAAaH,YAAY;IAChC,MAAMI,SAAS,MAAM,KAAK5C,iBAAiBkB,UAAU;KACjDC,MAAMwB;KACNvB,UAAUJ,WAAWI;IACzB,CAAA;IAEA,IAAIwB,QAAQ;KACR,MAAMC,WAAW,MAAM,KAAK5C,mBAAmB6C,cAC3ChC,MAAMqB,UAAUI,kBAAkBI,YAClC3B,WAAWI,UACXwB,OAAOb,EAAE;KAEbE,YAAYc,KAAI,GAAIF,QAAAA;IACxB;GACJ;EACJ;EAEA,IAAIZ,YAAYe,SAAS,GACrB,MAAM,KAAK7C,mBAAmBU,YAC1BG,YACAiB,aACA,iBACA,qBAAA;EAKR,MAAMgB,QAAiB,CAAA,GAChB,MAAM,KAAK/C,aAAagC,cACvBpB,MAAMqB,aAAarB,MAAMqB,UAAUe,WAAW,GAAA,GAE9ClC,WAAWI,WACX,MAAM,KAAKlB,aAAamC,aACpBvB,MAAMqB,aAAarB,MAAMqB,UAAUgB,YACnCnC,WAAWI,QAAQ,IAEvB,CAAA,CAAA;EAGR,IAAIN,MAAMqB,aAAarB,MAAMqB,UAAUiB,aAAa;GAChD,MAAMZ,aAAaC,OAAOC,KAAK5B,MAAMqB,UAAUiB,WAAW;GAC1D,KAAK,MAAMT,aAAaH,YAAY;IAChC,MAAMI,SAAS,MAAM,KAAK5C,iBAAiBkB,UAAU;KACjDC,MAAMwB;KACNvB,UAAUJ,WAAWI;IACzB,CAAA;IAEA,IAAIwB,QAAQ;KACR,MAAMC,WAAW,MAAM,KAAK3C,aAAa4C,cACrChC,MAAMqB,UAAUiB,YAAYT,YAC5B3B,WAAWI,UACXwB,OAAOb,EAAE;KAEbkB,MAAMF,KAAI,GAAIF,QAAAA;IAClB;GACJ;EACJ;EAEA,IAAII,MAAMD,SAAS,GACf,MAAM,KAAK5C,aAAaS,YACpBG,YACAiC,OACA,WACA,eAAA;EAIR,OAAO;GACH,GAAGnC;GACHE;EACJ;CACJ;AACJ"}
1
+ {"version":3,"file":"module.mjs","names":["buildUserFakeEmail","pickRecord","ProvisioningEntityStrategyType","normalizeEntityProvisioningStrategy","BaseProvisioningSynchronizer","ProvisioningEntityResolver","ProvisioningJunctionSynchronizer","UserProvisioningSynchronizer","userRepository","clientRepository","permissionResolver","roleResolver","permissionJunction","roleJunction","ctx","permissionRepository","roleRepository","repository","userPermissionRepository","ownerKey","ownerRealmKey","userRoleRepository","synchronize","input","canonicalizeName","attributes","strategy","findOneBy","name","realmId","type","ABSENT","remove","MERGE","includes","email","merge","save","REPLACE","undefined","id","create","permissions","resolveGlobal","relations","globalPermissions","resolveRealm","realmPermissions","clientPermissions","clientKeys","Object","keys","clientKey","client","entities","resolveClient","push","length","roles","globalRoles","realmRoles","clientRoles"],"sources":["../../../../../src/core/provisioning/synchronizer/user/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2026-2026.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type {\n Permission, \n Role, \n UserPermission, \n UserRole,\n} from '@authup/core-kit';\nimport { buildUserFakeEmail } from '@authup/core-kit';\nimport { pickRecord } from '@authup/kit';\nimport type {\n IClientRepository,\n IUserRepository,\n} from '../../../entities/index.ts';\nimport type { UserProvisioningEntity } from '../../entities/user/index.ts';\nimport { ProvisioningEntityStrategyType, normalizeEntityProvisioningStrategy } from '../../strategy/index.ts';\nimport { BaseProvisioningSynchronizer } from '../base.ts';\nimport { ProvisioningEntityResolver } from '../entity-resolver.ts';\nimport { ProvisioningJunctionSynchronizer } from '../junction-synchronizer.ts';\nimport type { UserProvisioningSynchronizerContext } from './types.ts';\n\nexport class UserProvisioningSynchronizer extends BaseProvisioningSynchronizer<UserProvisioningEntity> {\n protected userRepository: IUserRepository;\n\n protected clientRepository: IClientRepository;\n\n protected permissionResolver: ProvisioningEntityResolver<Permission>;\n\n protected roleResolver: ProvisioningEntityResolver<Role>;\n\n protected permissionJunction: ProvisioningJunctionSynchronizer<UserPermission>;\n\n protected roleJunction: ProvisioningJunctionSynchronizer<UserRole>;\n\n constructor(ctx: UserProvisioningSynchronizerContext) {\n super();\n\n this.userRepository = ctx.userRepository;\n this.clientRepository = ctx.clientRepository;\n\n this.permissionResolver = new ProvisioningEntityResolver(ctx.permissionRepository);\n this.roleResolver = new ProvisioningEntityResolver(ctx.roleRepository);\n\n this.permissionJunction = new ProvisioningJunctionSynchronizer({\n repository: ctx.userPermissionRepository,\n ownerKey: 'userId',\n ownerRealmKey: 'userRealmId',\n });\n this.roleJunction = new ProvisioningJunctionSynchronizer({\n repository: ctx.userRoleRepository,\n ownerKey: 'userId',\n ownerRealmKey: 'userRealmId',\n });\n }\n\n async synchronize(input: UserProvisioningEntity): Promise<UserProvisioningEntity> {\n this.canonicalizeName(input.attributes);\n\n const strategy = normalizeEntityProvisioningStrategy(input.strategy);\n\n let attributes = await this.userRepository.findOneBy({\n name: input.attributes.name,\n realmId: input.attributes.realmId || null,\n });\n\n if (strategy.type === ProvisioningEntityStrategyType.ABSENT) {\n if (attributes) {\n await this.userRepository.remove(attributes);\n }\n return {\n ...input,\n attributes: attributes || input.attributes, \n };\n }\n\n if (attributes) {\n switch (strategy.type) {\n case ProvisioningEntityStrategyType.MERGE:\n if (\n strategy.attributes &&\n strategy.attributes.includes('email')\n ) {\n input.attributes.email = input.attributes.email ||\n attributes.email ||\n buildUserFakeEmail(input.attributes.name || attributes.name);\n }\n\n attributes = this.userRepository.merge(\n attributes,\n strategy.attributes ?\n pickRecord(input.attributes, strategy.attributes) :\n input.attributes,\n );\n\n attributes = await this.userRepository.save(attributes);\n break;\n case ProvisioningEntityStrategyType.REPLACE:\n input.attributes.email = input.attributes.email ||\n attributes.email ||\n (input.attributes.name ? buildUserFakeEmail(input.attributes.name) : undefined);\n\n input.attributes.id = attributes.id;\n attributes = await this.userRepository.save(this.userRepository.create(input.attributes));\n break;\n }\n } else {\n if (!input.attributes.email && input.attributes.name) {\n input.attributes.email = buildUserFakeEmail(input.attributes.name);\n }\n\n attributes = await this.userRepository.save(this.userRepository.create(input.attributes));\n }\n\n // Permissions (Global, Realm & Client)\n const permissions : Permission[] = [\n ...await this.permissionResolver.resolveGlobal(\n input.relations && input.relations.globalPermissions,\n ),\n ...(attributes.realmId ?\n await this.permissionResolver.resolveRealm(\n input.relations && input.relations.realmPermissions,\n attributes.realmId,\n ) :\n []),\n ];\n\n if (input.relations && input.relations.clientPermissions) {\n const clientKeys = Object.keys(input.relations.clientPermissions);\n for (const clientKey of clientKeys) {\n const client = await this.clientRepository.findOneBy({\n name: clientKey,\n realmId: attributes.realmId,\n });\n\n if (client) {\n const entities = await this.permissionResolver.resolveClient(\n input.relations.clientPermissions[clientKey],\n attributes.realmId,\n client.id,\n );\n permissions.push(...entities);\n }\n }\n }\n\n if (permissions.length > 0) {\n await this.permissionJunction.synchronize(\n attributes,\n permissions,\n 'permissionId',\n 'permissionRealmId',\n );\n }\n\n // Roles (Global, Realm & Client)\n const roles : Role[] = [\n ...await this.roleResolver.resolveGlobal(\n input.relations && input.relations.globalRoles,\n ),\n ...(attributes.realmId ?\n await this.roleResolver.resolveRealm(\n input.relations && input.relations.realmRoles,\n attributes.realmId,\n ) :\n []),\n ];\n\n if (input.relations && input.relations.clientRoles) {\n const clientKeys = Object.keys(input.relations.clientRoles);\n for (const clientKey of clientKeys) {\n const client = await this.clientRepository.findOneBy({\n name: clientKey,\n realmId: attributes.realmId,\n });\n\n if (client) {\n const entities = await this.roleResolver.resolveClient(\n input.relations.clientRoles[clientKey],\n attributes.realmId,\n client.id,\n );\n roles.push(...entities);\n }\n }\n }\n\n if (roles.length > 0) {\n await this.roleJunction.synchronize(\n attributes,\n roles,\n 'roleId',\n 'roleRealmId',\n );\n }\n\n return {\n ...input,\n attributes,\n };\n }\n}\n"],"mappings":";;;;;;;;;;;;AA0BA,IAAaO,+BAAb,cAAkDH,6BAAAA;CACpCI;CAEAC;CAEAC;CAEAC;CAEAC;CAEAC;CAEV,YAAYC,KAA0C;EAClD,MAAK;EAEL,KAAKN,iBAAiBM,IAAIN;EAC1B,KAAKC,mBAAmBK,IAAIL;EAE5B,KAAKC,qBAAqB,IAAIL,2BAA2BS,IAAIC,oBAAoB;EACjF,KAAKJ,eAAe,IAAIN,2BAA2BS,IAAIE,cAAc;EAErE,KAAKJ,qBAAqB,IAAIN,iCAAiC;GAC3DW,YAAYH,IAAII;GAChBC,UAAU;GACVC,eAAe;EACnB,CAAA;EACA,KAAKP,eAAe,IAAIP,iCAAiC;GACrDW,YAAYH,IAAIO;GAChBF,UAAU;GACVC,eAAe;EACnB,CAAA;CACJ;CAEA,MAAME,YAAYC,OAAgE;EAC9E,KAAKC,iBAAiBD,MAAME,UAAU;EAEtC,MAAMC,WAAWvB,oCAAoCoB,MAAMG,QAAQ;EAEnE,IAAID,aAAa,MAAM,KAAKjB,eAAemB,UAAU;GACjDC,MAAML,MAAME,WAAWG;GACvBC,SAASN,MAAME,WAAWI,WAAW;EACzC,CAAA;EAEA,IAAIH,SAASI,SAAS5B,+BAA+B6B,QAAQ;GACzD,IAAIN,YACA,MAAM,KAAKjB,eAAewB,OAAOP,UAAAA;GAErC,OAAO;IACH,GAAGF;IACHE,YAAYA,cAAcF,MAAME;GACpC;EACJ;EAEA,IAAIA,YACA,QAAQC,SAASI,MAAjB;GACI,KAAK5B,+BAA+B+B;IAChC,IACIP,SAASD,cACTC,SAASD,WAAWS,SAAS,OAAA,GAE7BX,MAAME,WAAWU,QAAQZ,MAAME,WAAWU,SACtCV,WAAWU,SACXnC,mBAAmBuB,MAAME,WAAWG,QAAQH,WAAWG,IAAI;IAGnEH,aAAa,KAAKjB,eAAe4B,MAC7BX,YACAC,SAASD,aACLxB,WAAWsB,MAAME,YAAYC,SAASD,UAAU,IAChDF,MAAME,UAAU;IAGxBA,aAAa,MAAM,KAAKjB,eAAe6B,KAAKZ,UAAAA;IAC5C;GACJ,KAAKvB,+BAA+BoC;IAChCf,MAAME,WAAWU,QAAQZ,MAAME,WAAWU,SACtCV,WAAWU,UACVZ,MAAME,WAAWG,OAAO5B,mBAAmBuB,MAAME,WAAWG,IAAI,IAAIW,KAAAA;IAEzEhB,MAAME,WAAWe,KAAKf,WAAWe;IACjCf,aAAa,MAAM,KAAKjB,eAAe6B,KAAK,KAAK7B,eAAeiC,OAAOlB,MAAME,UAAU,CAAA;IACvF;EACR;OACG;GACH,IAAI,CAACF,MAAME,WAAWU,SAASZ,MAAME,WAAWG,MAC5CL,MAAME,WAAWU,QAAQnC,mBAAmBuB,MAAME,WAAWG,IAAI;GAGrEH,aAAa,MAAM,KAAKjB,eAAe6B,KAAK,KAAK7B,eAAeiC,OAAOlB,MAAME,UAAU,CAAA;EAC3F;EAGA,MAAMiB,cAA6B,CAAA,GAC5B,MAAM,KAAKhC,mBAAmBiC,cAC7BpB,MAAMqB,aAAarB,MAAMqB,UAAUC,iBAAiB,GAAA,GAEpDpB,WAAWI,UACX,MAAM,KAAKnB,mBAAmBoC,aAC1BvB,MAAMqB,aAAarB,MAAMqB,UAAUG,kBACnCtB,WAAWI,OAAO,IAEtB,CAAA,CAAA;EAGR,IAAIN,MAAMqB,aAAarB,MAAMqB,UAAUI,mBAAmB;GACtD,MAAMC,aAAaC,OAAOC,KAAK5B,MAAMqB,UAAUI,iBAAiB;GAChE,KAAK,MAAMI,aAAaH,YAAY;IAChC,MAAMI,SAAS,MAAM,KAAK5C,iBAAiBkB,UAAU;KACjDC,MAAMwB;KACNvB,SAASJ,WAAWI;IACxB,CAAA;IAEA,IAAIwB,QAAQ;KACR,MAAMC,WAAW,MAAM,KAAK5C,mBAAmB6C,cAC3ChC,MAAMqB,UAAUI,kBAAkBI,YAClC3B,WAAWI,SACXwB,OAAOb,EAAE;KAEbE,YAAYc,KAAI,GAAIF,QAAAA;IACxB;GACJ;EACJ;EAEA,IAAIZ,YAAYe,SAAS,GACrB,MAAM,KAAK7C,mBAAmBU,YAC1BG,YACAiB,aACA,gBACA,mBAAA;EAKR,MAAMgB,QAAiB,CAAA,GAChB,MAAM,KAAK/C,aAAagC,cACvBpB,MAAMqB,aAAarB,MAAMqB,UAAUe,WAAW,GAAA,GAE9ClC,WAAWI,UACX,MAAM,KAAKlB,aAAamC,aACpBvB,MAAMqB,aAAarB,MAAMqB,UAAUgB,YACnCnC,WAAWI,OAAO,IAEtB,CAAA,CAAA;EAGR,IAAIN,MAAMqB,aAAarB,MAAMqB,UAAUiB,aAAa;GAChD,MAAMZ,aAAaC,OAAOC,KAAK5B,MAAMqB,UAAUiB,WAAW;GAC1D,KAAK,MAAMT,aAAaH,YAAY;IAChC,MAAMI,SAAS,MAAM,KAAK5C,iBAAiBkB,UAAU;KACjDC,MAAMwB;KACNvB,SAASJ,WAAWI;IACxB,CAAA;IAEA,IAAIwB,QAAQ;KACR,MAAMC,WAAW,MAAM,KAAK3C,aAAa4C,cACrChC,MAAMqB,UAAUiB,YAAYT,YAC5B3B,WAAWI,SACXwB,OAAOb,EAAE;KAEbkB,MAAMF,KAAI,GAAIF,QAAAA;IAClB;GACJ;EACJ;EAEA,IAAII,MAAMD,SAAS,GACf,MAAM,KAAK5C,aAAaS,YACpBG,YACAiC,OACA,UACA,aAAA;EAIR,OAAO;GACH,GAAGnC;GACHE;EACJ;CACJ;AACJ"}
@@ -0,0 +1,4 @@
1
+ export * from './module.ts';
2
+ export * from './relations.ts';
3
+ export * from './types.ts';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/query/index.ts"],"names":[],"mappings":"AAOA,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,6 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
4
+ import { createRelationsReadGate } from "./relations.mjs";
5
+ import { appendQueryConditions, decodeQuery, queryCodec, schemaRegistry } from "./module.mjs";
6
+ export { appendQueryConditions, createRelationsReadGate, decodeQuery, queryCodec, schemaRegistry };
@@ -0,0 +1,60 @@
1
+ import type { ICondition, IQuery, ObjectLiteral } from '@rapiq/core';
2
+ import { Query, SchemaRegistry } from '@rapiq/core';
3
+ import type { DecodeQueryOptions } from './types.ts';
4
+ /**
5
+ * Registry of every entity schema — the server-side allow-list layer.
6
+ * Relation traversal (e.g. a `realm.name` filter) resolves through the
7
+ * `schemaMapping` of the owning schema into the related schema's own
8
+ * allow-lists.
9
+ *
10
+ * The registry deliberately lives in core (persistence-agnostic): the
11
+ * schemas are security policy over the domain types, and services
12
+ * consume them to decode wire queries into the rapiq IR. A repository
13
+ * layer MAY extend the registry with additional, storage-derived
14
+ * schemas (e.g. `@rapiq/typeorm`'s `defineSchemaRegistryWithDataSource`
15
+ * with the `registry` option — already-registered schemas take
16
+ * precedence), but the allow-lists themselves stay explicit and are
17
+ * never auto-derived from entity metadata.
18
+ */
19
+ export declare const schemaRegistry: SchemaRegistry<any>;
20
+ /**
21
+ * URL transport codec bound to the schema registry: decodes both the
22
+ * v2 expression dialect (stamped or detected) and legacy v1 bracket
23
+ * payloads, so pre-v2 clients keep working.
24
+ */
25
+ export declare const queryCodec: import("@rapiq/codec-url").URLCodec;
26
+ /**
27
+ * Decode a raw wire query (routup `useRequestQuery` output or a raw
28
+ * query string) against a registered schema into the rapiq IR. The
29
+ * schema's allow-lists, defaults and pagination bounds are applied
30
+ * here — downstream consumers (repository adapters) only execute the
31
+ * returned query.
32
+ *
33
+ * Async because the schema validate hooks are: the relations read
34
+ * gate (`createRelationsReadGate`) awaits the actor's permission
35
+ * pre-gate per include, and rapiq refuses async validators on the
36
+ * synchronous decode path. Pass the acting identity via
37
+ * `options.actor` on every request-driven decode (authenticated or
38
+ * anonymous — the HTTP adapter always builds one); a decode without
39
+ * an actor is a system call and runs unrestricted.
40
+ */
41
+ export declare function decodeQuery<RECORD extends ObjectLiteral = ObjectLiteral>(input: unknown, options: DecodeQueryOptions<RECORD>): Promise<Query>;
42
+ /**
43
+ * Append server-derived conditions (a route realm, an owner scope, ...)
44
+ * onto a decoded query by AND-wrapping its filter tree. The wrap makes
45
+ * the appended scope non-displaceable: unlike a filters merge (per-field
46
+ * replace, flat-root-AND restriction), a client-sent condition on the
47
+ * same field intersects with the scope instead of replacing it, and
48
+ * compound client trees (`or(...)`) are preserved as-is. Same guarantee
49
+ * class as a mandatory `andWhere` at the repository — expressed once in
50
+ * the IR. Appended conditions do not pass through `decodeQuery`, so the
51
+ * schema allow-lists do not constrain them (server-derived context).
52
+ *
53
+ * Immutable: returns a new `Query` whose filters node is the
54
+ * AND-wrapped successor (`IFilters.and`); every other parameter node is
55
+ * carried over **by reference**, so the input query stays untouched and
56
+ * nothing is copied. The node enumeration mirrors rapiq's
57
+ * `QueryContext` — keep it in sync when the IR gains a parameter.
58
+ */
59
+ export declare function appendQueryConditions(query: IQuery, ...conditions: ICondition[]): Query;
60
+ //# sourceMappingURL=module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../src/core/query/module.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACR,UAAU,EACV,MAAM,EACN,aAAa,EAEhB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,KAAK,EAAE,cAAc,EAAY,MAAM,aAAa,CAAC;AAyB9D,OAAO,KAAK,EAAE,kBAAkB,EAAsB,MAAM,YAAY,CAAC;AAEzE;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,cAAc,qBAAuB,CAAC;AAiCnD;;;;GAIG;AACH,eAAO,MAAM,UAAU,qCAAiC,CAAC;AAEzD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,WAAW,CAAC,MAAM,SAAS,aAAa,GAAG,aAAa,EAC1E,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,kBAAkB,CAAC,MAAM,CAAC,GACnC,OAAO,CAAC,KAAK,CAAC,CAYjB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,UAAU,EAAE,GAAI,KAAK,CAQxF"}
@@ -0,0 +1,128 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
4
+ import { clientSchema } from "../entities/client/schema.mjs";
5
+ import { clientPermissionSchema } from "../entities/client-permission/schema.mjs";
6
+ import { clientRoleSchema } from "../entities/client-role/schema.mjs";
7
+ import { clientScopeSchema } from "../entities/client-scope/schema.mjs";
8
+ import { consentSchema } from "../entities/consent/schema.mjs";
9
+ import { eventSchema } from "../entities/event/schema.mjs";
10
+ import { identityProviderSchema } from "../entities/identity-provider/schema.mjs";
11
+ import { identityProviderRoleMappingSchema } from "../entities/identity-provider-role-mapping/schema.mjs";
12
+ import { keySchema } from "../entities/key/schema.mjs";
13
+ import { permissionSchema } from "../entities/permission/schema.mjs";
14
+ import { permissionPolicySchema } from "../entities/permission-policy/schema.mjs";
15
+ import { policySchema } from "../entities/policy/schema.mjs";
16
+ import { realmSchema } from "../entities/realm/schema.mjs";
17
+ import { roleSchema } from "../entities/role/schema.mjs";
18
+ import { roleAttributeSchema } from "../entities/role-attribute/schema.mjs";
19
+ import { rolePermissionSchema } from "../entities/role-permission/schema.mjs";
20
+ import { scopeSchema } from "../entities/scope/schema.mjs";
21
+ import { sessionSchema } from "../entities/session/schema.mjs";
22
+ import { trustAnchorSchema } from "../entities/trust-anchor/schema.mjs";
23
+ import { userSchema } from "../entities/user/schema.mjs";
24
+ import { userAttributeSchema } from "../entities/user-attribute/schema.mjs";
25
+ import { userAuthenticatorSchema } from "../entities/user-authenticator/schema.mjs";
26
+ import { userPermissionSchema } from "../entities/user-permission/schema.mjs";
27
+ import { userRoleSchema } from "../entities/user-role/schema.mjs";
28
+ import { Query, SchemaRegistry, isObject } from "@rapiq/core";
29
+ import { createURLCodec } from "@rapiq/codec-url";
30
+ //#region src/core/query/module.ts
31
+ /**
32
+ * Registry of every entity schema — the server-side allow-list layer.
33
+ * Relation traversal (e.g. a `realm.name` filter) resolves through the
34
+ * `schemaMapping` of the owning schema into the related schema's own
35
+ * allow-lists.
36
+ *
37
+ * The registry deliberately lives in core (persistence-agnostic): the
38
+ * schemas are security policy over the domain types, and services
39
+ * consume them to decode wire queries into the rapiq IR. A repository
40
+ * layer MAY extend the registry with additional, storage-derived
41
+ * schemas (e.g. `@rapiq/typeorm`'s `defineSchemaRegistryWithDataSource`
42
+ * with the `registry` option — already-registered schemas take
43
+ * precedence), but the allow-lists themselves stay explicit and are
44
+ * never auto-derived from entity metadata.
45
+ */ const schemaRegistry = new SchemaRegistry();
46
+ const schemas = [
47
+ clientSchema,
48
+ clientPermissionSchema,
49
+ clientRoleSchema,
50
+ clientScopeSchema,
51
+ consentSchema,
52
+ eventSchema,
53
+ identityProviderSchema,
54
+ identityProviderRoleMappingSchema,
55
+ keySchema,
56
+ permissionSchema,
57
+ permissionPolicySchema,
58
+ policySchema,
59
+ realmSchema,
60
+ roleSchema,
61
+ roleAttributeSchema,
62
+ rolePermissionSchema,
63
+ scopeSchema,
64
+ sessionSchema,
65
+ trustAnchorSchema,
66
+ userSchema,
67
+ userAttributeSchema,
68
+ userAuthenticatorSchema,
69
+ userPermissionSchema,
70
+ userRoleSchema
71
+ ];
72
+ for (const schema of schemas) schemaRegistry.add(schema);
73
+ /**
74
+ * URL transport codec bound to the schema registry: decodes both the
75
+ * v2 expression dialect (stamped or detected) and legacy v1 bracket
76
+ * payloads, so pre-v2 clients keep working.
77
+ */ const queryCodec = createURLCodec(schemaRegistry);
78
+ /**
79
+ * Decode a raw wire query (routup `useRequestQuery` output or a raw
80
+ * query string) against a registered schema into the rapiq IR. The
81
+ * schema's allow-lists, defaults and pagination bounds are applied
82
+ * here — downstream consumers (repository adapters) only execute the
83
+ * returned query.
84
+ *
85
+ * Async because the schema validate hooks are: the relations read
86
+ * gate (`createRelationsReadGate`) awaits the actor's permission
87
+ * pre-gate per include, and rapiq refuses async validators on the
88
+ * synchronous decode path. Pass the acting identity via
89
+ * `options.actor` on every request-driven decode (authenticated or
90
+ * anonymous — the HTTP adapter always builds one); a decode without
91
+ * an actor is a system call and runs unrestricted.
92
+ */ async function decodeQuery(input, options) {
93
+ const normalized = isObject(input) || typeof input === "string" ? input : {};
94
+ return await queryCodec.decodeAsync(normalized, {
95
+ schema: options.schema,
96
+ parameters: options.parameters,
97
+ context: { actor: options.actor }
98
+ }) ?? new Query({});
99
+ }
100
+ /**
101
+ * Append server-derived conditions (a route realm, an owner scope, ...)
102
+ * onto a decoded query by AND-wrapping its filter tree. The wrap makes
103
+ * the appended scope non-displaceable: unlike a filters merge (per-field
104
+ * replace, flat-root-AND restriction), a client-sent condition on the
105
+ * same field intersects with the scope instead of replacing it, and
106
+ * compound client trees (`or(...)`) are preserved as-is. Same guarantee
107
+ * class as a mandatory `andWhere` at the repository — expressed once in
108
+ * the IR. Appended conditions do not pass through `decodeQuery`, so the
109
+ * schema allow-lists do not constrain them (server-derived context).
110
+ *
111
+ * Immutable: returns a new `Query` whose filters node is the
112
+ * AND-wrapped successor (`IFilters.and`); every other parameter node is
113
+ * carried over **by reference**, so the input query stays untouched and
114
+ * nothing is copied. The node enumeration mirrors rapiq's
115
+ * `QueryContext` — keep it in sync when the IR gains a parameter.
116
+ */ function appendQueryConditions(query, ...conditions) {
117
+ return new Query({
118
+ fields: query.fields,
119
+ filters: query.filters.and(...conditions),
120
+ relations: query.relations,
121
+ pagination: query.pagination,
122
+ sorts: query.sorts
123
+ });
124
+ }
125
+ //#endregion
126
+ export { appendQueryConditions, decodeQuery, queryCodec, schemaRegistry };
127
+
128
+ //# sourceMappingURL=module.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.mjs","names":["createURLCodec","Query","SchemaRegistry","isObject","clientSchema","clientPermissionSchema","clientRoleSchema","clientScopeSchema","consentSchema","eventSchema","identityProviderSchema","identityProviderRoleMappingSchema","keySchema","permissionSchema","permissionPolicySchema","policySchema","realmSchema","roleSchema","roleAttributeSchema","rolePermissionSchema","scopeSchema","sessionSchema","trustAnchorSchema","userSchema","userAttributeSchema","userAuthenticatorSchema","userPermissionSchema","userRoleSchema","schemaRegistry","schemas","schema","add","queryCodec","decodeQuery","input","options","normalized","parsed","decodeAsync","parameters","context","actor","appendQueryConditions","query","conditions","fields","filters","and","relations","pagination","sorts"],"sources":["../../../src/core/query/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2026.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { createURLCodec } from '@rapiq/codec-url';\nimport type {\n ICondition, \n IQuery, \n ObjectLiteral, \n Schema,\n} from '@rapiq/core';\nimport { Query, SchemaRegistry, isObject } from '@rapiq/core';\nimport { clientSchema } from '../entities/client/schema.ts';\nimport { clientPermissionSchema } from '../entities/client-permission/schema.ts';\nimport { clientRoleSchema } from '../entities/client-role/schema.ts';\nimport { clientScopeSchema } from '../entities/client-scope/schema.ts';\nimport { consentSchema } from '../entities/consent/schema.ts';\nimport { eventSchema } from '../entities/event/schema.ts';\nimport { identityProviderSchema } from '../entities/identity-provider/schema.ts';\nimport { identityProviderRoleMappingSchema } from '../entities/identity-provider-role-mapping/schema.ts';\nimport { keySchema } from '../entities/key/schema.ts';\nimport { permissionSchema } from '../entities/permission/schema.ts';\nimport { permissionPolicySchema } from '../entities/permission-policy/schema.ts';\nimport { policySchema } from '../entities/policy/schema.ts';\nimport { realmSchema } from '../entities/realm/schema.ts';\nimport { roleSchema } from '../entities/role/schema.ts';\nimport { roleAttributeSchema } from '../entities/role-attribute/schema.ts';\nimport { rolePermissionSchema } from '../entities/role-permission/schema.ts';\nimport { scopeSchema } from '../entities/scope/schema.ts';\nimport { sessionSchema } from '../entities/session/schema.ts';\nimport { trustAnchorSchema } from '../entities/trust-anchor/schema.ts';\nimport { userSchema } from '../entities/user/schema.ts';\nimport { userAttributeSchema } from '../entities/user-attribute/schema.ts';\nimport { userAuthenticatorSchema } from '../entities/user-authenticator/schema.ts';\nimport { userPermissionSchema } from '../entities/user-permission/schema.ts';\nimport { userRoleSchema } from '../entities/user-role/schema.ts';\nimport type { DecodeQueryOptions, QueryDecodeContext } from './types.ts';\n\n/**\n * Registry of every entity schema — the server-side allow-list layer.\n * Relation traversal (e.g. a `realm.name` filter) resolves through the\n * `schemaMapping` of the owning schema into the related schema's own\n * allow-lists.\n *\n * The registry deliberately lives in core (persistence-agnostic): the\n * schemas are security policy over the domain types, and services\n * consume them to decode wire queries into the rapiq IR. A repository\n * layer MAY extend the registry with additional, storage-derived\n * schemas (e.g. `@rapiq/typeorm`'s `defineSchemaRegistryWithDataSource`\n * with the `registry` option — already-registered schemas take\n * precedence), but the allow-lists themselves stay explicit and are\n * never auto-derived from entity metadata.\n */\nexport const schemaRegistry = new SchemaRegistry();\n\nconst schemas : Schema<any>[] = [\n clientSchema,\n clientPermissionSchema,\n clientRoleSchema,\n clientScopeSchema,\n consentSchema,\n eventSchema,\n identityProviderSchema,\n identityProviderRoleMappingSchema,\n keySchema,\n permissionSchema,\n permissionPolicySchema,\n policySchema,\n realmSchema,\n roleSchema,\n roleAttributeSchema,\n rolePermissionSchema,\n scopeSchema,\n sessionSchema,\n trustAnchorSchema,\n userSchema,\n userAttributeSchema,\n userAuthenticatorSchema,\n userPermissionSchema,\n userRoleSchema,\n];\n\nfor (const schema of schemas) {\n schemaRegistry.add(schema);\n}\n\n/**\n * URL transport codec bound to the schema registry: decodes both the\n * v2 expression dialect (stamped or detected) and legacy v1 bracket\n * payloads, so pre-v2 clients keep working.\n */\nexport const queryCodec = createURLCodec(schemaRegistry);\n\n/**\n * Decode a raw wire query (routup `useRequestQuery` output or a raw\n * query string) against a registered schema into the rapiq IR. The\n * schema's allow-lists, defaults and pagination bounds are applied\n * here — downstream consumers (repository adapters) only execute the\n * returned query.\n *\n * Async because the schema validate hooks are: the relations read\n * gate (`createRelationsReadGate`) awaits the actor's permission\n * pre-gate per include, and rapiq refuses async validators on the\n * synchronous decode path. Pass the acting identity via\n * `options.actor` on every request-driven decode (authenticated or\n * anonymous — the HTTP adapter always builds one); a decode without\n * an actor is a system call and runs unrestricted.\n */\nexport async function decodeQuery<RECORD extends ObjectLiteral = ObjectLiteral>(\n input: unknown,\n options: DecodeQueryOptions<RECORD>,\n) : Promise<Query> {\n const normalized = isObject(input) || typeof input === 'string' ? input : {};\n\n const parsed = await queryCodec.decodeAsync(normalized, {\n // Schema<RECORD> is invariant; the codec's non-generic options\n // accept Schema<ObjectLiteral>, so collapse the variance here.\n schema: options.schema as Schema<any> | string,\n parameters: options.parameters,\n context: { actor: options.actor } satisfies QueryDecodeContext,\n });\n\n return parsed ?? new Query({});\n}\n\n/**\n * Append server-derived conditions (a route realm, an owner scope, ...)\n * onto a decoded query by AND-wrapping its filter tree. The wrap makes\n * the appended scope non-displaceable: unlike a filters merge (per-field\n * replace, flat-root-AND restriction), a client-sent condition on the\n * same field intersects with the scope instead of replacing it, and\n * compound client trees (`or(...)`) are preserved as-is. Same guarantee\n * class as a mandatory `andWhere` at the repository — expressed once in\n * the IR. Appended conditions do not pass through `decodeQuery`, so the\n * schema allow-lists do not constrain them (server-derived context).\n *\n * Immutable: returns a new `Query` whose filters node is the\n * AND-wrapped successor (`IFilters.and`); every other parameter node is\n * carried over **by reference**, so the input query stays untouched and\n * nothing is copied. The node enumeration mirrors rapiq's\n * `QueryContext` — keep it in sync when the IR gains a parameter.\n */\nexport function appendQueryConditions(query: IQuery, ...conditions: ICondition[]) : Query {\n return new Query({\n fields: query.fields,\n filters: query.filters.and(...conditions),\n relations: query.relations,\n pagination: query.pagination,\n sorts: query.sorts,\n });\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDA,MAAa4B,iBAAiB,IAAI1B,eAAAA;AAElC,MAAM2B,UAA0B;CAC5BzB;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;CACAC;;AAGJ,KAAK,MAAMG,UAAUD,SACjBD,eAAeG,IAAID,MAAAA;;;;;GAQvB,MAAaE,aAAahC,eAAe4B,cAAAA;;;;;;;;;;;;;;;GAiBzC,eAAsBK,YAClBC,OACAC,SAAmC;CAEnC,MAAMC,aAAajC,SAAS+B,KAAAA,KAAU,OAAOA,UAAU,WAAWA,QAAQ,CAAC;CAU3E,OAAOG,MARcL,WAAWM,YAAYF,YAAY;EAGpDN,QAAQK,QAAQL;EAChBS,YAAYJ,QAAQI;EACpBC,SAAS,EAAEC,OAAON,QAAQM,MAAM;CACpC,CAAA,KAEiB,IAAIxC,MAAM,CAAC,CAAA;AAChC;;;;;;;;;;;;;;;;;GAmBA,SAAgByC,sBAAsBC,OAAe,GAAGC,YAAwB;CAC5E,OAAO,IAAI3C,MAAM;EACb4C,QAAQF,MAAME;EACdC,SAASH,MAAMG,QAAQC,IAAG,GAAIH,UAAAA;EAC9BI,WAAWL,MAAMK;EACjBC,YAAYN,MAAMM;EAClBC,OAAOP,MAAMO;CACjB,CAAA;AACJ"}
@@ -0,0 +1,39 @@
1
+ import type { KeyValidator } from '@rapiq/core';
2
+ import { EntityType } from '@authup/core-kit';
3
+ import type { QueryDecodeContext } from './types.ts';
4
+ /**
5
+ * Build a rapiq `relations.validate` hook gating each include on the
6
+ * TARGET entity type's read permission (issue #3295): the actor must
7
+ * pass the derived pre-gate (`preEvaluateOneOf`, #3290) for the
8
+ * relation's mapped entity type — row data is unknown at decode time,
9
+ * so only a settled-false (the actor can never read that entity type)
10
+ * denies. A denial STRIPS the relation silently — the explicit
11
+ * `include=`, and (since rapiq beta.7, tada5hi/rapiq#815) every dotted
12
+ * `filter`/`sort`/`field` key that traverses the denied relation,
13
+ * whether or not it was explicitly included. rapiq records one
14
+ * authorization obligation per distinct relation reached by any
15
+ * parameter, evaluates this hook once for it, and prunes the dependent
16
+ * keys — the same fail-soft flavor as the allow-lists, so a scoped
17
+ * reader degrades to the un-joined / un-filtered row shape instead of
18
+ * a 403.
19
+ *
20
+ * `mapping` is the schema's own relation → entity-type `schemaMapping`;
21
+ * rapiq invokes the hook per include segment against the schema
22
+ * governing it, so nested paths (`include=user.realm`) are gated hop
23
+ * by hop by each governing schema's own hook. Unmapped relations and
24
+ * ungated targets neutral-pass.
25
+ *
26
+ * Caller classes: a SYSTEM call (no actor in the decode context) is
27
+ * unrestricted — the gate neutral-passes. A REQUEST call always
28
+ * carries an actor (`buildActorContext` supplies one even for an
29
+ * anonymous request), so restriction attaches at the request
30
+ * boundary: an authenticated actor is gated by its grants, an
31
+ * anonymous actor holds none and every gated include strips. A gate
32
+ * evaluation failure fails closed (strip).
33
+ *
34
+ * NOTE: schemas import this file DIRECTLY (never the `core/query`
35
+ * barrel) — the barrel reaches `module.ts`, which imports every
36
+ * schema; importing it from a schema would create a TDZ cycle.
37
+ */
38
+ export declare function createRelationsReadGate(mapping: Record<string, `${EntityType}`>): KeyValidator<QueryDecodeContext | undefined>;
39
+ //# sourceMappingURL=relations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relations.d.ts","sourceRoot":"","sources":["../../../src/core/query/relations.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,UAAU,EAAkB,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAkDrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,uBAAuB,CACnC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC,GACxC,YAAY,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAuB/C"}
@@ -0,0 +1,103 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
4
+ import { EntityType, PermissionName } from "@authup/core-kit";
5
+ //#region src/core/query/relations.ts
6
+ /**
7
+ * Read gate per include target: the permission disjunction an actor
8
+ * must hold (data-availability-derived pre-gate, issue #3290) for the
9
+ * target entity type to be joinable via `include=` OR reachable via a
10
+ * dotted `filter`/`sort`/`field` key. Mirrors each target service's own
11
+ * `getMany` read pre-gate, so "may list the entity type" and "may join
12
+ * it onto another list" stay one predicate.
13
+ * Policies are deliberately gated under the PERMISSION family — they
14
+ * are managed under the permission domain.
15
+ *
16
+ * Absent entries are ungated: `realm` (the realm list is public — the
17
+ * login realm chooser reads it anonymously) and `identityProvider`
18
+ * (the anonymous login page lists providers; its schema field
19
+ * allow-list is the safe-DTO layer).
20
+ */ const RELATION_TARGET_READ_GATES = {
21
+ [EntityType.CLIENT]: [
22
+ PermissionName.CLIENT_READ,
23
+ PermissionName.CLIENT_UPDATE,
24
+ PermissionName.CLIENT_DELETE
25
+ ],
26
+ [EntityType.USER]: [
27
+ PermissionName.USER_READ,
28
+ PermissionName.USER_UPDATE,
29
+ PermissionName.USER_DELETE
30
+ ],
31
+ [EntityType.ROLE]: [
32
+ PermissionName.ROLE_READ,
33
+ PermissionName.ROLE_UPDATE,
34
+ PermissionName.ROLE_DELETE
35
+ ],
36
+ [EntityType.SCOPE]: [
37
+ PermissionName.SCOPE_READ,
38
+ PermissionName.SCOPE_UPDATE,
39
+ PermissionName.SCOPE_DELETE
40
+ ],
41
+ [EntityType.PERMISSION]: [
42
+ PermissionName.PERMISSION_READ,
43
+ PermissionName.PERMISSION_UPDATE,
44
+ PermissionName.PERMISSION_DELETE
45
+ ],
46
+ [EntityType.POLICY]: [
47
+ PermissionName.PERMISSION_READ,
48
+ PermissionName.PERMISSION_UPDATE,
49
+ PermissionName.PERMISSION_DELETE
50
+ ]
51
+ };
52
+ /**
53
+ * Build a rapiq `relations.validate` hook gating each include on the
54
+ * TARGET entity type's read permission (issue #3295): the actor must
55
+ * pass the derived pre-gate (`preEvaluateOneOf`, #3290) for the
56
+ * relation's mapped entity type — row data is unknown at decode time,
57
+ * so only a settled-false (the actor can never read that entity type)
58
+ * denies. A denial STRIPS the relation silently — the explicit
59
+ * `include=`, and (since rapiq beta.7, tada5hi/rapiq#815) every dotted
60
+ * `filter`/`sort`/`field` key that traverses the denied relation,
61
+ * whether or not it was explicitly included. rapiq records one
62
+ * authorization obligation per distinct relation reached by any
63
+ * parameter, evaluates this hook once for it, and prunes the dependent
64
+ * keys — the same fail-soft flavor as the allow-lists, so a scoped
65
+ * reader degrades to the un-joined / un-filtered row shape instead of
66
+ * a 403.
67
+ *
68
+ * `mapping` is the schema's own relation → entity-type `schemaMapping`;
69
+ * rapiq invokes the hook per include segment against the schema
70
+ * governing it, so nested paths (`include=user.realm`) are gated hop
71
+ * by hop by each governing schema's own hook. Unmapped relations and
72
+ * ungated targets neutral-pass.
73
+ *
74
+ * Caller classes: a SYSTEM call (no actor in the decode context) is
75
+ * unrestricted — the gate neutral-passes. A REQUEST call always
76
+ * carries an actor (`buildActorContext` supplies one even for an
77
+ * anonymous request), so restriction attaches at the request
78
+ * boundary: an authenticated actor is gated by its grants, an
79
+ * anonymous actor holds none and every gated include strips. A gate
80
+ * evaluation failure fails closed (strip).
81
+ *
82
+ * NOTE: schemas import this file DIRECTLY (never the `core/query`
83
+ * barrel) — the barrel reaches `module.ts`, which imports every
84
+ * schema; importing it from a schema would create a TDZ cycle.
85
+ */ function createRelationsReadGate(mapping) {
86
+ return async (name, context) => {
87
+ const target = mapping[name];
88
+ if (!target) return true;
89
+ const permissions = RELATION_TARGET_READ_GATES[target];
90
+ if (!permissions) return true;
91
+ if (!context || !context.actor) return true;
92
+ try {
93
+ await context.actor.permissionEvaluator.preEvaluateOneOf({ name: permissions });
94
+ return true;
95
+ } catch {
96
+ return false;
97
+ }
98
+ };
99
+ }
100
+ //#endregion
101
+ export { createRelationsReadGate };
102
+
103
+ //# sourceMappingURL=relations.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relations.mjs","names":["EntityType","PermissionName","RELATION_TARGET_READ_GATES","CLIENT","CLIENT_READ","CLIENT_UPDATE","CLIENT_DELETE","USER","USER_READ","USER_UPDATE","USER_DELETE","ROLE","ROLE_READ","ROLE_UPDATE","ROLE_DELETE","SCOPE","SCOPE_READ","SCOPE_UPDATE","SCOPE_DELETE","PERMISSION","PERMISSION_READ","PERMISSION_UPDATE","PERMISSION_DELETE","POLICY","createRelationsReadGate","mapping","name","context","target","permissions","actor","permissionEvaluator","preEvaluateOneOf"],"sources":["../../../src/core/query/relations.ts"],"sourcesContent":["/*\n * Copyright (c) 2026.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { KeyValidator } from '@rapiq/core';\nimport { EntityType, PermissionName } from '@authup/core-kit';\nimport type { QueryDecodeContext } from './types.ts';\n\n/**\n * Read gate per include target: the permission disjunction an actor\n * must hold (data-availability-derived pre-gate, issue #3290) for the\n * target entity type to be joinable via `include=` OR reachable via a\n * dotted `filter`/`sort`/`field` key. Mirrors each target service's own\n * `getMany` read pre-gate, so \"may list the entity type\" and \"may join\n * it onto another list\" stay one predicate.\n * Policies are deliberately gated under the PERMISSION family — they\n * are managed under the permission domain.\n *\n * Absent entries are ungated: `realm` (the realm list is public — the\n * login realm chooser reads it anonymously) and `identityProvider`\n * (the anonymous login page lists providers; its schema field\n * allow-list is the safe-DTO layer).\n */\nconst RELATION_TARGET_READ_GATES : Partial<Record<`${EntityType}`, PermissionName[]>> = {\n [EntityType.CLIENT]: [\n PermissionName.CLIENT_READ,\n PermissionName.CLIENT_UPDATE,\n PermissionName.CLIENT_DELETE,\n ],\n [EntityType.USER]: [\n PermissionName.USER_READ,\n PermissionName.USER_UPDATE,\n PermissionName.USER_DELETE,\n ],\n [EntityType.ROLE]: [\n PermissionName.ROLE_READ,\n PermissionName.ROLE_UPDATE,\n PermissionName.ROLE_DELETE,\n ],\n [EntityType.SCOPE]: [\n PermissionName.SCOPE_READ,\n PermissionName.SCOPE_UPDATE,\n PermissionName.SCOPE_DELETE,\n ],\n [EntityType.PERMISSION]: [\n PermissionName.PERMISSION_READ,\n PermissionName.PERMISSION_UPDATE,\n PermissionName.PERMISSION_DELETE,\n ],\n [EntityType.POLICY]: [\n PermissionName.PERMISSION_READ,\n PermissionName.PERMISSION_UPDATE,\n PermissionName.PERMISSION_DELETE,\n ],\n};\n\n/**\n * Build a rapiq `relations.validate` hook gating each include on the\n * TARGET entity type's read permission (issue #3295): the actor must\n * pass the derived pre-gate (`preEvaluateOneOf`, #3290) for the\n * relation's mapped entity type — row data is unknown at decode time,\n * so only a settled-false (the actor can never read that entity type)\n * denies. A denial STRIPS the relation silently — the explicit\n * `include=`, and (since rapiq beta.7, tada5hi/rapiq#815) every dotted\n * `filter`/`sort`/`field` key that traverses the denied relation,\n * whether or not it was explicitly included. rapiq records one\n * authorization obligation per distinct relation reached by any\n * parameter, evaluates this hook once for it, and prunes the dependent\n * keys — the same fail-soft flavor as the allow-lists, so a scoped\n * reader degrades to the un-joined / un-filtered row shape instead of\n * a 403.\n *\n * `mapping` is the schema's own relation → entity-type `schemaMapping`;\n * rapiq invokes the hook per include segment against the schema\n * governing it, so nested paths (`include=user.realm`) are gated hop\n * by hop by each governing schema's own hook. Unmapped relations and\n * ungated targets neutral-pass.\n *\n * Caller classes: a SYSTEM call (no actor in the decode context) is\n * unrestricted — the gate neutral-passes. A REQUEST call always\n * carries an actor (`buildActorContext` supplies one even for an\n * anonymous request), so restriction attaches at the request\n * boundary: an authenticated actor is gated by its grants, an\n * anonymous actor holds none and every gated include strips. A gate\n * evaluation failure fails closed (strip).\n *\n * NOTE: schemas import this file DIRECTLY (never the `core/query`\n * barrel) — the barrel reaches `module.ts`, which imports every\n * schema; importing it from a schema would create a TDZ cycle.\n */\nexport function createRelationsReadGate(\n mapping: Record<string, `${EntityType}`>,\n) : KeyValidator<QueryDecodeContext | undefined> {\n return async (name, context) => {\n const target = mapping[name];\n if (!target) {\n return true;\n }\n\n const permissions = RELATION_TARGET_READ_GATES[target];\n if (!permissions) {\n return true;\n }\n\n if (!context || !context.actor) {\n return true;\n }\n\n try {\n await context.actor.permissionEvaluator.preEvaluateOneOf({ name: permissions });\n return true;\n } catch {\n return false;\n }\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;GA0BA,MAAME,6BAAkF;EACnFF,WAAWG,SAAS;EACjBF,eAAeG;EACfH,eAAeI;EACfJ,eAAeK;;EAElBN,WAAWO,OAAO;EACfN,eAAeO;EACfP,eAAeQ;EACfR,eAAeS;;EAElBV,WAAWW,OAAO;EACfV,eAAeW;EACfX,eAAeY;EACfZ,eAAea;;EAElBd,WAAWe,QAAQ;EAChBd,eAAee;EACff,eAAegB;EACfhB,eAAeiB;;EAElBlB,WAAWmB,aAAa;EACrBlB,eAAemB;EACfnB,eAAeoB;EACfpB,eAAeqB;;EAElBtB,WAAWuB,SAAS;EACjBtB,eAAemB;EACfnB,eAAeoB;EACfpB,eAAeqB;;AAEvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCA,SAAgBE,wBACZC,SAAwC;CAExC,OAAO,OAAOC,MAAMC,YAAAA;EAChB,MAAMC,SAASH,QAAQC;EACvB,IAAI,CAACE,QACD,OAAO;EAGX,MAAMC,cAAc3B,2BAA2B0B;EAC/C,IAAI,CAACC,aACD,OAAO;EAGX,IAAI,CAACF,WAAW,CAACA,QAAQG,OACrB,OAAO;EAGX,IAAI;GACA,MAAMH,QAAQG,MAAMC,oBAAoBC,iBAAiB,EAAEN,MAAMG,YAAY,CAAA;GAC7E,OAAO;EACX,QAAQ;GACJ,OAAO;EACX;CACJ;AACJ"}
@@ -0,0 +1,39 @@
1
+ import type { ObjectLiteral, Parameter, Schema } from '@rapiq/core';
2
+ import type { ActorContext } from '@authup/server-kit';
3
+ export type QueryParameter = `${Parameter}`;
4
+ /**
5
+ * Caller context threaded through the decode into every schema
6
+ * validate hook (rapiq `ParseQueryOptions['context']`). Carries the
7
+ * acting identity so per-key gates — the relations read gate — can
8
+ * consult its permissions. An actor-less context is a SYSTEM call
9
+ * and passes ungated; request surfaces always supply an actor (an
10
+ * anonymous one holds no grants, so gated includes strip).
11
+ */
12
+ export type QueryDecodeContext = {
13
+ actor?: ActorContext;
14
+ };
15
+ export type DecodeQueryOptions<RECORD extends ObjectLiteral = ObjectLiteral> = {
16
+ /**
17
+ * The schema (or name of the registered schema) to validate
18
+ * against.
19
+ */
20
+ schema: Schema<RECORD> | string;
21
+ /**
22
+ * Restrict which parameters are processed (default: all). A
23
+ * parameter that is not listed is neither parsed nor defaulted.
24
+ * E.g. a bulk-delete selection processes `['filters']` only, so a
25
+ * schema `pagination.maxLimit` can never silently truncate the
26
+ * affected row set.
27
+ */
28
+ parameters?: QueryParameter[];
29
+ /**
30
+ * The acting identity, forwarded to the schema validate hooks as
31
+ * the decode context. Every REQUEST decode must pass it — the
32
+ * HTTP adapter builds an actor for authenticated and anonymous
33
+ * requests alike, so restriction attaches at the request
34
+ * boundary. Omitting it marks a SYSTEM decode, which runs
35
+ * unrestricted.
36
+ */
37
+ actor?: ActorContext;
38
+ };
39
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/query/types.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,MAAM,cAAc,GAAG,GAAG,SAAS,EAAE,CAAC;AAE5C;;;;;;;GAOG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC7B,KAAK,CAAC,EAAE,YAAY,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,MAAM,SAAS,aAAa,GAAG,aAAa,IAAI;IAC3E;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IAChC;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC;CACxB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
4
+ export {};
@@ -7,6 +7,7 @@ export declare class PermissionBindingPolicyEvaluator implements IPolicyEvaluato
7
7
  protected realmMatchEvaluator: RealmMatchPolicyEvaluator;
8
8
  protected identityPermissionProvider: IIdentityPermissionProvider;
9
9
  constructor(identityPermissionProvider: IIdentityPermissionProvider);
10
+ requires(): string[];
10
11
  accessData(ctx: PolicyEvaluationContext): Promise<PermissionPolicyBindingAggregated | null>;
11
12
  evaluate(value: Record<string, any>, ctx: PolicyEvaluationContext): Promise<PolicyEvaluationResult>;
12
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"evaluator.d.ts","sourceRoot":"","sources":["../../../../src/core/security/policy/evaluator.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACR,gBAAgB,EAChB,iCAAiC,EACjC,uBAAuB,EACvB,sBAAsB,EACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEH,uBAAuB,EACvB,gCAAgC,EAGhC,yBAAyB,EAI5B,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AAEtF,qBAAa,gCAAiC,YAAW,gBAAgB;IACrE,SAAS,CAAC,SAAS,EAAG,gCAAgC,CAAC;IAEvD,SAAS,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;IAErD,SAAS,CAAC,mBAAmB,EAAG,yBAAyB,CAAC;IAE1D,SAAS,CAAC,0BAA0B,EAAE,2BAA2B,CAAC;gBAEtD,0BAA0B,EAAE,2BAA2B;IAO7D,UAAU,CAAC,GAAG,EAAE,uBAAuB,GAAI,OAAO,CAAC,iCAAiC,GAAG,IAAI,CAAC;IAiB5F,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CA2G5G"}
1
+ {"version":3,"file":"evaluator.d.ts","sourceRoot":"","sources":["../../../../src/core/security/policy/evaluator.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACR,gBAAgB,EAChB,iCAAiC,EACjC,uBAAuB,EACvB,sBAAsB,EACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEH,uBAAuB,EACvB,gCAAgC,EAGhC,yBAAyB,EAM5B,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AAEtF,qBAAa,gCAAiC,YAAW,gBAAgB;IACrE,SAAS,CAAC,SAAS,EAAG,gCAAgC,CAAC;IAEvD,SAAS,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;IAErD,SAAS,CAAC,mBAAmB,EAAG,yBAAyB,CAAC;IAE1D,SAAS,CAAC,0BAA0B,EAAE,2BAA2B,CAAC;gBAEtD,0BAA0B,EAAE,2BAA2B;IAOnE,QAAQ,IAAK,MAAM,EAAE;IAQf,UAAU,CAAC,GAAG,EAAE,uBAAuB,GAAI,OAAO,CAAC,iCAAiC,GAAG,IAAI,CAAC;IAiB5F,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CA+L5G"}
@@ -1,7 +1,8 @@
1
1
  import "node:path";
2
2
  import "node:url";
3
3
  import.meta.url;
4
- import { BuiltInPolicyType, IdentityPolicyEvaluator, PermissionBindingPolicyValidator, PolicyEngine, PolicyIssueCode, RealmMatchPolicyEvaluator, aggregatePermissionPolicyBindings, definePolicyIssueItem, maybeInvertPolicyOutcome } from "@authup/access";
4
+ import { BuiltInPolicyType, IdentityPolicyEvaluator, PermissionBindingPolicyValidator, PolicyEngine, PolicyIssueCode, RealmMatchPolicyEvaluator, RealmScope, aggregatePermissionPolicyBindings, definePolicyIssueItem, maybeInvertPolicyOutcome, normalizeRealmScope } from "@authup/access";
5
+ import { and, or } from "@rapiq/core";
5
6
  //#region src/core/security/policy/evaluator.ts
6
7
  var PermissionBindingPolicyEvaluator = class {
7
8
  validator;
@@ -14,6 +15,9 @@ var PermissionBindingPolicyEvaluator = class {
14
15
  this.realmMatchEvaluator = new RealmMatchPolicyEvaluator();
15
16
  this.identityPermissionProvider = identityPermissionProvider;
16
17
  }
18
+ requires() {
19
+ return [BuiltInPolicyType.PERMISSION_BINDING];
20
+ }
17
21
  async accessData(ctx) {
18
22
  if (!ctx.data.has(BuiltInPolicyType.PERMISSION_BINDING)) return null;
19
23
  if (ctx.data.isValidated(BuiltInPolicyType.PERMISSION_BINDING)) return ctx.data.get(BuiltInPolicyType.PERMISSION_BINDING);
@@ -44,22 +48,65 @@ var PermissionBindingPolicyEvaluator = class {
44
48
  };
45
49
  const identityBindings = await this.identityPermissionProvider.getFor(identity).then((bindings) => bindings.filter((item) => {
46
50
  if (item.permission.name !== binding.permission.name) return false;
47
- return (binding.permission.realm_id ?? null) === (item.permission.realm_id ?? null) && (binding.permission.client_id ?? null) === (item.permission.client_id ?? null);
51
+ return (binding.permission.realmId ?? null) === (item.permission.realmId ?? null) && (binding.permission.clientId ?? null) === (item.permission.clientId ?? null);
48
52
  }));
49
53
  if (identityBindings.length === 0) return { success: maybeInvertPolicyOutcome(false, policy.invert) };
50
54
  const [aggr] = aggregatePermissionPolicyBindings(identityBindings);
51
55
  if (!aggr) return { success: maybeInvertPolicyOutcome(false, policy.invert) };
52
56
  const issues = [];
57
+ const pendingIssues = [];
58
+ const conditions = [];
59
+ let pending = false;
60
+ let lowerable = true;
53
61
  for (const grant of aggr.grants) {
54
- if (!(await this.realmMatchEvaluator.evaluate({ scope: grant.realm_scope }, ctx)).success) continue;
55
- if (!grant.policy) return { success: maybeInvertPolicyOutcome(true, policy.invert) };
62
+ let reachCondition = null;
63
+ const realmOutcome = await this.realmMatchEvaluator.evaluate({ scope: grant.realmScope }, ctx);
64
+ if (realmOutcome.pending) {
65
+ const scope = normalizeRealmScope(grant.realmScope);
66
+ if (scope === RealmScope.NONE) continue;
67
+ if (scope !== RealmScope.ANY) {
68
+ if (!realmOutcome.condition) {
69
+ pending = true;
70
+ lowerable = false;
71
+ continue;
72
+ }
73
+ reachCondition = realmOutcome.condition;
74
+ }
75
+ } else if (!realmOutcome.success) continue;
76
+ if (!grant.policy) {
77
+ if (!reachCondition) return { success: maybeInvertPolicyOutcome(true, policy.invert) };
78
+ conditions.push(reachCondition);
79
+ pending = true;
80
+ continue;
81
+ }
56
82
  const outcome = await new PolicyEngine(ctx.evaluators).evaluate(grant.policy, {
57
83
  ...ctx,
58
84
  path: [...ctx.path || []]
59
85
  });
60
- if (outcome.success) return { success: maybeInvertPolicyOutcome(true, policy.invert) };
86
+ if (outcome.success) {
87
+ if (!reachCondition) return { success: maybeInvertPolicyOutcome(true, policy.invert) };
88
+ conditions.push(reachCondition);
89
+ pending = true;
90
+ continue;
91
+ }
92
+ if (outcome.pending) {
93
+ pending = true;
94
+ if (ctx.withConditions && outcome.condition) conditions.push(reachCondition ? and(reachCondition, outcome.condition) : outcome.condition);
95
+ else lowerable = false;
96
+ if (outcome.issues) pendingIssues.push(...outcome.issues);
97
+ continue;
98
+ }
61
99
  if (outcome.issues) issues.push(...outcome.issues);
62
100
  }
101
+ if (pending) {
102
+ const result = {
103
+ success: false,
104
+ pending: true,
105
+ issues: pendingIssues
106
+ };
107
+ if (ctx.withConditions && lowerable && conditions.length > 0) result.condition = conditions.length === 1 ? conditions[0] : or(...conditions);
108
+ return result;
109
+ }
63
110
  const success = maybeInvertPolicyOutcome(false, policy.invert);
64
111
  return {
65
112
  success,