@codeyam/codeyam-cli 0.1.0-staging.1 → 0.1.0-staging.da5baf5
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/analyzer-template/.build-info.json +7 -7
- package/analyzer-template/log.txt +3 -3
- package/analyzer-template/package.json +5 -5
- package/analyzer-template/packages/ai/index.ts +2 -1
- package/analyzer-template/packages/ai/package.json +2 -2
- package/analyzer-template/packages/ai/scripts/ai-test-matrix.mjs +424 -0
- package/analyzer-template/packages/ai/src/lib/analyzeScope.ts +24 -0
- package/analyzer-template/packages/ai/src/lib/astScopes/astScopeAnalyzer.ts +6 -16
- package/analyzer-template/packages/ai/src/lib/astScopes/methodSemantics.ts +197 -0
- package/analyzer-template/packages/ai/src/lib/astScopes/paths.ts +28 -2
- package/analyzer-template/packages/ai/src/lib/astScopes/processExpression.ts +127 -4
- package/analyzer-template/packages/ai/src/lib/checkAllAttributes.ts +1 -3
- package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +1821 -542
- package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/FunctionCallManager.ts +138 -0
- package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.ts +1 -1
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.ts +139 -0
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/DebugTracer.ts +224 -0
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/PathManager.ts +203 -0
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/README.md +294 -0
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.ts +161 -0
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/VisitedTracker.ts +235 -0
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.ts +14 -6
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/selectBestValue.ts +70 -0
- package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/uniqueIdUtils.ts +113 -0
- package/analyzer-template/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.ts +36 -0
- package/analyzer-template/packages/ai/src/lib/generateChangesEntityDocumentation.ts +20 -2
- package/analyzer-template/packages/ai/src/lib/generateChangesEntityKeyAttributes.ts +51 -107
- package/analyzer-template/packages/ai/src/lib/generateChangesEntityScenarioData.ts +56 -160
- package/analyzer-template/packages/ai/src/lib/generateChangesEntityScenarios.ts +79 -265
- package/analyzer-template/packages/ai/src/lib/generateEntityDocumentation.ts +16 -2
- package/analyzer-template/packages/ai/src/lib/generateEntityKeyAttributes.ts +53 -176
- package/analyzer-template/packages/ai/src/lib/generateEntityScenarioData.ts +53 -154
- package/analyzer-template/packages/ai/src/lib/generateEntityScenarios.ts +84 -254
- package/analyzer-template/packages/ai/src/lib/generateStatementAnalysis.ts +48 -71
- package/analyzer-template/packages/ai/src/lib/getConditionalUsagesFromCode.ts +27 -6
- package/analyzer-template/packages/ai/src/lib/getLLMCallStats.ts +0 -14
- package/analyzer-template/packages/ai/src/lib/modelInfo.ts +15 -0
- package/analyzer-template/packages/ai/src/lib/promptGenerators/gatherAttributesMap.ts +42 -4
- package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityDocumentationGenerator.ts +8 -33
- package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.ts +54 -62
- package/analyzer-template/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.ts +93 -109
- package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityDocumentationGenerator.ts +8 -27
- package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.ts +33 -38
- package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.ts +30 -30
- package/analyzer-template/packages/ai/src/lib/types/index.ts +2 -0
- package/analyzer-template/packages/ai/src/lib/worker/SerializableDataStructure.ts +39 -0
- package/analyzer-template/packages/analyze/src/lib/FileAnalyzer.ts +52 -6
- package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.ts +238 -0
- package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getDeclaredEntityNode.ts +25 -0
- package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/index.ts +2 -0
- package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +8 -10
- package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +6 -1
- package/analyzer-template/packages/analyze/src/lib/files/analyzeChange.ts +34 -15
- package/analyzer-template/packages/analyze/src/lib/files/analyzeEntity.ts +17 -3
- package/analyzer-template/packages/analyze/src/lib/files/analyzeInitial.ts +35 -16
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +7 -1
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.ts +9 -1
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarioData.ts +6 -1
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateScenarios.ts +9 -1
- package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +15 -7
- package/analyzer-template/packages/aws/package.json +2 -2
- package/analyzer-template/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.ts +28 -21
- package/analyzer-template/packages/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.ts +18 -11
- package/analyzer-template/packages/generate/src/lib/scenarioComponent.ts +6 -3
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js +28 -21
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js.map +1 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.js +18 -11
- package/analyzer-template/packages/github/dist/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.js.map +1 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponent.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponent.js +5 -3
- package/analyzer-template/packages/github/dist/generate/src/lib/scenarioComponent.js.map +1 -1
- package/analyzer-template/packages/github/dist/utils/index.d.ts +2 -0
- package/analyzer-template/packages/github/dist/utils/index.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/utils/index.js +2 -0
- package/analyzer-template/packages/github/dist/utils/index.js.map +1 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.d.ts +25 -0
- package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.d.ts.map +1 -0
- package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.js +40 -0
- package/analyzer-template/packages/github/dist/utils/src/lib/Semaphore.js.map +1 -0
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getNextRoutePath.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getNextRoutePath.js +5 -3
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getNextRoutePath.js.map +1 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getRemixRoutePath.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getRemixRoutePath.js +2 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/getRemixRoutePath.js.map +1 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js +2 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js.map +1 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.d.ts.map +1 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js +1 -0
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js.map +1 -1
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts +12 -0
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts.map +1 -0
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js +32 -0
- package/analyzer-template/packages/github/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js.map +1 -0
- package/analyzer-template/packages/ui-components/src/scenario-editor/components/DataItemEditor.tsx +1 -1
- package/analyzer-template/packages/utils/dist/utils/index.d.ts +2 -0
- package/analyzer-template/packages/utils/dist/utils/index.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/index.js +2 -0
- package/analyzer-template/packages/utils/dist/utils/index.js.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.d.ts +25 -0
- package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.d.ts.map +1 -0
- package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.js +40 -0
- package/analyzer-template/packages/utils/dist/utils/src/lib/Semaphore.js.map +1 -0
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getNextRoutePath.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getNextRoutePath.js +5 -3
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getNextRoutePath.js.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getRemixRoutePath.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getRemixRoutePath.js +2 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/getRemixRoutePath.js.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js +2 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/nextRouteFileNameToRoute.js.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.d.ts.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js +1 -0
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/remixRouteFileNameToRoute.js.map +1 -1
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts +12 -0
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.d.ts.map +1 -0
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js +32 -0
- package/analyzer-template/packages/utils/dist/utils/src/lib/frameworks/sanitizeNextRouteSegments.js.map +1 -0
- package/analyzer-template/packages/utils/index.ts +2 -0
- package/analyzer-template/packages/utils/src/lib/Semaphore.ts +42 -0
- package/analyzer-template/packages/utils/src/lib/frameworks/getNextRoutePath.ts +8 -3
- package/analyzer-template/packages/utils/src/lib/frameworks/getRemixRoutePath.ts +2 -1
- package/analyzer-template/packages/utils/src/lib/frameworks/nextRouteFileNameToRoute.ts +2 -1
- package/analyzer-template/packages/utils/src/lib/frameworks/remixRouteFileNameToRoute.ts +1 -0
- package/analyzer-template/packages/utils/src/lib/frameworks/sanitizeNextRouteSegments.ts +33 -0
- package/analyzer-template/project/constructMockCode.ts +170 -6
- package/analyzer-template/project/reconcileMockDataKeys.ts +13 -0
- package/analyzer-template/project/startScenarioCapture.ts +24 -0
- package/analyzer-template/project/trackGeneratedFiles.ts +41 -0
- package/analyzer-template/project/writeMockDataTsx.ts +125 -4
- package/analyzer-template/project/writeScenarioComponents.ts +175 -45
- package/analyzer-template/project/writeUniversalMocks.ts +72 -10
- package/background/src/lib/virtualized/project/constructMockCode.js +158 -7
- package/background/src/lib/virtualized/project/constructMockCode.js.map +1 -1
- package/background/src/lib/virtualized/project/reconcileMockDataKeys.js +12 -0
- package/background/src/lib/virtualized/project/reconcileMockDataKeys.js.map +1 -1
- package/background/src/lib/virtualized/project/startScenarioCapture.js +18 -0
- package/background/src/lib/virtualized/project/startScenarioCapture.js.map +1 -1
- package/background/src/lib/virtualized/project/trackGeneratedFiles.js +30 -0
- package/background/src/lib/virtualized/project/trackGeneratedFiles.js.map +1 -0
- package/background/src/lib/virtualized/project/writeMockDataTsx.js +95 -3
- package/background/src/lib/virtualized/project/writeMockDataTsx.js.map +1 -1
- package/background/src/lib/virtualized/project/writeScenarioComponents.js +130 -28
- package/background/src/lib/virtualized/project/writeScenarioComponents.js.map +1 -1
- package/background/src/lib/virtualized/project/writeUniversalMocks.js +59 -9
- package/background/src/lib/virtualized/project/writeUniversalMocks.js.map +1 -1
- package/codeyam-cli/scripts/apply-setup.js +288 -0
- package/codeyam-cli/scripts/apply-setup.js.map +1 -0
- package/codeyam-cli/scripts/extract-setup.js +130 -0
- package/codeyam-cli/scripts/extract-setup.js.map +1 -0
- package/codeyam-cli/scripts/fixtures/cal.com/universal-mocks/packages/prisma/index.js +238 -0
- package/codeyam-cli/scripts/fixtures/cal.com/universal-mocks/packages/prisma/index.js.map +1 -0
- package/codeyam-cli/src/cli.js +4 -0
- package/codeyam-cli/src/cli.js.map +1 -1
- package/codeyam-cli/src/codeyam-cli.js +0 -0
- package/codeyam-cli/src/commands/debug.js +190 -0
- package/codeyam-cli/src/commands/debug.js.map +1 -0
- package/codeyam-cli/src/commands/init.js +4 -23
- package/codeyam-cli/src/commands/init.js.map +1 -1
- package/codeyam-cli/src/commands/setup-sandbox.js +164 -0
- package/codeyam-cli/src/commands/setup-sandbox.js.map +1 -0
- package/codeyam-cli/src/utils/__tests__/cleanupAnalysisFiles.test.js +6 -6
- package/codeyam-cli/src/utils/__tests__/cleanupAnalysisFiles.test.js.map +1 -1
- package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js +8 -0
- package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js.map +1 -1
- package/codeyam-cli/src/utils/analysisRunner.js +4 -3
- package/codeyam-cli/src/utils/analysisRunner.js.map +1 -1
- package/codeyam-cli/src/utils/backgroundServer.js +25 -5
- package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
- package/codeyam-cli/src/utils/cleanupAnalysisFiles.js +2 -2
- package/codeyam-cli/src/utils/cleanupAnalysisFiles.js.map +1 -1
- package/codeyam-cli/src/utils/fileWatcher.js +75 -5
- package/codeyam-cli/src/utils/fileWatcher.js.map +1 -1
- package/codeyam-cli/src/utils/queue/job.js +3 -2
- package/codeyam-cli/src/utils/queue/job.js.map +1 -1
- package/codeyam-cli/src/utils/setupClaudeCodeSettings.js +4 -0
- package/codeyam-cli/src/utils/setupClaudeCodeSettings.js.map +1 -1
- package/codeyam-cli/src/utils/webappDetection.js +2 -1
- package/codeyam-cli/src/utils/webappDetection.js.map +1 -1
- package/codeyam-cli/src/webserver/app/lib/database.js +63 -2
- package/codeyam-cli/src/webserver/app/lib/database.js.map +1 -1
- package/codeyam-cli/src/webserver/backgroundServer.js +15 -35
- package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
- package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-BFRmw1TF.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{InteractivePreview-Dh-FldQK.js → InteractivePreview-CRfBaL5B.js} +3 -3
- package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-BYVx9KFp.js +3 -0
- package/codeyam-cli/src/webserver/build/client/assets/{LogViewer-Dp6DC845.js → LogViewer-CRcT5fOZ.js} +1 -1
- package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-Bual6h18.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/ScenarioPreview-Dj4Mm0AR.js +6 -0
- package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-wtCIkGzq.js +5 -0
- package/codeyam-cli/src/webserver/build/client/assets/_index-Cjdlwanz.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-Dv3k2aEm.js +10 -0
- package/codeyam-cli/src/webserver/build/client/assets/chart-column-DOftqM9U.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/chunk-WWGJGFF6-De6i8FUT.js +26 -0
- package/codeyam-cli/src/webserver/build/client/assets/circle-alert-0WShkwuc.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/clock-DXui5oLF.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/dev.empty-DPFKgE96.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{entity._sha._-1Z6D0fLM.js → entity._sha._-BxaXKsIx.js} +10 -10
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-BRD2FrH5.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-69R47Ffu.js +5 -0
- package/codeyam-cli/src/webserver/build/client/assets/{entityVersioning-DO2gCvXv.js → entityVersioning-Bk_YB1jM.js} +1 -1
- package/codeyam-cli/src/webserver/build/client/assets/entry.client-B5l8I1m3.js +5 -0
- package/codeyam-cli/src/webserver/build/client/assets/file-text-fb2mx25c.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/files-l_Eh9jQG.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/git-BCnOUEl9.js +12 -0
- package/codeyam-cli/src/webserver/build/client/assets/globals-BxkM6Up7.css +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/index-BgDzgbQW.js +8 -0
- package/codeyam-cli/src/webserver/build/client/assets/loader-circle-DE3HAwpF.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/manifest-5579bc45.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/root-o8NMI2bW.js +16 -0
- package/codeyam-cli/src/webserver/build/client/assets/search-BymWwY_X.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/settings-C7G4GDvW.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/settings-Dc4MlMpK.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/simulations-Duh3oShE.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/{useLastLogLine-BBlyqxij.js → useLastLogLine-AlhS7g5F.js} +1 -1
- package/codeyam-cli/src/webserver/build/client/assets/useToast-XY00p4rI.js +1 -0
- package/codeyam-cli/src/webserver/build/client/assets/zap-Dra7vum1.js +1 -0
- package/codeyam-cli/src/webserver/build/server/assets/index-Dpr7o3dP.js +1 -0
- package/codeyam-cli/src/webserver/build/server/assets/server-build-BM5nyvlV.js +166 -0
- package/codeyam-cli/src/webserver/build/server/index.js +1 -1
- package/codeyam-cli/src/webserver/build-info.json +5 -5
- package/codeyam-cli/src/webserver/server.js +1 -1
- package/codeyam-cli/src/webserver/server.js.map +1 -1
- package/codeyam-cli/templates/codeyam-setup-skill.md +85 -94
- package/package.json +7 -10
- package/packages/ai/index.js +1 -2
- package/packages/ai/index.js.map +1 -1
- package/packages/ai/src/lib/analyzeScope.js +13 -0
- package/packages/ai/src/lib/analyzeScope.js.map +1 -1
- package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js +6 -15
- package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js.map +1 -1
- package/packages/ai/src/lib/astScopes/methodSemantics.js +134 -0
- package/packages/ai/src/lib/astScopes/methodSemantics.js.map +1 -1
- package/packages/ai/src/lib/astScopes/paths.js +28 -3
- package/packages/ai/src/lib/astScopes/paths.js.map +1 -1
- package/packages/ai/src/lib/astScopes/processExpression.js +111 -3
- package/packages/ai/src/lib/astScopes/processExpression.js.map +1 -1
- package/packages/ai/src/lib/checkAllAttributes.js +1 -3
- package/packages/ai/src/lib/checkAllAttributes.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +1320 -396
- package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/equivalencyManagers/FunctionCallManager.js +137 -1
- package/packages/ai/src/lib/dataStructure/equivalencyManagers/FunctionCallManager.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js +1 -1
- package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/ReactFrameworkManager.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js +112 -0
- package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js.map +1 -0
- package/packages/ai/src/lib/dataStructure/helpers/DebugTracer.js +176 -0
- package/packages/ai/src/lib/dataStructure/helpers/DebugTracer.js.map +1 -0
- package/packages/ai/src/lib/dataStructure/helpers/PathManager.js +178 -0
- package/packages/ai/src/lib/dataStructure/helpers/PathManager.js.map +1 -0
- package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js +138 -0
- package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js.map +1 -0
- package/packages/ai/src/lib/dataStructure/helpers/VisitedTracker.js +199 -0
- package/packages/ai/src/lib/dataStructure/helpers/VisitedTracker.js.map +1 -0
- package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js +14 -6
- package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js.map +1 -1
- package/packages/ai/src/lib/dataStructure/helpers/selectBestValue.js +62 -0
- package/packages/ai/src/lib/dataStructure/helpers/selectBestValue.js.map +1 -0
- package/packages/ai/src/lib/dataStructure/helpers/uniqueIdUtils.js +90 -0
- package/packages/ai/src/lib/dataStructure/helpers/uniqueIdUtils.js.map +1 -0
- package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js +22 -0
- package/packages/ai/src/lib/gatherRelevantDependentKeyAttributes.js.map +1 -1
- package/packages/ai/src/lib/generateChangesEntityDocumentation.js +19 -1
- package/packages/ai/src/lib/generateChangesEntityDocumentation.js.map +1 -1
- package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js +51 -107
- package/packages/ai/src/lib/generateChangesEntityKeyAttributes.js.map +1 -1
- package/packages/ai/src/lib/generateChangesEntityScenarioData.js +55 -156
- package/packages/ai/src/lib/generateChangesEntityScenarioData.js.map +1 -1
- package/packages/ai/src/lib/generateChangesEntityScenarios.js +79 -262
- package/packages/ai/src/lib/generateChangesEntityScenarios.js.map +1 -1
- package/packages/ai/src/lib/generateEntityDocumentation.js +15 -1
- package/packages/ai/src/lib/generateEntityDocumentation.js.map +1 -1
- package/packages/ai/src/lib/generateEntityKeyAttributes.js +53 -176
- package/packages/ai/src/lib/generateEntityKeyAttributes.js.map +1 -1
- package/packages/ai/src/lib/generateEntityScenarioData.js +52 -152
- package/packages/ai/src/lib/generateEntityScenarioData.js.map +1 -1
- package/packages/ai/src/lib/generateEntityScenarios.js +88 -258
- package/packages/ai/src/lib/generateEntityScenarios.js.map +1 -1
- package/packages/ai/src/lib/generateStatementAnalysis.js +46 -71
- package/packages/ai/src/lib/generateStatementAnalysis.js.map +1 -1
- package/packages/ai/src/lib/getConditionalUsagesFromCode.js +13 -8
- package/packages/ai/src/lib/getConditionalUsagesFromCode.js.map +1 -1
- package/packages/ai/src/lib/getLLMCallStats.js +0 -14
- package/packages/ai/src/lib/getLLMCallStats.js.map +1 -1
- package/packages/ai/src/lib/modelInfo.js +15 -0
- package/packages/ai/src/lib/modelInfo.js.map +1 -1
- package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js +36 -3
- package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js.map +1 -1
- package/packages/ai/src/lib/promptGenerators/generateChangesEntityDocumentationGenerator.js +8 -33
- package/packages/ai/src/lib/promptGenerators/generateChangesEntityDocumentationGenerator.js.map +1 -1
- package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.js +35 -41
- package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenarioDataGenerator.js.map +1 -1
- package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js +59 -72
- package/packages/ai/src/lib/promptGenerators/generateChangesEntityScenariosGenerator.js.map +1 -1
- package/packages/ai/src/lib/promptGenerators/generateEntityDocumentationGenerator.js +8 -27
- package/packages/ai/src/lib/promptGenerators/generateEntityDocumentationGenerator.js.map +1 -1
- package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js +24 -27
- package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js.map +1 -1
- package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js +21 -22
- package/packages/ai/src/lib/promptGenerators/generateEntityScenariosGenerator.js.map +1 -1
- package/packages/ai/src/lib/types/index.js +2 -0
- package/packages/ai/src/lib/types/index.js.map +1 -1
- package/packages/ai/src/lib/worker/SerializableDataStructure.js +7 -0
- package/packages/ai/src/lib/worker/SerializableDataStructure.js.map +1 -1
- package/packages/analyze/src/lib/FileAnalyzer.js +45 -5
- package/packages/analyze/src/lib/FileAnalyzer.js.map +1 -1
- package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js +191 -0
- package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js.map +1 -0
- package/packages/analyze/src/lib/asts/sourceFiles/getDeclaredEntityNode.js +16 -0
- package/packages/analyze/src/lib/asts/sourceFiles/getDeclaredEntityNode.js.map +1 -0
- package/packages/analyze/src/lib/asts/sourceFiles/index.js +2 -0
- package/packages/analyze/src/lib/asts/sourceFiles/index.js.map +1 -1
- package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +6 -8
- package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
- package/packages/analyze/src/lib/files/analyze/analyzeEntities.js +5 -1
- package/packages/analyze/src/lib/files/analyze/analyzeEntities.js.map +1 -1
- package/packages/analyze/src/lib/files/analyzeChange.js +21 -9
- package/packages/analyze/src/lib/files/analyzeChange.js.map +1 -1
- package/packages/analyze/src/lib/files/analyzeEntity.js +10 -4
- package/packages/analyze/src/lib/files/analyzeEntity.js.map +1 -1
- package/packages/analyze/src/lib/files/analyzeInitial.js +21 -9
- package/packages/analyze/src/lib/files/analyzeInitial.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +6 -1
- package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js +9 -1
- package/packages/analyze/src/lib/files/scenarios/generateKeyAttributes.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js +5 -1
- package/packages/analyze/src/lib/files/scenarios/generateScenarioData.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/generateScenarios.js +9 -1
- package/packages/analyze/src/lib/files/scenarios/generateScenarios.js.map +1 -1
- package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js +16 -7
- package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
- package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js +28 -21
- package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageNext.js.map +1 -1
- package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.js +18 -11
- package/packages/generate/src/lib/componentScenarioPage/componentScenarioPageRemix.js.map +1 -1
- package/packages/generate/src/lib/scenarioComponent.js +5 -3
- package/packages/generate/src/lib/scenarioComponent.js.map +1 -1
- package/packages/utils/index.js +2 -0
- package/packages/utils/index.js.map +1 -1
- package/packages/utils/src/lib/Semaphore.js +40 -0
- package/packages/utils/src/lib/Semaphore.js.map +1 -0
- package/packages/utils/src/lib/frameworks/getNextRoutePath.js +5 -3
- package/packages/utils/src/lib/frameworks/getNextRoutePath.js.map +1 -1
- package/packages/utils/src/lib/frameworks/getRemixRoutePath.js +2 -1
- package/packages/utils/src/lib/frameworks/getRemixRoutePath.js.map +1 -1
- package/packages/utils/src/lib/frameworks/nextRouteFileNameToRoute.js +2 -1
- package/packages/utils/src/lib/frameworks/nextRouteFileNameToRoute.js.map +1 -1
- package/packages/utils/src/lib/frameworks/remixRouteFileNameToRoute.js +1 -0
- package/packages/utils/src/lib/frameworks/remixRouteFileNameToRoute.js.map +1 -1
- package/packages/utils/src/lib/frameworks/sanitizeNextRouteSegments.js +32 -0
- package/packages/utils/src/lib/frameworks/sanitizeNextRouteSegments.js.map +1 -0
- package/analyzer-template/packages/ai/src/lib/generateEntityDataMap.ts +0 -375
- package/codeyam-cli/src/webserver/build/client/assets/EntityTypeIcon-GqWwt5wG.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-p0fuyqGQ.js +0 -3
- package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-xwuhwsZH.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/ScenarioPreview-Bl2IRh55.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/ScenarioViewer-M2QuSHKC.js +0 -5
- package/codeyam-cli/src/webserver/build/client/assets/_index-CAVtep9Q.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/activity.(_tab)-CLmzsLsT.js +0 -10
- package/codeyam-cli/src/webserver/build/client/assets/chart-column-B2I7jQx2.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/circle-alert-GwwOAbhw.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/components-CAx5ONX_.js +0 -40
- package/codeyam-cli/src/webserver/build/client/assets/createLucideIcon-CgyOwWip.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/dev.empty-DGy3zrli.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-ChAdTrrU.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.edit._scenarioId-D9L7267w.js +0 -5
- package/codeyam-cli/src/webserver/build/client/assets/entry.client-C6FRgjPr.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/files-C3-cQjgv.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/git-Dp4EB9nv.js +0 -12
- package/codeyam-cli/src/webserver/build/client/assets/globals-Da3jt49-.css +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/loader-circle-DN7Vr40D.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/manifest-172a4629.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/root-COyVTsPq.js +0 -16
- package/codeyam-cli/src/webserver/build/client/assets/search-CvyP_1Lo.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/settings-Hbf8b7J_.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/settings-MZc4XdmE.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/simulations-BMBi0VzO.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/useToast-C_VxoXTh.js +0 -1
- package/codeyam-cli/src/webserver/build/client/assets/zap-B4gsLUZQ.js +0 -1
- package/codeyam-cli/src/webserver/build/client/cy-logo-cli.svg +0 -13
- package/codeyam-cli/src/webserver/build/server/assets/index-eAULANMV.js +0 -1
- package/codeyam-cli/src/webserver/build/server/assets/server-build-lutv16q5.js +0 -161
- package/codeyam-cli/src/webserver/public/cy-logo-cli.svg +0 -13
- package/packages/ai/src/lib/generateEntityDataMap.js +0 -335
- package/packages/ai/src/lib/generateEntityDataMap.js.map +0 -1
- package/packages/ai/src/lib/promptGenerators/generateEntityDataMapGenerator.js +0 -17
- package/packages/ai/src/lib/promptGenerators/generateEntityDataMapGenerator.js.map +0 -1
|
@@ -34,8 +34,8 @@ export default async function generateEntityKeyAttributes({ entity, model, }) {
|
|
|
34
34
|
associationMap,
|
|
35
35
|
staticAnalysisContext,
|
|
36
36
|
});
|
|
37
|
-
console.
|
|
38
|
-
console.
|
|
37
|
+
console.log('Generated prompt for generateEntityKeyAttributes:');
|
|
38
|
+
console.log(prompt);
|
|
39
39
|
const response = await completionCall({
|
|
40
40
|
type: `generateEntityKeyAttributes`,
|
|
41
41
|
systemMessage: isFrontend(entity.filePath)
|
|
@@ -106,224 +106,101 @@ export default async function generateEntityKeyAttributes({ entity, model, }) {
|
|
|
106
106
|
llmCall,
|
|
107
107
|
};
|
|
108
108
|
}
|
|
109
|
-
const FRONTEND_SYSTEM_MESSAGE = `
|
|
109
|
+
const FRONTEND_SYSTEM_MESSAGE = `You analyze frontend components to identify key data attributes that significantly impact rendering.
|
|
110
110
|
|
|
111
|
-
|
|
111
|
+
## What Makes a Key Attribute
|
|
112
112
|
|
|
113
|
-
|
|
113
|
+
A key attribute is a data path from "Attributes and Value Types" that dramatically changes how the component renders:
|
|
114
114
|
|
|
115
|
-
|
|
115
|
+
- Controls a conditional that shows/hides significant UI sections
|
|
116
|
+
- Changes the component's primary visual state (not just minor text differences)
|
|
117
|
+
- Determines which branch of rendering logic executes
|
|
116
118
|
|
|
117
|
-
|
|
119
|
+
NOT key attributes:
|
|
120
|
+
- Values that only affect non-visible behavior (hrefs, image srcs)
|
|
121
|
+
- Fallback values that won't be used if primary values exist
|
|
122
|
+
- Values that would cause errors if changed
|
|
123
|
+
- Guard clauses that render literally nothing
|
|
118
124
|
|
|
119
|
-
|
|
125
|
+
## Conditional Key Attributes
|
|
120
126
|
|
|
121
|
-
|
|
127
|
+
We've provided a list of variables that are used in conditional statements in the code. These are very likely key attributes.
|
|
122
128
|
|
|
123
|
-
|
|
129
|
+
Each conditional lists it's source and how it is used. This should help you identify which attributes to include and what values to suggest.
|
|
124
130
|
|
|
125
|
-
|
|
131
|
+
## Path Format
|
|
126
132
|
|
|
127
|
-
|
|
133
|
+
Only return attributes from the "Attributes and Value Types" list — these are the only values we can control. Use the exact \`fullPath\` provided. Use \`functionCallReturnValue\` for function return values. Use \`[]\` for array items (e.g., \`items[]\`).
|
|
128
134
|
|
|
129
|
-
|
|
135
|
+
## Valid Value Options
|
|
130
136
|
|
|
131
|
-
-
|
|
137
|
+
- For \`validValueOptions\`, include boundary/extreme values that trigger different behavior
|
|
138
|
+
- Be very specific with values. Do not make them ambiguous in any way
|
|
139
|
+
— Do NOT include values that would cause unexpected/unhandled errors.
|
|
140
|
+
- Ensure all values or value ranges that will trigger different rendering behavior are included
|
|
132
141
|
|
|
133
|
-
|
|
142
|
+
## Response Format
|
|
134
143
|
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
- Changing the value of this variable will cause a guard clause around the whole method or function to be triggered that results in nothing at all being displayed.
|
|
138
|
-
|
|
139
|
-
- Changing the value of this variable will cause a minor change in display that is not significant (e.g. slightly different text).
|
|
140
|
-
|
|
141
|
-
- The value is used as a fallback or alternative for another value and won't even be used if the other value is present.
|
|
142
|
-
|
|
143
|
-
- The value changes non-visible behavior (e.g. the href in a link or src in an image - all images sources are mocked out).
|
|
144
|
-
|
|
145
|
-
## Instructions
|
|
146
|
-
|
|
147
|
-
- Read each line of code. Pay particular attention to the return value of the function and how this frontend component will be displayed. What will cause it display distinctly different but functional and robust results to the user?
|
|
148
|
-
- Find the most impactful key attributes that will change how the frontend component is displayed. This should be a limited subset of the "Attributes and Value Types" provided.
|
|
149
|
-
- Return each key attribute with the following information:
|
|
150
|
-
- \`fullPath\`: The fullPath to the data attribute in the code
|
|
151
|
-
- \`description\`: A short description of the data attribute and how it is used in the code.
|
|
152
|
-
- \`validValueOptions\`: A list of possible values for the data attribute that should be tested. This list should be minimal and only include values that the code will handle properly and will clearly make a difference in how the component is displayed. Do not make up arbitrary values without clear evidence that each different value will cause a different display behavior.
|
|
153
|
-
- List the key attributes in the order of importance (most important first, with importance determined by how much changing the attribute will impact how the component is displayed).
|
|
154
|
-
- Each attribute should reference exactly the full fullPath of a data attribute provided in the "Attributes and Value Types" section.
|
|
155
|
-
|
|
156
|
-
## Example
|
|
157
|
-
|
|
158
|
-
Given the following "Attributes and Value Types":
|
|
159
|
-
\`\`\`
|
|
160
|
-
'notification.read': { fullPath: 'signature[0].notification.read', type: 'boolean' }
|
|
161
|
-
'notification.message': { fullPath: 'signature[0].notification.message', type: 'string' }
|
|
162
|
-
\`\`\`
|
|
163
|
-
|
|
164
|
-
and code:
|
|
165
|
-
|
|
166
|
-
\`\`\`typescript
|
|
167
|
-
const NotificationText = (notification) => {
|
|
168
|
-
if (notification.read) {
|
|
169
|
-
return (
|
|
170
|
-
<span onClick={markAsRead(notification.id)}>
|
|
171
|
-
<img src={notification.icon} alt="Notification Icon" />
|
|
172
|
-
{notification.message}
|
|
173
|
-
</span>
|
|
174
|
-
);
|
|
175
|
-
} else {
|
|
176
|
-
return <strong>{notification.message}</strong>;
|
|
177
|
-
}
|
|
178
|
-
};
|
|
179
|
-
\`\`\`
|
|
180
|
-
|
|
181
|
-
The response might be:
|
|
144
|
+
List all key attributes in order from most impactful to least impactful regarding how dramatically they will change the rendering of the component using the following format:
|
|
182
145
|
|
|
183
146
|
\`\`\`json
|
|
184
147
|
{
|
|
185
148
|
"keyAttributes": [
|
|
186
149
|
{
|
|
187
|
-
"fullPath": "signature[0].
|
|
188
|
-
"description": "
|
|
189
|
-
"validValueOptions": [
|
|
190
|
-
"true",
|
|
191
|
-
"false"
|
|
192
|
-
]
|
|
193
|
-
},
|
|
194
|
-
{
|
|
195
|
-
"fullPath": "signature[0].notification.message",
|
|
196
|
-
"description": "The message text is displayed and should be tested for various lengths.",
|
|
197
|
-
"validValueOptions": [
|
|
198
|
-
"An empty message (no characters)",
|
|
199
|
-
"A medium message (around 100 characters)",
|
|
200
|
-
"A long message (longer than 200 characters)"
|
|
201
|
-
]
|
|
150
|
+
"fullPath": "signature[0].user",
|
|
151
|
+
"description": "Controls whether the main form or redirect screen displays",
|
|
152
|
+
"validValueOptions": ["an empty object {}", "null/undefined"]
|
|
202
153
|
}
|
|
203
154
|
]
|
|
204
155
|
}
|
|
205
156
|
\`\`\`
|
|
206
|
-
|
|
207
|
-
## Important
|
|
208
|
-
|
|
209
|
-
- A key attribute must be an exact attribute fullPath from the "Attributes and Value Types" provided. Do not return any other attribute fullPaths. The only data we can provide to the function comes from these attributes so any other attribute is useless. For internally computed variables trace them back to one of the higher level variables that we can actually impact. Be sure to match the text from the attribute list exactly including spaces, commas, etc.
|
|
210
157
|
`;
|
|
211
|
-
const BACKEND_SYSTEM_MESSAGE = `
|
|
212
|
-
|
|
213
|
-
Can you help us identify the key data attributes in the code that will cause the function to return distinctly different but functional and robust results?
|
|
214
|
-
|
|
215
|
-
We're not interested in causing errors or in high-level guard clauses that result in nothing being returned. We're interested in always returning a robust result that demonstrates the core intent of the function.
|
|
158
|
+
const BACKEND_SYSTEM_MESSAGE = `You analyze backend functions to identify key data attributes that significantly impact behavior.
|
|
216
159
|
|
|
217
|
-
|
|
160
|
+
## What Makes a Key Attribute
|
|
218
161
|
|
|
219
|
-
|
|
162
|
+
A key attribute is a data path from "Attributes and Value Types" that dramatically changes the function's behavior:
|
|
220
163
|
|
|
221
|
-
|
|
164
|
+
- Controls a conditional that significantly alters execution flow or return value
|
|
165
|
+
- Determines which branch of logic executes
|
|
166
|
+
- For side-effect functions: changes how external systems are called (database, email, etc.)
|
|
222
167
|
|
|
223
|
-
|
|
168
|
+
NOT key attributes:
|
|
169
|
+
- Fallback values that won't be used if primary values exist
|
|
170
|
+
- Values that would cause errors if changed
|
|
171
|
+
- Guard clauses that return nothing/minimal data
|
|
224
172
|
|
|
225
|
-
|
|
173
|
+
## Conditional Key Attributes
|
|
226
174
|
|
|
227
|
-
|
|
175
|
+
We've provided a list of variables that are used in conditional statements in the code. These are very likely key attributes.
|
|
228
176
|
|
|
229
|
-
|
|
177
|
+
Each conditional lists it's source and how it is used. This should help you identify which attributes to include and what values to suggest.
|
|
230
178
|
|
|
231
|
-
|
|
179
|
+
## Path Format
|
|
232
180
|
|
|
233
|
-
|
|
181
|
+
Only return attributes from the "Attributes and Value Types" list — these are the only values we can control. Use the exact \`fullPath\` provided. Use \`functionCallReturnValue\` for function return values. Use \`[]\` for array items (e.g., \`items[]\`).
|
|
234
182
|
|
|
235
|
-
|
|
183
|
+
## Valid Value Options
|
|
236
184
|
|
|
237
|
-
-
|
|
185
|
+
- For \`validValueOptions\`, include boundary/extreme values that trigger different behavior
|
|
186
|
+
- Be very specific with values. Do not make them ambiguous in any way
|
|
187
|
+
— Do NOT include values that would cause unexpected/unhandled errors.
|
|
188
|
+
- Ensure all values or value ranges that will trigger different rendering behavior are included
|
|
238
189
|
|
|
239
|
-
|
|
190
|
+
## Response Format
|
|
240
191
|
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
- Changing the value of this variable will cause a guard clause to be triggered that results in nothing or very little being returned.
|
|
244
|
-
|
|
245
|
-
- The value is used as a fallback or alternative for another value and won't even be used if the other value is present.
|
|
246
|
-
|
|
247
|
-
## Instructions
|
|
248
|
-
|
|
249
|
-
- Read each line of code. Pay particular attention to the return value of the function. What data attributes will cause it to return distinctly different but functional and robust results?
|
|
250
|
-
- Find the most impactful key attributes that will impact the return value of the function. This should be a limited subset of the "Attributes and Value Types" provided.
|
|
251
|
-
- Return each key attribute with the following information:
|
|
252
|
-
- \`fullPath\`: The fullPath to the data attribute in the code
|
|
253
|
-
- \`description\`: A short description of the data attribute and how it is used in the code.
|
|
254
|
-
- \`validValueOptions\`: A list of possible values for the data attribute that should be tested. This list should be minimal and only include values that the code will handle properly and will clearly make a difference in the functions's behavior. Do not make up arbitrary values without clear evidence that each different value will clearly result in a different function behavior.
|
|
255
|
-
- List the key attributes in the order of importance (most important first, with importance determined by how much changing the attribute will change the return value of the function).
|
|
256
|
-
- Each attribute should reference exactly the fullPath of a data attribute provided in the "Attributes and Value Types" section.
|
|
257
|
-
|
|
258
|
-
## Example
|
|
259
|
-
|
|
260
|
-
Given the following "Attributes and Value Types":
|
|
261
|
-
\`\`\`
|
|
262
|
-
[
|
|
263
|
-
items[].quantity: { fullPath: 'signature[0][].quantity', type: 'number' },
|
|
264
|
-
items[].price: { fullPath: 'signature[0][].price', type: 'number' },
|
|
265
|
-
discount: { fullPath: 'signature[1]', type: 'number' },
|
|
266
|
-
taxRate: { fullPath: 'signature[2]', type: 'number' },
|
|
267
|
-
]
|
|
268
|
-
\`\`\`
|
|
269
|
-
|
|
270
|
-
and code:
|
|
271
|
-
|
|
272
|
-
\`\`\`typescript
|
|
273
|
-
const calculateTotal = (items, discount, taxRate) => {
|
|
274
|
-
const subtotal = items.reduce((sum, item) => sum + item.quantity * item.price, 0);
|
|
275
|
-
const discountedTotal = subtotal - discount;
|
|
276
|
-
const tax = discountedTotal * taxRate;
|
|
277
|
-
return discountedTotal + tax;
|
|
278
|
-
}
|
|
279
|
-
\`\`\`
|
|
280
|
-
|
|
281
|
-
The response might be:
|
|
192
|
+
List all key attributes in order from most impactful to least impactful using the following format:
|
|
282
193
|
|
|
283
194
|
\`\`\`json
|
|
284
195
|
{
|
|
285
196
|
"keyAttributes": [
|
|
286
197
|
{
|
|
287
|
-
"fullPath": "signature[0]
|
|
288
|
-
"description": "
|
|
289
|
-
"validValueOptions": [
|
|
290
|
-
"0 (no items)",
|
|
291
|
-
"1 (single item)",
|
|
292
|
-
"5 (multiple items)",
|
|
293
|
-
"100 (large quantity)"
|
|
294
|
-
]
|
|
295
|
-
},
|
|
296
|
-
{
|
|
297
|
-
"fullPath": "signature[0][].price",
|
|
298
|
-
"description": "The price of each item affects the subtotal calculation.",
|
|
299
|
-
"validValueOptions": [
|
|
300
|
-
"0.00 (free item)",
|
|
301
|
-
"19.99 (average price)",
|
|
302
|
-
"999.99 (high price)"
|
|
303
|
-
]
|
|
304
|
-
},
|
|
305
|
-
{
|
|
306
|
-
"fullPath": "signature[1]",
|
|
307
|
-
"description": "The discount amount directly reduces the subtotal.",
|
|
308
|
-
"validValueOptions": [
|
|
309
|
-
"0 (no discount)",
|
|
310
|
-
"20.00 (discount)"
|
|
311
|
-
]
|
|
312
|
-
},
|
|
313
|
-
{
|
|
314
|
-
"fullPath": "signature[2]",
|
|
315
|
-
"description": "The tax rate affects the final total calculation.",
|
|
316
|
-
"validValueOptions": [
|
|
317
|
-
"0 (no tax)",
|
|
318
|
-
"0.20 (20% tax)"
|
|
319
|
-
]
|
|
198
|
+
"fullPath": "signature[0].config.enabled",
|
|
199
|
+
"description": "Controls whether the main processing logic runs",
|
|
200
|
+
"validValueOptions": ["true", "false"]
|
|
320
201
|
}
|
|
321
202
|
]
|
|
322
203
|
}
|
|
323
204
|
\`\`\`
|
|
324
|
-
|
|
325
|
-
## Important
|
|
326
|
-
|
|
327
|
-
- A key attribute must be an exact attribute fullPath from the "Attributes and Value Types" provided. Do not return any other attribute fullPaths. The only data we can provide to the function comes from these attributes so any other attribute is useless. For internally computed variables trace them back to one of the higher level variables that we can actually impact. Be sure to match the text from the attribute list exactly including spaces, commas, etc.
|
|
328
205
|
`;
|
|
329
206
|
//# sourceMappingURL=generateEntityKeyAttributes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateEntityKeyAttributes.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateEntityKeyAttributes.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,oCAAoC,MAAM,yDAAyD,CAAC;AAC3G,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,iCAAiC,EAAE,MAAM,qDAAqD,CAAC;AACxG,OAAO,UAAU,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,gCAAgC,EAAE,MAAM,gCAAgC,CAAC;AAQlF,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,2BAA2B,CAAC,EACxD,MAAM,EACN,KAAK,GAC2B;IAChC,MAAM,CAAC,2CAA2C,EAAE;QAClD,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,UAAU,EAAE,MAAM,CAAC,IAAI;KACxB,CAAC,CAAC;IAEH,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,oBAAoB,EAAE,GAC3D,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEpC,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,OAAO,CAAC,GAAG,CACT,gDAAgD,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE,CACjF,CAAC;QACF,OAAO;YACL,aAAa,EAAE,EAAE;YACjB,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,+FAA+F;IAC/F,MAAM,qBAAqB,GAAG,iCAAiC,CAAC;QAC9D,SAAS,EAAE,MAAM,CAAC,IAAI;QACtB,MAAM,EAAE,EAAE,GAAG,aAAa,EAAE;KAC7B,CAAC,CAAC;IAEH,uFAAuF;IACvF,MAAM,iBAAiB,GACrB,MAAM,CAAC,QAAQ,EAAE,qBAAqB,EAAE,iBAAiB,IAAI,EAAE,CAAC;IAClE,MAAM,qBAAqB,GACzB,gCAAgC,CAAC,iBAAiB,CAAC,CAAC;IAEtD,MAAM,MAAM,GAAG,oCAAoC,CAAC;QAClD,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,aAAa,EAAE,qBAAqB;QACpC,cAAc;QACd,qBAAqB;KACtB,CAAC,CAAC;IAEH,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"generateEntityKeyAttributes.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateEntityKeyAttributes.ts"],"names":[],"mappings":"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"}
|
|
@@ -177,174 +177,74 @@ export default async function generateEntityScenarioData({ entity, structure, sc
|
|
|
177
177
|
throw error;
|
|
178
178
|
}
|
|
179
179
|
}
|
|
180
|
-
export const generateSystemMessage = (scenarioName, defaultScenario) =>
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
- The data generated will be merged into the Default Scenario Data in order to create the full data for this scenario.
|
|
210
|
-
`}
|
|
211
|
-
|
|
212
|
-
## Example Response
|
|
213
|
-
|
|
214
|
-
{
|
|
215
|
-
"scenarioData": {
|
|
216
|
-
"scenarioName": ${scenarioName},
|
|
217
|
-
"data': {
|
|
218
|
-
"mockData": {
|
|
219
|
-
"useUser()": {
|
|
220
|
-
"user": {
|
|
221
|
-
"name": "John Doe",
|
|
222
|
-
"metadata": {
|
|
223
|
-
"hobbies": ["fishing", "hiking", "camping"]
|
|
224
|
-
"favoriteColor": "blue",
|
|
225
|
-
},
|
|
226
|
-
"joinedAt": {
|
|
227
|
-
"~~codeyam-code~~": "new Date(Date.now() - 3 * 24 * 60 * 60 * 1000)"
|
|
228
|
-
}
|
|
229
|
-
},
|
|
230
|
-
},
|
|
231
|
-
"loadProject()": {
|
|
232
|
-
"project": {
|
|
233
|
-
"name": "New Project",
|
|
234
|
-
"slug": "new-project",
|
|
235
|
-
"files": [
|
|
236
|
-
{
|
|
237
|
-
"name": "File 1",
|
|
238
|
-
"slug": "file-1",
|
|
239
|
-
"content": "This is the content of file 1"
|
|
240
|
-
},
|
|
241
|
-
{
|
|
242
|
-
"name": "File 2",
|
|
243
|
-
"slug": "file-2",
|
|
244
|
-
"content": "This is the content of file 2"
|
|
245
|
-
},
|
|
246
|
-
{
|
|
247
|
-
"name": "File 3",
|
|
248
|
-
"slug": "file-3",
|
|
249
|
-
"content": "This is the content of file 3"
|
|
250
|
-
}
|
|
251
|
-
]
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
},
|
|
255
|
-
"argumentsData": [
|
|
256
|
-
{
|
|
257
|
-
"open": "true",
|
|
258
|
-
"children: {
|
|
259
|
-
"~~codeyam-jsx~~": "<div>Hi!</div>"
|
|
260
|
-
}
|
|
261
|
-
}
|
|
262
|
-
]
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
|
|
267
|
-
## scenarioData
|
|
268
|
-
|
|
269
|
-
You will return a JSON object called scenarioData containing the name and data for this scenario.
|
|
270
|
-
|
|
271
|
-
If you encounter a "date" then you should use "~~codeyam-code~~" along with code in string format. That string will be evaled to create the date or timestamp needed.
|
|
272
|
-
|
|
273
|
-
For example the "timestamp" above should probably not be a hard-coded timestamp but should be a function that returns a timestamp. If you want to return a timestamp that is 24 hours in the future, you would return this object:
|
|
180
|
+
export const generateSystemMessage = (scenarioName, defaultScenario) => {
|
|
181
|
+
const scenarioType = defaultScenario
|
|
182
|
+
? `## Default Scenario
|
|
183
|
+
Generate COMPLETE, robust data for the entire data structure.
|
|
184
|
+
- Fill ALL fields with realistic values (except error attributes)
|
|
185
|
+
- Arrays should have 2-3 items
|
|
186
|
+
- Don't skip nested attributes
|
|
187
|
+
- This provides the baseline data for all other scenarios`
|
|
188
|
+
: `## Non-Default Scenario
|
|
189
|
+
Generate ONLY the differences from the default scenario.
|
|
190
|
+
- Include only fields that need to change
|
|
191
|
+
- Set to \`null\` to remove data
|
|
192
|
+
- Omit unchanged fields—they merge from default`;
|
|
193
|
+
return `You are a test data generator. Create mock data matching a data structure and scenario requirements.
|
|
194
|
+
|
|
195
|
+
${scenarioType}
|
|
196
|
+
|
|
197
|
+
## CRITICAL: NO ERROR DATA
|
|
198
|
+
NEVER include "error" fields in responses. Skip them entirely.
|
|
199
|
+
- If structure has \`{ data: {...}, error: {...} }\`, only fill \`data\`
|
|
200
|
+
- Leave out any attribute named "error"—do not set to null, omit entirely
|
|
201
|
+
|
|
202
|
+
## Special Markers
|
|
203
|
+
|
|
204
|
+
### Dynamic Dates (\`~~codeyam-code~~\`)
|
|
205
|
+
\`\`\`json
|
|
206
|
+
{ "createdAt": { "~~codeyam-code~~": "new Date(Date.now() - 24*60*60*1000)" } }
|
|
207
|
+
\`\`\`
|
|
208
|
+
Use for relative dates. Code runs in Node (no browser APIs, no external libraries).
|
|
274
209
|
|
|
210
|
+
### JSX Children (\`~~codeyam-jsx~~\`)
|
|
211
|
+
\`\`\`json
|
|
212
|
+
{ "children": { "~~codeyam-jsx~~": "<div>Hello</div>" } }
|
|
275
213
|
\`\`\`
|
|
214
|
+
Use simple elements only (\`<div>\`, \`<span>\`). No custom components.
|
|
215
|
+
|
|
216
|
+
## Function Keys
|
|
217
|
+
Preserve function call syntax exactly as written in the structure:
|
|
218
|
+
\`\`\`json
|
|
276
219
|
{
|
|
277
|
-
"
|
|
278
|
-
"
|
|
279
|
-
"
|
|
280
|
-
"mockData": {
|
|
281
|
-
"dataLoaders": {
|
|
282
|
-
"fetchUser()": {
|
|
283
|
-
"user": {
|
|
284
|
-
"name": "John Doe",
|
|
285
|
-
"metadata": {
|
|
286
|
-
"hobbies": ["fishing", "hiking", "camping"],
|
|
287
|
-
"favoriteColor": "blue"
|
|
288
|
-
},
|
|
289
|
-
"joinedAt": {
|
|
290
|
-
"~~codeyam-code~~": "new Date(Date.now() - 3 * 24 * 60 * 60 * 1000).toISOString()"
|
|
291
|
-
}
|
|
292
|
-
}
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
}
|
|
296
|
-
}
|
|
220
|
+
"mockData": {
|
|
221
|
+
"useUser()": { "user": { "name": "John" } },
|
|
222
|
+
"from().select()": [{ "id": "1" }]
|
|
297
223
|
}
|
|
298
224
|
}
|
|
299
225
|
\`\`\`
|
|
300
226
|
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
All code should be written in JavaScript. It will run in a node environment (not the browser) with no reference to external libraries. It will essentially be run in a sandboxed environment. Do not reference any external libraries in the code.
|
|
304
|
-
|
|
305
|
-
With argumentsData you may also need to return a "children" argument. "children" can either be a string or a jsx element.
|
|
306
|
-
|
|
307
|
-
If you want to return a jsx element you would return something like this:
|
|
308
|
-
|
|
309
|
-
\`\`\`
|
|
227
|
+
## Response Format
|
|
228
|
+
\`\`\`json
|
|
310
229
|
{
|
|
311
230
|
"scenarioData": {
|
|
312
|
-
"scenarioName": ${scenarioName},
|
|
231
|
+
"scenarioName": "${scenarioName}",
|
|
313
232
|
"data": {
|
|
314
|
-
"
|
|
315
|
-
|
|
316
|
-
"children": {
|
|
317
|
-
"~~codeyam-jsx~~": "<div>Click Me!</div>"
|
|
318
|
-
}
|
|
319
|
-
}
|
|
320
|
-
]
|
|
233
|
+
"mockData": { ... },
|
|
234
|
+
"argumentsData": [ ... ]
|
|
321
235
|
}
|
|
322
236
|
}
|
|
323
237
|
}
|
|
324
238
|
\`\`\`
|
|
325
239
|
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
If an object inside of mockData or argumentsData is intended to not exist you can set it to null.
|
|
333
|
-
|
|
334
|
-
Never use "~~codeyam-code~~" or "~~codeyam-jsx~~" as a partial key in the response. Even if the key looks like it should have a relative date or code. "~~codeyam-code~~" and "~~codeyam-jsx~~" are only used as independent keys used to mark values that are code.
|
|
335
|
-
|
|
336
|
-
## Common Mistakes
|
|
337
|
-
|
|
338
|
-
- Do not use the term undefined in the response. If something is missing leave it out or use null.
|
|
339
|
-
- Leave out error data (e.g. a data attribute labeled as "error"), especially when it is in a data structure that has success data as well. Only include the success data and simply leave out the error data. Error data is usually labeled as "error" in the structure. Leave it out entirely.
|
|
340
|
-
- Please double check this. Ensure no error data is included in the response unless specifically requested. ${defaultScenario ? `This includes the ${`DEFAULT_SCENARIO_NAME`}.` : ''} Leave out any error attributes from the response completely!
|
|
341
|
-
- Do not reference data in the response (e.g. if there was a "posts" field you can not say "posts[0]" elsewhere in the response - you need to duplicate the data). Unfortunately all data must be written out directly in the response.
|
|
342
|
-
- Ensure each scenario in the response matches the full scenario name, commas and all, in the scenarios provided.
|
|
343
|
-
- Do not throw errors from this data in any manner. Simple leave out any error data.
|
|
344
|
-
- If the data structure contains a type that is a "date" then use ~~codeyam-code~~ to generate a dynamic timestamp or date. Do not hard-code dates unless it needs to be a very specific date. Otherwise it should be a relative, dynamic date.
|
|
345
|
-
- The response must be valid JSON. Do not include raw code in the response.
|
|
346
|
-
${defaultScenario ? `- As the ${DEFAULT_SCENARIO_NAME} be very robust in generating data that reflects common real-world usage. All arrays and attributes, except error attributes, should be filled in with high quality data so that default simulation provides a good default of how the function behaves` : ''}
|
|
240
|
+
## Rules
|
|
241
|
+
- Valid JSON only—no raw code outside markers
|
|
242
|
+
- No \`undefined\`—use \`null\` or omit
|
|
243
|
+
- No data references (can't use \`posts[0]\` elsewhere—duplicate the value)
|
|
244
|
+
- Scenario name must match exactly: "${scenarioName}"
|
|
245
|
+
- Empty mockData: \`{}\`, empty argumentsData: \`[]\`
|
|
347
246
|
`;
|
|
247
|
+
};
|
|
348
248
|
export const generateIncompleteSystemMessage = (scenarioName, isDefault) => `Your previous response provided us with an incomplete json object.
|
|
349
249
|
|
|
350
250
|
Can you help us complete it? The previous response got cut off because it was too long so to complete the response you'll need to pick up where you left off providing just the necessary text to make the full response a valid json object.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateEntityScenarioData.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateEntityScenarioData.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,mCAAmC,MAAM,wDAAwD,CAAC;AACzG,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAQpD,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAM,aAAa,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AAqBjD,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,EAC5C,MAAM,EACN,SAAS,EACT,QAAQ,EACR,mBAAmB,EACnB,kBAAkB,EAClB,QAAQ,EACR,KAAK,GACuB;IAC5B,gBAAgB,CAAC,CAAC,EAAE,uBAAuB,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAE5E,MAAM,MAAM,GAAG,mCAAmC,CAChD,SAAS,EACT,QAAQ,EACR,mBAAmB,EACnB,kBAAkB,CACnB,CAAC;IAEF,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,KAAK,qBAAqB,CAAC;IAC1D,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC;QACpC,IAAI,EAAE,4BAA4B;QAClC,aAAa,EAAE,kBAAkB;YAC/B,CAAC,CAAC,+BAA+B,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;YAC3D,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;QACnD,MAAM;QACN,KAAK;KACN,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC;QAChC,WAAW,EAAE,UAAU;QACvB,SAAS,EAAE,QAAQ,CAAC,EAAE;QACtB,SAAS,EAAE;YACT,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,QAAQ,EAAE;oBACR,WAAW,EAAE,MAAM,CAAC,QAAQ,EAAE,WAAW;iBAC1C;aACF;YACD,SAAS;YACT,QAAQ;YACR,mBAAmB;YACnB,kBAAkB;YAClB,QAAQ,EAAE;gBACR,EAAE,EAAE,QAAQ,CAAC,EAAE;gBACf,QAAQ,EAAE;oBACR,qBAAqB,EAAE;wBACrB,4BAA4B,EAC1B,MAAM,CAAC,QAAQ,CAAC,qBAAqB;6BAClC,4BAA4B;qBAClC;iBACF;aACF;YACD,KAAK;SACN;QACD,GAAG,QAAQ,CAAC,KAAK;KAClB,CAAC,CAAC;IAEH,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,QAAQ,CAAC;IAE9C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CACT,oEAAoE,CACrE,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CACJ,WAAW,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,EAAE,WAAW,IAAI,MAAM,CAAC,IAAI,8CAA8C,EACxJ;QACE,YAAY;QACZ,UAAU;KACX,CACF,CAAC;IAEF,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;IAE3C,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,cAAc,IAAI,MAAM,CAAC,EAAE,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,wDAAwD,EAAE;YACpE,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,YAAY,EAAE,QAAQ,CAAC,IAAI;YAC3B,SAAS,EAAE,CAAC,CAAC,MAAM;YACnB,UAAU,EAAE,OAAO,MAAM;YACzB,eAAe,EAAE,MAAM,IAAI,cAAc,IAAI,MAAM;YACnD,iBAAiB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;SAChD,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,EAAE,YAAY,EAAE,8BAA8B,EAAE,GAAG,MAExD,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,4DAA4D,EAAE;QACxE,UAAU,EAAE,MAAM,CAAC,IAAI;QACvB,YAAY,EAAE,QAAQ,CAAC,IAAI;QAC3B,kBAAkB,EAAE,8BAA8B,CAAC,YAAY;QAC/D,OAAO,EAAE,CAAC,CAAC,8BAA8B,CAAC,IAAI;QAC9C,QAAQ,EAAE,8BAA8B,CAAC,IAAI;YAC3C,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC;YAClD,CAAC,CAAC,EAAE;KACP,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAiB;QACrC,GAAG,8BAA8B;QACjC,mBAAmB,EAAE,QAAQ,EAAE,WAAW,IAAI,EAAE;KACjC,CAAC;IAElB,IAAI,SAAS,CAAC,YAAY,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QACnE,gBAAgB,CAAC,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACzC,IAAI,SAAS,CAAC,SAAS,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YAChE,gBAAgB,CAAC,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;gBACpD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC5C,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;gBAC9C,CAAC;gBACD,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzD,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAW,CAAC;oBAC/C,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;gBACrE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,SAAS,CAAC,YAAY,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9D,gBAAgB,CAAC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACpC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACvD,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAW,CAAC;YAC/C,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,OAAO;QACL,YAAY,EAAE,gBAAgB;QAC9B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE;KACjD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,0BAA0B,CAAC,EACvD,MAAM,EACN,SAAS,EACT,SAAS,EACT,kBAAkB,EAClB,QAAQ,EACR,KAAK,GAC0B;IAC/B,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAC7C,CAAC;IAED,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,EAAE,CAAC;QAEpB,MAAM,eAAe,GAAG,SAAS,CAAC,IAAI,CACpC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,qBAAqB,CACxC,CAAC;QAEF,MAAM,qBAAqB,GAAG,MAAM,uBAAuB,CAAC;YAC1D,MAAM;YACN,SAAS;YACT,QAAQ,EAAE,eAAe;YACzB,kBAAkB;YAClB,QAAQ;YACR,KAAK;SACN,CAAC,CAAC;QAEH,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC3B,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAC7C,CAAC;QAED,MAAM,mBAAmB,GAAG,qBAAqB,CAAC,YAAY,CAAC;QAE/D,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACxC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAE7C,MAAM,mBAAmB,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,eAAe,CAAC,CAAC;QAE3E,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;YACzC,OAAO,uBAAuB,CAAC;gBAC7B,MAAM;gBACN,SAAS;gBACT,QAAQ;gBACR,mBAAmB;gBACnB,kBAAkB;gBAClB,QAAQ;gBACR,KAAK;aACN,CAAC,CAAC;QACL,CAAC,CAAC,CACH,CAAC;QAEF,qDAAqD;QACrD,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CACjC,CAAC,MAAM,EAAwC,EAAE,CAAC,MAAM,KAAK,IAAI,CAClE,CAAC;QAEF,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;QACvD,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;YAClB,MAAM,CACJ,eAAe,SAAS,OAAO,OAAO,CAAC,MAAM,sDAAsD,MAAM,CAAC,IAAI,EAAE,CACjH,CAAC;QACJ,CAAC;QAED,aAAa,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;QACzE,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAE/D,OAAO,CAAC,GAAG,CAAC,mDAAmD,EAAE;YAC/D,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,cAAc,EAAE,SAAS,CAAC,MAAM;YAChC,wBAAwB,EAAE,CAAC,CAAC,qBAAqB;YACjD,uBAAuB,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC;YAC7C,qBAAqB,EAAE,OAAO,CAAC,MAAM;YACrC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM;YACrD,YAAY,EAAE,YAAY,CAAC,MAAM;YACjC,uBAAuB,EAAE,aAAa,CAAC,MAAM;SAC9C,CAAC,CAAC;QAEH,MAAM,CACJ,6BAA6B,EAC7B,IAAI,CAAC,SAAS,CACZ;YACE,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,aAAa,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBACxC,YAAY,EAAE,EAAE,CAAC,YAAY;gBAC7B,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI;gBAClB,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;aAC9C,CAAC,CAAC;SACJ,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;QAEF,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC;IACrC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,iDAAiD,EAAE,KAAK,CAAC,CAAC;QACtE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,YAAoB,EACpB,eAAwB,EACxB,EAAE,
|
|
1
|
+
{"version":3,"file":"generateEntityScenarioData.js","sourceRoot":"","sources":["../../../../../../packages/ai/src/lib/generateEntityScenarioData.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,mCAAmC,MAAM,wDAAwD,CAAC;AACzG,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAQpD,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAM,aAAa,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AAqBjD,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,EAC5C,MAAM,EACN,SAAS,EACT,QAAQ,EACR,mBAAmB,EACnB,kBAAkB,EAClB,QAAQ,EACR,KAAK,GACuB;IAC5B,gBAAgB,CAAC,CAAC,EAAE,uBAAuB,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAE5E,MAAM,MAAM,GAAG,mCAAmC,CAChD,SAAS,EACT,QAAQ,EACR,mBAAmB,EACnB,kBAAkB,CACnB,CAAC;IAEF,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,KAAK,qBAAqB,CAAC;IAC1D,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC;QACpC,IAAI,EAAE,4BAA4B;QAClC,aAAa,EAAE,kBAAkB;YAC/B,CAAC,CAAC,+BAA+B,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;YAC3D,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;QACnD,MAAM;QACN,KAAK;KACN,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC;QAChC,WAAW,EAAE,UAAU;QACvB,SAAS,EAAE,QAAQ,CAAC,EAAE;QACtB,SAAS,EAAE;YACT,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,QAAQ,EAAE;oBACR,WAAW,EAAE,MAAM,CAAC,QAAQ,EAAE,WAAW;iBAC1C;aACF;YACD,SAAS;YACT,QAAQ;YACR,mBAAmB;YACnB,kBAAkB;YAClB,QAAQ,EAAE;gBACR,EAAE,EAAE,QAAQ,CAAC,EAAE;gBACf,QAAQ,EAAE;oBACR,qBAAqB,EAAE;wBACrB,4BAA4B,EAC1B,MAAM,CAAC,QAAQ,CAAC,qBAAqB;6BAClC,4BAA4B;qBAClC;iBACF;aACF;YACD,KAAK;SACN;QACD,GAAG,QAAQ,CAAC,KAAK;KAClB,CAAC,CAAC;IAEH,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,QAAQ,CAAC;IAE9C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CACT,oEAAoE,CACrE,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CACJ,WAAW,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,EAAE,WAAW,IAAI,MAAM,CAAC,IAAI,8CAA8C,EACxJ;QACE,YAAY;QACZ,UAAU;KACX,CACF,CAAC;IAEF,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;IAE3C,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,cAAc,IAAI,MAAM,CAAC,EAAE,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,wDAAwD,EAAE;YACpE,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,YAAY,EAAE,QAAQ,CAAC,IAAI;YAC3B,SAAS,EAAE,CAAC,CAAC,MAAM;YACnB,UAAU,EAAE,OAAO,MAAM;YACzB,eAAe,EAAE,MAAM,IAAI,cAAc,IAAI,MAAM;YACnD,iBAAiB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;SAChD,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,EAAE,YAAY,EAAE,8BAA8B,EAAE,GAAG,MAExD,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,4DAA4D,EAAE;QACxE,UAAU,EAAE,MAAM,CAAC,IAAI;QACvB,YAAY,EAAE,QAAQ,CAAC,IAAI;QAC3B,kBAAkB,EAAE,8BAA8B,CAAC,YAAY;QAC/D,OAAO,EAAE,CAAC,CAAC,8BAA8B,CAAC,IAAI;QAC9C,QAAQ,EAAE,8BAA8B,CAAC,IAAI;YAC3C,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC;YAClD,CAAC,CAAC,EAAE;KACP,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAiB;QACrC,GAAG,8BAA8B;QACjC,mBAAmB,EAAE,QAAQ,EAAE,WAAW,IAAI,EAAE;KACjC,CAAC;IAElB,IAAI,SAAS,CAAC,YAAY,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QACnE,gBAAgB,CAAC,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACzC,IAAI,SAAS,CAAC,SAAS,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YAChE,gBAAgB,CAAC,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;gBACpD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC5C,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;gBAC9C,CAAC;gBACD,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzD,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAW,CAAC;oBAC/C,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;gBACrE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,SAAS,CAAC,YAAY,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9D,gBAAgB,CAAC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACpC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACvD,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAW,CAAC;YAC/C,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,OAAO;QACL,YAAY,EAAE,gBAAgB;QAC9B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE;KACjD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,0BAA0B,CAAC,EACvD,MAAM,EACN,SAAS,EACT,SAAS,EACT,kBAAkB,EAClB,QAAQ,EACR,KAAK,GAC0B;IAC/B,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAC7C,CAAC;IAED,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,EAAE,CAAC;QAEpB,MAAM,eAAe,GAAG,SAAS,CAAC,IAAI,CACpC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,qBAAqB,CACxC,CAAC;QAEF,MAAM,qBAAqB,GAAG,MAAM,uBAAuB,CAAC;YAC1D,MAAM;YACN,SAAS;YACT,QAAQ,EAAE,eAAe;YACzB,kBAAkB;YAClB,QAAQ;YACR,KAAK;SACN,CAAC,CAAC;QAEH,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC3B,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAC7C,CAAC;QAED,MAAM,mBAAmB,GAAG,qBAAqB,CAAC,YAAY,CAAC;QAE/D,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACxC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAE7C,MAAM,mBAAmB,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,eAAe,CAAC,CAAC;QAE3E,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;YACzC,OAAO,uBAAuB,CAAC;gBAC7B,MAAM;gBACN,SAAS;gBACT,QAAQ;gBACR,mBAAmB;gBACnB,kBAAkB;gBAClB,QAAQ;gBACR,KAAK;aACN,CAAC,CAAC;QACL,CAAC,CAAC,CACH,CAAC;QAEF,qDAAqD;QACrD,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CACjC,CAAC,MAAM,EAAwC,EAAE,CAAC,MAAM,KAAK,IAAI,CAClE,CAAC;QAEF,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;QACvD,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;YAClB,MAAM,CACJ,eAAe,SAAS,OAAO,OAAO,CAAC,MAAM,sDAAsD,MAAM,CAAC,IAAI,EAAE,CACjH,CAAC;QACJ,CAAC;QAED,aAAa,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;QACzE,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAE/D,OAAO,CAAC,GAAG,CAAC,mDAAmD,EAAE;YAC/D,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,cAAc,EAAE,SAAS,CAAC,MAAM;YAChC,wBAAwB,EAAE,CAAC,CAAC,qBAAqB;YACjD,uBAAuB,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC;YAC7C,qBAAqB,EAAE,OAAO,CAAC,MAAM;YACrC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM;YACrD,YAAY,EAAE,YAAY,CAAC,MAAM;YACjC,uBAAuB,EAAE,aAAa,CAAC,MAAM;SAC9C,CAAC,CAAC;QAEH,MAAM,CACJ,6BAA6B,EAC7B,IAAI,CAAC,SAAS,CACZ;YACE,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,aAAa,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBACxC,YAAY,EAAE,EAAE,CAAC,YAAY;gBAC7B,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI;gBAClB,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;aAC9C,CAAC,CAAC;SACJ,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;QAEF,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC;IACrC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,iDAAiD,EAAE,KAAK,CAAC,CAAC;QACtE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,YAAoB,EACpB,eAAwB,EACxB,EAAE;IACF,MAAM,YAAY,GAAG,eAAe;QAClC,CAAC,CAAC;;;;;0DAKoD;QACtD,CAAC,CAAC;;;;gDAI0C,CAAC;IAE/C,OAAO;;EAEP,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAoCS,YAAY;;;;;;;;;;;;;uCAaI,YAAY;;CAElD,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAC7C,YAAoB,EACpB,SAAkB,EAClB,EAAE,CAAC;;;;;;EAMH,qBAAqB,CAAC,YAAY,EAAE,SAAS,CAAC;;CAE/C,CAAC"}
|