@superblocksteam/sdk-api 2.0.165-next.0 → 2.0.166-next.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.
- package/README.md +1 -2
- package/dist/errors.d.ts +36 -3
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +244 -8
- package/dist/errors.js.map +1 -1
- package/dist/errors.test.d.ts +2 -0
- package/dist/errors.test.d.ts.map +1 -0
- package/dist/errors.test.js +189 -0
- package/dist/errors.test.js.map +1 -0
- package/dist/integrations/base/decode-worker-binary-response.d.ts.map +1 -1
- package/dist/integrations/base/decode-worker-binary-response.js +2 -5
- package/dist/integrations/base/decode-worker-binary-response.js.map +1 -1
- package/dist/integrations/base/index.d.ts +2 -1
- package/dist/integrations/base/index.d.ts.map +1 -1
- package/dist/integrations/base/index.js +1 -0
- package/dist/integrations/base/index.js.map +1 -1
- package/dist/integrations/base/request-body.d.ts +29 -0
- package/dist/integrations/base/request-body.d.ts.map +1 -0
- package/dist/integrations/base/request-body.js +238 -0
- package/dist/integrations/base/request-body.js.map +1 -0
- package/dist/integrations/base/request-body.test.d.ts +2 -0
- package/dist/integrations/base/request-body.test.d.ts.map +1 -0
- package/dist/integrations/base/request-body.test.js +466 -0
- package/dist/integrations/base/request-body.test.js.map +1 -0
- package/dist/integrations/base/rest-api-client-base.d.ts.map +1 -1
- package/dist/integrations/base/rest-api-client-base.js +15 -14
- package/dist/integrations/base/rest-api-client-base.js.map +1 -1
- package/dist/integrations/base/rest-api-integration-client.d.ts +2 -2
- package/dist/integrations/base/rest-api-integration-client.d.ts.map +1 -1
- package/dist/integrations/base/rest-api-integration-client.js +5 -6
- package/dist/integrations/base/rest-api-integration-client.js.map +1 -1
- package/dist/integrations/base/types.d.ts +55 -11
- package/dist/integrations/base/types.d.ts.map +1 -1
- package/dist/integrations/base/types.js +7 -0
- package/dist/integrations/base/types.js.map +1 -1
- package/dist/integrations/cosmosdb/client.d.ts.map +1 -1
- package/dist/integrations/cosmosdb/client.js +2 -5
- package/dist/integrations/cosmosdb/client.js.map +1 -1
- package/dist/integrations/documentation-resolver.test.js +106 -1
- package/dist/integrations/documentation-resolver.test.js.map +1 -1
- package/dist/integrations/dynamodb/client.d.ts.map +1 -1
- package/dist/integrations/dynamodb/client.js +2 -5
- package/dist/integrations/dynamodb/client.js.map +1 -1
- package/dist/integrations/gcs/client.d.ts.map +1 -1
- package/dist/integrations/gcs/client.js +2 -5
- package/dist/integrations/gcs/client.js.map +1 -1
- package/dist/integrations/gsheets/client.d.ts.map +1 -1
- package/dist/integrations/gsheets/client.js +2 -5
- package/dist/integrations/gsheets/client.js.map +1 -1
- package/dist/integrations/mongodb/client.d.ts.map +1 -1
- package/dist/integrations/mongodb/client.js +2 -5
- package/dist/integrations/mongodb/client.js.map +1 -1
- package/dist/integrations/restapiintegration/client.body-types.test.d.ts +2 -0
- package/dist/integrations/restapiintegration/client.body-types.test.d.ts.map +1 -0
- package/dist/integrations/restapiintegration/client.body-types.test.js +227 -0
- package/dist/integrations/restapiintegration/client.body-types.test.js.map +1 -0
- package/dist/integrations/restapiintegration/client.test.js +56 -30
- package/dist/integrations/restapiintegration/client.test.js.map +1 -1
- package/dist/integrations/s3/client.d.ts.map +1 -1
- package/dist/integrations/s3/client.js +2 -5
- package/dist/integrations/s3/client.js.map +1 -1
- package/dist/integrations/salesforce/client.d.ts.map +1 -1
- package/dist/integrations/salesforce/client.js +2 -5
- package/dist/integrations/salesforce/client.js.map +1 -1
- package/dist/integrations/slack/client.d.ts.map +1 -1
- package/dist/integrations/slack/client.js +4 -13
- package/dist/integrations/slack/client.js.map +1 -1
- package/dist/integrations/slack/client.test.js +20 -0
- package/dist/integrations/slack/client.test.js.map +1 -1
- package/dist/integrations/utils.d.ts +8 -3
- package/dist/integrations/utils.d.ts.map +1 -1
- package/dist/integrations/utils.js +42 -1
- package/dist/integrations/utils.js.map +1 -1
- package/package.json +2 -2
- package/src/errors.test.ts +257 -0
- package/src/errors.ts +304 -10
- package/src/integrations/base/decode-worker-binary-response.ts +5 -7
- package/src/integrations/base/index.ts +3 -0
- package/src/integrations/base/request-body.test.ts +565 -0
- package/src/integrations/base/request-body.ts +392 -0
- package/src/integrations/base/rest-api-client-base.ts +24 -19
- package/src/integrations/base/rest-api-integration-client.ts +14 -10
- package/src/integrations/base/types.ts +66 -11
- package/src/integrations/box/README.md +4 -60
- package/src/integrations/cosmosdb/client.ts +8 -7
- package/src/integrations/documentation-resolver.test.ts +130 -1
- package/src/integrations/dropbox/README.md +1 -71
- package/src/integrations/dropbox/docs.manifest.json +10 -1
- package/src/integrations/dropbox/overlays/upload-unsupported.md +3 -0
- package/src/integrations/dropbox/overlays/upload.md +89 -0
- package/src/integrations/dynamodb/client.ts +8 -7
- package/src/integrations/elasticsearch/README.md +0 -80
- package/src/integrations/elasticsearch/docs.manifest.json +10 -1
- package/src/integrations/elasticsearch/overlays/bulk-unsupported.md +3 -0
- package/src/integrations/elasticsearch/overlays/bulk.md +80 -0
- package/src/integrations/gcs/client.ts +8 -7
- package/src/integrations/googledrive/README.md +10 -36
- package/src/integrations/gsheets/client.ts +8 -7
- package/src/integrations/jira/README.md +0 -26
- package/src/integrations/jira/docs.manifest.json +10 -1
- package/src/integrations/jira/overlays/attachments-unsupported.md +3 -0
- package/src/integrations/jira/overlays/attachments.md +30 -0
- package/src/integrations/lakebase/README.md +1 -3
- package/src/integrations/mongodb/client.ts +8 -7
- package/src/integrations/postgres/README.md +1 -3
- package/src/integrations/restapiintegration/client.body-types.test.ts +323 -0
- package/src/integrations/restapiintegration/client.test.ts +68 -32
- package/src/integrations/restapiintegration/docs.manifest.json +8 -0
- package/src/integrations/restapiintegration/overlays/request-body-types-unsupported.md +7 -0
- package/src/integrations/restapiintegration/overlays/request-body-types.md +115 -0
- package/src/integrations/restapiintegration/overlays/response-types-binary.md +4 -8
- package/src/integrations/s3/client.ts +8 -7
- package/src/integrations/salesforce/client.ts +9 -7
- package/src/integrations/slack/client.test.ts +30 -0
- package/src/integrations/slack/client.ts +13 -19
- package/src/integrations/snowflakepostgres/README.md +1 -3
- package/src/integrations/stabilityai/README.md +0 -87
- package/src/integrations/stabilityai/docs.manifest.json +10 -1
- package/src/integrations/stabilityai/overlays/image-uploads-unsupported.md +3 -0
- package/src/integrations/stabilityai/overlays/image-uploads.md +120 -0
- package/src/integrations/stripe/README.md +0 -201
- package/src/integrations/stripe/docs.manifest.json +10 -1
- package/src/integrations/stripe/overlays/request-bodies-unsupported.md +3 -0
- package/src/integrations/stripe/overlays/request-bodies.md +204 -0
- package/src/integrations/utils.ts +51 -1
|
@@ -5,5 +5,6 @@ export { RestApiClientBase } from "./rest-api-client-base.js";
|
|
|
5
5
|
export { RestApiIntegrationClient } from "./rest-api-integration-client.js";
|
|
6
6
|
export type { RestApiRequest } from "./rest-api-client-base.js";
|
|
7
7
|
export { GraphQLIntegrationClient } from "./graphql-integration-client.js";
|
|
8
|
-
export
|
|
8
|
+
export { REST_API_BODY_TYPES } from "./types.js";
|
|
9
|
+
export type { ApiRequestOptions, ApiRequestSchema, BinaryApiRequestSchema, RestApiBodyType, RestApiResponseType, SupportsApiRequest, } from "./types.js";
|
|
9
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/integrations/base/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,YAAY,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,YAAY,EACV,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/integrations/base/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,YAAY,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,YAAY,EACV,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,YAAY,CAAC"}
|
|
@@ -4,4 +4,5 @@
|
|
|
4
4
|
export { RestApiClientBase } from "./rest-api-client-base.js";
|
|
5
5
|
export { RestApiIntegrationClient } from "./rest-api-integration-client.js";
|
|
6
6
|
export { GraphQLIntegrationClient } from "./graphql-integration-client.js";
|
|
7
|
+
export { REST_API_BODY_TYPES } from "./types.js";
|
|
7
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integrations/base/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAE5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integrations/base/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAE5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { PartialMessage } from "@bufbuild/protobuf";
|
|
2
|
+
import type { Property } from "@superblocksteam/types/dist/src/common/v1/plugin_pb";
|
|
3
|
+
type RequestBodyWireType = "jsonBody" | "rawBody" | "formDataBase64" | "binaryBody";
|
|
4
|
+
/**
|
|
5
|
+
* Fields safe to spread directly onto the proto `RestApiRequest`. Never
|
|
6
|
+
* carries `contentType`: that is a header directive, not a wire field, and
|
|
7
|
+
* lives on `EncodedRequestBody` instead so a caller cannot spread it onto
|
|
8
|
+
* the wire message by mistake.
|
|
9
|
+
*/
|
|
10
|
+
export type RequestBodyWireFields = {
|
|
11
|
+
readonly body?: string;
|
|
12
|
+
readonly formData?: PartialMessage<Property>[];
|
|
13
|
+
readonly bodyType?: RequestBodyWireType;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* The encoder's full result: wire fields plus an optional Content-Type the
|
|
17
|
+
* caller must push onto request headers itself.
|
|
18
|
+
*/
|
|
19
|
+
export type EncodedRequestBody = {
|
|
20
|
+
readonly wire: RequestBodyWireFields;
|
|
21
|
+
readonly contentType?: string;
|
|
22
|
+
};
|
|
23
|
+
export declare function encodeRequestBody(input: {
|
|
24
|
+
body: unknown;
|
|
25
|
+
bodyType?: unknown;
|
|
26
|
+
headers?: Record<string, string>;
|
|
27
|
+
}): EncodedRequestBody;
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=request-body.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-body.d.ts","sourceRoot":"","sources":["../../../src/integrations/base/request-body.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qDAAqD,CAAC;AAQpF,KAAK,mBAAmB,GACpB,UAAU,GACV,SAAS,GACT,gBAAgB,GAChB,YAAY,CAAC;AAEjB;;;;;GAKG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC/C,QAAQ,CAAC,QAAQ,CAAC,EAAE,mBAAmB,CAAC;CACzC,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAIF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,GAAG,kBAAkB,CA+BrB"}
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { findBinaryDataPath, isBinaryData } from "../../errors.js";
|
|
3
|
+
import { describeOptionValue, validationError } from "../utils.js";
|
|
4
|
+
import { REST_API_BODY_TYPES } from "./types.js";
|
|
5
|
+
const requestBodyTypeSchema = z.enum(REST_API_BODY_TYPES);
|
|
6
|
+
export function encodeRequestBody(input) {
|
|
7
|
+
const bodyTypeResult = requestBodyTypeSchema.safeParse(input.bodyType === undefined ? "json" : input.bodyType);
|
|
8
|
+
if (!bodyTypeResult.success) {
|
|
9
|
+
throw validationError(`Unsupported bodyType ${describeOptionValue(input.bodyType)} - expected one of: ${REST_API_BODY_TYPES.join(", ")}`, ["bodyType"]);
|
|
10
|
+
}
|
|
11
|
+
const bodyType = bodyTypeResult.data;
|
|
12
|
+
if (input.body === undefined) {
|
|
13
|
+
if (bodyType === "json")
|
|
14
|
+
return { wire: {} };
|
|
15
|
+
throw validationError(`bodyType "${bodyType}" requires a request body`, [
|
|
16
|
+
"body",
|
|
17
|
+
]);
|
|
18
|
+
}
|
|
19
|
+
switch (bodyType) {
|
|
20
|
+
case "json":
|
|
21
|
+
return { wire: encodeJsonBody(input.body) };
|
|
22
|
+
case "raw":
|
|
23
|
+
return { wire: encodeRawBody(input.body) };
|
|
24
|
+
case "formUrlencoded":
|
|
25
|
+
return encodeFormUrlencodedBody(input.body, input.headers);
|
|
26
|
+
case "multipartForm":
|
|
27
|
+
return { wire: encodeMultipartFormBody(input.body, input.headers) };
|
|
28
|
+
case "binary":
|
|
29
|
+
return encodeBinaryBody(input.body, input.headers);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
// JSON.stringify's own error text is unbounded: a circular-structure message
|
|
33
|
+
// embeds the caller's full property path and constructor names, and a
|
|
34
|
+
// throwing toJSON()/getter contributes an arbitrary caller-authored string.
|
|
35
|
+
// Every other message in this module goes through describeOptionValue's
|
|
36
|
+
// bounded conventions; classify the failure instead of echoing its text.
|
|
37
|
+
function describeJsonSerializationFailure(error) {
|
|
38
|
+
if (error instanceof TypeError &&
|
|
39
|
+
/circular (structure|reference)/i.test(error.message)) {
|
|
40
|
+
return "the body contains a circular reference";
|
|
41
|
+
}
|
|
42
|
+
if (error instanceof TypeError && /BigInt/i.test(error.message)) {
|
|
43
|
+
return "the body contains a BigInt value";
|
|
44
|
+
}
|
|
45
|
+
return "a nested value's toJSON, toString, or getter threw while serializing the body";
|
|
46
|
+
}
|
|
47
|
+
function encodeJsonBody(body) {
|
|
48
|
+
if (isBinaryData(body)) {
|
|
49
|
+
throw validationError('Binary request bodies require bodyType: "binary"', [
|
|
50
|
+
"body",
|
|
51
|
+
]);
|
|
52
|
+
}
|
|
53
|
+
// The walk itself only ever throws MAX_BINARY_SCAN_DEPTH's RangeError
|
|
54
|
+
// (see errors.ts); anything else (a throwing getter, an unusual toJSON)
|
|
55
|
+
// is left for JSON.stringify to judge below, which reports the same
|
|
56
|
+
// failure as a serialization error. A depth-capped walk fails closed
|
|
57
|
+
// instead: treat the body as containing binary at an unknown location
|
|
58
|
+
// rather than assume none, because JSON.stringify does not throw on a
|
|
59
|
+
// Uint8Array/Buffer/typed array -- the exact shape this check exists to
|
|
60
|
+
// catch -- it silently serializes them into digit-keyed garbage.
|
|
61
|
+
let binaryPath;
|
|
62
|
+
try {
|
|
63
|
+
binaryPath = findBinaryDataPath(body, isBinaryData);
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
binaryPath = error instanceof RangeError ? [] : undefined;
|
|
67
|
+
}
|
|
68
|
+
if (binaryPath !== undefined) {
|
|
69
|
+
const location = binaryPath.length > 0
|
|
70
|
+
? ` at ${describeOptionValue(binaryPath.join("."))}`
|
|
71
|
+
: "";
|
|
72
|
+
throw validationError(`bodyType "json" request body contains binary data${location}; send file parts with bodyType: "multipartForm" as { value, filename }, or send bytes alone with bodyType: "binary"`, ["body", ...binaryPath]);
|
|
73
|
+
}
|
|
74
|
+
let serialized;
|
|
75
|
+
try {
|
|
76
|
+
serialized = JSON.stringify(body);
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
throw validationError(`bodyType "json" request body is not JSON-serializable: ${describeJsonSerializationFailure(error)}`, ["body"]);
|
|
80
|
+
}
|
|
81
|
+
if (serialized === undefined) {
|
|
82
|
+
throw validationError(`bodyType "json" cannot serialize a ${typeof body} request body`, ["body"]);
|
|
83
|
+
}
|
|
84
|
+
return { body: serialized, bodyType: "jsonBody" };
|
|
85
|
+
}
|
|
86
|
+
function encodeRawBody(body) {
|
|
87
|
+
if (typeof body !== "string" || body.length === 0) {
|
|
88
|
+
throw validationError('bodyType "raw" requires a non-empty string request body', ["body"]);
|
|
89
|
+
}
|
|
90
|
+
return { body, bodyType: "rawBody" };
|
|
91
|
+
}
|
|
92
|
+
// A field's value may be a scalar or an array; either way, undefined items
|
|
93
|
+
// (an explicitly-undefined optional field, or an undefined array element)
|
|
94
|
+
// are omitted rather than encoded, matching JSON.stringify's default-body
|
|
95
|
+
// semantics. Shared by encodeFormUrlencodedBody and encodeMultipartFormBody.
|
|
96
|
+
function definedArrayValues(value) {
|
|
97
|
+
return (Array.isArray(value) ? value : [value]).filter((item) => item !== undefined);
|
|
98
|
+
}
|
|
99
|
+
function encodeFormUrlencodedBody(body, headers) {
|
|
100
|
+
if (!isPlainRecord(body)) {
|
|
101
|
+
throw validationError('bodyType "formUrlencoded" requires a plain object request body', ["body"]);
|
|
102
|
+
}
|
|
103
|
+
const pairs = [];
|
|
104
|
+
for (const [key, value] of Object.entries(body)) {
|
|
105
|
+
if (value === undefined)
|
|
106
|
+
continue;
|
|
107
|
+
if (key.length === 0) {
|
|
108
|
+
throw validationError("formUrlencoded body keys must be non-empty strings", ["body", key]);
|
|
109
|
+
}
|
|
110
|
+
const encodedKey = formUrlencode(key, key);
|
|
111
|
+
for (const item of definedArrayValues(value)) {
|
|
112
|
+
pairs.push(`${encodedKey}=${formUrlencode(formUrlencodedPrimitiveToString(key, item), key)}`);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
if (pairs.length === 0) {
|
|
116
|
+
throw validationError("formUrlencoded body must encode at least one field", ["body"]);
|
|
117
|
+
}
|
|
118
|
+
return {
|
|
119
|
+
wire: { body: pairs.join("&"), bodyType: "rawBody" },
|
|
120
|
+
contentType: contentTypeIfMissing(headers, "application/x-www-form-urlencoded"),
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
// The WASM sdk-api sandbox has no URLSearchParams global, so encode by hand.
|
|
124
|
+
// encodeURIComponent's unreserved set leaves `! ' ( ) ~` unescaped, but the
|
|
125
|
+
// WHATWG application/x-www-form-urlencoded safe set (what URLSearchParams
|
|
126
|
+
// produces) escapes those five; only alphanumerics, `* - . _`, and space
|
|
127
|
+
// (as `+`) stay literal.
|
|
128
|
+
function formUrlencode(value, key) {
|
|
129
|
+
try {
|
|
130
|
+
return encodeURIComponent(value)
|
|
131
|
+
.replace(/%20/g, "+")
|
|
132
|
+
.replace(/[!'()~]/g, (char) => `%${char.charCodeAt(0).toString(16).toUpperCase()}`);
|
|
133
|
+
}
|
|
134
|
+
catch {
|
|
135
|
+
throw validationError(`formUrlencoded field ${describeOptionValue(key)} contains a lone surrogate and cannot be percent-encoded`, ["body", key]);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
function formUrlencodedPrimitiveToString(key, value) {
|
|
139
|
+
if (typeof value === "string" || typeof value === "boolean")
|
|
140
|
+
return String(value);
|
|
141
|
+
if (typeof value === "number" && Number.isFinite(value))
|
|
142
|
+
return String(value);
|
|
143
|
+
if (typeof value === "object" && value !== null) {
|
|
144
|
+
throw validationError(`formUrlencoded field ${describeOptionValue(key)} is nested; flatten it using bracket notation such as "metadata[order_id]"`, ["body", key]);
|
|
145
|
+
}
|
|
146
|
+
throw validationError(`formUrlencoded field ${describeOptionValue(key)} must be a string, finite number, boolean, or array of those values`, ["body", key]);
|
|
147
|
+
}
|
|
148
|
+
function encodeBinaryBody(body, headers) {
|
|
149
|
+
if (!isBinaryData(body)) {
|
|
150
|
+
throw validationError('bodyType "binary" requires an ArrayBuffer or ArrayBufferView request body', ["body"]);
|
|
151
|
+
}
|
|
152
|
+
if (body.byteLength === 0) {
|
|
153
|
+
throw validationError("binary request bodies must be non-empty", ["body"]);
|
|
154
|
+
}
|
|
155
|
+
return {
|
|
156
|
+
wire: { body: toBuffer(body).toString("base64"), bodyType: "binaryBody" },
|
|
157
|
+
contentType: contentTypeIfMissing(headers, "application/octet-stream"),
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
function encodeMultipartFormBody(body, headers) {
|
|
161
|
+
if (hasHeader(headers, "content-type")) {
|
|
162
|
+
throw validationError("multipartForm bodies cannot provide Content-Type because the multipart boundary is generated at execution time", ["headers", "Content-Type"]);
|
|
163
|
+
}
|
|
164
|
+
if (!isPlainRecord(body)) {
|
|
165
|
+
throw validationError('bodyType "multipartForm" requires a plain object request body', ["body"]);
|
|
166
|
+
}
|
|
167
|
+
const formData = Object.entries(body).flatMap(([key, value]) => definedArrayValues(value).map((item) => parseMultipartPart(key, item)));
|
|
168
|
+
if (formData.length === 0) {
|
|
169
|
+
throw validationError("multipartForm body must encode at least one field", [
|
|
170
|
+
"body",
|
|
171
|
+
]);
|
|
172
|
+
}
|
|
173
|
+
return { bodyType: "formDataBase64", formData };
|
|
174
|
+
}
|
|
175
|
+
function parseMultipartPart(key, value) {
|
|
176
|
+
if (key.length === 0)
|
|
177
|
+
throw validationError("multipartForm body keys must be non-empty strings", [
|
|
178
|
+
"body",
|
|
179
|
+
key,
|
|
180
|
+
]);
|
|
181
|
+
if (typeof value === "string" ||
|
|
182
|
+
typeof value === "boolean" ||
|
|
183
|
+
(typeof value === "number" && Number.isFinite(value))) {
|
|
184
|
+
return { key, value: String(value) };
|
|
185
|
+
}
|
|
186
|
+
if (isBinaryData(value)) {
|
|
187
|
+
throw validationError(`multipartForm binary field ${describeOptionValue(key)} must be wrapped as { value, filename }`, ["body", key]);
|
|
188
|
+
}
|
|
189
|
+
if (!isPlainRecord(value)) {
|
|
190
|
+
throw validationError(`multipartForm field ${describeOptionValue(key)} must be a primitive value or { value, filename } file part`, ["body", key]);
|
|
191
|
+
}
|
|
192
|
+
const keys = Object.keys(value).filter((partKey) => value[partKey] !== undefined);
|
|
193
|
+
const missingKeys = ["value", "filename"].filter((requiredKey) => !keys.includes(requiredKey));
|
|
194
|
+
if (missingKeys.length > 0) {
|
|
195
|
+
throw validationError(`multipartForm file part ${describeOptionValue(key)} is missing required ${pluralize("key", missingKeys)}: ${missingKeys.join(", ")}`, ["body", key]);
|
|
196
|
+
}
|
|
197
|
+
const unexpectedKeys = keys.filter((partKey) => partKey !== "value" && partKey !== "filename");
|
|
198
|
+
if (unexpectedKeys.length > 0) {
|
|
199
|
+
const shown = unexpectedKeys.slice(0, 5).map(describeOptionValue);
|
|
200
|
+
const suffix = unexpectedKeys.length > 5 ? ", ..." : "";
|
|
201
|
+
throw validationError(`multipartForm file part ${describeOptionValue(key)} has unexpected ${pluralize("key", unexpectedKeys)}: ${shown.join(", ")}${suffix}`, ["body", key]);
|
|
202
|
+
}
|
|
203
|
+
if (typeof value.filename !== "string" || value.filename.length === 0) {
|
|
204
|
+
throw validationError(`multipartForm file part ${describeOptionValue(key)} requires a non-empty filename`, ["body", key, "filename"]);
|
|
205
|
+
}
|
|
206
|
+
if (typeof value.value !== "string" && !isBinaryData(value.value)) {
|
|
207
|
+
throw validationError(`multipartForm file part ${describeOptionValue(key)} value must be a string or binary body`, ["body", key, "value"]);
|
|
208
|
+
}
|
|
209
|
+
return {
|
|
210
|
+
key,
|
|
211
|
+
value: toBuffer(value.value).toString("base64"),
|
|
212
|
+
file: { filename: value.filename },
|
|
213
|
+
};
|
|
214
|
+
}
|
|
215
|
+
function isPlainRecord(value) {
|
|
216
|
+
if (typeof value !== "object" || value === null || Array.isArray(value))
|
|
217
|
+
return false;
|
|
218
|
+
const prototype = Object.getPrototypeOf(value);
|
|
219
|
+
return prototype === Object.prototype || prototype === null;
|
|
220
|
+
}
|
|
221
|
+
function toBuffer(value) {
|
|
222
|
+
if (typeof value === "string")
|
|
223
|
+
return Buffer.from(value, "utf8");
|
|
224
|
+
if (value instanceof ArrayBuffer)
|
|
225
|
+
return Buffer.from(value);
|
|
226
|
+
return Buffer.from(value.buffer, value.byteOffset, value.byteLength);
|
|
227
|
+
}
|
|
228
|
+
function contentTypeIfMissing(headers, value) {
|
|
229
|
+
return hasHeader(headers, "content-type") ? undefined : value;
|
|
230
|
+
}
|
|
231
|
+
function hasHeader(headers, headerName) {
|
|
232
|
+
return (!!headers &&
|
|
233
|
+
Object.keys(headers).some((key) => key.toLowerCase() === headerName.toLowerCase()));
|
|
234
|
+
}
|
|
235
|
+
function pluralize(word, values) {
|
|
236
|
+
return values.length === 1 ? word : `${word}s`;
|
|
237
|
+
}
|
|
238
|
+
//# sourceMappingURL=request-body.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-body.js","sourceRoot":"","sources":["../../../src/integrations/base/request-body.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-body.test.d.ts","sourceRoot":"","sources":["../../../src/integrations/base/request-body.test.ts"],"names":[],"mappings":""}
|