@keboola/api-client 46.0.0 → 47.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.
Files changed (462) hide show
  1. package/AGENTS.md +86 -21
  2. package/API-SURFACE.md +49 -29
  3. package/CHANGELOG.md +54 -0
  4. package/README.md +47 -37
  5. package/dist/{ManagementSessionMintError-5FFyvBZi.js → ManagementSessionMintError-4Pkn5Oob.js} +2 -2
  6. package/dist/{ManagementSessionMintError-5FFyvBZi.js.map → ManagementSessionMintError-4Pkn5Oob.js.map} +1 -1
  7. package/dist/{ManagementSessionMintError-Bm8s6yDB.cjs → ManagementSessionMintError-Cu9beG7j.cjs} +2 -2
  8. package/dist/{ManagementSessionMintError-Bm8s6yDB.cjs.map → ManagementSessionMintError-Cu9beG7j.cjs.map} +1 -1
  9. package/dist/QueryJobError-ZZZ043Nm.js +22 -0
  10. package/dist/QueryJobError-ZZZ043Nm.js.map +1 -0
  11. package/dist/{QueryJobTimeoutError-CVNPdCWX.cjs → QueryJobError-irGiP5zh.cjs} +1 -29
  12. package/dist/QueryJobError-irGiP5zh.cjs.map +1 -0
  13. package/dist/QueueJobError-6qSEizWo.cjs +30 -0
  14. package/dist/QueueJobError-6qSEizWo.cjs.map +1 -0
  15. package/dist/QueueJobError-8bThS_Mc.js +19 -0
  16. package/dist/QueueJobError-8bThS_Mc.js.map +1 -0
  17. package/dist/adminRoles-B40yBcmq.js.map +1 -1
  18. package/dist/adminRoles-CO7J5qAy.cjs.map +1 -1
  19. package/dist/{adminRoles-C696kD_U.d.cts → adminRoles-CvdIUkiC.d.ts} +4 -2
  20. package/dist/{adminRoles-C696kD_U.d.ts → adminRoles-DGM8SuuF.d.cts} +4 -2
  21. package/dist/ai/index.cjs +2 -2
  22. package/dist/ai/index.d.cts +2 -2
  23. package/dist/ai/index.d.ts +2 -2
  24. package/dist/ai/index.js +2 -2
  25. package/dist/ai/types.d.cts +1 -1
  26. package/dist/ai/types.d.ts +1 -1
  27. package/dist/{appLogs-BG9ueGxA.cjs → appLogs-Cix2KWra.cjs} +2 -2
  28. package/dist/{appLogs-BG9ueGxA.cjs.map → appLogs-Cix2KWra.cjs.map} +1 -1
  29. package/dist/{appLogs-Dl0v684o.d.cts → appLogs-Cxhm2Rkn.d.cts} +2 -2
  30. package/dist/{appLogs-CEKz68bE.js → appLogs-KslK7qHr.js} +2 -2
  31. package/dist/{appLogs-CEKz68bE.js.map → appLogs-KslK7qHr.js.map} +1 -1
  32. package/dist/{appLogs-DGIctwbb.d.ts → appLogs-xW0-JQXg.d.ts} +2 -2
  33. package/dist/apps/index.cjs +3 -3
  34. package/dist/apps/index.d.cts +3 -3
  35. package/dist/apps/index.d.ts +3 -3
  36. package/dist/apps/index.js +3 -3
  37. package/dist/apps/types.d.cts +2 -2
  38. package/dist/apps/types.d.ts +2 -2
  39. package/dist/assets/index.cjs +1 -1
  40. package/dist/assets/index.d.cts +1 -1
  41. package/dist/assets/index.d.ts +1 -1
  42. package/dist/assets/index.js +1 -1
  43. package/dist/auth/index.cjs +1 -1
  44. package/dist/auth/index.d.cts +1 -1
  45. package/dist/auth/index.d.ts +1 -1
  46. package/dist/auth/index.js +1 -1
  47. package/dist/auth/types.d.cts +2 -2
  48. package/dist/auth/types.d.ts +2 -2
  49. package/dist/{auth-C6cHWIWx.js → auth-4coY1uwo.js} +2 -2
  50. package/dist/{auth-C6cHWIWx.js.map → auth-4coY1uwo.js.map} +1 -1
  51. package/dist/{auth-C9o_0bft.cjs → auth-C8Pjl0Mu.cjs} +2 -2
  52. package/dist/{auth-C9o_0bft.cjs.map → auth-C8Pjl0Mu.cjs.map} +1 -1
  53. package/dist/{authClient-CACOwVt0.js → authClient-2e8ZmzSP.js} +71 -7
  54. package/dist/authClient-2e8ZmzSP.js.map +1 -0
  55. package/dist/{authClient-DSa5t2Ft.d.cts → authClient-Bso5UaXS.d.ts} +22 -4
  56. package/dist/{authClient-DZcAR-eW.cjs → authClient-DfkKlc-2.cjs} +82 -6
  57. package/dist/authClient-DfkKlc-2.cjs.map +1 -0
  58. package/dist/{authClient-ZiaKSKpp.d.ts → authClient-aud2dUZd.d.cts} +22 -4
  59. package/dist/billing/index.cjs +2 -2
  60. package/dist/billing/index.d.cts +1 -1
  61. package/dist/billing/index.d.ts +1 -1
  62. package/dist/billing/index.js +2 -2
  63. package/dist/billing/types.d.cts +1 -1
  64. package/dist/billing/types.d.ts +1 -1
  65. package/dist/chat/index.cjs +3 -3
  66. package/dist/chat/index.d.cts +2 -2
  67. package/dist/chat/index.d.ts +2 -2
  68. package/dist/chat/index.js +3 -3
  69. package/dist/chat/types.d.cts +1 -1
  70. package/dist/chat/types.d.ts +1 -1
  71. package/dist/{collect-97WhfEpt.js → collectByOffset-2XzJqmvr.js} +6 -6
  72. package/dist/collectByOffset-2XzJqmvr.js.map +1 -0
  73. package/dist/{collect-B5TCNiT1.cjs → collectByOffset-DQsqtmJg.cjs} +7 -7
  74. package/dist/collectByOffset-DQsqtmJg.cjs.map +1 -0
  75. package/dist/componentsMcp/index.cjs +3 -0
  76. package/dist/componentsMcp/index.d.cts +2 -0
  77. package/dist/componentsMcp/index.d.ts +2 -0
  78. package/dist/componentsMcp/index.js +2 -0
  79. package/dist/componentsMcp/types.cjs +0 -0
  80. package/dist/componentsMcp/types.d.cts +2 -0
  81. package/dist/componentsMcp/types.d.ts +2 -0
  82. package/dist/componentsMcp/types.js +1 -0
  83. package/dist/componentsMcp-CHobIsuU.js +57 -0
  84. package/dist/componentsMcp-CHobIsuU.js.map +1 -0
  85. package/dist/componentsMcp-pG-PcQrg.cjs +62 -0
  86. package/dist/componentsMcp-pG-PcQrg.cjs.map +1 -0
  87. package/dist/configurations-BTRHVSRq.cjs.map +1 -1
  88. package/dist/configurations-Chg_JwJ1.js.map +1 -1
  89. package/dist/constants/index.cjs +1 -1
  90. package/dist/constants/index.d.cts +2 -3
  91. package/dist/constants/index.d.ts +2 -3
  92. package/dist/constants/index.js +1 -1
  93. package/dist/{constants-Cifrqsls.js → constants-CA4UN2Xv.js} +11 -10
  94. package/dist/constants-CA4UN2Xv.js.map +1 -0
  95. package/dist/{constants-BDGRQqij.cjs → constants-a0jswUeK.cjs} +10 -9
  96. package/dist/constants-a0jswUeK.cjs.map +1 -0
  97. package/dist/{createFetchClient-DITkTV2k.js → createFetchClient-CkHdS_IG.js} +5 -5
  98. package/dist/createFetchClient-CkHdS_IG.js.map +1 -0
  99. package/dist/{createFetchClient-ClWD4ua3.cjs → createFetchClient-lZ_93Yrb.cjs} +5 -5
  100. package/dist/createFetchClient-lZ_93Yrb.cjs.map +1 -0
  101. package/dist/{createGenericFetchClient-KqiJhw8G.js → createGenericFetchClient-CQdNcPC3.js} +2 -2
  102. package/dist/{createGenericFetchClient-KqiJhw8G.js.map → createGenericFetchClient-CQdNcPC3.js.map} +1 -1
  103. package/dist/{createGenericFetchClient-B81Iezpb.cjs → createGenericFetchClient-MOx97wi-.cjs} +2 -2
  104. package/dist/{createGenericFetchClient-B81Iezpb.cjs.map → createGenericFetchClient-MOx97wi-.cjs.map} +1 -1
  105. package/dist/{createOpenapiFetchClient-CioTX11-.cjs → createOpenapiFetchClient-DHYo_k3t.cjs} +2 -2
  106. package/dist/{createOpenapiFetchClient-CioTX11-.cjs.map → createOpenapiFetchClient-DHYo_k3t.cjs.map} +1 -1
  107. package/dist/{createOpenapiFetchClient-wq8iGLZM.js → createOpenapiFetchClient-DXiMv9WL.js} +2 -2
  108. package/dist/{createOpenapiFetchClient-wq8iGLZM.js.map → createOpenapiFetchClient-DXiMv9WL.js.map} +1 -1
  109. package/dist/dataScience/index.cjs +2 -2
  110. package/dist/dataScience/index.d.cts +2 -2
  111. package/dist/dataScience/index.d.ts +2 -2
  112. package/dist/dataScience/index.js +2 -2
  113. package/dist/dataScience/types.d.cts +2 -2
  114. package/dist/dataScience/types.d.ts +2 -2
  115. package/dist/{dataScience-BwHmDoQb.js → dataScience-AwPMeGfz.js} +5 -5
  116. package/dist/{dataScience-BwHmDoQb.js.map → dataScience-AwPMeGfz.js.map} +1 -1
  117. package/dist/{dataScience-Hhoqoql_.cjs → dataScience-BjS1p8WO.cjs} +5 -5
  118. package/dist/{dataScience-Hhoqoql_.cjs.map → dataScience-BjS1p8WO.cjs.map} +1 -1
  119. package/dist/developerPortal/index.cjs +1 -1
  120. package/dist/developerPortal/index.d.cts +2 -2
  121. package/dist/developerPortal/index.d.ts +2 -2
  122. package/dist/developerPortal/index.js +1 -1
  123. package/dist/developerPortal/types.d.cts +1 -1
  124. package/dist/developerPortal/types.d.ts +1 -1
  125. package/dist/{developerPortalClient-loKq7X_U.js → developerPortalClient-Bb2suezr.js} +13 -5
  126. package/dist/{developerPortalClient-loKq7X_U.js.map → developerPortalClient-Bb2suezr.js.map} +1 -1
  127. package/dist/{developerPortalClient-COm7wJxS.cjs → developerPortalClient-DUerKw-7.cjs} +13 -5
  128. package/dist/{developerPortalClient-COm7wJxS.cjs.map → developerPortalClient-DUerKw-7.cjs.map} +1 -1
  129. package/dist/domain/permissions/index.d.cts +1 -2
  130. package/dist/domain/permissions/index.d.ts +1 -2
  131. package/dist/editor/index.cjs +2 -2
  132. package/dist/editor/index.d.cts +2 -2
  133. package/dist/editor/index.d.ts +2 -2
  134. package/dist/editor/index.js +2 -2
  135. package/dist/editor/types.d.cts +1 -1
  136. package/dist/editor/types.d.ts +1 -1
  137. package/dist/encryption/index.cjs +1 -1
  138. package/dist/encryption/index.d.cts +1 -1
  139. package/dist/encryption/index.d.ts +1 -1
  140. package/dist/encryption/index.js +1 -1
  141. package/dist/encryption/types.d.cts +1 -1
  142. package/dist/encryption/types.d.ts +1 -1
  143. package/dist/import/index.cjs +1 -1
  144. package/dist/import/index.d.cts +3 -3
  145. package/dist/import/index.d.ts +3 -3
  146. package/dist/import/index.js +1 -1
  147. package/dist/{import-B5DcJGMI.cjs → import-BahNYv91.cjs} +3 -3
  148. package/dist/{import-B5DcJGMI.cjs.map → import-BahNYv91.cjs.map} +1 -1
  149. package/dist/{import-JlH_QaDd.js → import-FWy_wQZ1.js} +3 -3
  150. package/dist/{import-JlH_QaDd.js.map → import-FWy_wQZ1.js.map} +1 -1
  151. package/dist/{index-DeQDdut6.d.cts → index-8ZjY7YD8.d.cts} +34 -2
  152. package/dist/{index-DCxVLGHH.d.ts → index-BGEuaZqI.d.cts} +11 -28
  153. package/dist/{index-se5ee8U1.d.ts → index-BIP0PoMW.d.ts} +4 -4
  154. package/dist/index-B_MzjCeE.d.ts +46 -0
  155. package/dist/{index-DXcTukgn.d.ts → index-BeOd45XE.d.ts} +4 -4
  156. package/dist/{index-DeQDdut6.d.ts → index-BnPmXDVP.d.ts} +34 -2
  157. package/dist/{index-yJ0HrxY6.d.ts → index-C2OAOK0s.d.ts} +4 -4
  158. package/dist/{index-BP3choXr.d.ts → index-CAWy1qjR.d.ts} +19771 -14468
  159. package/dist/{index-syAYY5LC.d.cts → index-CkwZ5x7E.d.cts} +19771 -14468
  160. package/dist/{index-Bt43tKyu.d.cts → index-DTysQ_yn.d.cts} +5 -5
  161. package/dist/{index-CTKC-mwi.d.cts → index-DUB0BwQv.d.cts} +4 -4
  162. package/dist/{index-BnPYPXGQ.d.ts → index-DloFSSj3.d.ts} +3 -3
  163. package/dist/{index-DWFxcmVD.d.ts → index-Dp-a2DdI.d.ts} +4 -4
  164. package/dist/{index-x8ET_BTN.d.cts → index-Ds0tViQS.d.cts} +3 -3
  165. package/dist/{index-DRaVzOLM.d.ts → index-HSkjm3QW.d.ts} +5 -5
  166. package/dist/index-URgNfi5L.d.cts +46 -0
  167. package/dist/{index-BhDxP0x4.d.cts → index-XG5cO-4H.d.cts} +4 -4
  168. package/dist/{types-CESP1ONj.d.ts → index-XaPb6unB.d.cts} +3635 -627
  169. package/dist/{index-D-4TT5yW.d.cts → index-ZYvgoqgW.d.cts} +4 -4
  170. package/dist/{index-GVxpBH6j.d.cts → index-_Va9wynk.d.ts} +11 -28
  171. package/dist/{types-GaOcVZ3d.d.cts → index-r6YSe8B-.d.ts} +3635 -627
  172. package/dist/{index-DS6O4UDB.d.cts → index-x_kS_5x_.d.cts} +4 -4
  173. package/dist/index.cjs +142 -161
  174. package/dist/index.cjs.map +1 -1
  175. package/dist/index.d.cts +7 -7
  176. package/dist/index.d.ts +7 -7
  177. package/dist/index.js +75 -96
  178. package/dist/index.js.map +1 -1
  179. package/dist/{isLoginPageRedirect-CsyRa3_v.js → isLoginPageRedirect-B4QKSiSa.js} +2 -2
  180. package/dist/{isLoginPageRedirect-CsyRa3_v.js.map → isLoginPageRedirect-B4QKSiSa.js.map} +1 -1
  181. package/dist/{isLoginPageRedirect-iNbwl3iz.cjs → isLoginPageRedirect-r0Opgc1n.cjs} +2 -2
  182. package/dist/{isLoginPageRedirect-iNbwl3iz.cjs.map → isLoginPageRedirect-r0Opgc1n.cjs.map} +1 -1
  183. package/dist/kaiAgent/index.cjs +1 -1
  184. package/dist/kaiAgent/index.d.cts +2 -2
  185. package/dist/kaiAgent/index.d.ts +2 -2
  186. package/dist/kaiAgent/index.js +1 -1
  187. package/dist/kaiAgent/types.d.cts +1 -1
  188. package/dist/kaiAgent/types.d.ts +1 -1
  189. package/dist/{kaiAgent-BhcUsBDk.cjs → kaiAgent-BmfUG8bB.cjs} +5 -5
  190. package/dist/{kaiAgent-BhcUsBDk.cjs.map → kaiAgent-BmfUG8bB.cjs.map} +1 -1
  191. package/dist/{kaiAgent-CUeT53-K.js → kaiAgent-CBPbMwBh.js} +5 -5
  192. package/dist/{kaiAgent-CUeT53-K.js.map → kaiAgent-CBPbMwBh.js.map} +1 -1
  193. package/dist/{kaiMemory-DaOh0zVn.js → kaiMemory-C9di17bd.js} +2 -2
  194. package/dist/{kaiMemory-DaOh0zVn.js.map → kaiMemory-C9di17bd.js.map} +1 -1
  195. package/dist/{kaiMemory-Cf81ghNd.cjs → kaiMemory-Qch09f-m.cjs} +2 -2
  196. package/dist/{kaiMemory-Cf81ghNd.cjs.map → kaiMemory-Qch09f-m.cjs.map} +1 -1
  197. package/dist/management/index.cjs +1 -1
  198. package/dist/management/index.d.cts +1 -1
  199. package/dist/management/index.d.ts +1 -1
  200. package/dist/management/index.js +1 -1
  201. package/dist/management/types.d.cts +2 -2
  202. package/dist/management/types.d.ts +2 -2
  203. package/dist/{management-0cWVLHei.cjs → management-BUGPJ1Bu.cjs} +23 -6
  204. package/dist/{management-0cWVLHei.cjs.map → management-BUGPJ1Bu.cjs.map} +1 -1
  205. package/dist/{management-eg4Ig-Cx.js → management-DAg2obYt.js} +23 -6
  206. package/dist/{management-eg4Ig-Cx.js.map → management-DAg2obYt.js.map} +1 -1
  207. package/dist/metastore/index.cjs +1 -1
  208. package/dist/metastore/index.d.cts +1 -1
  209. package/dist/metastore/index.d.ts +1 -1
  210. package/dist/metastore/index.js +1 -1
  211. package/dist/metastore/types.d.cts +1 -1
  212. package/dist/metastore/types.d.ts +1 -1
  213. package/dist/{metastore-YPHUK3jJ.cjs → metastore-BXHg33ku.cjs} +4 -4
  214. package/dist/{metastore-YPHUK3jJ.cjs.map → metastore-BXHg33ku.cjs.map} +1 -1
  215. package/dist/{metastore-D0C6uaPX.js → metastore-Ywq08DBz.js} +4 -4
  216. package/dist/{metastore-D0C6uaPX.js.map → metastore-Ywq08DBz.js.map} +1 -1
  217. package/dist/microsoftGraph/index.cjs +2 -2
  218. package/dist/microsoftGraph/index.d.cts +2 -2
  219. package/dist/microsoftGraph/index.d.ts +2 -2
  220. package/dist/microsoftGraph/index.js +2 -2
  221. package/dist/microsoftGraph/types.d.cts +1 -1
  222. package/dist/microsoftGraph/types.d.ts +1 -1
  223. package/dist/{middleware-DmR6OhTY.js → middleware-CWaLMlG1.js} +2 -2
  224. package/dist/{middleware-DmR6OhTY.js.map → middleware-CWaLMlG1.js.map} +1 -1
  225. package/dist/{middleware-D_p5TctO.cjs → middleware-DU_5pFDW.cjs} +2 -2
  226. package/dist/{middleware-D_p5TctO.cjs.map → middleware-DU_5pFDW.cjs.map} +1 -1
  227. package/dist/notifications/index.cjs +3 -3
  228. package/dist/notifications/index.d.cts +2 -2
  229. package/dist/notifications/index.d.ts +2 -2
  230. package/dist/notifications/index.js +3 -3
  231. package/dist/notifications/types.d.cts +1 -1
  232. package/dist/notifications/types.d.ts +1 -1
  233. package/dist/oauth/index.cjs +1 -1
  234. package/dist/oauth/index.d.cts +6 -2
  235. package/dist/oauth/index.d.ts +6 -2
  236. package/dist/oauth/index.js +1 -1
  237. package/dist/oauth/types.d.cts +2 -2
  238. package/dist/oauth/types.d.ts +2 -2
  239. package/dist/{oauth-DyUwTqHJ.cjs → oauth-DKZPuUlt.cjs} +17 -6
  240. package/dist/{oauth-DyUwTqHJ.cjs.map → oauth-DKZPuUlt.cjs.map} +1 -1
  241. package/dist/{oauth-Ck_Fe14o.js → oauth-GXmZ9agP.js} +17 -6
  242. package/dist/{oauth-Ck_Fe14o.js.map → oauth-GXmZ9agP.js.map} +1 -1
  243. package/dist/omnisearch/index.cjs +2 -2
  244. package/dist/omnisearch/index.d.cts +2 -2
  245. package/dist/omnisearch/index.d.ts +2 -2
  246. package/dist/omnisearch/index.js +2 -2
  247. package/dist/omnisearch/types.d.cts +1 -1
  248. package/dist/omnisearch/types.d.ts +1 -1
  249. package/dist/project-BMmfPhXg.d.ts +74 -0
  250. package/dist/project-dxCJbFay.d.cts +74 -0
  251. package/dist/queryService/index.cjs +1 -1
  252. package/dist/queryService/index.d.cts +1 -1
  253. package/dist/queryService/index.d.ts +1 -1
  254. package/dist/queryService/index.js +1 -1
  255. package/dist/queryService/types.d.cts +2 -2
  256. package/dist/queryService/types.d.ts +2 -2
  257. package/dist/{queryService-Blfz59Ms.js → queryService-C-pZha5p.js} +36 -27
  258. package/dist/queryService-C-pZha5p.js.map +1 -0
  259. package/dist/{queryService-RlNYw7LG.cjs → queryService-CzK53q94.cjs} +36 -27
  260. package/dist/queryService-CzK53q94.cjs.map +1 -0
  261. package/dist/queue/index.cjs +1 -1
  262. package/dist/queue/index.d.cts +75 -7
  263. package/dist/queue/index.d.ts +75 -7
  264. package/dist/queue/index.js +1 -1
  265. package/dist/queue/types.d.cts +1 -1
  266. package/dist/queue/types.d.ts +1 -1
  267. package/dist/{queue-BrgRdtOr.cjs → queue-BJvDWriM.cjs} +35 -25
  268. package/dist/queue-BJvDWriM.cjs.map +1 -0
  269. package/dist/{queue-CNvR-M23.js → queue-D6-x4OGF.js} +35 -25
  270. package/dist/queue-D6-x4OGF.js.map +1 -0
  271. package/dist/scheduler/index.cjs +3 -3
  272. package/dist/scheduler/index.d.cts +2 -2
  273. package/dist/scheduler/index.d.ts +2 -2
  274. package/dist/scheduler/index.js +3 -3
  275. package/dist/scheduler/types.d.cts +1 -1
  276. package/dist/scheduler/types.d.ts +1 -1
  277. package/dist/sdk/configurations/index.d.cts +2 -4
  278. package/dist/sdk/configurations/index.d.ts +2 -4
  279. package/dist/sdk/developerPortal/index.cjs +3 -3
  280. package/dist/sdk/developerPortal/index.d.cts +3 -3
  281. package/dist/sdk/developerPortal/index.d.ts +3 -3
  282. package/dist/sdk/developerPortal/index.js +3 -3
  283. package/dist/sdk/kaiMemory/index.cjs +1 -1
  284. package/dist/sdk/kaiMemory/index.d.cts +1 -1
  285. package/dist/sdk/kaiMemory/index.d.ts +1 -1
  286. package/dist/sdk/kaiMemory/index.js +1 -1
  287. package/dist/sdk/kaiMemory/types.d.cts +1 -1
  288. package/dist/sdk/kaiMemory/types.d.ts +1 -1
  289. package/dist/sdk/queryService/index.cjs +34 -55
  290. package/dist/sdk/queryService/index.cjs.map +1 -1
  291. package/dist/sdk/queryService/index.d.cts +2 -2
  292. package/dist/sdk/queryService/index.d.ts +2 -2
  293. package/dist/sdk/queryService/index.js +34 -55
  294. package/dist/sdk/queryService/index.js.map +1 -1
  295. package/dist/sdk/semanticLayer/index.d.cts +1 -1
  296. package/dist/sdk/semanticLayer/index.d.ts +1 -1
  297. package/dist/sdk/semanticLayer/types.d.cts +1 -1
  298. package/dist/sdk/semanticLayer/types.d.ts +1 -1
  299. package/dist/sdk/storage/index.cjs +0 -119
  300. package/dist/sdk/storage/index.cjs.map +1 -1
  301. package/dist/sdk/storage/index.d.cts +103 -2
  302. package/dist/sdk/storage/index.d.ts +103 -2
  303. package/dist/sdk/storage/index.js +1 -119
  304. package/dist/sdk/storage/index.js.map +1 -1
  305. package/dist/sdk/tag/index.d.cts +2 -2
  306. package/dist/sdk/tag/index.d.ts +2 -2
  307. package/dist/sdk/tag/types.d.cts +1 -1
  308. package/dist/sdk/tag/types.d.ts +1 -1
  309. package/dist/sdk/vault/index.d.cts +1 -1
  310. package/dist/sdk/vault/index.d.ts +1 -1
  311. package/dist/status/index.cjs +1 -1
  312. package/dist/status/index.d.cts +1 -1
  313. package/dist/status/index.d.ts +1 -1
  314. package/dist/status/index.js +1 -1
  315. package/dist/storage/index.cjs +13 -9
  316. package/dist/storage/index.d.cts +3 -3
  317. package/dist/storage/index.d.ts +3 -3
  318. package/dist/storage/index.js +7 -6
  319. package/dist/storage/types.d.cts +6 -5
  320. package/dist/storage/types.d.ts +6 -5
  321. package/dist/{storage-RkNaOFJ-.js → storage-DyR7hDdv.js} +347 -168
  322. package/dist/storage-DyR7hDdv.js.map +1 -0
  323. package/dist/{storage-76Sf_z_H.cjs → storage-yovv11k6.cjs} +366 -169
  324. package/dist/storage-yovv11k6.cjs.map +1 -0
  325. package/dist/stream/index.cjs +3 -3
  326. package/dist/stream/index.d.cts +2 -2
  327. package/dist/stream/index.d.ts +2 -2
  328. package/dist/stream/index.js +3 -3
  329. package/dist/stream/types.d.cts +1 -1
  330. package/dist/stream/types.d.ts +1 -1
  331. package/dist/syncActions/index.cjs +1 -1
  332. package/dist/syncActions/index.d.cts +2 -2
  333. package/dist/syncActions/index.d.ts +2 -2
  334. package/dist/syncActions/index.js +1 -1
  335. package/dist/syncActions/types.d.cts +1 -1
  336. package/dist/syncActions/types.d.ts +1 -1
  337. package/dist/{syncActions-DlNPhZY4.cjs → syncActions-C1rE4R3f.cjs} +5 -5
  338. package/dist/{syncActions-DlNPhZY4.cjs.map → syncActions-C1rE4R3f.cjs.map} +1 -1
  339. package/dist/{syncActions-BvFUa9xV.js → syncActions-DM8vP7p3.js} +5 -5
  340. package/dist/{syncActions-BvFUa9xV.js.map → syncActions-DM8vP7p3.js.map} +1 -1
  341. package/dist/telemetry/index.cjs +3 -6
  342. package/dist/telemetry/index.cjs.map +1 -1
  343. package/dist/telemetry/index.d.cts +2 -5
  344. package/dist/telemetry/index.d.ts +2 -5
  345. package/dist/telemetry/index.js +3 -6
  346. package/dist/telemetry/index.js.map +1 -1
  347. package/dist/telemetry/types.d.cts +1 -1
  348. package/dist/telemetry/types.d.ts +1 -1
  349. package/dist/{jobStatus-BJdbZ72V.js → transientRetries-B4iusp69.js} +79 -37
  350. package/dist/transientRetries-B4iusp69.js.map +1 -0
  351. package/dist/{jobStatus-B0E-MZ9I.cjs → transientRetries-DdJfH9QK.cjs} +82 -40
  352. package/dist/transientRetries-DdJfH9QK.cjs.map +1 -0
  353. package/dist/{types-5HdT1rSH.d.cts → types--qQPfxWt.d.cts} +2 -2
  354. package/dist/{types-sg2xnYlr.d.cts → types-4CjbcUdD.d.cts} +95 -26
  355. package/dist/{types-B1GN_I06.d.ts → types-4HmtNuJf.d.ts} +2 -2
  356. package/dist/types-4bSZLxq3.d.cts +1973 -0
  357. package/dist/{types-BHxsCu0f.d.ts → types-7DBpH7Rf.d.ts} +2 -2
  358. package/dist/{types-Btb8r9iw.d.ts → types-B2ZLjagf.d.ts} +95 -26
  359. package/dist/{types--owScV0r.d.cts → types-B6ozaDkl.d.cts} +11 -3
  360. package/dist/{types-DUDQg4ry.d.cts → types-BBbzWczQ.d.cts} +2 -2
  361. package/dist/{types-CyO8qCKl.d.cts → types-BG0oWq8u.d.cts} +2 -2
  362. package/dist/types-BIDKSQdc.d.ts +1973 -0
  363. package/dist/{types-CFurl1xe.d.cts → types-BKIcow3B.d.cts} +2 -2
  364. package/dist/{types-Nwq1QtYe.d.ts → types-BNPvFLgC.d.ts} +2 -2
  365. package/dist/{types-DDjp9lXD.d.ts → types-BXgINefw.d.ts} +2 -2
  366. package/dist/{types-C05ALlV6.d.cts → types-BZBU3mwz.d.cts} +3 -3
  367. package/dist/{types-LxDyOfdY.d.cts → types-B_1plf0y.d.cts} +2 -2
  368. package/dist/{types-DHdXufVf.d.cts → types-B_3zoXA1.d.cts} +3 -3
  369. package/dist/{types-BE7mRarT.d.ts → types-BcQ3j8xK.d.ts} +2 -2
  370. package/dist/{types-tJLoKlMX.d.cts → types-BdF6NDvo.d.cts} +2 -2
  371. package/dist/{types-DiE081mn.d.ts → types-BiBBKcin.d.ts} +3 -3
  372. package/dist/{types-fAqPUl-a.d.ts → types-BiTn_JVW.d.cts} +233 -37
  373. package/dist/{types-BtII5RSD.d.ts → types-BjEiUOL6.d.ts} +11 -3
  374. package/dist/{types-BMWeCO5M.d.ts → types-BoH7NFCh.d.ts} +3 -3
  375. package/dist/{types-BGICH80a.d.cts → types-BwsE-pFo.d.cts} +2 -2
  376. package/dist/{types-B5kkD7h4.d.cts → types-Bx0TSdwF.d.cts} +2 -2
  377. package/dist/{types-sI3K5t3w.d.cts → types-C2JMisvL.d.ts} +233 -37
  378. package/dist/{types-CaBhH99H.d.ts → types-C2j6Jsie.d.ts} +3 -3
  379. package/dist/{types-DSv1XS7s.d.ts → types-C3IQu1gV.d.ts} +3 -3
  380. package/dist/{types-DQauEri3.d.ts → types-C7t_6FLh.d.ts} +2 -2
  381. package/dist/{types-UI2aZ74n.d.ts → types-CBrNIgEy.d.ts} +3 -3
  382. package/dist/{types-Dvysi2Eo.d.ts → types-CEw2IzWk.d.ts} +2 -2
  383. package/dist/{types-C8oZX0oP.d.cts → types-CMKIdreQ.d.cts} +3 -3
  384. package/dist/{types-qGMVZGSB.d.ts → types-COQOzyac.d.ts} +45 -2
  385. package/dist/{types-Csmy6qFk.d.cts → types-CZCPdPqv.d.cts} +2 -2
  386. package/dist/{types-BksK2Eo0.d.cts → types-Cw9UISvM.d.ts} +2 -2
  387. package/dist/{types-YdE2VJzw.d.cts → types-D51g4h9w.d.cts} +2 -2
  388. package/dist/{types-DGu-wPPm.d.cts → types-D8w9lyb8.d.cts} +45 -2
  389. package/dist/{types-XHNJRi3-.d.cts → types-DBJ8c3hN.d.cts} +2 -2
  390. package/dist/{types-C4yryy-R.d.ts → types-DHlXKVEM.d.ts} +2 -2
  391. package/dist/{types-ggpJFEWZ.d.cts → types-DPDq8C4q.d.cts} +2 -2
  392. package/dist/{types-qWA5iU0j.d.ts → types-DWJVbskE.d.ts} +2 -2
  393. package/dist/{types-Br04cEri.d.ts → types-Dg8a7m7f.d.ts} +2 -2
  394. package/dist/{types-CoQET4Ep.d.ts → types-DgIzXY-Y.d.ts} +2 -2
  395. package/dist/{types-QroFANIW.d.cts → types-L50Y6ATu.d.cts} +3 -3
  396. package/dist/{types-BuKviWct.d.ts → types-OkQWmonU.d.cts} +2 -2
  397. package/dist/{types-DMWfdZ5C.d.cts → types-TRJiPqJr.d.cts} +2 -2
  398. package/dist/{types-BTqxM-IN.d.ts → types-ij6BpTzR.d.ts} +2 -2
  399. package/dist/{types-BoNqe_Lz.d.ts → types-ituiCs8g.d.ts} +2 -2
  400. package/dist/{types-BRvs3fXN.d.cts → types-kbyIaA7p.d.cts} +3 -3
  401. package/dist/{validateConnectionStatus-DR-0h35y.cjs → validateConnectionStatus-BalWEyRk.cjs} +3 -3
  402. package/dist/{validateConnectionStatus-DR-0h35y.cjs.map → validateConnectionStatus-BalWEyRk.cjs.map} +1 -1
  403. package/dist/{validateConnectionStatus-CdTV3gsP.js → validateConnectionStatus-DyrYpn0G.js} +3 -3
  404. package/dist/{validateConnectionStatus-CdTV3gsP.js.map → validateConnectionStatus-DyrYpn0G.js.map} +1 -1
  405. package/dist/vault/index.cjs +6 -6
  406. package/dist/vault/index.cjs.map +1 -1
  407. package/dist/vault/index.d.cts +1 -1
  408. package/dist/vault/index.d.ts +1 -1
  409. package/dist/vault/index.js +6 -6
  410. package/dist/vault/index.js.map +1 -1
  411. package/dist/vault/types.d.cts +1 -1
  412. package/dist/vault/types.d.ts +1 -1
  413. package/package.json +27 -1
  414. package/surface/apps.md +5 -5
  415. package/surface/auth.md +2 -0
  416. package/surface/chat.md +2 -2
  417. package/surface/componentsMcp.md +9 -0
  418. package/surface/dataScience.md +2 -2
  419. package/surface/kaiAgent.md +2 -2
  420. package/surface/management.md +4 -2
  421. package/surface/oauth.md +1 -0
  422. package/surface/queryService.md +4 -4
  423. package/surface/queue.md +2 -2
  424. package/surface/sdk.md +0 -24
  425. package/surface/storage.md +87 -57
  426. package/dist/QueryJobTimeoutError-C7JbNGOM.js +0 -38
  427. package/dist/QueryJobTimeoutError-C7JbNGOM.js.map +0 -1
  428. package/dist/QueryJobTimeoutError-CVNPdCWX.cjs.map +0 -1
  429. package/dist/authClient-CACOwVt0.js.map +0 -1
  430. package/dist/authClient-DZcAR-eW.cjs.map +0 -1
  431. package/dist/collect-97WhfEpt.js.map +0 -1
  432. package/dist/collect-B5TCNiT1.cjs.map +0 -1
  433. package/dist/constants-BDGRQqij.cjs.map +0 -1
  434. package/dist/constants-Cifrqsls.js.map +0 -1
  435. package/dist/createFetchClient-ClWD4ua3.cjs.map +0 -1
  436. package/dist/createFetchClient-DITkTV2k.js.map +0 -1
  437. package/dist/index-BzhLY7el.d.cts +0 -254
  438. package/dist/index-CH5Sg3rk.d.ts +0 -77
  439. package/dist/index-CiwWDu-q.d.cts +0 -16
  440. package/dist/index-DCAnnlcL.d.ts +0 -16
  441. package/dist/index-DQwjlSJi.d.cts +0 -77
  442. package/dist/index-PyTPrtaL.d.ts +0 -254
  443. package/dist/jobStatus-B0E-MZ9I.cjs.map +0 -1
  444. package/dist/jobStatus-BJdbZ72V.js.map +0 -1
  445. package/dist/project-BN7YRWFS.d.cts +0 -24
  446. package/dist/project-BpWTnoQ_.d.ts +0 -24
  447. package/dist/queryService-Blfz59Ms.js.map +0 -1
  448. package/dist/queryService-RlNYw7LG.cjs.map +0 -1
  449. package/dist/queue-BrgRdtOr.cjs.map +0 -1
  450. package/dist/queue-CNvR-M23.js.map +0 -1
  451. package/dist/serviceIds-DRcoTnSd.d.cts +0 -32
  452. package/dist/serviceIds-DRcoTnSd.d.ts +0 -32
  453. package/dist/storage-76Sf_z_H.cjs.map +0 -1
  454. package/dist/storage-RkNaOFJ-.js.map +0 -1
  455. package/dist/types-1B3ioN33.d.cts +0 -1868
  456. package/dist/types-BjIuVrAZ.d.ts +0 -66
  457. package/dist/types-CGhu0tID.d.cts +0 -1298
  458. package/dist/types-CclheyE7.d.cts +0 -66
  459. package/dist/types-M9vU_ONp.d.ts +0 -1868
  460. package/dist/types-P_61P9Nd.d.ts +0 -1298
  461. package/dist/types-j30rKMe6.d.ts +0 -957
  462. package/dist/types-q5lgElyc.d.cts +0 -957
