@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
|
@@ -60,17 +60,13 @@ const JsonSchemaFactory_1 = require("./utils/JsonSchemaFactory");
|
|
|
60
60
|
const JsonSchemaNamingConvention_1 = require("./utils/JsonSchemaNamingConvention");
|
|
61
61
|
const JsonSchemaValidator_1 = require("./utils/JsonSchemaValidator");
|
|
62
62
|
const fulfillJsonSchemaErrorMessages_1 = require("./utils/fulfillJsonSchemaErrorMessages");
|
|
63
|
-
function orchestrateInterfaceSchemaReview(
|
|
64
|
-
return __awaiter(this,
|
|
63
|
+
function orchestrateInterfaceSchemaReview(ctx, config, props) {
|
|
64
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
65
65
|
const typeNames = Object.keys(props.document.components.schemas);
|
|
66
66
|
const matrix = (0, divideArray_1.divideArray)({
|
|
67
67
|
array: typeNames,
|
|
68
|
-
capacity
|
|
68
|
+
capacity: 2 /* AutoBeConfigConstant.INTERFACE_CAPACITY */,
|
|
69
69
|
});
|
|
70
|
-
const progress = {
|
|
71
|
-
total: matrix.length,
|
|
72
|
-
completed: 0,
|
|
73
|
-
};
|
|
74
70
|
const x = {};
|
|
75
71
|
for (const y of yield (0, executeCachedBatch_1.executeCachedBatch)(matrix.map((it) => (promptCacheKey) => __awaiter(this, void 0, void 0, function* () {
|
|
76
72
|
const operations = props.document.operations.filter((op) => (op.requestBody && it.includes(op.requestBody.typeName)) ||
|
|
@@ -83,7 +79,7 @@ function orchestrateInterfaceSchemaReview(ctx_1, config_1, props_1) {
|
|
|
83
79
|
acc[cur] = props.document.components.schemas[cur];
|
|
84
80
|
return acc;
|
|
85
81
|
}, {}),
|
|
86
|
-
progress,
|
|
82
|
+
progress: props.progress,
|
|
87
83
|
promptCacheKey,
|
|
88
84
|
});
|
|
89
85
|
return row;
|
|
@@ -101,8 +97,8 @@ function divideAndConquer(ctx, config, props) {
|
|
|
101
97
|
const pointer = {
|
|
102
98
|
value: null,
|
|
103
99
|
};
|
|
104
|
-
const { tokenUsage } = yield ctx.conversate({
|
|
105
|
-
source: "
|
|
100
|
+
const { metric, tokenUsage } = yield ctx.conversate({
|
|
101
|
+
source: "interfaceSchemaReview",
|
|
106
102
|
controller: createController({
|
|
107
103
|
model: ctx.model,
|
|
108
104
|
pointer,
|
|
@@ -127,12 +123,14 @@ function divideAndConquer(ctx, config, props) {
|
|
|
127
123
|
schemas: pointer.value.content,
|
|
128
124
|
}).schemas) !== null && _a !== void 0 ? _a : {});
|
|
129
125
|
ctx.dispatch({
|
|
130
|
-
type:
|
|
126
|
+
type: "interfaceSchemaReview",
|
|
127
|
+
kind: config.kind,
|
|
131
128
|
id: (0, uuid_1.v7)(),
|
|
132
129
|
schemas: props.reviewSchemas,
|
|
133
130
|
review: pointer.value.think.review,
|
|
134
131
|
plan: pointer.value.think.plan,
|
|
135
132
|
content,
|
|
133
|
+
metric,
|
|
136
134
|
tokenUsage,
|
|
137
135
|
step: (_c = (_b = ctx.state().analyze) === null || _b === void 0 ? void 0 : _b.step) !== null && _c !== void 0 ? _c : 0,
|
|
138
136
|
total: props.progress.total,
|
|
@@ -151,12 +149,12 @@ function createController(props) {
|
|
|
151
149
|
(0, assertSchemaModel_1.assertSchemaModel)(props.model);
|
|
152
150
|
const validate = (next) => {
|
|
153
151
|
JsonSchemaFactory_1.JsonSchemaFactory.fixPage("content", next);
|
|
154
|
-
const result = (() => { const _io0 = input => "object" === typeof input.think && null !== input.think && _io1(input.think) && ("object" === typeof input.content && null !== input.content && false === Array.isArray(input.content) && _io2(input.content)); const _io1 = input => "string" === typeof input.review && "string" === typeof input.plan; const _io2 = input => Object.keys(input).every(key => {
|
|
152
|
+
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.think && null !== input.think && _io1(input.think) && ("object" === typeof input.content && null !== input.content && false === Array.isArray(input.content) && _io2(input.content)); const _io1 = input => "string" === typeof input.review && "string" === typeof input.plan; const _io2 = input => Object.keys(input).every(key => {
|
|
155
153
|
const value = input[key];
|
|
156
154
|
if (undefined === value)
|
|
157
155
|
return true;
|
|
158
156
|
return "object" === typeof value && null !== value && _iu1(value);
|
|
159
|
-
}); const _io3 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io4 = input => "boolean" === input.type && "string" === typeof input.description; const _io5 = 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 _io6 = 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 _io7 = input => (undefined === input.format ||
|
|
157
|
+
}); const _io3 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io4 = input => "boolean" === input.type && "string" === typeof input.description; const _io5 = 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 _io6 = 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 _io7 = 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 _io8 = 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 _io9 = 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 _io10 = 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 _io11 = 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 _io12 = input => "string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]; const _io13 = input => "boolean" === input.type; const _io14 = 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 _io15 = 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) && _io2(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 _io16 = input => "string" === typeof input.$ref; const _io17 = 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 && _io19(input.discriminator)); const _io18 = input => "null" === input.type; const _io19 = input => "string" === typeof input.propertyName && (undefined === input.mapping || "object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) && _io20(input.mapping)); const _io20 = input => Object.keys(input).every(key => {
|
|
160
158
|
const value = input[key];
|
|
161
159
|
if (undefined === value)
|
|
162
160
|
return true;
|
|
@@ -357,9 +355,9 @@ function createController(props) {
|
|
|
357
355
|
path: _path + ".description",
|
|
358
356
|
expected: "string",
|
|
359
357
|
value: input.description
|
|
360
|
-
})].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [undefined === input.format ||
|
|
358
|
+
})].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv7.has(input.format) || _report(_exceptionable, {
|
|
361
359
|
path: _path + ".format",
|
|
362
|
-
expected: "(
|
|
360
|
+
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)",
|
|
363
361
|
value: input.format
|
|
364
362
|
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
365
363
|
path: _path + ".pattern",
|
|
@@ -497,9 +495,9 @@ function createController(props) {
|
|
|
497
495
|
path: _path + ".type",
|
|
498
496
|
expected: "\"number\"",
|
|
499
497
|
value: input.type
|
|
500
|
-
})].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => [undefined === input.format ||
|
|
498
|
+
})].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv8.has(input.format) || _report(_exceptionable, {
|
|
501
499
|
path: _path + ".format",
|
|
502
|
-
expected: "(
|
|
500
|
+
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)",
|
|
503
501
|
value: input.format
|
|
504
502
|
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
505
503
|
path: _path + ".pattern",
|
|
@@ -597,8 +595,8 @@ function createController(props) {
|
|
|
597
595
|
path: _path + ".required",
|
|
598
596
|
expected: "Array<string>",
|
|
599
597
|
value: input.required
|
|
600
|
-
})) && input.required.map((elem,
|
|
601
|
-
path: _path + ".required[" +
|
|
598
|
+
})) && input.required.map((elem, _index9) => "string" === typeof elem || _report(_exceptionable, {
|
|
599
|
+
path: _path + ".required[" + _index9 + "]",
|
|
602
600
|
expected: "string",
|
|
603
601
|
value: elem
|
|
604
602
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -617,12 +615,12 @@ function createController(props) {
|
|
|
617
615
|
path: _path + ".oneOf",
|
|
618
616
|
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
619
617
|
value: input.oneOf
|
|
620
|
-
})) && input.oneOf.map((elem,
|
|
621
|
-
path: _path + ".oneOf[" +
|
|
618
|
+
})) && input.oneOf.map((elem, _index10) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
619
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
622
620
|
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)",
|
|
623
621
|
value: elem
|
|
624
|
-
})) && _vu0(elem, _path + ".oneOf[" +
|
|
625
|
-
path: _path + ".oneOf[" +
|
|
622
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index10 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
623
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
626
624
|
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)",
|
|
627
625
|
value: elem
|
|
628
626
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -690,8 +688,8 @@ function createController(props) {
|
|
|
690
688
|
path: _path + ".required",
|
|
691
689
|
expected: "Array<string>",
|
|
692
690
|
value: input.required
|
|
693
|
-
})) && input.required.map((elem,
|
|
694
|
-
path: _path + ".required[" +
|
|
691
|
+
})) && input.required.map((elem, _index11) => "string" === typeof elem || _report(_exceptionable, {
|
|
692
|
+
path: _path + ".required[" + _index11 + "]",
|
|
695
693
|
expected: "string",
|
|
696
694
|
value: elem
|
|
697
695
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -718,12 +716,12 @@ function createController(props) {
|
|
|
718
716
|
path: _path + ".oneOf",
|
|
719
717
|
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
720
718
|
value: input.oneOf
|
|
721
|
-
})) && input.oneOf.map((elem,
|
|
722
|
-
path: _path + ".oneOf[" +
|
|
719
|
+
})) && input.oneOf.map((elem, _index12) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
720
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
723
721
|
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)",
|
|
724
722
|
value: elem
|
|
725
|
-
})) && _vu0(elem, _path + ".oneOf[" +
|
|
726
|
-
path: _path + ".oneOf[" +
|
|
723
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index12 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
724
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
727
725
|
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)",
|
|
728
726
|
value: elem
|
|
729
727
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -875,7 +873,11 @@ function createController(props) {
|
|
|
875
873
|
};
|
|
876
874
|
return result;
|
|
877
875
|
};
|
|
878
|
-
const application = collection[props.model === "chatgpt"
|
|
876
|
+
const application = collection[props.model === "chatgpt"
|
|
877
|
+
? "chatgpt"
|
|
878
|
+
: props.model === "gemini"
|
|
879
|
+
? "gemini"
|
|
880
|
+
: "claude"](validate);
|
|
879
881
|
return {
|
|
880
882
|
protocol: "class",
|
|
881
883
|
name: "ContentReviewer",
|
|
@@ -900,13 +902,15 @@ const collection = {
|
|
|
900
902
|
{
|
|
901
903
|
name: "review",
|
|
902
904
|
parameters: {
|
|
903
|
-
description: " Content review results including completeness issues found,\nfixes applied, and modified schemas\n\n------------------------------\n\nDescription of the current {@link IAutoBeInterfaceSchemaContentReviewApplication.IProps} type:\n\n> Output structure for the content review function.\n> \n> Contains the content analysis, completeness fixes, and schemas modified for\n> content quality during the validation process
|
|
905
|
+
description: " Content review results including completeness issues found,\nfixes applied, and modified schemas\n\n------------------------------\n\nDescription of the current {@link IAutoBeInterfaceSchemaContentReviewApplication.IProps} type:\n\n> Output structure for the content review function.\n> \n> Contains the content analysis, completeness fixes, and schemas modified for\n> content quality during the validation process.",
|
|
904
906
|
type: "object",
|
|
905
907
|
properties: {
|
|
906
908
|
think: {
|
|
909
|
+
description: "Content analysis and completeness planning information.",
|
|
907
910
|
$ref: "#/$defs/IAutoBeInterfaceSchemaContentReviewApplication.IThink"
|
|
908
911
|
},
|
|
909
912
|
content: {
|
|
913
|
+
description: "Modified schemas resulting from content and completeness fixes.\n\nContains ONLY the schemas that were modified for content reasons during\nreview. This includes both modified existing schemas and newly created\nvariant schemas.\n\nContent modifications include:\n\n- Adding missing fields from Prisma schema\n- Correcting data type mappings\n- Fixing required field arrays\n- Enhancing or adding descriptions\n- Creating missing variant types (ISummary, IUpdate, etc.)\n- Ensuring cross-variant consistency\n\nReturn empty object {} when all content is already complete and accurate,\nrequiring no modifications.",
|
|
910
914
|
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
911
915
|
}
|
|
912
916
|
},
|
|
@@ -1114,7 +1118,30 @@ const collection = {
|
|
|
1114
1118
|
properties: {
|
|
1115
1119
|
format: {
|
|
1116
1120
|
description: "Format restriction.",
|
|
1117
|
-
type: "string"
|
|
1121
|
+
type: "string",
|
|
1122
|
+
"enum": [
|
|
1123
|
+
"date-time",
|
|
1124
|
+
"password",
|
|
1125
|
+
"regex",
|
|
1126
|
+
"uuid",
|
|
1127
|
+
"email",
|
|
1128
|
+
"hostname",
|
|
1129
|
+
"idn-email",
|
|
1130
|
+
"idn-hostname",
|
|
1131
|
+
"iri",
|
|
1132
|
+
"iri-reference",
|
|
1133
|
+
"ipv4",
|
|
1134
|
+
"ipv6",
|
|
1135
|
+
"uri",
|
|
1136
|
+
"uri-reference",
|
|
1137
|
+
"uri-template",
|
|
1138
|
+
"url",
|
|
1139
|
+
"date",
|
|
1140
|
+
"time",
|
|
1141
|
+
"duration",
|
|
1142
|
+
"json-pointer",
|
|
1143
|
+
"relative-json-pointer"
|
|
1144
|
+
]
|
|
1118
1145
|
},
|
|
1119
1146
|
pattern: {
|
|
1120
1147
|
description: "Pattern restriction.",
|
|
@@ -1150,10 +1177,11 @@ const collection = {
|
|
|
1150
1177
|
]
|
|
1151
1178
|
},
|
|
1152
1179
|
"AutoBeOpenApi.IJsonSchemaDescriptive.IArray": {
|
|
1153
|
-
description: "Array type info
|
|
1180
|
+
description: "Array type info.",
|
|
1154
1181
|
type: "object",
|
|
1155
1182
|
properties: {
|
|
1156
1183
|
items: {
|
|
1184
|
+
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>`.",
|
|
1157
1185
|
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema"
|
|
1158
1186
|
},
|
|
1159
1187
|
uniqueItems: {
|
|
@@ -1299,7 +1327,30 @@ const collection = {
|
|
|
1299
1327
|
properties: {
|
|
1300
1328
|
format: {
|
|
1301
1329
|
description: "Format restriction.",
|
|
1302
|
-
type: "string"
|
|
1330
|
+
type: "string",
|
|
1331
|
+
"enum": [
|
|
1332
|
+
"date-time",
|
|
1333
|
+
"password",
|
|
1334
|
+
"regex",
|
|
1335
|
+
"uuid",
|
|
1336
|
+
"email",
|
|
1337
|
+
"hostname",
|
|
1338
|
+
"idn-email",
|
|
1339
|
+
"idn-hostname",
|
|
1340
|
+
"iri",
|
|
1341
|
+
"iri-reference",
|
|
1342
|
+
"ipv4",
|
|
1343
|
+
"ipv6",
|
|
1344
|
+
"uri",
|
|
1345
|
+
"uri-reference",
|
|
1346
|
+
"uri-template",
|
|
1347
|
+
"url",
|
|
1348
|
+
"date",
|
|
1349
|
+
"time",
|
|
1350
|
+
"duration",
|
|
1351
|
+
"json-pointer",
|
|
1352
|
+
"relative-json-pointer"
|
|
1353
|
+
]
|
|
1303
1354
|
},
|
|
1304
1355
|
pattern: {
|
|
1305
1356
|
description: "Pattern restriction.",
|
|
@@ -1369,10 +1420,11 @@ const collection = {
|
|
|
1369
1420
|
]
|
|
1370
1421
|
},
|
|
1371
1422
|
"AutoBeOpenApi.IJsonSchema.IArray": {
|
|
1372
|
-
description: "Array type info
|
|
1423
|
+
description: "Array type info.",
|
|
1373
1424
|
type: "object",
|
|
1374
1425
|
properties: {
|
|
1375
1426
|
items: {
|
|
1427
|
+
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>`.",
|
|
1376
1428
|
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema"
|
|
1377
1429
|
},
|
|
1378
1430
|
uniqueItems: {
|
|
@@ -1401,7 +1453,7 @@ const collection = {
|
|
|
1401
1453
|
]
|
|
1402
1454
|
},
|
|
1403
1455
|
"AutoBeOpenApi.IJsonSchema.IObject": {
|
|
1404
|
-
description: "Object type info
|
|
1456
|
+
description: "Object type info.",
|
|
1405
1457
|
type: "object",
|
|
1406
1458
|
properties: {
|
|
1407
1459
|
"x-autobe-prisma-schema": {
|
|
@@ -1416,6 +1468,7 @@ const collection = {
|
|
|
1416
1468
|
]
|
|
1417
1469
|
},
|
|
1418
1470
|
properties: {
|
|
1471
|
+
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.",
|
|
1419
1472
|
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
1420
1473
|
},
|
|
1421
1474
|
additionalProperties: {
|
|
@@ -1510,7 +1563,7 @@ const collection = {
|
|
|
1510
1563
|
]
|
|
1511
1564
|
},
|
|
1512
1565
|
"AutoBeOpenApi.IJsonSchema.IOneOf": {
|
|
1513
|
-
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
|
|
1566
|
+
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.",
|
|
1514
1567
|
type: "object",
|
|
1515
1568
|
properties: {
|
|
1516
1569
|
oneOf: {
|
|
@@ -1549,6 +1602,7 @@ const collection = {
|
|
|
1549
1602
|
}
|
|
1550
1603
|
},
|
|
1551
1604
|
discriminator: {
|
|
1605
|
+
description: "Discriminator info of the union type.",
|
|
1552
1606
|
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator"
|
|
1553
1607
|
}
|
|
1554
1608
|
},
|
|
@@ -1557,7 +1611,7 @@ const collection = {
|
|
|
1557
1611
|
]
|
|
1558
1612
|
},
|
|
1559
1613
|
"AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator": {
|
|
1560
|
-
description: "Discriminator info of the union type
|
|
1614
|
+
description: "Discriminator info of the union type.",
|
|
1561
1615
|
type: "object",
|
|
1562
1616
|
properties: {
|
|
1563
1617
|
propertyName: {
|
|
@@ -1565,6 +1619,7 @@ const collection = {
|
|
|
1565
1619
|
type: "string"
|
|
1566
1620
|
},
|
|
1567
1621
|
mapping: {
|
|
1622
|
+
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`.",
|
|
1568
1623
|
$ref: "#/$defs/Recordstringstring"
|
|
1569
1624
|
}
|
|
1570
1625
|
},
|
|
@@ -1582,7 +1637,7 @@ const collection = {
|
|
|
1582
1637
|
}
|
|
1583
1638
|
},
|
|
1584
1639
|
"AutoBeOpenApi.IJsonSchemaDescriptive.IObject": {
|
|
1585
|
-
description: "Object type info
|
|
1640
|
+
description: "Object type info.",
|
|
1586
1641
|
type: "object",
|
|
1587
1642
|
properties: {
|
|
1588
1643
|
"x-autobe-prisma-schema": {
|
|
@@ -1597,6 +1652,7 @@ const collection = {
|
|
|
1597
1652
|
]
|
|
1598
1653
|
},
|
|
1599
1654
|
properties: {
|
|
1655
|
+
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.",
|
|
1600
1656
|
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
1601
1657
|
},
|
|
1602
1658
|
additionalProperties: {
|
|
@@ -1685,7 +1741,7 @@ const collection = {
|
|
|
1685
1741
|
]
|
|
1686
1742
|
},
|
|
1687
1743
|
"AutoBeOpenApi.IJsonSchemaDescriptive.IOneOf": {
|
|
1688
|
-
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
|
|
1744
|
+
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.",
|
|
1689
1745
|
type: "object",
|
|
1690
1746
|
properties: {
|
|
1691
1747
|
oneOf: {
|
|
@@ -1724,6 +1780,7 @@ const collection = {
|
|
|
1724
1780
|
}
|
|
1725
1781
|
},
|
|
1726
1782
|
discriminator: {
|
|
1783
|
+
description: "Discriminator info of the union type.",
|
|
1727
1784
|
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator"
|
|
1728
1785
|
},
|
|
1729
1786
|
description: {
|
|
@@ -1760,12 +1817,12 @@ const collection = {
|
|
|
1760
1817
|
}
|
|
1761
1818
|
},
|
|
1762
1819
|
description: "Reviews and validates DTO content completeness and consistency in OpenAPI\nschemas.\n\nThis specialized content review function focuses exclusively on ensuring\nDTOs accurately and completely represent their business entities. It\nvalidates field completeness, type accuracy, required field settings, and\ndocumentation quality.\n\nThe review process validates and corrects:\n\n- Field completeness against Prisma schema\n- Data type accuracy (Prisma to OpenAPI type mappings)\n- Required field arrays matching Prisma nullability\n- Description quality and comprehensiveness\n- Consistency across DTO variants (IEntity, ICreate, IUpdate, ISummary)\n- Missing variant detection and creation",
|
|
1763
|
-
validate: (() => { const _io0 = input => "object" === typeof input.think && null !== input.think && _io1(input.think) && ("object" === typeof input.content && null !== input.content && false === Array.isArray(input.content) && _io2(input.content)); const _io1 = input => "string" === typeof input.review && "string" === typeof input.plan; const _io2 = input => Object.keys(input).every(key => {
|
|
1820
|
+
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.think && null !== input.think && _io1(input.think) && ("object" === typeof input.content && null !== input.content && false === Array.isArray(input.content) && _io2(input.content)); const _io1 = input => "string" === typeof input.review && "string" === typeof input.plan; const _io2 = input => Object.keys(input).every(key => {
|
|
1764
1821
|
const value = input[key];
|
|
1765
1822
|
if (undefined === value)
|
|
1766
1823
|
return true;
|
|
1767
1824
|
return "object" === typeof value && null !== value && _iu1(value);
|
|
1768
|
-
}); const _io3 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io4 = input => "boolean" === input.type && "string" === typeof input.description; const _io5 = 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 _io6 = 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 _io7 = input => (undefined === input.format ||
|
|
1825
|
+
}); const _io3 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io4 = input => "boolean" === input.type && "string" === typeof input.description; const _io5 = 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 _io6 = 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 _io7 = 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 _io8 = 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 _io9 = 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 _io10 = 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 _io11 = 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 _io12 = input => "string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]; const _io13 = input => "boolean" === input.type; const _io14 = 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 _io15 = 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) && _io2(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 _io16 = input => "string" === typeof input.$ref; const _io17 = 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 && _io19(input.discriminator)); const _io18 = input => "null" === input.type; const _io19 = input => "string" === typeof input.propertyName && (undefined === input.mapping || "object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) && _io20(input.mapping)); const _io20 = input => Object.keys(input).every(key => {
|
|
1769
1826
|
const value = input[key];
|
|
1770
1827
|
if (undefined === value)
|
|
1771
1828
|
return true;
|
|
@@ -1966,9 +2023,9 @@ const collection = {
|
|
|
1966
2023
|
path: _path + ".description",
|
|
1967
2024
|
expected: "string",
|
|
1968
2025
|
value: input.description
|
|
1969
|
-
})].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [undefined === input.format ||
|
|
2026
|
+
})].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv7.has(input.format) || _report(_exceptionable, {
|
|
1970
2027
|
path: _path + ".format",
|
|
1971
|
-
expected: "(
|
|
2028
|
+
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)",
|
|
1972
2029
|
value: input.format
|
|
1973
2030
|
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
1974
2031
|
path: _path + ".pattern",
|
|
@@ -2106,9 +2163,9 @@ const collection = {
|
|
|
2106
2163
|
path: _path + ".type",
|
|
2107
2164
|
expected: "\"number\"",
|
|
2108
2165
|
value: input.type
|
|
2109
|
-
})].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => [undefined === input.format ||
|
|
2166
|
+
})].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv8.has(input.format) || _report(_exceptionable, {
|
|
2110
2167
|
path: _path + ".format",
|
|
2111
|
-
expected: "(
|
|
2168
|
+
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)",
|
|
2112
2169
|
value: input.format
|
|
2113
2170
|
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
2114
2171
|
path: _path + ".pattern",
|
|
@@ -2206,8 +2263,8 @@ const collection = {
|
|
|
2206
2263
|
path: _path + ".required",
|
|
2207
2264
|
expected: "Array<string>",
|
|
2208
2265
|
value: input.required
|
|
2209
|
-
})) && input.required.map((elem,
|
|
2210
|
-
path: _path + ".required[" +
|
|
2266
|
+
})) && input.required.map((elem, _index9) => "string" === typeof elem || _report(_exceptionable, {
|
|
2267
|
+
path: _path + ".required[" + _index9 + "]",
|
|
2211
2268
|
expected: "string",
|
|
2212
2269
|
value: elem
|
|
2213
2270
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -2226,12 +2283,12 @@ const collection = {
|
|
|
2226
2283
|
path: _path + ".oneOf",
|
|
2227
2284
|
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
2228
2285
|
value: input.oneOf
|
|
2229
|
-
})) && input.oneOf.map((elem,
|
|
2230
|
-
path: _path + ".oneOf[" +
|
|
2286
|
+
})) && input.oneOf.map((elem, _index10) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
2287
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
2231
2288
|
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)",
|
|
2232
2289
|
value: elem
|
|
2233
|
-
})) && _vu0(elem, _path + ".oneOf[" +
|
|
2234
|
-
path: _path + ".oneOf[" +
|
|
2290
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index10 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
2291
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
2235
2292
|
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)",
|
|
2236
2293
|
value: elem
|
|
2237
2294
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -2299,8 +2356,8 @@ const collection = {
|
|
|
2299
2356
|
path: _path + ".required",
|
|
2300
2357
|
expected: "Array<string>",
|
|
2301
2358
|
value: input.required
|
|
2302
|
-
})) && input.required.map((elem,
|
|
2303
|
-
path: _path + ".required[" +
|
|
2359
|
+
})) && input.required.map((elem, _index11) => "string" === typeof elem || _report(_exceptionable, {
|
|
2360
|
+
path: _path + ".required[" + _index11 + "]",
|
|
2304
2361
|
expected: "string",
|
|
2305
2362
|
value: elem
|
|
2306
2363
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -2327,12 +2384,12 @@ const collection = {
|
|
|
2327
2384
|
path: _path + ".oneOf",
|
|
2328
2385
|
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
2329
2386
|
value: input.oneOf
|
|
2330
|
-
})) && input.oneOf.map((elem,
|
|
2331
|
-
path: _path + ".oneOf[" +
|
|
2387
|
+
})) && input.oneOf.map((elem, _index12) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
2388
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
2332
2389
|
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)",
|
|
2333
2390
|
value: elem
|
|
2334
|
-
})) && _vu0(elem, _path + ".oneOf[" +
|
|
2335
|
-
path: _path + ".oneOf[" +
|
|
2391
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index12 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
2392
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
2336
2393
|
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)",
|
|
2337
2394
|
value: elem
|
|
2338
2395
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -2696,7 +2753,71 @@ const collection = {
|
|
|
2696
2753
|
properties: {
|
|
2697
2754
|
format: {
|
|
2698
2755
|
description: "Format restriction.",
|
|
2699
|
-
|
|
2756
|
+
oneOf: [
|
|
2757
|
+
{
|
|
2758
|
+
"const": "date-time"
|
|
2759
|
+
},
|
|
2760
|
+
{
|
|
2761
|
+
"const": "password"
|
|
2762
|
+
},
|
|
2763
|
+
{
|
|
2764
|
+
"const": "regex"
|
|
2765
|
+
},
|
|
2766
|
+
{
|
|
2767
|
+
"const": "uuid"
|
|
2768
|
+
},
|
|
2769
|
+
{
|
|
2770
|
+
"const": "email"
|
|
2771
|
+
},
|
|
2772
|
+
{
|
|
2773
|
+
"const": "hostname"
|
|
2774
|
+
},
|
|
2775
|
+
{
|
|
2776
|
+
"const": "idn-email"
|
|
2777
|
+
},
|
|
2778
|
+
{
|
|
2779
|
+
"const": "idn-hostname"
|
|
2780
|
+
},
|
|
2781
|
+
{
|
|
2782
|
+
"const": "iri"
|
|
2783
|
+
},
|
|
2784
|
+
{
|
|
2785
|
+
"const": "iri-reference"
|
|
2786
|
+
},
|
|
2787
|
+
{
|
|
2788
|
+
"const": "ipv4"
|
|
2789
|
+
},
|
|
2790
|
+
{
|
|
2791
|
+
"const": "ipv6"
|
|
2792
|
+
},
|
|
2793
|
+
{
|
|
2794
|
+
"const": "uri"
|
|
2795
|
+
},
|
|
2796
|
+
{
|
|
2797
|
+
"const": "uri-reference"
|
|
2798
|
+
},
|
|
2799
|
+
{
|
|
2800
|
+
"const": "uri-template"
|
|
2801
|
+
},
|
|
2802
|
+
{
|
|
2803
|
+
"const": "url"
|
|
2804
|
+
},
|
|
2805
|
+
{
|
|
2806
|
+
"const": "date"
|
|
2807
|
+
},
|
|
2808
|
+
{
|
|
2809
|
+
"const": "time"
|
|
2810
|
+
},
|
|
2811
|
+
{
|
|
2812
|
+
"const": "duration"
|
|
2813
|
+
},
|
|
2814
|
+
{
|
|
2815
|
+
"const": "json-pointer"
|
|
2816
|
+
},
|
|
2817
|
+
{
|
|
2818
|
+
"const": "relative-json-pointer"
|
|
2819
|
+
}
|
|
2820
|
+
]
|
|
2700
2821
|
},
|
|
2701
2822
|
pattern: {
|
|
2702
2823
|
description: "Pattern restriction.",
|
|
@@ -2876,7 +2997,71 @@ const collection = {
|
|
|
2876
2997
|
properties: {
|
|
2877
2998
|
format: {
|
|
2878
2999
|
description: "Format restriction.",
|
|
2879
|
-
|
|
3000
|
+
oneOf: [
|
|
3001
|
+
{
|
|
3002
|
+
"const": "date-time"
|
|
3003
|
+
},
|
|
3004
|
+
{
|
|
3005
|
+
"const": "password"
|
|
3006
|
+
},
|
|
3007
|
+
{
|
|
3008
|
+
"const": "regex"
|
|
3009
|
+
},
|
|
3010
|
+
{
|
|
3011
|
+
"const": "uuid"
|
|
3012
|
+
},
|
|
3013
|
+
{
|
|
3014
|
+
"const": "email"
|
|
3015
|
+
},
|
|
3016
|
+
{
|
|
3017
|
+
"const": "hostname"
|
|
3018
|
+
},
|
|
3019
|
+
{
|
|
3020
|
+
"const": "idn-email"
|
|
3021
|
+
},
|
|
3022
|
+
{
|
|
3023
|
+
"const": "idn-hostname"
|
|
3024
|
+
},
|
|
3025
|
+
{
|
|
3026
|
+
"const": "iri"
|
|
3027
|
+
},
|
|
3028
|
+
{
|
|
3029
|
+
"const": "iri-reference"
|
|
3030
|
+
},
|
|
3031
|
+
{
|
|
3032
|
+
"const": "ipv4"
|
|
3033
|
+
},
|
|
3034
|
+
{
|
|
3035
|
+
"const": "ipv6"
|
|
3036
|
+
},
|
|
3037
|
+
{
|
|
3038
|
+
"const": "uri"
|
|
3039
|
+
},
|
|
3040
|
+
{
|
|
3041
|
+
"const": "uri-reference"
|
|
3042
|
+
},
|
|
3043
|
+
{
|
|
3044
|
+
"const": "uri-template"
|
|
3045
|
+
},
|
|
3046
|
+
{
|
|
3047
|
+
"const": "url"
|
|
3048
|
+
},
|
|
3049
|
+
{
|
|
3050
|
+
"const": "date"
|
|
3051
|
+
},
|
|
3052
|
+
{
|
|
3053
|
+
"const": "time"
|
|
3054
|
+
},
|
|
3055
|
+
{
|
|
3056
|
+
"const": "duration"
|
|
3057
|
+
},
|
|
3058
|
+
{
|
|
3059
|
+
"const": "json-pointer"
|
|
3060
|
+
},
|
|
3061
|
+
{
|
|
3062
|
+
"const": "relative-json-pointer"
|
|
3063
|
+
}
|
|
3064
|
+
]
|
|
2880
3065
|
},
|
|
2881
3066
|
pattern: {
|
|
2882
3067
|
description: "Pattern restriction.",
|
|
@@ -3320,12 +3505,12 @@ const collection = {
|
|
|
3320
3505
|
}
|
|
3321
3506
|
},
|
|
3322
3507
|
description: "Reviews and validates DTO content completeness and consistency in OpenAPI\nschemas.\n\nThis specialized content review function focuses exclusively on ensuring\nDTOs accurately and completely represent their business entities. It\nvalidates field completeness, type accuracy, required field settings, and\ndocumentation quality.\n\nThe review process validates and corrects:\n\n- Field completeness against Prisma schema\n- Data type accuracy (Prisma to OpenAPI type mappings)\n- Required field arrays matching Prisma nullability\n- Description quality and comprehensiveness\n- Consistency across DTO variants (IEntity, ICreate, IUpdate, ISummary)\n- Missing variant detection and creation",
|
|
3323
|
-
validate: (() => { const _io0 = input => "object" === typeof input.think && null !== input.think && _io1(input.think) && ("object" === typeof input.content && null !== input.content && false === Array.isArray(input.content) && _io2(input.content)); const _io1 = input => "string" === typeof input.review && "string" === typeof input.plan; const _io2 = input => Object.keys(input).every(key => {
|
|
3508
|
+
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.think && null !== input.think && _io1(input.think) && ("object" === typeof input.content && null !== input.content && false === Array.isArray(input.content) && _io2(input.content)); const _io1 = input => "string" === typeof input.review && "string" === typeof input.plan; const _io2 = input => Object.keys(input).every(key => {
|
|
3324
3509
|
const value = input[key];
|
|
3325
3510
|
if (undefined === value)
|
|
3326
3511
|
return true;
|
|
3327
3512
|
return "object" === typeof value && null !== value && _iu1(value);
|
|
3328
|
-
}); const _io3 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io4 = input => "boolean" === input.type && "string" === typeof input.description; const _io5 = 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 _io6 = 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 _io7 = input => (undefined === input.format ||
|
|
3513
|
+
}); const _io3 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io4 = input => "boolean" === input.type && "string" === typeof input.description; const _io5 = 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 _io6 = 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 _io7 = 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 _io8 = 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 _io9 = 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 _io10 = 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 _io11 = 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 _io12 = input => "string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]; const _io13 = input => "boolean" === input.type; const _io14 = 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 _io15 = 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) && _io2(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 _io16 = input => "string" === typeof input.$ref; const _io17 = 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 && _io19(input.discriminator)); const _io18 = input => "null" === input.type; const _io19 = input => "string" === typeof input.propertyName && (undefined === input.mapping || "object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) && _io20(input.mapping)); const _io20 = input => Object.keys(input).every(key => {
|
|
3329
3514
|
const value = input[key];
|
|
3330
3515
|
if (undefined === value)
|
|
3331
3516
|
return true;
|
|
@@ -3526,9 +3711,9 @@ const collection = {
|
|
|
3526
3711
|
path: _path + ".description",
|
|
3527
3712
|
expected: "string",
|
|
3528
3713
|
value: input.description
|
|
3529
|
-
})].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [undefined === input.format ||
|
|
3714
|
+
})].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv7.has(input.format) || _report(_exceptionable, {
|
|
3530
3715
|
path: _path + ".format",
|
|
3531
|
-
expected: "(
|
|
3716
|
+
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)",
|
|
3532
3717
|
value: input.format
|
|
3533
3718
|
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
3534
3719
|
path: _path + ".pattern",
|
|
@@ -3666,9 +3851,1651 @@ const collection = {
|
|
|
3666
3851
|
path: _path + ".type",
|
|
3667
3852
|
expected: "\"number\"",
|
|
3668
3853
|
value: input.type
|
|
3669
|
-
})].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => [undefined === input.format ||
|
|
3854
|
+
})].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv8.has(input.format) || _report(_exceptionable, {
|
|
3670
3855
|
path: _path + ".format",
|
|
3856
|
+
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)",
|
|
3857
|
+
value: input.format
|
|
3858
|
+
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
3859
|
+
path: _path + ".pattern",
|
|
3860
|
+
expected: "(string | undefined)",
|
|
3861
|
+
value: input.pattern
|
|
3862
|
+
}), undefined === input.contentMediaType || "string" === typeof input.contentMediaType || _report(_exceptionable, {
|
|
3863
|
+
path: _path + ".contentMediaType",
|
|
3671
3864
|
expected: "(string | undefined)",
|
|
3865
|
+
value: input.contentMediaType
|
|
3866
|
+
}), undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
3867
|
+
path: _path + ".minLength",
|
|
3868
|
+
expected: "number & Type<\"uint64\">",
|
|
3869
|
+
value: input.minLength
|
|
3870
|
+
})) || _report(_exceptionable, {
|
|
3871
|
+
path: _path + ".minLength",
|
|
3872
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3873
|
+
value: input.minLength
|
|
3874
|
+
}), undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
3875
|
+
path: _path + ".maxLength",
|
|
3876
|
+
expected: "number & Type<\"uint64\">",
|
|
3877
|
+
value: input.maxLength
|
|
3878
|
+
})) || _report(_exceptionable, {
|
|
3879
|
+
path: _path + ".maxLength",
|
|
3880
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3881
|
+
value: input.maxLength
|
|
3882
|
+
}), "string" === input.type || _report(_exceptionable, {
|
|
3883
|
+
path: _path + ".type",
|
|
3884
|
+
expected: "\"string\"",
|
|
3885
|
+
value: input.type
|
|
3886
|
+
})].every(flag => flag); const _vo12 = (input, _path, _exceptionable = true) => ["string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"] || _report(_exceptionable, {
|
|
3887
|
+
path: _path + "[\"const\"]",
|
|
3888
|
+
expected: "(boolean | number | string)",
|
|
3889
|
+
value: input["const"]
|
|
3890
|
+
})].every(flag => flag); const _vo13 = (input, _path, _exceptionable = true) => ["boolean" === input.type || _report(_exceptionable, {
|
|
3891
|
+
path: _path + ".type",
|
|
3892
|
+
expected: "\"boolean\"",
|
|
3893
|
+
value: input.type
|
|
3894
|
+
})].every(flag => flag); const _vo14 = (input, _path, _exceptionable = true) => [("object" === typeof input.items && null !== input.items || _report(_exceptionable, {
|
|
3895
|
+
path: _path + ".items",
|
|
3896
|
+
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)",
|
|
3897
|
+
value: input.items
|
|
3898
|
+
})) && _vu2(input.items, _path + ".items", true && _exceptionable) || _report(_exceptionable, {
|
|
3899
|
+
path: _path + ".items",
|
|
3900
|
+
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)",
|
|
3901
|
+
value: input.items
|
|
3902
|
+
}), undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems || _report(_exceptionable, {
|
|
3903
|
+
path: _path + ".uniqueItems",
|
|
3904
|
+
expected: "(boolean | undefined)",
|
|
3905
|
+
value: input.uniqueItems
|
|
3906
|
+
}), undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
3907
|
+
path: _path + ".minItems",
|
|
3908
|
+
expected: "number & Type<\"uint64\">",
|
|
3909
|
+
value: input.minItems
|
|
3910
|
+
})) || _report(_exceptionable, {
|
|
3911
|
+
path: _path + ".minItems",
|
|
3912
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3913
|
+
value: input.minItems
|
|
3914
|
+
}), undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
3915
|
+
path: _path + ".maxItems",
|
|
3916
|
+
expected: "number & Type<\"uint64\">",
|
|
3917
|
+
value: input.maxItems
|
|
3918
|
+
})) || _report(_exceptionable, {
|
|
3919
|
+
path: _path + ".maxItems",
|
|
3920
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3921
|
+
value: input.maxItems
|
|
3922
|
+
}), "array" === input.type || _report(_exceptionable, {
|
|
3923
|
+
path: _path + ".type",
|
|
3924
|
+
expected: "\"array\"",
|
|
3925
|
+
value: input.type
|
|
3926
|
+
})].every(flag => flag); const _vo15 = (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, {
|
|
3927
|
+
path: _path + "[\"x-autobe-prisma-schema\"]",
|
|
3928
|
+
expected: "(null | string | undefined)",
|
|
3929
|
+
value: input["x-autobe-prisma-schema"]
|
|
3930
|
+
}), ("object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) || _report(_exceptionable, {
|
|
3931
|
+
path: _path + ".properties",
|
|
3932
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
3933
|
+
value: input.properties
|
|
3934
|
+
})) && _vo2(input.properties, _path + ".properties", true && _exceptionable) || _report(_exceptionable, {
|
|
3935
|
+
path: _path + ".properties",
|
|
3936
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
3937
|
+
value: input.properties
|
|
3938
|
+
}), (null !== input.additionalProperties || _report(_exceptionable, {
|
|
3939
|
+
path: _path + ".additionalProperties",
|
|
3940
|
+
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)",
|
|
3941
|
+
value: input.additionalProperties
|
|
3942
|
+
})) && (undefined === input.additionalProperties || false === input.additionalProperties || ("object" === typeof input.additionalProperties && null !== input.additionalProperties || _report(_exceptionable, {
|
|
3943
|
+
path: _path + ".additionalProperties",
|
|
3944
|
+
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)",
|
|
3945
|
+
value: input.additionalProperties
|
|
3946
|
+
})) && _vu2(input.additionalProperties, _path + ".additionalProperties", true && _exceptionable) || _report(_exceptionable, {
|
|
3947
|
+
path: _path + ".additionalProperties",
|
|
3948
|
+
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)",
|
|
3949
|
+
value: input.additionalProperties
|
|
3950
|
+
})), (Array.isArray(input.required) || _report(_exceptionable, {
|
|
3951
|
+
path: _path + ".required",
|
|
3952
|
+
expected: "Array<string>",
|
|
3953
|
+
value: input.required
|
|
3954
|
+
})) && input.required.map((elem, _index9) => "string" === typeof elem || _report(_exceptionable, {
|
|
3955
|
+
path: _path + ".required[" + _index9 + "]",
|
|
3956
|
+
expected: "string",
|
|
3957
|
+
value: elem
|
|
3958
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
3959
|
+
path: _path + ".required",
|
|
3960
|
+
expected: "Array<string>",
|
|
3961
|
+
value: input.required
|
|
3962
|
+
}), "object" === input.type || _report(_exceptionable, {
|
|
3963
|
+
path: _path + ".type",
|
|
3964
|
+
expected: "\"object\"",
|
|
3965
|
+
value: input.type
|
|
3966
|
+
})].every(flag => flag); const _vo16 = (input, _path, _exceptionable = true) => ["string" === typeof input.$ref || _report(_exceptionable, {
|
|
3967
|
+
path: _path + ".$ref",
|
|
3968
|
+
expected: "string",
|
|
3969
|
+
value: input.$ref
|
|
3970
|
+
})].every(flag => flag); const _vo17 = (input, _path, _exceptionable = true) => [(Array.isArray(input.oneOf) || _report(_exceptionable, {
|
|
3971
|
+
path: _path + ".oneOf",
|
|
3972
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
3973
|
+
value: input.oneOf
|
|
3974
|
+
})) && input.oneOf.map((elem, _index10) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
3975
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
3976
|
+
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)",
|
|
3977
|
+
value: elem
|
|
3978
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index10 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
3979
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
3980
|
+
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)",
|
|
3981
|
+
value: elem
|
|
3982
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
3983
|
+
path: _path + ".oneOf",
|
|
3984
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
3985
|
+
value: input.oneOf
|
|
3986
|
+
}), undefined === input.discriminator || ("object" === typeof input.discriminator && null !== input.discriminator || _report(_exceptionable, {
|
|
3987
|
+
path: _path + ".discriminator",
|
|
3988
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
3989
|
+
value: input.discriminator
|
|
3990
|
+
})) && _vo19(input.discriminator, _path + ".discriminator", true && _exceptionable) || _report(_exceptionable, {
|
|
3991
|
+
path: _path + ".discriminator",
|
|
3992
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
3993
|
+
value: input.discriminator
|
|
3994
|
+
})].every(flag => flag); const _vo18 = (input, _path, _exceptionable = true) => ["null" === input.type || _report(_exceptionable, {
|
|
3995
|
+
path: _path + ".type",
|
|
3996
|
+
expected: "\"null\"",
|
|
3997
|
+
value: input.type
|
|
3998
|
+
})].every(flag => flag); const _vo19 = (input, _path, _exceptionable = true) => ["string" === typeof input.propertyName || _report(_exceptionable, {
|
|
3999
|
+
path: _path + ".propertyName",
|
|
4000
|
+
expected: "string",
|
|
4001
|
+
value: input.propertyName
|
|
4002
|
+
}), undefined === input.mapping || ("object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) || _report(_exceptionable, {
|
|
4003
|
+
path: _path + ".mapping",
|
|
4004
|
+
expected: "(Record<string, string> | undefined)",
|
|
4005
|
+
value: input.mapping
|
|
4006
|
+
})) && _vo20(input.mapping, _path + ".mapping", true && _exceptionable) || _report(_exceptionable, {
|
|
4007
|
+
path: _path + ".mapping",
|
|
4008
|
+
expected: "(Record<string, string> | undefined)",
|
|
4009
|
+
value: input.mapping
|
|
4010
|
+
})].every(flag => flag); const _vo20 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
|
|
4011
|
+
const value = input[key];
|
|
4012
|
+
if (undefined === value)
|
|
4013
|
+
return true;
|
|
4014
|
+
return "string" === typeof value || _report(_exceptionable, {
|
|
4015
|
+
path: _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key),
|
|
4016
|
+
expected: "string",
|
|
4017
|
+
value: value
|
|
4018
|
+
});
|
|
4019
|
+
}).every(flag => flag)].every(flag => flag); const _vo21 = (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, {
|
|
4020
|
+
path: _path + "[\"x-autobe-prisma-schema\"]",
|
|
4021
|
+
expected: "(null | string | undefined)",
|
|
4022
|
+
value: input["x-autobe-prisma-schema"]
|
|
4023
|
+
}), ("object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) || _report(_exceptionable, {
|
|
4024
|
+
path: _path + ".properties",
|
|
4025
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
4026
|
+
value: input.properties
|
|
4027
|
+
})) && _vo2(input.properties, _path + ".properties", true && _exceptionable) || _report(_exceptionable, {
|
|
4028
|
+
path: _path + ".properties",
|
|
4029
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
4030
|
+
value: input.properties
|
|
4031
|
+
}), (null !== input.additionalProperties || _report(_exceptionable, {
|
|
4032
|
+
path: _path + ".additionalProperties",
|
|
4033
|
+
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)",
|
|
4034
|
+
value: input.additionalProperties
|
|
4035
|
+
})) && (undefined === input.additionalProperties || false === input.additionalProperties || ("object" === typeof input.additionalProperties && null !== input.additionalProperties || _report(_exceptionable, {
|
|
4036
|
+
path: _path + ".additionalProperties",
|
|
4037
|
+
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)",
|
|
4038
|
+
value: input.additionalProperties
|
|
4039
|
+
})) && _vu2(input.additionalProperties, _path + ".additionalProperties", true && _exceptionable) || _report(_exceptionable, {
|
|
4040
|
+
path: _path + ".additionalProperties",
|
|
4041
|
+
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)",
|
|
4042
|
+
value: input.additionalProperties
|
|
4043
|
+
})), (Array.isArray(input.required) || _report(_exceptionable, {
|
|
4044
|
+
path: _path + ".required",
|
|
4045
|
+
expected: "Array<string>",
|
|
4046
|
+
value: input.required
|
|
4047
|
+
})) && input.required.map((elem, _index11) => "string" === typeof elem || _report(_exceptionable, {
|
|
4048
|
+
path: _path + ".required[" + _index11 + "]",
|
|
4049
|
+
expected: "string",
|
|
4050
|
+
value: elem
|
|
4051
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
4052
|
+
path: _path + ".required",
|
|
4053
|
+
expected: "Array<string>",
|
|
4054
|
+
value: input.required
|
|
4055
|
+
}), "object" === input.type || _report(_exceptionable, {
|
|
4056
|
+
path: _path + ".type",
|
|
4057
|
+
expected: "\"object\"",
|
|
4058
|
+
value: input.type
|
|
4059
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
4060
|
+
path: _path + ".description",
|
|
4061
|
+
expected: "string",
|
|
4062
|
+
value: input.description
|
|
4063
|
+
})].every(flag => flag); const _vo22 = (input, _path, _exceptionable = true) => ["string" === typeof input.$ref || _report(_exceptionable, {
|
|
4064
|
+
path: _path + ".$ref",
|
|
4065
|
+
expected: "string",
|
|
4066
|
+
value: input.$ref
|
|
4067
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
4068
|
+
path: _path + ".description",
|
|
4069
|
+
expected: "string",
|
|
4070
|
+
value: input.description
|
|
4071
|
+
})].every(flag => flag); const _vo23 = (input, _path, _exceptionable = true) => [(Array.isArray(input.oneOf) || _report(_exceptionable, {
|
|
4072
|
+
path: _path + ".oneOf",
|
|
4073
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
4074
|
+
value: input.oneOf
|
|
4075
|
+
})) && input.oneOf.map((elem, _index12) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
4076
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
4077
|
+
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)",
|
|
4078
|
+
value: elem
|
|
4079
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index12 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
4080
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
4081
|
+
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)",
|
|
4082
|
+
value: elem
|
|
4083
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
4084
|
+
path: _path + ".oneOf",
|
|
4085
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
4086
|
+
value: input.oneOf
|
|
4087
|
+
}), undefined === input.discriminator || ("object" === typeof input.discriminator && null !== input.discriminator || _report(_exceptionable, {
|
|
4088
|
+
path: _path + ".discriminator",
|
|
4089
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
4090
|
+
value: input.discriminator
|
|
4091
|
+
})) && _vo19(input.discriminator, _path + ".discriminator", true && _exceptionable) || _report(_exceptionable, {
|
|
4092
|
+
path: _path + ".discriminator",
|
|
4093
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
4094
|
+
value: input.discriminator
|
|
4095
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
4096
|
+
path: _path + ".description",
|
|
4097
|
+
expected: "string",
|
|
4098
|
+
value: input.description
|
|
4099
|
+
})].every(flag => flag); const _vo24 = (input, _path, _exceptionable = true) => ["null" === input.type || _report(_exceptionable, {
|
|
4100
|
+
path: _path + ".type",
|
|
4101
|
+
expected: "\"null\"",
|
|
4102
|
+
value: input.type
|
|
4103
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
4104
|
+
path: _path + ".description",
|
|
4105
|
+
expected: "string",
|
|
4106
|
+
value: input.description
|
|
4107
|
+
})].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
|
|
4108
|
+
if ("number" === input.type)
|
|
4109
|
+
return _vo10(input, _path, true && _exceptionable);
|
|
4110
|
+
else if ("integer" === input.type)
|
|
4111
|
+
return _vo9(input, _path, true && _exceptionable);
|
|
4112
|
+
else if ("string" === input.type)
|
|
4113
|
+
return _vo11(input, _path, true && _exceptionable);
|
|
4114
|
+
else if (undefined !== input["const"])
|
|
4115
|
+
return _vo12(input, _path, true && _exceptionable);
|
|
4116
|
+
else if ("null" === input.type)
|
|
4117
|
+
return _vo18(input, _path, true && _exceptionable);
|
|
4118
|
+
else if ("boolean" === input.type)
|
|
4119
|
+
return _vo13(input, _path, true && _exceptionable);
|
|
4120
|
+
else if ("array" === input.type)
|
|
4121
|
+
return _vo14(input, _path, true && _exceptionable);
|
|
4122
|
+
else if ("object" === input.type)
|
|
4123
|
+
return _vo15(input, _path, true && _exceptionable);
|
|
4124
|
+
else if (undefined !== input.$ref)
|
|
4125
|
+
return _vo16(input, _path, true && _exceptionable);
|
|
4126
|
+
else
|
|
4127
|
+
return _report(_exceptionable, {
|
|
4128
|
+
path: _path,
|
|
4129
|
+
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)",
|
|
4130
|
+
value: input
|
|
4131
|
+
});
|
|
4132
|
+
})(); const _vu1 = (input, _path, _exceptionable = true) => (() => {
|
|
4133
|
+
if (undefined !== input["const"])
|
|
4134
|
+
return _vo3(input, _path, true && _exceptionable);
|
|
4135
|
+
else if ("boolean" === input.type)
|
|
4136
|
+
return _vo4(input, _path, true && _exceptionable);
|
|
4137
|
+
else if ("number" === input.type)
|
|
4138
|
+
return _vo6(input, _path, true && _exceptionable);
|
|
4139
|
+
else if ("integer" === input.type)
|
|
4140
|
+
return _vo5(input, _path, true && _exceptionable);
|
|
4141
|
+
else if ("string" === input.type)
|
|
4142
|
+
return _vo7(input, _path, true && _exceptionable);
|
|
4143
|
+
else if ("array" === input.type)
|
|
4144
|
+
return _vo8(input, _path, true && _exceptionable);
|
|
4145
|
+
else if ("object" === input.type)
|
|
4146
|
+
return _vo21(input, _path, true && _exceptionable);
|
|
4147
|
+
else if (undefined !== input.$ref)
|
|
4148
|
+
return _vo22(input, _path, true && _exceptionable);
|
|
4149
|
+
else if (undefined !== input.oneOf)
|
|
4150
|
+
return _vo23(input, _path, true && _exceptionable);
|
|
4151
|
+
else if ("null" === input.type)
|
|
4152
|
+
return _vo24(input, _path, true && _exceptionable);
|
|
4153
|
+
else
|
|
4154
|
+
return _report(_exceptionable, {
|
|
4155
|
+
path: _path,
|
|
4156
|
+
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)",
|
|
4157
|
+
value: input
|
|
4158
|
+
});
|
|
4159
|
+
})(); const _vu2 = (input, _path, _exceptionable = true) => (() => {
|
|
4160
|
+
if ("number" === input.type)
|
|
4161
|
+
return _vo10(input, _path, true && _exceptionable);
|
|
4162
|
+
else if ("integer" === input.type)
|
|
4163
|
+
return _vo9(input, _path, true && _exceptionable);
|
|
4164
|
+
else if ("string" === input.type)
|
|
4165
|
+
return _vo11(input, _path, true && _exceptionable);
|
|
4166
|
+
else if (undefined !== input["const"])
|
|
4167
|
+
return _vo12(input, _path, true && _exceptionable);
|
|
4168
|
+
else if ("null" === input.type)
|
|
4169
|
+
return _vo18(input, _path, true && _exceptionable);
|
|
4170
|
+
else if ("boolean" === input.type)
|
|
4171
|
+
return _vo13(input, _path, true && _exceptionable);
|
|
4172
|
+
else if ("array" === input.type)
|
|
4173
|
+
return _vo14(input, _path, true && _exceptionable);
|
|
4174
|
+
else if ("object" === input.type)
|
|
4175
|
+
return _vo15(input, _path, true && _exceptionable);
|
|
4176
|
+
else if (undefined !== input.$ref)
|
|
4177
|
+
return _vo16(input, _path, true && _exceptionable);
|
|
4178
|
+
else if (undefined !== input.oneOf)
|
|
4179
|
+
return _vo17(input, _path, true && _exceptionable);
|
|
4180
|
+
else
|
|
4181
|
+
return _report(_exceptionable, {
|
|
4182
|
+
path: _path,
|
|
4183
|
+
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)",
|
|
4184
|
+
value: input
|
|
4185
|
+
});
|
|
4186
|
+
})(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
|
|
4187
|
+
if (false === __is(input)) {
|
|
4188
|
+
errors = [];
|
|
4189
|
+
_report = __typia_transform__validateReport._validateReport(errors);
|
|
4190
|
+
((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
|
|
4191
|
+
path: _path + "",
|
|
4192
|
+
expected: "IAutoBeInterfaceSchemaContentReviewApplication.IProps",
|
|
4193
|
+
value: input
|
|
4194
|
+
})) && _vo0(input, _path + "", true) || _report(true, {
|
|
4195
|
+
path: _path + "",
|
|
4196
|
+
expected: "IAutoBeInterfaceSchemaContentReviewApplication.IProps",
|
|
4197
|
+
value: input
|
|
4198
|
+
}))(input, "$input", true);
|
|
4199
|
+
const success = 0 === errors.length;
|
|
4200
|
+
return success ? {
|
|
4201
|
+
success,
|
|
4202
|
+
data: input
|
|
4203
|
+
} : {
|
|
4204
|
+
success,
|
|
4205
|
+
errors,
|
|
4206
|
+
data: input
|
|
4207
|
+
};
|
|
4208
|
+
}
|
|
4209
|
+
return {
|
|
4210
|
+
success: true,
|
|
4211
|
+
data: input
|
|
4212
|
+
};
|
|
4213
|
+
}; })()
|
|
4214
|
+
}
|
|
4215
|
+
]
|
|
4216
|
+
};
|
|
4217
|
+
__typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
|
|
4218
|
+
validate: {
|
|
4219
|
+
review: validate,
|
|
4220
|
+
},
|
|
4221
|
+
}), { equals: false }));
|
|
4222
|
+
return application;
|
|
4223
|
+
})(),
|
|
4224
|
+
gemini: (validate) => (() => {
|
|
4225
|
+
const application = {
|
|
4226
|
+
model: "gemini",
|
|
4227
|
+
options: {
|
|
4228
|
+
reference: true,
|
|
4229
|
+
separate: null
|
|
4230
|
+
},
|
|
4231
|
+
functions: [
|
|
4232
|
+
{
|
|
4233
|
+
name: "review",
|
|
4234
|
+
parameters: {
|
|
4235
|
+
description: " Content review results including completeness issues found,\nfixes applied, and modified schemas\n\n------------------------------\n\nDescription of the current {@link IAutoBeInterfaceSchemaContentReviewApplication.IProps} type:\n\n> Output structure for the content review function.\n> \n> Contains the content analysis, completeness fixes, and schemas modified for\n> content quality during the validation process.",
|
|
4236
|
+
type: "object",
|
|
4237
|
+
properties: {
|
|
4238
|
+
think: {
|
|
4239
|
+
description: "Content analysis and completeness planning information.",
|
|
4240
|
+
$ref: "#/$defs/IAutoBeInterfaceSchemaContentReviewApplication.IThink"
|
|
4241
|
+
},
|
|
4242
|
+
content: {
|
|
4243
|
+
description: "Modified schemas resulting from content and completeness fixes.\n\nContains ONLY the schemas that were modified for content reasons during\nreview. This includes both modified existing schemas and newly created\nvariant schemas.\n\nContent modifications include:\n\n- Adding missing fields from Prisma schema\n- Correcting data type mappings\n- Fixing required field arrays\n- Enhancing or adding descriptions\n- Creating missing variant types (ISummary, IUpdate, etc.)\n- Ensuring cross-variant consistency\n\nReturn empty object {} when all content is already complete and accurate,\nrequiring no modifications.",
|
|
4244
|
+
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
4245
|
+
}
|
|
4246
|
+
},
|
|
4247
|
+
required: [
|
|
4248
|
+
"think",
|
|
4249
|
+
"content"
|
|
4250
|
+
],
|
|
4251
|
+
additionalProperties: false,
|
|
4252
|
+
$defs: {
|
|
4253
|
+
"IAutoBeInterfaceSchemaContentReviewApplication.IThink": {
|
|
4254
|
+
type: "object",
|
|
4255
|
+
properties: {
|
|
4256
|
+
review: {
|
|
4257
|
+
description: "Content completeness and quality findings from the review process.\n\nDocuments all content issues discovered during validation, categorized by\ntype: field completeness, type accuracy, required fields, descriptions,\nvariant consistency, and missing variants. Each issue includes the\naffected schema and specific problem identified.\n\nCommon issues documented:\n\n- Field Completeness: Missing fields that exist in Prisma schema\n- Type Accuracy: Incorrect type mappings (e.g., Decimal as string)\n- Required Fields: Misaligned with Prisma nullable settings\n- Description Quality: Missing or inadequate descriptions\n- Variant Consistency: Same field with different types across variants\n- Missing Variants: Required DTO variants not present\n\nShould state \"No content or completeness issues found.\" when all schemas\nhave complete and accurate content.",
|
|
4258
|
+
type: "string"
|
|
4259
|
+
},
|
|
4260
|
+
plan: {
|
|
4261
|
+
description: "Content corrections and completeness fixes applied during review.\n\nLists all content modifications implemented, organized by fix type:\nfields added, types corrected, required arrays fixed, descriptions\nenhanced, consistency fixes, and variants created. Documents both field-\nlevel changes and schema-level additions.\n\nTypical fixes documented:\n\n- Fields added to match Prisma schema\n- Type mappings corrected (Int\u2192integer, Decimal\u2192number)\n- Required arrays aligned with nullability\n- Descriptions added or enhanced for clarity\n- Variant consistency issues resolved\n- Missing variants created with appropriate fields\n\nShould state \"No content issues require fixes. All DTOs are complete and\nconsistent.\" when no content modifications were necessary.",
|
|
4262
|
+
type: "string"
|
|
4263
|
+
}
|
|
4264
|
+
},
|
|
4265
|
+
required: [
|
|
4266
|
+
"review",
|
|
4267
|
+
"plan"
|
|
4268
|
+
]
|
|
4269
|
+
},
|
|
4270
|
+
"RecordstringAutoBeOpenApi.IJsonSchemaDescriptive": {
|
|
4271
|
+
description: "Construct a type with a set of properties K of type T",
|
|
4272
|
+
type: "object",
|
|
4273
|
+
properties: {},
|
|
4274
|
+
required: [],
|
|
4275
|
+
additionalProperties: {
|
|
4276
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive"
|
|
4277
|
+
}
|
|
4278
|
+
},
|
|
4279
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive": {
|
|
4280
|
+
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",
|
|
4281
|
+
anyOf: [
|
|
4282
|
+
{
|
|
4283
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IConstant"
|
|
4284
|
+
},
|
|
4285
|
+
{
|
|
4286
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IBoolean"
|
|
4287
|
+
},
|
|
4288
|
+
{
|
|
4289
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IInteger"
|
|
4290
|
+
},
|
|
4291
|
+
{
|
|
4292
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.INumber"
|
|
4293
|
+
},
|
|
4294
|
+
{
|
|
4295
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IString"
|
|
4296
|
+
},
|
|
4297
|
+
{
|
|
4298
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IArray"
|
|
4299
|
+
},
|
|
4300
|
+
{
|
|
4301
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IObject"
|
|
4302
|
+
},
|
|
4303
|
+
{
|
|
4304
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IReference"
|
|
4305
|
+
},
|
|
4306
|
+
{
|
|
4307
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IOneOf"
|
|
4308
|
+
},
|
|
4309
|
+
{
|
|
4310
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.INull"
|
|
4311
|
+
}
|
|
4312
|
+
]
|
|
4313
|
+
},
|
|
4314
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IConstant": {
|
|
4315
|
+
description: "Constant value type.",
|
|
4316
|
+
type: "object",
|
|
4317
|
+
properties: {
|
|
4318
|
+
"const": {
|
|
4319
|
+
description: "The constant value.",
|
|
4320
|
+
anyOf: [
|
|
4321
|
+
{
|
|
4322
|
+
type: "string"
|
|
4323
|
+
},
|
|
4324
|
+
{
|
|
4325
|
+
type: "number"
|
|
4326
|
+
},
|
|
4327
|
+
{
|
|
4328
|
+
type: "boolean"
|
|
4329
|
+
}
|
|
4330
|
+
]
|
|
4331
|
+
},
|
|
4332
|
+
description: {
|
|
4333
|
+
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.",
|
|
4334
|
+
type: "string"
|
|
4335
|
+
}
|
|
4336
|
+
},
|
|
4337
|
+
required: [
|
|
4338
|
+
"const",
|
|
4339
|
+
"description"
|
|
4340
|
+
]
|
|
4341
|
+
},
|
|
4342
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IBoolean": {
|
|
4343
|
+
description: "Boolean type info.",
|
|
4344
|
+
type: "object",
|
|
4345
|
+
properties: {
|
|
4346
|
+
type: {
|
|
4347
|
+
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.",
|
|
4348
|
+
type: "string",
|
|
4349
|
+
"enum": [
|
|
4350
|
+
"boolean"
|
|
4351
|
+
]
|
|
4352
|
+
},
|
|
4353
|
+
description: {
|
|
4354
|
+
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.",
|
|
4355
|
+
type: "string"
|
|
4356
|
+
}
|
|
4357
|
+
},
|
|
4358
|
+
required: [
|
|
4359
|
+
"type",
|
|
4360
|
+
"description"
|
|
4361
|
+
]
|
|
4362
|
+
},
|
|
4363
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IInteger": {
|
|
4364
|
+
description: "Integer type info.",
|
|
4365
|
+
type: "object",
|
|
4366
|
+
properties: {
|
|
4367
|
+
minimum: {
|
|
4368
|
+
description: "Minimum value restriction.",
|
|
4369
|
+
type: "integer"
|
|
4370
|
+
},
|
|
4371
|
+
maximum: {
|
|
4372
|
+
description: "Maximum value restriction.",
|
|
4373
|
+
type: "integer"
|
|
4374
|
+
},
|
|
4375
|
+
exclusiveMinimum: {
|
|
4376
|
+
description: "Exclusive minimum value restriction.",
|
|
4377
|
+
type: "number"
|
|
4378
|
+
},
|
|
4379
|
+
exclusiveMaximum: {
|
|
4380
|
+
description: "Exclusive maximum value restriction.",
|
|
4381
|
+
type: "number"
|
|
4382
|
+
},
|
|
4383
|
+
multipleOf: {
|
|
4384
|
+
description: "Multiple of value restriction.\n\n\n@exclusiveMinimum 0",
|
|
4385
|
+
type: "integer"
|
|
4386
|
+
},
|
|
4387
|
+
type: {
|
|
4388
|
+
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.",
|
|
4389
|
+
type: "string",
|
|
4390
|
+
"enum": [
|
|
4391
|
+
"integer"
|
|
4392
|
+
]
|
|
4393
|
+
},
|
|
4394
|
+
description: {
|
|
4395
|
+
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.",
|
|
4396
|
+
type: "string"
|
|
4397
|
+
}
|
|
4398
|
+
},
|
|
4399
|
+
required: [
|
|
4400
|
+
"type",
|
|
4401
|
+
"description"
|
|
4402
|
+
]
|
|
4403
|
+
},
|
|
4404
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.INumber": {
|
|
4405
|
+
description: "Number (double) type info.",
|
|
4406
|
+
type: "object",
|
|
4407
|
+
properties: {
|
|
4408
|
+
minimum: {
|
|
4409
|
+
description: "Minimum value restriction.",
|
|
4410
|
+
type: "number"
|
|
4411
|
+
},
|
|
4412
|
+
maximum: {
|
|
4413
|
+
description: "Maximum value restriction.",
|
|
4414
|
+
type: "number"
|
|
4415
|
+
},
|
|
4416
|
+
exclusiveMinimum: {
|
|
4417
|
+
description: "Exclusive minimum value restriction.",
|
|
4418
|
+
type: "number"
|
|
4419
|
+
},
|
|
4420
|
+
exclusiveMaximum: {
|
|
4421
|
+
description: "Exclusive maximum value restriction.",
|
|
4422
|
+
type: "number"
|
|
4423
|
+
},
|
|
4424
|
+
multipleOf: {
|
|
4425
|
+
description: "Multiple of value restriction.\n\n\n@exclusiveMinimum 0",
|
|
4426
|
+
type: "number"
|
|
4427
|
+
},
|
|
4428
|
+
type: {
|
|
4429
|
+
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.",
|
|
4430
|
+
type: "string",
|
|
4431
|
+
"enum": [
|
|
4432
|
+
"number"
|
|
4433
|
+
]
|
|
4434
|
+
},
|
|
4435
|
+
description: {
|
|
4436
|
+
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.",
|
|
4437
|
+
type: "string"
|
|
4438
|
+
}
|
|
4439
|
+
},
|
|
4440
|
+
required: [
|
|
4441
|
+
"type",
|
|
4442
|
+
"description"
|
|
4443
|
+
]
|
|
4444
|
+
},
|
|
4445
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IString": {
|
|
4446
|
+
description: "String type info.",
|
|
4447
|
+
type: "object",
|
|
4448
|
+
properties: {
|
|
4449
|
+
format: {
|
|
4450
|
+
description: "Format restriction.",
|
|
4451
|
+
type: "string",
|
|
4452
|
+
"enum": [
|
|
4453
|
+
"date-time",
|
|
4454
|
+
"password",
|
|
4455
|
+
"regex",
|
|
4456
|
+
"uuid",
|
|
4457
|
+
"email",
|
|
4458
|
+
"hostname",
|
|
4459
|
+
"idn-email",
|
|
4460
|
+
"idn-hostname",
|
|
4461
|
+
"iri",
|
|
4462
|
+
"iri-reference",
|
|
4463
|
+
"ipv4",
|
|
4464
|
+
"ipv6",
|
|
4465
|
+
"uri",
|
|
4466
|
+
"uri-reference",
|
|
4467
|
+
"uri-template",
|
|
4468
|
+
"url",
|
|
4469
|
+
"date",
|
|
4470
|
+
"time",
|
|
4471
|
+
"duration",
|
|
4472
|
+
"json-pointer",
|
|
4473
|
+
"relative-json-pointer"
|
|
4474
|
+
]
|
|
4475
|
+
},
|
|
4476
|
+
pattern: {
|
|
4477
|
+
description: "Pattern restriction.",
|
|
4478
|
+
type: "string"
|
|
4479
|
+
},
|
|
4480
|
+
contentMediaType: {
|
|
4481
|
+
description: "Content media type restriction.",
|
|
4482
|
+
type: "string"
|
|
4483
|
+
},
|
|
4484
|
+
minLength: {
|
|
4485
|
+
description: "Minimum length restriction.\n\n\n@minimum 0",
|
|
4486
|
+
type: "integer"
|
|
4487
|
+
},
|
|
4488
|
+
maxLength: {
|
|
4489
|
+
description: "Maximum length restriction.\n\n\n@minimum 0",
|
|
4490
|
+
type: "integer"
|
|
4491
|
+
},
|
|
4492
|
+
type: {
|
|
4493
|
+
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.",
|
|
4494
|
+
type: "string",
|
|
4495
|
+
"enum": [
|
|
4496
|
+
"string"
|
|
4497
|
+
]
|
|
4498
|
+
},
|
|
4499
|
+
description: {
|
|
4500
|
+
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.",
|
|
4501
|
+
type: "string"
|
|
4502
|
+
}
|
|
4503
|
+
},
|
|
4504
|
+
required: [
|
|
4505
|
+
"type",
|
|
4506
|
+
"description"
|
|
4507
|
+
]
|
|
4508
|
+
},
|
|
4509
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IArray": {
|
|
4510
|
+
description: "Array type info.",
|
|
4511
|
+
type: "object",
|
|
4512
|
+
properties: {
|
|
4513
|
+
items: {
|
|
4514
|
+
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>`.",
|
|
4515
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema"
|
|
4516
|
+
},
|
|
4517
|
+
uniqueItems: {
|
|
4518
|
+
description: "Unique items restriction.\n\nIf this property value is `true`, target array must have unique items.",
|
|
4519
|
+
type: "boolean"
|
|
4520
|
+
},
|
|
4521
|
+
minItems: {
|
|
4522
|
+
description: "Minimum items restriction.\n\nRestriction of minimum number of items in the array.\n\n\n@minimum 0",
|
|
4523
|
+
type: "integer"
|
|
4524
|
+
},
|
|
4525
|
+
maxItems: {
|
|
4526
|
+
description: "Maximum items restriction.\n\nRestriction of maximum number of items in the array.\n\n\n@minimum 0",
|
|
4527
|
+
type: "integer"
|
|
4528
|
+
},
|
|
4529
|
+
type: {
|
|
4530
|
+
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.",
|
|
4531
|
+
type: "string",
|
|
4532
|
+
"enum": [
|
|
4533
|
+
"array"
|
|
4534
|
+
]
|
|
4535
|
+
},
|
|
4536
|
+
description: {
|
|
4537
|
+
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.",
|
|
4538
|
+
type: "string"
|
|
4539
|
+
}
|
|
4540
|
+
},
|
|
4541
|
+
required: [
|
|
4542
|
+
"items",
|
|
4543
|
+
"type",
|
|
4544
|
+
"description"
|
|
4545
|
+
]
|
|
4546
|
+
},
|
|
4547
|
+
"AutoBeOpenApi.IJsonSchema": {
|
|
4548
|
+
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.",
|
|
4549
|
+
anyOf: [
|
|
4550
|
+
{
|
|
4551
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
4552
|
+
},
|
|
4553
|
+
{
|
|
4554
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
4555
|
+
},
|
|
4556
|
+
{
|
|
4557
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
4558
|
+
},
|
|
4559
|
+
{
|
|
4560
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
4561
|
+
},
|
|
4562
|
+
{
|
|
4563
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
4564
|
+
},
|
|
4565
|
+
{
|
|
4566
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
4567
|
+
},
|
|
4568
|
+
{
|
|
4569
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
4570
|
+
},
|
|
4571
|
+
{
|
|
4572
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
4573
|
+
},
|
|
4574
|
+
{
|
|
4575
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf"
|
|
4576
|
+
},
|
|
4577
|
+
{
|
|
4578
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
4579
|
+
}
|
|
4580
|
+
]
|
|
4581
|
+
},
|
|
4582
|
+
"AutoBeOpenApi.IJsonSchema.IInteger": {
|
|
4583
|
+
description: "Integer type info.",
|
|
4584
|
+
type: "object",
|
|
4585
|
+
properties: {
|
|
4586
|
+
minimum: {
|
|
4587
|
+
description: "Minimum value restriction.",
|
|
4588
|
+
type: "integer"
|
|
4589
|
+
},
|
|
4590
|
+
maximum: {
|
|
4591
|
+
description: "Maximum value restriction.",
|
|
4592
|
+
type: "integer"
|
|
4593
|
+
},
|
|
4594
|
+
exclusiveMinimum: {
|
|
4595
|
+
description: "Exclusive minimum value restriction.",
|
|
4596
|
+
type: "number"
|
|
4597
|
+
},
|
|
4598
|
+
exclusiveMaximum: {
|
|
4599
|
+
description: "Exclusive maximum value restriction.",
|
|
4600
|
+
type: "number"
|
|
4601
|
+
},
|
|
4602
|
+
multipleOf: {
|
|
4603
|
+
description: "Multiple of value restriction.\n\n\n@exclusiveMinimum 0",
|
|
4604
|
+
type: "integer"
|
|
4605
|
+
},
|
|
4606
|
+
type: {
|
|
4607
|
+
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.",
|
|
4608
|
+
type: "string",
|
|
4609
|
+
"enum": [
|
|
4610
|
+
"integer"
|
|
4611
|
+
]
|
|
4612
|
+
}
|
|
4613
|
+
},
|
|
4614
|
+
required: [
|
|
4615
|
+
"type"
|
|
4616
|
+
]
|
|
4617
|
+
},
|
|
4618
|
+
"AutoBeOpenApi.IJsonSchema.INumber": {
|
|
4619
|
+
description: "Number (double) type info.",
|
|
4620
|
+
type: "object",
|
|
4621
|
+
properties: {
|
|
4622
|
+
minimum: {
|
|
4623
|
+
description: "Minimum value restriction.",
|
|
4624
|
+
type: "number"
|
|
4625
|
+
},
|
|
4626
|
+
maximum: {
|
|
4627
|
+
description: "Maximum value restriction.",
|
|
4628
|
+
type: "number"
|
|
4629
|
+
},
|
|
4630
|
+
exclusiveMinimum: {
|
|
4631
|
+
description: "Exclusive minimum value restriction.",
|
|
4632
|
+
type: "number"
|
|
4633
|
+
},
|
|
4634
|
+
exclusiveMaximum: {
|
|
4635
|
+
description: "Exclusive maximum value restriction.",
|
|
4636
|
+
type: "number"
|
|
4637
|
+
},
|
|
4638
|
+
multipleOf: {
|
|
4639
|
+
description: "Multiple of value restriction.\n\n\n@exclusiveMinimum 0",
|
|
4640
|
+
type: "number"
|
|
4641
|
+
},
|
|
4642
|
+
type: {
|
|
4643
|
+
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.",
|
|
4644
|
+
type: "string",
|
|
4645
|
+
"enum": [
|
|
4646
|
+
"number"
|
|
4647
|
+
]
|
|
4648
|
+
}
|
|
4649
|
+
},
|
|
4650
|
+
required: [
|
|
4651
|
+
"type"
|
|
4652
|
+
]
|
|
4653
|
+
},
|
|
4654
|
+
"AutoBeOpenApi.IJsonSchema.IString": {
|
|
4655
|
+
description: "String type info.",
|
|
4656
|
+
type: "object",
|
|
4657
|
+
properties: {
|
|
4658
|
+
format: {
|
|
4659
|
+
description: "Format restriction.",
|
|
4660
|
+
type: "string",
|
|
4661
|
+
"enum": [
|
|
4662
|
+
"date-time",
|
|
4663
|
+
"password",
|
|
4664
|
+
"regex",
|
|
4665
|
+
"uuid",
|
|
4666
|
+
"email",
|
|
4667
|
+
"hostname",
|
|
4668
|
+
"idn-email",
|
|
4669
|
+
"idn-hostname",
|
|
4670
|
+
"iri",
|
|
4671
|
+
"iri-reference",
|
|
4672
|
+
"ipv4",
|
|
4673
|
+
"ipv6",
|
|
4674
|
+
"uri",
|
|
4675
|
+
"uri-reference",
|
|
4676
|
+
"uri-template",
|
|
4677
|
+
"url",
|
|
4678
|
+
"date",
|
|
4679
|
+
"time",
|
|
4680
|
+
"duration",
|
|
4681
|
+
"json-pointer",
|
|
4682
|
+
"relative-json-pointer"
|
|
4683
|
+
]
|
|
4684
|
+
},
|
|
4685
|
+
pattern: {
|
|
4686
|
+
description: "Pattern restriction.",
|
|
4687
|
+
type: "string"
|
|
4688
|
+
},
|
|
4689
|
+
contentMediaType: {
|
|
4690
|
+
description: "Content media type restriction.",
|
|
4691
|
+
type: "string"
|
|
4692
|
+
},
|
|
4693
|
+
minLength: {
|
|
4694
|
+
description: "Minimum length restriction.\n\n\n@minimum 0",
|
|
4695
|
+
type: "integer"
|
|
4696
|
+
},
|
|
4697
|
+
maxLength: {
|
|
4698
|
+
description: "Maximum length restriction.\n\n\n@minimum 0",
|
|
4699
|
+
type: "integer"
|
|
4700
|
+
},
|
|
4701
|
+
type: {
|
|
4702
|
+
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.",
|
|
4703
|
+
type: "string",
|
|
4704
|
+
"enum": [
|
|
4705
|
+
"string"
|
|
4706
|
+
]
|
|
4707
|
+
}
|
|
4708
|
+
},
|
|
4709
|
+
required: [
|
|
4710
|
+
"type"
|
|
4711
|
+
]
|
|
4712
|
+
},
|
|
4713
|
+
"AutoBeOpenApi.IJsonSchema.IConstant": {
|
|
4714
|
+
description: "Constant value type.",
|
|
4715
|
+
type: "object",
|
|
4716
|
+
properties: {
|
|
4717
|
+
"const": {
|
|
4718
|
+
description: "The constant value.",
|
|
4719
|
+
anyOf: [
|
|
4720
|
+
{
|
|
4721
|
+
type: "string"
|
|
4722
|
+
},
|
|
4723
|
+
{
|
|
4724
|
+
type: "number"
|
|
4725
|
+
},
|
|
4726
|
+
{
|
|
4727
|
+
type: "boolean"
|
|
4728
|
+
}
|
|
4729
|
+
]
|
|
4730
|
+
}
|
|
4731
|
+
},
|
|
4732
|
+
required: [
|
|
4733
|
+
"const"
|
|
4734
|
+
]
|
|
4735
|
+
},
|
|
4736
|
+
"AutoBeOpenApi.IJsonSchema.IBoolean": {
|
|
4737
|
+
description: "Boolean type info.",
|
|
4738
|
+
type: "object",
|
|
4739
|
+
properties: {
|
|
4740
|
+
type: {
|
|
4741
|
+
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.",
|
|
4742
|
+
type: "string",
|
|
4743
|
+
"enum": [
|
|
4744
|
+
"boolean"
|
|
4745
|
+
]
|
|
4746
|
+
}
|
|
4747
|
+
},
|
|
4748
|
+
required: [
|
|
4749
|
+
"type"
|
|
4750
|
+
]
|
|
4751
|
+
},
|
|
4752
|
+
"AutoBeOpenApi.IJsonSchema.IArray": {
|
|
4753
|
+
description: "Array type info.",
|
|
4754
|
+
type: "object",
|
|
4755
|
+
properties: {
|
|
4756
|
+
items: {
|
|
4757
|
+
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>`.",
|
|
4758
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema"
|
|
4759
|
+
},
|
|
4760
|
+
uniqueItems: {
|
|
4761
|
+
description: "Unique items restriction.\n\nIf this property value is `true`, target array must have unique items.",
|
|
4762
|
+
type: "boolean"
|
|
4763
|
+
},
|
|
4764
|
+
minItems: {
|
|
4765
|
+
description: "Minimum items restriction.\n\nRestriction of minimum number of items in the array.\n\n\n@minimum 0",
|
|
4766
|
+
type: "integer"
|
|
4767
|
+
},
|
|
4768
|
+
maxItems: {
|
|
4769
|
+
description: "Maximum items restriction.\n\nRestriction of maximum number of items in the array.\n\n\n@minimum 0",
|
|
4770
|
+
type: "integer"
|
|
4771
|
+
},
|
|
4772
|
+
type: {
|
|
4773
|
+
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.",
|
|
4774
|
+
type: "string",
|
|
4775
|
+
"enum": [
|
|
4776
|
+
"array"
|
|
4777
|
+
]
|
|
4778
|
+
}
|
|
4779
|
+
},
|
|
4780
|
+
required: [
|
|
4781
|
+
"items",
|
|
4782
|
+
"type"
|
|
4783
|
+
]
|
|
4784
|
+
},
|
|
4785
|
+
"AutoBeOpenApi.IJsonSchema.IObject": {
|
|
4786
|
+
description: "Object type info.",
|
|
4787
|
+
type: "object",
|
|
4788
|
+
properties: {
|
|
4789
|
+
"x-autobe-prisma-schema": {
|
|
4790
|
+
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.",
|
|
4791
|
+
anyOf: [
|
|
4792
|
+
{
|
|
4793
|
+
type: "null"
|
|
4794
|
+
},
|
|
4795
|
+
{
|
|
4796
|
+
type: "string"
|
|
4797
|
+
}
|
|
4798
|
+
]
|
|
4799
|
+
},
|
|
4800
|
+
properties: {
|
|
4801
|
+
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.",
|
|
4802
|
+
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
4803
|
+
},
|
|
4804
|
+
additionalProperties: {
|
|
4805
|
+
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>`",
|
|
4806
|
+
anyOf: [
|
|
4807
|
+
{
|
|
4808
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
4809
|
+
},
|
|
4810
|
+
{
|
|
4811
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
4812
|
+
},
|
|
4813
|
+
{
|
|
4814
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
4815
|
+
},
|
|
4816
|
+
{
|
|
4817
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
4818
|
+
},
|
|
4819
|
+
{
|
|
4820
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
4821
|
+
},
|
|
4822
|
+
{
|
|
4823
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
4824
|
+
},
|
|
4825
|
+
{
|
|
4826
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
4827
|
+
},
|
|
4828
|
+
{
|
|
4829
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
4830
|
+
},
|
|
4831
|
+
{
|
|
4832
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
4833
|
+
},
|
|
4834
|
+
{
|
|
4835
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf"
|
|
4836
|
+
},
|
|
4837
|
+
{
|
|
4838
|
+
type: "boolean",
|
|
4839
|
+
"enum": [
|
|
4840
|
+
false
|
|
4841
|
+
]
|
|
4842
|
+
}
|
|
4843
|
+
]
|
|
4844
|
+
},
|
|
4845
|
+
required: {
|
|
4846
|
+
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```",
|
|
4847
|
+
type: "array",
|
|
4848
|
+
items: {
|
|
4849
|
+
type: "string"
|
|
4850
|
+
}
|
|
4851
|
+
},
|
|
4852
|
+
type: {
|
|
4853
|
+
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.",
|
|
4854
|
+
type: "string",
|
|
4855
|
+
"enum": [
|
|
4856
|
+
"object"
|
|
4857
|
+
]
|
|
4858
|
+
}
|
|
4859
|
+
},
|
|
4860
|
+
required: [
|
|
4861
|
+
"properties",
|
|
4862
|
+
"required",
|
|
4863
|
+
"type"
|
|
4864
|
+
]
|
|
4865
|
+
},
|
|
4866
|
+
"AutoBeOpenApi.IJsonSchema.INull": {
|
|
4867
|
+
description: "Null type.",
|
|
4868
|
+
type: "object",
|
|
4869
|
+
properties: {
|
|
4870
|
+
type: {
|
|
4871
|
+
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.",
|
|
4872
|
+
type: "string",
|
|
4873
|
+
"enum": [
|
|
4874
|
+
"null"
|
|
4875
|
+
]
|
|
4876
|
+
}
|
|
4877
|
+
},
|
|
4878
|
+
required: [
|
|
4879
|
+
"type"
|
|
4880
|
+
]
|
|
4881
|
+
},
|
|
4882
|
+
"AutoBeOpenApi.IJsonSchema.IReference": {
|
|
4883
|
+
description: "Reference type directing named schema.",
|
|
4884
|
+
type: "object",
|
|
4885
|
+
properties: {
|
|
4886
|
+
$ref: {
|
|
4887
|
+
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`",
|
|
4888
|
+
type: "string"
|
|
4889
|
+
}
|
|
4890
|
+
},
|
|
4891
|
+
required: [
|
|
4892
|
+
"$ref"
|
|
4893
|
+
]
|
|
4894
|
+
},
|
|
4895
|
+
"AutoBeOpenApi.IJsonSchema.IOneOf": {
|
|
4896
|
+
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.",
|
|
4897
|
+
type: "object",
|
|
4898
|
+
properties: {
|
|
4899
|
+
oneOf: {
|
|
4900
|
+
description: "List of the union types.",
|
|
4901
|
+
type: "array",
|
|
4902
|
+
items: {
|
|
4903
|
+
anyOf: [
|
|
4904
|
+
{
|
|
4905
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
4906
|
+
},
|
|
4907
|
+
{
|
|
4908
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
4909
|
+
},
|
|
4910
|
+
{
|
|
4911
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
4912
|
+
},
|
|
4913
|
+
{
|
|
4914
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
4915
|
+
},
|
|
4916
|
+
{
|
|
4917
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
4918
|
+
},
|
|
4919
|
+
{
|
|
4920
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
4921
|
+
},
|
|
4922
|
+
{
|
|
4923
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
4924
|
+
},
|
|
4925
|
+
{
|
|
4926
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
4927
|
+
},
|
|
4928
|
+
{
|
|
4929
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
4930
|
+
}
|
|
4931
|
+
]
|
|
4932
|
+
}
|
|
4933
|
+
},
|
|
4934
|
+
discriminator: {
|
|
4935
|
+
description: "Discriminator info of the union type.",
|
|
4936
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator"
|
|
4937
|
+
}
|
|
4938
|
+
},
|
|
4939
|
+
required: [
|
|
4940
|
+
"oneOf"
|
|
4941
|
+
]
|
|
4942
|
+
},
|
|
4943
|
+
"AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator": {
|
|
4944
|
+
description: "Discriminator info of the union type.",
|
|
4945
|
+
type: "object",
|
|
4946
|
+
properties: {
|
|
4947
|
+
propertyName: {
|
|
4948
|
+
description: "Property name for the discriminator.",
|
|
4949
|
+
type: "string"
|
|
4950
|
+
},
|
|
4951
|
+
mapping: {
|
|
4952
|
+
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`.",
|
|
4953
|
+
$ref: "#/$defs/Recordstringstring"
|
|
4954
|
+
}
|
|
4955
|
+
},
|
|
4956
|
+
required: [
|
|
4957
|
+
"propertyName"
|
|
4958
|
+
]
|
|
4959
|
+
},
|
|
4960
|
+
Recordstringstring: {
|
|
4961
|
+
description: "Construct a type with a set of properties K of type T",
|
|
4962
|
+
type: "object",
|
|
4963
|
+
properties: {},
|
|
4964
|
+
required: [],
|
|
4965
|
+
additionalProperties: {
|
|
4966
|
+
type: "string"
|
|
4967
|
+
}
|
|
4968
|
+
},
|
|
4969
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IObject": {
|
|
4970
|
+
description: "Object type info.",
|
|
4971
|
+
type: "object",
|
|
4972
|
+
properties: {
|
|
4973
|
+
"x-autobe-prisma-schema": {
|
|
4974
|
+
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.",
|
|
4975
|
+
anyOf: [
|
|
4976
|
+
{
|
|
4977
|
+
type: "null"
|
|
4978
|
+
},
|
|
4979
|
+
{
|
|
4980
|
+
type: "string"
|
|
4981
|
+
}
|
|
4982
|
+
]
|
|
4983
|
+
},
|
|
4984
|
+
properties: {
|
|
4985
|
+
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.",
|
|
4986
|
+
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
4987
|
+
},
|
|
4988
|
+
additionalProperties: {
|
|
4989
|
+
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>`",
|
|
4990
|
+
anyOf: [
|
|
4991
|
+
{
|
|
4992
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
4993
|
+
},
|
|
4994
|
+
{
|
|
4995
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
4996
|
+
},
|
|
4997
|
+
{
|
|
4998
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
4999
|
+
},
|
|
5000
|
+
{
|
|
5001
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
5002
|
+
},
|
|
5003
|
+
{
|
|
5004
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
5005
|
+
},
|
|
5006
|
+
{
|
|
5007
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
5008
|
+
},
|
|
5009
|
+
{
|
|
5010
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
5011
|
+
},
|
|
5012
|
+
{
|
|
5013
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
5014
|
+
},
|
|
5015
|
+
{
|
|
5016
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
5017
|
+
},
|
|
5018
|
+
{
|
|
5019
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf"
|
|
5020
|
+
},
|
|
5021
|
+
{
|
|
5022
|
+
type: "boolean",
|
|
5023
|
+
"enum": [
|
|
5024
|
+
false
|
|
5025
|
+
]
|
|
5026
|
+
}
|
|
5027
|
+
]
|
|
5028
|
+
},
|
|
5029
|
+
required: {
|
|
5030
|
+
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```",
|
|
5031
|
+
type: "array",
|
|
5032
|
+
items: {
|
|
5033
|
+
type: "string"
|
|
5034
|
+
}
|
|
5035
|
+
},
|
|
5036
|
+
type: {
|
|
5037
|
+
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.",
|
|
5038
|
+
type: "string",
|
|
5039
|
+
"enum": [
|
|
5040
|
+
"object"
|
|
5041
|
+
]
|
|
5042
|
+
},
|
|
5043
|
+
description: {
|
|
5044
|
+
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.",
|
|
5045
|
+
type: "string"
|
|
5046
|
+
}
|
|
5047
|
+
},
|
|
5048
|
+
required: [
|
|
5049
|
+
"properties",
|
|
5050
|
+
"required",
|
|
5051
|
+
"type",
|
|
5052
|
+
"description"
|
|
5053
|
+
]
|
|
5054
|
+
},
|
|
5055
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IReference": {
|
|
5056
|
+
description: "Reference type directing named schema.",
|
|
5057
|
+
type: "object",
|
|
5058
|
+
properties: {
|
|
5059
|
+
$ref: {
|
|
5060
|
+
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`",
|
|
5061
|
+
type: "string"
|
|
5062
|
+
},
|
|
5063
|
+
description: {
|
|
5064
|
+
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.",
|
|
5065
|
+
type: "string"
|
|
5066
|
+
}
|
|
5067
|
+
},
|
|
5068
|
+
required: [
|
|
5069
|
+
"$ref",
|
|
5070
|
+
"description"
|
|
5071
|
+
]
|
|
5072
|
+
},
|
|
5073
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IOneOf": {
|
|
5074
|
+
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.",
|
|
5075
|
+
type: "object",
|
|
5076
|
+
properties: {
|
|
5077
|
+
oneOf: {
|
|
5078
|
+
description: "List of the union types.",
|
|
5079
|
+
type: "array",
|
|
5080
|
+
items: {
|
|
5081
|
+
anyOf: [
|
|
5082
|
+
{
|
|
5083
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
5084
|
+
},
|
|
5085
|
+
{
|
|
5086
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
5087
|
+
},
|
|
5088
|
+
{
|
|
5089
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
5090
|
+
},
|
|
5091
|
+
{
|
|
5092
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
5093
|
+
},
|
|
5094
|
+
{
|
|
5095
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
5096
|
+
},
|
|
5097
|
+
{
|
|
5098
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
5099
|
+
},
|
|
5100
|
+
{
|
|
5101
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
5102
|
+
},
|
|
5103
|
+
{
|
|
5104
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
5105
|
+
},
|
|
5106
|
+
{
|
|
5107
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
5108
|
+
}
|
|
5109
|
+
]
|
|
5110
|
+
}
|
|
5111
|
+
},
|
|
5112
|
+
discriminator: {
|
|
5113
|
+
description: "Discriminator info of the union type.",
|
|
5114
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator"
|
|
5115
|
+
},
|
|
5116
|
+
description: {
|
|
5117
|
+
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.",
|
|
5118
|
+
type: "string"
|
|
5119
|
+
}
|
|
5120
|
+
},
|
|
5121
|
+
required: [
|
|
5122
|
+
"oneOf",
|
|
5123
|
+
"description"
|
|
5124
|
+
]
|
|
5125
|
+
},
|
|
5126
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.INull": {
|
|
5127
|
+
description: "Null type.",
|
|
5128
|
+
type: "object",
|
|
5129
|
+
properties: {
|
|
5130
|
+
type: {
|
|
5131
|
+
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.",
|
|
5132
|
+
type: "string",
|
|
5133
|
+
"enum": [
|
|
5134
|
+
"null"
|
|
5135
|
+
]
|
|
5136
|
+
},
|
|
5137
|
+
description: {
|
|
5138
|
+
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.",
|
|
5139
|
+
type: "string"
|
|
5140
|
+
}
|
|
5141
|
+
},
|
|
5142
|
+
required: [
|
|
5143
|
+
"type",
|
|
5144
|
+
"description"
|
|
5145
|
+
]
|
|
5146
|
+
}
|
|
5147
|
+
}
|
|
5148
|
+
},
|
|
5149
|
+
description: "Reviews and validates DTO content completeness and consistency in OpenAPI\nschemas.\n\nThis specialized content review function focuses exclusively on ensuring\nDTOs accurately and completely represent their business entities. It\nvalidates field completeness, type accuracy, required field settings, and\ndocumentation quality.\n\nThe review process validates and corrects:\n\n- Field completeness against Prisma schema\n- Data type accuracy (Prisma to OpenAPI type mappings)\n- Required field arrays matching Prisma nullability\n- Description quality and comprehensiveness\n- Consistency across DTO variants (IEntity, ICreate, IUpdate, ISummary)\n- Missing variant detection and creation",
|
|
5150
|
+
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.think && null !== input.think && _io1(input.think) && ("object" === typeof input.content && null !== input.content && false === Array.isArray(input.content) && _io2(input.content)); const _io1 = input => "string" === typeof input.review && "string" === typeof input.plan; const _io2 = input => Object.keys(input).every(key => {
|
|
5151
|
+
const value = input[key];
|
|
5152
|
+
if (undefined === value)
|
|
5153
|
+
return true;
|
|
5154
|
+
return "object" === typeof value && null !== value && _iu1(value);
|
|
5155
|
+
}); const _io3 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io4 = input => "boolean" === input.type && "string" === typeof input.description; const _io5 = 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 _io6 = 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 _io7 = 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 _io8 = 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 _io9 = 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 _io10 = 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 _io11 = 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 _io12 = input => "string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]; const _io13 = input => "boolean" === input.type; const _io14 = 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 _io15 = 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) && _io2(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 _io16 = input => "string" === typeof input.$ref; const _io17 = 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 && _io19(input.discriminator)); const _io18 = input => "null" === input.type; const _io19 = input => "string" === typeof input.propertyName && (undefined === input.mapping || "object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) && _io20(input.mapping)); const _io20 = input => Object.keys(input).every(key => {
|
|
5156
|
+
const value = input[key];
|
|
5157
|
+
if (undefined === value)
|
|
5158
|
+
return true;
|
|
5159
|
+
return "string" === typeof value;
|
|
5160
|
+
}); const _io21 = 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) && _io2(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 _io22 = input => "string" === typeof input.$ref && "string" === typeof input.description; const _io23 = 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 && _io19(input.discriminator)) && "string" === typeof input.description; const _io24 = input => "null" === input.type && "string" === typeof input.description; const _iu0 = input => (() => {
|
|
5161
|
+
if ("number" === input.type)
|
|
5162
|
+
return _io10(input);
|
|
5163
|
+
else if ("integer" === input.type)
|
|
5164
|
+
return _io9(input);
|
|
5165
|
+
else if ("string" === input.type)
|
|
5166
|
+
return _io11(input);
|
|
5167
|
+
else if (undefined !== input["const"])
|
|
5168
|
+
return _io12(input);
|
|
5169
|
+
else if ("null" === input.type)
|
|
5170
|
+
return _io18(input);
|
|
5171
|
+
else if ("boolean" === input.type)
|
|
5172
|
+
return _io13(input);
|
|
5173
|
+
else if ("array" === input.type)
|
|
5174
|
+
return _io14(input);
|
|
5175
|
+
else if ("object" === input.type)
|
|
5176
|
+
return _io15(input);
|
|
5177
|
+
else if (undefined !== input.$ref)
|
|
5178
|
+
return _io16(input);
|
|
5179
|
+
else
|
|
5180
|
+
return false;
|
|
5181
|
+
})(); const _iu1 = input => (() => {
|
|
5182
|
+
if (undefined !== input["const"])
|
|
5183
|
+
return _io3(input);
|
|
5184
|
+
else if ("boolean" === input.type)
|
|
5185
|
+
return _io4(input);
|
|
5186
|
+
else if ("number" === input.type)
|
|
5187
|
+
return _io6(input);
|
|
5188
|
+
else if ("integer" === input.type)
|
|
5189
|
+
return _io5(input);
|
|
5190
|
+
else if ("string" === input.type)
|
|
5191
|
+
return _io7(input);
|
|
5192
|
+
else if ("array" === input.type)
|
|
5193
|
+
return _io8(input);
|
|
5194
|
+
else if ("object" === input.type)
|
|
5195
|
+
return _io21(input);
|
|
5196
|
+
else if (undefined !== input.$ref)
|
|
5197
|
+
return _io22(input);
|
|
5198
|
+
else if (undefined !== input.oneOf)
|
|
5199
|
+
return _io23(input);
|
|
5200
|
+
else if ("null" === input.type)
|
|
5201
|
+
return _io24(input);
|
|
5202
|
+
else
|
|
5203
|
+
return false;
|
|
5204
|
+
})(); const _iu2 = input => (() => {
|
|
5205
|
+
if ("number" === input.type)
|
|
5206
|
+
return _io10(input);
|
|
5207
|
+
else if ("integer" === input.type)
|
|
5208
|
+
return _io9(input);
|
|
5209
|
+
else if ("string" === input.type)
|
|
5210
|
+
return _io11(input);
|
|
5211
|
+
else if (undefined !== input["const"])
|
|
5212
|
+
return _io12(input);
|
|
5213
|
+
else if ("null" === input.type)
|
|
5214
|
+
return _io18(input);
|
|
5215
|
+
else if ("boolean" === input.type)
|
|
5216
|
+
return _io13(input);
|
|
5217
|
+
else if ("array" === input.type)
|
|
5218
|
+
return _io14(input);
|
|
5219
|
+
else if ("object" === input.type)
|
|
5220
|
+
return _io15(input);
|
|
5221
|
+
else if (undefined !== input.$ref)
|
|
5222
|
+
return _io16(input);
|
|
5223
|
+
else if (undefined !== input.oneOf)
|
|
5224
|
+
return _io17(input);
|
|
5225
|
+
else
|
|
5226
|
+
return false;
|
|
5227
|
+
})(); const _vo0 = (input, _path, _exceptionable = true) => [("object" === typeof input.think && null !== input.think || _report(_exceptionable, {
|
|
5228
|
+
path: _path + ".think",
|
|
5229
|
+
expected: "IAutoBeInterfaceSchemaContentReviewApplication.IThink",
|
|
5230
|
+
value: input.think
|
|
5231
|
+
})) && _vo1(input.think, _path + ".think", true && _exceptionable) || _report(_exceptionable, {
|
|
5232
|
+
path: _path + ".think",
|
|
5233
|
+
expected: "IAutoBeInterfaceSchemaContentReviewApplication.IThink",
|
|
5234
|
+
value: input.think
|
|
5235
|
+
}), ("object" === typeof input.content && null !== input.content && false === Array.isArray(input.content) || _report(_exceptionable, {
|
|
5236
|
+
path: _path + ".content",
|
|
5237
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
5238
|
+
value: input.content
|
|
5239
|
+
})) && _vo2(input.content, _path + ".content", true && _exceptionable) || _report(_exceptionable, {
|
|
5240
|
+
path: _path + ".content",
|
|
5241
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
5242
|
+
value: input.content
|
|
5243
|
+
})].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["string" === typeof input.review || _report(_exceptionable, {
|
|
5244
|
+
path: _path + ".review",
|
|
5245
|
+
expected: "string",
|
|
5246
|
+
value: input.review
|
|
5247
|
+
}), "string" === typeof input.plan || _report(_exceptionable, {
|
|
5248
|
+
path: _path + ".plan",
|
|
5249
|
+
expected: "string",
|
|
5250
|
+
value: input.plan
|
|
5251
|
+
})].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
|
|
5252
|
+
const value = input[key];
|
|
5253
|
+
if (undefined === value)
|
|
5254
|
+
return true;
|
|
5255
|
+
return ("object" === typeof value && null !== value || _report(_exceptionable, {
|
|
5256
|
+
path: _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key),
|
|
5257
|
+
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)",
|
|
5258
|
+
value: value
|
|
5259
|
+
})) && _vu1(value, _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key), true && _exceptionable) || _report(_exceptionable, {
|
|
5260
|
+
path: _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key),
|
|
5261
|
+
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)",
|
|
5262
|
+
value: value
|
|
5263
|
+
});
|
|
5264
|
+
}).every(flag => flag)].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"] || _report(_exceptionable, {
|
|
5265
|
+
path: _path + "[\"const\"]",
|
|
5266
|
+
expected: "(boolean | number | string)",
|
|
5267
|
+
value: input["const"]
|
|
5268
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
5269
|
+
path: _path + ".description",
|
|
5270
|
+
expected: "string",
|
|
5271
|
+
value: input.description
|
|
5272
|
+
})].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["boolean" === input.type || _report(_exceptionable, {
|
|
5273
|
+
path: _path + ".type",
|
|
5274
|
+
expected: "\"boolean\"",
|
|
5275
|
+
value: input.type
|
|
5276
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
5277
|
+
path: _path + ".description",
|
|
5278
|
+
expected: "string",
|
|
5279
|
+
value: input.description
|
|
5280
|
+
})].every(flag => flag); const _vo5 = (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, {
|
|
5281
|
+
path: _path + ".minimum",
|
|
5282
|
+
expected: "number & Type<\"int64\">",
|
|
5283
|
+
value: input.minimum
|
|
5284
|
+
})) || _report(_exceptionable, {
|
|
5285
|
+
path: _path + ".minimum",
|
|
5286
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
5287
|
+
value: input.minimum
|
|
5288
|
+
}), undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000 || _report(_exceptionable, {
|
|
5289
|
+
path: _path + ".maximum",
|
|
5290
|
+
expected: "number & Type<\"int64\">",
|
|
5291
|
+
value: input.maximum
|
|
5292
|
+
})) || _report(_exceptionable, {
|
|
5293
|
+
path: _path + ".maximum",
|
|
5294
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
5295
|
+
value: input.maximum
|
|
5296
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
5297
|
+
path: _path + ".exclusiveMinimum",
|
|
5298
|
+
expected: "(number | undefined)",
|
|
5299
|
+
value: input.exclusiveMinimum
|
|
5300
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
5301
|
+
path: _path + ".exclusiveMaximum",
|
|
5302
|
+
expected: "(number | undefined)",
|
|
5303
|
+
value: input.exclusiveMaximum
|
|
5304
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 || _report(_exceptionable, {
|
|
5305
|
+
path: _path + ".multipleOf",
|
|
5306
|
+
expected: "number & Type<\"uint64\">",
|
|
5307
|
+
value: input.multipleOf
|
|
5308
|
+
})) && (0 < input.multipleOf || _report(_exceptionable, {
|
|
5309
|
+
path: _path + ".multipleOf",
|
|
5310
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
5311
|
+
value: input.multipleOf
|
|
5312
|
+
})) || _report(_exceptionable, {
|
|
5313
|
+
path: _path + ".multipleOf",
|
|
5314
|
+
expected: "((number & Type<\"uint64\"> & ExclusiveMinimum<0>) | undefined)",
|
|
5315
|
+
value: input.multipleOf
|
|
5316
|
+
}), "integer" === input.type || _report(_exceptionable, {
|
|
5317
|
+
path: _path + ".type",
|
|
5318
|
+
expected: "\"integer\"",
|
|
5319
|
+
value: input.type
|
|
5320
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
5321
|
+
path: _path + ".description",
|
|
5322
|
+
expected: "string",
|
|
5323
|
+
value: input.description
|
|
5324
|
+
})].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum || _report(_exceptionable, {
|
|
5325
|
+
path: _path + ".minimum",
|
|
5326
|
+
expected: "(number | undefined)",
|
|
5327
|
+
value: input.minimum
|
|
5328
|
+
}), undefined === input.maximum || "number" === typeof input.maximum || _report(_exceptionable, {
|
|
5329
|
+
path: _path + ".maximum",
|
|
5330
|
+
expected: "(number | undefined)",
|
|
5331
|
+
value: input.maximum
|
|
5332
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
5333
|
+
path: _path + ".exclusiveMinimum",
|
|
5334
|
+
expected: "(number | undefined)",
|
|
5335
|
+
value: input.exclusiveMinimum
|
|
5336
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
5337
|
+
path: _path + ".exclusiveMaximum",
|
|
5338
|
+
expected: "(number | undefined)",
|
|
5339
|
+
value: input.exclusiveMaximum
|
|
5340
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (0 < input.multipleOf || _report(_exceptionable, {
|
|
5341
|
+
path: _path + ".multipleOf",
|
|
5342
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
5343
|
+
value: input.multipleOf
|
|
5344
|
+
})) || _report(_exceptionable, {
|
|
5345
|
+
path: _path + ".multipleOf",
|
|
5346
|
+
expected: "((number & ExclusiveMinimum<0>) | undefined)",
|
|
5347
|
+
value: input.multipleOf
|
|
5348
|
+
}), "number" === input.type || _report(_exceptionable, {
|
|
5349
|
+
path: _path + ".type",
|
|
5350
|
+
expected: "\"number\"",
|
|
5351
|
+
value: input.type
|
|
5352
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
5353
|
+
path: _path + ".description",
|
|
5354
|
+
expected: "string",
|
|
5355
|
+
value: input.description
|
|
5356
|
+
})].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv7.has(input.format) || _report(_exceptionable, {
|
|
5357
|
+
path: _path + ".format",
|
|
5358
|
+
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)",
|
|
5359
|
+
value: input.format
|
|
5360
|
+
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
5361
|
+
path: _path + ".pattern",
|
|
5362
|
+
expected: "(string | undefined)",
|
|
5363
|
+
value: input.pattern
|
|
5364
|
+
}), undefined === input.contentMediaType || "string" === typeof input.contentMediaType || _report(_exceptionable, {
|
|
5365
|
+
path: _path + ".contentMediaType",
|
|
5366
|
+
expected: "(string | undefined)",
|
|
5367
|
+
value: input.contentMediaType
|
|
5368
|
+
}), undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
5369
|
+
path: _path + ".minLength",
|
|
5370
|
+
expected: "number & Type<\"uint64\">",
|
|
5371
|
+
value: input.minLength
|
|
5372
|
+
})) || _report(_exceptionable, {
|
|
5373
|
+
path: _path + ".minLength",
|
|
5374
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
5375
|
+
value: input.minLength
|
|
5376
|
+
}), undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
5377
|
+
path: _path + ".maxLength",
|
|
5378
|
+
expected: "number & Type<\"uint64\">",
|
|
5379
|
+
value: input.maxLength
|
|
5380
|
+
})) || _report(_exceptionable, {
|
|
5381
|
+
path: _path + ".maxLength",
|
|
5382
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
5383
|
+
value: input.maxLength
|
|
5384
|
+
}), "string" === input.type || _report(_exceptionable, {
|
|
5385
|
+
path: _path + ".type",
|
|
5386
|
+
expected: "\"string\"",
|
|
5387
|
+
value: input.type
|
|
5388
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
5389
|
+
path: _path + ".description",
|
|
5390
|
+
expected: "string",
|
|
5391
|
+
value: input.description
|
|
5392
|
+
})].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => [("object" === typeof input.items && null !== input.items || _report(_exceptionable, {
|
|
5393
|
+
path: _path + ".items",
|
|
5394
|
+
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)",
|
|
5395
|
+
value: input.items
|
|
5396
|
+
})) && _vu2(input.items, _path + ".items", true && _exceptionable) || _report(_exceptionable, {
|
|
5397
|
+
path: _path + ".items",
|
|
5398
|
+
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)",
|
|
5399
|
+
value: input.items
|
|
5400
|
+
}), undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems || _report(_exceptionable, {
|
|
5401
|
+
path: _path + ".uniqueItems",
|
|
5402
|
+
expected: "(boolean | undefined)",
|
|
5403
|
+
value: input.uniqueItems
|
|
5404
|
+
}), undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
5405
|
+
path: _path + ".minItems",
|
|
5406
|
+
expected: "number & Type<\"uint64\">",
|
|
5407
|
+
value: input.minItems
|
|
5408
|
+
})) || _report(_exceptionable, {
|
|
5409
|
+
path: _path + ".minItems",
|
|
5410
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
5411
|
+
value: input.minItems
|
|
5412
|
+
}), undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
5413
|
+
path: _path + ".maxItems",
|
|
5414
|
+
expected: "number & Type<\"uint64\">",
|
|
5415
|
+
value: input.maxItems
|
|
5416
|
+
})) || _report(_exceptionable, {
|
|
5417
|
+
path: _path + ".maxItems",
|
|
5418
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
5419
|
+
value: input.maxItems
|
|
5420
|
+
}), "array" === input.type || _report(_exceptionable, {
|
|
5421
|
+
path: _path + ".type",
|
|
5422
|
+
expected: "\"array\"",
|
|
5423
|
+
value: input.type
|
|
5424
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
5425
|
+
path: _path + ".description",
|
|
5426
|
+
expected: "string",
|
|
5427
|
+
value: input.description
|
|
5428
|
+
})].every(flag => flag); const _vo9 = (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, {
|
|
5429
|
+
path: _path + ".minimum",
|
|
5430
|
+
expected: "number & Type<\"int64\">",
|
|
5431
|
+
value: input.minimum
|
|
5432
|
+
})) || _report(_exceptionable, {
|
|
5433
|
+
path: _path + ".minimum",
|
|
5434
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
5435
|
+
value: input.minimum
|
|
5436
|
+
}), undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000 || _report(_exceptionable, {
|
|
5437
|
+
path: _path + ".maximum",
|
|
5438
|
+
expected: "number & Type<\"int64\">",
|
|
5439
|
+
value: input.maximum
|
|
5440
|
+
})) || _report(_exceptionable, {
|
|
5441
|
+
path: _path + ".maximum",
|
|
5442
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
5443
|
+
value: input.maximum
|
|
5444
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
5445
|
+
path: _path + ".exclusiveMinimum",
|
|
5446
|
+
expected: "(number | undefined)",
|
|
5447
|
+
value: input.exclusiveMinimum
|
|
5448
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
5449
|
+
path: _path + ".exclusiveMaximum",
|
|
5450
|
+
expected: "(number | undefined)",
|
|
5451
|
+
value: input.exclusiveMaximum
|
|
5452
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 || _report(_exceptionable, {
|
|
5453
|
+
path: _path + ".multipleOf",
|
|
5454
|
+
expected: "number & Type<\"uint64\">",
|
|
5455
|
+
value: input.multipleOf
|
|
5456
|
+
})) && (0 < input.multipleOf || _report(_exceptionable, {
|
|
5457
|
+
path: _path + ".multipleOf",
|
|
5458
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
5459
|
+
value: input.multipleOf
|
|
5460
|
+
})) || _report(_exceptionable, {
|
|
5461
|
+
path: _path + ".multipleOf",
|
|
5462
|
+
expected: "((number & Type<\"uint64\"> & ExclusiveMinimum<0>) | undefined)",
|
|
5463
|
+
value: input.multipleOf
|
|
5464
|
+
}), "integer" === input.type || _report(_exceptionable, {
|
|
5465
|
+
path: _path + ".type",
|
|
5466
|
+
expected: "\"integer\"",
|
|
5467
|
+
value: input.type
|
|
5468
|
+
})].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum || _report(_exceptionable, {
|
|
5469
|
+
path: _path + ".minimum",
|
|
5470
|
+
expected: "(number | undefined)",
|
|
5471
|
+
value: input.minimum
|
|
5472
|
+
}), undefined === input.maximum || "number" === typeof input.maximum || _report(_exceptionable, {
|
|
5473
|
+
path: _path + ".maximum",
|
|
5474
|
+
expected: "(number | undefined)",
|
|
5475
|
+
value: input.maximum
|
|
5476
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
5477
|
+
path: _path + ".exclusiveMinimum",
|
|
5478
|
+
expected: "(number | undefined)",
|
|
5479
|
+
value: input.exclusiveMinimum
|
|
5480
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
5481
|
+
path: _path + ".exclusiveMaximum",
|
|
5482
|
+
expected: "(number | undefined)",
|
|
5483
|
+
value: input.exclusiveMaximum
|
|
5484
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (0 < input.multipleOf || _report(_exceptionable, {
|
|
5485
|
+
path: _path + ".multipleOf",
|
|
5486
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
5487
|
+
value: input.multipleOf
|
|
5488
|
+
})) || _report(_exceptionable, {
|
|
5489
|
+
path: _path + ".multipleOf",
|
|
5490
|
+
expected: "((number & ExclusiveMinimum<0>) | undefined)",
|
|
5491
|
+
value: input.multipleOf
|
|
5492
|
+
}), "number" === input.type || _report(_exceptionable, {
|
|
5493
|
+
path: _path + ".type",
|
|
5494
|
+
expected: "\"number\"",
|
|
5495
|
+
value: input.type
|
|
5496
|
+
})].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => [undefined === input.format || true === _vv8.has(input.format) || _report(_exceptionable, {
|
|
5497
|
+
path: _path + ".format",
|
|
5498
|
+
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)",
|
|
3672
5499
|
value: input.format
|
|
3673
5500
|
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
3674
5501
|
path: _path + ".pattern",
|
|
@@ -3766,8 +5593,8 @@ const collection = {
|
|
|
3766
5593
|
path: _path + ".required",
|
|
3767
5594
|
expected: "Array<string>",
|
|
3768
5595
|
value: input.required
|
|
3769
|
-
})) && input.required.map((elem,
|
|
3770
|
-
path: _path + ".required[" +
|
|
5596
|
+
})) && input.required.map((elem, _index9) => "string" === typeof elem || _report(_exceptionable, {
|
|
5597
|
+
path: _path + ".required[" + _index9 + "]",
|
|
3771
5598
|
expected: "string",
|
|
3772
5599
|
value: elem
|
|
3773
5600
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -3786,12 +5613,12 @@ const collection = {
|
|
|
3786
5613
|
path: _path + ".oneOf",
|
|
3787
5614
|
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
3788
5615
|
value: input.oneOf
|
|
3789
|
-
})) && input.oneOf.map((elem,
|
|
3790
|
-
path: _path + ".oneOf[" +
|
|
5616
|
+
})) && input.oneOf.map((elem, _index10) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
5617
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
3791
5618
|
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)",
|
|
3792
5619
|
value: elem
|
|
3793
|
-
})) && _vu0(elem, _path + ".oneOf[" +
|
|
3794
|
-
path: _path + ".oneOf[" +
|
|
5620
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index10 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
5621
|
+
path: _path + ".oneOf[" + _index10 + "]",
|
|
3795
5622
|
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)",
|
|
3796
5623
|
value: elem
|
|
3797
5624
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -3859,8 +5686,8 @@ const collection = {
|
|
|
3859
5686
|
path: _path + ".required",
|
|
3860
5687
|
expected: "Array<string>",
|
|
3861
5688
|
value: input.required
|
|
3862
|
-
})) && input.required.map((elem,
|
|
3863
|
-
path: _path + ".required[" +
|
|
5689
|
+
})) && input.required.map((elem, _index11) => "string" === typeof elem || _report(_exceptionable, {
|
|
5690
|
+
path: _path + ".required[" + _index11 + "]",
|
|
3864
5691
|
expected: "string",
|
|
3865
5692
|
value: elem
|
|
3866
5693
|
})).every(flag => flag) || _report(_exceptionable, {
|
|
@@ -3887,12 +5714,12 @@ const collection = {
|
|
|
3887
5714
|
path: _path + ".oneOf",
|
|
3888
5715
|
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
3889
5716
|
value: input.oneOf
|
|
3890
|
-
})) && input.oneOf.map((elem,
|
|
3891
|
-
path: _path + ".oneOf[" +
|
|
5717
|
+
})) && input.oneOf.map((elem, _index12) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
5718
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
3892
5719
|
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)",
|
|
3893
5720
|
value: elem
|
|
3894
|
-
})) && _vu0(elem, _path + ".oneOf[" +
|
|
3895
|
-
path: _path + ".oneOf[" +
|
|
5721
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index12 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
5722
|
+
path: _path + ".oneOf[" + _index12 + "]",
|
|
3896
5723
|
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)",
|
|
3897
5724
|
value: elem
|
|
3898
5725
|
})).every(flag => flag) || _report(_exceptionable, {
|