@keboola/api-client 21.0.0 → 23.0.0

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 (315) hide show
  1. package/API-SURFACE.md +26 -1
  2. package/dist/ai/index.cjs +4 -4
  3. package/dist/ai/index.d.cts +3 -2
  4. package/dist/ai/index.d.ts +3 -2
  5. package/dist/ai/index.js +3 -3
  6. package/dist/ai/types.d.cts +2 -2
  7. package/dist/ai/types.d.ts +2 -2
  8. package/dist/assets/index.cjs +12 -3
  9. package/dist/assets/index.cjs.map +1 -1
  10. package/dist/assets/index.d.cts +1 -0
  11. package/dist/assets/index.d.ts +1 -0
  12. package/dist/assets/index.js +11 -2
  13. package/dist/assets/index.js.map +1 -1
  14. package/dist/auth/index.cjs +22 -10
  15. package/dist/auth/index.d.cts +39 -4
  16. package/dist/auth/index.d.ts +39 -4
  17. package/dist/auth/index.js +2 -2
  18. package/dist/auth/types.d.cts +4 -8
  19. package/dist/auth/types.d.ts +4 -8
  20. package/dist/chat/index.cjs +4 -4
  21. package/dist/chat/index.d.cts +3 -7
  22. package/dist/chat/index.d.ts +3 -7
  23. package/dist/chat/index.js +3 -3
  24. package/dist/chat/types.d.cts +2 -2
  25. package/dist/chat/types.d.ts +2 -2
  26. package/dist/{chunk-YHMW7CZF.cjs → chunk-22D55AHX.cjs} +98 -19
  27. package/dist/chunk-22D55AHX.cjs.map +1 -0
  28. package/dist/chunk-22E6IGXR.js +6 -0
  29. package/dist/chunk-22E6IGXR.js.map +1 -0
  30. package/dist/{chunk-NV3P6XBU.js → chunk-33NQB34X.js} +4 -4
  31. package/dist/{chunk-NV3P6XBU.js.map → chunk-33NQB34X.js.map} +1 -1
  32. package/dist/{chunk-CBVGOANJ.cjs → chunk-35MODDCL.cjs} +6 -7
  33. package/dist/chunk-35MODDCL.cjs.map +1 -0
  34. package/dist/{chunk-RK2VGHJE.js → chunk-3B3GOGAL.js} +3 -3
  35. package/dist/chunk-3B3GOGAL.js.map +1 -0
  36. package/dist/chunk-43CGBOVT.cjs +16 -0
  37. package/dist/{chunk-UQWVZTEA.cjs.map → chunk-43CGBOVT.cjs.map} +1 -1
  38. package/dist/{chunk-C5R6ITYD.cjs → chunk-4GUUSO5O.cjs} +24 -7
  39. package/dist/chunk-4GUUSO5O.cjs.map +1 -0
  40. package/dist/{chunk-R2FAPJMZ.js → chunk-4Z5W2F6Q.js} +86 -7
  41. package/dist/chunk-4Z5W2F6Q.js.map +1 -0
  42. package/dist/{chunk-SB7AVZQU.cjs → chunk-556U6PFA.cjs} +6 -6
  43. package/dist/{chunk-SB7AVZQU.cjs.map → chunk-556U6PFA.cjs.map} +1 -1
  44. package/dist/{chunk-U7CANHDD.js → chunk-5Z6M32UE.js} +16 -5
  45. package/dist/chunk-5Z6M32UE.js.map +1 -0
  46. package/dist/{chunk-DAAHTUXU.cjs → chunk-5ZOWA7DA.cjs} +6 -6
  47. package/dist/{chunk-DAAHTUXU.cjs.map → chunk-5ZOWA7DA.cjs.map} +1 -1
  48. package/dist/{chunk-IWNJ47CV.js → chunk-6LBMZAPF.js} +14 -5
  49. package/dist/chunk-6LBMZAPF.js.map +1 -0
  50. package/dist/{chunk-AFIQYB2O.cjs → chunk-BWBTNAVL.cjs} +9 -9
  51. package/dist/{chunk-AFIQYB2O.cjs.map → chunk-BWBTNAVL.cjs.map} +1 -1
  52. package/dist/{chunk-NRJTA5P3.cjs → chunk-CCC6I32C.cjs} +4 -4
  53. package/dist/{chunk-NRJTA5P3.cjs.map → chunk-CCC6I32C.cjs.map} +1 -1
  54. package/dist/{chunk-LGWRJM5X.cjs → chunk-CN5GAKRO.cjs} +6 -6
  55. package/dist/{chunk-LGWRJM5X.cjs.map → chunk-CN5GAKRO.cjs.map} +1 -1
  56. package/dist/{chunk-IUN2ZSU3.cjs → chunk-DMNWPVVT.cjs} +3 -2
  57. package/dist/chunk-DMNWPVVT.cjs.map +1 -0
  58. package/dist/{chunk-4WX5W7YU.js → chunk-F43HBNKD.js} +4 -4
  59. package/dist/{chunk-4WX5W7YU.js.map → chunk-F43HBNKD.js.map} +1 -1
  60. package/dist/{chunk-HUNYAVJJ.cjs → chunk-FDTWXXI4.cjs} +7 -7
  61. package/dist/{chunk-HUNYAVJJ.cjs.map → chunk-FDTWXXI4.cjs.map} +1 -1
  62. package/dist/{chunk-ZHNOZHJG.js → chunk-FQK3YM7U.js} +3 -3
  63. package/dist/{chunk-ZHNOZHJG.js.map → chunk-FQK3YM7U.js.map} +1 -1
  64. package/dist/{chunk-DAS5UQN6.cjs → chunk-FVJC2GJY.cjs} +19 -8
  65. package/dist/chunk-FVJC2GJY.cjs.map +1 -0
  66. package/dist/{chunk-5FDQYOJD.js → chunk-G5JMZI2L.js} +22 -5
  67. package/dist/chunk-G5JMZI2L.js.map +1 -0
  68. package/dist/{chunk-KF5EI2IB.js → chunk-HFZCZ7PZ.js} +57 -7
  69. package/dist/chunk-HFZCZ7PZ.js.map +1 -0
  70. package/dist/{chunk-S5XEXK36.cjs → chunk-HZSZQFEO.cjs} +9 -9
  71. package/dist/{chunk-S5XEXK36.cjs.map → chunk-HZSZQFEO.cjs.map} +1 -1
  72. package/dist/{chunk-WWICQYOY.cjs → chunk-IYGHWPCR.cjs} +4 -4
  73. package/dist/{chunk-WWICQYOY.cjs.map → chunk-IYGHWPCR.cjs.map} +1 -1
  74. package/dist/{chunk-CWD66KRM.js → chunk-J2MBTBE2.js} +4 -4
  75. package/dist/{chunk-CWD66KRM.js.map → chunk-J2MBTBE2.js.map} +1 -1
  76. package/dist/{chunk-DJ5LXAG3.js → chunk-JQSMJ64B.js} +4 -4
  77. package/dist/{chunk-DJ5LXAG3.js.map → chunk-JQSMJ64B.js.map} +1 -1
  78. package/dist/{chunk-X6BQTEIT.cjs → chunk-K6EZ3USU.cjs} +7 -7
  79. package/dist/{chunk-X6BQTEIT.cjs.map → chunk-K6EZ3USU.cjs.map} +1 -1
  80. package/dist/{chunk-6BYHD5DG.js → chunk-KH6BHTXN.js} +3 -4
  81. package/dist/chunk-KH6BHTXN.js.map +1 -0
  82. package/dist/{chunk-4HBUVR57.cjs → chunk-KUYVBCUM.cjs} +82 -6
  83. package/dist/chunk-KUYVBCUM.cjs.map +1 -0
  84. package/dist/{chunk-OZMUKLXN.cjs → chunk-KY4EYQ6I.cjs} +6 -6
  85. package/dist/{chunk-OZMUKLXN.cjs.map → chunk-KY4EYQ6I.cjs.map} +1 -1
  86. package/dist/{chunk-6JXSO3AR.js → chunk-L4R66Q6S.js} +3 -3
  87. package/dist/{chunk-6JXSO3AR.js.map → chunk-L4R66Q6S.js.map} +1 -1
  88. package/dist/{chunk-P6OWDUN7.js → chunk-L63UYWJG.js} +4 -4
  89. package/dist/{chunk-P6OWDUN7.js.map → chunk-L63UYWJG.js.map} +1 -1
  90. package/dist/{chunk-EXNR4FGV.js → chunk-MIUULCML.js} +3 -3
  91. package/dist/{chunk-EXNR4FGV.js.map → chunk-MIUULCML.js.map} +1 -1
  92. package/dist/{chunk-MUC6XWII.js → chunk-PEC3BYFA.js} +4 -4
  93. package/dist/{chunk-MUC6XWII.js.map → chunk-PEC3BYFA.js.map} +1 -1
  94. package/dist/{chunk-ZCODWFCC.js → chunk-PHP2NND7.js} +4 -4
  95. package/dist/{chunk-ZCODWFCC.js.map → chunk-PHP2NND7.js.map} +1 -1
  96. package/dist/{chunk-HJQYMALV.cjs → chunk-Q7C2IRF2.cjs} +6 -6
  97. package/dist/{chunk-HJQYMALV.cjs.map → chunk-Q7C2IRF2.cjs.map} +1 -1
  98. package/dist/chunk-QHD4LPAQ.cjs +8 -0
  99. package/dist/chunk-QHD4LPAQ.cjs.map +1 -0
  100. package/dist/{chunk-LFLFNQMQ.js → chunk-R3NW5LAB.js} +4 -4
  101. package/dist/{chunk-LFLFNQMQ.js.map → chunk-R3NW5LAB.js.map} +1 -1
  102. package/dist/{chunk-FDISA5KO.cjs → chunk-T7SEZMQ7.cjs} +16 -7
  103. package/dist/chunk-T7SEZMQ7.cjs.map +1 -0
  104. package/dist/{chunk-YVC4NGW2.js → chunk-TCGHVOIJ.js} +4 -4
  105. package/dist/{chunk-YVC4NGW2.js.map → chunk-TCGHVOIJ.js.map} +1 -1
  106. package/dist/{chunk-WXGYFLFX.js → chunk-TF3JWA7J.js} +4 -4
  107. package/dist/{chunk-WXGYFLFX.js.map → chunk-TF3JWA7J.js.map} +1 -1
  108. package/dist/{chunk-VTC3FL4B.js → chunk-UH5JOSEE.js} +4 -4
  109. package/dist/{chunk-VTC3FL4B.js.map → chunk-UH5JOSEE.js.map} +1 -1
  110. package/dist/{chunk-M2LJZXVR.js → chunk-UP5SEEYZ.js} +73 -7
  111. package/dist/chunk-UP5SEEYZ.js.map +1 -0
  112. package/dist/{chunk-HHULC5GT.cjs → chunk-VPNWX7YM.cjs} +6 -6
  113. package/dist/{chunk-HHULC5GT.cjs.map → chunk-VPNWX7YM.cjs.map} +1 -1
  114. package/dist/{chunk-V6QQZLEU.js → chunk-WJEAGAWB.js} +4 -4
  115. package/dist/{chunk-V6QQZLEU.js.map → chunk-WJEAGAWB.js.map} +1 -1
  116. package/dist/{chunk-3GTRQFWA.cjs → chunk-WZGBE4XH.cjs} +9 -9
  117. package/dist/{chunk-3GTRQFWA.cjs.map → chunk-WZGBE4XH.cjs.map} +1 -1
  118. package/dist/chunk-X4HEWMPU.cjs +113 -0
  119. package/dist/chunk-X4HEWMPU.cjs.map +1 -0
  120. package/dist/{chunk-XPQBE77T.cjs → chunk-YEF46DYF.cjs} +61 -8
  121. package/dist/chunk-YEF46DYF.cjs.map +1 -0
  122. package/dist/{chunk-RTQEMQIC.cjs → chunk-YQEBJG5H.cjs} +6 -6
  123. package/dist/{chunk-RTQEMQIC.cjs.map → chunk-YQEBJG5H.cjs.map} +1 -1
  124. package/dist/chunk-ZDCEKJAL.js +110 -0
  125. package/dist/chunk-ZDCEKJAL.js.map +1 -0
  126. package/dist/constants/index.cjs +15 -1
  127. package/dist/constants/index.cjs.map +1 -1
  128. package/dist/constants/index.d.cts +1 -0
  129. package/dist/constants/index.d.ts +1 -0
  130. package/dist/constants/index.js +15 -1
  131. package/dist/constants/index.js.map +1 -1
  132. package/dist/{createOpenapiFetchClient-BMaILWyq.d.ts → createOpenapiFetchClient-BX7_szVZ.d.ts} +1 -1
  133. package/dist/{createOpenapiFetchClient-DQL2ZYNb.d.cts → createOpenapiFetchClient-pguVgT7R.d.cts} +1 -1
  134. package/dist/dataScience/index.cjs +5 -5
  135. package/dist/dataScience/index.d.cts +3 -8
  136. package/dist/dataScience/index.d.ts +3 -8
  137. package/dist/dataScience/index.js +3 -3
  138. package/dist/dataScience/types.d.cts +2 -2
  139. package/dist/dataScience/types.d.ts +2 -2
  140. package/dist/domain/permissions/index.cjs +23 -0
  141. package/dist/domain/permissions/index.cjs.map +1 -1
  142. package/dist/domain/permissions/index.d.cts +39 -4
  143. package/dist/domain/permissions/index.d.ts +39 -4
  144. package/dist/domain/permissions/index.js +20 -1
  145. package/dist/domain/permissions/index.js.map +1 -1
  146. package/dist/editor/index.cjs +4 -4
  147. package/dist/editor/index.d.cts +2 -2
  148. package/dist/editor/index.d.ts +2 -2
  149. package/dist/editor/index.js +3 -3
  150. package/dist/editor/types.d.cts +2 -2
  151. package/dist/editor/types.d.ts +2 -2
  152. package/dist/encryption/index.cjs +3 -3
  153. package/dist/encryption/index.d.cts +2 -2
  154. package/dist/encryption/index.d.ts +2 -2
  155. package/dist/encryption/index.js +2 -2
  156. package/dist/encryption/types.d.cts +2 -2
  157. package/dist/encryption/types.d.ts +2 -2
  158. package/dist/import/index.cjs +4 -4
  159. package/dist/import/index.js +3 -3
  160. package/dist/index.cjs +129 -98
  161. package/dist/index.cjs.map +1 -1
  162. package/dist/index.d.cts +395 -47
  163. package/dist/index.d.ts +395 -47
  164. package/dist/index.js +59 -31
  165. package/dist/index.js.map +1 -1
  166. package/dist/management/index.cjs +5 -5
  167. package/dist/management/index.d.cts +12 -3
  168. package/dist/management/index.d.ts +12 -3
  169. package/dist/management/index.js +3 -3
  170. package/dist/management/types.d.cts +2 -2
  171. package/dist/management/types.d.ts +2 -2
  172. package/dist/metastore/index.cjs +4 -4
  173. package/dist/metastore/index.d.cts +3 -3
  174. package/dist/metastore/index.d.ts +3 -3
  175. package/dist/metastore/index.js +3 -3
  176. package/dist/metastore/types.d.cts +2 -2
  177. package/dist/metastore/types.d.ts +2 -2
  178. package/dist/notifications/index.cjs +5 -4
  179. package/dist/notifications/index.d.cts +29 -16
  180. package/dist/notifications/index.d.ts +29 -16
  181. package/dist/notifications/index.js +4 -3
  182. package/dist/notifications/types.d.cts +2 -2
  183. package/dist/notifications/types.d.ts +2 -2
  184. package/dist/oauth/index.cjs +4 -4
  185. package/dist/oauth/index.js +3 -3
  186. package/dist/{project-BpTHlKfO.d.ts → project-BV-vseKc.d.ts} +1 -1
  187. package/dist/{project-DEFMKeAm.d.cts → project-CbJCjkdt.d.cts} +1 -1
  188. package/dist/queryService/index.cjs +4 -4
  189. package/dist/queryService/index.d.cts +2 -2
  190. package/dist/queryService/index.d.ts +2 -2
  191. package/dist/queryService/index.js +3 -3
  192. package/dist/queryService/types.d.cts +2 -2
  193. package/dist/queryService/types.d.ts +2 -2
  194. package/dist/queue/index.cjs +5 -4
  195. package/dist/queue/index.d.cts +206 -2
  196. package/dist/queue/index.d.ts +206 -2
  197. package/dist/queue/index.js +4 -3
  198. package/dist/queue/types.d.cts +2 -2
  199. package/dist/queue/types.d.ts +2 -2
  200. package/dist/scheduler/index.cjs +5 -4
  201. package/dist/scheduler/index.d.cts +2 -1
  202. package/dist/scheduler/index.d.ts +2 -1
  203. package/dist/scheduler/index.js +4 -3
  204. package/dist/scheduler/types.d.cts +1 -1
  205. package/dist/scheduler/types.d.ts +1 -1
  206. package/dist/sdk/configurations/index.d.cts +5 -5
  207. package/dist/sdk/configurations/index.d.ts +5 -5
  208. package/dist/sdk/semanticLayer/index.cjs +43 -3
  209. package/dist/sdk/semanticLayer/index.d.cts +120 -5
  210. package/dist/sdk/semanticLayer/index.d.ts +120 -5
  211. package/dist/sdk/semanticLayer/index.js +1 -1
  212. package/dist/sdk/semanticLayer/types.d.cts +3 -3
  213. package/dist/sdk/semanticLayer/types.d.ts +3 -3
  214. package/dist/sdk/storage/index.cjs +12 -11
  215. package/dist/sdk/storage/index.d.cts +5 -5
  216. package/dist/sdk/storage/index.d.ts +5 -5
  217. package/dist/sdk/storage/index.js +2 -1
  218. package/dist/sdk/tag/index.d.cts +3 -3
  219. package/dist/sdk/tag/index.d.ts +3 -3
  220. package/dist/sdk/tag/types.d.cts +3 -3
  221. package/dist/sdk/tag/types.d.ts +3 -3
  222. package/dist/sdk/vault/index.d.cts +3 -3
  223. package/dist/sdk/vault/index.d.ts +3 -3
  224. package/dist/status/index.cjs +2 -2
  225. package/dist/status/index.js +1 -1
  226. package/dist/storage/index.cjs +12 -12
  227. package/dist/storage/index.d.cts +4 -4
  228. package/dist/storage/index.d.ts +4 -4
  229. package/dist/storage/index.js +5 -5
  230. package/dist/storage/types.d.cts +3 -3
  231. package/dist/storage/types.d.ts +3 -3
  232. package/dist/{storageClient-BxgbulPW.d.cts → storageClient-Dlu7OJgJ.d.cts} +2 -2
  233. package/dist/{storageClient-BONJnuhr.d.ts → storageClient-Dz4tTWOc.d.ts} +2 -2
  234. package/dist/{storageSdk-uCojVKkr.d.cts → storageSdk-DxbSjnHh.d.cts} +1 -1
  235. package/dist/{storageSdk-CUnp67LN.d.ts → storageSdk-PRaSLkD6.d.ts} +1 -1
  236. package/dist/stream/index.cjs +4 -4
  237. package/dist/stream/index.d.cts +2 -2
  238. package/dist/stream/index.d.ts +2 -2
  239. package/dist/stream/index.js +3 -3
  240. package/dist/stream/types.d.cts +2 -2
  241. package/dist/stream/types.d.ts +2 -2
  242. package/dist/syncActions/index.cjs +4 -4
  243. package/dist/syncActions/index.d.cts +2 -2
  244. package/dist/syncActions/index.d.ts +2 -2
  245. package/dist/syncActions/index.js +3 -3
  246. package/dist/syncActions/types.d.cts +1 -10
  247. package/dist/syncActions/types.d.ts +1 -10
  248. package/dist/telemetry/index.cjs +4 -4
  249. package/dist/telemetry/index.js +3 -3
  250. package/dist/{types-VK3k4Z6R.d.cts → types-22LtuLPM.d.cts} +1 -1
  251. package/dist/{types-BVldT2vs.d.cts → types-B-3bBl2q.d.ts} +21 -17
  252. package/dist/{types-C6gjiVpQ.d.cts → types-B3hgDuaG.d.cts} +1 -1
  253. package/dist/{types-jKnx7Tm_.d.ts → types-BbM5WDSR.d.cts} +1 -1
  254. package/dist/{types-jKnx7Tm_.d.cts → types-BbM5WDSR.d.ts} +1 -1
  255. package/dist/{types-Dv3vN7M9.d.ts → types-Bj3fLP0h.d.ts} +1 -1
  256. package/dist/{types-D3Kkh6yW.d.ts → types-BjNd012m.d.ts} +3 -545
  257. package/dist/{types-yKV1EX6f.d.ts → types-BjdcqqvT.d.ts} +10 -1
  258. package/dist/{types-BogOtZre.d.ts → types-CJ0RgA57.d.ts} +500 -44
  259. package/dist/{types-DFWnAftN.d.cts → types-CUzRu6Z8.d.cts} +1 -1
  260. package/dist/{types-B9SJ0cIc.d.cts → types-CfIKhNMg.d.cts} +500 -44
  261. package/dist/{types-D9cNOf-3.d.cts → types-CkQXSDqo.d.cts} +10 -1
  262. package/dist/{types-CWebeQXy.d.cts → types-CmdRXxqa.d.cts} +1 -1
  263. package/dist/{types-BM3xJvzM.d.ts → types-Cnsa5tWp.d.ts} +1 -1
  264. package/dist/{types-DacFMc6L.d.ts → types-D6p5VsOx.d.cts} +27 -4
  265. package/dist/{types-CbEJaobw.d.ts → types-DNEuJ-tb.d.cts} +585 -6
  266. package/dist/{types-BbeZapCu.d.ts → types-DXFcF3_c.d.ts} +2 -2
  267. package/dist/{types-GRfGXouy.d.cts → types-DgU_wy4q.d.cts} +2 -2
  268. package/dist/{types-BxjcUj-y.d.cts → types-Dq5jIMye.d.ts} +27 -4
  269. package/dist/{types-Do0nBZbY.d.ts → types-Dz4Yc-Mu.d.ts} +1 -1
  270. package/dist/{types-DJLceKR0.d.ts → types-GecGaYgv.d.cts} +516 -14
  271. package/dist/{types-DJLceKR0.d.cts → types-GecGaYgv.d.ts} +516 -14
  272. package/dist/{types-CFd7q2ed.d.ts → types-PG_v0QyH.d.ts} +1 -1
  273. package/dist/{types-CS8MYc2k.d.ts → types-mQtL3f4D.d.cts} +21 -17
  274. package/dist/{types-BjcRP8q1.d.cts → types-qCMu5X9I.d.ts} +585 -6
  275. package/dist/{types-CvHPHNH0.d.cts → types-y3pEpGrH.d.cts} +3 -545
  276. package/dist/{utils-DDERw8dM.d.cts → utils-CuiDsDxz.d.cts} +997 -168
  277. package/dist/{utils-C7eSJKtG.d.ts → utils-zcz60drL.d.ts} +997 -168
  278. package/dist/vault/index.cjs +4 -4
  279. package/dist/vault/index.d.cts +1 -1
  280. package/dist/vault/index.d.ts +1 -1
  281. package/dist/vault/index.js +3 -3
  282. package/dist/vault/types.d.cts +4 -10
  283. package/dist/vault/types.d.ts +4 -10
  284. package/package.json +3 -3
  285. package/surface/ai.md +2 -2
  286. package/surface/auth.md +13 -1
  287. package/surface/dataScience.md +5 -5
  288. package/surface/kaiAgent.md +3 -3
  289. package/surface/management.md +9 -0
  290. package/surface/notifications.md +6 -4
  291. package/surface/queue.md +6 -1
  292. package/surface/scheduler.md +1 -0
  293. package/surface/sdk.md +2 -0
  294. package/surface/storage.md +1 -1
  295. package/dist/chunk-4HBUVR57.cjs.map +0 -1
  296. package/dist/chunk-5FDQYOJD.js.map +0 -1
  297. package/dist/chunk-6BYHD5DG.js.map +0 -1
  298. package/dist/chunk-C5R6ITYD.cjs.map +0 -1
  299. package/dist/chunk-CBVGOANJ.cjs.map +0 -1
  300. package/dist/chunk-DAS5UQN6.cjs.map +0 -1
  301. package/dist/chunk-FDISA5KO.cjs.map +0 -1
  302. package/dist/chunk-IUN2ZSU3.cjs.map +0 -1
  303. package/dist/chunk-IWNJ47CV.js.map +0 -1
  304. package/dist/chunk-KF5EI2IB.js.map +0 -1
  305. package/dist/chunk-M2LJZXVR.js.map +0 -1
  306. package/dist/chunk-NZN6OX4H.cjs +0 -38
  307. package/dist/chunk-NZN6OX4H.cjs.map +0 -1
  308. package/dist/chunk-QNDU44PQ.js +0 -36
  309. package/dist/chunk-QNDU44PQ.js.map +0 -1
  310. package/dist/chunk-R2FAPJMZ.js.map +0 -1
  311. package/dist/chunk-RK2VGHJE.js.map +0 -1
  312. package/dist/chunk-U7CANHDD.js.map +0 -1
  313. package/dist/chunk-UQWVZTEA.cjs +0 -16
  314. package/dist/chunk-XPQBE77T.cjs.map +0 -1
  315. package/dist/chunk-YHMW7CZF.cjs.map +0 -1
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunkWWICQYOY_cjs = require('./chunk-WWICQYOY.cjs');
4
- var chunkIUN2ZSU3_cjs = require('./chunk-IUN2ZSU3.cjs');
3
+ var chunkIYGHWPCR_cjs = require('./chunk-IYGHWPCR.cjs');
4
+ var chunkDMNWPVVT_cjs = require('./chunk-DMNWPVVT.cjs');
5
5
 
