@leonardo-ai/sdk 4.0.1 → 4.1.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 (73) hide show
  1. package/.speakeasy/gen.lock +7 -5
  2. package/README.md +5 -6
  3. package/docs/sdks/dataset/README.md +6 -6
  4. package/docs/sdks/generation/README.md +6 -7
  5. package/docs/sdks/initimage/README.md +2 -2
  6. package/docs/sdks/model/README.md +6 -7
  7. package/docs/sdks/variation/README.md +3 -3
  8. package/hooks/hooks.d.ts +21 -0
  9. package/hooks/hooks.d.ts.map +1 -0
  10. package/hooks/hooks.js +57 -0
  11. package/hooks/hooks.js.map +1 -0
  12. package/hooks/index.d.ts +3 -0
  13. package/hooks/index.d.ts.map +1 -0
  14. package/hooks/index.js +22 -0
  15. package/hooks/index.js.map +1 -0
  16. package/hooks/registration.d.ts +3 -0
  17. package/hooks/registration.d.ts.map +1 -0
  18. package/hooks/registration.js +16 -0
  19. package/hooks/registration.js.map +1 -0
  20. package/hooks/types.d.ts +53 -0
  21. package/hooks/types.d.ts.map +1 -0
  22. package/hooks/types.js +6 -0
  23. package/hooks/types.js.map +1 -0
  24. package/lib/config.d.ts +3 -3
  25. package/lib/config.d.ts.map +1 -1
  26. package/lib/config.js +3 -3
  27. package/lib/config.js.map +1 -1
  28. package/lib/retries.js +22 -1
  29. package/lib/retries.js.map +1 -1
  30. package/lib/sdks.d.ts +9 -1
  31. package/lib/sdks.d.ts.map +1 -1
  32. package/lib/sdks.js +20 -4
  33. package/lib/sdks.js.map +1 -1
  34. package/package.json +2 -3
  35. package/sdk/dataset.d.ts.map +1 -1
  36. package/sdk/dataset.js +49 -6
  37. package/sdk/dataset.js.map +1 -1
  38. package/sdk/element.d.ts.map +1 -1
  39. package/sdk/element.js +26 -2
  40. package/sdk/element.js.map +1 -1
  41. package/sdk/generation.d.ts.map +1 -1
  42. package/sdk/generation.js +61 -8
  43. package/sdk/generation.js.map +1 -1
  44. package/sdk/initimage.d.ts.map +1 -1
  45. package/sdk/initimage.js +35 -4
  46. package/sdk/initimage.js.map +1 -1
  47. package/sdk/model.d.ts.map +1 -1
  48. package/sdk/model.js +61 -7
  49. package/sdk/model.js.map +1 -1
  50. package/sdk/sdk.d.ts.map +1 -1
  51. package/sdk/sdk.js +14 -1
  52. package/sdk/sdk.js.map +1 -1
  53. package/sdk/user.d.ts.map +1 -1
  54. package/sdk/user.js +26 -2
  55. package/sdk/user.js.map +1 -1
  56. package/sdk/variation.d.ts.map +1 -1
  57. package/sdk/variation.js +42 -5
  58. package/sdk/variation.js.map +1 -1
  59. package/src/hooks/hooks.ts +85 -0
  60. package/src/hooks/index.ts +6 -0
  61. package/src/hooks/registration.ts +14 -0
  62. package/src/hooks/types.ts +68 -0
  63. package/src/lib/config.ts +4 -4
  64. package/src/lib/retries.ts +23 -4
  65. package/src/lib/sdks.ts +33 -5
  66. package/src/sdk/dataset.ts +63 -11
  67. package/src/sdk/element.ts +33 -4
  68. package/src/sdk/generation.ts +78 -13
  69. package/src/sdk/initimage.ts +45 -7
  70. package/src/sdk/model.ts +78 -12
  71. package/src/sdk/sdk.ts +17 -2
  72. package/src/sdk/user.ts +33 -4
  73. package/src/sdk/variation.ts +54 -7
@@ -4,9 +4,9 @@ management:
4
4
  docChecksum: f44cbfdd8643f7b10165cb4138d184e0
5
5
  docVersion: v1.0.0
6
6
  speakeasyVersion: internal