@@ -1,90 +1,69 @@
1
- import { i as poll, t as jobStatus } from "../../jobStatus-BJdbZ72V.js";
2
- import { r as QueryJobError, t as QueryJobTimeoutError } from "../../QueryJobTimeoutError-C7JbNGOM.js";
1
+ import { t as collectByOffset } from "../../collectByOffset-2XzJqmvr.js";
3
2
  import { t as ValidationError } from "../../ValidationError-DjhtNMfZ.js";
4
3
  //#region src/sdks/queryService/queryServiceSdk.ts
5
- const DEFAULT_WAIT_FOR_JOB_INTERVAL = 500;
6
- const DEFAULT_MAX_WAIT_TIME = 3e5;
7
4
  const DEFAULT_EXECUTE_QUERY_PAGE_SIZE = 5e3;
5
+ const DEFAULT_POLL_INTERVAL = 500;
6
+ const DEFAULT_TIMEOUT = 3e5;
8
7
  const assertPositiveInteger = (name, value) => {
9
8
  if (!Number.isInteger(value) || value <= 0) throw new ValidationError(`${name} must be a positive integer, got ${value}`);
10
9
  };
11
10
  /**
12
11
  * Higher-level SDK composing queryService client calls with job polling and result-page
13
- * auto-pagination for orchestrated workflows — mirrors sdks/storage's `createStorageSdk`.
12
+ * auto-pagination for orchestrated workflows.
14
13
  */
