@keboola/api-client 23.0.0 → 24.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.
- package/API-SURFACE.md +47 -1
- package/README.md +43 -2
- package/dist/{ManagementClientAuthError-CJu_hpGi.d.cts → ManagementClientAuthError-BuqHAOBO.d.cts} +1 -1
- package/dist/{ManagementClientAuthError-B3PZRWBU.d.ts → ManagementClientAuthError-C7q1Jd9I.d.ts} +1 -1
- package/dist/ai/index.cjs +4 -4
- package/dist/ai/index.d.cts +3 -3
- package/dist/ai/index.d.ts +3 -3
- package/dist/ai/index.js +3 -3
- package/dist/ai/types.d.cts +2 -2
- package/dist/ai/types.d.ts +2 -2
- package/dist/assets/index.cjs +11 -5
- package/dist/assets/index.cjs.map +1 -1
- package/dist/assets/index.d.cts +17 -3
- package/dist/assets/index.d.ts +17 -3
- package/dist/assets/index.js +10 -4
- package/dist/assets/index.js.map +1 -1
- package/dist/assets/schema.cjs +16 -0
- package/dist/assets/schema.cjs.map +1 -0
- package/dist/assets/schema.d.cts +28 -0
- package/dist/assets/schema.d.ts +28 -0
- package/dist/assets/schema.js +3 -0
- package/dist/assets/schema.js.map +1 -0
- package/dist/auth/index.cjs +13 -13
- package/dist/auth/index.d.cts +4 -4
- package/dist/auth/index.d.ts +4 -4
- package/dist/auth/index.js +2 -2
- package/dist/auth/types.d.cts +3 -3
- package/dist/auth/types.d.ts +3 -3
- package/dist/chat/index.cjs +4 -4
- package/dist/chat/index.d.cts +3 -3
- package/dist/chat/index.d.ts +3 -3
- package/dist/chat/index.js +3 -3
- package/dist/chat/types.d.cts +2 -2
- package/dist/chat/types.d.ts +2 -2
- package/dist/chunk-2CFM7K4U.cjs +55 -0
- package/dist/chunk-2CFM7K4U.cjs.map +1 -0
- package/dist/{chunk-J2MBTBE2.js → chunk-34GM6NXB.js} +4 -4
- package/dist/{chunk-J2MBTBE2.js.map → chunk-34GM6NXB.js.map} +1 -1
- package/dist/{chunk-6LBMZAPF.js → chunk-3BFPNM2J.js} +4 -4
- package/dist/{chunk-6LBMZAPF.js.map → chunk-3BFPNM2J.js.map} +1 -1
- package/dist/{chunk-WJEAGAWB.js → chunk-3MTY6I2W.js} +4 -4
- package/dist/{chunk-WJEAGAWB.js.map → chunk-3MTY6I2W.js.map} +1 -1
- package/dist/{chunk-FQK3YM7U.js → chunk-3PVERYSF.js} +3 -3
- package/dist/{chunk-FQK3YM7U.js.map → chunk-3PVERYSF.js.map} +1 -1
- package/dist/chunk-3YWQQ3OG.cjs +79 -0
- package/dist/chunk-3YWQQ3OG.cjs.map +1 -0
- package/dist/{chunk-ZDCEKJAL.js → chunk-4VVF2PIX.js} +4 -4
- package/dist/{chunk-ZDCEKJAL.js.map → chunk-4VVF2PIX.js.map} +1 -1
- package/dist/{chunk-PHP2NND7.js → chunk-5XWVWFTC.js} +4 -4
- package/dist/{chunk-PHP2NND7.js.map → chunk-5XWVWFTC.js.map} +1 -1
- package/dist/chunk-6YZQIMML.cjs +163 -0
- package/dist/chunk-6YZQIMML.cjs.map +1 -0
- package/dist/{chunk-L63UYWJG.js → chunk-77LILJYX.js} +4 -4
- package/dist/{chunk-L63UYWJG.js.map → chunk-77LILJYX.js.map} +1 -1
- package/dist/{chunk-K6EZ3USU.cjs → chunk-7R22VKV7.cjs} +7 -7
- package/dist/{chunk-K6EZ3USU.cjs.map → chunk-7R22VKV7.cjs.map} +1 -1
- package/dist/chunk-7RO6PKZ4.cjs +16 -0
- package/dist/{chunk-43CGBOVT.cjs.map → chunk-7RO6PKZ4.cjs.map} +1 -1
- package/dist/{chunk-KY4EYQ6I.cjs → chunk-7YXL4FKN.cjs} +6 -6
- package/dist/{chunk-KY4EYQ6I.cjs.map → chunk-7YXL4FKN.cjs.map} +1 -1
- package/dist/{chunk-4Z5W2F6Q.js → chunk-7Z4MU7ZB.js} +434 -147
- package/dist/chunk-7Z4MU7ZB.js.map +1 -0
- package/dist/{chunk-T7SEZMQ7.cjs → chunk-AFJGNBVM.cjs} +6 -6
- package/dist/{chunk-T7SEZMQ7.cjs.map → chunk-AFJGNBVM.cjs.map} +1 -1
- package/dist/{chunk-F43HBNKD.js → chunk-AXEANGGK.js} +4 -4
- package/dist/{chunk-F43HBNKD.js.map → chunk-AXEANGGK.js.map} +1 -1
- package/dist/chunk-BCZPCMGL.cjs +49 -0
- package/dist/chunk-BCZPCMGL.cjs.map +1 -0
- package/dist/{chunk-CCC6I32C.cjs → chunk-BR6WZE3O.cjs} +4 -4
- package/dist/{chunk-CCC6I32C.cjs.map → chunk-BR6WZE3O.cjs.map} +1 -1
- package/dist/{chunk-MIUULCML.js → chunk-BZA3FGO6.js} +3 -3
- package/dist/{chunk-MIUULCML.js.map → chunk-BZA3FGO6.js.map} +1 -1
- package/dist/{chunk-R3NW5LAB.js → chunk-CV2JGHBN.js} +4 -4
- package/dist/{chunk-R3NW5LAB.js.map → chunk-CV2JGHBN.js.map} +1 -1
- package/dist/{chunk-IYGHWPCR.cjs → chunk-CWCUQACX.cjs} +4 -4
- package/dist/{chunk-IYGHWPCR.cjs.map → chunk-CWCUQACX.cjs.map} +1 -1
- package/dist/{chunk-CN5GAKRO.cjs → chunk-CWUQ6ZAO.cjs} +6 -6
- package/dist/{chunk-CN5GAKRO.cjs.map → chunk-CWUQ6ZAO.cjs.map} +1 -1
- package/dist/{chunk-Z76DIRLA.cjs → chunk-D3ZZQIY2.cjs} +9 -2
- package/dist/{chunk-4IEIVLYT.js.map → chunk-D3ZZQIY2.cjs.map} +1 -1
- package/dist/{chunk-4IEIVLYT.js → chunk-D6O5C67S.js} +9 -2
- package/dist/chunk-D6O5C67S.js.map +1 -0
- package/dist/{chunk-YEF46DYF.cjs → chunk-DRNOCC6W.cjs} +5 -5
- package/dist/{chunk-YEF46DYF.cjs.map → chunk-DRNOCC6W.cjs.map} +1 -1
- package/dist/{chunk-L4R66Q6S.js → chunk-EDX5D6UY.js} +3 -3
- package/dist/{chunk-L4R66Q6S.js.map → chunk-EDX5D6UY.js.map} +1 -1
- package/dist/chunk-FPB6OGTV.js +26 -0
- package/dist/chunk-FPB6OGTV.js.map +1 -0
- package/dist/{chunk-TCGHVOIJ.js → chunk-G66EP527.js} +4 -4
- package/dist/{chunk-TCGHVOIJ.js.map → chunk-G66EP527.js.map} +1 -1
- package/dist/chunk-HMCZUHR7.js +53 -0
- package/dist/chunk-HMCZUHR7.js.map +1 -0
- package/dist/{chunk-22D55AHX.cjs → chunk-HY7J3OD3.cjs} +444 -157
- package/dist/chunk-HY7J3OD3.cjs.map +1 -0
- package/dist/{chunk-556U6PFA.cjs → chunk-IDWGBCSB.cjs} +6 -6
- package/dist/{chunk-556U6PFA.cjs.map → chunk-IDWGBCSB.cjs.map} +1 -1
- package/dist/{chunk-WZGBE4XH.cjs → chunk-J3NLKXQ5.cjs} +9 -9
- package/dist/{chunk-WZGBE4XH.cjs.map → chunk-J3NLKXQ5.cjs.map} +1 -1
- package/dist/{chunk-BWBTNAVL.cjs → chunk-L262THNK.cjs} +9 -9
- package/dist/{chunk-BWBTNAVL.cjs.map → chunk-L262THNK.cjs.map} +1 -1
- package/dist/chunk-LD3JERYP.js +77 -0
- package/dist/chunk-LD3JERYP.js.map +1 -0
- package/dist/{chunk-X4HEWMPU.cjs → chunk-LIXSIM3H.cjs} +6 -6
- package/dist/{chunk-X4HEWMPU.cjs.map → chunk-LIXSIM3H.cjs.map} +1 -1
- package/dist/{chunk-DMNWPVVT.cjs → chunk-MMOAH3EH.cjs} +71 -6
- package/dist/chunk-MMOAH3EH.cjs.map +1 -0
- package/dist/{chunk-5ZOWA7DA.cjs → chunk-NVQ6LGDO.cjs} +6 -6
- package/dist/{chunk-5ZOWA7DA.cjs.map → chunk-NVQ6LGDO.cjs.map} +1 -1
- package/dist/{chunk-5Z6M32UE.js → chunk-NVRVPWNY.js} +4 -4
- package/dist/{chunk-5Z6M32UE.js.map → chunk-NVRVPWNY.js.map} +1 -1
- package/dist/{chunk-HFZCZ7PZ.js → chunk-OUSPQ55W.js} +3 -3
- package/dist/{chunk-HFZCZ7PZ.js.map → chunk-OUSPQ55W.js.map} +1 -1
- package/dist/{chunk-4GUUSO5O.cjs → chunk-PPQF7LTS.cjs} +6 -6
- package/dist/{chunk-4GUUSO5O.cjs.map → chunk-PPQF7LTS.cjs.map} +1 -1
- package/dist/chunk-PSR3N4NC.js +136 -0
- package/dist/chunk-PSR3N4NC.js.map +1 -0
- package/dist/{chunk-HZSZQFEO.cjs → chunk-QZKDBVAU.cjs} +9 -9
- package/dist/{chunk-HZSZQFEO.cjs.map → chunk-QZKDBVAU.cjs.map} +1 -1
- package/dist/{chunk-G5JMZI2L.js → chunk-S4JK7DKM.js} +4 -4
- package/dist/{chunk-G5JMZI2L.js.map → chunk-S4JK7DKM.js.map} +1 -1
- package/dist/{chunk-FVJC2GJY.cjs → chunk-T242YFMT.cjs} +7 -7
- package/dist/{chunk-FVJC2GJY.cjs.map → chunk-T242YFMT.cjs.map} +1 -1
- package/dist/{chunk-YQEBJG5H.cjs → chunk-UWQUHP3T.cjs} +6 -6
- package/dist/{chunk-YQEBJG5H.cjs.map → chunk-UWQUHP3T.cjs.map} +1 -1
- package/dist/{chunk-33NQB34X.js → chunk-WFXW4XU3.js} +4 -4
- package/dist/{chunk-33NQB34X.js.map → chunk-WFXW4XU3.js.map} +1 -1
- package/dist/{chunk-3B3GOGAL.js → chunk-XHDYLUM4.js} +71 -7
- package/dist/chunk-XHDYLUM4.js.map +1 -0
- package/dist/{chunk-TF3JWA7J.js → chunk-XIIER7QQ.js} +4 -4
- package/dist/{chunk-TF3JWA7J.js.map → chunk-XIIER7QQ.js.map} +1 -1
- package/dist/{chunk-JQSMJ64B.js → chunk-XKIENBIE.js} +4 -4
- package/dist/{chunk-JQSMJ64B.js.map → chunk-XKIENBIE.js.map} +1 -1
- package/dist/{chunk-Q7C2IRF2.cjs → chunk-Y44G2VDC.cjs} +6 -6
- package/dist/{chunk-Q7C2IRF2.cjs.map → chunk-Y44G2VDC.cjs.map} +1 -1
- package/dist/constants/index.cjs +5 -5
- package/dist/constants/index.js +1 -1
- package/dist/{createGenericFetchClient-DJ-oaxPj.d.cts → createGenericFetchClient-Df_wFqT8.d.cts} +1 -1
- package/dist/{createGenericFetchClient-B2Gp1a8f.d.ts → createGenericFetchClient-Sl1DH71J.d.ts} +1 -1
- package/dist/{createOpenapiFetchClient-BX7_szVZ.d.ts → createOpenapiFetchClient-BSy6dVM5.d.ts} +2 -2
- package/dist/{createOpenapiFetchClient-pguVgT7R.d.cts → createOpenapiFetchClient-GZxZgYHd.d.cts} +2 -2
- package/dist/dataScience/index.cjs +5 -5
- package/dist/dataScience/index.d.cts +4 -4
- package/dist/dataScience/index.d.ts +4 -4
- package/dist/dataScience/index.js +3 -3
- package/dist/dataScience/types.d.cts +2 -2
- package/dist/dataScience/types.d.ts +2 -2
- package/dist/domain/permissions/index.cjs +106 -145
- package/dist/domain/permissions/index.cjs.map +1 -1
- package/dist/domain/permissions/index.d.cts +7 -5
- package/dist/domain/permissions/index.d.ts +7 -5
- package/dist/domain/permissions/index.js +2 -125
- package/dist/domain/permissions/index.js.map +1 -1
- package/dist/editor/index.cjs +4 -4
- package/dist/editor/index.d.cts +3 -3
- package/dist/editor/index.d.ts +3 -3
- package/dist/editor/index.js +3 -3
- package/dist/editor/types.d.cts +2 -2
- package/dist/editor/types.d.ts +2 -2
- package/dist/encryption/index.cjs +3 -3
- package/dist/encryption/index.d.cts +3 -3
- package/dist/encryption/index.d.ts +3 -3
- package/dist/encryption/index.js +2 -2
- package/dist/encryption/types.d.cts +2 -2
- package/dist/encryption/types.d.ts +2 -2
- package/dist/import/index.cjs +4 -4
- package/dist/import/index.d.cts +37 -3
- package/dist/import/index.d.ts +37 -3
- package/dist/import/index.js +3 -3
- package/dist/index.cjs +91 -89
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +120 -56
- package/dist/index.d.ts +120 -56
- package/dist/index.js +31 -29
- package/dist/index.js.map +1 -1
- package/dist/management/index.cjs +5 -5
- package/dist/management/index.d.cts +588 -99
- package/dist/management/index.d.ts +588 -99
- package/dist/management/index.js +3 -3
- package/dist/management/types.d.cts +3 -2
- package/dist/management/types.d.ts +3 -2
- package/dist/metastore/index.cjs +4 -4
- package/dist/metastore/index.d.cts +4 -4
- package/dist/metastore/index.d.ts +4 -4
- package/dist/metastore/index.js +3 -3
- package/dist/metastore/types.d.cts +2 -2
- package/dist/metastore/types.d.ts +2 -2
- package/dist/notifications/index.cjs +4 -4
- package/dist/notifications/index.d.cts +3 -3
- package/dist/notifications/index.d.ts +3 -3
- package/dist/notifications/index.js +3 -3
- package/dist/notifications/types.d.cts +2 -2
- package/dist/notifications/types.d.ts +2 -2
- package/dist/oauth/index.cjs +4 -4
- package/dist/oauth/index.d.cts +46 -6
- package/dist/oauth/index.d.ts +46 -6
- package/dist/oauth/index.js +3 -3
- package/dist/oauth/types.d.cts +718 -27
- package/dist/oauth/types.d.ts +718 -27
- package/dist/{project-CbJCjkdt.d.cts → project-CSJzVylj.d.cts} +1 -1
- package/dist/{project-BV-vseKc.d.ts → project-DmC8vKnh.d.ts} +1 -1
- package/dist/queryService/index.cjs +4 -4
- package/dist/queryService/index.d.cts +3 -3
- package/dist/queryService/index.d.ts +3 -3
- package/dist/queryService/index.js +3 -3
- package/dist/queryService/types.d.cts +2 -2
- package/dist/queryService/types.d.ts +2 -2
- package/dist/queue/index.cjs +4 -4
- package/dist/queue/index.d.cts +3 -3
- package/dist/queue/index.d.ts +3 -3
- package/dist/queue/index.js +3 -3
- package/dist/queue/types.d.cts +2 -2
- package/dist/queue/types.d.ts +2 -2
- package/dist/{registry-v_1krdcs.d.ts → registry-CcKlB-yY.d.ts} +15 -2
- package/dist/{registry-v_1krdcs.d.cts → registry-Cg0Yng1z.d.cts} +15 -2
- package/dist/scheduler/index.cjs +4 -4
- package/dist/scheduler/index.d.cts +2 -2
- package/dist/scheduler/index.d.ts +2 -2
- package/dist/scheduler/index.js +3 -3
- package/dist/scheduler/types.d.cts +1 -1
- package/dist/scheduler/types.d.ts +1 -1
- package/dist/sdk/configurations/index.cjs +4 -2
- package/dist/sdk/configurations/index.d.cts +12 -11
- package/dist/sdk/configurations/index.d.ts +12 -11
- package/dist/sdk/configurations/index.js +3 -1
- package/dist/sdk/semanticLayer/index.d.cts +4 -4
- package/dist/sdk/semanticLayer/index.d.ts +4 -4
- package/dist/sdk/semanticLayer/types.d.cts +4 -4
- package/dist/sdk/semanticLayer/types.d.ts +4 -4
- package/dist/sdk/storage/index.d.cts +7 -7
- package/dist/sdk/storage/index.d.ts +7 -7
- package/dist/sdk/tag/index.d.cts +4 -4
- package/dist/sdk/tag/index.d.ts +4 -4
- package/dist/sdk/tag/types.d.cts +4 -4
- package/dist/sdk/tag/types.d.ts +4 -4
- package/dist/sdk/vault/index.d.cts +4 -4
- package/dist/sdk/vault/index.d.ts +4 -4
- package/dist/status/index.cjs +2 -2
- package/dist/status/index.d.cts +1 -1
- package/dist/status/index.d.ts +1 -1
- package/dist/status/index.js +1 -1
- package/dist/storage/index.cjs +11 -11
- package/dist/storage/index.d.cts +7 -7
- package/dist/storage/index.d.ts +7 -7
- package/dist/storage/index.js +4 -4
- package/dist/storage/types.d.cts +4 -4
- package/dist/storage/types.d.ts +4 -4
- package/dist/{storageClient-Dz4tTWOc.d.ts → storageClient-B4OooGB9.d.ts} +4 -4
- package/dist/{storageClient-Dlu7OJgJ.d.cts → storageClient-CdFqTbn3.d.cts} +4 -4
- package/dist/{storageSdk-PRaSLkD6.d.ts → storageSdk-DA7U-1Hy.d.ts} +1 -1
- package/dist/{storageSdk-DxbSjnHh.d.cts → storageSdk-U45zMbUb.d.cts} +1 -1
- package/dist/stream/index.cjs +4 -4
- package/dist/stream/index.d.cts +3 -3
- package/dist/stream/index.d.ts +3 -3
- package/dist/stream/index.js +3 -3
- package/dist/stream/types.d.cts +2 -2
- package/dist/stream/types.d.ts +2 -2
- package/dist/syncActions/index.cjs +4 -4
- package/dist/syncActions/index.d.cts +3 -3
- package/dist/syncActions/index.d.ts +3 -3
- package/dist/syncActions/index.js +3 -3
- package/dist/syncActions/types.d.cts +1 -1
- package/dist/syncActions/types.d.ts +1 -1
- package/dist/telemetry/index.cjs +4 -4
- package/dist/telemetry/index.d.cts +2 -2
- package/dist/telemetry/index.d.ts +2 -2
- package/dist/telemetry/index.js +3 -3
- package/dist/{types-CmdRXxqa.d.cts → types-B-vmDlWB.d.cts} +1 -1
- package/dist/{types-Dz4Yc-Mu.d.ts → types-B30y9Lhc.d.ts} +1 -1
- package/dist/{types-DgU_wy4q.d.cts → types-BEnE7LHB.d.cts} +1 -1
- package/dist/{types-D6p5VsOx.d.cts → types-BX1xr4CX.d.cts} +1 -1
- package/dist/types-BfuVN8Pk.d.cts +468 -0
- package/dist/{types-CJ0RgA57.d.ts → types-BhlJw2f2.d.ts} +1 -1
- package/dist/{types-Bj3fLP0h.d.ts → types-BieLFMW1.d.cts} +1 -1
- package/dist/{types-Cnsa5tWp.d.ts → types-Brc6lq7i.d.ts} +1 -1
- package/dist/{types-qCMu5X9I.d.ts → types-CM1zHzgm.d.ts} +1 -1
- package/dist/{types-22LtuLPM.d.cts → types-CSZoV4lM.d.cts} +1 -1
- package/dist/{types-DNEuJ-tb.d.cts → types-Cgh3jqrV.d.cts} +1 -1
- package/dist/{types-CUzRu6Z8.d.cts → types-CiJ5ULtS.d.ts} +1 -1
- package/dist/{types-BjNd012m.d.ts → types-CrLjE5xf.d.ts} +1 -1
- package/dist/{types-CkQXSDqo.d.cts → types-D-MuJHwl.d.cts} +1 -1
- package/dist/{types-PG_v0QyH.d.ts → types-DHXZZKb3.d.ts} +1 -1
- package/dist/{types-DqxZDbM1.d.cts → types-DNg4M5JV.d.cts} +2 -0
- package/dist/{types-DqxZDbM1.d.ts → types-DNg4M5JV.d.ts} +2 -0
- package/dist/{types-CfIKhNMg.d.cts → types-DVhcwrwN.d.cts} +1 -1
- package/dist/{types-y3pEpGrH.d.cts → types-DYnHIm7m.d.cts} +1 -1
- package/dist/{types-DXFcF3_c.d.ts → types-DbAO-Tgk.d.ts} +1 -1
- package/dist/{types-BjdcqqvT.d.ts → types-DeS-oVdn.d.ts} +1 -1
- package/dist/{types-GecGaYgv.d.ts → types-DeoA45gz.d.cts} +172 -84
- package/dist/{types-mQtL3f4D.d.cts → types-DgSyBwP3.d.cts} +1 -1
- package/dist/{types-B-3bBl2q.d.ts → types-DpUcInCX.d.ts} +1 -1
- package/dist/{types-Dq5jIMye.d.ts → types-DwMezEHT.d.ts} +1 -1
- package/dist/{types-GecGaYgv.d.cts → types-Hj1CaKtV.d.ts} +172 -84
- package/dist/{types-B3hgDuaG.d.cts → types-WGZN6XLN.d.cts} +1 -1
- package/dist/types-YzkNUuYo.d.ts +468 -0
- package/dist/{types-BbM5WDSR.d.cts → types-gcShAmmi.d.cts} +27 -1
- package/dist/{types-BbM5WDSR.d.ts → types-gcShAmmi.d.ts} +27 -1
- package/dist/{utils-zcz60drL.d.ts → utils-B_SOM1XR.d.ts} +1 -1
- package/dist/{utils-CuiDsDxz.d.cts → utils-DK7uJcmR.d.cts} +1 -1
- package/dist/vault/index.cjs +4 -4
- package/dist/vault/index.d.cts +2 -2
- package/dist/vault/index.d.ts +2 -2
- package/dist/vault/index.js +3 -3
- package/dist/vault/types.d.cts +1 -1
- package/dist/vault/types.d.ts +1 -1
- package/package.json +8 -8
- package/surface/import.md +2 -1
- package/surface/management.md +77 -29
- package/surface/oauth.md +4 -4
- package/dist/assets/types.cjs +0 -4
- package/dist/assets/types.cjs.map +0 -1
- package/dist/assets/types.d.cts +0 -8
- package/dist/assets/types.d.ts +0 -8
- package/dist/assets/types.js +0 -3
- package/dist/assets/types.js.map +0 -1
- package/dist/chunk-22D55AHX.cjs.map +0 -1
- package/dist/chunk-3B3GOGAL.js.map +0 -1
- package/dist/chunk-43CGBOVT.cjs +0 -16
- package/dist/chunk-4Z5W2F6Q.js.map +0 -1
- package/dist/chunk-DMNWPVVT.cjs.map +0 -1
- package/dist/chunk-FDTWXXI4.cjs +0 -78
- package/dist/chunk-FDTWXXI4.cjs.map +0 -1
- package/dist/chunk-PEC3BYFA.js +0 -42
- package/dist/chunk-PEC3BYFA.js.map +0 -1
- package/dist/chunk-UH5JOSEE.js +0 -76
- package/dist/chunk-UH5JOSEE.js.map +0 -1
- package/dist/chunk-VPNWX7YM.cjs +0 -44
- package/dist/chunk-VPNWX7YM.cjs.map +0 -1
- package/dist/chunk-Z76DIRLA.cjs.map +0 -1
- package/dist/types-Dg1tEsVR.d.cts +0 -17
- package/dist/types-Dg1tEsVR.d.ts +0 -17
package/surface/management.md
CHANGED
|
@@ -18,6 +18,7 @@ Part of the [`@keboola/api-client` surface index](../API-SURFACE.md).
|
|
|
18
18
|
- `api.management.currentUser.getOrganizationInvitations(signal?: AbortSignal | undefined): Promise<{ id: number; created: string; organization: { id?: number | undefined; name?: string | undefined; }; creator: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; }[]>`
|
|
19
19
|
- `api.management.currentUser.getProjectInvitation(id: number, signal?: AbortSignal | undefined): Promise<{ id: number; created: string; expires?: string | null | undefined; reason?: string | null | undefined; role?: string | null | undefined; project: { id?: number | undefined; name?: string | undefined; }; creator: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; }>`
|
|
20
20
|
- `api.management.currentUser.getProjectInvitations(signal?: AbortSignal | undefined): Promise<{ id: number; created: string; expires?: string | null | undefined; reason?: string | null | undefined; role?: string | null | undefined; project: { id?: number | undefined; name?: string | undefined; }; creator: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; }[]>`
|
|
21
|
+
- `api.management.currentUser.getProjectJoinRequest(id: number, signal?: AbortSignal | undefined): Promise<{ id: number; created: string; expires?: string | null | undefined; reason?: string | null | undefined; project: { id?: number | undefined; name?: string | undefined; }; }>`
|
|
21
22
|
- `api.management.currentUser.getProjectJoinRequests(signal?: AbortSignal | undefined): Promise<{ id: number; created: string; expires?: string | null | undefined; reason?: string | null | undefined; project: { id?: number | undefined; name?: string | undefined; }; }[]>`
|
|
22
23
|
- `api.management.currentUser.rejectMaintainerInvitation(id: number): Promise<void>`
|
|
23
24
|
- `api.management.currentUser.rejectOrganizationInvitation(id: number): Promise<void>`
|
|
@@ -39,40 +40,57 @@ Part of the [`@keboola/api-client` surface index](../API-SURFACE.md).
|
|
|
39
40
|
|
|
40
41
|
### `api.management.fileStorage`
|
|
41
42
|
|
|
43
|
+
- `api.management.fileStorage.createFileStorageAbs(body: { accountName: string; containerName: string; owner: string; accountKey: string; region: string; }): Promise<{ id: number; accountName: string; region: string; containerName: string; provider: string; owner: string; isDefault: boolean; created: string; creator: { id?: number | undefined; name?: string | undefined; }; }>`
|
|
44
|
+
- `api.management.fileStorage.createFileStorageGcs(body: { gcsCredentials: { type: string; project_id: string; private_key_id: string; private_key: string; client_email: string; client_id: string; auth_uri: string; token_uri: string; auth_provider_x509_cert_url: string; client_x509_cert_url: string; }; filesBucket: string; owner: "client" | "keboola"; region: string; }): Promise<FileStorageGcs>`
|
|
45
|
+
- `api.management.fileStorage.createFileStorageS3(body: { awsKey: string; awsSecret: string; filesBucket: string; owner: string; region: string; }): Promise<{ id: number; awsKey: string; region: string; filesBucket: string; provider: string; owner: string; isDefault: boolean; created: string; creator: { id?: number | undefined; name?: string | undefined; }; }>`
|
|
42
46
|
- `api.management.fileStorage.getFileStoragesAbs(signal?: AbortSignal | undefined): Promise<{ id: number; accountName: string; region: string; containerName: string; provider: string; owner: string; isDefault: boolean; created: string; creator: { id?: number | undefined; name?: string | undefined; }; }[]>`
|
|
43
47
|
- `api.management.fileStorage.getFileStoragesGcs(signal?: AbortSignal | undefined): Promise<FileStorageGcs[]>`
|
|
44
48
|
- `api.management.fileStorage.getFileStoragesS3(signal?: AbortSignal | undefined): Promise<{ id: number; awsKey: string; region: string; filesBucket: string; provider: string; owner: string; isDefault: boolean; created: string; creator: { id?: number | undefined; name?: string | undefined; }; }[]>`
|
|
49
|
+
- `api.management.fileStorage.rotateFileStorageAbsCredentials({ fileStorageId, ...body }: RotateFileStorageAbsInput): Promise<{ id: number; accountName: string; region: string; containerName: string; provider: string; owner: string; isDefault: boolean; created: string; creator: { id?: number | undefined; name?: string | undefined; }; }>`
|
|
50
|
+
- `api.management.fileStorage.rotateFileStorageGcsCredentials({ fileStorageId, ...body }: RotateFileStorageGcsInput): Promise<FileStorageGcs>`
|
|
51
|
+
- `api.management.fileStorage.rotateFileStorageS3Credentials({ fileStorageId, ...body }: RotateFileStorageS3Input): Promise<{ id: number; awsKey: string; region: string; filesBucket: string; provider: string; owner: string; isDefault: boolean; created: string; creator: { id?: number | undefined; name?: string | undefined; }; }>`
|
|
52
|
+
- `api.management.fileStorage.setFileStorageAbsDefault(fileStorageId: number): Promise<{ id: number; accountName: string; region: string; containerName: string; provider: string; owner: string; isDefault: boolean; created: string; creator: { id?: number | undefined; name?: string | undefined; }; }>`
|
|
53
|
+
- `api.management.fileStorage.setFileStorageGcsDefault(fileStorageId: number): Promise<FileStorageGcs>`
|
|
54
|
+
- `api.management.fileStorage.setFileStorageS3Default(fileStorageId: number): Promise<{ id: number; awsKey: string; region: string; filesBucket: string; provider: string; owner: string; isDefault: boolean; created: string; creator: { id?: number | undefined; name?: string | undefined; }; }>`
|
|
45
55
|
|
|
46
56
|
### `api.management.maintainers`
|
|
47
57
|
|
|
48
|
-
- `api.management.maintainers.addMaintainerUser({ maintainerId, ...body }:
|
|
58
|
+
- `api.management.maintainers.addMaintainerUser({ maintainerId, ...body }: AddMaintainerUserInput): Promise<{ id: number; name: string; email: string; mfaEnabled: boolean; features: string[]; canAccessLogs: boolean; isSuperAdmin: boolean; }>`
|
|
59
|
+
- `api.management.maintainers.completeMaintainerSamlSetup({ maintainerId, configId, ...body }: CompleteSamlSetupInput): Promise<{ id?: number | undefined; maintainerId?: number | undefined; customerSlug?: string | undefined; name?: string | undefined; isActive?: boolean | undefined; membershipRestriction?: "none" | "permittedDomains" | undefined; message?: string | undefined; loginUrl?: string | undefined; warnings?: { code?: string | undefined; message?: string | undefined; organizationIds?: number[] | undefined; }[] | undefined; }>`
|
|
49
60
|
- `api.management.maintainers.createMaintainer(body: { name: string; defaultConnectionMysqlId?: number | null | undefined; defaultConnectionSnowflakeId?: number | null | undefined; defaultConnectionSynapseId?: number | null | undefined; defaultConnectionExasolId?: number | null | undefined; defaultConnectionBigqueryId?: number | null | undefined; defaultConnectionTeradataId?: number | null | undefined; zendeskUrl?: string | null | undefined; defaultFileStorageId?: number | null | undefined; }): Promise<{ id: number; name: string; created: string; defaultConnectionMysqlId?: number | null | undefined; defaultConnectionSnowflakeId?: number | null | undefined; defaultConnectionSynapseId?: number | null | undefined; defaultConnectionExasolId?: number | null | undefined; defaultConnectionBigqueryId?: number | null | undefined; defaultConnectionTeradataId?: number | null | undefined; defaultFileStorageId?: number | null | undefined; zendeskUrl?: string | null | undefined; organizations: { id?: number | undefined; name?: string | undefined; }[]; }>`
|
|
50
|
-
- `api.management.maintainers.createMaintainerInvitation({ maintainerId, ...body }:
|
|
51
|
-
- `api.management.maintainers.createMaintainerOrganization({ maintainerId, ...body }:
|
|
61
|
+
- `api.management.maintainers.createMaintainerInvitation({ maintainerId, ...body }: CreateMaintainerInvitationInput): Promise<{ id: number; created?: string | null | undefined; user: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; creator: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; }>`
|
|
62
|
+
- `api.management.maintainers.createMaintainerOrganization({ maintainerId, ...body }: CreateMaintainerOrganizationInput): Promise<{ id: number; name: string; created: string; allowAutoJoin: boolean; crmId?: string | null | undefined; activityCenterProjectId?: number | null | undefined; mfaRequired: boolean; }>`
|
|
63
|
+
- `api.management.maintainers.createMaintainerSamlConfig({ maintainerId, ...body }: CreateSamlConfigInput): Promise<{ id?: number | undefined; maintainerId?: number | undefined; customerSlug?: string | undefined; name?: string | undefined; isActive?: boolean | undefined; spConfiguration?: { entityId?: string | undefined; acsUrl?: string | undefined; slsUrl?: string | undefined; metadataUrl?: string | undefined; x509Certificate?: string | undefined; } | undefined; nextSteps?: { instructions?: string | undefined; curlCommand?: string | undefined; } | undefined; }>`
|
|
52
64
|
- `api.management.maintainers.deleteMaintainer(maintainerId: number): Promise<void>`
|
|
53
|
-
- `api.management.maintainers.deleteMaintainerInvitation({ maintainerId, invitationId, }:
|
|
54
|
-
- `api.management.maintainers.deleteMaintainerMetadata({ maintainerId, metadataId, }:
|
|
65
|
+
- `api.management.maintainers.deleteMaintainerInvitation({ maintainerId, invitationId, }: MaintainerInvitationPath): Promise<void>`
|
|
66
|
+
- `api.management.maintainers.deleteMaintainerMetadata({ maintainerId, metadataId, }: MaintainerMetadataItemPath): Promise<void>`
|
|
67
|
+
- `api.management.maintainers.deleteMaintainerSamlConfig({ maintainerId, configId }: { maintainerId: number; configId: number; }): Promise<void>`
|
|
55
68
|
- `api.management.maintainers.getMaintainer(maintainerId: number, signal?: AbortSignal | undefined): Promise<MaintainerDetail>`
|
|
56
|
-
- `api.management.maintainers.getMaintainerInvitation({ maintainerId, invitationId }:
|
|
69
|
+
- `api.management.maintainers.getMaintainerInvitation({ maintainerId, invitationId }: MaintainerInvitationPath, signal?: AbortSignal | undefined): Promise<{ id: number; created?: string | null | undefined; user: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; creator: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; }>`
|
|
57
70
|
- `api.management.maintainers.getMaintainerInvitations(maintainerId: number, signal?: AbortSignal | undefined): Promise<{ id: number; created?: string | null | undefined; user: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; creator: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; }[]>`
|
|
58
71
|
- `api.management.maintainers.getMaintainerMetadata(maintainerId: number, signal?: AbortSignal | undefined): Promise<MetadataItem[]>`
|
|
72
|
+
- `api.management.maintainers.getMaintainerOrganizations(maintainerId: number, signal?: AbortSignal | undefined): Promise<{ id?: number | undefined; name?: string | undefined; created?: string | undefined; allowAutoJoin?: boolean | undefined; crmId?: string | null | undefined; activityCenterProjectId?: number | null | undefined; mfaRequired?: boolean | undefined; }[]>`
|
|
73
|
+
- `api.management.maintainers.getMaintainerSamlConfig({ maintainerId, configId }: { maintainerId: number; configId: number; }, signal?: AbortSignal | undefined): Promise<{ id?: number | undefined; maintainerId?: number | undefined; customerSlug?: string | undefined; name?: string | undefined; description?: string | null | undefined; idpEntityId?: string | undefined; idpSsoUrl?: string | null | undefined; idpSloUrl?: string | null | undefined; idpX509Cert?: string | null | undefined; spX509Cert?: string | undefined; spEntityIdSuffix?: string | null | undefined; attributeEmail?: string | undefined; attributeFirstName?: string | undefined; attributeLastName?: string | undefined; attributeRoles?: string | null | undefined; roleRequiredToLogin?: string | null | undefined; roleProjectPrefix?: string | null | undefined; roleOrgAdminPrefix?: string | null | undefined; designAdminEmail?: string | null | undefined; loginUrlParams?: { [key: string]: string; } | null | undefined; isActive?: boolean | undefined; createdAt?: string | undefined; updatedAt?: string | undefined; }>`
|
|
74
|
+
- `api.management.maintainers.getMaintainerSamlConfigs(maintainerId: number, signal?: AbortSignal | undefined): Promise<{ id?: number | undefined; maintainerId?: number | undefined; customerSlug?: string | undefined; name?: string | undefined; description?: string | null | undefined; idpEntityId?: string | undefined; isActive?: boolean | undefined; createdAt?: string | undefined; updatedAt?: string | undefined; }>`
|
|
59
75
|
- `api.management.maintainers.getMaintainerUsers(maintainerId: number, signal?: AbortSignal | undefined): Promise<MaintainerUser[]>`
|
|
60
76
|
- `api.management.maintainers.getMaintainers(signal?: AbortSignal | undefined): Promise<Maintainer[]>`
|
|
61
|
-
- `api.management.maintainers.
|
|
62
|
-
- `api.management.maintainers.
|
|
63
|
-
- `api.management.maintainers.
|
|
77
|
+
- `api.management.maintainers.joinMaintainer(maintainerId: number): Promise<void>`
|
|
78
|
+
- `api.management.maintainers.removeMaintainerUser({ maintainerId, adminId }: MaintainerUserPath): Promise<void>`
|
|
79
|
+
- `api.management.maintainers.setMaintainerMetadata({ maintainerId, ...body }: SetMaintainerMetadataInput): Promise<MetadataItem[]>`
|
|
80
|
+
- `api.management.maintainers.updateMaintainer({ maintainerId, ...body }: UpdateMaintainerInput): Promise<{ id: number; name: string; created: string; defaultConnectionMysqlId?: number | null | undefined; defaultConnectionSnowflakeId?: number | null | undefined; defaultConnectionSynapseId?: number | null | undefined; defaultConnectionExasolId?: number | null | undefined; defaultConnectionBigqueryId?: number | null | undefined; defaultConnectionTeradataId?: number | null | undefined; defaultFileStorageId?: number | null | undefined; zendeskUrl?: string | null | undefined; organizations: { id?: number | undefined; name?: string | undefined; }[]; }>`
|
|
81
|
+
- `api.management.maintainers.updateMaintainerSamlConfig({ maintainerId, configId, ...body }: UpdateSamlConfigInput): Promise<{ id?: number | undefined; maintainerId?: number | undefined; customerSlug?: string | undefined; membershipRestriction?: "none" | "permittedDomains" | undefined; message?: string | undefined; warnings?: { code?: string | undefined; message?: string | undefined; organizationIds?: number[] | undefined; }[] | undefined; }>`
|
|
64
82
|
|
|
65
83
|
### `api.management.organizations`
|
|
66
84
|
|
|
67
|
-
- `api.management.organizations.addOrganizationUser({ organizationId, ...body }:
|
|
68
|
-
- `api.management.organizations.createOrganizationInvitation({ organizationId, ...body }:
|
|
69
|
-
- `api.management.organizations.createOrganizationProject({ organizationId, ...body }:
|
|
85
|
+
- `api.management.organizations.addOrganizationUser({ organizationId, ...body }: AddOrganizationUserInput): Promise<{ id: number; name: string; email: string; mfaEnabled: boolean; features: string[]; canAccessLogs: boolean; isSuperAdmin: boolean; }>`
|
|
86
|
+
- `api.management.organizations.createOrganizationInvitation({ organizationId, ...body }: CreateOrganizationInvitationInput): Promise<{ id: number; created?: string | null | undefined; user: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; creator: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; }>`
|
|
87
|
+
- `api.management.organizations.createOrganizationProject({ organizationId, ...body }: CreateOrganizationProjectInput): Promise<{ id: number; name: string; type: string; region: string; created?: string | null | undefined; expires?: string | null | undefined; features: string[]; dataSizeBytes: number; rowsCount: number; hasMysql: boolean; hasSynapse: boolean; hasSnowflake: boolean; hasExasol: boolean; hasTeradata: boolean; hasBigquery: boolean; defaultBackend: string; hasTryModeOn: string; limits: { [key: string]: { name?: string | undefined; value?: number | undefined; }; }; metrics: { [key: string]: { name?: string | undefined; value?: number | undefined; }; }; isDisabled: boolean; billedMonthlyPrice?: number | null | undefined; dataRetentionTimeInDays: number; isBYODB: boolean; assignedBackends: string[]; fileStorageProvider?: string | null | undefined; payAsYouGo?: { purchasedCredits?: number | undefined; } | null | undefined; disabled?: { reason?: string | undefined; estimatedEndTime?: string | null | undefined; } | null | undefined; } & { fileStorage?: Record<string, never> | undefined; backends?: Record<string, never> | undefined; }>`
|
|
70
88
|
- `api.management.organizations.deleteOrganization(organizationId: number): Promise<void>`
|
|
71
|
-
- `api.management.organizations.deleteOrganizationInvitation({ organizationId, invitationId, }:
|
|
72
|
-
- `api.management.organizations.deleteOrganizationMetadata({ organizationId, metadataId, }:
|
|
89
|
+
- `api.management.organizations.deleteOrganizationInvitation({ organizationId, invitationId, }: OrganizationInvitationPath): Promise<void>`
|
|
90
|
+
- `api.management.organizations.deleteOrganizationMetadata({ organizationId, metadataId, }: OrganizationMetadataItemPath): Promise<void>`
|
|
73
91
|
- `api.management.organizations.forceMfa(organizationId: number): Promise<{ id: number; name: string; created: string; allowAutoJoin: boolean; crmId?: string | null | undefined; activityCenterProjectId?: number | null | undefined; mfaRequired: boolean; } & { projects: { id: number; name: string; created: string; }[]; }>`
|
|
74
92
|
- `api.management.organizations.getOrganization(organizationId: number, signal?: AbortSignal | undefined): Promise<OrganizationDetail>`
|
|
75
|
-
- `api.management.organizations.getOrganizationInvitation({ organizationId, invitationId }:
|
|
93
|
+
- `api.management.organizations.getOrganizationInvitation({ organizationId, invitationId }: OrganizationInvitationPath, signal?: AbortSignal | undefined): Promise<{ id: number; created?: string | null | undefined; user: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; creator: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; }>`
|
|
76
94
|
- `api.management.organizations.getOrganizationInvitations(organizationId: number, signal?: AbortSignal | undefined): Promise<{ id: number; created?: string | null | undefined; user: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; creator: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; }[]>`
|
|
77
95
|
- `api.management.organizations.getOrganizationMetadata(organizationId: number, signal?: AbortSignal | undefined): Promise<MetadataItem[]>`
|
|
78
96
|
- `api.management.organizations.getOrganizationProjects(organizationId: number, signal?: AbortSignal | undefined): Promise<Project[]>`
|
|
@@ -80,50 +98,80 @@ Part of the [`@keboola/api-client` surface index](../API-SURFACE.md).
|
|
|
80
98
|
- `api.management.organizations.getOrganizationUsers(organizationId: number, signal?: AbortSignal | undefined): Promise<{ id: number; name: string; email: string; mfaEnabled: boolean; features: string[]; canAccessLogs: boolean; isSuperAdmin: boolean; }[]>`
|
|
81
99
|
- `api.management.organizations.getOrganizations(signal?: AbortSignal | undefined): Promise<{ id: number; name: string; created: string; allowAutoJoin: boolean; crmId: string; activityCenterProjectId?: number | null | undefined; mfaRequired: boolean; maintainer: { id?: number | undefined; name?: string | undefined; created?: string | undefined; defaultConnectionMysqlId?: number | null | undefined; defaultConnectionSnowflakeId?: number | null | undefined; defaultConnectionSynapseId?: number | null | undefined; defaultConnectionExasolId?: number | null | undefined; defaultConnectionBigqueryId?: number | null | undefined; defaultConnectionTeradataId?: number | null | undefined; defaultFileStorageId?: number | null | undefined; zendeskUrl?: string | null | undefined; }; }[]>`
|
|
82
100
|
- `api.management.organizations.joinOrganization(organizationId: number): Promise<void>`
|
|
83
|
-
- `api.management.organizations.removeOrganizationUser({ organizationId, userId
|
|
84
|
-
- `api.management.organizations.setOrganizationMetadata({ organizationId, ...body }:
|
|
85
|
-
- `api.management.organizations.updateOrganization({ organizationId, ...body }:
|
|
101
|
+
- `api.management.organizations.removeOrganizationUser({ organizationId, userId }: OrganizationUserPath): Promise<void>`
|
|
102
|
+
- `api.management.organizations.setOrganizationMetadata({ organizationId, ...body }: SetOrganizationMetadataInput): Promise<MetadataItem[]>`
|
|
103
|
+
- `api.management.organizations.updateOrganization({ organizationId, ...body }: UpdateOrganizationInput): Promise<{ id: number; name: string; created: string; allowAutoJoin: boolean; crmId?: string | null | undefined; activityCenterProjectId?: number | null | undefined; mfaRequired: boolean; } & { projects: { id: number; name: string; created: string; }[]; }>`
|
|
86
104
|
|
|
87
105
|
### `api.management.projects`
|
|
88
106
|
|
|
89
|
-
- `api.management.projects.addProjectFeature({ projectId, feature, }: CreateProjectFeaturePath & CreateProjectFeatureBody): Promise<
|
|
90
|
-
- `api.management.projects.
|
|
91
|
-
- `api.management.projects.
|
|
107
|
+
- `api.management.projects.addProjectFeature({ projectId, feature, }: CreateProjectFeaturePath & CreateProjectFeatureBody): Promise<ProjectBase>`
|
|
108
|
+
- `api.management.projects.addProjectTemplateFeature({ templateId, ...body }: AssignProjectTemplateFeatureInput): Promise<void>`
|
|
109
|
+
- `api.management.projects.addProjectUser({ projectId, ...body }: AddProjectUserPath & AddProjectUserBody): Promise<null>`
|
|
110
|
+
- `api.management.projects.approveProjectJoinRequest({ projectId, joinRequestId, }: ProjectJoinRequestPath): Promise<null>`
|
|
111
|
+
- `api.management.projects.changeProjectUserRole({ projectId, userId, role }: ChangeProjectUserRoleInput): Promise<User>`
|
|
92
112
|
- `api.management.projects.createProjectInvitation({ projectId, ...body }: CreateProjectInvitationPath & CreateProjectInvitationBody): Promise<{ id: number; created?: string | null | undefined; expires?: string | null | undefined; reason?: string | null | undefined; role?: string | null | undefined; user: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; creator: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; }>`
|
|
93
113
|
- `api.management.projects.deleteProject(projectId: number): Promise<null>`
|
|
94
114
|
- `api.management.projects.deleteProjectInvitation({ projectId, invitationId, }: DeleteProjectInvitationPath): Promise<null>`
|
|
115
|
+
- `api.management.projects.deleteProjectMetadata({ projectId, metadataId }: { projectId: number; metadataId: number; }): Promise<void>`
|
|
95
116
|
- `api.management.projects.getProject(projectId: string | number, signal?: AbortSignal | undefined): Promise<Project>`
|
|
117
|
+
- `api.management.projects.getProjectInvitation({ projectId, invitationId }: DeleteProjectInvitationPath, signal?: AbortSignal | undefined): Promise<{ id: number; created?: string | null | undefined; expires?: string | null | undefined; reason?: string | null | undefined; role?: string | null | undefined; user: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; creator: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; }>`
|
|
96
118
|
- `api.management.projects.getProjectInvitations(projectId: string | number, signal?: AbortSignal | undefined): Promise<{ id: number; created?: string | null | undefined; expires?: string | null | undefined; reason?: string | null | undefined; role?: string | null | undefined; user: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; creator: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; }[]>`
|
|
119
|
+
- `api.management.projects.getProjectJoinRequest({ projectId, joinRequestId }: ProjectJoinRequestPath, signal?: AbortSignal | undefined): Promise<{ id: number; created?: string | null | undefined; expires?: string | null | undefined; reason?: string | null | undefined; user: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; }>`
|
|
120
|
+
- `api.management.projects.getProjectJoinRequests(projectId: string | number, signal?: AbortSignal | undefined): Promise<{ id: number; created?: string | null | undefined; expires?: string | null | undefined; reason?: string | null | undefined; user: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; }[]>`
|
|
97
121
|
- `api.management.projects.getProjectMetadata(projectId: number, signal?: AbortSignal | undefined): Promise<ProjectMetadataItem[]>`
|
|
98
122
|
- `api.management.projects.getProjectReviewers(projectId: number, signal?: AbortSignal | undefined): Promise<Reviewer[]>`
|
|
123
|
+
- `api.management.projects.getProjectTemplate(templateId: string, signal?: AbortSignal | undefined): Promise<{ id: string; name: string; description: string; expirationDays?: number | null | undefined; billedMonthlyPrice?: number | null | undefined; hasTryModeOn: boolean; defaultBackend: string; }>`
|
|
124
|
+
- `api.management.projects.getProjectTemplateFeatures(templateId: string, signal?: AbortSignal | undefined): Promise<{ id?: number | undefined; name?: string | undefined; type?: string | undefined; title?: string | undefined; description?: string | undefined; created?: string | undefined; }[]>`
|
|
99
125
|
- `api.management.projects.getProjectTemplates(signal?: AbortSignal | undefined): Promise<{ id: string; name: string; description: string; expirationDays?: number | null | undefined; billedMonthlyPrice?: number | null | undefined; hasTryModeOn: boolean; defaultBackend: string; }[]>`
|
|
100
126
|
- `api.management.projects.getProjectUsers(projectId: string | number, signal?: AbortSignal | undefined): Promise<User[]>`
|
|
101
|
-
- `api.management.projects.
|
|
102
|
-
- `api.management.projects.
|
|
127
|
+
- `api.management.projects.joinProject({ projectId, ...body }: JoinProjectInput): Promise<void>`
|
|
128
|
+
- `api.management.projects.moveProject({ projectId, organizationId }: MoveProjectInput): Promise<ProjectBase>`
|
|
129
|
+
- `api.management.projects.rejectProjectJoinRequest({ projectId, joinRequestId }: ProjectJoinRequestPath): Promise<null>`
|
|
130
|
+
- `api.management.projects.removeProjectFeature({ projectId, feature }: RemoveProjectFeaturePath): Promise<null>`
|
|
131
|
+
- `api.management.projects.removeProjectLimit({ projectId, limitName }: { projectId: number; limitName: string; }): Promise<void>`
|
|
132
|
+
- `api.management.projects.removeProjectTemplateFeature({ templateId, featureName, }: { templateId: string; featureName: string; }): Promise<void>`
|
|
103
133
|
- `api.management.projects.removeProjectUser({ projectId, idOrEmail }: RemoveProjectUserPath): Promise<null>`
|
|
104
|
-
- `api.management.projects.
|
|
105
|
-
- `api.management.projects.
|
|
106
|
-
- `api.management.projects.
|
|
134
|
+
- `api.management.projects.requestProjectAccess({ projectId, ...body }: RequestProjectAccessInput): Promise<{ id: number; created?: string | null | undefined; expires?: string | null | undefined; reason?: string | null | undefined; user: { id?: number | undefined; name?: string | undefined; email?: string | undefined; }; }>`
|
|
135
|
+
- `api.management.projects.setProjectDisabled({ projectId, ...body }: SetProjectDisabledInput): Promise<ProjectBase>`
|
|
136
|
+
- `api.management.projects.setProjectLimits({ projectId, ...body }: SetProjectLimitsInput): Promise<Project>`
|
|
137
|
+
- `api.management.projects.setProjectMetadata({ projectId, provider, metadata, }: SetProjectMetadataPath & { provider: "user" | "system"; metadata: { key: string; value: string; }[]; }): Promise<ProjectMetadataItem[]>`
|
|
107
138
|
- `api.management.projects.setProjectReviewers({ projectId, adminIds, }: SetProjectReviewersPath & SetProjectReviewersBody): Promise<void>`
|
|
108
|
-
- `api.management.projects.updateProject({ projectId, ...body }:
|
|
139
|
+
- `api.management.projects.updateProject({ projectId, ...body }: UpdateProjectInput): Promise<ProjectBase>`
|
|
109
140
|
|
|
110
141
|
### `api.management.storageBackends`
|
|
111
142
|
|
|
143
|
+
- `api.management.storageBackends.activateStorageBackend(backendId: number): Promise<{ id: number; backend: string; region: string; owner?: string | null | undefined; technicalOwner: string; technicalOwnerContactEmails: string[]; host?: string | null | undefined; credentials?: Record<string, never> | null | undefined; folderId?: string | null | undefined; useDynamicBackends?: boolean | null | undefined; useNetworkPolicies?: boolean | null | undefined; useSso?: boolean | null | undefined; isSsoEnabled?: boolean | null | undefined; isSsoConfigured?: boolean | null | undefined; isEnabled?: boolean | null | undefined; }>`
|
|
144
|
+
- `api.management.storageBackends.createBigqueryStorageBackend(body: { owner: string; technicalOwner: string; folderId: string; region: string; credentials: Record<string, never>; bqExternalSharingRoleName?: string | null | undefined; }): Promise<{ id: number; backend: string; region: string; owner: string; technicalOwner: string; technicalOwnerContactEmails: string[]; credentials?: Record<string, never> | null | undefined; folderId?: string | null | undefined; bqExternalSharingRoleName?: string | null | undefined; }>`
|
|
145
|
+
- `api.management.storageBackends.createSnowflakeStorageBackend(body: { host: string; warehouse: string; username: string; region: string; owner: string; technicalOwner: string; technicalOwnerContactEmails?: string[] | null | undefined; useDynamicBackends?: boolean | null | undefined; useNetworkPolicies?: boolean | null | undefined; useSso?: boolean | null | undefined; edition?: string | null | undefined; }): Promise<{ id: number; host: string; warehouse: string; username: string; owner: string; technicalOwner: string; region: string; created: string; creatorId: number; creatorName: string; useDynamicBackends: boolean; useNetworkPolicies: boolean; useSso: boolean; isSsoEnabled: boolean; isSsoConfigured: boolean; edition: string; sqlTemplate: string; isEnabled: boolean; userPublicKey: string; securityIntegrationKey?: string | null | undefined; }>`
|
|
146
|
+
- `api.management.storageBackends.deleteStorageBackend(id: number): Promise<void>`
|
|
112
147
|
- `api.management.storageBackends.getStorageBackend(id: number, signal?: AbortSignal | undefined): Promise<StorageBackend>`
|
|
113
148
|
- `api.management.storageBackends.getStorageBackendMaintainers(id: number, signal?: AbortSignal | undefined): Promise<{ id: number; name: string; }[]>`
|
|
114
149
|
- `api.management.storageBackends.getStorageBackendProjects(id: number, query?: { limit?: number | undefined; offset?: number | undefined; } | undefined, signal?: AbortSignal | undefined): Promise<{ id: number; name: string; }[]>`
|
|
115
150
|
- `api.management.storageBackends.getStorageBackends(signal?: AbortSignal | undefined): Promise<StorageBackend[]>`
|
|
151
|
+
- `api.management.storageBackends.updateBigqueryStorageBackend({ id, ...body }: UpdateBigqueryStorageBackendInput): Promise<{ id: number; backend: string; region: string; owner: string; technicalOwner: string; technicalOwnerContactEmails: string[]; credentials?: Record<string, never> | null | undefined; folderId?: string | null | undefined; bqExternalSharingRoleName?: string | null | undefined; }>`
|
|
152
|
+
- `api.management.storageBackends.updateStorageBackend({ id, ...body }: UpdateStorageBackendInput): Promise<{ id: number; backend: string; region: string; owner?: string | null | undefined; technicalOwner: string; technicalOwnerContactEmails: string[]; host?: string | null | undefined; credentials?: Record<string, never> | null | undefined; folderId?: string | null | undefined; useDynamicBackends?: boolean | null | undefined; useNetworkPolicies?: boolean | null | undefined; useSso?: boolean | null | undefined; isSsoEnabled?: boolean | null | undefined; isSsoConfigured?: boolean | null | undefined; isEnabled?: boolean | null | undefined; }>`
|
|
153
|
+
|
|
154
|
+
### `api.management.uiApps`
|
|
155
|
+
|
|
156
|
+
- `api.management.uiApps.activateUiAppVersion({ id, version }: { id: string; version: string; }): Promise<void>`
|
|
157
|
+
- `api.management.uiApps.deleteUiApp(id: string): Promise<void>`
|
|
158
|
+
- `api.management.uiApps.getUiApps(signal?: AbortSignal | undefined): Promise<{ name: string; version: string; basePath: string; type: string; scripts: string[]; styles: string[]; isCritical: boolean; commitSha?: string | null | undefined; }[]>`
|
|
159
|
+
- `api.management.uiApps.registerUiApp(body: { manifestUrl: string; activate?: boolean | null | undefined; }): Promise<{ app: { id?: string | undefined; stringId?: string | undefined; name?: string | undefined; created?: string | undefined; }; version: { id?: string | undefined; version?: string | undefined; isActive?: boolean | undefined; isCritical?: boolean | undefined; commitSha?: string | null | undefined; }; }>`
|
|
116
160
|
|
|
117
161
|
### `api.management.users`
|
|
118
162
|
|
|
119
|
-
- `api.management.users.addUserAdminFeature({ feature, userIdOrMail }: AddUserFeatureBody & AddUserFeaturePath, signal?: AbortSignal | undefined): Promise<
|
|
163
|
+
- `api.management.users.addUserAdminFeature({ feature, userIdOrMail }: AddUserFeatureBody & AddUserFeaturePath, signal?: AbortSignal | undefined): Promise<{ id: number; name: string; email: string; mfaEnabled: boolean; features: string[]; canAccessLogs: boolean; isSuperAdmin: boolean; }>`
|
|
120
164
|
- `api.management.users.deleteUser(id: number, signal?: AbortSignal | undefined): Promise<void>`
|
|
165
|
+
- `api.management.users.deleteUserMetadata({ id, metadataId }: DeleteUserMetadataPath): Promise<void>`
|
|
121
166
|
- `api.management.users.disableUserMfa(id: number, signal?: AbortSignal | undefined): Promise<void>`
|
|
122
167
|
- `api.management.users.getUser(id: number, signal?: AbortSignal | undefined): Promise<{ id: number; name: string; email: string; mfaEnabled: boolean; features: string[]; canAccessLogs: boolean; isSuperAdmin: boolean; }>`
|
|
123
168
|
- `api.management.users.getUserMaintainers(id: number, signal?: AbortSignal | undefined): Promise<{ maintainer: { id: number; name: string | null; }; }[]>`
|
|
169
|
+
- `api.management.users.getUserMetadata(id: number, signal?: AbortSignal | undefined): Promise<{ id?: number | undefined; provider?: string | undefined; timestamp?: string | undefined; key?: string | undefined; value?: string | undefined; }[]>`
|
|
124
170
|
- `api.management.users.getUserOrganizations(id: number, signal?: AbortSignal | undefined): Promise<{ organization: { id: number; name: string; }; created: string | null; invitedBy: { id: number; name: string; email: string; } | null; maintainer: { id: number; name: string | null; }; }[]>`
|
|
125
171
|
- `api.management.users.getUserProjects(id: number, signal?: AbortSignal | undefined): Promise<{ project: { id: number; name: string; }; role: string; status: string; expires: string | null; created: string | null; reason: string; invitedBy: { id: number; name: string; email: string; } | null; }[]>`
|
|
126
172
|
- `api.management.users.getUsers(query?: { q?: string | null | undefined; limit?: number | null | undefined; offset?: number | null | undefined; } | undefined, signal?: AbortSignal | undefined): Promise<{ id: number; name: string; email: string; mfaEnabled: boolean; features: string[]; canAccessLogs: boolean; isSuperAdmin: boolean; organizationsCount: number; projectsCount: number; maintainersCount: number; }[]>`
|
|
127
173
|
- `api.management.users.grantSuperAdmin(id: number, signal?: AbortSignal | undefined): Promise<{ id: number; name: string; email: string; mfaEnabled: boolean; features: string[]; canAccessLogs: boolean; isSuperAdmin: boolean; }>`
|
|
128
174
|
- `api.management.users.removeSuperAdmin(id: number, signal?: AbortSignal | undefined): Promise<{ id: number; name: string; email: string; mfaEnabled: boolean; features: string[]; canAccessLogs: boolean; isSuperAdmin: boolean; }>`
|
|
129
|
-
- `api.management.users.removeUserAdminFeature({ userIdOrMail, feature }: RemoveUserFeaturePath, signal?: AbortSignal | undefined): Promise<
|
|
175
|
+
- `api.management.users.removeUserAdminFeature({ userIdOrMail, feature }: RemoveUserFeaturePath, signal?: AbortSignal | undefined): Promise<{ id: number; name: string; email: string; mfaEnabled: boolean; features: string[]; canAccessLogs: boolean; isSuperAdmin: boolean; }>`
|
|
176
|
+
- `api.management.users.setUserMetadata({ id, ...body }: SetUserMetadataInput): Promise<{ id?: number | undefined; provider?: string | undefined; timestamp?: string | undefined; key?: string | undefined; value?: string | undefined; }[]>`
|
|
177
|
+
- `api.management.users.updateUser({ id, ...body }: UpdateUserInput): Promise<{ id: number; name: string; email: string; mfaEnabled: boolean; features: string[]; canAccessLogs: boolean; isSuperAdmin: boolean; }>`
|
package/surface/oauth.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Part of the [`@keboola/api-client` surface index](../API-SURFACE.md).
|
|
6
6
|
|
|
7
|
-
- `api.oauth.createCredential(componentId
|
|
8
|
-
- `api.oauth.deleteCredential(componentId
|
|
9
|
-
- `api.oauth.getCredential(componentId
|
|
10
|
-
- `api.oauth.getCredentials(
|
|
7
|
+
- `api.oauth.createCredential({ componentId, data, ...rest }: CreateCredentialInput, signal?: AbortSignal | undefined): Promise<{ id: string; branchId: string | null; authorizedFor: string; creator: { id: string; description: string | null; }; created: string; oauthVersion: string; appKey: string; '#appSecret': string; '#data': string; }>`
|
|
8
|
+
- `api.oauth.deleteCredential({ componentId, id }: CredentialInput, signal?: AbortSignal | undefined): Promise<void>`
|
|
9
|
+
- `api.oauth.getCredential({ componentId, id }: CredentialInput, signal?: AbortSignal | undefined): Promise<{ id: string; branchId: string | null; authorizedFor: string; creator: { id: string; description: string | null; }; created: string; oauthVersion: string; appKey: string; '#appSecret': string; '#data': string; }>`
|
|
10
|
+
- `api.oauth.getCredentials(scope: GetCredentialsInput, signal?: AbortSignal | undefined): Promise<{ id: string; branchId: string | null; authorizedFor: string; creator: { id: string; description: string | null; }; created: string; oauthVersion: string; appKey: string; '#appSecret': string; '#data': string; }[]>`
|
package/dist/assets/types.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"types.cjs"}
|
package/dist/assets/types.d.cts
DELETED
package/dist/assets/types.d.ts
DELETED
package/dist/assets/types.js
DELETED
package/dist/assets/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"types.js"}
|
|
@@ -1 +0,0 @@
|
|
|
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"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/errors/ApiError.ts","../src/internal.ts","../src/fetchClient/createFetchClient/utils.ts","../src/fetchClient/createFetchClient/createFetchClient.ts","../src/fetchClient/createGenericFetchClient.ts","../src/fetchClient/createOpenapiFetchClient.ts"],"names":[],"mappings":"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","file":"chunk-3B3GOGAL.js","sourcesContent":["import type { ApiResponse } from '../fetchClient/createFetchClient/types';\n\nexport class ApiError extends Error {\n response: Response;\n request: Request;\n data: unknown;\n\n constructor({ response, request, data }: ApiResponse) {\n super(response.statusText);\n this.response = response;\n this.request = request;\n this.data = data;\n }\n}\n","// Package-internal constants. Not part of the public\n// `@keboola/api-client/constants` sub-path (that is the `constants/` directory).\n\nexport const KeboolaHttpHeader = {\n STORAGE_API_TOKEN: 'X-StorageApi-Token',\n MANAGEMENT_API_TOKEN: 'X-Kbc-Manageapitoken',\n STORAGE_API_URL: 'x-storageapi-url',\n PROJECT_ID: 'X-KBC-ProjectId',\n} as const;\n\nexport const HttpStatus = {\n NO_CONTENT: 204,\n BAD_REQUEST: 400,\n UNAUTHORIZED: 401,\n UNPROCESSABLE_ENTITY: 422,\n INTERNAL_SERVER_ERROR: 500,\n BAD_GATEWAY: 502,\n SERVICE_UNAVAILABLE: 503,\n GATEWAY_TIMEOUT: 504,\n} as const;\n\nexport const ENCRYPTED_VALUE_PREFIX = 'KBC::';\n","import type { IStringifyOptions } from 'qs';\nimport qs from 'qs';\n\nimport { HttpStatus } from '../../internal';\n\nimport type { BodyParam, CreateFetchRequestFn, PathParam, ValidateStatusFn } from './types';\n\n/**\n * Strips trailing slashes from a base URL so concatenating a leading-slash\n * path (e.g. `/v2/storage`) never produces a double slash.\n *\n * Without this, callers that pass `https://connection.keboola.com/` end up\n * issuing requests to `https://connection.keboola.com//v2/storage/...`, which\n * the Storage API rejects with a 404.\n */\nexport const normalizeBaseUrl = (baseUrl: string): string => baseUrl.replace(/\\/+$/, '');\n\nexport const HttpHeader = {\n CONTENT_TYPE: 'content-type',\n CONTENT_DISPOSITION: 'content-disposition',\n AUTHORIZATION: 'Authorization',\n};\n\nexport const HttpContentType = {\n JSON: 'application/json',\n TEXT_PLAIN: 'text/plain',\n FORM_DATA: 'multipart/form-data',\n TEXT_HTML: 'text/html',\n};\n\nexport const defaultValidateStatus: ValidateStatusFn = ({ response }) =>\n response.status >= 200 && response.status <= 299;\n\nfunction removeUndefined(obj: Record<string, string>) {\n const objCopy = { ...obj };\n for (const [key, value] of Object.entries(objCopy)) {\n if (value == null) delete objCopy[key];\n }\n return objCopy;\n}\n\nexport const parseData = async (response: Response) => {\n if (response.status === HttpStatus.NO_CONTENT) return null;\n\n // headers indicates that the content is JSON, so parse it.\n const contentType = response.headers.get(HttpHeader.CONTENT_TYPE);\n if (contentType && contentType == HttpContentType.JSON) {\n return response.json();\n }\n\n // try JSON parsing on the text\n // If it fails, return the string. The headers does not have a content type.\n const text = await response.text();\n try {\n return JSON.parse(text);\n } catch {\n return text;\n }\n};\n\n// Header instance serialize undefined value as `undefined`, we do not want that\nconst cleanHeadersInit = (headersInit: HeadersInit | undefined) => {\n if (Array.isArray(headersInit)) return headersInit;\n if (headersInit instanceof Headers) return headersInit;\n if (headersInit == null) return headersInit;\n\n return removeUndefined(headersInit);\n};\n\nconst createHeaders = (\n headersInitA: HeadersInit | undefined,\n headersInitB: HeadersInit | undefined,\n) => {\n const headersA = new Headers(cleanHeadersInit(headersInitA));\n const headersB = new Headers(cleanHeadersInit(headersInitB));\n\n headersB.forEach((value, key) => {\n headersA.set(key, value);\n });\n\n return headersA;\n};\n\nexport const createPath = (path: string, pathParam: PathParam = {}) =>\n path.replace(/\\{([^}]+)}/g, (_, key) => {\n if (!(key in pathParam))\n throw new Error(`Path parameter \"${key}\" is missing in the path \"${path}\"`);\n\n return encodeURIComponent(pathParam[key]!);\n });\n\nexport const createSearch = (\n query: Record<string, unknown>,\n options: Pick<IStringifyOptions, 'arrayFormat'> = {},\n) => {\n return qs.stringify(query, {\n encodeValuesOnly: true,\n skipNulls: true,\n ...options,\n });\n};\n\nexport const createBody = (body: BodyParam, headers: Headers) => {\n if (body == null) return null;\n if (body instanceof FormData) return body; // fetch automatically sets content-type header\n if (typeof body === 'string') return body; // fetch automatically sets content-type header\n\n const stringifyBody = JSON.stringify(body);\n const stringBody = stringifyBody === '{}' ? null : stringifyBody;\n if (stringBody) headers.set(HttpHeader.CONTENT_TYPE, HttpContentType.JSON);\n\n return stringBody;\n};\n\nexport const parseContentDispositionHeader = (contentDisposition?: string | null) => {\n // extract the type ('inline' or 'attachment'), default the type to 'unknown'\n const type = (() => {\n const typeMatch = contentDisposition?.match(/^\\s*(inline|attachment)\\s*;/i);\n return (typeMatch?.[1]?.toLowerCase() ?? 'unknown') as 'inline' | 'attachment' | 'unknown';\n })();\n\n // extract the filename, default the type to null\n const filename = (() => {\n const filenameMatch = contentDisposition?.match(/filename=\"([^\"]+)\"/i);\n if (filenameMatch) return filenameMatch[1];\n\n // If no filename=\"...\", check for encoded filename*=UTF-8''\n const encodedFilenameMatch = contentDisposition?.match(/filename\\*=(?:UTF-8'')?([^;]+)/i);\n if (encodedFilenameMatch?.[1]) return decodeURIComponent(encodedFilenameMatch[1]);\n\n // Check for unquoted filenames (rare but possible)\n const unquotedFilenameMatch = contentDisposition?.match(/filename=([^;]+)/i);\n return unquotedFilenameMatch?.[1] ?? null;\n })();\n\n // Return the parsed result\n return { type, filename };\n};\n\nexport const createFetchRequest: CreateFetchRequestFn = ({\n url,\n method,\n params,\n options = {},\n defaultOptions,\n}) => {\n const {\n baseUrl,\n validateStatus: defValidateStatus = defaultValidateStatus,\n headers: defaultHeaders,\n ...restDefaultOptions\n } = defaultOptions;\n const { validateStatus, queryArrayFormat, headers: endpointHeaders, ...restOptions } = options;\n\n const headers = createHeaders(defaultHeaders, endpointHeaders);\n const path = createPath(url, params.path);\n const search = createSearch(params.query ?? {}, { arrayFormat: queryArrayFormat });\n const body = createBody(params.body, headers);\n\n const urlInstance = new URL(normalizeBaseUrl(baseUrl) + path);\n urlInstance.search = search;\n\n const request = new Request(urlInstance, {\n ...restDefaultOptions,\n ...restOptions,\n headers,\n method: method.toUpperCase(),\n body,\n });\n\n return { request, validateStatus: validateStatus ?? defValidateStatus };\n};\n","import { ApiError } from '../../errors';\n\nimport type {\n BaseFetchParams,\n CoreFetchFn,\n CreateFetchClientOptions,\n FetchClientOptions,\n FetchFn,\n HttpMethod,\n} from './types';\nimport { createFetchRequest, parseData } from './utils';\n\nexport type FetchClientError = TypeError | ApiError | SyntaxError | DOMException;\n\nexport const isApiError = (error: unknown): error is ApiError => error instanceof ApiError;\n\nexport const isAbortError = (error: unknown): error is DOMException =>\n error instanceof DOMException && error.name === 'AbortError';\n\nexport const isFetchClientError = (error: unknown): error is FetchClientError =>\n error instanceof TypeError || error instanceof SyntaxError || isApiError(error);\n\nconst createCoreFetch =\n (fetchFn: FetchFn): CoreFetchFn =>\n async ({ request, validateStatus }) => {\n const response = await fetchFn(request);\n const data = await parseData(response);\n\n const apiResponse = {\n request,\n response,\n data,\n };\n\n const boolOrError = validateStatus(apiResponse);\n if (isApiError(boolOrError)) throw boolOrError;\n if (!boolOrError) throw new ApiError(apiResponse);\n\n return apiResponse;\n };\n\nexport const createFetchClient = ({\n middlewares = [],\n ...defaultOptions\n}: CreateFetchClientOptions) => {\n const coreFetch = createCoreFetch(defaultOptions.fetchFn ?? fetch);\n const fetchWithMiddlewares = middlewares.reduceRight(\n (next, middleware) => middleware(next),\n coreFetch,\n );\n\n const createFetchMethod =\n (method: HttpMethod) =>\n async (url: string, params: BaseFetchParams, options: FetchClientOptions = {}) => {\n const request = createFetchRequest({\n url,\n method,\n params,\n defaultOptions,\n options,\n });\n\n const methodMiddlewares = options?.middlewares ?? [];\n\n return methodMiddlewares.reduceRight(\n (next, middleware) => middleware(next),\n fetchWithMiddlewares,\n )(request);\n };\n\n return {\n get: createFetchMethod('get'),\n post: createFetchMethod('post'),\n put: createFetchMethod('put'),\n patch: createFetchMethod('patch'),\n delete: createFetchMethod('delete'),\n };\n};\n","import type {\n ApiResponse,\n BodyParam,\n CreateFetchClientOptions,\n FetchClientOptions,\n PathParam,\n QueryParam,\n} from './createFetchClient';\nimport { createFetchClient } from './createFetchClient';\n\ntype FetchParams<Path = PathParam, Query = QueryParam, Body = BodyParam> = {\n path?: Path;\n query?: Query;\n body?: Body;\n};\n\ntype FetchMethod = <Data, Path = PathParam, Query = QueryParam, Body = BodyParam>(\n url: string,\n params: FetchParams<Path, Query, Body>,\n options?: FetchClientOptions,\n) => Promise<ApiResponse<Data>>;\n\ntype FetchClient = {\n get: FetchMethod;\n post: FetchMethod;\n put: FetchMethod;\n patch: FetchMethod;\n delete: FetchMethod;\n};\n\nexport const createGenericFetchClient = (defaultOptions: CreateFetchClientOptions) =>\n createFetchClient(defaultOptions) as FetchClient;\n","import {\n type ApiResponse,\n createFetchClient,\n type CreateFetchClientOptions,\n type FetchClientOptions,\n type HttpMethod,\n} from './createFetchClient';\nimport type { OpenapiParametersType, OpenapiReturnType } from './types';\n\ntype OpenapiPaths<Paths> = {\n [P in keyof Paths]: {\n [M in HttpMethod]?: unknown;\n };\n};\n\ntype PathsWithMethod<Paths extends OpenapiPaths<Paths>, PathnameMethod extends HttpMethod> = {\n [Pathname in keyof Paths]: Paths[Pathname] extends {\n [K in PathnameMethod]: any;\n }\n ? Pathname\n : never;\n}[keyof Paths];\n\ntype FetchMethod<Paths extends OpenapiPaths<Paths>, Method extends HttpMethod> = <\n Path extends PathsWithMethod<Paths, Method>,\n>(\n url: Path,\n params: OpenapiParametersType<Paths[Path][Method]>,\n options?: FetchClientOptions,\n) => Promise<ApiResponse<OpenapiReturnType<Paths[Path][Method]>>>;\n\ntype FetchClient<Paths extends OpenapiPaths<Paths>> = {\n get: FetchMethod<Paths, 'get'>;\n post: FetchMethod<Paths, 'post'>;\n put: FetchMethod<Paths, 'put'>;\n patch: FetchMethod<Paths, 'patch'>;\n delete: FetchMethod<Paths, 'delete'>;\n};\n\nexport const createOpenapiFetchClient = <Paths extends OpenapiPaths<Paths>>(\n defaultOptions: CreateFetchClientOptions,\n) => createFetchClient(defaultOptions) as FetchClient<Paths>;\n"]}
|
package/dist/chunk-43CGBOVT.cjs
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var chunkDMNWPVVT_cjs = require('./chunk-DMNWPVVT.cjs');
|
|
4
|
-
|
|
5
|
-
// src/clients/auth.ts
|
|
6
|
-
var createAuthHeaders = (auth) => {
|
|
7
|
-
if (auth.type === "sapi-token") return { [chunkDMNWPVVT_cjs.KeboolaHttpHeader.STORAGE_API_TOKEN]: auth.token };
|
|
8
|
-
return {
|
|
9
|
-
[chunkDMNWPVVT_cjs.HttpHeader.AUTHORIZATION]: `Bearer ${auth.token}`,
|
|
10
|
-
[chunkDMNWPVVT_cjs.KeboolaHttpHeader.PROJECT_ID]: auth.projectId.toString()
|
|
11
|
-
};
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
exports.createAuthHeaders = createAuthHeaders;
|
|
15
|
-
//# sourceMappingURL=chunk-43CGBOVT.cjs.map
|
|
16
|
-
//# sourceMappingURL=chunk-43CGBOVT.cjs.map
|