@keboola/api-client 1.0.1 → 3.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 (213) hide show
  1. package/dist/ai/index.cjs +5 -201
  2. package/dist/ai/index.cjs.map +1 -1
  3. package/dist/ai/index.js +2 -201
  4. package/dist/ai/index.js.map +1 -1
  5. package/dist/assets/index.cjs +5 -180
  6. package/dist/assets/index.cjs.map +1 -1
  7. package/dist/assets/index.js +2 -180
  8. package/dist/assets/index.js.map +1 -1
  9. package/dist/chat/index.cjs +6 -422
  10. package/dist/chat/index.cjs.map +1 -1
  11. package/dist/chat/index.js +3 -422
  12. package/dist/chat/index.js.map +1 -1
  13. package/dist/chat/suggestions.cjs +70 -152
  14. package/dist/chat/suggestions.cjs.map +1 -1
  15. package/dist/chat/suggestions.js +1 -138
  16. package/dist/chat/suggestions.js.map +1 -1
  17. package/dist/chunk-3B7L6MCG.js +189 -0
  18. package/dist/chunk-3B7L6MCG.js.map +1 -0
  19. package/dist/chunk-3T54WH4X.cjs +42 -0
  20. package/dist/chunk-3T54WH4X.cjs.map +1 -0
  21. package/dist/chunk-3Y6NK7TC.js +34 -0
  22. package/dist/chunk-3Y6NK7TC.js.map +1 -0
  23. package/dist/chunk-4RC5E3SL.js +140 -0
  24. package/dist/chunk-4RC5E3SL.js.map +1 -0
  25. package/dist/chunk-633QJMHH.cjs +73 -0
  26. package/dist/chunk-633QJMHH.cjs.map +1 -0
  27. package/dist/chunk-6RQDX6JY.cjs +132 -0
  28. package/dist/chunk-6RQDX6JY.cjs.map +1 -0
  29. package/dist/chunk-76AHKXLC.cjs +29 -0
  30. package/dist/chunk-76AHKXLC.cjs.map +1 -0
  31. package/dist/chunk-7FY6COWG.js +71 -0
  32. package/dist/chunk-7FY6COWG.js.map +1 -0
  33. package/dist/chunk-7J2R6XHB.js +3 -0
  34. package/dist/chunk-7J2R6XHB.js.map +1 -0
  35. package/dist/chunk-BGLICNTG.cjs +33 -0
  36. package/dist/chunk-BGLICNTG.cjs.map +1 -0
  37. package/dist/chunk-BR3SBEFE.cjs +182 -0
  38. package/dist/chunk-BR3SBEFE.cjs.map +1 -0
  39. package/dist/chunk-CVV4HROS.cjs +37 -0
  40. package/dist/chunk-CVV4HROS.cjs.map +1 -0
  41. package/dist/chunk-DCTDH77P.cjs +277 -0
  42. package/dist/chunk-DCTDH77P.cjs.map +1 -0
  43. package/dist/chunk-EBCZUGUX.js +35 -0
  44. package/dist/chunk-EBCZUGUX.js.map +1 -0
  45. package/dist/chunk-EY5LALX2.cjs +26 -0
  46. package/dist/chunk-EY5LALX2.cjs.map +1 -0
  47. package/dist/chunk-FBQHHAL5.js +40 -0
  48. package/dist/chunk-FBQHHAL5.js.map +1 -0
  49. package/dist/chunk-GF4XZK5N.cjs +43 -0
  50. package/dist/chunk-GF4XZK5N.cjs.map +1 -0
  51. package/dist/chunk-GNPQB3MT.js +27 -0
  52. package/dist/chunk-GNPQB3MT.js.map +1 -0
  53. package/dist/chunk-GO6SOMGL.js +181 -0
  54. package/dist/chunk-GO6SOMGL.js.map +1 -0
  55. package/dist/chunk-HCNNMUTR.cjs +36 -0
  56. package/dist/chunk-HCNNMUTR.cjs.map +1 -0
  57. package/dist/chunk-HPVTVQBJ.cjs +238 -0
  58. package/dist/chunk-HPVTVQBJ.cjs.map +1 -0
  59. package/dist/chunk-HYUGRMCY.cjs +247 -0
  60. package/dist/chunk-HYUGRMCY.cjs.map +1 -0
  61. package/dist/chunk-IJMQCOBC.js +34 -0
  62. package/dist/chunk-IJMQCOBC.js.map +1 -0
  63. package/dist/chunk-IY3VNVXD.cjs +183 -0
  64. package/dist/chunk-IY3VNVXD.cjs.map +1 -0
  65. package/dist/chunk-JKFIB6SQ.cjs +685 -0
  66. package/dist/chunk-JKFIB6SQ.cjs.map +1 -0
  67. package/dist/chunk-JLNOESHX.cjs +47 -0
  68. package/dist/chunk-JLNOESHX.cjs.map +1 -0
  69. package/dist/chunk-JURD5MC3.js +178 -0
  70. package/dist/chunk-JURD5MC3.js.map +1 -0
  71. package/dist/chunk-LV3ZWNDC.js +75 -0
  72. package/dist/chunk-LV3ZWNDC.js.map +1 -0
  73. package/dist/chunk-LZ6A6J2E.cjs +77 -0
  74. package/dist/chunk-LZ6A6J2E.cjs.map +1 -0
  75. package/dist/chunk-OKVYLO6C.js +108 -0
  76. package/dist/chunk-OKVYLO6C.js.map +1 -0
  77. package/dist/chunk-PD3LJYS2.js +218 -0
  78. package/dist/chunk-PD3LJYS2.js.map +1 -0
  79. package/dist/chunk-PV4HIVW2.js +130 -0
  80. package/dist/chunk-PV4HIVW2.js.map +1 -0
  81. package/dist/chunk-R7PD3BRA.js +261 -0
  82. package/dist/chunk-R7PD3BRA.js.map +1 -0
  83. package/dist/chunk-SAEG42HW.js +64 -0
  84. package/dist/chunk-SAEG42HW.js.map +1 -0
  85. package/dist/chunk-TIIRBQUA.cjs +110 -0
  86. package/dist/chunk-TIIRBQUA.cjs.map +1 -0
  87. package/dist/chunk-TNJWOHPM.js +948 -0
  88. package/dist/chunk-TNJWOHPM.js.map +1 -0
  89. package/dist/chunk-TXFQ4YIK.js +31 -0
  90. package/dist/chunk-TXFQ4YIK.js.map +1 -0
  91. package/dist/chunk-U5SE6W5M.cjs +158 -0
  92. package/dist/chunk-U5SE6W5M.cjs.map +1 -0
  93. package/dist/chunk-UABYNGBZ.js +39 -0
  94. package/dist/chunk-UABYNGBZ.js.map +1 -0
  95. package/dist/chunk-UXF53ZOV.js +220 -0
  96. package/dist/chunk-UXF53ZOV.js.map +1 -0
  97. package/dist/chunk-VAOCYA6B.js +20 -0
  98. package/dist/chunk-VAOCYA6B.js.map +1 -0
  99. package/dist/chunk-VS5PM7KL.js +45 -0
  100. package/dist/chunk-VS5PM7KL.js.map +1 -0
  101. package/dist/chunk-WQ7EZWBF.js +24 -0
  102. package/dist/chunk-WQ7EZWBF.js.map +1 -0
  103. package/dist/chunk-XFC52BJV.cjs +952 -0
  104. package/dist/chunk-XFC52BJV.cjs.map +1 -0
  105. package/dist/chunk-XPDEQND7.cjs +4 -0
  106. package/dist/chunk-XPDEQND7.cjs.map +1 -0
  107. package/dist/chunk-XUDMML5C.cjs +211 -0
  108. package/dist/chunk-XUDMML5C.cjs.map +1 -0
  109. package/dist/chunk-YPCD7M2N.cjs +22 -0
  110. package/dist/chunk-YPCD7M2N.cjs.map +1 -0
  111. package/dist/chunk-YUEYMIMI.cjs +67 -0
  112. package/dist/chunk-YUEYMIMI.cjs.map +1 -0
  113. package/dist/chunk-YXCVNX2Q.cjs +36 -0
  114. package/dist/chunk-YXCVNX2Q.cjs.map +1 -0
  115. package/dist/chunk-ZEMKE6DI.js +681 -0
  116. package/dist/chunk-ZEMKE6DI.js.map +1 -0
  117. package/dist/dataScience/index.cjs +8 -412
  118. package/dist/dataScience/index.cjs.map +1 -1
  119. package/dist/dataScience/index.js +2 -391
  120. package/dist/dataScience/index.js.map +1 -1
  121. package/dist/domain/permissions/index.cjs +131 -2
  122. package/dist/domain/permissions/index.cjs.map +1 -1
  123. package/dist/domain/permissions/index.d.cts +108 -2
  124. package/dist/domain/permissions/index.d.ts +108 -2
  125. package/dist/domain/permissions/index.js +106 -3
  126. package/dist/domain/permissions/index.js.map +1 -1
  127. package/dist/editor/index.cjs +5 -264
  128. package/dist/editor/index.cjs.map +1 -1
  129. package/dist/editor/index.js +2 -264
  130. package/dist/editor/index.js.map +1 -1
  131. package/dist/encryption/index.cjs +5 -190
  132. package/dist/encryption/index.cjs.map +1 -1
  133. package/dist/encryption/index.js +2 -190
  134. package/dist/encryption/index.js.map +1 -1
  135. package/dist/import/index.cjs +5 -196
  136. package/dist/import/index.cjs.map +1 -1
  137. package/dist/import/index.js +2 -196
  138. package/dist/import/index.js.map +1 -1
  139. package/dist/index.cjs +334 -3752
  140. package/dist/index.cjs.map +1 -1
  141. package/dist/index.d.cts +1814 -104
  142. package/dist/index.d.ts +1814 -104
  143. package/dist/index.js +176 -3627
  144. package/dist/index.js.map +1 -1
  145. package/dist/management/index.cjs +10 -881
  146. package/dist/management/index.cjs.map +1 -1
  147. package/dist/management/index.js +3 -880
  148. package/dist/management/index.js.map +1 -1
  149. package/dist/metastore/index.cjs +5 -337
  150. package/dist/metastore/index.cjs.map +1 -1
  151. package/dist/metastore/index.js +2 -337
  152. package/dist/metastore/index.js.map +1 -1
  153. package/dist/oauth/index.cjs +5 -226
  154. package/dist/oauth/index.cjs.map +1 -1
  155. package/dist/oauth/index.js +2 -226
  156. package/dist/oauth/index.js.map +1 -1
  157. package/dist/project-Bzslbq4u.d.ts +16 -0
  158. package/dist/project-CYhB6rYN.d.cts +16 -0
  159. package/dist/queryService/index.cjs +5 -248
  160. package/dist/queryService/index.cjs.map +1 -1
  161. package/dist/queryService/index.js +2 -248
  162. package/dist/queryService/index.js.map +1 -1
  163. package/dist/queue/index.cjs +5 -190
  164. package/dist/queue/index.cjs.map +1 -1
  165. package/dist/queue/index.js +2 -190
  166. package/dist/queue/index.js.map +1 -1
  167. package/dist/sdk/configurations/index.d.cts +2 -12
  168. package/dist/sdk/configurations/index.d.ts +2 -12
  169. package/dist/sdk/storage/index.cjs +49 -267
  170. package/dist/sdk/storage/index.cjs.map +1 -1
  171. package/dist/sdk/storage/index.d.cts +2 -2
  172. package/dist/sdk/storage/index.d.ts +2 -2
  173. package/dist/sdk/storage/index.js +1 -259
  174. package/dist/sdk/storage/index.js.map +1 -1
  175. package/dist/sdk/tag/index.cjs +6 -203
  176. package/dist/sdk/tag/index.cjs.map +1 -1
  177. package/dist/sdk/tag/index.js +2 -206
  178. package/dist/sdk/tag/index.js.map +1 -1
  179. package/dist/status/index.cjs +6 -176
  180. package/dist/status/index.cjs.map +1 -1
  181. package/dist/status/index.js +3 -176
  182. package/dist/status/index.js.map +1 -1
  183. package/dist/status/types.cjs +2 -0
  184. package/dist/status/types.js +1 -1
  185. package/dist/storage/index.cjs +9 -1110
  186. package/dist/storage/index.cjs.map +1 -1
  187. package/dist/storage/index.d.cts +1 -1
  188. package/dist/storage/index.d.ts +1 -1
  189. package/dist/storage/index.js +3 -1110
  190. package/dist/storage/index.js.map +1 -1
  191. package/dist/storage/types.d.cts +39 -2
  192. package/dist/storage/types.d.ts +39 -2
  193. package/dist/{storageClient-DrYOs4Xm.d.ts → storageClient-BgvUM7gy.d.ts} +4 -1
  194. package/dist/{storageClient-DSLTM3Cr.d.cts → storageClient-CDX-GvNV.d.cts} +4 -1
  195. package/dist/{storageSdk-BBqAo0Vx.d.cts → storageSdk-IOIdwqy-.d.cts} +1 -1
  196. package/dist/{storageSdk-ZVmKQQSl.d.ts → storageSdk-qGaWB1dy.d.ts} +1 -1
  197. package/dist/syncActions/index.cjs +5 -364
  198. package/dist/syncActions/index.cjs.map +1 -1
  199. package/dist/syncActions/index.js +2 -345
  200. package/dist/syncActions/index.js.map +1 -1
  201. package/dist/telemetry/index.cjs +5 -187
  202. package/dist/telemetry/index.cjs.map +1 -1
  203. package/dist/telemetry/index.js +2 -187
  204. package/dist/telemetry/index.js.map +1 -1
  205. package/dist/vault/index.cjs +5 -219
  206. package/dist/vault/index.cjs.map +1 -1
  207. package/dist/vault/index.js +2 -219
  208. package/dist/vault/index.js.map +1 -1
  209. package/dist/verify/index.cjs +5 -184
  210. package/dist/verify/index.cjs.map +1 -1
  211. package/dist/verify/index.js +2 -184
  212. package/dist/verify/index.js.map +1 -1
  213. package/package.json +1 -1
