@autobe/agent 0.26.0 → 0.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/AutoBeAgent.d.ts +2 -1
- package/lib/AutoBeAgent.js +27 -7
- package/lib/AutoBeAgent.js.map +1 -1
- package/lib/AutoBeMockAgent.js +2 -4
- package/lib/AutoBeMockAgent.js.map +1 -1
- package/lib/constants/AutoBeSystemPromptConstant.d.ts +11 -11
- package/lib/context/AutoBeContext.d.ts +4 -1
- package/lib/context/AutoBeTokenUsage.d.ts +1 -1
- package/lib/context/AutoBeTokenUsage.js.map +1 -1
- package/lib/context/assertSchemaModel.d.ts +1 -1
- package/lib/context/assertSchemaModel.js +4 -7
- package/lib/context/assertSchemaModel.js.map +1 -1
- package/lib/factory/AutoBeFunctionCallingMetricFactory.d.ts +7 -0
- package/lib/factory/AutoBeFunctionCallingMetricFactory.js +35 -0
- package/lib/factory/AutoBeFunctionCallingMetricFactory.js.map +1 -0
- package/lib/factory/AutoBeProcessAggregateFactory.d.ts +13 -0
- package/lib/factory/AutoBeProcessAggregateFactory.js +100 -0
- package/lib/factory/AutoBeProcessAggregateFactory.js.map +1 -0
- package/lib/factory/createAutoBeContext.d.ts +2 -1
- package/lib/factory/createAutoBeContext.js +78 -27
- package/lib/factory/createAutoBeContext.js.map +1 -1
- package/lib/index.mjs +24065 -12997
- package/lib/index.mjs.map +1 -1
- package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.js +1 -1
- package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyze.js +1 -0
- package/lib/orchestrate/analyze/orchestrateAnalyze.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeReview.js +166 -87
- package/lib/orchestrate/analyze/orchestrateAnalyzeReview.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js +639 -322
- package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeWrite.js +146 -76
- package/lib/orchestrate/analyze/orchestrateAnalyzeWrite.js.map +1 -1
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeReviewApplication.d.ts +17 -52
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioApplication.d.ts +25 -22
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeWriteApplication.d.ts +7 -23
- package/lib/orchestrate/common/orchestrateCommonCorrectCasting.d.ts +2 -1
- package/lib/orchestrate/common/orchestrateCommonCorrectCasting.js +168 -4
- package/lib/orchestrate/common/orchestrateCommonCorrectCasting.js.map +1 -1
- package/lib/{factory/createAutoBeApplication.d.ts → orchestrate/facade/createAutoBeFacadeController.d.ts} +2 -2
- package/lib/orchestrate/facade/createAutoBeFacadeController.js +1308 -0
- package/lib/orchestrate/facade/createAutoBeFacadeController.js.map +1 -0
- package/lib/orchestrate/facade/histories/IAutoBeFacadeApplication.js.map +1 -0
- package/lib/orchestrate/facade/histories/IAutoBeFacadeApplicationProps.js.map +1 -0
- package/lib/orchestrate/facade/histories/IAutoBeFacadeApplicationResult.js.map +1 -0
- package/lib/orchestrate/facade/{transformFacadeStateMessage.d.ts → structures/transformFacadeStateMessage.d.ts} +1 -1
- package/lib/orchestrate/facade/structures/transformFacadeStateMessage.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceComplementHistories.js +2 -2
- package/lib/orchestrate/interface/histories/transformInterfaceComplementHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistories.js +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.js +3 -2
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceGroupHistories.js +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceGroupHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceOperationHistories.js +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceOperationHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.js +2 -2
- package/lib/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.js +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterface.d.ts +1 -1
- package/lib/orchestrate/interface/orchestrateInterface.js +15 -8
- package/lib/orchestrate/interface/orchestrateInterface.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceAuthorizations.js +874 -49
- package/lib/orchestrate/interface/orchestrateInterfaceAuthorizations.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceComplement.js +1858 -67
- package/lib/orchestrate/interface/orchestrateInterfaceComplement.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js +251 -133
- package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.d.ts +0 -6
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.js +257 -135
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceGroups.js +341 -227
- package/lib/orchestrate/interface/orchestrateInterfaceGroups.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceOperations.js +761 -49
- package/lib/orchestrate/interface/orchestrateInterfaceOperations.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceOperationsReview.js +911 -50
- package/lib/orchestrate/interface/orchestrateInterfaceOperationsReview.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfacePrerequisites.js +207 -4
- package/lib/orchestrate/interface/orchestrateInterfacePrerequisites.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaRename.js +109 -2
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaRename.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.d.ts +5 -3
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.js +1904 -77
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemas.js +1858 -67
- package/lib/orchestrate/interface/orchestrateInterfaceSchemas.js.map +1 -1
- package/lib/orchestrate/interface/utils/JsonSchemaFactory.js +23 -23
- package/lib/orchestrate/prisma/orchestratePrisma.d.ts +1 -1
- package/lib/orchestrate/prisma/orchestratePrisma.js +1 -0
- package/lib/orchestrate/prisma/orchestratePrisma.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaComponent.js +391 -197
- package/lib/orchestrate/prisma/orchestratePrismaComponent.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaCorrect.js +1168 -591
- package/lib/orchestrate/prisma/orchestratePrismaCorrect.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaReview.js +1186 -600
- package/lib/orchestrate/prisma/orchestratePrismaReview.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaSchemas.js +6 -3
- package/lib/orchestrate/prisma/orchestratePrismaSchemas.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.js +2 -2
- package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealize.d.ts +1 -1
- package/lib/orchestrate/realize/orchestrateRealize.js +2 -1
- package/lib/orchestrate/realize/orchestrateRealize.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeAuthorization.js +362 -180
- package/lib/orchestrate/realize/orchestrateRealizeAuthorization.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js +399 -199
- package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeCorrect.js +133 -4
- package/lib/orchestrate/realize/orchestrateRealizeCorrect.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeCorrectCasting.js +171 -7
- package/lib/orchestrate/realize/orchestrateRealizeCorrectCasting.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeWrite.js +132 -3
- package/lib/orchestrate/realize/orchestrateRealizeWrite.js.map +1 -1
- package/lib/orchestrate/realize/utils/replaceImportStatements.js +0 -85
- package/lib/orchestrate/realize/utils/replaceImportStatements.js.map +1 -1
- package/lib/orchestrate/test/histories/transformTestWriteHistories.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTest.d.ts +1 -1
- package/lib/orchestrate/test/orchestrateTest.js +2 -1
- package/lib/orchestrate/test/orchestrateTest.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestCorrect.js +134 -3
- package/lib/orchestrate/test/orchestrateTestCorrect.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestCorrectInvalidRequest.js +169 -4
- package/lib/orchestrate/test/orchestrateTestCorrectInvalidRequest.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestScenario.js +257 -4
- package/lib/orchestrate/test/orchestrateTestScenario.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestScenarioReview.js +283 -4
- package/lib/orchestrate/test/orchestrateTestScenarioReview.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestWrite.js +141 -3
- package/lib/orchestrate/test/orchestrateTestWrite.js.map +1 -1
- package/lib/utils/TokenUsageComputer.d.ts +5 -0
- package/lib/utils/TokenUsageComputer.js +29 -0
- package/lib/utils/TokenUsageComputer.js.map +1 -0
- package/package.json +10 -10
- package/src/AutoBeAgent.ts +40 -6
- package/src/AutoBeMockAgent.ts +2 -4
- package/src/constants/AutoBeSystemPromptConstant.ts +11 -11
- package/src/context/AutoBeContext.ts +8 -0
- package/src/context/AutoBeTokenUsage.ts +1 -1
- package/src/context/assertSchemaModel.ts +5 -8
- package/src/factory/AutoBeFunctionCallingMetricFactory.ts +44 -0
- package/src/factory/AutoBeProcessAggregateFactory.ts +141 -0
- package/src/factory/createAutoBeContext.ts +96 -36
- package/src/orchestrate/analyze/orchestrateAnalyze.ts +1 -0
- package/src/orchestrate/analyze/orchestrateAnalyzeReview.ts +9 -10
- package/src/orchestrate/analyze/orchestrateAnalyzeScenario.ts +15 -10
- package/src/orchestrate/analyze/orchestrateAnalyzeWrite.ts +10 -11
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeReviewApplication.ts +19 -54
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioApplication.ts +25 -22
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeWriteApplication.ts +8 -24
- package/src/orchestrate/common/orchestrateCommonCorrectCasting.ts +20 -3
- package/src/orchestrate/facade/createAutoBeFacadeController.ts +136 -0
- package/src/orchestrate/facade/{transformFacadeStateMessage.ts → structures/transformFacadeStateMessage.ts} +2 -2
- package/src/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.ts +1 -0
- package/src/orchestrate/interface/orchestrateInterface.ts +17 -6
- package/src/orchestrate/interface/orchestrateInterfaceAuthorizations.ts +13 -2
- package/src/orchestrate/interface/orchestrateInterfaceComplement.ts +13 -2
- package/src/orchestrate/interface/orchestrateInterfaceEndpoints.ts +16 -11
- package/src/orchestrate/interface/orchestrateInterfaceEndpointsReview.ts +16 -13
- package/src/orchestrate/interface/orchestrateInterfaceGroups.ts +19 -15
- package/src/orchestrate/interface/orchestrateInterfaceOperations.ts +13 -2
- package/src/orchestrate/interface/orchestrateInterfaceOperationsReview.ts +16 -2
- package/src/orchestrate/interface/orchestrateInterfacePrerequisites.ts +13 -2
- package/src/orchestrate/interface/orchestrateInterfaceSchemaRename.ts +11 -2
- package/src/orchestrate/interface/orchestrateInterfaceSchemaReview.ts +24 -16
- package/src/orchestrate/interface/orchestrateInterfaceSchemas.ts +13 -2
- package/src/orchestrate/prisma/orchestratePrisma.ts +2 -1
- package/src/orchestrate/prisma/orchestratePrismaComponent.ts +15 -10
- package/src/orchestrate/prisma/orchestratePrismaCorrect.ts +9 -10
- package/src/orchestrate/prisma/orchestratePrismaReview.ts +9 -11
- package/src/orchestrate/prisma/orchestratePrismaSchemas.ts +2 -1
- package/src/orchestrate/realize/orchestrateRealize.ts +3 -2
- package/src/orchestrate/realize/orchestrateRealizeAuthorization.ts +15 -10
- package/src/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.ts +15 -10
- package/src/orchestrate/realize/orchestrateRealizeCorrect.ts +14 -3
- package/src/orchestrate/realize/orchestrateRealizeCorrectCasting.ts +21 -6
- package/src/orchestrate/realize/orchestrateRealizeWrite.ts +13 -2
- package/src/orchestrate/realize/utils/replaceImportStatements.ts +0 -90
- package/src/orchestrate/test/experimental/orchestrateTestWrite.ast +5 -1
- package/src/orchestrate/test/histories/transformTestWriteHistories.ts +1 -1
- package/src/orchestrate/test/orchestrateTest.ts +3 -2
- package/src/orchestrate/test/orchestrateTestCorrect.ts +14 -2
- package/src/orchestrate/test/orchestrateTestCorrectInvalidRequest.ts +21 -3
- package/src/orchestrate/test/orchestrateTestScenario.ts +13 -2
- package/src/orchestrate/test/orchestrateTestScenarioReview.ts +13 -2
- package/src/orchestrate/test/orchestrateTestWrite.ts +13 -2
- package/src/utils/TokenUsageComputer.ts +35 -0
- package/lib/context/IAutoBeFacadeApplication.js.map +0 -1
- package/lib/context/IAutoBeFacadeApplicationProps.js.map +0 -1
- package/lib/context/IAutoBeFacadeApplicationResult.js.map +0 -1
- package/lib/factory/createAutoBeApplication.js +0 -942
- package/lib/factory/createAutoBeApplication.js.map +0 -1
- package/lib/orchestrate/facade/transformFacadeStateMessage.js.map +0 -1
- package/src/factory/createAutoBeApplication.ts +0 -123
- /package/lib/{context → orchestrate/facade/histories}/IAutoBeFacadeApplication.d.ts +0 -0
- /package/lib/{context → orchestrate/facade/histories}/IAutoBeFacadeApplication.js +0 -0
- /package/lib/{context → orchestrate/facade/histories}/IAutoBeFacadeApplicationProps.d.ts +0 -0
- /package/lib/{context → orchestrate/facade/histories}/IAutoBeFacadeApplicationProps.js +0 -0
- /package/lib/{context → orchestrate/facade/histories}/IAutoBeFacadeApplicationResult.d.ts +0 -0
- /package/lib/{context → orchestrate/facade/histories}/IAutoBeFacadeApplicationResult.js +0 -0
- /package/lib/orchestrate/facade/{transformFacadeStateMessage.js → structures/transformFacadeStateMessage.js} +0 -0
- /package/src/{context → orchestrate/facade/histories}/IAutoBeFacadeApplication.ts +0 -0
- /package/src/{context → orchestrate/facade/histories}/IAutoBeFacadeApplicationProps.ts +0 -0
- /package/src/{context → orchestrate/facade/histories}/IAutoBeFacadeApplicationResult.ts +0 -0
|
@@ -76,7 +76,7 @@ function step(ctx, props, progress) {
|
|
|
76
76
|
const pointer = {
|
|
77
77
|
value: null,
|
|
78
78
|
};
|
|
79
|
-
const { tokenUsage } = yield ctx.conversate({
|
|
79
|
+
const { metric, tokenUsage } = yield ctx.conversate({
|
|
80
80
|
source: "interfaceComplement",
|
|
81
81
|
histories: (0, transformInterfaceComplementHistories_1.transformInterfaceComplementHistories)({
|
|
82
82
|
state: ctx.state(),
|
|
@@ -105,6 +105,7 @@ function step(ctx, props, progress) {
|
|
|
105
105
|
id: (0, uuid_1.v7)(),
|
|
106
106
|
missed,
|
|
107
107
|
schemas: pointer.value,
|
|
108
|
+
metric,
|
|
108
109
|
tokenUsage,
|
|
109
110
|
step: (_b = (_a = ctx.state().analyze) === null || _a === void 0 ? void 0 : _a.step) !== null && _b !== void 0 ? _b : 0,
|
|
110
111
|
created_at: new Date().toISOString(),
|
|
@@ -127,12 +128,12 @@ function createController(props) {
|
|
|
127
128
|
(0, assertSchemaModel_1.assertSchemaModel)(props.model);
|
|
128
129
|
const validate = (next) => {
|
|
129
130
|
JsonSchemaFactory_1.JsonSchemaFactory.fixPage("schemas", next);
|
|
130
|
-
const result = (() => { const _io0 = input => "object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) && _io1(input.schemas); const _io1 = input => Object.keys(input).every(key => {
|
|
131
|
+
const result = (() => { const _iv1 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _iv2 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _vv7 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _vv8 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _io0 = input => "object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) && _io1(input.schemas); const _io1 = input => Object.keys(input).every(key => {
|
|
131
132
|
const value = input[key];
|
|
132
133
|
if (undefined === value)
|
|
133
134
|
return true;
|
|
134
135
|
return "object" === typeof value && null !== value && _iu1(value);
|
|
135
|
-
}); const _io2 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io3 = input => "boolean" === input.type && "string" === typeof input.description; const _io4 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type && "string" === typeof input.description; const _io5 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type && "string" === typeof input.description; const _io6 = input => (undefined === input.format ||
|
|
136
|
+
}); const _io2 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io3 = input => "boolean" === input.type && "string" === typeof input.description; const _io4 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type && "string" === typeof input.description; const _io5 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type && "string" === typeof input.description; const _io6 = input => (undefined === input.format || true === _iv1.has(input.format)) && (undefined === input.pattern || "string" === typeof input.pattern) && (undefined === input.contentMediaType || "string" === typeof input.contentMediaType) && (undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000)) && (undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000)) && "string" === input.type && "string" === typeof input.description; const _io7 = input => "object" === typeof input.items && null !== input.items && _iu2(input.items) && (undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems) && (undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000)) && (undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000)) && "array" === input.type && "string" === typeof input.description; const _io8 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type; const _io9 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type; const _io10 = input => (undefined === input.format || true === _iv2.has(input.format)) && (undefined === input.pattern || "string" === typeof input.pattern) && (undefined === input.contentMediaType || "string" === typeof input.contentMediaType) && (undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000)) && (undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000)) && "string" === input.type; const _io11 = input => "string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]; const _io12 = input => "boolean" === input.type; const _io13 = input => "object" === typeof input.items && null !== input.items && _iu2(input.items) && (undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems) && (undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000)) && (undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000)) && "array" === input.type; const _io14 = input => (null === input["x-autobe-prisma-schema"] || undefined === input["x-autobe-prisma-schema"] || "string" === typeof input["x-autobe-prisma-schema"]) && ("object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) && _io1(input.properties)) && (null !== input.additionalProperties && (undefined === input.additionalProperties || false === input.additionalProperties || "object" === typeof input.additionalProperties && null !== input.additionalProperties && _iu2(input.additionalProperties))) && (Array.isArray(input.required) && input.required.every(elem => "string" === typeof elem)) && "object" === input.type; const _io15 = input => "string" === typeof input.$ref; const _io16 = input => Array.isArray(input.oneOf) && input.oneOf.every(elem => "object" === typeof elem && null !== elem && _iu0(elem)) && (undefined === input.discriminator || "object" === typeof input.discriminator && null !== input.discriminator && _io18(input.discriminator)); const _io17 = input => "null" === input.type; const _io18 = input => "string" === typeof input.propertyName && (undefined === input.mapping || "object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) && _io19(input.mapping)); const _io19 = input => Object.keys(input).every(key => {
|
|
136
137
|
const value = input[key];
|
|
137
138
|
if (undefined === value)
|
|
138
139
|
return true;
|
|
@@ -317,9 +318,9 @@ function createController(props) {
|
|
|
317
318
|
path: _path + ".description",
|
|
318
319
|
expected: "string",
|
|
319
320
|
value: input.description
|
|
320
|
-
})].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => [undefined === input.format ||
|
|
321
|
+
})].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv7.has(input.format) || _report(_exceptionable, {
|
|
321
322
|
path: _path + ".format",
|
|
322
|
-
expected: "(
|
|
323
|
+
expected: "(\"date\" | \"date-time\" | \"duration\" | \"email\" | \"hostname\" | \"idn-email\" | \"idn-hostname\" | \"ipv4\" | \"ipv6\" | \"iri\" | \"iri-reference\" | \"json-pointer\" | \"password\" | \"regex\" | \"relative-json-pointer\" | \"time\" | \"uri\" | \"uri-reference\" | \"uri-template\" | \"url\" | \"uuid\" | undefined)",
|
|
323
324
|
value: input.format
|
|
324
325
|
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
325
326
|
path: _path + ".pattern",
|
|
@@ -457,9 +458,9 @@ function createController(props) {
|
|
|
457
458
|
path: _path + ".type",
|
|
458
459
|
expected: "\"number\"",
|
|
459
460
|
value: input.type
|
|
460
|
-
})].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => [undefined === input.format ||
|
|
461
|
+
})].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv8.has(input.format) || _report(_exceptionable, {
|
|
461
462
|
path: _path + ".format",
|
|
462
|
-
expected: "(
|
|
463
|
+
expected: "(\"date\" | \"date-time\" | \"duration\" | \"email\" | \"hostname\" | \"idn-email\" | \"idn-hostname\" | \"ipv4\" | \"ipv6\" | \"iri\" | \"iri-reference\" | \"json-pointer\" | \"password\" | \"regex\" | \"relative-json-pointer\" | \"time\" | \"uri\" | \"uri-reference\" | \"uri-template\" | \"url\" | \"uuid\" | undefined)",
|
|
463
464
|
value: input.format
|
|
464
465
|
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
465
466
|
path: _path + ".pattern",
|
|
@@ -557,8 +558,8 @@ function createController(props) {
|
|
|
557
558
|
path: _path + ".required",
|
|
558
559
|
expected: "Array<string>",
|
|
559
560
|
value: input.required
|
|
560
|
-
})) && input.required.map((elem,
|
|
561
|
-
path: _path + ".required[" +
|
|
561
|
+
})) && input.required.map((elem, _index9) => "string" === typeof elem || _report(_exceptionable, {
|
|
562
|
+
path: _path + ".required[" + _index9 + "]",
|
|
562
563
|
expected: "string",
|
|
563
564
|
value: elem
|
|
564
565
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -577,12 +578,12 @@ function createController(props) {
|
|
|
577
578
|
path: _path + ".oneOf",
|
|
578
579
|
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
579
580
|
value: input.oneOf
|
|
580
|
-
})) && input.oneOf.map((elem,
|
|
581
|
-
path: _path + ".oneOf[" +
|
|
581
|
+
})) && input.oneOf.map((elem, _index10) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
582
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
582
583
|
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
583
584
|
value: elem
|
|
584
|
-
})) && _vu0(elem, _path + ".oneOf[" +
|
|
585
|
-
path: _path + ".oneOf[" +
|
|
585
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index10 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
586
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
586
587
|
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
587
588
|
value: elem
|
|
588
589
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -650,8 +651,8 @@ function createController(props) {
|
|
|
650
651
|
path: _path + ".required",
|
|
651
652
|
expected: "Array<string>",
|
|
652
653
|
value: input.required
|
|
653
|
-
})) && input.required.map((elem,
|
|
654
|
-
path: _path + ".required[" +
|
|
654
|
+
})) && input.required.map((elem, _index11) => "string" === typeof elem || _report(_exceptionable, {
|
|
655
|
+
path: _path + ".required[" + _index11 + "]",
|
|
655
656
|
expected: "string",
|
|
656
657
|
value: elem
|
|
657
658
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -678,12 +679,12 @@ function createController(props) {
|
|
|
678
679
|
path: _path + ".oneOf",
|
|
679
680
|
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
680
681
|
value: input.oneOf
|
|
681
|
-
})) && input.oneOf.map((elem,
|
|
682
|
-
path: _path + ".oneOf[" +
|
|
682
|
+
})) && input.oneOf.map((elem, _index12) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
683
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
683
684
|
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
684
685
|
value: elem
|
|
685
|
-
})) && _vu0(elem, _path + ".oneOf[" +
|
|
686
|
-
path: _path + ".oneOf[" +
|
|
686
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index12 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
687
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
687
688
|
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
688
689
|
value: elem
|
|
689
690
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -835,7 +836,11 @@ function createController(props) {
|
|
|
835
836
|
};
|
|
836
837
|
return result;
|
|
837
838
|
};
|
|
838
|
-
const application = collection[props.model === "chatgpt"
|
|
839
|
+
const application = collection[props.model === "chatgpt"
|
|
840
|
+
? "chatgpt"
|
|
841
|
+
: props.model === "gemini"
|
|
842
|
+
? "gemini"
|
|
843
|
+
: "claude"](validate);
|
|
839
844
|
return {
|
|
840
845
|
protocol: "class",
|
|
841
846
|
name: "interface",
|
|
@@ -860,10 +865,11 @@ const collection = {
|
|
|
860
865
|
{
|
|
861
866
|
name: "complementComponents",
|
|
862
867
|
parameters: {
|
|
863
|
-
description: "Current Type: {@link IAutoBeInterfaceComplementApplication.IProps}
|
|
868
|
+
description: "Current Type: {@link IAutoBeInterfaceComplementApplication.IProps}",
|
|
864
869
|
type: "object",
|
|
865
870
|
properties: {
|
|
866
871
|
schemas: {
|
|
872
|
+
description: "A collection of missing schema definitions that need to be added to the\nOpenAPI document's `components.schemas` section.\n\nThis object contains schema definitions for types that are referenced but\nnot yet defined:\n\n- Key: Schema name (`string`): The name of the schema type that will be\n referenced in $ref statements\n- Value: `AutoBeOpenApi.IJsonSchema` - The complete JSON Schema definition\n for that type\n\nExample structure:\n\n```typescript\n{\n \"UserProfile\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": { \"type\": \"string\" },\n \"name\": { \"type\": \"string\" },\n \"email\": { \"type\": \"string\", \"format\": \"email\" }\n },\n \"required\": [\"id\", \"name\", \"email\"]\n }\n}\n```\n\nEach schema definition follows the JSON Schema specification and will be\ndirectly inserted into the OpenAPI document's components.schemas section,\nmaking them available for $ref references throughout the API\nspecification.",
|
|
867
873
|
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
868
874
|
}
|
|
869
875
|
},
|
|
@@ -1053,7 +1059,30 @@ const collection = {
|
|
|
1053
1059
|
properties: {
|
|
1054
1060
|
format: {
|
|
1055
1061
|
description: "Format restriction.",
|
|
1056
|
-
type: "string"
|
|
1062
|
+
type: "string",
|
|
1063
|
+
"enum": [
|
|
1064
|
+
"date-time",
|
|
1065
|
+
"password",
|
|
1066
|
+
"regex",
|
|
1067
|
+
"uuid",
|
|
1068
|
+
"email",
|
|
1069
|
+
"hostname",
|
|
1070
|
+
"idn-email",
|
|
1071
|
+
"idn-hostname",
|
|
1072
|
+
"iri",
|
|
1073
|
+
"iri-reference",
|
|
1074
|
+
"ipv4",
|
|
1075
|
+
"ipv6",
|
|
1076
|
+
"uri",
|
|
1077
|
+
"uri-reference",
|
|
1078
|
+
"uri-template",
|
|
1079
|
+
"url",
|
|
1080
|
+
"date",
|
|
1081
|
+
"time",
|
|
1082
|
+
"duration",
|
|
1083
|
+
"json-pointer",
|
|
1084
|
+
"relative-json-pointer"
|
|
1085
|
+
]
|
|
1057
1086
|
},
|
|
1058
1087
|
pattern: {
|
|
1059
1088
|
description: "Pattern restriction.",
|
|
@@ -1089,10 +1118,11 @@ const collection = {
|
|
|
1089
1118
|
]
|
|
1090
1119
|
},
|
|
1091
1120
|
"AutoBeOpenApi.IJsonSchemaDescriptive.IArray": {
|
|
1092
|
-
description: "Array type info
|
|
1121
|
+
description: "Array type info.",
|
|
1093
1122
|
type: "object",
|
|
1094
1123
|
properties: {
|
|
1095
1124
|
items: {
|
|
1125
|
+
description: "Items type info.\n\nThe `items` means the type of the array elements. In other words, it is\nthe type schema info of the `T` in the TypeScript array type\n`Array<T>`.",
|
|
1096
1126
|
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema"
|
|
1097
1127
|
},
|
|
1098
1128
|
uniqueItems: {
|
|
@@ -1238,7 +1268,30 @@ const collection = {
|
|
|
1238
1268
|
properties: {
|
|
1239
1269
|
format: {
|
|
1240
1270
|
description: "Format restriction.",
|
|
1241
|
-
type: "string"
|
|
1271
|
+
type: "string",
|
|
1272
|
+
"enum": [
|
|
1273
|
+
"date-time",
|
|
1274
|
+
"password",
|
|
1275
|
+
"regex",
|
|
1276
|
+
"uuid",
|
|
1277
|
+
"email",
|
|
1278
|
+
"hostname",
|
|
1279
|
+
"idn-email",
|
|
1280
|
+
"idn-hostname",
|
|
1281
|
+
"iri",
|
|
1282
|
+
"iri-reference",
|
|
1283
|
+
"ipv4",
|
|
1284
|
+
"ipv6",
|
|
1285
|
+
"uri",
|
|
1286
|
+
"uri-reference",
|
|
1287
|
+
"uri-template",
|
|
1288
|
+
"url",
|
|
1289
|
+
"date",
|
|
1290
|
+
"time",
|
|
1291
|
+
"duration",
|
|
1292
|
+
"json-pointer",
|
|
1293
|
+
"relative-json-pointer"
|
|
1294
|
+
]
|
|
1242
1295
|
},
|
|
1243
1296
|
pattern: {
|
|
1244
1297
|
description: "Pattern restriction.",
|
|
@@ -1308,10 +1361,11 @@ const collection = {
|
|
|
1308
1361
|
]
|
|
1309
1362
|
},
|
|
1310
1363
|
"AutoBeOpenApi.IJsonSchema.IArray": {
|
|
1311
|
-
description: "Array type info
|
|
1364
|
+
description: "Array type info.",
|
|
1312
1365
|
type: "object",
|
|
1313
1366
|
properties: {
|
|
1314
1367
|
items: {
|
|
1368
|
+
description: "Items type info.\n\nThe `items` means the type of the array elements. In other words, it is\nthe type schema info of the `T` in the TypeScript array type\n`Array<T>`.",
|
|
1315
1369
|
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema"
|
|
1316
1370
|
},
|
|
1317
1371
|
uniqueItems: {
|
|
@@ -1340,7 +1394,7 @@ const collection = {
|
|
|
1340
1394
|
]
|
|
1341
1395
|
},
|
|
1342
1396
|
"AutoBeOpenApi.IJsonSchema.IObject": {
|
|
1343
|
-
description: "Object type info
|
|
1397
|
+
description: "Object type info.",
|
|
1344
1398
|
type: "object",
|
|
1345
1399
|
properties: {
|
|
1346
1400
|
"x-autobe-prisma-schema": {
|
|
@@ -1355,6 +1409,7 @@ const collection = {
|
|
|
1355
1409
|
]
|
|
1356
1410
|
},
|
|
1357
1411
|
properties: {
|
|
1412
|
+
description: "Properties of the object.\n\nThe `properties` means a list of key-value pairs of the object's\nregular properties. The key is the name of the regular property, and\nthe value is the type schema info.\n\nIMPORTANT: Each property in this object MUST have a detailed\ndescription that references and aligns with the description comments\nfrom the corresponding Prisma DB schema column.\n\nIf you need additional properties that is represented by dynamic key,\nyou can use the {@link additionalProperties} instead.",
|
|
1358
1413
|
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
1359
1414
|
},
|
|
1360
1415
|
additionalProperties: {
|
|
@@ -1449,7 +1504,7 @@ const collection = {
|
|
|
1449
1504
|
]
|
|
1450
1505
|
},
|
|
1451
1506
|
"AutoBeOpenApi.IJsonSchema.IOneOf": {
|
|
1452
|
-
description: "Union type.\n\n`IOneOf` represents an union type of the TypeScript (`A | B | C`).\n\nFor reference, even though your Swagger (or OpenAPI) document has defined\n`anyOf` instead of the `oneOf`, {@link AutoBeOpenApi} forcibly converts it\nto `oneOf` type
|
|
1507
|
+
description: "Union type.\n\n`IOneOf` represents an union type of the TypeScript (`A | B | C`).\n\nFor reference, even though your Swagger (or OpenAPI) document has defined\n`anyOf` instead of the `oneOf`, {@link AutoBeOpenApi} forcibly converts it\nto `oneOf` type.",
|
|
1453
1508
|
type: "object",
|
|
1454
1509
|
properties: {
|
|
1455
1510
|
oneOf: {
|
|
@@ -1488,6 +1543,7 @@ const collection = {
|
|
|
1488
1543
|
}
|
|
1489
1544
|
},
|
|
1490
1545
|
discriminator: {
|
|
1546
|
+
description: "Discriminator info of the union type.",
|
|
1491
1547
|
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator"
|
|
1492
1548
|
}
|
|
1493
1549
|
},
|
|
@@ -1496,7 +1552,7 @@ const collection = {
|
|
|
1496
1552
|
]
|
|
1497
1553
|
},
|
|
1498
1554
|
"AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator": {
|
|
1499
|
-
description: "Discriminator info of the union type
|
|
1555
|
+
description: "Discriminator info of the union type.",
|
|
1500
1556
|
type: "object",
|
|
1501
1557
|
properties: {
|
|
1502
1558
|
propertyName: {
|
|
@@ -1504,6 +1560,7 @@ const collection = {
|
|
|
1504
1560
|
type: "string"
|
|
1505
1561
|
},
|
|
1506
1562
|
mapping: {
|
|
1563
|
+
description: "Mapping of the discriminator value to the schema name.\n\nThis property is valid only for {@link IReference} typed\n{@link IOneOf.oneof} elements. Therefore, `key` of `mapping` is the\ndiscriminator value, and `value` of `mapping` is the schema name like\n`#/components/schemas/SomeObject`.",
|
|
1507
1564
|
$ref: "#/$defs/Recordstringstring"
|
|
1508
1565
|
}
|
|
1509
1566
|
},
|
|
@@ -1521,7 +1578,7 @@ const collection = {
|
|
|
1521
1578
|
}
|
|
1522
1579
|
},
|
|
1523
1580
|
"AutoBeOpenApi.IJsonSchemaDescriptive.IObject": {
|
|
1524
|
-
description: "Object type info
|
|
1581
|
+
description: "Object type info.",
|
|
1525
1582
|
type: "object",
|
|
1526
1583
|
properties: {
|
|
1527
1584
|
"x-autobe-prisma-schema": {
|
|
@@ -1536,6 +1593,7 @@ const collection = {
|
|
|
1536
1593
|
]
|
|
1537
1594
|
},
|
|
1538
1595
|
properties: {
|
|
1596
|
+
description: "Properties of the object.\n\nThe `properties` means a list of key-value pairs of the object's\nregular properties. The key is the name of the regular property, and\nthe value is the type schema info.\n\nIMPORTANT: Each property in this object MUST have a detailed\ndescription that references and aligns with the description comments\nfrom the corresponding Prisma DB schema column.\n\nIf you need additional properties that is represented by dynamic key,\nyou can use the {@link additionalProperties} instead.",
|
|
1539
1597
|
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
1540
1598
|
},
|
|
1541
1599
|
additionalProperties: {
|
|
@@ -1624,7 +1682,7 @@ const collection = {
|
|
|
1624
1682
|
]
|
|
1625
1683
|
},
|
|
1626
1684
|
"AutoBeOpenApi.IJsonSchemaDescriptive.IOneOf": {
|
|
1627
|
-
description: "Union type.\n\n`IOneOf` represents an union type of the TypeScript (`A | B | C`).\n\nFor reference, even though your Swagger (or OpenAPI) document has defined\n`anyOf` instead of the `oneOf`, {@link AutoBeOpenApi} forcibly converts it\nto `oneOf` type
|
|
1685
|
+
description: "Union type.\n\n`IOneOf` represents an union type of the TypeScript (`A | B | C`).\n\nFor reference, even though your Swagger (or OpenAPI) document has defined\n`anyOf` instead of the `oneOf`, {@link AutoBeOpenApi} forcibly converts it\nto `oneOf` type.",
|
|
1628
1686
|
type: "object",
|
|
1629
1687
|
properties: {
|
|
1630
1688
|
oneOf: {
|
|
@@ -1663,6 +1721,7 @@ const collection = {
|
|
|
1663
1721
|
}
|
|
1664
1722
|
},
|
|
1665
1723
|
discriminator: {
|
|
1724
|
+
description: "Discriminator info of the union type.",
|
|
1666
1725
|
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator"
|
|
1667
1726
|
},
|
|
1668
1727
|
description: {
|
|
@@ -1699,12 +1758,12 @@ const collection = {
|
|
|
1699
1758
|
}
|
|
1700
1759
|
},
|
|
1701
1760
|
description: "Complements missing schema types\n\nThis method fills in schema definitions that are referenced via $ref but\nnot yet defined in the `components.schemas` section. For example, if an API\noperation references `{ \"$ref\": \"#/components/schemas/UserProfile\" }` but\n`UserProfile` type is not defined in `components.schemas`, this method will\nadd the missing schema definition.\n\nThis function is designed to be called via AI function calling mechanism to\nensure the OpenAPI document is complete and all referenced schemas are\nproperly defined.",
|
|
1702
|
-
validate: (() => { const _io0 = input => "object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) && _io1(input.schemas); const _io1 = input => Object.keys(input).every(key => {
|
|
1761
|
+
validate: (() => { const _iv1 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _iv2 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _vv7 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _vv8 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _io0 = input => "object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) && _io1(input.schemas); const _io1 = input => Object.keys(input).every(key => {
|
|
1703
1762
|
const value = input[key];
|
|
1704
1763
|
if (undefined === value)
|
|
1705
1764
|
return true;
|
|
1706
1765
|
return "object" === typeof value && null !== value && _iu1(value);
|
|
1707
|
-
}); const _io2 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io3 = input => "boolean" === input.type && "string" === typeof input.description; const _io4 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type && "string" === typeof input.description; const _io5 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type && "string" === typeof input.description; const _io6 = input => (undefined === input.format ||
|
|
1766
|
+
}); const _io2 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io3 = input => "boolean" === input.type && "string" === typeof input.description; const _io4 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type && "string" === typeof input.description; const _io5 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type && "string" === typeof input.description; const _io6 = input => (undefined === input.format || true === _iv1.has(input.format)) && (undefined === input.pattern || "string" === typeof input.pattern) && (undefined === input.contentMediaType || "string" === typeof input.contentMediaType) && (undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000)) && (undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000)) && "string" === input.type && "string" === typeof input.description; const _io7 = input => "object" === typeof input.items && null !== input.items && _iu2(input.items) && (undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems) && (undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000)) && (undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000)) && "array" === input.type && "string" === typeof input.description; const _io8 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type; const _io9 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type; const _io10 = input => (undefined === input.format || true === _iv2.has(input.format)) && (undefined === input.pattern || "string" === typeof input.pattern) && (undefined === input.contentMediaType || "string" === typeof input.contentMediaType) && (undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000)) && (undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000)) && "string" === input.type; const _io11 = input => "string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]; const _io12 = input => "boolean" === input.type; const _io13 = input => "object" === typeof input.items && null !== input.items && _iu2(input.items) && (undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems) && (undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000)) && (undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000)) && "array" === input.type; const _io14 = input => (null === input["x-autobe-prisma-schema"] || undefined === input["x-autobe-prisma-schema"] || "string" === typeof input["x-autobe-prisma-schema"]) && ("object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) && _io1(input.properties)) && (null !== input.additionalProperties && (undefined === input.additionalProperties || false === input.additionalProperties || "object" === typeof input.additionalProperties && null !== input.additionalProperties && _iu2(input.additionalProperties))) && (Array.isArray(input.required) && input.required.every(elem => "string" === typeof elem)) && "object" === input.type; const _io15 = input => "string" === typeof input.$ref; const _io16 = input => Array.isArray(input.oneOf) && input.oneOf.every(elem => "object" === typeof elem && null !== elem && _iu0(elem)) && (undefined === input.discriminator || "object" === typeof input.discriminator && null !== input.discriminator && _io18(input.discriminator)); const _io17 = input => "null" === input.type; const _io18 = input => "string" === typeof input.propertyName && (undefined === input.mapping || "object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) && _io19(input.mapping)); const _io19 = input => Object.keys(input).every(key => {
|
|
1708
1767
|
const value = input[key];
|
|
1709
1768
|
if (undefined === value)
|
|
1710
1769
|
return true;
|
|
@@ -1889,9 +1948,9 @@ const collection = {
|
|
|
1889
1948
|
path: _path + ".description",
|
|
1890
1949
|
expected: "string",
|
|
1891
1950
|
value: input.description
|
|
1892
|
-
})].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => [undefined === input.format ||
|
|
1951
|
+
})].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv7.has(input.format) || _report(_exceptionable, {
|
|
1893
1952
|
path: _path + ".format",
|
|
1894
|
-
expected: "(
|
|
1953
|
+
expected: "(\"date\" | \"date-time\" | \"duration\" | \"email\" | \"hostname\" | \"idn-email\" | \"idn-hostname\" | \"ipv4\" | \"ipv6\" | \"iri\" | \"iri-reference\" | \"json-pointer\" | \"password\" | \"regex\" | \"relative-json-pointer\" | \"time\" | \"uri\" | \"uri-reference\" | \"uri-template\" | \"url\" | \"uuid\" | undefined)",
|
|
1895
1954
|
value: input.format
|
|
1896
1955
|
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
1897
1956
|
path: _path + ".pattern",
|
|
@@ -2029,9 +2088,9 @@ const collection = {
|
|
|
2029
2088
|
path: _path + ".type",
|
|
2030
2089
|
expected: "\"number\"",
|
|
2031
2090
|
value: input.type
|
|
2032
|
-
})].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => [undefined === input.format ||
|
|
2091
|
+
})].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv8.has(input.format) || _report(_exceptionable, {
|
|
2033
2092
|
path: _path + ".format",
|
|
2034
|
-
expected: "(
|
|
2093
|
+
expected: "(\"date\" | \"date-time\" | \"duration\" | \"email\" | \"hostname\" | \"idn-email\" | \"idn-hostname\" | \"ipv4\" | \"ipv6\" | \"iri\" | \"iri-reference\" | \"json-pointer\" | \"password\" | \"regex\" | \"relative-json-pointer\" | \"time\" | \"uri\" | \"uri-reference\" | \"uri-template\" | \"url\" | \"uuid\" | undefined)",
|
|
2035
2094
|
value: input.format
|
|
2036
2095
|
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
2037
2096
|
path: _path + ".pattern",
|
|
@@ -2129,8 +2188,8 @@ const collection = {
|
|
|
2129
2188
|
path: _path + ".required",
|
|
2130
2189
|
expected: "Array<string>",
|
|
2131
2190
|
value: input.required
|
|
2132
|
-
})) && input.required.map((elem,
|
|
2133
|
-
path: _path + ".required[" +
|
|
2191
|
+
})) && input.required.map((elem, _index9) => "string" === typeof elem || _report(_exceptionable, {
|
|
2192
|
+
path: _path + ".required[" + _index9 + "]",
|
|
2134
2193
|
expected: "string",
|
|
2135
2194
|
value: elem
|
|
2136
2195
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -2149,12 +2208,12 @@ const collection = {
|
|
|
2149
2208
|
path: _path + ".oneOf",
|
|
2150
2209
|
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
2151
2210
|
value: input.oneOf
|
|
2152
|
-
})) && input.oneOf.map((elem,
|
|
2153
|
-
path: _path + ".oneOf[" +
|
|
2211
|
+
})) && input.oneOf.map((elem, _index10) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
2212
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
2154
2213
|
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
2155
2214
|
value: elem
|
|
2156
|
-
})) && _vu0(elem, _path + ".oneOf[" +
|
|
2157
|
-
path: _path + ".oneOf[" +
|
|
2215
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index10 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
2216
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
2158
2217
|
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
2159
2218
|
value: elem
|
|
2160
2219
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -2222,8 +2281,8 @@ const collection = {
|
|
|
2222
2281
|
path: _path + ".required",
|
|
2223
2282
|
expected: "Array<string>",
|
|
2224
2283
|
value: input.required
|
|
2225
|
-
})) && input.required.map((elem,
|
|
2226
|
-
path: _path + ".required[" +
|
|
2284
|
+
})) && input.required.map((elem, _index11) => "string" === typeof elem || _report(_exceptionable, {
|
|
2285
|
+
path: _path + ".required[" + _index11 + "]",
|
|
2227
2286
|
expected: "string",
|
|
2228
2287
|
value: elem
|
|
2229
2288
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -2250,12 +2309,12 @@ const collection = {
|
|
|
2250
2309
|
path: _path + ".oneOf",
|
|
2251
2310
|
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
2252
2311
|
value: input.oneOf
|
|
2253
|
-
})) && input.oneOf.map((elem,
|
|
2254
|
-
path: _path + ".oneOf[" +
|
|
2312
|
+
})) && input.oneOf.map((elem, _index12) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
2313
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
2255
2314
|
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
2256
2315
|
value: elem
|
|
2257
|
-
})) && _vu0(elem, _path + ".oneOf[" +
|
|
2258
|
-
path: _path + ".oneOf[" +
|
|
2316
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index12 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
2317
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
2259
2318
|
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
2260
2319
|
value: elem
|
|
2261
2320
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -2597,7 +2656,71 @@ const collection = {
|
|
|
2597
2656
|
properties: {
|
|
2598
2657
|
format: {
|
|
2599
2658
|
description: "Format restriction.",
|
|
2600
|
-
|
|
2659
|
+
oneOf: [
|
|
2660
|
+
{
|
|
2661
|
+
"const": "date-time"
|
|
2662
|
+
},
|
|
2663
|
+
{
|
|
2664
|
+
"const": "password"
|
|
2665
|
+
},
|
|
2666
|
+
{
|
|
2667
|
+
"const": "regex"
|
|
2668
|
+
},
|
|
2669
|
+
{
|
|
2670
|
+
"const": "uuid"
|
|
2671
|
+
},
|
|
2672
|
+
{
|
|
2673
|
+
"const": "email"
|
|
2674
|
+
},
|
|
2675
|
+
{
|
|
2676
|
+
"const": "hostname"
|
|
2677
|
+
},
|
|
2678
|
+
{
|
|
2679
|
+
"const": "idn-email"
|
|
2680
|
+
},
|
|
2681
|
+
{
|
|
2682
|
+
"const": "idn-hostname"
|
|
2683
|
+
},
|
|
2684
|
+
{
|
|
2685
|
+
"const": "iri"
|
|
2686
|
+
},
|
|
2687
|
+
{
|
|
2688
|
+
"const": "iri-reference"
|
|
2689
|
+
},
|
|
2690
|
+
{
|
|
2691
|
+
"const": "ipv4"
|
|
2692
|
+
},
|
|
2693
|
+
{
|
|
2694
|
+
"const": "ipv6"
|
|
2695
|
+
},
|
|
2696
|
+
{
|
|
2697
|
+
"const": "uri"
|
|
2698
|
+
},
|
|
2699
|
+
{
|
|
2700
|
+
"const": "uri-reference"
|
|
2701
|
+
},
|
|
2702
|
+
{
|
|
2703
|
+
"const": "uri-template"
|
|
2704
|
+
},
|
|
2705
|
+
{
|
|
2706
|
+
"const": "url"
|
|
2707
|
+
},
|
|
2708
|
+
{
|
|
2709
|
+
"const": "date"
|
|
2710
|
+
},
|
|
2711
|
+
{
|
|
2712
|
+
"const": "time"
|
|
2713
|
+
},
|
|
2714
|
+
{
|
|
2715
|
+
"const": "duration"
|
|
2716
|
+
},
|
|
2717
|
+
{
|
|
2718
|
+
"const": "json-pointer"
|
|
2719
|
+
},
|
|
2720
|
+
{
|
|
2721
|
+
"const": "relative-json-pointer"
|
|
2722
|
+
}
|
|
2723
|
+
]
|
|
2601
2724
|
},
|
|
2602
2725
|
pattern: {
|
|
2603
2726
|
description: "Pattern restriction.",
|
|
@@ -2777,7 +2900,71 @@ const collection = {
|
|
|
2777
2900
|
properties: {
|
|
2778
2901
|
format: {
|
|
2779
2902
|
description: "Format restriction.",
|
|
2780
|
-
|
|
2903
|
+
oneOf: [
|
|
2904
|
+
{
|
|
2905
|
+
"const": "date-time"
|
|
2906
|
+
},
|
|
2907
|
+
{
|
|
2908
|
+
"const": "password"
|
|
2909
|
+
},
|
|
2910
|
+
{
|
|
2911
|
+
"const": "regex"
|
|
2912
|
+
},
|
|
2913
|
+
{
|
|
2914
|
+
"const": "uuid"
|
|
2915
|
+
},
|
|
2916
|
+
{
|
|
2917
|
+
"const": "email"
|
|
2918
|
+
},
|
|
2919
|
+
{
|
|
2920
|
+
"const": "hostname"
|
|
2921
|
+
},
|
|
2922
|
+
{
|
|
2923
|
+
"const": "idn-email"
|
|
2924
|
+
},
|
|
2925
|
+
{
|
|
2926
|
+
"const": "idn-hostname"
|
|
2927
|
+
},
|
|
2928
|
+
{
|
|
2929
|
+
"const": "iri"
|
|
2930
|
+
},
|
|
2931
|
+
{
|
|
2932
|
+
"const": "iri-reference"
|
|
2933
|
+
},
|
|
2934
|
+
{
|
|
2935
|
+
"const": "ipv4"
|
|
2936
|
+
},
|
|
2937
|
+
{
|
|
2938
|
+
"const": "ipv6"
|
|
2939
|
+
},
|
|
2940
|
+
{
|
|
2941
|
+
"const": "uri"
|
|
2942
|
+
},
|
|
2943
|
+
{
|
|
2944
|
+
"const": "uri-reference"
|
|
2945
|
+
},
|
|
2946
|
+
{
|
|
2947
|
+
"const": "uri-template"
|
|
2948
|
+
},
|
|
2949
|
+
{
|
|
2950
|
+
"const": "url"
|
|
2951
|
+
},
|
|
2952
|
+
{
|
|
2953
|
+
"const": "date"
|
|
2954
|
+
},
|
|
2955
|
+
{
|
|
2956
|
+
"const": "time"
|
|
2957
|
+
},
|
|
2958
|
+
{
|
|
2959
|
+
"const": "duration"
|
|
2960
|
+
},
|
|
2961
|
+
{
|
|
2962
|
+
"const": "json-pointer"
|
|
2963
|
+
},
|
|
2964
|
+
{
|
|
2965
|
+
"const": "relative-json-pointer"
|
|
2966
|
+
}
|
|
2967
|
+
]
|
|
2781
2968
|
},
|
|
2782
2969
|
pattern: {
|
|
2783
2970
|
description: "Pattern restriction.",
|
|
@@ -3221,12 +3408,12 @@ const collection = {
|
|
|
3221
3408
|
}
|
|
3222
3409
|
},
|
|
3223
3410
|
description: "Complements missing schema types\n\nThis method fills in schema definitions that are referenced via $ref but\nnot yet defined in the `components.schemas` section. For example, if an API\noperation references `{ \"$ref\": \"#/components/schemas/UserProfile\" }` but\n`UserProfile` type is not defined in `components.schemas`, this method will\nadd the missing schema definition.\n\nThis function is designed to be called via AI function calling mechanism to\nensure the OpenAPI document is complete and all referenced schemas are\nproperly defined.",
|
|
3224
|
-
validate: (() => { const _io0 = input => "object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) && _io1(input.schemas); const _io1 = input => Object.keys(input).every(key => {
|
|
3411
|
+
validate: (() => { const _iv1 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _iv2 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _vv7 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _vv8 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _io0 = input => "object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) && _io1(input.schemas); const _io1 = input => Object.keys(input).every(key => {
|
|
3225
3412
|
const value = input[key];
|
|
3226
3413
|
if (undefined === value)
|
|
3227
3414
|
return true;
|
|
3228
3415
|
return "object" === typeof value && null !== value && _iu1(value);
|
|
3229
|
-
}); const _io2 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io3 = input => "boolean" === input.type && "string" === typeof input.description; const _io4 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type && "string" === typeof input.description; const _io5 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type && "string" === typeof input.description; const _io6 = input => (undefined === input.format ||
|
|
3416
|
+
}); const _io2 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io3 = input => "boolean" === input.type && "string" === typeof input.description; const _io4 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type && "string" === typeof input.description; const _io5 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type && "string" === typeof input.description; const _io6 = input => (undefined === input.format || true === _iv1.has(input.format)) && (undefined === input.pattern || "string" === typeof input.pattern) && (undefined === input.contentMediaType || "string" === typeof input.contentMediaType) && (undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000)) && (undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000)) && "string" === input.type && "string" === typeof input.description; const _io7 = input => "object" === typeof input.items && null !== input.items && _iu2(input.items) && (undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems) && (undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000)) && (undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000)) && "array" === input.type && "string" === typeof input.description; const _io8 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type; const _io9 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type; const _io10 = input => (undefined === input.format || true === _iv2.has(input.format)) && (undefined === input.pattern || "string" === typeof input.pattern) && (undefined === input.contentMediaType || "string" === typeof input.contentMediaType) && (undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000)) && (undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000)) && "string" === input.type; const _io11 = input => "string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]; const _io12 = input => "boolean" === input.type; const _io13 = input => "object" === typeof input.items && null !== input.items && _iu2(input.items) && (undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems) && (undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000)) && (undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000)) && "array" === input.type; const _io14 = input => (null === input["x-autobe-prisma-schema"] || undefined === input["x-autobe-prisma-schema"] || "string" === typeof input["x-autobe-prisma-schema"]) && ("object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) && _io1(input.properties)) && (null !== input.additionalProperties && (undefined === input.additionalProperties || false === input.additionalProperties || "object" === typeof input.additionalProperties && null !== input.additionalProperties && _iu2(input.additionalProperties))) && (Array.isArray(input.required) && input.required.every(elem => "string" === typeof elem)) && "object" === input.type; const _io15 = input => "string" === typeof input.$ref; const _io16 = input => Array.isArray(input.oneOf) && input.oneOf.every(elem => "object" === typeof elem && null !== elem && _iu0(elem)) && (undefined === input.discriminator || "object" === typeof input.discriminator && null !== input.discriminator && _io18(input.discriminator)); const _io17 = input => "null" === input.type; const _io18 = input => "string" === typeof input.propertyName && (undefined === input.mapping || "object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) && _io19(input.mapping)); const _io19 = input => Object.keys(input).every(key => {
|
|
3230
3417
|
const value = input[key];
|
|
3231
3418
|
if (undefined === value)
|
|
3232
3419
|
return true;
|
|
@@ -3411,9 +3598,9 @@ const collection = {
|
|
|
3411
3598
|
path: _path + ".description",
|
|
3412
3599
|
expected: "string",
|
|
3413
3600
|
value: input.description
|
|
3414
|
-
})].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => [undefined === input.format ||
|
|
3601
|
+
})].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv7.has(input.format) || _report(_exceptionable, {
|
|
3415
3602
|
path: _path + ".format",
|
|
3416
|
-
expected: "(
|
|
3603
|
+
expected: "(\"date\" | \"date-time\" | \"duration\" | \"email\" | \"hostname\" | \"idn-email\" | \"idn-hostname\" | \"ipv4\" | \"ipv6\" | \"iri\" | \"iri-reference\" | \"json-pointer\" | \"password\" | \"regex\" | \"relative-json-pointer\" | \"time\" | \"uri\" | \"uri-reference\" | \"uri-template\" | \"url\" | \"uuid\" | undefined)",
|
|
3417
3604
|
value: input.format
|
|
3418
3605
|
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
3419
3606
|
path: _path + ".pattern",
|
|
@@ -3551,9 +3738,1613 @@ const collection = {
|
|
|
3551
3738
|
path: _path + ".type",
|
|
3552
3739
|
expected: "\"number\"",
|
|
3553
3740
|
value: input.type
|
|
3554
|
-
})].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => [undefined === input.format ||
|
|
3741
|
+
})].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv8.has(input.format) || _report(_exceptionable, {
|
|
3555
3742
|
path: _path + ".format",
|
|
3743
|
+
expected: "(\"date\" | \"date-time\" | \"duration\" | \"email\" | \"hostname\" | \"idn-email\" | \"idn-hostname\" | \"ipv4\" | \"ipv6\" | \"iri\" | \"iri-reference\" | \"json-pointer\" | \"password\" | \"regex\" | \"relative-json-pointer\" | \"time\" | \"uri\" | \"uri-reference\" | \"uri-template\" | \"url\" | \"uuid\" | undefined)",
|
|
3744
|
+
value: input.format
|
|
3745
|
+
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
3746
|
+
path: _path + ".pattern",
|
|
3747
|
+
expected: "(string | undefined)",
|
|
3748
|
+
value: input.pattern
|
|
3749
|
+
}), undefined === input.contentMediaType || "string" === typeof input.contentMediaType || _report(_exceptionable, {
|
|
3750
|
+
path: _path + ".contentMediaType",
|
|
3556
3751
|
expected: "(string | undefined)",
|
|
3752
|
+
value: input.contentMediaType
|
|
3753
|
+
}), undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
3754
|
+
path: _path + ".minLength",
|
|
3755
|
+
expected: "number & Type<\"uint64\">",
|
|
3756
|
+
value: input.minLength
|
|
3757
|
+
})) || _report(_exceptionable, {
|
|
3758
|
+
path: _path + ".minLength",
|
|
3759
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3760
|
+
value: input.minLength
|
|
3761
|
+
}), undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
3762
|
+
path: _path + ".maxLength",
|
|
3763
|
+
expected: "number & Type<\"uint64\">",
|
|
3764
|
+
value: input.maxLength
|
|
3765
|
+
})) || _report(_exceptionable, {
|
|
3766
|
+
path: _path + ".maxLength",
|
|
3767
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3768
|
+
value: input.maxLength
|
|
3769
|
+
}), "string" === input.type || _report(_exceptionable, {
|
|
3770
|
+
path: _path + ".type",
|
|
3771
|
+
expected: "\"string\"",
|
|
3772
|
+
value: input.type
|
|
3773
|
+
})].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => ["string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"] || _report(_exceptionable, {
|
|
3774
|
+
path: _path + "[\"const\"]",
|
|
3775
|
+
expected: "(boolean | number | string)",
|
|
3776
|
+
value: input["const"]
|
|
3777
|
+
})].every(flag => flag); const _vo12 = (input, _path, _exceptionable = true) => ["boolean" === input.type || _report(_exceptionable, {
|
|
3778
|
+
path: _path + ".type",
|
|
3779
|
+
expected: "\"boolean\"",
|
|
3780
|
+
value: input.type
|
|
3781
|
+
})].every(flag => flag); const _vo13 = (input, _path, _exceptionable = true) => [("object" === typeof input.items && null !== input.items || _report(_exceptionable, {
|
|
3782
|
+
path: _path + ".items",
|
|
3783
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IOneOf | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
3784
|
+
value: input.items
|
|
3785
|
+
})) && _vu2(input.items, _path + ".items", true && _exceptionable) || _report(_exceptionable, {
|
|
3786
|
+
path: _path + ".items",
|
|
3787
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IOneOf | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
3788
|
+
value: input.items
|
|
3789
|
+
}), undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems || _report(_exceptionable, {
|
|
3790
|
+
path: _path + ".uniqueItems",
|
|
3791
|
+
expected: "(boolean | undefined)",
|
|
3792
|
+
value: input.uniqueItems
|
|
3793
|
+
}), undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
3794
|
+
path: _path + ".minItems",
|
|
3795
|
+
expected: "number & Type<\"uint64\">",
|
|
3796
|
+
value: input.minItems
|
|
3797
|
+
})) || _report(_exceptionable, {
|
|
3798
|
+
path: _path + ".minItems",
|
|
3799
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3800
|
+
value: input.minItems
|
|
3801
|
+
}), undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
3802
|
+
path: _path + ".maxItems",
|
|
3803
|
+
expected: "number & Type<\"uint64\">",
|
|
3804
|
+
value: input.maxItems
|
|
3805
|
+
})) || _report(_exceptionable, {
|
|
3806
|
+
path: _path + ".maxItems",
|
|
3807
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3808
|
+
value: input.maxItems
|
|
3809
|
+
}), "array" === input.type || _report(_exceptionable, {
|
|
3810
|
+
path: _path + ".type",
|
|
3811
|
+
expected: "\"array\"",
|
|
3812
|
+
value: input.type
|
|
3813
|
+
})].every(flag => flag); const _vo14 = (input, _path, _exceptionable = true) => [null === input["x-autobe-prisma-schema"] || undefined === input["x-autobe-prisma-schema"] || "string" === typeof input["x-autobe-prisma-schema"] || _report(_exceptionable, {
|
|
3814
|
+
path: _path + "[\"x-autobe-prisma-schema\"]",
|
|
3815
|
+
expected: "(null | string | undefined)",
|
|
3816
|
+
value: input["x-autobe-prisma-schema"]
|
|
3817
|
+
}), ("object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) || _report(_exceptionable, {
|
|
3818
|
+
path: _path + ".properties",
|
|
3819
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
3820
|
+
value: input.properties
|
|
3821
|
+
})) && _vo1(input.properties, _path + ".properties", true && _exceptionable) || _report(_exceptionable, {
|
|
3822
|
+
path: _path + ".properties",
|
|
3823
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
3824
|
+
value: input.properties
|
|
3825
|
+
}), (null !== input.additionalProperties || _report(_exceptionable, {
|
|
3826
|
+
path: _path + ".additionalProperties",
|
|
3827
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IOneOf | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString | false | undefined)",
|
|
3828
|
+
value: input.additionalProperties
|
|
3829
|
+
})) && (undefined === input.additionalProperties || false === input.additionalProperties || ("object" === typeof input.additionalProperties && null !== input.additionalProperties || _report(_exceptionable, {
|
|
3830
|
+
path: _path + ".additionalProperties",
|
|
3831
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IOneOf | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString | false | undefined)",
|
|
3832
|
+
value: input.additionalProperties
|
|
3833
|
+
})) && _vu2(input.additionalProperties, _path + ".additionalProperties", true && _exceptionable) || _report(_exceptionable, {
|
|
3834
|
+
path: _path + ".additionalProperties",
|
|
3835
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IOneOf | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString | false | undefined)",
|
|
3836
|
+
value: input.additionalProperties
|
|
3837
|
+
})), (Array.isArray(input.required) || _report(_exceptionable, {
|
|
3838
|
+
path: _path + ".required",
|
|
3839
|
+
expected: "Array<string>",
|
|
3840
|
+
value: input.required
|
|
3841
|
+
})) && input.required.map((elem, _index9) => "string" === typeof elem || _report(_exceptionable, {
|
|
3842
|
+
path: _path + ".required[" + _index9 + "]",
|
|
3843
|
+
expected: "string",
|
|
3844
|
+
value: elem
|
|
3845
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
3846
|
+
path: _path + ".required",
|
|
3847
|
+
expected: "Array<string>",
|
|
3848
|
+
value: input.required
|
|
3849
|
+
}), "object" === input.type || _report(_exceptionable, {
|
|
3850
|
+
path: _path + ".type",
|
|
3851
|
+
expected: "\"object\"",
|
|
3852
|
+
value: input.type
|
|
3853
|
+
})].every(flag => flag); const _vo15 = (input, _path, _exceptionable = true) => ["string" === typeof input.$ref || _report(_exceptionable, {
|
|
3854
|
+
path: _path + ".$ref",
|
|
3855
|
+
expected: "string",
|
|
3856
|
+
value: input.$ref
|
|
3857
|
+
})].every(flag => flag); const _vo16 = (input, _path, _exceptionable = true) => [(Array.isArray(input.oneOf) || _report(_exceptionable, {
|
|
3858
|
+
path: _path + ".oneOf",
|
|
3859
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
3860
|
+
value: input.oneOf
|
|
3861
|
+
})) && input.oneOf.map((elem, _index10) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
3862
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
3863
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
3864
|
+
value: elem
|
|
3865
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index10 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
3866
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
3867
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
3868
|
+
value: elem
|
|
3869
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
3870
|
+
path: _path + ".oneOf",
|
|
3871
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
3872
|
+
value: input.oneOf
|
|
3873
|
+
}), undefined === input.discriminator || ("object" === typeof input.discriminator && null !== input.discriminator || _report(_exceptionable, {
|
|
3874
|
+
path: _path + ".discriminator",
|
|
3875
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
3876
|
+
value: input.discriminator
|
|
3877
|
+
})) && _vo18(input.discriminator, _path + ".discriminator", true && _exceptionable) || _report(_exceptionable, {
|
|
3878
|
+
path: _path + ".discriminator",
|
|
3879
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
3880
|
+
value: input.discriminator
|
|
3881
|
+
})].every(flag => flag); const _vo17 = (input, _path, _exceptionable = true) => ["null" === input.type || _report(_exceptionable, {
|
|
3882
|
+
path: _path + ".type",
|
|
3883
|
+
expected: "\"null\"",
|
|
3884
|
+
value: input.type
|
|
3885
|
+
})].every(flag => flag); const _vo18 = (input, _path, _exceptionable = true) => ["string" === typeof input.propertyName || _report(_exceptionable, {
|
|
3886
|
+
path: _path + ".propertyName",
|
|
3887
|
+
expected: "string",
|
|
3888
|
+
value: input.propertyName
|
|
3889
|
+
}), undefined === input.mapping || ("object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) || _report(_exceptionable, {
|
|
3890
|
+
path: _path + ".mapping",
|
|
3891
|
+
expected: "(Record<string, string> | undefined)",
|
|
3892
|
+
value: input.mapping
|
|
3893
|
+
})) && _vo19(input.mapping, _path + ".mapping", true && _exceptionable) || _report(_exceptionable, {
|
|
3894
|
+
path: _path + ".mapping",
|
|
3895
|
+
expected: "(Record<string, string> | undefined)",
|
|
3896
|
+
value: input.mapping
|
|
3897
|
+
})].every(flag => flag); const _vo19 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
|
|
3898
|
+
const value = input[key];
|
|
3899
|
+
if (undefined === value)
|
|
3900
|
+
return true;
|
|
3901
|
+
return "string" === typeof value || _report(_exceptionable, {
|
|
3902
|
+
path: _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key),
|
|
3903
|
+
expected: "string",
|
|
3904
|
+
value: value
|
|
3905
|
+
});
|
|
3906
|
+
}).every(flag => flag)].every(flag => flag); const _vo20 = (input, _path, _exceptionable = true) => [null === input["x-autobe-prisma-schema"] || undefined === input["x-autobe-prisma-schema"] || "string" === typeof input["x-autobe-prisma-schema"] || _report(_exceptionable, {
|
|
3907
|
+
path: _path + "[\"x-autobe-prisma-schema\"]",
|
|
3908
|
+
expected: "(null | string | undefined)",
|
|
3909
|
+
value: input["x-autobe-prisma-schema"]
|
|
3910
|
+
}), ("object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) || _report(_exceptionable, {
|
|
3911
|
+
path: _path + ".properties",
|
|
3912
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
3913
|
+
value: input.properties
|
|
3914
|
+
})) && _vo1(input.properties, _path + ".properties", true && _exceptionable) || _report(_exceptionable, {
|
|
3915
|
+
path: _path + ".properties",
|
|
3916
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
3917
|
+
value: input.properties
|
|
3918
|
+
}), (null !== input.additionalProperties || _report(_exceptionable, {
|
|
3919
|
+
path: _path + ".additionalProperties",
|
|
3920
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IOneOf | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString | false | undefined)",
|
|
3921
|
+
value: input.additionalProperties
|
|
3922
|
+
})) && (undefined === input.additionalProperties || false === input.additionalProperties || ("object" === typeof input.additionalProperties && null !== input.additionalProperties || _report(_exceptionable, {
|
|
3923
|
+
path: _path + ".additionalProperties",
|
|
3924
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IOneOf | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString | false | undefined)",
|
|
3925
|
+
value: input.additionalProperties
|
|
3926
|
+
})) && _vu2(input.additionalProperties, _path + ".additionalProperties", true && _exceptionable) || _report(_exceptionable, {
|
|
3927
|
+
path: _path + ".additionalProperties",
|
|
3928
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IOneOf | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString | false | undefined)",
|
|
3929
|
+
value: input.additionalProperties
|
|
3930
|
+
})), (Array.isArray(input.required) || _report(_exceptionable, {
|
|
3931
|
+
path: _path + ".required",
|
|
3932
|
+
expected: "Array<string>",
|
|
3933
|
+
value: input.required
|
|
3934
|
+
})) && input.required.map((elem, _index11) => "string" === typeof elem || _report(_exceptionable, {
|
|
3935
|
+
path: _path + ".required[" + _index11 + "]",
|
|
3936
|
+
expected: "string",
|
|
3937
|
+
value: elem
|
|
3938
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
3939
|
+
path: _path + ".required",
|
|
3940
|
+
expected: "Array<string>",
|
|
3941
|
+
value: input.required
|
|
3942
|
+
}), "object" === input.type || _report(_exceptionable, {
|
|
3943
|
+
path: _path + ".type",
|
|
3944
|
+
expected: "\"object\"",
|
|
3945
|
+
value: input.type
|
|
3946
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
3947
|
+
path: _path + ".description",
|
|
3948
|
+
expected: "string",
|
|
3949
|
+
value: input.description
|
|
3950
|
+
})].every(flag => flag); const _vo21 = (input, _path, _exceptionable = true) => ["string" === typeof input.$ref || _report(_exceptionable, {
|
|
3951
|
+
path: _path + ".$ref",
|
|
3952
|
+
expected: "string",
|
|
3953
|
+
value: input.$ref
|
|
3954
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
3955
|
+
path: _path + ".description",
|
|
3956
|
+
expected: "string",
|
|
3957
|
+
value: input.description
|
|
3958
|
+
})].every(flag => flag); const _vo22 = (input, _path, _exceptionable = true) => [(Array.isArray(input.oneOf) || _report(_exceptionable, {
|
|
3959
|
+
path: _path + ".oneOf",
|
|
3960
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
3961
|
+
value: input.oneOf
|
|
3962
|
+
})) && input.oneOf.map((elem, _index12) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
3963
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
3964
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
3965
|
+
value: elem
|
|
3966
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index12 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
3967
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
3968
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
3969
|
+
value: elem
|
|
3970
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
3971
|
+
path: _path + ".oneOf",
|
|
3972
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
3973
|
+
value: input.oneOf
|
|
3974
|
+
}), undefined === input.discriminator || ("object" === typeof input.discriminator && null !== input.discriminator || _report(_exceptionable, {
|
|
3975
|
+
path: _path + ".discriminator",
|
|
3976
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
3977
|
+
value: input.discriminator
|
|
3978
|
+
})) && _vo18(input.discriminator, _path + ".discriminator", true && _exceptionable) || _report(_exceptionable, {
|
|
3979
|
+
path: _path + ".discriminator",
|
|
3980
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
3981
|
+
value: input.discriminator
|
|
3982
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
3983
|
+
path: _path + ".description",
|
|
3984
|
+
expected: "string",
|
|
3985
|
+
value: input.description
|
|
3986
|
+
})].every(flag => flag); const _vo23 = (input, _path, _exceptionable = true) => ["null" === input.type || _report(_exceptionable, {
|
|
3987
|
+
path: _path + ".type",
|
|
3988
|
+
expected: "\"null\"",
|
|
3989
|
+
value: input.type
|
|
3990
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
3991
|
+
path: _path + ".description",
|
|
3992
|
+
expected: "string",
|
|
3993
|
+
value: input.description
|
|
3994
|
+
})].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
|
|
3995
|
+
if ("number" === input.type)
|
|
3996
|
+
return _vo9(input, _path, true && _exceptionable);
|
|
3997
|
+
else if ("integer" === input.type)
|
|
3998
|
+
return _vo8(input, _path, true && _exceptionable);
|
|
3999
|
+
else if ("string" === input.type)
|
|
4000
|
+
return _vo10(input, _path, true && _exceptionable);
|
|
4001
|
+
else if (undefined !== input["const"])
|
|
4002
|
+
return _vo11(input, _path, true && _exceptionable);
|
|
4003
|
+
else if ("null" === input.type)
|
|
4004
|
+
return _vo17(input, _path, true && _exceptionable);
|
|
4005
|
+
else if ("boolean" === input.type)
|
|
4006
|
+
return _vo12(input, _path, true && _exceptionable);
|
|
4007
|
+
else if ("array" === input.type)
|
|
4008
|
+
return _vo13(input, _path, true && _exceptionable);
|
|
4009
|
+
else if ("object" === input.type)
|
|
4010
|
+
return _vo14(input, _path, true && _exceptionable);
|
|
4011
|
+
else if (undefined !== input.$ref)
|
|
4012
|
+
return _vo15(input, _path, true && _exceptionable);
|
|
4013
|
+
else
|
|
4014
|
+
return _report(_exceptionable, {
|
|
4015
|
+
path: _path,
|
|
4016
|
+
expected: "(AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.IString | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference)",
|
|
4017
|
+
value: input
|
|
4018
|
+
});
|
|
4019
|
+
})(); const _vu1 = (input, _path, _exceptionable = true) => (() => {
|
|
4020
|
+
if (undefined !== input["const"])
|
|
4021
|
+
return _vo2(input, _path, true && _exceptionable);
|
|
4022
|
+
else if ("boolean" === input.type)
|
|
4023
|
+
return _vo3(input, _path, true && _exceptionable);
|
|
4024
|
+
else if ("number" === input.type)
|
|
4025
|
+
return _vo5(input, _path, true && _exceptionable);
|
|
4026
|
+
else if ("integer" === input.type)
|
|
4027
|
+
return _vo4(input, _path, true && _exceptionable);
|
|
4028
|
+
else if ("string" === input.type)
|
|
4029
|
+
return _vo6(input, _path, true && _exceptionable);
|
|
4030
|
+
else if ("array" === input.type)
|
|
4031
|
+
return _vo7(input, _path, true && _exceptionable);
|
|
4032
|
+
else if ("object" === input.type)
|
|
4033
|
+
return _vo20(input, _path, true && _exceptionable);
|
|
4034
|
+
else if (undefined !== input.$ref)
|
|
4035
|
+
return _vo21(input, _path, true && _exceptionable);
|
|
4036
|
+
else if (undefined !== input.oneOf)
|
|
4037
|
+
return _vo22(input, _path, true && _exceptionable);
|
|
4038
|
+
else if ("null" === input.type)
|
|
4039
|
+
return _vo23(input, _path, true && _exceptionable);
|
|
4040
|
+
else
|
|
4041
|
+
return _report(_exceptionable, {
|
|
4042
|
+
path: _path,
|
|
4043
|
+
expected: "(AutoBeOpenApi.IJsonSchemaDescriptive.IConstant | AutoBeOpenApi.IJsonSchemaDescriptive.IBoolean | AutoBeOpenApi.IJsonSchemaDescriptive.INumber | AutoBeOpenApi.IJsonSchemaDescriptive.IInteger | AutoBeOpenApi.IJsonSchemaDescriptive.IString | AutoBeOpenApi.IJsonSchemaDescriptive.IArray | AutoBeOpenApi.IJsonSchemaDescriptive.IObject | AutoBeOpenApi.IJsonSchemaDescriptive.IReference | AutoBeOpenApi.IJsonSchemaDescriptive.IOneOf | AutoBeOpenApi.IJsonSchemaDescriptive.INull)",
|
|
4044
|
+
value: input
|
|
4045
|
+
});
|
|
4046
|
+
})(); const _vu2 = (input, _path, _exceptionable = true) => (() => {
|
|
4047
|
+
if ("number" === input.type)
|
|
4048
|
+
return _vo9(input, _path, true && _exceptionable);
|
|
4049
|
+
else if ("integer" === input.type)
|
|
4050
|
+
return _vo8(input, _path, true && _exceptionable);
|
|
4051
|
+
else if ("string" === input.type)
|
|
4052
|
+
return _vo10(input, _path, true && _exceptionable);
|
|
4053
|
+
else if (undefined !== input["const"])
|
|
4054
|
+
return _vo11(input, _path, true && _exceptionable);
|
|
4055
|
+
else if ("null" === input.type)
|
|
4056
|
+
return _vo17(input, _path, true && _exceptionable);
|
|
4057
|
+
else if ("boolean" === input.type)
|
|
4058
|
+
return _vo12(input, _path, true && _exceptionable);
|
|
4059
|
+
else if ("array" === input.type)
|
|
4060
|
+
return _vo13(input, _path, true && _exceptionable);
|
|
4061
|
+
else if ("object" === input.type)
|
|
4062
|
+
return _vo14(input, _path, true && _exceptionable);
|
|
4063
|
+
else if (undefined !== input.$ref)
|
|
4064
|
+
return _vo15(input, _path, true && _exceptionable);
|
|
4065
|
+
else if (undefined !== input.oneOf)
|
|
4066
|
+
return _vo16(input, _path, true && _exceptionable);
|
|
4067
|
+
else
|
|
4068
|
+
return _report(_exceptionable, {
|
|
4069
|
+
path: _path,
|
|
4070
|
+
expected: "(AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.IString | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IOneOf)",
|
|
4071
|
+
value: input
|
|
4072
|
+
});
|
|
4073
|
+
})(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
|
|
4074
|
+
if (false === __is(input)) {
|
|
4075
|
+
errors = [];
|
|
4076
|
+
_report = __typia_transform__validateReport._validateReport(errors);
|
|
4077
|
+
((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
|
|
4078
|
+
path: _path + "",
|
|
4079
|
+
expected: "IAutoBeInterfaceComplementApplication.IProps",
|
|
4080
|
+
value: input
|
|
4081
|
+
})) && _vo0(input, _path + "", true) || _report(true, {
|
|
4082
|
+
path: _path + "",
|
|
4083
|
+
expected: "IAutoBeInterfaceComplementApplication.IProps",
|
|
4084
|
+
value: input
|
|
4085
|
+
}))(input, "$input", true);
|
|
4086
|
+
const success = 0 === errors.length;
|
|
4087
|
+
return success ? {
|
|
4088
|
+
success,
|
|
4089
|
+
data: input
|
|
4090
|
+
} : {
|
|
4091
|
+
success,
|
|
4092
|
+
errors,
|
|
4093
|
+
data: input
|
|
4094
|
+
};
|
|
4095
|
+
}
|
|
4096
|
+
return {
|
|
4097
|
+
success: true,
|
|
4098
|
+
data: input
|
|
4099
|
+
};
|
|
4100
|
+
}; })()
|
|
4101
|
+
}
|
|
4102
|
+
]
|
|
4103
|
+
};
|
|
4104
|
+
__typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
|
|
4105
|
+
validate: {
|
|
4106
|
+
complementComponents: validate,
|
|
4107
|
+
},
|
|
4108
|
+
}), { equals: false }));
|
|
4109
|
+
return application;
|
|
4110
|
+
})(),
|
|
4111
|
+
gemini: (validate) => (() => {
|
|
4112
|
+
const application = {
|
|
4113
|
+
model: "gemini",
|
|
4114
|
+
options: {
|
|
4115
|
+
reference: true,
|
|
4116
|
+
separate: null
|
|
4117
|
+
},
|
|
4118
|
+
functions: [
|
|
4119
|
+
{
|
|
4120
|
+
name: "complementComponents",
|
|
4121
|
+
parameters: {
|
|
4122
|
+
description: "Current Type: {@link IAutoBeInterfaceComplementApplication.IProps}",
|
|
4123
|
+
type: "object",
|
|
4124
|
+
properties: {
|
|
4125
|
+
schemas: {
|
|
4126
|
+
description: "A collection of missing schema definitions that need to be added to the\nOpenAPI document's `components.schemas` section.\n\nThis object contains schema definitions for types that are referenced but\nnot yet defined:\n\n- Key: Schema name (`string`): The name of the schema type that will be\n referenced in $ref statements\n- Value: `AutoBeOpenApi.IJsonSchema` - The complete JSON Schema definition\n for that type\n\nExample structure:\n\n```typescript\n{\n \"UserProfile\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": { \"type\": \"string\" },\n \"name\": { \"type\": \"string\" },\n \"email\": { \"type\": \"string\", \"format\": \"email\" }\n },\n \"required\": [\"id\", \"name\", \"email\"]\n }\n}\n```\n\nEach schema definition follows the JSON Schema specification and will be\ndirectly inserted into the OpenAPI document's components.schemas section,\nmaking them available for $ref references throughout the API\nspecification.",
|
|
4127
|
+
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
4128
|
+
}
|
|
4129
|
+
},
|
|
4130
|
+
required: [
|
|
4131
|
+
"schemas"
|
|
4132
|
+
],
|
|
4133
|
+
additionalProperties: false,
|
|
4134
|
+
$defs: {
|
|
4135
|
+
"RecordstringAutoBeOpenApi.IJsonSchemaDescriptive": {
|
|
4136
|
+
description: "Construct a type with a set of properties K of type T",
|
|
4137
|
+
type: "object",
|
|
4138
|
+
properties: {},
|
|
4139
|
+
required: [],
|
|
4140
|
+
additionalProperties: {
|
|
4141
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive"
|
|
4142
|
+
}
|
|
4143
|
+
},
|
|
4144
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive": {
|
|
4145
|
+
description: "Descriptive type schema info.\n\n`AutoBeOpenApi.IJsonSchemaDescriptive` is a type schema info of the OpenAPI\nGenerative, but it has a `description` property which is required.\n\n`AutoBeOpenApi.IJsonSchemaDescriptive` basically follows the JSON schema\nspecification of OpenAPI v3.1, but a little bit shrunk to remove ambiguous\nand duplicated expressions of OpenAPI v3.1 for the convenience, clarity,\nand AI generation.\n\nCRITICAL INSTRUCTIONS FOR OPTIMAL AI GENERATION:\n\nWhen creating descriptions for components, types, and properties:\n\n1. ALWAYS refer to and incorporate the description comments from the\n corresponding Prisma DB schema tables and columns. The descriptions\n should match the style, level of detail, and terminology used in the\n Prisma schema.\n2. ALL descriptions MUST be organized into MULTIPLE PARAGRAPHS separated by\n line breaks. Single-paragraph descriptions should be avoided.\n3. Descriptions should comprehensively cover:\n\n - The purpose and business meaning of the type or property\n - Relationships to other entities\n - Validation rules, constraints, and edge cases\n - Usage context and examples when helpful\n4. For each property of an object type, ensure its description reflects the\n corresponding column description in the Prisma DB schema, maintaining\n the same level of detail and terminology\n5. Descriptions should be so detailed and clear that anyone reading them can\n fully understand the type or property without needing to reference any\n other documentation",
|
|
4146
|
+
anyOf: [
|
|
4147
|
+
{
|
|
4148
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IConstant"
|
|
4149
|
+
},
|
|
4150
|
+
{
|
|
4151
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IBoolean"
|
|
4152
|
+
},
|
|
4153
|
+
{
|
|
4154
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IInteger"
|
|
4155
|
+
},
|
|
4156
|
+
{
|
|
4157
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.INumber"
|
|
4158
|
+
},
|
|
4159
|
+
{
|
|
4160
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IString"
|
|
4161
|
+
},
|
|
4162
|
+
{
|
|
4163
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IArray"
|
|
4164
|
+
},
|
|
4165
|
+
{
|
|
4166
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IObject"
|
|
4167
|
+
},
|
|
4168
|
+
{
|
|
4169
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IReference"
|
|
4170
|
+
},
|
|
4171
|
+
{
|
|
4172
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IOneOf"
|
|
4173
|
+
},
|
|
4174
|
+
{
|
|
4175
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.INull"
|
|
4176
|
+
}
|
|
4177
|
+
]
|
|
4178
|
+
},
|
|
4179
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IConstant": {
|
|
4180
|
+
description: "Constant value type.",
|
|
4181
|
+
type: "object",
|
|
4182
|
+
properties: {
|
|
4183
|
+
"const": {
|
|
4184
|
+
description: "The constant value.",
|
|
4185
|
+
anyOf: [
|
|
4186
|
+
{
|
|
4187
|
+
type: "string"
|
|
4188
|
+
},
|
|
4189
|
+
{
|
|
4190
|
+
type: "number"
|
|
4191
|
+
},
|
|
4192
|
+
{
|
|
4193
|
+
type: "boolean"
|
|
4194
|
+
}
|
|
4195
|
+
]
|
|
4196
|
+
},
|
|
4197
|
+
description: {
|
|
4198
|
+
description: "Description about the type.\n\nCRITICAL: This description MUST be extensively detailed and MUST\nreference and align with the description comments from the\ncorresponding Prisma DB schema tables and columns.\n\nThe description MUST be organized into MULTIPLE PARAGRAPHS (separated\nby line breaks) based on different aspects of the type:\n\n- The purpose and business meaning of the type\n- Relationships to other entities in the system\n- Validation rules, constraints, and edge cases\n- Usage context and examples when helpful\n\nThis structured approach improves readability and helps readers better\nunderstand the type's various characteristics and use cases. The\ndescription should be so comprehensive that anyone reading it can fully\nunderstand the type without needing to reference other documentation.\n\n> MUST be written in English. Never use other languages.",
|
|
4199
|
+
type: "string"
|
|
4200
|
+
}
|
|
4201
|
+
},
|
|
4202
|
+
required: [
|
|
4203
|
+
"const",
|
|
4204
|
+
"description"
|
|
4205
|
+
]
|
|
4206
|
+
},
|
|
4207
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IBoolean": {
|
|
4208
|
+
description: "Boolean type info.",
|
|
4209
|
+
type: "object",
|
|
4210
|
+
properties: {
|
|
4211
|
+
type: {
|
|
4212
|
+
description: "Discriminator value of the type.\n\nCRITICAL: This MUST be a SINGLE string value, NOT an array. The type\nfield identifies the JSON Schema type and must be exactly one of:\n\"boolean\", \"integer\", \"number\", \"string\", \"array\", \"object\", or\n\"null\".\n\n\u274C INCORRECT: type: [\"string\", \"null\"] // This is WRONG! \u2705 CORRECT:\ntype: \"string\" // For nullable string, use oneOf instead\n\nIf you need to express a nullable type (e.g., string | null), you MUST\nuse the `IOneOf` structure:\n\n```typescript\n{\n \"oneOf\": [{ \"type\": \"string\" }, { \"type\": \"null\" }]\n}\n```\n\nNEVER use array notation in the type field. The type field is a\ndiscriminator that accepts only a single string value.",
|
|
4213
|
+
type: "string",
|
|
4214
|
+
"enum": [
|
|
4215
|
+
"boolean"
|
|
4216
|
+
]
|
|
4217
|
+
},
|
|
4218
|
+
description: {
|
|
4219
|
+
description: "Description about the type.\n\nCRITICAL: This description MUST be extensively detailed and MUST\nreference and align with the description comments from the\ncorresponding Prisma DB schema tables and columns.\n\nThe description MUST be organized into MULTIPLE PARAGRAPHS (separated\nby line breaks) based on different aspects of the type:\n\n- The purpose and business meaning of the type\n- Relationships to other entities in the system\n- Validation rules, constraints, and edge cases\n- Usage context and examples when helpful\n\nThis structured approach improves readability and helps readers better\nunderstand the type's various characteristics and use cases. The\ndescription should be so comprehensive that anyone reading it can fully\nunderstand the type without needing to reference other documentation.\n\n> MUST be written in English. Never use other languages.",
|
|
4220
|
+
type: "string"
|
|
4221
|
+
}
|
|
4222
|
+
},
|
|
4223
|
+
required: [
|
|
4224
|
+
"type",
|
|
4225
|
+
"description"
|
|
4226
|
+
]
|
|
4227
|
+
},
|
|
4228
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IInteger": {
|
|
4229
|
+
description: "Integer type info.",
|
|
4230
|
+
type: "object",
|
|
4231
|
+
properties: {
|
|
4232
|
+
minimum: {
|
|
4233
|
+
description: "Minimum value restriction.",
|
|
4234
|
+
type: "integer"
|
|
4235
|
+
},
|
|
4236
|
+
maximum: {
|
|
4237
|
+
description: "Maximum value restriction.",
|
|
4238
|
+
type: "integer"
|
|
4239
|
+
},
|
|
4240
|
+
exclusiveMinimum: {
|
|
4241
|
+
description: "Exclusive minimum value restriction.",
|
|
4242
|
+
type: "number"
|
|
4243
|
+
},
|
|
4244
|
+
exclusiveMaximum: {
|
|
4245
|
+
description: "Exclusive maximum value restriction.",
|
|
4246
|
+
type: "number"
|
|
4247
|
+
},
|
|
4248
|
+
multipleOf: {
|
|
4249
|
+
description: "Multiple of value restriction.\n\n\n@exclusiveMinimum 0",
|
|
4250
|
+
type: "integer"
|
|
4251
|
+
},
|
|
4252
|
+
type: {
|
|
4253
|
+
description: "Discriminator value of the type.\n\nCRITICAL: This MUST be a SINGLE string value, NOT an array. The type\nfield identifies the JSON Schema type and must be exactly one of:\n\"boolean\", \"integer\", \"number\", \"string\", \"array\", \"object\", or\n\"null\".\n\n\u274C INCORRECT: type: [\"string\", \"null\"] // This is WRONG! \u2705 CORRECT:\ntype: \"string\" // For nullable string, use oneOf instead\n\nIf you need to express a nullable type (e.g., string | null), you MUST\nuse the `IOneOf` structure:\n\n```typescript\n{\n \"oneOf\": [{ \"type\": \"string\" }, { \"type\": \"null\" }]\n}\n```\n\nNEVER use array notation in the type field. The type field is a\ndiscriminator that accepts only a single string value.",
|
|
4254
|
+
type: "string",
|
|
4255
|
+
"enum": [
|
|
4256
|
+
"integer"
|
|
4257
|
+
]
|
|
4258
|
+
},
|
|
4259
|
+
description: {
|
|
4260
|
+
description: "Description about the type.\n\nCRITICAL: This description MUST be extensively detailed and MUST\nreference and align with the description comments from the\ncorresponding Prisma DB schema tables and columns.\n\nThe description MUST be organized into MULTIPLE PARAGRAPHS (separated\nby line breaks) based on different aspects of the type:\n\n- The purpose and business meaning of the type\n- Relationships to other entities in the system\n- Validation rules, constraints, and edge cases\n- Usage context and examples when helpful\n\nThis structured approach improves readability and helps readers better\nunderstand the type's various characteristics and use cases. The\ndescription should be so comprehensive that anyone reading it can fully\nunderstand the type without needing to reference other documentation.\n\n> MUST be written in English. Never use other languages.",
|
|
4261
|
+
type: "string"
|
|
4262
|
+
}
|
|
4263
|
+
},
|
|
4264
|
+
required: [
|
|
4265
|
+
"type",
|
|
4266
|
+
"description"
|
|
4267
|
+
]
|
|
4268
|
+
},
|
|
4269
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.INumber": {
|
|
4270
|
+
description: "Number (double) type info.",
|
|
4271
|
+
type: "object",
|
|
4272
|
+
properties: {
|
|
4273
|
+
minimum: {
|
|
4274
|
+
description: "Minimum value restriction.",
|
|
4275
|
+
type: "number"
|
|
4276
|
+
},
|
|
4277
|
+
maximum: {
|
|
4278
|
+
description: "Maximum value restriction.",
|
|
4279
|
+
type: "number"
|
|
4280
|
+
},
|
|
4281
|
+
exclusiveMinimum: {
|
|
4282
|
+
description: "Exclusive minimum value restriction.",
|
|
4283
|
+
type: "number"
|
|
4284
|
+
},
|
|
4285
|
+
exclusiveMaximum: {
|
|
4286
|
+
description: "Exclusive maximum value restriction.",
|
|
4287
|
+
type: "number"
|
|
4288
|
+
},
|
|
4289
|
+
multipleOf: {
|
|
4290
|
+
description: "Multiple of value restriction.\n\n\n@exclusiveMinimum 0",
|
|
4291
|
+
type: "number"
|
|
4292
|
+
},
|
|
4293
|
+
type: {
|
|
4294
|
+
description: "Discriminator value of the type.\n\nCRITICAL: This MUST be a SINGLE string value, NOT an array. The type\nfield identifies the JSON Schema type and must be exactly one of:\n\"boolean\", \"integer\", \"number\", \"string\", \"array\", \"object\", or\n\"null\".\n\n\u274C INCORRECT: type: [\"string\", \"null\"] // This is WRONG! \u2705 CORRECT:\ntype: \"string\" // For nullable string, use oneOf instead\n\nIf you need to express a nullable type (e.g., string | null), you MUST\nuse the `IOneOf` structure:\n\n```typescript\n{\n \"oneOf\": [{ \"type\": \"string\" }, { \"type\": \"null\" }]\n}\n```\n\nNEVER use array notation in the type field. The type field is a\ndiscriminator that accepts only a single string value.",
|
|
4295
|
+
type: "string",
|
|
4296
|
+
"enum": [
|
|
4297
|
+
"number"
|
|
4298
|
+
]
|
|
4299
|
+
},
|
|
4300
|
+
description: {
|
|
4301
|
+
description: "Description about the type.\n\nCRITICAL: This description MUST be extensively detailed and MUST\nreference and align with the description comments from the\ncorresponding Prisma DB schema tables and columns.\n\nThe description MUST be organized into MULTIPLE PARAGRAPHS (separated\nby line breaks) based on different aspects of the type:\n\n- The purpose and business meaning of the type\n- Relationships to other entities in the system\n- Validation rules, constraints, and edge cases\n- Usage context and examples when helpful\n\nThis structured approach improves readability and helps readers better\nunderstand the type's various characteristics and use cases. The\ndescription should be so comprehensive that anyone reading it can fully\nunderstand the type without needing to reference other documentation.\n\n> MUST be written in English. Never use other languages.",
|
|
4302
|
+
type: "string"
|
|
4303
|
+
}
|
|
4304
|
+
},
|
|
4305
|
+
required: [
|
|
4306
|
+
"type",
|
|
4307
|
+
"description"
|
|
4308
|
+
]
|
|
4309
|
+
},
|
|
4310
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IString": {
|
|
4311
|
+
description: "String type info.",
|
|
4312
|
+
type: "object",
|
|
4313
|
+
properties: {
|
|
4314
|
+
format: {
|
|
4315
|
+
description: "Format restriction.",
|
|
4316
|
+
type: "string",
|
|
4317
|
+
"enum": [
|
|
4318
|
+
"date-time",
|
|
4319
|
+
"password",
|
|
4320
|
+
"regex",
|
|
4321
|
+
"uuid",
|
|
4322
|
+
"email",
|
|
4323
|
+
"hostname",
|
|
4324
|
+
"idn-email",
|
|
4325
|
+
"idn-hostname",
|
|
4326
|
+
"iri",
|
|
4327
|
+
"iri-reference",
|
|
4328
|
+
"ipv4",
|
|
4329
|
+
"ipv6",
|
|
4330
|
+
"uri",
|
|
4331
|
+
"uri-reference",
|
|
4332
|
+
"uri-template",
|
|
4333
|
+
"url",
|
|
4334
|
+
"date",
|
|
4335
|
+
"time",
|
|
4336
|
+
"duration",
|
|
4337
|
+
"json-pointer",
|
|
4338
|
+
"relative-json-pointer"
|
|
4339
|
+
]
|
|
4340
|
+
},
|
|
4341
|
+
pattern: {
|
|
4342
|
+
description: "Pattern restriction.",
|
|
4343
|
+
type: "string"
|
|
4344
|
+
},
|
|
4345
|
+
contentMediaType: {
|
|
4346
|
+
description: "Content media type restriction.",
|
|
4347
|
+
type: "string"
|
|
4348
|
+
},
|
|
4349
|
+
minLength: {
|
|
4350
|
+
description: "Minimum length restriction.\n\n\n@minimum 0",
|
|
4351
|
+
type: "integer"
|
|
4352
|
+
},
|
|
4353
|
+
maxLength: {
|
|
4354
|
+
description: "Maximum length restriction.\n\n\n@minimum 0",
|
|
4355
|
+
type: "integer"
|
|
4356
|
+
},
|
|
4357
|
+
type: {
|
|
4358
|
+
description: "Discriminator value of the type.\n\nCRITICAL: This MUST be a SINGLE string value, NOT an array. The type\nfield identifies the JSON Schema type and must be exactly one of:\n\"boolean\", \"integer\", \"number\", \"string\", \"array\", \"object\", or\n\"null\".\n\n\u274C INCORRECT: type: [\"string\", \"null\"] // This is WRONG! \u2705 CORRECT:\ntype: \"string\" // For nullable string, use oneOf instead\n\nIf you need to express a nullable type (e.g., string | null), you MUST\nuse the `IOneOf` structure:\n\n```typescript\n{\n \"oneOf\": [{ \"type\": \"string\" }, { \"type\": \"null\" }]\n}\n```\n\nNEVER use array notation in the type field. The type field is a\ndiscriminator that accepts only a single string value.",
|
|
4359
|
+
type: "string",
|
|
4360
|
+
"enum": [
|
|
4361
|
+
"string"
|
|
4362
|
+
]
|
|
4363
|
+
},
|
|
4364
|
+
description: {
|
|
4365
|
+
description: "Description about the type.\n\nCRITICAL: This description MUST be extensively detailed and MUST\nreference and align with the description comments from the\ncorresponding Prisma DB schema tables and columns.\n\nThe description MUST be organized into MULTIPLE PARAGRAPHS (separated\nby line breaks) based on different aspects of the type:\n\n- The purpose and business meaning of the type\n- Relationships to other entities in the system\n- Validation rules, constraints, and edge cases\n- Usage context and examples when helpful\n\nThis structured approach improves readability and helps readers better\nunderstand the type's various characteristics and use cases. The\ndescription should be so comprehensive that anyone reading it can fully\nunderstand the type without needing to reference other documentation.\n\n> MUST be written in English. Never use other languages.",
|
|
4366
|
+
type: "string"
|
|
4367
|
+
}
|
|
4368
|
+
},
|
|
4369
|
+
required: [
|
|
4370
|
+
"type",
|
|
4371
|
+
"description"
|
|
4372
|
+
]
|
|
4373
|
+
},
|
|
4374
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IArray": {
|
|
4375
|
+
description: "Array type info.",
|
|
4376
|
+
type: "object",
|
|
4377
|
+
properties: {
|
|
4378
|
+
items: {
|
|
4379
|
+
description: "Items type info.\n\nThe `items` means the type of the array elements. In other words, it is\nthe type schema info of the `T` in the TypeScript array type\n`Array<T>`.",
|
|
4380
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema"
|
|
4381
|
+
},
|
|
4382
|
+
uniqueItems: {
|
|
4383
|
+
description: "Unique items restriction.\n\nIf this property value is `true`, target array must have unique items.",
|
|
4384
|
+
type: "boolean"
|
|
4385
|
+
},
|
|
4386
|
+
minItems: {
|
|
4387
|
+
description: "Minimum items restriction.\n\nRestriction of minimum number of items in the array.\n\n\n@minimum 0",
|
|
4388
|
+
type: "integer"
|
|
4389
|
+
},
|
|
4390
|
+
maxItems: {
|
|
4391
|
+
description: "Maximum items restriction.\n\nRestriction of maximum number of items in the array.\n\n\n@minimum 0",
|
|
4392
|
+
type: "integer"
|
|
4393
|
+
},
|
|
4394
|
+
type: {
|
|
4395
|
+
description: "Discriminator value of the type.\n\nCRITICAL: This MUST be a SINGLE string value, NOT an array. The type\nfield identifies the JSON Schema type and must be exactly one of:\n\"boolean\", \"integer\", \"number\", \"string\", \"array\", \"object\", or\n\"null\".\n\n\u274C INCORRECT: type: [\"string\", \"null\"] // This is WRONG! \u2705 CORRECT:\ntype: \"string\" // For nullable string, use oneOf instead\n\nIf you need to express a nullable type (e.g., string | null), you MUST\nuse the `IOneOf` structure:\n\n```typescript\n{\n \"oneOf\": [{ \"type\": \"string\" }, { \"type\": \"null\" }]\n}\n```\n\nNEVER use array notation in the type field. The type field is a\ndiscriminator that accepts only a single string value.",
|
|
4396
|
+
type: "string",
|
|
4397
|
+
"enum": [
|
|
4398
|
+
"array"
|
|
4399
|
+
]
|
|
4400
|
+
},
|
|
4401
|
+
description: {
|
|
4402
|
+
description: "Description about the type.\n\nCRITICAL: This description MUST be extensively detailed and MUST\nreference and align with the description comments from the\ncorresponding Prisma DB schema tables and columns.\n\nThe description MUST be organized into MULTIPLE PARAGRAPHS (separated\nby line breaks) based on different aspects of the type:\n\n- The purpose and business meaning of the type\n- Relationships to other entities in the system\n- Validation rules, constraints, and edge cases\n- Usage context and examples when helpful\n\nThis structured approach improves readability and helps readers better\nunderstand the type's various characteristics and use cases. The\ndescription should be so comprehensive that anyone reading it can fully\nunderstand the type without needing to reference other documentation.\n\n> MUST be written in English. Never use other languages.",
|
|
4403
|
+
type: "string"
|
|
4404
|
+
}
|
|
4405
|
+
},
|
|
4406
|
+
required: [
|
|
4407
|
+
"items",
|
|
4408
|
+
"type",
|
|
4409
|
+
"description"
|
|
4410
|
+
]
|
|
4411
|
+
},
|
|
4412
|
+
"AutoBeOpenApi.IJsonSchema": {
|
|
4413
|
+
description: "Type schema info.\n\n`AutoBeOpenApi.IJsonSchema` is a type schema info of the OpenAPI\nGenerative.\n\n`AutoBeOpenApi.IJsonSchema` basically follows the JSON schema specification\nof OpenAPI v3.1, but a little bit shrunk to remove ambiguous and duplicated\nexpressions of OpenAPI v3.1 for the convenience, clarity, and AI\ngeneration.\n\n## CRITICAL: Union Type Expression\n\nIn this type system, union types (including nullable types) MUST be\nexpressed using the `IOneOf` structure. NEVER use array notation in the\n`type` field.\n\n\u274C **FORBIDDEN** - Array notation in type field:\n\n```typescript\n{\n \"type\": [\"string\", \"null\"] // NEVER DO THIS!\n}\n```\n\n\u2705 **CORRECT** - Using IOneOf for unions:\n\n```typescript\n// For nullable string:\n{\n oneOf: [{ type: \"string\" }, { type: \"null\" }];\n}\n\n// For string | number union:\n{\n oneOf: [{ type: \"string\" }, { type: \"number\" }];\n}\n```\n\nThe `type` field in any schema object is a discriminator that identifies\nthe schema type and MUST contain exactly one string value.",
|
|
4414
|
+
anyOf: [
|
|
4415
|
+
{
|
|
4416
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
4417
|
+
},
|
|
4418
|
+
{
|
|
4419
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
4420
|
+
},
|
|
4421
|
+
{
|
|
4422
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
4423
|
+
},
|
|
4424
|
+
{
|
|
4425
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
4426
|
+
},
|
|
4427
|
+
{
|
|
4428
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
4429
|
+
},
|
|
4430
|
+
{
|
|
4431
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
4432
|
+
},
|
|
4433
|
+
{
|
|
4434
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
4435
|
+
},
|
|
4436
|
+
{
|
|
4437
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
4438
|
+
},
|
|
4439
|
+
{
|
|
4440
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf"
|
|
4441
|
+
},
|
|
4442
|
+
{
|
|
4443
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
4444
|
+
}
|
|
4445
|
+
]
|
|
4446
|
+
},
|
|
4447
|
+
"AutoBeOpenApi.IJsonSchema.IInteger": {
|
|
4448
|
+
description: "Integer type info.",
|
|
4449
|
+
type: "object",
|
|
4450
|
+
properties: {
|
|
4451
|
+
minimum: {
|
|
4452
|
+
description: "Minimum value restriction.",
|
|
4453
|
+
type: "integer"
|
|
4454
|
+
},
|
|
4455
|
+
maximum: {
|
|
4456
|
+
description: "Maximum value restriction.",
|
|
4457
|
+
type: "integer"
|
|
4458
|
+
},
|
|
4459
|
+
exclusiveMinimum: {
|
|
4460
|
+
description: "Exclusive minimum value restriction.",
|
|
4461
|
+
type: "number"
|
|
4462
|
+
},
|
|
4463
|
+
exclusiveMaximum: {
|
|
4464
|
+
description: "Exclusive maximum value restriction.",
|
|
4465
|
+
type: "number"
|
|
4466
|
+
},
|
|
4467
|
+
multipleOf: {
|
|
4468
|
+
description: "Multiple of value restriction.\n\n\n@exclusiveMinimum 0",
|
|
4469
|
+
type: "integer"
|
|
4470
|
+
},
|
|
4471
|
+
type: {
|
|
4472
|
+
description: "Discriminator value of the type.\n\nCRITICAL: This MUST be a SINGLE string value, NOT an array. The type\nfield identifies the JSON Schema type and must be exactly one of:\n\"boolean\", \"integer\", \"number\", \"string\", \"array\", \"object\", or\n\"null\".\n\n\u274C INCORRECT: type: [\"string\", \"null\"] // This is WRONG! \u2705 CORRECT:\ntype: \"string\" // For nullable string, use oneOf instead\n\nIf you need to express a nullable type (e.g., string | null), you MUST\nuse the `IOneOf` structure:\n\n```typescript\n{\n \"oneOf\": [{ \"type\": \"string\" }, { \"type\": \"null\" }]\n}\n```\n\nNEVER use array notation in the type field. The type field is a\ndiscriminator that accepts only a single string value.",
|
|
4473
|
+
type: "string",
|
|
4474
|
+
"enum": [
|
|
4475
|
+
"integer"
|
|
4476
|
+
]
|
|
4477
|
+
}
|
|
4478
|
+
},
|
|
4479
|
+
required: [
|
|
4480
|
+
"type"
|
|
4481
|
+
]
|
|
4482
|
+
},
|
|
4483
|
+
"AutoBeOpenApi.IJsonSchema.INumber": {
|
|
4484
|
+
description: "Number (double) type info.",
|
|
4485
|
+
type: "object",
|
|
4486
|
+
properties: {
|
|
4487
|
+
minimum: {
|
|
4488
|
+
description: "Minimum value restriction.",
|
|
4489
|
+
type: "number"
|
|
4490
|
+
},
|
|
4491
|
+
maximum: {
|
|
4492
|
+
description: "Maximum value restriction.",
|
|
4493
|
+
type: "number"
|
|
4494
|
+
},
|
|
4495
|
+
exclusiveMinimum: {
|
|
4496
|
+
description: "Exclusive minimum value restriction.",
|
|
4497
|
+
type: "number"
|
|
4498
|
+
},
|
|
4499
|
+
exclusiveMaximum: {
|
|
4500
|
+
description: "Exclusive maximum value restriction.",
|
|
4501
|
+
type: "number"
|
|
4502
|
+
},
|
|
4503
|
+
multipleOf: {
|
|
4504
|
+
description: "Multiple of value restriction.\n\n\n@exclusiveMinimum 0",
|
|
4505
|
+
type: "number"
|
|
4506
|
+
},
|
|
4507
|
+
type: {
|
|
4508
|
+
description: "Discriminator value of the type.\n\nCRITICAL: This MUST be a SINGLE string value, NOT an array. The type\nfield identifies the JSON Schema type and must be exactly one of:\n\"boolean\", \"integer\", \"number\", \"string\", \"array\", \"object\", or\n\"null\".\n\n\u274C INCORRECT: type: [\"string\", \"null\"] // This is WRONG! \u2705 CORRECT:\ntype: \"string\" // For nullable string, use oneOf instead\n\nIf you need to express a nullable type (e.g., string | null), you MUST\nuse the `IOneOf` structure:\n\n```typescript\n{\n \"oneOf\": [{ \"type\": \"string\" }, { \"type\": \"null\" }]\n}\n```\n\nNEVER use array notation in the type field. The type field is a\ndiscriminator that accepts only a single string value.",
|
|
4509
|
+
type: "string",
|
|
4510
|
+
"enum": [
|
|
4511
|
+
"number"
|
|
4512
|
+
]
|
|
4513
|
+
}
|
|
4514
|
+
},
|
|
4515
|
+
required: [
|
|
4516
|
+
"type"
|
|
4517
|
+
]
|
|
4518
|
+
},
|
|
4519
|
+
"AutoBeOpenApi.IJsonSchema.IString": {
|
|
4520
|
+
description: "String type info.",
|
|
4521
|
+
type: "object",
|
|
4522
|
+
properties: {
|
|
4523
|
+
format: {
|
|
4524
|
+
description: "Format restriction.",
|
|
4525
|
+
type: "string",
|
|
4526
|
+
"enum": [
|
|
4527
|
+
"date-time",
|
|
4528
|
+
"password",
|
|
4529
|
+
"regex",
|
|
4530
|
+
"uuid",
|
|
4531
|
+
"email",
|
|
4532
|
+
"hostname",
|
|
4533
|
+
"idn-email",
|
|
4534
|
+
"idn-hostname",
|
|
4535
|
+
"iri",
|
|
4536
|
+
"iri-reference",
|
|
4537
|
+
"ipv4",
|
|
4538
|
+
"ipv6",
|
|
4539
|
+
"uri",
|
|
4540
|
+
"uri-reference",
|
|
4541
|
+
"uri-template",
|
|
4542
|
+
"url",
|
|
4543
|
+
"date",
|
|
4544
|
+
"time",
|
|
4545
|
+
"duration",
|
|
4546
|
+
"json-pointer",
|
|
4547
|
+
"relative-json-pointer"
|
|
4548
|
+
]
|
|
4549
|
+
},
|
|
4550
|
+
pattern: {
|
|
4551
|
+
description: "Pattern restriction.",
|
|
4552
|
+
type: "string"
|
|
4553
|
+
},
|
|
4554
|
+
contentMediaType: {
|
|
4555
|
+
description: "Content media type restriction.",
|
|
4556
|
+
type: "string"
|
|
4557
|
+
},
|
|
4558
|
+
minLength: {
|
|
4559
|
+
description: "Minimum length restriction.\n\n\n@minimum 0",
|
|
4560
|
+
type: "integer"
|
|
4561
|
+
},
|
|
4562
|
+
maxLength: {
|
|
4563
|
+
description: "Maximum length restriction.\n\n\n@minimum 0",
|
|
4564
|
+
type: "integer"
|
|
4565
|
+
},
|
|
4566
|
+
type: {
|
|
4567
|
+
description: "Discriminator value of the type.\n\nCRITICAL: This MUST be a SINGLE string value, NOT an array. The type\nfield identifies the JSON Schema type and must be exactly one of:\n\"boolean\", \"integer\", \"number\", \"string\", \"array\", \"object\", or\n\"null\".\n\n\u274C INCORRECT: type: [\"string\", \"null\"] // This is WRONG! \u2705 CORRECT:\ntype: \"string\" // For nullable string, use oneOf instead\n\nIf you need to express a nullable type (e.g., string | null), you MUST\nuse the `IOneOf` structure:\n\n```typescript\n{\n \"oneOf\": [{ \"type\": \"string\" }, { \"type\": \"null\" }]\n}\n```\n\nNEVER use array notation in the type field. The type field is a\ndiscriminator that accepts only a single string value.",
|
|
4568
|
+
type: "string",
|
|
4569
|
+
"enum": [
|
|
4570
|
+
"string"
|
|
4571
|
+
]
|
|
4572
|
+
}
|
|
4573
|
+
},
|
|
4574
|
+
required: [
|
|
4575
|
+
"type"
|
|
4576
|
+
]
|
|
4577
|
+
},
|
|
4578
|
+
"AutoBeOpenApi.IJsonSchema.IConstant": {
|
|
4579
|
+
description: "Constant value type.",
|
|
4580
|
+
type: "object",
|
|
4581
|
+
properties: {
|
|
4582
|
+
"const": {
|
|
4583
|
+
description: "The constant value.",
|
|
4584
|
+
anyOf: [
|
|
4585
|
+
{
|
|
4586
|
+
type: "string"
|
|
4587
|
+
},
|
|
4588
|
+
{
|
|
4589
|
+
type: "number"
|
|
4590
|
+
},
|
|
4591
|
+
{
|
|
4592
|
+
type: "boolean"
|
|
4593
|
+
}
|
|
4594
|
+
]
|
|
4595
|
+
}
|
|
4596
|
+
},
|
|
4597
|
+
required: [
|
|
4598
|
+
"const"
|
|
4599
|
+
]
|
|
4600
|
+
},
|
|
4601
|
+
"AutoBeOpenApi.IJsonSchema.IBoolean": {
|
|
4602
|
+
description: "Boolean type info.",
|
|
4603
|
+
type: "object",
|
|
4604
|
+
properties: {
|
|
4605
|
+
type: {
|
|
4606
|
+
description: "Discriminator value of the type.\n\nCRITICAL: This MUST be a SINGLE string value, NOT an array. The type\nfield identifies the JSON Schema type and must be exactly one of:\n\"boolean\", \"integer\", \"number\", \"string\", \"array\", \"object\", or\n\"null\".\n\n\u274C INCORRECT: type: [\"string\", \"null\"] // This is WRONG! \u2705 CORRECT:\ntype: \"string\" // For nullable string, use oneOf instead\n\nIf you need to express a nullable type (e.g., string | null), you MUST\nuse the `IOneOf` structure:\n\n```typescript\n{\n \"oneOf\": [{ \"type\": \"string\" }, { \"type\": \"null\" }]\n}\n```\n\nNEVER use array notation in the type field. The type field is a\ndiscriminator that accepts only a single string value.",
|
|
4607
|
+
type: "string",
|
|
4608
|
+
"enum": [
|
|
4609
|
+
"boolean"
|
|
4610
|
+
]
|
|
4611
|
+
}
|
|
4612
|
+
},
|
|
4613
|
+
required: [
|
|
4614
|
+
"type"
|
|
4615
|
+
]
|
|
4616
|
+
},
|
|
4617
|
+
"AutoBeOpenApi.IJsonSchema.IArray": {
|
|
4618
|
+
description: "Array type info.",
|
|
4619
|
+
type: "object",
|
|
4620
|
+
properties: {
|
|
4621
|
+
items: {
|
|
4622
|
+
description: "Items type info.\n\nThe `items` means the type of the array elements. In other words, it is\nthe type schema info of the `T` in the TypeScript array type\n`Array<T>`.",
|
|
4623
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema"
|
|
4624
|
+
},
|
|
4625
|
+
uniqueItems: {
|
|
4626
|
+
description: "Unique items restriction.\n\nIf this property value is `true`, target array must have unique items.",
|
|
4627
|
+
type: "boolean"
|
|
4628
|
+
},
|
|
4629
|
+
minItems: {
|
|
4630
|
+
description: "Minimum items restriction.\n\nRestriction of minimum number of items in the array.\n\n\n@minimum 0",
|
|
4631
|
+
type: "integer"
|
|
4632
|
+
},
|
|
4633
|
+
maxItems: {
|
|
4634
|
+
description: "Maximum items restriction.\n\nRestriction of maximum number of items in the array.\n\n\n@minimum 0",
|
|
4635
|
+
type: "integer"
|
|
4636
|
+
},
|
|
4637
|
+
type: {
|
|
4638
|
+
description: "Discriminator value of the type.\n\nCRITICAL: This MUST be a SINGLE string value, NOT an array. The type\nfield identifies the JSON Schema type and must be exactly one of:\n\"boolean\", \"integer\", \"number\", \"string\", \"array\", \"object\", or\n\"null\".\n\n\u274C INCORRECT: type: [\"string\", \"null\"] // This is WRONG! \u2705 CORRECT:\ntype: \"string\" // For nullable string, use oneOf instead\n\nIf you need to express a nullable type (e.g., string | null), you MUST\nuse the `IOneOf` structure:\n\n```typescript\n{\n \"oneOf\": [{ \"type\": \"string\" }, { \"type\": \"null\" }]\n}\n```\n\nNEVER use array notation in the type field. The type field is a\ndiscriminator that accepts only a single string value.",
|
|
4639
|
+
type: "string",
|
|
4640
|
+
"enum": [
|
|
4641
|
+
"array"
|
|
4642
|
+
]
|
|
4643
|
+
}
|
|
4644
|
+
},
|
|
4645
|
+
required: [
|
|
4646
|
+
"items",
|
|
4647
|
+
"type"
|
|
4648
|
+
]
|
|
4649
|
+
},
|
|
4650
|
+
"AutoBeOpenApi.IJsonSchema.IObject": {
|
|
4651
|
+
description: "Object type info.",
|
|
4652
|
+
type: "object",
|
|
4653
|
+
properties: {
|
|
4654
|
+
"x-autobe-prisma-schema": {
|
|
4655
|
+
description: "Related Prisma schema.\n\nIf the type is directly related to a specific Prisma schema model,\ninclude the exact model name here to establish a clear link between the\nOpenAPI schema and the Prisma model.\n\nThis field is optional and should only be included when there is a\ndirect correspondence to a Prisma model. If there's not any Prisma\nmodel association, this field can be omitted.",
|
|
4656
|
+
anyOf: [
|
|
4657
|
+
{
|
|
4658
|
+
type: "null"
|
|
4659
|
+
},
|
|
4660
|
+
{
|
|
4661
|
+
type: "string"
|
|
4662
|
+
}
|
|
4663
|
+
]
|
|
4664
|
+
},
|
|
4665
|
+
properties: {
|
|
4666
|
+
description: "Properties of the object.\n\nThe `properties` means a list of key-value pairs of the object's\nregular properties. The key is the name of the regular property, and\nthe value is the type schema info.\n\nIMPORTANT: Each property in this object MUST have a detailed\ndescription that references and aligns with the description comments\nfrom the corresponding Prisma DB schema column.\n\nIf you need additional properties that is represented by dynamic key,\nyou can use the {@link additionalProperties} instead.",
|
|
4667
|
+
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
4668
|
+
},
|
|
4669
|
+
additionalProperties: {
|
|
4670
|
+
description: "Additional properties' info.\n\nThe `additionalProperties` means the type schema info of the additional\nproperties that are not listed in the {@link properties}.\n\nIf the value is `false`, it means that the additional properties are\nnot specified. Otherwise, if the value is {@link IJsonSchema} type, it\nmeans that the additional properties must follow the type schema info.\n\n- `false`: No additional properties\n- `IJsonSchema`: `Record<string, T>`",
|
|
4671
|
+
anyOf: [
|
|
4672
|
+
{
|
|
4673
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
4674
|
+
},
|
|
4675
|
+
{
|
|
4676
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
4677
|
+
},
|
|
4678
|
+
{
|
|
4679
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
4680
|
+
},
|
|
4681
|
+
{
|
|
4682
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
4683
|
+
},
|
|
4684
|
+
{
|
|
4685
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
4686
|
+
},
|
|
4687
|
+
{
|
|
4688
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
4689
|
+
},
|
|
4690
|
+
{
|
|
4691
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
4692
|
+
},
|
|
4693
|
+
{
|
|
4694
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
4695
|
+
},
|
|
4696
|
+
{
|
|
4697
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
4698
|
+
},
|
|
4699
|
+
{
|
|
4700
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf"
|
|
4701
|
+
},
|
|
4702
|
+
{
|
|
4703
|
+
type: "boolean",
|
|
4704
|
+
"enum": [
|
|
4705
|
+
false
|
|
4706
|
+
]
|
|
4707
|
+
}
|
|
4708
|
+
]
|
|
4709
|
+
},
|
|
4710
|
+
required: {
|
|
4711
|
+
description: "List of key values of the required properties.\n\nThe `required` means a list of the key values of the required\n{@link properties}. If some property key is not listed in the `required`\nlist, it means that property is optional. Otherwise some property key\nexists in the `required` list, it means that the property must be\nfilled.\n\nBelow is an example of the {@link properties} and `required`.\n\n```typescript\ninterface SomeObject {\n id: string;\n email: string;\n name?: string;\n}\n```\n\nAs you can see, `id` and `email` {@link properties} are {@link required},\nso that they are listed in the `required` list.\n\n```json\n{\n \"type\": \"object\",\n \"properties\": {\n \"id\": { \"type\": \"string\" },\n \"email\": { \"type\": \"string\" },\n \"name\": { \"type\": \"string\" }\n },\n \"required\": [\"id\", \"email\"]\n}\n```",
|
|
4712
|
+
type: "array",
|
|
4713
|
+
items: {
|
|
4714
|
+
type: "string"
|
|
4715
|
+
}
|
|
4716
|
+
},
|
|
4717
|
+
type: {
|
|
4718
|
+
description: "Discriminator value of the type.\n\nCRITICAL: This MUST be a SINGLE string value, NOT an array. The type\nfield identifies the JSON Schema type and must be exactly one of:\n\"boolean\", \"integer\", \"number\", \"string\", \"array\", \"object\", or\n\"null\".\n\n\u274C INCORRECT: type: [\"string\", \"null\"] // This is WRONG! \u2705 CORRECT:\ntype: \"string\" // For nullable string, use oneOf instead\n\nIf you need to express a nullable type (e.g., string | null), you MUST\nuse the `IOneOf` structure:\n\n```typescript\n{\n \"oneOf\": [{ \"type\": \"string\" }, { \"type\": \"null\" }]\n}\n```\n\nNEVER use array notation in the type field. The type field is a\ndiscriminator that accepts only a single string value.",
|
|
4719
|
+
type: "string",
|
|
4720
|
+
"enum": [
|
|
4721
|
+
"object"
|
|
4722
|
+
]
|
|
4723
|
+
}
|
|
4724
|
+
},
|
|
4725
|
+
required: [
|
|
4726
|
+
"properties",
|
|
4727
|
+
"required",
|
|
4728
|
+
"type"
|
|
4729
|
+
]
|
|
4730
|
+
},
|
|
4731
|
+
"AutoBeOpenApi.IJsonSchema.INull": {
|
|
4732
|
+
description: "Null type.",
|
|
4733
|
+
type: "object",
|
|
4734
|
+
properties: {
|
|
4735
|
+
type: {
|
|
4736
|
+
description: "Discriminator value of the type.\n\nCRITICAL: This MUST be a SINGLE string value, NOT an array. The type\nfield identifies the JSON Schema type and must be exactly one of:\n\"boolean\", \"integer\", \"number\", \"string\", \"array\", \"object\", or\n\"null\".\n\n\u274C INCORRECT: type: [\"string\", \"null\"] // This is WRONG! \u2705 CORRECT:\ntype: \"string\" // For nullable string, use oneOf instead\n\nIf you need to express a nullable type (e.g., string | null), you MUST\nuse the `IOneOf` structure:\n\n```typescript\n{\n \"oneOf\": [{ \"type\": \"string\" }, { \"type\": \"null\" }]\n}\n```\n\nNEVER use array notation in the type field. The type field is a\ndiscriminator that accepts only a single string value.",
|
|
4737
|
+
type: "string",
|
|
4738
|
+
"enum": [
|
|
4739
|
+
"null"
|
|
4740
|
+
]
|
|
4741
|
+
}
|
|
4742
|
+
},
|
|
4743
|
+
required: [
|
|
4744
|
+
"type"
|
|
4745
|
+
]
|
|
4746
|
+
},
|
|
4747
|
+
"AutoBeOpenApi.IJsonSchema.IReference": {
|
|
4748
|
+
description: "Reference type directing named schema.",
|
|
4749
|
+
type: "object",
|
|
4750
|
+
properties: {
|
|
4751
|
+
$ref: {
|
|
4752
|
+
description: "Reference to the named schema.\n\nThe `ref` is a reference to the named schema. Format of the `$ref` is\nfollowing the JSON Pointer specification. In the OpenAPI, the `$ref`\nstarts with `#/components/schemas/` which means the type is stored in\nthe {@link AutoBeOpenApi.IComponents.schemas} object.\n\n- `#/components/schemas/SomeObject`\n- `#/components/schemas/AnotherObject`",
|
|
4753
|
+
type: "string"
|
|
4754
|
+
}
|
|
4755
|
+
},
|
|
4756
|
+
required: [
|
|
4757
|
+
"$ref"
|
|
4758
|
+
]
|
|
4759
|
+
},
|
|
4760
|
+
"AutoBeOpenApi.IJsonSchema.IOneOf": {
|
|
4761
|
+
description: "Union type.\n\n`IOneOf` represents an union type of the TypeScript (`A | B | C`).\n\nFor reference, even though your Swagger (or OpenAPI) document has defined\n`anyOf` instead of the `oneOf`, {@link AutoBeOpenApi} forcibly converts it\nto `oneOf` type.",
|
|
4762
|
+
type: "object",
|
|
4763
|
+
properties: {
|
|
4764
|
+
oneOf: {
|
|
4765
|
+
description: "List of the union types.",
|
|
4766
|
+
type: "array",
|
|
4767
|
+
items: {
|
|
4768
|
+
anyOf: [
|
|
4769
|
+
{
|
|
4770
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
4771
|
+
},
|
|
4772
|
+
{
|
|
4773
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
4774
|
+
},
|
|
4775
|
+
{
|
|
4776
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
4777
|
+
},
|
|
4778
|
+
{
|
|
4779
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
4780
|
+
},
|
|
4781
|
+
{
|
|
4782
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
4783
|
+
},
|
|
4784
|
+
{
|
|
4785
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
4786
|
+
},
|
|
4787
|
+
{
|
|
4788
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
4789
|
+
},
|
|
4790
|
+
{
|
|
4791
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
4792
|
+
},
|
|
4793
|
+
{
|
|
4794
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
4795
|
+
}
|
|
4796
|
+
]
|
|
4797
|
+
}
|
|
4798
|
+
},
|
|
4799
|
+
discriminator: {
|
|
4800
|
+
description: "Discriminator info of the union type.",
|
|
4801
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator"
|
|
4802
|
+
}
|
|
4803
|
+
},
|
|
4804
|
+
required: [
|
|
4805
|
+
"oneOf"
|
|
4806
|
+
]
|
|
4807
|
+
},
|
|
4808
|
+
"AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator": {
|
|
4809
|
+
description: "Discriminator info of the union type.",
|
|
4810
|
+
type: "object",
|
|
4811
|
+
properties: {
|
|
4812
|
+
propertyName: {
|
|
4813
|
+
description: "Property name for the discriminator.",
|
|
4814
|
+
type: "string"
|
|
4815
|
+
},
|
|
4816
|
+
mapping: {
|
|
4817
|
+
description: "Mapping of the discriminator value to the schema name.\n\nThis property is valid only for {@link IReference} typed\n{@link IOneOf.oneof} elements. Therefore, `key` of `mapping` is the\ndiscriminator value, and `value` of `mapping` is the schema name like\n`#/components/schemas/SomeObject`.",
|
|
4818
|
+
$ref: "#/$defs/Recordstringstring"
|
|
4819
|
+
}
|
|
4820
|
+
},
|
|
4821
|
+
required: [
|
|
4822
|
+
"propertyName"
|
|
4823
|
+
]
|
|
4824
|
+
},
|
|
4825
|
+
Recordstringstring: {
|
|
4826
|
+
description: "Construct a type with a set of properties K of type T",
|
|
4827
|
+
type: "object",
|
|
4828
|
+
properties: {},
|
|
4829
|
+
required: [],
|
|
4830
|
+
additionalProperties: {
|
|
4831
|
+
type: "string"
|
|
4832
|
+
}
|
|
4833
|
+
},
|
|
4834
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IObject": {
|
|
4835
|
+
description: "Object type info.",
|
|
4836
|
+
type: "object",
|
|
4837
|
+
properties: {
|
|
4838
|
+
"x-autobe-prisma-schema": {
|
|
4839
|
+
description: "Related Prisma schema.\n\nIf the type is directly related to a specific Prisma schema model,\ninclude the exact model name here to establish a clear link between the\nOpenAPI schema and the Prisma model.\n\nThis field is optional and should only be included when there is a\ndirect correspondence to a Prisma model. If there's not any Prisma\nmodel association, this field can be omitted.",
|
|
4840
|
+
anyOf: [
|
|
4841
|
+
{
|
|
4842
|
+
type: "null"
|
|
4843
|
+
},
|
|
4844
|
+
{
|
|
4845
|
+
type: "string"
|
|
4846
|
+
}
|
|
4847
|
+
]
|
|
4848
|
+
},
|
|
4849
|
+
properties: {
|
|
4850
|
+
description: "Properties of the object.\n\nThe `properties` means a list of key-value pairs of the object's\nregular properties. The key is the name of the regular property, and\nthe value is the type schema info.\n\nIMPORTANT: Each property in this object MUST have a detailed\ndescription that references and aligns with the description comments\nfrom the corresponding Prisma DB schema column.\n\nIf you need additional properties that is represented by dynamic key,\nyou can use the {@link additionalProperties} instead.",
|
|
4851
|
+
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
4852
|
+
},
|
|
4853
|
+
additionalProperties: {
|
|
4854
|
+
description: "Additional properties' info.\n\nThe `additionalProperties` means the type schema info of the additional\nproperties that are not listed in the {@link properties}.\n\nIf the value is `false`, it means that the additional properties are\nnot specified. Otherwise, if the value is {@link IJsonSchema} type, it\nmeans that the additional properties must follow the type schema info.\n\n- `false`: No additional properties\n- `IJsonSchema`: `Record<string, T>`",
|
|
4855
|
+
anyOf: [
|
|
4856
|
+
{
|
|
4857
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
4858
|
+
},
|
|
4859
|
+
{
|
|
4860
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
4861
|
+
},
|
|
4862
|
+
{
|
|
4863
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
4864
|
+
},
|
|
4865
|
+
{
|
|
4866
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
4867
|
+
},
|
|
4868
|
+
{
|
|
4869
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
4870
|
+
},
|
|
4871
|
+
{
|
|
4872
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
4873
|
+
},
|
|
4874
|
+
{
|
|
4875
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
4876
|
+
},
|
|
4877
|
+
{
|
|
4878
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
4879
|
+
},
|
|
4880
|
+
{
|
|
4881
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
4882
|
+
},
|
|
4883
|
+
{
|
|
4884
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf"
|
|
4885
|
+
},
|
|
4886
|
+
{
|
|
4887
|
+
type: "boolean",
|
|
4888
|
+
"enum": [
|
|
4889
|
+
false
|
|
4890
|
+
]
|
|
4891
|
+
}
|
|
4892
|
+
]
|
|
4893
|
+
},
|
|
4894
|
+
required: {
|
|
4895
|
+
description: "List of key values of the required properties.\n\nThe `required` means a list of the key values of the required\n{@link properties}. If some property key is not listed in the `required`\nlist, it means that property is optional. Otherwise some property key\nexists in the `required` list, it means that the property must be\nfilled.\n\nBelow is an example of the {@link properties} and `required`.\n\n```typescript\ninterface SomeObject {\n id: string;\n email: string;\n name?: string;\n}\n```\n\nAs you can see, `id` and `email` {@link properties} are {@link required},\nso that they are listed in the `required` list.\n\n```json\n{\n \"type\": \"object\",\n \"properties\": {\n \"id\": { \"type\": \"string\" },\n \"email\": { \"type\": \"string\" },\n \"name\": { \"type\": \"string\" }\n },\n \"required\": [\"id\", \"email\"]\n}\n```",
|
|
4896
|
+
type: "array",
|
|
4897
|
+
items: {
|
|
4898
|
+
type: "string"
|
|
4899
|
+
}
|
|
4900
|
+
},
|
|
4901
|
+
type: {
|
|
4902
|
+
description: "Discriminator value of the type.\n\nCRITICAL: This MUST be a SINGLE string value, NOT an array. The type\nfield identifies the JSON Schema type and must be exactly one of:\n\"boolean\", \"integer\", \"number\", \"string\", \"array\", \"object\", or\n\"null\".\n\n\u274C INCORRECT: type: [\"string\", \"null\"] // This is WRONG! \u2705 CORRECT:\ntype: \"string\" // For nullable string, use oneOf instead\n\nIf you need to express a nullable type (e.g., string | null), you MUST\nuse the `IOneOf` structure:\n\n```typescript\n{\n \"oneOf\": [{ \"type\": \"string\" }, { \"type\": \"null\" }]\n}\n```\n\nNEVER use array notation in the type field. The type field is a\ndiscriminator that accepts only a single string value.",
|
|
4903
|
+
type: "string",
|
|
4904
|
+
"enum": [
|
|
4905
|
+
"object"
|
|
4906
|
+
]
|
|
4907
|
+
},
|
|
4908
|
+
description: {
|
|
4909
|
+
description: "Description about the type.\n\nCRITICAL: This description MUST be extensively detailed and MUST\nreference and align with the description comments from the\ncorresponding Prisma DB schema tables and columns.\n\nThe description MUST be organized into MULTIPLE PARAGRAPHS (separated\nby line breaks) based on different aspects of the type:\n\n- The purpose and business meaning of the type\n- Relationships to other entities in the system\n- Validation rules, constraints, and edge cases\n- Usage context and examples when helpful\n\nThis structured approach improves readability and helps readers better\nunderstand the type's various characteristics and use cases. The\ndescription should be so comprehensive that anyone reading it can fully\nunderstand the type without needing to reference other documentation.\n\n> MUST be written in English. Never use other languages.",
|
|
4910
|
+
type: "string"
|
|
4911
|
+
}
|
|
4912
|
+
},
|
|
4913
|
+
required: [
|
|
4914
|
+
"properties",
|
|
4915
|
+
"required",
|
|
4916
|
+
"type",
|
|
4917
|
+
"description"
|
|
4918
|
+
]
|
|
4919
|
+
},
|
|
4920
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IReference": {
|
|
4921
|
+
description: "Reference type directing named schema.",
|
|
4922
|
+
type: "object",
|
|
4923
|
+
properties: {
|
|
4924
|
+
$ref: {
|
|
4925
|
+
description: "Reference to the named schema.\n\nThe `ref` is a reference to the named schema. Format of the `$ref` is\nfollowing the JSON Pointer specification. In the OpenAPI, the `$ref`\nstarts with `#/components/schemas/` which means the type is stored in\nthe {@link AutoBeOpenApi.IComponents.schemas} object.\n\n- `#/components/schemas/SomeObject`\n- `#/components/schemas/AnotherObject`",
|
|
4926
|
+
type: "string"
|
|
4927
|
+
},
|
|
4928
|
+
description: {
|
|
4929
|
+
description: "Description about the type.\n\nCRITICAL: This description MUST be extensively detailed and MUST\nreference and align with the description comments from the\ncorresponding Prisma DB schema tables and columns.\n\nThe description MUST be organized into MULTIPLE PARAGRAPHS (separated\nby line breaks) based on different aspects of the type:\n\n- The purpose and business meaning of the type\n- Relationships to other entities in the system\n- Validation rules, constraints, and edge cases\n- Usage context and examples when helpful\n\nThis structured approach improves readability and helps readers better\nunderstand the type's various characteristics and use cases. The\ndescription should be so comprehensive that anyone reading it can fully\nunderstand the type without needing to reference other documentation.\n\n> MUST be written in English. Never use other languages.",
|
|
4930
|
+
type: "string"
|
|
4931
|
+
}
|
|
4932
|
+
},
|
|
4933
|
+
required: [
|
|
4934
|
+
"$ref",
|
|
4935
|
+
"description"
|
|
4936
|
+
]
|
|
4937
|
+
},
|
|
4938
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IOneOf": {
|
|
4939
|
+
description: "Union type.\n\n`IOneOf` represents an union type of the TypeScript (`A | B | C`).\n\nFor reference, even though your Swagger (or OpenAPI) document has defined\n`anyOf` instead of the `oneOf`, {@link AutoBeOpenApi} forcibly converts it\nto `oneOf` type.",
|
|
4940
|
+
type: "object",
|
|
4941
|
+
properties: {
|
|
4942
|
+
oneOf: {
|
|
4943
|
+
description: "List of the union types.",
|
|
4944
|
+
type: "array",
|
|
4945
|
+
items: {
|
|
4946
|
+
anyOf: [
|
|
4947
|
+
{
|
|
4948
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
4949
|
+
},
|
|
4950
|
+
{
|
|
4951
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
4952
|
+
},
|
|
4953
|
+
{
|
|
4954
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
4955
|
+
},
|
|
4956
|
+
{
|
|
4957
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
4958
|
+
},
|
|
4959
|
+
{
|
|
4960
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
4961
|
+
},
|
|
4962
|
+
{
|
|
4963
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
4964
|
+
},
|
|
4965
|
+
{
|
|
4966
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
4967
|
+
},
|
|
4968
|
+
{
|
|
4969
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
4970
|
+
},
|
|
4971
|
+
{
|
|
4972
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
4973
|
+
}
|
|
4974
|
+
]
|
|
4975
|
+
}
|
|
4976
|
+
},
|
|
4977
|
+
discriminator: {
|
|
4978
|
+
description: "Discriminator info of the union type.",
|
|
4979
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator"
|
|
4980
|
+
},
|
|
4981
|
+
description: {
|
|
4982
|
+
description: "Description about the type.\n\nCRITICAL: This description MUST be extensively detailed and MUST\nreference and align with the description comments from the\ncorresponding Prisma DB schema tables and columns.\n\nThe description MUST be organized into MULTIPLE PARAGRAPHS (separated\nby line breaks) based on different aspects of the type:\n\n- The purpose and business meaning of the type\n- Relationships to other entities in the system\n- Validation rules, constraints, and edge cases\n- Usage context and examples when helpful\n\nThis structured approach improves readability and helps readers better\nunderstand the type's various characteristics and use cases. The\ndescription should be so comprehensive that anyone reading it can fully\nunderstand the type without needing to reference other documentation.\n\n> MUST be written in English. Never use other languages.",
|
|
4983
|
+
type: "string"
|
|
4984
|
+
}
|
|
4985
|
+
},
|
|
4986
|
+
required: [
|
|
4987
|
+
"oneOf",
|
|
4988
|
+
"description"
|
|
4989
|
+
]
|
|
4990
|
+
},
|
|
4991
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.INull": {
|
|
4992
|
+
description: "Null type.",
|
|
4993
|
+
type: "object",
|
|
4994
|
+
properties: {
|
|
4995
|
+
type: {
|
|
4996
|
+
description: "Discriminator value of the type.\n\nCRITICAL: This MUST be a SINGLE string value, NOT an array. The type\nfield identifies the JSON Schema type and must be exactly one of:\n\"boolean\", \"integer\", \"number\", \"string\", \"array\", \"object\", or\n\"null\".\n\n\u274C INCORRECT: type: [\"string\", \"null\"] // This is WRONG! \u2705 CORRECT:\ntype: \"string\" // For nullable string, use oneOf instead\n\nIf you need to express a nullable type (e.g., string | null), you MUST\nuse the `IOneOf` structure:\n\n```typescript\n{\n \"oneOf\": [{ \"type\": \"string\" }, { \"type\": \"null\" }]\n}\n```\n\nNEVER use array notation in the type field. The type field is a\ndiscriminator that accepts only a single string value.",
|
|
4997
|
+
type: "string",
|
|
4998
|
+
"enum": [
|
|
4999
|
+
"null"
|
|
5000
|
+
]
|
|
5001
|
+
},
|
|
5002
|
+
description: {
|
|
5003
|
+
description: "Description about the type.\n\nCRITICAL: This description MUST be extensively detailed and MUST\nreference and align with the description comments from the\ncorresponding Prisma DB schema tables and columns.\n\nThe description MUST be organized into MULTIPLE PARAGRAPHS (separated\nby line breaks) based on different aspects of the type:\n\n- The purpose and business meaning of the type\n- Relationships to other entities in the system\n- Validation rules, constraints, and edge cases\n- Usage context and examples when helpful\n\nThis structured approach improves readability and helps readers better\nunderstand the type's various characteristics and use cases. The\ndescription should be so comprehensive that anyone reading it can fully\nunderstand the type without needing to reference other documentation.\n\n> MUST be written in English. Never use other languages.",
|
|
5004
|
+
type: "string"
|
|
5005
|
+
}
|
|
5006
|
+
},
|
|
5007
|
+
required: [
|
|
5008
|
+
"type",
|
|
5009
|
+
"description"
|
|
5010
|
+
]
|
|
5011
|
+
}
|
|
5012
|
+
}
|
|
5013
|
+
},
|
|
5014
|
+
description: "Complements missing schema types\n\nThis method fills in schema definitions that are referenced via $ref but\nnot yet defined in the `components.schemas` section. For example, if an API\noperation references `{ \"$ref\": \"#/components/schemas/UserProfile\" }` but\n`UserProfile` type is not defined in `components.schemas`, this method will\nadd the missing schema definition.\n\nThis function is designed to be called via AI function calling mechanism to\nensure the OpenAPI document is complete and all referenced schemas are\nproperly defined.",
|
|
5015
|
+
validate: (() => { const _iv1 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _iv2 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _vv7 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _vv8 = new Set(["date-time", "password", "regex", "uuid", "email", "hostname", "idn-email", "idn-hostname", "iri", "iri-reference", "ipv4", "ipv6", "uri", "uri-reference", "uri-template", "url", "date", "time", "duration", "json-pointer", "relative-json-pointer"]); const _io0 = input => "object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) && _io1(input.schemas); const _io1 = input => Object.keys(input).every(key => {
|
|
5016
|
+
const value = input[key];
|
|
5017
|
+
if (undefined === value)
|
|
5018
|
+
return true;
|
|
5019
|
+
return "object" === typeof value && null !== value && _iu1(value);
|
|
5020
|
+
}); const _io2 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io3 = input => "boolean" === input.type && "string" === typeof input.description; const _io4 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type && "string" === typeof input.description; const _io5 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type && "string" === typeof input.description; const _io6 = input => (undefined === input.format || true === _iv1.has(input.format)) && (undefined === input.pattern || "string" === typeof input.pattern) && (undefined === input.contentMediaType || "string" === typeof input.contentMediaType) && (undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000)) && (undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000)) && "string" === input.type && "string" === typeof input.description; const _io7 = input => "object" === typeof input.items && null !== input.items && _iu2(input.items) && (undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems) && (undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000)) && (undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000)) && "array" === input.type && "string" === typeof input.description; const _io8 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type; const _io9 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type; const _io10 = input => (undefined === input.format || true === _iv2.has(input.format)) && (undefined === input.pattern || "string" === typeof input.pattern) && (undefined === input.contentMediaType || "string" === typeof input.contentMediaType) && (undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000)) && (undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000)) && "string" === input.type; const _io11 = input => "string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]; const _io12 = input => "boolean" === input.type; const _io13 = input => "object" === typeof input.items && null !== input.items && _iu2(input.items) && (undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems) && (undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000)) && (undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000)) && "array" === input.type; const _io14 = input => (null === input["x-autobe-prisma-schema"] || undefined === input["x-autobe-prisma-schema"] || "string" === typeof input["x-autobe-prisma-schema"]) && ("object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) && _io1(input.properties)) && (null !== input.additionalProperties && (undefined === input.additionalProperties || false === input.additionalProperties || "object" === typeof input.additionalProperties && null !== input.additionalProperties && _iu2(input.additionalProperties))) && (Array.isArray(input.required) && input.required.every(elem => "string" === typeof elem)) && "object" === input.type; const _io15 = input => "string" === typeof input.$ref; const _io16 = input => Array.isArray(input.oneOf) && input.oneOf.every(elem => "object" === typeof elem && null !== elem && _iu0(elem)) && (undefined === input.discriminator || "object" === typeof input.discriminator && null !== input.discriminator && _io18(input.discriminator)); const _io17 = input => "null" === input.type; const _io18 = input => "string" === typeof input.propertyName && (undefined === input.mapping || "object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) && _io19(input.mapping)); const _io19 = input => Object.keys(input).every(key => {
|
|
5021
|
+
const value = input[key];
|
|
5022
|
+
if (undefined === value)
|
|
5023
|
+
return true;
|
|
5024
|
+
return "string" === typeof value;
|
|
5025
|
+
}); const _io20 = input => (null === input["x-autobe-prisma-schema"] || undefined === input["x-autobe-prisma-schema"] || "string" === typeof input["x-autobe-prisma-schema"]) && ("object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) && _io1(input.properties)) && (null !== input.additionalProperties && (undefined === input.additionalProperties || false === input.additionalProperties || "object" === typeof input.additionalProperties && null !== input.additionalProperties && _iu2(input.additionalProperties))) && (Array.isArray(input.required) && input.required.every(elem => "string" === typeof elem)) && "object" === input.type && "string" === typeof input.description; const _io21 = input => "string" === typeof input.$ref && "string" === typeof input.description; const _io22 = input => Array.isArray(input.oneOf) && input.oneOf.every(elem => "object" === typeof elem && null !== elem && _iu0(elem)) && (undefined === input.discriminator || "object" === typeof input.discriminator && null !== input.discriminator && _io18(input.discriminator)) && "string" === typeof input.description; const _io23 = input => "null" === input.type && "string" === typeof input.description; const _iu0 = input => (() => {
|
|
5026
|
+
if ("number" === input.type)
|
|
5027
|
+
return _io9(input);
|
|
5028
|
+
else if ("integer" === input.type)
|
|
5029
|
+
return _io8(input);
|
|
5030
|
+
else if ("string" === input.type)
|
|
5031
|
+
return _io10(input);
|
|
5032
|
+
else if (undefined !== input["const"])
|
|
5033
|
+
return _io11(input);
|
|
5034
|
+
else if ("null" === input.type)
|
|
5035
|
+
return _io17(input);
|
|
5036
|
+
else if ("boolean" === input.type)
|
|
5037
|
+
return _io12(input);
|
|
5038
|
+
else if ("array" === input.type)
|
|
5039
|
+
return _io13(input);
|
|
5040
|
+
else if ("object" === input.type)
|
|
5041
|
+
return _io14(input);
|
|
5042
|
+
else if (undefined !== input.$ref)
|
|
5043
|
+
return _io15(input);
|
|
5044
|
+
else
|
|
5045
|
+
return false;
|
|
5046
|
+
})(); const _iu1 = input => (() => {
|
|
5047
|
+
if (undefined !== input["const"])
|
|
5048
|
+
return _io2(input);
|
|
5049
|
+
else if ("boolean" === input.type)
|
|
5050
|
+
return _io3(input);
|
|
5051
|
+
else if ("number" === input.type)
|
|
5052
|
+
return _io5(input);
|
|
5053
|
+
else if ("integer" === input.type)
|
|
5054
|
+
return _io4(input);
|
|
5055
|
+
else if ("string" === input.type)
|
|
5056
|
+
return _io6(input);
|
|
5057
|
+
else if ("array" === input.type)
|
|
5058
|
+
return _io7(input);
|
|
5059
|
+
else if ("object" === input.type)
|
|
5060
|
+
return _io20(input);
|
|
5061
|
+
else if (undefined !== input.$ref)
|
|
5062
|
+
return _io21(input);
|
|
5063
|
+
else if (undefined !== input.oneOf)
|
|
5064
|
+
return _io22(input);
|
|
5065
|
+
else if ("null" === input.type)
|
|
5066
|
+
return _io23(input);
|
|
5067
|
+
else
|
|
5068
|
+
return false;
|
|
5069
|
+
})(); const _iu2 = input => (() => {
|
|
5070
|
+
if ("number" === input.type)
|
|
5071
|
+
return _io9(input);
|
|
5072
|
+
else if ("integer" === input.type)
|
|
5073
|
+
return _io8(input);
|
|
5074
|
+
else if ("string" === input.type)
|
|
5075
|
+
return _io10(input);
|
|
5076
|
+
else if (undefined !== input["const"])
|
|
5077
|
+
return _io11(input);
|
|
5078
|
+
else if ("null" === input.type)
|
|
5079
|
+
return _io17(input);
|
|
5080
|
+
else if ("boolean" === input.type)
|
|
5081
|
+
return _io12(input);
|
|
5082
|
+
else if ("array" === input.type)
|
|
5083
|
+
return _io13(input);
|
|
5084
|
+
else if ("object" === input.type)
|
|
5085
|
+
return _io14(input);
|
|
5086
|
+
else if (undefined !== input.$ref)
|
|
5087
|
+
return _io15(input);
|
|
5088
|
+
else if (undefined !== input.oneOf)
|
|
5089
|
+
return _io16(input);
|
|
5090
|
+
else
|
|
5091
|
+
return false;
|
|
5092
|
+
})(); const _vo0 = (input, _path, _exceptionable = true) => [("object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) || _report(_exceptionable, {
|
|
5093
|
+
path: _path + ".schemas",
|
|
5094
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
5095
|
+
value: input.schemas
|
|
5096
|
+
})) && _vo1(input.schemas, _path + ".schemas", true && _exceptionable) || _report(_exceptionable, {
|
|
5097
|
+
path: _path + ".schemas",
|
|
5098
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
5099
|
+
value: input.schemas
|
|
5100
|
+
})].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
|
|
5101
|
+
const value = input[key];
|
|
5102
|
+
if (undefined === value)
|
|
5103
|
+
return true;
|
|
5104
|
+
return ("object" === typeof value && null !== value || _report(_exceptionable, {
|
|
5105
|
+
path: _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key),
|
|
5106
|
+
expected: "(AutoBeOpenApi.IJsonSchemaDescriptive.IArray | AutoBeOpenApi.IJsonSchemaDescriptive.IBoolean | AutoBeOpenApi.IJsonSchemaDescriptive.IConstant | AutoBeOpenApi.IJsonSchemaDescriptive.IInteger | AutoBeOpenApi.IJsonSchemaDescriptive.INull | AutoBeOpenApi.IJsonSchemaDescriptive.INumber | AutoBeOpenApi.IJsonSchemaDescriptive.IObject | AutoBeOpenApi.IJsonSchemaDescriptive.IOneOf | AutoBeOpenApi.IJsonSchemaDescriptive.IReference | AutoBeOpenApi.IJsonSchemaDescriptive.IString)",
|
|
5107
|
+
value: value
|
|
5108
|
+
})) && _vu1(value, _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key), true && _exceptionable) || _report(_exceptionable, {
|
|
5109
|
+
path: _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key),
|
|
5110
|
+
expected: "(AutoBeOpenApi.IJsonSchemaDescriptive.IArray | AutoBeOpenApi.IJsonSchemaDescriptive.IBoolean | AutoBeOpenApi.IJsonSchemaDescriptive.IConstant | AutoBeOpenApi.IJsonSchemaDescriptive.IInteger | AutoBeOpenApi.IJsonSchemaDescriptive.INull | AutoBeOpenApi.IJsonSchemaDescriptive.INumber | AutoBeOpenApi.IJsonSchemaDescriptive.IObject | AutoBeOpenApi.IJsonSchemaDescriptive.IOneOf | AutoBeOpenApi.IJsonSchemaDescriptive.IReference | AutoBeOpenApi.IJsonSchemaDescriptive.IString)",
|
|
5111
|
+
value: value
|
|
5112
|
+
});
|
|
5113
|
+
}).every(flag => flag)].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"] || _report(_exceptionable, {
|
|
5114
|
+
path: _path + "[\"const\"]",
|
|
5115
|
+
expected: "(boolean | number | string)",
|
|
5116
|
+
value: input["const"]
|
|
5117
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
5118
|
+
path: _path + ".description",
|
|
5119
|
+
expected: "string",
|
|
5120
|
+
value: input.description
|
|
5121
|
+
})].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["boolean" === input.type || _report(_exceptionable, {
|
|
5122
|
+
path: _path + ".type",
|
|
5123
|
+
expected: "\"boolean\"",
|
|
5124
|
+
value: input.type
|
|
5125
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
5126
|
+
path: _path + ".description",
|
|
5127
|
+
expected: "string",
|
|
5128
|
+
value: input.description
|
|
5129
|
+
})].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000 || _report(_exceptionable, {
|
|
5130
|
+
path: _path + ".minimum",
|
|
5131
|
+
expected: "number & Type<\"int64\">",
|
|
5132
|
+
value: input.minimum
|
|
5133
|
+
})) || _report(_exceptionable, {
|
|
5134
|
+
path: _path + ".minimum",
|
|
5135
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
5136
|
+
value: input.minimum
|
|
5137
|
+
}), undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000 || _report(_exceptionable, {
|
|
5138
|
+
path: _path + ".maximum",
|
|
5139
|
+
expected: "number & Type<\"int64\">",
|
|
5140
|
+
value: input.maximum
|
|
5141
|
+
})) || _report(_exceptionable, {
|
|
5142
|
+
path: _path + ".maximum",
|
|
5143
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
5144
|
+
value: input.maximum
|
|
5145
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
5146
|
+
path: _path + ".exclusiveMinimum",
|
|
5147
|
+
expected: "(number | undefined)",
|
|
5148
|
+
value: input.exclusiveMinimum
|
|
5149
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
5150
|
+
path: _path + ".exclusiveMaximum",
|
|
5151
|
+
expected: "(number | undefined)",
|
|
5152
|
+
value: input.exclusiveMaximum
|
|
5153
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 || _report(_exceptionable, {
|
|
5154
|
+
path: _path + ".multipleOf",
|
|
5155
|
+
expected: "number & Type<\"uint64\">",
|
|
5156
|
+
value: input.multipleOf
|
|
5157
|
+
})) && (0 < input.multipleOf || _report(_exceptionable, {
|
|
5158
|
+
path: _path + ".multipleOf",
|
|
5159
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
5160
|
+
value: input.multipleOf
|
|
5161
|
+
})) || _report(_exceptionable, {
|
|
5162
|
+
path: _path + ".multipleOf",
|
|
5163
|
+
expected: "((number & Type<\"uint64\"> & ExclusiveMinimum<0>) | undefined)",
|
|
5164
|
+
value: input.multipleOf
|
|
5165
|
+
}), "integer" === input.type || _report(_exceptionable, {
|
|
5166
|
+
path: _path + ".type",
|
|
5167
|
+
expected: "\"integer\"",
|
|
5168
|
+
value: input.type
|
|
5169
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
5170
|
+
path: _path + ".description",
|
|
5171
|
+
expected: "string",
|
|
5172
|
+
value: input.description
|
|
5173
|
+
})].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum || _report(_exceptionable, {
|
|
5174
|
+
path: _path + ".minimum",
|
|
5175
|
+
expected: "(number | undefined)",
|
|
5176
|
+
value: input.minimum
|
|
5177
|
+
}), undefined === input.maximum || "number" === typeof input.maximum || _report(_exceptionable, {
|
|
5178
|
+
path: _path + ".maximum",
|
|
5179
|
+
expected: "(number | undefined)",
|
|
5180
|
+
value: input.maximum
|
|
5181
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
5182
|
+
path: _path + ".exclusiveMinimum",
|
|
5183
|
+
expected: "(number | undefined)",
|
|
5184
|
+
value: input.exclusiveMinimum
|
|
5185
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
5186
|
+
path: _path + ".exclusiveMaximum",
|
|
5187
|
+
expected: "(number | undefined)",
|
|
5188
|
+
value: input.exclusiveMaximum
|
|
5189
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (0 < input.multipleOf || _report(_exceptionable, {
|
|
5190
|
+
path: _path + ".multipleOf",
|
|
5191
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
5192
|
+
value: input.multipleOf
|
|
5193
|
+
})) || _report(_exceptionable, {
|
|
5194
|
+
path: _path + ".multipleOf",
|
|
5195
|
+
expected: "((number & ExclusiveMinimum<0>) | undefined)",
|
|
5196
|
+
value: input.multipleOf
|
|
5197
|
+
}), "number" === input.type || _report(_exceptionable, {
|
|
5198
|
+
path: _path + ".type",
|
|
5199
|
+
expected: "\"number\"",
|
|
5200
|
+
value: input.type
|
|
5201
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
5202
|
+
path: _path + ".description",
|
|
5203
|
+
expected: "string",
|
|
5204
|
+
value: input.description
|
|
5205
|
+
})].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv7.has(input.format) || _report(_exceptionable, {
|
|
5206
|
+
path: _path + ".format",
|
|
5207
|
+
expected: "(\"date\" | \"date-time\" | \"duration\" | \"email\" | \"hostname\" | \"idn-email\" | \"idn-hostname\" | \"ipv4\" | \"ipv6\" | \"iri\" | \"iri-reference\" | \"json-pointer\" | \"password\" | \"regex\" | \"relative-json-pointer\" | \"time\" | \"uri\" | \"uri-reference\" | \"uri-template\" | \"url\" | \"uuid\" | undefined)",
|
|
5208
|
+
value: input.format
|
|
5209
|
+
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
5210
|
+
path: _path + ".pattern",
|
|
5211
|
+
expected: "(string | undefined)",
|
|
5212
|
+
value: input.pattern
|
|
5213
|
+
}), undefined === input.contentMediaType || "string" === typeof input.contentMediaType || _report(_exceptionable, {
|
|
5214
|
+
path: _path + ".contentMediaType",
|
|
5215
|
+
expected: "(string | undefined)",
|
|
5216
|
+
value: input.contentMediaType
|
|
5217
|
+
}), undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
5218
|
+
path: _path + ".minLength",
|
|
5219
|
+
expected: "number & Type<\"uint64\">",
|
|
5220
|
+
value: input.minLength
|
|
5221
|
+
})) || _report(_exceptionable, {
|
|
5222
|
+
path: _path + ".minLength",
|
|
5223
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
5224
|
+
value: input.minLength
|
|
5225
|
+
}), undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
5226
|
+
path: _path + ".maxLength",
|
|
5227
|
+
expected: "number & Type<\"uint64\">",
|
|
5228
|
+
value: input.maxLength
|
|
5229
|
+
})) || _report(_exceptionable, {
|
|
5230
|
+
path: _path + ".maxLength",
|
|
5231
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
5232
|
+
value: input.maxLength
|
|
5233
|
+
}), "string" === input.type || _report(_exceptionable, {
|
|
5234
|
+
path: _path + ".type",
|
|
5235
|
+
expected: "\"string\"",
|
|
5236
|
+
value: input.type
|
|
5237
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
5238
|
+
path: _path + ".description",
|
|
5239
|
+
expected: "string",
|
|
5240
|
+
value: input.description
|
|
5241
|
+
})].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [("object" === typeof input.items && null !== input.items || _report(_exceptionable, {
|
|
5242
|
+
path: _path + ".items",
|
|
5243
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IOneOf | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
5244
|
+
value: input.items
|
|
5245
|
+
})) && _vu2(input.items, _path + ".items", true && _exceptionable) || _report(_exceptionable, {
|
|
5246
|
+
path: _path + ".items",
|
|
5247
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IOneOf | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
5248
|
+
value: input.items
|
|
5249
|
+
}), undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems || _report(_exceptionable, {
|
|
5250
|
+
path: _path + ".uniqueItems",
|
|
5251
|
+
expected: "(boolean | undefined)",
|
|
5252
|
+
value: input.uniqueItems
|
|
5253
|
+
}), undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
5254
|
+
path: _path + ".minItems",
|
|
5255
|
+
expected: "number & Type<\"uint64\">",
|
|
5256
|
+
value: input.minItems
|
|
5257
|
+
})) || _report(_exceptionable, {
|
|
5258
|
+
path: _path + ".minItems",
|
|
5259
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
5260
|
+
value: input.minItems
|
|
5261
|
+
}), undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
5262
|
+
path: _path + ".maxItems",
|
|
5263
|
+
expected: "number & Type<\"uint64\">",
|
|
5264
|
+
value: input.maxItems
|
|
5265
|
+
})) || _report(_exceptionable, {
|
|
5266
|
+
path: _path + ".maxItems",
|
|
5267
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
5268
|
+
value: input.maxItems
|
|
5269
|
+
}), "array" === input.type || _report(_exceptionable, {
|
|
5270
|
+
path: _path + ".type",
|
|
5271
|
+
expected: "\"array\"",
|
|
5272
|
+
value: input.type
|
|
5273
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
5274
|
+
path: _path + ".description",
|
|
5275
|
+
expected: "string",
|
|
5276
|
+
value: input.description
|
|
5277
|
+
})].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000 || _report(_exceptionable, {
|
|
5278
|
+
path: _path + ".minimum",
|
|
5279
|
+
expected: "number & Type<\"int64\">",
|
|
5280
|
+
value: input.minimum
|
|
5281
|
+
})) || _report(_exceptionable, {
|
|
5282
|
+
path: _path + ".minimum",
|
|
5283
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
5284
|
+
value: input.minimum
|
|
5285
|
+
}), undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000 || _report(_exceptionable, {
|
|
5286
|
+
path: _path + ".maximum",
|
|
5287
|
+
expected: "number & Type<\"int64\">",
|
|
5288
|
+
value: input.maximum
|
|
5289
|
+
})) || _report(_exceptionable, {
|
|
5290
|
+
path: _path + ".maximum",
|
|
5291
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
5292
|
+
value: input.maximum
|
|
5293
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
5294
|
+
path: _path + ".exclusiveMinimum",
|
|
5295
|
+
expected: "(number | undefined)",
|
|
5296
|
+
value: input.exclusiveMinimum
|
|
5297
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
5298
|
+
path: _path + ".exclusiveMaximum",
|
|
5299
|
+
expected: "(number | undefined)",
|
|
5300
|
+
value: input.exclusiveMaximum
|
|
5301
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 || _report(_exceptionable, {
|
|
5302
|
+
path: _path + ".multipleOf",
|
|
5303
|
+
expected: "number & Type<\"uint64\">",
|
|
5304
|
+
value: input.multipleOf
|
|
5305
|
+
})) && (0 < input.multipleOf || _report(_exceptionable, {
|
|
5306
|
+
path: _path + ".multipleOf",
|
|
5307
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
5308
|
+
value: input.multipleOf
|
|
5309
|
+
})) || _report(_exceptionable, {
|
|
5310
|
+
path: _path + ".multipleOf",
|
|
5311
|
+
expected: "((number & Type<\"uint64\"> & ExclusiveMinimum<0>) | undefined)",
|
|
5312
|
+
value: input.multipleOf
|
|
5313
|
+
}), "integer" === input.type || _report(_exceptionable, {
|
|
5314
|
+
path: _path + ".type",
|
|
5315
|
+
expected: "\"integer\"",
|
|
5316
|
+
value: input.type
|
|
5317
|
+
})].every(flag => flag); const _vo9 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum || _report(_exceptionable, {
|
|
5318
|
+
path: _path + ".minimum",
|
|
5319
|
+
expected: "(number | undefined)",
|
|
5320
|
+
value: input.minimum
|
|
5321
|
+
}), undefined === input.maximum || "number" === typeof input.maximum || _report(_exceptionable, {
|
|
5322
|
+
path: _path + ".maximum",
|
|
5323
|
+
expected: "(number | undefined)",
|
|
5324
|
+
value: input.maximum
|
|
5325
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
5326
|
+
path: _path + ".exclusiveMinimum",
|
|
5327
|
+
expected: "(number | undefined)",
|
|
5328
|
+
value: input.exclusiveMinimum
|
|
5329
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
5330
|
+
path: _path + ".exclusiveMaximum",
|
|
5331
|
+
expected: "(number | undefined)",
|
|
5332
|
+
value: input.exclusiveMaximum
|
|
5333
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (0 < input.multipleOf || _report(_exceptionable, {
|
|
5334
|
+
path: _path + ".multipleOf",
|
|
5335
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
5336
|
+
value: input.multipleOf
|
|
5337
|
+
})) || _report(_exceptionable, {
|
|
5338
|
+
path: _path + ".multipleOf",
|
|
5339
|
+
expected: "((number & ExclusiveMinimum<0>) | undefined)",
|
|
5340
|
+
value: input.multipleOf
|
|
5341
|
+
}), "number" === input.type || _report(_exceptionable, {
|
|
5342
|
+
path: _path + ".type",
|
|
5343
|
+
expected: "\"number\"",
|
|
5344
|
+
value: input.type
|
|
5345
|
+
})].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv8.has(input.format) || _report(_exceptionable, {
|
|
5346
|
+
path: _path + ".format",
|
|
5347
|
+
expected: "(\"date\" | \"date-time\" | \"duration\" | \"email\" | \"hostname\" | \"idn-email\" | \"idn-hostname\" | \"ipv4\" | \"ipv6\" | \"iri\" | \"iri-reference\" | \"json-pointer\" | \"password\" | \"regex\" | \"relative-json-pointer\" | \"time\" | \"uri\" | \"uri-reference\" | \"uri-template\" | \"url\" | \"uuid\" | undefined)",
|
|
3557
5348
|
value: input.format
|
|
3558
5349
|
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
3559
5350
|
path: _path + ".pattern",
|
|
@@ -3651,8 +5442,8 @@ const collection = {
|
|
|
3651
5442
|
path: _path + ".required",
|
|
3652
5443
|
expected: "Array<string>",
|
|
3653
5444
|
value: input.required
|
|
3654
|
-
})) && input.required.map((elem,
|
|
3655
|
-
path: _path + ".required[" +
|
|
5445
|
+
})) && input.required.map((elem, _index9) => "string" === typeof elem || _report(_exceptionable, {
|
|
5446
|
+
path: _path + ".required[" + _index9 + "]",
|
|
3656
5447
|
expected: "string",
|
|
3657
5448
|
value: elem
|
|
3658
5449
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -3671,12 +5462,12 @@ const collection = {
|
|
|
3671
5462
|
path: _path + ".oneOf",
|
|
3672
5463
|
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
3673
5464
|
value: input.oneOf
|
|
3674
|
-
})) && input.oneOf.map((elem,
|
|
3675
|
-
path: _path + ".oneOf[" +
|
|
5465
|
+
})) && input.oneOf.map((elem, _index10) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
5466
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
3676
5467
|
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
3677
5468
|
value: elem
|
|
3678
|
-
})) && _vu0(elem, _path + ".oneOf[" +
|
|
3679
|
-
path: _path + ".oneOf[" +
|
|
5469
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index10 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
5470
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
3680
5471
|
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
3681
5472
|
value: elem
|
|
3682
5473
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -3744,8 +5535,8 @@ const collection = {
|
|
|
3744
5535
|
path: _path + ".required",
|
|
3745
5536
|
expected: "Array<string>",
|
|
3746
5537
|
value: input.required
|
|
3747
|
-
})) && input.required.map((elem,
|
|
3748
|
-
path: _path + ".required[" +
|
|
5538
|
+
})) && input.required.map((elem, _index11) => "string" === typeof elem || _report(_exceptionable, {
|
|
5539
|
+
path: _path + ".required[" + _index11 + "]",
|
|
3749
5540
|
expected: "string",
|
|
3750
5541
|
value: elem
|
|
3751
5542
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -3772,12 +5563,12 @@ const collection = {
|
|
|
3772
5563
|
path: _path + ".oneOf",
|
|
3773
5564
|
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
3774
5565
|
value: input.oneOf
|
|
3775
|
-
})) && input.oneOf.map((elem,
|
|
3776
|
-
path: _path + ".oneOf[" +
|
|
5566
|
+
})) && input.oneOf.map((elem, _index12) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
5567
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
3777
5568
|
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
3778
5569
|
value: elem
|
|
3779
|
-
})) && _vu0(elem, _path + ".oneOf[" +
|
|
3780
|
-
path: _path + ".oneOf[" +
|
|
5570
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index12 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
5571
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
3781
5572
|
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
3782
5573
|
value: elem
|
|
3783
5574
|
})).every(flag => flag) || _report(_exceptionable, {
|