@undefineds.co/xpod 0.3.75 → 0.4.0-rc.140

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 (362) hide show
  1. package/bin/xpod.js +43 -8
  2. package/config/bun.json +45 -48
  3. package/config/cloud.json +13 -90
  4. package/config/components-ignore.json +0 -1
  5. package/config/local.json +111 -63
  6. package/config/resolver.json +4 -2
  7. package/config/terminal.json +4 -1
  8. package/config/xpod.base.json +16 -8
  9. package/config/xpod.json +51 -54
  10. package/dist/acceptance/PublicCloudSemanticConformance.d.ts +4 -0
  11. package/dist/acceptance/PublicCloudSemanticConformance.js +214 -0
  12. package/dist/acceptance/QleverSearchConformance.d.ts +39 -0
  13. package/dist/acceptance/QleverSearchConformance.js +686 -0
  14. package/dist/acceptance/QleverSemanticConformance.d.ts +3 -0
  15. package/dist/acceptance/QleverSemanticConformance.js +178 -0
  16. package/dist/acceptance/RdfSemanticConformance.d.ts +114 -0
  17. package/dist/acceptance/RdfSemanticConformance.js +307 -0
  18. package/dist/acceptance/run-installed-qlever-conformance.d.ts +12 -0
  19. package/dist/acceptance/run-installed-qlever-conformance.js +87 -0
  20. package/dist/acceptance/run-installed-rdf-conformance.d.ts +12 -0
  21. package/dist/acceptance/run-installed-rdf-conformance.js +88 -0
  22. package/dist/ai/service/EmbeddingProviderError.d.ts +7 -0
  23. package/dist/ai/service/EmbeddingProviderError.js +42 -0
  24. package/dist/api/ai-gateway/connect/index.js +5 -2
  25. package/dist/api/auth/AuthContext.d.ts +5 -0
  26. package/dist/api/auth/AuthContext.js +10 -0
  27. package/dist/api/container/common.js +20 -1
  28. package/dist/api/container/rdf.d.ts +1 -0
  29. package/dist/api/container/rdf.js +43 -4
  30. package/dist/api/container/types.d.ts +4 -0
  31. package/dist/api/runs/InngestRunExecutionBackend.d.ts +2 -2
  32. package/dist/api/runs/PiAgentRuntimeDriver.d.ts +2 -0
  33. package/dist/api/runs/PiAgentRuntimeDriver.js +1 -0
  34. package/dist/api/runs/RdfRunContextRetriever.d.ts +8 -0
  35. package/dist/api/runs/RdfRunContextRetriever.js +23 -1
  36. package/dist/api/runtime.js +20 -6
  37. package/dist/api/service/RdfSearchIndexingService.d.ts +37 -3
  38. package/dist/api/service/RdfSearchIndexingService.js +130 -18
  39. package/dist/api/service/RdfSearchIndexingSolidFsSyncer.d.ts +8 -0
  40. package/dist/api/service/RdfSearchIndexingSolidFsSyncer.js +102 -15
  41. package/dist/api/service/RdfSearchReconciliationWorker.d.ts +76 -0
  42. package/dist/api/service/RdfSearchReconciliationWorker.js +294 -0
  43. package/dist/api/tasks/InngestTaskScheduler.d.ts +4 -4
  44. package/dist/components/components.jsonld +9 -12
  45. package/dist/components/context.jsonld +227 -348
  46. package/dist/document/MarkdownRetrievalPointProjector.d.ts +33 -0
  47. package/dist/document/MarkdownRetrievalPointProjector.js +196 -0
  48. package/dist/document/MarkdownRetrievalPointProjector.jsonld +135 -0
  49. package/dist/document/ReaderMaterialization.d.ts +34 -0
  50. package/dist/document/ReaderMaterialization.js +3 -0
  51. package/dist/document/ReaderMaterialization.jsonld +151 -0
  52. package/dist/document/ReaderMaterializationRepository.d.ts +27 -0
  53. package/dist/document/ReaderMaterializationRepository.js +400 -0
  54. package/dist/document/ReaderMaterializationRepository.jsonld +84 -0
  55. package/dist/document/index.d.ts +3 -1
  56. package/dist/document/index.js +3 -1
  57. package/dist/http/SubgraphSparqlHttpHandler.js +34 -54
  58. package/dist/http/search/SearchHttpHandler.js +14 -12
  59. package/dist/http/terminal/TerminalHttpHandler.d.ts +3 -0
  60. package/dist/http/terminal/TerminalHttpHandler.js +1 -0
  61. package/dist/http/terminal/TerminalHttpHandler.jsonld +11 -0
  62. package/dist/identity/drizzle/DrizzleIndexedStorage.js +19 -39
  63. package/dist/identity/drizzle/db.d.ts +1 -0
  64. package/dist/identity/drizzle/db.js +35 -0
  65. package/dist/index.d.ts +9 -17
  66. package/dist/index.js +14 -22
  67. package/dist/provision/ProvisionPodCreator.d.ts +1 -1
  68. package/dist/provision/ProvisionPodCreator.js +4 -3
  69. package/dist/search/RdfSearchIntentSink.d.ts +17 -0
  70. package/dist/search/RdfSearchIntentSink.js +46 -0
  71. package/dist/search/RdfSearchIntentSink.jsonld +47 -0
  72. package/dist/search/RdfSearchReconciliationRepository.d.ts +81 -0
  73. package/dist/search/RdfSearchReconciliationRepository.js +771 -0
  74. package/dist/solidfs/LocalRdfAuthorityRecoveryInitializer.d.ts +15 -0
  75. package/dist/solidfs/LocalRdfAuthorityRecoveryInitializer.js +48 -0
  76. package/dist/solidfs/LocalRdfAuthorityRecoveryInitializer.jsonld +99 -0
  77. package/dist/solidfs/RdfIndexSolidFsSyncer.js +22 -4
  78. package/dist/solidfs/SolidFsSyncJournal.d.ts +7 -1
  79. package/dist/solidfs/SolidFsSyncJournal.js +20 -5
  80. package/dist/solidfs/SolidFsSyncJournal.jsonld +43 -0
  81. package/dist/solidfs/index.d.ts +1 -0
  82. package/dist/solidfs/index.js +1 -0
  83. package/dist/storage/SparqlUpdateResourceStore.js +3 -3
  84. package/dist/storage/accessors/MixDataAccessor.d.ts +21 -29
  85. package/dist/storage/accessors/MixDataAccessor.js +182 -399
  86. package/dist/storage/accessors/MixDataAccessor.jsonld +109 -87
  87. package/dist/storage/accessors/SolidRdfDataAccessor.d.ts +12 -8
  88. package/dist/storage/accessors/SolidRdfDataAccessor.js +189 -59
  89. package/dist/storage/accessors/SolidRdfDataAccessor.jsonld +14 -29
  90. package/dist/storage/rdf/LocalQleverNativeSparqlClient.d.ts +55 -0
  91. package/dist/storage/rdf/LocalQleverNativeSparqlClient.js +519 -0
  92. package/dist/storage/rdf/LocalQleverNativeSparqlClient.jsonld +314 -0
  93. package/dist/storage/rdf/PostgresRdfEngine.d.ts +3 -1
  94. package/dist/storage/rdf/PostgresRdfEngine.js +111 -74
  95. package/dist/storage/rdf/PostgresRdfEngine.jsonld +12 -22
  96. package/dist/storage/rdf/PostgresRdfSchemaValidation.d.ts +8 -0
  97. package/dist/storage/rdf/PostgresRdfSchemaValidation.js +82 -0
  98. package/dist/storage/rdf/PostgresRdfTextIndex.d.ts +6 -3
  99. package/dist/storage/rdf/PostgresRdfTextIndex.js +158 -80
  100. package/dist/storage/rdf/PostgresRdfTextIndex.jsonld +16 -4
  101. package/dist/storage/rdf/PostgresRdfVectorIndex.d.ts +4 -5
  102. package/dist/storage/rdf/PostgresRdfVectorIndex.js +124 -120
  103. package/dist/storage/rdf/PostgresRdfVectorIndex.jsonld +14 -18
  104. package/dist/storage/rdf/QleverSparqlEngine.d.ts +35 -0
  105. package/dist/storage/rdf/QleverSparqlEngine.js +185 -0
  106. package/dist/storage/rdf/QleverSparqlEngine.jsonld +70 -0
  107. package/dist/storage/rdf/Rdf3xIndex.js +20 -16
  108. package/dist/storage/rdf/RdfAccessScope.d.ts +4 -0
  109. package/dist/storage/rdf/RdfAccessScope.js +74 -9
  110. package/dist/storage/rdf/RdfAccessScope.jsonld +16 -0
  111. package/dist/storage/rdf/RdfEngineRdfJsSource.d.ts +14 -0
  112. package/dist/storage/rdf/RdfEngineRdfJsSource.js +179 -0
  113. package/dist/storage/rdf/RdfQuadIndex.d.ts +13 -14
  114. package/dist/storage/rdf/RdfQuadIndex.js +286 -99
  115. package/dist/storage/rdf/RdfQuadIndex.jsonld +10 -22
  116. package/dist/storage/rdf/RdfQueryExecutor.js +10 -4
  117. package/dist/storage/rdf/RdfQuerySparqlEngine.d.ts +33 -0
  118. package/dist/storage/rdf/RdfQuerySparqlEngine.js +215 -0
  119. package/dist/storage/rdf/RdfQuerySparqlEngine.jsonld +78 -0
  120. package/dist/storage/rdf/RdfSparqlAdapter.d.ts +0 -4
  121. package/dist/storage/rdf/RdfSparqlAdapter.js +75 -173
  122. package/dist/storage/rdf/RdfSparqlBoundary.d.ts +37 -0
  123. package/dist/storage/rdf/RdfSparqlBoundary.js +247 -0
  124. package/dist/storage/rdf/RdfSparqlSerialization.d.ts +3 -0
  125. package/dist/storage/rdf/RdfSparqlSerialization.js +19 -0
  126. package/dist/storage/rdf/RdfSqliteConnection.d.ts +7 -0
  127. package/dist/storage/rdf/RdfSqliteConnection.js +23 -0
  128. package/dist/storage/rdf/RdfTermDictionary.d.ts +0 -8
  129. package/dist/storage/rdf/RdfTermDictionary.js +0 -136
  130. package/dist/storage/rdf/RdfTermDictionary.jsonld +0 -32
  131. package/dist/storage/rdf/RdfTermSemantics.d.ts +6 -0
  132. package/dist/storage/rdf/RdfTermSemantics.js +29 -0
  133. package/dist/storage/rdf/RdfTextIndex.d.ts +5 -6
  134. package/dist/storage/rdf/RdfTextIndex.js +187 -115
  135. package/dist/storage/rdf/RdfTextIndex.jsonld +10 -14
  136. package/dist/storage/rdf/RdfVectorIndex.d.ts +4 -4
  137. package/dist/storage/rdf/RdfVectorIndex.js +156 -233
  138. package/dist/storage/rdf/RdfVectorIndex.jsonld +10 -14
  139. package/dist/storage/rdf/SolidRdfEngine.d.ts +16 -21
  140. package/dist/storage/rdf/SolidRdfEngine.js +28 -308
  141. package/dist/storage/rdf/SolidRdfEngine.jsonld +26 -148
  142. package/dist/storage/rdf/XpodComunicaQueryEngine.d.ts +10 -0
  143. package/dist/storage/rdf/XpodComunicaQueryEngine.js +72 -0
  144. package/dist/storage/rdf/index.d.ts +7 -6
  145. package/dist/storage/rdf/index.js +17 -12
  146. package/dist/storage/rdf/models-benchmark.d.ts +5 -1
  147. package/dist/storage/rdf/models-benchmark.js +17 -19
  148. package/dist/storage/rdf/types.d.ts +68 -6
  149. package/dist/storage/rdf/types.jsonld +69 -0
  150. package/dist/storage/sparql/SubgraphQueryEngine.d.ts +13 -7
  151. package/dist/storage/sparql/SubgraphQueryEngine.js +6 -6
  152. package/dist/storage/vector/index.d.ts +0 -1
  153. package/dist/storage/vector/index.js +0 -1
  154. package/dist/terminal/AclPermissionService.d.ts +4 -5
  155. package/dist/terminal/AclPermissionService.js +55 -75
  156. package/dist/terminal/TerminalSessionManager.d.ts +3 -2
  157. package/dist/terminal/TerminalSessionManager.js +3 -3
  158. package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/ldp-executor.d.ts +1 -0
  159. package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/ldp-executor.d.ts.map +1 -1
  160. package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/ldp-executor.js +29 -26
  161. package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/ldp-executor.js.map +1 -1
  162. package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/sparql-strategy.d.ts.map +1 -1
  163. package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/sparql-strategy.js +9 -4
  164. package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/sparql-strategy.js.map +1 -1
  165. package/node_modules/@undefineds.co/drizzle-solid/dist/core/notifications/notifications-client.d.ts +1 -0
  166. package/node_modules/@undefineds.co/drizzle-solid/dist/core/notifications/notifications-client.d.ts.map +1 -1
  167. package/node_modules/@undefineds.co/drizzle-solid/dist/core/notifications/notifications-client.js +6 -3
  168. package/node_modules/@undefineds.co/drizzle-solid/dist/core/notifications/notifications-client.js.map +1 -1
  169. package/node_modules/@undefineds.co/drizzle-solid/dist/core/pod-database.js +3 -3
  170. package/node_modules/@undefineds.co/drizzle-solid/dist/core/pod-database.js.map +1 -1
  171. package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/select-query-builder.d.ts +6 -0
  172. package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/select-query-builder.d.ts.map +1 -1
  173. package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/select-query-builder.js +13 -3
  174. package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/select-query-builder.js.map +1 -1
  175. package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-where-policy.d.ts +1 -0
  176. package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-where-policy.d.ts.map +1 -1
  177. package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-where-policy.js +31 -0
  178. package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-where-policy.js.map +1 -1
  179. package/node_modules/@undefineds.co/drizzle-solid/dist/core/sparql/builder/expression-builder.d.ts.map +1 -1
  180. package/node_modules/@undefineds.co/drizzle-solid/dist/core/sparql/builder/expression-builder.js +5 -0
  181. package/node_modules/@undefineds.co/drizzle-solid/dist/core/sparql/builder/expression-builder.js.map +1 -1
  182. package/node_modules/@undefineds.co/drizzle-solid/dist/core/sparql-executor.d.ts +1 -0
  183. package/node_modules/@undefineds.co/drizzle-solid/dist/core/sparql-executor.d.ts.map +1 -1
  184. package/node_modules/@undefineds.co/drizzle-solid/dist/core/sparql-executor.js +45 -0
  185. package/node_modules/@undefineds.co/drizzle-solid/dist/core/sparql-executor.js.map +1 -1
  186. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-executor.d.ts +1 -0
  187. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-executor.d.ts.map +1 -1
  188. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-executor.js +29 -26
  189. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-executor.js.map +1 -1
  190. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/sparql-strategy.d.ts.map +1 -1
  191. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/sparql-strategy.js +9 -4
  192. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/sparql-strategy.js.map +1 -1
  193. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/notifications-client.d.ts +1 -0
  194. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/notifications-client.d.ts.map +1 -1
  195. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/notifications-client.js +6 -3
  196. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/notifications-client.js.map +1 -1
  197. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-database.js +3 -3
  198. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-database.js.map +1 -1
  199. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/select-query-builder.d.ts +6 -0
  200. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/select-query-builder.d.ts.map +1 -1
  201. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/select-query-builder.js +14 -4
  202. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/select-query-builder.js.map +1 -1
  203. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-where-policy.d.ts +1 -0
  204. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-where-policy.d.ts.map +1 -1
  205. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-where-policy.js +30 -0
  206. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-where-policy.js.map +1 -1
  207. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql/builder/expression-builder.d.ts.map +1 -1
  208. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql/builder/expression-builder.js +5 -0
  209. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql/builder/expression-builder.js.map +1 -1
  210. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql-executor.d.ts +1 -0
  211. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql-executor.d.ts.map +1 -1
  212. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql-executor.js +45 -0
  213. package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql-executor.js.map +1 -1
  214. package/node_modules/@undefineds.co/drizzle-solid/package.json +5 -4
  215. package/package.json +22 -8
  216. package/static/app/assets/{index-36TJKN-3.js → index-BikOyGPu.js} +34 -34
  217. package/static/app/assets/inrupt-smoke.js +2 -2
  218. package/static/app/assets/main.css +1 -1
  219. package/static/app/assets/main.js +11 -11
  220. package/static/auth-callback/assets/{AiConfigContext-BvBdu_A3.js → AiConfigContext-iQ74JmRZ.js} +1 -1
  221. package/static/auth-callback/assets/{AiConfigPage-BpDw4jco.js → AiConfigPage-BBDKE1gJ.js} +1 -1
  222. package/static/auth-callback/assets/{DocumentProcessingPanel-BmZ_jzRr.js → DocumentProcessingPanel-D9NntIEK.js} +1 -1
  223. package/static/auth-callback/assets/{IndexLifecyclePanel-BfQBjN4z.js → IndexLifecyclePanel-BG07yBdA.js} +1 -1
  224. package/static/auth-callback/assets/{IndexSubjectPanel-BlsnatPt.js → IndexSubjectPanel-B-bUnU3G.js} +1 -1
  225. package/static/auth-callback/assets/{ModelAssignmentsPanel-KA6Mdndz.js → ModelAssignmentsPanel-C7I-Nqy-.js} +1 -1
  226. package/static/auth-callback/assets/{ModelsPage-C7jymyIY.js → ModelsPage-C2hxyrmI.js} +1 -1
  227. package/static/auth-callback/assets/{NetworkPage-k2ShktNm.js → NetworkPage-IGIc2q1Y.js} +1 -1
  228. package/static/auth-callback/assets/{PaneListHeader-mLMe_dvU.js → PaneListHeader-CebuPl_g.js} +1 -1
  229. package/static/auth-callback/assets/{SearchIndexingPanel-CqV9um_t.js → SearchIndexingPanel-6HnZSg00.js} +1 -1
  230. package/static/auth-callback/assets/{StatusSubjectPanel-BgMBTbr2.js → StatusSubjectPanel-votxBkr5.js} +1 -1
  231. package/static/auth-callback/assets/{StatusWorkspace-zbSyhdG2.js → StatusWorkspace-Cksl61zX.js} +1 -1
  232. package/static/auth-callback/assets/{SystemSettingsPage-CtW79nW6.js → SystemSettingsPage-CKZFUaZT.js} +1 -1
  233. package/static/auth-callback/assets/{SystemSettingsSubjectPanel-ZOPKYUtZ.js → SystemSettingsSubjectPanel-pzfUcCf4.js} +1 -1
  234. package/static/auth-callback/assets/{activity-BQ-CQE3O.js → activity-DQL6kZHZ.js} +1 -1
  235. package/static/auth-callback/assets/auth-callback-B_s8Ye5Z.css +1 -0
  236. package/static/auth-callback/assets/{auth-callback-Htr_CB_g.js → auth-callback-BxQMd_Mc.js} +39 -39
  237. package/static/auth-callback/assets/{badge-D5SGTJeO.js → badge-DvW4LUHH.js} +1 -1
  238. package/static/auth-callback/assets/{download-DK183Ldo.js → download-Cx_uaCR1.js} +1 -1
  239. package/static/auth-callback/assets/{external-link-LDHy_4bn.js → external-link-D6L6ExH1.js} +1 -1
  240. package/static/auth-callback/assets/{index-BWrvgHqK.js → index-BAS_hxGu.js} +1 -1
  241. package/static/auth-callback/assets/{index-2WmlePQ9.js → index-BmBjpCoD.js} +1 -1
  242. package/static/auth-callback/assets/{index-browser-DUd4E4-x.js → index-browser-pdn4D3M4.js} +1 -1
  243. package/static/auth-callback/assets/{key-round-ibX79Kr-.js → key-round-BTBzOggq.js} +1 -1
  244. package/static/auth-callback/assets/{rotate-ccw-B2_VMaiX.js → rotate-ccw-eV7Cx8sB.js} +1 -1
  245. package/static/auth-callback/assets/{skeleton-F4nrpycc.js → skeleton-Bg4GYgBM.js} +1 -1
  246. package/static/auth-callback/assets/{waypoints-DImIq93f.js → waypoints-CJbydf0B.js} +1 -1
  247. package/static/auth-callback/assets/{workspace-layout-IVCSYU21.js → workspace-layout-C6Hh8Xf-.js} +1 -1
  248. package/static/auth-callback/auth-callback.html +2 -2
  249. package/static/dashboard/assets/{AiConfigContext-cjjfYTo9.js → AiConfigContext-BkJj28vK.js} +1 -1
  250. package/static/dashboard/assets/{AiConfigPage-CO0DSD_j.js → AiConfigPage-Cs9B4uyp.js} +1 -1
  251. package/static/dashboard/assets/{DocumentProcessingPanel-DMGnH8Oj.js → DocumentProcessingPanel-BBWmM7mS.js} +1 -1
  252. package/static/dashboard/assets/{IndexLifecyclePanel-DSkIOCL5.js → IndexLifecyclePanel-D5xGTT_i.js} +1 -1
  253. package/static/dashboard/assets/{IndexSubjectPanel-qWN_DbAp.js → IndexSubjectPanel-d-mjDthn.js} +1 -1
  254. package/static/dashboard/assets/{ModelAssignmentsPanel-DCf83uM3.js → ModelAssignmentsPanel-C-OLNbqf.js} +1 -1
  255. package/static/dashboard/assets/{ModelsPage-CMnvSrl5.js → ModelsPage-CBrLjuUn.js} +1 -1
  256. package/static/dashboard/assets/{NetworkPage-C8Gkwclb.js → NetworkPage-BlYk8L1z.js} +1 -1
  257. package/static/dashboard/assets/{PaneListHeader-BtU_8cDK.js → PaneListHeader-A5oZJQC0.js} +1 -1
  258. package/static/dashboard/assets/{SearchIndexingPanel-DEn12pNU.js → SearchIndexingPanel-Bs1j8ZP2.js} +1 -1
  259. package/static/dashboard/assets/{StatusSubjectPanel-B1_ILg2d.js → StatusSubjectPanel-Qao3orvi.js} +1 -1
  260. package/static/dashboard/assets/{StatusWorkspace-BG6nMNCo.js → StatusWorkspace-rDM0yDtk.js} +1 -1
  261. package/static/dashboard/assets/{SystemSettingsPage-BnWYIXaM.js → SystemSettingsPage-FPRPkKaR.js} +1 -1
  262. package/static/dashboard/assets/{SystemSettingsSubjectPanel-C_mYVPWb.js → SystemSettingsSubjectPanel-CjlJAxnX.js} +1 -1
  263. package/static/dashboard/assets/{activity-DYJ7PdRl.js → activity-CJ5K6hYC.js} +1 -1
  264. package/static/dashboard/assets/{badge-BIaZco1P.js → badge-L-NMOi1P.js} +1 -1
  265. package/static/dashboard/assets/dashboard-B_s8Ye5Z.css +1 -0
  266. package/static/dashboard/assets/{dashboard-Dl40_MEa.js → dashboard-DyjAyYxx.js} +34 -34
  267. package/static/dashboard/assets/{download-By16k9VK.js → download-Bi4u5K5B.js} +1 -1
  268. package/static/dashboard/assets/{external-link-B92xOG_d.js → external-link-jmhLDfvT.js} +1 -1
  269. package/static/dashboard/assets/{index-BajZpJ48.js → index-BoaGJBxf.js} +1 -1
  270. package/static/dashboard/assets/{index-wsVPom_x.js → index-C22TAEi4.js} +1 -1
  271. package/static/dashboard/assets/{key-round-Clo5FOwA.js → key-round-Dk1VmMrn.js} +1 -1
  272. package/static/dashboard/assets/{rotate-ccw-smWSfi1L.js → rotate-ccw-DIfLsSwi.js} +1 -1
  273. package/static/dashboard/assets/{skeleton-BrTaGeJw.js → skeleton-BGPJMHb-.js} +1 -1
  274. package/static/dashboard/assets/{waypoints-DGPQInE7.js → waypoints-CY53egpu.js} +1 -1
  275. package/static/dashboard/assets/{workspace-layout-CPU4XRmb.js → workspace-layout-CoHkcx70.js} +1 -1
  276. package/static/dashboard/dashboard.html +2 -2
  277. package/static/settings/assets/{AiConfigContext-CT29_OyW.js → AiConfigContext-BcEPlEJe.js} +1 -1
  278. package/static/settings/assets/{AiConfigPage-WIE95S28.js → AiConfigPage-D-t3ZUhg.js} +1 -1
  279. package/static/settings/assets/{DocumentProcessingPanel-KG8Sq999.js → DocumentProcessingPanel-m2SasiMO.js} +1 -1
  280. package/static/settings/assets/{IndexLifecyclePanel-iKvtHDXY.js → IndexLifecyclePanel-BNmAvx8V.js} +1 -1
  281. package/static/settings/assets/{IndexSubjectPanel-BQdSCkk4.js → IndexSubjectPanel-C5-L2AcW.js} +1 -1
  282. package/static/settings/assets/{ModelAssignmentsPanel-P8QcVB0F.js → ModelAssignmentsPanel-Cfpkf02Y.js} +1 -1
  283. package/static/settings/assets/{ModelsPage-UZkZGqor.js → ModelsPage-DZrACwVN.js} +1 -1
  284. package/static/settings/assets/{NetworkPage-Dcpcvg15.js → NetworkPage-BlrGGfqL.js} +1 -1
  285. package/static/settings/assets/{PaneListHeader--gHtZws5.js → PaneListHeader-C3TCs1RI.js} +1 -1
  286. package/static/settings/assets/{SearchIndexingPanel-DdgJSJYQ.js → SearchIndexingPanel-Cyp3CUzX.js} +1 -1
  287. package/static/settings/assets/{StatusSubjectPanel-UOxp_XVL.js → StatusSubjectPanel-gRkb8WEX.js} +1 -1
  288. package/static/settings/assets/{StatusWorkspace-CPNXuD12.js → StatusWorkspace-Dptx4Ec2.js} +1 -1
  289. package/static/settings/assets/{SystemSettingsPage-B6ySeVPw.js → SystemSettingsPage-BWgGUQbs.js} +1 -1
  290. package/static/settings/assets/{SystemSettingsSubjectPanel-I7zWmpiI.js → SystemSettingsSubjectPanel-VflUvpgC.js} +1 -1
  291. package/static/settings/assets/{activity-CFhmzahP.js → activity-D7iNhTkQ.js} +1 -1
  292. package/static/settings/assets/{badge-BBdUc5B-.js → badge-DO0r_RT4.js} +1 -1
  293. package/static/settings/assets/{download-WJE9-yxQ.js → download-CsJlNSbd.js} +1 -1
  294. package/static/settings/assets/{external-link-RKoYyCp_.js → external-link-BCR7SHme.js} +1 -1
  295. package/static/settings/assets/{index-Bq2o0Bif.js → index-Cgq16ekN.js} +1 -1
  296. package/static/settings/assets/{index-DvxneI5O.js → index-SrhQvcrU.js} +1 -1
  297. package/static/settings/assets/{index-browser-Qmo6EsFT.js → index-browser-THpcMCnz.js} +1 -1
  298. package/static/settings/assets/{key-round-r-D9sQUK.js → key-round-Dd3jk1BT.js} +1 -1
  299. package/static/settings/assets/{rotate-ccw-D3IIhbPH.js → rotate-ccw-tiL14i1d.js} +1 -1
  300. package/static/settings/assets/settings-B_s8Ye5Z.css +1 -0
  301. package/static/settings/assets/{settings-D8oDBXWg.js → settings-CVLDPejo.js} +34 -34
  302. package/static/settings/assets/{skeleton-DrL4RQuw.js → skeleton-DBxLuNgU.js} +1 -1
  303. package/static/settings/assets/{waypoints-C5sRhpJw.js → waypoints-DS3e3hv7.js} +1 -1
  304. package/static/settings/assets/{workspace-layout-B4ALmWsM.js → workspace-layout-mucrxyTK.js} +1 -1
  305. package/static/settings/settings.html +2 -2
  306. package/config/search.json +0 -66
  307. package/dist/document/HeadingChunker.jsonld +0 -41
  308. package/dist/security/secret-cell/DeploymentRootKeyProvider.jsonld +0 -124
  309. package/dist/security/secret-cell/SecretCellVault.jsonld +0 -207
  310. package/dist/storage/PostgresDerivedIndexJournal.d.ts +0 -47
  311. package/dist/storage/PostgresDerivedIndexJournal.js +0 -408
  312. package/dist/storage/PostgresDerivedIndexJournal.jsonld +0 -303
  313. package/dist/storage/RdfDerivedIndexingListener.d.ts +0 -32
  314. package/dist/storage/RdfDerivedIndexingListener.js +0 -135
  315. package/dist/storage/RdfDerivedIndexingListener.jsonld +0 -228
  316. package/dist/storage/accessors/QuadstoreSparqlDataAccessor.d.ts +0 -148
  317. package/dist/storage/accessors/QuadstoreSparqlDataAccessor.js +0 -436
  318. package/dist/storage/accessors/QuadstoreSparqlDataAccessor.jsonld +0 -172
  319. package/dist/storage/accessors/QuintStoreSparqlDataAccessor.d.ts +0 -102
  320. package/dist/storage/accessors/QuintStoreSparqlDataAccessor.js +0 -474
  321. package/dist/storage/accessors/QuintStoreSparqlDataAccessor.jsonld +0 -192
  322. package/dist/storage/rdf/RdfSparqlAdapter.jsonld +0 -486
  323. package/dist/storage/rdf/ShadowRdfQuintStore.d.ts +0 -59
  324. package/dist/storage/rdf/ShadowRdfQuintStore.js +0 -216
  325. package/dist/storage/rdf/ShadowRdfQuintStore.jsonld +0 -312
  326. package/dist/storage/rdf/SolidRdfSparqlEngine.d.ts +0 -107
  327. package/dist/storage/rdf/SolidRdfSparqlEngine.js +0 -1117
  328. package/dist/storage/rdf/SolidRdfSparqlEngine.jsonld +0 -312
  329. package/dist/storage/sparql/AlgebraUtils.d.ts +0 -48
  330. package/dist/storage/sparql/AlgebraUtils.js +0 -118
  331. package/dist/storage/sparql/CompatibilitySparqlEngine.d.ts +0 -37
  332. package/dist/storage/sparql/CompatibilitySparqlEngine.js +0 -96
  333. package/dist/storage/sparql/CompatibilitySparqlEngine.jsonld +0 -123
  334. package/dist/storage/sparql/CompatibilitySparqlEngineImpl.d.ts +0 -36
  335. package/dist/storage/sparql/CompatibilitySparqlEngineImpl.js +0 -124
  336. package/dist/storage/sparql/ComunicaOptimizedEngine.d.ts +0 -59
  337. package/dist/storage/sparql/ComunicaOptimizedEngine.js +0 -254
  338. package/dist/storage/sparql/ComunicaQuintEngine.d.ts +0 -143
  339. package/dist/storage/sparql/ComunicaQuintEngine.js +0 -781
  340. package/dist/storage/sparql/ExpressionEvaluator.d.ts +0 -54
  341. package/dist/storage/sparql/ExpressionEvaluator.js +0 -340
  342. package/dist/storage/sparql/FilterPushdownExtractor.d.ts +0 -74
  343. package/dist/storage/sparql/FilterPushdownExtractor.js +0 -421
  344. package/dist/storage/sparql/OptimizedQuadstoreEngine.d.ts +0 -65
  345. package/dist/storage/sparql/OptimizedQuadstoreEngine.js +0 -327
  346. package/dist/storage/sparql/OptimizedQuadstoreSource.d.ts +0 -46
  347. package/dist/storage/sparql/OptimizedQuadstoreSource.js +0 -118
  348. package/dist/storage/sparql/PatternBuilder.d.ts +0 -41
  349. package/dist/storage/sparql/PatternBuilder.js +0 -118
  350. package/dist/storage/sparql/QueryOptimizer.d.ts +0 -125
  351. package/dist/storage/sparql/QueryOptimizer.js +0 -375
  352. package/dist/storage/sparql/QuintEngine.d.ts +0 -92
  353. package/dist/storage/sparql/QuintEngine.js +0 -150
  354. package/dist/storage/sparql/QuintQuerySource.d.ts +0 -241
  355. package/dist/storage/sparql/QuintQuerySource.js +0 -1069
  356. package/dist/storage/sparql/SimpleSparqlExecutor.d.ts +0 -40
  357. package/dist/storage/sparql/SimpleSparqlExecutor.js +0 -131
  358. package/dist/storage/vector/VectorIndexingListener.d.ts +0 -114
  359. package/dist/storage/vector/VectorIndexingListener.js +0 -346
  360. package/static/auth-callback/assets/auth-callback-rWdEQY5f.css +0 -1
  361. package/static/dashboard/assets/dashboard-rWdEQY5f.css +0 -1
  362. package/static/settings/assets/settings-rWdEQY5f.css +0 -1
