@anthropic-ai/foundry-sdk 0.2.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 (259) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/LICENSE +8 -0
  3. package/README.md +75 -0
  4. package/client.d.mts +58 -0
  5. package/client.d.mts.map +1 -0
  6. package/client.d.ts +58 -0
  7. package/client.d.ts.map +1 -0
  8. package/client.js +136 -0
  9. package/client.js.map +1 -0
  10. package/client.mjs +98 -0
  11. package/client.mjs.map +1 -0
  12. package/core/error.d.mts +2 -0
  13. package/core/error.d.mts.map +1 -0
  14. package/core/error.d.ts +2 -0
  15. package/core/error.d.ts.map +1 -0
  16. package/core/error.js +18 -0
  17. package/core/error.js.map +1 -0
  18. package/core/error.mjs +2 -0
  19. package/core/error.mjs.map +1 -0
  20. package/core/pagination.d.mts +2 -0
  21. package/core/pagination.d.mts.map +1 -0
  22. package/core/pagination.d.ts +2 -0
  23. package/core/pagination.d.ts.map +1 -0
  24. package/core/pagination.js +18 -0
  25. package/core/pagination.js.map +1 -0
  26. package/core/pagination.mjs +2 -0
  27. package/core/pagination.mjs.map +1 -0
  28. package/core/streaming.d.mts +2 -0
  29. package/core/streaming.d.mts.map +1 -0
  30. package/core/streaming.d.ts +2 -0
  31. package/core/streaming.d.ts.map +1 -0
  32. package/core/streaming.js +18 -0
  33. package/core/streaming.js.map +1 -0
  34. package/core/streaming.mjs +2 -0
  35. package/core/streaming.mjs.map +1 -0
  36. package/index.d.mts +4 -0
  37. package/index.d.mts.map +1 -0
  38. package/index.d.ts +4 -0
  39. package/index.d.ts.map +1 -0
  40. package/index.js +24 -0
  41. package/index.js.map +1 -0
  42. package/index.mjs +3 -0
  43. package/index.mjs.map +1 -0
  44. package/internal/builtin-types.d.mts +73 -0
  45. package/internal/builtin-types.d.mts.map +1 -0
  46. package/internal/builtin-types.d.ts +73 -0
  47. package/internal/builtin-types.d.ts.map +1 -0
  48. package/internal/builtin-types.js +4 -0
  49. package/internal/builtin-types.js.map +1 -0
  50. package/internal/builtin-types.mjs +3 -0
  51. package/internal/builtin-types.mjs.map +1 -0
  52. package/internal/constants.d.mts +5 -0
  53. package/internal/constants.d.mts.map +1 -0
  54. package/internal/constants.d.ts +5 -0
  55. package/internal/constants.d.ts.map +1 -0
  56. package/internal/constants.js +18 -0
  57. package/internal/constants.js.map +1 -0
  58. package/internal/constants.mjs +15 -0
  59. package/internal/constants.mjs.map +1 -0
  60. package/internal/decoders/jsonl.d.mts +10 -0
  61. package/internal/decoders/jsonl.d.mts.map +1 -0
  62. package/internal/decoders/jsonl.d.ts +10 -0
  63. package/internal/decoders/jsonl.d.ts.map +1 -0
  64. package/internal/decoders/jsonl.js +39 -0
  65. package/internal/decoders/jsonl.js.map +1 -0
  66. package/internal/decoders/jsonl.mjs +35 -0
  67. package/internal/decoders/jsonl.mjs.map +1 -0
  68. package/internal/decoders/line.d.mts +17 -0
  69. package/internal/decoders/line.d.mts.map +1 -0
  70. package/internal/decoders/line.d.ts +17 -0
  71. package/internal/decoders/line.d.ts.map +1 -0
  72. package/internal/decoders/line.js +123 -0
  73. package/internal/decoders/line.js.map +1 -0
  74. package/internal/decoders/line.mjs +118 -0
  75. package/internal/decoders/line.mjs.map +1 -0
  76. package/internal/errors.d.mts +3 -0
  77. package/internal/errors.d.mts.map +1 -0
  78. package/internal/errors.d.ts +3 -0
  79. package/internal/errors.d.ts.map +1 -0
  80. package/internal/errors.js +41 -0
  81. package/internal/errors.js.map +1 -0
  82. package/internal/errors.mjs +36 -0
  83. package/internal/errors.mjs.map +1 -0
  84. package/internal/headers.d.mts +22 -0
  85. package/internal/headers.d.mts.map +1 -0
  86. package/internal/headers.d.ts +22 -0
  87. package/internal/headers.d.ts.map +1 -0
  88. package/internal/headers.js +79 -0
  89. package/internal/headers.js.map +1 -0
  90. package/internal/headers.mjs +74 -0
  91. package/internal/headers.mjs.map +1 -0
  92. package/internal/parse.d.mts +17 -0
  93. package/internal/parse.d.mts.map +1 -0
  94. package/internal/parse.d.ts +17 -0
  95. package/internal/parse.d.ts.map +1 -0
  96. package/internal/parse.js +55 -0
  97. package/internal/parse.js.map +1 -0
  98. package/internal/parse.mjs +51 -0
  99. package/internal/parse.mjs.map +1 -0
  100. package/internal/request-options.d.mts +77 -0
  101. package/internal/request-options.d.mts.map +1 -0
  102. package/internal/request-options.d.ts +77 -0
  103. package/internal/request-options.d.ts.map +1 -0
  104. package/internal/request-options.js +14 -0
  105. package/internal/request-options.js.map +1 -0
  106. package/internal/request-options.mjs +10 -0
  107. package/internal/request-options.mjs.map +1 -0
  108. package/internal/shim-types.d.mts +17 -0
  109. package/internal/shim-types.d.mts.map +1 -0
  110. package/internal/shim-types.d.ts +17 -0
  111. package/internal/shim-types.d.ts.map +1 -0
  112. package/internal/shim-types.js +4 -0
  113. package/internal/shim-types.js.map +1 -0
  114. package/internal/shim-types.mjs +3 -0
  115. package/internal/shim-types.mjs.map +1 -0
  116. package/internal/shims.d.mts +20 -0
  117. package/internal/shims.d.mts.map +1 -0
  118. package/internal/shims.d.ts +20 -0
  119. package/internal/shims.d.ts.map +1 -0
  120. package/internal/shims.js +92 -0
  121. package/internal/shims.js.map +1 -0
  122. package/internal/shims.mjs +85 -0
  123. package/internal/shims.mjs.map +1 -0
  124. package/internal/stream-utils.d.mts +8 -0
  125. package/internal/stream-utils.d.mts.map +1 -0
  126. package/internal/stream-utils.d.ts +8 -0
  127. package/internal/stream-utils.d.ts.map +1 -0
  128. package/internal/stream-utils.js +38 -0
  129. package/internal/stream-utils.js.map +1 -0
  130. package/internal/stream-utils.mjs +35 -0
  131. package/internal/stream-utils.mjs.map +1 -0
  132. package/internal/to-file.d.mts +45 -0
  133. package/internal/to-file.d.mts.map +1 -0
  134. package/internal/to-file.d.ts +45 -0
  135. package/internal/to-file.d.ts.map +1 -0
  136. package/internal/to-file.js +96 -0
  137. package/internal/to-file.js.map +1 -0
  138. package/internal/to-file.mjs +93 -0
  139. package/internal/to-file.mjs.map +1 -0
  140. package/internal/types.d.mts +69 -0
  141. package/internal/types.d.mts.map +1 -0
  142. package/internal/types.d.ts +69 -0
  143. package/internal/types.d.ts.map +1 -0
  144. package/internal/types.js +4 -0
  145. package/internal/types.js.map +1 -0
  146. package/internal/types.mjs +3 -0
  147. package/internal/types.mjs.map +1 -0
  148. package/internal/uploads.d.mts +42 -0
  149. package/internal/uploads.d.mts.map +1 -0
  150. package/internal/uploads.d.ts +42 -0
  151. package/internal/uploads.d.ts.map +1 -0
  152. package/internal/uploads.js +146 -0
  153. package/internal/uploads.js.map +1 -0
  154. package/internal/uploads.mjs +136 -0
  155. package/internal/uploads.mjs.map +1 -0
  156. package/internal/utils/base64.d.mts +3 -0
  157. package/internal/utils/base64.d.mts.map +1 -0
  158. package/internal/utils/base64.d.ts +3 -0
  159. package/internal/utils/base64.d.ts.map +1 -0
  160. package/internal/utils/base64.js +38 -0
  161. package/internal/utils/base64.js.map +1 -0
  162. package/internal/utils/base64.mjs +33 -0
  163. package/internal/utils/base64.mjs.map +1 -0
  164. package/internal/utils/bytes.d.mts +4 -0
  165. package/internal/utils/bytes.d.mts.map +1 -0
  166. package/internal/utils/bytes.d.ts +4 -0
  167. package/internal/utils/bytes.d.ts.map +1 -0
  168. package/internal/utils/bytes.js +31 -0
  169. package/internal/utils/bytes.js.map +1 -0
  170. package/internal/utils/bytes.mjs +26 -0
  171. package/internal/utils/bytes.mjs.map +1 -0
  172. package/internal/utils/env.d.mts +9 -0
  173. package/internal/utils/env.d.mts.map +1 -0
  174. package/internal/utils/env.d.ts +9 -0
  175. package/internal/utils/env.d.ts.map +1 -0
  176. package/internal/utils/env.js +22 -0
  177. package/internal/utils/env.js.map +1 -0
  178. package/internal/utils/env.mjs +18 -0
  179. package/internal/utils/env.mjs.map +1 -0
  180. package/internal/utils/log.d.mts +37 -0
  181. package/internal/utils/log.d.mts.map +1 -0
  182. package/internal/utils/log.d.ts +37 -0
  183. package/internal/utils/log.d.ts.map +1 -0
  184. package/internal/utils/log.js +86 -0
  185. package/internal/utils/log.js.map +1 -0
  186. package/internal/utils/log.mjs +80 -0
  187. package/internal/utils/log.mjs.map +1 -0
  188. package/internal/utils/path.d.mts +15 -0
  189. package/internal/utils/path.d.mts.map +1 -0
  190. package/internal/utils/path.d.ts +15 -0
  191. package/internal/utils/path.d.ts.map +1 -0
  192. package/internal/utils/path.js +79 -0
  193. package/internal/utils/path.js.map +1 -0
  194. package/internal/utils/path.mjs +74 -0
  195. package/internal/utils/path.mjs.map +1 -0
  196. package/internal/utils/sleep.d.mts +2 -0
  197. package/internal/utils/sleep.d.mts.map +1 -0
  198. package/internal/utils/sleep.d.ts +2 -0
  199. package/internal/utils/sleep.d.ts.map +1 -0
  200. package/internal/utils/sleep.js +7 -0
  201. package/internal/utils/sleep.js.map +1 -0
  202. package/internal/utils/sleep.mjs +3 -0
  203. package/internal/utils/sleep.mjs.map +1 -0
  204. package/internal/utils/uuid.d.mts +5 -0
  205. package/internal/utils/uuid.d.mts.map +1 -0
  206. package/internal/utils/uuid.d.ts +5 -0
  207. package/internal/utils/uuid.d.ts.map +1 -0
  208. package/internal/utils/uuid.js +19 -0
  209. package/internal/utils/uuid.js.map +1 -0
  210. package/internal/utils/uuid.mjs +15 -0
  211. package/internal/utils/uuid.mjs.map +1 -0
  212. package/internal/utils/values.d.mts +19 -0
  213. package/internal/utils/values.d.mts.map +1 -0
  214. package/internal/utils/values.d.ts +19 -0
  215. package/internal/utils/values.d.ts.map +1 -0
  216. package/internal/utils/values.js +119 -0
  217. package/internal/utils/values.js.map +1 -0
  218. package/internal/utils/values.mjs +100 -0
  219. package/internal/utils/values.mjs.map +1 -0
  220. package/internal/utils.d.mts +7 -0
  221. package/internal/utils.d.mts.map +1 -0
  222. package/internal/utils.d.ts +7 -0
  223. package/internal/utils.d.ts.map +1 -0
  224. package/internal/utils.js +24 -0
  225. package/internal/utils.js.map +1 -0
  226. package/internal/utils.mjs +8 -0
  227. package/internal/utils.mjs.map +1 -0
  228. package/package.json +71 -0
  229. package/src/client.ts +166 -0
  230. package/src/core/error.ts +1 -0
  231. package/src/core/pagination.ts +1 -0
  232. package/src/core/streaming.ts +1 -0
  233. package/src/index.ts +3 -0
  234. package/src/internal/README.md +3 -0
  235. package/src/internal/builtin-types.ts +93 -0
  236. package/src/internal/constants.ts +15 -0
  237. package/src/internal/decoders/jsonl.ts +48 -0
  238. package/src/internal/decoders/line.ts +135 -0
  239. package/src/internal/detect-platform.ts +196 -0
  240. package/src/internal/errors.ts +33 -0
  241. package/src/internal/headers.ts +99 -0
  242. package/src/internal/parse.ts +84 -0
  243. package/src/internal/request-options.ts +93 -0
  244. package/src/internal/shim-types.ts +26 -0
  245. package/src/internal/shims.ts +107 -0
  246. package/src/internal/stream-utils.ts +32 -0
  247. package/src/internal/to-file.ts +159 -0
  248. package/src/internal/types.ts +95 -0
  249. package/src/internal/uploads.ts +193 -0
  250. package/src/internal/utils/base64.ts +40 -0
  251. package/src/internal/utils/bytes.ts +32 -0
  252. package/src/internal/utils/env.ts +18 -0
  253. package/src/internal/utils/log.ts +127 -0
  254. package/src/internal/utils/path.ts +88 -0
  255. package/src/internal/utils/sleep.ts +3 -0
  256. package/src/internal/utils/uuid.ts +17 -0
  257. package/src/internal/utils/values.ts +112 -0
  258. package/src/internal/utils.ts +8 -0
  259. package/src/tsconfig.json +11 -0
