@keboola/api-client 25.0.0 → 27.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 (458) hide show
  1. package/AGENTS.md +489 -0
  2. package/API-SURFACE.md +126 -57
  3. package/README.md +29 -25
  4. package/dist/{adminRoles-Cil1lavB.d.cts → adminRoles-BSUPLfNf.d.cts} +1 -7
  5. package/dist/{adminRoles-Cil1lavB.d.ts → adminRoles-BSUPLfNf.d.ts} +1 -7
  6. package/dist/ai/index.cjs +4 -4
  7. package/dist/ai/index.d.cts +5 -2
  8. package/dist/ai/index.d.ts +5 -2
  9. package/dist/ai/index.js +3 -3
  10. package/dist/ai/types.d.cts +2 -2
  11. package/dist/ai/types.d.ts +2 -2
  12. package/dist/appLogs-BbgAJ5I8.d.cts +7 -0
  13. package/dist/appLogs-BbgAJ5I8.d.ts +7 -0
  14. package/dist/apps/index.cjs +16 -0
  15. package/dist/apps/index.cjs.map +1 -0
  16. package/dist/apps/index.d.cts +249 -0
  17. package/dist/apps/index.d.ts +249 -0
  18. package/dist/apps/index.js +7 -0
  19. package/dist/apps/index.js.map +1 -0
  20. package/dist/apps/types.cjs +4 -0
  21. package/dist/apps/types.cjs.map +1 -0
  22. package/dist/apps/types.d.cts +3 -0
  23. package/dist/apps/types.d.ts +3 -0
  24. package/dist/apps/types.js +3 -0
  25. package/dist/apps/types.js.map +1 -0
  26. package/dist/assets/index.cjs +2 -2
  27. package/dist/assets/index.js +1 -1
  28. package/dist/auth/index.cjs +17 -13
  29. package/dist/auth/index.d.cts +18 -5
  30. package/dist/auth/index.d.ts +18 -5
  31. package/dist/auth/index.js +2 -2
  32. package/dist/auth/types.d.cts +3 -3
  33. package/dist/auth/types.d.ts +3 -3
  34. package/dist/backends-UNp_e5y9.d.cts +7 -0
  35. package/dist/backends-UNp_e5y9.d.ts +7 -0
  36. package/dist/chat/index.cjs +4 -4
  37. package/dist/chat/index.d.cts +5 -2
  38. package/dist/chat/index.d.ts +5 -2
  39. package/dist/chat/index.js +3 -3
  40. package/dist/chat/types.d.cts +2 -2
  41. package/dist/chat/types.d.ts +2 -2
  42. package/dist/{chunk-LD3JERYP.js → chunk-24YVNNAG.js} +10 -4
  43. package/dist/chunk-24YVNNAG.js.map +1 -0
  44. package/dist/{chunk-CV2JGHBN.js → chunk-255CHZ3U.js} +23 -6
  45. package/dist/chunk-255CHZ3U.js.map +1 -0
  46. package/dist/{chunk-S4JK7DKM.js → chunk-2BCH2U57.js} +11 -5
  47. package/dist/chunk-2BCH2U57.js.map +1 -0
  48. package/dist/{chunk-XHDYLUM4.js → chunk-2BQBKU6E.js} +15 -13
  49. package/dist/chunk-2BQBKU6E.js.map +1 -0
  50. package/dist/{chunk-NVQ6LGDO.cjs → chunk-2JKTV7UG.cjs} +6 -6
  51. package/dist/{chunk-NVQ6LGDO.cjs.map → chunk-2JKTV7UG.cjs.map} +1 -1
  52. package/dist/chunk-3UBGQFBU.js +29 -0
  53. package/dist/chunk-3UBGQFBU.js.map +1 -0
  54. package/dist/chunk-57Q4CY4H.js +190 -0
  55. package/dist/chunk-57Q4CY4H.js.map +1 -0
  56. package/dist/{chunk-EDX5D6UY.js → chunk-5A3AQIXR.js} +3 -3
  57. package/dist/{chunk-EDX5D6UY.js.map → chunk-5A3AQIXR.js.map} +1 -1
  58. package/dist/{chunk-UABYNGBZ.js → chunk-5HEIR4DC.js} +4 -4
  59. package/dist/chunk-5HEIR4DC.js.map +1 -0
  60. package/dist/{chunk-Z3HZ4MP4.cjs → chunk-5SR2L35Y.cjs} +885 -553
  61. package/dist/chunk-5SR2L35Y.cjs.map +1 -0
  62. package/dist/{chunk-OUSPQ55W.js → chunk-62LG5KPI.js} +29 -7
  63. package/dist/chunk-62LG5KPI.js.map +1 -0
  64. package/dist/{chunk-HMCZUHR7.js → chunk-67P5UI6H.js} +9 -4
  65. package/dist/{chunk-2CFM7K4U.cjs.map → chunk-67P5UI6H.js.map} +1 -1
  66. package/dist/{chunk-HY7J3OD3.cjs → chunk-6PVEHUJL.cjs} +39 -29
  67. package/dist/chunk-6PVEHUJL.cjs.map +1 -0
  68. package/dist/chunk-6XFXU5N4.js +119 -0
  69. package/dist/chunk-6XFXU5N4.js.map +1 -0
  70. package/dist/chunk-6ZQBFK2Y.js +24 -0
  71. package/dist/chunk-6ZQBFK2Y.js.map +1 -0
  72. package/dist/{chunk-AFJGNBVM.cjs → chunk-AJ3SCWUB.cjs} +14 -8
  73. package/dist/chunk-AJ3SCWUB.cjs.map +1 -0
  74. package/dist/{chunk-GF4XZK5N.cjs → chunk-AXYNFDUI.cjs} +4 -4
  75. package/dist/chunk-AXYNFDUI.cjs.map +1 -0
  76. package/dist/{chunk-UP5SEEYZ.js → chunk-B45B4AYG.js} +61 -7
  77. package/dist/chunk-B45B4AYG.js.map +1 -0
  78. package/dist/{chunk-4VVF2PIX.js → chunk-B4T4QCLB.js} +10 -4
  79. package/dist/chunk-B4T4QCLB.js.map +1 -0
  80. package/dist/{chunk-XIIER7QQ.js → chunk-BGJWHTBJ.js} +10 -4
  81. package/dist/chunk-BGJWHTBJ.js.map +1 -0
  82. package/dist/chunk-BVRPZKRE.cjs +147 -0
  83. package/dist/chunk-BVRPZKRE.cjs.map +1 -0
  84. package/dist/chunk-BZB4UVQA.cjs +192 -0
  85. package/dist/chunk-BZB4UVQA.cjs.map +1 -0
  86. package/dist/{chunk-IAYPOSMM.cjs → chunk-CHRBWCL7.cjs} +8 -8
  87. package/dist/chunk-CHRBWCL7.cjs.map +1 -0
  88. package/dist/{chunk-3PVERYSF.js → chunk-CPZME73I.js} +3 -3
  89. package/dist/{chunk-3PVERYSF.js.map → chunk-CPZME73I.js.map} +1 -1
  90. package/dist/{chunk-RVBGE2Z4.js → chunk-DVV35AIS.js} +7 -7
  91. package/dist/chunk-DVV35AIS.js.map +1 -0
  92. package/dist/{chunk-CWUQ6ZAO.cjs → chunk-E7GGDLAH.cjs} +25 -8
  93. package/dist/chunk-E7GGDLAH.cjs.map +1 -0
  94. package/dist/{chunk-J3NLKXQ5.cjs → chunk-EQPBR3BE.cjs} +15 -9
  95. package/dist/chunk-EQPBR3BE.cjs.map +1 -0
  96. package/dist/{chunk-SJZ66FD5.js → chunk-ERZEQ5JR.js} +8 -3
  97. package/dist/chunk-ERZEQ5JR.js.map +1 -0
  98. package/dist/{chunk-CWCUQACX.cjs → chunk-ES3ADC2G.cjs} +4 -4
  99. package/dist/{chunk-CWCUQACX.cjs.map → chunk-ES3ADC2G.cjs.map} +1 -1
  100. package/dist/{chunk-2CFM7K4U.cjs → chunk-FEAE6L3K.cjs} +13 -8
  101. package/dist/chunk-FEAE6L3K.cjs.map +1 -0
  102. package/dist/{chunk-IDWGBCSB.cjs → chunk-FVU7WU2H.cjs} +11 -6
  103. package/dist/chunk-FVU7WU2H.cjs.map +1 -0
  104. package/dist/{chunk-3BFPNM2J.js → chunk-FW5GBBKL.js} +11 -5
  105. package/dist/chunk-FW5GBBKL.js.map +1 -0
  106. package/dist/chunk-G2SWCC3X.js +90 -0
  107. package/dist/chunk-G2SWCC3X.js.map +1 -0
  108. package/dist/{chunk-KUYVBCUM.cjs → chunk-G3JHVIDZ.cjs} +63 -8
  109. package/dist/chunk-G3JHVIDZ.cjs.map +1 -0
  110. package/dist/{chunk-D4WOOKMI.js → chunk-HGKDXF35.js} +58 -107
  111. package/dist/chunk-HGKDXF35.js.map +1 -0
  112. package/dist/chunk-HQO572JW.cjs +34 -0
  113. package/dist/chunk-HQO572JW.cjs.map +1 -0
  114. package/dist/{chunk-MMOAH3EH.cjs → chunk-HUQ5ATIL.cjs} +15 -13
  115. package/dist/chunk-HUQ5ATIL.cjs.map +1 -0
  116. package/dist/{chunk-XKIENBIE.js → chunk-HZDVMHU6.js} +10 -4
  117. package/dist/chunk-HZDVMHU6.js.map +1 -0
  118. package/dist/{chunk-7R22VKV7.cjs → chunk-ICWUR5WA.cjs} +13 -7
  119. package/dist/chunk-ICWUR5WA.cjs.map +1 -0
  120. package/dist/{chunk-BR6WZE3O.cjs → chunk-IQFNHQWP.cjs} +9 -4
  121. package/dist/chunk-IQFNHQWP.cjs.map +1 -0
  122. package/dist/{chunk-7Z4MU7ZB.js → chunk-IZ4QM7O4.js} +32 -22
  123. package/dist/chunk-IZ4QM7O4.js.map +1 -0
  124. package/dist/{chunk-UWQUHP3T.cjs → chunk-J5JCXSAS.cjs} +11 -6
  125. package/dist/chunk-J5JCXSAS.cjs.map +1 -0
  126. package/dist/{chunk-LIXSIM3H.cjs → chunk-JI7HLIDL.cjs} +12 -6
  127. package/dist/chunk-JI7HLIDL.cjs.map +1 -0
  128. package/dist/chunk-JWISA775.cjs +92 -0
  129. package/dist/chunk-JWISA775.cjs.map +1 -0
  130. package/dist/chunk-K3BLXPLA.cjs +16 -0
  131. package/dist/{chunk-7RO6PKZ4.cjs.map → chunk-K3BLXPLA.cjs.map} +1 -1
  132. package/dist/{chunk-BZA3FGO6.js → chunk-KATUDT3E.js} +8 -3
  133. package/dist/chunk-KATUDT3E.js.map +1 -0
  134. package/dist/chunk-KGBWWS6I.js +32 -0
  135. package/dist/chunk-KGBWWS6I.js.map +1 -0
  136. package/dist/chunk-KQENBXPS.cjs +34 -0
  137. package/dist/chunk-KQENBXPS.cjs.map +1 -0
  138. package/dist/chunk-KTKJD4DM.js +60 -0
  139. package/dist/chunk-KTKJD4DM.js.map +1 -0
  140. package/dist/{chunk-2BOG5U7C.js → chunk-LWQP7OWA.js} +3 -3
  141. package/dist/{chunk-2BOG5U7C.js.map → chunk-LWQP7OWA.js.map} +1 -1
  142. package/dist/chunk-NFJKJGXR.js +397 -0
  143. package/dist/chunk-NFJKJGXR.js.map +1 -0
  144. package/dist/chunk-NH2TQGRL.cjs +28 -0
  145. package/dist/chunk-NH2TQGRL.cjs.map +1 -0
  146. package/dist/{chunk-KEFXOJD7.js → chunk-NHYL5QPM.js} +16 -3
  147. package/dist/chunk-NHYL5QPM.js.map +1 -0
  148. package/dist/{chunk-AVH6F5LB.js → chunk-ON4ILCHP.js} +876 -546
  149. package/dist/chunk-ON4ILCHP.js.map +1 -0
  150. package/dist/{chunk-T242YFMT.cjs → chunk-PLF4JX5B.cjs} +12 -7
  151. package/dist/chunk-PLF4JX5B.cjs.map +1 -0
  152. package/dist/{chunk-77LILJYX.js → chunk-QNF3L4B7.js} +9 -4
  153. package/dist/chunk-QNF3L4B7.js.map +1 -0
  154. package/dist/{chunk-NVRVPWNY.js → chunk-RBN3ITTM.js} +9 -4
  155. package/dist/chunk-RBN3ITTM.js.map +1 -0
  156. package/dist/{chunk-DRNOCC6W.cjs → chunk-RXYT7EMN.cjs} +31 -8
  157. package/dist/chunk-RXYT7EMN.cjs.map +1 -0
  158. package/dist/chunk-S46FMY4G.cjs +64 -0
  159. package/dist/chunk-S46FMY4G.cjs.map +1 -0
  160. package/dist/chunk-S6BWQKHJ.cjs +116 -0
  161. package/dist/chunk-S6BWQKHJ.cjs.map +1 -0
  162. package/dist/{chunk-3YWQQ3OG.cjs → chunk-SFTI6QFB.cjs} +13 -7
  163. package/dist/chunk-SFTI6QFB.cjs.map +1 -0
  164. package/dist/{chunk-7YXL4FKN.cjs → chunk-SNP577FA.cjs} +12 -6
  165. package/dist/chunk-SNP577FA.cjs.map +1 -0
  166. package/dist/{chunk-PPQF7LTS.cjs → chunk-SUVM3S2T.cjs} +15 -9
  167. package/dist/chunk-SUVM3S2T.cjs.map +1 -0
  168. package/dist/chunk-SYZ5OFNT.js +114 -0
  169. package/dist/chunk-SYZ5OFNT.js.map +1 -0
  170. package/dist/{chunk-FRLSKIUI.cjs → chunk-SZBW4EE2.cjs} +6 -6
  171. package/dist/{chunk-FRLSKIUI.cjs.map → chunk-SZBW4EE2.cjs.map} +1 -1
  172. package/dist/{chunk-G66EP527.js → chunk-TBHJQCAE.js} +9 -4
  173. package/dist/chunk-TBHJQCAE.js.map +1 -0
  174. package/dist/{chunk-EYIPM2XB.cjs → chunk-U3E5YMLO.cjs} +4 -4
  175. package/dist/{chunk-EYIPM2XB.cjs.map → chunk-U3E5YMLO.cjs.map} +1 -1
  176. package/dist/{chunk-34GM6NXB.js → chunk-UVX733BX.js} +10 -4
  177. package/dist/chunk-UVX733BX.js.map +1 -0
  178. package/dist/{chunk-FMS5PNM2.cjs → chunk-V6FT3RTU.cjs} +8 -3
  179. package/dist/chunk-V6FT3RTU.cjs.map +1 -0
  180. package/dist/{chunk-F6ZAYTBX.cjs → chunk-VB56OVFM.cjs} +58 -110
  181. package/dist/chunk-VB56OVFM.cjs.map +1 -0
  182. package/dist/{chunk-5XWVWFTC.js → chunk-WQ7NNIJ3.js} +4 -4
  183. package/dist/{chunk-5XWVWFTC.js.map → chunk-WQ7NNIJ3.js.map} +1 -1
  184. package/dist/{chunk-DHOVQ2TW.js → chunk-WUFODWZV.js} +3 -3
  185. package/dist/{chunk-DHOVQ2TW.js.map → chunk-WUFODWZV.js.map} +1 -1
  186. package/dist/{chunk-FJBP3MRI.cjs → chunk-WUJ53PP7.cjs} +16 -3
  187. package/dist/chunk-WUJ53PP7.cjs.map +1 -0
  188. package/dist/chunk-YDOSWWE4.cjs +419 -0
  189. package/dist/chunk-YDOSWWE4.cjs.map +1 -0
  190. package/dist/constants/index.cjs +2 -2
  191. package/dist/constants/index.d.cts +13 -1
  192. package/dist/constants/index.d.ts +13 -1
  193. package/dist/constants/index.js +1 -1
  194. package/dist/createFetchClient-BHAsPDgF.d.cts +86 -0
  195. package/dist/createFetchClient-CFIwc6Lh.d.ts +86 -0
  196. package/dist/{createOpenapiFetchClient-BFmiJ9C5.d.cts → createOpenapiFetchClient-CduEua6F.d.cts} +1 -1
  197. package/dist/{createOpenapiFetchClient-6RX67Hws.d.ts → createOpenapiFetchClient-wLlVgp3k.d.ts} +1 -1
  198. package/dist/dataScience/index.cjs +6 -5
  199. package/dist/dataScience/index.d.cts +7 -5
  200. package/dist/dataScience/index.d.ts +7 -5
  201. package/dist/dataScience/index.js +4 -3
  202. package/dist/dataScience/types.d.cts +2172 -2
  203. package/dist/dataScience/types.d.ts +2172 -2
  204. package/dist/domain/permissions/index.cjs +3 -3
  205. package/dist/domain/permissions/index.d.cts +5 -4
  206. package/dist/domain/permissions/index.d.ts +5 -4
  207. package/dist/domain/permissions/index.js +1 -1
  208. package/dist/editor/index.cjs +4 -4
  209. package/dist/editor/index.d.cts +5 -2
  210. package/dist/editor/index.d.ts +5 -2
  211. package/dist/editor/index.js +3 -3
  212. package/dist/editor/types.d.cts +2 -2
  213. package/dist/editor/types.d.ts +2 -2
  214. package/dist/encryption/index.cjs +3 -3
  215. package/dist/encryption/index.d.cts +5 -3
  216. package/dist/encryption/index.d.ts +5 -3
  217. package/dist/encryption/index.js +2 -2
  218. package/dist/encryption/types.d.cts +4 -3
  219. package/dist/encryption/types.d.ts +4 -3
  220. package/dist/import/index.cjs +4 -4
  221. package/dist/import/index.d.cts +5 -2
  222. package/dist/import/index.d.ts +5 -2
  223. package/dist/import/index.js +3 -3
  224. package/dist/index.cjs +211 -127
  225. package/dist/index.cjs.map +1 -1
  226. package/dist/index.d.cts +934 -457
  227. package/dist/index.d.ts +934 -457
  228. package/dist/index.js +95 -44
  229. package/dist/index.js.map +1 -1
  230. package/dist/management/index.cjs +5 -5
  231. package/dist/management/index.d.cts +60 -67
  232. package/dist/management/index.d.ts +60 -67
  233. package/dist/management/index.js +3 -3
  234. package/dist/management/types.d.cts +3 -3
  235. package/dist/management/types.d.ts +3 -3
  236. package/dist/metastore/index.cjs +4 -4
  237. package/dist/metastore/index.d.cts +5 -6
  238. package/dist/metastore/index.d.ts +5 -6
  239. package/dist/metastore/index.js +3 -3
  240. package/dist/metastore/types.d.cts +2 -2
  241. package/dist/metastore/types.d.ts +2 -2
  242. package/dist/notifications/index.cjs +5 -5
  243. package/dist/notifications/index.d.cts +3 -2
  244. package/dist/notifications/index.d.ts +3 -2
  245. package/dist/notifications/index.js +4 -4
  246. package/dist/notifications/types.d.cts +2 -2
  247. package/dist/notifications/types.d.ts +2 -2
  248. package/dist/oauth/index.cjs +4 -4
  249. package/dist/oauth/index.d.cts +2 -1
  250. package/dist/oauth/index.d.ts +2 -1
  251. package/dist/oauth/index.js +3 -3
  252. package/dist/oauth/types.d.cts +1 -1
  253. package/dist/oauth/types.d.ts +1 -1
  254. package/dist/omnisearch/index.cjs +14 -0
  255. package/dist/omnisearch/index.cjs.map +1 -0
  256. package/dist/omnisearch/index.d.cts +32 -0
  257. package/dist/omnisearch/index.d.ts +32 -0
  258. package/dist/omnisearch/index.js +5 -0
  259. package/dist/omnisearch/index.js.map +1 -0
  260. package/dist/omnisearch/types.cjs +4 -0
  261. package/dist/omnisearch/types.cjs.map +1 -0
  262. package/dist/omnisearch/types.d.cts +3 -0
  263. package/dist/omnisearch/types.d.ts +3 -0
  264. package/dist/omnisearch/types.js +3 -0
  265. package/dist/omnisearch/types.js.map +1 -0
  266. package/dist/{project-CXqPYo4T.d.ts → project-Dmr-zrQG.d.ts} +2 -2
  267. package/dist/{project-CZPvcxRW.d.cts → project-DstzWVMN.d.cts} +2 -2
  268. package/dist/queryService/index.cjs +4 -4
  269. package/dist/queryService/index.d.cts +3 -2
  270. package/dist/queryService/index.d.ts +3 -2
  271. package/dist/queryService/index.js +3 -3
  272. package/dist/queryService/types.d.cts +2 -2
  273. package/dist/queryService/types.d.ts +2 -2
  274. package/dist/queue/index.cjs +4 -4
  275. package/dist/queue/index.d.cts +8 -2
  276. package/dist/queue/index.d.ts +8 -2
  277. package/dist/queue/index.js +3 -3
  278. package/dist/queue/types.d.cts +2 -2
  279. package/dist/queue/types.d.ts +2 -2
  280. package/dist/scheduler/index.cjs +5 -5
  281. package/dist/scheduler/index.d.cts +2 -1
  282. package/dist/scheduler/index.d.ts +2 -1
  283. package/dist/scheduler/index.js +4 -4
  284. package/dist/scheduler/types.d.cts +3 -3
  285. package/dist/scheduler/types.d.ts +3 -3
  286. package/dist/sdk/configurations/index.cjs +3 -3
  287. package/dist/sdk/configurations/index.d.cts +7 -6
  288. package/dist/sdk/configurations/index.d.ts +7 -6
  289. package/dist/sdk/configurations/index.js +2 -2
  290. package/dist/sdk/queryService/index.cjs +16 -0
  291. package/dist/sdk/queryService/index.cjs.map +1 -0
  292. package/dist/sdk/queryService/index.d.cts +35 -0
  293. package/dist/sdk/queryService/index.d.ts +35 -0
  294. package/dist/sdk/queryService/index.js +7 -0
  295. package/dist/sdk/queryService/index.js.map +1 -0
  296. package/dist/sdk/semanticLayer/index.cjs +18 -14
  297. package/dist/sdk/semanticLayer/index.d.cts +25 -10
  298. package/dist/sdk/semanticLayer/index.d.ts +25 -10
  299. package/dist/sdk/semanticLayer/index.js +2 -2
  300. package/dist/sdk/semanticLayer/types.d.cts +25 -5
  301. package/dist/sdk/semanticLayer/types.d.ts +25 -5
  302. package/dist/sdk/storage/index.cjs +12 -11
  303. package/dist/sdk/storage/index.d.cts +7 -6
  304. package/dist/sdk/storage/index.d.ts +7 -6
  305. package/dist/sdk/storage/index.js +2 -1
  306. package/dist/sdk/tag/index.cjs +3 -3
  307. package/dist/sdk/tag/index.d.cts +3 -3
  308. package/dist/sdk/tag/index.d.ts +3 -3
  309. package/dist/sdk/tag/index.js +2 -2
  310. package/dist/sdk/tag/types.d.cts +10 -4
  311. package/dist/sdk/tag/types.d.ts +10 -4
  312. package/dist/sdk/vault/index.cjs +8 -8
  313. package/dist/sdk/vault/index.d.cts +5 -4
  314. package/dist/sdk/vault/index.d.ts +5 -4
  315. package/dist/sdk/vault/index.js +2 -2
  316. package/dist/status/index.cjs +2 -2
  317. package/dist/status/index.js +1 -1
  318. package/dist/storage/index.cjs +50 -12
  319. package/dist/storage/index.d.cts +17 -36
  320. package/dist/storage/index.d.ts +17 -36
  321. package/dist/storage/index.js +7 -5
  322. package/dist/storage/types.d.cts +720 -425
  323. package/dist/storage/types.d.ts +720 -425
  324. package/dist/{storageClient-Dkcg7hKa.d.cts → storageClient-BAid0vi2.d.cts} +478 -247
  325. package/dist/{storageClient-Cd4jVt58.d.ts → storageClient-BX50Attd.d.ts} +478 -247
  326. package/dist/{storageSdk-L6NOdgSJ.d.ts → storageSdk-BS5982c_.d.cts} +22 -15
  327. package/dist/{storageSdk-15_Fbucc.d.cts → storageSdk-BeJcnEIO.d.ts} +22 -15
  328. package/dist/stream/index.cjs +4 -4
  329. package/dist/stream/index.d.cts +3 -2
  330. package/dist/stream/index.d.ts +3 -2
  331. package/dist/stream/index.js +3 -3
  332. package/dist/stream/types.d.cts +2 -2
  333. package/dist/stream/types.d.ts +2 -2
  334. package/dist/syncActions/index.cjs +6 -5
  335. package/dist/syncActions/index.d.cts +31 -76
  336. package/dist/syncActions/index.d.ts +31 -76
  337. package/dist/syncActions/index.js +5 -4
  338. package/dist/syncActions/types.d.cts +334 -18
  339. package/dist/syncActions/types.d.ts +334 -18
  340. package/dist/telemetry/index.cjs +4 -4
  341. package/dist/telemetry/index.js +3 -3
  342. package/dist/{types-DbAO-Tgk.d.ts → types-BALUbGA5.d.ts} +10 -2
  343. package/dist/{types-B30y9Lhc.d.ts → types-BCBF_5cU.d.cts} +186 -4
  344. package/dist/{types-B-vmDlWB.d.cts → types-BPKQRahf.d.cts} +3 -3
  345. package/dist/types-BcaALDYY.d.cts +2130 -0
  346. package/dist/{types-BfuVN8Pk.d.cts → types-Bom93Zx2.d.cts} +3 -3
  347. package/dist/types-Bp8d9PJf.d.cts +607 -0
  348. package/dist/types-BsejtGjZ.d.ts +2130 -0
  349. package/dist/{types-DeoA45gz.d.cts → types-BuEkMmKT.d.ts} +491 -308
  350. package/dist/{types-BqC3U0k0.d.cts → types-C5DdOzx8.d.cts} +1 -1
  351. package/dist/{types-D-MuJHwl.d.cts → types-CFeOCzzg.d.cts} +3 -2
  352. package/dist/{types-DpUcInCX.d.ts → types-COti0FGo.d.ts} +3 -3
  353. package/dist/{types-Dkipk6NN.d.ts → types-C_jxWM7A.d.ts} +1 -1
  354. package/dist/{types-CM1zHzgm.d.ts → types-Cffam0Nw.d.ts} +856 -36
  355. package/dist/{types-BieLFMW1.d.cts → types-CfzHhZVG.d.ts} +3 -3
  356. package/dist/{types-DYnHIm7m.d.cts → types-CniF_D1P.d.cts} +3 -3
  357. package/dist/{types-BEnE7LHB.d.cts → types-CwAYn1EJ.d.cts} +10 -2
  358. package/dist/{types-DgSyBwP3.d.cts → types-CxAH36ip.d.cts} +3 -3
  359. package/dist/{types-DwMezEHT.d.ts → types-D2qGShlS.d.ts} +15 -3
  360. package/dist/{types-CSZoV4lM.d.cts → types-D6dnnju2.d.ts} +186 -4
  361. package/dist/{types-CrLjE5xf.d.ts → types-DM1glEQI.d.ts} +3 -3
  362. package/dist/{types-Hj1CaKtV.d.ts → types-DNyZ0z3L.d.cts} +491 -308
  363. package/dist/types-DOc5_aYZ.d.ts +607 -0
  364. package/dist/{types-DHXZZKb3.d.ts → types-Dpwb4dD0.d.ts} +3 -3
  365. package/dist/{types-YzkNUuYo.d.ts → types-DrGnvgkB.d.ts} +3 -3
  366. package/dist/{types-00IaLn3S.d.ts → types-EZBBpiFU.d.ts} +695 -82
  367. package/dist/{types-BX1xr4CX.d.cts → types-Y1ynT2PH.d.cts} +15 -3
  368. package/dist/{types-sVyfECai.d.cts → types-cxk-0ftN.d.cts} +695 -82
  369. package/dist/{types-DeS-oVdn.d.ts → types-ebolWqn1.d.ts} +3 -2
  370. package/dist/{types-gcShAmmi.d.cts → types-f8dUjMX4.d.cts} +1 -1
  371. package/dist/{types-gcShAmmi.d.ts → types-f8dUjMX4.d.ts} +1 -1
  372. package/dist/{types-CiJ5ULtS.d.ts → types-nt7I4XNc.d.cts} +3 -3
  373. package/dist/{types-Cgh3jqrV.d.cts → types-qvle4Ydu.d.cts} +856 -36
  374. package/dist/vault/index.cjs +4 -4
  375. package/dist/vault/index.d.cts +2 -1
  376. package/dist/vault/index.d.ts +2 -1
  377. package/dist/vault/index.js +3 -3
  378. package/dist/vault/types.d.cts +3 -3
  379. package/dist/vault/types.d.ts +3 -3
  380. package/package.json +71 -3
  381. package/surface/ai.md +1 -0
  382. package/surface/apps.md +32 -0
  383. package/surface/auth.md +6 -4
  384. package/surface/chat.md +1 -0
  385. package/surface/dataScience.md +1 -0
  386. package/surface/editor.md +1 -0
  387. package/surface/encryption.md +1 -0
  388. package/surface/import.md +1 -0
  389. package/surface/kaiAgent.md +1 -0
  390. package/surface/management.md +17 -16
  391. package/surface/metastore.md +2 -1
  392. package/surface/notifications.md +1 -0
  393. package/surface/oauth.md +1 -0
  394. package/surface/omnisearch.md +9 -0
  395. package/surface/queryService.md +1 -0
  396. package/surface/queue.md +7 -6
  397. package/surface/scheduler.md +1 -0
  398. package/surface/sdk.md +16 -16
  399. package/surface/storage.md +119 -83
  400. package/surface/stream.md +1 -0
  401. package/surface/syncActions.md +13 -6
  402. package/surface/vault.md +1 -0
  403. package/dist/chunk-34GM6NXB.js.map +0 -1
  404. package/dist/chunk-3BFPNM2J.js.map +0 -1
  405. package/dist/chunk-3YWQQ3OG.cjs.map +0 -1
  406. package/dist/chunk-4VVF2PIX.js.map +0 -1
  407. package/dist/chunk-77LILJYX.js.map +0 -1
  408. package/dist/chunk-7R22VKV7.cjs.map +0 -1
  409. package/dist/chunk-7RO6PKZ4.cjs +0 -16
  410. package/dist/chunk-7YXL4FKN.cjs.map +0 -1
  411. package/dist/chunk-7Z4MU7ZB.js.map +0 -1
  412. package/dist/chunk-AFJGNBVM.cjs.map +0 -1
  413. package/dist/chunk-AVH6F5LB.js.map +0 -1
  414. package/dist/chunk-AXEANGGK.js +0 -226
  415. package/dist/chunk-AXEANGGK.js.map +0 -1
  416. package/dist/chunk-BR6WZE3O.cjs.map +0 -1
  417. package/dist/chunk-BZA3FGO6.js.map +0 -1
  418. package/dist/chunk-CV2JGHBN.js.map +0 -1
  419. package/dist/chunk-CWUQ6ZAO.cjs.map +0 -1
  420. package/dist/chunk-D4WOOKMI.js.map +0 -1
  421. package/dist/chunk-DRNOCC6W.cjs.map +0 -1
  422. package/dist/chunk-F6ZAYTBX.cjs.map +0 -1
  423. package/dist/chunk-FJBP3MRI.cjs.map +0 -1
  424. package/dist/chunk-FMS5PNM2.cjs.map +0 -1
  425. package/dist/chunk-G66EP527.js.map +0 -1
  426. package/dist/chunk-GF4XZK5N.cjs.map +0 -1
  427. package/dist/chunk-HMCZUHR7.js.map +0 -1
  428. package/dist/chunk-HTVJR5WS.cjs +0 -305
  429. package/dist/chunk-HTVJR5WS.cjs.map +0 -1
  430. package/dist/chunk-HY7J3OD3.cjs.map +0 -1
  431. package/dist/chunk-IAYPOSMM.cjs.map +0 -1
  432. package/dist/chunk-IDWGBCSB.cjs.map +0 -1
  433. package/dist/chunk-J3NLKXQ5.cjs.map +0 -1
  434. package/dist/chunk-KEFXOJD7.js.map +0 -1
  435. package/dist/chunk-KUYVBCUM.cjs.map +0 -1
  436. package/dist/chunk-L262THNK.cjs +0 -253
  437. package/dist/chunk-L262THNK.cjs.map +0 -1
  438. package/dist/chunk-LD3JERYP.js.map +0 -1
  439. package/dist/chunk-LIXSIM3H.cjs.map +0 -1
  440. package/dist/chunk-MMOAH3EH.cjs.map +0 -1
  441. package/dist/chunk-NVRVPWNY.js.map +0 -1
  442. package/dist/chunk-OUSPQ55W.js.map +0 -1
  443. package/dist/chunk-PPQF7LTS.cjs.map +0 -1
  444. package/dist/chunk-RVBGE2Z4.js.map +0 -1
  445. package/dist/chunk-S4JK7DKM.js.map +0 -1
  446. package/dist/chunk-SJZ66FD5.js.map +0 -1
  447. package/dist/chunk-T242YFMT.cjs.map +0 -1
  448. package/dist/chunk-UABYNGBZ.js.map +0 -1
  449. package/dist/chunk-UP5SEEYZ.js.map +0 -1
  450. package/dist/chunk-UQ5CACMW.js +0 -283
  451. package/dist/chunk-UQ5CACMW.js.map +0 -1
  452. package/dist/chunk-UWQUHP3T.cjs.map +0 -1
  453. package/dist/chunk-XHDYLUM4.js.map +0 -1
  454. package/dist/chunk-XIIER7QQ.js.map +0 -1
  455. package/dist/chunk-XKIENBIE.js.map +0 -1
  456. package/dist/chunk-Z3HZ4MP4.cjs.map +0 -1
  457. package/dist/utils-B_SOM1XR.d.ts +0 -3051
  458. package/dist/utils-DK7uJcmR.d.cts +0 -3051
