@keboola/api-client 48.0.0 → 50.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 +109 -95
- package/API-SURFACE.md +14 -32
- package/CHANGELOG.md +78 -0
- package/README.md +33 -29
- package/dist/{ManagementSessionMintError-Cu9beG7j.cjs → ManagementSessionMintError-ByOulHQH.cjs} +4 -6
- package/dist/{ManagementSessionMintError-Cu9beG7j.cjs.map → ManagementSessionMintError-ByOulHQH.cjs.map} +1 -1
- package/dist/{ManagementSessionMintError-4Pkn5Oob.js → ManagementSessionMintError-DNMbYauw.js} +4 -6
- package/dist/{ManagementSessionMintError-4Pkn5Oob.js.map → ManagementSessionMintError-DNMbYauw.js.map} +1 -1
- package/dist/{QueryJobError-ZZZ043Nm.js → QueryJobError-Iq9O90Uh.js} +2 -3
- package/dist/{QueryJobError-ZZZ043Nm.js.map → QueryJobError-Iq9O90Uh.js.map} +1 -1
- package/dist/{QueryJobError-irGiP5zh.cjs → QueryJobError-Oy0fl4aw.cjs} +2 -3
- package/dist/{QueryJobError-irGiP5zh.cjs.map → QueryJobError-Oy0fl4aw.cjs.map} +1 -1
- package/dist/{QueueJobError-8bThS_Mc.js → QueueJobError-BJNUINXW.js} +2 -3
- package/dist/{QueueJobError-8bThS_Mc.js.map → QueueJobError-BJNUINXW.js.map} +1 -1
- package/dist/{QueueJobError-6qSEizWo.cjs → QueueJobError-DruZK3tc.cjs} +2 -3
- package/dist/{QueueJobError-6qSEizWo.cjs.map → QueueJobError-DruZK3tc.cjs.map} +1 -1
- package/dist/{SyncActionError-CoZFsdUk.js → SyncActionError-DuGcDbkd.js} +2 -3
- package/dist/{SyncActionError-CoZFsdUk.js.map → SyncActionError-DuGcDbkd.js.map} +1 -1
- package/dist/{SyncActionError-BG0zwchi.cjs → SyncActionError-mbpVg63X.cjs} +2 -3
- package/dist/{SyncActionError-BG0zwchi.cjs.map → SyncActionError-mbpVg63X.cjs.map} +1 -1
- package/dist/{UserError-By_Zckmc.js → UserError-BxoOJJ_u.js} +2 -3
- package/dist/{UserError-By_Zckmc.js.map → UserError-BxoOJJ_u.js.map} +1 -1
- package/dist/{UserError-CSGO1qII.cjs → UserError-D4P9Tbhf.cjs} +2 -3
- package/dist/{UserError-CSGO1qII.cjs.map → UserError-D4P9Tbhf.cjs.map} +1 -1
- package/dist/{ValidationError-D65QU0uq.cjs → ValidationError-BXcFX4nD.cjs} +2 -3
- package/dist/{ValidationError-D65QU0uq.cjs.map → ValidationError-BXcFX4nD.cjs.map} +1 -1
- package/dist/{ValidationError-DjhtNMfZ.js → ValidationError-BsdFDGY2.js} +2 -3
- package/dist/{ValidationError-DjhtNMfZ.js.map → ValidationError-BsdFDGY2.js.map} +1 -1
- package/dist/{configurations-CL0ouUMa.js → admin-CbMOsfgs.js} +5 -53
- package/dist/admin-CbMOsfgs.js.map +1 -0
- package/dist/{configurations-D9J3jh3g.cjs → admin-Di-MmGFP.cjs} +4 -124
- package/dist/admin-Di-MmGFP.cjs.map +1 -0
- package/dist/{adminRoles-DsoGQipO.d.ts → adminRoles-DAwl657q.d.ts} +2 -4
- package/dist/{adminRoles-CO7J5qAy.cjs → adminRoles-DnFpO_2W.cjs} +2 -3
- package/dist/{adminRoles-CO7J5qAy.cjs.map → adminRoles-DnFpO_2W.cjs.map} +1 -1
- package/dist/{adminRoles-BgpaBE7h.d.cts → adminRoles-FFyl7Dyx.d.cts} +2 -4
- package/dist/{adminRoles-B40yBcmq.js → adminRoles-asa-MhDD.js} +2 -3
- package/dist/{adminRoles-B40yBcmq.js.map → adminRoles-asa-MhDD.js.map} +1 -1
- package/dist/ai/index.cjs +3 -4
- package/dist/ai/index.d.cts +2 -4
- package/dist/ai/index.d.ts +2 -4
- package/dist/ai/index.js +3 -4
- package/dist/ai/types.d.cts +1 -1
- package/dist/ai/types.d.ts +1 -1
- package/dist/{appLogs-DpcqeOe5.d.ts → appLogs-CTvZAihm.d.ts} +2 -4
- package/dist/{appLogs-SjrflOHk.d.cts → appLogs-CnLNMH7M.d.cts} +2 -4
- package/dist/{appLogs-Cix2KWra.cjs → appLogs-CoAWQGxs.cjs} +5 -6
- package/dist/{appLogs-Cix2KWra.cjs.map → appLogs-CoAWQGxs.cjs.map} +1 -1
- package/dist/{appLogs-KslK7qHr.js → appLogs-DFcPwVk8.js} +4 -5
- package/dist/{appLogs-KslK7qHr.js.map → appLogs-DFcPwVk8.js.map} +1 -1
- package/dist/apps/index.cjs +29 -6
- package/dist/apps/index.cjs.map +1 -1
- package/dist/apps/index.d.cts +16 -5
- package/dist/apps/index.d.ts +16 -5
- package/dist/apps/index.js +29 -6
- package/dist/apps/index.js.map +1 -1
- package/dist/apps/types.d.cts +3 -3
- package/dist/apps/types.d.ts +3 -3
- package/dist/assets/index.cjs +2 -3
- package/dist/assets/index.d.cts +1 -3
- package/dist/assets/index.d.ts +1 -3
- package/dist/assets/index.js +2 -3
- package/dist/assets/schema.cjs +2 -3
- package/dist/assets/schema.d.cts +0 -2
- package/dist/assets/schema.d.ts +0 -2
- package/dist/assets/schema.js +1 -2
- 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 -2
- package/dist/auth/types.d.cts +1 -1
- package/dist/auth/types.d.ts +1 -1
- package/dist/{auth-C8Pjl0Mu.cjs → auth-CvB4MukT.cjs} +3 -4
- package/dist/{auth-C8Pjl0Mu.cjs.map → auth-CvB4MukT.cjs.map} +1 -1
- package/dist/{auth-4coY1uwo.js → auth-DYfQMQCs.js} +3 -4
- package/dist/{auth-4coY1uwo.js.map → auth-DYfQMQCs.js.map} +1 -1
- package/dist/{authClient-DfkKlc-2.cjs → authClient-DcKBpMcU.cjs} +66 -85
- package/dist/{authClient-DfkKlc-2.cjs.map → authClient-DcKBpMcU.cjs.map} +1 -1
- package/dist/{authClient-BYIGzL_u.d.ts → authClient-Df3U4q_6.d.cts} +4 -16
- package/dist/{authClient-D06srBQE.d.cts → authClient-JtMVJWXY.d.ts} +4 -16
- package/dist/{authClient-2e8ZmzSP.js → authClient-oB5ydxWp.js} +66 -85
- package/dist/{authClient-2e8ZmzSP.js.map → authClient-oB5ydxWp.js.map} +1 -1
- package/dist/{backends-DKBz5OxE.d.ts → backends-BHotIdL0.d.cts} +1 -3
- package/dist/{backends-DKBz5OxE.d.cts → backends-BHotIdL0.d.ts} +1 -3
- package/dist/billing/index.cjs +3 -5
- package/dist/billing/index.cjs.map +1 -1
- package/dist/billing/index.d.cts +27 -29
- package/dist/billing/index.d.ts +27 -29
- package/dist/billing/index.js +3 -5
- package/dist/billing/index.js.map +1 -1
- package/dist/billing/types.d.cts +26 -26
- package/dist/billing/types.d.ts +26 -26
- package/dist/chat/index.cjs +4 -5
- package/dist/chat/index.d.cts +3 -5
- package/dist/chat/index.d.ts +3 -5
- package/dist/chat/index.js +4 -5
- package/dist/chat/suggestions.cjs +1 -2
- package/dist/chat/suggestions.d.cts +1 -1
- package/dist/chat/suggestions.d.ts +1 -1
- package/dist/chat/suggestions.js +1 -2
- package/dist/chat/types.cjs +1 -2
- package/dist/chat/types.d.cts +1 -1
- package/dist/chat/types.d.ts +1 -1
- package/dist/chat/types.js +1 -2
- package/dist/{collectByOffset-DQsqtmJg.cjs → collectByOffset-DgxJ3zT9.cjs} +3 -4
- package/dist/{collectByOffset-DQsqtmJg.cjs.map → collectByOffset-DgxJ3zT9.cjs.map} +1 -1
- package/dist/{collectByOffset-2XzJqmvr.js → collectByOffset-i8Tdoze7.js} +3 -4
- package/dist/{collectByOffset-2XzJqmvr.js.map → collectByOffset-i8Tdoze7.js.map} +1 -1
- package/dist/{componentId-D4jp6a13.cjs → componentId-C8ZTXXDo.cjs} +2 -3
- package/dist/{componentId-D4jp6a13.cjs.map → componentId-C8ZTXXDo.cjs.map} +1 -1
- package/dist/{componentId-DmHwHG5V.js → componentId-b_qBbJEM.js} +2 -3
- package/dist/{componentId-DmHwHG5V.js.map → componentId-b_qBbJEM.js.map} +1 -1
- package/dist/componentsMcp/index.cjs +1 -1
- package/dist/componentsMcp/index.d.cts +1 -1
- package/dist/componentsMcp/index.d.ts +1 -1
- package/dist/componentsMcp/index.js +1 -2
- package/dist/componentsMcp/types.d.cts +1 -1
- package/dist/componentsMcp/types.d.ts +1 -1
- package/dist/{componentsMcp-pG-PcQrg.cjs → componentsMcp-BaHy5iLr.cjs} +5 -7
- package/dist/{componentsMcp-pG-PcQrg.cjs.map → componentsMcp-BaHy5iLr.cjs.map} +1 -1
- package/dist/{componentsMcp-CHobIsuU.js → componentsMcp-BrB4js6b.js} +5 -7
- package/dist/{componentsMcp-CHobIsuU.js.map → componentsMcp-BrB4js6b.js.map} +1 -1
- package/dist/{concurrent-BacWxPwi.js → concurrent-BtsT10Xe.js} +2 -3
- package/dist/{concurrent-BacWxPwi.js.map → concurrent-BtsT10Xe.js.map} +1 -1
- package/dist/{concurrent-CdVfR1N5.cjs → concurrent-DnTV_ppY.cjs} +2 -3
- package/dist/{concurrent-CdVfR1N5.cjs.map → concurrent-DnTV_ppY.cjs.map} +1 -1
- package/dist/configurations-Cd6Nsox-.js +49 -0
- package/dist/configurations-Cd6Nsox-.js.map +1 -0
- package/dist/configurations-WI8H4zLk.cjs +120 -0
- package/dist/configurations-WI8H4zLk.cjs.map +1 -0
- package/dist/constants/index.cjs +6 -3
- package/dist/constants/index.d.cts +5 -4
- package/dist/constants/index.d.ts +5 -4
- package/dist/constants/index.js +4 -4
- package/dist/{constants-CA4UN2Xv.js → constants-BMSHGwOR.js} +86 -17
- package/dist/constants-BMSHGwOR.js.map +1 -0
- package/dist/{constants-a0jswUeK.cjs → constants-DhFQWQgy.cjs} +103 -16
- package/dist/constants-DhFQWQgy.cjs.map +1 -0
- package/dist/{createAbortError-RendOpo7.cjs → createAbortError-Dzc9yObN.cjs} +2 -3
- package/dist/{createAbortError-RendOpo7.cjs.map → createAbortError-Dzc9yObN.cjs.map} +1 -1
- package/dist/{createAbortError-BxupOt-6.js → createAbortError-c6ekCpRy.js} +2 -3
- package/dist/{createAbortError-BxupOt-6.js.map → createAbortError-c6ekCpRy.js.map} +1 -1
- package/dist/{createFetchClient-lZ_93Yrb.cjs → createFetchClient-DEkUH662.cjs} +6 -10
- package/dist/{createFetchClient-lZ_93Yrb.cjs.map → createFetchClient-DEkUH662.cjs.map} +1 -1
- package/dist/{createFetchClient-CkHdS_IG.js → createFetchClient-DlGCbltR.js} +5 -9
- package/dist/{createFetchClient-CkHdS_IG.js.map → createFetchClient-DlGCbltR.js.map} +1 -1
- package/dist/{createGenericFetchClient-MOx97wi-.cjs → createGenericFetchClient-2oU-PXVo.cjs} +3 -4
- package/dist/{createGenericFetchClient-MOx97wi-.cjs.map → createGenericFetchClient-2oU-PXVo.cjs.map} +1 -1
- package/dist/createGenericFetchClient-wGxemBwR.js +6 -0
- package/dist/{createGenericFetchClient-CQdNcPC3.js.map → createGenericFetchClient-wGxemBwR.js.map} +1 -1
- package/dist/createOpenapiFetchClient-Bhz62MUE.js +6 -0
- package/dist/{createOpenapiFetchClient-DXiMv9WL.js.map → createOpenapiFetchClient-Bhz62MUE.js.map} +1 -1
- package/dist/{createOpenapiFetchClient-DHYo_k3t.cjs → createOpenapiFetchClient-DL9w7vU-.cjs} +3 -4
- package/dist/{createOpenapiFetchClient-DHYo_k3t.cjs.map → createOpenapiFetchClient-DL9w7vU-.cjs.map} +1 -1
- 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-AwPMeGfz.js → dataScience-CXmkEOAi.js} +7 -9
- package/dist/{dataScience-AwPMeGfz.js.map → dataScience-CXmkEOAi.js.map} +1 -1
- package/dist/{dataScience-BjS1p8WO.cjs → dataScience-CufjHPSd.cjs} +7 -9
- package/dist/{dataScience-BjS1p8WO.cjs.map → dataScience-CufjHPSd.cjs.map} +1 -1
- package/dist/{dedupe-OSnnst2u.cjs → dedupe-Bf0gl9TJ.cjs} +2 -3
- package/dist/{dedupe-OSnnst2u.cjs.map → dedupe-Bf0gl9TJ.cjs.map} +1 -1
- package/dist/{dedupe-Cky1gSUu.js → dedupe-Bu0d2i_w.js} +2 -3
- package/dist/{dedupe-Cky1gSUu.js.map → dedupe-Bu0d2i_w.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 -2
- package/dist/developerPortal/types.d.cts +1 -1
- package/dist/developerPortal/types.d.ts +1 -1
- package/dist/{developerPortalClient-DUerKw-7.cjs → developerPortalClient-BfRxYrWj.cjs} +9 -15
- package/dist/{developerPortalClient-DUerKw-7.cjs.map → developerPortalClient-BfRxYrWj.cjs.map} +1 -1
- package/dist/{developerPortalClient-Bb2suezr.js → developerPortalClient-D9XOYwWF.js} +9 -15
- package/dist/{developerPortalClient-Bb2suezr.js.map → developerPortalClient-D9XOYwWF.js.map} +1 -1
- package/dist/domain/permissions/index.cjs +24 -58
- package/dist/domain/permissions/index.d.cts +4 -10
- package/dist/domain/permissions/index.d.ts +4 -10
- package/dist/domain/permissions/index.js +4 -39
- package/dist/domain/storageTable/index.cjs +403 -9
- package/dist/domain/storageTable/index.cjs.map +1 -0
- package/dist/domain/storageTable/index.d.cts +189 -2
- package/dist/domain/storageTable/index.d.ts +189 -2
- package/dist/domain/storageTable/index.js +395 -1
- package/dist/domain/storageTable/index.js.map +1 -0
- package/dist/editor/index.cjs +3 -4
- package/dist/editor/index.d.cts +2 -4
- package/dist/editor/index.d.ts +2 -4
- package/dist/editor/index.js +3 -4
- package/dist/editor/types.d.cts +1 -1
- package/dist/editor/types.d.ts +1 -1
- package/dist/{emitter-dLF1Fyfg.d.ts → emitter-raKkIqRp.d.cts} +1 -3
- package/dist/{emitter-dLF1Fyfg.d.cts → emitter-raKkIqRp.d.ts} +1 -3
- package/dist/encryption/index.cjs +2 -3
- package/dist/encryption/index.d.cts +1 -1
- package/dist/encryption/index.d.ts +1 -1
- package/dist/encryption/index.js +2 -3
- package/dist/encryption/types.d.cts +1 -1
- package/dist/encryption/types.d.ts +1 -1
- package/dist/generateUUID-DE9sNyJF.js +5 -0
- package/dist/{generateUUID-Dr8l-aoc.js.map → generateUUID-DE9sNyJF.js.map} +1 -1
- package/dist/{generateUUID-C6qKBPIv.cjs → generateUUID-DbSTmvVP.cjs} +2 -3
- package/dist/{generateUUID-C6qKBPIv.cjs.map → generateUUID-DbSTmvVP.cjs.map} +1 -1
- package/dist/import/index.cjs +1 -1
- package/dist/import/index.d.cts +3 -5
- package/dist/import/index.d.ts +3 -5
- package/dist/import/index.js +1 -2
- package/dist/{import-BahNYv91.cjs → import-CABlFMQX.cjs} +6 -9
- package/dist/{import-BahNYv91.cjs.map → import-CABlFMQX.cjs.map} +1 -1
- package/dist/{import-FWy_wQZ1.js → import-CT1Ce5Rp.js} +6 -9
- package/dist/{import-FWy_wQZ1.js.map → import-CT1Ce5Rp.js.map} +1 -1
- package/dist/index-24GpnYhn.d.cts +150 -0
- package/dist/{index-VlzlOBkc.d.cts → index-AA3MRfRn.d.cts} +71 -13
- package/dist/{index-BLvmyehw.d.ts → index-BDPxm9qu.d.ts} +3 -7
- package/dist/index-BUZ-vTRt.d.ts +150 -0
- package/dist/{index-DzLXtE4Q.d.ts → index-BZDxWvZW.d.ts} +5 -7
- package/dist/index-C9iNazAc.d.ts +15103 -0
- package/dist/{index-avzO5sLa.d.ts → index-CCcdySOC.d.cts} +5 -7
- package/dist/{index-D91RxB_S.d.cts → index-CN0--VsY.d.ts} +5 -7
- package/dist/index-CTMnmISl.d.cts +15103 -0
- package/dist/{index-m7fX76x3.d.ts → index-CbSh3KFw.d.cts} +4 -12
- package/dist/{index-Cc5wSIRJ.d.cts → index-ClIV2Lch.d.cts} +5 -7
- package/dist/{index-BIldED4N.d.ts → index-CuI8OI9E.d.ts} +4 -13
- package/dist/{index-ChDl6ig5.d.cts → index-D1mduJne.d.cts} +11 -48
- package/dist/{index-sDHBkJhU.d.ts → index-D1mduJne.d.ts} +12 -49
- package/dist/{index-DlZiWfQb.d.ts → index-DIPMzH--.d.ts} +17 -10
- package/dist/{index-Co2Cd-nw.d.cts → index-DQagqTVa.d.cts} +3 -7
- package/dist/{index-CIqWOEWD.d.ts → index-DVBQgFg0.d.ts} +4 -6
- package/dist/index-DXoN8VwV.d.cts +10 -0
- package/dist/{index-BHiJu8LF.d.cts → index-Db266tLz.d.cts} +17 -10
- package/dist/{index-ByLCYBaw.d.cts → index-DgGpQsAT.d.cts} +4 -6
- package/dist/{index-CzHrIfZS.d.ts → index-DjSthn8d.d.ts} +71 -13
- package/dist/index-Xpu7qIZk.d.ts +10 -0
- package/dist/{index-BTrxCk90.d.ts → index-lTrNMlj6.d.ts} +3 -5
- package/dist/{index-CpGmmJbt.d.cts → index-m9-mN8Gg.d.ts} +4 -12
- package/dist/{index-CpUYVB-d.d.cts → index-xX8-Stoq.d.cts} +4 -13
- package/dist/{index-BCjU-g9t.d.cts → index-z-2okomN.d.cts} +3 -5
- package/dist/index.cjs +434 -1053
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +9 -8
- package/dist/index.d.ts +9 -8
- package/dist/index.js +427 -1050
- package/dist/index.js.map +1 -1
- package/dist/{isLoginPageRedirect-r0Opgc1n.cjs → isLoginPageRedirect-CoUxJi2x.cjs} +3 -4
- package/dist/{isLoginPageRedirect-r0Opgc1n.cjs.map → isLoginPageRedirect-CoUxJi2x.cjs.map} +1 -1
- package/dist/{isLoginPageRedirect-B4QKSiSa.js → isLoginPageRedirect-D-lqF_kZ.js} +3 -4
- package/dist/{isLoginPageRedirect-B4QKSiSa.js.map → isLoginPageRedirect-D-lqF_kZ.js.map} +1 -1
- package/dist/{isPlainObject-LYW-03uB.js → isPlainObject-BxsT8_t2.js} +2 -3
- package/dist/{isPlainObject-LYW-03uB.js.map → isPlainObject-BxsT8_t2.js.map} +1 -1
- package/dist/{isPlainObject-BB3iy87C.cjs → isPlainObject-CcvQt0qB.cjs} +2 -3
- package/dist/{isPlainObject-BB3iy87C.cjs.map → isPlainObject-CcvQt0qB.cjs.map} +1 -1
- package/dist/kaiAgent/index.cjs +1 -1
- package/dist/kaiAgent/index.d.cts +2 -2
- package/dist/kaiAgent/index.d.ts +2 -2
- package/dist/kaiAgent/index.js +1 -2
- package/dist/kaiAgent/types.d.cts +1 -1
- package/dist/kaiAgent/types.d.ts +1 -1
- package/dist/{kaiAgent-CYvrS8oZ.js → kaiAgent-D2TiMDjW.js} +6 -7
- package/dist/{kaiAgent-CYvrS8oZ.js.map → kaiAgent-D2TiMDjW.js.map} +1 -1
- package/dist/{kaiAgent-N2qbUFZm.cjs → kaiAgent-gaA7dqki.cjs} +6 -7
- package/dist/{kaiAgent-N2qbUFZm.cjs.map → kaiAgent-gaA7dqki.cjs.map} +1 -1
- package/dist/{kaiMemory-Qch09f-m.cjs → kaiMemory-CkLQfJXD.cjs} +6 -9
- package/dist/{kaiMemory-Qch09f-m.cjs.map → kaiMemory-CkLQfJXD.cjs.map} +1 -1
- package/dist/{kaiMemory-C9di17bd.js → kaiMemory-oir_qCo_.js} +6 -9
- package/dist/{kaiMemory-C9di17bd.js.map → kaiMemory-oir_qCo_.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 -2
- package/dist/management/types.cjs +13 -0
- package/dist/management/types.cjs.map +1 -0
- package/dist/management/types.d.cts +2 -2
- package/dist/management/types.d.ts +2 -2
- package/dist/management/types.js +11 -1
- package/dist/management/types.js.map +1 -0
- package/dist/{management-CXHnxVaZ.cjs → management-BEGOEQxM.cjs} +34 -59
- package/dist/management-BEGOEQxM.cjs.map +1 -0
- package/dist/{management-NYAD6ej4.js → management-BcGHyxAP.js} +34 -59
- package/dist/management-BcGHyxAP.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 -2
- package/dist/metastore/types.d.cts +1 -1
- package/dist/metastore/types.d.ts +1 -1
- package/dist/{metastore-Ywq08DBz.js → metastore-CGsgxjng.js} +7 -10
- package/dist/{metastore-Ywq08DBz.js.map → metastore-CGsgxjng.js.map} +1 -1
- package/dist/{metastore-BXHg33ku.cjs → metastore-DeRQ2VIv.cjs} +7 -10
- package/dist/{metastore-BXHg33ku.cjs.map → metastore-DeRQ2VIv.cjs.map} +1 -1
- package/dist/microsoftGraph/index.cjs +5 -8
- package/dist/microsoftGraph/index.cjs.map +1 -1
- package/dist/microsoftGraph/index.d.cts +3 -7
- package/dist/microsoftGraph/index.d.ts +3 -7
- package/dist/microsoftGraph/index.js +5 -8
- package/dist/microsoftGraph/index.js.map +1 -1
- package/dist/microsoftGraph/types.d.cts +2 -4
- package/dist/microsoftGraph/types.d.ts +2 -4
- package/dist/{middleware-GOfx8Apu.js → middleware-8zaJWcyU.js} +3 -5
- package/dist/middleware-8zaJWcyU.js.map +1 -0
- package/dist/{middleware-CEP6uu_D.cjs → middleware-B9RNuLfD.cjs} +3 -5
- package/dist/middleware-B9RNuLfD.cjs.map +1 -0
- package/dist/notifications/index.cjs +5 -6
- package/dist/notifications/index.d.cts +2 -4
- package/dist/notifications/index.d.ts +2 -4
- package/dist/notifications/index.js +5 -6
- 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 -4
- package/dist/oauth/index.d.ts +2 -4
- package/dist/oauth/index.js +1 -2
- package/dist/oauth/types.d.cts +1 -1
- package/dist/oauth/types.d.ts +1 -1
- package/dist/{oauth-DKZPuUlt.cjs → oauth-B5Biqz21.cjs} +7 -9
- package/dist/{oauth-DKZPuUlt.cjs.map → oauth-B5Biqz21.cjs.map} +1 -1
- package/dist/{oauth-GXmZ9agP.js → oauth-ByCdISsV.js} +7 -9
- package/dist/{oauth-GXmZ9agP.js.map → oauth-ByCdISsV.js.map} +1 -1
- package/dist/omnisearch/index.cjs +3 -4
- package/dist/omnisearch/index.d.cts +2 -4
- package/dist/omnisearch/index.d.ts +2 -4
- package/dist/omnisearch/index.js +3 -4
- package/dist/omnisearch/types.d.cts +1 -1
- package/dist/omnisearch/types.d.ts +1 -1
- package/dist/project-DmuC0bMK.js +83 -0
- package/dist/project-DmuC0bMK.js.map +1 -0
- package/dist/project-Onf-IcPW.cjs +136 -0
- package/dist/project-Onf-IcPW.cjs.map +1 -0
- package/dist/{project-nbv9yjpl.d.ts → project-UHZGFmmG.d.cts} +6 -9
- package/dist/{project-Dzu85cqr.d.cts → project-iBm4cIIR.d.ts} +6 -9
- 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 -2
- package/dist/queryService/types.d.cts +1 -1
- package/dist/queryService/types.d.ts +1 -1
- package/dist/{queryService-CzK53q94.cjs → queryService-Cg-eMysa.cjs} +9 -11
- package/dist/{queryService-CzK53q94.cjs.map → queryService-Cg-eMysa.cjs.map} +1 -1
- package/dist/{queryService-C-pZha5p.js → queryService-x8kq8Z2-.js} +9 -11
- package/dist/{queryService-C-pZha5p.js.map → queryService-x8kq8Z2-.js.map} +1 -1
- package/dist/queue/index.cjs +1 -1
- package/dist/queue/index.d.cts +4 -5
- package/dist/queue/index.d.ts +4 -5
- package/dist/queue/index.js +1 -2
- package/dist/queue/types.d.cts +1 -1
- package/dist/queue/types.d.ts +1 -1
- package/dist/{queue-D6-x4OGF.js → queue-BiIs9fX4.js} +9 -11
- package/dist/{queue-D6-x4OGF.js.map → queue-BiIs9fX4.js.map} +1 -1
- package/dist/{queue-BJvDWriM.cjs → queue-CBi9Q8vp.cjs} +9 -11
- package/dist/{queue-BJvDWriM.cjs.map → queue-CBi9Q8vp.cjs.map} +1 -1
- package/dist/{rolldown-runtime-VH7oDXx4.cjs → rolldown-runtime-CmQyd0Gu.cjs} +1 -2
- package/dist/scheduler/index.cjs +5 -6
- package/dist/scheduler/index.d.cts +2 -4
- package/dist/scheduler/index.d.ts +2 -4
- package/dist/scheduler/index.js +5 -6
- package/dist/scheduler/types.d.cts +1 -1
- package/dist/scheduler/types.d.ts +1 -1
- package/dist/{schema-BUyMwQnM.d.cts → schema-DLmBEgPM.d.cts} +1 -3
- package/dist/{schema-BUyMwQnM.d.ts → schema-DLmBEgPM.d.ts} +1 -3
- package/dist/schemaGuidedMerge-C8CqrNGe.cjs +55 -0
- package/dist/schemaGuidedMerge-C8CqrNGe.cjs.map +1 -0
- package/dist/schemaGuidedMerge-DFNqj9Nz.js +44 -0
- package/dist/schemaGuidedMerge-DFNqj9Nz.js.map +1 -0
- package/dist/sdk/configurations/index.cjs +634 -2
- package/dist/sdk/configurations/index.cjs.map +1 -0
- package/dist/sdk/configurations/index.d.cts +1030 -4
- package/dist/sdk/configurations/index.d.ts +1030 -4
- package/dist/sdk/configurations/index.js +633 -1
- package/dist/sdk/configurations/index.js.map +1 -0
- package/dist/sdk/developerPortal/index.cjs +9 -13
- package/dist/sdk/developerPortal/index.cjs.map +1 -1
- package/dist/sdk/developerPortal/index.d.cts +4 -6
- package/dist/sdk/developerPortal/index.d.ts +4 -6
- package/dist/sdk/developerPortal/index.js +9 -13
- package/dist/sdk/developerPortal/index.js.map +1 -1
- package/dist/sdk/kaiMemory/index.cjs +1 -1
- package/dist/sdk/kaiMemory/index.d.cts +1 -3
- package/dist/sdk/kaiMemory/index.d.ts +1 -3
- package/dist/sdk/kaiMemory/index.js +1 -2
- package/dist/sdk/kaiMemory/types.d.cts +1 -1
- package/dist/sdk/kaiMemory/types.d.ts +1 -1
- package/dist/sdk/queryService/index.cjs +3 -4
- package/dist/sdk/queryService/index.d.cts +1 -1
- package/dist/sdk/queryService/index.d.ts +1 -1
- package/dist/sdk/queryService/index.js +3 -4
- package/dist/sdk/semanticLayer/index.cjs +1 -1
- package/dist/sdk/semanticLayer/index.d.cts +1 -7
- package/dist/sdk/semanticLayer/index.d.ts +1 -7
- package/dist/sdk/semanticLayer/index.js +1 -2
- package/dist/sdk/semanticLayer/types.d.cts +1 -1
- package/dist/sdk/semanticLayer/types.d.ts +1 -1
- package/dist/sdk/storage/index.cjs +3 -6
- package/dist/sdk/storage/index.cjs.map +1 -1
- package/dist/sdk/storage/index.d.cts +0 -6
- package/dist/sdk/storage/index.d.ts +0 -6
- package/dist/sdk/storage/index.js +3 -6
- package/dist/sdk/storage/index.js.map +1 -1
- package/dist/sdk/tag/index.cjs +1 -1
- package/dist/sdk/tag/index.d.cts +3 -5
- package/dist/sdk/tag/index.d.ts +3 -5
- package/dist/sdk/tag/index.js +1 -2
- package/dist/sdk/tag/types.d.cts +1 -1
- package/dist/sdk/tag/types.d.ts +1 -1
- package/dist/sdk/vault/index.cjs +3 -5
- package/dist/sdk/vault/index.cjs.map +1 -1
- package/dist/sdk/vault/index.d.cts +1 -1
- package/dist/sdk/vault/index.d.ts +1 -1
- package/dist/sdk/vault/index.js +3 -5
- package/dist/sdk/vault/index.js.map +1 -1
- package/dist/{semanticLayer-DvjS_nzo.js → semanticLayer-BdPW_wLo.js} +9 -14
- package/dist/{semanticLayer-DvjS_nzo.js.map → semanticLayer-BdPW_wLo.js.map} +1 -1
- package/dist/{semanticLayer-7BejcMj_.cjs → semanticLayer-djom-J78.cjs} +9 -14
- package/dist/{semanticLayer-7BejcMj_.cjs.map → semanticLayer-djom-J78.cjs.map} +1 -1
- package/dist/status/index.cjs +2 -3
- package/dist/status/index.d.cts +1 -3
- package/dist/status/index.d.ts +1 -3
- package/dist/status/index.js +2 -3
- package/dist/status/types.d.cts +0 -2
- package/dist/status/types.d.ts +0 -2
- package/dist/storage/index.cjs +12 -9
- package/dist/storage/index.d.cts +4 -3
- package/dist/storage/index.d.ts +4 -3
- package/dist/storage/index.js +10 -10
- package/dist/storage/types.d.cts +6 -6
- package/dist/storage/types.d.ts +6 -6
- package/dist/{storage-BR-Kgi-6.js → storage-BpOLWT6h.js} +73 -85
- package/dist/{storage-CVBXivpB.cjs.map → storage-BpOLWT6h.js.map} +1 -1
- package/dist/{storage-CVBXivpB.cjs → storage-KJ5Ki_ma.cjs} +90 -84
- package/dist/storage-KJ5Ki_ma.cjs.map +1 -0
- package/dist/{store-xS-Cu_VS.cjs → store-2OyH1XOP.cjs} +3 -5
- package/dist/{store-xS-Cu_VS.cjs.map → store-2OyH1XOP.cjs.map} +1 -1
- package/dist/{store-C9FQCHGe.js → store-HP0zRcLz.js} +3 -5
- package/dist/{store-C9FQCHGe.js.map → store-HP0zRcLz.js.map} +1 -1
- package/dist/stream/index.cjs +4 -5
- package/dist/stream/index.d.cts +2 -4
- package/dist/stream/index.d.ts +2 -4
- package/dist/stream/index.js +4 -5
- package/dist/stream/types.d.cts +1 -1
- package/dist/stream/types.d.ts +1 -1
- package/dist/{suggestions-BH3x7xU7.d.ts → suggestions-xhIjrlvi.d.cts} +1 -3
- package/dist/{suggestions-BH3x7xU7.d.cts → suggestions-xhIjrlvi.d.ts} +1 -3
- package/dist/syncActions/index.cjs +1 -1
- package/dist/syncActions/index.d.cts +2 -2
- package/dist/syncActions/index.d.ts +2 -2
- package/dist/syncActions/index.js +1 -2
- package/dist/syncActions/types.d.cts +2 -2
- package/dist/syncActions/types.d.ts +2 -2
- package/dist/{syncActions-C1rE4R3f.cjs → syncActions-BcX3jm2E.cjs} +74 -187
- package/dist/syncActions-BcX3jm2E.cjs.map +1 -0
- package/dist/{syncActions-DM8vP7p3.js → syncActions-giPLTfje.js} +73 -186
- package/dist/syncActions-giPLTfje.js.map +1 -0
- package/dist/{tag-DHS_soa7.cjs → tag-A5z4tJn1.cjs} +5 -7
- package/dist/{tag-DHS_soa7.cjs.map → tag-A5z4tJn1.cjs.map} +1 -1
- package/dist/{tag-hh-1nhNr.js → tag-BwjbG3tT.js} +5 -7
- package/dist/{tag-hh-1nhNr.js.map → tag-BwjbG3tT.js.map} +1 -1
- package/dist/telemetry/index.cjs +4 -5
- package/dist/telemetry/index.d.cts +2 -4
- package/dist/telemetry/index.d.ts +2 -4
- package/dist/telemetry/index.js +4 -5
- package/dist/telemetry/types.d.cts +1 -1
- package/dist/telemetry/types.d.ts +1 -1
- package/dist/{transientRetries-B4iusp69.js → transientRetries-BKqmb85B.js} +13 -22
- package/dist/{transientRetries-B4iusp69.js.map → transientRetries-BKqmb85B.js.map} +1 -1
- package/dist/{transientRetries-DdJfH9QK.cjs → transientRetries-CM7rAEXQ.cjs} +13 -22
- package/dist/{transientRetries-DdJfH9QK.cjs.map → transientRetries-CM7rAEXQ.cjs.map} +1 -1
- package/dist/{types-DfJP6Dti.d.ts → types--Rp5wvaz.d.ts} +2 -6
- package/dist/{types-DlgqPU_4.d.cts → types-1IBnjBVJ.d.cts} +2 -6
- package/dist/{types-BXHZQvGy.d.ts → types-37vwxse4.d.cts} +2 -6
- package/dist/{types-QPW-7dPm.d.ts → types-6T04_qUf.d.ts} +2 -6
- package/dist/{types-CwQ8_n8q.d.ts → types-B0e-no6u.d.ts} +41 -62
- package/dist/{types-C_raqbl-.d.cts → types-B1qe1etN.d.cts} +3 -7
- package/dist/{types-Cc4yTEdK.d.ts → types-B3ri-iiC.d.ts} +2 -26
- package/dist/{types-0ZAMQhva.d.cts → types-BB49alHP.d.cts} +245 -9
- package/dist/{types-NSxpnYW5.d.cts → types-BCGrKW1K.d.cts} +6 -10
- package/dist/{types-BaqdM92a.d.ts → types-BE8abIig.d.cts} +2 -6
- package/dist/{types-c4h2YDMC.d.ts → types-BWMOK6eL.d.cts} +2 -6
- package/dist/{types-VehpPOQX.d.ts → types-Bat0SIZA.d.cts} +16 -97
- package/dist/{types-CpWE6Yg2.d.ts → types-Bdl7EFMc.d.ts} +2 -6
- package/dist/{types-DgOLSRiy.d.ts → types-BfB-XXLF.d.ts} +245 -9
- package/dist/{types-C9VaQSqV.d.ts → types-BiDdBXSm.d.ts} +2 -8
- package/dist/{types-EkyQ0_10.d.cts → types-BuclMPeY.d.cts} +2 -26
- package/dist/{types-CfZLdfAL.d.ts → types-C9okze_R.d.ts} +3 -7
- package/dist/{types-Dn1G-qv4.d.cts → types-CPWjRdnj.d.cts} +41 -62
- package/dist/{types-D3mj56iq.d.cts → types-CRubbBcU.d.cts} +2 -6
- package/dist/{types-BTy_FFSu.d.ts → types-CWcdaq-K.d.ts} +2 -6
- package/dist/{types-Bt8CEZ6K.d.ts → types-CcGp6O3B.d.cts} +3 -7
- package/dist/{types-BWYtQkHu.d.ts → types-Cr5lyI99.d.ts} +2 -6
- package/dist/{types-CNkQuWnO.d.cts → types-CxEJ77m3.d.cts} +3 -7
- package/dist/{types-CrJIILXf.d.cts → types-D-tJt0hQ.d.cts} +2 -6
- package/dist/{types-BYFU_6Iz.d.ts → types-D6lre27s.d.ts} +2 -8
- package/dist/{types-Cn8I0vcr.d.ts → types-DHMxPJZq.d.cts} +2 -6
- package/dist/{types-BtS3DhGu.d.cts → types-DJzTVMu1.d.ts} +2 -6
- package/dist/{types-DXF6faow.d.cts → types-DNgazFnF.d.cts} +2 -8
- package/dist/{types-UySfduQo.d.ts → types-DRCttnIN.d.ts} +2 -6
- package/dist/{types-D3H3EAre.d.ts → types-DUpVIuk7.d.ts} +2 -6
- package/dist/{types-Ce5Blzhg.d.ts → types-DeyXJzWz.d.cts} +2 -6
- package/dist/{types-sOM2_KPc.d.cts → types-Dryq2GGE.d.cts} +2 -6
- package/dist/{types-CwGbiMF-.d.cts → types-DschSZHf.d.cts} +3 -5
- package/dist/{types-C-GSYDTN.d.ts → types-DtOfhDzz.d.ts} +3 -5
- package/dist/{types-C4eQ-Zcx.d.cts → types-Du5o-tud.d.ts} +16 -97
- package/dist/{types-BbwrMl0Q.d.cts → types-DwbTiyhZ.d.cts} +2 -6
- package/dist/{types-B7L6uSYb.d.ts → types-Dz9vyloX.d.ts} +6 -10
- package/dist/{types-6KabdIyO.d.cts → types-E8tzafsk.d.cts} +3 -7
- package/dist/{types-EmIcG-8K.d.cts → types-LconaX98.d.cts} +2 -6
- package/dist/{types-Cfc-fYbq.d.cts → types-YpOm4yXE.d.cts} +2 -8
- package/dist/{types-CXv_e6xC.d.cts → types-ZZwdKCBl.d.ts} +2 -6
- package/dist/{types-D8d5tyGi.d.cts → types-eFi8xJIM.d.cts} +2 -6
- package/dist/{types-wNuJUhco.d.cts → types-inG9y3dP.d.ts} +2 -6
- package/dist/{types-Vu09EUZs.d.ts → types-ir7T2a9a.d.ts} +3 -7
- package/dist/{types-DMpiG2q4.d.cts → types-jjOulnni.d.ts} +2 -6
- package/dist/{types-DSBrhK_K.d.cts → types-wYrC2boT.d.ts} +3 -7
- package/dist/{types-1LENlL5h.d.ts → types-xzt_2H63.d.ts} +3 -7
- package/dist/{types-9d8ihjZh.d.cts → types-zPY-XGnM.d.ts} +2 -6
- package/dist/{validateConnectionStatus-BalWEyRk.cjs → validateConnectionStatus-BjemGI1e.cjs} +5 -7
- package/dist/{validateConnectionStatus-BalWEyRk.cjs.map → validateConnectionStatus-BjemGI1e.cjs.map} +1 -1
- package/dist/{validateConnectionStatus-DyrYpn0G.js → validateConnectionStatus-DYwWeWVo.js} +5 -7
- package/dist/{validateConnectionStatus-DyrYpn0G.js.map → validateConnectionStatus-DYwWeWVo.js.map} +1 -1
- package/dist/vault/index.cjs +7 -8
- package/dist/vault/index.d.cts +1 -1
- package/dist/vault/index.d.ts +1 -1
- package/dist/vault/index.js +7 -8
- package/dist/vault/types.d.cts +1 -1
- package/dist/vault/types.d.ts +1 -1
- package/package.json +7 -7
- package/surface/apps.md +12 -10
- package/surface/billing.md +2 -2
- package/surface/chat.md +1 -1
- package/surface/dataScience.md +1 -1
- package/surface/editor.md +5 -5
- package/surface/kaiAgent.md +4 -4
- package/surface/management.md +3 -2
- package/surface/queue.md +3 -3
- package/surface/sdk.md +0 -6
- package/surface/stack.md +11 -0
- package/surface/storage.md +2 -2
- package/surface/stream.md +6 -6
- package/surface/syncActions.md +1 -2
- package/dist/configurations-B2O8AAy0.cjs +0 -735
- package/dist/configurations-B2O8AAy0.cjs.map +0 -1
- package/dist/configurations-CL0ouUMa.js.map +0 -1
- package/dist/configurations-D9J3jh3g.cjs.map +0 -1
- package/dist/configurations-DKINmjA3.js +0 -718
- package/dist/configurations-DKINmjA3.js.map +0 -1
- package/dist/constants-CA4UN2Xv.js.map +0 -1
- package/dist/constants-a0jswUeK.cjs.map +0 -1
- package/dist/createGenericFetchClient-CQdNcPC3.js +0 -7
- package/dist/createOpenapiFetchClient-DXiMv9WL.js +0 -7
- package/dist/domain/permissions/index.cjs.map +0 -1
- package/dist/domain/permissions/index.js.map +0 -1
- package/dist/generateUUID-Dr8l-aoc.js +0 -6
- package/dist/index-B3QTeqfL.d.ts +0 -23575
- package/dist/index-BfqkgPGI.d.cts +0 -34
- package/dist/index-BfqkgPGI.d.ts +0 -34
- package/dist/index-C40Fbj-6.d.cts +0 -23575
- package/dist/index-P1vR966i.d.cts +0 -199
- package/dist/index-P1vR966i.d.ts +0 -199
- package/dist/management-CXHnxVaZ.cjs.map +0 -1
- package/dist/management-NYAD6ej4.js.map +0 -1
- package/dist/middleware-CEP6uu_D.cjs.map +0 -1
- package/dist/middleware-GOfx8Apu.js.map +0 -1
- package/dist/project-BXLFrWJ6.js +0 -45
- package/dist/project-BXLFrWJ6.js.map +0 -1
- package/dist/project-CpgplgCr.cjs +0 -62
- package/dist/project-CpgplgCr.cjs.map +0 -1
- package/dist/storage-BR-Kgi-6.js.map +0 -1
- package/dist/storageTable-BNOR2FCh.cjs +0 -442
- package/dist/storageTable-BNOR2FCh.cjs.map +0 -1
- package/dist/storageTable-BldTNyEk.js +0 -395
- package/dist/storageTable-BldTNyEk.js.map +0 -1
- package/dist/syncActions-C1rE4R3f.cjs.map +0 -1
- package/dist/syncActions-DM8vP7p3.js.map +0 -1
- package/surface/context.md +0 -40
|
@@ -1,52 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { t as
|
|
4
|
-
import { t as
|
|
5
|
-
import { t as
|
|
1
|
+
import { _ as KeboolaHttpHeader, s as HttpHeader } from "./createFetchClient-DlGCbltR.js";
|
|
2
|
+
import { t as validateConnectionStatus } from "./validateConnectionStatus-DYwWeWVo.js";
|
|
3
|
+
import { t as createGenericFetchClient } from "./createGenericFetchClient-wGxemBwR.js";
|
|
4
|
+
import { t as createOpenapiFetchClient } from "./createOpenapiFetchClient-Bhz62MUE.js";
|
|
5
|
+
import { t as createAbortError } from "./createAbortError-c6ekCpRy.js";
|
|
6
6
|
import * as z$1 from "zod";
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* The `page[after]` cursor `links.next` carries; `undefined` on the last page.
|
|
10
|
-
*
|
|
11
|
-
* - Read from the link, not rebuilt from the last row, so the encoding stays the server's.
|
|
12
|
-
* - Only the query is parsed, so a relative link works too.
|
|
13
|
-
*/
|
|
14
|
-
const nextCursorOf = (next) => {
|
|
15
|
-
if (next === null) return void 0;
|
|
16
|
-
const queryStart = next.indexOf("?");
|
|
17
|
-
if (queryStart === -1) return void 0;
|
|
18
|
-
const query = next.slice(queryStart + 1).split("#")[0];
|
|
19
|
-
return new URLSearchParams(query).get("page[after]") ?? void 0;
|
|
20
|
-
};
|
|
21
|
-
/**
|
|
22
|
-
* Collects items from a cursor-paginated endpoint — up to `limit`, or all when it is omitted.
|
|
23
|
-
*
|
|
24
|
-
* - Calls `fetchFrom` sequentially with the cursor each `links.next` carries, and hands it `pageSize`.
|
|
25
|
-
* - Ends on a `null` `links.next`, or on a link without a `page[after]`.
|
|
26
|
-
* - A cursor seen before means the server is looping; the walk throws rather than spin.
|
|
27
|
-
*/
|
|
28
|
-
const collectByCursor = async ({ fetchFrom, pageSize, limit, signal }) => {
|
|
29
|
-
if (signal?.aborted) throw createAbortError(signal.reason);
|
|
30
|
-
if (limit !== void 0 && limit < 0) throw new Error("Invalid collectByCursor limit");
|
|
31
|
-
if (pageSize !== void 0 && pageSize < 1) throw new Error("Invalid collectByCursor pageSize");
|
|
32
|
-
const items = [];
|
|
33
|
-
if (limit === 0) return items;
|
|
34
|
-
let after;
|
|
35
|
-
const seen = /* @__PURE__ */ new Set();
|
|
36
|
-
do {
|
|
37
|
-
const page = await fetchFrom(after, pageSize, signal);
|
|
38
|
-
items.push(...page.data);
|
|
39
|
-
if (limit !== void 0 && items.length >= limit) return items.slice(0, limit);
|
|
40
|
-
after = nextCursorOf(page.links.next);
|
|
41
|
-
if (after !== void 0) {
|
|
42
|
-
if (seen.has(after)) throw new Error(`collectByCursor: links.next repeats the cursor ${after}`);
|
|
43
|
-
seen.add(after);
|
|
44
|
-
}
|
|
45
|
-
} while (after !== void 0);
|
|
46
|
-
return items;
|
|
47
|
-
};
|
|
48
|
-
//#endregion
|
|
49
|
-
//#region src/clients/auth/device/device.ts
|
|
7
|
+
// src/clients/auth/device/device.ts
|
|
50
8
|
const createDevice = (client) => {
|
|
51
9
|
const create = async (body, signal) => {
|
|
52
10
|
const { data } = await client.post("/v1/auth/device", { body }, { signal });
|
|
@@ -66,8 +24,7 @@ const createDevice = (client) => {
|
|
|
66
24
|
getToken
|
|
67
25
|
};
|
|
68
26
|
};
|
|
69
|
-
|
|
70
|
-
//#region src/clients/auth/login/schemas.ts
|
|
27
|
+
// src/clients/auth/login/schemas.ts
|
|
71
28
|
const loginInputSchema = z$1.object({
|
|
72
29
|
/** Also mints a session cookie; `Origin` must be the stack app URL, else 403. */
|
|
73
30
|
browserMode: z$1.boolean().default(false) });
|
|
@@ -111,8 +68,7 @@ const mfaChallengeSchema = z$1.object({
|
|
|
111
68
|
});
|
|
112
69
|
const apiLoginResultSchema = z$1.union([apiLoginSuccessSchema, mfaChallengeSchema]);
|
|
113
70
|
const browserLoginResultSchema = z$1.union([browserLoginSuccessSchema, mfaChallengeSchema]);
|
|
114
|
-
|
|
115
|
-
//#region src/clients/auth/login/login.ts
|
|
71
|
+
// src/clients/auth/login/login.ts
|
|
116
72
|
const createLogin = (client) => {
|
|
117
73
|
const _login = async (body, signal) => {
|
|
118
74
|
const { data } = await client.post("/v1/auth/login", { body }, { signal });
|
|
@@ -153,8 +109,7 @@ const createLogin = (client) => {
|
|
|
153
109
|
methods
|
|
154
110
|
};
|
|
155
111
|
};
|
|
156
|
-
|
|
157
|
-
//#region src/clients/auth/manageTokens/manageTokens.ts
|
|
112
|
+
// src/clients/auth/manageTokens/manageTokens.ts
|
|
158
113
|
const createManageTokens = (client) => {
|
|
159
114
|
/**
|
|
160
115
|
* Every Manage API token the caller owns, in two lists.
|
|
@@ -189,8 +144,48 @@ const createManageTokens = (client) => {
|
|
|
189
144
|
revoke
|
|
190
145
|
};
|
|
191
146
|
};
|
|
192
|
-
|
|
193
|
-
|
|
147
|
+
// src/utils/async/collectByCursor.ts
|
|
148
|
+
/**
|
|
149
|
+
* The `page[after]` cursor `links.next` carries; `undefined` on the last page.
|
|
150
|
+
*
|
|
151
|
+
* - Read from the link, not rebuilt from the last row, so the encoding stays the server's.
|
|
152
|
+
* - Only the query is parsed, so a relative link works too.
|
|
153
|
+
*/
|
|
154
|
+
const nextCursorOf = (next) => {
|
|
155
|
+
if (next === null) return void 0;
|
|
156
|
+
const queryStart = next.indexOf("?");
|
|
157
|
+
if (queryStart === -1) return void 0;
|
|
158
|
+
const query = next.slice(queryStart + 1).split("#")[0];
|
|
159
|
+
return new URLSearchParams(query).get("page[after]") ?? void 0;
|
|
160
|
+
};
|
|
161
|
+
/**
|
|
162
|
+
* Collects items from a cursor-paginated endpoint — up to `limit`, or all when it is omitted.
|
|
163
|
+
*
|
|
164
|
+
* - Calls `fetchFrom` sequentially with the cursor each `links.next` carries, and hands it `pageSize`.
|
|
165
|
+
* - Ends on a `null` `links.next`, or on a link without a `page[after]`.
|
|
166
|
+
* - A cursor seen before means the server is looping; the walk throws rather than spin.
|
|
167
|
+
*/
|
|
168
|
+
const collectByCursor = async ({ fetchFrom, pageSize, limit, signal }) => {
|
|
169
|
+
if (signal?.aborted) throw createAbortError(signal.reason);
|
|
170
|
+
if (limit !== void 0 && limit < 0) throw new Error("Invalid collectByCursor limit");
|
|
171
|
+
if (pageSize !== void 0 && pageSize < 1) throw new Error("Invalid collectByCursor pageSize");
|
|
172
|
+
const items = [];
|
|
173
|
+
if (limit === 0) return items;
|
|
174
|
+
let after;
|
|
175
|
+
const seen = /* @__PURE__ */ new Set();
|
|
176
|
+
do {
|
|
177
|
+
const page = await fetchFrom(after, pageSize, signal);
|
|
178
|
+
items.push(...page.data);
|
|
179
|
+
if (limit !== void 0 && items.length >= limit) return items.slice(0, limit);
|
|
180
|
+
after = nextCursorOf(page.links.next);
|
|
181
|
+
if (after !== void 0) {
|
|
182
|
+
if (seen.has(after)) throw new Error(`collectByCursor: links.next repeats the cursor ${after}`);
|
|
183
|
+
seen.add(after);
|
|
184
|
+
}
|
|
185
|
+
} while (after !== void 0);
|
|
186
|
+
return items;
|
|
187
|
+
};
|
|
188
|
+
// src/clients/auth/me/me.ts
|
|
194
189
|
const PAGE_LIMIT = 200;
|
|
195
190
|
/**
|
|
196
191
|
* The signed-in user and the organizations, maintainers and projects they reach.
|
|
@@ -243,8 +238,7 @@ const createMe = (client) => {
|
|
|
243
238
|
getAllProjects
|
|
244
239
|
};
|
|
245
240
|
};
|
|
246
|
-
|
|
247
|
-
//#region src/clients/auth/mfa/schemas.ts
|
|
241
|
+
// src/clients/auth/mfa/schemas.ts
|
|
248
242
|
/**
|
|
249
243
|
* Methods `POST /v1/auth/mfa` accepts, also reported in a challenge's `mfaType` / `allowedMethods`.
|
|
250
244
|
*
|
|
@@ -269,8 +263,7 @@ const totpVerifyInputSchema = z$1.object({
|
|
|
269
263
|
code: z$1.string().min(1, "Required"),
|
|
270
264
|
revokeOtherSessions: z$1.boolean().default(false)
|
|
271
265
|
});
|
|
272
|
-
|
|
273
|
-
//#region src/clients/auth/mfa/mfa.ts
|
|
266
|
+
// src/clients/auth/mfa/mfa.ts
|
|
274
267
|
const createMfa = (client) => {
|
|
275
268
|
const _verify = async (body, signal) => {
|
|
276
269
|
const { data } = await client.post("/v1/auth/mfa", { body }, { signal });
|
|
@@ -316,8 +309,7 @@ const createMfa = (client) => {
|
|
|
316
309
|
}
|
|
317
310
|
};
|
|
318
311
|
};
|
|
319
|
-
|
|
320
|
-
//#region src/clients/auth/password/schemas.ts
|
|
312
|
+
// src/clients/auth/password/schemas.ts
|
|
321
313
|
const resetRequestInputSchema = z$1.object({ email: z$1.email() });
|
|
322
314
|
const resetInputSchema = z$1.object({
|
|
323
315
|
token: z$1.string().min(1, "Required"),
|
|
@@ -329,8 +321,7 @@ const changeInputSchema = z$1.object({
|
|
|
329
321
|
newPassword: z$1.string().min(1, "Required"),
|
|
330
322
|
revokeOtherSessions: z$1.boolean().default(true)
|
|
331
323
|
});
|
|
332
|
-
|
|
333
|
-
//#region src/clients/auth/password/password.ts
|
|
324
|
+
// src/clients/auth/password/password.ts
|
|
334
325
|
const createPassword = (client) => {
|
|
335
326
|
const resetRequest = async (input, signal) => {
|
|
336
327
|
const body = resetRequestInputSchema.parse(input);
|
|
@@ -350,8 +341,7 @@ const createPassword = (client) => {
|
|
|
350
341
|
change
|
|
351
342
|
};
|
|
352
343
|
};
|
|
353
|
-
|
|
354
|
-
//#region src/clients/auth/pat/pat.ts
|
|
344
|
+
// src/clients/auth/pat/pat.ts
|
|
355
345
|
/**
|
|
356
346
|
* Drop the keys whose value is `null` or `undefined`, and only those — an empty array or string is
|
|
357
347
|
* a value the caller meant.
|
|
@@ -409,8 +399,7 @@ const createPat = (client) => {
|
|
|
409
399
|
getAll
|
|
410
400
|
};
|
|
411
401
|
};
|
|
412
|
-
|
|
413
|
-
//#region src/clients/auth/pkce/pkce.ts
|
|
402
|
+
// src/clients/auth/pkce/pkce.ts
|
|
414
403
|
const createPkce = (client) => {
|
|
415
404
|
const getToken = async (body, signal) => {
|
|
416
405
|
const { data } = await client.post("/v1/auth/pkce/token", { body }, { signal });
|
|
@@ -418,8 +407,7 @@ const createPkce = (client) => {
|
|
|
418
407
|
};
|
|
419
408
|
return { getToken };
|
|
420
409
|
};
|
|
421
|
-
|
|
422
|
-
//#region src/clients/auth/saml/saml.ts
|
|
410
|
+
// src/clients/auth/saml/saml.ts
|
|
423
411
|
const createSaml = (client) => {
|
|
424
412
|
const assert = async (body, signal) => {
|
|
425
413
|
const { data } = await client.post("/v1/auth/saml/assert", { body }, { signal });
|
|
@@ -434,8 +422,7 @@ const createSaml = (client) => {
|
|
|
434
422
|
initiate
|
|
435
423
|
};
|
|
436
424
|
};
|
|
437
|
-
|
|
438
|
-
//#region src/clients/auth/session/session.ts
|
|
425
|
+
// src/clients/auth/session/session.ts
|
|
439
426
|
const createSession = (client) => {
|
|
440
427
|
const getAll = async (signal) => {
|
|
441
428
|
const { data } = await client.get("/v1/auth/sessions", {}, { signal });
|
|
@@ -453,8 +440,7 @@ const createSession = (client) => {
|
|
|
453
440
|
revokeAll
|
|
454
441
|
};
|
|
455
442
|
};
|
|
456
|
-
|
|
457
|
-
//#region src/clients/auth/sudo/sudo.ts
|
|
443
|
+
// src/clients/auth/sudo/sudo.ts
|
|
458
444
|
const createSudo = (client) => {
|
|
459
445
|
const verify = async (body, signal) => {
|
|
460
446
|
const { data } = await client.post("/v1/auth/sudo", { body }, { signal });
|
|
@@ -469,12 +455,10 @@ const createSudo = (client) => {
|
|
|
469
455
|
challenge
|
|
470
456
|
};
|
|
471
457
|
};
|
|
472
|
-
|
|
473
|
-
//#region src/clients/auth/token/schemas.ts
|
|
458
|
+
// src/clients/auth/token/schemas.ts
|
|
474
459
|
const refreshTokenInputSchema = z$1.object({ refreshToken: z$1.string().min(1, "Required") });
|
|
475
460
|
const refreshSessionInputSchema = z$1.object({ sessionId: z$1.string().min(1, "Required") });
|
|
476
|
-
|
|
477
|
-
//#region src/clients/auth/token/token.ts
|
|
461
|
+
// src/clients/auth/token/token.ts
|
|
478
462
|
const createToken = (client) => {
|
|
479
463
|
const _refresh = async (body, { signal, headers } = {}) => {
|
|
480
464
|
const { data } = await client.post("/v1/auth/token/refresh", { body }, {
|
|
@@ -526,8 +510,7 @@ const createToken = (client) => {
|
|
|
526
510
|
revoke
|
|
527
511
|
};
|
|
528
512
|
};
|
|
529
|
-
|
|
530
|
-
//#region src/clients/auth/webauthn/webauthn.ts
|
|
513
|
+
// src/clients/auth/webauthn/webauthn.ts
|
|
531
514
|
const createWebauthn = (client) => {
|
|
532
515
|
const getAll = async (signal) => {
|
|
533
516
|
const { data } = await client.get("/v1/auth/webauthn", {}, { signal });
|
|
@@ -558,8 +541,7 @@ const createWebauthn = (client) => {
|
|
|
558
541
|
remove
|
|
559
542
|
};
|
|
560
543
|
};
|
|
561
|
-
|
|
562
|
-
//#region src/clients/auth/authClient.ts
|
|
544
|
+
// src/clients/auth/authClient.ts
|
|
563
545
|
const createAuthClient = ({ baseUrl, middlewares }) => {
|
|
564
546
|
const client = createOpenapiFetchClient({
|
|
565
547
|
baseUrl,
|
|
@@ -592,7 +574,6 @@ const createAuthClient = ({ baseUrl, middlewares }) => {
|
|
|
592
574
|
webauthn: createWebauthn(client)
|
|
593
575
|
};
|
|
594
576
|
};
|
|
595
|
-
|
|
596
|
-
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, collectByCursor as v, nextCursorOf as y };
|
|
577
|
+
export { mfaChallengeSchema as _, resetInputSchema as a, mfaCodeInputSchema as c, collectByCursor as d, nextCursorOf as f, browserLoginSuccessSchema as g, browserLoginResultSchema as h, changeInputSchema as i, mfaWebauthnInputSchema as l, apiLoginSuccessSchema as m, refreshSessionInputSchema as n, resetRequestInputSchema as o, apiLoginResultSchema as p, refreshTokenInputSchema as r, MFA_METHOD as s, createAuthClient as t, totpVerifyInputSchema as u, oidcInputSchema as v, passwordInputSchema as y };
|
|
597
578
|
|
|
598
|
-
//# sourceMappingURL=authClient-
|
|
579
|
+
//# sourceMappingURL=authClient-oB5ydxWp.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authClient-2e8ZmzSP.js","names":["z","z","z","z"],"sources":["../src/utils/async/collectByCursor.ts","../src/clients/auth/device/device.ts","../src/clients/auth/login/schemas.ts","../src/clients/auth/login/login.ts","../src/clients/auth/manageTokens/manageTokens.ts","../src/clients/auth/me/me.ts","../src/clients/auth/mfa/schemas.ts","../src/clients/auth/mfa/mfa.ts","../src/clients/auth/password/schemas.ts","../src/clients/auth/password/password.ts","../src/clients/auth/pat/pat.ts","../src/clients/auth/pkce/pkce.ts","../src/clients/auth/saml/saml.ts","../src/clients/auth/session/session.ts","../src/clients/auth/sudo/sudo.ts","../src/clients/auth/token/schemas.ts","../src/clients/auth/token/token.ts","../src/clients/auth/webauthn/webauthn.ts","../src/clients/auth/authClient.ts"],"sourcesContent":["import { createAbortError } from '../createAbortError';\n\n/** One page of a cursor-paginated collection (`data` / `meta` / `links` envelope). */\nexport type CursorPage<T> = { data: T[]; links: { next: string | null } };\n\nexport type CollectByCursorOptions<T> = {\n fetchFrom: (\n after: string | undefined,\n pageSize?: number,\n signal?: AbortSignal,\n ) => Promise<CursorPage<T>>;\n pageSize?: number;\n limit?: number;\n signal?: AbortSignal;\n};\n\n/**\n * The `page[after]` cursor `links.next` carries; `undefined` on the last page.\n *\n * - Read from the link, not rebuilt from the last row, so the encoding stays the server's.\n * - Only the query is parsed, so a relative link works too.\n */\nexport const nextCursorOf = (next: string | null): string | undefined => {\n if (next === null) return undefined;\n const queryStart = next.indexOf('?');\n if (queryStart === -1) return undefined;\n const query = next.slice(queryStart + 1).split('#')[0];\n return new URLSearchParams(query).get('page[after]') ?? undefined;\n};\n\n/**\n * Collects items from a cursor-paginated endpoint — up to `limit`, or all when it is omitted.\n *\n * - Calls `fetchFrom` sequentially with the cursor each `links.next` carries, and hands it `pageSize`.\n * - Ends on a `null` `links.next`, or on a link without a `page[after]`.\n * - A cursor seen before means the server is looping; the walk throws rather than spin.\n */\nexport const collectByCursor = async <T>({\n fetchFrom,\n pageSize,\n limit,\n signal,\n}: CollectByCursorOptions<T>): Promise<T[]> => {\n if (signal?.aborted) throw createAbortError(signal.reason);\n if (limit !== undefined && limit < 0) throw new Error('Invalid collectByCursor limit');\n if (pageSize !== undefined && pageSize < 1) throw new Error('Invalid collectByCursor pageSize');\n\n const items: T[] = [];\n\n if (limit === 0) return items;\n\n let after: string | undefined;\n const seen = new Set<string>();\n\n do {\n const page = await fetchFrom(after, pageSize, signal);\n\n items.push(...page.data);\n\n if (limit !== undefined && items.length >= limit) return items.slice(0, limit);\n\n after = nextCursorOf(page.links.next);\n if (after !== undefined) {\n if (seen.has(after)) {\n throw new Error(`collectByCursor: links.next repeats the cursor ${after}`);\n }\n seen.add(after);\n }\n } while (after !== undefined);\n\n return items;\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type {\n ApproveDeviceAuthorizationBody,\n CreateDeviceAuthorizationBody,\n GetDeviceAuthorizationTokenBody,\n} from './types';\n\nexport const createDevice = (client: AuthOpenApiFetchClient) => {\n const create = async (body: CreateDeviceAuthorizationBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/device', { body }, { signal });\n return data;\n };\n\n const approve = async (body: ApproveDeviceAuthorizationBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/device/approve', { body }, { signal });\n return data;\n };\n\n const getToken = async (body: GetDeviceAuthorizationTokenBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/device/token', { body }, { signal });\n return data;\n };\n\n return { create, approve, getToken };\n};\n","import * as z from 'zod';\n\nconst loginInputSchema = z.object({\n /** Also mints a session cookie; `Origin` must be the stack app URL, else 403. */\n browserMode: z.boolean().default(false),\n});\n\nexport const passwordInputSchema = loginInputSchema.extend({\n email: z.email(),\n password: z.string().min(1, 'Required'),\n});\n\nexport const oidcInputSchema = loginInputSchema.extend({\n grantType: z.enum(['google', 'microsoft']),\n idToken: z.string().min(1, 'Required'),\n});\n\n// No `browserMode`: as `boolean` it would widen the result; the method signature keeps the literal.\nexport type PasswordInput = Omit<z.input<typeof passwordInputSchema>, 'browserMode'>;\nexport type OidcInput = Omit<z.input<typeof oidcInputSchema>, 'browserMode'>;\n\nconst userSchema = z.object({\n id: z.number(),\n email: z.string(),\n name: z.string(),\n});\n\n// The backend omits `mfaRequired` on success; the `false` default makes it the union discriminant.\nconst loginSuccessBaseSchema = z.object({\n mfaRequired: z.literal(false).default(false),\n accessToken: z.string(),\n tokenType: z.string(),\n expiresIn: z.number(),\n user: userSchema,\n sessionId: z.string(),\n});\n\nexport const apiLoginSuccessSchema = loginSuccessBaseSchema.extend({\n refreshToken: z.string(),\n});\n\nexport const browserLoginSuccessSchema = loginSuccessBaseSchema.extend({\n refreshToken: z.null().optional(),\n});\n\n/**\n * MFA-challenge shape.\n *\n * - `mfaType` / `allowedMethods` stay `string` so a new method still parses.\n * - `webauthn` is `PublicKeyCredentialRequestOptionsJSON`: present, `null` or absent (TOTP).\n * - `unknown`: a stricter shape failing would block every MFA sign-in; the ceremony validates.\n */\nexport const mfaChallengeSchema = z.object({\n mfaRequired: z.literal(true),\n mfaType: z.string(),\n mfaToken: z.string(),\n expiresIn: z.number(),\n allowedMethods: z.array(z.string()),\n // zod 4 `z.unknown()` is not implicitly optional; TOTP challenges omit the key.\n webauthn: z.unknown().optional(),\n});\n\nexport const apiLoginResultSchema = z.union([apiLoginSuccessSchema, mfaChallengeSchema]);\nexport const browserLoginResultSchema = z.union([browserLoginSuccessSchema, mfaChallengeSchema]);\n\nexport type LoginUser = z.infer<typeof userSchema>;\nexport type MfaChallenge = z.infer<typeof mfaChallengeSchema>;\nexport type ApiLoginSuccess = z.infer<typeof apiLoginSuccessSchema>;\nexport type BrowserLoginSuccess = z.infer<typeof browserLoginSuccessSchema>;\nexport type ApiLoginResult = z.infer<typeof apiLoginResultSchema>;\nexport type BrowserLoginResult = z.infer<typeof browserLoginResultSchema>;\n\nexport type LoginResultFor<Browser extends boolean> = Browser extends true\n ? BrowserLoginResult\n : ApiLoginResult;\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { LoginResultFor, OidcInput, PasswordInput } from './schemas';\nimport {\n apiLoginResultSchema,\n browserLoginResultSchema,\n oidcInputSchema,\n passwordInputSchema,\n} from './schemas';\nimport type { LoginBody } from './types';\n\nexport const createLogin = (client: AuthOpenApiFetchClient) => {\n const _login = async (body: LoginBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/login', { body }, { signal });\n return data;\n };\n\n /**\n * Grants parse with our own schemas — the generated response type is unreliable.\n *\n * - `browserMode` picks the schema: only API mode carries a refresh token.\n * - `const Browser` keeps the literal; a `boolean` flag widens the result to the union.\n */\n const withPassword = async <const Browser extends boolean = false>(\n input: Omit<PasswordInput, 'browserMode'> & { browserMode?: Browser },\n signal?: AbortSignal,\n ) => {\n const { email, password, browserMode } = passwordInputSchema.parse(input);\n // Cast: omit fields outside the grant — the backend rejects null.\n const data = await _login(\n { grantType: 'password', email, password, browserMode } as LoginBody,\n signal,\n );\n const schema = browserMode ? browserLoginResultSchema : apiLoginResultSchema;\n return schema.parse(data) as LoginResultFor<Browser>;\n };\n\n const withOidc = async <const Browser extends boolean = false>(\n input: Omit<OidcInput, 'browserMode'> & { browserMode?: Browser },\n signal?: AbortSignal,\n ) => {\n const { grantType, idToken, browserMode } = oidcInputSchema.parse(input);\n // Cast: omit fields outside the grant — the backend rejects null.\n const data = await _login({ grantType, idToken, browserMode } as LoginBody, signal);\n const schema = browserMode ? browserLoginResultSchema : apiLoginResultSchema;\n return schema.parse(data) as LoginResultFor<Browser>;\n };\n\n // Unauthenticated. Carries the public OAuth client ids `withOidc` callers mint an id token with.\n const methods = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/methods', {}, { signal });\n return data;\n };\n\n return { withPassword, withOidc, methods };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { CreateManageTokenInput, RevokeManageTokenPath } from './types';\n\nexport const createManageTokens = (client: AuthOpenApiFetchClient) => {\n /**\n * Every Manage API token the caller owns, in two lists.\n *\n * - `tokens` — the ones the caller created by hand, newest first.\n * - `sessionTokens` — the ones a browser sign-in minted, newest first.\n * - A token carries `scopes: []` when it merely inherits the caller's own permissions.\n */\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/manage-tokens', {}, { signal });\n return data;\n };\n\n /**\n * Mint a token and read its secret.\n *\n * - `token` in the response is returned this once and is unreadable afterwards.\n * - `manageToken` is the same row the list endpoint returns.\n * - Needs an active sudo window; without one the endpoint answers `403`.\n * - Rate-limited per caller, answering `429` with `Retry-After`.\n */\n const create = async (input: CreateManageTokenInput, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/manage-tokens', { body: input }, { signal });\n return data;\n };\n\n /** Deleting an id that is already gone answers `404` — the call is not idempotent. */\n const revoke = async (id: RevokeManageTokenPath['id'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/manage-tokens/{id}', { path: { id } }, { signal });\n };\n\n return { getAll, create, revoke };\n};\n","import { collectByCursor } from '../../../utils';\nimport type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { GetMeMaintainersQuery, GetMeOrganizationsQuery, GetMeProjectsQuery } from './types';\n\n// Connection's `app.auth.me.page.max_limit` (`config/packages/auth_me.yaml`); above it the request is a 400.\nconst PAGE_LIMIT = 200;\n\n/**\n * The signed-in user and the organizations, maintainers and projects they reach.\n *\n * - Session-only: a PAT bearer answers `403`.\n * - `404` while the stack's `programmatic-auth` feature is off.\n */\nexport const createMe = (client: AuthOpenApiFetchClient) => {\n /** Each collection is a counted preview — its first page; the rest is behind the paged methods. */\n const get = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me', {}, { signal });\n return data;\n };\n\n const getOrganizations = async (query?: GetMeOrganizationsQuery, signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me/organizations', { query }, { signal });\n return data;\n };\n\n const getMaintainers = async (query?: GetMeMaintainersQuery, signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me/maintainers', { query }, { signal });\n return data;\n };\n\n const getProjects = async (query?: GetMeProjectsQuery, signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me/projects', { query }, { signal });\n return data;\n };\n\n /** Every organization the caller reaches, across all pages. */\n const getAllOrganizations = (signal?: AbortSignal) =>\n collectByCursor({\n pageSize: PAGE_LIMIT,\n signal,\n fetchFrom: (after, limit, pageSignal) =>\n getOrganizations({ page: { limit, after } }, pageSignal),\n });\n\n /** Every project the caller can open, across all pages. */\n const getAllProjects = (signal?: AbortSignal) =>\n collectByCursor({\n pageSize: PAGE_LIMIT,\n signal,\n fetchFrom: (after, limit, pageSignal) => getProjects({ page: { limit, after } }, pageSignal),\n });\n\n return {\n get,\n getOrganizations,\n getMaintainers,\n getProjects,\n getAllOrganizations,\n getAllProjects,\n };\n};\n","import * as z from 'zod';\n\nimport type { VerifyMfaType } from './types';\n\n/**\n * Methods `POST /v1/auth/mfa` accepts, also reported in a challenge's `mfaType` / `allowedMethods`.\n *\n * - `satisfies` fails the build if the generated spec renames or drops one.\n * - A challenge may name a method not listed here, so the wire fields stay `string`.\n */\nexport const MFA_METHOD = {\n totp: 'totp',\n webauthn: 'webauthn',\n recoveryCode: 'recovery_code',\n} as const satisfies Record<string, VerifyMfaType>;\n\nexport type MfaMethod = (typeof MFA_METHOD)[keyof typeof MFA_METHOD];\n\nexport const mfaCodeInputSchema = z.object({\n mfaToken: z.string(),\n type: z.enum([MFA_METHOD.totp, MFA_METHOD.recoveryCode]),\n code: z.string().min(1, 'Required'),\n});\n\nexport const mfaWebauthnInputSchema = z.object({\n mfaToken: z.string(),\n assertion: z.string(),\n});\n\nexport const totpVerifyInputSchema = z.object({\n code: z.string().min(1, 'Required'),\n // Mirrors the backend default; the generated type wrongly marks it required.\n revokeOtherSessions: z.boolean().default(false),\n});\n\nexport type MfaCodeInput = z.infer<typeof mfaCodeInputSchema>;\nexport type MfaWebauthnInput = z.infer<typeof mfaWebauthnInputSchema>;\nexport type TotpVerifyInput = z.input<typeof totpVerifyInputSchema>;\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { MfaCodeInput, MfaWebauthnInput, TotpVerifyInput } from './schemas';\nimport {\n MFA_METHOD,\n mfaCodeInputSchema,\n mfaWebauthnInputSchema,\n totpVerifyInputSchema,\n} from './schemas';\nimport type { DisableTotpPath, VerifyMfaBody } from './types';\n\nexport const createMfa = (client: AuthOpenApiFetchClient) => {\n const _verify = async (body: VerifyMfaBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/mfa', { body }, { signal });\n return data;\n };\n\n const verifyWithCode = async (input: MfaCodeInput, signal?: AbortSignal) => {\n const { mfaToken, type, code } = mfaCodeInputSchema.parse(input);\n // Cast: omit fields outside the type — the backend rejects null.\n return _verify({ mfaToken, type, code } as VerifyMfaBody, signal);\n };\n\n const verifyWithWebauthn = async (input: MfaWebauthnInput, signal?: AbortSignal) => {\n const { mfaToken, assertion } = mfaWebauthnInputSchema.parse(input);\n // Cast: omit fields outside the type — the backend rejects null.\n return _verify({ mfaToken, type: MFA_METHOD.webauthn, assertion } as VerifyMfaBody, signal);\n };\n\n const regenerateRecoveryCodes = async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/mfa/recovery-codes', {}, { signal });\n return data;\n };\n\n // TOTP enrollment for the signed-in user (account MFA management). `setup` returns the shared\n // secret + `otpauthUri` to render as a QR; `verify` confirms the first code and hands back the\n // one-time recovery codes plus the new factor `id`; `disable` removes a factor by that `id`.\n const totp = {\n setup: async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/mfa/totp', {}, { signal });\n return data;\n },\n verify: async (input: TotpVerifyInput, signal?: AbortSignal) => {\n const body = totpVerifyInputSchema.parse(input);\n const { data } = await client.post('/v1/auth/mfa/totp/verify', { body }, { signal });\n return data;\n },\n disable: async (id: DisableTotpPath['id'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/mfa/totp/{id}', { path: { id } }, { signal });\n },\n };\n\n return { verifyWithCode, verifyWithWebauthn, regenerateRecoveryCodes, totp };\n};\n","import * as z from 'zod';\n\nexport const resetRequestInputSchema = z.object({\n email: z.email(),\n});\n\nexport const resetInputSchema = z.object({\n // The single-use reset token (`kbc_pr_…`) delivered by e-mail.\n token: z.string().min(1, 'Required'),\n newPassword: z.string().min(1, 'Required'),\n // Defaults to true, matching the backend. Password policy is backend-enforced.\n revokeSessions: z.boolean().default(true),\n});\n\nexport const changeInputSchema = z.object({\n currentPassword: z.string().min(1, 'Required'),\n newPassword: z.string().min(1, 'Required'),\n // Defaults to true on parse, so the SDK always sends it (matches the backend default).\n revokeOtherSessions: z.boolean().default(true),\n});\n\nexport type ResetRequestInput = z.infer<typeof resetRequestInputSchema>;\n// `z.input`, not `z.infer`: callers may omit `revokeSessions`.\nexport type ResetInput = z.input<typeof resetInputSchema>;\n// `z.input`: callers may omit `revokeOtherSessions`.\nexport type ChangePasswordInput = z.input<typeof changeInputSchema>;\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { ChangePasswordInput, ResetInput, ResetRequestInput } from './schemas';\nimport { changeInputSchema, resetInputSchema, resetRequestInputSchema } from './schemas';\n\nexport const createPassword = (client: AuthOpenApiFetchClient) => {\n // Fire-and-forget from the caller's view: the backend always answers 202 and reveals nothing about\n // whether the account exists. Resolves on 202; rejects on 429 (rate limited) or 400.\n const resetRequest = async (input: ResetRequestInput, signal?: AbortSignal) => {\n const body = resetRequestInputSchema.parse(input);\n await client.post('/v1/auth/password/reset-request', { body }, { signal });\n };\n\n // Applies the new password for the given reset token. Resolves on 204; rejects on 400 (invalid or\n // expired token, or a password that violates the policy).\n const reset = async (input: ResetInput, signal?: AbortSignal) => {\n // `revokeSessions` is defaulted by the schema, so the parsed body always carries all three\n // fields the endpoint requires — no field omission, no type assertion.\n const body = resetInputSchema.parse(input);\n await client.post('/v1/auth/password/reset', { body }, { signal });\n };\n\n // Changes the password for the signed-in user (bearer session). Resolves on 204; rejects on 400\n // (wrong current password, or a new password that violates the policy). Password policy is\n // backend-enforced.\n const change = async (input: ChangePasswordInput, signal?: AbortSignal) => {\n const body = changeInputSchema.parse(input);\n await client.post('/v1/auth/password/change', { body }, { signal });\n };\n\n return { resetRequest, reset, change };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type {\n CreatePatBodyRaw,\n CreatePatInput,\n ExchangePatBodyRaw,\n ExchangePatInput,\n PatScopeInput,\n RevokePatPath,\n} from './types';\n\n/**\n * Drop the keys whose value is `null` or `undefined`, and only those — an empty array or string is\n * a value the caller meant.\n *\n * The spec documents each optional PAT field as \"Omit (do not send `null`)\". Callers hold nullables\n * either way — an empty expiry picker, an untouched switch — so the rule lives here rather than at\n * every call site, where one of them would forget it.\n */\nconst withoutNullish = (entries: Record<string, unknown>): Record<string, unknown> =>\n Object.fromEntries(Object.entries(entries).filter(([, value]) => value != null));\n\n/** `undefined` for a scope that narrows nothing — which is what an absent `scope` already asks for. */\nconst toScope = (scope: PatScopeInput | null | undefined): Record<string, unknown> | undefined => {\n if (scope == null) return undefined;\n\n const payload = withoutNullish({ projects: scope.projects, readOnly: scope.readOnly });\n return Object.keys(payload).length > 0 ? payload : undefined;\n};\n\n// `as unknown as` at these two boundaries: `CreatePatBodyRaw` and `ExchangePatBodyRaw` both demand\n// the keys the endpoint documents as omittable, so the honest body is not expressible in either.\nconst toCreateBody = ({ name, expiresIn, scope }: CreatePatInput): CreatePatBodyRaw =>\n ({\n name,\n ...withoutNullish({ expiresIn, scope: toScope(scope) }),\n }) as unknown as CreatePatBodyRaw;\n\nconst toExchangeBody = ({ expiresIn, scope }: ExchangePatInput): ExchangePatBodyRaw =>\n withoutNullish({ expiresIn, scope: toScope(scope) }) as unknown as ExchangePatBodyRaw;\n\nexport const createPat = (client: AuthOpenApiFetchClient) => {\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/pat', {}, { signal });\n return data;\n };\n\n const create = async (input: CreatePatInput, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/pat', { body: toCreateBody(input) }, { signal });\n return data;\n };\n\n /**\n * Issue a child token from the one this request is authorized with.\n *\n * A child only ever attenuates its parent, so an empty input is a full-inheritance copy.\n */\n const exchange = async (input: ExchangePatInput = {}, signal?: AbortSignal) => {\n const { data } = await client.post(\n '/v1/auth/pat/exchange',\n { body: toExchangeBody(input) },\n { signal },\n );\n return data;\n };\n\n const revoke = async (id: RevokePatPath['id'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/pat/{id}', { path: { id } }, { signal });\n };\n\n return { create, exchange, revoke, getAll };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { GetPkceTokenBody } from './types';\n\nexport const createPkce = (client: AuthOpenApiFetchClient) => {\n const getToken = async (body: GetPkceTokenBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/pkce/token', { body }, { signal });\n return data;\n };\n\n return { getToken };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { AssertSamlBody, InitiateSamlBody } from './types';\n\nexport const createSaml = (client: AuthOpenApiFetchClient) => {\n const assert = async (body: AssertSamlBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/saml/assert', { body }, { signal });\n return data;\n };\n\n const initiate = async (body?: InitiateSamlBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/saml/initiate', { body }, { signal });\n return data;\n };\n\n return { assert, initiate };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { RevokeSessionPath } from './types';\n\nexport const createSession = (client: AuthOpenApiFetchClient) => {\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/sessions', {}, { signal });\n return data;\n };\n\n const revoke = async (sessionId: RevokeSessionPath['sessionId'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/sessions/{sessionId}', { path: { sessionId } }, { signal });\n };\n\n const revokeAll = async (signal?: AbortSignal) => {\n await client.delete('/v1/auth/sessions', {}, { signal });\n };\n\n return { getAll, revoke, revokeAll };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { SudoBody, SudoBodyRaw } from './types';\n\nexport const createSudo = (client: AuthOpenApiFetchClient) => {\n const verify = async (body: SudoBody, signal?: AbortSignal) => {\n // The generated request body (`SudoBodyRaw`) describes a payload the endpoint rejects — see the\n // `SudoBody` docs. Assert at this one boundary rather than making every caller send the invalid\n // shape; the real fix is the `#[OA\\Schema]`-vs-object mismatch on the backend, upstream of the\n // generated schema. Same pattern as `syncActionsClient`'s `PostActionsBodyRaw`.\n const { data } = await client.post(\n '/v1/auth/sudo',\n { body: body as unknown as SudoBodyRaw },\n { signal },\n );\n return data;\n };\n\n const challenge = async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/sudo/challenge', {}, { signal });\n return data;\n };\n\n return { verify, challenge };\n};\n","import * as z from 'zod';\n\nexport const refreshTokenInputSchema = z.object({\n refreshToken: z.string().min(1, 'Required'),\n});\n\nexport const refreshSessionInputSchema = z.object({\n // The session id the login response carried. The refresh token itself stays in a server-side\n // channel bound to the session cookie, so the client never holds it.\n sessionId: z.string().min(1, 'Required'),\n});\n\nexport type RefreshTokenInput = z.infer<typeof refreshTokenInputSchema>;\nexport type RefreshSessionInput = z.infer<typeof refreshSessionInputSchema>;\n","import { HttpHeader } from '../../../fetchClient';\nimport { KeboolaHttpHeader } from '../../../internal';\nimport type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { RefreshSessionInput, RefreshTokenInput } from './schemas';\nimport { refreshSessionInputSchema, refreshTokenInputSchema } from './schemas';\nimport type { RefreshTokenBody, RefreshTokenPartialBody, RevokeTokenBody } from './types';\n\nexport const createToken = (client: AuthOpenApiFetchClient) => {\n const _refresh = async (\n body: RefreshTokenPartialBody,\n { signal, headers }: { signal?: AbortSignal; headers?: Record<string, string> } = {},\n ) => {\n const { data } = await client.post(\n '/v1/auth/token/refresh',\n { body: body as RefreshTokenBody },\n { signal, headers },\n );\n\n return data;\n };\n\n /** API mode: rotates the pair. The response carries the next refresh token. */\n const refreshWithToken = async (input: RefreshTokenInput, signal?: AbortSignal) => {\n const { refreshToken } = refreshTokenInputSchema.parse(input);\n return _refresh({ refreshToken }, { signal });\n };\n\n /**\n * Browser/cookie mode: renews the access token off the session cookie.\n *\n * - The `X-KBC-CSRF` header opts in; without it the request is API mode.\n * - Its value is a constant: its presence is the CSRF proof (custom headers need a preflight).\n * - No refresh token in the response; it stays server-side, bound to the cookie.\n * - Works only from the stack's own origin (fetch's default `same-origin` credentials).\n * - An `Authorization` header rejects the request — use a client with no auth middleware.\n */\n const refreshWithSession = async (input: RefreshSessionInput, signal?: AbortSignal) => {\n const { sessionId } = refreshSessionInputSchema.parse(input);\n return _refresh({ sessionId }, { signal, headers: { [KeboolaHttpHeader.CSRF]: '1' } });\n };\n\n /**\n * Introspects an authenticated session token.\n *\n * @param token - Optional token to introspect (`Authorization: Bearer`); a middleware-set header wins.\n */\n const introspect = async (token?: string, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/v1/auth/token/introspect',\n {},\n { signal, headers: token ? { [HttpHeader.AUTHORIZATION]: `Bearer ${token}` } : undefined },\n );\n return data;\n };\n\n const revoke = async (body: RevokeTokenBody, signal?: AbortSignal) => {\n await client.post('/v1/auth/token/revoke', { body }, { signal });\n };\n\n return { refreshWithToken, refreshWithSession, introspect, revoke };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type {\n RegisterWebauthnInput,\n RegisterWebauthnOptionsResult,\n RemoveWebauthnInput,\n} from './types';\n\nexport const createWebauthn = (client: AuthOpenApiFetchClient) => {\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/webauthn', {}, { signal });\n return data;\n };\n\n const registerOptions = async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/webauthn/register/options', {}, { signal });\n // Cast: the spec types the free-form `options` object as `Record<string, never>`.\n return data as RegisterWebauthnOptionsResult;\n };\n\n const register = async (\n { credential, deviceName = null, revokeOtherSessions = false }: RegisterWebauthnInput,\n signal?: AbortSignal,\n ) => {\n const { data } = await client.post(\n '/v1/auth/webauthn/register',\n { body: { credential, deviceName, revokeOtherSessions } },\n { signal },\n );\n return data;\n };\n\n // `revokeOtherSessions` signs every other session out along with the credential — the calling\n // session and personal access tokens survive. Omitted means the backend's own `false`.\n const remove = async ({ id, ...query }: RemoveWebauthnInput, signal?: AbortSignal) => {\n await client.delete('/v1/auth/webauthn/{id}', { path: { id }, query }, { signal });\n };\n\n return { getAll, registerOptions, register, remove };\n};\n","import { createGenericFetchClient, createOpenapiFetchClient } from '../../fetchClient';\nimport type { ClientInitOptions } from '../types';\nimport { validateConnectionStatus } from '../validateConnectionStatus';\n\nimport type { paths } from './__generated__/schema';\nimport { createDevice } from './device';\nimport { createLogin } from './login';\nimport { createManageTokens } from './manageTokens';\nimport { createMe } from './me';\nimport { createMfa } from './mfa';\nimport { createPassword } from './password';\nimport { createPat } from './pat';\nimport { createPkce } from './pkce';\nimport { createSaml } from './saml';\nimport { createSession } from './session';\nimport { createSudo } from './sudo';\nimport { createToken } from './token';\nimport { createWebauthn } from './webauthn';\n\nexport type AuthClientInitOptions = Omit<ClientInitOptions, 'auth'>;\n\nexport type AuthOpenApiFetchClient = ReturnType<typeof createOpenapiFetchClient<paths>>;\n\nexport const createAuthClient = ({ baseUrl, middlewares }: AuthClientInitOptions) => {\n const client = createOpenapiFetchClient<paths>({\n baseUrl,\n middlewares,\n validateStatus: validateConnectionStatus,\n });\n const genericClient = createGenericFetchClient({\n baseUrl,\n middlewares,\n validateStatus: validateConnectionStatus,\n });\n\n // Host-level: Connection serves the storage, management and auth APIs off one baseUrl, so this\n // probes the host, not this API's prefix — `/v2/storage/health-check`, `/manage/health-check`\n // and `/v1/auth/health-check` all 404.\n const healthCheck = async (signal?: AbortSignal) => {\n const { data } = await genericClient.get('/health-check', {}, { signal });\n\n return data;\n };\n\n return {\n healthCheck,\n login: createLogin(client),\n mfa: createMfa(client),\n password: createPassword(client),\n saml: createSaml(client),\n pat: createPat(client),\n manageTokens: createManageTokens(client),\n me: createMe(client),\n device: createDevice(client),\n sudo: createSudo(client),\n pkce: createPkce(client),\n session: createSession(client),\n token: createToken(client),\n webauthn: createWebauthn(client),\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"authClient-oB5ydxWp.js","names":["z","z","z","z"],"sources":["../src/clients/auth/device/device.ts","../src/clients/auth/login/schemas.ts","../src/clients/auth/login/login.ts","../src/clients/auth/manageTokens/manageTokens.ts","../src/utils/async/collectByCursor.ts","../src/clients/auth/me/me.ts","../src/clients/auth/mfa/schemas.ts","../src/clients/auth/mfa/mfa.ts","../src/clients/auth/password/schemas.ts","../src/clients/auth/password/password.ts","../src/clients/auth/pat/pat.ts","../src/clients/auth/pkce/pkce.ts","../src/clients/auth/saml/saml.ts","../src/clients/auth/session/session.ts","../src/clients/auth/sudo/sudo.ts","../src/clients/auth/token/schemas.ts","../src/clients/auth/token/token.ts","../src/clients/auth/webauthn/webauthn.ts","../src/clients/auth/authClient.ts"],"sourcesContent":["import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type {\n ApproveDeviceAuthorizationBody,\n CreateDeviceAuthorizationBody,\n GetDeviceAuthorizationTokenBody,\n} from './types';\n\nexport const createDevice = (client: AuthOpenApiFetchClient) => {\n const create = async (body: CreateDeviceAuthorizationBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/device', { body }, { signal });\n return data;\n };\n\n const approve = async (body: ApproveDeviceAuthorizationBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/device/approve', { body }, { signal });\n return data;\n };\n\n const getToken = async (body: GetDeviceAuthorizationTokenBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/device/token', { body }, { signal });\n return data;\n };\n\n return { create, approve, getToken };\n};\n","import * as z from 'zod';\n\nconst loginInputSchema = z.object({\n /** Also mints a session cookie; `Origin` must be the stack app URL, else 403. */\n browserMode: z.boolean().default(false),\n});\n\nexport const passwordInputSchema = loginInputSchema.extend({\n email: z.email(),\n password: z.string().min(1, 'Required'),\n});\n\nexport const oidcInputSchema = loginInputSchema.extend({\n grantType: z.enum(['google', 'microsoft']),\n idToken: z.string().min(1, 'Required'),\n});\n\n// No `browserMode`: as `boolean` it would widen the result; the method signature keeps the literal.\nexport type PasswordInput = Omit<z.input<typeof passwordInputSchema>, 'browserMode'>;\nexport type OidcInput = Omit<z.input<typeof oidcInputSchema>, 'browserMode'>;\n\nconst userSchema = z.object({\n id: z.number(),\n email: z.string(),\n name: z.string(),\n});\n\n// The backend omits `mfaRequired` on success; the `false` default makes it the union discriminant.\nconst loginSuccessBaseSchema = z.object({\n mfaRequired: z.literal(false).default(false),\n accessToken: z.string(),\n tokenType: z.string(),\n expiresIn: z.number(),\n user: userSchema,\n sessionId: z.string(),\n});\n\nexport const apiLoginSuccessSchema = loginSuccessBaseSchema.extend({\n refreshToken: z.string(),\n});\n\nexport const browserLoginSuccessSchema = loginSuccessBaseSchema.extend({\n refreshToken: z.null().optional(),\n});\n\n/**\n * MFA-challenge shape.\n *\n * - `mfaType` / `allowedMethods` stay `string` so a new method still parses.\n * - `webauthn` is `PublicKeyCredentialRequestOptionsJSON`: present, `null` or absent (TOTP).\n * - `unknown`: a stricter shape failing would block every MFA sign-in; the ceremony validates.\n */\nexport const mfaChallengeSchema = z.object({\n mfaRequired: z.literal(true),\n mfaType: z.string(),\n mfaToken: z.string(),\n expiresIn: z.number(),\n allowedMethods: z.array(z.string()),\n // zod 4 `z.unknown()` is not implicitly optional; TOTP challenges omit the key.\n webauthn: z.unknown().optional(),\n});\n\nexport const apiLoginResultSchema = z.union([apiLoginSuccessSchema, mfaChallengeSchema]);\nexport const browserLoginResultSchema = z.union([browserLoginSuccessSchema, mfaChallengeSchema]);\n\nexport type LoginUser = z.infer<typeof userSchema>;\nexport type MfaChallenge = z.infer<typeof mfaChallengeSchema>;\nexport type ApiLoginSuccess = z.infer<typeof apiLoginSuccessSchema>;\nexport type BrowserLoginSuccess = z.infer<typeof browserLoginSuccessSchema>;\nexport type ApiLoginResult = z.infer<typeof apiLoginResultSchema>;\nexport type BrowserLoginResult = z.infer<typeof browserLoginResultSchema>;\n\nexport type LoginResultFor<Browser extends boolean> = Browser extends true\n ? BrowserLoginResult\n : ApiLoginResult;\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { LoginResultFor, OidcInput, PasswordInput } from './schemas';\nimport {\n apiLoginResultSchema,\n browserLoginResultSchema,\n oidcInputSchema,\n passwordInputSchema,\n} from './schemas';\nimport type { LoginBody } from './types';\n\nexport const createLogin = (client: AuthOpenApiFetchClient) => {\n const _login = async (body: LoginBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/login', { body }, { signal });\n return data;\n };\n\n /**\n * Grants parse with our own schemas — the generated response type is unreliable.\n *\n * - `browserMode` picks the schema: only API mode carries a refresh token.\n * - `const Browser` keeps the literal; a `boolean` flag widens the result to the union.\n */\n const withPassword = async <const Browser extends boolean = false>(\n input: Omit<PasswordInput, 'browserMode'> & { browserMode?: Browser },\n signal?: AbortSignal,\n ) => {\n const { email, password, browserMode } = passwordInputSchema.parse(input);\n // Cast: omit fields outside the grant — the backend rejects null.\n const data = await _login(\n { grantType: 'password', email, password, browserMode } as LoginBody,\n signal,\n );\n const schema = browserMode ? browserLoginResultSchema : apiLoginResultSchema;\n return schema.parse(data) as LoginResultFor<Browser>;\n };\n\n const withOidc = async <const Browser extends boolean = false>(\n input: Omit<OidcInput, 'browserMode'> & { browserMode?: Browser },\n signal?: AbortSignal,\n ) => {\n const { grantType, idToken, browserMode } = oidcInputSchema.parse(input);\n // Cast: omit fields outside the grant — the backend rejects null.\n const data = await _login({ grantType, idToken, browserMode } as LoginBody, signal);\n const schema = browserMode ? browserLoginResultSchema : apiLoginResultSchema;\n return schema.parse(data) as LoginResultFor<Browser>;\n };\n\n // Unauthenticated. Carries the public OAuth client ids `withOidc` callers mint an id token with.\n const methods = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/methods', {}, { signal });\n return data;\n };\n\n return { withPassword, withOidc, methods };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { CreateManageTokenInput, RevokeManageTokenPath } from './types';\n\nexport const createManageTokens = (client: AuthOpenApiFetchClient) => {\n /**\n * Every Manage API token the caller owns, in two lists.\n *\n * - `tokens` — the ones the caller created by hand, newest first.\n * - `sessionTokens` — the ones a browser sign-in minted, newest first.\n * - A token carries `scopes: []` when it merely inherits the caller's own permissions.\n */\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/manage-tokens', {}, { signal });\n return data;\n };\n\n /**\n * Mint a token and read its secret.\n *\n * - `token` in the response is returned this once and is unreadable afterwards.\n * - `manageToken` is the same row the list endpoint returns.\n * - Needs an active sudo window; without one the endpoint answers `403`.\n * - Rate-limited per caller, answering `429` with `Retry-After`.\n */\n const create = async (input: CreateManageTokenInput, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/manage-tokens', { body: input }, { signal });\n return data;\n };\n\n /** Deleting an id that is already gone answers `404` — the call is not idempotent. */\n const revoke = async (id: RevokeManageTokenPath['id'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/manage-tokens/{id}', { path: { id } }, { signal });\n };\n\n return { getAll, create, revoke };\n};\n","import { createAbortError } from '../createAbortError';\n\n/** One page of a cursor-paginated collection (`data` / `meta` / `links` envelope). */\nexport type CursorPage<T> = { data: T[]; links: { next: string | null } };\n\nexport type CollectByCursorOptions<T> = {\n fetchFrom: (\n after: string | undefined,\n pageSize?: number,\n signal?: AbortSignal,\n ) => Promise<CursorPage<T>>;\n pageSize?: number;\n limit?: number;\n signal?: AbortSignal;\n};\n\n/**\n * The `page[after]` cursor `links.next` carries; `undefined` on the last page.\n *\n * - Read from the link, not rebuilt from the last row, so the encoding stays the server's.\n * - Only the query is parsed, so a relative link works too.\n */\nexport const nextCursorOf = (next: string | null): string | undefined => {\n if (next === null) return undefined;\n const queryStart = next.indexOf('?');\n if (queryStart === -1) return undefined;\n const query = next.slice(queryStart + 1).split('#')[0];\n return new URLSearchParams(query).get('page[after]') ?? undefined;\n};\n\n/**\n * Collects items from a cursor-paginated endpoint — up to `limit`, or all when it is omitted.\n *\n * - Calls `fetchFrom` sequentially with the cursor each `links.next` carries, and hands it `pageSize`.\n * - Ends on a `null` `links.next`, or on a link without a `page[after]`.\n * - A cursor seen before means the server is looping; the walk throws rather than spin.\n */\nexport const collectByCursor = async <T>({\n fetchFrom,\n pageSize,\n limit,\n signal,\n}: CollectByCursorOptions<T>): Promise<T[]> => {\n if (signal?.aborted) throw createAbortError(signal.reason);\n if (limit !== undefined && limit < 0) throw new Error('Invalid collectByCursor limit');\n if (pageSize !== undefined && pageSize < 1) throw new Error('Invalid collectByCursor pageSize');\n\n const items: T[] = [];\n\n if (limit === 0) return items;\n\n let after: string | undefined;\n const seen = new Set<string>();\n\n do {\n const page = await fetchFrom(after, pageSize, signal);\n\n items.push(...page.data);\n\n if (limit !== undefined && items.length >= limit) return items.slice(0, limit);\n\n after = nextCursorOf(page.links.next);\n if (after !== undefined) {\n if (seen.has(after)) {\n throw new Error(`collectByCursor: links.next repeats the cursor ${after}`);\n }\n seen.add(after);\n }\n } while (after !== undefined);\n\n return items;\n};\n","import { collectByCursor } from '../../../utils';\nimport type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { GetMeMaintainersQuery, GetMeOrganizationsQuery, GetMeProjectsQuery } from './types';\n\n// Connection's `app.auth.me.page.max_limit` (`config/packages/auth_me.yaml`); above it the request is a 400.\nconst PAGE_LIMIT = 200;\n\n/**\n * The signed-in user and the organizations, maintainers and projects they reach.\n *\n * - Session-only: a PAT bearer answers `403`.\n * - `404` while the stack's `programmatic-auth` feature is off.\n */\nexport const createMe = (client: AuthOpenApiFetchClient) => {\n /** Each collection is a counted preview — its first page; the rest is behind the paged methods. */\n const get = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me', {}, { signal });\n return data;\n };\n\n const getOrganizations = async (query?: GetMeOrganizationsQuery, signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me/organizations', { query }, { signal });\n return data;\n };\n\n const getMaintainers = async (query?: GetMeMaintainersQuery, signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me/maintainers', { query }, { signal });\n return data;\n };\n\n const getProjects = async (query?: GetMeProjectsQuery, signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/me/projects', { query }, { signal });\n return data;\n };\n\n /** Every organization the caller reaches, across all pages. */\n const getAllOrganizations = (signal?: AbortSignal) =>\n collectByCursor({\n pageSize: PAGE_LIMIT,\n signal,\n fetchFrom: (after, limit, pageSignal) =>\n getOrganizations({ page: { limit, after } }, pageSignal),\n });\n\n /** Every project the caller can open, across all pages. */\n const getAllProjects = (signal?: AbortSignal) =>\n collectByCursor({\n pageSize: PAGE_LIMIT,\n signal,\n fetchFrom: (after, limit, pageSignal) => getProjects({ page: { limit, after } }, pageSignal),\n });\n\n return {\n get,\n getOrganizations,\n getMaintainers,\n getProjects,\n getAllOrganizations,\n getAllProjects,\n };\n};\n","import * as z from 'zod';\n\nimport type { VerifyMfaType } from './types';\n\n/**\n * Methods `POST /v1/auth/mfa` accepts, also reported in a challenge's `mfaType` / `allowedMethods`.\n *\n * - `satisfies` fails the build if the generated spec renames or drops one.\n * - A challenge may name a method not listed here, so the wire fields stay `string`.\n */\nexport const MFA_METHOD = {\n totp: 'totp',\n webauthn: 'webauthn',\n recoveryCode: 'recovery_code',\n} as const satisfies Record<string, VerifyMfaType>;\n\nexport type MfaMethod = (typeof MFA_METHOD)[keyof typeof MFA_METHOD];\n\nexport const mfaCodeInputSchema = z.object({\n mfaToken: z.string(),\n type: z.enum([MFA_METHOD.totp, MFA_METHOD.recoveryCode]),\n code: z.string().min(1, 'Required'),\n});\n\nexport const mfaWebauthnInputSchema = z.object({\n mfaToken: z.string(),\n assertion: z.string(),\n});\n\nexport const totpVerifyInputSchema = z.object({\n code: z.string().min(1, 'Required'),\n // Mirrors the backend default; the generated type wrongly marks it required.\n revokeOtherSessions: z.boolean().default(false),\n});\n\nexport type MfaCodeInput = z.infer<typeof mfaCodeInputSchema>;\nexport type MfaWebauthnInput = z.infer<typeof mfaWebauthnInputSchema>;\nexport type TotpVerifyInput = z.input<typeof totpVerifyInputSchema>;\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { MfaCodeInput, MfaWebauthnInput, TotpVerifyInput } from './schemas';\nimport {\n MFA_METHOD,\n mfaCodeInputSchema,\n mfaWebauthnInputSchema,\n totpVerifyInputSchema,\n} from './schemas';\nimport type { DisableTotpPath, VerifyMfaBody } from './types';\n\nexport const createMfa = (client: AuthOpenApiFetchClient) => {\n const _verify = async (body: VerifyMfaBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/mfa', { body }, { signal });\n return data;\n };\n\n const verifyWithCode = async (input: MfaCodeInput, signal?: AbortSignal) => {\n const { mfaToken, type, code } = mfaCodeInputSchema.parse(input);\n // Cast: omit fields outside the type — the backend rejects null.\n return _verify({ mfaToken, type, code } as VerifyMfaBody, signal);\n };\n\n const verifyWithWebauthn = async (input: MfaWebauthnInput, signal?: AbortSignal) => {\n const { mfaToken, assertion } = mfaWebauthnInputSchema.parse(input);\n // Cast: omit fields outside the type — the backend rejects null.\n return _verify({ mfaToken, type: MFA_METHOD.webauthn, assertion } as VerifyMfaBody, signal);\n };\n\n const regenerateRecoveryCodes = async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/mfa/recovery-codes', {}, { signal });\n return data;\n };\n\n // TOTP enrollment for the signed-in user (account MFA management). `setup` returns the shared\n // secret + `otpauthUri` to render as a QR; `verify` confirms the first code and hands back the\n // one-time recovery codes plus the new factor `id`; `disable` removes a factor by that `id`.\n const totp = {\n setup: async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/mfa/totp', {}, { signal });\n return data;\n },\n verify: async (input: TotpVerifyInput, signal?: AbortSignal) => {\n const body = totpVerifyInputSchema.parse(input);\n const { data } = await client.post('/v1/auth/mfa/totp/verify', { body }, { signal });\n return data;\n },\n disable: async (id: DisableTotpPath['id'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/mfa/totp/{id}', { path: { id } }, { signal });\n },\n };\n\n return { verifyWithCode, verifyWithWebauthn, regenerateRecoveryCodes, totp };\n};\n","import * as z from 'zod';\n\nexport const resetRequestInputSchema = z.object({\n email: z.email(),\n});\n\nexport const resetInputSchema = z.object({\n // The single-use reset token (`kbc_pr_…`) delivered by e-mail.\n token: z.string().min(1, 'Required'),\n newPassword: z.string().min(1, 'Required'),\n // Defaults to true, matching the backend. Password policy is backend-enforced.\n revokeSessions: z.boolean().default(true),\n});\n\nexport const changeInputSchema = z.object({\n currentPassword: z.string().min(1, 'Required'),\n newPassword: z.string().min(1, 'Required'),\n // Defaults to true on parse, so the SDK always sends it (matches the backend default).\n revokeOtherSessions: z.boolean().default(true),\n});\n\nexport type ResetRequestInput = z.infer<typeof resetRequestInputSchema>;\n// `z.input`, not `z.infer`: callers may omit `revokeSessions`.\nexport type ResetInput = z.input<typeof resetInputSchema>;\n// `z.input`: callers may omit `revokeOtherSessions`.\nexport type ChangePasswordInput = z.input<typeof changeInputSchema>;\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { ChangePasswordInput, ResetInput, ResetRequestInput } from './schemas';\nimport { changeInputSchema, resetInputSchema, resetRequestInputSchema } from './schemas';\n\nexport const createPassword = (client: AuthOpenApiFetchClient) => {\n // Fire-and-forget from the caller's view: the backend always answers 202 and reveals nothing about\n // whether the account exists. Resolves on 202; rejects on 429 (rate limited) or 400.\n const resetRequest = async (input: ResetRequestInput, signal?: AbortSignal) => {\n const body = resetRequestInputSchema.parse(input);\n await client.post('/v1/auth/password/reset-request', { body }, { signal });\n };\n\n // Applies the new password for the given reset token. Resolves on 204; rejects on 400 (invalid or\n // expired token, or a password that violates the policy).\n const reset = async (input: ResetInput, signal?: AbortSignal) => {\n // `revokeSessions` is defaulted by the schema, so the parsed body always carries all three\n // fields the endpoint requires — no field omission, no type assertion.\n const body = resetInputSchema.parse(input);\n await client.post('/v1/auth/password/reset', { body }, { signal });\n };\n\n // Changes the password for the signed-in user (bearer session). Resolves on 204; rejects on 400\n // (wrong current password, or a new password that violates the policy). Password policy is\n // backend-enforced.\n const change = async (input: ChangePasswordInput, signal?: AbortSignal) => {\n const body = changeInputSchema.parse(input);\n await client.post('/v1/auth/password/change', { body }, { signal });\n };\n\n return { resetRequest, reset, change };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type {\n CreatePatBodyRaw,\n CreatePatInput,\n ExchangePatBodyRaw,\n ExchangePatInput,\n PatScopeInput,\n RevokePatPath,\n} from './types';\n\n/**\n * Drop the keys whose value is `null` or `undefined`, and only those — an empty array or string is\n * a value the caller meant.\n *\n * The spec documents each optional PAT field as \"Omit (do not send `null`)\". Callers hold nullables\n * either way — an empty expiry picker, an untouched switch — so the rule lives here rather than at\n * every call site, where one of them would forget it.\n */\nconst withoutNullish = (entries: Record<string, unknown>): Record<string, unknown> =>\n Object.fromEntries(Object.entries(entries).filter(([, value]) => value != null));\n\n/** `undefined` for a scope that narrows nothing — which is what an absent `scope` already asks for. */\nconst toScope = (scope: PatScopeInput | null | undefined): Record<string, unknown> | undefined => {\n if (scope == null) return undefined;\n\n const payload = withoutNullish({ projects: scope.projects, readOnly: scope.readOnly });\n return Object.keys(payload).length > 0 ? payload : undefined;\n};\n\n// `as unknown as` at these two boundaries: `CreatePatBodyRaw` and `ExchangePatBodyRaw` both demand\n// the keys the endpoint documents as omittable, so the honest body is not expressible in either.\nconst toCreateBody = ({ name, expiresIn, scope }: CreatePatInput): CreatePatBodyRaw =>\n ({\n name,\n ...withoutNullish({ expiresIn, scope: toScope(scope) }),\n }) as unknown as CreatePatBodyRaw;\n\nconst toExchangeBody = ({ expiresIn, scope }: ExchangePatInput): ExchangePatBodyRaw =>\n withoutNullish({ expiresIn, scope: toScope(scope) }) as unknown as ExchangePatBodyRaw;\n\nexport const createPat = (client: AuthOpenApiFetchClient) => {\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/pat', {}, { signal });\n return data;\n };\n\n const create = async (input: CreatePatInput, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/pat', { body: toCreateBody(input) }, { signal });\n return data;\n };\n\n /**\n * Issue a child token from the one this request is authorized with.\n *\n * A child only ever attenuates its parent, so an empty input is a full-inheritance copy.\n */\n const exchange = async (input: ExchangePatInput = {}, signal?: AbortSignal) => {\n const { data } = await client.post(\n '/v1/auth/pat/exchange',\n { body: toExchangeBody(input) },\n { signal },\n );\n return data;\n };\n\n const revoke = async (id: RevokePatPath['id'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/pat/{id}', { path: { id } }, { signal });\n };\n\n return { create, exchange, revoke, getAll };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { GetPkceTokenBody } from './types';\n\nexport const createPkce = (client: AuthOpenApiFetchClient) => {\n const getToken = async (body: GetPkceTokenBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/pkce/token', { body }, { signal });\n return data;\n };\n\n return { getToken };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { AssertSamlBody, InitiateSamlBody } from './types';\n\nexport const createSaml = (client: AuthOpenApiFetchClient) => {\n const assert = async (body: AssertSamlBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/saml/assert', { body }, { signal });\n return data;\n };\n\n const initiate = async (body?: InitiateSamlBody, signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/saml/initiate', { body }, { signal });\n return data;\n };\n\n return { assert, initiate };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { RevokeSessionPath } from './types';\n\nexport const createSession = (client: AuthOpenApiFetchClient) => {\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/sessions', {}, { signal });\n return data;\n };\n\n const revoke = async (sessionId: RevokeSessionPath['sessionId'], signal?: AbortSignal) => {\n await client.delete('/v1/auth/sessions/{sessionId}', { path: { sessionId } }, { signal });\n };\n\n const revokeAll = async (signal?: AbortSignal) => {\n await client.delete('/v1/auth/sessions', {}, { signal });\n };\n\n return { getAll, revoke, revokeAll };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { SudoBody, SudoBodyRaw } from './types';\n\nexport const createSudo = (client: AuthOpenApiFetchClient) => {\n const verify = async (body: SudoBody, signal?: AbortSignal) => {\n // The generated request body (`SudoBodyRaw`) describes a payload the endpoint rejects — see the\n // `SudoBody` docs. Assert at this one boundary rather than making every caller send the invalid\n // shape; the real fix is the `#[OA\\Schema]`-vs-object mismatch on the backend, upstream of the\n // generated schema. Same pattern as `syncActionsClient`'s `PostActionsBodyRaw`.\n const { data } = await client.post(\n '/v1/auth/sudo',\n { body: body as unknown as SudoBodyRaw },\n { signal },\n );\n return data;\n };\n\n const challenge = async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/sudo/challenge', {}, { signal });\n return data;\n };\n\n return { verify, challenge };\n};\n","import * as z from 'zod';\n\nexport const refreshTokenInputSchema = z.object({\n refreshToken: z.string().min(1, 'Required'),\n});\n\nexport const refreshSessionInputSchema = z.object({\n // The session id the login response carried. The refresh token itself stays in a server-side\n // channel bound to the session cookie, so the client never holds it.\n sessionId: z.string().min(1, 'Required'),\n});\n\nexport type RefreshTokenInput = z.infer<typeof refreshTokenInputSchema>;\nexport type RefreshSessionInput = z.infer<typeof refreshSessionInputSchema>;\n","import { HttpHeader } from '../../../fetchClient';\nimport { KeboolaHttpHeader } from '../../../internal';\nimport type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type { RefreshSessionInput, RefreshTokenInput } from './schemas';\nimport { refreshSessionInputSchema, refreshTokenInputSchema } from './schemas';\nimport type { RefreshTokenBody, RefreshTokenPartialBody, RevokeTokenBody } from './types';\n\nexport const createToken = (client: AuthOpenApiFetchClient) => {\n const _refresh = async (\n body: RefreshTokenPartialBody,\n { signal, headers }: { signal?: AbortSignal; headers?: Record<string, string> } = {},\n ) => {\n const { data } = await client.post(\n '/v1/auth/token/refresh',\n { body: body as RefreshTokenBody },\n { signal, headers },\n );\n\n return data;\n };\n\n /** API mode: rotates the pair. The response carries the next refresh token. */\n const refreshWithToken = async (input: RefreshTokenInput, signal?: AbortSignal) => {\n const { refreshToken } = refreshTokenInputSchema.parse(input);\n return _refresh({ refreshToken }, { signal });\n };\n\n /**\n * Browser/cookie mode: renews the access token off the session cookie.\n *\n * - The `X-KBC-CSRF` header opts in; without it the request is API mode.\n * - Its value is a constant: its presence is the CSRF proof (custom headers need a preflight).\n * - No refresh token in the response; it stays server-side, bound to the cookie.\n * - Works only from the stack's own origin (fetch's default `same-origin` credentials).\n * - An `Authorization` header rejects the request — use a client with no auth middleware.\n */\n const refreshWithSession = async (input: RefreshSessionInput, signal?: AbortSignal) => {\n const { sessionId } = refreshSessionInputSchema.parse(input);\n return _refresh({ sessionId }, { signal, headers: { [KeboolaHttpHeader.CSRF]: '1' } });\n };\n\n /**\n * Introspects an authenticated session token.\n *\n * @param token - Optional token to introspect (`Authorization: Bearer`); a middleware-set header wins.\n */\n const introspect = async (token?: string, signal?: AbortSignal) => {\n const { data } = await client.get(\n '/v1/auth/token/introspect',\n {},\n { signal, headers: token ? { [HttpHeader.AUTHORIZATION]: `Bearer ${token}` } : undefined },\n );\n return data;\n };\n\n const revoke = async (body: RevokeTokenBody, signal?: AbortSignal) => {\n await client.post('/v1/auth/token/revoke', { body }, { signal });\n };\n\n return { refreshWithToken, refreshWithSession, introspect, revoke };\n};\n","import type { AuthOpenApiFetchClient } from '../authClient';\n\nimport type {\n RegisterWebauthnInput,\n RegisterWebauthnOptionsResult,\n RemoveWebauthnInput,\n} from './types';\n\nexport const createWebauthn = (client: AuthOpenApiFetchClient) => {\n const getAll = async (signal?: AbortSignal) => {\n const { data } = await client.get('/v1/auth/webauthn', {}, { signal });\n return data;\n };\n\n const registerOptions = async (signal?: AbortSignal) => {\n const { data } = await client.post('/v1/auth/webauthn/register/options', {}, { signal });\n // Cast: the spec types the free-form `options` object as `Record<string, never>`.\n return data as RegisterWebauthnOptionsResult;\n };\n\n const register = async (\n { credential, deviceName = null, revokeOtherSessions = false }: RegisterWebauthnInput,\n signal?: AbortSignal,\n ) => {\n const { data } = await client.post(\n '/v1/auth/webauthn/register',\n { body: { credential, deviceName, revokeOtherSessions } },\n { signal },\n );\n return data;\n };\n\n // `revokeOtherSessions` signs every other session out along with the credential — the calling\n // session and personal access tokens survive. Omitted means the backend's own `false`.\n const remove = async ({ id, ...query }: RemoveWebauthnInput, signal?: AbortSignal) => {\n await client.delete('/v1/auth/webauthn/{id}', { path: { id }, query }, { signal });\n };\n\n return { getAll, registerOptions, register, remove };\n};\n","import { createGenericFetchClient, createOpenapiFetchClient } from '../../fetchClient';\nimport type { ClientInitOptions } from '../types';\nimport { validateConnectionStatus } from '../validateConnectionStatus';\n\nimport type { paths } from './__generated__/schema';\nimport { createDevice } from './device';\nimport { createLogin } from './login';\nimport { createManageTokens } from './manageTokens';\nimport { createMe } from './me';\nimport { createMfa } from './mfa';\nimport { createPassword } from './password';\nimport { createPat } from './pat';\nimport { createPkce } from './pkce';\nimport { createSaml } from './saml';\nimport { createSession } from './session';\nimport { createSudo } from './sudo';\nimport { createToken } from './token';\nimport { createWebauthn } from './webauthn';\n\nexport type AuthClientInitOptions = Omit<ClientInitOptions, 'auth'>;\n\nexport type AuthOpenApiFetchClient = ReturnType<typeof createOpenapiFetchClient<paths>>;\n\nexport const createAuthClient = ({ baseUrl, middlewares }: AuthClientInitOptions) => {\n const client = createOpenapiFetchClient<paths>({\n baseUrl,\n middlewares,\n validateStatus: validateConnectionStatus,\n });\n const genericClient = createGenericFetchClient({\n baseUrl,\n middlewares,\n validateStatus: validateConnectionStatus,\n });\n\n // Host-level: Connection serves the storage, management and auth APIs off one baseUrl, so this\n // probes the host, not this API's prefix — `/v2/storage/health-check`, `/manage/health-check`\n // and `/v1/auth/health-check` all 404.\n const healthCheck = async (signal?: AbortSignal) => {\n const { data } = await genericClient.get('/health-check', {}, { signal });\n\n return data;\n };\n\n return {\n healthCheck,\n login: createLogin(client),\n mfa: createMfa(client),\n password: createPassword(client),\n saml: createSaml(client),\n pat: createPat(client),\n manageTokens: createManageTokens(client),\n me: createMe(client),\n device: createDevice(client),\n sudo: createSudo(client),\n pkce: createPkce(client),\n session: createSession(client),\n token: createToken(client),\n webauthn: createWebauthn(client),\n };\n};\n"],"mappings":"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"}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
//#region src/constants/backends.d.ts
|
|
2
1
|
declare const Backend: {
|
|
3
2
|
readonly Snowflake: 'snowflake';
|
|
4
3
|
readonly Bigquery: 'bigquery';
|
|
5
4
|
};
|
|
6
5
|
type Backend = (typeof Backend)[keyof typeof Backend];
|
|
7
|
-
//#endregion
|
|
8
6
|
export { Backend as t };
|
|
9
|
-
//# sourceMappingURL=backends-
|
|
7
|
+
//# sourceMappingURL=backends-BHotIdL0.d.cts.map
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
//#region src/constants/backends.d.ts
|
|
2
1
|
declare const Backend: {
|
|
3
2
|
readonly Snowflake: 'snowflake';
|
|
4
3
|
readonly Bigquery: 'bigquery';
|
|
5
4
|
};
|
|
6
5
|
type Backend = (typeof Backend)[keyof typeof Backend];
|
|
7
|
-
//#endregion
|
|
8
6
|
export { Backend as t };
|
|
9
|
-
//# sourceMappingURL=backends-
|
|
7
|
+
//# sourceMappingURL=backends-BHotIdL0.d.ts.map
|
package/dist/billing/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
|
-
|
|
2
|
+
const require_createOpenapiFetchClient = require("../createOpenapiFetchClient-DL9w7vU-.cjs");
|
|
3
|
+
const require_auth = require("../auth-CvB4MukT.cjs");
|
|
4
|
+
// src/clients/billing/billingClient.ts
|
|
5
5
|
const createBillingClient = ({ baseUrl, middlewares, auth }) => {
|
|
6
6
|
const client = require_createOpenapiFetchClient.createOpenapiFetchClient({
|
|
7
7
|
baseUrl,
|
|
@@ -16,7 +16,6 @@ const createBillingClient = ({ baseUrl, middlewares, auth }) => {
|
|
|
16
16
|
* Credit balance of the project the token identifies.
|
|
17
17
|
*
|
|
18
18
|
* - Answers only for a project carrying the `pay-as-you-go` feature.
|
|
19
|
-
* - `stats` is absent unless the project has consumption to report.
|
|
20
19
|
*/
|
|
21
20
|
const getCredits = async (signal) => {
|
|
22
21
|
const { data } = await client.get("/credits", {}, { signal });
|
|
@@ -40,7 +39,6 @@ const createBillingClient = ({ baseUrl, middlewares, auth }) => {
|
|
|
40
39
|
getCreditsAndTopUp
|
|
41
40
|
};
|
|
42
41
|
};
|
|
43
|
-
//#endregion
|
|
44
42
|
exports.createBillingClient = createBillingClient;
|
|
45
43
|
|
|
46
44
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","names":["createOpenapiFetchClient","createAuthHeaders"],"sources":["../../src/clients/billing/billingClient.ts"],"sourcesContent":["import { createOpenapiFetchClient } from '../../fetchClient';\nimport { createAuthHeaders } from '../auth';\nimport type { ClientInitOptions } from '../types';\n\nimport type { paths } from './__generated__/schema';\n\nexport const createBillingClient = ({ baseUrl, middlewares, auth }: ClientInitOptions) => {\n const client = createOpenapiFetchClient<paths>({\n baseUrl,\n middlewares,\n headers: createAuthHeaders(auth),\n });\n\n const healthCheck = async (signal?: AbortSignal) => {\n const { data } = await client.get('/health-check', {}, { signal });\n\n return data;\n };\n\n /**\n * Credit balance of the project the token identifies.\n *\n * - Answers only for a project carrying the `pay-as-you-go` feature.\n
|
|
1
|
+
{"version":3,"file":"index.cjs","names":["createOpenapiFetchClient","createAuthHeaders"],"sources":["../../src/clients/billing/billingClient.ts"],"sourcesContent":["import { createOpenapiFetchClient } from '../../fetchClient';\nimport { createAuthHeaders } from '../auth';\nimport type { ClientInitOptions } from '../types';\n\nimport type { paths } from './__generated__/schema';\n\nexport const createBillingClient = ({ baseUrl, middlewares, auth }: ClientInitOptions) => {\n const client = createOpenapiFetchClient<paths>({\n baseUrl,\n middlewares,\n headers: createAuthHeaders(auth),\n });\n\n const healthCheck = async (signal?: AbortSignal) => {\n const { data } = await client.get('/health-check', {}, { signal });\n\n return data;\n };\n\n /**\n * Credit balance of the project the token identifies.\n *\n * - Answers only for a project carrying the `pay-as-you-go` feature.\n */\n const getCredits = async (signal?: AbortSignal) => {\n const { data } = await client.get('/credits', {}, { signal });\n\n return data;\n };\n\n /**\n * The same balance, with an automatic top-up attempted first.\n *\n * - The top-up runs only when the balance is at or below zero.\n * - It needs the project's automatic top-up configuration\n * (`management.payAsYouGo.getTopUpSetting`); without one the balance comes back unchanged.\n * - A charge that fails does not fail the call — compare `remaining` against the prior read.\n */\n const getCreditsAndTopUp = async (signal?: AbortSignal) => {\n const { data } = await client.post('/credits', {}, { signal });\n\n return data;\n };\n\n return {\n healthCheck,\n getCredits,\n getCreditsAndTopUp,\n };\n};\n"],"mappings":";;;;AAMA,MAAa,uBAAuB,EAAE,SAAS,aAAa,WAA8B;CACxF,MAAM,SAASA,iCAAAA,yBAAgC;EAC7C;EACA;EACA,SAASC,aAAAA,kBAAkB,IAAI;CACjC,CAAC;CAED,MAAM,cAAc,OAAO,WAAyB;EAClD,MAAM,EAAE,SAAS,MAAM,OAAO,IAAI,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC;EAEjE,OAAO;CACT;;;;;;CAOA,MAAM,aAAa,OAAO,WAAyB;EACjD,MAAM,EAAE,SAAS,MAAM,OAAO,IAAI,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC;EAE5D,OAAO;CACT;;;;;;;;;CAUA,MAAM,qBAAqB,OAAO,WAAyB;EACzD,MAAM,EAAE,SAAS,MAAM,OAAO,KAAK,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC;EAE7D,OAAO;CACT;CAEA,OAAO;EACL;EACA;EACA;CACF;AACF"}
|
package/dist/billing/index.d.cts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { n as ClientInitOptions } from "../types-
|
|
2
|
-
//#region src/clients/billing/billingClient.d.ts
|
|
1
|
+
import { n as ClientInitOptions } from "../types-Dryq2GGE.cjs";
|
|
3
2
|
declare const createBillingClient: ({ baseUrl, middlewares, auth }: ClientInitOptions) => {
|
|
4
3
|
healthCheck: (signal?: AbortSignal) => Promise<{
|
|
5
4
|
status?: string;
|
|
@@ -7,42 +6,41 @@ declare const createBillingClient: ({ baseUrl, middlewares, auth }: ClientInitOp
|
|
|
7
6
|
getCredits: (signal?: AbortSignal) => Promise<{
|
|
8
7
|
consumed: number;
|
|
9
8
|
remaining: number;
|
|
10
|
-
stats
|
|
11
|
-
componentJobs
|
|
12
|
-
consumed
|
|
13
|
-
};
|
|
14
|
-
workspaceJobs?: {
|
|
15
|
-
workspaceType?: 'writer' | 'sandbox-sql' | 'transformation' | 'sandbox-data-science';
|
|
16
|
-
warehouseSize?: 'x-small' | 'small' | 'medium' | 'large' | 'x-large' | '2x-large' | '3x-large' | '4x-large';
|
|
17
|
-
consumed?: number;
|
|
18
|
-
};
|
|
19
|
-
marketplaceSubscription?: {
|
|
20
|
-
vendor: 'aws' | 'azure';
|
|
21
|
-
state: 'inactive' | 'active' | 'suspended' | 'unsubscribed';
|
|
22
|
-
billingLink: string;
|
|
9
|
+
stats: {
|
|
10
|
+
componentJobs: {
|
|
11
|
+
consumed: number;
|
|
23
12
|
};
|
|
13
|
+
workspaceJobs: {
|
|
14
|
+
workspaceType: 'writer' | 'sandbox-sql' | 'transformation' | 'sandbox-data-science';
|
|
15
|
+
warehouseSize: 'x-small' | 'small' | 'medium' | 'large' | 'x-large' | '2x-large' | '3x-large' | '4x-large';
|
|
16
|
+
consumed: number;
|
|
17
|
+
}[];
|
|
18
|
+
};
|
|
19
|
+
marketplaceSubscription?: {
|
|
20
|
+
vendor: 'aws' | 'azure' | 'gcp';
|
|
21
|
+
state: 'inactive' | 'active' | 'suspended' | 'unsubscribed';
|
|
22
|
+
billingLink: string | null;
|
|
24
23
|
};
|
|
25
24
|
}>;
|
|
26
25
|
getCreditsAndTopUp: (signal?: AbortSignal) => Promise<{
|
|
27
26
|
consumed: number;
|
|
28
27
|
remaining: number;
|
|
29
|
-
stats
|
|
30
|
-
componentJobs
|
|
31
|
-
consumed
|
|
32
|
-
};
|
|
33
|
-
workspaceJobs?: {
|
|
34
|
-
workspaceType?: 'writer' | 'sandbox-sql' | 'transformation' | 'sandbox-data-science';
|
|
35
|
-
warehouseSize?: 'x-small' | 'small' | 'medium' | 'large' | 'x-large' | '2x-large' | '3x-large' | '4x-large';
|
|
36
|
-
consumed?: number;
|
|
37
|
-
};
|
|
38
|
-
marketplaceSubscription?: {
|
|
39
|
-
vendor: 'aws' | 'azure';
|
|
40
|
-
state: 'inactive' | 'active' | 'suspended' | 'unsubscribed';
|
|
41
|
-
billingLink: string;
|
|
28
|
+
stats: {
|
|
29
|
+
componentJobs: {
|
|
30
|
+
consumed: number;
|
|
42
31
|
};
|
|
32
|
+
workspaceJobs: {
|
|
33
|
+
workspaceType: 'writer' | 'sandbox-sql' | 'transformation' | 'sandbox-data-science';
|
|
34
|
+
warehouseSize: 'x-small' | 'small' | 'medium' | 'large' | 'x-large' | '2x-large' | '3x-large' | '4x-large';
|
|
35
|
+
consumed: number;
|
|
36
|
+
}[];
|
|
37
|
+
};
|
|
38
|
+
marketplaceSubscription?: {
|
|
39
|
+
vendor: 'aws' | 'azure' | 'gcp';
|
|
40
|
+
state: 'inactive' | 'active' | 'suspended' | 'unsubscribed';
|
|
41
|
+
billingLink: string | null;
|
|
43
42
|
};
|
|
44
43
|
}>;
|
|
45
44
|
};
|
|
46
|
-
//#endregion
|
|
47
45
|
export { createBillingClient };
|
|
48
46
|
//# sourceMappingURL=index.d.cts.map
|