@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
@@ -2,7 +2,7 @@
2
2
  * URI Resolver Implementation
3
3
  *
4
4
  * 统一的 URI 生成和解析
5
- * 整合了 Subject URI 和 Object/Reference URI 的解析逻辑
5
+ * 整合了 Subject URI 和 Object/Link URI 的解析逻辑
6
6
  *
7
7
  * 设计原则:
8
8
  * - 无状态,所有需要的上下文都通过参数传入
@@ -143,15 +143,15 @@ export class UriResolverImpl {
143
143
  }
144
144
  return false;
145
145
  }
146
- // ================= Object/Reference URI 解析 =================
146
+ // ================= Object/Link URI 解析 =================
147
147
  /**
148
- * 解析 reference 列的值为完整 URI
148
+ * 解析 link 列的值为完整 URI
149
149
  *
150
150
  * @param value 原始值(可能是 UUID、相对路径或完整 URI)
151
- * @param column 列定义(包含 reference 配置)
151
+ * @param column 列定义(包含 link 配置)
152
152
  * @param context 解析上下文(包含 tableRegistry 等)
153
153
  */
154
- resolveReference(value, column, context) {
154
+ resolveLink(value, column, context) {
155
155
  // 1. 已经是绝对 URI,直接返回
156
156
  if (this.isAbsoluteUri(value)) {
157
157
  return value;
@@ -169,20 +169,20 @@ export class UriResolverImpl {
169
169
  }
170
170
  throw new Error(`Cannot resolve relative URI "${value}": no baseUri configured`);
171
171
  }
172
- // 3. 尝试通过 referenceTable 解析(直接引用表对象,不需要 registry)
173
- const referenceTable = column.getReferenceTable?.();
174
- if (referenceTable) {
175
- const uriInfo = this.getTableUriInfo(referenceTable);
172
+ // 3. 尝试通过 linkTable 解析(直接链接目标表对象,不需要 registry)
173
+ const linkTable = column.getLinkTable?.();
174
+ if (linkTable) {
175
+ const uriInfo = this.getTableUriInfo(linkTable);
176
176
  if (uriInfo) {
177
177
  return this.buildFullUri(value, uriInfo.baseUrl, uriInfo.subjectTemplate);
178
178
  }
179
- throw new Error(`Cannot resolve URI "${value}": referenced table "${referenceTable.config?.name}" has no base configured.`);
179
+ throw new Error(`Cannot resolve URI "${value}": linked table "${linkTable.config?.name}" has no base configured.`);
180
180
  }
181
- // 4. 尝试通过 referenceTableName 解析
182
- const referenceTableName = column.getReferenceTableName?.();
183
- if (referenceTableName) {
181
+ // 4. 尝试通过 linkTableName 解析
182
+ const linkTableName = column.getLinkTableName?.();
183
+ if (linkTableName) {
184
184
  if (context?.tableNameRegistry) {
185
- const targetTable = context.tableNameRegistry.get(referenceTableName);
185
+ const targetTable = context.tableNameRegistry.get(linkTableName);
186
186
  if (targetTable) {
187
187
  const uriInfo = this.getTableUriInfo(targetTable);
188
188
  if (uriInfo) {
@@ -193,25 +193,25 @@ export class UriResolverImpl {
193
193
  const availableTables = context?.tableNameRegistry
194
194
  ? Array.from(context.tableNameRegistry.keys()).join(', ')
195
195
  : '(no tables registered)';
196
- throw new Error(`Cannot resolve URI "${value}": table "${referenceTableName}" not found in schema. ` +
196
+ throw new Error(`Cannot resolve URI "${value}": table "${linkTableName}" not found in schema. ` +
197
197
  `Available tables: ${availableTables}`);
198
198
  }
199
- // 5. 尝试通过 referenceTarget (class URI) 解析
200
- const referenceTarget = column.getReferenceTarget?.();
201
- if (referenceTarget) {
199
+ // 5. 尝试通过 linkTarget (class URI) 解析
200
+ const linkTarget = column.getLinkTarget?.();
201
+ if (linkTarget) {
202
202
  if (!context?.tableRegistry) {
203
- // 有 referenceTarget 但没有 tableRegistry,无法解析
204
- throw new Error(`Cannot resolve URI "${value}" (references ${referenceTarget}): ` +
203
+ // 有 linkTarget 但没有 tableRegistry,无法解析
204
+ throw new Error(`Cannot resolve URI "${value}" (links to ${linkTarget}): ` +
205
205
  `tableRegistry not configured. Ensure the schema is properly registered.`);
206
206
  }
207
- const targetTables = context.tableRegistry.get(referenceTarget);
207
+ const targetTables = context.tableRegistry.get(linkTarget);
208
208
  if (targetTables && targetTables.length > 0) {
209
209
  if (targetTables.length > 1) {
210
210
  const tableNames = targetTables
211
211
  .map(t => t.config?.name || 'unknown')
212
212
  .join(', ');
213
- throw new Error(`Ambiguous reference: class "${referenceTarget}" has multiple tables [${tableNames}]. ` +
214
- `Use .reference('tableName') or .reference(tableObject) to specify which table to use.`);
213
+ throw new Error(`Ambiguous link target: class "${linkTarget}" has multiple tables [${tableNames}]. ` +
214
+ `Use .link('tableName') or .link(tableObject) to specify which table to use.`);
215
215
  }
216
216
  const targetTable = targetTables[0];
217
217
  const uriInfo = this.getTableUriInfo(targetTable);
@@ -219,11 +219,11 @@ export class UriResolverImpl {
219
219
  return this.buildFullUri(value, uriInfo.baseUrl, uriInfo.subjectTemplate);
220
220
  }
221
221
  }
222
- // referenceTarget 指定了但在 registry 中找不到对应的表
223
- throw new Error(`Cannot resolve URI "${value}": class "${referenceTarget}" not found in tableRegistry. ` +
222
+ // linkTarget 指定了但在 registry 中找不到对应的表
223
+ throw new Error(`Cannot resolve URI "${value}": class "${linkTarget}" not found in tableRegistry. ` +
224
224
  `Available classes: ${Array.from(context.tableRegistry.keys()).join(', ') || '(none)'}`);
225
225
  }
226
- // 6. 使用 baseUri fallback (仅当没有任何 reference 配置时)
226
+ // 6. 使用 baseUri fallback (仅当没有任何 link 配置时)
227
227
  const base = context?.baseUri || this.podUrl;
228
228
  if (base && this.isAbsoluteUri(base)) {
229
229
  const baseUrl = base.endsWith('/') ? base : `${base}/`;
@@ -245,33 +245,33 @@ export class UriResolverImpl {
245
245
  value.startsWith('file://') ||
246
246
  /^[a-zA-Z][a-zA-Z0-9+.-]*:/.test(value));
247
247
  }
248
- isReferenceColumn(column) {
248
+ isLinkColumn(column) {
249
249
  if (!column)
250
250
  return false;
251
251
  return column.dataType === 'uri' ||
252
- column.isReference?.() ||
253
- !!column.options?.referenceTarget ||
254
- !!column.options?.referenceTableName ||
255
- !!column.options?.referenceTable;
252
+ column.isLink?.() ||
253
+ !!column.options?.linkTarget ||
254
+ !!column.options?.linkTableName ||
255
+ !!column.options?.linkTable;
256
256
  }
257
257
  findTargetTable(column, context) {
258
- // Priority 1: Direct table reference from column object
259
- const referenceTable = column.getReferenceTable?.() || column.options?.referenceTable;
260
- if (referenceTable) {
261
- return referenceTable;
262
- }
263
- // Priority 2: Table name reference
264
- const referenceTableName = column.getReferenceTableName?.() || column.options?.referenceTableName;
265
- if (referenceTableName && context?.tableNameRegistry) {
266
- const found = context.tableNameRegistry.get(referenceTableName);
258
+ // Priority 1: Direct linked table from column object
259
+ const linkTable = column.getLinkTable?.() || column.options?.linkTable;
260
+ if (linkTable) {
261
+ return linkTable;
262
+ }
263
+ // Priority 2: Linked table by name
264
+ const linkTableName = column.getLinkTableName?.() || column.options?.linkTableName;
265
+ if (linkTableName && context?.tableNameRegistry) {
266
+ const found = context.tableNameRegistry.get(linkTableName);
267
267
  if (found) {
268
268
  return found;
269
269
  }
270
270
  }
271
- // Priority 3: Class URI reference (check for ambiguity)
272
- const referenceTarget = column.getReferenceTarget?.() || column.options?.referenceTarget;
273
- if (referenceTarget && context?.tableRegistry) {
274
- const tables = context.tableRegistry.get(referenceTarget);
271
+ // Priority 3: Class URI link (check for ambiguity)
272
+ const linkTarget = column.getLinkTarget?.() || column.options?.linkTarget;
273
+ if (linkTarget && context?.tableRegistry) {
274
+ const tables = context.tableRegistry.get(linkTarget);
275
275
  if (tables && tables.length === 1) {
276
276
  return tables[0];
277
277
  }
@@ -279,16 +279,16 @@ export class UriResolverImpl {
279
279
  return undefined;
280
280
  }
281
281
  /**
282
- * 从引用 URI 中提取 ID
282
+ * 从链接 URI 中提取 ID
283
283
  *
284
284
  * 用于读取时将完整 URI 转换回简单 ID
285
285
  *
286
286
  * @param uri 完整的 URI (如 http://pod/.data/chat/chat-123/index.ttl#this)
287
- * @param column 引用列定义
287
+ * @param column 链接列定义
288
288
  * @param context URI 上下文(包含表注册表)
289
289
  * @returns 提取的 ID (如 chat-123),如果无法解析则返回原 URI
290
290
  */
291
- extractReferenceId(uri, column, context) {
291
+ extractLinkId(uri, column, context) {
292
292
  if (!uri || !this.isAbsoluteUri(uri)) {
293
293
  return uri;
294
294
  }
@@ -392,16 +392,16 @@ export class UriResolverImpl {
392
392
  }
393
393
  /**
394
394
  * 将列值归一化为适合模板使用的字符串
395
- * 特别处理:如果是引用列且值为 URI,则尝试提取 ID
395
+ * 特别处理:如果是链接列且值为 URI,则尝试提取 ID
396
396
  */
397
397
  normalizeValue(value, column, context) {
398
398
  if (value === undefined || value === null) {
399
399
  return '';
400
400
  }
401
- // 处理引用列:如果是引用列且值为 URI,尝试提取 ID
401
+ // 处理链接列:如果是链接列且值为 URI,尝试提取 ID
402
402
  if (typeof value === 'string' && this.isAbsoluteUri(value)) {
403
- if (column && this.isReferenceColumn(column)) {
404
- return this.extractReferenceId(value, column, context);
403
+ if (column && this.isLinkColumn(column)) {
404
+ return this.extractLinkId(value, column, context);
405
405
  }
406
406
  }
407
407
  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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"}
@@ -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"}
@@ -3,28 +3,24 @@ import { PodAsyncSession } from './core/pod-session';
3
3
  import { PodDialect } from './core/pod-dialect';
4
4
  // 主要的 drizzle 函数 - 接受 Inrupt Session
5
5
  export function drizzle(session, config) {
6
- // 验证session
7
6
  if (!session || !session.info.isLoggedIn) {
8
7
  throw new Error('需要有效的已认证Session');
9
8
  }
10
- // 创建PodDialect,传递 notifications 配置
11
9
  const dialectConfig = {
12
10
  session,
13
11
  preferredChannels: config?.notifications?.preferredChannels,
12
+ createQueryEngine: config?.sparql?.createQueryEngine,
14
13
  disableInteropDiscovery: config?.disableInteropDiscovery,
15
14
  storageTTL: config?.storageTTL,
16
15
  debug: config?.debug,
17
16
  };
18
17
  const dialect = new PodDialect(dialectConfig);
19
- // 可选:自动连接到 Pod
20
18
  if (config?.autoConnect) {
21
19
  dialect.connect().catch(console.error);
22
20
  }
23
- // 如果有 schema,设置表注册表(用于 URI 引用自动补全)
24
21
  if (config?.schema) {
25
22
  dialect.setSchema(config.schema);
26
23
  }
27
- // 创建PodAsyncSession和PodDatabase
28
24
  const podSession = new PodAsyncSession(dialect);
29
25
  return new PodDatabase(dialect, podSession, config?.schema);
30
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../src/driver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAgD,MAAM,oBAAoB,CAAC;AA+B9F,qCAAqC;AACrC,MAAM,UAAU,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,UAAU,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,eAAe,CAAC,OAAO,CAAC,CAAC;IAChD,OAAO,IAAI,WAAW,CAAU,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACvE,CAAC;AAID,OAAO,EAAE,WAAW,IAAI,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../src/driver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAgD,MAAM,oBAAoB,CAAC;AAuC9F,qCAAqC;AACrC,MAAM,UAAU,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,UAAU,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,eAAe,CAAC,OAAO,CAAC,CAAC;IAChD,OAAO,IAAI,WAAW,CAAU,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACvE,CAAC;AAGD,OAAO,EAAE,WAAW,IAAI,QAAQ,EAAE,CAAC"}
@@ -1,8 +1,10 @@
1
+ export { pod, PodClient, PodCollection, PodEntity, type PodCollectionQueryOptions } from './pod';
1
2
  export { drizzle, type SolidDatabase, type SolidAuthSession } from './driver';
2
3
  export * from './solid';
3
4
  export { findByIRI } from './utils/find-by-iri';
4
5
  export { podTable, alias, string, int, integer, boolean, date, json, object, uri, iri, text, varchar, char, timestamp, datetime, bigint, smallint, tinyint, mediumint, serial, real, decimal, numeric, float, double, jsonb, id, relations, solidSchema, SolidSchema, isSolidSchema, type PodColumnBase as PodColumn, type PodTable, type SolidSchemaOptions, type NamespaceConfig, type PodTableOptions, type PodTableMapping, type PodColumnMapping, type PodColumnOptions, type InferTableData, type InferInsertData, type InferUpdateData, type RelationDefinition, type RelationOptions, type DiscoverFunction, type HookContext, type TableHooks, type SolidSession, } from './core/schema';
5
6
  export { ProfileManager } from './core/profile-manager';
7
+ export { configureSparqlEngine, createNodeModuleSparqlEngineFactory, type SPARQLEngineConfig, type SPARQLQueryEngine, type SPARQLQueryEngineFactory, } from './core/sparql-engine';
6
8
  export { SelectQueryBuilder, InsertQueryBuilder, UpdateQueryBuilder, DeleteQueryBuilder, } from './core/query-builders';
7
9
  export type { SelectFieldMap, InsertQueryPlan, UpdateQueryPlan, DeleteQueryPlan } from './core/query-builders/types';
8
10
  export { DrizzleShapeManager, XSD, SHACL, } from './core/shape';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/esm/index.js CHANGED
@@ -1,4 +1,5 @@
1
- // 主要入口点
1
+ // 主要公开入口
2
+ export { pod, PodClient, PodCollection, PodEntity } from './pod';
2
3
  export { drizzle } from './driver';
3
4
  export * from './solid';
4
5
  // 公共工具
@@ -15,6 +16,7 @@ relations,
15
16
  solidSchema, SolidSchema, isSolidSchema, } from './core/schema';
16
17
  // Profile 管理(工具类,可在 hooks 中使用)
17
18
  export { ProfileManager } from './core/profile-manager';
19
+ export { configureSparqlEngine, createNodeModuleSparqlEngineFactory, } from './core/sparql-engine';
18
20
  // 查询构建器
19
21
  export { SelectQueryBuilder, InsertQueryBuilder, UpdateQueryBuilder, DeleteQueryBuilder, } from './core/query-builders';
20
22
  // Shape 管理
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,QAAQ;AACR,OAAO,EAAE,OAAO,EAA6C,MAAM,UAAU,CAAC;AAC9E,cAAc,SAAS,CAAC;AAExB,OAAO;AACP,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,SAAS;AACT,OAAO,EACL,QAAQ,EACR,KAAK;AACL,oBAAoB;AACpB,MAAM,EACN,GAAG,EACH,OAAO,EACP,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,GAAG,EACH,GAAG;AACH,8BAA8B;AAC9B,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,OAAO,EACP,SAAS,EACT,MAAM,EACN,IAAI,EACJ,OAAO,EACP,OAAO,EACP,KAAK,EACL,MAAM,EACN,KAAK,EACL,EAAE;AACF,UAAU;AACV,SAAS;AACT,gBAAgB;AAChB,WAAW,EACX,WAAW,EACX,aAAa,GAmBd,MAAM,eAAe,CAAC;AAEvB,+BAA+B;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,QAAQ;AACR,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAG/B,WAAW;AACX,OAAO,EACL,mBAAmB,EACnB,GAAG,EACH,KAAK,GACN,MAAM,cAAc,CAAC;AAStB,qBAAqB;AACrB,OAAO,EACL,aAAa,EACb,OAAO,EACP,UAAU,GASX,MAAM,kBAAkB,CAAC;AAE1B,OAAO;AACP,OAAO,EACL,WAAW,EACX,SAAS,EACT,WAAW,EACX,WAAW,EACX,oBAAoB,EAErB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,eAAe,EACf,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAMhC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,gBAAgB;AAChB,OAAO,EACL,cAAc,EACd,0BAA0B,EAC1B,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EAGpB,MAAM,0BAA0B,CAAC;AAUlC,eAAe;AACf,OAAO,EACL,gBAAgB,EAChB,KAAK,EACL,YAAY,EACZ,UAAU,EAIX,MAAM,2BAA2B,CAAC;AAEnC,WAAW;AACX,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACf,MAAM,wBAAwB,CAAC;AAEhC,SAAS;AACT,OAAO,EACL,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,IAAI,EACJ,KAAK,EACL,OAAO,EACP,UAAU,EACV,KAAK,EACL,OAAO,EACP,UAAU,EACV,MAAM,EACN,SAAS,EACT,GAAG,EACH,EAAE,EACF,GAAG,EACH,MAAM,EACN,SAAS,EACT,UAAU,EAEX,MAAM,yBAAyB,CAAC;AAEjC,QAAQ;AACR,OAAO,EACL,GAAG,EACH,IAAI,EAEL,MAAM,iBAAiB,CAAC;AAEzB,OAAO;AACP,OAAO,EACL,KAAK,EACL,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EAEJ,MAAM,mBAAmB,CAAC;AAE3B,SAAS;AACT,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,0BAA0B,EAI3B,MAAM,4BAA4B,CAAC;AAEpC,6BAA6B;AAC7B,OAAO,EACL,mBAAmB,EASpB,MAAM,sBAAsB,CAAC;AAE9B,2BAA2B;AAC3B,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EAMvB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ import type { EntitySubscribeOptions, TableSubscribeOptions, Subscription } from './core/notifications';
2
+ import type { OrderByExpression } from './core/order-by';
3
+ import type { SelectFieldMap } from './core/pod-session';
4
+ import type { QueryCondition } from './core/query-conditions';
5
+ import { PodTable, SolidSchema, type InferInsertData, type InferTableData, type InstantiateTableOptions, type PodColumnBase } from './core/schema';
6
+ import type { DataLocation, DiscoverOptions, LocationToTableOptions } from './core/discovery';
7
+ import type { FederatedError } from './core/federated';
8
+ import { type SolidAuthSession, type SolidDatabase, type SolidDrizzleConfig } from './driver';
9
+ type CollectionWhere = Record<string, unknown> | QueryCondition;
10
+ type CollectionOrderBy = PodColumnBase | string | OrderByExpression | 'asc' | 'desc';
11
+ export interface PodCollectionQueryOptions<TTable extends PodTable<any> = PodTable<any>> {
12
+ fields?: SelectFieldMap;
13
+ where?: CollectionWhere;
14
+ limit?: number;
15
+ offset?: number;
16
+ orderBy?: CollectionOrderBy[];
17
+ }
18
+ export declare class PodEntity<TTable extends PodTable<any>, TSchema extends Record<string, unknown> = Record<string, never>> {
19
+ private readonly db;
20
+ readonly table: TTable;
21
+ readonly iri: string;
22
+ constructor(db: SolidDatabase<TSchema>, table: TTable, iri: string);
23
+ get documentUrl(): string;
24
+ get fragment(): string | null;
25
+ get(): Promise<InferTableData<TTable> | null>;
26
+ read(): Promise<InferTableData<TTable> | null>;
27
+ update(data: Partial<Omit<InferTableData<TTable>, '@id' | 'id'>>): Promise<InferTableData<TTable> | null>;
28
+ delete(): Promise<boolean>;
29
+ subscribe(options: EntitySubscribeOptions<InferTableData<TTable>>): Promise<() => void>;
30
+ }
31
+ export declare class PodCollection<TTable extends PodTable<any>, TSchema extends Record<string, unknown> = Record<string, never>> {
32
+ private readonly db;
33
+ readonly table: TTable;
34
+ constructor(db: SolidDatabase<TSchema>, table: TTable);
35
+ byIri(iri: string): PodEntity<TTable, TSchema>;
36
+ entity(iri: string): PodEntity<TTable, TSchema>;
37
+ iriFor(record: InferInsertData<TTable>): string;
38
+ select(fields?: SelectFieldMap): import("./core/pod-session").SelectQueryBuilder<TTable>;
39
+ list(options?: PodCollectionQueryOptions<TTable>): Promise<InferTableData<TTable>[]>;
40
+ first(options?: PodCollectionQueryOptions<TTable>): Promise<InferTableData<TTable> | null>;
41
+ create(record: InferInsertData<TTable>): Promise<InferTableData<TTable> | null>;
42
+ create(records: InferInsertData<TTable>[]): Promise<Array<InferTableData<TTable>>>;
43
+ createMany(records: InferInsertData<TTable>[]): Promise<Array<InferTableData<TTable>>>;
44
+ subscribe(options: TableSubscribeOptions): Promise<Subscription>;
45
+ }
46
+ export declare class PodClient<TSchema extends Record<string, unknown> = Record<string, never>> {
47
+ private readonly db;
48
+ constructor(db: SolidDatabase<TSchema>);
49
+ asDrizzle(): SolidDatabase<TSchema>;
50
+ get query(): Record<string, any>;
51
+ bind<TColumns extends Record<string, PodColumnBase<any, any, any, any>>>(schema: SolidSchema<TColumns>, options: InstantiateTableOptions): PodTable<TColumns>;
52
+ locationToTable(location: DataLocation, options?: LocationToTableOptions): Promise<PodTable<any>>;
53
+ discoverTablesFor(rdfClass: string, options?: DiscoverOptions, tableOptions?: LocationToTableOptions): Promise<PodTable<any>[]>;
54
+ collection<TTable extends PodTable<any>>(table: TTable): PodCollection<TTable, TSchema>;
55
+ entity<TTable extends PodTable<any>>(table: TTable, iri: string): PodEntity<TTable, TSchema>;
56
+ init<TTable extends PodTable<any>>(...tables: Array<TTable | TTable[]>): Promise<void>;
57
+ connect(): Promise<void>;
58
+ disconnect(): Promise<void>;
59
+ sparql(query: string): Promise<unknown[]>;
60
+ batch<TOperations extends readonly unknown[]>(operations: TOperations): Promise<{
61
+ [K in keyof TOperations]: Awaited<TOperations[K]>;
62
+ }>;
63
+ getLastFederatedErrors(): FederatedError[];
64
+ get discovery(): import("./core/discovery").DataDiscovery;
65
+ }
66
+ export declare function pod<TSchema extends Record<string, unknown> = Record<string, never>>(session: SolidAuthSession, config?: SolidDrizzleConfig<TSchema>): PodClient<TSchema>;
67
+ export {};
68
+ //# sourceMappingURL=pod.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pod.d.ts","sourceRoot":"","sources":["../../src/pod.ts"],"names":[],"mappings":"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"}