@autobe/agent 0.21.0 → 0.22.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/agent/src/AutoBeAgent.js +2 -2
- package/lib/agent/src/AutoBeAgent.js.map +1 -1
- package/lib/agent/src/constants/AutoBeConfigConstant.d.ts +3 -0
- package/lib/agent/src/{orchestrate/realize/structures/IAutoBeRealizeScenarioApplication.js → constants/AutoBeConfigConstant.js} +1 -1
- package/lib/agent/src/constants/AutoBeConfigConstant.js.map +1 -0
- package/lib/agent/src/constants/AutoBeSystemPromptConstant.d.ts +27 -27
- package/lib/agent/src/context/AutoBeContext.d.ts +1 -0
- package/lib/agent/src/context/AutoBeTokenUsageComponent.js +4 -3
- package/lib/agent/src/context/AutoBeTokenUsageComponent.js.map +1 -1
- package/lib/agent/src/factory/consentFunctionCall.js +4 -4
- package/lib/agent/src/factory/consentFunctionCall.js.map +1 -1
- package/lib/agent/src/factory/createAutoBeContext.js +13 -10
- package/lib/agent/src/factory/createAutoBeContext.js.map +1 -1
- package/lib/agent/src/orchestrate/analyze/histories/transformAnalyzeReviewHistories.js +1 -1
- package/lib/agent/src/orchestrate/analyze/histories/transformAnalyzeReviewHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.js +2 -2
- package/lib/agent/src/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/analyze/histories/transformAnalyzeWriteHistories.js +1 -1
- package/lib/agent/src/orchestrate/analyze/histories/transformAnalyzeWriteHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/analyze/orchestrateAnalyzeReview.js +6 -6
- package/lib/agent/src/orchestrate/analyze/orchestrateAnalyzeScenario.js +50 -8
- package/lib/agent/src/orchestrate/analyze/orchestrateAnalyzeScenario.js.map +1 -1
- package/lib/agent/src/orchestrate/analyze/orchestrateAnalyzeWrite.js +4 -4
- package/lib/agent/src/orchestrate/analyze/structures/IAutoBeAnalyzeReviewApplication.d.ts +6 -0
- package/lib/agent/src/orchestrate/analyze/structures/IAutoBeAnalyzeWriteApplication.d.ts +4 -0
- package/lib/agent/src/orchestrate/facade/transformFacadeStateMessage.js +1 -1
- package/lib/agent/src/orchestrate/facade/transformFacadeStateMessage.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.js +19 -1
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceComplementHistories.js +3 -3
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceComplementHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceEndpointHistories.js +1 -1
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceEndpointHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.js +2 -2
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceGroupHistories.js +2 -2
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceGroupHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceOperationHistories.js +1 -1
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceOperationHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.js +2 -2
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceSchemaHistories.js +1 -1
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceSchemaHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceSchemasReviewHistories.d.ts +1 -1
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceSchemasReviewHistories.js +2 -2
- package/lib/agent/src/orchestrate/interface/histories/transformInterfaceSchemasReviewHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/orchestrateInterface.js +5 -1
- package/lib/agent/src/orchestrate/interface/orchestrateInterface.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceAuthorizations.js +16 -10
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceAuthorizations.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceComplement.d.ts +1 -1
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceComplement.js +3731 -228
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceComplement.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceEndpoints.js +2 -2
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceEndpointsReview.js +2 -2
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceOperations.js +43 -63
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceOperations.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceOperationsReview.js +1261 -1628
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceOperationsReview.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceSchemas.js +3466 -103
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceSchemas.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceSchemasReview.d.ts +6 -1
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceSchemasReview.js +3672 -358
- package/lib/agent/src/orchestrate/interface/orchestrateInterfaceSchemasReview.js.map +1 -1
- package/lib/agent/src/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.d.ts +0 -38
- package/lib/agent/src/orchestrate/interface/structures/IAutoBeInterfaceOperationsReviewApplication.d.ts +48 -141
- package/lib/agent/src/orchestrate/interface/structures/IAutobeInterfaceSchemasReviewApplication.d.ts +29 -23
- package/lib/agent/src/orchestrate/interface/utils/JsonSchemaFactory.d.ts +9 -0
- package/lib/agent/src/orchestrate/interface/utils/JsonSchemaFactory.js +1385 -0
- package/lib/agent/src/orchestrate/interface/utils/JsonSchemaFactory.js.map +1 -0
- package/lib/agent/src/orchestrate/interface/utils/JsonSchemaNamingConvention.d.ts +5 -0
- package/lib/agent/src/orchestrate/interface/utils/JsonSchemaNamingConvention.js +78 -0
- package/lib/agent/src/orchestrate/interface/utils/JsonSchemaNamingConvention.js.map +1 -0
- package/lib/agent/src/orchestrate/interface/utils/fulfillJsonSchemaErrorMessages.d.ts +2 -0
- package/lib/agent/src/orchestrate/interface/utils/fulfillJsonSchemaErrorMessages.js +81 -0
- package/lib/agent/src/orchestrate/interface/utils/fulfillJsonSchemaErrorMessages.js.map +1 -0
- package/lib/agent/src/orchestrate/interface/utils/validateAuthorizationSchema.js.map +1 -1
- package/lib/agent/src/orchestrate/prisma/histories/transformPrismaComponentsHistories.js +1 -1
- package/lib/agent/src/orchestrate/prisma/histories/transformPrismaComponentsHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/prisma/histories/transformPrismaCorrectHistories.js +1 -1
- package/lib/agent/src/orchestrate/prisma/histories/transformPrismaCorrectHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/prisma/histories/transformPrismaReviewHistories.js +2 -2
- package/lib/agent/src/orchestrate/prisma/histories/transformPrismaReviewHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/prisma/histories/transformPrismaSchemaHistories.js +1 -1
- package/lib/agent/src/orchestrate/prisma/histories/transformPrismaSchemaHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/prisma/orchestratePrismaCorrect.d.ts +1 -1
- package/lib/agent/src/orchestrate/prisma/orchestratePrismaCorrect.js +2 -2
- package/lib/agent/src/orchestrate/prisma/orchestratePrismaCorrect.js.map +1 -1
- package/lib/agent/src/orchestrate/realize/histories/transformRealizeAuthorization.js +1 -1
- package/lib/agent/src/orchestrate/realize/histories/transformRealizeAuthorization.js.map +1 -1
- package/lib/agent/src/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.js +2 -2
- package/lib/agent/src/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/realize/histories/transformRealizeCorrectHistories.d.ts +6 -6
- package/lib/agent/src/orchestrate/realize/histories/transformRealizeCorrectHistories.js +22 -7
- package/lib/agent/src/orchestrate/realize/histories/transformRealizeCorrectHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/realize/histories/transformRealizeWriteHistories.d.ts +5 -8
- package/lib/agent/src/orchestrate/realize/histories/transformRealizeWriteHistories.js +13 -29
- package/lib/agent/src/orchestrate/realize/histories/transformRealizeWriteHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/realize/internal/compileRealizeFiles.d.ts +2 -2
- package/lib/agent/src/orchestrate/realize/internal/compileRealizeFiles.js +2 -8
- package/lib/agent/src/orchestrate/realize/internal/compileRealizeFiles.js.map +1 -1
- package/lib/agent/src/orchestrate/realize/orchestrateRealize.js +6 -49
- package/lib/agent/src/orchestrate/realize/orchestrateRealize.js.map +1 -1
- package/lib/agent/src/orchestrate/realize/orchestrateRealizeAuthorization.js +4 -2
- package/lib/agent/src/orchestrate/realize/orchestrateRealizeAuthorization.js.map +1 -1
- package/lib/agent/src/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js +5 -3
- package/lib/agent/src/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js.map +1 -1
- package/lib/agent/src/orchestrate/realize/orchestrateRealizeCorrect.d.ts +13 -6
- package/lib/agent/src/orchestrate/realize/orchestrateRealizeCorrect.js +206 -118
- package/lib/agent/src/orchestrate/realize/orchestrateRealizeCorrect.js.map +1 -1
- package/lib/agent/src/orchestrate/realize/orchestrateRealizeScenario.d.ts +2 -2
- package/lib/agent/src/orchestrate/realize/orchestrateRealizeScenario.js.map +1 -1
- package/lib/agent/src/orchestrate/realize/orchestrateRealizeWrite.d.ts +2 -2
- package/lib/agent/src/orchestrate/realize/orchestrateRealizeWrite.js +24 -39
- package/lib/agent/src/orchestrate/realize/orchestrateRealizeWrite.js.map +1 -1
- package/lib/agent/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationApplication.d.ts +17 -0
- package/lib/agent/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationCorrectApplication.d.ts +20 -0
- package/lib/agent/src/orchestrate/realize/structures/IAutoBeRealizeCorrectApplication.d.ts +33 -73
- package/lib/agent/src/orchestrate/realize/structures/IAutoBeRealizeFunctionFailure.d.ts +5 -0
- package/lib/agent/src/orchestrate/realize/structures/IAutoBeRealizeFunctionFailure.js +3 -0
- package/lib/agent/src/orchestrate/realize/structures/IAutoBeRealizeFunctionFailure.js.map +1 -0
- package/{src/orchestrate/realize/structures/IAutoBeRealizeScenarioApplication.ts → lib/agent/src/orchestrate/realize/structures/IAutoBeRealizeScenarioResult.d.ts} +2 -13
- package/lib/agent/src/orchestrate/realize/structures/IAutoBeRealizeScenarioResult.js +3 -0
- package/lib/agent/src/orchestrate/realize/structures/IAutoBeRealizeScenarioResult.js.map +1 -0
- package/lib/agent/src/orchestrate/realize/structures/IAutoBeRealizeWriteApplication.d.ts +33 -22
- package/lib/agent/src/orchestrate/realize/utils/getRealizeWriteCodeTemplate.d.ts +31 -0
- package/lib/agent/src/orchestrate/realize/utils/getRealizeWriteCodeTemplate.js +86 -0
- package/lib/agent/src/orchestrate/realize/utils/getRealizeWriteCodeTemplate.js.map +1 -0
- package/lib/agent/src/orchestrate/realize/utils/getRealizeWriteDto.d.ts +4 -0
- package/lib/agent/src/orchestrate/realize/utils/getRealizeWriteDto.js +55 -0
- package/lib/agent/src/orchestrate/realize/utils/getRealizeWriteDto.js.map +1 -0
- package/lib/agent/src/orchestrate/realize/utils/getRealizeWriteImportStatements.d.ts +2 -0
- package/lib/agent/src/orchestrate/realize/utils/getRealizeWriteImportStatements.js +20 -0
- package/lib/agent/src/orchestrate/realize/utils/getRealizeWriteImportStatements.js.map +1 -0
- package/lib/agent/src/orchestrate/realize/utils/getRealizeWriteInputType.d.ts +30 -0
- package/lib/agent/src/orchestrate/realize/utils/getRealizeWriteInputType.js +73 -0
- package/lib/agent/src/orchestrate/realize/utils/getRealizeWriteInputType.js.map +1 -0
- package/lib/agent/src/orchestrate/realize/utils/replaceImportStatements.d.ts +6 -2
- package/lib/agent/src/orchestrate/realize/utils/replaceImportStatements.js +63 -69
- package/lib/agent/src/orchestrate/realize/utils/replaceImportStatements.js.map +1 -1
- package/lib/agent/src/orchestrate/test/compile/completeTestCode.js +15 -14
- package/lib/agent/src/orchestrate/test/compile/completeTestCode.js.map +1 -1
- package/lib/agent/src/orchestrate/test/compile/getTestExternalDeclarations.js +1 -1
- package/lib/agent/src/orchestrate/test/compile/getTestExternalDeclarations.js.map +1 -1
- package/lib/agent/src/orchestrate/test/compile/getTestImportStatements.d.ts +2 -0
- package/lib/agent/src/orchestrate/test/compile/getTestImportStatements.js +19 -0
- package/lib/agent/src/orchestrate/test/compile/getTestImportStatements.js.map +1 -0
- package/lib/agent/src/orchestrate/test/compile/getTestScenarioArtifacts.d.ts +1 -1
- package/lib/agent/src/orchestrate/test/compile/getTestScenarioArtifacts.js +2 -0
- package/lib/agent/src/orchestrate/test/compile/getTestScenarioArtifacts.js.map +1 -1
- package/lib/agent/src/orchestrate/test/compile/getTestTemplateCode.d.ts +2 -0
- package/lib/agent/src/orchestrate/test/compile/getTestTemplateCode.js +21 -0
- package/lib/agent/src/orchestrate/test/compile/getTestTemplateCode.js.map +1 -0
- package/lib/agent/src/orchestrate/test/histories/transformTestCorrectHistories.d.ts +2 -2
- package/lib/agent/src/orchestrate/test/histories/transformTestCorrectHistories.js +16 -17
- package/lib/agent/src/orchestrate/test/histories/transformTestCorrectHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/test/histories/transformTestScenarioHistories.js +5 -4
- package/lib/agent/src/orchestrate/test/histories/transformTestScenarioHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/test/histories/transformTestWriteHistories.js +21 -2
- package/lib/agent/src/orchestrate/test/histories/transformTestWriteHistories.js.map +1 -1
- package/lib/agent/src/orchestrate/test/orchestrateTest.js +6 -0
- package/lib/agent/src/orchestrate/test/orchestrateTest.js.map +1 -1
- package/lib/agent/src/orchestrate/test/orchestrateTestCorrect.d.ts +1 -1
- package/lib/agent/src/orchestrate/test/orchestrateTestCorrect.js +126 -72
- package/lib/agent/src/orchestrate/test/orchestrateTestCorrect.js.map +1 -1
- package/lib/agent/src/orchestrate/test/orchestrateTestScenario.js +46 -40
- package/lib/agent/src/orchestrate/test/orchestrateTestScenario.js.map +1 -1
- package/lib/agent/src/orchestrate/test/orchestrateTestWrite.js +121 -42
- package/lib/agent/src/orchestrate/test/orchestrateTestWrite.js.map +1 -1
- package/lib/agent/src/orchestrate/test/structures/IAutoBeTestCorrectApplication.d.ts +48 -45
- package/lib/agent/src/orchestrate/test/structures/IAutoBeTestFunctionFailure.d.ts +6 -0
- package/lib/agent/src/orchestrate/test/structures/IAutoBeTestFunctionFailure.js +3 -0
- package/lib/agent/src/orchestrate/test/structures/IAutoBeTestFunctionFailure.js.map +1 -0
- package/lib/agent/src/orchestrate/test/structures/IAutoBeTestScenarioArtifacts.d.ts +1 -0
- package/lib/agent/src/orchestrate/test/structures/IAutoBeTestWriteApplication.d.ts +13 -0
- package/lib/agent/src/orchestrate/test/utils/getReferenceIds.d.ts +5 -0
- package/lib/agent/src/orchestrate/test/utils/getReferenceIds.js +28 -0
- package/lib/agent/src/orchestrate/test/utils/getReferenceIds.js.map +1 -0
- package/lib/agent/src/structures/IAutoBeConfig.d.ts +2 -0
- package/lib/constants/AutoBeConfigConstant.d.ts +3 -0
- package/lib/constants/AutoBeSystemPromptConstant.d.ts +27 -27
- package/lib/context/AutoBeContext.d.ts +1 -0
- package/lib/index.mjs +13805 -3871
- package/lib/index.mjs.map +1 -1
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeReviewApplication.d.ts +6 -0
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeWriteApplication.d.ts +4 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemasReviewHistories.d.ts +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceComplement.d.ts +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemasReview.d.ts +6 -1
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.d.ts +0 -38
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationsReviewApplication.d.ts +48 -141
- package/lib/orchestrate/interface/structures/IAutobeInterfaceSchemasReviewApplication.d.ts +29 -23
- package/lib/orchestrate/interface/utils/JsonSchemaFactory.d.ts +9 -0
- package/lib/orchestrate/interface/utils/JsonSchemaNamingConvention.d.ts +5 -0
- package/lib/orchestrate/interface/utils/fulfillJsonSchemaErrorMessages.d.ts +2 -0
- package/lib/orchestrate/prisma/orchestratePrismaCorrect.d.ts +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.d.ts +6 -6
- package/lib/orchestrate/realize/histories/transformRealizeWriteHistories.d.ts +5 -8
- package/lib/orchestrate/realize/internal/compileRealizeFiles.d.ts +2 -2
- package/lib/orchestrate/realize/orchestrateRealizeCorrect.d.ts +13 -6
- package/lib/orchestrate/realize/orchestrateRealizeScenario.d.ts +2 -2
- package/lib/orchestrate/realize/orchestrateRealizeWrite.d.ts +2 -2
- package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationApplication.d.ts +17 -0
- package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationCorrectApplication.d.ts +20 -0
- package/lib/orchestrate/realize/structures/IAutoBeRealizeCorrectApplication.d.ts +33 -73
- package/lib/orchestrate/realize/structures/IAutoBeRealizeFunctionFailure.d.ts +5 -0
- package/lib/orchestrate/realize/structures/IAutoBeRealizeScenarioResult.d.ts +36 -0
- package/lib/orchestrate/realize/structures/IAutoBeRealizeWriteApplication.d.ts +33 -22
- package/lib/orchestrate/realize/utils/getRealizeWriteCodeTemplate.d.ts +31 -0
- package/lib/orchestrate/realize/utils/getRealizeWriteDto.d.ts +4 -0
- package/lib/orchestrate/realize/utils/getRealizeWriteImportStatements.d.ts +2 -0
- package/lib/orchestrate/realize/utils/getRealizeWriteInputType.d.ts +30 -0
- package/lib/orchestrate/realize/utils/replaceImportStatements.d.ts +6 -2
- package/lib/orchestrate/test/compile/getTestImportStatements.d.ts +2 -0
- package/lib/orchestrate/test/compile/getTestScenarioArtifacts.d.ts +1 -1
- package/lib/orchestrate/test/compile/getTestTemplateCode.d.ts +2 -0
- package/lib/orchestrate/test/histories/transformTestCorrectHistories.d.ts +2 -2
- package/lib/orchestrate/test/orchestrateTestCorrect.d.ts +1 -1
- package/lib/orchestrate/test/structures/IAutoBeTestCorrectApplication.d.ts +48 -45
- package/lib/orchestrate/test/structures/IAutoBeTestFunctionFailure.d.ts +6 -0
- package/lib/orchestrate/test/structures/IAutoBeTestScenarioArtifacts.d.ts +1 -0
- package/lib/orchestrate/test/structures/IAutoBeTestWriteApplication.d.ts +13 -0
- package/lib/orchestrate/test/utils/getReferenceIds.d.ts +5 -0
- package/lib/structures/IAutoBeConfig.d.ts +2 -0
- package/package.json +5 -5
- package/src/AutoBeAgent.ts +2 -0
- package/src/constants/AutoBeConfigConstant.ts +3 -0
- package/src/constants/AutoBeSystemPromptConstant.ts +27 -27
- package/src/context/AutoBeContext.ts +1 -0
- package/src/context/AutoBeTokenUsageComponent.ts +3 -3
- package/src/factory/consentFunctionCall.ts +2 -0
- package/src/factory/createAutoBeContext.ts +145 -136
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeReviewApplication.ts +6 -0
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeWriteApplication.ts +4 -0
- package/src/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.ts +19 -1
- package/src/orchestrate/interface/histories/transformInterfaceSchemasReviewHistories.ts +1 -4
- package/src/orchestrate/interface/orchestrateInterface.ts +15 -4
- package/src/orchestrate/interface/orchestrateInterfaceAuthorizations.ts +13 -5
- package/src/orchestrate/interface/orchestrateInterfaceComplement.ts +58 -19
- package/src/orchestrate/interface/orchestrateInterfaceOperations.ts +11 -11
- package/src/orchestrate/interface/orchestrateInterfaceOperationsReview.ts +13 -117
- package/src/orchestrate/interface/orchestrateInterfaceSchemas.ts +33 -91
- package/src/orchestrate/interface/orchestrateInterfaceSchemasReview.ts +72 -95
- package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.ts +0 -39
- package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationsReviewApplication.ts +50 -146
- package/src/orchestrate/interface/structures/IAutobeInterfaceSchemasReviewApplication.ts +31 -27
- package/src/orchestrate/interface/utils/JsonSchemaFactory.ts +171 -0
- package/src/orchestrate/interface/utils/JsonSchemaNamingConvention.ts +83 -0
- package/src/orchestrate/interface/utils/fulfillJsonSchemaErrorMessages.ts +90 -0
- package/src/orchestrate/interface/utils/validateAuthorizationSchema.ts +2 -2
- package/src/orchestrate/prisma/orchestratePrismaCorrect.ts +1 -2
- package/src/orchestrate/realize/histories/transformRealizeCorrectHistories.ts +30 -15
- package/src/orchestrate/realize/histories/transformRealizeWriteHistories.ts +27 -49
- package/src/orchestrate/realize/internal/compileRealizeFiles.ts +4 -11
- package/src/orchestrate/realize/orchestrateRealize.ts +19 -75
- package/src/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.ts +1 -1
- package/src/orchestrate/realize/orchestrateRealizeCorrect.ts +114 -25
- package/src/orchestrate/realize/orchestrateRealizeScenario.ts +2 -2
- package/src/orchestrate/realize/orchestrateRealizeWrite.ts +11 -15
- package/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationApplication.ts +17 -0
- package/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationCorrectApplication.ts +20 -0
- package/src/orchestrate/realize/structures/IAutoBeRealizeCorrectApplication.ts +40 -74
- package/src/orchestrate/realize/structures/IAutoBeRealizeFunctionFailure.ts +9 -0
- package/src/orchestrate/realize/structures/IAutoBeRealizeScenarioResult.ts +45 -0
- package/src/orchestrate/realize/structures/IAutoBeRealizeWriteApplication.ts +33 -22
- package/src/orchestrate/realize/utils/getRealizeWriteCodeTemplate.ts +97 -0
- package/src/orchestrate/realize/utils/getRealizeWriteDto.ts +64 -0
- package/src/orchestrate/realize/utils/getRealizeWriteImportStatements.ts +29 -0
- package/src/orchestrate/realize/utils/getRealizeWriteInputType.ts +82 -0
- package/src/orchestrate/realize/utils/replaceImportStatements.ts +101 -111
- package/src/orchestrate/test/compile/completeTestCode.ts +15 -26
- package/src/orchestrate/test/compile/getTestExternalDeclarations.ts +1 -0
- package/src/orchestrate/test/compile/getTestImportStatements.ts +25 -0
- package/src/orchestrate/test/compile/getTestScenarioArtifacts.ts +6 -1
- package/src/orchestrate/test/compile/getTestTemplateCode.ts +25 -0
- package/src/orchestrate/test/histories/transformTestCorrectHistories.ts +26 -26
- package/src/orchestrate/test/histories/transformTestScenarioHistories.ts +6 -5
- package/src/orchestrate/test/histories/transformTestWriteHistories.ts +19 -0
- package/src/orchestrate/test/orchestrateTest.ts +6 -0
- package/src/orchestrate/test/orchestrateTestCorrect.ts +46 -15
- package/src/orchestrate/test/orchestrateTestScenario.ts +52 -48
- package/src/orchestrate/test/orchestrateTestWrite.ts +23 -5
- package/src/orchestrate/test/structures/IAutoBeTestCorrectApplication.ts +49 -46
- package/src/orchestrate/test/structures/IAutoBeTestFunctionFailure.ts +8 -0
- package/src/orchestrate/test/structures/IAutoBeTestScenarioArtifacts.ts +1 -0
- package/src/orchestrate/test/structures/IAutoBeTestWriteApplication.ts +14 -0
- package/src/orchestrate/test/utils/getReferenceIds.ts +25 -0
- package/src/structures/IAutoBeConfig.ts +3 -0
- package/lib/agent/src/orchestrate/realize/structures/IAutoBeRealizeScenarioApplication.d.ts +0 -38
- package/lib/agent/src/orchestrate/realize/structures/IAutoBeRealizeScenarioApplication.js.map +0 -1
- package/lib/orchestrate/realize/structures/IAutoBeRealizeScenarioApplication.d.ts +0 -38
|
@@ -48,20 +48,25 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
48
48
|
exports.orchestrateInterfaceComplement = orchestrateInterfaceComplement;
|
|
49
49
|
const __typia_transform__accessExpressionAsString = __importStar(require("typia/lib/internal/_accessExpressionAsString.js"));
|
|
50
50
|
const __typia_transform__validateReport = __importStar(require("typia/lib/internal/_validateReport.js"));
|
|
51
|
+
const __typia_transform__llmApplicationFinalize = __importStar(require("typia/lib/internal/_llmApplicationFinalize.js"));
|
|
51
52
|
const openapi_1 = require("@samchon/openapi");
|
|
52
53
|
const OpenApiV3_1Emender_1 = require("@samchon/openapi/lib/converters/OpenApiV3_1Emender");
|
|
53
54
|
const typia_1 = __importDefault(require("typia"));
|
|
54
55
|
const uuid_1 = require("uuid");
|
|
55
56
|
const assertSchemaModel_1 = require("../../context/assertSchemaModel");
|
|
56
57
|
const transformInterfaceComplementHistories_1 = require("./histories/transformInterfaceComplementHistories");
|
|
57
|
-
|
|
58
|
-
|
|
58
|
+
const JsonSchemaFactory_1 = require("./utils/JsonSchemaFactory");
|
|
59
|
+
const JsonSchemaNamingConvention_1 = require("./utils/JsonSchemaNamingConvention");
|
|
60
|
+
const fulfillJsonSchemaErrorMessages_1 = require("./utils/fulfillJsonSchemaErrorMessages");
|
|
61
|
+
const validateAuthorizationSchema_1 = require("./utils/validateAuthorizationSchema");
|
|
62
|
+
function orchestrateInterfaceComplement(ctx, document) {
|
|
63
|
+
return step(ctx, document, 8);
|
|
59
64
|
}
|
|
60
|
-
function step(ctx, document,
|
|
65
|
+
function step(ctx, document, life) {
|
|
61
66
|
return __awaiter(this, void 0, void 0, function* () {
|
|
62
67
|
var _a, _b;
|
|
63
68
|
const missed = getMissed(document);
|
|
64
|
-
if (missed.length === 0 ||
|
|
69
|
+
if (missed.length === 0 || life <= 0) {
|
|
65
70
|
return document.components.schemas;
|
|
66
71
|
}
|
|
67
72
|
const pointer = {
|
|
@@ -96,7 +101,8 @@ function step(ctx, document, retry) {
|
|
|
96
101
|
created_at: new Date().toISOString(),
|
|
97
102
|
});
|
|
98
103
|
const newSchemas = Object.assign(Object.assign({}, pointer.value), document.components.schemas);
|
|
99
|
-
|
|
104
|
+
JsonSchemaNamingConvention_1.JsonSchemaNamingConvention.schemas(document.operations, newSchemas);
|
|
105
|
+
return step(ctx, Object.assign(Object.assign({}, document), { components: Object.assign(Object.assign({}, document.components), { schemas: newSchemas }) }), life - 1);
|
|
100
106
|
});
|
|
101
107
|
}
|
|
102
108
|
const getMissed = (document) => {
|
|
@@ -124,7 +130,713 @@ const getMissed = (document) => {
|
|
|
124
130
|
};
|
|
125
131
|
function createController(props) {
|
|
126
132
|
(0, assertSchemaModel_1.assertSchemaModel)(props.model);
|
|
127
|
-
const
|
|
133
|
+
const validate = (next) => {
|
|
134
|
+
JsonSchemaFactory_1.JsonSchemaFactory.fix("schemas", next);
|
|
135
|
+
const result = (() => { const _io0 = input => "string" === typeof input.draft && ("object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) && _io1(input.schemas)); const _io1 = input => Object.keys(input).every(key => {
|
|
136
|
+
const value = input[key];
|
|
137
|
+
if (undefined === value)
|
|
138
|
+
return true;
|
|
139
|
+
return "object" === typeof value && null !== value && _iu1(value);
|
|
140
|
+
}); const _io2 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io3 = input => "boolean" === input.type && "string" === typeof input.description; const _io4 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type && "string" === typeof input.description; const _io5 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type && "string" === typeof input.description; const _io6 = input => (undefined === input.format || "string" === typeof input.format) && (undefined === input.pattern || "string" === typeof input.pattern) && (undefined === input.contentMediaType || "string" === typeof input.contentMediaType) && (undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000)) && (undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000)) && "string" === input.type && "string" === typeof input.description; const _io7 = input => "object" === typeof input.items && null !== input.items && _iu2(input.items) && (undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems) && (undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000)) && (undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000)) && "array" === input.type && "string" === typeof input.description; const _io8 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type; const _io9 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type; const _io10 = input => (undefined === input.format || "string" === typeof input.format) && (undefined === input.pattern || "string" === typeof input.pattern) && (undefined === input.contentMediaType || "string" === typeof input.contentMediaType) && (undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000)) && (undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000)) && "string" === input.type; const _io11 = input => "string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]; const _io12 = input => "boolean" === input.type; const _io13 = input => "object" === typeof input.items && null !== input.items && _iu2(input.items) && (undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems) && (undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000)) && (undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000)) && "array" === input.type; const _io14 = input => "object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) && _io1(input.properties) && (null !== input.additionalProperties && (undefined === input.additionalProperties || false === input.additionalProperties || "object" === typeof input.additionalProperties && null !== input.additionalProperties && _iu2(input.additionalProperties))) && (Array.isArray(input.required) && input.required.every(elem => "string" === typeof elem)) && "object" === input.type; const _io15 = input => "string" === typeof input.$ref; const _io16 = input => Array.isArray(input.oneOf) && input.oneOf.every(elem => "object" === typeof elem && null !== elem && _iu0(elem)) && (undefined === input.discriminator || "object" === typeof input.discriminator && null !== input.discriminator && _io18(input.discriminator)); const _io17 = input => "null" === input.type; const _io18 = input => "string" === typeof input.propertyName && (undefined === input.mapping || "object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) && _io19(input.mapping)); const _io19 = input => Object.keys(input).every(key => {
|
|
141
|
+
const value = input[key];
|
|
142
|
+
if (undefined === value)
|
|
143
|
+
return true;
|
|
144
|
+
return "string" === typeof value;
|
|
145
|
+
}); const _io20 = input => "object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) && _io1(input.properties) && (null !== input.additionalProperties && (undefined === input.additionalProperties || false === input.additionalProperties || "object" === typeof input.additionalProperties && null !== input.additionalProperties && _iu2(input.additionalProperties))) && (Array.isArray(input.required) && input.required.every(elem => "string" === typeof elem)) && "object" === input.type && "string" === typeof input.description; const _io21 = input => "string" === typeof input.$ref && "string" === typeof input.description; const _io22 = input => Array.isArray(input.oneOf) && input.oneOf.every(elem => "object" === typeof elem && null !== elem && _iu0(elem)) && (undefined === input.discriminator || "object" === typeof input.discriminator && null !== input.discriminator && _io18(input.discriminator)) && "string" === typeof input.description; const _io23 = input => "null" === input.type && "string" === typeof input.description; const _iu0 = input => (() => {
|
|
146
|
+
if ("number" === input.type)
|
|
147
|
+
return _io9(input);
|
|
148
|
+
else if ("integer" === input.type)
|
|
149
|
+
return _io8(input);
|
|
150
|
+
else if ("string" === input.type)
|
|
151
|
+
return _io10(input);
|
|
152
|
+
else if (undefined !== input["const"])
|
|
153
|
+
return _io11(input);
|
|
154
|
+
else if ("null" === input.type)
|
|
155
|
+
return _io17(input);
|
|
156
|
+
else if ("boolean" === input.type)
|
|
157
|
+
return _io12(input);
|
|
158
|
+
else if ("array" === input.type)
|
|
159
|
+
return _io13(input);
|
|
160
|
+
else if ("object" === input.type)
|
|
161
|
+
return _io14(input);
|
|
162
|
+
else if (undefined !== input.$ref)
|
|
163
|
+
return _io15(input);
|
|
164
|
+
else
|
|
165
|
+
return false;
|
|
166
|
+
})(); const _iu1 = input => (() => {
|
|
167
|
+
if (undefined !== input["const"])
|
|
168
|
+
return _io2(input);
|
|
169
|
+
else if ("boolean" === input.type)
|
|
170
|
+
return _io3(input);
|
|
171
|
+
else if ("number" === input.type)
|
|
172
|
+
return _io5(input);
|
|
173
|
+
else if ("integer" === input.type)
|
|
174
|
+
return _io4(input);
|
|
175
|
+
else if ("string" === input.type)
|
|
176
|
+
return _io6(input);
|
|
177
|
+
else if ("array" === input.type)
|
|
178
|
+
return _io7(input);
|
|
179
|
+
else if ("object" === input.type)
|
|
180
|
+
return _io20(input);
|
|
181
|
+
else if (undefined !== input.$ref)
|
|
182
|
+
return _io21(input);
|
|
183
|
+
else if (undefined !== input.oneOf)
|
|
184
|
+
return _io22(input);
|
|
185
|
+
else if ("null" === input.type)
|
|
186
|
+
return _io23(input);
|
|
187
|
+
else
|
|
188
|
+
return false;
|
|
189
|
+
})(); const _iu2 = input => (() => {
|
|
190
|
+
if ("number" === input.type)
|
|
191
|
+
return _io9(input);
|
|
192
|
+
else if ("integer" === input.type)
|
|
193
|
+
return _io8(input);
|
|
194
|
+
else if ("string" === input.type)
|
|
195
|
+
return _io10(input);
|
|
196
|
+
else if (undefined !== input["const"])
|
|
197
|
+
return _io11(input);
|
|
198
|
+
else if ("null" === input.type)
|
|
199
|
+
return _io17(input);
|
|
200
|
+
else if ("boolean" === input.type)
|
|
201
|
+
return _io12(input);
|
|
202
|
+
else if ("array" === input.type)
|
|
203
|
+
return _io13(input);
|
|
204
|
+
else if ("object" === input.type)
|
|
205
|
+
return _io14(input);
|
|
206
|
+
else if (undefined !== input.$ref)
|
|
207
|
+
return _io15(input);
|
|
208
|
+
else if (undefined !== input.oneOf)
|
|
209
|
+
return _io16(input);
|
|
210
|
+
else
|
|
211
|
+
return false;
|
|
212
|
+
})(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.draft || _report(_exceptionable, {
|
|
213
|
+
path: _path + ".draft",
|
|
214
|
+
expected: "string",
|
|
215
|
+
value: input.draft
|
|
216
|
+
}), ("object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) || _report(_exceptionable, {
|
|
217
|
+
path: _path + ".schemas",
|
|
218
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
219
|
+
value: input.schemas
|
|
220
|
+
})) && _vo1(input.schemas, _path + ".schemas", true && _exceptionable) || _report(_exceptionable, {
|
|
221
|
+
path: _path + ".schemas",
|
|
222
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
223
|
+
value: input.schemas
|
|
224
|
+
})].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
|
|
225
|
+
const value = input[key];
|
|
226
|
+
if (undefined === value)
|
|
227
|
+
return true;
|
|
228
|
+
return ("object" === typeof value && null !== value || _report(_exceptionable, {
|
|
229
|
+
path: _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key),
|
|
230
|
+
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)",
|
|
231
|
+
value: value
|
|
232
|
+
})) && _vu1(value, _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key), true && _exceptionable) || _report(_exceptionable, {
|
|
233
|
+
path: _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key),
|
|
234
|
+
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)",
|
|
235
|
+
value: value
|
|
236
|
+
});
|
|
237
|
+
}).every(flag => flag)].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"] || _report(_exceptionable, {
|
|
238
|
+
path: _path + "[\"const\"]",
|
|
239
|
+
expected: "(boolean | number | string)",
|
|
240
|
+
value: input["const"]
|
|
241
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
242
|
+
path: _path + ".description",
|
|
243
|
+
expected: "string",
|
|
244
|
+
value: input.description
|
|
245
|
+
})].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["boolean" === input.type || _report(_exceptionable, {
|
|
246
|
+
path: _path + ".type",
|
|
247
|
+
expected: "\"boolean\"",
|
|
248
|
+
value: input.type
|
|
249
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
250
|
+
path: _path + ".description",
|
|
251
|
+
expected: "string",
|
|
252
|
+
value: input.description
|
|
253
|
+
})].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000 || _report(_exceptionable, {
|
|
254
|
+
path: _path + ".minimum",
|
|
255
|
+
expected: "number & Type<\"int64\">",
|
|
256
|
+
value: input.minimum
|
|
257
|
+
})) || _report(_exceptionable, {
|
|
258
|
+
path: _path + ".minimum",
|
|
259
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
260
|
+
value: input.minimum
|
|
261
|
+
}), undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000 || _report(_exceptionable, {
|
|
262
|
+
path: _path + ".maximum",
|
|
263
|
+
expected: "number & Type<\"int64\">",
|
|
264
|
+
value: input.maximum
|
|
265
|
+
})) || _report(_exceptionable, {
|
|
266
|
+
path: _path + ".maximum",
|
|
267
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
268
|
+
value: input.maximum
|
|
269
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
270
|
+
path: _path + ".exclusiveMinimum",
|
|
271
|
+
expected: "(number | undefined)",
|
|
272
|
+
value: input.exclusiveMinimum
|
|
273
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
274
|
+
path: _path + ".exclusiveMaximum",
|
|
275
|
+
expected: "(number | undefined)",
|
|
276
|
+
value: input.exclusiveMaximum
|
|
277
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 || _report(_exceptionable, {
|
|
278
|
+
path: _path + ".multipleOf",
|
|
279
|
+
expected: "number & Type<\"uint64\">",
|
|
280
|
+
value: input.multipleOf
|
|
281
|
+
})) && (0 < input.multipleOf || _report(_exceptionable, {
|
|
282
|
+
path: _path + ".multipleOf",
|
|
283
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
284
|
+
value: input.multipleOf
|
|
285
|
+
})) || _report(_exceptionable, {
|
|
286
|
+
path: _path + ".multipleOf",
|
|
287
|
+
expected: "((number & Type<\"uint64\"> & ExclusiveMinimum<0>) | undefined)",
|
|
288
|
+
value: input.multipleOf
|
|
289
|
+
}), "integer" === input.type || _report(_exceptionable, {
|
|
290
|
+
path: _path + ".type",
|
|
291
|
+
expected: "\"integer\"",
|
|
292
|
+
value: input.type
|
|
293
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
294
|
+
path: _path + ".description",
|
|
295
|
+
expected: "string",
|
|
296
|
+
value: input.description
|
|
297
|
+
})].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum || _report(_exceptionable, {
|
|
298
|
+
path: _path + ".minimum",
|
|
299
|
+
expected: "(number | undefined)",
|
|
300
|
+
value: input.minimum
|
|
301
|
+
}), undefined === input.maximum || "number" === typeof input.maximum || _report(_exceptionable, {
|
|
302
|
+
path: _path + ".maximum",
|
|
303
|
+
expected: "(number | undefined)",
|
|
304
|
+
value: input.maximum
|
|
305
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
306
|
+
path: _path + ".exclusiveMinimum",
|
|
307
|
+
expected: "(number | undefined)",
|
|
308
|
+
value: input.exclusiveMinimum
|
|
309
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
310
|
+
path: _path + ".exclusiveMaximum",
|
|
311
|
+
expected: "(number | undefined)",
|
|
312
|
+
value: input.exclusiveMaximum
|
|
313
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (0 < input.multipleOf || _report(_exceptionable, {
|
|
314
|
+
path: _path + ".multipleOf",
|
|
315
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
316
|
+
value: input.multipleOf
|
|
317
|
+
})) || _report(_exceptionable, {
|
|
318
|
+
path: _path + ".multipleOf",
|
|
319
|
+
expected: "((number & ExclusiveMinimum<0>) | undefined)",
|
|
320
|
+
value: input.multipleOf
|
|
321
|
+
}), "number" === input.type || _report(_exceptionable, {
|
|
322
|
+
path: _path + ".type",
|
|
323
|
+
expected: "\"number\"",
|
|
324
|
+
value: input.type
|
|
325
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
326
|
+
path: _path + ".description",
|
|
327
|
+
expected: "string",
|
|
328
|
+
value: input.description
|
|
329
|
+
})].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => [undefined === input.format || "string" === typeof input.format || _report(_exceptionable, {
|
|
330
|
+
path: _path + ".format",
|
|
331
|
+
expected: "(string | undefined)",
|
|
332
|
+
value: input.format
|
|
333
|
+
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
334
|
+
path: _path + ".pattern",
|
|
335
|
+
expected: "(string | undefined)",
|
|
336
|
+
value: input.pattern
|
|
337
|
+
}), undefined === input.contentMediaType || "string" === typeof input.contentMediaType || _report(_exceptionable, {
|
|
338
|
+
path: _path + ".contentMediaType",
|
|
339
|
+
expected: "(string | undefined)",
|
|
340
|
+
value: input.contentMediaType
|
|
341
|
+
}), undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
342
|
+
path: _path + ".minLength",
|
|
343
|
+
expected: "number & Type<\"uint64\">",
|
|
344
|
+
value: input.minLength
|
|
345
|
+
})) || _report(_exceptionable, {
|
|
346
|
+
path: _path + ".minLength",
|
|
347
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
348
|
+
value: input.minLength
|
|
349
|
+
}), undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
350
|
+
path: _path + ".maxLength",
|
|
351
|
+
expected: "number & Type<\"uint64\">",
|
|
352
|
+
value: input.maxLength
|
|
353
|
+
})) || _report(_exceptionable, {
|
|
354
|
+
path: _path + ".maxLength",
|
|
355
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
356
|
+
value: input.maxLength
|
|
357
|
+
}), "string" === input.type || _report(_exceptionable, {
|
|
358
|
+
path: _path + ".type",
|
|
359
|
+
expected: "\"string\"",
|
|
360
|
+
value: input.type
|
|
361
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
362
|
+
path: _path + ".description",
|
|
363
|
+
expected: "string",
|
|
364
|
+
value: input.description
|
|
365
|
+
})].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [("object" === typeof input.items && null !== input.items || _report(_exceptionable, {
|
|
366
|
+
path: _path + ".items",
|
|
367
|
+
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)",
|
|
368
|
+
value: input.items
|
|
369
|
+
})) && _vu2(input.items, _path + ".items", true && _exceptionable) || _report(_exceptionable, {
|
|
370
|
+
path: _path + ".items",
|
|
371
|
+
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)",
|
|
372
|
+
value: input.items
|
|
373
|
+
}), undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems || _report(_exceptionable, {
|
|
374
|
+
path: _path + ".uniqueItems",
|
|
375
|
+
expected: "(boolean | undefined)",
|
|
376
|
+
value: input.uniqueItems
|
|
377
|
+
}), undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
378
|
+
path: _path + ".minItems",
|
|
379
|
+
expected: "number & Type<\"uint64\">",
|
|
380
|
+
value: input.minItems
|
|
381
|
+
})) || _report(_exceptionable, {
|
|
382
|
+
path: _path + ".minItems",
|
|
383
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
384
|
+
value: input.minItems
|
|
385
|
+
}), undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
386
|
+
path: _path + ".maxItems",
|
|
387
|
+
expected: "number & Type<\"uint64\">",
|
|
388
|
+
value: input.maxItems
|
|
389
|
+
})) || _report(_exceptionable, {
|
|
390
|
+
path: _path + ".maxItems",
|
|
391
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
392
|
+
value: input.maxItems
|
|
393
|
+
}), "array" === input.type || _report(_exceptionable, {
|
|
394
|
+
path: _path + ".type",
|
|
395
|
+
expected: "\"array\"",
|
|
396
|
+
value: input.type
|
|
397
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
398
|
+
path: _path + ".description",
|
|
399
|
+
expected: "string",
|
|
400
|
+
value: input.description
|
|
401
|
+
})].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000 || _report(_exceptionable, {
|
|
402
|
+
path: _path + ".minimum",
|
|
403
|
+
expected: "number & Type<\"int64\">",
|
|
404
|
+
value: input.minimum
|
|
405
|
+
})) || _report(_exceptionable, {
|
|
406
|
+
path: _path + ".minimum",
|
|
407
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
408
|
+
value: input.minimum
|
|
409
|
+
}), undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000 || _report(_exceptionable, {
|
|
410
|
+
path: _path + ".maximum",
|
|
411
|
+
expected: "number & Type<\"int64\">",
|
|
412
|
+
value: input.maximum
|
|
413
|
+
})) || _report(_exceptionable, {
|
|
414
|
+
path: _path + ".maximum",
|
|
415
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
416
|
+
value: input.maximum
|
|
417
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
418
|
+
path: _path + ".exclusiveMinimum",
|
|
419
|
+
expected: "(number | undefined)",
|
|
420
|
+
value: input.exclusiveMinimum
|
|
421
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
422
|
+
path: _path + ".exclusiveMaximum",
|
|
423
|
+
expected: "(number | undefined)",
|
|
424
|
+
value: input.exclusiveMaximum
|
|
425
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 || _report(_exceptionable, {
|
|
426
|
+
path: _path + ".multipleOf",
|
|
427
|
+
expected: "number & Type<\"uint64\">",
|
|
428
|
+
value: input.multipleOf
|
|
429
|
+
})) && (0 < input.multipleOf || _report(_exceptionable, {
|
|
430
|
+
path: _path + ".multipleOf",
|
|
431
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
432
|
+
value: input.multipleOf
|
|
433
|
+
})) || _report(_exceptionable, {
|
|
434
|
+
path: _path + ".multipleOf",
|
|
435
|
+
expected: "((number & Type<\"uint64\"> & ExclusiveMinimum<0>) | undefined)",
|
|
436
|
+
value: input.multipleOf
|
|
437
|
+
}), "integer" === input.type || _report(_exceptionable, {
|
|
438
|
+
path: _path + ".type",
|
|
439
|
+
expected: "\"integer\"",
|
|
440
|
+
value: input.type
|
|
441
|
+
})].every(flag => flag); const _vo9 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum || _report(_exceptionable, {
|
|
442
|
+
path: _path + ".minimum",
|
|
443
|
+
expected: "(number | undefined)",
|
|
444
|
+
value: input.minimum
|
|
445
|
+
}), undefined === input.maximum || "number" === typeof input.maximum || _report(_exceptionable, {
|
|
446
|
+
path: _path + ".maximum",
|
|
447
|
+
expected: "(number | undefined)",
|
|
448
|
+
value: input.maximum
|
|
449
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
450
|
+
path: _path + ".exclusiveMinimum",
|
|
451
|
+
expected: "(number | undefined)",
|
|
452
|
+
value: input.exclusiveMinimum
|
|
453
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
454
|
+
path: _path + ".exclusiveMaximum",
|
|
455
|
+
expected: "(number | undefined)",
|
|
456
|
+
value: input.exclusiveMaximum
|
|
457
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (0 < input.multipleOf || _report(_exceptionable, {
|
|
458
|
+
path: _path + ".multipleOf",
|
|
459
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
460
|
+
value: input.multipleOf
|
|
461
|
+
})) || _report(_exceptionable, {
|
|
462
|
+
path: _path + ".multipleOf",
|
|
463
|
+
expected: "((number & ExclusiveMinimum<0>) | undefined)",
|
|
464
|
+
value: input.multipleOf
|
|
465
|
+
}), "number" === input.type || _report(_exceptionable, {
|
|
466
|
+
path: _path + ".type",
|
|
467
|
+
expected: "\"number\"",
|
|
468
|
+
value: input.type
|
|
469
|
+
})].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => [undefined === input.format || "string" === typeof input.format || _report(_exceptionable, {
|
|
470
|
+
path: _path + ".format",
|
|
471
|
+
expected: "(string | undefined)",
|
|
472
|
+
value: input.format
|
|
473
|
+
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
474
|
+
path: _path + ".pattern",
|
|
475
|
+
expected: "(string | undefined)",
|
|
476
|
+
value: input.pattern
|
|
477
|
+
}), undefined === input.contentMediaType || "string" === typeof input.contentMediaType || _report(_exceptionable, {
|
|
478
|
+
path: _path + ".contentMediaType",
|
|
479
|
+
expected: "(string | undefined)",
|
|
480
|
+
value: input.contentMediaType
|
|
481
|
+
}), undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
482
|
+
path: _path + ".minLength",
|
|
483
|
+
expected: "number & Type<\"uint64\">",
|
|
484
|
+
value: input.minLength
|
|
485
|
+
})) || _report(_exceptionable, {
|
|
486
|
+
path: _path + ".minLength",
|
|
487
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
488
|
+
value: input.minLength
|
|
489
|
+
}), undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
490
|
+
path: _path + ".maxLength",
|
|
491
|
+
expected: "number & Type<\"uint64\">",
|
|
492
|
+
value: input.maxLength
|
|
493
|
+
})) || _report(_exceptionable, {
|
|
494
|
+
path: _path + ".maxLength",
|
|
495
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
496
|
+
value: input.maxLength
|
|
497
|
+
}), "string" === input.type || _report(_exceptionable, {
|
|
498
|
+
path: _path + ".type",
|
|
499
|
+
expected: "\"string\"",
|
|
500
|
+
value: input.type
|
|
501
|
+
})].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => ["string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"] || _report(_exceptionable, {
|
|
502
|
+
path: _path + "[\"const\"]",
|
|
503
|
+
expected: "(boolean | number | string)",
|
|
504
|
+
value: input["const"]
|
|
505
|
+
})].every(flag => flag); const _vo12 = (input, _path, _exceptionable = true) => ["boolean" === input.type || _report(_exceptionable, {
|
|
506
|
+
path: _path + ".type",
|
|
507
|
+
expected: "\"boolean\"",
|
|
508
|
+
value: input.type
|
|
509
|
+
})].every(flag => flag); const _vo13 = (input, _path, _exceptionable = true) => [("object" === typeof input.items && null !== input.items || _report(_exceptionable, {
|
|
510
|
+
path: _path + ".items",
|
|
511
|
+
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)",
|
|
512
|
+
value: input.items
|
|
513
|
+
})) && _vu2(input.items, _path + ".items", true && _exceptionable) || _report(_exceptionable, {
|
|
514
|
+
path: _path + ".items",
|
|
515
|
+
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)",
|
|
516
|
+
value: input.items
|
|
517
|
+
}), undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems || _report(_exceptionable, {
|
|
518
|
+
path: _path + ".uniqueItems",
|
|
519
|
+
expected: "(boolean | undefined)",
|
|
520
|
+
value: input.uniqueItems
|
|
521
|
+
}), undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
522
|
+
path: _path + ".minItems",
|
|
523
|
+
expected: "number & Type<\"uint64\">",
|
|
524
|
+
value: input.minItems
|
|
525
|
+
})) || _report(_exceptionable, {
|
|
526
|
+
path: _path + ".minItems",
|
|
527
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
528
|
+
value: input.minItems
|
|
529
|
+
}), undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
530
|
+
path: _path + ".maxItems",
|
|
531
|
+
expected: "number & Type<\"uint64\">",
|
|
532
|
+
value: input.maxItems
|
|
533
|
+
})) || _report(_exceptionable, {
|
|
534
|
+
path: _path + ".maxItems",
|
|
535
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
536
|
+
value: input.maxItems
|
|
537
|
+
}), "array" === input.type || _report(_exceptionable, {
|
|
538
|
+
path: _path + ".type",
|
|
539
|
+
expected: "\"array\"",
|
|
540
|
+
value: input.type
|
|
541
|
+
})].every(flag => flag); const _vo14 = (input, _path, _exceptionable = true) => [("object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) || _report(_exceptionable, {
|
|
542
|
+
path: _path + ".properties",
|
|
543
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
544
|
+
value: input.properties
|
|
545
|
+
})) && _vo1(input.properties, _path + ".properties", true && _exceptionable) || _report(_exceptionable, {
|
|
546
|
+
path: _path + ".properties",
|
|
547
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
548
|
+
value: input.properties
|
|
549
|
+
}), (null !== input.additionalProperties || _report(_exceptionable, {
|
|
550
|
+
path: _path + ".additionalProperties",
|
|
551
|
+
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)",
|
|
552
|
+
value: input.additionalProperties
|
|
553
|
+
})) && (undefined === input.additionalProperties || false === input.additionalProperties || ("object" === typeof input.additionalProperties && null !== input.additionalProperties || _report(_exceptionable, {
|
|
554
|
+
path: _path + ".additionalProperties",
|
|
555
|
+
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)",
|
|
556
|
+
value: input.additionalProperties
|
|
557
|
+
})) && _vu2(input.additionalProperties, _path + ".additionalProperties", true && _exceptionable) || _report(_exceptionable, {
|
|
558
|
+
path: _path + ".additionalProperties",
|
|
559
|
+
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)",
|
|
560
|
+
value: input.additionalProperties
|
|
561
|
+
})), (Array.isArray(input.required) || _report(_exceptionable, {
|
|
562
|
+
path: _path + ".required",
|
|
563
|
+
expected: "Array<string>",
|
|
564
|
+
value: input.required
|
|
565
|
+
})) && input.required.map((elem, _index5) => "string" === typeof elem || _report(_exceptionable, {
|
|
566
|
+
path: _path + ".required[" + _index5 + "]",
|
|
567
|
+
expected: "string",
|
|
568
|
+
value: elem
|
|
569
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
570
|
+
path: _path + ".required",
|
|
571
|
+
expected: "Array<string>",
|
|
572
|
+
value: input.required
|
|
573
|
+
}), "object" === input.type || _report(_exceptionable, {
|
|
574
|
+
path: _path + ".type",
|
|
575
|
+
expected: "\"object\"",
|
|
576
|
+
value: input.type
|
|
577
|
+
})].every(flag => flag); const _vo15 = (input, _path, _exceptionable = true) => ["string" === typeof input.$ref || _report(_exceptionable, {
|
|
578
|
+
path: _path + ".$ref",
|
|
579
|
+
expected: "string",
|
|
580
|
+
value: input.$ref
|
|
581
|
+
})].every(flag => flag); const _vo16 = (input, _path, _exceptionable = true) => [(Array.isArray(input.oneOf) || _report(_exceptionable, {
|
|
582
|
+
path: _path + ".oneOf",
|
|
583
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
584
|
+
value: input.oneOf
|
|
585
|
+
})) && input.oneOf.map((elem, _index6) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
586
|
+
path: _path + ".oneOf[" + _index6 + "]",
|
|
587
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
588
|
+
value: elem
|
|
589
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index6 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
590
|
+
path: _path + ".oneOf[" + _index6 + "]",
|
|
591
|
+
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)",
|
|
592
|
+
value: elem
|
|
593
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
594
|
+
path: _path + ".oneOf",
|
|
595
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
596
|
+
value: input.oneOf
|
|
597
|
+
}), undefined === input.discriminator || ("object" === typeof input.discriminator && null !== input.discriminator || _report(_exceptionable, {
|
|
598
|
+
path: _path + ".discriminator",
|
|
599
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
600
|
+
value: input.discriminator
|
|
601
|
+
})) && _vo18(input.discriminator, _path + ".discriminator", true && _exceptionable) || _report(_exceptionable, {
|
|
602
|
+
path: _path + ".discriminator",
|
|
603
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
604
|
+
value: input.discriminator
|
|
605
|
+
})].every(flag => flag); const _vo17 = (input, _path, _exceptionable = true) => ["null" === input.type || _report(_exceptionable, {
|
|
606
|
+
path: _path + ".type",
|
|
607
|
+
expected: "\"null\"",
|
|
608
|
+
value: input.type
|
|
609
|
+
})].every(flag => flag); const _vo18 = (input, _path, _exceptionable = true) => ["string" === typeof input.propertyName || _report(_exceptionable, {
|
|
610
|
+
path: _path + ".propertyName",
|
|
611
|
+
expected: "string",
|
|
612
|
+
value: input.propertyName
|
|
613
|
+
}), undefined === input.mapping || ("object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) || _report(_exceptionable, {
|
|
614
|
+
path: _path + ".mapping",
|
|
615
|
+
expected: "(Record<string, string> | undefined)",
|
|
616
|
+
value: input.mapping
|
|
617
|
+
})) && _vo19(input.mapping, _path + ".mapping", true && _exceptionable) || _report(_exceptionable, {
|
|
618
|
+
path: _path + ".mapping",
|
|
619
|
+
expected: "(Record<string, string> | undefined)",
|
|
620
|
+
value: input.mapping
|
|
621
|
+
})].every(flag => flag); const _vo19 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
|
|
622
|
+
const value = input[key];
|
|
623
|
+
if (undefined === value)
|
|
624
|
+
return true;
|
|
625
|
+
return "string" === typeof value || _report(_exceptionable, {
|
|
626
|
+
path: _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key),
|
|
627
|
+
expected: "string",
|
|
628
|
+
value: value
|
|
629
|
+
});
|
|
630
|
+
}).every(flag => flag)].every(flag => flag); const _vo20 = (input, _path, _exceptionable = true) => [("object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) || _report(_exceptionable, {
|
|
631
|
+
path: _path + ".properties",
|
|
632
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
633
|
+
value: input.properties
|
|
634
|
+
})) && _vo1(input.properties, _path + ".properties", true && _exceptionable) || _report(_exceptionable, {
|
|
635
|
+
path: _path + ".properties",
|
|
636
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
637
|
+
value: input.properties
|
|
638
|
+
}), (null !== input.additionalProperties || _report(_exceptionable, {
|
|
639
|
+
path: _path + ".additionalProperties",
|
|
640
|
+
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)",
|
|
641
|
+
value: input.additionalProperties
|
|
642
|
+
})) && (undefined === input.additionalProperties || false === input.additionalProperties || ("object" === typeof input.additionalProperties && null !== input.additionalProperties || _report(_exceptionable, {
|
|
643
|
+
path: _path + ".additionalProperties",
|
|
644
|
+
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)",
|
|
645
|
+
value: input.additionalProperties
|
|
646
|
+
})) && _vu2(input.additionalProperties, _path + ".additionalProperties", true && _exceptionable) || _report(_exceptionable, {
|
|
647
|
+
path: _path + ".additionalProperties",
|
|
648
|
+
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)",
|
|
649
|
+
value: input.additionalProperties
|
|
650
|
+
})), (Array.isArray(input.required) || _report(_exceptionable, {
|
|
651
|
+
path: _path + ".required",
|
|
652
|
+
expected: "Array<string>",
|
|
653
|
+
value: input.required
|
|
654
|
+
})) && input.required.map((elem, _index7) => "string" === typeof elem || _report(_exceptionable, {
|
|
655
|
+
path: _path + ".required[" + _index7 + "]",
|
|
656
|
+
expected: "string",
|
|
657
|
+
value: elem
|
|
658
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
659
|
+
path: _path + ".required",
|
|
660
|
+
expected: "Array<string>",
|
|
661
|
+
value: input.required
|
|
662
|
+
}), "object" === input.type || _report(_exceptionable, {
|
|
663
|
+
path: _path + ".type",
|
|
664
|
+
expected: "\"object\"",
|
|
665
|
+
value: input.type
|
|
666
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
667
|
+
path: _path + ".description",
|
|
668
|
+
expected: "string",
|
|
669
|
+
value: input.description
|
|
670
|
+
})].every(flag => flag); const _vo21 = (input, _path, _exceptionable = true) => ["string" === typeof input.$ref || _report(_exceptionable, {
|
|
671
|
+
path: _path + ".$ref",
|
|
672
|
+
expected: "string",
|
|
673
|
+
value: input.$ref
|
|
674
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
675
|
+
path: _path + ".description",
|
|
676
|
+
expected: "string",
|
|
677
|
+
value: input.description
|
|
678
|
+
})].every(flag => flag); const _vo22 = (input, _path, _exceptionable = true) => [(Array.isArray(input.oneOf) || _report(_exceptionable, {
|
|
679
|
+
path: _path + ".oneOf",
|
|
680
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
681
|
+
value: input.oneOf
|
|
682
|
+
})) && input.oneOf.map((elem, _index8) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
683
|
+
path: _path + ".oneOf[" + _index8 + "]",
|
|
684
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
685
|
+
value: elem
|
|
686
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index8 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
687
|
+
path: _path + ".oneOf[" + _index8 + "]",
|
|
688
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IArray | AutoBeOpenApi.IJsonSchema.IBoolean | AutoBeOpenApi.IJsonSchema.IConstant | AutoBeOpenApi.IJsonSchema.IInteger | AutoBeOpenApi.IJsonSchema.INull | AutoBeOpenApi.IJsonSchema.INumber | AutoBeOpenApi.IJsonSchema.IObject | AutoBeOpenApi.IJsonSchema.IReference | AutoBeOpenApi.IJsonSchema.IString)",
|
|
689
|
+
value: elem
|
|
690
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
691
|
+
path: _path + ".oneOf",
|
|
692
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
693
|
+
value: input.oneOf
|
|
694
|
+
}), undefined === input.discriminator || ("object" === typeof input.discriminator && null !== input.discriminator || _report(_exceptionable, {
|
|
695
|
+
path: _path + ".discriminator",
|
|
696
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
697
|
+
value: input.discriminator
|
|
698
|
+
})) && _vo18(input.discriminator, _path + ".discriminator", true && _exceptionable) || _report(_exceptionable, {
|
|
699
|
+
path: _path + ".discriminator",
|
|
700
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
701
|
+
value: input.discriminator
|
|
702
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
703
|
+
path: _path + ".description",
|
|
704
|
+
expected: "string",
|
|
705
|
+
value: input.description
|
|
706
|
+
})].every(flag => flag); const _vo23 = (input, _path, _exceptionable = true) => ["null" === input.type || _report(_exceptionable, {
|
|
707
|
+
path: _path + ".type",
|
|
708
|
+
expected: "\"null\"",
|
|
709
|
+
value: input.type
|
|
710
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
711
|
+
path: _path + ".description",
|
|
712
|
+
expected: "string",
|
|
713
|
+
value: input.description
|
|
714
|
+
})].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
|
|
715
|
+
if ("number" === input.type)
|
|
716
|
+
return _vo9(input, _path, true && _exceptionable);
|
|
717
|
+
else if ("integer" === input.type)
|
|
718
|
+
return _vo8(input, _path, true && _exceptionable);
|
|
719
|
+
else if ("string" === input.type)
|
|
720
|
+
return _vo10(input, _path, true && _exceptionable);
|
|
721
|
+
else if (undefined !== input["const"])
|
|
722
|
+
return _vo11(input, _path, true && _exceptionable);
|
|
723
|
+
else if ("null" === input.type)
|
|
724
|
+
return _vo17(input, _path, true && _exceptionable);
|
|
725
|
+
else if ("boolean" === input.type)
|
|
726
|
+
return _vo12(input, _path, true && _exceptionable);
|
|
727
|
+
else if ("array" === input.type)
|
|
728
|
+
return _vo13(input, _path, true && _exceptionable);
|
|
729
|
+
else if ("object" === input.type)
|
|
730
|
+
return _vo14(input, _path, true && _exceptionable);
|
|
731
|
+
else if (undefined !== input.$ref)
|
|
732
|
+
return _vo15(input, _path, true && _exceptionable);
|
|
733
|
+
else
|
|
734
|
+
return _report(_exceptionable, {
|
|
735
|
+
path: _path,
|
|
736
|
+
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)",
|
|
737
|
+
value: input
|
|
738
|
+
});
|
|
739
|
+
})(); const _vu1 = (input, _path, _exceptionable = true) => (() => {
|
|
740
|
+
if (undefined !== input["const"])
|
|
741
|
+
return _vo2(input, _path, true && _exceptionable);
|
|
742
|
+
else if ("boolean" === input.type)
|
|
743
|
+
return _vo3(input, _path, true && _exceptionable);
|
|
744
|
+
else if ("number" === input.type)
|
|
745
|
+
return _vo5(input, _path, true && _exceptionable);
|
|
746
|
+
else if ("integer" === input.type)
|
|
747
|
+
return _vo4(input, _path, true && _exceptionable);
|
|
748
|
+
else if ("string" === input.type)
|
|
749
|
+
return _vo6(input, _path, true && _exceptionable);
|
|
750
|
+
else if ("array" === input.type)
|
|
751
|
+
return _vo7(input, _path, true && _exceptionable);
|
|
752
|
+
else if ("object" === input.type)
|
|
753
|
+
return _vo20(input, _path, true && _exceptionable);
|
|
754
|
+
else if (undefined !== input.$ref)
|
|
755
|
+
return _vo21(input, _path, true && _exceptionable);
|
|
756
|
+
else if (undefined !== input.oneOf)
|
|
757
|
+
return _vo22(input, _path, true && _exceptionable);
|
|
758
|
+
else if ("null" === input.type)
|
|
759
|
+
return _vo23(input, _path, true && _exceptionable);
|
|
760
|
+
else
|
|
761
|
+
return _report(_exceptionable, {
|
|
762
|
+
path: _path,
|
|
763
|
+
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)",
|
|
764
|
+
value: input
|
|
765
|
+
});
|
|
766
|
+
})(); const _vu2 = (input, _path, _exceptionable = true) => (() => {
|
|
767
|
+
if ("number" === input.type)
|
|
768
|
+
return _vo9(input, _path, true && _exceptionable);
|
|
769
|
+
else if ("integer" === input.type)
|
|
770
|
+
return _vo8(input, _path, true && _exceptionable);
|
|
771
|
+
else if ("string" === input.type)
|
|
772
|
+
return _vo10(input, _path, true && _exceptionable);
|
|
773
|
+
else if (undefined !== input["const"])
|
|
774
|
+
return _vo11(input, _path, true && _exceptionable);
|
|
775
|
+
else if ("null" === input.type)
|
|
776
|
+
return _vo17(input, _path, true && _exceptionable);
|
|
777
|
+
else if ("boolean" === input.type)
|
|
778
|
+
return _vo12(input, _path, true && _exceptionable);
|
|
779
|
+
else if ("array" === input.type)
|
|
780
|
+
return _vo13(input, _path, true && _exceptionable);
|
|
781
|
+
else if ("object" === input.type)
|
|
782
|
+
return _vo14(input, _path, true && _exceptionable);
|
|
783
|
+
else if (undefined !== input.$ref)
|
|
784
|
+
return _vo15(input, _path, true && _exceptionable);
|
|
785
|
+
else if (undefined !== input.oneOf)
|
|
786
|
+
return _vo16(input, _path, true && _exceptionable);
|
|
787
|
+
else
|
|
788
|
+
return _report(_exceptionable, {
|
|
789
|
+
path: _path,
|
|
790
|
+
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)",
|
|
791
|
+
value: input
|
|
792
|
+
});
|
|
793
|
+
})(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
|
|
794
|
+
if (false === __is(input)) {
|
|
795
|
+
errors = [];
|
|
796
|
+
_report = __typia_transform__validateReport._validateReport(errors);
|
|
797
|
+
((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
|
|
798
|
+
path: _path + "",
|
|
799
|
+
expected: "IAutoBeInterfaceComplementApplication.IProps",
|
|
800
|
+
value: input
|
|
801
|
+
})) && _vo0(input, _path + "", true) || _report(true, {
|
|
802
|
+
path: _path + "",
|
|
803
|
+
expected: "IAutoBeInterfaceComplementApplication.IProps",
|
|
804
|
+
value: input
|
|
805
|
+
}))(input, "$input", true);
|
|
806
|
+
const success = 0 === errors.length;
|
|
807
|
+
return success ? {
|
|
808
|
+
success,
|
|
809
|
+
data: input
|
|
810
|
+
} : {
|
|
811
|
+
success,
|
|
812
|
+
errors,
|
|
813
|
+
data: input
|
|
814
|
+
};
|
|
815
|
+
}
|
|
816
|
+
return {
|
|
817
|
+
success: true,
|
|
818
|
+
data: input
|
|
819
|
+
};
|
|
820
|
+
}; })()(next);
|
|
821
|
+
if (result.success === false) {
|
|
822
|
+
(0, fulfillJsonSchemaErrorMessages_1.fulfillJsonSchemaErrorMessages)(result.errors);
|
|
823
|
+
return result;
|
|
824
|
+
}
|
|
825
|
+
const errors = [];
|
|
826
|
+
(0, validateAuthorizationSchema_1.validateAuthorizationSchema)({
|
|
827
|
+
errors,
|
|
828
|
+
schemas: result.data.schemas,
|
|
829
|
+
path: "$input.schemas",
|
|
830
|
+
});
|
|
831
|
+
if (errors.length !== 0)
|
|
832
|
+
return {
|
|
833
|
+
success: false,
|
|
834
|
+
errors,
|
|
835
|
+
data: next,
|
|
836
|
+
};
|
|
837
|
+
return result;
|
|
838
|
+
};
|
|
839
|
+
const application = collection[props.model === "chatgpt" ? "chatgpt" : "claude"](validate);
|
|
128
840
|
return {
|
|
129
841
|
protocol: "class",
|
|
130
842
|
name: "interface",
|
|
@@ -136,246 +848,3037 @@ function createController(props) {
|
|
|
136
848
|
},
|
|
137
849
|
};
|
|
138
850
|
}
|
|
139
|
-
const
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
description: "TypeScript draft code for complement schema definitions.\n\nThis property contains TypeScript interface definitions for missing schema\ntypes that were referenced but not defined in the initial schema generation.\nSimilar to the main schema draft, this serves as a preliminary TypeScript\nrepresentation before converting to JSON Schema format.\n\nThe draft helps ensure that complementary schemas maintain consistency with\nthe existing type system and follow the same conventions as the primary schemas.\n\nThis draft typically includes:\n- Missing entity interfaces referenced via $ref\n- Nested object types used within other schemas\n- Shared utility types or enumerations\n- Any transitively referenced types\n\nThe final schemas in the `schemas` property should be validated against and\nderived from this TypeScript draft to ensure type safety and consistency\nacross the entire API specification.\n\nExample complement draft:\n```typescript\ninterface IUserProfile {\n id: string;\n userId: string;\n displayName: string;\n avatarUrl?: string;\n}\n\ninterface IAddress {\n street: string;\n city: string;\n postalCode: string;\n}\n```",
|
|
154
|
-
type: "string"
|
|
155
|
-
},
|
|
156
|
-
schemas: {
|
|
157
|
-
description: "A collection of missing schema definitions that need to be added to the\nOpenAPI document's `components.schemas` section.\n\nThis object contains schema definitions for types that are referenced but\nnot yet defined:\n\n- Key: Schema name (`string`): The name of the schema type that will be\n referenced in $ref statements\n- Value: `AutoBeOpenApi.IJsonSchema` - The complete JSON Schema definition\n for that type\n\nExample structure:\n\n```typescript\n{\n \"UserProfile\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": { \"type\": \"string\" },\n \"name\": { \"type\": \"string\" },\n \"email\": { \"type\": \"string\", \"format\": \"email\" }\n },\n \"required\": [\"id\", \"name\", \"email\"]\n }\n}\n```\n\nEach schema definition follows the JSON Schema specification and will be\ndirectly inserted into the OpenAPI document's components.schemas section,\nmaking them available for $ref references throughout the API\nspecification.",
|
|
158
|
-
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptiveAutoBeOpenApi.IJsonSchema"
|
|
159
|
-
}
|
|
160
|
-
},
|
|
161
|
-
required: [
|
|
162
|
-
"draft",
|
|
163
|
-
"schemas"
|
|
164
|
-
],
|
|
165
|
-
additionalProperties: false,
|
|
166
|
-
$defs: {
|
|
167
|
-
"RecordstringAutoBeOpenApi.IJsonSchemaDescriptiveAutoBeOpenApi.IJsonSchema": {
|
|
168
|
-
description: "Construct a type with a set of properties K of type T",
|
|
169
|
-
type: "object",
|
|
170
|
-
properties: {},
|
|
171
|
-
required: [],
|
|
172
|
-
additionalProperties: {
|
|
173
|
-
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptiveAutoBeOpenApi.IJsonSchema"
|
|
174
|
-
}
|
|
175
|
-
},
|
|
176
|
-
"AutoBeOpenApi.IJsonSchemaDescriptiveAutoBeOpenApi.IJsonSchema": {
|
|
177
|
-
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",
|
|
851
|
+
const collection = {
|
|
852
|
+
chatgpt: (validate) => (() => {
|
|
853
|
+
const application = {
|
|
854
|
+
model: "chatgpt",
|
|
855
|
+
options: {
|
|
856
|
+
reference: true,
|
|
857
|
+
strict: false,
|
|
858
|
+
separate: null
|
|
859
|
+
},
|
|
860
|
+
functions: [
|
|
861
|
+
{
|
|
862
|
+
name: "complementComponents",
|
|
863
|
+
parameters: {
|
|
864
|
+
description: "Current Type: {@link IAutoBeInterfaceComplementApplication.IProps}\n\n### Description of {@link schemas} property:\n\n> A collection of missing schema definitions that need to be added to the\n> OpenAPI document's `components.schemas` section.\n> \n> This object contains schema definitions for types that are referenced but\n> not yet defined:\n> \n> - Key: Schema name (`string`): The name of the schema type that will be\n> referenced in $ref statements\n> - Value: `AutoBeOpenApi.IJsonSchema` - The complete JSON Schema definition\n> for that type\n> \n> Example structure:\n> \n> ```typescript\n> {\n> \"UserProfile\": {\n> \"type\": \"object\",\n> \"properties\": {\n> \"id\": { \"type\": \"string\" },\n> \"name\": { \"type\": \"string\" },\n> \"email\": { \"type\": \"string\", \"format\": \"email\" }\n> },\n> \"required\": [\"id\", \"name\", \"email\"]\n> }\n> }\n> ```\n> \n> Each schema definition follows the JSON Schema specification and will be\n> directly inserted into the OpenAPI document's components.schemas section,\n> making them available for $ref references throughout the API\n> specification.",
|
|
178
865
|
type: "object",
|
|
179
866
|
properties: {
|
|
180
|
-
|
|
181
|
-
description: "
|
|
867
|
+
draft: {
|
|
868
|
+
description: "TypeScript draft code for complement schema definitions.\n\nThis property contains TypeScript interface definitions for missing schema\ntypes that were referenced but not defined in the initial schema generation.\nSimilar to the main schema draft, this serves as a preliminary TypeScript\nrepresentation before converting to JSON Schema format.\n\nThe draft helps ensure that complementary schemas maintain consistency with\nthe existing type system and follow the same conventions as the primary schemas.\n\nThis draft typically includes:\n- Missing entity interfaces referenced via $ref\n- Nested object types used within other schemas\n- Shared utility types or enumerations\n- Any transitively referenced types\n\nThe final schemas in the `schemas` property should be validated against and\nderived from this TypeScript draft to ensure type safety and consistency\nacross the entire API specification.\n\nExample complement draft:\n```typescript\ninterface IUserProfile {\n id: string;\n userId: string;\n displayName: string;\n avatarUrl?: string;\n}\n\ninterface IAddress {\n street: string;\n city: string;\n postalCode: string;\n}\n```",
|
|
182
869
|
type: "string"
|
|
870
|
+
},
|
|
871
|
+
schemas: {
|
|
872
|
+
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
183
873
|
}
|
|
184
874
|
},
|
|
185
875
|
required: [
|
|
186
|
-
"
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
876
|
+
"draft",
|
|
877
|
+
"schemas"
|
|
878
|
+
],
|
|
879
|
+
additionalProperties: false,
|
|
880
|
+
$defs: {
|
|
881
|
+
"RecordstringAutoBeOpenApi.IJsonSchemaDescriptive": {
|
|
882
|
+
description: "Construct a type with a set of properties K of type T",
|
|
883
|
+
type: "object",
|
|
884
|
+
properties: {},
|
|
885
|
+
required: [],
|
|
886
|
+
additionalProperties: {
|
|
887
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive"
|
|
888
|
+
}
|
|
889
|
+
},
|
|
890
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive": {
|
|
891
|
+
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",
|
|
892
|
+
anyOf: [
|
|
893
|
+
{
|
|
894
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IConstant"
|
|
895
|
+
},
|
|
896
|
+
{
|
|
897
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IBoolean"
|
|
898
|
+
},
|
|
899
|
+
{
|
|
900
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IInteger"
|
|
901
|
+
},
|
|
902
|
+
{
|
|
903
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.INumber"
|
|
904
|
+
},
|
|
905
|
+
{
|
|
906
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IString"
|
|
907
|
+
},
|
|
908
|
+
{
|
|
909
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IArray"
|
|
910
|
+
},
|
|
911
|
+
{
|
|
912
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IObject"
|
|
913
|
+
},
|
|
914
|
+
{
|
|
915
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IReference"
|
|
916
|
+
},
|
|
917
|
+
{
|
|
918
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IOneOf"
|
|
919
|
+
},
|
|
920
|
+
{
|
|
921
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.INull"
|
|
922
|
+
}
|
|
923
|
+
]
|
|
924
|
+
},
|
|
925
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IConstant": {
|
|
926
|
+
description: "Constant value type.",
|
|
927
|
+
type: "object",
|
|
928
|
+
properties: {
|
|
929
|
+
"const": {
|
|
930
|
+
description: "The constant value.",
|
|
931
|
+
anyOf: [
|
|
932
|
+
{
|
|
933
|
+
type: "string"
|
|
934
|
+
},
|
|
935
|
+
{
|
|
936
|
+
type: "number"
|
|
937
|
+
},
|
|
938
|
+
{
|
|
939
|
+
type: "boolean"
|
|
940
|
+
}
|
|
941
|
+
]
|
|
942
|
+
},
|
|
943
|
+
description: {
|
|
944
|
+
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.",
|
|
945
|
+
type: "string"
|
|
946
|
+
}
|
|
947
|
+
},
|
|
948
|
+
required: [
|
|
949
|
+
"const",
|
|
950
|
+
"description"
|
|
951
|
+
]
|
|
952
|
+
},
|
|
953
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IBoolean": {
|
|
954
|
+
description: "Boolean type info.",
|
|
955
|
+
type: "object",
|
|
956
|
+
properties: {
|
|
957
|
+
type: {
|
|
958
|
+
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.",
|
|
959
|
+
type: "string",
|
|
960
|
+
"enum": [
|
|
961
|
+
"boolean"
|
|
962
|
+
]
|
|
963
|
+
},
|
|
964
|
+
description: {
|
|
965
|
+
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.",
|
|
966
|
+
type: "string"
|
|
967
|
+
}
|
|
968
|
+
},
|
|
969
|
+
required: [
|
|
970
|
+
"type",
|
|
971
|
+
"description"
|
|
972
|
+
]
|
|
973
|
+
},
|
|
974
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IInteger": {
|
|
975
|
+
description: "Integer type info.",
|
|
976
|
+
type: "object",
|
|
977
|
+
properties: {
|
|
978
|
+
minimum: {
|
|
979
|
+
description: "Minimum value restriction.",
|
|
980
|
+
type: "integer"
|
|
981
|
+
},
|
|
982
|
+
maximum: {
|
|
983
|
+
description: "Maximum value restriction.",
|
|
984
|
+
type: "integer"
|
|
985
|
+
},
|
|
986
|
+
exclusiveMinimum: {
|
|
987
|
+
description: "Exclusive minimum value restriction.",
|
|
988
|
+
type: "number"
|
|
989
|
+
},
|
|
990
|
+
exclusiveMaximum: {
|
|
991
|
+
description: "Exclusive maximum value restriction.",
|
|
992
|
+
type: "number"
|
|
993
|
+
},
|
|
994
|
+
multipleOf: {
|
|
995
|
+
description: "Multiple of value restriction.\n\n\n@exclusiveMinimum 0",
|
|
996
|
+
type: "integer"
|
|
997
|
+
},
|
|
998
|
+
type: {
|
|
999
|
+
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.",
|
|
1000
|
+
type: "string",
|
|
1001
|
+
"enum": [
|
|
1002
|
+
"integer"
|
|
1003
|
+
]
|
|
1004
|
+
},
|
|
1005
|
+
description: {
|
|
1006
|
+
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.",
|
|
1007
|
+
type: "string"
|
|
1008
|
+
}
|
|
1009
|
+
},
|
|
1010
|
+
required: [
|
|
1011
|
+
"type",
|
|
1012
|
+
"description"
|
|
1013
|
+
]
|
|
1014
|
+
},
|
|
1015
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.INumber": {
|
|
1016
|
+
description: "Number (double) type info.",
|
|
1017
|
+
type: "object",
|
|
1018
|
+
properties: {
|
|
1019
|
+
minimum: {
|
|
1020
|
+
description: "Minimum value restriction.",
|
|
1021
|
+
type: "number"
|
|
1022
|
+
},
|
|
1023
|
+
maximum: {
|
|
1024
|
+
description: "Maximum value restriction.",
|
|
1025
|
+
type: "number"
|
|
1026
|
+
},
|
|
1027
|
+
exclusiveMinimum: {
|
|
1028
|
+
description: "Exclusive minimum value restriction.",
|
|
1029
|
+
type: "number"
|
|
1030
|
+
},
|
|
1031
|
+
exclusiveMaximum: {
|
|
1032
|
+
description: "Exclusive maximum value restriction.",
|
|
1033
|
+
type: "number"
|
|
1034
|
+
},
|
|
1035
|
+
multipleOf: {
|
|
1036
|
+
description: "Multiple of value restriction.\n\n\n@exclusiveMinimum 0",
|
|
1037
|
+
type: "number"
|
|
1038
|
+
},
|
|
1039
|
+
type: {
|
|
1040
|
+
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.",
|
|
1041
|
+
type: "string",
|
|
1042
|
+
"enum": [
|
|
1043
|
+
"number"
|
|
1044
|
+
]
|
|
1045
|
+
},
|
|
1046
|
+
description: {
|
|
1047
|
+
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.",
|
|
1048
|
+
type: "string"
|
|
1049
|
+
}
|
|
1050
|
+
},
|
|
1051
|
+
required: [
|
|
1052
|
+
"type",
|
|
1053
|
+
"description"
|
|
1054
|
+
]
|
|
1055
|
+
},
|
|
1056
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IString": {
|
|
1057
|
+
description: "String type info.",
|
|
1058
|
+
type: "object",
|
|
1059
|
+
properties: {
|
|
1060
|
+
format: {
|
|
1061
|
+
description: "Format restriction.",
|
|
1062
|
+
type: "string"
|
|
1063
|
+
},
|
|
1064
|
+
pattern: {
|
|
1065
|
+
description: "Pattern restriction.",
|
|
1066
|
+
type: "string"
|
|
1067
|
+
},
|
|
1068
|
+
contentMediaType: {
|
|
1069
|
+
description: "Content media type restriction.",
|
|
1070
|
+
type: "string"
|
|
1071
|
+
},
|
|
1072
|
+
minLength: {
|
|
1073
|
+
description: "Minimum length restriction.\n\n\n@minimum 0",
|
|
1074
|
+
type: "integer"
|
|
1075
|
+
},
|
|
1076
|
+
maxLength: {
|
|
1077
|
+
description: "Maximum length restriction.\n\n\n@minimum 0",
|
|
1078
|
+
type: "integer"
|
|
1079
|
+
},
|
|
1080
|
+
type: {
|
|
1081
|
+
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.",
|
|
1082
|
+
type: "string",
|
|
1083
|
+
"enum": [
|
|
1084
|
+
"string"
|
|
1085
|
+
]
|
|
1086
|
+
},
|
|
1087
|
+
description: {
|
|
1088
|
+
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.",
|
|
1089
|
+
type: "string"
|
|
1090
|
+
}
|
|
1091
|
+
},
|
|
1092
|
+
required: [
|
|
1093
|
+
"type",
|
|
1094
|
+
"description"
|
|
1095
|
+
]
|
|
1096
|
+
},
|
|
1097
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IArray": {
|
|
1098
|
+
description: "Array type info.\n\n### Description of {@link items} property:\n\n> Items type info.\n> \n> The `items` means the type of the array elements. In other words, it is\n> the type schema info of the `T` in the TypeScript array type\n> `Array<T>`.",
|
|
1099
|
+
type: "object",
|
|
1100
|
+
properties: {
|
|
1101
|
+
items: {
|
|
1102
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema"
|
|
1103
|
+
},
|
|
1104
|
+
uniqueItems: {
|
|
1105
|
+
description: "Unique items restriction.\n\nIf this property value is `true`, target array must have unique items.",
|
|
1106
|
+
type: "boolean"
|
|
1107
|
+
},
|
|
1108
|
+
minItems: {
|
|
1109
|
+
description: "Minimum items restriction.\n\nRestriction of minimum number of items in the array.\n\n\n@minimum 0",
|
|
1110
|
+
type: "integer"
|
|
1111
|
+
},
|
|
1112
|
+
maxItems: {
|
|
1113
|
+
description: "Maximum items restriction.\n\nRestriction of maximum number of items in the array.\n\n\n@minimum 0",
|
|
1114
|
+
type: "integer"
|
|
1115
|
+
},
|
|
1116
|
+
type: {
|
|
1117
|
+
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.",
|
|
1118
|
+
type: "string",
|
|
1119
|
+
"enum": [
|
|
1120
|
+
"array"
|
|
1121
|
+
]
|
|
1122
|
+
},
|
|
1123
|
+
description: {
|
|
1124
|
+
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.",
|
|
1125
|
+
type: "string"
|
|
1126
|
+
}
|
|
1127
|
+
},
|
|
1128
|
+
required: [
|
|
1129
|
+
"items",
|
|
1130
|
+
"type",
|
|
1131
|
+
"description"
|
|
1132
|
+
]
|
|
1133
|
+
},
|
|
1134
|
+
"AutoBeOpenApi.IJsonSchema": {
|
|
1135
|
+
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.",
|
|
1136
|
+
anyOf: [
|
|
1137
|
+
{
|
|
1138
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
1139
|
+
},
|
|
1140
|
+
{
|
|
1141
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
1142
|
+
},
|
|
1143
|
+
{
|
|
1144
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
1145
|
+
},
|
|
1146
|
+
{
|
|
1147
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
1148
|
+
},
|
|
1149
|
+
{
|
|
1150
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
1151
|
+
},
|
|
1152
|
+
{
|
|
1153
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
1154
|
+
},
|
|
1155
|
+
{
|
|
1156
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
1157
|
+
},
|
|
1158
|
+
{
|
|
1159
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
1160
|
+
},
|
|
1161
|
+
{
|
|
1162
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf"
|
|
1163
|
+
},
|
|
1164
|
+
{
|
|
1165
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
1166
|
+
}
|
|
1167
|
+
]
|
|
1168
|
+
},
|
|
1169
|
+
"AutoBeOpenApi.IJsonSchema.IInteger": {
|
|
1170
|
+
description: "Integer type info.",
|
|
1171
|
+
type: "object",
|
|
1172
|
+
properties: {
|
|
1173
|
+
minimum: {
|
|
1174
|
+
description: "Minimum value restriction.",
|
|
1175
|
+
type: "integer"
|
|
1176
|
+
},
|
|
1177
|
+
maximum: {
|
|
1178
|
+
description: "Maximum value restriction.",
|
|
1179
|
+
type: "integer"
|
|
1180
|
+
},
|
|
1181
|
+
exclusiveMinimum: {
|
|
1182
|
+
description: "Exclusive minimum value restriction.",
|
|
1183
|
+
type: "number"
|
|
1184
|
+
},
|
|
1185
|
+
exclusiveMaximum: {
|
|
1186
|
+
description: "Exclusive maximum value restriction.",
|
|
1187
|
+
type: "number"
|
|
1188
|
+
},
|
|
1189
|
+
multipleOf: {
|
|
1190
|
+
description: "Multiple of value restriction.\n\n\n@exclusiveMinimum 0",
|
|
1191
|
+
type: "integer"
|
|
1192
|
+
},
|
|
1193
|
+
type: {
|
|
1194
|
+
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.",
|
|
1195
|
+
type: "string",
|
|
1196
|
+
"enum": [
|
|
1197
|
+
"integer"
|
|
1198
|
+
]
|
|
1199
|
+
}
|
|
1200
|
+
},
|
|
1201
|
+
required: [
|
|
1202
|
+
"type"
|
|
1203
|
+
]
|
|
1204
|
+
},
|
|
1205
|
+
"AutoBeOpenApi.IJsonSchema.INumber": {
|
|
1206
|
+
description: "Number (double) type info.",
|
|
1207
|
+
type: "object",
|
|
1208
|
+
properties: {
|
|
1209
|
+
minimum: {
|
|
1210
|
+
description: "Minimum value restriction.",
|
|
1211
|
+
type: "number"
|
|
1212
|
+
},
|
|
1213
|
+
maximum: {
|
|
1214
|
+
description: "Maximum value restriction.",
|
|
1215
|
+
type: "number"
|
|
1216
|
+
},
|
|
1217
|
+
exclusiveMinimum: {
|
|
1218
|
+
description: "Exclusive minimum value restriction.",
|
|
1219
|
+
type: "number"
|
|
1220
|
+
},
|
|
1221
|
+
exclusiveMaximum: {
|
|
1222
|
+
description: "Exclusive maximum value restriction.",
|
|
1223
|
+
type: "number"
|
|
1224
|
+
},
|
|
1225
|
+
multipleOf: {
|
|
1226
|
+
description: "Multiple of value restriction.\n\n\n@exclusiveMinimum 0",
|
|
1227
|
+
type: "number"
|
|
1228
|
+
},
|
|
1229
|
+
type: {
|
|
1230
|
+
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.",
|
|
1231
|
+
type: "string",
|
|
1232
|
+
"enum": [
|
|
1233
|
+
"number"
|
|
1234
|
+
]
|
|
1235
|
+
}
|
|
1236
|
+
},
|
|
1237
|
+
required: [
|
|
1238
|
+
"type"
|
|
1239
|
+
]
|
|
1240
|
+
},
|
|
1241
|
+
"AutoBeOpenApi.IJsonSchema.IString": {
|
|
1242
|
+
description: "String type info.",
|
|
1243
|
+
type: "object",
|
|
1244
|
+
properties: {
|
|
1245
|
+
format: {
|
|
1246
|
+
description: "Format restriction.",
|
|
1247
|
+
type: "string"
|
|
1248
|
+
},
|
|
1249
|
+
pattern: {
|
|
1250
|
+
description: "Pattern restriction.",
|
|
1251
|
+
type: "string"
|
|
1252
|
+
},
|
|
1253
|
+
contentMediaType: {
|
|
1254
|
+
description: "Content media type restriction.",
|
|
1255
|
+
type: "string"
|
|
1256
|
+
},
|
|
1257
|
+
minLength: {
|
|
1258
|
+
description: "Minimum length restriction.\n\n\n@minimum 0",
|
|
1259
|
+
type: "integer"
|
|
1260
|
+
},
|
|
1261
|
+
maxLength: {
|
|
1262
|
+
description: "Maximum length restriction.\n\n\n@minimum 0",
|
|
1263
|
+
type: "integer"
|
|
1264
|
+
},
|
|
1265
|
+
type: {
|
|
1266
|
+
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.",
|
|
1267
|
+
type: "string",
|
|
1268
|
+
"enum": [
|
|
1269
|
+
"string"
|
|
1270
|
+
]
|
|
1271
|
+
}
|
|
1272
|
+
},
|
|
1273
|
+
required: [
|
|
1274
|
+
"type"
|
|
1275
|
+
]
|
|
1276
|
+
},
|
|
1277
|
+
"AutoBeOpenApi.IJsonSchema.IConstant": {
|
|
1278
|
+
description: "Constant value type.",
|
|
1279
|
+
type: "object",
|
|
1280
|
+
properties: {
|
|
1281
|
+
"const": {
|
|
1282
|
+
description: "The constant value.",
|
|
1283
|
+
anyOf: [
|
|
1284
|
+
{
|
|
1285
|
+
type: "string"
|
|
1286
|
+
},
|
|
1287
|
+
{
|
|
1288
|
+
type: "number"
|
|
1289
|
+
},
|
|
1290
|
+
{
|
|
1291
|
+
type: "boolean"
|
|
1292
|
+
}
|
|
1293
|
+
]
|
|
1294
|
+
}
|
|
1295
|
+
},
|
|
1296
|
+
required: [
|
|
1297
|
+
"const"
|
|
1298
|
+
]
|
|
1299
|
+
},
|
|
1300
|
+
"AutoBeOpenApi.IJsonSchema.IBoolean": {
|
|
1301
|
+
description: "Boolean type info.",
|
|
1302
|
+
type: "object",
|
|
1303
|
+
properties: {
|
|
1304
|
+
type: {
|
|
1305
|
+
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.",
|
|
1306
|
+
type: "string",
|
|
1307
|
+
"enum": [
|
|
1308
|
+
"boolean"
|
|
1309
|
+
]
|
|
1310
|
+
}
|
|
1311
|
+
},
|
|
1312
|
+
required: [
|
|
1313
|
+
"type"
|
|
1314
|
+
]
|
|
1315
|
+
},
|
|
1316
|
+
"AutoBeOpenApi.IJsonSchema.IArray": {
|
|
1317
|
+
description: "Array type info.\n\n### Description of {@link items} property:\n\n> Items type info.\n> \n> The `items` means the type of the array elements. In other words, it is\n> the type schema info of the `T` in the TypeScript array type\n> `Array<T>`.",
|
|
1318
|
+
type: "object",
|
|
1319
|
+
properties: {
|
|
1320
|
+
items: {
|
|
1321
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema"
|
|
1322
|
+
},
|
|
1323
|
+
uniqueItems: {
|
|
1324
|
+
description: "Unique items restriction.\n\nIf this property value is `true`, target array must have unique items.",
|
|
1325
|
+
type: "boolean"
|
|
1326
|
+
},
|
|
1327
|
+
minItems: {
|
|
1328
|
+
description: "Minimum items restriction.\n\nRestriction of minimum number of items in the array.\n\n\n@minimum 0",
|
|
1329
|
+
type: "integer"
|
|
1330
|
+
},
|
|
1331
|
+
maxItems: {
|
|
1332
|
+
description: "Maximum items restriction.\n\nRestriction of maximum number of items in the array.\n\n\n@minimum 0",
|
|
1333
|
+
type: "integer"
|
|
1334
|
+
},
|
|
1335
|
+
type: {
|
|
1336
|
+
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.",
|
|
1337
|
+
type: "string",
|
|
1338
|
+
"enum": [
|
|
1339
|
+
"array"
|
|
1340
|
+
]
|
|
1341
|
+
}
|
|
1342
|
+
},
|
|
1343
|
+
required: [
|
|
1344
|
+
"items",
|
|
1345
|
+
"type"
|
|
1346
|
+
]
|
|
1347
|
+
},
|
|
1348
|
+
"AutoBeOpenApi.IJsonSchema.IObject": {
|
|
1349
|
+
description: "Object type info.\n\n### Description of {@link properties} property:\n\n> Properties of the object.\n> \n> The `properties` means a list of key-value pairs of the object's\n> regular properties. The key is the name of the regular property, and\n> the value is the type schema info.\n> \n> IMPORTANT: Each property in this object MUST have a detailed\n> description that references and aligns with the description comments\n> from the corresponding Prisma DB schema column.\n> \n> If you need additional properties that is represented by dynamic key,\n> you can use the {@link additionalProperties} instead.",
|
|
1350
|
+
type: "object",
|
|
1351
|
+
properties: {
|
|
1352
|
+
properties: {
|
|
1353
|
+
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
1354
|
+
},
|
|
1355
|
+
additionalProperties: {
|
|
1356
|
+
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>`",
|
|
1357
|
+
anyOf: [
|
|
1358
|
+
{
|
|
1359
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
1360
|
+
},
|
|
1361
|
+
{
|
|
1362
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
1363
|
+
},
|
|
1364
|
+
{
|
|
1365
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
1366
|
+
},
|
|
1367
|
+
{
|
|
1368
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
1369
|
+
},
|
|
1370
|
+
{
|
|
1371
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
1372
|
+
},
|
|
1373
|
+
{
|
|
1374
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
1375
|
+
},
|
|
1376
|
+
{
|
|
1377
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
1378
|
+
},
|
|
1379
|
+
{
|
|
1380
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
1381
|
+
},
|
|
1382
|
+
{
|
|
1383
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
1384
|
+
},
|
|
1385
|
+
{
|
|
1386
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf"
|
|
1387
|
+
},
|
|
1388
|
+
{
|
|
1389
|
+
type: "boolean",
|
|
1390
|
+
"enum": [
|
|
1391
|
+
false
|
|
1392
|
+
]
|
|
1393
|
+
}
|
|
1394
|
+
]
|
|
1395
|
+
},
|
|
1396
|
+
required: {
|
|
1397
|
+
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```",
|
|
1398
|
+
type: "array",
|
|
1399
|
+
items: {
|
|
1400
|
+
type: "string"
|
|
1401
|
+
}
|
|
1402
|
+
},
|
|
1403
|
+
type: {
|
|
1404
|
+
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.",
|
|
1405
|
+
type: "string",
|
|
1406
|
+
"enum": [
|
|
1407
|
+
"object"
|
|
1408
|
+
]
|
|
1409
|
+
}
|
|
1410
|
+
},
|
|
1411
|
+
required: [
|
|
1412
|
+
"properties",
|
|
1413
|
+
"required",
|
|
1414
|
+
"type"
|
|
1415
|
+
]
|
|
1416
|
+
},
|
|
1417
|
+
"AutoBeOpenApi.IJsonSchema.INull": {
|
|
1418
|
+
description: "Null type.",
|
|
1419
|
+
type: "object",
|
|
1420
|
+
properties: {
|
|
1421
|
+
type: {
|
|
1422
|
+
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.",
|
|
1423
|
+
type: "string",
|
|
1424
|
+
"enum": [
|
|
1425
|
+
"null"
|
|
1426
|
+
]
|
|
1427
|
+
}
|
|
1428
|
+
},
|
|
1429
|
+
required: [
|
|
1430
|
+
"type"
|
|
1431
|
+
]
|
|
1432
|
+
},
|
|
1433
|
+
"AutoBeOpenApi.IJsonSchema.IReference": {
|
|
1434
|
+
description: "Reference type directing named schema.",
|
|
1435
|
+
type: "object",
|
|
1436
|
+
properties: {
|
|
1437
|
+
$ref: {
|
|
1438
|
+
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`",
|
|
1439
|
+
type: "string"
|
|
1440
|
+
}
|
|
1441
|
+
},
|
|
1442
|
+
required: [
|
|
1443
|
+
"$ref"
|
|
1444
|
+
]
|
|
1445
|
+
},
|
|
1446
|
+
"AutoBeOpenApi.IJsonSchema.IOneOf": {
|
|
1447
|
+
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.\n\n### Description of {@link discriminator} property:\n\n> Discriminator info of the union type.",
|
|
1448
|
+
type: "object",
|
|
1449
|
+
properties: {
|
|
1450
|
+
oneOf: {
|
|
1451
|
+
description: "List of the union types.",
|
|
1452
|
+
type: "array",
|
|
1453
|
+
items: {
|
|
1454
|
+
anyOf: [
|
|
1455
|
+
{
|
|
1456
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
1457
|
+
},
|
|
1458
|
+
{
|
|
1459
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
1460
|
+
},
|
|
1461
|
+
{
|
|
1462
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
1463
|
+
},
|
|
1464
|
+
{
|
|
1465
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
1466
|
+
},
|
|
1467
|
+
{
|
|
1468
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
1469
|
+
},
|
|
1470
|
+
{
|
|
1471
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
1472
|
+
},
|
|
1473
|
+
{
|
|
1474
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
1475
|
+
},
|
|
1476
|
+
{
|
|
1477
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
1478
|
+
},
|
|
1479
|
+
{
|
|
1480
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
1481
|
+
}
|
|
1482
|
+
]
|
|
1483
|
+
}
|
|
1484
|
+
},
|
|
1485
|
+
discriminator: {
|
|
1486
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator"
|
|
1487
|
+
}
|
|
1488
|
+
},
|
|
1489
|
+
required: [
|
|
1490
|
+
"oneOf"
|
|
1491
|
+
]
|
|
1492
|
+
},
|
|
1493
|
+
"AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator": {
|
|
1494
|
+
description: "Discriminator info of the union type.\n\n### Description of {@link mapping} property:\n\n> Mapping of the discriminator value to the schema name.\n> \n> This property is valid only for {@link IReference} typed\n> {@link IOneOf.oneof} elements. Therefore, `key` of `mapping` is the\n> discriminator value, and `value` of `mapping` is the schema name like\n> `#/components/schemas/SomeObject`.",
|
|
1495
|
+
type: "object",
|
|
1496
|
+
properties: {
|
|
1497
|
+
propertyName: {
|
|
1498
|
+
description: "Property name for the discriminator.",
|
|
1499
|
+
type: "string"
|
|
1500
|
+
},
|
|
1501
|
+
mapping: {
|
|
1502
|
+
$ref: "#/$defs/Recordstringstring"
|
|
1503
|
+
}
|
|
1504
|
+
},
|
|
1505
|
+
required: [
|
|
1506
|
+
"propertyName"
|
|
1507
|
+
]
|
|
1508
|
+
},
|
|
1509
|
+
Recordstringstring: {
|
|
1510
|
+
description: "Construct a type with a set of properties K of type T",
|
|
1511
|
+
type: "object",
|
|
1512
|
+
properties: {},
|
|
1513
|
+
required: [],
|
|
1514
|
+
additionalProperties: {
|
|
1515
|
+
type: "string"
|
|
1516
|
+
}
|
|
1517
|
+
},
|
|
1518
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IObject": {
|
|
1519
|
+
description: "Object type info.\n\n### Description of {@link properties} property:\n\n> Properties of the object.\n> \n> The `properties` means a list of key-value pairs of the object's\n> regular properties. The key is the name of the regular property, and\n> the value is the type schema info.\n> \n> IMPORTANT: Each property in this object MUST have a detailed\n> description that references and aligns with the description comments\n> from the corresponding Prisma DB schema column.\n> \n> If you need additional properties that is represented by dynamic key,\n> you can use the {@link additionalProperties} instead.",
|
|
1520
|
+
type: "object",
|
|
1521
|
+
properties: {
|
|
1522
|
+
properties: {
|
|
1523
|
+
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
1524
|
+
},
|
|
1525
|
+
additionalProperties: {
|
|
1526
|
+
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>`",
|
|
1527
|
+
anyOf: [
|
|
1528
|
+
{
|
|
1529
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
1530
|
+
},
|
|
1531
|
+
{
|
|
1532
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
1533
|
+
},
|
|
1534
|
+
{
|
|
1535
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
1536
|
+
},
|
|
1537
|
+
{
|
|
1538
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
1539
|
+
},
|
|
1540
|
+
{
|
|
1541
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
1542
|
+
},
|
|
1543
|
+
{
|
|
1544
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
1545
|
+
},
|
|
1546
|
+
{
|
|
1547
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
1548
|
+
},
|
|
1549
|
+
{
|
|
1550
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
1551
|
+
},
|
|
1552
|
+
{
|
|
1553
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
1554
|
+
},
|
|
1555
|
+
{
|
|
1556
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf"
|
|
1557
|
+
},
|
|
1558
|
+
{
|
|
1559
|
+
type: "boolean",
|
|
1560
|
+
"enum": [
|
|
1561
|
+
false
|
|
1562
|
+
]
|
|
1563
|
+
}
|
|
1564
|
+
]
|
|
1565
|
+
},
|
|
1566
|
+
required: {
|
|
1567
|
+
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```",
|
|
1568
|
+
type: "array",
|
|
1569
|
+
items: {
|
|
1570
|
+
type: "string"
|
|
1571
|
+
}
|
|
1572
|
+
},
|
|
1573
|
+
type: {
|
|
1574
|
+
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.",
|
|
1575
|
+
type: "string",
|
|
1576
|
+
"enum": [
|
|
1577
|
+
"object"
|
|
1578
|
+
]
|
|
1579
|
+
},
|
|
1580
|
+
description: {
|
|
1581
|
+
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.",
|
|
1582
|
+
type: "string"
|
|
1583
|
+
}
|
|
1584
|
+
},
|
|
1585
|
+
required: [
|
|
1586
|
+
"properties",
|
|
1587
|
+
"required",
|
|
1588
|
+
"type",
|
|
1589
|
+
"description"
|
|
1590
|
+
]
|
|
1591
|
+
},
|
|
1592
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IReference": {
|
|
1593
|
+
description: "Reference type directing named schema.",
|
|
1594
|
+
type: "object",
|
|
1595
|
+
properties: {
|
|
1596
|
+
$ref: {
|
|
1597
|
+
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`",
|
|
1598
|
+
type: "string"
|
|
1599
|
+
},
|
|
1600
|
+
description: {
|
|
1601
|
+
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.",
|
|
1602
|
+
type: "string"
|
|
1603
|
+
}
|
|
1604
|
+
},
|
|
1605
|
+
required: [
|
|
1606
|
+
"$ref",
|
|
1607
|
+
"description"
|
|
1608
|
+
]
|
|
1609
|
+
},
|
|
1610
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IOneOf": {
|
|
1611
|
+
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.\n\n### Description of {@link discriminator} property:\n\n> Discriminator info of the union type.",
|
|
1612
|
+
type: "object",
|
|
1613
|
+
properties: {
|
|
1614
|
+
oneOf: {
|
|
1615
|
+
description: "List of the union types.",
|
|
1616
|
+
type: "array",
|
|
1617
|
+
items: {
|
|
1618
|
+
anyOf: [
|
|
1619
|
+
{
|
|
1620
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
1621
|
+
},
|
|
1622
|
+
{
|
|
1623
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
1624
|
+
},
|
|
1625
|
+
{
|
|
1626
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
1627
|
+
},
|
|
1628
|
+
{
|
|
1629
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
1630
|
+
},
|
|
1631
|
+
{
|
|
1632
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
1633
|
+
},
|
|
1634
|
+
{
|
|
1635
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
1636
|
+
},
|
|
1637
|
+
{
|
|
1638
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
1639
|
+
},
|
|
1640
|
+
{
|
|
1641
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
1642
|
+
},
|
|
1643
|
+
{
|
|
1644
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
1645
|
+
}
|
|
1646
|
+
]
|
|
1647
|
+
}
|
|
1648
|
+
},
|
|
1649
|
+
discriminator: {
|
|
1650
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator"
|
|
1651
|
+
},
|
|
1652
|
+
description: {
|
|
1653
|
+
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.",
|
|
1654
|
+
type: "string"
|
|
1655
|
+
}
|
|
1656
|
+
},
|
|
1657
|
+
required: [
|
|
1658
|
+
"oneOf",
|
|
1659
|
+
"description"
|
|
1660
|
+
]
|
|
1661
|
+
},
|
|
1662
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.INull": {
|
|
1663
|
+
description: "Null type.",
|
|
1664
|
+
type: "object",
|
|
1665
|
+
properties: {
|
|
1666
|
+
type: {
|
|
1667
|
+
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.",
|
|
1668
|
+
type: "string",
|
|
1669
|
+
"enum": [
|
|
1670
|
+
"null"
|
|
1671
|
+
]
|
|
1672
|
+
},
|
|
1673
|
+
description: {
|
|
1674
|
+
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.",
|
|
1675
|
+
type: "string"
|
|
1676
|
+
}
|
|
1677
|
+
},
|
|
1678
|
+
required: [
|
|
1679
|
+
"type",
|
|
1680
|
+
"description"
|
|
1681
|
+
]
|
|
1682
|
+
}
|
|
278
1683
|
}
|
|
279
1684
|
},
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
1685
|
+
description: "Complements missing schema types\n\nThis method fills in schema definitions that are referenced via $ref but\nnot yet defined in the `components.schemas` section. For example, if an API\noperation references `{ \"$ref\": \"#/components/schemas/UserProfile\" }` but\n`UserProfile` type is not defined in `components.schemas`, this method will\nadd the missing schema definition.\n\nThis function is designed to be called via AI function calling mechanism to\nensure the OpenAPI document is complete and all referenced schemas are\nproperly defined.",
|
|
1686
|
+
validate: (() => { const _io0 = input => "string" === typeof input.draft && ("object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) && _io1(input.schemas)); const _io1 = input => Object.keys(input).every(key => {
|
|
1687
|
+
const value = input[key];
|
|
1688
|
+
if (undefined === value)
|
|
1689
|
+
return true;
|
|
1690
|
+
return "object" === typeof value && null !== value && _iu1(value);
|
|
1691
|
+
}); const _io2 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io3 = input => "boolean" === input.type && "string" === typeof input.description; const _io4 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type && "string" === typeof input.description; const _io5 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type && "string" === typeof input.description; const _io6 = input => (undefined === input.format || "string" === typeof input.format) && (undefined === input.pattern || "string" === typeof input.pattern) && (undefined === input.contentMediaType || "string" === typeof input.contentMediaType) && (undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000)) && (undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000)) && "string" === input.type && "string" === typeof input.description; const _io7 = input => "object" === typeof input.items && null !== input.items && _iu2(input.items) && (undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems) && (undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000)) && (undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000)) && "array" === input.type && "string" === typeof input.description; const _io8 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type; const _io9 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type; const _io10 = input => (undefined === input.format || "string" === typeof input.format) && (undefined === input.pattern || "string" === typeof input.pattern) && (undefined === input.contentMediaType || "string" === typeof input.contentMediaType) && (undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000)) && (undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000)) && "string" === input.type; const _io11 = input => "string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]; const _io12 = input => "boolean" === input.type; const _io13 = input => "object" === typeof input.items && null !== input.items && _iu2(input.items) && (undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems) && (undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000)) && (undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000)) && "array" === input.type; const _io14 = input => "object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) && _io1(input.properties) && (null !== input.additionalProperties && (undefined === input.additionalProperties || false === input.additionalProperties || "object" === typeof input.additionalProperties && null !== input.additionalProperties && _iu2(input.additionalProperties))) && (Array.isArray(input.required) && input.required.every(elem => "string" === typeof elem)) && "object" === input.type; const _io15 = input => "string" === typeof input.$ref; const _io16 = input => Array.isArray(input.oneOf) && input.oneOf.every(elem => "object" === typeof elem && null !== elem && _iu0(elem)) && (undefined === input.discriminator || "object" === typeof input.discriminator && null !== input.discriminator && _io18(input.discriminator)); const _io17 = input => "null" === input.type; const _io18 = input => "string" === typeof input.propertyName && (undefined === input.mapping || "object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) && _io19(input.mapping)); const _io19 = input => Object.keys(input).every(key => {
|
|
1692
|
+
const value = input[key];
|
|
1693
|
+
if (undefined === value)
|
|
1694
|
+
return true;
|
|
1695
|
+
return "string" === typeof value;
|
|
1696
|
+
}); const _io20 = input => "object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) && _io1(input.properties) && (null !== input.additionalProperties && (undefined === input.additionalProperties || false === input.additionalProperties || "object" === typeof input.additionalProperties && null !== input.additionalProperties && _iu2(input.additionalProperties))) && (Array.isArray(input.required) && input.required.every(elem => "string" === typeof elem)) && "object" === input.type && "string" === typeof input.description; const _io21 = input => "string" === typeof input.$ref && "string" === typeof input.description; const _io22 = input => Array.isArray(input.oneOf) && input.oneOf.every(elem => "object" === typeof elem && null !== elem && _iu0(elem)) && (undefined === input.discriminator || "object" === typeof input.discriminator && null !== input.discriminator && _io18(input.discriminator)) && "string" === typeof input.description; const _io23 = input => "null" === input.type && "string" === typeof input.description; const _iu0 = input => (() => {
|
|
1697
|
+
if ("number" === input.type)
|
|
1698
|
+
return _io9(input);
|
|
1699
|
+
else if ("integer" === input.type)
|
|
1700
|
+
return _io8(input);
|
|
1701
|
+
else if ("string" === input.type)
|
|
1702
|
+
return _io10(input);
|
|
1703
|
+
else if (undefined !== input["const"])
|
|
1704
|
+
return _io11(input);
|
|
1705
|
+
else if ("null" === input.type)
|
|
1706
|
+
return _io17(input);
|
|
1707
|
+
else if ("boolean" === input.type)
|
|
1708
|
+
return _io12(input);
|
|
1709
|
+
else if ("array" === input.type)
|
|
1710
|
+
return _io13(input);
|
|
1711
|
+
else if ("object" === input.type)
|
|
1712
|
+
return _io14(input);
|
|
1713
|
+
else if (undefined !== input.$ref)
|
|
1714
|
+
return _io15(input);
|
|
1715
|
+
else
|
|
1716
|
+
return false;
|
|
1717
|
+
})(); const _iu1 = input => (() => {
|
|
1718
|
+
if (undefined !== input["const"])
|
|
1719
|
+
return _io2(input);
|
|
1720
|
+
else if ("boolean" === input.type)
|
|
1721
|
+
return _io3(input);
|
|
1722
|
+
else if ("number" === input.type)
|
|
1723
|
+
return _io5(input);
|
|
1724
|
+
else if ("integer" === input.type)
|
|
1725
|
+
return _io4(input);
|
|
1726
|
+
else if ("string" === input.type)
|
|
1727
|
+
return _io6(input);
|
|
1728
|
+
else if ("array" === input.type)
|
|
1729
|
+
return _io7(input);
|
|
1730
|
+
else if ("object" === input.type)
|
|
1731
|
+
return _io20(input);
|
|
1732
|
+
else if (undefined !== input.$ref)
|
|
1733
|
+
return _io21(input);
|
|
1734
|
+
else if (undefined !== input.oneOf)
|
|
1735
|
+
return _io22(input);
|
|
1736
|
+
else if ("null" === input.type)
|
|
1737
|
+
return _io23(input);
|
|
1738
|
+
else
|
|
1739
|
+
return false;
|
|
1740
|
+
})(); const _iu2 = input => (() => {
|
|
1741
|
+
if ("number" === input.type)
|
|
1742
|
+
return _io9(input);
|
|
1743
|
+
else if ("integer" === input.type)
|
|
1744
|
+
return _io8(input);
|
|
1745
|
+
else if ("string" === input.type)
|
|
1746
|
+
return _io10(input);
|
|
1747
|
+
else if (undefined !== input["const"])
|
|
1748
|
+
return _io11(input);
|
|
1749
|
+
else if ("null" === input.type)
|
|
1750
|
+
return _io17(input);
|
|
1751
|
+
else if ("boolean" === input.type)
|
|
1752
|
+
return _io12(input);
|
|
1753
|
+
else if ("array" === input.type)
|
|
1754
|
+
return _io13(input);
|
|
1755
|
+
else if ("object" === input.type)
|
|
1756
|
+
return _io14(input);
|
|
1757
|
+
else if (undefined !== input.$ref)
|
|
1758
|
+
return _io15(input);
|
|
1759
|
+
else if (undefined !== input.oneOf)
|
|
1760
|
+
return _io16(input);
|
|
1761
|
+
else
|
|
1762
|
+
return false;
|
|
1763
|
+
})(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.draft || _report(_exceptionable, {
|
|
1764
|
+
path: _path + ".draft",
|
|
1765
|
+
expected: "string",
|
|
1766
|
+
value: input.draft
|
|
1767
|
+
}), ("object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) || _report(_exceptionable, {
|
|
1768
|
+
path: _path + ".schemas",
|
|
1769
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
1770
|
+
value: input.schemas
|
|
1771
|
+
})) && _vo1(input.schemas, _path + ".schemas", true && _exceptionable) || _report(_exceptionable, {
|
|
1772
|
+
path: _path + ".schemas",
|
|
1773
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
1774
|
+
value: input.schemas
|
|
1775
|
+
})].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
|
|
1776
|
+
const value = input[key];
|
|
1777
|
+
if (undefined === value)
|
|
1778
|
+
return true;
|
|
1779
|
+
return ("object" === typeof value && null !== value || _report(_exceptionable, {
|
|
1780
|
+
path: _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key),
|
|
1781
|
+
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)",
|
|
1782
|
+
value: value
|
|
1783
|
+
})) && _vu1(value, _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key), true && _exceptionable) || _report(_exceptionable, {
|
|
1784
|
+
path: _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key),
|
|
1785
|
+
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)",
|
|
1786
|
+
value: value
|
|
1787
|
+
});
|
|
1788
|
+
}).every(flag => flag)].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"] || _report(_exceptionable, {
|
|
1789
|
+
path: _path + "[\"const\"]",
|
|
1790
|
+
expected: "(boolean | number | string)",
|
|
1791
|
+
value: input["const"]
|
|
1792
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
1793
|
+
path: _path + ".description",
|
|
1794
|
+
expected: "string",
|
|
1795
|
+
value: input.description
|
|
1796
|
+
})].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["boolean" === input.type || _report(_exceptionable, {
|
|
1797
|
+
path: _path + ".type",
|
|
1798
|
+
expected: "\"boolean\"",
|
|
1799
|
+
value: input.type
|
|
1800
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
1801
|
+
path: _path + ".description",
|
|
1802
|
+
expected: "string",
|
|
1803
|
+
value: input.description
|
|
1804
|
+
})].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000 || _report(_exceptionable, {
|
|
1805
|
+
path: _path + ".minimum",
|
|
1806
|
+
expected: "number & Type<\"int64\">",
|
|
1807
|
+
value: input.minimum
|
|
1808
|
+
})) || _report(_exceptionable, {
|
|
1809
|
+
path: _path + ".minimum",
|
|
1810
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
1811
|
+
value: input.minimum
|
|
1812
|
+
}), undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000 || _report(_exceptionable, {
|
|
1813
|
+
path: _path + ".maximum",
|
|
1814
|
+
expected: "number & Type<\"int64\">",
|
|
1815
|
+
value: input.maximum
|
|
1816
|
+
})) || _report(_exceptionable, {
|
|
1817
|
+
path: _path + ".maximum",
|
|
1818
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
1819
|
+
value: input.maximum
|
|
1820
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
1821
|
+
path: _path + ".exclusiveMinimum",
|
|
1822
|
+
expected: "(number | undefined)",
|
|
1823
|
+
value: input.exclusiveMinimum
|
|
1824
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
1825
|
+
path: _path + ".exclusiveMaximum",
|
|
1826
|
+
expected: "(number | undefined)",
|
|
1827
|
+
value: input.exclusiveMaximum
|
|
1828
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 || _report(_exceptionable, {
|
|
1829
|
+
path: _path + ".multipleOf",
|
|
1830
|
+
expected: "number & Type<\"uint64\">",
|
|
1831
|
+
value: input.multipleOf
|
|
1832
|
+
})) && (0 < input.multipleOf || _report(_exceptionable, {
|
|
1833
|
+
path: _path + ".multipleOf",
|
|
1834
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
1835
|
+
value: input.multipleOf
|
|
1836
|
+
})) || _report(_exceptionable, {
|
|
1837
|
+
path: _path + ".multipleOf",
|
|
1838
|
+
expected: "((number & Type<\"uint64\"> & ExclusiveMinimum<0>) | undefined)",
|
|
1839
|
+
value: input.multipleOf
|
|
1840
|
+
}), "integer" === input.type || _report(_exceptionable, {
|
|
1841
|
+
path: _path + ".type",
|
|
1842
|
+
expected: "\"integer\"",
|
|
1843
|
+
value: input.type
|
|
1844
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
1845
|
+
path: _path + ".description",
|
|
1846
|
+
expected: "string",
|
|
1847
|
+
value: input.description
|
|
1848
|
+
})].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum || _report(_exceptionable, {
|
|
1849
|
+
path: _path + ".minimum",
|
|
1850
|
+
expected: "(number | undefined)",
|
|
1851
|
+
value: input.minimum
|
|
1852
|
+
}), undefined === input.maximum || "number" === typeof input.maximum || _report(_exceptionable, {
|
|
1853
|
+
path: _path + ".maximum",
|
|
1854
|
+
expected: "(number | undefined)",
|
|
1855
|
+
value: input.maximum
|
|
1856
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
1857
|
+
path: _path + ".exclusiveMinimum",
|
|
1858
|
+
expected: "(number | undefined)",
|
|
1859
|
+
value: input.exclusiveMinimum
|
|
1860
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
1861
|
+
path: _path + ".exclusiveMaximum",
|
|
1862
|
+
expected: "(number | undefined)",
|
|
1863
|
+
value: input.exclusiveMaximum
|
|
1864
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (0 < input.multipleOf || _report(_exceptionable, {
|
|
1865
|
+
path: _path + ".multipleOf",
|
|
1866
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
1867
|
+
value: input.multipleOf
|
|
1868
|
+
})) || _report(_exceptionable, {
|
|
1869
|
+
path: _path + ".multipleOf",
|
|
1870
|
+
expected: "((number & ExclusiveMinimum<0>) | undefined)",
|
|
1871
|
+
value: input.multipleOf
|
|
1872
|
+
}), "number" === input.type || _report(_exceptionable, {
|
|
1873
|
+
path: _path + ".type",
|
|
1874
|
+
expected: "\"number\"",
|
|
1875
|
+
value: input.type
|
|
1876
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
1877
|
+
path: _path + ".description",
|
|
1878
|
+
expected: "string",
|
|
1879
|
+
value: input.description
|
|
1880
|
+
})].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => [undefined === input.format || "string" === typeof input.format || _report(_exceptionable, {
|
|
1881
|
+
path: _path + ".format",
|
|
1882
|
+
expected: "(string | undefined)",
|
|
1883
|
+
value: input.format
|
|
1884
|
+
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
1885
|
+
path: _path + ".pattern",
|
|
1886
|
+
expected: "(string | undefined)",
|
|
1887
|
+
value: input.pattern
|
|
1888
|
+
}), undefined === input.contentMediaType || "string" === typeof input.contentMediaType || _report(_exceptionable, {
|
|
1889
|
+
path: _path + ".contentMediaType",
|
|
1890
|
+
expected: "(string | undefined)",
|
|
1891
|
+
value: input.contentMediaType
|
|
1892
|
+
}), undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
1893
|
+
path: _path + ".minLength",
|
|
1894
|
+
expected: "number & Type<\"uint64\">",
|
|
1895
|
+
value: input.minLength
|
|
1896
|
+
})) || _report(_exceptionable, {
|
|
1897
|
+
path: _path + ".minLength",
|
|
1898
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
1899
|
+
value: input.minLength
|
|
1900
|
+
}), undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
1901
|
+
path: _path + ".maxLength",
|
|
1902
|
+
expected: "number & Type<\"uint64\">",
|
|
1903
|
+
value: input.maxLength
|
|
1904
|
+
})) || _report(_exceptionable, {
|
|
1905
|
+
path: _path + ".maxLength",
|
|
1906
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
1907
|
+
value: input.maxLength
|
|
1908
|
+
}), "string" === input.type || _report(_exceptionable, {
|
|
1909
|
+
path: _path + ".type",
|
|
1910
|
+
expected: "\"string\"",
|
|
1911
|
+
value: input.type
|
|
1912
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
1913
|
+
path: _path + ".description",
|
|
1914
|
+
expected: "string",
|
|
1915
|
+
value: input.description
|
|
1916
|
+
})].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [("object" === typeof input.items && null !== input.items || _report(_exceptionable, {
|
|
1917
|
+
path: _path + ".items",
|
|
1918
|
+
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)",
|
|
1919
|
+
value: input.items
|
|
1920
|
+
})) && _vu2(input.items, _path + ".items", true && _exceptionable) || _report(_exceptionable, {
|
|
1921
|
+
path: _path + ".items",
|
|
1922
|
+
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)",
|
|
1923
|
+
value: input.items
|
|
1924
|
+
}), undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems || _report(_exceptionable, {
|
|
1925
|
+
path: _path + ".uniqueItems",
|
|
1926
|
+
expected: "(boolean | undefined)",
|
|
1927
|
+
value: input.uniqueItems
|
|
1928
|
+
}), undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
1929
|
+
path: _path + ".minItems",
|
|
1930
|
+
expected: "number & Type<\"uint64\">",
|
|
1931
|
+
value: input.minItems
|
|
1932
|
+
})) || _report(_exceptionable, {
|
|
1933
|
+
path: _path + ".minItems",
|
|
1934
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
1935
|
+
value: input.minItems
|
|
1936
|
+
}), undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
1937
|
+
path: _path + ".maxItems",
|
|
1938
|
+
expected: "number & Type<\"uint64\">",
|
|
1939
|
+
value: input.maxItems
|
|
1940
|
+
})) || _report(_exceptionable, {
|
|
1941
|
+
path: _path + ".maxItems",
|
|
1942
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
1943
|
+
value: input.maxItems
|
|
1944
|
+
}), "array" === input.type || _report(_exceptionable, {
|
|
1945
|
+
path: _path + ".type",
|
|
1946
|
+
expected: "\"array\"",
|
|
1947
|
+
value: input.type
|
|
1948
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
1949
|
+
path: _path + ".description",
|
|
1950
|
+
expected: "string",
|
|
1951
|
+
value: input.description
|
|
1952
|
+
})].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000 || _report(_exceptionable, {
|
|
1953
|
+
path: _path + ".minimum",
|
|
1954
|
+
expected: "number & Type<\"int64\">",
|
|
1955
|
+
value: input.minimum
|
|
1956
|
+
})) || _report(_exceptionable, {
|
|
1957
|
+
path: _path + ".minimum",
|
|
1958
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
1959
|
+
value: input.minimum
|
|
1960
|
+
}), undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000 || _report(_exceptionable, {
|
|
1961
|
+
path: _path + ".maximum",
|
|
1962
|
+
expected: "number & Type<\"int64\">",
|
|
1963
|
+
value: input.maximum
|
|
1964
|
+
})) || _report(_exceptionable, {
|
|
1965
|
+
path: _path + ".maximum",
|
|
1966
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
1967
|
+
value: input.maximum
|
|
1968
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
1969
|
+
path: _path + ".exclusiveMinimum",
|
|
1970
|
+
expected: "(number | undefined)",
|
|
1971
|
+
value: input.exclusiveMinimum
|
|
1972
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
1973
|
+
path: _path + ".exclusiveMaximum",
|
|
1974
|
+
expected: "(number | undefined)",
|
|
1975
|
+
value: input.exclusiveMaximum
|
|
1976
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 || _report(_exceptionable, {
|
|
1977
|
+
path: _path + ".multipleOf",
|
|
1978
|
+
expected: "number & Type<\"uint64\">",
|
|
1979
|
+
value: input.multipleOf
|
|
1980
|
+
})) && (0 < input.multipleOf || _report(_exceptionable, {
|
|
1981
|
+
path: _path + ".multipleOf",
|
|
1982
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
1983
|
+
value: input.multipleOf
|
|
1984
|
+
})) || _report(_exceptionable, {
|
|
1985
|
+
path: _path + ".multipleOf",
|
|
1986
|
+
expected: "((number & Type<\"uint64\"> & ExclusiveMinimum<0>) | undefined)",
|
|
1987
|
+
value: input.multipleOf
|
|
1988
|
+
}), "integer" === input.type || _report(_exceptionable, {
|
|
1989
|
+
path: _path + ".type",
|
|
1990
|
+
expected: "\"integer\"",
|
|
1991
|
+
value: input.type
|
|
1992
|
+
})].every(flag => flag); const _vo9 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum || _report(_exceptionable, {
|
|
1993
|
+
path: _path + ".minimum",
|
|
1994
|
+
expected: "(number | undefined)",
|
|
1995
|
+
value: input.minimum
|
|
1996
|
+
}), undefined === input.maximum || "number" === typeof input.maximum || _report(_exceptionable, {
|
|
1997
|
+
path: _path + ".maximum",
|
|
1998
|
+
expected: "(number | undefined)",
|
|
1999
|
+
value: input.maximum
|
|
2000
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
2001
|
+
path: _path + ".exclusiveMinimum",
|
|
2002
|
+
expected: "(number | undefined)",
|
|
2003
|
+
value: input.exclusiveMinimum
|
|
2004
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
2005
|
+
path: _path + ".exclusiveMaximum",
|
|
2006
|
+
expected: "(number | undefined)",
|
|
2007
|
+
value: input.exclusiveMaximum
|
|
2008
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (0 < input.multipleOf || _report(_exceptionable, {
|
|
2009
|
+
path: _path + ".multipleOf",
|
|
2010
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
2011
|
+
value: input.multipleOf
|
|
2012
|
+
})) || _report(_exceptionable, {
|
|
2013
|
+
path: _path + ".multipleOf",
|
|
2014
|
+
expected: "((number & ExclusiveMinimum<0>) | undefined)",
|
|
2015
|
+
value: input.multipleOf
|
|
2016
|
+
}), "number" === input.type || _report(_exceptionable, {
|
|
2017
|
+
path: _path + ".type",
|
|
2018
|
+
expected: "\"number\"",
|
|
2019
|
+
value: input.type
|
|
2020
|
+
})].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => [undefined === input.format || "string" === typeof input.format || _report(_exceptionable, {
|
|
2021
|
+
path: _path + ".format",
|
|
2022
|
+
expected: "(string | undefined)",
|
|
2023
|
+
value: input.format
|
|
2024
|
+
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
2025
|
+
path: _path + ".pattern",
|
|
2026
|
+
expected: "(string | undefined)",
|
|
2027
|
+
value: input.pattern
|
|
2028
|
+
}), undefined === input.contentMediaType || "string" === typeof input.contentMediaType || _report(_exceptionable, {
|
|
2029
|
+
path: _path + ".contentMediaType",
|
|
2030
|
+
expected: "(string | undefined)",
|
|
2031
|
+
value: input.contentMediaType
|
|
2032
|
+
}), undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
2033
|
+
path: _path + ".minLength",
|
|
2034
|
+
expected: "number & Type<\"uint64\">",
|
|
2035
|
+
value: input.minLength
|
|
2036
|
+
})) || _report(_exceptionable, {
|
|
2037
|
+
path: _path + ".minLength",
|
|
2038
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
2039
|
+
value: input.minLength
|
|
2040
|
+
}), undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
2041
|
+
path: _path + ".maxLength",
|
|
2042
|
+
expected: "number & Type<\"uint64\">",
|
|
2043
|
+
value: input.maxLength
|
|
2044
|
+
})) || _report(_exceptionable, {
|
|
2045
|
+
path: _path + ".maxLength",
|
|
2046
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
2047
|
+
value: input.maxLength
|
|
2048
|
+
}), "string" === input.type || _report(_exceptionable, {
|
|
2049
|
+
path: _path + ".type",
|
|
2050
|
+
expected: "\"string\"",
|
|
2051
|
+
value: input.type
|
|
2052
|
+
})].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => ["string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"] || _report(_exceptionable, {
|
|
2053
|
+
path: _path + "[\"const\"]",
|
|
2054
|
+
expected: "(boolean | number | string)",
|
|
2055
|
+
value: input["const"]
|
|
2056
|
+
})].every(flag => flag); const _vo12 = (input, _path, _exceptionable = true) => ["boolean" === input.type || _report(_exceptionable, {
|
|
2057
|
+
path: _path + ".type",
|
|
2058
|
+
expected: "\"boolean\"",
|
|
2059
|
+
value: input.type
|
|
2060
|
+
})].every(flag => flag); const _vo13 = (input, _path, _exceptionable = true) => [("object" === typeof input.items && null !== input.items || _report(_exceptionable, {
|
|
2061
|
+
path: _path + ".items",
|
|
2062
|
+
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)",
|
|
2063
|
+
value: input.items
|
|
2064
|
+
})) && _vu2(input.items, _path + ".items", true && _exceptionable) || _report(_exceptionable, {
|
|
2065
|
+
path: _path + ".items",
|
|
2066
|
+
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)",
|
|
2067
|
+
value: input.items
|
|
2068
|
+
}), undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems || _report(_exceptionable, {
|
|
2069
|
+
path: _path + ".uniqueItems",
|
|
2070
|
+
expected: "(boolean | undefined)",
|
|
2071
|
+
value: input.uniqueItems
|
|
2072
|
+
}), undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
2073
|
+
path: _path + ".minItems",
|
|
2074
|
+
expected: "number & Type<\"uint64\">",
|
|
2075
|
+
value: input.minItems
|
|
2076
|
+
})) || _report(_exceptionable, {
|
|
2077
|
+
path: _path + ".minItems",
|
|
2078
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
2079
|
+
value: input.minItems
|
|
2080
|
+
}), undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
2081
|
+
path: _path + ".maxItems",
|
|
2082
|
+
expected: "number & Type<\"uint64\">",
|
|
2083
|
+
value: input.maxItems
|
|
2084
|
+
})) || _report(_exceptionable, {
|
|
2085
|
+
path: _path + ".maxItems",
|
|
2086
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
2087
|
+
value: input.maxItems
|
|
2088
|
+
}), "array" === input.type || _report(_exceptionable, {
|
|
2089
|
+
path: _path + ".type",
|
|
2090
|
+
expected: "\"array\"",
|
|
2091
|
+
value: input.type
|
|
2092
|
+
})].every(flag => flag); const _vo14 = (input, _path, _exceptionable = true) => [("object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) || _report(_exceptionable, {
|
|
2093
|
+
path: _path + ".properties",
|
|
2094
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
2095
|
+
value: input.properties
|
|
2096
|
+
})) && _vo1(input.properties, _path + ".properties", true && _exceptionable) || _report(_exceptionable, {
|
|
2097
|
+
path: _path + ".properties",
|
|
2098
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
2099
|
+
value: input.properties
|
|
2100
|
+
}), (null !== input.additionalProperties || _report(_exceptionable, {
|
|
2101
|
+
path: _path + ".additionalProperties",
|
|
2102
|
+
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)",
|
|
2103
|
+
value: input.additionalProperties
|
|
2104
|
+
})) && (undefined === input.additionalProperties || false === input.additionalProperties || ("object" === typeof input.additionalProperties && null !== input.additionalProperties || _report(_exceptionable, {
|
|
2105
|
+
path: _path + ".additionalProperties",
|
|
2106
|
+
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)",
|
|
2107
|
+
value: input.additionalProperties
|
|
2108
|
+
})) && _vu2(input.additionalProperties, _path + ".additionalProperties", true && _exceptionable) || _report(_exceptionable, {
|
|
2109
|
+
path: _path + ".additionalProperties",
|
|
2110
|
+
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)",
|
|
2111
|
+
value: input.additionalProperties
|
|
2112
|
+
})), (Array.isArray(input.required) || _report(_exceptionable, {
|
|
2113
|
+
path: _path + ".required",
|
|
2114
|
+
expected: "Array<string>",
|
|
2115
|
+
value: input.required
|
|
2116
|
+
})) && input.required.map((elem, _index5) => "string" === typeof elem || _report(_exceptionable, {
|
|
2117
|
+
path: _path + ".required[" + _index5 + "]",
|
|
2118
|
+
expected: "string",
|
|
2119
|
+
value: elem
|
|
2120
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
2121
|
+
path: _path + ".required",
|
|
2122
|
+
expected: "Array<string>",
|
|
2123
|
+
value: input.required
|
|
2124
|
+
}), "object" === input.type || _report(_exceptionable, {
|
|
2125
|
+
path: _path + ".type",
|
|
2126
|
+
expected: "\"object\"",
|
|
2127
|
+
value: input.type
|
|
2128
|
+
})].every(flag => flag); const _vo15 = (input, _path, _exceptionable = true) => ["string" === typeof input.$ref || _report(_exceptionable, {
|
|
2129
|
+
path: _path + ".$ref",
|
|
2130
|
+
expected: "string",
|
|
2131
|
+
value: input.$ref
|
|
2132
|
+
})].every(flag => flag); const _vo16 = (input, _path, _exceptionable = true) => [(Array.isArray(input.oneOf) || _report(_exceptionable, {
|
|
2133
|
+
path: _path + ".oneOf",
|
|
2134
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
2135
|
+
value: input.oneOf
|
|
2136
|
+
})) && input.oneOf.map((elem, _index6) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
2137
|
+
path: _path + ".oneOf[" + _index6 + "]",
|
|
2138
|
+
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)",
|
|
2139
|
+
value: elem
|
|
2140
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index6 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
2141
|
+
path: _path + ".oneOf[" + _index6 + "]",
|
|
2142
|
+
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)",
|
|
2143
|
+
value: elem
|
|
2144
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
2145
|
+
path: _path + ".oneOf",
|
|
2146
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
2147
|
+
value: input.oneOf
|
|
2148
|
+
}), undefined === input.discriminator || ("object" === typeof input.discriminator && null !== input.discriminator || _report(_exceptionable, {
|
|
2149
|
+
path: _path + ".discriminator",
|
|
2150
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
2151
|
+
value: input.discriminator
|
|
2152
|
+
})) && _vo18(input.discriminator, _path + ".discriminator", true && _exceptionable) || _report(_exceptionable, {
|
|
2153
|
+
path: _path + ".discriminator",
|
|
2154
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
2155
|
+
value: input.discriminator
|
|
2156
|
+
})].every(flag => flag); const _vo17 = (input, _path, _exceptionable = true) => ["null" === input.type || _report(_exceptionable, {
|
|
2157
|
+
path: _path + ".type",
|
|
2158
|
+
expected: "\"null\"",
|
|
2159
|
+
value: input.type
|
|
2160
|
+
})].every(flag => flag); const _vo18 = (input, _path, _exceptionable = true) => ["string" === typeof input.propertyName || _report(_exceptionable, {
|
|
2161
|
+
path: _path + ".propertyName",
|
|
2162
|
+
expected: "string",
|
|
2163
|
+
value: input.propertyName
|
|
2164
|
+
}), undefined === input.mapping || ("object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) || _report(_exceptionable, {
|
|
2165
|
+
path: _path + ".mapping",
|
|
2166
|
+
expected: "(Record<string, string> | undefined)",
|
|
2167
|
+
value: input.mapping
|
|
2168
|
+
})) && _vo19(input.mapping, _path + ".mapping", true && _exceptionable) || _report(_exceptionable, {
|
|
2169
|
+
path: _path + ".mapping",
|
|
2170
|
+
expected: "(Record<string, string> | undefined)",
|
|
2171
|
+
value: input.mapping
|
|
2172
|
+
})].every(flag => flag); const _vo19 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
|
|
2173
|
+
const value = input[key];
|
|
2174
|
+
if (undefined === value)
|
|
2175
|
+
return true;
|
|
2176
|
+
return "string" === typeof value || _report(_exceptionable, {
|
|
2177
|
+
path: _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key),
|
|
2178
|
+
expected: "string",
|
|
2179
|
+
value: value
|
|
2180
|
+
});
|
|
2181
|
+
}).every(flag => flag)].every(flag => flag); const _vo20 = (input, _path, _exceptionable = true) => [("object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) || _report(_exceptionable, {
|
|
2182
|
+
path: _path + ".properties",
|
|
2183
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
2184
|
+
value: input.properties
|
|
2185
|
+
})) && _vo1(input.properties, _path + ".properties", true && _exceptionable) || _report(_exceptionable, {
|
|
2186
|
+
path: _path + ".properties",
|
|
2187
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
2188
|
+
value: input.properties
|
|
2189
|
+
}), (null !== input.additionalProperties || _report(_exceptionable, {
|
|
2190
|
+
path: _path + ".additionalProperties",
|
|
2191
|
+
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)",
|
|
2192
|
+
value: input.additionalProperties
|
|
2193
|
+
})) && (undefined === input.additionalProperties || false === input.additionalProperties || ("object" === typeof input.additionalProperties && null !== input.additionalProperties || _report(_exceptionable, {
|
|
2194
|
+
path: _path + ".additionalProperties",
|
|
2195
|
+
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)",
|
|
2196
|
+
value: input.additionalProperties
|
|
2197
|
+
})) && _vu2(input.additionalProperties, _path + ".additionalProperties", true && _exceptionable) || _report(_exceptionable, {
|
|
2198
|
+
path: _path + ".additionalProperties",
|
|
2199
|
+
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)",
|
|
2200
|
+
value: input.additionalProperties
|
|
2201
|
+
})), (Array.isArray(input.required) || _report(_exceptionable, {
|
|
2202
|
+
path: _path + ".required",
|
|
2203
|
+
expected: "Array<string>",
|
|
2204
|
+
value: input.required
|
|
2205
|
+
})) && input.required.map((elem, _index7) => "string" === typeof elem || _report(_exceptionable, {
|
|
2206
|
+
path: _path + ".required[" + _index7 + "]",
|
|
2207
|
+
expected: "string",
|
|
2208
|
+
value: elem
|
|
2209
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
2210
|
+
path: _path + ".required",
|
|
2211
|
+
expected: "Array<string>",
|
|
2212
|
+
value: input.required
|
|
2213
|
+
}), "object" === input.type || _report(_exceptionable, {
|
|
2214
|
+
path: _path + ".type",
|
|
2215
|
+
expected: "\"object\"",
|
|
2216
|
+
value: input.type
|
|
2217
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
2218
|
+
path: _path + ".description",
|
|
2219
|
+
expected: "string",
|
|
2220
|
+
value: input.description
|
|
2221
|
+
})].every(flag => flag); const _vo21 = (input, _path, _exceptionable = true) => ["string" === typeof input.$ref || _report(_exceptionable, {
|
|
2222
|
+
path: _path + ".$ref",
|
|
2223
|
+
expected: "string",
|
|
2224
|
+
value: input.$ref
|
|
2225
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
2226
|
+
path: _path + ".description",
|
|
2227
|
+
expected: "string",
|
|
2228
|
+
value: input.description
|
|
2229
|
+
})].every(flag => flag); const _vo22 = (input, _path, _exceptionable = true) => [(Array.isArray(input.oneOf) || _report(_exceptionable, {
|
|
2230
|
+
path: _path + ".oneOf",
|
|
2231
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
2232
|
+
value: input.oneOf
|
|
2233
|
+
})) && input.oneOf.map((elem, _index8) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
2234
|
+
path: _path + ".oneOf[" + _index8 + "]",
|
|
2235
|
+
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
|
+
value: elem
|
|
2237
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index8 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
2238
|
+
path: _path + ".oneOf[" + _index8 + "]",
|
|
2239
|
+
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)",
|
|
2240
|
+
value: elem
|
|
2241
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
2242
|
+
path: _path + ".oneOf",
|
|
2243
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
2244
|
+
value: input.oneOf
|
|
2245
|
+
}), undefined === input.discriminator || ("object" === typeof input.discriminator && null !== input.discriminator || _report(_exceptionable, {
|
|
2246
|
+
path: _path + ".discriminator",
|
|
2247
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
2248
|
+
value: input.discriminator
|
|
2249
|
+
})) && _vo18(input.discriminator, _path + ".discriminator", true && _exceptionable) || _report(_exceptionable, {
|
|
2250
|
+
path: _path + ".discriminator",
|
|
2251
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
2252
|
+
value: input.discriminator
|
|
2253
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
2254
|
+
path: _path + ".description",
|
|
2255
|
+
expected: "string",
|
|
2256
|
+
value: input.description
|
|
2257
|
+
})].every(flag => flag); const _vo23 = (input, _path, _exceptionable = true) => ["null" === input.type || _report(_exceptionable, {
|
|
2258
|
+
path: _path + ".type",
|
|
2259
|
+
expected: "\"null\"",
|
|
2260
|
+
value: input.type
|
|
2261
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
2262
|
+
path: _path + ".description",
|
|
2263
|
+
expected: "string",
|
|
2264
|
+
value: input.description
|
|
2265
|
+
})].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
|
|
2266
|
+
if ("number" === input.type)
|
|
2267
|
+
return _vo9(input, _path, true && _exceptionable);
|
|
2268
|
+
else if ("integer" === input.type)
|
|
2269
|
+
return _vo8(input, _path, true && _exceptionable);
|
|
2270
|
+
else if ("string" === input.type)
|
|
2271
|
+
return _vo10(input, _path, true && _exceptionable);
|
|
2272
|
+
else if (undefined !== input["const"])
|
|
2273
|
+
return _vo11(input, _path, true && _exceptionable);
|
|
2274
|
+
else if ("null" === input.type)
|
|
2275
|
+
return _vo17(input, _path, true && _exceptionable);
|
|
2276
|
+
else if ("boolean" === input.type)
|
|
2277
|
+
return _vo12(input, _path, true && _exceptionable);
|
|
2278
|
+
else if ("array" === input.type)
|
|
2279
|
+
return _vo13(input, _path, true && _exceptionable);
|
|
2280
|
+
else if ("object" === input.type)
|
|
2281
|
+
return _vo14(input, _path, true && _exceptionable);
|
|
2282
|
+
else if (undefined !== input.$ref)
|
|
2283
|
+
return _vo15(input, _path, true && _exceptionable);
|
|
2284
|
+
else
|
|
2285
|
+
return _report(_exceptionable, {
|
|
2286
|
+
path: _path,
|
|
2287
|
+
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)",
|
|
2288
|
+
value: input
|
|
2289
|
+
});
|
|
2290
|
+
})(); const _vu1 = (input, _path, _exceptionable = true) => (() => {
|
|
2291
|
+
if (undefined !== input["const"])
|
|
2292
|
+
return _vo2(input, _path, true && _exceptionable);
|
|
2293
|
+
else if ("boolean" === input.type)
|
|
2294
|
+
return _vo3(input, _path, true && _exceptionable);
|
|
2295
|
+
else if ("number" === input.type)
|
|
2296
|
+
return _vo5(input, _path, true && _exceptionable);
|
|
2297
|
+
else if ("integer" === input.type)
|
|
2298
|
+
return _vo4(input, _path, true && _exceptionable);
|
|
2299
|
+
else if ("string" === input.type)
|
|
2300
|
+
return _vo6(input, _path, true && _exceptionable);
|
|
2301
|
+
else if ("array" === input.type)
|
|
2302
|
+
return _vo7(input, _path, true && _exceptionable);
|
|
2303
|
+
else if ("object" === input.type)
|
|
2304
|
+
return _vo20(input, _path, true && _exceptionable);
|
|
2305
|
+
else if (undefined !== input.$ref)
|
|
2306
|
+
return _vo21(input, _path, true && _exceptionable);
|
|
2307
|
+
else if (undefined !== input.oneOf)
|
|
2308
|
+
return _vo22(input, _path, true && _exceptionable);
|
|
2309
|
+
else if ("null" === input.type)
|
|
2310
|
+
return _vo23(input, _path, true && _exceptionable);
|
|
2311
|
+
else
|
|
2312
|
+
return _report(_exceptionable, {
|
|
2313
|
+
path: _path,
|
|
2314
|
+
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)",
|
|
2315
|
+
value: input
|
|
2316
|
+
});
|
|
2317
|
+
})(); const _vu2 = (input, _path, _exceptionable = true) => (() => {
|
|
2318
|
+
if ("number" === input.type)
|
|
2319
|
+
return _vo9(input, _path, true && _exceptionable);
|
|
2320
|
+
else if ("integer" === input.type)
|
|
2321
|
+
return _vo8(input, _path, true && _exceptionable);
|
|
2322
|
+
else if ("string" === input.type)
|
|
2323
|
+
return _vo10(input, _path, true && _exceptionable);
|
|
2324
|
+
else if (undefined !== input["const"])
|
|
2325
|
+
return _vo11(input, _path, true && _exceptionable);
|
|
2326
|
+
else if ("null" === input.type)
|
|
2327
|
+
return _vo17(input, _path, true && _exceptionable);
|
|
2328
|
+
else if ("boolean" === input.type)
|
|
2329
|
+
return _vo12(input, _path, true && _exceptionable);
|
|
2330
|
+
else if ("array" === input.type)
|
|
2331
|
+
return _vo13(input, _path, true && _exceptionable);
|
|
2332
|
+
else if ("object" === input.type)
|
|
2333
|
+
return _vo14(input, _path, true && _exceptionable);
|
|
2334
|
+
else if (undefined !== input.$ref)
|
|
2335
|
+
return _vo15(input, _path, true && _exceptionable);
|
|
2336
|
+
else if (undefined !== input.oneOf)
|
|
2337
|
+
return _vo16(input, _path, true && _exceptionable);
|
|
2338
|
+
else
|
|
2339
|
+
return _report(_exceptionable, {
|
|
2340
|
+
path: _path,
|
|
2341
|
+
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)",
|
|
2342
|
+
value: input
|
|
2343
|
+
});
|
|
2344
|
+
})(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
|
|
2345
|
+
if (false === __is(input)) {
|
|
2346
|
+
errors = [];
|
|
2347
|
+
_report = __typia_transform__validateReport._validateReport(errors);
|
|
2348
|
+
((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
|
|
2349
|
+
path: _path + "",
|
|
2350
|
+
expected: "IAutoBeInterfaceComplementApplication.IProps",
|
|
2351
|
+
value: input
|
|
2352
|
+
})) && _vo0(input, _path + "", true) || _report(true, {
|
|
2353
|
+
path: _path + "",
|
|
2354
|
+
expected: "IAutoBeInterfaceComplementApplication.IProps",
|
|
2355
|
+
value: input
|
|
2356
|
+
}))(input, "$input", true);
|
|
2357
|
+
const success = 0 === errors.length;
|
|
2358
|
+
return success ? {
|
|
2359
|
+
success,
|
|
2360
|
+
data: input
|
|
2361
|
+
} : {
|
|
2362
|
+
success,
|
|
2363
|
+
errors,
|
|
2364
|
+
data: input
|
|
2365
|
+
};
|
|
2366
|
+
}
|
|
2367
|
+
return {
|
|
2368
|
+
success: true,
|
|
2369
|
+
data: input
|
|
2370
|
+
};
|
|
2371
|
+
}; })()
|
|
2372
|
+
}
|
|
2373
|
+
]
|
|
2374
|
+
};
|
|
2375
|
+
__typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
|
|
2376
|
+
validate: {
|
|
2377
|
+
complementComponents: validate,
|
|
2378
|
+
},
|
|
2379
|
+
}), { equals: false }));
|
|
2380
|
+
return application;
|
|
2381
|
+
})(),
|
|
2382
|
+
claude: (validate) => (() => {
|
|
2383
|
+
const application = {
|
|
2384
|
+
model: "claude",
|
|
2385
|
+
options: {
|
|
2386
|
+
reference: true,
|
|
2387
|
+
separate: null
|
|
2388
|
+
},
|
|
2389
|
+
functions: [
|
|
2390
|
+
{
|
|
2391
|
+
name: "complementComponents",
|
|
2392
|
+
parameters: {
|
|
2393
|
+
description: "Current Type: {@link IAutoBeInterfaceComplementApplication.IProps}",
|
|
2394
|
+
type: "object",
|
|
2395
|
+
properties: {
|
|
2396
|
+
draft: {
|
|
2397
|
+
description: "TypeScript draft code for complement schema definitions.\n\nThis property contains TypeScript interface definitions for missing schema\ntypes that were referenced but not defined in the initial schema generation.\nSimilar to the main schema draft, this serves as a preliminary TypeScript\nrepresentation before converting to JSON Schema format.\n\nThe draft helps ensure that complementary schemas maintain consistency with\nthe existing type system and follow the same conventions as the primary schemas.\n\nThis draft typically includes:\n- Missing entity interfaces referenced via $ref\n- Nested object types used within other schemas\n- Shared utility types or enumerations\n- Any transitively referenced types\n\nThe final schemas in the `schemas` property should be validated against and\nderived from this TypeScript draft to ensure type safety and consistency\nacross the entire API specification.\n\nExample complement draft:\n```typescript\ninterface IUserProfile {\n id: string;\n userId: string;\n displayName: string;\n avatarUrl?: string;\n}\n\ninterface IAddress {\n street: string;\n city: string;\n postalCode: string;\n}\n```",
|
|
2398
|
+
type: "string"
|
|
2399
|
+
},
|
|
2400
|
+
schemas: {
|
|
2401
|
+
description: "A collection of missing schema definitions that need to be added to the\nOpenAPI document's `components.schemas` section.\n\nThis object contains schema definitions for types that are referenced but\nnot yet defined:\n\n- Key: Schema name (`string`): The name of the schema type that will be\n referenced in $ref statements\n- Value: `AutoBeOpenApi.IJsonSchema` - The complete JSON Schema definition\n for that type\n\nExample structure:\n\n```typescript\n{\n \"UserProfile\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": { \"type\": \"string\" },\n \"name\": { \"type\": \"string\" },\n \"email\": { \"type\": \"string\", \"format\": \"email\" }\n },\n \"required\": [\"id\", \"name\", \"email\"]\n }\n}\n```\n\nEach schema definition follows the JSON Schema specification and will be\ndirectly inserted into the OpenAPI document's components.schemas section,\nmaking them available for $ref references throughout the API\nspecification.",
|
|
2402
|
+
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
293
2403
|
}
|
|
294
2404
|
},
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
2405
|
+
required: [
|
|
2406
|
+
"draft",
|
|
2407
|
+
"schemas"
|
|
2408
|
+
],
|
|
2409
|
+
additionalProperties: false,
|
|
2410
|
+
$defs: {
|
|
2411
|
+
"RecordstringAutoBeOpenApi.IJsonSchemaDescriptive": {
|
|
2412
|
+
description: "Construct a type with a set of properties K of type T",
|
|
2413
|
+
type: "object",
|
|
2414
|
+
properties: {},
|
|
2415
|
+
required: [],
|
|
2416
|
+
additionalProperties: {
|
|
2417
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive"
|
|
2418
|
+
}
|
|
2419
|
+
},
|
|
2420
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive": {
|
|
2421
|
+
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",
|
|
2422
|
+
oneOf: [
|
|
2423
|
+
{
|
|
2424
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IConstant"
|
|
2425
|
+
},
|
|
2426
|
+
{
|
|
2427
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IBoolean"
|
|
2428
|
+
},
|
|
2429
|
+
{
|
|
2430
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IInteger"
|
|
2431
|
+
},
|
|
2432
|
+
{
|
|
2433
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.INumber"
|
|
2434
|
+
},
|
|
2435
|
+
{
|
|
2436
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IString"
|
|
2437
|
+
},
|
|
2438
|
+
{
|
|
2439
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IArray"
|
|
2440
|
+
},
|
|
2441
|
+
{
|
|
2442
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IObject"
|
|
2443
|
+
},
|
|
2444
|
+
{
|
|
2445
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IReference"
|
|
2446
|
+
},
|
|
2447
|
+
{
|
|
2448
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.IOneOf"
|
|
2449
|
+
},
|
|
2450
|
+
{
|
|
2451
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchemaDescriptive.INull"
|
|
2452
|
+
}
|
|
2453
|
+
]
|
|
2454
|
+
},
|
|
2455
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IConstant": {
|
|
2456
|
+
description: "Constant value type.",
|
|
2457
|
+
type: "object",
|
|
2458
|
+
properties: {
|
|
2459
|
+
"const": {
|
|
2460
|
+
description: "The constant value.",
|
|
2461
|
+
oneOf: [
|
|
2462
|
+
{
|
|
2463
|
+
type: "string"
|
|
2464
|
+
},
|
|
2465
|
+
{
|
|
2466
|
+
type: "number"
|
|
2467
|
+
},
|
|
2468
|
+
{
|
|
2469
|
+
type: "boolean"
|
|
2470
|
+
}
|
|
2471
|
+
]
|
|
2472
|
+
},
|
|
2473
|
+
description: {
|
|
2474
|
+
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.",
|
|
2475
|
+
type: "string"
|
|
2476
|
+
}
|
|
2477
|
+
},
|
|
2478
|
+
required: [
|
|
2479
|
+
"const",
|
|
2480
|
+
"description"
|
|
2481
|
+
]
|
|
2482
|
+
},
|
|
2483
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IBoolean": {
|
|
2484
|
+
description: "Boolean type info.",
|
|
2485
|
+
type: "object",
|
|
2486
|
+
properties: {
|
|
2487
|
+
type: {
|
|
2488
|
+
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.",
|
|
2489
|
+
"const": "boolean"
|
|
2490
|
+
},
|
|
2491
|
+
description: {
|
|
2492
|
+
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.",
|
|
2493
|
+
type: "string"
|
|
2494
|
+
}
|
|
2495
|
+
},
|
|
2496
|
+
required: [
|
|
2497
|
+
"type",
|
|
2498
|
+
"description"
|
|
2499
|
+
]
|
|
2500
|
+
},
|
|
2501
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IInteger": {
|
|
2502
|
+
description: "Integer type info.",
|
|
2503
|
+
type: "object",
|
|
2504
|
+
properties: {
|
|
2505
|
+
minimum: {
|
|
2506
|
+
description: "Minimum value restriction.",
|
|
2507
|
+
type: "integer"
|
|
2508
|
+
},
|
|
2509
|
+
maximum: {
|
|
2510
|
+
description: "Maximum value restriction.",
|
|
2511
|
+
type: "integer"
|
|
2512
|
+
},
|
|
2513
|
+
exclusiveMinimum: {
|
|
2514
|
+
description: "Exclusive minimum value restriction.",
|
|
2515
|
+
type: "number"
|
|
2516
|
+
},
|
|
2517
|
+
exclusiveMaximum: {
|
|
2518
|
+
description: "Exclusive maximum value restriction.",
|
|
2519
|
+
type: "number"
|
|
2520
|
+
},
|
|
2521
|
+
multipleOf: {
|
|
2522
|
+
description: "Multiple of value restriction.",
|
|
2523
|
+
type: "integer",
|
|
2524
|
+
exclusiveMinimum: 0
|
|
2525
|
+
},
|
|
2526
|
+
type: {
|
|
2527
|
+
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.",
|
|
2528
|
+
"const": "integer"
|
|
2529
|
+
},
|
|
2530
|
+
description: {
|
|
2531
|
+
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.",
|
|
2532
|
+
type: "string"
|
|
2533
|
+
}
|
|
2534
|
+
},
|
|
2535
|
+
required: [
|
|
2536
|
+
"type",
|
|
2537
|
+
"description"
|
|
2538
|
+
]
|
|
2539
|
+
},
|
|
2540
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.INumber": {
|
|
2541
|
+
description: "Number (double) type info.",
|
|
2542
|
+
type: "object",
|
|
2543
|
+
properties: {
|
|
2544
|
+
minimum: {
|
|
2545
|
+
description: "Minimum value restriction.",
|
|
2546
|
+
type: "number"
|
|
2547
|
+
},
|
|
2548
|
+
maximum: {
|
|
2549
|
+
description: "Maximum value restriction.",
|
|
2550
|
+
type: "number"
|
|
2551
|
+
},
|
|
2552
|
+
exclusiveMinimum: {
|
|
2553
|
+
description: "Exclusive minimum value restriction.",
|
|
2554
|
+
type: "number"
|
|
2555
|
+
},
|
|
2556
|
+
exclusiveMaximum: {
|
|
2557
|
+
description: "Exclusive maximum value restriction.",
|
|
2558
|
+
type: "number"
|
|
2559
|
+
},
|
|
2560
|
+
multipleOf: {
|
|
2561
|
+
description: "Multiple of value restriction.",
|
|
2562
|
+
type: "number",
|
|
2563
|
+
exclusiveMinimum: 0
|
|
2564
|
+
},
|
|
2565
|
+
type: {
|
|
2566
|
+
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.",
|
|
2567
|
+
"const": "number"
|
|
2568
|
+
},
|
|
2569
|
+
description: {
|
|
2570
|
+
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.",
|
|
2571
|
+
type: "string"
|
|
2572
|
+
}
|
|
2573
|
+
},
|
|
2574
|
+
required: [
|
|
2575
|
+
"type",
|
|
2576
|
+
"description"
|
|
2577
|
+
]
|
|
2578
|
+
},
|
|
2579
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IString": {
|
|
2580
|
+
description: "String type info.",
|
|
2581
|
+
type: "object",
|
|
2582
|
+
properties: {
|
|
2583
|
+
format: {
|
|
2584
|
+
description: "Format restriction.",
|
|
2585
|
+
type: "string"
|
|
2586
|
+
},
|
|
2587
|
+
pattern: {
|
|
2588
|
+
description: "Pattern restriction.",
|
|
2589
|
+
type: "string"
|
|
2590
|
+
},
|
|
2591
|
+
contentMediaType: {
|
|
2592
|
+
description: "Content media type restriction.",
|
|
2593
|
+
type: "string"
|
|
2594
|
+
},
|
|
2595
|
+
minLength: {
|
|
2596
|
+
description: "Minimum length restriction.",
|
|
2597
|
+
type: "integer",
|
|
2598
|
+
minimum: 0
|
|
2599
|
+
},
|
|
2600
|
+
maxLength: {
|
|
2601
|
+
description: "Maximum length restriction.",
|
|
2602
|
+
type: "integer",
|
|
2603
|
+
minimum: 0
|
|
2604
|
+
},
|
|
2605
|
+
type: {
|
|
2606
|
+
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.",
|
|
2607
|
+
"const": "string"
|
|
2608
|
+
},
|
|
2609
|
+
description: {
|
|
2610
|
+
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.",
|
|
2611
|
+
type: "string"
|
|
2612
|
+
}
|
|
2613
|
+
},
|
|
2614
|
+
required: [
|
|
2615
|
+
"type",
|
|
2616
|
+
"description"
|
|
2617
|
+
]
|
|
2618
|
+
},
|
|
2619
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IArray": {
|
|
2620
|
+
description: "Array type info.",
|
|
2621
|
+
type: "object",
|
|
2622
|
+
properties: {
|
|
2623
|
+
items: {
|
|
2624
|
+
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>`.",
|
|
2625
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema"
|
|
2626
|
+
},
|
|
2627
|
+
uniqueItems: {
|
|
2628
|
+
description: "Unique items restriction.\n\nIf this property value is `true`, target array must have unique items.",
|
|
2629
|
+
type: "boolean"
|
|
2630
|
+
},
|
|
2631
|
+
minItems: {
|
|
2632
|
+
description: "Minimum items restriction.\n\nRestriction of minimum number of items in the array.",
|
|
2633
|
+
type: "integer",
|
|
2634
|
+
minimum: 0
|
|
2635
|
+
},
|
|
2636
|
+
maxItems: {
|
|
2637
|
+
description: "Maximum items restriction.\n\nRestriction of maximum number of items in the array.",
|
|
2638
|
+
type: "integer",
|
|
2639
|
+
minimum: 0
|
|
2640
|
+
},
|
|
2641
|
+
type: {
|
|
2642
|
+
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.",
|
|
2643
|
+
"const": "array"
|
|
2644
|
+
},
|
|
2645
|
+
description: {
|
|
2646
|
+
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.",
|
|
2647
|
+
type: "string"
|
|
2648
|
+
}
|
|
2649
|
+
},
|
|
2650
|
+
required: [
|
|
2651
|
+
"items",
|
|
2652
|
+
"type",
|
|
2653
|
+
"description"
|
|
2654
|
+
]
|
|
2655
|
+
},
|
|
2656
|
+
"AutoBeOpenApi.IJsonSchema": {
|
|
2657
|
+
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.",
|
|
2658
|
+
oneOf: [
|
|
2659
|
+
{
|
|
2660
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
2661
|
+
},
|
|
2662
|
+
{
|
|
2663
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
2664
|
+
},
|
|
2665
|
+
{
|
|
2666
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
2667
|
+
},
|
|
2668
|
+
{
|
|
2669
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
2670
|
+
},
|
|
2671
|
+
{
|
|
2672
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
2673
|
+
},
|
|
2674
|
+
{
|
|
2675
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
2676
|
+
},
|
|
2677
|
+
{
|
|
2678
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
2679
|
+
},
|
|
2680
|
+
{
|
|
2681
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
2682
|
+
},
|
|
2683
|
+
{
|
|
2684
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf"
|
|
2685
|
+
},
|
|
2686
|
+
{
|
|
2687
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
2688
|
+
}
|
|
2689
|
+
]
|
|
2690
|
+
},
|
|
2691
|
+
"AutoBeOpenApi.IJsonSchema.IInteger": {
|
|
2692
|
+
description: "Integer type info.",
|
|
2693
|
+
type: "object",
|
|
2694
|
+
properties: {
|
|
2695
|
+
minimum: {
|
|
2696
|
+
description: "Minimum value restriction.",
|
|
2697
|
+
type: "integer"
|
|
2698
|
+
},
|
|
2699
|
+
maximum: {
|
|
2700
|
+
description: "Maximum value restriction.",
|
|
2701
|
+
type: "integer"
|
|
2702
|
+
},
|
|
2703
|
+
exclusiveMinimum: {
|
|
2704
|
+
description: "Exclusive minimum value restriction.",
|
|
2705
|
+
type: "number"
|
|
2706
|
+
},
|
|
2707
|
+
exclusiveMaximum: {
|
|
2708
|
+
description: "Exclusive maximum value restriction.",
|
|
2709
|
+
type: "number"
|
|
2710
|
+
},
|
|
2711
|
+
multipleOf: {
|
|
2712
|
+
description: "Multiple of value restriction.",
|
|
2713
|
+
type: "integer",
|
|
2714
|
+
exclusiveMinimum: 0
|
|
2715
|
+
},
|
|
2716
|
+
type: {
|
|
2717
|
+
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.",
|
|
2718
|
+
"const": "integer"
|
|
2719
|
+
}
|
|
2720
|
+
},
|
|
2721
|
+
required: [
|
|
2722
|
+
"type"
|
|
2723
|
+
]
|
|
2724
|
+
},
|
|
2725
|
+
"AutoBeOpenApi.IJsonSchema.INumber": {
|
|
2726
|
+
description: "Number (double) type info.",
|
|
2727
|
+
type: "object",
|
|
2728
|
+
properties: {
|
|
2729
|
+
minimum: {
|
|
2730
|
+
description: "Minimum value restriction.",
|
|
2731
|
+
type: "number"
|
|
2732
|
+
},
|
|
2733
|
+
maximum: {
|
|
2734
|
+
description: "Maximum value restriction.",
|
|
2735
|
+
type: "number"
|
|
2736
|
+
},
|
|
2737
|
+
exclusiveMinimum: {
|
|
2738
|
+
description: "Exclusive minimum value restriction.",
|
|
2739
|
+
type: "number"
|
|
2740
|
+
},
|
|
2741
|
+
exclusiveMaximum: {
|
|
2742
|
+
description: "Exclusive maximum value restriction.",
|
|
2743
|
+
type: "number"
|
|
2744
|
+
},
|
|
2745
|
+
multipleOf: {
|
|
2746
|
+
description: "Multiple of value restriction.",
|
|
2747
|
+
type: "number",
|
|
2748
|
+
exclusiveMinimum: 0
|
|
2749
|
+
},
|
|
2750
|
+
type: {
|
|
2751
|
+
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.",
|
|
2752
|
+
"const": "number"
|
|
2753
|
+
}
|
|
2754
|
+
},
|
|
2755
|
+
required: [
|
|
2756
|
+
"type"
|
|
2757
|
+
]
|
|
2758
|
+
},
|
|
2759
|
+
"AutoBeOpenApi.IJsonSchema.IString": {
|
|
2760
|
+
description: "String type info.",
|
|
2761
|
+
type: "object",
|
|
2762
|
+
properties: {
|
|
2763
|
+
format: {
|
|
2764
|
+
description: "Format restriction.",
|
|
2765
|
+
type: "string"
|
|
2766
|
+
},
|
|
2767
|
+
pattern: {
|
|
2768
|
+
description: "Pattern restriction.",
|
|
2769
|
+
type: "string"
|
|
2770
|
+
},
|
|
2771
|
+
contentMediaType: {
|
|
2772
|
+
description: "Content media type restriction.",
|
|
2773
|
+
type: "string"
|
|
2774
|
+
},
|
|
2775
|
+
minLength: {
|
|
2776
|
+
description: "Minimum length restriction.",
|
|
2777
|
+
type: "integer",
|
|
2778
|
+
minimum: 0
|
|
2779
|
+
},
|
|
2780
|
+
maxLength: {
|
|
2781
|
+
description: "Maximum length restriction.",
|
|
2782
|
+
type: "integer",
|
|
2783
|
+
minimum: 0
|
|
2784
|
+
},
|
|
2785
|
+
type: {
|
|
2786
|
+
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.",
|
|
2787
|
+
"const": "string"
|
|
2788
|
+
}
|
|
2789
|
+
},
|
|
2790
|
+
required: [
|
|
2791
|
+
"type"
|
|
2792
|
+
]
|
|
2793
|
+
},
|
|
2794
|
+
"AutoBeOpenApi.IJsonSchema.IConstant": {
|
|
2795
|
+
description: "Constant value type.",
|
|
2796
|
+
type: "object",
|
|
2797
|
+
properties: {
|
|
2798
|
+
"const": {
|
|
2799
|
+
description: "The constant value.",
|
|
2800
|
+
oneOf: [
|
|
2801
|
+
{
|
|
2802
|
+
type: "string"
|
|
2803
|
+
},
|
|
2804
|
+
{
|
|
2805
|
+
type: "number"
|
|
2806
|
+
},
|
|
2807
|
+
{
|
|
2808
|
+
type: "boolean"
|
|
2809
|
+
}
|
|
2810
|
+
]
|
|
2811
|
+
}
|
|
2812
|
+
},
|
|
2813
|
+
required: [
|
|
2814
|
+
"const"
|
|
2815
|
+
]
|
|
2816
|
+
},
|
|
2817
|
+
"AutoBeOpenApi.IJsonSchema.IBoolean": {
|
|
2818
|
+
description: "Boolean type info.",
|
|
2819
|
+
type: "object",
|
|
2820
|
+
properties: {
|
|
2821
|
+
type: {
|
|
2822
|
+
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.",
|
|
2823
|
+
"const": "boolean"
|
|
2824
|
+
}
|
|
2825
|
+
},
|
|
2826
|
+
required: [
|
|
2827
|
+
"type"
|
|
2828
|
+
]
|
|
2829
|
+
},
|
|
2830
|
+
"AutoBeOpenApi.IJsonSchema.IArray": {
|
|
2831
|
+
description: "Array type info.",
|
|
2832
|
+
type: "object",
|
|
2833
|
+
properties: {
|
|
2834
|
+
items: {
|
|
2835
|
+
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>`.",
|
|
2836
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema"
|
|
2837
|
+
},
|
|
2838
|
+
uniqueItems: {
|
|
2839
|
+
description: "Unique items restriction.\n\nIf this property value is `true`, target array must have unique items.",
|
|
2840
|
+
type: "boolean"
|
|
2841
|
+
},
|
|
2842
|
+
minItems: {
|
|
2843
|
+
description: "Minimum items restriction.\n\nRestriction of minimum number of items in the array.",
|
|
2844
|
+
type: "integer",
|
|
2845
|
+
minimum: 0
|
|
2846
|
+
},
|
|
2847
|
+
maxItems: {
|
|
2848
|
+
description: "Maximum items restriction.\n\nRestriction of maximum number of items in the array.",
|
|
2849
|
+
type: "integer",
|
|
2850
|
+
minimum: 0
|
|
2851
|
+
},
|
|
2852
|
+
type: {
|
|
2853
|
+
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.",
|
|
2854
|
+
"const": "array"
|
|
2855
|
+
}
|
|
2856
|
+
},
|
|
2857
|
+
required: [
|
|
2858
|
+
"items",
|
|
2859
|
+
"type"
|
|
2860
|
+
]
|
|
2861
|
+
},
|
|
2862
|
+
"AutoBeOpenApi.IJsonSchema.IObject": {
|
|
2863
|
+
description: "Object type info.",
|
|
2864
|
+
type: "object",
|
|
2865
|
+
properties: {
|
|
2866
|
+
properties: {
|
|
2867
|
+
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.",
|
|
2868
|
+
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
2869
|
+
},
|
|
2870
|
+
additionalProperties: {
|
|
2871
|
+
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>`",
|
|
2872
|
+
oneOf: [
|
|
2873
|
+
{
|
|
2874
|
+
"const": false
|
|
2875
|
+
},
|
|
2876
|
+
{
|
|
2877
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
2878
|
+
},
|
|
2879
|
+
{
|
|
2880
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
2881
|
+
},
|
|
2882
|
+
{
|
|
2883
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
2884
|
+
},
|
|
2885
|
+
{
|
|
2886
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
2887
|
+
},
|
|
2888
|
+
{
|
|
2889
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
2890
|
+
},
|
|
2891
|
+
{
|
|
2892
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
2893
|
+
},
|
|
2894
|
+
{
|
|
2895
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
2896
|
+
},
|
|
2897
|
+
{
|
|
2898
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
2899
|
+
},
|
|
2900
|
+
{
|
|
2901
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
2902
|
+
},
|
|
2903
|
+
{
|
|
2904
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf"
|
|
2905
|
+
}
|
|
2906
|
+
]
|
|
2907
|
+
},
|
|
2908
|
+
required: {
|
|
2909
|
+
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```",
|
|
2910
|
+
type: "array",
|
|
2911
|
+
items: {
|
|
2912
|
+
type: "string"
|
|
2913
|
+
}
|
|
2914
|
+
},
|
|
2915
|
+
type: {
|
|
2916
|
+
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.",
|
|
2917
|
+
"const": "object"
|
|
2918
|
+
}
|
|
2919
|
+
},
|
|
2920
|
+
required: [
|
|
2921
|
+
"properties",
|
|
2922
|
+
"required",
|
|
2923
|
+
"type"
|
|
2924
|
+
]
|
|
2925
|
+
},
|
|
2926
|
+
"AutoBeOpenApi.IJsonSchema.INull": {
|
|
2927
|
+
description: "Null type.",
|
|
2928
|
+
type: "object",
|
|
2929
|
+
properties: {
|
|
2930
|
+
type: {
|
|
2931
|
+
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.",
|
|
2932
|
+
"const": "null"
|
|
2933
|
+
}
|
|
2934
|
+
},
|
|
2935
|
+
required: [
|
|
2936
|
+
"type"
|
|
2937
|
+
]
|
|
2938
|
+
},
|
|
2939
|
+
"AutoBeOpenApi.IJsonSchema.IReference": {
|
|
2940
|
+
description: "Reference type directing named schema.",
|
|
2941
|
+
type: "object",
|
|
2942
|
+
properties: {
|
|
2943
|
+
$ref: {
|
|
2944
|
+
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`",
|
|
2945
|
+
type: "string"
|
|
2946
|
+
}
|
|
2947
|
+
},
|
|
2948
|
+
required: [
|
|
2949
|
+
"$ref"
|
|
2950
|
+
]
|
|
2951
|
+
},
|
|
2952
|
+
"AutoBeOpenApi.IJsonSchema.IOneOf": {
|
|
2953
|
+
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.",
|
|
2954
|
+
type: "object",
|
|
2955
|
+
properties: {
|
|
2956
|
+
oneOf: {
|
|
2957
|
+
description: "List of the union types.",
|
|
2958
|
+
type: "array",
|
|
2959
|
+
items: {
|
|
2960
|
+
oneOf: [
|
|
2961
|
+
{
|
|
2962
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
2963
|
+
},
|
|
2964
|
+
{
|
|
2965
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
2966
|
+
},
|
|
2967
|
+
{
|
|
2968
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
2969
|
+
},
|
|
2970
|
+
{
|
|
2971
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
2972
|
+
},
|
|
2973
|
+
{
|
|
2974
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
2975
|
+
},
|
|
2976
|
+
{
|
|
2977
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
2978
|
+
},
|
|
2979
|
+
{
|
|
2980
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
2981
|
+
},
|
|
2982
|
+
{
|
|
2983
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
2984
|
+
},
|
|
2985
|
+
{
|
|
2986
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
2987
|
+
}
|
|
2988
|
+
]
|
|
2989
|
+
}
|
|
2990
|
+
},
|
|
2991
|
+
discriminator: {
|
|
2992
|
+
description: "Discriminator info of the union type.",
|
|
2993
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator"
|
|
2994
|
+
}
|
|
2995
|
+
},
|
|
2996
|
+
required: [
|
|
2997
|
+
"oneOf"
|
|
2998
|
+
]
|
|
2999
|
+
},
|
|
3000
|
+
"AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator": {
|
|
3001
|
+
description: "Discriminator info of the union type.",
|
|
3002
|
+
type: "object",
|
|
3003
|
+
properties: {
|
|
3004
|
+
propertyName: {
|
|
3005
|
+
description: "Property name for the discriminator.",
|
|
3006
|
+
type: "string"
|
|
3007
|
+
},
|
|
3008
|
+
mapping: {
|
|
3009
|
+
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`.",
|
|
3010
|
+
$ref: "#/$defs/Recordstringstring"
|
|
3011
|
+
}
|
|
3012
|
+
},
|
|
3013
|
+
required: [
|
|
3014
|
+
"propertyName"
|
|
3015
|
+
]
|
|
3016
|
+
},
|
|
3017
|
+
Recordstringstring: {
|
|
3018
|
+
description: "Construct a type with a set of properties K of type T",
|
|
3019
|
+
type: "object",
|
|
3020
|
+
properties: {},
|
|
3021
|
+
required: [],
|
|
3022
|
+
additionalProperties: {
|
|
301
3023
|
type: "string"
|
|
302
3024
|
}
|
|
303
3025
|
},
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
3026
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IObject": {
|
|
3027
|
+
description: "Object type info.",
|
|
3028
|
+
type: "object",
|
|
3029
|
+
properties: {
|
|
3030
|
+
properties: {
|
|
3031
|
+
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.",
|
|
3032
|
+
$ref: "#/$defs/RecordstringAutoBeOpenApi.IJsonSchemaDescriptive"
|
|
3033
|
+
},
|
|
3034
|
+
additionalProperties: {
|
|
3035
|
+
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>`",
|
|
3036
|
+
oneOf: [
|
|
3037
|
+
{
|
|
3038
|
+
"const": false
|
|
3039
|
+
},
|
|
3040
|
+
{
|
|
3041
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
3042
|
+
},
|
|
3043
|
+
{
|
|
3044
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
3045
|
+
},
|
|
3046
|
+
{
|
|
3047
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
3048
|
+
},
|
|
3049
|
+
{
|
|
3050
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
3051
|
+
},
|
|
3052
|
+
{
|
|
3053
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
3054
|
+
},
|
|
3055
|
+
{
|
|
3056
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
3057
|
+
},
|
|
3058
|
+
{
|
|
3059
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
3060
|
+
},
|
|
3061
|
+
{
|
|
3062
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
3063
|
+
},
|
|
3064
|
+
{
|
|
3065
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
3066
|
+
},
|
|
3067
|
+
{
|
|
3068
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf"
|
|
3069
|
+
}
|
|
3070
|
+
]
|
|
3071
|
+
},
|
|
3072
|
+
required: {
|
|
3073
|
+
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```",
|
|
3074
|
+
type: "array",
|
|
3075
|
+
items: {
|
|
3076
|
+
type: "string"
|
|
3077
|
+
}
|
|
3078
|
+
},
|
|
3079
|
+
type: {
|
|
3080
|
+
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.",
|
|
3081
|
+
"const": "object"
|
|
3082
|
+
},
|
|
3083
|
+
description: {
|
|
3084
|
+
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.",
|
|
3085
|
+
type: "string"
|
|
3086
|
+
}
|
|
3087
|
+
},
|
|
3088
|
+
required: [
|
|
3089
|
+
"properties",
|
|
3090
|
+
"required",
|
|
3091
|
+
"type",
|
|
3092
|
+
"description"
|
|
3093
|
+
]
|
|
3094
|
+
},
|
|
3095
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IReference": {
|
|
3096
|
+
description: "Reference type directing named schema.",
|
|
3097
|
+
type: "object",
|
|
3098
|
+
properties: {
|
|
3099
|
+
$ref: {
|
|
3100
|
+
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`",
|
|
3101
|
+
type: "string"
|
|
3102
|
+
},
|
|
3103
|
+
description: {
|
|
3104
|
+
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.",
|
|
3105
|
+
type: "string"
|
|
3106
|
+
}
|
|
3107
|
+
},
|
|
3108
|
+
required: [
|
|
3109
|
+
"$ref",
|
|
3110
|
+
"description"
|
|
3111
|
+
]
|
|
3112
|
+
},
|
|
3113
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.IOneOf": {
|
|
3114
|
+
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.",
|
|
3115
|
+
type: "object",
|
|
3116
|
+
properties: {
|
|
3117
|
+
oneOf: {
|
|
3118
|
+
description: "List of the union types.",
|
|
3119
|
+
type: "array",
|
|
3120
|
+
items: {
|
|
3121
|
+
oneOf: [
|
|
3122
|
+
{
|
|
3123
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INumber"
|
|
3124
|
+
},
|
|
3125
|
+
{
|
|
3126
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IInteger"
|
|
3127
|
+
},
|
|
3128
|
+
{
|
|
3129
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IString"
|
|
3130
|
+
},
|
|
3131
|
+
{
|
|
3132
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IConstant"
|
|
3133
|
+
},
|
|
3134
|
+
{
|
|
3135
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.INull"
|
|
3136
|
+
},
|
|
3137
|
+
{
|
|
3138
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IBoolean"
|
|
3139
|
+
},
|
|
3140
|
+
{
|
|
3141
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IArray"
|
|
3142
|
+
},
|
|
3143
|
+
{
|
|
3144
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IObject"
|
|
3145
|
+
},
|
|
3146
|
+
{
|
|
3147
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IReference"
|
|
3148
|
+
}
|
|
3149
|
+
]
|
|
3150
|
+
}
|
|
3151
|
+
},
|
|
3152
|
+
discriminator: {
|
|
3153
|
+
description: "Discriminator info of the union type.",
|
|
3154
|
+
$ref: "#/$defs/AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator"
|
|
3155
|
+
},
|
|
3156
|
+
description: {
|
|
3157
|
+
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.",
|
|
3158
|
+
type: "string"
|
|
3159
|
+
}
|
|
3160
|
+
},
|
|
3161
|
+
required: [
|
|
3162
|
+
"oneOf",
|
|
3163
|
+
"description"
|
|
3164
|
+
]
|
|
3165
|
+
},
|
|
3166
|
+
"AutoBeOpenApi.IJsonSchemaDescriptive.INull": {
|
|
3167
|
+
description: "Null type.",
|
|
3168
|
+
type: "object",
|
|
3169
|
+
properties: {
|
|
3170
|
+
type: {
|
|
3171
|
+
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.",
|
|
3172
|
+
"const": "null"
|
|
3173
|
+
},
|
|
3174
|
+
description: {
|
|
3175
|
+
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.",
|
|
3176
|
+
type: "string"
|
|
3177
|
+
}
|
|
3178
|
+
},
|
|
3179
|
+
required: [
|
|
3180
|
+
"type",
|
|
3181
|
+
"description"
|
|
3182
|
+
]
|
|
3183
|
+
}
|
|
307
3184
|
}
|
|
308
|
-
}
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
validate: (() => { const _io0 = input => "string" === typeof input.draft && ("object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) && _io1(input.schemas)); const _io1 = input => Object.keys(input).every(key => {
|
|
312
|
-
const value = input[key];
|
|
313
|
-
if (undefined === value)
|
|
314
|
-
return true;
|
|
315
|
-
return "object" === typeof value && null !== value && _io2(value);
|
|
316
|
-
}); const _io2 = input => "string" === typeof input.description; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.draft || _report(_exceptionable, {
|
|
317
|
-
path: _path + ".draft",
|
|
318
|
-
expected: "string",
|
|
319
|
-
value: input.draft
|
|
320
|
-
}), ("object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) || _report(_exceptionable, {
|
|
321
|
-
path: _path + ".schemas",
|
|
322
|
-
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive<AutoBeOpenApi.IJsonSchema>>",
|
|
323
|
-
value: input.schemas
|
|
324
|
-
})) && _vo1(input.schemas, _path + ".schemas", true && _exceptionable) || _report(_exceptionable, {
|
|
325
|
-
path: _path + ".schemas",
|
|
326
|
-
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive<AutoBeOpenApi.IJsonSchema>>",
|
|
327
|
-
value: input.schemas
|
|
328
|
-
})].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
|
|
3185
|
+
},
|
|
3186
|
+
description: "Complements missing schema types\n\nThis method fills in schema definitions that are referenced via $ref but\nnot yet defined in the `components.schemas` section. For example, if an API\noperation references `{ \"$ref\": \"#/components/schemas/UserProfile\" }` but\n`UserProfile` type is not defined in `components.schemas`, this method will\nadd the missing schema definition.\n\nThis function is designed to be called via AI function calling mechanism to\nensure the OpenAPI document is complete and all referenced schemas are\nproperly defined.",
|
|
3187
|
+
validate: (() => { const _io0 = input => "string" === typeof input.draft && ("object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) && _io1(input.schemas)); const _io1 = input => Object.keys(input).every(key => {
|
|
329
3188
|
const value = input[key];
|
|
330
3189
|
if (undefined === value)
|
|
331
3190
|
return true;
|
|
332
|
-
return
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
3191
|
+
return "object" === typeof value && null !== value && _iu1(value);
|
|
3192
|
+
}); const _io2 = input => ("string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]) && "string" === typeof input.description; const _io3 = input => "boolean" === input.type && "string" === typeof input.description; const _io4 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type && "string" === typeof input.description; const _io5 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type && "string" === typeof input.description; const _io6 = input => (undefined === input.format || "string" === typeof input.format) && (undefined === input.pattern || "string" === typeof input.pattern) && (undefined === input.contentMediaType || "string" === typeof input.contentMediaType) && (undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000)) && (undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000)) && "string" === input.type && "string" === typeof input.description; const _io7 = input => "object" === typeof input.items && null !== input.items && _iu2(input.items) && (undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems) && (undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000)) && (undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000)) && "array" === input.type && "string" === typeof input.description; const _io8 = input => (undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000)) && (undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000)) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 && 0 < input.multipleOf)) && "integer" === input.type; const _io9 = input => (undefined === input.minimum || "number" === typeof input.minimum) && (undefined === input.maximum || "number" === typeof input.maximum) && (undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum) && (undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum) && (undefined === input.multipleOf || "number" === typeof input.multipleOf && 0 < input.multipleOf) && "number" === input.type; const _io10 = input => (undefined === input.format || "string" === typeof input.format) && (undefined === input.pattern || "string" === typeof input.pattern) && (undefined === input.contentMediaType || "string" === typeof input.contentMediaType) && (undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000)) && (undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000)) && "string" === input.type; const _io11 = input => "string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"]; const _io12 = input => "boolean" === input.type; const _io13 = input => "object" === typeof input.items && null !== input.items && _iu2(input.items) && (undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems) && (undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000)) && (undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000)) && "array" === input.type; const _io14 = input => "object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) && _io1(input.properties) && (null !== input.additionalProperties && (undefined === input.additionalProperties || false === input.additionalProperties || "object" === typeof input.additionalProperties && null !== input.additionalProperties && _iu2(input.additionalProperties))) && (Array.isArray(input.required) && input.required.every(elem => "string" === typeof elem)) && "object" === input.type; const _io15 = input => "string" === typeof input.$ref; const _io16 = input => Array.isArray(input.oneOf) && input.oneOf.every(elem => "object" === typeof elem && null !== elem && _iu0(elem)) && (undefined === input.discriminator || "object" === typeof input.discriminator && null !== input.discriminator && _io18(input.discriminator)); const _io17 = input => "null" === input.type; const _io18 = input => "string" === typeof input.propertyName && (undefined === input.mapping || "object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) && _io19(input.mapping)); const _io19 = input => Object.keys(input).every(key => {
|
|
3193
|
+
const value = input[key];
|
|
3194
|
+
if (undefined === value)
|
|
3195
|
+
return true;
|
|
3196
|
+
return "string" === typeof value;
|
|
3197
|
+
}); const _io20 = input => "object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) && _io1(input.properties) && (null !== input.additionalProperties && (undefined === input.additionalProperties || false === input.additionalProperties || "object" === typeof input.additionalProperties && null !== input.additionalProperties && _iu2(input.additionalProperties))) && (Array.isArray(input.required) && input.required.every(elem => "string" === typeof elem)) && "object" === input.type && "string" === typeof input.description; const _io21 = input => "string" === typeof input.$ref && "string" === typeof input.description; const _io22 = input => Array.isArray(input.oneOf) && input.oneOf.every(elem => "object" === typeof elem && null !== elem && _iu0(elem)) && (undefined === input.discriminator || "object" === typeof input.discriminator && null !== input.discriminator && _io18(input.discriminator)) && "string" === typeof input.description; const _io23 = input => "null" === input.type && "string" === typeof input.description; const _iu0 = input => (() => {
|
|
3198
|
+
if ("number" === input.type)
|
|
3199
|
+
return _io9(input);
|
|
3200
|
+
else if ("integer" === input.type)
|
|
3201
|
+
return _io8(input);
|
|
3202
|
+
else if ("string" === input.type)
|
|
3203
|
+
return _io10(input);
|
|
3204
|
+
else if (undefined !== input["const"])
|
|
3205
|
+
return _io11(input);
|
|
3206
|
+
else if ("null" === input.type)
|
|
3207
|
+
return _io17(input);
|
|
3208
|
+
else if ("boolean" === input.type)
|
|
3209
|
+
return _io12(input);
|
|
3210
|
+
else if ("array" === input.type)
|
|
3211
|
+
return _io13(input);
|
|
3212
|
+
else if ("object" === input.type)
|
|
3213
|
+
return _io14(input);
|
|
3214
|
+
else if (undefined !== input.$ref)
|
|
3215
|
+
return _io15(input);
|
|
3216
|
+
else
|
|
3217
|
+
return false;
|
|
3218
|
+
})(); const _iu1 = input => (() => {
|
|
3219
|
+
if (undefined !== input["const"])
|
|
3220
|
+
return _io2(input);
|
|
3221
|
+
else if ("boolean" === input.type)
|
|
3222
|
+
return _io3(input);
|
|
3223
|
+
else if ("number" === input.type)
|
|
3224
|
+
return _io5(input);
|
|
3225
|
+
else if ("integer" === input.type)
|
|
3226
|
+
return _io4(input);
|
|
3227
|
+
else if ("string" === input.type)
|
|
3228
|
+
return _io6(input);
|
|
3229
|
+
else if ("array" === input.type)
|
|
3230
|
+
return _io7(input);
|
|
3231
|
+
else if ("object" === input.type)
|
|
3232
|
+
return _io20(input);
|
|
3233
|
+
else if (undefined !== input.$ref)
|
|
3234
|
+
return _io21(input);
|
|
3235
|
+
else if (undefined !== input.oneOf)
|
|
3236
|
+
return _io22(input);
|
|
3237
|
+
else if ("null" === input.type)
|
|
3238
|
+
return _io23(input);
|
|
3239
|
+
else
|
|
3240
|
+
return false;
|
|
3241
|
+
})(); const _iu2 = input => (() => {
|
|
3242
|
+
if ("number" === input.type)
|
|
3243
|
+
return _io9(input);
|
|
3244
|
+
else if ("integer" === input.type)
|
|
3245
|
+
return _io8(input);
|
|
3246
|
+
else if ("string" === input.type)
|
|
3247
|
+
return _io10(input);
|
|
3248
|
+
else if (undefined !== input["const"])
|
|
3249
|
+
return _io11(input);
|
|
3250
|
+
else if ("null" === input.type)
|
|
3251
|
+
return _io17(input);
|
|
3252
|
+
else if ("boolean" === input.type)
|
|
3253
|
+
return _io12(input);
|
|
3254
|
+
else if ("array" === input.type)
|
|
3255
|
+
return _io13(input);
|
|
3256
|
+
else if ("object" === input.type)
|
|
3257
|
+
return _io14(input);
|
|
3258
|
+
else if (undefined !== input.$ref)
|
|
3259
|
+
return _io15(input);
|
|
3260
|
+
else if (undefined !== input.oneOf)
|
|
3261
|
+
return _io16(input);
|
|
3262
|
+
else
|
|
3263
|
+
return false;
|
|
3264
|
+
})(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.draft || _report(_exceptionable, {
|
|
3265
|
+
path: _path + ".draft",
|
|
3266
|
+
expected: "string",
|
|
3267
|
+
value: input.draft
|
|
3268
|
+
}), ("object" === typeof input.schemas && null !== input.schemas && false === Array.isArray(input.schemas) || _report(_exceptionable, {
|
|
3269
|
+
path: _path + ".schemas",
|
|
3270
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
3271
|
+
value: input.schemas
|
|
3272
|
+
})) && _vo1(input.schemas, _path + ".schemas", true && _exceptionable) || _report(_exceptionable, {
|
|
3273
|
+
path: _path + ".schemas",
|
|
3274
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
3275
|
+
value: input.schemas
|
|
3276
|
+
})].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
|
|
3277
|
+
const value = input[key];
|
|
3278
|
+
if (undefined === value)
|
|
3279
|
+
return true;
|
|
3280
|
+
return ("object" === typeof value && null !== value || _report(_exceptionable, {
|
|
3281
|
+
path: _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key),
|
|
3282
|
+
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)",
|
|
3283
|
+
value: value
|
|
3284
|
+
})) && _vu1(value, _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key), true && _exceptionable) || _report(_exceptionable, {
|
|
3285
|
+
path: _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key),
|
|
3286
|
+
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)",
|
|
3287
|
+
value: value
|
|
3288
|
+
});
|
|
3289
|
+
}).every(flag => flag)].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"] || _report(_exceptionable, {
|
|
3290
|
+
path: _path + "[\"const\"]",
|
|
3291
|
+
expected: "(boolean | number | string)",
|
|
3292
|
+
value: input["const"]
|
|
3293
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
3294
|
+
path: _path + ".description",
|
|
3295
|
+
expected: "string",
|
|
3296
|
+
value: input.description
|
|
3297
|
+
})].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["boolean" === input.type || _report(_exceptionable, {
|
|
3298
|
+
path: _path + ".type",
|
|
3299
|
+
expected: "\"boolean\"",
|
|
3300
|
+
value: input.type
|
|
3301
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
3302
|
+
path: _path + ".description",
|
|
3303
|
+
expected: "string",
|
|
3304
|
+
value: input.description
|
|
3305
|
+
})].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000 || _report(_exceptionable, {
|
|
3306
|
+
path: _path + ".minimum",
|
|
3307
|
+
expected: "number & Type<\"int64\">",
|
|
3308
|
+
value: input.minimum
|
|
3309
|
+
})) || _report(_exceptionable, {
|
|
3310
|
+
path: _path + ".minimum",
|
|
3311
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
3312
|
+
value: input.minimum
|
|
3313
|
+
}), undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000 || _report(_exceptionable, {
|
|
3314
|
+
path: _path + ".maximum",
|
|
3315
|
+
expected: "number & Type<\"int64\">",
|
|
3316
|
+
value: input.maximum
|
|
3317
|
+
})) || _report(_exceptionable, {
|
|
3318
|
+
path: _path + ".maximum",
|
|
3319
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
3320
|
+
value: input.maximum
|
|
3321
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
3322
|
+
path: _path + ".exclusiveMinimum",
|
|
3323
|
+
expected: "(number | undefined)",
|
|
3324
|
+
value: input.exclusiveMinimum
|
|
3325
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
3326
|
+
path: _path + ".exclusiveMaximum",
|
|
3327
|
+
expected: "(number | undefined)",
|
|
3328
|
+
value: input.exclusiveMaximum
|
|
3329
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 || _report(_exceptionable, {
|
|
3330
|
+
path: _path + ".multipleOf",
|
|
3331
|
+
expected: "number & Type<\"uint64\">",
|
|
3332
|
+
value: input.multipleOf
|
|
3333
|
+
})) && (0 < input.multipleOf || _report(_exceptionable, {
|
|
3334
|
+
path: _path + ".multipleOf",
|
|
3335
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
3336
|
+
value: input.multipleOf
|
|
3337
|
+
})) || _report(_exceptionable, {
|
|
3338
|
+
path: _path + ".multipleOf",
|
|
3339
|
+
expected: "((number & Type<\"uint64\"> & ExclusiveMinimum<0>) | undefined)",
|
|
3340
|
+
value: input.multipleOf
|
|
3341
|
+
}), "integer" === input.type || _report(_exceptionable, {
|
|
3342
|
+
path: _path + ".type",
|
|
3343
|
+
expected: "\"integer\"",
|
|
3344
|
+
value: input.type
|
|
3345
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
3346
|
+
path: _path + ".description",
|
|
3347
|
+
expected: "string",
|
|
3348
|
+
value: input.description
|
|
3349
|
+
})].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum || _report(_exceptionable, {
|
|
3350
|
+
path: _path + ".minimum",
|
|
3351
|
+
expected: "(number | undefined)",
|
|
3352
|
+
value: input.minimum
|
|
3353
|
+
}), undefined === input.maximum || "number" === typeof input.maximum || _report(_exceptionable, {
|
|
3354
|
+
path: _path + ".maximum",
|
|
3355
|
+
expected: "(number | undefined)",
|
|
3356
|
+
value: input.maximum
|
|
3357
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
3358
|
+
path: _path + ".exclusiveMinimum",
|
|
3359
|
+
expected: "(number | undefined)",
|
|
3360
|
+
value: input.exclusiveMinimum
|
|
3361
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
3362
|
+
path: _path + ".exclusiveMaximum",
|
|
3363
|
+
expected: "(number | undefined)",
|
|
3364
|
+
value: input.exclusiveMaximum
|
|
3365
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (0 < input.multipleOf || _report(_exceptionable, {
|
|
3366
|
+
path: _path + ".multipleOf",
|
|
3367
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
3368
|
+
value: input.multipleOf
|
|
3369
|
+
})) || _report(_exceptionable, {
|
|
3370
|
+
path: _path + ".multipleOf",
|
|
3371
|
+
expected: "((number & ExclusiveMinimum<0>) | undefined)",
|
|
3372
|
+
value: input.multipleOf
|
|
3373
|
+
}), "number" === input.type || _report(_exceptionable, {
|
|
3374
|
+
path: _path + ".type",
|
|
3375
|
+
expected: "\"number\"",
|
|
3376
|
+
value: input.type
|
|
3377
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
3378
|
+
path: _path + ".description",
|
|
3379
|
+
expected: "string",
|
|
3380
|
+
value: input.description
|
|
3381
|
+
})].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => [undefined === input.format || "string" === typeof input.format || _report(_exceptionable, {
|
|
3382
|
+
path: _path + ".format",
|
|
3383
|
+
expected: "(string | undefined)",
|
|
3384
|
+
value: input.format
|
|
3385
|
+
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
3386
|
+
path: _path + ".pattern",
|
|
3387
|
+
expected: "(string | undefined)",
|
|
3388
|
+
value: input.pattern
|
|
3389
|
+
}), undefined === input.contentMediaType || "string" === typeof input.contentMediaType || _report(_exceptionable, {
|
|
3390
|
+
path: _path + ".contentMediaType",
|
|
3391
|
+
expected: "(string | undefined)",
|
|
3392
|
+
value: input.contentMediaType
|
|
3393
|
+
}), undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
3394
|
+
path: _path + ".minLength",
|
|
3395
|
+
expected: "number & Type<\"uint64\">",
|
|
3396
|
+
value: input.minLength
|
|
3397
|
+
})) || _report(_exceptionable, {
|
|
3398
|
+
path: _path + ".minLength",
|
|
3399
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3400
|
+
value: input.minLength
|
|
3401
|
+
}), undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
3402
|
+
path: _path + ".maxLength",
|
|
3403
|
+
expected: "number & Type<\"uint64\">",
|
|
3404
|
+
value: input.maxLength
|
|
3405
|
+
})) || _report(_exceptionable, {
|
|
3406
|
+
path: _path + ".maxLength",
|
|
3407
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3408
|
+
value: input.maxLength
|
|
3409
|
+
}), "string" === input.type || _report(_exceptionable, {
|
|
3410
|
+
path: _path + ".type",
|
|
3411
|
+
expected: "\"string\"",
|
|
3412
|
+
value: input.type
|
|
3413
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
3414
|
+
path: _path + ".description",
|
|
3415
|
+
expected: "string",
|
|
3416
|
+
value: input.description
|
|
3417
|
+
})].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [("object" === typeof input.items && null !== input.items || _report(_exceptionable, {
|
|
3418
|
+
path: _path + ".items",
|
|
3419
|
+
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)",
|
|
3420
|
+
value: input.items
|
|
3421
|
+
})) && _vu2(input.items, _path + ".items", true && _exceptionable) || _report(_exceptionable, {
|
|
3422
|
+
path: _path + ".items",
|
|
3423
|
+
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)",
|
|
3424
|
+
value: input.items
|
|
3425
|
+
}), undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems || _report(_exceptionable, {
|
|
3426
|
+
path: _path + ".uniqueItems",
|
|
3427
|
+
expected: "(boolean | undefined)",
|
|
3428
|
+
value: input.uniqueItems
|
|
3429
|
+
}), undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
3430
|
+
path: _path + ".minItems",
|
|
3431
|
+
expected: "number & Type<\"uint64\">",
|
|
3432
|
+
value: input.minItems
|
|
3433
|
+
})) || _report(_exceptionable, {
|
|
3434
|
+
path: _path + ".minItems",
|
|
3435
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3436
|
+
value: input.minItems
|
|
3437
|
+
}), undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
3438
|
+
path: _path + ".maxItems",
|
|
3439
|
+
expected: "number & Type<\"uint64\">",
|
|
3440
|
+
value: input.maxItems
|
|
3441
|
+
})) || _report(_exceptionable, {
|
|
3442
|
+
path: _path + ".maxItems",
|
|
3443
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3444
|
+
value: input.maxItems
|
|
3445
|
+
}), "array" === input.type || _report(_exceptionable, {
|
|
3446
|
+
path: _path + ".type",
|
|
3447
|
+
expected: "\"array\"",
|
|
3448
|
+
value: input.type
|
|
3449
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
3450
|
+
path: _path + ".description",
|
|
3451
|
+
expected: "string",
|
|
3452
|
+
value: input.description
|
|
3453
|
+
})].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum && (Math.floor(input.minimum) === input.minimum && -9223372036854776000 <= input.minimum && input.minimum <= 9223372036854776000 || _report(_exceptionable, {
|
|
3454
|
+
path: _path + ".minimum",
|
|
3455
|
+
expected: "number & Type<\"int64\">",
|
|
3456
|
+
value: input.minimum
|
|
3457
|
+
})) || _report(_exceptionable, {
|
|
3458
|
+
path: _path + ".minimum",
|
|
3459
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
3460
|
+
value: input.minimum
|
|
3461
|
+
}), undefined === input.maximum || "number" === typeof input.maximum && (Math.floor(input.maximum) === input.maximum && -9223372036854776000 <= input.maximum && input.maximum <= 9223372036854776000 || _report(_exceptionable, {
|
|
3462
|
+
path: _path + ".maximum",
|
|
3463
|
+
expected: "number & Type<\"int64\">",
|
|
3464
|
+
value: input.maximum
|
|
3465
|
+
})) || _report(_exceptionable, {
|
|
3466
|
+
path: _path + ".maximum",
|
|
3467
|
+
expected: "((number & Type<\"int64\">) | undefined)",
|
|
3468
|
+
value: input.maximum
|
|
3469
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
3470
|
+
path: _path + ".exclusiveMinimum",
|
|
3471
|
+
expected: "(number | undefined)",
|
|
3472
|
+
value: input.exclusiveMinimum
|
|
3473
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
3474
|
+
path: _path + ".exclusiveMaximum",
|
|
3475
|
+
expected: "(number | undefined)",
|
|
3476
|
+
value: input.exclusiveMaximum
|
|
3477
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (Math.floor(input.multipleOf) === input.multipleOf && 0 <= input.multipleOf && input.multipleOf <= 18446744073709552000 || _report(_exceptionable, {
|
|
3478
|
+
path: _path + ".multipleOf",
|
|
3479
|
+
expected: "number & Type<\"uint64\">",
|
|
3480
|
+
value: input.multipleOf
|
|
3481
|
+
})) && (0 < input.multipleOf || _report(_exceptionable, {
|
|
3482
|
+
path: _path + ".multipleOf",
|
|
3483
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
3484
|
+
value: input.multipleOf
|
|
3485
|
+
})) || _report(_exceptionable, {
|
|
3486
|
+
path: _path + ".multipleOf",
|
|
3487
|
+
expected: "((number & Type<\"uint64\"> & ExclusiveMinimum<0>) | undefined)",
|
|
3488
|
+
value: input.multipleOf
|
|
3489
|
+
}), "integer" === input.type || _report(_exceptionable, {
|
|
3490
|
+
path: _path + ".type",
|
|
3491
|
+
expected: "\"integer\"",
|
|
3492
|
+
value: input.type
|
|
3493
|
+
})].every(flag => flag); const _vo9 = (input, _path, _exceptionable = true) => [undefined === input.minimum || "number" === typeof input.minimum || _report(_exceptionable, {
|
|
3494
|
+
path: _path + ".minimum",
|
|
3495
|
+
expected: "(number | undefined)",
|
|
3496
|
+
value: input.minimum
|
|
3497
|
+
}), undefined === input.maximum || "number" === typeof input.maximum || _report(_exceptionable, {
|
|
3498
|
+
path: _path + ".maximum",
|
|
3499
|
+
expected: "(number | undefined)",
|
|
3500
|
+
value: input.maximum
|
|
3501
|
+
}), undefined === input.exclusiveMinimum || "number" === typeof input.exclusiveMinimum || _report(_exceptionable, {
|
|
3502
|
+
path: _path + ".exclusiveMinimum",
|
|
3503
|
+
expected: "(number | undefined)",
|
|
3504
|
+
value: input.exclusiveMinimum
|
|
3505
|
+
}), undefined === input.exclusiveMaximum || "number" === typeof input.exclusiveMaximum || _report(_exceptionable, {
|
|
3506
|
+
path: _path + ".exclusiveMaximum",
|
|
3507
|
+
expected: "(number | undefined)",
|
|
3508
|
+
value: input.exclusiveMaximum
|
|
3509
|
+
}), undefined === input.multipleOf || "number" === typeof input.multipleOf && (0 < input.multipleOf || _report(_exceptionable, {
|
|
3510
|
+
path: _path + ".multipleOf",
|
|
3511
|
+
expected: "number & ExclusiveMinimum<0>",
|
|
3512
|
+
value: input.multipleOf
|
|
3513
|
+
})) || _report(_exceptionable, {
|
|
3514
|
+
path: _path + ".multipleOf",
|
|
3515
|
+
expected: "((number & ExclusiveMinimum<0>) | undefined)",
|
|
3516
|
+
value: input.multipleOf
|
|
3517
|
+
}), "number" === input.type || _report(_exceptionable, {
|
|
3518
|
+
path: _path + ".type",
|
|
3519
|
+
expected: "\"number\"",
|
|
3520
|
+
value: input.type
|
|
3521
|
+
})].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => [undefined === input.format || "string" === typeof input.format || _report(_exceptionable, {
|
|
3522
|
+
path: _path + ".format",
|
|
3523
|
+
expected: "(string | undefined)",
|
|
3524
|
+
value: input.format
|
|
3525
|
+
}), undefined === input.pattern || "string" === typeof input.pattern || _report(_exceptionable, {
|
|
3526
|
+
path: _path + ".pattern",
|
|
3527
|
+
expected: "(string | undefined)",
|
|
3528
|
+
value: input.pattern
|
|
3529
|
+
}), undefined === input.contentMediaType || "string" === typeof input.contentMediaType || _report(_exceptionable, {
|
|
3530
|
+
path: _path + ".contentMediaType",
|
|
3531
|
+
expected: "(string | undefined)",
|
|
3532
|
+
value: input.contentMediaType
|
|
3533
|
+
}), undefined === input.minLength || "number" === typeof input.minLength && (Math.floor(input.minLength) === input.minLength && 0 <= input.minLength && input.minLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
3534
|
+
path: _path + ".minLength",
|
|
3535
|
+
expected: "number & Type<\"uint64\">",
|
|
3536
|
+
value: input.minLength
|
|
3537
|
+
})) || _report(_exceptionable, {
|
|
3538
|
+
path: _path + ".minLength",
|
|
3539
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3540
|
+
value: input.minLength
|
|
3541
|
+
}), undefined === input.maxLength || "number" === typeof input.maxLength && (Math.floor(input.maxLength) === input.maxLength && 0 <= input.maxLength && input.maxLength <= 18446744073709552000 || _report(_exceptionable, {
|
|
3542
|
+
path: _path + ".maxLength",
|
|
3543
|
+
expected: "number & Type<\"uint64\">",
|
|
3544
|
+
value: input.maxLength
|
|
3545
|
+
})) || _report(_exceptionable, {
|
|
3546
|
+
path: _path + ".maxLength",
|
|
3547
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3548
|
+
value: input.maxLength
|
|
3549
|
+
}), "string" === input.type || _report(_exceptionable, {
|
|
3550
|
+
path: _path + ".type",
|
|
3551
|
+
expected: "\"string\"",
|
|
3552
|
+
value: input.type
|
|
3553
|
+
})].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => ["string" === typeof input["const"] || "number" === typeof input["const"] || "boolean" === typeof input["const"] || _report(_exceptionable, {
|
|
3554
|
+
path: _path + "[\"const\"]",
|
|
3555
|
+
expected: "(boolean | number | string)",
|
|
3556
|
+
value: input["const"]
|
|
3557
|
+
})].every(flag => flag); const _vo12 = (input, _path, _exceptionable = true) => ["boolean" === input.type || _report(_exceptionable, {
|
|
3558
|
+
path: _path + ".type",
|
|
3559
|
+
expected: "\"boolean\"",
|
|
3560
|
+
value: input.type
|
|
3561
|
+
})].every(flag => flag); const _vo13 = (input, _path, _exceptionable = true) => [("object" === typeof input.items && null !== input.items || _report(_exceptionable, {
|
|
3562
|
+
path: _path + ".items",
|
|
3563
|
+
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)",
|
|
3564
|
+
value: input.items
|
|
3565
|
+
})) && _vu2(input.items, _path + ".items", true && _exceptionable) || _report(_exceptionable, {
|
|
3566
|
+
path: _path + ".items",
|
|
3567
|
+
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)",
|
|
3568
|
+
value: input.items
|
|
3569
|
+
}), undefined === input.uniqueItems || "boolean" === typeof input.uniqueItems || _report(_exceptionable, {
|
|
3570
|
+
path: _path + ".uniqueItems",
|
|
3571
|
+
expected: "(boolean | undefined)",
|
|
3572
|
+
value: input.uniqueItems
|
|
3573
|
+
}), undefined === input.minItems || "number" === typeof input.minItems && (Math.floor(input.minItems) === input.minItems && 0 <= input.minItems && input.minItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
3574
|
+
path: _path + ".minItems",
|
|
3575
|
+
expected: "number & Type<\"uint64\">",
|
|
3576
|
+
value: input.minItems
|
|
3577
|
+
})) || _report(_exceptionable, {
|
|
3578
|
+
path: _path + ".minItems",
|
|
3579
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3580
|
+
value: input.minItems
|
|
3581
|
+
}), undefined === input.maxItems || "number" === typeof input.maxItems && (Math.floor(input.maxItems) === input.maxItems && 0 <= input.maxItems && input.maxItems <= 18446744073709552000 || _report(_exceptionable, {
|
|
3582
|
+
path: _path + ".maxItems",
|
|
3583
|
+
expected: "number & Type<\"uint64\">",
|
|
3584
|
+
value: input.maxItems
|
|
3585
|
+
})) || _report(_exceptionable, {
|
|
3586
|
+
path: _path + ".maxItems",
|
|
3587
|
+
expected: "((number & Type<\"uint64\">) | undefined)",
|
|
3588
|
+
value: input.maxItems
|
|
3589
|
+
}), "array" === input.type || _report(_exceptionable, {
|
|
3590
|
+
path: _path + ".type",
|
|
3591
|
+
expected: "\"array\"",
|
|
3592
|
+
value: input.type
|
|
3593
|
+
})].every(flag => flag); const _vo14 = (input, _path, _exceptionable = true) => [("object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) || _report(_exceptionable, {
|
|
3594
|
+
path: _path + ".properties",
|
|
3595
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
3596
|
+
value: input.properties
|
|
3597
|
+
})) && _vo1(input.properties, _path + ".properties", true && _exceptionable) || _report(_exceptionable, {
|
|
3598
|
+
path: _path + ".properties",
|
|
3599
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
3600
|
+
value: input.properties
|
|
3601
|
+
}), (null !== input.additionalProperties || _report(_exceptionable, {
|
|
3602
|
+
path: _path + ".additionalProperties",
|
|
3603
|
+
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)",
|
|
3604
|
+
value: input.additionalProperties
|
|
3605
|
+
})) && (undefined === input.additionalProperties || false === input.additionalProperties || ("object" === typeof input.additionalProperties && null !== input.additionalProperties || _report(_exceptionable, {
|
|
3606
|
+
path: _path + ".additionalProperties",
|
|
3607
|
+
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)",
|
|
3608
|
+
value: input.additionalProperties
|
|
3609
|
+
})) && _vu2(input.additionalProperties, _path + ".additionalProperties", true && _exceptionable) || _report(_exceptionable, {
|
|
3610
|
+
path: _path + ".additionalProperties",
|
|
3611
|
+
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)",
|
|
3612
|
+
value: input.additionalProperties
|
|
3613
|
+
})), (Array.isArray(input.required) || _report(_exceptionable, {
|
|
3614
|
+
path: _path + ".required",
|
|
3615
|
+
expected: "Array<string>",
|
|
3616
|
+
value: input.required
|
|
3617
|
+
})) && input.required.map((elem, _index5) => "string" === typeof elem || _report(_exceptionable, {
|
|
3618
|
+
path: _path + ".required[" + _index5 + "]",
|
|
3619
|
+
expected: "string",
|
|
3620
|
+
value: elem
|
|
3621
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
3622
|
+
path: _path + ".required",
|
|
3623
|
+
expected: "Array<string>",
|
|
3624
|
+
value: input.required
|
|
3625
|
+
}), "object" === input.type || _report(_exceptionable, {
|
|
3626
|
+
path: _path + ".type",
|
|
3627
|
+
expected: "\"object\"",
|
|
3628
|
+
value: input.type
|
|
3629
|
+
})].every(flag => flag); const _vo15 = (input, _path, _exceptionable = true) => ["string" === typeof input.$ref || _report(_exceptionable, {
|
|
3630
|
+
path: _path + ".$ref",
|
|
3631
|
+
expected: "string",
|
|
3632
|
+
value: input.$ref
|
|
3633
|
+
})].every(flag => flag); const _vo16 = (input, _path, _exceptionable = true) => [(Array.isArray(input.oneOf) || _report(_exceptionable, {
|
|
3634
|
+
path: _path + ".oneOf",
|
|
3635
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
3636
|
+
value: input.oneOf
|
|
3637
|
+
})) && input.oneOf.map((elem, _index6) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
3638
|
+
path: _path + ".oneOf[" + _index6 + "]",
|
|
3639
|
+
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)",
|
|
3640
|
+
value: elem
|
|
3641
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index6 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
3642
|
+
path: _path + ".oneOf[" + _index6 + "]",
|
|
3643
|
+
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)",
|
|
3644
|
+
value: elem
|
|
3645
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
3646
|
+
path: _path + ".oneOf",
|
|
3647
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
3648
|
+
value: input.oneOf
|
|
3649
|
+
}), undefined === input.discriminator || ("object" === typeof input.discriminator && null !== input.discriminator || _report(_exceptionable, {
|
|
3650
|
+
path: _path + ".discriminator",
|
|
3651
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
3652
|
+
value: input.discriminator
|
|
3653
|
+
})) && _vo18(input.discriminator, _path + ".discriminator", true && _exceptionable) || _report(_exceptionable, {
|
|
3654
|
+
path: _path + ".discriminator",
|
|
3655
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
3656
|
+
value: input.discriminator
|
|
3657
|
+
})].every(flag => flag); const _vo17 = (input, _path, _exceptionable = true) => ["null" === input.type || _report(_exceptionable, {
|
|
3658
|
+
path: _path + ".type",
|
|
3659
|
+
expected: "\"null\"",
|
|
3660
|
+
value: input.type
|
|
3661
|
+
})].every(flag => flag); const _vo18 = (input, _path, _exceptionable = true) => ["string" === typeof input.propertyName || _report(_exceptionable, {
|
|
3662
|
+
path: _path + ".propertyName",
|
|
3663
|
+
expected: "string",
|
|
3664
|
+
value: input.propertyName
|
|
3665
|
+
}), undefined === input.mapping || ("object" === typeof input.mapping && null !== input.mapping && false === Array.isArray(input.mapping) || _report(_exceptionable, {
|
|
3666
|
+
path: _path + ".mapping",
|
|
3667
|
+
expected: "(Record<string, string> | undefined)",
|
|
3668
|
+
value: input.mapping
|
|
3669
|
+
})) && _vo19(input.mapping, _path + ".mapping", true && _exceptionable) || _report(_exceptionable, {
|
|
3670
|
+
path: _path + ".mapping",
|
|
3671
|
+
expected: "(Record<string, string> | undefined)",
|
|
3672
|
+
value: input.mapping
|
|
3673
|
+
})].every(flag => flag); const _vo19 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
|
|
3674
|
+
const value = input[key];
|
|
3675
|
+
if (undefined === value)
|
|
3676
|
+
return true;
|
|
3677
|
+
return "string" === typeof value || _report(_exceptionable, {
|
|
3678
|
+
path: _path + __typia_transform__accessExpressionAsString._accessExpressionAsString(key),
|
|
3679
|
+
expected: "string",
|
|
3680
|
+
value: value
|
|
3681
|
+
});
|
|
3682
|
+
}).every(flag => flag)].every(flag => flag); const _vo20 = (input, _path, _exceptionable = true) => [("object" === typeof input.properties && null !== input.properties && false === Array.isArray(input.properties) || _report(_exceptionable, {
|
|
3683
|
+
path: _path + ".properties",
|
|
3684
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
3685
|
+
value: input.properties
|
|
3686
|
+
})) && _vo1(input.properties, _path + ".properties", true && _exceptionable) || _report(_exceptionable, {
|
|
3687
|
+
path: _path + ".properties",
|
|
3688
|
+
expected: "Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>",
|
|
3689
|
+
value: input.properties
|
|
3690
|
+
}), (null !== input.additionalProperties || _report(_exceptionable, {
|
|
3691
|
+
path: _path + ".additionalProperties",
|
|
3692
|
+
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)",
|
|
3693
|
+
value: input.additionalProperties
|
|
3694
|
+
})) && (undefined === input.additionalProperties || false === input.additionalProperties || ("object" === typeof input.additionalProperties && null !== input.additionalProperties || _report(_exceptionable, {
|
|
3695
|
+
path: _path + ".additionalProperties",
|
|
3696
|
+
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)",
|
|
3697
|
+
value: input.additionalProperties
|
|
3698
|
+
})) && _vu2(input.additionalProperties, _path + ".additionalProperties", true && _exceptionable) || _report(_exceptionable, {
|
|
3699
|
+
path: _path + ".additionalProperties",
|
|
3700
|
+
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)",
|
|
3701
|
+
value: input.additionalProperties
|
|
3702
|
+
})), (Array.isArray(input.required) || _report(_exceptionable, {
|
|
3703
|
+
path: _path + ".required",
|
|
3704
|
+
expected: "Array<string>",
|
|
3705
|
+
value: input.required
|
|
3706
|
+
})) && input.required.map((elem, _index7) => "string" === typeof elem || _report(_exceptionable, {
|
|
3707
|
+
path: _path + ".required[" + _index7 + "]",
|
|
3708
|
+
expected: "string",
|
|
3709
|
+
value: elem
|
|
3710
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
3711
|
+
path: _path + ".required",
|
|
3712
|
+
expected: "Array<string>",
|
|
3713
|
+
value: input.required
|
|
3714
|
+
}), "object" === input.type || _report(_exceptionable, {
|
|
3715
|
+
path: _path + ".type",
|
|
3716
|
+
expected: "\"object\"",
|
|
3717
|
+
value: input.type
|
|
3718
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
3719
|
+
path: _path + ".description",
|
|
3720
|
+
expected: "string",
|
|
3721
|
+
value: input.description
|
|
3722
|
+
})].every(flag => flag); const _vo21 = (input, _path, _exceptionable = true) => ["string" === typeof input.$ref || _report(_exceptionable, {
|
|
3723
|
+
path: _path + ".$ref",
|
|
3724
|
+
expected: "string",
|
|
3725
|
+
value: input.$ref
|
|
3726
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
3727
|
+
path: _path + ".description",
|
|
3728
|
+
expected: "string",
|
|
3729
|
+
value: input.description
|
|
3730
|
+
})].every(flag => flag); const _vo22 = (input, _path, _exceptionable = true) => [(Array.isArray(input.oneOf) || _report(_exceptionable, {
|
|
3731
|
+
path: _path + ".oneOf",
|
|
3732
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
3733
|
+
value: input.oneOf
|
|
3734
|
+
})) && input.oneOf.map((elem, _index8) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
3735
|
+
path: _path + ".oneOf[" + _index8 + "]",
|
|
3736
|
+
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)",
|
|
3737
|
+
value: elem
|
|
3738
|
+
})) && _vu0(elem, _path + ".oneOf[" + _index8 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
3739
|
+
path: _path + ".oneOf[" + _index8 + "]",
|
|
3740
|
+
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)",
|
|
3741
|
+
value: elem
|
|
3742
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
3743
|
+
path: _path + ".oneOf",
|
|
3744
|
+
expected: "Array<IInteger | INumber | IString | IConstant | IBoolean | IArray | IObject | IReference | INull>",
|
|
3745
|
+
value: input.oneOf
|
|
3746
|
+
}), undefined === input.discriminator || ("object" === typeof input.discriminator && null !== input.discriminator || _report(_exceptionable, {
|
|
3747
|
+
path: _path + ".discriminator",
|
|
3748
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
3749
|
+
value: input.discriminator
|
|
3750
|
+
})) && _vo18(input.discriminator, _path + ".discriminator", true && _exceptionable) || _report(_exceptionable, {
|
|
3751
|
+
path: _path + ".discriminator",
|
|
3752
|
+
expected: "(AutoBeOpenApi.IJsonSchema.IOneOf.IDiscriminator | undefined)",
|
|
3753
|
+
value: input.discriminator
|
|
3754
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
3755
|
+
path: _path + ".description",
|
|
3756
|
+
expected: "string",
|
|
3757
|
+
value: input.description
|
|
3758
|
+
})].every(flag => flag); const _vo23 = (input, _path, _exceptionable = true) => ["null" === input.type || _report(_exceptionable, {
|
|
3759
|
+
path: _path + ".type",
|
|
3760
|
+
expected: "\"null\"",
|
|
3761
|
+
value: input.type
|
|
3762
|
+
}), "string" === typeof input.description || _report(_exceptionable, {
|
|
3763
|
+
path: _path + ".description",
|
|
3764
|
+
expected: "string",
|
|
3765
|
+
value: input.description
|
|
3766
|
+
})].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
|
|
3767
|
+
if ("number" === input.type)
|
|
3768
|
+
return _vo9(input, _path, true && _exceptionable);
|
|
3769
|
+
else if ("integer" === input.type)
|
|
3770
|
+
return _vo8(input, _path, true && _exceptionable);
|
|
3771
|
+
else if ("string" === input.type)
|
|
3772
|
+
return _vo10(input, _path, true && _exceptionable);
|
|
3773
|
+
else if (undefined !== input["const"])
|
|
3774
|
+
return _vo11(input, _path, true && _exceptionable);
|
|
3775
|
+
else if ("null" === input.type)
|
|
3776
|
+
return _vo17(input, _path, true && _exceptionable);
|
|
3777
|
+
else if ("boolean" === input.type)
|
|
3778
|
+
return _vo12(input, _path, true && _exceptionable);
|
|
3779
|
+
else if ("array" === input.type)
|
|
3780
|
+
return _vo13(input, _path, true && _exceptionable);
|
|
3781
|
+
else if ("object" === input.type)
|
|
3782
|
+
return _vo14(input, _path, true && _exceptionable);
|
|
3783
|
+
else if (undefined !== input.$ref)
|
|
3784
|
+
return _vo15(input, _path, true && _exceptionable);
|
|
3785
|
+
else
|
|
3786
|
+
return _report(_exceptionable, {
|
|
3787
|
+
path: _path,
|
|
3788
|
+
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)",
|
|
3789
|
+
value: input
|
|
3790
|
+
});
|
|
3791
|
+
})(); const _vu1 = (input, _path, _exceptionable = true) => (() => {
|
|
3792
|
+
if (undefined !== input["const"])
|
|
3793
|
+
return _vo2(input, _path, true && _exceptionable);
|
|
3794
|
+
else if ("boolean" === input.type)
|
|
3795
|
+
return _vo3(input, _path, true && _exceptionable);
|
|
3796
|
+
else if ("number" === input.type)
|
|
3797
|
+
return _vo5(input, _path, true && _exceptionable);
|
|
3798
|
+
else if ("integer" === input.type)
|
|
3799
|
+
return _vo4(input, _path, true && _exceptionable);
|
|
3800
|
+
else if ("string" === input.type)
|
|
3801
|
+
return _vo6(input, _path, true && _exceptionable);
|
|
3802
|
+
else if ("array" === input.type)
|
|
3803
|
+
return _vo7(input, _path, true && _exceptionable);
|
|
3804
|
+
else if ("object" === input.type)
|
|
3805
|
+
return _vo20(input, _path, true && _exceptionable);
|
|
3806
|
+
else if (undefined !== input.$ref)
|
|
3807
|
+
return _vo21(input, _path, true && _exceptionable);
|
|
3808
|
+
else if (undefined !== input.oneOf)
|
|
3809
|
+
return _vo22(input, _path, true && _exceptionable);
|
|
3810
|
+
else if ("null" === input.type)
|
|
3811
|
+
return _vo23(input, _path, true && _exceptionable);
|
|
3812
|
+
else
|
|
3813
|
+
return _report(_exceptionable, {
|
|
3814
|
+
path: _path,
|
|
3815
|
+
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)",
|
|
3816
|
+
value: input
|
|
3817
|
+
});
|
|
3818
|
+
})(); const _vu2 = (input, _path, _exceptionable = true) => (() => {
|
|
3819
|
+
if ("number" === input.type)
|
|
3820
|
+
return _vo9(input, _path, true && _exceptionable);
|
|
3821
|
+
else if ("integer" === input.type)
|
|
3822
|
+
return _vo8(input, _path, true && _exceptionable);
|
|
3823
|
+
else if ("string" === input.type)
|
|
3824
|
+
return _vo10(input, _path, true && _exceptionable);
|
|
3825
|
+
else if (undefined !== input["const"])
|
|
3826
|
+
return _vo11(input, _path, true && _exceptionable);
|
|
3827
|
+
else if ("null" === input.type)
|
|
3828
|
+
return _vo17(input, _path, true && _exceptionable);
|
|
3829
|
+
else if ("boolean" === input.type)
|
|
3830
|
+
return _vo12(input, _path, true && _exceptionable);
|
|
3831
|
+
else if ("array" === input.type)
|
|
3832
|
+
return _vo13(input, _path, true && _exceptionable);
|
|
3833
|
+
else if ("object" === input.type)
|
|
3834
|
+
return _vo14(input, _path, true && _exceptionable);
|
|
3835
|
+
else if (undefined !== input.$ref)
|
|
3836
|
+
return _vo15(input, _path, true && _exceptionable);
|
|
3837
|
+
else if (undefined !== input.oneOf)
|
|
3838
|
+
return _vo16(input, _path, true && _exceptionable);
|
|
3839
|
+
else
|
|
3840
|
+
return _report(_exceptionable, {
|
|
3841
|
+
path: _path,
|
|
3842
|
+
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)",
|
|
3843
|
+
value: input
|
|
3844
|
+
});
|
|
3845
|
+
})(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
|
|
3846
|
+
if (false === __is(input)) {
|
|
3847
|
+
errors = [];
|
|
3848
|
+
_report = __typia_transform__validateReport._validateReport(errors);
|
|
3849
|
+
((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
|
|
3850
|
+
path: _path + "",
|
|
3851
|
+
expected: "IAutoBeInterfaceComplementApplication.IProps",
|
|
3852
|
+
value: input
|
|
3853
|
+
})) && _vo0(input, _path + "", true) || _report(true, {
|
|
3854
|
+
path: _path + "",
|
|
3855
|
+
expected: "IAutoBeInterfaceComplementApplication.IProps",
|
|
3856
|
+
value: input
|
|
3857
|
+
}))(input, "$input", true);
|
|
3858
|
+
const success = 0 === errors.length;
|
|
3859
|
+
return success ? {
|
|
3860
|
+
success,
|
|
3861
|
+
data: input
|
|
3862
|
+
} : {
|
|
3863
|
+
success,
|
|
3864
|
+
errors,
|
|
3865
|
+
data: input
|
|
3866
|
+
};
|
|
3867
|
+
}
|
|
3868
|
+
return {
|
|
3869
|
+
success: true,
|
|
365
3870
|
data: input
|
|
366
3871
|
};
|
|
367
|
-
}
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
deepseek: claude,
|
|
379
|
-
"3.1": claude,
|
|
3872
|
+
}; })()
|
|
3873
|
+
}
|
|
3874
|
+
]
|
|
3875
|
+
};
|
|
3876
|
+
__typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
|
|
3877
|
+
validate: {
|
|
3878
|
+
complementComponents: validate,
|
|
3879
|
+
},
|
|
3880
|
+
}), { equals: false }));
|
|
3881
|
+
return application;
|
|
3882
|
+
})(),
|
|
380
3883
|
};
|
|
381
3884
|
//# sourceMappingURL=orchestrateInterfaceComplement.js.map
|