7
- generationVersion: 2.252.7
8
- releaseVersion: 4.0.1
9
- configChecksum: 3f94f71c3dd2c008acb84b76081f9ec8
7
+ generationVersion: 2.263.3
8
+ releaseVersion: 4.1.0
9
+ configChecksum: f813d98ef58ae69c5af4d7ea8c482f3e
10
10
  repoURL: https://github.com/Leonardo-Interactive/leonardo-ts-sdk.git
11
11
  repoSubDirectory: .
12
12
  installationURL: https://github.com/Leonardo-Interactive/leonardo-ts-sdk
@@ -14,7 +14,7 @@ management:
14
14
  features:
15
15
  typescript:
16
16
  constsAndDefaults: 0.1.3
17
- core: 3.4.9
17
+ core: 3.5.1
18
18
  devContainers: 2.90.0
19
19
  flattening: 2.81.1
20
20
  globalSecurity: 2.82.2
@@ -31,7 +31,6 @@ generatedFiles:
31
31
  - .eslintrc.js
32
32
  - .npmignore
33
33
  - RUNTIMES.md
34
- - package-lock.json
35
34
  - package.json
36
35
  - src/index.ts
37
36
  - src/lib/base64.ts
@@ -234,3 +233,6 @@ generatedFiles:
234
233
  - .devcontainer/README.md
235
234
  - .devcontainer/devcontainer.json
236
235
  - .devcontainer/setup.sh
236
+ - src/hooks/hooks.ts
237
+ - src/hooks/types.ts
238
+ - src/hooks/index.ts
package/README.md CHANGED
@@ -2,7 +2,6 @@
2
2
  <img src="https://user-images.githubusercontent.com/6267663/230025738-42a4980e-a5ea-4d00-a591-65e8de14de85.png" width="200">
3
3
  <h1>Leonardo Typescript SDK</h1>
4
4
  <p>The API for creating stunning game assets with AI.</p>
5
- <a href="https://github.com/Leonardo-Interactive/leonardo-ts-sdk/actions"><img src="https://img.shields.io/github/actions/workflow/status/Leonardo-Interactive/leonardo-ts-sdk/speakeasy_sdk_generate.yml?style=for-the-badge" /></a>
6
5
  <a href="https://docs.leonardo.ai/"><img src="https://img.shields.io/static/v1?label=Docs&message=API Ref&color=000&style=for-the-badge" /></a>
7
6
  <a href="https://discord.gg/leonardo-ai"><img src="https://img.shields.io/static/v1?label=Discord&message=Join&color=7289da&style=for-the-badge" /></a>
8
7
  <a href="https://codespaces.new/Leonardo-Interactive/leonardo-ts-sdk.git/tree/main"><img src="https://github.com/codespaces/badge.svg" /></a>
@@ -42,7 +41,7 @@ async function run() {
42
41
  });
43
42
 
44
43
  const result = await sdk.dataset.createDataset({
45
- name: "string",
44
+ name: "<value>",
46
45
  });
47
46
 
48
47
  // Handle the result
@@ -134,7 +133,7 @@ async function run() {
134
133
  let result;
135
134
  try {
136
135
  result = await sdk.dataset.createDataset({
137
- name: "string",
136
+ name: "<value>",
138
137
  });
139
138
  } catch (err) {
140
139
  // Handle errors here
@@ -224,7 +223,7 @@ async function run() {
224
223
  });
225
224
 
226
225
  const result = await sdk.dataset.createDataset({
227
- name: "string",
226
+ name: "<value>",
228
227
  });
229
228
 
230
229
  // Handle the result
@@ -250,7 +249,7 @@ async function run() {
250
249
  });
251
250
 
252
251
  const result = await sdk.dataset.createDataset({
253
- name: "string",
252
+ name: "<value>",
254
253
  });
255
254
 
256
255
  // Handle the result
@@ -285,7 +284,7 @@ async function run() {
285
284
  });
286
285
 
287
286
  const result = await sdk.dataset.createDataset({
288
- name: "string",
287
+ name: "<value>",
289
288
  });
290
289
 
291
290
  // Handle the result
@@ -24,7 +24,7 @@ async function run() {
24
24
  });
25
25
 
26
26
  const result = await sdk.dataset.createDataset({
27
- name: "string",
27
+ name: "<value>",
28
28
  });
29
29
 
30
30
  // Handle the result
@@ -66,7 +66,7 @@ async function run() {
66
66
  bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
67
67
  });
68
68
 
