@keboola/api-client 41.0.0 → 43.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/API-SURFACE.md +44 -3
- package/CHANGELOG.md +170 -0
- package/README.md +1 -1
- package/dist/{ManagementClientAuthError-DE7lNGZQ.cjs → ManagementClientAuthError-BFZOtLgj.cjs} +2 -2
- package/dist/{ManagementClientAuthError-DE7lNGZQ.cjs.map → ManagementClientAuthError-BFZOtLgj.cjs.map} +1 -1
- package/dist/{ManagementClientAuthError-H30lti_Q.js → ManagementClientAuthError-DUbXlry2.js} +2 -2
- package/dist/{ManagementClientAuthError-H30lti_Q.js.map → ManagementClientAuthError-DUbXlry2.js.map} +1 -1
- package/dist/ai/index.cjs +2 -2
- package/dist/ai/index.js +2 -2
- package/dist/{appLogs-BBkkUOW1.js → appLogs-DfkItQCO.js} +2 -2
- package/dist/{appLogs-BBkkUOW1.js.map → appLogs-DfkItQCO.js.map} +1 -1
- package/dist/{appLogs-B9zFJIuy.cjs → appLogs-oZvt59mk.cjs} +2 -2
- package/dist/{appLogs-B9zFJIuy.cjs.map → appLogs-oZvt59mk.cjs.map} +1 -1
- package/dist/apps/index.cjs +3 -3
- package/dist/apps/index.js +3 -3
- package/dist/assets/index.cjs +1 -1
- package/dist/assets/index.js +1 -1
- package/dist/auth/index.cjs +1 -1
- package/dist/auth/index.d.cts +1 -1
- package/dist/auth/index.d.ts +1 -1
- package/dist/auth/index.js +1 -1
- package/dist/auth/types.d.cts +2 -2
- package/dist/auth/types.d.ts +2 -2
- package/dist/{auth-DworfoPy.js → auth-DUHTJTwS.js} +2 -2
- package/dist/{auth-DworfoPy.js.map → auth-DUHTJTwS.js.map} +1 -1
- package/dist/{auth-Dm0F2rOh.cjs → auth-zfI04oj7.cjs} +2 -2
- package/dist/{auth-Dm0F2rOh.cjs.map → auth-zfI04oj7.cjs.map} +1 -1
- package/dist/{authClient-BmuUo0J4.cjs → authClient-BxqRGR5c.cjs} +39 -5
- package/dist/authClient-BxqRGR5c.cjs.map +1 -0
- package/dist/{authClient-vEt_7_uk.d.cts → authClient-CBVAT3v9.d.cts} +49 -2
- package/dist/{authClient-CHXWJ9x3.d.ts → authClient-CRumc934.d.ts} +49 -2
- package/dist/{authClient-CgcDGd30.js → authClient-CX4buUMc.js} +39 -5
- package/dist/authClient-CX4buUMc.js.map +1 -0
- package/dist/billing/index.cjs +2 -2
- package/dist/billing/index.js +2 -2
- package/dist/businessWorkspaceApi/index.cjs +1 -1
- package/dist/businessWorkspaceApi/index.js +1 -1
- package/dist/{businessWorkspaceApi-BLUdefRF.js → businessWorkspaceApi-DFky1k61.js} +3 -3
- package/dist/{businessWorkspaceApi-BLUdefRF.js.map → businessWorkspaceApi-DFky1k61.js.map} +1 -1
- package/dist/{businessWorkspaceApi-6tCDdpnY.cjs → businessWorkspaceApi-Uzqu0PJM.cjs} +3 -3
- package/dist/{businessWorkspaceApi-6tCDdpnY.cjs.map → businessWorkspaceApi-Uzqu0PJM.cjs.map} +1 -1
- package/dist/chat/index.cjs +3 -3
- package/dist/chat/index.js +3 -3
- package/dist/collect-97WhfEpt.js +30 -0
- package/dist/collect-97WhfEpt.js.map +1 -0
- package/dist/collect-B5TCNiT1.cjs +35 -0
- package/dist/collect-B5TCNiT1.cjs.map +1 -0
- package/dist/{componentId-_IKXxICq.cjs → componentId-D4jp6a13.cjs} +17 -1
- package/dist/componentId-D4jp6a13.cjs.map +1 -0
- package/dist/{componentId-BJLfnaGc.js → componentId-DmHwHG5V.js} +17 -1
- package/dist/componentId-DmHwHG5V.js.map +1 -0
- package/dist/{configurations-VlfQ_37Y.cjs → configurations-D_Rbs0Wl.cjs} +2 -2
- package/dist/{configurations-VlfQ_37Y.cjs.map → configurations-D_Rbs0Wl.cjs.map} +1 -1
- package/dist/{configurations-CF3xz7RB.js → configurations-DcpUlC8I.js} +2 -2
- package/dist/{configurations-CF3xz7RB.js.map → configurations-DcpUlC8I.js.map} +1 -1
- package/dist/constants/index.cjs +1 -1
- package/dist/constants/index.d.cts +1 -1
- package/dist/constants/index.d.ts +1 -1
- package/dist/constants/index.js +1 -1
- package/dist/createAbortError-BxupOt-6.js +6 -0
- package/dist/createAbortError-BxupOt-6.js.map +1 -0
- package/dist/createAbortError-RendOpo7.cjs +11 -0
- package/dist/createAbortError-RendOpo7.cjs.map +1 -0
- package/dist/{createFetchClient-Cwp8max9.cjs → createFetchClient-BgihytBn.cjs} +2 -1
- package/dist/createFetchClient-BgihytBn.cjs.map +1 -0
- package/dist/{createFetchClient-DXHQK63w.js → createFetchClient-cgWkwgAQ.js} +2 -1
- package/dist/createFetchClient-cgWkwgAQ.js.map +1 -0
- package/dist/{createGenericFetchClient-Dl9cqTvR.cjs → createGenericFetchClient-C7Y0YVfc.cjs} +2 -2
- package/dist/{createGenericFetchClient-Dl9cqTvR.cjs.map → createGenericFetchClient-C7Y0YVfc.cjs.map} +1 -1
- package/dist/{createGenericFetchClient-Dg1rgzmG.js → createGenericFetchClient-CX9Hn3Aq.js} +2 -2
- package/dist/{createGenericFetchClient-Dg1rgzmG.js.map → createGenericFetchClient-CX9Hn3Aq.js.map} +1 -1
- package/dist/{createOpenapiFetchClient-DZUOVupy.js → createOpenapiFetchClient-BxcLLU_N.js} +2 -2
- package/dist/{createOpenapiFetchClient-DZUOVupy.js.map → createOpenapiFetchClient-BxcLLU_N.js.map} +1 -1
- package/dist/{createOpenapiFetchClient-BYqW-9tm.cjs → createOpenapiFetchClient-DY5s-aH6.cjs} +2 -2
- package/dist/{createOpenapiFetchClient-BYqW-9tm.cjs.map → createOpenapiFetchClient-DY5s-aH6.cjs.map} +1 -1
- package/dist/dataScience/index.cjs +2 -2
- package/dist/dataScience/index.d.cts +1 -1
- package/dist/dataScience/index.d.ts +1 -1
- package/dist/dataScience/index.js +2 -2
- package/dist/dataScience/types.d.cts +1 -1
- package/dist/dataScience/types.d.ts +1 -1
- package/dist/{dataScience-B5QxZnvW.cjs → dataScience-BoS8Xfvx.cjs} +5 -5
- package/dist/{dataScience-B5QxZnvW.cjs.map → dataScience-BoS8Xfvx.cjs.map} +1 -1
- package/dist/{dataScience-OXcwdk1p.js → dataScience-BxRoGfnG.js} +5 -5
- package/dist/{dataScience-OXcwdk1p.js.map → dataScience-BxRoGfnG.js.map} +1 -1
- package/dist/developerPortal/index.cjs +1 -1
- package/dist/developerPortal/index.d.cts +2 -2
- package/dist/developerPortal/index.d.ts +2 -2
- package/dist/developerPortal/index.js +1 -1
- package/dist/developerPortal/types.d.cts +1 -1
- package/dist/developerPortal/types.d.ts +1 -1
- package/dist/{developerPortalClient-B1QZ1rYi.js → developerPortalClient-C7s0kpjK.js} +3 -3
- package/dist/{developerPortalClient-B1QZ1rYi.js.map → developerPortalClient-C7s0kpjK.js.map} +1 -1
- package/dist/{developerPortalClient-CLPpBksD.cjs → developerPortalClient-DFHEsrlt.cjs} +3 -3
- package/dist/{developerPortalClient-CLPpBksD.cjs.map → developerPortalClient-DFHEsrlt.cjs.map} +1 -1
- package/dist/domain/permissions/index.d.cts +2 -2
- package/dist/domain/permissions/index.d.ts +2 -2
- package/dist/domain/storageTable/index.cjs +7 -1
- package/dist/domain/storageTable/index.d.cts +2 -2
- package/dist/domain/storageTable/index.d.ts +2 -2
- package/dist/domain/storageTable/index.js +2 -2
- package/dist/editor/index.cjs +2 -2
- package/dist/editor/index.js +2 -2
- package/dist/encryption/index.cjs +1 -1
- package/dist/encryption/index.d.cts +1 -1
- package/dist/encryption/index.d.ts +1 -1
- package/dist/encryption/index.js +1 -1
- package/dist/encryption/types.d.cts +1 -1
- package/dist/encryption/types.d.ts +1 -1
- package/dist/import/index.cjs +1 -1
- package/dist/import/index.js +1 -1
- package/dist/{import-CNk89mqy.cjs → import-BSYvG3Uy.cjs} +3 -3
- package/dist/{import-CNk89mqy.cjs.map → import-BSYvG3Uy.cjs.map} +1 -1
- package/dist/{import-DiMQCzLa.js → import-CXBcFVbk.js} +3 -3
- package/dist/{import-DiMQCzLa.js.map → import-CXBcFVbk.js.map} +1 -1
- package/dist/{index-DNThyEej.d.cts → index-04pgr-EO.d.cts} +14 -3
- package/dist/{index-DCRKjihs.d.ts → index-B03vhWSX.d.ts} +117 -90
- package/dist/{index-BDZvaRud.d.ts → index-B72LTF-k.d.ts} +6 -3
- package/dist/{index-CcMHJcuP.d.cts → index-BHWTa4YN.d.cts} +3 -2
- package/dist/{index-DOAZmWvh.d.cts → index-BMiZx-4_.d.cts} +6 -3
- package/dist/{index-CaaTOANF.d.ts → index-BQZ9njUC.d.ts} +598 -85
- package/dist/{index--ZpnE3YT.d.cts → index-BUsLHNOA.d.cts} +2 -2
- package/dist/{index-Cz0MXhzs.d.cts → index-C7KThHI3.d.cts} +6 -2
- package/dist/{index-D-VMgpGc.d.ts → index-CAvT_ahE.d.ts} +6 -2
- package/dist/{index-D7-o-oGa.d.ts → index-CBWfpd-0.d.ts} +2 -2
- package/dist/index-CGCXR_6Q.d.ts +273 -0
- package/dist/{index-C11JSxBY.d.ts → index-CX8GAP2g.d.ts} +13 -8
- package/dist/{index-Cvbjp3jx.d.cts → index-CdS-c6sC.d.cts} +6 -6
- package/dist/{index-cWp_V6K5.d.cts → index-Cm04GKm9.d.cts} +598 -85
- package/dist/{index-C4TNAA8-.d.cts → index-Cvkrjh--.d.cts} +13 -8
- package/dist/{index-ByRpNVcs.d.cts → index-D3HFMfJJ.d.cts} +117 -90
- package/dist/{index-DnQTuc6t.d.ts → index-D7of2MMN.d.ts} +6 -6
- package/dist/index-DINB7vsV.d.cts +273 -0
- package/dist/{index-B5w7WlaU.d.cts → index-DeQDdut6.d.cts} +17 -1
- package/dist/{index-B5w7WlaU.d.ts → index-DeQDdut6.d.ts} +17 -1
- package/dist/{index-CXcWpZQ2.d.ts → index-P1vR966i.d.cts} +74 -2
- package/dist/{index-CXcWpZQ2.d.cts → index-P1vR966i.d.ts} +74 -2
- package/dist/{index-Qb7X6-ph.d.ts → index-R-w0Zncz.d.ts} +14 -3
- package/dist/{index-D_-4uQF8.d.ts → index-zyxZVJnd.d.ts} +3 -2
- package/dist/index.cjs +68 -41
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +67 -41
- package/dist/index.js.map +1 -1
- package/dist/{isLoginPageRedirect-XPwAOKK3.js → isLoginPageRedirect-CsjF95_P.js} +2 -2
- package/dist/{isLoginPageRedirect-XPwAOKK3.js.map → isLoginPageRedirect-CsjF95_P.js.map} +1 -1
- package/dist/{isLoginPageRedirect-jQHiLrG7.cjs → isLoginPageRedirect-c451CoWW.cjs} +2 -2
- package/dist/{isLoginPageRedirect-jQHiLrG7.cjs.map → isLoginPageRedirect-c451CoWW.cjs.map} +1 -1
- package/dist/{jobStatus-CfRtsIpv.js → jobStatus-CDp4r5JQ.js} +3 -5
- package/dist/jobStatus-CDp4r5JQ.js.map +1 -0
- package/dist/{jobStatus-BMlsyXWI.cjs → jobStatus-CcNlIy5R.cjs} +5 -13
- package/dist/{jobStatus-CfRtsIpv.js.map → jobStatus-CcNlIy5R.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 -1
- package/dist/kaiAgent/types.d.cts +1 -1
- package/dist/kaiAgent/types.d.ts +1 -1
- package/dist/{kaiAgent-QNoeVKPs.cjs → kaiAgent-ph4DRKlT.cjs} +21 -5
- package/dist/kaiAgent-ph4DRKlT.cjs.map +1 -0
- package/dist/{kaiAgent-Dp20HLTh.js → kaiAgent-xBpUwLeQ.js} +21 -5
- package/dist/kaiAgent-xBpUwLeQ.js.map +1 -0
- package/dist/{kaiMemory-D0Y_16U4.js → kaiMemory-BAniZZAN.js} +2 -2
- package/dist/{kaiMemory-D0Y_16U4.js.map → kaiMemory-BAniZZAN.js.map} +1 -1
- package/dist/{kaiMemory-CClSPInt.cjs → kaiMemory-U0DG-CpY.cjs} +2 -2
- package/dist/{kaiMemory-CClSPInt.cjs.map → kaiMemory-U0DG-CpY.cjs.map} +1 -1
- package/dist/management/index.cjs +1 -1
- package/dist/management/index.d.cts +1 -1
- package/dist/management/index.d.ts +1 -1
- package/dist/management/index.js +1 -1
- package/dist/management/types.d.cts +2 -2
- package/dist/management/types.d.ts +2 -2
- package/dist/{management-CCY0IYnq.cjs → management-5597SiC7.cjs} +79 -11
- package/dist/management-5597SiC7.cjs.map +1 -0
- package/dist/{management-DvmPiG64.js → management-D46KlXts.js} +79 -11
- package/dist/management-D46KlXts.js.map +1 -0
- package/dist/metastore/index.cjs +1 -1
- package/dist/metastore/index.d.cts +1 -1
- package/dist/metastore/index.d.ts +1 -1
- package/dist/metastore/index.js +1 -1
- package/dist/metastore/types.d.cts +2 -2
- package/dist/metastore/types.d.ts +2 -2
- package/dist/{metastore-XtWciCZT.cjs → metastore-DwMFlP2d.cjs} +52 -7
- package/dist/metastore-DwMFlP2d.cjs.map +1 -0
- package/dist/{metastore-BycJxe7A.js → metastore-_OskcLGz.js} +52 -7
- package/dist/metastore-_OskcLGz.js.map +1 -0
- package/dist/microsoftGraph/index.cjs +2 -2
- package/dist/microsoftGraph/index.d.cts +2 -1
- package/dist/microsoftGraph/index.d.ts +2 -1
- package/dist/microsoftGraph/index.js +2 -2
- package/dist/microsoftGraph/types.d.cts +1 -1
- package/dist/microsoftGraph/types.d.ts +1 -1
- package/dist/{middleware-CBwrtgQd.js → middleware-Drbo_UIZ.js} +2 -2
- package/dist/{middleware-CBwrtgQd.js.map → middleware-Drbo_UIZ.js.map} +1 -1
- package/dist/{middleware-IjYx3d5u.cjs → middleware-xhg2r2fE.cjs} +2 -2
- package/dist/{middleware-IjYx3d5u.cjs.map → middleware-xhg2r2fE.cjs.map} +1 -1
- package/dist/notifications/index.cjs +3 -3
- package/dist/notifications/index.js +3 -3
- package/dist/oauth/index.cjs +1 -1
- package/dist/oauth/index.d.cts +1 -1
- package/dist/oauth/index.d.ts +1 -1
- package/dist/oauth/index.js +1 -1
- package/dist/oauth/types.d.cts +1 -1
- package/dist/oauth/types.d.ts +1 -1
- package/dist/{oauth--2p8jkJf.cjs → oauth-L0Uic3YA.cjs} +5 -5
- package/dist/{oauth--2p8jkJf.cjs.map → oauth-L0Uic3YA.cjs.map} +1 -1
- package/dist/{oauth-l5zE39cD.js → oauth-TWwAv-va.js} +5 -5
- package/dist/{oauth-l5zE39cD.js.map → oauth-TWwAv-va.js.map} +1 -1
- package/dist/omnisearch/index.cjs +2 -2
- package/dist/omnisearch/index.d.cts +1 -1
- package/dist/omnisearch/index.d.ts +1 -1
- package/dist/omnisearch/index.js +2 -2
- package/dist/omnisearch/types.d.cts +1 -1
- package/dist/omnisearch/types.d.ts +1 -1
- package/dist/{project-cHKuGvqJ.d.cts → project-B8wtlstY.d.cts} +2 -2
- package/dist/{project-B15gStbM.d.ts → project-BCc3mpAy.d.ts} +2 -2
- package/dist/queryService/index.cjs +1 -1
- package/dist/queryService/index.d.cts +1 -1
- package/dist/queryService/index.d.ts +1 -1
- package/dist/queryService/index.js +1 -1
- package/dist/{queryService-CQzclHdL.cjs → queryService-DSww_TJp.cjs} +6 -6
- package/dist/{queryService-CQzclHdL.cjs.map → queryService-DSww_TJp.cjs.map} +1 -1
- package/dist/{queryService-CCOYbRbw.js → queryService-Drvy1ztW.js} +6 -6
- package/dist/{queryService-CCOYbRbw.js.map → queryService-Drvy1ztW.js.map} +1 -1
- package/dist/queue/index.cjs +1 -1
- package/dist/queue/index.d.cts +1 -1
- package/dist/queue/index.d.ts +1 -1
- package/dist/queue/index.js +1 -1
- package/dist/{queue-Cowbg6bR.js → queue-Ci_f_5TI.js} +7 -32
- package/dist/queue-Ci_f_5TI.js.map +1 -0
- package/dist/{queue-UG_BWKIC.cjs → queue-DpMvv8C-.cjs} +7 -38
- package/dist/{queue-Cowbg6bR.js.map → queue-DpMvv8C-.cjs.map} +1 -1
- package/dist/scheduler/index.cjs +3 -3
- package/dist/scheduler/index.d.cts +13 -1
- package/dist/scheduler/index.d.ts +13 -1
- package/dist/scheduler/index.js +3 -3
- package/dist/scheduler/types.d.cts +1 -1
- package/dist/scheduler/types.d.ts +1 -1
- package/dist/{schema-D1oxyn1O.d.cts → schema-DJa9WBjR.d.cts} +28 -1
- package/dist/{schema-D1oxyn1O.d.ts → schema-DJa9WBjR.d.ts} +28 -1
- package/dist/sdk/configurations/index.cjs +1 -1
- package/dist/sdk/configurations/index.d.cts +4 -4
- package/dist/sdk/configurations/index.d.ts +4 -4
- package/dist/sdk/configurations/index.js +1 -1
- package/dist/sdk/developerPortal/index.cjs +3 -3
- package/dist/sdk/developerPortal/index.d.cts +13 -8
- package/dist/sdk/developerPortal/index.d.ts +13 -8
- package/dist/sdk/developerPortal/index.js +3 -3
- package/dist/sdk/kaiMemory/index.cjs +1 -1
- package/dist/sdk/kaiMemory/index.d.cts +1 -1
- package/dist/sdk/kaiMemory/index.d.ts +1 -1
- package/dist/sdk/kaiMemory/index.js +1 -1
- package/dist/sdk/kaiMemory/types.d.cts +1 -1
- package/dist/sdk/kaiMemory/types.d.ts +1 -1
- package/dist/sdk/queryService/index.cjs +1 -1
- package/dist/sdk/queryService/index.d.cts +1 -1
- package/dist/sdk/queryService/index.d.ts +1 -1
- package/dist/sdk/queryService/index.js +1 -1
- package/dist/sdk/semanticLayer/index.cjs +2 -1
- package/dist/sdk/semanticLayer/index.d.cts +10 -3
- package/dist/sdk/semanticLayer/index.d.ts +10 -3
- package/dist/sdk/semanticLayer/index.js +2 -2
- package/dist/sdk/semanticLayer/types.d.cts +2 -2
- package/dist/sdk/semanticLayer/types.d.ts +2 -2
- package/dist/sdk/storage/index.cjs +12 -24
- package/dist/sdk/storage/index.cjs.map +1 -1
- package/dist/sdk/storage/index.d.cts +1 -1
- package/dist/sdk/storage/index.d.ts +1 -1
- package/dist/sdk/storage/index.js +12 -24
- package/dist/sdk/storage/index.js.map +1 -1
- package/dist/sdk/tag/index.d.cts +2 -2
- package/dist/sdk/tag/index.d.ts +2 -2
- package/dist/sdk/tag/types.d.cts +1 -1
- package/dist/sdk/tag/types.d.ts +1 -1
- package/dist/sdk/vault/index.d.cts +1 -1
- package/dist/sdk/vault/index.d.ts +1 -1
- package/dist/{semanticLayer-CKDVkU56.cjs → semanticLayer-D3NDh_QH.cjs} +115 -20
- package/dist/semanticLayer-D3NDh_QH.cjs.map +1 -0
- package/dist/{semanticLayer-pYy082Ju.js → semanticLayer-Ddg0LSnt.js} +110 -21
- package/dist/semanticLayer-Ddg0LSnt.js.map +1 -0
- package/dist/status/index.cjs +1 -1
- package/dist/status/index.js +1 -1
- package/dist/storage/index.cjs +4 -4
- package/dist/storage/index.d.cts +2 -2
- package/dist/storage/index.d.ts +2 -2
- package/dist/storage/index.js +4 -4
- package/dist/storage/types.d.cts +3 -3
- package/dist/storage/types.d.ts +3 -3
- package/dist/{storage-CZQHZcXG.js → storage-C-lyo_iX.js} +273 -135
- package/dist/storage-C-lyo_iX.js.map +1 -0
- package/dist/{storage-JinL1y1s.cjs → storage-DAJquqEw.cjs} +273 -135
- package/dist/storage-DAJquqEw.cjs.map +1 -0
- package/dist/{storageTable-C9crh4Ef.cjs → storageTable-BNOR2FCh.cjs} +137 -5
- package/dist/storageTable-BNOR2FCh.cjs.map +1 -0
- package/dist/{storageTable-DslXtqNL.js → storageTable-BldTNyEk.js} +102 -6
- package/dist/storageTable-BldTNyEk.js.map +1 -0
- package/dist/stream/index.cjs +3 -3
- package/dist/stream/index.js +3 -3
- package/dist/syncActions/index.cjs +4 -1
- package/dist/syncActions/index.d.cts +3 -2
- package/dist/syncActions/index.d.ts +3 -2
- package/dist/syncActions/index.js +2 -2
- package/dist/syncActions/types.d.cts +2 -2
- package/dist/syncActions/types.d.ts +2 -2
- package/dist/syncActions-BQ8kMgL6.js +1191 -0
- package/dist/syncActions-BQ8kMgL6.js.map +1 -0
- package/dist/syncActions-DyxNmbUR.cjs +1216 -0
- package/dist/syncActions-DyxNmbUR.cjs.map +1 -0
- package/dist/telemetry/index.cjs +3 -3
- package/dist/telemetry/index.js +3 -3
- package/dist/{types-DWiLcrxt.d.cts → types-04GTqleJ.d.cts} +3 -3
- package/dist/{types-DRCMBt89.d.ts → types-2Do0DZ60.d.ts} +3 -3
- package/dist/{types-n4PTnLii.d.ts → types-AYX7VtS6.d.ts} +179 -2
- package/dist/{types-DIiOMV-t.d.ts → types-B3P5yAuI.d.ts} +5 -1
- package/dist/{types-BLNB882w.d.cts → types-B3i04d_A.d.cts} +5 -1
- package/dist/{types-CZXPu3gn.d.ts → types-BBUZ9EHs.d.ts} +4 -1
- package/dist/{types-Dtuvhm3K.d.cts → types-BWmLo73i.d.cts} +749 -186
- package/dist/{types-CQFOCQzk.d.ts → types-BaSlU0uo.d.ts} +510 -5
- package/dist/{types-DEzW1CfI.d.cts → types-BgHtMe8s.d.cts} +3 -3
- package/dist/{types-BiMahEK8.d.cts → types-BgVt8SUY.d.cts} +126 -62
- package/dist/{types-BS4jwuMi.d.ts → types-BhEx9iRx.d.ts} +3068 -621
- package/dist/{types-CP_LBmw3.d.cts → types-BhOUS9j1.d.cts} +26 -3
- package/dist/{types-tKkeLa2B.d.cts → types-BiEh5c_t.d.cts} +60 -8
- package/dist/{types-CMzQSHAQ.d.cts → types-BzPuxmaR.d.cts} +3 -3
- package/dist/{types-CKmTZSPG.d.ts → types-C0rVtqz2.d.ts} +126 -62
- package/dist/{types-Bl03Cg2n.d.cts → types-CAAgCRmE.d.cts} +31 -5
- package/dist/{types-RbrfiY8T.d.ts → types-CAp1VexS.d.ts} +3 -3
- package/dist/{types-DinIJ1D_.d.cts → types-CBPKpLTf.d.cts} +179 -2
- package/dist/{types-BIECJYun.d.ts → types-CN6huo55.d.ts} +406 -5
- package/dist/{types-Cg14ncdV.d.ts → types-CV7jmgtX.d.ts} +3 -3
- package/dist/{types-CqwHP7mN.d.cts → types-CcYxlqtB.d.cts} +510 -5
- package/dist/{types-DE9hgr7i.d.cts → types-CgBzm1YR.d.cts} +106 -1
- package/dist/{types-FwRmjsNN.d.ts → types-CigD_EF5.d.ts} +18 -6
- package/dist/{types-B_iLJlp4.d.ts → types-CwZgZqrA.d.ts} +31 -5
- package/dist/{types-B61aCifg.d.cts → types-D9axmt5o.d.cts} +4 -1
- package/dist/{types-CWyXTMwy.d.ts → types-DaMmgW-O.d.ts} +106 -1
- package/dist/{types-BTK7Bv3n.d.cts → types-DgPt4LY_.d.cts} +406 -5
- package/dist/{types-bc-4z_gc.d.cts → types-DyArI_Jq.d.cts} +18 -6
- package/dist/{types-q-1r_9d1.d.ts → types-DzV6LaZq.d.ts} +60 -8
- package/dist/{types-DekYAlA-.d.ts → types-QSchmyvO.d.ts} +3 -3
- package/dist/{types-DKc1gmd9.d.ts → types-R3AFJD6r.d.ts} +749 -186
- package/dist/{types-6kuMW4JW.d.cts → types-c_bsDkV6.d.cts} +3 -3
- package/dist/{types-DgJeO9Nd.d.ts → types-gcAb6olM.d.ts} +26 -3
- package/dist/{types-DDOa07rU.d.cts → types-sV9OaqTI.d.cts} +3068 -621
- package/dist/{validateConnectionStatus-BEYkQpu9.cjs → validateConnectionStatus-Ca1uEizv.cjs} +3 -3
- package/dist/{validateConnectionStatus-BEYkQpu9.cjs.map → validateConnectionStatus-Ca1uEizv.cjs.map} +1 -1
- package/dist/{validateConnectionStatus-BEGu8wXT.js → validateConnectionStatus-gFsBi5FV.js} +3 -3
- package/dist/{validateConnectionStatus-BEGu8wXT.js.map → validateConnectionStatus-gFsBi5FV.js.map} +1 -1
- package/dist/vault/index.cjs +31 -6
- package/dist/vault/index.cjs.map +1 -1
- package/dist/vault/index.d.cts +1 -1
- package/dist/vault/index.d.ts +1 -1
- package/dist/vault/index.js +31 -6
- package/dist/vault/index.js.map +1 -1
- package/dist/vault/types.d.cts +1 -1
- package/dist/vault/types.d.ts +1 -1
- package/package.json +7 -7
- package/surface/auth.md +7 -0
- package/surface/dataScience.md +2 -2
- package/surface/kaiAgent.md +5 -3
- package/surface/management.md +28 -13
- package/surface/metastore.md +4 -1
- package/surface/queue.md +1 -1
- package/surface/scheduler.md +3 -3
- package/surface/sdk.md +13 -8
- package/surface/storage.md +27 -24
- package/surface/syncActions.md +48 -1
- package/surface/vault.md +1 -0
- package/dist/authClient-BmuUo0J4.cjs.map +0 -1
- package/dist/authClient-CgcDGd30.js.map +0 -1
- package/dist/componentId-BJLfnaGc.js.map +0 -1
- package/dist/componentId-_IKXxICq.cjs.map +0 -1
- package/dist/createFetchClient-Cwp8max9.cjs.map +0 -1
- package/dist/createFetchClient-DXHQK63w.js.map +0 -1
- package/dist/index-DbLFwXgb.d.cts +0 -116
- package/dist/index-rwK7GcB2.d.ts +0 -116
- package/dist/jobStatus-BMlsyXWI.cjs.map +0 -1
- package/dist/kaiAgent-Dp20HLTh.js.map +0 -1
- package/dist/kaiAgent-QNoeVKPs.cjs.map +0 -1
- package/dist/management-CCY0IYnq.cjs.map +0 -1
- package/dist/management-DvmPiG64.js.map +0 -1
- package/dist/metastore-BycJxe7A.js.map +0 -1
- package/dist/metastore-XtWciCZT.cjs.map +0 -1
- package/dist/queue-UG_BWKIC.cjs.map +0 -1
- package/dist/semanticLayer-CKDVkU56.cjs.map +0 -1
- package/dist/semanticLayer-pYy082Ju.js.map +0 -1
- package/dist/storage-CZQHZcXG.js.map +0 -1
- package/dist/storage-JinL1y1s.cjs.map +0 -1
- package/dist/storageTable-C9crh4Ef.cjs.map +0 -1
- package/dist/storageTable-DslXtqNL.js.map +0 -1
- package/dist/syncActions-ChNWuhYA.js +0 -646
- package/dist/syncActions-ChNWuhYA.js.map +0 -1
- package/dist/syncActions-mFlF16cl.cjs +0 -653
- package/dist/syncActions-mFlF16cl.cjs.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kaiAgent-xBpUwLeQ.js","names":[],"sources":["../src/clients/kaiAgent/kaiAgentClient.ts"],"sourcesContent":["import { z } from 'zod';\n\nimport { createGenericFetchClient, createOpenapiFetchClient, isApiError } from '../../fetchClient';\nimport { HttpStatus } from '../../internal';\nimport { createAuthHeaders } from '../auth';\nimport type { SuggestionsApiResponse, SuggestionsRequestBody } from '../chat/suggestions';\nimport type { ProjectToolPolicy, ProjectToolPolicyValue } from '../chat/types';\nimport type { ClientInitOptions } from '../types';\n\nimport type { paths } from './__generated__/schema';\nimport type {\n ApprovalBody,\n ArtifactListResponse,\n ArtifactResponse,\n ChatRequest,\n GetArtifactPath,\n GetArtifactsQuery,\n GetChatPath,\n GetHistoryQuery,\n GetVotesQuery,\n PrepareChatRequest,\n UsageResponse,\n VoteRequest,\n} from './types';\n\nconst projectToolPolicyValueSchema: z.ZodType<ProjectToolPolicyValue> = z.enum([\n 'blocked',\n 'always_ask',\n]);\n\nconst agentSettingsSchema = z.object({\n projectId: z.string(),\n customInstructions: z.string().nullable(),\n toolPermissions: z.record(z.string(), projectToolPolicyValueSchema).nullable().optional(),\n canWriteToolPolicy: z.boolean().optional(),\n createdAt: z.string(),\n updatedAt: z.string(),\n});\n\nconst toolPermissionValueSchema = z.enum(['always_allow', 'always_ask', 'blocked']);\n\nconst userAgentSettingsSchema = z.object({\n projectId: z.string(),\n userId: z.string(),\n customInstructions: z.string().nullable(),\n toolPermissions: z.record(z.string(), toolPermissionValueSchema).nullable(),\n projectToolPermissions: z.record(z.string(), projectToolPolicyValueSchema).nullable().optional(),\n createdAt: z.string(),\n updatedAt: z.string(),\n});\n\nconst userMemoriesSchema = z.object({\n memories: z.array(z.object({ id: z.string(), content: z.string(), createdAt: z.string() })),\n});\n\nconst toolInfoSchema = z.object({\n name: z.string(),\n description: z.string(),\n readOnly: z.boolean(),\n});\n\nconst toolsListResponseSchema = z.object({\n tools: z.array(toolInfoSchema),\n});\n\nconst skillInfoSchema = z.object({\n name: z.string(),\n description: z.string().nullable(),\n source: z.enum(['first-party', 'vendored', 'project']),\n});\n\nconst builtInCommandSchema = z.object({\n name: z.string(),\n description: z.string(),\n});\n\nconst skillsListResponseSchema = z.object({\n skills: z.array(skillInfoSchema),\n commands: z.array(builtInCommandSchema),\n});\n\nconst sandboxFileEntrySchema = z.object({\n name: z.string(),\n path: z.string(),\n type: z.enum(['file', 'dir']),\n size: z.number().int().nonnegative().optional(),\n});\n\nconst sandboxFileListingSchema = z.object({\n entries: z.array(sandboxFileEntrySchema),\n});\n\nconst sandboxFileContentSchema = z.object({\n content: z.string(),\n encoding: z.enum(['utf-8', 'binary']),\n truncated: z.boolean(),\n size: z.number().int().nonnegative(),\n});\n\nconst sandboxGitBranchSchema = z.object({\n branch: z.string().nullable(),\n});\n\n// `userId` only: kai-agent cannot resolve project members. Join it against\n// `api.management.projects.getProjectUsers`.\nconst spendCapMemberSchema = z.object({\n userId: z.string(),\n overrideLimitPpu: z.number().nullable(),\n effectiveLimitPpu: z.number().nullable(),\n usedPpu: z.number(),\n overrideUpdatedAt: z.string().nullable(),\n overrideUpdatedByUserId: z.string().nullable(),\n});\n\nconst spendCapsViewSchema = z.object({\n // `null` = no configured cap, not unlimited — see `effectiveProjectCapPpu`.\n projectCapPpu: z.number().nullable(),\n // The enforced cap (`projectCapPpu` or kai-agent's DEFAULT_PROJECT_CAP_PPU).\n // Render this; `projectCapPpu` only tells configured from default.\n effectiveProjectCapPpu: z.number(),\n // Platform default regardless of what's saved; validates a cleared-but-unsaved field.\n // Optional on the wire (rollout skew); `withDefaultProjectCap` fills it in.\n defaultProjectCapPpu: z.number().optional(),\n defaultUserLimitPpu: z.number().nullable(),\n projectUsedPpu: z.number(),\n canWrite: z.boolean(),\n members: z.array(spendCapMemberSchema),\n updatedAt: z.string().nullable(),\n updatedByUserId: z.string().nullable(),\n});\n\nconst votesResponseSchema = z.array(\n z.object({\n chatId: z.string(),\n messageId: z.string(),\n isUpvoted: z.boolean(),\n }),\n);\n\nexport type SpendCapMember = z.infer<typeof spendCapMemberSchema>;\n// `defaultProjectCapPpu` is always present here — `getSpendCaps`/`updateSpendCaps` fill it in.\nexport type SpendCapsView = Omit<z.infer<typeof spendCapsViewSchema>, 'defaultProjectCapPpu'> & {\n defaultProjectCapPpu: number;\n};\nexport type AgentSettings = z.infer<typeof agentSettingsSchema>;\nexport type UserAgentSettings = z.infer<typeof userAgentSettingsSchema>;\nexport type UserMemory = z.infer<typeof userMemoriesSchema>['memories'][number];\ntype ToolsListResponse = z.infer<typeof toolsListResponseSchema>;\ntype SkillsListResponse = z.infer<typeof skillsListResponseSchema>;\ntype SandboxFileListing = z.infer<typeof sandboxFileListingSchema>;\ntype SandboxFileContent = z.infer<typeof sandboxFileContentSchema>;\ntype SandboxGitBranch = z.infer<typeof sandboxGitBranchSchema>;\ntype VotesResponse = z.infer<typeof votesResponseSchema>;\n\ntype UpdateAgentSettingsRequest = {\n customInstructions?: string | null;\n};\n\ntype UpdateUserAgentSettingsRequest = {\n customInstructions?: string | null;\n toolPermissions?: Record<string, z.infer<typeof toolPermissionValueSchema>> | null;\n};\n\ntype UpdateSpendCapsRequest = {\n projectCapPpu?: number | null;\n defaultUserLimitPpu?: number | null;\n};\n\nexport const createKaiAgentClient = ({ baseUrl, middlewares, auth }: ClientInitOptions) => {\n const clientOptions = {\n baseUrl,\n middlewares,\n headers: createAuthHeaders(auth),\n };\n\n const client = createOpenapiFetchClient<paths>(clientOptions);\n const genericClient = createGenericFetchClient(clientOptions);\n\n const getHistory = async (params?: GetHistoryQuery, signal?: AbortSignal) => {\n const { data } = await client.get('/api/history', { query: params }, { signal });\n return data;\n };\n\n const getChat = async (chatId: GetChatPath['id'], signal?: AbortSignal) => {\n const { data } = await client.get('/api/chat/{id}', { path: { id: chatId } }, { signal });\n return data;\n };\n\n const deleteChat = async (chatId: string) => {\n const { data } = await client.delete('/api/chat', { query: { id: chatId } });\n return data;\n };\n\n const createChat = async (request: ChatRequest) => {\n const { response } = await client.post('/api/chat', { body: request });\n return response;\n };\n\n const getVotes = async (chatId: GetVotesQuery['chatId']): Promise<VotesResponse> => {\n const { data } = await client.get('/api/vote', { query: { chatId } });\n\n const result = votesResponseSchema.safeParse(data);\n if (!result.success) {\n throw new Error('Invalid votes response format');\n }\n\n return result.data;\n };\n\n const submitVote = async (params: VoteRequest) => {\n await client.patch('/api/vote', { body: params });\n };\n\n /**\n * Every artifact a chat produced, oldest first.\n *\n * - Read-only by design: artifacts are derived server-side at the end of a turn, so there is\n * no write route to pair with this.\n * - The chat is the authorization — a chat the caller cannot read has no artifacts.\n */\n const getArtifacts = async (\n chatId: GetArtifactsQuery['chatId'],\n signal?: AbortSignal,\n ): Promise<ArtifactListResponse> => {\n const { data } = await client.get('/api/artifacts', { query: { chatId } }, { signal });\n return data;\n };\n\n const getArtifact = async (\n artifactId: GetArtifactPath['id'],\n signal?: AbortSignal,\n ): Promise<ArtifactResponse> => {\n const { data } = await client.get(\n '/api/artifacts/{id}',\n { path: { id: artifactId } },\n {\n signal,\n },\n );\n return data;\n };\n\n const getUsage = async (signal?: AbortSignal): Promise<UsageResponse> => {\n const { data } = await client.get('/api/usage', {}, { signal });\n // `freeAllowance` is ahead of the generated schema — a guard turns a missing field into `null`.\n const parsed = z\n .object({\n freeAllowance: z\n .object({ grantedPpu: z.number(), remainingPpu: z.number() })\n .nullable()\n .optional(),\n })\n .safeParse(data);\n const freeAllowance = parsed.success ? (parsed.data.freeAllowance ?? null) : null;\n return { ...data, freeAllowance };\n };\n\n const approveToolCall = async (chatId: string, body: ApprovalBody): Promise<void> => {\n await client.post('/api/chat/{id}/approval', { path: { id: chatId }, body });\n };\n\n const submitToolOutput = async (\n chatId: string,\n body: { toolUseId: string; output?: string; errorText?: string },\n ): Promise<void> => {\n await client.post('/api/chat/{id}/ui-tool-result', { path: { id: chatId }, body });\n };\n\n const stopChat = async (chatId: string): Promise<{ stopped: boolean }> => {\n const { data } = await client.post('/api/chat/{id}/stop', { path: { id: chatId } });\n return data;\n };\n\n /**\n * Ask the engine to build this chat's sandbox before a turn needs one.\n *\n * - The work continues after the response.\n * - A host that does not pre-warm answers 404, returned as `{ started: false }`.\n */\n const prepareChat = async (\n chatId: string,\n signal?: AbortSignal,\n body: PrepareChatRequest = {},\n ): Promise<{ started: boolean }> => {\n try {\n const { data } = await client.post(\n '/api/chat/{id}/prepare',\n { path: { id: chatId }, body },\n { signal },\n );\n return data;\n } catch (error) {\n // 404 = pre-warm not supported here.\n if (isApiError(error) && error.response.status === HttpStatus.NOT_FOUND) {\n return { started: false };\n }\n throw error;\n }\n };\n\n const getSuggestions = async (\n request: SuggestionsRequestBody,\n signal?: AbortSignal,\n ): Promise<SuggestionsApiResponse> => {\n const { data } = await client.post('/api/suggestions', { body: request }, { signal });\n return data;\n };\n\n const getAgentSettings = async (signal?: AbortSignal): Promise<AgentSettings> => {\n const { data } = await genericClient.get<AgentSettings>('/api/settings', {}, { signal });\n const result = agentSettingsSchema.safeParse(data);\n if (!result.success) {\n throw new Error('Invalid agent settings response format');\n }\n return result.data;\n };\n\n const updateAgentSettings = async (\n request: UpdateAgentSettingsRequest,\n signal?: AbortSignal,\n ): Promise<AgentSettings> => {\n const { data } = await genericClient.patch<AgentSettings>(\n '/api/settings',\n { body: request },\n { signal },\n );\n const result = agentSettingsSchema.safeParse(data);\n if (!result.success) {\n throw new Error('Invalid agent settings response format');\n }\n return result.data;\n };\n\n const updateProjectToolPolicy = async (\n toolPermissions: ProjectToolPolicy,\n signal?: AbortSignal,\n ): Promise<AgentSettings> => {\n const { data } = await genericClient.put<AgentSettings>(\n '/api/settings/tool-permissions',\n { body: { toolPermissions } },\n { signal },\n );\n const result = agentSettingsSchema.safeParse(data);\n if (!result.success) {\n throw new Error('Invalid agent settings response format');\n }\n return result.data;\n };\n\n const getUserAgentSettings = async (signal?: AbortSignal): Promise<UserAgentSettings> => {\n const { data } = await genericClient.get<UserAgentSettings>(\n '/api/settings/user',\n {},\n { signal },\n );\n const result = userAgentSettingsSchema.safeParse(data);\n if (!result.success) {\n throw new Error('Invalid user agent settings response format');\n }\n return result.data;\n };\n\n const updateUserAgentSettings = async (\n request: UpdateUserAgentSettingsRequest,\n signal?: AbortSignal,\n ): Promise<UserAgentSettings> => {\n const { data } = await genericClient.patch<UserAgentSettings>(\n '/api/settings/user',\n { body: request },\n { signal },\n );\n const result = userAgentSettingsSchema.safeParse(data);\n if (!result.success) {\n throw new Error('Invalid user agent settings response format');\n }\n return result.data;\n };\n\n // Not in `__generated__/schema` yet, hence `genericClient` + zod, like the spend caps below.\n const getUserMemories = async (signal?: AbortSignal): Promise<UserMemory[]> => {\n const { data } = await genericClient.get('/api/settings/user/memories', {}, { signal });\n const result = userMemoriesSchema.safeParse(data);\n if (!result.success) {\n throw new Error('Invalid user memories response format');\n }\n return result.data.memories;\n };\n\n const deleteUserMemory = async (memoryId: string, signal?: AbortSignal): Promise<void> => {\n await genericClient.delete(\n `/api/settings/user/memories/${encodeURIComponent(memoryId)}`,\n {},\n { signal },\n );\n };\n\n // An older kai-agent omits `defaultProjectCapPpu`; fall back rather than throw.\n const withDefaultProjectCap = (view: z.infer<typeof spendCapsViewSchema>): SpendCapsView => ({\n ...view,\n defaultProjectCapPpu: view.defaultProjectCapPpu ?? view.effectiveProjectCapPpu,\n });\n\n // Not in `__generated__/schema` yet (see docs/regenerate-api-types.md), hence `genericClient`\n // + zod. Switch to `client.get('/api/settings/spend-caps')` once it regenerates.\n const getSpendCaps = async (signal?: AbortSignal): Promise<SpendCapsView> => {\n const { data } = await genericClient.get<SpendCapsView>(\n '/api/settings/spend-caps',\n {},\n { signal },\n );\n const result = spendCapsViewSchema.safeParse(data);\n if (!result.success) {\n throw new Error('Invalid spend caps response format');\n }\n return withDefaultProjectCap(result.data);\n };\n\n const updateSpendCaps = async (\n request: UpdateSpendCapsRequest,\n signal?: AbortSignal,\n ): Promise<SpendCapsView> => {\n const { data } = await genericClient.patch<SpendCapsView>(\n '/api/settings/spend-caps',\n { body: request },\n { signal },\n );\n const result = spendCapsViewSchema.safeParse(data);\n if (!result.success) {\n throw new Error('Invalid spend caps response format');\n }\n return withDefaultProjectCap(result.data);\n };\n\n const setUserSpendLimit = async (\n userId: string,\n overrideLimitPpu: number | null,\n signal?: AbortSignal,\n ): Promise<SpendCapMember> => {\n const { data } = await genericClient.put<SpendCapMember>(\n `/api/settings/spend-caps/users/${encodeURIComponent(userId)}`,\n { body: { overrideLimitPpu } },\n { signal },\n );\n const result = spendCapMemberSchema.safeParse(data);\n if (!result.success) {\n throw new Error('Invalid spend cap member response format');\n }\n return result.data;\n };\n\n const getToolsList = async (signal?: AbortSignal): Promise<ToolsListResponse> => {\n const { data } = await genericClient.get<ToolsListResponse>(\n '/api/settings/tools',\n {},\n { signal },\n );\n const result = toolsListResponseSchema.safeParse(data);\n if (!result.success) {\n throw new Error('Invalid tools list response format');\n }\n return result.data;\n };\n\n const getSkillsList = async (signal?: AbortSignal): Promise<SkillsListResponse> => {\n const { data } = await genericClient.get<SkillsListResponse>('/api/skills', {}, { signal });\n const result = skillsListResponseSchema.safeParse(data);\n if (!result.success) {\n throw new Error('Invalid skills list response format');\n }\n return result.data;\n };\n\n const listSandboxFiles = async (\n chatId: string,\n path?: string,\n signal?: AbortSignal,\n ): Promise<SandboxFileListing> => {\n const { data } = await genericClient.get<SandboxFileListing>(\n `/api/chat/${encodeURIComponent(chatId)}/sandbox/files`,\n { query: path ? { path } : undefined },\n { signal },\n );\n const result = sandboxFileListingSchema.safeParse(data);\n if (!result.success) {\n throw new Error('Invalid sandbox files response format');\n }\n return result.data;\n };\n\n const readSandboxFile = async (\n chatId: string,\n path: string,\n signal?: AbortSignal,\n ): Promise<SandboxFileContent> => {\n const { data } = await genericClient.get<SandboxFileContent>(\n `/api/chat/${encodeURIComponent(chatId)}/sandbox/file`,\n { query: { path } },\n { signal },\n );\n const result = sandboxFileContentSchema.safeParse(data);\n if (!result.success) {\n throw new Error('Invalid sandbox file response format');\n }\n return result.data;\n };\n\n const downloadSandboxFile = async (\n chatId: string,\n path: string,\n signal?: AbortSignal,\n ): Promise<Blob> => {\n // `parseData` returns a declared octet-stream body as a Blob, bytes intact.\n const { data } = await genericClient.get<Blob>(\n `/api/chat/${encodeURIComponent(chatId)}/sandbox/file/download`,\n { query: { path } },\n { signal },\n );\n if (!(data instanceof Blob)) {\n throw new Error('Invalid sandbox file download response format');\n }\n return data;\n };\n\n const getSandboxGitBranch = async (\n chatId: string,\n signal?: AbortSignal,\n ): Promise<SandboxGitBranch> => {\n const { data } = await genericClient.get<SandboxGitBranch>(\n `/api/chat/${encodeURIComponent(chatId)}/sandbox/git-branch`,\n {},\n { signal },\n );\n const result = sandboxGitBranchSchema.safeParse(data);\n if (!result.success) {\n throw new Error('Invalid sandbox git-branch response format');\n }\n return result.data;\n };\n\n const chatStreamUrl = clientOptions.baseUrl + '/api/chat';\n\n // `/health`, not `/ping`: it returns `{\"status\":\"ok\"}` like other services, not a timestamp.\n const healthCheck = async (signal?: AbortSignal) => {\n const { data } = await genericClient.get('/health', {}, { signal });\n\n return data;\n };\n\n return {\n healthCheck,\n getHistory,\n getChat,\n deleteChat,\n createChat,\n getVotes,\n submitVote,\n getUsage,\n getArtifacts,\n getArtifact,\n approveToolCall,\n submitToolOutput,\n stopChat,\n prepareChat,\n getSuggestions,\n getAgentSettings,\n updateAgentSettings,\n updateProjectToolPolicy,\n getUserAgentSettings,\n updateUserAgentSettings,\n getUserMemories,\n deleteUserMemory,\n getSpendCaps,\n updateSpendCaps,\n setUserSpendLimit,\n getToolsList,\n getSkillsList,\n listSandboxFiles,\n readSandboxFile,\n downloadSandboxFile,\n getSandboxGitBranch,\n chatStreamUrl,\n };\n};\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { m as HttpStatus, r as isApiError } from "./createFetchClient-
|
|
1
|
+
import { m as HttpStatus, r as isApiError } from "./createFetchClient-cgWkwgAQ.js";
|
|
2
2
|
import { i as parseOrThrow, n as formatValidationIssues } from "./ValidationError-DjhtNMfZ.js";
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
//#region src/sdks/kaiMemory/vocabulary.ts
|
|
@@ -257,4 +257,4 @@ const createKaiMemorySdk = ({ metastoreClient }) => {
|
|
|
257
257
|
//#endregion
|
|
258
258
|
export { KAI_MEMORY_STATUSES as a, createKaiMemorySdk as i, KaiMemoryReviewConflictError as n, KaiMemoryUnreadableItemsError as r, KAI_MEMORY_OBJECT_TYPE as t };
|
|
259
259
|
|
|
260
|
-
//# sourceMappingURL=kaiMemory-
|
|
260
|
+
//# sourceMappingURL=kaiMemory-BAniZZAN.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kaiMemory-D0Y_16U4.js","names":[],"sources":["../src/sdks/kaiMemory/vocabulary.ts","../src/sdks/kaiMemory/readSchemas.ts","../src/sdks/kaiMemory/kaiMemorySdk.ts"],"sourcesContent":["/**\n * The closed value set a `kai-memory` object's `status` accepts.\n *\n * A single runtime source for the union in `./types`, mirroring\n * `sdks/semanticLayer/vocabulary.ts`'s pattern — a value cannot exist in the type and be\n * missing from the list a validator or a UI dropdown is built from.\n */\nexport const KAI_MEMORY_STATUSES = ['pending', 'approved', 'rejected'] as const;\n","import { z } from 'zod';\n\nimport type { KaiMemoryData, KaiMemoryMeta } from './types';\nimport { KAI_MEMORY_STATUSES } from './vocabulary';\n\n/**\n * What a read of the metastore is allowed to hand back for a `kai-memory` object — see\n * `sdks/semanticLayer/readSchemas.ts` for the `looseObject` reasoning this mirrors.\n *\n * `status` drops as unrecognized rather than passing through: an item this SDK cannot classify\n * as pending/approved/rejected must never be treated as any of them, in particular `approved`.\n */\nconst kaiMemoryReadSchema: z.ZodType<KaiMemoryData, unknown> = z.looseObject({\n content: z.string(),\n status: z.enum(KAI_MEMORY_STATUSES),\n chatId: z.string(),\n createdBy: z.string().optional(),\n});\n\nconst kaiMemoryMetaSchema: z.ZodType<KaiMemoryMeta, unknown> = z.looseObject({\n name: z.string().optional(),\n branch: z.string().optional(),\n projectId: z.number().optional(),\n organizationId: z.string().optional(),\n revision: z.number().optional(),\n schemaVersion: z.string().optional(),\n createdAt: z.string().optional(),\n lastUpdated: z.string().optional(),\n revisionCreatedAt: z.string().optional(),\n});\n\n/**\n * The envelope every read comes wrapped in, mapped to the `KaiMemoryItem` the SDK returns. `meta`\n * absent or `null` both normalize to `{}` — see `semanticObjectReadSchema` for why an envelope\n * omitting audit fields is a normalization, not a failure.\n */\nexport const kaiMemoryItemReadSchema = z\n .object({\n id: z.string(),\n attributes: kaiMemoryReadSchema,\n meta: kaiMemoryMetaSchema.nullish(),\n })\n .transform(({ id, attributes, meta }) => ({ uuid: id, data: attributes, meta: meta ?? {} }));\n","import { z } from 'zod';\n\nimport { formatValidationIssues, parseOrThrow } from '../../errors';\nimport { isApiError } from '../../fetchClient';\nimport { HttpStatus } from '../../internal';\n\nimport { kaiMemoryItemReadSchema } from './readSchemas';\nimport type {\n CreateKaiMemoryMeta,\n KaiMemoryData,\n KaiMemoryItem,\n KaiMemoryStatus,\n MetastoreClient,\n UpdateKaiMemoryMeta,\n} from './types';\n\n/** The metastore object type this SDK addresses — see `SEMANTIC_OBJECT_TYPE` for the convention. */\nexport const KAI_MEMORY_OBJECT_TYPE = 'kai-memory';\n\nconst DEFAULT_BRANCH = 'main';\n\n/**\n * The live metastore envelope for a write response — see `RawSemanticObject` in\n * `sdks/semanticLayer/semanticLayerSdk.ts` for why a write asserts this shape rather than parsing\n * it: the metastore is echoing back the object it has just validated and stored.\n */\ntype RawKaiMemoryObject = {\n type: string;\n id: string;\n attributes: KaiMemoryData;\n meta: KaiMemoryItem['meta'];\n};\n\nconst mapObject = (item: RawKaiMemoryObject): KaiMemoryItem => ({\n uuid: item.id,\n data: item.attributes,\n meta: item.meta,\n});\n\nconst envelopeId = (value: unknown): string | null => {\n if (typeof value !== 'object' || value === null) return null;\n const { id } = value as { id?: unknown };\n return typeof id === 'string' && id !== '' ? id : null;\n};\n\n/**\n * Thrown by `getItemsByStatusStrict` when any `kai-memory` item — of any status, not only the\n * one asked for — could not be parsed. See that function's docstring for why an unreadable item\n * anywhere in the collection fails the whole read rather than being dropped.\n */\nexport class KaiMemoryUnreadableItemsError extends Error {\n readonly unreadableIds: string[];\n\n constructor(unreadableIds: string[]) {\n super(\n `${unreadableIds.length} kai-memory item(s) could not be read, so the knowledge base ` +\n `cannot be treated as complete.`,\n );\n this.name = 'KaiMemoryUnreadableItemsError';\n this.unreadableIds = unreadableIds;\n }\n}\n\n/**\n * Thrown by `updateStatus` when the item is no longer `pending` at write time — see that\n * function's docstring for the race it closes.\n */\nexport class KaiMemoryReviewConflictError extends Error {\n readonly uuid: string;\n readonly currentStatus: KaiMemoryStatus;\n\n constructor(uuid: string, currentStatus: KaiMemoryStatus) {\n super(\n `This note was already reviewed (now \"${currentStatus}\") — refusing to overwrite a ` +\n `decision someone else already made.`,\n );\n this.name = 'KaiMemoryReviewConflictError';\n this.uuid = uuid;\n this.currentStatus = currentStatus;\n }\n}\n\ntype ParsedObjects = {\n objects: KaiMemoryItem[];\n /** Envelope ids (or `<no id>`) of items that did not match `kaiMemoryItemReadSchema`. */\n unreadableIds: string[];\n};\n\n/** Shared parse loop behind `getItems` (drops and logs) and `getItemsByStatusStrict` (fails). */\nconst parseObjects = (items: unknown[]): ParsedObjects => {\n const objects: KaiMemoryItem[] = [];\n const unreadableIds: string[] = [];\n\n for (const item of items) {\n const result = kaiMemoryItemReadSchema.safeParse(item);\n if (result.success) {\n objects.push(result.data);\n continue;\n }\n\n const id = envelopeId(item) ?? '<no id>';\n unreadableIds.push(id);\n // The object type, the UUID and the failing field, never the content: a memory note's\n // text is the customer's and does not belong in a console.\n console.warn(\n `kaiMemorySdk: kai-memory item \"${id}\" from the metastore response does not match its ` +\n `declared shape`,\n formatValidationIssues(result.error.issues),\n );\n }\n\n return { objects, unreadableIds };\n};\n\ntype Options = {\n metastoreClient: MetastoreClient;\n};\n\nexport const createKaiMemorySdk = ({ metastoreClient }: Options) => {\n /**\n * The metastore's list endpoint looks up the `kai-memory` schema before querying, and 404s\n * (\"Schema not found\") when it was never registered — not an empty result. Since this SDK ships\n * independently of the backend PR that registers the schema, every read here would otherwise\n * throw on any stack that hasn't deployed it yet (or hasn't deployed it TO yet, mid-rollout),\n * indistinguishable from \"this project genuinely has zero kai-memory items\" from the caller's\n * point of view. Treat the two the same: no schema yet means no items yet.\n */\n const fetchObjects = async (signal?: AbortSignal): Promise<unknown[]> => {\n let response: Awaited<ReturnType<typeof metastoreClient.repository.getMetaObjects>>;\n try {\n response = await metastoreClient.repository.getMetaObjects(\n { objectType: KAI_MEMORY_OBJECT_TYPE },\n signal,\n );\n } catch (error) {\n if (isApiError(error) && error.response.status === HttpStatus.NOT_FOUND) return [];\n throw error;\n }\n return parseOrThrow(z.array(z.unknown()), response.data);\n };\n\n /**\n * Every `kai-memory` item in the project, parsed rather than asserted.\n *\n * - No server-side filter (AI-3975), so a caller after one status still pays for the collection.\n * - Degrade-on-drop: a malformed item is dropped and logged, for a display consumer (the admin\n * review list) that would rather show what it can. A steering-context consumer, where a\n * silently missing item is worse than a failed read, must use `getItemsByStatusStrict`.\n */\n const getItems = async (signal?: AbortSignal): Promise<KaiMemoryItem[]> => {\n const { objects } = parseObjects(await fetchObjects(signal));\n return objects;\n };\n\n /** `getItems` narrowed to one status, for the admin review list. */\n const getItemsByStatus = async (status: KaiMemoryStatus, signal?: AbortSignal) =>\n (await getItems(signal)).filter((item) => item.data.status === status);\n\n /**\n * `getItemsByStatus`, failing closed instead of dropping what it cannot parse.\n *\n * For the recall path (folded into every turn's prompt): an unclassifiable item must not be\n * silently omitted — it might be an `approved` note vanishing with no evidence anything was\n * missing (\"steering inputs fail the turn\"). Every unreadable item counts, not only ones\n * matching `status`, since an unparsed item's real status is unknown.\n */\n const getItemsByStatusStrict = async (\n status: KaiMemoryStatus,\n signal?: AbortSignal,\n ): Promise<KaiMemoryItem[]> => {\n const { objects, unreadableIds } = parseObjects(await fetchObjects(signal));\n if (unreadableIds.length > 0) throw new KaiMemoryUnreadableItemsError(unreadableIds);\n return objects.filter((item) => item.data.status === status);\n };\n\n /**\n * Envelope ids of every `kai-memory` item this SDK cannot parse, regardless of status — the\n * admin-facing counterpart to `getItemsByStatusStrict`'s failure. An unreadable item is invisible\n * to `getItems`/`getItemsByStatus` (dropped and logged) yet blocks every new chat's recall read,\n * so an admin needs a way to find and clear it; see `deleteUnreadableItem`.\n */\n const getUnreadableItemIds = async (signal?: AbortSignal): Promise<string[]> =>\n parseObjects(await fetchObjects(signal)).unreadableIds;\n\n /**\n * Deletes a `kai-memory` object by id without first reading and parsing it — `updateStatus`\n * can't be reused here because its pending-check read is exactly the parse that fails for an\n * unreadable item. Intended only for clearing an id surfaced by `getUnreadableItemIds`.\n */\n const deleteUnreadableItem = async (uuid: string): Promise<void> => {\n await metastoreClient.repository.deleteMetaObject({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n });\n };\n\n /**\n * Write a new `pending` note. `chatId` is a required, separate argument rather than a `data`\n * field — the caller (the memory-handler backend, never the sandboxed agent directly) is what\n * must supply it, taken from the turn's own ticket context, so a model cannot forge which\n * session a note came from.\n */\n const createItem = async (\n { content, chatId, createdBy }: { content: string; chatId: string; createdBy?: string },\n meta: CreateKaiMemoryMeta = {},\n ) => {\n const data: KaiMemoryData = { content, status: 'pending', chatId, createdBy };\n const response = await metastoreClient.repository.createMetaObject<KaiMemoryData>({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n data,\n branch: DEFAULT_BRANCH,\n ...meta,\n });\n\n return mapObject(response.data as unknown as RawKaiMemoryObject);\n };\n\n /**\n * Approve or reject a pending note (or otherwise move it between statuses).\n *\n * - Re-reads and refuses a no-longer-`pending` item (no PATCH precondition mechanism), closing\n * the realistic stale-tab race; `useUpdateKnowledgeBaseItemStatus` invalidates on every outcome.\n * - `rejected` deletes the object outright, so review no longer grows the metastore forever; the\n * return value is the pre-delete data with `status` overridden. A later 404 on the\n * conflict-check read (only reachable via a prior reject) becomes `KaiMemoryReviewConflictError`.\n */\n const updateStatus = async (\n uuid: string,\n status: KaiMemoryStatus,\n meta: UpdateKaiMemoryMeta = {},\n ) => {\n let current: Awaited<ReturnType<typeof metastoreClient.repository.getMetaObject>>;\n try {\n current = await metastoreClient.repository.getMetaObject<KaiMemoryData>({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n });\n } catch (error) {\n if (isApiError(error) && error.response.status === HttpStatus.NOT_FOUND) {\n throw new KaiMemoryReviewConflictError(uuid, 'rejected');\n }\n throw error;\n }\n\n const parsedCurrent = kaiMemoryItemReadSchema.safeParse(current.data);\n if (parsedCurrent.success && parsedCurrent.data.data.status !== 'pending') {\n throw new KaiMemoryReviewConflictError(uuid, parsedCurrent.data.data.status);\n }\n\n if (status === 'rejected') {\n const currentObject = current.data as unknown as RawKaiMemoryObject;\n await metastoreClient.repository.deleteMetaObject({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n });\n\n return mapObject({\n ...currentObject,\n attributes: { ...currentObject.attributes, status },\n });\n }\n\n const response = await metastoreClient.repository.updateMetaObject<KaiMemoryData>({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n data: { status },\n ...meta,\n });\n\n return mapObject(response.data as unknown as RawKaiMemoryObject);\n };\n\n return {\n getItems,\n getItemsByStatus,\n getItemsByStatusStrict,\n getUnreadableItemIds,\n deleteUnreadableItem,\n createItem,\n updateStatus,\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"kaiMemory-BAniZZAN.js","names":[],"sources":["../src/sdks/kaiMemory/vocabulary.ts","../src/sdks/kaiMemory/readSchemas.ts","../src/sdks/kaiMemory/kaiMemorySdk.ts"],"sourcesContent":["/**\n * The closed value set a `kai-memory` object's `status` accepts.\n *\n * A single runtime source for the union in `./types`, mirroring\n * `sdks/semanticLayer/vocabulary.ts`'s pattern — a value cannot exist in the type and be\n * missing from the list a validator or a UI dropdown is built from.\n */\nexport const KAI_MEMORY_STATUSES = ['pending', 'approved', 'rejected'] as const;\n","import { z } from 'zod';\n\nimport type { KaiMemoryData, KaiMemoryMeta } from './types';\nimport { KAI_MEMORY_STATUSES } from './vocabulary';\n\n/**\n * What a read of the metastore is allowed to hand back for a `kai-memory` object — see\n * `sdks/semanticLayer/readSchemas.ts` for the `looseObject` reasoning this mirrors.\n *\n * `status` drops as unrecognized rather than passing through: an item this SDK cannot classify\n * as pending/approved/rejected must never be treated as any of them, in particular `approved`.\n */\nconst kaiMemoryReadSchema: z.ZodType<KaiMemoryData, unknown> = z.looseObject({\n content: z.string(),\n status: z.enum(KAI_MEMORY_STATUSES),\n chatId: z.string(),\n createdBy: z.string().optional(),\n});\n\nconst kaiMemoryMetaSchema: z.ZodType<KaiMemoryMeta, unknown> = z.looseObject({\n name: z.string().optional(),\n branch: z.string().optional(),\n projectId: z.number().optional(),\n organizationId: z.string().optional(),\n revision: z.number().optional(),\n schemaVersion: z.string().optional(),\n createdAt: z.string().optional(),\n lastUpdated: z.string().optional(),\n revisionCreatedAt: z.string().optional(),\n});\n\n/**\n * The envelope every read comes wrapped in, mapped to the `KaiMemoryItem` the SDK returns. `meta`\n * absent or `null` both normalize to `{}` — see `semanticObjectReadSchema` for why an envelope\n * omitting audit fields is a normalization, not a failure.\n */\nexport const kaiMemoryItemReadSchema = z\n .object({\n id: z.string(),\n attributes: kaiMemoryReadSchema,\n meta: kaiMemoryMetaSchema.nullish(),\n })\n .transform(({ id, attributes, meta }) => ({ uuid: id, data: attributes, meta: meta ?? {} }));\n","import { z } from 'zod';\n\nimport { formatValidationIssues, parseOrThrow } from '../../errors';\nimport { isApiError } from '../../fetchClient';\nimport { HttpStatus } from '../../internal';\n\nimport { kaiMemoryItemReadSchema } from './readSchemas';\nimport type {\n CreateKaiMemoryMeta,\n KaiMemoryData,\n KaiMemoryItem,\n KaiMemoryStatus,\n MetastoreClient,\n UpdateKaiMemoryMeta,\n} from './types';\n\n/** The metastore object type this SDK addresses — see `SEMANTIC_OBJECT_TYPE` for the convention. */\nexport const KAI_MEMORY_OBJECT_TYPE = 'kai-memory';\n\nconst DEFAULT_BRANCH = 'main';\n\n/**\n * The live metastore envelope for a write response — see `RawSemanticObject` in\n * `sdks/semanticLayer/semanticLayerSdk.ts` for why a write asserts this shape rather than parsing\n * it: the metastore is echoing back the object it has just validated and stored.\n */\ntype RawKaiMemoryObject = {\n type: string;\n id: string;\n attributes: KaiMemoryData;\n meta: KaiMemoryItem['meta'];\n};\n\nconst mapObject = (item: RawKaiMemoryObject): KaiMemoryItem => ({\n uuid: item.id,\n data: item.attributes,\n meta: item.meta,\n});\n\nconst envelopeId = (value: unknown): string | null => {\n if (typeof value !== 'object' || value === null) return null;\n const { id } = value as { id?: unknown };\n return typeof id === 'string' && id !== '' ? id : null;\n};\n\n/**\n * Thrown by `getItemsByStatusStrict` when any `kai-memory` item — of any status, not only the\n * one asked for — could not be parsed. See that function's docstring for why an unreadable item\n * anywhere in the collection fails the whole read rather than being dropped.\n */\nexport class KaiMemoryUnreadableItemsError extends Error {\n readonly unreadableIds: string[];\n\n constructor(unreadableIds: string[]) {\n super(\n `${unreadableIds.length} kai-memory item(s) could not be read, so the knowledge base ` +\n `cannot be treated as complete.`,\n );\n this.name = 'KaiMemoryUnreadableItemsError';\n this.unreadableIds = unreadableIds;\n }\n}\n\n/**\n * Thrown by `updateStatus` when the item is no longer `pending` at write time — see that\n * function's docstring for the race it closes.\n */\nexport class KaiMemoryReviewConflictError extends Error {\n readonly uuid: string;\n readonly currentStatus: KaiMemoryStatus;\n\n constructor(uuid: string, currentStatus: KaiMemoryStatus) {\n super(\n `This note was already reviewed (now \"${currentStatus}\") — refusing to overwrite a ` +\n `decision someone else already made.`,\n );\n this.name = 'KaiMemoryReviewConflictError';\n this.uuid = uuid;\n this.currentStatus = currentStatus;\n }\n}\n\ntype ParsedObjects = {\n objects: KaiMemoryItem[];\n /** Envelope ids (or `<no id>`) of items that did not match `kaiMemoryItemReadSchema`. */\n unreadableIds: string[];\n};\n\n/** Shared parse loop behind `getItems` (drops and logs) and `getItemsByStatusStrict` (fails). */\nconst parseObjects = (items: unknown[]): ParsedObjects => {\n const objects: KaiMemoryItem[] = [];\n const unreadableIds: string[] = [];\n\n for (const item of items) {\n const result = kaiMemoryItemReadSchema.safeParse(item);\n if (result.success) {\n objects.push(result.data);\n continue;\n }\n\n const id = envelopeId(item) ?? '<no id>';\n unreadableIds.push(id);\n // The object type, the UUID and the failing field, never the content: a memory note's\n // text is the customer's and does not belong in a console.\n console.warn(\n `kaiMemorySdk: kai-memory item \"${id}\" from the metastore response does not match its ` +\n `declared shape`,\n formatValidationIssues(result.error.issues),\n );\n }\n\n return { objects, unreadableIds };\n};\n\ntype Options = {\n metastoreClient: MetastoreClient;\n};\n\nexport const createKaiMemorySdk = ({ metastoreClient }: Options) => {\n /**\n * The metastore's list endpoint looks up the `kai-memory` schema before querying, and 404s\n * (\"Schema not found\") when it was never registered — not an empty result. Since this SDK ships\n * independently of the backend PR that registers the schema, every read here would otherwise\n * throw on any stack that hasn't deployed it yet (or hasn't deployed it TO yet, mid-rollout),\n * indistinguishable from \"this project genuinely has zero kai-memory items\" from the caller's\n * point of view. Treat the two the same: no schema yet means no items yet.\n */\n const fetchObjects = async (signal?: AbortSignal): Promise<unknown[]> => {\n let response: Awaited<ReturnType<typeof metastoreClient.repository.getMetaObjects>>;\n try {\n response = await metastoreClient.repository.getMetaObjects(\n { objectType: KAI_MEMORY_OBJECT_TYPE },\n signal,\n );\n } catch (error) {\n if (isApiError(error) && error.response.status === HttpStatus.NOT_FOUND) return [];\n throw error;\n }\n return parseOrThrow(z.array(z.unknown()), response.data);\n };\n\n /**\n * Every `kai-memory` item in the project, parsed rather than asserted.\n *\n * - No server-side filter (AI-3975), so a caller after one status still pays for the collection.\n * - Degrade-on-drop: a malformed item is dropped and logged, for a display consumer (the admin\n * review list) that would rather show what it can. A steering-context consumer, where a\n * silently missing item is worse than a failed read, must use `getItemsByStatusStrict`.\n */\n const getItems = async (signal?: AbortSignal): Promise<KaiMemoryItem[]> => {\n const { objects } = parseObjects(await fetchObjects(signal));\n return objects;\n };\n\n /** `getItems` narrowed to one status, for the admin review list. */\n const getItemsByStatus = async (status: KaiMemoryStatus, signal?: AbortSignal) =>\n (await getItems(signal)).filter((item) => item.data.status === status);\n\n /**\n * `getItemsByStatus`, failing closed instead of dropping what it cannot parse.\n *\n * For the recall path (folded into every turn's prompt): an unclassifiable item must not be\n * silently omitted — it might be an `approved` note vanishing with no evidence anything was\n * missing (\"steering inputs fail the turn\"). Every unreadable item counts, not only ones\n * matching `status`, since an unparsed item's real status is unknown.\n */\n const getItemsByStatusStrict = async (\n status: KaiMemoryStatus,\n signal?: AbortSignal,\n ): Promise<KaiMemoryItem[]> => {\n const { objects, unreadableIds } = parseObjects(await fetchObjects(signal));\n if (unreadableIds.length > 0) throw new KaiMemoryUnreadableItemsError(unreadableIds);\n return objects.filter((item) => item.data.status === status);\n };\n\n /**\n * Envelope ids of every `kai-memory` item this SDK cannot parse, regardless of status — the\n * admin-facing counterpart to `getItemsByStatusStrict`'s failure. An unreadable item is invisible\n * to `getItems`/`getItemsByStatus` (dropped and logged) yet blocks every new chat's recall read,\n * so an admin needs a way to find and clear it; see `deleteUnreadableItem`.\n */\n const getUnreadableItemIds = async (signal?: AbortSignal): Promise<string[]> =>\n parseObjects(await fetchObjects(signal)).unreadableIds;\n\n /**\n * Deletes a `kai-memory` object by id without first reading and parsing it — `updateStatus`\n * can't be reused here because its pending-check read is exactly the parse that fails for an\n * unreadable item. Intended only for clearing an id surfaced by `getUnreadableItemIds`.\n */\n const deleteUnreadableItem = async (uuid: string): Promise<void> => {\n await metastoreClient.repository.deleteMetaObject({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n });\n };\n\n /**\n * Write a new `pending` note. `chatId` is a required, separate argument rather than a `data`\n * field — the caller (the memory-handler backend, never the sandboxed agent directly) is what\n * must supply it, taken from the turn's own ticket context, so a model cannot forge which\n * session a note came from.\n */\n const createItem = async (\n { content, chatId, createdBy }: { content: string; chatId: string; createdBy?: string },\n meta: CreateKaiMemoryMeta = {},\n ) => {\n const data: KaiMemoryData = { content, status: 'pending', chatId, createdBy };\n const response = await metastoreClient.repository.createMetaObject<KaiMemoryData>({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n data,\n branch: DEFAULT_BRANCH,\n ...meta,\n });\n\n return mapObject(response.data as unknown as RawKaiMemoryObject);\n };\n\n /**\n * Approve or reject a pending note (or otherwise move it between statuses).\n *\n * - Re-reads and refuses a no-longer-`pending` item (no PATCH precondition mechanism), closing\n * the realistic stale-tab race; `useUpdateKnowledgeBaseItemStatus` invalidates on every outcome.\n * - `rejected` deletes the object outright, so review no longer grows the metastore forever; the\n * return value is the pre-delete data with `status` overridden. A later 404 on the\n * conflict-check read (only reachable via a prior reject) becomes `KaiMemoryReviewConflictError`.\n */\n const updateStatus = async (\n uuid: string,\n status: KaiMemoryStatus,\n meta: UpdateKaiMemoryMeta = {},\n ) => {\n let current: Awaited<ReturnType<typeof metastoreClient.repository.getMetaObject>>;\n try {\n current = await metastoreClient.repository.getMetaObject<KaiMemoryData>({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n });\n } catch (error) {\n if (isApiError(error) && error.response.status === HttpStatus.NOT_FOUND) {\n throw new KaiMemoryReviewConflictError(uuid, 'rejected');\n }\n throw error;\n }\n\n const parsedCurrent = kaiMemoryItemReadSchema.safeParse(current.data);\n if (parsedCurrent.success && parsedCurrent.data.data.status !== 'pending') {\n throw new KaiMemoryReviewConflictError(uuid, parsedCurrent.data.data.status);\n }\n\n if (status === 'rejected') {\n const currentObject = current.data as unknown as RawKaiMemoryObject;\n await metastoreClient.repository.deleteMetaObject({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n });\n\n return mapObject({\n ...currentObject,\n attributes: { ...currentObject.attributes, status },\n });\n }\n\n const response = await metastoreClient.repository.updateMetaObject<KaiMemoryData>({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n data: { status },\n ...meta,\n });\n\n return mapObject(response.data as unknown as RawKaiMemoryObject);\n };\n\n return {\n getItems,\n getItemsByStatus,\n getItemsByStatusStrict,\n getUnreadableItemIds,\n deleteUnreadableItem,\n createItem,\n updateStatus,\n };\n};\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const require_createFetchClient = require("./createFetchClient-
|
|
1
|
+
const require_createFetchClient = require("./createFetchClient-BgihytBn.cjs");
|
|
2
2
|
const require_ValidationError = require("./ValidationError-D65QU0uq.cjs");
|
|
3
3
|
let zod = require("zod");
|
|
4
4
|
//#region src/sdks/kaiMemory/vocabulary.ts
|
|
@@ -286,4 +286,4 @@ Object.defineProperty(exports, "createKaiMemorySdk", {
|
|
|
286
286
|
}
|
|
287
287
|
});
|
|
288
288
|
|
|
289
|
-
//# sourceMappingURL=kaiMemory-
|
|
289
|
+
//# sourceMappingURL=kaiMemory-U0DG-CpY.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kaiMemory-CClSPInt.cjs","names":["z","formatValidationIssues","isApiError","HttpStatus","parseOrThrow","z"],"sources":["../src/sdks/kaiMemory/vocabulary.ts","../src/sdks/kaiMemory/readSchemas.ts","../src/sdks/kaiMemory/kaiMemorySdk.ts"],"sourcesContent":["/**\n * The closed value set a `kai-memory` object's `status` accepts.\n *\n * A single runtime source for the union in `./types`, mirroring\n * `sdks/semanticLayer/vocabulary.ts`'s pattern — a value cannot exist in the type and be\n * missing from the list a validator or a UI dropdown is built from.\n */\nexport const KAI_MEMORY_STATUSES = ['pending', 'approved', 'rejected'] as const;\n","import { z } from 'zod';\n\nimport type { KaiMemoryData, KaiMemoryMeta } from './types';\nimport { KAI_MEMORY_STATUSES } from './vocabulary';\n\n/**\n * What a read of the metastore is allowed to hand back for a `kai-memory` object — see\n * `sdks/semanticLayer/readSchemas.ts` for the `looseObject` reasoning this mirrors.\n *\n * `status` drops as unrecognized rather than passing through: an item this SDK cannot classify\n * as pending/approved/rejected must never be treated as any of them, in particular `approved`.\n */\nconst kaiMemoryReadSchema: z.ZodType<KaiMemoryData, unknown> = z.looseObject({\n content: z.string(),\n status: z.enum(KAI_MEMORY_STATUSES),\n chatId: z.string(),\n createdBy: z.string().optional(),\n});\n\nconst kaiMemoryMetaSchema: z.ZodType<KaiMemoryMeta, unknown> = z.looseObject({\n name: z.string().optional(),\n branch: z.string().optional(),\n projectId: z.number().optional(),\n organizationId: z.string().optional(),\n revision: z.number().optional(),\n schemaVersion: z.string().optional(),\n createdAt: z.string().optional(),\n lastUpdated: z.string().optional(),\n revisionCreatedAt: z.string().optional(),\n});\n\n/**\n * The envelope every read comes wrapped in, mapped to the `KaiMemoryItem` the SDK returns. `meta`\n * absent or `null` both normalize to `{}` — see `semanticObjectReadSchema` for why an envelope\n * omitting audit fields is a normalization, not a failure.\n */\nexport const kaiMemoryItemReadSchema = z\n .object({\n id: z.string(),\n attributes: kaiMemoryReadSchema,\n meta: kaiMemoryMetaSchema.nullish(),\n })\n .transform(({ id, attributes, meta }) => ({ uuid: id, data: attributes, meta: meta ?? {} }));\n","import { z } from 'zod';\n\nimport { formatValidationIssues, parseOrThrow } from '../../errors';\nimport { isApiError } from '../../fetchClient';\nimport { HttpStatus } from '../../internal';\n\nimport { kaiMemoryItemReadSchema } from './readSchemas';\nimport type {\n CreateKaiMemoryMeta,\n KaiMemoryData,\n KaiMemoryItem,\n KaiMemoryStatus,\n MetastoreClient,\n UpdateKaiMemoryMeta,\n} from './types';\n\n/** The metastore object type this SDK addresses — see `SEMANTIC_OBJECT_TYPE` for the convention. */\nexport const KAI_MEMORY_OBJECT_TYPE = 'kai-memory';\n\nconst DEFAULT_BRANCH = 'main';\n\n/**\n * The live metastore envelope for a write response — see `RawSemanticObject` in\n * `sdks/semanticLayer/semanticLayerSdk.ts` for why a write asserts this shape rather than parsing\n * it: the metastore is echoing back the object it has just validated and stored.\n */\ntype RawKaiMemoryObject = {\n type: string;\n id: string;\n attributes: KaiMemoryData;\n meta: KaiMemoryItem['meta'];\n};\n\nconst mapObject = (item: RawKaiMemoryObject): KaiMemoryItem => ({\n uuid: item.id,\n data: item.attributes,\n meta: item.meta,\n});\n\nconst envelopeId = (value: unknown): string | null => {\n if (typeof value !== 'object' || value === null) return null;\n const { id } = value as { id?: unknown };\n return typeof id === 'string' && id !== '' ? id : null;\n};\n\n/**\n * Thrown by `getItemsByStatusStrict` when any `kai-memory` item — of any status, not only the\n * one asked for — could not be parsed. See that function's docstring for why an unreadable item\n * anywhere in the collection fails the whole read rather than being dropped.\n */\nexport class KaiMemoryUnreadableItemsError extends Error {\n readonly unreadableIds: string[];\n\n constructor(unreadableIds: string[]) {\n super(\n `${unreadableIds.length} kai-memory item(s) could not be read, so the knowledge base ` +\n `cannot be treated as complete.`,\n );\n this.name = 'KaiMemoryUnreadableItemsError';\n this.unreadableIds = unreadableIds;\n }\n}\n\n/**\n * Thrown by `updateStatus` when the item is no longer `pending` at write time — see that\n * function's docstring for the race it closes.\n */\nexport class KaiMemoryReviewConflictError extends Error {\n readonly uuid: string;\n readonly currentStatus: KaiMemoryStatus;\n\n constructor(uuid: string, currentStatus: KaiMemoryStatus) {\n super(\n `This note was already reviewed (now \"${currentStatus}\") — refusing to overwrite a ` +\n `decision someone else already made.`,\n );\n this.name = 'KaiMemoryReviewConflictError';\n this.uuid = uuid;\n this.currentStatus = currentStatus;\n }\n}\n\ntype ParsedObjects = {\n objects: KaiMemoryItem[];\n /** Envelope ids (or `<no id>`) of items that did not match `kaiMemoryItemReadSchema`. */\n unreadableIds: string[];\n};\n\n/** Shared parse loop behind `getItems` (drops and logs) and `getItemsByStatusStrict` (fails). */\nconst parseObjects = (items: unknown[]): ParsedObjects => {\n const objects: KaiMemoryItem[] = [];\n const unreadableIds: string[] = [];\n\n for (const item of items) {\n const result = kaiMemoryItemReadSchema.safeParse(item);\n if (result.success) {\n objects.push(result.data);\n continue;\n }\n\n const id = envelopeId(item) ?? '<no id>';\n unreadableIds.push(id);\n // The object type, the UUID and the failing field, never the content: a memory note's\n // text is the customer's and does not belong in a console.\n console.warn(\n `kaiMemorySdk: kai-memory item \"${id}\" from the metastore response does not match its ` +\n `declared shape`,\n formatValidationIssues(result.error.issues),\n );\n }\n\n return { objects, unreadableIds };\n};\n\ntype Options = {\n metastoreClient: MetastoreClient;\n};\n\nexport const createKaiMemorySdk = ({ metastoreClient }: Options) => {\n /**\n * The metastore's list endpoint looks up the `kai-memory` schema before querying, and 404s\n * (\"Schema not found\") when it was never registered — not an empty result. Since this SDK ships\n * independently of the backend PR that registers the schema, every read here would otherwise\n * throw on any stack that hasn't deployed it yet (or hasn't deployed it TO yet, mid-rollout),\n * indistinguishable from \"this project genuinely has zero kai-memory items\" from the caller's\n * point of view. Treat the two the same: no schema yet means no items yet.\n */\n const fetchObjects = async (signal?: AbortSignal): Promise<unknown[]> => {\n let response: Awaited<ReturnType<typeof metastoreClient.repository.getMetaObjects>>;\n try {\n response = await metastoreClient.repository.getMetaObjects(\n { objectType: KAI_MEMORY_OBJECT_TYPE },\n signal,\n );\n } catch (error) {\n if (isApiError(error) && error.response.status === HttpStatus.NOT_FOUND) return [];\n throw error;\n }\n return parseOrThrow(z.array(z.unknown()), response.data);\n };\n\n /**\n * Every `kai-memory` item in the project, parsed rather than asserted.\n *\n * - No server-side filter (AI-3975), so a caller after one status still pays for the collection.\n * - Degrade-on-drop: a malformed item is dropped and logged, for a display consumer (the admin\n * review list) that would rather show what it can. A steering-context consumer, where a\n * silently missing item is worse than a failed read, must use `getItemsByStatusStrict`.\n */\n const getItems = async (signal?: AbortSignal): Promise<KaiMemoryItem[]> => {\n const { objects } = parseObjects(await fetchObjects(signal));\n return objects;\n };\n\n /** `getItems` narrowed to one status, for the admin review list. */\n const getItemsByStatus = async (status: KaiMemoryStatus, signal?: AbortSignal) =>\n (await getItems(signal)).filter((item) => item.data.status === status);\n\n /**\n * `getItemsByStatus`, failing closed instead of dropping what it cannot parse.\n *\n * For the recall path (folded into every turn's prompt): an unclassifiable item must not be\n * silently omitted — it might be an `approved` note vanishing with no evidence anything was\n * missing (\"steering inputs fail the turn\"). Every unreadable item counts, not only ones\n * matching `status`, since an unparsed item's real status is unknown.\n */\n const getItemsByStatusStrict = async (\n status: KaiMemoryStatus,\n signal?: AbortSignal,\n ): Promise<KaiMemoryItem[]> => {\n const { objects, unreadableIds } = parseObjects(await fetchObjects(signal));\n if (unreadableIds.length > 0) throw new KaiMemoryUnreadableItemsError(unreadableIds);\n return objects.filter((item) => item.data.status === status);\n };\n\n /**\n * Envelope ids of every `kai-memory` item this SDK cannot parse, regardless of status — the\n * admin-facing counterpart to `getItemsByStatusStrict`'s failure. An unreadable item is invisible\n * to `getItems`/`getItemsByStatus` (dropped and logged) yet blocks every new chat's recall read,\n * so an admin needs a way to find and clear it; see `deleteUnreadableItem`.\n */\n const getUnreadableItemIds = async (signal?: AbortSignal): Promise<string[]> =>\n parseObjects(await fetchObjects(signal)).unreadableIds;\n\n /**\n * Deletes a `kai-memory` object by id without first reading and parsing it — `updateStatus`\n * can't be reused here because its pending-check read is exactly the parse that fails for an\n * unreadable item. Intended only for clearing an id surfaced by `getUnreadableItemIds`.\n */\n const deleteUnreadableItem = async (uuid: string): Promise<void> => {\n await metastoreClient.repository.deleteMetaObject({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n });\n };\n\n /**\n * Write a new `pending` note. `chatId` is a required, separate argument rather than a `data`\n * field — the caller (the memory-handler backend, never the sandboxed agent directly) is what\n * must supply it, taken from the turn's own ticket context, so a model cannot forge which\n * session a note came from.\n */\n const createItem = async (\n { content, chatId, createdBy }: { content: string; chatId: string; createdBy?: string },\n meta: CreateKaiMemoryMeta = {},\n ) => {\n const data: KaiMemoryData = { content, status: 'pending', chatId, createdBy };\n const response = await metastoreClient.repository.createMetaObject<KaiMemoryData>({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n data,\n branch: DEFAULT_BRANCH,\n ...meta,\n });\n\n return mapObject(response.data as unknown as RawKaiMemoryObject);\n };\n\n /**\n * Approve or reject a pending note (or otherwise move it between statuses).\n *\n * - Re-reads and refuses a no-longer-`pending` item (no PATCH precondition mechanism), closing\n * the realistic stale-tab race; `useUpdateKnowledgeBaseItemStatus` invalidates on every outcome.\n * - `rejected` deletes the object outright, so review no longer grows the metastore forever; the\n * return value is the pre-delete data with `status` overridden. A later 404 on the\n * conflict-check read (only reachable via a prior reject) becomes `KaiMemoryReviewConflictError`.\n */\n const updateStatus = async (\n uuid: string,\n status: KaiMemoryStatus,\n meta: UpdateKaiMemoryMeta = {},\n ) => {\n let current: Awaited<ReturnType<typeof metastoreClient.repository.getMetaObject>>;\n try {\n current = await metastoreClient.repository.getMetaObject<KaiMemoryData>({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n });\n } catch (error) {\n if (isApiError(error) && error.response.status === HttpStatus.NOT_FOUND) {\n throw new KaiMemoryReviewConflictError(uuid, 'rejected');\n }\n throw error;\n }\n\n const parsedCurrent = kaiMemoryItemReadSchema.safeParse(current.data);\n if (parsedCurrent.success && parsedCurrent.data.data.status !== 'pending') {\n throw new KaiMemoryReviewConflictError(uuid, parsedCurrent.data.data.status);\n }\n\n if (status === 'rejected') {\n const currentObject = current.data as unknown as RawKaiMemoryObject;\n await metastoreClient.repository.deleteMetaObject({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n });\n\n return mapObject({\n ...currentObject,\n attributes: { ...currentObject.attributes, status },\n });\n }\n\n const response = await metastoreClient.repository.updateMetaObject<KaiMemoryData>({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n data: { status },\n ...meta,\n });\n\n return mapObject(response.data as unknown as RawKaiMemoryObject);\n };\n\n return {\n getItems,\n getItemsByStatus,\n getItemsByStatusStrict,\n getUnreadableItemIds,\n deleteUnreadableItem,\n createItem,\n updateStatus,\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"kaiMemory-U0DG-CpY.cjs","names":["z","formatValidationIssues","isApiError","HttpStatus","parseOrThrow","z"],"sources":["../src/sdks/kaiMemory/vocabulary.ts","../src/sdks/kaiMemory/readSchemas.ts","../src/sdks/kaiMemory/kaiMemorySdk.ts"],"sourcesContent":["/**\n * The closed value set a `kai-memory` object's `status` accepts.\n *\n * A single runtime source for the union in `./types`, mirroring\n * `sdks/semanticLayer/vocabulary.ts`'s pattern — a value cannot exist in the type and be\n * missing from the list a validator or a UI dropdown is built from.\n */\nexport const KAI_MEMORY_STATUSES = ['pending', 'approved', 'rejected'] as const;\n","import { z } from 'zod';\n\nimport type { KaiMemoryData, KaiMemoryMeta } from './types';\nimport { KAI_MEMORY_STATUSES } from './vocabulary';\n\n/**\n * What a read of the metastore is allowed to hand back for a `kai-memory` object — see\n * `sdks/semanticLayer/readSchemas.ts` for the `looseObject` reasoning this mirrors.\n *\n * `status` drops as unrecognized rather than passing through: an item this SDK cannot classify\n * as pending/approved/rejected must never be treated as any of them, in particular `approved`.\n */\nconst kaiMemoryReadSchema: z.ZodType<KaiMemoryData, unknown> = z.looseObject({\n content: z.string(),\n status: z.enum(KAI_MEMORY_STATUSES),\n chatId: z.string(),\n createdBy: z.string().optional(),\n});\n\nconst kaiMemoryMetaSchema: z.ZodType<KaiMemoryMeta, unknown> = z.looseObject({\n name: z.string().optional(),\n branch: z.string().optional(),\n projectId: z.number().optional(),\n organizationId: z.string().optional(),\n revision: z.number().optional(),\n schemaVersion: z.string().optional(),\n createdAt: z.string().optional(),\n lastUpdated: z.string().optional(),\n revisionCreatedAt: z.string().optional(),\n});\n\n/**\n * The envelope every read comes wrapped in, mapped to the `KaiMemoryItem` the SDK returns. `meta`\n * absent or `null` both normalize to `{}` — see `semanticObjectReadSchema` for why an envelope\n * omitting audit fields is a normalization, not a failure.\n */\nexport const kaiMemoryItemReadSchema = z\n .object({\n id: z.string(),\n attributes: kaiMemoryReadSchema,\n meta: kaiMemoryMetaSchema.nullish(),\n })\n .transform(({ id, attributes, meta }) => ({ uuid: id, data: attributes, meta: meta ?? {} }));\n","import { z } from 'zod';\n\nimport { formatValidationIssues, parseOrThrow } from '../../errors';\nimport { isApiError } from '../../fetchClient';\nimport { HttpStatus } from '../../internal';\n\nimport { kaiMemoryItemReadSchema } from './readSchemas';\nimport type {\n CreateKaiMemoryMeta,\n KaiMemoryData,\n KaiMemoryItem,\n KaiMemoryStatus,\n MetastoreClient,\n UpdateKaiMemoryMeta,\n} from './types';\n\n/** The metastore object type this SDK addresses — see `SEMANTIC_OBJECT_TYPE` for the convention. */\nexport const KAI_MEMORY_OBJECT_TYPE = 'kai-memory';\n\nconst DEFAULT_BRANCH = 'main';\n\n/**\n * The live metastore envelope for a write response — see `RawSemanticObject` in\n * `sdks/semanticLayer/semanticLayerSdk.ts` for why a write asserts this shape rather than parsing\n * it: the metastore is echoing back the object it has just validated and stored.\n */\ntype RawKaiMemoryObject = {\n type: string;\n id: string;\n attributes: KaiMemoryData;\n meta: KaiMemoryItem['meta'];\n};\n\nconst mapObject = (item: RawKaiMemoryObject): KaiMemoryItem => ({\n uuid: item.id,\n data: item.attributes,\n meta: item.meta,\n});\n\nconst envelopeId = (value: unknown): string | null => {\n if (typeof value !== 'object' || value === null) return null;\n const { id } = value as { id?: unknown };\n return typeof id === 'string' && id !== '' ? id : null;\n};\n\n/**\n * Thrown by `getItemsByStatusStrict` when any `kai-memory` item — of any status, not only the\n * one asked for — could not be parsed. See that function's docstring for why an unreadable item\n * anywhere in the collection fails the whole read rather than being dropped.\n */\nexport class KaiMemoryUnreadableItemsError extends Error {\n readonly unreadableIds: string[];\n\n constructor(unreadableIds: string[]) {\n super(\n `${unreadableIds.length} kai-memory item(s) could not be read, so the knowledge base ` +\n `cannot be treated as complete.`,\n );\n this.name = 'KaiMemoryUnreadableItemsError';\n this.unreadableIds = unreadableIds;\n }\n}\n\n/**\n * Thrown by `updateStatus` when the item is no longer `pending` at write time — see that\n * function's docstring for the race it closes.\n */\nexport class KaiMemoryReviewConflictError extends Error {\n readonly uuid: string;\n readonly currentStatus: KaiMemoryStatus;\n\n constructor(uuid: string, currentStatus: KaiMemoryStatus) {\n super(\n `This note was already reviewed (now \"${currentStatus}\") — refusing to overwrite a ` +\n `decision someone else already made.`,\n );\n this.name = 'KaiMemoryReviewConflictError';\n this.uuid = uuid;\n this.currentStatus = currentStatus;\n }\n}\n\ntype ParsedObjects = {\n objects: KaiMemoryItem[];\n /** Envelope ids (or `<no id>`) of items that did not match `kaiMemoryItemReadSchema`. */\n unreadableIds: string[];\n};\n\n/** Shared parse loop behind `getItems` (drops and logs) and `getItemsByStatusStrict` (fails). */\nconst parseObjects = (items: unknown[]): ParsedObjects => {\n const objects: KaiMemoryItem[] = [];\n const unreadableIds: string[] = [];\n\n for (const item of items) {\n const result = kaiMemoryItemReadSchema.safeParse(item);\n if (result.success) {\n objects.push(result.data);\n continue;\n }\n\n const id = envelopeId(item) ?? '<no id>';\n unreadableIds.push(id);\n // The object type, the UUID and the failing field, never the content: a memory note's\n // text is the customer's and does not belong in a console.\n console.warn(\n `kaiMemorySdk: kai-memory item \"${id}\" from the metastore response does not match its ` +\n `declared shape`,\n formatValidationIssues(result.error.issues),\n );\n }\n\n return { objects, unreadableIds };\n};\n\ntype Options = {\n metastoreClient: MetastoreClient;\n};\n\nexport const createKaiMemorySdk = ({ metastoreClient }: Options) => {\n /**\n * The metastore's list endpoint looks up the `kai-memory` schema before querying, and 404s\n * (\"Schema not found\") when it was never registered — not an empty result. Since this SDK ships\n * independently of the backend PR that registers the schema, every read here would otherwise\n * throw on any stack that hasn't deployed it yet (or hasn't deployed it TO yet, mid-rollout),\n * indistinguishable from \"this project genuinely has zero kai-memory items\" from the caller's\n * point of view. Treat the two the same: no schema yet means no items yet.\n */\n const fetchObjects = async (signal?: AbortSignal): Promise<unknown[]> => {\n let response: Awaited<ReturnType<typeof metastoreClient.repository.getMetaObjects>>;\n try {\n response = await metastoreClient.repository.getMetaObjects(\n { objectType: KAI_MEMORY_OBJECT_TYPE },\n signal,\n );\n } catch (error) {\n if (isApiError(error) && error.response.status === HttpStatus.NOT_FOUND) return [];\n throw error;\n }\n return parseOrThrow(z.array(z.unknown()), response.data);\n };\n\n /**\n * Every `kai-memory` item in the project, parsed rather than asserted.\n *\n * - No server-side filter (AI-3975), so a caller after one status still pays for the collection.\n * - Degrade-on-drop: a malformed item is dropped and logged, for a display consumer (the admin\n * review list) that would rather show what it can. A steering-context consumer, where a\n * silently missing item is worse than a failed read, must use `getItemsByStatusStrict`.\n */\n const getItems = async (signal?: AbortSignal): Promise<KaiMemoryItem[]> => {\n const { objects } = parseObjects(await fetchObjects(signal));\n return objects;\n };\n\n /** `getItems` narrowed to one status, for the admin review list. */\n const getItemsByStatus = async (status: KaiMemoryStatus, signal?: AbortSignal) =>\n (await getItems(signal)).filter((item) => item.data.status === status);\n\n /**\n * `getItemsByStatus`, failing closed instead of dropping what it cannot parse.\n *\n * For the recall path (folded into every turn's prompt): an unclassifiable item must not be\n * silently omitted — it might be an `approved` note vanishing with no evidence anything was\n * missing (\"steering inputs fail the turn\"). Every unreadable item counts, not only ones\n * matching `status`, since an unparsed item's real status is unknown.\n */\n const getItemsByStatusStrict = async (\n status: KaiMemoryStatus,\n signal?: AbortSignal,\n ): Promise<KaiMemoryItem[]> => {\n const { objects, unreadableIds } = parseObjects(await fetchObjects(signal));\n if (unreadableIds.length > 0) throw new KaiMemoryUnreadableItemsError(unreadableIds);\n return objects.filter((item) => item.data.status === status);\n };\n\n /**\n * Envelope ids of every `kai-memory` item this SDK cannot parse, regardless of status — the\n * admin-facing counterpart to `getItemsByStatusStrict`'s failure. An unreadable item is invisible\n * to `getItems`/`getItemsByStatus` (dropped and logged) yet blocks every new chat's recall read,\n * so an admin needs a way to find and clear it; see `deleteUnreadableItem`.\n */\n const getUnreadableItemIds = async (signal?: AbortSignal): Promise<string[]> =>\n parseObjects(await fetchObjects(signal)).unreadableIds;\n\n /**\n * Deletes a `kai-memory` object by id without first reading and parsing it — `updateStatus`\n * can't be reused here because its pending-check read is exactly the parse that fails for an\n * unreadable item. Intended only for clearing an id surfaced by `getUnreadableItemIds`.\n */\n const deleteUnreadableItem = async (uuid: string): Promise<void> => {\n await metastoreClient.repository.deleteMetaObject({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n });\n };\n\n /**\n * Write a new `pending` note. `chatId` is a required, separate argument rather than a `data`\n * field — the caller (the memory-handler backend, never the sandboxed agent directly) is what\n * must supply it, taken from the turn's own ticket context, so a model cannot forge which\n * session a note came from.\n */\n const createItem = async (\n { content, chatId, createdBy }: { content: string; chatId: string; createdBy?: string },\n meta: CreateKaiMemoryMeta = {},\n ) => {\n const data: KaiMemoryData = { content, status: 'pending', chatId, createdBy };\n const response = await metastoreClient.repository.createMetaObject<KaiMemoryData>({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n data,\n branch: DEFAULT_BRANCH,\n ...meta,\n });\n\n return mapObject(response.data as unknown as RawKaiMemoryObject);\n };\n\n /**\n * Approve or reject a pending note (or otherwise move it between statuses).\n *\n * - Re-reads and refuses a no-longer-`pending` item (no PATCH precondition mechanism), closing\n * the realistic stale-tab race; `useUpdateKnowledgeBaseItemStatus` invalidates on every outcome.\n * - `rejected` deletes the object outright, so review no longer grows the metastore forever; the\n * return value is the pre-delete data with `status` overridden. A later 404 on the\n * conflict-check read (only reachable via a prior reject) becomes `KaiMemoryReviewConflictError`.\n */\n const updateStatus = async (\n uuid: string,\n status: KaiMemoryStatus,\n meta: UpdateKaiMemoryMeta = {},\n ) => {\n let current: Awaited<ReturnType<typeof metastoreClient.repository.getMetaObject>>;\n try {\n current = await metastoreClient.repository.getMetaObject<KaiMemoryData>({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n });\n } catch (error) {\n if (isApiError(error) && error.response.status === HttpStatus.NOT_FOUND) {\n throw new KaiMemoryReviewConflictError(uuid, 'rejected');\n }\n throw error;\n }\n\n const parsedCurrent = kaiMemoryItemReadSchema.safeParse(current.data);\n if (parsedCurrent.success && parsedCurrent.data.data.status !== 'pending') {\n throw new KaiMemoryReviewConflictError(uuid, parsedCurrent.data.data.status);\n }\n\n if (status === 'rejected') {\n const currentObject = current.data as unknown as RawKaiMemoryObject;\n await metastoreClient.repository.deleteMetaObject({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n });\n\n return mapObject({\n ...currentObject,\n attributes: { ...currentObject.attributes, status },\n });\n }\n\n const response = await metastoreClient.repository.updateMetaObject<KaiMemoryData>({\n objectType: KAI_MEMORY_OBJECT_TYPE,\n UUID: uuid,\n data: { status },\n ...meta,\n });\n\n return mapObject(response.data as unknown as RawKaiMemoryObject);\n };\n\n return {\n getItems,\n getItemsByStatus,\n getItemsByStatusStrict,\n getUnreadableItemIds,\n deleteUnreadableItem,\n createItem,\n updateStatus,\n };\n};\n"],"mappings":";;;;;;;;;;;AAOA,MAAa,sBAAsB;CAAC;CAAW;CAAY;AAAU;;;;;;;;;;ACKrE,MAAM,sBAAyDA,IAAAA,EAAE,YAAY;CAC3E,SAASA,IAAAA,EAAE,OAAO;CAClB,QAAQA,IAAAA,EAAE,KAAK,mBAAmB;CAClC,QAAQA,IAAAA,EAAE,OAAO;CACjB,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;AACjC,CAAC;AAED,MAAM,sBAAyDA,IAAAA,EAAE,YAAY;CAC3E,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CAC1B,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CAC5B,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CAC/B,gBAAgBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CACpC,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CAC9B,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CACnC,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CAC/B,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CACjC,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;AACzC,CAAC;;;;;;AAOD,MAAa,0BAA0BA,IAAAA,EACpC,OAAO;CACN,IAAIA,IAAAA,EAAE,OAAO;CACb,YAAY;CACZ,MAAM,oBAAoB,QAAQ;AACpC,CAAC,CAAC,CACD,WAAW,EAAE,IAAI,YAAY,YAAY;CAAE,MAAM;CAAI,MAAM;CAAY,MAAM,QAAQ,CAAC;AAAE,EAAE;;;;ACzB7F,MAAa,yBAAyB;AAEtC,MAAM,iBAAiB;AAcvB,MAAM,aAAa,UAA6C;CAC9D,MAAM,KAAK;CACX,MAAM,KAAK;CACX,MAAM,KAAK;AACb;AAEA,MAAM,cAAc,UAAkC;CACpD,IAAI,OAAO,UAAU,YAAY,UAAU,MAAM,OAAO;CACxD,MAAM,EAAE,OAAO;CACf,OAAO,OAAO,OAAO,YAAY,OAAO,KAAK,KAAK;AACpD;;;;;;AAOA,IAAa,gCAAb,cAAmD,MAAM;CACvD;CAEA,YAAY,eAAyB;EACnC,MACE,GAAG,cAAc,OAAO,4FAE1B;EACA,KAAK,OAAO;EACZ,KAAK,gBAAgB;CACvB;AACF;;;;;AAMA,IAAa,+BAAb,cAAkD,MAAM;CACtD;CACA;CAEA,YAAY,MAAc,eAAgC;EACxD,MACE,wCAAwC,cAAc,iEAExD;EACA,KAAK,OAAO;EACZ,KAAK,OAAO;EACZ,KAAK,gBAAgB;CACvB;AACF;;AASA,MAAM,gBAAgB,UAAoC;CACxD,MAAM,UAA2B,CAAC;CAClC,MAAM,gBAA0B,CAAC;CAEjC,KAAK,MAAM,QAAQ,OAAO;EACxB,MAAM,SAAS,wBAAwB,UAAU,IAAI;EACrD,IAAI,OAAO,SAAS;GAClB,QAAQ,KAAK,OAAO,IAAI;GACxB;EACF;EAEA,MAAM,KAAK,WAAW,IAAI,KAAK;EAC/B,cAAc,KAAK,EAAE;EAGrB,QAAQ,KACN,kCAAkC,GAAG,kEAErCC,wBAAAA,uBAAuB,OAAO,MAAM,MAAM,CAC5C;CACF;CAEA,OAAO;EAAE;EAAS;CAAc;AAClC;AAMA,MAAa,sBAAsB,EAAE,sBAA+B;;;;;;;;;CASlE,MAAM,eAAe,OAAO,WAA6C;EACvE,IAAI;EACJ,IAAI;GACF,WAAW,MAAM,gBAAgB,WAAW,eAC1C,EAAE,YAAY,uBAAuB,GACrC,MACF;EACF,SAAS,OAAO;GACd,IAAIC,0BAAAA,WAAW,KAAK,KAAK,MAAM,SAAS,WAAWC,0BAAAA,WAAW,WAAW,OAAO,CAAC;GACjF,MAAM;EACR;EACA,OAAOC,wBAAAA,aAAaC,IAAAA,EAAE,MAAMA,IAAAA,EAAE,QAAQ,CAAC,GAAG,SAAS,IAAI;CACzD;;;;;;;;;CAUA,MAAM,WAAW,OAAO,WAAmD;EACzE,MAAM,EAAE,YAAY,aAAa,MAAM,aAAa,MAAM,CAAC;EAC3D,OAAO;CACT;;CAGA,MAAM,mBAAmB,OAAO,QAAyB,YACtD,MAAM,SAAS,MAAM,EAAA,CAAG,QAAQ,SAAS,KAAK,KAAK,WAAW,MAAM;;;;;;;;;CAUvE,MAAM,yBAAyB,OAC7B,QACA,WAC6B;EAC7B,MAAM,EAAE,SAAS,kBAAkB,aAAa,MAAM,aAAa,MAAM,CAAC;EAC1E,IAAI,cAAc,SAAS,GAAG,MAAM,IAAI,8BAA8B,aAAa;EACnF,OAAO,QAAQ,QAAQ,SAAS,KAAK,KAAK,WAAW,MAAM;CAC7D;;;;;;;CAQA,MAAM,uBAAuB,OAAO,WAClC,aAAa,MAAM,aAAa,MAAM,CAAC,CAAC,CAAC;;;;;;CAO3C,MAAM,uBAAuB,OAAO,SAAgC;EAClE,MAAM,gBAAgB,WAAW,iBAAiB;GAChD,YAAY;GACZ,MAAM;EACR,CAAC;CACH;;;;;;;CAQA,MAAM,aAAa,OACjB,EAAE,SAAS,QAAQ,aACnB,OAA4B,CAAC,MAC1B;EACH,MAAM,OAAsB;GAAE;GAAS,QAAQ;GAAW;GAAQ;EAAU;EAC5E,MAAM,WAAW,MAAM,gBAAgB,WAAW,iBAAgC;GAChF,YAAY;GACZ;GACA,QAAQ;GACR,GAAG;EACL,CAAC;EAED,OAAO,UAAU,SAAS,IAAqC;CACjE;;;;;;;;;;CAWA,MAAM,eAAe,OACnB,MACA,QACA,OAA4B,CAAC,MAC1B;EACH,IAAI;EACJ,IAAI;GACF,UAAU,MAAM,gBAAgB,WAAW,cAA6B;IACtE,YAAY;IACZ,MAAM;GACR,CAAC;EACH,SAAS,OAAO;GACd,IAAIH,0BAAAA,WAAW,KAAK,KAAK,MAAM,SAAS,WAAWC,0BAAAA,WAAW,WAC5D,MAAM,IAAI,6BAA6B,MAAM,UAAU;GAEzD,MAAM;EACR;EAEA,MAAM,gBAAgB,wBAAwB,UAAU,QAAQ,IAAI;EACpE,IAAI,cAAc,WAAW,cAAc,KAAK,KAAK,WAAW,WAC9D,MAAM,IAAI,6BAA6B,MAAM,cAAc,KAAK,KAAK,MAAM;EAG7E,IAAI,WAAW,YAAY;GACzB,MAAM,gBAAgB,QAAQ;GAC9B,MAAM,gBAAgB,WAAW,iBAAiB;IAChD,YAAY;IACZ,MAAM;GACR,CAAC;GAED,OAAO,UAAU;IACf,GAAG;IACH,YAAY;KAAE,GAAG,cAAc;KAAY;IAAO;GACpD,CAAC;EACH;EAEA,MAAM,WAAW,MAAM,gBAAgB,WAAW,iBAAgC;GAChF,YAAY;GACZ,MAAM;GACN,MAAM,EAAE,OAAO;GACf,GAAG;EACL,CAAC;EAED,OAAO,UAAU,SAAS,IAAqC;CACjE;CAEA,OAAO;EACL;EACA;EACA;EACA;EACA;EACA;EACA;CACF;AACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_management = require("../management-
|
|
2
|
+
const require_management = require("../management-5597SiC7.cjs");
|
|
3
3
|
exports.createManagementClient = require_management.createManagementClient;
|
|
4
4
|
exports.isManagementClientAuthError = require_management.isManagementClientAuthError;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as createManagementClient, i as ManagementOpenApiFetchClient, n as AuthStrategy, r as ManagementGenericFetchClient, t as isManagementClientAuthError } from "../index-
|
|
1
|
+
import { a as createManagementClient, i as ManagementOpenApiFetchClient, n as AuthStrategy, r as ManagementGenericFetchClient, t as isManagementClientAuthError } from "../index-D3HFMfJJ.cjs";
|
|
2
2
|
export { AuthStrategy, ManagementGenericFetchClient, ManagementOpenApiFetchClient, createManagementClient, isManagementClientAuthError };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as createManagementClient, i as ManagementOpenApiFetchClient, n as AuthStrategy, r as ManagementGenericFetchClient, t as isManagementClientAuthError } from "../index-
|
|
1
|
+
import { a as createManagementClient, i as ManagementOpenApiFetchClient, n as AuthStrategy, r as ManagementGenericFetchClient, t as isManagementClientAuthError } from "../index-B03vhWSX.js";
|
|
2
2
|
export { AuthStrategy, ManagementGenericFetchClient, ManagementOpenApiFetchClient, createManagementClient, isManagementClientAuthError };
|
package/dist/management/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as isManagementClientAuthError, t as createManagementClient } from "../management-
|
|
1
|
+
import { n as isManagementClientAuthError, t as createManagementClient } from "../management-D46KlXts.js";
|
|
2
2
|
export { createManagementClient, isManagementClientAuthError };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { $ as
|
|
2
|
-
export { AddMaintainerUserBody, AddMaintainerUserInput, AddOrganizationUserBody, AddOrganizationUserInput, AddProjectUserBody, AddProjectUserPath, AddUserFeatureBody, AddUserFeaturePath, AdminUser, ApplicationToken, ApplicationTokenScope, AssignFeatureBody, AssignProjectTemplateFeatureInput, ChangeProjectUserRoleBody, ChangeProjectUserRoleInput, ChangeProjectUserRolePath, CompleteSamlSetupBody, CompleteSamlSetupInput, ConfirmProgrammaticProjectPayload, ConfirmProgrammaticProjectResult, CreateApplicationTokenBody, CreateBigqueryStorageBackendBody, CreateFileStorageAbsBody, CreateFileStorageGcsBody, CreateFileStorageS3Body, CreateMaintainerBody, CreateMaintainerInvitationBody, CreateMaintainerInvitationInput, CreateMaintainerOrganizationBody, CreateMaintainerOrganizationInput, CreateOrganizationInvitationBody, CreateOrganizationInvitationInput, CreateOrganizationProjectBody, CreateOrganizationProjectInput, CreatePaymentRequestBody, CreateProjectFeatureBody, CreateProjectFeaturePath, CreateProjectInvitationBody, CreateProjectInvitationPath, CreateSamlConfigBody, CreateSamlConfigInput, CreateSamlConfigPath, CreateSnowflakeStorageBackendBody, CreatedApplicationToken, CreditPaymentRequest, CreditPurchase, DeleteProjectInvitationPath, DeleteProjectMetadataPath, DeleteUserMetadataPath, DeletedProject, DeletedProjectPurgeResult, DeletedProjectsListQuery, Feature, FeatureAdmin, FeatureProject, FeatureType, FileStorage, FileStorageAbs, FileStorageGcs, FileStorageS3, GetAllFeaturesQuery, GetProjectMetadataPath, GetProjectPath, GetProjectReviewersPath, GetStorageBackendProjectsQuery, GetUiAppsQuery, GetUsersQuery, JoinProjectBody, JoinProjectInput, ListProjectInvitationsPath, ListProjectJoinRequestsPath, ListProjectUsersPath, Maintainer, MaintainerDetail, MaintainerInvitation, MaintainerInvitationDetail, MaintainerInvitationPath, MaintainerMetadataItemPath, MaintainerPath, MaintainerUser, MaintainerUserPath, ManagementToken, MetadataItem, MoveProjectBody, MoveProjectInput, Organization, OrganizationDetail, OrganizationInvitation, OrganizationInvitationDetail, OrganizationInvitationPath, OrganizationListItem, OrganizationMaintainer, OrganizationMetadataItemPath, OrganizationPath, OrganizationProject, OrganizationUserPath, PayAsYouGoBillingConfiguration, Project, ProjectBase, ProjectInvitableRole, ProjectInvitation, ProjectInvitationDetail, ProjectJoinRequest, ProjectJoinRequestDetail, ProjectJoinRequestPath, ProjectMetadataInput, ProjectMetadataItem, ProjectPath, ProjectTemplate, ProjectTemplatePath, RegisterUiAppBody, RemoveProjectFeaturePath, RemoveProjectLimitPath, RemoveProjectTemplateFeaturePath, RemoveProjectUserPath, RemoveUserFeaturePath, RenameUiAppBody, RequestProjectAccessBody, RequestProjectAccessInput, Reviewer, RotateFileStorageAbsBody, RotateFileStorageAbsInput, RotateFileStorageAbsPath, RotateFileStorageGcsBody, RotateFileStorageGcsInput, RotateFileStorageGcsPath, RotateFileStorageS3Body, RotateFileStorageS3Input, RotateFileStorageS3Path, SamlConfigDetail, SamlConfigPath, SamlConfigSummary, SetMaintainerMetadataBody, SetMaintainerMetadataInput, SetOrganizationMetadataBody, SetOrganizationMetadataInput, SetProjectDisabledBody, SetProjectDisabledInput, SetProjectLimitsBody, SetProjectLimitsInput, SetProjectMetadataBody, SetProjectMetadataPath, SetProjectReviewersBody, SetProjectReviewersPath, SetUserMetadataBody, SetUserMetadataInput, StorageBackend, StorageBackendMaintainer, StorageBackendPath, StorageBackendProject, StripeCustomer, StripeCustomerCard, TopUpSetting, UiApp, UiAppDetail, UiAppRegistrationResult, UiAppVersion, UpdateBigqueryStorageBackendBody, UpdateBigqueryStorageBackendInput, UpdateMaintainerBody, UpdateMaintainerInput, UpdateOrganizationBody, UpdateOrganizationInput, UpdateProjectBody, UpdateProjectInput, UpdateSamlConfigBody, UpdateSamlConfigInput, UpdateStorageBackendBody, UpdateStorageBackendInput, UpdateStripeCustomerBody, UpdateTopUpSettingBody, UpdateUserBody, UpdateUserInput, User, UserDetail, UserListItem, UserMaintainerMembership, UserOrganizationMembership, UserPath, UserProjectMembership };
|
|
1
|
+
import { $ as ProjectMetadataItem, $n as RotateFileStorageAbsInput, $t as CreateMaintainerInvitationInput, A as CreateProjectFeatureBody, An as Organization, At as UserDetail, B as JoinProjectInput, Bn as SetOrganizationMetadataBody, Bt as CreditPurchase, C as AddProjectUserBody, Cn as AddOrganizationUserBody, Cr as ApplicationToken, Ct as GetUsersQuery, D as ChangeProjectUserRoleBody, Dn as CreateOrganizationInvitationInput, Dt as UpdateUserBody, E as AssignProjectTemplateFeatureInput, En as CreateOrganizationInvitationBody, Er as CreatedApplicationToken, Et as SetUserMetadataInput, F as DeleteProjectMetadataPath, Fn as OrganizationMaintainer, Ft as UserProjectMembership, G as MoveProjectInput, Gn as CreateFileStorageAbsBody, Gt as UpdateStripeCustomerBody, H as ListProjectJoinRequestsPath, Hn as UpdateOrganizationBody, Ht as StripeCustomer, I as GetProjectMetadataPath, In as OrganizationMetadataItemPath, It as ConfirmProgrammaticProjectPayload, J as ProjectInvitableRole, Jn as FileStorage, Jt as AddMaintainerUserInput, K as Project, Kn as CreateFileStorageGcsBody, Kt as UpdateTopUpSettingBody, L as GetProjectPath, Ln as OrganizationPath, Lt as ConfirmProgrammaticProjectResult, M as CreateProjectInvitationBody, Mn as OrganizationInvitationDetail, Mt as UserMaintainerMembership, N as CreateProjectInvitationPath, Nn as OrganizationInvitationPath, Nt as UserOrganizationMembership, O as ChangeProjectUserRoleInput, On as CreateOrganizationProjectBody, Ot as UpdateUserInput, P as DeleteProjectInvitationPath, Pn as OrganizationListItem, Pt as UserPath, Q as ProjectMetadataInput, Qn as RotateFileStorageAbsBody, Qt as CreateMaintainerInvitationBody, R as GetProjectReviewersPath, Rn as OrganizationProject, Rt as CreatePaymentRequestBody, S as UpdateStorageBackendInput, Sn as UpdateSamlConfigInput, Sr as ProjectJoinRequest, St as DeleteUserMetadataPath, T as AssignFeatureBody, Tn as AdminUser, Tr as CreateApplicationTokenBody, Tt as SetUserMetadataBody, U as ListProjectUsersPath, Un as UpdateOrganizationInput, Ut as StripeCustomerCard, V as ListProjectInvitationsPath, Vn as SetOrganizationMetadataInput, Vt as PayAsYouGoBillingConfiguration, W as MoveProjectBody, Wn as SetUpBigQueryBody, Wt as TopUpSetting, X as ProjectJoinRequestDetail, Xn as FileStorageGcs, Xt as CompleteSamlSetupInput, Y as ProjectInvitationDetail, Yn as FileStorageAbs, Yt as CompleteSamlSetupBody, Z as ProjectJoinRequestPath, Zn as FileStorageS3, Zt as CreateMaintainerBody, _ as StorageBackendPath, _n as SetMaintainerMetadataBody, _r as DeletedProjectsStats, _t as SetProjectReviewersPath, a as GetUiAppsQuery, an as Maintainer, ar as RotateFileStorageS3Input, at as RemoveProjectTemplateFeaturePath, b as UpdateBigqueryStorageBackendInput, bn as UpdateMaintainerInput, br as OrganizationInvitation, bt as AddUserFeatureBody, c as UiApp, cn as MaintainerInvitationPath, cr as FeatureAdmin, ct as RequestProjectAccessInput, d as UiAppVersion, dn as MaintainerUser, dr as GetAllFeaturesQuery, dt as SetProjectDisabledInput, en as CreateMaintainerOrganizationBody, er as RotateFileStorageAbsPath, et as ProjectPath, f as CreateBigqueryStorageBackendBody, fn as MaintainerUserPath, fr as DeletedProject, ft as SetProjectLimitsBody, g as StorageBackendMaintainer, gn as SamlConfigSummary, gr as DeletedProjectsPage, gt as SetProjectReviewersBody, h as StorageBackend, hn as SamlConfigPath, hr as DeletedProjectsListQuery, ht as SetProjectMetadataPath, i as ReactivateWorkspaceResult, in as CreateSamlConfigPath, ir as RotateFileStorageS3Body, it as RemoveProjectLimitPath, j as CreateProjectFeaturePath, jn as OrganizationDetail, jt as UserListItem, k as ChangeProjectUserRolePath, kn as CreateOrganizationProjectInput, kt as User, l as UiAppDetail, ln as MaintainerMetadataItemPath, lr as FeatureProject, lt as Reviewer, m as GetStorageBackendProjectsQuery, mn as SamlConfigDetail, mr as DeletedProjectsListFilter, mt as SetProjectMetadataBody, n as ProjectRetentionWorkspace, nn as CreateSamlConfigBody, nr as RotateFileStorageGcsInput, nt as ProjectTemplatePath, o as RegisterUiAppBody, on as MaintainerDetail, or as RotateFileStorageS3Path, ot as RemoveProjectUserPath, p as CreateSnowflakeStorageBackendBody, pn as MetadataItem, pr as DeletedProjectPurgeResult, pt as SetProjectLimitsInput, q as ProjectBase, qn as CreateFileStorageS3Body, qt as AddMaintainerUserBody, r as ProjectRetentionWorkspaceState, rn as CreateSamlConfigInput, rr as RotateFileStorageGcsPath, rt as RemoveProjectFeaturePath, s as RenameUiAppBody, sn as MaintainerInvitationDetail, sr as Feature, st as RequestProjectAccessBody, t as ManagementToken, tn as CreateMaintainerOrganizationInput, tr as RotateFileStorageGcsBody, tt as ProjectTemplate, u as UiAppRegistrationResult, un as MaintainerPath, ur as FeatureType, ut as SetProjectDisabledBody, v as StorageBackendProject, vn as SetMaintainerMetadataInput, vr as DeletedProjectsStatus, vt as UpdateProjectBody, w as AddProjectUserPath, wn as AddOrganizationUserInput, wr as ApplicationTokenScope, wt as RemoveUserFeaturePath, x as UpdateStorageBackendBody, xn as UpdateSamlConfigBody, xr as ProjectInvitation, xt as AddUserFeaturePath, y as UpdateBigqueryStorageBackendBody, yn as UpdateMaintainerBody, yr as MaintainerInvitation, yt as UpdateProjectInput, z as JoinProjectBody, zn as OrganizationUserPath, zt as CreditPaymentRequest } from "../types-BWmLo73i.cjs";
|
|
2
|
+
export { AddMaintainerUserBody, AddMaintainerUserInput, AddOrganizationUserBody, AddOrganizationUserInput, AddProjectUserBody, AddProjectUserPath, AddUserFeatureBody, AddUserFeaturePath, AdminUser, ApplicationToken, ApplicationTokenScope, AssignFeatureBody, AssignProjectTemplateFeatureInput, ChangeProjectUserRoleBody, ChangeProjectUserRoleInput, ChangeProjectUserRolePath, CompleteSamlSetupBody, CompleteSamlSetupInput, ConfirmProgrammaticProjectPayload, ConfirmProgrammaticProjectResult, CreateApplicationTokenBody, CreateBigqueryStorageBackendBody, CreateFileStorageAbsBody, CreateFileStorageGcsBody, CreateFileStorageS3Body, CreateMaintainerBody, CreateMaintainerInvitationBody, CreateMaintainerInvitationInput, CreateMaintainerOrganizationBody, CreateMaintainerOrganizationInput, CreateOrganizationInvitationBody, CreateOrganizationInvitationInput, CreateOrganizationProjectBody, CreateOrganizationProjectInput, CreatePaymentRequestBody, CreateProjectFeatureBody, CreateProjectFeaturePath, CreateProjectInvitationBody, CreateProjectInvitationPath, CreateSamlConfigBody, CreateSamlConfigInput, CreateSamlConfigPath, CreateSnowflakeStorageBackendBody, CreatedApplicationToken, CreditPaymentRequest, CreditPurchase, DeleteProjectInvitationPath, DeleteProjectMetadataPath, DeleteUserMetadataPath, DeletedProject, DeletedProjectPurgeResult, DeletedProjectsListFilter, DeletedProjectsListQuery, DeletedProjectsPage, DeletedProjectsStats, DeletedProjectsStatus, Feature, FeatureAdmin, FeatureProject, FeatureType, FileStorage, FileStorageAbs, FileStorageGcs, FileStorageS3, GetAllFeaturesQuery, GetProjectMetadataPath, GetProjectPath, GetProjectReviewersPath, GetStorageBackendProjectsQuery, GetUiAppsQuery, GetUsersQuery, JoinProjectBody, JoinProjectInput, ListProjectInvitationsPath, ListProjectJoinRequestsPath, ListProjectUsersPath, Maintainer, MaintainerDetail, MaintainerInvitation, MaintainerInvitationDetail, MaintainerInvitationPath, MaintainerMetadataItemPath, MaintainerPath, MaintainerUser, MaintainerUserPath, ManagementToken, MetadataItem, MoveProjectBody, MoveProjectInput, Organization, OrganizationDetail, OrganizationInvitation, OrganizationInvitationDetail, OrganizationInvitationPath, OrganizationListItem, OrganizationMaintainer, OrganizationMetadataItemPath, OrganizationPath, OrganizationProject, OrganizationUserPath, PayAsYouGoBillingConfiguration, Project, ProjectBase, ProjectInvitableRole, ProjectInvitation, ProjectInvitationDetail, ProjectJoinRequest, ProjectJoinRequestDetail, ProjectJoinRequestPath, ProjectMetadataInput, ProjectMetadataItem, ProjectPath, ProjectRetentionWorkspace, ProjectRetentionWorkspaceState, ProjectTemplate, ProjectTemplatePath, ReactivateWorkspaceResult, RegisterUiAppBody, RemoveProjectFeaturePath, RemoveProjectLimitPath, RemoveProjectTemplateFeaturePath, RemoveProjectUserPath, RemoveUserFeaturePath, RenameUiAppBody, RequestProjectAccessBody, RequestProjectAccessInput, Reviewer, RotateFileStorageAbsBody, RotateFileStorageAbsInput, RotateFileStorageAbsPath, RotateFileStorageGcsBody, RotateFileStorageGcsInput, RotateFileStorageGcsPath, RotateFileStorageS3Body, RotateFileStorageS3Input, RotateFileStorageS3Path, SamlConfigDetail, SamlConfigPath, SamlConfigSummary, SetMaintainerMetadataBody, SetMaintainerMetadataInput, SetOrganizationMetadataBody, SetOrganizationMetadataInput, SetProjectDisabledBody, SetProjectDisabledInput, SetProjectLimitsBody, SetProjectLimitsInput, SetProjectMetadataBody, SetProjectMetadataPath, SetProjectReviewersBody, SetProjectReviewersPath, SetUpBigQueryBody, SetUserMetadataBody, SetUserMetadataInput, StorageBackend, StorageBackendMaintainer, StorageBackendPath, StorageBackendProject, StripeCustomer, StripeCustomerCard, TopUpSetting, UiApp, UiAppDetail, UiAppRegistrationResult, UiAppVersion, UpdateBigqueryStorageBackendBody, UpdateBigqueryStorageBackendInput, UpdateMaintainerBody, UpdateMaintainerInput, UpdateOrganizationBody, UpdateOrganizationInput, UpdateProjectBody, UpdateProjectInput, UpdateSamlConfigBody, UpdateSamlConfigInput, UpdateStorageBackendBody, UpdateStorageBackendInput, UpdateStripeCustomerBody, UpdateTopUpSettingBody, UpdateUserBody, UpdateUserInput, User, UserDetail, UserListItem, UserMaintainerMembership, UserOrganizationMembership, UserPath, UserProjectMembership };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { $ as
|
|
2
|
-
export { AddMaintainerUserBody, AddMaintainerUserInput, AddOrganizationUserBody, AddOrganizationUserInput, AddProjectUserBody, AddProjectUserPath, AddUserFeatureBody, AddUserFeaturePath, AdminUser, ApplicationToken, ApplicationTokenScope, AssignFeatureBody, AssignProjectTemplateFeatureInput, ChangeProjectUserRoleBody, ChangeProjectUserRoleInput, ChangeProjectUserRolePath, CompleteSamlSetupBody, CompleteSamlSetupInput, ConfirmProgrammaticProjectPayload, ConfirmProgrammaticProjectResult, CreateApplicationTokenBody, CreateBigqueryStorageBackendBody, CreateFileStorageAbsBody, CreateFileStorageGcsBody, CreateFileStorageS3Body, CreateMaintainerBody, CreateMaintainerInvitationBody, CreateMaintainerInvitationInput, CreateMaintainerOrganizationBody, CreateMaintainerOrganizationInput, CreateOrganizationInvitationBody, CreateOrganizationInvitationInput, CreateOrganizationProjectBody, CreateOrganizationProjectInput, CreatePaymentRequestBody, CreateProjectFeatureBody, CreateProjectFeaturePath, CreateProjectInvitationBody, CreateProjectInvitationPath, CreateSamlConfigBody, CreateSamlConfigInput, CreateSamlConfigPath, CreateSnowflakeStorageBackendBody, CreatedApplicationToken, CreditPaymentRequest, CreditPurchase, DeleteProjectInvitationPath, DeleteProjectMetadataPath, DeleteUserMetadataPath, DeletedProject, DeletedProjectPurgeResult, DeletedProjectsListQuery, Feature, FeatureAdmin, FeatureProject, FeatureType, FileStorage, FileStorageAbs, FileStorageGcs, FileStorageS3, GetAllFeaturesQuery, GetProjectMetadataPath, GetProjectPath, GetProjectReviewersPath, GetStorageBackendProjectsQuery, GetUiAppsQuery, GetUsersQuery, JoinProjectBody, JoinProjectInput, ListProjectInvitationsPath, ListProjectJoinRequestsPath, ListProjectUsersPath, Maintainer, MaintainerDetail, MaintainerInvitation, MaintainerInvitationDetail, MaintainerInvitationPath, MaintainerMetadataItemPath, MaintainerPath, MaintainerUser, MaintainerUserPath, ManagementToken, MetadataItem, MoveProjectBody, MoveProjectInput, Organization, OrganizationDetail, OrganizationInvitation, OrganizationInvitationDetail, OrganizationInvitationPath, OrganizationListItem, OrganizationMaintainer, OrganizationMetadataItemPath, OrganizationPath, OrganizationProject, OrganizationUserPath, PayAsYouGoBillingConfiguration, Project, ProjectBase, ProjectInvitableRole, ProjectInvitation, ProjectInvitationDetail, ProjectJoinRequest, ProjectJoinRequestDetail, ProjectJoinRequestPath, ProjectMetadataInput, ProjectMetadataItem, ProjectPath, ProjectTemplate, ProjectTemplatePath, RegisterUiAppBody, RemoveProjectFeaturePath, RemoveProjectLimitPath, RemoveProjectTemplateFeaturePath, RemoveProjectUserPath, RemoveUserFeaturePath, RenameUiAppBody, RequestProjectAccessBody, RequestProjectAccessInput, Reviewer, RotateFileStorageAbsBody, RotateFileStorageAbsInput, RotateFileStorageAbsPath, RotateFileStorageGcsBody, RotateFileStorageGcsInput, RotateFileStorageGcsPath, RotateFileStorageS3Body, RotateFileStorageS3Input, RotateFileStorageS3Path, SamlConfigDetail, SamlConfigPath, SamlConfigSummary, SetMaintainerMetadataBody, SetMaintainerMetadataInput, SetOrganizationMetadataBody, SetOrganizationMetadataInput, SetProjectDisabledBody, SetProjectDisabledInput, SetProjectLimitsBody, SetProjectLimitsInput, SetProjectMetadataBody, SetProjectMetadataPath, SetProjectReviewersBody, SetProjectReviewersPath, SetUserMetadataBody, SetUserMetadataInput, StorageBackend, StorageBackendMaintainer, StorageBackendPath, StorageBackendProject, StripeCustomer, StripeCustomerCard, TopUpSetting, UiApp, UiAppDetail, UiAppRegistrationResult, UiAppVersion, UpdateBigqueryStorageBackendBody, UpdateBigqueryStorageBackendInput, UpdateMaintainerBody, UpdateMaintainerInput, UpdateOrganizationBody, UpdateOrganizationInput, UpdateProjectBody, UpdateProjectInput, UpdateSamlConfigBody, UpdateSamlConfigInput, UpdateStorageBackendBody, UpdateStorageBackendInput, UpdateStripeCustomerBody, UpdateTopUpSettingBody, UpdateUserBody, UpdateUserInput, User, UserDetail, UserListItem, UserMaintainerMembership, UserOrganizationMembership, UserPath, UserProjectMembership };
|
|
1
|
+
import { $ as ProjectMetadataItem, $n as RotateFileStorageAbsInput, $t as CreateMaintainerInvitationInput, A as CreateProjectFeatureBody, An as Organization, At as UserDetail, B as JoinProjectInput, Bn as SetOrganizationMetadataBody, Bt as CreditPurchase, C as AddProjectUserBody, Cn as AddOrganizationUserBody, Cr as ApplicationToken, Ct as GetUsersQuery, D as ChangeProjectUserRoleBody, Dn as CreateOrganizationInvitationInput, Dt as UpdateUserBody, E as AssignProjectTemplateFeatureInput, En as CreateOrganizationInvitationBody, Er as CreatedApplicationToken, Et as SetUserMetadataInput, F as DeleteProjectMetadataPath, Fn as OrganizationMaintainer, Ft as UserProjectMembership, G as MoveProjectInput, Gn as CreateFileStorageAbsBody, Gt as UpdateStripeCustomerBody, H as ListProjectJoinRequestsPath, Hn as UpdateOrganizationBody, Ht as StripeCustomer, I as GetProjectMetadataPath, In as OrganizationMetadataItemPath, It as ConfirmProgrammaticProjectPayload, J as ProjectInvitableRole, Jn as FileStorage, Jt as AddMaintainerUserInput, K as Project, Kn as CreateFileStorageGcsBody, Kt as UpdateTopUpSettingBody, L as GetProjectPath, Ln as OrganizationPath, Lt as ConfirmProgrammaticProjectResult, M as CreateProjectInvitationBody, Mn as OrganizationInvitationDetail, Mt as UserMaintainerMembership, N as CreateProjectInvitationPath, Nn as OrganizationInvitationPath, Nt as UserOrganizationMembership, O as ChangeProjectUserRoleInput, On as CreateOrganizationProjectBody, Ot as UpdateUserInput, P as DeleteProjectInvitationPath, Pn as OrganizationListItem, Pt as UserPath, Q as ProjectMetadataInput, Qn as RotateFileStorageAbsBody, Qt as CreateMaintainerInvitationBody, R as GetProjectReviewersPath, Rn as OrganizationProject, Rt as CreatePaymentRequestBody, S as UpdateStorageBackendInput, Sn as UpdateSamlConfigInput, Sr as ProjectJoinRequest, St as DeleteUserMetadataPath, T as AssignFeatureBody, Tn as AdminUser, Tr as CreateApplicationTokenBody, Tt as SetUserMetadataBody, U as ListProjectUsersPath, Un as UpdateOrganizationInput, Ut as StripeCustomerCard, V as ListProjectInvitationsPath, Vn as SetOrganizationMetadataInput, Vt as PayAsYouGoBillingConfiguration, W as MoveProjectBody, Wn as SetUpBigQueryBody, Wt as TopUpSetting, X as ProjectJoinRequestDetail, Xn as FileStorageGcs, Xt as CompleteSamlSetupInput, Y as ProjectInvitationDetail, Yn as FileStorageAbs, Yt as CompleteSamlSetupBody, Z as ProjectJoinRequestPath, Zn as FileStorageS3, Zt as CreateMaintainerBody, _ as StorageBackendPath, _n as SetMaintainerMetadataBody, _r as DeletedProjectsStats, _t as SetProjectReviewersPath, a as GetUiAppsQuery, an as Maintainer, ar as RotateFileStorageS3Input, at as RemoveProjectTemplateFeaturePath, b as UpdateBigqueryStorageBackendInput, bn as UpdateMaintainerInput, br as OrganizationInvitation, bt as AddUserFeatureBody, c as UiApp, cn as MaintainerInvitationPath, cr as FeatureAdmin, ct as RequestProjectAccessInput, d as UiAppVersion, dn as MaintainerUser, dr as GetAllFeaturesQuery, dt as SetProjectDisabledInput, en as CreateMaintainerOrganizationBody, er as RotateFileStorageAbsPath, et as ProjectPath, f as CreateBigqueryStorageBackendBody, fn as MaintainerUserPath, fr as DeletedProject, ft as SetProjectLimitsBody, g as StorageBackendMaintainer, gn as SamlConfigSummary, gr as DeletedProjectsPage, gt as SetProjectReviewersBody, h as StorageBackend, hn as SamlConfigPath, hr as DeletedProjectsListQuery, ht as SetProjectMetadataPath, i as ReactivateWorkspaceResult, in as CreateSamlConfigPath, ir as RotateFileStorageS3Body, it as RemoveProjectLimitPath, j as CreateProjectFeaturePath, jn as OrganizationDetail, jt as UserListItem, k as ChangeProjectUserRolePath, kn as CreateOrganizationProjectInput, kt as User, l as UiAppDetail, ln as MaintainerMetadataItemPath, lr as FeatureProject, lt as Reviewer, m as GetStorageBackendProjectsQuery, mn as SamlConfigDetail, mr as DeletedProjectsListFilter, mt as SetProjectMetadataBody, n as ProjectRetentionWorkspace, nn as CreateSamlConfigBody, nr as RotateFileStorageGcsInput, nt as ProjectTemplatePath, o as RegisterUiAppBody, on as MaintainerDetail, or as RotateFileStorageS3Path, ot as RemoveProjectUserPath, p as CreateSnowflakeStorageBackendBody, pn as MetadataItem, pr as DeletedProjectPurgeResult, pt as SetProjectLimitsInput, q as ProjectBase, qn as CreateFileStorageS3Body, qt as AddMaintainerUserBody, r as ProjectRetentionWorkspaceState, rn as CreateSamlConfigInput, rr as RotateFileStorageGcsPath, rt as RemoveProjectFeaturePath, s as RenameUiAppBody, sn as MaintainerInvitationDetail, sr as Feature, st as RequestProjectAccessBody, t as ManagementToken, tn as CreateMaintainerOrganizationInput, tr as RotateFileStorageGcsBody, tt as ProjectTemplate, u as UiAppRegistrationResult, un as MaintainerPath, ur as FeatureType, ut as SetProjectDisabledBody, v as StorageBackendProject, vn as SetMaintainerMetadataInput, vr as DeletedProjectsStatus, vt as UpdateProjectBody, w as AddProjectUserPath, wn as AddOrganizationUserInput, wr as ApplicationTokenScope, wt as RemoveUserFeaturePath, x as UpdateStorageBackendBody, xn as UpdateSamlConfigBody, xr as ProjectInvitation, xt as AddUserFeaturePath, y as UpdateBigqueryStorageBackendBody, yn as UpdateMaintainerBody, yr as MaintainerInvitation, yt as UpdateProjectInput, z as JoinProjectBody, zn as OrganizationUserPath, zt as CreditPaymentRequest } from "../types-R3AFJD6r.js";
|
|
2
|
+
export { AddMaintainerUserBody, AddMaintainerUserInput, AddOrganizationUserBody, AddOrganizationUserInput, AddProjectUserBody, AddProjectUserPath, AddUserFeatureBody, AddUserFeaturePath, AdminUser, ApplicationToken, ApplicationTokenScope, AssignFeatureBody, AssignProjectTemplateFeatureInput, ChangeProjectUserRoleBody, ChangeProjectUserRoleInput, ChangeProjectUserRolePath, CompleteSamlSetupBody, CompleteSamlSetupInput, ConfirmProgrammaticProjectPayload, ConfirmProgrammaticProjectResult, CreateApplicationTokenBody, CreateBigqueryStorageBackendBody, CreateFileStorageAbsBody, CreateFileStorageGcsBody, CreateFileStorageS3Body, CreateMaintainerBody, CreateMaintainerInvitationBody, CreateMaintainerInvitationInput, CreateMaintainerOrganizationBody, CreateMaintainerOrganizationInput, CreateOrganizationInvitationBody, CreateOrganizationInvitationInput, CreateOrganizationProjectBody, CreateOrganizationProjectInput, CreatePaymentRequestBody, CreateProjectFeatureBody, CreateProjectFeaturePath, CreateProjectInvitationBody, CreateProjectInvitationPath, CreateSamlConfigBody, CreateSamlConfigInput, CreateSamlConfigPath, CreateSnowflakeStorageBackendBody, CreatedApplicationToken, CreditPaymentRequest, CreditPurchase, DeleteProjectInvitationPath, DeleteProjectMetadataPath, DeleteUserMetadataPath, DeletedProject, DeletedProjectPurgeResult, DeletedProjectsListFilter, DeletedProjectsListQuery, DeletedProjectsPage, DeletedProjectsStats, DeletedProjectsStatus, Feature, FeatureAdmin, FeatureProject, FeatureType, FileStorage, FileStorageAbs, FileStorageGcs, FileStorageS3, GetAllFeaturesQuery, GetProjectMetadataPath, GetProjectPath, GetProjectReviewersPath, GetStorageBackendProjectsQuery, GetUiAppsQuery, GetUsersQuery, JoinProjectBody, JoinProjectInput, ListProjectInvitationsPath, ListProjectJoinRequestsPath, ListProjectUsersPath, Maintainer, MaintainerDetail, MaintainerInvitation, MaintainerInvitationDetail, MaintainerInvitationPath, MaintainerMetadataItemPath, MaintainerPath, MaintainerUser, MaintainerUserPath, ManagementToken, MetadataItem, MoveProjectBody, MoveProjectInput, Organization, OrganizationDetail, OrganizationInvitation, OrganizationInvitationDetail, OrganizationInvitationPath, OrganizationListItem, OrganizationMaintainer, OrganizationMetadataItemPath, OrganizationPath, OrganizationProject, OrganizationUserPath, PayAsYouGoBillingConfiguration, Project, ProjectBase, ProjectInvitableRole, ProjectInvitation, ProjectInvitationDetail, ProjectJoinRequest, ProjectJoinRequestDetail, ProjectJoinRequestPath, ProjectMetadataInput, ProjectMetadataItem, ProjectPath, ProjectRetentionWorkspace, ProjectRetentionWorkspaceState, ProjectTemplate, ProjectTemplatePath, ReactivateWorkspaceResult, RegisterUiAppBody, RemoveProjectFeaturePath, RemoveProjectLimitPath, RemoveProjectTemplateFeaturePath, RemoveProjectUserPath, RemoveUserFeaturePath, RenameUiAppBody, RequestProjectAccessBody, RequestProjectAccessInput, Reviewer, RotateFileStorageAbsBody, RotateFileStorageAbsInput, RotateFileStorageAbsPath, RotateFileStorageGcsBody, RotateFileStorageGcsInput, RotateFileStorageGcsPath, RotateFileStorageS3Body, RotateFileStorageS3Input, RotateFileStorageS3Path, SamlConfigDetail, SamlConfigPath, SamlConfigSummary, SetMaintainerMetadataBody, SetMaintainerMetadataInput, SetOrganizationMetadataBody, SetOrganizationMetadataInput, SetProjectDisabledBody, SetProjectDisabledInput, SetProjectLimitsBody, SetProjectLimitsInput, SetProjectMetadataBody, SetProjectMetadataPath, SetProjectReviewersBody, SetProjectReviewersPath, SetUpBigQueryBody, SetUserMetadataBody, SetUserMetadataInput, StorageBackend, StorageBackendMaintainer, StorageBackendPath, StorageBackendProject, StripeCustomer, StripeCustomerCard, TopUpSetting, UiApp, UiAppDetail, UiAppRegistrationResult, UiAppVersion, UpdateBigqueryStorageBackendBody, UpdateBigqueryStorageBackendInput, UpdateMaintainerBody, UpdateMaintainerInput, UpdateOrganizationBody, UpdateOrganizationInput, UpdateProjectBody, UpdateProjectInput, UpdateSamlConfigBody, UpdateSamlConfigInput, UpdateStorageBackendBody, UpdateStorageBackendInput, UpdateStripeCustomerBody, UpdateTopUpSettingBody, UpdateUserBody, UpdateUserInput, User, UserDetail, UserListItem, UserMaintainerMembership, UserOrganizationMembership, UserPath, UserProjectMembership };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
const require_dedupe = require("./dedupe-OSnnst2u.cjs");
|
|
2
|
-
const require_createFetchClient = require("./createFetchClient-
|
|
3
|
-
const require_ManagementClientAuthError = require("./ManagementClientAuthError-
|
|
4
|
-
const require_createGenericFetchClient = require("./createGenericFetchClient-
|
|
5
|
-
const require_createOpenapiFetchClient = require("./createOpenapiFetchClient-
|
|
6
|
-
const require_isLoginPageRedirect = require("./isLoginPageRedirect-
|
|
2
|
+
const require_createFetchClient = require("./createFetchClient-BgihytBn.cjs");
|
|
3
|
+
const require_ManagementClientAuthError = require("./ManagementClientAuthError-BFZOtLgj.cjs");
|
|
4
|
+
const require_createGenericFetchClient = require("./createGenericFetchClient-C7Y0YVfc.cjs");
|
|
5
|
+
const require_createOpenapiFetchClient = require("./createOpenapiFetchClient-DY5s-aH6.cjs");
|
|
6
|
+
const require_isLoginPageRedirect = require("./isLoginPageRedirect-c451CoWW.cjs");
|
|
7
7
|
//#region src/clients/management/applicationTokens/applicationTokens.ts
|
|
8
8
|
const createApplicationTokens = (client) => {
|
|
9
9
|
const getApplicationTokens = async (signal) => {
|
|
@@ -179,15 +179,19 @@ const createCurrentUser = (client) => {
|
|
|
179
179
|
//#endregion
|
|
180
180
|
//#region src/clients/management/deletedProjects/deletedProjects.ts
|
|
181
181
|
const createDeletedProjects = (client) => {
|
|
182
|
+
/** One page of deleted projects; `meta.total` counts every row matching the filters. */
|
|
182
183
|
const getDeletedProjects = async (query, signal) => {
|
|
183
184
|
const { data } = await client.get("/manage/deleted-projects", { query: {
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
organizationId: query?.organizationId ?? void 0,
|
|
187
|
-
name: query?.name ?? void 0
|
|
185
|
+
filter: query?.filter,
|
|
186
|
+
page: query?.page
|
|
188
187
|
} }, { signal });
|
|
189
188
|
return data;
|
|
190
189
|
};
|
|
190
|
+
/** Global deleted / purged / overdue counts, independent of any list filter. */
|
|
191
|
+
const getDeletedProjectsStats = async (signal) => {
|
|
192
|
+
const { data } = await client.get("/manage/deleted-projects/stats", {}, { signal });
|
|
193
|
+
return data;
|
|
194
|
+
};
|
|
191
195
|
const getDeletedProject = async (projectId, signal) => {
|
|
192
196
|
const { data } = await client.get("/manage/deleted-projects/{projectId}", { path: { projectId } }, { signal });
|
|
193
197
|
return data;
|
|
@@ -208,6 +212,7 @@ const createDeletedProjects = (client) => {
|
|
|
208
212
|
};
|
|
209
213
|
return {
|
|
210
214
|
getDeletedProjects,
|
|
215
|
+
getDeletedProjectsStats,
|
|
211
216
|
getDeletedProject,
|
|
212
217
|
restoreDeletedProject,
|
|
213
218
|
purgeDeletedProject
|
|
@@ -315,6 +320,19 @@ const createFileStorage = (client) => {
|
|
|
315
320
|
};
|
|
316
321
|
};
|
|
317
322
|
//#endregion
|
|
323
|
+
//#region src/clients/management/gcpPartner/gcpPartner.ts
|
|
324
|
+
const createGcpPartner = (client) => {
|
|
325
|
+
/** Answers with the job that provisions the backend, not the finished backend. */
|
|
326
|
+
const setUpBigQuery = async (projectId, body, signal) => {
|
|
327
|
+
const { data } = await client.post("/integration/partners/gcp/project/{projectId}/set-up/big-query", {
|
|
328
|
+
path: { projectId },
|
|
329
|
+
body
|
|
330
|
+
}, { signal });
|
|
331
|
+
return data;
|
|
332
|
+
};
|
|
333
|
+
return { setUpBigQuery };
|
|
334
|
+
};
|
|
335
|
+
//#endregion
|
|
318
336
|
//#region src/clients/management/maintainers/maintainers.ts
|
|
319
337
|
const createMaintainers = (client) => {
|
|
320
338
|
const getMaintainers = async (signal) => {
|
|
@@ -907,6 +925,24 @@ const createProjects = (client) => {
|
|
|
907
925
|
};
|
|
908
926
|
};
|
|
909
927
|
//#endregion
|
|
928
|
+
//#region src/clients/management/snowflakePartnerConnect/snowflakePartnerConnect.ts
|
|
929
|
+
const createSnowflakePartnerConnect = (client) => {
|
|
930
|
+
/** `queriesToRun` lists what the Snowflake account admin still has to run before `unlock`. */
|
|
931
|
+
const check = async (projectId, signal) => {
|
|
932
|
+
const { data } = await client.get("/snowflake-partner-connect/project/{projectId}/check", { path: { projectId } }, { signal });
|
|
933
|
+
return data;
|
|
934
|
+
};
|
|
935
|
+
/** A failed grant test answers `400` with the same `status`/`message` body. */
|
|
936
|
+
const unlock = async (projectId, signal) => {
|
|
937
|
+
const { data } = await client.post("/snowflake-partner-connect/project/{projectId}/unlock", { path: { projectId } }, { signal });
|
|
938
|
+
return data;
|
|
939
|
+
};
|
|
940
|
+
return {
|
|
941
|
+
check,
|
|
942
|
+
unlock
|
|
943
|
+
};
|
|
944
|
+
};
|
|
945
|
+
//#endregion
|
|
910
946
|
//#region src/clients/management/storageBackends/storageBackends.ts
|
|
911
947
|
const createStorageBackends = (client) => {
|
|
912
948
|
const getStorageBackend = async (id, signal) => {
|
|
@@ -1115,6 +1151,35 @@ const createUsers = (client) => {
|
|
|
1115
1151
|
};
|
|
1116
1152
|
};
|
|
1117
1153
|
//#endregion
|
|
1154
|
+
//#region src/clients/management/workspaces/workspaces.ts
|
|
1155
|
+
const createWorkspaces = (client) => {
|
|
1156
|
+
/**
|
|
1157
|
+
* Reactivate a workspace that retention deactivated for inactivity. Super-admin only.
|
|
1158
|
+
*
|
|
1159
|
+
* - 400 covers "not deactivated" and "not eligible" alike — the backend collapses both, so the
|
|
1160
|
+
* caller reads the message rather than branching on a code.
|
|
1161
|
+
*/
|
|
1162
|
+
const reactivateWorkspace = async (workspaceId, signal) => {
|
|
1163
|
+
const { data } = await client.post("/manage/workspaces/{workspaceId}/reactivate", { path: { workspaceId } }, { signal });
|
|
1164
|
+
return data;
|
|
1165
|
+
};
|
|
1166
|
+
/**
|
|
1167
|
+
* List a project's retention workspaces (warned or already deactivated for inactivity).
|
|
1168
|
+
* Super-admin only.
|
|
1169
|
+
*/
|
|
1170
|
+
const listProjectRetentionWorkspaces = async (projectId, params = {}, signal) => {
|
|
1171
|
+
const { data } = await client.get("/manage/projects/{projectId}/workspaces", {
|
|
1172
|
+
path: { projectId },
|
|
1173
|
+
query: params.state ? { state: params.state } : {}
|
|
1174
|
+
}, { signal });
|
|
1175
|
+
return data;
|
|
1176
|
+
};
|
|
1177
|
+
return {
|
|
1178
|
+
reactivateWorkspace,
|
|
1179
|
+
listProjectRetentionWorkspaces
|
|
1180
|
+
};
|
|
1181
|
+
};
|
|
1182
|
+
//#endregion
|
|
1118
1183
|
//#region src/clients/management/managementClient.ts
|
|
1119
1184
|
const createAuthHeaders = (auth) => {
|
|
1120
1185
|
if (auth.type === "management-token") return auth.token ? { [require_createFetchClient.KeboolaHttpHeader.MANAGEMENT_API_TOKEN]: auth.token } : {};
|
|
@@ -1161,12 +1226,15 @@ const createManagementClient = ({ baseUrl, middlewares = [], auth, withAuthMiddl
|
|
|
1161
1226
|
payAsYouGo: createPayAsYouGo(client),
|
|
1162
1227
|
features: createFeatures(client),
|
|
1163
1228
|
fileStorage: createFileStorage(client),
|
|
1229
|
+
gcpPartner: createGcpPartner(client),
|
|
1164
1230
|
projects: createProjects(client),
|
|
1231
|
+
snowflakePartnerConnect: createSnowflakePartnerConnect(client),
|
|
1165
1232
|
programmaticProjects: createProgrammaticProjects(authedGenericClient),
|
|
1166
1233
|
storageBackends: createStorageBackends(client),
|
|
1167
1234
|
uiApps: createUiApps(client),
|
|
1168
1235
|
users: createUsers(client),
|
|
1169
|
-
verifyToken
|
|
1236
|
+
verifyToken,
|
|
1237
|
+
workspaces: createWorkspaces(authedGenericClient)
|
|
1170
1238
|
};
|
|
1171
1239
|
};
|
|
1172
1240
|
//#endregion
|
|
@@ -1183,4 +1251,4 @@ Object.defineProperty(exports, "isManagementClientAuthError", {
|
|
|
1183
1251
|
}
|
|
1184
1252
|
});
|
|
1185
1253
|
|
|
1186
|
-
//# sourceMappingURL=management-
|
|
1254
|
+
//# sourceMappingURL=management-5597SiC7.cjs.map
|