@typia/utils 13.0.0-dev.20260427 → 13.0.0-dev.20260427-3

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.
@@ -1 +1 @@
1
- {"version":3,"file":"LlmSchemaConverter2.mjs","sources":["LlmSchemaConverter.js"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.LlmSchemaConverter = void 0;\nconst JsonDescriptor_1 = require(\"../utils/internal/JsonDescriptor\");\nconst LlmTypeChecker_1 = require(\"../validators/LlmTypeChecker\");\nconst OpenApiTypeChecker_1 = require(\"../validators/OpenApiTypeChecker\");\nconst LlmDescriptionInverter_1 = require(\"./internal/LlmDescriptionInverter\");\nconst LlmParametersComposer_1 = require(\"./internal/LlmParametersComposer\");\nconst OpenApiConstraintShifter_1 = require(\"./internal/OpenApiConstraintShifter\");\n/**\n * OpenAPI to LLM schema converter.\n *\n * `LlmSchemaConverter` converts OpenAPI JSON schemas to LLM-compatible\n * {@link ILlmSchema} format. LLMs don't fully support JSON Schema, so this\n * simplifies schemas by removing unsupported features (tuples, `const`, mixed\n * unions).\n *\n * Main functions:\n *\n * - {@link parameters}: Convert object schema to {@link ILlmSchema.IParameters}\n * - {@link schema}: Convert any schema to {@link ILlmSchema}\n * - {@link invert}: Extract constraints from description back to schema\n *\n * Configuration options ({@link ILlmSchema.IConfig}):\n *\n * - `strict`: OpenAI structured output mode (all properties required)\n *\n * @author Jeongho Nam - https://github.com/samchon\n */\nvar LlmSchemaConverter;\n(function (LlmSchemaConverter) {\n /**\n * Get configuration with defaults applied.\n *\n * @param config Partial configuration\n * @returns Full configuration with defaults\n */\n LlmSchemaConverter.getConfig = (config) => { var _a; return ({\n strict: (_a = config === null || config === void 0 ? void 0 : config.strict) !== null && _a !== void 0 ? _a : false,\n }); };\n /* -----------------------------------------------------------\n CONVERTERS\n ----------------------------------------------------------- */\n /**\n * Convert OpenAPI object schema to LLM parameters schema.\n *\n * @param props.config Conversion configuration\n * @param props.components OpenAPI components for reference resolution\n * @param props.schema Object or reference schema to convert\n * @param props.accessor Error path accessor\n * @param props.refAccessor Reference path accessor\n * @returns Converted parameters or error\n */\n LlmSchemaConverter.parameters = (props) => {\n const config = LlmSchemaConverter.getConfig(props.config);\n const entity = LlmParametersComposer_1.LlmParametersFinder.parameters(Object.assign(Object.assign({}, props), { method: \"LlmSchemaConverter.parameters\" }));\n if (entity.success === false)\n return entity;\n const $defs = {};\n const result = transform(Object.assign(Object.assign({}, props), { config,\n $defs, schema: entity.value }));\n if (result.success === false)\n return result;\n return {\n success: true,\n value: Object.assign(Object.assign({}, result.value), { additionalProperties: false, $defs, description: OpenApiTypeChecker_1.OpenApiTypeChecker.isReference(props.schema)\n ? JsonDescriptor_1.JsonDescriptor.cascade({\n prefix: \"#/components/schemas/\",\n components: props.components,\n schema: Object.assign(Object.assign({}, props.schema), { description: result.value.description }),\n escape: true,\n })\n : result.value.description }),\n };\n };\n /**\n * Convert OpenAPI schema to LLM schema.\n *\n * @param props.config Conversion configuration\n * @param props.components OpenAPI components for reference resolution\n * @param props.$defs Definition store (mutated with referenced types)\n * @param props.schema Schema to convert\n * @param props.accessor Error path accessor\n * @param props.refAccessor Reference path accessor\n * @returns Converted schema or error\n */\n LlmSchemaConverter.schema = (props) => transform({\n config: LlmSchemaConverter.getConfig(props.config),\n components: props.components,\n $defs: props.$defs,\n schema: props.schema,\n accessor: props.accessor,\n refAccessor: props.refAccessor,\n });\n const transform = (props) => {\n var _a, _b;\n // PREPARE ASSETS\n const union = [];\n const attribute = Object.assign({ title: props.schema.title, description: props.schema.description, deprecated: props.schema.deprecated, readOnly: props.schema.readOnly, writeOnly: props.schema.writeOnly, example: props.schema.example, examples: props.schema.examples }, Object.fromEntries(Object.entries(props.schema).filter(([key, value]) => key.startsWith(\"x-\") && value !== undefined)));\n // VALIDADTE SCHEMA\n const reasons = [];\n OpenApiTypeChecker_1.OpenApiTypeChecker.visit({\n closure: (next, accessor) => {\n var _a;\n var _b;\n if (props.config.strict === true) {\n // STRICT MODE VALIDATION\n reasons.push(...validateStrict(next, accessor));\n }\n if (OpenApiTypeChecker_1.OpenApiTypeChecker.isTuple(next))\n reasons.push({\n accessor,\n schema: next,\n message: `LLM does not allow tuple type.`,\n });\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isReference(next)) {\n // UNABLE TO FIND MATCHED REFERENCE\n const key = (_b = next.$ref.split(\"#/components/schemas/\")[1]) !== null && _b !== void 0 ? _b : next.$ref.split(\"/\").at(-1);\n if (((_a = props.components.schemas) === null || _a === void 0 ? void 0 : _a[key]) === undefined)\n reasons.push({\n schema: next,\n accessor: accessor,\n message: `unable to find reference type ${JSON.stringify(key)}.`,\n });\n }\n },\n components: props.components,\n schema: props.schema,\n accessor: props.accessor,\n refAccessor: props.refAccessor,\n });\n if (reasons.length > 0)\n return {\n success: false,\n error: {\n method: \"LlmSchemaConverter.schema\",\n message: \"Failed to compose LLM schema\",\n reasons,\n },\n };\n const convertConstant = (input) => {\n if (input.const === null)\n return {\n type: \"null\",\n };\n if (typeof input.const === \"boolean\")\n return {\n type: \"boolean\",\n enum: [input.const],\n };\n if (typeof input.const === \"string\")\n return {\n type: \"string\",\n enum: [input.const],\n };\n if (typeof input.const === \"number\")\n return {\n type: Number.isInteger(input.const) ? \"integer\" : \"number\",\n enum: [input.const],\n };\n return null;\n };\n const visit = (input, accessor) => {\n var _a;\n var _b, _c, _d, _e;\n if (OpenApiTypeChecker_1.OpenApiTypeChecker.isOneOf(input)) {\n // UNION TYPE\n input.oneOf.forEach((s, i) => visit(s, `${accessor}.oneOf[${i}]`));\n }\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isReference(input)) {\n // REFERENCE TYPE\n const key = (_b = input.$ref.split(\"#/components/schemas/\")[1]) !== null && _b !== void 0 ? _b : input.$ref.split(\"/\").at(-1);\n const target = (_a = props.components.schemas) === null || _a === void 0 ? void 0 : _a[key];\n if (target === undefined)\n return;\n else {\n // KEEP THE REFERENCE TYPE\n const out = () => {\n union.push(Object.assign(Object.assign({}, input), { $ref: `#/$defs/${key}` }));\n };\n if (props.$defs[key] !== undefined)\n return out();\n props.$defs[key] = {};\n const converted = transform({\n config: props.config,\n components: props.components,\n $defs: props.$defs,\n schema: target,\n refAccessor: props.refAccessor,\n accessor: `${(_c = props.refAccessor) !== null && _c !== void 0 ? _c : \"$def\"}[${JSON.stringify(key)}]`,\n });\n if (converted.success === false)\n return; // UNREACHABLE\n props.$defs[key] = converted.value;\n return out();\n }\n }\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isObject(input)) {\n // OBJECT TYPE\n const properties = Object.fromEntries(Object.entries((_d = input.properties) !== null && _d !== void 0 ? _d : {})\n .map(([key, value]) => {\n var _a;\n const converted = transform({\n config: props.config,\n components: props.components,\n $defs: props.$defs,\n schema: value,\n refAccessor: props.refAccessor,\n accessor: `${(_a = props.accessor) !== null && _a !== void 0 ? _a : \"$input.schema\"}.properties[${JSON.stringify(key)}]`,\n });\n if (converted.success === false) {\n reasons.push(...converted.error.reasons);\n return [key, null];\n }\n return [key, converted.value];\n })\n .filter(([, value]) => value !== null));\n if (Object.values(properties).some((v) => v === null))\n return;\n const additionalProperties = (() => {\n if (typeof input.additionalProperties === \"object\" &&\n input.additionalProperties !== null) {\n const converted = transform({\n config: props.config,\n components: props.components,\n $defs: props.$defs,\n schema: input.additionalProperties,\n refAccessor: props.refAccessor,\n accessor: `${accessor}.additionalProperties`,\n });\n if (converted.success === false) {\n reasons.push(...converted.error.reasons);\n return null;\n }\n return converted.value;\n }\n return props.config.strict === true\n ? false\n : input.additionalProperties;\n })();\n if (additionalProperties === null)\n return;\n union.push(Object.assign(Object.assign({}, input), { properties,\n additionalProperties, required: (_e = input.required) !== null && _e !== void 0 ? _e : [], description: props.config.strict === true\n ? JsonDescriptor_1.JsonDescriptor.take(input)\n : input.description }));\n }\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isArray(input)) {\n // ARRAY TYPE\n const items = transform({\n config: props.config,\n components: props.components,\n $defs: props.$defs,\n schema: input.items,\n refAccessor: props.refAccessor,\n accessor: `${accessor}.items`,\n });\n if (items.success === false) {\n reasons.push(...items.error.reasons);\n return;\n }\n union.push(props.config.strict === true\n ? OpenApiConstraintShifter_1.OpenApiConstraintShifter.shiftArray(Object.assign(Object.assign({}, input), { items: items.value }))\n : Object.assign(Object.assign({}, input), { items: items.value }));\n }\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isConstant(input)) {\n const constant = convertConstant(input);\n if (constant !== null)\n union.push(constant);\n }\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isString(input))\n union.push(props.config.strict === true\n ? OpenApiConstraintShifter_1.OpenApiConstraintShifter.shiftString(Object.assign({}, input))\n : input);\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isNumber(input) ||\n OpenApiTypeChecker_1.OpenApiTypeChecker.isInteger(input))\n union.push(props.config.strict === true\n ? OpenApiConstraintShifter_1.OpenApiConstraintShifter.shiftNumeric(Object.assign({}, input))\n : input);\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isTuple(input))\n return; // UNREACHABLE\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isConstant(input) === false)\n union.push(Object.assign({}, input));\n };\n visit(props.schema, (_a = props.accessor) !== null && _a !== void 0 ? _a : \"$input.schema\");\n const normalized = normalizeLlmUnion(union);\n if (reasons.length > 0)\n return {\n success: false,\n error: {\n method: \"LlmSchemaConverter.schema\",\n message: \"Failed to compose LLM schema\",\n reasons,\n },\n };\n else if (normalized.length === 0)\n return {\n // unknown type\n success: true,\n value: Object.assign(Object.assign({}, attribute), { type: undefined }),\n };\n else if (normalized.length === 1)\n return {\n // single type\n success: true,\n value: Object.assign(Object.assign(Object.assign({}, attribute), normalized[0]), { description: props.config.strict === true &&\n LlmTypeChecker_1.LlmTypeChecker.isReference(normalized[0])\n ? undefined\n : ((_b = normalized[0].description) !== null && _b !== void 0 ? _b : attribute.description) }),\n };\n return {\n success: true,\n value: Object.assign(Object.assign({}, attribute), { anyOf: normalized.map((u) => (Object.assign(Object.assign({}, u), { description: props.config.strict === true && LlmTypeChecker_1.LlmTypeChecker.isReference(u)\n ? undefined\n : u.description }))), \"x-discriminator\": OpenApiTypeChecker_1.OpenApiTypeChecker.isOneOf(props.schema) &&\n props.schema.discriminator !== undefined &&\n props.schema.oneOf.length === normalized.length &&\n normalized.every((e) => LlmTypeChecker_1.LlmTypeChecker.isReference(e) || LlmTypeChecker_1.LlmTypeChecker.isNull(e))\n ? {\n propertyName: props.schema.discriminator.propertyName,\n mapping: props.schema.discriminator.mapping !== undefined\n ? Object.fromEntries(Object.entries(props.schema.discriminator.mapping).map(([key, value]) => [\n key,\n `#/$defs/${value.split(\"/\").at(-1)}`,\n ]))\n : discriminatorMapping({\n propertyName: props.schema.discriminator.propertyName,\n refs: normalized.filter(LlmTypeChecker_1.LlmTypeChecker.isReference),\n $defs: props.$defs,\n }),\n }\n : undefined }),\n };\n };\n /* -----------------------------------------------------------\n INVERTERS\n ----------------------------------------------------------- */\n /**\n * Convert LLM schema back to OpenAPI schema.\n *\n * Restores constraint information from description tags and converts `$defs`\n * references to `#/components/schemas`.\n *\n * @param props.components Target components (mutated with definitions)\n * @param props.schema LLM schema to invert\n * @param props.$defs LLM schema definitions\n * @returns OpenAPI JSON schema\n */\n LlmSchemaConverter.invert = (props) => {\n const union = [];\n const attribute = Object.assign({ title: props.schema.title, description: props.schema.description, deprecated: props.schema.deprecated, readOnly: props.schema.readOnly, writeOnly: props.schema.writeOnly, example: props.schema.example, examples: props.schema.examples }, Object.fromEntries(Object.entries(props.schema).filter(([key, value]) => key.startsWith(\"x-\") && value !== undefined)));\n const next = (schema) => LlmSchemaConverter.invert({\n components: props.components,\n $defs: props.$defs,\n schema,\n });\n const visit = (schema) => {\n var _a, _b, _c, _d;\n var _e, _f, _g;\n var _h;\n if (LlmTypeChecker_1.LlmTypeChecker.isArray(schema))\n union.push(Object.assign(Object.assign(Object.assign({}, schema), LlmDescriptionInverter_1.LlmDescriptionInverter.array(schema.description)), { items: next(schema.items) }));\n else if (LlmTypeChecker_1.LlmTypeChecker.isObject(schema))\n union.push(Object.assign(Object.assign({}, schema), { properties: Object.fromEntries(Object.entries(schema.properties).map(([key, value]) => [\n key,\n next(value),\n ])), additionalProperties: typeof schema.additionalProperties === \"object\" &&\n schema.additionalProperties !== null\n ? next(schema.additionalProperties)\n : schema.additionalProperties }));\n else if (LlmTypeChecker_1.LlmTypeChecker.isAnyOf(schema))\n schema.anyOf.forEach(visit);\n else if (LlmTypeChecker_1.LlmTypeChecker.isReference(schema)) {\n const key = (_e = schema.$ref.split(\"#/$defs/\")[1]) !== null && _e !== void 0 ? _e : schema.$ref.split(\"/\").at(-1);\n if (((_a = props.components.schemas) === null || _a === void 0 ? void 0 : _a[key]) === undefined) {\n (_f = (_h = props.components).schemas) !== null && _f !== void 0 ? _f : (_h.schemas = {});\n props.components.schemas[key] = {};\n props.components.schemas[key] = next((_g = props.$defs[key]) !== null && _g !== void 0 ? _g : {});\n }\n union.push(Object.assign(Object.assign({}, schema), { $ref: `#/components/schemas/${key}` }));\n }\n else if (LlmTypeChecker_1.LlmTypeChecker.isBoolean(schema))\n if (!!((_b = schema.enum) === null || _b === void 0 ? void 0 : _b.length))\n schema.enum.forEach((v) => union.push({\n const: v,\n }));\n else\n union.push(schema);\n else if (LlmTypeChecker_1.LlmTypeChecker.isInteger(schema) ||\n LlmTypeChecker_1.LlmTypeChecker.isNumber(schema))\n if (!!((_c = schema.enum) === null || _c === void 0 ? void 0 : _c.length))\n schema.enum.forEach((v) => union.push({\n const: v,\n }));\n else\n union.push(Object.assign(Object.assign(Object.assign({}, schema), LlmDescriptionInverter_1.LlmDescriptionInverter.numeric(schema.description)), { enum: undefined }));\n else if (LlmTypeChecker_1.LlmTypeChecker.isString(schema))\n if (!!((_d = schema.enum) === null || _d === void 0 ? void 0 : _d.length))\n schema.enum.forEach((v) => union.push({\n const: v,\n }));\n else\n union.push(Object.assign(Object.assign(Object.assign({}, schema), LlmDescriptionInverter_1.LlmDescriptionInverter.string(schema.description)), { enum: undefined }));\n else\n union.push(Object.assign({}, schema));\n };\n visit(props.schema);\n return Object.assign(Object.assign({}, attribute), (union.length === 0\n ? { type: undefined }\n : union.length === 1\n ? Object.assign({}, union[0]) : {\n oneOf: union.map((u) => (Object.assign(Object.assign({}, u), { nullable: undefined }))),\n discriminator: LlmTypeChecker_1.LlmTypeChecker.isAnyOf(props.schema) &&\n props.schema[\"x-discriminator\"] !== undefined\n ? {\n propertyName: props.schema[\"x-discriminator\"].propertyName,\n mapping: props.schema[\"x-discriminator\"].mapping !== undefined\n ? Object.fromEntries(Object.entries(props.schema[\"x-discriminator\"].mapping).map(([key, value]) => [\n key,\n `#/components/schemas/${value.split(\"/\").at(-1)}`,\n ]))\n : undefined,\n }\n : undefined,\n }));\n };\n})(LlmSchemaConverter || (exports.LlmSchemaConverter = LlmSchemaConverter = {}));\nconst discriminatorMapping = (props) => {\n const entries = props.refs.flatMap((ref) => {\n var _a;\n const key = (_a = ref.$ref.split(\"#/$defs/\")[1]) !== null && _a !== void 0 ? _a : ref.$ref.split(\"/\").at(-1);\n const schema = props.$defs[key];\n if (!schema || !LlmTypeChecker_1.LlmTypeChecker.isObject(schema))\n return [];\n const literals = llmDiscriminatorLiterals(schema.properties[props.propertyName], props.$defs);\n return literals.map((literal) => [literal, ref.$ref]);\n });\n return entries.length !== 0 ? Object.fromEntries(entries) : undefined;\n};\nconst llmDiscriminatorLiterals = (schema, $defs) => {\n var _a, _b;\n if (schema === undefined)\n return [];\n if (LlmTypeChecker_1.LlmTypeChecker.isReference(schema)) {\n const key = (_a = schema.$ref.split(\"#/$defs/\")[1]) !== null && _a !== void 0 ? _a : schema.$ref.split(\"/\").at(-1);\n return llmDiscriminatorLiterals($defs[key], $defs);\n }\n if (LlmTypeChecker_1.LlmTypeChecker.isString(schema))\n return (_b = schema.enum) !== null && _b !== void 0 ? _b : [];\n if (LlmTypeChecker_1.LlmTypeChecker.isAnyOf(schema))\n return schema.anyOf.flatMap((child) => llmDiscriminatorLiterals(child, $defs));\n return [];\n};\nconst normalizeLlmUnion = (union) => {\n if (union.length <= 1)\n return union;\n if (union.every(isEnumOnlyString)) {\n return [\n {\n type: \"string\",\n enum: uniqueEnumValues(union.flatMap((schema) => { var _a; return (_a = schema.enum) !== null && _a !== void 0 ? _a : []; })),\n },\n ];\n }\n if (union.every(isEnumOnlyBoolean)) {\n return [\n {\n type: \"boolean\",\n enum: uniqueEnumValues(union.flatMap((schema) => { var _a; return (_a = schema.enum) !== null && _a !== void 0 ? _a : []; })),\n },\n ];\n }\n if (union.every(isEnumOnlyInteger)) {\n return [\n {\n type: \"integer\",\n enum: uniqueEnumValues(union.flatMap((schema) => { var _a; return (_a = schema.enum) !== null && _a !== void 0 ? _a : []; })),\n },\n ];\n }\n if (union.every(isEnumOnlyNumber)) {\n return [\n {\n type: \"number\",\n enum: uniqueEnumValues(union.flatMap((schema) => { var _a; return (_a = schema.enum) !== null && _a !== void 0 ? _a : []; })),\n },\n ];\n }\n return union;\n};\nconst isEnumOnlyString = (schema) => LlmTypeChecker_1.LlmTypeChecker.isString(schema) &&\n Array.isArray(schema.enum) &&\n schema.enum.length !== 0 &&\n primitiveSchemaHasOnlyEnum(schema);\nconst isEnumOnlyBoolean = (schema) => LlmTypeChecker_1.LlmTypeChecker.isBoolean(schema) &&\n Array.isArray(schema.enum) &&\n schema.enum.length !== 0 &&\n primitiveSchemaHasOnlyEnum(schema);\nconst isEnumOnlyInteger = (schema) => LlmTypeChecker_1.LlmTypeChecker.isInteger(schema) &&\n Array.isArray(schema.enum) &&\n schema.enum.length !== 0 &&\n primitiveSchemaHasOnlyEnum(schema);\nconst isEnumOnlyNumber = (schema) => LlmTypeChecker_1.LlmTypeChecker.isNumber(schema) &&\n Array.isArray(schema.enum) &&\n schema.enum.length !== 0 &&\n primitiveSchemaHasOnlyEnum(schema);\nconst primitiveSchemaHasOnlyEnum = (schema) => Object.entries(schema).every(([key, value]) => {\n if (value === undefined)\n return true;\n return key === \"type\" || key === \"enum\";\n});\nconst uniqueEnumValues = (values) => Array.from(new Set(values));\nconst validateStrict = (schema, accessor) => {\n var _a;\n var _b;\n const reasons = [];\n if (OpenApiTypeChecker_1.OpenApiTypeChecker.isObject(schema)) {\n if (!!schema.additionalProperties)\n reasons.push({\n schema: schema,\n accessor: `${accessor}.additionalProperties`,\n message: \"LLM does not allow additionalProperties in strict mode, the dynamic key typed object.\",\n });\n for (const key of Object.keys((_b = schema.properties) !== null && _b !== void 0 ? _b : {}))\n if (((_a = schema.required) === null || _a === void 0 ? void 0 : _a.includes(key)) === false)\n reasons.push({\n schema: schema,\n accessor: `${accessor}.properties.${key}`,\n message: \"LLM does not allow optional properties in strict mode.\",\n });\n }\n return reasons;\n};\n//# sourceMappingURL=LlmSchemaConverter.js.map"],"names":["LlmSchemaConverter_1","require$$0","require$$1","require$$2","require$$3","require$$4","require$$5","LlmSchemaConverter"],"mappings":"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"}
1
+ {"version":3,"file":"LlmSchemaConverter2.mjs","sources":["LlmSchemaConverter.js"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.LlmSchemaConverter = void 0;\nconst JsonDescriptor_1 = require(\"../utils/internal/JsonDescriptor\");\nconst LlmTypeChecker_1 = require(\"../validators/LlmTypeChecker\");\nconst OpenApiTypeChecker_1 = require(\"../validators/OpenApiTypeChecker\");\nconst LlmDescriptionInverter_1 = require(\"./internal/LlmDescriptionInverter\");\nconst LlmParametersComposer_1 = require(\"./internal/LlmParametersComposer\");\nconst OpenApiConstraintShifter_1 = require(\"./internal/OpenApiConstraintShifter\");\n/**\n * OpenAPI to LLM schema converter.\n *\n * `LlmSchemaConverter` converts OpenAPI JSON schemas to LLM-compatible\n * {@link ILlmSchema} format. LLMs don't fully support JSON Schema, so this\n * simplifies schemas by removing unsupported features (tuples, `const`, mixed\n * unions).\n *\n * Main functions:\n *\n * - {@link parameters}: Convert object schema to {@link ILlmSchema.IParameters}\n * - {@link schema}: Convert any schema to {@link ILlmSchema}\n * - {@link invert}: Extract constraints from description back to schema\n *\n * Configuration options ({@link ILlmSchema.IConfig}):\n *\n * - `strict`: OpenAI structured output mode (all properties required)\n *\n * @author Jeongho Nam - https://github.com/samchon\n */\nvar LlmSchemaConverter;\n(function (LlmSchemaConverter) {\n /**\n * Get configuration with defaults applied.\n *\n * @param config Partial configuration\n * @returns Full configuration with defaults\n */\n LlmSchemaConverter.getConfig = (config) => { var _a; return ({\n strict: (_a = config === null || config === void 0 ? void 0 : config.strict) !== null && _a !== void 0 ? _a : false,\n }); };\n /* -----------------------------------------------------------\n CONVERTERS\n ----------------------------------------------------------- */\n /**\n * Convert OpenAPI object schema to LLM parameters schema.\n *\n * @param props.config Conversion configuration\n * @param props.components OpenAPI components for reference resolution\n * @param props.schema Object or reference schema to convert\n * @param props.accessor Error path accessor\n * @param props.refAccessor Reference path accessor\n * @returns Converted parameters or error\n */\n LlmSchemaConverter.parameters = (props) => {\n const config = LlmSchemaConverter.getConfig(props.config);\n const entity = LlmParametersComposer_1.LlmParametersFinder.parameters(Object.assign(Object.assign({}, props), { method: \"LlmSchemaConverter.parameters\" }));\n if (entity.success === false)\n return entity;\n const $defs = {};\n const result = transform(Object.assign(Object.assign({}, props), { config,\n $defs, schema: entity.value }));\n if (result.success === false)\n return result;\n return {\n success: true,\n value: Object.assign(Object.assign({}, result.value), { additionalProperties: false, $defs, description: OpenApiTypeChecker_1.OpenApiTypeChecker.isReference(props.schema)\n ? JsonDescriptor_1.JsonDescriptor.cascade({\n prefix: \"#/components/schemas/\",\n components: props.components,\n schema: Object.assign(Object.assign({}, props.schema), { description: result.value.description }),\n escape: true,\n })\n : result.value.description }),\n };\n };\n /**\n * Convert OpenAPI schema to LLM schema.\n *\n * @param props.config Conversion configuration\n * @param props.components OpenAPI components for reference resolution\n * @param props.$defs Definition store (mutated with referenced types)\n * @param props.schema Schema to convert\n * @param props.accessor Error path accessor\n * @param props.refAccessor Reference path accessor\n * @returns Converted schema or error\n */\n LlmSchemaConverter.schema = (props) => transform({\n config: LlmSchemaConverter.getConfig(props.config),\n components: props.components,\n $defs: props.$defs,\n schema: props.schema,\n accessor: props.accessor,\n refAccessor: props.refAccessor,\n });\n const transform = (props) => {\n var _a, _b;\n // PREPARE ASSETS\n const union = [];\n const attribute = Object.assign({ title: props.schema.title, description: props.schema.description, deprecated: props.schema.deprecated, readOnly: props.schema.readOnly, writeOnly: props.schema.writeOnly, example: props.schema.example, examples: props.schema.examples }, Object.fromEntries(Object.entries(props.schema).filter(([key, value]) => key.startsWith(\"x-\") && value !== undefined)));\n // VALIDADTE SCHEMA\n const reasons = [];\n OpenApiTypeChecker_1.OpenApiTypeChecker.visit({\n closure: (next, accessor) => {\n var _a;\n var _b;\n if (props.config.strict === true) {\n // STRICT MODE VALIDATION\n reasons.push(...validateStrict(next, accessor));\n }\n if (OpenApiTypeChecker_1.OpenApiTypeChecker.isTuple(next))\n reasons.push({\n accessor,\n schema: next,\n message: `LLM does not allow tuple type.`,\n });\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isReference(next)) {\n // UNABLE TO FIND MATCHED REFERENCE\n const key = (_b = next.$ref.split(\"#/components/schemas/\")[1]) !== null && _b !== void 0 ? _b : next.$ref.split(\"/\").at(-1);\n if (((_a = props.components.schemas) === null || _a === void 0 ? void 0 : _a[key]) === undefined)\n reasons.push({\n schema: next,\n accessor: accessor,\n message: `unable to find reference type ${JSON.stringify(key)}.`,\n });\n }\n },\n components: props.components,\n schema: props.schema,\n accessor: props.accessor,\n refAccessor: props.refAccessor,\n });\n if (reasons.length > 0)\n return {\n success: false,\n error: {\n method: \"LlmSchemaConverter.schema\",\n message: \"Failed to compose LLM schema\",\n reasons,\n },\n };\n const visitConstant = (input) => {\n const insert = (value) => {\n var _a;\n const matched = union.find((u) => (u === null || u === void 0 ? void 0 : u.type) === typeof value);\n if (matched !== undefined) {\n (_a = matched.enum) !== null && _a !== void 0 ? _a : (matched.enum = []);\n matched.enum.push(value);\n }\n else\n union.push({\n type: typeof value,\n enum: [value],\n });\n };\n if (OpenApiTypeChecker_1.OpenApiTypeChecker.isConstant(input))\n insert(input.const);\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isOneOf(input))\n input.oneOf.forEach(visitConstant);\n };\n const visit = (input, accessor) => {\n var _a;\n var _b, _c, _d, _e;\n if (OpenApiTypeChecker_1.OpenApiTypeChecker.isOneOf(input)) {\n // UNION TYPE\n input.oneOf.forEach((s, i) => visit(s, `${accessor}.oneOf[${i}]`));\n }\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isReference(input)) {\n // REFERENCE TYPE\n const key = (_b = input.$ref.split(\"#/components/schemas/\")[1]) !== null && _b !== void 0 ? _b : input.$ref.split(\"/\").at(-1);\n const target = (_a = props.components.schemas) === null || _a === void 0 ? void 0 : _a[key];\n if (target === undefined)\n return;\n else {\n // KEEP THE REFERENCE TYPE\n const out = () => {\n union.push(Object.assign(Object.assign({}, input), { $ref: `#/$defs/${key}` }));\n };\n if (props.$defs[key] !== undefined)\n return out();\n props.$defs[key] = {};\n const converted = transform({\n config: props.config,\n components: props.components,\n $defs: props.$defs,\n schema: target,\n refAccessor: props.refAccessor,\n accessor: `${(_c = props.refAccessor) !== null && _c !== void 0 ? _c : \"$def\"}[${JSON.stringify(key)}]`,\n });\n if (converted.success === false)\n return; // UNREACHABLE\n props.$defs[key] = converted.value;\n return out();\n }\n }\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isObject(input)) {\n // OBJECT TYPE\n const properties = Object.fromEntries(Object.entries((_d = input.properties) !== null && _d !== void 0 ? _d : {})\n .map(([key, value]) => {\n var _a;\n const converted = transform({\n config: props.config,\n components: props.components,\n $defs: props.$defs,\n schema: value,\n refAccessor: props.refAccessor,\n accessor: `${(_a = props.accessor) !== null && _a !== void 0 ? _a : \"$input.schema\"}.properties[${JSON.stringify(key)}]`,\n });\n if (converted.success === false) {\n reasons.push(...converted.error.reasons);\n return [key, null];\n }\n return [key, converted.value];\n })\n .filter(([, value]) => value !== null));\n if (Object.values(properties).some((v) => v === null))\n return;\n const additionalProperties = (() => {\n if (typeof input.additionalProperties === \"object\" &&\n input.additionalProperties !== null) {\n const converted = transform({\n config: props.config,\n components: props.components,\n $defs: props.$defs,\n schema: input.additionalProperties,\n refAccessor: props.refAccessor,\n accessor: `${accessor}.additionalProperties`,\n });\n if (converted.success === false) {\n reasons.push(...converted.error.reasons);\n return null;\n }\n return converted.value;\n }\n return props.config.strict === true\n ? false\n : input.additionalProperties;\n })();\n if (additionalProperties === null)\n return;\n union.push(Object.assign(Object.assign({}, input), { properties,\n additionalProperties, required: (_e = input.required) !== null && _e !== void 0 ? _e : [], description: props.config.strict === true\n ? JsonDescriptor_1.JsonDescriptor.take(input)\n : input.description }));\n }\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isArray(input)) {\n // ARRAY TYPE\n const items = transform({\n config: props.config,\n components: props.components,\n $defs: props.$defs,\n schema: input.items,\n refAccessor: props.refAccessor,\n accessor: `${accessor}.items`,\n });\n if (items.success === false) {\n reasons.push(...items.error.reasons);\n return;\n }\n union.push(props.config.strict === true\n ? OpenApiConstraintShifter_1.OpenApiConstraintShifter.shiftArray(Object.assign(Object.assign({}, input), { items: items.value }))\n : Object.assign(Object.assign({}, input), { items: items.value }));\n }\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isString(input))\n union.push(props.config.strict === true\n ? OpenApiConstraintShifter_1.OpenApiConstraintShifter.shiftString(Object.assign({}, input))\n : input);\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isNumber(input) ||\n OpenApiTypeChecker_1.OpenApiTypeChecker.isInteger(input))\n union.push(props.config.strict === true\n ? OpenApiConstraintShifter_1.OpenApiConstraintShifter.shiftNumeric(Object.assign({}, input))\n : input);\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isTuple(input))\n return; // UNREACHABLE\n else if (OpenApiTypeChecker_1.OpenApiTypeChecker.isConstant(input) === false)\n union.push(Object.assign({}, input));\n };\n visitConstant(props.schema);\n visit(props.schema, (_a = props.accessor) !== null && _a !== void 0 ? _a : \"$input.schema\");\n if (reasons.length > 0)\n return {\n success: false,\n error: {\n method: \"LlmSchemaConverter.schema\",\n message: \"Failed to compose LLM schema\",\n reasons,\n },\n };\n else if (union.length === 0)\n return {\n // unknown type\n success: true,\n value: Object.assign(Object.assign({}, attribute), { type: undefined }),\n };\n else if (union.length === 1)\n return {\n // single type\n success: true,\n value: Object.assign(Object.assign(Object.assign({}, attribute), union[0]), { description: props.config.strict === true &&\n LlmTypeChecker_1.LlmTypeChecker.isReference(union[0])\n ? undefined\n : ((_b = union[0].description) !== null && _b !== void 0 ? _b : attribute.description) }),\n };\n return {\n success: true,\n value: Object.assign(Object.assign({}, attribute), { anyOf: union.map((u) => (Object.assign(Object.assign({}, u), { description: props.config.strict === true && LlmTypeChecker_1.LlmTypeChecker.isReference(u)\n ? undefined\n : u.description }))), \"x-discriminator\": OpenApiTypeChecker_1.OpenApiTypeChecker.isOneOf(props.schema) &&\n props.schema.discriminator !== undefined &&\n props.schema.oneOf.length === union.length &&\n union.every((e) => LlmTypeChecker_1.LlmTypeChecker.isReference(e) || LlmTypeChecker_1.LlmTypeChecker.isNull(e))\n ? {\n propertyName: props.schema.discriminator.propertyName,\n mapping: props.schema.discriminator.mapping !== undefined\n ? Object.fromEntries(Object.entries(props.schema.discriminator.mapping).map(([key, value]) => [\n key,\n `#/$defs/${value.split(\"/\").at(-1)}`,\n ]))\n : undefined,\n }\n : undefined }),\n };\n };\n /* -----------------------------------------------------------\n INVERTERS\n ----------------------------------------------------------- */\n /**\n * Convert LLM schema back to OpenAPI schema.\n *\n * Restores constraint information from description tags and converts `$defs`\n * references to `#/components/schemas`.\n *\n * @param props.components Target components (mutated with definitions)\n * @param props.schema LLM schema to invert\n * @param props.$defs LLM schema definitions\n * @returns OpenAPI JSON schema\n */\n LlmSchemaConverter.invert = (props) => {\n const union = [];\n const attribute = Object.assign({ title: props.schema.title, description: props.schema.description, deprecated: props.schema.deprecated, readOnly: props.schema.readOnly, writeOnly: props.schema.writeOnly, example: props.schema.example, examples: props.schema.examples }, Object.fromEntries(Object.entries(props.schema).filter(([key, value]) => key.startsWith(\"x-\") && value !== undefined)));\n const next = (schema) => LlmSchemaConverter.invert({\n components: props.components,\n $defs: props.$defs,\n schema,\n });\n const visit = (schema) => {\n var _a, _b, _c, _d;\n var _e, _f, _g;\n var _h;\n if (LlmTypeChecker_1.LlmTypeChecker.isArray(schema))\n union.push(Object.assign(Object.assign(Object.assign({}, schema), LlmDescriptionInverter_1.LlmDescriptionInverter.array(schema.description)), { items: next(schema.items) }));\n else if (LlmTypeChecker_1.LlmTypeChecker.isObject(schema))\n union.push(Object.assign(Object.assign({}, schema), { properties: Object.fromEntries(Object.entries(schema.properties).map(([key, value]) => [\n key,\n next(value),\n ])), additionalProperties: typeof schema.additionalProperties === \"object\" &&\n schema.additionalProperties !== null\n ? next(schema.additionalProperties)\n : schema.additionalProperties }));\n else if (LlmTypeChecker_1.LlmTypeChecker.isAnyOf(schema))\n schema.anyOf.forEach(visit);\n else if (LlmTypeChecker_1.LlmTypeChecker.isReference(schema)) {\n const key = (_e = schema.$ref.split(\"#/$defs/\")[1]) !== null && _e !== void 0 ? _e : schema.$ref.split(\"/\").at(-1);\n if (((_a = props.components.schemas) === null || _a === void 0 ? void 0 : _a[key]) === undefined) {\n (_f = (_h = props.components).schemas) !== null && _f !== void 0 ? _f : (_h.schemas = {});\n props.components.schemas[key] = {};\n props.components.schemas[key] = next((_g = props.$defs[key]) !== null && _g !== void 0 ? _g : {});\n }\n union.push(Object.assign(Object.assign({}, schema), { $ref: `#/components/schemas/${key}` }));\n }\n else if (LlmTypeChecker_1.LlmTypeChecker.isBoolean(schema))\n if (!!((_b = schema.enum) === null || _b === void 0 ? void 0 : _b.length))\n schema.enum.forEach((v) => union.push({\n const: v,\n }));\n else\n union.push(schema);\n else if (LlmTypeChecker_1.LlmTypeChecker.isInteger(schema) ||\n LlmTypeChecker_1.LlmTypeChecker.isNumber(schema))\n if (!!((_c = schema.enum) === null || _c === void 0 ? void 0 : _c.length))\n schema.enum.forEach((v) => union.push({\n const: v,\n }));\n else\n union.push(Object.assign(Object.assign(Object.assign({}, schema), LlmDescriptionInverter_1.LlmDescriptionInverter.numeric(schema.description)), { enum: undefined }));\n else if (LlmTypeChecker_1.LlmTypeChecker.isString(schema))\n if (!!((_d = schema.enum) === null || _d === void 0 ? void 0 : _d.length))\n schema.enum.forEach((v) => union.push({\n const: v,\n }));\n else\n union.push(Object.assign(Object.assign(Object.assign({}, schema), LlmDescriptionInverter_1.LlmDescriptionInverter.string(schema.description)), { enum: undefined }));\n else\n union.push(Object.assign({}, schema));\n };\n visit(props.schema);\n return Object.assign(Object.assign({}, attribute), (union.length === 0\n ? { type: undefined }\n : union.length === 1\n ? Object.assign({}, union[0]) : {\n oneOf: union.map((u) => (Object.assign(Object.assign({}, u), { nullable: undefined }))),\n discriminator: LlmTypeChecker_1.LlmTypeChecker.isAnyOf(props.schema) &&\n props.schema[\"x-discriminator\"] !== undefined\n ? {\n propertyName: props.schema[\"x-discriminator\"].propertyName,\n mapping: props.schema[\"x-discriminator\"].mapping !== undefined\n ? Object.fromEntries(Object.entries(props.schema[\"x-discriminator\"].mapping).map(([key, value]) => [\n key,\n `#/components/schemas/${value.split(\"/\").at(-1)}`,\n ]))\n : undefined,\n }\n : undefined,\n }));\n };\n})(LlmSchemaConverter || (exports.LlmSchemaConverter = LlmSchemaConverter = {}));\nconst validateStrict = (schema, accessor) => {\n var _a;\n var _b;\n const reasons = [];\n if (OpenApiTypeChecker_1.OpenApiTypeChecker.isObject(schema)) {\n if (!!schema.additionalProperties)\n reasons.push({\n schema: schema,\n accessor: `${accessor}.additionalProperties`,\n message: \"LLM does not allow additionalProperties in strict mode, the dynamic key typed object.\",\n });\n for (const key of Object.keys((_b = schema.properties) !== null && _b !== void 0 ? _b : {}))\n if (((_a = schema.required) === null || _a === void 0 ? void 0 : _a.includes(key)) === false)\n reasons.push({\n schema: schema,\n accessor: `${accessor}.properties.${key}`,\n message: \"LLM does not allow optional properties in strict mode.\",\n });\n }\n return reasons;\n};\n//# sourceMappingURL=LlmSchemaConverter.js.map"],"names":["LlmSchemaConverter_1","require$$0","require$$1","require$$2","require$$3","require$$4","require$$5","LlmSchemaConverter"],"mappings":"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"}
@@ -303,13 +303,10 @@ var OpenApiV3_1Upgrader;
303
303
  union.push(Object.assign(Object.assign({}, schema), {
304
304
  items: undefined,
305
305
  prefixItems: schema.prefixItems.map(OpenApiV3_1Upgrader.convertSchema(components)),
306
- additionalItems: schema.items !== undefined &&
307
- Array.isArray(schema.items) === false
308
- ? OpenApiV3_1Upgrader.convertSchema(components)(schema.items)
309
- : typeof schema.additionalItems === "object" &&
310
- schema.additionalItems !== null
311
- ? OpenApiV3_1Upgrader.convertSchema(components)(schema.additionalItems)
312
- : schema.additionalItems,
306
+ additionalItems: typeof schema.additionalItems === "object" &&
307
+ schema.additionalItems !== null
308
+ ? OpenApiV3_1Upgrader.convertSchema(components)(schema.additionalItems)
309
+ : schema.additionalItems,
313
310
  }));
314
311
  else if (schema.items === undefined)
315
312
  union.push(Object.assign(Object.assign({}, schema), {
@@ -1 +1 @@
1
- {"version":3,"file":"OpenApiV3_1Upgrader.js","sourceRoot":"","sources":["../../../src/converters/internal/OpenApiV3_1Upgrader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OpenApiV3_1Upgrader.js","sourceRoot":"","sources":["../../../src/converters/internal/OpenApiV3_1Upgrader.ts"],"names":[],"mappings":";;;AAEA,4EAAyE;AACzE,oFAAiF;AACjF,uEAAoE;AAEpE,IAAiB,mBAAmB,CA+rBnC;AA/rBD,WAAiB,mBAAmB;IACrB,2BAAO,GAAG,CAAC,KAA4B,EAAqB,EAAE;;QACzE,IAAK,KAAsC,CAAC,qBAAqB,CAAC,KAAK,IAAI;YACzE,OAAO,KAAqC,CAAC;QAC/C,uCACK,KAAK,KACR,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,qCAAiB,OAAC,KAAK,CAAC,UAAU,mCAAI,EAAE,CAAC,EACrD,KAAK,EAAE,KAAK,CAAC,KAAK;gBAChB,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;qBACxB,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;qBACnC,GAAG,CACF,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAU,CAChE,CACJ;gBACH,CAAC,CAAC,SAAS,EACb,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACtB,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;qBAC3B,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;qBACnC,GAAG,CACF,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf,CAAC,GAAG,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,KAAK,CAAE,CAAU,CACjD;qBACA,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAC/C;gBACH,CAAC,CAAC,SAAS,EACb,qBAAqB,EAAE,IAAI,IAC3B;IACJ,CAAC,CAAC;IAEF;;kEAE8D;IAC9D,MAAM,eAAe,GACnB,CAAC,GAA0B,EAAE,EAAE,CAC/B,CACE,OAE0E,EAC/C,EAAE;;;QAC7B,IAAI,CAAC,+CAAsB,CAAC,WAAW,CAAC,OAAO,CAAC;YAC9C,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,KAAK,GACT,MAAA,MAAA,GAAG,CAAC,UAAU,0CAAE,SAAS,gDAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,mCAAI,EAAE,CAAC,CAAC;QACnE,OAAO,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACzD,CAAC,CAAC;IAEJ,MAAM,eAAe,GACnB,CAAC,GAA0B,EAAE,EAAE,CAC/B,CAAC,QAA2B,EAAiB,EAAE;QAC7C,yDAAyD;QACzD,mEAAmE;QACnE,MAAM,WAAW,GAAG,QAAQ,CAAC,wBAAwB,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAG,OAAO,CAAC,CAAC;QACvC,MAAM,oBAAoB,GAAG,WAAW;YACtC,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;iBACxB,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,KAAK,SAAS,CAAC;iBACxD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;gBACrB,GAAG;gBACH,gBAAgB,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;aACvC,CAAC,CACL;YACH,CAAC,CAAC,SAAS,CAAC;QAEd,mLACM,QAAgB,GACjB,CAAC,QAAQ,CAAC,GAAG;YACd,CAAC,CAAC,EAAE,GAAG,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACxD,CAAC,CAAC,SAAS,CAAC,GACX,CAAC,QAAQ,CAAC,GAAG;YACd,CAAC,CAAC,EAAE,GAAG,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACxD,CAAC,CAAC,SAAS,CAAC,GACX,CAAC,QAAQ,CAAC,IAAI;YACf,CAAC,CAAC,EAAE,IAAI,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YAC1D,CAAC,CAAC,SAAS,CAAC,GACX,CAAC,QAAQ,CAAC,MAAM;YACjB,CAAC,CAAC,EAAE,MAAM,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;YAC9D,CAAC,CAAC,SAAS,CAAC,GACX,CAAC,QAAQ,CAAC,OAAO;YAClB,CAAC,CAAC,EAAE,OAAO,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAChE,CAAC,CAAC,SAAS,CAAC,GACX,CAAC,QAAQ,CAAC,IAAI;YACf,CAAC,CAAC,EAAE,IAAI,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YAC1D,CAAC,CAAC,SAAS,CAAC,GACX,CAAC,QAAQ,CAAC,KAAK;YAChB,CAAC,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAC5D,CAAC,CAAC,SAAS,CAAC,GACX,CAAC,QAAQ,CAAC,KAAK;YAChB,CAAC,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAC5D,CAAC,CAAC,SAAS,CAAC,GACX,CAAC,OAAO;YACT,CAAC,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE;YACrD,CAAC,CAAC,SAAS,CAAC,GACX,CAAC,oBAAoB,IAAI,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,MAAM,GAAG,CAAC;YACtE,CAAC,CAAC,EAAE,oBAAoB,EAAE;YAC1B,CAAC,CAAC,SAAS,CAAC,KACd,wBAAwB,EAAE,SAAS,IACnC;IACJ,CAAC,CAAC;IAEJ,MAAM,gBAAgB,GACpB,CAAC,GAA0B,EAAE,EAAE,CAC/B,CAAC,QAA2B,EAAE,EAAE,CAChC,CAAC,KAA6B,EAAsB,EAAE,sBAAC,iCAClD,KAAK,KACR,UAAU,EACR,QAAQ,CAAC,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS;YACjE,CAAC,CAAC,CAAC,GAAG,OAAC,QAAQ,CAAC,UAAU,mCAAI,EAAE,CAAC,EAAE,GAAG,OAAC,KAAK,CAAC,UAAU,mCAAI,EAAE,CAAC,CAAC;iBAC1D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;;;gBACT,IAAI,CAAC,+CAAsB,CAAC,WAAW,CAAC,CAAC,CAAC;oBACxC,OAAO,gBAAgB,OAAC,GAAG,CAAC,UAAU,mCAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnD,MAAM,KAAK,GAEK,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC;oBACxD,CAAC,CAAC,MAAA,MAAA,GAAG,CAAC,UAAU,0CAAE,OAAO,gDAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,mCAAI,EAAE,CAAC;oBAC1D,CAAC,CAAC,MAAA,MAAA,GAAG,CAAC,UAAU,0CAAE,UAAU,gDAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,mCAAI,EAAE,CAAC,CAAC;gBAChE,OAAO,KAAK,KAAK,SAAS;oBACxB,CAAC,CAAC,gBAAgB,OAAC,GAAG,CAAC,UAAU,mCAAI,EAAE,CAAC,iCACjC,KAAK,KACR,EAAE,EAAE,QAAQ,IACZ;oBACJ,CAAC,CAAC,SAAU,CAAC;YACjB,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;YACtC,CAAC,CAAC,SAAS,EACf,WAAW,EAAE,KAAK,CAAC,WAAW;YAC5B,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC;YAC5C,CAAC,CAAC,SAAS,EACb,SAAS,EAAE,KAAK,CAAC,SAAS;YACxB,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;iBAC5B,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;iBACnC,GAAG,CACF,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,CAAE,CAAU,CAC/D;iBACA,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAC/C;YACH,CAAC,CAAC,SAAS,IACb,GAAA,CAAC;IAEL,MAAM,gBAAgB,GACpB,CAAC,UAAmC,EAAE,EAAE,CACxC,CACE,KAAwC,EACT,EAAE,CAAC,iCAC/B,KAAK,KACR,MAAM,EAAE,iCAAa,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAC/C,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACtB,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;iBAC3B,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,0BAAC;gBACrB,GAAG;gBACH,+CAAsB,CAAC,WAAW,CAAC,KAAK,CAAC;oBACvC,CAAC,CAAC,MAAA,UAAU,CAAC,QAAQ,gDAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,mCAAI,EAAE,CAAC;oBAC1D,CAAC,CAAC,KAAK;aACV,GAAA,CAAC;iBACD,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CACvC;YACH,CAAC,CAAC,SAAS,IACb,CAAC;IAEL,MAAM,kBAAkB,GACtB,CAAC,GAA0B,EAAE,EAAE,CAC/B,CACE,KAE8E,EACjC,EAAE;;;QAC/C,IAAI,+CAAsB,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,KAAK,GACT,MAAA,MAAA,GAAG,CAAC,UAAU,0CAAE,aAAa,gDAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,mCAAI,EAAE,CAAC,CAAC;YACrE,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,SAAS,CAAC;YAC1C,KAAK,GAAG,KAAK,CAAC;QAChB,CAAC;QACD,uCACK,KAAK,KACR,OAAO,EAAE,KAAK,CAAC,OAAO;gBACpB,CAAC,CAAC,cAAc,OAAC,GAAG,CAAC,UAAU,mCAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;gBACrD,CAAC,CAAC,SAAS,IACb;IACJ,CAAC,CAAC;IAEJ,MAAM,eAAe,GACnB,CAAC,GAA0B,EAAE,EAAE,CAC/B,CACE,KAE0E,EAChC,EAAE;;;QAC5C,IAAI,+CAAsB,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,KAAK,GACT,MAAA,MAAA,GAAG,CAAC,UAAU,0CAAE,SAAS,gDAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,mCAAI,EAAE,CAAC,CAAC;YACjE,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,SAAS,CAAC;YAC1C,KAAK,GAAG,KAAK,CAAC;QAChB,CAAC;QACD,uCACK,KAAK,KACR,OAAO,EAAE,KAAK,CAAC,OAAO;gBACpB,CAAC,CAAC,cAAc,OAAC,GAAG,CAAC,UAAU,mCAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;gBACrD,CAAC,CAAC,SAAS,EACb,OAAO,EAAE,KAAK,CAAC,OAAO;gBACpB,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;qBAC1B,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;qBACnC,GAAG,CACF,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf;oBACE,GAAG;oBACH,CAAC,GAAG,EAAE;;;wBACJ,IAAI,+CAAsB,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,KAAK;4BACrD,OAAO,gBAAgB,OAAC,GAAG,CAAC,UAAU,mCAAI,EAAE,CAAC,iCACxC,KAAK,KACR,EAAE,EAAE,QAAQ,IACZ,CAAC;wBACL,MAAM,KAAK,GAEK,KAAK,CAAC,IAAI,CAAC,UAAU,CACnC,uBAAuB,CACxB;4BACC,CAAC,CAAC,MAAA,MAAA,GAAG,CAAC,UAAU,0CAAE,OAAO,gDACrB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,mCAAI,EAAE,CAClC;4BACH,CAAC,CAAC,SAAS,CAAC;wBACd,OAAO,KAAK,KAAK,SAAS;4BACxB,CAAC,CAAC,gBAAgB,OAAC,GAAG,CAAC,UAAU,mCAAI,EAAE,CAAC,iCACjC,KAAK,KACR,EAAE,EAAE,QAAQ,IACZ;4BACJ,CAAC,CAAC,SAAU,CAAC;oBACjB,CAAC,CAAC,EAAE;iBACI,CACb;qBACA,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CACvC;gBACH,CAAC,CAAC,SAAS,IACb;IACJ,CAAC,CAAC;IAEJ,MAAM,cAAc,GAClB,CAAC,UAAmC,EAAE,EAAE,CACxC,CACE,MAAyD,EACV,EAAE,CACjD,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;SACnB,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;SACnC,GAAG,CACF,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf;QACE,GAAG;wCAEE,KAAK,KACR,MAAM,EAAE,KAAK,CAAC,MAAM;gBAClB,CAAC,CAAC,iCAAa,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;gBACzC,CAAC,CAAC,SAAS,EACb,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACtB,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;qBAC3B,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,0BAAC;oBACrB,GAAG;oBACH,+CAAsB,CAAC,WAAW,CAAC,KAAK,CAAC;wBACvC,CAAC,CAAC,MAAA,UAAU,CAAC,QAAQ,gDACjB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,mCAAI,EAAE,CAClC;wBACH,CAAC,CAAC,KAAK;iBACV,GAAA,CAAC;qBACD,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CACvC;gBACH,CAAC,CAAC,SAAS;KAEP,CACb,CACJ,CAAC;IAEN;;kEAE8D;IACjD,qCAAiB,GAAG,CAC/B,KAA8B,EACT,EAAE,kBAAC,CAAC;QACzB,OAAO,EAAE,MAAM,CAAC,WAAW,CACzB,MAAM,CAAC,OAAO,OAAC,KAAK,CAAC,OAAO,mCAAI,EAAE,CAAC;aAChC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;aACnC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,iCAAa,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAU,CAAC,CACtE;QACD,eAAe,EAAE,KAAK,CAAC,eAAe;KACvC,CAAC,GAAA,CAAC;IAEU,iCAAa,GACxB,CAAC,UAAmC,EAAE,EAAE,CACxC,CAAC,KAA8B,EAAuB,EAAE;QACtD,MAAM,KAAK,GAA0B,EAAE,CAAC;QACxC,MAAM,SAAS,mBACb,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,UAAU,EAAE,KAAK,CAAC,UAAU,EAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;gBACrC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;gBAChE,CAAC,CAAC,KAAK,CAAC,QAAQ,IACf,MAAM,CAAC,WAAW,CACnB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAC1B,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,SAAS,CAC9D,CACF,CACF,CAAC;QACF,MAAM,QAAQ,GAAuC;YACnD,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,SAAS;SACnB,CAAC;QAEF,MAAM,KAAK,GAAG,CAAC,MAA+B,EAAQ,EAAE;;;YACtD,oBAAoB;YACpB,IAAK,MAA0C,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;gBAClE,QAAQ,CAAC,KAAK,KAAd,QAAQ,CAAC,KAAK,GAAK,IAAI,EAAC;gBACxB,IAAK,MAA0C,CAAC,OAAO,KAAK,IAAI;oBAC9D,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;YAC5B,CAAC;YACD,IACE,KAAK,CAAC,OAAO,CAAE,MAA0C,CAAC,IAAI,CAAC;iBAC/D,MAAC,MAA0C,CAAC,IAAI,0CAAE,MAAM,CAAA;iBACxD,MAAC,MAA0C,CAAC,IAAI,0CAAE,IAAI,CACpD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAClB,CAAA;gBAED,QAAQ,CAAC,KAAK,KAAd,QAAQ,CAAC,KAAK,GAAK,IAAI,EAAC;YAE1B,kBAAkB;YAClB,IAAI,+CAAsB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3C,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;oBAC5B,KAAK,iCACA,MAAM,GACN;wBACD,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,SAAS;wBAChB,KAAK,EAAE,SAAS;wBAChB,KAAK,EAAE,SAAS;wBAChB,IAAI,EAAE,SAAS;qBAChB,EACD,CAAC;gBACL,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;oBAC5B,KAAK,iCACA,MAAM,GACN;wBACD,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,SAAS;wBAChB,KAAK,EAAE,SAAS;wBAChB,IAAI,EAAE,SAAS;qBAChB,EACD,CAAC;gBACL,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;oBAC5B,KAAK,iCACA,MAAM,GACN;wBACD,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,SAAS;wBAChB,KAAK,EAAE,SAAS;wBAChB,IAAI,EAAE,SAAS;qBAChB,EACD,CAAC;gBACL,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;oBAC5B,KAAK,iCACA,MAAM,GACN;wBACD,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,SAAS;wBAChB,KAAK,EAAE,SAAS;wBAChB,IAAI,EAAE,SAAS;qBAChB,EACD,CAAC;gBACL,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI;oBAC5B,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,QAAQ;wBAC9D,KAAK,+CACA,MAAM,GACN;4BACD,IAAI,EACF,CAAA,MAAA,MAAM,CAAC,IAAI,0CAAE,MAAM,KAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;gCAC1D,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;gCAC9C,CAAC,CAAC,SAAS;yBAChB,KACD,IAAI,EAAE,IAAW,IACjB,CAAC;yBACA,IAAI,IAAI,KAAK,SAAS;wBACzB,KAAK,+CACA,MAAM,GACN;4BACD,IAAI,EACF,CAAA,MAAA,MAAM,CAAC,IAAI,0CAAE,MAAM,KAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;gCAC1D,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAChB,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,KAAK,IAAI;oCACV,OAAO,CAAC,KAAK,QAAQ;oCACrB,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CACtB;gCACH,CAAC,CAAC,SAAS;yBAChB,KACD,IAAI,EAAE,IAAW,IACjB,CAAC;;wBACA,KAAK,iCAAM,MAAM,KAAE,IAAI,EAAE,IAAW,IAAG,CAAC;YACjD,CAAC;YACD,kBAAkB;iBACb,IAAI,+CAAsB,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC7C,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;iBACzB,IAAI,+CAAsB,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC7C,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;iBACzB,IAAI,+CAAsB,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC7C,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;;oBAClD,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YAC1D,0CAA0C;iBACrC,IAAI,+CAAsB,CAAC,SAAS,CAAC,MAAM,CAAC;gBAC/C,IACE,CAAA,MAAA,MAAM,CAAC,IAAI,0CAAE,MAAM;oBACnB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM;oBAE5C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;wBACvD,KAAK,CAAC,IAAI,CAAC,gBACT,KAAK,EAAE,KAAK,IACR,gCACC,MAAM,KACT,IAAI,EAAE,SAAgB,EACtB,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,SAAS,GACgC,CACb,CAAC,CAAC;;oBAE7C,KAAK,CAAC,IAAI,+CACL,MAAM,KACT,OAAO,QAAE,MAAM,CAAC,OAAO,mCAAI,SAAS,KACjC;wBACD,IAAI,EAAE,SAAS;qBAChB,EACD,CAAC;iBACF,IACH,+CAAsB,CAAC,SAAS,CAAC,MAAM,CAAC;gBACxC,+CAAsB,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAEvC,IAAI,CAAA,MAAA,MAAM,CAAC,IAAI,0CAAE,MAAM,KAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;oBAC9D,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;wBACvD,KAAK,CAAC,IAAI,CAAC,gBACT,KAAK,EAAE,KAAK,IACR,gCACC,MAAM,KACT,IAAI,EAAE,SAAgB,EACtB,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,SAAS,EAClB,gBAAgB,EAAE,SAAS,EAC3B,gBAAgB,EAAE,SAAS,EAC3B,UAAU,EAAE,SAAS,GAC6B,CACb,CAAC,CAAC;;oBAE7C,KAAK,CAAC,IAAI,CACR,iDAAuB,CAAC,KAAK,6DACxB,MAAM,KACT,OAAO,QAAE,MAAM,CAAC,OAAO,mCAAI,SAAS,KACjC;wBACD,IAAI,EAAE,SAAS;qBAChB,KACD,gBAAgB,EACd,OAAO,MAAM,CAAC,gBAAgB,KAAK,SAAS;4BAC1C,CAAC,CAAC,MAAM,CAAC,gBAAgB,KAAK,IAAI;gCAChC,CAAC,CAAC,MAAM,CAAC,OAAO;gCAChB,CAAC,CAAC,SAAS;4BACb,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAC7B,gBAAgB,EACd,OAAO,MAAM,CAAC,gBAAgB,KAAK,SAAS;4BAC1C,CAAC,CAAC,MAAM,CAAC,gBAAgB,KAAK,IAAI;gCAChC,CAAC,CAAC,MAAM,CAAC,OAAO;gCAChB,CAAC,CAAC,SAAS;4BACb,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAC7B,OAAO,EACL,MAAM,CAAC,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAC/D,OAAO,EACL,MAAM,CAAC,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,IAC/D,CACH,CAAC;iBACD,IAAI,+CAAsB,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAC9C,IACE,CAAA,MAAA,MAAM,CAAC,IAAI,0CAAE,MAAM;oBACnB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM;oBAE5C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;wBACvD,KAAK,CAAC,IAAI,CAAC,gBACT,KAAK,EAAE,KAAK,IACR,gCACC,MAAM,KACT,IAAI,EAAE,SAAgB,EACtB,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,SAAS,GAC+B,CACZ,CAAC,CAAC;;oBAE7C,KAAK,CAAC,IAAI,+CACL,MAAM,KACT,OAAO,QAAE,MAAM,CAAC,OAAO,mCAAI,SAAS,KACjC;wBACD,IAAI,EAAE,SAAS;qBAChB,EACD,CAAC;YACP,mCAAmC;iBAC9B,IAAI,+CAAsB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;oBAC7B,KAAK,CAAC,IAAI,CAAC,gCACN,MAAM,GACN;wBACD,KAAK,EAAE,SAAU;wBACjB,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,iCAAa,CAAC,UAAU,CAAC,CAAC;wBACxD,eAAe,EACb,OAAO,MAAM,CAAC,eAAe,KAAK,QAAQ;4BAC1C,MAAM,CAAC,eAAe,KAAK,IAAI;4BAC7B,CAAC,CAAC,iCAAa,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC;4BACnD,CAAC,CAAC,MAAM,CAAC,eAAe;qBAC7B,CACmC,CAAC,CAAC;qBACrC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC;oBACxC,KAAK,CAAC,IAAI,iCACL,MAAM,GACN;wBACD,KAAK,EAAE,SAAU;wBACjB,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,iCAAa,CAAC,UAAU,CAAC,CAAC;wBAC9D,eAAe,EACb,OAAO,MAAM,CAAC,eAAe,KAAK,QAAQ;4BAC1C,MAAM,CAAC,eAAe,KAAK,IAAI;4BAC7B,CAAC,CAAC,iCAAa,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC;4BACnD,CAAC,CAAC,MAAM,CAAC,eAAe;qBAC7B,EACD,CAAC;qBACA,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;oBACjC,KAAK,CAAC,IAAI,iCACL,MAAM,GACN;wBACD,KAAK,EAAE,SAAU;wBACjB,WAAW,EAAE,EAAE;qBAChB,EACD,CAAC;;oBAEH,KAAK,CAAC,IAAI,iCACL,MAAM,GACN;wBACD,KAAK,EAAE,iCAAa,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;wBAC9C,WAAW,EAAE,SAAS;wBACtB,eAAe,EAAE,SAAS;qBAC3B,EACD,CAAC;YACP,CAAC;YACD,mBAAmB;iBACd,IAAI,+CAAsB,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAC9C,KAAK,CAAC,IAAI,iCACL,MAAM,GACN;oBACD,UAAU,EAAE,MAAM,CAAC,UAAU;wBAC3B,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;6BAC9B,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;6BACnC,GAAG,CACF,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf,CAAC,GAAG,EAAE,iCAAa,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAU,CACnD,CACJ;wBACH,CAAC,CAAC,EAAE;oBACN,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;wBAC/C,CAAC,CAAC,OAAO,MAAM,CAAC,oBAAoB,KAAK,QAAQ;4BAC/C,MAAM,CAAC,oBAAoB,KAAK,IAAI;4BACpC,CAAC,CAAC,iCAAa,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,oBAAoB,CAAC;4BACxD,CAAC,CAAC,MAAM,CAAC,oBAAoB;wBAC/B,CAAC,CAAC,SAAS;oBACb,QAAQ,QAAE,MAAM,CAAC,QAAQ,mCAAI,EAAE;iBAChC,EACD,CAAC;iBACA,IAAI,+CAAsB,CAAC,WAAW,CAAC,MAAM,CAAC;gBACjD,KAAK,CAAC,IAAI,iCACL,MAAM,GACN;oBACD,IAAI,EAAE,wBAAwB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;iBAC7D,EACD,CAAC;iBACA,IAAI,+CAAsB,CAAC,oBAAoB,CAAC,MAAM,CAAC;gBAC1D,KAAK,CAAC,IAAI,iCACL,MAAM,GACN;oBACD,IAAI,EAAE,wBAAwB,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;oBACrE,aAAa,EAAE,SAAS;iBACzB,EACD,CAAC;YACL,aAAa;;gBACR,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,CAAC,CAAC;QAEF,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IACE,QAAQ,CAAC,KAAK,KAAK,IAAI;YACvB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAA+B,CAAC,IAAI,KAAK,MAAM,CAAC;YAEpE,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,QAAQ,CAAC,OAAO;aAC1B,CAAC,CAAC;QACL,IACE,KAAK,CAAC,MAAM,KAAK,CAAC;YAClB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,uCAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAC9D,CAAC;YACD,MAAM,IAAI,GAAwB,KAAK,CAAC,MAAM,CAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,uCAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,KAAK,CAC9C,CAAC,CAAC,CAAE,CAAC;YACN,KAAK,MAAM,GAAG,IAAI;gBAChB,OAAO;gBACP,aAAa;gBACb,YAAY;gBACZ,UAAU;gBACV,WAAW;gBACX,SAAS;gBACT,UAAU;aACF;gBACR,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS;oBAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,CAAC;QACD,qDACK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;YACpB,CAAC,CAAC;gBACE,IAAI,EAAE,SAAS;aAChB;YACH,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;gBAClB,CAAC,mBACM,KAAK,CAAC,CAAC,CAAC,EAEf,CAAC,CAAC;gBACE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iCACnB,CAAC,KACJ,QAAQ,EAAE,SAAS,EACnB,KAAK,EAAE,SAAS,IAChB,CAAC;aACJ,CAAC,GACL,SAAS,GACT;YACD,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,SAAS;SACjB,EACD;IACJ,CAAC,CAAC;IAEJ,MAAM,kBAAkB,GACtB,CAAC,UAAmC,EAAE,EAAE,CACxC,CAAC,KAAqC,EAAuB,EAAE;QAC7D,MAAM,OAAO,GACX,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAClE,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC;YACrC,uBACE,IAAI,EAAE,SAAS,IACZ;gBACD,KAAK,EAAE,SAAS;aACjB,EACD;QACJ,qDACK,KAAK,KACR,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,MAAM,CAAC,WAAW,CAC5B,OAAO;iBACJ,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,kBAAC,MAAM,CAAC,OAAO,OAAC,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,UAAU,mCAAI,EAAE,CAAC,GAAA,CAAC;iBAC/C,IAAI,EAAE;iBACN,GAAG,CACF,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf,CAAC,GAAG,EAAE,iCAAa,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAU,CACnD,CACJ,KACE;YACD,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,wBAAC,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,QAAQ,mCAAI,EAAE,GAAA,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;SACrE,EACD;IACJ,CAAC,CAAC;IAEJ,MAAM,cAAc,GAClB,CAAC,UAAmC,EAAE,EAAE,CACxC,CACE,KAA8B,EAC9B,OAAO,GAAiC,IAAI,GAAG,EAAE,EACT,EAAE;;;QAC1C,IAAI,+CAAsB,CAAC,QAAQ,CAAC,KAAK,CAAC;YACxC,OAAO,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,oBAAoB;gBAClE,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,IAAI,CAAC;aACN,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;;YACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAExB,IAAI,+CAAsB,CAAC,WAAW,CAAC,KAAK,CAAC;YAC3C,OAAO,cAAc,CAAC,UAAU,CAAC,OAC/B,MAAA,UAAU,CAAC,OAAO,gDAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,mCAAI,EAAE,CAAC,mCAAI,EAAE,EAC7D,OAAO,CACR,CAAC;aACC,IAAI,+CAAsB,CAAC,oBAAoB,CAAC,KAAK,CAAC;YACzD,OAAO,cAAc,CAAC,UAAU,CAAC,OAC/B,MAAA,UAAU,CAAC,OAAO,gDAAG,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,mCAAI,EAAE,CAAC,mCAC9D,EAAE,EACJ,OAAO,CACR,CAAC;QACJ,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;AACN,CAAC,EA/rBgB,mBAAmB,aAAnB,mBAAmB,GAAnB,mBAAmB,QA+rBnC"}
@@ -312,13 +312,10 @@ function requireOpenApiV3_1Upgrader () {
312
312
  union.push(Object.assign(Object.assign({}, schema), {
313
313
  items: undefined,
314
314
  prefixItems: schema.prefixItems.map(OpenApiV3_1Upgrader.convertSchema(components)),
315
- additionalItems: schema.items !== undefined &&
316
- Array.isArray(schema.items) === false
317
- ? OpenApiV3_1Upgrader.convertSchema(components)(schema.items)
318
- : typeof schema.additionalItems === "object" &&
319
- schema.additionalItems !== null
320
- ? OpenApiV3_1Upgrader.convertSchema(components)(schema.additionalItems)
321
- : schema.additionalItems,
315
+ additionalItems: typeof schema.additionalItems === "object" &&
316
+ schema.additionalItems !== null
317
+ ? OpenApiV3_1Upgrader.convertSchema(components)(schema.additionalItems)
318
+ : schema.additionalItems,
322
319
  }));
323
320
  else if (schema.items === undefined)
324
321
  union.push(Object.assign(Object.assign({}, schema), {