6
6
  // src/utils/async/dedupe.ts
7
7
  var dedupe = (task) => {
@@ -17,11 +17,11 @@ var dedupe = (task) => {
17
17
 
18
18
  // src/clients/management/authMiddleware.ts
19
19
  var TOKEN_CACHE_TTL_MS = 6e4;
20
- var isManagementClientAuthError = (error) => error instanceof chunkWWICQYOY_cjs.ManagementClientAuthError;
20
+ var isManagementClientAuthError = (error) => error instanceof chunkIYGHWPCR_cjs.ManagementClientAuthError;
21
21
  var createAuth = (baseUrl) => {
22
- const fetchClient = chunkIUN2ZSU3_cjs.createGenericFetchClient({ baseUrl });
22
+ const fetchClient = chunkDMNWPVVT_cjs.createGenericFetchClient({ baseUrl });
23
23
  const verifyManagementToken = async (accessToken) => {
24
- const headers = new Headers({ [chunkIUN2ZSU3_cjs.KeboolaHttpHeader.MANAGEMENT_API_TOKEN]: accessToken });
24
+ const headers = new Headers({ [chunkDMNWPVVT_cjs.KeboolaHttpHeader.MANAGEMENT_API_TOKEN]: accessToken });
25
25
  const { data } = await fetchClient.get(
26
26
  "/manage/tokens/verify",
27
27
  {},
@@ -30,7 +30,7 @@ var createAuth = (baseUrl) => {
30
30
  return data;
31
31
  };
32
32
  const createCurrentUserSessionToken = async (accessToken) => {
33
- const headers = new Headers({ [chunkIUN2ZSU3_cjs.KeboolaHttpHeader.MANAGEMENT_API_TOKEN]: accessToken });
33
+ const headers = new Headers({ [chunkDMNWPVVT_cjs.KeboolaHttpHeader.MANAGEMENT_API_TOKEN]: accessToken });
34
34
  const { data } = await fetchClient.post(
35
35
  "/manage/current-user/session-token",
36
36
  {},
@@ -46,14 +46,14 @@ var createAuth = (baseUrl) => {
46
46
  // transform valid response, to invalid and throw custom error
47
47
  validateStatus: (apiResponse) => {
48
48
  const { response } = apiResponse;
49
- const isTextContent = response.headers.get(chunkIUN2ZSU3_cjs.HttpHeader.CONTENT_TYPE)?.includes(chunkIUN2ZSU3_cjs.HttpContentType.TEXT_HTML);
49
+ const isTextContent = response.headers.get(chunkDMNWPVVT_cjs.HttpHeader.CONTENT_TYPE)?.includes(chunkDMNWPVVT_cjs.HttpContentType.TEXT_HTML);
50
50
  if (isTextContent)
51
- return new chunkWWICQYOY_cjs.ManagementClientAuthError(
51
+ return new chunkIYGHWPCR_cjs.ManagementClientAuthError(
52
52
  "Your session expired",
53
53
  "You will be logged out automatically.",
54
54
  apiResponse
55
55
  );
56
- return chunkIUN2ZSU3_cjs.defaultValidateStatus(apiResponse);
56
+ return chunkDMNWPVVT_cjs.defaultValidateStatus(apiResponse);
57
57
  }
58
58
  }
59
59
  );
@@ -93,7 +93,7 @@ var createAuthMiddleware = ({
93
93
  const ensureValidTokenDeduped = dedupe(ensureValidToken);
94
94
  return (next) => async (request) => {
95
95
  const validToken = await ensureValidTokenDeduped();
96
- request.request.headers.set(chunkIUN2ZSU3_cjs.KeboolaHttpHeader.MANAGEMENT_API_TOKEN, validToken);
96
+ request.request.headers.set(chunkDMNWPVVT_cjs.KeboolaHttpHeader.MANAGEMENT_API_TOKEN, validToken);
97
97
  return next(request);
98
98
  };
99
99
  };
@@ -856,7 +856,7 @@ var createStorageBackends = (client) => {
856
856
  };
857
857
 
858
858
  // src/clients/management/users/users.ts
859
- var createUsers = (client) => {
859
+ var createUsers = (client, openApiClient) => {
860
860
  const addUserAdminFeature = async ({ feature, userIdOrMail }, signal) => {
861
861
  const { data } = await client.post(
862
862
  "/manage/users/{userIdOrMail}/features",
@@ -873,17 +873,96 @@ var createUsers = (client) => {
873
873
  );
874
874
  return data;
875
875
  };
876
+ const getUsers = async (query, signal) => {
877
+ const { data } = await openApiClient.get(
878
+ "/manage/users",
879
+ { query: { q: query?.q, limit: query?.limit, offset: query?.offset } },
880
+ { signal }
881
+ );
882
+ return data;
883
+ };
884
+ const getUser = async (id, signal) => {
885
+ const { data } = await openApiClient.get(
886
+ "/manage/users/{idOrEmail}",
887
+ { path: { idOrEmail: String(id) } },
888
+ { signal }
889
+ );
890
+ return data;
891
+ };
892
+ const getUserOrganizations = async (id, signal) => {
893
+ const { data } = await openApiClient.get(
894
+ "/manage/users/{id}/organizations",
895
+ { path: { id } },
896
+ { signal }
897
+ );
898
+ return data;
899
+ };
900
+ const getUserProjects = async (id, signal) => {
901
+ const { data } = await openApiClient.get(
902
+ "/manage/users/{id}/projects",
903
+ { path: { id } },
904
+ { signal }
905
+ );
906
+ return data;
907
+ };
908
+ const getUserMaintainers = async (id, signal) => {
909
+ const { data } = await openApiClient.get(
910
+ "/manage/users/{id}/maintainers",
911
+ { path: { id } },
912
+ { signal }
913
+ );
914
+ return data;
915
+ };
916
+ const grantSuperAdmin = async (id, signal) => {
917
+ const { data } = await openApiClient.post(
918
+ "/manage/users/{id}/super-admin",
919
+ { path: { id } },
920
+ { signal }
921
+ );
922
+ return data;
923
+ };
924
+ const removeSuperAdmin = async (id, signal) => {
925
+ const { data } = await openApiClient.delete(
926
+ "/manage/users/{idOrEmail}/super-admin",
927
+ { path: { idOrEmail: String(id) } },
928
+ { signal }
929
+ );
930
+ return data;
931
+ };
932
+ const disableUserMfa = async (id, signal) => {
933
+ await openApiClient.delete(
934
+ "/manage/users/{idOrEmail}/mfa",
935
+ { path: { idOrEmail: String(id) } },
936
+ { signal }
937
+ );
938
+ };
939
+ const deleteUser = async (id, signal) => {
940
+ await openApiClient.delete(
941
+ "/manage/users/{idOrEmail}",
942
+ { path: { idOrEmail: String(id) } },
943
+ { signal }
944
+ );
945
+ };
876
946
  return {
877
947
  addUserAdminFeature,
878
- removeUserAdminFeature
948
+ removeUserAdminFeature,
949
+ getUsers,
950
+ getUser,
951
+ getUserOrganizations,
952
+ getUserProjects,
953
+ getUserMaintainers,
954
+ grantSuperAdmin,
955
+ removeSuperAdmin,
956
+ disableUserMfa,
957
+ deleteUser
879
958
  };
880
959
  };
881
960
 
882
961
  // src/clients/management/managementClient.ts
883
962
  var createAuthHeaders = (auth) => {
884
963
  if (auth.type === "management-token")
885
- return auth.token ? { [chunkIUN2ZSU3_cjs.KeboolaHttpHeader.MANAGEMENT_API_TOKEN]: auth.token } : {};
886
- return { [chunkIUN2ZSU3_cjs.HttpHeader.AUTHORIZATION]: `Bearer ${auth.token}` };
964
+ return auth.token ? { [chunkDMNWPVVT_cjs.KeboolaHttpHeader.MANAGEMENT_API_TOKEN]: auth.token } : {};
965
+ return { [chunkDMNWPVVT_cjs.HttpHeader.AUTHORIZATION]: `Bearer ${auth.token}` };
887
966
  };
888
967
  var createManagementClient = ({
889
968
  baseUrl,
@@ -897,12 +976,12 @@ var createManagementClient = ({
897
976
  // 👈 order of middlewares always matters
898
977
  ] : middlewares;
899
978
  const headers = withAuthMiddleware ? void 0 : createAuthHeaders(auth);
900
- const client = chunkIUN2ZSU3_cjs.createGenericFetchClient({
979
+ const client = chunkDMNWPVVT_cjs.createGenericFetchClient({
901
980
  baseUrl,
902
981
  middlewares: allMiddlewares,
903
982
  headers
904
983
  });
905
- const openApiClient = chunkIUN2ZSU3_cjs.createOpenapiFetchClient({
984
+ const openApiClient = chunkDMNWPVVT_cjs.createOpenapiFetchClient({
906
985
  baseUrl,
907
986
  middlewares: allMiddlewares,
908
987
  headers
@@ -920,7 +999,7 @@ var createManagementClient = ({
920
999
  fileStorage: createFileStorage(openApiClient),
921
1000
  projects: createProjects(client),
922
1001
  storageBackends: createStorageBackends(openApiClient),
923
- users: createUsers(client),
1002
+ users: createUsers(client, openApiClient),
924
1003
  verifyToken
925
1004
  };
926
1005
  };
@@ -928,5 +1007,5 @@ var createManagementClient = ({
928
1007
  exports.createManagementClient = createManagementClient;
929
1008
  exports.dedupe = dedupe;
930
1009
  exports.isManagementClientAuthError = isManagementClientAuthError;
931
- //# sourceMappingURL=chunk-YHMW7CZF.cjs.map
932
- //# sourceMappingURL=chunk-YHMW7CZF.cjs.map
1010
+ //# sourceMappingURL=chunk-22D55AHX.cjs.map
1011
+ //# sourceMappingURL=chunk-22D55AHX.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/utils/async/dedupe.ts","../src/clients/management/authMiddleware.ts","../src/clients/management/currentUser/currentUser.ts","../src/clients/management/deletedProjects/deletedProjects.ts","../src/clients/management/features/features.ts","../src/clients/management/fileStorage/fileStorage.ts","../src/clients/management/maintainers/maintainers.ts","../src/clients/management/organizations/organizations.ts","../src/clients/management/projects/projects.ts","../src/clients/management/storageBackends/storageBackends.ts","../src/clients/management/users/users.ts","../src/clients/management/managementClient.ts"],"names":["ManagementClientAuthError","createGenericFetchClient","KeboolaHttpHeader","HttpHeader","HttpContentType","defaultValidateStatus","createOpenapiFetchClient"],"mappings":"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","file":"chunk-22D55AHX.cjs","sourcesContent":["import type { TaskFn } from './types';\n\n/**\n * Deduplicates concurrent triggers by sharing one in-flight run of `task`.\n * While a run is in flight every trigger returns that same promise; once it\n * settles the next trigger starts a fresh run. (Contrast `coalesce`, which\n * runs a *trailing* pass for triggers that arrive mid-run.)\n *\n * @returns a trigger; each call returns a promise of the task result.\n * @throws The returned promise rejects with whatever `task` throws or rejects\n * with — the caller handles it (try/catch, or `.catch` on `void trigger()`).\n */\nexport const dedupe = <T>(task: TaskFn<T>): (() => Promise<Awaited<T>>) => {\n let inflight: Promise<Awaited<T>> | null = null;\n\n // async wrapper so a synchronous throw from `task` rejects rather than throws.\n const runTask = async (): Promise<Awaited<T>> => await task();\n\n return () => {\n inflight ??= runTask().finally(() => {\n inflight = null;\n });\n return inflight;\n };\n};\n","import { ManagementClientAuthError } from '../../errors';\nimport {\n createGenericFetchClient,\n defaultValidateStatus,\n HttpContentType,\n HttpHeader,\n type MiddlewareFn,\n} from '../../fetchClient';\nimport { KeboolaHttpHeader } from '../../internal';\nimport { dedupe } from '../../utils';\n\nimport type { ManagementToken } from './tokenTypes';\n\ntype ManagementTokenWithStringToken = { token: string } & ManagementToken;\n\n// Long enough to amortize verify calls over a burst of parallel queries at app\n// startup; short enough that a remotely revoked token is re-checked within a minute.\nconst TOKEN_CACHE_TTL_MS = 60_000;\n\nexport const isManagementClientAuthError = (error: unknown): error is ManagementClientAuthError =>\n error instanceof ManagementClientAuthError;\n\nconst createAuth = (baseUrl: string) => {\n const fetchClient = createGenericFetchClient({ baseUrl });\n\n // Raw token verify — deliberately does NOT go through this middleware (which would recurse).\n const verifyManagementToken = async (accessToken: string) => {\n const headers = new Headers({ [KeboolaHttpHeader.MANAGEMENT_API_TOKEN]: accessToken });\n const { data } = await fetchClient.get<ManagementToken>(\n '/manage/tokens/verify',\n {},\n { headers },\n );\n return data;\n };\n\n const createCurrentUserSessionToken = async (accessToken: string) => {\n const headers = new Headers({ [KeboolaHttpHeader.MANAGEMENT_API_TOKEN]: accessToken });\n const { data } = await fetchClient.post<ManagementTokenWithStringToken>(\n '/manage/current-user/session-token',\n {},\n { headers },\n );\n return data.token;\n };\n\n const createAdminAccountSessionToken = async () => {\n const { data } = await fetchClient.post<ManagementTokenWithStringToken>(\n '/admin/account/session-token',\n {},\n {\n // transform valid response, to invalid and throw custom error\n validateStatus: (apiResponse) => {\n const { response } = apiResponse;\n\n // If the response is \"302 Found\", then response type is \"text/html\", because backend detected\n // that session expired and redirected user to login screen\n const isTextContent = response.headers\n .get(HttpHeader.CONTENT_TYPE)\n ?.includes(HttpContentType.TEXT_HTML);\n\n if (isTextContent)\n return new ManagementClientAuthError(\n 'Your session expired',\n 'You will be logged out automatically.',\n apiResponse,\n );\n\n return defaultValidateStatus(apiResponse);\n },\n },\n );\n return data.token;\n };\n\n return {\n verifyManagementToken,\n createCurrentUserSessionToken,\n createAdminAccountSessionToken,\n };\n};\n\nexport const createAuthMiddleware = ({\n accessToken,\n baseUrl,\n}: {\n baseUrl: string;\n accessToken?: string;\n}): MiddlewareFn => {\n const auth = createAuth(baseUrl);\n\n let token: string | undefined = accessToken;\n let tokenValidUntil = 0;\n // oxlint-disable-next-line turbo/no-undeclared-env-vars\n const isDevelopment = process.env.NODE_ENV === 'development';\n\n const ensureValidToken = async (): Promise<string> => {\n if (token && Date.now() < tokenValidUntil) return token;\n\n if (token) {\n const tokenInfo = await auth.verifyManagementToken(token);\n const isTokenValid = !tokenInfo.isDisabled && !tokenInfo.isExpired;\n if (isTokenValid) {\n tokenValidUntil = Date.now() + TOKEN_CACHE_TTL_MS;\n return token;\n }\n token = isDevelopment\n ? await auth.createCurrentUserSessionToken(token)\n : await auth.createAdminAccountSessionToken();\n tokenValidUntil = Date.now() + TOKEN_CACHE_TTL_MS;\n return token;\n }\n\n token = await auth.createAdminAccountSessionToken();\n tokenValidUntil = Date.now() + TOKEN_CACHE_TTL_MS;\n return token;\n };\n\n // Deduplicate concurrent auth — all parallel requests share one inflight promise.\n const ensureValidTokenDeduped = dedupe(ensureValidToken);\n\n return (next) => async (request) => {\n const validToken = await ensureValidTokenDeduped();\n\n request.request.headers.set(KeboolaHttpHeader.MANAGEMENT_API_TOKEN, validToken);\n return next(request);\n };\n};\n","import type { ManagementOpenApiFetchClient } from '../managementClient';\n\nexport const createCurrentUser = (client: ManagementOpenApiFetchClient) => {\n // --- Maintainer invitations ---\n\n const getMaintainerInvitations = async (signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/current-user/maintainers-invitations',\n {},\n { signal },\n );\n return data;\n };\n\n const getMaintainerInvitation = async (id: number, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/current-user/maintainers-invitations/{id}',\n { path: { id } },\n { signal },\n );\n return data;\n };\n\n const acceptMaintainerInvitation = async (id: number) => {\n await client.put('/manage/current-user/maintainers-invitations/{id}', { path: { id } });\n };\n\n const rejectMaintainerInvitation = async (id: number) => {\n await client.delete('/manage/current-user/maintainers-invitations/{id}', { path: { id } });\n };\n\n // --- Organization invitations ---\n\n const getOrganizationInvitations = async (signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/current-user/organizations-invitations',\n {},\n { signal },\n );\n return data;\n };\n\n const getOrganizationInvitation = async (id: number, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/current-user/organizations-invitations/{id}',\n { path: { id } },\n { signal },\n );\n return data;\n };\n\n const acceptOrganizationInvitation = async (id: number) => {\n await client.put('/manage/current-user/organizations-invitations/{id}', { path: { id } });\n };\n\n const rejectOrganizationInvitation = async (id: number) => {\n await client.delete('/manage/current-user/organizations-invitations/{id}', { path: { id } });\n };\n\n // --- Project invitations ---\n\n const getProjectInvitations = async (signal?: AbortSignal) => {\n const { data } = await client.get('/manage/current-user/projects-invitations', {}, { signal });\n return data;\n };\n\n const getProjectInvitation = async (id: number, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/current-user/projects-invitations/{id}',\n { path: { id } },\n { signal },\n );\n return data;\n };\n\n const acceptProjectInvitation = async (id: number) => {\n await client.put('/manage/current-user/projects-invitations/{id}', { path: { id } });\n };\n\n const rejectProjectInvitation = async (id: number) => {\n await client.delete('/manage/current-user/projects-invitations/{id}', { path: { id } });\n };\n\n // --- Project join requests ---\n\n const getProjectJoinRequests = async (signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/current-user/projects-join-requests',\n {},\n { signal },\n );\n return data;\n };\n\n const deleteProjectJoinRequest = async (id: number) => {\n await client.delete('/manage/current-user/projects-join-requests/{id}', { path: { id } });\n };\n\n return {\n getMaintainerInvitations,\n getMaintainerInvitation,\n acceptMaintainerInvitation,\n rejectMaintainerInvitation,\n getOrganizationInvitations,\n getOrganizationInvitation,\n acceptOrganizationInvitation,\n rejectOrganizationInvitation,\n getProjectInvitations,\n getProjectInvitation,\n acceptProjectInvitation,\n rejectProjectInvitation,\n getProjectJoinRequests,\n deleteProjectJoinRequest,\n };\n};\n","import type { ManagementOpenApiFetchClient } from '../managementClient';\n\nimport type { DeletedProject, DeletedProjectPurgeResult, DeletedProjectsListQuery } from './types';\n\nexport const createDeletedProjects = (client: ManagementOpenApiFetchClient) => {\n const getDeletedProjects = async (\n query?: DeletedProjectsListQuery,\n signal?: AbortSignal,\n ): Promise<DeletedProject[]> => {\n const { data } = await client.get(\n '/manage/deleted-projects',\n {\n query: {\n limit: query?.limit ?? undefined,\n offset: query?.offset ?? undefined,\n organizationId: query?.organizationId ?? undefined,\n name: query?.name ?? undefined,\n },\n },\n { signal },\n );\n return data;\n };\n\n const getDeletedProject = async (\n projectId: number,\n signal?: AbortSignal,\n ): Promise<DeletedProject> => {\n const { data } = await client.get(\n '/manage/deleted-projects/{projectId}',\n { path: { projectId } },\n { signal },\n );\n return data;\n };\n\n /** Restore a deleted project (cancels deletion). Maps to DELETE /manage/deleted-projects/{projectId}\n * — note: the RFC says POST but the live schema uses DELETE. */\n const restoreDeletedProject = async (projectId: number) => {\n await client.delete('/manage/deleted-projects/{projectId}', { path: { projectId } });\n };\n\n /** Permanently purge a deleted project (irreversible). Pass `ignoreBackendErrors: true` to purge\n * even if backend-storage cleanup fails. Returns the enqueued purge command. */\n const purgeDeletedProject = async (\n projectId: number,\n ignoreBackendErrors = false,\n ): Promise<DeletedProjectPurgeResult> => {\n const { data } = await client.post('/manage/deleted-projects/{projectId}/purge', {\n path: { projectId },\n body: { ignoreBackendErrors },\n });\n return data;\n };\n\n return {\n getDeletedProjects,\n getDeletedProject,\n restoreDeletedProject,\n purgeDeletedProject,\n };\n};\n","import type { GenericFetchClient } from '../managementClient';\n\nimport type { Feature, FeatureAdmin, FeatureProject, GetAllFeaturesQuery } from './types';\n\nexport const createFeatures = (client: GenericFetchClient) => {\n const getAllFeatures = async (query: GetAllFeaturesQuery, signal?: AbortSignal) => {\n const { data } = await client.get<Feature[], void, GetAllFeaturesQuery>(\n '/manage/features',\n { query },\n { signal },\n );\n return data;\n };\n\n const getFeature = async (featureId: number, signal?: AbortSignal) => {\n const { data } = await client.get<Feature>(\n '/manage/features/{featureId}',\n { path: { featureId } },\n { signal },\n );\n return data;\n };\n\n const getFeatureProjects = async (featureId: number, signal?: AbortSignal) => {\n const { data } = await client.get<FeatureProject[]>(\n '/manage/features/{featureId}/projects',\n { path: { featureId } },\n { signal },\n );\n return data;\n };\n\n const getFeatureAdmins = async (featureId: number, signal?: AbortSignal) => {\n const { data } = await client.get<FeatureAdmin[]>(\n '/manage/features/{featureId}/admins',\n { path: { featureId } },\n { signal },\n );\n return data;\n };\n\n return {\n getAllFeatures,\n getFeature,\n getFeatureProjects,\n getFeatureAdmins,\n };\n};\n","import type { ManagementOpenApiFetchClient } from '../managementClient';\n\nimport type { FileStorageAbs, FileStorageGcs, FileStorageS3 } from './types';\n\nexport const createFileStorage = (client: ManagementOpenApiFetchClient) => {\n // Return the exported (overlay) types so consumers get the intended public shape — notably\n // `FileStorageGcs`, whose `gcsCredentials` the generated schema under-models as `Record<string,\n // never>`. The generated responses are assignable to the overlays (only `gcsCredentials` widens),\n // so a return annotation suffices — no cast needed.\n const getFileStoragesS3 = async (signal?: AbortSignal): Promise<FileStorageS3[]> => {\n const { data } = await client.get('/manage/file-storage-s3', {}, { signal });\n return data;\n };\n\n const getFileStoragesAbs = async (signal?: AbortSignal): Promise<FileStorageAbs[]> => {\n const { data } = await client.get('/manage/file-storage-abs', {}, { signal });\n return data;\n };\n\n const getFileStoragesGcs = async (signal?: AbortSignal): Promise<FileStorageGcs[]> => {\n const { data } = await client.get('/manage/file-storage-gcs', {}, { signal });\n return data;\n };\n\n return {\n getFileStoragesS3,\n getFileStoragesAbs,\n getFileStoragesGcs,\n };\n};\n","import type { ManagementOpenApiFetchClient } from '../managementClient';\n\nimport type {\n AddMaintainerUserBody,\n CreateMaintainerBody,\n CreateMaintainerInvitationBody,\n CreateMaintainerOrganizationBody,\n Maintainer,\n MaintainerDetail,\n MaintainerInvitationDetail,\n MaintainerUser,\n MetadataItem,\n SetMaintainerMetadataBody,\n UpdateMaintainerBody,\n} from './types';\n\nexport const createMaintainers = (client: ManagementOpenApiFetchClient) => {\n // --- Maintainer CRUD ---\n\n const getMaintainers = async (signal?: AbortSignal) => {\n const { data } = await client.get('/manage/maintainers', {}, { signal });\n // OpenAPI declares response as `Record<string, never>[]`; backend returns MaintainerResponse[].\n return data as unknown as Maintainer[];\n };\n\n const getMaintainer = async (maintainerId: number, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/maintainers/{id}',\n { path: { id: maintainerId } },\n { signal },\n );\n // OpenAPI under-models the detail's `organizations`; backend returns full organization objects.\n return data as unknown as MaintainerDetail;\n };\n\n const createMaintainer = async (body: CreateMaintainerBody) => {\n const { data } = await client.post('/manage/maintainers', { body });\n return data;\n };\n\n const updateMaintainer = async ({\n maintainerId,\n ...body\n }: { maintainerId: number } & UpdateMaintainerBody) => {\n const { data } = await client.patch('/manage/maintainers/{id}', {\n path: { id: maintainerId },\n body,\n });\n return data;\n };\n\n const deleteMaintainer = async (maintainerId: number) => {\n await client.delete('/manage/maintainers/{id}', { path: { id: maintainerId } });\n };\n\n // --- Members (users/admins) ---\n\n const getMaintainerUsers = async (maintainerId: number, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/maintainers/{id}/users',\n { path: { id: maintainerId } },\n { signal },\n );\n // OpenAPI declares response as `Record<string, never>[]`; backend returns user objects.\n return data as unknown as MaintainerUser[];\n };\n\n const addMaintainerUser = async ({\n maintainerId,\n ...body\n }: { maintainerId: number } & AddMaintainerUserBody) => {\n const { data } = await client.post('/manage/maintainers/{id}/users', {\n path: { id: maintainerId },\n body,\n });\n return data;\n };\n\n const removeMaintainerUser = async ({\n maintainerId,\n adminId,\n }: {\n maintainerId: number;\n adminId: number;\n }) => {\n await client.delete('/manage/maintainers/{id}/users/{adminId}', {\n path: { id: maintainerId, adminId },\n });\n };\n\n // --- Invitations ---\n\n const getMaintainerInvitations = async (maintainerId: number, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/maintainers/{id}/invitations',\n { path: { id: maintainerId } },\n { signal },\n );\n // OpenAPI declares response as `Record<string, never>[]`; backend returns invitation objects.\n return data as unknown as MaintainerInvitationDetail[];\n };\n\n const getMaintainerInvitation = async (\n { maintainerId, invitationId }: { maintainerId: number; invitationId: number },\n signal?: AbortSignal,\n ) => {\n const { data } = await client.get(\n '/manage/maintainers/{id}/invitations/{invitationId}',\n { path: { id: maintainerId, invitationId } },\n { signal },\n );\n return data;\n };\n\n const createMaintainerInvitation = async ({\n maintainerId,\n ...body\n }: { maintainerId: number } & CreateMaintainerInvitationBody) => {\n const { data } = await client.post('/manage/maintainers/{id}/invitations', {\n path: { id: maintainerId },\n body,\n });\n return data;\n };\n\n const deleteMaintainerInvitation = async ({\n maintainerId,\n invitationId,\n }: {\n maintainerId: number;\n invitationId: number;\n }) => {\n await client.delete('/manage/maintainers/{id}/invitations/{invitationId}', {\n path: { id: maintainerId, invitationId },\n });\n };\n\n // --- Organizations under maintainer ---\n\n const createMaintainerOrganization = async ({\n maintainerId,\n ...body\n }: { maintainerId: number } & CreateMaintainerOrganizationBody) => {\n const { data } = await client.post('/manage/maintainers/{id}/organizations', {\n path: { id: maintainerId },\n body,\n });\n return data;\n };\n\n // --- Metadata ---\n\n const getMaintainerMetadata = async (maintainerId: number, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/maintainers/{id}/metadata',\n { path: { id: maintainerId } },\n { signal },\n );\n // OpenAPI declares response as `Record<string, never>[]`; backend returns MetadataItem[].\n return data as unknown as MetadataItem[];\n };\n\n const setMaintainerMetadata = async ({\n maintainerId,\n ...body\n }: { maintainerId: number } & SetMaintainerMetadataBody) => {\n const { data } = await client.post('/manage/maintainers/{id}/metadata', {\n path: { id: maintainerId },\n body,\n });\n // OpenAPI declares response as `Record<string, never>[]`; backend returns MetadataItem[].\n return data as unknown as MetadataItem[];\n };\n\n const deleteMaintainerMetadata = async ({\n maintainerId,\n metadataId,\n }: {\n maintainerId: number;\n metadataId: number;\n }) => {\n await client.delete('/manage/maintainers/{id}/metadata/{metadataId}', {\n path: { id: maintainerId, metadataId },\n });\n };\n\n return {\n getMaintainers,\n getMaintainer,\n createMaintainer,\n updateMaintainer,\n deleteMaintainer,\n getMaintainerUsers,\n addMaintainerUser,\n removeMaintainerUser,\n getMaintainerInvitations,\n getMaintainerInvitation,\n createMaintainerInvitation,\n deleteMaintainerInvitation,\n createMaintainerOrganization,\n getMaintainerMetadata,\n setMaintainerMetadata,\n deleteMaintainerMetadata,\n };\n};\n","import type { MetadataItem } from '../maintainers/types';\nimport type { ManagementOpenApiFetchClient } from '../managementClient';\nimport type { Project } from '../projects/types';\n\nimport type {\n AddOrganizationUserBody,\n AdminUser,\n CreateOrganizationInvitationBody,\n CreateOrganizationProjectBody,\n OrganizationDetail,\n OrganizationInvitationDetail,\n SetOrganizationMetadataBody,\n UpdateOrganizationBody,\n} from './types';\n\nexport const createOrganizations = (client: ManagementOpenApiFetchClient) => {\n // --- Organization CRUD ---\n\n const getOrganizations = async (signal?: AbortSignal) => {\n const { data } = await client.get('/manage/organizations', {}, { signal });\n return data;\n };\n\n const getOrganization = async (organizationId: number, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/organizations/{id}',\n { path: { id: organizationId } },\n { signal },\n );\n // OpenAPI declares projects/maintainer as `Record<string, never>`; backend returns full shapes.\n return data as unknown as OrganizationDetail;\n };\n\n const updateOrganization = async ({\n organizationId,\n ...body\n }: { organizationId: number } & UpdateOrganizationBody) => {\n const { data } = await client.patch('/manage/organizations/{id}', {\n path: { id: organizationId },\n body,\n });\n return data;\n };\n\n const deleteOrganization = async (organizationId: number) => {\n await client.delete('/manage/organizations/{id}', { path: { id: organizationId } });\n };\n\n const forceMfa = async (organizationId: number) => {\n const { data } = await client.patch('/manage/organizations/{id}/force-mfa', {\n path: { id: organizationId },\n });\n return data;\n };\n\n const joinOrganization = async (organizationId: number) => {\n await client.post('/manage/organizations/{id}/join-organization', {\n path: { id: organizationId },\n });\n };\n\n // --- Members (users/admins) ---\n\n const getOrganizationUsers = async (organizationId: number, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/organizations/{id}/users',\n { path: { id: organizationId } },\n { signal },\n );\n // OpenAPI declares response as `Record<string, never>[]`; backend returns user objects.\n return data as unknown as AdminUser[];\n };\n\n const addOrganizationUser = async ({\n organizationId,\n ...body\n }: { organizationId: number } & AddOrganizationUserBody) => {\n const { data } = await client.post('/manage/organizations/{id}/users', {\n path: { id: organizationId },\n body,\n });\n return data;\n };\n\n const removeOrganizationUser = async ({\n organizationId,\n userId,\n }: {\n organizationId: number;\n userId: number;\n }) => {\n await client.delete('/manage/organizations/{id}/users/{userId}', {\n path: { id: organizationId, userId },\n });\n };\n\n const getOrganizationProjectsUsers = async (organizationId: number, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/organizations/{id}/projects-users',\n { path: { id: organizationId } },\n { signal },\n );\n // OpenAPI declares response as `Record<string, never>[]`; backend returns user objects.\n return data as unknown as AdminUser[];\n };\n\n // --- Invitations ---\n\n const getOrganizationInvitations = async (organizationId: number, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/organizations/{id}/invitations',\n { path: { id: organizationId } },\n { signal },\n );\n // OpenAPI declares response as `Record<string, never>[]`; backend returns invitation objects.\n return data as unknown as OrganizationInvitationDetail[];\n };\n\n const getOrganizationInvitation = async (\n { organizationId, invitationId }: { organizationId: number; invitationId: number },\n signal?: AbortSignal,\n ) => {\n const { data } = await client.get(\n '/manage/organizations/{id}/invitations/{invitationId}',\n { path: { id: organizationId, invitationId } },\n { signal },\n );\n return data;\n };\n\n const createOrganizationInvitation = async ({\n organizationId,\n ...body\n }: { organizationId: number } & CreateOrganizationInvitationBody) => {\n const { data } = await client.post('/manage/organizations/{id}/invitations', {\n path: { id: organizationId },\n body,\n });\n return data;\n };\n\n const deleteOrganizationInvitation = async ({\n organizationId,\n invitationId,\n }: {\n organizationId: number;\n invitationId: number;\n }) => {\n await client.delete('/manage/organizations/{id}/invitations/{invitationId}', {\n path: { id: organizationId, invitationId },\n });\n };\n\n // --- Projects under organization ---\n\n const getOrganizationProjects = async (organizationId: number, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/organizations/{id}/projects',\n { path: { id: organizationId } },\n { signal },\n );\n // OpenAPI declares response as `Record<string, never>[]`; backend returns project objects.\n return data as unknown as Project[];\n };\n\n const createOrganizationProject = async ({\n organizationId,\n ...body\n }: { organizationId: number } & CreateOrganizationProjectBody) => {\n const { data } = await client.post('/manage/organizations/{id}/projects', {\n path: { id: organizationId },\n body,\n });\n return data;\n };\n\n // --- Metadata ---\n\n const getOrganizationMetadata = async (organizationId: number, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/manage/organizations/{id}/metadata',\n { path: { id: organizationId } },\n { signal },\n );\n // OpenAPI declares response as `Record<string, never>[]`; backend returns metadata items.\n return data as unknown as MetadataItem[];\n };\n\n const setOrganizationMetadata = async ({\n organizationId,\n ...body\n }: { organizationId: number } & SetOrganizationMetadataBody) => {\n const { data } = await client.post('/manage/organizations/{id}/metadata', {\n path: { id: organizationId },\n body,\n });\n // OpenAPI declares response as `Record<string, never>[]`; backend returns metadata items.\n return data as unknown as MetadataItem[];\n };\n\n const deleteOrganizationMetadata = async ({\n organizationId,\n metadataId,\n }: {\n organizationId: number;\n metadataId: number;\n }) => {\n await client.delete('/manage/organizations/{id}/metadata/{metadataId}', {\n path: { id: organizationId, metadataId },\n });\n };\n\n return {\n getOrganizations,\n getOrganization,\n updateOrganization,\n deleteOrganization,\n forceMfa,\n joinOrganization,\n getOrganizationUsers,\n addOrganizationUser,\n removeOrganizationUser,\n getOrganizationProjectsUsers,\n getOrganizationInvitations,\n getOrganizationInvitation,\n createOrganizationInvitation,\n deleteOrganizationInvitation,\n getOrganizationProjects,\n createOrganizationProject,\n getOrganizationMetadata,\n setOrganizationMetadata,\n deleteOrganizationMetadata,\n };\n};\n","import type { GenericFetchClient } from '../managementClient';\nimport type { User } from '../types';\n\nimport type {\n AddProjectUserBody,\n AddProjectUserPath,\n CreateProjectFeatureBody,\n CreateProjectFeaturePath,\n CreateProjectInvitationBody,\n CreateProjectInvitationPath,\n DeleteProjectInvitationPath,\n GetProjectMetadataPath,\n GetProjectPath,\n GetProjectReviewersPath,\n ListProjectInvitationsPath,\n ListProjectUsersPath,\n MoveProjectBody,\n Project,\n ProjectInvitationDetail,\n ProjectMetadataItem,\n ProjectTemplate,\n RemoveProjectFeaturePath,\n RemoveProjectUserPath,\n Reviewer,\n SetProjectDisabledBody,\n SetProjectLimitsBody,\n SetProjectMetadataBody,\n SetProjectMetadataPath,\n SetProjectReviewersBody,\n SetProjectReviewersPath,\n UpdateProjectBody,\n} from './types';\n\nexport const createProjects = (client: GenericFetchClient) => {\n const getProject = async (projectId: GetProjectPath['projectId'], signal?: AbortSignal) => {\n const { data } = await client.get<Project, GetProjectPath>(\n '/manage/projects/{projectId}',\n { path: { projectId } },\n { signal },\n );\n return data;\n };\n\n const getProjectTemplates = async (signal?: AbortSignal) => {\n const { data } = await client.get<ProjectTemplate[]>(\n '/manage/project-templates',\n {},\n { signal },\n );\n return data;\n };\n\n const addProjectFeature = async ({\n projectId,\n feature,\n }: CreateProjectFeaturePath & CreateProjectFeatureBody) => {\n const { data } = await client.post<\n Project,\n CreateProjectFeaturePath,\n void,\n CreateProjectFeatureBody\n >('/manage/projects/{projectId}/features', { path: { projectId }, body: { feature } });\n return data;\n };\n\n const removeProjectFeature = async (path: RemoveProjectFeaturePath) => {\n const { data } = await client.delete<null, RemoveProjectFeaturePath>(\n '/manage/projects/{projectId}/features/{feature}',\n { path },\n );\n return data;\n };\n\n const changeProjectUserRole = async ({\n projectId,\n userId,\n role,\n }: {\n projectId: number;\n userId: number;\n role: User['role'];\n }) => {\n const { data } = await client.patch<\n User,\n { projectId: number; userId: number },\n never,\n { role: User['role'] }\n >('/manage/projects/{projectId}/users/{userId}', {\n path: { projectId, userId },\n body: { role },\n });\n\n return data;\n };\n\n const getProjectUsers = async (\n projectId: ListProjectUsersPath['projectId'],\n signal?: AbortSignal,\n ) => {\n const { data } = await client.get<User[], ListProjectUsersPath>(\n '/manage/projects/{projectId}/users',\n { path: { projectId } },\n { signal },\n );\n return data;\n };\n\n const getProjectInvitations = async (\n projectId: ListProjectInvitationsPath['projectId'],\n signal?: AbortSignal,\n ) => {\n // OpenAPI declares the list response as `Record<string, never>[]`; backend returns\n // ProjectInvitationDetailResponse objects.\n const { data } = await client.get<ProjectInvitationDetail[], ListProjectInvitationsPath>(\n '/manage/projects/{projectId}/invitations',\n { path: { projectId } },\n { signal },\n );\n return data;\n };\n\n const createProjectInvitation = async ({\n projectId,\n ...body\n }: CreateProjectInvitationPath & CreateProjectInvitationBody) => {\n const { data } = await client.post<\n ProjectInvitationDetail,\n CreateProjectInvitationPath,\n never,\n CreateProjectInvitationBody\n >('/manage/projects/{projectId}/invitations', {\n path: { projectId },\n body,\n });\n return data;\n };\n\n const deleteProjectInvitation = async ({\n projectId,\n invitationId,\n }: DeleteProjectInvitationPath) => {\n const { data } = await client.delete<null, DeleteProjectInvitationPath>(\n '/manage/projects/{projectId}/invitations/{invitationId}',\n { path: { projectId, invitationId } },\n );\n return data;\n };\n\n const addProjectUser = async ({\n projectId,\n ...body\n }: AddProjectUserPath & AddProjectUserBody) => {\n const { data } = await client.post<User, AddProjectUserPath, never, AddProjectUserBody>(\n '/manage/projects/{projectId}/users',\n {\n path: { projectId },\n body,\n },\n );\n return data;\n };\n\n const removeProjectUser = async ({ projectId, idOrEmail }: RemoveProjectUserPath) => {\n const { data } = await client.delete<null, RemoveProjectUserPath>(\n '/manage/projects/{projectId}/users/{idOrEmail}',\n { path: { projectId, idOrEmail } },\n );\n return data;\n };\n\n const getProjectMetadata = async (\n projectId: GetProjectMetadataPath['projectId'],\n signal?: AbortSignal,\n ) => {\n const { data } = await client.get<ProjectMetadataItem[], GetProjectMetadataPath>(\n '/manage/projects/{projectId}/metadata',\n { path: { projectId } },\n { signal },\n );\n return data;\n };\n\n const setProjectMetadata = async ({\n projectId,\n provider,\n metadata,\n }: SetProjectMetadataPath & SetProjectMetadataBody) => {\n const { data } = await client.post<\n ProjectMetadataItem[],\n SetProjectMetadataPath,\n void,\n SetProjectMetadataBody\n >('/manage/projects/{projectId}/metadata', {\n path: { projectId },\n body: { provider, metadata },\n });\n return data;\n };\n\n const getProjectReviewers = async (\n projectId: GetProjectReviewersPath['projectId'],\n signal?: AbortSignal,\n ) => {\n const { data } = await client.get<Reviewer[], GetProjectReviewersPath>(\n '/manage/projects/{projectId}/reviewers',\n { path: { projectId } },\n { signal },\n );\n return data;\n };\n\n const setProjectReviewers = async ({\n projectId,\n adminIds,\n }: SetProjectReviewersPath & SetProjectReviewersBody) => {\n const { data } = await client.put<\n void,\n SetProjectReviewersPath,\n never,\n SetProjectReviewersBody\n >('/manage/projects/{projectId}/reviewers', {\n path: { projectId },\n body: { adminIds },\n });\n return data;\n };\n\n // --- M6 write operations ---\n\n const updateProject = async ({\n projectId,\n ...body\n }: { projectId: number } & UpdateProjectBody) => {\n const { data } = await client.put<Project, { projectId: number }, never, UpdateProjectBody>(\n '/manage/projects/{projectId}',\n { path: { projectId }, body },\n );\n return data;\n };\n\n const deleteProject = async (projectId: number) => {\n const { data } = await client.delete<null, { projectId: number }>(\n '/manage/projects/{projectId}',\n { path: { projectId } },\n );\n return data;\n };\n\n const moveProject = async ({\n projectId,\n organizationId,\n }: { projectId: number } & MoveProjectBody) => {\n const { data } = await client.post<Project, { projectId: number }, never, MoveProjectBody>(\n '/manage/projects/{projectId}/organizations',\n { path: { projectId }, body: { organizationId } },\n );\n return data;\n };\n\n const setProjectDisabled = async ({\n projectId,\n ...body\n }: { projectId: number } & SetProjectDisabledBody) => {\n const { data } = await client.post<\n Project,\n { projectId: number },\n never,\n SetProjectDisabledBody\n >('/manage/projects/{projectId}/disabled', { path: { projectId }, body });\n return data;\n };\n\n const setProjectLimits = async ({\n projectId,\n ...body\n }: { projectId: number } & SetProjectLimitsBody) => {\n const { data } = await client.post<Project, { projectId: number }, never, SetProjectLimitsBody>(\n '/manage/projects/{projectId}/limits',\n { path: { projectId }, body },\n );\n return data;\n };\n\n return {\n getProject,\n getProjectTemplates,\n addProjectFeature,\n removeProjectFeature,\n changeProjectUserRole,\n getProjectUsers,\n getProjectInvitations,\n createProjectInvitation,\n deleteProjectInvitation,\n addProjectUser,\n removeProjectUser,\n getProjectMetadata,\n setProjectMetadata,\n getProjectReviewers,\n setProjectReviewers,\n updateProject,\n deleteProject,\n moveProject,\n setProjectDisabled,\n setProjectLimits,\n };\n};\n","import type { ManagementOpenApiFetchClient } from '../managementClient';\n\nimport type {\n GetStorageBackendProjectsQuery,\n StorageBackend,\n StorageBackendMaintainer,\n StorageBackendProject,\n} from './types';\n\nexport const createStorageBackends = (client: ManagementOpenApiFetchClient) => {\n const getStorageBackend = async (id: number, signal?: AbortSignal): Promise<StorageBackend> => {\n const { data } = await client.get('/manage/storage-backend/{id}', { path: { id } }, { signal });\n return data;\n };\n\n const getStorageBackends = async (signal?: AbortSignal): Promise<StorageBackend[]> => {\n const { data } = await client.get('/manage/storage-backend', {}, { signal });\n return data;\n };\n\n /** Projects assigned to this backend, paginated via `limit`/`offset`. */\n const getStorageBackendProjects = async (\n id: number,\n query?: GetStorageBackendProjectsQuery,\n signal?: AbortSignal,\n ): Promise<StorageBackendProject[]> => {\n const { data } = await client.get(\n '/manage/storage-backend/{id}/projects',\n { path: { id }, query: { limit: query?.limit, offset: query?.offset } },\n { signal },\n );\n return data;\n };\n\n /** Maintainers assigned to this backend — small, unpaginated list. */\n const getStorageBackendMaintainers = async (\n id: number,\n signal?: AbortSignal,\n ): Promise<StorageBackendMaintainer[]> => {\n const { data } = await client.get(\n '/manage/storage-backend/{id}/maintainers',\n { path: { id } },\n { signal },\n );\n return data;\n };\n\n return {\n getStorageBackend,\n getStorageBackends,\n getStorageBackendProjects,\n getStorageBackendMaintainers,\n };\n};\n","import type { GenericFetchClient, ManagementOpenApiFetchClient } from '../managementClient';\n\nimport type {\n AddUserFeatureBody,\n AddUserFeaturePath,\n GetUsersQuery,\n RemoveUserFeaturePath,\n User,\n UserDetail,\n UserListItem,\n UserMaintainerMembership,\n UserOrganizationMembership,\n UserProjectMembership,\n} from './types';\n\nexport const createUsers = (\n client: GenericFetchClient,\n openApiClient: ManagementOpenApiFetchClient,\n) => {\n const addUserAdminFeature = async (\n { feature, userIdOrMail }: AddUserFeatureBody & AddUserFeaturePath,\n signal?: AbortSignal,\n ) => {\n const { data } = await client.post<User, AddUserFeaturePath, void, AddUserFeatureBody>(\n '/manage/users/{userIdOrMail}/features',\n { path: { userIdOrMail: encodeURIComponent(userIdOrMail) }, body: { feature } },\n { signal },\n );\n return data;\n };\n\n const removeUserAdminFeature = async (\n { userIdOrMail, feature }: RemoveUserFeaturePath,\n signal?: AbortSignal,\n ) => {\n const { data } = await client.delete<User, RemoveUserFeaturePath>(\n '/manage/users/{userIdOrMail}/features/{feature}',\n { path: { userIdOrMail: encodeURIComponent(userIdOrMail), feature } },\n { signal },\n );\n return data;\n };\n\n /** Paginated list of all users, filterable via `q` (name/email substring). */\n const getUsers = async (query?: GetUsersQuery, signal?: AbortSignal): Promise<UserListItem[]> => {\n const { data } = await openApiClient.get(\n '/manage/users',\n { query: { q: query?.q, limit: query?.limit, offset: query?.offset } },\n { signal },\n );\n return data;\n };\n\n const getUser = async (id: number, signal?: AbortSignal): Promise<UserDetail> => {\n const { data } = await openApiClient.get(\n '/manage/users/{idOrEmail}',\n { path: { idOrEmail: String(id) } },\n { signal },\n );\n return data;\n };\n\n const getUserOrganizations = async (\n id: number,\n signal?: AbortSignal,\n ): Promise<UserOrganizationMembership[]> => {\n const { data } = await openApiClient.get(\n '/manage/users/{id}/organizations',\n { path: { id } },\n { signal },\n );\n return data;\n };\n\n const getUserProjects = async (\n id: number,\n signal?: AbortSignal,\n ): Promise<UserProjectMembership[]> => {\n const { data } = await openApiClient.get(\n '/manage/users/{id}/projects',\n { path: { id } },\n { signal },\n );\n return data;\n };\n\n const getUserMaintainers = async (\n id: number,\n signal?: AbortSignal,\n ): Promise<UserMaintainerMembership[]> => {\n const { data } = await openApiClient.get(\n '/manage/users/{id}/maintainers',\n { path: { id } },\n { signal },\n );\n return data;\n };\n\n /** Requires the target user to have MFA enabled (422 otherwise). Superadmin-only. */\n const grantSuperAdmin = async (id: number, signal?: AbortSignal): Promise<UserDetail> => {\n const { data } = await openApiClient.post(\n '/manage/users/{id}/super-admin',\n { path: { id } },\n { signal },\n );\n return data;\n };\n\n const removeSuperAdmin = async (id: number, signal?: AbortSignal): Promise<UserDetail> => {\n const { data } = await openApiClient.delete(\n '/manage/users/{idOrEmail}/super-admin',\n { path: { idOrEmail: String(id) } },\n { signal },\n );\n return data;\n };\n\n const disableUserMfa = async (id: number, signal?: AbortSignal): Promise<void> => {\n await openApiClient.delete(\n '/manage/users/{idOrEmail}/mfa',\n { path: { idOrEmail: String(id) } },\n { signal },\n );\n };\n\n const deleteUser = async (id: number, signal?: AbortSignal): Promise<void> => {\n await openApiClient.delete(\n '/manage/users/{idOrEmail}',\n { path: { idOrEmail: String(id) } },\n { signal },\n );\n };\n\n return {\n addUserAdminFeature,\n removeUserAdminFeature,\n getUsers,\n getUser,\n getUserOrganizations,\n getUserProjects,\n getUserMaintainers,\n grantSuperAdmin,\n removeSuperAdmin,\n disableUserMfa,\n deleteUser,\n };\n};\n","import {\n createGenericFetchClient,\n createOpenapiFetchClient,\n HttpHeader,\n type MiddlewareFn,\n} from '../../fetchClient';\nimport { KeboolaHttpHeader } from '../../internal';\nimport type { ClientInitOptions } from '../types';\n\nimport type { paths } from './__generated__/schema';\nimport { createAuthMiddleware } from './authMiddleware';\nimport { createCurrentUser } from './currentUser';\nimport { createDeletedProjects } from './deletedProjects';\nimport { createFeatures } from './features';\nimport { createFileStorage } from './fileStorage';\nimport { createMaintainers } from './maintainers';\nimport { createOrganizations } from './organizations';\nimport { createProjects } from './projects';\nimport { createStorageBackends } from './storageBackends';\nimport { createUsers } from './users';\n\nexport type GenericFetchClient = ReturnType<typeof createGenericFetchClient>;\nexport type ManagementOpenApiFetchClient = ReturnType<typeof createOpenapiFetchClient<paths>>;\n\nexport type AuthStrategy =\n | { type: 'management-token'; token?: string }\n | { type: 'bearer'; token: string };\n\n// Only invoked on the raw (no-auth-middleware) path — otherwise the auth middleware\n// owns the Manage API token header.\nconst createAuthHeaders = (auth: AuthStrategy): Record<string, string> => {\n if (auth.type === 'management-token')\n return auth.token ? { [KeboolaHttpHeader.MANAGEMENT_API_TOKEN]: auth.token } : {};\n\n return { [HttpHeader.AUTHORIZATION]: `Bearer ${auth.token}` };\n};\n\ntype ManagementClientInitOptions = Omit<ClientInitOptions, 'auth' | 'middlewares'> & {\n auth: AuthStrategy;\n middlewares?: MiddlewareFn[];\n withAuthMiddleware?: boolean;\n};\n\nexport const createManagementClient = ({\n baseUrl,\n middlewares = [],\n auth,\n withAuthMiddleware = true,\n}: ManagementClientInitOptions) => {\n // The auth middleware keeps a long-lived management session alive: it verifies the\n // token and, when it's invalid/expired, mints/refreshes a session token. That self-healing\n // is wrong for a plain \"is this token valid?\" check (it would recurse when used to verify,\n // and mint a session instead of reporting invalid). Pass `withAuthMiddleware: false` to get\n // a raw client that just attaches the token — used for token verification.\n const allMiddlewares =\n withAuthMiddleware && auth.type === 'management-token'\n ? [\n ...middlewares,\n createAuthMiddleware({ baseUrl, accessToken: auth.token }), // 👈 order of middlewares always matters\n ]\n : middlewares;\n\n const headers = withAuthMiddleware ? undefined : createAuthHeaders(auth);\n\n const client = createGenericFetchClient({\n baseUrl,\n middlewares: allMiddlewares,\n headers,\n });\n\n const openApiClient = createOpenapiFetchClient<paths>({\n baseUrl,\n middlewares: allMiddlewares,\n headers,\n });\n\n const verifyToken = async (signal?: AbortSignal) => {\n const { data } = await openApiClient.get('/manage/tokens/verify', {}, { signal });\n return data;\n };\n\n return {\n currentUser: createCurrentUser(openApiClient),\n deletedProjects: createDeletedProjects(openApiClient),\n maintainers: createMaintainers(openApiClient),\n organizations: createOrganizations(openApiClient),\n features: createFeatures(client),\n fileStorage: createFileStorage(openApiClient),\n projects: createProjects(client),\n storageBackends: createStorageBackends(openApiClient),\n users: createUsers(client, openApiClient),\n verifyToken,\n };\n};\n"]}
@@ -0,0 +1,6 @@
1
+ // src/utils/createAbortError.ts
2
+ var createAbortError = (reason) => new DOMException(reason, "AbortError");
3
+
4
+ export { createAbortError };
5
+ //# sourceMappingURL=chunk-22E6IGXR.js.map
6
+ //# sourceMappingURL=chunk-22E6IGXR.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/utils/createAbortError.ts"],"names":[],"mappings":";AAAO,IAAM,mBAAmB,CAAC,MAAA,KAAoB,IAAI,YAAA,CAAa,QAAQ,YAAY","file":"chunk-22E6IGXR.js","sourcesContent":["export const createAbortError = (reason?: string) => new DOMException(reason, 'AbortError');\n"]}
@@ -1,6 +1,6 @@
1
1
  import { concurrent } from './chunk-SJZ66FD5.js';
2
- import { createAuthHeaders } from './chunk-6JXSO3AR.js';
3
- import { createGenericFetchClient, createOpenapiFetchClient, KeboolaHttpHeader, isApiError } from './chunk-RK2VGHJE.js';
2
+ import { createAuthHeaders } from './chunk-L4R66Q6S.js';
3
+ import { createGenericFetchClient, createOpenapiFetchClient, KeboolaHttpHeader, isApiError } from './chunk-3B3GOGAL.js';
4
4
 
5
5
  // src/errors/ServiceUnavailableError.ts
6
6
  var ServiceUnavailableError = class _ServiceUnavailableError extends Error {
@@ -1474,5 +1474,5 @@ var createStorageClient = ({
1474
1474
  };
1475
1475
 
1476
1476
  export { ServiceUnavailableError, createStorageClient, series };
1477
- //# sourceMappingURL=chunk-NV3P6XBU.js.map
1478
- //# sourceMappingURL=chunk-NV3P6XBU.js.map
1477
+ //# sourceMappingURL=chunk-33NQB34X.js.map
1478
+ //# sourceMappingURL=chunk-33NQB34X.js.map