@awt_ai/aws-sdk 0.3.0 → 0.3.1
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/client.d.mts +124 -0
- package/client.d.mts.map +1 -0
- package/client.d.ts +3 -3
- package/client.d.ts.map +1 -1
- package/client.js +16 -2
- package/client.js.map +1 -1
- package/client.mjs +16 -2
- package/client.mjs.map +1 -1
- package/core/auth.d.mts +15 -0
- package/core/auth.d.mts.map +1 -0
- package/core/auth.d.ts +1 -1
- package/core/auth.d.ts.map +1 -1
- package/core/error.d.mts +2 -0
- package/core/error.d.mts.map +1 -0
- package/core/error.d.ts.map +1 -1
- package/core/pagination.d.mts +2 -0
- package/core/pagination.d.mts.map +1 -0
- package/core/pagination.d.ts.map +1 -1
- package/core/streaming.d.mts +2 -0
- package/core/streaming.d.mts.map +1 -0
- package/core/streaming.d.ts.map +1 -1
- package/index.d.mts +4 -0
- package/index.d.mts.map +1 -0
- package/index.d.ts +3 -3
- package/index.d.ts.map +1 -1
- package/index.js +3 -0
- package/internal/builtin-types.d.mts +73 -0
- package/internal/builtin-types.d.mts.map +1 -0
- package/internal/constants.d.mts +5 -0
- package/internal/constants.d.mts.map +1 -0
- package/internal/decoders/jsonl.d.mts +10 -0
- package/internal/decoders/jsonl.d.mts.map +1 -0
- package/internal/decoders/jsonl.d.ts +1 -1
- package/internal/decoders/jsonl.d.ts.map +1 -1
- package/internal/decoders/jsonl.js +2 -0
- package/internal/decoders/jsonl.js.map +1 -1
- package/internal/decoders/jsonl.mjs +2 -0
- package/internal/decoders/jsonl.mjs.map +1 -1
- package/internal/decoders/line.d.mts +17 -0
- package/internal/decoders/line.d.mts.map +1 -0
- package/internal/decoders/line.js +21 -34
- package/internal/decoders/line.js.map +1 -1
- package/internal/decoders/line.mjs +21 -34
- package/internal/decoders/line.mjs.map +1 -1
- package/internal/errors.d.mts +3 -0
- package/internal/errors.d.mts.map +1 -0
- package/internal/headers.d.mts +22 -0
- package/internal/headers.d.mts.map +1 -0
- package/internal/parse.d.mts +17 -0
- package/internal/parse.d.mts.map +1 -0
- package/internal/parse.d.ts +3 -3
- package/internal/parse.d.ts.map +1 -1
- package/internal/qs/formats.d.mts +7 -0
- package/internal/qs/formats.d.mts.map +1 -0
- package/internal/qs/formats.d.ts +1 -1
- package/internal/qs/formats.d.ts.map +1 -1
- package/internal/qs/index.d.mts +10 -0
- package/internal/qs/index.d.mts.map +1 -0
- package/internal/qs/index.d.ts +2 -2
- package/internal/qs/index.d.ts.map +1 -1
- package/internal/qs/stringify.d.mts +3 -0
- package/internal/qs/stringify.d.mts.map +1 -0
- package/internal/qs/stringify.d.ts +1 -1
- package/internal/qs/stringify.d.ts.map +1 -1
- package/internal/qs/stringify.js +1 -1
- package/internal/qs/stringify.js.map +1 -1
- package/internal/qs/stringify.mjs +1 -1
- package/internal/qs/stringify.mjs.map +1 -1
- package/internal/qs/types.d.mts +57 -0
- package/internal/qs/types.d.mts.map +1 -0
- package/internal/qs/utils.d.mts +15 -0
- package/internal/qs/utils.d.mts.map +1 -0
- package/internal/qs/utils.d.ts +1 -1
- package/internal/qs/utils.d.ts.map +1 -1
- package/internal/request-options.d.mts +77 -0
- package/internal/request-options.d.mts.map +1 -0
- package/internal/request-options.d.ts +5 -5
- package/internal/request-options.d.ts.map +1 -1
- package/internal/shim-types.d.mts +17 -0
- package/internal/shim-types.d.mts.map +1 -0
- package/internal/shims.d.mts +20 -0
- package/internal/shims.d.mts.map +1 -0
- package/internal/shims.d.ts +2 -8
- package/internal/shims.d.ts.map +1 -1
- package/internal/stream-utils.d.mts +8 -0
- package/internal/stream-utils.d.mts.map +1 -0
- package/internal/to-file.d.mts +45 -0
- package/internal/to-file.d.mts.map +1 -0
- package/internal/to-file.d.ts +1 -1
- package/internal/to-file.d.ts.map +1 -1
- package/internal/to-file.js +2 -2
- package/internal/to-file.js.map +1 -1
- package/internal/to-file.mjs +2 -2
- package/internal/to-file.mjs.map +1 -1
- package/internal/types.d.mts +69 -0
- package/internal/types.d.mts.map +1 -0
- package/internal/types.d.ts +12 -6
- package/internal/uploads.d.mts +42 -0
- package/internal/uploads.d.mts.map +1 -0
- package/internal/uploads.d.ts +3 -3
- package/internal/uploads.d.ts.map +1 -1
- package/internal/utils/base64.d.mts +3 -0
- package/internal/utils/base64.d.mts.map +1 -0
- package/internal/utils/bytes.d.mts +4 -0
- package/internal/utils/bytes.d.mts.map +1 -0
- package/internal/utils/env.d.mts +9 -0
- package/internal/utils/env.d.mts.map +1 -0
- package/internal/utils/log.d.mts +37 -0
- package/internal/utils/log.d.mts.map +1 -0
- package/internal/utils/log.d.ts +2 -2
- package/internal/utils/log.d.ts.map +1 -1
- package/internal/utils/path.d.mts +15 -0
- package/internal/utils/path.d.mts.map +1 -0
- package/internal/utils/query.d.mts +2 -0
- package/internal/utils/query.d.mts.map +1 -0
- package/internal/utils/sleep.d.mts +2 -0
- package/internal/utils/sleep.d.mts.map +1 -0
- package/internal/utils/time.d.mts +3 -0
- package/internal/utils/time.d.mts.map +1 -0
- package/internal/utils/uuid.d.mts +5 -0
- package/internal/utils/uuid.d.mts.map +1 -0
- package/internal/utils/values.d.mts +19 -0
- package/internal/utils/values.d.mts.map +1 -0
- package/internal/utils.d.mts +8 -0
- package/internal/utils.d.mts.map +1 -0
- package/internal/utils.d.ts +7 -7
- package/internal/utils.d.ts.map +1 -1
- package/package.json +39 -12
- package/src/client.d.ts +124 -0
- package/src/client.d.ts.map +1 -0
- package/src/client.js +198 -0
- package/src/client.js.map +1 -0
- package/src/client.mjs +160 -0
- package/src/client.mjs.map +1 -0
- package/src/core/auth.d.ts +15 -0
- package/src/core/auth.d.ts.map +1 -0
- package/src/core/auth.js +113 -0
- package/src/core/auth.js.map +1 -0
- package/src/core/auth.mjs +73 -0
- package/src/core/auth.mjs.map +1 -0
- package/src/core/error.d.ts +2 -0
- package/src/core/error.d.ts.map +1 -0
- package/src/core/error.js +18 -0
- package/src/core/error.js.map +1 -0
- package/src/core/error.mjs +2 -0
- package/src/core/error.mjs.map +1 -0
- package/src/core/pagination.d.ts +2 -0
- package/src/core/pagination.d.ts.map +1 -0
- package/src/core/pagination.js +18 -0
- package/src/core/pagination.js.map +1 -0
- package/src/core/pagination.mjs +2 -0
- package/src/core/pagination.mjs.map +1 -0
- package/src/core/streaming.d.ts +2 -0
- package/src/core/streaming.d.ts.map +1 -0
- package/src/core/streaming.js +18 -0
- package/src/core/streaming.js.map +1 -0
- package/src/core/streaming.mjs +2 -0
- package/src/core/streaming.mjs.map +1 -0
- package/src/internal/builtin-types.d.ts +73 -0
- package/src/internal/builtin-types.d.ts.map +1 -0
- package/src/internal/builtin-types.js +4 -0
- package/src/internal/builtin-types.js.map +1 -0
- package/src/internal/builtin-types.mjs +3 -0
- package/src/internal/builtin-types.mjs.map +1 -0
- package/src/internal/headers.d.ts +22 -0
- package/src/internal/headers.d.ts.map +1 -0
- package/src/internal/headers.js +79 -0
- package/src/internal/headers.js.map +1 -0
- package/src/internal/headers.mjs +74 -0
- package/src/internal/headers.mjs.map +1 -0
- package/src/internal/qs/formats.d.ts +7 -0
- package/src/internal/qs/formats.d.ts.map +1 -0
- package/src/internal/qs/formats.js +13 -0
- package/src/internal/qs/formats.js.map +1 -0
- package/src/internal/qs/formats.mjs +9 -0
- package/src/internal/qs/formats.mjs.map +1 -0
- package/src/internal/qs/stringify.d.ts +3 -0
- package/src/internal/qs/stringify.d.ts.map +1 -0
- package/src/internal/qs/stringify.js +277 -0
- package/src/internal/qs/stringify.js.map +1 -0
- package/src/internal/qs/stringify.mjs +274 -0
- package/src/internal/qs/stringify.mjs.map +1 -0
- package/src/internal/qs/types.d.ts +57 -0
- package/src/internal/qs/types.d.ts.map +1 -0
- package/src/internal/qs/types.js +3 -0
- package/src/internal/qs/types.js.map +1 -0
- package/src/internal/qs/types.mjs +2 -0
- package/src/internal/qs/types.mjs.map +1 -0
- package/src/internal/qs/utils.d.ts +15 -0
- package/src/internal/qs/utils.d.ts.map +1 -0
- package/src/internal/qs/utils.js +230 -0
- package/src/internal/qs/utils.js.map +1 -0
- package/src/internal/qs/utils.mjs +217 -0
- package/src/internal/qs/utils.mjs.map +1 -0
- package/src/internal/request-options.d.ts +77 -0
- package/src/internal/request-options.d.ts.map +1 -0
- package/src/internal/request-options.js +14 -0
- package/src/internal/request-options.js.map +1 -0
- package/src/internal/request-options.mjs +10 -0
- package/src/internal/request-options.mjs.map +1 -0
- package/src/internal/types.d.ts +69 -0
- package/src/internal/types.d.ts.map +1 -0
- package/src/internal/types.js +4 -0
- package/src/internal/types.js.map +1 -0
- package/src/internal/types.mjs +3 -0
- package/src/internal/types.mjs.map +1 -0
- package/src/internal/utils/base64.d.ts +3 -0
- package/src/internal/utils/base64.d.ts.map +1 -0
- package/src/internal/utils/base64.js +38 -0
- package/src/internal/utils/base64.js.map +1 -0
- package/src/internal/utils/base64.mjs +33 -0
- package/src/internal/utils/base64.mjs.map +1 -0
- package/src/internal/utils/bytes.d.ts +4 -0
- package/src/internal/utils/bytes.d.ts.map +1 -0
- package/src/internal/utils/bytes.js +31 -0
- package/src/internal/utils/bytes.js.map +1 -0
- package/src/internal/utils/bytes.mjs +26 -0
- package/src/internal/utils/bytes.mjs.map +1 -0
- package/src/internal/utils/env.d.ts +9 -0
- package/src/internal/utils/env.d.ts.map +1 -0
- package/src/internal/utils/env.js +22 -0
- package/src/internal/utils/env.js.map +1 -0
- package/src/internal/utils/env.mjs +18 -0
- package/src/internal/utils/env.mjs.map +1 -0
- package/src/internal/utils/log.d.ts +37 -0
- package/src/internal/utils/log.d.ts.map +1 -0
- package/src/internal/utils/log.js +87 -0
- package/src/internal/utils/log.js.map +1 -0
- package/src/internal/utils/log.mjs +81 -0
- package/src/internal/utils/log.mjs.map +1 -0
- package/src/internal/utils/query.d.ts +2 -0
- package/src/internal/utils/query.d.ts.map +1 -0
- package/src/internal/utils/query.js +42 -0
- package/src/internal/utils/query.js.map +1 -0
- package/src/internal/utils/query.mjs +6 -0
- package/src/internal/utils/query.mjs.map +1 -0
- package/src/internal/utils/sleep.d.ts +2 -0
- package/src/internal/utils/sleep.d.ts.map +1 -0
- package/src/internal/utils/sleep.js +7 -0
- package/src/internal/utils/sleep.js.map +1 -0
- package/src/internal/utils/sleep.mjs +3 -0
- package/src/internal/utils/sleep.mjs.map +1 -0
- package/src/internal/utils/uuid.d.ts +5 -0
- package/src/internal/utils/uuid.d.ts.map +1 -0
- package/src/internal/utils/uuid.js +19 -0
- package/src/internal/utils/uuid.js.map +1 -0
- package/src/internal/utils/uuid.mjs +15 -0
- package/src/internal/utils/uuid.mjs.map +1 -0
- package/src/internal/utils/values.d.ts +19 -0
- package/src/internal/utils/values.d.ts.map +1 -0
- package/src/internal/utils/values.js +119 -0
- package/src/internal/utils/values.js.map +1 -0
- package/src/internal/utils/values.mjs +100 -0
- package/src/internal/utils/values.mjs.map +1 -0
- package/src/internal/utils.d.ts +8 -0
- package/src/internal/utils.d.ts.map +1 -0
- package/src/internal/utils.js +25 -0
- package/src/internal/utils.js.map +1 -0
- package/src/internal/utils.mjs +9 -0
- package/src/internal/utils.mjs.map +1 -0
- package/src/tsconfig.json +11 -0
package/src/client.mjs
ADDED
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { buildHeaders } from "./internal/headers.mjs";
|
|
2
|
+
import * as Errors from "./core/error.mjs";
|
|
3
|
+
import { readEnv } from "./internal/utils/index.mjs";
|
|
4
|
+
import { Awt } from '@awt_ai/sdk/client';
|
|
5
|
+
export { BaseAwt } from '@awt_ai/sdk/client';
|
|
6
|
+
import { loadConfig } from '@smithy/node-config-provider';
|
|
7
|
+
import { NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS } from '@smithy/config-resolver';
|
|
8
|
+
import { getAuthHeaders } from "./core/auth.mjs";
|
|
9
|
+
const DEFAULT_SERVICE_NAME = 'aws-external-awt';
|
|
10
|
+
const noRegionError = () => new Errors.AwtError('No AWS region or base URL found. Set `awsRegion` in the constructor, the `AWS_REGION` / `AWS_DEFAULT_REGION` ' +
|
|
11
|
+
'environment variable, configure a `region` for your profile in `~/.aws/config`, or provide a `baseURL` / ' +
|
|
12
|
+
'`AWT_AWS_BASE_URL` environment variable.');
|
|
13
|
+
/** API Client for interfacing with the Awt AWS API. */
|
|
14
|
+
export class AwtAws extends Awt {
|
|
15
|
+
/**
|
|
16
|
+
* API Client for interfacing with the Awt AWS API.
|
|
17
|
+
*
|
|
18
|
+
* Auth is resolved by precedence: `apiKey` constructor arg > explicit AWS
|
|
19
|
+
* credentials > `awsProfile` > `AWT_AWS_API_KEY` env var > default
|
|
20
|
+
* AWS credential chain.
|
|
21
|
+
*
|
|
22
|
+
* @param {string | undefined} [opts.apiKey] - API key for x-api-key authentication.
|
|
23
|
+
* @param {string | null | undefined} [opts.awsAccessKey] - AWS access key ID for SigV4 authentication.
|
|
24
|
+
* @param {string | null | undefined} [opts.awsSecretAccessKey] - AWS secret access key for SigV4 authentication.
|
|
25
|
+
* @param {string | null | undefined} [opts.awsSessionToken] - AWS session token for temporary credentials.
|
|
26
|
+
* @param {string | undefined} [opts.awsProfile] - AWS named profile for credential and region resolution.
|
|
27
|
+
* @param {string | undefined} [opts.awsRegion] - AWS region. Resolved by precedence: arg > `AWS_REGION` env > `AWS_DEFAULT_REGION` env > `~/.aws/config`.
|
|
28
|
+
* @param {(() => Promise<AwsCredentialIdentityProvider>) | null} [opts.providerChainResolver] - Custom provider chain resolver for AWS credentials.
|
|
29
|
+
* @param {string | undefined} [opts.workspaceId] - Workspace ID sent as `awt-workspace-id` header. Resolved by precedence: arg > `AWT_AWS_WORKSPACE_ID` env var.
|
|
30
|
+
* @param {string} [opts.baseURL=process.env['AWT_AWS_BASE_URL'] ?? https://aws-external-awt.{awsRegion}.api.aws] - Override the default base URL for the API.
|
|
31
|
+
* @param {number} [opts.timeout=10 minutes] - The maximum amount of time (in milliseconds) the client will wait for a response before timing out.
|
|
32
|
+
* @param {MergedRequestInit} [opts.fetchOptions] - Additional `RequestInit` options to be passed to `fetch` calls.
|
|
33
|
+
* @param {Fetch} [opts.fetch] - Specify a custom `fetch` function implementation.
|
|
34
|
+
* @param {number} [opts.maxRetries=2] - The maximum number of times the client will retry a request.
|
|
35
|
+
* @param {HeadersLike} opts.defaultHeaders - Default headers to include with every request to the API.
|
|
36
|
+
* @param {Record<string, string | undefined>} opts.defaultQuery - Default query parameters to include with every request to the API.
|
|
37
|
+
* @param {boolean} [opts.dangerouslyAllowBrowser=false] - By default, client-side use of this library is not allowed, as it risks exposing your secret API credentials to attackers.
|
|
38
|
+
* @param {boolean} [opts.skipAuth=false] - Skip authentication for requests. This is useful when you have a gateway or proxy that handles authentication on your behalf.
|
|
39
|
+
*/
|
|
40
|
+
constructor({ awsRegion, baseURL, apiKey, awsAccessKey = null, awsSecretAccessKey = null, awsSessionToken = null, awsProfile, providerChainResolver = null, workspaceId, skipAuth = false, ...opts } = {}) {
|
|
41
|
+
// Region resolution: arg > AWS_REGION env > AWS_DEFAULT_REGION env > ~/.aws/config (async).
|
|
42
|
+
// The first three are resolved here; config-file fallback is kicked off below and
|
|
43
|
+
// awaited on `ready` / first request.
|
|
44
|
+
const syncRegion = awsRegion ?? readEnv('AWS_REGION') ?? readEnv('AWS_DEFAULT_REGION');
|
|
45
|
+
const explicitBaseURL = baseURL ?? readEnv('AWT_AWS_BASE_URL');
|
|
46
|
+
let resolvedBaseURL;
|
|
47
|
+
if (explicitBaseURL) {
|
|
48
|
+
resolvedBaseURL = explicitBaseURL;
|
|
49
|
+
}
|
|
50
|
+
else if (syncRegion) {
|
|
51
|
+
resolvedBaseURL = `https://aws-external-awt.${syncRegion}.api.aws`;
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
// No region known yet (or skipAuth) — will be resolved async from ~/.aws/config,
|
|
55
|
+
// or is not needed at all.
|
|
56
|
+
resolvedBaseURL = undefined;
|
|
57
|
+
}
|
|
58
|
+
// Precedence-based auth resolution:
|
|
59
|
+
// 1. apiKey constructor arg
|
|
60
|
+
// 2. awsAccessKey/awsSecretAccessKey constructor args (SigV4)
|
|
61
|
+
// 3. awsProfile constructor arg (SigV4)
|
|
62
|
+
// 4. AWT_AWS_API_KEY env var
|
|
63
|
+
// 5. Default AWS credential chain (SigV4)
|
|
64
|
+
const hasExplicitApiKey = apiKey != null;
|
|
65
|
+
const hasPartialAwsCreds = (awsAccessKey != null) !== (awsSecretAccessKey != null);
|
|
66
|
+
if (hasPartialAwsCreds) {
|
|
67
|
+
throw new Errors.AwtError('`awsAccessKey` and `awsSecretAccessKey` must be provided together. You provided only one.');
|
|
68
|
+
}
|
|
69
|
+
const hasExplicitAwsCreds = awsAccessKey != null && awsSecretAccessKey != null;
|
|
70
|
+
const hasAwsProfile = awsProfile != null;
|
|
71
|
+
let resolvedApiKey;
|
|
72
|
+
if (hasExplicitApiKey) {
|
|
73
|
+
resolvedApiKey = apiKey;
|
|
74
|
+
}
|
|
75
|
+
else if (!hasExplicitAwsCreds && !hasAwsProfile) {
|
|
76
|
+
resolvedApiKey = readEnv('AWT_AWS_API_KEY') ?? undefined;
|
|
77
|
+
}
|
|
78
|
+
const resolvedWorkspaceId = workspaceId ?? readEnv('AWT_AWS_WORKSPACE_ID');
|
|
79
|
+
if (!resolvedWorkspaceId && !skipAuth) {
|
|
80
|
+
throw new Errors.AwtError('No workspace ID found. Set `workspaceId` in the constructor or the `AWT_AWS_WORKSPACE_ID` environment variable.');
|
|
81
|
+
}
|
|
82
|
+
super({
|
|
83
|
+
apiKey: resolvedApiKey,
|
|
84
|
+
baseURL: resolvedBaseURL,
|
|
85
|
+
...opts,
|
|
86
|
+
defaultHeaders: buildHeaders([{ 'awt-workspace-id': resolvedWorkspaceId }, opts.defaultHeaders]),
|
|
87
|
+
});
|
|
88
|
+
this.skipAuth = false;
|
|
89
|
+
this.awsRegion = syncRegion;
|
|
90
|
+
this.awsAccessKey = awsAccessKey;
|
|
91
|
+
this.awsSecretAccessKey = awsSecretAccessKey;
|
|
92
|
+
this.awsSessionToken = awsSessionToken;
|
|
93
|
+
this.awsProfile = awsProfile ?? null;
|
|
94
|
+
this.providerChainResolver = providerChainResolver;
|
|
95
|
+
this.workspaceId = resolvedWorkspaceId;
|
|
96
|
+
this.skipAuth = skipAuth;
|
|
97
|
+
this._useSigV4 = resolvedApiKey == null;
|
|
98
|
+
if (syncRegion || explicitBaseURL || skipAuth) {
|
|
99
|
+
this.ready = Promise.resolve();
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
this.ready = this._resolveRegionFromConfig(awsProfile).then((region) => {
|
|
103
|
+
this.awsRegion = region;
|
|
104
|
+
this.baseURL = `https://aws-external-awt.${region}.api.aws`;
|
|
105
|
+
});
|
|
106
|
+
// Suppress unhandledRejection; the error surfaces via `await ready` or the first request.
|
|
107
|
+
this.ready.catch(() => { });
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
_resolveRegionFromConfig(profile) {
|
|
111
|
+
return loadConfig({
|
|
112
|
+
...NODE_REGION_CONFIG_OPTIONS,
|
|
113
|
+
default: () => {
|
|
114
|
+
throw noRegionError();
|
|
115
|
+
},
|
|
116
|
+
}, {
|
|
117
|
+
...NODE_REGION_CONFIG_FILE_OPTIONS,
|
|
118
|
+
...(profile && { profile }),
|
|
119
|
+
})();
|
|
120
|
+
}
|
|
121
|
+
async prepareOptions(options) {
|
|
122
|
+
await super.prepareOptions(options);
|
|
123
|
+
await this.ready;
|
|
124
|
+
}
|
|
125
|
+
async authHeaders(opts) {
|
|
126
|
+
if (this.skipAuth) {
|
|
127
|
+
return undefined;
|
|
128
|
+
}
|
|
129
|
+
if (!this._useSigV4) {
|
|
130
|
+
// API key mode — use inherited x-api-key auth
|
|
131
|
+
return super.authHeaders(opts);
|
|
132
|
+
}
|
|
133
|
+
// SigV4 mode — auth is handled in prepareRequest since it needs the full request
|
|
134
|
+
return undefined;
|
|
135
|
+
}
|
|
136
|
+
validateHeaders() {
|
|
137
|
+
// Auth validation is handled in the constructor and prepareRequest
|
|
138
|
+
}
|
|
139
|
+
async prepareRequest(request, { url, options }) {
|
|
140
|
+
if (this.skipAuth || !this._useSigV4) {
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
if (!this.awsRegion) {
|
|
144
|
+
// Only reachable when an explicit baseURL was provided without a region.
|
|
145
|
+
throw noRegionError();
|
|
146
|
+
}
|
|
147
|
+
const headers = await getAuthHeaders(request, {
|
|
148
|
+
url,
|
|
149
|
+
regionName: this.awsRegion,
|
|
150
|
+
serviceName: DEFAULT_SERVICE_NAME,
|
|
151
|
+
awsAccessKey: this.awsAccessKey,
|
|
152
|
+
awsSecretAccessKey: this.awsSecretAccessKey,
|
|
153
|
+
awsSessionToken: this.awsSessionToken,
|
|
154
|
+
awsProfile: this.awsProfile,
|
|
155
|
+
providerChainResolver: this.providerChainResolver,
|
|
156
|
+
});
|
|
157
|
+
request.headers = buildHeaders([headers, request.headers]).values;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
//# sourceMappingURL=client.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.mjs","sourceRoot":"","sources":["client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { AwsCredentialIdentityProvider } from '@smithy/types';
|
|
2
|
+
import { MergedRequestInit } from '../internal/types';
|
|
3
|
+
export type AuthProps = {
|
|
4
|
+
url: string;
|
|
5
|
+
regionName: string;
|
|
6
|
+
serviceName: string;
|
|
7
|
+
awsAccessKey: string | null | undefined;
|
|
8
|
+
awsSecretAccessKey: string | null | undefined;
|
|
9
|
+
awsSessionToken: string | null | undefined;
|
|
10
|
+
awsProfile?: string | null | undefined;
|
|
11
|
+
fetchOptions?: MergedRequestInit | undefined;
|
|
12
|
+
providerChainResolver?: (() => Promise<AwsCredentialIdentityProvider>) | null;
|
|
13
|
+
};
|
|
14
|
+
export declare const getAuthHeaders: (req: RequestInit, props: AuthProps) => Promise<Record<string, string>>;
|
|
15
|
+
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["auth.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;AAE9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,MAAM,MAAM,SAAS,GAAG;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACxC,kBAAkB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC9C,eAAe,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3C,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACvC,YAAY,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAC7C,qBAAqB,CAAC,EAAE,CAAC,MAAM,OAAO,CAAC,6BAA6B,CAAC,CAAC,GAAG,IAAI,CAAC;CAC/E,CAAC;AA2BF,eAAO,MAAM,cAAc,GAAU,KAAK,WAAW,EAAE,OAAO,SAAS,KAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAuDvG,CAAC"}
|
package/src/core/auth.js
ADDED
|
@@ -0,0 +1,113 @@
|
|
|
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.getAuthHeaders = void 0;
|
|
40
|
+
const sha256_js_1 = require("@aws-crypto/sha256-js");
|
|
41
|
+
const fetch_http_handler_1 = require("@smithy/fetch-http-handler");
|
|
42
|
+
const protocol_http_1 = require("@smithy/protocol-http");
|
|
43
|
+
const signature_v4_1 = require("@smithy/signature-v4");
|
|
44
|
+
const assert_1 = __importDefault(require("assert"));
|
|
45
|
+
const defaultProviderChainResolver = (profile) => Promise.resolve().then(() => __importStar(require('@aws-sdk/credential-providers'))).then(({ fromNodeProviderChain }) => fromNodeProviderChain({
|
|
46
|
+
...(profile != null ? { profile } : {}),
|
|
47
|
+
clientConfig: {
|
|
48
|
+
requestHandler: new fetch_http_handler_1.FetchHttpHandler({
|
|
49
|
+
requestInit: (httpRequest) => {
|
|
50
|
+
return {
|
|
51
|
+
...httpRequest,
|
|
52
|
+
};
|
|
53
|
+
},
|
|
54
|
+
}),
|
|
55
|
+
},
|
|
56
|
+
}))
|
|
57
|
+
.catch((error) => {
|
|
58
|
+
throw new Error(`Failed to import '@aws-sdk/credential-providers'. ` +
|
|
59
|
+
`You can provide a custom \`providerChainResolver\` in the client options if your runtime does not have access to '@aws-sdk/credential-providers': ` +
|
|
60
|
+
`\`new AwtAws({ providerChainResolver })\` ` +
|
|
61
|
+
`Original error: ${error.message}`);
|
|
62
|
+
});
|
|
63
|
+
const getAuthHeaders = async (req, props) => {
|
|
64
|
+
(0, assert_1.default)(req.method, 'Expected request method property to be set');
|
|
65
|
+
let credentials;
|
|
66
|
+
if (props.awsAccessKey && props.awsSecretAccessKey) {
|
|
67
|
+
credentials = {
|
|
68
|
+
accessKeyId: props.awsAccessKey,
|
|
69
|
+
secretAccessKey: props.awsSecretAccessKey,
|
|
70
|
+
...(props.awsSessionToken != null && { sessionToken: props.awsSessionToken }),
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
else if (props.providerChainResolver) {
|
|
74
|
+
const provider = await props.providerChainResolver();
|
|
75
|
+
credentials = await provider();
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
const provider = await defaultProviderChainResolver(props.awsProfile);
|
|
79
|
+
credentials = await provider();
|
|
80
|
+
}
|
|
81
|
+
const signer = new signature_v4_1.SignatureV4({
|
|
82
|
+
service: props.serviceName,
|
|
83
|
+
region: props.regionName,
|
|
84
|
+
credentials,
|
|
85
|
+
sha256: sha256_js_1.Sha256,
|
|
86
|
+
});
|
|
87
|
+
const url = new URL(props.url);
|
|
88
|
+
const headers = !req.headers ? {}
|
|
89
|
+
: Symbol.iterator in req.headers ?
|
|
90
|
+
Object.fromEntries(Array.from(req.headers).map((header) => [...header]))
|
|
91
|
+
: { ...req.headers };
|
|
92
|
+
// The connection header may be stripped by a proxy somewhere, so the receiver
|
|
93
|
+
// of this message may not see this header, so we remove it from the set of headers
|
|
94
|
+
// that are signed.
|
|
95
|
+
delete headers['connection'];
|
|
96
|
+
headers['host'] = url.hostname;
|
|
97
|
+
const query = {};
|
|
98
|
+
url.searchParams.forEach((value, key) => {
|
|
99
|
+
query[key] = value;
|
|
100
|
+
});
|
|
101
|
+
const request = new protocol_http_1.HttpRequest({
|
|
102
|
+
method: req.method.toUpperCase(),
|
|
103
|
+
protocol: url.protocol,
|
|
104
|
+
path: url.pathname,
|
|
105
|
+
query,
|
|
106
|
+
headers,
|
|
107
|
+
body: req.body,
|
|
108
|
+
});
|
|
109
|
+
const signed = await signer.sign(request);
|
|
110
|
+
return signed.headers;
|
|
111
|
+
};
|
|
112
|
+
exports.getAuthHeaders = getAuthHeaders;
|
|
113
|
+
//# sourceMappingURL=auth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { Sha256 } from '@aws-crypto/sha256-js';
|
|
2
|
+
import { FetchHttpHandler } from '@smithy/fetch-http-handler';
|
|
3
|
+
import { HttpRequest } from '@smithy/protocol-http';
|
|
4
|
+
import { SignatureV4 } from '@smithy/signature-v4';
|
|
5
|
+
import assert from 'assert';
|
|
6
|
+
const defaultProviderChainResolver = (profile) => import('@aws-sdk/credential-providers').then(({ fromNodeProviderChain }) => fromNodeProviderChain({
|
|
7
|
+
...(profile != null ? { profile } : {}),
|
|
8
|
+
clientConfig: {
|
|
9
|
+
requestHandler: new FetchHttpHandler({
|
|
10
|
+
requestInit: (httpRequest) => {
|
|
11
|
+
return {
|
|
12
|
+
...httpRequest,
|
|
13
|
+
};
|
|
14
|
+
},
|
|
15
|
+
}),
|
|
16
|
+
},
|
|
17
|
+
}))
|
|
18
|
+
.catch((error) => {
|
|
19
|
+
throw new Error(`Failed to import '@aws-sdk/credential-providers'. ` +
|
|
20
|
+
`You can provide a custom \`providerChainResolver\` in the client options if your runtime does not have access to '@aws-sdk/credential-providers': ` +
|
|
21
|
+
`\`new AwtAws({ providerChainResolver })\` ` +
|
|
22
|
+
`Original error: ${error.message}`);
|
|
23
|
+
});
|
|
24
|
+
export const getAuthHeaders = async (req, props) => {
|
|
25
|
+
assert(req.method, 'Expected request method property to be set');
|
|
26
|
+
let credentials;
|
|
27
|
+
if (props.awsAccessKey && props.awsSecretAccessKey) {
|
|
28
|
+
credentials = {
|
|
29
|
+
accessKeyId: props.awsAccessKey,
|
|
30
|
+
secretAccessKey: props.awsSecretAccessKey,
|
|
31
|
+
...(props.awsSessionToken != null && { sessionToken: props.awsSessionToken }),
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
else if (props.providerChainResolver) {
|
|
35
|
+
const provider = await props.providerChainResolver();
|
|
36
|
+
credentials = await provider();
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
const provider = await defaultProviderChainResolver(props.awsProfile);
|
|
40
|
+
credentials = await provider();
|
|
41
|
+
}
|
|
42
|
+
const signer = new SignatureV4({
|
|
43
|
+
service: props.serviceName,
|
|
44
|
+
region: props.regionName,
|
|
45
|
+
credentials,
|
|
46
|
+
sha256: Sha256,
|
|
47
|
+
});
|
|
48
|
+
const url = new URL(props.url);
|
|
49
|
+
const headers = !req.headers ? {}
|
|
50
|
+
: Symbol.iterator in req.headers ?
|
|
51
|
+
Object.fromEntries(Array.from(req.headers).map((header) => [...header]))
|
|
52
|
+
: { ...req.headers };
|
|
53
|
+
// The connection header may be stripped by a proxy somewhere, so the receiver
|
|
54
|
+
// of this message may not see this header, so we remove it from the set of headers
|
|
55
|
+
// that are signed.
|
|
56
|
+
delete headers['connection'];
|
|
57
|
+
headers['host'] = url.hostname;
|
|
58
|
+
const query = {};
|
|
59
|
+
url.searchParams.forEach((value, key) => {
|
|
60
|
+
query[key] = value;
|
|
61
|
+
});
|
|
62
|
+
const request = new HttpRequest({
|
|
63
|
+
method: req.method.toUpperCase(),
|
|
64
|
+
protocol: url.protocol,
|
|
65
|
+
path: url.pathname,
|
|
66
|
+
query,
|
|
67
|
+
headers,
|
|
68
|
+
body: req.body,
|
|
69
|
+
});
|
|
70
|
+
const signed = await signer.sign(request);
|
|
71
|
+
return signed.headers;
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=auth.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.mjs","sourceRoot":"","sources":["auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["error.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("@awt_ai/sdk/core/error"), exports);
|
|
18
|
+
//# sourceMappingURL=error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error.js","sourceRoot":"","sources":["error.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error.mjs","sourceRoot":"","sources":["error.ts"],"names":[],"mappings":"cAAc,wBAAwB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["pagination.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("@awt_ai/sdk/core/pagination"), exports);
|
|
18
|
+
//# sourceMappingURL=pagination.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pagination.js","sourceRoot":"","sources":["pagination.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8DAA4C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pagination.mjs","sourceRoot":"","sources":["pagination.ts"],"names":[],"mappings":"cAAc,6BAA6B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"streaming.d.ts","sourceRoot":"","sources":["streaming.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("@awt_ai/sdk/core/streaming"), exports);
|
|
18
|
+
//# sourceMappingURL=streaming.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"streaming.js","sourceRoot":"","sources":["streaming.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA2C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"streaming.mjs","sourceRoot":"","sources":["streaming.ts"],"names":[],"mappings":"cAAc,4BAA4B"}
|
|
@@ -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":["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 @@
|
|
|
1
|
+
{"version":3,"file":"builtin-types.js","sourceRoot":"","sources":["builtin-types.ts"],"names":[],"mappings":";AAAA,sFAAsF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builtin-types.mjs","sourceRoot":"","sources":["builtin-types.ts"],"names":[],"mappings":"AAAA,sFAAsF"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
type HeaderValue = string | undefined | null;
|
|
2
|
+
export type HeadersLike = Headers | readonly HeaderValue[][] | Record<string, HeaderValue | readonly HeaderValue[]> | undefined | null | NullableHeaders;
|
|
3
|
+
declare const brand_privateNullableHeaders: symbol & {
|
|
4
|
+
description: "brand.privateNullableHeaders";
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* @internal
|
|
8
|
+
* Users can pass explicit nulls to unset default headers. When we parse them
|
|
9
|
+
* into a standard headers type we need to preserve that information.
|
|
10
|
+
*/
|
|
11
|
+
export type NullableHeaders = {
|
|
12
|
+
/** Brand check, prevent users from creating a NullableHeaders. */
|
|
13
|
+
[_: typeof brand_privateNullableHeaders]: true;
|
|
14
|
+
/** Parsed headers. */
|
|
15
|
+
values: Headers;
|
|
16
|
+
/** Set of lowercase header names explicitly set to null. */
|
|
17
|
+
nulls: Set<string>;
|
|
18
|
+
};
|
|
19
|
+
export declare const buildHeaders: (newHeaders: HeadersLike[]) => NullableHeaders;
|
|
20
|
+
export declare const isEmptyHeaders: (headers: HeadersLike) => boolean;
|
|
21
|
+
export {};
|
|
22
|
+
//# sourceMappingURL=headers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"headers.d.ts","sourceRoot":"","sources":["headers.ts"],"names":[],"mappings":"AAIA,KAAK,WAAW,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;AAC7C,MAAM,MAAM,WAAW,GACnB,OAAO,GACP,SAAS,WAAW,EAAE,EAAE,GACxB,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,WAAW,EAAE,CAAC,GACpD,SAAS,GACT,IAAI,GACJ,eAAe,CAAC;AAEpB,QAAA,MAAM,4BAA4B,EAAiD,MAAM,GAAG;IAC1F,WAAW,EAAE,8BAA8B,CAAC;CAC7C,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,kEAAkE;IAClE,CAAC,CAAC,EAAE,OAAO,4BAA4B,GAAG,IAAI,CAAC;IAC/C,sBAAsB;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,4DAA4D;IAC5D,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACpB,CAAC;AA2CF,eAAO,MAAM,YAAY,GAAI,YAAY,WAAW,EAAE,KAAG,eAqBxD,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,SAAS,WAAW,YAGlD,CAAC"}
|