@@ -0,0 +1,948 @@
1
+ import { concurrent } from './chunk-EBCZUGUX.js';
2
+ import { normalizeBaseUrl, createGenericFetchClient, createOpenapiFetchClient, KeboolaHttpHeader, isApiError } from './chunk-PD3LJYS2.js';
3
+
4
+ // src/clients/storage/configurationVersions/configurationVersions.ts
5
+ var createConfigurationVersions = (client) => {
6
+ const listConfigurationVersions = async ({ branchId, componentId, configId }, signal) => {
7
+ const { data } = await client.get(
8
+ "/branch/{branchId}/components/{componentId}/configs/{configId}/versions",
9
+ { path: { branchId, componentId, configId } },
10
+ { signal }
11
+ );
12
+ return data;
13
+ };
14
+ const getConfigurationVersion = async ({ branchId, componentId, configId, versionId }, signal) => {
15
+ const { data } = await client.get(
16
+ "/branch/{branchId}/components/{componentId}/configs/{configId}/versions/{versionId}",
17
+ { path: { branchId, componentId, configId, versionId } },
18
+ { signal }
19
+ );
20
+ return data;
21
+ };
22
+ return {
23
+ listConfigurationVersions,
24
+ getConfigurationVersion
25
+ };
26
+ };
27
+
28
+ // src/clients/storage/mergeRequests/mergeRequests.ts
29
+ var createMergeRequests = (client) => {
30
+ const getMergeRequests = async (signal) => {
31
+ const { data } = await client.get("/v2/storage/merge-request", {}, { signal });
32
+ return data;
33
+ };
34
+ const getMergeRequest = async (id, signal) => {
35
+ const { data } = await client.get(
36
+ "/v2/storage/merge-request/{id}",
37
+ { path: { id } },
38
+ { signal }
39
+ );
40
+ return data;
41
+ };
42
+ const getMergeRequestWithActivityLog = async (id, signal) => {
43
+ const { data } = await client.get(
44
+ "/v2/storage/merge-request/{id}",
45
+ { path: { id }, query: { include: "activityLog" } },
46
+ { signal }
47
+ );
48
+ return data;
49
+ };
50
+ const createMergeRequest = async (params) => {
51
+ const { data } = await client.post("/v2/storage/merge-request", { body: params });
52
+ return data;
53
+ };
54
+ const updateMergeRequest = async (id, params) => {
55
+ const { data } = await client.put("/v2/storage/merge-request/{id}", {
56
+ path: { id },
57
+ body: params
58
+ });
59
+ return data;
60
+ };
61
+ const requestReview = async (id) => {
62
+ const { data } = await client.put("/v2/storage/merge-request/{id}/request-review", {
63
+ path: { id }
64
+ });
65
+ return data;
66
+ };
67
+ const approveMergeRequest = async (id) => {
68
+ const { data } = await client.put("/v2/storage/merge-request/{id}/approve", {
69
+ path: { id }
70
+ });
71
+ return data;
72
+ };
73
+ const requestChangesMergeRequest = async (id, reason) => {
74
+ const { data } = await client.put("/v2/storage/merge-request/{id}/request-changes", {
75
+ path: { id },
76
+ body: reason ? { reason } : void 0
77
+ });
78
+ return data;
79
+ };
80
+ const getMergeRequestConflicts = async (id, signal) => {
81
+ const { data } = await client.get(
82
+ "/v2/storage/merge-request/{id}/conflicts",
83
+ { path: { id } },
84
+ { signal }
85
+ );
86
+ return data;
87
+ };
88
+ return {
89
+ getMergeRequests,
90
+ getMergeRequest,
91
+ getMergeRequestWithActivityLog,
92
+ createMergeRequest,
93
+ updateMergeRequest,
94
+ requestReview,
95
+ approveMergeRequest,
96
+ requestChangesMergeRequest,
97
+ getMergeRequestConflicts
98
+ };
99
+ };
100
+
101
+ // src/clients/storage/branches/mappers.ts
102
+ var mapBranchMetadata = (data) => ({
103
+ ...data,
104
+ timestamp: new Date(data.timestamp)
105
+ });
106
+
107
+ // src/clients/storage/branches/branches.ts
108
+ var createBranches = (client) => {
109
+ const getDevBranches = async (signal) => {
110
+ const { data } = await client.get("/dev-branches", {}, { signal });
111
+ return data;
112
+ };
113
+ const createDevBranchJob = async (body) => {
114
+ const { data } = await client.post(
115
+ "/dev-branches",
116
+ {
117
+ body
118
+ }
119
+ );
120
+ return data;
121
+ };
122
+ const updateDevBranch = async ({
123
+ id,
124
+ name,
125
+ description
126
+ }) => {
127
+ const { data } = await client.put(
128
+ "/dev-branches/{id}",
129
+ {
130
+ path: { id },
131
+ body: {
132
+ name,
133
+ description
134
+ }
135
+ }
136
+ );
137
+ return data;
138
+ };
139
+ const deleteDevBranchJob = async (id) => {
140
+ const { data } = await client.delete(
141
+ "/dev-branches/{id}",
142
+ {
143
+ path: { id }
144
+ }
145
+ );
146
+ return data;
147
+ };
148
+ const getDevBranchMetadata = async (id, signal) => {
149
+ const { data } = await client.get(
150
+ "/branch/{id}/metadata",
151
+ { path: { id } },
152
+ { signal }
153
+ );
154
+ return data.map(mapBranchMetadata);
155
+ };
156
+ const saveDevBranchMetadata = async (id, metadata, signal) => {
157
+ const { data } = await client.post("/branch/{id}/metadata", { path: { id }, body: { metadata } }, { signal });
158
+ return data.map(mapBranchMetadata);
159
+ };
160
+ const deleteDevBranchMetadata = async (id, metadataId, signal) => {
161
+ await client.delete(
162
+ "/branch/{id}/metadata/{metadataId}",
163
+ { path: { id, metadataId } },
164
+ { signal }
165
+ );
166
+ };
167
+ return {
168
+ getDevBranches,
169
+ createDevBranchJob,
170
+ updateDevBranch,
171
+ deleteDevBranchJob,
172
+ getDevBranchMetadata,
173
+ saveDevBranchMetadata,
174
+ deleteDevBranchMetadata
175
+ };
176
+ };
177
+
178
+ // src/clients/storage/buckets/listingConversion.ts
179
+ var toBackendSubscribers = (subscribers) => subscribers.map((s) => `${s.type}:${s.email}`);
180
+ var fromBackendSubscribers = (raw) => {
181
+ const result = [];
182
+ for (const entry of raw) {
183
+ const colon = entry.indexOf(":");
184
+ if (colon === -1) continue;
185
+ const prefix = entry.slice(0, colon);
186
+ const email = entry.slice(colon + 1);
187
+ if (prefix !== "user" && prefix !== "group") continue;
188
+ if (email.length === 0) continue;
189
+ result.push({ type: prefix, email });
190
+ }
191
+ return result;
192
+ };
193
+ var toBucketListing = (raw, bucketId) => ({
194
+ bucketId,
195
+ name: raw.name,
196
+ description: raw.description ?? null,
197
+ listingId: raw.bigquery.listingId,
198
+ subscribers: fromBackendSubscribers(raw.bigquery.subscribers),
199
+ createdAt: raw.createdAt
200
+ });
201
+
202
+ // src/clients/storage/buckets/buckets.ts
203
+ var createBuckets = (client) => {
204
+ const getBuckets = async (query = {}, signal) => {
205
+ const { data } = await client.get(
206
+ `/buckets`,
207
+ { query },
208
+ { signal, queryArrayFormat: "comma" }
209
+ );
210
+ return data;
211
+ };
212
+ const getBucket = async (id, signal) => {
213
+ const { data } = await client.get(
214
+ `/buckets/{id}`,
215
+ { path: { id } },
216
+ { signal }
217
+ );
218
+ return data;
219
+ };
220
+ const createBucket = async (body) => {
221
+ const { data } = await client.post(`/buckets`, {
222
+ body
223
+ });
224
+ return data;
225
+ };
226
+ const updateBucket = async (id, body) => {
227
+ const { data } = await client.patch(
228
+ `/buckets/{id}`,
229
+ { path: { id }, body }
230
+ );
231
+ return data;
232
+ };
233
+ const deleteBucket = async (id) => {
234
+ await client.delete(`/buckets/{id}`, { path: { id } });
235
+ };
236
+ const deleteBucketAsync = async (id, options = {}) => {
237
+ const { data } = await client.delete(`/buckets/{id}`, { path: { id }, query: { async: true, ...options } });
238
+ return data;
239
+ };
240
+ const createScheduledRefresh = async (input) => {
241
+ const { branchId, bucketId, cronExpression } = input;
242
+ const { data } = await client.post(`/branch/{branchId}/buckets/{bucketId}/scheduled-tasks/refresh`, {
243
+ path: { branchId, bucketId },
244
+ body: { cronExpression }
245
+ });
246
+ return data;
247
+ };
248
+ const deleteScheduledTask = async (taskId) => {
249
+ await client.delete(`/scheduled-tasks/{taskId}`, {
250
+ path: { taskId }
251
+ });
252
+ };
253
+ const getListing = async (bucketId, signal) => {
254
+ try {
255
+ const { data } = await client.get(
256
+ `/buckets/{bucketId}/listing`,
257
+ { path: { bucketId } },
258
+ { signal }
259
+ );
260
+ return toBucketListing(data, bucketId);
261
+ } catch (error) {
262
+ if (isApiError(error) && error.response.status === 404) return null;
263
+ throw error;
264
+ }
265
+ };
266
+ const createListing = async (bucketId, input, signal) => {
267
+ const { data } = await client.post(
268
+ `/buckets/{bucketId}/listing`,
269
+ {
270
+ path: { bucketId },
271
+ body: {
272
+ listingName: input.name,
273
+ listingDescription: input.description?.trim() || null,
274
+ bigquery: {
275
+ listingId: input.listingId,
276
+ subscribers: toBackendSubscribers(input.subscribers)
277
+ }
278
+ }
279
+ },
280
+ { signal }
281
+ );
282
+ return data;
283
+ };
284
+ const updateListing = async (bucketId, input, signal) => {
285
+ const body = {};
286
+ if (input.name !== void 0) body.exposureName = input.name;
287
+ if (input.description !== void 0) {
288
+ body.exposureDescription = input.description?.trim() || null;
289
+ }
290
+ if (input.subscribers !== void 0) {
291
+ body.bigquery = { subscribers: toBackendSubscribers(input.subscribers) };
292
+ }
293
+ if (Object.keys(body).length === 0) {
294
+ throw new Error("updateListing requires at least one field");
295
+ }
296
+ const { data } = await client.patch(`/buckets/{bucketId}/listing`, { path: { bucketId }, body }, { signal });
297
+ return data;
298
+ };
299
+ const deleteListing = async (bucketId, signal) => {
300
+ const { data } = await client.delete(
301
+ `/buckets/{bucketId}/listing`,
302
+ { path: { bucketId } },
303
+ { signal }
304
+ );
305
+ return data;
306
+ };
307
+ const listListings = async (signal) => {
308
+ const { data } = await client.get(`/listings`, {}, { signal });
309
+ return data.map((row) => toBucketListing(row, row.bucketId));
310
+ };
311
+ return {
312
+ getBuckets,
313
+ getBucket,
314
+ createBucket,
315
+ updateBucket,
316
+ deleteBucket,
317
+ deleteBucketAsync,
318
+ createScheduledRefresh,
319
+ deleteScheduledTask,
320
+ getListing,
321
+ createListing,
322
+ updateListing,
323
+ deleteListing,
324
+ listListings
325
+ };
326
+ };
327
+
328
+ // src/utils/series.ts
329
+ var series = async (options) => concurrent({
330
+ ...options,
331
+ concurrency: 1
332
+ });
333
+
334
+ // src/clients/storage/componentsAndConfigurations/componentsAndConfigurations.ts
335
+ var createComponentsAndConfigurations = (client) => {
336
+ const getComponent = async ({ componentId, branchId = "default" }, signal) => {
337
+ const { data } = await client.get(
338
+ "/branch/{branchId}/components/{componentId}",
339
+ { path: { componentId, branchId } },
340
+ { signal }
341
+ );
342
+ return data;
343
+ };
344
+ const getComponents = async ({ branchId = "default", ...query } = {}, signal) => {
345
+ const { data } = await client.get(
346
+ "/branch/{branchId}/components",
347
+ { path: { branchId }, query },
348
+ { signal, queryArrayFormat: "comma" }
349
+ );
350
+ return data;
351
+ };
352
+ const getConfiguration = async ({ componentId, configId, branchId = "default" }, signal) => {
353
+ const { data } = await client.get(
354
+ "/branch/{branchId}/components/{componentId}/configs/{configId}",
355
+ { path: { componentId, configId, branchId } },
356
+ { signal }
357
+ );
358
+ return data;
359
+ };
360
+ const getConfigurationDiff = async ({ componentId, configId, branchId }, signal) => {
361
+ const { data } = await client.get(
362
+ "/branch/{branchId}/components/{componentId}/configs/{configId}/diff",
363
+ { path: { componentId, configId, branchId } },
364
+ { signal }
365
+ );
366
+ return data;
367
+ };
368
+ const getConfigurationRowDiff = async ({ componentId, configId, rowId, branchId }, signal) => {
369
+ const { data } = await client.get(
370
+ "/branch/{branchId}/components/{componentId}/configs/{configId}/rows/{rowId}/diff",
371
+ { path: { componentId, configId, rowId, branchId } },
372
+ { signal }
373
+ );
374
+ return data;
375
+ };
376
+ const createConfiguration = async ({
377
+ branchId = "default",
378
+ componentId,
379
+ ...body
380
+ }) => {
381
+ const { data } = await client.post("/branch/{branchId}/components/{componentId}/configs", {
382
+ path: { branchId, componentId },
383
+ body
384
+ });
385
+ return data;
386
+ };
387
+ const deleteConfiguration = async (path) => {
388
+ await client.delete(
389
+ "/branch/{branchId}/components/{componentId}/configs/{configId}",
390
+ { path }
391
+ );
392
+ };
393
+ const deleteConfigurations = async ({
394
+ configIds,
395
+ ...rest
396
+ }) => {
397
+ await concurrent({
398
+ items: configIds,
399
+ process: async (configId) => deleteConfiguration({ ...rest, configId })
400
+ });
401
+ };
402
+ const getConfigurations = async ({ componentId, branchId = "default" }, signal) => {
403
+ const { data } = await client.get(
404
+ "/branch/{branchId}/components/{componentId}/configs",
405
+ { path: { componentId, branchId } },
406
+ { signal }
407
+ );
408
+ return data;
409
+ };
410
+ const getConfigurationWorkspaces = async ({
411
+ componentId,
412
+ branchId,
413
+ configId
414
+ }) => {
415
+ const { data } = await client.get(
416
+ "/branch/{branchId}/components/{componentId}/configs/{configId}/workspaces",
417
+ {
418
+ path: { componentId, branchId, configId }
419
+ }
420
+ );
421
+ return data;
422
+ };
423
+ const createConfigurationWorkspace = async ({
424
+ componentId,
425
+ branchId,
426
+ configId,
427
+ ...body
428
+ }) => {
429
+ const { data } = await client.post("/branch/{branchId}/components/{componentId}/configs/{configId}/workspaces", {
430
+ path: { componentId, branchId, configId },
431
+ body
432
+ });
433
+ return data;
434
+ };
435
+ const createConfigurationWorkspaceJob = async ({
436
+ componentId,
437
+ branchId,
438
+ configId,
439
+ ...body
440
+ }) => {
441
+ const { data } = await client.post("/branch/{branchId}/components/{componentId}/configs/{configId}/workspaces", {
442
+ path: { componentId, branchId, configId },
443
+ body,
444
+ query: { async: true }
445
+ });
446
+ return data;
447
+ };
448
+ const createConfigurationRow = async ({
449
+ branchId = "default",
450
+ componentId,
451
+ configId,
452
+ ...body
453
+ }) => {
454
+ const { data } = await client.post("/branch/{branchId}/components/{componentId}/configs/{configId}/rows", {
455
+ path: { branchId, componentId, configId },
456
+ body
457
+ });
458
+ return data;
459
+ };
460
+ const createConfigurationRows = async ({
461
+ branchId = "default",
462
+ componentId,
463
+ configId,
464
+ data
465
+ }, options) => {
466
+ return series({
467
+ items: data,
468
+ process: (rowBody) => {
469
+ return createConfigurationRow({
470
+ branchId,
471
+ componentId,
472
+ configId,
473
+ ...rowBody
474
+ });
475
+ },
476
+ middlewares: options?.middlewares
477
+ });
478
+ };
479
+ const deleteConfigurationRow = async ({
480
+ changeDescription,
481
+ ...path
482
+ }) => {
483
+ await client.delete(
484
+ "/branch/{branchId}/components/{componentId}/configs/{configId}/rows/{rowId}",
485
+ {
486
+ path,
487
+ body: { changeDescription }
488
+ }
489
+ );
490
+ };
491
+ const deleteConfigurationRows = async ({ rowIds, changeDescription, ...input }, options) => {
492
+ await concurrent({
493
+ items: rowIds,
494
+ process: (rowId) => {
495
+ const resolvedDescription = typeof changeDescription === "string" ? changeDescription : changeDescription?.(rowId);
496
+ return deleteConfigurationRow({
497
+ rowId,
498
+ changeDescription: resolvedDescription,
499
+ ...input
500
+ });
501
+ },
502
+ concurrency: 5,
503
+ middlewares: options?.middlewares
504
+ });
505
+ };
506
+ const searchComponentConfigurations = async ({ branchId = "default" } = {}, query, signal) => {
507
+ const { data } = await client.get(
508
+ "/branch/{branchId}/search/component-configurations",
509
+ { path: { branchId }, query },
510
+ { signal, queryArrayFormat: "comma" }
511
+ );
512
+ return data;
513
+ };
514
+ return {
515
+ // components
516
+ getComponent,
517
+ getComponents,
518
+ searchComponentConfigurations,
519
+ // configurations
520
+ createConfiguration,
521
+ getConfiguration,
522
+ getConfigurationDiff,
523
+ getConfigurationRowDiff,
524
+ deleteConfiguration,
525
+ deleteConfigurations,
526
+ getConfigurations,
527
+ // configuration's rows
528
+ createConfigurationRow,
529
+ createConfigurationRows,
530
+ deleteConfigurationRow,
531
+ deleteConfigurationRows,
532
+ // configuration's workspaces
533
+ createConfigurationWorkspace,
534
+ createConfigurationWorkspaceJob,
535
+ getConfigurationWorkspaces
536
+ };
537
+ };
538
+
539
+ // src/clients/storage/events/events.ts
540
+ var createEvents = (client) => {
541
+ const getEvents = async (query, signal) => {
542
+ const { data } = await client.get(
543
+ "/events",
544
+ { query },
545
+ { signal }
546
+ );
547
+ return data;
548
+ };
549
+ const getEvent = async (eventId, signal) => {
550
+ const { data } = await client.get(
551
+ "/events/{eventId}",
552
+ {
553
+ path: { eventId }
554
+ },
555
+ { signal }
556
+ );
557
+ return data;
558
+ };
559
+ const createEvent = async (body, signal) => {
560
+ const { data } = await client.post(
561
+ "/events",
562
+ {
563
+ body
564
+ },
565
+ { signal }
566
+ );
567
+ return data;
568
+ };
569
+ return {
570
+ getEvents,
571
+ getEvent,
572
+ createEvent
573
+ };
574
+ };
575
+
576
+ // src/clients/storage/files/files.ts
577
+ var createFiles = (client) => {
578
+ const getFile = async (fileId, signal) => {
579
+ const { data } = await client.get(
580
+ `/files/{fileId}`,
581
+ {
582
+ path: { fileId }
583
+ },
584
+ { signal }
585
+ );
586
+ return data;
587
+ };
588
+ const getFiles = async (query, signal) => {
589
+ const { data } = await client.get(
590
+ "/files",
591
+ { query },
592
+ { signal, queryArrayFormat: "brackets" }
593
+ );
594
+ return data;
595
+ };
596
+ const deleteFile = async (fileId) => {
597
+ const { data } = await client.delete(`/files/{fileId}`, {
598
+ path: { fileId }
599
+ });
600
+ return data;
601
+ };
602
+ const addFileTag = async (fileId, tag) => {
603
+ const { data } = await client.post(
604
+ `/files/{fileId}/tags`,
605
+ {
606
+ path: { fileId },
607
+ body: { tag }
608
+ }
609
+ );
610
+ return data;
611
+ };
612
+ const getFileContent = async (fileId, signal) => {
613
+ const { data } = await client.get(
614
+ `/files/{fileId}/content`,
615
+ {
616
+ path: { fileId }
617
+ },
618
+ { signal }
619
+ );
620
+ return typeof data === "string" ? data : JSON.stringify(data, null, 2);
621
+ };
622
+ const deleteFileTag = async (fileId, tag) => {
623
+ const { data } = await client.delete(
624
+ "/files/{fileId}/tags/{tag}",
625
+ {
626
+ path: { fileId, tag }
627
+ }
628
+ );
629
+ return data;
630
+ };
631
+ const prepareFile = async (body, signal) => {
632
+ const { data } = await client.post(
633
+ "/files/prepare",
634
+ { body },
635
+ { signal }
636
+ );
637
+ return data;
638
+ };
639
+ return {
640
+ getFile,
641
+ getFileContent,
642
+ getFiles,
643
+ deleteFile,
644
+ addFileTag,
645
+ deleteFileTag,
646
+ prepareFile
647
+ };
648
+ };
649
+
650
+ // src/clients/storage/jobs/jobs.ts
651
+ var createJobs = (client) => {
652
+ const getJob = async (id, signal) => {
653
+ const { data } = await client.get(
654
+ `/jobs/{id}`,
655
+ {
656
+ path: { id }
657
+ },
658
+ { signal }
659
+ );
660
+ return data;
661
+ };
662
+ const getJobs = async (query, signal) => {
663
+ const { data } = await client.get(
664
+ "/jobs",
665
+ { query },
666
+ { signal, queryArrayFormat: "brackets" }
667
+ );
668
+ return data;
669
+ };
670
+ return { getJob, getJobs };
671
+ };
672
+
673
+ // src/clients/storage/tables/tables.ts
674
+ var createTables = (client) => {
675
+ const getTables = async (query = { include: [] }, signal) => {
676
+ const { data } = await client.get(
677
+ `/tables`,
678
+ { query },
679
+ { signal, queryArrayFormat: "comma" }
680
+ );
681
+ return data;
682
+ };
683
+ const getTable = async (id, signal) => {
684
+ const { data } = await client.get(
685
+ `/tables/{id}`,
686
+ { path: { id } },
687
+ { signal }
688
+ );
689
+ return data;
690
+ };
691
+ const deleteTable = async (id, signal) => {
692
+ await client.delete(`/tables/{id}`, { path: { id } }, { signal });
693
+ };
694
+ const deleteTables = async (ids) => {
695
+ await concurrent({
696
+ items: ids,
697
+ process: (id) => deleteTable(id)
698
+ });
699
+ };
700
+ const deleteTableRows = async (id, query, signal) => {
701
+ const { data } = await client.delete(
702
+ `/tables/{id}/rows`,
703
+ { path: { id }, query },
704
+ { signal }
705
+ );
706
+ return data;
707
+ };
708
+ const getDataPreview = async (id, query, signal) => {
709
+ const { data } = await client.get(
710
+ `/tables/{id}/data-preview`,
711
+ { path: { id }, query: { format: "json", ...query } },
712
+ { signal }
713
+ );
714
+ return data;
715
+ };
716
+ const exportAsync = async (tableId, body, signal) => {
717
+ const { data } = await client.post(
718
+ "/tables/{id}/export-async",
719
+ { path: { id: tableId }, body },
720
+ { signal }
721
+ );
722
+ return data;
723
+ };
724
+ const createTableAsync = async (bucketId, body, signal) => {
725
+ const { data } = await client.post("/buckets/{bucketId}/tables-async", { path: { bucketId }, body }, { signal });
726
+ return data;
727
+ };
728
+ const importAsync = async (tableId, body, signal) => {
729
+ const { data } = await client.post(
730
+ "/tables/{id}/import-async",
731
+ { path: { id: tableId }, body },
732
+ { signal }
733
+ );
734
+ return data;
735
+ };
736
+ return {
737
+ getTables,
738
+ getTable,
739
+ getDataPreview,
740
+ deleteTable,
741
+ deleteTables,
742
+ deleteTableRows,
743
+ exportAsync,
744
+ createTableAsync,
745
+ importAsync
746
+ };
747
+ };
748
+
749
+ // src/clients/storage/tokens/tokens.ts
750
+ var createTokens = (client) => {
751
+ const verify = async (signal) => {
752
+ const { data } = await client.get(
753
+ "/tokens/verify",
754
+ {},
755
+ { signal }
756
+ );
757
+ return data;
758
+ };
759
+ const refresh = async (id, signal) => {
760
+ const { data } = await client.post(
761
+ `/tokens/${id}/refresh`,
762
+ {},
763
+ { signal }
764
+ );
765
+ return data;
766
+ };
767
+ return {
768
+ verify,
769
+ refresh
770
+ };
771
+ };
772
+
773
+ // src/clients/storage/workspaces/workspaces.ts
774
+ var createWorkspaces = (client, openApiClient) => {
775
+ const getWorkspaces = async (branchId, signal) => {
776
+ const { data } = await client.get(
777
+ "/branch/{branchId}/workspaces",
778
+ { path: { branchId } },
779
+ { signal }
780
+ );
781
+ return data;
782
+ };
783
+ const getWorkspace = async (path, signal) => {
784
+ const { data } = await client.get(
785
+ "/branch/{branchId}/workspaces/{workspaceId}",
786
+ { path },
787
+ { signal }
788
+ );
789
+ return data;
790
+ };
791
+ const deleteWorkspace = async (path) => {
792
+ await client.delete(
793
+ "/branch/{branchId}/workspaces/{workspaceId}",
794
+ { path }
795
+ );
796
+ };
797
+ const deleteWorkspaces = async ({
798
+ workspaceIds,
799
+ branchId
800
+ }) => {
801
+ await concurrent({
802
+ items: workspaceIds,
803
+ process: async (workspaceId) => deleteWorkspace({ branchId, workspaceId }),
804
+ concurrency: 5
805
+ });
806
+ };
807
+ const deleteWorkspaceJob = async (path) => {
808
+ const { data } = await client.delete(
809
+ "/branch/{branchId}/workspaces/{workspaceId}",
810
+ { path, query: { async: true } },
811
+ {}
812
+ );
813
+ return data;
814
+ };
815
+ const resetWorkspacePassword = async ({ branchId, workspaceId }) => {
816
+ const { data } = await client.post(
817
+ "/branch/{branchId}/workspaces/{workspaceId}/password",
818
+ {
819
+ path: { branchId, workspaceId }
820
+ }
821
+ );
822
+ return data;
823
+ };
824
+ const getWorkspaceSaml2Login = async (path, signal) => {
825
+ const { data } = await client.get(
826
+ "/branch/{branchId}/workspaces/{workspaceId}/saml2-login",
827
+ { path },
828
+ { signal }
829
+ );
830
+ return data;
831
+ };
832
+ const setWorkspacePublicKey = async ({
833
+ branchId,
834
+ workspaceId,
835
+ publicKey
836
+ }) => {
837
+ const { data } = await client.post("/branch/{branchId}/workspaces/{workspaceId}/public-key", {
838
+ path: { branchId, workspaceId },
839
+ body: { publicKey }
840
+ });
841
+ return data;
842
+ };
843
+ const getWorkspaceObjects = async (path, signal) => {
844
+ const { data } = await client.get(
845
+ "/branch/{branchId}/workspaces/{workspaceId}/objects",
846
+ { path },
847
+ { signal }
848
+ );
849
+ return data;
850
+ };
851
+ const deleteWorkspaceObjectsAsync = async ({
852
+ branchId,
853
+ workspaceId,
854
+ ...body
855
+ }) => {
856
+ const { data } = await client.post("/branch/{branchId}/workspaces/{workspaceId}/objects/batch-delete", {
857
+ path: { branchId, workspaceId },
858
+ body
859
+ });
860
+ return data;
861
+ };
862
+ const unloadWorkspace = async ({ branchId, workspaceId, ...query }) => {
863
+ const { data } = await openApiClient.post(
864
+ "/v2/storage/branch/{branchId}/workspaces/{workspaceId}/unload",
865
+ {
866
+ path: { branchId, workspaceId },
867
+ query
868
+ }
869
+ );
870
+ return data;
871
+ };
872
+ return {
873
+ getWorkspace,
874
+ getWorkspaces,
875
+ deleteWorkspace,
876
+ resetWorkspacePassword,
877
+ deleteWorkspaces,
878
+ deleteWorkspaceJob,
879
+ setWorkspacePublicKey,
880
+ getWorkspaceSaml2Login,
881
+ getWorkspaceObjects,
882
+ deleteWorkspaceObjectsAsync,
883
+ unloadWorkspace
884
+ };
885
+ };
886
+
887
+ // src/clients/storage/storageClient.ts
888
+ var createStorageClient = ({ baseUrl, middlewares = [] }) => {
889
+ const normalizedBaseUrl = normalizeBaseUrl(baseUrl);
890
+ const storageBaseUrl = `${normalizedBaseUrl}/v2/storage`;
891
+ const client = createGenericFetchClient({
892
+ baseUrl: storageBaseUrl,
893
+ middlewares
894
+ });
895
+ const openApiClient = createOpenapiFetchClient({
896
+ baseUrl: normalizedBaseUrl,
897
+ middlewares
898
+ });
899
+ const getStackInfo = async (query, signal) => {
900
+ const { data } = await client.get(
901
+ "",
902
+ { query },
903
+ { signal }
904
+ );
905
+ return data;
906
+ };
907
+ return {
908
+ buckets: createBuckets(client),
909
+ events: createEvents(client),
910
+ files: createFiles(client),
911
+ tables: createTables(client),
912
+ branches: createBranches(client),
913
+ workspaces: createWorkspaces(client, openApiClient),
914
+ mergeRequests: createMergeRequests(openApiClient),
915
+ jobs: createJobs(client),
916
+ componentsAndConfigurations: createComponentsAndConfigurations(client),
917
+ configurationVersions: createConfigurationVersions(client),
918
+ tokens: createTokens(client),
919
+ getStackInfo
920
+ };
921
+ };
922
+
923
+ // src/clients/storage/storageTokenMiddleware.ts
924
+ var isTokenRefreshEndpoint = (request) => {
925
+ const url = new URL(request.url);
926
+ return request.method === "POST" && /\/tokens\/[^/]+\/refresh$/.test(url.pathname);
927
+ };
928
+ var tryParseNewToken = (data) => {
929
+ if (data === null || typeof data !== "object") return null;
930
+ const token = data.token;
931
+ return typeof token === "string" ? token : null;
932
+ };
933
+ var createStorageTokenMiddleware = (initialToken) => {
934
+ let current = initialToken;
935
+ return (next) => async (request) => {
936
+ request.request.headers.set(KeboolaHttpHeader.STORAGE_API_TOKEN, current);
937
+ const response = await next(request);
938
+ if (isTokenRefreshEndpoint(request.request)) {
939
+ const newToken = tryParseNewToken(response.data);
940
+ if (newToken !== null) current = newToken;
941
+ }
942
+ return response;
943
+ };
944
+ };
945
+
946
+ export { createStorageClient, createStorageTokenMiddleware, series };
947
+ //# sourceMappingURL=chunk-TNJWOHPM.js.map
948
+ //# sourceMappingURL=chunk-TNJWOHPM.js.map