openlayer 0.4.0 → 0.8.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 (205) hide show
  1. package/CHANGELOG.md +78 -0
  2. package/README.md +56 -46
  3. package/_shims/node-runtime.d.ts.map +1 -1
  4. package/_shims/node-runtime.js +2 -3
  5. package/_shims/node-runtime.js.map +1 -1
  6. package/_shims/node-runtime.mjs +1 -1
  7. package/_shims/node-runtime.mjs.map +1 -1
  8. package/_shims/node-types.d.ts +1 -1
  9. package/core.d.ts +9 -6
  10. package/core.d.ts.map +1 -1
  11. package/core.js +31 -9
  12. package/core.js.map +1 -1
  13. package/core.mjs +28 -7
  14. package/core.mjs.map +1 -1
  15. package/error.d.ts +1 -1
  16. package/error.d.ts.map +1 -1
  17. package/error.js +1 -1
  18. package/error.js.map +1 -1
  19. package/error.mjs +1 -1
  20. package/error.mjs.map +1 -1
  21. package/index.d.mts +15 -13
  22. package/index.d.ts +15 -13
  23. package/index.d.ts.map +1 -1
  24. package/index.js +29 -10
  25. package/index.js.map +1 -1
  26. package/index.mjs +13 -9
  27. package/index.mjs.map +1 -1
  28. package/lib/core/openai-monitor.d.ts +6 -3
  29. package/lib/core/openai-monitor.d.ts.map +1 -1
  30. package/lib/core/openai-monitor.js +7 -1
  31. package/lib/core/openai-monitor.js.map +1 -1
  32. package/lib/core/openai-monitor.mjs +4 -1
  33. package/lib/core/openai-monitor.mjs.map +1 -1
  34. package/lib/integrations/langchainCallback.d.ts +33 -0
  35. package/lib/integrations/langchainCallback.d.ts.map +1 -0
  36. package/lib/integrations/langchainCallback.js +114 -0
  37. package/lib/integrations/langchainCallback.js.map +1 -0
  38. package/lib/integrations/langchainCallback.mjs +110 -0
  39. package/lib/integrations/langchainCallback.mjs.map +1 -0
  40. package/lib/integrations/openAiTracer.d.ts +3 -0
  41. package/lib/integrations/openAiTracer.d.ts.map +1 -0
  42. package/lib/integrations/openAiTracer.js +125 -0
  43. package/lib/integrations/openAiTracer.js.map +1 -0
  44. package/lib/integrations/openAiTracer.mjs +121 -0
  45. package/lib/integrations/openAiTracer.mjs.map +1 -0
  46. package/lib/tracing/enums.d.ts +5 -0
  47. package/lib/tracing/enums.d.ts.map +1 -0
  48. package/lib/tracing/enums.js +9 -0
  49. package/lib/tracing/enums.js.map +1 -0
  50. package/lib/tracing/enums.mjs +6 -0
  51. package/lib/tracing/enums.mjs.map +1 -0
  52. package/lib/tracing/steps.d.ts +57 -0
  53. package/lib/tracing/steps.d.ts.map +1 -0
  54. package/lib/tracing/steps.js +84 -0
  55. package/lib/tracing/steps.js.map +1 -0
  56. package/lib/tracing/steps.mjs +78 -0
  57. package/lib/tracing/steps.mjs.map +1 -0
  58. package/lib/tracing/tracer.d.ts +18 -0
  59. package/lib/tracing/tracer.d.ts.map +1 -0
  60. package/lib/tracing/tracer.js +155 -0
  61. package/lib/tracing/tracer.js.map +1 -0
  62. package/lib/tracing/tracer.mjs +148 -0
  63. package/lib/tracing/tracer.mjs.map +1 -0
  64. package/lib/tracing/traces.d.ts +9 -0
  65. package/lib/tracing/traces.d.ts.map +1 -0
  66. package/lib/tracing/traces.js +17 -0
  67. package/lib/tracing/traces.js.map +1 -0
  68. package/lib/tracing/traces.mjs +13 -0
  69. package/lib/tracing/traces.mjs.map +1 -0
  70. package/package.json +4 -3
  71. package/resources/commits/commits.d.ts +2 -3
  72. package/resources/commits/commits.d.ts.map +1 -1
  73. package/resources/commits/commits.js +2 -3
  74. package/resources/commits/commits.js.map +1 -1
  75. package/resources/commits/commits.mjs +2 -3
  76. package/resources/commits/commits.mjs.map +1 -1
  77. package/resources/commits/index.d.ts +1 -1
  78. package/resources/commits/index.d.ts.map +1 -1
  79. package/resources/commits/index.js.map +1 -1
  80. package/resources/commits/index.mjs.map +1 -1
  81. package/resources/commits/test-results.d.ts +1 -22
  82. package/resources/commits/test-results.d.ts.map +1 -1
  83. package/resources/commits/test-results.js +0 -2
  84. package/resources/commits/test-results.js.map +1 -1
  85. package/resources/commits/test-results.mjs +0 -2
  86. package/resources/commits/test-results.mjs.map +1 -1
  87. package/resources/index.d.ts +3 -2
  88. package/resources/index.d.ts.map +1 -1
  89. package/resources/index.js +3 -1
  90. package/resources/index.js.map +1 -1
  91. package/resources/index.mjs +2 -1
  92. package/resources/index.mjs.map +1 -1
  93. package/resources/inference-pipelines/data.d.ts +2 -4
  94. package/resources/inference-pipelines/data.d.ts.map +1 -1
  95. package/resources/inference-pipelines/data.js +1 -3
  96. package/resources/inference-pipelines/data.js.map +1 -1
  97. package/resources/inference-pipelines/data.mjs +1 -3
  98. package/resources/inference-pipelines/data.mjs.map +1 -1
  99. package/resources/inference-pipelines/index.d.ts +4 -4
  100. package/resources/inference-pipelines/index.d.ts.map +1 -1
  101. package/resources/inference-pipelines/index.js.map +1 -1
  102. package/resources/inference-pipelines/index.mjs +1 -1
  103. package/resources/inference-pipelines/index.mjs.map +1 -1
  104. package/resources/inference-pipelines/inference-pipelines.d.ts +164 -9
  105. package/resources/inference-pipelines/inference-pipelines.d.ts.map +1 -1
  106. package/resources/inference-pipelines/inference-pipelines.js +28 -5
  107. package/resources/inference-pipelines/inference-pipelines.js.map +1 -1
  108. package/resources/inference-pipelines/inference-pipelines.mjs +28 -5
  109. package/resources/inference-pipelines/inference-pipelines.mjs.map +1 -1
  110. package/resources/inference-pipelines/rows.d.ts +1 -3
  111. package/resources/inference-pipelines/rows.d.ts.map +1 -1
  112. package/resources/inference-pipelines/rows.js +0 -2
  113. package/resources/inference-pipelines/rows.js.map +1 -1
  114. package/resources/inference-pipelines/rows.mjs +0 -2
  115. package/resources/inference-pipelines/rows.mjs.map +1 -1
  116. package/resources/inference-pipelines/test-results.d.ts +1 -22
  117. package/resources/inference-pipelines/test-results.d.ts.map +1 -1
  118. package/resources/inference-pipelines/test-results.js +0 -2
  119. package/resources/inference-pipelines/test-results.js.map +1 -1
  120. package/resources/inference-pipelines/test-results.mjs +0 -2
  121. package/resources/inference-pipelines/test-results.mjs.map +1 -1
  122. package/resources/projects/commits.d.ts +150 -16
  123. package/resources/projects/commits.d.ts.map +1 -1
  124. package/resources/projects/commits.js +6 -2
  125. package/resources/projects/commits.js.map +1 -1
  126. package/resources/projects/commits.mjs +6 -2
  127. package/resources/projects/commits.mjs.map +1 -1
  128. package/resources/projects/index.d.ts +3 -3
  129. package/resources/projects/index.d.ts.map +1 -1
  130. package/resources/projects/index.js.map +1 -1
  131. package/resources/projects/index.mjs +1 -1
  132. package/resources/projects/index.mjs.map +1 -1
  133. package/resources/projects/inference-pipelines.d.ts +1 -24
  134. package/resources/projects/inference-pipelines.d.ts.map +1 -1
  135. package/resources/projects/inference-pipelines.js +0 -2
  136. package/resources/projects/inference-pipelines.js.map +1 -1
  137. package/resources/projects/inference-pipelines.mjs +0 -2
  138. package/resources/projects/inference-pipelines.mjs.map +1 -1
  139. package/resources/projects/projects.d.ts +5 -32
  140. package/resources/projects/projects.d.ts.map +1 -1
  141. package/resources/projects/projects.js +4 -4
  142. package/resources/projects/projects.js.map +1 -1
  143. package/resources/projects/projects.mjs +4 -4
  144. package/resources/projects/projects.mjs.map +1 -1
  145. package/resources/storage/index.d.ts +3 -0
  146. package/resources/storage/index.d.ts.map +1 -0
  147. package/resources/storage/index.js +9 -0
  148. package/resources/storage/index.js.map +1 -0
  149. package/resources/storage/index.mjs +4 -0
  150. package/resources/storage/index.mjs.map +1 -0
  151. package/resources/storage/presigned-url.d.ts +32 -0
  152. package/resources/storage/presigned-url.d.ts.map +1 -0
  153. package/resources/storage/presigned-url.js +16 -0
  154. package/resources/storage/presigned-url.js.map +1 -0
  155. package/resources/storage/presigned-url.mjs +12 -0
  156. package/resources/storage/presigned-url.mjs.map +1 -0
  157. package/resources/storage/storage.d.ts +10 -0
  158. package/resources/storage/storage.d.ts.map +1 -0
  159. package/resources/storage/storage.js +39 -0
  160. package/resources/storage/storage.js.map +1 -0
  161. package/resources/storage/storage.mjs +12 -0
  162. package/resources/storage/storage.mjs.map +1 -0
  163. package/shims/node.d.ts +1 -0
  164. package/shims/node.d.ts.map +1 -1
  165. package/src/_shims/node-runtime.ts +1 -3
  166. package/src/_shims/node-types.d.ts +1 -1
  167. package/src/core.ts +44 -13
  168. package/src/error.ts +3 -3
  169. package/src/index.ts +49 -21
  170. package/src/lib/core/openai-monitor.ts +10 -4
  171. package/src/lib/index.d.ts +1 -0
  172. package/src/lib/integrations/langchainCallback.ts +141 -0
  173. package/src/lib/integrations/openAiTracer.ts +137 -0
  174. package/src/lib/tracing/enums.ts +4 -0
  175. package/src/lib/tracing/index.d.ts +1 -0
  176. package/src/lib/tracing/steps.ts +118 -0
  177. package/src/lib/tracing/tracer.ts +204 -0
  178. package/src/lib/tracing/traces.ts +19 -0
  179. package/src/resources/commits/commits.ts +9 -4
  180. package/src/resources/commits/index.ts +1 -1
  181. package/src/resources/commits/test-results.ts +5 -28
  182. package/src/resources/index.ts +11 -5
  183. package/src/resources/inference-pipelines/data.ts +3 -5
  184. package/src/resources/inference-pipelines/index.ts +9 -4
  185. package/src/resources/inference-pipelines/inference-pipelines.ts +254 -10
  186. package/src/resources/inference-pipelines/rows.ts +2 -4
  187. package/src/resources/inference-pipelines/test-results.ts +5 -28
  188. package/src/resources/projects/commits.ts +192 -17
  189. package/src/resources/projects/index.ts +15 -9
  190. package/src/resources/projects/inference-pipelines.ts +7 -30
  191. package/src/resources/projects/projects.ts +40 -38
  192. package/src/resources/storage/index.ts +8 -0
  193. package/src/resources/storage/presigned-url.ts +48 -0
  194. package/src/resources/storage/storage.ts +19 -0
  195. package/src/uploads.ts +11 -4
  196. package/src/version.ts +1 -1
  197. package/uploads.d.ts.map +1 -1
  198. package/uploads.js +10 -4
  199. package/uploads.js.map +1 -1
  200. package/uploads.mjs +10 -4
  201. package/uploads.mjs.map +1 -1
  202. package/version.d.ts +1 -1
  203. package/version.js +1 -1
  204. package/version.mjs +1 -1
  205. package/src/lib/.keep +0 -4
