@keboola/api-client 23.0.0 → 25.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 +50 -1
- package/README.md +43 -2
- package/dist/{ManagementClientAuthError-B3PZRWBU.d.ts → ManagementClientAuthError-4J0S5tV-.d.ts} +1 -1
- package/dist/{ManagementClientAuthError-CJu_hpGi.d.cts → ManagementClientAuthError-CyDpa4NS.d.cts} +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-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-33NQB34X.js → chunk-AVH6F5LB.js} +50 -36
- package/dist/chunk-AVH6F5LB.js.map +1 -0
- 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-KH6BHTXN.js → chunk-D4WOOKMI.js} +4 -4
- package/dist/chunk-D4WOOKMI.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-35MODDCL.cjs → chunk-F6ZAYTBX.cjs} +4 -4
- package/dist/chunk-F6ZAYTBX.cjs.map +1 -0
- package/dist/{chunk-3KEVPUSX.cjs → chunk-FJBP3MRI.cjs} +4 -3
- package/dist/chunk-FJBP3MRI.cjs.map +1 -0
- 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-HITKHHWN.cjs +174 -0
- package/dist/chunk-HITKHHWN.cjs.map +1 -0
- package/dist/chunk-HMCZUHR7.js +53 -0
- package/dist/chunk-HMCZUHR7.js.map +1 -0
- package/dist/chunk-HTVJR5WS.cjs +305 -0
- package/dist/chunk-HTVJR5WS.cjs.map +1 -0
- package/dist/{chunk-22D55AHX.cjs → chunk-HY7J3OD3.cjs} +444 -157
- package/dist/chunk-HY7J3OD3.cjs.map +1 -0
- package/dist/{chunk-Z76DIRLA.cjs → chunk-IAYPOSMM.cjs} +11 -4
- package/dist/{chunk-4IEIVLYT.js.map → chunk-IAYPOSMM.cjs.map} +1 -1
- 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-XMC355U2.js → chunk-KEFXOJD7.js} +4 -3
- package/dist/chunk-KEFXOJD7.js.map +1 -0
- 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-LNZP2O4P.js +169 -0
- package/dist/chunk-LNZP2O4P.js.map +1 -0
- package/dist/{chunk-DMNWPVVT.cjs → chunk-MMOAH3EH.cjs} +71 -6
- package/dist/chunk-MMOAH3EH.cjs.map +1 -0
- package/dist/chunk-N4COL54U.cjs +22 -0
- package/dist/chunk-N4COL54U.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-4IEIVLYT.js → chunk-RVBGE2Z4.js} +10 -3
- package/dist/chunk-RVBGE2Z4.js.map +1 -0
- 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-UQ5CACMW.js +283 -0
- package/dist/chunk-UQ5CACMW.js.map +1 -0
- 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-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-YGEJDWGG.js +19 -0
- package/dist/chunk-YGEJDWGG.js.map +1 -0
- package/dist/{chunk-HZSZQFEO.cjs → chunk-Z3HZ4MP4.cjs} +55 -41
- package/dist/chunk-Z3HZ4MP4.cjs.map +1 -0
- package/dist/constants/index.cjs +18 -166
- package/dist/constants/index.cjs.map +1 -1
- package/dist/constants/index.d.cts +1 -0
- package/dist/constants/index.d.ts +1 -0
- package/dist/constants/index.js +2 -163
- package/dist/constants/index.js.map +1 -1
- package/dist/{createGenericFetchClient-DJ-oaxPj.d.cts → createGenericFetchClient-JcbIIqwF.d.cts} +1 -1
- package/dist/{createGenericFetchClient-B2Gp1a8f.d.ts → createGenericFetchClient-ZGG5wbAC.d.ts} +1 -1
- package/dist/{createOpenapiFetchClient-BX7_szVZ.d.ts → createOpenapiFetchClient-6RX67Hws.d.ts} +2 -2
- package/dist/{createOpenapiFetchClient-pguVgT7R.d.cts → createOpenapiFetchClient-BFmiJ9C5.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 +116 -105
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +144 -68
- package/dist/index.d.ts +144 -68
- package/dist/index.js +36 -33
- 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-BV-vseKc.d.ts → project-CXqPYo4T.d.ts} +1 -1
- package/dist/{project-CbJCjkdt.d.cts → project-CZPvcxRW.d.cts} +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 +5 -3
- package/dist/sdk/configurations/index.d.cts +12 -11
- package/dist/sdk/configurations/index.d.ts +12 -11
- package/dist/sdk/configurations/index.js +4 -2
- 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.cjs +11 -11
- package/dist/sdk/storage/index.d.cts +7 -7
- package/dist/sdk/storage/index.d.ts +7 -7
- package/dist/sdk/storage/index.js +1 -1
- 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 +20 -11
- package/dist/storage/index.d.cts +26 -8
- package/dist/storage/index.d.ts +26 -8
- package/dist/storage/index.js +5 -4
- package/dist/storage/types.d.cts +74 -18
- package/dist/storage/types.d.ts +74 -18
- package/dist/{storageClient-Dlu7OJgJ.d.cts → storageClient-Cd4jVt58.d.ts} +14 -13
- package/dist/{storageClient-Dz4tTWOc.d.ts → storageClient-Dkcg7hKa.d.cts} +14 -13
- package/dist/{storageSdk-PRaSLkD6.d.ts → storageSdk-15_Fbucc.d.cts} +3 -3
- package/dist/{storageSdk-DxbSjnHh.d.cts → storageSdk-L6NOdgSJ.d.ts} +3 -3
- 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 +8 -4
- package/dist/syncActions/index.d.cts +27 -7
- package/dist/syncActions/index.d.ts +27 -7
- package/dist/syncActions/index.js +7 -3
- package/dist/syncActions/types.d.cts +56 -10
- package/dist/syncActions/types.d.ts +56 -10
- 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-CJ0RgA57.d.ts → types-00IaLn3S.d.ts} +161 -2
- 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-Bj3fLP0h.d.ts → types-BieLFMW1.d.cts} +1 -1
- package/dist/{types-B3hgDuaG.d.cts → types-BqC3U0k0.d.cts} +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-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-Cnsa5tWp.d.ts → types-Dkipk6NN.d.ts} +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-DqxZDbM1.d.cts → types-UwuKN9Kx.d.cts} +3 -1
- package/dist/{types-DqxZDbM1.d.ts → types-UwuKN9Kx.d.ts} +3 -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/{types-CfIKhNMg.d.cts → types-sVyfECai.d.cts} +161 -2
- 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/chat.md +1 -1
- package/surface/import.md +2 -1
- package/surface/kaiAgent.md +1 -1
- package/surface/management.md +77 -29
- package/surface/oauth.md +4 -4
- package/surface/queue.md +7 -7
- package/surface/sdk.md +1 -1
- package/surface/storage.md +9 -8
- package/surface/syncActions.md +6 -1
- 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-33NQB34X.js.map +0 -1
- package/dist/chunk-35MODDCL.cjs.map +0 -1
- package/dist/chunk-3B3GOGAL.js.map +0 -1
- package/dist/chunk-3FZHFTLG.cjs +0 -12
- package/dist/chunk-3FZHFTLG.cjs.map +0 -1
- package/dist/chunk-3KEVPUSX.cjs.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-GM3AKU5T.js +0 -10
- package/dist/chunk-GM3AKU5T.js.map +0 -1
- package/dist/chunk-HZSZQFEO.cjs.map +0 -1
- package/dist/chunk-KH6BHTXN.js.map +0 -1
- package/dist/chunk-PEC3BYFA.js +0 -42
- package/dist/chunk-PEC3BYFA.js.map +0 -1
- package/dist/chunk-Q7C2IRF2.cjs +0 -214
- package/dist/chunk-Q7C2IRF2.cjs.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-WJEAGAWB.js +0 -192
- package/dist/chunk-WJEAGAWB.js.map +0 -1
- package/dist/chunk-XMC355U2.js.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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/clients/dataScience/schemas.ts","../src/clients/dataScience/utils.ts","../src/clients/dataScience/dataScienceClient.ts"],"names":["z","dayjs","utc","isPlainObject","createOpenapiFetchClient","createAuthHeaders","parseContentDispositionHeader","HttpHeader","isApiError","HttpStatus"],"mappings":"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","file":"chunk-BWBTNAVL.cjs","sourcesContent":["import * as z from 'zod';\n\nexport const TailError = z.object({\n context: z.object({\n code: z.string(),\n }),\n});\n","import dayjs from 'dayjs';\nimport utc from 'dayjs/plugin/utc.js';\n\nimport { isPlainObject } from '../../utils/isPlainObject';\n\nimport type { RawAppRun } from './types';\n\ndayjs.extend(utc);\n\nexport type LogEntry = {\n timestamp: string | null;\n message: string;\n};\n\nconst ISO_TIMESTAMP_REGEX = /\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?Z/;\nconst LEADING_ISO_TIMESTAMP_REGEX = /^(\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?Z)\\s?/;\n\nconst tryParseJsonl = (line: string): LogEntry | null => {\n if (!line.startsWith('{')) return null;\n\n let parsed: unknown;\n try {\n parsed = JSON.parse(line);\n } catch {\n return null;\n }\n\n if (typeof parsed !== 'object' || parsed === null) return null;\n\n const record = parsed as Record<string, unknown>;\n const { timestamp, message } = record;\n\n if (typeof timestamp !== 'string' || typeof message !== 'string') return null;\n\n return {\n timestamp,\n message,\n };\n};\n\nconst parsePlainTextLine = (line: string): LogEntry => {\n const match = line.match(LEADING_ISO_TIMESTAMP_REGEX);\n if (match) {\n return { timestamp: match[1]!, message: line.slice(match[0].length) };\n }\n return { timestamp: null, message: line };\n};\n\nexport const parseLogLine = (line: string): LogEntry =>\n tryParseJsonl(line) ?? parsePlainTextLine(line);\n\nconst toLogEntryFromObject = (raw: Record<string, unknown>): LogEntry | null => {\n if (typeof raw.message !== 'string') return null;\n return {\n timestamp: typeof raw.timestamp === 'string' ? raw.timestamp : null,\n message: raw.message,\n };\n};\n\nexport const parseLogLines = (raw: unknown): LogEntry[] => {\n if (raw === null || raw === undefined || raw === '') return [];\n\n if (Array.isArray(raw)) {\n return raw.flatMap((item) => {\n if (typeof item === 'string') return item === '' ? [] : [parseLogLine(item)];\n if (isPlainObject(item)) {\n const entry = toLogEntryFromObject(item);\n return entry ? [entry] : [];\n }\n return [];\n });\n }\n\n if (isPlainObject(raw)) {\n const entry = toLogEntryFromObject(raw);\n return entry ? [entry] : [];\n }\n\n if (typeof raw !== 'string') return [];\n\n const lines = raw.split('\\n');\n const entries: LogEntry[] = [];\n for (const line of lines) {\n if (line === '') continue;\n entries.push(parseLogLine(line));\n }\n return entries;\n};\n\nexport const parseLastLogTimestamp = (logs: unknown) => {\n const entries = parseLogLines(logs);\n for (let i = entries.length - 1; i >= 0; i--) {\n const entry = entries[i];\n if (!entry) continue;\n if (entry.timestamp) return entry.timestamp;\n\n // A plain-text line may carry a timestamp embedded mid-line (legacy format).\n const match = entry.message.match(ISO_TIMESTAMP_REGEX);\n if (match) return match[0];\n }\n return null;\n};\n\nexport const calculateNextLogTimestamp = (timestamp: string | null) => {\n if (timestamp === null) return null;\n return dayjs(timestamp).utc().add(1, 'second').utc().format();\n};\n\nexport const prepareAppRun = (appRun: RawAppRun) => {\n return {\n ...appRun,\n state: appRun.state ?? (appRun.stoppedAt ? 'finished' : 'running'), // fallback state for historic non migrated runs\n };\n};\n","import {\n createOpenapiFetchClient,\n HttpHeader,\n isApiError,\n parseContentDispositionHeader,\n} from '../../fetchClient';\nimport { HttpStatus } from '../../internal';\nimport { createAuthHeaders } from '../auth';\nimport type { ClientInitOptions } from '../types';\n\nimport type { paths } from './__generated__/schema';\nimport { TailError } from './schemas';\nimport type {\n CreateDataAppBody,\n DeleteDataAppPath,\n DeleteSandboxPath,\n GetAppsQuery,\n GetDataAppLogsDownloadPath,\n GetDataAppLogsTailPath,\n GetDataAppLogsTailQuery,\n GetDataAppPasswordPath,\n GetDataAppPath,\n GetDataAppRunPath,\n GetDataAppRunsPath,\n GetDataAppRunsQuery,\n GetSandboxPath,\n PatchDataAppBody,\n PatchDataAppPath,\n ResetDataAppPasswordPath,\n} from './types';\nimport {\n calculateNextLogTimestamp,\n parseLastLogTimestamp,\n parseLogLines,\n prepareAppRun,\n} from './utils';\n\nexport const createDataScienceClient = ({ baseUrl, middlewares, auth }: ClientInitOptions) => {\n const client = createOpenapiFetchClient<paths>({\n baseUrl,\n middlewares,\n headers: createAuthHeaders(auth),\n });\n\n const getAppRuns = async (\n appId: GetDataAppRunsPath['appId'],\n query?: GetDataAppRunsQuery,\n signal?: AbortSignal,\n ) => {\n const { data } = await client.get('/apps/{appId}/runs', { path: { appId }, query }, { signal });\n\n return data.map(prepareAppRun);\n };\n\n const getAppRun = async (\n appId: GetDataAppRunPath['appId'],\n runId: GetDataAppRunPath['runId'],\n signal?: AbortSignal,\n ) => {\n const { data } = await client.get(\n '/apps/{appId}/runs/{runId}',\n { path: { appId, runId } },\n { signal },\n );\n\n return prepareAppRun(data);\n };\n\n const getAppLogsDownload = async (\n id: GetDataAppLogsDownloadPath['appId'],\n signal?: AbortSignal,\n ) => {\n const { data, response } = await client.get(\n '/apps/{appId}/logs/download',\n { path: { appId: id } },\n { signal },\n );\n\n const contentDisposition = parseContentDispositionHeader(\n response.headers.get(HttpHeader.CONTENT_DISPOSITION),\n );\n\n return {\n logs: data,\n fileName: contentDisposition?.filename ?? 'logs.txt',\n };\n };\n\n const getAppLogsTail = async (\n id: GetDataAppLogsTailPath['appId'],\n { query, signal }: { query?: GetDataAppLogsTailQuery; signal?: AbortSignal } = {},\n ) => {\n try {\n const { data } = await client.get(\n '/apps/{appId}/logs/tail',\n {\n query,\n path: {\n appId: id,\n },\n },\n {\n signal,\n },\n );\n\n const logs = data === '' ? null : data;\n const lastLogTimestamp = parseLastLogTimestamp(logs);\n const nextLogTimestamp = calculateNextLogTimestamp(lastLogTimestamp);\n\n return {\n entries: parseLogLines(logs),\n nextLogTimestamp: nextLogTimestamp,\n };\n } catch (error) {\n if (\n isApiError(error) &&\n error.response.status === HttpStatus.BAD_REQUEST &&\n TailError.safeParse(error.data).data?.context?.code === 'apps.appNotRunning'\n ) {\n return { entries: [], nextLogTimestamp: null };\n }\n throw error;\n }\n };\n\n const getApps = async (query: GetAppsQuery, signal?: AbortSignal) => {\n const { data } = await client.get('/apps', { query }, { signal });\n\n return data;\n };\n\n const getApp = async (appId: GetDataAppPath['appId'], signal?: AbortSignal) => {\n const { data } = await client.get('/apps/{appId}', { path: { appId } }, { signal });\n\n return data;\n };\n\n const createApp = async (body: CreateDataAppBody, signal?: AbortSignal) => {\n const { data } = await client.post('/apps', { body }, { signal });\n\n return data;\n };\n\n const patchApp = async (\n appId: PatchDataAppPath['appId'],\n body: PatchDataAppBody,\n signal?: AbortSignal,\n ) => {\n const { data } = await client.patch(\n '/apps/{appId}',\n {\n path: { appId: appId },\n body: body,\n },\n { signal },\n );\n return data;\n };\n\n const deleteApp = async (appId: DeleteDataAppPath['appId'], signal?: AbortSignal) => {\n return client.delete('/apps/{appId}', { path: { appId } }, { signal });\n };\n\n const getAppPassword = async (appId: GetDataAppPasswordPath['appId'], signal?: AbortSignal) => {\n const { data } = await client.get('/apps/{appId}/password', { path: { appId } }, { signal });\n\n return data;\n };\n\n const resetAppPassword = async (\n appId: ResetDataAppPasswordPath['appId'],\n signal?: AbortSignal,\n ) => {\n const { data } = await client.post(\n '/apps/{appId}/reset-password',\n { path: { appId } },\n { signal },\n );\n\n return data;\n };\n\n const getRuntimes = async (signal?: AbortSignal) => {\n const { data } = await client.get('/runtimes', {}, { signal });\n\n return data;\n };\n\n const getSandbox = async (appId: GetSandboxPath['appId'], signal?: AbortSignal) => {\n const { data } = await client.get('/sandboxes/{appId}', { path: { appId } }, { signal });\n\n return data;\n };\n\n const deleteSandbox = async (appId: DeleteSandboxPath['appId'], signal?: AbortSignal) => {\n return client.delete('/sandboxes/{appId}', { path: { appId } }, { signal });\n };\n\n return {\n getAppRuns,\n getAppRun,\n getAppLogsDownload,\n getAppLogsTail,\n getApps,\n getApp,\n createApp,\n patchApp,\n deleteApp,\n getAppPassword,\n resetAppPassword,\n getRuntimes,\n getSandbox,\n deleteSandbox,\n };\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/clients/dataScience/schemas.ts","../src/clients/dataScience/utils.ts","../src/clients/dataScience/dataScienceClient.ts"],"names":["z","dayjs","utc","isPlainObject","createOpenapiFetchClient","createAuthHeaders","parseContentDispositionHeader","HttpHeader","isApiError","HttpStatus"],"mappings":"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","file":"chunk-L262THNK.cjs","sourcesContent":["import * as z from 'zod';\n\nexport const TailError = z.object({\n context: z.object({\n code: z.string(),\n }),\n});\n","import dayjs from 'dayjs';\nimport utc from 'dayjs/plugin/utc.js';\n\nimport { isPlainObject } from '../../utils/isPlainObject';\n\nimport type { RawAppRun } from './types';\n\ndayjs.extend(utc);\n\nexport type LogEntry = {\n timestamp: string | null;\n message: string;\n};\n\nconst ISO_TIMESTAMP_REGEX = /\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?Z/;\nconst LEADING_ISO_TIMESTAMP_REGEX = /^(\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?Z)\\s?/;\n\nconst tryParseJsonl = (line: string): LogEntry | null => {\n if (!line.startsWith('{')) return null;\n\n let parsed: unknown;\n try {\n parsed = JSON.parse(line);\n } catch {\n return null;\n }\n\n if (typeof parsed !== 'object' || parsed === null) return null;\n\n const record = parsed as Record<string, unknown>;\n const { timestamp, message } = record;\n\n if (typeof timestamp !== 'string' || typeof message !== 'string') return null;\n\n return {\n timestamp,\n message,\n };\n};\n\nconst parsePlainTextLine = (line: string): LogEntry => {\n const match = line.match(LEADING_ISO_TIMESTAMP_REGEX);\n if (match) {\n return { timestamp: match[1]!, message: line.slice(match[0].length) };\n }\n return { timestamp: null, message: line };\n};\n\nexport const parseLogLine = (line: string): LogEntry =>\n tryParseJsonl(line) ?? parsePlainTextLine(line);\n\nconst toLogEntryFromObject = (raw: Record<string, unknown>): LogEntry | null => {\n if (typeof raw.message !== 'string') return null;\n return {\n timestamp: typeof raw.timestamp === 'string' ? raw.timestamp : null,\n message: raw.message,\n };\n};\n\nexport const parseLogLines = (raw: unknown): LogEntry[] => {\n if (raw === null || raw === undefined || raw === '') return [];\n\n if (Array.isArray(raw)) {\n return raw.flatMap((item) => {\n if (typeof item === 'string') return item === '' ? [] : [parseLogLine(item)];\n if (isPlainObject(item)) {\n const entry = toLogEntryFromObject(item);\n return entry ? [entry] : [];\n }\n return [];\n });\n }\n\n if (isPlainObject(raw)) {\n const entry = toLogEntryFromObject(raw);\n return entry ? [entry] : [];\n }\n\n if (typeof raw !== 'string') return [];\n\n const lines = raw.split('\\n');\n const entries: LogEntry[] = [];\n for (const line of lines) {\n if (line === '') continue;\n entries.push(parseLogLine(line));\n }\n return entries;\n};\n\nexport const parseLastLogTimestamp = (logs: unknown) => {\n const entries = parseLogLines(logs);\n for (let i = entries.length - 1; i >= 0; i--) {\n const entry = entries[i];\n if (!entry) continue;\n if (entry.timestamp) return entry.timestamp;\n\n // A plain-text line may carry a timestamp embedded mid-line (legacy format).\n const match = entry.message.match(ISO_TIMESTAMP_REGEX);\n if (match) return match[0];\n }\n return null;\n};\n\nexport const calculateNextLogTimestamp = (timestamp: string | null) => {\n if (timestamp === null) return null;\n return dayjs(timestamp).utc().add(1, 'second').utc().format();\n};\n\nexport const prepareAppRun = (appRun: RawAppRun) => {\n return {\n ...appRun,\n state: appRun.state ?? (appRun.stoppedAt ? 'finished' : 'running'), // fallback state for historic non migrated runs\n };\n};\n","import {\n createOpenapiFetchClient,\n HttpHeader,\n isApiError,\n parseContentDispositionHeader,\n} from '../../fetchClient';\nimport { HttpStatus } from '../../internal';\nimport { createAuthHeaders } from '../auth';\nimport type { ClientInitOptions } from '../types';\n\nimport type { paths } from './__generated__/schema';\nimport { TailError } from './schemas';\nimport type {\n CreateDataAppBody,\n DeleteDataAppPath,\n DeleteSandboxPath,\n GetAppsQuery,\n GetDataAppLogsDownloadPath,\n GetDataAppLogsTailPath,\n GetDataAppLogsTailQuery,\n GetDataAppPasswordPath,\n GetDataAppPath,\n GetDataAppRunPath,\n GetDataAppRunsPath,\n GetDataAppRunsQuery,\n GetSandboxPath,\n PatchDataAppBody,\n PatchDataAppPath,\n ResetDataAppPasswordPath,\n} from './types';\nimport {\n calculateNextLogTimestamp,\n parseLastLogTimestamp,\n parseLogLines,\n prepareAppRun,\n} from './utils';\n\nexport const createDataScienceClient = ({ baseUrl, middlewares, auth }: ClientInitOptions) => {\n const client = createOpenapiFetchClient<paths>({\n baseUrl,\n middlewares,\n headers: createAuthHeaders(auth),\n });\n\n const getAppRuns = async (\n appId: GetDataAppRunsPath['appId'],\n query?: GetDataAppRunsQuery,\n signal?: AbortSignal,\n ) => {\n const { data } = await client.get('/apps/{appId}/runs', { path: { appId }, query }, { signal });\n\n return data.map(prepareAppRun);\n };\n\n const getAppRun = async (\n appId: GetDataAppRunPath['appId'],\n runId: GetDataAppRunPath['runId'],\n signal?: AbortSignal,\n ) => {\n const { data } = await client.get(\n '/apps/{appId}/runs/{runId}',\n { path: { appId, runId } },\n { signal },\n );\n\n return prepareAppRun(data);\n };\n\n const getAppLogsDownload = async (\n id: GetDataAppLogsDownloadPath['appId'],\n signal?: AbortSignal,\n ) => {\n const { data, response } = await client.get(\n '/apps/{appId}/logs/download',\n { path: { appId: id } },\n { signal },\n );\n\n const contentDisposition = parseContentDispositionHeader(\n response.headers.get(HttpHeader.CONTENT_DISPOSITION),\n );\n\n return {\n logs: data,\n fileName: contentDisposition?.filename ?? 'logs.txt',\n };\n };\n\n const getAppLogsTail = async (\n id: GetDataAppLogsTailPath['appId'],\n { query, signal }: { query?: GetDataAppLogsTailQuery; signal?: AbortSignal } = {},\n ) => {\n try {\n const { data } = await client.get(\n '/apps/{appId}/logs/tail',\n {\n query,\n path: {\n appId: id,\n },\n },\n {\n signal,\n },\n );\n\n const logs = data === '' ? null : data;\n const lastLogTimestamp = parseLastLogTimestamp(logs);\n const nextLogTimestamp = calculateNextLogTimestamp(lastLogTimestamp);\n\n return {\n entries: parseLogLines(logs),\n nextLogTimestamp: nextLogTimestamp,\n };\n } catch (error) {\n if (\n isApiError(error) &&\n error.response.status === HttpStatus.BAD_REQUEST &&\n TailError.safeParse(error.data).data?.context?.code === 'apps.appNotRunning'\n ) {\n return { entries: [], nextLogTimestamp: null };\n }\n throw error;\n }\n };\n\n const getApps = async (query: GetAppsQuery, signal?: AbortSignal) => {\n const { data } = await client.get('/apps', { query }, { signal });\n\n return data;\n };\n\n const getApp = async (appId: GetDataAppPath['appId'], signal?: AbortSignal) => {\n const { data } = await client.get('/apps/{appId}', { path: { appId } }, { signal });\n\n return data;\n };\n\n const createApp = async (body: CreateDataAppBody, signal?: AbortSignal) => {\n const { data } = await client.post('/apps', { body }, { signal });\n\n return data;\n };\n\n const patchApp = async (\n appId: PatchDataAppPath['appId'],\n body: PatchDataAppBody,\n signal?: AbortSignal,\n ) => {\n const { data } = await client.patch(\n '/apps/{appId}',\n {\n path: { appId: appId },\n body: body,\n },\n { signal },\n );\n return data;\n };\n\n const deleteApp = async (appId: DeleteDataAppPath['appId'], signal?: AbortSignal) => {\n return client.delete('/apps/{appId}', { path: { appId } }, { signal });\n };\n\n const getAppPassword = async (appId: GetDataAppPasswordPath['appId'], signal?: AbortSignal) => {\n const { data } = await client.get('/apps/{appId}/password', { path: { appId } }, { signal });\n\n return data;\n };\n\n const resetAppPassword = async (\n appId: ResetDataAppPasswordPath['appId'],\n signal?: AbortSignal,\n ) => {\n const { data } = await client.post(\n '/apps/{appId}/reset-password',\n { path: { appId } },\n { signal },\n );\n\n return data;\n };\n\n const getRuntimes = async (signal?: AbortSignal) => {\n const { data } = await client.get('/runtimes', {}, { signal });\n\n return data;\n };\n\n const getSandbox = async (appId: GetSandboxPath['appId'], signal?: AbortSignal) => {\n const { data } = await client.get('/sandboxes/{appId}', { path: { appId } }, { signal });\n\n return data;\n };\n\n const deleteSandbox = async (appId: DeleteSandboxPath['appId'], signal?: AbortSignal) => {\n return client.delete('/sandboxes/{appId}', { path: { appId } }, { signal });\n };\n\n return {\n getAppRuns,\n getAppRun,\n getAppLogsDownload,\n getAppLogsTail,\n getApps,\n getApp,\n createApp,\n patchApp,\n deleteApp,\n getAppPassword,\n resetAppPassword,\n getRuntimes,\n getSandbox,\n deleteSandbox,\n };\n};\n"]}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { createAuthHeaders } from './chunk-EDX5D6UY.js';
|
|
2
|
+
import { createOpenapiFetchClient, isApiError, HttpStatus } from './chunk-XHDYLUM4.js';
|
|
3
|
+
|
|
4
|
+
// src/clients/oauth/utils.ts
|
|
5
|
+
var encodeCredentialsData = (data, format) => format === "encrypted" ? { "#data": JSON.stringify(data) } : { data };
|
|
6
|
+
var getScopedBranchId = (scope) => {
|
|
7
|
+
switch (scope.scope) {
|
|
8
|
+
case "all":
|
|
9
|
+
return void 0;
|
|
10
|
+
case "branchless":
|
|
11
|
+
return "null";
|
|
12
|
+
case "branched":
|
|
13
|
+
return scope.branchId;
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
// src/clients/oauth/oauthClient.ts
|
|
18
|
+
var createOauthClient = ({ baseUrl, middlewares, auth }) => {
|
|
19
|
+
const client = createOpenapiFetchClient({
|
|
20
|
+
baseUrl,
|
|
21
|
+
middlewares,
|
|
22
|
+
headers: createAuthHeaders(auth)
|
|
23
|
+
});
|
|
24
|
+
const getCredentials = async (scope, signal) => {
|
|
25
|
+
const { data } = await client.get(
|
|
26
|
+
"/credentials",
|
|
27
|
+
{ query: { branchId: getScopedBranchId(scope), componentId: scope.componentId } },
|
|
28
|
+
{ signal }
|
|
29
|
+
);
|
|
30
|
+
return data;
|
|
31
|
+
};
|
|
32
|
+
const getCredential = async ({ componentId, id }, signal) => {
|
|
33
|
+
const { data } = await client.get(
|
|
34
|
+
"/credentials/{componentId}/{name}",
|
|
35
|
+
{ path: { componentId, name: id } },
|
|
36
|
+
{ signal }
|
|
37
|
+
);
|
|
38
|
+
return data;
|
|
39
|
+
};
|
|
40
|
+
const createCredential = async ({ componentId, data, ...rest }, signal) => {
|
|
41
|
+
const post = (format) => client.post(
|
|
42
|
+
"/credentials/{componentId}",
|
|
43
|
+
{
|
|
44
|
+
path: { componentId },
|
|
45
|
+
// The plain shape predates the spec, so no schema can describe it. It borrows the
|
|
46
|
+
// encrypted field's type to get past the generated body — the one assertion here.
|
|
47
|
+
body: { ...rest, ...encodeCredentialsData(data, format) }
|
|
48
|
+
},
|
|
49
|
+
{ signal }
|
|
50
|
+
).then((response) => response.data);
|
|
51
|
+
try {
|
|
52
|
+
return await post("plain");
|
|
53
|
+
} catch (error) {
|
|
54
|
+
if (isApiError(error) && error.response.status === HttpStatus.UNPROCESSABLE_ENTITY) {
|
|
55
|
+
return post("encrypted");
|
|
56
|
+
}
|
|
57
|
+
throw error;
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
const deleteCredential = async ({ componentId, id }, signal) => {
|
|
61
|
+
await client.delete(
|
|
62
|
+
"/credentials/{componentId}/{name}",
|
|
63
|
+
{ path: { componentId, name: id } },
|
|
64
|
+
{ signal }
|
|
65
|
+
);
|
|
66
|
+
};
|
|
67
|
+
return {
|
|
68
|
+
getCredentials,
|
|
69
|
+
getCredential,
|
|
70
|
+
createCredential,
|
|
71
|
+
deleteCredential
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
export { createOauthClient };
|
|
76
|
+
//# sourceMappingURL=chunk-LD3JERYP.js.map
|
|
77
|
+
//# sourceMappingURL=chunk-LD3JERYP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/clients/oauth/utils.ts","../src/clients/oauth/oauthClient.ts"],"names":[],"mappings":";;;;AA+BO,IAAM,qBAAA,GAAwB,CACnC,IAAA,EACA,MAAA,KACI,WAAW,WAAA,GAAc,EAAE,OAAA,EAAS,IAAA,CAAK,SAAA,CAAU,IAAI,CAAA,EAAE,GAAI,EAAE,IAAA,EAAK;AAEnE,IAAM,iBAAA,GAAoB,CAAC,KAAA,KAA+B;AAC/D,EAAA,QAAQ,MAAM,KAAA;AAAO,IACnB,KAAK,KAAA;AACH,MAAA,OAAO,MAAA;AAAA,IACT,KAAK,YAAA;AACH,MAAA,OAAO,MAAA;AAAA,IACT,KAAK,UAAA;AACH,MAAA,OAAO,KAAA,CAAM,QAAA;AAAA;AAEnB,CAAA;;;ACnCO,IAAM,oBAAoB,CAAC,EAAE,OAAA,EAAS,WAAA,EAAa,MAAK,KAAyB;AACtF,EAAA,MAAM,SAAS,wBAAA,CAAgC;AAAA,IAC7C,OAAA;AAAA,IACA,WAAA;AAAA,IACA,OAAA,EAAS,kBAAkB,IAAI;AAAA,GAChC,CAAA;AAED,EAAA,MAAM,cAAA,GAAiB,OAAO,KAAA,EAA4B,MAAA,KAAyB;AACjF,IAAA,MAAM,EAAE,IAAA,EAAK,GAAI,MAAM,MAAA,CAAO,GAAA;AAAA,MAC5B,cAAA;AAAA,MACA,EAAE,KAAA,EAAO,EAAE,QAAA,EAAU,iBAAA,CAAkB,KAAK,CAAA,EAAG,WAAA,EAAa,KAAA,CAAM,WAAA,EAAY,EAAE;AAAA,MAChF,EAAE,MAAA;AAAO,KACX;AACA,IAAA,OAAO,IAAA;AAAA,EACT,CAAA;AAEA,EAAA,MAAM,gBAAgB,OAAO,EAAE,WAAA,EAAa,EAAA,IAAuB,MAAA,KAAyB;AAC1F,IAAA,MAAM,EAAE,IAAA,EAAK,GAAI,MAAM,MAAA,CAAO,GAAA;AAAA,MAC5B,mCAAA;AAAA,MACA,EAAE,IAAA,EAAM,EAAE,WAAA,EAAa,IAAA,EAAM,IAAG,EAAE;AAAA,MAClC,EAAE,MAAA;AAAO,KACX;AACA,IAAA,OAAO,IAAA;AAAA,EACT,CAAA;AAEA,EAAA,MAAM,gBAAA,GAAmB,OACvB,EAAE,WAAA,EAAa,MAAM,GAAG,IAAA,IACxB,MAAA,KACG;AACH,IAAA,MAAM,IAAA,GAAO,CAAC,MAAA,KACZ,MAAA,CACG,IAAA;AAAA,MACC,4BAAA;AAAA,MACA;AAAA,QACE,IAAA,EAAM,EAAE,WAAA,EAAY;AAAA;AAAA;AAAA,QAGpB,IAAA,EAAM,EAAE,GAAG,IAAA,EAAM,GAAI,qBAAA,CAAsB,IAAA,EAAM,MAAM,CAAA;AAA0B,OACnF;AAAA,MACA,EAAE,MAAA;AAAO,KACX,CACC,IAAA,CAAK,CAAC,QAAA,KAAa,SAAS,IAAI,CAAA;AAErC,IAAA,IAAI;AACF,MAAA,OAAO,MAAM,KAAK,OAAO,CAAA;AAAA,IAC3B,SAAS,KAAA,EAAO;AACd,MAAA,IAAI,WAAW,KAAK,CAAA,IAAK,MAAM,QAAA,CAAS,MAAA,KAAW,WAAW,oBAAA,EAAsB;AAClF,QAAA,OAAO,KAAK,WAAW,CAAA;AAAA,MACzB;AACA,MAAA,MAAM,KAAA;AAAA,IACR;AAAA,EACF,CAAA;AAEA,EAAA,MAAM,mBAAmB,OAAO,EAAE,WAAA,EAAa,EAAA,IAAuB,MAAA,KAAyB;AAC7F,IAAA,MAAM,MAAA,CAAO,MAAA;AAAA,MACX,mCAAA;AAAA,MACA,EAAE,IAAA,EAAM,EAAE,WAAA,EAAa,IAAA,EAAM,IAAG,EAAE;AAAA,MAClC,EAAE,MAAA;AAAO,KACX;AAAA,EACF,CAAA;AAEA,EAAA,OAAO;AAAA,IACL,cAAA;AAAA,IACA,aAAA;AAAA,IACA,gBAAA;AAAA,IACA;AAAA,GACF;AACF","file":"chunk-LD3JERYP.js","sourcesContent":["/**\n * Which credentials to list:\n *\n * - `all` — the whole project: branch-scoped and branchless alike.\n * - `branchless` — only what is tied to no branch at all, not even the default one.\n * - `branched` — only the branch whose id it carries.\n *\n * Discriminated on `scope`, not on `branchId` being present: a `string | 'all' | 'branchless'` union\n * collapses to `string`, so a mistyped scope would silently become a branch-id filter.\n */\nexport type GetCredentialsInput =\n | { scope: 'all'; componentId?: string }\n | { scope: 'branchless'; componentId?: string }\n | { scope: 'branched'; branchId: string; componentId?: string };\n\n/**\n * All three scopes ride the one `branchId` query parameter:\n *\n * - `all` → omitted, which the service reads as no filter.\n * - `branchless` → the literal string `'null'`, which it reads as `branchId IS NULL`.\n * - `branched` → the branch id itself.\n */\nexport type CredentialsDataFormat = 'encrypted' | 'plain';\n\n/**\n * The credentials payload rides one of two fields, and only one of them is in the current spec:\n *\n * - `encrypted` — `#data`, the payload serialized to a string. The `#` marks it for the service to\n * encrypt at rest.\n * - `plain` — `data`, the payload as an object. Only services predating the spec accept it.\n */\nexport const encodeCredentialsData = (\n data: Record<string, unknown>,\n format: CredentialsDataFormat,\n) => (format === 'encrypted' ? { '#data': JSON.stringify(data) } : { data });\n\nexport const getScopedBranchId = (scope: GetCredentialsInput) => {\n switch (scope.scope) {\n case 'all':\n return undefined;\n case 'branchless':\n return 'null';\n case 'branched':\n return scope.branchId;\n }\n};\n","import { createOpenapiFetchClient, isApiError } from '../../fetchClient';\nimport { HttpStatus } from '../../internal';\nimport { createAuthHeaders } from '../auth';\nimport type { ClientInitOptions } from '../types';\n\nimport type { paths } from './__generated__/schema';\nimport type { CreateCredentialInput, CredentialInput } from './types';\nimport type { CredentialsDataFormat, GetCredentialsInput } from './utils';\nimport { encodeCredentialsData, getScopedBranchId } from './utils';\n\nexport const createOauthClient = ({ baseUrl, middlewares, auth }: ClientInitOptions) => {\n const client = createOpenapiFetchClient<paths>({\n baseUrl,\n middlewares,\n headers: createAuthHeaders(auth),\n });\n\n const getCredentials = async (scope: GetCredentialsInput, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/credentials',\n { query: { branchId: getScopedBranchId(scope), componentId: scope.componentId } },\n { signal },\n );\n return data;\n };\n\n const getCredential = async ({ componentId, id }: CredentialInput, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/credentials/{componentId}/{name}',\n { path: { componentId, name: id } },\n { signal },\n );\n return data;\n };\n\n const createCredential = async (\n { componentId, data, ...rest }: CreateCredentialInput,\n signal?: AbortSignal,\n ) => {\n const post = (format: CredentialsDataFormat) =>\n client\n .post(\n '/credentials/{componentId}',\n {\n path: { componentId },\n // The plain shape predates the spec, so no schema can describe it. It borrows the\n // encrypted field's type to get past the generated body — the one assertion here.\n body: { ...rest, ...(encodeCredentialsData(data, format) as { '#data': string }) },\n },\n { signal },\n )\n .then((response) => response.data);\n\n try {\n return await post('plain');\n } catch (error) {\n if (isApiError(error) && error.response.status === HttpStatus.UNPROCESSABLE_ENTITY) {\n return post('encrypted');\n }\n throw error;\n }\n };\n\n const deleteCredential = async ({ componentId, id }: CredentialInput, signal?: AbortSignal) => {\n await client.delete(\n '/credentials/{componentId}/{name}',\n { path: { componentId, name: id } },\n { signal },\n );\n };\n\n return {\n getCredentials,\n getCredential,\n createCredential,\n deleteCredential,\n };\n};\n"]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var chunkQHD4LPAQ_cjs = require('./chunk-QHD4LPAQ.cjs');
|
|
4
|
-
var
|
|
5
|
-
var
|
|
4
|
+
var chunk7RO6PKZ4_cjs = require('./chunk-7RO6PKZ4.cjs');
|
|
5
|
+
var chunkMMOAH3EH_cjs = require('./chunk-MMOAH3EH.cjs');
|
|
6
6
|
|
|
7
7
|
// src/utils/async/collect.ts
|
|
8
8
|
var collect = async ({
|
|
@@ -28,10 +28,10 @@ var collect = async ({
|
|
|
28
28
|
|
|
29
29
|
// src/clients/queue/queueClient.ts
|
|
30
30
|
var createQueueClient = ({ baseUrl, middlewares, auth }) => {
|
|
31
|
-
const client =
|
|
31
|
+
const client = chunkMMOAH3EH_cjs.createOpenapiFetchClient({
|
|
32
32
|
baseUrl,
|
|
33
33
|
middlewares,
|
|
34
|
-
headers:
|
|
34
|
+
headers: chunk7RO6PKZ4_cjs.createAuthHeaders(auth)
|
|
35
35
|
});
|
|
36
36
|
const getJob = async (jobId, signal) => {
|
|
37
37
|
const { data } = await client.get(
|
|
@@ -109,5 +109,5 @@ var createQueueClient = ({ baseUrl, middlewares, auth }) => {
|
|
|
109
109
|
|
|
110
110
|
exports.collect = collect;
|
|
111
111
|
exports.createQueueClient = createQueueClient;
|
|
112
|
-
//# sourceMappingURL=chunk-
|
|
113
|
-
//# sourceMappingURL=chunk-
|
|
112
|
+
//# sourceMappingURL=chunk-LIXSIM3H.cjs.map
|
|
113
|
+
//# sourceMappingURL=chunk-LIXSIM3H.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/utils/async/collect.ts","../src/clients/queue/queueClient.ts"],"names":["createAbortError","createOpenapiFetchClient","createAuthHeaders"],"mappings":"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","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/utils/async/collect.ts","../src/clients/queue/queueClient.ts"],"names":["createAbortError","createOpenapiFetchClient","createAuthHeaders"],"mappings":"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","file":"chunk-LIXSIM3H.cjs","sourcesContent":["import { createAbortError } from '../createAbortError';\n\nexport type CollectOptions<T> = {\n fetchFrom: (offset: number, pageSize?: number, signal?: AbortSignal) => Promise<T[]>;\n pageSize?: number;\n limit?: number;\n signal?: AbortSignal;\n};\n\n/**\n * Collects items from an offset-paginated endpoint — up to `limit` of them, or all of them when\n * `limit` is omitted. Calls `fetchFrom` sequentially with the offset advancing by the number of\n * items received, and hands it `pageSize` so the request and the traversal agree on one value.\n *\n * Traversal ends on a page shorter than `pageSize`, or — when `pageSize` is omitted — only on an\n * empty page. Passing it therefore saves the trailing request, at the cost of stopping early if the\n * endpoint returns fewer items per page than asked for.\n */\nexport const collect = async <T>({\n fetchFrom,\n pageSize,\n limit,\n signal,\n}: CollectOptions<T>): Promise<T[]> => {\n if (signal?.aborted) throw createAbortError(signal.reason);\n if (limit !== undefined && limit < 0) throw new Error('Invalid collect limit');\n if (pageSize !== undefined && pageSize < 1) throw new Error('Invalid collect pageSize');\n\n const items: T[] = [];\n\n if (limit === 0) return items;\n\n let offset = 0;\n\n while (true) {\n const batch = await fetchFrom(offset, pageSize, signal);\n\n items.push(...batch);\n offset += batch.length;\n\n if (limit !== undefined && items.length >= limit) return items.slice(0, limit);\n if (pageSize === undefined ? batch.length === 0 : batch.length < pageSize) return items;\n }\n};\n","import { createOpenapiFetchClient } from '../../fetchClient';\nimport { collect } from '../../utils';\nimport { createAuthHeaders } from '../auth';\nimport type { ClientInitOptions } from '../types';\n\nimport type { paths } from './__generated__/schema';\nimport type {\n CreateJobBody,\n GetQueueJobPath,\n KillJobPath,\n OrchestrationRerunPlanPath,\n SearchAllJobsQuery,\n SearchGroupedJobsQuery,\n SearchJobsQuery,\n} from './types';\n\nexport const createQueueClient = ({ baseUrl, middlewares, auth }: ClientInitOptions) => {\n const client = createOpenapiFetchClient<paths>({\n baseUrl,\n middlewares,\n headers: createAuthHeaders(auth),\n });\n\n const getJob = async (jobId: GetQueueJobPath['jobId'], signal?: AbortSignal) => {\n const { data } = await client.get(\n '/jobs/{jobId}',\n {\n path: { jobId },\n },\n { signal },\n );\n\n return data;\n };\n\n const searchJobs = async (query?: SearchJobsQuery, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/search/jobs',\n {\n query,\n },\n { signal },\n );\n\n return data;\n };\n\n const searchAllJobs = (query: SearchAllJobsQuery, signal?: AbortSignal) => {\n return collect({\n pageSize: query.limit,\n signal,\n fetchFrom: (offset, pageSize, batchSignal) => {\n return searchJobs({ ...query, limit: pageSize, offset }, batchSignal);\n },\n });\n };\n\n const createJob = async (body: CreateJobBody, signal?: AbortSignal) => {\n const { data } = await client.post('/jobs', { body }, { signal });\n\n return data;\n };\n\n const killJob = async (jobId: KillJobPath['jobId'], signal?: AbortSignal) => {\n const { data } = await client.post(\n '/jobs/{jobId}/kill',\n {\n path: { jobId },\n },\n { signal },\n );\n\n return data;\n };\n\n const searchGroupedJobs = async (query: SearchGroupedJobsQuery, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/search/grouped-jobs',\n {\n query,\n },\n { signal },\n );\n\n return data;\n };\n\n const getOrchestrationRerunPlan = async (\n jobId: OrchestrationRerunPlanPath['jobId'],\n signal?: AbortSignal,\n ) => {\n const { data } = await client.get(\n '/orchestration-rerun-plan/{jobId}',\n {\n path: { jobId },\n },\n { signal },\n );\n\n return data;\n };\n\n return {\n getJob,\n searchJobs,\n searchAllJobs,\n createJob,\n killJob,\n searchGroupedJobs,\n getOrchestrationRerunPlan,\n };\n};\n"]}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
// src/constants/projectFeatures.ts
|
|
2
|
+
var ProjectFeature = {
|
|
3
|
+
DisableLegacyBucketPrefix: "disable-legacy-bucket-prefix",
|
|
4
|
+
SoxProtectedDefaultBranch: "protected-default-branch",
|
|
5
|
+
StorageBranches: "storage-branches"
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
// src/constants/backends.ts
|
|
9
|
+
var Backend = {
|
|
10
|
+
Snowflake: "snowflake",
|
|
11
|
+
Bigquery: "bigquery"
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
// src/constants/stacks.ts
|
|
15
|
+
var STACKS = {
|
|
16
|
+
NORTH_EUROPE_AZURE: {
|
|
17
|
+
id: "com-keboola-azure-north-europe",
|
|
18
|
+
region: "north-europe",
|
|
19
|
+
host: "connection.north-europe.azure.keboola.com",
|
|
20
|
+
provider: "azure",
|
|
21
|
+
continent: "europe",
|
|
22
|
+
isPayg: true
|
|
23
|
+
},
|
|
24
|
+
EU_CENTRAL_1_AWS: {
|
|
25
|
+
id: "kbc-eu-central-1",
|
|
26
|
+
region: "eu-central-1",
|
|
27
|
+
host: "connection.eu-central-1.keboola.com",
|
|
28
|
+
provider: "aws",
|
|
29
|
+
continent: "europe"
|
|
30
|
+
},
|
|
31
|
+
US_EAST_1_AWS: {
|
|
32
|
+
id: "kbc-us-east-1",
|
|
33
|
+
region: "us-east-1",
|
|
34
|
+
host: "connection.keboola.com",
|
|
35
|
+
provider: "aws",
|
|
36
|
+
continent: "us"
|
|
37
|
+
},
|
|
38
|
+
EUROPE_WEST3_GCP: {
|
|
39
|
+
id: "com-keboola-gcp-europe-west3",
|
|
40
|
+
region: "europe-west3",
|
|
41
|
+
host: "connection.europe-west3.gcp.keboola.com",
|
|
42
|
+
provider: "gcp",
|
|
43
|
+
continent: "europe"
|
|
44
|
+
},
|
|
45
|
+
US_EAST_4_GCP: {
|
|
46
|
+
id: "com-keboola-gcp-us-east4",
|
|
47
|
+
region: "us-east4",
|
|
48
|
+
host: "connection.us-east4.gcp.keboola.com",
|
|
49
|
+
provider: "gcp",
|
|
50
|
+
continent: "us",
|
|
51
|
+
isPayg: true
|
|
52
|
+
},
|
|
53
|
+
/* PRIVATE SINGLE TENANT STACKS
|
|
54
|
+
---------------------------- */
|
|
55
|
+
HCI: {
|
|
56
|
+
id: "cloud-keboola-hci",
|
|
57
|
+
host: "connection.hci.keboola.cloud",
|
|
58
|
+
isSingleTenant: true
|
|
59
|
+
},
|
|
60
|
+
CSAS_PROD: {
|
|
61
|
+
id: "cloud-keboola-cs",
|
|
62
|
+
host: "connection.cs.keboola.cloud",
|
|
63
|
+
isSingleTenant: true
|
|
64
|
+
},
|
|
65
|
+
CSAS_TEST: {
|
|
66
|
+
id: "cloud-keboola-cs-test",
|
|
67
|
+
host: "connection.cs-test.keboola.cloud",
|
|
68
|
+
isSingleTenant: true
|
|
69
|
+
},
|
|
70
|
+
INNOGY: {
|
|
71
|
+
id: "cloud-keboola-innogy-hub",
|
|
72
|
+
host: "connection.innogy-hub.keboola.cloud",
|
|
73
|
+
isSingleTenant: true
|
|
74
|
+
},
|
|
75
|
+
GROUPON: {
|
|
76
|
+
id: "cloud-keboola-groupon",
|
|
77
|
+
host: "connection.groupon.keboola.cloud",
|
|
78
|
+
isSingleTenant: true
|
|
79
|
+
},
|
|
80
|
+
CREDIT_INFO: {
|
|
81
|
+
id: "cloud-keboola-creditinfo",
|
|
82
|
+
host: "connection.creditinfo.keboola.cloud",
|
|
83
|
+
isSingleTenant: true
|
|
84
|
+
},
|
|
85
|
+
COATES: {
|
|
86
|
+
id: "cloud-keboola-coates",
|
|
87
|
+
host: "connection.coates.keboola.cloud",
|
|
88
|
+
isSingleTenant: true
|
|
89
|
+
},
|
|
90
|
+
SLSP: {
|
|
91
|
+
id: "cloud-keboola-slsp",
|
|
92
|
+
host: "connection.slsp.keboola.cloud",
|
|
93
|
+
isSingleTenant: true
|
|
94
|
+
},
|
|
95
|
+
HCKZ: {
|
|
96
|
+
id: "cloud-keboola-hckz",
|
|
97
|
+
host: "connection.hckz.keboola.cloud",
|
|
98
|
+
isSingleTenant: true
|
|
99
|
+
},
|
|
100
|
+
PASHA: {
|
|
101
|
+
id: "cloud-keboola-pasha",
|
|
102
|
+
host: "connection.pasha.keboola.cloud",
|
|
103
|
+
isSingleTenant: true
|
|
104
|
+
},
|
|
105
|
+
RBI: {
|
|
106
|
+
id: "cloud-keboola-rbi",
|
|
107
|
+
host: "connection.rbi.keboola.cloud",
|
|
108
|
+
isSingleTenant: true
|
|
109
|
+
},
|
|
110
|
+
NAH: {
|
|
111
|
+
id: "cloud-keboola-nah",
|
|
112
|
+
host: "connection.nah.keboola.cloud",
|
|
113
|
+
isSingleTenant: true,
|
|
114
|
+
provider: "azure",
|
|
115
|
+
continent: "us"
|
|
116
|
+
},
|
|
117
|
+
/* DEV STACKS
|
|
118
|
+
---------------------------- */
|
|
119
|
+
DEV_US_CENTRAL_1_GCP: {
|
|
120
|
+
id: "dev-keboola-gcp-us-central1",
|
|
121
|
+
region: "us-central1",
|
|
122
|
+
host: "connection.us-central1.gcp.keboola.dev",
|
|
123
|
+
provider: "gcp",
|
|
124
|
+
continent: "us",
|
|
125
|
+
isTesting: true
|
|
126
|
+
},
|
|
127
|
+
DEV_EU_WEST_1_AWS: {
|
|
128
|
+
id: "dev-keboola-aws-eu-west-1",
|
|
129
|
+
region: "eu-west-1",
|
|
130
|
+
host: "connection.eu-west-1.aws.keboola.dev",
|
|
131
|
+
provider: "aws",
|
|
132
|
+
continent: "europe",
|
|
133
|
+
isTesting: true
|
|
134
|
+
},
|
|
135
|
+
DEV_US_EAST_2_AZURE: {
|
|
136
|
+
id: "kbc-testing-azure-east-us-2",
|
|
137
|
+
region: "east-us-2",
|
|
138
|
+
host: "connection.east-us-2.azure.keboola-testing.com",
|
|
139
|
+
provider: "azure",
|
|
140
|
+
continent: "us",
|
|
141
|
+
isTesting: true
|
|
142
|
+
},
|
|
143
|
+
DEV_KEBOOLA_CANARY_ORION: {
|
|
144
|
+
id: "dev-keboola-canary-orion",
|
|
145
|
+
region: "europe-west3",
|
|
146
|
+
host: "connection.canary-orion.keboola.dev",
|
|
147
|
+
provider: "gcp",
|
|
148
|
+
continent: "europe",
|
|
149
|
+
isCanary: true
|
|
150
|
+
}
|
|
151
|
+
};
|
|
152
|
+
|
|
153
|
+
// src/constants/index.ts
|
|
154
|
+
var URLS = {
|
|
155
|
+
USER_DOCUMENTATION: "https://help.keboola.com",
|
|
156
|
+
COMPONENTS: "https://components.keboola.com",
|
|
157
|
+
DEVELOPERS_DOCUMENTATION: "https://developers.keboola.com",
|
|
158
|
+
ACADEMY: "https://academy.keboola.com",
|
|
159
|
+
SALES_CONTACT_FORM: "https://keboola.com/contact",
|
|
160
|
+
SNOWFLAKE: "https://www.snowflake.com",
|
|
161
|
+
SNOWFLAKE_DOCS: "https://docs.snowflake.com",
|
|
162
|
+
MCP: "https://www.keboola.com/mcp",
|
|
163
|
+
NODE_JS: "https://nodejs.org/en",
|
|
164
|
+
CLAUDE_CONNECTORS: "https://claude.ai/customize/connectors"
|
|
165
|
+
};
|
|
166
|
+
|
|
167
|
+
export { Backend, ProjectFeature, STACKS, URLS };
|
|
168
|
+
//# sourceMappingURL=chunk-LNZP2O4P.js.map
|
|
169
|
+
//# sourceMappingURL=chunk-LNZP2O4P.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/constants/projectFeatures.ts","../src/constants/backends.ts","../src/constants/stacks.ts","../src/constants/index.ts"],"names":[],"mappings":"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","file":"chunk-LNZP2O4P.js","sourcesContent":["export const ProjectFeature = {\n DisableLegacyBucketPrefix: 'disable-legacy-bucket-prefix',\n SoxProtectedDefaultBranch: 'protected-default-branch',\n StorageBranches: 'storage-branches',\n} as const;\n\nexport type ProjectFeature = (typeof ProjectFeature)[keyof typeof ProjectFeature];\n","export const Backend = {\n Snowflake: 'snowflake',\n Bigquery: 'bigquery',\n} as const;\n\nexport type Backend = (typeof Backend)[keyof typeof Backend];\n","export type Provider = 'aws' | 'azure' | 'gcp';\nexport type Continent = 'us' | 'europe';\n\nexport type KeboolaStack = {\n id: string;\n host: string;\n isSingleTenant?: boolean;\n isTesting?: boolean;\n isPayg?: boolean;\n provider?: Provider;\n continent?: Continent;\n region?: string;\n isCanary?: boolean;\n};\n\nexport const STACKS: Record<string, Readonly<KeboolaStack>> = {\n NORTH_EUROPE_AZURE: {\n id: 'com-keboola-azure-north-europe',\n region: 'north-europe',\n host: 'connection.north-europe.azure.keboola.com',\n provider: 'azure',\n continent: 'europe',\n isPayg: true,\n },\n EU_CENTRAL_1_AWS: {\n id: 'kbc-eu-central-1',\n region: 'eu-central-1',\n host: 'connection.eu-central-1.keboola.com',\n provider: 'aws',\n continent: 'europe',\n },\n US_EAST_1_AWS: {\n id: 'kbc-us-east-1',\n region: 'us-east-1',\n host: 'connection.keboola.com',\n provider: 'aws',\n continent: 'us',\n },\n EUROPE_WEST3_GCP: {\n id: 'com-keboola-gcp-europe-west3',\n region: 'europe-west3',\n host: 'connection.europe-west3.gcp.keboola.com',\n provider: 'gcp',\n continent: 'europe',\n },\n US_EAST_4_GCP: {\n id: 'com-keboola-gcp-us-east4',\n region: 'us-east4',\n host: 'connection.us-east4.gcp.keboola.com',\n provider: 'gcp',\n continent: 'us',\n isPayg: true,\n },\n\n /* PRIVATE SINGLE TENANT STACKS\n ---------------------------- */\n HCI: {\n id: 'cloud-keboola-hci',\n host: 'connection.hci.keboola.cloud',\n isSingleTenant: true,\n },\n CSAS_PROD: {\n id: 'cloud-keboola-cs',\n host: 'connection.cs.keboola.cloud',\n isSingleTenant: true,\n },\n CSAS_TEST: {\n id: 'cloud-keboola-cs-test',\n host: 'connection.cs-test.keboola.cloud',\n isSingleTenant: true,\n },\n INNOGY: {\n id: 'cloud-keboola-innogy-hub',\n host: 'connection.innogy-hub.keboola.cloud',\n isSingleTenant: true,\n },\n GROUPON: {\n id: 'cloud-keboola-groupon',\n host: 'connection.groupon.keboola.cloud',\n isSingleTenant: true,\n },\n CREDIT_INFO: {\n id: 'cloud-keboola-creditinfo',\n host: 'connection.creditinfo.keboola.cloud',\n isSingleTenant: true,\n },\n COATES: {\n id: 'cloud-keboola-coates',\n host: 'connection.coates.keboola.cloud',\n isSingleTenant: true,\n },\n SLSP: {\n id: 'cloud-keboola-slsp',\n host: 'connection.slsp.keboola.cloud',\n isSingleTenant: true,\n },\n HCKZ: {\n id: 'cloud-keboola-hckz',\n host: 'connection.hckz.keboola.cloud',\n isSingleTenant: true,\n },\n PASHA: {\n id: 'cloud-keboola-pasha',\n host: 'connection.pasha.keboola.cloud',\n isSingleTenant: true,\n },\n RBI: {\n id: 'cloud-keboola-rbi',\n host: 'connection.rbi.keboola.cloud',\n isSingleTenant: true,\n },\n NAH: {\n id: 'cloud-keboola-nah',\n host: 'connection.nah.keboola.cloud',\n isSingleTenant: true,\n provider: 'azure',\n continent: 'us',\n },\n\n /* DEV STACKS\n ---------------------------- */\n DEV_US_CENTRAL_1_GCP: {\n id: 'dev-keboola-gcp-us-central1',\n region: 'us-central1',\n host: 'connection.us-central1.gcp.keboola.dev',\n provider: 'gcp',\n continent: 'us',\n isTesting: true,\n },\n DEV_EU_WEST_1_AWS: {\n id: 'dev-keboola-aws-eu-west-1',\n region: 'eu-west-1',\n host: 'connection.eu-west-1.aws.keboola.dev',\n provider: 'aws',\n continent: 'europe',\n isTesting: true,\n },\n DEV_US_EAST_2_AZURE: {\n id: 'kbc-testing-azure-east-us-2',\n region: 'east-us-2',\n host: 'connection.east-us-2.azure.keboola-testing.com',\n provider: 'azure',\n continent: 'us',\n isTesting: true,\n },\n DEV_KEBOOLA_CANARY_ORION: {\n id: 'dev-keboola-canary-orion',\n region: 'europe-west3',\n host: 'connection.canary-orion.keboola.dev',\n provider: 'gcp',\n continent: 'europe',\n isCanary: true,\n },\n};\n","export { ComponentId } from './componentId';\nexport { ProjectFeature } from './projectFeatures';\nexport { Backend } from './backends';\nexport { AdminRole } from './adminRoles';\nexport { STACKS } from './stacks';\nexport type { Continent, KeboolaStack, Provider } from './stacks';\n\nexport const URLS = {\n USER_DOCUMENTATION: 'https://help.keboola.com',\n COMPONENTS: 'https://components.keboola.com',\n DEVELOPERS_DOCUMENTATION: 'https://developers.keboola.com',\n ACADEMY: 'https://academy.keboola.com',\n SALES_CONTACT_FORM: 'https://keboola.com/contact',\n SNOWFLAKE: 'https://www.snowflake.com',\n SNOWFLAKE_DOCS: 'https://docs.snowflake.com',\n MCP: 'https://www.keboola.com/mcp',\n NODE_JS: 'https://nodejs.org/en',\n CLAUDE_CONNECTORS: 'https://claude.ai/customize/connectors',\n} as const;\n"]}
|
|
@@ -131,9 +131,16 @@ var createFetchRequest = ({
|
|
|
131
131
|
baseUrl,
|
|
132
132
|
validateStatus: defValidateStatus = defaultValidateStatus,
|
|
133
133
|
headers: defaultHeaders,
|
|
134
|
+
fetchFn: defaultFetchFn,
|
|
134
135
|
...restDefaultOptions
|
|
135
136
|
} = defaultOptions;
|
|
136
|
-
const {
|
|
137
|
+
const {
|
|
138
|
+
validateStatus,
|
|
139
|
+
queryArrayFormat,
|
|
140
|
+
headers: endpointHeaders,
|
|
141
|
+
fetchFn,
|
|
142
|
+
...restOptions
|
|
143
|
+
} = options;
|
|
137
144
|
const headers = createHeaders(defaultHeaders, endpointHeaders);
|
|
138
145
|
const path = createPath(url, params.path);
|
|
139
146
|
const search = createSearch(params.query ?? {}, { arrayFormat: queryArrayFormat });
|
|
@@ -147,14 +154,18 @@ var createFetchRequest = ({
|
|
|
147
154
|
method: method.toUpperCase(),
|
|
148
155
|
body
|
|
149
156
|
});
|
|
150
|
-
return {
|
|
157
|
+
return {
|
|
158
|
+
request,
|
|
159
|
+
validateStatus: validateStatus ?? defValidateStatus,
|
|
160
|
+
fetchFn: fetchFn ?? defaultFetchFn
|
|
161
|
+
};
|
|
151
162
|
};
|
|
152
163
|
|
|
153
164
|
// src/fetchClient/createFetchClient/createFetchClient.ts
|
|
154
165
|
var isApiError = (error) => error instanceof ApiError;
|
|
155
166
|
var isAbortError = (error) => error instanceof DOMException && error.name === "AbortError";
|
|
156
167
|
var isFetchClientError = (error) => error instanceof TypeError || error instanceof SyntaxError || isApiError(error);
|
|
157
|
-
var
|
|
168
|
+
var coreFetch = async ({ request, validateStatus, fetchFn = fetch }) => {
|
|
158
169
|
const response = await fetchFn(request);
|
|
159
170
|
const data = await parseData(response);
|
|
160
171
|
const apiResponse = {
|
|
@@ -171,7 +182,6 @@ var createFetchClient = ({
|
|
|
171
182
|
middlewares = [],
|
|
172
183
|
...defaultOptions
|
|
173
184
|
}) => {
|
|
174
|
-
const coreFetch = createCoreFetch(defaultOptions.fetchFn ?? fetch);
|
|
175
185
|
const fetchWithMiddlewares = middlewares.reduceRight(
|
|
176
186
|
(next, middleware) => middleware(next),
|
|
177
187
|
coreFetch
|
|
@@ -202,6 +212,60 @@ var createFetchClient = ({
|
|
|
202
212
|
// src/fetchClient/createGenericFetchClient.ts
|
|
203
213
|
var createGenericFetchClient = (defaultOptions) => createFetchClient(defaultOptions);
|
|
204
214
|
|
|
215
|
+
// src/fetchClient/xhrFetch.ts
|
|
216
|
+
var parseResponseHeaders = (raw) => {
|
|
217
|
+
const headers = new Headers();
|
|
218
|
+
for (const line of raw.trim().split(/[\r\n]+/)) {
|
|
219
|
+
const separator = line.indexOf(":");
|
|
220
|
+
if (separator < 0) continue;
|
|
221
|
+
headers.append(line.slice(0, separator).trim(), line.slice(separator + 1).trim());
|
|
222
|
+
}
|
|
223
|
+
return headers;
|
|
224
|
+
};
|
|
225
|
+
var createAbortError = () => new DOMException("The operation was aborted.", "AbortError");
|
|
226
|
+
var BODILESS_STATUSES = [204, 205];
|
|
227
|
+
var BODILESS_METHODS = ["GET", "HEAD"];
|
|
228
|
+
var xhrFetch = (onProgress) => {
|
|
229
|
+
return async (input, init) => {
|
|
230
|
+
if (typeof XMLHttpRequest === "undefined") return fetch(input, init);
|
|
231
|
+
const request = new Request(input, init);
|
|
232
|
+
const body = BODILESS_METHODS.includes(request.method) ? null : await request.blob();
|
|
233
|
+
if (request.signal.aborted) throw createAbortError();
|
|
234
|
+
const { promise, resolve, reject } = Promise.withResolvers();
|
|
235
|
+
const xhr = new XMLHttpRequest();
|
|
236
|
+
const handleProgress = (event) => {
|
|
237
|
+
if (!event.lengthComputable) return;
|
|
238
|
+
onProgress({
|
|
239
|
+
loaded: event.loaded,
|
|
240
|
+
total: event.total,
|
|
241
|
+
percent: event.loaded / event.total * 100
|
|
242
|
+
});
|
|
243
|
+
};
|
|
244
|
+
const handleLoad = () => {
|
|
245
|
+
resolve(
|
|
246
|
+
new Response(BODILESS_STATUSES.includes(xhr.status) ? null : xhr.response, {
|
|
247
|
+
status: xhr.status,
|
|
248
|
+
statusText: xhr.statusText,
|
|
249
|
+
headers: parseResponseHeaders(xhr.getAllResponseHeaders())
|
|
250
|
+
})
|
|
251
|
+
);
|
|
252
|
+
};
|
|
253
|
+
const handleError = () => reject(new TypeError("Failed to fetch"));
|
|
254
|
+
const handleAbort = () => reject(createAbortError());
|
|
255
|
+
xhr.open(request.method, request.url, true);
|
|
256
|
+
xhr.responseType = "blob";
|
|
257
|
+
xhr.withCredentials = request.credentials === "include";
|
|
258
|
+
request.headers.forEach((value, name) => xhr.setRequestHeader(name, value));
|
|
259
|
+
xhr.upload.addEventListener("progress", handleProgress);
|
|
260
|
+
xhr.addEventListener("load", handleLoad);
|
|
261
|
+
xhr.addEventListener("error", handleError);
|
|
262
|
+
xhr.addEventListener("abort", handleAbort);
|
|
263
|
+
request.signal.addEventListener("abort", () => xhr.abort(), { once: true });
|
|
264
|
+
xhr.send(body);
|
|
265
|
+
return promise;
|
|
266
|
+
};
|
|
267
|
+
};
|
|
268
|
+
|
|
205
269
|
// src/fetchClient/createOpenapiFetchClient.ts
|
|
206
270
|
var createOpenapiFetchClient = (defaultOptions) => createFetchClient(defaultOptions);
|
|
207
271
|
|
|
@@ -219,5 +283,6 @@ exports.isApiError = isApiError;
|
|
|
219
283
|
exports.isFetchClientError = isFetchClientError;
|
|
220
284
|
exports.normalizeBaseUrl = normalizeBaseUrl;
|
|
221
285
|
exports.parseContentDispositionHeader = parseContentDispositionHeader;
|
|
222
|
-
|
|
223
|
-
//# sourceMappingURL=chunk-
|
|
286
|
+
exports.xhrFetch = xhrFetch;
|
|
287
|
+
//# sourceMappingURL=chunk-MMOAH3EH.cjs.map
|
|
288
|
+
//# sourceMappingURL=chunk-MMOAH3EH.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
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/xhrFetch.ts","../src/fetchClient/createOpenapiFetchClient.ts"],"names":["qs"],"mappings":"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","file":"chunk-MMOAH3EH.cjs","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 fetchFn: defaultFetchFn,\n ...restDefaultOptions\n } = defaultOptions;\n const {\n validateStatus,\n queryArrayFormat,\n headers: endpointHeaders,\n fetchFn,\n ...restOptions\n } = 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 {\n request,\n validateStatus: validateStatus ?? defValidateStatus,\n fetchFn: fetchFn ?? defaultFetchFn,\n };\n};\n","import { ApiError } from '../../errors';\n\nimport type {\n BaseFetchParams,\n CoreFetchFn,\n CreateFetchClientOptions,\n FetchClientOptions,\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\n// `fetchFn` is resolved per request by `createFetchRequest` (endpoint option beats client option),\n// so a single request can swap the transport without rebuilding the client.\nconst coreFetch: CoreFetchFn = async ({ request, validateStatus, fetchFn = fetch }) => {\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 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 type { FetchFn } from './createFetchClient';\n\nexport type UploadProgress = {\n loaded: number;\n total: number;\n percent: number;\n};\n\nconst parseResponseHeaders = (raw: string) => {\n const headers = new Headers();\n\n for (const line of raw.trim().split(/[\\r\\n]+/)) {\n const separator = line.indexOf(':');\n if (separator < 0) continue;\n\n headers.append(line.slice(0, separator).trim(), line.slice(separator + 1).trim());\n }\n\n return headers;\n};\n\nconst createAbortError = () => new DOMException('The operation was aborted.', 'AbortError');\n\n// `new Response(body)` throws for these statuses even when the body is empty.\nconst BODILESS_STATUSES = [204, 205];\n\nconst BODILESS_METHODS = ['GET', 'HEAD'];\n\n/**\n * A `fetch` implementation backed by XHR, for the `fetchFn` escape hatch: `fetch` cannot observe\n * request-body upload progress outside Chromium, `xhr.upload.onprogress` can.\n */\nexport const xhrFetch = (onProgress: (progress: UploadProgress) => void): FetchFn => {\n return async (input, init) => {\n // Node has no XHR, and asking for progress is not worth failing an upload over — the caller\n // simply gets no progress events there.\n if (typeof XMLHttpRequest === 'undefined') return fetch(input, init);\n\n const request = new Request(input, init);\n const body = BODILESS_METHODS.includes(request.method) ? null : await request.blob();\n\n if (request.signal.aborted) throw createAbortError();\n\n const { promise, resolve, reject } = Promise.withResolvers<Response>();\n const xhr = new XMLHttpRequest();\n\n const handleProgress = (event: ProgressEvent) => {\n if (!event.lengthComputable) return;\n\n onProgress({\n loaded: event.loaded,\n total: event.total,\n percent: (event.loaded / event.total) * 100,\n });\n };\n\n const handleLoad = () => {\n resolve(\n new Response(BODILESS_STATUSES.includes(xhr.status) ? null : xhr.response, {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseResponseHeaders(xhr.getAllResponseHeaders()),\n }),\n );\n };\n\n // `TypeError` for parity with `fetch` — `isFetchClientError` keys off it.\n const handleError = () => reject(new TypeError('Failed to fetch'));\n const handleAbort = () => reject(createAbortError());\n\n xhr.open(request.method, request.url, true);\n xhr.responseType = 'blob';\n xhr.withCredentials = request.credentials === 'include';\n\n // The body we send is the one this `Request` serialized, so its `content-type` — multipart\n // boundary included — describes those exact bytes and can be forwarded as-is.\n request.headers.forEach((value, name) => xhr.setRequestHeader(name, value));\n\n xhr.upload.addEventListener('progress', handleProgress);\n xhr.addEventListener('load', handleLoad);\n xhr.addEventListener('error', handleError);\n xhr.addEventListener('abort', handleAbort);\n request.signal.addEventListener('abort', () => xhr.abort(), { once: true });\n\n xhr.send(body);\n\n return promise;\n };\n};\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"]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
// src/errors/SyncActionError.ts
|
|
4
|
+
var SyncActionError = class _SyncActionError extends Error {
|
|
5
|
+
exceptionId;
|
|
6
|
+
code;
|
|
7
|
+
data;
|
|
8
|
+
constructor(message, { exceptionId, code, data } = {}) {
|
|
9
|
+
super(message);
|
|
10
|
+
this.name = "SyncActionError";
|
|
11
|
+
this.exceptionId = exceptionId;
|
|
12
|
+
this.code = code;
|
|
13
|
+
this.data = data;
|
|
14
|
+
Object.setPrototypeOf(this, _SyncActionError.prototype);
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
var isSyncActionError = (error) => error instanceof SyncActionError;
|
|
18
|
+
|
|
19
|
+
exports.SyncActionError = SyncActionError;
|
|
20
|
+
exports.isSyncActionError = isSyncActionError;
|
|
21
|
+
//# sourceMappingURL=chunk-N4COL54U.cjs.map
|
|
22
|
+
//# sourceMappingURL=chunk-N4COL54U.cjs.map
|