@tinybirdco/sdk 0.0.83 → 0.0.84
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/branches.d.ts.map +1 -1
- package/dist/api/branches.js +12 -6
- package/dist/api/branches.js.map +1 -1
- package/package.json +1 -1
- package/src/api/branches.ts +15 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branches.d.ts","sourceRoot":"","sources":["../../src/api/branches.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG7D;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,gBAAgB;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,sEAAsE;IACtE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,cAAc;IAC7D,gEAAgE;IAChE,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,4BAA4B;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AA6BD;;GAEG;AACH,qBAAa,cAAe,SAAQ,KAAK;aAGrB,MAAM,EAAE,MAAM;aACd,IAAI,CAAC,EAAE,OAAO;gBAF9B,OAAO,EAAE,MAAM,EACC,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,OAAO,YAAA;CAKjC;
|
|
1
|
+
{"version":3,"file":"branches.d.ts","sourceRoot":"","sources":["../../src/api/branches.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG7D;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,gBAAgB;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,sEAAsE;IACtE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,cAAc;IAC7D,gEAAgE;IAChE,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,4BAA4B;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AA6BD;;GAEG;AACH,qBAAa,cAAe,SAAQ,KAAK;aAGrB,MAAM,EAAE,MAAM;aACd,IAAI,CAAC,EAAE,OAAO;gBAF9B,OAAO,EAAE,MAAM,EACC,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,OAAO,YAAA;CAKjC;AAqED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,mBAAmB;IAClC,iDAAiD;IACjD,gBAAgB,CAAC,EAAE,cAAc,CAAC;CACnC;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,cAAc,CAAC,CAwDzB;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC,cAAc,EAAE,CAAC,CAsB3B;AAED;;;;;;;GAOG;AACH,wBAAsB,SAAS,CAC7B,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,cAAc,CAAC,CAuBzB;AAED;;;;;;;;;GASG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAsBf;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,OAAO,CAAC,CAGlB;AAED;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,uBAAuB,CAAC,CAalC;AAED;;;;;;GAMG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,cAAc,CAAC,CAQzB"}
|
package/dist/api/branches.js
CHANGED
|
@@ -24,11 +24,11 @@ export class BranchApiError extends Error {
|
|
|
24
24
|
*
|
|
25
25
|
* @param config - API configuration
|
|
26
26
|
* @param jobId - Job ID to poll
|
|
27
|
-
* @param maxAttempts - Maximum polling attempts (default:
|
|
28
|
-
* @param intervalMs - Polling interval in milliseconds (default:
|
|
27
|
+
* @param maxAttempts - Maximum polling attempts (default: 60, i.e. 5 minutes)
|
|
28
|
+
* @param intervalMs - Polling interval in milliseconds (default: 5000)
|
|
29
29
|
* @returns Job status when complete
|
|
30
30
|
*/
|
|
31
|
-
async function pollJob(config, jobId, maxAttempts =
|
|
31
|
+
async function pollJob(config, jobId, maxAttempts = 60, intervalMs = 5000) {
|
|
32
32
|
const fetchFn = getFetch(config);
|
|
33
33
|
for (let attempt = 0; attempt < maxAttempts; attempt++) {
|
|
34
34
|
const url = new URL(`/v0/jobs/${jobId}`, config.baseUrl);
|
|
@@ -49,10 +49,16 @@ async function pollJob(config, jobId, maxAttempts = 120, intervalMs = 1000) {
|
|
|
49
49
|
if (jobStatus.status === "error") {
|
|
50
50
|
throw new BranchApiError(`Job '${jobId}' failed: ${jobStatus.error ?? "Unknown error"}`, 500, jobStatus);
|
|
51
51
|
}
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
if (jobStatus.status === "cancelled") {
|
|
53
|
+
throw new BranchApiError(`Job '${jobId}' was cancelled`, 500, jobStatus);
|
|
54
|
+
}
|
|
55
|
+
// Wait before next poll, unless this was the last attempt
|
|
56
|
+
if (attempt < maxAttempts - 1) {
|
|
57
|
+
await new Promise((resolve) => setTimeout(resolve, intervalMs));
|
|
58
|
+
}
|
|
54
59
|
}
|
|
55
|
-
|
|
60
|
+
const timeoutSeconds = (maxAttempts * intervalMs) / 1000;
|
|
61
|
+
throw new BranchApiError(`Job '${jobId}' timed out after ${timeoutSeconds} seconds`, 408);
|
|
56
62
|
}
|
|
57
63
|
export async function createBranch(config, name, options) {
|
|
58
64
|
const fetchFn = getFetch(config);
|
package/dist/api/branches.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branches.js","sourceRoot":"","sources":["../../src/api/branches.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAoCrD,SAAS,QAAQ,CAAC,MAAuB;IACvC,OAAO,qBAAqB,CAAC,MAAM,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;AACjE,CAAC;AAyBD;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,KAAK;IAGrB;IACA;IAHlB,YACE,OAAe,EACC,MAAc,EACd,IAAc;QAE9B,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,WAAM,GAAN,MAAM,CAAQ;QACd,SAAI,GAAJ,IAAI,CAAU;QAG9B,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,OAAO,CACpB,MAAuB,EACvB,KAAa,EACb,WAAW,GAAG,
|
|
1
|
+
{"version":3,"file":"branches.js","sourceRoot":"","sources":["../../src/api/branches.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/api/branches.ts
CHANGED
|
@@ -63,7 +63,7 @@ interface JobResponse {
|
|
|
63
63
|
*/
|
|
64
64
|
interface JobStatusResponse {
|
|
65
65
|
id: string;
|
|
66
|
-
status: "waiting" | "working" | "done" | "error";
|
|
66
|
+
status: "waiting" | "working" | "done" | "error" | "cancelled";
|
|
67
67
|
error?: string;
|
|
68
68
|
}
|
|
69
69
|
|
|
@@ -86,15 +86,15 @@ export class BranchApiError extends Error {
|
|
|
86
86
|
*
|
|
87
87
|
* @param config - API configuration
|
|
88
88
|
* @param jobId - Job ID to poll
|
|
89
|
-
* @param maxAttempts - Maximum polling attempts (default:
|
|
90
|
-
* @param intervalMs - Polling interval in milliseconds (default:
|
|
89
|
+
* @param maxAttempts - Maximum polling attempts (default: 60, i.e. 5 minutes)
|
|
90
|
+
* @param intervalMs - Polling interval in milliseconds (default: 5000)
|
|
91
91
|
* @returns Job status when complete
|
|
92
92
|
*/
|
|
93
93
|
async function pollJob(
|
|
94
94
|
config: BranchApiConfig,
|
|
95
95
|
jobId: string,
|
|
96
|
-
maxAttempts =
|
|
97
|
-
intervalMs =
|
|
96
|
+
maxAttempts = 60,
|
|
97
|
+
intervalMs = 5000
|
|
98
98
|
): Promise<JobStatusResponse> {
|
|
99
99
|
const fetchFn = getFetch(config);
|
|
100
100
|
|
|
@@ -131,12 +131,19 @@ async function pollJob(
|
|
|
131
131
|
);
|
|
132
132
|
}
|
|
133
133
|
|
|
134
|
-
|
|
135
|
-
|
|
134
|
+
if (jobStatus.status === "cancelled") {
|
|
135
|
+
throw new BranchApiError(`Job '${jobId}' was cancelled`, 500, jobStatus);
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
// Wait before next poll, unless this was the last attempt
|
|
139
|
+
if (attempt < maxAttempts - 1) {
|
|
140
|
+
await new Promise((resolve) => setTimeout(resolve, intervalMs));
|
|
141
|
+
}
|
|
136
142
|
}
|
|
137
143
|
|
|
144
|
+
const timeoutSeconds = (maxAttempts * intervalMs) / 1000;
|
|
138
145
|
throw new BranchApiError(
|
|
139
|
-
`Job '${jobId}' timed out after ${
|
|
146
|
+
`Job '${jobId}' timed out after ${timeoutSeconds} seconds`,
|
|
140
147
|
408
|
|
141
148
|
);
|
|
142
149
|
}
|