callman-core 1.8.6 → 1.8.8
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/dist/contract/contractValidator.d.ts.map +1 -1
- package/dist/contract/contractValidator.js +10 -1
- package/dist/contract/contractValidator.js.map +1 -1
- package/dist/contract/formats.d.ts +8 -0
- package/dist/contract/formats.d.ts.map +1 -0
- package/dist/contract/formats.js +235 -0
- package/dist/contract/formats.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/request/executeRequest.d.ts.map +1 -1
- package/dist/request/executeRequest.js +39 -3
- package/dist/request/executeRequest.js.map +1 -1
- package/dist/scenario-runner/adapters/helpers/request-helpers.d.ts +1 -0
- package/dist/scenario-runner/adapters/helpers/request-helpers.d.ts.map +1 -1
- package/dist/scenario-runner/adapters/helpers/request-helpers.js +34 -1
- package/dist/scenario-runner/adapters/helpers/request-helpers.js.map +1 -1
- package/dist/scenario-runner/adapters/request-executor.d.ts.map +1 -1
- package/dist/scenario-runner/adapters/request-executor.js +2 -0
- package/dist/scenario-runner/adapters/request-executor.js.map +1 -1
- package/dist/scenario-runner/adapters/types.d.ts +2 -0
- package/dist/scenario-runner/adapters/types.d.ts.map +1 -1
- package/dist/scenario-runner/types.d.ts +4 -0
- package/dist/scenario-runner/types.d.ts.map +1 -1
- package/dist/script/types.d.ts +1 -0
- package/dist/script/types.d.ts.map +1 -1
- package/dist/types/index.d.ts +4 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/xml.d.ts +22 -0
- package/dist/utils/xml.d.ts.map +1 -0
- package/dist/utils/xml.js +75 -0
- package/dist/utils/xml.js.map +1 -0
- package/dist-cjs/contract/contractValidator.js +10 -1
- package/dist-cjs/contract/contractValidator.js.map +1 -1
- package/dist-cjs/contract/formats.js +239 -0
- package/dist-cjs/contract/formats.js.map +1 -0
- package/dist-cjs/index.js +10 -1
- package/dist-cjs/index.js.map +1 -1
- package/dist-cjs/request/executeRequest.js +39 -3
- package/dist-cjs/request/executeRequest.js.map +1 -1
- package/dist-cjs/scenario-runner/adapters/helpers/request-helpers.js +36 -2
- package/dist-cjs/scenario-runner/adapters/helpers/request-helpers.js.map +1 -1
- package/dist-cjs/scenario-runner/adapters/request-executor.js +2 -0
- package/dist-cjs/scenario-runner/adapters/request-executor.js.map +1 -1
- package/dist-cjs/utils/xml.js +81 -0
- package/dist-cjs/utils/xml.js.map +1 -0
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contractValidator.d.ts","sourceRoot":"","sources":["../../src/contract/contractValidator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EAEZ,oBAAoB,EACpB,UAAU,EACX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAuB,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"contractValidator.d.ts","sourceRoot":"","sources":["../../src/contract/contractValidator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EAEZ,oBAAoB,EACpB,UAAU,EACX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAuB,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AA8RhF,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAUD,eAAO,MAAM,yBAAyB,GACpC,UAAU,YAAY,EACtB,WAAW,iBAAiB,EAC5B,MAAM,MAAM,KACX,wBAAwE,CAAC;AAM5E,eAAO,MAAM,qBAAqB,GAChC,UAAU,OAAO,KAChB,YAAY,GAAG,IAAmC,CAAC;AAyHtD,eAAO,MAAM,iBAAiB,GAC5B,WAAW,GAAG,EAAE,GAAG,SAAS,EAC5B,UAAU,oBAAoB,KAC7B,UAAU,EA+EZ,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { resolveContractPath } from "./pathResolver.js";
|
|
2
|
+
import { FORMAT_VALIDATORS } from "./formats.js";
|
|
2
3
|
const isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
3
4
|
const getValueType = (value) => {
|
|
4
5
|
if (value === null) {
|
|
@@ -83,6 +84,7 @@ const normalizeContract = (contract) => {
|
|
|
83
84
|
: undefined,
|
|
84
85
|
pattern: typeof rules.pattern === "string" ? rules.pattern : undefined,
|
|
85
86
|
contains: typeof rules.contains === "string" ? rules.contains : undefined,
|
|
87
|
+
format: typeof rules.format === "string" ? rules.format : undefined,
|
|
86
88
|
},
|
|
87
89
|
};
|
|
88
90
|
if (Object.prototype.hasOwnProperty.call(contract, "equals")) {
|
|
@@ -138,10 +140,17 @@ const validateExtendedRules = (path, value, contract) => {
|
|
|
138
140
|
rules.maxLength !== undefined ||
|
|
139
141
|
rules.pattern !== undefined ||
|
|
140
142
|
rules.enumValues !== undefined ||
|
|
141
|
-
rules.contains !== undefined
|
|
143
|
+
rules.contains !== undefined ||
|
|
144
|
+
rules.format !== undefined) {
|
|
142
145
|
if (typeof value !== "string") {
|
|
143
146
|
return `${path} expected string but got ${actualType}`;
|
|
144
147
|
}
|
|
148
|
+
if (rules.format) {
|
|
149
|
+
const validator = FORMAT_VALIDATORS[rules.format];
|
|
150
|
+
if (validator && !validator.test(value)) {
|
|
151
|
+
return `${path} is not a valid ${validator.label}`;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
145
154
|
if (rules.minLength !== undefined && value.length < rules.minLength) {
|
|
146
155
|
return `${path} length expected at least ${rules.minLength}, got ${value.length}`;
|
|
147
156
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contractValidator.js","sourceRoot":"","sources":["../../src/contract/contractValidator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"contractValidator.js","sourceRoot":"","sources":["../../src/contract/contractValidator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const SCENARIO_CONTRACT_FORMATS: readonly ["email", "url", "uuid", "uuidV1", "uuidV4", "uuidV7", "jwt", "base64", "base64url", "base64Pdf", "base64Png", "base64Jpeg", "base64Gif", "base64Webp", "base64Image", "base64Zip", "base64Office", "datetime", "date", "time", "ipv4", "ipv6", "hostname", "json", "numeric", "integer", "alpha", "alphanumeric", "hex", "hexColor", "slug", "semver", "objectId", "creditCard", "phone"];
|
|
2
|
+
export type ContractFormat = (typeof SCENARIO_CONTRACT_FORMATS)[number];
|
|
3
|
+
export declare const FORMAT_VALIDATORS: Record<ContractFormat, {
|
|
4
|
+
label: string;
|
|
5
|
+
test: (value: string) => boolean;
|
|
6
|
+
}>;
|
|
7
|
+
export declare const isContractFormat: (value: unknown) => value is ContractFormat;
|
|
8
|
+
//# sourceMappingURL=formats.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formats.d.ts","sourceRoot":"","sources":["../../src/contract/formats.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,yBAAyB,qYAqC5B,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAC;AA6IxE,eAAO,MAAM,iBAAiB,EAAE,MAAM,CACpC,cAAc,EACd;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAA;CAAE,CAiEpD,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,cACF,CAAC"}
|
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
// Named string-format validators for contract assertions. Aligned with the
|
|
2
|
+
// JSON-Schema `format` vocabulary plus a few API-testing-specific additions
|
|
3
|
+
// (jwt, base64, objectId, semver, creditCard, phone). Each validator is a
|
|
4
|
+
// pure predicate over a string. Used by `validateExtendedRules` and surfaced
|
|
5
|
+
// in the desktop contract-rule editor.
|
|
6
|
+
export const SCENARIO_CONTRACT_FORMATS = [
|
|
7
|
+
"email",
|
|
8
|
+
"url",
|
|
9
|
+
"uuid",
|
|
10
|
+
"uuidV1",
|
|
11
|
+
"uuidV4",
|
|
12
|
+
"uuidV7",
|
|
13
|
+
"jwt",
|
|
14
|
+
"base64",
|
|
15
|
+
"base64url",
|
|
16
|
+
// base64-encoded file detected by magic number (decoded signature).
|
|
17
|
+
"base64Pdf",
|
|
18
|
+
"base64Png",
|
|
19
|
+
"base64Jpeg",
|
|
20
|
+
"base64Gif",
|
|
21
|
+
"base64Webp",
|
|
22
|
+
"base64Image",
|
|
23
|
+
"base64Zip",
|
|
24
|
+
"base64Office",
|
|
25
|
+
"datetime",
|
|
26
|
+
"date",
|
|
27
|
+
"time",
|
|
28
|
+
"ipv4",
|
|
29
|
+
"ipv6",
|
|
30
|
+
"hostname",
|
|
31
|
+
"json",
|
|
32
|
+
"numeric",
|
|
33
|
+
"integer",
|
|
34
|
+
"alpha",
|
|
35
|
+
"alphanumeric",
|
|
36
|
+
"hex",
|
|
37
|
+
"hexColor",
|
|
38
|
+
"slug",
|
|
39
|
+
"semver",
|
|
40
|
+
"objectId",
|
|
41
|
+
"creditCard",
|
|
42
|
+
"phone",
|
|
43
|
+
];
|
|
44
|
+
const EMAIL_RE = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
|
45
|
+
// Generic UUID: any RFC 9562 version (1–8) with the 10xx variant nibble.
|
|
46
|
+
const UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
|
|
47
|
+
// Version-specific UUID matchers (the 13th hex digit is the version).
|
|
48
|
+
const uuidVersionRe = (version) => new RegExp(`^[0-9a-f]{8}-[0-9a-f]{4}-${version}[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$`, "i");
|
|
49
|
+
const UUID_V1_RE = uuidVersionRe(1);
|
|
50
|
+
const UUID_V4_RE = uuidVersionRe(4);
|
|
51
|
+
const UUID_V7_RE = uuidVersionRe(7);
|
|
52
|
+
const JWT_RE = /^[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+$/;
|
|
53
|
+
const BASE64_RE = /^[A-Za-z0-9+/]+={0,2}$/;
|
|
54
|
+
const BASE64URL_RE = /^[A-Za-z0-9_-]+$/;
|
|
55
|
+
const DATETIME_RE = /^\d{4}-\d{2}-\d{2}[Tt]\d{2}:\d{2}(:\d{2})?(\.\d+)?([Zz]|[+-]\d{2}:\d{2})?$/;
|
|
56
|
+
const DATE_RE = /^\d{4}-\d{2}-\d{2}$/;
|
|
57
|
+
const TIME_RE = /^\d{2}:\d{2}(:\d{2})?(\.\d+)?$/;
|
|
58
|
+
const IPV4_RE = /^(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}$/;
|
|
59
|
+
const IPV6_RE = /^(([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}|([0-9a-f]{1,4}:){1,7}:|::([0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4}|([0-9a-f]{1,4}:){1,6}:[0-9a-f]{1,4})$/i;
|
|
60
|
+
const HOSTNAME_RE = /^(?=.{1,253}$)([a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)(\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i;
|
|
61
|
+
const NUMERIC_RE = /^-?\d+(\.\d+)?$/;
|
|
62
|
+
const INTEGER_RE = /^-?\d+$/;
|
|
63
|
+
const ALPHA_RE = /^[A-Za-z]+$/;
|
|
64
|
+
const ALPHANUMERIC_RE = /^[A-Za-z0-9]+$/;
|
|
65
|
+
const HEX_RE = /^[0-9a-f]+$/i;
|
|
66
|
+
const HEX_COLOR_RE = /^#?([0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i;
|
|
67
|
+
const SLUG_RE = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
|
|
68
|
+
const SEMVER_RE = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;
|
|
69
|
+
const OBJECT_ID_RE = /^[0-9a-f]{24}$/i;
|
|
70
|
+
const PHONE_E164_RE = /^\+[1-9]\d{1,14}$/;
|
|
71
|
+
const isUrl = (value) => {
|
|
72
|
+
try {
|
|
73
|
+
// eslint-disable-next-line no-new
|
|
74
|
+
new URL(value);
|
|
75
|
+
return true;
|
|
76
|
+
}
|
|
77
|
+
catch {
|
|
78
|
+
return false;
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
const isJson = (value) => {
|
|
82
|
+
try {
|
|
83
|
+
JSON.parse(value);
|
|
84
|
+
return true;
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
};
|
|
90
|
+
// Decode the LEADING bytes of a base64 / base64url string (enough for a file
|
|
91
|
+
// magic-number check) without decoding the whole payload. Returns null on
|
|
92
|
+
// invalid input. Works in both Node (atob global / Buffer) and the browser.
|
|
93
|
+
const decodeBase64Head = (value) => {
|
|
94
|
+
try {
|
|
95
|
+
const normalized = value
|
|
96
|
+
.trim()
|
|
97
|
+
// Strip a leading data-URI prefix (e.g. "data:image/png;base64,").
|
|
98
|
+
.replace(/^data:[^,]*,/i, "")
|
|
99
|
+
.replace(/\s+/g, "")
|
|
100
|
+
.replace(/-/g, "+")
|
|
101
|
+
.replace(/_/g, "/");
|
|
102
|
+
if (normalized.length < 4)
|
|
103
|
+
return null;
|
|
104
|
+
// 24 base64 chars → 18 bytes (covers every signature below). Trim to a
|
|
105
|
+
// multiple of 4 so the prefix decodes cleanly.
|
|
106
|
+
const headLen = Math.min(24, normalized.length - (normalized.length % 4));
|
|
107
|
+
if (headLen < 4)
|
|
108
|
+
return null;
|
|
109
|
+
const head = normalized.slice(0, headLen);
|
|
110
|
+
const binary = typeof atob === "function"
|
|
111
|
+
? atob(head)
|
|
112
|
+
: // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
113
|
+
globalThis.Buffer.from(head, "base64").toString("binary");
|
|
114
|
+
const bytes = new Uint8Array(binary.length);
|
|
115
|
+
for (let i = 0; i < binary.length; i += 1) {
|
|
116
|
+
bytes[i] = binary.charCodeAt(i) & 0xff;
|
|
117
|
+
}
|
|
118
|
+
return bytes;
|
|
119
|
+
}
|
|
120
|
+
catch {
|
|
121
|
+
return null;
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
const startsWithBytes = (bytes, signature, offset = 0) => {
|
|
125
|
+
if (bytes.length < offset + signature.length)
|
|
126
|
+
return false;
|
|
127
|
+
return signature.every((byte, i) => bytes[offset + i] === byte);
|
|
128
|
+
};
|
|
129
|
+
// File signatures (magic numbers) over the decoded base64 head.
|
|
130
|
+
const SIG = {
|
|
131
|
+
pdf: [0x25, 0x50, 0x44, 0x46], // %PDF
|
|
132
|
+
png: [0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a],
|
|
133
|
+
jpeg: [0xff, 0xd8, 0xff],
|
|
134
|
+
gif: [0x47, 0x49, 0x46, 0x38], // GIF8
|
|
135
|
+
bmp: [0x42, 0x4d], // BM
|
|
136
|
+
zip: [0x50, 0x4b, 0x03, 0x04], // PK.. (zip, docx, xlsx, pptx)
|
|
137
|
+
ole2: [0xd0, 0xcf, 0x11, 0xe0, 0xa1, 0xb1, 0x1a, 0xe1], // legacy doc/xls/ppt
|
|
138
|
+
riff: [0x52, 0x49, 0x46, 0x46], // RIFF
|
|
139
|
+
webp: [0x57, 0x45, 0x42, 0x50], // WEBP (at offset 8)
|
|
140
|
+
};
|
|
141
|
+
const isBase64File = (value, check) => {
|
|
142
|
+
const bytes = decodeBase64Head(value);
|
|
143
|
+
return bytes !== null && check(bytes);
|
|
144
|
+
};
|
|
145
|
+
const isWebp = (bytes) => startsWithBytes(bytes, SIG.riff) && startsWithBytes(bytes, SIG.webp, 8);
|
|
146
|
+
const isImageBytes = (bytes) => startsWithBytes(bytes, SIG.png) ||
|
|
147
|
+
startsWithBytes(bytes, SIG.jpeg) ||
|
|
148
|
+
startsWithBytes(bytes, SIG.gif) ||
|
|
149
|
+
startsWithBytes(bytes, SIG.bmp) ||
|
|
150
|
+
isWebp(bytes);
|
|
151
|
+
// Luhn check for credit-card numbers (digits, optional spaces/dashes).
|
|
152
|
+
const isCreditCard = (value) => {
|
|
153
|
+
const digits = value.replace(/[\s-]/g, "");
|
|
154
|
+
if (!/^\d{12,19}$/.test(digits))
|
|
155
|
+
return false;
|
|
156
|
+
let sum = 0;
|
|
157
|
+
let double = false;
|
|
158
|
+
for (let i = digits.length - 1; i >= 0; i -= 1) {
|
|
159
|
+
let d = digits.charCodeAt(i) - 48;
|
|
160
|
+
if (double) {
|
|
161
|
+
d *= 2;
|
|
162
|
+
if (d > 9)
|
|
163
|
+
d -= 9;
|
|
164
|
+
}
|
|
165
|
+
sum += d;
|
|
166
|
+
double = !double;
|
|
167
|
+
}
|
|
168
|
+
return sum % 10 === 0;
|
|
169
|
+
};
|
|
170
|
+
export const FORMAT_VALIDATORS = {
|
|
171
|
+
email: { label: "email", test: (v) => EMAIL_RE.test(v) },
|
|
172
|
+
url: { label: "URL", test: isUrl },
|
|
173
|
+
uuid: { label: "UUID (any version)", test: (v) => UUID_RE.test(v) },
|
|
174
|
+
uuidV1: { label: "UUID v1", test: (v) => UUID_V1_RE.test(v) },
|
|
175
|
+
uuidV4: { label: "UUID v4", test: (v) => UUID_V4_RE.test(v) },
|
|
176
|
+
uuidV7: { label: "UUID v7", test: (v) => UUID_V7_RE.test(v) },
|
|
177
|
+
jwt: { label: "JWT", test: (v) => JWT_RE.test(v) },
|
|
178
|
+
base64: { label: "base64", test: (v) => v.length % 4 === 0 && BASE64_RE.test(v) },
|
|
179
|
+
base64url: { label: "base64url", test: (v) => BASE64URL_RE.test(v) },
|
|
180
|
+
base64Pdf: {
|
|
181
|
+
label: "base64 PDF",
|
|
182
|
+
test: (v) => isBase64File(v, (b) => startsWithBytes(b, SIG.pdf)),
|
|
183
|
+
},
|
|
184
|
+
base64Png: {
|
|
185
|
+
label: "base64 PNG image",
|
|
186
|
+
test: (v) => isBase64File(v, (b) => startsWithBytes(b, SIG.png)),
|
|
187
|
+
},
|
|
188
|
+
base64Jpeg: {
|
|
189
|
+
label: "base64 JPEG image",
|
|
190
|
+
test: (v) => isBase64File(v, (b) => startsWithBytes(b, SIG.jpeg)),
|
|
191
|
+
},
|
|
192
|
+
base64Gif: {
|
|
193
|
+
label: "base64 GIF image",
|
|
194
|
+
test: (v) => isBase64File(v, (b) => startsWithBytes(b, SIG.gif)),
|
|
195
|
+
},
|
|
196
|
+
base64Webp: {
|
|
197
|
+
label: "base64 WebP image",
|
|
198
|
+
test: (v) => isBase64File(v, isWebp),
|
|
199
|
+
},
|
|
200
|
+
base64Image: {
|
|
201
|
+
label: "base64 image (PNG/JPEG/GIF/WebP/BMP)",
|
|
202
|
+
test: (v) => isBase64File(v, isImageBytes),
|
|
203
|
+
},
|
|
204
|
+
base64Zip: {
|
|
205
|
+
label: "base64 ZIP / OOXML (zip, docx, xlsx, pptx)",
|
|
206
|
+
test: (v) => isBase64File(v, (b) => startsWithBytes(b, SIG.zip)),
|
|
207
|
+
},
|
|
208
|
+
base64Office: {
|
|
209
|
+
label: "base64 MS Office document (docx/xlsx/pptx or legacy doc/xls/ppt)",
|
|
210
|
+
test: (v) => isBase64File(v, (b) => startsWithBytes(b, SIG.zip) || startsWithBytes(b, SIG.ole2)),
|
|
211
|
+
},
|
|
212
|
+
datetime: {
|
|
213
|
+
label: "ISO-8601 date-time",
|
|
214
|
+
test: (v) => DATETIME_RE.test(v) && !Number.isNaN(Date.parse(v)),
|
|
215
|
+
},
|
|
216
|
+
date: { label: "date (YYYY-MM-DD)", test: (v) => DATE_RE.test(v) && !Number.isNaN(Date.parse(v)) },
|
|
217
|
+
time: { label: "time (HH:MM[:SS])", test: (v) => TIME_RE.test(v) },
|
|
218
|
+
ipv4: { label: "IPv4 address", test: (v) => IPV4_RE.test(v) },
|
|
219
|
+
ipv6: { label: "IPv6 address", test: (v) => IPV6_RE.test(v) },
|
|
220
|
+
hostname: { label: "hostname", test: (v) => HOSTNAME_RE.test(v) },
|
|
221
|
+
json: { label: "JSON string", test: isJson },
|
|
222
|
+
numeric: { label: "numeric string", test: (v) => NUMERIC_RE.test(v) },
|
|
223
|
+
integer: { label: "integer string", test: (v) => INTEGER_RE.test(v) },
|
|
224
|
+
alpha: { label: "alphabetic string", test: (v) => ALPHA_RE.test(v) },
|
|
225
|
+
alphanumeric: { label: "alphanumeric string", test: (v) => ALPHANUMERIC_RE.test(v) },
|
|
226
|
+
hex: { label: "hexadecimal string", test: (v) => HEX_RE.test(v) },
|
|
227
|
+
hexColor: { label: "hex color", test: (v) => HEX_COLOR_RE.test(v) },
|
|
228
|
+
slug: { label: "slug", test: (v) => SLUG_RE.test(v) },
|
|
229
|
+
semver: { label: "semver", test: (v) => SEMVER_RE.test(v) },
|
|
230
|
+
objectId: { label: "Mongo ObjectId", test: (v) => OBJECT_ID_RE.test(v) },
|
|
231
|
+
creditCard: { label: "credit card (Luhn)", test: isCreditCard },
|
|
232
|
+
phone: { label: "E.164 phone", test: (v) => PHONE_E164_RE.test(v) },
|
|
233
|
+
};
|
|
234
|
+
export const isContractFormat = (value) => typeof value === "string" && value in FORMAT_VALIDATORS;
|
|
235
|
+
//# sourceMappingURL=formats.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formats.js","sourceRoot":"","sources":["../../src/contract/formats.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { runCollection } from "./runner/runCollection.js";
|
|
2
2
|
export { runRequest } from "./runner/requestRunner.js";
|
|
3
3
|
export { executeRequest } from "./request/executeRequest.js";
|
|
4
|
+
export { isXmlContentType, parseXml, looksLikeXml, XML_PARSER_OPTIONS, type ParseXmlResult, } from "./utils/xml.js";
|
|
4
5
|
export { EnvStore } from "./variables/envStore.js";
|
|
5
6
|
export { runScript } from "./script/legacy.js";
|
|
6
7
|
export * from "./templating/index.js";
|
|
@@ -11,6 +12,7 @@ export { PendingKafkaDependencyError, isPendingKafkaValue, } from "./script/feat
|
|
|
11
12
|
export { DisabledFeatureDependencyError, isDisabledFeatureValue, } from "./script/features/feature-policy.js";
|
|
12
13
|
export { validateContracts, evaluateContractCandidate, normalizeContractRule, type ContractCandidateOutcome, } from "./contract/contractValidator.js";
|
|
13
14
|
export { resolveContractPath, generalizeContractPath, normalizeContractPathKey, type ResolvedCandidate, } from "./contract/pathResolver.js";
|
|
15
|
+
export { SCENARIO_CONTRACT_FORMATS, FORMAT_VALIDATORS, isContractFormat, type ContractFormat, } from "./contract/formats.js";
|
|
14
16
|
export * from "./scenario-runner/index.js";
|
|
15
17
|
export * from "./types/index.js";
|
|
16
18
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACrE,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,WAAW,EACX,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACnB,WAAW,EACX,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,8BAA8B,EAC9B,sBAAsB,GACvB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,EACrB,KAAK,wBAAwB,GAC9B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,wBAAwB,EACxB,KAAK,iBAAiB,GACvB,MAAM,4BAA4B,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,kBAAkB,EAClB,KAAK,cAAc,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACrE,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,WAAW,EACX,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACnB,WAAW,EACX,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,8BAA8B,EAC9B,sBAAsB,GACvB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,EACrB,KAAK,wBAAwB,GAC9B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,wBAAwB,EACxB,KAAK,iBAAiB,GACvB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,yBAAyB,EACzB,iBAAiB,EACjB,gBAAgB,EAChB,KAAK,cAAc,GACpB,MAAM,uBAAuB,CAAC;AAC/B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { runCollection } from "./runner/runCollection.js";
|
|
2
2
|
export { runRequest } from "./runner/requestRunner.js";
|
|
3
3
|
export { executeRequest } from "./request/executeRequest.js";
|
|
4
|
+
export { isXmlContentType, parseXml, looksLikeXml, XML_PARSER_OPTIONS, } from "./utils/xml.js";
|
|
4
5
|
export { EnvStore } from "./variables/envStore.js";
|
|
5
6
|
export { runScript } from "./script/legacy.js";
|
|
6
7
|
export * from "./templating/index.js";
|
|
@@ -10,6 +11,7 @@ export { PendingKafkaDependencyError, isPendingKafkaValue, } from "./script/feat
|
|
|
10
11
|
export { DisabledFeatureDependencyError, isDisabledFeatureValue, } from "./script/features/feature-policy.js";
|
|
11
12
|
export { validateContracts, evaluateContractCandidate, normalizeContractRule, } from "./contract/contractValidator.js";
|
|
12
13
|
export { resolveContractPath, generalizeContractPath, normalizeContractPathKey, } from "./contract/pathResolver.js";
|
|
14
|
+
export { SCENARIO_CONTRACT_FORMATS, FORMAT_VALIDATORS, isContractFormat, } from "./contract/formats.js";
|
|
13
15
|
export * from "./scenario-runner/index.js";
|
|
14
16
|
export * from "./types/index.js";
|
|
15
17
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAuBrE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,8BAA8B,EAC9B,sBAAsB,GACvB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,GAEtB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,wBAAwB,GAEzB,MAAM,4BAA4B,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,kBAAkB,GAEnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAuBrE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,8BAA8B,EAC9B,sBAAsB,GACvB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,GAEtB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,wBAAwB,GAEzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,yBAAyB,EACzB,iBAAiB,EACjB,gBAAgB,GAEjB,MAAM,uBAAuB,CAAC;AAC/B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executeRequest.d.ts","sourceRoot":"","sources":["../../src/request/executeRequest.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"executeRequest.d.ts","sourceRoot":"","sources":["../../src/request/executeRequest.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAoBnF,eAAO,MAAM,cAAc,GAAU,mDAOlC,mBAAmB,KAAG,OAAO,CAAC,oBAAoB,CAuDpD,CAAC"}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import axios from "axios";
|
|
2
|
+
import { isXmlContentType, parseXml } from "../utils/xml.js";
|
|
2
3
|
const normalizeHeaders = (headers) => Object.fromEntries(Object.entries(headers).map(([key, value]) => [
|
|
3
4
|
key,
|
|
4
5
|
Array.isArray(value) ? value.join(", ") : String(value ?? ""),
|
|
5
6
|
]));
|
|
7
|
+
const findContentType = (headers) => {
|
|
8
|
+
const entry = Object.entries(headers).find(([key]) => key.toLowerCase() === "content-type");
|
|
9
|
+
return entry?.[1] ?? "";
|
|
10
|
+
};
|
|
6
11
|
export const executeRequest = async ({ method, url, headers, query, body, timeoutMs = 30_000, }) => {
|
|
7
12
|
const startedAt = typeof performance !== "undefined" ? performance.now() : Date.now();
|
|
8
13
|
const config = {
|
|
@@ -13,14 +18,45 @@ export const executeRequest = async ({ method, url, headers, query, body, timeou
|
|
|
13
18
|
data: body,
|
|
14
19
|
timeout: timeoutMs,
|
|
15
20
|
validateStatus: () => true,
|
|
21
|
+
// Send string bodies verbatim. Axios's default transformRequest
|
|
22
|
+
// (`stringifySafely`) JSON-stringifies a string when Content-Type is
|
|
23
|
+
// application/json — which would wrap a raw XML/text body in quotes and
|
|
24
|
+
// break the receiving parser. Object bodies still get axios's normal
|
|
25
|
+
// JSON serialization.
|
|
26
|
+
...(typeof body === "string"
|
|
27
|
+
? { transformRequest: [(data) => data] }
|
|
28
|
+
: {}),
|
|
16
29
|
};
|
|
17
30
|
const response = await axios(config);
|
|
18
31
|
const completedAt = typeof performance !== "undefined" ? performance.now() : Date.now();
|
|
32
|
+
const responseHeaders = normalizeHeaders(response.headers);
|
|
33
|
+
const duration = Math.round(completedAt - startedAt);
|
|
34
|
+
// Axios leaves XML bodies as raw strings. Parse them into an object here
|
|
35
|
+
// (single source of truth) so every downstream consumer — collection
|
|
36
|
+
// runner, scenario request executor, contract validation — addresses the
|
|
37
|
+
// response by path exactly as it does for JSON. The raw document is kept
|
|
38
|
+
// in `rawText` for verbatim display.
|
|
39
|
+
let data = response.data;
|
|
40
|
+
let rawText;
|
|
41
|
+
let bodyKind;
|
|
42
|
+
if (typeof data === "string" && isXmlContentType(findContentType(responseHeaders))) {
|
|
43
|
+
const parsed = parseXml(data);
|
|
44
|
+
if (parsed.ok) {
|
|
45
|
+
rawText = data;
|
|
46
|
+
data = parsed.value;
|
|
47
|
+
bodyKind = "xml";
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
bodyKind = "text";
|
|
51
|
+
}
|
|
52
|
+
}
|
|
19
53
|
return {
|
|
20
54
|
status: response.status,
|
|
21
|
-
data
|
|
22
|
-
headers:
|
|
23
|
-
duration
|
|
55
|
+
data,
|
|
56
|
+
headers: responseHeaders,
|
|
57
|
+
duration,
|
|
58
|
+
rawText,
|
|
59
|
+
bodyKind,
|
|
24
60
|
};
|
|
25
61
|
};
|
|
26
62
|
//# sourceMappingURL=executeRequest.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executeRequest.js","sourceRoot":"","sources":["../../src/request/executeRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAA6B,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"executeRequest.js","sourceRoot":"","sources":["../../src/request/executeRequest.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import type { ExecuteRequestResult } from "../../../types/index.js";
|
|
|
2
2
|
import type { RequestScenarioNode, ScenarioRequestResponse } from "../../types.js";
|
|
3
3
|
import type { ScriptRequestState, ScriptResponseState } from "../../../script/types.js";
|
|
4
4
|
export declare const isJsonLike: (value: string) => boolean;
|
|
5
|
+
export declare const contentTypeForRawLanguage: (language: string | undefined) => string;
|
|
5
6
|
export declare const safeJsonParse: (value: string) => unknown | null;
|
|
6
7
|
export declare const normalizeHeaderPairs: (headers: Record<string, string>) => Array<{
|
|
7
8
|
key: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-helpers.d.ts","sourceRoot":"","sources":["../../../../src/scenario-runner/adapters/helpers/request-helpers.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,KAAK,EACV,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAyBlC,eAAO,MAAM,UAAU,GAAI,OAAO,MAAM,KAAG,OAG1C,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,OAAO,MAAM,KAAG,OAAO,GAAG,IAMvD,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAC9B,KAAK,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAC0B,CAAC;AAElE,eAAO,MAAM,UAAU,GAAI,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,MAAM,KAAG,MAK1E,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAG,MAAM,EASxE,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,OAAO,OAAO,KAAG,MAYvD,CAAC;AAMF,eAAO,MAAM,kBAAkB,GAC7B,SAAS,kBAAkB,EAC3B,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,EAC/D,cAAc,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,KACtC,IAkCF,CAAC;AAKF,MAAM,WAAW,mBAAmB;IAClC,8CAA8C,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACxE,iCAAiC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC;IAC3F,6BAA6B,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC;CACxF;AAED,eAAO,MAAM,kBAAkB,GAC7B,SAAS,kBAAkB,EAC3B,SAAS,mBAAmB,EAC5B,gBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KACrC,OA+BF,CAAC;AAIF,eAAO,MAAM,0BAA0B,GACrC,MAAM,mBAAmB,KACxB,
|
|
1
|
+
{"version":3,"file":"request-helpers.d.ts","sourceRoot":"","sources":["../../../../src/scenario-runner/adapters/helpers/request-helpers.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,KAAK,EACV,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAyBlC,eAAO,MAAM,UAAU,GAAI,OAAO,MAAM,KAAG,OAG1C,CAAC;AAKF,eAAO,MAAM,yBAAyB,GAAI,UAAU,MAAM,GAAG,SAAS,KAAG,MAYxE,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,OAAO,MAAM,KAAG,OAAO,GAAG,IAMvD,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAC9B,KAAK,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAC0B,CAAC;AAElE,eAAO,MAAM,UAAU,GAAI,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,MAAM,KAAG,MAK1E,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAG,MAAM,EASxE,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,OAAO,OAAO,KAAG,MAYvD,CAAC;AAMF,eAAO,MAAM,kBAAkB,GAC7B,SAAS,kBAAkB,EAC3B,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,EAC/D,cAAc,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,KACtC,IAkCF,CAAC;AAKF,MAAM,WAAW,mBAAmB;IAClC,8CAA8C,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACxE,iCAAiC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC;IAC3F,6BAA6B,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC;CACxF;AAED,eAAO,MAAM,kBAAkB,GAC7B,SAAS,kBAAkB,EAC3B,SAAS,mBAAmB,EAC5B,gBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KACrC,OA+BF,CAAC;AAIF,eAAO,MAAM,0BAA0B,GACrC,MAAM,mBAAmB,KACxB,kBAuBD,CAAC;AAKH,eAAO,MAAM,4BAA4B,GACvC,SAAS,kBAAkB,EAC3B,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,EAC/D,SAAS,mBAAmB,EAC5B,gBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KACrC;IACD,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,IAAI,EAAE,OAAO,CAAC;CAwDf,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAAI,OAAO,OAAO,KAAG,oBAO9D,CAAC;AAEH,eAAO,MAAM,iBAAiB,GAC5B,iBAAiB,oBAAoB,KACpC,uBA0CF,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,UAAU,uBAAuB,KAChC,mBAYD,CAAC"}
|
|
@@ -27,6 +27,22 @@ export const isJsonLike = (value) => {
|
|
|
27
27
|
const trimmed = value.trim();
|
|
28
28
|
return trimmed.startsWith("{") || trimmed.startsWith("[");
|
|
29
29
|
};
|
|
30
|
+
// Auto Content-Type for a raw body sub-format. Keeps parity with the
|
|
31
|
+
// desktop request builder so an XML/text/html body is not mislabelled as
|
|
32
|
+
// JSON (which would make a server's JSON parser reject it).
|
|
33
|
+
export const contentTypeForRawLanguage = (language) => {
|
|
34
|
+
switch (language) {
|
|
35
|
+
case "xml":
|
|
36
|
+
return "application/xml";
|
|
37
|
+
case "html":
|
|
38
|
+
return "text/html";
|
|
39
|
+
case "text":
|
|
40
|
+
return "text/plain";
|
|
41
|
+
case "json":
|
|
42
|
+
default:
|
|
43
|
+
return "application/json";
|
|
44
|
+
}
|
|
45
|
+
};
|
|
30
46
|
export const safeJsonParse = (value) => {
|
|
31
47
|
try {
|
|
32
48
|
return JSON.parse(value);
|
|
@@ -146,6 +162,7 @@ export const createRequestStateFromNode = (node) => ({
|
|
|
146
162
|
body: {
|
|
147
163
|
mode: node.data.config.body.mode,
|
|
148
164
|
raw: node.data.config.body.raw,
|
|
165
|
+
rawLanguage: node.data.config.body.rawLanguage,
|
|
149
166
|
formEntries: (node.data.config.body.formEntries ?? []).map((entry) => ({
|
|
150
167
|
key: entry.key,
|
|
151
168
|
value: entry.value,
|
|
@@ -165,6 +182,7 @@ export const normalizeRequestForExecution = (request, auth, helpers, templateVal
|
|
|
165
182
|
body: {
|
|
166
183
|
mode: request.body.mode,
|
|
167
184
|
raw: request.body.raw,
|
|
185
|
+
rawLanguage: request.body.rawLanguage,
|
|
168
186
|
formEntries: request.body.formEntries.map((entry) => ({ ...entry })),
|
|
169
187
|
},
|
|
170
188
|
};
|
|
@@ -181,6 +199,14 @@ export const normalizeRequestForExecution = (request, auth, helpers, templateVal
|
|
|
181
199
|
helpers.resolveScenarioTemplateString(entry.key, templateValues),
|
|
182
200
|
helpers.resolveScenarioTemplateString(entry.value, templateValues),
|
|
183
201
|
]));
|
|
202
|
+
// Auto Content-Type for raw bodies (parity with the desktop builder) so
|
|
203
|
+
// an XML/text/html payload isn't sent as application/json. Only added
|
|
204
|
+
// when the user hasn't set a Content-Type header explicitly.
|
|
205
|
+
if (mutableRequest.body.mode === "raw" &&
|
|
206
|
+
(mutableRequest.body.raw ?? "").trim() &&
|
|
207
|
+
!Object.keys(headers).some((key) => key.toLowerCase() === "content-type")) {
|
|
208
|
+
headers["Content-Type"] = contentTypeForRawLanguage(mutableRequest.body.rawLanguage);
|
|
209
|
+
}
|
|
184
210
|
return {
|
|
185
211
|
method: helpers
|
|
186
212
|
.resolveScenarioTemplateString(mutableRequest.method, templateValues)
|
|
@@ -201,14 +227,20 @@ export const normalizeExecuteRequestFailure = (error) => ({
|
|
|
201
227
|
duration: 0,
|
|
202
228
|
});
|
|
203
229
|
export const toRequestResponse = (executionResult) => {
|
|
230
|
+
// `executeRequest` already parses JSON/XML bodies into `data` (an
|
|
231
|
+
// object) and preserves the original document in `rawText`. So a present
|
|
232
|
+
// object `data` is the structured body, and `rawText` (when set) is the
|
|
233
|
+
// verbatim source to display — for XML this keeps `bodyText` as raw XML
|
|
234
|
+
// rather than a JSON re-stringify.
|
|
204
235
|
const bodyJson = executionResult.data && typeof executionResult.data === "object"
|
|
205
236
|
? executionResult.data
|
|
206
237
|
: typeof executionResult.data === "string"
|
|
207
238
|
? safeJsonParse(executionResult.data)
|
|
208
239
|
: null;
|
|
209
|
-
const bodyText = normalizeResponseValue(executionResult.data);
|
|
240
|
+
const bodyText = executionResult.rawText ?? normalizeResponseValue(executionResult.data);
|
|
210
241
|
const cookies = normalizeCookies(executionResult.headers);
|
|
211
242
|
const contentType = findHeader(executionResult.headers, "content-type");
|
|
243
|
+
const bodyKind = executionResult.bodyKind ?? (bodyJson !== null ? "json" : "text");
|
|
212
244
|
return {
|
|
213
245
|
ok: executionResult.status >= 200 && executionResult.status < 400,
|
|
214
246
|
status: executionResult.status,
|
|
@@ -220,6 +252,7 @@ export const toRequestResponse = (executionResult) => {
|
|
|
220
252
|
contentType,
|
|
221
253
|
bodyText,
|
|
222
254
|
bodyJson,
|
|
255
|
+
bodyKind,
|
|
223
256
|
kafkaResult: null,
|
|
224
257
|
redisResult: null,
|
|
225
258
|
cancelled: false,
|