15
14
  const createQueryServiceSdk = ({ queryServiceClient }) => {
16
15
  /**
17
- * Polls a job until it reaches a terminal state (`completed`, `failed`, `canceled`).
18
- * Throws {@link QueryJobError} if the job fails, {@link QueryJobTimeoutError} if it doesn't reach
19
- * a terminal state within `maxWaitTime`.
16
+ * Fetches every page of a statement's results, merging them into a single {@link QueryResult}.
17
+ *
18
+ * - `columns`, `status`, `rowsAffected` and `message` describe the statement, so they are read off
19
+ * the first page; `collectByOffset` hands back only the rows.
20
+ * - A second consumer that needs the envelope back is the cue for a `collectPagesByOffset`
21
+ * sibling resolving `{ first, items }`, not for widening this closure.
20
22
  */
21
- const waitForJob = async (queryJobId, { interval = DEFAULT_WAIT_FOR_JOB_INTERVAL, maxWaitTime = DEFAULT_MAX_WAIT_TIME, signal } = {}) => {
22
- assertPositiveInteger("interval", interval);
23
- assertPositiveInteger("maxWaitTime", maxWaitTime);
24
- const status = await poll({
25
- pollFn: () => queryServiceClient.getQueryJob(queryJobId),
26
- until: ({ data }) => jobStatus.query.isTerminal(data.status),
27
- backoff: {
28
- type: "constant",
29
- interval
30
- },
31
- timeout: maxWaitTime,
32
- signal
33
- }).unwrap((result) => result.state === "errored" || result.state === "aborted" ? void 0 : new QueryJobTimeoutError(`Job did not complete within ${maxWaitTime}ms`, queryJobId));
34
- if (status.status === "failed") {
35
- const failedStatements = status.statements.filter((statement) => statement.status === "failed").map((statement) => ({
36
- id: statement.id,
37
- error: statement.error
38
- }));
39
- throw new QueryJobError(failedStatements[0]?.error ?? "Job failed", queryJobId, { failedStatements });
40
- }
41
- return status;
42
- };
43
- /** Fetches every page of a statement's results, merging them into a single {@link QueryResult}. */
44
23
  const fetchAllResultPages = async (queryJobId, statementId, pageSize, maxRows) => {
45
- const allData = [];
46
- let offset = 0;
47
24
  let firstPage;
48
- while (true) {
49
- const remaining = maxRows !== void 0 ? maxRows - allData.length : void 0;
50
- if (remaining !== void 0 && remaining <= 0) break;
51
- const currentPageSize = remaining !== void 0 ? Math.min(pageSize, remaining) : pageSize;
52
- const page = await queryServiceClient.getQueryResults(queryJobId, statementId, {
53
- offset,
54
- pageSize: currentPageSize
55
- });
56
- firstPage ??= page;
57
- const pageData = page.data ?? [];
58
- allData.push(...pageData);
59
- if (pageData.length < currentPageSize) break;
60
- offset += pageData.length;
61
- if (firstPage.numberOfRows !== void 0 && allData.length >= firstPage.numberOfRows) break;
62
- }
25
+ const data = await collectByOffset({
26
+ pageSize,
27
+ limit: maxRows,
28
+ fetchFrom: async (offset, pageSize) => {
29
+ const page = await queryServiceClient.getQueryResults(queryJobId, statementId, {
30
+ offset,
31
+ pageSize
32
+ });
33
+ firstPage ??= page;
34
+ return page.data ?? [];
35
+ }
36
+ });
63
37
  if (!firstPage) throw new Error(`No result pages returned for statement ${statementId}`);
64
38
  return {
65
39
  ...firstPage,
66
- data: allData
40
+ data
67
41
  };
68
42
  };
69
43
  /**
70
44
  * Submits a query job, waits for completion, and fetches results for every statement —
71
45
  * auto-paginating each statement's results so sets larger than `pageSize` come back in full
72
46
  * instead of being truncated at the API's default page size.
47
+ *
48
+ * - Throws {@link QueryJobError} when the job ended `failed`, carrying the failed statements.
49
+ * - Throws the poll's failure when the wait timed out, was aborted or ran out of attempts.
73
50
  */
74
51
  const executeQuery = async (branchId, workspaceId, body, options = {}) => {
75
- const { pageSize = DEFAULT_EXECUTE_QUERY_PAGE_SIZE, maxRows, ...waitOptions } = options;
52
+ const { pageSize = DEFAULT_EXECUTE_QUERY_PAGE_SIZE, maxRows, interval = DEFAULT_POLL_INTERVAL, timeout = DEFAULT_TIMEOUT, ...pollOptions } = options;
76
53
  assertPositiveInteger("pageSize", pageSize);
77
54
  if (maxRows !== void 0) assertPositiveInteger("maxRows", maxRows);
78
55
  const { queryJobId } = await queryServiceClient.createQueryJob(branchId, workspaceId, body);
79
- const status = await waitForJob(queryJobId, waitOptions);
56
+ const status = await queryServiceClient.poller({
57
+ init: { id: queryJobId },
58
+ interval,
59
+ timeout,
60
+ ...pollOptions
61
+ }).wait();
80
62
  const results = [];
81
63
  for (const statement of status.statements) results.push(await fetchAllResultPages(queryJobId, statement.id, pageSize, maxRows));
82
64
  return results;
83
65
  };
84
- return {
85
- waitForJob,
86
- executeQuery
87
- };
66
+ return { executeQuery };
88
67
  };
