@keboola/api-client 32.0.0 → 34.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 +82 -4
- package/API-SURFACE.md +19 -2
- package/CHANGELOG.md +465 -0
- package/dist/{ManagementClientAuthError-B-tyPlyG.cjs → ManagementClientAuthError-DD4u0EU7.cjs} +2 -2
- package/dist/{ManagementClientAuthError-B-tyPlyG.cjs.map → ManagementClientAuthError-DD4u0EU7.cjs.map} +1 -1
- package/dist/{ManagementClientAuthError-BAFNvOdf.js → ManagementClientAuthError-ey-f03vy.js} +2 -2
- package/dist/{ManagementClientAuthError-BAFNvOdf.js.map → ManagementClientAuthError-ey-f03vy.js.map} +1 -1
- package/dist/{ValidationError-CzPWydEb.js → ValidationError-BekhphAq.js} +11 -7
- package/dist/ValidationError-BekhphAq.js.map +1 -0
- package/dist/{ValidationError-h5qvwahi.cjs → ValidationError-CLVJCCwH.cjs} +16 -6
- package/dist/ValidationError-CLVJCCwH.cjs.map +1 -0
- package/dist/ai/index.cjs +2 -2
- package/dist/ai/index.d.cts +2 -2
- package/dist/ai/index.d.ts +2 -2
- package/dist/ai/index.js +2 -2
- package/dist/ai/types.d.cts +1 -1
- package/dist/ai/types.d.ts +1 -1
- package/dist/{appLogs-NIEDTDHf.cjs → appLogs-BjfUoWzs.cjs} +2 -2
- package/dist/{appLogs-NIEDTDHf.cjs.map → appLogs-BjfUoWzs.cjs.map} +1 -1
- package/dist/{appLogs-DX_WTBCa.d.ts → appLogs-Ch7DYpzx.d.ts} +2 -2
- package/dist/{appLogs-BAaaGYKg.d.cts → appLogs-D5A13Y0y.d.cts} +2 -2
- package/dist/{appLogs-DTLE6HTy.js → appLogs-xsVkTriU.js} +2 -2
- package/dist/{appLogs-DTLE6HTy.js.map → appLogs-xsVkTriU.js.map} +1 -1
- package/dist/apps/index.cjs +3 -3
- package/dist/apps/index.d.cts +3 -3
- package/dist/apps/index.d.ts +3 -3
- package/dist/apps/index.js +3 -3
- package/dist/apps/types.d.cts +2 -2
- package/dist/apps/types.d.ts +2 -2
- package/dist/assets/index.cjs +1 -1
- package/dist/assets/index.d.cts +1 -1
- package/dist/assets/index.d.ts +1 -1
- package/dist/assets/index.js +1 -1
- package/dist/auth/index.cjs +1 -1
- package/dist/auth/index.d.cts +1 -1
- package/dist/auth/index.d.ts +1 -1
- package/dist/auth/index.js +1 -1
- package/dist/auth/types.d.cts +2 -2
- package/dist/auth/types.d.ts +2 -2
- package/dist/{auth-DP-6TFiM.cjs → auth-JQ33o3nU.cjs} +2 -2
- package/dist/{auth-DP-6TFiM.cjs.map → auth-JQ33o3nU.cjs.map} +1 -1
- package/dist/{auth-DtbQaeDj.js → auth-aItmDu45.js} +2 -2
- package/dist/{auth-DtbQaeDj.js.map → auth-aItmDu45.js.map} +1 -1
- package/dist/{authClient-DhfzOUaa.d.cts → authClient-CTHNs6Tq.d.cts} +6 -6
- package/dist/{authClient--BtZgjIc.js → authClient-D7W9vWPR.js} +43 -9
- package/dist/authClient-D7W9vWPR.js.map +1 -0
- package/dist/{authClient-CtfyVHRD.d.ts → authClient-D8i3JTM-.d.ts} +6 -6
- package/dist/{authClient-b7uec7sw.cjs → authClient-_PpvGgZJ.cjs} +43 -9
- package/dist/authClient-_PpvGgZJ.cjs.map +1 -0
- package/dist/billing/index.cjs +46 -0
- package/dist/billing/index.cjs.map +1 -0
- package/dist/billing/index.d.cts +48 -0
- package/dist/billing/index.d.ts +48 -0
- package/dist/billing/index.js +45 -0
- package/dist/billing/index.js.map +1 -0
- package/dist/billing/types.cjs +0 -0
- package/dist/billing/types.d.cts +635 -0
- package/dist/billing/types.d.ts +635 -0
- package/dist/billing/types.js +1 -0
- package/dist/chat/index.cjs +3 -3
- package/dist/chat/index.d.cts +2 -2
- package/dist/chat/index.d.ts +2 -2
- package/dist/chat/index.js +3 -3
- package/dist/chat/types.cjs +18 -0
- package/dist/chat/types.cjs.map +1 -1
- package/dist/chat/types.d.cts +2 -2
- package/dist/chat/types.d.ts +2 -2
- package/dist/chat/types.js +18 -1
- package/dist/chat/types.js.map +1 -1
- package/dist/{configurations-d7SZmw69.js → configurations-BVvcimzo.js} +17 -2
- package/dist/configurations-BVvcimzo.js.map +1 -0
- package/dist/{configurations-CqwAxiQL.cjs → configurations-CyFF9Dtu.cjs} +22 -1
- package/dist/configurations-CyFF9Dtu.cjs.map +1 -0
- package/dist/{configurations-ZwBXilW-.js → configurations-VtNE0nrT.js} +2 -2
- package/dist/{configurations-ZwBXilW-.js.map → configurations-VtNE0nrT.js.map} +1 -1
- package/dist/{configurations-Ck-mNB_E.cjs → configurations-zkNjr73Q.cjs} +2 -2
- package/dist/{configurations-Ck-mNB_E.cjs.map → configurations-zkNjr73Q.cjs.map} +1 -1
- 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-lIfSdTzS.cjs → constants-C4DlsF_M.cjs} +3 -2
- package/dist/constants-C4DlsF_M.cjs.map +1 -0
- package/dist/{constants-ByEwVtGf.js → constants-wfbFsqqN.js} +3 -2
- package/dist/constants-wfbFsqqN.js.map +1 -0
- package/dist/{createFetchClient-BRfTjBLV.cjs → createFetchClient-DgMiqTJ8.cjs} +26 -4
- package/dist/createFetchClient-DgMiqTJ8.cjs.map +1 -0
- package/dist/{createFetchClient-BbG46bL0.js → createFetchClient-U-ZrwPl2.js} +15 -5
- package/dist/createFetchClient-U-ZrwPl2.js.map +1 -0
- package/dist/{createGenericFetchClient-DHs-i7_O.cjs → createGenericFetchClient-o3cPJeRn.cjs} +2 -2
- package/dist/{createGenericFetchClient-DHs-i7_O.cjs.map → createGenericFetchClient-o3cPJeRn.cjs.map} +1 -1
- package/dist/{createGenericFetchClient-BHYQLZhe.js → createGenericFetchClient-rxvUUbap.js} +2 -2
- package/dist/{createGenericFetchClient-BHYQLZhe.js.map → createGenericFetchClient-rxvUUbap.js.map} +1 -1
- package/dist/{createOpenapiFetchClient-Bn6_Pn0H.js → createOpenapiFetchClient-BVSc9ibR.js} +2 -2
- package/dist/{createOpenapiFetchClient-Bn6_Pn0H.js.map → createOpenapiFetchClient-BVSc9ibR.js.map} +1 -1
- package/dist/{createOpenapiFetchClient-CyDUFxHB.cjs → createOpenapiFetchClient-DhUU3M1W.cjs} +2 -2
- package/dist/{createOpenapiFetchClient-CyDUFxHB.cjs.map → createOpenapiFetchClient-DhUU3M1W.cjs.map} +1 -1
- package/dist/{credential-d2RDcXRB.js → credential-CihSf_xs.js} +7 -4
- package/dist/credential-CihSf_xs.js.map +1 -0
- package/dist/{credential-DOXH7XRS.cjs → credential-DVWvJFJs.cjs} +7 -4
- package/dist/credential-DVWvJFJs.cjs.map +1 -0
- package/dist/dataScience/index.cjs +2 -2
- package/dist/dataScience/index.d.cts +2 -2
- package/dist/dataScience/index.d.ts +2 -2
- 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-wexHEIue.cjs → dataScience-0Rl_EuV_.cjs} +5 -5
- package/dist/{dataScience-wexHEIue.cjs.map → dataScience-0Rl_EuV_.cjs.map} +1 -1
- package/dist/{dataScience-Sm8iONhP.js → dataScience-C1gO5zUn.js} +5 -5
- package/dist/{dataScience-Sm8iONhP.js.map → dataScience-C1gO5zUn.js.map} +1 -1
- package/dist/developerPortal/index.cjs +1 -1
- package/dist/developerPortal/index.d.cts +2 -2
- package/dist/developerPortal/index.d.ts +2 -2
- package/dist/developerPortal/index.js +1 -1
- package/dist/developerPortal/types.d.cts +1 -1
- package/dist/developerPortal/types.d.ts +1 -1
- package/dist/{developerPortalClient-DywKpDlW.js → developerPortalClient-C_48z8BN.js} +3 -3
- package/dist/{developerPortalClient-DywKpDlW.js.map → developerPortalClient-C_48z8BN.js.map} +1 -1
- package/dist/{developerPortalClient-CgTSzLoG.cjs → developerPortalClient-ki0XS_OD.cjs} +3 -3
- package/dist/{developerPortalClient-CgTSzLoG.cjs.map → developerPortalClient-ki0XS_OD.cjs.map} +1 -1
- package/dist/domain/permissions/index.cjs +2 -1
- package/dist/domain/permissions/index.d.cts +18 -3
- package/dist/domain/permissions/index.d.ts +18 -3
- package/dist/domain/permissions/index.js +2 -2
- package/dist/editor/index.cjs +2 -2
- package/dist/editor/index.d.cts +2 -2
- package/dist/editor/index.d.ts +2 -2
- package/dist/editor/index.js +2 -2
- package/dist/editor/types.d.cts +1 -1
- package/dist/editor/types.d.ts +1 -1
- package/dist/emitter-dLF1Fyfg.d.cts +11 -0
- package/dist/emitter-dLF1Fyfg.d.ts +11 -0
- 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.d.cts +3 -3
- package/dist/import/index.d.ts +3 -3
- package/dist/import/index.js +1 -1
- package/dist/{import-C0-y1GQK.cjs → import-C83w7BKz.cjs} +3 -3
- package/dist/{import-C0-y1GQK.cjs.map → import-C83w7BKz.cjs.map} +1 -1
- package/dist/{import-SQuurg1G.js → import-CROEK82b.js} +3 -3
- package/dist/{import-SQuurg1G.js.map → import-CROEK82b.js.map} +1 -1
- package/dist/{index-fHfc_VqS.d.ts → index-3LUk2rpD.d.ts} +4 -4
- package/dist/{index-Dbzjvy5h.d.ts → index-6Xe81qN3.d.ts} +5 -5
- package/dist/{index-Bjk-tCpG.d.cts → index-BLx14ZI4.d.cts} +306 -205
- package/dist/{index-DiHHyMEo.d.cts → index-BgLnWTZU.d.cts} +6 -6
- package/dist/{index-Bc_hXWae.d.ts → index-BuegqrS1.d.ts} +3 -3
- package/dist/{index-GDdFZCXp.d.ts → index-C77vTm2K.d.ts} +4 -4
- package/dist/{index-CXtdQ7be.d.cts → index-CW3Pj7DY.d.cts} +4 -4
- package/dist/{index-Bg1P6Bb2.d.ts → index-CqgtL2NU.d.ts} +6 -6
- package/dist/{index-DeKPpYQy.d.ts → index-D8rcUbnk.d.ts} +3 -3
- package/dist/{index-FhKX7Cv1.d.ts → index-DFBFa3SS.d.ts} +306 -205
- package/dist/{index-eAlN694c.d.cts → index-DR4QqItd.d.cts} +3 -3
- package/dist/{index-Gn1H63Hk.d.cts → index-DXSmFkol.d.cts} +4 -4
- package/dist/{index-D_7yCRKy.d.cts → index-Dodwl64k.d.cts} +69 -36
- package/dist/{index-DqOAjqxN.d.cts → index-DppA4k3b.d.cts} +5 -5
- package/dist/{index-C7e3wBt9.d.cts → index-Dx52hNLP.d.cts} +3 -3
- package/dist/{index-BKh0prif.d.cts → index-GjcJTCbz.d.cts} +4 -4
- package/dist/{index-CQrKS7PV.d.cts → index-KuQ79Mnz.d.ts} +14 -3
- package/dist/{index-Ctqkm3Fx.d.ts → index-P-iT5THa.d.ts} +69 -36
- package/dist/{index-CeJOmN-P.d.ts → index-V7XKUQm9.d.cts} +14 -3
- package/dist/{index-tKsiUarj.d.ts → index-pXN4LWUX.d.ts} +4 -4
- package/dist/index.cjs +353 -57
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +7 -6
- package/dist/index.d.ts +7 -6
- package/dist/index.js +331 -37
- package/dist/index.js.map +1 -1
- package/dist/isLoginPageRedirect-B0EmRsHr.cjs +25 -0
- package/dist/isLoginPageRedirect-B0EmRsHr.cjs.map +1 -0
- package/dist/isLoginPageRedirect-BTTAedW-.js +20 -0
- package/dist/isLoginPageRedirect-BTTAedW-.js.map +1 -0
- package/dist/{jobStatus-kQ9JqF8t.cjs → jobStatus-0_Y3Sr4i.cjs} +37 -20
- package/dist/jobStatus-0_Y3Sr4i.cjs.map +1 -0
- package/dist/{jobStatus-DbMupQEK.js → jobStatus-PSZJMTiA.js} +35 -18
- package/dist/jobStatus-PSZJMTiA.js.map +1 -0
- package/dist/kaiAgent/index.cjs +1 -1
- package/dist/kaiAgent/index.d.cts +2 -210
- package/dist/kaiAgent/index.d.ts +2 -210
- package/dist/kaiAgent/index.js +1 -1
- package/dist/kaiAgent/types.d.cts +1 -1
- package/dist/kaiAgent/types.d.ts +1 -1
- package/dist/{kaiAgent-HDaFS9BR.js → kaiAgent-8LNzGhZc.js} +48 -4
- package/dist/kaiAgent-8LNzGhZc.js.map +1 -0
- package/dist/{kaiAgent-4OiIK1C2.cjs → kaiAgent-B_TaUPRt.cjs} +48 -4
- package/dist/kaiAgent-B_TaUPRt.cjs.map +1 -0
- package/dist/kaiAgentClient-BJj_2aqt.d.ts +250 -0
- package/dist/kaiAgentClient-DhTaM3GC.d.cts +250 -0
- 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-DfjwQo7z.cjs → management-BoxlRNg2.cjs} +53 -10
- package/dist/management-BoxlRNg2.cjs.map +1 -0
- package/dist/{management-CIFhu1Nm.js → management-Bp440RsV.js} +53 -10
- package/dist/management-Bp440RsV.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-Dq2NS6jb.cjs → metastore-BYYWTb3m.cjs} +4 -4
- package/dist/{metastore-Dq2NS6jb.cjs.map → metastore-BYYWTb3m.cjs.map} +1 -1
- package/dist/{metastore-CrXkKufo.js → metastore-VCDRVhUT.js} +4 -4
- package/dist/{metastore-CrXkKufo.js.map → metastore-VCDRVhUT.js.map} +1 -1
- package/dist/microsoftGraph/index.cjs +2 -2
- package/dist/microsoftGraph/index.d.cts +2 -2
- package/dist/microsoftGraph/index.d.ts +2 -2
- package/dist/microsoftGraph/index.js +2 -2
- package/dist/microsoftGraph/types.d.cts +1 -1
- package/dist/microsoftGraph/types.d.ts +1 -1
- package/dist/notifications/index.cjs +3 -3
- package/dist/notifications/index.d.cts +2 -2
- package/dist/notifications/index.d.ts +2 -2
- package/dist/notifications/index.js +3 -3
- package/dist/notifications/types.d.cts +1 -1
- package/dist/notifications/types.d.ts +1 -1
- package/dist/oauth/index.cjs +1 -1
- package/dist/oauth/index.d.cts +2 -2
- package/dist/oauth/index.d.ts +2 -2
- package/dist/oauth/index.js +1 -1
- package/dist/oauth/types.d.cts +1 -1
- package/dist/oauth/types.d.ts +1 -1
- package/dist/{oauth-CFwSNz37.js → oauth--asfePw-.js} +5 -5
- package/dist/{oauth-CFwSNz37.js.map → oauth--asfePw-.js.map} +1 -1
- package/dist/{oauth-CkW5gln-.cjs → oauth-B8yqG6Sy.cjs} +5 -5
- package/dist/{oauth-CkW5gln-.cjs.map → oauth-B8yqG6Sy.cjs.map} +1 -1
- package/dist/omnisearch/index.cjs +2 -2
- package/dist/omnisearch/index.d.cts +2 -2
- package/dist/omnisearch/index.d.ts +2 -2
- package/dist/omnisearch/index.js +2 -2
- package/dist/omnisearch/types.d.cts +1 -1
- package/dist/omnisearch/types.d.ts +1 -1
- package/dist/{project-BOGaVs-q.d.ts → project-C2wvX0xZ.d.ts} +2 -2
- package/dist/{project-BnQkL8cb.d.cts → project-hePfzUY0.d.cts} +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/types.d.cts +1 -1
- package/dist/queryService/types.d.ts +1 -1
- package/dist/{queryService-BLaGbpm-.cjs → queryService-BVtjkXy1.cjs} +6 -6
- package/dist/{queryService-BLaGbpm-.cjs.map → queryService-BVtjkXy1.cjs.map} +1 -1
- package/dist/{queryService-DK-jUnET.js → queryService-Ca65E5KH.js} +6 -6
- package/dist/{queryService-DK-jUnET.js.map → queryService-Ca65E5KH.js.map} +1 -1
- package/dist/queue/index.cjs +1 -1
- package/dist/queue/index.d.cts +3 -3
- package/dist/queue/index.d.ts +3 -3
- 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-DViSQ-eq.js → queue-DyotLFJi.js} +5 -5
- package/dist/{queue-DViSQ-eq.js.map → queue-DyotLFJi.js.map} +1 -1
- package/dist/{queue-B7TY4JLf.cjs → queue-OJJUUqc2.cjs} +5 -5
- package/dist/{queue-B7TY4JLf.cjs.map → queue-OJJUUqc2.cjs.map} +1 -1
- package/dist/scheduler/index.cjs +3 -3
- 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 +1 -1
- package/dist/sdk/configurations/index.d.cts +4 -4
- package/dist/sdk/configurations/index.d.ts +4 -4
- package/dist/sdk/configurations/index.js +1 -1
- package/dist/sdk/developerPortal/index.cjs +5 -5
- package/dist/sdk/developerPortal/index.cjs.map +1 -1
- package/dist/sdk/developerPortal/index.d.cts +5 -4
- package/dist/sdk/developerPortal/index.d.ts +5 -4
- package/dist/sdk/developerPortal/index.js +4 -4
- package/dist/sdk/queryService/index.cjs +2 -2
- package/dist/sdk/queryService/index.d.cts +1 -1
- package/dist/sdk/queryService/index.d.ts +1 -1
- package/dist/sdk/queryService/index.js +2 -2
- package/dist/sdk/semanticLayer/index.cjs +21 -359
- package/dist/sdk/semanticLayer/index.d.cts +35 -13
- package/dist/sdk/semanticLayer/index.d.ts +35 -13
- package/dist/sdk/semanticLayer/index.js +2 -347
- 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-CSqmtHRo.js +692 -0
- package/dist/semanticLayer-CSqmtHRo.js.map +1 -0
- package/dist/semanticLayer-E0Vilu8u.cjs +811 -0
- package/dist/semanticLayer-E0Vilu8u.cjs.map +1 -0
- package/dist/{serviceIds-fHLDwOg9.d.ts → serviceIds-DRcoTnSd.d.cts} +2 -1
- package/dist/{serviceIds-fHLDwOg9.d.cts → serviceIds-DRcoTnSd.d.ts} +2 -1
- package/dist/status/index.cjs +1 -1
- 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 +6 -5
- package/dist/storage/index.d.cts +3 -3
- package/dist/storage/index.d.ts +3 -3
- package/dist/storage/index.js +6 -6
- package/dist/storage/types.d.cts +3 -3
- package/dist/storage/types.d.ts +3 -3
- package/dist/{storage-CihHwZ7z.cjs → storage-BKm7cztt.cjs} +7 -7
- package/dist/{storage-CihHwZ7z.cjs.map → storage-BKm7cztt.cjs.map} +1 -1
- package/dist/{storage-kgxscFEg.js → storage-LYwFQPNO.js} +7 -7
- package/dist/{storage-kgxscFEg.js.map → storage-LYwFQPNO.js.map} +1 -1
- package/dist/store-C9FQCHGe.js +74 -0
- package/dist/store-C9FQCHGe.js.map +1 -0
- package/dist/store-xS-Cu_VS.cjs +85 -0
- package/dist/store-xS-Cu_VS.cjs.map +1 -0
- package/dist/stream/index.cjs +3 -3
- package/dist/stream/index.d.cts +2 -2
- package/dist/stream/index.d.ts +2 -2
- package/dist/stream/index.js +3 -3
- package/dist/stream/types.d.cts +1 -1
- package/dist/stream/types.d.ts +1 -1
- package/dist/syncActions/index.cjs +1 -1
- package/dist/syncActions/index.d.cts +1 -1
- package/dist/syncActions/index.d.ts +1 -1
- package/dist/syncActions/index.js +1 -1
- package/dist/syncActions/types.d.cts +1 -1
- package/dist/syncActions/types.d.ts +1 -1
- package/dist/{syncActions-CevF_TEb.cjs → syncActions-OEZdVffK.cjs} +6 -6
- package/dist/{syncActions-CevF_TEb.cjs.map → syncActions-OEZdVffK.cjs.map} +1 -1
- package/dist/{syncActions-B75t0NwP.js → syncActions-QeBhIVhG.js} +6 -6
- package/dist/{syncActions-B75t0NwP.js.map → syncActions-QeBhIVhG.js.map} +1 -1
- package/dist/telemetry/index.cjs +38 -2
- package/dist/telemetry/index.cjs.map +1 -0
- package/dist/telemetry/index.d.cts +15 -8
- package/dist/telemetry/index.d.ts +15 -8
- package/dist/telemetry/index.js +37 -1
- package/dist/telemetry/index.js.map +1 -0
- package/dist/telemetry/types.d.cts +2 -2
- package/dist/telemetry/types.d.ts +2 -2
- package/dist/{types-D1uloiuY.d.cts → types-3eUgOA7I.d.cts} +2 -2
- package/dist/{types-CvkqEvhv.d.cts → types-52irAt99.d.cts} +2 -2
- package/dist/{types-CyHZ1ZQe.d.ts → types-B2U9cFcx.d.ts} +2 -2
- package/dist/{types-Av2egS_l.d.ts → types-B3GOGUJ7.d.cts} +753 -45
- package/dist/{types-BH9ljNmj.d.cts → types-BEe50G2r.d.cts} +2 -2
- package/dist/{types-BlCoTm7n.d.ts → types-BH5LLeJy.d.ts} +2 -2
- package/dist/{types-BptQ7jpP.d.cts → types-BMeDOB_D.d.ts} +753 -45
- package/dist/{types-MbcIiKDI.d.cts → types-BOqD3Hqy.d.cts} +3 -3
- package/dist/{types-DeSd3gqW.d.ts → types-BQsOHNI0.d.ts} +3 -3
- package/dist/{types-DNXC_-fA.d.cts → types-BQvv4RaI.d.cts} +2 -2
- package/dist/{types-BnaAo7xn.d.ts → types-BTWIPEiU.d.ts} +2 -2
- package/dist/{types-C1vhYcic.d.cts → types-BW2BXUB4.d.cts} +2 -2
- package/dist/{types-CXTqFYah.d.ts → types-BrYkBQo4.d.ts} +37 -6
- package/dist/{types-BZBdLUpH.d.ts → types-BsxLGDoC.d.cts} +2 -2
- package/dist/{types-BMQW-2Yw.d.ts → types-BupPADSm.d.ts} +737 -80
- package/dist/{types-COc-nind.d.cts → types-Bxhh2SJr.d.ts} +2 -2
- package/dist/{types-ByWD2oeV.d.ts → types-BztF4HeB.d.ts} +2 -2
- package/dist/{types-dybUhlU2.d.ts → types-C0_2KZ-A.d.ts} +2 -2
- package/dist/types-C2vefB4D.d.ts +218 -0
- package/dist/{types-CkcMoXRk.d.ts → types-CBgLCkYe.d.ts} +3 -3
- package/dist/{types-Cz1dj_TM.d.ts → types-CKiW3n6v.d.ts} +2 -2
- package/dist/{types-CcuG9cid.d.cts → types-COL1kVEB.d.cts} +2 -2
- package/dist/types-CPB-eF82.d.ts +289 -0
- package/dist/{types-BoV9M5Xg.d.cts → types-CW6lCqrC.d.cts} +2 -2
- package/dist/{types-CPanB0p7.d.cts → types-CaYtinmA.d.cts} +3 -3
- package/dist/{types-De_DA2ga.d.ts → types-CcrvrAJX.d.ts} +2 -2
- package/dist/{types-DwpRt3e9.d.ts → types-Ct0YPy2w.d.ts} +2 -2
- package/dist/{types-B4jdPHoL.d.cts → types-Cz83RiVu.d.cts} +2 -2
- package/dist/{types-DlbiVsVo.d.cts → types-D8Rrz51O.d.cts} +2 -2
- package/dist/{types-CyiRYRVq.d.cts → types-DARv_P6O.d.cts} +3 -3
- package/dist/{types-DuiUN0h8.d.ts → types-DBOSvWtD.d.ts} +2 -2
- package/dist/{types-D6jKxUv_.d.ts → types-DEc55spK.d.ts} +45 -4
- package/dist/{types-cDU_J45_.d.cts → types-DNxOHnZI.d.cts} +2 -2
- package/dist/{types-GuWtMCMn.d.cts → types-DPS8nwkV.d.cts} +2 -2
- package/dist/{types-Di8VIZwQ.d.ts → types-DYzJ6K2e.d.ts} +2 -2
- package/dist/{types-BI2jI-3-.d.cts → types-DZk3XHiN.d.cts} +3 -3
- package/dist/{types-Dfc58bPE.d.ts → types-DajzGOKB.d.ts} +2 -2
- package/dist/{types-C2CLlR4i.d.ts → types-DfvdbRPL.d.ts} +2 -2
- package/dist/{types-CpALS017.d.ts → types-DhDNS-5B.d.ts} +21 -3
- package/dist/{types-BV2BDccJ.d.cts → types-DjrRmQUe.d.cts} +45 -4
- package/dist/{types-sVYo0o9_.d.ts → types-Dmu-8g4O.d.ts} +3 -3
- package/dist/{types-COIsNoTQ.d.cts → types-DqxIx9Pi.d.cts} +2 -2
- package/dist/{types-Cj4bLPp5.d.cts → types-Jw10xuOW.d.cts} +37 -6
- package/dist/{types-CJHi0zdD.d.cts → types-M46WuBSm.d.cts} +2 -2
- package/dist/{types-zA3H84SM.d.cts → types-N3EChotg.d.cts} +2 -2
- package/dist/{types-Bpnpa2Wt.d.ts → types-OaD-cbbl.d.ts} +3 -3
- package/dist/{types-BREGN3qo.d.cts → types-_RhBCj4_.d.cts} +2 -2
- package/dist/{types-CGH_lfxS.d.cts → types-bGQb4Jtl.d.cts} +21 -3
- package/dist/{types-iNlsdRkx.d.cts → types-f8W_j6qD.d.cts} +737 -80
- package/dist/types-fX4gbxfV.d.cts +218 -0
- package/dist/types-g3vU7hcg.d.cts +289 -0
- package/dist/{types-D-qI9ne4.d.ts → types-l9o4gFsI.d.ts} +2 -2
- package/dist/{types-EJEoI3ZK.d.ts → types-nrviNdzZ.d.ts} +2 -2
- package/dist/{types-BTbczawY.d.ts → types-zZBxJ0P-.d.ts} +2 -2
- package/dist/{validateConnectionStatus-V9q6Nl6u.cjs → validateConnectionStatus-CsvYmCOI.cjs} +5 -4
- package/dist/validateConnectionStatus-CsvYmCOI.cjs.map +1 -0
- package/dist/{validateConnectionStatus-BrLXkoSI.js → validateConnectionStatus-olE2sQ3U.js} +5 -4
- package/dist/{validateConnectionStatus-BrLXkoSI.js.map → validateConnectionStatus-olE2sQ3U.js.map} +1 -1
- package/dist/vault/index.cjs +4 -4
- package/dist/vault/index.d.cts +1 -1
- package/dist/vault/index.d.ts +1 -1
- package/dist/vault/index.js +4 -4
- package/dist/vault/types.d.cts +1 -1
- package/dist/vault/types.d.ts +1 -1
- package/package.json +30 -4
- package/surface/auth.md +2 -2
- package/surface/billing.md +9 -0
- package/surface/kaiAgent.md +7 -4
- package/surface/management.md +13 -3
- package/surface/telemetry.md +2 -4
- package/dist/ValidationError-CzPWydEb.js.map +0 -1
- package/dist/ValidationError-h5qvwahi.cjs.map +0 -1
- package/dist/authClient--BtZgjIc.js.map +0 -1
- package/dist/authClient-b7uec7sw.cjs.map +0 -1
- package/dist/configurations-CqwAxiQL.cjs.map +0 -1
- package/dist/configurations-d7SZmw69.js.map +0 -1
- package/dist/constants-ByEwVtGf.js.map +0 -1
- package/dist/constants-lIfSdTzS.cjs.map +0 -1
- package/dist/createFetchClient-BRfTjBLV.cjs.map +0 -1
- package/dist/createFetchClient-BbG46bL0.js.map +0 -1
- package/dist/createStore-BNiCRQXa.js +0 -148
- package/dist/createStore-BNiCRQXa.js.map +0 -1
- package/dist/createStore-MQbboXcB.cjs +0 -177
- package/dist/createStore-MQbboXcB.cjs.map +0 -1
- package/dist/credential-DOXH7XRS.cjs.map +0 -1
- package/dist/credential-d2RDcXRB.js.map +0 -1
- package/dist/jobStatus-DbMupQEK.js.map +0 -1
- package/dist/jobStatus-kQ9JqF8t.cjs.map +0 -1
- package/dist/kaiAgent-4OiIK1C2.cjs.map +0 -1
- package/dist/kaiAgent-HDaFS9BR.js.map +0 -1
- package/dist/management-CIFhu1Nm.js.map +0 -1
- package/dist/management-DfjwQo7z.cjs.map +0 -1
- package/dist/sdk/semanticLayer/index.cjs.map +0 -1
- package/dist/sdk/semanticLayer/index.js.map +0 -1
- package/dist/telemetry-DwlSLVAU.cjs +0 -29
- package/dist/telemetry-DwlSLVAU.cjs.map +0 -1
- package/dist/telemetry-FXpodtJN.js +0 -24
- package/dist/telemetry-FXpodtJN.js.map +0 -1
- package/dist/types-B2vmg_UF.d.cts +0 -148
- package/dist/types-RfaldD4P.d.ts +0 -148
- package/dist/types-lFsTSkhe.d.cts +0 -14
- package/dist/types-lFsTSkhe.d.ts +0 -14
- package/dist/validateConnectionStatus-V9q6Nl6u.cjs.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -1,51 +1,52 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_rolldown_runtime = require("./rolldown-runtime-VH7oDXx4.cjs");
|
|
3
3
|
const require_project = require("./project-BvFi19K_.cjs");
|
|
4
|
-
const require_jobStatus = require("./jobStatus-
|
|
5
|
-
const require_queue = require("./queue-
|
|
4
|
+
const require_jobStatus = require("./jobStatus-0_Y3Sr4i.cjs");
|
|
5
|
+
const require_queue = require("./queue-OJJUUqc2.cjs");
|
|
6
6
|
const require_concurrent = require("./concurrent-tbiIa0UL.cjs");
|
|
7
7
|
const require_dedupe = require("./dedupe-CiskLkGR.cjs");
|
|
8
|
-
const
|
|
9
|
-
const require_storage = require("./storage-
|
|
8
|
+
const require_store = require("./store-xS-Cu_VS.cjs");
|
|
9
|
+
const require_storage = require("./storage-BKm7cztt.cjs");
|
|
10
10
|
const require_tag = require("./tag-CsoOZWB_.cjs");
|
|
11
11
|
const require_generateUUID = require("./generateUUID-C6qKBPIv.cjs");
|
|
12
12
|
const require_isPlainObject = require("./isPlainObject-BB3iy87C.cjs");
|
|
13
|
-
const require_configurations = require("./configurations-
|
|
13
|
+
const require_configurations = require("./configurations-zkNjr73Q.cjs");
|
|
14
14
|
const require_UserError = require("./UserError-CSGO1qII.cjs");
|
|
15
|
-
const require_createFetchClient = require("./createFetchClient-
|
|
16
|
-
const require_validateConnectionStatus = require("./validateConnectionStatus-
|
|
17
|
-
const require_ManagementClientAuthError = require("./ManagementClientAuthError-
|
|
15
|
+
const require_createFetchClient = require("./createFetchClient-DgMiqTJ8.cjs");
|
|
16
|
+
const require_validateConnectionStatus = require("./validateConnectionStatus-CsvYmCOI.cjs");
|
|
17
|
+
const require_ManagementClientAuthError = require("./ManagementClientAuthError-DD4u0EU7.cjs");
|
|
18
18
|
const require_QueryJobTimeoutError = require("./QueryJobTimeoutError-CVNPdCWX.cjs");
|
|
19
19
|
const require_SyncActionError = require("./SyncActionError-BG0zwchi.cjs");
|
|
20
|
-
const require_ValidationError = require("./ValidationError-
|
|
21
|
-
const require_createGenericFetchClient = require("./createGenericFetchClient-
|
|
22
|
-
const require_import = require("./import-
|
|
23
|
-
const require_authClient = require("./authClient-
|
|
24
|
-
const require_management = require("./management-
|
|
25
|
-
const require_constants = require("./constants-
|
|
20
|
+
const require_ValidationError = require("./ValidationError-CLVJCCwH.cjs");
|
|
21
|
+
const require_createGenericFetchClient = require("./createGenericFetchClient-o3cPJeRn.cjs");
|
|
22
|
+
const require_import = require("./import-C83w7BKz.cjs");
|
|
23
|
+
const require_authClient = require("./authClient-_PpvGgZJ.cjs");
|
|
24
|
+
const require_management = require("./management-BoxlRNg2.cjs");
|
|
25
|
+
const require_constants = require("./constants-C4DlsF_M.cjs");
|
|
26
26
|
const require_storageTable = require("./storageTable-C9crh4Ef.cjs");
|
|
27
|
-
const
|
|
27
|
+
const require_semanticLayer = require("./semanticLayer-E0Vilu8u.cjs");
|
|
28
28
|
const require_sdk_storage_index = require("./sdk/storage/index.cjs");
|
|
29
29
|
const require_sdk_vault_index = require("./sdk/vault/index.cjs");
|
|
30
30
|
const require_ai_index = require("./ai/index.cjs");
|
|
31
|
-
const require_appLogs = require("./appLogs-
|
|
31
|
+
const require_appLogs = require("./appLogs-BjfUoWzs.cjs");
|
|
32
32
|
const require_apps_index = require("./apps/index.cjs");
|
|
33
|
+
const require_billing_index = require("./billing/index.cjs");
|
|
33
34
|
const require_chat_index = require("./chat/index.cjs");
|
|
34
|
-
const require_dataScience = require("./dataScience-
|
|
35
|
+
const require_dataScience = require("./dataScience-0Rl_EuV_.cjs");
|
|
35
36
|
const require_editor_index = require("./editor/index.cjs");
|
|
36
37
|
const require_encryption_index = require("./encryption/index.cjs");
|
|
37
|
-
const require_kaiAgent = require("./kaiAgent-
|
|
38
|
-
const require_metastore = require("./metastore-
|
|
38
|
+
const require_kaiAgent = require("./kaiAgent-B_TaUPRt.cjs");
|
|
39
|
+
const require_metastore = require("./metastore-BYYWTb3m.cjs");
|
|
39
40
|
const require_notifications_index = require("./notifications/index.cjs");
|
|
40
|
-
const require_oauth = require("./oauth-
|
|
41
|
+
const require_oauth = require("./oauth-B8yqG6Sy.cjs");
|
|
41
42
|
const require_omnisearch_index = require("./omnisearch/index.cjs");
|
|
42
|
-
const require_queryService = require("./queryService-
|
|
43
|
+
const require_queryService = require("./queryService-BVtjkXy1.cjs");
|
|
43
44
|
const require_scheduler_index = require("./scheduler/index.cjs");
|
|
44
45
|
const require_stream_index = require("./stream/index.cjs");
|
|
45
|
-
const require_syncActions = require("./syncActions-
|
|
46
|
-
const
|
|
46
|
+
const require_syncActions = require("./syncActions-OEZdVffK.cjs");
|
|
47
|
+
const require_telemetry_index = require("./telemetry/index.cjs");
|
|
47
48
|
const require_vault_index = require("./vault/index.cjs");
|
|
48
|
-
const require_credential = require("./credential-
|
|
49
|
+
const require_credential = require("./credential-DVWvJFJs.cjs");
|
|
49
50
|
const require_sdk_queryService_index = require("./sdk/queryService/index.cjs");
|
|
50
51
|
let zod = require("zod");
|
|
51
52
|
zod = require_rolldown_runtime.__toESM(zod, 1);
|
|
@@ -94,11 +95,116 @@ const coalesce = (task) => {
|
|
|
94
95
|
};
|
|
95
96
|
};
|
|
96
97
|
//#endregion
|
|
98
|
+
//#region src/utils/store/derivedStore.ts
|
|
99
|
+
const isPlainObjectOrArray = (value) => {
|
|
100
|
+
if (Array.isArray(value)) return true;
|
|
101
|
+
const proto = Object.getPrototypeOf(value);
|
|
102
|
+
return proto === Object.prototype || proto === null;
|
|
103
|
+
};
|
|
104
|
+
const shallowEqual = (a, b) => {
|
|
105
|
+
if (Object.is(a, b)) return true;
|
|
106
|
+
if (typeof a !== "object" || a === null || typeof b !== "object" || b === null) return false;
|
|
107
|
+
if (!isPlainObjectOrArray(a) || !isPlainObjectOrArray(b)) return false;
|
|
108
|
+
const aKeys = Object.keys(a);
|
|
109
|
+
const bKeys = Object.keys(b);
|
|
110
|
+
return aKeys.length === bKeys.length && aKeys.every((key) => Object.is(a[key], b[key]));
|
|
111
|
+
};
|
|
112
|
+
const createDerivedStore = ({ source, dependsOn, build, keyEquals = shallowEqual }) => {
|
|
113
|
+
let key = dependsOn(source.get());
|
|
114
|
+
const store = require_store.createStore(build(key));
|
|
115
|
+
const unsubscribe = source.subscribe((state) => {
|
|
116
|
+
const next = dependsOn(state);
|
|
117
|
+
if (keyEquals(key, next)) return;
|
|
118
|
+
key = next;
|
|
119
|
+
store.set(build(next));
|
|
120
|
+
});
|
|
121
|
+
const get = store.get;
|
|
122
|
+
const subscribe = store.subscribe;
|
|
123
|
+
const dispose = () => {
|
|
124
|
+
unsubscribe();
|
|
125
|
+
store.dispose();
|
|
126
|
+
};
|
|
127
|
+
return {
|
|
128
|
+
get,
|
|
129
|
+
subscribe,
|
|
130
|
+
dispose
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
//#endregion
|
|
134
|
+
//#region src/utils/store/derivedAsyncStore.ts
|
|
135
|
+
const createDerivedAsyncStore = ({ source, dependsOn, build, keyEquals = shallowEqual }) => {
|
|
136
|
+
const store = require_store.createStore({ state: "idle" });
|
|
137
|
+
let currentKey = null;
|
|
138
|
+
let generation = 0;
|
|
139
|
+
let controller = null;
|
|
140
|
+
const run = (key) => {
|
|
141
|
+
controller?.abort();
|
|
142
|
+
controller = new AbortController();
|
|
143
|
+
const runGeneration = ++generation;
|
|
144
|
+
store.set({ state: "pending" });
|
|
145
|
+
build(key, controller.signal).then((value) => {
|
|
146
|
+
if (runGeneration === generation) store.set({
|
|
147
|
+
state: "ready",
|
|
148
|
+
value
|
|
149
|
+
});
|
|
150
|
+
}, (error) => {
|
|
151
|
+
if (runGeneration === generation) store.set({
|
|
152
|
+
state: "errored",
|
|
153
|
+
error
|
|
154
|
+
});
|
|
155
|
+
});
|
|
156
|
+
};
|
|
157
|
+
const sync = (state) => {
|
|
158
|
+
const next = dependsOn(state);
|
|
159
|
+
if (next === null) {
|
|
160
|
+
if (currentKey === null) return;
|
|
161
|
+
controller?.abort();
|
|
162
|
+
controller = null;
|
|
163
|
+
generation += 1;
|
|
164
|
+
currentKey = null;
|
|
165
|
+
store.set({ state: "idle" });
|
|
166
|
+
return;
|
|
167
|
+
}
|
|
168
|
+
if (currentKey !== null && keyEquals(currentKey, next)) return;
|
|
169
|
+
currentKey = next;
|
|
170
|
+
run(next);
|
|
171
|
+
};
|
|
172
|
+
sync(source.get());
|
|
173
|
+
const unsubscribe = source.subscribe(sync);
|
|
174
|
+
const get = store.get;
|
|
175
|
+
const subscribe = store.subscribe;
|
|
176
|
+
const dispose = () => {
|
|
177
|
+
controller?.abort();
|
|
178
|
+
unsubscribe();
|
|
179
|
+
store.dispose();
|
|
180
|
+
};
|
|
181
|
+
const readable = {
|
|
182
|
+
get,
|
|
183
|
+
subscribe,
|
|
184
|
+
dispose
|
|
185
|
+
};
|
|
186
|
+
const settled = () => new Promise((resolve) => {
|
|
187
|
+
let unsubscribeSettled = () => {};
|
|
188
|
+
const check = (state) => {
|
|
189
|
+
if (state.state === "ready" || state.state === "errored") {
|
|
190
|
+
unsubscribeSettled();
|
|
191
|
+
resolve(state);
|
|
192
|
+
}
|
|
193
|
+
};
|
|
194
|
+
unsubscribeSettled = store.subscribe(check);
|
|
195
|
+
check(store.get());
|
|
196
|
+
});
|
|
197
|
+
return {
|
|
198
|
+
store: readable,
|
|
199
|
+
settled
|
|
200
|
+
};
|
|
201
|
+
};
|
|
202
|
+
//#endregion
|
|
97
203
|
//#region src/utils/async/poll/registry.ts
|
|
98
204
|
const DEFAULT_LIMIT = 50;
|
|
99
205
|
const isFinished = ({ snapshot }) => snapshot.state !== "idle" && snapshot.state !== "polling";
|
|
100
206
|
const createPollRegistry = ({ limit = DEFAULT_LIMIT } = {}) => {
|
|
101
|
-
const entries =
|
|
207
|
+
const entries = require_store.createStore([]);
|
|
102
208
|
const unsubscribes = /* @__PURE__ */ new Map();
|
|
103
209
|
const maxEntries = require_jobStatus.clamp(require_jobStatus.finiteOr(limit, DEFAULT_LIMIT), 1);
|
|
104
210
|
let nextKey = 1;
|
|
@@ -288,7 +394,7 @@ const createProjectRefreshMiddleware = (shouldRefresh, requestRefresh) => (next)
|
|
|
288
394
|
* token-mutating request or an explicit re-scope. Its `middleware` drives the auto re-verify.
|
|
289
395
|
*/
|
|
290
396
|
const createLiveProject = ({ initialToken, verify }) => {
|
|
291
|
-
const store =
|
|
397
|
+
const store = require_store.createStore(require_project.createProject({ sapiToken: initialToken }));
|
|
292
398
|
const refresh = coalesce(async () => store.set(require_project.createProject({ sapiToken: await verify() })));
|
|
293
399
|
const middleware = createProjectRefreshMiddleware(isStorageTokenMutatingRequest, refresh);
|
|
294
400
|
return {
|
|
@@ -602,8 +708,9 @@ const stamp = (tokens) => ({
|
|
|
602
708
|
issuedAt: Date.now()
|
|
603
709
|
});
|
|
604
710
|
const createConfig$1 = (initial = INITIAL) => {
|
|
605
|
-
const store =
|
|
711
|
+
const store = require_store.createStore(initial);
|
|
606
712
|
let expiredNotified = false;
|
|
713
|
+
let epoch = 0;
|
|
607
714
|
const setBaseUrl = (baseUrl) => {
|
|
608
715
|
if (store.get().status !== "anonymous") throw new KeboolaError(KeboolaErrorType.AlreadyAuthenticated);
|
|
609
716
|
store.set({
|
|
@@ -616,6 +723,7 @@ const createConfig$1 = (initial = INITIAL) => {
|
|
|
616
723
|
if (state.status !== "anonymous") throw new KeboolaError(KeboolaErrorType.AlreadyAuthenticated);
|
|
617
724
|
if (!state.baseUrl) throw new KeboolaError(KeboolaErrorType.Unconfigured);
|
|
618
725
|
expiredNotified = false;
|
|
726
|
+
epoch += 1;
|
|
619
727
|
store.set({
|
|
620
728
|
status: "authenticated",
|
|
621
729
|
baseUrl: state.baseUrl,
|
|
@@ -649,6 +757,7 @@ const createConfig$1 = (initial = INITIAL) => {
|
|
|
649
757
|
};
|
|
650
758
|
/** Drop the credential (sign out); keeps the configured baseUrl. */
|
|
651
759
|
const reset = () => {
|
|
760
|
+
epoch += 1;
|
|
652
761
|
store.set({
|
|
653
762
|
status: "anonymous",
|
|
654
763
|
baseUrl: store.get().baseUrl
|
|
@@ -690,6 +799,15 @@ const createConfig$1 = (initial = INITIAL) => {
|
|
|
690
799
|
};
|
|
691
800
|
const getBaseUrl = () => store.get().baseUrl;
|
|
692
801
|
/**
|
|
802
|
+
* Which sign-in this is — a counter, bumped by `authenticate` and `reset`.
|
|
803
|
+
*
|
|
804
|
+
* - For anything long-lived that must not outlive the credential it was built against: capture it,
|
|
805
|
+
* compare it later. A rotation does not move it; only a new session or a sign-out does.
|
|
806
|
+
* - Distinct from `notifyExpired`'s latch, which answers "report this death once" rather than
|
|
807
|
+
* "which session are we in".
|
|
808
|
+
*/
|
|
809
|
+
const getEpoch = () => epoch;
|
|
810
|
+
/**
|
|
693
811
|
* Session-expiry latch (fire-once):
|
|
694
812
|
* - why: concurrent 401s all report expiry, but the app must sign out once; and the credential /
|
|
695
813
|
* auth middleware are long-lived singletons, so the latch can't live in them — it must reset
|
|
@@ -718,6 +836,7 @@ const createConfig$1 = (initial = INITIAL) => {
|
|
|
718
836
|
forceExpire,
|
|
719
837
|
requireCredential,
|
|
720
838
|
getBaseUrl,
|
|
839
|
+
getEpoch,
|
|
721
840
|
notifyExpired,
|
|
722
841
|
debug
|
|
723
842
|
};
|
|
@@ -914,7 +1033,7 @@ const createServiceClients = ({ baseUrl, auth, getServiceBaseUrl, middlewareFor,
|
|
|
914
1033
|
}).add({
|
|
915
1034
|
serviceId: "telemetry",
|
|
916
1035
|
clientName: "telemetry",
|
|
917
|
-
clientFn: (serviceBaseUrl) =>
|
|
1036
|
+
clientFn: (serviceBaseUrl) => require_telemetry_index.createTelemetryClient({
|
|
918
1037
|
baseUrl: serviceBaseUrl,
|
|
919
1038
|
middlewares: middlewareFor("telemetry", [attachTokenMiddleware]),
|
|
920
1039
|
auth
|
|
@@ -1008,6 +1127,14 @@ const createServiceClients = ({ baseUrl, auth, getServiceBaseUrl, middlewareFor,
|
|
|
1008
1127
|
middlewares: middlewareFor("notifications", [attachTokenMiddleware]),
|
|
1009
1128
|
auth
|
|
1010
1129
|
})
|
|
1130
|
+
}).add({
|
|
1131
|
+
serviceId: "billing",
|
|
1132
|
+
clientName: "billing",
|
|
1133
|
+
clientFn: (serviceBaseUrl) => require_billing_index.createBillingClient({
|
|
1134
|
+
baseUrl: serviceBaseUrl,
|
|
1135
|
+
middlewares: middlewareFor("billing", [attachTokenMiddleware]),
|
|
1136
|
+
auth
|
|
1137
|
+
})
|
|
1011
1138
|
}).add({
|
|
1012
1139
|
serviceId: "metastore",
|
|
1013
1140
|
clientName: "metastore",
|
|
@@ -1057,7 +1184,7 @@ const createProjectClients$1 = async ({ baseUrl, projectId, authMiddleware, midd
|
|
|
1057
1184
|
initialToken: sapiToken,
|
|
1058
1185
|
verify: () => reader.tokens.verify()
|
|
1059
1186
|
});
|
|
1060
|
-
const storageTableStore =
|
|
1187
|
+
const storageTableStore = createDerivedStore({
|
|
1061
1188
|
source: liveProject.store,
|
|
1062
1189
|
build: require_storageTable.createStorageTable,
|
|
1063
1190
|
dependsOn: (project) => ({
|
|
@@ -1096,7 +1223,7 @@ const createProjectClients$1 = async ({ baseUrl, projectId, authMiddleware, midd
|
|
|
1096
1223
|
context
|
|
1097
1224
|
}),
|
|
1098
1225
|
tag: require_tag.createTagSdk({ metastoreClient: services.metastore }),
|
|
1099
|
-
semanticLayer:
|
|
1226
|
+
semanticLayer: require_semanticLayer.createSemanticLayerSdk({ metastoreClient: services.metastore }),
|
|
1100
1227
|
storage: require_sdk_storage_index.createStorageSdk({ storageClient: storage }),
|
|
1101
1228
|
vault: require_sdk_vault_index.createVaultSdk({
|
|
1102
1229
|
vaultClient: services.vault,
|
|
@@ -1177,7 +1304,7 @@ const createKeboola = (options = {}) => {
|
|
|
1177
1304
|
const config = createConfig$1();
|
|
1178
1305
|
const middlewareFor = createMiddlewareFor(options.middlewares);
|
|
1179
1306
|
const retryContention = createRetryMiddleware({ shouldRetry: (error) => error instanceof require_createFetchClient.ApiError && error.response.status === require_createFetchClient.HttpStatus.SERVICE_UNAVAILABLE });
|
|
1180
|
-
const authClientBare =
|
|
1307
|
+
const authClientBare = createDerivedStore({
|
|
1181
1308
|
source: config.store,
|
|
1182
1309
|
dependsOn: (state) => state.baseUrl,
|
|
1183
1310
|
build: (baseUrl) => baseUrl ? require_authClient.createAuthClient({
|
|
@@ -1188,7 +1315,12 @@ const createKeboola = (options = {}) => {
|
|
|
1188
1315
|
const refresh = async () => {
|
|
1189
1316
|
const client = authClientBare.get();
|
|
1190
1317
|
assert$1(client, KeboolaErrorType.NotReady);
|
|
1191
|
-
const
|
|
1318
|
+
const epoch = config.getEpoch();
|
|
1319
|
+
const refreshed = await client.token.refresh(config.requireCredential().refreshToken).catch((error) => {
|
|
1320
|
+
if (config.getEpoch() !== epoch) throw new KeboolaError(KeboolaErrorType.NotAuthenticated);
|
|
1321
|
+
throw error;
|
|
1322
|
+
});
|
|
1323
|
+
if (config.getEpoch() !== epoch) throw new KeboolaError(KeboolaErrorType.NotAuthenticated);
|
|
1192
1324
|
config.applyRefresh(refreshed);
|
|
1193
1325
|
return refreshed.accessToken;
|
|
1194
1326
|
};
|
|
@@ -1204,8 +1336,49 @@ const createKeboola = (options = {}) => {
|
|
|
1204
1336
|
}
|
|
1205
1337
|
};
|
|
1206
1338
|
};
|
|
1339
|
+
/**
|
|
1340
|
+
* The session's state, once it is known to carry a credential.
|
|
1341
|
+
*
|
|
1342
|
+
* - Returns the state rather than nothing, so the caller reads `baseUrl` and `credential` off a
|
|
1343
|
+
* narrowed union instead of re-checking the status to get at them.
|
|
1344
|
+
* - `NotAuthenticated`, the same refusal `requireScopedProject` opens with. The two differ only in
|
|
1345
|
+
* how far they go: this one stops at "somebody is signed in", which is all a request naming its
|
|
1346
|
+
* own project needs.
|
|
1347
|
+
*/
|
|
1348
|
+
const requireAuthenticated = () => {
|
|
1349
|
+
const state = config.store.get();
|
|
1350
|
+
if (state.status === "anonymous") throw new KeboolaError(KeboolaErrorType.NotAuthenticated);
|
|
1351
|
+
return state;
|
|
1352
|
+
};
|
|
1353
|
+
/**
|
|
1354
|
+
* The project this session is scoped to, right now.
|
|
1355
|
+
*
|
|
1356
|
+
* - Read at every point that stamps a project, never snapshotted across an `await`: the scope moves
|
|
1357
|
+
* with `setProject`/`clearProject`, and neither ends the session, so it is not in the epoch and
|
|
1358
|
+
* `assertSameSession` cannot see it change.
|
|
1359
|
+
* - `NotReady` rather than `NotAuthenticated` when merely unscoped — the credential is fine, the
|
|
1360
|
+
* project is what is missing. A credential alone does not authorize a project request: kai-agent
|
|
1361
|
+
* reads the project from the header, not the token, and cannot attribute a call that omits it.
|
|
1362
|
+
*/
|
|
1363
|
+
const requireScopedProject = () => {
|
|
1364
|
+
const state = requireAuthenticated();
|
|
1365
|
+
if (state.status !== "scoped") throw new KeboolaError(KeboolaErrorType.NotReady);
|
|
1366
|
+
return state.projectId;
|
|
1367
|
+
};
|
|
1368
|
+
/**
|
|
1369
|
+
* The project client sets `forProject` has handed out, keyed by project id.
|
|
1370
|
+
*
|
|
1371
|
+
* - Not keyed by stack: `setBaseUrl` throws once authenticated and `signOut` empties this, so one
|
|
1372
|
+
* entry can never belong to a different `baseUrl` than the live session.
|
|
1373
|
+
* - A `lazy` per key, not a bare promise: concurrent callers share one bootstrap, later ones replay
|
|
1374
|
+
* the resolved set, and a rejected build clears only its own slot — so a build orphaned by a
|
|
1375
|
+
* sign-out cannot evict the entry that replaced it.
|
|
1376
|
+
*/
|
|
1377
|
+
const extraProjects = /* @__PURE__ */ new Map();
|
|
1207
1378
|
const signOut = () => {
|
|
1208
1379
|
config.reset();
|
|
1380
|
+
credential.abandonRefresh();
|
|
1381
|
+
extraProjects.clear();
|
|
1209
1382
|
persistor.clear();
|
|
1210
1383
|
};
|
|
1211
1384
|
const onSessionExpired = () => {
|
|
@@ -1216,16 +1389,78 @@ const createKeboola = (options = {}) => {
|
|
|
1216
1389
|
getToken,
|
|
1217
1390
|
onSessionExpired
|
|
1218
1391
|
});
|
|
1219
|
-
const
|
|
1220
|
-
|
|
1392
|
+
const sessionGuard = (epoch) => () => {
|
|
1393
|
+
if (config.getEpoch() !== epoch) throw new KeboolaError(KeboolaErrorType.NotAuthenticated);
|
|
1394
|
+
};
|
|
1395
|
+
/**
|
|
1396
|
+
* The auth middleware, refusing to carry a request across a change of session.
|
|
1397
|
+
*
|
|
1398
|
+
* - The middleware holds no token — it reads the credential live — so anything built on it acts as
|
|
1399
|
+
* whoever is signed in *at request time*, not whoever built it. Rebuilding a store on sign-out
|
|
1400
|
+
* only stops new reads; a request already in flight completes as the next user, still stamped
|
|
1401
|
+
* with the old project. `config`'s epoch moves on `authenticate` and `reset` and never on a
|
|
1402
|
+
* rotation, so it is exactly "which sign-in is this".
|
|
1403
|
+
* - `epochFor` says which sign-in a request answers to, resolved per request:
|
|
1404
|
+
* 1. a client set pins to the sign-in that *built* it (`pinToSession`) — a set the caller still
|
|
1405
|
+
* holds must not ride the session that replaced it;
|
|
1406
|
+
* 2. `api.auth` pins to the sign-in the request *started* on, because its store is keyed on
|
|
1407
|
+
* `baseUrl` alone: it is built once, while anonymous, so a build-time pin would freeze at that
|
|
1408
|
+
* epoch and refuse every authenticated call.
|
|
1409
|
+
* - The guard covers every credential read, not only the wire request, so it wraps the credential
|
|
1410
|
+
* rather than sitting beside it. The 401 path rotates the token by calling the credential
|
|
1411
|
+
* directly: a straggler from a dead session would otherwise spend the *live* session's
|
|
1412
|
+
* single-use refresh token, and sign that session out if the rotation itself came back 401.
|
|
1413
|
+
* - `expiresSession` decides whether a 401 that survives a rotation means the session is dead.
|
|
1414
|
+
* True for this session's own realms; false where the 401 may be about the project instead of
|
|
1415
|
+
* the credential (see `forProject`).
|
|
1416
|
+
* - `inner` is for middleware that **re-invokes `next`** — a retry. Composed outside the pin it
|
|
1417
|
+
* would re-enter it per attempt, and with a per-request `epochFor` each attempt would re-pin to
|
|
1418
|
+
* whoever is signed in by then: a 503 backoff is exactly long enough for a sign-out to land, and
|
|
1419
|
+
* the retry then goes out as the next user. Inside, one epoch covers every attempt and each
|
|
1420
|
+
* attempt still passes the guard. Anything new that retries belongs here, not in the array.
|
|
1421
|
+
*/
|
|
1422
|
+
const createPinnedAuthMiddleware = (epochFor, { expiresSession = true, inner = [] } = {}) => {
|
|
1423
|
+
return (next) => (request) => {
|
|
1424
|
+
const assertSameSession = sessionGuard(epochFor());
|
|
1425
|
+
const pinnedCredential = {
|
|
1426
|
+
...credential,
|
|
1427
|
+
getAccessToken: async (options) => {
|
|
1428
|
+
assertSameSession();
|
|
1429
|
+
return credential.getAccessToken(options);
|
|
1430
|
+
},
|
|
1431
|
+
notifyExpired: expiresSession ? credential.notifyExpired : () => {}
|
|
1432
|
+
};
|
|
1433
|
+
const guarded = (wire) => (repeated) => {
|
|
1434
|
+
assertSameSession();
|
|
1435
|
+
return wire(repeated);
|
|
1436
|
+
};
|
|
1437
|
+
const chain = inner.reduceRight((acc, middleware) => middleware(acc), guarded(next));
|
|
1438
|
+
return createBearerAuthMiddleware(pinnedCredential)(chain)(request);
|
|
1439
|
+
};
|
|
1440
|
+
};
|
|
1441
|
+
/**
|
|
1442
|
+
* Pin something long-lived to the sign-in live right now.
|
|
1443
|
+
*
|
|
1444
|
+
* - `assertSameSession` is for whatever no middleware chain covers: a bootstrap whose every
|
|
1445
|
+
* request passed the guard before the sign-out resolves anyway and must not be handed back, and
|
|
1446
|
+
* `getAuthHeaders`, which emits the credential by hand.
|
|
1447
|
+
*/
|
|
1448
|
+
const pinToSession = (options) => {
|
|
1449
|
+
const epoch = config.getEpoch();
|
|
1450
|
+
return {
|
|
1451
|
+
assertSameSession: sessionGuard(epoch),
|
|
1452
|
+
pinnedAuthMiddleware: createPinnedAuthMiddleware(() => epoch, options)
|
|
1453
|
+
};
|
|
1454
|
+
};
|
|
1455
|
+
const authClient = createDerivedStore({
|
|
1221
1456
|
source: config.store,
|
|
1222
1457
|
dependsOn: (state) => state.baseUrl,
|
|
1223
1458
|
build: (baseUrl) => baseUrl ? require_authClient.createAuthClient({
|
|
1224
1459
|
baseUrl,
|
|
1225
|
-
middlewares: middlewareFor("auth", [
|
|
1460
|
+
middlewares: middlewareFor("auth", [createPinnedAuthMiddleware(config.getEpoch, { inner: [retryContention] })])
|
|
1226
1461
|
}) : null
|
|
1227
1462
|
});
|
|
1228
|
-
const management =
|
|
1463
|
+
const management = createDerivedStore({
|
|
1229
1464
|
source: config.store,
|
|
1230
1465
|
dependsOn: (state) => state.status === "anonymous" ? null : state.baseUrl,
|
|
1231
1466
|
build: (baseUrl) => baseUrl ? require_management.createManagementClient({
|
|
@@ -1234,10 +1469,10 @@ const createKeboola = (options = {}) => {
|
|
|
1234
1469
|
type: "bearer",
|
|
1235
1470
|
token: ""
|
|
1236
1471
|
},
|
|
1237
|
-
middlewares: middlewareFor("management", [
|
|
1472
|
+
middlewares: middlewareFor("management", [pinToSession().pinnedAuthMiddleware])
|
|
1238
1473
|
}) : null
|
|
1239
1474
|
});
|
|
1240
|
-
const projectClientsAsync =
|
|
1475
|
+
const projectClientsAsync = createDerivedAsyncStore({
|
|
1241
1476
|
source: config.store,
|
|
1242
1477
|
dependsOn: (state) => state.status === "scoped" ? {
|
|
1243
1478
|
baseUrl: state.baseUrl,
|
|
@@ -1246,13 +1481,32 @@ const createKeboola = (options = {}) => {
|
|
|
1246
1481
|
build: ({ baseUrl, projectId }) => {
|
|
1247
1482
|
return createProjectClients$1({
|
|
1248
1483
|
baseUrl,
|
|
1249
|
-
authMiddleware,
|
|
1484
|
+
authMiddleware: pinToSession().pinnedAuthMiddleware,
|
|
1250
1485
|
projectId,
|
|
1251
1486
|
middlewareFor,
|
|
1252
1487
|
clientServiceUrls: options.clientServiceUrls
|
|
1253
1488
|
});
|
|
1254
1489
|
}
|
|
1255
1490
|
});
|
|
1491
|
+
const forProject = async (projectId) => {
|
|
1492
|
+
const state = requireAuthenticated();
|
|
1493
|
+
const cached = extraProjects.get(projectId);
|
|
1494
|
+
if (cached) return cached();
|
|
1495
|
+
const { assertSameSession, pinnedAuthMiddleware } = pinToSession({ expiresSession: false });
|
|
1496
|
+
const build = require_jobStatus.lazy(async () => {
|
|
1497
|
+
const clients = await createProjectClients$1({
|
|
1498
|
+
baseUrl: state.baseUrl,
|
|
1499
|
+
authMiddleware: pinnedAuthMiddleware,
|
|
1500
|
+
projectId,
|
|
1501
|
+
middlewareFor,
|
|
1502
|
+
clientServiceUrls: options.clientServiceUrls
|
|
1503
|
+
});
|
|
1504
|
+
assertSameSession();
|
|
1505
|
+
return clients;
|
|
1506
|
+
});
|
|
1507
|
+
extraProjects.set(projectId, build);
|
|
1508
|
+
return build();
|
|
1509
|
+
};
|
|
1256
1510
|
if (options.baseUrl) config.setBaseUrl(options.baseUrl);
|
|
1257
1511
|
config.store.subscribe((state) => {
|
|
1258
1512
|
if (state.status === "anonymous") return;
|
|
@@ -1286,6 +1540,19 @@ const createKeboola = (options = {}) => {
|
|
|
1286
1540
|
* re-entering the project. Use `reset` to sign out instead.
|
|
1287
1541
|
*/
|
|
1288
1542
|
clearProject: config.clearProjectId,
|
|
1543
|
+
/**
|
|
1544
|
+
* The clients for one project, off this session — for reaching a second project without leaving
|
|
1545
|
+
* the first.
|
|
1546
|
+
*
|
|
1547
|
+
* - `setProjectAsync` *moves* the session (and `api`) to another project; this *adds* one. The
|
|
1548
|
+
* returned set is the caller's to hold and never appears on `api`.
|
|
1549
|
+
* - Every set shares this session's auth middleware, so one rotation serves all of them. A second
|
|
1550
|
+
* `createKeboola()` does not: both hold the same single-use refresh token, and the first to
|
|
1551
|
+
* rotate invalidates the other's, whose next refresh 401s and signs it out.
|
|
1552
|
+
* - Independent of the scope, including for the scoped project itself — asking for that one
|
|
1553
|
+
* builds a second set with its own `liveProject`, so prefer `api.*` there.
|
|
1554
|
+
*/
|
|
1555
|
+
forProject,
|
|
1289
1556
|
reset: signOut,
|
|
1290
1557
|
/**
|
|
1291
1558
|
* Dev/test only: mark the current access token as expired so the bearer credential rotates it on
|
|
@@ -1302,18 +1569,42 @@ const createKeboola = (options = {}) => {
|
|
|
1302
1569
|
* string, and `X-KBC-ProjectId` is composed here rather than in every consuming app.
|
|
1303
1570
|
* - Resolved per call, through the credential — so a near-expiry token rotates and a revoked
|
|
1304
1571
|
* one is never re-sent. A snapshot held by the caller would do neither.
|
|
1305
|
-
* - Throws rather than emitting a half-formed `Bearer null`:
|
|
1306
|
-
*
|
|
1572
|
+
* - Throws rather than emitting a half-formed `Bearer null`: a session with no credential has
|
|
1573
|
+
* nothing to authorize with.
|
|
1574
|
+
* - Pinned to the sign-in it was called on, like every client here. This is the one
|
|
1575
|
+
* credential-emitting surface with no middleware chain for the guard to sit in, so the check
|
|
1576
|
+
* is written out around the `await` that rotates the token.
|
|
1577
|
+
*
|
|
1578
|
+
* `projectId` names the project the headers authorize, for a caller reaching a project the
|
|
1579
|
+
* session is not scoped to:
|
|
1580
|
+
*
|
|
1581
|
+
* - **Omitted**, the session's own scope answers — unchanged, and re-read *after* the rotation
|
|
1582
|
+
* rather than carried across it. The epoch the pin compares moves on a sign-in and a sign-out
|
|
1583
|
+
* only, so a project switch mid-rotation is invisible to it.
|
|
1584
|
+
* - **Given**, it is what the header says, and the scope is not consulted at all. A caller that
|
|
1585
|
+
* names a project has said everything the request needs: the credential is user-level and the
|
|
1586
|
+
* project is a header on top of it, so an authenticated session suffices where an unnamed call
|
|
1587
|
+
* requires a scoped one. Nothing about the session can change the answer, so there is nothing
|
|
1588
|
+
* to re-read after the `await`.
|
|
1589
|
+
* - **Not checked against an access set**, because this session cannot acquire one:
|
|
1590
|
+
* `forProject` — the only other surface taking a caller-supplied project id — records that
|
|
1591
|
+
* connection collapses every bearer failure into a single `invalid_token` 401, so "no access
|
|
1592
|
+
* to this project" and "revoked token" are the same response. Whether the caller may reach a
|
|
1593
|
+
* project is the caller's own knowledge, from `token.introspect`. What is guaranteed here is
|
|
1594
|
+
* that the header names what was asked for and never something else — which is the failure
|
|
1595
|
+
* worth preventing: a turn sent somewhere the transcript above it did not come from.
|
|
1307
1596
|
*/
|
|
1308
|
-
getAuthHeaders: async () => {
|
|
1309
|
-
const
|
|
1310
|
-
if (
|
|
1311
|
-
|
|
1597
|
+
getAuthHeaders: async (projectId) => {
|
|
1598
|
+
const { assertSameSession } = pinToSession();
|
|
1599
|
+
if (projectId === void 0) requireScopedProject();
|
|
1600
|
+
else requireAuthenticated();
|
|
1312
1601
|
const accessToken = await credential.getAccessToken();
|
|
1602
|
+
assertSameSession();
|
|
1603
|
+
const authorizedProjectId = projectId ?? requireScopedProject();
|
|
1313
1604
|
assert$1(accessToken, KeboolaErrorType.NotAuthenticated);
|
|
1314
1605
|
return {
|
|
1315
1606
|
[require_createFetchClient.HttpHeader.AUTHORIZATION]: `Bearer ${accessToken}`,
|
|
1316
|
-
[require_createFetchClient.KeboolaHttpHeader.PROJECT_ID]: String(
|
|
1607
|
+
[require_createFetchClient.KeboolaHttpHeader.PROJECT_ID]: String(authorizedProjectId)
|
|
1317
1608
|
};
|
|
1318
1609
|
},
|
|
1319
1610
|
restore: async () => {
|
|
@@ -1327,8 +1618,10 @@ const createKeboola = (options = {}) => {
|
|
|
1327
1618
|
if (!configured) config.setBaseUrl(persisted.baseUrl);
|
|
1328
1619
|
const client = authClientBare.get();
|
|
1329
1620
|
assert$1(client, KeboolaErrorType.NotReady);
|
|
1621
|
+
const startedOn = config.getEpoch();
|
|
1330
1622
|
try {
|
|
1331
1623
|
const refreshed = await client.token.refresh(persisted.refreshToken);
|
|
1624
|
+
if (config.getEpoch() !== startedOn) return { status: "empty" };
|
|
1332
1625
|
config.authenticate(refreshed);
|
|
1333
1626
|
if (persisted.projectId !== null) {
|
|
1334
1627
|
config.setProjectId(persisted.projectId);
|
|
@@ -1336,6 +1629,7 @@ const createKeboola = (options = {}) => {
|
|
|
1336
1629
|
}
|
|
1337
1630
|
return { status: "restored" };
|
|
1338
1631
|
} catch (err) {
|
|
1632
|
+
if (config.getEpoch() !== startedOn) return { status: "empty" };
|
|
1339
1633
|
if (require_credential.isUnauthorized(err)) {
|
|
1340
1634
|
persistor.clear();
|
|
1341
1635
|
return { status: "expired" };
|
|
@@ -1368,7 +1662,7 @@ const createKeboola = (options = {}) => {
|
|
|
1368
1662
|
//#endregion
|
|
1369
1663
|
//#region src/keboola/legacy/createConfig.ts
|
|
1370
1664
|
const createConfig = () => {
|
|
1371
|
-
const store =
|
|
1665
|
+
const store = require_store.createStore({
|
|
1372
1666
|
baseUrl: null,
|
|
1373
1667
|
sapiToken: null,
|
|
1374
1668
|
managementToken: null
|
|
@@ -1434,7 +1728,7 @@ const createProjectClients = async ({ baseUrl, getStorageToken, onStorageTokenRe
|
|
|
1434
1728
|
initialToken: sapiToken,
|
|
1435
1729
|
verify: () => _storage.tokens.verify()
|
|
1436
1730
|
});
|
|
1437
|
-
const storageTableStore =
|
|
1731
|
+
const storageTableStore = createDerivedStore({
|
|
1438
1732
|
source: liveProject.store,
|
|
1439
1733
|
build: require_storageTable.createStorageTable,
|
|
1440
1734
|
dependsOn: (project) => ({
|
|
@@ -1474,7 +1768,7 @@ const createProjectClients = async ({ baseUrl, getStorageToken, onStorageTokenRe
|
|
|
1474
1768
|
context
|
|
1475
1769
|
}),
|
|
1476
1770
|
tag: require_tag.createTagSdk({ metastoreClient: services.metastore }),
|
|
1477
|
-
semanticLayer:
|
|
1771
|
+
semanticLayer: require_semanticLayer.createSemanticLayerSdk({ metastoreClient: services.metastore }),
|
|
1478
1772
|
storage: require_sdk_storage_index.createStorageSdk({ storageClient: storage }),
|
|
1479
1773
|
vault: require_sdk_vault_index.createVaultSdk({
|
|
1480
1774
|
vaultClient: services.vault,
|
|
@@ -1495,7 +1789,7 @@ const createProjectClients = async ({ baseUrl, getStorageToken, onStorageTokenRe
|
|
|
1495
1789
|
const createLegacyKeboola = (options = {}) => {
|
|
1496
1790
|
const config = createConfig();
|
|
1497
1791
|
const middlewareFor = createMiddlewareFor(options.middlewares);
|
|
1498
|
-
const authClient =
|
|
1792
|
+
const authClient = createDerivedStore({
|
|
1499
1793
|
source: config.store,
|
|
1500
1794
|
dependsOn: (state) => state.baseUrl,
|
|
1501
1795
|
build: (baseUrl) => baseUrl ? require_authClient.createAuthClient({
|
|
@@ -1503,7 +1797,7 @@ const createLegacyKeboola = (options = {}) => {
|
|
|
1503
1797
|
middlewares: middlewareFor("auth", [])
|
|
1504
1798
|
}) : null
|
|
1505
1799
|
});
|
|
1506
|
-
const management =
|
|
1800
|
+
const management = createDerivedStore({
|
|
1507
1801
|
source: config.store,
|
|
1508
1802
|
dependsOn: (state) => ({
|
|
1509
1803
|
baseUrl: state.baseUrl,
|
|
@@ -1518,7 +1812,7 @@ const createLegacyKeboola = (options = {}) => {
|
|
|
1518
1812
|
middlewares: middlewareFor("management", [])
|
|
1519
1813
|
}) : null
|
|
1520
1814
|
});
|
|
1521
|
-
const build =
|
|
1815
|
+
const build = createDerivedAsyncStore({
|
|
1522
1816
|
source: config.store,
|
|
1523
1817
|
dependsOn: (state) => state.sapiToken && state.baseUrl ? state.baseUrl : null,
|
|
1524
1818
|
build: (baseUrl) => createProjectClients({
|
|
@@ -1592,9 +1886,9 @@ exports.assert = assert;
|
|
|
1592
1886
|
exports.coalesce = coalesce;
|
|
1593
1887
|
exports.collect = require_queue.collect;
|
|
1594
1888
|
exports.concurrent = require_concurrent.concurrent;
|
|
1595
|
-
exports.createDerivedAsyncStore =
|
|
1596
|
-
exports.createDerivedStore =
|
|
1597
|
-
exports.createEmitter =
|
|
1889
|
+
exports.createDerivedAsyncStore = createDerivedAsyncStore;
|
|
1890
|
+
exports.createDerivedStore = createDerivedStore;
|
|
1891
|
+
exports.createEmitter = require_store.createEmitter;
|
|
1598
1892
|
exports.createGenericFetchClient = require_createGenericFetchClient.createGenericFetchClient;
|
|
1599
1893
|
exports.createKeboola = createKeboola;
|
|
1600
1894
|
exports.createLegacyKeboola = createLegacyKeboola;
|
|
@@ -1608,12 +1902,13 @@ exports.createQueryServiceSdk = require_sdk_queryService_index.createQueryServic
|
|
|
1608
1902
|
exports.createRetryMiddleware = createRetryMiddleware;
|
|
1609
1903
|
exports.createSessionStorage = createSessionStorage;
|
|
1610
1904
|
exports.createStorageSdk = require_sdk_storage_index.createStorageSdk;
|
|
1611
|
-
exports.createStore =
|
|
1905
|
+
exports.createStore = require_store.createStore;
|
|
1612
1906
|
exports.dedupe = require_dedupe.dedupe;
|
|
1613
1907
|
exports.deepMerge = deepMerge;
|
|
1614
1908
|
exports.delay = require_jobStatus.delay;
|
|
1615
1909
|
exports.emitter = require_jobStatus.emitter;
|
|
1616
1910
|
exports.failureOf = require_jobStatus.failureOf;
|
|
1911
|
+
exports.formatValidationIssues = require_ValidationError.formatValidationIssues;
|
|
1617
1912
|
exports.generateUUID = require_generateUUID.generateUUID;
|
|
1618
1913
|
exports.isAbortError = require_createFetchClient.isAbortError;
|
|
1619
1914
|
exports.isApiError = require_createFetchClient.isApiError;
|
|
@@ -1627,6 +1922,7 @@ exports.isQueryJobError = require_QueryJobTimeoutError.isQueryJobError;
|
|
|
1627
1922
|
exports.isQueryJobTimeoutError = require_QueryJobTimeoutError.isQueryJobTimeoutError;
|
|
1628
1923
|
exports.isStorageTokenMutatingRequest = isStorageTokenMutatingRequest;
|
|
1629
1924
|
exports.isSyncActionError = require_SyncActionError.isSyncActionError;
|
|
1925
|
+
exports.isTimeoutError = require_createFetchClient.isTimeoutError;
|
|
1630
1926
|
exports.isValidationError = require_ValidationError.isValidationError;
|
|
1631
1927
|
exports.jobStatus = require_jobStatus.jobStatus;
|
|
1632
1928
|
exports.keboolaUID = require_tag.keboolaUID;
|
|
@@ -1637,6 +1933,6 @@ exports.poll = require_jobStatus.poll;
|
|
|
1637
1933
|
exports.poller = require_jobStatus.poller;
|
|
1638
1934
|
exports.schemaGuidedMerge = require_configurations.schemaGuidedMerge;
|
|
1639
1935
|
exports.series = require_storage.series;
|
|
1640
|
-
exports.shallowEqual =
|
|
1936
|
+
exports.shallowEqual = shallowEqual;
|
|
1641
1937
|
|
|
1642
1938
|
//# sourceMappingURL=index.cjs.map
|