69
- const id = "string";
69
+ const id = "<value>";
70
70
 
71
71
  const result = await sdk.dataset.deleteDatasetById(id);
72
72
 
@@ -109,7 +109,7 @@ async function run() {
109
109
  bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
110
110
  });
111
111
 
112
- const id = "string";
112
+ const id = "<value>";
113
113
 
114
114
  const result = await sdk.dataset.getDatasetById(id);
115
115
 
@@ -155,7 +155,7 @@ async function run() {
155
155
  const requestBody = {
156
156
  extension: "mpg4",
157
157
  };
158
- const datasetId = "string";
158
+ const datasetId = "<value>";
159
159
 
160
160
  const result = await sdk.dataset.uploadDatasetImage(requestBody, datasetId);
161
161
 
@@ -200,9 +200,9 @@ async function run() {
200
200
  });
201
201
 
202
202
  const requestBody = {
203
- generatedImageId: "string",
203
+ generatedImageId: "<value>",
204
204
  };
205
- const datasetId = "string";
205
+ const datasetId = "<value>";
206
206
 
207
207
  const result = await sdk.dataset.uploadDatasetImageFromGen(requestBody, datasetId);
208
208
 
@@ -19,7 +19,6 @@ This endpoint will generate images
19
19
 
20
20
  ```typescript
21
21
  import { Leonardo } from "@leonardo-ai/sdk";
22
- import { ControlnetType, SdGenerationSchedulers, SdGenerationStyle, SdVersions } from "@leonardo-ai/sdk/sdk/models/shared";
23
22
 
24
23
  async function run() {
25
24
  const sdk = new Leonardo({
@@ -31,7 +30,7 @@ async function run() {
31
30
  {},
32
31
  ],
33
32
  imagePrompts: [
34
- "string",
33
+ "<value>",
35
34
  ],
36
35
  });
37
36
 
@@ -74,7 +73,7 @@ async function run() {
74
73
  bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
75
74
  });
76
75
 
77
- const id = "string";
76
+ const id = "<value>";
78
77
 
79
78
  const result = await sdk.generation.deleteGenerationById(id);
80
79
 
@@ -117,7 +116,7 @@ async function run() {
117
116
  bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
118
117
  });
119
118
 
120
- const id = "string";
119
+ const id = "<value>";
121
120
  const requestBody = {};
122
121
 
123
122
  const result = await sdk.generation.deleteGenerationsTextureId(id, requestBody);
@@ -162,7 +161,7 @@ async function run() {
162
161
  bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
163
162
  });
164
163
 
165
- const id = "string";
164
+ const id = "<value>";
166
165
 
167
166
  const result = await sdk.generation.getGenerationById(id);
168
167
 
@@ -205,7 +204,7 @@ async function run() {
205
204
  bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
206
205
  });
207
206
 
208
- const userId = "string";
207
+ const userId = "<value>";
209
208
  const limit = 270501;
210
209
  const offset = 770121;
211
210
 
@@ -253,7 +252,7 @@ async function run() {
253
252
  });
254
253
 
255
254
  const result = await sdk.generation.postGenerationsMotionSvd({
256
- imageId: "string",
255
+ imageId: "<value>",
257
256
  });
258
257
 
259
258
  // Handle the result
@@ -21,7 +21,7 @@ async function run() {
21
21
  bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
22
22
  });
23
23
 
24
- const id = "string";
24
+ const id = "<value>";
25
25
 
26
26
  const result = await sdk.initImage.deleteInitImageById(id);
27
27
 
@@ -64,7 +64,7 @@ async function run() {
64
64
  bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
65
65
  });
66
66
 
67
- const id = "string";
67
+ const id = "<value>";
68
68
 
69
69
  const result = await sdk.initImage.getInitImageById(id);
70
70
 
@@ -18,7 +18,6 @@ This endpoint will train a new custom model
18
18
 
19
19
  ```typescript
20
20
  import { Leonardo } from "@leonardo-ai/sdk";
21
- import { CustomModelType, SdVersions, Strength } from "@leonardo-ai/sdk/sdk/models/shared";
22
21
 