89
68
  //#endregion
90
69
  export { createQueryServiceSdk };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/sdks/queryService/queryServiceSdk.ts"],"sourcesContent":["import type { createQueryServiceClient } from '../../clients/queryService';\nimport type {\n GetQueryJobPath,\n JobStatusResponse,\n PostQueryBody,\n PostQueryPath,\n QueryResult,\n} from '../../clients/queryService/types';\nimport { jobStatus } from '../../domain/jobStatus';\nimport { QueryJobError, QueryJobTimeoutError, ValidationError } from '../../errors';\nimport { poll } from '../../utils/async';\n\nconst DEFAULT_WAIT_FOR_JOB_INTERVAL = 500; // ms, the shortest wait the poll engine takes\nconst DEFAULT_MAX_WAIT_TIME = 300_000; // 5 minutes\nconst DEFAULT_EXECUTE_QUERY_PAGE_SIZE = 5000;\n\nconst assertPositiveInteger = (name: string, value: number) => {\n if (!Number.isInteger(value) || value <= 0) {\n throw new ValidationError(`${name} must be a positive integer, got ${value}`);\n }\n};\n\nexport type WaitForJobOptions = {\n /** Poll interval in ms, floored at 500 by the poll engine. Default: 500. */\n interval?: number;\n /** Give up and throw {@link QueryJobTimeoutError} after this many ms. Default: 300_000 (5 min). */\n maxWaitTime?: number;\n signal?: AbortSignal;\n};\n\nexport type ExecuteQueryOptions = WaitForJobOptions & {\n /** Page size used internally while auto-paginating each statement's results. Default: 5000. */\n pageSize?: number;\n /**\n * Caps the number of rows fetched per statement. Pagination stops once this many rows have been\n * collected. Default: unlimited (fetch every row).\n */\n maxRows?: number;\n};\n\ntype QueryServiceSdkOptions = {\n queryServiceClient: ReturnType<typeof createQueryServiceClient>;\n};\n\n/**\n * Higher-level SDK composing queryService client calls with job polling and result-page\n * auto-pagination for orchestrated workflows — mirrors sdks/storage's `createStorageSdk`.\n */\nexport const createQueryServiceSdk = ({ queryServiceClient }: QueryServiceSdkOptions) => {\n /**\n * Polls a job until it reaches a terminal state (`completed`, `failed`, `canceled`).\n * Throws {@link QueryJobError} if the job fails, {@link QueryJobTimeoutError} if it doesn't reach\n * a terminal state within `maxWaitTime`.\n */\n const waitForJob = async (\n queryJobId: GetQueryJobPath['queryJobId'],\n {\n interval = DEFAULT_WAIT_FOR_JOB_INTERVAL,\n maxWaitTime = DEFAULT_MAX_WAIT_TIME,\n signal,\n }: WaitForJobOptions = {},\n ): Promise<JobStatusResponse> => {\n assertPositiveInteger('interval', interval);\n assertPositiveInteger('maxWaitTime', maxWaitTime);\n\n const status = await poll({\n pollFn: () => queryServiceClient.getQueryJob(queryJobId),\n until: ({ data }) => jobStatus.query.isTerminal(data.status),\n backoff: { type: 'constant', interval },\n timeout: maxWaitTime,\n signal,\n }).unwrap((result) =>\n result.state === 'errored' || result.state === 'aborted'\n ? undefined\n : new QueryJobTimeoutError(`Job did not complete within ${maxWaitTime}ms`, queryJobId),\n );\n if (status.status === 'failed') {\n const failedStatements = status.statements\n .filter((statement) => statement.status === 'failed')\n .map((statement) => ({ id: statement.id, error: statement.error }));\n\n throw new QueryJobError(failedStatements[0]?.error ?? 'Job failed', queryJobId, {\n failedStatements,\n });\n }\n\n return status;\n };\n\n /** Fetches every page of a statement's results, merging them into a single {@link QueryResult}. */\n const fetchAllResultPages = async (\n queryJobId: string,\n statementId: string,\n pageSize: number,\n maxRows: number | undefined,\n ): Promise<QueryResult> => {\n const allData: NonNullable<QueryResult['data']> = [];\n let offset = 0;\n let firstPage: QueryResult | undefined;\n\n while (true) {\n const remaining = maxRows !== undefined ? maxRows - allData.length : undefined;\n if (remaining !== undefined && remaining <= 0) break;\n\n const currentPageSize = remaining !== undefined ? Math.min(pageSize, remaining) : pageSize;\n\n const page = await queryServiceClient.getQueryResults(queryJobId, statementId, {\n offset,\n pageSize: currentPageSize,\n });\n firstPage ??= page;\n\n const pageData = page.data ?? [];\n allData.push(...pageData);\n\n // Stop once a page is shorter than requested (end of the result set, or a statement like DDL\n // that has no rows at all) or once `numberOfRows` — known from the first page — is reached.\n if (pageData.length < currentPageSize) break;\n offset += pageData.length;\n if (firstPage.numberOfRows !== undefined && allData.length >= firstPage.numberOfRows) break;\n }\n\n if (!firstPage) {\n // Unreachable: the loop always issues at least one request (pageSize/maxRows are validated as\n // positive integers by executeQuery), assigning firstPage on the first iteration.\n throw new Error(`No result pages returned for statement ${statementId}`);\n }\n\n return { ...firstPage, data: allData };\n };\n\n /**\n * Submits a query job, waits for completion, and fetches results for every statement —\n * auto-paginating each statement's results so sets larger than `pageSize` come back in full\n * instead of being truncated at the API's default page size.\n */\n const executeQuery = async (\n branchId: PostQueryPath['branchId'],\n workspaceId: PostQueryPath['workspaceId'],\n body: PostQueryBody,\n options: ExecuteQueryOptions = {},\n ): Promise<QueryResult[]> => {\n const { pageSize = DEFAULT_EXECUTE_QUERY_PAGE_SIZE, maxRows, ...waitOptions } = options;\n assertPositiveInteger('pageSize', pageSize);\n if (maxRows !== undefined) assertPositiveInteger('maxRows', maxRows);\n\n const { queryJobId } = await queryServiceClient.createQueryJob(branchId, workspaceId, body);\n const status = await waitForJob(queryJobId, waitOptions);\n\n const results: QueryResult[] = [];\n for (const statement of status.statements) {\n results.push(await fetchAllResultPages(queryJobId, statement.id, pageSize, maxRows));\n }\n\n return results;\n };\n\n return {\n waitForJob,\n executeQuery,\n };\n};\n"],"mappings":";;;;AAYA,MAAM,gCAAgC;AACtC,MAAM,wBAAwB;AAC9B,MAAM,kCAAkC;AAExC,MAAM,yBAAyB,MAAc,UAAkB;CAC7D,IAAI,CAAC,OAAO,UAAU,KAAK,KAAK,SAAS,GACvC,MAAM,IAAI,gBAAgB,GAAG,KAAK,mCAAmC,OAAO;AAEhF;;;;;AA4BA,MAAa,yBAAyB,EAAE,yBAAiD;;;;;;CAMvF,MAAM,aAAa,OACjB,YACA,EACE,WAAW,+BACX,cAAc,uBACd,WACqB,CAAC,MACO;EAC/B,sBAAsB,YAAY,QAAQ;EAC1C,sBAAsB,eAAe,WAAW;EAEhD,MAAM,SAAS,MAAM,KAAK;GACxB,cAAc,mBAAmB,YAAY,UAAU;GACvD,QAAQ,EAAE,WAAW,UAAU,MAAM,WAAW,KAAK,MAAM;GAC3D,SAAS;IAAE,MAAM;IAAY;GAAS;GACtC,SAAS;GACT;EACF,CAAC,CAAC,CAAC,QAAQ,WACT,OAAO,UAAU,aAAa,OAAO,UAAU,YAC3C,KAAA,IACA,IAAI,qBAAqB,+BAA+B,YAAY,KAAK,UAAU,CACzF;EACA,IAAI,OAAO,WAAW,UAAU;GAC9B,MAAM,mBAAmB,OAAO,WAC7B,QAAQ,cAAc,UAAU,WAAW,QAAQ,CAAC,CACpD,KAAK,eAAe;IAAE,IAAI,UAAU;IAAI,OAAO,UAAU;GAAM,EAAE;GAEpE,MAAM,IAAI,cAAc,iBAAiB,EAAE,EAAE,SAAS,cAAc,YAAY,EAC9E,iBACF,CAAC;EACH;EAEA,OAAO;CACT;;CAGA,MAAM,sBAAsB,OAC1B,YACA,aACA,UACA,YACyB;EACzB,MAAM,UAA4C,CAAC;EACnD,IAAI,SAAS;EACb,IAAI;EAEJ,OAAO,MAAM;GACX,MAAM,YAAY,YAAY,KAAA,IAAY,UAAU,QAAQ,SAAS,KAAA;GACrE,IAAI,cAAc,KAAA,KAAa,aAAa,GAAG;GAE/C,MAAM,kBAAkB,cAAc,KAAA,IAAY,KAAK,IAAI,UAAU,SAAS,IAAI;GAElF,MAAM,OAAO,MAAM,mBAAmB,gBAAgB,YAAY,aAAa;IAC7E;IACA,UAAU;GACZ,CAAC;GACD,cAAc;GAEd,MAAM,WAAW,KAAK,QAAQ,CAAC;GAC/B,QAAQ,KAAK,GAAG,QAAQ;GAIxB,IAAI,SAAS,SAAS,iBAAiB;GACvC,UAAU,SAAS;GACnB,IAAI,UAAU,iBAAiB,KAAA,KAAa,QAAQ,UAAU,UAAU,cAAc;EACxF;EAEA,IAAI,CAAC,WAGH,MAAM,IAAI,MAAM,0CAA0C,aAAa;EAGzE,OAAO;GAAE,GAAG;GAAW,MAAM;EAAQ;CACvC;;;;;;CAOA,MAAM,eAAe,OACnB,UACA,aACA,MACA,UAA+B,CAAC,MACL;EAC3B,MAAM,EAAE,WAAW,iCAAiC,SAAS,GAAG,gBAAgB;EAChF,sBAAsB,YAAY,QAAQ;EAC1C,IAAI,YAAY,KAAA,GAAW,sBAAsB,WAAW,OAAO;EAEnE,MAAM,EAAE,eAAe,MAAM,mBAAmB,eAAe,UAAU,aAAa,IAAI;EAC1F,MAAM,SAAS,MAAM,WAAW,YAAY,WAAW;EAEvD,MAAM,UAAyB,CAAC;EAChC,KAAK,MAAM,aAAa,OAAO,YAC7B,QAAQ,KAAK,MAAM,oBAAoB,YAAY,UAAU,IAAI,UAAU,OAAO,CAAC;EAGrF,OAAO;CACT;CAEA,OAAO;EACL;EACA;CACF;AACF"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/sdks/queryService/queryServiceSdk.ts"],"sourcesContent":["import type { createQueryServiceClient } from '../../clients/queryService';\nimport type {\n PostQueryBody,\n PostQueryPath,\n QueryJobPollOptions,\n QueryResult,\n} from '../../clients/queryService/types';\nimport { ValidationError } from '../../errors';\nimport { collectByOffset } from '../../utils/async';\n\nconst DEFAULT_EXECUTE_QUERY_PAGE_SIZE = 5000;\nconst DEFAULT_POLL_INTERVAL = 500;\nconst DEFAULT_TIMEOUT = 300_000;\n\nconst assertPositiveInteger = (name: string, value: number) => {\n if (!Number.isInteger(value) || value <= 0) {\n throw new ValidationError(`${name} must be a positive integer, got ${value}`);\n }\n};\n\nexport type ExecuteQueryOptions = Omit<QueryJobPollOptions, 'interval' | 'timeout'> & {\n /** Poll interval in ms. Default: 500. */\n interval?: number;\n /** Give up after this many ms. Default: 300_000 (5 min). */\n timeout?: number;\n /** Page size used internally while auto-paginating each statement's results. Default: 5000. */\n pageSize?: number;\n /**\n * Caps the number of rows fetched per statement. Pagination stops once this many rows have been\n * collected. Default: unlimited (fetch every row).\n */\n maxRows?: number;\n};\n\ntype QueryServiceSdkOptions = {\n queryServiceClient: ReturnType<typeof createQueryServiceClient>;\n};\n\n/**\n * Higher-level SDK composing queryService client calls with job polling and result-page\n * auto-pagination for orchestrated workflows.\n */\nexport const createQueryServiceSdk = ({ queryServiceClient }: QueryServiceSdkOptions) => {\n /**\n * Fetches every page of a statement's results, merging them into a single {@link QueryResult}.\n *\n * - `columns`, `status`, `rowsAffected` and `message` describe the statement, so they are read off\n * the first page; `collectByOffset` hands back only the rows.\n * - A second consumer that needs the envelope back is the cue for a `collectPagesByOffset`\n * sibling resolving `{ first, items }`, not for widening this closure.\n */\n const fetchAllResultPages = async (\n queryJobId: string,\n statementId: string,\n pageSize: number,\n maxRows: number | undefined,\n ): Promise<QueryResult> => {\n let firstPage: QueryResult | undefined;\n\n const data = await collectByOffset({\n pageSize,\n limit: maxRows,\n fetchFrom: async (offset, pageSize) => {\n const page = await queryServiceClient.getQueryResults(queryJobId, statementId, {\n offset,\n pageSize,\n });\n firstPage ??= page;\n\n return page.data ?? [];\n },\n });\n\n if (!firstPage) throw new Error(`No result pages returned for statement ${statementId}`);\n\n return { ...firstPage, data };\n };\n\n /**\n * Submits a query job, waits for completion, and fetches results for every statement —\n * auto-paginating each statement's results so sets larger than `pageSize` come back in full\n * instead of being truncated at the API's default page size.\n *\n * - Throws {@link QueryJobError} when the job ended `failed`, carrying the failed statements.\n * - Throws the poll's failure when the wait timed out, was aborted or ran out of attempts.\n */\n const executeQuery = async (\n branchId: PostQueryPath['branchId'],\n workspaceId: PostQueryPath['workspaceId'],\n body: PostQueryBody,\n options: ExecuteQueryOptions = {},\n ): Promise<QueryResult[]> => {\n const {\n pageSize = DEFAULT_EXECUTE_QUERY_PAGE_SIZE,\n maxRows,\n interval = DEFAULT_POLL_INTERVAL,\n timeout = DEFAULT_TIMEOUT,\n ...pollOptions\n } = options;\n assertPositiveInteger('pageSize', pageSize);\n if (maxRows !== undefined) assertPositiveInteger('maxRows', maxRows);\n\n const { queryJobId } = await queryServiceClient.createQueryJob(branchId, workspaceId, body);\n const status = await queryServiceClient\n .poller({ init: { id: queryJobId }, interval, timeout, ...pollOptions })\n .wait();\n const results: QueryResult[] = [];\n for (const statement of status.statements) {\n results.push(await fetchAllResultPages(queryJobId, statement.id, pageSize, maxRows));\n }\n\n return results;\n };\n\n return {\n executeQuery,\n };\n};\n"],"mappings":";;;AAUA,MAAM,kCAAkC;AACxC,MAAM,wBAAwB;AAC9B,MAAM,kBAAkB;AAExB,MAAM,yBAAyB,MAAc,UAAkB;CAC7D,IAAI,CAAC,OAAO,UAAU,KAAK,KAAK,SAAS,GACvC,MAAM,IAAI,gBAAgB,GAAG,KAAK,mCAAmC,OAAO;AAEhF;;;;;AAwBA,MAAa,yBAAyB,EAAE,yBAAiD;;;;;;;;;CASvF,MAAM,sBAAsB,OAC1B,YACA,aACA,UACA,YACyB;EACzB,IAAI;EAEJ,MAAM,OAAO,MAAM,gBAAgB;GACjC;GACA,OAAO;GACP,WAAW,OAAO,QAAQ,aAAa;IACrC,MAAM,OAAO,MAAM,mBAAmB,gBAAgB,YAAY,aAAa;KAC7E;KACA;IACF,CAAC;IACD,cAAc;IAEd,OAAO,KAAK,QAAQ,CAAC;GACvB;EACF,CAAC;EAED,IAAI,CAAC,WAAW,MAAM,IAAI,MAAM,0CAA0C,aAAa;EAEvF,OAAO;GAAE,GAAG;GAAW;EAAK;CAC9B;;;;;;;;;CAUA,MAAM,eAAe,OACnB,UACA,aACA,MACA,UAA+B,CAAC,MACL;EAC3B,MAAM,EACJ,WAAW,iCACX,SACA,WAAW,uBACX,UAAU,iBACV,GAAG,gBACD;EACJ,sBAAsB,YAAY,QAAQ;EAC1C,IAAI,YAAY,KAAA,GAAW,sBAAsB,WAAW,OAAO;EAEnE,MAAM,EAAE,eAAe,MAAM,mBAAmB,eAAe,UAAU,aAAa,IAAI;EAC1F,MAAM,SAAS,MAAM,mBAClB,OAAO;GAAE,MAAM,EAAE,IAAI,WAAW;GAAG;GAAU;GAAS,GAAG;EAAY,CAAC,CAAC,CACvE,KAAK;EACR,MAAM,UAAyB,CAAC;EAChC,KAAK,MAAM,aAAa,OAAO,YAC7B,QAAQ,KAAK,MAAM,oBAAoB,YAAY,UAAU,IAAI,UAAU,OAAO,CAAC;EAGrF,OAAO;CACT;CAEA,OAAO,EACL,aACF;AACF"}