@@ -1,68 +1,13 @@
1
1
  'use strict';
2
2
 
3
- var chunkQHD4LPAQ_cjs = require('./chunk-QHD4LPAQ.cjs');
4
-
5
- // src/utils/async/delay.ts
6
- var delay = (timeout, signal) => new Promise((resolve, reject) => {
7
- if (signal?.aborted) return reject(chunkQHD4LPAQ_cjs.createAbortError(signal.reason));
8
- const timeoutId = setTimeout(resolve, timeout);
9
- signal?.addEventListener(
10
- "abort",
11
- () => {
12
- clearTimeout(timeoutId);
13
- reject(chunkQHD4LPAQ_cjs.createAbortError(signal.reason));
14
- },
15
- { once: true }
16
- );
17
- });
18
-
19
- // src/utils/async/poll.ts
20
- var message = {
21
- PollPredicateError: "Poll predicate failed",
22
- PollTimeoutError: "Poll timeout exceeded",
23
- PollPollTimeoutError: "Poll data failed condition"
24
- };
25
- var PollException = class extends Error {
26
- result;
27
- constructor(type, result) {
28
- super(type, { cause: message[type] });
29
- this.result = result;
30
- }
31
- };
32
- var poll = async ({
33
- pollFn,
34
- interval,
35
- isDone,
36
- isFailed,
37
- abortSignal,
38
- maxAttempts = Infinity
39
- }) => {
40
- if (abortSignal?.aborted) throw chunkQHD4LPAQ_cjs.createAbortError(abortSignal.reason);
41
- if (interval < 1) throw new Error("Invalid poll interval");
42
- if (maxAttempts < 1) throw new Error("Invalid poll maxAttempts");
43
- let callCount = 0;
44
- while (true) {
45
- callCount++;
46
- const data = await pollFn(abortSignal);
47
- const result = { data, callCount };
48
- try {
49
- if (isDone(data)) return result;
50
- if (isFailed?.(data) ?? false) throw new PollException("PollPollTimeoutError", result);
51
- } catch (error) {
52
- if (error instanceof PollException) throw error;
53
- throw new PollException("PollPredicateError", result);
54
- }
55
- if (callCount >= maxAttempts) throw new PollException("PollTimeoutError", result);
56
- await delay(interval, abortSignal);
57
- }
58
- };
3
+ var chunkS46FMY4G_cjs = require('./chunk-S46FMY4G.cjs');
59
4
 
