@noyrax/5d-database-plugin 0.1.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/ADR_VORSCHLAEGE.md +247 -0
- package/CHROMADB_SETUP.md +69 -0
- package/IMPROVEMENT_ROADMAP.md +435 -0
- package/INSTALLATION_READINESS.md +150 -0
- package/KNOWN_ISSUES.md +210 -0
- package/LICENSE +21 -0
- package/MCP_SERVER_SETUP.md +359 -0
- package/MCP_SERVER_TEST_REPORT.md +206 -0
- package/NOYRAX_INTEGRATION.md +224 -0
- package/QUICK_START.md +316 -0
- package/README.md +240 -0
- package/SETUP_NEW_PROJECT.md +260 -0
- package/SYSTEM_ANALYSIS_REPORT.md +341 -0
- package/out/api/adr-api.d.ts +22 -0
- package/out/api/adr-api.d.ts.map +1 -0
- package/out/api/adr-api.js +38 -0
- package/out/api/adr-api.js.map +1 -0
- package/out/api/bootstrap-api.d.ts +43 -0
- package/out/api/bootstrap-api.d.ts.map +1 -0
- package/out/api/bootstrap-api.js +88 -0
- package/out/api/bootstrap-api.js.map +1 -0
- package/out/api/change-api.d.ts +30 -0
- package/out/api/change-api.d.ts.map +1 -0
- package/out/api/change-api.js +54 -0
- package/out/api/change-api.js.map +1 -0
- package/out/api/context-builder.d.ts +81 -0
- package/out/api/context-builder.d.ts.map +1 -0
- package/out/api/context-builder.js +288 -0
- package/out/api/context-builder.js.map +1 -0
- package/out/api/cross-dimension-api.d.ts +43 -0
- package/out/api/cross-dimension-api.d.ts.map +1 -0
- package/out/api/cross-dimension-api.js +55 -0
- package/out/api/cross-dimension-api.js.map +1 -0
- package/out/api/dependency-api.d.ts +26 -0
- package/out/api/dependency-api.d.ts.map +1 -0
- package/out/api/dependency-api.js +46 -0
- package/out/api/dependency-api.js.map +1 -0
- package/out/api/learning-path-api.d.ts +49 -0
- package/out/api/learning-path-api.d.ts.map +1 -0
- package/out/api/learning-path-api.js +174 -0
- package/out/api/learning-path-api.js.map +1 -0
- package/out/api/module-api.d.ts +26 -0
- package/out/api/module-api.d.ts.map +1 -0
- package/out/api/module-api.js +46 -0
- package/out/api/module-api.js.map +1 -0
- package/out/api/search-api.d.ts +64 -0
- package/out/api/search-api.d.ts.map +1 -0
- package/out/api/search-api.js +235 -0
- package/out/api/search-api.js.map +1 -0
- package/out/api/self-explanation-api.d.ts +71 -0
- package/out/api/self-explanation-api.d.ts.map +1 -0
- package/out/api/self-explanation-api.js +153 -0
- package/out/api/self-explanation-api.js.map +1 -0
- package/out/api/semantic-search-api.d.ts +64 -0
- package/out/api/semantic-search-api.d.ts.map +1 -0
- package/out/api/semantic-search-api.js +205 -0
- package/out/api/semantic-search-api.js.map +1 -0
- package/out/api/symbol-api.d.ts +22 -0
- package/out/api/symbol-api.d.ts.map +1 -0
- package/out/api/symbol-api.js +38 -0
- package/out/api/symbol-api.js.map +1 -0
- package/out/api/vector-api.d.ts +26 -0
- package/out/api/vector-api.d.ts.map +1 -0
- package/out/api/vector-api.js +49 -0
- package/out/api/vector-api.js.map +1 -0
- package/out/cli/embedding-cli.d.ts +3 -0
- package/out/cli/embedding-cli.d.ts.map +1 -0
- package/out/cli/embedding-cli.js +151 -0
- package/out/cli/embedding-cli.js.map +1 -0
- package/out/cli/ingest-cli.d.ts +3 -0
- package/out/cli/ingest-cli.d.ts.map +1 -0
- package/out/cli/ingest-cli.js +145 -0
- package/out/cli/ingest-cli.js.map +1 -0
- package/out/cli/mcp-server-cli.d.ts +3 -0
- package/out/cli/mcp-server-cli.d.ts.map +1 -0
- package/out/cli/mcp-server-cli.js +159 -0
- package/out/cli/mcp-server-cli.js.map +1 -0
- package/out/cli/query-cli.d.ts +3 -0
- package/out/cli/query-cli.d.ts.map +1 -0
- package/out/cli/query-cli.js +217 -0
- package/out/cli/query-cli.js.map +1 -0
- package/out/cli/semantic-search-cli.d.ts +3 -0
- package/out/cli/semantic-search-cli.d.ts.map +1 -0
- package/out/cli/semantic-search-cli.js +196 -0
- package/out/cli/semantic-search-cli.js.map +1 -0
- package/out/cli/test-chromadb.d.ts +3 -0
- package/out/cli/test-chromadb.d.ts.map +1 -0
- package/out/cli/test-chromadb.js +204 -0
- package/out/cli/test-chromadb.js.map +1 -0
- package/out/cli/test-v-dimension.d.ts +3 -0
- package/out/cli/test-v-dimension.d.ts.map +1 -0
- package/out/cli/test-v-dimension.js +330 -0
- package/out/cli/test-v-dimension.js.map +1 -0
- package/out/cli/tool-cli.d.ts +3 -0
- package/out/cli/tool-cli.d.ts.map +1 -0
- package/out/cli/tool-cli.js +237 -0
- package/out/cli/tool-cli.js.map +1 -0
- package/out/cli/verify-openai-key.d.ts +3 -0
- package/out/cli/verify-openai-key.d.ts.map +1 -0
- package/out/cli/verify-openai-key.js +141 -0
- package/out/cli/verify-openai-key.js.map +1 -0
- package/out/cli/verify-vss-status.d.ts +3 -0
- package/out/cli/verify-vss-status.d.ts.map +1 -0
- package/out/cli/verify-vss-status.js +185 -0
- package/out/cli/verify-vss-status.js.map +1 -0
- package/out/core/chromadb-vector-database.d.ts +52 -0
- package/out/core/chromadb-vector-database.d.ts.map +1 -0
- package/out/core/chromadb-vector-database.js +276 -0
- package/out/core/chromadb-vector-database.js.map +1 -0
- package/out/core/docs-path-resolver.d.ts +43 -0
- package/out/core/docs-path-resolver.d.ts.map +1 -0
- package/out/core/docs-path-resolver.js +137 -0
- package/out/core/docs-path-resolver.js.map +1 -0
- package/out/core/id-mapper.d.ts +68 -0
- package/out/core/id-mapper.d.ts.map +1 -0
- package/out/core/id-mapper.js +132 -0
- package/out/core/id-mapper.js.map +1 -0
- package/out/core/migration-manager.d.ts +75 -0
- package/out/core/migration-manager.d.ts.map +1 -0
- package/out/core/migration-manager.js +212 -0
- package/out/core/migration-manager.js.map +1 -0
- package/out/core/multi-db-manager.d.ts +84 -0
- package/out/core/multi-db-manager.d.ts.map +1 -0
- package/out/core/multi-db-manager.js +206 -0
- package/out/core/multi-db-manager.js.map +1 -0
- package/out/core/transaction-manager.d.ts +69 -0
- package/out/core/transaction-manager.d.ts.map +1 -0
- package/out/core/transaction-manager.js +138 -0
- package/out/core/transaction-manager.js.map +1 -0
- package/out/core/vector-database-factory.d.ts +25 -0
- package/out/core/vector-database-factory.d.ts.map +1 -0
- package/out/core/vector-database-factory.js +82 -0
- package/out/core/vector-database-factory.js.map +1 -0
- package/out/core/vector-database-interface.d.ts +50 -0
- package/out/core/vector-database-interface.d.ts.map +1 -0
- package/out/core/vector-database-interface.js +3 -0
- package/out/core/vector-database-interface.js.map +1 -0
- package/out/core/vss-loader.d.ts +29 -0
- package/out/core/vss-loader.d.ts.map +1 -0
- package/out/core/vss-loader.js +150 -0
- package/out/core/vss-loader.js.map +1 -0
- package/out/core/vss-manager.d.ts +81 -0
- package/out/core/vss-manager.d.ts.map +1 -0
- package/out/core/vss-manager.js +323 -0
- package/out/core/vss-manager.js.map +1 -0
- package/out/core/vss-vector-database.d.ts +71 -0
- package/out/core/vss-vector-database.d.ts.map +1 -0
- package/out/core/vss-vector-database.js +284 -0
- package/out/core/vss-vector-database.js.map +1 -0
- package/out/embedding/embedding-generator.d.ts +45 -0
- package/out/embedding/embedding-generator.d.ts.map +1 -0
- package/out/embedding/embedding-generator.js +143 -0
- package/out/embedding/embedding-generator.js.map +1 -0
- package/out/embedding/embedding-pipeline.d.ts +42 -0
- package/out/embedding/embedding-pipeline.d.ts.map +1 -0
- package/out/embedding/embedding-pipeline.js +290 -0
- package/out/embedding/embedding-pipeline.js.map +1 -0
- package/out/extension.d.ts +10 -0
- package/out/extension.d.ts.map +1 -0
- package/out/extension.js +164 -0
- package/out/extension.js.map +1 -0
- package/out/ingestors/adr-ingestor.d.ts +41 -0
- package/out/ingestors/adr-ingestor.d.ts.map +1 -0
- package/out/ingestors/adr-ingestor.js +329 -0
- package/out/ingestors/adr-ingestor.js.map +1 -0
- package/out/ingestors/base-ingestor.d.ts +30 -0
- package/out/ingestors/base-ingestor.d.ts.map +1 -0
- package/out/ingestors/base-ingestor.js +3 -0
- package/out/ingestors/base-ingestor.js.map +1 -0
- package/out/ingestors/change-ingestor.d.ts +36 -0
- package/out/ingestors/change-ingestor.d.ts.map +1 -0
- package/out/ingestors/change-ingestor.js +216 -0
- package/out/ingestors/change-ingestor.js.map +1 -0
- package/out/ingestors/dependency-ingestor.d.ts +32 -0
- package/out/ingestors/dependency-ingestor.d.ts.map +1 -0
- package/out/ingestors/dependency-ingestor.js +194 -0
- package/out/ingestors/dependency-ingestor.js.map +1 -0
- package/out/ingestors/module-ingestor.d.ts +27 -0
- package/out/ingestors/module-ingestor.d.ts.map +1 -0
- package/out/ingestors/module-ingestor.js +137 -0
- package/out/ingestors/module-ingestor.js.map +1 -0
- package/out/ingestors/symbol-ingestor.d.ts +26 -0
- package/out/ingestors/symbol-ingestor.d.ts.map +1 -0
- package/out/ingestors/symbol-ingestor.js +183 -0
- package/out/ingestors/symbol-ingestor.js.map +1 -0
- package/out/mcp/resources/adrs.d.ts +13 -0
- package/out/mcp/resources/adrs.d.ts.map +1 -0
- package/out/mcp/resources/adrs.js +26 -0
- package/out/mcp/resources/adrs.js.map +1 -0
- package/out/mcp/resources/changes.d.ts +13 -0
- package/out/mcp/resources/changes.d.ts.map +1 -0
- package/out/mcp/resources/changes.js +26 -0
- package/out/mcp/resources/changes.js.map +1 -0
- package/out/mcp/resources/dependencies.d.ts +13 -0
- package/out/mcp/resources/dependencies.d.ts.map +1 -0
- package/out/mcp/resources/dependencies.js +26 -0
- package/out/mcp/resources/dependencies.js.map +1 -0
- package/out/mcp/resources/modules.d.ts +13 -0
- package/out/mcp/resources/modules.d.ts.map +1 -0
- package/out/mcp/resources/modules.js +26 -0
- package/out/mcp/resources/modules.js.map +1 -0
- package/out/mcp/resources/symbols.d.ts +13 -0
- package/out/mcp/resources/symbols.d.ts.map +1 -0
- package/out/mcp/resources/symbols.js +26 -0
- package/out/mcp/resources/symbols.js.map +1 -0
- package/out/mcp/server.d.ts +29 -0
- package/out/mcp/server.d.ts.map +1 -0
- package/out/mcp/server.js +300 -0
- package/out/mcp/server.js.map +1 -0
- package/out/mcp/tools/architecture-mining.d.ts +46 -0
- package/out/mcp/tools/architecture-mining.d.ts.map +1 -0
- package/out/mcp/tools/architecture-mining.js +272 -0
- package/out/mcp/tools/architecture-mining.js.map +1 -0
- package/out/mcp/tools/bootstrap.d.ts +9 -0
- package/out/mcp/tools/bootstrap.d.ts.map +1 -0
- package/out/mcp/tools/bootstrap.js +14 -0
- package/out/mcp/tools/bootstrap.js.map +1 -0
- package/out/mcp/tools/cross-analysis.d.ts +18 -0
- package/out/mcp/tools/cross-analysis.d.ts.map +1 -0
- package/out/mcp/tools/cross-analysis.js +23 -0
- package/out/mcp/tools/cross-analysis.js.map +1 -0
- package/out/mcp/tools/gap-analysis.d.ts +34 -0
- package/out/mcp/tools/gap-analysis.d.ts.map +1 -0
- package/out/mcp/tools/gap-analysis.js +106 -0
- package/out/mcp/tools/gap-analysis.js.map +1 -0
- package/out/mcp/tools/learning-path.d.ts +10 -0
- package/out/mcp/tools/learning-path.d.ts.map +1 -0
- package/out/mcp/tools/learning-path.js +18 -0
- package/out/mcp/tools/learning-path.js.map +1 -0
- package/out/mcp/tools/query-dependencies.d.ts +18 -0
- package/out/mcp/tools/query-dependencies.d.ts.map +1 -0
- package/out/mcp/tools/query-dependencies.js +31 -0
- package/out/mcp/tools/query-dependencies.js.map +1 -0
- package/out/mcp/tools/query-modules.d.ts +17 -0
- package/out/mcp/tools/query-modules.d.ts.map +1 -0
- package/out/mcp/tools/query-modules.js +22 -0
- package/out/mcp/tools/query-modules.js.map +1 -0
- package/out/mcp/tools/query-symbols.d.ts +18 -0
- package/out/mcp/tools/query-symbols.d.ts.map +1 -0
- package/out/mcp/tools/query-symbols.js +32 -0
- package/out/mcp/tools/query-symbols.js.map +1 -0
- package/out/mcp/tools/semantic-discovery.d.ts +12 -0
- package/out/mcp/tools/semantic-discovery.d.ts.map +1 -0
- package/out/mcp/tools/semantic-discovery.js +35 -0
- package/out/mcp/tools/semantic-discovery.js.map +1 -0
- package/out/mcp/tools/system-explanation.d.ts +9 -0
- package/out/mcp/tools/system-explanation.d.ts.map +1 -0
- package/out/mcp/tools/system-explanation.js +14 -0
- package/out/mcp/tools/system-explanation.js.map +1 -0
- package/out/mcp/types.d.ts +19 -0
- package/out/mcp/types.d.ts.map +1 -0
- package/out/mcp/types.js +6 -0
- package/out/mcp/types.js.map +1 -0
- package/out/models/adr.d.ts +26 -0
- package/out/models/adr.d.ts.map +1 -0
- package/out/models/adr.js +3 -0
- package/out/models/adr.js.map +1 -0
- package/out/models/change.d.ts +42 -0
- package/out/models/change.d.ts.map +1 -0
- package/out/models/change.js +3 -0
- package/out/models/change.js.map +1 -0
- package/out/models/dependency.d.ts +37 -0
- package/out/models/dependency.d.ts.map +1 -0
- package/out/models/dependency.js +3 -0
- package/out/models/dependency.js.map +1 -0
- package/out/models/entity-reference.d.ts +20 -0
- package/out/models/entity-reference.d.ts.map +1 -0
- package/out/models/entity-reference.js +19 -0
- package/out/models/entity-reference.js.map +1 -0
- package/out/models/module.d.ts +26 -0
- package/out/models/module.d.ts.map +1 -0
- package/out/models/module.js +3 -0
- package/out/models/module.js.map +1 -0
- package/out/models/symbol.d.ts +31 -0
- package/out/models/symbol.d.ts.map +1 -0
- package/out/models/symbol.js +3 -0
- package/out/models/symbol.js.map +1 -0
- package/out/repositories/adr-repository.d.ts +41 -0
- package/out/repositories/adr-repository.d.ts.map +1 -0
- package/out/repositories/adr-repository.js +128 -0
- package/out/repositories/adr-repository.js.map +1 -0
- package/out/repositories/base-repository.d.ts +86 -0
- package/out/repositories/base-repository.d.ts.map +1 -0
- package/out/repositories/base-repository.js +66 -0
- package/out/repositories/base-repository.js.map +1 -0
- package/out/repositories/change-repository.d.ts +40 -0
- package/out/repositories/change-repository.d.ts.map +1 -0
- package/out/repositories/change-repository.js +150 -0
- package/out/repositories/change-repository.js.map +1 -0
- package/out/repositories/dependency-repository.d.ts +40 -0
- package/out/repositories/dependency-repository.d.ts.map +1 -0
- package/out/repositories/dependency-repository.js +129 -0
- package/out/repositories/dependency-repository.js.map +1 -0
- package/out/repositories/embedding-repository.d.ts +64 -0
- package/out/repositories/embedding-repository.d.ts.map +1 -0
- package/out/repositories/embedding-repository.js +126 -0
- package/out/repositories/embedding-repository.js.map +1 -0
- package/out/repositories/importance-repository.d.ts +63 -0
- package/out/repositories/importance-repository.d.ts.map +1 -0
- package/out/repositories/importance-repository.js +117 -0
- package/out/repositories/importance-repository.js.map +1 -0
- package/out/repositories/module-repository.d.ts +37 -0
- package/out/repositories/module-repository.d.ts.map +1 -0
- package/out/repositories/module-repository.js +122 -0
- package/out/repositories/module-repository.js.map +1 -0
- package/out/repositories/navigation-repository.d.ts +117 -0
- package/out/repositories/navigation-repository.d.ts.map +1 -0
- package/out/repositories/navigation-repository.js +211 -0
- package/out/repositories/navigation-repository.js.map +1 -0
- package/out/repositories/symbol-repository.d.ts +37 -0
- package/out/repositories/symbol-repository.d.ts.map +1 -0
- package/out/repositories/symbol-repository.js +136 -0
- package/out/repositories/symbol-repository.js.map +1 -0
- package/out/services/cross-dimension-linker.d.ts +45 -0
- package/out/services/cross-dimension-linker.d.ts.map +1 -0
- package/out/services/cross-dimension-linker.js +98 -0
- package/out/services/cross-dimension-linker.js.map +1 -0
- package/out/services/importance-scorer.d.ts +47 -0
- package/out/services/importance-scorer.d.ts.map +1 -0
- package/out/services/importance-scorer.js +188 -0
- package/out/services/importance-scorer.js.map +1 -0
- package/out/services/ingestion-orchestrator.d.ts +49 -0
- package/out/services/ingestion-orchestrator.d.ts.map +1 -0
- package/out/services/ingestion-orchestrator.js +140 -0
- package/out/services/ingestion-orchestrator.js.map +1 -0
- package/out/services/navigation-builder.d.ts +29 -0
- package/out/services/navigation-builder.d.ts.map +1 -0
- package/out/services/navigation-builder.js +229 -0
- package/out/services/navigation-builder.js.map +1 -0
- package/out/services/system-model-builder.d.ts +40 -0
- package/out/services/system-model-builder.d.ts.map +1 -0
- package/out/services/system-model-builder.js +88 -0
- package/out/services/system-model-builder.js.map +1 -0
- package/out/ui/commands.d.ts +9 -0
- package/out/ui/commands.d.ts.map +1 -0
- package/out/ui/commands.js +123 -0
- package/out/ui/commands.js.map +1 -0
- package/out/ui/database-explorer.d.ts +27 -0
- package/out/ui/database-explorer.d.ts.map +1 -0
- package/out/ui/database-explorer.js +169 -0
- package/out/ui/database-explorer.js.map +1 -0
- package/out/ui/detail-view-provider.d.ts +86 -0
- package/out/ui/detail-view-provider.d.ts.map +1 -0
- package/out/ui/detail-view-provider.js +1037 -0
- package/out/ui/detail-view-provider.js.map +1 -0
- package/out/ui/search-provider.d.ts +30 -0
- package/out/ui/search-provider.d.ts.map +1 -0
- package/out/ui/search-provider.js +240 -0
- package/out/ui/search-provider.js.map +1 -0
- package/out/ui/status-provider.d.ts +17 -0
- package/out/ui/status-provider.d.ts.map +1 -0
- package/out/ui/status-provider.js +76 -0
- package/out/ui/status-provider.js.map +1 -0
- package/out/validators/consistency-validator.d.ts +37 -0
- package/out/validators/consistency-validator.d.ts.map +1 -0
- package/out/validators/consistency-validator.js +93 -0
- package/out/validators/consistency-validator.js.map +1 -0
- package/out/validators/integrity-validator.d.ts +45 -0
- package/out/validators/integrity-validator.d.ts.map +1 -0
- package/out/validators/integrity-validator.js +115 -0
- package/out/validators/integrity-validator.js.map +1 -0
- package/package.json +173 -0
- package/schemas/sqlite/001_initial_modules.sql +39 -0
- package/schemas/sqlite/002_initial_symbols.sql +46 -0
- package/schemas/sqlite/003_initial_dependencies.sql +51 -0
- package/schemas/sqlite/004_initial_adrs.sql +41 -0
- package/schemas/sqlite/005_initial_changes.sql +54 -0
- package/schemas/sqlite/006_initial_ingestion.sql +34 -0
- package/schemas/sqlite/006_vectors_schema.sql +73 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detail-view-provider.js","sourceRoot":"","sources":["../../src/ui/detail-view-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { MultiDbManager } from '../core/multi-db-manager';
|
|
2
|
+
/**
|
|
3
|
+
* Provider for search functionality using VS Code QuickPick.
|
|
4
|
+
* Uses Semantic Search if available (V-Dimension with embeddings), falls back to Keyword Search.
|
|
5
|
+
*/
|
|
6
|
+
export declare class SearchProvider {
|
|
7
|
+
private dbManager;
|
|
8
|
+
private searchApi;
|
|
9
|
+
private semanticSearchApi;
|
|
10
|
+
private detailViewProvider;
|
|
11
|
+
private pluginId;
|
|
12
|
+
constructor(dbManager: MultiDbManager);
|
|
13
|
+
/**
|
|
14
|
+
* Shows the search QuickPick.
|
|
15
|
+
*/
|
|
16
|
+
showSearch(): Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Groups search results by dimension.
|
|
19
|
+
*/
|
|
20
|
+
private groupByDimension;
|
|
21
|
+
/**
|
|
22
|
+
* Gets a human-readable label for a dimension.
|
|
23
|
+
*/
|
|
24
|
+
private getDimensionLabel;
|
|
25
|
+
/**
|
|
26
|
+
* Handles selection of a search result.
|
|
27
|
+
*/
|
|
28
|
+
private handleResultSelection;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=search-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-provider.d.ts","sourceRoot":"","sources":["../../src/ui/search-provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAM1D;;;GAGG;AACH,qBAAa,cAAc;IACvB,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,iBAAiB,CAAkC;IAC3D,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,QAAQ,CAAS;gBAEb,SAAS,EAAE,cAAc;IAmBrC;;OAEG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAsHxC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAuBxB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAWzB;;OAEG;YACW,qBAAqB;CA8BtC"}
|
|
@@ -0,0 +1,240 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.SearchProvider = void 0;
|
|
37
|
+
const vscode = __importStar(require("vscode"));
|
|
38
|
+
const search_api_1 = require("../api/search-api");
|
|
39
|
+
const semantic_search_api_1 = require("../api/semantic-search-api");
|
|
40
|
+
const embedding_generator_1 = require("../embedding/embedding-generator");
|
|
41
|
+
const detail_view_provider_1 = require("./detail-view-provider");
|
|
42
|
+
/**
|
|
43
|
+
* Provider for search functionality using VS Code QuickPick.
|
|
44
|
+
* Uses Semantic Search if available (V-Dimension with embeddings), falls back to Keyword Search.
|
|
45
|
+
*/
|
|
46
|
+
class SearchProvider {
|
|
47
|
+
constructor(dbManager) {
|
|
48
|
+
this.semanticSearchApi = null;
|
|
49
|
+
this.dbManager = dbManager;
|
|
50
|
+
this.searchApi = new search_api_1.SearchApi(dbManager);
|
|
51
|
+
// Try to initialize Semantic Search (will be null if embeddings not available)
|
|
52
|
+
try {
|
|
53
|
+
const embeddingGenerator = new embedding_generator_1.EmbeddingGenerator();
|
|
54
|
+
if (embeddingGenerator.isConfigured()) {
|
|
55
|
+
this.semanticSearchApi = new semantic_search_api_1.SemanticSearchApi(dbManager, embeddingGenerator);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
// Semantic search not available, will use keyword search
|
|
60
|
+
console.warn('[SearchProvider] Semantic search not available, using keyword search only');
|
|
61
|
+
}
|
|
62
|
+
this.detailViewProvider = new detail_view_provider_1.DetailViewProvider(dbManager);
|
|
63
|
+
this.pluginId = dbManager.getPluginId();
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Shows the search QuickPick.
|
|
67
|
+
*/
|
|
68
|
+
async showSearch() {
|
|
69
|
+
const query = await vscode.window.showInputBox({
|
|
70
|
+
prompt: 'Search across all 5 dimensions (Modules, Symbols, ADRs, Dependencies, Changes)',
|
|
71
|
+
placeHolder: 'Enter search query...'
|
|
72
|
+
});
|
|
73
|
+
if (!query || query.trim().length === 0) {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
try {
|
|
77
|
+
let results = [];
|
|
78
|
+
// Try semantic search first if available
|
|
79
|
+
if (this.semanticSearchApi) {
|
|
80
|
+
try {
|
|
81
|
+
const semanticResults = await this.semanticSearchApi.search(query.trim(), this.pluginId, { limit: 50 });
|
|
82
|
+
// Convert semantic results to SearchResult format
|
|
83
|
+
results = semanticResults.map(sr => {
|
|
84
|
+
// Build label based on dimension
|
|
85
|
+
let label = sr.externalId;
|
|
86
|
+
let filePath = undefined;
|
|
87
|
+
// Try to extract meaningful label from externalId
|
|
88
|
+
if (sr.dimension === 'X') {
|
|
89
|
+
// Module: externalId is file path
|
|
90
|
+
label = sr.externalId;
|
|
91
|
+
filePath = sr.externalId;
|
|
92
|
+
}
|
|
93
|
+
else if (sr.dimension === 'Y') {
|
|
94
|
+
// Symbol: externalId is symbol_id (format: path::symbol_name)
|
|
95
|
+
const parts = sr.externalId.split('::');
|
|
96
|
+
if (parts.length >= 2) {
|
|
97
|
+
label = parts[parts.length - 1]; // symbol name
|
|
98
|
+
filePath = parts.slice(0, -1).join('::'); // path
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
label = sr.externalId;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
else if (sr.dimension === 'W') {
|
|
105
|
+
// ADR: externalId is ADR number or file path
|
|
106
|
+
label = sr.externalId.startsWith('ADR-') ? sr.externalId : `ADR: ${sr.externalId}`;
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
label = sr.externalId;
|
|
110
|
+
}
|
|
111
|
+
return {
|
|
112
|
+
dimension: sr.dimension,
|
|
113
|
+
id: sr.entityId,
|
|
114
|
+
label: label,
|
|
115
|
+
description: `Relevance: ${(sr.score * 100).toFixed(1)}% (Vector: ${(sr.vectorScore * 100).toFixed(1)}%, Importance: ${(sr.importanceScore * 100).toFixed(1)}%)`,
|
|
116
|
+
filePath: filePath,
|
|
117
|
+
metadata: {
|
|
118
|
+
score: sr.score.toString(),
|
|
119
|
+
vectorScore: sr.vectorScore.toString(),
|
|
120
|
+
importanceScore: sr.importanceScore.toString()
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
});
|
|
124
|
+
console.log(`[SearchProvider] Semantic search found ${results.length} results`);
|
|
125
|
+
}
|
|
126
|
+
catch (semanticError) {
|
|
127
|
+
console.warn(`[SearchProvider] Semantic search failed, falling back to keyword search: ${semanticError}`);
|
|
128
|
+
// Fall through to keyword search
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
// Fallback to keyword search if semantic search didn't produce results
|
|
132
|
+
if (results.length === 0) {
|
|
133
|
+
results = await this.searchApi.searchAll(query.trim(), this.pluginId, { limit: 50 });
|
|
134
|
+
console.log(`[SearchProvider] Keyword search found ${results.length} results`);
|
|
135
|
+
}
|
|
136
|
+
if (results.length === 0) {
|
|
137
|
+
vscode.window.showInformationMessage(`No results found for "${query}"`);
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
// Group results by dimension
|
|
141
|
+
const groupedResults = this.groupByDimension(results);
|
|
142
|
+
// Create QuickPick items
|
|
143
|
+
const items = [];
|
|
144
|
+
for (const [dimension, dimensionResults] of Object.entries(groupedResults)) {
|
|
145
|
+
// Add dimension header
|
|
146
|
+
items.push({
|
|
147
|
+
label: `$(folder) ${this.getDimensionLabel(dimension)}`,
|
|
148
|
+
kind: vscode.QuickPickItemKind.Separator
|
|
149
|
+
});
|
|
150
|
+
// Add results for this dimension
|
|
151
|
+
for (const result of dimensionResults) {
|
|
152
|
+
items.push({
|
|
153
|
+
label: result.label,
|
|
154
|
+
description: result.description,
|
|
155
|
+
detail: result.filePath ? `File: ${result.filePath}` : undefined
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
const selected = await vscode.window.showQuickPick(items, {
|
|
160
|
+
placeHolder: `Select a result to view details (${results.length} results found)`,
|
|
161
|
+
matchOnDescription: true,
|
|
162
|
+
matchOnDetail: true
|
|
163
|
+
});
|
|
164
|
+
if (selected && selected.kind !== vscode.QuickPickItemKind.Separator) {
|
|
165
|
+
await this.handleResultSelection(selected.label, results);
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
catch (error) {
|
|
169
|
+
vscode.window.showErrorMessage(`Search failed: ${error}`);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Groups search results by dimension.
|
|
174
|
+
*/
|
|
175
|
+
groupByDimension(results) {
|
|
176
|
+
const grouped = {
|
|
177
|
+
X: [],
|
|
178
|
+
Y: [],
|
|
179
|
+
Z: [],
|
|
180
|
+
W: [],
|
|
181
|
+
T: []
|
|
182
|
+
};
|
|
183
|
+
for (const result of results) {
|
|
184
|
+
grouped[result.dimension].push(result);
|
|
185
|
+
}
|
|
186
|
+
// Remove empty dimensions
|
|
187
|
+
for (const dimension of Object.keys(grouped)) {
|
|
188
|
+
if (grouped[dimension].length === 0) {
|
|
189
|
+
delete grouped[dimension];
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
return grouped;
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Gets a human-readable label for a dimension.
|
|
196
|
+
*/
|
|
197
|
+
getDimensionLabel(dimension) {
|
|
198
|
+
const labels = {
|
|
199
|
+
X: 'Modules',
|
|
200
|
+
Y: 'Symbols',
|
|
201
|
+
Z: 'Dependencies',
|
|
202
|
+
W: 'ADRs',
|
|
203
|
+
T: 'Changes'
|
|
204
|
+
};
|
|
205
|
+
return labels[dimension] || dimension;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Handles selection of a search result.
|
|
209
|
+
*/
|
|
210
|
+
async handleResultSelection(selectedLabel, results) {
|
|
211
|
+
const result = results.find(r => r.label === selectedLabel);
|
|
212
|
+
if (!result) {
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
switch (result.dimension) {
|
|
216
|
+
case 'X':
|
|
217
|
+
// Module - show detail view
|
|
218
|
+
await this.detailViewProvider.showModuleDetail(result.id);
|
|
219
|
+
break;
|
|
220
|
+
case 'Y':
|
|
221
|
+
// Symbol - show detail view
|
|
222
|
+
await this.detailViewProvider.showSymbolDetail(result.id);
|
|
223
|
+
break;
|
|
224
|
+
case 'W':
|
|
225
|
+
// ADR - show detail view
|
|
226
|
+
await this.detailViewProvider.showAdrDetail(result.id);
|
|
227
|
+
break;
|
|
228
|
+
case 'Z':
|
|
229
|
+
// Dependency - show detail view
|
|
230
|
+
await this.detailViewProvider.showDependencyDetail(result.id);
|
|
231
|
+
break;
|
|
232
|
+
case 'T':
|
|
233
|
+
// Change - show detail view
|
|
234
|
+
await this.detailViewProvider.showChangeDetail(result.id);
|
|
235
|
+
break;
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
exports.SearchProvider = SearchProvider;
|
|
240
|
+
//# sourceMappingURL=search-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-provider.js","sourceRoot":"","sources":["../../src/ui/search-provider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AAEjC,kDAA4D;AAC5D,oEAA+D;AAC/D,0EAAsE;AACtE,iEAA4D;AAE5D;;;GAGG;AACH,MAAa,cAAc;IAOvB,YAAY,SAAyB;QAJ7B,sBAAiB,GAA6B,IAAI,CAAC;QAKvD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,sBAAS,CAAC,SAAS,CAAC,CAAC;QAE1C,+EAA+E;QAC/E,IAAI,CAAC;YACD,MAAM,kBAAkB,GAAG,IAAI,wCAAkB,EAAE,CAAC;YACpD,IAAI,kBAAkB,CAAC,YAAY,EAAE,EAAE,CAAC;gBACpC,IAAI,CAAC,iBAAiB,GAAG,IAAI,uCAAiB,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;YAClF,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,yDAAyD;YACzD,OAAO,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;QAC9F,CAAC;QAED,IAAI,CAAC,kBAAkB,GAAG,IAAI,yCAAkB,CAAC,SAAS,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;IAC5C,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,UAAU;QACnB,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;YAC3C,MAAM,EAAE,gFAAgF;YACxF,WAAW,EAAE,uBAAuB;SACvC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtC,OAAO;QACX,CAAC;QAED,IAAI,CAAC;YACD,IAAI,OAAO,GAAmB,EAAE,CAAC;YAEjC,yCAAyC;YACzC,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACzB,IAAI,CAAC;oBACD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CACvD,KAAK,CAAC,IAAI,EAAE,EACZ,IAAI,CAAC,QAAQ,EACb,EAAE,KAAK,EAAE,EAAE,EAAE,CAChB,CAAC;oBAEF,kDAAkD;oBAClD,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;wBAC/B,iCAAiC;wBACjC,IAAI,KAAK,GAAG,EAAE,CAAC,UAAU,CAAC;wBAC1B,IAAI,QAAQ,GAAuB,SAAS,CAAC;wBAE7C,kDAAkD;wBAClD,IAAI,EAAE,CAAC,SAAS,KAAK,GAAG,EAAE,CAAC;4BACvB,kCAAkC;4BAClC,KAAK,GAAG,EAAE,CAAC,UAAU,CAAC;4BACtB,QAAQ,GAAG,EAAE,CAAC,UAAU,CAAC;wBAC7B,CAAC;6BAAM,IAAI,EAAE,CAAC,SAAS,KAAK,GAAG,EAAE,CAAC;4BAC9B,8DAA8D;4BAC9D,MAAM,KAAK,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;4BACxC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gCACpB,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc;gCAC/C,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;4BACrD,CAAC;iCAAM,CAAC;gCACJ,KAAK,GAAG,EAAE,CAAC,UAAU,CAAC;4BAC1B,CAAC;wBACL,CAAC;6BAAM,IAAI,EAAE,CAAC,SAAS,KAAK,GAAG,EAAE,CAAC;4BAC9B,6CAA6C;4BAC7C,KAAK,GAAG,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,CAAC;wBACvF,CAAC;6BAAM,CAAC;4BACJ,KAAK,GAAG,EAAE,CAAC,UAAU,CAAC;wBAC1B,CAAC;wBAED,OAAO;4BACH,SAAS,EAAE,EAAE,CAAC,SAAS;4BACvB,EAAE,EAAE,EAAE,CAAC,QAAQ;4BACf,KAAK,EAAE,KAAK;4BACZ,WAAW,EAAE,cAAc,CAAC,EAAE,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,EAAE,CAAC,eAAe,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;4BAChK,QAAQ,EAAE,QAAQ;4BAClB,QAAQ,EAAE;gCACN,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE;gCAC1B,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE;gCACtC,eAAe,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE;6BACjD;yBACJ,CAAC;oBACN,CAAC,CAAC,CAAC;oBAEH,OAAO,CAAC,GAAG,CAAC,0CAA0C,OAAO,CAAC,MAAM,UAAU,CAAC,CAAC;gBACpF,CAAC;gBAAC,OAAO,aAAa,EAAE,CAAC;oBACrB,OAAO,CAAC,IAAI,CAAC,4EAA4E,aAAa,EAAE,CAAC,CAAC;oBAC1G,iCAAiC;gBACrC,CAAC;YACL,CAAC;YAED,uEAAuE;YACvE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;gBACrF,OAAO,CAAC,GAAG,CAAC,yCAAyC,OAAO,CAAC,MAAM,UAAU,CAAC,CAAC;YACnF,CAAC;YAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,yBAAyB,KAAK,GAAG,CAAC,CAAC;gBACxE,OAAO;YACX,CAAC;YAED,6BAA6B;YAC7B,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAEtD,yBAAyB;YACzB,MAAM,KAAK,GAA2B,EAAE,CAAC;YAEzC,KAAK,MAAM,CAAC,SAAS,EAAE,gBAAgB,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;gBACzE,uBAAuB;gBACvB,KAAK,CAAC,IAAI,CAAC;oBACP,KAAK,EAAE,aAAa,IAAI,CAAC,iBAAiB,CAAC,SAAwC,CAAC,EAAE;oBACtF,IAAI,EAAE,MAAM,CAAC,iBAAiB,CAAC,SAAS;iBAC3C,CAAC,CAAC;gBAEH,iCAAiC;gBACjC,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;oBACpC,KAAK,CAAC,IAAI,CAAC;wBACP,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,WAAW,EAAE,MAAM,CAAC,WAAW;wBAC/B,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;qBACnE,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE;gBACtD,WAAW,EAAE,oCAAoC,OAAO,CAAC,MAAM,iBAAiB;gBAChF,kBAAkB,EAAE,IAAI;gBACxB,aAAa,EAAE,IAAI;aACtB,CAAC,CAAC;YAEH,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,CAAC,iBAAiB,CAAC,SAAS,EAAE,CAAC;gBACnE,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC9D,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,kBAAkB,KAAK,EAAE,CAAC,CAAC;QAC9D,CAAC;IACL,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,OAAuB;QAC5C,MAAM,OAAO,GAAmC;YAC5C,CAAC,EAAE,EAAE;YACL,CAAC,EAAE,EAAE;YACL,CAAC,EAAE,EAAE;YACL,CAAC,EAAE,EAAE;YACL,CAAC,EAAE,EAAE;SACR,CAAC;QAEF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,CAAC;QAED,0BAA0B;QAC1B,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3C,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAClC,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC;YAC9B,CAAC;QACL,CAAC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,SAAsC;QAC5D,MAAM,MAAM,GAA2B;YACnC,CAAC,EAAE,SAAS;YACZ,CAAC,EAAE,SAAS;YACZ,CAAC,EAAE,cAAc;YACjB,CAAC,EAAE,MAAM;YACT,CAAC,EAAE,SAAS;SACf,CAAC;QACF,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC;IAC1C,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,qBAAqB,CAAC,aAAqB,EAAE,OAAuB;QAC9E,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,aAAa,CAAC,CAAC;QAE5D,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,OAAO;QACX,CAAC;QAED,QAAQ,MAAM,CAAC,SAAS,EAAE,CAAC;YACvB,KAAK,GAAG;gBACJ,4BAA4B;gBAC5B,MAAM,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC1D,MAAM;YACV,KAAK,GAAG;gBACJ,4BAA4B;gBAC5B,MAAM,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC1D,MAAM;YACV,KAAK,GAAG;gBACJ,yBAAyB;gBACzB,MAAM,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACvD,MAAM;YACV,KAAK,GAAG;gBACJ,gCAAgC;gBAChC,MAAM,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC9D,MAAM;YACV,KAAK,GAAG;gBACJ,4BAA4B;gBAC5B,MAAM,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC1D,MAAM;QACd,CAAC;IACL,CAAC;CACJ;AA5ND,wCA4NC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import * as vscode from 'vscode';
|
|
2
|
+
import { MultiDbManager } from '../core/multi-db-manager';
|
|
3
|
+
/**
|
|
4
|
+
* Status Bar Provider for 5D Database Plugin.
|
|
5
|
+
* Shows plugin status in the VS Code status bar.
|
|
6
|
+
*/
|
|
7
|
+
export declare class StatusBarProvider {
|
|
8
|
+
private statusBarItem;
|
|
9
|
+
private dbManager;
|
|
10
|
+
constructor(context: vscode.ExtensionContext, dbManager: MultiDbManager);
|
|
11
|
+
/**
|
|
12
|
+
* Updates the status bar with current status.
|
|
13
|
+
*/
|
|
14
|
+
updateStatus(status: 'ready' | 'ingesting' | 'error'): void;
|
|
15
|
+
dispose(): void;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=status-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-provider.d.ts","sourceRoot":"","sources":["../../src/ui/status-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D;;;GAGG;AACH,qBAAa,iBAAiB;IAC1B,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,SAAS,CAAiB;gBAEtB,OAAO,EAAE,MAAM,CAAC,gBAAgB,EAAE,SAAS,EAAE,cAAc;IAWvE;;OAEG;IACI,YAAY,CAAC,MAAM,EAAE,OAAO,GAAG,WAAW,GAAG,OAAO,GAAG,IAAI;IAiBlE,OAAO,IAAI,IAAI;CAGlB"}
|
|
@@ -0,0 +1,76 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.StatusBarProvider = void 0;
|
|
37
|
+
const vscode = __importStar(require("vscode"));
|
|
38
|
+
/**
|
|
39
|
+
* Status Bar Provider for 5D Database Plugin.
|
|
40
|
+
* Shows plugin status in the VS Code status bar.
|
|
41
|
+
*/
|
|
42
|
+
class StatusBarProvider {
|
|
43
|
+
constructor(context, dbManager) {
|
|
44
|
+
this.dbManager = dbManager;
|
|
45
|
+
this.statusBarItem = vscode.window.createStatusBarItem(vscode.StatusBarAlignment.Right, 100);
|
|
46
|
+
this.statusBarItem.command = '5d-database.ingest';
|
|
47
|
+
this.statusBarItem.text = '$(database) 5D DB';
|
|
48
|
+
this.statusBarItem.tooltip = '5D Database Plugin - Click to ingest documentation';
|
|
49
|
+
this.statusBarItem.show();
|
|
50
|
+
context.subscriptions.push(this.statusBarItem);
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Updates the status bar with current status.
|
|
54
|
+
*/
|
|
55
|
+
updateStatus(status) {
|
|
56
|
+
switch (status) {
|
|
57
|
+
case 'ready':
|
|
58
|
+
this.statusBarItem.text = '$(database) 5D DB';
|
|
59
|
+
this.statusBarItem.backgroundColor = undefined;
|
|
60
|
+
break;
|
|
61
|
+
case 'ingesting':
|
|
62
|
+
this.statusBarItem.text = '$(sync~spin) 5D DB Ingesting...';
|
|
63
|
+
this.statusBarItem.backgroundColor = new vscode.ThemeColor('statusBarItem.warningBackground');
|
|
64
|
+
break;
|
|
65
|
+
case 'error':
|
|
66
|
+
this.statusBarItem.text = '$(error) 5D DB Error';
|
|
67
|
+
this.statusBarItem.backgroundColor = new vscode.ThemeColor('statusBarItem.errorBackground');
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
dispose() {
|
|
72
|
+
this.statusBarItem.dispose();
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
exports.StatusBarProvider = StatusBarProvider;
|
|
76
|
+
//# sourceMappingURL=status-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-provider.js","sourceRoot":"","sources":["../../src/ui/status-provider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AAGjC;;;GAGG;AACH,MAAa,iBAAiB;IAI1B,YAAY,OAAgC,EAAE,SAAyB;QACnE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,kBAAkB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC7F,IAAI,CAAC,aAAa,CAAC,OAAO,GAAG,oBAAoB,CAAC;QAClD,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,mBAAmB,CAAC;QAC9C,IAAI,CAAC,aAAa,CAAC,OAAO,GAAG,oDAAoD,CAAC;QAClF,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAE1B,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACI,YAAY,CAAC,MAAuC;QACvD,QAAQ,MAAM,EAAE,CAAC;YACb,KAAK,OAAO;gBACR,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,mBAAmB,CAAC;gBAC9C,IAAI,CAAC,aAAa,CAAC,eAAe,GAAG,SAAS,CAAC;gBAC/C,MAAM;YACV,KAAK,WAAW;gBACZ,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,iCAAiC,CAAC;gBAC5D,IAAI,CAAC,aAAa,CAAC,eAAe,GAAG,IAAI,MAAM,CAAC,UAAU,CAAC,iCAAiC,CAAC,CAAC;gBAC9F,MAAM;YACV,KAAK,OAAO;gBACR,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,sBAAsB,CAAC;gBACjD,IAAI,CAAC,aAAa,CAAC,eAAe,GAAG,IAAI,MAAM,CAAC,UAAU,CAAC,+BAA+B,CAAC,CAAC;gBAC5F,MAAM;QACd,CAAC;IACL,CAAC;IAED,OAAO;QACH,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;IACjC,CAAC;CACJ;AAtCD,8CAsCC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { MultiDbManager } from '../core/multi-db-manager';
|
|
2
|
+
/**
|
|
3
|
+
* Validation result for consistency checks.
|
|
4
|
+
*/
|
|
5
|
+
export interface ConsistencyValidationResult {
|
|
6
|
+
isValid: boolean;
|
|
7
|
+
errors: string[];
|
|
8
|
+
warnings: string[];
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Validates cross-dimension consistency.
|
|
12
|
+
* Checks that all references between dimensions are valid.
|
|
13
|
+
*/
|
|
14
|
+
export declare class ConsistencyValidator {
|
|
15
|
+
private dbManager;
|
|
16
|
+
constructor(dbManager: MultiDbManager);
|
|
17
|
+
/**
|
|
18
|
+
* Validates consistency across all dimensions.
|
|
19
|
+
*
|
|
20
|
+
* @param pluginId The plugin ID
|
|
21
|
+
* @returns Validation result
|
|
22
|
+
*/
|
|
23
|
+
validate(pluginId: string): Promise<ConsistencyValidationResult>;
|
|
24
|
+
/**
|
|
25
|
+
* Validates that all symbols reference existing modules.
|
|
26
|
+
*/
|
|
27
|
+
private validateSymbolModuleLinks;
|
|
28
|
+
/**
|
|
29
|
+
* Validates that all dependencies reference existing modules.
|
|
30
|
+
*/
|
|
31
|
+
private validateDependencyModuleLinks;
|
|
32
|
+
/**
|
|
33
|
+
* Validates that all ADR file mappings reference existing modules.
|
|
34
|
+
*/
|
|
35
|
+
private validateAdrFileLinks;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=consistency-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consistency-validator.d.ts","sourceRoot":"","sources":["../../src/validators/consistency-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAM1D;;GAEG;AACH,MAAM,WAAW,2BAA2B;IACxC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACtB;AAED;;;GAGG;AACH,qBAAa,oBAAoB;IAC7B,OAAO,CAAC,SAAS,CAAiB;gBAEtB,SAAS,EAAE,cAAc;IAIrC;;;;;OAKG;IACU,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAe7E;;OAEG;YACW,yBAAyB;IAsBvC;;OAEG;YACW,6BAA6B;IAyB3C;;OAEG;YACW,oBAAoB;CAwBrC"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ConsistencyValidator = void 0;
|
|
4
|
+
const module_repository_1 = require("../repositories/module-repository");
|
|
5
|
+
const symbol_repository_1 = require("../repositories/symbol-repository");
|
|
6
|
+
const dependency_repository_1 = require("../repositories/dependency-repository");
|
|
7
|
+
const adr_repository_1 = require("../repositories/adr-repository");
|
|
8
|
+
/**
|
|
9
|
+
* Validates cross-dimension consistency.
|
|
10
|
+
* Checks that all references between dimensions are valid.
|
|
11
|
+
*/
|
|
12
|
+
class ConsistencyValidator {
|
|
13
|
+
constructor(dbManager) {
|
|
14
|
+
this.dbManager = dbManager;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Validates consistency across all dimensions.
|
|
18
|
+
*
|
|
19
|
+
* @param pluginId The plugin ID
|
|
20
|
+
* @returns Validation result
|
|
21
|
+
*/
|
|
22
|
+
async validate(pluginId) {
|
|
23
|
+
const errors = [];
|
|
24
|
+
const warnings = [];
|
|
25
|
+
await this.validateSymbolModuleLinks(pluginId, errors, warnings);
|
|
26
|
+
await this.validateDependencyModuleLinks(pluginId, errors, warnings);
|
|
27
|
+
await this.validateAdrFileLinks(pluginId, errors, warnings);
|
|
28
|
+
return {
|
|
29
|
+
isValid: errors.length === 0,
|
|
30
|
+
errors,
|
|
31
|
+
warnings
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Validates that all symbols reference existing modules.
|
|
36
|
+
*/
|
|
37
|
+
async validateSymbolModuleLinks(pluginId, errors, warnings) {
|
|
38
|
+
const symbolDb = await this.dbManager.getDatabase('Y');
|
|
39
|
+
const moduleDb = await this.dbManager.getDatabase('X');
|
|
40
|
+
const symbolRepo = new symbol_repository_1.SymbolRepository(symbolDb);
|
|
41
|
+
const moduleRepo = new module_repository_1.ModuleRepository(moduleDb);
|
|
42
|
+
const symbols = await symbolRepo.getAll(pluginId);
|
|
43
|
+
const modules = await moduleRepo.getAll(pluginId);
|
|
44
|
+
const modulePaths = new Set(modules.map(m => m.file_path));
|
|
45
|
+
for (const symbol of symbols) {
|
|
46
|
+
if (!modulePaths.has(symbol.path)) {
|
|
47
|
+
errors.push(`Symbol ${symbol.symbol_id} references non-existent module ${symbol.path}`);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Validates that all dependencies reference existing modules.
|
|
53
|
+
*/
|
|
54
|
+
async validateDependencyModuleLinks(pluginId, errors, warnings) {
|
|
55
|
+
const depDb = await this.dbManager.getDatabase('Z');
|
|
56
|
+
const moduleDb = await this.dbManager.getDatabase('X');
|
|
57
|
+
const depRepo = new dependency_repository_1.DependencyRepository(depDb);
|
|
58
|
+
const moduleRepo = new module_repository_1.ModuleRepository(moduleDb);
|
|
59
|
+
const dependencies = await depRepo.getAll(pluginId);
|
|
60
|
+
const modules = await moduleRepo.getAll(pluginId);
|
|
61
|
+
const modulePaths = new Set(modules.map(m => m.file_path));
|
|
62
|
+
for (const dep of dependencies) {
|
|
63
|
+
if (!modulePaths.has(dep.from_module)) {
|
|
64
|
+
errors.push(`Dependency from non-existent module ${dep.from_module}`);
|
|
65
|
+
}
|
|
66
|
+
if (!modulePaths.has(dep.to_module)) {
|
|
67
|
+
errors.push(`Dependency to non-existent module ${dep.to_module}`);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Validates that all ADR file mappings reference existing modules.
|
|
73
|
+
*/
|
|
74
|
+
async validateAdrFileLinks(pluginId, errors, warnings) {
|
|
75
|
+
const adrDb = await this.dbManager.getDatabase('W');
|
|
76
|
+
const moduleDb = await this.dbManager.getDatabase('X');
|
|
77
|
+
const adrRepo = new adr_repository_1.AdrRepository(adrDb);
|
|
78
|
+
const moduleRepo = new module_repository_1.ModuleRepository(moduleDb);
|
|
79
|
+
const adrs = await adrRepo.getAll(pluginId);
|
|
80
|
+
const modules = await moduleRepo.getAll(pluginId);
|
|
81
|
+
const modulePaths = new Set(modules.map(m => m.file_path));
|
|
82
|
+
for (const adr of adrs) {
|
|
83
|
+
const mappings = await adrRepo.getAdrFileMappings(adr.id);
|
|
84
|
+
for (const mapping of mappings) {
|
|
85
|
+
if (!modulePaths.has(mapping.file_path)) {
|
|
86
|
+
warnings.push(`ADR ${adr.adr_number} references non-existent file ${mapping.file_path}`);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
exports.ConsistencyValidator = ConsistencyValidator;
|
|
93
|
+
//# sourceMappingURL=consistency-validator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consistency-validator.js","sourceRoot":"","sources":["../../src/validators/consistency-validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { MultiDbManager } from '../core/multi-db-manager';
|
|
2
|
+
/**
|
|
3
|
+
* Validation result for integrity checks.
|
|
4
|
+
*/
|
|
5
|
+
export interface IntegrityValidationResult {
|
|
6
|
+
isValid: boolean;
|
|
7
|
+
errors: string[];
|
|
8
|
+
warnings: string[];
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Validates data integrity within each dimension.
|
|
12
|
+
* Checks for orphaned records, missing foreign keys, etc.
|
|
13
|
+
*/
|
|
14
|
+
export declare class IntegrityValidator {
|
|
15
|
+
private dbManager;
|
|
16
|
+
constructor(dbManager: MultiDbManager);
|
|
17
|
+
/**
|
|
18
|
+
* Validates integrity across all dimensions.
|
|
19
|
+
*
|
|
20
|
+
* @param pluginId The plugin ID
|
|
21
|
+
* @returns Validation result
|
|
22
|
+
*/
|
|
23
|
+
validate(pluginId: string): Promise<IntegrityValidationResult>;
|
|
24
|
+
/**
|
|
25
|
+
* Validates module integrity.
|
|
26
|
+
*/
|
|
27
|
+
private validateModuleIntegrity;
|
|
28
|
+
/**
|
|
29
|
+
* Validates symbol integrity.
|
|
30
|
+
*/
|
|
31
|
+
private validateSymbolIntegrity;
|
|
32
|
+
/**
|
|
33
|
+
* Validates dependency integrity.
|
|
34
|
+
*/
|
|
35
|
+
private validateDependencyIntegrity;
|
|
36
|
+
/**
|
|
37
|
+
* Validates ADR integrity.
|
|
38
|
+
*/
|
|
39
|
+
private validateAdrIntegrity;
|
|
40
|
+
/**
|
|
41
|
+
* Validates change report integrity.
|
|
42
|
+
*/
|
|
43
|
+
private validateChangeIntegrity;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=integrity-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"integrity-validator.d.ts","sourceRoot":"","sources":["../../src/validators/integrity-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAO1D;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACtB;AAED;;;GAGG;AACH,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,SAAS,CAAiB;gBAEtB,SAAS,EAAE,cAAc;IAIrC;;;;;OAKG;IACU,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAiB3E;;OAEG;YACW,uBAAuB;IAoBrC;;OAEG;YACW,uBAAuB;IAoBrC;;OAEG;YACW,2BAA2B;IAiBzC;;OAEG;YACW,oBAAoB;IAoBlC;;OAEG;YACW,uBAAuB;CAmBxC"}
|