@undefineds.co/drizzle-solid 0.2.13 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. package/README.md +141 -250
  2. package/dist/core/ast-to-sparql.d.ts +1 -1
  3. package/dist/core/ast-to-sparql.js +1 -1
  4. package/dist/core/comunica-patch.d.ts +1 -6
  5. package/dist/core/comunica-patch.d.ts.map +1 -1
  6. package/dist/core/comunica-patch.js +16 -19
  7. package/dist/core/comunica-patch.js.map +1 -1
  8. package/dist/core/execution/sparql-strategy.d.ts +9 -37
  9. package/dist/core/execution/sparql-strategy.d.ts.map +1 -1
  10. package/dist/core/execution/sparql-strategy.js +44 -148
  11. package/dist/core/execution/sparql-strategy.js.map +1 -1
  12. package/dist/core/execution/strategy-factory.d.ts +7 -20
  13. package/dist/core/execution/strategy-factory.d.ts.map +1 -1
  14. package/dist/core/execution/strategy-factory.js +2 -17
  15. package/dist/core/execution/strategy-factory.js.map +1 -1
  16. package/dist/core/pod-database.d.ts +3 -3
  17. package/dist/core/pod-database.d.ts.map +1 -1
  18. package/dist/core/pod-database.js +37 -37
  19. package/dist/core/pod-database.js.map +1 -1
  20. package/dist/core/pod-dialect.d.ts +2 -0
  21. package/dist/core/pod-dialect.d.ts.map +1 -1
  22. package/dist/core/pod-dialect.js +4 -2
  23. package/dist/core/pod-dialect.js.map +1 -1
  24. package/dist/core/query-builders/select-query-builder.d.ts +2 -2
  25. package/dist/core/query-builders/select-query-builder.d.ts.map +1 -1
  26. package/dist/core/query-builders/select-query-builder.js +10 -10
  27. package/dist/core/query-builders/select-query-builder.js.map +1 -1
  28. package/dist/core/schema/columns.d.ts +6 -6
  29. package/dist/core/schema/columns.d.ts.map +1 -1
  30. package/dist/core/schema/columns.js +18 -18
  31. package/dist/core/schema/columns.js.map +1 -1
  32. package/dist/core/schema/defs.d.ts +4 -4
  33. package/dist/core/schema/defs.d.ts.map +1 -1
  34. package/dist/core/schema/pod-table.js +2 -2
  35. package/dist/core/schema/pod-table.js.map +1 -1
  36. package/dist/core/services/pod-services.d.ts +7 -5
  37. package/dist/core/services/pod-services.d.ts.map +1 -1
  38. package/dist/core/services/pod-services.js +7 -5
  39. package/dist/core/services/pod-services.js.map +1 -1
  40. package/dist/core/shape/generator.js +3 -3
  41. package/dist/core/shape/generator.js.map +1 -1
  42. package/dist/core/shape/manager.js +5 -5
  43. package/dist/core/shape/manager.js.map +1 -1
  44. package/dist/core/sparql/builder/expression-builder.d.ts +5 -5
  45. package/dist/core/sparql/builder/expression-builder.d.ts.map +1 -1
  46. package/dist/core/sparql/builder/expression-builder.js +15 -15
  47. package/dist/core/sparql/builder/expression-builder.js.map +1 -1
  48. package/dist/core/sparql/builder/select-builder.d.ts +1 -1
  49. package/dist/core/sparql/builder/select-builder.js +1 -1
  50. package/dist/core/sparql/builder/update-builder.d.ts +1 -1
  51. package/dist/core/sparql/builder/update-builder.d.ts.map +1 -1
  52. package/dist/core/sparql/builder/update-builder.js +4 -4
  53. package/dist/core/sparql/builder/update-builder.js.map +1 -1
  54. package/dist/core/sparql/helpers.js +3 -3
  55. package/dist/core/sparql/helpers.js.map +1 -1
  56. package/dist/core/sparql-engine.d.ts +16 -0
  57. package/dist/core/sparql-engine.d.ts.map +1 -0
  58. package/dist/core/sparql-engine.js +128 -0
  59. package/dist/core/sparql-engine.js.map +1 -0
  60. package/dist/core/sparql-executor.d.ts +3 -1
  61. package/dist/core/sparql-executor.d.ts.map +1 -1
  62. package/dist/core/sparql-executor.js +3 -4
  63. package/dist/core/sparql-executor.js.map +1 -1
  64. package/dist/core/triple/handlers/inverse.js +4 -4
  65. package/dist/core/triple/handlers/inverse.js.map +1 -1
  66. package/dist/core/triple/handlers/uri.d.ts +1 -1
  67. package/dist/core/triple/handlers/uri.js +3 -3
  68. package/dist/core/triple/handlers/uri.js.map +1 -1
  69. package/dist/core/uri/resolver.d.ts +9 -9
  70. package/dist/core/uri/resolver.d.ts.map +1 -1
  71. package/dist/core/uri/resolver.js +51 -51
  72. package/dist/core/uri/resolver.js.map +1 -1
  73. package/dist/core/uri/types.d.ts +10 -10
  74. package/dist/core/uri/types.d.ts.map +1 -1
  75. package/dist/driver.d.ts +10 -1
  76. package/dist/driver.d.ts.map +1 -1
  77. package/dist/driver.js +1 -5
  78. package/dist/driver.js.map +1 -1
  79. package/dist/esm/core/ast-to-sparql.d.ts +1 -1
  80. package/dist/esm/core/ast-to-sparql.js +1 -1
  81. package/dist/esm/core/comunica-patch.d.ts +1 -6
  82. package/dist/esm/core/comunica-patch.d.ts.map +1 -1
  83. package/dist/esm/core/comunica-patch.js +13 -20
  84. package/dist/esm/core/comunica-patch.js.map +1 -1
  85. package/dist/esm/core/execution/sparql-strategy.d.ts +9 -37
  86. package/dist/esm/core/execution/sparql-strategy.d.ts.map +1 -1
  87. package/dist/esm/core/execution/sparql-strategy.js +44 -148
  88. package/dist/esm/core/execution/sparql-strategy.js.map +1 -1
  89. package/dist/esm/core/execution/strategy-factory.d.ts +7 -20
  90. package/dist/esm/core/execution/strategy-factory.d.ts.map +1 -1
  91. package/dist/esm/core/execution/strategy-factory.js +2 -17
  92. package/dist/esm/core/execution/strategy-factory.js.map +1 -1
  93. package/dist/esm/core/pod-database.d.ts +3 -3
  94. package/dist/esm/core/pod-database.d.ts.map +1 -1
  95. package/dist/esm/core/pod-database.js +37 -37
  96. package/dist/esm/core/pod-database.js.map +1 -1
  97. package/dist/esm/core/pod-dialect.d.ts +2 -0
  98. package/dist/esm/core/pod-dialect.d.ts.map +1 -1
  99. package/dist/esm/core/pod-dialect.js +4 -2
  100. package/dist/esm/core/pod-dialect.js.map +1 -1
  101. package/dist/esm/core/query-builders/select-query-builder.d.ts +2 -2
  102. package/dist/esm/core/query-builders/select-query-builder.d.ts.map +1 -1
  103. package/dist/esm/core/query-builders/select-query-builder.js +10 -10
  104. package/dist/esm/core/query-builders/select-query-builder.js.map +1 -1
  105. package/dist/esm/core/schema/columns.d.ts +6 -6
  106. package/dist/esm/core/schema/columns.d.ts.map +1 -1
  107. package/dist/esm/core/schema/columns.js +18 -18
  108. package/dist/esm/core/schema/columns.js.map +1 -1
  109. package/dist/esm/core/schema/defs.d.ts +4 -4
  110. package/dist/esm/core/schema/defs.d.ts.map +1 -1
  111. package/dist/esm/core/schema/pod-table.js +2 -2
  112. package/dist/esm/core/schema/pod-table.js.map +1 -1
  113. package/dist/esm/core/services/pod-services.d.ts +7 -5
  114. package/dist/esm/core/services/pod-services.d.ts.map +1 -1
  115. package/dist/esm/core/services/pod-services.js +7 -5
  116. package/dist/esm/core/services/pod-services.js.map +1 -1
  117. package/dist/esm/core/shape/generator.js +3 -3
  118. package/dist/esm/core/shape/generator.js.map +1 -1
  119. package/dist/esm/core/shape/manager.js +5 -5
  120. package/dist/esm/core/shape/manager.js.map +1 -1
  121. package/dist/esm/core/sparql/builder/expression-builder.d.ts +5 -5
  122. package/dist/esm/core/sparql/builder/expression-builder.d.ts.map +1 -1
  123. package/dist/esm/core/sparql/builder/expression-builder.js +15 -15
  124. package/dist/esm/core/sparql/builder/expression-builder.js.map +1 -1
  125. package/dist/esm/core/sparql/builder/select-builder.d.ts +1 -1
  126. package/dist/esm/core/sparql/builder/select-builder.js +1 -1
  127. package/dist/esm/core/sparql/builder/update-builder.d.ts +1 -1
  128. package/dist/esm/core/sparql/builder/update-builder.d.ts.map +1 -1
  129. package/dist/esm/core/sparql/builder/update-builder.js +4 -4
  130. package/dist/esm/core/sparql/builder/update-builder.js.map +1 -1
  131. package/dist/esm/core/sparql/helpers.js +3 -3
  132. package/dist/esm/core/sparql/helpers.js.map +1 -1
  133. package/dist/esm/core/sparql-engine.d.ts +16 -0
  134. package/dist/esm/core/sparql-engine.d.ts.map +1 -0
  135. package/dist/esm/core/sparql-engine.js +89 -0
  136. package/dist/esm/core/sparql-engine.js.map +1 -0
  137. package/dist/esm/core/sparql-executor.d.ts +3 -1
  138. package/dist/esm/core/sparql-executor.d.ts.map +1 -1
  139. package/dist/esm/core/sparql-executor.js +3 -4
  140. package/dist/esm/core/sparql-executor.js.map +1 -1
  141. package/dist/esm/core/triple/handlers/inverse.js +4 -4
  142. package/dist/esm/core/triple/handlers/inverse.js.map +1 -1
  143. package/dist/esm/core/triple/handlers/uri.d.ts +1 -1
  144. package/dist/esm/core/triple/handlers/uri.js +3 -3
  145. package/dist/esm/core/triple/handlers/uri.js.map +1 -1
  146. package/dist/esm/core/uri/resolver.d.ts +9 -9
  147. package/dist/esm/core/uri/resolver.d.ts.map +1 -1
  148. package/dist/esm/core/uri/resolver.js +51 -51
  149. package/dist/esm/core/uri/resolver.js.map +1 -1
  150. package/dist/esm/core/uri/types.d.ts +10 -10
  151. package/dist/esm/core/uri/types.d.ts.map +1 -1
  152. package/dist/esm/driver.d.ts +10 -1
  153. package/dist/esm/driver.d.ts.map +1 -1
  154. package/dist/esm/driver.js +1 -5
  155. package/dist/esm/driver.js.map +1 -1
  156. package/dist/esm/index.d.ts +2 -0
  157. package/dist/esm/index.d.ts.map +1 -1
  158. package/dist/esm/index.js +3 -1
  159. package/dist/esm/index.js.map +1 -1
  160. package/dist/esm/pod.d.ts +68 -0
  161. package/dist/esm/pod.d.ts.map +1 -0
  162. package/dist/esm/pod.js +146 -0
  163. package/dist/esm/pod.js.map +1 -0
  164. package/dist/esm/utils/webid-resolver.d.ts +1 -2
  165. package/dist/esm/utils/webid-resolver.d.ts.map +1 -1
  166. package/dist/esm/utils/webid-resolver.js +36 -30
  167. package/dist/esm/utils/webid-resolver.js.map +1 -1
  168. package/dist/index.d.ts +2 -0
  169. package/dist/index.d.ts.map +1 -1
  170. package/dist/index.js +12 -4
  171. package/dist/index.js.map +1 -1
  172. package/dist/pod.d.ts +68 -0
  173. package/dist/pod.d.ts.map +1 -0
  174. package/dist/pod.js +153 -0
  175. package/dist/pod.js.map +1 -0
  176. package/dist/utils/webid-resolver.d.ts +1 -2
  177. package/dist/utils/webid-resolver.d.ts.map +1 -1
  178. package/dist/utils/webid-resolver.js +36 -30
  179. package/dist/utils/webid-resolver.js.map +1 -1
  180. package/package.json +11 -3
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../../src/core/uri/resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,YAAY,EACZ,aAAa,EAEd,MAAM,SAAS,CAAC;AAYjB;;;;GAIG;AACH,qBAAa,eAAgB,YAAW,WAAW;IACjD,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,GAAE,MAAW;IAM/B,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM/B;;;;;;OAMG;IACH,cAAc,CACZ,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,KAAK,CAAC,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAC7B,MAAM;IA2CT,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,aAAa,GAAG,IAAI;IAqBhE,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAK1C;;;OAGG;IACH,eAAe,CAAC,KAAK,EAAE,QAAQ,GAAG,YAAY;IAY9C;;;;OAIG;IACH,iBAAiB,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM;IAU1C,kBAAkB,CAChB,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,KAAK,EAAE,MAAM,GACZ,MAAM;IAYT,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO;IAkBrC;;;;;;OAMG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM;IA0GpF,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAcrC,iBAAiB,CAAC,MAAM,EAAE,aAAa,GAAG,GAAG,GAAG,OAAO;IASvD,eAAe,CAAC,MAAM,EAAE,aAAa,GAAG,GAAG,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,SAAS;IA4BxF;;;;;;;;;OASG;IACH,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,GAAG,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM;IAuB1F;;;OAGG;IACH,OAAO,CAAC,eAAe;IAUvB;;OAEG;IACH,OAAO,CAAC,YAAY;IAwBpB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAa3B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAKzB;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAiB7B;;;OAGG;IACH,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM;IAepF;;;;;;;OAOG;IACH,OAAO,CAAC,aAAa;IAiErB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoBzB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAc3B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,SAAS;IAsCjB;;;;;;;;OAQG;IACH,OAAO,CAAC,qBAAqB;CAmC9B"}
1
+ {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../../src/core/uri/resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,YAAY,EACZ,aAAa,EAEd,MAAM,SAAS,CAAC;AAYjB;;;;GAIG;AACH,qBAAa,eAAgB,YAAW,WAAW;IACjD,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,GAAE,MAAW;IAM/B,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM/B;;;;;;OAMG;IACH,cAAc,CACZ,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,KAAK,CAAC,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAC7B,MAAM;IA2CT,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,aAAa,GAAG,IAAI;IAqBhE,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAK1C;;;OAGG;IACH,eAAe,CAAC,KAAK,EAAE,QAAQ,GAAG,YAAY;IAY9C;;;;OAIG;IACH,iBAAiB,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM;IAU1C,kBAAkB,CAChB,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,KAAK,EAAE,MAAM,GACZ,MAAM;IAYT,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO;IAkBrC;;;;;;OAMG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM;IA0G/E,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAcrC,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,GAAG,GAAG,OAAO;IASlD,eAAe,CAAC,MAAM,EAAE,aAAa,GAAG,GAAG,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,SAAS;IA4BxF;;;;;;;;;OASG;IACH,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,GAAG,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM;IAuBrF;;;OAGG;IACH,OAAO,CAAC,eAAe;IAUvB;;OAEG;IACH,OAAO,CAAC,YAAY;IAwBpB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAa3B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAKzB;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAiB7B;;;OAGG;IACH,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM;IAepF;;;;;;;OAOG;IACH,OAAO,CAAC,aAAa;IAiErB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoBzB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAc3B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,SAAS;IAsCjB;;;;;;;;OAQG;IACH,OAAO,CAAC,qBAAqB;CAmC9B"}
@@ -3,7 +3,7 @@
3
3
  * URI Resolver Implementation
4
4
  *
5
5
  * 统一的 URI 生成和解析
6
- * 整合了 Subject URI 和 Object/Reference URI 的解析逻辑
6
+ * 整合了 Subject URI 和 Object/Link URI 的解析逻辑
7
7
  *
8
8
  * 设计原则:
9
9
  * - 无状态,所有需要的上下文都通过参数传入
@@ -146,15 +146,15 @@ class UriResolverImpl {
146
146
  }
147
147
  return false;
148
148
  }