23
22
  async function run() {
24
23
  const sdk = new Leonardo({
@@ -26,9 +25,9 @@ async function run() {
26
25
  });
27
26
 
28
27
  const result = await sdk.model.createModel({
29
- datasetId: "string",
30
- instancePrompt: "string",
31
- name: "string",
28
+ datasetId: "<value>",
29
+ instancePrompt: "<value>",
30
+ name: "<value>",
32
31
  });
33
32
 
34
33
  // Handle the result
@@ -70,7 +69,7 @@ async function run() {
70
69
  bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
71
70
  });
72
71
 
73
- const id = "string";
72
+ const id = "<value>";
74
73
 
75
74
  const result = await sdk.model.deleteModelById(id);
76
75
 
@@ -113,7 +112,7 @@ async function run() {
113
112
  bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
114
113
  });
115
114
 
116
- const id = "string";
115
+ const id = "<value>";
117
116
  const requestBody = {};
118
117
 
119
118
  const result = await sdk.model.deleteModels3dId(id, requestBody);
@@ -158,7 +157,7 @@ async function run() {
158
157
  bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
159
158
  });
160
159
 
161
- const id = "string";
160
+ const id = "<value>";
162
161
 
163
162
  const result = await sdk.model.getModelById(id);
164
163
 
@@ -23,7 +23,7 @@ async function run() {
23
23
  });
24
24
 
25
25
  const result = await sdk.variation.createVariationNoBG({
26
- id: "<ID>",
26
+ id: "<id>",
27
27
  });
28
28
 
29
29
  // Handle the result
@@ -66,7 +66,7 @@ async function run() {
66
66
  });
67
67
 
68
68
  const result = await sdk.variation.createVariationUpscale({
69
- id: "<ID>",
69
+ id: "<id>",
70
70
  });
71
71
 
72
72
  // Handle the result
@@ -108,7 +108,7 @@ async function run() {
108
108
  bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
109
109
  });
110
110
 
111
- const id = "string";
111
+ const id = "<value>";
112
112
 
113
113
  const result = await sdk.variation.getVariationById(id);
114
114
 
