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

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 (1284) hide show
  1. package/dist/adapters/database/cache/index.mjs +3 -0
  2. package/dist/adapters/database/cache/module.mjs +3 -0
  3. package/dist/adapters/database/cache/module.mjs.map +1 -1
  4. package/dist/adapters/database/data-source/index.mjs +3 -0
  5. package/dist/adapters/database/data-source/options/index.mjs +3 -0
  6. package/dist/adapters/database/data-source/options/module.mjs +3 -0
  7. package/dist/adapters/database/data-source/options/module.mjs.map +1 -1
  8. package/dist/adapters/database/data-source/singleton.mjs +3 -0
  9. package/dist/adapters/database/data-source/singleton.mjs.map +1 -1
  10. package/dist/adapters/database/domains/client/entity.mjs +3 -0
  11. package/dist/adapters/database/domains/client/entity.mjs.map +1 -1
  12. package/dist/adapters/database/domains/client/index.mjs +3 -0
  13. package/dist/adapters/database/domains/client/subscriber.mjs +3 -0
  14. package/dist/adapters/database/domains/client/subscriber.mjs.map +1 -1
  15. package/dist/adapters/database/domains/client-permission/entity.mjs +3 -0
  16. package/dist/adapters/database/domains/client-permission/entity.mjs.map +1 -1
  17. package/dist/adapters/database/domains/client-permission/index.mjs +3 -0
  18. package/dist/adapters/database/domains/client-permission/subscriber.mjs +3 -0
  19. package/dist/adapters/database/domains/client-permission/subscriber.mjs.map +1 -1
  20. package/dist/adapters/database/domains/client-role/entity.mjs +3 -0
  21. package/dist/adapters/database/domains/client-role/entity.mjs.map +1 -1
  22. package/dist/adapters/database/domains/client-role/index.mjs +3 -0
  23. package/dist/adapters/database/domains/client-role/subscriber.mjs +3 -0
  24. package/dist/adapters/database/domains/client-role/subscriber.mjs.map +1 -1
  25. package/dist/adapters/database/domains/client-scope/entity.mjs +3 -0
  26. package/dist/adapters/database/domains/client-scope/entity.mjs.map +1 -1
  27. package/dist/adapters/database/domains/client-scope/index.mjs +3 -0
  28. package/dist/adapters/database/domains/client-scope/subscriber.mjs +3 -0
  29. package/dist/adapters/database/domains/client-scope/subscriber.mjs.map +1 -1
  30. package/dist/adapters/database/domains/constants.mjs +4 -1
  31. package/dist/adapters/database/domains/constants.mjs.map +1 -1
  32. package/dist/adapters/database/domains/identity-provider/entity.mjs +3 -0
  33. package/dist/adapters/database/domains/identity-provider/entity.mjs.map +1 -1
  34. package/dist/adapters/database/domains/identity-provider/index.mjs +3 -0
  35. package/dist/adapters/database/domains/identity-provider/repository.mjs +3 -0
  36. package/dist/adapters/database/domains/identity-provider/repository.mjs.map +1 -1
  37. package/dist/adapters/database/domains/identity-provider/subscriber.mjs +3 -0
  38. package/dist/adapters/database/domains/identity-provider/subscriber.mjs.map +1 -1
  39. package/dist/adapters/database/domains/identity-provider-account/entity.mjs +3 -0
  40. package/dist/adapters/database/domains/identity-provider-account/entity.mjs.map +1 -1
  41. package/dist/adapters/database/domains/identity-provider-account/index.mjs +3 -0
  42. package/dist/adapters/database/domains/identity-provider-account/subscriber.mjs +3 -0
  43. package/dist/adapters/database/domains/identity-provider-account/subscriber.mjs.map +1 -1
  44. package/dist/adapters/database/domains/identity-provider-attribute/entity.mjs +3 -0
  45. package/dist/adapters/database/domains/identity-provider-attribute/entity.mjs.map +1 -1
  46. package/dist/adapters/database/domains/identity-provider-attribute/index.mjs +3 -0
  47. package/dist/adapters/database/domains/identity-provider-attribute/subscriber.mjs +3 -0
  48. package/dist/adapters/database/domains/identity-provider-attribute/subscriber.mjs.map +1 -1
  49. package/dist/adapters/database/domains/identity-provider-attribute-mapping/entity.mjs +3 -0
  50. package/dist/adapters/database/domains/identity-provider-attribute-mapping/entity.mjs.map +1 -1
  51. package/dist/adapters/database/domains/identity-provider-attribute-mapping/index.mjs +3 -0
  52. package/dist/adapters/database/domains/identity-provider-permission-mapping/entity.mjs +3 -0
  53. package/dist/adapters/database/domains/identity-provider-permission-mapping/entity.mjs.map +1 -1
  54. package/dist/adapters/database/domains/identity-provider-permission-mapping/index.mjs +3 -0
  55. package/dist/adapters/database/domains/identity-provider-role-mapping/entity.mjs +3 -0
  56. package/dist/adapters/database/domains/identity-provider-role-mapping/entity.mjs.map +1 -1
  57. package/dist/adapters/database/domains/identity-provider-role-mapping/index.mjs +3 -0
  58. package/dist/adapters/database/domains/identity-provider-role-mapping/subscriber.mjs +3 -0
  59. package/dist/adapters/database/domains/identity-provider-role-mapping/subscriber.mjs.map +1 -1
  60. package/dist/adapters/database/domains/index.mjs +3 -0
  61. package/dist/adapters/database/domains/key/entity.mjs +3 -0
  62. package/dist/adapters/database/domains/key/entity.mjs.map +1 -1
  63. package/dist/adapters/database/domains/key/index.mjs +3 -0
  64. package/dist/adapters/database/domains/permission/entity.mjs +3 -0
  65. package/dist/adapters/database/domains/permission/entity.mjs.map +1 -1
  66. package/dist/adapters/database/domains/permission/index.mjs +3 -0
  67. package/dist/adapters/database/domains/permission/subscriber.mjs +3 -0
  68. package/dist/adapters/database/domains/permission/subscriber.mjs.map +1 -1
  69. package/dist/adapters/database/domains/permission-policy/entity.mjs +3 -0
  70. package/dist/adapters/database/domains/permission-policy/entity.mjs.map +1 -1
  71. package/dist/adapters/database/domains/permission-policy/index.mjs +3 -0
  72. package/dist/adapters/database/domains/policy/entity.mjs +3 -0
  73. package/dist/adapters/database/domains/policy/entity.mjs.map +1 -1
  74. package/dist/adapters/database/domains/policy/index.mjs +3 -0
  75. package/dist/adapters/database/domains/policy/repository.mjs +3 -0
  76. package/dist/adapters/database/domains/policy/repository.mjs.map +1 -1
  77. package/dist/adapters/database/domains/policy/subscriber.mjs +3 -0
  78. package/dist/adapters/database/domains/policy/subscriber.mjs.map +1 -1
  79. package/dist/adapters/database/domains/policy-attribute/entity.mjs +3 -0
  80. package/dist/adapters/database/domains/policy-attribute/entity.mjs.map +1 -1
  81. package/dist/adapters/database/domains/policy-attribute/index.mjs +3 -0
  82. package/dist/adapters/database/domains/policy-attribute/subscriber.mjs +3 -0
  83. package/dist/adapters/database/domains/policy-attribute/subscriber.mjs.map +1 -1
  84. package/dist/adapters/database/domains/realm/entity.mjs +3 -0
  85. package/dist/adapters/database/domains/realm/entity.mjs.map +1 -1
  86. package/dist/adapters/database/domains/realm/index.mjs +3 -0
  87. package/dist/adapters/database/domains/realm/repository.mjs +3 -0
  88. package/dist/adapters/database/domains/realm/repository.mjs.map +1 -1
  89. package/dist/adapters/database/domains/realm/subscriber.mjs +3 -0
  90. package/dist/adapters/database/domains/realm/subscriber.mjs.map +1 -1
  91. package/dist/adapters/database/domains/robot/entity.mjs +3 -0
  92. package/dist/adapters/database/domains/robot/entity.mjs.map +1 -1
  93. package/dist/adapters/database/domains/robot/index.mjs +3 -0
  94. package/dist/adapters/database/domains/robot/subscriber.mjs +3 -0
  95. package/dist/adapters/database/domains/robot/subscriber.mjs.map +1 -1
  96. package/dist/adapters/database/domains/robot-permission/entity.mjs +3 -0
  97. package/dist/adapters/database/domains/robot-permission/entity.mjs.map +1 -1
  98. package/dist/adapters/database/domains/robot-permission/index.mjs +3 -0
  99. package/dist/adapters/database/domains/robot-permission/subscriber.mjs +3 -0
  100. package/dist/adapters/database/domains/robot-permission/subscriber.mjs.map +1 -1
  101. package/dist/adapters/database/domains/robot-role/entity.mjs +3 -0
  102. package/dist/adapters/database/domains/robot-role/entity.mjs.map +1 -1
  103. package/dist/adapters/database/domains/robot-role/index.mjs +3 -0
  104. package/dist/adapters/database/domains/robot-role/subscriber.mjs +3 -0
  105. package/dist/adapters/database/domains/robot-role/subscriber.mjs.map +1 -1
  106. package/dist/adapters/database/domains/role/entity.mjs +3 -0
  107. package/dist/adapters/database/domains/role/entity.mjs.map +1 -1
  108. package/dist/adapters/database/domains/role/index.mjs +3 -0
  109. package/dist/adapters/database/domains/role/repository.mjs +3 -0
  110. package/dist/adapters/database/domains/role/repository.mjs.map +1 -1
  111. package/dist/adapters/database/domains/role/subscriber.mjs +3 -0
  112. package/dist/adapters/database/domains/role/subscriber.mjs.map +1 -1
  113. package/dist/adapters/database/domains/role-attribute/entity.mjs +3 -0
  114. package/dist/adapters/database/domains/role-attribute/entity.mjs.map +1 -1
  115. package/dist/adapters/database/domains/role-attribute/index.mjs +3 -0
  116. package/dist/adapters/database/domains/role-attribute/subscriber.mjs +3 -0
  117. package/dist/adapters/database/domains/role-attribute/subscriber.mjs.map +1 -1
  118. package/dist/adapters/database/domains/role-permission/entity.mjs +3 -0
  119. package/dist/adapters/database/domains/role-permission/entity.mjs.map +1 -1
  120. package/dist/adapters/database/domains/role-permission/index.mjs +3 -0
  121. package/dist/adapters/database/domains/role-permission/subscriber.mjs +3 -0
  122. package/dist/adapters/database/domains/role-permission/subscriber.mjs.map +1 -1
  123. package/dist/adapters/database/domains/scope/entity.mjs +3 -0
  124. package/dist/adapters/database/domains/scope/entity.mjs.map +1 -1
  125. package/dist/adapters/database/domains/scope/index.mjs +3 -0
  126. package/dist/adapters/database/domains/scope/subscriber.mjs +3 -0
  127. package/dist/adapters/database/domains/scope/subscriber.mjs.map +1 -1
  128. package/dist/adapters/database/domains/session/entity.mjs +3 -0
  129. package/dist/adapters/database/domains/session/entity.mjs.map +1 -1
  130. package/dist/adapters/database/domains/session/index.mjs +3 -0
  131. package/dist/adapters/database/domains/user/entity.d.ts +1 -3
  132. package/dist/adapters/database/domains/user/entity.d.ts.map +1 -1
  133. package/dist/adapters/database/domains/user/entity.mjs +3 -17
  134. package/dist/adapters/database/domains/user/entity.mjs.map +1 -1
  135. package/dist/adapters/database/domains/user/index.mjs +3 -0
  136. package/dist/adapters/database/domains/user/repository.mjs +3 -0
  137. package/dist/adapters/database/domains/user/repository.mjs.map +1 -1
  138. package/dist/adapters/database/domains/user/subscriber.mjs +3 -0
  139. package/dist/adapters/database/domains/user/subscriber.mjs.map +1 -1
  140. package/dist/adapters/database/domains/user-attribute/entity.mjs +3 -0
  141. package/dist/adapters/database/domains/user-attribute/entity.mjs.map +1 -1
  142. package/dist/adapters/database/domains/user-attribute/index.mjs +3 -0
  143. package/dist/adapters/database/domains/user-attribute/subscriber.mjs +3 -0
  144. package/dist/adapters/database/domains/user-attribute/subscriber.mjs.map +1 -1
  145. package/dist/adapters/database/domains/user-permission/entity.mjs +3 -0
  146. package/dist/adapters/database/domains/user-permission/entity.mjs.map +1 -1
  147. package/dist/adapters/database/domains/user-permission/index.mjs +3 -0
  148. package/dist/adapters/database/domains/user-permission/subscriber.mjs +3 -0
  149. package/dist/adapters/database/domains/user-permission/subscriber.mjs.map +1 -1
  150. package/dist/adapters/database/domains/user-role/entity.mjs +3 -0
  151. package/dist/adapters/database/domains/user-role/entity.mjs.map +1 -1
  152. package/dist/adapters/database/domains/user-role/index.mjs +3 -0
  153. package/dist/adapters/database/domains/user-role/subscriber.mjs +3 -0
  154. package/dist/adapters/database/domains/user-role/subscriber.mjs.map +1 -1
  155. package/dist/adapters/database/errors/conflict.mjs +3 -0
  156. package/dist/adapters/database/errors/conflict.mjs.map +1 -1
  157. package/dist/adapters/database/errors/index.mjs +3 -0
  158. package/dist/adapters/database/event-publisher/index.mjs +3 -0
  159. package/dist/adapters/database/event-publisher/module.mjs +3 -0
  160. package/dist/adapters/database/event-publisher/module.mjs.map +1 -1
  161. package/dist/adapters/database/extra-attribute-repository/adapter.mjs +3 -0
  162. package/dist/adapters/database/extra-attribute-repository/adapter.mjs.map +1 -1
  163. package/dist/adapters/database/extra-attribute-repository/index.mjs +3 -0
  164. package/dist/adapters/database/extra-attribute-repository/repository.mjs +3 -0
  165. package/dist/adapters/database/extra-attribute-repository/repository.mjs.map +1 -1
  166. package/dist/adapters/database/extra-attribute-repository/tree/adapter.mjs +3 -0
  167. package/dist/adapters/database/extra-attribute-repository/tree/adapter.mjs.map +1 -1
  168. package/dist/adapters/database/extra-attribute-repository/tree/index.mjs +3 -0
  169. package/dist/adapters/database/extra-attribute-repository/tree/repository.mjs +3 -0
  170. package/dist/adapters/database/extra-attribute-repository/tree/repository.mjs.map +1 -1
  171. package/dist/adapters/database/extra-attribute-repository/types.mjs +3 -0
  172. package/dist/adapters/database/helpers/index.mjs +3 -0
  173. package/dist/adapters/database/helpers/is-supported.mjs +3 -0
  174. package/dist/adapters/database/helpers/is-supported.mjs.map +1 -1
  175. package/dist/adapters/database/index.mjs +3 -0
  176. package/dist/adapters/database/logger/index.mjs +3 -0
  177. package/dist/adapters/database/logger/module.mjs +3 -0
  178. package/dist/adapters/database/logger/module.mjs.map +1 -1
  179. package/dist/adapters/database/migrations/mysql/1673449341125-Default.mjs +3 -0
  180. package/dist/adapters/database/migrations/mysql/1673449341125-Default.mjs.map +1 -1
  181. package/dist/adapters/database/migrations/mysql/1689597906910-Default.mjs +3 -0
  182. package/dist/adapters/database/migrations/mysql/1689597906910-Default.mjs.map +1 -1
  183. package/dist/adapters/database/migrations/mysql/1718790373914-Default.mjs +3 -0
  184. package/dist/adapters/database/migrations/mysql/1718790373914-Default.mjs.map +1 -1
  185. package/dist/adapters/database/migrations/mysql/1722673916392-Default.mjs +3 -0
  186. package/dist/adapters/database/migrations/mysql/1722673916392-Default.mjs.map +1 -1
  187. package/dist/adapters/database/migrations/mysql/1740991051622-Default.mjs +3 -0
  188. package/dist/adapters/database/migrations/mysql/1740991051622-Default.mjs.map +1 -1
  189. package/dist/adapters/database/migrations/mysql/1766830857009-Default.mjs +3 -0
  190. package/dist/adapters/database/migrations/mysql/1766830857009-Default.mjs.map +1 -1
  191. package/dist/adapters/database/migrations/mysql/1774800953474-Default.mjs +3 -0
  192. package/dist/adapters/database/migrations/mysql/1774800953474-Default.mjs.map +1 -1
  193. package/dist/adapters/database/migrations/mysql/1779267068441-Default.d.ts +7 -0
  194. package/dist/adapters/database/migrations/mysql/1779267068441-Default.d.ts.map +1 -0
  195. package/dist/adapters/database/migrations/mysql/1779267068441-Default.mjs +108 -0
  196. package/dist/adapters/database/migrations/mysql/1779267068441-Default.mjs.map +1 -0
  197. package/dist/adapters/database/migrations/postgres/1673449341125-Default.mjs +3 -0
  198. package/dist/adapters/database/migrations/postgres/1673449341125-Default.mjs.map +1 -1
  199. package/dist/adapters/database/migrations/postgres/1689597906910-Default.mjs +3 -0
  200. package/dist/adapters/database/migrations/postgres/1689597906910-Default.mjs.map +1 -1
  201. package/dist/adapters/database/migrations/postgres/1718790373914-Default.mjs +3 -0
  202. package/dist/adapters/database/migrations/postgres/1718790373914-Default.mjs.map +1 -1
  203. package/dist/adapters/database/migrations/postgres/1722673916392-Default.mjs +3 -0
  204. package/dist/adapters/database/migrations/postgres/1722673916392-Default.mjs.map +1 -1
  205. package/dist/adapters/database/migrations/postgres/1740991051622-Default.mjs +3 -0
  206. package/dist/adapters/database/migrations/postgres/1740991051622-Default.mjs.map +1 -1
  207. package/dist/adapters/database/migrations/postgres/1766830857009-Default.mjs +3 -0
  208. package/dist/adapters/database/migrations/postgres/1766830857009-Default.mjs.map +1 -1
  209. package/dist/adapters/database/migrations/postgres/1774800953474-Default.mjs +3 -0
  210. package/dist/adapters/database/migrations/postgres/1774800953474-Default.mjs.map +1 -1
  211. package/dist/adapters/database/migrations/postgres/1779267068441-Default.d.ts +7 -0
  212. package/dist/adapters/database/migrations/postgres/1779267068441-Default.d.ts.map +1 -0
  213. package/dist/adapters/database/migrations/postgres/1779267068441-Default.mjs +108 -0
  214. package/dist/adapters/database/migrations/postgres/1779267068441-Default.mjs.map +1 -0
  215. package/dist/adapters/http/adapters/index.mjs +3 -0
  216. package/dist/adapters/http/adapters/oauth2/authorization/index.mjs +3 -0
  217. package/dist/adapters/http/adapters/oauth2/authorization/module.d.ts +3 -3
  218. package/dist/adapters/http/adapters/oauth2/authorization/module.d.ts.map +1 -1
  219. package/dist/adapters/http/adapters/oauth2/authorization/module.mjs +3 -0
  220. package/dist/adapters/http/adapters/oauth2/authorization/module.mjs.map +1 -1
  221. package/dist/adapters/http/adapters/oauth2/authorization/types.mjs +3 -0
  222. package/dist/adapters/http/adapters/oauth2/grant-types/authorize.d.ts +2 -2
  223. package/dist/adapters/http/adapters/oauth2/grant-types/authorize.d.ts.map +1 -1
  224. package/dist/adapters/http/adapters/oauth2/grant-types/authorize.mjs +3 -0
  225. package/dist/adapters/http/adapters/oauth2/grant-types/authorize.mjs.map +1 -1
  226. package/dist/adapters/http/adapters/oauth2/grant-types/client-credentials.d.ts +2 -2
  227. package/dist/adapters/http/adapters/oauth2/grant-types/client-credentials.d.ts.map +1 -1
  228. package/dist/adapters/http/adapters/oauth2/grant-types/client-credentials.mjs +3 -0
  229. package/dist/adapters/http/adapters/oauth2/grant-types/client-credentials.mjs.map +1 -1
  230. package/dist/adapters/http/adapters/oauth2/grant-types/identity.d.ts +2 -2
  231. package/dist/adapters/http/adapters/oauth2/grant-types/identity.d.ts.map +1 -1
  232. package/dist/adapters/http/adapters/oauth2/grant-types/identity.mjs +3 -0
  233. package/dist/adapters/http/adapters/oauth2/grant-types/identity.mjs.map +1 -1
  234. package/dist/adapters/http/adapters/oauth2/grant-types/index.mjs +3 -0
  235. package/dist/adapters/http/adapters/oauth2/grant-types/password.d.ts +2 -2
  236. package/dist/adapters/http/adapters/oauth2/grant-types/password.d.ts.map +1 -1
  237. package/dist/adapters/http/adapters/oauth2/grant-types/password.mjs +3 -0
  238. package/dist/adapters/http/adapters/oauth2/grant-types/password.mjs.map +1 -1
  239. package/dist/adapters/http/adapters/oauth2/grant-types/refresh_token.d.ts +2 -2
  240. package/dist/adapters/http/adapters/oauth2/grant-types/refresh_token.d.ts.map +1 -1
  241. package/dist/adapters/http/adapters/oauth2/grant-types/refresh_token.mjs +3 -0
  242. package/dist/adapters/http/adapters/oauth2/grant-types/refresh_token.mjs.map +1 -1
  243. package/dist/adapters/http/adapters/oauth2/grant-types/robot-credentials.d.ts +2 -2
  244. package/dist/adapters/http/adapters/oauth2/grant-types/robot-credentials.d.ts.map +1 -1
  245. package/dist/adapters/http/adapters/oauth2/grant-types/robot-credentials.mjs +3 -0
  246. package/dist/adapters/http/adapters/oauth2/grant-types/robot-credentials.mjs.map +1 -1
  247. package/dist/adapters/http/adapters/oauth2/grant-types/types.d.ts +2 -2
  248. package/dist/adapters/http/adapters/oauth2/grant-types/types.d.ts.map +1 -1
  249. package/dist/adapters/http/adapters/oauth2/grant-types/types.mjs +3 -0
  250. package/dist/adapters/http/adapters/oauth2/grant-types/utils/credentials.d.ts +2 -2
  251. package/dist/adapters/http/adapters/oauth2/grant-types/utils/credentials.d.ts.map +1 -1
  252. package/dist/adapters/http/adapters/oauth2/grant-types/utils/credentials.mjs +3 -0
  253. package/dist/adapters/http/adapters/oauth2/grant-types/utils/credentials.mjs.map +1 -1
  254. package/dist/adapters/http/adapters/oauth2/grant-types/utils/guess.d.ts +2 -2
  255. package/dist/adapters/http/adapters/oauth2/grant-types/utils/guess.d.ts.map +1 -1
  256. package/dist/adapters/http/adapters/oauth2/grant-types/utils/guess.mjs +3 -0
  257. package/dist/adapters/http/adapters/oauth2/grant-types/utils/guess.mjs.map +1 -1
  258. package/dist/adapters/http/adapters/oauth2/grant-types/utils/index.mjs +3 -0
  259. package/dist/adapters/http/adapters/oauth2/index.mjs +3 -0
  260. package/dist/adapters/http/controllers/entities/client/index.mjs +3 -0
  261. package/dist/adapters/http/controllers/entities/client/module.d.ts +7 -7
  262. package/dist/adapters/http/controllers/entities/client/module.d.ts.map +1 -1
  263. package/dist/adapters/http/controllers/entities/client/module.mjs +9 -6
  264. package/dist/adapters/http/controllers/entities/client/module.mjs.map +1 -1
  265. package/dist/adapters/http/controllers/entities/client-permission/index.mjs +3 -0
  266. package/dist/adapters/http/controllers/entities/client-permission/module.d.ts +6 -6
  267. package/dist/adapters/http/controllers/entities/client-permission/module.d.ts.map +1 -1
  268. package/dist/adapters/http/controllers/entities/client-permission/module.mjs +8 -5
  269. package/dist/adapters/http/controllers/entities/client-permission/module.mjs.map +1 -1
  270. package/dist/adapters/http/controllers/entities/client-permission/utils/index.mjs +3 -0
  271. package/dist/adapters/http/controllers/entities/client-permission/utils/validation.d.ts.map +1 -1
  272. package/dist/adapters/http/controllers/entities/client-permission/utils/validation.mjs +8 -10
  273. package/dist/adapters/http/controllers/entities/client-permission/utils/validation.mjs.map +1 -1
  274. package/dist/adapters/http/controllers/entities/client-role/index.mjs +3 -0
  275. package/dist/adapters/http/controllers/entities/client-role/module.d.ts +5 -5
  276. package/dist/adapters/http/controllers/entities/client-role/module.d.ts.map +1 -1
  277. package/dist/adapters/http/controllers/entities/client-role/module.mjs +7 -4
  278. package/dist/adapters/http/controllers/entities/client-role/module.mjs.map +1 -1
  279. package/dist/adapters/http/controllers/entities/client-role/utils/index.mjs +3 -0
  280. package/dist/adapters/http/controllers/entities/client-role/utils/validation.d.ts.map +1 -1
  281. package/dist/adapters/http/controllers/entities/client-role/utils/validation.mjs +7 -7
  282. package/dist/adapters/http/controllers/entities/client-role/utils/validation.mjs.map +1 -1
  283. package/dist/adapters/http/controllers/entities/client-scope/index.mjs +3 -0
  284. package/dist/adapters/http/controllers/entities/client-scope/module.d.ts +5 -5
  285. package/dist/adapters/http/controllers/entities/client-scope/module.d.ts.map +1 -1
  286. package/dist/adapters/http/controllers/entities/client-scope/module.mjs +7 -4
  287. package/dist/adapters/http/controllers/entities/client-scope/module.mjs.map +1 -1
  288. package/dist/adapters/http/controllers/entities/client-scope/utils/index.mjs +3 -0
  289. package/dist/adapters/http/controllers/entities/client-scope/utils/validator.d.ts.map +1 -1
  290. package/dist/adapters/http/controllers/entities/client-scope/utils/validator.mjs +7 -7
  291. package/dist/adapters/http/controllers/entities/client-scope/utils/validator.mjs.map +1 -1
  292. package/dist/adapters/http/controllers/entities/identity-provide-role/index.mjs +3 -0
  293. package/dist/adapters/http/controllers/entities/identity-provide-role/module.d.ts +6 -6
  294. package/dist/adapters/http/controllers/entities/identity-provide-role/module.d.ts.map +1 -1
  295. package/dist/adapters/http/controllers/entities/identity-provide-role/module.mjs +8 -5
  296. package/dist/adapters/http/controllers/entities/identity-provide-role/module.mjs.map +1 -1
  297. package/dist/adapters/http/controllers/entities/identity-provider/index.mjs +3 -0
  298. package/dist/adapters/http/controllers/entities/identity-provider/module.d.ts +9 -9
  299. package/dist/adapters/http/controllers/entities/identity-provider/module.d.ts.map +1 -1
  300. package/dist/adapters/http/controllers/entities/identity-provider/module.mjs +11 -8
  301. package/dist/adapters/http/controllers/entities/identity-provider/module.mjs.map +1 -1
  302. package/dist/adapters/http/controllers/entities/identity-provider/types.mjs +3 -0
  303. package/dist/adapters/http/controllers/entities/index.mjs +3 -0
  304. package/dist/adapters/http/controllers/entities/permission/index.mjs +3 -0
  305. package/dist/adapters/http/controllers/entities/permission/module.d.ts +8 -8
  306. package/dist/adapters/http/controllers/entities/permission/module.d.ts.map +1 -1
  307. package/dist/adapters/http/controllers/entities/permission/module.mjs +19 -11
  308. package/dist/adapters/http/controllers/entities/permission/module.mjs.map +1 -1
  309. package/dist/adapters/http/controllers/entities/permission-policy/index.mjs +3 -0
  310. package/dist/adapters/http/controllers/entities/permission-policy/module.d.ts +5 -5
  311. package/dist/adapters/http/controllers/entities/permission-policy/module.d.ts.map +1 -1
  312. package/dist/adapters/http/controllers/entities/permission-policy/module.mjs +7 -4
  313. package/dist/adapters/http/controllers/entities/permission-policy/module.mjs.map +1 -1
  314. package/dist/adapters/http/controllers/entities/policy/index.mjs +3 -0
  315. package/dist/adapters/http/controllers/entities/policy/module.d.ts +9 -9
  316. package/dist/adapters/http/controllers/entities/policy/module.d.ts.map +1 -1
  317. package/dist/adapters/http/controllers/entities/policy/module.mjs +11 -8
  318. package/dist/adapters/http/controllers/entities/policy/module.mjs.map +1 -1
  319. package/dist/adapters/http/controllers/entities/policy/utils/attributes-validator.mjs +3 -0
  320. package/dist/adapters/http/controllers/entities/policy/utils/attributes-validator.mjs.map +1 -1
  321. package/dist/adapters/http/controllers/entities/policy/utils/index.mjs +3 -0
  322. package/dist/adapters/http/controllers/entities/policy/utils/validation.d.ts.map +1 -1
  323. package/dist/adapters/http/controllers/entities/policy/utils/validation.mjs +21 -28
  324. package/dist/adapters/http/controllers/entities/policy/utils/validation.mjs.map +1 -1
  325. package/dist/adapters/http/controllers/entities/realm/index.mjs +3 -0
  326. package/dist/adapters/http/controllers/entities/realm/module.d.ts +6 -6
  327. package/dist/adapters/http/controllers/entities/realm/module.d.ts.map +1 -1
  328. package/dist/adapters/http/controllers/entities/realm/module.mjs +8 -5
  329. package/dist/adapters/http/controllers/entities/realm/module.mjs.map +1 -1
  330. package/dist/adapters/http/controllers/entities/robot/index.mjs +3 -0
  331. package/dist/adapters/http/controllers/entities/robot/module.d.ts +7 -7
  332. package/dist/adapters/http/controllers/entities/robot/module.d.ts.map +1 -1
  333. package/dist/adapters/http/controllers/entities/robot/module.mjs +9 -6
  334. package/dist/adapters/http/controllers/entities/robot/module.mjs.map +1 -1
  335. package/dist/adapters/http/controllers/entities/robot-permission/index.mjs +3 -0
  336. package/dist/adapters/http/controllers/entities/robot-permission/module.d.ts +6 -6
  337. package/dist/adapters/http/controllers/entities/robot-permission/module.d.ts.map +1 -1
  338. package/dist/adapters/http/controllers/entities/robot-permission/module.mjs +8 -5
  339. package/dist/adapters/http/controllers/entities/robot-permission/module.mjs.map +1 -1
  340. package/dist/adapters/http/controllers/entities/robot-permission/utils/index.mjs +3 -0
  341. package/dist/adapters/http/controllers/entities/robot-permission/utils/validation.d.ts.map +1 -1
  342. package/dist/adapters/http/controllers/entities/robot-permission/utils/validation.mjs +8 -10
  343. package/dist/adapters/http/controllers/entities/robot-permission/utils/validation.mjs.map +1 -1
  344. package/dist/adapters/http/controllers/entities/robot-role/index.mjs +3 -0
  345. package/dist/adapters/http/controllers/entities/robot-role/module.d.ts +5 -5
  346. package/dist/adapters/http/controllers/entities/robot-role/module.d.ts.map +1 -1
  347. package/dist/adapters/http/controllers/entities/robot-role/module.mjs +7 -4
  348. package/dist/adapters/http/controllers/entities/robot-role/module.mjs.map +1 -1
  349. package/dist/adapters/http/controllers/entities/robot-role/utils/index.mjs +3 -0
  350. package/dist/adapters/http/controllers/entities/robot-role/utils/validation.d.ts.map +1 -1
  351. package/dist/adapters/http/controllers/entities/robot-role/utils/validation.mjs +7 -7
  352. package/dist/adapters/http/controllers/entities/robot-role/utils/validation.mjs.map +1 -1
  353. package/dist/adapters/http/controllers/entities/role/index.mjs +3 -0
  354. package/dist/adapters/http/controllers/entities/role/module.d.ts +7 -7
  355. package/dist/adapters/http/controllers/entities/role/module.d.ts.map +1 -1
  356. package/dist/adapters/http/controllers/entities/role/module.mjs +9 -6
  357. package/dist/adapters/http/controllers/entities/role/module.mjs.map +1 -1
  358. package/dist/adapters/http/controllers/entities/role-attribute/index.mjs +3 -0
  359. package/dist/adapters/http/controllers/entities/role-attribute/module.d.ts +6 -6
  360. package/dist/adapters/http/controllers/entities/role-attribute/module.d.ts.map +1 -1
  361. package/dist/adapters/http/controllers/entities/role-attribute/module.mjs +8 -5
  362. package/dist/adapters/http/controllers/entities/role-attribute/module.mjs.map +1 -1
  363. package/dist/adapters/http/controllers/entities/role-attribute/utils/index.mjs +3 -0
  364. package/dist/adapters/http/controllers/entities/role-attribute/utils/validation.d.ts.map +1 -1
  365. package/dist/adapters/http/controllers/entities/role-attribute/utils/validation.mjs +8 -16
  366. package/dist/adapters/http/controllers/entities/role-attribute/utils/validation.mjs.map +1 -1
  367. package/dist/adapters/http/controllers/entities/role-permission/index.mjs +3 -0
  368. package/dist/adapters/http/controllers/entities/role-permission/module.d.ts +6 -6
  369. package/dist/adapters/http/controllers/entities/role-permission/module.d.ts.map +1 -1
  370. package/dist/adapters/http/controllers/entities/role-permission/module.mjs +8 -5
  371. package/dist/adapters/http/controllers/entities/role-permission/module.mjs.map +1 -1
  372. package/dist/adapters/http/controllers/entities/role-permission/utils/index.mjs +3 -0
  373. package/dist/adapters/http/controllers/entities/role-permission/utils/validation.d.ts.map +1 -1
  374. package/dist/adapters/http/controllers/entities/role-permission/utils/validation.mjs +8 -10
  375. package/dist/adapters/http/controllers/entities/role-permission/utils/validation.mjs.map +1 -1
  376. package/dist/adapters/http/controllers/entities/scope/index.mjs +3 -0
  377. package/dist/adapters/http/controllers/entities/scope/module.d.ts +7 -7
  378. package/dist/adapters/http/controllers/entities/scope/module.d.ts.map +1 -1
  379. package/dist/adapters/http/controllers/entities/scope/module.mjs +9 -6
  380. package/dist/adapters/http/controllers/entities/scope/module.mjs.map +1 -1
  381. package/dist/adapters/http/controllers/entities/user/index.mjs +3 -0
  382. package/dist/adapters/http/controllers/entities/user/module.d.ts +7 -7
  383. package/dist/adapters/http/controllers/entities/user/module.d.ts.map +1 -1
  384. package/dist/adapters/http/controllers/entities/user/module.mjs +9 -6
  385. package/dist/adapters/http/controllers/entities/user/module.mjs.map +1 -1
  386. package/dist/adapters/http/controllers/entities/user-attribute/index.mjs +3 -0
  387. package/dist/adapters/http/controllers/entities/user-attribute/module.d.ts +6 -6
  388. package/dist/adapters/http/controllers/entities/user-attribute/module.d.ts.map +1 -1
  389. package/dist/adapters/http/controllers/entities/user-attribute/module.mjs +8 -5
  390. package/dist/adapters/http/controllers/entities/user-attribute/module.mjs.map +1 -1
  391. package/dist/adapters/http/controllers/entities/user-attribute/utils/index.mjs +3 -0
  392. package/dist/adapters/http/controllers/entities/user-attribute/utils/validation.d.ts.map +1 -1
  393. package/dist/adapters/http/controllers/entities/user-attribute/utils/validation.mjs +8 -16
  394. package/dist/adapters/http/controllers/entities/user-attribute/utils/validation.mjs.map +1 -1
  395. package/dist/adapters/http/controllers/entities/user-permission/index.mjs +3 -0
  396. package/dist/adapters/http/controllers/entities/user-permission/module.d.ts +6 -6
  397. package/dist/adapters/http/controllers/entities/user-permission/module.d.ts.map +1 -1
  398. package/dist/adapters/http/controllers/entities/user-permission/module.mjs +8 -5
  399. package/dist/adapters/http/controllers/entities/user-permission/module.mjs.map +1 -1
  400. package/dist/adapters/http/controllers/entities/user-permission/utils/index.mjs +3 -0
  401. package/dist/adapters/http/controllers/entities/user-permission/utils/validation.d.ts.map +1 -1
  402. package/dist/adapters/http/controllers/entities/user-permission/utils/validation.mjs +8 -10
  403. package/dist/adapters/http/controllers/entities/user-permission/utils/validation.mjs.map +1 -1
  404. package/dist/adapters/http/controllers/entities/user-role/index.mjs +3 -0
  405. package/dist/adapters/http/controllers/entities/user-role/module.d.ts +5 -5
  406. package/dist/adapters/http/controllers/entities/user-role/module.d.ts.map +1 -1
  407. package/dist/adapters/http/controllers/entities/user-role/module.mjs +7 -4
  408. package/dist/adapters/http/controllers/entities/user-role/module.mjs.map +1 -1
  409. package/dist/adapters/http/controllers/entities/user-role/utils/index.mjs +3 -0
  410. package/dist/adapters/http/controllers/entities/user-role/utils/validation.d.ts.map +1 -1
  411. package/dist/adapters/http/controllers/entities/user-role/utils/validation.mjs +7 -7
  412. package/dist/adapters/http/controllers/entities/user-role/utils/validation.mjs.map +1 -1
  413. package/dist/adapters/http/controllers/index.mjs +3 -0
  414. package/dist/adapters/http/controllers/workflows/activate/index.mjs +3 -0
  415. package/dist/adapters/http/controllers/workflows/activate/module.d.ts +2 -2
  416. package/dist/adapters/http/controllers/workflows/activate/module.d.ts.map +1 -1
  417. package/dist/adapters/http/controllers/workflows/activate/module.mjs +4 -1
  418. package/dist/adapters/http/controllers/workflows/activate/module.mjs.map +1 -1
  419. package/dist/adapters/http/controllers/workflows/activate/validator.d.ts.map +1 -1
  420. package/dist/adapters/http/controllers/workflows/activate/validator.mjs +6 -7
  421. package/dist/adapters/http/controllers/workflows/activate/validator.mjs.map +1 -1
  422. package/dist/adapters/http/controllers/workflows/authorize/index.mjs +3 -0
  423. package/dist/adapters/http/controllers/workflows/authorize/module.d.ts +3 -3
  424. package/dist/adapters/http/controllers/workflows/authorize/module.d.ts.map +1 -1
  425. package/dist/adapters/http/controllers/workflows/authorize/module.mjs +5 -2
  426. package/dist/adapters/http/controllers/workflows/authorize/module.mjs.map +1 -1
  427. package/dist/adapters/http/controllers/workflows/authorize/types.mjs +3 -0
  428. package/dist/adapters/http/controllers/workflows/index.mjs +3 -0
  429. package/dist/adapters/http/controllers/workflows/jwks/handlers/index.mjs +3 -0
  430. package/dist/adapters/http/controllers/workflows/jwks/handlers/read.mjs +3 -0
  431. package/dist/adapters/http/controllers/workflows/jwks/handlers/read.mjs.map +1 -1
  432. package/dist/adapters/http/controllers/workflows/jwks/index.mjs +3 -0
  433. package/dist/adapters/http/controllers/workflows/jwks/module.d.ts +2 -2
  434. package/dist/adapters/http/controllers/workflows/jwks/module.d.ts.map +1 -1
  435. package/dist/adapters/http/controllers/workflows/jwks/module.mjs +4 -1
  436. package/dist/adapters/http/controllers/workflows/jwks/module.mjs.map +1 -1
  437. package/dist/adapters/http/controllers/workflows/openid/index.mjs +3 -0
  438. package/dist/adapters/http/controllers/workflows/openid/module.mjs +3 -0
  439. package/dist/adapters/http/controllers/workflows/openid/module.mjs.map +1 -1
  440. package/dist/adapters/http/controllers/workflows/password-forgot/index.mjs +3 -0
  441. package/dist/adapters/http/controllers/workflows/password-forgot/module.d.ts +2 -2
  442. package/dist/adapters/http/controllers/workflows/password-forgot/module.d.ts.map +1 -1
  443. package/dist/adapters/http/controllers/workflows/password-forgot/module.mjs +4 -1
  444. package/dist/adapters/http/controllers/workflows/password-forgot/module.mjs.map +1 -1
  445. package/dist/adapters/http/controllers/workflows/password-reset/index.mjs +3 -0
  446. package/dist/adapters/http/controllers/workflows/password-reset/module.d.ts +2 -2
  447. package/dist/adapters/http/controllers/workflows/password-reset/module.d.ts.map +1 -1
  448. package/dist/adapters/http/controllers/workflows/password-reset/module.mjs +4 -1
  449. package/dist/adapters/http/controllers/workflows/password-reset/module.mjs.map +1 -1
  450. package/dist/adapters/http/controllers/workflows/register/index.mjs +3 -0
  451. package/dist/adapters/http/controllers/workflows/register/module.d.ts +2 -2
  452. package/dist/adapters/http/controllers/workflows/register/module.d.ts.map +1 -1
  453. package/dist/adapters/http/controllers/workflows/register/module.mjs +4 -1
  454. package/dist/adapters/http/controllers/workflows/register/module.mjs.map +1 -1
  455. package/dist/adapters/http/controllers/workflows/status/index.mjs +3 -0
  456. package/dist/adapters/http/controllers/workflows/status/module.mjs +3 -0
  457. package/dist/adapters/http/controllers/workflows/status/module.mjs.map +1 -1
  458. package/dist/adapters/http/controllers/workflows/token/index.mjs +3 -0
  459. package/dist/adapters/http/controllers/workflows/token/module.d.ts +5 -5
  460. package/dist/adapters/http/controllers/workflows/token/module.d.ts.map +1 -1
  461. package/dist/adapters/http/controllers/workflows/token/module.mjs +7 -4
  462. package/dist/adapters/http/controllers/workflows/token/module.mjs.map +1 -1
  463. package/dist/adapters/http/controllers/workflows/token/types.mjs +3 -0
  464. package/dist/adapters/http/controllers/workflows/token/utils/extract.d.ts +2 -2
  465. package/dist/adapters/http/controllers/workflows/token/utils/extract.d.ts.map +1 -1
  466. package/dist/adapters/http/controllers/workflows/token/utils/extract.mjs +3 -0
  467. package/dist/adapters/http/controllers/workflows/token/utils/extract.mjs.map +1 -1
  468. package/dist/adapters/http/controllers/workflows/token/utils/index.mjs +3 -0
  469. package/dist/adapters/http/controllers/workflows/token/utils/validator.d.ts.map +1 -1
  470. package/dist/adapters/http/controllers/workflows/token/utils/validator.mjs +6 -7
  471. package/dist/adapters/http/controllers/workflows/token/utils/validator.mjs.map +1 -1
  472. package/dist/adapters/http/index.mjs +3 -0
  473. package/dist/adapters/http/middleware/built-in/assets.d.ts +2 -2
  474. package/dist/adapters/http/middleware/built-in/assets.d.ts.map +1 -1
  475. package/dist/adapters/http/middleware/built-in/assets.mjs +3 -0
  476. package/dist/adapters/http/middleware/built-in/assets.mjs.map +1 -1
  477. package/dist/adapters/http/middleware/built-in/authorization/factory.mjs +3 -0
  478. package/dist/adapters/http/middleware/built-in/authorization/factory.mjs.map +1 -1
  479. package/dist/adapters/http/middleware/built-in/authorization/index.mjs +3 -0
  480. package/dist/adapters/http/middleware/built-in/authorization/module.d.ts +4 -4
  481. package/dist/adapters/http/middleware/built-in/authorization/module.d.ts.map +1 -1
  482. package/dist/adapters/http/middleware/built-in/authorization/module.mjs +3 -0
  483. package/dist/adapters/http/middleware/built-in/authorization/module.mjs.map +1 -1
  484. package/dist/adapters/http/middleware/built-in/authorization/types.mjs +3 -0
  485. package/dist/adapters/http/middleware/built-in/basic.d.ts +2 -2
  486. package/dist/adapters/http/middleware/built-in/basic.d.ts.map +1 -1
  487. package/dist/adapters/http/middleware/built-in/basic.mjs +3 -0
  488. package/dist/adapters/http/middleware/built-in/basic.mjs.map +1 -1
  489. package/dist/adapters/http/middleware/built-in/cors.d.ts +2 -2
  490. package/dist/adapters/http/middleware/built-in/cors.d.ts.map +1 -1
  491. package/dist/adapters/http/middleware/built-in/cors.mjs +3 -0
  492. package/dist/adapters/http/middleware/built-in/cors.mjs.map +1 -1
  493. package/dist/adapters/http/middleware/built-in/error.d.ts +2 -2
  494. package/dist/adapters/http/middleware/built-in/error.d.ts.map +1 -1
  495. package/dist/adapters/http/middleware/built-in/error.mjs +3 -0
  496. package/dist/adapters/http/middleware/built-in/error.mjs.map +1 -1
  497. package/dist/adapters/http/middleware/built-in/index.mjs +3 -0
  498. package/dist/adapters/http/middleware/built-in/loggedin/index.mjs +3 -0
  499. package/dist/adapters/http/middleware/built-in/loggedin/module.d.ts +2 -2
  500. package/dist/adapters/http/middleware/built-in/loggedin/module.d.ts.map +1 -1
  501. package/dist/adapters/http/middleware/built-in/loggedin/module.mjs +3 -0
  502. package/dist/adapters/http/middleware/built-in/loggedin/module.mjs.map +1 -1
  503. package/dist/adapters/http/middleware/built-in/loggedin/user.d.ts +2 -2
  504. package/dist/adapters/http/middleware/built-in/loggedin/user.d.ts.map +1 -1
  505. package/dist/adapters/http/middleware/built-in/loggedin/user.mjs +3 -0
  506. package/dist/adapters/http/middleware/built-in/loggedin/user.mjs.map +1 -1
  507. package/dist/adapters/http/middleware/built-in/logger.mjs +3 -0
  508. package/dist/adapters/http/middleware/built-in/logger.mjs.map +1 -1
  509. package/dist/adapters/http/middleware/built-in/prometheus.d.ts +2 -2
  510. package/dist/adapters/http/middleware/built-in/prometheus.d.ts.map +1 -1
  511. package/dist/adapters/http/middleware/built-in/prometheus.mjs +3 -0
  512. package/dist/adapters/http/middleware/built-in/prometheus.mjs.map +1 -1
  513. package/dist/adapters/http/middleware/built-in/rate-limit.d.ts +2 -2
  514. package/dist/adapters/http/middleware/built-in/rate-limit.d.ts.map +1 -1
  515. package/dist/adapters/http/middleware/built-in/rate-limit.mjs +3 -0
  516. package/dist/adapters/http/middleware/built-in/rate-limit.mjs.map +1 -1
  517. package/dist/adapters/http/middleware/built-in/realm-resolver/factory.mjs +3 -0
  518. package/dist/adapters/http/middleware/built-in/realm-resolver/factory.mjs.map +1 -1
  519. package/dist/adapters/http/middleware/built-in/realm-resolver/index.mjs +3 -0
  520. package/dist/adapters/http/middleware/built-in/realm-resolver/module.d.ts +2 -2
  521. package/dist/adapters/http/middleware/built-in/realm-resolver/module.d.ts.map +1 -1
  522. package/dist/adapters/http/middleware/built-in/realm-resolver/module.mjs +3 -0
  523. package/dist/adapters/http/middleware/built-in/realm-resolver/module.mjs.map +1 -1
  524. package/dist/adapters/http/middleware/built-in/realm-resolver/types.mjs +3 -0
  525. package/dist/adapters/http/middleware/built-in/swagger.mjs +3 -0
  526. package/dist/adapters/http/middleware/built-in/swagger.mjs.map +1 -1
  527. package/dist/adapters/http/middleware/index.mjs +3 -0
  528. package/dist/adapters/http/request/constants.mjs +4 -1
  529. package/dist/adapters/http/request/constants.mjs.map +1 -1
  530. package/dist/adapters/http/request/helpers/actor.d.ts +2 -2
  531. package/dist/adapters/http/request/helpers/actor.d.ts.map +1 -1
  532. package/dist/adapters/http/request/helpers/actor.mjs +3 -0
  533. package/dist/adapters/http/request/helpers/actor.mjs.map +1 -1
  534. package/dist/adapters/http/request/helpers/body-realm-id.mjs +3 -0
  535. package/dist/adapters/http/request/helpers/body-realm-id.mjs.map +1 -1
  536. package/dist/adapters/http/request/helpers/identity.d.ts +6 -6
  537. package/dist/adapters/http/request/helpers/identity.d.ts.map +1 -1
  538. package/dist/adapters/http/request/helpers/identity.mjs +3 -0
  539. package/dist/adapters/http/request/helpers/identity.mjs.map +1 -1
  540. package/dist/adapters/http/request/helpers/index.mjs +3 -0
  541. package/dist/adapters/http/request/helpers/locations.d.ts +2 -2
  542. package/dist/adapters/http/request/helpers/locations.d.ts.map +1 -1
  543. package/dist/adapters/http/request/helpers/locations.mjs +3 -0
  544. package/dist/adapters/http/request/helpers/locations.mjs.map +1 -1
  545. package/dist/adapters/http/request/helpers/param-id.d.ts +5 -5
  546. package/dist/adapters/http/request/helpers/param-id.d.ts.map +1 -1
  547. package/dist/adapters/http/request/helpers/param-id.mjs +3 -0
  548. package/dist/adapters/http/request/helpers/param-id.mjs.map +1 -1
  549. package/dist/adapters/http/request/helpers/realm-id.d.ts +4 -4
  550. package/dist/adapters/http/request/helpers/realm-id.d.ts.map +1 -1
  551. package/dist/adapters/http/request/helpers/realm-id.mjs +3 -0
  552. package/dist/adapters/http/request/helpers/realm-id.mjs.map +1 -1
  553. package/dist/adapters/http/request/helpers/scopes.d.ts +3 -3
  554. package/dist/adapters/http/request/helpers/scopes.d.ts.map +1 -1
  555. package/dist/adapters/http/request/helpers/scopes.mjs +3 -0
  556. package/dist/adapters/http/request/helpers/scopes.mjs.map +1 -1
  557. package/dist/adapters/http/request/helpers/token.d.ts +3 -3
  558. package/dist/adapters/http/request/helpers/token.d.ts.map +1 -1
  559. package/dist/adapters/http/request/helpers/token.mjs +3 -0
  560. package/dist/adapters/http/request/helpers/token.mjs.map +1 -1
  561. package/dist/adapters/http/request/index.mjs +3 -0
  562. package/dist/adapters/http/request/permission/helper.d.ts +3 -3
  563. package/dist/adapters/http/request/permission/helper.d.ts.map +1 -1
  564. package/dist/adapters/http/request/permission/helper.mjs +3 -0
  565. package/dist/adapters/http/request/permission/helper.mjs.map +1 -1
  566. package/dist/adapters/http/request/permission/index.mjs +3 -0
  567. package/dist/adapters/http/request/permission/module.d.ts +3 -3
  568. package/dist/adapters/http/request/permission/module.d.ts.map +1 -1
  569. package/dist/adapters/http/request/permission/module.mjs +3 -0
  570. package/dist/adapters/http/request/permission/module.mjs.map +1 -1
  571. package/dist/adapters/shared/ldap/factory.mjs +3 -0
  572. package/dist/adapters/shared/ldap/factory.mjs.map +1 -1
  573. package/dist/adapters/shared/ldap/index.mjs +3 -0
  574. package/dist/adapters/shared/ldap/module.mjs +3 -0
  575. package/dist/adapters/shared/ldap/module.mjs.map +1 -1
  576. package/dist/adapters/shared/ldap/types.mjs +3 -0
  577. package/dist/app/builder.mjs +3 -0
  578. package/dist/app/builder.mjs.map +1 -1
  579. package/dist/app/factory.mjs +3 -0
  580. package/dist/app/factory.mjs.map +1 -1
  581. package/dist/app/index.mjs +3 -0
  582. package/dist/app/module.mjs +3 -0
  583. package/dist/app/modules/authentication/constants.mjs +3 -0
  584. package/dist/app/modules/authentication/constants.mjs.map +1 -1
  585. package/dist/app/modules/authentication/index.mjs +3 -0
  586. package/dist/app/modules/authentication/module.mjs +3 -0
  587. package/dist/app/modules/authentication/module.mjs.map +1 -1
  588. package/dist/app/modules/authentication/repositories/constants.mjs +4 -1
  589. package/dist/app/modules/authentication/repositories/constants.mjs.map +1 -1
  590. package/dist/app/modules/authentication/repositories/index.mjs +3 -0
  591. package/dist/app/modules/authentication/repositories/session.mjs +3 -0
  592. package/dist/app/modules/authentication/repositories/session.mjs.map +1 -1
  593. package/dist/app/modules/cache/constants.mjs +3 -0
  594. package/dist/app/modules/cache/constants.mjs.map +1 -1
  595. package/dist/app/modules/cache/index.mjs +3 -0
  596. package/dist/app/modules/cache/module.mjs +3 -0
  597. package/dist/app/modules/cache/module.mjs.map +1 -1
  598. package/dist/app/modules/components/index.mjs +3 -0
  599. package/dist/app/modules/components/module.mjs +3 -0
  600. package/dist/app/modules/components/module.mjs.map +1 -1
  601. package/dist/app/modules/config/constants.mjs +4 -1
  602. package/dist/app/modules/config/constants.mjs.map +1 -1
  603. package/dist/app/modules/config/index.mjs +3 -0
  604. package/dist/app/modules/config/module.mjs +3 -0
  605. package/dist/app/modules/config/module.mjs.map +1 -1
  606. package/dist/app/modules/config/normalize.mjs +3 -0
  607. package/dist/app/modules/config/normalize.mjs.map +1 -1
  608. package/dist/app/modules/config/parse.mjs +3 -0
  609. package/dist/app/modules/config/parse.mjs.map +1 -1
  610. package/dist/app/modules/config/read/env.mjs +3 -0
  611. package/dist/app/modules/config/read/env.mjs.map +1 -1
  612. package/dist/app/modules/config/read/fs.mjs +3 -0
  613. package/dist/app/modules/config/read/fs.mjs.map +1 -1
  614. package/dist/app/modules/config/read/index.mjs +3 -0
  615. package/dist/app/modules/config/read/module.mjs +3 -0
  616. package/dist/app/modules/config/read/module.mjs.map +1 -1
  617. package/dist/app/modules/config/read/types.mjs +3 -0
  618. package/dist/app/modules/config/types.mjs +3 -0
  619. package/dist/app/modules/constants.mjs +3 -0
  620. package/dist/app/modules/constants.mjs.map +1 -1
  621. package/dist/app/modules/database/constants.mjs +3 -0
  622. package/dist/app/modules/database/constants.mjs.map +1 -1
  623. package/dist/app/modules/database/index.mjs +3 -0
  624. package/dist/app/modules/database/module.mjs +3 -0
  625. package/dist/app/modules/database/module.mjs.map +1 -1
  626. package/dist/app/modules/database/repositories/bindings.mjs +3 -0
  627. package/dist/app/modules/database/repositories/bindings.mjs.map +1 -1
  628. package/dist/app/modules/database/repositories/client/index.mjs +3 -0
  629. package/dist/app/modules/database/repositories/client/repository.mjs +3 -0
  630. package/dist/app/modules/database/repositories/client/repository.mjs.map +1 -1
  631. package/dist/app/modules/database/repositories/client-permission/index.mjs +3 -0
  632. package/dist/app/modules/database/repositories/client-permission/repository.mjs +3 -0
  633. package/dist/app/modules/database/repositories/client-permission/repository.mjs.map +1 -1
  634. package/dist/app/modules/database/repositories/client-role/index.mjs +3 -0
  635. package/dist/app/modules/database/repositories/client-role/repository.mjs +3 -0
  636. package/dist/app/modules/database/repositories/client-role/repository.mjs.map +1 -1
  637. package/dist/app/modules/database/repositories/client-scope/index.mjs +3 -0
  638. package/dist/app/modules/database/repositories/client-scope/repository.mjs +3 -0
  639. package/dist/app/modules/database/repositories/client-scope/repository.mjs.map +1 -1
  640. package/dist/app/modules/database/repositories/helpers.mjs +3 -0
  641. package/dist/app/modules/database/repositories/helpers.mjs.map +1 -1
  642. package/dist/app/modules/database/repositories/identity-provider/index.mjs +3 -0
  643. package/dist/app/modules/database/repositories/identity-provider/repository.mjs +3 -0
  644. package/dist/app/modules/database/repositories/identity-provider/repository.mjs.map +1 -1
  645. package/dist/app/modules/database/repositories/identity-provider-role-mapping/index.mjs +3 -0
  646. package/dist/app/modules/database/repositories/identity-provider-role-mapping/repository.mjs +3 -0
  647. package/dist/app/modules/database/repositories/identity-provider-role-mapping/repository.mjs.map +1 -1
  648. package/dist/app/modules/database/repositories/index.mjs +3 -0
  649. package/dist/app/modules/database/repositories/permission/index.mjs +3 -0
  650. package/dist/app/modules/database/repositories/permission/repository.mjs +3 -0
  651. package/dist/app/modules/database/repositories/permission/repository.mjs.map +1 -1
  652. package/dist/app/modules/database/repositories/permission-policy/index.mjs +3 -0
  653. package/dist/app/modules/database/repositories/permission-policy/repository.mjs +3 -0
  654. package/dist/app/modules/database/repositories/permission-policy/repository.mjs.map +1 -1
  655. package/dist/app/modules/database/repositories/permission-provider/index.mjs +3 -0
  656. package/dist/app/modules/database/repositories/permission-provider/module.mjs +3 -0
  657. package/dist/app/modules/database/repositories/permission-provider/module.mjs.map +1 -1
  658. package/dist/app/modules/database/repositories/policy/index.mjs +3 -0
  659. package/dist/app/modules/database/repositories/policy/repository.mjs +3 -0
  660. package/dist/app/modules/database/repositories/policy/repository.mjs.map +1 -1
  661. package/dist/app/modules/database/repositories/realm/index.mjs +3 -0
  662. package/dist/app/modules/database/repositories/realm/repository.mjs +3 -0
  663. package/dist/app/modules/database/repositories/realm/repository.mjs.map +1 -1
  664. package/dist/app/modules/database/repositories/robot/index.mjs +3 -0
  665. package/dist/app/modules/database/repositories/robot/repository.mjs +3 -0
  666. package/dist/app/modules/database/repositories/robot/repository.mjs.map +1 -1
  667. package/dist/app/modules/database/repositories/robot-permission/index.mjs +3 -0
  668. package/dist/app/modules/database/repositories/robot-permission/repository.mjs +3 -0
  669. package/dist/app/modules/database/repositories/robot-permission/repository.mjs.map +1 -1
  670. package/dist/app/modules/database/repositories/robot-role/index.mjs +3 -0
  671. package/dist/app/modules/database/repositories/robot-role/repository.mjs +3 -0
  672. package/dist/app/modules/database/repositories/robot-role/repository.mjs.map +1 -1
  673. package/dist/app/modules/database/repositories/role/index.mjs +3 -0
  674. package/dist/app/modules/database/repositories/role/repository.mjs +3 -0
  675. package/dist/app/modules/database/repositories/role/repository.mjs.map +1 -1
  676. package/dist/app/modules/database/repositories/role-attribute/index.mjs +3 -0
  677. package/dist/app/modules/database/repositories/role-attribute/repository.mjs +3 -0
  678. package/dist/app/modules/database/repositories/role-attribute/repository.mjs.map +1 -1
  679. package/dist/app/modules/database/repositories/role-permission/index.mjs +3 -0
  680. package/dist/app/modules/database/repositories/role-permission/repository.mjs +3 -0
  681. package/dist/app/modules/database/repositories/role-permission/repository.mjs.map +1 -1
  682. package/dist/app/modules/database/repositories/scope/index.mjs +3 -0
  683. package/dist/app/modules/database/repositories/scope/repository.mjs +3 -0
  684. package/dist/app/modules/database/repositories/scope/repository.mjs.map +1 -1
  685. package/dist/app/modules/database/repositories/user/index.mjs +3 -0
  686. package/dist/app/modules/database/repositories/user/repository.mjs +3 -0
  687. package/dist/app/modules/database/repositories/user/repository.mjs.map +1 -1
  688. package/dist/app/modules/database/repositories/user-attribute/index.mjs +3 -0
  689. package/dist/app/modules/database/repositories/user-attribute/repository.mjs +3 -0
  690. package/dist/app/modules/database/repositories/user-attribute/repository.mjs.map +1 -1
  691. package/dist/app/modules/database/repositories/user-permission/index.mjs +3 -0
  692. package/dist/app/modules/database/repositories/user-permission/repository.mjs +3 -0
  693. package/dist/app/modules/database/repositories/user-permission/repository.mjs.map +1 -1
  694. package/dist/app/modules/database/repositories/user-role/index.mjs +3 -0
  695. package/dist/app/modules/database/repositories/user-role/repository.mjs +3 -0
  696. package/dist/app/modules/database/repositories/user-role/repository.mjs.map +1 -1
  697. package/dist/app/modules/http/constants.mjs +3 -0
  698. package/dist/app/modules/http/constants.mjs.map +1 -1
  699. package/dist/app/modules/http/index.mjs +3 -0
  700. package/dist/app/modules/http/module.mjs +5 -2
  701. package/dist/app/modules/http/module.mjs.map +1 -1
  702. package/dist/app/modules/http/modules/controller.d.ts +2 -2
  703. package/dist/app/modules/http/modules/controller.d.ts.map +1 -1
  704. package/dist/app/modules/http/modules/controller.mjs +3 -0
  705. package/dist/app/modules/http/modules/controller.mjs.map +1 -1
  706. package/dist/app/modules/http/modules/index.mjs +3 -0
  707. package/dist/app/modules/http/modules/middleware.d.ts +12 -12
  708. package/dist/app/modules/http/modules/middleware.d.ts.map +1 -1
  709. package/dist/app/modules/http/modules/middleware.mjs +3 -0
  710. package/dist/app/modules/http/modules/middleware.mjs.map +1 -1
  711. package/dist/app/modules/identity/constants.mjs +3 -0
  712. package/dist/app/modules/identity/constants.mjs.map +1 -1
  713. package/dist/app/modules/identity/index.mjs +3 -0
  714. package/dist/app/modules/identity/module.mjs +3 -0
  715. package/dist/app/modules/identity/module.mjs.map +1 -1
  716. package/dist/app/modules/identity/repositories/client.mjs +3 -0
  717. package/dist/app/modules/identity/repositories/client.mjs.map +1 -1
  718. package/dist/app/modules/identity/repositories/index.mjs +3 -0
  719. package/dist/app/modules/identity/repositories/provider/account/index.mjs +3 -0
  720. package/dist/app/modules/identity/repositories/provider/account/module.mjs +3 -0
  721. package/dist/app/modules/identity/repositories/provider/account/module.mjs.map +1 -1
  722. package/dist/app/modules/identity/repositories/provider/index.mjs +3 -0
  723. package/dist/app/modules/identity/repositories/provider/mapper/attribute.mjs +3 -0
  724. package/dist/app/modules/identity/repositories/provider/mapper/attribute.mjs.map +1 -1
  725. package/dist/app/modules/identity/repositories/provider/mapper/index.mjs +3 -0
  726. package/dist/app/modules/identity/repositories/provider/mapper/permission.mjs +3 -0
  727. package/dist/app/modules/identity/repositories/provider/mapper/permission.mjs.map +1 -1
  728. package/dist/app/modules/identity/repositories/provider/mapper/role.mjs +3 -0
  729. package/dist/app/modules/identity/repositories/provider/mapper/role.mjs.map +1 -1
  730. package/dist/app/modules/identity/repositories/robot.mjs +3 -0
  731. package/dist/app/modules/identity/repositories/robot.mjs.map +1 -1
  732. package/dist/app/modules/identity/repositories/user.mjs +3 -0
  733. package/dist/app/modules/identity/repositories/user.mjs.map +1 -1
  734. package/dist/app/modules/index.mjs +3 -0
  735. package/dist/app/modules/ldap/constants.mjs +3 -0
  736. package/dist/app/modules/ldap/constants.mjs.map +1 -1
  737. package/dist/app/modules/ldap/index.mjs +3 -0
  738. package/dist/app/modules/ldap/module.mjs +3 -0
  739. package/dist/app/modules/ldap/module.mjs.map +1 -1
  740. package/dist/app/modules/logger/constants.mjs +3 -0
  741. package/dist/app/modules/logger/constants.mjs.map +1 -1
  742. package/dist/app/modules/logger/index.mjs +3 -0
  743. package/dist/app/modules/logger/module.mjs +3 -0
  744. package/dist/app/modules/logger/module.mjs.map +1 -1
  745. package/dist/app/modules/mail/adapter/index.mjs +3 -0
  746. package/dist/app/modules/mail/adapter/smtp/module.mjs +3 -0
  747. package/dist/app/modules/mail/adapter/smtp/module.mjs.map +1 -1
  748. package/dist/app/modules/mail/adapter/smtp/smtp.mjs +3 -0
  749. package/dist/app/modules/mail/adapter/smtp/smtp.mjs.map +1 -1
  750. package/dist/app/modules/mail/adapter/smtp/types.mjs +3 -0
  751. package/dist/app/modules/mail/adapter/void.mjs +3 -0
  752. package/dist/app/modules/mail/adapter/void.mjs.map +1 -1
  753. package/dist/app/modules/mail/constants.mjs +3 -0
  754. package/dist/app/modules/mail/constants.mjs.map +1 -1
  755. package/dist/app/modules/mail/index.mjs +3 -0
  756. package/dist/app/modules/mail/module.mjs +3 -0
  757. package/dist/app/modules/mail/module.mjs.map +1 -1
  758. package/dist/app/modules/oauth2/constants.mjs +3 -0
  759. package/dist/app/modules/oauth2/constants.mjs.map +1 -1
  760. package/dist/app/modules/oauth2/index.mjs +3 -0
  761. package/dist/app/modules/oauth2/module.mjs +3 -0
  762. package/dist/app/modules/oauth2/module.mjs.map +1 -1
  763. package/dist/app/modules/oauth2/repositories/authorize/code/index.mjs +3 -0
  764. package/dist/app/modules/oauth2/repositories/authorize/code/repository.mjs +3 -0
  765. package/dist/app/modules/oauth2/repositories/authorize/code/repository.mjs.map +1 -1
  766. package/dist/app/modules/oauth2/repositories/authorize/index.mjs +3 -0
  767. package/dist/app/modules/oauth2/repositories/authorize/state/index.mjs +3 -0
  768. package/dist/app/modules/oauth2/repositories/authorize/state/repository.mjs +3 -0
  769. package/dist/app/modules/oauth2/repositories/authorize/state/repository.mjs.map +1 -1
  770. package/dist/app/modules/oauth2/repositories/client/index.mjs +3 -0
  771. package/dist/app/modules/oauth2/repositories/client/repository.mjs +3 -0
  772. package/dist/app/modules/oauth2/repositories/client/repository.mjs.map +1 -1
  773. package/dist/app/modules/oauth2/repositories/constants.mjs +4 -1
  774. package/dist/app/modules/oauth2/repositories/constants.mjs.map +1 -1
  775. package/dist/app/modules/oauth2/repositories/index.mjs +3 -0
  776. package/dist/app/modules/oauth2/repositories/key/index.mjs +3 -0
  777. package/dist/app/modules/oauth2/repositories/key/repository.mjs +3 -0
  778. package/dist/app/modules/oauth2/repositories/key/repository.mjs.map +1 -1
  779. package/dist/app/modules/oauth2/repositories/scope/index.mjs +3 -0
  780. package/dist/app/modules/oauth2/repositories/scope/repository.mjs +3 -0
  781. package/dist/app/modules/oauth2/repositories/scope/repository.mjs.map +1 -1
  782. package/dist/app/modules/oauth2/repositories/token/index.mjs +3 -0
  783. package/dist/app/modules/oauth2/repositories/token/repository.mjs +3 -0
  784. package/dist/app/modules/oauth2/repositories/token/repository.mjs.map +1 -1
  785. package/dist/app/modules/provisioning/index.mjs +3 -0
  786. package/dist/app/modules/provisioning/module.mjs +3 -0
  787. package/dist/app/modules/provisioning/module.mjs.map +1 -1
  788. package/dist/app/modules/provisioning/sources/composite/index.mjs +3 -0
  789. package/dist/app/modules/provisioning/sources/composite/module.mjs +3 -0
  790. package/dist/app/modules/provisioning/sources/composite/module.mjs.map +1 -1
  791. package/dist/app/modules/provisioning/sources/default/index.mjs +3 -0
  792. package/dist/app/modules/provisioning/sources/default/module.mjs +3 -0
  793. package/dist/app/modules/provisioning/sources/default/module.mjs.map +1 -1
  794. package/dist/app/modules/provisioning/sources/default/types.mjs +3 -0
  795. package/dist/app/modules/provisioning/sources/file/index.mjs +3 -0
  796. package/dist/app/modules/provisioning/sources/file/module.mjs +3 -0
  797. package/dist/app/modules/provisioning/sources/file/module.mjs.map +1 -1
  798. package/dist/app/modules/provisioning/sources/file/types.mjs +3 -0
  799. package/dist/app/modules/provisioning/sources/index.mjs +3 -0
  800. package/dist/app/modules/runtime/index.mjs +3 -0
  801. package/dist/app/modules/runtime/module.mjs +3 -0
  802. package/dist/app/modules/runtime/module.mjs.map +1 -1
  803. package/dist/app/types.mjs +3 -0
  804. package/dist/cli/commands/healthcheck.mjs +3 -0
  805. package/dist/cli/commands/healthcheck.mjs.map +1 -1
  806. package/dist/cli/commands/index.mjs +3 -0
  807. package/dist/cli/commands/migration.mjs +4 -1
  808. package/dist/cli/commands/migration.mjs.map +1 -1
  809. package/dist/cli/commands/reset.mjs +3 -0
  810. package/dist/cli/commands/reset.mjs.map +1 -1
  811. package/dist/cli/commands/start.mjs +3 -0
  812. package/dist/cli/commands/start.mjs.map +1 -1
  813. package/dist/cli/index.mjs +3 -0
  814. package/dist/cli/index.mjs.map +1 -1
  815. package/dist/cli/module.mjs +3 -0
  816. package/dist/cli/module.mjs.map +1 -1
  817. package/dist/components/database/index.mjs +3 -0
  818. package/dist/components/database/unique-entries/factory.mjs +3 -0
  819. package/dist/components/database/unique-entries/factory.mjs.map +1 -1
  820. package/dist/components/database/unique-entries/index.mjs +3 -0
  821. package/dist/components/database/unique-entries/module.mjs +3 -0
  822. package/dist/components/database/unique-entries/module.mjs.map +1 -1
  823. package/dist/components/index.mjs +3 -0
  824. package/dist/components/oauth2-cleaner/index.mjs +3 -0
  825. package/dist/components/oauth2-cleaner/module.mjs +3 -0
  826. package/dist/components/oauth2-cleaner/module.mjs.map +1 -1
  827. package/dist/components/types.mjs +3 -0
  828. package/dist/core/authentication/base.mjs +3 -0
  829. package/dist/core/authentication/base.mjs.map +1 -1
  830. package/dist/core/authentication/credential/entities/client/index.mjs +3 -0
  831. package/dist/core/authentication/credential/entities/client/module.mjs +3 -0
  832. package/dist/core/authentication/credential/entities/client/module.mjs.map +1 -1
  833. package/dist/core/authentication/credential/entities/index.mjs +3 -0
  834. package/dist/core/authentication/credential/entities/robot/index.mjs +3 -0
  835. package/dist/core/authentication/credential/entities/robot/module.mjs +3 -0
  836. package/dist/core/authentication/credential/entities/robot/module.mjs.map +1 -1
  837. package/dist/core/authentication/credential/entities/user/index.mjs +3 -0
  838. package/dist/core/authentication/credential/entities/user/module.mjs +3 -0
  839. package/dist/core/authentication/credential/entities/user/module.mjs.map +1 -1
  840. package/dist/core/authentication/credential/index.mjs +3 -0
  841. package/dist/core/authentication/credential/types.mjs +3 -0
  842. package/dist/core/authentication/entities/client/index.mjs +3 -0
  843. package/dist/core/authentication/entities/client/module.mjs +3 -0
  844. package/dist/core/authentication/entities/client/module.mjs.map +1 -1
  845. package/dist/core/authentication/entities/index.mjs +3 -0
  846. package/dist/core/authentication/entities/robot/index.mjs +3 -0
  847. package/dist/core/authentication/entities/robot/module.mjs +3 -0
  848. package/dist/core/authentication/entities/robot/module.mjs.map +1 -1
  849. package/dist/core/authentication/entities/user/index.mjs +3 -0
  850. package/dist/core/authentication/entities/user/module.mjs +3 -0
  851. package/dist/core/authentication/entities/user/module.mjs.map +1 -1
  852. package/dist/core/authentication/index.mjs +3 -0
  853. package/dist/core/authentication/module.mjs +3 -0
  854. package/dist/core/authentication/module.mjs.map +1 -1
  855. package/dist/core/authentication/session/index.mjs +3 -0
  856. package/dist/core/authentication/session/module.mjs +3 -0
  857. package/dist/core/authentication/session/module.mjs.map +1 -1
  858. package/dist/core/authentication/session/types.mjs +3 -0
  859. package/dist/core/authentication/types.mjs +3 -0
  860. package/dist/core/entities/client/index.mjs +3 -0
  861. package/dist/core/entities/client/service.mjs +3 -0
  862. package/dist/core/entities/client/service.mjs.map +1 -1
  863. package/dist/core/entities/client/types.mjs +3 -0
  864. package/dist/core/entities/client-permission/index.mjs +3 -0
  865. package/dist/core/entities/client-permission/service.mjs +3 -0
  866. package/dist/core/entities/client-permission/service.mjs.map +1 -1
  867. package/dist/core/entities/client-permission/types.mjs +3 -0
  868. package/dist/core/entities/client-role/index.mjs +3 -0
  869. package/dist/core/entities/client-role/service.mjs +3 -0
  870. package/dist/core/entities/client-role/service.mjs.map +1 -1
  871. package/dist/core/entities/client-role/types.mjs +3 -0
  872. package/dist/core/entities/client-scope/index.mjs +3 -0
  873. package/dist/core/entities/client-scope/service.mjs +3 -0
  874. package/dist/core/entities/client-scope/service.mjs.map +1 -1
  875. package/dist/core/entities/client-scope/types.mjs +3 -0
  876. package/dist/core/entities/identity-provider/index.mjs +3 -0
  877. package/dist/core/entities/identity-provider/types.mjs +3 -0
  878. package/dist/core/entities/identity-provider-role-mapping/index.mjs +3 -0
  879. package/dist/core/entities/identity-provider-role-mapping/service.mjs +3 -0
  880. package/dist/core/entities/identity-provider-role-mapping/service.mjs.map +1 -1
  881. package/dist/core/entities/identity-provider-role-mapping/types.mjs +3 -0
  882. package/dist/core/entities/index.mjs +3 -0
  883. package/dist/core/entities/permission/index.mjs +3 -0
  884. package/dist/core/entities/permission/service.mjs +3 -0
  885. package/dist/core/entities/permission/service.mjs.map +1 -1
  886. package/dist/core/entities/permission/types.mjs +3 -0
  887. package/dist/core/entities/permission-policy/index.mjs +3 -0
  888. package/dist/core/entities/permission-policy/service.mjs +3 -0
  889. package/dist/core/entities/permission-policy/service.mjs.map +1 -1
  890. package/dist/core/entities/permission-policy/types.mjs +3 -0
  891. package/dist/core/entities/policy/attributes-validator.mjs +3 -0
  892. package/dist/core/entities/policy/attributes-validator.mjs.map +1 -1
  893. package/dist/core/entities/policy/index.mjs +3 -0
  894. package/dist/core/entities/policy/service.mjs +3 -0
  895. package/dist/core/entities/policy/service.mjs.map +1 -1
  896. package/dist/core/entities/policy/types.mjs +3 -0
  897. package/dist/core/entities/realm/index.mjs +3 -0
  898. package/dist/core/entities/realm/service.mjs +3 -0
  899. package/dist/core/entities/realm/service.mjs.map +1 -1
  900. package/dist/core/entities/realm/types.mjs +3 -0
  901. package/dist/core/entities/robot/index.mjs +3 -0
  902. package/dist/core/entities/robot/service.mjs +3 -0
  903. package/dist/core/entities/robot/service.mjs.map +1 -1
  904. package/dist/core/entities/robot/types.mjs +3 -0
  905. package/dist/core/entities/robot-permission/index.mjs +3 -0
  906. package/dist/core/entities/robot-permission/service.mjs +3 -0
  907. package/dist/core/entities/robot-permission/service.mjs.map +1 -1
  908. package/dist/core/entities/robot-permission/types.mjs +3 -0
  909. package/dist/core/entities/robot-role/index.mjs +3 -0
  910. package/dist/core/entities/robot-role/service.mjs +3 -0
  911. package/dist/core/entities/robot-role/service.mjs.map +1 -1
  912. package/dist/core/entities/robot-role/types.mjs +3 -0
  913. package/dist/core/entities/role/index.mjs +3 -0
  914. package/dist/core/entities/role/service.mjs +3 -0
  915. package/dist/core/entities/role/service.mjs.map +1 -1
  916. package/dist/core/entities/role/types.mjs +3 -0
  917. package/dist/core/entities/role-attribute/index.mjs +3 -0
  918. package/dist/core/entities/role-attribute/service.mjs +3 -0
  919. package/dist/core/entities/role-attribute/service.mjs.map +1 -1
  920. package/dist/core/entities/role-attribute/types.mjs +3 -0
  921. package/dist/core/entities/role-permission/index.mjs +3 -0
  922. package/dist/core/entities/role-permission/service.mjs +3 -0
  923. package/dist/core/entities/role-permission/service.mjs.map +1 -1
  924. package/dist/core/entities/role-permission/types.mjs +3 -0
  925. package/dist/core/entities/scope/index.mjs +3 -0
  926. package/dist/core/entities/scope/service.mjs +3 -0
  927. package/dist/core/entities/scope/service.mjs.map +1 -1
  928. package/dist/core/entities/scope/types.mjs +3 -0
  929. package/dist/core/entities/user/index.mjs +3 -0
  930. package/dist/core/entities/user/service.mjs +3 -0
  931. package/dist/core/entities/user/service.mjs.map +1 -1
  932. package/dist/core/entities/user/types.mjs +3 -0
  933. package/dist/core/entities/user-attribute/index.mjs +3 -0
  934. package/dist/core/entities/user-attribute/service.mjs +3 -0
  935. package/dist/core/entities/user-attribute/service.mjs.map +1 -1
  936. package/dist/core/entities/user-attribute/types.mjs +3 -0
  937. package/dist/core/entities/user-permission/index.mjs +3 -0
  938. package/dist/core/entities/user-permission/service.mjs +3 -0
  939. package/dist/core/entities/user-permission/service.mjs.map +1 -1
  940. package/dist/core/entities/user-permission/types.mjs +3 -0
  941. package/dist/core/entities/user-role/index.mjs +3 -0
  942. package/dist/core/entities/user-role/service.mjs +3 -0
  943. package/dist/core/entities/user-role/service.mjs.map +1 -1
  944. package/dist/core/entities/user-role/types.mjs +3 -0
  945. package/dist/core/identity/entities/client/index.mjs +3 -0
  946. package/dist/core/identity/entities/client/types.mjs +3 -0
  947. package/dist/core/identity/entities/index.mjs +3 -0
  948. package/dist/core/identity/entities/robot/index.mjs +3 -0
  949. package/dist/core/identity/entities/robot/types.mjs +3 -0
  950. package/dist/core/identity/entities/user/index.mjs +3 -0
  951. package/dist/core/identity/entities/user/types.mjs +3 -0
  952. package/dist/core/identity/index.mjs +3 -0
  953. package/dist/core/identity/password-recovery/check.mjs +3 -0
  954. package/dist/core/identity/password-recovery/check.mjs.map +1 -1
  955. package/dist/core/identity/password-recovery/disabled.mjs +3 -0
  956. package/dist/core/identity/password-recovery/disabled.mjs.map +1 -1
  957. package/dist/core/identity/password-recovery/email-verification-required.mjs +3 -0
  958. package/dist/core/identity/password-recovery/email-verification-required.mjs.map +1 -1
  959. package/dist/core/identity/password-recovery/index.mjs +3 -0
  960. package/dist/core/identity/password-recovery/service.d.ts.map +1 -1
  961. package/dist/core/identity/password-recovery/service.mjs +13 -31
  962. package/dist/core/identity/password-recovery/service.mjs.map +1 -1
  963. package/dist/core/identity/password-recovery/token-expired.mjs +3 -0
  964. package/dist/core/identity/password-recovery/token-expired.mjs.map +1 -1
  965. package/dist/core/identity/password-recovery/types.mjs +3 -0
  966. package/dist/core/identity/permission/checker/index.mjs +3 -0
  967. package/dist/core/identity/permission/checker/service.mjs +3 -0
  968. package/dist/core/identity/permission/checker/service.mjs.map +1 -1
  969. package/dist/core/identity/permission/checker/types.mjs +3 -0
  970. package/dist/core/identity/permission/identity-policy-data.mjs +3 -0
  971. package/dist/core/identity/permission/identity-policy-data.mjs.map +1 -1
  972. package/dist/core/identity/permission/index.mjs +3 -0
  973. package/dist/core/identity/permission/module.mjs +3 -0
  974. package/dist/core/identity/permission/module.mjs.map +1 -1
  975. package/dist/core/identity/permission/types.mjs +3 -0
  976. package/dist/core/identity/policy/checker/index.mjs +3 -0
  977. package/dist/core/identity/policy/checker/service.mjs +3 -0
  978. package/dist/core/identity/policy/checker/service.mjs.map +1 -1
  979. package/dist/core/identity/policy/checker/types.mjs +3 -0
  980. package/dist/core/identity/policy/index.mjs +3 -0
  981. package/dist/core/identity/provider/account/index.mjs +3 -0
  982. package/dist/core/identity/provider/account/module.mjs +3 -0
  983. package/dist/core/identity/provider/account/module.mjs.map +1 -1
  984. package/dist/core/identity/provider/account/types.mjs +3 -0
  985. package/dist/core/identity/provider/authentication/constants.mjs +3 -0
  986. package/dist/core/identity/provider/authentication/constants.mjs.map +1 -1
  987. package/dist/core/identity/provider/authentication/factory.mjs +3 -0
  988. package/dist/core/identity/provider/authentication/factory.mjs.map +1 -1
  989. package/dist/core/identity/provider/authentication/index.mjs +3 -0
  990. package/dist/core/identity/provider/authentication/presets/facebook.mjs +3 -0
  991. package/dist/core/identity/provider/authentication/presets/facebook.mjs.map +1 -1
  992. package/dist/core/identity/provider/authentication/presets/github.mjs +3 -0
  993. package/dist/core/identity/provider/authentication/presets/github.mjs.map +1 -1
  994. package/dist/core/identity/provider/authentication/presets/google.mjs +3 -0
  995. package/dist/core/identity/provider/authentication/presets/google.mjs.map +1 -1
  996. package/dist/core/identity/provider/authentication/presets/index.mjs +3 -0
  997. package/dist/core/identity/provider/authentication/presets/instagram.mjs +3 -0
  998. package/dist/core/identity/provider/authentication/presets/instagram.mjs.map +1 -1
  999. package/dist/core/identity/provider/authentication/presets/paypal.mjs +3 -0
  1000. package/dist/core/identity/provider/authentication/presets/paypal.mjs.map +1 -1
  1001. package/dist/core/identity/provider/authentication/protocols/index.mjs +3 -0
  1002. package/dist/core/identity/provider/authentication/protocols/ldap/collection.mjs +3 -0
  1003. package/dist/core/identity/provider/authentication/protocols/ldap/collection.mjs.map +1 -1
  1004. package/dist/core/identity/provider/authentication/protocols/ldap/index.mjs +3 -0
  1005. package/dist/core/identity/provider/authentication/protocols/ldap/module.mjs +3 -0
  1006. package/dist/core/identity/provider/authentication/protocols/ldap/module.mjs.map +1 -1
  1007. package/dist/core/identity/provider/authentication/protocols/ldap/types.mjs +3 -0
  1008. package/dist/core/identity/provider/authentication/protocols/oauth2/index.mjs +3 -0
  1009. package/dist/core/identity/provider/authentication/protocols/oauth2/module.mjs +3 -0
  1010. package/dist/core/identity/provider/authentication/protocols/oauth2/module.mjs.map +1 -1
  1011. package/dist/core/identity/provider/authentication/protocols/oauth2/types.mjs +3 -0
  1012. package/dist/core/identity/provider/authentication/protocols/open-id/index.mjs +3 -0
  1013. package/dist/core/identity/provider/authentication/protocols/open-id/module.mjs +3 -0
  1014. package/dist/core/identity/provider/authentication/protocols/open-id/module.mjs.map +1 -1
  1015. package/dist/core/identity/provider/constants.mjs +4 -1
  1016. package/dist/core/identity/provider/constants.mjs.map +1 -1
  1017. package/dist/core/identity/provider/index.mjs +3 -0
  1018. package/dist/core/identity/provider/mapper/attributes/index.mjs +3 -0
  1019. package/dist/core/identity/provider/mapper/attributes/module.mjs +3 -0
  1020. package/dist/core/identity/provider/mapper/attributes/module.mjs.map +1 -1
  1021. package/dist/core/identity/provider/mapper/attributes/types.mjs +3 -0
  1022. package/dist/core/identity/provider/mapper/base.mjs +3 -0
  1023. package/dist/core/identity/provider/mapper/base.mjs.map +1 -1
  1024. package/dist/core/identity/provider/mapper/constants.mjs +4 -1
  1025. package/dist/core/identity/provider/mapper/constants.mjs.map +1 -1
  1026. package/dist/core/identity/provider/mapper/index.mjs +3 -0
  1027. package/dist/core/identity/provider/mapper/permission/index.mjs +3 -0
  1028. package/dist/core/identity/provider/mapper/permission/module.mjs +3 -0
  1029. package/dist/core/identity/provider/mapper/permission/module.mjs.map +1 -1
  1030. package/dist/core/identity/provider/mapper/permission/types.mjs +3 -0
  1031. package/dist/core/identity/provider/mapper/role/index.mjs +3 -0
  1032. package/dist/core/identity/provider/mapper/role/module.mjs +3 -0
  1033. package/dist/core/identity/provider/mapper/role/module.mjs.map +1 -1
  1034. package/dist/core/identity/provider/mapper/role/types.mjs +3 -0
  1035. package/dist/core/identity/provider/mapper/types.mjs +3 -0
  1036. package/dist/core/identity/provider/types.mjs +3 -0
  1037. package/dist/core/identity/registration/check.mjs +3 -0
  1038. package/dist/core/identity/registration/check.mjs.map +1 -1
  1039. package/dist/core/identity/registration/error.mjs +3 -0
  1040. package/dist/core/identity/registration/error.mjs.map +1 -1
  1041. package/dist/core/identity/registration/index.mjs +3 -0
  1042. package/dist/core/identity/registration/service.mjs +3 -0
  1043. package/dist/core/identity/registration/service.mjs.map +1 -1
  1044. package/dist/core/identity/registration/types.mjs +3 -0
  1045. package/dist/core/identity/resolver/entities/ldap/module.mjs +3 -0
  1046. package/dist/core/identity/resolver/entities/ldap/module.mjs.map +1 -1
  1047. package/dist/core/identity/resolver/index.mjs +3 -0
  1048. package/dist/core/identity/resolver/module.mjs +3 -0
  1049. package/dist/core/identity/resolver/module.mjs.map +1 -1
  1050. package/dist/core/identity/resolver/types.mjs +3 -0
  1051. package/dist/core/identity/role/index.mjs +3 -0
  1052. package/dist/core/identity/role/module.mjs +3 -0
  1053. package/dist/core/identity/role/module.mjs.map +1 -1
  1054. package/dist/core/identity/role/types.mjs +3 -0
  1055. package/dist/core/index.mjs +3 -0
  1056. package/dist/core/ldap/index.mjs +3 -0
  1057. package/dist/core/ldap/types.mjs +3 -0
  1058. package/dist/core/mail/index.mjs +3 -0
  1059. package/dist/core/mail/types.mjs +3 -0
  1060. package/dist/core/oauth2/authorization/code/index.mjs +3 -0
  1061. package/dist/core/oauth2/authorization/code/issuer/index.mjs +3 -0
  1062. package/dist/core/oauth2/authorization/code/issuer/module.mjs +3 -0
  1063. package/dist/core/oauth2/authorization/code/issuer/module.mjs.map +1 -1
  1064. package/dist/core/oauth2/authorization/code/issuer/types.mjs +3 -0
  1065. package/dist/core/oauth2/authorization/code/repository/index.mjs +3 -0
  1066. package/dist/core/oauth2/authorization/code/repository/types.mjs +3 -0
  1067. package/dist/core/oauth2/authorization/code/verifier/index.mjs +3 -0
  1068. package/dist/core/oauth2/authorization/code/verifier/module.mjs +3 -0
  1069. package/dist/core/oauth2/authorization/code/verifier/module.mjs.map +1 -1
  1070. package/dist/core/oauth2/authorization/code/verifier/types.mjs +3 -0
  1071. package/dist/core/oauth2/authorization/code-request/index.mjs +3 -0
  1072. package/dist/core/oauth2/authorization/code-request/validator.mjs +4 -1
  1073. package/dist/core/oauth2/authorization/code-request/validator.mjs.map +1 -1
  1074. package/dist/core/oauth2/authorization/code-request/verifier/index.mjs +3 -0
  1075. package/dist/core/oauth2/authorization/code-request/verifier/module.mjs +3 -0
  1076. package/dist/core/oauth2/authorization/code-request/verifier/module.mjs.map +1 -1
  1077. package/dist/core/oauth2/authorization/code-request/verifier/types.mjs +3 -0
  1078. package/dist/core/oauth2/authorization/helpers.mjs +3 -0
  1079. package/dist/core/oauth2/authorization/helpers.mjs.map +1 -1
  1080. package/dist/core/oauth2/authorization/index.mjs +3 -0
  1081. package/dist/core/oauth2/authorization/module.mjs +3 -0
  1082. package/dist/core/oauth2/authorization/module.mjs.map +1 -1
  1083. package/dist/core/oauth2/authorization/state/index.mjs +3 -0
  1084. package/dist/core/oauth2/authorization/state/module.mjs +3 -0
  1085. package/dist/core/oauth2/authorization/state/module.mjs.map +1 -1
  1086. package/dist/core/oauth2/authorization/state/types.mjs +3 -0
  1087. package/dist/core/oauth2/authorization/types.mjs +3 -0
  1088. package/dist/core/oauth2/client/authenticator.mjs +3 -0
  1089. package/dist/core/oauth2/client/authenticator.mjs.map +1 -1
  1090. package/dist/core/oauth2/client/index.mjs +3 -0
  1091. package/dist/core/oauth2/client/types.mjs +3 -0
  1092. package/dist/core/oauth2/grant-types/authorize.mjs +3 -0
  1093. package/dist/core/oauth2/grant-types/authorize.mjs.map +1 -1
  1094. package/dist/core/oauth2/grant-types/base.mjs +3 -0
  1095. package/dist/core/oauth2/grant-types/base.mjs.map +1 -1
  1096. package/dist/core/oauth2/grant-types/client-credentials.mjs +3 -0
  1097. package/dist/core/oauth2/grant-types/client-credentials.mjs.map +1 -1
  1098. package/dist/core/oauth2/grant-types/identity.mjs +3 -0
  1099. package/dist/core/oauth2/grant-types/identity.mjs.map +1 -1
  1100. package/dist/core/oauth2/grant-types/index.mjs +3 -0
  1101. package/dist/core/oauth2/grant-types/password.mjs +3 -0
  1102. package/dist/core/oauth2/grant-types/password.mjs.map +1 -1
  1103. package/dist/core/oauth2/grant-types/refresh-token.mjs +3 -0
  1104. package/dist/core/oauth2/grant-types/refresh-token.mjs.map +1 -1
  1105. package/dist/core/oauth2/grant-types/robot-credentials.mjs +3 -0
  1106. package/dist/core/oauth2/grant-types/robot-credentials.mjs.map +1 -1
  1107. package/dist/core/oauth2/grant-types/types.mjs +3 -0
  1108. package/dist/core/oauth2/helpers/error.mjs +3 -0
  1109. package/dist/core/oauth2/helpers/error.mjs.map +1 -1
  1110. package/dist/core/oauth2/helpers/index.mjs +3 -0
  1111. package/dist/core/oauth2/index.mjs +3 -0
  1112. package/dist/core/oauth2/key/index.mjs +3 -0
  1113. package/dist/core/oauth2/key/types.mjs +3 -0
  1114. package/dist/core/oauth2/openid/claims.mjs +3 -0
  1115. package/dist/core/oauth2/openid/claims.mjs.map +1 -1
  1116. package/dist/core/oauth2/openid/index.mjs +3 -0
  1117. package/dist/core/oauth2/response/bearer.mjs +3 -0
  1118. package/dist/core/oauth2/response/bearer.mjs.map +1 -1
  1119. package/dist/core/oauth2/response/index.mjs +3 -0
  1120. package/dist/core/oauth2/response/type.mjs +3 -0
  1121. package/dist/core/oauth2/scope/index.mjs +3 -0
  1122. package/dist/core/oauth2/scope/resolver.mjs +3 -0
  1123. package/dist/core/oauth2/scope/resolver.mjs.map +1 -1
  1124. package/dist/core/oauth2/scope/types.mjs +3 -0
  1125. package/dist/core/oauth2/token/index.mjs +3 -0
  1126. package/dist/core/oauth2/token/issuer/access/index.mjs +3 -0
  1127. package/dist/core/oauth2/token/issuer/access/module.mjs +3 -0
  1128. package/dist/core/oauth2/token/issuer/access/module.mjs.map +1 -1
  1129. package/dist/core/oauth2/token/issuer/base.mjs +3 -0
  1130. package/dist/core/oauth2/token/issuer/base.mjs.map +1 -1
  1131. package/dist/core/oauth2/token/issuer/index.mjs +3 -0
  1132. package/dist/core/oauth2/token/issuer/open-id/index.mjs +3 -0
  1133. package/dist/core/oauth2/token/issuer/open-id/module.mjs +3 -0
  1134. package/dist/core/oauth2/token/issuer/open-id/module.mjs.map +1 -1
  1135. package/dist/core/oauth2/token/issuer/open-id/types.mjs +3 -0
  1136. package/dist/core/oauth2/token/issuer/refresh/index.mjs +3 -0
  1137. package/dist/core/oauth2/token/issuer/refresh/module.mjs +3 -0
  1138. package/dist/core/oauth2/token/issuer/refresh/module.mjs.map +1 -1
  1139. package/dist/core/oauth2/token/issuer/types.mjs +3 -0
  1140. package/dist/core/oauth2/token/repository/index.mjs +3 -0
  1141. package/dist/core/oauth2/token/repository/types.mjs +3 -0
  1142. package/dist/core/oauth2/token/revoker/index.mjs +3 -0
  1143. package/dist/core/oauth2/token/revoker/module.mjs +3 -0
  1144. package/dist/core/oauth2/token/revoker/module.mjs.map +1 -1
  1145. package/dist/core/oauth2/token/revoker/types.mjs +3 -0
  1146. package/dist/core/oauth2/token/signer/index.mjs +3 -0
  1147. package/dist/core/oauth2/token/signer/module.mjs +3 -0
  1148. package/dist/core/oauth2/token/signer/module.mjs.map +1 -1
  1149. package/dist/core/oauth2/token/signer/types.mjs +3 -0
  1150. package/dist/core/oauth2/token/verifier/index.mjs +3 -0
  1151. package/dist/core/oauth2/token/verifier/module.mjs +3 -0
  1152. package/dist/core/oauth2/token/verifier/module.mjs.map +1 -1
  1153. package/dist/core/oauth2/token/verifier/types.mjs +3 -0
  1154. package/dist/core/provisioning/entities/client/index.mjs +3 -0
  1155. package/dist/core/provisioning/entities/client/relations-validator.mjs +4 -1
  1156. package/dist/core/provisioning/entities/client/relations-validator.mjs.map +1 -1
  1157. package/dist/core/provisioning/entities/client/types.mjs +3 -0
  1158. package/dist/core/provisioning/entities/client/validator.mjs +3 -0
  1159. package/dist/core/provisioning/entities/client/validator.mjs.map +1 -1
  1160. package/dist/core/provisioning/entities/index.mjs +3 -0
  1161. package/dist/core/provisioning/entities/permission/index.mjs +3 -0
  1162. package/dist/core/provisioning/entities/permission/types.mjs +3 -0
  1163. package/dist/core/provisioning/entities/permission/validator.mjs +3 -0
  1164. package/dist/core/provisioning/entities/permission/validator.mjs.map +1 -1
  1165. package/dist/core/provisioning/entities/policy/index.mjs +3 -0
  1166. package/dist/core/provisioning/entities/policy/types.mjs +3 -0
  1167. package/dist/core/provisioning/entities/realm/index.mjs +3 -0
  1168. package/dist/core/provisioning/entities/realm/relations-validator.mjs +4 -1
  1169. package/dist/core/provisioning/entities/realm/relations-validator.mjs.map +1 -1
  1170. package/dist/core/provisioning/entities/realm/types.mjs +3 -0
  1171. package/dist/core/provisioning/entities/realm/validator.mjs +3 -0
  1172. package/dist/core/provisioning/entities/realm/validator.mjs.map +1 -1
  1173. package/dist/core/provisioning/entities/robot/index.mjs +3 -0
  1174. package/dist/core/provisioning/entities/robot/relations-validator.mjs +4 -1
  1175. package/dist/core/provisioning/entities/robot/relations-validator.mjs.map +1 -1
  1176. package/dist/core/provisioning/entities/robot/types.mjs +3 -0
  1177. package/dist/core/provisioning/entities/robot/validator.mjs +3 -0
  1178. package/dist/core/provisioning/entities/robot/validator.mjs.map +1 -1
  1179. package/dist/core/provisioning/entities/role/index.mjs +3 -0
  1180. package/dist/core/provisioning/entities/role/relations-validator.mjs +4 -1
  1181. package/dist/core/provisioning/entities/role/relations-validator.mjs.map +1 -1
  1182. package/dist/core/provisioning/entities/role/types.mjs +3 -0
  1183. package/dist/core/provisioning/entities/role/validator.mjs +3 -0
  1184. package/dist/core/provisioning/entities/role/validator.mjs.map +1 -1
  1185. package/dist/core/provisioning/entities/root/index.mjs +3 -0
  1186. package/dist/core/provisioning/entities/root/types.mjs +3 -0
  1187. package/dist/core/provisioning/entities/root/validator.mjs +4 -1
  1188. package/dist/core/provisioning/entities/root/validator.mjs.map +1 -1
  1189. package/dist/core/provisioning/entities/scope/index.mjs +3 -0
  1190. package/dist/core/provisioning/entities/scope/types.mjs +3 -0
  1191. package/dist/core/provisioning/entities/scope/validator.mjs +3 -0
  1192. package/dist/core/provisioning/entities/scope/validator.mjs.map +1 -1
  1193. package/dist/core/provisioning/entities/types.mjs +3 -0
  1194. package/dist/core/provisioning/entities/user/index.mjs +3 -0
  1195. package/dist/core/provisioning/entities/user/relations-validator.mjs +4 -1
  1196. package/dist/core/provisioning/entities/user/relations-validator.mjs.map +1 -1
  1197. package/dist/core/provisioning/entities/user/types.mjs +3 -0
  1198. package/dist/core/provisioning/entities/user/validator.mjs +3 -0
  1199. package/dist/core/provisioning/entities/user/validator.mjs.map +1 -1
  1200. package/dist/core/provisioning/index.mjs +3 -0
  1201. package/dist/core/provisioning/strategy/constants.mjs +4 -1
  1202. package/dist/core/provisioning/strategy/constants.mjs.map +1 -1
  1203. package/dist/core/provisioning/strategy/index.mjs +3 -0
  1204. package/dist/core/provisioning/strategy/normalize.mjs +3 -0
  1205. package/dist/core/provisioning/strategy/normalize.mjs.map +1 -1
  1206. package/dist/core/provisioning/strategy/types.mjs +3 -0
  1207. package/dist/core/provisioning/strategy/validator.mjs +4 -1
  1208. package/dist/core/provisioning/strategy/validator.mjs.map +1 -1
  1209. package/dist/core/provisioning/synchronizer/base.mjs +3 -0
  1210. package/dist/core/provisioning/synchronizer/base.mjs.map +1 -1
  1211. package/dist/core/provisioning/synchronizer/client/index.mjs +3 -0
  1212. package/dist/core/provisioning/synchronizer/client/module.mjs +3 -0
  1213. package/dist/core/provisioning/synchronizer/client/module.mjs.map +1 -1
  1214. package/dist/core/provisioning/synchronizer/client/types.mjs +3 -0
  1215. package/dist/core/provisioning/synchronizer/entity-resolver.mjs +3 -0
  1216. package/dist/core/provisioning/synchronizer/entity-resolver.mjs.map +1 -1
  1217. package/dist/core/provisioning/synchronizer/index.mjs +3 -0
  1218. package/dist/core/provisioning/synchronizer/junction-synchronizer.mjs +3 -0
  1219. package/dist/core/provisioning/synchronizer/junction-synchronizer.mjs.map +1 -1
  1220. package/dist/core/provisioning/synchronizer/permission/index.mjs +3 -0
  1221. package/dist/core/provisioning/synchronizer/permission/module.mjs +3 -0
  1222. package/dist/core/provisioning/synchronizer/permission/module.mjs.map +1 -1
  1223. package/dist/core/provisioning/synchronizer/permission/types.mjs +3 -0
  1224. package/dist/core/provisioning/synchronizer/policy/index.mjs +3 -0
  1225. package/dist/core/provisioning/synchronizer/policy/module.mjs +3 -0
  1226. package/dist/core/provisioning/synchronizer/policy/module.mjs.map +1 -1
  1227. package/dist/core/provisioning/synchronizer/policy/types.mjs +3 -0
  1228. package/dist/core/provisioning/synchronizer/realm/index.mjs +3 -0
  1229. package/dist/core/provisioning/synchronizer/realm/module.mjs +3 -0
  1230. package/dist/core/provisioning/synchronizer/realm/module.mjs.map +1 -1
  1231. package/dist/core/provisioning/synchronizer/realm/types.mjs +3 -0
  1232. package/dist/core/provisioning/synchronizer/robot/index.mjs +3 -0
  1233. package/dist/core/provisioning/synchronizer/robot/module.mjs +3 -0
  1234. package/dist/core/provisioning/synchronizer/robot/module.mjs.map +1 -1
  1235. package/dist/core/provisioning/synchronizer/robot/types.mjs +3 -0
  1236. package/dist/core/provisioning/synchronizer/role/index.mjs +3 -0
  1237. package/dist/core/provisioning/synchronizer/role/module.mjs +3 -0
  1238. package/dist/core/provisioning/synchronizer/role/module.mjs.map +1 -1
  1239. package/dist/core/provisioning/synchronizer/role/types.mjs +3 -0
  1240. package/dist/core/provisioning/synchronizer/root/index.mjs +3 -0
  1241. package/dist/core/provisioning/synchronizer/root/module.mjs +3 -0
  1242. package/dist/core/provisioning/synchronizer/root/module.mjs.map +1 -1
  1243. package/dist/core/provisioning/synchronizer/root/types.mjs +3 -0
  1244. package/dist/core/provisioning/synchronizer/scope/index.mjs +3 -0
  1245. package/dist/core/provisioning/synchronizer/scope/module.mjs +3 -0
  1246. package/dist/core/provisioning/synchronizer/scope/module.mjs.map +1 -1
  1247. package/dist/core/provisioning/synchronizer/scope/types.mjs +3 -0
  1248. package/dist/core/provisioning/synchronizer/user/index.mjs +3 -0
  1249. package/dist/core/provisioning/synchronizer/user/module.d.ts.map +1 -1
  1250. package/dist/core/provisioning/synchronizer/user/module.mjs +4 -2
  1251. package/dist/core/provisioning/synchronizer/user/module.mjs.map +1 -1
  1252. package/dist/core/provisioning/synchronizer/user/types.mjs +3 -0
  1253. package/dist/core/provisioning/types.mjs +3 -0
  1254. package/dist/core/security/index.mjs +3 -0
  1255. package/dist/core/security/policy/engine.mjs +3 -0
  1256. package/dist/core/security/policy/engine.mjs.map +1 -1
  1257. package/dist/core/security/policy/evaluator.mjs +3 -0
  1258. package/dist/core/security/policy/evaluator.mjs.map +1 -1
  1259. package/dist/core/security/policy/index.mjs +3 -0
  1260. package/dist/index.mjs +3 -0
  1261. package/dist/path.mjs +3 -0
  1262. package/dist/path.mjs.map +1 -1
  1263. package/dist/swagger.json +103 -85
  1264. package/dist/ui/client/.vite/ssr-manifest.json +863 -2695
  1265. package/dist/ui/client/assets/index-CW2RUpXo.js +95 -0
  1266. package/dist/ui/client/assets/index-HBJOWR3Q.css +1 -0
  1267. package/dist/ui/client/index.html +2 -2
  1268. package/dist/ui/server/server.js +64391 -25378
  1269. package/dist/utils/error.mjs +3 -0
  1270. package/dist/utils/error.mjs.map +1 -1
  1271. package/dist/utils/host.mjs +3 -0
  1272. package/dist/utils/host.mjs.map +1 -1
  1273. package/dist/utils/index.mjs +3 -0
  1274. package/dist/utils/self-id.mjs +3 -0
  1275. package/dist/utils/self-id.mjs.map +1 -1
  1276. package/dist/utils/url.mjs +3 -0
  1277. package/dist/utils/url.mjs.map +1 -1
  1278. package/package.json +52 -36
  1279. package/dist/ui/client/assets/fa-brands-400-BP5tdqmh.woff2 +0 -0
  1280. package/dist/ui/client/assets/fa-regular-400-nyy7hhHF.woff2 +0 -0
  1281. package/dist/ui/client/assets/fa-solid-900-DRAAbZTg.woff2 +0 -0
  1282. package/dist/ui/client/assets/index-BVfayRKv.css +0 -1
  1283. package/dist/ui/client/assets/index-BdPtpN2t.js +0 -66
  1284. /package/dist/ui/server/assets/{multipart-parser-pHQi-kA6.js → multipart-parser-C4ws2efo.js} +0 -0