@@ -1,4 +1,4 @@
1
- import { A as CONSTRAINT_TYPES, D as UpdateSemanticObjectMeta, F as SQL_DIALECTS, M as RELATIONSHIP_JOIN_TYPES, N as RULE_OPERATORS, O as CONSTRAINT_SCOPES, P as SEMANTIC_OBJECT_SCOPES, T as SemanticUnreadableObjectRef, _ as SemanticObject, a as SemanticChildObjectType, b as SemanticObjectType, g as SemanticModelData, h as SemanticModelChildRef, i as SemanticChildObjectDataMap, j as FIELD_ROLES, k as CONSTRAINT_SEVERITIES, m as SemanticMetricData, n as MetastoreClient, o as SemanticConstraintData, p as SemanticGlossaryData, t as CreateSemanticObjectMeta, u as SemanticDatasetData, x as SemanticRelationshipData } from "../../types-C8oZX0oP.cjs";
1
+ import { A as CONSTRAINT_TYPES, D as UpdateSemanticObjectMeta, F as SQL_DIALECTS, M as RELATIONSHIP_JOIN_TYPES, N as RULE_OPERATORS, O as CONSTRAINT_SCOPES, P as SEMANTIC_OBJECT_SCOPES, T as SemanticUnreadableObjectRef, _ as SemanticObject, a as SemanticChildObjectType, b as SemanticObjectType, g as SemanticModelData, h as SemanticModelChildRef, i as SemanticChildObjectDataMap, j as FIELD_ROLES, k as CONSTRAINT_SEVERITIES, m as SemanticMetricData, n as MetastoreClient, o as SemanticConstraintData, p as SemanticGlossaryData, t as CreateSemanticObjectMeta, u as SemanticDatasetData, x as SemanticRelationshipData } from "../../types-CMKIdreQ.cjs";
2
2
  import { z } from "zod";
3
3
  //#region src/sdks/semanticLayer/errorMessage.d.ts
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { A as CONSTRAINT_TYPES, D as UpdateSemanticObjectMeta, F as SQL_DIALECTS, M as RELATIONSHIP_JOIN_TYPES, N as RULE_OPERATORS, O as CONSTRAINT_SCOPES, P as SEMANTIC_OBJECT_SCOPES, T as SemanticUnreadableObjectRef, _ as SemanticObject, a as SemanticChildObjectType, b as SemanticObjectType, g as SemanticModelData, h as SemanticModelChildRef, i as SemanticChildObjectDataMap, j as FIELD_ROLES, k as CONSTRAINT_SEVERITIES, m as SemanticMetricData, n as MetastoreClient, o as SemanticConstraintData, p as SemanticGlossaryData, t as CreateSemanticObjectMeta, u as SemanticDatasetData, x as SemanticRelationshipData } from "../../types-DiE081mn.js";
1
+ import { A as CONSTRAINT_TYPES, D as UpdateSemanticObjectMeta, F as SQL_DIALECTS, M as RELATIONSHIP_JOIN_TYPES, N as RULE_OPERATORS, O as CONSTRAINT_SCOPES, P as SEMANTIC_OBJECT_SCOPES, T as SemanticUnreadableObjectRef, _ as SemanticObject, a as SemanticChildObjectType, b as SemanticObjectType, g as SemanticModelData, h as SemanticModelChildRef, i as SemanticChildObjectDataMap, j as FIELD_ROLES, k as CONSTRAINT_SEVERITIES, m as SemanticMetricData, n as MetastoreClient, o as SemanticConstraintData, p as SemanticGlossaryData, t as CreateSemanticObjectMeta, u as SemanticDatasetData, x as SemanticRelationshipData } from "../../types-BiBBKcin.js";
2
2
  import { z } from "zod";
