@authup/server-core 1.0.0-beta.18 → 1.0.0-beta.19

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 (435) hide show
  1. package/dist/commands/reset.js +1 -2
  2. package/dist/commands/reset.js.map +1 -1
  3. package/dist/commands/setup.js +1 -2
  4. package/dist/commands/setup.js.map +1 -1
  5. package/dist/commands/start.js +1 -2
  6. package/dist/commands/start.js.map +1 -1
  7. package/dist/config/build.js +1 -2
  8. package/dist/config/build.js.map +1 -1
  9. package/dist/config/module.js +3 -4
  10. package/dist/config/module.js.map +1 -1
  11. package/dist/config/parse.js +1 -2
  12. package/dist/config/parse.js.map +1 -1
  13. package/dist/config/services/logger.js +1 -2
  14. package/dist/config/services/logger.js.map +1 -1
  15. package/dist/config/services/redis.js +2 -3
  16. package/dist/config/services/redis.js.map +1 -1
  17. package/dist/config/services/smtp.js +1 -2
  18. package/dist/config/services/smtp.js.map +1 -1
  19. package/dist/config/services/vault.js +1 -2
  20. package/dist/config/services/vault.js.map +1 -1
  21. package/dist/config/setup.js +1 -2
  22. package/dist/config/setup.js.map +1 -1
  23. package/dist/config/utils/database.js +3 -4
  24. package/dist/config/utils/database.js.map +1 -1
  25. package/dist/config/utils/env.js +1 -2
  26. package/dist/config/utils/env.js.map +1 -1
  27. package/dist/core/domain-event-publisher/module.js +2 -3
  28. package/dist/core/domain-event-publisher/module.js.map +1 -1
  29. package/dist/core/smtp/module.js +1 -2
  30. package/dist/core/smtp/module.js.map +1 -1
  31. package/dist/core/smtp/singleton.js +3 -4
  32. package/dist/core/smtp/singleton.js.map +1 -1
  33. package/dist/database/helpers/data-source-options.js +2 -3
  34. package/dist/database/helpers/data-source-options.js.map +1 -1
  35. package/dist/database/helpers/entities.js +1 -2
  36. package/dist/database/helpers/entities.js.map +1 -1
  37. package/dist/database/helpers/subscribers.d.ts.map +1 -1
  38. package/dist/database/helpers/subscribers.js +4 -2
  39. package/dist/database/helpers/subscribers.js.map +1 -1
  40. package/dist/database/helpers/uniqueness.js +1 -2
  41. package/dist/database/helpers/uniqueness.js.map +1 -1
  42. package/dist/database/seeds/utils.js +1 -2
  43. package/dist/database/seeds/utils.js.map +1 -1
  44. package/dist/database/subscribers/index.d.ts +3 -0
  45. package/dist/database/subscribers/index.d.ts.map +1 -1
  46. package/dist/database/subscribers/index.js +3 -0
  47. package/dist/database/subscribers/index.js.map +1 -1
  48. package/dist/database/subscribers/permission.d.ts +9 -0
  49. package/dist/database/subscribers/permission.d.ts.map +1 -0
  50. package/dist/database/subscribers/permission.js +79 -0
  51. package/dist/database/subscribers/permission.js.map +1 -0
  52. package/dist/database/subscribers/policy-attribute.d.ts +9 -0
  53. package/dist/database/subscribers/policy-attribute.d.ts.map +1 -0
  54. package/dist/database/subscribers/policy-attribute.js +91 -0
  55. package/dist/database/subscribers/policy-attribute.js.map +1 -0
  56. package/dist/database/subscribers/policy.d.ts +9 -0
  57. package/dist/database/subscribers/policy.d.ts.map +1 -0
  58. package/dist/database/subscribers/policy.js +79 -0
  59. package/dist/database/subscribers/policy.js.map +1 -0
  60. package/dist/domains/constants.d.ts +2 -0
  61. package/dist/domains/constants.d.ts.map +1 -1
  62. package/dist/domains/constants.js +2 -0
  63. package/dist/domains/constants.js.map +1 -1
  64. package/dist/domains/identity-provider/flow/factory.js +1 -2
  65. package/dist/domains/identity-provider/flow/factory.js.map +1 -1
  66. package/dist/domains/identity-provider/protocol/ldap/extract.js +1 -2
  67. package/dist/domains/identity-provider/protocol/ldap/extract.js.map +1 -1
  68. package/dist/domains/identity-provider/protocol/ldap/validation.js +1 -2
  69. package/dist/domains/identity-provider/protocol/ldap/validation.js.map +1 -1
  70. package/dist/domains/identity-provider/protocol/oauth2/extract.js +1 -2
  71. package/dist/domains/identity-provider/protocol/oauth2/extract.js.map +1 -1
  72. package/dist/domains/identity-provider/protocol/oauth2/validation.js +1 -2
  73. package/dist/domains/identity-provider/protocol/oauth2/validation.js.map +1 -1
  74. package/dist/domains/key/utils/sign.js +1 -2
  75. package/dist/domains/key/utils/sign.js.map +1 -1
  76. package/dist/domains/key/utils/singleton.js +1 -2
  77. package/dist/domains/key/utils/singleton.js.map +1 -1
  78. package/dist/domains/key/utils/verify.js +1 -2
  79. package/dist/domains/key/utils/verify.js.map +1 -1
  80. package/dist/domains/policy/built-in/attribute-names.js +1 -2
  81. package/dist/domains/policy/built-in/attribute-names.js.map +1 -1
  82. package/dist/domains/policy/built-in/attributes.js +1 -2
  83. package/dist/domains/policy/built-in/attributes.js.map +1 -1
  84. package/dist/domains/policy/built-in/date.js +1 -2
  85. package/dist/domains/policy/built-in/date.js.map +1 -1
  86. package/dist/domains/policy/built-in/time.js +1 -2
  87. package/dist/domains/policy/built-in/time.js.map +1 -1
  88. package/dist/domains/policy/repository.d.ts +1 -1
  89. package/dist/domains/policy/repository.d.ts.map +1 -1
  90. package/dist/domains/policy/repository.js +6 -5
  91. package/dist/domains/policy/repository.js.map +1 -1
  92. package/dist/domains/realm/utils/query.js +2 -3
  93. package/dist/domains/realm/utils/query.js.map +1 -1
  94. package/dist/domains/realm/utils/resolve.js +1 -2
  95. package/dist/domains/realm/utils/resolve.js.map +1 -1
  96. package/dist/domains/robot/vault.js +4 -5
  97. package/dist/domains/robot/vault.js.map +1 -1
  98. package/dist/domains/robot-permission/entity.js +1 -1
  99. package/dist/domains/robot-permission/entity.js.map +1 -1
  100. package/dist/domains/role/repository.d.ts +3 -2
  101. package/dist/domains/role/repository.d.ts.map +1 -1
  102. package/dist/domains/role/repository.js +16 -4
  103. package/dist/domains/role/repository.js.map +1 -1
  104. package/dist/domains/role-attribute/entity.d.ts +1 -1
  105. package/dist/domains/role-attribute/entity.d.ts.map +1 -1
  106. package/dist/domains/role-attribute/entity.js +3 -3
  107. package/dist/domains/role-attribute/entity.js.map +1 -1
  108. package/dist/domains/role-permission/entity.js +1 -1
  109. package/dist/domains/role-permission/entity.js.map +1 -1
  110. package/dist/domains/user-permission/entity.js +1 -1
  111. package/dist/domains/user-permission/entity.js.map +1 -1
  112. package/dist/http/controllers/client/handlers/create.d.ts.map +1 -1
  113. package/dist/http/controllers/client/handlers/create.js +5 -3
  114. package/dist/http/controllers/client/handlers/create.js.map +1 -1
  115. package/dist/http/controllers/client/handlers/delete.d.ts.map +1 -1
  116. package/dist/http/controllers/client/handlers/delete.js +7 -4
  117. package/dist/http/controllers/client/handlers/delete.js.map +1 -1
  118. package/dist/http/controllers/client/handlers/read.d.ts.map +1 -1
  119. package/dist/http/controllers/client/handlers/read.js +22 -8
  120. package/dist/http/controllers/client/handlers/read.js.map +1 -1
  121. package/dist/http/controllers/client/handlers/update.d.ts.map +1 -1
  122. package/dist/http/controllers/client/handlers/update.js +6 -4
  123. package/dist/http/controllers/client/handlers/update.js.map +1 -1
  124. package/dist/http/controllers/client-scope/handlers/create.d.ts.map +1 -1
  125. package/dist/http/controllers/client-scope/handlers/create.js +5 -3
  126. package/dist/http/controllers/client-scope/handlers/create.js.map +1 -1
  127. package/dist/http/controllers/client-scope/handlers/delete.d.ts.map +1 -1
  128. package/dist/http/controllers/client-scope/handlers/delete.js +7 -4
  129. package/dist/http/controllers/client-scope/handlers/delete.js.map +1 -1
  130. package/dist/http/controllers/client-scope/handlers/read.d.ts.map +1 -1
  131. package/dist/http/controllers/client-scope/handlers/read.js +18 -4
  132. package/dist/http/controllers/client-scope/handlers/read.js.map +1 -1
  133. package/dist/http/controllers/identity-provide-role/handlers/create.d.ts.map +1 -1
  134. package/dist/http/controllers/identity-provide-role/handlers/create.js +5 -3
  135. package/dist/http/controllers/identity-provide-role/handlers/create.js.map +1 -1
  136. package/dist/http/controllers/identity-provide-role/handlers/delete.d.ts.map +1 -1
  137. package/dist/http/controllers/identity-provide-role/handlers/delete.js +7 -4
  138. package/dist/http/controllers/identity-provide-role/handlers/delete.js.map +1 -1
  139. package/dist/http/controllers/identity-provide-role/handlers/read.d.ts.map +1 -1
  140. package/dist/http/controllers/identity-provide-role/handlers/read.js +18 -4
  141. package/dist/http/controllers/identity-provide-role/handlers/read.js.map +1 -1
  142. package/dist/http/controllers/identity-provide-role/handlers/update.d.ts.map +1 -1
  143. package/dist/http/controllers/identity-provide-role/handlers/update.js +6 -4
  144. package/dist/http/controllers/identity-provide-role/handlers/update.js.map +1 -1
  145. package/dist/http/controllers/identity-provider/handlers/create.d.ts.map +1 -1
  146. package/dist/http/controllers/identity-provider/handlers/create.js +5 -3
  147. package/dist/http/controllers/identity-provider/handlers/create.js.map +1 -1
  148. package/dist/http/controllers/identity-provider/handlers/custom.d.ts.map +1 -1
  149. package/dist/http/controllers/identity-provider/handlers/custom.js +5 -5
  150. package/dist/http/controllers/identity-provider/handlers/custom.js.map +1 -1
  151. package/dist/http/controllers/identity-provider/handlers/delete.d.ts.map +1 -1
  152. package/dist/http/controllers/identity-provider/handlers/delete.js +10 -7
  153. package/dist/http/controllers/identity-provider/handlers/delete.js.map +1 -1
  154. package/dist/http/controllers/identity-provider/handlers/read.d.ts.map +1 -1
  155. package/dist/http/controllers/identity-provider/handlers/read.js +12 -6
  156. package/dist/http/controllers/identity-provider/handlers/read.js.map +1 -1
  157. package/dist/http/controllers/identity-provider/handlers/update.d.ts.map +1 -1
  158. package/dist/http/controllers/identity-provider/handlers/update.js +6 -4
  159. package/dist/http/controllers/identity-provider/handlers/update.js.map +1 -1
  160. package/dist/http/controllers/identity-provider/module.js +2 -2
  161. package/dist/http/controllers/identity-provider/module.js.map +1 -1
  162. package/dist/http/controllers/permission/handlers/create.d.ts.map +1 -1
  163. package/dist/http/controllers/permission/handlers/create.js +5 -3
  164. package/dist/http/controllers/permission/handlers/create.js.map +1 -1
  165. package/dist/http/controllers/permission/handlers/delete.d.ts.map +1 -1
  166. package/dist/http/controllers/permission/handlers/delete.js +7 -4
  167. package/dist/http/controllers/permission/handlers/delete.js.map +1 -1
  168. package/dist/http/controllers/permission/handlers/read.d.ts.map +1 -1
  169. package/dist/http/controllers/permission/handlers/read.js +20 -4
  170. package/dist/http/controllers/permission/handlers/read.js.map +1 -1
  171. package/dist/http/controllers/permission/handlers/update.d.ts.map +1 -1
  172. package/dist/http/controllers/permission/handlers/update.js +6 -4
  173. package/dist/http/controllers/permission/handlers/update.js.map +1 -1
  174. package/dist/http/controllers/policy/handlers/create.d.ts.map +1 -1
  175. package/dist/http/controllers/policy/handlers/create.js +5 -3
  176. package/dist/http/controllers/policy/handlers/create.js.map +1 -1
  177. package/dist/http/controllers/policy/handlers/delete.d.ts.map +1 -1
  178. package/dist/http/controllers/policy/handlers/delete.js +7 -4
  179. package/dist/http/controllers/policy/handlers/delete.js.map +1 -1
  180. package/dist/http/controllers/policy/handlers/read.d.ts.map +1 -1
  181. package/dist/http/controllers/policy/handlers/read.js +20 -4
  182. package/dist/http/controllers/policy/handlers/read.js.map +1 -1
  183. package/dist/http/controllers/policy/handlers/update.d.ts.map +1 -1
  184. package/dist/http/controllers/policy/handlers/update.js +6 -4
  185. package/dist/http/controllers/policy/handlers/update.js.map +1 -1
  186. package/dist/http/controllers/realm/handlers/create.d.ts.map +1 -1
  187. package/dist/http/controllers/realm/handlers/create.js +5 -3
  188. package/dist/http/controllers/realm/handlers/create.js.map +1 -1
  189. package/dist/http/controllers/realm/handlers/delete.d.ts.map +1 -1
  190. package/dist/http/controllers/realm/handlers/delete.js +9 -6
  191. package/dist/http/controllers/realm/handlers/delete.js.map +1 -1
  192. package/dist/http/controllers/realm/handlers/jwks.d.ts.map +1 -1
  193. package/dist/http/controllers/realm/handlers/jwks.js +3 -3
  194. package/dist/http/controllers/realm/handlers/jwks.js.map +1 -1
  195. package/dist/http/controllers/realm/handlers/openid.d.ts.map +1 -1
  196. package/dist/http/controllers/realm/handlers/openid.js +3 -3
  197. package/dist/http/controllers/realm/handlers/openid.js.map +1 -1
  198. package/dist/http/controllers/realm/handlers/read.d.ts.map +1 -1
  199. package/dist/http/controllers/realm/handlers/read.js +6 -7
  200. package/dist/http/controllers/realm/handlers/read.js.map +1 -1
  201. package/dist/http/controllers/realm/handlers/update.d.ts.map +1 -1
  202. package/dist/http/controllers/realm/handlers/update.js +6 -4
  203. package/dist/http/controllers/realm/handlers/update.js.map +1 -1
  204. package/dist/http/controllers/register.js +1 -2
  205. package/dist/http/controllers/register.js.map +1 -1
  206. package/dist/http/controllers/robot/handlers/create.d.ts.map +1 -1
  207. package/dist/http/controllers/robot/handlers/create.js +6 -9
  208. package/dist/http/controllers/robot/handlers/create.js.map +1 -1
  209. package/dist/http/controllers/robot/handlers/delete.d.ts.map +1 -1
  210. package/dist/http/controllers/robot/handlers/delete.js +6 -9
  211. package/dist/http/controllers/robot/handlers/delete.js.map +1 -1
  212. package/dist/http/controllers/robot/handlers/integrity.d.ts.map +1 -1
  213. package/dist/http/controllers/robot/handlers/integrity.js +3 -3
  214. package/dist/http/controllers/robot/handlers/integrity.js.map +1 -1
  215. package/dist/http/controllers/robot/handlers/read.d.ts.map +1 -1
  216. package/dist/http/controllers/robot/handlers/read.js +22 -8
  217. package/dist/http/controllers/robot/handlers/read.js.map +1 -1
  218. package/dist/http/controllers/robot/handlers/update.d.ts.map +1 -1
  219. package/dist/http/controllers/robot/handlers/update.js +5 -9
  220. package/dist/http/controllers/robot/handlers/update.js.map +1 -1
  221. package/dist/http/controllers/robot-permission/handlers/create.js +5 -6
  222. package/dist/http/controllers/robot-permission/handlers/create.js.map +1 -1
  223. package/dist/http/controllers/robot-permission/handlers/delete.d.ts.map +1 -1
  224. package/dist/http/controllers/robot-permission/handlers/delete.js +7 -5
  225. package/dist/http/controllers/robot-permission/handlers/delete.js.map +1 -1
  226. package/dist/http/controllers/robot-permission/handlers/read.d.ts.map +1 -1
  227. package/dist/http/controllers/robot-permission/handlers/read.js +16 -4
  228. package/dist/http/controllers/robot-permission/handlers/read.js.map +1 -1
  229. package/dist/http/controllers/robot-role/handlers/create.js +5 -6
  230. package/dist/http/controllers/robot-role/handlers/create.js.map +1 -1
  231. package/dist/http/controllers/robot-role/handlers/delete.d.ts.map +1 -1
  232. package/dist/http/controllers/robot-role/handlers/delete.js +9 -11
  233. package/dist/http/controllers/robot-role/handlers/delete.js.map +1 -1
  234. package/dist/http/controllers/robot-role/handlers/read.d.ts.map +1 -1
  235. package/dist/http/controllers/robot-role/handlers/read.js +18 -4
  236. package/dist/http/controllers/robot-role/handlers/read.js.map +1 -1
  237. package/dist/http/controllers/role/handlers/create.d.ts.map +1 -1
  238. package/dist/http/controllers/role/handlers/create.js +5 -3
  239. package/dist/http/controllers/role/handlers/create.js.map +1 -1
  240. package/dist/http/controllers/role/handlers/delete.d.ts.map +1 -1
  241. package/dist/http/controllers/role/handlers/delete.js +7 -4
  242. package/dist/http/controllers/role/handlers/delete.js.map +1 -1
  243. package/dist/http/controllers/role/handlers/read.d.ts.map +1 -1
  244. package/dist/http/controllers/role/handlers/read.js +20 -4
  245. package/dist/http/controllers/role/handlers/read.js.map +1 -1
  246. package/dist/http/controllers/role/handlers/update.d.ts.map +1 -1
  247. package/dist/http/controllers/role/handlers/update.js +6 -4
  248. package/dist/http/controllers/role/handlers/update.js.map +1 -1
  249. package/dist/http/controllers/role-attribute/handlers/create.js +2 -3
  250. package/dist/http/controllers/role-attribute/handlers/create.js.map +1 -1
  251. package/dist/http/controllers/role-attribute/handlers/delete.d.ts.map +1 -1
  252. package/dist/http/controllers/role-attribute/handlers/delete.js +4 -4
  253. package/dist/http/controllers/role-attribute/handlers/delete.js.map +1 -1
  254. package/dist/http/controllers/role-attribute/handlers/read.d.ts.map +1 -1
  255. package/dist/http/controllers/role-attribute/handlers/read.js +15 -6
  256. package/dist/http/controllers/role-attribute/handlers/read.js.map +1 -1
  257. package/dist/http/controllers/role-attribute/handlers/update.js +3 -4
  258. package/dist/http/controllers/role-attribute/handlers/update.js.map +1 -1
  259. package/dist/http/controllers/role-permission/handlers/create.js +5 -6
  260. package/dist/http/controllers/role-permission/handlers/create.js.map +1 -1
  261. package/dist/http/controllers/role-permission/handlers/delete.d.ts.map +1 -1
  262. package/dist/http/controllers/role-permission/handlers/delete.js +5 -5
  263. package/dist/http/controllers/role-permission/handlers/delete.js.map +1 -1
  264. package/dist/http/controllers/role-permission/handlers/read.d.ts.map +1 -1
  265. package/dist/http/controllers/role-permission/handlers/read.js +18 -4
  266. package/dist/http/controllers/role-permission/handlers/read.js.map +1 -1
  267. package/dist/http/controllers/root/authorize/handlers/run.js +1 -2
  268. package/dist/http/controllers/root/authorize/handlers/run.js.map +1 -1
  269. package/dist/http/controllers/root/base/handlers/activate.js +2 -2
  270. package/dist/http/controllers/root/base/handlers/activate.js.map +1 -1
  271. package/dist/http/controllers/root/base/handlers/password-forgot.js +2 -2
  272. package/dist/http/controllers/root/base/handlers/password-forgot.js.map +1 -1
  273. package/dist/http/controllers/root/base/handlers/password-reset.js +2 -2
  274. package/dist/http/controllers/root/base/handlers/password-reset.js.map +1 -1
  275. package/dist/http/controllers/root/base/handlers/register.js +2 -2
  276. package/dist/http/controllers/root/base/handlers/register.js.map +1 -1
  277. package/dist/http/controllers/root/jwks/handlers/read.d.ts.map +1 -1
  278. package/dist/http/controllers/root/jwks/handlers/read.js +4 -4
  279. package/dist/http/controllers/root/jwks/handlers/read.js.map +1 -1
  280. package/dist/http/controllers/root/openid/handlers/configuration.js +1 -2
  281. package/dist/http/controllers/root/openid/handlers/configuration.js.map +1 -1
  282. package/dist/http/controllers/root/status/module.js +2 -3
  283. package/dist/http/controllers/root/status/module.js.map +1 -1
  284. package/dist/http/controllers/root/token/handlers/create.js +1 -2
  285. package/dist/http/controllers/root/token/handlers/create.js.map +1 -1
  286. package/dist/http/controllers/root/token/handlers/introspect.js +2 -2
  287. package/dist/http/controllers/root/token/handlers/introspect.js.map +1 -1
  288. package/dist/http/controllers/scope/handlers/create.d.ts.map +1 -1
  289. package/dist/http/controllers/scope/handlers/create.js +5 -3
  290. package/dist/http/controllers/scope/handlers/create.js.map +1 -1
  291. package/dist/http/controllers/scope/handlers/delete.d.ts.map +1 -1
  292. package/dist/http/controllers/scope/handlers/delete.js +7 -4
  293. package/dist/http/controllers/scope/handlers/delete.js.map +1 -1
  294. package/dist/http/controllers/scope/handlers/read.d.ts.map +1 -1
  295. package/dist/http/controllers/scope/handlers/read.js +20 -4
  296. package/dist/http/controllers/scope/handlers/read.js.map +1 -1
  297. package/dist/http/controllers/scope/handlers/update.d.ts.map +1 -1
  298. package/dist/http/controllers/scope/handlers/update.js +6 -4
  299. package/dist/http/controllers/scope/handlers/update.js.map +1 -1
  300. package/dist/http/controllers/user/handlers/create.d.ts.map +1 -1
  301. package/dist/http/controllers/user/handlers/create.js +6 -4
  302. package/dist/http/controllers/user/handlers/create.js.map +1 -1
  303. package/dist/http/controllers/user/handlers/delete.d.ts.map +1 -1
  304. package/dist/http/controllers/user/handlers/delete.js +7 -4
  305. package/dist/http/controllers/user/handlers/delete.js.map +1 -1
  306. package/dist/http/controllers/user/handlers/read.d.ts.map +1 -1
  307. package/dist/http/controllers/user/handlers/read.js +34 -21
  308. package/dist/http/controllers/user/handlers/read.js.map +1 -1
  309. package/dist/http/controllers/user/handlers/update.js +4 -5
  310. package/dist/http/controllers/user/handlers/update.js.map +1 -1
  311. package/dist/http/controllers/user-attribute/handlers/create.d.ts.map +1 -1
  312. package/dist/http/controllers/user-attribute/handlers/create.js +21 -10
  313. package/dist/http/controllers/user-attribute/handlers/create.js.map +1 -1
  314. package/dist/http/controllers/user-attribute/handlers/delete.d.ts.map +1 -1
  315. package/dist/http/controllers/user-attribute/handlers/delete.js +10 -8
  316. package/dist/http/controllers/user-attribute/handlers/delete.js.map +1 -1
  317. package/dist/http/controllers/user-attribute/handlers/read.d.ts.map +1 -1
  318. package/dist/http/controllers/user-attribute/handlers/read.js +24 -15
  319. package/dist/http/controllers/user-attribute/handlers/read.js.map +1 -1
  320. package/dist/http/controllers/user-attribute/handlers/update.d.ts.map +1 -1
  321. package/dist/http/controllers/user-attribute/handlers/update.js +6 -5
  322. package/dist/http/controllers/user-attribute/handlers/update.js.map +1 -1
  323. package/dist/http/controllers/user-permission/handlers/create.js +5 -6
  324. package/dist/http/controllers/user-permission/handlers/create.js.map +1 -1
  325. package/dist/http/controllers/user-permission/handlers/delete.d.ts.map +1 -1
  326. package/dist/http/controllers/user-permission/handlers/delete.js +5 -5
  327. package/dist/http/controllers/user-permission/handlers/delete.js.map +1 -1
  328. package/dist/http/controllers/user-permission/handlers/read.d.ts.map +1 -1
  329. package/dist/http/controllers/user-permission/handlers/read.js +18 -4
  330. package/dist/http/controllers/user-permission/handlers/read.js.map +1 -1
  331. package/dist/http/controllers/user-role/handlers/create.js +5 -6
  332. package/dist/http/controllers/user-role/handlers/create.js.map +1 -1
  333. package/dist/http/controllers/user-role/handlers/delete.d.ts.map +1 -1
  334. package/dist/http/controllers/user-role/handlers/delete.js +5 -5
  335. package/dist/http/controllers/user-role/handlers/delete.js.map +1 -1
  336. package/dist/http/controllers/user-role/handlers/read.d.ts.map +1 -1
  337. package/dist/http/controllers/user-role/handlers/read.js +18 -4
  338. package/dist/http/controllers/user-role/handlers/read.js.map +1 -1
  339. package/dist/http/middleware/built-in/auth/module.js +1 -2
  340. package/dist/http/middleware/built-in/auth/module.js.map +1 -1
  341. package/dist/http/middleware/built-in/auth/verify.js +1 -2
  342. package/dist/http/middleware/built-in/auth/verify.js.map +1 -1
  343. package/dist/http/middleware/built-in/basic.js +1 -2
  344. package/dist/http/middleware/built-in/basic.js.map +1 -1
  345. package/dist/http/middleware/built-in/cors.js +1 -2
  346. package/dist/http/middleware/built-in/cors.js.map +1 -1
  347. package/dist/http/middleware/built-in/error.d.ts.map +1 -1
  348. package/dist/http/middleware/built-in/error.js +2 -2
  349. package/dist/http/middleware/built-in/error.js.map +1 -1
  350. package/dist/http/middleware/built-in/loggedin/module.js +2 -2
  351. package/dist/http/middleware/built-in/loggedin/module.js.map +1 -1
  352. package/dist/http/middleware/built-in/logger.js +1 -2
  353. package/dist/http/middleware/built-in/logger.js.map +1 -1
  354. package/dist/http/middleware/built-in/prometheus.js +1 -2
  355. package/dist/http/middleware/built-in/prometheus.js.map +1 -1
  356. package/dist/http/middleware/built-in/rate-limit.js +1 -2
  357. package/dist/http/middleware/built-in/rate-limit.js.map +1 -1
  358. package/dist/http/middleware/built-in/swagger.js +1 -2
  359. package/dist/http/middleware/built-in/swagger.js.map +1 -1
  360. package/dist/http/middleware/module.js +1 -2
  361. package/dist/http/middleware/module.js.map +1 -1
  362. package/dist/http/middleware/utils.js +2 -3
  363. package/dist/http/middleware/utils.js.map +1 -1
  364. package/dist/http/oauth2/authorize/module.js +1 -2
  365. package/dist/http/oauth2/authorize/module.js.map +1 -1
  366. package/dist/http/oauth2/authorize/validation.js +2 -2
  367. package/dist/http/oauth2/authorize/validation.js.map +1 -1
  368. package/dist/http/oauth2/cleaner/event.js +1 -2
  369. package/dist/http/oauth2/cleaner/event.js.map +1 -1
  370. package/dist/http/oauth2/cleaner/interval.js +1 -2
  371. package/dist/http/oauth2/cleaner/interval.js.map +1 -1
  372. package/dist/http/oauth2/cleaner/module.js +1 -2
  373. package/dist/http/oauth2/cleaner/module.js.map +1 -1
  374. package/dist/http/oauth2/cleaner/utils.js +1 -2
  375. package/dist/http/oauth2/cleaner/utils.js.map +1 -1
  376. package/dist/http/oauth2/grant-types/utils/guess.js +1 -2
  377. package/dist/http/oauth2/grant-types/utils/guess.js.map +1 -1
  378. package/dist/http/oauth2/openid/claims.js +1 -2
  379. package/dist/http/oauth2/openid/claims.js.map +1 -1
  380. package/dist/http/oauth2/response/bearer.js +1 -2
  381. package/dist/http/oauth2/response/bearer.js.map +1 -1
  382. package/dist/http/oauth2/response/utils/type.js +1 -2
  383. package/dist/http/oauth2/response/utils/type.js.map +1 -1
  384. package/dist/http/oauth2/scope/check.js +1 -2
  385. package/dist/http/oauth2/scope/check.js.map +1 -1
  386. package/dist/http/oauth2/scope/resolve.js +1 -2
  387. package/dist/http/oauth2/scope/resolve.js.map +1 -1
  388. package/dist/http/oauth2/token/builder/access-token.js +1 -2
  389. package/dist/http/oauth2/token/builder/access-token.js.map +1 -1
  390. package/dist/http/oauth2/token/builder/id-token.js +2 -3
  391. package/dist/http/oauth2/token/builder/id-token.js.map +1 -1
  392. package/dist/http/oauth2/token/builder/refresh-token.js +3 -4
  393. package/dist/http/oauth2/token/builder/refresh-token.js.map +1 -1
  394. package/dist/http/oauth2/token/payload/read.js +1 -2
  395. package/dist/http/oauth2/token/payload/read.js.map +1 -1
  396. package/dist/http/oauth2/token/permissions.js +1 -2
  397. package/dist/http/oauth2/token/permissions.js.map +1 -1
  398. package/dist/http/oauth2/token/sub.js +1 -2
  399. package/dist/http/oauth2/token/sub.js.map +1 -1
  400. package/dist/http/path.js +2 -3
  401. package/dist/http/path.js.map +1 -1
  402. package/dist/http/request/helper/id-param.d.ts +7 -0
  403. package/dist/http/request/helper/id-param.d.ts.map +1 -0
  404. package/dist/http/request/helper/id-param.js +28 -0
  405. package/dist/http/request/helper/id-param.js.map +1 -0
  406. package/dist/http/request/helper/index.d.ts +1 -0
  407. package/dist/http/request/helper/index.d.ts.map +1 -1
  408. package/dist/http/request/helper/index.js +1 -0
  409. package/dist/http/request/helper/index.js.map +1 -1
  410. package/dist/http/request/helper/master-realm.js +1 -2
  411. package/dist/http/request/helper/master-realm.js.map +1 -1
  412. package/dist/http/router/module.js +1 -2
  413. package/dist/http/router/module.js.map +1 -1
  414. package/dist/http/server/module.js +1 -2
  415. package/dist/http/server/module.js.map +1 -1
  416. package/dist/http/server/type.d.ts +0 -1
  417. package/dist/http/server/type.d.ts.map +1 -1
  418. package/dist/http/swagger/module.d.ts.map +1 -1
  419. package/dist/http/swagger/module.js +2 -2
  420. package/dist/http/swagger/module.js.map +1 -1
  421. package/dist/http/swagger/utils.js +1 -2
  422. package/dist/http/swagger/utils.js.map +1 -1
  423. package/dist/http/utils/env.js +2 -3
  424. package/dist/http/utils/env.js.map +1 -1
  425. package/dist/http/utils/owner.js +1 -2
  426. package/dist/http/utils/owner.js.map +1 -1
  427. package/dist/utils/attributes-extract.js +1 -2
  428. package/dist/utils/attributes-extract.js.map +1 -1
  429. package/dist/utils/error.js +3 -4
  430. package/dist/utils/error.js.map +1 -1
  431. package/dist/utils/self-id.d.ts +1 -1
  432. package/dist/utils/self-id.d.ts.map +1 -1
  433. package/dist/utils/self-id.js +1 -2
  434. package/dist/utils/self-id.js.map +1 -1
  435. package/package.json +14 -14
