@autobe/agent 0.28.1 → 0.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/AutoBeAgent.js +1 -0
- package/lib/AutoBeAgent.js.map +1 -1
- package/lib/AutoBeMockAgent.js +1 -0
- package/lib/AutoBeMockAgent.js.map +1 -1
- package/lib/constants/AutoBeConfigConstant.d.ts +3 -1
- package/lib/constants/AutoBeSystemPromptConstant.d.ts +39 -26
- package/lib/constants/AutoBeSystemPromptConstant.js.map +1 -1
- package/lib/context/AutoBeContext.d.ts +1 -1
- package/lib/factory/createAutoBeContext.js +5 -3
- package/lib/factory/createAutoBeContext.js.map +1 -1
- package/lib/index.mjs +43501 -23602
- package/lib/index.mjs.map +1 -1
- package/lib/orchestrate/analyze/histories/transformAnalyzeReviewHistories.d.ts +7 -2
- package/lib/orchestrate/analyze/histories/transformAnalyzeReviewHistories.js +11 -21
- package/lib/orchestrate/analyze/histories/transformAnalyzeReviewHistories.js.map +1 -1
- package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.d.ts +2 -2
- package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.js +12 -5
- package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.js.map +1 -1
- package/lib/orchestrate/analyze/histories/transformAnalyzeWriteHistories.d.ts +2 -2
- package/lib/orchestrate/analyze/histories/transformAnalyzeWriteHistories.js +53 -50
- package/lib/orchestrate/analyze/histories/transformAnalyzeWriteHistories.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyze.js +2 -2
- package/lib/orchestrate/analyze/orchestrateAnalyze.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeReview.js +855 -258
- package/lib/orchestrate/analyze/orchestrateAnalyzeReview.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js +2 -14
- package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeWrite.js +2 -9
- package/lib/orchestrate/analyze/orchestrateAnalyzeWrite.js.map +1 -1
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeReviewApplication.d.ts +110 -36
- package/lib/orchestrate/common/AutoBePreliminaryController.d.ts +40 -0
- package/lib/orchestrate/common/AutoBePreliminaryController.js +97 -0
- package/lib/orchestrate/common/AutoBePreliminaryController.js.map +1 -0
- package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistory.d.ts +8 -0
- package/lib/orchestrate/{realize/histories/transformRealizeCorrectCastingHistories.js → common/histories/transformCommonCorrectCastingHistory.js} +16 -13
- package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistory.js.map +1 -0
- package/lib/orchestrate/common/histories/transformPreliminaryHistory.d.ts +4 -0
- package/lib/orchestrate/common/histories/transformPreliminaryHistory.js +285 -0
- package/lib/orchestrate/common/histories/transformPreliminaryHistory.js.map +1 -0
- package/lib/orchestrate/common/histories/{transformPreviousAndLatestCorrectHistories.d.ts → transformPreviousAndLatestCorrectHistory.d.ts} +1 -1
- package/lib/orchestrate/common/histories/{transformPreviousAndLatestCorrectHistories.js → transformPreviousAndLatestCorrectHistory.js} +4 -4
- package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistory.js.map +1 -0
- package/lib/orchestrate/common/internal/complementPreliminaryCollection.d.ts +7 -0
- package/lib/orchestrate/common/internal/complementPreliminaryCollection.js +99 -0
- package/lib/orchestrate/common/internal/complementPreliminaryCollection.js.map +1 -0
- package/lib/orchestrate/common/internal/createPreliminaryCollection.d.ts +3 -0
- package/lib/orchestrate/common/internal/createPreliminaryCollection.js +20 -0
- package/lib/orchestrate/common/internal/createPreliminaryCollection.js.map +1 -0
- package/lib/orchestrate/common/internal/validatePreliminary.d.ts +5 -0
- package/lib/orchestrate/common/internal/validatePreliminary.js +217 -0
- package/lib/orchestrate/common/internal/validatePreliminary.js.map +1 -0
- package/lib/orchestrate/common/orchestrateCommonCorrectCasting.js +10 -22
- package/lib/orchestrate/common/orchestrateCommonCorrectCasting.js.map +1 -1
- package/lib/orchestrate/common/orchestratePreliminary.d.ts +12 -0
- package/lib/orchestrate/common/orchestratePreliminary.js +231 -0
- package/lib/orchestrate/common/orchestratePreliminary.js.map +1 -0
- package/lib/orchestrate/common/structures/AutoBePreliminaryRequest.d.ts +16 -0
- package/lib/orchestrate/{realize/structures/IAutoBeRealizeAuthorizationApplication.js → common/structures/AutoBePreliminaryRequest.js} +1 -1
- package/lib/orchestrate/common/structures/AutoBePreliminaryRequest.js.map +1 -0
- package/lib/orchestrate/common/structures/IAutoBeCommonCorrectCastingApplication.d.ts +1 -4
- package/lib/orchestrate/common/structures/IAutoBeOrchestrateResult.d.ts +9 -0
- package/lib/orchestrate/{interface/structures/IAutoBeInterfacePrerequisitesApplication.js → common/structures/IAutoBeOrchestrateResult.js} +1 -1
- package/lib/orchestrate/common/structures/IAutoBeOrchestrateResult.js.map +1 -0
- package/lib/orchestrate/common/structures/IAutoBePreliminaryCollection.d.ts +8 -0
- package/lib/orchestrate/{interface/structures/IAutoBeInterfaceEndpointsReviewApplication.js → common/structures/IAutoBePreliminaryCollection.js} +1 -1
- package/lib/orchestrate/common/structures/IAutoBePreliminaryCollection.js.map +1 -0
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetAnalysisFiles.d.ts +27 -0
- package/lib/orchestrate/{interface/structures/IAutoBeInterfaceOperationsReviewApplication.js → common/structures/IAutoBePreliminaryGetAnalysisFiles.js} +1 -1
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetAnalysisFiles.js.map +1 -0
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceOperations.d.ts +28 -0
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceOperations.js +3 -0
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceOperations.js.map +1 -0
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceSchemas.d.ts +27 -0
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceSchemas.js +3 -0
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceSchemas.js.map +1 -0
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetPrismaSchemas.d.ts +27 -0
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetPrismaSchemas.js +3 -0
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetPrismaSchemas.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationHistory.d.ts +10 -0
- package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationHistory.js +70 -0
- package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationHistory.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceCommonHistory.d.ts +3 -0
- package/lib/orchestrate/interface/histories/{transformInterfaceCommonHistories.js → transformInterfaceCommonHistory.js} +4 -4
- package/lib/orchestrate/interface/histories/transformInterfaceCommonHistory.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceComplementHistory.d.ts +9 -0
- package/lib/orchestrate/interface/histories/transformInterfaceComplementHistory.js +60 -0
- package/lib/orchestrate/interface/histories/transformInterfaceComplementHistory.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistory.d.ts +12 -0
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistory.js +63 -0
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistory.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointReviewHistory.d.ts +7 -0
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointReviewHistory.js +36 -0
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointReviewHistory.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceGroupHistory.d.ts +6 -0
- package/lib/orchestrate/interface/histories/transformInterfaceGroupHistory.js +68 -0
- package/lib/orchestrate/interface/histories/transformInterfaceGroupHistory.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceOperationHistory.d.ts +9 -0
- package/lib/orchestrate/interface/histories/transformInterfaceOperationHistory.js +72 -0
- package/lib/orchestrate/interface/histories/transformInterfaceOperationHistory.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceOperationReviewHistory.d.ts +7 -0
- package/lib/orchestrate/interface/histories/transformInterfaceOperationReviewHistory.js +38 -0
- package/lib/orchestrate/interface/histories/transformInterfaceOperationReviewHistory.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfacePrerequisiteHistory.d.ts +8 -0
- package/lib/orchestrate/interface/histories/transformInterfacePrerequisiteHistory.js +73 -0
- package/lib/orchestrate/interface/histories/transformInterfacePrerequisiteHistory.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistory.d.ts +11 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistory.js +95 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistory.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistory.d.ts +5 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistory.js +54 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistory.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistory.d.ts +12 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistory.js +75 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistory.js.map +1 -0
- package/lib/orchestrate/interface/orchestrateInterface.js +90 -46
- package/lib/orchestrate/interface/orchestrateInterface.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceAuthorization.d.ts +6 -0
- package/lib/orchestrate/interface/{orchestrateInterfaceAuthorizations.js → orchestrateInterfaceAuthorization.js} +1370 -226
- package/lib/orchestrate/interface/orchestrateInterfaceAuthorization.js.map +1 -0
- package/lib/orchestrate/interface/orchestrateInterfaceComplement.d.ts +4 -3
- package/lib/orchestrate/interface/orchestrateInterfaceComplement.js +2807 -532
- package/lib/orchestrate/interface/orchestrateInterfaceComplement.js.map +1 -1
- package/lib/orchestrate/interface/{orchestrateInterfaceEndpoints.d.ts → orchestrateInterfaceEndpoint.d.ts} +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceEndpoint.js +1356 -0
- package/lib/orchestrate/interface/orchestrateInterfaceEndpoint.js.map +1 -0
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointReview.d.ts +4 -0
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointReview.js +1337 -0
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointReview.js.map +1 -0
- package/lib/orchestrate/interface/{orchestrateInterfaceGroups.d.ts → orchestrateInterfaceGroup.d.ts} +1 -2
- package/lib/orchestrate/interface/orchestrateInterfaceGroup.js +621 -0
- package/lib/orchestrate/interface/orchestrateInterfaceGroup.js.map +1 -0
- package/lib/orchestrate/interface/{orchestrateInterfaceOperations.d.ts → orchestrateInterfaceOperation.d.ts} +1 -2
- package/lib/orchestrate/interface/{orchestrateInterfaceOperations.js → orchestrateInterfaceOperation.js} +1275 -216
- package/lib/orchestrate/interface/orchestrateInterfaceOperation.js.map +1 -0
- package/lib/orchestrate/interface/orchestrateInterfaceOperationReview.d.ts +4 -0
- package/lib/orchestrate/interface/{orchestrateInterfaceOperationsReview.js → orchestrateInterfaceOperationReview.js} +1421 -247
- package/lib/orchestrate/interface/orchestrateInterfaceOperationReview.js.map +1 -0
- package/lib/orchestrate/interface/{orchestrateInterfacePrerequisites.d.ts → orchestrateInterfacePrerequisite.d.ts} +1 -1
- package/lib/orchestrate/interface/orchestrateInterfacePrerequisite.js +2159 -0
- package/lib/orchestrate/interface/orchestrateInterfacePrerequisite.js.map +1 -0
- package/lib/orchestrate/interface/{orchestrateInterfaceSchemas.d.ts → orchestrateInterfaceSchema.d.ts} +1 -2
- package/lib/orchestrate/interface/{orchestrateInterfaceSchemas.js → orchestrateInterfaceSchema.js} +2550 -546
- package/lib/orchestrate/interface/orchestrateInterfaceSchema.js.map +1 -0
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaRename.js +7 -17
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaRename.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.d.ts +1 -0
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.js +2823 -548
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.js.map +1 -1
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceAuthorizationsApplication.d.ts +56 -5
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceComplementApplication.d.ts +57 -10
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointApplication.d.ts +55 -10
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointReviewApplication.d.ts +96 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointReviewApplication.js +3 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointReviewApplication.js.map +1 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceGroupApplication.d.ts +6 -82
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.d.ts +58 -13
- package/lib/orchestrate/interface/structures/{IAutoBeInterfaceOperationsReviewApplication.d.ts → IAutoBeInterfaceOperationReviewApplication.d.ts} +58 -28
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationReviewApplication.js +3 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationReviewApplication.js.map +1 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfacePrerequisiteApplication.d.ts +98 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfacePrerequisiteApplication.js +3 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfacePrerequisiteApplication.js.map +1 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaApplication.d.ts +56 -15
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaContentReviewApplication.d.ts +62 -22
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRelationReviewApplication.d.ts +60 -21
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaSecurityReviewApplication.d.ts +61 -19
- package/lib/orchestrate/interface/utils/JsonSchemaFactory.js +29 -23
- package/lib/orchestrate/interface/utils/JsonSchemaFactory.js.map +1 -1
- package/lib/orchestrate/interface/utils/JsonSchemaNamingConvention.js +67 -61
- package/lib/orchestrate/interface/utils/JsonSchemaNamingConvention.js.map +1 -1
- package/lib/orchestrate/interface/utils/JsonSchemaValidator.d.ts +2 -1
- package/lib/orchestrate/interface/utils/JsonSchemaValidator.js +52 -25
- package/lib/orchestrate/interface/utils/JsonSchemaValidator.js.map +1 -1
- package/lib/orchestrate/interface/utils/OperationValidator.js +59 -1
- package/lib/orchestrate/interface/utils/OperationValidator.js.map +1 -1
- package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistory.d.ts +6 -0
- package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistory.js +98 -0
- package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistory.js.map +1 -0
- package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistory.d.ts +7 -0
- package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistory.js +31 -0
- package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistory.js.map +1 -0
- package/lib/orchestrate/prisma/histories/transformPrismaReviewHistory.d.ts +7 -0
- package/lib/orchestrate/prisma/histories/transformPrismaReviewHistory.js +38 -0
- package/lib/orchestrate/prisma/histories/transformPrismaReviewHistory.js.map +1 -0
- package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistory.d.ts +8 -0
- package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistory.js +79 -0
- package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistory.js.map +1 -0
- package/lib/orchestrate/prisma/orchestratePrisma.js +9 -6
- package/lib/orchestrate/prisma/orchestratePrisma.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaComponent.d.ts +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaComponent.js +8 -14
- package/lib/orchestrate/prisma/orchestratePrismaComponent.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaCorrect.js +2863 -1543
- package/lib/orchestrate/prisma/orchestratePrismaCorrect.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaReview.d.ts +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaReview.js +2886 -1566
- package/lib/orchestrate/prisma/orchestratePrismaReview.js.map +1 -1
- package/lib/orchestrate/prisma/{orchestratePrismaSchemas.d.ts → orchestratePrismaSchema.d.ts} +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaSchema.js +3068 -0
- package/lib/orchestrate/prisma/orchestratePrismaSchema.js.map +1 -0
- package/lib/orchestrate/prisma/structures/IAutoBePrismaCorrectApplication.d.ts +74 -76
- package/lib/orchestrate/prisma/structures/IAutoBePrismaReviewApplication.d.ts +90 -72
- package/lib/orchestrate/prisma/structures/IAutoBePrismaSchemaApplication.d.ts +89 -66
- package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistory.d.ts +9 -0
- package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistory.js +79 -0
- package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistory.js.map +1 -0
- package/lib/orchestrate/realize/histories/transformRealizeAuthorizationWriteHistory.d.ts +7 -0
- package/lib/orchestrate/realize/histories/transformRealizeAuthorizationWriteHistory.js +41 -0
- package/lib/orchestrate/realize/histories/transformRealizeAuthorizationWriteHistory.js.map +1 -0
- package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistory.d.ts +12 -0
- package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistory.js +67 -0
- package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistory.js.map +1 -0
- package/lib/orchestrate/realize/histories/transformRealizeCorrectHistory.d.ts +18 -0
- package/lib/orchestrate/realize/histories/transformRealizeCorrectHistory.js +54 -0
- package/lib/orchestrate/realize/histories/transformRealizeCorrectHistory.js.map +1 -0
- package/lib/orchestrate/realize/histories/transformRealizeWriteHistories.d.ts +4 -2
- package/lib/orchestrate/realize/histories/transformRealizeWriteHistories.js +140 -106
- package/lib/orchestrate/realize/histories/transformRealizeWriteHistories.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeWriteMembershipHistory.d.ts +3 -0
- package/lib/orchestrate/realize/histories/transformRealizeWriteMembershipHistory.js +23 -0
- package/lib/orchestrate/realize/histories/transformRealizeWriteMembershipHistory.js.map +1 -0
- package/lib/orchestrate/realize/orchestrateRealize.js +4 -4
- package/lib/orchestrate/realize/orchestrateRealize.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.d.ts +5 -1
- package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js +1288 -572
- package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js.map +1 -1
- package/lib/orchestrate/realize/{orchestrateRealizeAuthorization.d.ts → orchestrateRealizeAuthorizationWrite.d.ts} +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeAuthorizationWrite.js +1410 -0
- package/lib/orchestrate/realize/orchestrateRealizeAuthorizationWrite.js.map +1 -0
- package/lib/orchestrate/realize/orchestrateRealizeCorrect.js +664 -140
- package/lib/orchestrate/realize/orchestrateRealizeCorrect.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeCorrectCasting.js +20 -65
- package/lib/orchestrate/realize/orchestrateRealizeCorrectCasting.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeWrite.js +660 -135
- package/lib/orchestrate/realize/orchestrateRealizeWrite.js.map +1 -1
- package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationCorrectApplication.d.ts +79 -19
- package/lib/orchestrate/realize/structures/{IAutoBeRealizeAuthorizationApplication.d.ts → IAutoBeRealizeAuthorizationWriteApplication.d.ts} +60 -27
- package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationWriteApplication.js +3 -0
- package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationWriteApplication.js.map +1 -0
- package/lib/orchestrate/realize/structures/IAutoBeRealizeCorrectApplication.d.ts +54 -5
- package/lib/orchestrate/realize/structures/IAutoBeRealizeScenarioResult.d.ts +6 -14
- package/lib/orchestrate/realize/structures/IAutoBeRealizeWriteApplication.d.ts +54 -6
- package/lib/orchestrate/realize/utils/generateRealizeScenario.d.ts +1 -3
- package/lib/orchestrate/realize/utils/generateRealizeScenario.js +1 -7
- package/lib/orchestrate/realize/utils/generateRealizeScenario.js.map +1 -1
- package/lib/orchestrate/test/histories/transformTestCorrectHistories.d.ts +3 -3
- package/lib/orchestrate/test/histories/transformTestCorrectHistories.js +23 -20
- package/lib/orchestrate/test/histories/transformTestCorrectHistories.js.map +1 -1
- package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistory.d.ts +4 -0
- package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistory.js +36 -0
- package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistory.js.map +1 -0
- package/lib/orchestrate/test/histories/transformTestScenarioHistory.d.ts +11 -0
- package/lib/orchestrate/test/histories/transformTestScenarioHistory.js +95 -0
- package/lib/orchestrate/test/histories/transformTestScenarioHistory.js.map +1 -0
- package/lib/orchestrate/test/histories/transformTestScenarioReviewHistory.d.ts +10 -0
- package/lib/orchestrate/test/histories/transformTestScenarioReviewHistory.js +67 -0
- package/lib/orchestrate/test/histories/transformTestScenarioReviewHistory.js.map +1 -0
- package/lib/orchestrate/test/histories/{transformTestWriteHistories.d.ts → transformTestWriteHistory.d.ts} +4 -4
- package/lib/orchestrate/test/histories/{transformTestWriteHistories.js → transformTestWriteHistory.js} +79 -76
- package/lib/orchestrate/test/histories/transformTestWriteHistory.js.map +1 -0
- package/lib/orchestrate/test/orchestrateTestCorrect.js +13 -26
- package/lib/orchestrate/test/orchestrateTestCorrect.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestCorrectInvalidRequest.js +3 -15
- package/lib/orchestrate/test/orchestrateTestCorrectInvalidRequest.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestScenario.d.ts +1 -1
- package/lib/orchestrate/test/orchestrateTestScenario.js +1370 -316
- package/lib/orchestrate/test/orchestrateTestScenario.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestScenarioReview.d.ts +5 -3
- package/lib/orchestrate/test/orchestrateTestScenarioReview.js +1067 -288
- package/lib/orchestrate/test/orchestrateTestScenarioReview.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestWrite.js +8 -15
- package/lib/orchestrate/test/orchestrateTestWrite.js.map +1 -1
- package/lib/orchestrate/test/structures/IAutoBeTestScenarioApplication.d.ts +66 -4
- package/lib/orchestrate/test/structures/IAutoBeTestScenarioReviewApplication.d.ts +82 -14
- package/lib/structures/IAutoBeOrchestrateHistory.d.ts +5 -0
- package/lib/structures/IAutoBeOrchestrateHistory.js +3 -0
- package/lib/structures/IAutoBeOrchestrateHistory.js.map +1 -0
- package/lib/utils/executeCachedBatch.d.ts +5 -1
- package/lib/utils/executeCachedBatch.js +23 -5
- package/lib/utils/executeCachedBatch.js.map +1 -1
- package/lib/utils/validateEmptyCode.js +2 -2
- package/lib/utils/validateEmptyCode.js.map +1 -1
- package/package.json +8 -6
- package/src/AutoBeAgent.ts +1 -0
- package/src/AutoBeMockAgent.ts +1 -0
- package/src/constants/AutoBeConfigConstant.ts +2 -0
- package/src/constants/AutoBeSystemPromptConstant.ts +39 -26
- package/src/context/AutoBeContext.ts +1 -1
- package/src/factory/createAutoBeContext.ts +5 -2
- package/src/orchestrate/analyze/histories/transformAnalyzeReviewHistories.ts +17 -28
- package/src/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.ts +12 -6
- package/src/orchestrate/analyze/histories/transformAnalyzeWriteHistories.ts +62 -61
- package/src/orchestrate/analyze/orchestrateAnalyze.ts +2 -0
- package/src/orchestrate/analyze/orchestrateAnalyzeReview.ts +97 -48
- package/src/orchestrate/analyze/orchestrateAnalyzeScenario.ts +3 -16
- package/src/orchestrate/analyze/orchestrateAnalyzeWrite.ts +1 -2
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeReviewApplication.ts +114 -36
- package/src/orchestrate/common/AutoBePreliminaryController.ts +161 -0
- package/src/orchestrate/common/histories/transformCommonCorrectCastingHistory.ts +32 -0
- package/src/orchestrate/common/histories/transformPreliminaryHistory.ts +383 -0
- package/src/orchestrate/common/histories/{transformPreviousAndLatestCorrectHistories.ts → transformPreviousAndLatestCorrectHistory.ts} +1 -1
- package/src/orchestrate/common/internal/complementPreliminaryCollection.ts +123 -0
- package/src/orchestrate/common/internal/createPreliminaryCollection.ts +32 -0
- package/src/orchestrate/common/internal/validatePreliminary.ts +315 -0
- package/src/orchestrate/common/orchestrateCommonCorrectCasting.ts +8 -15
- package/src/orchestrate/common/orchestratePreliminary.ts +361 -0
- package/src/orchestrate/common/structures/AutoBePreliminaryRequest.ts +18 -0
- package/src/orchestrate/common/structures/IAutoBeCommonCorrectCastingApplication.ts +1 -4
- package/src/orchestrate/common/structures/IAutoBeOrchestrateResult.ts +13 -0
- package/src/orchestrate/common/structures/IAutoBePreliminaryCollection.ts +9 -0
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetAnalysisFiles.ts +29 -0
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceOperations.ts +30 -0
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceSchemas.ts +29 -0
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetPrismaSchemas.ts +29 -0
- package/src/orchestrate/interface/histories/transformInterfaceAuthorizationHistory.ts +77 -0
- package/src/orchestrate/interface/histories/{transformInterfaceCommonHistories.ts → transformInterfaceCommonHistory.ts} +1 -1
- package/src/orchestrate/interface/histories/{transformInterfaceGroupHistories.ts → transformInterfaceComplementHistory.ts} +35 -21
- package/src/orchestrate/interface/histories/transformInterfaceEndpointHistory.ts +74 -0
- package/src/orchestrate/interface/histories/transformInterfaceEndpointReviewHistory.ts +40 -0
- package/src/orchestrate/interface/histories/transformInterfaceGroupHistory.ts +72 -0
- package/src/orchestrate/interface/histories/transformInterfaceOperationHistory.ts +79 -0
- package/src/orchestrate/interface/histories/transformInterfaceOperationReviewHistory.ts +43 -0
- package/src/orchestrate/interface/histories/transformInterfacePrerequisiteHistory.ts +89 -0
- package/src/orchestrate/interface/histories/transformInterfaceSchemaHistory.ts +105 -0
- package/src/orchestrate/interface/histories/transformInterfaceSchemaRenameHistory.ts +56 -0
- package/src/orchestrate/interface/histories/transformInterfaceSchemaReviewHistory.ts +88 -0
- package/src/orchestrate/interface/orchestrateInterface.ts +115 -51
- package/src/orchestrate/interface/{orchestrateInterfaceAuthorizations.ts → orchestrateInterfaceAuthorization.ts} +91 -67
- package/src/orchestrate/interface/orchestrateInterfaceComplement.ts +174 -78
- package/src/orchestrate/interface/orchestrateInterfaceEndpoint.ts +207 -0
- package/src/orchestrate/interface/orchestrateInterfaceEndpointReview.ts +139 -0
- package/src/orchestrate/interface/orchestrateInterfaceGroup.ts +153 -0
- package/src/orchestrate/interface/{orchestrateInterfaceOperations.ts → orchestrateInterfaceOperation.ts} +109 -86
- package/src/orchestrate/interface/orchestrateInterfaceOperationReview.ts +186 -0
- package/src/orchestrate/interface/{orchestrateInterfacePrerequisites.ts → orchestrateInterfacePrerequisite.ts} +123 -58
- package/src/orchestrate/interface/{orchestrateInterfaceSchemas.ts → orchestrateInterfaceSchema.ts} +96 -90
- package/src/orchestrate/interface/orchestrateInterfaceSchemaRename.ts +10 -11
- package/src/orchestrate/interface/orchestrateInterfaceSchemaReview.ts +127 -60
- package/src/orchestrate/interface/structures/IAutoBeInterfaceAuthorizationsApplication.ts +63 -5
- package/src/orchestrate/interface/structures/IAutoBeInterfaceComplementApplication.ts +67 -12
- package/src/orchestrate/interface/structures/IAutoBeInterfaceEndpointApplication.ts +63 -10
- package/src/orchestrate/interface/structures/IAutoBeInterfaceEndpointReviewApplication.ts +106 -0
- package/src/orchestrate/interface/structures/IAutoBeInterfaceGroupApplication.ts +6 -84
- package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.ts +65 -13
- package/src/orchestrate/interface/structures/{IAutoBeInterfaceOperationsReviewApplication.ts → IAutoBeInterfaceOperationReviewApplication.ts} +65 -30
- package/src/orchestrate/interface/structures/IAutoBeInterfacePrerequisiteApplication.ts +111 -0
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaApplication.ts +65 -15
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaContentReviewApplication.ts +71 -24
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaRelationReviewApplication.ts +68 -23
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaSecurityReviewApplication.ts +69 -21
- package/src/orchestrate/interface/utils/JsonSchemaFactory.ts +31 -23
- package/src/orchestrate/interface/utils/JsonSchemaNamingConvention.ts +73 -61
- package/src/orchestrate/interface/utils/JsonSchemaValidator.ts +53 -26
- package/src/orchestrate/interface/utils/OperationValidator.ts +69 -1
- package/src/orchestrate/prisma/histories/transformPrismaComponentsHistory.ts +109 -0
- package/src/orchestrate/prisma/histories/{transformPrismaCorrectHistories.ts → transformPrismaCorrectHistory.ts} +13 -22
- package/src/orchestrate/prisma/histories/transformPrismaReviewHistory.ts +42 -0
- package/src/orchestrate/prisma/histories/{transformPrismaSchemaHistories.ts → transformPrismaSchemaHistory.ts} +7 -8
- package/src/orchestrate/prisma/orchestratePrisma.ts +12 -17
- package/src/orchestrate/prisma/orchestratePrismaComponent.ts +7 -15
- package/src/orchestrate/prisma/orchestratePrismaCorrect.ts +129 -64
- package/src/orchestrate/prisma/orchestratePrismaReview.ts +115 -59
- package/src/orchestrate/prisma/{orchestratePrismaSchemas.ts → orchestratePrismaSchema.ts} +92 -60
- package/src/orchestrate/prisma/structures/IAutoBePrismaCorrectApplication.ts +81 -76
- package/src/orchestrate/prisma/structures/IAutoBePrismaReviewApplication.ts +97 -72
- package/src/orchestrate/prisma/structures/IAutoBePrismaSchemaApplication.ts +93 -66
- package/src/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistory.ts +89 -0
- package/src/orchestrate/realize/histories/transformRealizeAuthorizationWriteHistory.ts +45 -0
- package/src/orchestrate/realize/histories/transformRealizeCorrectCastingHistory.ts +85 -0
- package/src/orchestrate/realize/histories/transformRealizeCorrectHistory.ts +77 -0
- package/src/orchestrate/realize/histories/transformRealizeWriteHistories.ts +152 -121
- package/src/orchestrate/realize/histories/{transformRealizeWriteAuthorizationsHistories.ts → transformRealizeWriteMembershipHistory.ts} +2 -2
- package/src/orchestrate/realize/orchestrateRealize.ts +4 -3
- package/src/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.ts +155 -97
- package/src/orchestrate/realize/orchestrateRealizeAuthorizationWrite.ts +241 -0
- package/src/orchestrate/realize/orchestrateRealizeCorrect.ts +88 -86
- package/src/orchestrate/realize/orchestrateRealizeCorrectCasting.ts +17 -56
- package/src/orchestrate/realize/orchestrateRealizeWrite.ts +82 -78
- package/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationCorrectApplication.ts +85 -22
- package/src/orchestrate/realize/structures/{IAutoBeRealizeAuthorizationApplication.ts → IAutoBeRealizeAuthorizationWriteApplication.ts} +64 -29
- package/src/orchestrate/realize/structures/IAutoBeRealizeCorrectApplication.ts +58 -5
- package/src/orchestrate/realize/structures/IAutoBeRealizeScenarioResult.ts +6 -19
- package/src/orchestrate/realize/structures/IAutoBeRealizeWriteApplication.ts +58 -6
- package/src/orchestrate/realize/utils/generateRealizeScenario.ts +2 -20
- package/src/orchestrate/test/histories/transformTestCorrectHistories.ts +30 -30
- package/src/orchestrate/test/histories/transformTestCorrectInvalidRequestHistory.ts +40 -0
- package/src/orchestrate/test/histories/transformTestScenarioHistory.ts +116 -0
- package/src/orchestrate/test/histories/transformTestScenarioReviewHistory.ts +85 -0
- package/src/orchestrate/test/histories/transformTestWriteHistory.ts +169 -0
- package/src/orchestrate/test/orchestrateTestCorrect.ts +13 -19
- package/src/orchestrate/test/orchestrateTestCorrectInvalidRequest.ts +5 -12
- package/src/orchestrate/test/orchestrateTestScenario.ts +143 -83
- package/src/orchestrate/test/orchestrateTestScenarioReview.ts +93 -76
- package/src/orchestrate/test/orchestrateTestWrite.ts +7 -7
- package/src/orchestrate/test/structures/IAutoBeTestScenarioApplication.ts +74 -4
- package/src/orchestrate/test/structures/IAutoBeTestScenarioReviewApplication.ts +89 -14
- package/src/structures/IAutoBeOrchestrateHistory.ts +6 -0
- package/src/utils/executeCachedBatch.ts +33 -7
- package/src/utils/validateEmptyCode.ts +2 -2
- package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistories.d.ts +0 -8
- package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistories.js +0 -16
- package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistories.js.map +0 -1
- package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistories.js.map +0 -1
- package/lib/orchestrate/interface/histories/transformInterfaceAssetHistories.d.ts +0 -3
- package/lib/orchestrate/interface/histories/transformInterfaceAssetHistories.js +0 -62
- package/lib/orchestrate/interface/histories/transformInterfaceAssetHistories.js.map +0 -1
- package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.d.ts +0 -8
- package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.js +0 -68
- package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.js.map +0 -1
- package/lib/orchestrate/interface/histories/transformInterfaceCommonHistories.d.ts +0 -3
- package/lib/orchestrate/interface/histories/transformInterfaceCommonHistories.js.map +0 -1
- package/lib/orchestrate/interface/histories/transformInterfaceComplementHistories.d.ts +0 -9
- package/lib/orchestrate/interface/histories/transformInterfaceComplementHistories.js +0 -74
- package/lib/orchestrate/interface/histories/transformInterfaceComplementHistories.js.map +0 -1
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistories.d.ts +0 -10
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistories.js +0 -61
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistories.js.map +0 -1
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.d.ts +0 -4
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.js +0 -34
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.js.map +0 -1
- package/lib/orchestrate/interface/histories/transformInterfaceGroupHistories.d.ts +0 -6
- package/lib/orchestrate/interface/histories/transformInterfaceGroupHistories.js +0 -52
- package/lib/orchestrate/interface/histories/transformInterfaceGroupHistories.js.map +0 -1
- package/lib/orchestrate/interface/histories/transformInterfaceOperationHistories.d.ts +0 -8
- package/lib/orchestrate/interface/histories/transformInterfaceOperationHistories.js +0 -71
- package/lib/orchestrate/interface/histories/transformInterfaceOperationHistories.js.map +0 -1
- package/lib/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.d.ts +0 -5
- package/lib/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.js +0 -36
- package/lib/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.js.map +0 -1
- package/lib/orchestrate/interface/histories/transformInterfacePrerequisitesHistories.d.ts +0 -3
- package/lib/orchestrate/interface/histories/transformInterfacePrerequisitesHistories.js +0 -102
- package/lib/orchestrate/interface/histories/transformInterfacePrerequisitesHistories.js.map +0 -1
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.d.ts +0 -9
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.js +0 -74
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.js.map +0 -1
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.d.ts +0 -5
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.js +0 -51
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.js.map +0 -1
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.d.ts +0 -11
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.js +0 -81
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.js.map +0 -1
- package/lib/orchestrate/interface/orchestrateInterfaceAuthorizations.d.ts +0 -4
- package/lib/orchestrate/interface/orchestrateInterfaceAuthorizations.js.map +0 -1
- package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js +0 -508
- package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js.map +0 -1
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.d.ts +0 -4
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.js +0 -488
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.js.map +0 -1
- package/lib/orchestrate/interface/orchestrateInterfaceGroups.js +0 -458
- package/lib/orchestrate/interface/orchestrateInterfaceGroups.js.map +0 -1
- package/lib/orchestrate/interface/orchestrateInterfaceOperations.js.map +0 -1
- package/lib/orchestrate/interface/orchestrateInterfaceOperationsReview.d.ts +0 -4
- package/lib/orchestrate/interface/orchestrateInterfaceOperationsReview.js.map +0 -1
- package/lib/orchestrate/interface/orchestrateInterfacePrerequisites.js +0 -917
- package/lib/orchestrate/interface/orchestrateInterfacePrerequisites.js.map +0 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemas.js.map +0 -1
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointsReviewApplication.d.ts +0 -60
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointsReviewApplication.js.map +0 -1
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationsReviewApplication.js.map +0 -1
- package/lib/orchestrate/interface/structures/IAutoBeInterfacePrerequisitesApplication.d.ts +0 -52
- package/lib/orchestrate/interface/structures/IAutoBeInterfacePrerequisitesApplication.js.map +0 -1
- package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistories.d.ts +0 -6
- package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistories.js +0 -95
- package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistories.js.map +0 -1
- package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistories.d.ts +0 -3
- package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistories.js +0 -41
- package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistories.js.map +0 -1
- package/lib/orchestrate/prisma/histories/transformPrismaReviewHistories.d.ts +0 -8
- package/lib/orchestrate/prisma/histories/transformPrismaReviewHistories.js +0 -62
- package/lib/orchestrate/prisma/histories/transformPrismaReviewHistories.js.map +0 -1
- package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistories.d.ts +0 -8
- package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistories.js +0 -78
- package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistories.js.map +0 -1
- package/lib/orchestrate/prisma/orchestratePrismaSchemas.js +0 -1678
- package/lib/orchestrate/prisma/orchestratePrismaSchemas.js.map +0 -1
- package/lib/orchestrate/realize/histories/transformRealizeAuthorization.d.ts +0 -5
- package/lib/orchestrate/realize/histories/transformRealizeAuthorization.js +0 -44
- package/lib/orchestrate/realize/histories/transformRealizeAuthorization.js.map +0 -1
- package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.d.ts +0 -5
- package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.js +0 -82
- package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.js.map +0 -1
- package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.d.ts +0 -5
- package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.js.map +0 -1
- package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.d.ts +0 -13
- package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.js +0 -29
- package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.js.map +0 -1
- package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.d.ts +0 -3
- package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.js +0 -23
- package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.js.map +0 -1
- package/lib/orchestrate/realize/orchestrateRealizeAuthorization.js +0 -710
- package/lib/orchestrate/realize/orchestrateRealizeAuthorization.js.map +0 -1
- package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationApplication.js.map +0 -1
- package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.d.ts +0 -4
- package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.js +0 -33
- package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.js.map +0 -1
- package/lib/orchestrate/test/histories/transformTestScenarioHistories.d.ts +0 -10
- package/lib/orchestrate/test/histories/transformTestScenarioHistories.js +0 -101
- package/lib/orchestrate/test/histories/transformTestScenarioHistories.js.map +0 -1
- package/lib/orchestrate/test/histories/transformTestScenarioReviewHistories.d.ts +0 -8
- package/lib/orchestrate/test/histories/transformTestScenarioReviewHistories.js +0 -72
- package/lib/orchestrate/test/histories/transformTestScenarioReviewHistories.js.map +0 -1
- package/lib/orchestrate/test/histories/transformTestWriteHistories.js.map +0 -1
- package/src/orchestrate/common/histories/transformCommonCorrectCastingHistories.ts +0 -25
- package/src/orchestrate/interface/histories/transformInterfaceAssetHistories.ts +0 -72
- package/src/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.ts +0 -75
- package/src/orchestrate/interface/histories/transformInterfaceComplementHistories.ts +0 -82
- package/src/orchestrate/interface/histories/transformInterfaceEndpointHistories.ts +0 -72
- package/src/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.ts +0 -40
- package/src/orchestrate/interface/histories/transformInterfaceOperationHistories.ts +0 -78
- package/src/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.ts +0 -44
- package/src/orchestrate/interface/histories/transformInterfacePrerequisitesHistories.ts +0 -118
- package/src/orchestrate/interface/histories/transformInterfaceSchemaHistories.ts +0 -80
- package/src/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.ts +0 -55
- package/src/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.ts +0 -90
- package/src/orchestrate/interface/orchestrateInterfaceEndpoints.ts +0 -152
- package/src/orchestrate/interface/orchestrateInterfaceEndpointsReview.ts +0 -98
- package/src/orchestrate/interface/orchestrateInterfaceGroups.ts +0 -91
- package/src/orchestrate/interface/orchestrateInterfaceOperationsReview.ts +0 -157
- package/src/orchestrate/interface/structures/IAutoBeInterfaceEndpointsReviewApplication.ts +0 -65
- package/src/orchestrate/interface/structures/IAutoBeInterfacePrerequisitesApplication.ts +0 -58
- package/src/orchestrate/prisma/histories/transformPrismaComponentsHistories.ts +0 -104
- package/src/orchestrate/prisma/histories/transformPrismaReviewHistories.ts +0 -69
- package/src/orchestrate/realize/histories/transformRealizeAuthorization.ts +0 -52
- package/src/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.ts +0 -95
- package/src/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.ts +0 -30
- package/src/orchestrate/realize/histories/transformRealizeCorrectHistories.ts +0 -46
- package/src/orchestrate/realize/orchestrateRealizeAuthorization.ts +0 -185
- package/src/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.ts +0 -39
- package/src/orchestrate/test/histories/transformTestScenarioHistories.ts +0 -125
- package/src/orchestrate/test/histories/transformTestScenarioReviewHistories.ts +0 -89
- package/src/orchestrate/test/histories/transformTestWriteHistories.ts +0 -172
|
@@ -0,0 +1,1356 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
36
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
37
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
38
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
39
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
40
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
41
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
42
|
+
});
|
|
43
|
+
};
|
|
44
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
45
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
46
|
+
};
|
|
47
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
|
+
exports.orchestrateInterfaceEndpoint = orchestrateInterfaceEndpoint;
|
|
49
|
+
const __typia_transform__validateReport = __importStar(require("typia/lib/internal/_validateReport.js"));
|
|
50
|
+
const __typia_transform__llmApplicationFinalize = __importStar(require("typia/lib/internal/_llmApplicationFinalize.js"));
|
|
51
|
+
const utils_1 = require("@autobe/utils");
|
|
52
|
+
const tstl_1 = require("tstl");
|
|
53
|
+
const typia_1 = __importDefault(require("typia"));
|
|
54
|
+
const uuid_1 = require("uuid");
|
|
55
|
+
const assertSchemaModel_1 = require("../../context/assertSchemaModel");
|
|
56
|
+
const executeCachedBatch_1 = require("../../utils/executeCachedBatch");
|
|
57
|
+
const AutoBePreliminaryController_1 = require("../common/AutoBePreliminaryController");
|
|
58
|
+
const transformInterfaceEndpointHistory_1 = require("./histories/transformInterfaceEndpointHistory");
|
|
59
|
+
const orchestrateInterfaceEndpointReview_1 = require("./orchestrateInterfaceEndpointReview");
|
|
60
|
+
function orchestrateInterfaceEndpoint(ctx, props) {
|
|
61
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
62
|
+
const progress = {
|
|
63
|
+
total: props.groups.length,
|
|
64
|
+
completed: 0,
|
|
65
|
+
};
|
|
66
|
+
const endpoints = (yield (0, executeCachedBatch_1.executeCachedBatch)(ctx, props.groups.map((group) => (promptCacheKey) => process(ctx, {
|
|
67
|
+
group,
|
|
68
|
+
authorizations: props.authorizations,
|
|
69
|
+
instruction: props.instruction,
|
|
70
|
+
progress,
|
|
71
|
+
promptCacheKey,
|
|
72
|
+
})))).flat();
|
|
73
|
+
const deduplicated = new tstl_1.HashSet(endpoints, utils_1.AutoBeOpenApiEndpointComparator.hashCode, utils_1.AutoBeOpenApiEndpointComparator.equals).toJSON();
|
|
74
|
+
return yield (0, orchestrateInterfaceEndpointReview_1.orchestrateInterfaceEndpointReview)(ctx, deduplicated);
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
function process(ctx, props) {
|
|
78
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
79
|
+
const start = new Date();
|
|
80
|
+
const prismaSchemas = new Map(ctx
|
|
81
|
+
.state()
|
|
82
|
+
.prisma.result.data.files.map((f) => f.models)
|
|
83
|
+
.flat()
|
|
84
|
+
.map((m) => [m.name, m]));
|
|
85
|
+
const preliminary = new AutoBePreliminaryController_1.AutoBePreliminaryController({
|
|
86
|
+
application: {
|
|
87
|
+
version: "3.1",
|
|
88
|
+
components: {
|
|
89
|
+
schemas: {
|
|
90
|
+
"IAutoBeInterfaceEndpointApplication.IProps": {
|
|
91
|
+
type: "object",
|
|
92
|
+
properties: {
|
|
93
|
+
thinking: {
|
|
94
|
+
type: "string",
|
|
95
|
+
description: "Think before you act.\n\nBefore requesting preliminary data or completing your task, reflect on your\ncurrent state and explain your reasoning:\n\nFor preliminary requests (getAnalysisFiles, getPrismaSchemas, etc.):\n- What critical information is missing that you don't already have?\n- Why do you need it specifically right now?\n- Be brief - state the gap, don't list everything you have.\n\nFor completion (complete):\n- What key assets did you acquire?\n- What did you accomplish?\n- Why is it sufficient to complete?\n- Summarize - don't enumerate every single item.\n\nThis reflection helps you avoid duplicate requests and premature completion."
|
|
96
|
+
},
|
|
97
|
+
request: {
|
|
98
|
+
oneOf: [
|
|
99
|
+
{
|
|
100
|
+
$ref: "#/components/schemas/IAutoBePreliminaryGetAnalysisFiles"
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
$ref: "#/components/schemas/IAutoBePreliminaryGetPrismaSchemas"
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
$ref: "#/components/schemas/IAutoBeInterfaceEndpointApplication.IComplete"
|
|
107
|
+
}
|
|
108
|
+
],
|
|
109
|
+
discriminator: {
|
|
110
|
+
propertyName: "type",
|
|
111
|
+
mapping: {
|
|
112
|
+
getAnalysisFiles: "#/components/schemas/IAutoBePreliminaryGetAnalysisFiles",
|
|
113
|
+
getPrismaSchemas: "#/components/schemas/IAutoBePreliminaryGetPrismaSchemas",
|
|
114
|
+
complete: "#/components/schemas/IAutoBeInterfaceEndpointApplication.IComplete"
|
|
115
|
+
}
|
|
116
|
+
},
|
|
117
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval\n(getAnalysisFiles, getPrismaSchemas) or final endpoint generation\n(complete). When preliminary returns empty array, that type is removed\nfrom the union, physically preventing repeated calls."
|
|
118
|
+
}
|
|
119
|
+
},
|
|
120
|
+
required: [
|
|
121
|
+
"thinking",
|
|
122
|
+
"request"
|
|
123
|
+
]
|
|
124
|
+
},
|
|
125
|
+
IAutoBePreliminaryGetAnalysisFiles: {
|
|
126
|
+
type: "object",
|
|
127
|
+
properties: {
|
|
128
|
+
type: {
|
|
129
|
+
"const": "getAnalysisFiles",
|
|
130
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getAnalysisFiles\" indicates this is a preliminary\ndata request for analysis files."
|
|
131
|
+
},
|
|
132
|
+
fileNames: {
|
|
133
|
+
type: "array",
|
|
134
|
+
items: {
|
|
135
|
+
type: "string"
|
|
136
|
+
},
|
|
137
|
+
minItems: 1,
|
|
138
|
+
description: "List of analysis file names to retrieve.\n\nFile names from the analyze phase containing requirements, use cases, and\nbusiness logic documentation.\n\nCRITICAL: DO NOT request the same file names that you have already\nrequested in previous calls."
|
|
139
|
+
}
|
|
140
|
+
},
|
|
141
|
+
required: [
|
|
142
|
+
"type",
|
|
143
|
+
"fileNames"
|
|
144
|
+
],
|
|
145
|
+
description: "Request to retrieve requirements analysis files for context.\n\nThis type is used in the preliminary phase to request specific analysis files\nthat provide business requirements and domain context."
|
|
146
|
+
},
|
|
147
|
+
IAutoBePreliminaryGetPrismaSchemas: {
|
|
148
|
+
type: "object",
|
|
149
|
+
properties: {
|
|
150
|
+
type: {
|
|
151
|
+
"const": "getPrismaSchemas",
|
|
152
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getPrismaSchemas\" indicates this is a preliminary\ndata request for Prisma schemas."
|
|
153
|
+
},
|
|
154
|
+
schemaNames: {
|
|
155
|
+
type: "array",
|
|
156
|
+
items: {
|
|
157
|
+
type: "string"
|
|
158
|
+
},
|
|
159
|
+
minItems: 1,
|
|
160
|
+
description: "List of Prisma table names to retrieve.\n\nTable names from the Prisma schema file representing database entities\n(e.g., \"user\", \"post\", \"comment\").\n\nCRITICAL: DO NOT request the same schema names that you have already\nrequested in previous calls."
|
|
161
|
+
}
|
|
162
|
+
},
|
|
163
|
+
required: [
|
|
164
|
+
"type",
|
|
165
|
+
"schemaNames"
|
|
166
|
+
],
|
|
167
|
+
description: "Request to retrieve Prisma database schema definitions for context.\n\nThis type is used in the preliminary phase to request specific Prisma table\nschemas needed for generating type-safe API operations."
|
|
168
|
+
},
|
|
169
|
+
"IAutoBeInterfaceEndpointApplication.IComplete": {
|
|
170
|
+
type: "object",
|
|
171
|
+
properties: {
|
|
172
|
+
type: {
|
|
173
|
+
"const": "complete",
|
|
174
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"complete\" indicates this is the final task\nexecution request."
|
|
175
|
+
},
|
|
176
|
+
endpoints: {
|
|
177
|
+
type: "array",
|
|
178
|
+
items: {
|
|
179
|
+
$ref: "#/components/schemas/AutoBeOpenApi.IEndpoint"
|
|
180
|
+
},
|
|
181
|
+
minItems: 1,
|
|
182
|
+
description: "The endpoints to generate."
|
|
183
|
+
}
|
|
184
|
+
},
|
|
185
|
+
required: [
|
|
186
|
+
"type",
|
|
187
|
+
"endpoints"
|
|
188
|
+
],
|
|
189
|
+
description: "Request to create Restful API endpoints.\n\nExecutes endpoint generation to create comprehensive API endpoints covering\nall requirements and entities. Each combination of path and method must be\nunique to avoid duplicates."
|
|
190
|
+
},
|
|
191
|
+
"AutoBeOpenApi.IEndpoint": {
|
|
192
|
+
type: "object",
|
|
193
|
+
properties: {
|
|
194
|
+
path: {
|
|
195
|
+
type: "string",
|
|
196
|
+
pattern: "^\\/[a-zA-Z0-9\\/_{}.-]*$",
|
|
197
|
+
description: "HTTP path of the API operation.\n\nThe URL path for accessing this API operation, using path parameters\nenclosed in curly braces (e.g., `/shoppings/customers/sales/{saleId}`).\n\nIt must be corresponded to the {@link parameters path parameters}.\n\nThe path structure should clearly indicate which database entity this\noperation is manipulating, helping to ensure all entities have\nappropriate API coverage.\n\nPath validation rules:\n\n- Must start with a forward slash (/)\n- Can contain only: letters (a-z, A-Z), numbers (0-9), forward slashes (/),\n curly braces for parameters ({paramName}), hyphens (-), and underscores\n (_)\n- Parameters must be enclosed in curly braces: {paramName}\n- Resource names should be in camelCase\n- No quotes, spaces, or invalid special characters allowed\n- No domain or role-based prefixes\n\nValid examples:\n\n- \"/users\"\n- \"/users/{userId}\"\n- \"/articles/{articleId}/comments\"\n- \"/attachmentFiles\"\n- \"/orders/{orderId}/items/{itemId}\"\n\nInvalid examples:\n\n- \"'/users'\" (contains quotes)\n- \"/user profile\" (contains space)\n- \"/users/[userId]\" (wrong bracket format)\n- \"/admin/users\" (role prefix)\n- \"/api/v1/users\" (API prefix)"
|
|
198
|
+
},
|
|
199
|
+
method: {
|
|
200
|
+
oneOf: [
|
|
201
|
+
{
|
|
202
|
+
"const": "get"
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
"const": "post"
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
"const": "put"
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
"const": "delete"
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
"const": "patch"
|
|
215
|
+
}
|
|
216
|
+
],
|
|
217
|
+
description: "HTTP method of the API operation.\n\n**IMPORTANT**: Methods must be written in lowercase only (e.g., \"get\",\nnot \"GET\").\n\nNote that, if the API operation has {@link requestBody}, method must not\nbe `get`.\n\nAlso, even though the API operation has been designed to only get\ninformation, but it needs complicated request information, it must be\ndefined as `patch` method with {@link requestBody} data specification.\n\n- `get`: get information\n- `patch`: get information with complicated request data\n ({@link requestBody})\n- `post`: create new record\n- `put`: update existing record\n- `delete`: remove record"
|
|
218
|
+
}
|
|
219
|
+
},
|
|
220
|
+
required: [
|
|
221
|
+
"path",
|
|
222
|
+
"method"
|
|
223
|
+
],
|
|
224
|
+
description: "API endpoint information."
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
},
|
|
228
|
+
functions: [
|
|
229
|
+
{
|
|
230
|
+
name: "process",
|
|
231
|
+
async: false,
|
|
232
|
+
parameters: [
|
|
233
|
+
{
|
|
234
|
+
name: "props",
|
|
235
|
+
description: " Request containing either preliminary data request or complete\ntask",
|
|
236
|
+
required: true,
|
|
237
|
+
schema: {
|
|
238
|
+
$ref: "#/components/schemas/IAutoBeInterfaceEndpointApplication.IProps"
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
],
|
|
242
|
+
description: "Process endpoint generation task or preliminary data requests.\n\nCreates Restful API endpoints referencing requirement analysis documents and\nPrisma schema files with ERD descriptions. Ensures endpoints cover all\nrequirements and entities."
|
|
243
|
+
}
|
|
244
|
+
]
|
|
245
|
+
},
|
|
246
|
+
source: SOURCE,
|
|
247
|
+
kinds: ["analysisFiles", "prismaSchemas"],
|
|
248
|
+
state: ctx.state(),
|
|
249
|
+
local: {
|
|
250
|
+
prismaSchemas: props.group.prismaSchemas
|
|
251
|
+
.map((key) => prismaSchemas.get(key))
|
|
252
|
+
.filter((m) => m !== undefined),
|
|
253
|
+
},
|
|
254
|
+
});
|
|
255
|
+
return yield preliminary.orchestrate(ctx, (out) => __awaiter(this, void 0, void 0, function* () {
|
|
256
|
+
var _a, _b;
|
|
257
|
+
const pointer = {
|
|
258
|
+
value: null,
|
|
259
|
+
};
|
|
260
|
+
const result = yield ctx.conversate(Object.assign({ source: SOURCE, controller: createController({
|
|
261
|
+
model: ctx.model,
|
|
262
|
+
build: (endpoints) => {
|
|
263
|
+
var _a;
|
|
264
|
+
(_a = pointer.value) !== null && _a !== void 0 ? _a : (pointer.value = endpoints);
|
|
265
|
+
pointer.value.push(...endpoints);
|
|
266
|
+
},
|
|
267
|
+
preliminary,
|
|
268
|
+
}), enforceFunctionCall: true, promptCacheKey: props.promptCacheKey }, (0, transformInterfaceEndpointHistory_1.transformInterfaceEndpointHistory)({
|
|
269
|
+
state: ctx.state(),
|
|
270
|
+
group: props.group,
|
|
271
|
+
authorizations: props.authorizations,
|
|
272
|
+
instruction: props.instruction,
|
|
273
|
+
preliminary,
|
|
274
|
+
})));
|
|
275
|
+
if (pointer.value !== null) {
|
|
276
|
+
const event = {
|
|
277
|
+
type: SOURCE,
|
|
278
|
+
id: (0, uuid_1.v7)(),
|
|
279
|
+
endpoints: new tstl_1.HashSet(pointer.value, utils_1.AutoBeOpenApiEndpointComparator.hashCode, utils_1.AutoBeOpenApiEndpointComparator.equals).toJSON(),
|
|
280
|
+
metric: result.metric,
|
|
281
|
+
tokenUsage: result.tokenUsage,
|
|
282
|
+
created_at: start.toISOString(),
|
|
283
|
+
step: (_b = (_a = ctx.state().analyze) === null || _a === void 0 ? void 0 : _a.step) !== null && _b !== void 0 ? _b : 0,
|
|
284
|
+
completed: ++props.progress.completed,
|
|
285
|
+
total: props.progress.total,
|
|
286
|
+
};
|
|
287
|
+
ctx.dispatch(event);
|
|
288
|
+
return out(result)(pointer.value);
|
|
289
|
+
}
|
|
290
|
+
return out(result)(null);
|
|
291
|
+
}));
|
|
292
|
+
});
|
|
293
|
+
}
|
|
294
|
+
function createController(props) {
|
|
295
|
+
(0, assertSchemaModel_1.assertSchemaModel)(props.model);
|
|
296
|
+
const validate = (input) => {
|
|
297
|
+
const result = (() => { const _io0 = input => "string" === typeof input.thinking && ("object" === typeof input.request && null !== input.request && _iu0(input.request)); const _io1 = input => "getAnalysisFiles" === input.type && (Array.isArray(input.fileNames) && (1 <= input.fileNames.length && input.fileNames.every(elem => "string" === typeof elem))); const _io2 = input => "getPrismaSchemas" === input.type && (Array.isArray(input.schemaNames) && (1 <= input.schemaNames.length && input.schemaNames.every(elem => "string" === typeof elem))); const _io3 = input => "complete" === input.type && (Array.isArray(input.endpoints) && (1 <= input.endpoints.length && input.endpoints.every(elem => "object" === typeof elem && null !== elem && _io4(elem)))); const _io4 = input => "string" === typeof input.path && RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) && ("get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method); const _iu0 = input => (() => {
|
|
298
|
+
if ("getAnalysisFiles" === input.type)
|
|
299
|
+
return _io1(input);
|
|
300
|
+
else if ("getPrismaSchemas" === input.type)
|
|
301
|
+
return _io2(input);
|
|
302
|
+
else if ("complete" === input.type)
|
|
303
|
+
return _io3(input);
|
|
304
|
+
else
|
|
305
|
+
return false;
|
|
306
|
+
})(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
|
|
307
|
+
path: _path + ".thinking",
|
|
308
|
+
expected: "string",
|
|
309
|
+
value: input.thinking
|
|
310
|
+
}), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
|
|
311
|
+
path: _path + ".request",
|
|
312
|
+
expected: "(IAutoBeInterfaceEndpointApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
|
|
313
|
+
value: input.request
|
|
314
|
+
})) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
|
|
315
|
+
path: _path + ".request",
|
|
316
|
+
expected: "(IAutoBeInterfaceEndpointApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
|
|
317
|
+
value: input.request
|
|
318
|
+
})].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getAnalysisFiles" === input.type || _report(_exceptionable, {
|
|
319
|
+
path: _path + ".type",
|
|
320
|
+
expected: "\"getAnalysisFiles\"",
|
|
321
|
+
value: input.type
|
|
322
|
+
}), (Array.isArray(input.fileNames) || _report(_exceptionable, {
|
|
323
|
+
path: _path + ".fileNames",
|
|
324
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
325
|
+
value: input.fileNames
|
|
326
|
+
})) && ((1 <= input.fileNames.length || _report(_exceptionable, {
|
|
327
|
+
path: _path + ".fileNames",
|
|
328
|
+
expected: "Array<> & MinItems<1>",
|
|
329
|
+
value: input.fileNames
|
|
330
|
+
})) && input.fileNames.map((elem, _index4) => "string" === typeof elem || _report(_exceptionable, {
|
|
331
|
+
path: _path + ".fileNames[" + _index4 + "]",
|
|
332
|
+
expected: "string",
|
|
333
|
+
value: elem
|
|
334
|
+
})).every(flag => flag)) || _report(_exceptionable, {
|
|
335
|
+
path: _path + ".fileNames",
|
|
336
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
337
|
+
value: input.fileNames
|
|
338
|
+
})].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["getPrismaSchemas" === input.type || _report(_exceptionable, {
|
|
339
|
+
path: _path + ".type",
|
|
340
|
+
expected: "\"getPrismaSchemas\"",
|
|
341
|
+
value: input.type
|
|
342
|
+
}), (Array.isArray(input.schemaNames) || _report(_exceptionable, {
|
|
343
|
+
path: _path + ".schemaNames",
|
|
344
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
345
|
+
value: input.schemaNames
|
|
346
|
+
})) && ((1 <= input.schemaNames.length || _report(_exceptionable, {
|
|
347
|
+
path: _path + ".schemaNames",
|
|
348
|
+
expected: "Array<> & MinItems<1>",
|
|
349
|
+
value: input.schemaNames
|
|
350
|
+
})) && input.schemaNames.map((elem, _index5) => "string" === typeof elem || _report(_exceptionable, {
|
|
351
|
+
path: _path + ".schemaNames[" + _index5 + "]",
|
|
352
|
+
expected: "string",
|
|
353
|
+
value: elem
|
|
354
|
+
})).every(flag => flag)) || _report(_exceptionable, {
|
|
355
|
+
path: _path + ".schemaNames",
|
|
356
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
357
|
+
value: input.schemaNames
|
|
358
|
+
})].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
|
|
359
|
+
path: _path + ".type",
|
|
360
|
+
expected: "\"complete\"",
|
|
361
|
+
value: input.type
|
|
362
|
+
}), (Array.isArray(input.endpoints) || _report(_exceptionable, {
|
|
363
|
+
path: _path + ".endpoints",
|
|
364
|
+
expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
|
|
365
|
+
value: input.endpoints
|
|
366
|
+
})) && ((1 <= input.endpoints.length || _report(_exceptionable, {
|
|
367
|
+
path: _path + ".endpoints",
|
|
368
|
+
expected: "Array<> & MinItems<1>",
|
|
369
|
+
value: input.endpoints
|
|
370
|
+
})) && input.endpoints.map((elem, _index6) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
371
|
+
path: _path + ".endpoints[" + _index6 + "]",
|
|
372
|
+
expected: "AutoBeOpenApi.IEndpoint",
|
|
373
|
+
value: elem
|
|
374
|
+
})) && _vo4(elem, _path + ".endpoints[" + _index6 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
375
|
+
path: _path + ".endpoints[" + _index6 + "]",
|
|
376
|
+
expected: "AutoBeOpenApi.IEndpoint",
|
|
377
|
+
value: elem
|
|
378
|
+
})).every(flag => flag)) || _report(_exceptionable, {
|
|
379
|
+
path: _path + ".endpoints",
|
|
380
|
+
expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
|
|
381
|
+
value: input.endpoints
|
|
382
|
+
})].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
|
|
383
|
+
path: _path + ".path",
|
|
384
|
+
expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
|
|
385
|
+
value: input.path
|
|
386
|
+
})) || _report(_exceptionable, {
|
|
387
|
+
path: _path + ".path",
|
|
388
|
+
expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
|
|
389
|
+
value: input.path
|
|
390
|
+
}), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
|
|
391
|
+
path: _path + ".method",
|
|
392
|
+
expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
|
|
393
|
+
value: input.method
|
|
394
|
+
})].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
|
|
395
|
+
if ("getAnalysisFiles" === input.type)
|
|
396
|
+
return _vo1(input, _path, true && _exceptionable);
|
|
397
|
+
else if ("getPrismaSchemas" === input.type)
|
|
398
|
+
return _vo2(input, _path, true && _exceptionable);
|
|
399
|
+
else if ("complete" === input.type)
|
|
400
|
+
return _vo3(input, _path, true && _exceptionable);
|
|
401
|
+
else
|
|
402
|
+
return _report(_exceptionable, {
|
|
403
|
+
path: _path,
|
|
404
|
+
expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas | IAutoBeInterfaceEndpointApplication.IComplete)",
|
|
405
|
+
value: input
|
|
406
|
+
});
|
|
407
|
+
})(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
|
|
408
|
+
if (false === __is(input)) {
|
|
409
|
+
errors = [];
|
|
410
|
+
_report = __typia_transform__validateReport._validateReport(errors);
|
|
411
|
+
((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
|
|
412
|
+
path: _path + "",
|
|
413
|
+
expected: "IAutoBeInterfaceEndpointApplication.IProps",
|
|
414
|
+
value: input
|
|
415
|
+
})) && _vo0(input, _path + "", true) || _report(true, {
|
|
416
|
+
path: _path + "",
|
|
417
|
+
expected: "IAutoBeInterfaceEndpointApplication.IProps",
|
|
418
|
+
value: input
|
|
419
|
+
}))(input, "$input", true);
|
|
420
|
+
const success = 0 === errors.length;
|
|
421
|
+
return success ? {
|
|
422
|
+
success,
|
|
423
|
+
data: input
|
|
424
|
+
} : {
|
|
425
|
+
success,
|
|
426
|
+
errors,
|
|
427
|
+
data: input
|
|
428
|
+
};
|
|
429
|
+
}
|
|
430
|
+
return {
|
|
431
|
+
success: true,
|
|
432
|
+
data: input
|
|
433
|
+
};
|
|
434
|
+
}; })()(input);
|
|
435
|
+
if (result.success === false || result.data.request.type === "complete")
|
|
436
|
+
return result;
|
|
437
|
+
return props.preliminary.validate({
|
|
438
|
+
thinking: result.data.thinking,
|
|
439
|
+
request: result.data.request,
|
|
440
|
+
});
|
|
441
|
+
};
|
|
442
|
+
const application = collection[props.model === "chatgpt"
|
|
443
|
+
? "chatgpt"
|
|
444
|
+
: props.model === "gemini"
|
|
445
|
+
? "gemini"
|
|
446
|
+
: "claude"](validate);
|
|
447
|
+
return {
|
|
448
|
+
protocol: "class",
|
|
449
|
+
name: SOURCE,
|
|
450
|
+
application,
|
|
451
|
+
execute: {
|
|
452
|
+
process: (next) => {
|
|
453
|
+
if (next.request.type === "complete")
|
|
454
|
+
props.build(next.request.endpoints);
|
|
455
|
+
},
|
|
456
|
+
},
|
|
457
|
+
};
|
|
458
|
+
}
|
|
459
|
+
const collection = {
|
|
460
|
+
chatgpt: (validate) => (() => {
|
|
461
|
+
const application = {
|
|
462
|
+
model: "chatgpt",
|
|
463
|
+
options: {
|
|
464
|
+
reference: true,
|
|
465
|
+
strict: false,
|
|
466
|
+
separate: null
|
|
467
|
+
},
|
|
468
|
+
functions: [
|
|
469
|
+
{
|
|
470
|
+
name: "process",
|
|
471
|
+
parameters: {
|
|
472
|
+
description: " Request containing either preliminary data request or complete\ntask\n\n------------------------------\n\nCurrent Type: {@link IAutoBeInterfaceEndpointApplication.IProps}",
|
|
473
|
+
type: "object",
|
|
474
|
+
properties: {
|
|
475
|
+
thinking: {
|
|
476
|
+
description: "Think before you act.\n\nBefore requesting preliminary data or completing your task, reflect on your\ncurrent state and explain your reasoning:\n\nFor preliminary requests (getAnalysisFiles, getPrismaSchemas, etc.):\n- What critical information is missing that you don't already have?\n- Why do you need it specifically right now?\n- Be brief - state the gap, don't list everything you have.\n\nFor completion (complete):\n- What key assets did you acquire?\n- What did you accomplish?\n- Why is it sufficient to complete?\n- Summarize - don't enumerate every single item.\n\nThis reflection helps you avoid duplicate requests and premature completion.",
|
|
477
|
+
type: "string"
|
|
478
|
+
},
|
|
479
|
+
request: {
|
|
480
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval\n(getAnalysisFiles, getPrismaSchemas) or final endpoint generation\n(complete). When preliminary returns empty array, that type is removed\nfrom the union, physically preventing repeated calls.",
|
|
481
|
+
anyOf: [
|
|
482
|
+
{
|
|
483
|
+
$ref: "#/$defs/IAutoBePreliminaryGetAnalysisFiles"
|
|
484
|
+
},
|
|
485
|
+
{
|
|
486
|
+
$ref: "#/$defs/IAutoBePreliminaryGetPrismaSchemas"
|
|
487
|
+
},
|
|
488
|
+
{
|
|
489
|
+
$ref: "#/$defs/IAutoBeInterfaceEndpointApplication.IComplete"
|
|
490
|
+
}
|
|
491
|
+
],
|
|
492
|
+
"x-discriminator": {
|
|
493
|
+
propertyName: "type",
|
|
494
|
+
mapping: {
|
|
495
|
+
getAnalysisFiles: "#/$defs/IAutoBePreliminaryGetAnalysisFiles",
|
|
496
|
+
getPrismaSchemas: "#/$defs/IAutoBePreliminaryGetPrismaSchemas",
|
|
497
|
+
complete: "#/$defs/IAutoBeInterfaceEndpointApplication.IComplete"
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
}
|
|
501
|
+
},
|
|
502
|
+
required: [
|
|
503
|
+
"thinking",
|
|
504
|
+
"request"
|
|
505
|
+
],
|
|
506
|
+
additionalProperties: false,
|
|
507
|
+
$defs: {
|
|
508
|
+
IAutoBePreliminaryGetAnalysisFiles: {
|
|
509
|
+
description: "Request to retrieve requirements analysis files for context.\n\nThis type is used in the preliminary phase to request specific analysis files\nthat provide business requirements and domain context.",
|
|
510
|
+
type: "object",
|
|
511
|
+
properties: {
|
|
512
|
+
type: {
|
|
513
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getAnalysisFiles\" indicates this is a preliminary\ndata request for analysis files.",
|
|
514
|
+
type: "string",
|
|
515
|
+
"enum": [
|
|
516
|
+
"getAnalysisFiles"
|
|
517
|
+
]
|
|
518
|
+
},
|
|
519
|
+
fileNames: {
|
|
520
|
+
description: "List of analysis file names to retrieve.\n\nFile names from the analyze phase containing requirements, use cases, and\nbusiness logic documentation.\n\nCRITICAL: DO NOT request the same file names that you have already\nrequested in previous calls.\n\n\n@minItems 1",
|
|
521
|
+
type: "array",
|
|
522
|
+
items: {
|
|
523
|
+
type: "string"
|
|
524
|
+
}
|
|
525
|
+
}
|
|
526
|
+
},
|
|
527
|
+
required: [
|
|
528
|
+
"type",
|
|
529
|
+
"fileNames"
|
|
530
|
+
]
|
|
531
|
+
},
|
|
532
|
+
IAutoBePreliminaryGetPrismaSchemas: {
|
|
533
|
+
description: "Request to retrieve Prisma database schema definitions for context.\n\nThis type is used in the preliminary phase to request specific Prisma table\nschemas needed for generating type-safe API operations.",
|
|
534
|
+
type: "object",
|
|
535
|
+
properties: {
|
|
536
|
+
type: {
|
|
537
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getPrismaSchemas\" indicates this is a preliminary\ndata request for Prisma schemas.",
|
|
538
|
+
type: "string",
|
|
539
|
+
"enum": [
|
|
540
|
+
"getPrismaSchemas"
|
|
541
|
+
]
|
|
542
|
+
},
|
|
543
|
+
schemaNames: {
|
|
544
|
+
description: "List of Prisma table names to retrieve.\n\nTable names from the Prisma schema file representing database entities\n(e.g., \"user\", \"post\", \"comment\").\n\nCRITICAL: DO NOT request the same schema names that you have already\nrequested in previous calls.\n\n\n@minItems 1",
|
|
545
|
+
type: "array",
|
|
546
|
+
items: {
|
|
547
|
+
type: "string"
|
|
548
|
+
}
|
|
549
|
+
}
|
|
550
|
+
},
|
|
551
|
+
required: [
|
|
552
|
+
"type",
|
|
553
|
+
"schemaNames"
|
|
554
|
+
]
|
|
555
|
+
},
|
|
556
|
+
"IAutoBeInterfaceEndpointApplication.IComplete": {
|
|
557
|
+
description: "Request to create Restful API endpoints.\n\nExecutes endpoint generation to create comprehensive API endpoints covering\nall requirements and entities. Each combination of path and method must be\nunique to avoid duplicates.",
|
|
558
|
+
type: "object",
|
|
559
|
+
properties: {
|
|
560
|
+
type: {
|
|
561
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"complete\" indicates this is the final task\nexecution request.",
|
|
562
|
+
type: "string",
|
|
563
|
+
"enum": [
|
|
564
|
+
"complete"
|
|
565
|
+
]
|
|
566
|
+
},
|
|
567
|
+
endpoints: {
|
|
568
|
+
description: "The endpoints to generate.\n\n\n@minItems 1",
|
|
569
|
+
type: "array",
|
|
570
|
+
items: {
|
|
571
|
+
$ref: "#/$defs/AutoBeOpenApi.IEndpoint"
|
|
572
|
+
}
|
|
573
|
+
}
|
|
574
|
+
},
|
|
575
|
+
required: [
|
|
576
|
+
"type",
|
|
577
|
+
"endpoints"
|
|
578
|
+
]
|
|
579
|
+
},
|
|
580
|
+
"AutoBeOpenApi.IEndpoint": {
|
|
581
|
+
description: "API endpoint information.",
|
|
582
|
+
type: "object",
|
|
583
|
+
properties: {
|
|
584
|
+
path: {
|
|
585
|
+
description: "HTTP path of the API operation.\n\nThe URL path for accessing this API operation, using path parameters\nenclosed in curly braces (e.g., `/shoppings/customers/sales/{saleId}`).\n\nIt must be corresponded to the {@link parameters path parameters}.\n\nThe path structure should clearly indicate which database entity this\noperation is manipulating, helping to ensure all entities have\nappropriate API coverage.\n\nPath validation rules:\n\n- Must start with a forward slash (/)\n- Can contain only: letters (a-z, A-Z), numbers (0-9), forward slashes (/),\n curly braces for parameters ({paramName}), hyphens (-), and underscores\n (_)\n- Parameters must be enclosed in curly braces: {paramName}\n- Resource names should be in camelCase\n- No quotes, spaces, or invalid special characters allowed\n- No domain or role-based prefixes\n\nValid examples:\n\n- \"/users\"\n- \"/users/{userId}\"\n- \"/articles/{articleId}/comments\"\n- \"/attachmentFiles\"\n- \"/orders/{orderId}/items/{itemId}\"\n\nInvalid examples:\n\n- \"'/users'\" (contains quotes)\n- \"/user profile\" (contains space)\n- \"/users/[userId]\" (wrong bracket format)\n- \"/admin/users\" (role prefix)\n- \"/api/v1/users\" (API prefix)\n\n\n@pattern ^\\/[a-zA-Z0-9\\/_{}.-]*$",
|
|
586
|
+
type: "string"
|
|
587
|
+
},
|
|
588
|
+
method: {
|
|
589
|
+
description: "HTTP method of the API operation.\n\n**IMPORTANT**: Methods must be written in lowercase only (e.g., \"get\",\nnot \"GET\").\n\nNote that, if the API operation has {@link requestBody}, method must not\nbe `get`.\n\nAlso, even though the API operation has been designed to only get\ninformation, but it needs complicated request information, it must be\ndefined as `patch` method with {@link requestBody} data specification.\n\n- `get`: get information\n- `patch`: get information with complicated request data\n ({@link requestBody})\n- `post`: create new record\n- `put`: update existing record\n- `delete`: remove record",
|
|
590
|
+
type: "string",
|
|
591
|
+
"enum": [
|
|
592
|
+
"get",
|
|
593
|
+
"post",
|
|
594
|
+
"put",
|
|
595
|
+
"delete",
|
|
596
|
+
"patch"
|
|
597
|
+
]
|
|
598
|
+
}
|
|
599
|
+
},
|
|
600
|
+
required: [
|
|
601
|
+
"path",
|
|
602
|
+
"method"
|
|
603
|
+
]
|
|
604
|
+
}
|
|
605
|
+
}
|
|
606
|
+
},
|
|
607
|
+
description: "Process endpoint generation task or preliminary data requests.\n\nCreates Restful API endpoints referencing requirement analysis documents and\nPrisma schema files with ERD descriptions. Ensures endpoints cover all\nrequirements and entities.",
|
|
608
|
+
validate: (() => { const _io0 = input => "string" === typeof input.thinking && ("object" === typeof input.request && null !== input.request && _iu0(input.request)); const _io1 = input => "getAnalysisFiles" === input.type && (Array.isArray(input.fileNames) && (1 <= input.fileNames.length && input.fileNames.every(elem => "string" === typeof elem))); const _io2 = input => "getPrismaSchemas" === input.type && (Array.isArray(input.schemaNames) && (1 <= input.schemaNames.length && input.schemaNames.every(elem => "string" === typeof elem))); const _io3 = input => "complete" === input.type && (Array.isArray(input.endpoints) && (1 <= input.endpoints.length && input.endpoints.every(elem => "object" === typeof elem && null !== elem && _io4(elem)))); const _io4 = input => "string" === typeof input.path && RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) && ("get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method); const _iu0 = input => (() => {
|
|
609
|
+
if ("getAnalysisFiles" === input.type)
|
|
610
|
+
return _io1(input);
|
|
611
|
+
else if ("getPrismaSchemas" === input.type)
|
|
612
|
+
return _io2(input);
|
|
613
|
+
else if ("complete" === input.type)
|
|
614
|
+
return _io3(input);
|
|
615
|
+
else
|
|
616
|
+
return false;
|
|
617
|
+
})(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
|
|
618
|
+
path: _path + ".thinking",
|
|
619
|
+
expected: "string",
|
|
620
|
+
value: input.thinking
|
|
621
|
+
}), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
|
|
622
|
+
path: _path + ".request",
|
|
623
|
+
expected: "(IAutoBeInterfaceEndpointApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
|
|
624
|
+
value: input.request
|
|
625
|
+
})) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
|
|
626
|
+
path: _path + ".request",
|
|
627
|
+
expected: "(IAutoBeInterfaceEndpointApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
|
|
628
|
+
value: input.request
|
|
629
|
+
})].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getAnalysisFiles" === input.type || _report(_exceptionable, {
|
|
630
|
+
path: _path + ".type",
|
|
631
|
+
expected: "\"getAnalysisFiles\"",
|
|
632
|
+
value: input.type
|
|
633
|
+
}), (Array.isArray(input.fileNames) || _report(_exceptionable, {
|
|
634
|
+
path: _path + ".fileNames",
|
|
635
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
636
|
+
value: input.fileNames
|
|
637
|
+
})) && ((1 <= input.fileNames.length || _report(_exceptionable, {
|
|
638
|
+
path: _path + ".fileNames",
|
|
639
|
+
expected: "Array<> & MinItems<1>",
|
|
640
|
+
value: input.fileNames
|
|
641
|
+
})) && input.fileNames.map((elem, _index4) => "string" === typeof elem || _report(_exceptionable, {
|
|
642
|
+
path: _path + ".fileNames[" + _index4 + "]",
|
|
643
|
+
expected: "string",
|
|
644
|
+
value: elem
|
|
645
|
+
})).every(flag => flag)) || _report(_exceptionable, {
|
|
646
|
+
path: _path + ".fileNames",
|
|
647
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
648
|
+
value: input.fileNames
|
|
649
|
+
})].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["getPrismaSchemas" === input.type || _report(_exceptionable, {
|
|
650
|
+
path: _path + ".type",
|
|
651
|
+
expected: "\"getPrismaSchemas\"",
|
|
652
|
+
value: input.type
|
|
653
|
+
}), (Array.isArray(input.schemaNames) || _report(_exceptionable, {
|
|
654
|
+
path: _path + ".schemaNames",
|
|
655
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
656
|
+
value: input.schemaNames
|
|
657
|
+
})) && ((1 <= input.schemaNames.length || _report(_exceptionable, {
|
|
658
|
+
path: _path + ".schemaNames",
|
|
659
|
+
expected: "Array<> & MinItems<1>",
|
|
660
|
+
value: input.schemaNames
|
|
661
|
+
})) && input.schemaNames.map((elem, _index5) => "string" === typeof elem || _report(_exceptionable, {
|
|
662
|
+
path: _path + ".schemaNames[" + _index5 + "]",
|
|
663
|
+
expected: "string",
|
|
664
|
+
value: elem
|
|
665
|
+
})).every(flag => flag)) || _report(_exceptionable, {
|
|
666
|
+
path: _path + ".schemaNames",
|
|
667
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
668
|
+
value: input.schemaNames
|
|
669
|
+
})].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
|
|
670
|
+
path: _path + ".type",
|
|
671
|
+
expected: "\"complete\"",
|
|
672
|
+
value: input.type
|
|
673
|
+
}), (Array.isArray(input.endpoints) || _report(_exceptionable, {
|
|
674
|
+
path: _path + ".endpoints",
|
|
675
|
+
expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
|
|
676
|
+
value: input.endpoints
|
|
677
|
+
})) && ((1 <= input.endpoints.length || _report(_exceptionable, {
|
|
678
|
+
path: _path + ".endpoints",
|
|
679
|
+
expected: "Array<> & MinItems<1>",
|
|
680
|
+
value: input.endpoints
|
|
681
|
+
})) && input.endpoints.map((elem, _index6) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
682
|
+
path: _path + ".endpoints[" + _index6 + "]",
|
|
683
|
+
expected: "AutoBeOpenApi.IEndpoint",
|
|
684
|
+
value: elem
|
|
685
|
+
})) && _vo4(elem, _path + ".endpoints[" + _index6 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
686
|
+
path: _path + ".endpoints[" + _index6 + "]",
|
|
687
|
+
expected: "AutoBeOpenApi.IEndpoint",
|
|
688
|
+
value: elem
|
|
689
|
+
})).every(flag => flag)) || _report(_exceptionable, {
|
|
690
|
+
path: _path + ".endpoints",
|
|
691
|
+
expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
|
|
692
|
+
value: input.endpoints
|
|
693
|
+
})].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
|
|
694
|
+
path: _path + ".path",
|
|
695
|
+
expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
|
|
696
|
+
value: input.path
|
|
697
|
+
})) || _report(_exceptionable, {
|
|
698
|
+
path: _path + ".path",
|
|
699
|
+
expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
|
|
700
|
+
value: input.path
|
|
701
|
+
}), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
|
|
702
|
+
path: _path + ".method",
|
|
703
|
+
expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
|
|
704
|
+
value: input.method
|
|
705
|
+
})].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
|
|
706
|
+
if ("getAnalysisFiles" === input.type)
|
|
707
|
+
return _vo1(input, _path, true && _exceptionable);
|
|
708
|
+
else if ("getPrismaSchemas" === input.type)
|
|
709
|
+
return _vo2(input, _path, true && _exceptionable);
|
|
710
|
+
else if ("complete" === input.type)
|
|
711
|
+
return _vo3(input, _path, true && _exceptionable);
|
|
712
|
+
else
|
|
713
|
+
return _report(_exceptionable, {
|
|
714
|
+
path: _path,
|
|
715
|
+
expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas | IAutoBeInterfaceEndpointApplication.IComplete)",
|
|
716
|
+
value: input
|
|
717
|
+
});
|
|
718
|
+
})(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
|
|
719
|
+
if (false === __is(input)) {
|
|
720
|
+
errors = [];
|
|
721
|
+
_report = __typia_transform__validateReport._validateReport(errors);
|
|
722
|
+
((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
|
|
723
|
+
path: _path + "",
|
|
724
|
+
expected: "IAutoBeInterfaceEndpointApplication.IProps",
|
|
725
|
+
value: input
|
|
726
|
+
})) && _vo0(input, _path + "", true) || _report(true, {
|
|
727
|
+
path: _path + "",
|
|
728
|
+
expected: "IAutoBeInterfaceEndpointApplication.IProps",
|
|
729
|
+
value: input
|
|
730
|
+
}))(input, "$input", true);
|
|
731
|
+
const success = 0 === errors.length;
|
|
732
|
+
return success ? {
|
|
733
|
+
success,
|
|
734
|
+
data: input
|
|
735
|
+
} : {
|
|
736
|
+
success,
|
|
737
|
+
errors,
|
|
738
|
+
data: input
|
|
739
|
+
};
|
|
740
|
+
}
|
|
741
|
+
return {
|
|
742
|
+
success: true,
|
|
743
|
+
data: input
|
|
744
|
+
};
|
|
745
|
+
}; })()
|
|
746
|
+
}
|
|
747
|
+
]
|
|
748
|
+
};
|
|
749
|
+
__typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
|
|
750
|
+
validate: {
|
|
751
|
+
process: validate,
|
|
752
|
+
},
|
|
753
|
+
}), { equals: false }));
|
|
754
|
+
return application;
|
|
755
|
+
})(),
|
|
756
|
+
claude: (validate) => (() => {
|
|
757
|
+
const application = {
|
|
758
|
+
model: "claude",
|
|
759
|
+
options: {
|
|
760
|
+
reference: true,
|
|
761
|
+
separate: null
|
|
762
|
+
},
|
|
763
|
+
functions: [
|
|
764
|
+
{
|
|
765
|
+
name: "process",
|
|
766
|
+
parameters: {
|
|
767
|
+
description: " Request containing either preliminary data request or complete\ntask\n\n------------------------------\n\nCurrent Type: {@link IAutoBeInterfaceEndpointApplication.IProps}",
|
|
768
|
+
type: "object",
|
|
769
|
+
properties: {
|
|
770
|
+
thinking: {
|
|
771
|
+
description: "Think before you act.\n\nBefore requesting preliminary data or completing your task, reflect on your\ncurrent state and explain your reasoning:\n\nFor preliminary requests (getAnalysisFiles, getPrismaSchemas, etc.):\n- What critical information is missing that you don't already have?\n- Why do you need it specifically right now?\n- Be brief - state the gap, don't list everything you have.\n\nFor completion (complete):\n- What key assets did you acquire?\n- What did you accomplish?\n- Why is it sufficient to complete?\n- Summarize - don't enumerate every single item.\n\nThis reflection helps you avoid duplicate requests and premature completion.",
|
|
772
|
+
type: "string"
|
|
773
|
+
},
|
|
774
|
+
request: {
|
|
775
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval\n(getAnalysisFiles, getPrismaSchemas) or final endpoint generation\n(complete). When preliminary returns empty array, that type is removed\nfrom the union, physically preventing repeated calls.",
|
|
776
|
+
oneOf: [
|
|
777
|
+
{
|
|
778
|
+
$ref: "#/$defs/IAutoBePreliminaryGetAnalysisFiles"
|
|
779
|
+
},
|
|
780
|
+
{
|
|
781
|
+
$ref: "#/$defs/IAutoBePreliminaryGetPrismaSchemas"
|
|
782
|
+
},
|
|
783
|
+
{
|
|
784
|
+
$ref: "#/$defs/IAutoBeInterfaceEndpointApplication.IComplete"
|
|
785
|
+
}
|
|
786
|
+
],
|
|
787
|
+
discriminator: {
|
|
788
|
+
propertyName: "type",
|
|
789
|
+
mapping: {
|
|
790
|
+
getAnalysisFiles: "#/$defs/IAutoBePreliminaryGetAnalysisFiles",
|
|
791
|
+
getPrismaSchemas: "#/$defs/IAutoBePreliminaryGetPrismaSchemas",
|
|
792
|
+
complete: "#/$defs/IAutoBeInterfaceEndpointApplication.IComplete"
|
|
793
|
+
}
|
|
794
|
+
}
|
|
795
|
+
}
|
|
796
|
+
},
|
|
797
|
+
required: [
|
|
798
|
+
"thinking",
|
|
799
|
+
"request"
|
|
800
|
+
],
|
|
801
|
+
additionalProperties: false,
|
|
802
|
+
$defs: {
|
|
803
|
+
IAutoBePreliminaryGetAnalysisFiles: {
|
|
804
|
+
description: "Request to retrieve requirements analysis files for context.\n\nThis type is used in the preliminary phase to request specific analysis files\nthat provide business requirements and domain context.",
|
|
805
|
+
type: "object",
|
|
806
|
+
properties: {
|
|
807
|
+
type: {
|
|
808
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getAnalysisFiles\" indicates this is a preliminary\ndata request for analysis files.",
|
|
809
|
+
"const": "getAnalysisFiles"
|
|
810
|
+
},
|
|
811
|
+
fileNames: {
|
|
812
|
+
description: "List of analysis file names to retrieve.\n\nFile names from the analyze phase containing requirements, use cases, and\nbusiness logic documentation.\n\nCRITICAL: DO NOT request the same file names that you have already\nrequested in previous calls.",
|
|
813
|
+
type: "array",
|
|
814
|
+
items: {
|
|
815
|
+
type: "string"
|
|
816
|
+
},
|
|
817
|
+
minItems: 1
|
|
818
|
+
}
|
|
819
|
+
},
|
|
820
|
+
required: [
|
|
821
|
+
"type",
|
|
822
|
+
"fileNames"
|
|
823
|
+
]
|
|
824
|
+
},
|
|
825
|
+
IAutoBePreliminaryGetPrismaSchemas: {
|
|
826
|
+
description: "Request to retrieve Prisma database schema definitions for context.\n\nThis type is used in the preliminary phase to request specific Prisma table\nschemas needed for generating type-safe API operations.",
|
|
827
|
+
type: "object",
|
|
828
|
+
properties: {
|
|
829
|
+
type: {
|
|
830
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getPrismaSchemas\" indicates this is a preliminary\ndata request for Prisma schemas.",
|
|
831
|
+
"const": "getPrismaSchemas"
|
|
832
|
+
},
|
|
833
|
+
schemaNames: {
|
|
834
|
+
description: "List of Prisma table names to retrieve.\n\nTable names from the Prisma schema file representing database entities\n(e.g., \"user\", \"post\", \"comment\").\n\nCRITICAL: DO NOT request the same schema names that you have already\nrequested in previous calls.",
|
|
835
|
+
type: "array",
|
|
836
|
+
items: {
|
|
837
|
+
type: "string"
|
|
838
|
+
},
|
|
839
|
+
minItems: 1
|
|
840
|
+
}
|
|
841
|
+
},
|
|
842
|
+
required: [
|
|
843
|
+
"type",
|
|
844
|
+
"schemaNames"
|
|
845
|
+
]
|
|
846
|
+
},
|
|
847
|
+
"IAutoBeInterfaceEndpointApplication.IComplete": {
|
|
848
|
+
description: "Request to create Restful API endpoints.\n\nExecutes endpoint generation to create comprehensive API endpoints covering\nall requirements and entities. Each combination of path and method must be\nunique to avoid duplicates.",
|
|
849
|
+
type: "object",
|
|
850
|
+
properties: {
|
|
851
|
+
type: {
|
|
852
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"complete\" indicates this is the final task\nexecution request.",
|
|
853
|
+
"const": "complete"
|
|
854
|
+
},
|
|
855
|
+
endpoints: {
|
|
856
|
+
description: "The endpoints to generate.",
|
|
857
|
+
type: "array",
|
|
858
|
+
items: {
|
|
859
|
+
$ref: "#/$defs/AutoBeOpenApi.IEndpoint"
|
|
860
|
+
},
|
|
861
|
+
minItems: 1
|
|
862
|
+
}
|
|
863
|
+
},
|
|
864
|
+
required: [
|
|
865
|
+
"type",
|
|
866
|
+
"endpoints"
|
|
867
|
+
]
|
|
868
|
+
},
|
|
869
|
+
"AutoBeOpenApi.IEndpoint": {
|
|
870
|
+
description: "API endpoint information.",
|
|
871
|
+
type: "object",
|
|
872
|
+
properties: {
|
|
873
|
+
path: {
|
|
874
|
+
description: "HTTP path of the API operation.\n\nThe URL path for accessing this API operation, using path parameters\nenclosed in curly braces (e.g., `/shoppings/customers/sales/{saleId}`).\n\nIt must be corresponded to the {@link parameters path parameters}.\n\nThe path structure should clearly indicate which database entity this\noperation is manipulating, helping to ensure all entities have\nappropriate API coverage.\n\nPath validation rules:\n\n- Must start with a forward slash (/)\n- Can contain only: letters (a-z, A-Z), numbers (0-9), forward slashes (/),\n curly braces for parameters ({paramName}), hyphens (-), and underscores\n (_)\n- Parameters must be enclosed in curly braces: {paramName}\n- Resource names should be in camelCase\n- No quotes, spaces, or invalid special characters allowed\n- No domain or role-based prefixes\n\nValid examples:\n\n- \"/users\"\n- \"/users/{userId}\"\n- \"/articles/{articleId}/comments\"\n- \"/attachmentFiles\"\n- \"/orders/{orderId}/items/{itemId}\"\n\nInvalid examples:\n\n- \"'/users'\" (contains quotes)\n- \"/user profile\" (contains space)\n- \"/users/[userId]\" (wrong bracket format)\n- \"/admin/users\" (role prefix)\n- \"/api/v1/users\" (API prefix)",
|
|
875
|
+
type: "string",
|
|
876
|
+
pattern: "^\\/[a-zA-Z0-9\\/_{}.-]*$"
|
|
877
|
+
},
|
|
878
|
+
method: {
|
|
879
|
+
description: "HTTP method of the API operation.\n\n**IMPORTANT**: Methods must be written in lowercase only (e.g., \"get\",\nnot \"GET\").\n\nNote that, if the API operation has {@link requestBody}, method must not\nbe `get`.\n\nAlso, even though the API operation has been designed to only get\ninformation, but it needs complicated request information, it must be\ndefined as `patch` method with {@link requestBody} data specification.\n\n- `get`: get information\n- `patch`: get information with complicated request data\n ({@link requestBody})\n- `post`: create new record\n- `put`: update existing record\n- `delete`: remove record",
|
|
880
|
+
oneOf: [
|
|
881
|
+
{
|
|
882
|
+
"const": "get"
|
|
883
|
+
},
|
|
884
|
+
{
|
|
885
|
+
"const": "post"
|
|
886
|
+
},
|
|
887
|
+
{
|
|
888
|
+
"const": "put"
|
|
889
|
+
},
|
|
890
|
+
{
|
|
891
|
+
"const": "delete"
|
|
892
|
+
},
|
|
893
|
+
{
|
|
894
|
+
"const": "patch"
|
|
895
|
+
}
|
|
896
|
+
]
|
|
897
|
+
}
|
|
898
|
+
},
|
|
899
|
+
required: [
|
|
900
|
+
"path",
|
|
901
|
+
"method"
|
|
902
|
+
]
|
|
903
|
+
}
|
|
904
|
+
}
|
|
905
|
+
},
|
|
906
|
+
description: "Process endpoint generation task or preliminary data requests.\n\nCreates Restful API endpoints referencing requirement analysis documents and\nPrisma schema files with ERD descriptions. Ensures endpoints cover all\nrequirements and entities.",
|
|
907
|
+
validate: (() => { const _io0 = input => "string" === typeof input.thinking && ("object" === typeof input.request && null !== input.request && _iu0(input.request)); const _io1 = input => "getAnalysisFiles" === input.type && (Array.isArray(input.fileNames) && (1 <= input.fileNames.length && input.fileNames.every(elem => "string" === typeof elem))); const _io2 = input => "getPrismaSchemas" === input.type && (Array.isArray(input.schemaNames) && (1 <= input.schemaNames.length && input.schemaNames.every(elem => "string" === typeof elem))); const _io3 = input => "complete" === input.type && (Array.isArray(input.endpoints) && (1 <= input.endpoints.length && input.endpoints.every(elem => "object" === typeof elem && null !== elem && _io4(elem)))); const _io4 = input => "string" === typeof input.path && RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) && ("get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method); const _iu0 = input => (() => {
|
|
908
|
+
if ("getAnalysisFiles" === input.type)
|
|
909
|
+
return _io1(input);
|
|
910
|
+
else if ("getPrismaSchemas" === input.type)
|
|
911
|
+
return _io2(input);
|
|
912
|
+
else if ("complete" === input.type)
|
|
913
|
+
return _io3(input);
|
|
914
|
+
else
|
|
915
|
+
return false;
|
|
916
|
+
})(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
|
|
917
|
+
path: _path + ".thinking",
|
|
918
|
+
expected: "string",
|
|
919
|
+
value: input.thinking
|
|
920
|
+
}), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
|
|
921
|
+
path: _path + ".request",
|
|
922
|
+
expected: "(IAutoBeInterfaceEndpointApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
|
|
923
|
+
value: input.request
|
|
924
|
+
})) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
|
|
925
|
+
path: _path + ".request",
|
|
926
|
+
expected: "(IAutoBeInterfaceEndpointApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
|
|
927
|
+
value: input.request
|
|
928
|
+
})].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getAnalysisFiles" === input.type || _report(_exceptionable, {
|
|
929
|
+
path: _path + ".type",
|
|
930
|
+
expected: "\"getAnalysisFiles\"",
|
|
931
|
+
value: input.type
|
|
932
|
+
}), (Array.isArray(input.fileNames) || _report(_exceptionable, {
|
|
933
|
+
path: _path + ".fileNames",
|
|
934
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
935
|
+
value: input.fileNames
|
|
936
|
+
})) && ((1 <= input.fileNames.length || _report(_exceptionable, {
|
|
937
|
+
path: _path + ".fileNames",
|
|
938
|
+
expected: "Array<> & MinItems<1>",
|
|
939
|
+
value: input.fileNames
|
|
940
|
+
})) && input.fileNames.map((elem, _index4) => "string" === typeof elem || _report(_exceptionable, {
|
|
941
|
+
path: _path + ".fileNames[" + _index4 + "]",
|
|
942
|
+
expected: "string",
|
|
943
|
+
value: elem
|
|
944
|
+
})).every(flag => flag)) || _report(_exceptionable, {
|
|
945
|
+
path: _path + ".fileNames",
|
|
946
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
947
|
+
value: input.fileNames
|
|
948
|
+
})].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["getPrismaSchemas" === input.type || _report(_exceptionable, {
|
|
949
|
+
path: _path + ".type",
|
|
950
|
+
expected: "\"getPrismaSchemas\"",
|
|
951
|
+
value: input.type
|
|
952
|
+
}), (Array.isArray(input.schemaNames) || _report(_exceptionable, {
|
|
953
|
+
path: _path + ".schemaNames",
|
|
954
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
955
|
+
value: input.schemaNames
|
|
956
|
+
})) && ((1 <= input.schemaNames.length || _report(_exceptionable, {
|
|
957
|
+
path: _path + ".schemaNames",
|
|
958
|
+
expected: "Array<> & MinItems<1>",
|
|
959
|
+
value: input.schemaNames
|
|
960
|
+
})) && input.schemaNames.map((elem, _index5) => "string" === typeof elem || _report(_exceptionable, {
|
|
961
|
+
path: _path + ".schemaNames[" + _index5 + "]",
|
|
962
|
+
expected: "string",
|
|
963
|
+
value: elem
|
|
964
|
+
})).every(flag => flag)) || _report(_exceptionable, {
|
|
965
|
+
path: _path + ".schemaNames",
|
|
966
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
967
|
+
value: input.schemaNames
|
|
968
|
+
})].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
|
|
969
|
+
path: _path + ".type",
|
|
970
|
+
expected: "\"complete\"",
|
|
971
|
+
value: input.type
|
|
972
|
+
}), (Array.isArray(input.endpoints) || _report(_exceptionable, {
|
|
973
|
+
path: _path + ".endpoints",
|
|
974
|
+
expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
|
|
975
|
+
value: input.endpoints
|
|
976
|
+
})) && ((1 <= input.endpoints.length || _report(_exceptionable, {
|
|
977
|
+
path: _path + ".endpoints",
|
|
978
|
+
expected: "Array<> & MinItems<1>",
|
|
979
|
+
value: input.endpoints
|
|
980
|
+
})) && input.endpoints.map((elem, _index6) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
981
|
+
path: _path + ".endpoints[" + _index6 + "]",
|
|
982
|
+
expected: "AutoBeOpenApi.IEndpoint",
|
|
983
|
+
value: elem
|
|
984
|
+
})) && _vo4(elem, _path + ".endpoints[" + _index6 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
985
|
+
path: _path + ".endpoints[" + _index6 + "]",
|
|
986
|
+
expected: "AutoBeOpenApi.IEndpoint",
|
|
987
|
+
value: elem
|
|
988
|
+
})).every(flag => flag)) || _report(_exceptionable, {
|
|
989
|
+
path: _path + ".endpoints",
|
|
990
|
+
expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
|
|
991
|
+
value: input.endpoints
|
|
992
|
+
})].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
|
|
993
|
+
path: _path + ".path",
|
|
994
|
+
expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
|
|
995
|
+
value: input.path
|
|
996
|
+
})) || _report(_exceptionable, {
|
|
997
|
+
path: _path + ".path",
|
|
998
|
+
expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
|
|
999
|
+
value: input.path
|
|
1000
|
+
}), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
|
|
1001
|
+
path: _path + ".method",
|
|
1002
|
+
expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
|
|
1003
|
+
value: input.method
|
|
1004
|
+
})].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
|
|
1005
|
+
if ("getAnalysisFiles" === input.type)
|
|
1006
|
+
return _vo1(input, _path, true && _exceptionable);
|
|
1007
|
+
else if ("getPrismaSchemas" === input.type)
|
|
1008
|
+
return _vo2(input, _path, true && _exceptionable);
|
|
1009
|
+
else if ("complete" === input.type)
|
|
1010
|
+
return _vo3(input, _path, true && _exceptionable);
|
|
1011
|
+
else
|
|
1012
|
+
return _report(_exceptionable, {
|
|
1013
|
+
path: _path,
|
|
1014
|
+
expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas | IAutoBeInterfaceEndpointApplication.IComplete)",
|
|
1015
|
+
value: input
|
|
1016
|
+
});
|
|
1017
|
+
})(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
|
|
1018
|
+
if (false === __is(input)) {
|
|
1019
|
+
errors = [];
|
|
1020
|
+
_report = __typia_transform__validateReport._validateReport(errors);
|
|
1021
|
+
((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
|
|
1022
|
+
path: _path + "",
|
|
1023
|
+
expected: "IAutoBeInterfaceEndpointApplication.IProps",
|
|
1024
|
+
value: input
|
|
1025
|
+
})) && _vo0(input, _path + "", true) || _report(true, {
|
|
1026
|
+
path: _path + "",
|
|
1027
|
+
expected: "IAutoBeInterfaceEndpointApplication.IProps",
|
|
1028
|
+
value: input
|
|
1029
|
+
}))(input, "$input", true);
|
|
1030
|
+
const success = 0 === errors.length;
|
|
1031
|
+
return success ? {
|
|
1032
|
+
success,
|
|
1033
|
+
data: input
|
|
1034
|
+
} : {
|
|
1035
|
+
success,
|
|
1036
|
+
errors,
|
|
1037
|
+
data: input
|
|
1038
|
+
};
|
|
1039
|
+
}
|
|
1040
|
+
return {
|
|
1041
|
+
success: true,
|
|
1042
|
+
data: input
|
|
1043
|
+
};
|
|
1044
|
+
}; })()
|
|
1045
|
+
}
|
|
1046
|
+
]
|
|
1047
|
+
};
|
|
1048
|
+
__typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
|
|
1049
|
+
validate: {
|
|
1050
|
+
process: validate,
|
|
1051
|
+
},
|
|
1052
|
+
}), { equals: false }));
|
|
1053
|
+
return application;
|
|
1054
|
+
})(),
|
|
1055
|
+
gemini: (validate) => (() => {
|
|
1056
|
+
const application = {
|
|
1057
|
+
model: "gemini",
|
|
1058
|
+
options: {
|
|
1059
|
+
reference: true,
|
|
1060
|
+
separate: null
|
|
1061
|
+
},
|
|
1062
|
+
functions: [
|
|
1063
|
+
{
|
|
1064
|
+
name: "process",
|
|
1065
|
+
parameters: {
|
|
1066
|
+
description: " Request containing either preliminary data request or complete\ntask\n\n------------------------------\n\nCurrent Type: {@link IAutoBeInterfaceEndpointApplication.IProps}",
|
|
1067
|
+
type: "object",
|
|
1068
|
+
properties: {
|
|
1069
|
+
thinking: {
|
|
1070
|
+
description: "Think before you act.\n\nBefore requesting preliminary data or completing your task, reflect on your\ncurrent state and explain your reasoning:\n\nFor preliminary requests (getAnalysisFiles, getPrismaSchemas, etc.):\n- What critical information is missing that you don't already have?\n- Why do you need it specifically right now?\n- Be brief - state the gap, don't list everything you have.\n\nFor completion (complete):\n- What key assets did you acquire?\n- What did you accomplish?\n- Why is it sufficient to complete?\n- Summarize - don't enumerate every single item.\n\nThis reflection helps you avoid duplicate requests and premature completion.",
|
|
1071
|
+
type: "string"
|
|
1072
|
+
},
|
|
1073
|
+
request: {
|
|
1074
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval\n(getAnalysisFiles, getPrismaSchemas) or final endpoint generation\n(complete). When preliminary returns empty array, that type is removed\nfrom the union, physically preventing repeated calls.",
|
|
1075
|
+
anyOf: [
|
|
1076
|
+
{
|
|
1077
|
+
$ref: "#/$defs/IAutoBePreliminaryGetAnalysisFiles"
|
|
1078
|
+
},
|
|
1079
|
+
{
|
|
1080
|
+
$ref: "#/$defs/IAutoBePreliminaryGetPrismaSchemas"
|
|
1081
|
+
},
|
|
1082
|
+
{
|
|
1083
|
+
$ref: "#/$defs/IAutoBeInterfaceEndpointApplication.IComplete"
|
|
1084
|
+
}
|
|
1085
|
+
],
|
|
1086
|
+
"x-discriminator": {
|
|
1087
|
+
propertyName: "type",
|
|
1088
|
+
mapping: {
|
|
1089
|
+
getAnalysisFiles: "#/$defs/IAutoBePreliminaryGetAnalysisFiles",
|
|
1090
|
+
getPrismaSchemas: "#/$defs/IAutoBePreliminaryGetPrismaSchemas",
|
|
1091
|
+
complete: "#/$defs/IAutoBeInterfaceEndpointApplication.IComplete"
|
|
1092
|
+
}
|
|
1093
|
+
}
|
|
1094
|
+
}
|
|
1095
|
+
},
|
|
1096
|
+
required: [
|
|
1097
|
+
"thinking",
|
|
1098
|
+
"request"
|
|
1099
|
+
],
|
|
1100
|
+
additionalProperties: false,
|
|
1101
|
+
$defs: {
|
|
1102
|
+
IAutoBePreliminaryGetAnalysisFiles: {
|
|
1103
|
+
description: "Request to retrieve requirements analysis files for context.\n\nThis type is used in the preliminary phase to request specific analysis files\nthat provide business requirements and domain context.",
|
|
1104
|
+
type: "object",
|
|
1105
|
+
properties: {
|
|
1106
|
+
type: {
|
|
1107
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getAnalysisFiles\" indicates this is a preliminary\ndata request for analysis files.",
|
|
1108
|
+
type: "string",
|
|
1109
|
+
"enum": [
|
|
1110
|
+
"getAnalysisFiles"
|
|
1111
|
+
]
|
|
1112
|
+
},
|
|
1113
|
+
fileNames: {
|
|
1114
|
+
description: "List of analysis file names to retrieve.\n\nFile names from the analyze phase containing requirements, use cases, and\nbusiness logic documentation.\n\nCRITICAL: DO NOT request the same file names that you have already\nrequested in previous calls.",
|
|
1115
|
+
type: "array",
|
|
1116
|
+
items: {
|
|
1117
|
+
type: "string"
|
|
1118
|
+
},
|
|
1119
|
+
minItems: 1
|
|
1120
|
+
}
|
|
1121
|
+
},
|
|
1122
|
+
required: [
|
|
1123
|
+
"type",
|
|
1124
|
+
"fileNames"
|
|
1125
|
+
]
|
|
1126
|
+
},
|
|
1127
|
+
IAutoBePreliminaryGetPrismaSchemas: {
|
|
1128
|
+
description: "Request to retrieve Prisma database schema definitions for context.\n\nThis type is used in the preliminary phase to request specific Prisma table\nschemas needed for generating type-safe API operations.",
|
|
1129
|
+
type: "object",
|
|
1130
|
+
properties: {
|
|
1131
|
+
type: {
|
|
1132
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getPrismaSchemas\" indicates this is a preliminary\ndata request for Prisma schemas.",
|
|
1133
|
+
type: "string",
|
|
1134
|
+
"enum": [
|
|
1135
|
+
"getPrismaSchemas"
|
|
1136
|
+
]
|
|
1137
|
+
},
|
|
1138
|
+
schemaNames: {
|
|
1139
|
+
description: "List of Prisma table names to retrieve.\n\nTable names from the Prisma schema file representing database entities\n(e.g., \"user\", \"post\", \"comment\").\n\nCRITICAL: DO NOT request the same schema names that you have already\nrequested in previous calls.",
|
|
1140
|
+
type: "array",
|
|
1141
|
+
items: {
|
|
1142
|
+
type: "string"
|
|
1143
|
+
},
|
|
1144
|
+
minItems: 1
|
|
1145
|
+
}
|
|
1146
|
+
},
|
|
1147
|
+
required: [
|
|
1148
|
+
"type",
|
|
1149
|
+
"schemaNames"
|
|
1150
|
+
]
|
|
1151
|
+
},
|
|
1152
|
+
"IAutoBeInterfaceEndpointApplication.IComplete": {
|
|
1153
|
+
description: "Request to create Restful API endpoints.\n\nExecutes endpoint generation to create comprehensive API endpoints covering\nall requirements and entities. Each combination of path and method must be\nunique to avoid duplicates.",
|
|
1154
|
+
type: "object",
|
|
1155
|
+
properties: {
|
|
1156
|
+
type: {
|
|
1157
|
+
description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"complete\" indicates this is the final task\nexecution request.",
|
|
1158
|
+
type: "string",
|
|
1159
|
+
"enum": [
|
|
1160
|
+
"complete"
|
|
1161
|
+
]
|
|
1162
|
+
},
|
|
1163
|
+
endpoints: {
|
|
1164
|
+
description: "The endpoints to generate.",
|
|
1165
|
+
type: "array",
|
|
1166
|
+
items: {
|
|
1167
|
+
$ref: "#/$defs/AutoBeOpenApi.IEndpoint"
|
|
1168
|
+
},
|
|
1169
|
+
minItems: 1
|
|
1170
|
+
}
|
|
1171
|
+
},
|
|
1172
|
+
required: [
|
|
1173
|
+
"type",
|
|
1174
|
+
"endpoints"
|
|
1175
|
+
]
|
|
1176
|
+
},
|
|
1177
|
+
"AutoBeOpenApi.IEndpoint": {
|
|
1178
|
+
description: "API endpoint information.",
|
|
1179
|
+
type: "object",
|
|
1180
|
+
properties: {
|
|
1181
|
+
path: {
|
|
1182
|
+
description: "HTTP path of the API operation.\n\nThe URL path for accessing this API operation, using path parameters\nenclosed in curly braces (e.g., `/shoppings/customers/sales/{saleId}`).\n\nIt must be corresponded to the {@link parameters path parameters}.\n\nThe path structure should clearly indicate which database entity this\noperation is manipulating, helping to ensure all entities have\nappropriate API coverage.\n\nPath validation rules:\n\n- Must start with a forward slash (/)\n- Can contain only: letters (a-z, A-Z), numbers (0-9), forward slashes (/),\n curly braces for parameters ({paramName}), hyphens (-), and underscores\n (_)\n- Parameters must be enclosed in curly braces: {paramName}\n- Resource names should be in camelCase\n- No quotes, spaces, or invalid special characters allowed\n- No domain or role-based prefixes\n\nValid examples:\n\n- \"/users\"\n- \"/users/{userId}\"\n- \"/articles/{articleId}/comments\"\n- \"/attachmentFiles\"\n- \"/orders/{orderId}/items/{itemId}\"\n\nInvalid examples:\n\n- \"'/users'\" (contains quotes)\n- \"/user profile\" (contains space)\n- \"/users/[userId]\" (wrong bracket format)\n- \"/admin/users\" (role prefix)\n- \"/api/v1/users\" (API prefix)",
|
|
1183
|
+
type: "string",
|
|
1184
|
+
pattern: "^\\/[a-zA-Z0-9\\/_{}.-]*$"
|
|
1185
|
+
},
|
|
1186
|
+
method: {
|
|
1187
|
+
description: "HTTP method of the API operation.\n\n**IMPORTANT**: Methods must be written in lowercase only (e.g., \"get\",\nnot \"GET\").\n\nNote that, if the API operation has {@link requestBody}, method must not\nbe `get`.\n\nAlso, even though the API operation has been designed to only get\ninformation, but it needs complicated request information, it must be\ndefined as `patch` method with {@link requestBody} data specification.\n\n- `get`: get information\n- `patch`: get information with complicated request data\n ({@link requestBody})\n- `post`: create new record\n- `put`: update existing record\n- `delete`: remove record",
|
|
1188
|
+
type: "string",
|
|
1189
|
+
"enum": [
|
|
1190
|
+
"get",
|
|
1191
|
+
"post",
|
|
1192
|
+
"put",
|
|
1193
|
+
"delete",
|
|
1194
|
+
"patch"
|
|
1195
|
+
]
|
|
1196
|
+
}
|
|
1197
|
+
},
|
|
1198
|
+
required: [
|
|
1199
|
+
"path",
|
|
1200
|
+
"method"
|
|
1201
|
+
]
|
|
1202
|
+
}
|
|
1203
|
+
}
|
|
1204
|
+
},
|
|
1205
|
+
description: "Process endpoint generation task or preliminary data requests.\n\nCreates Restful API endpoints referencing requirement analysis documents and\nPrisma schema files with ERD descriptions. Ensures endpoints cover all\nrequirements and entities.",
|
|
1206
|
+
validate: (() => { const _io0 = input => "string" === typeof input.thinking && ("object" === typeof input.request && null !== input.request && _iu0(input.request)); const _io1 = input => "getAnalysisFiles" === input.type && (Array.isArray(input.fileNames) && (1 <= input.fileNames.length && input.fileNames.every(elem => "string" === typeof elem))); const _io2 = input => "getPrismaSchemas" === input.type && (Array.isArray(input.schemaNames) && (1 <= input.schemaNames.length && input.schemaNames.every(elem => "string" === typeof elem))); const _io3 = input => "complete" === input.type && (Array.isArray(input.endpoints) && (1 <= input.endpoints.length && input.endpoints.every(elem => "object" === typeof elem && null !== elem && _io4(elem)))); const _io4 = input => "string" === typeof input.path && RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) && ("get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method); const _iu0 = input => (() => {
|
|
1207
|
+
if ("getAnalysisFiles" === input.type)
|
|
1208
|
+
return _io1(input);
|
|
1209
|
+
else if ("getPrismaSchemas" === input.type)
|
|
1210
|
+
return _io2(input);
|
|
1211
|
+
else if ("complete" === input.type)
|
|
1212
|
+
return _io3(input);
|
|
1213
|
+
else
|
|
1214
|
+
return false;
|
|
1215
|
+
})(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
|
|
1216
|
+
path: _path + ".thinking",
|
|
1217
|
+
expected: "string",
|
|
1218
|
+
value: input.thinking
|
|
1219
|
+
}), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
|
|
1220
|
+
path: _path + ".request",
|
|
1221
|
+
expected: "(IAutoBeInterfaceEndpointApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
|
|
1222
|
+
value: input.request
|
|
1223
|
+
})) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
|
|
1224
|
+
path: _path + ".request",
|
|
1225
|
+
expected: "(IAutoBeInterfaceEndpointApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
|
|
1226
|
+
value: input.request
|
|
1227
|
+
})].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getAnalysisFiles" === input.type || _report(_exceptionable, {
|
|
1228
|
+
path: _path + ".type",
|
|
1229
|
+
expected: "\"getAnalysisFiles\"",
|
|
1230
|
+
value: input.type
|
|
1231
|
+
}), (Array.isArray(input.fileNames) || _report(_exceptionable, {
|
|
1232
|
+
path: _path + ".fileNames",
|
|
1233
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
1234
|
+
value: input.fileNames
|
|
1235
|
+
})) && ((1 <= input.fileNames.length || _report(_exceptionable, {
|
|
1236
|
+
path: _path + ".fileNames",
|
|
1237
|
+
expected: "Array<> & MinItems<1>",
|
|
1238
|
+
value: input.fileNames
|
|
1239
|
+
})) && input.fileNames.map((elem, _index4) => "string" === typeof elem || _report(_exceptionable, {
|
|
1240
|
+
path: _path + ".fileNames[" + _index4 + "]",
|
|
1241
|
+
expected: "string",
|
|
1242
|
+
value: elem
|
|
1243
|
+
})).every(flag => flag)) || _report(_exceptionable, {
|
|
1244
|
+
path: _path + ".fileNames",
|
|
1245
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
1246
|
+
value: input.fileNames
|
|
1247
|
+
})].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["getPrismaSchemas" === input.type || _report(_exceptionable, {
|
|
1248
|
+
path: _path + ".type",
|
|
1249
|
+
expected: "\"getPrismaSchemas\"",
|
|
1250
|
+
value: input.type
|
|
1251
|
+
}), (Array.isArray(input.schemaNames) || _report(_exceptionable, {
|
|
1252
|
+
path: _path + ".schemaNames",
|
|
1253
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
1254
|
+
value: input.schemaNames
|
|
1255
|
+
})) && ((1 <= input.schemaNames.length || _report(_exceptionable, {
|
|
1256
|
+
path: _path + ".schemaNames",
|
|
1257
|
+
expected: "Array<> & MinItems<1>",
|
|
1258
|
+
value: input.schemaNames
|
|
1259
|
+
})) && input.schemaNames.map((elem, _index5) => "string" === typeof elem || _report(_exceptionable, {
|
|
1260
|
+
path: _path + ".schemaNames[" + _index5 + "]",
|
|
1261
|
+
expected: "string",
|
|
1262
|
+
value: elem
|
|
1263
|
+
})).every(flag => flag)) || _report(_exceptionable, {
|
|
1264
|
+
path: _path + ".schemaNames",
|
|
1265
|
+
expected: "(Array<string> & MinItems<1>)",
|
|
1266
|
+
value: input.schemaNames
|
|
1267
|
+
})].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
|
|
1268
|
+
path: _path + ".type",
|
|
1269
|
+
expected: "\"complete\"",
|
|
1270
|
+
value: input.type
|
|
1271
|
+
}), (Array.isArray(input.endpoints) || _report(_exceptionable, {
|
|
1272
|
+
path: _path + ".endpoints",
|
|
1273
|
+
expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
|
|
1274
|
+
value: input.endpoints
|
|
1275
|
+
})) && ((1 <= input.endpoints.length || _report(_exceptionable, {
|
|
1276
|
+
path: _path + ".endpoints",
|
|
1277
|
+
expected: "Array<> & MinItems<1>",
|
|
1278
|
+
value: input.endpoints
|
|
1279
|
+
})) && input.endpoints.map((elem, _index6) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
1280
|
+
path: _path + ".endpoints[" + _index6 + "]",
|
|
1281
|
+
expected: "AutoBeOpenApi.IEndpoint",
|
|
1282
|
+
value: elem
|
|
1283
|
+
})) && _vo4(elem, _path + ".endpoints[" + _index6 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
1284
|
+
path: _path + ".endpoints[" + _index6 + "]",
|
|
1285
|
+
expected: "AutoBeOpenApi.IEndpoint",
|
|
1286
|
+
value: elem
|
|
1287
|
+
})).every(flag => flag)) || _report(_exceptionable, {
|
|
1288
|
+
path: _path + ".endpoints",
|
|
1289
|
+
expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
|
|
1290
|
+
value: input.endpoints
|
|
1291
|
+
})].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
|
|
1292
|
+
path: _path + ".path",
|
|
1293
|
+
expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
|
|
1294
|
+
value: input.path
|
|
1295
|
+
})) || _report(_exceptionable, {
|
|
1296
|
+
path: _path + ".path",
|
|
1297
|
+
expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
|
|
1298
|
+
value: input.path
|
|
1299
|
+
}), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
|
|
1300
|
+
path: _path + ".method",
|
|
1301
|
+
expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
|
|
1302
|
+
value: input.method
|
|
1303
|
+
})].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
|
|
1304
|
+
if ("getAnalysisFiles" === input.type)
|
|
1305
|
+
return _vo1(input, _path, true && _exceptionable);
|
|
1306
|
+
else if ("getPrismaSchemas" === input.type)
|
|
1307
|
+
return _vo2(input, _path, true && _exceptionable);
|
|
1308
|
+
else if ("complete" === input.type)
|
|
1309
|
+
return _vo3(input, _path, true && _exceptionable);
|
|
1310
|
+
else
|
|
1311
|
+
return _report(_exceptionable, {
|
|
1312
|
+
path: _path,
|
|
1313
|
+
expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas | IAutoBeInterfaceEndpointApplication.IComplete)",
|
|
1314
|
+
value: input
|
|
1315
|
+
});
|
|
1316
|
+
})(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
|
|
1317
|
+
if (false === __is(input)) {
|
|
1318
|
+
errors = [];
|
|
1319
|
+
_report = __typia_transform__validateReport._validateReport(errors);
|
|
1320
|
+
((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
|
|
1321
|
+
path: _path + "",
|
|
1322
|
+
expected: "IAutoBeInterfaceEndpointApplication.IProps",
|
|
1323
|
+
value: input
|
|
1324
|
+
})) && _vo0(input, _path + "", true) || _report(true, {
|
|
1325
|
+
path: _path + "",
|
|
1326
|
+
expected: "IAutoBeInterfaceEndpointApplication.IProps",
|
|
1327
|
+
value: input
|
|
1328
|
+
}))(input, "$input", true);
|
|
1329
|
+
const success = 0 === errors.length;
|
|
1330
|
+
return success ? {
|
|
1331
|
+
success,
|
|
1332
|
+
data: input
|
|
1333
|
+
} : {
|
|
1334
|
+
success,
|
|
1335
|
+
errors,
|
|
1336
|
+
data: input
|
|
1337
|
+
};
|
|
1338
|
+
}
|
|
1339
|
+
return {
|
|
1340
|
+
success: true,
|
|
1341
|
+
data: input
|
|
1342
|
+
};
|
|
1343
|
+
}; })()
|
|
1344
|
+
}
|
|
1345
|
+
]
|
|
1346
|
+
};
|
|
1347
|
+
__typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
|
|
1348
|
+
validate: {
|
|
1349
|
+
process: validate,
|
|
1350
|
+
},
|
|
1351
|
+
}), { equals: false }));
|
|
1352
|
+
return application;
|
|
1353
|
+
})(),
|
|
1354
|
+
};
|
|
1355
|
+
const SOURCE = "interfaceEndpoint";
|
|
1356
|
+
//# sourceMappingURL=orchestrateInterfaceEndpoint.js.map
|