@@ -3,9 +3,19 @@
3
3
  import { APIResource } from '../../resource';
4
4
  import { isRequestOptions } from '../../core';
5
5
  import * as Core from '../../core';
6
- import * as CommitsAPI from './commits';
7
6
 
8
7
  export class Commits extends APIResource {
8
+ /**
9
+ * Create a new commit (project version) in a project.
10
+ */
11
+ create(
12
+ projectId: string,
13
+ body: CommitCreateParams,
14
+ options?: Core.RequestOptions,
15
+ ): Core.APIPromise<CommitCreateResponse> {
16
+ return this._client.post(`/projects/${projectId}/versions`, { body, ...options });
17
+ }
18
+
9
19
  /**
10
20
  * List the commits (project versions) in a project.
11
21
  */
@@ -27,35 +37,162 @@ export class Commits extends APIResource {
27
37
  }
28
38
  }
29
39
 
30
- export interface CommitListResponse {
31
- _meta: CommitListResponse._Meta;
40
+ export interface CommitCreateResponse {
41
+ /**
42
+ * The project version (commit) id.
43
+ */
44
+ id: string;
32
45
 
33
- items: Array<CommitListResponse.Item>;
46
+ /**
47
+ * The details of a commit (project version).
48
+ */
49
+ commit: CommitCreateResponse.Commit;
50
+
51
+ /**
52
+ * The commit archive date.
53
+ */
54
+ dateArchived: string | null;
55
+
56
+ /**
57
+ * The project version (commit) creation date.
58
+ */
59
+ dateCreated: string;
60
+
61
+ /**
62
+ * The number of tests that are failing for the commit.
63
+ */
64
+ failingGoalCount: number;
65
+
66
+ /**
67
+ * The model id.
68
+ */
69
+ mlModelId: string | null;
70
+
71
+ /**
72
+ * The number of tests that are passing for the commit.
73
+ */
74
+ passingGoalCount: number;
75
+
76
+ /**
77
+ * The project id.
78
+ */
79
+ projectId: string;
80
+
81
+ /**
82
+ * The commit status. Initially, the commit is `queued`, then, it switches to
83
+ * `running`. Finally, it can be `paused`, `failed`, or `completed`.
84
+ */
85
+ status: 'queued' | 'running' | 'paused' | 'failed' | 'completed' | 'unknown';
86
+
87
+ /**
88
+ * The commit status message.
89
+ */
90
+ statusMessage: string | null;
91
+
92
+ /**
93
+ * The total number of tests for the commit.
94
+ */
95
+ totalGoalCount: number;
96
+
97
+ /**
98
+ * The training dataset id.
99
+ */
100
+ trainingDatasetId: string | null;
101
+
102
+ /**
103
+ * The validation dataset id.
104
+ */
105
+ validationDatasetId: string | null;
106
+
107
+ /**
108
+ * Whether the commit is archived.
109
+ */
110
+ archived?: boolean | null;
111
+
112
+ /**
113
+ * The deployment status associated with the commit's model.
114
+ */
115
+ deploymentStatus?: string;
116
+
117
+ links?: CommitCreateResponse.Links;
34
118
  }
35
119
 
36
- export namespace CommitListResponse {
37
- export interface _Meta {
120
+ export namespace CommitCreateResponse {
121
+ /**
122
+ * The details of a commit (project version).
123
+ */
124
+ export interface Commit {
125
+ /**
126
+ * The commit id.
127
+ */
128
+ id: string;
129
+
130
+ /**
131
+ * The author id of the commit.
132
+ */
133
+ authorId: string;
134
+
135
+ /**
136
+ * The size of the commit bundle in bytes.
137
+ */
138
+ fileSize: number | null;
139
+
140
+ /**
141
+ * The commit message.
142
+ */
143
+ message: string;
144
+
145
+ /**
146
+ * The model id.
147
+ */
148
+ mlModelId: string | null;
149
+
150
+ /**
151
+ * The storage URI where the commit bundle is stored.
152
+ */
153
+ storageUri: string;
154
+
155
+ /**
156
+ * The training dataset id.
157
+ */
158
+ trainingDatasetId: string | null;
159
+
160
+ /**
161
+ * The validation dataset id.
162
+ */
163
+ validationDatasetId: string | null;
164
+
38
165
  /**
39
- * The current page.
166
+ * The commit creation date.
40
167
  */
41
- page: number;
168
+ dateCreated?: string;
42
169
 
43
170
  /**
44
- * The number of items per page.
171
+ * The ref of the corresponding git commit.
45
172
  */
46
- perPage: number;
173
+ gitCommitRef?: string;
47
174
 
48
175
  /**
49
- * The total number of items.
176
+ * The SHA of the corresponding git commit.
50
177
  */
51
- totalItems: number;
178
+ gitCommitSha?: number;
52
179
 
53
180
  /**
54
- * The total number of pages.
181
+ * The URL of the corresponding git commit.
55
182
  */
56
- totalPages: number;
183
+ gitCommitUrl?: string;
57
184
  }
58
185
 
186
+ export interface Links {
187
+ app: string;
188
+ }
189
+ }
190
+
191
+ export interface CommitListResponse {
192
+ items: Array<CommitListResponse.Item>;
193
+ }
194
+
195
+ export namespace CommitListResponse {
59
196
  export interface Item {
60
197
  /**
61
198
  * The project version (commit) id.
@@ -208,6 +345,40 @@ export namespace CommitListResponse {
208
345
  }
209
346
  }
210
347
 
348
+ export interface CommitCreateParams {
349
+ /**
350
+ * The details of a commit (project version).
351
+ */
352
+ commit: CommitCreateParams.Commit;
353
+
354
+ /**
355
+ * The storage URI where the commit bundle is stored.
356
+ */
357
+ storageUri: string;
358
+
359
+ /**
360
+ * Whether the commit is archived.
361
+ */
362
+ archived?: boolean | null;
363
+
364
+ /**
365
+ * The deployment status associated with the commit's model.
366
+ */
367
+ deploymentStatus?: string;
368
+ }
369
+
370
+ export namespace CommitCreateParams {
371
+ /**
372
+ * The details of a commit (project version).
373
+ */
374
+ export interface Commit {
375
+ /**
376
+ * The commit message.
377
+ */
378
+ message: string;
379
+ }
380
+ }
381
+
211
382
  export interface CommitListParams {
212
383
  /**
213
384
  * The page to return in a paginated query.
@@ -220,7 +391,11 @@ export interface CommitListParams {
220
391
  perPage?: number;
221
392
  }
222
393
 
223
- export namespace Commits {
224
- export import CommitListResponse = CommitsAPI.CommitListResponse;
225
- export import CommitListParams = CommitsAPI.CommitListParams;
394
+ export declare namespace Commits {
395
+ export {
396
+ type CommitCreateResponse as CommitCreateResponse,
397
+ type CommitListResponse as CommitListResponse,
398
+ type CommitCreateParams as CommitCreateParams,
399
+ type CommitListParams as CommitListParams,
400
+ };
226
401
  }
@@ -1,17 +1,23 @@
1
1
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
- export { CommitListResponse, CommitListParams, Commits } from './commits';
4
3
  export {
5
- InferencePipelineCreateResponse,
6
- InferencePipelineListResponse,
7
- InferencePipelineCreateParams,
8
- InferencePipelineListParams,
4
+ Commits,
5
+ type CommitCreateResponse,
6
+ type CommitListResponse,
7
+ type CommitCreateParams,
8
+ type CommitListParams,
9
+ } from './commits';
10
+ export {
9
11
  InferencePipelines,
12
+ type InferencePipelineCreateResponse,
13
+ type InferencePipelineListResponse,
14
+ type InferencePipelineCreateParams,
15
+ type InferencePipelineListParams,
10
16
  } from './inference-pipelines';
11
17
  export {
12
- ProjectCreateResponse,
13
- ProjectListResponse,
14
- ProjectCreateParams,
15
- ProjectListParams,
16
18
  Projects,
19
+ type ProjectCreateResponse,
20
+ type ProjectListResponse,
21
+ type ProjectCreateParams,
22
+ type ProjectListParams,
17
23
  } from './projects';
@@ -3,7 +3,6 @@
3
3
  import { APIResource } from '../../resource';
4
4
  import { isRequestOptions } from '../../core';
5
5
  import * as Core from '../../core';
6
- import * as InferencePipelinesAPI from './inference-pipelines';
7
6
 
8
7
  export class InferencePipelines extends APIResource {
9
8
  /**
@@ -119,34 +118,10 @@ export namespace InferencePipelineCreateResponse {
119
118
  }
120
119
 
121
120
  export interface InferencePipelineListResponse {
122
- _meta: InferencePipelineListResponse._Meta;
123
-
124
121
  items: Array<InferencePipelineListResponse.Item>;
125
122
  }
126
123
 
127
124
  export namespace InferencePipelineListResponse {
128
- export interface _Meta {
129
- /**
130
- * The current page.
131
- */
132
- page: number;
133
-
134
- /**
135
- * The number of items per page.
136
- */
137
- perPage: number;
138
-
139
- /**
140
- * The total number of items.
141
- */
142
- totalItems: number;
143
-
144
- /**
145
- * The total number of pages.
146
- */
147
- totalPages: number;
148
- }
149
-
150
125
  export interface Item {
151
126
  /**
152
127
  * The inference pipeline id.
@@ -257,9 +232,11 @@ export interface InferencePipelineListParams {
257
232
  perPage?: number;
258
233
  }
259
234
 
260
- export namespace InferencePipelines {
261
- export import InferencePipelineCreateResponse = InferencePipelinesAPI.InferencePipelineCreateResponse;
262
- export import InferencePipelineListResponse = InferencePipelinesAPI.InferencePipelineListResponse;
263
- export import InferencePipelineCreateParams = InferencePipelinesAPI.InferencePipelineCreateParams;
264
- export import InferencePipelineListParams = InferencePipelinesAPI.InferencePipelineListParams;
235
+ export declare namespace InferencePipelines {
236
+ export {
237
+ type InferencePipelineCreateResponse as InferencePipelineCreateResponse,
238
+ type InferencePipelineListResponse as InferencePipelineListResponse,
239
+ type InferencePipelineCreateParams as InferencePipelineCreateParams,
240
+ type InferencePipelineListParams as InferencePipelineListParams,
241
+ };
265
242
  }
@@ -3,9 +3,22 @@
3
3
  import { APIResource } from '../../resource';
4
4
  import { isRequestOptions } from '../../core';
5
5
  import * as Core from '../../core';
6
- import * as ProjectsAPI from './projects';
7
6
  import * as CommitsAPI from './commits';
7
+ import {
8
+ CommitCreateParams,
9
+ CommitCreateResponse,
10
+ CommitListParams,
11
+ CommitListResponse,
12
+ Commits,
13
+ } from './commits';
8
14
  import * as InferencePipelinesAPI from './inference-pipelines';
15
+ import {
16
+ InferencePipelineCreateParams,
17
+ InferencePipelineCreateResponse,
18
+ InferencePipelineListParams,
19
+ InferencePipelineListResponse,
20
+ InferencePipelines,
21
+ } from './inference-pipelines';
9
22
 
10
23
  export class Projects extends APIResource {
11
24
  commits: CommitsAPI.Commits = new CommitsAPI.Commits(this._client);
@@ -151,34 +164,10 @@ export namespace ProjectCreateResponse {
151
164
  }
152
165
 
153
166
  export interface ProjectListResponse {
154
- _meta: ProjectListResponse._Meta;
155
-
156
167
  items: Array<ProjectListResponse.Item>;
157
168
  }
158
169
 
159
170
  export namespace ProjectListResponse {
160
- export interface _Meta {
161
- /**
162
- * The current page.
163
- */
164
- page: number;
165
-
166
- /**
167
- * The number of items per page.
168
- */
169
- perPage: number;
170
-
171
- /**
172
- * The total number of items.
173
- */
174
- totalItems: number;
175
-
176
- /**
177
- * The total number of pages.
178
- */
179
- totalPages: number;
180
- }
181
-
182
171
  export interface Item {
183
172
  /**
184
173
  * The project id.
@@ -333,17 +322,30 @@ export interface ProjectListParams {
333
322
  taskType?: 'llm-base' | 'tabular-classification' | 'tabular-regression' | 'text-classification';
334
323
  }
335
324
 
336
- export namespace Projects {
337
- export import ProjectCreateResponse = ProjectsAPI.ProjectCreateResponse;
338
- export import ProjectListResponse = ProjectsAPI.ProjectListResponse;
339
- export import ProjectCreateParams = ProjectsAPI.ProjectCreateParams;
340
- export import ProjectListParams = ProjectsAPI.ProjectListParams;
341
- export import Commits = CommitsAPI.Commits;
342
- export import CommitListResponse = CommitsAPI.CommitListResponse;
343
- export import CommitListParams = CommitsAPI.CommitListParams;
344
- export import InferencePipelines = InferencePipelinesAPI.InferencePipelines;
345
- export import InferencePipelineCreateResponse = InferencePipelinesAPI.InferencePipelineCreateResponse;
346
- export import InferencePipelineListResponse = InferencePipelinesAPI.InferencePipelineListResponse;
347
- export import InferencePipelineCreateParams = InferencePipelinesAPI.InferencePipelineCreateParams;
348
- export import InferencePipelineListParams = InferencePipelinesAPI.InferencePipelineListParams;
325
+ Projects.Commits = Commits;
326
+ Projects.InferencePipelines = InferencePipelines;
327
+
328
+ export declare namespace Projects {
329
+ export {
330
+ type ProjectCreateResponse as ProjectCreateResponse,
331
+ type ProjectListResponse as ProjectListResponse,
332
+ type ProjectCreateParams as ProjectCreateParams,
333
+ type ProjectListParams as ProjectListParams,
334
+ };
335
+
336
+ export {
337
+ Commits as Commits,
338
+ type CommitCreateResponse as CommitCreateResponse,
339
+ type CommitListResponse as CommitListResponse,
340
+ type CommitCreateParams as CommitCreateParams,
341
+ type CommitListParams as CommitListParams,
342
+ };
343
+
344
+ export {
345
+ InferencePipelines as InferencePipelines,
346
+ type InferencePipelineCreateResponse as InferencePipelineCreateResponse,
347
+ type InferencePipelineListResponse as InferencePipelineListResponse,
348
+ type InferencePipelineCreateParams as InferencePipelineCreateParams,
349
+ type InferencePipelineListParams as InferencePipelineListParams,
350
+ };
349
351
  }
@@ -0,0 +1,8 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ export {
4
+ PresignedURL,
5
+ type PresignedURLCreateResponse,
6
+ type PresignedURLCreateParams,
7
+ } from './presigned-url';
8
+ export { Storage } from './storage';
@@ -0,0 +1,48 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../resource';
4
+ import * as Core from '../../core';
5
+
6
+ export class PresignedURL extends APIResource {
7
+ /**
8
+ * Retrieve a presigned url to post storage artifacts.
9
+ */
10
+ create(
11
+ params: PresignedURLCreateParams,
12
+ options?: Core.RequestOptions,
13
+ ): Core.APIPromise<PresignedURLCreateResponse> {
14
+ const { objectName } = params;
15
+ return this._client.post('/storage/presigned-url', { query: { objectName }, ...options });
16
+ }
17
+ }
18
+
19
+ export interface PresignedURLCreateResponse {
20
+ /**
21
+ * The storage URI to send back to the backend after the upload was completed.
22
+ */
23
+ storageUri: string;
24
+
25
+ /**
26
+ * The presigned url.
27
+ */
28
+ url: string;
29
+
30
+ /**
31
+ * Fields to include in the body of the upload. Only needed by s3
32
+ */
33
+ fields?: unknown;
34
+ }
35
+
36
+ export interface PresignedURLCreateParams {
37
+ /**
38
+ * The name of the object.
39
+ */
40
+ objectName: string;
41
+ }
42
+
43
+ export declare namespace PresignedURL {
44
+ export {
45
+ type PresignedURLCreateResponse as PresignedURLCreateResponse,
46
+ type PresignedURLCreateParams as PresignedURLCreateParams,
47
+ };
48
+ }
@@ -0,0 +1,19 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../resource';
4
+ import * as PresignedURLAPI from './presigned-url';
5
+ import { PresignedURL, PresignedURLCreateParams, PresignedURLCreateResponse } from './presigned-url';
6
+
7
+ export class Storage extends APIResource {
8
+ presignedURL: PresignedURLAPI.PresignedURL = new PresignedURLAPI.PresignedURL(this._client);
9
+ }
10
+
11
+ Storage.PresignedURL = PresignedURL;
12
+
13
+ export declare namespace Storage {
14
+ export {
15
+ PresignedURL as PresignedURL,
16
+ type PresignedURLCreateResponse as PresignedURLCreateResponse,
17
+ type PresignedURLCreateParams as PresignedURLCreateParams,
18
+ };
19
+ }
package/src/uploads.ts CHANGED
@@ -107,21 +107,28 @@ export async function toFile(
107
107
  // If it's a promise, resolve it.
108
108
  value = await value;
109
109
 
110
- // Use the file's options if there isn't one provided
111
- options ??= isFileLike(value) ? { lastModified: value.lastModified, type: value.type } : {};
110
+ // If we've been given a `File` we don't need to do anything
111
+ if (isFileLike(value)) {
112
+ return value;
113
+ }
112
114
 
113
115
  if (isResponseLike(value)) {
114
116
  const blob = await value.blob();
115
117
  name ||= new URL(value.url).pathname.split(/[\\/]/).pop() ?? 'unknown_file';
116
118
 
117
- return new File([blob as any], name, options);
119
+ // we need to convert the `Blob` into an array buffer because the `Blob` class
120
+ // that `node-fetch` defines is incompatible with the web standard which results
121
+ // in `new File` interpreting it as a string instead of binary data.
122
+ const data = isBlobLike(blob) ? [(await blob.arrayBuffer()) as any] : [blob];
123
+
124
+ return new File(data, name, options);
118
125
  }
119
126
 
120
127
  const bits = await getBytes(value);
121
128
 
122
129
  name ||= getName(value) ?? 'unknown_file';
123
130
 
124
- if (!options.type) {
131
+ if (!options?.type) {
125
132
  const type = (bits[0] as any)?.type;
126
133
  if (typeof type === 'string') {
127
134
  options = { ...options, type };
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const VERSION = '0.4.0'; // x-release-please-version
1
+ export const VERSION = '0.8.0'; // x-release-please-version
package/uploads.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"uploads.d.ts","sourceRoot":"","sources":["src/uploads.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EACL,QAAQ,EAER,KAAK,IAAI,EACT,KAAK,eAAe,EAEpB,KAAK,YAAY,EAElB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,KAAK,YAAY,GAAG,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;AAC9F,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,IAAI,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE7F;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,YAAY,GAAG,YAAY,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4EAA4E;IAC5E,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACxB,6EAA6E;IAC7E,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;CAE/C;AAED;;GAEG;AACH,MAAM,WAAW,QAAS,SAAQ,QAAQ;IACxC,oFAAoF;IACpF,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC3B;AAED,eAAO,MAAM,cAAc,UAAW,GAAG,0BAIP,CAAC;AAEnC,eAAO,MAAM,UAAU,UAAW,GAAG,sBAKlB,CAAC;AAEpB;;;GAGG;AACH,eAAO,MAAM,UAAU,UAAW,GAAG;mBAAwC,QAAQ,WAAW,CAAC;CAOxD,CAAC;AAE1C,eAAO,MAAM,YAAY,UAAW,GAAG,wBAEtC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;AAEnG;;;;;;;;GAQG;AACH,wBAAsB,MAAM,CAC1B,KAAK,EAAE,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC,EAC7C,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAChC,OAAO,CAAC,EAAE,eAAe,GAAG,SAAS,GACpC,OAAO,CAAC,QAAQ,CAAC,CA0BnB;AAmDD,eAAO,MAAM,eAAe,SAAU,GAAG,0BACsD,CAAC;AAEhG;;;GAGG;AACH,eAAO,MAAM,gCAAgC,sGAO5C,CAAC;AAEF,eAAO,MAAM,2BAA2B,sGAKvC,CAAC;AAEF,eAAO,MAAM,UAAU,wDAA6D,QAAQ,QAAQ,CAInG,CAAC"}
1
+ {"version":3,"file":"uploads.d.ts","sourceRoot":"","sources":["src/uploads.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EACL,QAAQ,EAER,KAAK,IAAI,EACT,KAAK,eAAe,EAEpB,KAAK,YAAY,EAElB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,KAAK,YAAY,GAAG,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;AAC9F,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,IAAI,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE7F;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,YAAY,GAAG,YAAY,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4EAA4E;IAC5E,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACxB,6EAA6E;IAC7E,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;CAE/C;AAED;;GAEG;AACH,MAAM,WAAW,QAAS,SAAQ,QAAQ;IACxC,oFAAoF;IACpF,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC3B;AAED,eAAO,MAAM,cAAc,UAAW,GAAG,0BAIP,CAAC;AAEnC,eAAO,MAAM,UAAU,UAAW,GAAG,sBAKlB,CAAC;AAEpB;;;GAGG;AACH,eAAO,MAAM,UAAU,UAAW,GAAG;mBAAwC,QAAQ,WAAW,CAAC;CAOxD,CAAC;AAE1C,eAAO,MAAM,YAAY,UAAW,GAAG,wBAEtC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;AAEnG;;;;;;;;GAQG;AACH,wBAAsB,MAAM,CAC1B,KAAK,EAAE,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC,EAC7C,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAChC,OAAO,CAAC,EAAE,eAAe,GAAG,SAAS,GACpC,OAAO,CAAC,QAAQ,CAAC,CAiCnB;AAmDD,eAAO,MAAM,eAAe,SAAU,GAAG,0BACsD,CAAC;AAEhG;;;GAGG;AACH,eAAO,MAAM,gCAAgC,sGAO5C,CAAC;AAEF,eAAO,MAAM,2BAA2B,sGAKvC,CAAC;AAEF,eAAO,MAAM,UAAU,wDAA6D,QAAQ,QAAQ,CAInG,CAAC"}
package/uploads.js CHANGED
@@ -43,16 +43,22 @@ exports.isUploadable = isUploadable;
43
43
  async function toFile(value, name, options) {
44
44
  // If it's a promise, resolve it.
45
45
  value = await value;
46
- // Use the file's options if there isn't one provided
47
- options ?? (options = (0, exports.isFileLike)(value) ? { lastModified: value.lastModified, type: value.type } : {});
46
+ // If we've been given a `File` we don't need to do anything
47
+ if ((0, exports.isFileLike)(value)) {
48
+ return value;
49
+ }
48
50
  if ((0, exports.isResponseLike)(value)) {
49
51
  const blob = await value.blob();
50
52
  name || (name = new URL(value.url).pathname.split(/[\\/]/).pop() ?? 'unknown_file');
51
- return new index_1.File([blob], name, options);
53
+ // we need to convert the `Blob` into an array buffer because the `Blob` class
54
+ // that `node-fetch` defines is incompatible with the web standard which results
55
+ // in `new File` interpreting it as a string instead of binary data.
56
+ const data = (0, exports.isBlobLike)(blob) ? [(await blob.arrayBuffer())] : [blob];
57
+ return new index_1.File(data, name, options);
52
58
  }
53
59
  const bits = await getBytes(value);
54
60
  name || (name = getName(value) ?? 'unknown_file');
55
- if (!options.type) {
61
+ if (!options?.type) {
56
62
  const type = bits[0]?.type;
57
63
  if (typeof type === 'string') {
58
64
  options = { ...options, type };
package/uploads.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"uploads.js","sourceRoot":"","sources":["src/uploads.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uploads.js","sourceRoot":"","sources":["src/uploads.ts"],"names":[],"mappings":"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"}
package/uploads.mjs CHANGED
@@ -35,16 +35,22 @@ export const isUploadable = (value) => {
35
35
  export async function toFile(value, name, options) {
36
36
  // If it's a promise, resolve it.
37
37
  value = await value;
38
- // Use the file's options if there isn't one provided
39
- options ?? (options = isFileLike(value) ? { lastModified: value.lastModified, type: value.type } : {});
38
+ // If we've been given a `File` we don't need to do anything
39
+ if (isFileLike(value)) {
40
+ return value;
41
+ }
40
42
  if (isResponseLike(value)) {
41
43
  const blob = await value.blob();
42
44
  name || (name = new URL(value.url).pathname.split(/[\\/]/).pop() ?? 'unknown_file');
43
- return new File([blob], name, options);
45
+ // we need to convert the `Blob` into an array buffer because the `Blob` class
46
+ // that `node-fetch` defines is incompatible with the web standard which results
47
+ // in `new File` interpreting it as a string instead of binary data.
48
+ const data = isBlobLike(blob) ? [(await blob.arrayBuffer())] : [blob];
49
+ return new File(data, name, options);
44
50
  }
45
51
  const bits = await getBytes(value);
46
52
  name || (name = getName(value) ?? 'unknown_file');
47
- if (!options.type) {
53
+ if (!options?.type) {
48
54
  const type = bits[0]?.type;
49
55
  if (typeof type === 'string') {
50
56
  options = { ...options, type };