@@ -1 +1 @@
1
- {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../../../../src/http/controllers/user/handlers/read.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AA8ChD,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CAiCxF;AAED,wBAAsB,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CA6DvF"}
1
+ {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../../../../src/http/controllers/user/handlers/read.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AA+ChD,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CAiCxF;AAED,wBAAsB,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CAwEvF"}
@@ -6,7 +6,8 @@
6
6
  * view the LICENSE file that was distributed with this source code.
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.getOneUserRouteHandler = exports.getManyUserRouteHandler = void 0;
9
+ exports.getManyUserRouteHandler = getManyUserRouteHandler;
10
+ exports.getOneUserRouteHandler = getOneUserRouteHandler;
10
11
  const query_1 = require("@routup/basic/query");
11
12
  const routup_1 = require("routup");
12
13
  const typeorm_extension_1 = require("typeorm-extension");
@@ -16,6 +17,7 @@ const kit_1 = require("@authup/kit");
16
17
  const domains_1 = require("../../../../domains");
17
18
  const utils_1 = require("../../../../utils");
18
19
  const oauth2_1 = require("../../../oauth2");
20
+ const request_1 = require("../../../request");
19
21
  const utils_2 = require("../../../utils");
20
22
  function buildFieldsOption(req) {
21
23
  const options = {
@@ -35,7 +37,7 @@ function buildFieldsOption(req) {
35
37
  'realm_id',
36
38
  ],
37
39
  };
38
- if ((0, utils_2.useRequestEnv)(req, 'abilities').has(core_kit_1.PermissionName.USER_EDIT)) {
40
+ if ((0, utils_2.useRequestEnv)(req, 'abilities').has(core_kit_1.PermissionName.USER_UPDATE)) {
39
41
  options.allowed = ['email'];
40
42
  }
41
43
  return options;
@@ -70,28 +72,23 @@ async function getManyUserRouteHandler(req, res) {
70
72
  },
71
73
  });
72
74
  }
73
- exports.getManyUserRouteHandler = getManyUserRouteHandler;
74
75
  async function getOneUserRouteHandler(req, res) {
75
- const id = (0, routup_1.useRequestParam)(req, 'id');
76
+ const id = (0, request_1.useRequestIDParam)(req, {
77
+ strict: false,
78
+ });
76
79
  const dataSource = await (0, typeorm_extension_1.useDataSource)();
77
80
  const userRepository = new domains_1.UserRepository(dataSource);
78
81
  const query = userRepository.createQueryBuilder('user');
79
- const scopes = (0, utils_2.useRequestEnv)(req, 'scopes');
80
- let attributes = [];
81
- if ((0, utils_1.isSelfId)(id) &&
82
- (0, utils_2.useRequestEnv)(req, 'userId')) {
83
- attributes = (0, oauth2_1.resolveOAuth2SubAttributesForScope)(kit_1.OAuth2SubKind.USER, scopes);
84
- const validAttributes = userRepository.metadata.columns.map((column) => column.databaseName);
85
- for (let i = 0; i < attributes.length; i++) {
86
- const isValid = validAttributes.includes(attributes[i]);
87
- if (isValid) {
88
- // todo: remove attribute from attributes
89
- query.addSelect(`user.${attributes[i]}`);
90
- }
91
- }
92
- query.where('user.id = :id', { id: (0, utils_2.useRequestEnv)(req, 'userId') });
82
+ const userId = (0, utils_2.useRequestEnv)(req, 'userId');
83
+ let isMe = false;
84
+ if ((0, utils_1.isSelfId)(id) && userId) {
85
+ isMe = true;
86
+ query.where('user.id = :id', { id: userId });
93
87
  }
94
88
  else if ((0, kit_1.isUUID)(id)) {
89
+ if (id === userId) {
90
+ isMe = true;
91
+ }
95
92
  query.where('user.id = :id', { id });
96
93
  }
97
94
  else {
@@ -99,6 +96,24 @@ async function getOneUserRouteHandler(req, res) {
99
96
  const realm = await (0, domains_1.resolveRealm)((0, routup_1.useRequestParam)(req, 'realmId'), true);
100
97
  query.andWhere('user.realm_id = :realmId', { realmId: realm.id });
101
98
  }
99
+ const ability = (0, utils_2.useRequestEnv)(req, 'abilities');
100
+ const hasAbility = ability.has(core_kit_1.PermissionName.USER_READ) ||
101
+ ability.has(core_kit_1.PermissionName.USER_UPDATE) ||
102
+ ability.has(core_kit_1.PermissionName.USER_DELETE);
103
+ if (!isMe && !hasAbility) {
104
+ throw new http_1.ForbiddenError();
105
+ }
106
+ const scopes = (0, utils_2.useRequestEnv)(req, 'scopes');
107
+ if (isMe) {
108
+ const attributes = (0, oauth2_1.resolveOAuth2SubAttributesForScope)(kit_1.OAuth2SubKind.USER, scopes);
109
+ const validAttributes = userRepository.metadata.columns.map((column) => column.databaseName);
110
+ for (let i = 0; i < attributes.length; i++) {
111
+ const isValid = validAttributes.includes(attributes[i]);
112
+ if (isValid) {
113
+ query.addSelect(`user.${attributes[i]}`);
114
+ }
115
+ }
116
+ }
102
117
  (0, domains_1.onlyRealmReadableQueryResources)(query, (0, utils_2.useRequestEnv)(req, 'realm'));
103
118
  (0, typeorm_extension_1.applyQuery)(query, (0, query_1.useRequestQuery)(req), {
104
119
  defaultAlias: 'user',
@@ -111,11 +126,9 @@ async function getOneUserRouteHandler(req, res) {
111
126
  if (!entity) {
112
127
  throw new http_1.NotFoundError();
113
128
  }
114
- if ((0, utils_1.isSelfId)(id) &&
115
- (0, oauth2_1.hasOAuth2Scope)(scopes, core_kit_1.ScopeName.GLOBAL)) {
129
+ if ((isMe && (0, oauth2_1.hasOAuth2Scope)(scopes, core_kit_1.ScopeName.GLOBAL)) || hasAbility) {
116
130
  await userRepository.findAndAppendExtraAttributesTo(entity);
117
131
  }
118
132
  return (0, routup_1.send)(res, entity);
119
133
  }
120
- exports.getOneUserRouteHandler = getOneUserRouteHandler;
121
134
  //# sourceMappingURL=read.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user/handlers/read.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user/handlers/read.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  * view the LICENSE file that was distributed with this source code.
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.updateUserRouteHandler = void 0;
9
+ exports.updateUserRouteHandler = updateUserRouteHandler;
10
10
  const http_1 = require("@ebec/http");
11
11
  const core_kit_1 = require("@authup/core-kit");
12
12
  const routup_1 = require("routup");
@@ -17,10 +17,10 @@ const utils_1 = require("../../../utils");
17
17
  const utils_2 = require("../utils");
18
18
  const request_1 = require("../../../request");
19
19
  async function updateUserRouteHandler(req, res) {
20
- const id = (0, routup_1.useRequestParam)(req, 'id');
20
+ const id = (0, request_1.useRequestIDParam)(req);
21
21
  const ability = (0, utils_1.useRequestEnv)(req, 'abilities');
22
22
  const env = (0, utils_1.useRequestEnv)(req);
23
- if (!ability.has(core_kit_1.PermissionName.USER_EDIT) &&
23
+ if (!ability.has(core_kit_1.PermissionName.USER_UPDATE) &&
24
24
  env.userId !== id) {
25
25
  throw new http_1.ForbiddenError('You are not authorized to modify a user.');
26
26
  }
@@ -28,7 +28,7 @@ async function updateUserRouteHandler(req, res) {
28
28
  const data = await validator.execute(req, {
29
29
  group: request_1.RequestHandlerOperation.UPDATE,
30
30
  });
31
- if (!ability.has(core_kit_1.PermissionName.USER_EDIT)) {
31
+ if (!ability.has(core_kit_1.PermissionName.USER_UPDATE)) {
32
32
  delete data.name_locked;
33
33
  delete data.active;
34
34
  delete data.status;
@@ -66,5 +66,4 @@ async function updateUserRouteHandler(req, res) {
66
66
  await repository.save(entity);
67
67
  return (0, routup_1.sendAccepted)(res, entity);
68
68
  }
69
- exports.updateUserRouteHandler = updateUserRouteHandler;
70
69
  //# sourceMappingURL=update.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user/handlers/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user/handlers/update.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/create.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAQhD,wBAAsB,+BAA+B,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CAmChG"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/create.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAShD,wBAAsB,+BAA+B,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CA+ChG"}
@@ -6,40 +6,51 @@
6
6
  * view the LICENSE file that was distributed with this source code.
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.createUserAttributeRouteHandler = void 0;
9
+ exports.createUserAttributeRouteHandler = createUserAttributeRouteHandler;
10
10
  const http_1 = require("@ebec/http");
11
11
  const core_kit_1 = require("@authup/core-kit");
12
12
  const routup_1 = require("routup");
13
13
  const typeorm_extension_1 = require("typeorm-extension");
14
14
  const domains_1 = require("../../../../domains");
15
- const utils_1 = require("../../../utils");
16
- const utils_2 = require("../utils");
15
+ const utils_1 = require("../../../../utils");
16
+ const utils_2 = require("../../../utils");
17
+ const utils_3 = require("../utils");
17
18
  const request_1 = require("../../../request");
18
19
  async function createUserAttributeRouteHandler(req, res) {
19
- const validator = new utils_2.UserAttributeRequestValidator();
20
+ const validator = new utils_3.UserAttributeRequestValidator();
20
21
  const data = await validator.execute(req, {
21
22
  group: request_1.RequestHandlerOperation.CREATE,
22
23
  });
24
+ const userId = (0, utils_2.useRequestEnv)(req, 'userId');
23
25
  if (data.user) {
24
26
  data.realm_id = data.user.realm_id;
25
27
  data.user_id = data.user.id;
26
28
  }
27
29
  else {
28
- const { id } = (0, utils_1.useRequestEnv)(req, 'realm');
30
+ const { id } = (0, utils_2.useRequestEnv)(req, 'realm');
29
31
  data.realm_id = id;
30
- data.user_id = (0, utils_1.useRequestEnv)(req, 'userId');
32
+ if (userId) {
33
+ data.user_id = userId;
34
+ }
35
+ else {
36
+ throw new http_1.BadRequestError((0, utils_1.buildErrorMessageForAttribute)('user_id'));
37
+ }
31
38
  }
32
- if (data.user_id !== (0, utils_1.useRequestEnv)(req, 'userId')) {
33
- if (!(0, utils_1.useRequestEnv)(req, 'abilities').has(core_kit_1.PermissionName.USER_EDIT) ||
34
- !(0, core_kit_1.isRealmResourceWritable)((0, utils_1.useRequestEnv)(req, 'realm'), data.realm_id)) {
39
+ const abilities = (0, utils_2.useRequestEnv)(req, 'abilities');
40
+ if (data.user_id !== userId) {
41
+ if (!abilities.has(core_kit_1.PermissionName.USER_UPDATE) ||
42
+ !(0, core_kit_1.isRealmResourceWritable)((0, utils_2.useRequestEnv)(req, 'realm'), data.realm_id)) {
35
43
  throw new http_1.ForbiddenError('You are not permitted to set an attribute for the given user...');
36
44
  }
37
45
  }
38
46
  const dataSource = await (0, typeorm_extension_1.useDataSource)();
39
47
  const repository = dataSource.getRepository(domains_1.UserAttributeEntity);
40
48
  const entity = repository.create(data);
49
+ if (data.user_id !== userId &&
50
+ !abilities.can(core_kit_1.PermissionName.USER_UPDATE, { attributes: entity })) {
51
+ throw new http_1.ForbiddenError();
52
+ }
41
53
  await repository.save(entity);
42
54
  return (0, routup_1.sendCreated)(res, entity);
43
55
  }
44
- exports.createUserAttributeRouteHandler = createUserAttributeRouteHandler;
45
56
  //# sourceMappingURL=create.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/create.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,qCAA4C;AAC5C,+CAG0B;AAE1B,mCAAqC;AACrC,yDAAkD;AAClD,iDAA0D;AAC1D,0CAA+C;AAC/C,oCAAyD;AACzD,8CAA2D;AAEpD,KAAK,UAAU,+BAA+B,CAAC,GAAY,EAAE,GAAa;IAC7E,MAAM,SAAS,GAAG,IAAI,qCAA6B,EAAE,CAAC;IAEtD,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;QACtC,KAAK,EAAE,iCAAuB,CAAC,MAAM;KACxC,CAAC,CAAC;IAEH,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QACnC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IAChC,CAAC;SAAM,CAAC;QACJ,MAAM,EAAE,EAAE,EAAE,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED,IACI,IAAI,CAAC,OAAO,KAAK,IAAA,qBAAa,EAAC,GAAG,EAAE,QAAQ,CAAC,EAC/C,CAAC;QACC,IACI,CAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC,GAAG,CAAC,yBAAc,CAAC,SAAS,CAAC;YAC9D,CAAC,IAAA,kCAAuB,EAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EACtE,CAAC;YACC,MAAM,IAAI,qBAAc,CAAC,iEAAiE,CAAC,CAAC;QAChG,CAAC;IACL,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,IAAA,iCAAa,GAAE,CAAC;IACzC,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,6BAAmB,CAAC,CAAC;IAEjE,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEvC,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAE9B,OAAO,IAAA,oBAAW,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACpC,CAAC;AAnCD,0EAmCC"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/create.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAgBH,0EA+CC;AA7DD,qCAA6D;AAC7D,+CAG0B;AAE1B,mCAAqC;AACrC,yDAAkD;AAClD,iDAA0D;AAC1D,6CAAkE;AAClE,0CAA+C;AAC/C,oCAAyD;AACzD,8CAA2D;AAEpD,KAAK,UAAU,+BAA+B,CAAC,GAAY,EAAE,GAAa;IAC7E,MAAM,SAAS,GAAG,IAAI,qCAA6B,EAAE,CAAC;IAEtD,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;QACtC,KAAK,EAAE,iCAAuB,CAAC,MAAM;KACxC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC5C,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QACnC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IAChC,CAAC;SAAM,CAAC;QACJ,MAAM,EAAE,EAAE,EAAE,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,MAAM,EAAE,CAAC;YACT,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QAC1B,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,sBAAe,CAAC,IAAA,qCAA6B,EAAC,SAAS,CAAC,CAAC,CAAC;QACxE,CAAC;IACL,CAAC;IAED,MAAM,SAAS,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAElD,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC1B,IACI,CAAC,SAAS,CAAC,GAAG,CAAC,yBAAc,CAAC,WAAW,CAAC;YAC1C,CAAC,IAAA,kCAAuB,EAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EACtE,CAAC;YACC,MAAM,IAAI,qBAAc,CAAC,iEAAiE,CAAC,CAAC;QAChG,CAAC;IACL,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,IAAA,iCAAa,GAAE,CAAC;IACzC,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,6BAAmB,CAAC,CAAC;IAEjE,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEvC,IACI,IAAI,CAAC,OAAO,KAAK,MAAM;QACvB,CAAC,SAAS,CAAC,GAAG,CAAC,yBAAc,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,EACpE,CAAC;QACC,MAAM,IAAI,qBAAc,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAE9B,OAAO,IAAA,oBAAW,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACpC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/delete.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAMhD,wBAAsB,+BAA+B,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CA8BhG"}
1
+ {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/delete.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAOhD,wBAAsB,+BAA+B,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CA6BhG"}
@@ -6,25 +6,28 @@
6
6
  * view the LICENSE file that was distributed with this source code.
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.deleteUserAttributeRouteHandler = void 0;
9
+ exports.deleteUserAttributeRouteHandler = deleteUserAttributeRouteHandler;
10
10
  const http_1 = require("@ebec/http");
11
11
  const core_kit_1 = require("@authup/core-kit");
12
12
  const routup_1 = require("routup");
13
13
  const typeorm_extension_1 = require("typeorm-extension");
14
14
  const domains_1 = require("../../../../domains");
15
- const env_1 = require("../../../utils/env");
15
+ const request_1 = require("../../../request");
16
+ const utils_1 = require("../../../utils");
16
17
  async function deleteUserAttributeRouteHandler(req, res) {
17
- const id = (0, routup_1.useRequestParam)(req, 'id');
18
+ const id = (0, request_1.useRequestIDParam)(req);
18
19
  const dataSource = await (0, typeorm_extension_1.useDataSource)();
19
20
  const repository = dataSource.getRepository(domains_1.UserAttributeEntity);
20
21
  const entity = await repository.findOneBy({ id });
21
22
  if (!entity) {
22
23
  throw new http_1.NotFoundError();
23
24
  }
24
- if (entity.user_id !== (0, env_1.useRequestEnv)(req, 'userId')) {
25
- if (!(0, env_1.useRequestEnv)(req, 'abilities').has(core_kit_1.PermissionName.USER_EDIT) ||
26
- !(0, core_kit_1.isRealmResourceWritable)((0, env_1.useRequestEnv)(req, 'realm'), entity.realm_id)) {
27
- throw new http_1.ForbiddenError('You are not permitted to drop an attribute for the given user...');
25
+ if (entity.user_id !== (0, utils_1.useRequestEnv)(req, 'userId')) {
26
+ if (!(0, core_kit_1.isRealmResourceWritable)((0, utils_1.useRequestEnv)(req, 'realm'), entity.realm_id)) {
27
+ throw new http_1.ForbiddenError('You are not permitted for the resource realm.');
28
+ }
29
+ if (!(0, utils_1.useRequestEnv)(req, 'abilities').can(core_kit_1.PermissionName.USER_UPDATE, { attributes: entity })) {
30
+ throw new http_1.ForbiddenError();
28
31
  }
29
32
  }
30
33
  const { id: entityId } = entity;
@@ -32,5 +35,4 @@ async function deleteUserAttributeRouteHandler(req, res) {
32
35
  entity.id = entityId;
33
36
  return (0, routup_1.sendAccepted)(res, entity);
34
37
  }
35
- exports.deleteUserAttributeRouteHandler = deleteUserAttributeRouteHandler;
36
38
  //# sourceMappingURL=delete.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/delete.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,qCAA2D;AAE3D,+CAA2E;AAE3E,mCAAuD;AACvD,yDAAkD;AAClD,iDAA0D;AAC1D,4CAAmD;AAE5C,KAAK,UAAU,+BAA+B,CAAC,GAAY,EAAE,GAAa;IAC7E,MAAM,EAAE,GAAG,IAAA,wBAAe,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAEtC,MAAM,UAAU,GAAG,MAAM,IAAA,iCAAa,GAAE,CAAC;IACzC,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,6BAAmB,CAAC,CAAC;IAEjE,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAElD,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,MAAM,IAAI,oBAAa,EAAE,CAAC;IAC9B,CAAC;IAED,IACI,MAAM,CAAC,OAAO,KAAK,IAAA,mBAAa,EAAC,GAAG,EAAE,QAAQ,CAAC,EACjD,CAAC;QACC,IACI,CAAC,IAAA,mBAAa,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC,GAAG,CAAC,yBAAc,CAAC,SAAS,CAAC;YAC9D,CAAC,IAAA,kCAAuB,EAAC,IAAA,mBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,EACxE,CAAC;YACC,MAAM,IAAI,qBAAc,CAAC,kEAAkE,CAAC,CAAC;QACjG,CAAC;IACL,CAAC;IAED,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAEhC,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEhC,MAAM,CAAC,EAAE,GAAG,QAAQ,CAAC;IAErB,OAAO,IAAA,qBAAY,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACrC,CAAC;AA9BD,0EA8BC"}
1
+ {"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/delete.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAYH,0EA6BC;AAvCD,qCAA2D;AAE3D,+CAA2E;AAE3E,mCAAsC;AACtC,yDAAkD;AAClD,iDAA0D;AAC1D,8CAAqD;AACrD,0CAA+C;AAExC,KAAK,UAAU,+BAA+B,CAAC,GAAY,EAAE,GAAa;IAC7E,MAAM,EAAE,GAAG,IAAA,2BAAiB,EAAC,GAAG,CAAC,CAAC;IAElC,MAAM,UAAU,GAAG,MAAM,IAAA,iCAAa,GAAE,CAAC;IACzC,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,6BAAmB,CAAC,CAAC;IAEjE,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAElD,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,MAAM,IAAI,oBAAa,EAAE,CAAC;IAC9B,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,KAAK,IAAA,qBAAa,EAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC;QAClD,IAAI,CAAC,IAAA,kCAAuB,EAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzE,MAAM,IAAI,qBAAc,CAAC,+CAA+C,CAAC,CAAC;QAC9E,CAAC;QAED,IAAI,CAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC,GAAG,CAAC,yBAAc,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;YAC3F,MAAM,IAAI,qBAAc,EAAE,CAAC;QAC/B,CAAC;IACL,CAAC;IAED,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAEhC,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEhC,MAAM,CAAC,EAAE,GAAG,QAAQ,CAAC;IAErB,OAAO,IAAA,qBAAY,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACrC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/read.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAchD,wBAAsB,gCAAgC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CAuCjG;AAED,wBAAsB,+BAA+B,CACjD,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACb,OAAO,CAAC,GAAG,CAAC,CAwBf"}
1
+ {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/read.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAehD,wBAAsB,gCAAgC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CA4CjG;AAED,wBAAsB,+BAA+B,CACjD,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACb,OAAO,CAAC,GAAG,CAAC,CA8Bf"}
@@ -6,7 +6,8 @@
6
6
  * view the LICENSE file that was distributed with this source code.
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.getOneUserAttributeRouteHandler = exports.getManyUserAttributeRouteHandler = void 0;
9
+ exports.getManyUserAttributeRouteHandler = getManyUserAttributeRouteHandler;
10
+ exports.getOneUserAttributeRouteHandler = getOneUserAttributeRouteHandler;
10
11
  const query_1 = require("@routup/basic/query");
11
12
  const routup_1 = require("routup");
12
13
  const typeorm_1 = require("typeorm");
@@ -14,16 +15,21 @@ const typeorm_extension_1 = require("typeorm-extension");
14
15
  const http_1 = require("@ebec/http");
15
16
  const core_kit_1 = require("@authup/core-kit");
16
17
  const domains_1 = require("../../../../domains");
18
+ const request_1 = require("../../../request");
17
19
  const utils_1 = require("../../../utils");
18
20
  async function getManyUserAttributeRouteHandler(req, res) {
21
+ const userId = (0, utils_1.useRequestEnv)(req, 'userId');
22
+ const ability = (0, utils_1.useRequestEnv)(req, 'abilities');
23
+ if (!userId && !ability.has(core_kit_1.PermissionName.USER_READ)) {
24
+ throw new http_1.ForbiddenError();
25
+ }
19
26
  const dataSource = await (0, typeorm_extension_1.useDataSource)();
20
27
  const repository = dataSource.getRepository(domains_1.UserAttributeEntity);
21
28
  const query = repository.createQueryBuilder('userAttribute');
22
- const ability = (0, utils_1.useRequestEnv)(req, 'abilities');
23
29
  query.where(new typeorm_1.Brackets((qb) => {
24
30
  (0, domains_1.onlyRealmReadableQueryResources)(query, (0, utils_1.useRequestEnv)(req, 'realm'));
25
- if (!ability.has(core_kit_1.PermissionName.USER_EDIT)) {
26
- qb.orWhere('userAttribute.user_id = :userId', { userId: (0, utils_1.useRequestEnv)(req, 'userId') });
31
+ if (!ability.has(core_kit_1.PermissionName.USER_READ)) {
32
+ qb.orWhere('userAttribute.user_id = :userId', { userId });
27
33
  }
28
34
  }));
29
35
  const { pagination } = (0, typeorm_extension_1.applyQuery)(query, (0, query_1.useRequestQuery)(req), {
@@ -47,23 +53,26 @@ async function getManyUserAttributeRouteHandler(req, res) {
47
53
  },
48
54
  });
49
55
  }
50
- exports.getManyUserAttributeRouteHandler = getManyUserAttributeRouteHandler;
51
56
  async function getOneUserAttributeRouteHandler(req, res) {
52
- const id = (0, routup_1.useRequestParam)(req, 'id');
53
- if (typeof id !== 'string') {
54
- throw new http_1.BadRequestError();
57
+ const id = (0, request_1.useRequestIDParam)(req);
58
+ const userId = (0, utils_1.useRequestEnv)(req, 'userId');
59
+ const ability = (0, utils_1.useRequestEnv)(req, 'abilities');
60
+ if (!userId && !ability.has(core_kit_1.PermissionName.USER_READ)) {
61
+ throw new http_1.ForbiddenError();
55
62
  }
56
63
  const dataSource = await (0, typeorm_extension_1.useDataSource)();
57
64
  const repository = dataSource.getRepository(domains_1.UserAttributeEntity);
58
- const result = await repository.findOneBy({ id });
59
- if (!result) {
65
+ const entity = await repository.findOneBy({ id });
66
+ if (!entity) {
60
67
  throw new http_1.NotFoundError();
61
68
  }
62
- if (!(0, core_kit_1.isRealmResourceReadable)((0, utils_1.useRequestEnv)(req, 'realm'), result.realm_id) &&
63
- (0, utils_1.useRequestEnv)(req, 'userId') !== result.user_id) {
64
- throw new http_1.ForbiddenError('You are not authorized to read this user attribute...');
69
+ if (!(0, core_kit_1.isRealmResourceReadable)((0, utils_1.useRequestEnv)(req, 'realm'), entity.realm_id)) {
70
+ throw new http_1.ForbiddenError('You are not permitted for the resource realm.');
65
71
  }
66
- return (0, routup_1.send)(res, result);
72
+ if (userId !== entity.user_id &&
73
+ !ability.can(core_kit_1.PermissionName.USER_READ, { attributes: entity })) {
74
+ throw new http_1.ForbiddenError();
75
+ }
76
+ return (0, routup_1.send)(res, entity);
67
77
  }
68
- exports.getOneUserAttributeRouteHandler = getOneUserAttributeRouteHandler;
69
78
  //# sourceMappingURL=read.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/read.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/read.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/update.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAQhD,wBAAsB,+BAA+B,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CAgChG"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/update.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAQhD,wBAAsB,+BAA+B,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CAiChG"}
@@ -6,7 +6,7 @@
6
6
  * view the LICENSE file that was distributed with this source code.
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.updateUserAttributeRouteHandler = void 0;
9
+ exports.updateUserAttributeRouteHandler = updateUserAttributeRouteHandler;
10
10
  const http_1 = require("@ebec/http");
11
11
  const core_kit_1 = require("@authup/core-kit");
12
12
  const routup_1 = require("routup");
@@ -16,7 +16,7 @@ const utils_1 = require("../../../utils");
16
16
  const utils_2 = require("../utils");
17
17
  const request_1 = require("../../../request");
18
18
  async function updateUserAttributeRouteHandler(req, res) {
19
- const id = (0, routup_1.useRequestParam)(req, 'id');
19
+ const id = (0, request_1.useRequestIDParam)(req);
20
20
  const validator = new utils_2.UserAttributeRequestValidator();
21
21
  const data = await validator.execute(req, {
22
22
  group: request_1.RequestHandlerOperation.UPDATE,
@@ -28,8 +28,10 @@ async function updateUserAttributeRouteHandler(req, res) {
28
28
  throw new http_1.NotFoundError();
29
29
  }
30
30
  entity = repository.merge(entity, data);
31
- if (entity.user_id !== (0, utils_1.useRequestEnv)(req, 'userId')) {
32
- if (!(0, utils_1.useRequestEnv)(req, 'abilities').has(core_kit_1.PermissionName.USER_EDIT) ||
31
+ const userId = (0, utils_1.useRequestEnv)(req, 'userId');
32
+ const abilities = (0, utils_1.useRequestEnv)(req, 'abilities');
33
+ if (entity.user_id !== userId) {
34
+ if (!abilities.can(core_kit_1.PermissionName.USER_UPDATE, { attributes: entity }) ||
33
35
  !(0, core_kit_1.isRealmResourceWritable)((0, utils_1.useRequestEnv)(req, 'realm'), entity.realm_id)) {
34
36
  throw new http_1.ForbiddenError('You are not permitted to update an attribute for the given user...');
35
37
  }
@@ -37,5 +39,4 @@ async function updateUserAttributeRouteHandler(req, res) {
37
39
  await repository.save(entity);
38
40
  return (0, routup_1.sendAccepted)(res, entity);
39
41
  }
40
- exports.updateUserAttributeRouteHandler = updateUserAttributeRouteHandler;
41
42
  //# sourceMappingURL=update.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/update.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,qCAA2D;AAC3D,+CAA2E;AAE3E,mCAAuD;AACvD,yDAAkD;AAClD,iDAA0D;AAC1D,0CAA+C;AAC/C,oCAAyD;AACzD,8CAA2D;AAEpD,KAAK,UAAU,+BAA+B,CAAC,GAAY,EAAE,GAAa;IAC7E,MAAM,EAAE,GAAG,IAAA,wBAAe,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAEtC,MAAM,SAAS,GAAG,IAAI,qCAA6B,EAAE,CAAC;IACtD,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;QACtC,KAAK,EAAE,iCAAuB,CAAC,MAAM;KACxC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,MAAM,IAAA,iCAAa,GAAE,CAAC;IACzC,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,6BAAmB,CAAC,CAAC;IAEjE,IAAI,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAChD,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,MAAM,IAAI,oBAAa,EAAE,CAAC;IAC9B,CAAC;IAED,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAExC,IACI,MAAM,CAAC,OAAO,KAAK,IAAA,qBAAa,EAAC,GAAG,EAAE,QAAQ,CAAC,EACjD,CAAC;QACC,IACI,CAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC,GAAG,CAAC,yBAAc,CAAC,SAAS,CAAC;YAC9D,CAAC,IAAA,kCAAuB,EAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,EACxE,CAAC;YACC,MAAM,IAAI,qBAAc,CAAC,oEAAoE,CAAC,CAAC;QACnG,CAAC;IACL,CAAC;IAED,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAE9B,OAAO,IAAA,qBAAY,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACrC,CAAC;AAhCD,0EAgCC"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user-attribute/handlers/update.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAYH,0EAiCC;AA3CD,qCAA2D;AAC3D,+CAA2E;AAE3E,mCAAsC;AACtC,yDAAkD;AAClD,iDAA0D;AAC1D,0CAA+C;AAC/C,oCAAyD;AACzD,8CAA8E;AAEvE,KAAK,UAAU,+BAA+B,CAAC,GAAY,EAAE,GAAa;IAC7E,MAAM,EAAE,GAAG,IAAA,2BAAiB,EAAC,GAAG,CAAC,CAAC;IAElC,MAAM,SAAS,GAAG,IAAI,qCAA6B,EAAE,CAAC;IACtD,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;QACtC,KAAK,EAAE,iCAAuB,CAAC,MAAM;KACxC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,MAAM,IAAA,iCAAa,GAAE,CAAC;IACzC,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,6BAAmB,CAAC,CAAC;IAEjE,IAAI,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAChD,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,MAAM,IAAI,oBAAa,EAAE,CAAC;IAC9B,CAAC;IAED,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAExC,MAAM,MAAM,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAElD,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC5B,IACI,CAAC,SAAS,CAAC,GAAG,CAAC,yBAAc,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;YAClE,CAAC,IAAA,kCAAuB,EAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,EACxE,CAAC;YACC,MAAM,IAAI,qBAAc,CAAC,oEAAoE,CAAC,CAAC;QACnG,CAAC;IACL,CAAC;IAED,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAE9B,OAAO,IAAA,qBAAY,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACrC,CAAC"}
@@ -6,7 +6,7 @@
6
6
  * view the LICENSE file that was distributed with this source code.
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.createUserPermissionRouteHandler = void 0;
9
+ exports.createUserPermissionRouteHandler = createUserPermissionRouteHandler;
10
10
  const http_1 = require("@ebec/http");
11
11
  const core_kit_1 = require("@authup/core-kit");
12
12
  const routup_1 = require("routup");
@@ -24,7 +24,7 @@ const request_1 = require("../../../request");
24
24
  */
25
25
  async function createUserPermissionRouteHandler(req, res) {
26
26
  const abilities = (0, utils_2.useRequestEnv)(req, 'abilities');
27
- if (!abilities.has(core_kit_1.PermissionName.USER_PERMISSION_ADD)) {
27
+ if (!abilities.has(core_kit_1.PermissionName.USER_PERMISSION_CREATE)) {
28
28
  throw new http_1.ForbiddenError();
29
29
  }
30
30
  // ----------------------------------------------
@@ -33,7 +33,7 @@ async function createUserPermissionRouteHandler(req, res) {
33
33
  group: request_1.RequestHandlerOperation.CREATE,
34
34
  });
35
35
  const policyEvaluationContext = {
36
- resource: data,
36
+ attributes: data,
37
37
  };
38
38
  // ----------------------------------------------
39
39
  if (data.permission) {
@@ -42,7 +42,7 @@ async function createUserPermissionRouteHandler(req, res) {
42
42
  }
43
43
  data.permission_realm_id = data.permission.realm_id;
44
44
  const ability = (0, core_kit_1.buildAbilityFromPermission)(data.permission);
45
- if (!abilities.has(ability, policyEvaluationContext)) {
45
+ if (!abilities.can(ability, policyEvaluationContext)) {
46
46
  throw new http_1.ForbiddenError('The target permission is not owned.');
47
47
  }
48
48
  }
@@ -54,7 +54,7 @@ async function createUserPermissionRouteHandler(req, res) {
54
54
  data.user_realm_id = data.user.realm_id;
55
55
  }
56
56
  // ----------------------------------------------
57
- if (!abilities.has(core_kit_1.PermissionName.USER_PERMISSION_ADD, policyEvaluationContext)) {
57
+ if (!abilities.can(core_kit_1.PermissionName.USER_PERMISSION_CREATE, policyEvaluationContext)) {
58
58
  throw new http_1.ForbiddenError();
59
59
  }
60
60
  // ----------------------------------------------
@@ -64,5 +64,4 @@ async function createUserPermissionRouteHandler(req, res) {
64
64
  entity = await repository.save(entity);
65
65
  return (0, routup_1.sendCreated)(res, entity);
66
66
  }
67
- exports.createUserPermissionRouteHandler = createUserPermissionRouteHandler;
68
67
  //# sourceMappingURL=create.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user-permission/handlers/create.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,qCAA6D;AAC7D,+CAE0B;AAE1B,mCAAqC;AACrC,yDAAkD;AAClD,iDAA2D;AAC3D,6CAAkE;AAClE,0CAA+C;AAC/C,oCAA0D;AAC1D,8CAA2D;AAE3D;;;;;GAKG;AACI,KAAK,UAAU,gCAAgC,CAAC,GAAY,EAAE,GAAa;IAC9E,MAAM,SAAS,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAClD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,yBAAc,CAAC,mBAAmB,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,qBAAc,EAAE,CAAC;IAC/B,CAAC;IAED,iDAAiD;IAEjD,MAAM,SAAS,GAAG,IAAI,sCAA8B,EAAE,CAAC;IACvD,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;QACtC,KAAK,EAAE,iCAAuB,CAAC,MAAM;KACxC,CAAC,CAAC;IAEH,MAAM,uBAAuB,GAA6B;QACtD,QAAQ,EAAE,IAA4C;KACzD,CAAC;IAEF,iDAAiD;IAEjD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,IAAA,kCAAuB,EAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClF,MAAM,IAAI,sBAAe,CAAC,IAAA,qCAA6B,EAAC,eAAe,CAAC,CAAC,CAAC;QAC9E,CAAC;QAED,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAEpD,MAAM,OAAO,GAAG,IAAA,qCAA0B,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,uBAAuB,CAAC,EAAE,CAAC;YACnD,MAAM,IAAI,qBAAc,CAAC,qCAAqC,CAAC,CAAC;QACpE,CAAC;IACL,CAAC;IAED,iDAAiD;IAEjD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC,IAAA,kCAAuB,EAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5E,MAAM,IAAI,sBAAe,CAAC,IAAA,qCAA6B,EAAC,SAAS,CAAC,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC5C,CAAC;IAED,iDAAiD;IAEjD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,yBAAc,CAAC,mBAAmB,EAAE,uBAAuB,CAAC,EAAE,CAAC;QAC9E,MAAM,IAAI,qBAAc,EAAE,CAAC;IAC/B,CAAC;IAED,iDAAiD;IAEjD,MAAM,UAAU,GAAG,MAAM,IAAA,iCAAa,GAAE,CAAC;IACzC,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,8BAAoB,CAAC,CAAC;IAClE,IAAI,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAErC,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEvC,OAAO,IAAA,oBAAW,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACpC,CAAC;AAzDD,4EAyDC"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user-permission/handlers/create.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAsBH,4EAyDC;AA5ED,qCAA6D;AAC7D,+CAE0B;AAE1B,mCAAqC;AACrC,yDAAkD;AAClD,iDAA2D;AAC3D,6CAAkE;AAClE,0CAA+C;AAC/C,oCAA0D;AAC1D,8CAA2D;AAE3D;;;;;GAKG;AACI,KAAK,UAAU,gCAAgC,CAAC,GAAY,EAAE,GAAa;IAC9E,MAAM,SAAS,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAClD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,yBAAc,CAAC,sBAAsB,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,qBAAc,EAAE,CAAC;IAC/B,CAAC;IAED,iDAAiD;IAEjD,MAAM,SAAS,GAAG,IAAI,sCAA8B,EAAE,CAAC;IACvD,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE;QACtC,KAAK,EAAE,iCAAuB,CAAC,MAAM;KACxC,CAAC,CAAC;IAEH,MAAM,uBAAuB,GAA6B;QACtD,UAAU,EAAE,IAA4C;KAC3D,CAAC;IAEF,iDAAiD;IAEjD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,IAAA,kCAAuB,EAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClF,MAAM,IAAI,sBAAe,CAAC,IAAA,qCAA6B,EAAC,eAAe,CAAC,CAAC,CAAC;QAC9E,CAAC;QAED,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAEpD,MAAM,OAAO,GAAG,IAAA,qCAA0B,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,uBAAuB,CAAC,EAAE,CAAC;YACnD,MAAM,IAAI,qBAAc,CAAC,qCAAqC,CAAC,CAAC;QACpE,CAAC;IACL,CAAC;IAED,iDAAiD;IAEjD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC,IAAA,kCAAuB,EAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5E,MAAM,IAAI,sBAAe,CAAC,IAAA,qCAA6B,EAAC,SAAS,CAAC,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC5C,CAAC;IAED,iDAAiD;IAEjD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,yBAAc,CAAC,sBAAsB,EAAE,uBAAuB,CAAC,EAAE,CAAC;QACjF,MAAM,IAAI,qBAAc,EAAE,CAAC;IAC/B,CAAC;IAED,iDAAiD;IAEjD,MAAM,UAAU,GAAG,MAAM,IAAA,iCAAa,GAAE,CAAC;IACzC,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,8BAAoB,CAAC,CAAC;IAClE,IAAI,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAErC,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEvC,OAAO,IAAA,oBAAW,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACpC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../../../src/http/controllers/user-permission/handlers/delete.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAMhD;;;;;GAKG;AACH,wBAAsB,gCAAgC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CA+CjG"}
1
+ {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../../../src/http/controllers/user-permission/handlers/delete.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAOhD;;;;;GAKG;AACH,wBAAsB,gCAAgC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CA+CjG"}
@@ -6,12 +6,13 @@
6
6
  * view the LICENSE file that was distributed with this source code.
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.deleteUserPermissionRouteHandler = void 0;
9
+ exports.deleteUserPermissionRouteHandler = deleteUserPermissionRouteHandler;
10
10
  const http_1 = require("@ebec/http");
11
11
  const core_kit_1 = require("@authup/core-kit");
12
12
  const routup_1 = require("routup");
13
13
  const typeorm_extension_1 = require("typeorm-extension");
14
14
  const domains_1 = require("../../../../domains");
15
+ const request_1 = require("../../../request");
15
16
  const utils_1 = require("../../../utils");
16
17
  /**
17
18
  * Drop a permission by id of a specific user.
@@ -20,9 +21,9 @@ const utils_1 = require("../../../utils");
20
21
  * @param res
21
22
  */
22
23
  async function deleteUserPermissionRouteHandler(req, res) {
23
- const id = (0, routup_1.useRequestParam)(req, 'id');
24
+ const id = (0, request_1.useRequestIDParam)(req);
24
25
  const ability = (0, utils_1.useRequestEnv)(req, 'abilities');
25
- if (!ability.has(core_kit_1.PermissionName.USER_PERMISSION_DROP)) {
26
+ if (!ability.has(core_kit_1.PermissionName.USER_PERMISSION_DELETE)) {
26
27
  throw new http_1.ForbiddenError();
27
28
  }
28
29
  const dataSource = await (0, typeorm_extension_1.useDataSource)();
@@ -44,7 +45,7 @@ async function deleteUserPermissionRouteHandler(req, res) {
44
45
  throw new http_1.ForbiddenError();
45
46
  }
46
47
  // ----------------------------------------------
47
- if (!ability.has(core_kit_1.PermissionName.USER_PERMISSION_DROP, { resource: entity })) {
48
+ if (!ability.can(core_kit_1.PermissionName.USER_PERMISSION_DELETE, { attributes: entity })) {
48
49
  throw new http_1.ForbiddenError();
49
50
  }
50
51
  // ----------------------------------------------
@@ -54,5 +55,4 @@ async function deleteUserPermissionRouteHandler(req, res) {
54
55
  // ----------------------------------------------
55
56
  return (0, routup_1.sendAccepted)(res, entity);
56
57
  }
57
- exports.deleteUserPermissionRouteHandler = deleteUserPermissionRouteHandler;
58
58
  //# sourceMappingURL=delete.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user-permission/handlers/delete.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,qCAA2D;AAC3D,+CAA2E;AAE3E,mCAAuD;AACvD,yDAAkD;AAClD,iDAA2D;AAC3D,0CAA+C;AAE/C;;;;;GAKG;AACI,KAAK,UAAU,gCAAgC,CAAC,GAAY,EAAE,GAAa;IAC9E,MAAM,EAAE,GAAG,IAAA,wBAAe,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAEtC,MAAM,OAAO,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAChD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAc,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,qBAAc,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,IAAA,iCAAa,GAAE,CAAC;IACzC,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,8BAAoB,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QACpC,KAAK,EAAE;YACH,EAAE;SACL;QACD,SAAS,EAAE;YACP,IAAI,EAAE,IAAI;YACV,UAAU,EAAE,IAAI;SACnB;KACJ,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,MAAM,IAAI,oBAAa,EAAE,CAAC;IAC9B,CAAC;IAED,iDAAiD;IAEjD,IAAI,CAAC,IAAA,kCAAuB,EAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;QAC9E,MAAM,IAAI,qBAAc,EAAE,CAAC;IAC/B,CAAC;IAED,iDAAiD;IAEjD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAc,CAAC,oBAAoB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAC1E,MAAM,IAAI,qBAAc,EAAE,CAAC;IAC/B,CAAC;IAED,iDAAiD;IAEjD,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAEhC,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEhC,MAAM,CAAC,EAAE,GAAG,QAAQ,CAAC;IAErB,iDAAiD;IAEjD,OAAO,IAAA,qBAAY,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACrC,CAAC;AA/CD,4EA+CC"}
1
+ {"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../../../src/http/controllers/user-permission/handlers/delete.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAiBH,4EA+CC;AA9DD,qCAA2D;AAC3D,+CAA2E;AAE3E,mCAAsC;AACtC,yDAAkD;AAClD,iDAA2D;AAC3D,8CAAqD;AACrD,0CAA+C;AAE/C;;;;;GAKG;AACI,KAAK,UAAU,gCAAgC,CAAC,GAAY,EAAE,GAAa;IAC9E,MAAM,EAAE,GAAG,IAAA,2BAAiB,EAAC,GAAG,CAAC,CAAC;IAElC,MAAM,OAAO,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAChD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAc,CAAC,sBAAsB,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,qBAAc,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,IAAA,iCAAa,GAAE,CAAC;IACzC,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,8BAAoB,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QACpC,KAAK,EAAE;YACH,EAAE;SACL;QACD,SAAS,EAAE;YACP,IAAI,EAAE,IAAI;YACV,UAAU,EAAE,IAAI;SACnB;KACJ,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,MAAM,IAAI,oBAAa,EAAE,CAAC;IAC9B,CAAC;IAED,iDAAiD;IAEjD,IAAI,CAAC,IAAA,kCAAuB,EAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;QAC9E,MAAM,IAAI,qBAAc,EAAE,CAAC;IAC/B,CAAC;IAED,iDAAiD;IAEjD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAc,CAAC,sBAAsB,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAC9E,MAAM,IAAI,qBAAc,EAAE,CAAC;IAC/B,CAAC;IAED,iDAAiD;IAEjD,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAEhC,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEhC,MAAM,CAAC,EAAE,GAAG,QAAQ,CAAC;IAErB,iDAAiD;IAEjD,OAAO,IAAA,qBAAY,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACrC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../../../../src/http/controllers/user-permission/handlers/read.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAQhD;;;;;GAKG;AACH,wBAAsB,iCAAiC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CAwBlG;AAID;;;;;GAKG;AACH,wBAAsB,gCAAgC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CAYjG"}
1
+ {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../../../../src/http/controllers/user-permission/handlers/read.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAUhD;;;;;GAKG;AACH,wBAAsB,iCAAiC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CAiClG;AAID;;;;;GAKG;AACH,wBAAsB,gCAAgC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAI,OAAO,CAAC,GAAG,CAAC,CAqBjG"}