Build plugins

This commit is contained in:
Gregory Schier
2025-03-08 08:06:18 -08:00
parent cdce2ac53a
commit 12233cb6f6
7 changed files with 550 additions and 154 deletions

2
package-lock.json generated
View File

@@ -15557,7 +15557,7 @@
}, },
"packages/plugin-runtime-types": { "packages/plugin-runtime-types": {
"name": "@yaakapp/api", "name": "@yaakapp/api",
"version": "0.4.1", "version": "0.5.0",
"dependencies": { "dependencies": {
"@types/node": "^22.5.4" "@types/node": "^22.5.4"
}, },

View File

@@ -1044,6 +1044,7 @@ var require_re = __commonJS({
var re = exports2.re = []; var re = exports2.re = [];
var safeRe = exports2.safeRe = []; var safeRe = exports2.safeRe = [];
var src = exports2.src = []; var src = exports2.src = [];
var safeSrc = exports2.safeSrc = [];
var t = exports2.t = {}; var t = exports2.t = {};
var R = 0; var R = 0;
var LETTERDASHNUMBER = "[a-zA-Z0-9-]"; var LETTERDASHNUMBER = "[a-zA-Z0-9-]";
@@ -1064,6 +1065,7 @@ var require_re = __commonJS({
debug(name, index, value); debug(name, index, value);
t[name] = index; t[name] = index;
src[index] = value; src[index] = value;
safeSrc[index] = safe;
re[index] = new RegExp(value, isGlobal ? "g" : void 0); re[index] = new RegExp(value, isGlobal ? "g" : void 0);
safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0); safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0);
}; };
@@ -1160,7 +1162,7 @@ var require_semver = __commonJS({
"../../node_modules/semver/classes/semver.js"(exports2, module2) { "../../node_modules/semver/classes/semver.js"(exports2, module2) {
var debug = require_debug(); var debug = require_debug();
var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants(); var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants();
var { safeRe: re, t } = require_re(); var { safeRe: re, safeSrc: src, t } = require_re();
var parseOptions = require_parse_options(); var parseOptions = require_parse_options();
var { compareIdentifiers } = require_identifiers(); var { compareIdentifiers } = require_identifiers();
var SemVer = class _SemVer { var SemVer = class _SemVer {
@@ -1300,6 +1302,18 @@ var require_semver = __commonJS({
// preminor will bump the version up to the next minor release, and immediately // preminor will bump the version up to the next minor release, and immediately
// down to pre-release. premajor and prepatch work the same way. // down to pre-release. premajor and prepatch work the same way.
inc(release, identifier, identifierBase) { inc(release, identifier, identifierBase) {
if (release.startsWith("pre")) {
if (!identifier && identifierBase === false) {
throw new Error("invalid increment argument: identifier is empty");
}
if (identifier) {
const r = new RegExp(`^${this.options.loose ? src[t.PRERELEASELOOSE] : src[t.PRERELEASE]}$`);
const match = `-${identifier}`.match(r);
if (!match || match[1] !== identifier) {
throw new Error(`invalid identifier: ${identifier}`);
}
}
}
switch (release) { switch (release) {
case "premajor": case "premajor":
this.prerelease.length = 0; this.prerelease.length = 0;
@@ -1325,6 +1339,12 @@ var require_semver = __commonJS({
} }
this.inc("pre", identifier, identifierBase); this.inc("pre", identifier, identifierBase);
break; break;
case "release":
if (this.prerelease.length === 0) {
throw new Error(`version ${this.raw} is not a prerelease`);
}
this.prerelease.length = 0;
break;
case "major": case "major":
if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) { if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) {
this.major++; this.major++;
@@ -1348,9 +1368,6 @@ var require_semver = __commonJS({
break; break;
case "pre": { case "pre": {
const base = Number(identifierBase) ? 1 : 0; const base = Number(identifierBase) ? 1 : 0;
if (!identifier && identifierBase === false) {
throw new Error("invalid increment argument: identifier is empty");
}
if (this.prerelease.length === 0) { if (this.prerelease.length === 0) {
this.prerelease = [base]; this.prerelease = [base];
} else { } else {
@@ -1485,13 +1502,12 @@ var require_diff = __commonJS({
if (!lowVersion.patch && !lowVersion.minor) { if (!lowVersion.patch && !lowVersion.minor) {
return "major"; return "major";
} }
if (highVersion.patch) { if (lowVersion.compareMain(highVersion) === 0) {
if (lowVersion.minor && !lowVersion.patch) {
return "minor";
}
return "patch"; return "patch";
} }
if (highVersion.minor) {
return "minor";
}
return "major";
} }
const prefix = highHasPre ? "pre" : ""; const prefix = highHasPre ? "pre" : "";
if (v1.major !== v2.major) { if (v1.major !== v2.major) {

View File

@@ -130,7 +130,7 @@ async function getOrRefreshAccessToken(ctx, contextId, {
if (token == null) { if (token == null) {
return null; return null;
} }
const now = Date.now() / 1e3; const now = Date.now();
const isExpired = token.expiresAt && now > token.expiresAt; const isExpired = token.expiresAt && now > token.expiresAt;
if (!isExpired && !forceRefresh) { if (!isExpired && !forceRefresh) {
return token; return token;

View File

@@ -36,6 +36,9 @@ var require_quote = __commonJS({
"use strict"; "use strict";
module2.exports = function quote(xs) { module2.exports = function quote(xs) {
return xs.map(function(s) { return xs.map(function(s) {
if (s === "") {
return "''";
}
if (s && typeof s === "object") { if (s && typeof s === "object") {
return s.op.replace(/(.)/g, "\\$1"); return s.op.replace(/(.)/g, "\\$1");
} }

View File

@@ -1304,21 +1304,29 @@ ${indent}`) + "'";
start = start.replace(/\n+/g, `$&${indent}`); start = start.replace(/\n+/g, `$&${indent}`);
} }
const indentSize = indent ? "2" : "1"; const indentSize = indent ? "2" : "1";
let header = (literal ? "|" : ">") + (startWithSpace ? indentSize : "") + chomp; let header = (startWithSpace ? indentSize : "") + chomp;
if (comment) { if (comment) {
header += " " + commentString(comment.replace(/ ?[\r\n]+/g, " ")); header += " " + commentString(comment.replace(/ ?[\r\n]+/g, " "));
if (onComment) if (onComment)
onComment(); onComment();
} }
if (literal) { if (!literal) {
value = value.replace(/\n+/g, `$&${indent}`); const foldedValue = value.replace(/\n+/g, "\n$&").replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, "$1$2").replace(/\n+/g, `$&${indent}`);
return `${header} let literalFallback = false;
${indent}${start}${value}${end}`; const foldOptions = getFoldOptions(ctx, true);
} if (blockQuote !== "folded" && type !== Scalar.Scalar.BLOCK_FOLDED) {
value = value.replace(/\n+/g, "\n$&").replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, "$1$2").replace(/\n+/g, `$&${indent}`); foldOptions.onOverflow = () => {
const body = foldFlowLines.foldFlowLines(`${start}${value}${end}`, indent, foldFlowLines.FOLD_BLOCK, getFoldOptions(ctx, true)); literalFallback = true;
return `${header} };
}
const body = foldFlowLines.foldFlowLines(`${start}${foldedValue}${end}`, indent, foldFlowLines.FOLD_BLOCK, foldOptions);
if (!literalFallback)
return `>${header}
${indent}${body}`; ${indent}${body}`;
}
value = value.replace(/\n+/g, `$&${indent}`);
return `|${header}
${indent}${start}${value}${end}`;
} }
function plainString(item, ctx, onComment, onChompKeep) { function plainString(item, ctx, onComment, onChompKeep) {
const { type, value } = item; const { type, value } = item;
@@ -1446,7 +1454,12 @@ var require_stringify = __commonJS({
let obj; let obj;
if (identity.isScalar(item)) { if (identity.isScalar(item)) {
obj = item.value; obj = item.value;
const match = tags.filter((t) => t.identify?.(obj)); let match = tags.filter((t) => t.identify?.(obj));
if (match.length > 1) {
const testMatch = match.filter((t) => t.test);
if (testMatch.length > 0)
match = testMatch;
}
tagObj = match.find((t) => t.format === item.format) ?? match.find((t) => !t.format); tagObj = match.find((t) => t.format === item.format) ?? match.find((t) => !t.format);
} else { } else {
obj = item; obj = item;
@@ -1643,14 +1656,15 @@ ${ctx.indent}`;
var require_log = __commonJS({ var require_log = __commonJS({
"../../node_modules/yaml/dist/log.js"(exports2) { "../../node_modules/yaml/dist/log.js"(exports2) {
"use strict"; "use strict";
var node_process = require("node:process");
function debug(logLevel, ...messages) { function debug(logLevel, ...messages) {
if (logLevel === "debug") if (logLevel === "debug")
console.log(...messages); console.log(...messages);
} }
function warn(logLevel, warning) { function warn(logLevel, warning) {
if (logLevel === "debug" || logLevel === "warn") { if (logLevel === "debug" || logLevel === "warn") {
if (typeof process !== "undefined" && process.emitWarning) if (typeof node_process.emitWarning === "function")
process.emitWarning(warning); node_process.emitWarning(warning);
else else
console.warn(warning); console.warn(warning);
} }
@@ -1660,51 +1674,36 @@ var require_log = __commonJS({
} }
}); });
// ../../node_modules/yaml/dist/nodes/addPairToJSMap.js // ../../node_modules/yaml/dist/schema/yaml-1.1/merge.js
var require_addPairToJSMap = __commonJS({ var require_merge = __commonJS({
"../../node_modules/yaml/dist/nodes/addPairToJSMap.js"(exports2) { "../../node_modules/yaml/dist/schema/yaml-1.1/merge.js"(exports2) {
"use strict"; "use strict";
var log = require_log();
var stringify = require_stringify();
var identity = require_identity(); var identity = require_identity();
var Scalar = require_Scalar(); var Scalar = require_Scalar();
var toJS = require_toJS();
var MERGE_KEY = "<<"; var MERGE_KEY = "<<";
function addPairToJSMap(ctx, map, { key, value }) { var merge = {
if (ctx?.doc.schema.merge && isMergeKey(key)) { identify: (value) => value === MERGE_KEY || typeof value === "symbol" && value.description === MERGE_KEY,
value = identity.isAlias(value) ? value.resolve(ctx.doc) : value; default: "key",
if (identity.isSeq(value)) tag: "tag:yaml.org,2002:merge",
for (const it of value.items) test: /^<<$/,
mergeToJSMap(ctx, map, it); resolve: () => Object.assign(new Scalar.Scalar(Symbol(MERGE_KEY)), {
else if (Array.isArray(value)) addToJSMap: addMergeToJSMap
for (const it of value) }),
mergeToJSMap(ctx, map, it); stringify: () => MERGE_KEY
else };
mergeToJSMap(ctx, map, value); var isMergeKey = (ctx, key) => (merge.identify(key) || identity.isScalar(key) && (!key.type || key.type === Scalar.Scalar.PLAIN) && merge.identify(key.value)) && ctx?.doc.schema.tags.some((tag) => tag.tag === merge.tag && tag.default);
} else { function addMergeToJSMap(ctx, map, value) {
const jsKey = toJS.toJS(key, "", ctx); value = ctx && identity.isAlias(value) ? value.resolve(ctx.doc) : value;
if (map instanceof Map) { if (identity.isSeq(value))
map.set(jsKey, toJS.toJS(value, jsKey, ctx)); for (const it of value.items)
} else if (map instanceof Set) { mergeValue(ctx, map, it);
map.add(jsKey); else if (Array.isArray(value))
} else { for (const it of value)
const stringKey = stringifyKey(key, jsKey, ctx); mergeValue(ctx, map, it);
const jsValue = toJS.toJS(value, stringKey, ctx); else
if (stringKey in map) mergeValue(ctx, map, value);
Object.defineProperty(map, stringKey, {
value: jsValue,
writable: true,
enumerable: true,
configurable: true
});
else
map[stringKey] = jsValue;
}
}
return map;
} }
var isMergeKey = (key) => key === MERGE_KEY || identity.isScalar(key) && key.value === MERGE_KEY && (!key.type || key.type === Scalar.Scalar.PLAIN); function mergeValue(ctx, map, value) {
function mergeToJSMap(ctx, map, value) {
const source = ctx && identity.isAlias(value) ? value.resolve(ctx.doc) : value; const source = ctx && identity.isAlias(value) ? value.resolve(ctx.doc) : value;
if (!identity.isMap(source)) if (!identity.isMap(source))
throw new Error("Merge sources must be maps or map aliases"); throw new Error("Merge sources must be maps or map aliases");
@@ -1726,6 +1725,48 @@ var require_addPairToJSMap = __commonJS({
} }
return map; return map;
} }
exports2.addMergeToJSMap = addMergeToJSMap;
exports2.isMergeKey = isMergeKey;
exports2.merge = merge;
}
});
// ../../node_modules/yaml/dist/nodes/addPairToJSMap.js
var require_addPairToJSMap = __commonJS({
"../../node_modules/yaml/dist/nodes/addPairToJSMap.js"(exports2) {
"use strict";
var log = require_log();
var merge = require_merge();
var stringify = require_stringify();
var identity = require_identity();
var toJS = require_toJS();
function addPairToJSMap(ctx, map, { key, value }) {
if (identity.isNode(key) && key.addToJSMap)
key.addToJSMap(ctx, map, value);
else if (merge.isMergeKey(ctx, key))
merge.addMergeToJSMap(ctx, map, value);
else {
const jsKey = toJS.toJS(key, "", ctx);
if (map instanceof Map) {
map.set(jsKey, toJS.toJS(value, jsKey, ctx));
} else if (map instanceof Set) {
map.add(jsKey);
} else {
const stringKey = stringifyKey(key, jsKey, ctx);
const jsValue = toJS.toJS(value, stringKey, ctx);
if (stringKey in map)
Object.defineProperty(map, stringKey, {
value: jsValue,
writable: true,
enumerable: true,
configurable: true
});
else
map[stringKey] = jsValue;
}
}
return map;
}
function stringifyKey(key, jsKey, ctx) { function stringifyKey(key, jsKey, ctx) {
if (jsKey === null) if (jsKey === null)
return ""; return "";
@@ -2481,7 +2522,7 @@ var require_schema2 = __commonJS({
identify: (value) => typeof value === "boolean", identify: (value) => typeof value === "boolean",
default: true, default: true,
tag: "tag:yaml.org,2002:bool", tag: "tag:yaml.org,2002:bool",
test: /^true|false$/, test: /^true$|^false$/,
resolve: (str) => str === "true", resolve: (str) => str === "true",
stringify: stringifyJSON stringify: stringifyJSON
}, },
@@ -2520,6 +2561,7 @@ var require_schema2 = __commonJS({
var require_binary = __commonJS({ var require_binary = __commonJS({
"../../node_modules/yaml/dist/schema/yaml-1.1/binary.js"(exports2) { "../../node_modules/yaml/dist/schema/yaml-1.1/binary.js"(exports2) {
"use strict"; "use strict";
var node_buffer = require("node:buffer");
var Scalar = require_Scalar(); var Scalar = require_Scalar();
var stringifyString = require_stringifyString(); var stringifyString = require_stringifyString();
var binary = { var binary = {
@@ -2536,8 +2578,8 @@ var require_binary = __commonJS({
* document.querySelector('#photo').src = URL.createObjectURL(blob) * document.querySelector('#photo').src = URL.createObjectURL(blob)
*/ */
resolve(src, onError) { resolve(src, onError) {
if (typeof Buffer === "function") { if (typeof node_buffer.Buffer === "function") {
return Buffer.from(src, "base64"); return node_buffer.Buffer.from(src, "base64");
} else if (typeof atob === "function") { } else if (typeof atob === "function") {
const str = atob(src.replace(/[\n\r]/g, "")); const str = atob(src.replace(/[\n\r]/g, ""));
const buffer = new Uint8Array(str.length); const buffer = new Uint8Array(str.length);
@@ -2552,8 +2594,8 @@ var require_binary = __commonJS({
stringify({ comment, type, value }, ctx, onComment, onChompKeep) { stringify({ comment, type, value }, ctx, onComment, onChompKeep) {
const buf = value; const buf = value;
let str; let str;
if (typeof Buffer === "function") { if (typeof node_buffer.Buffer === "function") {
str = buf instanceof Buffer ? buf.toString("base64") : Buffer.from(buf.buffer).toString("base64"); str = buf instanceof node_buffer.Buffer ? buf.toString("base64") : node_buffer.Buffer.from(buf.buffer).toString("base64");
} else if (typeof btoa === "function") { } else if (typeof btoa === "function") {
let s = ""; let s = "";
for (let i = 0; i < buf.length; ++i) for (let i = 0; i < buf.length; ++i)
@@ -3065,7 +3107,7 @@ var require_timestamp = __commonJS({
} }
return new Date(date); return new Date(date);
}, },
stringify: ({ value }) => value.toISOString().replace(/((T00:00)?:00)?\.000Z$/, "") stringify: ({ value }) => value.toISOString().replace(/(T00:00:00)?\.000Z$/, "")
}; };
exports2.floatTime = floatTime; exports2.floatTime = floatTime;
exports2.intTime = intTime; exports2.intTime = intTime;
@@ -3085,6 +3127,7 @@ var require_schema3 = __commonJS({
var bool = require_bool2(); var bool = require_bool2();
var float = require_float2(); var float = require_float2();
var int = require_int2(); var int = require_int2();
var merge = require_merge();
var omap = require_omap(); var omap = require_omap();
var pairs = require_pairs(); var pairs = require_pairs();
var set = require_set(); var set = require_set();
@@ -3104,6 +3147,7 @@ var require_schema3 = __commonJS({
float.floatExp, float.floatExp,
float.float, float.float,
binary.binary, binary.binary,
merge.merge,
omap.omap, omap.omap,
pairs.pairs, pairs.pairs,
set.set, set.set,
@@ -3129,6 +3173,7 @@ var require_tags = __commonJS({
var schema = require_schema(); var schema = require_schema();
var schema$1 = require_schema2(); var schema$1 = require_schema2();
var binary = require_binary(); var binary = require_binary();
var merge = require_merge();
var omap = require_omap(); var omap = require_omap();
var pairs = require_pairs(); var pairs = require_pairs();
var schema$2 = require_schema3(); var schema$2 = require_schema3();
@@ -3153,6 +3198,7 @@ var require_tags = __commonJS({
intOct: int.intOct, intOct: int.intOct,
intTime: timestamp.intTime, intTime: timestamp.intTime,
map: map.map, map: map.map,
merge: merge.merge,
null: _null.nullTag, null: _null.nullTag,
omap: omap.omap, omap: omap.omap,
pairs: pairs.pairs, pairs: pairs.pairs,
@@ -3162,13 +3208,18 @@ var require_tags = __commonJS({
}; };
var coreKnownTags = { var coreKnownTags = {
"tag:yaml.org,2002:binary": binary.binary, "tag:yaml.org,2002:binary": binary.binary,
"tag:yaml.org,2002:merge": merge.merge,
"tag:yaml.org,2002:omap": omap.omap, "tag:yaml.org,2002:omap": omap.omap,
"tag:yaml.org,2002:pairs": pairs.pairs, "tag:yaml.org,2002:pairs": pairs.pairs,
"tag:yaml.org,2002:set": set.set, "tag:yaml.org,2002:set": set.set,
"tag:yaml.org,2002:timestamp": timestamp.timestamp "tag:yaml.org,2002:timestamp": timestamp.timestamp
}; };
function getTags(customTags, schemaName) { function getTags(customTags, schemaName, addMergeTag) {
let tags = schemas.get(schemaName); const schemaTags = schemas.get(schemaName);
if (schemaTags && !customTags) {
return addMergeTag && !schemaTags.includes(merge.merge) ? schemaTags.concat(merge.merge) : schemaTags.slice();
}
let tags = schemaTags;
if (!tags) { if (!tags) {
if (Array.isArray(customTags)) if (Array.isArray(customTags))
tags = []; tags = [];
@@ -3183,15 +3234,19 @@ var require_tags = __commonJS({
} else if (typeof customTags === "function") { } else if (typeof customTags === "function") {
tags = customTags(tags.slice()); tags = customTags(tags.slice());
} }
return tags.map((tag) => { if (addMergeTag)
if (typeof tag !== "string") tags = tags.concat(merge.merge);
return tag; return tags.reduce((tags2, tag) => {
const tagObj = tagsByName[tag]; const tagObj = typeof tag === "string" ? tagsByName[tag] : tag;
if (tagObj) if (!tagObj) {
return tagObj; const tagName = JSON.stringify(tag);
const keys = Object.keys(tagsByName).map((key) => JSON.stringify(key)).join(", "); const keys = Object.keys(tagsByName).map((key) => JSON.stringify(key)).join(", ");
throw new Error(`Unknown custom tag "${tag}"; use one of ${keys}`); throw new Error(`Unknown custom tag ${tagName}; use one of ${keys}`);
}); }
if (!tags2.includes(tagObj))
tags2.push(tagObj);
return tags2;
}, []);
} }
exports2.coreKnownTags = coreKnownTags; exports2.coreKnownTags = coreKnownTags;
exports2.getTags = getTags; exports2.getTags = getTags;
@@ -3211,10 +3266,9 @@ var require_Schema = __commonJS({
var Schema = class _Schema { var Schema = class _Schema {
constructor({ compat, customTags, merge, resolveKnownTags, schema, sortMapEntries, toStringDefaults }) { constructor({ compat, customTags, merge, resolveKnownTags, schema, sortMapEntries, toStringDefaults }) {
this.compat = Array.isArray(compat) ? tags.getTags(compat, "compat") : compat ? tags.getTags(null, compat) : null; this.compat = Array.isArray(compat) ? tags.getTags(compat, "compat") : compat ? tags.getTags(null, compat) : null;
this.merge = !!merge;
this.name = typeof schema === "string" && schema || "core"; this.name = typeof schema === "string" && schema || "core";
this.knownTags = resolveKnownTags ? tags.coreKnownTags : {}; this.knownTags = resolveKnownTags ? tags.coreKnownTags : {};
this.tags = tags.getTags(customTags, this.name); this.tags = tags.getTags(customTags, this.name, merge);
this.toStringOptions = toStringDefaults ?? null; this.toStringOptions = toStringDefaults ?? null;
Object.defineProperty(this, identity.MAP, { value: map.map }); Object.defineProperty(this, identity.MAP, { value: map.map });
Object.defineProperty(this, identity.SCALAR, { value: string.string }); Object.defineProperty(this, identity.SCALAR, { value: string.string });
@@ -3346,6 +3400,7 @@ var require_Document = __commonJS({
logLevel: "warn", logLevel: "warn",
prettyErrors: true, prettyErrors: true,
strict: true, strict: true,
stringKeys: false,
uniqueKeys: true, uniqueKeys: true,
version: "1.2" version: "1.2"
}, options); }, options);
@@ -3547,7 +3602,7 @@ var require_Document = __commonJS({
this.directives.yaml.version = "1.1"; this.directives.yaml.version = "1.1";
else else
this.directives = new directives.Directives({ version: "1.1" }); this.directives = new directives.Directives({ version: "1.1" });
opt = { merge: true, resolveKnownTags: false, schema: "yaml-1.1" }; opt = { resolveKnownTags: false, schema: "yaml-1.1" };
break; break;
case "1.2": case "1.2":
case "next": case "next":
@@ -3555,7 +3610,7 @@ var require_Document = __commonJS({
this.directives.yaml.version = version; this.directives.yaml.version = version;
else else
this.directives = new directives.Directives({ version }); this.directives = new directives.Directives({ version });
opt = { merge: false, resolveKnownTags: true, schema: "core" }; opt = { resolveKnownTags: true, schema: "core" };
break; break;
case null: case null:
if (this.directives) if (this.directives)
@@ -3738,7 +3793,7 @@ var require_resolve_props = __commonJS({
if (atNewline) { if (atNewline) {
if (comment) if (comment)
comment += token.source; comment += token.source;
else else if (!found || indicator !== "seq-item-ind")
spaceBefore = true; spaceBefore = true;
} else } else
commentSep += token.source; commentSep += token.source;
@@ -3888,7 +3943,7 @@ var require_util_map_includes = __commonJS({
const { uniqueKeys } = ctx.options; const { uniqueKeys } = ctx.options;
if (uniqueKeys === false) if (uniqueKeys === false)
return false; return false;
const isEqual = typeof uniqueKeys === "function" ? uniqueKeys : (a, b) => a === b || identity.isScalar(a) && identity.isScalar(b) && a.value === b.value && !(a.value === "<<" && ctx.schema.merge); const isEqual = typeof uniqueKeys === "function" ? uniqueKeys : (a, b) => a === b || identity.isScalar(a) && identity.isScalar(b) && a.value === b.value;
return items.some((pair) => isEqual(pair.key, search)); return items.some((pair) => isEqual(pair.key, search));
} }
exports2.mapIncludes = mapIncludes; exports2.mapIncludes = mapIncludes;
@@ -3947,10 +4002,12 @@ var require_resolve_block_map = __commonJS({
} else if (keyProps.found?.indent !== bm.indent) { } else if (keyProps.found?.indent !== bm.indent) {
onError(offset, "BAD_INDENT", startColMsg); onError(offset, "BAD_INDENT", startColMsg);
} }
ctx.atKey = true;
const keyStart = keyProps.end; const keyStart = keyProps.end;
const keyNode = key ? composeNode(ctx, key, keyProps, onError) : composeEmptyNode(ctx, keyStart, start, null, keyProps, onError); const keyNode = key ? composeNode(ctx, key, keyProps, onError) : composeEmptyNode(ctx, keyStart, start, null, keyProps, onError);
if (ctx.schema.compat) if (ctx.schema.compat)
utilFlowIndentCheck.flowIndentCheck(bm.indent, key, onError); utilFlowIndentCheck.flowIndentCheck(bm.indent, key, onError);
ctx.atKey = false;
if (utilMapIncludes.mapIncludes(ctx, map.items, keyNode)) if (utilMapIncludes.mapIncludes(ctx, map.items, keyNode))
onError(keyStart, "DUPLICATE_KEY", "Map keys must be unique"); onError(keyStart, "DUPLICATE_KEY", "Map keys must be unique");
const valueProps = resolveProps.resolveProps(sep ?? [], { const valueProps = resolveProps.resolveProps(sep ?? [], {
@@ -4013,6 +4070,8 @@ var require_resolve_block_seq = __commonJS({
const seq = new NodeClass(ctx.schema); const seq = new NodeClass(ctx.schema);
if (ctx.atRoot) if (ctx.atRoot)
ctx.atRoot = false; ctx.atRoot = false;
if (ctx.atKey)
ctx.atKey = false;
let offset = bs.offset; let offset = bs.offset;
let commentEnd = null; let commentEnd = null;
for (const { start, value } of bs.items) { for (const { start, value } of bs.items) {
@@ -4116,6 +4175,8 @@ var require_resolve_flow_collection = __commonJS({
const atRoot = ctx.atRoot; const atRoot = ctx.atRoot;
if (atRoot) if (atRoot)
ctx.atRoot = false; ctx.atRoot = false;
if (ctx.atKey)
ctx.atKey = false;
let offset = fc.offset + fc.start.source.length; let offset = fc.offset + fc.start.source.length;
for (let i = 0; i < fc.items.length; ++i) { for (let i = 0; i < fc.items.length; ++i) {
const collItem = fc.items[i]; const collItem = fc.items[i];
@@ -4191,10 +4252,12 @@ var require_resolve_flow_collection = __commonJS({
if (isBlock(value)) if (isBlock(value))
onError(valueNode.range, "BLOCK_IN_FLOW", blockMsg); onError(valueNode.range, "BLOCK_IN_FLOW", blockMsg);
} else { } else {
ctx.atKey = true;
const keyStart = props.end; const keyStart = props.end;
const keyNode = key ? composeNode(ctx, key, props, onError) : composeEmptyNode(ctx, keyStart, start, null, props, onError); const keyNode = key ? composeNode(ctx, key, props, onError) : composeEmptyNode(ctx, keyStart, start, null, props, onError);
if (isBlock(key)) if (isBlock(key))
onError(keyNode.range, "BLOCK_IN_FLOW", blockMsg); onError(keyNode.range, "BLOCK_IN_FLOW", blockMsg);
ctx.atKey = false;
const valueProps = resolveProps.resolveProps(sep ?? [], { const valueProps = resolveProps.resolveProps(sep ?? [], {
flow: fcName, flow: fcName,
indicator: "map-value-ind", indicator: "map-value-ind",
@@ -4757,7 +4820,15 @@ var require_compose_scalar = __commonJS({
function composeScalar(ctx, token, tagToken, onError) { function composeScalar(ctx, token, tagToken, onError) {
const { value, type, comment, range } = token.type === "block-scalar" ? resolveBlockScalar.resolveBlockScalar(ctx, token, onError) : resolveFlowScalar.resolveFlowScalar(token, ctx.options.strict, onError); const { value, type, comment, range } = token.type === "block-scalar" ? resolveBlockScalar.resolveBlockScalar(ctx, token, onError) : resolveFlowScalar.resolveFlowScalar(token, ctx.options.strict, onError);
const tagName = tagToken ? ctx.directives.tagName(tagToken.source, (msg) => onError(tagToken, "TAG_RESOLVE_FAILED", msg)) : null; const tagName = tagToken ? ctx.directives.tagName(tagToken.source, (msg) => onError(tagToken, "TAG_RESOLVE_FAILED", msg)) : null;
const tag = tagToken && tagName ? findScalarTagByName(ctx.schema, value, tagName, tagToken, onError) : token.type === "scalar" ? findScalarTagByTest(ctx, value, token, onError) : ctx.schema[identity.SCALAR]; let tag;
if (ctx.options.stringKeys && ctx.atKey) {
tag = ctx.schema[identity.SCALAR];
} else if (tagName)
tag = findScalarTagByName(ctx.schema, value, tagName, tagToken, onError);
else if (token.type === "scalar")
tag = findScalarTagByTest(ctx, value, token, onError);
else
tag = ctx.schema[identity.SCALAR];
let scalar; let scalar;
try { try {
const res = tag.resolve(value, (msg) => onError(tagToken ?? token, "TAG_RESOLVE_FAILED", msg), ctx.options); const res = tag.resolve(value, (msg) => onError(tagToken ?? token, "TAG_RESOLVE_FAILED", msg), ctx.options);
@@ -4802,8 +4873,8 @@ var require_compose_scalar = __commonJS({
onError(tagToken, "TAG_RESOLVE_FAILED", `Unresolved tag: ${tagName}`, tagName !== "tag:yaml.org,2002:str"); onError(tagToken, "TAG_RESOLVE_FAILED", `Unresolved tag: ${tagName}`, tagName !== "tag:yaml.org,2002:str");
return schema[identity.SCALAR]; return schema[identity.SCALAR];
} }
function findScalarTagByTest({ directives, schema }, value, token, onError) { function findScalarTagByTest({ atKey, directives, schema }, value, token, onError) {
const tag = schema.tags.find((tag2) => tag2.default && tag2.test?.test(value)) || schema[identity.SCALAR]; const tag = schema.tags.find((tag2) => (tag2.default === true || atKey && tag2.default === "key") && tag2.test?.test(value)) || schema[identity.SCALAR];
if (schema.compat) { if (schema.compat) {
const compat = schema.compat.find((tag2) => tag2.default && tag2.test?.test(value)) ?? schema[identity.SCALAR]; const compat = schema.compat.find((tag2) => tag2.default && tag2.test?.test(value)) ?? schema[identity.SCALAR];
if (tag.tag !== compat.tag) { if (tag.tag !== compat.tag) {
@@ -4855,12 +4926,14 @@ var require_compose_node = __commonJS({
"../../node_modules/yaml/dist/compose/compose-node.js"(exports2) { "../../node_modules/yaml/dist/compose/compose-node.js"(exports2) {
"use strict"; "use strict";
var Alias = require_Alias(); var Alias = require_Alias();
var identity = require_identity();
var composeCollection = require_compose_collection(); var composeCollection = require_compose_collection();
var composeScalar = require_compose_scalar(); var composeScalar = require_compose_scalar();
var resolveEnd = require_resolve_end(); var resolveEnd = require_resolve_end();
var utilEmptyScalarPosition = require_util_empty_scalar_position(); var utilEmptyScalarPosition = require_util_empty_scalar_position();
var CN = { composeNode, composeEmptyNode }; var CN = { composeNode, composeEmptyNode };
function composeNode(ctx, token, props, onError) { function composeNode(ctx, token, props, onError) {
const atKey = ctx.atKey;
const { spaceBefore, comment, anchor, tag } = props; const { spaceBefore, comment, anchor, tag } = props;
let node; let node;
let isSrcToken = true; let isSrcToken = true;
@@ -4894,6 +4967,10 @@ var require_compose_node = __commonJS({
} }
if (anchor && node.anchor === "") if (anchor && node.anchor === "")
onError(anchor, "BAD_ALIAS", "Anchor cannot be an empty string"); onError(anchor, "BAD_ALIAS", "Anchor cannot be an empty string");
if (atKey && ctx.options.stringKeys && (!identity.isScalar(node) || typeof node.value !== "string" || node.tag && node.tag !== "tag:yaml.org,2002:str")) {
const msg = "With stringKeys, all keys must be strings";
onError(tag ?? token, "NON_STRING_KEY", msg);
}
if (spaceBefore) if (spaceBefore)
node.spaceBefore = true; node.spaceBefore = true;
if (comment) { if (comment) {
@@ -4957,6 +5034,7 @@ var require_compose_doc = __commonJS({
const opts = Object.assign({ _directives: directives }, options); const opts = Object.assign({ _directives: directives }, options);
const doc = new Document.Document(void 0, opts); const doc = new Document.Document(void 0, opts);
const ctx = { const ctx = {
atKey: false,
atRoot: true, atRoot: true,
directives: doc.directives, directives: doc.directives,
options: doc.options, options: doc.options,
@@ -4991,6 +5069,7 @@ var require_compose_doc = __commonJS({
var require_composer = __commonJS({ var require_composer = __commonJS({
"../../node_modules/yaml/dist/compose/composer.js"(exports2) { "../../node_modules/yaml/dist/compose/composer.js"(exports2) {
"use strict"; "use strict";
var node_process = require("node:process");
var directives = require_directives(); var directives = require_directives();
var Document = require_Document(); var Document = require_Document();
var errors = require_errors(); var errors = require_errors();
@@ -5106,7 +5185,7 @@ ${cb}` : comment;
} }
/** Advance the composer by one CST token. */ /** Advance the composer by one CST token. */
*next(token) { *next(token) {
if (process.env.LOG_STREAM) if (node_process.env.LOG_STREAM)
console.dir(token, { depth: null }); console.dir(token, { depth: null });
switch (token.type) { switch (token.type) {
case "directive": case "directive":
@@ -6211,6 +6290,7 @@ var require_line_counter = __commonJS({
var require_parser = __commonJS({ var require_parser = __commonJS({
"../../node_modules/yaml/dist/parse/parser.js"(exports2) { "../../node_modules/yaml/dist/parse/parser.js"(exports2) {
"use strict"; "use strict";
var node_process = require("node:process");
var cst = require_cst(); var cst = require_cst();
var lexer = require_lexer(); var lexer = require_lexer();
function includesToken(list, type) { function includesToken(list, type) {
@@ -6333,7 +6413,7 @@ var require_parser = __commonJS({
*/ */
*next(source) { *next(source) {
this.source = source; this.source = source;
if (process.env.LOG_TOKENS) if (node_process.env.LOG_TOKENS)
console.log("|", cst.prettyToken(source)); console.log("|", cst.prettyToken(source));
if (this.atScalar) { if (this.atScalar) {
this.atScalar = false; this.atScalar = false;
@@ -7067,6 +7147,7 @@ var require_public_api = __commonJS({
var Document = require_Document(); var Document = require_Document();
var errors = require_errors(); var errors = require_errors();
var log = require_log(); var log = require_log();
var identity = require_identity();
var lineCounter = require_line_counter(); var lineCounter = require_line_counter();
var parser = require_parser(); var parser = require_parser();
function parseOptions(options) { function parseOptions(options) {
@@ -7144,6 +7225,8 @@ var require_public_api = __commonJS({
if (!keepUndefined) if (!keepUndefined)
return void 0; return void 0;
} }
if (identity.isDocument(value) && !_replacer)
return value.toString(options);
return new Document.Document(value, _replacer, options).toString(options); return new Document.Document(value, _replacer, options).toString(options);
} }
exports2.parse = parse; exports2.parse = parse;

View File

@@ -49782,7 +49782,11 @@ var require_property_base = __commonJS({
* @returns {*|undefined} * @returns {*|undefined}
*/ */
parent() { parent() {
return this && this.__parent && (this.__parent.__parent || this.__parent) || void 0; let parent = this.__parent;
if (parent && parent._postman_propertyIsList) {
parent = parent.__parent || parent;
}
return parent || void 0;
}, },
/** /**
* Accepts an object and sets it as the parent of the current property. * Accepts an object and sets it as the parent of the current property.
@@ -77141,7 +77145,7 @@ var require_dynamic_variables = __commonJS({
description: "A random avatar image", description: "A random avatar image",
generator: () => { generator: () => {
return faker.random.arrayElement([ return faker.random.arrayElement([
// eslint-disable-next-line max-len // eslint-disable-next-line @stylistic/js/max-len
`https://cloudflare-ipfs.com/ipfs/Qmd3W5DuhgHirLHGVixi6V76LhCkZUz6pnFt5AJBiyvHye/avatar/${faker.datatype.number(1249)}.jpg`, `https://cloudflare-ipfs.com/ipfs/Qmd3W5DuhgHirLHGVixi6V76LhCkZUz6pnFt5AJBiyvHye/avatar/${faker.datatype.number(1249)}.jpg`,
`https://avatars.githubusercontent.com/u/${faker.datatype.number(1e8)}` `https://avatars.githubusercontent.com/u/${faker.datatype.number(1e8)}`
]); ]);
@@ -77494,7 +77498,7 @@ var require_superstring = __commonJS({
* @readOnly * @readOnly
* @type {RegExp} * @type {RegExp}
*/ */
REGEX_EXTRACT_VARS: /\{\{([^{}]*?)}}/g, REGEX_EXTRACT_VARS: /{{([^{}]*?)}}/g,
/** /**
* Defines the number of times the variable substitution mechanism will repeat until all tokens are resolved * Defines the number of times the variable substitution mechanism will repeat until all tokens are resolved
* *
@@ -77589,7 +77593,7 @@ var require_property = __commonJS({
} else if (typeof value === "object") { } else if (typeof value === "object") {
seen.add(value); seen.add(value);
for (const key in value) { for (const key in value) {
if (Object.hasOwnProperty.call(value, key)) { if (Object.hasOwn(value, key)) {
_findSubstitutions(value[key], seen, result); _findSubstitutions(value[key], seen, result);
} }
} }
@@ -77894,7 +77898,7 @@ var require_property_list = __commonJS({
before > -1 ? this.members.splice(before, 0, item) : this.members.push(item); before > -1 ? this.members.splice(before, 0, item) : this.members.push(item);
if ((index = item[this._postman_listIndexKey]) && (index = String(index))) { if ((index = item[this._postman_listIndexKey]) && (index = String(index))) {
this._postman_listIndexCaseInsensitive && (index = index.toLowerCase()); this._postman_listIndexCaseInsensitive && (index = index.toLowerCase());
if (this._postman_listAllowsMultipleValues && Object.hasOwnProperty.call(this.reference, index)) { if (this._postman_listAllowsMultipleValues && Object.hasOwn(this.reference, index)) {
!_2.isArray(this.reference[index]) && (this.reference[index] = [this.reference[index]]); !_2.isArray(this.reference[index]) && (this.reference[index] = [this.reference[index]]);
this.reference[index].push(item); this.reference[index].push(item);
} else { } else {
@@ -78458,7 +78462,7 @@ var require_parser = __commonJS({
var ReplacementTracker = require_replacement_tracker(); var ReplacementTracker = require_replacement_tracker();
var REGEX_ALL_BACKSLASHES = /\\/g; var REGEX_ALL_BACKSLASHES = /\\/g;
var REGEX_LEADING_SLASHES = /^\/+/; var REGEX_LEADING_SLASHES = /^\/+/;
var REGEX_ALL_VARIABLES = /{{[^{}]*[.:/?#@&\]][^{}]*}}/g; var REGEX_ALL_VARIABLES = /{{[^{}]*}}/g;
var HASH_SEPARATOR = "#"; var HASH_SEPARATOR = "#";
var PATH_SEPARATOR = "/"; var PATH_SEPARATOR = "/";
var PORT_SEPARATOR = ":"; var PORT_SEPARATOR = ":";
@@ -78613,6 +78617,7 @@ var require_query_param = __commonJS({
"../../node_modules/postman-collection/lib/collection/query-param.js"(exports2, module2) { "../../node_modules/postman-collection/lib/collection/query-param.js"(exports2, module2) {
var _2 = require_util2().lodash; var _2 = require_util2().lodash;
var Property = require_property().Property; var Property = require_property().Property;
var Substitutor = require_superstring().Substitutor;
var PropertyList = require_property_list().PropertyList; var PropertyList = require_property_list().PropertyList;
var E = ""; var E = "";
var AMPERSAND = "&"; var AMPERSAND = "&";
@@ -78623,7 +78628,7 @@ var require_query_param = __commonJS({
var REGEX_HASH = /#/g; var REGEX_HASH = /#/g;
var REGEX_EQUALS = /=/g; var REGEX_EQUALS = /=/g;
var REGEX_AMPERSAND = /&/g; var REGEX_AMPERSAND = /&/g;
var REGEX_EXTRACT_VARS = /{{[^{}]*[&#=][^{}]*}}/g; var REGEX_EXTRACT_VARS = Substitutor.REGEX_EXTRACT_VARS;
var QueryParam; var QueryParam;
var encodeReservedChars = function(str, encodeEquals) { var encodeReservedChars = function(str, encodeEquals) {
if (!str) { if (!str) {
@@ -92126,7 +92131,7 @@ var require_db3 = __commonJS({
type: "embed", type: "embed",
format: "pdf" format: "pdf"
}, },
"application/ecmascript": { "text/javascript": {
type: "text", type: "text",
format: "script" format: "script"
}, },
@@ -92134,6 +92139,66 @@ var require_db3 = __commonJS({
type: "text", type: "text",
format: "script" format: "script"
}, },
"application/ecmascript": {
type: "text",
format: "script"
},
"application/x-ecmascript": {
type: "text",
format: "script"
},
"application/x-javascript": {
type: "text",
format: "script"
},
"text/ecmascript": {
type: "text",
format: "script"
},
"text/javascript1.0": {
type: "text",
format: "script"
},
"text/javascript1.1": {
type: "text",
format: "script"
},
"text/javascript1.2": {
type: "text",
format: "script"
},
"text/javascript1.3": {
type: "text",
format: "script"
},
"text/javascript1.4": {
type: "text",
format: "script"
},
"text/javascript1.5": {
type: "text",
format: "script"
},
"text/jscript": {
type: "text",
format: "script"
},
"text/livescript": {
type: "text",
format: "script"
},
"text/x-ecmascript": {
type: "text",
format: "script"
},
"text/x-javascript": {
type: "text",
format: "script"
},
"text/css": {
type: "text",
format: "stylesheet"
},
"application/json": { "application/json": {
type: "text", type: "text",
format: "json" format: "json"
@@ -94086,7 +94151,7 @@ var require_content_info = __commonJS({
* egHeader: inline; filename="test Response.json" * egHeader: inline; filename="test Response.json"
* Reference: https://github.com/jshttp/content-disposition * Reference: https://github.com/jshttp/content-disposition
*/ */
// eslint-disable-next-line max-len // eslint-disable-next-line @stylistic/js/max-len
fileNameRegex: /;[ \t]*(?:filename)[ \t]*=[ \t]*("(?:[\x20!\x23-\x5b\x5d-\x7e\x80-\xff]|\\[\x20-\x7e])*"|[!#$%&'*+.0-9A-Z^_`a-z|~-]+)[ \t]*/, fileNameRegex: /;[ \t]*(?:filename)[ \t]*=[ \t]*("(?:[\x20!\x23-\x5b\x5d-\x7e\x80-\xff]|\\[\x20-\x7e])*"|[!#$%&'*+.0-9A-Z^_`a-z|~-]+)[ \t]*/,
/** /**
* RegExp for extracting filename* from content-disposition header * RegExp for extracting filename* from content-disposition header
@@ -94119,7 +94184,7 @@ var require_content_info = __commonJS({
* egHeader: attachment;filename*=utf-8''%E4%BD%A0%E5%A5%BD.txt * egHeader: attachment;filename*=utf-8''%E4%BD%A0%E5%A5%BD.txt
* Reference: https://github.com/jshttp/content-disposition * Reference: https://github.com/jshttp/content-disposition
*/ */
// eslint-disable-next-line max-len, security/detect-unsafe-regex // eslint-disable-next-line @stylistic/js/max-len, security/detect-unsafe-regex
encodedFileNameRegex: /;[ \t]*(?:filename\*)[ \t]*=[ \t]*([A-Za-z0-9!#$%&+\-^_`{}~]+)'.*'((?:%[0-9A-Fa-f]{2}|[A-Za-z0-9!#$&+.^_`|~-])+)[ \t]*/, encodedFileNameRegex: /;[ \t]*(?:filename\*)[ \t]*=[ \t]*([A-Za-z0-9!#$%&+\-^_`{}~]+)'.*'((?:%[0-9A-Fa-f]{2}|[A-Za-z0-9!#$&+.^_`|~-])+)[ \t]*/,
/** /**
* RegExp to match quoted-pair in RFC 2616 * RegExp to match quoted-pair in RFC 2616
@@ -95313,6 +95378,7 @@ var require_re = __commonJS({
var re = exports2.re = []; var re = exports2.re = [];
var safeRe = exports2.safeRe = []; var safeRe = exports2.safeRe = [];
var src = exports2.src = []; var src = exports2.src = [];
var safeSrc = exports2.safeSrc = [];
var t = exports2.t = {}; var t = exports2.t = {};
var R = 0; var R = 0;
var LETTERDASHNUMBER = "[a-zA-Z0-9-]"; var LETTERDASHNUMBER = "[a-zA-Z0-9-]";
@@ -95333,6 +95399,7 @@ var require_re = __commonJS({
debug(name, index, value); debug(name, index, value);
t[name] = index; t[name] = index;
src[index] = value; src[index] = value;
safeSrc[index] = safe;
re[index] = new RegExp(value, isGlobal ? "g" : void 0); re[index] = new RegExp(value, isGlobal ? "g" : void 0);
safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0); safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0);
}; };
@@ -95429,7 +95496,7 @@ var require_semver = __commonJS({
"../../node_modules/semver/classes/semver.js"(exports2, module2) { "../../node_modules/semver/classes/semver.js"(exports2, module2) {
var debug = require_debug(); var debug = require_debug();
var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants(); var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants();
var { safeRe: re, t } = require_re(); var { safeRe: re, safeSrc: src, t } = require_re();
var parseOptions = require_parse_options(); var parseOptions = require_parse_options();
var { compareIdentifiers } = require_identifiers(); var { compareIdentifiers } = require_identifiers();
var SemVer = class _SemVer { var SemVer = class _SemVer {
@@ -95569,6 +95636,18 @@ var require_semver = __commonJS({
// preminor will bump the version up to the next minor release, and immediately // preminor will bump the version up to the next minor release, and immediately
// down to pre-release. premajor and prepatch work the same way. // down to pre-release. premajor and prepatch work the same way.
inc(release, identifier, identifierBase) { inc(release, identifier, identifierBase) {
if (release.startsWith("pre")) {
if (!identifier && identifierBase === false) {
throw new Error("invalid increment argument: identifier is empty");
}
if (identifier) {
const r = new RegExp(`^${this.options.loose ? src[t.PRERELEASELOOSE] : src[t.PRERELEASE]}$`);
const match = `-${identifier}`.match(r);
if (!match || match[1] !== identifier) {
throw new Error(`invalid identifier: ${identifier}`);
}
}
}
switch (release) { switch (release) {
case "premajor": case "premajor":
this.prerelease.length = 0; this.prerelease.length = 0;
@@ -95594,6 +95673,12 @@ var require_semver = __commonJS({
} }
this.inc("pre", identifier, identifierBase); this.inc("pre", identifier, identifierBase);
break; break;
case "release":
if (this.prerelease.length === 0) {
throw new Error(`version ${this.raw} is not a prerelease`);
}
this.prerelease.length = 0;
break;
case "major": case "major":
if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) { if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) {
this.major++; this.major++;
@@ -95617,9 +95702,6 @@ var require_semver = __commonJS({
break; break;
case "pre": { case "pre": {
const base = Number(identifierBase) ? 1 : 0; const base = Number(identifierBase) ? 1 : 0;
if (!identifier && identifierBase === false) {
throw new Error("invalid increment argument: identifier is empty");
}
if (this.prerelease.length === 0) { if (this.prerelease.length === 0) {
this.prerelease = [base]; this.prerelease = [base];
} else { } else {
@@ -95754,13 +95836,12 @@ var require_diff = __commonJS({
if (!lowVersion.patch && !lowVersion.minor) { if (!lowVersion.patch && !lowVersion.minor) {
return "major"; return "major";
} }
if (highVersion.patch) { if (lowVersion.compareMain(highVersion) === 0) {
if (lowVersion.minor && !lowVersion.patch) {
return "minor";
}
return "patch"; return "patch";
} }
if (highVersion.minor) {
return "minor";
}
return "major";
} }
const prefix = highHasPre ? "pre" : ""; const prefix = highHasPre ? "pre" : "";
if (v12.major !== v2.major) { if (v12.major !== v2.major) {
@@ -136895,8 +136976,6 @@ var require_utils3 = __commonJS({
originalRequest.url.query = []; originalRequest.url.query = [];
originalRequest.header = _2.get(response, "originalRequest.headers", []); originalRequest.header = _2.get(response, "originalRequest.headers", []);
originalRequest.body = requestItem.request.body; originalRequest.body = requestItem.request.body;
response.code = response.code.replace(/X|x/g, "0");
response.code = response.code === "default" ? 500 : _2.toSafeInteger(response.code);
let sdkResponse = new Response({ let sdkResponse = new Response({
name: response.name, name: response.name,
code: response.code, code: response.code,
@@ -137692,7 +137771,7 @@ var require_schemaUtils2 = __commonJS({
} }
exampleKey = Object.keys(exampleObj)[0]; exampleKey = Object.keys(exampleObj)[0];
example = exampleObj[exampleKey]; example = exampleObj[exampleKey];
if (example.$ref) { if (example && example.$ref) {
example = resolveExampleData(context, example); example = resolveExampleData(context, example);
} }
if (_2.get(example, "value")) { if (_2.get(example, "value")) {
@@ -137881,6 +137960,65 @@ var require_schemaUtils2 = __commonJS({
} }
return schema2; return schema2;
}; };
var processSchema = (resolvedSchema) => {
if (resolvedSchema.type === "object" && resolvedSchema.properties) {
const schemaDetails = {
type: resolvedSchema.type,
properties: {},
required: []
}, requiredProperties = new Set(resolvedSchema.required || []);
for (let [propName, propValue] of Object.entries(resolvedSchema.properties)) {
if (!propValue.type) {
continue;
}
const propertyDetails = {
type: propValue.type,
deprecated: propValue.deprecated,
enum: propValue.enum || void 0,
minLength: propValue.minLength,
maxLength: propValue.maxLength,
minimum: propValue.minimum,
maximum: propValue.maximum,
pattern: propValue.pattern,
example: propValue.example,
description: propValue.description,
format: propValue.format
};
if (requiredProperties.has(propName)) {
schemaDetails.required.push(propName);
}
if (propValue.properties) {
let processedProperties = processSchema(propValue);
propertyDetails.properties = processedProperties.properties;
if (processedProperties.required) {
propertyDetails.required = processedProperties.required;
}
} else if (propValue.type === "array" && propValue.items) {
propertyDetails.items = processSchema(propValue.items);
}
schemaDetails.properties[propName] = propertyDetails;
}
if (schemaDetails.required && schemaDetails.required.length === 0) {
schemaDetails.required = void 0;
}
return schemaDetails;
} else if (resolvedSchema.type === "array" && resolvedSchema.items) {
const arrayDetails = {
type: resolvedSchema.type,
items: processSchema(resolvedSchema.items)
};
if (resolvedSchema.minItems !== void 0) {
arrayDetails.minItems = resolvedSchema.minItems;
}
if (resolvedSchema.maxItems !== void 0) {
arrayDetails.maxItems = resolvedSchema.maxItems;
}
return arrayDetails;
}
return {
type: resolvedSchema.type
};
};
var resolveSchema = (context, schema2, { stack = 0, resolveFor = CONVERSION, seenRef = {}, isResponseSchema = false } = {}) => { var resolveSchema = (context, schema2, { stack = 0, resolveFor = CONVERSION, seenRef = {}, isResponseSchema = false } = {}) => {
resetReadWritePropCache(context); resetReadWritePropCache(context);
let resolvedSchema = _resolveSchema(context, schema2, stack, resolveFor, seenRef); let resolvedSchema = _resolveSchema(context, schema2, stack, resolveFor, seenRef);
@@ -138227,12 +138365,16 @@ var require_schemaUtils2 = __commonJS({
return pmExamples; return pmExamples;
}; };
var resolveBodyData = (context, requestBodySchema, bodyType, isExampleBody = false, responseCode = null, requestBodyExamples = {}) => { var resolveBodyData = (context, requestBodySchema, bodyType, isExampleBody = false, responseCode = null, requestBodyExamples = {}) => {
let { parametersResolution, indentCharacter } = context.computedOptions, headerFamily = getHeaderFamily(bodyType), bodyData = "", shouldGenerateFromExample = parametersResolution === "example", isBodyTypeXML = bodyType === APP_XML || bodyType === TEXT_XML || headerFamily === HEADER_TYPE.XML, bodyKey = isExampleBody ? "response" : "request", responseExamples, example, examples; let { parametersResolution, indentCharacter } = context.computedOptions, headerFamily = getHeaderFamily(bodyType), bodyData = "", shouldGenerateFromExample = parametersResolution === "example", isBodyTypeXML = bodyType === APP_XML || bodyType === TEXT_XML || headerFamily === HEADER_TYPE.XML, bodyKey = isExampleBody ? "response" : "request", responseExamples, example, examples, resolvedSchemaTypes = [];
if (_2.isEmpty(requestBodySchema)) { if (_2.isEmpty(requestBodySchema)) {
return [{ [bodyKey]: bodyData }]; return [{ [bodyKey]: bodyData }];
} }
if (requestBodySchema.$ref) { if (requestBodySchema.$ref) {
requestBodySchema = resolveSchema(context, requestBodySchema, { isResponseSchema: isExampleBody }); requestBodySchema = resolveSchema(
context,
requestBodySchema,
{ isResponseSchema: isExampleBody }
);
} }
if (requestBodySchema.example !== void 0) { if (requestBodySchema.example !== void 0) {
const shouldResolveValueKey = _2.has(requestBodySchema.example, "value") && _2.keys(requestBodySchema.example).length <= 1; const shouldResolveValueKey = _2.has(requestBodySchema.example, "value") && _2.keys(requestBodySchema.example).length <= 1;
@@ -138243,7 +138385,11 @@ var require_schemaUtils2 = __commonJS({
} }
examples = requestBodySchema.examples || _2.get(requestBodySchema, "schema.examples"); examples = requestBodySchema.examples || _2.get(requestBodySchema, "schema.examples");
requestBodySchema = requestBodySchema.schema || requestBodySchema; requestBodySchema = requestBodySchema.schema || requestBodySchema;
requestBodySchema = resolveSchema(context, requestBodySchema, { isResponseSchema: isExampleBody }); requestBodySchema = resolveSchema(
context,
requestBodySchema,
{ isResponseSchema: isExampleBody }
);
if (example === void 0 && _2.get(requestBodySchema, "example") !== void 0) { if (example === void 0 && _2.get(requestBodySchema, "example") !== void 0) {
example = requestBodySchema.example; example = requestBodySchema.example;
} }
@@ -138257,7 +138403,11 @@ var require_schemaUtils2 = __commonJS({
} else if (requestBodySchema) { } else if (requestBodySchema) {
requestBodySchema = requestBodySchema.schema || requestBodySchema; requestBodySchema = requestBodySchema.schema || requestBodySchema;
if (requestBodySchema.$ref) { if (requestBodySchema.$ref) {
requestBodySchema = resolveSchema(context, requestBodySchema, { isResponseSchema: isExampleBody }); requestBodySchema = resolveSchema(
context,
requestBodySchema,
{ isResponseSchema: isExampleBody }
);
} }
if (isBodyTypeXML) { if (isBodyTypeXML) {
bodyData = xmlFaker(null, requestBodySchema, indentCharacter, parametersResolution); bodyData = xmlFaker(null, requestBodySchema, indentCharacter, parametersResolution);
@@ -138285,6 +138435,10 @@ var require_schemaUtils2 = __commonJS({
} }
} }
} }
if (context.enableTypeFetching && requestBodySchema.type !== void 0) {
const requestBodySchemaTypes = processSchema(requestBodySchema);
resolvedSchemaTypes.push(requestBodySchemaTypes);
}
if (isExampleBody && shouldGenerateFromExample && (_2.size(examples) > 1 || _2.size(requestBodyExamples) > 1)) { if (isExampleBody && shouldGenerateFromExample && (_2.size(examples) > 1 || _2.size(requestBodyExamples) > 1)) {
responseExamples = [{ responseExamples = [{
key: "_default", key: "_default",
@@ -138305,22 +138459,37 @@ var require_schemaUtils2 = __commonJS({
if (_2.isEmpty(matchedRequestBodyExamples)) { if (_2.isEmpty(matchedRequestBodyExamples)) {
matchedRequestBodyExamples = requestBodyExamples; matchedRequestBodyExamples = requestBodyExamples;
} }
return generateExamples(context, responseExamples, matchedRequestBodyExamples, requestBodySchema, isBodyTypeXML); const generatedBody = generateExamples(
context,
responseExamples,
matchedRequestBodyExamples,
requestBodySchema,
isBodyTypeXML
);
return {
generatedBody,
resolvedSchemaType: resolvedSchemaTypes[0]
};
} }
return [{ [bodyKey]: bodyData }]; return {
generatedBody: [{ [bodyKey]: bodyData }],
resolvedSchemaType: resolvedSchemaTypes[0]
};
}; };
var resolveUrlEncodedRequestBodyForPostmanRequest = (context, requestBodyContent) => { var resolveUrlEncodedRequestBodyForPostmanRequest = (context, requestBodyContent) => {
let bodyData = "", urlEncodedParams = [], requestBodyData = { let bodyData = "", urlEncodedParams = [], requestBodyData = {
mode: "urlencoded", mode: "urlencoded",
urlencoded: urlEncodedParams urlencoded: urlEncodedParams
}, resolvedBody; }, resolvedBody, resolvedBodyResult, resolvedSchemaTypeObject;
if (_2.isEmpty(requestBodyContent)) { if (_2.isEmpty(requestBodyContent)) {
return requestBodyData; return requestBodyData;
} }
if (_2.has(requestBodyContent, "schema.$ref")) { if (_2.has(requestBodyContent, "schema.$ref")) {
requestBodyContent.schema = resolveSchema(context, requestBodyContent.schema); requestBodyContent.schema = resolveSchema(context, requestBodyContent.schema);
} }
resolvedBody = resolveBodyData(context, requestBodyContent.schema)[0]; resolvedBodyResult = resolveBodyData(context, requestBodyContent.schema);
resolvedBody = resolvedBodyResult && Array.isArray(resolvedBodyResult.generatedBody) && resolvedBodyResult.generatedBody[0];
resolvedSchemaTypeObject = resolvedBodyResult && resolvedBodyResult.resolvedSchemaType;
resolvedBody && (bodyData = resolvedBody.request); resolvedBody && (bodyData = resolvedBody.request);
const encoding = requestBodyContent.encoding || {}; const encoding = requestBodyContent.encoding || {};
_2.forOwn(bodyData, (value, key) => { _2.forOwn(bodyData, (value, key) => {
@@ -138342,18 +138511,21 @@ var require_schemaUtils2 = __commonJS({
headers: [{ headers: [{
key: "Content-Type", key: "Content-Type",
value: URLENCODED value: URLENCODED
}] }],
resolvedSchemaTypeObject
}; };
}; };
var resolveFormDataRequestBodyForPostmanRequest = (context, requestBodyContent) => { var resolveFormDataRequestBodyForPostmanRequest = (context, requestBodyContent) => {
let bodyData = "", formDataParams = [], encoding = {}, requestBodyData = { let bodyData = "", formDataParams = [], encoding = {}, requestBodyData = {
mode: "formdata", mode: "formdata",
formdata: formDataParams formdata: formDataParams
}, resolvedBody; }, resolvedBody, resolvedBodyResult, resolvedSchemaTypeObject;
if (_2.isEmpty(requestBodyContent)) { if (_2.isEmpty(requestBodyContent)) {
return requestBodyData; return requestBodyData;
} }
resolvedBody = resolveBodyData(context, requestBodyContent.schema)[0]; resolvedBodyResult = resolveBodyData(context, requestBodyContent.schema);
resolvedBody = resolvedBodyResult && Array.isArray(resolvedBodyResult.generatedBody) && resolvedBodyResult.generatedBody[0];
resolvedSchemaTypeObject = resolvedBodyResult && resolvedBodyResult.resolvedSchemaType;
resolvedBody && (bodyData = resolvedBody.request); resolvedBody && (bodyData = resolvedBody.request);
encoding = _2.get(requestBodyContent, "encoding", {}); encoding = _2.get(requestBodyContent, "encoding", {});
_2.forOwn(bodyData, (value, key) => { _2.forOwn(bodyData, (value, key) => {
@@ -138389,7 +138561,8 @@ var require_schemaUtils2 = __commonJS({
headers: [{ headers: [{
key: "Content-Type", key: "Content-Type",
value: FORM_DATA value: FORM_DATA
}] }],
resolvedSchemaTypeObject
}; };
}; };
var getRawBodyType = (content) => { var getRawBodyType = (content) => {
@@ -138425,14 +138598,16 @@ var require_schemaUtils2 = __commonJS({
return bodyType; return bodyType;
}; };
var resolveRawModeRequestBodyForPostmanRequest = (context, requestContent) => { var resolveRawModeRequestBodyForPostmanRequest = (context, requestContent) => {
let bodyType = getRawBodyType(requestContent), bodyData, headerFamily, dataToBeReturned = {}, { concreteUtils } = context, resolvedBody; let bodyType = getRawBodyType(requestContent), bodyData, headerFamily, dataToBeReturned = {}, { concreteUtils } = context, resolvedBody, resolvedBodyResult, resolvedSchemaTypeObject;
headerFamily = getHeaderFamily(bodyType); headerFamily = getHeaderFamily(bodyType);
if (concreteUtils.isBinaryContentType(bodyType, requestContent)) { if (concreteUtils.isBinaryContentType(bodyType, requestContent)) {
dataToBeReturned = { dataToBeReturned = {
mode: "file" mode: "file"
}; };
} else { } else {
resolvedBody = resolveBodyData(context, requestContent[bodyType], bodyType)[0]; resolvedBodyResult = resolveBodyData(context, requestContent[bodyType], bodyType);
resolvedBody = resolvedBodyResult && Array.isArray(resolvedBodyResult.generatedBody) && resolvedBodyResult.generatedBody[0];
resolvedSchemaTypeObject = resolvedBodyResult && resolvedBodyResult.resolvedSchemaType;
resolvedBody && (bodyData = resolvedBody.request); resolvedBody && (bodyData = resolvedBody.request);
if (bodyType === TEXT_XML || bodyType === APP_XML || headerFamily === HEADER_TYPE.XML) { if (bodyType === TEXT_XML || bodyType === APP_XML || headerFamily === HEADER_TYPE.XML) {
bodyData = getXmlVersionContent(bodyData); bodyData = getXmlVersionContent(bodyData);
@@ -138456,7 +138631,8 @@ var require_schemaUtils2 = __commonJS({
headers: [{ headers: [{
key: "Content-Type", key: "Content-Type",
value: bodyType value: bodyType
}] }],
resolvedSchemaTypeObject
}; };
}; };
var resolveRequestBodyForPostmanRequest = (context, operationItem) => { var resolveRequestBodyForPostmanRequest = (context, operationItem) => {
@@ -138536,8 +138712,25 @@ var require_schemaUtils2 = __commonJS({
}); });
return reqParam; return reqParam;
}; };
var createProperties = (param) => {
const { schema: schema2 } = param;
return {
type: schema2.type,
format: schema2.format,
default: schema2.default,
required: param.required || false,
deprecated: param.deprecated || false,
enum: schema2.enum || void 0,
minLength: schema2.minLength,
maxLength: schema2.maxLength,
minimum: schema2.minimum,
maximum: schema2.maximum,
pattern: schema2.pattern,
example: schema2.example
};
};
var resolveQueryParamsForPostmanRequest = (context, operationItem, method) => { var resolveQueryParamsForPostmanRequest = (context, operationItem, method) => {
const params = resolvePathItemParams(context, operationItem[method].parameters, operationItem.parameters), pmParams = [], { includeDeprecated } = context.computedOptions; const params = resolvePathItemParams(context, operationItem[method].parameters, operationItem.parameters), pmParams = [], queryParamTypes = [], { includeDeprecated } = context.computedOptions;
_2.forEach(params, (param) => { _2.forEach(params, (param) => {
if (!_2.isObject(param)) { if (!_2.isObject(param)) {
return; return;
@@ -138545,20 +138738,28 @@ var require_schemaUtils2 = __commonJS({
if (_2.has(param, "$ref")) { if (_2.has(param, "$ref")) {
param = resolveSchema(context, param); param = resolveSchema(context, param);
} }
if (_2.has(param.schema, "$ref")) {
param.schema = resolveSchema(context, param.schema);
}
if (param.in !== QUERYPARAM || !includeDeprecated && param.deprecated) { if (param.in !== QUERYPARAM || !includeDeprecated && param.deprecated) {
return; return;
} }
let paramValue = resolveValueOfParameter(context, param); let queryParamTypeInfo = {}, properties = {}, paramValue = resolveValueOfParameter(context, param);
if (param && param.name && param.schema && param.schema.type) {
properties = createProperties(param);
queryParamTypeInfo = { keyName: param.name, properties };
queryParamTypes.push(queryParamTypeInfo);
}
if (typeof paramValue === "number" || typeof paramValue === "boolean") { if (typeof paramValue === "number" || typeof paramValue === "boolean") {
paramValue = paramValue.toString(); paramValue = paramValue.toString();
} }
const deserialisedParams = serialiseParamsBasedOnStyle(context, param, paramValue); const deserialisedParams = serialiseParamsBasedOnStyle(context, param, paramValue);
pmParams.push(...deserialisedParams); pmParams.push(...deserialisedParams);
}); });
return pmParams; return { queryParamTypes, queryParams: pmParams };
}; };
var resolvePathParamsForPostmanRequest = (context, operationItem, method) => { var resolvePathParamsForPostmanRequest = (context, operationItem, method) => {
const params = resolvePathItemParams(context, operationItem[method].parameters, operationItem.parameters), pmParams = []; const params = resolvePathItemParams(context, operationItem[method].parameters, operationItem.parameters), pmParams = [], pathParamTypes = [];
_2.forEach(params, (param) => { _2.forEach(params, (param) => {
if (!_2.isObject(param)) { if (!_2.isObject(param)) {
return; return;
@@ -138566,17 +138767,25 @@ var require_schemaUtils2 = __commonJS({
if (_2.has(param, "$ref")) { if (_2.has(param, "$ref")) {
param = resolveSchema(context, param); param = resolveSchema(context, param);
} }
if (_2.has(param.schema, "$ref")) {
param.schema = resolveSchema(context, param.schema);
}
if (param.in !== PATHPARAM) { if (param.in !== PATHPARAM) {
return; return;
} }
let paramValue = resolveValueOfParameter(context, param); let pathParamTypeInfo = {}, properties = {}, paramValue = resolveValueOfParameter(context, param);
if (param && param.name && param.schema && param.schema.type) {
properties = createProperties(param);
pathParamTypeInfo = { keyName: param.name, properties };
pathParamTypes.push(pathParamTypeInfo);
}
if (typeof paramValue === "number" || typeof paramValue === "boolean") { if (typeof paramValue === "number" || typeof paramValue === "boolean") {
paramValue = paramValue.toString(); paramValue = paramValue.toString();
} }
const deserialisedParams = serialiseParamsBasedOnStyle(context, param, paramValue); const deserialisedParams = serialiseParamsBasedOnStyle(context, param, paramValue);
pmParams.push(...deserialisedParams); pmParams.push(...deserialisedParams);
}); });
return pmParams; return { pathParamTypes, pathParams: pmParams };
}; };
var resolveNameForPostmanReqeust = (context, operationItem, requestUrl) => { var resolveNameForPostmanReqeust = (context, operationItem, requestUrl) => {
let reqName, { requestNameSource } = context.computedOptions; let reqName, { requestNameSource } = context.computedOptions;
@@ -138598,7 +138807,7 @@ var require_schemaUtils2 = __commonJS({
return reqName; return reqName;
}; };
var resolveHeadersForPostmanRequest = (context, operationItem, method) => { var resolveHeadersForPostmanRequest = (context, operationItem, method) => {
const params = resolvePathItemParams(context, operationItem[method].parameters, operationItem.parameters), pmParams = [], { keepImplicitHeaders, includeDeprecated } = context.computedOptions; const params = resolvePathItemParams(context, operationItem[method].parameters, operationItem.parameters), pmParams = [], headerTypes = [], { keepImplicitHeaders, includeDeprecated } = context.computedOptions;
_2.forEach(params, (param) => { _2.forEach(params, (param) => {
if (!_2.isObject(param)) { if (!_2.isObject(param)) {
return; return;
@@ -138606,25 +138815,33 @@ var require_schemaUtils2 = __commonJS({
if (_2.has(param, "$ref")) { if (_2.has(param, "$ref")) {
param = resolveSchema(context, param); param = resolveSchema(context, param);
} }
if (_2.has(param.schema, "$ref")) {
param.schema = resolveSchema(context, param.schema);
}
if (param.in !== HEADER || !includeDeprecated && param.deprecated) { if (param.in !== HEADER || !includeDeprecated && param.deprecated) {
return; return;
} }
if (!keepImplicitHeaders && _2.includes(IMPLICIT_HEADERS, _2.toLower(_2.get(param, "name")))) { if (!keepImplicitHeaders && _2.includes(IMPLICIT_HEADERS, _2.toLower(_2.get(param, "name")))) {
return; return;
} }
let paramValue = resolveValueOfParameter(context, param); let headerTypeInfo = {}, properties = {}, paramValue = resolveValueOfParameter(context, param);
if (param && param.name && param.schema && param.schema.type) {
properties = createProperties(param);
headerTypeInfo = { keyName: param.name, properties };
headerTypes.push(headerTypeInfo);
}
if (typeof paramValue === "number" || typeof paramValue === "boolean") { if (typeof paramValue === "number" || typeof paramValue === "boolean") {
paramValue = paramValue.toString(); paramValue = paramValue.toString();
} }
const deserialisedParams = serialiseParamsBasedOnStyle(context, param, paramValue); const deserialisedParams = serialiseParamsBasedOnStyle(context, param, paramValue);
pmParams.push(...deserialisedParams); pmParams.push(...deserialisedParams);
}); });
return pmParams; return { headerTypes, headers: pmParams };
}; };
var resolveResponseBody = (context, responseBody = {}, requestBodyExamples = {}, code = null) => { var resolveResponseBody = (context, responseBody = {}, requestBodyExamples = {}, code = null) => {
let responseContent, bodyType, allBodyData, headerFamily, acceptHeader, emptyResponse = [{ let responseContent, bodyType, allBodyData, headerFamily, acceptHeader, emptyResponse = [{
body: void 0 body: void 0
}]; }], resolvedResponseBodyResult, resolvedResponseBodyTypes;
if (_2.isEmpty(responseBody)) { if (_2.isEmpty(responseBody)) {
return emptyResponse; return emptyResponse;
} }
@@ -138637,7 +138854,16 @@ var require_schemaUtils2 = __commonJS({
} }
bodyType = getRawBodyType(responseContent); bodyType = getRawBodyType(responseContent);
headerFamily = getHeaderFamily(bodyType); headerFamily = getHeaderFamily(bodyType);
allBodyData = resolveBodyData(context, responseContent[bodyType], bodyType, true, code, requestBodyExamples); resolvedResponseBodyResult = resolveBodyData(
context,
responseContent[bodyType],
bodyType,
true,
code,
requestBodyExamples
);
allBodyData = resolvedResponseBodyResult.generatedBody;
resolvedResponseBodyTypes = resolvedResponseBodyResult.resolvedSchemaType;
return _2.map(allBodyData, (bodyData) => { return _2.map(allBodyData, (bodyData) => {
let requestBodyData = bodyData.request, responseBodyData = bodyData.response, exampleName = bodyData.name; let requestBodyData = bodyData.request, responseBodyData = bodyData.response, exampleName = bodyData.name;
if (bodyType === TEXT_XML || bodyType === APP_XML || headerFamily === HEADER_TYPE.XML) { if (bodyType === TEXT_XML || bodyType === APP_XML || headerFamily === HEADER_TYPE.XML) {
@@ -138663,12 +138889,13 @@ var require_schemaUtils2 = __commonJS({
}], }],
name: exampleName, name: exampleName,
bodyType, bodyType,
acceptHeader acceptHeader,
resolvedResponseBodyTypes
}; };
}); });
}; };
var resolveResponseHeaders = (context, responseHeaders) => { var resolveResponseHeaders = (context, responseHeaders) => {
const headers = [], { includeDeprecated } = context.computedOptions; const headers = [], { includeDeprecated } = context.computedOptions, headerTypes = [];
if (_2.has(responseHeaders, "$ref")) { if (_2.has(responseHeaders, "$ref")) {
responseHeaders = resolveSchema(context, responseHeaders, { isResponseSchema: true }); responseHeaders = resolveSchema(context, responseHeaders, { isResponseSchema: true });
} }
@@ -138679,14 +138906,33 @@ var require_schemaUtils2 = __commonJS({
if (!includeDeprecated && value.deprecated) { if (!includeDeprecated && value.deprecated) {
return; return;
} }
let headerValue = resolveValueOfParameter(context, value, { isResponseSchema: true }); let headerValue = resolveValueOfParameter(context, value, { isResponseSchema: true }), headerTypeInfo = {}, properties = {};
if (typeof headerValue === "number" || typeof headerValue === "boolean") { if (typeof headerValue === "number" || typeof headerValue === "boolean") {
headerValue = headerValue.toString(); headerValue = headerValue.toString();
} }
const headerData = Object.assign({}, value, { name: headerName }), serialisedHeader = serialiseParamsBasedOnStyle(context, headerData, headerValue, { isResponseSchema: true }); const headerData = Object.assign({}, value, { name: headerName }), serialisedHeader = serialiseParamsBasedOnStyle(context, headerData, headerValue, { isResponseSchema: true });
headers.push(...serialisedHeader); headers.push(...serialisedHeader);
if (headerData && headerData.name && headerData.schema && headerData.schema.type) {
const { schema: schema2 } = headerData;
properties = {
type: schema2.type,
format: schema2.format,
default: schema2.default,
required: schema2.required || false,
deprecated: schema2.deprecated || false,
enum: schema2.enum || void 0,
minLength: schema2.minLength,
maxLength: schema2.maxLength,
minimum: schema2.minimum,
maximum: schema2.maximum,
pattern: schema2.pattern,
example: schema2.example
};
headerTypeInfo = { keyName: headerData.name, properties };
headerTypes.push(headerTypeInfo);
}
}); });
return headers; return { resolvedHeaderTypes: headerTypes, headers };
}; };
var getPreviewLangugaForResponseBody = (bodyType) => { var getPreviewLangugaForResponseBody = (bodyType) => {
const headerFamily = getHeaderFamily(bodyType); const headerFamily = getHeaderFamily(bodyType);
@@ -138753,7 +138999,7 @@ var require_schemaUtils2 = __commonJS({
return responseAuthHelper; return responseAuthHelper;
}; };
var resolveResponseForPostmanRequest = (context, operationItem, request) => { var resolveResponseForPostmanRequest = (context, operationItem, request) => {
let responses = [], requestBodyExamples = [], requestAcceptHeader, requestBody = operationItem.requestBody, requestContent, rawBodyType, headerFamily, isBodyTypeXML; let responses = [], requestBodyExamples = [], requestAcceptHeader, requestBody = operationItem.requestBody, requestContent, rawBodyType, headerFamily, isBodyTypeXML, resolvedExamplesObject = {}, responseTypes = {};
if (typeof requestBody === "object") { if (typeof requestBody === "object") {
if (requestBody.$ref) { if (requestBody.$ref) {
requestBody = resolveSchema(context, requestBody, { isResponseSchema: true }); requestBody = resolveSchema(context, requestBody, { isResponseSchema: true });
@@ -138789,7 +139035,15 @@ var require_schemaUtils2 = __commonJS({
} }
} }
_2.forOwn(operationItem.responses, (responseObj, code) => { _2.forOwn(operationItem.responses, (responseObj, code) => {
let responseSchema = _2.has(responseObj, "$ref") ? resolveSchema(context, responseObj, { isResponseSchema: true }) : responseObj, { includeAuthInfoInExample } = context.computedOptions, auth = request.auth, resolvedExamples = resolveResponseBody(context, responseSchema, requestBodyExamples, code) || {}, headers = resolveResponseHeaders(context, responseSchema.headers); let responseSchema = _2.has(responseObj, "$ref") ? resolveSchema(context, responseObj, { isResponseSchema: true }) : responseObj, { includeAuthInfoInExample } = context.computedOptions, auth = request.auth, resolvedExamples = resolveResponseBody(context, responseSchema, requestBodyExamples, code) || {}, { resolvedHeaderTypes, headers } = resolveResponseHeaders(context, responseSchema.headers), responseBodyHeaderObj;
resolvedExamplesObject = resolvedExamples[0] && resolvedExamples[0].resolvedResponseBodyTypes;
responseBodyHeaderObj = {
body: JSON.stringify(resolvedExamplesObject, null, 2),
headers: JSON.stringify(resolvedHeaderTypes, null, 2)
};
code = code.replace(/X|x/g, "0");
code = code === "default" ? 500 : _2.toSafeInteger(code);
Object.assign(responseTypes, { [code]: responseBodyHeaderObj });
_2.forOwn(resolvedExamples, (resolvedExample = {}) => { _2.forOwn(resolvedExamples, (resolvedExample = {}) => {
let { body, contentHeader = [], bodyType, acceptHeader, name } = resolvedExample, resolvedRequestBody = _2.get(resolvedExample, "request.body"), originalRequest, response, responseAuthHelper, requestBodyObj = {}, reqHeaders = _2.clone(request.headers) || [], reqQueryParams = _2.clone(_2.get(request, "params.queryParams", [])); let { body, contentHeader = [], bodyType, acceptHeader, name } = resolvedExample, resolvedRequestBody = _2.get(resolvedExample, "request.body"), originalRequest, response, responseAuthHelper, requestBodyObj = {}, reqHeaders = _2.clone(request.headers) || [], reqQueryParams = _2.clone(_2.get(request, "params.queryParams", []));
_2.isArray(acceptHeader) && reqHeaders.push(...acceptHeader); _2.isArray(acceptHeader) && reqHeaders.push(...acceptHeader);
@@ -138829,13 +139083,17 @@ var require_schemaUtils2 = __commonJS({
responses.push(response); responses.push(response);
}); });
}); });
return { responses, acceptHeader: requestAcceptHeader }; return {
responses,
acceptHeader: requestAcceptHeader,
responseTypes
};
}; };
module2.exports = { module2.exports = {
resolvePostmanRequest: function(context, operationItem, path, method) { resolvePostmanRequest: function(context, operationItem, path, method) {
context.schemaCache = context.schemaCache || {}; context.schemaCache = context.schemaCache || {};
context.schemaFakerCache = context.schemaFakerCache || {}; context.schemaFakerCache = context.schemaFakerCache || {};
let url = resolveUrlForPostmanRequest(path), baseUrlData = resolveBaseUrlForPostmanRequest(operationItem[method]), requestName = resolveNameForPostmanReqeust(context, operationItem[method], url), queryParams = resolveQueryParamsForPostmanRequest(context, operationItem, method), headers = resolveHeadersForPostmanRequest(context, operationItem, method), pathParams = resolvePathParamsForPostmanRequest(context, operationItem, method), { pathVariables, collectionVariables } = filterCollectionAndPathVariables(url, pathParams), requestBody = resolveRequestBodyForPostmanRequest(context, operationItem[method]), request, securitySchema = _2.get(operationItem, [method, "security"]), authHelper = generateAuthForCollectionFromOpenAPI(context.openapi, securitySchema), { alwaysInheritAuthentication } = context.computedOptions; let url = resolveUrlForPostmanRequest(path), baseUrlData = resolveBaseUrlForPostmanRequest(operationItem[method]), requestName = resolveNameForPostmanReqeust(context, operationItem[method], url), { queryParamTypes, queryParams } = resolveQueryParamsForPostmanRequest(context, operationItem, method), { headerTypes, headers } = resolveHeadersForPostmanRequest(context, operationItem, method), { pathParamTypes, pathParams } = resolvePathParamsForPostmanRequest(context, operationItem, method), { pathVariables, collectionVariables } = filterCollectionAndPathVariables(url, pathParams), requestBody = resolveRequestBodyForPostmanRequest(context, operationItem[method]), requestBodyTypes = requestBody && requestBody.resolvedSchemaTypeObject, request, securitySchema = _2.get(operationItem, [method, "security"]), authHelper = generateAuthForCollectionFromOpenAPI(context.openapi, securitySchema), { alwaysInheritAuthentication } = context.computedOptions, requestIdentifier, requestTypesObject = {};
headers.push(..._2.get(requestBody, "headers", [])); headers.push(..._2.get(requestBody, "headers", []));
pathVariables.push(...baseUrlData.pathVariables); pathVariables.push(...baseUrlData.pathVariables);
collectionVariables.push(...baseUrlData.collectionVariables); collectionVariables.push(...baseUrlData.collectionVariables);
@@ -138853,7 +139111,21 @@ var require_schemaUtils2 = __commonJS({
body: _2.get(requestBody, "body"), body: _2.get(requestBody, "body"),
auth: alwaysInheritAuthentication ? void 0 : authHelper auth: alwaysInheritAuthentication ? void 0 : authHelper
}; };
const { responses, acceptHeader } = resolveResponseForPostmanRequest(context, operationItem[method], request); const requestTypes = {
body: JSON.stringify(requestBodyTypes, null, 2),
headers: JSON.stringify(headerTypes, null, 2),
pathParam: JSON.stringify(pathParamTypes, null, 2),
queryParam: JSON.stringify(queryParamTypes, null, 2)
}, {
responses,
acceptHeader,
responseTypes
} = resolveResponseForPostmanRequest(context, operationItem[method], request);
requestIdentifier = method + path;
Object.assign(
requestTypesObject,
{ [requestIdentifier]: { request: requestTypes, response: responseTypes } }
);
if (!_2.isEmpty(acceptHeader)) { if (!_2.isEmpty(acceptHeader)) {
request.headers = _2.concat(request.headers, acceptHeader); request.headers = _2.concat(request.headers, acceptHeader);
} }
@@ -138864,7 +139136,8 @@ var require_schemaUtils2 = __commonJS({
responses responses
}) })
}, },
collectionVariables collectionVariables,
requestTypesObject
}; };
}, },
resolveResponseForPostmanRequest, resolveResponseForPostmanRequest,
@@ -141220,7 +141493,7 @@ var require_libV2 = __commonJS({
convertV2: function(context, cb) { convertV2: function(context, cb) {
let collectionTree = generateSkeletonTreeFromOpenAPI(context.openapi, context.computedOptions); let collectionTree = generateSkeletonTreeFromOpenAPI(context.openapi, context.computedOptions);
let preOrderTraversal = GraphLib.alg.preorder(collectionTree, "root:collection"); let preOrderTraversal = GraphLib.alg.preorder(collectionTree, "root:collection");
let collection = {}; let collection = {}, extractedTypesObject = {};
_2.forEach(preOrderTraversal, function(nodeIdentified) { _2.forEach(preOrderTraversal, function(nodeIdentified) {
let node = collectionTree.node(nodeIdentified); let node = collectionTree.node(nodeIdentified);
switch (node.type) { switch (node.type) {
@@ -141254,15 +141527,16 @@ var require_libV2 = __commonJS({
break; break;
} }
case "request": { case "request": {
let request = {}, collectionVariables = [], requestObject = {}; let request = {}, collectionVariables = [], requestObject = {}, requestTypesObject = {};
try { try {
({ request, collectionVariables } = resolvePostmanRequest( ({ request, collectionVariables, requestTypesObject } = resolvePostmanRequest(
context, context,
context.openapi.paths[node.meta.path], context.openapi.paths[node.meta.path],
node.meta.path, node.meta.path,
node.meta.method node.meta.method
)); ));
requestObject = generateRequestItemObject(request); requestObject = generateRequestItemObject(request);
extractedTypesObject = Object.assign({}, extractedTypesObject, requestTypesObject);
} catch (error) { } catch (error) {
console.error(error); console.error(error);
break; break;
@@ -141337,6 +141611,17 @@ var require_libV2 = __commonJS({
if (!_2.isEmpty(collection.variable)) { if (!_2.isEmpty(collection.variable)) {
collection.variable = _2.uniqBy(collection.variable, "key"); collection.variable = _2.uniqBy(collection.variable, "key");
} }
if (context.enableTypeFetching) {
return cb(null, {
result: true,
output: [{
type: "collection",
data: collection
}],
analytics: this.analytics || {},
extractedTypes: extractedTypesObject || {}
});
}
return cb(null, { return cb(null, {
result: true, result: true,
output: [{ output: [{
@@ -145118,7 +145403,7 @@ var require_schemapack = __commonJS({
var concreteUtils; var concreteUtils;
var pathBrowserify = require_path_browserify(); var pathBrowserify = require_path_browserify();
var SchemaPack = class { var SchemaPack = class {
constructor(input, options = {}, moduleVersion = MODULE_VERSION.V1) { constructor(input, options = {}, moduleVersion = MODULE_VERSION.V1, enableTypeFetching = false) {
if (input.type === schemaUtils.MULTI_FILE_API_TYPE_ALLOWED_VALUE && input.data && input.data[0] && input.data[0].path) { if (input.type === schemaUtils.MULTI_FILE_API_TYPE_ALLOWED_VALUE && input.data && input.data[0] && input.data[0].path) {
input = schemaUtils.mapDetectRootFilesInputToFolderInput(input); input = schemaUtils.mapDetectRootFilesInputToFolderInput(input);
} }
@@ -145136,6 +145421,7 @@ var require_schemapack = __commonJS({
actualStack: 0, actualStack: 0,
numberOfRequests: 0 numberOfRequests: 0
}; };
this.enableTypeFetching = enableTypeFetching;
this.computedOptions = utils.mergeOptions( this.computedOptions = utils.mergeOptions(
// predefined options // predefined options
_2.keyBy(this.definedOptions, "id"), _2.keyBy(this.definedOptions, "id"),
@@ -145814,6 +146100,14 @@ var require_openapi_to_postmanv2 = __commonJS({
} }
return cb(new UserError(_2.get(schema2, "validationResult.reason", DEFAULT_INVALID_ERROR))); return cb(new UserError(_2.get(schema2, "validationResult.reason", DEFAULT_INVALID_ERROR)));
}, },
convertV2WithTypes: function(input, options, cb) {
const enableTypeFetching = true;
var schema2 = new SchemaPack(input, options, MODULE_VERSION.V2, enableTypeFetching);
if (schema2.validated) {
return schema2.convertV2(cb);
}
return cb(new UserError(_2.get(schema2, "validationResult.reason", DEFAULT_INVALID_ERROR)));
},
validate: function(input) { validate: function(input) {
var schema2 = new SchemaPack(input); var schema2 = new SchemaPack(input);
return schema2.validationResult; return schema2.validationResult;

View File

@@ -7,7 +7,7 @@
"dev": "yaakcli dev ./src/index.js" "dev": "yaakcli dev ./src/index.js"
}, },
"dependencies": { "dependencies": {
"openapi-to-postmanv2": "^4.23.1", "openapi-to-postmanv2": "^5.0.0",
"yaml": "^2.4.2" "yaml": "^2.4.2"
}, },
"devDependencies": { "devDependencies": {