mcard-js 2.1.12 → 2.1.13
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/README.md +14 -0
- package/dist/hash/HashValidator.d.ts +14 -0
- package/dist/hash/HashValidator.d.ts.map +1 -0
- package/dist/hash/HashValidator.js +57 -0
- package/dist/hash/HashValidator.js.map +1 -0
- package/dist/index.d.ts +29 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +38 -0
- package/dist/index.js.map +1 -0
- package/dist/model/CardCollection.d.ts +92 -0
- package/dist/model/CardCollection.d.ts.map +1 -0
- package/dist/model/CardCollection.js +217 -0
- package/dist/model/CardCollection.js.map +1 -0
- package/dist/model/ContentTypeInterpreter.d.ts +23 -0
- package/dist/model/ContentTypeInterpreter.d.ts.map +1 -0
- package/dist/model/ContentTypeInterpreter.js +140 -0
- package/dist/model/ContentTypeInterpreter.js.map +1 -0
- package/dist/model/EventProducer.d.ts +10 -0
- package/dist/model/EventProducer.d.ts.map +1 -0
- package/dist/model/EventProducer.js +46 -0
- package/dist/model/EventProducer.js.map +1 -0
- package/dist/model/GTime.d.ts +44 -0
- package/dist/model/GTime.d.ts.map +1 -0
- package/dist/model/GTime.js +91 -0
- package/dist/model/GTime.js.map +1 -0
- package/dist/model/Handle.d.ts +37 -0
- package/dist/model/Handle.d.ts.map +1 -0
- package/dist/model/Handle.js +90 -0
- package/dist/model/Handle.js.map +1 -0
- package/dist/model/MCard.d.ts +43 -0
- package/dist/model/MCard.d.ts.map +1 -0
- package/dist/model/MCard.js +76 -0
- package/dist/model/MCard.js.map +1 -0
- package/dist/model/constants.d.ts +45 -0
- package/dist/model/constants.d.ts.map +1 -0
- package/dist/model/constants.js +27 -0
- package/dist/model/constants.js.map +1 -0
- package/dist/model/detectors/BaseDetector.d.ts +26 -0
- package/dist/model/detectors/BaseDetector.d.ts.map +1 -0
- package/dist/model/detectors/BaseDetector.js +5 -0
- package/dist/model/detectors/BaseDetector.js.map +1 -0
- package/dist/model/detectors/BinaryDetector.d.ts +12 -0
- package/dist/model/detectors/BinaryDetector.d.ts.map +1 -0
- package/dist/model/detectors/BinaryDetector.js +82 -0
- package/dist/model/detectors/BinaryDetector.js.map +1 -0
- package/dist/model/detectors/ContentTypeInterpreter.d.ts +11 -0
- package/dist/model/detectors/ContentTypeInterpreter.d.ts.map +1 -0
- package/dist/model/detectors/ContentTypeInterpreter.js +51 -0
- package/dist/model/detectors/ContentTypeInterpreter.js.map +1 -0
- package/dist/model/detectors/DataFormatDetectors.d.ts +29 -0
- package/dist/model/detectors/DataFormatDetectors.d.ts.map +1 -0
- package/dist/model/detectors/DataFormatDetectors.js +223 -0
- package/dist/model/detectors/DataFormatDetectors.js.map +1 -0
- package/dist/model/detectors/LanguageDetector.d.ts +11 -0
- package/dist/model/detectors/LanguageDetector.d.ts.map +1 -0
- package/dist/model/detectors/LanguageDetector.js +148 -0
- package/dist/model/detectors/LanguageDetector.js.map +1 -0
- package/dist/model/detectors/MarkupDetectors.d.ts +22 -0
- package/dist/model/detectors/MarkupDetectors.d.ts.map +1 -0
- package/dist/model/detectors/MarkupDetectors.js +132 -0
- package/dist/model/detectors/MarkupDetectors.js.map +1 -0
- package/dist/model/detectors/OBJDetector.d.ts +8 -0
- package/dist/model/detectors/OBJDetector.d.ts.map +1 -0
- package/dist/model/detectors/OBJDetector.js +48 -0
- package/dist/model/detectors/OBJDetector.js.map +1 -0
- package/dist/model/detectors/registry.d.ts +13 -0
- package/dist/model/detectors/registry.d.ts.map +1 -0
- package/dist/model/detectors/registry.js +67 -0
- package/dist/model/detectors/registry.js.map +1 -0
- package/dist/monads/Either.d.ts +51 -0
- package/dist/monads/Either.d.ts.map +1 -0
- package/dist/monads/Either.js +82 -0
- package/dist/monads/Either.js.map +1 -0
- package/dist/monads/IO.d.ts +38 -0
- package/dist/monads/IO.d.ts.map +1 -0
- package/dist/monads/IO.js +66 -0
- package/dist/monads/IO.js.map +1 -0
- package/dist/monads/Maybe.d.ts +45 -0
- package/dist/monads/Maybe.d.ts.map +1 -0
- package/dist/monads/Maybe.js +73 -0
- package/dist/monads/Maybe.js.map +1 -0
- package/dist/monads/Reader.d.ts +29 -0
- package/dist/monads/Reader.d.ts.map +1 -0
- package/dist/monads/Reader.js +44 -0
- package/dist/monads/Reader.js.map +1 -0
- package/dist/monads/State.d.ts +33 -0
- package/dist/monads/State.d.ts.map +1 -0
- package/dist/monads/State.js +50 -0
- package/dist/monads/State.js.map +1 -0
- package/dist/monads/Writer.d.ts +29 -0
- package/dist/monads/Writer.d.ts.map +1 -0
- package/dist/monads/Writer.js +46 -0
- package/dist/monads/Writer.js.map +1 -0
- package/dist/ptr/FaroSidecar.d.ts +56 -0
- package/dist/ptr/FaroSidecar.d.ts.map +1 -0
- package/dist/ptr/FaroSidecar.js +102 -0
- package/dist/ptr/FaroSidecar.js.map +1 -0
- package/dist/ptr/LensProtocol.d.ts +84 -0
- package/dist/ptr/LensProtocol.d.ts.map +1 -0
- package/dist/ptr/LensProtocol.js +98 -0
- package/dist/ptr/LensProtocol.js.map +1 -0
- package/dist/ptr/SandboxWorker.d.ts +54 -0
- package/dist/ptr/SandboxWorker.d.ts.map +1 -0
- package/dist/ptr/SandboxWorker.js +172 -0
- package/dist/ptr/SandboxWorker.js.map +1 -0
- package/dist/ptr/common_types.d.ts +39 -0
- package/dist/ptr/common_types.d.ts.map +1 -0
- package/dist/ptr/common_types.js +12 -0
- package/dist/ptr/common_types.js.map +1 -0
- package/dist/ptr/lambda/AlphaConversion.d.ts +42 -0
- package/dist/ptr/lambda/AlphaConversion.d.ts.map +1 -0
- package/dist/ptr/lambda/AlphaConversion.js +244 -0
- package/dist/ptr/lambda/AlphaConversion.js.map +1 -0
- package/dist/ptr/lambda/BetaReduction.d.ts +73 -0
- package/dist/ptr/lambda/BetaReduction.d.ts.map +1 -0
- package/dist/ptr/lambda/BetaReduction.js +322 -0
- package/dist/ptr/lambda/BetaReduction.js.map +1 -0
- package/dist/ptr/lambda/EtaConversion.d.ts +65 -0
- package/dist/ptr/lambda/EtaConversion.d.ts.map +1 -0
- package/dist/ptr/lambda/EtaConversion.js +228 -0
- package/dist/ptr/lambda/EtaConversion.js.map +1 -0
- package/dist/ptr/lambda/FreeVariables.d.ts +44 -0
- package/dist/ptr/lambda/FreeVariables.d.ts.map +1 -0
- package/dist/ptr/lambda/FreeVariables.js +207 -0
- package/dist/ptr/lambda/FreeVariables.js.map +1 -0
- package/dist/ptr/lambda/LambdaRuntime.d.ts +80 -0
- package/dist/ptr/lambda/LambdaRuntime.d.ts.map +1 -0
- package/dist/ptr/lambda/LambdaRuntime.js +433 -0
- package/dist/ptr/lambda/LambdaRuntime.js.map +1 -0
- package/dist/ptr/lambda/LambdaTerm.d.ts +95 -0
- package/dist/ptr/lambda/LambdaTerm.d.ts.map +1 -0
- package/dist/ptr/lambda/LambdaTerm.js +159 -0
- package/dist/ptr/lambda/LambdaTerm.js.map +1 -0
- package/dist/ptr/lambda/index.d.ts +24 -0
- package/dist/ptr/lambda/index.d.ts.map +1 -0
- package/dist/ptr/lambda/index.js +34 -0
- package/dist/ptr/lambda/index.js.map +1 -0
- package/dist/ptr/llm/Config.d.ts +57 -0
- package/dist/ptr/llm/Config.d.ts.map +1 -0
- package/dist/ptr/llm/Config.js +183 -0
- package/dist/ptr/llm/Config.js.map +1 -0
- package/dist/ptr/llm/LLMRuntime.d.ts +35 -0
- package/dist/ptr/llm/LLMRuntime.d.ts.map +1 -0
- package/dist/ptr/llm/LLMRuntime.js +176 -0
- package/dist/ptr/llm/LLMRuntime.js.map +1 -0
- package/dist/ptr/llm/providers/LLMProvider.d.ts +43 -0
- package/dist/ptr/llm/providers/LLMProvider.d.ts.map +1 -0
- package/dist/ptr/llm/providers/LLMProvider.js +31 -0
- package/dist/ptr/llm/providers/LLMProvider.js.map +1 -0
- package/dist/ptr/llm/providers/MLCLLMProvider.d.ts +22 -0
- package/dist/ptr/llm/providers/MLCLLMProvider.d.ts.map +1 -0
- package/dist/ptr/llm/providers/MLCLLMProvider.js +155 -0
- package/dist/ptr/llm/providers/MLCLLMProvider.js.map +1 -0
- package/dist/ptr/llm/providers/OllamaEmbeddingProvider.d.ts +20 -0
- package/dist/ptr/llm/providers/OllamaEmbeddingProvider.d.ts.map +1 -0
- package/dist/ptr/llm/providers/OllamaEmbeddingProvider.js +42 -0
- package/dist/ptr/llm/providers/OllamaEmbeddingProvider.js.map +1 -0
- package/dist/ptr/llm/providers/OllamaProvider.d.ts +21 -0
- package/dist/ptr/llm/providers/OllamaProvider.d.ts.map +1 -0
- package/dist/ptr/llm/providers/OllamaProvider.js +158 -0
- package/dist/ptr/llm/providers/OllamaProvider.js.map +1 -0
- package/dist/ptr/llm/providers/WebLLMProvider.d.ts +22 -0
- package/dist/ptr/llm/providers/WebLLMProvider.d.ts.map +1 -0
- package/dist/ptr/llm/providers/WebLLMProvider.js +151 -0
- package/dist/ptr/llm/providers/WebLLMProvider.js.map +1 -0
- package/dist/ptr/node/Action.d.ts +426 -0
- package/dist/ptr/node/Action.d.ts.map +1 -0
- package/dist/ptr/node/Action.js +711 -0
- package/dist/ptr/node/Action.js.map +1 -0
- package/dist/ptr/node/CLMLoader.d.ts +18 -0
- package/dist/ptr/node/CLMLoader.d.ts.map +1 -0
- package/dist/ptr/node/CLMLoader.js +18 -0
- package/dist/ptr/node/CLMLoader.js.map +1 -0
- package/dist/ptr/node/CLMRunner.d.ts +34 -0
- package/dist/ptr/node/CLMRunner.d.ts.map +1 -0
- package/dist/ptr/node/CLMRunner.js +36 -0
- package/dist/ptr/node/CLMRunner.js.map +1 -0
- package/dist/ptr/node/FileSystemUtils.d.ts +40 -0
- package/dist/ptr/node/FileSystemUtils.d.ts.map +1 -0
- package/dist/ptr/node/FileSystemUtils.js +170 -0
- package/dist/ptr/node/FileSystemUtils.js.map +1 -0
- package/dist/ptr/node/NetworkConfig.d.ts +191 -0
- package/dist/ptr/node/NetworkConfig.d.ts.map +1 -0
- package/dist/ptr/node/NetworkConfig.js +8 -0
- package/dist/ptr/node/NetworkConfig.js.map +1 -0
- package/dist/ptr/node/NetworkRuntime.d.ts +38 -0
- package/dist/ptr/node/NetworkRuntime.d.ts.map +1 -0
- package/dist/ptr/node/NetworkRuntime.js +871 -0
- package/dist/ptr/node/NetworkRuntime.js.map +1 -0
- package/dist/ptr/node/P2PChatSession.d.ts +53 -0
- package/dist/ptr/node/P2PChatSession.d.ts.map +1 -0
- package/dist/ptr/node/P2PChatSession.js +154 -0
- package/dist/ptr/node/P2PChatSession.js.map +1 -0
- package/dist/ptr/node/RuntimeInterface.d.ts +4 -0
- package/dist/ptr/node/RuntimeInterface.d.ts.map +1 -0
- package/dist/ptr/node/RuntimeInterface.js +2 -0
- package/dist/ptr/node/RuntimeInterface.js.map +1 -0
- package/dist/ptr/node/Runtimes.d.ts +34 -0
- package/dist/ptr/node/Runtimes.d.ts.map +1 -0
- package/dist/ptr/node/Runtimes.js +38 -0
- package/dist/ptr/node/Runtimes.js.map +1 -0
- package/dist/ptr/node/SignalingServer.d.ts +37 -0
- package/dist/ptr/node/SignalingServer.d.ts.map +1 -0
- package/dist/ptr/node/SignalingServer.js +218 -0
- package/dist/ptr/node/SignalingServer.js.map +1 -0
- package/dist/ptr/node/cli.d.ts +3 -0
- package/dist/ptr/node/cli.d.ts.map +1 -0
- package/dist/ptr/node/cli.js +266 -0
- package/dist/ptr/node/cli.js.map +1 -0
- package/dist/ptr/node/clm/builtins/handle.d.ts +14 -0
- package/dist/ptr/node/clm/builtins/handle.d.ts.map +1 -0
- package/dist/ptr/node/clm/builtins/handle.js +177 -0
- package/dist/ptr/node/clm/builtins/handle.js.map +1 -0
- package/dist/ptr/node/clm/builtins/index.d.ts +20 -0
- package/dist/ptr/node/clm/builtins/index.d.ts.map +1 -0
- package/dist/ptr/node/clm/builtins/index.js +60 -0
- package/dist/ptr/node/clm/builtins/index.js.map +1 -0
- package/dist/ptr/node/clm/index.d.ts +25 -0
- package/dist/ptr/node/clm/index.d.ts.map +1 -0
- package/dist/ptr/node/clm/index.js +28 -0
- package/dist/ptr/node/clm/index.js.map +1 -0
- package/dist/ptr/node/clm/loader.d.ts +25 -0
- package/dist/ptr/node/clm/loader.d.ts.map +1 -0
- package/dist/ptr/node/clm/loader.js +146 -0
- package/dist/ptr/node/clm/loader.js.map +1 -0
- package/dist/ptr/node/clm/multiruntime.d.ts +9 -0
- package/dist/ptr/node/clm/multiruntime.d.ts.map +1 -0
- package/dist/ptr/node/clm/multiruntime.js +121 -0
- package/dist/ptr/node/clm/multiruntime.js.map +1 -0
- package/dist/ptr/node/clm/runner.d.ts +70 -0
- package/dist/ptr/node/clm/runner.d.ts.map +1 -0
- package/dist/ptr/node/clm/runner.js +324 -0
- package/dist/ptr/node/clm/runner.js.map +1 -0
- package/dist/ptr/node/clm/types.d.ts +166 -0
- package/dist/ptr/node/clm/types.d.ts.map +1 -0
- package/dist/ptr/node/clm/types.js +5 -0
- package/dist/ptr/node/clm/types.js.map +1 -0
- package/dist/ptr/node/clm/utils.d.ts +29 -0
- package/dist/ptr/node/clm/utils.d.ts.map +1 -0
- package/dist/ptr/node/clm/utils.js +88 -0
- package/dist/ptr/node/clm/utils.js.map +1 -0
- package/dist/ptr/node/network/HttpClient.d.ts +14 -0
- package/dist/ptr/node/network/HttpClient.d.ts.map +1 -0
- package/dist/ptr/node/network/HttpClient.js +139 -0
- package/dist/ptr/node/network/HttpClient.js.map +1 -0
- package/dist/ptr/node/network/MCardSerialization.d.ts +19 -0
- package/dist/ptr/node/network/MCardSerialization.d.ts.map +1 -0
- package/dist/ptr/node/network/MCardSerialization.js +41 -0
- package/dist/ptr/node/network/MCardSerialization.js.map +1 -0
- package/dist/ptr/node/network/NetworkInfrastructure.d.ts +37 -0
- package/dist/ptr/node/network/NetworkInfrastructure.d.ts.map +1 -0
- package/dist/ptr/node/network/NetworkInfrastructure.js +121 -0
- package/dist/ptr/node/network/NetworkInfrastructure.js.map +1 -0
- package/dist/ptr/node/network/NetworkSecurity.d.ts +24 -0
- package/dist/ptr/node/network/NetworkSecurity.d.ts.map +1 -0
- package/dist/ptr/node/network/NetworkSecurity.js +104 -0
- package/dist/ptr/node/network/NetworkSecurity.js.map +1 -0
- package/dist/ptr/node/runtimes/base.d.ts +31 -0
- package/dist/ptr/node/runtimes/base.d.ts.map +1 -0
- package/dist/ptr/node/runtimes/base.js +33 -0
- package/dist/ptr/node/runtimes/base.js.map +1 -0
- package/dist/ptr/node/runtimes/binary.d.ts +10 -0
- package/dist/ptr/node/runtimes/binary.d.ts.map +1 -0
- package/dist/ptr/node/runtimes/binary.js +16 -0
- package/dist/ptr/node/runtimes/binary.js.map +1 -0
- package/dist/ptr/node/runtimes/factory.d.ts +22 -0
- package/dist/ptr/node/runtimes/factory.d.ts.map +1 -0
- package/dist/ptr/node/runtimes/factory.js +152 -0
- package/dist/ptr/node/runtimes/factory.js.map +1 -0
- package/dist/ptr/node/runtimes/index.d.ts +28 -0
- package/dist/ptr/node/runtimes/index.d.ts.map +1 -0
- package/dist/ptr/node/runtimes/index.js +30 -0
- package/dist/ptr/node/runtimes/index.js.map +1 -0
- package/dist/ptr/node/runtimes/javascript.d.ts +22 -0
- package/dist/ptr/node/runtimes/javascript.d.ts.map +1 -0
- package/dist/ptr/node/runtimes/javascript.js +125 -0
- package/dist/ptr/node/runtimes/javascript.js.map +1 -0
- package/dist/ptr/node/runtimes/lean.d.ts +10 -0
- package/dist/ptr/node/runtimes/lean.d.ts.map +1 -0
- package/dist/ptr/node/runtimes/lean.js +60 -0
- package/dist/ptr/node/runtimes/lean.js.map +1 -0
- package/dist/ptr/node/runtimes/loader.d.ts +21 -0
- package/dist/ptr/node/runtimes/loader.d.ts.map +1 -0
- package/dist/ptr/node/runtimes/loader.js +126 -0
- package/dist/ptr/node/runtimes/loader.js.map +1 -0
- package/dist/ptr/node/runtimes/python.d.ts +14 -0
- package/dist/ptr/node/runtimes/python.d.ts.map +1 -0
- package/dist/ptr/node/runtimes/python.js +100 -0
- package/dist/ptr/node/runtimes/python.js.map +1 -0
- package/dist/ptr/node/runtimes/wasm.d.ts +10 -0
- package/dist/ptr/node/runtimes/wasm.d.ts.map +1 -0
- package/dist/ptr/node/runtimes/wasm.js +55 -0
- package/dist/ptr/node/runtimes/wasm.js.map +1 -0
- package/dist/rag/GraphRAGEngine.d.ts +26 -0
- package/dist/rag/GraphRAGEngine.d.ts.map +1 -0
- package/dist/rag/GraphRAGEngine.js +166 -0
- package/dist/rag/GraphRAGEngine.js.map +1 -0
- package/dist/rag/HandleVectorStore.d.ts +201 -0
- package/dist/rag/HandleVectorStore.d.ts.map +1 -0
- package/dist/rag/HandleVectorStore.js +527 -0
- package/dist/rag/HandleVectorStore.js.map +1 -0
- package/dist/rag/PersistentIndexer.d.ts +148 -0
- package/dist/rag/PersistentIndexer.d.ts.map +1 -0
- package/dist/rag/PersistentIndexer.js +302 -0
- package/dist/rag/PersistentIndexer.js.map +1 -0
- package/dist/rag/embeddings/VisionEmbeddingProvider.d.ts +87 -0
- package/dist/rag/embeddings/VisionEmbeddingProvider.d.ts.map +1 -0
- package/dist/rag/embeddings/VisionEmbeddingProvider.js +164 -0
- package/dist/rag/embeddings/VisionEmbeddingProvider.js.map +1 -0
- package/dist/rag/graph/community.d.ts +56 -0
- package/dist/rag/graph/community.d.ts.map +1 -0
- package/dist/rag/graph/community.js +247 -0
- package/dist/rag/graph/community.js.map +1 -0
- package/dist/rag/graph/extractor.d.ts +99 -0
- package/dist/rag/graph/extractor.d.ts.map +1 -0
- package/dist/rag/graph/extractor.js +210 -0
- package/dist/rag/graph/extractor.js.map +1 -0
- package/dist/rag/graph/store.d.ts +176 -0
- package/dist/rag/graph/store.d.ts.map +1 -0
- package/dist/rag/graph/store.js +504 -0
- package/dist/rag/graph/store.js.map +1 -0
- package/dist/rag/index.d.ts +20 -0
- package/dist/rag/index.d.ts.map +1 -0
- package/dist/rag/index.js +26 -0
- package/dist/rag/index.js.map +1 -0
- package/dist/rag/semanticVersioning.d.ts +187 -0
- package/dist/rag/semanticVersioning.d.ts.map +1 -0
- package/dist/rag/semanticVersioning.js +253 -0
- package/dist/rag/semanticVersioning.js.map +1 -0
- package/dist/storage/IndexedDBEngine.d.ts +33 -0
- package/dist/storage/IndexedDBEngine.d.ts.map +1 -0
- package/dist/storage/IndexedDBEngine.js +198 -0
- package/dist/storage/IndexedDBEngine.js.map +1 -0
- package/dist/storage/SqliteNodeEngine.d.ts +123 -0
- package/dist/storage/SqliteNodeEngine.d.ts.map +1 -0
- package/dist/storage/SqliteNodeEngine.js +385 -0
- package/dist/storage/SqliteNodeEngine.js.map +1 -0
- package/dist/storage/SqliteWasmEngine.d.ts +60 -0
- package/dist/storage/SqliteWasmEngine.d.ts.map +1 -0
- package/dist/storage/SqliteWasmEngine.js +193 -0
- package/dist/storage/SqliteWasmEngine.js.map +1 -0
- package/dist/storage/StorageAdapter.d.ts +42 -0
- package/dist/storage/StorageAdapter.d.ts.map +1 -0
- package/dist/storage/StorageAdapter.js +2 -0
- package/dist/storage/StorageAdapter.js.map +1 -0
- package/dist/storage/VectorStore.d.ts +202 -0
- package/dist/storage/VectorStore.d.ts.map +1 -0
- package/dist/storage/VectorStore.js +557 -0
- package/dist/storage/VectorStore.js.map +1 -0
- package/dist/storage/schema.d.ts +162 -0
- package/dist/storage/schema.d.ts.map +1 -0
- package/dist/storage/schema.js +373 -0
- package/dist/storage/schema.js.map +1 -0
- package/dist/util/FileIO.d.ts +44 -0
- package/dist/util/FileIO.d.ts.map +1 -0
- package/dist/util/FileIO.js +203 -0
- package/dist/util/FileIO.js.map +1 -0
- package/dist/util/Loader.d.ts +34 -0
- package/dist/util/Loader.d.ts.map +1 -0
- package/dist/util/Loader.js +168 -0
- package/dist/util/Loader.js.map +1 -0
- package/package.json +2 -1
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCard Database Schema Loader for JavaScript/TypeScript
|
|
3
|
+
*
|
|
4
|
+
* Singleton implementation that loads all schemas from:
|
|
5
|
+
* schema/mcard_schema.sql (SINGLE SOURCE OF TRUTH)
|
|
6
|
+
*
|
|
7
|
+
* This ensures schema consistency between Python and JavaScript runtimes.
|
|
8
|
+
*
|
|
9
|
+
* Usage:
|
|
10
|
+
* import { MCardSchema } from './schema';
|
|
11
|
+
*
|
|
12
|
+
* const schema = MCardSchema.getInstance();
|
|
13
|
+
* const cardSchema = schema.getTable('card');
|
|
14
|
+
* schema.initAllTables(db);
|
|
15
|
+
*
|
|
16
|
+
* Architecture Layers:
|
|
17
|
+
* Layer 1: Core Content Storage (card)
|
|
18
|
+
* Layer 2: Handle System (handle_registry, handle_history)
|
|
19
|
+
* Layer 3: Vector Storage (mcard_vector_metadata, mcard_embeddings)
|
|
20
|
+
* Layer 4: Semantic Versioning (handle_version_vectors, similarity_cache)
|
|
21
|
+
* Layer 5: Knowledge Graph (entities, relationships, communities)
|
|
22
|
+
*
|
|
23
|
+
* See: docs/architecture/Handle_Vector_Similarity_Design.md
|
|
24
|
+
*/
|
|
25
|
+
export type SchemaLayer = 'core' | 'handle' | 'vector' | 'semantic' | 'graph' | 'metadata';
|
|
26
|
+
/**
|
|
27
|
+
* Singleton class for MCard database schema management.
|
|
28
|
+
*
|
|
29
|
+
* Ensures all schema definitions come from the single source of truth:
|
|
30
|
+
* schema/mcard_schema.sql
|
|
31
|
+
*/
|
|
32
|
+
export declare class MCardSchema {
|
|
33
|
+
private static instance;
|
|
34
|
+
private schemaPath;
|
|
35
|
+
private rawSql;
|
|
36
|
+
private statements;
|
|
37
|
+
private tables;
|
|
38
|
+
private indexes;
|
|
39
|
+
private loaded;
|
|
40
|
+
private constructor();
|
|
41
|
+
/**
|
|
42
|
+
* Get the singleton instance.
|
|
43
|
+
*/
|
|
44
|
+
static getInstance(): MCardSchema;
|
|
45
|
+
/**
|
|
46
|
+
* Reset the singleton (for testing).
|
|
47
|
+
*/
|
|
48
|
+
static resetInstance(): void;
|
|
49
|
+
private load;
|
|
50
|
+
private parseStatements;
|
|
51
|
+
private extractName;
|
|
52
|
+
getSchemaPath(): string;
|
|
53
|
+
getTable(tableName: string): string | undefined;
|
|
54
|
+
getIndex(indexName: string): string | undefined;
|
|
55
|
+
getAllTables(): Map<string, string>;
|
|
56
|
+
getAllIndexes(): Map<string, string>;
|
|
57
|
+
getAllStatements(): string[];
|
|
58
|
+
getTablesByLayer(layer: SchemaLayer): string[];
|
|
59
|
+
getLayerStatements(layer: SchemaLayer): string[];
|
|
60
|
+
private execStatements;
|
|
61
|
+
initLayer(db: {
|
|
62
|
+
exec: (sql: string) => void;
|
|
63
|
+
}, layer: SchemaLayer): number;
|
|
64
|
+
initCoreTables(db: {
|
|
65
|
+
exec: (sql: string) => void;
|
|
66
|
+
}): number;
|
|
67
|
+
initHandleTables(db: {
|
|
68
|
+
exec: (sql: string) => void;
|
|
69
|
+
}): number;
|
|
70
|
+
initVectorTables(db: {
|
|
71
|
+
exec: (sql: string) => void;
|
|
72
|
+
}, enableFts?: boolean): number;
|
|
73
|
+
initSemanticTables(db: {
|
|
74
|
+
exec: (sql: string) => void;
|
|
75
|
+
}): number;
|
|
76
|
+
initGraphTables(db: {
|
|
77
|
+
exec: (sql: string) => void;
|
|
78
|
+
}): number;
|
|
79
|
+
initAllTables(db: {
|
|
80
|
+
exec: (sql: string) => void;
|
|
81
|
+
}, options?: {
|
|
82
|
+
enableFts?: boolean;
|
|
83
|
+
enableGraph?: boolean;
|
|
84
|
+
enableSemantic?: boolean;
|
|
85
|
+
}): number;
|
|
86
|
+
initVec0Table(db: {
|
|
87
|
+
exec: (sql: string) => void;
|
|
88
|
+
}, dimensions: number): void;
|
|
89
|
+
}
|
|
90
|
+
export declare const CARD_TABLE_SCHEMA: string;
|
|
91
|
+
export declare const HANDLE_REGISTRY_SCHEMA: string;
|
|
92
|
+
export declare const HANDLE_HISTORY_SCHEMA: string;
|
|
93
|
+
export declare const HANDLE_INDEX_SCHEMA: string;
|
|
94
|
+
export declare const VECTOR_METADATA_SCHEMA: string;
|
|
95
|
+
export declare const VECTOR_METADATA_INDEX: string;
|
|
96
|
+
export declare const VECTOR_EMBEDDINGS_SCHEMA: string;
|
|
97
|
+
export declare const VECTOR_FTS_SCHEMA: string;
|
|
98
|
+
export declare const HANDLE_VERSION_VECTORS_SCHEMA: string;
|
|
99
|
+
export declare const HANDLE_VERSION_VECTORS_INDEXES: string;
|
|
100
|
+
export declare const VERSION_SIMILARITY_CACHE_SCHEMA: string;
|
|
101
|
+
export declare const VERSION_SIMILARITY_CACHE_INDEX: string;
|
|
102
|
+
export declare const GRAPH_ENTITY_SCHEMA: string;
|
|
103
|
+
export declare const GRAPH_ENTITY_INDEX_NAME: string;
|
|
104
|
+
export declare const GRAPH_ENTITY_INDEX_TYPE: string;
|
|
105
|
+
export declare const GRAPH_ENTITY_INDEX_SOURCE: string;
|
|
106
|
+
export declare const GRAPH_RELATIONSHIP_SCHEMA: string;
|
|
107
|
+
export declare const GRAPH_RELATIONSHIP_INDEX_SOURCE: string;
|
|
108
|
+
export declare const GRAPH_RELATIONSHIP_INDEX_TARGET: string;
|
|
109
|
+
export declare const GRAPH_COMMUNITY_SCHEMA: string;
|
|
110
|
+
export declare const GRAPH_COMMUNITY_INDEX_LEVEL: string;
|
|
111
|
+
export declare const GRAPH_EXTRACTION_SCHEMA: string;
|
|
112
|
+
export declare const CORE_SCHEMAS: {
|
|
113
|
+
card: string;
|
|
114
|
+
handleRegistry: string;
|
|
115
|
+
handleHistory: string;
|
|
116
|
+
handleIndex: string;
|
|
117
|
+
};
|
|
118
|
+
export declare const VECTOR_SCHEMAS: {
|
|
119
|
+
metadata: string;
|
|
120
|
+
metadataIndex: string;
|
|
121
|
+
embeddings: string;
|
|
122
|
+
fts: string;
|
|
123
|
+
};
|
|
124
|
+
export declare const SEMANTIC_SCHEMAS: {
|
|
125
|
+
handleVersionVectors: string;
|
|
126
|
+
handleVersionVectorsIndexes: string;
|
|
127
|
+
similarityCache: string;
|
|
128
|
+
similarityCacheIndex: string;
|
|
129
|
+
};
|
|
130
|
+
export declare const GRAPH_SCHEMAS: {
|
|
131
|
+
entities: string;
|
|
132
|
+
entityIndexName: string;
|
|
133
|
+
entityIndexType: string;
|
|
134
|
+
entityIndexSource: string;
|
|
135
|
+
relationships: string;
|
|
136
|
+
relIndexSource: string;
|
|
137
|
+
relIndexTarget: string;
|
|
138
|
+
communities: string;
|
|
139
|
+
communityIndexLevel: string;
|
|
140
|
+
extractions: string;
|
|
141
|
+
};
|
|
142
|
+
export declare function initCoreSchemas(db: {
|
|
143
|
+
exec: (sql: string) => void;
|
|
144
|
+
}): void;
|
|
145
|
+
export declare function initVectorSchemas(db: {
|
|
146
|
+
exec: (sql: string) => void;
|
|
147
|
+
}, enableFts?: boolean): void;
|
|
148
|
+
export declare function initSemanticSchemas(db: {
|
|
149
|
+
exec: (sql: string) => void;
|
|
150
|
+
}): void;
|
|
151
|
+
export declare function initGraphSchemas(db: {
|
|
152
|
+
exec: (sql: string) => void;
|
|
153
|
+
}): void;
|
|
154
|
+
export declare function initAllSchemas(db: {
|
|
155
|
+
exec: (sql: string) => void;
|
|
156
|
+
}, options?: {
|
|
157
|
+
enableFts?: boolean;
|
|
158
|
+
enableGraph?: boolean;
|
|
159
|
+
enableSemantic?: boolean;
|
|
160
|
+
}): void;
|
|
161
|
+
export declare function getVec0Schema(dimensions: number): string;
|
|
162
|
+
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/storage/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,373 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCard Database Schema Loader for JavaScript/TypeScript
|
|
3
|
+
*
|
|
4
|
+
* Singleton implementation that loads all schemas from:
|
|
5
|
+
* schema/mcard_schema.sql (SINGLE SOURCE OF TRUTH)
|
|
6
|
+
*
|
|
7
|
+
* This ensures schema consistency between Python and JavaScript runtimes.
|
|
8
|
+
*
|
|
9
|
+
* Usage:
|
|
10
|
+
* import { MCardSchema } from './schema';
|
|
11
|
+
*
|
|
12
|
+
* const schema = MCardSchema.getInstance();
|
|
13
|
+
* const cardSchema = schema.getTable('card');
|
|
14
|
+
* schema.initAllTables(db);
|
|
15
|
+
*
|
|
16
|
+
* Architecture Layers:
|
|
17
|
+
* Layer 1: Core Content Storage (card)
|
|
18
|
+
* Layer 2: Handle System (handle_registry, handle_history)
|
|
19
|
+
* Layer 3: Vector Storage (mcard_vector_metadata, mcard_embeddings)
|
|
20
|
+
* Layer 4: Semantic Versioning (handle_version_vectors, similarity_cache)
|
|
21
|
+
* Layer 5: Knowledge Graph (entities, relationships, communities)
|
|
22
|
+
*
|
|
23
|
+
* See: docs/architecture/Handle_Vector_Similarity_Design.md
|
|
24
|
+
*/
|
|
25
|
+
import { readFileSync, existsSync } from 'fs';
|
|
26
|
+
import { join, resolve, dirname } from 'path';
|
|
27
|
+
import { fileURLToPath } from 'url';
|
|
28
|
+
// ESM compatibility: get __dirname equivalent
|
|
29
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
30
|
+
const __dirname = dirname(__filename);
|
|
31
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
32
|
+
// Schema File Location
|
|
33
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
34
|
+
function findSchemaPath() {
|
|
35
|
+
const pathsToTry = [
|
|
36
|
+
join(__dirname, '..', '..', '..', 'schema', 'mcard_schema.sql'),
|
|
37
|
+
join(__dirname, '..', '..', 'schema', 'mcard_schema.sql'),
|
|
38
|
+
join(process.cwd(), 'schema', 'mcard_schema.sql'),
|
|
39
|
+
];
|
|
40
|
+
for (const path of pathsToTry) {
|
|
41
|
+
const resolved = resolve(path);
|
|
42
|
+
if (existsSync(resolved)) {
|
|
43
|
+
return resolved;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
throw new Error(`Could not find schema/mcard_schema.sql. Tried: ${pathsToTry.join(', ')}`);
|
|
47
|
+
}
|
|
48
|
+
function findVectorSchemaPath() {
|
|
49
|
+
const pathsToTry = [
|
|
50
|
+
join(__dirname, '..', '..', '..', 'schema', 'mcard_vector_schema.sql'),
|
|
51
|
+
join(__dirname, '..', '..', 'schema', 'mcard_vector_schema.sql'),
|
|
52
|
+
join(process.cwd(), 'schema', 'mcard_vector_schema.sql'),
|
|
53
|
+
];
|
|
54
|
+
for (const path of pathsToTry) {
|
|
55
|
+
const resolved = resolve(path);
|
|
56
|
+
if (existsSync(resolved)) {
|
|
57
|
+
return resolved;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return null;
|
|
61
|
+
}
|
|
62
|
+
const TABLE_LAYERS = {
|
|
63
|
+
// Layer 1: Core
|
|
64
|
+
'card': 'core',
|
|
65
|
+
// Layer 2: Handle System
|
|
66
|
+
'handle_registry': 'handle',
|
|
67
|
+
'handle_history': 'handle',
|
|
68
|
+
// Layer 3: Vector Storage
|
|
69
|
+
'mcard_vector_metadata': 'vector',
|
|
70
|
+
'mcard_embeddings': 'vector',
|
|
71
|
+
'mcard_fts': 'vector',
|
|
72
|
+
// Layer 4: Semantic Versioning
|
|
73
|
+
'handle_version_vectors': 'semantic',
|
|
74
|
+
'version_similarity_cache': 'semantic',
|
|
75
|
+
// Layer 5: Knowledge Graph
|
|
76
|
+
'graph_entities': 'graph',
|
|
77
|
+
'graph_relationships': 'graph',
|
|
78
|
+
'graph_communities': 'graph',
|
|
79
|
+
'graph_extractions': 'graph',
|
|
80
|
+
// Metadata
|
|
81
|
+
'schema_version': 'metadata',
|
|
82
|
+
};
|
|
83
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
84
|
+
// Singleton Schema Manager
|
|
85
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
86
|
+
/**
|
|
87
|
+
* Singleton class for MCard database schema management.
|
|
88
|
+
*
|
|
89
|
+
* Ensures all schema definitions come from the single source of truth:
|
|
90
|
+
* schema/mcard_schema.sql
|
|
91
|
+
*/
|
|
92
|
+
export class MCardSchema {
|
|
93
|
+
static instance = null;
|
|
94
|
+
schemaPath = '';
|
|
95
|
+
rawSql = '';
|
|
96
|
+
statements = [];
|
|
97
|
+
tables = new Map();
|
|
98
|
+
indexes = new Map();
|
|
99
|
+
loaded = false;
|
|
100
|
+
constructor() { }
|
|
101
|
+
/**
|
|
102
|
+
* Get the singleton instance.
|
|
103
|
+
*/
|
|
104
|
+
static getInstance() {
|
|
105
|
+
if (!MCardSchema.instance) {
|
|
106
|
+
MCardSchema.instance = new MCardSchema();
|
|
107
|
+
MCardSchema.instance.load();
|
|
108
|
+
}
|
|
109
|
+
return MCardSchema.instance;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Reset the singleton (for testing).
|
|
113
|
+
*/
|
|
114
|
+
static resetInstance() {
|
|
115
|
+
MCardSchema.instance = null;
|
|
116
|
+
}
|
|
117
|
+
load() {
|
|
118
|
+
if (this.loaded)
|
|
119
|
+
return;
|
|
120
|
+
this.schemaPath = findSchemaPath();
|
|
121
|
+
this.rawSql = readFileSync(this.schemaPath, 'utf-8');
|
|
122
|
+
// Load vector schema if available
|
|
123
|
+
const vectorSchemaPath = findVectorSchemaPath();
|
|
124
|
+
if (vectorSchemaPath) {
|
|
125
|
+
const vectorSql = readFileSync(vectorSchemaPath, 'utf-8');
|
|
126
|
+
this.rawSql += "\n\n" + vectorSql;
|
|
127
|
+
}
|
|
128
|
+
this.statements = this.parseStatements(this.rawSql);
|
|
129
|
+
for (const stmt of this.statements) {
|
|
130
|
+
const name = this.extractName(stmt);
|
|
131
|
+
if (name) {
|
|
132
|
+
const upper = stmt.toUpperCase();
|
|
133
|
+
if (upper.includes('CREATE TABLE') || upper.includes('CREATE VIRTUAL TABLE')) {
|
|
134
|
+
this.tables.set(name.toLowerCase(), stmt);
|
|
135
|
+
}
|
|
136
|
+
else if (upper.includes('CREATE INDEX')) {
|
|
137
|
+
this.indexes.set(name.toLowerCase(), stmt);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
this.loaded = true;
|
|
142
|
+
}
|
|
143
|
+
parseStatements(sql) {
|
|
144
|
+
// Remove block comments
|
|
145
|
+
sql = sql.replace(/\/\*[\s\S]*?\*\//g, '');
|
|
146
|
+
const statements = [];
|
|
147
|
+
let current = [];
|
|
148
|
+
for (const line of sql.split('\n')) {
|
|
149
|
+
// Skip line comments
|
|
150
|
+
const stripped = line.split('--')[0].trim();
|
|
151
|
+
if (!stripped)
|
|
152
|
+
continue;
|
|
153
|
+
current.push(stripped);
|
|
154
|
+
if (stripped.endsWith(';')) {
|
|
155
|
+
const statement = current.join(' ');
|
|
156
|
+
// Skip INSERT statements
|
|
157
|
+
if (!statement.trim().toUpperCase().startsWith('INSERT')) {
|
|
158
|
+
statements.push(statement);
|
|
159
|
+
}
|
|
160
|
+
current = [];
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
return statements.filter(s => s.trim());
|
|
164
|
+
}
|
|
165
|
+
extractName(statement) {
|
|
166
|
+
// Handle CREATE TABLE
|
|
167
|
+
let match = statement.match(/CREATE\s+(?:VIRTUAL\s+)?TABLE\s+(?:IF\s+NOT\s+EXISTS\s+)?(\w+)/i);
|
|
168
|
+
if (match)
|
|
169
|
+
return match[1];
|
|
170
|
+
// Handle CREATE INDEX
|
|
171
|
+
match = statement.match(/CREATE\s+INDEX\s+(?:IF\s+NOT\s+EXISTS\s+)?(\w+)/i);
|
|
172
|
+
if (match)
|
|
173
|
+
return match[1];
|
|
174
|
+
return null;
|
|
175
|
+
}
|
|
176
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
177
|
+
// Schema Access
|
|
178
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
179
|
+
getSchemaPath() {
|
|
180
|
+
return this.schemaPath;
|
|
181
|
+
}
|
|
182
|
+
getTable(tableName) {
|
|
183
|
+
return this.tables.get(tableName.toLowerCase());
|
|
184
|
+
}
|
|
185
|
+
getIndex(indexName) {
|
|
186
|
+
return this.indexes.get(indexName.toLowerCase());
|
|
187
|
+
}
|
|
188
|
+
getAllTables() {
|
|
189
|
+
return new Map(this.tables);
|
|
190
|
+
}
|
|
191
|
+
getAllIndexes() {
|
|
192
|
+
return new Map(this.indexes);
|
|
193
|
+
}
|
|
194
|
+
getAllStatements() {
|
|
195
|
+
return [...this.statements];
|
|
196
|
+
}
|
|
197
|
+
getTablesByLayer(layer) {
|
|
198
|
+
return Object.entries(TABLE_LAYERS)
|
|
199
|
+
.filter(([_, l]) => l === layer)
|
|
200
|
+
.map(([name, _]) => name);
|
|
201
|
+
}
|
|
202
|
+
getLayerStatements(layer) {
|
|
203
|
+
const statements = [];
|
|
204
|
+
const tables = this.getTablesByLayer(layer);
|
|
205
|
+
// Add tables
|
|
206
|
+
for (const table of tables) {
|
|
207
|
+
const stmt = this.getTable(table);
|
|
208
|
+
if (stmt)
|
|
209
|
+
statements.push(stmt);
|
|
210
|
+
}
|
|
211
|
+
// Add indexes for these tables
|
|
212
|
+
for (const [_, stmt] of this.indexes) {
|
|
213
|
+
const match = stmt.match(/ON\s+(\w+)/i);
|
|
214
|
+
if (match && tables.includes(match[1].toLowerCase())) {
|
|
215
|
+
statements.push(stmt);
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
return statements;
|
|
219
|
+
}
|
|
220
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
221
|
+
// Database Initialization
|
|
222
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
223
|
+
execStatements(db, statements) {
|
|
224
|
+
for (const stmt of statements) {
|
|
225
|
+
db.exec(stmt);
|
|
226
|
+
}
|
|
227
|
+
return statements.length;
|
|
228
|
+
}
|
|
229
|
+
initLayer(db, layer) {
|
|
230
|
+
return this.execStatements(db, this.getLayerStatements(layer));
|
|
231
|
+
}
|
|
232
|
+
initCoreTables(db) {
|
|
233
|
+
return this.initLayer(db, 'core');
|
|
234
|
+
}
|
|
235
|
+
initHandleTables(db) {
|
|
236
|
+
return this.initLayer(db, 'handle');
|
|
237
|
+
}
|
|
238
|
+
initVectorTables(db, enableFts = true) {
|
|
239
|
+
const statements = this.getLayerStatements('vector')
|
|
240
|
+
.filter(s => enableFts || !s.toLowerCase().includes('fts'));
|
|
241
|
+
return this.execStatements(db, statements);
|
|
242
|
+
}
|
|
243
|
+
initSemanticTables(db) {
|
|
244
|
+
return this.initLayer(db, 'semantic');
|
|
245
|
+
}
|
|
246
|
+
initGraphTables(db) {
|
|
247
|
+
return this.initLayer(db, 'graph');
|
|
248
|
+
}
|
|
249
|
+
initAllTables(db, options = {}) {
|
|
250
|
+
const { enableFts = true, enableGraph = true, enableSemantic = true } = options;
|
|
251
|
+
let count = 0;
|
|
252
|
+
count += this.initCoreTables(db);
|
|
253
|
+
count += this.initHandleTables(db);
|
|
254
|
+
count += this.initVectorTables(db, enableFts);
|
|
255
|
+
if (enableSemantic) {
|
|
256
|
+
count += this.initSemanticTables(db);
|
|
257
|
+
}
|
|
258
|
+
if (enableGraph) {
|
|
259
|
+
count += this.initGraphTables(db);
|
|
260
|
+
}
|
|
261
|
+
return count;
|
|
262
|
+
}
|
|
263
|
+
initVec0Table(db, dimensions) {
|
|
264
|
+
db.exec(`
|
|
265
|
+
CREATE VIRTUAL TABLE IF NOT EXISTS mcard_vec USING vec0(
|
|
266
|
+
metadata_id INTEGER PRIMARY KEY,
|
|
267
|
+
embedding float[${dimensions}]
|
|
268
|
+
)
|
|
269
|
+
`);
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
273
|
+
// Convenience Exports (Backward Compatibility)
|
|
274
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
275
|
+
// These are lazy-loaded from the singleton
|
|
276
|
+
let _cachedSchemas = {};
|
|
277
|
+
function getSchemaInstance() {
|
|
278
|
+
return MCardSchema.getInstance();
|
|
279
|
+
}
|
|
280
|
+
// Core schemas
|
|
281
|
+
export const CARD_TABLE_SCHEMA = getSchemaInstance().getTable('card') || '';
|
|
282
|
+
export const HANDLE_REGISTRY_SCHEMA = getSchemaInstance().getTable('handle_registry') || '';
|
|
283
|
+
export const HANDLE_HISTORY_SCHEMA = getSchemaInstance().getTable('handle_history') || '';
|
|
284
|
+
export const HANDLE_INDEX_SCHEMA = getSchemaInstance().getIndex('idx_handle_current_hash') || '';
|
|
285
|
+
// Vector schemas
|
|
286
|
+
export const VECTOR_METADATA_SCHEMA = getSchemaInstance().getTable('mcard_vector_metadata') || '';
|
|
287
|
+
export const VECTOR_METADATA_INDEX = getSchemaInstance().getIndex('idx_vector_metadata_hash') || '';
|
|
288
|
+
export const VECTOR_EMBEDDINGS_SCHEMA = getSchemaInstance().getTable('mcard_embeddings') || '';
|
|
289
|
+
export const VECTOR_FTS_SCHEMA = getSchemaInstance().getTable('mcard_fts') || '';
|
|
290
|
+
// Semantic versioning schemas
|
|
291
|
+
export const HANDLE_VERSION_VECTORS_SCHEMA = getSchemaInstance().getTable('handle_version_vectors') || '';
|
|
292
|
+
export const HANDLE_VERSION_VECTORS_INDEXES = [
|
|
293
|
+
getSchemaInstance().getIndex('idx_hvv_handle'),
|
|
294
|
+
getSchemaInstance().getIndex('idx_hvv_hash'),
|
|
295
|
+
getSchemaInstance().getIndex('idx_hvv_current'),
|
|
296
|
+
getSchemaInstance().getIndex('idx_hvv_parent'),
|
|
297
|
+
].filter(Boolean).join('; ');
|
|
298
|
+
export const VERSION_SIMILARITY_CACHE_SCHEMA = getSchemaInstance().getTable('version_similarity_cache') || '';
|
|
299
|
+
export const VERSION_SIMILARITY_CACHE_INDEX = getSchemaInstance().getIndex('idx_vsc_handle') || '';
|
|
300
|
+
// Graph schemas
|
|
301
|
+
export const GRAPH_ENTITY_SCHEMA = getSchemaInstance().getTable('graph_entities') || '';
|
|
302
|
+
export const GRAPH_ENTITY_INDEX_NAME = getSchemaInstance().getIndex('idx_entity_name') || '';
|
|
303
|
+
export const GRAPH_ENTITY_INDEX_TYPE = getSchemaInstance().getIndex('idx_entity_type') || '';
|
|
304
|
+
export const GRAPH_ENTITY_INDEX_SOURCE = getSchemaInstance().getIndex('idx_entity_source') || '';
|
|
305
|
+
export const GRAPH_RELATIONSHIP_SCHEMA = getSchemaInstance().getTable('graph_relationships') || '';
|
|
306
|
+
export const GRAPH_RELATIONSHIP_INDEX_SOURCE = getSchemaInstance().getIndex('idx_rel_source') || '';
|
|
307
|
+
export const GRAPH_RELATIONSHIP_INDEX_TARGET = getSchemaInstance().getIndex('idx_rel_target') || '';
|
|
308
|
+
export const GRAPH_COMMUNITY_SCHEMA = getSchemaInstance().getTable('graph_communities') || '';
|
|
309
|
+
export const GRAPH_COMMUNITY_INDEX_LEVEL = getSchemaInstance().getIndex('idx_community_level') || '';
|
|
310
|
+
export const GRAPH_EXTRACTION_SCHEMA = getSchemaInstance().getTable('graph_extractions') || '';
|
|
311
|
+
// Schema collections
|
|
312
|
+
export const CORE_SCHEMAS = {
|
|
313
|
+
card: CARD_TABLE_SCHEMA,
|
|
314
|
+
handleRegistry: HANDLE_REGISTRY_SCHEMA,
|
|
315
|
+
handleHistory: HANDLE_HISTORY_SCHEMA,
|
|
316
|
+
handleIndex: HANDLE_INDEX_SCHEMA,
|
|
317
|
+
};
|
|
318
|
+
export const VECTOR_SCHEMAS = {
|
|
319
|
+
metadata: VECTOR_METADATA_SCHEMA,
|
|
320
|
+
metadataIndex: VECTOR_METADATA_INDEX,
|
|
321
|
+
embeddings: VECTOR_EMBEDDINGS_SCHEMA,
|
|
322
|
+
fts: VECTOR_FTS_SCHEMA,
|
|
323
|
+
};
|
|
324
|
+
export const SEMANTIC_SCHEMAS = {
|
|
325
|
+
handleVersionVectors: HANDLE_VERSION_VECTORS_SCHEMA,
|
|
326
|
+
handleVersionVectorsIndexes: HANDLE_VERSION_VECTORS_INDEXES,
|
|
327
|
+
similarityCache: VERSION_SIMILARITY_CACHE_SCHEMA,
|
|
328
|
+
similarityCacheIndex: VERSION_SIMILARITY_CACHE_INDEX,
|
|
329
|
+
};
|
|
330
|
+
export const GRAPH_SCHEMAS = {
|
|
331
|
+
entities: GRAPH_ENTITY_SCHEMA,
|
|
332
|
+
entityIndexName: GRAPH_ENTITY_INDEX_NAME,
|
|
333
|
+
entityIndexType: GRAPH_ENTITY_INDEX_TYPE,
|
|
334
|
+
entityIndexSource: GRAPH_ENTITY_INDEX_SOURCE,
|
|
335
|
+
relationships: GRAPH_RELATIONSHIP_SCHEMA,
|
|
336
|
+
relIndexSource: GRAPH_RELATIONSHIP_INDEX_SOURCE,
|
|
337
|
+
relIndexTarget: GRAPH_RELATIONSHIP_INDEX_TARGET,
|
|
338
|
+
communities: GRAPH_COMMUNITY_SCHEMA,
|
|
339
|
+
communityIndexLevel: GRAPH_COMMUNITY_INDEX_LEVEL,
|
|
340
|
+
extractions: GRAPH_EXTRACTION_SCHEMA,
|
|
341
|
+
};
|
|
342
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
343
|
+
// Initialization Functions (use singleton internally)
|
|
344
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
345
|
+
export function initCoreSchemas(db) {
|
|
346
|
+
const schema = MCardSchema.getInstance();
|
|
347
|
+
// Initialize both core (card) and handle tables (handle_registry, handle_history)
|
|
348
|
+
// because they are fundamental to MCard operation
|
|
349
|
+
schema.initCoreTables(db);
|
|
350
|
+
schema.initHandleTables(db);
|
|
351
|
+
}
|
|
352
|
+
export function initVectorSchemas(db, enableFts = true) {
|
|
353
|
+
MCardSchema.getInstance().initVectorTables(db, enableFts);
|
|
354
|
+
}
|
|
355
|
+
export function initSemanticSchemas(db) {
|
|
356
|
+
MCardSchema.getInstance().initSemanticTables(db);
|
|
357
|
+
}
|
|
358
|
+
export function initGraphSchemas(db) {
|
|
359
|
+
MCardSchema.getInstance().initGraphTables(db);
|
|
360
|
+
}
|
|
361
|
+
export function initAllSchemas(db, options = {}) {
|
|
362
|
+
MCardSchema.getInstance().initAllTables(db, options);
|
|
363
|
+
}
|
|
364
|
+
// Dynamic schema generator (dimensions can't come from SQL file)
|
|
365
|
+
export function getVec0Schema(dimensions) {
|
|
366
|
+
return `
|
|
367
|
+
CREATE VIRTUAL TABLE IF NOT EXISTS mcard_vec USING vec0(
|
|
368
|
+
metadata_id INTEGER PRIMARY KEY,
|
|
369
|
+
embedding float[${dimensions}]
|
|
370
|
+
)
|
|
371
|
+
`;
|
|
372
|
+
}
|
|
373
|
+
//# sourceMappingURL=schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/storage/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export interface NormalizedReadResult {
|
|
2
|
+
text: string;
|
|
3
|
+
originalSize: number;
|
|
4
|
+
originalSha256Prefix: string;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Stream-read bytes up to byte_cap, decode, and soft wrap.
|
|
8
|
+
*/
|
|
9
|
+
export declare function streamReadNormalizedText(filePath: string, options: {
|
|
10
|
+
byteCap: number;
|
|
11
|
+
wrapWidth: number;
|
|
12
|
+
}): Promise<NormalizedReadResult>;
|
|
13
|
+
export interface FileProcessingResult {
|
|
14
|
+
content: Uint8Array | string;
|
|
15
|
+
filename: string;
|
|
16
|
+
mimeType: string;
|
|
17
|
+
extension: string;
|
|
18
|
+
isBinary: boolean;
|
|
19
|
+
size: number;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Check if a file is likely to cause processing issues.
|
|
23
|
+
*/
|
|
24
|
+
export declare function isProblematicFile(filePath: string): Promise<boolean>;
|
|
25
|
+
/**
|
|
26
|
+
* Safely read a file with limits and timeouts.
|
|
27
|
+
*/
|
|
28
|
+
export declare function readFileSafely(filePath: string, options?: {
|
|
29
|
+
allowPathological?: boolean;
|
|
30
|
+
maxBytes?: number;
|
|
31
|
+
}): Promise<Uint8Array>;
|
|
32
|
+
/**
|
|
33
|
+
* List files in directory, filtering out problematic ones.
|
|
34
|
+
*/
|
|
35
|
+
export declare function listFiles(dirPath: string, recursive?: boolean): Promise<string[]>;
|
|
36
|
+
/**
|
|
37
|
+
* Process a file and return metadata and content.
|
|
38
|
+
*/
|
|
39
|
+
export declare function processFileContent(filePath: string, options?: {
|
|
40
|
+
forceBinary?: boolean;
|
|
41
|
+
allowPathological?: boolean;
|
|
42
|
+
maxBytes?: number;
|
|
43
|
+
}): Promise<FileProcessingResult>;
|
|
44
|
+
//# sourceMappingURL=FileIO.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileIO.d.ts","sourceRoot":"","sources":["../../src/util/FileIO.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,oBAAoB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;CAChC;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC1C,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAChD,OAAO,CAAC,oBAAoB,CAAC,CAqE/B;AAOD,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,UAAU,GAAG,MAAM,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAgC1E;AAED;;GAEG;AACH,wBAAsB,cAAc,CAChC,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAO,GACjE,OAAO,CAAC,UAAU,CAAC,CAsBrB;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,GAAE,OAAe,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAyB9F;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACpC,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAO,GACxF,OAAO,CAAC,oBAAoB,CAAC,CA4B/B"}
|