@keboola/api-client 39.0.0 → 41.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +121 -100
- package/API-SURFACE.md +27 -2
- package/CHANGELOG.md +129 -0
- package/README.md +3 -3
- package/dist/{ManagementClientAuthError-FcfMJNhr.cjs → ManagementClientAuthError-DE7lNGZQ.cjs} +2 -2
- package/dist/{ManagementClientAuthError-FcfMJNhr.cjs.map → ManagementClientAuthError-DE7lNGZQ.cjs.map} +1 -1
- package/dist/{ManagementClientAuthError-Cr9IOsnJ.js → ManagementClientAuthError-H30lti_Q.js} +2 -2
- package/dist/{ManagementClientAuthError-Cr9IOsnJ.js.map → ManagementClientAuthError-H30lti_Q.js.map} +1 -1
- package/dist/{ValidationError-CLVJCCwH.cjs → ValidationError-D65QU0uq.cjs} +10 -16
- package/dist/ValidationError-D65QU0uq.cjs.map +1 -0
- package/dist/ValidationError-DjhtNMfZ.js +42 -0
- package/dist/ValidationError-DjhtNMfZ.js.map +1 -0
- package/dist/ai/index.cjs +2 -2
- package/dist/ai/index.d.cts +2 -2
- package/dist/ai/index.d.ts +2 -2
- package/dist/ai/index.js +2 -2
- package/dist/ai/types.d.cts +1 -1
- package/dist/ai/types.d.ts +1 -1
- package/dist/{appLogs-C_zP0lpv.cjs → appLogs-B9zFJIuy.cjs} +2 -2
- package/dist/{appLogs-C_zP0lpv.cjs.map → appLogs-B9zFJIuy.cjs.map} +1 -1
- package/dist/{appLogs-Cl7Q_MR9.js → appLogs-BBkkUOW1.js} +2 -2
- package/dist/{appLogs-Cl7Q_MR9.js.map → appLogs-BBkkUOW1.js.map} +1 -1
- package/dist/{appLogs-Ch7DYpzx.d.ts → appLogs-BS6ViVGR.d.ts} +2 -2
- package/dist/{appLogs-D5A13Y0y.d.cts → appLogs-C9YlJ2g8.d.cts} +2 -2
- package/dist/apps/index.cjs +30 -56
- package/dist/apps/index.cjs.map +1 -1
- package/dist/apps/index.d.cts +8 -13
- package/dist/apps/index.d.ts +8 -13
- package/dist/apps/index.js +30 -56
- package/dist/apps/index.js.map +1 -1
- package/dist/apps/types.d.cts +2 -2
- package/dist/apps/types.d.ts +2 -2
- package/dist/assets/index.cjs +1 -1
- package/dist/assets/index.d.cts +1 -1
- package/dist/assets/index.d.ts +1 -1
- package/dist/assets/index.js +1 -1
- package/dist/auth/index.cjs +8 -4
- package/dist/auth/index.d.cts +2 -2
- package/dist/auth/index.d.ts +2 -2
- package/dist/auth/index.js +2 -2
- package/dist/auth/types.d.cts +2 -2
- package/dist/auth/types.d.ts +2 -2
- package/dist/{auth-DLWnl18b.cjs → auth-Dm0F2rOh.cjs} +2 -2
- package/dist/{auth-DLWnl18b.cjs.map → auth-Dm0F2rOh.cjs.map} +1 -1
- package/dist/{auth-BjmkFOgd.js → auth-DworfoPy.js} +2 -2
- package/dist/{auth-BjmkFOgd.js.map → auth-DworfoPy.js.map} +1 -1
- package/dist/{authClient-8yU1last.cjs → authClient-BmuUo0J4.cjs} +141 -48
- package/dist/authClient-BmuUo0J4.cjs.map +1 -0
- package/dist/{authClient-CTHNs6Tq.d.cts → authClient-CHXWJ9x3.d.ts} +109 -76
- package/dist/{authClient-BTo4Afm6.js → authClient-CgcDGd30.js} +108 -39
- package/dist/authClient-CgcDGd30.js.map +1 -0
- package/dist/{authClient-D8i3JTM-.d.ts → authClient-vEt_7_uk.d.cts} +109 -76
- package/dist/billing/index.cjs +2 -2
- package/dist/billing/index.d.cts +1 -1
- package/dist/billing/index.d.ts +1 -1
- package/dist/billing/index.js +2 -2
- package/dist/billing/types.d.cts +1 -1
- package/dist/billing/types.d.ts +1 -1
- package/dist/businessWorkspaceApi/index.cjs +1 -1
- package/dist/businessWorkspaceApi/index.d.cts +1 -1
- package/dist/businessWorkspaceApi/index.d.ts +1 -1
- package/dist/businessWorkspaceApi/index.js +1 -1
- package/dist/businessWorkspaceApi/types.d.cts +1 -1
- package/dist/businessWorkspaceApi/types.d.ts +1 -1
- package/dist/{businessWorkspaceApi-wyBdbpIJ.cjs → businessWorkspaceApi-6tCDdpnY.cjs} +3 -3
- package/dist/{businessWorkspaceApi-wyBdbpIJ.cjs.map → businessWorkspaceApi-6tCDdpnY.cjs.map} +1 -1
- package/dist/{businessWorkspaceApi-BD-iUj07.js → businessWorkspaceApi-BLUdefRF.js} +3 -3
- package/dist/{businessWorkspaceApi-BD-iUj07.js.map → businessWorkspaceApi-BLUdefRF.js.map} +1 -1
- package/dist/{businessWorkspaceApiClient-CRM1U8b-.d.cts → businessWorkspaceApiClient-BHDJlHFo.d.cts} +3 -3
- package/dist/{businessWorkspaceApiClient-C2WyWN3b.d.ts → businessWorkspaceApiClient-DI-z1VIH.d.ts} +3 -3
- package/dist/chat/index.cjs +7 -3
- package/dist/chat/index.cjs.map +1 -1
- package/dist/chat/index.d.cts +2 -2
- package/dist/chat/index.d.ts +2 -2
- package/dist/chat/index.js +7 -3
- package/dist/chat/index.js.map +1 -1
- package/dist/chat/types.cjs +1 -3
- package/dist/chat/types.cjs.map +1 -1
- package/dist/chat/types.d.cts +2 -2
- package/dist/chat/types.d.ts +2 -2
- package/dist/chat/types.js +1 -3
- package/dist/chat/types.js.map +1 -1
- package/dist/{componentId-vJz-kWs6.js → componentId-BJLfnaGc.js} +6 -2
- package/dist/componentId-BJLfnaGc.js.map +1 -0
- package/dist/{componentId-DkyQ8PM0.cjs → componentId-_IKXxICq.cjs} +6 -2
- package/dist/componentId-_IKXxICq.cjs.map +1 -0
- package/dist/{concurrent-CH9fbNr3.js → concurrent-BacWxPwi.js} +5 -7
- package/dist/concurrent-BacWxPwi.js.map +1 -0
- package/dist/{concurrent-tbiIa0UL.cjs → concurrent-CdVfR1N5.cjs} +5 -7
- package/dist/concurrent-CdVfR1N5.cjs.map +1 -0
- package/dist/{configurations-CyFF9Dtu.cjs → configurations-BTRHVSRq.cjs} +20 -53
- package/dist/configurations-BTRHVSRq.cjs.map +1 -0
- package/dist/{configurations-VtNE0nrT.js → configurations-CF3xz7RB.js} +14 -22
- package/dist/configurations-CF3xz7RB.js.map +1 -0
- package/dist/{configurations-BVvcimzo.js → configurations-Chg_JwJ1.js} +20 -53
- package/dist/configurations-Chg_JwJ1.js.map +1 -0
- package/dist/{configurations-zkNjr73Q.cjs → configurations-VlfQ_37Y.cjs} +14 -22
- package/dist/configurations-VlfQ_37Y.cjs.map +1 -0
- 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/{createFetchClient-BlgPbjFj.cjs → createFetchClient-Cwp8max9.cjs} +11 -4
- package/dist/createFetchClient-Cwp8max9.cjs.map +1 -0
- package/dist/{createFetchClient-C-cadpBx.js → createFetchClient-DXHQK63w.js} +11 -4
- package/dist/createFetchClient-DXHQK63w.js.map +1 -0
- package/dist/{createGenericFetchClient-Bnf1QK9W.js → createGenericFetchClient-Dg1rgzmG.js} +2 -2
- package/dist/{createGenericFetchClient-Bnf1QK9W.js.map → createGenericFetchClient-Dg1rgzmG.js.map} +1 -1
- package/dist/{createGenericFetchClient-lcozzwk2.cjs → createGenericFetchClient-Dl9cqTvR.cjs} +2 -2
- package/dist/{createGenericFetchClient-lcozzwk2.cjs.map → createGenericFetchClient-Dl9cqTvR.cjs.map} +1 -1
- package/dist/{createOpenapiFetchClient-C3UmDXpe.cjs → createOpenapiFetchClient-BYqW-9tm.cjs} +2 -2
- package/dist/{createOpenapiFetchClient-C3UmDXpe.cjs.map → createOpenapiFetchClient-BYqW-9tm.cjs.map} +1 -1
- package/dist/{createOpenapiFetchClient-COaPeeQ0.js → createOpenapiFetchClient-DZUOVupy.js} +2 -2
- package/dist/{createOpenapiFetchClient-COaPeeQ0.js.map → createOpenapiFetchClient-DZUOVupy.js.map} +1 -1
- package/dist/dataScience/index.cjs +2 -2
- package/dist/dataScience/index.d.cts +2 -2
- package/dist/dataScience/index.d.ts +2 -2
- package/dist/dataScience/index.js +2 -2
- package/dist/dataScience/types.d.cts +2 -2
- package/dist/dataScience/types.d.ts +2 -2
- package/dist/{dataScience-D-hyc4GY.cjs → dataScience-B5QxZnvW.cjs} +5 -5
- package/dist/{dataScience-D-hyc4GY.cjs.map → dataScience-B5QxZnvW.cjs.map} +1 -1
- package/dist/{dataScience-B_BmnB1m.js → dataScience-OXcwdk1p.js} +5 -5
- package/dist/{dataScience-B_BmnB1m.js.map → dataScience-OXcwdk1p.js.map} +1 -1
- package/dist/dedupe-Cky1gSUu.js +21 -0
- package/dist/dedupe-Cky1gSUu.js.map +1 -0
- package/dist/dedupe-OSnnst2u.cjs +26 -0
- package/dist/dedupe-OSnnst2u.cjs.map +1 -0
- 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-yHFTkKPb.js → developerPortalClient-B1QZ1rYi.js} +6 -8
- package/dist/{developerPortalClient-yHFTkKPb.js.map → developerPortalClient-B1QZ1rYi.js.map} +1 -1
- package/dist/{developerPortalClient-CutPqoAa.cjs → developerPortalClient-CLPpBksD.cjs} +6 -8
- package/dist/{developerPortalClient-CutPqoAa.cjs.map → developerPortalClient-CLPpBksD.cjs.map} +1 -1
- package/dist/domain/permissions/index.cjs +9 -30
- package/dist/domain/permissions/index.cjs.map +1 -1
- package/dist/domain/permissions/index.d.cts +29 -102
- package/dist/domain/permissions/index.d.ts +29 -102
- package/dist/domain/permissions/index.js +9 -30
- package/dist/domain/permissions/index.js.map +1 -1
- package/dist/domain/storageTable/index.d.cts +1 -1
- package/dist/domain/storageTable/index.d.ts +1 -1
- package/dist/editor/index.cjs +2 -2
- package/dist/editor/index.cjs.map +1 -1
- package/dist/editor/index.d.cts +2 -2
- package/dist/editor/index.d.ts +2 -2
- package/dist/editor/index.js +2 -2
- package/dist/editor/index.js.map +1 -1
- package/dist/editor/types.d.cts +1 -1
- package/dist/editor/types.d.ts +1 -1
- package/dist/encryption/index.cjs +2 -22
- package/dist/encryption/index.cjs.map +1 -1
- package/dist/encryption/index.d.cts +1 -1
- package/dist/encryption/index.d.ts +1 -1
- package/dist/encryption/index.js +2 -22
- package/dist/encryption/index.js.map +1 -1
- package/dist/encryption/types.d.cts +1 -1
- package/dist/encryption/types.d.ts +1 -1
- package/dist/import/index.cjs +1 -1
- package/dist/import/index.d.cts +3 -3
- package/dist/import/index.d.ts +3 -3
- package/dist/import/index.js +1 -1
- package/dist/{import-7YyyD_U_.cjs → import-CNk89mqy.cjs} +3 -3
- package/dist/{import-7YyyD_U_.cjs.map → import-CNk89mqy.cjs.map} +1 -1
- package/dist/{import-xliONVib.js → import-DiMQCzLa.js} +3 -3
- package/dist/{import-xliONVib.js.map → import-DiMQCzLa.js.map} +1 -1
- package/dist/{index-1r_CskjU.d.ts → index--ZpnE3YT.d.cts} +3 -3
- package/dist/{index-DBklbaTp.d.cts → index-B5w7WlaU.d.cts} +5 -1
- package/dist/{index-DBklbaTp.d.ts → index-B5w7WlaU.d.ts} +5 -1
- package/dist/{index-C77vTm2K.d.ts → index-BDZvaRud.d.ts} +6 -6
- package/dist/{index-KuQ79Mnz.d.ts → index-BVhHt5lx.d.cts} +18 -26
- package/dist/{index-NC1dXRTD.d.ts → index-BfqkgPGI.d.cts} +7 -13
- package/dist/{index-NC1dXRTD.d.cts → index-BfqkgPGI.d.ts} +7 -13
- package/dist/{index-V7XKUQm9.d.cts → index-BgR5zcjJ.d.ts} +18 -26
- package/dist/{index-BK-qHT39.d.ts → index-ByRpNVcs.d.cts} +83 -17
- package/dist/{index-pXN4LWUX.d.ts → index-C11JSxBY.d.ts} +8 -11
- package/dist/{index-GjcJTCbz.d.cts → index-C4TNAA8-.d.cts} +8 -11
- package/dist/{index-BMqLPS6S.d.ts → index-CXcWpZQ2.d.cts} +4 -12
- package/dist/{index-BMqLPS6S.d.cts → index-CXcWpZQ2.d.ts} +4 -12
- package/dist/{index-GfKzh267.d.ts → index-CaaTOANF.d.ts} +395 -297
- package/dist/{index-Dx52hNLP.d.cts → index-CcMHJcuP.d.cts} +3 -3
- package/dist/{index-DVw4Av4b.d.cts → index-Cvbjp3jx.d.cts} +6 -6
- package/dist/{index-DppA4k3b.d.cts → index-Cz0MXhzs.d.cts} +5 -5
- package/dist/{index-6Xe81qN3.d.ts → index-D-VMgpGc.d.ts} +5 -5
- package/dist/{index-DWf6FXOr.d.cts → index-D7-o-oGa.d.ts} +3 -3
- package/dist/{index-CWoEnDJ_.d.cts → index-DCRKjihs.d.ts} +83 -17
- package/dist/{kaiAgentClient-CHpULyeG.d.cts → index-DNThyEej.d.cts} +14 -5
- package/dist/{index-DXSmFkol.d.cts → index-DOAZmWvh.d.cts} +6 -6
- package/dist/{index-BuegqrS1.d.ts → index-D_-4uQF8.d.ts} +3 -3
- package/dist/index-DbLFwXgb.d.cts +116 -0
- package/dist/{index-De5qUWhp.d.ts → index-DnQTuc6t.d.ts} +6 -6
- package/dist/{kaiAgentClient-B5L4gbQ1.d.ts → index-Qb7X6-ph.d.ts} +14 -5
- package/dist/{index-CHXnJQ9s.d.cts → index-cWp_V6K5.d.cts} +395 -297
- package/dist/index-rwK7GcB2.d.ts +116 -0
- package/dist/index.cjs +1498 -901
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +7 -7
- package/dist/index.d.ts +7 -7
- package/dist/index.js +1497 -902
- package/dist/index.js.map +1 -1
- package/dist/isLoginPageRedirect-XPwAOKK3.js +14 -0
- package/dist/isLoginPageRedirect-XPwAOKK3.js.map +1 -0
- package/dist/isLoginPageRedirect-jQHiLrG7.cjs +19 -0
- package/dist/isLoginPageRedirect-jQHiLrG7.cjs.map +1 -0
- package/dist/{jobStatus-0_Y3Sr4i.cjs → jobStatus-BMlsyXWI.cjs} +19 -45
- package/dist/jobStatus-BMlsyXWI.cjs.map +1 -0
- package/dist/{jobStatus-PSZJMTiA.js → jobStatus-CfRtsIpv.js} +19 -45
- package/dist/jobStatus-CfRtsIpv.js.map +1 -0
- package/dist/kaiAgent/index.cjs +1 -1
- package/dist/kaiAgent/index.d.cts +3 -2
- package/dist/kaiAgent/index.d.ts +3 -2
- package/dist/kaiAgent/index.js +1 -1
- package/dist/kaiAgent/types.d.cts +2 -2
- package/dist/kaiAgent/types.d.ts +2 -2
- package/dist/{kaiAgent-CcT2oNip.js → kaiAgent-Dp20HLTh.js} +32 -11
- package/dist/kaiAgent-Dp20HLTh.js.map +1 -0
- package/dist/{kaiAgent-DaB6UCsh.cjs → kaiAgent-QNoeVKPs.cjs} +32 -11
- package/dist/kaiAgent-QNoeVKPs.cjs.map +1 -0
- package/dist/kaiMemory-CClSPInt.cjs +289 -0
- package/dist/kaiMemory-CClSPInt.cjs.map +1 -0
- package/dist/kaiMemory-D0Y_16U4.js +260 -0
- package/dist/kaiMemory-D0Y_16U4.js.map +1 -0
- package/dist/management/index.cjs +1 -1
- package/dist/management/index.d.cts +1 -1
- package/dist/management/index.d.ts +1 -1
- package/dist/management/index.js +1 -1
- package/dist/management/types.d.cts +2 -2
- package/dist/management/types.d.ts +2 -2
- package/dist/{management-DeZiQSlw.cjs → management-CCY0IYnq.cjs} +59 -24
- package/dist/management-CCY0IYnq.cjs.map +1 -0
- package/dist/{management-ckdnu1dA.js → management-DvmPiG64.js} +59 -24
- package/dist/management-DvmPiG64.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-B0PolCjQ.js → metastore-BycJxe7A.js} +14 -8
- package/dist/metastore-BycJxe7A.js.map +1 -0
- package/dist/{metastore-9AGrwjmN.cjs → metastore-XtWciCZT.cjs} +14 -8
- package/dist/metastore-XtWciCZT.cjs.map +1 -0
- package/dist/microsoftGraph/index.cjs +2 -2
- package/dist/microsoftGraph/index.d.cts +2 -2
- package/dist/microsoftGraph/index.d.ts +2 -2
- package/dist/microsoftGraph/index.js +2 -2
- package/dist/microsoftGraph/types.d.cts +1 -1
- package/dist/microsoftGraph/types.d.ts +1 -1
- package/dist/middleware-CBwrtgQd.js +34 -0
- package/dist/middleware-CBwrtgQd.js.map +1 -0
- package/dist/middleware-IjYx3d5u.cjs +45 -0
- package/dist/middleware-IjYx3d5u.cjs.map +1 -0
- package/dist/notifications/index.cjs +4 -4
- package/dist/notifications/index.d.cts +2 -2
- package/dist/notifications/index.d.ts +2 -2
- package/dist/notifications/index.js +4 -4
- package/dist/notifications/types.d.cts +1 -1
- package/dist/notifications/types.d.ts +1 -1
- package/dist/oauth/index.cjs +1 -1
- package/dist/oauth/index.d.cts +2 -2
- package/dist/oauth/index.d.ts +2 -2
- package/dist/oauth/index.js +1 -1
- package/dist/oauth/types.d.cts +1 -1
- package/dist/oauth/types.d.ts +1 -1
- package/dist/{oauth-DNtv4Ihb.cjs → oauth--2p8jkJf.cjs} +5 -5
- package/dist/{oauth-DNtv4Ihb.cjs.map → oauth--2p8jkJf.cjs.map} +1 -1
- package/dist/{oauth-BnHVf4cB.js → oauth-l5zE39cD.js} +5 -5
- package/dist/{oauth-BnHVf4cB.js.map → oauth-l5zE39cD.js.map} +1 -1
- package/dist/omnisearch/index.cjs +6 -14
- package/dist/omnisearch/index.cjs.map +1 -1
- package/dist/omnisearch/index.d.cts +6 -14
- package/dist/omnisearch/index.d.ts +6 -14
- package/dist/omnisearch/index.js +6 -14
- package/dist/omnisearch/index.js.map +1 -1
- package/dist/omnisearch/types.d.cts +1 -1
- package/dist/omnisearch/types.d.ts +1 -1
- package/dist/{project-DCHOxRWd.d.ts → project-B15gStbM.d.ts} +2 -2
- package/dist/{project-BRpzv3yE.d.cts → project-cHKuGvqJ.d.cts} +2 -2
- package/dist/queryService/index.cjs +1 -1
- package/dist/queryService/index.d.cts +1 -1
- package/dist/queryService/index.d.ts +1 -1
- package/dist/queryService/index.js +1 -1
- package/dist/queryService/types.d.cts +1 -1
- package/dist/queryService/types.d.ts +1 -1
- package/dist/{queryService-j3XZ2mX6.js → queryService-CCOYbRbw.js} +6 -6
- package/dist/{queryService-j3XZ2mX6.js.map → queryService-CCOYbRbw.js.map} +1 -1
- package/dist/{queryService-BVwD6Vmc.cjs → queryService-CQzclHdL.cjs} +6 -6
- package/dist/{queryService-BVwD6Vmc.cjs.map → queryService-CQzclHdL.cjs.map} +1 -1
- package/dist/queue/index.cjs +1 -1
- package/dist/queue/index.d.cts +3 -3
- package/dist/queue/index.d.ts +3 -3
- package/dist/queue/index.js +1 -1
- package/dist/queue/types.d.cts +1 -1
- package/dist/queue/types.d.ts +1 -1
- package/dist/{queue-Dagl0sdP.js → queue-Cowbg6bR.js} +8 -11
- package/dist/queue-Cowbg6bR.js.map +1 -0
- package/dist/{queue-e3rMWbmK.cjs → queue-UG_BWKIC.cjs} +8 -11
- package/dist/queue-UG_BWKIC.cjs.map +1 -0
- package/dist/scheduler/index.cjs +4 -4
- package/dist/scheduler/index.d.cts +2 -2
- package/dist/scheduler/index.d.ts +2 -2
- package/dist/scheduler/index.js +4 -4
- package/dist/scheduler/types.d.cts +1 -1
- package/dist/scheduler/types.d.ts +1 -1
- package/dist/sdk/configurations/index.cjs +1 -1
- package/dist/sdk/configurations/index.d.cts +11 -11
- package/dist/sdk/configurations/index.d.ts +11 -11
- package/dist/sdk/configurations/index.js +1 -1
- package/dist/sdk/developerPortal/index.cjs +10 -18
- package/dist/sdk/developerPortal/index.cjs.map +1 -1
- package/dist/sdk/developerPortal/index.d.cts +7 -15
- package/dist/sdk/developerPortal/index.d.ts +7 -15
- package/dist/sdk/developerPortal/index.js +7 -15
- package/dist/sdk/developerPortal/index.js.map +1 -1
- package/dist/sdk/kaiMemory/index.cjs +7 -0
- package/dist/sdk/kaiMemory/index.d.cts +41 -0
- package/dist/sdk/kaiMemory/index.d.ts +41 -0
- package/dist/sdk/kaiMemory/index.js +2 -0
- package/dist/sdk/kaiMemory/types.cjs +0 -0
- package/dist/sdk/kaiMemory/types.d.cts +2 -0
- package/dist/sdk/kaiMemory/types.d.ts +2 -0
- package/dist/sdk/kaiMemory/types.js +1 -0
- package/dist/sdk/queryService/index.cjs +2 -2
- package/dist/sdk/queryService/index.d.cts +1 -1
- package/dist/sdk/queryService/index.d.ts +1 -1
- package/dist/sdk/queryService/index.js +2 -2
- package/dist/sdk/semanticLayer/index.cjs +1 -1
- package/dist/sdk/semanticLayer/index.d.cts +16 -40
- package/dist/sdk/semanticLayer/index.d.ts +16 -40
- package/dist/sdk/semanticLayer/index.js +1 -1
- package/dist/sdk/semanticLayer/types.d.cts +1 -1
- package/dist/sdk/semanticLayer/types.d.ts +1 -1
- package/dist/sdk/storage/index.cjs +0 -5
- package/dist/sdk/storage/index.cjs.map +1 -1
- package/dist/sdk/storage/index.d.cts +2 -2
- package/dist/sdk/storage/index.d.ts +2 -2
- package/dist/sdk/storage/index.js +1 -5
- package/dist/sdk/storage/index.js.map +1 -1
- package/dist/sdk/tag/index.cjs +1 -1
- package/dist/sdk/tag/index.d.cts +3 -3
- package/dist/sdk/tag/index.d.ts +3 -3
- package/dist/sdk/tag/index.js +1 -1
- package/dist/sdk/tag/types.d.cts +1 -1
- package/dist/sdk/tag/types.d.ts +1 -1
- package/dist/sdk/vault/index.cjs +1 -1
- package/dist/sdk/vault/index.d.cts +1 -1
- package/dist/sdk/vault/index.d.ts +1 -1
- package/dist/sdk/vault/index.js +1 -1
- package/dist/{semanticLayer-9uTaU7UT.cjs → semanticLayer-CKDVkU56.cjs} +62 -183
- package/dist/semanticLayer-CKDVkU56.cjs.map +1 -0
- package/dist/{semanticLayer-6_gtFxDu.js → semanticLayer-pYy082Ju.js} +62 -183
- package/dist/semanticLayer-pYy082Ju.js.map +1 -0
- package/dist/status/index.cjs +1 -1
- package/dist/status/index.d.cts +1 -1
- package/dist/status/index.d.ts +1 -1
- package/dist/status/index.js +1 -1
- package/dist/storage/index.cjs +5 -5
- package/dist/storage/index.d.cts +2 -2
- package/dist/storage/index.d.ts +2 -2
- package/dist/storage/index.js +5 -5
- package/dist/storage/types.d.cts +2 -2
- package/dist/storage/types.d.ts +2 -2
- package/dist/{storage-Ob1LUIDq.js → storage-CZQHZcXG.js} +109 -302
- package/dist/storage-CZQHZcXG.js.map +1 -0
- package/dist/{storage-HFUdEy7P.cjs → storage-JinL1y1s.cjs} +109 -302
- package/dist/storage-JinL1y1s.cjs.map +1 -0
- package/dist/stream/index.cjs +3 -3
- package/dist/stream/index.d.cts +2 -2
- package/dist/stream/index.d.ts +2 -2
- package/dist/stream/index.js +3 -3
- package/dist/stream/types.d.cts +1 -1
- package/dist/stream/types.d.ts +1 -1
- package/dist/syncActions/index.cjs +1 -1
- package/dist/syncActions/index.d.cts +1 -1
- package/dist/syncActions/index.d.ts +1 -1
- package/dist/syncActions/index.js +1 -1
- package/dist/syncActions/types.d.cts +2 -2
- package/dist/syncActions/types.d.ts +2 -2
- package/dist/{syncActions-B3NS5a0g.js → syncActions-ChNWuhYA.js} +260 -111
- package/dist/syncActions-ChNWuhYA.js.map +1 -0
- package/dist/{syncActions-D2DhY6pP.cjs → syncActions-mFlF16cl.cjs} +260 -111
- package/dist/syncActions-mFlF16cl.cjs.map +1 -0
- package/dist/{tag-CsoOZWB_.cjs → tag-DHS_soa7.cjs} +2 -2
- package/dist/{tag-CsoOZWB_.cjs.map → tag-DHS_soa7.cjs.map} +1 -1
- package/dist/{tag-DCsoewjL.js → tag-hh-1nhNr.js} +2 -2
- package/dist/{tag-DCsoewjL.js.map → tag-hh-1nhNr.js.map} +1 -1
- package/dist/telemetry/index.cjs +7 -11
- package/dist/telemetry/index.cjs.map +1 -1
- package/dist/telemetry/index.d.cts +5 -9
- package/dist/telemetry/index.d.ts +5 -9
- package/dist/telemetry/index.js +7 -11
- package/dist/telemetry/index.js.map +1 -1
- package/dist/telemetry/types.d.cts +1 -1
- package/dist/telemetry/types.d.ts +1 -1
- package/dist/{types-DqxIx9Pi.d.cts → types-6kuMW4JW.d.cts} +2 -2
- package/dist/{types-Ct0YPy2w.d.ts → types-B2w2TtSA.d.ts} +3 -3
- package/dist/{types-M46WuBSm.d.cts → types-B61aCifg.d.cts} +2 -2
- package/dist/{types-COL1kVEB.d.cts → types-B8N_k79M.d.cts} +2 -2
- package/dist/{types-Jw10xuOW.d.cts → types-BIECJYun.d.ts} +171 -44
- package/dist/{types-DZk3XHiN.d.cts → types-BLNB882w.d.cts} +3 -3
- package/dist/{types-BEe50G2r.d.cts → types-BPy5Ozee.d.cts} +2 -2
- package/dist/{types-gi4Eay19.d.ts → types-BS4jwuMi.d.ts} +7 -15
- package/dist/{types-BrYkBQo4.d.ts → types-BTK7Bv3n.d.cts} +171 -44
- package/dist/{types-D6UmMa6E.d.ts → types-BZDV8DZk.d.ts} +3 -3
- package/dist/{types-Cz83RiVu.d.cts → types-B_iLJlp4.d.ts} +255 -12
- package/dist/{types-CmF3pR2n.d.cts → types-BiMahEK8.d.cts} +91 -237
- package/dist/{types-BH5LLeJy.d.ts → types-Bl03Cg2n.d.cts} +255 -12
- package/dist/{types-bGQb4Jtl.d.cts → types-ByLH46Dt.d.cts} +13 -8
- package/dist/{types-g3vU7hcg.d.cts → types-Bydx6ga_.d.cts} +2 -2
- package/dist/{types-B95uNQ9o.d.ts → types-CKmTZSPG.d.ts} +91 -237
- package/dist/{types-D_j2Uq5X.d.cts → types-CMzQSHAQ.d.cts} +3 -3
- package/dist/{types-N3EChotg.d.cts → types-CP_LBmw3.d.cts} +2 -2
- package/dist/{types-CW6lCqrC.d.cts → types-CQFOCQzk.d.ts} +230 -43
- package/dist/{types-zZBxJ0P-.d.ts → types-CWyXTMwy.d.ts} +2 -2
- package/dist/{types-CPB-eF82.d.ts → types-CZJlLCbA.d.ts} +2 -2
- package/dist/{types-l9o4gFsI.d.ts → types-CZXPu3gn.d.ts} +2 -2
- package/dist/{types-BztF4HeB.d.ts → types-CaOtNjSZ.d.ts} +6 -13
- package/dist/{types-BTWIPEiU.d.ts → types-CfwqVkEA.d.ts} +2 -2
- package/dist/types-Cg14ncdV.d.ts +63 -0
- package/dist/{types-BsxLGDoC.d.cts → types-CoJVrRAD.d.ts} +2 -2
- package/dist/{types-DYzJ6K2e.d.ts → types-CqwHP7mN.d.cts} +230 -43
- package/dist/{types-CKiW3n6v.d.ts → types-D3wcs4tp.d.ts} +2 -2
- package/dist/{types-DOyNe7oe.d.cts → types-DDOa07rU.d.cts} +7 -15
- package/dist/{types-BW2BXUB4.d.cts → types-DE9hgr7i.d.cts} +2 -2
- package/dist/{types-BOqD3Hqy.d.cts → types-DEzW1CfI.d.cts} +3 -3
- package/dist/{types-OaD-cbbl.d.ts → types-DIiOMV-t.d.ts} +3 -3
- package/dist/{types-B-P4vQe0.d.cts → types-DKc1gmd9.d.ts} +857 -131
- package/dist/{types-BrPlv-NS.d.ts → types-DRCMBt89.d.ts} +3 -3
- package/dist/{types-BQvv4RaI.d.cts → types-DUMal2E-.d.cts} +5 -8
- package/dist/types-DWiLcrxt.d.cts +63 -0
- package/dist/{types-DNxOHnZI.d.cts → types-Dd31Lw4S.d.cts} +2 -2
- package/dist/{types-Dmu-8g4O.d.ts → types-DekYAlA-.d.ts} +3 -3
- package/dist/{types-B2U9cFcx.d.ts → types-DgJeO9Nd.d.ts} +2 -2
- package/dist/{types-nrviNdzZ.d.ts → types-DicSaNwq.d.ts} +2 -2
- package/dist/{types-Crhy0c9m.d.cts → types-DinIJ1D_.d.cts} +40 -11
- package/dist/{types-DhDNS-5B.d.ts → types-DlQw6FCi.d.ts} +13 -8
- package/dist/{types-_RhBCj4_.d.cts → types-DoZtE9tz.d.cts} +3 -3
- package/dist/{types-Bxhh2SJr.d.ts → types-DrvKfXXd.d.cts} +2 -2
- package/dist/{types-DPl8pZsY.d.ts → types-Dtuvhm3K.d.cts} +857 -131
- package/dist/{types-CcrvrAJX.d.ts → types-DwVSj-Da.d.ts} +5 -8
- package/dist/{types-C2vefB4D.d.ts → types-FwRmjsNN.d.ts} +10 -34
- package/dist/{types-C0_2KZ-A.d.ts → types-RbrfiY8T.d.ts} +2 -2
- package/dist/{types-DfvdbRPL.d.ts → types-WZBztugL.d.ts} +2 -2
- package/dist/{types-52irAt99.d.cts → types-YHUEArkR.d.cts} +2 -2
- package/dist/{types-fX4gbxfV.d.cts → types-bc-4z_gc.d.cts} +10 -34
- package/dist/{types-3eUgOA7I.d.cts → types-ePSqbXRr.d.cts} +6 -13
- package/dist/{types-DrqKICcK.d.ts → types-n4PTnLii.d.ts} +40 -11
- package/dist/{types-DXskkNp8.d.cts → types-pvQzbgNE.d.cts} +3 -3
- package/dist/{types-DajzGOKB.d.ts → types-q-1r_9d1.d.ts} +2 -2
- package/dist/{types-D8Rrz51O.d.cts → types-tKkeLa2B.d.cts} +2 -2
- package/dist/{validateConnectionStatus-828HV8WL.js → validateConnectionStatus-BEGu8wXT.js} +6 -10
- package/dist/validateConnectionStatus-BEGu8wXT.js.map +1 -0
- package/dist/{validateConnectionStatus-CvBKyeDO.cjs → validateConnectionStatus-BEYkQpu9.cjs} +6 -10
- package/dist/validateConnectionStatus-BEYkQpu9.cjs.map +1 -0
- package/dist/vault/index.cjs +4 -4
- package/dist/vault/index.d.cts +1 -1
- package/dist/vault/index.d.ts +1 -1
- package/dist/vault/index.js +4 -4
- package/dist/vault/types.d.cts +1 -1
- package/dist/vault/types.d.ts +1 -1
- package/package.json +32 -4
- package/surface/apps.md +3 -3
- package/surface/auth.md +13 -6
- package/surface/chat.md +6 -6
- package/surface/kaiAgent.md +9 -8
- package/surface/management.md +14 -5
- package/surface/metastore.md +2 -2
- package/surface/queue.md +3 -3
- package/surface/sdk.md +13 -3
- package/surface/storage.md +6 -6
- package/surface/syncActions.md +16 -0
- package/dist/ValidationError-BekhphAq.js +0 -48
- package/dist/ValidationError-BekhphAq.js.map +0 -1
- package/dist/ValidationError-CLVJCCwH.cjs.map +0 -1
- package/dist/authClient-8yU1last.cjs.map +0 -1
- package/dist/authClient-BTo4Afm6.js.map +0 -1
- package/dist/componentId-DkyQ8PM0.cjs.map +0 -1
- package/dist/componentId-vJz-kWs6.js.map +0 -1
- package/dist/concurrent-CH9fbNr3.js.map +0 -1
- package/dist/concurrent-tbiIa0UL.cjs.map +0 -1
- package/dist/configurations-BVvcimzo.js.map +0 -1
- package/dist/configurations-CyFF9Dtu.cjs.map +0 -1
- package/dist/configurations-VtNE0nrT.js.map +0 -1
- package/dist/configurations-zkNjr73Q.cjs.map +0 -1
- package/dist/createFetchClient-BlgPbjFj.cjs.map +0 -1
- package/dist/createFetchClient-C-cadpBx.js.map +0 -1
- package/dist/credential-CAulvfZ-.cjs +0 -47
- package/dist/credential-CAulvfZ-.cjs.map +0 -1
- package/dist/credential-DWXbo4IX.js +0 -36
- package/dist/credential-DWXbo4IX.js.map +0 -1
- package/dist/dedupe-CiskLkGR.cjs +0 -30
- package/dist/dedupe-CiskLkGR.cjs.map +0 -1
- package/dist/dedupe-DYIHgZoG.js +0 -25
- package/dist/dedupe-DYIHgZoG.js.map +0 -1
- package/dist/index-3LUk2rpD.d.ts +0 -65
- package/dist/index-CW3Pj7DY.d.cts +0 -65
- package/dist/isLoginPageRedirect-Cm6Pn8Pj.cjs +0 -25
- package/dist/isLoginPageRedirect-Cm6Pn8Pj.cjs.map +0 -1
- package/dist/isLoginPageRedirect-hyPqyWNX.js +0 -20
- package/dist/isLoginPageRedirect-hyPqyWNX.js.map +0 -1
- package/dist/jobStatus-0_Y3Sr4i.cjs.map +0 -1
- package/dist/jobStatus-PSZJMTiA.js.map +0 -1
- package/dist/kaiAgent-CcT2oNip.js.map +0 -1
- package/dist/kaiAgent-DaB6UCsh.cjs.map +0 -1
- package/dist/management-DeZiQSlw.cjs.map +0 -1
- package/dist/management-ckdnu1dA.js.map +0 -1
- package/dist/metastore-9AGrwjmN.cjs.map +0 -1
- package/dist/metastore-B0PolCjQ.js.map +0 -1
- package/dist/queue-Dagl0sdP.js.map +0 -1
- package/dist/queue-e3rMWbmK.cjs.map +0 -1
- package/dist/semanticLayer-6_gtFxDu.js.map +0 -1
- package/dist/semanticLayer-9uTaU7UT.cjs.map +0 -1
- package/dist/storage-HFUdEy7P.cjs.map +0 -1
- package/dist/storage-Ob1LUIDq.js.map +0 -1
- package/dist/syncActions-B3NS5a0g.js.map +0 -1
- package/dist/syncActions-D2DhY6pP.cjs.map +0 -1
- package/dist/validateConnectionStatus-828HV8WL.js.map +0 -1
- package/dist/validateConnectionStatus-CvBKyeDO.cjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag-CsoOZWB_.cjs","names":["concurrent","generateUUID"],"sources":["../src/utils/keboolaUID.ts","../src/sdks/tag/tagSdk.ts"],"sourcesContent":["type KeboolaObjectType =\n | 'data-catalog'\n | 'table'\n | 'bucket'\n | 'flow'\n | 'configuration'\n | 'transformation'\n | 'data-app'\n | 'workspace';\n\nexport type KeboolaObjectId = {\n uid: string;\n type: KeboolaObjectType;\n projectId: number;\n};\n\n//As a delimiter for serialization, we use a double hyphen (--) instead of a single hyphen in type names.\nconst KEBOOLA_OBJECT_ID_DELIMITER = '--';\n\n/**\n * There is a proposal for a string format to identify objects in Keboola.\n *\n * https://keboola.atlassian.net/wiki/spaces/ENGG/pages/3967615431/Keboola+UUID+Format\n * Unfortunately, this format will not pass BE validation as `:` is not allowed in the `uid`, and the length is limited to 50 characters only.\n *\n */\nexport const keboolaUID = {\n serialize: (input: KeboolaObjectId): string => {\n if (input.uid === '')\n throw new Error('Invalid Keboola Object ID: uid of an object cannot be empty');\n\n return ['KID', input.projectId, input.type, input.uid].join(KEBOOLA_OBJECT_ID_DELIMITER);\n },\n\n deserialize: (input: string): KeboolaObjectId => {\n const [identifier, projectId, type, uid] = input.split(KEBOOLA_OBJECT_ID_DELIMITER);\n if (identifier !== 'KID' || !projectId || !type || !uid)\n throw new Error('Invalid Keboola Object ID');\n\n return {\n projectId: Number(projectId),\n type: type as KeboolaObjectType,\n uid,\n };\n },\n};\n","import type { MetaObject, RawMetaObject } from '../../clients/metastore/repository/types';\nimport { concurrent, generateUUID, type KeboolaObjectId, keboolaUID } from '../../utils';\n\nimport type {\n CreateMetaObjectMetaDataInput,\n MetastoreClient,\n TagBindingData,\n TagData,\n TagWithBindings,\n UpdateMetaObjectMetaDataInput,\n} from './types';\n\nconst ObjectType = {\n TAG: 'tag',\n TAG_BINDING: 'tag-binding',\n};\ntype ObjectTypes = (typeof ObjectType)[keyof typeof ObjectType];\n\n// The live metastore envelope carries the data payload in `attributes`, the UUID in the\n// top-level `id`, and audit fields in `meta`. Normalize into { uuid, data, meta }.\nconst mapObject = <TData extends Record<string, unknown>>(\n item: RawMetaObject<TData>,\n): MetaObject<TData> => ({\n uuid: item.id,\n data: item.attributes,\n meta: item.meta,\n});\n\ntype Options = {\n metastoreClient: MetastoreClient;\n};\n\nexport const createTagSdk = ({ metastoreClient }: Options) => {\n const _getTagMetaObjects = async <T extends Record<string, unknown>>(\n type: ObjectTypes,\n signal?: AbortSignal,\n ) => {\n const response = await metastoreClient.repository.getMetaObjects<T>(\n {\n objectType: type,\n },\n signal,\n );\n return response.data.map(mapObject);\n };\n\n const _getAllTagBindingMapByTagId = async (signal?: AbortSignal) => {\n const tagBindings = await _getTagMetaObjects<TagBindingData>(ObjectType.TAG_BINDING, signal);\n return Object.groupBy(tagBindings, (binding) => binding.data.tagUUID);\n };\n\n const _getTagBindingMapByTagId = async (\n tagUUIDs: string[],\n objectId: KeboolaObjectId,\n signal?: AbortSignal,\n ) => {\n const tagBindingMapByTagId = await _getAllTagBindingMapByTagId(signal);\n const objectUID = keboolaUID.serialize(objectId);\n return tagUUIDs.reduce<Record<string, MetaObject<TagBindingData> | null>>((acc, tagUUID) => {\n if (acc[tagUUID]) return acc; // filter out duplicated ids\n\n const tagBindings = tagBindingMapByTagId[tagUUID] ?? [];\n acc[tagUUID] = tagBindings.find((binding) => binding.data.objectUID === objectUID) ?? null;\n return acc;\n }, {});\n };\n\n const _deleteTagBindings = async (tagBindings: MetaObject<TagBindingData>[]) => {\n await concurrent({\n items: tagBindings,\n process: async (binding) =>\n metastoreClient.repository.deleteMetaObject({\n objectType: ObjectType.TAG_BINDING,\n UUID: binding.uuid,\n }),\n concurrency: 5,\n });\n };\n\n const getTags = async (signal?: AbortSignal) => {\n const [tags, tagBindingMapByTagId] = await Promise.all([\n _getTagMetaObjects<TagData>(ObjectType.TAG, signal),\n _getAllTagBindingMapByTagId(signal),\n ]);\n\n return tags.map<TagWithBindings>((tag) => ({\n tag,\n bindings: tagBindingMapByTagId[tag.uuid] ?? [],\n }));\n };\n\n const getTagsByObjectId = async (objectId: KeboolaObjectId, signal?: AbortSignal) => {\n const tags = await getTags(signal);\n\n const keboolaObjectUID = keboolaUID.serialize(objectId);\n const mapByTagId = tags.reduce<Record<string, Set<string>>>((acc, { tag, bindings }) => {\n acc[tag.uuid] = new Set(bindings.map((binding) => binding.data.objectUID));\n return acc;\n }, {});\n\n return tags.filter(({ tag }) => mapByTagId[tag.uuid]?.has(keboolaObjectUID));\n };\n\n const createTag = async (data: TagData, meta: CreateMetaObjectMetaDataInput = {}) => {\n const response = await metastoreClient.repository.createMetaObject<TagData>({\n objectType: ObjectType.TAG,\n data,\n name: generateUUID(),\n ...meta,\n });\n\n return mapObject(response.data);\n };\n\n const updateTag = async (\n tagUUID: string,\n data: TagData,\n meta: UpdateMetaObjectMetaDataInput = {},\n ) => {\n const response = await metastoreClient.repository.updateMetaObject<TagData>({\n objectType: ObjectType.TAG,\n UUID: tagUUID,\n data,\n ...meta,\n });\n\n return mapObject(response.data);\n };\n\n const deleteTag = async (tagUUID: string) => {\n const allBindings = await _getTagMetaObjects<TagBindingData>(ObjectType.TAG_BINDING);\n const tagBindings = allBindings.filter(({ data }) => data.tagUUID === tagUUID);\n\n await Promise.all([\n // delete tag itself\n metastoreClient.repository.deleteMetaObject({\n objectType: ObjectType.TAG,\n UUID: tagUUID,\n }),\n // delete all tag associations\n _deleteTagBindings(tagBindings),\n ]);\n };\n\n const assignTags = async (\n tagUUIDs: string[],\n objectId: KeboolaObjectId,\n meta: CreateMetaObjectMetaDataInput = {},\n ) => {\n const tagBindingMapByTagId = await _getTagBindingMapByTagId(tagUUIDs, objectId);\n // Assign only the unassigned tag IDs. Ignore the rest.\n const unassignedTagUUIDs = tagUUIDs.filter((tagUUID) => tagBindingMapByTagId[tagUUID] === null);\n\n await concurrent({\n items: unassignedTagUUIDs,\n process: async (tagUUID) =>\n metastoreClient.repository.createMetaObject<TagBindingData>({\n objectType: ObjectType.TAG_BINDING,\n data: {\n objectUID: keboolaUID.serialize(objectId),\n tagUUID: tagUUID,\n },\n name: generateUUID(),\n ...meta,\n }),\n concurrency: 5,\n });\n };\n\n const unassignTags = async (tagUUIDs: string[], objectID: KeboolaObjectId) => {\n const tagBindingMapByTagId = await _getTagBindingMapByTagId(tagUUIDs, objectID);\n const assignedTagUUIDs = tagUUIDs.filter((tagUUID) => tagBindingMapByTagId[tagUUID] !== null);\n\n const tagBindings = assignedTagUUIDs.map((tagUUID) => tagBindingMapByTagId[tagUUID]!);\n\n await concurrent({\n items: tagBindings,\n process: async (tagBinding) =>\n metastoreClient.repository.deleteMetaObject({\n objectType: ObjectType.TAG_BINDING,\n UUID: tagBinding.uuid,\n }),\n concurrency: 5,\n });\n };\n\n const unassignAllTags = async (objectID: KeboolaObjectId, signal?: AbortSignal) => {\n const tagBindings = await _getTagMetaObjects<TagBindingData>(ObjectType.TAG_BINDING, signal);\n\n const objectsTagBindings = tagBindings.filter(\n ({ data }) => data.objectUID === keboolaUID.serialize(objectID),\n );\n\n await _deleteTagBindings(objectsTagBindings);\n };\n\n const createAndAssignTag = async (\n data: TagData,\n objectId: KeboolaObjectId,\n meta: CreateMetaObjectMetaDataInput = {},\n ) => {\n const tag = await createTag(data, meta);\n await assignTags([tag.uuid], objectId, meta);\n return tag;\n };\n\n return {\n // retrievals\n getTags,\n getTagsByObjectId,\n\n // modifications\n createTag,\n updateTag,\n deleteTag,\n assignTags,\n unassignTags,\n unassignAllTags,\n createAndAssignTag,\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tag-DHS_soa7.cjs","names":["concurrent","generateUUID"],"sources":["../src/utils/keboolaUID.ts","../src/sdks/tag/tagSdk.ts"],"sourcesContent":["type KeboolaObjectType =\n | 'data-catalog'\n | 'table'\n | 'bucket'\n | 'flow'\n | 'configuration'\n | 'transformation'\n | 'data-app'\n | 'workspace';\n\nexport type KeboolaObjectId = {\n uid: string;\n type: KeboolaObjectType;\n projectId: number;\n};\n\n//As a delimiter for serialization, we use a double hyphen (--) instead of a single hyphen in type names.\nconst KEBOOLA_OBJECT_ID_DELIMITER = '--';\n\n/**\n * There is a proposal for a string format to identify objects in Keboola.\n *\n * https://keboola.atlassian.net/wiki/spaces/ENGG/pages/3967615431/Keboola+UUID+Format\n * Unfortunately, this format will not pass BE validation as `:` is not allowed in the `uid`, and the length is limited to 50 characters only.\n *\n */\nexport const keboolaUID = {\n serialize: (input: KeboolaObjectId): string => {\n if (input.uid === '')\n throw new Error('Invalid Keboola Object ID: uid of an object cannot be empty');\n\n return ['KID', input.projectId, input.type, input.uid].join(KEBOOLA_OBJECT_ID_DELIMITER);\n },\n\n deserialize: (input: string): KeboolaObjectId => {\n const [identifier, projectId, type, uid] = input.split(KEBOOLA_OBJECT_ID_DELIMITER);\n if (identifier !== 'KID' || !projectId || !type || !uid)\n throw new Error('Invalid Keboola Object ID');\n\n return {\n projectId: Number(projectId),\n type: type as KeboolaObjectType,\n uid,\n };\n },\n};\n","import type { MetaObject, RawMetaObject } from '../../clients/metastore/repository/types';\nimport { concurrent, generateUUID, type KeboolaObjectId, keboolaUID } from '../../utils';\n\nimport type {\n CreateMetaObjectMetaDataInput,\n MetastoreClient,\n TagBindingData,\n TagData,\n TagWithBindings,\n UpdateMetaObjectMetaDataInput,\n} from './types';\n\nconst ObjectType = {\n TAG: 'tag',\n TAG_BINDING: 'tag-binding',\n};\ntype ObjectTypes = (typeof ObjectType)[keyof typeof ObjectType];\n\n// The live metastore envelope carries the data payload in `attributes`, the UUID in the\n// top-level `id`, and audit fields in `meta`. Normalize into { uuid, data, meta }.\nconst mapObject = <TData extends Record<string, unknown>>(\n item: RawMetaObject<TData>,\n): MetaObject<TData> => ({\n uuid: item.id,\n data: item.attributes,\n meta: item.meta,\n});\n\ntype Options = {\n metastoreClient: MetastoreClient;\n};\n\nexport const createTagSdk = ({ metastoreClient }: Options) => {\n const _getTagMetaObjects = async <T extends Record<string, unknown>>(\n type: ObjectTypes,\n signal?: AbortSignal,\n ) => {\n const response = await metastoreClient.repository.getMetaObjects<T>(\n {\n objectType: type,\n },\n signal,\n );\n return response.data.map(mapObject);\n };\n\n const _getAllTagBindingMapByTagId = async (signal?: AbortSignal) => {\n const tagBindings = await _getTagMetaObjects<TagBindingData>(ObjectType.TAG_BINDING, signal);\n return Object.groupBy(tagBindings, (binding) => binding.data.tagUUID);\n };\n\n const _getTagBindingMapByTagId = async (\n tagUUIDs: string[],\n objectId: KeboolaObjectId,\n signal?: AbortSignal,\n ) => {\n const tagBindingMapByTagId = await _getAllTagBindingMapByTagId(signal);\n const objectUID = keboolaUID.serialize(objectId);\n return tagUUIDs.reduce<Record<string, MetaObject<TagBindingData> | null>>((acc, tagUUID) => {\n if (acc[tagUUID]) return acc; // filter out duplicated ids\n\n const tagBindings = tagBindingMapByTagId[tagUUID] ?? [];\n acc[tagUUID] = tagBindings.find((binding) => binding.data.objectUID === objectUID) ?? null;\n return acc;\n }, {});\n };\n\n const _deleteTagBindings = async (tagBindings: MetaObject<TagBindingData>[]) => {\n await concurrent({\n items: tagBindings,\n process: async (binding) =>\n metastoreClient.repository.deleteMetaObject({\n objectType: ObjectType.TAG_BINDING,\n UUID: binding.uuid,\n }),\n concurrency: 5,\n });\n };\n\n const getTags = async (signal?: AbortSignal) => {\n const [tags, tagBindingMapByTagId] = await Promise.all([\n _getTagMetaObjects<TagData>(ObjectType.TAG, signal),\n _getAllTagBindingMapByTagId(signal),\n ]);\n\n return tags.map<TagWithBindings>((tag) => ({\n tag,\n bindings: tagBindingMapByTagId[tag.uuid] ?? [],\n }));\n };\n\n const getTagsByObjectId = async (objectId: KeboolaObjectId, signal?: AbortSignal) => {\n const tags = await getTags(signal);\n\n const keboolaObjectUID = keboolaUID.serialize(objectId);\n const mapByTagId = tags.reduce<Record<string, Set<string>>>((acc, { tag, bindings }) => {\n acc[tag.uuid] = new Set(bindings.map((binding) => binding.data.objectUID));\n return acc;\n }, {});\n\n return tags.filter(({ tag }) => mapByTagId[tag.uuid]?.has(keboolaObjectUID));\n };\n\n const createTag = async (data: TagData, meta: CreateMetaObjectMetaDataInput = {}) => {\n const response = await metastoreClient.repository.createMetaObject<TagData>({\n objectType: ObjectType.TAG,\n data,\n name: generateUUID(),\n ...meta,\n });\n\n return mapObject(response.data);\n };\n\n const updateTag = async (\n tagUUID: string,\n data: TagData,\n meta: UpdateMetaObjectMetaDataInput = {},\n ) => {\n const response = await metastoreClient.repository.updateMetaObject<TagData>({\n objectType: ObjectType.TAG,\n UUID: tagUUID,\n data,\n ...meta,\n });\n\n return mapObject(response.data);\n };\n\n const deleteTag = async (tagUUID: string) => {\n const allBindings = await _getTagMetaObjects<TagBindingData>(ObjectType.TAG_BINDING);\n const tagBindings = allBindings.filter(({ data }) => data.tagUUID === tagUUID);\n\n await Promise.all([\n // delete tag itself\n metastoreClient.repository.deleteMetaObject({\n objectType: ObjectType.TAG,\n UUID: tagUUID,\n }),\n // delete all tag associations\n _deleteTagBindings(tagBindings),\n ]);\n };\n\n const assignTags = async (\n tagUUIDs: string[],\n objectId: KeboolaObjectId,\n meta: CreateMetaObjectMetaDataInput = {},\n ) => {\n const tagBindingMapByTagId = await _getTagBindingMapByTagId(tagUUIDs, objectId);\n // Assign only the unassigned tag IDs. Ignore the rest.\n const unassignedTagUUIDs = tagUUIDs.filter((tagUUID) => tagBindingMapByTagId[tagUUID] === null);\n\n await concurrent({\n items: unassignedTagUUIDs,\n process: async (tagUUID) =>\n metastoreClient.repository.createMetaObject<TagBindingData>({\n objectType: ObjectType.TAG_BINDING,\n data: {\n objectUID: keboolaUID.serialize(objectId),\n tagUUID: tagUUID,\n },\n name: generateUUID(),\n ...meta,\n }),\n concurrency: 5,\n });\n };\n\n const unassignTags = async (tagUUIDs: string[], objectID: KeboolaObjectId) => {\n const tagBindingMapByTagId = await _getTagBindingMapByTagId(tagUUIDs, objectID);\n const assignedTagUUIDs = tagUUIDs.filter((tagUUID) => tagBindingMapByTagId[tagUUID] !== null);\n\n const tagBindings = assignedTagUUIDs.map((tagUUID) => tagBindingMapByTagId[tagUUID]!);\n\n await concurrent({\n items: tagBindings,\n process: async (tagBinding) =>\n metastoreClient.repository.deleteMetaObject({\n objectType: ObjectType.TAG_BINDING,\n UUID: tagBinding.uuid,\n }),\n concurrency: 5,\n });\n };\n\n const unassignAllTags = async (objectID: KeboolaObjectId, signal?: AbortSignal) => {\n const tagBindings = await _getTagMetaObjects<TagBindingData>(ObjectType.TAG_BINDING, signal);\n\n const objectsTagBindings = tagBindings.filter(\n ({ data }) => data.objectUID === keboolaUID.serialize(objectID),\n );\n\n await _deleteTagBindings(objectsTagBindings);\n };\n\n const createAndAssignTag = async (\n data: TagData,\n objectId: KeboolaObjectId,\n meta: CreateMetaObjectMetaDataInput = {},\n ) => {\n const tag = await createTag(data, meta);\n await assignTags([tag.uuid], objectId, meta);\n return tag;\n };\n\n return {\n // retrievals\n getTags,\n getTagsByObjectId,\n\n // modifications\n createTag,\n updateTag,\n deleteTag,\n assignTags,\n unassignTags,\n unassignAllTags,\n createAndAssignTag,\n };\n};\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as concurrent } from "./concurrent-
|
|
1
|
+
import { t as concurrent } from "./concurrent-BacWxPwi.js";
|
|
2
2
|
import { t as generateUUID } from "./generateUUID-Dr8l-aoc.js";
|
|
3
3
|
//#region src/utils/keboolaUID.ts
|
|
4
4
|
const KEBOOLA_OBJECT_ID_DELIMITER = "--";
|
|
@@ -161,4 +161,4 @@ const createTagSdk = ({ metastoreClient }) => {
|
|
|
161
161
|
//#endregion
|
|
162
162
|
export { keboolaUID as n, createTagSdk as t };
|
|
163
163
|
|
|
164
|
-
//# sourceMappingURL=tag-
|
|
164
|
+
//# sourceMappingURL=tag-hh-1nhNr.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag-DCsoewjL.js","names":[],"sources":["../src/utils/keboolaUID.ts","../src/sdks/tag/tagSdk.ts"],"sourcesContent":["type KeboolaObjectType =\n | 'data-catalog'\n | 'table'\n | 'bucket'\n | 'flow'\n | 'configuration'\n | 'transformation'\n | 'data-app'\n | 'workspace';\n\nexport type KeboolaObjectId = {\n uid: string;\n type: KeboolaObjectType;\n projectId: number;\n};\n\n//As a delimiter for serialization, we use a double hyphen (--) instead of a single hyphen in type names.\nconst KEBOOLA_OBJECT_ID_DELIMITER = '--';\n\n/**\n * There is a proposal for a string format to identify objects in Keboola.\n *\n * https://keboola.atlassian.net/wiki/spaces/ENGG/pages/3967615431/Keboola+UUID+Format\n * Unfortunately, this format will not pass BE validation as `:` is not allowed in the `uid`, and the length is limited to 50 characters only.\n *\n */\nexport const keboolaUID = {\n serialize: (input: KeboolaObjectId): string => {\n if (input.uid === '')\n throw new Error('Invalid Keboola Object ID: uid of an object cannot be empty');\n\n return ['KID', input.projectId, input.type, input.uid].join(KEBOOLA_OBJECT_ID_DELIMITER);\n },\n\n deserialize: (input: string): KeboolaObjectId => {\n const [identifier, projectId, type, uid] = input.split(KEBOOLA_OBJECT_ID_DELIMITER);\n if (identifier !== 'KID' || !projectId || !type || !uid)\n throw new Error('Invalid Keboola Object ID');\n\n return {\n projectId: Number(projectId),\n type: type as KeboolaObjectType,\n uid,\n };\n },\n};\n","import type { MetaObject, RawMetaObject } from '../../clients/metastore/repository/types';\nimport { concurrent, generateUUID, type KeboolaObjectId, keboolaUID } from '../../utils';\n\nimport type {\n CreateMetaObjectMetaDataInput,\n MetastoreClient,\n TagBindingData,\n TagData,\n TagWithBindings,\n UpdateMetaObjectMetaDataInput,\n} from './types';\n\nconst ObjectType = {\n TAG: 'tag',\n TAG_BINDING: 'tag-binding',\n};\ntype ObjectTypes = (typeof ObjectType)[keyof typeof ObjectType];\n\n// The live metastore envelope carries the data payload in `attributes`, the UUID in the\n// top-level `id`, and audit fields in `meta`. Normalize into { uuid, data, meta }.\nconst mapObject = <TData extends Record<string, unknown>>(\n item: RawMetaObject<TData>,\n): MetaObject<TData> => ({\n uuid: item.id,\n data: item.attributes,\n meta: item.meta,\n});\n\ntype Options = {\n metastoreClient: MetastoreClient;\n};\n\nexport const createTagSdk = ({ metastoreClient }: Options) => {\n const _getTagMetaObjects = async <T extends Record<string, unknown>>(\n type: ObjectTypes,\n signal?: AbortSignal,\n ) => {\n const response = await metastoreClient.repository.getMetaObjects<T>(\n {\n objectType: type,\n },\n signal,\n );\n return response.data.map(mapObject);\n };\n\n const _getAllTagBindingMapByTagId = async (signal?: AbortSignal) => {\n const tagBindings = await _getTagMetaObjects<TagBindingData>(ObjectType.TAG_BINDING, signal);\n return Object.groupBy(tagBindings, (binding) => binding.data.tagUUID);\n };\n\n const _getTagBindingMapByTagId = async (\n tagUUIDs: string[],\n objectId: KeboolaObjectId,\n signal?: AbortSignal,\n ) => {\n const tagBindingMapByTagId = await _getAllTagBindingMapByTagId(signal);\n const objectUID = keboolaUID.serialize(objectId);\n return tagUUIDs.reduce<Record<string, MetaObject<TagBindingData> | null>>((acc, tagUUID) => {\n if (acc[tagUUID]) return acc; // filter out duplicated ids\n\n const tagBindings = tagBindingMapByTagId[tagUUID] ?? [];\n acc[tagUUID] = tagBindings.find((binding) => binding.data.objectUID === objectUID) ?? null;\n return acc;\n }, {});\n };\n\n const _deleteTagBindings = async (tagBindings: MetaObject<TagBindingData>[]) => {\n await concurrent({\n items: tagBindings,\n process: async (binding) =>\n metastoreClient.repository.deleteMetaObject({\n objectType: ObjectType.TAG_BINDING,\n UUID: binding.uuid,\n }),\n concurrency: 5,\n });\n };\n\n const getTags = async (signal?: AbortSignal) => {\n const [tags, tagBindingMapByTagId] = await Promise.all([\n _getTagMetaObjects<TagData>(ObjectType.TAG, signal),\n _getAllTagBindingMapByTagId(signal),\n ]);\n\n return tags.map<TagWithBindings>((tag) => ({\n tag,\n bindings: tagBindingMapByTagId[tag.uuid] ?? [],\n }));\n };\n\n const getTagsByObjectId = async (objectId: KeboolaObjectId, signal?: AbortSignal) => {\n const tags = await getTags(signal);\n\n const keboolaObjectUID = keboolaUID.serialize(objectId);\n const mapByTagId = tags.reduce<Record<string, Set<string>>>((acc, { tag, bindings }) => {\n acc[tag.uuid] = new Set(bindings.map((binding) => binding.data.objectUID));\n return acc;\n }, {});\n\n return tags.filter(({ tag }) => mapByTagId[tag.uuid]?.has(keboolaObjectUID));\n };\n\n const createTag = async (data: TagData, meta: CreateMetaObjectMetaDataInput = {}) => {\n const response = await metastoreClient.repository.createMetaObject<TagData>({\n objectType: ObjectType.TAG,\n data,\n name: generateUUID(),\n ...meta,\n });\n\n return mapObject(response.data);\n };\n\n const updateTag = async (\n tagUUID: string,\n data: TagData,\n meta: UpdateMetaObjectMetaDataInput = {},\n ) => {\n const response = await metastoreClient.repository.updateMetaObject<TagData>({\n objectType: ObjectType.TAG,\n UUID: tagUUID,\n data,\n ...meta,\n });\n\n return mapObject(response.data);\n };\n\n const deleteTag = async (tagUUID: string) => {\n const allBindings = await _getTagMetaObjects<TagBindingData>(ObjectType.TAG_BINDING);\n const tagBindings = allBindings.filter(({ data }) => data.tagUUID === tagUUID);\n\n await Promise.all([\n // delete tag itself\n metastoreClient.repository.deleteMetaObject({\n objectType: ObjectType.TAG,\n UUID: tagUUID,\n }),\n // delete all tag associations\n _deleteTagBindings(tagBindings),\n ]);\n };\n\n const assignTags = async (\n tagUUIDs: string[],\n objectId: KeboolaObjectId,\n meta: CreateMetaObjectMetaDataInput = {},\n ) => {\n const tagBindingMapByTagId = await _getTagBindingMapByTagId(tagUUIDs, objectId);\n // Assign only the unassigned tag IDs. Ignore the rest.\n const unassignedTagUUIDs = tagUUIDs.filter((tagUUID) => tagBindingMapByTagId[tagUUID] === null);\n\n await concurrent({\n items: unassignedTagUUIDs,\n process: async (tagUUID) =>\n metastoreClient.repository.createMetaObject<TagBindingData>({\n objectType: ObjectType.TAG_BINDING,\n data: {\n objectUID: keboolaUID.serialize(objectId),\n tagUUID: tagUUID,\n },\n name: generateUUID(),\n ...meta,\n }),\n concurrency: 5,\n });\n };\n\n const unassignTags = async (tagUUIDs: string[], objectID: KeboolaObjectId) => {\n const tagBindingMapByTagId = await _getTagBindingMapByTagId(tagUUIDs, objectID);\n const assignedTagUUIDs = tagUUIDs.filter((tagUUID) => tagBindingMapByTagId[tagUUID] !== null);\n\n const tagBindings = assignedTagUUIDs.map((tagUUID) => tagBindingMapByTagId[tagUUID]!);\n\n await concurrent({\n items: tagBindings,\n process: async (tagBinding) =>\n metastoreClient.repository.deleteMetaObject({\n objectType: ObjectType.TAG_BINDING,\n UUID: tagBinding.uuid,\n }),\n concurrency: 5,\n });\n };\n\n const unassignAllTags = async (objectID: KeboolaObjectId, signal?: AbortSignal) => {\n const tagBindings = await _getTagMetaObjects<TagBindingData>(ObjectType.TAG_BINDING, signal);\n\n const objectsTagBindings = tagBindings.filter(\n ({ data }) => data.objectUID === keboolaUID.serialize(objectID),\n );\n\n await _deleteTagBindings(objectsTagBindings);\n };\n\n const createAndAssignTag = async (\n data: TagData,\n objectId: KeboolaObjectId,\n meta: CreateMetaObjectMetaDataInput = {},\n ) => {\n const tag = await createTag(data, meta);\n await assignTags([tag.uuid], objectId, meta);\n return tag;\n };\n\n return {\n // retrievals\n getTags,\n getTagsByObjectId,\n\n // modifications\n createTag,\n updateTag,\n deleteTag,\n assignTags,\n unassignTags,\n unassignAllTags,\n createAndAssignTag,\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tag-hh-1nhNr.js","names":[],"sources":["../src/utils/keboolaUID.ts","../src/sdks/tag/tagSdk.ts"],"sourcesContent":["type KeboolaObjectType =\n | 'data-catalog'\n | 'table'\n | 'bucket'\n | 'flow'\n | 'configuration'\n | 'transformation'\n | 'data-app'\n | 'workspace';\n\nexport type KeboolaObjectId = {\n uid: string;\n type: KeboolaObjectType;\n projectId: number;\n};\n\n//As a delimiter for serialization, we use a double hyphen (--) instead of a single hyphen in type names.\nconst KEBOOLA_OBJECT_ID_DELIMITER = '--';\n\n/**\n * There is a proposal for a string format to identify objects in Keboola.\n *\n * https://keboola.atlassian.net/wiki/spaces/ENGG/pages/3967615431/Keboola+UUID+Format\n * Unfortunately, this format will not pass BE validation as `:` is not allowed in the `uid`, and the length is limited to 50 characters only.\n *\n */\nexport const keboolaUID = {\n serialize: (input: KeboolaObjectId): string => {\n if (input.uid === '')\n throw new Error('Invalid Keboola Object ID: uid of an object cannot be empty');\n\n return ['KID', input.projectId, input.type, input.uid].join(KEBOOLA_OBJECT_ID_DELIMITER);\n },\n\n deserialize: (input: string): KeboolaObjectId => {\n const [identifier, projectId, type, uid] = input.split(KEBOOLA_OBJECT_ID_DELIMITER);\n if (identifier !== 'KID' || !projectId || !type || !uid)\n throw new Error('Invalid Keboola Object ID');\n\n return {\n projectId: Number(projectId),\n type: type as KeboolaObjectType,\n uid,\n };\n },\n};\n","import type { MetaObject, RawMetaObject } from '../../clients/metastore/repository/types';\nimport { concurrent, generateUUID, type KeboolaObjectId, keboolaUID } from '../../utils';\n\nimport type {\n CreateMetaObjectMetaDataInput,\n MetastoreClient,\n TagBindingData,\n TagData,\n TagWithBindings,\n UpdateMetaObjectMetaDataInput,\n} from './types';\n\nconst ObjectType = {\n TAG: 'tag',\n TAG_BINDING: 'tag-binding',\n};\ntype ObjectTypes = (typeof ObjectType)[keyof typeof ObjectType];\n\n// The live metastore envelope carries the data payload in `attributes`, the UUID in the\n// top-level `id`, and audit fields in `meta`. Normalize into { uuid, data, meta }.\nconst mapObject = <TData extends Record<string, unknown>>(\n item: RawMetaObject<TData>,\n): MetaObject<TData> => ({\n uuid: item.id,\n data: item.attributes,\n meta: item.meta,\n});\n\ntype Options = {\n metastoreClient: MetastoreClient;\n};\n\nexport const createTagSdk = ({ metastoreClient }: Options) => {\n const _getTagMetaObjects = async <T extends Record<string, unknown>>(\n type: ObjectTypes,\n signal?: AbortSignal,\n ) => {\n const response = await metastoreClient.repository.getMetaObjects<T>(\n {\n objectType: type,\n },\n signal,\n );\n return response.data.map(mapObject);\n };\n\n const _getAllTagBindingMapByTagId = async (signal?: AbortSignal) => {\n const tagBindings = await _getTagMetaObjects<TagBindingData>(ObjectType.TAG_BINDING, signal);\n return Object.groupBy(tagBindings, (binding) => binding.data.tagUUID);\n };\n\n const _getTagBindingMapByTagId = async (\n tagUUIDs: string[],\n objectId: KeboolaObjectId,\n signal?: AbortSignal,\n ) => {\n const tagBindingMapByTagId = await _getAllTagBindingMapByTagId(signal);\n const objectUID = keboolaUID.serialize(objectId);\n return tagUUIDs.reduce<Record<string, MetaObject<TagBindingData> | null>>((acc, tagUUID) => {\n if (acc[tagUUID]) return acc; // filter out duplicated ids\n\n const tagBindings = tagBindingMapByTagId[tagUUID] ?? [];\n acc[tagUUID] = tagBindings.find((binding) => binding.data.objectUID === objectUID) ?? null;\n return acc;\n }, {});\n };\n\n const _deleteTagBindings = async (tagBindings: MetaObject<TagBindingData>[]) => {\n await concurrent({\n items: tagBindings,\n process: async (binding) =>\n metastoreClient.repository.deleteMetaObject({\n objectType: ObjectType.TAG_BINDING,\n UUID: binding.uuid,\n }),\n concurrency: 5,\n });\n };\n\n const getTags = async (signal?: AbortSignal) => {\n const [tags, tagBindingMapByTagId] = await Promise.all([\n _getTagMetaObjects<TagData>(ObjectType.TAG, signal),\n _getAllTagBindingMapByTagId(signal),\n ]);\n\n return tags.map<TagWithBindings>((tag) => ({\n tag,\n bindings: tagBindingMapByTagId[tag.uuid] ?? [],\n }));\n };\n\n const getTagsByObjectId = async (objectId: KeboolaObjectId, signal?: AbortSignal) => {\n const tags = await getTags(signal);\n\n const keboolaObjectUID = keboolaUID.serialize(objectId);\n const mapByTagId = tags.reduce<Record<string, Set<string>>>((acc, { tag, bindings }) => {\n acc[tag.uuid] = new Set(bindings.map((binding) => binding.data.objectUID));\n return acc;\n }, {});\n\n return tags.filter(({ tag }) => mapByTagId[tag.uuid]?.has(keboolaObjectUID));\n };\n\n const createTag = async (data: TagData, meta: CreateMetaObjectMetaDataInput = {}) => {\n const response = await metastoreClient.repository.createMetaObject<TagData>({\n objectType: ObjectType.TAG,\n data,\n name: generateUUID(),\n ...meta,\n });\n\n return mapObject(response.data);\n };\n\n const updateTag = async (\n tagUUID: string,\n data: TagData,\n meta: UpdateMetaObjectMetaDataInput = {},\n ) => {\n const response = await metastoreClient.repository.updateMetaObject<TagData>({\n objectType: ObjectType.TAG,\n UUID: tagUUID,\n data,\n ...meta,\n });\n\n return mapObject(response.data);\n };\n\n const deleteTag = async (tagUUID: string) => {\n const allBindings = await _getTagMetaObjects<TagBindingData>(ObjectType.TAG_BINDING);\n const tagBindings = allBindings.filter(({ data }) => data.tagUUID === tagUUID);\n\n await Promise.all([\n // delete tag itself\n metastoreClient.repository.deleteMetaObject({\n objectType: ObjectType.TAG,\n UUID: tagUUID,\n }),\n // delete all tag associations\n _deleteTagBindings(tagBindings),\n ]);\n };\n\n const assignTags = async (\n tagUUIDs: string[],\n objectId: KeboolaObjectId,\n meta: CreateMetaObjectMetaDataInput = {},\n ) => {\n const tagBindingMapByTagId = await _getTagBindingMapByTagId(tagUUIDs, objectId);\n // Assign only the unassigned tag IDs. Ignore the rest.\n const unassignedTagUUIDs = tagUUIDs.filter((tagUUID) => tagBindingMapByTagId[tagUUID] === null);\n\n await concurrent({\n items: unassignedTagUUIDs,\n process: async (tagUUID) =>\n metastoreClient.repository.createMetaObject<TagBindingData>({\n objectType: ObjectType.TAG_BINDING,\n data: {\n objectUID: keboolaUID.serialize(objectId),\n tagUUID: tagUUID,\n },\n name: generateUUID(),\n ...meta,\n }),\n concurrency: 5,\n });\n };\n\n const unassignTags = async (tagUUIDs: string[], objectID: KeboolaObjectId) => {\n const tagBindingMapByTagId = await _getTagBindingMapByTagId(tagUUIDs, objectID);\n const assignedTagUUIDs = tagUUIDs.filter((tagUUID) => tagBindingMapByTagId[tagUUID] !== null);\n\n const tagBindings = assignedTagUUIDs.map((tagUUID) => tagBindingMapByTagId[tagUUID]!);\n\n await concurrent({\n items: tagBindings,\n process: async (tagBinding) =>\n metastoreClient.repository.deleteMetaObject({\n objectType: ObjectType.TAG_BINDING,\n UUID: tagBinding.uuid,\n }),\n concurrency: 5,\n });\n };\n\n const unassignAllTags = async (objectID: KeboolaObjectId, signal?: AbortSignal) => {\n const tagBindings = await _getTagMetaObjects<TagBindingData>(ObjectType.TAG_BINDING, signal);\n\n const objectsTagBindings = tagBindings.filter(\n ({ data }) => data.objectUID === keboolaUID.serialize(objectID),\n );\n\n await _deleteTagBindings(objectsTagBindings);\n };\n\n const createAndAssignTag = async (\n data: TagData,\n objectId: KeboolaObjectId,\n meta: CreateMetaObjectMetaDataInput = {},\n ) => {\n const tag = await createTag(data, meta);\n await assignTags([tag.uuid], objectId, meta);\n return tag;\n };\n\n return {\n // retrievals\n getTags,\n getTagsByObjectId,\n\n // modifications\n createTag,\n updateTag,\n deleteTag,\n assignTags,\n unassignTags,\n unassignAllTags,\n createAndAssignTag,\n };\n};\n"],"mappings":"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"}
|
package/dist/telemetry/index.cjs
CHANGED
|
@@ -1,21 +1,17 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_createFetchClient = require("../createFetchClient-
|
|
3
|
-
const require_createOpenapiFetchClient = require("../createOpenapiFetchClient-
|
|
4
|
-
const require_auth = require("../auth-
|
|
2
|
+
const require_createFetchClient = require("../createFetchClient-Cwp8max9.cjs");
|
|
3
|
+
const require_createOpenapiFetchClient = require("../createOpenapiFetchClient-BYqW-9tm.cjs");
|
|
4
|
+
const require_auth = require("../auth-Dm0F2rOh.cjs");
|
|
5
5
|
//#region src/clients/telemetry/telemetryClient.ts
|
|
6
6
|
/**
|
|
7
|
-
* Takes the plain telemetry
|
|
8
|
-
* that host, so this client appends the prefix and no caller carries it.
|
|
7
|
+
* Takes the plain telemetry URL and appends the `/provisioning` ingress prefix.
|
|
9
8
|
*
|
|
10
|
-
* -
|
|
11
|
-
*
|
|
12
|
-
* request before it is sent, and a non-browser caller gets `401 Missing storage api token`. Both
|
|
13
|
-
* halves need fixing in `keboola/gooddata-cn-provisioning` before these methods work.
|
|
14
|
-
* - It also requires a **master** token, answering 403 for anything narrower.
|
|
9
|
+
* - No bearer auth: the service reads only `X-Storageapi-Token` and CORS omits `authorization`.
|
|
10
|
+
* - Requires a master token (403 otherwise).
|
|
15
11
|
*/
|
|
16
12
|
const createTelemetryClient = ({ baseUrl, middlewares, auth }) => {
|
|
17
13
|
const client = require_createOpenapiFetchClient.createOpenapiFetchClient({
|
|
18
|
-
baseUrl: `${require_createFetchClient.normalizeBaseUrl(baseUrl)}/provisioning`,
|
|
14
|
+
baseUrl: typeof baseUrl === "string" ? `${require_createFetchClient.normalizeBaseUrl(baseUrl)}/provisioning` : async () => `${require_createFetchClient.normalizeBaseUrl(await baseUrl())}/provisioning`,
|
|
19
15
|
middlewares,
|
|
20
16
|
headers: require_auth.createAuthHeaders(auth)
|
|
21
17
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","names":["createOpenapiFetchClient","normalizeBaseUrl","createAuthHeaders"],"sources":["../../src/clients/telemetry/telemetryClient.ts"],"sourcesContent":["import { createOpenapiFetchClient, normalizeBaseUrl } from '../../fetchClient';\nimport { createAuthHeaders } from '../auth';\nimport type { ClientInitOptions } from '../types';\n\nimport type { paths } from './__generated__/schema';\nimport type { GetProvisioningTokenBody, ProvisioningToken } from './types';\n\n/**\n * Takes the plain telemetry
|
|
1
|
+
{"version":3,"file":"index.cjs","names":["createOpenapiFetchClient","normalizeBaseUrl","createAuthHeaders"],"sources":["../../src/clients/telemetry/telemetryClient.ts"],"sourcesContent":["import { createOpenapiFetchClient, normalizeBaseUrl } from '../../fetchClient';\nimport { createAuthHeaders } from '../auth';\nimport type { ClientInitOptions } from '../types';\n\nimport type { paths } from './__generated__/schema';\nimport type { GetProvisioningTokenBody, ProvisioningToken } from './types';\n\n/**\n * Takes the plain telemetry URL and appends the `/provisioning` ingress prefix.\n *\n * - No bearer auth: the service reads only `X-Storageapi-Token` and CORS omits `authorization`.\n * - Requires a master token (403 otherwise).\n */\nexport const createTelemetryClient = ({ baseUrl, middlewares, auth }: ClientInitOptions) => {\n const client = createOpenapiFetchClient<paths>({\n baseUrl:\n typeof baseUrl === 'string'\n ? `${normalizeBaseUrl(baseUrl)}/provisioning`\n : async () => `${normalizeBaseUrl(await baseUrl())}/provisioning`,\n middlewares,\n headers: createAuthHeaders(auth),\n });\n\n const healthCheck = async (signal?: AbortSignal) => {\n const { data } = await client.get('/health', {}, { signal });\n\n return data;\n };\n\n /** The short-lived JWT an embedded telemetry dashboard authenticates with. */\n const getProvisioningToken = async (\n body: GetProvisioningTokenBody,\n signal?: AbortSignal,\n ): Promise<ProvisioningToken> => {\n const { data } = await client.post('/token', { body }, { signal });\n\n return data;\n };\n\n return {\n healthCheck,\n getProvisioningToken,\n };\n};\n"],"mappings":";;;;;;;;;;;AAaA,MAAa,yBAAyB,EAAE,SAAS,aAAa,WAA8B;CAC1F,MAAM,SAASA,iCAAAA,yBAAgC;EAC7C,SACE,OAAO,YAAY,WACf,GAAGC,0BAAAA,iBAAiB,OAAO,EAAE,iBAC7B,YAAY,GAAGA,0BAAAA,iBAAiB,MAAM,QAAQ,CAAC,EAAE;EACvD;EACA,SAASC,aAAAA,kBAAkB,IAAI;CACjC,CAAC;CAED,MAAM,cAAc,OAAO,WAAyB;EAClD,MAAM,EAAE,SAAS,MAAM,OAAO,IAAI,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC;EAE3D,OAAO;CACT;;CAGA,MAAM,uBAAuB,OAC3B,MACA,WAC+B;EAC/B,MAAM,EAAE,SAAS,MAAM,OAAO,KAAK,UAAU,EAAE,KAAK,GAAG,EAAE,OAAO,CAAC;EAEjE,OAAO;CACT;CAEA,OAAO;EACL;EACA;CACF;AACF"}
|
|
@@ -1,15 +1,11 @@
|
|
|
1
|
-
import { n as ClientInitOptions } from "../types-
|
|
2
|
-
import { n as ProvisioningToken, t as GetProvisioningTokenBody } from "../types-
|
|
1
|
+
import { n as ClientInitOptions } from "../types-DoZtE9tz.cjs";
|
|
2
|
+
import { n as ProvisioningToken, t as GetProvisioningTokenBody } from "../types-Bydx6ga_.cjs";
|
|
3
3
|
//#region src/clients/telemetry/telemetryClient.d.ts
|
|
4
4
|
/**
|
|
5
|
-
* Takes the plain telemetry
|
|
6
|
-
* that host, so this client appends the prefix and no caller carries it.
|
|
5
|
+
* Takes the plain telemetry URL and appends the `/provisioning` ingress prefix.
|
|
7
6
|
*
|
|
8
|
-
* -
|
|
9
|
-
*
|
|
10
|
-
* request before it is sent, and a non-browser caller gets `401 Missing storage api token`. Both
|
|
11
|
-
* halves need fixing in `keboola/gooddata-cn-provisioning` before these methods work.
|
|
12
|
-
* - It also requires a **master** token, answering 403 for anything narrower.
|
|
7
|
+
* - No bearer auth: the service reads only `X-Storageapi-Token` and CORS omits `authorization`.
|
|
8
|
+
* - Requires a master token (403 otherwise).
|
|
13
9
|
*/
|
|
14
10
|
declare const createTelemetryClient: ({ baseUrl, middlewares, auth }: ClientInitOptions) => {
|
|
15
11
|
healthCheck: (signal?: AbortSignal) => Promise<string>;
|
|
@@ -1,15 +1,11 @@
|
|
|
1
|
-
import { n as ClientInitOptions } from "../types-
|
|
2
|
-
import { n as ProvisioningToken, t as GetProvisioningTokenBody } from "../types-
|
|
1
|
+
import { n as ClientInitOptions } from "../types-B2w2TtSA.js";
|
|
2
|
+
import { n as ProvisioningToken, t as GetProvisioningTokenBody } from "../types-CZJlLCbA.js";
|
|
3
3
|
//#region src/clients/telemetry/telemetryClient.d.ts
|
|
4
4
|
/**
|
|
5
|
-
* Takes the plain telemetry
|
|
6
|
-
* that host, so this client appends the prefix and no caller carries it.
|
|
5
|
+
* Takes the plain telemetry URL and appends the `/provisioning` ingress prefix.
|
|
7
6
|
*
|
|
8
|
-
* -
|
|
9
|
-
*
|
|
10
|
-
* request before it is sent, and a non-browser caller gets `401 Missing storage api token`. Both
|
|
11
|
-
* halves need fixing in `keboola/gooddata-cn-provisioning` before these methods work.
|
|
12
|
-
* - It also requires a **master** token, answering 403 for anything narrower.
|
|
7
|
+
* - No bearer auth: the service reads only `X-Storageapi-Token` and CORS omits `authorization`.
|
|
8
|
+
* - Requires a master token (403 otherwise).
|
|
13
9
|
*/
|
|
14
10
|
declare const createTelemetryClient: ({ baseUrl, middlewares, auth }: ClientInitOptions) => {
|
|
15
11
|
healthCheck: (signal?: AbortSignal) => Promise<string>;
|
package/dist/telemetry/index.js
CHANGED
|
@@ -1,20 +1,16 @@
|
|
|
1
|
-
import { d as normalizeBaseUrl } from "../createFetchClient-
|
|
2
|
-
import { t as createOpenapiFetchClient } from "../createOpenapiFetchClient-
|
|
3
|
-
import { t as createAuthHeaders } from "../auth-
|
|
1
|
+
import { d as normalizeBaseUrl } from "../createFetchClient-DXHQK63w.js";
|
|
2
|
+
import { t as createOpenapiFetchClient } from "../createOpenapiFetchClient-DZUOVupy.js";
|
|
3
|
+
import { t as createAuthHeaders } from "../auth-DworfoPy.js";
|
|
4
4
|
//#region src/clients/telemetry/telemetryClient.ts
|
|
5
5
|
/**
|
|
6
|
-
* Takes the plain telemetry
|
|
7
|
-
* that host, so this client appends the prefix and no caller carries it.
|
|
6
|
+
* Takes the plain telemetry URL and appends the `/provisioning` ingress prefix.
|
|
8
7
|
*
|
|
9
|
-
* -
|
|
10
|
-
*
|
|
11
|
-
* request before it is sent, and a non-browser caller gets `401 Missing storage api token`. Both
|
|
12
|
-
* halves need fixing in `keboola/gooddata-cn-provisioning` before these methods work.
|
|
13
|
-
* - It also requires a **master** token, answering 403 for anything narrower.
|
|
8
|
+
* - No bearer auth: the service reads only `X-Storageapi-Token` and CORS omits `authorization`.
|
|
9
|
+
* - Requires a master token (403 otherwise).
|
|
14
10
|
*/
|
|
15
11
|
const createTelemetryClient = ({ baseUrl, middlewares, auth }) => {
|
|
16
12
|
const client = createOpenapiFetchClient({
|
|
17
|
-
baseUrl: `${normalizeBaseUrl(baseUrl)}/provisioning`,
|
|
13
|
+
baseUrl: typeof baseUrl === "string" ? `${normalizeBaseUrl(baseUrl)}/provisioning` : async () => `${normalizeBaseUrl(await baseUrl())}/provisioning`,
|
|
18
14
|
middlewares,
|
|
19
15
|
headers: createAuthHeaders(auth)
|
|
20
16
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../src/clients/telemetry/telemetryClient.ts"],"sourcesContent":["import { createOpenapiFetchClient, normalizeBaseUrl } from '../../fetchClient';\nimport { createAuthHeaders } from '../auth';\nimport type { ClientInitOptions } from '../types';\n\nimport type { paths } from './__generated__/schema';\nimport type { GetProvisioningTokenBody, ProvisioningToken } from './types';\n\n/**\n * Takes the plain telemetry
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/clients/telemetry/telemetryClient.ts"],"sourcesContent":["import { createOpenapiFetchClient, normalizeBaseUrl } from '../../fetchClient';\nimport { createAuthHeaders } from '../auth';\nimport type { ClientInitOptions } from '../types';\n\nimport type { paths } from './__generated__/schema';\nimport type { GetProvisioningTokenBody, ProvisioningToken } from './types';\n\n/**\n * Takes the plain telemetry URL and appends the `/provisioning` ingress prefix.\n *\n * - No bearer auth: the service reads only `X-Storageapi-Token` and CORS omits `authorization`.\n * - Requires a master token (403 otherwise).\n */\nexport const createTelemetryClient = ({ baseUrl, middlewares, auth }: ClientInitOptions) => {\n const client = createOpenapiFetchClient<paths>({\n baseUrl:\n typeof baseUrl === 'string'\n ? `${normalizeBaseUrl(baseUrl)}/provisioning`\n : async () => `${normalizeBaseUrl(await baseUrl())}/provisioning`,\n middlewares,\n headers: createAuthHeaders(auth),\n });\n\n const healthCheck = async (signal?: AbortSignal) => {\n const { data } = await client.get('/health', {}, { signal });\n\n return data;\n };\n\n /** The short-lived JWT an embedded telemetry dashboard authenticates with. */\n const getProvisioningToken = async (\n body: GetProvisioningTokenBody,\n signal?: AbortSignal,\n ): Promise<ProvisioningToken> => {\n const { data } = await client.post('/token', { body }, { signal });\n\n return data;\n };\n\n return {\n healthCheck,\n getProvisioningToken,\n };\n};\n"],"mappings":";;;;;;;;;;AAaA,MAAa,yBAAyB,EAAE,SAAS,aAAa,WAA8B;CAC1F,MAAM,SAAS,yBAAgC;EAC7C,SACE,OAAO,YAAY,WACf,GAAG,iBAAiB,OAAO,EAAE,iBAC7B,YAAY,GAAG,iBAAiB,MAAM,QAAQ,CAAC,EAAE;EACvD;EACA,SAAS,kBAAkB,IAAI;CACjC,CAAC;CAED,MAAM,cAAc,OAAO,WAAyB;EAClD,MAAM,EAAE,SAAS,MAAM,OAAO,IAAI,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC;EAE3D,OAAO;CACT;;CAGA,MAAM,uBAAuB,OAC3B,MACA,WAC+B;EAC/B,MAAM,EAAE,SAAS,MAAM,OAAO,KAAK,UAAU,EAAE,KAAK,GAAG,EAAE,OAAO,CAAC;EAEjE,OAAO;CACT;CAEA,OAAO;EACL;EACA;CACF;AACF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as ProvisioningToken, t as GetProvisioningTokenBody } from "../types-
|
|
1
|
+
import { n as ProvisioningToken, t as GetProvisioningTokenBody } from "../types-Bydx6ga_.cjs";
|
|
2
2
|
export { GetProvisioningTokenBody, ProvisioningToken };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as ProvisioningToken, t as GetProvisioningTokenBody } from "../types-
|
|
1
|
+
import { n as ProvisioningToken, t as GetProvisioningTokenBody } from "../types-CZJlLCbA.js";
|
|
2
2
|
export { GetProvisioningTokenBody, ProvisioningToken };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { s as OpenapiQueryType } from "./index-
|
|
1
|
+
import { s as OpenapiQueryType } from "./index-BVhHt5lx.cjs";
|
|
2
2
|
import { t as Backend } from "./backends-DKBz5OxE.cjs";
|
|
3
3
|
//#region src/clients/omnisearch/__generated__/schema.d.ts
|
|
4
4
|
/**
|
|
@@ -599,4 +599,4 @@ type LineageTable = components['schemas']['TableNode'] & {
|
|
|
599
599
|
};
|
|
600
600
|
//#endregion
|
|
601
601
|
export { LineageMetadata as a, LineageTable as c, ProjectsLineageResponse as d, TableLineageRelation as f, components as h, LineageConfiguration as i, ProjectLineageRelation as l, TablesLineageResponse as m, GetTablesLineageQuery as n, LineageProject as o, TablesLineage as p, LineageBucket as r, LineageSource as s, GetProjectsLineageQuery as t, ProjectsLineage as u };
|
|
602
|
-
//# sourceMappingURL=types-
|
|
602
|
+
//# sourceMappingURL=types-6kuMW4JW.d.cts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { E as BaseUrl, O as MiddlewareFn } from "./index-BgR5zcjJ.js";
|
|
2
2
|
//#region src/clients/auth.d.ts
|
|
3
3
|
type AuthStrategy = {
|
|
4
4
|
type: 'sapi-token';
|
|
@@ -14,10 +14,10 @@ type BaseClientOptions = {
|
|
|
14
14
|
baseUrl: string;
|
|
15
15
|
};
|
|
16
16
|
type ClientInitOptions = {
|
|
17
|
-
baseUrl:
|
|
17
|
+
baseUrl: BaseUrl;
|
|
18
18
|
auth: AuthStrategy;
|
|
19
19
|
middlewares: MiddlewareFn[];
|
|
20
20
|
};
|
|
21
21
|
//#endregion
|
|
22
22
|
export { ClientInitOptions as n, AuthStrategy as r, BaseClientOptions as t };
|
|
23
|
-
//# sourceMappingURL=types-
|
|
23
|
+
//# sourceMappingURL=types-B2w2TtSA.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as OpenapiReturnType, n as ArrayElement, o as OpenapiPathType, r as OpenapiBodyType, s as OpenapiQueryType } from "./index-
|
|
1
|
+
import { c as OpenapiReturnType, n as ArrayElement, o as OpenapiPathType, r as OpenapiBodyType, s as OpenapiQueryType } from "./index-BVhHt5lx.cjs";
|
|
2
2
|
//#region src/clients/vault/__generated__/schema.d.ts
|
|
3
3
|
/**
|
|
4
4
|
* This file was auto-generated by openapi-typescript.
|
|
@@ -383,4 +383,4 @@ type VariableWithHash = Omit<VariableWithHashRaw, 'hash'> & {
|
|
|
383
383
|
type AnyVariable = VariableWithHash | CreateVariableBody;
|
|
384
384
|
//#endregion
|
|
385
385
|
export { GetVariablesQuery as a, GetVariablesByBranchId as i, CreateVariableBody as n, VariableWithHash as o, DeleteVariablePath as r, AnyVariable as t };
|
|
386
|
-
//# sourceMappingURL=types-
|
|
386
|
+
//# sourceMappingURL=types-B61aCifg.d.cts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as OpenapiReturnType, o as OpenapiPathType, r as OpenapiBodyType, s as OpenapiQueryType } from "./index-
|
|
1
|
+
import { c as OpenapiReturnType, o as OpenapiPathType, r as OpenapiBodyType, s as OpenapiQueryType } from "./index-BVhHt5lx.cjs";
|
|
2
2
|
//#region src/clients/editor/__generated__/schema.d.ts
|
|
3
3
|
/**
|
|
4
4
|
* This file was auto-generated by openapi-typescript.
|
|
@@ -1408,4 +1408,4 @@ type PostSqlSessionUnloadPath = OpenapiPathType<paths['/sql/sessions/{id}/unload
|
|
|
1408
1408
|
type PostSqlSessionUnloadBody = OpenapiBodyType<paths['/sql/sessions/{id}/unload']['post']>;
|
|
1409
1409
|
//#endregion
|
|
1410
1410
|
export { components as C, SqlSession as S, SessionSchema as _, GetSqlSessionTableDdlPath as a, SessionSchemaDatabase as b, PostSqlRunQueryBody as c, PostSqlSessionLoadPath as d, PostSqlSessionUnloadBody as f, Session as g, PostSqlTablePreviewPath as h, GetSqlSessionSchemaQuery as i, PostSqlRunQueryPath as l, PostSqlTablePreviewBody as m, GetSqlSessionPath as n, GetSqlSessionTableDdlQuery as o, PostSqlSessionUnloadPath as p, GetSqlSessionSchemaPath as r, GetSqlSessionsQuery as s, CreateSqlSessionBody as t, PostSqlSessionLoadBody as u, SessionSchemaBucket as v, SessionSchemaTable as x, SessionSchemaColumn as y };
|
|
1411
|
-
//# sourceMappingURL=types-
|
|
1411
|
+
//# sourceMappingURL=types-B8N_k79M.d.cts.map
|