@undefineds.co/xpod 0.3.6 → 0.3.15

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.
Files changed (249) hide show
  1. package/config/cli.json +1 -1
  2. package/config/cloud.json +54 -22
  3. package/config/local.json +56 -12
  4. package/config/resolver.json +10 -2
  5. package/config/xpod.base.json +50 -0
  6. package/config/xpod.json +8 -8
  7. package/dist/agents/config/resolve.js +10 -10
  8. package/dist/agents/config/resolve.js.map +1 -1
  9. package/dist/api/chatkit/index.d.ts +1 -1
  10. package/dist/api/chatkit/index.js.map +1 -1
  11. package/dist/api/chatkit/pod-store.d.ts +14 -11
  12. package/dist/api/chatkit/pod-store.js +114 -78
  13. package/dist/api/chatkit/pod-store.js.map +1 -1
  14. package/dist/api/chatkit/runtime/AcpAgentRuntime.js +1 -1
  15. package/dist/api/chatkit/runtime/AcpAgentRuntime.js.map +1 -1
  16. package/dist/api/chatkit/service.js +1 -1
  17. package/dist/api/chatkit/service.js.map +1 -1
  18. package/dist/api/chatkit/types.d.ts +11 -11
  19. package/dist/api/chatkit/types.js +3 -3
  20. package/dist/api/chatkit/types.js.map +1 -1
  21. package/dist/api/container/cloud.js +0 -8
  22. package/dist/api/container/cloud.js.map +1 -1
  23. package/dist/api/container/index.js +2 -1
  24. package/dist/api/container/index.js.map +1 -1
  25. package/dist/api/container/local.js +0 -7
  26. package/dist/api/container/local.js.map +1 -1
  27. package/dist/api/container/routes.js +3 -17
  28. package/dist/api/container/routes.js.map +1 -1
  29. package/dist/api/container/types.d.ts +0 -2
  30. package/dist/api/container/types.js.map +1 -1
  31. package/dist/api/handlers/PodManagementHandler.d.ts +3 -0
  32. package/dist/api/handlers/PodManagementHandler.js +71 -1
  33. package/dist/api/handlers/PodManagementHandler.js.map +1 -1
  34. package/dist/api/handlers/RunHandler.js +5 -5
  35. package/dist/api/handlers/RunHandler.js.map +1 -1
  36. package/dist/api/runs/AgentRuntimeTypes.d.ts +7 -8
  37. package/dist/api/runs/AgentRuntimeTypes.js.map +1 -1
  38. package/dist/api/runs/InngestRunExecutionBackend.d.ts +2 -2
  39. package/dist/api/runs/ManagedRunWorker.d.ts +1 -1
  40. package/dist/api/runs/ManagedRunWorker.js +6 -6
  41. package/dist/api/runs/ManagedRunWorker.js.map +1 -1
  42. package/dist/api/runs/PiAgentRuntimeDriver.d.ts +16 -1
  43. package/dist/api/runs/PiAgentRuntimeDriver.js +182 -23
  44. package/dist/api/runs/PiAgentRuntimeDriver.js.map +1 -1
  45. package/dist/api/runs/RunStateCenter.d.ts +3 -3
  46. package/dist/api/runs/RunStateCenter.js +13 -13
  47. package/dist/api/runs/RunStateCenter.js.map +1 -1
  48. package/dist/api/runs/store.d.ts +4 -4
  49. package/dist/api/runs/store.js +2 -2
  50. package/dist/api/runs/store.js.map +1 -1
  51. package/dist/api/service/VectorStoreService.d.ts +1 -1
  52. package/dist/api/service/VectorStoreService.js +16 -16
  53. package/dist/api/service/VectorStoreService.js.map +1 -1
  54. package/dist/api/tasks/InngestTaskScheduler.d.ts +4 -4
  55. package/dist/api/tasks/TaskMaterializer.d.ts +3 -3
  56. package/dist/api/tasks/TaskMaterializer.js +11 -11
  57. package/dist/api/tasks/TaskMaterializer.js.map +1 -1
  58. package/dist/api/tasks/TaskService.d.ts +3 -3
  59. package/dist/api/tasks/TaskService.js +11 -7
  60. package/dist/api/tasks/TaskService.js.map +1 -1
  61. package/dist/api/tasks/store.d.ts +10 -4
  62. package/dist/api/tasks/store.js +14 -4
  63. package/dist/api/tasks/store.js.map +1 -1
  64. package/dist/api/workspace/types.d.ts +3 -3
  65. package/dist/api/workspace/types.js +6 -6
  66. package/dist/api/workspace/types.js.map +1 -1
  67. package/dist/cli/commands/config.js +2 -2
  68. package/dist/cli/commands/config.js.map +1 -1
  69. package/dist/cli/commands/start.js +9 -3
  70. package/dist/cli/commands/start.js.map +1 -1
  71. package/dist/components/components.jsonld +8 -2
  72. package/dist/components/context.jsonld +308 -51
  73. package/dist/http/search/SearchHttpHandler.js +8 -8
  74. package/dist/http/search/SearchHttpHandler.js.map +1 -1
  75. package/dist/identity/drizzle/PodLookupRepository.d.ts +11 -1
  76. package/dist/identity/drizzle/PodLookupRepository.js +95 -4
  77. package/dist/identity/drizzle/PodLookupRepository.js.map +1 -1
  78. package/dist/identity/drizzle/db.js +4 -43
  79. package/dist/identity/drizzle/db.js.map +1 -1
  80. package/dist/identity/drizzle/schema.pg.d.ts +0 -5
  81. package/dist/identity/drizzle/schema.pg.js +2 -16
  82. package/dist/identity/drizzle/schema.pg.js.map +1 -1
  83. package/dist/identity/drizzle/schema.sqlite.d.ts +19 -176
  84. package/dist/identity/drizzle/schema.sqlite.js +2 -16
  85. package/dist/identity/drizzle/schema.sqlite.js.map +1 -1
  86. package/dist/identity/oidc/AutoDetectIdentityProviderHandler.d.ts +4 -4
  87. package/dist/identity/oidc/AutoDetectIdentityProviderHandler.js +7 -7
  88. package/dist/identity/oidc/AutoDetectIdentityProviderHandler.js.map +1 -1
  89. package/dist/identity/oidc/AutoDetectIdentityProviderHandler.jsonld +6 -6
  90. package/dist/identity/oidc/AutoDetectOidcHandler.d.ts +4 -4
  91. package/dist/identity/oidc/AutoDetectOidcHandler.js +6 -6
  92. package/dist/identity/oidc/AutoDetectOidcHandler.js.map +1 -1
  93. package/dist/identity/oidc/AutoDetectOidcHandler.jsonld +6 -6
  94. package/dist/identity/oidc/ScopedPickWebIdHandler.d.ts +37 -0
  95. package/dist/identity/oidc/ScopedPickWebIdHandler.js +211 -0
  96. package/dist/identity/oidc/ScopedPickWebIdHandler.js.map +1 -0
  97. package/dist/identity/oidc/ScopedPickWebIdHandler.jsonld +158 -0
  98. package/dist/index.d.ts +12 -2
  99. package/dist/index.js +16 -4
  100. package/dist/index.js.map +1 -1
  101. package/dist/main.js +8 -2
  102. package/dist/main.js.map +1 -1
  103. package/dist/provision/ProvisionPodCreator.d.ts +3 -4
  104. package/dist/provision/ProvisionPodCreator.js +8 -13
  105. package/dist/provision/ProvisionPodCreator.js.map +1 -1
  106. package/dist/provision/ProvisionPodCreator.jsonld +7 -7
  107. package/dist/runtime/Proxy.d.ts +0 -1
  108. package/dist/runtime/Proxy.js +0 -9
  109. package/dist/runtime/Proxy.js.map +1 -1
  110. package/dist/runtime/bootstrap.d.ts +1 -0
  111. package/dist/runtime/bootstrap.js +5 -2
  112. package/dist/runtime/bootstrap.js.map +1 -1
  113. package/dist/runtime/css-process.d.ts +12 -4
  114. package/dist/runtime/css-process.js +61 -14
  115. package/dist/runtime/css-process.js.map +1 -1
  116. package/dist/runtime/oidc-issuer.d.ts +3 -2
  117. package/dist/runtime/oidc-issuer.js +3 -2
  118. package/dist/runtime/oidc-issuer.js.map +1 -1
  119. package/dist/runtime/runtime-types.d.ts +1 -0
  120. package/dist/runtime/runtime-types.js.map +1 -1
  121. package/dist/solidfs/LocalFirstRdfRepresentationResolver.d.ts +21 -0
  122. package/dist/solidfs/LocalFirstRdfRepresentationResolver.js +38 -0
  123. package/dist/solidfs/LocalFirstRdfRepresentationResolver.js.map +1 -0
  124. package/dist/solidfs/LocalSolidFS.d.ts +18 -0
  125. package/dist/solidfs/LocalSolidFS.js +539 -0
  126. package/dist/solidfs/LocalSolidFS.js.map +1 -0
  127. package/dist/solidfs/PodSolidFsHttpClient.d.ts +16 -0
  128. package/dist/solidfs/PodSolidFsHttpClient.js +93 -0
  129. package/dist/solidfs/PodSolidFsHttpClient.js.map +1 -0
  130. package/dist/solidfs/PodSolidFsHydrator.d.ts +27 -0
  131. package/dist/solidfs/PodSolidFsHydrator.js +127 -0
  132. package/dist/solidfs/PodSolidFsHydrator.js.map +1 -0
  133. package/dist/solidfs/PodSolidFsSyncer.d.ts +21 -0
  134. package/dist/solidfs/PodSolidFsSyncer.js +78 -0
  135. package/dist/solidfs/PodSolidFsSyncer.js.map +1 -0
  136. package/dist/solidfs/RdfIndexSolidFsSyncer.d.ts +22 -0
  137. package/dist/solidfs/RdfIndexSolidFsSyncer.js +131 -0
  138. package/dist/solidfs/RdfIndexSolidFsSyncer.js.map +1 -0
  139. package/dist/solidfs/index.d.ts +7 -0
  140. package/dist/solidfs/index.js +24 -0
  141. package/dist/solidfs/index.js.map +1 -0
  142. package/dist/solidfs/types.d.ts +131 -0
  143. package/dist/solidfs/types.js +19 -0
  144. package/dist/solidfs/types.js.map +1 -0
  145. package/dist/storage/RepresentationPartialConvertingStore.js +6 -13
  146. package/dist/storage/RepresentationPartialConvertingStore.js.map +1 -1
  147. package/dist/storage/SparqlUpdateResourceStore.d.ts +4 -0
  148. package/dist/storage/SparqlUpdateResourceStore.js +13 -0
  149. package/dist/storage/SparqlUpdateResourceStore.js.map +1 -1
  150. package/dist/storage/SparqlUpdateResourceStore.jsonld +26 -0
  151. package/dist/storage/accessors/MixDataAccessor.d.ts +85 -4
  152. package/dist/storage/accessors/MixDataAccessor.js +511 -16
  153. package/dist/storage/accessors/MixDataAccessor.js.map +1 -1
  154. package/dist/storage/accessors/MixDataAccessor.jsonld +176 -1
  155. package/dist/storage/accessors/QuintStoreSparqlDataAccessor.d.ts +7 -0
  156. package/dist/storage/accessors/QuintStoreSparqlDataAccessor.js +72 -4
  157. package/dist/storage/accessors/QuintStoreSparqlDataAccessor.js.map +1 -1
  158. package/dist/storage/accessors/QuintStoreSparqlDataAccessor.jsonld +24 -0
  159. package/dist/storage/quint/BaseQuintStore.d.ts +3 -0
  160. package/dist/storage/quint/BaseQuintStore.js +51 -27
  161. package/dist/storage/quint/BaseQuintStore.js.map +1 -1
  162. package/dist/storage/quint/PgQuintStore.d.ts +1 -0
  163. package/dist/storage/quint/PgQuintStore.js +50 -32
  164. package/dist/storage/quint/PgQuintStore.js.map +1 -1
  165. package/dist/storage/quint/PgQuintStore.jsonld +4 -3
  166. package/dist/storage/quint/SqliteQuintStore.d.ts +5 -0
  167. package/dist/storage/quint/SqliteQuintStore.js +100 -0
  168. package/dist/storage/quint/SqliteQuintStore.js.map +1 -1
  169. package/dist/storage/quint/SqliteQuintStore.jsonld +20 -0
  170. package/dist/storage/quint/types.d.ts +16 -0
  171. package/dist/storage/quint/types.js.map +1 -1
  172. package/dist/storage/rdf/Rdf3xTripleIndex.d.ts +55 -0
  173. package/dist/storage/rdf/Rdf3xTripleIndex.js +1235 -0
  174. package/dist/storage/rdf/Rdf3xTripleIndex.js.map +1 -0
  175. package/dist/storage/rdf/RdfContentTypes.d.ts +9 -0
  176. package/dist/storage/rdf/RdfContentTypes.js +79 -0
  177. package/dist/storage/rdf/RdfContentTypes.js.map +1 -0
  178. package/dist/storage/rdf/RdfLocalQueryEngine.d.ts +79 -0
  179. package/dist/storage/rdf/RdfLocalQueryEngine.js +2705 -0
  180. package/dist/storage/rdf/RdfLocalQueryEngine.js.map +1 -0
  181. package/dist/storage/rdf/RdfQuadIndex.d.ts +98 -0
  182. package/dist/storage/rdf/RdfQuadIndex.js +1840 -0
  183. package/dist/storage/rdf/RdfQuadIndex.js.map +1 -0
  184. package/dist/storage/rdf/RdfQuadIndex.jsonld +416 -0
  185. package/dist/storage/rdf/RdfShadowComparator.d.ts +12 -0
  186. package/dist/storage/rdf/RdfShadowComparator.js +47 -0
  187. package/dist/storage/rdf/RdfShadowComparator.js.map +1 -0
  188. package/dist/storage/rdf/RdfSparqlAdapter.d.ts +147 -0
  189. package/dist/storage/rdf/RdfSparqlAdapter.js +2420 -0
  190. package/dist/storage/rdf/RdfSparqlAdapter.js.map +1 -0
  191. package/dist/storage/rdf/RdfSparqlAdapter.jsonld +414 -0
  192. package/dist/storage/rdf/RdfTermDictionary.d.ts +27 -0
  193. package/dist/storage/rdf/RdfTermDictionary.js +352 -0
  194. package/dist/storage/rdf/RdfTermDictionary.js.map +1 -0
  195. package/dist/storage/rdf/RdfTermDictionary.jsonld +114 -0
  196. package/dist/storage/rdf/RdfTermSemantics.d.ts +6 -0
  197. package/dist/storage/rdf/RdfTermSemantics.js +40 -0
  198. package/dist/storage/rdf/RdfTermSemantics.js.map +1 -0
  199. package/dist/storage/rdf/RdfTextIndex.d.ts +23 -0
  200. package/dist/storage/rdf/RdfTextIndex.js +569 -0
  201. package/dist/storage/rdf/RdfTextIndex.js.map +1 -0
  202. package/dist/storage/rdf/RdfVectorIndex.d.ts +22 -0
  203. package/dist/storage/rdf/RdfVectorIndex.js +631 -0
  204. package/dist/storage/rdf/RdfVectorIndex.js.map +1 -0
  205. package/dist/storage/rdf/RdfXmlSerializer.d.ts +2 -0
  206. package/dist/storage/rdf/RdfXmlSerializer.js +123 -0
  207. package/dist/storage/rdf/RdfXmlSerializer.js.map +1 -0
  208. package/dist/storage/rdf/ShadowRdfQuintStore.d.ts +58 -0
  209. package/dist/storage/rdf/ShadowRdfQuintStore.js +202 -0
  210. package/dist/storage/rdf/ShadowRdfQuintStore.js.map +1 -0
  211. package/dist/storage/rdf/ShadowRdfQuintStore.jsonld +308 -0
  212. package/dist/storage/rdf/SolidRdfEngine.d.ts +56 -0
  213. package/dist/storage/rdf/SolidRdfEngine.js +292 -0
  214. package/dist/storage/rdf/SolidRdfEngine.js.map +1 -0
  215. package/dist/storage/rdf/SolidRdfEngine.jsonld +372 -0
  216. package/dist/storage/rdf/SolidRdfSparqlEngine.d.ts +92 -0
  217. package/dist/storage/rdf/SolidRdfSparqlEngine.js +477 -0
  218. package/dist/storage/rdf/SolidRdfSparqlEngine.js.map +1 -0
  219. package/dist/storage/rdf/SolidRdfSparqlEngine.jsonld +257 -0
  220. package/dist/storage/rdf/index.d.ts +15 -0
  221. package/dist/storage/rdf/index.js +61 -0
  222. package/dist/storage/rdf/index.js.map +1 -0
  223. package/dist/storage/rdf/models-benchmark.d.ts +260 -0
  224. package/dist/storage/rdf/models-benchmark.js +1405 -0
  225. package/dist/storage/rdf/models-benchmark.js.map +1 -0
  226. package/dist/storage/rdf/types.d.ts +726 -0
  227. package/dist/storage/rdf/types.js +3 -0
  228. package/dist/storage/rdf/types.js.map +1 -0
  229. package/dist/storage/rdf/types.jsonld +316 -0
  230. package/dist/storage/vector/VectorIndexingListener.d.ts +5 -5
  231. package/dist/storage/vector/VectorIndexingListener.js +19 -19
  232. package/dist/storage/vector/VectorIndexingListener.js.map +1 -1
  233. package/package.json +3 -2
  234. package/templates/pod/acp/.acr.hbs +39 -0
  235. package/templates/pod/acp/README.acr +18 -0
  236. package/templates/pod/acp/profile/card.acr +22 -0
  237. package/templates/pod/base/README$.md.hbs +27 -0
  238. package/templates/pod/base/profile/card$.ttl.hbs +13 -0
  239. package/templates/pod/wac/.acl.hbs +26 -0
  240. package/templates/pod/wac/README.acl.hbs +14 -0
  241. package/templates/pod/wac/profile/card.acl.hbs +19 -0
  242. package/dist/api/handlers/WebIdProfileHandler.d.ts +0 -16
  243. package/dist/api/handlers/WebIdProfileHandler.js +0 -423
  244. package/dist/api/handlers/WebIdProfileHandler.js.map +0 -1
  245. package/dist/identity/drizzle/WebIdProfileRepository.d.ts +0 -63
  246. package/dist/identity/drizzle/WebIdProfileRepository.js +0 -168
  247. package/dist/identity/drizzle/WebIdProfileRepository.js.map +0 -1
  248. package/dist/identity/drizzle/WebIdProfileRepository.jsonld +0 -112
  249. package/dist/storage/quint/BaseQuintStore.jsonld +0 -257
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SolidRdfEngine.js","sourceRoot":"","sources":["../../../src/storage/rdf/SolidRdfEngine.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Quad } from '@rdfjs/types';\nimport { termToId } from 'n3';\nimport type { QuintPattern, QuintStore } from '../quint/types';\nimport { isTerm } from '../quint/types';\nimport type {\n Rdf3xNumericObjectRangePattern,\n Rdf3xShadowJoinResult,\n Rdf3xShadowScanResult,\n Rdf3xTripleIndexOptions,\n Rdf3xTriplePattern,\n RdfIndexPutOptions,\n RdfPatternQuery,\n RdfQuadJoinOptions,\n RdfQuadJoinPattern,\n RdfQuadIndexOptions,\n RdfQuadIndexScanResult,\n RdfSourceInput,\n RdfShadowScanResult,\n RdfTextChunkInput,\n RdfTextIndexOptions,\n RdfTextSearchOptions,\n RdfTextSearchResult,\n RdfTextSourceInput,\n RdfVectorChunkInput,\n RdfVectorIndexOptions,\n RdfVectorSearchOptions,\n RdfVectorSearchResult,\n RdfVectorSourceInput,\n} from './types';\nimport { RdfQuadIndex } from './RdfQuadIndex';\nimport { Rdf3xTripleIndex } from './Rdf3xTripleIndex';\nimport { RdfTextIndex } from './RdfTextIndex';\nimport { RdfVectorIndex } from './RdfVectorIndex';\nimport { RdfShadowComparator, diffQuads } from './RdfShadowComparator';\nimport { RdfLocalQueryEngine } from './RdfLocalQueryEngine';\nimport type { RdfLocalQuery, RdfLocalQueryResult } from './types';\n\nexport interface SolidRdfEngineOptions {\n index: RdfQuadIndex | RdfQuadIndexOptions;\n textIndex?: RdfTextIndex | RdfTextIndexOptions;\n vectorIndex?: RdfVectorIndex | RdfVectorIndexOptions;\n rdf3xIndex?: Rdf3xTripleIndex | Rdf3xTripleIndexOptions;\n rdf3xPrimary?: boolean;\n compatibilityStore?: QuintStore;\n autoOpen?: boolean;\n}\n\nexport class SolidRdfEngine {\n public readonly index: RdfQuadIndex;\n public readonly textIndex?: RdfTextIndex;\n public readonly vectorIndex?: RdfVectorIndex;\n public readonly rdf3xIndex?: Rdf3xTripleIndex;\n private readonly ownsIndex: boolean;\n private readonly ownsTextIndex: boolean;\n private readonly ownsVectorIndex: boolean;\n private readonly ownsRdf3xIndex: boolean;\n private readonly rdf3xPrimary: boolean;\n private readonly compatibilityStore?: QuintStore;\n private shadowComparator?: RdfShadowComparator;\n private readonly queryEngine: RdfLocalQueryEngine;\n private rdf3xDirty = true;\n\n public constructor(options: SolidRdfEngineOptions) {\n if (options.index instanceof RdfQuadIndex) {\n this.index = options.index;\n this.ownsIndex = false;\n } else {\n this.index = new RdfQuadIndex(options.index);\n this.ownsIndex = true;\n }\n if (options.textIndex instanceof RdfTextIndex) {\n this.textIndex = options.textIndex;\n this.ownsTextIndex = false;\n } else if (isRdfTextIndexOptions(options.textIndex)) {\n this.textIndex = new RdfTextIndex(options.textIndex);\n this.ownsTextIndex = true;\n } else {\n this.ownsTextIndex = false;\n }\n if (options.vectorIndex instanceof RdfVectorIndex) {\n this.vectorIndex = options.vectorIndex;\n this.ownsVectorIndex = false;\n } else if (isRdfVectorIndexOptions(options.vectorIndex)) {\n this.vectorIndex = new RdfVectorIndex(options.vectorIndex);\n this.ownsVectorIndex = true;\n } else {\n this.ownsVectorIndex = false;\n }\n if (options.rdf3xIndex instanceof Rdf3xTripleIndex) {\n this.rdf3xIndex = options.rdf3xIndex;\n this.ownsRdf3xIndex = false;\n } else if (isRdf3xTripleIndexOptions(options.rdf3xIndex)) {\n this.rdf3xIndex = new Rdf3xTripleIndex(options.rdf3xIndex);\n this.ownsRdf3xIndex = true;\n } else {\n this.ownsRdf3xIndex = false;\n }\n if (options.rdf3xPrimary && !this.rdf3xIndex) {\n throw new Error('SolidRdfEngine rdf3xPrimary requires an rdf3xIndex');\n }\n this.rdf3xPrimary = Boolean(options.rdf3xPrimary);\n this.compatibilityStore = options.compatibilityStore;\n this.queryEngine = new RdfLocalQueryEngine(\n this.index,\n this.textIndex,\n this.vectorIndex,\n this.rdf3xPrimary ? this.rdf3xIndex : undefined,\n );\n if (this.compatibilityStore) {\n this.shadowComparator = new RdfShadowComparator(this.index, this.compatibilityStore);\n }\n if (options.autoOpen) {\n this.open();\n }\n }\n\n public open(): void {\n this.index.open();\n this.textIndex?.open();\n this.vectorIndex?.open();\n this.rdf3xIndex?.open();\n }\n\n public async close(): Promise<void> {\n if (this.ownsRdf3xIndex) {\n this.rdf3xIndex?.close();\n }\n if (this.ownsVectorIndex) {\n this.vectorIndex?.close();\n }\n if (this.ownsTextIndex) {\n this.textIndex?.close();\n }\n if (this.ownsIndex) {\n this.index.close();\n }\n if (this.compatibilityStore) {\n await this.compatibilityStore.close();\n }\n }\n\n public put(quads: Quad | Quad[], options?: RdfIndexPutOptions): void {\n this.index.multiPut(Array.isArray(quads) ? quads : [quads], options);\n this.markRdf3xDirty();\n }\n\n public replaceSource(quads: Quad[], source: RdfSourceInput): void {\n this.index.replaceSource(quads, source);\n this.markRdf3xDirty();\n }\n\n public deleteSource(source: string): number {\n const changes = this.index.deleteSource(source);\n if (changes > 0) {\n this.markRdf3xDirty();\n }\n return changes;\n }\n\n public delete(pattern: QuintPattern): number {\n const changes = this.index.delete(pattern);\n if (changes > 0) {\n this.markRdf3xDirty();\n }\n return changes;\n }\n\n public scan(query: RdfPatternQuery): RdfQuadIndexScanResult {\n return this.index.scan(query.pattern, query.options);\n }\n\n public query(query: RdfLocalQuery): RdfLocalQueryResult {\n this.refreshRdf3xPrimary();\n return this.queryEngine.query(query);\n }\n\n public indexTextSource(source: RdfTextSourceInput, text: string, chunks?: RdfTextChunkInput[]): void {\n this.requireTextIndex().indexText(source, text, chunks);\n }\n\n public deleteTextSource(source: string): number {\n return this.requireTextIndex().deleteSource(source);\n }\n\n public searchText(options: RdfTextSearchOptions | string): RdfTextSearchResult[] {\n return this.requireTextIndex().search(typeof options === 'string' ? { query: options } : options);\n }\n\n public indexVectorSource(source: RdfVectorSourceInput, chunks: RdfVectorChunkInput[]): void {\n this.requireVectorIndex().indexVector(source, chunks);\n }\n\n public deleteVectorSource(source: string): number {\n return this.requireVectorIndex().deleteSource(source);\n }\n\n public searchVector(options: RdfVectorSearchOptions): RdfVectorSearchResult[] {\n return this.requireVectorIndex().search(options);\n }\n\n public async shadowScan(query: RdfPatternQuery): Promise<RdfShadowScanResult> {\n if (!this.shadowComparator) {\n throw new Error('SolidRdfEngine shadowScan requires a compatibility QuintStore');\n }\n return this.shadowComparator.compareScan(query);\n }\n\n public shadowRdf3xScan(query: RdfPatternQuery): Rdf3xShadowScanResult {\n const rdf3xIndex = this.requireRdf3xIndex();\n const rdf3xPattern = toRdf3xTriplePattern(query.pattern);\n const rebuild = rdf3xIndex.rebuildFromCurrentQuads();\n const primary = this.index.scan(query.pattern, query.options);\n const rdf3x = rdf3xIndex.scan(rdf3xPattern, query.options);\n const diff = diffQuads(rdf3x.quads, primary.quads);\n const orderedMatch = canonicalQuadKeys(primary.quads).join('\\n') === canonicalQuadKeys(rdf3x.quads).join('\\n');\n return {\n matched: diff.missingFromPrimary.length === 0 && diff.extraInPrimary.length === 0,\n orderedMatch,\n primary: primary.quads,\n rdf3x: rdf3x.quads,\n diff: {\n missingFromRdf3x: diff.extraInPrimary,\n extraInRdf3x: diff.missingFromPrimary,\n },\n primaryMetrics: primary.metrics,\n rdf3xMetrics: rdf3x.metrics,\n rebuild,\n };\n }\n\n public shadowRdf3xJoin(\n patterns: RdfQuadJoinPattern[],\n options?: RdfQuadJoinOptions,\n ): Rdf3xShadowJoinResult {\n const rdf3xIndex = this.requireRdf3xIndex();\n const rebuild = rdf3xIndex.rebuildFromCurrentQuads();\n const primary = this.index.joinPatterns(patterns, options);\n const rdf3x = rdf3xIndex.joinPatterns(patterns, options);\n const primaryKeys = primary.bindings.map(canonicalBindingKey);\n const rdf3xKeys = rdf3x.bindings.map(canonicalBindingKey);\n const diff = diffBindingKeys(rdf3xKeys, primaryKeys);\n return {\n matched: diff.missingFromRdf3x.length === 0 && diff.extraInRdf3x.length === 0,\n orderedMatch: primaryKeys.join('\\n') === rdf3xKeys.join('\\n'),\n primary: primary.bindings,\n rdf3x: rdf3x.bindings,\n diff,\n primaryMetrics: primary.metrics,\n rdf3xMetrics: rdf3x.metrics,\n rebuild,\n };\n }\n\n public supportsPrimary(query: RdfPatternQuery): boolean {\n try {\n this.index.scan(query.pattern, { ...query.options, limit: 0 });\n return true;\n } catch {\n return false;\n }\n }\n\n private requireTextIndex(): RdfTextIndex {\n if (!this.textIndex) {\n throw new Error('SolidRdfEngine text index is not configured');\n }\n return this.textIndex;\n }\n\n private requireVectorIndex(): RdfVectorIndex {\n if (!this.vectorIndex) {\n throw new Error('SolidRdfEngine vector index is not configured');\n }\n return this.vectorIndex;\n }\n\n private requireRdf3xIndex(): Rdf3xTripleIndex {\n if (!this.rdf3xIndex) {\n throw new Error('SolidRdfEngine RDF-3X shadow index is not configured');\n }\n return this.rdf3xIndex;\n }\n\n private markRdf3xDirty(): void {\n if (this.rdf3xIndex) {\n this.rdf3xDirty = true;\n }\n }\n\n private refreshRdf3xPrimary(): void {\n if (!this.rdf3xPrimary || !this.rdf3xDirty) {\n return;\n }\n this.requireRdf3xIndex().rebuildFromCurrentQuads();\n this.rdf3xDirty = false;\n }\n}\n\nfunction isRdfTextIndexOptions(input: RdfTextIndex | RdfTextIndexOptions | undefined): input is RdfTextIndexOptions {\n return input !== undefined && !(input instanceof RdfTextIndex) && typeof input.path === 'string';\n}\n\nfunction isRdfVectorIndexOptions(input: RdfVectorIndex | RdfVectorIndexOptions | undefined): input is RdfVectorIndexOptions {\n return input !== undefined && !(input instanceof RdfVectorIndex) && typeof input.path === 'string';\n}\n\nfunction isRdf3xTripleIndexOptions(input: Rdf3xTripleIndex | Rdf3xTripleIndexOptions | undefined): input is Rdf3xTripleIndexOptions {\n return input !== undefined && !(input instanceof Rdf3xTripleIndex) && typeof input.path === 'string';\n}\n\nfunction canonicalQuadKeys(quads: Quad[]): string[] {\n return quads.map((quad) => [\n termToId(quad.graph as any),\n termToId(quad.subject as any),\n termToId(quad.predicate as any),\n termToId(quad.object as any),\n ].join('\\u001f'));\n}\n\nfunction canonicalBindingKey(binding: Record<string, unknown>): string {\n return Object.keys(binding)\n .sort()\n .map((key) => `${key}=${termToId(binding[key] as any)}`)\n .join('\\u001f');\n}\n\nfunction diffBindingKeys(\n rdf3xKeys: string[],\n primaryKeys: string[],\n): Rdf3xShadowJoinResult['diff'] {\n const rdf3xSet = new Set(rdf3xKeys);\n const primarySet = new Set(primaryKeys);\n return {\n missingFromRdf3x: Array.from(primarySet).filter((key) => !rdf3xSet.has(key)).sort(),\n extraInRdf3x: Array.from(rdf3xSet).filter((key) => !primarySet.has(key)).sort(),\n };\n}\n\nfunction toRdf3xTriplePattern(pattern: QuintPattern): Rdf3xTriplePattern {\n const result: Rdf3xTriplePattern = {};\n for (const key of ['graph', 'subject', 'predicate', 'object'] as const) {\n const value = pattern[key];\n if (!value) {\n continue;\n }\n if (!isTerm(value)) {\n if (key === 'graph' && isStartsWithOperator(value)) {\n result.graph = { $startsWith: value.$startsWith };\n continue;\n }\n if (key === 'object' && isNumericObjectRangeOperator(value)) {\n result.object = value;\n continue;\n }\n throw new Error(`SolidRdfEngine RDF-3X shadow scan only supports exact ${key} terms${key === 'graph' ? ' or graph $startsWith' : ''}`);\n }\n result[key] = value;\n }\n return result;\n}\n\nfunction isStartsWithOperator(value: unknown): value is { $startsWith: string } {\n return value !== null\n && typeof value === 'object'\n && '$startsWith' in value\n && typeof (value as { $startsWith?: unknown }).$startsWith === 'string';\n}\n\nfunction isNumericObjectRangeOperator(value: unknown): value is Rdf3xNumericObjectRangePattern {\n return value !== null\n && typeof value === 'object'\n && !('termType' in value)\n && ['$gt', '$gte', '$lt', '$lte'].some((operator) => operator in value);\n}\n"]}
@@ -0,0 +1,372 @@
1
+ {
2
+ "@context": [
3
+ "https://linkedsoftwaredependencies.org/bundles/npm/@undefineds.co/xpod/^0.0.0/components/context.jsonld"
4
+ ],
5
+ "@id": "npmd:@undefineds.co/xpod",
6
+ "components": [
7
+ {
8
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine",
9
+ "@type": "Class",
10
+ "requireElement": "SolidRdfEngine",
11
+ "parameters": [
12
+ {
13
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_index_path",
14
+ "range": "xsd:string"
15
+ },
16
+ {
17
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_index_debug",
18
+ "range": {
19
+ "@type": "ParameterRangeUnion",
20
+ "parameterRangeElements": [
21
+ "xsd:boolean",
22
+ {
23
+ "@type": "ParameterRangeUndefined"
24
+ }
25
+ ]
26
+ }
27
+ },
28
+ {
29
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_textIndex_path",
30
+ "range": "xsd:string"
31
+ },
32
+ {
33
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_vectorIndex_path",
34
+ "range": "xsd:string"
35
+ },
36
+ {
37
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_vectorIndex_defaultMetric",
38
+ "range": {
39
+ "@type": "ParameterRangeUnion",
40
+ "parameterRangeElements": [
41
+ {
42
+ "@type": "ParameterRangeUnion",
43
+ "parameterRangeElements": [
44
+ {
45
+ "@type": "ParameterRangeLiteral",
46
+ "parameterRangeValueLiteral": "cosine"
47
+ },
48
+ {
49
+ "@type": "ParameterRangeLiteral",
50
+ "parameterRangeValueLiteral": "dot"
51
+ },
52
+ {
53
+ "@type": "ParameterRangeLiteral",
54
+ "parameterRangeValueLiteral": "euclidean"
55
+ }
56
+ ]
57
+ },
58
+ {
59
+ "@type": "ParameterRangeUndefined"
60
+ }
61
+ ]
62
+ }
63
+ },
64
+ {
65
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_rdf3xIndex_path",
66
+ "range": "xsd:string"
67
+ },
68
+ {
69
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_rdf3xIndex_debug",
70
+ "range": {
71
+ "@type": "ParameterRangeUnion",
72
+ "parameterRangeElements": [
73
+ "xsd:boolean",
74
+ {
75
+ "@type": "ParameterRangeUndefined"
76
+ }
77
+ ]
78
+ }
79
+ },
80
+ {
81
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_rdf3xPrimary",
82
+ "range": {
83
+ "@type": "ParameterRangeUnion",
84
+ "parameterRangeElements": [
85
+ "xsd:boolean",
86
+ {
87
+ "@type": "ParameterRangeUndefined"
88
+ }
89
+ ]
90
+ }
91
+ },
92
+ {
93
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_compatibilityStore",
94
+ "range": {
95
+ "@type": "ParameterRangeUnion",
96
+ "parameterRangeElements": [
97
+ "undefineds:dist/storage/quint/types.jsonld#QuintStore",
98
+ {
99
+ "@type": "ParameterRangeUndefined"
100
+ }
101
+ ]
102
+ }
103
+ },
104
+ {
105
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_autoOpen",
106
+ "range": {
107
+ "@type": "ParameterRangeUnion",
108
+ "parameterRangeElements": [
109
+ "xsd:boolean",
110
+ {
111
+ "@type": "ParameterRangeUndefined"
112
+ }
113
+ ]
114
+ }
115
+ }
116
+ ],
117
+ "memberFields": [
118
+ {
119
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_index",
120
+ "memberFieldName": "index",
121
+ "range": "undefineds:dist/storage/rdf/RdfQuadIndex.jsonld#RdfQuadIndex"
122
+ },
123
+ {
124
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_textIndex",
125
+ "memberFieldName": "textIndex",
126
+ "range": "undefineds:dist/storage/rdf/RdfTextIndex.jsonld#RdfTextIndex"
127
+ },
128
+ {
129
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_vectorIndex",
130
+ "memberFieldName": "vectorIndex",
131
+ "range": "undefineds:dist/storage/rdf/RdfVectorIndex.jsonld#RdfVectorIndex"
132
+ },
133
+ {
134
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_rdf3xIndex",
135
+ "memberFieldName": "rdf3xIndex",
136
+ "range": "undefineds:dist/storage/rdf/Rdf3xTripleIndex.jsonld#Rdf3xTripleIndex"
137
+ },
138
+ {
139
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_ownsIndex",
140
+ "memberFieldName": "ownsIndex"
141
+ },
142
+ {
143
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_ownsTextIndex",
144
+ "memberFieldName": "ownsTextIndex"
145
+ },
146
+ {
147
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_ownsVectorIndex",
148
+ "memberFieldName": "ownsVectorIndex"
149
+ },
150
+ {
151
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_ownsRdf3xIndex",
152
+ "memberFieldName": "ownsRdf3xIndex"
153
+ },
154
+ {
155
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_rdf3xPrimary",
156
+ "memberFieldName": "rdf3xPrimary"
157
+ },
158
+ {
159
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_compatibilityStore",
160
+ "memberFieldName": "compatibilityStore"
161
+ },
162
+ {
163
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_shadowComparator",
164
+ "memberFieldName": "shadowComparator"
165
+ },
166
+ {
167
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_queryEngine",
168
+ "memberFieldName": "queryEngine"
169
+ },
170
+ {
171
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_rdf3xDirty",
172
+ "memberFieldName": "rdf3xDirty"
173
+ },
174
+ {
175
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_constructor",
176
+ "memberFieldName": "constructor"
177
+ },
178
+ {
179
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_open",
180
+ "memberFieldName": "open"
181
+ },
182
+ {
183
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_close",
184
+ "memberFieldName": "close"
185
+ },
186
+ {
187
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_put",
188
+ "memberFieldName": "put"
189
+ },
190
+ {
191
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_replaceSource",
192
+ "memberFieldName": "replaceSource"
193
+ },
194
+ {
195
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_deleteSource",
196
+ "memberFieldName": "deleteSource"
197
+ },
198
+ {
199
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_delete",
200
+ "memberFieldName": "delete"
201
+ },
202
+ {
203
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_scan",
204
+ "memberFieldName": "scan"
205
+ },
206
+ {
207
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_query",
208
+ "memberFieldName": "query"
209
+ },
210
+ {
211
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_indexTextSource",
212
+ "memberFieldName": "indexTextSource"
213
+ },
214
+ {
215
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_deleteTextSource",
216
+ "memberFieldName": "deleteTextSource"
217
+ },
218
+ {
219
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_searchText",
220
+ "memberFieldName": "searchText"
221
+ },
222
+ {
223
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_indexVectorSource",
224
+ "memberFieldName": "indexVectorSource"
225
+ },
226
+ {
227
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_deleteVectorSource",
228
+ "memberFieldName": "deleteVectorSource"
229
+ },
230
+ {
231
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_searchVector",
232
+ "memberFieldName": "searchVector"
233
+ },
234
+ {
235
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_shadowScan",
236
+ "memberFieldName": "shadowScan"
237
+ },
238
+ {
239
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_shadowRdf3xScan",
240
+ "memberFieldName": "shadowRdf3xScan"
241
+ },
242
+ {
243
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_shadowRdf3xJoin",
244
+ "memberFieldName": "shadowRdf3xJoin"
245
+ },
246
+ {
247
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_supportsPrimary",
248
+ "memberFieldName": "supportsPrimary"
249
+ },
250
+ {
251
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_requireTextIndex",
252
+ "memberFieldName": "requireTextIndex"
253
+ },
254
+ {
255
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_requireVectorIndex",
256
+ "memberFieldName": "requireVectorIndex"
257
+ },
258
+ {
259
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_requireRdf3xIndex",
260
+ "memberFieldName": "requireRdf3xIndex"
261
+ },
262
+ {
263
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_markRdf3xDirty",
264
+ "memberFieldName": "markRdf3xDirty"
265
+ },
266
+ {
267
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine__member_refreshRdf3xPrimary",
268
+ "memberFieldName": "refreshRdf3xPrimary"
269
+ }
270
+ ],
271
+ "constructorArguments": [
272
+ {
273
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options__constructorArgument",
274
+ "fields": [
275
+ {
276
+ "keyRaw": "index",
277
+ "value": {
278
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_index__constructorArgument",
279
+ "fields": [
280
+ {
281
+ "keyRaw": "path",
282
+ "value": {
283
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_index_path"
284
+ }
285
+ },
286
+ {
287
+ "keyRaw": "debug",
288
+ "value": {
289
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_index_debug"
290
+ }
291
+ }
292
+ ]
293
+ }
294
+ },
295
+ {
296
+ "keyRaw": "textIndex",
297
+ "value": {
298
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_textIndex__constructorArgument",
299
+ "fields": [
300
+ {
301
+ "keyRaw": "path",
302
+ "value": {
303
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_textIndex_path"
304
+ }
305
+ }
306
+ ]
307
+ }
308
+ },
309
+ {
310
+ "keyRaw": "vectorIndex",
311
+ "value": {
312
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_vectorIndex__constructorArgument",
313
+ "fields": [
314
+ {
315
+ "keyRaw": "path",
316
+ "value": {
317
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_vectorIndex_path"
318
+ }
319
+ },
320
+ {
321
+ "keyRaw": "defaultMetric",
322
+ "value": {
323
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_vectorIndex_defaultMetric"
324
+ }
325
+ }
326
+ ]
327
+ }
328
+ },
329
+ {
330
+ "keyRaw": "rdf3xIndex",
331
+ "value": {
332
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_rdf3xIndex__constructorArgument",
333
+ "fields": [
334
+ {
335
+ "keyRaw": "path",
336
+ "value": {
337
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_rdf3xIndex_path"
338
+ }
339
+ },
340
+ {
341
+ "keyRaw": "debug",
342
+ "value": {
343
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_rdf3xIndex_debug"
344
+ }
345
+ }
346
+ ]
347
+ }
348
+ },
349
+ {
350
+ "keyRaw": "rdf3xPrimary",
351
+ "value": {
352
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_rdf3xPrimary"
353
+ }
354
+ },
355
+ {
356
+ "keyRaw": "compatibilityStore",
357
+ "value": {
358
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_compatibilityStore"
359
+ }
360
+ },
361
+ {
362
+ "keyRaw": "autoOpen",
363
+ "value": {
364
+ "@id": "undefineds:dist/storage/rdf/SolidRdfEngine.jsonld#SolidRdfEngine_options_autoOpen"
365
+ }
366
+ }
367
+ ]
368
+ }
369
+ ]
370
+ }
371
+ ]
372
+ }
@@ -0,0 +1,92 @@
1
+ import type { AsyncIterator } from 'asynciterator';
2
+ import type { Bindings } from '@comunica/types';
3
+ import type { Quad } from '@rdfjs/types';
4
+ import type { SparqlEngine } from '../sparql/SubgraphQueryEngine';
5
+ import type { ShadowRdfQuintStore } from './ShadowRdfQuintStore';
6
+ import type { SolidRdfEngine } from './SolidRdfEngine';
7
+ export interface SolidRdfSparqlEngineOptions {
8
+ rdfEngine: SolidRdfEngine;
9
+ fallback: SparqlEngine;
10
+ shadowStore?: ShadowRdfQuintStore;
11
+ enablePrimary?: boolean;
12
+ onFallback?: (reason: SolidRdfSparqlFallback) => void;
13
+ }
14
+ export interface SolidRdfSparqlFallback {
15
+ operation: 'queryBindings' | 'queryBoolean' | 'queryQuads' | 'queryVoid' | 'constructGraph' | 'listGraphs';
16
+ reason: string;
17
+ }
18
+ export type SolidRdfSparqlOperation = SolidRdfSparqlFallback['operation'];
19
+ export interface SolidRdfSparqlOperationCount {
20
+ operation: SolidRdfSparqlOperation;
21
+ primaryCount: number;
22
+ fallbackCount: number;
23
+ totalCount: number;
24
+ fallbackRate: number;
25
+ primaryDurationMs: number;
26
+ fallbackDurationMs: number;
27
+ }
28
+ export interface SolidRdfSparqlPrimaryMetric {
29
+ operation: SolidRdfSparqlOperation;
30
+ durationMs: number;
31
+ scannedRows: number;
32
+ returnedRows: number;
33
+ plan: string[];
34
+ indexChoices: string[];
35
+ }
36
+ export interface SolidRdfSparqlFallbackMetric extends SolidRdfSparqlFallback {
37
+ durationMs: number;
38
+ }
39
+ export interface SolidRdfSparqlMetricsSnapshot {
40
+ primaryCount: number;
41
+ fallbackCount: number;
42
+ totalCount: number;
43
+ fallbackRate: number;
44
+ operationCounts: SolidRdfSparqlOperationCount[];
45
+ lastPrimary?: SolidRdfSparqlPrimaryMetric;
46
+ lastFallback?: SolidRdfSparqlFallbackMetric;
47
+ }
48
+ export interface SolidRdfSparqlFallbackBudget {
49
+ maxFallbackRate?: number;
50
+ maxFallbackCount?: number;
51
+ operations?: SolidRdfSparqlOperation[];
52
+ }
53
+ type BindingsStream = AsyncIterator<Bindings> & {
54
+ metadata?: () => Promise<{
55
+ variables: import('@rdfjs/types').Variable[];
56
+ }>;
57
+ };
58
+ export declare class SolidRdfSparqlEngine implements SparqlEngine {
59
+ private readonly adapter;
60
+ private readonly bindingsFactory;
61
+ private readonly rdfEngine;
62
+ private readonly fallback;
63
+ private readonly shadowStore?;
64
+ private readonly enablePrimary;
65
+ private readonly onFallback?;
66
+ private readonly operationCounts;
67
+ private lastPrimary?;
68
+ private lastFallback?;
69
+ constructor(rdfEngine: SolidRdfEngine, fallback: SparqlEngine, shadowStore?: ShadowRdfQuintStore, enablePrimary?: boolean, onFallback?: (reason: SolidRdfSparqlFallback) => void);
70
+ queryBindings(query: string, basePath: string): Promise<BindingsStream>;
71
+ queryBoolean(query: string, basePath: string): Promise<boolean>;
72
+ queryQuads(query: string, basePath: string): Promise<any>;
73
+ queryVoid(query: string, basePath: string): Promise<void>;
74
+ constructGraph(graph: string, basePath: string): Promise<AsyncIterator<Quad>>;
75
+ listGraphs(basePath: string): Promise<Set<string>>;
76
+ close(): Promise<void>;
77
+ getMetrics(): SolidRdfSparqlMetricsSnapshot;
78
+ assertFallbackBudget(budget?: SolidRdfSparqlFallbackBudget): void;
79
+ resetMetrics(): void;
80
+ private bindingsStream;
81
+ private bindings;
82
+ private fallbackWith;
83
+ private ensureReady;
84
+ private executeSelectPrimary;
85
+ private executeConstructPrimary;
86
+ private executeQuadsPrimary;
87
+ private executeDescribePrimary;
88
+ private recordPrimary;
89
+ private recordFallback;
90
+ private countsFor;
91
+ }
92
+ export {};