package/index.d.ts.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":";OACO,EAAE,gBAAgB,IAAI,OAAO,EAAE;YAC1B,EAAE,oBAAoB,EAAE"}
package/index.js ADDED
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ exports = module.exports = function (...args) {
17
+ return new exports.default(...args)
18
+ }
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.default = void 0;
21
+ __exportStar(require("./client.js"), exports);
22
+ var client_1 = require("./client.js");
23
+ Object.defineProperty(exports, "default", { enumerable: true, get: function () { return client_1.AnthropicFoundry; } });
24
+ //# sourceMappingURL=index.js.map
package/index.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,8CAAyB;AACzB,sCAAuD;AAA9C,iGAAA,gBAAgB,OAAW"}
package/index.mjs ADDED
@@ -0,0 +1,3 @@
1
+ export * from "./client.mjs";
2
+ export { AnthropicFoundry as default } from "./client.mjs";
3
+ //# sourceMappingURL=index.mjs.map
package/index.mjs.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":";OACO,EAAE,gBAAgB,IAAI,OAAO,EAAE"}
@@ -0,0 +1,73 @@
1
+ export type Fetch = (input: string | URL | Request, init?: RequestInit) => Promise<Response>;
2
+ /**
3
+ * An alias to the builtin `RequestInit` type so we can
4
+ * easily alias it in import statements if there are name clashes.
5
+ *
6
+ * https://developer.mozilla.org/docs/Web/API/RequestInit
7
+ */
8
+ type _RequestInit = RequestInit;
9
+ /**
10
+ * An alias to the builtin `Response` type so we can
11
+ * easily alias it in import statements if there are name clashes.
12
+ *
13
+ * https://developer.mozilla.org/docs/Web/API/Response
14
+ */
15
+ type _Response = Response;
16
+ /**
17
+ * The type for the first argument to `fetch`.
18
+ *
19
+ * https://developer.mozilla.org/docs/Web/API/Window/fetch#resource
20
+ */
21
+ type _RequestInfo = Request | URL | string;
22
+ /**
23
+ * The type for constructing `RequestInit` Headers.
24
+ *
25
+ * https://developer.mozilla.org/docs/Web/API/RequestInit#setting_headers
26
+ */
27
+ type _HeadersInit = RequestInit['headers'];
28
+ /**
29
+ * The type for constructing `RequestInit` body.
30
+ *
31
+ * https://developer.mozilla.org/docs/Web/API/RequestInit#body
32
+ */
33
+ type _BodyInit = RequestInit['body'];
34
+ /**
35
+ * An alias to the builtin `Array<T>` type so we can
36
+ * easily alias it in import statements if there are name clashes.
37
+ */
38
+ type _Array<T> = Array<T>;
39
+ /**
40
+ * An alias to the builtin `Record<K, T>` type so we can
41
+ * easily alias it in import statements if there are name clashes.
42
+ */
43
+ type _Record<K extends keyof any, T> = Record<K, T>;
44
+ export type { _Array as Array, _BodyInit as BodyInit, _HeadersInit as HeadersInit, _Record as Record, _RequestInfo as RequestInfo, _RequestInit as RequestInit, _Response as Response, };
45
+ /**
46
+ * A copy of the builtin `EndingType` type as it isn't fully supported in certain
47
+ * environments and attempting to reference the global version will error.
48
+ *
49
+ * https://github.com/microsoft/TypeScript/blob/49ad1a3917a0ea57f5ff248159256e12bb1cb705/src/lib/dom.generated.d.ts#L27941
50
+ */
51
+ type EndingType = 'native' | 'transparent';
52
+ /**
53
+ * A copy of the builtin `BlobPropertyBag` type as it isn't fully supported in certain
54
+ * environments and attempting to reference the global version will error.
55
+ *
56
+ * https://github.com/microsoft/TypeScript/blob/49ad1a3917a0ea57f5ff248159256e12bb1cb705/src/lib/dom.generated.d.ts#L154
57
+ * https://developer.mozilla.org/en-US/docs/Web/API/Blob/Blob#options
58
+ */
59
+ export interface BlobPropertyBag {
60
+ endings?: EndingType;
61
+ type?: string;
62
+ }
63
+ /**
64
+ * A copy of the builtin `FilePropertyBag` type as it isn't fully supported in certain
65
+ * environments and attempting to reference the global version will error.
66
+ *
67
+ * https://github.com/microsoft/TypeScript/blob/49ad1a3917a0ea57f5ff248159256e12bb1cb705/src/lib/dom.generated.d.ts#L503
68
+ * https://developer.mozilla.org/en-US/docs/Web/API/File/File#options
69
+ */
70
+ export interface FilePropertyBag extends BlobPropertyBag {
71
+ lastModified?: number;
72
+ }
73
+ //# sourceMappingURL=builtin-types.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builtin-types.d.mts","sourceRoot":"","sources":["../src/internal/builtin-types.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,KAAK,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,OAAO,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE7F;;;;;GAKG;AACH,KAAK,YAAY,GAAG,WAAW,CAAC;AAEhC;;;;;GAKG;AACH,KAAK,SAAS,GAAG,QAAQ,CAAC;AAE1B;;;;GAIG;AACH,KAAK,YAAY,GAAG,OAAO,GAAG,GAAG,GAAG,MAAM,CAAC;AAE3C;;;;GAIG;AACH,KAAK,YAAY,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;AAE3C;;;;GAIG;AACH,KAAK,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAErC;;;GAGG;AACH,KAAK,MAAM,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;AAE1B;;;GAGG;AACH,KAAK,OAAO,CAAC,CAAC,SAAS,MAAM,GAAG,EAAE,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAEpD,YAAY,EACV,MAAM,IAAI,KAAK,EACf,SAAS,IAAI,QAAQ,EACrB,YAAY,IAAI,WAAW,EAC3B,OAAO,IAAI,MAAM,EACjB,YAAY,IAAI,WAAW,EAC3B,YAAY,IAAI,WAAW,EAC3B,SAAS,IAAI,QAAQ,GACtB,CAAC;AAEF;;;;;GAKG;AACH,KAAK,UAAU,GAAG,QAAQ,GAAG,aAAa,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;GAMG;AACH,MAAM,WAAW,eAAgB,SAAQ,eAAe;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB"}
@@ -0,0 +1,73 @@
1
+ export type Fetch = (input: string | URL | Request, init?: RequestInit) => Promise<Response>;
2
+ /**
3
+ * An alias to the builtin `RequestInit` type so we can
4
+ * easily alias it in import statements if there are name clashes.
5
+ *
6
+ * https://developer.mozilla.org/docs/Web/API/RequestInit
7
+ */
8
+ type _RequestInit = RequestInit;
9
+ /**
10
+ * An alias to the builtin `Response` type so we can
11
+ * easily alias it in import statements if there are name clashes.
12
+ *
13
+ * https://developer.mozilla.org/docs/Web/API/Response
14
+ */
15
+ type _Response = Response;
16
+ /**
17
+ * The type for the first argument to `fetch`.
18
+ *
19
+ * https://developer.mozilla.org/docs/Web/API/Window/fetch#resource
20
+ */
21
+ type _RequestInfo = Request | URL | string;
22
+ /**
23
+ * The type for constructing `RequestInit` Headers.
24
+ *
25
+ * https://developer.mozilla.org/docs/Web/API/RequestInit#setting_headers
26
+ */
27
+ type _HeadersInit = RequestInit['headers'];
28
+ /**
29
+ * The type for constructing `RequestInit` body.
30
+ *
31
+ * https://developer.mozilla.org/docs/Web/API/RequestInit#body
32
+ */
33
+ type _BodyInit = RequestInit['body'];
34
+ /**
35
+ * An alias to the builtin `Array<T>` type so we can
36
+ * easily alias it in import statements if there are name clashes.
37
+ */
38
+ type _Array<T> = Array<T>;
39
+ /**
40
+ * An alias to the builtin `Record<K, T>` type so we can
41
+ * easily alias it in import statements if there are name clashes.
42
+ */
43
+ type _Record<K extends keyof any, T> = Record<K, T>;
44
+ export type { _Array as Array, _BodyInit as BodyInit, _HeadersInit as HeadersInit, _Record as Record, _RequestInfo as RequestInfo, _RequestInit as RequestInit, _Response as Response, };
45
+ /**
46
+ * A copy of the builtin `EndingType` type as it isn't fully supported in certain
47
+ * environments and attempting to reference the global version will error.
48
+ *
49
+ * https://github.com/microsoft/TypeScript/blob/49ad1a3917a0ea57f5ff248159256e12bb1cb705/src/lib/dom.generated.d.ts#L27941
50
+ */
51
+ type EndingType = 'native' | 'transparent';
52
+ /**
53
+ * A copy of the builtin `BlobPropertyBag` type as it isn't fully supported in certain
54
+ * environments and attempting to reference the global version will error.
55
+ *
56
+ * https://github.com/microsoft/TypeScript/blob/49ad1a3917a0ea57f5ff248159256e12bb1cb705/src/lib/dom.generated.d.ts#L154
57
+ * https://developer.mozilla.org/en-US/docs/Web/API/Blob/Blob#options
58
+ */
59
+ export interface BlobPropertyBag {
60
+ endings?: EndingType;
61
+ type?: string;
62
+ }
63
+ /**
64
+ * A copy of the builtin `FilePropertyBag` type as it isn't fully supported in certain
65
+ * environments and attempting to reference the global version will error.
66
+ *
67
+ * https://github.com/microsoft/TypeScript/blob/49ad1a3917a0ea57f5ff248159256e12bb1cb705/src/lib/dom.generated.d.ts#L503
68
+ * https://developer.mozilla.org/en-US/docs/Web/API/File/File#options
69
+ */
70
+ export interface FilePropertyBag extends BlobPropertyBag {
71
+ lastModified?: number;
72
+ }
73
+ //# sourceMappingURL=builtin-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builtin-types.d.ts","sourceRoot":"","sources":["../src/internal/builtin-types.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,KAAK,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,OAAO,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE7F;;;;;GAKG;AACH,KAAK,YAAY,GAAG,WAAW,CAAC;AAEhC;;;;;GAKG;AACH,KAAK,SAAS,GAAG,QAAQ,CAAC;AAE1B;;;;GAIG;AACH,KAAK,YAAY,GAAG,OAAO,GAAG,GAAG,GAAG,MAAM,CAAC;AAE3C;;;;GAIG;AACH,KAAK,YAAY,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;AAE3C;;;;GAIG;AACH,KAAK,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAErC;;;GAGG;AACH,KAAK,MAAM,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;AAE1B;;;GAGG;AACH,KAAK,OAAO,CAAC,CAAC,SAAS,MAAM,GAAG,EAAE,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAEpD,YAAY,EACV,MAAM,IAAI,KAAK,EACf,SAAS,IAAI,QAAQ,EACrB,YAAY,IAAI,WAAW,EAC3B,OAAO,IAAI,MAAM,EACjB,YAAY,IAAI,WAAW,EAC3B,YAAY,IAAI,WAAW,EAC3B,SAAS,IAAI,QAAQ,GACtB,CAAC;AAEF;;;;;GAKG;AACH,KAAK,UAAU,GAAG,QAAQ,GAAG,aAAa,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;GAMG;AACH,MAAM,WAAW,eAAgB,SAAQ,eAAe;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //# sourceMappingURL=builtin-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builtin-types.js","sourceRoot":"","sources":["../src/internal/builtin-types.ts"],"names":[],"mappings":";AAAA,sFAAsF"}
@@ -0,0 +1,3 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ export {};
3
+ //# sourceMappingURL=builtin-types.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builtin-types.mjs","sourceRoot":"","sources":["../src/internal/builtin-types.ts"],"names":[],"mappings":"AAAA,sFAAsF"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Model-specific timeout constraints for non-streaming requests
3
+ */
4
+ export declare const MODEL_NONSTREAMING_TOKENS: Record<string, number>;
5
+ //# sourceMappingURL=constants.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.mts","sourceRoot":"","sources":["../src/internal/constants.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAS5D,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Model-specific timeout constraints for non-streaming requests
3
+ */
4
+ export declare const MODEL_NONSTREAMING_TOKENS: Record<string, number>;
5
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/internal/constants.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAS5D,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ // File containing shared constants
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.MODEL_NONSTREAMING_TOKENS = void 0;
5
+ /**
6
+ * Model-specific timeout constraints for non-streaming requests
7
+ */
8
+ exports.MODEL_NONSTREAMING_TOKENS = {
9
+ 'claude-opus-4-20250514': 8192,
10
+ 'claude-opus-4-0': 8192,
11
+ 'claude-4-opus-20250514': 8192,
12
+ 'anthropic.claude-opus-4-20250514-v1:0': 8192,
13
+ 'claude-opus-4@20250514': 8192,
14
+ 'claude-opus-4-1-20250805': 8192,
15
+ 'anthropic.claude-opus-4-1-20250805-v1:0': 8192,
16
+ 'claude-opus-4-1@20250805': 8192,
17
+ };
18
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/internal/constants.ts"],"names":[],"mappings":";AAAA,mCAAmC;;;AAEnC;;GAEG;AACU,QAAA,yBAAyB,GAA2B;IAC/D,wBAAwB,EAAE,IAAI;IAC9B,iBAAiB,EAAE,IAAI;IACvB,wBAAwB,EAAE,IAAI;IAC9B,uCAAuC,EAAE,IAAI;IAC7C,wBAAwB,EAAE,IAAI;IAC9B,0BAA0B,EAAE,IAAI;IAChC,yCAAyC,EAAE,IAAI;IAC/C,0BAA0B,EAAE,IAAI;CACjC,CAAC"}
@@ -0,0 +1,15 @@
1
+ // File containing shared constants
2
+ /**
3
+ * Model-specific timeout constraints for non-streaming requests
4
+ */
5
+ export const MODEL_NONSTREAMING_TOKENS = {
6
+ 'claude-opus-4-20250514': 8192,
7
+ 'claude-opus-4-0': 8192,
8
+ 'claude-4-opus-20250514': 8192,
9
+ 'anthropic.claude-opus-4-20250514-v1:0': 8192,
10
+ 'claude-opus-4@20250514': 8192,
11
+ 'claude-opus-4-1-20250805': 8192,
12
+ 'anthropic.claude-opus-4-1-20250805-v1:0': 8192,
13
+ 'claude-opus-4-1@20250805': 8192,
14
+ };
15
+ //# sourceMappingURL=constants.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.mjs","sourceRoot":"","sources":["../src/internal/constants.ts"],"names":[],"mappings":"AAAA,mCAAmC;AAEnC;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAA2B;IAC/D,wBAAwB,EAAE,IAAI;IAC9B,iBAAiB,EAAE,IAAI;IACvB,wBAAwB,EAAE,IAAI;IAC9B,uCAAuC,EAAE,IAAI;IAC7C,wBAAwB,EAAE,IAAI;IAC9B,0BAA0B,EAAE,IAAI;IAChC,yCAAyC,EAAE,IAAI;IAC/C,0BAA0B,EAAE,IAAI;CACjC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { type Bytes } from "./line.mjs";
2
+ export declare class JSONLDecoder<T> {
3
+ private iterator;
4
+ controller: AbortController;
5
+ constructor(iterator: AsyncIterableIterator<Bytes>, controller: AbortController);
6
+ private decoder;
7
+ [Symbol.asyncIterator](): AsyncIterator<T>;
8
+ static fromResponse<T>(response: Response, controller: AbortController): JSONLDecoder<T>;
9
+ }
10
+ //# sourceMappingURL=jsonl.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsonl.d.mts","sourceRoot":"","sources":["../../src/internal/decoders/jsonl.ts"],"names":[],"mappings":"OAEO,EAAe,KAAK,KAAK,EAAE;AAElC,qBAAa,YAAY,CAAC,CAAC;IAIvB,OAAO,CAAC,QAAQ;IAHlB,UAAU,EAAE,eAAe,CAAC;gBAGlB,QAAQ,EAAE,qBAAqB,CAAC,KAAK,CAAC,EAC9C,UAAU,EAAE,eAAe;YAKd,OAAO;IAatB,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC;IAI1C,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,GAAG,YAAY,CAAC,CAAC,CAAC;CAgBzF"}
@@ -0,0 +1,10 @@
1
+ import { type Bytes } from "./line.js";
2
+ export declare class JSONLDecoder<T> {
3
+ private iterator;
4
+ controller: AbortController;
5
+ constructor(iterator: AsyncIterableIterator<Bytes>, controller: AbortController);
6
+ private decoder;
7
+ [Symbol.asyncIterator](): AsyncIterator<T>;
8
+ static fromResponse<T>(response: Response, controller: AbortController): JSONLDecoder<T>;
9
+ }
10
+ //# sourceMappingURL=jsonl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsonl.d.ts","sourceRoot":"","sources":["../../src/internal/decoders/jsonl.ts"],"names":[],"mappings":"OAEO,EAAe,KAAK,KAAK,EAAE;AAElC,qBAAa,YAAY,CAAC,CAAC;IAIvB,OAAO,CAAC,QAAQ;IAHlB,UAAU,EAAE,eAAe,CAAC;gBAGlB,QAAQ,EAAE,qBAAqB,CAAC,KAAK,CAAC,EAC9C,UAAU,EAAE,eAAe;YAKd,OAAO;IAatB,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC;IAI1C,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,GAAG,YAAY,CAAC,CAAC,CAAC;CAgBzF"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JSONLDecoder = void 0;
4
+ const error_1 = require("../../core/error.js");
5
+ const shims_1 = require("../shims.js");
6
+ const line_1 = require("./line.js");
7
+ class JSONLDecoder {
8
+ constructor(iterator, controller) {
9
+ this.iterator = iterator;
10
+ this.controller = controller;
11
+ }
12
+ async *decoder() {
13
+ const lineDecoder = new line_1.LineDecoder();
14
+ for await (const chunk of this.iterator) {
15
+ for (const line of lineDecoder.decode(chunk)) {
16
+ yield JSON.parse(line);
17
+ }
18
+ }
19
+ for (const line of lineDecoder.flush()) {
20
+ yield JSON.parse(line);
21
+ }
22
+ }
23
+ [Symbol.asyncIterator]() {
24
+ return this.decoder();
25
+ }
26
+ static fromResponse(response, controller) {
27
+ if (!response.body) {
28
+ controller.abort();
29
+ if (typeof globalThis.navigator !== 'undefined' &&
30
+ globalThis.navigator.product === 'ReactNative') {
31
+ throw new error_1.AnthropicError(`The default react-native fetch implementation does not support streaming. Please use expo/fetch: https://docs.expo.dev/versions/latest/sdk/expo/#expofetch-api`);
32
+ }
33
+ throw new error_1.AnthropicError(`Attempted to iterate over a response with no body`);
34
+ }
35
+ return new JSONLDecoder((0, shims_1.ReadableStreamToAsyncIterable)(response.body), controller);
36
+ }
37
+ }
38
+ exports.JSONLDecoder = JSONLDecoder;
39
+ //# sourceMappingURL=jsonl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsonl.js","sourceRoot":"","sources":["../../src/internal/decoders/jsonl.ts"],"names":[],"mappings":";;;AAAA,+CAAkD;AAClD,uCAAyD;AACzD,oCAAiD;AAEjD,MAAa,YAAY;IAGvB,YACU,QAAsC,EAC9C,UAA2B;QADnB,aAAQ,GAAR,QAAQ,CAA8B;QAG9C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,CAAC,OAAO;QACpB,MAAM,WAAW,GAAG,IAAI,kBAAW,EAAE,CAAC;QACtC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACxC,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7C,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC;YACvC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IAED,CAAC,MAAM,CAAC,aAAa,CAAC;QACpB,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;IAED,MAAM,CAAC,YAAY,CAAI,QAAkB,EAAE,UAA2B;QACpE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,UAAU,CAAC,KAAK,EAAE,CAAC;YACnB,IACE,OAAQ,UAAkB,CAAC,SAAS,KAAK,WAAW;gBACnD,UAAkB,CAAC,SAAS,CAAC,OAAO,KAAK,aAAa,EACvD,CAAC;gBACD,MAAM,IAAI,sBAAc,CACtB,gKAAgK,CACjK,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,sBAAc,CAAC,mDAAmD,CAAC,CAAC;QAChF,CAAC;QAED,OAAO,IAAI,YAAY,CAAC,IAAA,qCAA6B,EAAQ,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC;IAC3F,CAAC;CACF;AA3CD,oCA2CC"}
@@ -0,0 +1,35 @@
1
+ import { AnthropicError } from "../../core/error.mjs";
2
+ import { ReadableStreamToAsyncIterable } from "../shims.mjs";
3
+ import { LineDecoder } from "./line.mjs";
4
+ export class JSONLDecoder {
5
+ constructor(iterator, controller) {
6
+ this.iterator = iterator;
7
+ this.controller = controller;
8
+ }
9
+ async *decoder() {
10
+ const lineDecoder = new LineDecoder();
11
+ for await (const chunk of this.iterator) {
12
+ for (const line of lineDecoder.decode(chunk)) {
13
+ yield JSON.parse(line);
14
+ }
15
+ }
16
+ for (const line of lineDecoder.flush()) {
17
+ yield JSON.parse(line);
18
+ }
19
+ }
20
+ [Symbol.asyncIterator]() {
21
+ return this.decoder();
22
+ }
23
+ static fromResponse(response, controller) {
24
+ if (!response.body) {
25
+ controller.abort();
26
+ if (typeof globalThis.navigator !== 'undefined' &&
27
+ globalThis.navigator.product === 'ReactNative') {
28
+ throw new AnthropicError(`The default react-native fetch implementation does not support streaming. Please use expo/fetch: https://docs.expo.dev/versions/latest/sdk/expo/#expofetch-api`);
29
+ }
30
+ throw new AnthropicError(`Attempted to iterate over a response with no body`);
31
+ }
32
+ return new JSONLDecoder(ReadableStreamToAsyncIterable(response.body), controller);
33
+ }
34
+ }
35
+ //# sourceMappingURL=jsonl.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsonl.mjs","sourceRoot":"","sources":["../../src/internal/decoders/jsonl.ts"],"names":[],"mappings":"OAAO,EAAE,cAAc,EAAE;OAClB,EAAE,6BAA6B,EAAE;OACjC,EAAE,WAAW,EAAc;AAElC,MAAM,OAAO,YAAY;IAGvB,YACU,QAAsC,EAC9C,UAA2B;QADnB,aAAQ,GAAR,QAAQ,CAA8B;QAG9C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,CAAC,OAAO;QACpB,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;QACtC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACxC,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7C,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC;YACvC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IAED,CAAC,MAAM,CAAC,aAAa,CAAC;QACpB,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;IAED,MAAM,CAAC,YAAY,CAAI,QAAkB,EAAE,UAA2B;QACpE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,UAAU,CAAC,KAAK,EAAE,CAAC;YACnB,IACE,OAAQ,UAAkB,CAAC,SAAS,KAAK,WAAW;gBACnD,UAAkB,CAAC,SAAS,CAAC,OAAO,KAAK,aAAa,EACvD,CAAC;gBACD,MAAM,IAAI,cAAc,CACtB,gKAAgK,CACjK,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,cAAc,CAAC,mDAAmD,CAAC,CAAC;QAChF,CAAC;QAED,OAAO,IAAI,YAAY,CAAC,6BAA6B,CAAQ,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC;IAC3F,CAAC;CACF"}
@@ -0,0 +1,17 @@
1
+ export type Bytes = string | ArrayBuffer | Uint8Array | null | undefined;
2
+ /**
3
+ * A re-implementation of httpx's `LineDecoder` in Python that handles incrementally
4
+ * reading lines from text.
5
+ *
6
+ * https://github.com/encode/httpx/blob/920333ea98118e9cf617f246905d7b202510941c/httpx/_decoders.py#L258
7
+ */
8
+ export declare class LineDecoder {
9
+ #private;
10
+ static NEWLINE_CHARS: Set<string>;
11
+ static NEWLINE_REGEXP: RegExp;
12
+ constructor();
13
+ decode(chunk: Bytes): string[];
14
+ flush(): string[];
15
+ }
16
+ export declare function findDoubleNewlineIndex(buffer: Uint8Array): number;
17
+ //# sourceMappingURL=line.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"line.d.mts","sourceRoot":"","sources":["../../src/internal/decoders/line.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,IAAI,GAAG,SAAS,CAAC;AAEzE;;;;;GAKG;AACH,qBAAa,WAAW;;IAEtB,MAAM,CAAC,aAAa,cAAyB;IAC7C,MAAM,CAAC,cAAc,SAAkB;;IAUvC,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,EAAE;IA6C9B,KAAK,IAAI,MAAM,EAAE;CAMlB;AA+BD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CA6BjE"}
@@ -0,0 +1,17 @@
1
+ export type Bytes = string | ArrayBuffer | Uint8Array | null | undefined;
2
+ /**
3
+ * A re-implementation of httpx's `LineDecoder` in Python that handles incrementally
4
+ * reading lines from text.
5
+ *
6
+ * https://github.com/encode/httpx/blob/920333ea98118e9cf617f246905d7b202510941c/httpx/_decoders.py#L258
7
+ */
8
+ export declare class LineDecoder {
9
+ #private;
10
+ static NEWLINE_CHARS: Set<string>;
11
+ static NEWLINE_REGEXP: RegExp;
12
+ constructor();
13
+ decode(chunk: Bytes): string[];
14
+ flush(): string[];
15
+ }
16
+ export declare function findDoubleNewlineIndex(buffer: Uint8Array): number;
17
+ //# sourceMappingURL=line.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"line.d.ts","sourceRoot":"","sources":["../../src/internal/decoders/line.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,IAAI,GAAG,SAAS,CAAC;AAEzE;;;;;GAKG;AACH,qBAAa,WAAW;;IAEtB,MAAM,CAAC,aAAa,cAAyB;IAC7C,MAAM,CAAC,cAAc,SAAkB;;IAUvC,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,EAAE;IA6C9B,KAAK,IAAI,MAAM,EAAE;CAMlB;AA+BD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CA6BjE"}
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
+ if (kind === "m") throw new TypeError("Private method is not writable");
4
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
+ };
8
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
+ };
13
+ var _LineDecoder_buffer, _LineDecoder_carriageReturnIndex;
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.LineDecoder = void 0;
16
+ exports.findDoubleNewlineIndex = findDoubleNewlineIndex;
17
+ const bytes_1 = require("../utils/bytes.js");
18
+ /**
19
+ * A re-implementation of httpx's `LineDecoder` in Python that handles incrementally
20
+ * reading lines from text.
21
+ *
22
+ * https://github.com/encode/httpx/blob/920333ea98118e9cf617f246905d7b202510941c/httpx/_decoders.py#L258
23
+ */
24
+ class LineDecoder {
25
+ constructor() {
26
+ _LineDecoder_buffer.set(this, void 0);
27
+ _LineDecoder_carriageReturnIndex.set(this, void 0);
28
+ __classPrivateFieldSet(this, _LineDecoder_buffer, new Uint8Array(), "f");
29
+ __classPrivateFieldSet(this, _LineDecoder_carriageReturnIndex, null, "f");
30
+ }
31
+ decode(chunk) {
32
+ if (chunk == null) {
33
+ return [];
34
+ }
35
+ const binaryChunk = chunk instanceof ArrayBuffer ? new Uint8Array(chunk)
36
+ : typeof chunk === 'string' ? (0, bytes_1.encodeUTF8)(chunk)
37
+ : chunk;
38
+ __classPrivateFieldSet(this, _LineDecoder_buffer, (0, bytes_1.concatBytes)([__classPrivateFieldGet(this, _LineDecoder_buffer, "f"), binaryChunk]), "f");
39
+ const lines = [];
40
+ let patternIndex;
41
+ while ((patternIndex = findNewlineIndex(__classPrivateFieldGet(this, _LineDecoder_buffer, "f"), __classPrivateFieldGet(this, _LineDecoder_carriageReturnIndex, "f"))) != null) {
42
+ if (patternIndex.carriage && __classPrivateFieldGet(this, _LineDecoder_carriageReturnIndex, "f") == null) {
43
+ // skip until we either get a corresponding `\n`, a new `\r` or nothing
44
+ __classPrivateFieldSet(this, _LineDecoder_carriageReturnIndex, patternIndex.index, "f");
45
+ continue;
46
+ }
47
+ // we got double \r or \rtext\n
48
+ if (__classPrivateFieldGet(this, _LineDecoder_carriageReturnIndex, "f") != null &&
49
+ (patternIndex.index !== __classPrivateFieldGet(this, _LineDecoder_carriageReturnIndex, "f") + 1 || patternIndex.carriage)) {
50
+ lines.push((0, bytes_1.decodeUTF8)(__classPrivateFieldGet(this, _LineDecoder_buffer, "f").subarray(0, __classPrivateFieldGet(this, _LineDecoder_carriageReturnIndex, "f") - 1)));
51
+ __classPrivateFieldSet(this, _LineDecoder_buffer, __classPrivateFieldGet(this, _LineDecoder_buffer, "f").subarray(__classPrivateFieldGet(this, _LineDecoder_carriageReturnIndex, "f")), "f");
52
+ __classPrivateFieldSet(this, _LineDecoder_carriageReturnIndex, null, "f");
53
+ continue;
54
+ }
55
+ const endIndex = __classPrivateFieldGet(this, _LineDecoder_carriageReturnIndex, "f") !== null ? patternIndex.preceding - 1 : patternIndex.preceding;
56
+ const line = (0, bytes_1.decodeUTF8)(__classPrivateFieldGet(this, _LineDecoder_buffer, "f").subarray(0, endIndex));
57
+ lines.push(line);
58
+ __classPrivateFieldSet(this, _LineDecoder_buffer, __classPrivateFieldGet(this, _LineDecoder_buffer, "f").subarray(patternIndex.index), "f");
59
+ __classPrivateFieldSet(this, _LineDecoder_carriageReturnIndex, null, "f");
60
+ }
61
+ return lines;
62
+ }
63
+ flush() {
64
+ if (!__classPrivateFieldGet(this, _LineDecoder_buffer, "f").length) {
65
+ return [];
66
+ }
67
+ return this.decode('\n');
68
+ }
69
+ }
70
+ exports.LineDecoder = LineDecoder;
71
+ _LineDecoder_buffer = new WeakMap(), _LineDecoder_carriageReturnIndex = new WeakMap();
72
+ // prettier-ignore
73
+ LineDecoder.NEWLINE_CHARS = new Set(['\n', '\r']);
74
+ LineDecoder.NEWLINE_REGEXP = /\r\n|[\n\r]/g;
75
+ /**
76
+ * This function searches the buffer for the end patterns, (\r or \n)
77
+ * and returns an object with the index preceding the matched newline and the
78
+ * index after the newline char. `null` is returned if no new line is found.
79
+ *
80
+ * ```ts
81
+ * findNewLineIndex('abc\ndef') -> { preceding: 2, index: 3 }
82
+ * ```
83
+ */
84
+ function findNewlineIndex(buffer, startIndex) {
85
+ const newline = 0x0a; // \n
86
+ const carriage = 0x0d; // \r
87
+ for (let i = startIndex ?? 0; i < buffer.length; i++) {
88
+ if (buffer[i] === newline) {
89
+ return { preceding: i, index: i + 1, carriage: false };
90
+ }
91
+ if (buffer[i] === carriage) {
92
+ return { preceding: i, index: i + 1, carriage: true };
93
+ }
94
+ }
95
+ return null;
96
+ }
97
+ function findDoubleNewlineIndex(buffer) {
98
+ // This function searches the buffer for the end patterns (\r\r, \n\n, \r\n\r\n)
99
+ // and returns the index right after the first occurrence of any pattern,
100
+ // or -1 if none of the patterns are found.
101
+ const newline = 0x0a; // \n
102
+ const carriage = 0x0d; // \r
103
+ for (let i = 0; i < buffer.length - 1; i++) {
104
+ if (buffer[i] === newline && buffer[i + 1] === newline) {
105
+ // \n\n
106
+ return i + 2;
107
+ }
108
+ if (buffer[i] === carriage && buffer[i + 1] === carriage) {
109
+ // \r\r
110
+ return i + 2;
111
+ }
112
+ if (buffer[i] === carriage &&
113
+ buffer[i + 1] === newline &&
114
+ i + 3 < buffer.length &&
115
+ buffer[i + 2] === carriage &&
116
+ buffer[i + 3] === newline) {
117
+ // \r\n\r\n
118
+ return i + 4;
119
+ }
120
+ }
121
+ return -1;
122
+ }
123
+ //# sourceMappingURL=line.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"line.js","sourceRoot":"","sources":["../../src/internal/decoders/line.ts"],"names":[],"mappings":"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"}