149
- // ================= Object/Reference URI 解析 =================
149
+ // ================= Object/Link URI 解析 =================
150
150
  /**
151
- * 解析 reference 列的值为完整 URI
151
+ * 解析 link 列的值为完整 URI
152
152
  *
153
153
  * @param value 原始值(可能是 UUID、相对路径或完整 URI)
154
- * @param column 列定义(包含 reference 配置)
154
+ * @param column 列定义(包含 link 配置)
155
155
  * @param context 解析上下文(包含 tableRegistry 等)
156
156
  */
157
- resolveReference(value, column, context) {
157
+ resolveLink(value, column, context) {
158
158
  // 1. 已经是绝对 URI,直接返回
159
159
  if (this.isAbsoluteUri(value)) {
160
160
  return value;
@@ -172,20 +172,20 @@ class UriResolverImpl {
172
172
  }
173
173
  throw new Error(`Cannot resolve relative URI "${value}": no baseUri configured`);
174
174
  }
175
- // 3. 尝试通过 referenceTable 解析(直接引用表对象,不需要 registry)
176
- const referenceTable = column.getReferenceTable?.();
177
- if (referenceTable) {
178
- const uriInfo = this.getTableUriInfo(referenceTable);
175
+ // 3. 尝试通过 linkTable 解析(直接链接目标表对象,不需要 registry)
176
+ const linkTable = column.getLinkTable?.();
177
+ if (linkTable) {
178
+ const uriInfo = this.getTableUriInfo(linkTable);
179
179
  if (uriInfo) {
180
180
  return this.buildFullUri(value, uriInfo.baseUrl, uriInfo.subjectTemplate);
181
181
  }
182
- throw new Error(`Cannot resolve URI "${value}": referenced table "${referenceTable.config?.name}" has no base configured.`);
182
+ throw new Error(`Cannot resolve URI "${value}": linked table "${linkTable.config?.name}" has no base configured.`);
183
183
  }
184
- // 4. 尝试通过 referenceTableName 解析
185
- const referenceTableName = column.getReferenceTableName?.();
186
- if (referenceTableName) {
184
+ // 4. 尝试通过 linkTableName 解析
185
+ const linkTableName = column.getLinkTableName?.();
186
+ if (linkTableName) {
187
187
  if (context?.tableNameRegistry) {
188
- const targetTable = context.tableNameRegistry.get(referenceTableName);
188
+ const targetTable = context.tableNameRegistry.get(linkTableName);
189
189
  if (targetTable) {
190
190
  const uriInfo = this.getTableUriInfo(targetTable);
191
191
  if (uriInfo) {
@@ -196,25 +196,25 @@ class UriResolverImpl {
196
196
  const availableTables = context?.tableNameRegistry
197
197
  ? Array.from(context.tableNameRegistry.keys()).join(', ')
198
198
  : '(no tables registered)';
199
- throw new Error(`Cannot resolve URI "${value}": table "${referenceTableName}" not found in schema. ` +
199
+ throw new Error(`Cannot resolve URI "${value}": table "${linkTableName}" not found in schema. ` +
200
200
  `Available tables: ${availableTables}`);
201
201
  }
202
- // 5. 尝试通过 referenceTarget (class URI) 解析
203
- const referenceTarget = column.getReferenceTarget?.();
204
- if (referenceTarget) {
202
+ // 5. 尝试通过 linkTarget (class URI) 解析
203
+ const linkTarget = column.getLinkTarget?.();
204
+ if (linkTarget) {
205
205
  if (!context?.tableRegistry) {
206
- // 有 referenceTarget 但没有 tableRegistry,无法解析
207
- throw new Error(`Cannot resolve URI "${value}" (references ${referenceTarget}): ` +
206
+ // 有 linkTarget 但没有 tableRegistry,无法解析
207
+ throw new Error(`Cannot resolve URI "${value}" (links to ${linkTarget}): ` +
208
208
  `tableRegistry not configured. Ensure the schema is properly registered.`);
209
209
  }
210
- const targetTables = context.tableRegistry.get(referenceTarget);
210
+ const targetTables = context.tableRegistry.get(linkTarget);
211
211
  if (targetTables && targetTables.length > 0) {
212
212
  if (targetTables.length > 1) {
213
213
  const tableNames = targetTables
214
214
  .map(t => t.config?.name || 'unknown')
215
215
  .join(', ');
216
- throw new Error(`Ambiguous reference: class "${referenceTarget}" has multiple tables [${tableNames}]. ` +
217
- `Use .reference('tableName') or .reference(tableObject) to specify which table to use.`);
216
+ throw new Error(`Ambiguous link target: class "${linkTarget}" has multiple tables [${tableNames}]. ` +
217
+ `Use .link('tableName') or .link(tableObject) to specify which table to use.`);
218
218
  }
219
219
  const targetTable = targetTables[0];
220
220
  const uriInfo = this.getTableUriInfo(targetTable);
@@ -222,11 +222,11 @@ class UriResolverImpl {
222
222
  return this.buildFullUri(value, uriInfo.baseUrl, uriInfo.subjectTemplate);
223
223
  }
224
224
  }
225
- // referenceTarget 指定了但在 registry 中找不到对应的表
226
- throw new Error(`Cannot resolve URI "${value}": class "${referenceTarget}" not found in tableRegistry. ` +
225
+ // linkTarget 指定了但在 registry 中找不到对应的表
226
+ throw new Error(`Cannot resolve URI "${value}": class "${linkTarget}" not found in tableRegistry. ` +
227
227
  `Available classes: ${Array.from(context.tableRegistry.keys()).join(', ') || '(none)'}`);
228
228
  }
229
- // 6. 使用 baseUri fallback (仅当没有任何 reference 配置时)
229
+ // 6. 使用 baseUri fallback (仅当没有任何 link 配置时)
230
230
  const base = context?.baseUri || this.podUrl;
231
231
  if (base && this.isAbsoluteUri(base)) {
232
232
  const baseUrl = base.endsWith('/') ? base : `${base}/`;
@@ -248,33 +248,33 @@ class UriResolverImpl {
248
248
  value.startsWith('file://') ||
249
249
  /^[a-zA-Z][a-zA-Z0-9+.-]*:/.test(value));
250
250
  }
251
- isReferenceColumn(column) {
251
+ isLinkColumn(column) {
252
252
  if (!column)
253
253
  return false;
254
254
  return column.dataType === 'uri' ||
255
- column.isReference?.() ||
256
- !!column.options?.referenceTarget ||
257
- !!column.options?.referenceTableName ||
258
- !!column.options?.referenceTable;
255
+ column.isLink?.() ||
256
+ !!column.options?.linkTarget ||
257
+ !!column.options?.linkTableName ||
258
+ !!column.options?.linkTable;
259
259
  }
260
260
  findTargetTable(column, context) {
261
- // Priority 1: Direct table reference from column object
262
- const referenceTable = column.getReferenceTable?.() || column.options?.referenceTable;
263
- if (referenceTable) {
264
- return referenceTable;
265
- }
266
- // Priority 2: Table name reference
267
- const referenceTableName = column.getReferenceTableName?.() || column.options?.referenceTableName;
268
- if (referenceTableName && context?.tableNameRegistry) {
269
- const found = context.tableNameRegistry.get(referenceTableName);
261
+ // Priority 1: Direct linked table from column object
262
+ const linkTable = column.getLinkTable?.() || column.options?.linkTable;
263
+ if (linkTable) {
264
+ return linkTable;
265
+ }
266
+ // Priority 2: Linked table by name
267
+ const linkTableName = column.getLinkTableName?.() || column.options?.linkTableName;
268
+ if (linkTableName && context?.tableNameRegistry) {
269
+ const found = context.tableNameRegistry.get(linkTableName);
270
270
  if (found) {
271
271
  return found;
272
272
  }
273
273
  }
274
- // Priority 3: Class URI reference (check for ambiguity)
275
- const referenceTarget = column.getReferenceTarget?.() || column.options?.referenceTarget;
276
- if (referenceTarget && context?.tableRegistry) {
277
- const tables = context.tableRegistry.get(referenceTarget);
274
+ // Priority 3: Class URI link (check for ambiguity)
275
+ const linkTarget = column.getLinkTarget?.() || column.options?.linkTarget;
276
+ if (linkTarget && context?.tableRegistry) {
277
+ const tables = context.tableRegistry.get(linkTarget);
278
278
  if (tables && tables.length === 1) {
279
279
  return tables[0];
280
280
  }
@@ -282,16 +282,16 @@ class UriResolverImpl {
282
282
  return undefined;
283
283
  }
284
284
  /**
285
- * 从引用 URI 中提取 ID
285
+ * 从链接 URI 中提取 ID
286
286
  *
287
287
  * 用于读取时将完整 URI 转换回简单 ID
288
288
  *
289
289
  * @param uri 完整的 URI (如 http://pod/.data/chat/chat-123/index.ttl#this)
290
- * @param column 引用列定义
290
+ * @param column 链接列定义
291
291
  * @param context URI 上下文(包含表注册表)
292
292
  * @returns 提取的 ID (如 chat-123),如果无法解析则返回原 URI
293
293
  */
294
- extractReferenceId(uri, column, context) {
294
+ extractLinkId(uri, column, context) {
295
295
  if (!uri || !this.isAbsoluteUri(uri)) {
296
296
  return uri;
297
297
  }
@@ -395,16 +395,16 @@ class UriResolverImpl {
395
395
  }
396
396
  /**
397
397
  * 将列值归一化为适合模板使用的字符串
398
- * 特别处理:如果是引用列且值为 URI,则尝试提取 ID
398
+ * 特别处理:如果是链接列且值为 URI,则尝试提取 ID
399
399
  */
400
400
  normalizeValue(value, column, context) {
401
401
  if (value === undefined || value === null) {
402
402
  return '';
403
403
  }
404
- // 处理引用列:如果是引用列且值为 URI,尝试提取 ID
404
+ // 处理链接列:如果是链接列且值为 URI,尝试提取 ID
405
405
  if (typeof value === 'string' && this.isAbsoluteUri(value)) {
406
- if (column && this.isReferenceColumn(column)) {
407
- return this.extractReferenceId(value, column, context);
406
+ if (column && this.isLinkColumn(column)) {
407
+ return this.extractLinkId(value, column, context);
408
408
  }
409
409
  }
410
410
  return String(value);
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/core/uri/resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/core/uri/resolver.ts"],"names":[],"mappings":"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"}
@@ -51,7 +51,7 @@ export interface TimeContext {
51
51
  /**
52
52
  * URI 解析上下文
53
53
  *
54
- * 用于 reference 列的 URI 解析,作为参数传入而非内部状态
54
+ * 用于 link 列的 URI 解析,作为参数传入而非内部状态
55
55
  */
56
56
  export interface UriContext {
57
57
  /** 基础 URI (Pod URL) */
@@ -113,30 +113,30 @@ export interface UriResolver {
113
113
  */
114
114
  isSingleton(table: PodTable): boolean;
115
115
  /**
116
- * 解析 reference 列的值为完整 URI
116
+ * 解析 link 列的值为完整 URI
117
117
  *
118
118
  * @param value 原始值(可能是 UUID、相对路径或完整 URI)
119
- * @param column 列定义(包含 reference 配置)
119
+ * @param column 列定义(包含 link 配置)
120
120
  * @param context 解析上下文(包含 tableRegistry 等),作为参数传入
121
121
  * @returns 完整 URI
122
122
  * @throws 如果无法解析且不能 fallback
123
123
  */
124
- resolveReference(value: string, column: PodColumnBase, context?: UriContext): string;
124
+ resolveLink(value: string, column: PodColumnBase, context?: UriContext): string;
125
125
  /**
126
126
  * 检查值是否为绝对 URI
127
127
  */
128
128
  isAbsoluteUri(value: string): boolean;
129
129
  /**
130
- * 检查列是否为 reference 类型
130
+ * 检查列是否为 link 类型
131
131
  */
132
- isReferenceColumn(column: PodColumnBase | any): boolean;
132
+ isLinkColumn(column: PodColumnBase | any): boolean;
133
133
  /**
134
- * 根据 reference 配置查找目标表
134
+ * 根据 link 配置查找目标表
135
135
  *
136
136
  * 解析优先级:
137
- * 1. referenceTable(直接引用表对象)
138
- * 2. referenceTableName(表名 -> tableNameRegistry)
139
- * 3. referenceTarget(class URI -> tableRegistry,需无歧义)
137
+ * 1. linkTable(直接链接目标表对象)
138
+ * 2. linkTableName(表名 -> tableNameRegistry)
139
+ * 3. linkTarget(class URI -> tableRegistry,需无歧义)
140
140
  *
141
141
  * @param column 列定义
142
142
  * @param context 解析上下文
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/uri/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/uri/types.ts"],"names":[],"mappings":"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"}
package/dist/driver.d.ts CHANGED
@@ -1,7 +1,8 @@
1
+ import { type DrizzleConfig } from 'drizzle-orm/utils';
1
2
  import { PodDatabase } from './core/pod-database';
2
3
  import { type SolidAuthSession } from './core/pod-dialect';
3
- import { type DrizzleConfig } from 'drizzle-orm/utils';
4
4
  import type { ChannelType } from './core/notifications';
5
+ import type { SPARQLQueryEngineFactory } from './core/sparql-engine';
5
6
  export type SolidDatabase<TSchema extends Record<string, unknown> = Record<string, never>> = PodDatabase<TSchema>;
6
7
  export interface SolidDrizzleConfig<TSchema extends Record<string, unknown> = Record<string, never>> extends DrizzleConfig<TSchema> {
7
8
  /** Notifications 配置 */
@@ -9,6 +10,14 @@ export interface SolidDrizzleConfig<TSchema extends Record<string, unknown> = Re
9
10
  /** 通道偏好顺序,默认 ['streaming-http', 'websocket'] */
10
11
  preferredChannels?: ChannelType[];
11
12
  };
13
+ /** SPARQL 执行器配置 */
14
+ sparql?: {
15
+ /**
16
+ * 自定义 QueryEngine 工厂。
17
+ * 可用于复用宿主应用或 xpod 自身安装的 Comunica。
18
+ */
19
+ createQueryEngine?: SPARQLQueryEngineFactory;
20
+ };
12
21
  /** Disable Solid Interop discovery (optional) */
13
22
  disableInteropDiscovery?: boolean;
14
23
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../src/driver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAc,KAAK,gBAAgB,EAAyB,MAAM,oBAAoB,CAAC;AAC9F,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGxD,MAAM,MAAM,aAAa,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;AAGlH,MAAM,WAAW,kBAAkB,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAE,SAAQ,aAAa,CAAC,OAAO,CAAC;IACjI,uBAAuB;IACvB,aAAa,CAAC,EAAE;QACd,gDAAgD;QAChD,iBAAiB,CAAC,EAAE,WAAW,EAAE,CAAC;KACnC,CAAC;IACF,iDAAiD;IACjD,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAGD,wBAAgB,OAAO,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACrF,OAAO,EAAE,gBAAgB,EACzB,MAAM,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,GACnC,aAAa,CAAC,OAAO,CAAC,CA6BxB;AAGD,YAAY,EAAE,WAAW,EAAE,CAAC;AAC5B,OAAO,EAAE,WAAW,IAAI,QAAQ,EAAE,CAAC;AACnC,YAAY,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../src/driver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAc,KAAK,gBAAgB,EAAyB,MAAM,oBAAoB,CAAC;AAC9F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAGrE,MAAM,MAAM,aAAa,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;AAGlH,MAAM,WAAW,kBAAkB,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAE,SAAQ,aAAa,CAAC,OAAO,CAAC;IACjI,uBAAuB;IACvB,aAAa,CAAC,EAAE;QACd,gDAAgD;QAChD,iBAAiB,CAAC,EAAE,WAAW,EAAE,CAAC;KACnC,CAAC;IACF,mBAAmB;IACnB,MAAM,CAAC,EAAE;QACP;;;WAGG;QACH,iBAAiB,CAAC,EAAE,wBAAwB,CAAC;KAC9C,CAAC;IACF,iDAAiD;IACjD,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAGD,wBAAgB,OAAO,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACrF,OAAO,EAAE,gBAAgB,EACzB,MAAM,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,GACnC,aAAa,CAAC,OAAO,CAAC,CAyBxB;AAED,YAAY,EAAE,WAAW,EAAE,CAAC;AAC5B,OAAO,EAAE,WAAW,IAAI,QAAQ,EAAE,CAAC;AACnC,YAAY,EAAE,gBAAgB,EAAE,CAAC"}
package/dist/driver.js CHANGED
@@ -8,28 +8,24 @@ const pod_session_1 = require("./core/pod-session");
8
8
  const pod_dialect_1 = require("./core/pod-dialect");
9
9
  // 主要的 drizzle 函数 - 接受 Inrupt Session
10
10
  function drizzle(session, config) {
11
- // 验证session
12
11
  if (!session || !session.info.isLoggedIn) {
13
12
  throw new Error('需要有效的已认证Session');
14
13
  }
15
- // 创建PodDialect,传递 notifications 配置
16
14
  const dialectConfig = {
17
15
  session,
18
16
  preferredChannels: config?.notifications?.preferredChannels,
17
+ createQueryEngine: config?.sparql?.createQueryEngine,
19
18
  disableInteropDiscovery: config?.disableInteropDiscovery,
20
19
  storageTTL: config?.storageTTL,
21
20
  debug: config?.debug,
22
21
  };
23
22
  const dialect = new pod_dialect_1.PodDialect(dialectConfig);
24
- // 可选:自动连接到 Pod
25
23
  if (config?.autoConnect) {
26
24
  dialect.connect().catch(console.error);
27
25
  }
28
- // 如果有 schema,设置表注册表(用于 URI 引用自动补全)
29
26
  if (config?.schema) {
30
27
  dialect.setSchema(config.schema);
31
28
  }
32
- // 创建PodAsyncSession和PodDatabase
33
29
  const podSession = new pod_session_1.PodAsyncSession(dialect);
34
30
  return new pod_database_1.PodDatabase(dialect, podSession, config?.schema);
35
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","sourceRoot":"","sources":["../src/driver.ts"],"names":[],"mappings":";;;AAkCA,0BAgCC;AAlED,sDAAkD;AAsE1B,yFAtEf,0BAAW,OAsEY;AArEhC,oDAAqD;AACrD,oDAA8F;AA+B9F,qCAAqC;AACrC,SAAgB,OAAO,CACrB,OAAyB,EACzB,MAAoC;IAEpC,YAAY;IACZ,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAED,mCAAmC;IACnC,MAAM,aAAa,GAAqB;QACtC,OAAO;QACP,iBAAiB,EAAE,MAAM,EAAE,aAAa,EAAE,iBAAiB;QAC3D,uBAAuB,EAAE,MAAM,EAAE,uBAAuB;QACxD,UAAU,EAAE,MAAM,EAAE,UAAU;QAC9B,KAAK,EAAE,MAAM,EAAE,KAAK;KACrB,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,wBAAU,CAAC,aAAa,CAAC,CAAC;IAE9C,eAAe;IACf,IAAI,MAAM,EAAE,WAAW,EAAE,CAAC;QACxB,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED,mCAAmC;IACnC,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,MAAiC,CAAC,CAAC;IAC9D,CAAC;IAED,gCAAgC;IAChC,MAAM,UAAU,GAAG,IAAI,6BAAe,CAAC,OAAO,CAAC,CAAC;IAChD,OAAO,IAAI,0BAAW,CAAU,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACvE,CAAC"}
1
+ {"version":3,"file":"driver.js","sourceRoot":"","sources":["../src/driver.ts"],"names":[],"mappings":";;;AA2CA,0BA4BC;AAtED,sDAAkD;AAyE1B,yFAzEf,0BAAW,OAyEY;AAxEhC,oDAAqD;AACrD,oDAA8F;AAuC9F,qCAAqC;AACrC,SAAgB,OAAO,CACrB,OAAyB,EACzB,MAAoC;IAEpC,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,aAAa,GAAqB;QACtC,OAAO;QACP,iBAAiB,EAAE,MAAM,EAAE,aAAa,EAAE,iBAAiB;QAC3D,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB;QACpD,uBAAuB,EAAE,MAAM,EAAE,uBAAuB;QACxD,UAAU,EAAE,MAAM,EAAE,UAAU;QAC9B,KAAK,EAAE,MAAM,EAAE,KAAK;KACrB,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,wBAAU,CAAC,aAAa,CAAC,CAAC;IAE9C,IAAI,MAAM,EAAE,WAAW,EAAE,CAAC;QACxB,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,MAAiC,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,6BAAe,CAAC,OAAO,CAAC,CAAC;IAChD,OAAO,IAAI,0BAAW,CAAU,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACvE,CAAC"}
@@ -23,7 +23,7 @@ export declare class ASTToSPARQLConverter {
23
23
  private prefixes;
24
24
  constructor(podUrl: string, webId?: string | undefined, uriResolver?: UriResolver);
25
25
  /**
26
- * Set table registry for URI reference resolution
26
+ * Set table registry for URI link resolution
27
27
  */
28
28
  setTableRegistry(tableRegistry: Map<string, PodTable[]>, tableNameRegistry: Map<string, PodTable>, baseUri?: string): void;
29
29
  convertSelect(ast: any, table: PodTable, targetGraph?: string, fromSources?: string[], allowGraphVariable?: boolean): SPARQLQuery;
@@ -23,7 +23,7 @@ export class ASTToSPARQLConverter {
23
23
  this.expressionBuilder = new ExpressionBuilder(this.uriResolver);
24
24
  }
25
25
  /**
26
- * Set table registry for URI reference resolution
26
+ * Set table registry for URI link resolution
27
27
  */
28
28
  setTableRegistry(tableRegistry, tableNameRegistry, baseUri) {
29
29
  this.tableContext = { tableRegistry, tableNameRegistry, baseUri };
@@ -1,7 +1,2 @@
1
- type NodeCreateRequire = (filename: string) => NodeRequire;
2
- declare const resolveCreateRequire: () => NodeCreateRequire | null;
3
- declare const createRequireFn: NodeCreateRequire | null;
4
- declare const moduleFilename: string;
5
- declare const requireModule: NodeRequire | null;
6
- declare const patchActionObserverHttp: (moduleName: string) => boolean;
1
+ export declare const applyComunicaPatches: (requireModule?: NodeRequire | null) => boolean;
7
2
  //# sourceMappingURL=comunica-patch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"comunica-patch.d.ts","sourceRoot":"","sources":["../../../src/core/comunica-patch.ts"],"names":[],"mappings":"AAGA,KAAK,iBAAiB,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,WAAW,CAAC;AAE3D,QAAA,MAAM,oBAAoB,QAAO,iBAAiB,GAAG,IAoBpD,CAAC;AAEF,QAAA,MAAM,eAAe,0BAAyB,CAAC;AAC/C,QAAA,MAAM,cAAc,QAIR,CAAC;AAEb,QAAA,MAAM,aAAa,oBAEX,CAAC;AAGT,QAAA,MAAM,uBAAuB,GAAI,YAAY,MAAM,YAkClD,CAAC"}
1
+ {"version":3,"file":"comunica-patch.d.ts","sourceRoot":"","sources":["../../../src/core/comunica-patch.ts"],"names":[],"mappings":"AAkEA,eAAO,MAAM,oBAAoB,GAAI,gBAAe,WAAW,GAAG,IAA2B,KAAG,OAe/F,CAAC"}
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  // Comunica 兼容性补丁
3
2
  // 修复 ActionObserverHttp 中 observedActors 未定义的问题
4
3
  const resolveCreateRequire = () => {
@@ -26,11 +25,10 @@ const moduleFilename = typeof __filename === 'string'
26
25
  : (typeof process !== 'undefined' && typeof process.cwd === 'function'
27
26
  ? process.cwd()
28
27
  : '/');
29
- const requireModule = createRequireFn
28
+ const defaultRequireModule = createRequireFn
30
29
  ? createRequireFn(moduleFilename)
31
30
  : null;
32
- // 直接修补所有 Comunica ActionObserverHttp
33
- const patchActionObserverHttp = (moduleName) => {
31
+ const patchActionObserverHttp = (requireModule, moduleName) => {
34
32
  if (!requireModule) {
35
33
  return false;
36
34
  }
@@ -39,15 +37,9 @@ const patchActionObserverHttp = (moduleName) => {
39
37
  if (comunica && comunica.ActionObserverHttp) {
40
38
  const originalOnRun = comunica.ActionObserverHttp.prototype.onRun;
41
39
  comunica.ActionObserverHttp.prototype.onRun = function (actor, _action, _output) {
42
- // 确保 observedActors 存在且是数组
43
- if (!this.observedActors) {
40
+ if (!this.observedActors || !Array.isArray(this.observedActors)) {
44
41
  this.observedActors = [];
45
42
  }
46
- // observedActors 应该是一个数组,如果不是则初始化为空数组
47
- if (!Array.isArray(this.observedActors)) {
48
- this.observedActors = [];
49
- }
50
- // 调用原始方法
51
43
  return originalOnRun.call(this, actor, _action, _output);
52
44
  };
53
45
  console.log(`[Patch] Successfully patched ActionObserverHttp.onRun in ${moduleName}`);
@@ -55,22 +47,23 @@ const patchActionObserverHttp = (moduleName) => {
55
47
  }
56
48
  return false;
57
49
  }
58
- catch (error) {
59
- // 静默忽略模块不存在的错误
50
+ catch {
60
51
  return false;
61
52
  }
62
53
  };
63
- // 修补所有可能的 ActionObserverHttp 实例
64
- // 包括顶层和 @comunica/query-sparql-solid 嵌套的 node_modules
65
- if (requireModule) {
54
+ export const applyComunicaPatches = (requireModule = defaultRequireModule) => {
55
+ if (!requireModule) {
56
+ return false;
57
+ }
66
58
  const modules = [
67
- // 顶层模块
68
59
  '@comunica/actor-query-result-serialize-sparql-json',
69
60
  '@comunica/actor-query-result-serialize-stats',
70
- // 嵌套在 @comunica/query-sparql-solid 下的模块 (Comunica v4)
71
61
  '@comunica/query-sparql-solid/node_modules/@comunica/actor-query-result-serialize-sparql-json',
72
62
  '@comunica/query-sparql-solid/node_modules/@comunica/actor-query-result-serialize-stats'
73
63
  ];
74
- modules.forEach(patchActionObserverHttp);
75
- }
64
+ return modules
65
+ .map((moduleName) => patchActionObserverHttp(requireModule, moduleName))
66
+ .some(Boolean);
67
+ };
68
+ applyComunicaPatches();
76
69
  //# sourceMappingURL=comunica-patch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"comunica-patch.js","sourceRoot":"","sources":["../../../src/core/comunica-patch.ts"],"names":[],"mappings":";AAAA,iBAAiB;AACjB,gDAAgD;AAIhD,MAAM,oBAAoB,GAAG,GAA6B,EAAE;IAC1D,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAA4B,CAAC;QAC/D,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAsD,CAAC;QAC7F,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;YAChE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,SAAS,CAAC,aAAa,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,oBAAoB,EAAE,CAAC;AAC/C,MAAM,cAAc,GAAG,OAAO,UAAU,KAAK,QAAQ;IACnD,CAAC,CAAC,UAAU;IACZ,CAAC,CAAC,CAAC,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,UAAU;QAClE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;QACf,CAAC,CAAC,GAAG,CAAC,CAAC;AAEb,MAAM,aAAa,GAAG,eAAe;IACnC,CAAC,CAAC,eAAe,CAAC,cAAc,CAAC;IACjC,CAAC,CAAC,IAAI,CAAC;AAET,yCAAyC;AACzC,MAAM,uBAAuB,GAAG,CAAC,UAAkB,EAAE,EAAE;IACrD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;QAE3C,IAAI,QAAQ,IAAI,QAAQ,CAAC,kBAAkB,EAAE,CAAC;YAC5C,MAAM,aAAa,GAAG,QAAQ,CAAC,kBAAkB,CAAC,SAAS,CAAC,KAAK,CAAC;YAElE,QAAQ,CAAC,kBAAkB,CAAC,SAAS,CAAC,KAAK,GAAG,UAAS,KAAU,EAAE,OAAY,EAAE,OAAY;gBAC3F,2BAA2B;gBAC3B,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;oBACzB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;gBAC3B,CAAC;gBAED,sCAAsC;gBACtC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;oBACxC,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;gBAC3B,CAAC;gBAED,SAAS;gBACT,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC3D,CAAC,CAAC;YAEF,OAAO,CAAC,GAAG,CAAC,4DAA4D,UAAU,EAAE,CAAC,CAAC;YACtF,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,eAAe;QACf,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,gCAAgC;AAChC,sDAAsD;AACtD,IAAI,aAAa,EAAE,CAAC;IAClB,MAAM,OAAO,GAAG;QACd,OAAO;QACP,oDAAoD;QACpD,8CAA8C;QAC9C,sDAAsD;QACtD,8FAA8F;QAC9F,wFAAwF;KACzF,CAAC;IAEF,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAC3C,CAAC"}
1
+ {"version":3,"file":"comunica-patch.js","sourceRoot":"","sources":["../../../src/core/comunica-patch.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB,gDAAgD;AAIhD,MAAM,oBAAoB,GAAG,GAA6B,EAAE;IAC1D,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAA4B,CAAC;QAC/D,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAsD,CAAC;QAC7F,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;YAChE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,SAAS,CAAC,aAAa,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,oBAAoB,EAAE,CAAC;AAC/C,MAAM,cAAc,GAAG,OAAO,UAAU,KAAK,QAAQ;IACnD,CAAC,CAAC,UAAU;IACZ,CAAC,CAAC,CAAC,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,UAAU;QAClE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;QACf,CAAC,CAAC,GAAG,CAAC,CAAC;AAEb,MAAM,oBAAoB,GAAG,eAAe;IAC1C,CAAC,CAAC,eAAe,CAAC,cAAc,CAAC;IACjC,CAAC,CAAC,IAAI,CAAC;AAET,MAAM,uBAAuB,GAAG,CAAC,aAAiC,EAAE,UAAkB,EAAE,EAAE;IACxF,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;QAE3C,IAAI,QAAQ,IAAI,QAAQ,CAAC,kBAAkB,EAAE,CAAC;YAC5C,MAAM,aAAa,GAAG,QAAQ,CAAC,kBAAkB,CAAC,SAAS,CAAC,KAAK,CAAC;YAElE,QAAQ,CAAC,kBAAkB,CAAC,SAAS,CAAC,KAAK,GAAG,UAAS,KAAU,EAAE,OAAY,EAAE,OAAY;gBAC3F,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;oBAChE,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;gBAC3B,CAAC;gBAED,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC3D,CAAC,CAAC;YAEF,OAAO,CAAC,GAAG,CAAC,4DAA4D,UAAU,EAAE,CAAC,CAAC;YACtF,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,gBAAoC,oBAAoB,EAAW,EAAE;IACxG,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,OAAO,GAAG;QACd,oDAAoD;QACpD,8CAA8C;QAC9C,8FAA8F;QAC9F,wFAAwF;KACzF,CAAC;IAEF,OAAO,OAAO;SACX,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,uBAAuB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;SACvE,IAAI,CAAC,OAAO,CAAC,CAAC;AACnB,CAAC,CAAC;AAEF,oBAAoB,EAAE,CAAC"}
@@ -1,14 +1,16 @@
1
- import type { ComunicaSPARQLExecutor } from '../sparql-executor';
2
1
  import type { ASTToSPARQLConverter } from '../ast-to-sparql';
3
2
  import type { SelectQueryPlan } from '../select-plan';
4
- import type { ExecutionStrategy } from './types';
3
+ import type { ComunicaSPARQLExecutor } from '../sparql-executor';
4
+ import type { SPARQLQueryEngineFactory } from '../sparql-engine';
5
5
  import type { UriResolver } from '../uri';
6
+ import type { ExecutionStrategy } from './types';
6
7
  export interface SparqlStrategyDependencies {
7
8
  sparqlExecutor: ComunicaSPARQLExecutor;
8
9
  sparqlConverter: ASTToSPARQLConverter;
9
10
  sessionFetch: typeof fetch;
10
11
  podUrl: string;
11
12
  uriResolver: UriResolver;
13
+ createQueryEngine?: SPARQLQueryEngineFactory;
12
14
  }
13
15
  export declare class SparqlStrategy implements ExecutionStrategy {
14
16
  readonly mode: "sparql";
@@ -17,45 +19,15 @@ export declare class SparqlStrategy implements ExecutionStrategy {
17
19
  private sessionFetch;
18
20
  private podUrl;
19
21
  private uriResolver;
22
+ private createQueryEngine?;
20
23
  constructor(deps: SparqlStrategyDependencies);
21
- /**
22
- * Resolve target graph based on resource mode
23
- * - Document Mode SELECT: undefined (let CSS auto-query container and all sub-graphs)
24
- * - Document Mode INSERT/UPDATE/DELETE: container path as graph
25
- * - Fragment Mode: base file path
26
- */
27
24
  private resolveTargetGraph;
28
- /**
29
- * Get the appropriate fetch function for a SPARQL endpoint
30
- */
31
25
  private getFetchForEndpoint;
32
- /**
33
- * Execute SELECT query via SPARQL endpoint
34
- */
35
26
  executeSelect(plan: SelectQueryPlan, _containerUrl: string, resourceUrl: string): Promise<any[]>;
36
- /**
37
- * Execute SPARQL SELECT directly via fetch (fast path, bypasses Comunica)
38
- */
39
27
  private executeDirectSparqlSelect;
40
- /**
41
- * Parse SPARQL Results JSON format into row objects
42
- */
43
- private parseSparqlResultsJson;
44
- /**
45
- * Convert a SPARQL result term to a JavaScript value
46
- */
47
- private convertSparqlTerm;
48
- /**
49
- * Convert a typed literal value to JavaScript type
50
- */
51
- private convertTypedLiteral;
52
- /**
53
- * Extract datatype from a value string like "true"^^<http://...#boolean>
54
- */
55
- private extractDatatypeFromValue;
56
- /**
57
- * Extract literal value from a typed literal string like "true"^^<...>
58
- */
59
- private extractLiteralValue;
28
+ executeInsert(): Promise<any[]>;
29
+ executeUpdate(): Promise<any[]>;
30
+ executeDelete(): Promise<any[]>;
31
+ private parseSparqlValue;
60
32
  }
61
33
  //# sourceMappingURL=sparql-strategy.d.ts.map