@@ -1,54 +0,0 @@
1
- /**
2
- * ExpressionEvaluator - In-memory SPARQL expression evaluation
3
- *
4
- * Evaluates SPARQL expressions that cannot be pushed down to the database.
5
- * Used for filtering bindings after initial pattern matching.
6
- */
7
- import type { Term, Bindings } from '@rdfjs/types';
8
- import type { Algebra } from 'sparqlalgebrajs';
9
- import type { QuintStore } from '../quint/types';
10
- import type { PatternBuilder } from './PatternBuilder';
11
- /**
12
- * Callback for extracting pattern from operation
13
- */
14
- export type ExtractPatternFn = (operation: Algebra.Operation) => {
15
- pattern: Algebra.Pattern;
16
- filter: Algebra.Expression | null;
17
- };
18
- /**
19
- * ExpressionEvaluator handles in-memory evaluation of SPARQL expressions
20
- */
21
- export declare class ExpressionEvaluator {
22
- private readonly store;
23
- private readonly patternBuilder;
24
- private readonly extractPatternAndFilter;
25
- constructor(store: QuintStore, patternBuilder: PatternBuilder, extractPatternAndFilter: ExtractPatternFn);
26
- /**
27
- * Evaluate filter expression tree against candidate bindings
28
- */
29
- evaluateFilterTree(expr: Algebra.Expression, candidates: Bindings[], pattern: Algebra.Pattern): Promise<Bindings[]>;
30
- /**
31
- * Evaluate operator expression
32
- */
33
- private evaluateOperator;
34
- /**
35
- * Union multiple binding sets
36
- */
37
- private unionBindings;
38
- /**
39
- * Evaluate EXISTS/NOT EXISTS
40
- */
41
- private evaluateExistence;
42
- private checkExists;
43
- /**
44
- * Evaluate single binding against operator
45
- */
46
- evaluateSingleBinding(expr: Algebra.OperatorExpression, binding: Bindings): boolean;
47
- getTermValue(expr: Algebra.Expression, binding: Bindings): Term | null;
48
- getNumericValue(expr: Algebra.Expression, binding: Bindings): number | null;
49
- getStringValue(expr: Algebra.Expression, binding: Bindings): string | null;
50
- compareTerms(left: Term | null, right: Term | null, op: string): boolean;
51
- isNumericLiteral(lit: any): boolean;
52
- effectiveBooleanValue(term: Term): boolean;
53
- getBindingKey(binding: Bindings): string;
54
- }
@@ -1,340 +0,0 @@
1
- "use strict";
2
- /**
3
- * ExpressionEvaluator - In-memory SPARQL expression evaluation
4
- *
5
- * Evaluates SPARQL expressions that cannot be pushed down to the database.
6
- * Used for filtering bindings after initial pattern matching.
7
- */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.ExpressionEvaluator = void 0;
10
- const rdf_data_factory_1 = require("rdf-data-factory");
11
- const serialization_1 = require("../quint/serialization");
12
- const dataFactory = new rdf_data_factory_1.DataFactory();
13
- /**
14
- * ExpressionEvaluator handles in-memory evaluation of SPARQL expressions
15
- */
16
- class ExpressionEvaluator {
17
- constructor(store, patternBuilder, extractPatternAndFilter) {
18
- this.store = store;
19
- this.patternBuilder = patternBuilder;
20
- this.extractPatternAndFilter = extractPatternAndFilter;
21
- }
22
- /**
23
- * Evaluate filter expression tree against candidate bindings
24
- */
25
- async evaluateFilterTree(expr, candidates, pattern) {
26
- if (candidates.length === 0)
27
- return [];
28
- switch (expr.expressionType) {
29
- case 'operator':
30
- return this.evaluateOperator(expr, candidates, pattern);
31
- case 'existence':
32
- return this.evaluateExistence(expr, candidates, pattern);
33
- case 'term':
34
- const termExpr = expr;
35
- return this.effectiveBooleanValue(termExpr.term) ? candidates : [];
36
- default:
37
- return candidates; // Unknown: be permissive
38
- }
39
- }
40
- /**
41
- * Evaluate operator expression
42
- */
43
- async evaluateOperator(expr, candidates, pattern) {
44
- const op = expr.operator.toLowerCase();
45
- // Logical AND
46
- if (op === '&&') {
47
- let result = candidates;
48
- for (const arg of expr.args) {
49
- result = await this.evaluateFilterTree(arg, result, pattern);
50
- }
51
- return result;
52
- }
53
- // Logical OR
54
- if (op === '||') {
55
- const resultSets = await Promise.all(expr.args.map(arg => this.evaluateFilterTree(arg, candidates, pattern)));
56
- return this.unionBindings(resultSets);
57
- }
58
- // Logical NOT
59
- if (op === '!') {
60
- const positives = await this.evaluateFilterTree(expr.args[0], candidates, pattern);
61
- const positiveKeys = new Set(positives.map(b => this.getBindingKey(b)));
62
- return candidates.filter(b => !positiveKeys.has(this.getBindingKey(b)));
63
- }
64
- // Other operators: evaluate each binding individually
65
- return candidates.filter(b => this.evaluateSingleBinding(expr, b));
66
- }
67
- /**
68
- * Union multiple binding sets
69
- */
70
- unionBindings(sets) {
71
- const seen = new Set();
72
- const result = [];
73
- for (const set of sets) {
74
- for (const binding of set) {
75
- const key = this.getBindingKey(binding);
76
- if (!seen.has(key)) {
77
- seen.add(key);
78
- result.push(binding);
79
- }
80
- }
81
- }
82
- return result;
83
- }
84
- /**
85
- * Evaluate EXISTS/NOT EXISTS
86
- */
87
- async evaluateExistence(expr, candidates, _pattern) {
88
- const results = [];
89
- for (const binding of candidates) {
90
- const exists = await this.checkExists(expr.input, binding);
91
- if (expr.not ? !exists : exists) {
92
- results.push(binding);
93
- }
94
- }
95
- return results;
96
- }
97
- async checkExists(subOperation, binding) {
98
- const { pattern: subPattern } = this.extractPatternAndFilter(subOperation);
99
- const quintPattern = this.patternBuilder.buildExistsPattern(subPattern, binding);
100
- const results = await this.store.get(quintPattern, { limit: 1 });
101
- return results.length > 0;
102
- }
103
- /**
104
- * Evaluate single binding against operator
105
- */
106
- evaluateSingleBinding(expr, binding) {
107
- const op = expr.operator.toLowerCase();
108
- // Comparison
109
- if (['=', '!=', '<', '>', '<=', '>='].includes(op)) {
110
- const left = this.getTermValue(expr.args[0], binding);
111
- const right = this.getTermValue(expr.args[1], binding);
112
- if (left === null || right === null)
113
- return false;
114
- return this.compareTerms(left, right, op);
115
- }
116
- // BOUND
117
- if (op === 'bound') {
118
- const varExpr = expr.args[0];
119
- if (varExpr.expressionType === 'term') {
120
- const term = varExpr.term;
121
- if (term.termType === 'Variable') {
122
- return binding.get(term) !== undefined;
123
- }
124
- }
125
- return false;
126
- }
127
- // String functions
128
- if (op === 'strstarts') {
129
- const str = this.getStringValue(expr.args[0], binding);
130
- const prefix = this.getStringValue(expr.args[1], binding);
131
- return str !== null && prefix !== null && str.startsWith(prefix);
132
- }
133
- if (op === 'strends') {
134
- const str = this.getStringValue(expr.args[0], binding);
135
- const suffix = this.getStringValue(expr.args[1], binding);
136
- return str !== null && suffix !== null && str.endsWith(suffix);
137
- }
138
- if (op === 'contains') {
139
- const str = this.getStringValue(expr.args[0], binding);
140
- const substr = this.getStringValue(expr.args[1], binding);
141
- return str !== null && substr !== null && str.includes(substr);
142
- }
143
- if (op === 'regex') {
144
- const str = this.getStringValue(expr.args[0], binding);
145
- const pattern = this.getStringValue(expr.args[1], binding);
146
- if (str === null || pattern === null)
147
- return false;
148
- try {
149
- const flags = expr.args[2] ? this.getStringValue(expr.args[2], binding) || '' : '';
150
- return new RegExp(pattern, flags).test(str);
151
- }
152
- catch {
153
- return false;
154
- }
155
- }
156
- // Type checking functions
157
- if (op === 'isiri' || op === 'isuri') {
158
- const term = this.getTermValue(expr.args[0], binding);
159
- return term !== null && term.termType === 'NamedNode';
160
- }
161
- if (op === 'isblank') {
162
- const term = this.getTermValue(expr.args[0], binding);
163
- return term !== null && term.termType === 'BlankNode';
164
- }
165
- if (op === 'isliteral') {
166
- const term = this.getTermValue(expr.args[0], binding);
167
- return term !== null && term.termType === 'Literal';
168
- }
169
- if (op === 'isnumeric') {
170
- const term = this.getTermValue(expr.args[0], binding);
171
- if (term?.termType === 'Literal') {
172
- const lit = term;
173
- return lit.datatype && serialization_1.NUMERIC_TYPES.has(lit.datatype.value);
174
- }
175
- return false;
176
- }
177
- // LANGMATCHES
178
- if (op === 'langmatches') {
179
- const langExpr = expr.args[0];
180
- if (langExpr.expressionType === 'operator' && langExpr.operator.toLowerCase() === 'lang') {
181
- const term = this.getTermValue(langExpr.args[0], binding);
182
- if (term?.termType === 'Literal') {
183
- const lit = term;
184
- const lang = lit.language || '';
185
- const pattern = this.getStringValue(expr.args[1], binding);
186
- if (pattern === '*')
187
- return lang.length > 0;
188
- if (pattern)
189
- return lang.toLowerCase() === pattern.toLowerCase();
190
- }
191
- }
192
- return false;
193
- }
194
- // IN / NOT IN
195
- if (op === 'in') {
196
- const value = this.getTermValue(expr.args[0], binding);
197
- if (value === null)
198
- return false;
199
- for (let i = 1; i < expr.args.length; i++) {
200
- if (this.compareTerms(value, this.getTermValue(expr.args[i], binding), '='))
201
- return true;
202
- }
203
- return false;
204
- }
205
- if (op === 'notin') {
206
- const value = this.getTermValue(expr.args[0], binding);
207
- if (value === null)
208
- return true;
209
- for (let i = 1; i < expr.args.length; i++) {
210
- if (this.compareTerms(value, this.getTermValue(expr.args[i], binding), '='))
211
- return false;
212
- }
213
- return true;
214
- }
215
- return true; // Unknown: be permissive
216
- }
217
- // ============================================================
218
- // Helper Methods
219
- // ============================================================
220
- getTermValue(expr, binding) {
221
- if (expr.expressionType === 'term') {
222
- const termExpr = expr;
223
- if (termExpr.term.termType === 'Variable') {
224
- return binding.get(termExpr.term) || null;
225
- }
226
- return termExpr.term;
227
- }
228
- if (expr.expressionType === 'operator') {
229
- const opExpr = expr;
230
- const op = opExpr.operator.toLowerCase();
231
- // STR function
232
- if (op === 'str') {
233
- const inner = this.getTermValue(opExpr.args[0], binding);
234
- if (inner)
235
- return dataFactory.literal(inner.value);
236
- }
237
- // STRLEN function - returns integer
238
- if (op === 'strlen') {
239
- const str = this.getStringValue(opExpr.args[0], binding);
240
- if (str !== null) {
241
- return dataFactory.literal(str.length.toString(), dataFactory.namedNode('http://www.w3.org/2001/XMLSchema#integer'));
242
- }
243
- }
244
- // Numeric functions
245
- if (op === 'abs') {
246
- const val = this.getNumericValue(opExpr.args[0], binding);
247
- if (val !== null) {
248
- return dataFactory.literal(Math.abs(val).toString(), dataFactory.namedNode('http://www.w3.org/2001/XMLSchema#decimal'));
249
- }
250
- }
251
- if (op === 'round') {
252
- const val = this.getNumericValue(opExpr.args[0], binding);
253
- if (val !== null) {
254
- return dataFactory.literal(Math.round(val).toString(), dataFactory.namedNode('http://www.w3.org/2001/XMLSchema#decimal'));
255
- }
256
- }
257
- if (op === 'floor') {
258
- const val = this.getNumericValue(opExpr.args[0], binding);
259
- if (val !== null) {
260
- return dataFactory.literal(Math.floor(val).toString(), dataFactory.namedNode('http://www.w3.org/2001/XMLSchema#decimal'));
261
- }
262
- }
263
- if (op === 'ceil') {
264
- const val = this.getNumericValue(opExpr.args[0], binding);
265
- if (val !== null) {
266
- return dataFactory.literal(Math.ceil(val).toString(), dataFactory.namedNode('http://www.w3.org/2001/XMLSchema#decimal'));
267
- }
268
- }
269
- }
270
- return null;
271
- }
272
- getNumericValue(expr, binding) {
273
- const term = this.getTermValue(expr, binding);
274
- if (term?.termType === 'Literal') {
275
- const val = parseFloat(term.value);
276
- if (!isNaN(val))
277
- return val;
278
- }
279
- return null;
280
- }
281
- getStringValue(expr, binding) {
282
- const term = this.getTermValue(expr, binding);
283
- return term?.value ?? null;
284
- }
285
- compareTerms(left, right, op) {
286
- if (left === null || right === null)
287
- return false;
288
- if (left.termType === 'Literal' && right.termType === 'Literal') {
289
- const leftLit = left;
290
- const rightLit = right;
291
- if (this.isNumericLiteral(leftLit) && this.isNumericLiteral(rightLit)) {
292
- const l = parseFloat(leftLit.value), r = parseFloat(rightLit.value);
293
- switch (op) {
294
- case '=': return l === r;
295
- case '!=': return l !== r;
296
- case '<': return l < r;
297
- case '>': return l > r;
298
- case '<=': return l <= r;
299
- case '>=': return l >= r;
300
- }
301
- }
302
- const cmp = leftLit.value.localeCompare(rightLit.value);
303
- switch (op) {
304
- case '=': return cmp === 0;
305
- case '!=': return cmp !== 0;
306
- case '<': return cmp < 0;
307
- case '>': return cmp > 0;
308
- case '<=': return cmp <= 0;
309
- case '>=': return cmp >= 0;
310
- }
311
- }
312
- switch (op) {
313
- case '=': return left.value === right.value;
314
- case '!=': return left.value !== right.value;
315
- default: return false;
316
- }
317
- }
318
- isNumericLiteral(lit) {
319
- return lit.datatype && serialization_1.NUMERIC_TYPES.has(lit.datatype.value);
320
- }
321
- effectiveBooleanValue(term) {
322
- if (term.termType === 'Literal') {
323
- const lit = term;
324
- if (lit.datatype?.value === 'http://www.w3.org/2001/XMLSchema#boolean') {
325
- return lit.value === 'true';
326
- }
327
- return lit.value.length > 0;
328
- }
329
- return true;
330
- }
331
- getBindingKey(binding) {
332
- const parts = [];
333
- binding.forEach((value, key) => {
334
- parts.push(`${key.value}=${value.value}`);
335
- });
336
- return parts.sort().join('|');
337
- }
338
- }
339
- exports.ExpressionEvaluator = ExpressionEvaluator;
340
- //# sourceMappingURL=ExpressionEvaluator.js.map
@@ -1,74 +0,0 @@
1
- /**
2
- * FilterPushdownExtractor - Extract pushdownable conditions from SPARQL FILTER
3
- *
4
- * Analyzes SPARQL FILTER expressions and extracts conditions that can be
5
- * pushed down to the database layer for efficient query execution.
6
- *
7
- * Supported pushdown operations:
8
- * - Comparison: =, !=, <, >, <=, >=
9
- * - String functions: STRSTARTS, STRENDS, CONTAINS, REGEX
10
- * - Type checking: isIRI, isBlank, isLiteral, isNumeric
11
- * - Language: LANGMATCHES
12
- * - Logical: AND, OR (with $in optimization)
13
- * - Set operations: IN, NOT IN
14
- * - Existence: BOUND, !BOUND
15
- */
16
- import type { Algebra } from 'sparqlalgebrajs';
17
- import type { TermOperators } from '../quint/types';
18
- /**
19
- * Pushdown filters extracted from SPARQL FILTER clauses
20
- * Maps variable names to their filter conditions
21
- */
22
- export interface PushdownFilters {
23
- [varName: string]: TermOperators;
24
- }
25
- /**
26
- * Result of extracting pushdown filters from an expression
27
- */
28
- export interface PushdownResult {
29
- filters: PushdownFilters;
30
- remainder: Algebra.Expression | null;
31
- orBranches?: PushdownFilters[];
32
- orNonPushdownBranches?: Algebra.Expression[];
33
- }
34
- /**
35
- * FilterPushdownExtractor extracts pushdownable conditions from FILTER expressions
36
- */
37
- export declare class FilterPushdownExtractor {
38
- /**
39
- * Extract pushdownable filters from an expression
40
- * Returns filters that can be pushed down and the remaining expression
41
- */
42
- extractPushdownFilters(expr: Algebra.Expression, pattern: Algebra.Pattern): PushdownResult;
43
- /**
44
- * Handle OR expression pushdown
45
- * - Same variable equality: convert to $in
46
- * - Different variables: create OR branches for separate queries
47
- * - Mixed (pushdownable + non-pushdownable): orBranches + orNonPushdownBranches
48
- */
49
- private extractOrPushdown;
50
- /**
51
- * Try to convert same-variable equalities to $in
52
- */
53
- private tryConvertToIn;
54
- /**
55
- * Try to extract pushdown filter from a single operator expression
56
- */
57
- tryExtractSinglePushdown(expr: Algebra.OperatorExpression, pattern: Algebra.Pattern): PushdownFilters | null;
58
- /**
59
- * Extract comparison operator info
60
- */
61
- private extractComparison;
62
- private mapComparisonOp;
63
- private reverseComparisonOp;
64
- /**
65
- * Serialize value for comparison
66
- *
67
- * Range comparison handling:
68
- * - $gt, $lte: Use fpstring + max suffix to be >= all values with same fpstring
69
- * - $lt, $gte: Use fpstring only (prefix), stored values are always > prefix
70
- * - $eq, $ne: Use exact serialization
71
- */
72
- serializeForComparison(value: string, datatype: string | undefined, filterOp: string): string;
73
- serializeExactValue(value: string, datatype?: string): string;
74
- }