@@ -1,3 +1,6 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
1
4
  import { In } from "typeorm";
2
5
  import { hasOwnProperty } from "@authup/kit";
3
6
  //#region src/adapters/database/extra-attribute-repository/adapter.ts
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.mjs","names":["hasOwnProperty","In","ExtraAttributesRepositoryAdapter","repository","primaryColumn","attributeRepository","attributeForeignColumn","cachePrefix","extra","ctx","attributeProperties","input","entityPrimaryColumn","findOneWithEA","options","extraOptions","entity","findOne","undefined","extendWithEA","findWithEA","entities","find","extendManyWithEA","saveWithEA","attributes","columns","i","metadata","length","push","propertyName","relations","keys","Object","key_","key","index","indexOf","save","saveEA","extraKeys","extraKey","findOneWithEAByPrimaryColumn","value","attributesByPrimary","findWithEAByPrimaryColumn","attributeKeys","attributeKey","where","name","output","element","entityAttributes","filter","attribute","reduce","acc","curr","attributesByPrimaryKey","getPrimaryKeyValues","parent","foreignColumn","foreignColumnValue","items","findBy","itemsToDelete","itemsToUpdate","keysProcessed","item","keepAll","remove","itemsToAdd","keyIndex","insert","map"],"sources":["../../../../src/adapters/database/extra-attribute-repository/adapter.ts"],"sourcesContent":["/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { ObjectLiteral } from '@authup/kit';\nimport { hasOwnProperty } from '@authup/kit';\nimport type {\n FindManyOptions,\n FindOneOptions,\n FindOptionsWhere,\n FindOptionsWhereProperty,\n Repository,\n} from 'typeorm';\nimport { In } from 'typeorm';\nimport type {\n EARepositoryAdapterOptions,\n EARepositoryEntityBase,\n EARepositoryFindOptions,\n EARepositoryPropertiesModifyFn,\n EARepositorySaveOptions,\n} from './types.ts';\n\nexport class ExtraAttributesRepositoryAdapter<\n T extends ObjectLiteral = ObjectLiteral,\n A extends EARepositoryEntityBase = EARepositoryEntityBase,\n> {\n protected repository : Repository<T>;\n\n public primaryColumn : keyof T;\n\n protected attributeRepository : Repository<A>;\n\n public attributeForeignColumn : keyof A;\n\n protected cachePrefix?: string;\n\n protected extra : EARepositoryPropertiesModifyFn<T, A>;\n\n // ------------------------------------------------------------------------------\n\n constructor(ctx: EARepositoryAdapterOptions<T, A>) {\n let extra : EARepositoryPropertiesModifyFn<T, A>;\n if (ctx.attributeProperties) {\n extra = ctx.attributeProperties;\n } else {\n extra = (input) => input;\n }\n this.extra = extra;\n\n this.repository = ctx.repository;\n this.primaryColumn = ctx.entityPrimaryColumn;\n this.attributeRepository = ctx.attributeRepository;\n this.attributeForeignColumn = ctx.attributeForeignColumn;\n this.cachePrefix = ctx.cachePrefix;\n }\n\n // ------------------------------------------------------------------------------\n\n async findOneWithEA(\n options: FindOneOptions<T>,\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<T | undefined> {\n const entity = await this.repository.findOne(options);\n if (!entity) {\n return undefined;\n }\n\n await this.extendWithEA(entity, extraOptions);\n\n return entity;\n }\n\n async findWithEA<\n E extends Record<string, any>,\n >(\n options: FindManyOptions<T>,\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<(T & E)[]> {\n const entities = await this.repository.find(options);\n\n return this.extendManyWithEA(entities, extraOptions);\n }\n\n async saveWithEA<E extends Record<string, any>>(\n input: T & E,\n attributes?: E,\n options?: EARepositorySaveOptions<T>,\n ) : Promise<T & E> {\n const columns : string[] = [];\n\n for (let i = 0; i < this.repository.metadata.columns.length; i++) {\n columns.push(this.repository.metadata.columns[i].propertyName);\n }\n for (let i = 0; i < this.repository.metadata.relations.length; i++) {\n columns.push(this.repository.metadata.relations[i].propertyName);\n }\n\n let extra : Record<string, any> = {};\n if (attributes) {\n extra = { ...attributes };\n }\n\n const keys = Object.keys(input) as (keyof T)[];\n for (const key_ of keys) {\n const key = key_ as string;\n const index = columns.indexOf(key);\n if (index === -1) {\n extra[key] = input[key];\n delete input[key];\n }\n }\n\n await this.repository.save(input);\n\n await this.saveEA(\n input,\n extra,\n options,\n );\n\n const extraKeys = Object.keys(extra);\n for (const extraKey of extraKeys) {\n input[extraKey as keyof T] = extra[extraKey];\n }\n\n return input;\n }\n\n async findOneWithEAByPrimaryColumn<E extends Record<string, any>>(\n value: T[keyof T],\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<E> {\n const attributesByPrimary = await this.findWithEAByPrimaryColumn([value], extraOptions);\n return (attributesByPrimary[value as string] || {}) as E;\n }\n\n async extendWithEA<E extends Record<string, any>>(\n entity: T,\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<T & E> {\n const attributes = await this.findOneWithEAByPrimaryColumn(entity[this.primaryColumn], extraOptions);\n const attributeKeys = Object.keys(attributes);\n for (const attributeKey of attributeKeys) {\n entity[attributeKey as keyof T] = attributes[attributeKey] as T[keyof T];\n }\n\n return entity as T & E;\n }\n\n async findWithEAByPrimaryColumn<E extends Record<string, any>>(\n value: (T[keyof T])[],\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<Record<string, E>> {\n const where : FindOptionsWhere<A> = {};\n where[this.attributeForeignColumn as keyof FindOptionsWhere<A>] = In(value) as any;\n if (extraOptions.attributes) {\n where.name = In(extraOptions.attributes) as FindOptionsWhereProperty<A['name']>;\n }\n\n const attributes = await this.attributeRepository.find({ where });\n const output : Record<string, E> = {};\n\n for (const element of value) {\n const entityAttributes = attributes.filter(\n (attribute) => attribute[this.attributeForeignColumn] === element as unknown as A[keyof A],\n );\n\n output[element as string] = entityAttributes\n .reduce((acc, curr) => {\n acc[curr.name as keyof E] = curr.value as E[keyof E];\n\n return acc;\n }, {} as E);\n }\n\n return output;\n }\n\n async extendManyWithEA<E extends Record<string, any>>(\n entities: T[],\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<(T & E)[]> {\n const attributesByPrimaryKey = await this.findWithEAByPrimaryColumn(\n this.getPrimaryKeyValues(entities),\n extraOptions,\n );\n\n for (const entity of entities) {\n const attributes = attributesByPrimaryKey[entity[this.primaryColumn] as string];\n if (!attributes) {\n continue;\n }\n\n const attributeKeys = Object.keys(attributes);\n for (const attributeKey of attributeKeys) {\n entity[attributeKey as keyof T] = attributes[attributeKey] as T[keyof T];\n }\n }\n\n return entities as (T & E)[];\n }\n\n // ------------------------------------------------------------------------------\n\n private async saveEA(\n parent: T,\n input: Record<string, any>,\n options: EARepositorySaveOptions<T> = {},\n ) {\n const foreignColumn = this.attributeForeignColumn as keyof A;\n const foreignColumnValue = parent[this.primaryColumn] as unknown as A[keyof A];\n\n const where : Partial<A> = {};\n where[foreignColumn] = foreignColumnValue;\n\n const items = await this.attributeRepository.findBy(where);\n\n const itemsToDelete : A[] = [];\n const itemsToUpdate : A[] = [];\n\n const keysProcessed : string[] = [];\n for (const item of items) {\n if (hasOwnProperty(input, item.name)) {\n item.value = input[item.name];\n item[foreignColumn] = foreignColumnValue;\n\n itemsToUpdate.push(this.extra(item, parent));\n\n keysProcessed.push(item.name);\n } else if (!options.keepAll) {\n itemsToDelete.push(item);\n }\n }\n\n if (itemsToUpdate.length > 0) {\n await this.attributeRepository.save(itemsToUpdate);\n }\n\n if (itemsToDelete.length > 0) {\n await this.attributeRepository.remove(itemsToDelete);\n }\n\n const itemsToAdd : A[] = [];\n\n const keys = Object.keys(input);\n let keyIndex : number;\n\n for (const key of keys) {\n keyIndex = keysProcessed.indexOf(key);\n if (keyIndex === -1) {\n itemsToAdd.push(this.extra({\n name: key,\n value: input[key],\n [foreignColumn]: foreignColumnValue,\n } as A, parent));\n }\n }\n\n if (itemsToAdd.length > 0) {\n await this.attributeRepository.insert(itemsToAdd);\n }\n }\n\n getPrimaryKeyValues(entities: T[]) : T[keyof T][] {\n return entities.map((entity) => entity[this.primaryColumn as keyof T]);\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"adapter.mjs","names":["hasOwnProperty","In","ExtraAttributesRepositoryAdapter","repository","primaryColumn","attributeRepository","attributeForeignColumn","cachePrefix","extra","ctx","attributeProperties","input","entityPrimaryColumn","findOneWithEA","options","extraOptions","entity","findOne","undefined","extendWithEA","findWithEA","entities","find","extendManyWithEA","saveWithEA","attributes","columns","i","metadata","length","push","propertyName","relations","keys","Object","key_","key","index","indexOf","save","saveEA","extraKeys","extraKey","findOneWithEAByPrimaryColumn","value","attributesByPrimary","findWithEAByPrimaryColumn","attributeKeys","attributeKey","where","name","output","element","entityAttributes","filter","attribute","reduce","acc","curr","attributesByPrimaryKey","getPrimaryKeyValues","parent","foreignColumn","foreignColumnValue","items","findBy","itemsToDelete","itemsToUpdate","keysProcessed","item","keepAll","remove","itemsToAdd","keyIndex","insert","map"],"sources":["../../../../src/adapters/database/extra-attribute-repository/adapter.ts"],"sourcesContent":["/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { ObjectLiteral } from '@authup/kit';\nimport { hasOwnProperty } from '@authup/kit';\nimport type {\n FindManyOptions,\n FindOneOptions,\n FindOptionsWhere,\n FindOptionsWhereProperty,\n Repository,\n} from 'typeorm';\nimport { In } from 'typeorm';\nimport type {\n EARepositoryAdapterOptions,\n EARepositoryEntityBase,\n EARepositoryFindOptions,\n EARepositoryPropertiesModifyFn,\n EARepositorySaveOptions,\n} from './types.ts';\n\nexport class ExtraAttributesRepositoryAdapter<\n T extends ObjectLiteral = ObjectLiteral,\n A extends EARepositoryEntityBase = EARepositoryEntityBase,\n> {\n protected repository : Repository<T>;\n\n public primaryColumn : keyof T;\n\n protected attributeRepository : Repository<A>;\n\n public attributeForeignColumn : keyof A;\n\n protected cachePrefix?: string;\n\n protected extra : EARepositoryPropertiesModifyFn<T, A>;\n\n // ------------------------------------------------------------------------------\n\n constructor(ctx: EARepositoryAdapterOptions<T, A>) {\n let extra : EARepositoryPropertiesModifyFn<T, A>;\n if (ctx.attributeProperties) {\n extra = ctx.attributeProperties;\n } else {\n extra = (input) => input;\n }\n this.extra = extra;\n\n this.repository = ctx.repository;\n this.primaryColumn = ctx.entityPrimaryColumn;\n this.attributeRepository = ctx.attributeRepository;\n this.attributeForeignColumn = ctx.attributeForeignColumn;\n this.cachePrefix = ctx.cachePrefix;\n }\n\n // ------------------------------------------------------------------------------\n\n async findOneWithEA(\n options: FindOneOptions<T>,\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<T | undefined> {\n const entity = await this.repository.findOne(options);\n if (!entity) {\n return undefined;\n }\n\n await this.extendWithEA(entity, extraOptions);\n\n return entity;\n }\n\n async findWithEA<\n E extends Record<string, any>,\n >(\n options: FindManyOptions<T>,\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<(T & E)[]> {\n const entities = await this.repository.find(options);\n\n return this.extendManyWithEA(entities, extraOptions);\n }\n\n async saveWithEA<E extends Record<string, any>>(\n input: T & E,\n attributes?: E,\n options?: EARepositorySaveOptions<T>,\n ) : Promise<T & E> {\n const columns : string[] = [];\n\n for (let i = 0; i < this.repository.metadata.columns.length; i++) {\n columns.push(this.repository.metadata.columns[i].propertyName);\n }\n for (let i = 0; i < this.repository.metadata.relations.length; i++) {\n columns.push(this.repository.metadata.relations[i].propertyName);\n }\n\n let extra : Record<string, any> = {};\n if (attributes) {\n extra = { ...attributes };\n }\n\n const keys = Object.keys(input) as (keyof T)[];\n for (const key_ of keys) {\n const key = key_ as string;\n const index = columns.indexOf(key);\n if (index === -1) {\n extra[key] = input[key];\n delete input[key];\n }\n }\n\n await this.repository.save(input);\n\n await this.saveEA(\n input,\n extra,\n options,\n );\n\n const extraKeys = Object.keys(extra);\n for (const extraKey of extraKeys) {\n input[extraKey as keyof T] = extra[extraKey];\n }\n\n return input;\n }\n\n async findOneWithEAByPrimaryColumn<E extends Record<string, any>>(\n value: T[keyof T],\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<E> {\n const attributesByPrimary = await this.findWithEAByPrimaryColumn([value], extraOptions);\n return (attributesByPrimary[value as string] || {}) as E;\n }\n\n async extendWithEA<E extends Record<string, any>>(\n entity: T,\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<T & E> {\n const attributes = await this.findOneWithEAByPrimaryColumn(entity[this.primaryColumn], extraOptions);\n const attributeKeys = Object.keys(attributes);\n for (const attributeKey of attributeKeys) {\n entity[attributeKey as keyof T] = attributes[attributeKey] as T[keyof T];\n }\n\n return entity as T & E;\n }\n\n async findWithEAByPrimaryColumn<E extends Record<string, any>>(\n value: (T[keyof T])[],\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<Record<string, E>> {\n const where : FindOptionsWhere<A> = {};\n where[this.attributeForeignColumn as keyof FindOptionsWhere<A>] = In(value) as any;\n if (extraOptions.attributes) {\n where.name = In(extraOptions.attributes) as FindOptionsWhereProperty<A['name']>;\n }\n\n const attributes = await this.attributeRepository.find({ where });\n const output : Record<string, E> = {};\n\n for (const element of value) {\n const entityAttributes = attributes.filter(\n (attribute) => attribute[this.attributeForeignColumn] === element as unknown as A[keyof A],\n );\n\n output[element as string] = entityAttributes\n .reduce((acc, curr) => {\n acc[curr.name as keyof E] = curr.value as E[keyof E];\n\n return acc;\n }, {} as E);\n }\n\n return output;\n }\n\n async extendManyWithEA<E extends Record<string, any>>(\n entities: T[],\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<(T & E)[]> {\n const attributesByPrimaryKey = await this.findWithEAByPrimaryColumn(\n this.getPrimaryKeyValues(entities),\n extraOptions,\n );\n\n for (const entity of entities) {\n const attributes = attributesByPrimaryKey[entity[this.primaryColumn] as string];\n if (!attributes) {\n continue;\n }\n\n const attributeKeys = Object.keys(attributes);\n for (const attributeKey of attributeKeys) {\n entity[attributeKey as keyof T] = attributes[attributeKey] as T[keyof T];\n }\n }\n\n return entities as (T & E)[];\n }\n\n // ------------------------------------------------------------------------------\n\n private async saveEA(\n parent: T,\n input: Record<string, any>,\n options: EARepositorySaveOptions<T> = {},\n ) {\n const foreignColumn = this.attributeForeignColumn as keyof A;\n const foreignColumnValue = parent[this.primaryColumn] as unknown as A[keyof A];\n\n const where : Partial<A> = {};\n where[foreignColumn] = foreignColumnValue;\n\n const items = await this.attributeRepository.findBy(where);\n\n const itemsToDelete : A[] = [];\n const itemsToUpdate : A[] = [];\n\n const keysProcessed : string[] = [];\n for (const item of items) {\n if (hasOwnProperty(input, item.name)) {\n item.value = input[item.name];\n item[foreignColumn] = foreignColumnValue;\n\n itemsToUpdate.push(this.extra(item, parent));\n\n keysProcessed.push(item.name);\n } else if (!options.keepAll) {\n itemsToDelete.push(item);\n }\n }\n\n if (itemsToUpdate.length > 0) {\n await this.attributeRepository.save(itemsToUpdate);\n }\n\n if (itemsToDelete.length > 0) {\n await this.attributeRepository.remove(itemsToDelete);\n }\n\n const itemsToAdd : A[] = [];\n\n const keys = Object.keys(input);\n let keyIndex : number;\n\n for (const key of keys) {\n keyIndex = keysProcessed.indexOf(key);\n if (keyIndex === -1) {\n itemsToAdd.push(this.extra({\n name: key,\n value: input[key],\n [foreignColumn]: foreignColumnValue,\n } as A, parent));\n }\n }\n\n if (itemsToAdd.length > 0) {\n await this.attributeRepository.insert(itemsToAdd);\n }\n }\n\n getPrimaryKeyValues(entities: T[]) : T[keyof T][] {\n return entities.map((entity) => entity[this.primaryColumn as keyof T]);\n }\n}\n"],"mappings":"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"}
@@ -1,3 +1,6 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
1
4
  import { ExtraAttributesRepositoryAdapter } from "./adapter.mjs";
2
5
  import { EARepository } from "./repository.mjs";
3
6
  import { EATreeRepository } from "./tree/repository.mjs";
@@ -1,3 +1,6 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
1
4
  import { ExtraAttributesRepositoryAdapter } from "./adapter.mjs";
2
5
  import { InstanceChecker, Repository } from "typeorm";
3
6
  //#region src/adapters/database/extra-attribute-repository/repository.ts
@@ -1 +1 @@
1
- {"version":3,"file":"repository.mjs","names":["InstanceChecker","Repository","ExtraAttributesRepositoryAdapter","EARepository","adapter","instance","options","entity","attributeEntity","ctx","isDataSource","manager","repository","attributeRepository","getRepository","create","entityLike","Array","isArray","map","i","preserveExtraAttributes","source","columns","Set","col","metadata","add","propertyName","rel","relations","key","Object","keys","has","saveOneWithEA","input","attributes","saveWithEA","findOneWithEA","extraOptions","findManyWithEA","findWithEA","findOneWithEAByPrimaryColumn","value","extendOneWithEA","extendWithEA","extendManyWithEA","entities"],"sources":["../../../../src/adapters/database/extra-attribute-repository/repository.ts"],"sourcesContent":["/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type {\n DataSource, \n DeepPartial, \n EntityManager, \n FindManyOptions, \n FindOneOptions,\n} from 'typeorm';\nimport { InstanceChecker, Repository } from 'typeorm';\nimport type { ObjectLiteral } from '@authup/kit';\nimport { ExtraAttributesRepositoryAdapter } from './adapter.ts';\nimport type {\n EARepositoryEntityBase, \n EARepositoryFindOptions, \n EARepositoryOptions, \n EARepositorySaveOptions, \n IEARepository,\n} from './types.ts';\n\nexport class EARepository<\n T extends ObjectLiteral = ObjectLiteral,\n A extends EARepositoryEntityBase = EARepositoryEntityBase,\n> extends Repository<T> implements IEARepository <T> {\n protected adapter : ExtraAttributesRepositoryAdapter<T, A>;\n\n constructor(\n instance: DataSource | EntityManager,\n options: EARepositoryOptions<T, A>,\n ) {\n const {\n entity,\n attributeEntity,\n ...ctx\n } = options;\n\n super(\n entity,\n InstanceChecker.isDataSource(instance) ? instance.manager : instance,\n );\n\n this.adapter = new ExtraAttributesRepositoryAdapter<T, A>({\n ...ctx,\n repository: this,\n attributeRepository: this.manager.getRepository(attributeEntity),\n });\n }\n // ------------------------------------------------------------------------------\n\n override create(): T;\n\n override create(entityLikeArray: DeepPartial<T>[]): T[];\n\n override create(entityLike: DeepPartial<T>): T;\n\n override create(entityLike?: DeepPartial<T> | DeepPartial<T>[]): T | T[] {\n if (!entityLike) {\n return super.create();\n }\n\n if (Array.isArray(entityLike)) {\n return super.create(entityLike).map((entity, i) => {\n this.preserveExtraAttributes(entity, entityLike[i]);\n return entity;\n });\n }\n\n const entity = super.create(entityLike);\n this.preserveExtraAttributes(entity, entityLike);\n return entity;\n }\n\n private preserveExtraAttributes(entity: T, source: DeepPartial<T>): void {\n const columns = new Set<string>();\n for (const col of this.metadata.columns) {\n columns.add(col.propertyName);\n }\n for (const rel of this.metadata.relations) {\n columns.add(rel.propertyName);\n }\n\n for (const key of Object.keys(source)) {\n if (!columns.has(key) && !(key in entity)) {\n (entity as Record<string, any>)[key] = (source as Record<string, any>)[key];\n }\n }\n }\n\n // ------------------------------------------------------------------------------\n\n async saveOneWithEA<E extends Record<string, any>>(\n input: T & E,\n attributes?: E,\n options?: EARepositorySaveOptions<T>,\n ) : Promise<T & E> {\n return this.adapter.saveWithEA(input, attributes, options);\n }\n\n // ------------------------------------------------------------------------------\n\n async findOneWithEA(\n options: FindOneOptions<T>,\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<T | undefined> {\n return this.adapter.findOneWithEA(options, extraOptions);\n }\n\n async findManyWithEA<\n E extends Record<string, any>,\n >(\n options: FindManyOptions<T>,\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<(T & E)[]> {\n return this.adapter.findWithEA(options, extraOptions);\n }\n\n async findOneWithEAByPrimaryColumn<E extends Record<string, any>>(\n value: T[keyof T],\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<E> {\n return this.adapter.findOneWithEAByPrimaryColumn(value, extraOptions);\n }\n\n async extendOneWithEA<E extends Record<string, any>>(\n entity: T,\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<T & E> {\n return this.adapter.extendWithEA(entity, extraOptions);\n }\n\n async extendManyWithEA<E extends Record<string, any>>(\n entities: T[],\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<(T & E)[]> {\n return this.adapter.extendManyWithEA(entities, extraOptions);\n }\n}\n"],"mappings":";;;AAyBA,IAAaG,eAAb,cAGUF,WAAAA;CACIG;CAEV,YACIC,UACAC,SACF;EACE,MAAM,EACFC,QACAC,iBACA,GAAGC,QACHH;EAEJ,MACIC,QACAP,gBAAgBU,aAAaL,QAAAA,IAAYA,SAASM,UAAUN,QAAAA;EAGhE,KAAKD,UAAU,IAAIF,iCAAuC;GACtD,GAAGO;GACHG,YAAY;GACZC,qBAAqB,KAAKF,QAAQG,cAAcN,eAAAA;EACpD,CAAA;CACJ;CASSO,OAAOC,YAAyD;EACrE,IAAI,CAACA,YACD,OAAO,MAAMD,OAAAA;EAGjB,IAAIE,MAAMC,QAAQF,UAAAA,GACd,OAAO,MAAMD,OAAOC,UAAAA,EAAYG,KAAKZ,QAAQa,MAAAA;GACzC,KAAKC,wBAAwBd,QAAQS,WAAWI,EAAE;GAClD,OAAOb;EACX,CAAA;EAGJ,MAAMA,SAAS,MAAMQ,OAAOC,UAAAA;EAC5B,KAAKK,wBAAwBd,QAAQS,UAAAA;EACrC,OAAOT;CACX;CAEQc,wBAAwBd,QAAWe,QAA8B;EACrE,MAAMC,0BAAU,IAAIC,IAAAA;EACpB,KAAK,MAAMC,OAAO,KAAKC,SAASH,SAC5BA,QAAQI,IAAIF,IAAIG,YAAY;EAEhC,KAAK,MAAMC,OAAO,KAAKH,SAASI,WAC5BP,QAAQI,IAAIE,IAAID,YAAY;EAGhC,KAAK,MAAMG,OAAOC,OAAOC,KAAKX,MAAAA,GAC1B,IAAI,CAACC,QAAQW,IAAIH,GAAAA,KAAQ,EAAEA,OAAOxB,SAC7BA,OAA+BwB,OAAO,OAAgCA;CAGnF;CAIA,MAAMI,cACFC,OACAC,YACA/B,SACe;EACf,OAAO,KAAKF,QAAQkC,WAAWF,OAAOC,YAAY/B,OAAAA;CACtD;CAIA,MAAMiC,cACFjC,SACAkC,eAAwC,CAAC,GAClB;EACvB,OAAO,KAAKpC,QAAQmC,cAAcjC,SAASkC,YAAAA;CAC/C;CAEA,MAAMC,eAGFnC,SACAkC,eAAwC,CAAC,GACtB;EACnB,OAAO,KAAKpC,QAAQsC,WAAWpC,SAASkC,YAAAA;CAC5C;CAEA,MAAMG,6BACFC,OACAJ,eAAwC,CAAC,GAC9B;EACX,OAAO,KAAKpC,QAAQuC,6BAA6BC,OAAOJ,YAAAA;CAC5D;CAEA,MAAMK,gBACFtC,QACAiC,eAAwC,CAAC,GAC1B;EACf,OAAO,KAAKpC,QAAQ0C,aAAavC,QAAQiC,YAAAA;CAC7C;CAEA,MAAMO,iBACFC,UACAR,eAAwC,CAAC,GACtB;EACnB,OAAO,KAAKpC,QAAQ2C,iBAAiBC,UAAUR,YAAAA;CACnD;AACJ"}
1
+ {"version":3,"file":"repository.mjs","names":["InstanceChecker","Repository","ExtraAttributesRepositoryAdapter","EARepository","adapter","instance","options","entity","attributeEntity","ctx","isDataSource","manager","repository","attributeRepository","getRepository","create","entityLike","Array","isArray","map","i","preserveExtraAttributes","source","columns","Set","col","metadata","add","propertyName","rel","relations","key","Object","keys","has","saveOneWithEA","input","attributes","saveWithEA","findOneWithEA","extraOptions","findManyWithEA","findWithEA","findOneWithEAByPrimaryColumn","value","extendOneWithEA","extendWithEA","extendManyWithEA","entities"],"sources":["../../../../src/adapters/database/extra-attribute-repository/repository.ts"],"sourcesContent":["/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type {\n DataSource, \n DeepPartial, \n EntityManager, \n FindManyOptions, \n FindOneOptions,\n} from 'typeorm';\nimport { InstanceChecker, Repository } from 'typeorm';\nimport type { ObjectLiteral } from '@authup/kit';\nimport { ExtraAttributesRepositoryAdapter } from './adapter.ts';\nimport type {\n EARepositoryEntityBase, \n EARepositoryFindOptions, \n EARepositoryOptions, \n EARepositorySaveOptions, \n IEARepository,\n} from './types.ts';\n\nexport class EARepository<\n T extends ObjectLiteral = ObjectLiteral,\n A extends EARepositoryEntityBase = EARepositoryEntityBase,\n> extends Repository<T> implements IEARepository <T> {\n protected adapter : ExtraAttributesRepositoryAdapter<T, A>;\n\n constructor(\n instance: DataSource | EntityManager,\n options: EARepositoryOptions<T, A>,\n ) {\n const {\n entity,\n attributeEntity,\n ...ctx\n } = options;\n\n super(\n entity,\n InstanceChecker.isDataSource(instance) ? instance.manager : instance,\n );\n\n this.adapter = new ExtraAttributesRepositoryAdapter<T, A>({\n ...ctx,\n repository: this,\n attributeRepository: this.manager.getRepository(attributeEntity),\n });\n }\n // ------------------------------------------------------------------------------\n\n override create(): T;\n\n override create(entityLikeArray: DeepPartial<T>[]): T[];\n\n override create(entityLike: DeepPartial<T>): T;\n\n override create(entityLike?: DeepPartial<T> | DeepPartial<T>[]): T | T[] {\n if (!entityLike) {\n return super.create();\n }\n\n if (Array.isArray(entityLike)) {\n return super.create(entityLike).map((entity, i) => {\n this.preserveExtraAttributes(entity, entityLike[i]);\n return entity;\n });\n }\n\n const entity = super.create(entityLike);\n this.preserveExtraAttributes(entity, entityLike);\n return entity;\n }\n\n private preserveExtraAttributes(entity: T, source: DeepPartial<T>): void {\n const columns = new Set<string>();\n for (const col of this.metadata.columns) {\n columns.add(col.propertyName);\n }\n for (const rel of this.metadata.relations) {\n columns.add(rel.propertyName);\n }\n\n for (const key of Object.keys(source)) {\n if (!columns.has(key) && !(key in entity)) {\n (entity as Record<string, any>)[key] = (source as Record<string, any>)[key];\n }\n }\n }\n\n // ------------------------------------------------------------------------------\n\n async saveOneWithEA<E extends Record<string, any>>(\n input: T & E,\n attributes?: E,\n options?: EARepositorySaveOptions<T>,\n ) : Promise<T & E> {\n return this.adapter.saveWithEA(input, attributes, options);\n }\n\n // ------------------------------------------------------------------------------\n\n async findOneWithEA(\n options: FindOneOptions<T>,\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<T | undefined> {\n return this.adapter.findOneWithEA(options, extraOptions);\n }\n\n async findManyWithEA<\n E extends Record<string, any>,\n >(\n options: FindManyOptions<T>,\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<(T & E)[]> {\n return this.adapter.findWithEA(options, extraOptions);\n }\n\n async findOneWithEAByPrimaryColumn<E extends Record<string, any>>(\n value: T[keyof T],\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<E> {\n return this.adapter.findOneWithEAByPrimaryColumn(value, extraOptions);\n }\n\n async extendOneWithEA<E extends Record<string, any>>(\n entity: T,\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<T & E> {\n return this.adapter.extendWithEA(entity, extraOptions);\n }\n\n async extendManyWithEA<E extends Record<string, any>>(\n entities: T[],\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<(T & E)[]> {\n return this.adapter.extendManyWithEA(entities, extraOptions);\n }\n}\n"],"mappings":";;;;;;AAyBA,IAAaG,eAAb,cAGUF,WAAAA;CACIG;CAEV,YACIC,UACAC,SACF;EACE,MAAM,EACFC,QACAC,iBACA,GAAGC,QACHH;EAEJ,MACIC,QACAP,gBAAgBU,aAAaL,QAAAA,IAAYA,SAASM,UAAUN,QAAAA;EAGhE,KAAKD,UAAU,IAAIF,iCAAuC;GACtD,GAAGO;GACHG,YAAY;GACZC,qBAAqB,KAAKF,QAAQG,cAAcN,eAAAA;EACpD,CAAA;CACJ;CASSO,OAAOC,YAAyD;EACrE,IAAI,CAACA,YACD,OAAO,MAAMD,OAAAA;EAGjB,IAAIE,MAAMC,QAAQF,UAAAA,GACd,OAAO,MAAMD,OAAOC,UAAAA,CAAAA,CAAYG,KAAKZ,QAAQa,MAAAA;GACzC,KAAKC,wBAAwBd,QAAQS,WAAWI,EAAE;GAClD,OAAOb;EACX,CAAA;EAGJ,MAAMA,SAAS,MAAMQ,OAAOC,UAAAA;EAC5B,KAAKK,wBAAwBd,QAAQS,UAAAA;EACrC,OAAOT;CACX;CAEQc,wBAAwBd,QAAWe,QAA8B;EACrE,MAAMC,0BAAU,IAAIC,IAAAA;EACpB,KAAK,MAAMC,OAAO,KAAKC,SAASH,SAC5BA,QAAQI,IAAIF,IAAIG,YAAY;EAEhC,KAAK,MAAMC,OAAO,KAAKH,SAASI,WAC5BP,QAAQI,IAAIE,IAAID,YAAY;EAGhC,KAAK,MAAMG,OAAOC,OAAOC,KAAKX,MAAAA,GAC1B,IAAI,CAACC,QAAQW,IAAIH,GAAAA,KAAQ,EAAEA,OAAOxB,SAC7BA,OAA+BwB,OAAO,OAAgCA;CAGnF;CAIA,MAAMI,cACFC,OACAC,YACA/B,SACe;EACf,OAAO,KAAKF,QAAQkC,WAAWF,OAAOC,YAAY/B,OAAAA;CACtD;CAIA,MAAMiC,cACFjC,SACAkC,eAAwC,CAAC,GAClB;EACvB,OAAO,KAAKpC,QAAQmC,cAAcjC,SAASkC,YAAAA;CAC/C;CAEA,MAAMC,eAGFnC,SACAkC,eAAwC,CAAC,GACtB;EACnB,OAAO,KAAKpC,QAAQsC,WAAWpC,SAASkC,YAAAA;CAC5C;CAEA,MAAMG,6BACFC,OACAJ,eAAwC,CAAC,GAC9B;EACX,OAAO,KAAKpC,QAAQuC,6BAA6BC,OAAOJ,YAAAA;CAC5D;CAEA,MAAMK,gBACFtC,QACAiC,eAAwC,CAAC,GAC1B;EACf,OAAO,KAAKpC,QAAQ0C,aAAavC,QAAQiC,YAAAA;CAC7C;CAEA,MAAMO,iBACFC,UACAR,eAAwC,CAAC,GACtB;EACnB,OAAO,KAAKpC,QAAQ2C,iBAAiBC,UAAUR,YAAAA;CACnD;AACJ"}
@@ -1,3 +1,6 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
1
4
  import { ExtraAttributesRepositoryAdapter } from "../adapter.mjs";
2
5
  //#region src/adapters/database/extra-attribute-repository/tree/adapter.ts
3
6
  var ExtraAttributesTreeRepositoryAdapter = class extends ExtraAttributesRepositoryAdapter {
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.mjs","names":["ExtraAttributesRepositoryAdapter","ExtraAttributesTreeRepositoryAdapter","saveWithEA","input","attributes","options","childColumnName","repository","metadata","treeChildrenRelation","propertyName","parentColumnName","treeParentRelation","children","parent","Array","isArray","child","undefined","extendManyWithEA","entities","extraOptions","flattened","flatten","attributesByPrimaryKey","findWithEAByPrimaryColumn","getPrimaryKeyValues","traverse","entity","value","primaryColumn","keys","Object","key","output","push","fn","data","datum"],"sources":["../../../../../src/adapters/database/extra-attribute-repository/tree/adapter.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { ObjectLiteral } from '@authup/kit';\nimport { ExtraAttributesRepositoryAdapter } from '../adapter.ts';\nimport type { EARepositoryEntityBase, EARepositoryFindOptions, EARepositorySaveOptions } from '../types.ts';\n\nexport class ExtraAttributesTreeRepositoryAdapter<\n T extends ObjectLiteral = ObjectLiteral,\n A extends EARepositoryEntityBase = EARepositoryEntityBase,\n> extends ExtraAttributesRepositoryAdapter<T, A> {\n async saveWithEA<E extends Record<string, any>>(\n input: T & E,\n attributes?: E,\n options?: EARepositorySaveOptions<T>,\n ) : Promise<T & E> {\n const childColumnName = this.repository.metadata.treeChildrenRelation?.propertyName;\n const parentColumnName = this.repository.metadata.treeParentRelation?.propertyName;\n\n let children : T | T[] | undefined;\n\n if (childColumnName && input[childColumnName]) {\n children = input[childColumnName];\n delete input[childColumnName];\n }\n\n if (\n parentColumnName &&\n options &&\n options.parent\n ) {\n input[parentColumnName as keyof T] = options.parent as (T & E)[keyof T];\n }\n\n await super.saveWithEA(input, attributes, options);\n\n if (\n parentColumnName &&\n options &&\n options.parent\n ) {\n delete input[parentColumnName as keyof T];\n }\n\n if (\n childColumnName &&\n parentColumnName &&\n children\n ) {\n if (Array.isArray(children)) {\n for (const child of children) {\n await this.saveWithEA(child, undefined, {\n ...(options || {}),\n parent: input,\n });\n }\n } else {\n await this.saveWithEA(children, undefined, {\n ...(options || {}),\n parent: input,\n });\n }\n\n input[childColumnName as keyof T] = children as (T & E)[keyof T];\n }\n\n return input;\n }\n\n // ------------------------------------------------------------------------------\n\n async extendManyWithEA<E extends Record<string, any>>(\n entities: T[],\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<(T & E)[]> {\n const flattened = this.flatten(entities);\n\n const attributesByPrimaryKey = await this.findWithEAByPrimaryColumn(\n this.getPrimaryKeyValues(flattened),\n extraOptions,\n );\n\n this.traverse(entities, (entity) => {\n const value = attributesByPrimaryKey[entity[this.primaryColumn] as string];\n if (!value) {\n return entity;\n }\n\n const keys = Object.keys(value);\n for (const key of keys) {\n entity[key as keyof T] = value[key] as T[keyof T];\n }\n\n return entity;\n });\n\n return entities as (T & E)[];\n }\n\n // ------------------------------------------------------------------------------\n\n protected flatten(entities: T | T[]) : T[] {\n const output : T[] = [];\n\n this.traverse(entities, (entity) => {\n output.push(entity);\n\n return entity;\n });\n\n return output;\n }\n\n protected traverse(entities: T | T[], fn: (entity: T) => T) {\n const data : T[] = Array.isArray(entities) ? entities : [entities];\n\n const childColumnName = this.repository.metadata.treeChildrenRelation?.propertyName;\n for (const datum of data) {\n fn(datum);\n\n if (childColumnName && datum[childColumnName]) {\n if (Array.isArray(datum[childColumnName])) {\n this.traverse(datum[childColumnName], fn);\n } else {\n this.traverse([datum[childColumnName]], fn);\n }\n }\n }\n }\n}\n"],"mappings":";;AAWA,IAAaC,uCAAb,cAGUD,iCAAAA;CACN,MAAME,WACFC,OACAC,YACAC,SACe;EACf,MAAMC,kBAAkB,KAAKC,WAAWC,SAASC,sBAAsBC;EACvE,MAAMC,mBAAmB,KAAKJ,WAAWC,SAASI,oBAAoBF;EAEtE,IAAIG;EAEJ,IAAIP,mBAAmBH,MAAMG,kBAAkB;GAC3CO,WAAWV,MAAMG;GACjB,OAAOH,MAAMG;EACjB;EAEA,IACIK,oBACAN,WACAA,QAAQS,QAERX,MAAMQ,oBAA+BN,QAAQS;EAGjD,MAAM,MAAMZ,WAAWC,OAAOC,YAAYC,OAAAA;EAE1C,IACIM,oBACAN,WACAA,QAAQS,QAER,OAAOX,MAAMQ;EAGjB,IACIL,mBACAK,oBACAE,UACF;GACE,IAAIE,MAAMC,QAAQH,QAAAA,GACd,KAAK,MAAMI,SAASJ,UAChB,MAAM,KAAKX,WAAWe,OAAOC,KAAAA,GAAW;IACpC,GAAIb,WAAW,CAAC;IAChBS,QAAQX;GACZ,CAAA;QAGJ,MAAM,KAAKD,WAAWW,UAAUK,KAAAA,GAAW;IACvC,GAAIb,WAAW,CAAC;IAChBS,QAAQX;GACZ,CAAA;GAGJA,MAAMG,mBAA8BO;EACxC;EAEA,OAAOV;CACX;CAIA,MAAMgB,iBACFC,UACAC,eAAwC,CAAC,GACtB;EACnB,MAAMC,YAAY,KAAKC,QAAQH,QAAAA;EAE/B,MAAMI,yBAAyB,MAAM,KAAKC,0BACtC,KAAKC,oBAAoBJ,SAAAA,GACzBD,YAAAA;EAGJ,KAAKM,SAASP,WAAWQ,WAAAA;GACrB,MAAMC,QAAQL,uBAAuBI,OAAO,KAAKE;GACjD,IAAI,CAACD,OACD,OAAOD;GAGX,MAAMG,OAAOC,OAAOD,KAAKF,KAAAA;GACzB,KAAK,MAAMI,OAAOF,MACdH,OAAOK,OAAkBJ,MAAMI;GAGnC,OAAOL;EACX,CAAA;EAEA,OAAOR;CACX;CAIUG,QAAQH,UAAyB;EACvC,MAAMc,SAAe,CAAA;EAErB,KAAKP,SAASP,WAAWQ,WAAAA;GACrBM,OAAOC,KAAKP,MAAAA;GAEZ,OAAOA;EACX,CAAA;EAEA,OAAOM;CACX;CAEUP,SAASP,UAAmBgB,IAAsB;EACxD,MAAMC,OAAatB,MAAMC,QAAQI,QAAAA,IAAYA,WAAW,CAACA,QAAAA;EAEzD,MAAMd,kBAAkB,KAAKC,WAAWC,SAASC,sBAAsBC;EACvE,KAAK,MAAM4B,SAASD,MAAM;GACtBD,GAAGE,KAAAA;GAEH,IAAIhC,mBAAmBgC,MAAMhC,kBACzB,IAAIS,MAAMC,QAAQsB,MAAMhC,gBAAgB,GACpC,KAAKqB,SAASW,MAAMhC,kBAAkB8B,EAAAA;QAEtC,KAAKT,SAAS,CAACW,MAAMhC,gBAAAA,GAAmB8B,EAAAA;EAGpD;CACJ;AACJ"}
1
+ {"version":3,"file":"adapter.mjs","names":["ExtraAttributesRepositoryAdapter","ExtraAttributesTreeRepositoryAdapter","saveWithEA","input","attributes","options","childColumnName","repository","metadata","treeChildrenRelation","propertyName","parentColumnName","treeParentRelation","children","parent","Array","isArray","child","undefined","extendManyWithEA","entities","extraOptions","flattened","flatten","attributesByPrimaryKey","findWithEAByPrimaryColumn","getPrimaryKeyValues","traverse","entity","value","primaryColumn","keys","Object","key","output","push","fn","data","datum"],"sources":["../../../../../src/adapters/database/extra-attribute-repository/tree/adapter.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { ObjectLiteral } from '@authup/kit';\nimport { ExtraAttributesRepositoryAdapter } from '../adapter.ts';\nimport type { EARepositoryEntityBase, EARepositoryFindOptions, EARepositorySaveOptions } from '../types.ts';\n\nexport class ExtraAttributesTreeRepositoryAdapter<\n T extends ObjectLiteral = ObjectLiteral,\n A extends EARepositoryEntityBase = EARepositoryEntityBase,\n> extends ExtraAttributesRepositoryAdapter<T, A> {\n async saveWithEA<E extends Record<string, any>>(\n input: T & E,\n attributes?: E,\n options?: EARepositorySaveOptions<T>,\n ) : Promise<T & E> {\n const childColumnName = this.repository.metadata.treeChildrenRelation?.propertyName;\n const parentColumnName = this.repository.metadata.treeParentRelation?.propertyName;\n\n let children : T | T[] | undefined;\n\n if (childColumnName && input[childColumnName]) {\n children = input[childColumnName];\n delete input[childColumnName];\n }\n\n if (\n parentColumnName &&\n options &&\n options.parent\n ) {\n input[parentColumnName as keyof T] = options.parent as (T & E)[keyof T];\n }\n\n await super.saveWithEA(input, attributes, options);\n\n if (\n parentColumnName &&\n options &&\n options.parent\n ) {\n delete input[parentColumnName as keyof T];\n }\n\n if (\n childColumnName &&\n parentColumnName &&\n children\n ) {\n if (Array.isArray(children)) {\n for (const child of children) {\n await this.saveWithEA(child, undefined, {\n ...(options || {}),\n parent: input,\n });\n }\n } else {\n await this.saveWithEA(children, undefined, {\n ...(options || {}),\n parent: input,\n });\n }\n\n input[childColumnName as keyof T] = children as (T & E)[keyof T];\n }\n\n return input;\n }\n\n // ------------------------------------------------------------------------------\n\n async extendManyWithEA<E extends Record<string, any>>(\n entities: T[],\n extraOptions: EARepositoryFindOptions = {},\n ) : Promise<(T & E)[]> {\n const flattened = this.flatten(entities);\n\n const attributesByPrimaryKey = await this.findWithEAByPrimaryColumn(\n this.getPrimaryKeyValues(flattened),\n extraOptions,\n );\n\n this.traverse(entities, (entity) => {\n const value = attributesByPrimaryKey[entity[this.primaryColumn] as string];\n if (!value) {\n return entity;\n }\n\n const keys = Object.keys(value);\n for (const key of keys) {\n entity[key as keyof T] = value[key] as T[keyof T];\n }\n\n return entity;\n });\n\n return entities as (T & E)[];\n }\n\n // ------------------------------------------------------------------------------\n\n protected flatten(entities: T | T[]) : T[] {\n const output : T[] = [];\n\n this.traverse(entities, (entity) => {\n output.push(entity);\n\n return entity;\n });\n\n return output;\n }\n\n protected traverse(entities: T | T[], fn: (entity: T) => T) {\n const data : T[] = Array.isArray(entities) ? entities : [entities];\n\n const childColumnName = this.repository.metadata.treeChildrenRelation?.propertyName;\n for (const datum of data) {\n fn(datum);\n\n if (childColumnName && datum[childColumnName]) {\n if (Array.isArray(datum[childColumnName])) {\n this.traverse(datum[childColumnName], fn);\n } else {\n this.traverse([datum[childColumnName]], fn);\n }\n }\n }\n }\n}\n"],"mappings":";;;;;AAWA,IAAaC,uCAAb,cAGUD,iCAAAA;CACN,MAAME,WACFC,OACAC,YACAC,SACe;EACf,MAAMC,kBAAkB,KAAKC,WAAWC,SAASC,sBAAsBC;EACvE,MAAMC,mBAAmB,KAAKJ,WAAWC,SAASI,oBAAoBF;EAEtE,IAAIG;EAEJ,IAAIP,mBAAmBH,MAAMG,kBAAkB;GAC3CO,WAAWV,MAAMG;GACjB,OAAOH,MAAMG;EACjB;EAEA,IACIK,oBACAN,WACAA,QAAQS,QAERX,MAAMQ,oBAA+BN,QAAQS;EAGjD,MAAM,MAAMZ,WAAWC,OAAOC,YAAYC,OAAAA;EAE1C,IACIM,oBACAN,WACAA,QAAQS,QAER,OAAOX,MAAMQ;EAGjB,IACIL,mBACAK,oBACAE,UACF;GACE,IAAIE,MAAMC,QAAQH,QAAAA,GACd,KAAK,MAAMI,SAASJ,UAChB,MAAM,KAAKX,WAAWe,OAAOC,KAAAA,GAAW;IACpC,GAAIb,WAAW,CAAC;IAChBS,QAAQX;GACZ,CAAA;QAGJ,MAAM,KAAKD,WAAWW,UAAUK,KAAAA,GAAW;IACvC,GAAIb,WAAW,CAAC;IAChBS,QAAQX;GACZ,CAAA;GAGJA,MAAMG,mBAA8BO;EACxC;EAEA,OAAOV;CACX;CAIA,MAAMgB,iBACFC,UACAC,eAAwC,CAAC,GACtB;EACnB,MAAMC,YAAY,KAAKC,QAAQH,QAAAA;EAE/B,MAAMI,yBAAyB,MAAM,KAAKC,0BACtC,KAAKC,oBAAoBJ,SAAAA,GACzBD,YAAAA;EAGJ,KAAKM,SAASP,WAAWQ,WAAAA;GACrB,MAAMC,QAAQL,uBAAuBI,OAAO,KAAKE;GACjD,IAAI,CAACD,OACD,OAAOD;GAGX,MAAMG,OAAOC,OAAOD,KAAKF,KAAAA;GACzB,KAAK,MAAMI,OAAOF,MACdH,OAAOK,OAAkBJ,MAAMI;GAGnC,OAAOL;EACX,CAAA;EAEA,OAAOR;CACX;CAIUG,QAAQH,UAAyB;EACvC,MAAMc,SAAe,CAAA;EAErB,KAAKP,SAASP,WAAWQ,WAAAA;GACrBM,OAAOC,KAAKP,MAAAA;GAEZ,OAAOA;EACX,CAAA;EAEA,OAAOM;CACX;CAEUP,SAASP,UAAmBgB,IAAsB;EACxD,MAAMC,OAAatB,MAAMC,QAAQI,QAAAA,IAAYA,WAAW,CAACA,QAAAA;EAEzD,MAAMd,kBAAkB,KAAKC,WAAWC,SAASC,sBAAsBC;EACvE,KAAK,MAAM4B,SAASD,MAAM;GACtBD,GAAGE,KAAAA;GAEH,IAAIhC,mBAAmBgC,MAAMhC,kBACzB,IAAIS,MAAMC,QAAQsB,MAAMhC,gBAAgB,GACpC,KAAKqB,SAASW,MAAMhC,kBAAkB8B,EAAAA;QAEtC,KAAKT,SAAS,CAACW,MAAMhC,gBAAAA,GAAmB8B,EAAAA;EAGpD;CACJ;AACJ"}
@@ -1,2 +1,5 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
1
4
  import { EATreeRepository } from "./repository.mjs";
2
5
  export { EATreeRepository };
@@ -1,3 +1,6 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
1
4
  import { ExtraAttributesTreeRepositoryAdapter } from "./adapter.mjs";
2
5
  import { FindOptionsUtils, InstanceChecker, TreeRepository, TreeRepositoryUtils } from "typeorm";
3
6
  //#region src/adapters/database/extra-attribute-repository/tree/repository.ts
@@ -1 +1 @@
1
- {"version":3,"file":"repository.mjs","names":["FindOptionsUtils","InstanceChecker","TreeRepository","TreeRepositoryUtils","ExtraAttributesTreeRepositoryAdapter","EATreeRepository","adapter","options","instance","entity","attributeEntity","ctx","isDataSource","manager","repository","attributeRepository","getRepository","create","entityLike","Array","isArray","map","i","preserveExtraAttributes","source","columns","Set","col","metadata","add","propertyName","rel","relations","key","Object","keys","has","saveOneWithEA","input","attributes","saveWithEA","findOneWithEA","extraOptions","findOneWithEAByPrimaryColumn","value","findManyWithEA","findWithEA","extendOneWithEA","output","extendManyWithEA","entities","findRoots","findDescendantsTree","qb","createDescendantsQueryBuilder","applyOptionsToTreeQueryBuilder","getRawAndEntities","relationMaps","createRelationMaps","raw","buildChildrenEntityTree","depth","findAncestors","findAncestorsTree","createAncestorsQueryBuilder","buildParentEntityTree","updateClosureTable","primaryKeyValue","primaryColumns","getEntityValue","closureTable","closureJunctionTable","executeClosureTableUpdate","connection","transaction","tableName","ancestorColumn","ancestorColumns","descendantColumn","descendantColumns","param","index","driver","createParameter","ancestors","query","databasePath","treeParentRelation","parentId","joinColumns","ancestorIds","filter","ancestor","length","descendants","descendantIds","descendant","placeholders","_","join","ancestorsOfDescendants","acc","reduce","curr","push","ancestorsOfDescendent","ancestorId","indexOf","descendantId"],"sources":["../../../../../src/adapters/database/extra-attribute-repository/tree/repository.ts"],"sourcesContent":["/*\n * Copyright (c) 2024-2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type {\n DataSource, \n DeepPartial, \n EntityManager, \n FindManyOptions, \n FindOneOptions, \n FindTreeOptions,\n SelectQueryBuilder,\n} from 'typeorm';\nimport {\n FindOptionsUtils,\n InstanceChecker,\n TreeRepository, \n TreeRepositoryUtils,\n} from 'typeorm';\nimport type { ObjectLiteral } from '@authup/kit';\nimport type { ExtraAttributesRepositoryAdapter } from '../adapter.ts';\nimport type {\n EARepositoryEntityBase, \n EARepositoryFindOptions, \n EARepositoryOptions, \n EARepositorySaveOptions, \n IEARepository,\n} from '../types.ts';\nimport { ExtraAttributesTreeRepositoryAdapter } from './adapter.ts';\n\n/**\n * @see https://github.com/typeorm/typeorm/blob/master/src/repository/TreeRepository.ts\n */\nexport class EATreeRepository<\n T extends ObjectLiteral = ObjectLiteral,\n A extends EARepositoryEntityBase = EARepositoryEntityBase,\n> extends TreeRepository<T> implements IEARepository<T> {\n protected adapter: ExtraAttributesRepositoryAdapter<T, A>;\n\n protected options: EARepositoryOptions<T, A>;\n\n constructor(\n instance: DataSource | EntityManager,\n options: EARepositoryOptions<T, A>,\n ) {\n const {\n entity,\n attributeEntity,\n ...ctx\n } = options;\n\n super(\n entity,\n InstanceChecker.isDataSource(instance) ? instance.manager : instance,\n );\n\n this.options = options;\n this.adapter = new ExtraAttributesTreeRepositoryAdapter<T, A>({\n ...ctx,\n repository: this,\n attributeRepository: this.manager.getRepository(attributeEntity),\n });\n }\n\n // ------------------------------------------------------------------------------\n\n override create(): T;\n\n override create(entityLikeArray: DeepPartial<T>[]): T[];\n\n override create(entityLike: DeepPartial<T>): T;\n\n override create(entityLike?: DeepPartial<T> | DeepPartial<T>[]): T | T[] {\n if (!entityLike) {\n return super.create();\n }\n\n if (Array.isArray(entityLike)) {\n return super.create(entityLike).map((entity, i) => {\n this.preserveExtraAttributes(entity, entityLike[i]);\n return entity;\n });\n }\n\n const entity = super.create(entityLike);\n this.preserveExtraAttributes(entity, entityLike);\n return entity;\n }\n\n private preserveExtraAttributes(entity: T, source: DeepPartial<T>): void {\n const columns = new Set<string>();\n for (const col of this.metadata.columns) {\n columns.add(col.propertyName);\n }\n for (const rel of this.metadata.relations) {\n columns.add(rel.propertyName);\n }\n\n for (const key of Object.keys(source)) {\n if (!columns.has(key) && !(key in entity)) {\n (entity as Record<string, any>)[key] = (source as Record<string, any>)[key];\n }\n }\n }\n\n // ------------------------------------------------------------------------------\n\n async saveOneWithEA<E extends Record<string, any>>(\n input: T & E,\n attributes?: E,\n options?: EARepositorySaveOptions<T>,\n ): Promise<T & E> {\n return this.adapter.saveWithEA(input, attributes, options);\n }\n\n // ------------------------------------------------------------------------------\n\n async findOneWithEA(\n options: FindOneOptions<T>,\n extraOptions: EARepositoryFindOptions = {},\n ): Promise<T | undefined> {\n return this.adapter.findOneWithEA(options, extraOptions);\n }\n\n async findOneWithEAByPrimaryColumn<E extends Record<string, any>>(\n value: T[keyof T],\n extraOptions?: EARepositoryFindOptions,\n ): Promise<E> {\n return this.adapter.findOneWithEAByPrimaryColumn(value, extraOptions);\n }\n\n async findManyWithEA<\n E extends Record<string, any>,\n >(\n options: FindManyOptions<T>,\n extraOptions: EARepositoryFindOptions = {},\n ): Promise<(T & E)[]> {\n return this.adapter.findWithEA(options, extraOptions);\n }\n\n // ------------------------------------------------------------------------------\n\n async extendOneWithEA<E extends Record<string, any>>(\n entity: T,\n extraOptions: EARepositoryFindOptions = {},\n ): Promise<T & E> {\n const [output] = await this.extendManyWithEA([entity], extraOptions);\n\n return output as (T & E);\n }\n\n async extendManyWithEA<E extends Record<string, any>>(\n entities: T[],\n extraOptions: EARepositoryFindOptions = {},\n ): Promise<(T & E)[]> {\n return this.adapter.extendManyWithEA(entities, extraOptions);\n }\n\n // -------------------------------------------------------------------------------\n\n async findRoots(options?: FindTreeOptions): Promise<T[]> {\n const entities = await super.findRoots(options);\n\n await this.extendManyWithEA(entities);\n\n return entities;\n }\n\n async findDescendantsTree(\n entity: T,\n options?: FindTreeOptions,\n ): Promise<T> {\n const qb: SelectQueryBuilder<T> = this.createDescendantsQueryBuilder(\n 'treeEntity',\n 'treeClosure',\n entity,\n );\n FindOptionsUtils.applyOptionsToTreeQueryBuilder(qb, options);\n\n const entities = await qb.getRawAndEntities();\n const relationMaps = TreeRepositoryUtils.createRelationMaps(\n this.manager,\n this.metadata,\n 'treeEntity',\n entities.raw,\n );\n\n await this.extendManyWithEA(entities.entities);\n\n TreeRepositoryUtils.buildChildrenEntityTree(\n this.metadata,\n entity,\n entities.entities,\n relationMaps,\n {\n depth: -1,\n ...options,\n },\n );\n\n // The descendants closure may include the root, but `entity` here is a\n // different reference than the one in `entities.entities`, so its own EA\n // fields are not populated. Load them explicitly so leaf-as-root callers\n // (e.g. policies bound directly to permissions/junctions) see EA.\n await this.extendOneWithEA(entity);\n\n return entity;\n }\n\n async findAncestors(\n entity: T,\n options?: FindTreeOptions,\n ): Promise<T[]> {\n const entities = await super.findAncestors(entity, options);\n\n await this.extendManyWithEA(entities);\n\n return entities;\n }\n\n // -------------------------------------------------------------------------------\n\n async findAncestorsTree(\n entity: T,\n options?: FindTreeOptions,\n ): Promise<T> {\n const qb = this.createAncestorsQueryBuilder(\n 'treeEntity',\n 'treeClosure',\n entity,\n );\n FindOptionsUtils.applyOptionsToTreeQueryBuilder(qb, options);\n\n const entities = await qb.getRawAndEntities();\n const relationMaps = TreeRepositoryUtils.createRelationMaps(\n this.manager,\n this.metadata,\n 'treeEntity',\n entities.raw,\n );\n\n await this.extendManyWithEA(entities.entities);\n\n TreeRepositoryUtils.buildParentEntityTree(\n this.metadata,\n entity,\n entities.entities,\n relationMaps,\n );\n return entity;\n }\n\n // -------------------------------------------------------------------------------\n\n async updateClosureTable(entity: T, manager?: EntityManager) {\n const primaryKeyValue = this.metadata.primaryColumns[0].getEntityValue(entity);\n if (!primaryKeyValue) {\n return;\n }\n\n const closureTable = this.metadata.closureJunctionTable;\n if (!closureTable) {\n return;\n }\n\n if (manager) {\n await this.executeClosureTableUpdate(entity, manager);\n } else {\n await this.manager.connection.transaction(async (manager) => {\n await this.executeClosureTableUpdate(entity, manager);\n });\n }\n }\n\n private async executeClosureTableUpdate(entity: T, manager: EntityManager) {\n const primaryKeyValue = this.metadata.primaryColumns[0].getEntityValue(entity);\n\n const { tableName } = this.metadata.closureJunctionTable;\n const ancestorColumn = this.metadata.closureJunctionTable.ancestorColumns[0];\n const descendantColumn = this.metadata.closureJunctionTable.descendantColumns[0];\n\n const param = (index: number) => manager.connection.driver.createParameter(`p${index}`, index);\n\n // 1. Get All ancestors of current entity\n const ancestors = await manager.query<Record<string, any>[]>(\n `SELECT *\n FROM ${tableName}\n WHERE ${ancestorColumn.databasePath} != ${descendantColumn.databasePath} AND\n ${descendantColumn.databasePath} = ${param(0)} AND\n ${ancestorColumn.databasePath} != ${param(1)}`,\n [primaryKeyValue, primaryKeyValue],\n );\n\n if (!this.metadata.treeParentRelation) {\n return;\n }\n\n const parentId = this.metadata.treeParentRelation.joinColumns[0].getEntityValue(entity);\n\n let ancestorIds : string[];\n if (parentId) {\n ancestorIds = [\n parentId,\n ...ancestors\n .filter((ancestor) => ancestor[ancestorColumn.databasePath] !== parentId)\n .map((ancestor) => ancestor[ancestorColumn.databasePath]),\n ];\n } else {\n ancestorIds = ancestors.map((ancestor) => ancestor[ancestorColumn.databasePath]);\n }\n\n if (ancestorIds.length === 0) {\n return;\n }\n\n // 2. Get All descendants of current entity.\n const descendants = await manager.query<Record<string, any>[]>(\n `SELECT *\n FROM ${tableName}\n WHERE ${ancestorColumn.databasePath} != ${descendantColumn.databasePath} AND\n ${ancestorColumn.databasePath} = ${param(0)} AND\n ${descendantColumn.databasePath} != ${param(1)}`,\n [primaryKeyValue, primaryKeyValue],\n );\n\n if (parentId) {\n // 3. get all descendant\n const descendantIds = descendants\n .map((descendant) => descendant[descendantColumn.databasePath]);\n\n if (descendantIds.length > 0) {\n // 4. get all ancestors of each descendant\n const placeholders = descendantIds.map((_, i) => param(i + 1)).join(',');\n const ancestorsOfDescendants = await manager.query<Record<string, any>[]>(\n `SELECT *\n FROM ${tableName}\n WHERE\n ${ancestorColumn.databasePath} != ${param(0)} AND\n ${ancestorColumn.databasePath} != ${descendantColumn.databasePath} AND\n ${descendantColumn.databasePath} IN (${placeholders})`,\n [primaryKeyValue, ...descendantIds],\n );\n\n const acc = ancestorsOfDescendants.reduce((acc, curr) => {\n if (!acc[curr[descendantColumn.databasePath]]) {\n acc[curr[descendantColumn.databasePath]] = [];\n }\n\n acc[curr[descendantColumn.databasePath]].push(curr[ancestorColumn.databasePath]);\n return acc;\n }, {} as Record<string, string[]>);\n\n // 5. Check if for each child a relation exists with each ancestor (create if not exist)\n for (const descendant of descendantIds) {\n const ancestorsOfDescendent = acc[descendant] ?? [];\n\n for (const ancestorId of ancestorIds) {\n const index = ancestorsOfDescendent.indexOf(ancestorId);\n if (index === -1) {\n await manager.query(\n `INSERT INTO ${tableName}\n (${ancestorColumn.databasePath}, ${descendantColumn.databasePath})\n VALUES (${param(0)}, ${param(1)})`,\n [ancestorId, descendant],\n );\n }\n }\n }\n }\n } else {\n const descendantIds = [\n primaryKeyValue,\n ...descendants.map((descendant) => descendant[descendantColumn.databasePath]),\n ];\n\n for (const ancestorId of ancestorIds) {\n for (const descendantId of descendantIds) {\n await manager.query(\n `DELETE FROM ${tableName}\n WHERE ${ancestorColumn.databasePath} = ${param(0)}\n AND ${descendantColumn.databasePath} = ${param(1)}`,\n [ancestorId, descendantId],\n );\n }\n }\n }\n }\n}\n"],"mappings":";;;;;GAoCA,IAAaK,mBAAb,cAGUH,eAAAA;CACII;CAEAC;CAEV,YACIC,UACAD,SACF;EACE,MAAM,EACFE,QACAC,iBACA,GAAGC,QACHJ;EAEJ,MACIE,QACAR,gBAAgBW,aAAaJ,QAAAA,IAAYA,SAASK,UAAUL,QAAAA;EAGhE,KAAKD,UAAUA;EACf,KAAKD,UAAU,IAAIF,qCAA2C;GAC1D,GAAGO;GACHG,YAAY;GACZC,qBAAqB,KAAKF,QAAQG,cAAcN,eAAAA;EACpD,CAAA;CACJ;CAUSO,OAAOC,YAAyD;EACrE,IAAI,CAACA,YACD,OAAO,MAAMD,OAAAA;EAGjB,IAAIE,MAAMC,QAAQF,UAAAA,GACd,OAAO,MAAMD,OAAOC,UAAAA,EAAYG,KAAKZ,QAAQa,MAAAA;GACzC,KAAKC,wBAAwBd,QAAQS,WAAWI,EAAE;GAClD,OAAOb;EACX,CAAA;EAGJ,MAAMA,SAAS,MAAMQ,OAAOC,UAAAA;EAC5B,KAAKK,wBAAwBd,QAAQS,UAAAA;EACrC,OAAOT;CACX;CAEQc,wBAAwBd,QAAWe,QAA8B;EACrE,MAAMC,0BAAU,IAAIC,IAAAA;EACpB,KAAK,MAAMC,OAAO,KAAKC,SAASH,SAC5BA,QAAQI,IAAIF,IAAIG,YAAY;EAEhC,KAAK,MAAMC,OAAO,KAAKH,SAASI,WAC5BP,QAAQI,IAAIE,IAAID,YAAY;EAGhC,KAAK,MAAMG,OAAOC,OAAOC,KAAKX,MAAAA,GAC1B,IAAI,CAACC,QAAQW,IAAIH,GAAAA,KAAQ,EAAEA,OAAOxB,SAC7BA,OAA+BwB,OAAO,OAAgCA;CAGnF;CAIA,MAAMI,cACFC,OACAC,YACAhC,SACc;EACd,OAAO,KAAKD,QAAQkC,WAAWF,OAAOC,YAAYhC,OAAAA;CACtD;CAIA,MAAMkC,cACFlC,SACAmC,eAAwC,CAAC,GACnB;EACtB,OAAO,KAAKpC,QAAQmC,cAAclC,SAASmC,YAAAA;CAC/C;CAEA,MAAMC,6BACFC,OACAF,cACU;EACV,OAAO,KAAKpC,QAAQqC,6BAA6BC,OAAOF,YAAAA;CAC5D;CAEA,MAAMG,eAGFtC,SACAmC,eAAwC,CAAC,GACvB;EAClB,OAAO,KAAKpC,QAAQwC,WAAWvC,SAASmC,YAAAA;CAC5C;CAIA,MAAMK,gBACFtC,QACAiC,eAAwC,CAAC,GAC3B;EACd,MAAM,CAACM,UAAU,MAAM,KAAKC,iBAAiB,CAACxC,MAAAA,GAASiC,YAAAA;EAEvD,OAAOM;CACX;CAEA,MAAMC,iBACFC,UACAR,eAAwC,CAAC,GACvB;EAClB,OAAO,KAAKpC,QAAQ2C,iBAAiBC,UAAUR,YAAAA;CACnD;CAIA,MAAMS,UAAU5C,SAAyC;EACrD,MAAM2C,WAAW,MAAM,MAAMC,UAAU5C,OAAAA;EAEvC,MAAM,KAAK0C,iBAAiBC,QAAAA;EAE5B,OAAOA;CACX;CAEA,MAAME,oBACF3C,QACAF,SACU;EACV,MAAM8C,KAA4B,KAAKC,8BACnC,cACA,eACA7C,MAAAA;EAEJT,iBAAiBuD,+BAA+BF,IAAI9C,OAAAA;EAEpD,MAAM2C,WAAW,MAAMG,GAAGG,kBAAiB;EAC3C,MAAMC,eAAetD,oBAAoBuD,mBACrC,KAAK7C,SACL,KAAKe,UACL,cACAsB,SAASS,GAAG;EAGhB,MAAM,KAAKV,iBAAiBC,SAASA,QAAQ;EAE7C/C,oBAAoByD,wBAChB,KAAKhC,UACLnB,QACAyC,SAASA,UACTO,cACA;GACII,OAAO;GACP,GAAGtD;EACP,CAAA;EAOJ,MAAM,KAAKwC,gBAAgBtC,MAAAA;EAE3B,OAAOA;CACX;CAEA,MAAMqD,cACFrD,QACAF,SACY;EACZ,MAAM2C,WAAW,MAAM,MAAMY,cAAcrD,QAAQF,OAAAA;EAEnD,MAAM,KAAK0C,iBAAiBC,QAAAA;EAE5B,OAAOA;CACX;CAIA,MAAMa,kBACFtD,QACAF,SACU;EACV,MAAM8C,KAAK,KAAKW,4BACZ,cACA,eACAvD,MAAAA;EAEJT,iBAAiBuD,+BAA+BF,IAAI9C,OAAAA;EAEpD,MAAM2C,WAAW,MAAMG,GAAGG,kBAAiB;EAC3C,MAAMC,eAAetD,oBAAoBuD,mBACrC,KAAK7C,SACL,KAAKe,UACL,cACAsB,SAASS,GAAG;EAGhB,MAAM,KAAKV,iBAAiBC,SAASA,QAAQ;EAE7C/C,oBAAoB8D,sBAChB,KAAKrC,UACLnB,QACAyC,SAASA,UACTO,YAAAA;EAEJ,OAAOhD;CACX;CAIA,MAAMyD,mBAAmBzD,QAAWI,SAAyB;EAEzD,IAAI,CADoB,KAAKe,SAASwC,eAAe,GAAGC,eAAe5D,MAClE0D,GACD;EAIJ,IAAI,CADiB,KAAKvC,SAAS2C,sBAE/B;EAGJ,IAAI1D,SACA,MAAM,KAAK2D,0BAA0B/D,QAAQI,OAAAA;OAE7C,MAAM,KAAKA,QAAQ4D,WAAWC,YAAY,OAAO7D,YAAAA;GAC7C,MAAM,KAAK2D,0BAA0B/D,QAAQI,OAAAA;EACjD,CAAA;CAER;CAEA,MAAc2D,0BAA0B/D,QAAWI,SAAwB;EACvE,MAAMsD,kBAAkB,KAAKvC,SAASwC,eAAe,GAAGC,eAAe5D,MAAAA;EAEvE,MAAM,EAAEkE,cAAc,KAAK/C,SAAS2C;EACpC,MAAMK,iBAAiB,KAAKhD,SAAS2C,qBAAqBM,gBAAgB;EAC1E,MAAMC,mBAAmB,KAAKlD,SAAS2C,qBAAqBQ,kBAAkB;EAE9E,MAAMC,SAASC,UAAkBpE,QAAQ4D,WAAWS,OAAOC,gBAAgB,IAAIF,SAASA,KAAAA;EAGxF,MAAMG,YAAY,MAAMvE,QAAQwE,MAC5B;wBACYV,UAAU;yBACTC,eAAeU,aAAa,MAAMR,iBAAiBQ,aAAa;yBAChER,iBAAiBQ,aAAa,KAAKN,MAAM,CAAA,EAAG;yBAC5CJ,eAAeU,aAAa,MAAMN,MAAM,CAAA,KACrD,CAACb,iBAAiBA,eAAAA,CAAgB;EAGtC,IAAI,CAAC,KAAKvC,SAAS2D,oBACf;EAGJ,MAAMC,WAAW,KAAK5D,SAAS2D,mBAAmBE,YAAY,GAAGpB,eAAe5D,MAAAA;EAEhF,IAAIiF;EACJ,IAAIF,UACAE,cAAc,CACVF,UAAAA,GACGJ,UACEO,QAAQC,aAAaA,SAAShB,eAAeU,kBAAkBE,QAAAA,EAC/DnE,KAAKuE,aAAaA,SAAShB,eAAeU,aAAa,CAAA;OAGhEI,cAAcN,UAAU/D,KAAKuE,aAAaA,SAAShB,eAAeU,aAAa;EAGnF,IAAII,YAAYG,WAAW,GACvB;EAIJ,MAAMC,cAAc,MAAMjF,QAAQwE,MAC9B;4BACgBV,UAAU;6BACTC,eAAeU,aAAa,MAAMR,iBAAiBQ,aAAa;6BAChEV,eAAeU,aAAa,KAAKN,MAAM,CAAA,EAAG;6BAC1CF,iBAAiBQ,aAAa,MAAMN,MAAM,CAAA,KAC3D,CAACb,iBAAiBA,eAAAA,CAAgB;EAGtC,IAAIqB,UAAU;GAEV,MAAMO,gBAAgBD,YACjBzE,KAAK2E,eAAeA,WAAWlB,iBAAiBQ,aAAa;GAElE,IAAIS,cAAcF,SAAS,GAAG;IAE1B,MAAMI,eAAeF,cAAc1E,KAAK6E,GAAG5E,MAAM0D,MAAM1D,IAAI,CAAA,CAAA,EAAI6E,KAAK,GAAA;IAWpE,MAAME,OAAMD,MAVyBvF,QAAQwE,MACzC;gCACYV,UAAU;;+BAEXC,eAAeU,aAAa,MAAMN,MAAM,CAAA,EAAG;+BAC3CJ,eAAeU,aAAa,MAAMR,iBAAiBQ,aAAa;+BAChER,iBAAiBQ,aAAa,OAAOW,aAAa,IAC7D,CAAC9B,iBAAAA,GAAoB4B,aAAAA,CAAc,GAGJO,QAAQD,KAAKE,SAAAA;KAC5C,IAAI,CAACF,IAAIE,KAAKzB,iBAAiBQ,gBAC3Be,IAAIE,KAAKzB,iBAAiBQ,iBAAiB,CAAA;KAG/Ce,IAAIE,KAAKzB,iBAAiBQ,eAAekB,KAAKD,KAAK3B,eAAeU,aAAa;KAC/E,OAAOe;IACX,GAAG,CAAC,CAAA;IAGJ,KAAK,MAAML,cAAcD,eAAe;KACpC,MAAMU,wBAAwBJ,IAAIL,eAAe,CAAA;KAEjD,KAAK,MAAMU,cAAchB,aAErB,IADce,sBAAsBE,QAAQD,UACxCzB,MAAU,IACV,MAAMpE,QAAQwE,MACV,eAAeV,UAAU;uCAClBC,eAAeU,aAAa,IAAIR,iBAAiBQ,aAAa;8CACvDN,MAAM,CAAA,EAAG,IAAIA,MAAM,CAAA,EAAG,IACpC,CAAC0B,YAAYV,UAAAA,CAAW;IAIxC;GACJ;EACJ,OAAO;GACH,MAAMD,gBAAgB,CAClB5B,iBAAAA,GACG2B,YAAYzE,KAAK2E,eAAeA,WAAWlB,iBAAiBQ,aAAa,CAAA;GAGhF,KAAK,MAAMoB,cAAchB,aACrB,KAAK,MAAMkB,gBAAgBb,eACvB,MAAMlF,QAAQwE,MACV,eAAeV,UAAU;oCACbC,eAAeU,aAAa,KAAKN,MAAM,CAAA,EAAG;oCAC1CF,iBAAiBQ,aAAa,KAAKN,MAAM,CAAA,KACrD,CAAC0B,YAAYE,YAAAA,CAAa;EAI1C;CACJ;AACJ"}
1
+ {"version":3,"file":"repository.mjs","names":["FindOptionsUtils","InstanceChecker","TreeRepository","TreeRepositoryUtils","ExtraAttributesTreeRepositoryAdapter","EATreeRepository","adapter","options","instance","entity","attributeEntity","ctx","isDataSource","manager","repository","attributeRepository","getRepository","create","entityLike","Array","isArray","map","i","preserveExtraAttributes","source","columns","Set","col","metadata","add","propertyName","rel","relations","key","Object","keys","has","saveOneWithEA","input","attributes","saveWithEA","findOneWithEA","extraOptions","findOneWithEAByPrimaryColumn","value","findManyWithEA","findWithEA","extendOneWithEA","output","extendManyWithEA","entities","findRoots","findDescendantsTree","qb","createDescendantsQueryBuilder","applyOptionsToTreeQueryBuilder","getRawAndEntities","relationMaps","createRelationMaps","raw","buildChildrenEntityTree","depth","findAncestors","findAncestorsTree","createAncestorsQueryBuilder","buildParentEntityTree","updateClosureTable","primaryKeyValue","primaryColumns","getEntityValue","closureTable","closureJunctionTable","executeClosureTableUpdate","connection","transaction","tableName","ancestorColumn","ancestorColumns","descendantColumn","descendantColumns","param","index","driver","createParameter","ancestors","query","databasePath","treeParentRelation","parentId","joinColumns","ancestorIds","filter","ancestor","length","descendants","descendantIds","descendant","placeholders","_","join","ancestorsOfDescendants","acc","reduce","curr","push","ancestorsOfDescendent","ancestorId","indexOf","descendantId"],"sources":["../../../../../src/adapters/database/extra-attribute-repository/tree/repository.ts"],"sourcesContent":["/*\n * Copyright (c) 2024-2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type {\n DataSource, \n DeepPartial, \n EntityManager, \n FindManyOptions, \n FindOneOptions, \n FindTreeOptions,\n SelectQueryBuilder,\n} from 'typeorm';\nimport {\n FindOptionsUtils,\n InstanceChecker,\n TreeRepository, \n TreeRepositoryUtils,\n} from 'typeorm';\nimport type { ObjectLiteral } from '@authup/kit';\nimport type { ExtraAttributesRepositoryAdapter } from '../adapter.ts';\nimport type {\n EARepositoryEntityBase, \n EARepositoryFindOptions, \n EARepositoryOptions, \n EARepositorySaveOptions, \n IEARepository,\n} from '../types.ts';\nimport { ExtraAttributesTreeRepositoryAdapter } from './adapter.ts';\n\n/**\n * @see https://github.com/typeorm/typeorm/blob/master/src/repository/TreeRepository.ts\n */\nexport class EATreeRepository<\n T extends ObjectLiteral = ObjectLiteral,\n A extends EARepositoryEntityBase = EARepositoryEntityBase,\n> extends TreeRepository<T> implements IEARepository<T> {\n protected adapter: ExtraAttributesRepositoryAdapter<T, A>;\n\n protected options: EARepositoryOptions<T, A>;\n\n constructor(\n instance: DataSource | EntityManager,\n options: EARepositoryOptions<T, A>,\n ) {\n const {\n entity,\n attributeEntity,\n ...ctx\n } = options;\n\n super(\n entity,\n InstanceChecker.isDataSource(instance) ? instance.manager : instance,\n );\n\n this.options = options;\n this.adapter = new ExtraAttributesTreeRepositoryAdapter<T, A>({\n ...ctx,\n repository: this,\n attributeRepository: this.manager.getRepository(attributeEntity),\n });\n }\n\n // ------------------------------------------------------------------------------\n\n override create(): T;\n\n override create(entityLikeArray: DeepPartial<T>[]): T[];\n\n override create(entityLike: DeepPartial<T>): T;\n\n override create(entityLike?: DeepPartial<T> | DeepPartial<T>[]): T | T[] {\n if (!entityLike) {\n return super.create();\n }\n\n if (Array.isArray(entityLike)) {\n return super.create(entityLike).map((entity, i) => {\n this.preserveExtraAttributes(entity, entityLike[i]);\n return entity;\n });\n }\n\n const entity = super.create(entityLike);\n this.preserveExtraAttributes(entity, entityLike);\n return entity;\n }\n\n private preserveExtraAttributes(entity: T, source: DeepPartial<T>): void {\n const columns = new Set<string>();\n for (const col of this.metadata.columns) {\n columns.add(col.propertyName);\n }\n for (const rel of this.metadata.relations) {\n columns.add(rel.propertyName);\n }\n\n for (const key of Object.keys(source)) {\n if (!columns.has(key) && !(key in entity)) {\n (entity as Record<string, any>)[key] = (source as Record<string, any>)[key];\n }\n }\n }\n\n // ------------------------------------------------------------------------------\n\n async saveOneWithEA<E extends Record<string, any>>(\n input: T & E,\n attributes?: E,\n options?: EARepositorySaveOptions<T>,\n ): Promise<T & E> {\n return this.adapter.saveWithEA(input, attributes, options);\n }\n\n // ------------------------------------------------------------------------------\n\n async findOneWithEA(\n options: FindOneOptions<T>,\n extraOptions: EARepositoryFindOptions = {},\n ): Promise<T | undefined> {\n return this.adapter.findOneWithEA(options, extraOptions);\n }\n\n async findOneWithEAByPrimaryColumn<E extends Record<string, any>>(\n value: T[keyof T],\n extraOptions?: EARepositoryFindOptions,\n ): Promise<E> {\n return this.adapter.findOneWithEAByPrimaryColumn(value, extraOptions);\n }\n\n async findManyWithEA<\n E extends Record<string, any>,\n >(\n options: FindManyOptions<T>,\n extraOptions: EARepositoryFindOptions = {},\n ): Promise<(T & E)[]> {\n return this.adapter.findWithEA(options, extraOptions);\n }\n\n // ------------------------------------------------------------------------------\n\n async extendOneWithEA<E extends Record<string, any>>(\n entity: T,\n extraOptions: EARepositoryFindOptions = {},\n ): Promise<T & E> {\n const [output] = await this.extendManyWithEA([entity], extraOptions);\n\n return output as (T & E);\n }\n\n async extendManyWithEA<E extends Record<string, any>>(\n entities: T[],\n extraOptions: EARepositoryFindOptions = {},\n ): Promise<(T & E)[]> {\n return this.adapter.extendManyWithEA(entities, extraOptions);\n }\n\n // -------------------------------------------------------------------------------\n\n async findRoots(options?: FindTreeOptions): Promise<T[]> {\n const entities = await super.findRoots(options);\n\n await this.extendManyWithEA(entities);\n\n return entities;\n }\n\n async findDescendantsTree(\n entity: T,\n options?: FindTreeOptions,\n ): Promise<T> {\n const qb: SelectQueryBuilder<T> = this.createDescendantsQueryBuilder(\n 'treeEntity',\n 'treeClosure',\n entity,\n );\n FindOptionsUtils.applyOptionsToTreeQueryBuilder(qb, options);\n\n const entities = await qb.getRawAndEntities();\n const relationMaps = TreeRepositoryUtils.createRelationMaps(\n this.manager,\n this.metadata,\n 'treeEntity',\n entities.raw,\n );\n\n await this.extendManyWithEA(entities.entities);\n\n TreeRepositoryUtils.buildChildrenEntityTree(\n this.metadata,\n entity,\n entities.entities,\n relationMaps,\n {\n depth: -1,\n ...options,\n },\n );\n\n // The descendants closure may include the root, but `entity` here is a\n // different reference than the one in `entities.entities`, so its own EA\n // fields are not populated. Load them explicitly so leaf-as-root callers\n // (e.g. policies bound directly to permissions/junctions) see EA.\n await this.extendOneWithEA(entity);\n\n return entity;\n }\n\n async findAncestors(\n entity: T,\n options?: FindTreeOptions,\n ): Promise<T[]> {\n const entities = await super.findAncestors(entity, options);\n\n await this.extendManyWithEA(entities);\n\n return entities;\n }\n\n // -------------------------------------------------------------------------------\n\n async findAncestorsTree(\n entity: T,\n options?: FindTreeOptions,\n ): Promise<T> {\n const qb = this.createAncestorsQueryBuilder(\n 'treeEntity',\n 'treeClosure',\n entity,\n );\n FindOptionsUtils.applyOptionsToTreeQueryBuilder(qb, options);\n\n const entities = await qb.getRawAndEntities();\n const relationMaps = TreeRepositoryUtils.createRelationMaps(\n this.manager,\n this.metadata,\n 'treeEntity',\n entities.raw,\n );\n\n await this.extendManyWithEA(entities.entities);\n\n TreeRepositoryUtils.buildParentEntityTree(\n this.metadata,\n entity,\n entities.entities,\n relationMaps,\n );\n return entity;\n }\n\n // -------------------------------------------------------------------------------\n\n async updateClosureTable(entity: T, manager?: EntityManager) {\n const primaryKeyValue = this.metadata.primaryColumns[0].getEntityValue(entity);\n if (!primaryKeyValue) {\n return;\n }\n\n const closureTable = this.metadata.closureJunctionTable;\n if (!closureTable) {\n return;\n }\n\n if (manager) {\n await this.executeClosureTableUpdate(entity, manager);\n } else {\n await this.manager.connection.transaction(async (manager) => {\n await this.executeClosureTableUpdate(entity, manager);\n });\n }\n }\n\n private async executeClosureTableUpdate(entity: T, manager: EntityManager) {\n const primaryKeyValue = this.metadata.primaryColumns[0].getEntityValue(entity);\n\n const { tableName } = this.metadata.closureJunctionTable;\n const ancestorColumn = this.metadata.closureJunctionTable.ancestorColumns[0];\n const descendantColumn = this.metadata.closureJunctionTable.descendantColumns[0];\n\n const param = (index: number) => manager.connection.driver.createParameter(`p${index}`, index);\n\n // 1. Get All ancestors of current entity\n const ancestors = await manager.query<Record<string, any>[]>(\n `SELECT *\n FROM ${tableName}\n WHERE ${ancestorColumn.databasePath} != ${descendantColumn.databasePath} AND\n ${descendantColumn.databasePath} = ${param(0)} AND\n ${ancestorColumn.databasePath} != ${param(1)}`,\n [primaryKeyValue, primaryKeyValue],\n );\n\n if (!this.metadata.treeParentRelation) {\n return;\n }\n\n const parentId = this.metadata.treeParentRelation.joinColumns[0].getEntityValue(entity);\n\n let ancestorIds : string[];\n if (parentId) {\n ancestorIds = [\n parentId,\n ...ancestors\n .filter((ancestor) => ancestor[ancestorColumn.databasePath] !== parentId)\n .map((ancestor) => ancestor[ancestorColumn.databasePath]),\n ];\n } else {\n ancestorIds = ancestors.map((ancestor) => ancestor[ancestorColumn.databasePath]);\n }\n\n if (ancestorIds.length === 0) {\n return;\n }\n\n // 2. Get All descendants of current entity.\n const descendants = await manager.query<Record<string, any>[]>(\n `SELECT *\n FROM ${tableName}\n WHERE ${ancestorColumn.databasePath} != ${descendantColumn.databasePath} AND\n ${ancestorColumn.databasePath} = ${param(0)} AND\n ${descendantColumn.databasePath} != ${param(1)}`,\n [primaryKeyValue, primaryKeyValue],\n );\n\n if (parentId) {\n // 3. get all descendant\n const descendantIds = descendants\n .map((descendant) => descendant[descendantColumn.databasePath]);\n\n if (descendantIds.length > 0) {\n // 4. get all ancestors of each descendant\n const placeholders = descendantIds.map((_, i) => param(i + 1)).join(',');\n const ancestorsOfDescendants = await manager.query<Record<string, any>[]>(\n `SELECT *\n FROM ${tableName}\n WHERE\n ${ancestorColumn.databasePath} != ${param(0)} AND\n ${ancestorColumn.databasePath} != ${descendantColumn.databasePath} AND\n ${descendantColumn.databasePath} IN (${placeholders})`,\n [primaryKeyValue, ...descendantIds],\n );\n\n const acc = ancestorsOfDescendants.reduce((acc, curr) => {\n if (!acc[curr[descendantColumn.databasePath]]) {\n acc[curr[descendantColumn.databasePath]] = [];\n }\n\n acc[curr[descendantColumn.databasePath]].push(curr[ancestorColumn.databasePath]);\n return acc;\n }, {} as Record<string, string[]>);\n\n // 5. Check if for each child a relation exists with each ancestor (create if not exist)\n for (const descendant of descendantIds) {\n const ancestorsOfDescendent = acc[descendant] ?? [];\n\n for (const ancestorId of ancestorIds) {\n const index = ancestorsOfDescendent.indexOf(ancestorId);\n if (index === -1) {\n await manager.query(\n `INSERT INTO ${tableName}\n (${ancestorColumn.databasePath}, ${descendantColumn.databasePath})\n VALUES (${param(0)}, ${param(1)})`,\n [ancestorId, descendant],\n );\n }\n }\n }\n }\n } else {\n const descendantIds = [\n primaryKeyValue,\n ...descendants.map((descendant) => descendant[descendantColumn.databasePath]),\n ];\n\n for (const ancestorId of ancestorIds) {\n for (const descendantId of descendantIds) {\n await manager.query(\n `DELETE FROM ${tableName}\n WHERE ${ancestorColumn.databasePath} = ${param(0)}\n AND ${descendantColumn.databasePath} = ${param(1)}`,\n [ancestorId, descendantId],\n );\n }\n }\n }\n }\n}\n"],"mappings":"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"}
@@ -1 +1,4 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
1
4
  export {};
@@ -1,2 +1,5 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
1
4
  import { isDatabaseTypeSupported, isDatabaseTypeSupportedForEnvironment } from "./is-supported.mjs";
2
5
  export { isDatabaseTypeSupported, isDatabaseTypeSupportedForEnvironment };
@@ -1,3 +1,6 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
1
4
  import { EnvironmentName } from "@authup/kit";
2
5
  //#region src/adapters/database/helpers/is-supported.ts
3
6
  function isDatabaseTypeSupported(type) {
@@ -1 +1 @@
1
- {"version":3,"file":"is-supported.mjs","names":["EnvironmentName","isDatabaseTypeSupported","type","isDatabaseTypeSupportedForEnvironment","env","PRODUCTION"],"sources":["../../../../src/adapters/database/helpers/is-supported.ts"],"sourcesContent":["/*\n * Copyright (c) 2024-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\nimport type { DatabaseType } from 'typeorm';\nimport { EnvironmentName } from '@authup/kit';\n\nexport function isDatabaseTypeSupported(type: DatabaseType) : boolean {\n return type === 'mysql' ||\n type === 'postgres' ||\n type === 'better-sqlite3';\n}\n\nexport function isDatabaseTypeSupportedForEnvironment(type: DatabaseType, env: string) : boolean {\n if (env === EnvironmentName.PRODUCTION) {\n return type !== 'better-sqlite3' && type !== 'sqlite';\n }\n\n return true;\n}\n"],"mappings":";;AASA,SAAgBC,wBAAwBC,MAAkB;CACtD,OAAOA,SAAS,WACZA,SAAS,cACTA,SAAS;AACjB;AAEA,SAAgBC,sCAAsCD,MAAoBE,KAAW;CACjF,IAAIA,QAAQJ,gBAAgBK,YACxB,OAAOH,SAAS,oBAAoBA,SAAS;CAGjD,OAAO;AACX"}
1
+ {"version":3,"file":"is-supported.mjs","names":["EnvironmentName","isDatabaseTypeSupported","type","isDatabaseTypeSupportedForEnvironment","env","PRODUCTION"],"sources":["../../../../src/adapters/database/helpers/is-supported.ts"],"sourcesContent":["/*\n * Copyright (c) 2024-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\nimport type { DatabaseType } from 'typeorm';\nimport { EnvironmentName } from '@authup/kit';\n\nexport function isDatabaseTypeSupported(type: DatabaseType) : boolean {\n return type === 'mysql' ||\n type === 'postgres' ||\n type === 'better-sqlite3';\n}\n\nexport function isDatabaseTypeSupportedForEnvironment(type: DatabaseType, env: string) : boolean {\n if (env === EnvironmentName.PRODUCTION) {\n return type !== 'better-sqlite3' && type !== 'sqlite';\n }\n\n return true;\n}\n"],"mappings":";;;;;AASA,SAAgBC,wBAAwBC,MAAkB;CACtD,OAAOA,SAAS,WACZA,SAAS,cACTA,SAAS;AACjB;AAEA,SAAgBC,sCAAsCD,MAAoBE,KAAW;CACjF,IAAIA,QAAQJ,gBAAgBK,YACxB,OAAOH,SAAS,oBAAoBA,SAAS;CAGjD,OAAO;AACX"}
@@ -1,3 +1,6 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
1
4
  import { RealmEntity } from "./domains/realm/entity.mjs";
2
5
  import { RealmRepository } from "./domains/realm/repository.mjs";
3
6
  import { CachePrefix } from "./domains/constants.mjs";
@@ -1,2 +1,5 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
1
4
  import { DatabaseLogger } from "./module.mjs";
2
5
  export { DatabaseLogger };
@@ -1,3 +1,6 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
1
4
  import { AdvancedConsoleLogger } from "typeorm";
2
5
  //#region src/adapters/database/logger/module.ts
3
6
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"module.mjs","names":["AdvancedConsoleLogger","DatabaseLogger","logger","writeLog","level","logMessage","messages","prepareLogMessages","message","type","debug","info","prefix","warn","error"],"sources":["../../../../src/adapters/database/logger/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Logger } from '@authup/server-kit';\nimport type { LogLevel, LogMessage } from 'typeorm';\nimport { AdvancedConsoleLogger } from 'typeorm';\n\n/**\n * @see https://github.com/typeorm/typeorm/blob/master/src/logger/AdvancedConsoleLogger.ts\n */\n\nexport class DatabaseLogger extends AdvancedConsoleLogger {\n protected logger : Logger;\n\n constructor(logger : Logger) {\n super();\n\n this.logger = logger;\n }\n\n protected writeLog(\n level: LogLevel,\n logMessage: LogMessage | LogMessage[],\n ) {\n const messages = this.prepareLogMessages(logMessage);\n\n for (const message of messages) {\n switch (message.type ?? level) {\n case 'log':\n case 'schema-build':\n case 'migration':\n this.logger.debug(`[DB]: ${message.message}`);\n break;\n\n case 'info':\n case 'query':\n this.logger.info(`[DB]: ${message.message}`);\n break;\n\n case 'warn':\n case 'query-slow':\n if (message.prefix) {\n this.logger.warn(`[DB]: ${message.prefix} ${message.message}`);\n } else {\n this.logger.warn(`[DB]: ${message.message}`);\n }\n break;\n\n case 'error':\n case 'query-error':\n if (message.prefix) {\n this.logger.error(`[DB]: ${message.prefix} ${message.message}`);\n } else {\n this.logger.error(`[DB]: ${message.message}`);\n }\n break;\n }\n }\n }\n}\n"],"mappings":";;;;GAeA,IAAaC,iBAAb,cAAoCD,sBAAAA;CACtBE;CAEV,YAAYA,QAAiB;EACzB,MAAK;EAEL,KAAKA,SAASA;CAClB;CAEUC,SACNC,OACAC,YACF;EACE,MAAMC,WAAW,KAAKC,mBAAmBF,UAAAA;EAEzC,KAAK,MAAMG,WAAWF,UAClB,QAAQE,QAAQC,QAAQL,OAAxB;GACI,KAAK;GACL,KAAK;GACL,KAAK;IACD,KAAKF,OAAOQ,MAAM,SAASF,QAAQA,SAAS;IAC5C;GAEJ,KAAK;GACL,KAAK;IACD,KAAKN,OAAOS,KAAK,SAASH,QAAQA,SAAS;IAC3C;GAEJ,KAAK;GACL,KAAK;IACD,IAAIA,QAAQI,QACR,KAAKV,OAAOW,KAAK,SAASL,QAAQI,OAAO,GAAGJ,QAAQA,SAAS;SAE7D,KAAKN,OAAOW,KAAK,SAASL,QAAQA,SAAS;IAE/C;GAEJ,KAAK;GACL,KAAK;IACD,IAAIA,QAAQI,QACR,KAAKV,OAAOY,MAAM,SAASN,QAAQI,OAAO,GAAGJ,QAAQA,SAAS;SAE9D,KAAKN,OAAOY,MAAM,SAASN,QAAQA,SAAS;IAEhD;EACR;CAER;AACJ"}
1
+ {"version":3,"file":"module.mjs","names":["AdvancedConsoleLogger","DatabaseLogger","logger","writeLog","level","logMessage","messages","prepareLogMessages","message","type","debug","info","prefix","warn","error"],"sources":["../../../../src/adapters/database/logger/module.ts"],"sourcesContent":["/*\n * Copyright (c) 2025.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport type { Logger } from '@authup/server-kit';\nimport type { LogLevel, LogMessage } from 'typeorm';\nimport { AdvancedConsoleLogger } from 'typeorm';\n\n/**\n * @see https://github.com/typeorm/typeorm/blob/master/src/logger/AdvancedConsoleLogger.ts\n */\n\nexport class DatabaseLogger extends AdvancedConsoleLogger {\n protected logger : Logger;\n\n constructor(logger : Logger) {\n super();\n\n this.logger = logger;\n }\n\n protected writeLog(\n level: LogLevel,\n logMessage: LogMessage | LogMessage[],\n ) {\n const messages = this.prepareLogMessages(logMessage);\n\n for (const message of messages) {\n switch (message.type ?? level) {\n case 'log':\n case 'schema-build':\n case 'migration':\n this.logger.debug(`[DB]: ${message.message}`);\n break;\n\n case 'info':\n case 'query':\n this.logger.info(`[DB]: ${message.message}`);\n break;\n\n case 'warn':\n case 'query-slow':\n if (message.prefix) {\n this.logger.warn(`[DB]: ${message.prefix} ${message.message}`);\n } else {\n this.logger.warn(`[DB]: ${message.message}`);\n }\n break;\n\n case 'error':\n case 'query-error':\n if (message.prefix) {\n this.logger.error(`[DB]: ${message.prefix} ${message.message}`);\n } else {\n this.logger.error(`[DB]: ${message.message}`);\n }\n break;\n }\n }\n }\n}\n"],"mappings":";;;;;;;GAeA,IAAaC,iBAAb,cAAoCD,sBAAAA;CACtBE;CAEV,YAAYA,QAAiB;EACzB,MAAK;EAEL,KAAKA,SAASA;CAClB;CAEUC,SACNC,OACAC,YACF;EACE,MAAMC,WAAW,KAAKC,mBAAmBF,UAAAA;EAEzC,KAAK,MAAMG,WAAWF,UAClB,QAAQE,QAAQC,QAAQL,OAAxB;GACI,KAAK;GACL,KAAK;GACL,KAAK;IACD,KAAKF,OAAOQ,MAAM,SAASF,QAAQA,SAAS;IAC5C;GAEJ,KAAK;GACL,KAAK;IACD,KAAKN,OAAOS,KAAK,SAASH,QAAQA,SAAS;IAC3C;GAEJ,KAAK;GACL,KAAK;IACD,IAAIA,QAAQI,QACR,KAAKV,OAAOW,KAAK,SAASL,QAAQI,OAAO,GAAGJ,QAAQA,SAAS;SAE7D,KAAKN,OAAOW,KAAK,SAASL,QAAQA,SAAS;IAE/C;GAEJ,KAAK;GACL,KAAK;IACD,IAAIA,QAAQI,QACR,KAAKV,OAAOY,MAAM,SAASN,QAAQI,OAAO,GAAGJ,QAAQA,SAAS;SAE9D,KAAKN,OAAOY,MAAM,SAASN,QAAQA,SAAS;IAEhD;EACR;CAER;AACJ"}
@@ -1,3 +1,6 @@
1
+ import "node:path";
2
+ import "node:url";
3
+ import.meta.url;
1
4
  //#region src/adapters/database/migrations/mysql/1673449341125-Default.ts
2
5
  var Default1673449341125 = class {
3
6
  name = "Default1673449341125";