@anthropic-ai/sdk 0.34.0-alpha.0 → 0.36.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +92 -0
- package/README.md +19 -17
- package/_shims/MultipartBody.d.ts +9 -0
- package/_shims/MultipartBody.d.ts.map +1 -0
- package/_shims/MultipartBody.js +16 -0
- package/_shims/MultipartBody.js.map +1 -0
- package/_shims/MultipartBody.mjs +12 -0
- package/_shims/MultipartBody.mjs.map +1 -0
- package/_shims/README.md +46 -0
- package/_shims/auto/runtime-bun.d.ts +5 -0
- package/_shims/auto/runtime-bun.d.ts.map +1 -0
- package/{internal/utils.js → _shims/auto/runtime-bun.js} +5 -8
- package/_shims/auto/runtime-bun.js.map +1 -0
- package/_shims/auto/runtime-bun.mjs +2 -0
- package/_shims/auto/runtime-bun.mjs.map +1 -0
- package/_shims/auto/runtime-node.d.ts +5 -0
- package/_shims/auto/runtime-node.d.ts.map +1 -0
- package/_shims/auto/runtime-node.js +21 -0
- package/_shims/auto/runtime-node.js.map +1 -0
- package/_shims/auto/runtime-node.mjs +2 -0
- package/_shims/auto/runtime-node.mjs.map +1 -0
- package/_shims/auto/runtime.d.ts +5 -0
- package/_shims/auto/runtime.d.ts.map +1 -0
- package/_shims/auto/runtime.js +21 -0
- package/_shims/auto/runtime.js.map +1 -0
- package/_shims/auto/runtime.mjs +2 -0
- package/_shims/auto/runtime.mjs.map +1 -0
- package/_shims/auto/types-node.d.ts +5 -0
- package/_shims/auto/types-node.d.ts.map +1 -0
- package/_shims/auto/types-node.js +21 -0
- package/_shims/auto/types-node.js.map +1 -0
- package/_shims/auto/types-node.mjs +2 -0
- package/_shims/auto/types-node.mjs.map +1 -0
- package/_shims/auto/types.d.ts +101 -0
- package/_shims/auto/types.js +3 -0
- package/_shims/auto/types.mjs +3 -0
- package/_shims/bun-runtime.d.ts +6 -0
- package/_shims/bun-runtime.d.ts.map +1 -0
- package/_shims/bun-runtime.js +14 -0
- package/_shims/bun-runtime.js.map +1 -0
- package/_shims/bun-runtime.mjs +10 -0
- package/_shims/bun-runtime.mjs.map +1 -0
- package/_shims/index.d.ts +81 -0
- package/_shims/index.js +13 -0
- package/_shims/index.mjs +7 -0
- package/_shims/manual-types.d.ts +12 -0
- package/_shims/manual-types.js +3 -0
- package/_shims/manual-types.mjs +3 -0
- package/_shims/node-runtime.d.ts +3 -0
- package/_shims/node-runtime.d.ts.map +1 -0
- package/_shims/node-runtime.js +89 -0
- package/_shims/node-runtime.js.map +1 -0
- package/_shims/node-runtime.mjs +56 -0
- package/_shims/node-runtime.mjs.map +1 -0
- package/_shims/node-types.d.ts +42 -0
- package/_shims/node-types.js +3 -0
- package/_shims/node-types.mjs +3 -0
- package/_shims/registry.d.ts +37 -0
- package/_shims/registry.d.ts.map +1 -0
- package/_shims/registry.js +41 -0
- package/_shims/registry.js.map +1 -0
- package/_shims/registry.mjs +37 -0
- package/_shims/registry.mjs.map +1 -0
- package/_shims/web-runtime.d.ts +5 -0
- package/_shims/web-runtime.d.ts.map +1 -0
- package/_shims/web-runtime.js +78 -0
- package/_shims/web-runtime.js.map +1 -0
- package/_shims/web-runtime.mjs +71 -0
- package/_shims/web-runtime.mjs.map +1 -0
- package/_shims/web-types.d.ts +83 -0
- package/_shims/web-types.js +3 -0
- package/_shims/web-types.mjs +3 -0
- package/core.d.ts +248 -0
- package/core.d.ts.map +1 -0
- package/core.js +929 -0
- package/core.js.map +1 -0
- package/core.mjs +897 -0
- package/core.mjs.map +1 -0
- package/error.d.ts +2 -2
- package/error.d.ts.map +1 -1
- package/error.js +3 -3
- package/error.js.map +1 -1
- package/error.mjs +2 -2
- package/error.mjs.map +1 -1
- package/index.d.mts +150 -5
- package/index.d.ts +150 -5
- package/index.d.ts.map +1 -1
- package/index.js +159 -18
- package/index.js.map +1 -1
- package/index.mjs +133 -5
- package/index.mjs.map +1 -1
- package/internal/decoders/jsonl.d.ts +1 -0
- package/internal/decoders/jsonl.d.ts.map +1 -1
- package/internal/decoders/jsonl.js +2 -2
- package/internal/decoders/jsonl.js.map +1 -1
- package/internal/decoders/jsonl.mjs +2 -2
- package/internal/decoders/jsonl.mjs.map +1 -1
- package/internal/decoders/line.d.ts +0 -1
- package/internal/decoders/line.d.ts.map +1 -1
- package/internal/stream-utils.d.ts +8 -0
- package/internal/stream-utils.d.ts.map +1 -0
- package/internal/stream-utils.js +39 -0
- package/internal/stream-utils.js.map +1 -0
- package/internal/stream-utils.mjs +35 -0
- package/internal/stream-utils.mjs.map +1 -0
- package/lib/{MessageStream.d.mts → BetaMessageStream.d.ts} +39 -22
- package/lib/BetaMessageStream.d.ts.map +1 -0
- package/lib/BetaMessageStream.js +492 -0
- package/lib/BetaMessageStream.js.map +1 -0
- package/lib/BetaMessageStream.mjs +488 -0
- package/lib/BetaMessageStream.mjs.map +1 -0
- package/lib/MessageStream.d.ts +25 -8
- package/lib/MessageStream.d.ts.map +1 -1
- package/lib/MessageStream.js +42 -9
- package/lib/MessageStream.js.map +1 -1
- package/lib/MessageStream.mjs +42 -9
- package/lib/MessageStream.mjs.map +1 -1
- package/package.json +64 -120
- package/pagination.d.ts +4 -41
- package/pagination.d.ts.map +1 -1
- package/pagination.js +21 -95
- package/pagination.js.map +1 -1
- package/pagination.mjs +19 -91
- package/pagination.mjs.map +1 -1
- package/resource.d.ts +3 -3
- package/resource.d.ts.map +1 -1
- package/resource.js.map +1 -1
- package/resource.mjs.map +1 -1
- package/resources/beta/beta.d.ts +3 -3
- package/resources/beta/beta.d.ts.map +1 -1
- package/resources/beta/beta.js +1 -0
- package/resources/beta/beta.js.map +1 -1
- package/resources/beta/beta.mjs +2 -1
- package/resources/beta/beta.mjs.map +1 -1
- package/resources/beta/index.d.ts +2 -2
- package/resources/beta/index.d.ts.map +1 -1
- package/resources/beta/index.js +4 -3
- package/resources/beta/index.js.map +1 -1
- package/resources/beta/index.mjs +1 -1
- package/resources/beta/index.mjs.map +1 -1
- package/resources/beta/messages/batches.d.ts +20 -14
- package/resources/beta/messages/batches.d.ts.map +1 -1
- package/resources/beta/messages/batches.js +36 -47
- package/resources/beta/messages/batches.js.map +1 -1
- package/resources/beta/messages/batches.mjs +34 -46
- package/resources/beta/messages/batches.mjs.map +1 -1
- package/resources/beta/messages/index.d.ts +2 -2
- package/resources/beta/messages/index.d.ts.map +1 -1
- package/resources/beta/messages/index.js +2 -1
- package/resources/beta/messages/index.js.map +1 -1
- package/resources/beta/messages/index.mjs +1 -1
- package/resources/beta/messages/index.mjs.map +1 -1
- package/resources/beta/messages/messages.d.ts +95 -10
- package/resources/beta/messages/messages.d.ts.map +1 -1
- package/resources/beta/messages/messages.js +21 -0
- package/resources/beta/messages/messages.js.map +1 -1
- package/resources/beta/messages/messages.mjs +22 -1
- package/resources/beta/messages/messages.mjs.map +1 -1
- package/resources/beta/models.d.ts +8 -7
- package/resources/beta/models.d.ts.map +1 -1
- package/resources/beta/models.js +12 -10
- package/resources/beta/models.js.map +1 -1
- package/resources/beta/models.mjs +10 -9
- package/resources/beta/models.mjs.map +1 -1
- package/resources/completions.d.ts +5 -5
- package/resources/completions.d.ts.map +1 -1
- package/resources/completions.js.map +1 -1
- package/resources/completions.mjs.map +1 -1
- package/resources/index.d.ts +2 -2
- package/resources/index.d.ts.map +1 -1
- package/resources/index.js +2 -1
- package/resources/index.js.map +1 -1
- package/resources/index.mjs +1 -1
- package/resources/index.mjs.map +1 -1
- package/resources/messages/batches.d.ts +16 -14
- package/resources/messages/batches.d.ts.map +1 -1
- package/resources/messages/batches.js +30 -18
- package/resources/messages/batches.js.map +1 -1
- package/resources/messages/batches.mjs +28 -17
- package/resources/messages/batches.mjs.map +1 -1
- package/resources/messages/index.d.ts +2 -2
- package/resources/messages/index.d.ts.map +1 -1
- package/resources/messages/index.js +2 -1
- package/resources/messages/index.js.map +1 -1
- package/resources/messages/index.mjs +1 -1
- package/resources/messages/index.mjs.map +1 -1
- package/resources/messages/messages.d.ts +90 -11
- package/resources/messages/messages.d.ts.map +1 -1
- package/resources/messages/messages.js +4 -0
- package/resources/messages/messages.js.map +1 -1
- package/resources/messages/messages.mjs +5 -1
- package/resources/messages/messages.mjs.map +1 -1
- package/resources/models.d.ts +8 -7
- package/resources/models.d.ts.map +1 -1
- package/resources/models.js +12 -10
- package/resources/models.js.map +1 -1
- package/resources/models.mjs +10 -9
- package/resources/models.mjs.map +1 -1
- package/shims/node.d.ts +30 -0
- package/shims/node.d.ts.map +1 -0
- package/shims/node.js +31 -0
- package/shims/node.js.map +1 -0
- package/shims/node.mjs +5 -0
- package/shims/node.mjs.map +1 -0
- package/shims/web.d.ts +26 -0
- package/shims/web.d.ts.map +1 -0
- package/shims/web.js +31 -0
- package/shims/web.js.map +1 -0
- package/shims/web.mjs +5 -0
- package/shims/web.mjs.map +1 -0
- package/src/_shims/MultipartBody.ts +9 -0
- package/src/_shims/README.md +46 -0
- package/src/_shims/auto/runtime-bun.ts +4 -0
- package/src/_shims/auto/runtime-node.ts +4 -0
- package/src/_shims/auto/runtime.ts +4 -0
- package/src/_shims/auto/types-node.ts +4 -0
- package/src/_shims/auto/types.d.ts +101 -0
- package/src/_shims/auto/types.js +3 -0
- package/src/_shims/auto/types.mjs +3 -0
- package/src/_shims/bun-runtime.ts +14 -0
- package/src/_shims/index.d.ts +81 -0
- package/src/_shims/index.js +13 -0
- package/src/_shims/index.mjs +7 -0
- package/src/_shims/manual-types.d.ts +12 -0
- package/src/_shims/manual-types.js +3 -0
- package/src/_shims/manual-types.mjs +3 -0
- package/src/_shims/node-runtime.ts +81 -0
- package/src/_shims/node-types.d.ts +42 -0
- package/src/_shims/node-types.js +3 -0
- package/src/_shims/node-types.mjs +3 -0
- package/src/_shims/registry.ts +67 -0
- package/src/_shims/web-runtime.ts +103 -0
- package/src/_shims/web-types.d.ts +83 -0
- package/src/_shims/web-types.js +3 -0
- package/src/_shims/web-types.mjs +3 -0
- package/src/core.ts +1242 -0
- package/src/error.ts +3 -3
- package/src/index.ts +432 -12
- package/src/internal/decoders/jsonl.ts +5 -4
- package/src/internal/decoders/line.ts +1 -1
- package/src/internal/stream-utils.ts +32 -0
- package/src/lib/BetaMessageStream.ts +599 -0
- package/src/lib/MessageStream.ts +58 -20
- package/src/pagination.ts +18 -122
- package/src/resource.ts +3 -3
- package/src/resources/beta/beta.ts +33 -6
- package/src/resources/beta/index.ts +16 -3
- package/src/resources/beta/messages/batches.ts +94 -42
- package/src/resources/beta/messages/index.ts +17 -3
- package/src/resources/beta/messages/messages.ts +202 -18
- package/src/resources/beta/models.ts +22 -12
- package/src/resources/completions.ts +13 -10
- package/src/resources/index.ts +18 -5
- package/src/resources/messages/batches.ts +46 -28
- package/src/resources/messages/index.ts +16 -3
- package/src/resources/messages/messages.ts +174 -22
- package/src/resources/models.ts +19 -12
- package/src/shims/node.ts +50 -0
- package/src/shims/web.ts +50 -0
- package/src/streaming.ts +15 -42
- package/src/tsconfig.json +1 -1
- package/src/uploads.ts +54 -57
- package/src/version.ts +1 -1
- package/streaming.d.ts +1 -8
- package/streaming.d.ts.map +1 -1
- package/streaming.js +8 -41
- package/streaming.js.map +1 -1
- package/streaming.mjs +7 -39
- package/streaming.mjs.map +1 -1
- package/uploads.d.ts +19 -23
- package/uploads.d.ts.map +1 -1
- package/uploads.js +27 -33
- package/uploads.js.map +1 -1
- package/uploads.mjs +21 -29
- package/uploads.mjs.map +1 -1
- package/version.d.ts +1 -1
- package/version.d.ts.map +1 -1
- package/version.js +1 -1
- package/version.js.map +1 -1
- package/version.mjs +1 -1
- package/version.mjs.map +1 -1
- package/_vendor/partial-json-parser/parser.d.mts +0 -3
- package/_vendor/partial-json-parser/parser.d.mts.map +0 -1
- package/api-promise.d.mts +0 -48
- package/api-promise.d.mts.map +0 -1
- package/api-promise.d.ts +0 -48
- package/api-promise.d.ts.map +0 -1
- package/api-promise.js +0 -71
- package/api-promise.js.map +0 -1
- package/api-promise.mjs +0 -67
- package/api-promise.mjs.map +0 -1
- package/client.d.mts +0 -212
- package/client.d.mts.map +0 -1
- package/client.d.ts +0 -212
- package/client.d.ts.map +0 -1
- package/client.js +0 -505
- package/client.js.map +0 -1
- package/client.mjs +0 -477
- package/client.mjs.map +0 -1
- package/error.d.mts +0 -48
- package/error.d.mts.map +0 -1
- package/index.d.mts.map +0 -1
- package/internal/builtin-types.d.mts +0 -65
- package/internal/builtin-types.d.mts.map +0 -1
- package/internal/builtin-types.d.ts +0 -65
- package/internal/builtin-types.d.ts.map +0 -1
- package/internal/builtin-types.js +0 -4
- package/internal/builtin-types.js.map +0 -1
- package/internal/builtin-types.mjs +0 -3
- package/internal/builtin-types.mjs.map +0 -1
- package/internal/decoders/jsonl.d.mts +0 -11
- package/internal/decoders/jsonl.d.mts.map +0 -1
- package/internal/decoders/line.d.mts +0 -21
- package/internal/decoders/line.d.mts.map +0 -1
- package/internal/detect-platform.d.mts +0 -15
- package/internal/detect-platform.d.mts.map +0 -1
- package/internal/detect-platform.d.ts +0 -15
- package/internal/detect-platform.d.ts.map +0 -1
- package/internal/detect-platform.js +0 -162
- package/internal/detect-platform.js.map +0 -1
- package/internal/detect-platform.mjs +0 -157
- package/internal/detect-platform.mjs.map +0 -1
- package/internal/errors.d.mts +0 -3
- package/internal/errors.d.mts.map +0 -1
- package/internal/errors.d.ts +0 -3
- package/internal/errors.d.ts.map +0 -1
- package/internal/errors.js +0 -22
- package/internal/errors.js.map +0 -1
- package/internal/errors.mjs +0 -17
- package/internal/errors.mjs.map +0 -1
- package/internal/headers.d.mts +0 -21
- package/internal/headers.d.mts.map +0 -1
- package/internal/headers.d.ts +0 -21
- package/internal/headers.d.ts.map +0 -1
- package/internal/headers.js +0 -77
- package/internal/headers.js.map +0 -1
- package/internal/headers.mjs +0 -72
- package/internal/headers.mjs.map +0 -1
- package/internal/parse.d.mts +0 -14
- package/internal/parse.d.mts.map +0 -1
- package/internal/parse.d.ts +0 -14
- package/internal/parse.d.ts.map +0 -1
- package/internal/parse.js +0 -48
- package/internal/parse.js.map +0 -1
- package/internal/parse.mjs +0 -43
- package/internal/parse.mjs.map +0 -1
- package/internal/polyfill/crypto.node.d.ts +0 -10
- package/internal/polyfill/crypto.node.js +0 -11
- package/internal/polyfill/crypto.node.mjs +0 -2
- package/internal/polyfill/file.node.d.ts +0 -9
- package/internal/polyfill/file.node.js +0 -17
- package/internal/polyfill/file.node.mjs +0 -9
- package/internal/request-options.d.mts +0 -37
- package/internal/request-options.d.mts.map +0 -1
- package/internal/request-options.d.ts +0 -37
- package/internal/request-options.d.ts.map +0 -1
- package/internal/request-options.js +0 -40
- package/internal/request-options.js.map +0 -1
- package/internal/request-options.mjs +0 -35
- package/internal/request-options.mjs.map +0 -1
- package/internal/shim-types.d.mts +0 -28
- package/internal/shim-types.d.ts +0 -28
- package/internal/shims.d.mts +0 -65
- package/internal/shims.d.mts.map +0 -1
- package/internal/shims.d.ts +0 -65
- package/internal/shims.d.ts.map +0 -1
- package/internal/shims.js +0 -66
- package/internal/shims.js.map +0 -1
- package/internal/shims.mjs +0 -58
- package/internal/shims.mjs.map +0 -1
- package/internal/types.d.mts +0 -6
- package/internal/types.d.mts.map +0 -1
- package/internal/types.d.ts +0 -6
- package/internal/types.d.ts.map +0 -1
- package/internal/types.js +0 -4
- package/internal/types.js.map +0 -1
- package/internal/types.mjs +0 -3
- package/internal/types.mjs.map +0 -1
- package/internal/utils/base64.d.mts +0 -3
- package/internal/utils/base64.d.mts.map +0 -1
- package/internal/utils/base64.d.ts +0 -3
- package/internal/utils/base64.d.ts.map +0 -1
- package/internal/utils/base64.js +0 -33
- package/internal/utils/base64.js.map +0 -1
- package/internal/utils/base64.mjs +0 -28
- package/internal/utils/base64.mjs.map +0 -1
- package/internal/utils/env.d.mts +0 -9
- package/internal/utils/env.d.mts.map +0 -1
- package/internal/utils/env.d.ts +0 -9
- package/internal/utils/env.d.ts.map +0 -1
- package/internal/utils/env.js +0 -22
- package/internal/utils/env.js.map +0 -1
- package/internal/utils/env.mjs +0 -18
- package/internal/utils/env.mjs.map +0 -1
- package/internal/utils/log.d.mts +0 -2
- package/internal/utils/log.d.mts.map +0 -1
- package/internal/utils/log.d.ts +0 -2
- package/internal/utils/log.d.ts.map +0 -1
- package/internal/utils/log.js +0 -12
- package/internal/utils/log.js.map +0 -1
- package/internal/utils/log.mjs +0 -8
- package/internal/utils/log.mjs.map +0 -1
- package/internal/utils/sleep.d.mts +0 -2
- package/internal/utils/sleep.d.mts.map +0 -1
- package/internal/utils/sleep.d.ts +0 -2
- package/internal/utils/sleep.d.ts.map +0 -1
- package/internal/utils/sleep.js +0 -7
- package/internal/utils/sleep.js.map +0 -1
- package/internal/utils/sleep.mjs +0 -3
- package/internal/utils/sleep.mjs.map +0 -1
- package/internal/utils/uuid.d.mts +0 -5
- package/internal/utils/uuid.d.mts.map +0 -1
- package/internal/utils/uuid.d.ts +0 -5
- package/internal/utils/uuid.d.ts.map +0 -1
- package/internal/utils/uuid.js +0 -15
- package/internal/utils/uuid.js.map +0 -1
- package/internal/utils/uuid.mjs +0 -11
- package/internal/utils/uuid.mjs.map +0 -1
- package/internal/utils/values.d.mts +0 -15
- package/internal/utils/values.d.mts.map +0 -1
- package/internal/utils/values.d.ts +0 -15
- package/internal/utils/values.d.ts.map +0 -1
- package/internal/utils/values.js +0 -100
- package/internal/utils/values.js.map +0 -1
- package/internal/utils/values.mjs +0 -84
- package/internal/utils/values.mjs.map +0 -1
- package/internal/utils.d.mts +0 -7
- package/internal/utils.d.mts.map +0 -1
- package/internal/utils.d.ts +0 -7
- package/internal/utils.d.ts.map +0 -1
- package/internal/utils.js.map +0 -1
- package/internal/utils.mjs +0 -8
- package/internal/utils.mjs.map +0 -1
- package/lib/MessageStream.d.mts.map +0 -1
- package/pagination.d.mts +0 -63
- package/pagination.d.mts.map +0 -1
- package/resource.d.mts +0 -6
- package/resource.d.mts.map +0 -1
- package/resources/beta/beta.d.mts +0 -57
- package/resources/beta/beta.d.mts.map +0 -1
- package/resources/beta/index.d.mts +0 -4
- package/resources/beta/index.d.mts.map +0 -1
- package/resources/beta/messages/batches.d.mts +0 -261
- package/resources/beta/messages/batches.d.mts.map +0 -1
- package/resources/beta/messages/index.d.mts +0 -3
- package/resources/beta/messages/index.d.mts.map +0 -1
- package/resources/beta/messages/messages.d.mts +0 -879
- package/resources/beta/messages/messages.d.mts.map +0 -1
- package/resources/beta/models.d.mts +0 -48
- package/resources/beta/models.d.mts.map +0 -1
- package/resources/completions.d.mts +0 -166
- package/resources/completions.d.mts.map +0 -1
- package/resources/index.d.mts +0 -6
- package/resources/index.d.mts.map +0 -1
- package/resources/messages/batches.d.mts +0 -229
- package/resources/messages/batches.d.mts.map +0 -1
- package/resources/messages/index.d.mts +0 -3
- package/resources/messages/index.d.mts.map +0 -1
- package/resources/messages/messages.d.mts +0 -859
- package/resources/messages/messages.d.mts.map +0 -1
- package/resources/models.d.mts +0 -48
- package/resources/models.d.mts.map +0 -1
- package/resources/shared.d.mts +0 -42
- package/resources/shared.d.mts.map +0 -1
- package/resources/top-level.d.mts +0 -2
- package/resources/top-level.d.mts.map +0 -1
- package/src/api-promise.ts +0 -93
- package/src/client.ts +0 -863
- package/src/internal/builtin-types.ts +0 -79
- package/src/internal/detect-platform.ts +0 -192
- package/src/internal/errors.ts +0 -18
- package/src/internal/headers.ts +0 -96
- package/src/internal/parse.ts +0 -70
- package/src/internal/polyfill/crypto.node.d.ts +0 -10
- package/src/internal/polyfill/crypto.node.js +0 -11
- package/src/internal/polyfill/crypto.node.mjs +0 -2
- package/src/internal/polyfill/file.node.d.ts +0 -9
- package/src/internal/polyfill/file.node.js +0 -17
- package/src/internal/polyfill/file.node.mjs +0 -9
- package/src/internal/request-options.ts +0 -71
- package/src/internal/shim-types.d.ts +0 -28
- package/src/internal/shims.ts +0 -124
- package/src/internal/types.ts +0 -6
- package/src/internal/utils/base64.ts +0 -40
- package/src/internal/utils/env.ts +0 -20
- package/src/internal/utils/log.ts +0 -9
- package/src/internal/utils/sleep.ts +0 -3
- package/src/internal/utils/uuid.ts +0 -13
- package/src/internal/utils/values.ts +0 -94
- package/src/internal/utils.ts +0 -8
- package/streaming.d.mts +0 -41
- package/streaming.d.mts.map +0 -1
- package/uploads.d.mts +0 -79
- package/uploads.d.mts.map +0 -1
- package/version.d.mts +0 -2
- package/version.d.mts.map +0 -1
package/src/resources/models.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
2
|
|
|
3
|
-
import { APIResource } from
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
6
|
-
import {
|
|
3
|
+
import { APIResource } from "../resource.js";
|
|
4
|
+
import { isRequestOptions } from "../core.js";
|
|
5
|
+
import * as Core from "../core.js";
|
|
6
|
+
import { Page, type PageParams } from "../pagination.js";
|
|
7
7
|
|
|
8
8
|
export class Models extends APIResource {
|
|
9
9
|
/**
|
|
@@ -12,8 +12,8 @@ export class Models extends APIResource {
|
|
|
12
12
|
* The Models API response can be used to determine information about a specific
|
|
13
13
|
* model or resolve a model alias to a model ID.
|
|
14
14
|
*/
|
|
15
|
-
retrieve(
|
|
16
|
-
return this._client.get(`/v1/models/${
|
|
15
|
+
retrieve(modelId: string, options?: Core.RequestOptions): Core.APIPromise<ModelInfo> {
|
|
16
|
+
return this._client.get(`/v1/models/${modelId}`, options);
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
/**
|
|
@@ -22,15 +22,20 @@ export class Models extends APIResource {
|
|
|
22
22
|
* The Models API response can be used to determine which models are available for
|
|
23
23
|
* use in the API. More recently released models are listed first.
|
|
24
24
|
*/
|
|
25
|
+
list(query?: ModelListParams, options?: Core.RequestOptions): Core.PagePromise<ModelInfosPage, ModelInfo>;
|
|
26
|
+
list(options?: Core.RequestOptions): Core.PagePromise<ModelInfosPage, ModelInfo>;
|
|
25
27
|
list(
|
|
26
|
-
query: ModelListParams |
|
|
27
|
-
options?: RequestOptions,
|
|
28
|
-
): PagePromise<ModelInfosPage, ModelInfo> {
|
|
29
|
-
|
|
28
|
+
query: ModelListParams | Core.RequestOptions = {},
|
|
29
|
+
options?: Core.RequestOptions,
|
|
30
|
+
): Core.PagePromise<ModelInfosPage, ModelInfo> {
|
|
31
|
+
if (isRequestOptions(query)) {
|
|
32
|
+
return this.list({}, query);
|
|
33
|
+
}
|
|
34
|
+
return this._client.getAPIList('/v1/models', ModelInfosPage, { query, ...options });
|
|
30
35
|
}
|
|
31
36
|
}
|
|
32
37
|
|
|
33
|
-
export
|
|
38
|
+
export class ModelInfosPage extends Page<ModelInfo> {}
|
|
34
39
|
|
|
35
40
|
export interface ModelInfo {
|
|
36
41
|
/**
|
|
@@ -59,10 +64,12 @@ export interface ModelInfo {
|
|
|
59
64
|
|
|
60
65
|
export interface ModelListParams extends PageParams {}
|
|
61
66
|
|
|
67
|
+
Models.ModelInfosPage = ModelInfosPage;
|
|
68
|
+
|
|
62
69
|
export declare namespace Models {
|
|
63
70
|
export {
|
|
64
71
|
type ModelInfo as ModelInfo,
|
|
65
|
-
|
|
72
|
+
ModelInfosPage as ModelInfosPage,
|
|
66
73
|
type ModelListParams as ModelListParams,
|
|
67
74
|
};
|
|
68
75
|
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
// @ts-ignore
|
|
2
|
+
import * as types from "../_shims/node-types.js";
|
|
3
|
+
import { setShims } from "../_shims/registry.js";
|
|
4
|
+
import { getRuntime } from "../_shims/node-runtime.js";
|
|
5
|
+
setShims(getRuntime());
|
|
6
|
+
|
|
7
|
+
declare module '../_shims/manual-types' {
|
|
8
|
+
export namespace manual {
|
|
9
|
+
// @ts-ignore
|
|
10
|
+
export type Agent = types.Agent;
|
|
11
|
+
// @ts-ignore
|
|
12
|
+
export import fetch = types.fetch;
|
|
13
|
+
// @ts-ignore
|
|
14
|
+
export type Request = types.Request;
|
|
15
|
+
// @ts-ignore
|
|
16
|
+
export type RequestInfo = types.RequestInfo;
|
|
17
|
+
// @ts-ignore
|
|
18
|
+
export type RequestInit = types.RequestInit;
|
|
19
|
+
// @ts-ignore
|
|
20
|
+
export type Response = types.Response;
|
|
21
|
+
// @ts-ignore
|
|
22
|
+
export type ResponseInit = types.ResponseInit;
|
|
23
|
+
// @ts-ignore
|
|
24
|
+
export type ResponseType = types.ResponseType;
|
|
25
|
+
// @ts-ignore
|
|
26
|
+
export type BodyInit = types.BodyInit;
|
|
27
|
+
// @ts-ignore
|
|
28
|
+
export type Headers = types.Headers;
|
|
29
|
+
// @ts-ignore
|
|
30
|
+
export type HeadersInit = types.HeadersInit;
|
|
31
|
+
// @ts-ignore
|
|
32
|
+
export type BlobPropertyBag = types.BlobPropertyBag;
|
|
33
|
+
// @ts-ignore
|
|
34
|
+
export type FilePropertyBag = types.FilePropertyBag;
|
|
35
|
+
// @ts-ignore
|
|
36
|
+
export type FileFromPathOptions = types.FileFromPathOptions;
|
|
37
|
+
// @ts-ignore
|
|
38
|
+
export import FormData = types.FormData;
|
|
39
|
+
// @ts-ignore
|
|
40
|
+
export import File = types.File;
|
|
41
|
+
// @ts-ignore
|
|
42
|
+
export import Blob = types.Blob;
|
|
43
|
+
// @ts-ignore
|
|
44
|
+
export type Readable = types.Readable;
|
|
45
|
+
// @ts-ignore
|
|
46
|
+
export type FsReadStream = types.FsReadStream;
|
|
47
|
+
// @ts-ignore
|
|
48
|
+
export import ReadableStream = types.ReadableStream;
|
|
49
|
+
}
|
|
50
|
+
}
|
package/src/shims/web.ts
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
// @ts-ignore
|
|
2
|
+
import * as types from "../_shims/web-types.js";
|
|
3
|
+
import { setShims } from "../_shims/registry.js";
|
|
4
|
+
import { getRuntime } from "../_shims/web-runtime.js";
|
|
5
|
+
setShims(getRuntime({ manuallyImported: true }));
|
|
6
|
+
|
|
7
|
+
declare module '../_shims/manual-types' {
|
|
8
|
+
export namespace manual {
|
|
9
|
+
// @ts-ignore
|
|
10
|
+
export type Agent = types.Agent;
|
|
11
|
+
// @ts-ignore
|
|
12
|
+
export import fetch = types.fetch;
|
|
13
|
+
// @ts-ignore
|
|
14
|
+
export type Request = types.Request;
|
|
15
|
+
// @ts-ignore
|
|
16
|
+
export type RequestInfo = types.RequestInfo;
|
|
17
|
+
// @ts-ignore
|
|
18
|
+
export type RequestInit = types.RequestInit;
|
|
19
|
+
// @ts-ignore
|
|
20
|
+
export type Response = types.Response;
|
|
21
|
+
// @ts-ignore
|
|
22
|
+
export type ResponseInit = types.ResponseInit;
|
|
23
|
+
// @ts-ignore
|
|
24
|
+
export type ResponseType = types.ResponseType;
|
|
25
|
+
// @ts-ignore
|
|
26
|
+
export type BodyInit = types.BodyInit;
|
|
27
|
+
// @ts-ignore
|
|
28
|
+
export type Headers = types.Headers;
|
|
29
|
+
// @ts-ignore
|
|
30
|
+
export type HeadersInit = types.HeadersInit;
|
|
31
|
+
// @ts-ignore
|
|
32
|
+
export type BlobPropertyBag = types.BlobPropertyBag;
|
|
33
|
+
// @ts-ignore
|
|
34
|
+
export type FilePropertyBag = types.FilePropertyBag;
|
|
35
|
+
// @ts-ignore
|
|
36
|
+
export type FileFromPathOptions = types.FileFromPathOptions;
|
|
37
|
+
// @ts-ignore
|
|
38
|
+
export import FormData = types.FormData;
|
|
39
|
+
// @ts-ignore
|
|
40
|
+
export import File = types.File;
|
|
41
|
+
// @ts-ignore
|
|
42
|
+
export import Blob = types.Blob;
|
|
43
|
+
// @ts-ignore
|
|
44
|
+
export type Readable = types.Readable;
|
|
45
|
+
// @ts-ignore
|
|
46
|
+
export type FsReadStream = types.FsReadStream;
|
|
47
|
+
// @ts-ignore
|
|
48
|
+
export import ReadableStream = types.ReadableStream;
|
|
49
|
+
}
|
|
50
|
+
}
|
package/src/streaming.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { ReadableStream, type Response } from "./_shims/index.js";
|
|
2
|
+
import { AnthropicError } from "./error.js";
|
|
3
|
+
import { LineDecoder } from "./internal/decoders/line.js";
|
|
4
|
+
import { ReadableStreamToAsyncIterable } from "./internal/stream-utils.js";
|
|
5
5
|
|
|
6
|
-
import {
|
|
6
|
+
import { createResponseHeaders } from "./core.js";
|
|
7
|
+
import { APIError } from "./error.js";
|
|
7
8
|
|
|
8
9
|
type Bytes = string | ArrayBuffer | Uint8Array | Buffer | null | undefined;
|
|
9
10
|
|
|
@@ -66,7 +67,12 @@ export class Stream<Item> implements AsyncIterable<Item> {
|
|
|
66
67
|
}
|
|
67
68
|
|
|
68
69
|
if (sse.event === 'error') {
|
|
69
|
-
throw APIError.generate(
|
|
70
|
+
throw APIError.generate(
|
|
71
|
+
undefined,
|
|
72
|
+
`SSE Error: ${sse.data}`,
|
|
73
|
+
sse.data,
|
|
74
|
+
createResponseHeaders(response.headers),
|
|
75
|
+
);
|
|
70
76
|
}
|
|
71
77
|
}
|
|
72
78
|
done = true;
|
|
@@ -93,7 +99,7 @@ export class Stream<Item> implements AsyncIterable<Item> {
|
|
|
93
99
|
async function* iterLines(): AsyncGenerator<string, void, unknown> {
|
|
94
100
|
const lineDecoder = new LineDecoder();
|
|
95
101
|
|
|
96
|
-
const iter =
|
|
102
|
+
const iter = ReadableStreamToAsyncIterable<Bytes>(readableStream);
|
|
97
103
|
for await (const chunk of iter) {
|
|
98
104
|
for (const line of lineDecoder.decode(chunk)) {
|
|
99
105
|
yield line;
|
|
@@ -172,7 +178,7 @@ export class Stream<Item> implements AsyncIterable<Item> {
|
|
|
172
178
|
let iter: AsyncIterator<Item>;
|
|
173
179
|
const encoder = new TextEncoder();
|
|
174
180
|
|
|
175
|
-
return
|
|
181
|
+
return new ReadableStream({
|
|
176
182
|
async start() {
|
|
177
183
|
iter = self[Symbol.asyncIterator]();
|
|
178
184
|
},
|
|
@@ -207,7 +213,7 @@ export async function* _iterSSEMessages(
|
|
|
207
213
|
const sseDecoder = new SSEDecoder();
|
|
208
214
|
const lineDecoder = new LineDecoder();
|
|
209
215
|
|
|
210
|
-
const iter =
|
|
216
|
+
const iter = ReadableStreamToAsyncIterable<Bytes>(response.body);
|
|
211
217
|
for await (const sseChunk of iterSSEChunks(iter)) {
|
|
212
218
|
for (const line of lineDecoder.decode(sseChunk)) {
|
|
213
219
|
const sse = sseDecoder.decode(line);
|
|
@@ -360,36 +366,3 @@ function partition(str: string, delimiter: string): [string, string, string] {
|
|
|
360
366
|
|
|
361
367
|
return [str, '', ''];
|
|
362
368
|
}
|
|
363
|
-
|
|
364
|
-
/**
|
|
365
|
-
* Most browsers don't yet have async iterable support for ReadableStream,
|
|
366
|
-
* and Node has a very different way of reading bytes from its "ReadableStream".
|
|
367
|
-
*
|
|
368
|
-
* This polyfill was pulled from https://github.com/MattiasBuelens/web-streams-polyfill/pull/122#issuecomment-1627354490
|
|
369
|
-
*/
|
|
370
|
-
export function readableStreamAsyncIterable<T>(stream: any): AsyncIterableIterator<T> {
|
|
371
|
-
if (stream[Symbol.asyncIterator]) return stream;
|
|
372
|
-
|
|
373
|
-
const reader = stream.getReader();
|
|
374
|
-
return {
|
|
375
|
-
async next() {
|
|
376
|
-
try {
|
|
377
|
-
const result = await reader.read();
|
|
378
|
-
if (result?.done) reader.releaseLock(); // release lock when stream becomes closed
|
|
379
|
-
return result;
|
|
380
|
-
} catch (e) {
|
|
381
|
-
reader.releaseLock(); // release lock when stream becomes errored
|
|
382
|
-
throw e;
|
|
383
|
-
}
|
|
384
|
-
},
|
|
385
|
-
async return() {
|
|
386
|
-
const cancelPromise = reader.cancel();
|
|
387
|
-
reader.releaseLock();
|
|
388
|
-
await cancelPromise;
|
|
389
|
-
return { done: true, value: undefined };
|
|
390
|
-
},
|
|
391
|
-
[Symbol.asyncIterator]() {
|
|
392
|
-
return this;
|
|
393
|
-
},
|
|
394
|
-
};
|
|
395
|
-
}
|
package/src/tsconfig.json
CHANGED
package/src/uploads.ts
CHANGED
|
@@ -1,7 +1,15 @@
|
|
|
1
|
-
import { type RequestOptions } from
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { type RequestOptions } from "./core.js";
|
|
2
|
+
import {
|
|
3
|
+
FormData,
|
|
4
|
+
File,
|
|
5
|
+
type Blob,
|
|
6
|
+
type FilePropertyBag,
|
|
7
|
+
getMultipartRequestOptions,
|
|
8
|
+
type FsReadStream,
|
|
9
|
+
isFsReadStream,
|
|
10
|
+
} from "./_shims/index.js";
|
|
11
|
+
import { MultipartBody } from "./_shims/MultipartBody.js";
|
|
12
|
+
export { fileFromPath } from "./_shims/index.js";
|
|
5
13
|
|
|
6
14
|
type BlobLikePart = string | ArrayBuffer | ArrayBufferView | BlobLike | Uint8Array | DataView;
|
|
7
15
|
export type BlobPart = string | ArrayBuffer | ArrayBufferView | Blob | Uint8Array | DataView;
|
|
@@ -15,10 +23,10 @@ export type BlobPart = string | ArrayBuffer | ArrayBufferView | Blob | Uint8Arra
|
|
|
15
23
|
* For convenience, you can also pass a fetch Response, or in Node,
|
|
16
24
|
* the result of fs.createReadStream().
|
|
17
25
|
*/
|
|
18
|
-
export type Uploadable = FileLike | ResponseLike |
|
|
26
|
+
export type Uploadable = FileLike | ResponseLike | FsReadStream;
|
|
19
27
|
|
|
20
28
|
/**
|
|
21
|
-
* Intended to match web.Blob, node.Blob,
|
|
29
|
+
* Intended to match web.Blob, node.Blob, node-fetch.Blob, etc.
|
|
22
30
|
*/
|
|
23
31
|
export interface BlobLike {
|
|
24
32
|
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/size) */
|
|
@@ -29,22 +37,11 @@ export interface BlobLike {
|
|
|
29
37
|
text(): Promise<string>;
|
|
30
38
|
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/slice) */
|
|
31
39
|
slice(start?: number, end?: number): BlobLike;
|
|
40
|
+
// unfortunately @types/node-fetch@^2.6.4 doesn't type the arrayBuffer method
|
|
32
41
|
}
|
|
33
42
|
|
|
34
43
|
/**
|
|
35
|
-
*
|
|
36
|
-
*/
|
|
37
|
-
export const isBlobLike = (value: any): value is BlobLike & { arrayBuffer(): Promise<ArrayBuffer> } =>
|
|
38
|
-
value != null &&
|
|
39
|
-
typeof value === 'object' &&
|
|
40
|
-
typeof value.size === 'number' &&
|
|
41
|
-
typeof value.type === 'string' &&
|
|
42
|
-
typeof value.text === 'function' &&
|
|
43
|
-
typeof value.slice === 'function' &&
|
|
44
|
-
typeof value.arrayBuffer === 'function';
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* Intended to match web.File, node.File, undici.File, etc.
|
|
44
|
+
* Intended to match web.File, node.File, node-fetch.File, etc.
|
|
48
45
|
*/
|
|
49
46
|
export interface FileLike extends BlobLike {
|
|
50
47
|
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/lastModified) */
|
|
@@ -52,20 +49,9 @@ export interface FileLike extends BlobLike {
|
|
|
52
49
|
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/name) */
|
|
53
50
|
readonly name: string;
|
|
54
51
|
}
|
|
55
|
-
declare var FileClass: {
|
|
56
|
-
prototype: FileLike;
|
|
57
|
-
new (fileBits: BlobPart[], fileName: string, options?: FilePropertyBag): FileLike;
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
export const isFileLike = (value: any): value is FileLike =>
|
|
61
|
-
value != null &&
|
|
62
|
-
typeof value === 'object' &&
|
|
63
|
-
typeof value.name === 'string' &&
|
|
64
|
-
typeof value.lastModified === 'number' &&
|
|
65
|
-
isBlobLike(value);
|
|
66
52
|
|
|
67
53
|
/**
|
|
68
|
-
* Intended to match web.Response, node.Response,
|
|
54
|
+
* Intended to match web.Response, node.Response, node-fetch.Response, etc.
|
|
69
55
|
*/
|
|
70
56
|
export interface ResponseLike {
|
|
71
57
|
url: string;
|
|
@@ -78,25 +64,31 @@ export const isResponseLike = (value: any): value is ResponseLike =>
|
|
|
78
64
|
typeof value.url === 'string' &&
|
|
79
65
|
typeof value.blob === 'function';
|
|
80
66
|
|
|
81
|
-
export const
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
67
|
+
export const isFileLike = (value: any): value is FileLike =>
|
|
68
|
+
value != null &&
|
|
69
|
+
typeof value === 'object' &&
|
|
70
|
+
typeof value.name === 'string' &&
|
|
71
|
+
typeof value.lastModified === 'number' &&
|
|
72
|
+
isBlobLike(value);
|
|
86
73
|
|
|
87
74
|
/**
|
|
88
|
-
*
|
|
89
|
-
*
|
|
90
|
-
* accidentally rely on a global `File` type in our annotations.
|
|
75
|
+
* The BlobLike type omits arrayBuffer() because @types/node-fetch@^2.6.4 lacks it; but this check
|
|
76
|
+
* adds the arrayBuffer() method type because it is available and used at runtime
|
|
91
77
|
*/
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
78
|
+
export const isBlobLike = (value: any): value is BlobLike & { arrayBuffer(): Promise<ArrayBuffer> } =>
|
|
79
|
+
value != null &&
|
|
80
|
+
typeof value === 'object' &&
|
|
81
|
+
typeof value.size === 'number' &&
|
|
82
|
+
typeof value.type === 'string' &&
|
|
83
|
+
typeof value.text === 'function' &&
|
|
84
|
+
typeof value.slice === 'function' &&
|
|
85
|
+
typeof value.arrayBuffer === 'function';
|
|
97
86
|
|
|
98
|
-
|
|
99
|
-
|
|
87
|
+
export const isUploadable = (value: any): value is Uploadable => {
|
|
88
|
+
return isFileLike(value) || isResponseLike(value) || isFsReadStream(value);
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
export type ToFileInput = Uploadable | Exclude<BlobLikePart, string> | AsyncIterable<BlobLikePart>;
|
|
100
92
|
|
|
101
93
|
/**
|
|
102
94
|
* Helper for creating a {@link File} to pass to an SDK upload method from a variety of different data formats
|
|
@@ -129,7 +121,7 @@ export async function toFile(
|
|
|
129
121
|
// in `new File` interpreting it as a string instead of binary data.
|
|
130
122
|
const data = isBlobLike(blob) ? [(await blob.arrayBuffer()) as any] : [blob];
|
|
131
123
|
|
|
132
|
-
return
|
|
124
|
+
return new File(data, name, options);
|
|
133
125
|
}
|
|
134
126
|
|
|
135
127
|
const bits = await getBytes(value);
|
|
@@ -143,7 +135,7 @@ export async function toFile(
|
|
|
143
135
|
}
|
|
144
136
|
}
|
|
145
137
|
|
|
146
|
-
return
|
|
138
|
+
return new File(bits, name, options);
|
|
147
139
|
}
|
|
148
140
|
|
|
149
141
|
async function getBytes(value: ToFileInput): Promise<Array<BlobPart>> {
|
|
@@ -195,22 +187,27 @@ const getStringFromMaybeBuffer = (x: string | Buffer | unknown): string | undefi
|
|
|
195
187
|
const isAsyncIterableIterator = (value: any): value is AsyncIterableIterator<unknown> =>
|
|
196
188
|
value != null && typeof value === 'object' && typeof value[Symbol.asyncIterator] === 'function';
|
|
197
189
|
|
|
190
|
+
export const isMultipartBody = (body: any): body is MultipartBody =>
|
|
191
|
+
body && typeof body === 'object' && body.body && body[Symbol.toStringTag] === 'MultipartBody';
|
|
192
|
+
|
|
198
193
|
/**
|
|
199
194
|
* Returns a multipart/form-data request if any part of the given request body contains a File / Blob value.
|
|
200
195
|
* Otherwise returns the request as is.
|
|
201
196
|
*/
|
|
202
|
-
export const maybeMultipartFormRequestOptions = async
|
|
197
|
+
export const maybeMultipartFormRequestOptions = async <T = Record<string, unknown>>(
|
|
198
|
+
opts: RequestOptions<T>,
|
|
199
|
+
): Promise<RequestOptions<T | MultipartBody>> => {
|
|
203
200
|
if (!hasUploadableValue(opts.body)) return opts;
|
|
204
201
|
|
|
205
|
-
|
|
202
|
+
const form = await createForm(opts.body);
|
|
203
|
+
return getMultipartRequestOptions(form, opts);
|
|
206
204
|
};
|
|
207
205
|
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
opts
|
|
212
|
-
|
|
213
|
-
return { ...opts, body: await createForm(opts.body) };
|
|
206
|
+
export const multipartFormRequestOptions = async <T = Record<string, unknown>>(
|
|
207
|
+
opts: RequestOptions<T>,
|
|
208
|
+
): Promise<RequestOptions<T | MultipartBody>> => {
|
|
209
|
+
const form = await createForm(opts.body);
|
|
210
|
+
return getMultipartRequestOptions(form, opts);
|
|
214
211
|
};
|
|
215
212
|
|
|
216
213
|
export const createForm = async <T = Record<string, unknown>>(body: T | undefined): Promise<FormData> => {
|
|
@@ -243,7 +240,7 @@ const addFormValue = async (form: FormData, key: string, value: unknown): Promis
|
|
|
243
240
|
form.append(key, String(value));
|
|
244
241
|
} else if (isUploadable(value)) {
|
|
245
242
|
const file = await toFile(value);
|
|
246
|
-
form.append(key, file as
|
|
243
|
+
form.append(key, file as File);
|
|
247
244
|
} else if (Array.isArray(value)) {
|
|
248
245
|
await Promise.all(value.map((entry) => addFormValue(form, key + '[]', entry)));
|
|
249
246
|
} else if (typeof value === 'object') {
|
package/src/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const VERSION = '0.
|
|
1
|
+
export const VERSION = '0.36.2'; // x-release-please-version
|
package/streaming.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
import { type
|
|
2
|
+
import { ReadableStream, type Response } from "./_shims/index.js";
|
|
3
3
|
export type ServerSentEvent = {
|
|
4
4
|
event: string | null;
|
|
5
5
|
data: string;
|
|
@@ -31,11 +31,4 @@ export declare class Stream<Item> implements AsyncIterable<Item> {
|
|
|
31
31
|
export declare function _iterSSEMessages(response: Response, controller: AbortController): AsyncGenerator<ServerSentEvent, void, unknown>;
|
|
32
32
|
/** This is an internal helper function that's just used for testing */
|
|
33
33
|
export declare function _decodeChunks(chunks: string[]): string[];
|
|
34
|
-
/**
|
|
35
|
-
* Most browsers don't yet have async iterable support for ReadableStream,
|
|
36
|
-
* and Node has a very different way of reading bytes from its "ReadableStream".
|
|
37
|
-
*
|
|
38
|
-
* This polyfill was pulled from https://github.com/MattiasBuelens/web-streams-polyfill/pull/122#issuecomment-1627354490
|
|
39
|
-
*/
|
|
40
|
-
export declare function readableStreamAsyncIterable<T>(stream: any): AsyncIterableIterator<T>;
|
|
41
34
|
//# sourceMappingURL=streaming.d.ts.map
|
package/streaming.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streaming.d.ts","sourceRoot":"","sources":["src/streaming.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"streaming.d.ts","sourceRoot":"","sources":["src/streaming.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAU/D,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,EAAE,CAAC;CACf,CAAC;AAEF,qBAAa,MAAM,CAAC,IAAI,CAAE,YAAW,aAAa,CAAC,IAAI,CAAC;IAIpD,OAAO,CAAC,QAAQ;IAHlB,UAAU,EAAE,eAAe,CAAC;gBAGlB,QAAQ,EAAE,MAAM,aAAa,CAAC,IAAI,CAAC,EAC3C,UAAU,EAAE,eAAe;IAK7B,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC;IAiE3F;;;OAGG;IACH,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC;IA2C1G,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC;IAI7C;;;OAGG;IACH,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAwBnC;;;;OAIG;IACH,gBAAgB,IAAI,cAAc;CA0BnC;AAED,wBAAuB,gBAAgB,CACrC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,eAAe,GAC1B,cAAc,CAAC,eAAe,EAAE,IAAI,EAAE,OAAO,CAAC,CAqBhD;AA0HD,uEAAuE;AACvE,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAQxD"}
|
package/streaming.js
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports._decodeChunks = exports._iterSSEMessages = exports.Stream = void 0;
|
|
4
|
+
const index_1 = require("./_shims/index.js");
|
|
4
5
|
const error_1 = require("./error.js");
|
|
5
|
-
const shims_1 = require("./internal/shims.js");
|
|
6
6
|
const line_1 = require("./internal/decoders/line.js");
|
|
7
|
+
const stream_utils_1 = require("./internal/stream-utils.js");
|
|
8
|
+
const core_1 = require("./core.js");
|
|
7
9
|
const error_2 = require("./error.js");
|
|
8
10
|
class Stream {
|
|
9
11
|
constructor(iterator, controller) {
|
|
@@ -49,7 +51,7 @@ class Stream {
|
|
|
49
51
|
continue;
|
|
50
52
|
}
|
|
51
53
|
if (sse.event === 'error') {
|
|
52
|
-
throw error_2.APIError.generate(undefined, `SSE Error: ${sse.data}`, sse.data, response.headers);
|
|
54
|
+
throw error_2.APIError.generate(undefined, `SSE Error: ${sse.data}`, sse.data, (0, core_1.createResponseHeaders)(response.headers));
|
|
53
55
|
}
|
|
54
56
|
}
|
|
55
57
|
done = true;
|
|
@@ -76,7 +78,7 @@ class Stream {
|
|
|
76
78
|
let consumed = false;
|
|
77
79
|
async function* iterLines() {
|
|
78
80
|
const lineDecoder = new line_1.LineDecoder();
|
|
79
|
-
const iter =
|
|
81
|
+
const iter = (0, stream_utils_1.ReadableStreamToAsyncIterable)(readableStream);
|
|
80
82
|
for await (const chunk of iter) {
|
|
81
83
|
for (const line of lineDecoder.decode(chunk)) {
|
|
82
84
|
yield line;
|
|
@@ -152,7 +154,7 @@ class Stream {
|
|
|
152
154
|
const self = this;
|
|
153
155
|
let iter;
|
|
154
156
|
const encoder = new TextEncoder();
|
|
155
|
-
return
|
|
157
|
+
return new index_1.ReadableStream({
|
|
156
158
|
async start() {
|
|
157
159
|
iter = self[Symbol.asyncIterator]();
|
|
158
160
|
},
|
|
@@ -182,7 +184,7 @@ async function* _iterSSEMessages(response, controller) {
|
|
|
182
184
|
}
|
|
183
185
|
const sseDecoder = new SSEDecoder();
|
|
184
186
|
const lineDecoder = new line_1.LineDecoder();
|
|
185
|
-
const iter =
|
|
187
|
+
const iter = (0, stream_utils_1.ReadableStreamToAsyncIterable)(response.body);
|
|
186
188
|
for await (const sseChunk of iterSSEChunks(iter)) {
|
|
187
189
|
for (const line of lineDecoder.decode(sseChunk)) {
|
|
188
190
|
const sse = sseDecoder.decode(line);
|
|
@@ -308,39 +310,4 @@ function partition(str, delimiter) {
|
|
|
308
310
|
}
|
|
309
311
|
return [str, '', ''];
|
|
310
312
|
}
|
|
311
|
-
/**
|
|
312
|
-
* Most browsers don't yet have async iterable support for ReadableStream,
|
|
313
|
-
* and Node has a very different way of reading bytes from its "ReadableStream".
|
|
314
|
-
*
|
|
315
|
-
* This polyfill was pulled from https://github.com/MattiasBuelens/web-streams-polyfill/pull/122#issuecomment-1627354490
|
|
316
|
-
*/
|
|
317
|
-
function readableStreamAsyncIterable(stream) {
|
|
318
|
-
if (stream[Symbol.asyncIterator])
|
|
319
|
-
return stream;
|
|
320
|
-
const reader = stream.getReader();
|
|
321
|
-
return {
|
|
322
|
-
async next() {
|
|
323
|
-
try {
|
|
324
|
-
const result = await reader.read();
|
|
325
|
-
if (result?.done)
|
|
326
|
-
reader.releaseLock(); // release lock when stream becomes closed
|
|
327
|
-
return result;
|
|
328
|
-
}
|
|
329
|
-
catch (e) {
|
|
330
|
-
reader.releaseLock(); // release lock when stream becomes errored
|
|
331
|
-
throw e;
|
|
332
|
-
}
|
|
333
|
-
},
|
|
334
|
-
async return() {
|
|
335
|
-
const cancelPromise = reader.cancel();
|
|
336
|
-
reader.releaseLock();
|
|
337
|
-
await cancelPromise;
|
|
338
|
-
return { done: true, value: undefined };
|
|
339
|
-
},
|
|
340
|
-
[Symbol.asyncIterator]() {
|
|
341
|
-
return this;
|
|
342
|
-
},
|
|
343
|
-
};
|
|
344
|
-
}
|
|
345
|
-
exports.readableStreamAsyncIterable = readableStreamAsyncIterable;
|
|
346
313
|
//# sourceMappingURL=streaming.js.map
|
package/streaming.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streaming.js","sourceRoot":"","sources":["src/streaming.ts"],"names":[],"mappings":";;;AAAA,sCAAyC;
|
|
1
|
+
{"version":3,"file":"streaming.js","sourceRoot":"","sources":["src/streaming.ts"],"names":[],"mappings":"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"}
|