@keboola/api-client 43.0.0 → 45.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/AGENTS.md +4 -2
- package/API-SURFACE.md +4 -10
- package/CHANGELOG.md +53 -0
- package/README.md +17 -19
- package/dist/{ManagementClientAuthError-DUbXlry2.js → ManagementClientAuthError-BcPYxAWZ.js} +2 -2
- package/dist/{ManagementClientAuthError-DUbXlry2.js.map → ManagementClientAuthError-BcPYxAWZ.js.map} +1 -1
- package/dist/{ManagementClientAuthError-BFZOtLgj.cjs → ManagementClientAuthError-DHuykEPF.cjs} +2 -2
- package/dist/{ManagementClientAuthError-BFZOtLgj.cjs.map → ManagementClientAuthError-DHuykEPF.cjs.map} +1 -1
- package/dist/ai/index.cjs +2 -2
- package/dist/ai/index.js +2 -2
- package/dist/{appLogs-oZvt59mk.cjs → appLogs-BG9ueGxA.cjs} +2 -2
- package/dist/{appLogs-oZvt59mk.cjs.map → appLogs-BG9ueGxA.cjs.map} +1 -1
- package/dist/{appLogs-DfkItQCO.js → appLogs-CEKz68bE.js} +2 -2
- package/dist/{appLogs-DfkItQCO.js.map → appLogs-CEKz68bE.js.map} +1 -1
- package/dist/apps/index.cjs +3 -3
- package/dist/apps/index.js +3 -3
- package/dist/assets/index.cjs +1 -1
- package/dist/assets/index.js +1 -1
- package/dist/auth/index.cjs +1 -1
- package/dist/auth/index.js +1 -1
- package/dist/{auth-DUHTJTwS.js → auth-C6cHWIWx.js} +2 -2
- package/dist/{auth-DUHTJTwS.js.map → auth-C6cHWIWx.js.map} +1 -1
- package/dist/{auth-zfI04oj7.cjs → auth-C9o_0bft.cjs} +2 -2
- package/dist/{auth-zfI04oj7.cjs.map → auth-C9o_0bft.cjs.map} +1 -1
- package/dist/{authClient-CX4buUMc.js → authClient-CACOwVt0.js} +5 -5
- package/dist/{authClient-CX4buUMc.js.map → authClient-CACOwVt0.js.map} +1 -1
- package/dist/{authClient-BxqRGR5c.cjs → authClient-DZcAR-eW.cjs} +5 -5
- package/dist/{authClient-BxqRGR5c.cjs.map → authClient-DZcAR-eW.cjs.map} +1 -1
- package/dist/billing/index.cjs +2 -2
- package/dist/billing/index.js +2 -2
- package/dist/chat/index.cjs +3 -3
- package/dist/chat/index.js +3 -3
- package/dist/constants/index.cjs +1 -1
- package/dist/constants/index.d.cts +1 -1
- package/dist/constants/index.d.ts +1 -1
- package/dist/constants/index.js +1 -1
- package/dist/{constants-C6xku_Vx.cjs → constants-BDGRQqij.cjs} +1 -2
- package/dist/constants-BDGRQqij.cjs.map +1 -0
- package/dist/{constants-C2tYAJSj.js → constants-Cifrqsls.js} +1 -2
- package/dist/constants-Cifrqsls.js.map +1 -0
- package/dist/{createFetchClient-BgihytBn.cjs → createFetchClient-ClWD4ua3.cjs} +71 -25
- package/dist/createFetchClient-ClWD4ua3.cjs.map +1 -0
- package/dist/{createFetchClient-cgWkwgAQ.js → createFetchClient-DITkTV2k.js} +54 -26
- package/dist/createFetchClient-DITkTV2k.js.map +1 -0
- package/dist/{createGenericFetchClient-C7Y0YVfc.cjs → createGenericFetchClient-B81Iezpb.cjs} +2 -2
- package/dist/{createGenericFetchClient-C7Y0YVfc.cjs.map → createGenericFetchClient-B81Iezpb.cjs.map} +1 -1
- package/dist/{createGenericFetchClient-CX9Hn3Aq.js → createGenericFetchClient-KqiJhw8G.js} +2 -2
- package/dist/{createGenericFetchClient-CX9Hn3Aq.js.map → createGenericFetchClient-KqiJhw8G.js.map} +1 -1
- package/dist/{createOpenapiFetchClient-DY5s-aH6.cjs → createOpenapiFetchClient-CioTX11-.cjs} +2 -2
- package/dist/{createOpenapiFetchClient-DY5s-aH6.cjs.map → createOpenapiFetchClient-CioTX11-.cjs.map} +1 -1
- package/dist/{createOpenapiFetchClient-BxcLLU_N.js → createOpenapiFetchClient-wq8iGLZM.js} +2 -2
- package/dist/{createOpenapiFetchClient-BxcLLU_N.js.map → createOpenapiFetchClient-wq8iGLZM.js.map} +1 -1
- package/dist/dataScience/index.cjs +2 -2
- package/dist/dataScience/index.d.cts +1 -1
- package/dist/dataScience/index.d.ts +1 -1
- package/dist/dataScience/index.js +2 -2
- package/dist/dataScience/types.d.cts +2 -2
- package/dist/dataScience/types.d.ts +2 -2
- package/dist/{dataScience-BxRoGfnG.js → dataScience-BwHmDoQb.js} +16 -5
- package/dist/dataScience-BwHmDoQb.js.map +1 -0
- package/dist/{dataScience-BoS8Xfvx.cjs → dataScience-Hhoqoql_.cjs} +16 -5
- package/dist/dataScience-Hhoqoql_.cjs.map +1 -0
- package/dist/developerPortal/index.cjs +1 -1
- package/dist/developerPortal/index.js +1 -1
- package/dist/{developerPortalClient-DFHEsrlt.cjs → developerPortalClient-COm7wJxS.cjs} +3 -3
- package/dist/{developerPortalClient-DFHEsrlt.cjs.map → developerPortalClient-COm7wJxS.cjs.map} +1 -1
- package/dist/{developerPortalClient-C7s0kpjK.js → developerPortalClient-loKq7X_U.js} +3 -3
- package/dist/{developerPortalClient-C7s0kpjK.js.map → developerPortalClient-loKq7X_U.js.map} +1 -1
- package/dist/editor/index.cjs +2 -2
- package/dist/editor/index.js +2 -2
- package/dist/encryption/index.cjs +1 -1
- package/dist/encryption/index.d.cts +1 -1
- package/dist/encryption/index.d.ts +1 -1
- package/dist/encryption/index.js +1 -1
- package/dist/encryption/types.d.cts +1 -1
- package/dist/encryption/types.d.ts +1 -1
- package/dist/import/index.cjs +1 -1
- package/dist/import/index.js +1 -1
- package/dist/{import-BSYvG3Uy.cjs → import-B5DcJGMI.cjs} +3 -3
- package/dist/{import-BSYvG3Uy.cjs.map → import-B5DcJGMI.cjs.map} +1 -1
- package/dist/{import-CXBcFVbk.js → import-JlH_QaDd.js} +3 -3
- package/dist/{import-CXBcFVbk.js.map → import-JlH_QaDd.js.map} +1 -1
- package/dist/{index-CAvT_ahE.d.ts → index-BCgmwncs.d.ts} +6 -2
- package/dist/{index-BMiZx-4_.d.cts → index-BKOFRmTB.d.cts} +2 -2
- package/dist/{index-CBWfpd-0.d.ts → index-Bf8dr2KQ.d.ts} +2 -2
- package/dist/{index-BQZ9njUC.d.ts → index-Bl2EloC0.d.ts} +39 -83
- package/dist/{index-B03vhWSX.d.ts → index-CA6QxbhZ.d.ts} +4 -2
- package/dist/{index-Cm04GKm9.d.cts → index-CGFGd3tF.d.cts} +39 -83
- package/dist/{index-D7of2MMN.d.ts → index-CWPi7lBF.d.ts} +3 -3
- package/dist/{index-C7KThHI3.d.cts → index-D9UsQOuT.d.cts} +6 -2
- package/dist/{index-CdS-c6sC.d.cts → index-Dd40ojPr.d.cts} +3 -3
- package/dist/{index-BUsLHNOA.d.cts → index-DkCXaYsn.d.cts} +2 -2
- package/dist/{index-D3HFMfJJ.d.cts → index-DkvrbR2i.d.cts} +4 -2
- package/dist/{index-B72LTF-k.d.ts → index-DtuwWYDR.d.ts} +2 -2
- package/dist/index.cjs +51 -59
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +48 -56
- package/dist/index.js.map +1 -1
- package/dist/{isLoginPageRedirect-CsjF95_P.js → isLoginPageRedirect-CsyRa3_v.js} +2 -2
- package/dist/{isLoginPageRedirect-CsjF95_P.js.map → isLoginPageRedirect-CsyRa3_v.js.map} +1 -1
- package/dist/{isLoginPageRedirect-c451CoWW.cjs → isLoginPageRedirect-iNbwl3iz.cjs} +2 -2
- package/dist/{isLoginPageRedirect-c451CoWW.cjs.map → isLoginPageRedirect-iNbwl3iz.cjs.map} +1 -1
- package/dist/{jobStatus-CcNlIy5R.cjs → jobStatus-B0E-MZ9I.cjs} +2 -2
- package/dist/{jobStatus-CcNlIy5R.cjs.map → jobStatus-B0E-MZ9I.cjs.map} +1 -1
- package/dist/{jobStatus-CDp4r5JQ.js → jobStatus-BJdbZ72V.js} +2 -2
- package/dist/{jobStatus-CDp4r5JQ.js.map → jobStatus-BJdbZ72V.js.map} +1 -1
- package/dist/kaiAgent/index.cjs +1 -1
- package/dist/kaiAgent/index.js +1 -1
- package/dist/{kaiAgent-ph4DRKlT.cjs → kaiAgent-BhcUsBDk.cjs} +5 -5
- package/dist/{kaiAgent-ph4DRKlT.cjs.map → kaiAgent-BhcUsBDk.cjs.map} +1 -1
- package/dist/{kaiAgent-xBpUwLeQ.js → kaiAgent-CUeT53-K.js} +5 -5
- package/dist/{kaiAgent-xBpUwLeQ.js.map → kaiAgent-CUeT53-K.js.map} +1 -1
- package/dist/{kaiMemory-U0DG-CpY.cjs → kaiMemory-Cf81ghNd.cjs} +2 -2
- package/dist/{kaiMemory-U0DG-CpY.cjs.map → kaiMemory-Cf81ghNd.cjs.map} +1 -1
- package/dist/{kaiMemory-BAniZZAN.js → kaiMemory-DaOh0zVn.js} +2 -2
- package/dist/{kaiMemory-BAniZZAN.js.map → kaiMemory-DaOh0zVn.js.map} +1 -1
- package/dist/management/index.cjs +1 -1
- package/dist/management/index.d.cts +1 -1
- package/dist/management/index.d.ts +1 -1
- package/dist/management/index.js +1 -1
- package/dist/management/types.d.cts +2 -2
- package/dist/management/types.d.ts +2 -2
- package/dist/{management-5597SiC7.cjs → management-C5lf9nsU.cjs} +31 -6
- package/dist/management-C5lf9nsU.cjs.map +1 -0
- package/dist/{management-D46KlXts.js → management-WAtKH6Tu.js} +31 -6
- package/dist/management-WAtKH6Tu.js.map +1 -0
- package/dist/metastore/index.cjs +1 -1
- package/dist/metastore/index.d.cts +1 -1
- package/dist/metastore/index.d.ts +1 -1
- package/dist/metastore/index.js +1 -1
- package/dist/metastore/types.d.cts +1 -1
- package/dist/metastore/types.d.ts +1 -1
- package/dist/{metastore-_OskcLGz.js → metastore-D0C6uaPX.js} +4 -4
- package/dist/{metastore-_OskcLGz.js.map → metastore-D0C6uaPX.js.map} +1 -1
- package/dist/{metastore-DwMFlP2d.cjs → metastore-YPHUK3jJ.cjs} +4 -4
- package/dist/{metastore-DwMFlP2d.cjs.map → metastore-YPHUK3jJ.cjs.map} +1 -1
- package/dist/microsoftGraph/index.cjs +2 -2
- package/dist/microsoftGraph/index.js +2 -2
- package/dist/{middleware-xhg2r2fE.cjs → middleware-D_p5TctO.cjs} +2 -2
- package/dist/{middleware-xhg2r2fE.cjs.map → middleware-D_p5TctO.cjs.map} +1 -1
- package/dist/{middleware-Drbo_UIZ.js → middleware-DmR6OhTY.js} +2 -2
- package/dist/{middleware-Drbo_UIZ.js.map → middleware-DmR6OhTY.js.map} +1 -1
- package/dist/notifications/index.cjs +3 -3
- package/dist/notifications/index.js +3 -3
- package/dist/oauth/index.cjs +1 -1
- package/dist/oauth/index.js +1 -1
- package/dist/{oauth-TWwAv-va.js → oauth-Ck_Fe14o.js} +5 -5
- package/dist/{oauth-TWwAv-va.js.map → oauth-Ck_Fe14o.js.map} +1 -1
- package/dist/{oauth-L0Uic3YA.cjs → oauth-DyUwTqHJ.cjs} +5 -5
- package/dist/{oauth-L0Uic3YA.cjs.map → oauth-DyUwTqHJ.cjs.map} +1 -1
- package/dist/omnisearch/index.cjs +2 -2
- package/dist/omnisearch/index.js +2 -2
- package/dist/queryService/index.cjs +1 -1
- package/dist/queryService/index.d.cts +1 -1
- package/dist/queryService/index.d.ts +1 -1
- package/dist/queryService/index.js +1 -1
- package/dist/{queryService-Drvy1ztW.js → queryService-Blfz59Ms.js} +6 -6
- package/dist/{queryService-Drvy1ztW.js.map → queryService-Blfz59Ms.js.map} +1 -1
- package/dist/{queryService-DSww_TJp.cjs → queryService-RlNYw7LG.cjs} +6 -6
- package/dist/{queryService-DSww_TJp.cjs.map → queryService-RlNYw7LG.cjs.map} +1 -1
- package/dist/queue/index.cjs +1 -1
- package/dist/queue/index.d.cts +8 -2
- package/dist/queue/index.d.ts +8 -2
- package/dist/queue/index.js +1 -1
- package/dist/queue/types.d.cts +1 -1
- package/dist/queue/types.d.ts +1 -1
- package/dist/{queue-DpMvv8C-.cjs → queue-BrgRdtOr.cjs} +5 -5
- package/dist/{queue-DpMvv8C-.cjs.map → queue-BrgRdtOr.cjs.map} +1 -1
- package/dist/{queue-Ci_f_5TI.js → queue-CNvR-M23.js} +5 -5
- package/dist/{queue-Ci_f_5TI.js.map → queue-CNvR-M23.js.map} +1 -1
- package/dist/scheduler/index.cjs +3 -3
- package/dist/scheduler/index.js +3 -3
- package/dist/sdk/configurations/index.d.cts +3 -3
- package/dist/sdk/configurations/index.d.ts +3 -3
- package/dist/sdk/developerPortal/index.cjs +3 -3
- package/dist/sdk/developerPortal/index.js +3 -3
- package/dist/sdk/kaiMemory/index.cjs +1 -1
- package/dist/sdk/kaiMemory/index.d.cts +1 -1
- package/dist/sdk/kaiMemory/index.d.ts +1 -1
- package/dist/sdk/kaiMemory/index.js +1 -1
- package/dist/sdk/kaiMemory/types.d.cts +1 -1
- package/dist/sdk/kaiMemory/types.d.ts +1 -1
- package/dist/sdk/queryService/index.cjs +1 -1
- package/dist/sdk/queryService/index.d.cts +1 -1
- package/dist/sdk/queryService/index.d.ts +1 -1
- package/dist/sdk/queryService/index.js +1 -1
- package/dist/sdk/semanticLayer/index.cjs +1 -2
- package/dist/sdk/semanticLayer/index.d.cts +3 -20
- package/dist/sdk/semanticLayer/index.d.ts +3 -20
- package/dist/sdk/semanticLayer/index.js +2 -2
- package/dist/sdk/semanticLayer/types.d.cts +2 -2
- package/dist/sdk/semanticLayer/types.d.ts +2 -2
- package/dist/sdk/storage/index.d.cts +1 -1
- package/dist/sdk/storage/index.d.ts +1 -1
- package/dist/sdk/tag/index.d.cts +2 -2
- package/dist/sdk/tag/index.d.ts +2 -2
- package/dist/sdk/tag/types.d.cts +1 -1
- package/dist/sdk/tag/types.d.ts +1 -1
- package/dist/sdk/vault/index.d.cts +1 -1
- package/dist/sdk/vault/index.d.ts +1 -1
- package/dist/{semanticLayer-D3NDh_QH.cjs → semanticLayer-7BejcMj_.cjs} +10 -84
- package/dist/semanticLayer-7BejcMj_.cjs.map +1 -0
- package/dist/{semanticLayer-Ddg0LSnt.js → semanticLayer-DvjS_nzo.js} +11 -79
- package/dist/semanticLayer-DvjS_nzo.js.map +1 -0
- package/dist/{serviceIds-DC-H6ZD9.d.ts → serviceIds-DRcoTnSd.d.cts} +1 -2
- package/dist/{serviceIds-DC-H6ZD9.d.cts → serviceIds-DRcoTnSd.d.ts} +1 -2
- package/dist/status/index.cjs +1 -1
- package/dist/status/index.js +1 -1
- package/dist/storage/index.cjs +4 -4
- package/dist/storage/index.d.cts +1 -1
- package/dist/storage/index.d.ts +1 -1
- package/dist/storage/index.js +4 -4
- package/dist/storage/types.d.cts +3 -3
- package/dist/storage/types.d.ts +3 -3
- package/dist/{storage-DAJquqEw.cjs → storage-76Sf_z_H.cjs} +35 -24
- package/dist/storage-76Sf_z_H.cjs.map +1 -0
- package/dist/{storage-C-lyo_iX.js → storage-RkNaOFJ-.js} +35 -24
- package/dist/storage-RkNaOFJ-.js.map +1 -0
- package/dist/stream/index.cjs +3 -3
- package/dist/stream/index.js +3 -3
- package/dist/syncActions/index.cjs +1 -1
- package/dist/syncActions/index.js +1 -1
- package/dist/{syncActions-BQ8kMgL6.js → syncActions-BvFUa9xV.js} +5 -5
- package/dist/{syncActions-BQ8kMgL6.js.map → syncActions-BvFUa9xV.js.map} +1 -1
- package/dist/{syncActions-DyxNmbUR.cjs → syncActions-DlNPhZY4.cjs} +5 -5
- package/dist/{syncActions-DyxNmbUR.cjs.map → syncActions-DlNPhZY4.cjs.map} +1 -1
- package/dist/telemetry/index.cjs +3 -3
- package/dist/telemetry/index.js +3 -3
- package/dist/{types-DwVSj-Da.d.ts → types-9SEE4icc.d.ts} +29 -2
- package/dist/{types-CwZgZqrA.d.ts → types-B-5ya_L5.d.ts} +12 -1
- package/dist/{types-DUMal2E-.d.cts → types-BjR8Yodc.d.cts} +29 -2
- package/dist/{types-CigD_EF5.d.ts → types-CABWhTa9.d.ts} +4 -8
- package/dist/{types-B3i04d_A.d.cts → types-CGm2fQKK.d.cts} +183 -5
- package/dist/{types-BgVt8SUY.d.cts → types-CLHaZv9f.d.cts} +17 -13
- package/dist/{types-04GTqleJ.d.cts → types-CalDJHCX.d.cts} +3 -3
- package/dist/{types-BgHtMe8s.d.cts → types-Ccd9O6ca.d.cts} +3 -3
- package/dist/{types-BzPuxmaR.d.cts → types-D1A4mAG0.d.cts} +2 -2
- package/dist/{types-C0rVtqz2.d.ts → types-D8pGSkRe.d.ts} +17 -13
- package/dist/{types-QSchmyvO.d.ts → types-DVZpKGBJ.d.ts} +3 -3
- package/dist/{types-BWmLo73i.d.cts → types-DVt0qlzI.d.cts} +14 -3
- package/dist/{types-R3AFJD6r.d.ts → types-DazRtukc.d.ts} +14 -3
- package/dist/{types-DyArI_Jq.d.cts → types-DdsYv2WG.d.cts} +4 -8
- package/dist/{types-2Do0DZ60.d.ts → types-DxN2siRW.d.ts} +2 -2
- package/dist/{types-B3P5yAuI.d.ts → types-Fs4a3mVs.d.ts} +183 -5
- package/dist/{types-CAAgCRmE.d.cts → types-tgU8XvPs.d.cts} +12 -1
- package/dist/{types-CV7jmgtX.d.ts → types-z82gSTx8.d.ts} +3 -3
- package/dist/{validateConnectionStatus-gFsBi5FV.js → validateConnectionStatus-CdTV3gsP.js} +3 -3
- package/dist/{validateConnectionStatus-gFsBi5FV.js.map → validateConnectionStatus-CdTV3gsP.js.map} +1 -1
- package/dist/{validateConnectionStatus-Ca1uEizv.cjs → validateConnectionStatus-DR-0h35y.cjs} +3 -3
- package/dist/{validateConnectionStatus-Ca1uEizv.cjs.map → validateConnectionStatus-DR-0h35y.cjs.map} +1 -1
- package/dist/vault/index.cjs +4 -4
- package/dist/vault/index.js +4 -4
- package/package.json +1 -27
- package/surface/dataScience.md +1 -0
- package/surface/management.md +2 -0
- package/surface/queue.md +7 -7
- package/surface/storage.md +7 -7
- package/dist/businessWorkspaceApi/index.cjs +0 -3
- package/dist/businessWorkspaceApi/index.d.cts +0 -2
- package/dist/businessWorkspaceApi/index.d.ts +0 -2
- package/dist/businessWorkspaceApi/index.js +0 -2
- package/dist/businessWorkspaceApi/types.cjs +0 -0
- package/dist/businessWorkspaceApi/types.d.cts +0 -2
- package/dist/businessWorkspaceApi/types.d.ts +0 -2
- package/dist/businessWorkspaceApi/types.js +0 -1
- package/dist/businessWorkspaceApi-DFky1k61.js +0 -61
- package/dist/businessWorkspaceApi-DFky1k61.js.map +0 -1
- package/dist/businessWorkspaceApi-Uzqu0PJM.cjs +0 -66
- package/dist/businessWorkspaceApi-Uzqu0PJM.cjs.map +0 -1
- package/dist/businessWorkspaceApiClient-BHDJlHFo.d.cts +0 -529
- package/dist/businessWorkspaceApiClient-DI-z1VIH.d.ts +0 -529
- package/dist/constants-C2tYAJSj.js.map +0 -1
- package/dist/constants-C6xku_Vx.cjs.map +0 -1
- package/dist/createFetchClient-BgihytBn.cjs.map +0 -1
- package/dist/createFetchClient-cgWkwgAQ.js.map +0 -1
- package/dist/dataScience-BoS8Xfvx.cjs.map +0 -1
- package/dist/dataScience-BxRoGfnG.js.map +0 -1
- package/dist/management-5597SiC7.cjs.map +0 -1
- package/dist/management-D46KlXts.js.map +0 -1
- package/dist/semanticLayer-D3NDh_QH.cjs.map +0 -1
- package/dist/semanticLayer-Ddg0LSnt.js.map +0 -1
- package/dist/storage-C-lyo_iX.js.map +0 -1
- package/dist/storage-DAJquqEw.cjs.map +0 -1
- package/surface/businessWorkspaceApi.md +0 -12
package/AGENTS.md
CHANGED
|
@@ -82,7 +82,7 @@ Two flow-specific factories back the SDK:
|
|
|
82
82
|
`session` is **flow-specific** lifecycle machinery:
|
|
83
83
|
|
|
84
84
|
- bearer: `stack.select(baseUrl)` → `auth.authenticate(credential)` → `project.select(projectId)`,
|
|
85
|
-
plus `auth.signOut()` / `auth.replace(credential)` / `auth.isAuthenticated()` / `auth.isAuthenticatedAsync()` / `auth.rotate(baseUrl)` / `auth.getHeaders(projectId?)`, `stack.close` and
|
|
85
|
+
plus `auth.signOut()` / `auth.replace(credential)` / `auth.isAuthenticated()` / `auth.isAuthenticatedAsync()` / `auth.rotate(baseUrl)` / `auth.getHeaders(projectId?)` / `auth.getHeadersAsync(projectId?)`, `stack.close` and
|
|
86
86
|
the two `deactivate`s, and `getState()` / `subscribe(cb)` over the stack-and-project table. Every
|
|
87
87
|
verb is synchronous — nothing awaits a build; a namespace throws `NotReady` until its fetch lands.
|
|
88
88
|
The one fetch each entry does own is readable both ways: `stack.getContext(baseUrl?)` /
|
|
@@ -167,7 +167,9 @@ Three things follow from that, worth knowing before you hold one:
|
|
|
167
167
|
a fetch client (the chat stream). Pass the project whose `api` produced the URL, so the request's
|
|
168
168
|
headers and its target name the same project. A project id alone does not name a project — two
|
|
169
169
|
stacks can each have a project 138 — so the active stack decides, falling back to a single project
|
|
170
|
-
with that id open elsewhere.
|
|
170
|
+
with that id open elsewhere. `getHeaders` reads the token the fetch clients keep fresh;
|
|
171
|
+
`auth.getHeadersAsync(projectId?)` renews it first once it nears expiry, for a transport that can
|
|
172
|
+
run after the fetch traffic has gone quiet.
|
|
171
173
|
|
|
172
174
|
⚠️ **One client per stack, per page.** Two `createKeboola()` instances signed in to the same stack
|
|
173
175
|
share its single-use refresh token: whichever rotates first invalidates the other's, and that one's
|
package/API-SURFACE.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Every namespace and method reachable from a ready `KeboolaApi` — the `api` half of a keboola client (`createKeboola(...).api` / `createLegacyKeboola(...).api`, or `useApiClient()`). Generated from the TypeScript type checker — see `scripts/gen-surface.mjs`.
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
25 top-level namespaces, 708 methods. This index lists method **names** only — full signatures live per namespace under [`surface/`](./surface). Open `surface/<namespace>.md` for the one you need.
|
|
8
8
|
|
|
9
9
|
## [`api.ai`](./surface/ai.md)
|
|
10
10
|
|
|
@@ -99,15 +99,6 @@ Every namespace and method reachable from a ready `KeboolaApi` — the `api` hal
|
|
|
99
99
|
- `getCreditsAndTopUp`
|
|
100
100
|
- `healthCheck`
|
|
101
101
|
|
|
102
|
-
## [`api.businessWorkspaceApi`](./surface/businessWorkspaceApi.md)
|
|
103
|
-
|
|
104
|
-
- `createDashboard`
|
|
105
|
-
- `deleteDashboard`
|
|
106
|
-
- `getDashboard`
|
|
107
|
-
- `getDashboards`
|
|
108
|
-
- `healthCheck`
|
|
109
|
-
- `updateDashboard`
|
|
110
|
-
|
|
111
102
|
## [`api.chat`](./surface/chat.md)
|
|
112
103
|
|
|
113
104
|
- `createChat`
|
|
@@ -153,6 +144,7 @@ Every namespace and method reachable from a ready `KeboolaApi` — the `api` hal
|
|
|
153
144
|
## [`api.dataScience`](./surface/dataScience.md)
|
|
154
145
|
|
|
155
146
|
- `createApp`
|
|
147
|
+
- `createAppPreviewLink`
|
|
156
148
|
- `deleteApp`
|
|
157
149
|
- `deleteSandbox`
|
|
158
150
|
- `getApp`
|
|
@@ -263,6 +255,7 @@ Every namespace and method reachable from a ready `KeboolaApi` — the `api` hal
|
|
|
263
255
|
- `fileStorage.createFileStorageAbs`
|
|
264
256
|
- `fileStorage.createFileStorageGcs`
|
|
265
257
|
- `fileStorage.createFileStorageS3`
|
|
258
|
+
- `fileStorage.deleteFileStorage`
|
|
266
259
|
- `fileStorage.getFileStoragesAbs`
|
|
267
260
|
- `fileStorage.getFileStoragesGcs`
|
|
268
261
|
- `fileStorage.getFileStoragesS3`
|
|
@@ -272,6 +265,7 @@ Every namespace and method reachable from a ready `KeboolaApi` — the `api` hal
|
|
|
272
265
|
- `fileStorage.setFileStorageAbsDefault`
|
|
273
266
|
- `fileStorage.setFileStorageGcsDefault`
|
|
274
267
|
- `fileStorage.setFileStorageS3Default`
|
|
268
|
+
- `fileStorage.updateFileStorage`
|
|
275
269
|
- `gcpPartner.setUpBigQuery`
|
|
276
270
|
- `healthCheck`
|
|
277
271
|
- `maintainers.addMaintainerUser`
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,57 @@
|
|
|
1
1
|
# @keboola/api-client
|
|
2
2
|
|
|
3
|
+
## 45.0.0
|
|
4
|
+
|
|
5
|
+
### Major Changes
|
|
6
|
+
|
|
7
|
+
- `semanticLayer.deleteModel` sends one `DELETE`; the metastore deletes the model's child objects in the same transaction
|
|
8
|
+
- `SemanticLayerCascadeDeleteError` and the `SemanticModelChildDeleteFailure` type are gone: a model delete either deletes everything or nothing.
|
|
9
|
+
- A `409` `ApiError` means another object holds a `restrict` reference to the model; nothing was deleted.
|
|
10
|
+
- A `404` `ApiError` means the model does not exist or was already deleted.
|
|
11
|
+
- `deleteModel` no longer lists the children first, so it no longer throws `SemanticLayerUnreadableChildrenError`. `listModelChildren` still does.
|
|
12
|
+
- The regenerated metastore schema declares the `409` on `DELETE /repository/{objectType}/{UUID}`.
|
|
13
|
+
|
|
14
|
+
### Minor Changes
|
|
15
|
+
|
|
16
|
+
- A queue job says whether it succeeded.
|
|
17
|
+
- `QueueJob` gains `isSuccess: boolean | null` — `null` while `isFinished` is `false`, `true` for `success` and `warning`, `false` for `error`, `cancelled` and `terminated`.
|
|
18
|
+
- With a job in hand, read `job.isSuccess`; `jobStatus.queue` stays for callers holding only a status.
|
|
19
|
+
|
|
20
|
+
## 44.0.0
|
|
21
|
+
|
|
22
|
+
### Major Changes
|
|
23
|
+
|
|
24
|
+
- Remove the Business Workspace API client
|
|
25
|
+
- `api.businessWorkspaceApi` is gone from the clients `createServiceClients` returns.
|
|
26
|
+
- The `@keboola/api-client/businessWorkspaceApi` and `@keboola/api-client/businessWorkspaceApi/types` subpaths are gone.
|
|
27
|
+
- `ServiceId.BusinessWorkspaceApi` is gone.
|
|
28
|
+
|
|
29
|
+
- Every `files` method addresses a branch: its path is `/v2/storage/branch/{branchId}/files/…` and
|
|
30
|
+
`branchId` is required. Pass `'default'` (or the default branch's id) for what the unbranched call
|
|
31
|
+
used to reach.
|
|
32
|
+
- `getFile`, `getFileContent` and `deleteFile` take `{ branchId, fileId }` instead of a positional id.
|
|
33
|
+
- `getFiles` takes `{ branchId, ...query }`; the input is no longer optional.
|
|
34
|
+
- `addFileTag`, `deleteFileTag` and `prepareFile` take `branchId` in their input.
|
|
35
|
+
|
|
36
|
+
### Minor Changes
|
|
37
|
+
|
|
38
|
+
- `session.auth.getHeadersAsync(projectId?)` returns the bearer auth headers like `getHeaders`, with the access token renewed first once it nears expiry
|
|
39
|
+
- For a transport that is not a fetch client, so no auth middleware renews its token, such as a chat stream.
|
|
40
|
+
- Pinned to the project it resolves at the call; it throws like `getHeaders` if that project closes or its stack signs out during the renewal.
|
|
41
|
+
|
|
42
|
+
- `dataScience.createAppPreviewLink(appId)` mints a 60-second link that opens a dev-mode app without its own authentication.
|
|
43
|
+
|
|
44
|
+
- `management.fileStorage.deleteFileStorage(id)` removes a file storage of any provider, and
|
|
45
|
+
`management.fileStorage.updateFileStorage(id, body)` changes its `owner` or `region`
|
|
46
|
+
|
|
47
|
+
- Management `storageBackends`: `StorageBackend` gains an optional `isEnabled` (returned by the detail endpoint), and the result of `createSnowflakeStorageBackend` is exported as `CreateSnowflakeStorageBackendResponse`.
|
|
48
|
+
|
|
49
|
+
### Patch Changes
|
|
50
|
+
|
|
51
|
+
- A failed request's `ApiError` is safe to log, and `readableReason` reads the Query Service's error sentence.
|
|
52
|
+
- `ApiError.request` is a body-less copy of the request: method, URL and headers, with `X-StorageApi-Token`, `X-KBC-ManageApiToken`, `Authorization` and `Cookie` set to `[REDACTED]`. `console.error(err)`, `util.inspect` and `JSON.stringify` never print the credential.
|
|
53
|
+
- `readableReason` returns the body's `exception` when it has no `message`, so a Query Service failure reads e.g. `Authentication failed` rather than `undefined`.
|
|
54
|
+
|
|
3
55
|
## 43.0.0
|
|
4
56
|
|
|
5
57
|
### Minor Changes
|
|
@@ -59,6 +111,7 @@
|
|
|
59
111
|
`displayName`.
|
|
60
112
|
- `createAliasTable` runs on the typed client.
|
|
61
113
|
- `sdk.storage.exportToFile` takes the client method's input object instead of a positional `tableId`.
|
|
114
|
+
- The `GenericFetchClient` type is no longer exported from `@keboola/api-client/storage`.
|
|
62
115
|
- `setAliasTableFilter` and `removeAliasTableFilter` stay unbranched: the backend serves the alias
|
|
63
116
|
filter only outside branches.
|
|
64
117
|
|
package/README.md
CHANGED
|
@@ -176,7 +176,6 @@ src/
|
|
|
176
176
|
oauth/ # OAuth credentials
|
|
177
177
|
chat/ # Kai Assistant chat
|
|
178
178
|
kaiAgent/ # Kai Agent (agentic assistant)
|
|
179
|
-
businessWorkspaceApi/ # Business Workspace dashboards
|
|
180
179
|
ai/ # AI describe/explain/suggest
|
|
181
180
|
queue/ # Job Queue
|
|
182
181
|
queryService/ # SQL query service
|
|
@@ -212,24 +211,23 @@ src/
|
|
|
212
211
|
On the `api` object returned by `createKeboola()` / `createLegacyKeboola()` — once the session reaches `ready` — the following clients are available.
|
|
213
212
|
Clients backed by OpenAPI specs are marked with (OpenAPI); the rest use the generic fetch client.
|
|
214
213
|
|
|
215
|
-
| Accessor
|
|
216
|
-
|
|
|
217
|
-
| `api.storage`
|
|
218
|
-
| `api.management`
|
|
219
|
-
| `api.vault`
|
|
220
|
-
| `api.oauth`
|
|
221
|
-
| `api.dataScience`
|
|
222
|
-
| `api.editor`
|
|
223
|
-
| `api.encryption`
|
|
224
|
-
| `api.chat`
|
|
225
|
-
| `api.kaiAgent`
|
|
226
|
-
| `api.
|
|
227
|
-
| `api.
|
|
228
|
-
| `api.
|
|
229
|
-
| `api.
|
|
230
|
-
| `api.
|
|
231
|
-
| `api.
|
|
232
|
-
| `api.import` | Import (OpenAPI) | `uploadFile()`, `writeTable()` |
|
|
214
|
+
| Accessor | Service | Key methods |
|
|
215
|
+
| ------------------ | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
216
|
+
| `api.storage` | Storage API | `buckets.*`, `tables.*`, `files.*`, `branches.*`, `workspaces.*`, `mergeRequests.*`, `jobs.*`, `components.*`, `configurations.*`, `configurationRows.*`, `configurationWorkspaces.*`, `tokens.*`, `getStackInfo()` |
|
|
217
|
+
| `api.management` | Management API | `projects.*`, `features.*`, `users.*` |
|
|
218
|
+
| `api.vault` | Vault (OpenAPI) | `getVariables()`, `createVariable()`, `deleteVariable()`, `getVariablesByBranchId()`, `getProjectWideVariables()` |
|
|
219
|
+
| `api.oauth` | OAuth | `getCredentials()`, `getCredential()`, `createCredential()`, `deleteCredential()` |
|
|
220
|
+
| `api.dataScience` | Data Science (OpenAPI) | `getApps()`, `getApp()`, `createApp()`, `patchApp()`, `deleteApp()`, `getAppRuns()`, `getAppRun()`, `getAppLogsTail()`, `getAppLogsDownload()`, `getRuntimes()`, `getSandbox()` |
|
|
221
|
+
| `api.editor` | SQL Editor (OpenAPI) | `createSession()`, `getSession()`, `getSessions()`, `getSessionSchema()`, `createQueryJob()`, `tablePreview()`, `tableDefinition()`, `load()`, `unload()` |
|
|
222
|
+
| `api.encryption` | Encryption | `encrypt()`, `encryptSecrets()` |
|
|
223
|
+
| `api.chat` | Kai Assistant (OpenAPI) | `getHistory()`, `getChat()`, `createChat()`, `deleteChat()`, `getVotes()`, `submitVote()`, `getUsage()`, `getSuggestions()`, `getAgentSettings()`, `getToolsList()` |
|
|
224
|
+
| `api.kaiAgent` | Kai Agent (OpenAPI) | `getHistory()`, `getChat()`, `createChat()`, `deleteChat()`, `approveToolCall()`, `submitToolOutput()`, `getSuggestions()`, `getAgentSettings()` |
|
|
225
|
+
| `api.ai` | AI Service (OpenAPI) | `describeConfiguration()`, `describeConfigurationVersion()`, `describeConfigurationMerge()`, `explainError()`, `suggestComponent()`, `feedback()` |
|
|
226
|
+
| `api.queue` | Job Queue (OpenAPI) | `getJob()`, `searchJobs()` |
|
|
227
|
+
| `api.queryService` | Query Service (OpenAPI) | `createQueryJob()`, `cancelQueryJob()`, `getQueryJob()`, `getQueryResults()`, `getQueryHistory()`, `exportResults()` |
|
|
228
|
+
| `api.syncActions` | Sync Actions (OpenAPI) | `sendSyncAction()` + one namespace per component; see [`surface/syncActions.md`](./surface/syncActions.md) |
|
|
229
|
+
| `api.telemetry` | Telemetry | `provisioning.*` |
|
|
230
|
+
| `api.import` | Import (OpenAPI) | `uploadFile()`, `writeTable()` |
|
|
233
231
|
|
|
234
232
|
Additional accessors on the ready client:
|
|
235
233
|
|
package/dist/{ManagementClientAuthError-DUbXlry2.js → ManagementClientAuthError-BcPYxAWZ.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { p as ApiError } from "./createFetchClient-DITkTV2k.js";
|
|
2
2
|
//#region src/errors/ManagementClientAuthError.ts
|
|
3
3
|
var ManagementClientAuthError = class extends ApiError {
|
|
4
4
|
title;
|
|
@@ -13,4 +13,4 @@ var ManagementClientAuthError = class extends ApiError {
|
|
|
13
13
|
//#endregion
|
|
14
14
|
export { ManagementClientAuthError as t };
|
|
15
15
|
|
|
16
|
-
//# sourceMappingURL=ManagementClientAuthError-
|
|
16
|
+
//# sourceMappingURL=ManagementClientAuthError-BcPYxAWZ.js.map
|
package/dist/{ManagementClientAuthError-DUbXlry2.js.map → ManagementClientAuthError-BcPYxAWZ.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ManagementClientAuthError-
|
|
1
|
+
{"version":3,"file":"ManagementClientAuthError-BcPYxAWZ.js","names":[],"sources":["../src/errors/ManagementClientAuthError.ts"],"sourcesContent":["import type { ApiResponse } from '../fetchClient/createFetchClient/types';\n\nimport { ApiError } from './ApiError';\n\nexport class ManagementClientAuthError extends ApiError {\n title: string;\n message: string;\n constructor(title: string, message: string, res: ApiResponse) {\n super(res);\n this.name = 'ManagementClientAuthError';\n this.title = title;\n this.message = message;\n }\n}\n"],"mappings":";;AAIA,IAAa,4BAAb,cAA+C,SAAS;CACtD;CACA;CACA,YAAY,OAAe,SAAiB,KAAkB;EAC5D,MAAM,GAAG;EACT,KAAK,OAAO;EACZ,KAAK,QAAQ;EACb,KAAK,UAAU;CACjB;AACF"}
|
package/dist/{ManagementClientAuthError-BFZOtLgj.cjs → ManagementClientAuthError-DHuykEPF.cjs}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const require_createFetchClient = require("./createFetchClient-
|
|
1
|
+
const require_createFetchClient = require("./createFetchClient-ClWD4ua3.cjs");
|
|
2
2
|
//#region src/errors/ManagementClientAuthError.ts
|
|
3
3
|
var ManagementClientAuthError = class extends require_createFetchClient.ApiError {
|
|
4
4
|
title;
|
|
@@ -18,4 +18,4 @@ Object.defineProperty(exports, "ManagementClientAuthError", {
|
|
|
18
18
|
}
|
|
19
19
|
});
|
|
20
20
|
|
|
21
|
-
//# sourceMappingURL=ManagementClientAuthError-
|
|
21
|
+
//# sourceMappingURL=ManagementClientAuthError-DHuykEPF.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ManagementClientAuthError-
|
|
1
|
+
{"version":3,"file":"ManagementClientAuthError-DHuykEPF.cjs","names":["ApiError"],"sources":["../src/errors/ManagementClientAuthError.ts"],"sourcesContent":["import type { ApiResponse } from '../fetchClient/createFetchClient/types';\n\nimport { ApiError } from './ApiError';\n\nexport class ManagementClientAuthError extends ApiError {\n title: string;\n message: string;\n constructor(title: string, message: string, res: ApiResponse) {\n super(res);\n this.name = 'ManagementClientAuthError';\n this.title = title;\n this.message = message;\n }\n}\n"],"mappings":";;AAIA,IAAa,4BAAb,cAA+CA,0BAAAA,SAAS;CACtD;CACA;CACA,YAAY,OAAe,SAAiB,KAAkB;EAC5D,MAAM,GAAG;EACT,KAAK,OAAO;EACZ,KAAK,QAAQ;EACb,KAAK,UAAU;CACjB;AACF"}
|
package/dist/ai/index.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_createOpenapiFetchClient = require("../createOpenapiFetchClient-
|
|
3
|
-
const require_auth = require("../auth-
|
|
2
|
+
const require_createOpenapiFetchClient = require("../createOpenapiFetchClient-CioTX11-.cjs");
|
|
3
|
+
const require_auth = require("../auth-C9o_0bft.cjs");
|
|
4
4
|
//#region src/clients/ai/aiClient.ts
|
|
5
5
|
const createAiClient = ({ baseUrl, middlewares, auth }) => {
|
|
6
6
|
const client = require_createOpenapiFetchClient.createOpenapiFetchClient({
|
package/dist/ai/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { t as createOpenapiFetchClient } from "../createOpenapiFetchClient-
|
|
2
|
-
import { t as createAuthHeaders } from "../auth-
|
|
1
|
+
import { t as createOpenapiFetchClient } from "../createOpenapiFetchClient-wq8iGLZM.js";
|
|
2
|
+
import { t as createAuthHeaders } from "../auth-C6cHWIWx.js";
|
|
3
3
|
//#region src/clients/ai/aiClient.ts
|
|
4
4
|
const createAiClient = ({ baseUrl, middlewares, auth }) => {
|
|
5
5
|
const client = createOpenapiFetchClient({
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
const require_rolldown_runtime = require("./rolldown-runtime-VH7oDXx4.cjs");
|
|
2
2
|
const require_isPlainObject = require("./isPlainObject-BB3iy87C.cjs");
|
|
3
|
-
const require_createFetchClient = require("./createFetchClient-
|
|
3
|
+
const require_createFetchClient = require("./createFetchClient-ClWD4ua3.cjs");
|
|
4
4
|
let zod = require("zod");
|
|
5
5
|
zod = require_rolldown_runtime.__toESM(zod, 1);
|
|
6
6
|
let dayjs = require("dayjs");
|
|
@@ -150,4 +150,4 @@ Object.defineProperty(exports, "readAppLogsTail", {
|
|
|
150
150
|
}
|
|
151
151
|
});
|
|
152
152
|
|
|
153
|
-
//# sourceMappingURL=appLogs-
|
|
153
|
+
//# sourceMappingURL=appLogs-BG9ueGxA.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"appLogs-
|
|
1
|
+
{"version":3,"file":"appLogs-BG9ueGxA.cjs","names":["utc","z","record","isPlainObject","isApiError","HttpStatus","parseContentDispositionHeader","HttpHeader"],"sources":["../src/domain/appLogs.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport utc from 'dayjs/plugin/utc.js';\nimport * as z from 'zod';\n\nimport {\n type ApiResponse,\n HttpHeader,\n isApiError,\n parseContentDispositionHeader,\n} from '../fetchClient';\nimport { HttpStatus } from '../internal';\nimport { isPlainObject } from '../utils/isPlainObject';\n\n/**\n * Reading a data app's container output. Shared by the two clients wrapping sandboxes-service —\n * `dataScience` (`/v1`) and `apps` (`/v2`) — which serve the same logs under different paths, so the\n * tail contract (how a line is parsed, where the next poll resumes, and that an idle app is not an\n * error) is defined once here rather than per surface.\n */\n\ndayjs.extend(utc);\n\nexport type LogEntry = {\n timestamp: string | null;\n message: string;\n};\n\nconst DEFAULT_LOGS_FILE_NAME = 'logs.txt';\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\n/** The error envelope sandboxes-service returns; the tail branches on its `code`. */\nconst TailError = z.object({\n context: z.object({\n code: z.string(),\n }),\n});\n\n/**\n * There is nothing to read right now, reported per scope: an app whose serving member is asleep\n * answers `apps.appNotRunning`, a deployment that isn't running answers `apps.deploymentNotRunning` —\n * the normal state of a staged or retired one, since a deployment only runs while it is production.\n */\nconst NOTHING_RUNNING_CODES = new Set(['apps.appNotRunning', 'apps.deploymentNotRunning']);\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 lastLogTimestamp = (entries: LogEntry[]) => {\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\nconst calculateNextLogTimestamp = (timestamp: string | null) => {\n if (timestamp === null) return null;\n return dayjs(timestamp).utc().add(1, 'second').utc().format();\n};\n\n/**\n * The tail plus the timestamp a follow-up poll resumes from. A {@link NOTHING_RUNNING_CODES} `400`\n * reads as an empty tail rather than an error — an idle app between visits, or a deployment that is\n * not the one currently serving, has no logs to stream and that is its normal condition.\n */\nexport const readAppLogsTail = async (fetchTail: () => Promise<ApiResponse<string>>) => {\n try {\n const { data } = await fetchTail();\n const entries = parseLogLines(data);\n\n return {\n entries,\n nextLogTimestamp: calculateNextLogTimestamp(lastLogTimestamp(entries)),\n };\n } catch (error) {\n if (isApiError(error) && error.response.status === HttpStatus.BAD_REQUEST) {\n const code = TailError.safeParse(error.data).data?.context?.code;\n if (code !== undefined && NOTHING_RUNNING_CODES.has(code)) {\n return { entries: [], nextLogTimestamp: null };\n }\n }\n throw error;\n }\n};\n\n/** The whole log as a file download, named by the service's `Content-Disposition` where it sets one. */\nexport const readAppLogsDownload = async (fetchLogs: () => Promise<ApiResponse<string>>) => {\n const { data, response } = await fetchLogs();\n const contentDisposition = parseContentDispositionHeader(\n response.headers.get(HttpHeader.CONTENT_DISPOSITION),\n );\n\n return {\n logs: data,\n fileName: contentDisposition.filename ?? DEFAULT_LOGS_FILE_NAME,\n };\n};\n"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as isPlainObject } from "./isPlainObject-LYW-03uB.js";
|
|
2
|
-
import { f as parseContentDispositionHeader,
|
|
2
|
+
import { f as parseContentDispositionHeader, g as HttpStatus, r as isApiError, s as HttpHeader } from "./createFetchClient-DITkTV2k.js";
|
|
3
3
|
import * as z$1 from "zod";
|
|
4
4
|
import dayjs from "dayjs";
|
|
5
5
|
import utc from "dayjs/plugin/utc.js";
|
|
@@ -129,4 +129,4 @@ const readAppLogsDownload = async (fetchLogs) => {
|
|
|
129
129
|
//#endregion
|
|
130
130
|
export { readAppLogsDownload as n, readAppLogsTail as r, parseLogLines as t };
|
|
131
131
|
|
|
132
|
-
//# sourceMappingURL=appLogs-
|
|
132
|
+
//# sourceMappingURL=appLogs-CEKz68bE.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"appLogs-
|
|
1
|
+
{"version":3,"file":"appLogs-CEKz68bE.js","names":["z","record"],"sources":["../src/domain/appLogs.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport utc from 'dayjs/plugin/utc.js';\nimport * as z from 'zod';\n\nimport {\n type ApiResponse,\n HttpHeader,\n isApiError,\n parseContentDispositionHeader,\n} from '../fetchClient';\nimport { HttpStatus } from '../internal';\nimport { isPlainObject } from '../utils/isPlainObject';\n\n/**\n * Reading a data app's container output. Shared by the two clients wrapping sandboxes-service —\n * `dataScience` (`/v1`) and `apps` (`/v2`) — which serve the same logs under different paths, so the\n * tail contract (how a line is parsed, where the next poll resumes, and that an idle app is not an\n * error) is defined once here rather than per surface.\n */\n\ndayjs.extend(utc);\n\nexport type LogEntry = {\n timestamp: string | null;\n message: string;\n};\n\nconst DEFAULT_LOGS_FILE_NAME = 'logs.txt';\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\n/** The error envelope sandboxes-service returns; the tail branches on its `code`. */\nconst TailError = z.object({\n context: z.object({\n code: z.string(),\n }),\n});\n\n/**\n * There is nothing to read right now, reported per scope: an app whose serving member is asleep\n * answers `apps.appNotRunning`, a deployment that isn't running answers `apps.deploymentNotRunning` —\n * the normal state of a staged or retired one, since a deployment only runs while it is production.\n */\nconst NOTHING_RUNNING_CODES = new Set(['apps.appNotRunning', 'apps.deploymentNotRunning']);\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 lastLogTimestamp = (entries: LogEntry[]) => {\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\nconst calculateNextLogTimestamp = (timestamp: string | null) => {\n if (timestamp === null) return null;\n return dayjs(timestamp).utc().add(1, 'second').utc().format();\n};\n\n/**\n * The tail plus the timestamp a follow-up poll resumes from. A {@link NOTHING_RUNNING_CODES} `400`\n * reads as an empty tail rather than an error — an idle app between visits, or a deployment that is\n * not the one currently serving, has no logs to stream and that is its normal condition.\n */\nexport const readAppLogsTail = async (fetchTail: () => Promise<ApiResponse<string>>) => {\n try {\n const { data } = await fetchTail();\n const entries = parseLogLines(data);\n\n return {\n entries,\n nextLogTimestamp: calculateNextLogTimestamp(lastLogTimestamp(entries)),\n };\n } catch (error) {\n if (isApiError(error) && error.response.status === HttpStatus.BAD_REQUEST) {\n const code = TailError.safeParse(error.data).data?.context?.code;\n if (code !== undefined && NOTHING_RUNNING_CODES.has(code)) {\n return { entries: [], nextLogTimestamp: null };\n }\n }\n throw error;\n }\n};\n\n/** The whole log as a file download, named by the service's `Content-Disposition` where it sets one. */\nexport const readAppLogsDownload = async (fetchLogs: () => Promise<ApiResponse<string>>) => {\n const { data, response } = await fetchLogs();\n const contentDisposition = parseContentDispositionHeader(\n response.headers.get(HttpHeader.CONTENT_DISPOSITION),\n );\n\n return {\n logs: data,\n fileName: contentDisposition.filename ?? DEFAULT_LOGS_FILE_NAME,\n };\n};\n"],"mappings":"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"}
|
package/dist/apps/index.cjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_createOpenapiFetchClient = require("../createOpenapiFetchClient-
|
|
3
|
-
const require_auth = require("../auth-
|
|
4
|
-
const require_appLogs = require("../appLogs-
|
|
2
|
+
const require_createOpenapiFetchClient = require("../createOpenapiFetchClient-CioTX11-.cjs");
|
|
3
|
+
const require_auth = require("../auth-C9o_0bft.cjs");
|
|
4
|
+
const require_appLogs = require("../appLogs-BG9ueGxA.cjs");
|
|
5
5
|
//#region src/clients/apps/appsClient.ts
|
|
6
6
|
/**
|
|
7
7
|
* `/v2` App Deployments — data apps and their immutable deployment history.
|
package/dist/apps/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { t as createOpenapiFetchClient } from "../createOpenapiFetchClient-
|
|
2
|
-
import { t as createAuthHeaders } from "../auth-
|
|
3
|
-
import { n as readAppLogsDownload, r as readAppLogsTail } from "../appLogs-
|
|
1
|
+
import { t as createOpenapiFetchClient } from "../createOpenapiFetchClient-wq8iGLZM.js";
|
|
2
|
+
import { t as createAuthHeaders } from "../auth-C6cHWIWx.js";
|
|
3
|
+
import { n as readAppLogsDownload, r as readAppLogsTail } from "../appLogs-CEKz68bE.js";
|
|
4
4
|
//#region src/clients/apps/appsClient.ts
|
|
5
5
|
/**
|
|
6
6
|
* `/v2` App Deployments — data apps and their immutable deployment history.
|
package/dist/assets/index.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_createGenericFetchClient = require("../createGenericFetchClient-
|
|
2
|
+
const require_createGenericFetchClient = require("../createGenericFetchClient-B81Iezpb.cjs");
|
|
3
3
|
const require_assets_schema = require("./schema.cjs");
|
|
4
4
|
//#region src/clients/assets/assetsClient.ts
|
|
5
5
|
const createAssetsClient = ({ baseUrl, middlewares }) => {
|
package/dist/assets/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as createGenericFetchClient } from "../createGenericFetchClient-
|
|
1
|
+
import { t as createGenericFetchClient } from "../createGenericFetchClient-KqiJhw8G.js";
|
|
2
2
|
import { componentTemplatesSchema, publishedPostsSchema } from "./schema.js";
|
|
3
3
|
//#region src/clients/assets/assetsClient.ts
|
|
4
4
|
const createAssetsClient = ({ baseUrl, middlewares }) => {
|
package/dist/auth/index.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_authClient = require("../authClient-
|
|
2
|
+
const require_authClient = require("../authClient-DZcAR-eW.cjs");
|
|
3
3
|
exports.MFA_METHOD = require_authClient.MFA_METHOD;
|
|
4
4
|
exports.apiLoginResultSchema = require_authClient.apiLoginResultSchema;
|
|
5
5
|
exports.apiLoginSuccessSchema = require_authClient.apiLoginSuccessSchema;
|
package/dist/auth/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { _ as passwordInputSchema, a as resetInputSchema, c as mfaCodeInputSchema, d as apiLoginResultSchema, f as apiLoginSuccessSchema, g as oidcInputSchema, h as mfaChallengeSchema, i as changeInputSchema, l as mfaWebauthnInputSchema, m as browserLoginSuccessSchema, n as refreshSessionInputSchema, o as resetRequestInputSchema, p as browserLoginResultSchema, r as refreshTokenInputSchema, s as MFA_METHOD, t as createAuthClient, u as totpVerifyInputSchema } from "../authClient-
|
|
1
|
+
import { _ as passwordInputSchema, a as resetInputSchema, c as mfaCodeInputSchema, d as apiLoginResultSchema, f as apiLoginSuccessSchema, g as oidcInputSchema, h as mfaChallengeSchema, i as changeInputSchema, l as mfaWebauthnInputSchema, m as browserLoginSuccessSchema, n as refreshSessionInputSchema, o as resetRequestInputSchema, p as browserLoginResultSchema, r as refreshTokenInputSchema, s as MFA_METHOD, t as createAuthClient, u as totpVerifyInputSchema } from "../authClient-CACOwVt0.js";
|
|
2
2
|
export { MFA_METHOD, apiLoginResultSchema, apiLoginSuccessSchema, browserLoginResultSchema, browserLoginSuccessSchema, changeInputSchema, createAuthClient, mfaChallengeSchema, mfaCodeInputSchema, mfaWebauthnInputSchema, oidcInputSchema, passwordInputSchema, refreshSessionInputSchema, refreshTokenInputSchema, resetInputSchema, resetRequestInputSchema, totpVerifyInputSchema };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { _ as KeboolaHttpHeader, s as HttpHeader } from "./createFetchClient-DITkTV2k.js";
|
|
2
2
|
//#region src/clients/auth.ts
|
|
3
3
|
const createAuthHeaders = (auth) => {
|
|
4
4
|
if (auth.type === "sapi-token") return { [KeboolaHttpHeader.STORAGE_API_TOKEN]: auth.token };
|
|
@@ -10,4 +10,4 @@ const createAuthHeaders = (auth) => {
|
|
|
10
10
|
//#endregion
|
|
11
11
|
export { createAuthHeaders as t };
|
|
12
12
|
|
|
13
|
-
//# sourceMappingURL=auth-
|
|
13
|
+
//# sourceMappingURL=auth-C6cHWIWx.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-
|
|
1
|
+
{"version":3,"file":"auth-C6cHWIWx.js","names":[],"sources":["../src/clients/auth.ts"],"sourcesContent":["import { HttpHeader } from '../fetchClient';\nimport { KeboolaHttpHeader } from '../internal';\n\nexport type AuthStrategy =\n | {\n type: 'sapi-token';\n token: string;\n }\n | {\n type: 'bearer';\n token: string;\n projectId: number;\n };\n\nexport const createAuthHeaders = (auth: AuthStrategy): Record<string, string> => {\n if (auth.type === 'sapi-token') return { [KeboolaHttpHeader.STORAGE_API_TOKEN]: auth.token };\n\n // `auth.token` is the bare token; the `Bearer ` wire prefix is added here (mirroring the\n // management client). In the browser bearer flow the bearer auth middleware stamps the\n // Authorization header on every request, so this value only matters for middleware-less\n // clients (e.g. kai-agent's storage token verification).\n return {\n [HttpHeader.AUTHORIZATION]: `Bearer ${auth.token}`,\n [KeboolaHttpHeader.PROJECT_ID]: auth.projectId.toString(),\n };\n};\n"],"mappings":";;AAcA,MAAa,qBAAqB,SAA+C;CAC/E,IAAI,KAAK,SAAS,cAAc,OAAO,GAAG,kBAAkB,oBAAoB,KAAK,MAAM;CAM3F,OAAO;GACJ,WAAW,gBAAgB,UAAU,KAAK;GAC1C,kBAAkB,aAAa,KAAK,UAAU,SAAS;CAC1D;AACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const require_createFetchClient = require("./createFetchClient-
|
|
1
|
+
const require_createFetchClient = require("./createFetchClient-ClWD4ua3.cjs");
|
|
2
2
|
//#region src/clients/auth.ts
|
|
3
3
|
const createAuthHeaders = (auth) => {
|
|
4
4
|
if (auth.type === "sapi-token") return { [require_createFetchClient.KeboolaHttpHeader.STORAGE_API_TOKEN]: auth.token };
|
|
@@ -15,4 +15,4 @@ Object.defineProperty(exports, "createAuthHeaders", {
|
|
|
15
15
|
}
|
|
16
16
|
});
|
|
17
17
|
|
|
18
|
-
//# sourceMappingURL=auth-
|
|
18
|
+
//# sourceMappingURL=auth-C9o_0bft.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-
|
|
1
|
+
{"version":3,"file":"auth-C9o_0bft.cjs","names":["KeboolaHttpHeader","HttpHeader"],"sources":["../src/clients/auth.ts"],"sourcesContent":["import { HttpHeader } from '../fetchClient';\nimport { KeboolaHttpHeader } from '../internal';\n\nexport type AuthStrategy =\n | {\n type: 'sapi-token';\n token: string;\n }\n | {\n type: 'bearer';\n token: string;\n projectId: number;\n };\n\nexport const createAuthHeaders = (auth: AuthStrategy): Record<string, string> => {\n if (auth.type === 'sapi-token') return { [KeboolaHttpHeader.STORAGE_API_TOKEN]: auth.token };\n\n // `auth.token` is the bare token; the `Bearer ` wire prefix is added here (mirroring the\n // management client). In the browser bearer flow the bearer auth middleware stamps the\n // Authorization header on every request, so this value only matters for middleware-less\n // clients (e.g. kai-agent's storage token verification).\n return {\n [HttpHeader.AUTHORIZATION]: `Bearer ${auth.token}`,\n [KeboolaHttpHeader.PROJECT_ID]: auth.projectId.toString(),\n };\n};\n"],"mappings":";;AAcA,MAAa,qBAAqB,SAA+C;CAC/E,IAAI,KAAK,SAAS,cAAc,OAAO,GAAGA,0BAAAA,kBAAkB,oBAAoB,KAAK,MAAM;CAM3F,OAAO;GACJC,0BAAAA,WAAW,gBAAgB,UAAU,KAAK;GAC1CD,0BAAAA,kBAAkB,aAAa,KAAK,UAAU,SAAS;CAC1D;AACF"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as validateConnectionStatus } from "./validateConnectionStatus-
|
|
3
|
-
import { t as createGenericFetchClient } from "./createGenericFetchClient-
|
|
4
|
-
import { t as createOpenapiFetchClient } from "./createOpenapiFetchClient-
|
|
1
|
+
import { _ as KeboolaHttpHeader, s as HttpHeader } from "./createFetchClient-DITkTV2k.js";
|
|
2
|
+
import { t as validateConnectionStatus } from "./validateConnectionStatus-CdTV3gsP.js";
|
|
3
|
+
import { t as createGenericFetchClient } from "./createGenericFetchClient-KqiJhw8G.js";
|
|
4
|
+
import { t as createOpenapiFetchClient } from "./createOpenapiFetchClient-wq8iGLZM.js";
|
|
5
5
|
import * as z$1 from "zod";
|
|
6
6
|
//#region src/clients/auth/device/device.ts
|
|
7
7
|
const createDevice = (client) => {
|
|
@@ -531,4 +531,4 @@ const createAuthClient = ({ baseUrl, middlewares }) => {
|
|
|
531
531
|
//#endregion
|
|
532
532
|
export { passwordInputSchema as _, resetInputSchema as a, mfaCodeInputSchema as c, apiLoginResultSchema as d, apiLoginSuccessSchema as f, oidcInputSchema as g, mfaChallengeSchema as h, changeInputSchema as i, mfaWebauthnInputSchema as l, browserLoginSuccessSchema as m, refreshSessionInputSchema as n, resetRequestInputSchema as o, browserLoginResultSchema as p, refreshTokenInputSchema as r, MFA_METHOD as s, createAuthClient as t, totpVerifyInputSchema as u };
|
|
533
533
|
|
|
534
|
-
//# sourceMappingURL=authClient-
|
|
534
|
+
//# sourceMappingURL=authClient-CACOwVt0.js.map
|