3
3
  //#region src/sdks/semanticLayer/errorMessage.d.ts
4
4
  /**
@@ -1,2 +1,2 @@
1
- import { C as SemanticRuleExpression, D as UpdateSemanticObjectMeta, E as SemanticValidationQuery, S as SemanticRelationshipJoinType, T as SemanticUnreadableObjectRef, _ as SemanticObject, a as SemanticChildObjectType, b as SemanticObjectType, c as SemanticConstraintSeverity, d as SemanticFieldData, f as SemanticFieldRole, g as SemanticModelData, h as SemanticModelChildRef, i as SemanticChildObjectDataMap, l as SemanticConstraintType, m as SemanticMetricData, n as MetastoreClient, o as SemanticConstraintData, p as SemanticGlossaryData, r as SemanticAiMetadata, s as SemanticConstraintScope, t as CreateSemanticObjectMeta, u as SemanticDatasetData, v as SemanticObjectMeta, w as SemanticRuleOperator, x as SemanticRelationshipData, y as SemanticObjectScope } from "../../types-C8oZX0oP.cjs";
1
+ import { C as SemanticRuleExpression, D as UpdateSemanticObjectMeta, E as SemanticValidationQuery, S as SemanticRelationshipJoinType, T as SemanticUnreadableObjectRef, _ as SemanticObject, a as SemanticChildObjectType, b as SemanticObjectType, c as SemanticConstraintSeverity, d as SemanticFieldData, f as SemanticFieldRole, g as SemanticModelData, h as SemanticModelChildRef, i as SemanticChildObjectDataMap, l as SemanticConstraintType, m as SemanticMetricData, n as MetastoreClient, o as SemanticConstraintData, p as SemanticGlossaryData, r as SemanticAiMetadata, s as SemanticConstraintScope, t as CreateSemanticObjectMeta, u as SemanticDatasetData, v as SemanticObjectMeta, w as SemanticRuleOperator, x as SemanticRelationshipData, y as SemanticObjectScope } from "../../types-CMKIdreQ.cjs";
2
2
  export { CreateSemanticObjectMeta, MetastoreClient, SemanticAiMetadata, SemanticChildObjectDataMap, SemanticChildObjectType, SemanticConstraintData, SemanticConstraintScope, SemanticConstraintSeverity, SemanticConstraintType, SemanticDatasetData, SemanticFieldData, SemanticFieldRole, SemanticGlossaryData, SemanticMetricData, SemanticModelChildRef, SemanticModelData, SemanticObject, SemanticObjectMeta, SemanticObjectScope, SemanticObjectType, SemanticRelationshipData, SemanticRelationshipJoinType, SemanticRuleExpression, SemanticRuleOperator, SemanticUnreadableObjectRef, SemanticValidationQuery, UpdateSemanticObjectMeta };
@@ -1,2 +1,2 @@
1
- import { C as SemanticRuleExpression, D as UpdateSemanticObjectMeta, E as SemanticValidationQuery, S as SemanticRelationshipJoinType, T as SemanticUnreadableObjectRef, _ as SemanticObject, a as SemanticChildObjectType, b as SemanticObjectType, c as SemanticConstraintSeverity, d as SemanticFieldData, f as SemanticFieldRole, g as SemanticModelData, h as SemanticModelChildRef, i as SemanticChildObjectDataMap, l as SemanticConstraintType, m as SemanticMetricData, n as MetastoreClient, o as SemanticConstraintData, p as SemanticGlossaryData, r as SemanticAiMetadata, s as SemanticConstraintScope, t as CreateSemanticObjectMeta, u as SemanticDatasetData, v as SemanticObjectMeta, w as SemanticRuleOperator, x as SemanticRelationshipData, y as SemanticObjectScope } from "../../types-DiE081mn.js";
1
+ import { C as SemanticRuleExpression, D as UpdateSemanticObjectMeta, E as SemanticValidationQuery, S as SemanticRelationshipJoinType, T as SemanticUnreadableObjectRef, _ as SemanticObject, a as SemanticChildObjectType, b as SemanticObjectType, c as SemanticConstraintSeverity, d as SemanticFieldData, f as SemanticFieldRole, g as SemanticModelData, h as SemanticModelChildRef, i as SemanticChildObjectDataMap, l as SemanticConstraintType, m as SemanticMetricData, n as MetastoreClient, o as SemanticConstraintData, p as SemanticGlossaryData, r as SemanticAiMetadata, s as SemanticConstraintScope, t as CreateSemanticObjectMeta, u as SemanticDatasetData, v as SemanticObjectMeta, w as SemanticRuleOperator, x as SemanticRelationshipData, y as SemanticObjectScope } from "../../types-BiBBKcin.js";
2
2
  export { CreateSemanticObjectMeta, MetastoreClient, SemanticAiMetadata, SemanticChildObjectDataMap, SemanticChildObjectType, SemanticConstraintData, SemanticConstraintScope, SemanticConstraintSeverity, SemanticConstraintType, SemanticDatasetData, SemanticFieldData, SemanticFieldRole, SemanticGlossaryData, SemanticMetricData, SemanticModelChildRef, SemanticModelData, SemanticObject, SemanticObjectMeta, SemanticObjectScope, SemanticObjectType, SemanticRelationshipData, SemanticRelationshipJoinType, SemanticRuleExpression, SemanticRuleOperator, SemanticUnreadableObjectRef, SemanticValidationQuery, UpdateSemanticObjectMeta };
@@ -1,122 +1,4 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- //#region src/sdks/storage/storageSdk.ts
3
- const createStorageSdk = ({ storageClient }) => {
4
- const waitForJob = async (job, options) => {
5
- return storageClient.poller(job, {
6
- interval: options?.interval,
7
- maxAttempts: options?.maxAttempts,
8
- signal: options?.abortSignal
9
- }).unwrap();
10
- };
11
- const createTable = async (input, options) => {
12
- const job = await storageClient.tables.createTableAsync(input, options?.abortSignal);
13
- return waitForJob(job, options);
14
- };
15
- const createTableDefinition = async (input, options) => {
16
- const job = await storageClient.tables.createTableDefinitionAsync(input, options?.abortSignal);
17
- return waitForJob(job, options);
18
- };
19
- const importFromFile = async (input, options) => {
20
- const job = await storageClient.tables.importAsync(input, options?.abortSignal);
21
- return waitForJob(job, options);
22
- };
23
- const exportToFile = async (input, options) => {
24
- const job = await storageClient.tables.exportAsync(input, options?.abortSignal);
25
- return waitForJob(job, options);
26
- };
27
- const createBucketListing = async (input, options) => {
28
- const job = await storageClient.bucketListings.createListingAsync(input, options?.abortSignal);
29
- return waitForJob(job, options);
30
- };
31
- const updateBucketListing = async (input, options) => {
32
- const job = await storageClient.bucketListings.updateListingAsync(input, options?.abortSignal);
33
- return waitForJob(job, options);
34
- };
35
- const deleteBucketListing = async (input, options) => {
36
- const job = await storageClient.bucketListings.deleteListingAsync(input, options?.abortSignal);
37
- return waitForJob(job, options);
38
- };
39
- const shareBucketToOrganization = async (input, options) => {
40
- const job = await storageClient.bucketSharing.shareBucketToOrganizationAsync(input, options?.abortSignal);
41
- return waitForJob(job, options);
42
- };
43
- const shareBucketToOrganizationProject = async (input, options) => {
44
- const job = await storageClient.bucketSharing.shareBucketToOrganizationProjectAsync(input, options?.abortSignal);
45
- return waitForJob(job, options);
46
- };
47
- const shareBucketToProjects = async (input, options) => {
48
- const job = await storageClient.bucketSharing.shareBucketToProjectsAsync(input, options?.abortSignal);
49
- return waitForJob(job, options);
50
- };
51
- const shareBucketToUsers = async (input, options) => {
52
- const job = await storageClient.bucketSharing.shareBucketToUsersAsync(input, options?.abortSignal);
53
- return waitForJob(job, options);
54
- };
55
- const unshareBucket = async (input, options) => {
56
- const job = await storageClient.bucketSharing.unshareBucketAsync(input, options?.abortSignal);
57
- return waitForJob(job, options);
58
- };
59
- const forceUnlinkBucket = async (input, options) => {
60
- const job = await storageClient.bucketSharing.forceUnlinkBucketAsync(input, options?.abortSignal);
61
- return waitForJob(job, options);
62
- };
63
- const registerBucket = async (input, options) => {
64
- const job = await storageClient.bucketExternal.registerBucketAsync(input, options?.abortSignal);
65
- return waitForJob(job, options);
66
- };
67
- const refreshExternalBucket = async (input, options) => {
68
- const job = await storageClient.bucketExternal.refreshExternalBucketAsync(input, options?.abortSignal);
69
- return waitForJob(job, options);
70
- };
71
- const createSnapshot = async (input, options) => {
72
- const job = await storageClient.snapshots.createSnapshotAsync(input, options?.abortSignal);
73
- return waitForJob(job, options);
74
- };
75
- const pullTable = async (input, options) => {
76
- const job = await storageClient.tables.pullTableAsync(input, options?.abortSignal);
77
- return waitForJob(job, options);
78
- };
79
- const addTableColumn = async (input, options) => {
80
- const job = await storageClient.columns.addTableColumnAsync(input, options?.abortSignal);
81
- return waitForJob(job, options);
82
- };
83
- const deleteTableColumn = async (input, options) => {
84
- const job = await storageClient.columns.deleteTableColumnAsync(input, options?.abortSignal);
85
- return waitForJob(job, options);
86
- };
87
- const createTablePrimaryKey = async (input, options) => {
88
- const job = await storageClient.columns.createTablePrimaryKeyAsync(input, options?.abortSignal);
89
- return waitForJob(job, options);
90
- };
91
- const removeTablePrimaryKey = async (input, options) => {
92
- const job = await storageClient.columns.removeTablePrimaryKeyAsync(input, options?.abortSignal);
93
- return waitForJob(job, options);
94
- };
95
- return {
96
- createTable,
97
- createTableDefinition,
98
- importFromFile,
99
- exportToFile,
100
- createBucketListing,
101
- updateBucketListing,
102
- deleteBucketListing,
103
- shareBucketToOrganization,
104
- shareBucketToOrganizationProject,
105
- shareBucketToProjects,
106
- shareBucketToUsers,
107
- unshareBucket,
108
- forceUnlinkBucket,
109
- registerBucket,
110
- refreshExternalBucket,
111
- createSnapshot,
112
- pullTable,
113
- addTableColumn,
114
- deleteTableColumn,
115
- createTablePrimaryKey,
116
- removeTablePrimaryKey
117
- };
118
- };
119
- //#endregion
120
2
  //#region src/sdks/storage/tableIdParser.ts
121
3
  function parseTableId(tableId, defaultStage, defaultBucket) {
122
4
  const parts = tableId.match(/^(in|out)?\.(.+)?\.(.+)?$/);
@@ -241,7 +123,6 @@ const prefixTagsWithDevBranchId = (tags, branchId = null, options = {}) => {
241
123
  //#endregion
242
124
  exports.FQID_TYPES = FQID_TYPES;
243
125
  exports.constructFQID = constructFQID;
244
- exports.createStorageSdk = createStorageSdk;
245
126
  exports.parse = parse;
246
127
  exports.parseCurrentDevBranchIdFromUrl = parseCurrentDevBranchIdFromUrl;
247
128
  exports.parseDevBranchId = parseDevBranchId;
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":[],"sources":["../../../src/sdks/storage/storageSdk.ts","../../../src/sdks/storage/tableIdParser.ts","../../../src/sdks/storage/fqid.ts","../../../src/sdks/storage/devBranch.ts"],"sourcesContent":["import type { createStorageClient } from '../../clients/storage';\nimport type {\n RefreshExternalBucketInput,\n RegisterBucketInput,\n} from '../../clients/storage/bucketExternal/types';\nimport type {\n CreateBucketListingInput,\n DeleteBucketListingInput,\n UpdateBucketListingInput,\n} from '../../clients/storage/bucketListings/types';\nimport type {\n ForceUnlinkBucketInput,\n ShareBucketToOrganizationInput,\n ShareBucketToOrganizationProjectInput,\n ShareBucketToProjectsInput,\n ShareBucketToUsersInput,\n UnshareBucketInput,\n} from '../../clients/storage/bucketSharing/types';\nimport type {\n AddTableColumnInput,\n CreateTablePrimaryKeyInput,\n DeleteTableColumnInput,\n RemoveTablePrimaryKeyInput,\n} from '../../clients/storage/columns/types';\nimport type { Job, JobOperation } from '../../clients/storage/jobs/types';\nimport type { CreateSnapshotInput } from '../../clients/storage/snapshots/types';\nimport type {\n CreateTableAsyncInput,\n CreateTableDefinitionInput,\n ExportAsyncInput,\n ImportAsyncInput,\n PullTableAsyncInput,\n} from '../../clients/storage/tables/types';\n\ntype Options = {\n interval?: number;\n maxAttempts?: number;\n abortSignal?: AbortSignal;\n};\n\ntype StorageSdkOptions = {\n storageClient: ReturnType<typeof createStorageClient>;\n};\n\nexport const createStorageSdk = ({ storageClient }: StorageSdkOptions) => {\n const waitForJob = async <Operation extends JobOperation | string>(\n job: Job<Operation> & { operationName: Operation },\n options?: Options,\n ) => {\n // A poll reports its ending; this SDK throws, so a caller can keep awaiting the job it asked for.\n return storageClient\n .poller<Operation>(job, {\n interval: options?.interval,\n maxAttempts: options?.maxAttempts,\n signal: options?.abortSignal,\n })\n .unwrap();\n };\n\n const createTable = async (input: CreateTableAsyncInput, options?: Options) => {\n const job = await storageClient.tables.createTableAsync(input, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const createTableDefinition = async (input: CreateTableDefinitionInput, options?: Options) => {\n const job = await storageClient.tables.createTableDefinitionAsync(input, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const importFromFile = async (input: ImportAsyncInput, options?: Options) => {\n const job = await storageClient.tables.importAsync(input, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const exportToFile = async (input: ExportAsyncInput, options?: Options) => {\n const job = await storageClient.tables.exportAsync(input, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const createBucketListing = async (input: CreateBucketListingInput, options?: Options) => {\n const job = await storageClient.bucketListings.createListingAsync(input, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const updateBucketListing = async (input: UpdateBucketListingInput, options?: Options) => {\n const job = await storageClient.bucketListings.updateListingAsync(input, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const deleteBucketListing = async (input: DeleteBucketListingInput, options?: Options) => {\n const job = await storageClient.bucketListings.deleteListingAsync(input, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const shareBucketToOrganization = async (\n input: ShareBucketToOrganizationInput,\n options?: Options,\n ) => {\n const job = await storageClient.bucketSharing.shareBucketToOrganizationAsync(\n input,\n options?.abortSignal,\n );\n return waitForJob(job, options);\n };\n\n const shareBucketToOrganizationProject = async (\n input: ShareBucketToOrganizationProjectInput,\n options?: Options,\n ) => {\n const job = await storageClient.bucketSharing.shareBucketToOrganizationProjectAsync(\n input,\n options?.abortSignal,\n );\n return waitForJob(job, options);\n };\n\n const shareBucketToProjects = async (input: ShareBucketToProjectsInput, options?: Options) => {\n const job = await storageClient.bucketSharing.shareBucketToProjectsAsync(\n input,\n options?.abortSignal,\n );\n return waitForJob(job, options);\n };\n\n const shareBucketToUsers = async (input: ShareBucketToUsersInput, options?: Options) => {\n const job = await storageClient.bucketSharing.shareBucketToUsersAsync(\n input,\n options?.abortSignal,\n );\n return waitForJob(job, options);\n };\n\n const unshareBucket = async (input: UnshareBucketInput, options?: Options) => {\n const job = await storageClient.bucketSharing.unshareBucketAsync(input, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const forceUnlinkBucket = async (input: ForceUnlinkBucketInput, options?: Options) => {\n const job = await storageClient.bucketSharing.forceUnlinkBucketAsync(\n input,\n options?.abortSignal,\n );\n return waitForJob(job, options);\n };\n\n const registerBucket = async (input: RegisterBucketInput, options?: Options) => {\n const job = await storageClient.bucketExternal.registerBucketAsync(input, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const refreshExternalBucket = async (input: RefreshExternalBucketInput, options?: Options) => {\n const job = await storageClient.bucketExternal.refreshExternalBucketAsync(\n input,\n options?.abortSignal,\n );\n return waitForJob(job, options);\n };\n\n const createSnapshot = async (input: CreateSnapshotInput, options?: Options) => {\n const job = await storageClient.snapshots.createSnapshotAsync(input, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const pullTable = async (input: PullTableAsyncInput, options?: Options) => {\n const job = await storageClient.tables.pullTableAsync(input, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const addTableColumn = async (input: AddTableColumnInput, options?: Options) => {\n const job = await storageClient.columns.addTableColumnAsync(input, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const deleteTableColumn = async (input: DeleteTableColumnInput, options?: Options) => {\n const job = await storageClient.columns.deleteTableColumnAsync(input, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const createTablePrimaryKey = async (input: CreateTablePrimaryKeyInput, options?: Options) => {\n const job = await storageClient.columns.createTablePrimaryKeyAsync(input, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const removeTablePrimaryKey = async (input: RemoveTablePrimaryKeyInput, options?: Options) => {\n const job = await storageClient.columns.removeTablePrimaryKeyAsync(input, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n return {\n createTable,\n createTableDefinition,\n importFromFile,\n exportToFile,\n createBucketListing,\n updateBucketListing,\n deleteBucketListing,\n shareBucketToOrganization,\n shareBucketToOrganizationProject,\n shareBucketToProjects,\n shareBucketToUsers,\n unshareBucket,\n forceUnlinkBucket,\n registerBucket,\n refreshExternalBucket,\n createSnapshot,\n pullTable,\n addTableColumn,\n deleteTableColumn,\n createTablePrimaryKey,\n removeTablePrimaryKey,\n };\n};\n","function parseTableId(tableId: string, defaultStage: string, defaultBucket: string) {\n const parts = tableId.match(/^(in|out)?\\.(.+)?\\.(.+)?$/);\n\n return {\n stage: parts ? parts[1] || defaultStage : defaultStage,\n bucket: parts ? parts[2] || defaultBucket : defaultBucket,\n table: parts ? parts[3] || '' : '',\n };\n}\n\nexport function parse(\n tableId: string | null,\n options: { defaultStage?: string; defaultBucket?: string } = {},\n) {\n const parts = parseTableId(\n tableId || '',\n options.defaultStage || '',\n options.defaultBucket || '',\n );\n\n const { stage, bucket, table } = parts;\n return {\n tableId: `${stage}.${bucket}.${table}`,\n parts,\n setPart: (partNameToSet: string, value: string) => {\n const result = (['stage', 'bucket', 'table'] as const)\n .reduce(\n (memo, partName) =>\n partName === partNameToSet ? `${memo}.${value}` : `${memo}.${parts[partName]}`,\n '',\n )\n .slice(1);\n return parse(result);\n },\n };\n}\n\nexport const tableIdParser = { parse };\n","export const FQID_TYPES = {\n organization: 'ORG',\n maintainer: 'MTR',\n project: 'PRJ',\n bucket: 'BCT',\n table: 'TBL',\n column: 'COL',\n config: 'CFG',\n component: 'CMP',\n externalTable: 'EX_TBL',\n externalColumn: 'EX_COL',\n} as const;\n\ntype FQIDTypes = typeof FQID_TYPES;\n\nexport type ParsedFQID = {\n type?: (typeof FQID_TYPES)[keyof typeof FQID_TYPES];\n organizationId?: string;\n maintainerId?: string;\n projectId?: string;\n bucketId?: string;\n tableId?: string;\n componentId?: string;\n configId?: string;\n column?: string;\n};\n\nconst isFQIDType = (value: string): value is FQIDTypes[keyof FQIDTypes] => {\n return Object.values(FQID_TYPES).includes(value as FQIDTypes[keyof FQIDTypes]);\n};\n\nconst parseFQID = (fqid?: string): ParsedFQID | Record<string, never> => {\n if (!fqid?.trim()) return {};\n\n const firstSegment = fqid.split(' ')[0] ?? '';\n const [type, ...rest] = firstSegment.split('/');\n\n if (!type || !isFQIDType(type)) return {};\n\n switch (type) {\n case 'ORG':\n return { type, organizationId: rest[0] };\n case 'MTR':\n return { type, maintainerId: rest[0] };\n case 'PRJ':\n return { type, projectId: rest[0] };\n case 'BCT':\n return { type, projectId: rest[0], bucketId: rest[1] };\n case 'TBL':\n return { type, projectId: rest[0], tableId: rest[1] };\n case 'COL':\n return { type, projectId: rest[0], tableId: rest[1], column: rest[2] };\n case 'CMP':\n return { type, projectId: rest[0], componentId: rest[1] };\n case 'CFG':\n return { type, projectId: rest[0], componentId: rest[1], configId: rest[2] };\n default:\n return {};\n }\n};\n\ntype FQIDData =\n | {\n type: FQIDTypes['organization'];\n data: { organizationId: string };\n }\n | {\n type: FQIDTypes['maintainer'];\n data: { maintainerId: string };\n }\n | {\n type: FQIDTypes['project'];\n data: { projectId: string };\n }\n | {\n type: FQIDTypes['bucket'];\n data: { projectId: string; bucketId: string };\n }\n | {\n type: FQIDTypes['table'];\n data: { projectId: string; tableId: string };\n }\n | {\n type: FQIDTypes['column'];\n data: { projectId: string; tableId: string; column: string };\n }\n | {\n type: FQIDTypes['component'];\n data: { projectId: string; componentId: string };\n }\n | {\n type: FQIDTypes['config'];\n data: { projectId: string; componentId: string; configId: string };\n };\n\nconst constructFQID = ({ type, data }: FQIDData) => {\n switch (type) {\n case FQID_TYPES.organization:\n return `ORG/${data.organizationId}`;\n case FQID_TYPES.maintainer:\n return `MTR/${data.maintainerId}`;\n case FQID_TYPES.project:\n return `PRJ/${data.projectId}`;\n case FQID_TYPES.bucket:\n return `BCT/${data.projectId}/${data.bucketId}`;\n case FQID_TYPES.table:\n return `TBL/${data.projectId}/${data.tableId}`;\n case FQID_TYPES.column:\n return `COL/${data.projectId}/${data.tableId}/${data.column}`;\n case FQID_TYPES.component:\n return `CMP/${data.projectId}/${data.componentId}`;\n case FQID_TYPES.config:\n return `CFG/${data.projectId}/${data.componentId}/${data.configId}`;\n }\n};\n\nexport { parseFQID, constructFQID };\n","export const parseDevBranchId = (path: string): number | null => {\n const pathParts = path.split('/');\n const branchKeywordIndex = pathParts.findIndex((pathPart) => pathPart === 'branch');\n if (branchKeywordIndex === -1) {\n return null;\n }\n const branchId = pathParts[branchKeywordIndex + 1];\n if (!branchId) {\n return null;\n }\n const branchIdInt = parseInt(branchId, 10);\n if (/^\\d+$/.test(branchId) && branchIdInt > 0) {\n return branchIdInt;\n }\n return null;\n};\n\nexport const parseCurrentDevBranchIdFromUrl = (): number | null => {\n if (typeof location === 'undefined') {\n return null;\n }\n return parseDevBranchId(location.pathname);\n};\n\ntype PrefixTagsOptions = {\n hasStorageBranches?: boolean;\n};\n\nexport const prefixTagsWithDevBranchId = (\n tags: string[],\n branchId: number | string | null = null,\n options: PrefixTagsOptions = {},\n): string[] => {\n if (!branchId || options.hasStorageBranches) {\n return tags;\n }\n\n return tags.map((tag) => `${branchId}-${tag}`);\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","names":[],"sources":["../../../src/sdks/storage/tableIdParser.ts","../../../src/sdks/storage/fqid.ts","../../../src/sdks/storage/devBranch.ts"],"sourcesContent":["function parseTableId(tableId: string, defaultStage: string, defaultBucket: string) {\n const parts = tableId.match(/^(in|out)?\\.(.+)?\\.(.+)?$/);\n\n return {\n stage: parts ? parts[1] || defaultStage : defaultStage,\n bucket: parts ? parts[2] || defaultBucket : defaultBucket,\n table: parts ? parts[3] || '' : '',\n };\n}\n\nexport function parse(\n tableId: string | null,\n options: { defaultStage?: string; defaultBucket?: string } = {},\n) {\n const parts = parseTableId(\n tableId || '',\n options.defaultStage || '',\n options.defaultBucket || '',\n );\n\n const { stage, bucket, table } = parts;\n return {\n tableId: `${stage}.${bucket}.${table}`,\n parts,\n setPart: (partNameToSet: string, value: string) => {\n const result = (['stage', 'bucket', 'table'] as const)\n .reduce(\n (memo, partName) =>\n partName === partNameToSet ? `${memo}.${value}` : `${memo}.${parts[partName]}`,\n '',\n )\n .slice(1);\n return parse(result);\n },\n };\n}\n\nexport const tableIdParser = { parse };\n","export const FQID_TYPES = {\n organization: 'ORG',\n maintainer: 'MTR',\n project: 'PRJ',\n bucket: 'BCT',\n table: 'TBL',\n column: 'COL',\n config: 'CFG',\n component: 'CMP',\n externalTable: 'EX_TBL',\n externalColumn: 'EX_COL',\n} as const;\n\ntype FQIDTypes = typeof FQID_TYPES;\n\nexport type ParsedFQID = {\n type?: (typeof FQID_TYPES)[keyof typeof FQID_TYPES];\n organizationId?: string;\n maintainerId?: string;\n projectId?: string;\n bucketId?: string;\n tableId?: string;\n componentId?: string;\n configId?: string;\n column?: string;\n};\n\nconst isFQIDType = (value: string): value is FQIDTypes[keyof FQIDTypes] => {\n return Object.values(FQID_TYPES).includes(value as FQIDTypes[keyof FQIDTypes]);\n};\n\nconst parseFQID = (fqid?: string): ParsedFQID | Record<string, never> => {\n if (!fqid?.trim()) return {};\n\n const firstSegment = fqid.split(' ')[0] ?? '';\n const [type, ...rest] = firstSegment.split('/');\n\n if (!type || !isFQIDType(type)) return {};\n\n switch (type) {\n case 'ORG':\n return { type, organizationId: rest[0] };\n case 'MTR':\n return { type, maintainerId: rest[0] };\n case 'PRJ':\n return { type, projectId: rest[0] };\n case 'BCT':\n return { type, projectId: rest[0], bucketId: rest[1] };\n case 'TBL':\n return { type, projectId: rest[0], tableId: rest[1] };\n case 'COL':\n return { type, projectId: rest[0], tableId: rest[1], column: rest[2] };\n case 'CMP':\n return { type, projectId: rest[0], componentId: rest[1] };\n case 'CFG':\n return { type, projectId: rest[0], componentId: rest[1], configId: rest[2] };\n default:\n return {};\n }\n};\n\ntype FQIDData =\n | {\n type: FQIDTypes['organization'];\n data: { organizationId: string };\n }\n | {\n type: FQIDTypes['maintainer'];\n data: { maintainerId: string };\n }\n | {\n type: FQIDTypes['project'];\n data: { projectId: string };\n }\n | {\n type: FQIDTypes['bucket'];\n data: { projectId: string; bucketId: string };\n }\n | {\n type: FQIDTypes['table'];\n data: { projectId: string; tableId: string };\n }\n | {\n type: FQIDTypes['column'];\n data: { projectId: string; tableId: string; column: string };\n }\n | {\n type: FQIDTypes['component'];\n data: { projectId: string; componentId: string };\n }\n | {\n type: FQIDTypes['config'];\n data: { projectId: string; componentId: string; configId: string };\n };\n\nconst constructFQID = ({ type, data }: FQIDData) => {\n switch (type) {\n case FQID_TYPES.organization:\n return `ORG/${data.organizationId}`;\n case FQID_TYPES.maintainer:\n return `MTR/${data.maintainerId}`;\n case FQID_TYPES.project:\n return `PRJ/${data.projectId}`;\n case FQID_TYPES.bucket:\n return `BCT/${data.projectId}/${data.bucketId}`;\n case FQID_TYPES.table:\n return `TBL/${data.projectId}/${data.tableId}`;\n case FQID_TYPES.column:\n return `COL/${data.projectId}/${data.tableId}/${data.column}`;\n case FQID_TYPES.component:\n return `CMP/${data.projectId}/${data.componentId}`;\n case FQID_TYPES.config:\n return `CFG/${data.projectId}/${data.componentId}/${data.configId}`;\n }\n};\n\nexport { parseFQID, constructFQID };\n","export const parseDevBranchId = (path: string): number | null => {\n const pathParts = path.split('/');\n const branchKeywordIndex = pathParts.findIndex((pathPart) => pathPart === 'branch');\n if (branchKeywordIndex === -1) {\n return null;\n }\n const branchId = pathParts[branchKeywordIndex + 1];\n if (!branchId) {\n return null;\n }\n const branchIdInt = parseInt(branchId, 10);\n if (/^\\d+$/.test(branchId) && branchIdInt > 0) {\n return branchIdInt;\n }\n return null;\n};\n\nexport const parseCurrentDevBranchIdFromUrl = (): number | null => {\n if (typeof location === 'undefined') {\n return null;\n }\n return parseDevBranchId(location.pathname);\n};\n\ntype PrefixTagsOptions = {\n hasStorageBranches?: boolean;\n};\n\nexport const prefixTagsWithDevBranchId = (\n tags: string[],\n branchId: number | string | null = null,\n options: PrefixTagsOptions = {},\n): string[] => {\n if (!branchId || options.hasStorageBranches) {\n return tags;\n }\n\n return tags.map((tag) => `${branchId}-${tag}`);\n};\n"],"mappings":"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"}
@@ -1,2 +1,103 @@
1
- import { a as parseCurrentDevBranchIdFromUrl, c as FQID_TYPES, d as parseFQID, f as parse, l as ParsedFQID, m as createStorageSdk, o as parseDevBranchId, p as tableIdParser, s as prefixTagsWithDevBranchId, u as constructFQID } from "../../index-syAYY5LC.cjs";
2
- export { FQID_TYPES, ParsedFQID, constructFQID, createStorageSdk, parse, parseCurrentDevBranchIdFromUrl, parseDevBranchId, parseFQID, prefixTagsWithDevBranchId, tableIdParser };
1
+ //#region src/sdks/storage/tableIdParser.d.ts
2
+ declare function parse(tableId: string | null, options?: {
3
+ defaultStage?: string;
4
+ defaultBucket?: string;
5
+ }): {
6
+ tableId: string;
7
+ parts: {
8
+ stage: string;
9
+ bucket: string;
10
+ table: string;
11
+ };
12
+ setPart: (partNameToSet: string, value: string) => /*elided*/ any;
13
+ };
14
+ declare const tableIdParser: {
15
+ parse: typeof parse;
16
+ };
17
+ //#endregion
18
+ //#region src/sdks/storage/fqid.d.ts
19
+ declare const FQID_TYPES: {
20
+ readonly organization: 'ORG';
21
+ readonly maintainer: 'MTR';
22
+ readonly project: 'PRJ';
23
+ readonly bucket: 'BCT';
24
+ readonly table: 'TBL';
25
+ readonly column: 'COL';
26
+ readonly config: 'CFG';
27
+ readonly component: 'CMP';
28
+ readonly externalTable: 'EX_TBL';
29
+ readonly externalColumn: 'EX_COL';
30
+ };
31
+ type FQIDTypes = typeof FQID_TYPES;
32
+ type ParsedFQID = {
33
+ type?: (typeof FQID_TYPES)[keyof typeof FQID_TYPES];
34
+ organizationId?: string;
35
+ maintainerId?: string;
36
+ projectId?: string;
37
+ bucketId?: string;
38
+ tableId?: string;
39
+ componentId?: string;
40
+ configId?: string;
41
+ column?: string;
42
+ };
43
+ declare const parseFQID: (fqid?: string) => ParsedFQID | Record<string, never>;
44
+ type FQIDData = {
45
+ type: FQIDTypes['organization'];
46
+ data: {
47
+ organizationId: string;
48
+ };
49
+ } | {
50
+ type: FQIDTypes['maintainer'];
51
+ data: {
52
+ maintainerId: string;
53
+ };
54
+ } | {
55
+ type: FQIDTypes['project'];
56
+ data: {
57
+ projectId: string;
58
+ };
59
+ } | {
60
+ type: FQIDTypes['bucket'];
61
+ data: {
62
+ projectId: string;
63
+ bucketId: string;
64
+ };
65
+ } | {
66
+ type: FQIDTypes['table'];
67
+ data: {
68
+ projectId: string;
69
+ tableId: string;
70
+ };
71
+ } | {
72
+ type: FQIDTypes['column'];
73
+ data: {
74
+ projectId: string;
75
+ tableId: string;
76
+ column: string;
77
+ };
78
+ } | {
79
+ type: FQIDTypes['component'];
80
+ data: {
81
+ projectId: string;
82
+ componentId: string;
83
+ };
84
+ } | {
85
+ type: FQIDTypes['config'];
86
+ data: {
87
+ projectId: string;
88
+ componentId: string;
89
+ configId: string;
90
+ };
91
+ };
92
+ declare const constructFQID: ({ type, data }: FQIDData) => string;
93
+ //#endregion
94
+ //#region src/sdks/storage/devBranch.d.ts
95
+ declare const parseDevBranchId: (path: string) => number | null;
96
+ declare const parseCurrentDevBranchIdFromUrl: () => number | null;
97
+ type PrefixTagsOptions = {
98
+ hasStorageBranches?: boolean;
99
+ };
100
+ declare const prefixTagsWithDevBranchId: (tags: string[], branchId?: number | string | null, options?: PrefixTagsOptions) => string[];
101
+ //#endregion
102
+ export { FQID_TYPES, ParsedFQID, constructFQID, parse, parseCurrentDevBranchIdFromUrl, parseDevBranchId, parseFQID, prefixTagsWithDevBranchId, tableIdParser };
103
+ //# sourceMappingURL=index.d.cts.map
@@ -1,2 +1,103 @@
1
- import { a as parseCurrentDevBranchIdFromUrl, c as FQID_TYPES, d as parseFQID, f as parse, l as ParsedFQID, m as createStorageSdk, o as parseDevBranchId, p as tableIdParser, s as prefixTagsWithDevBranchId, u as constructFQID } from "../../index-BP3choXr.js";
2
- export { FQID_TYPES, ParsedFQID, constructFQID, createStorageSdk, parse, parseCurrentDevBranchIdFromUrl, parseDevBranchId, parseFQID, prefixTagsWithDevBranchId, tableIdParser };
1
+ //#region src/sdks/storage/tableIdParser.d.ts
2
+ declare function parse(tableId: string | null, options?: {
3
+ defaultStage?: string;
4
+ defaultBucket?: string;
5
+ }): {
6
+ tableId: string;
7
+ parts: {
8
+ stage: string;
9
+ bucket: string;
10
+ table: string;
11
+ };
12
+ setPart: (partNameToSet: string, value: string) => /*elided*/ any;
13
+ };
14
+ declare const tableIdParser: {
15
+ parse: typeof parse;
16
+ };
17
+ //#endregion
18
+ //#region src/sdks/storage/fqid.d.ts
19
+ declare const FQID_TYPES: {
20
+ readonly organization: 'ORG';
21
+ readonly maintainer: 'MTR';
22
+ readonly project: 'PRJ';
23
+ readonly bucket: 'BCT';
24
+ readonly table: 'TBL';
25
+ readonly column: 'COL';
26
+ readonly config: 'CFG';
27
+ readonly component: 'CMP';
28
+ readonly externalTable: 'EX_TBL';
29
+ readonly externalColumn: 'EX_COL';
30
+ };
31
+ type FQIDTypes = typeof FQID_TYPES;
32
+ type ParsedFQID = {
33
+ type?: (typeof FQID_TYPES)[keyof typeof FQID_TYPES];
34
+ organizationId?: string;
35
+ maintainerId?: string;
36
+ projectId?: string;
37
+ bucketId?: string;
38
+ tableId?: string;
39
+ componentId?: string;
40
+ configId?: string;
41
+ column?: string;
42
+ };
43
+ declare const parseFQID: (fqid?: string) => ParsedFQID | Record<string, never>;
44
+ type FQIDData = {
45
+ type: FQIDTypes['organization'];
46
+ data: {
47
+ organizationId: string;
48
+ };
49
+ } | {
50
+ type: FQIDTypes['maintainer'];
51
+ data: {
52
+ maintainerId: string;
53
+ };
54
+ } | {
55
+ type: FQIDTypes['project'];
56
+ data: {
57
+ projectId: string;
58
+ };
59
+ } | {
60
+ type: FQIDTypes['bucket'];
61
+ data: {
62
+ projectId: string;
63
+ bucketId: string;
64
+ };
65
+ } | {
66
+ type: FQIDTypes['table'];
67
+ data: {
68
+ projectId: string;
69
+ tableId: string;
70
+ };
71
+ } | {
72
+ type: FQIDTypes['column'];
73
+ data: {
74
+ projectId: string;
75
+ tableId: string;
76
+ column: string;
77
+ };
78
+ } | {
79
+ type: FQIDTypes['component'];
80
+ data: {
81
+ projectId: string;
82
+ componentId: string;
83
+ };
84
+ } | {
85
+ type: FQIDTypes['config'];
86
+ data: {
87
+ projectId: string;
88
+ componentId: string;
89
+ configId: string;
90
+ };
91
+ };
92
+ declare const constructFQID: ({ type, data }: FQIDData) => string;
93
+ //#endregion
94
+ //#region src/sdks/storage/devBranch.d.ts
95
+ declare const parseDevBranchId: (path: string) => number | null;
96
+ declare const parseCurrentDevBranchIdFromUrl: () => number | null;
97
+ type PrefixTagsOptions = {
98
+ hasStorageBranches?: boolean;
99
+ };
100
+ declare const prefixTagsWithDevBranchId: (tags: string[], branchId?: number | string | null, options?: PrefixTagsOptions) => string[];
101
+ //#endregion
102
+ export { FQID_TYPES, ParsedFQID, constructFQID, parse, parseCurrentDevBranchIdFromUrl, parseDevBranchId, parseFQID, prefixTagsWithDevBranchId, tableIdParser };
103
+ //# sourceMappingURL=index.d.ts.map