60
5
  // src/sdks/storage/storageSdk.ts
61
6
  var DEFAULT_POLL_INTERVAL = 2e3;
62
7
  var JOB_TERMINAL_STATUSES = /* @__PURE__ */ new Set(["success", "warning", "error", "terminated", "cancelled"]);
63
8
  var createStorageSdk = ({ storageClient }) => {
64
9
  const waitForJob = async (job, options) => {
65
- const { data } = await poll({
10
+ const { data } = await chunkS46FMY4G_cjs.poll({
66
11
  pollFn: (abortSignal) => storageClient.jobs.getJob(job.id, abortSignal),
67
12
  isDone: (j) => JOB_TERMINAL_STATUSES.has(j.status),
68
13
  interval: options?.interval ?? DEFAULT_POLL_INTERVAL,
@@ -72,124 +17,132 @@ var createStorageSdk = ({ storageClient }) => {
72
17
  return data;
73
18
  };
74
19
  const createTable = async (bucketId, body, options) => {
75
- const job = await storageClient.tables.createTableAsync(bucketId, body, options?.abortSignal);
20
+ const job = await storageClient.tables.createTableAsync(
21
+ { bucketId, ...body },
22
+ options?.abortSignal
23
+ );
76
24
  return waitForJob(job, options);
77
25
  };
78
26
  const createTableDefinition = async (bucketId, body, options) => {
79
27
  const job = await storageClient.tables.createTableDefinitionAsync(
80
- bucketId,
81
- body,
28
+ { bucketId, ...body },
82
29
  options?.abortSignal
83
30
  );
84
31
  return waitForJob(job, options);
85
32
  };
86
33
  const importFromFile = async (tableId, body, options) => {
87
- const job = await storageClient.tables.importAsync(tableId, body, options?.abortSignal);
34
+ const job = await storageClient.tables.importAsync({ tableId, ...body }, options?.abortSignal);
88
35
  return waitForJob(job, options);
89
36
  };
90
37
  const exportToFile = async (tableId, body, options) => {
91
- const job = await storageClient.tables.exportAsync(tableId, body, options?.abortSignal);
38
+ const job = await storageClient.tables.exportAsync({ tableId, ...body }, options?.abortSignal);
92
39
  return waitForJob(job, options);
93
40
  };
94
- const getBucketListing = async (bucketId, signal) => storageClient.buckets.getListing(bucketId, signal);
95
- const listBucketListings = async (signal) => storageClient.buckets.listListings(signal);
96
41
  const createBucketListing = async (bucketId, input, options) => {
97
- const job = await storageClient.buckets.createListing(bucketId, input, options?.abortSignal);
42
+ const job = await storageClient.bucketListings.createListingAsync(
43
+ { bucketId, ...input },
44
+ options?.abortSignal
45
+ );
98
46
  return waitForJob(job, options);
99
47
  };
100
48
  const updateBucketListing = async (bucketId, input, options) => {
101
- const job = await storageClient.buckets.updateListing(bucketId, input, options?.abortSignal);
49
+ const job = await storageClient.bucketListings.updateListingAsync(
50
+ { bucketId, ...input },
51
+ options?.abortSignal
52
+ );
102
53
  return waitForJob(job, options);
103
54
  };
104
55
  const deleteBucketListing = async (bucketId, options) => {
105
- const job = await storageClient.buckets.deleteListing(bucketId, options?.abortSignal);
56
+ const job = await storageClient.bucketListings.deleteListingAsync(
57
+ bucketId,
58
+ options?.abortSignal
59
+ );
106
60
  return waitForJob(job, options);
107
61
  };
108
- const shareBucketToOrganization = async (bucketId, options) => {
109
- const job = await storageClient.buckets.shareBucketToOrganization(
110
- bucketId,
62
+ const shareBucketToOrganization = async (input, options) => {
63
+ const job = await storageClient.bucketSharing.shareBucketToOrganizationAsync(
64
+ input,
111
65
  options?.abortSignal
112
66
  );
113
67
  return waitForJob(job, options);
114
68
  };
115
- const shareBucketToOrganizationProject = async (bucketId, options) => {
116
- const job = await storageClient.buckets.shareBucketToOrganizationProject(
117
- bucketId,
69
+ const shareBucketToOrganizationProject = async (input, options) => {
70
+ const job = await storageClient.bucketSharing.shareBucketToOrganizationProjectAsync(
71
+ input,
118
72
  options?.abortSignal
119
73
  );
120
74
  return waitForJob(job, options);
121
75
  };
122
- const shareBucketToProjects = async (bucketId, body, options) => {
123
- const job = await storageClient.buckets.shareBucketToProjects(
124
- bucketId,
125
- body,
76
+ const shareBucketToProjects = async (input, options) => {
77
+ const job = await storageClient.bucketSharing.shareBucketToProjectsAsync(
78
+ input,
126
79
  options?.abortSignal
127
80
  );
128
81
  return waitForJob(job, options);
129
82
  };
130
- const shareBucketToUsers = async (bucketId, body, options) => {
131
- const job = await storageClient.buckets.shareBucketToUsers(
132
- bucketId,
133
- body,
83
+ const shareBucketToUsers = async (input, options) => {
84
+ const job = await storageClient.bucketSharing.shareBucketToUsersAsync(
85
+ input,
134
86
  options?.abortSignal
135
87
  );
136
88
  return waitForJob(job, options);
137
89
  };
138
- const unshareBucket = async (bucketId, options) => {
139
- const job = await storageClient.buckets.unshareBucket(bucketId, options?.abortSignal);
90
+ const unshareBucket = async (input, options) => {
91
+ const job = await storageClient.bucketSharing.unshareBucketAsync(input, options?.abortSignal);
140
92
  return waitForJob(job, options);
141
93
  };
142
- const forceUnlinkBucket = async (bucketId, linkedProjectId, options) => {
143
- const job = await storageClient.buckets.forceUnlinkBucket(
144
- bucketId,
145
- linkedProjectId,
94
+ const forceUnlinkBucket = async (input, options) => {
95
+ const job = await storageClient.bucketSharing.forceUnlinkBucketAsync(
96
+ input,
146
97
  options?.abortSignal
147
98
  );
148
99
  return waitForJob(job, options);
149
100
  };
150
101
  const registerBucket = async (body, options) => {
151
- const job = await storageClient.buckets.registerBucket(body, options?.abortSignal);
102
+ const job = await storageClient.bucketExternal.registerBucketAsync(body, options?.abortSignal);
152
103
  return waitForJob(job, options);
153
104
  };
154
105
  const refreshExternalBucket = async (bucketId, query, options) => {
155
- const job = await storageClient.buckets.refreshExternalBucket(
156
- bucketId,
157
- query,
106
+ const job = await storageClient.bucketExternal.refreshExternalBucketAsync(
107
+ { bucketId, ...query },
158
108
  options?.abortSignal
159
109
  );
160
110
  return waitForJob(job, options);
161
111
  };
162
112
  const createSnapshot = async (input, options) => {
163
- const job = await storageClient.tables.createSnapshot(input, options?.abortSignal);
113
+ const job = await storageClient.snapshots.createSnapshotAsync(input, options?.abortSignal);
164
114
  return waitForJob(job, options);
165
115
  };
166
- const pullTable = async (tableId, options) => {
167
- const job = await storageClient.tables.pullTable(tableId, options?.abortSignal);
116
+ const pullTable = async (input, options) => {
117
+ const job = await storageClient.tables.pullTableAsync(input, options?.abortSignal);
168
118
  return waitForJob(job, options);
169
119
  };
170
120
  const addTableColumn = async (tableId, body, options) => {
171
- const job = await storageClient.columns.addTableColumn(tableId, body, options?.abortSignal);
121
+ const job = await storageClient.columns.addTableColumnAsync(
122
+ { id: tableId, ...body },
123
+ options?.abortSignal
124
+ );
172
125
  return waitForJob(job, options);
173
126
  };
174
127
  const deleteTableColumn = async (tableId, columnName, query, options) => {
175
- const job = await storageClient.columns.deleteTableColumn(
176
- tableId,
177
- columnName,
178
- query,
128
+ const job = await storageClient.columns.deleteTableColumnAsync(
129
+ { tableId, columnName, ...query },
179
130
  options?.abortSignal
180
131
  );
181
132
  return waitForJob(job, options);
182
133
  };
183
134
  const createTablePrimaryKey = async (tableId, body, options) => {
184
- const job = await storageClient.columns.createTablePrimaryKey(
185
- tableId,
186
- body,
135
+ const job = await storageClient.columns.createTablePrimaryKeyAsync(
136
+ { tableId, ...body },
187
137
  options?.abortSignal
188
138
  );
189
139
  return waitForJob(job, options);
190
140
  };
191
141
  const removeTablePrimaryKey = async (tableId, options) => {
192
- const job = await storageClient.columns.removeTablePrimaryKey(tableId, options?.abortSignal);
142
+ const job = await storageClient.columns.removeTablePrimaryKeyAsync(
143
+ tableId,
144
+ options?.abortSignal
145
+ );
193
146
  return waitForJob(job, options);
194
147
  };
195
148
  return {
@@ -197,8 +150,6 @@ var createStorageSdk = ({ storageClient }) => {
197
150
  createTableDefinition,
198
151
  importFromFile,
199
152
  exportToFile,
200
- getBucketListing,
201
- listBucketListings,
202
153
  createBucketListing,
203
154
  updateBucketListing,
204
155
  deleteBucketListing,
@@ -348,17 +299,14 @@ var removeBranchFromUrl = (url) => {
348
299
  };
349
300
 
350
301
  exports.FQID_TYPES = FQID_TYPES;
351
- exports.PollException = PollException;
352
302
  exports.constructFQID = constructFQID;
353
303
  exports.createStorageSdk = createStorageSdk;
354
- exports.delay = delay;
355
304
  exports.parse = parse;
356
305
  exports.parseCurrentDevBranchIdFromUrl = parseCurrentDevBranchIdFromUrl;
357
306
  exports.parseDevBranchId = parseDevBranchId;
358
307
  exports.parseFQID = parseFQID;
359
- exports.poll = poll;
360
308
  exports.prefixTagsWithDevBranchId = prefixTagsWithDevBranchId;
361
309
  exports.removeBranchFromUrl = removeBranchFromUrl;
362
310
  exports.tableIdParser = tableIdParser;
363
- //# sourceMappingURL=chunk-F6ZAYTBX.cjs.map
364
- //# sourceMappingURL=chunk-F6ZAYTBX.cjs.map
311
+ //# sourceMappingURL=chunk-VB56OVFM.cjs.map
312
+ //# sourceMappingURL=chunk-VB56OVFM.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/sdks/storage/storageSdk.ts","../src/sdks/storage/tableIdParser.ts","../src/sdks/storage/fqid.ts","../src/sdks/storage/devBranch.ts"],"names":["poll"],"mappings":"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","file":"chunk-VB56OVFM.cjs","sourcesContent":["import type { createStorageClient } from '../../clients/storage';\nimport type {\n RefreshExternalBucketQuery,\n RegisterBucketBody,\n} from '../../clients/storage/bucketExternal/types';\nimport type {\n CreateBucketListingBody,\n UpdateBucketListingBody,\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 AddTableColumnBody,\n CreateTablePrimaryKeyBody,\n DeleteTableColumnQuery,\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 CreateTableAsyncBody,\n CreateTableDefinitionBody,\n PullTableAsyncInput,\n TableExportAsyncBody,\n TableImportAsyncBody,\n} from '../../clients/storage/tables/types';\nimport { poll } from '../../utils';\n\nconst DEFAULT_POLL_INTERVAL = 2000;\n\nconst JOB_TERMINAL_STATUSES = new Set(['success', 'warning', 'error', 'terminated', 'cancelled']);\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 const { data } = await poll({\n pollFn: (abortSignal) => storageClient.jobs.getJob<Operation>(job.id, abortSignal),\n isDone: (j) => JOB_TERMINAL_STATUSES.has(j.status),\n interval: options?.interval ?? DEFAULT_POLL_INTERVAL,\n maxAttempts: options?.maxAttempts,\n abortSignal: options?.abortSignal,\n });\n\n return data;\n };\n\n const createTable = async (bucketId: string, body: CreateTableAsyncBody, options?: Options) => {\n const job = await storageClient.tables.createTableAsync(\n { bucketId, ...body },\n options?.abortSignal,\n );\n return waitForJob(job, options);\n };\n\n const createTableDefinition = async (\n bucketId: string,\n body: CreateTableDefinitionBody,\n options?: Options,\n ) => {\n const job = await storageClient.tables.createTableDefinitionAsync(\n { bucketId, ...body },\n options?.abortSignal,\n );\n return waitForJob(job, options);\n };\n\n const importFromFile = async (tableId: string, body: TableImportAsyncBody, options?: Options) => {\n const job = await storageClient.tables.importAsync({ tableId, ...body }, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const exportToFile = async (tableId: string, body?: TableExportAsyncBody, options?: Options) => {\n const job = await storageClient.tables.exportAsync({ tableId, ...body }, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const createBucketListing = async (\n bucketId: string,\n input: CreateBucketListingBody,\n options?: Options,\n ) => {\n const job = await storageClient.bucketListings.createListingAsync(\n { bucketId, ...input },\n options?.abortSignal,\n );\n return waitForJob(job, options);\n };\n\n const updateBucketListing = async (\n bucketId: string,\n input: UpdateBucketListingBody,\n options?: Options,\n ) => {\n const job = await storageClient.bucketListings.updateListingAsync(\n { bucketId, ...input },\n options?.abortSignal,\n );\n return waitForJob(job, options);\n };\n\n const deleteBucketListing = async (bucketId: string, options?: Options) => {\n const job = await storageClient.bucketListings.deleteListingAsync(\n bucketId,\n options?.abortSignal,\n );\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 (body: RegisterBucketBody, options?: Options) => {\n const job = await storageClient.bucketExternal.registerBucketAsync(body, options?.abortSignal);\n return waitForJob(job, options);\n };\n\n const refreshExternalBucket = async (\n bucketId: string,\n query?: RefreshExternalBucketQuery,\n options?: Options,\n ) => {\n const job = await storageClient.bucketExternal.refreshExternalBucketAsync(\n { bucketId, ...query },\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 (tableId: string, body: AddTableColumnBody, options?: Options) => {\n const job = await storageClient.columns.addTableColumnAsync(\n { id: tableId, ...body },\n options?.abortSignal,\n );\n return waitForJob(job, options);\n };\n\n const deleteTableColumn = async (\n tableId: string,\n columnName: string,\n query?: DeleteTableColumnQuery,\n options?: Options,\n ) => {\n const job = await storageClient.columns.deleteTableColumnAsync(\n { tableId, columnName, ...query },\n options?.abortSignal,\n );\n return waitForJob(job, options);\n };\n\n const createTablePrimaryKey = async (\n tableId: string,\n body: CreateTablePrimaryKeyBody,\n options?: Options,\n ) => {\n const job = await storageClient.columns.createTablePrimaryKeyAsync(\n { tableId, ...body },\n options?.abortSignal,\n );\n return waitForJob(job, options);\n };\n\n const removeTablePrimaryKey = async (tableId: string, options?: Options) => {\n const job = await storageClient.columns.removeTablePrimaryKeyAsync(\n tableId,\n options?.abortSignal,\n );\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\nexport const removeBranchFromUrl = (url: string): string => {\n const partToRemove = 'branch/\\\\d+/'; // This pattern matches \"branch/\" followed by one or more digits\n const regex = new RegExp(partToRemove, 'g');\n\n return url.replace(regex, '');\n};\n"]}
@@ -1,5 +1,5 @@
1
- import { createAuthHeaders } from './chunk-EDX5D6UY.js';
2
- import { createGenericFetchClient } from './chunk-XHDYLUM4.js';
1
+ import { createAuthHeaders } from './chunk-5A3AQIXR.js';
2
+ import { createGenericFetchClient } from './chunk-2BQBKU6E.js';
3
3
 
4
4
  // src/clients/telemetry/provisioning/provisioning.ts
5
5
  var createProvisioning = (client) => {
@@ -29,5 +29,5 @@ var createTelemetryClient = ({ baseUrl, middlewares, auth }) => {
29
29
  };
30
30
 
31
31
  export { createTelemetryClient };
32
- //# sourceMappingURL=chunk-5XWVWFTC.js.map
33
- //# sourceMappingURL=chunk-5XWVWFTC.js.map
32
+ //# sourceMappingURL=chunk-WQ7NNIJ3.js.map
33
+ //# sourceMappingURL=chunk-WQ7NNIJ3.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/clients/telemetry/provisioning/provisioning.ts","../src/clients/telemetry/telemetryClient.ts"],"names":[],"mappings":";;;;AAIO,IAAM,kBAAA,GAAqB,CAAC,MAAA,KAA+B;AAChE,EAAA,MAAM,iBAAA,GAAoB,OAAO,IAAA,EAA6B,MAAA,KAAyB;AACrF,IAAA,MAAM,EAAE,IAAA,EAAK,GAAI,MAAM,MAAA,CAAO,IAAA;AAAA,MAC5B,yBAAA;AAAA,MACA,EAAE,IAAA,EAAK;AAAA,MACP,EAAE,MAAA;AAAO,KACX;AAEA,IAAA,OAAO,IAAA;AAAA,EACT,CAAA;AAEA,EAAA,OAAO;AAAA,IACL;AAAA,GACF;AACF,CAAA;;;ACVO,IAAM,wBAAwB,CAAC,EAAE,OAAA,EAAS,WAAA,EAAa,MAAK,KAAyB;AAC1F,EAAA,MAAM,SAAS,wBAAA,CAAyB;AAAA,IACtC,OAAA;AAAA,IACA,WAAA;AAAA,IACA,OAAA,EAAS,kBAAkB,IAAI;AAAA,GAChC,CAAA;AAED,EAAA,OAAO;AAAA,IACL,YAAA,EAAc,mBAAmB,MAAM;AAAA,GACzC;AACF","file":"chunk-5XWVWFTC.js","sourcesContent":["import type { GenericFetchClient } from '../telemetryClient';\n\nimport type { CreateCredentialsBody, WorkspaceData } from './types';\n\nexport const createProvisioning = (client: GenericFetchClient) => {\n const createCredentials = async (body: CreateCredentialsBody, signal?: AbortSignal) => {\n const { data } = await client.post<WorkspaceData, void, void, CreateCredentialsBody>(\n '/provisioning/workspace',\n { body },\n { signal },\n );\n\n return data;\n };\n\n return {\n createCredentials,\n };\n};\n","import { createGenericFetchClient } from '../../fetchClient';\nimport { createAuthHeaders } from '../auth';\nimport type { ClientInitOptions } from '../types';\n\nimport { createProvisioning } from './provisioning/provisioning';\n\nexport type GenericFetchClient = ReturnType<typeof createGenericFetchClient>;\n\nexport const createTelemetryClient = ({ baseUrl, middlewares, auth }: ClientInitOptions) => {\n const client = createGenericFetchClient({\n baseUrl,\n middlewares,\n headers: createAuthHeaders(auth),\n });\n\n return {\n provisioning: createProvisioning(client),\n };\n};\n"]}
1
+ {"version":3,"sources":["../src/clients/telemetry/provisioning/provisioning.ts","../src/clients/telemetry/telemetryClient.ts"],"names":[],"mappings":";;;;AAIO,IAAM,kBAAA,GAAqB,CAAC,MAAA,KAA+B;AAChE,EAAA,MAAM,iBAAA,GAAoB,OAAO,IAAA,EAA6B,MAAA,KAAyB;AACrF,IAAA,MAAM,EAAE,IAAA,EAAK,GAAI,MAAM,MAAA,CAAO,IAAA;AAAA,MAC5B,yBAAA;AAAA,MACA,EAAE,IAAA,EAAK;AAAA,MACP,EAAE,MAAA;AAAO,KACX;AAEA,IAAA,OAAO,IAAA;AAAA,EACT,CAAA;AAEA,EAAA,OAAO;AAAA,IACL;AAAA,GACF;AACF,CAAA;;;ACVO,IAAM,wBAAwB,CAAC,EAAE,OAAA,EAAS,WAAA,EAAa,MAAK,KAAyB;AAC1F,EAAA,MAAM,SAAS,wBAAA,CAAyB;AAAA,IACtC,OAAA;AAAA,IACA,WAAA;AAAA,IACA,OAAA,EAAS,kBAAkB,IAAI;AAAA,GAChC,CAAA;AAED,EAAA,OAAO;AAAA,IACL,YAAA,EAAc,mBAAmB,MAAM;AAAA,GACzC;AACF","file":"chunk-WQ7NNIJ3.js","sourcesContent":["import type { GenericFetchClient } from '../telemetryClient';\n\nimport type { CreateCredentialsBody, WorkspaceData } from './types';\n\nexport const createProvisioning = (client: GenericFetchClient) => {\n const createCredentials = async (body: CreateCredentialsBody, signal?: AbortSignal) => {\n const { data } = await client.post<WorkspaceData, void, void, CreateCredentialsBody>(\n '/provisioning/workspace',\n { body },\n { signal },\n );\n\n return data;\n };\n\n return {\n createCredentials,\n };\n};\n","import { createGenericFetchClient } from '../../fetchClient';\nimport { createAuthHeaders } from '../auth';\nimport type { ClientInitOptions } from '../types';\n\nimport { createProvisioning } from './provisioning/provisioning';\n\nexport type GenericFetchClient = ReturnType<typeof createGenericFetchClient>;\n\nexport const createTelemetryClient = ({ baseUrl, middlewares, auth }: ClientInitOptions) => {\n const client = createGenericFetchClient({\n baseUrl,\n middlewares,\n headers: createAuthHeaders(auth),\n });\n\n return {\n provisioning: createProvisioning(client),\n };\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  import { generateUUID } from './chunk-T526LPBK.js';
2
- import { concurrent } from './chunk-SJZ66FD5.js';
2
+ import { concurrent } from './chunk-ERZEQ5JR.js';
3
3
 
4
4
  // src/utils/keboolaUID.ts
5
5
  var KEBOOLA_OBJECT_ID_DELIMITER = "--";
@@ -173,5 +173,5 @@ var createTagSdk = ({ metastoreClient }) => {
173
173
  };
174
174
 
175
175
  export { createTagSdk, keboolaUID };
176
- //# sourceMappingURL=chunk-DHOVQ2TW.js.map
177
- //# sourceMappingURL=chunk-DHOVQ2TW.js.map
176
+ //# sourceMappingURL=chunk-WUFODWZV.js.map
177
+ //# sourceMappingURL=chunk-WUFODWZV.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/utils/keboolaUID.ts","../src/sdks/tag/tagSdk.ts"],"names":[],"mappings":"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","file":"chunk-DHOVQ2TW.js","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"]}
1
+ {"version":3,"sources":["../src/utils/keboolaUID.ts","../src/sdks/tag/tagSdk.ts"],"names":[],"mappings":"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","file":"chunk-WUFODWZV.js","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"]}
@@ -55,9 +55,22 @@ var ComponentId = {
55
55
  EX_AWS_S3: "keboola.ex-aws-s3",
56
56
  KDS_EX_AZURE_BLOB_STORAGE_V2: "kds-team.ex-azure-blob-storage-v2",
57
57
  KDS_EX_AZURE_DATA_LAKE_GEN2: "kds-team.ex-azure-data-lake-gen2",
58
- APIFY: "apify.apify"
58
+ APIFY: "apify.apify",
59
+ // Data-app family — a git repository lives under `parameters.dataApp.git`
60
+ DATA_APPS: "keboola.data-apps",
61
+ SANDBOXES: "keboola.sandboxes",
62
+ // dbt transformations — a git repository lives under `parameters.git`
63
+ DBT_TEST_CORE_KEY_PAIR: "keboola-test.dbt-core-key-pair",
64
+ DBT_TEST_REMOTE_SNOWFLAKE: "keboola-test.dbt-remote-snowflake",
65
+ DBT_TRANSFORMATION: "keboola.dbt-transformation",
66
+ DBT_TRANSFORMATION_LOCAL_BIGQUERY: "keboola.dbt-transformation-local-bigquery",
67
+ DBT_TRANSFORMATION_REMOTE_BIGQUERY: "keboola.dbt-transformation-remote-bigquery",
68
+ DBT_TRANSFORMATION_REMOTE_MSSQL: "keboola.dbt-transformation-remote-mssql",
69
+ DBT_TRANSFORMATION_REMOTE_POSTGRESQL: "keboola.dbt-transformation-remote-postgresql",
70
+ DBT_TRANSFORMATION_REMOTE_REDSHIFT: "keboola.dbt-transformation-remote-redshift",
71
+ DBT_TRANSFORMATION_REMOTE_SNOWFLAKE: "keboola.dbt-transformation-remote-snowflake"
59
72
  };
60
73
 
61
74
  exports.ComponentId = ComponentId;
62
- //# sourceMappingURL=chunk-FJBP3MRI.cjs.map
63
- //# sourceMappingURL=chunk-FJBP3MRI.cjs.map
75
+ //# sourceMappingURL=chunk-WUJ53PP7.cjs.map
76
+ //# sourceMappingURL=chunk-WUJ53PP7.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/constants/componentId.ts"],"names":[],"mappings":";;;AAAO,IAAM,WAAA,GAAc;AAAA,EACzB,WAAA,EAAa,qBAAA;AAAA,EACb,WAAA,EAAa,qBAAA;AAAA,EACb,YAAA,EAAc,sBAAA;AAAA,EACd,eAAA,EAAiB,yBAAA;AAAA,EACjB,mBAAA,EAAqB,6BAAA;AAAA,EACrB,sBAAA,EAAwB,gCAAA;AAAA,EACxB,yBAAA,EAA2B,mCAAA;AAAA,EAC3B,YAAA,EAAc,sBAAA;AAAA,EACd,gBAAA,EAAkB,0BAAA;AAAA,EAClB,UAAA,EAAY,oBAAA;AAAA,EACZ,WAAA,EAAa,wBAAA;AAAA,EACb,WAAA,EAAa,wBAAA;AAAA,EACb,UAAA,EAAY,oBAAA;AAAA,EACZ,YAAA,EAAc,sBAAA;AAAA,EACd,UAAA,EAAY,qBAAA;AAAA,EACZ,SAAA,EAAW,oBAAA;AAAA,EACX,WAAA,EAAa,sBAAA;AAAA,EACb,YAAA,EAAc,uBAAA;AAAA,EACd,cAAA,EAAgB,wBAAA;AAAA,EAChB,UAAA,EAAY,oBAAA;AAAA,EACZ,SAAA,EAAW,mBAAA;AAAA;AAAA,EAGX,yBAAA,EAA2B,mCAAA;AAAA,EAC3B,eAAA,EAAiB,yBAAA;AAAA;AAAA,EAGjB,WAAA,EAAa,qBAAA;AAAA,EACb,WAAA,EAAa,qBAAA;AAAA,EACb,cAAA,EAAgB,wBAAA;AAAA,EAChB,cAAA,EAAgB,wBAAA;AAAA,EAChB,SAAA,EAAW,mBAAA;AAAA,EACX,cAAA,EAAgB,wBAAA;AAAA,EAChB,WAAA,EAAa,qBAAA;AAAA,EACb,iBAAA,EAAmB,2BAAA;AAAA,EACnB,YAAA,EAAc,sBAAA;AAAA,EACd,eAAA,EAAiB,yBAAA;AAAA,EACjB,cAAA,EAAgB,wBAAA;AAAA,EAChB,cAAA,EAAgB,wBAAA;AAAA,EAChB,YAAA,EAAc,sBAAA;AAAA,EACd,UAAA,EAAY,oBAAA;AAAA,EACZ,eAAA,EAAiB,yBAAA;AAAA,EACjB,oBAAA,EAAsB,8BAAA;AAAA,EACtB,WAAA,EAAa,qBAAA;AAAA,EACb,eAAA,EAAiB,sBAAA;AAAA,EACjB,kBAAA,EAAoB,yBAAA;AAAA;AAAA,EAGpB,aAAA,EAAe,uBAAA;AAAA;AAAA,EAGf,OAAA,EAAS,iBAAA;AAAA,EACT,MAAA,EAAQ,gBAAA;AAAA,EACR,WAAA,EAAa,qBAAA;AAAA,EACb,SAAA,EAAW,mBAAA;AAAA,EACX,4BAAA,EAA8B,mCAAA;AAAA,EAC9B,2BAAA,EAA6B,kCAAA;AAAA,EAC7B,KAAA,EAAO,aAAA;AAAA;AAAA,EAGP,SAAA,EAAW,mBAAA;AAAA,EACX,SAAA,EAAW,mBAAA;AAAA;AAAA,EAGX,sBAAA,EAAwB,gCAAA;AAAA,EACxB,yBAAA,EAA2B,mCAAA;AAAA,EAC3B,kBAAA,EAAoB,4BAAA;AAAA,EACpB,iCAAA,EAAmC,2CAAA;AAAA,EACnC,kCAAA,EAAoC,4CAAA;AAAA,EACpC,+BAAA,EAAiC,yCAAA;AAAA,EACjC,oCAAA,EAAsC,8CAAA;AAAA,EACtC,kCAAA,EAAoC,4CAAA;AAAA,EACpC,mCAAA,EAAqC;AACvC","file":"chunk-WUJ53PP7.cjs","sourcesContent":["export const ComponentId = {\n WR_DB_MYSQL: 'keboola.wr-db-mysql',\n WR_DB_PGSQL: 'keboola.wr-db-pgsql',\n WR_DB_ORACLE: 'keboola.wr-db-oracle',\n WR_DB_SNOWFLAKE: 'keboola.wr-db-snowflake',\n WR_DB_SNOWFLAKE_GCS: 'keboola.wr-db-snowflake-gcs',\n WR_DB_SNOWFLAKE_GCS_S3: 'keboola.wr-db-snowflake-gcs-s3',\n WR_SNOWFLAKE_BLOB_STORAGE: 'keboola.wr-snowflake-blob-storage',\n WR_LOOKER_V2: 'keboola.wr-looker-v2',\n APP_DATA_GATEWAY: 'keboola.app-data-gateway',\n WR_SYNAPSE: 'keboola.wr-synapse',\n WR_REDSHIFT: 'keboola.wr-redshift-v2',\n WR_DB_MSSQL: 'keboola.wr-db-mssql-v2',\n WR_DB_HIVE: 'keboola.wr-db-hive',\n WR_DB_IMPALA: 'keboola.wr-db-impala',\n WR_PAIRITY: 'kds-team.wr-pairity',\n WR_EXASOL: 'kds-team.wr-exasol',\n WR_FIREBOLT: 'kds-team.wr-firebolt',\n WR_HIVE_CSAS: 'kds-team.wr-hive-csas',\n WR_THOUGHTSPOT: 'keboola.wr-thoughtspot',\n WR_SISENSE: 'keboola.wr-sisense',\n SCHEDULER: 'keboola.scheduler',\n\n // App-specific writers (bespoke credential blocks)\n APP_SNOWFLAKE_DWH_MANAGER: 'keboola.app-snowflake-dwh-manager',\n GOODDATA_WRITER: 'keboola.gooddata-writer',\n\n // DB extractors (ex-db-generic family)\n EX_DB_MYSQL: 'keboola.ex-db-mysql',\n EX_DB_PGSQL: 'keboola.ex-db-pgsql',\n EX_DB_REDSHIFT: 'keboola.ex-db-redshift',\n EX_DB_FIREBIRD: 'keboola.ex-db-firebird',\n EX_DB_DB2: 'keboola.ex-db-db2',\n EX_DB_DB2_BATA: 'keboola.ex-db-db2-bata',\n EX_DB_MSSQL: 'keboola.ex-db-mssql',\n EX_DB_MSSQL_CDATA: 'keboola.ex-db-mssql-cdata',\n EX_DB_ORACLE: 'keboola.ex-db-oracle',\n EX_DB_SNOWFLAKE: 'keboola.ex-db-snowflake',\n EX_DB_NETSUITE: 'keboola.ex-db-netsuite',\n EX_DB_INFORMIX: 'keboola.ex-db-informix',\n EX_DB_IMPALA: 'keboola.ex-db-impala',\n EX_DB_HIVE: 'keboola.ex-db-hive',\n EX_DB_HIVE_CSAS: 'keboola.ex-db-hive-csas',\n EX_DB_HIVE_CSAS_TEST: 'keboola.ex-db-hive-csas-test',\n EX_TERADATA: 'keboola.ex-teradata',\n KDS_EX_NETSUITE: 'kds-team.ex-netsuite',\n KDS_EX_PROGRESS_DB: 'kds-team.ex-progress-db',\n\n // Google (OAuth) components\n EX_GOOGLE_ADS: 'keboola.ex-google-ads',\n\n // File/connection extractors (ex family, no shared credential base)\n EX_HTTP: 'keboola.ex-http',\n EX_FTP: 'keboola.ex-ftp',\n EX_FTP_CSAS: 'keboola.ex-ftp-csas',\n EX_AWS_S3: 'keboola.ex-aws-s3',\n KDS_EX_AZURE_BLOB_STORAGE_V2: 'kds-team.ex-azure-blob-storage-v2',\n KDS_EX_AZURE_DATA_LAKE_GEN2: 'kds-team.ex-azure-data-lake-gen2',\n APIFY: 'apify.apify',\n\n // Data-app family — a git repository lives under `parameters.dataApp.git`\n DATA_APPS: 'keboola.data-apps',\n SANDBOXES: 'keboola.sandboxes',\n\n // dbt transformations — a git repository lives under `parameters.git`\n DBT_TEST_CORE_KEY_PAIR: 'keboola-test.dbt-core-key-pair',\n DBT_TEST_REMOTE_SNOWFLAKE: 'keboola-test.dbt-remote-snowflake',\n DBT_TRANSFORMATION: 'keboola.dbt-transformation',\n DBT_TRANSFORMATION_LOCAL_BIGQUERY: 'keboola.dbt-transformation-local-bigquery',\n DBT_TRANSFORMATION_REMOTE_BIGQUERY: 'keboola.dbt-transformation-remote-bigquery',\n DBT_TRANSFORMATION_REMOTE_MSSQL: 'keboola.dbt-transformation-remote-mssql',\n DBT_TRANSFORMATION_REMOTE_POSTGRESQL: 'keboola.dbt-transformation-remote-postgresql',\n DBT_TRANSFORMATION_REMOTE_REDSHIFT: 'keboola.dbt-transformation-remote-redshift',\n DBT_TRANSFORMATION_REMOTE_SNOWFLAKE: 'keboola.dbt-transformation-remote-snowflake',\n} as const;\n\nexport type ComponentId = (typeof ComponentId)[keyof typeof ComponentId];\n"]}