@@ -0,0 +1,21 @@
1
+ import { AfterErrorContext, AfterErrorHook, AfterSuccessContext, AfterSuccessHook, BeforeRequestContext, BeforeRequestHook, ClientInitHook, Hooks } from "./types";
2
+ import { HTTPClient } from "../lib/http";
3
+ export declare class SDKHooks implements Hooks {
4
+ clientInitHooks: ClientInitHook[];
5
+ beforeRequestHooks: BeforeRequestHook[];
6
+ afterSuccessHooks: AfterSuccessHook[];
7
+ afterErrorHooks: AfterErrorHook[];
8
+ constructor();
9
+ registerClientInitHook(hook: ClientInitHook): void;
10
+ registerBeforeRequestHook(hook: BeforeRequestHook): void;
11
+ registerAfterSuccessHook(hook: AfterSuccessHook): void;
12
+ registerAfterErrorHook(hook: AfterErrorHook): void;
13
+ clientInit(client: HTTPClient): HTTPClient;
14
+ beforeRequest(hookCtx: BeforeRequestContext, request: Request): Promise<Request>;
15
+ afterSuccess(hookCtx: AfterSuccessContext, response: Response): Promise<Response>;
16
+ afterError(hookCtx: AfterErrorContext, response: Response | null, error: unknown): Promise<{
17
+ response: Response | null;
18
+ error: unknown;
19
+ }>;
20
+ }
21
+ //# sourceMappingURL=hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks/hooks.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,KAAK,EACR,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,qBAAa,QAAS,YAAW,KAAK;IAClC,eAAe,EAAE,cAAc,EAAE,CAAM;IACvC,kBAAkB,EAAE,iBAAiB,EAAE,CAAM;IAC7C,iBAAiB,EAAE,gBAAgB,EAAE,CAAM;IAC3C,eAAe,EAAE,cAAc,EAAE,CAAM;;IAMvC,sBAAsB,CAAC,IAAI,EAAE,cAAc;IAI3C,yBAAyB,CAAC,IAAI,EAAE,iBAAiB;IAIjD,wBAAwB,CAAC,IAAI,EAAE,gBAAgB;IAI/C,sBAAsB,CAAC,IAAI,EAAE,cAAc;IAI3C,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU;IAIpC,aAAa,CAAC,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAUhF,YAAY,CAAC,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAUjF,UAAU,CACZ,OAAO,EAAE,iBAAiB,EAC1B,QAAQ,EAAE,QAAQ,GAAG,IAAI,EACzB,KAAK,EAAE,OAAO,GACf,OAAO,CAAC;QAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC;CAY5D"}
package/hooks/hooks.js ADDED
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ /*
3
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SDKHooks = void 0;
7
+ const registration_1 = require("./registration");
8
+ class SDKHooks {
9
+ constructor() {
10
+ this.clientInitHooks = [];
11
+ this.beforeRequestHooks = [];
12
+ this.afterSuccessHooks = [];
13
+ this.afterErrorHooks = [];
14
+ (0, registration_1.initHooks)(this);
15
+ }
16
+ registerClientInitHook(hook) {
17
+ this.clientInitHooks.push(hook);
18
+ }
19
+ registerBeforeRequestHook(hook) {
20
+ this.beforeRequestHooks.push(hook);
21
+ }
22
+ registerAfterSuccessHook(hook) {
23
+ this.afterSuccessHooks.push(hook);
24
+ }
25
+ registerAfterErrorHook(hook) {
26
+ this.afterErrorHooks.push(hook);
27
+ }
28
+ clientInit(client) {
29
+ return this.clientInitHooks.reduce((client, hook) => hook.clientInit(client), client);
30
+ }
31
+ async beforeRequest(hookCtx, request) {
32
+ let req = request;
33
+ for (const hook of this.beforeRequestHooks) {
34
+ req = await hook.beforeRequest(hookCtx, req);
35
+ }
36
+ return req;
37
+ }
38
+ async afterSuccess(hookCtx, response) {
39
+ let res = response;
40
+ for (const hook of this.afterSuccessHooks) {
41
+ res = await hook.afterSuccess(hookCtx, res);
42
+ }
43
+ return res;
44
+ }
45
+ async afterError(hookCtx, response, error) {
46
+ let res = response;
47
+ let err = error;
48
+ for (const hook of this.afterErrorHooks) {
49
+ const result = await hook.afterError(hookCtx, res, err);
50
+ res = result.response;
51
+ err = result.error;
52
+ }
53
+ return { response: res, error: err };
54
+ }
55
+ }
56
+ exports.SDKHooks = SDKHooks;
57
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks/hooks.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAcH,iDAA2C;AAE3C,MAAa,QAAQ;IAMjB;QALA,oBAAe,GAAqB,EAAE,CAAC;QACvC,uBAAkB,GAAwB,EAAE,CAAC;QAC7C,sBAAiB,GAAuB,EAAE,CAAC;QAC3C,oBAAe,GAAqB,EAAE,CAAC;QAGnC,IAAA,wBAAS,EAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IAED,sBAAsB,CAAC,IAAoB;QACvC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,yBAAyB,CAAC,IAAuB;QAC7C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,wBAAwB,CAAC,IAAsB;QAC3C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,sBAAsB,CAAC,IAAoB;QACvC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,UAAU,CAAC,MAAkB;QACzB,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC1F,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAA6B,EAAE,OAAgB;QAC/D,IAAI,GAAG,GAAG,OAAO,CAAC;QAElB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACzC,GAAG,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACjD,CAAC;QAED,OAAO,GAAG,CAAC;IACf,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAA4B,EAAE,QAAkB;QAC/D,IAAI,GAAG,GAAG,QAAQ,CAAC;QAEnB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACxC,GAAG,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAChD,CAAC;QAED,OAAO,GAAG,CAAC;IACf,CAAC;IAED,KAAK,CAAC,UAAU,CACZ,OAA0B,EAC1B,QAAyB,EACzB,KAAc;QAEd,IAAI,GAAG,GAAG,QAAQ,CAAC;QACnB,IAAI,GAAG,GAAG,KAAK,CAAC;QAEhB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YACxD,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;YACtB,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC;QACvB,CAAC;QAED,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;IACzC,CAAC;CACJ;AAlED,4BAkEC"}
@@ -0,0 +1,3 @@
1
+ export * from "./types";
2
+ export * from "./hooks";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/hooks/index.ts"],"names":[],"mappings":"AAIA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
package/hooks/index.js ADDED
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ /*
3
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ __exportStar(require("./types"), exports);
21
+ __exportStar(require("./hooks"), exports);
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/hooks/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH,0CAAwB;AACxB,0CAAwB"}
@@ -0,0 +1,3 @@
1
+ import { Hooks } from "./types";
2
+ export declare function initHooks(hooks: Hooks): void;
3
+ //# sourceMappingURL=registration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../src/hooks/registration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAShC,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,QAIrC"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.initHooks = void 0;
4
+ /*
5
+ * This file is only ever generated once on the first generation and then is free to be modified.
6
+ * Any hooks you wish to add should be registered in the initHooks function. Feel free to define them
7
+ * in this file or in separate files in the hooks folder.
8
+ */
9
+ // @ts-expect-error remove this line when you add your first hook and hooks is used
10
+ function initHooks(hooks) {
11
+ // Add hooks by calling hooks.register{ClientInit/BeforeRequest/AfterRequest/AfterError}Hook
12
+ // with an instance of a hook that implements that specific Hook interface
13
+ // Hooks are registered per SDK instance, and are valid for the lifetime of the SDK instance
14
+ }
15
+ exports.initHooks = initHooks;
16
+ //# sourceMappingURL=registration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.js","sourceRoot":"","sources":["../src/hooks/registration.ts"],"names":[],"mappings":";;;AAEA;;;;GAIG;AAEH,mFAAmF;AACnF,SAAgB,SAAS,CAAC,KAAY;IAClC,4FAA4F;IAC5F,0EAA0E;IAC1E,4FAA4F;AAChG,CAAC;AAJD,8BAIC"}
@@ -0,0 +1,53 @@
1
+ import { HTTPClient } from "../lib/http";
2
+ export type HookContext = {
3
+ operationID: string;
4
+ };
5
+ export type Awaitable<T> = T | Promise<T>;
6
+ export type BeforeRequestContext = HookContext & {};
7
+ export type AfterSuccessContext = HookContext & {};
8
+ export type AfterErrorContext = HookContext & {};
9
+ /**
10
+ * ClientInitHook is called when the SDK is initializing the HTTP client. The
11
+ * hook can return a new HTTP client to be used by the SDK.
12
+ */
13
+ export interface ClientInitHook {
14
+ clientInit: (client: HTTPClient) => HTTPClient;
15
+ }
16
+ /**
17
+ * BeforeRequestHook is called before the SDK sends a request. The hook can
18
+ * modify the request before it is sent or throw an error to stop the request
19
+ * from being sent.
20
+ */
21
+ export interface BeforeRequestHook {
22
+ beforeRequest: (hookCtx: BeforeRequestContext, request: Request) => Awaitable<Request>;
23
+ }
24
+ /**
25
+ * AfterSuccessHook is called after the SDK receives a response. The hook can
26
+ * modify the response before it is handled or throw an error to stop the
27
+ * response from being handled.
28
+ */
29
+ export interface AfterSuccessHook {
30
+ afterSuccess: (hookCtx: AfterSuccessContext, response: Response) => Awaitable<Response>;
31
+ }
32
+ /**
33
+ * AfterErrorHook is called after the SDK encounters an error, or a
34
+ * non-successful response. The hook can modify the response if available
35
+ * otherwise modify the error.
36
+ */
37
+ export interface AfterErrorHook {
38
+ afterError: (hookCtx: AfterErrorContext, response: Response | null, error: unknown) => Awaitable<{
39
+ response: Response | null;
40
+ error: unknown;
41
+ }>;
42
+ }
43
+ export interface Hooks {
44
+ /** Registers a hook to be used by the SDK for client initialization. */
45
+ registerClientInitHook(hook: ClientInitHook): void;
46
+ /** Registers a hook to be used by the SDK for the before request event. */
47
+ registerBeforeRequestHook(hook: BeforeRequestHook): void;
48
+ /** Registers a hook to be used by the SDK for the after success event. */
49
+ registerAfterSuccessHook(hook: AfterSuccessHook): void;
50
+ /** Registers a hook to be used by the SDK for the after error event. */
51
+ registerAfterErrorHook(hook: AfterErrorHook): void;
52
+ }
53
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/hooks/types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,MAAM,WAAW,GAAG;IACtB,WAAW,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAE1C,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,EAAE,CAAC;AACpD,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,EAAE,CAAC;AACnD,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG,EAAE,CAAC;AAEjD;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC3B,UAAU,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,UAAU,CAAC;CAClD;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAC9B,aAAa,EAAE,CAAC,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,OAAO,KAAK,SAAS,CAAC,OAAO,CAAC,CAAC;CAC1F;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC7B,YAAY,EAAE,CAAC,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,QAAQ,KAAK,SAAS,CAAC,QAAQ,CAAC,CAAC;CAC3F;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC3B,UAAU,EAAE,CACR,OAAO,EAAE,iBAAiB,EAC1B,QAAQ,EAAE,QAAQ,GAAG,IAAI,EACzB,KAAK,EAAE,OAAO,KACb,SAAS,CAAC;QACX,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;QAC1B,KAAK,EAAE,OAAO,CAAC;KAClB,CAAC,CAAC;CACN;AAED,MAAM,WAAW,KAAK;IAClB,wEAAwE;IACxE,sBAAsB,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI,CAAC;IACnD,2EAA2E;IAC3E,yBAAyB,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACzD,0EAA0E;IAC1E,wBAAwB,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACvD,wEAAwE;IACxE,sBAAsB,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI,CAAC;CACtD"}
package/hooks/types.js ADDED
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /*
3
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/hooks/types.ts"],"names":[],"mappings":";AAAA;;GAEG"}
package/lib/config.d.ts CHANGED
@@ -24,8 +24,8 @@ export declare function serverURLFromOptions(options: SDKOptions): URL | null;
24
24
  export declare const SDK_METADATA: Readonly<{
25
25
  language: "typescript";
26
26
  openapiDocVersion: "v1.0.0";
27
- sdkVersion: "4.0.1";
28
- genVersion: "2.252.7";
29
- userAgent: "speakeasy-sdk/typescript 4.0.1 2.252.7 v1.0.0 @leonardo-ai/sdk";
27
+ sdkVersion: "4.1.0";
28
+ genVersion: "2.263.3";
29
+ userAgent: "speakeasy-sdk/typescript 4.1.0 2.263.3 v1.0.0 @leonardo-ai/sdk";
30
30
  }>;
31
31
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/lib/config.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC;;GAEG;AACH,eAAO,MAAM,UAAU,oDAKb,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG;IACrB,UAAU,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAE9C,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;CAC7B,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,UAAU,GAAG,GAAG,GAAG,IAAI,CAYpE;AAED,eAAO,MAAM,YAAY;;;;;;EAMvB,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/lib/config.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAGxC;;GAEG;AACH,eAAO,MAAM,UAAU,oDAKb,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG;IACrB,UAAU,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAE9C,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;CAC7B,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,UAAU,GAAG,GAAG,GAAG,IAAI,CAYpE;AAED,eAAO,MAAM,YAAY;;;;;;EAMvB,CAAC"}
package/lib/config.js CHANGED
@@ -29,8 +29,8 @@ exports.serverURLFromOptions = serverURLFromOptions;
29
29
  exports.SDK_METADATA = Object.freeze({
30
30
  language: "typescript",
31
31
  openapiDocVersion: "v1.0.0",
32
- sdkVersion: "4.0.1",
33
- genVersion: "2.252.7",
34
- userAgent: "speakeasy-sdk/typescript 4.0.1 2.252.7 v1.0.0 @leonardo-ai/sdk",
32
+ sdkVersion: "4.1.0",
33
+ genVersion: "2.263.3",
34
+ userAgent: "speakeasy-sdk/typescript 4.1.0 2.263.3 v1.0.0 @leonardo-ai/sdk",
35
35
  });
36
36
  //# sourceMappingURL=config.js.map
package/lib/config.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/lib/config.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAGH,+BAAmC;AAGnC;;GAEG;AACU,QAAA,UAAU,GAAG;IACtB;;OAEG;IACH,uCAAuC;CACjC,CAAC;AAoBX,SAAgB,oBAAoB,CAAC,OAAmB;;IACpD,IAAI,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAElC,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,MAAA,OAAO,CAAC,SAAS,mCAAI,CAAC,CAAC;IAEzC,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,SAAS,GAAG,kBAAU,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,GAAG,IAAA,gBAAU,EAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;IACxC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;AACtB,CAAC;AAZD,oDAYC;AAEY,QAAA,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;IACtC,QAAQ,EAAE,YAAY;IACtB,iBAAiB,EAAE,QAAQ;IAC3B,UAAU,EAAE,OAAO;IACnB,UAAU,EAAE,SAAS;IACrB,SAAS,EAAE,gEAAgE;CAC9E,CAAC,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/lib/config.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAIH,+BAAmC;AAEnC;;GAEG;AACU,QAAA,UAAU,GAAG;IACtB;;OAEG;IACH,uCAAuC;CACjC,CAAC;AAoBX,SAAgB,oBAAoB,CAAC,OAAmB;;IACpD,IAAI,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAElC,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,MAAA,OAAO,CAAC,SAAS,mCAAI,CAAC,CAAC;IAEzC,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,SAAS,GAAG,kBAAU,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,GAAG,IAAA,gBAAU,EAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;IACxC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;AACtB,CAAC;AAZD,oDAYC;AAEY,QAAA,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;IACtC,QAAQ,EAAE,YAAY;IACtB,iBAAiB,EAAE,QAAQ;IAC3B,UAAU,EAAE,OAAO;IACnB,UAAU,EAAE,SAAS;IACrB,SAAS,EAAE,gEAAgE;CAC9E,CAAC,CAAC"}
package/lib/retries.js CHANGED
@@ -124,7 +124,28 @@ async function retryBackoff(fn, strategy) {
124
124
  }
125
125
  throw err;
126
126
  }
127
- const d = Math.min(initialInterval * Math.pow(x, exponent) + Math.random() * 1000, maxInterval);
127
+ let retryInterval = 0;
128
+ if (err instanceof TemporaryError && err.res && err.res.headers) {
129
+ const retryVal = err.res.headers.get("retry-after") || "";
130
+ if (retryVal != "") {
131
+ const parsedNumber = Number(retryVal);
132
+ if (!isNaN(parsedNumber) && Number.isInteger(parsedNumber)) {
133
+ retryInterval = parsedNumber * 1000;
134
+ }
135
+ else {
136
+ const parsedDate = Date.parse(retryVal);
137
+ if (!isNaN(parsedDate)) {
138
+ const deltaMS = parsedDate - Date.now();
139
+ retryInterval = deltaMS > 0 ? Math.ceil(deltaMS) : 0;
140
+ }
141
+ }
142
+ }
143
+ }
144
+ if (retryInterval == 0) {
145
+ retryInterval =
146
+ initialInterval * Math.pow(x, exponent) + Math.random() * 1000;
147
+ }
148
+ const d = Math.min(retryInterval, maxInterval);
128
149
  await delay(d);
129
150
  x++;
130
151
  }
@@ -1 +1 @@
1
- {"version":3,"file":"retries.js","sourceRoot":"","sources":["../src/lib/retries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"retries.js","sourceRoot":"","sources":["../src/lib/retries.ts"],"names":[],"mappings":"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"}
package/lib/sdks.d.ts CHANGED
@@ -1,12 +1,14 @@
1
1
  import { HTTPClient, matchResponse, matchStatusCode, unpackHeaders } from "./http";
2
2
  import { SecurityState, resolveSecurity, resolveGlobalSecurity } from "./security";
3
3
  import { pathToFunc } from "./url";
4
+ import { SDKHooks, HookContext } from "../hooks";
4
5
  export type RequestOptions = {
5
6
  fetchOptions?: Omit<RequestInit, "method" | "body">;
6
7
  };
7
8
  type RequestConfig = {
8
9
  method: string;
9
10
  path: string;
11
+ context: HookContext;
10
12
  baseURL?: string | URL;
11
13
  query?: string;
12
14
  body?: RequestInit["body"];
@@ -16,11 +18,17 @@ type RequestConfig = {
16
18
  export declare class ClientSDK {
17
19
  private readonly client;
18
20
  protected readonly baseURL: URL | null;
21
+ protected readonly hooks$: SDKHooks;
19
22
  constructor(init: {
20
23
  client: HTTPClient;
21
24
  baseURL: URL | null;
25
+ hooks: SDKHooks;
22
26
  });
23
- protected fetch$(conf: RequestConfig, options?: RequestOptions): Promise<Response>;
27
+ protected createRequest$(conf: RequestConfig, options?: RequestOptions): Promise<Request>;
28
+ protected do$(req: Request, options: {
29
+ context: HookContext;
30
+ errorCodes: number | string | (number | string)[];
31
+ }): Promise<Response>;
24
32
  protected unpackHeaders: typeof unpackHeaders;
25
33
  protected matchStatusCode: typeof matchStatusCode;
26
34
  protected matchResponse: typeof matchResponse;