@undefineds.co/drizzle-solid 0.2.6 → 0.2.8

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 (172) hide show
  1. package/dist/core/ast-to-sparql.d.ts +1 -6
  2. package/dist/core/ast-to-sparql.d.ts.map +1 -1
  3. package/dist/core/ast-to-sparql.js +3 -22
  4. package/dist/core/ast-to-sparql.js.map +1 -1
  5. package/dist/core/execution/ldp-executor.d.ts +8 -7
  6. package/dist/core/execution/ldp-executor.d.ts.map +1 -1
  7. package/dist/core/execution/ldp-executor.js +165 -136
  8. package/dist/core/execution/ldp-executor.js.map +1 -1
  9. package/dist/core/execution/ldp-strategy.js +1 -1
  10. package/dist/core/execution/ldp-strategy.js.map +1 -1
  11. package/dist/core/execution/pod-executor.d.ts.map +1 -1
  12. package/dist/core/execution/pod-executor.js +9 -0
  13. package/dist/core/execution/pod-executor.js.map +1 -1
  14. package/dist/core/execution/sparql-strategy.d.ts +7 -26
  15. package/dist/core/execution/sparql-strategy.d.ts.map +1 -1
  16. package/dist/core/execution/sparql-strategy.js +65 -111
  17. package/dist/core/execution/sparql-strategy.js.map +1 -1
  18. package/dist/core/execution/types.d.ts +8 -8
  19. package/dist/core/execution/types.d.ts.map +1 -1
  20. package/dist/core/federated/executor.d.ts +3 -0
  21. package/dist/core/federated/executor.d.ts.map +1 -1
  22. package/dist/core/federated/executor.js +13 -8
  23. package/dist/core/federated/executor.js.map +1 -1
  24. package/dist/core/pod-database.d.ts +0 -4
  25. package/dist/core/pod-database.d.ts.map +1 -1
  26. package/dist/core/pod-database.js +10 -32
  27. package/dist/core/pod-database.js.map +1 -1
  28. package/dist/core/pod-dialect.d.ts +0 -24
  29. package/dist/core/pod-dialect.d.ts.map +1 -1
  30. package/dist/core/pod-dialect.js +0 -182
  31. package/dist/core/pod-dialect.js.map +1 -1
  32. package/dist/core/pod-session.d.ts +6 -2
  33. package/dist/core/pod-session.d.ts.map +1 -1
  34. package/dist/core/pod-session.js +8 -2
  35. package/dist/core/pod-session.js.map +1 -1
  36. package/dist/core/query-builders/select-query-builder.d.ts +7 -0
  37. package/dist/core/query-builders/select-query-builder.d.ts.map +1 -1
  38. package/dist/core/query-builders/select-query-builder.js +56 -14
  39. package/dist/core/query-builders/select-query-builder.js.map +1 -1
  40. package/dist/core/query-conditions.d.ts.map +1 -1
  41. package/dist/core/query-conditions.js.map +1 -1
  42. package/dist/core/resource-resolver/base-resolver.d.ts +74 -3
  43. package/dist/core/resource-resolver/base-resolver.d.ts.map +1 -1
  44. package/dist/core/resource-resolver/base-resolver.js +221 -0
  45. package/dist/core/resource-resolver/base-resolver.js.map +1 -1
  46. package/dist/core/resource-resolver/document-resolver.d.ts +19 -4
  47. package/dist/core/resource-resolver/document-resolver.d.ts.map +1 -1
  48. package/dist/core/resource-resolver/document-resolver.js +72 -34
  49. package/dist/core/resource-resolver/document-resolver.js.map +1 -1
  50. package/dist/core/resource-resolver/fragment-resolver.d.ts +17 -3
  51. package/dist/core/resource-resolver/fragment-resolver.d.ts.map +1 -1
  52. package/dist/core/resource-resolver/fragment-resolver.js +28 -16
  53. package/dist/core/resource-resolver/fragment-resolver.js.map +1 -1
  54. package/dist/core/resource-resolver/types.d.ts +1 -1
  55. package/dist/core/resource-resolver/types.d.ts.map +1 -1
  56. package/dist/core/schema/pod-table.d.ts +6 -0
  57. package/dist/core/schema/pod-table.d.ts.map +1 -1
  58. package/dist/core/schema/pod-table.js +18 -9
  59. package/dist/core/schema/pod-table.js.map +1 -1
  60. package/dist/core/sparql/builder/expression-builder.d.ts +1 -0
  61. package/dist/core/sparql/builder/expression-builder.d.ts.map +1 -1
  62. package/dist/core/sparql/builder/expression-builder.js +50 -7
  63. package/dist/core/sparql/builder/expression-builder.js.map +1 -1
  64. package/dist/core/subject/resolver.d.ts +19 -0
  65. package/dist/core/subject/resolver.d.ts.map +1 -1
  66. package/dist/core/subject/resolver.js +77 -21
  67. package/dist/core/subject/resolver.js.map +1 -1
  68. package/dist/core/subject/types.d.ts +8 -1
  69. package/dist/core/subject/types.d.ts.map +1 -1
  70. package/dist/core/triple/builder.d.ts.map +1 -1
  71. package/dist/core/triple/builder.js +38 -1
  72. package/dist/core/triple/builder.js.map +1 -1
  73. package/dist/core/triple/handlers/inverse.d.ts +6 -2
  74. package/dist/core/triple/handlers/inverse.d.ts.map +1 -1
  75. package/dist/core/triple/handlers/inverse.js +37 -16
  76. package/dist/core/triple/handlers/inverse.js.map +1 -1
  77. package/dist/core/uri/resolver.d.ts +66 -2
  78. package/dist/core/uri/resolver.d.ts.map +1 -1
  79. package/dist/core/uri/resolver.js +212 -80
  80. package/dist/core/uri/resolver.js.map +1 -1
  81. package/dist/core/uri/types.d.ts +8 -1
  82. package/dist/core/uri/types.d.ts.map +1 -1
  83. package/dist/esm/core/ast-to-sparql.d.ts +1 -6
  84. package/dist/esm/core/ast-to-sparql.d.ts.map +1 -1
  85. package/dist/esm/core/ast-to-sparql.js +3 -22
  86. package/dist/esm/core/ast-to-sparql.js.map +1 -1
  87. package/dist/esm/core/execution/ldp-executor.d.ts +8 -7
  88. package/dist/esm/core/execution/ldp-executor.d.ts.map +1 -1
  89. package/dist/esm/core/execution/ldp-executor.js +165 -136
  90. package/dist/esm/core/execution/ldp-executor.js.map +1 -1
  91. package/dist/esm/core/execution/ldp-strategy.js +1 -1
  92. package/dist/esm/core/execution/ldp-strategy.js.map +1 -1
  93. package/dist/esm/core/execution/pod-executor.d.ts.map +1 -1
  94. package/dist/esm/core/execution/pod-executor.js +9 -0
  95. package/dist/esm/core/execution/pod-executor.js.map +1 -1
  96. package/dist/esm/core/execution/sparql-strategy.d.ts +7 -26
  97. package/dist/esm/core/execution/sparql-strategy.d.ts.map +1 -1
  98. package/dist/esm/core/execution/sparql-strategy.js +65 -111
  99. package/dist/esm/core/execution/sparql-strategy.js.map +1 -1
  100. package/dist/esm/core/execution/types.d.ts +8 -8
  101. package/dist/esm/core/execution/types.d.ts.map +1 -1
  102. package/dist/esm/core/federated/executor.d.ts +3 -0
  103. package/dist/esm/core/federated/executor.d.ts.map +1 -1
  104. package/dist/esm/core/federated/executor.js +13 -8
  105. package/dist/esm/core/federated/executor.js.map +1 -1
  106. package/dist/esm/core/pod-database.d.ts +0 -4
  107. package/dist/esm/core/pod-database.d.ts.map +1 -1
  108. package/dist/esm/core/pod-database.js +10 -32
  109. package/dist/esm/core/pod-database.js.map +1 -1
  110. package/dist/esm/core/pod-dialect.d.ts +0 -24
  111. package/dist/esm/core/pod-dialect.d.ts.map +1 -1
  112. package/dist/esm/core/pod-dialect.js +0 -182
  113. package/dist/esm/core/pod-dialect.js.map +1 -1
  114. package/dist/esm/core/pod-session.d.ts +6 -2
  115. package/dist/esm/core/pod-session.d.ts.map +1 -1
  116. package/dist/esm/core/pod-session.js +8 -2
  117. package/dist/esm/core/pod-session.js.map +1 -1
  118. package/dist/esm/core/query-builders/select-query-builder.d.ts +7 -0
  119. package/dist/esm/core/query-builders/select-query-builder.d.ts.map +1 -1
  120. package/dist/esm/core/query-builders/select-query-builder.js +56 -14
  121. package/dist/esm/core/query-builders/select-query-builder.js.map +1 -1
  122. package/dist/esm/core/query-conditions.d.ts.map +1 -1
  123. package/dist/esm/core/query-conditions.js.map +1 -1
  124. package/dist/esm/core/resource-resolver/base-resolver.d.ts +74 -3
  125. package/dist/esm/core/resource-resolver/base-resolver.d.ts.map +1 -1
  126. package/dist/esm/core/resource-resolver/base-resolver.js +221 -0
  127. package/dist/esm/core/resource-resolver/base-resolver.js.map +1 -1
  128. package/dist/esm/core/resource-resolver/document-resolver.d.ts +19 -4
  129. package/dist/esm/core/resource-resolver/document-resolver.d.ts.map +1 -1
  130. package/dist/esm/core/resource-resolver/document-resolver.js +72 -34
  131. package/dist/esm/core/resource-resolver/document-resolver.js.map +1 -1
  132. package/dist/esm/core/resource-resolver/fragment-resolver.d.ts +17 -3
  133. package/dist/esm/core/resource-resolver/fragment-resolver.d.ts.map +1 -1
  134. package/dist/esm/core/resource-resolver/fragment-resolver.js +28 -16
  135. package/dist/esm/core/resource-resolver/fragment-resolver.js.map +1 -1
  136. package/dist/esm/core/resource-resolver/types.d.ts +1 -1
  137. package/dist/esm/core/resource-resolver/types.d.ts.map +1 -1
  138. package/dist/esm/core/schema/pod-table.d.ts +6 -0
  139. package/dist/esm/core/schema/pod-table.d.ts.map +1 -1
  140. package/dist/esm/core/schema/pod-table.js +18 -9
  141. package/dist/esm/core/schema/pod-table.js.map +1 -1
  142. package/dist/esm/core/sparql/builder/expression-builder.d.ts +1 -0
  143. package/dist/esm/core/sparql/builder/expression-builder.d.ts.map +1 -1
  144. package/dist/esm/core/sparql/builder/expression-builder.js +50 -7
  145. package/dist/esm/core/sparql/builder/expression-builder.js.map +1 -1
  146. package/dist/esm/core/subject/resolver.d.ts +19 -0
  147. package/dist/esm/core/subject/resolver.d.ts.map +1 -1
  148. package/dist/esm/core/subject/resolver.js +77 -21
  149. package/dist/esm/core/subject/resolver.js.map +1 -1
  150. package/dist/esm/core/subject/types.d.ts +8 -1
  151. package/dist/esm/core/subject/types.d.ts.map +1 -1
  152. package/dist/esm/core/triple/builder.d.ts.map +1 -1
  153. package/dist/esm/core/triple/builder.js +38 -1
  154. package/dist/esm/core/triple/builder.js.map +1 -1
  155. package/dist/esm/core/triple/handlers/inverse.d.ts +6 -2
  156. package/dist/esm/core/triple/handlers/inverse.d.ts.map +1 -1
  157. package/dist/esm/core/triple/handlers/inverse.js +37 -16
  158. package/dist/esm/core/triple/handlers/inverse.js.map +1 -1
  159. package/dist/esm/core/uri/resolver.d.ts +66 -2
  160. package/dist/esm/core/uri/resolver.d.ts.map +1 -1
  161. package/dist/esm/core/uri/resolver.js +212 -80
  162. package/dist/esm/core/uri/resolver.js.map +1 -1
  163. package/dist/esm/core/uri/types.d.ts +8 -1
  164. package/dist/esm/core/uri/types.d.ts.map +1 -1
  165. package/dist/esm/index.d.ts +1 -0
  166. package/dist/esm/index.d.ts.map +1 -1
  167. package/dist/esm/index.js.map +1 -1
  168. package/dist/index.d.ts +1 -0
  169. package/dist/index.d.ts.map +1 -1
  170. package/dist/index.js.map +1 -1
  171. package/package.json +5 -1
  172. package/CHANGELOG-DRAFT.md +0 -444
@@ -143,55 +143,6 @@ class PodDialect {
143
143
  .map((row) => this.extractSubjectFromRow(row))
144
144
  .filter((value) => Boolean(value));
145
145
  }
146
- /**
147
- * @deprecated 此方法仅被废弃的 executeComplexUpdate 使用
148
- * 保留仅用于参考
149
- */
150
- buildUpdateQueryForSubject(subject, data, table, columns) {
151
- const prefixLines = this.buildPrefixLines();
152
- const deleteStatements = [];
153
- const insertTriples = [];
154
- columns.forEach((columnName, index) => {
155
- const column = table.columns[columnName];
156
- if (!column) {
157
- return;
158
- }
159
- const predicate = this.sparqlConverter.getPredicateForColumnPublic(column, table);
160
- deleteStatements.push(`DELETE WHERE {\n <${subject}> <${predicate}> ?value${index} .\n}`);
161
- const newValue = data[columnName];
162
- if (newValue === null || newValue === undefined) {
163
- return;
164
- }
165
- const literal = this.sparqlConverter.formatLiteralValue(newValue, column);
166
- if (literal === 'NULL') {
167
- return;
168
- }
169
- insertTriples.push(` <${subject}> <${predicate}> ${literal} .`);
170
- });
171
- if (deleteStatements.length === 0 && insertTriples.length === 0) {
172
- return null;
173
- }
174
- const parts = [];
175
- if (deleteStatements.length > 0) {
176
- parts.push(deleteStatements.join(';\n'));
177
- }
178
- if (insertTriples.length > 0) {
179
- parts.push(`INSERT DATA {\n${insertTriples.join('\n')}\n}`);
180
- }
181
- return `${prefixLines}\n${parts.join(';\n')}`;
182
- }
183
- buildPrefixLines() {
184
- const prefixes = this.sparqlConverter.getPrefixes();
185
- return Object.entries(prefixes)
186
- .map(([prefix, uri]) => `PREFIX ${prefix}: <${uri}>`)
187
- .join('\n');
188
- }
189
- isSubjectResolutionError(error) {
190
- if (!(error instanceof Error)) {
191
- return false;
192
- }
193
- return error.message.includes('requires an id or @id condition');
194
- }
195
146
  async connect() {
196
147
  await this.runtime.connect();
197
148
  }
@@ -311,51 +262,6 @@ class PodDialect {
311
262
  const resourceUrl = `${baseUrl}${resourceRelative.replace(/^\/+/, '')}`;
312
263
  return { containerUrl, resourceUrl };
313
264
  }
314
- collectSelectSources(plan) {
315
- const tables = new Set();
316
- if (plan.baseTable) {
317
- tables.add(plan.baseTable);
318
- }
319
- if (Array.isArray(plan.joins)) {
320
- for (const join of plan.joins) {
321
- if (join?.table) {
322
- tables.add(join.table);
323
- }
324
- }
325
- }
326
- if (plan.aliasToTable instanceof Map) {
327
- for (const table of plan.aliasToTable.values()) {
328
- if (table) {
329
- tables.add(table);
330
- }
331
- }
332
- }
333
- const seen = new Set();
334
- const sources = [];
335
- for (const table of tables) {
336
- const descriptor = this.resolveTableResource(table);
337
- if (descriptor.mode === 'ldp') {
338
- // Document mode: query the container, not a single file
339
- const resourceMode = this.uriResolver.getResourceMode(table);
340
- const sourceUrl = resourceMode === 'document'
341
- ? descriptor.containerUrl
342
- : descriptor.resourceUrl;
343
- const key = `ldp:${sourceUrl}`;
344
- if (!seen.has(key)) {
345
- seen.add(key);
346
- sources.push(sourceUrl);
347
- }
348
- }
349
- else {
350
- const key = `sparql:${descriptor.endpoint}`;
351
- if (!seen.has(key)) {
352
- seen.add(key);
353
- sources.push({ type: 'sparql', value: descriptor.endpoint });
354
- }
355
- }
356
- }
357
- return sources;
358
- }
359
265
  async resourceExists(resourceUrl) {
360
266
  const normalizedUrl = this.normalizeResourceUrl(resourceUrl);
361
267
  if (this.preparedResources.has(normalizedUrl)) {
@@ -735,17 +641,6 @@ class PodDialect {
735
641
  tableToAlias: new Map([[table, alias]])
736
642
  };
737
643
  }
738
- buildSubjectUriFromFragment(fragment, table) {
739
- // This method is used by rewriteWhereConditionWithSubjects and other internal logic
740
- // Ideally we should use SubjectResolver, but for fragment building relative to base, we need this helper.
741
- // Or delegate to SubjectResolver if it exposes parsing.
742
- // SubjectResolver.parse handles URIs.
743
- // For now, keep this simple helper as it was used by extractSubjectFromRow logic context.
744
- // Wait, extractSubjectFromRow doesn't use this.
745
- // But `rewriteWhereConditionWithSubjects` calls `findSubjectsForCondition`.
746
- // `findSubjectsForCondition` calls `buildSubjectLookupPlan` which is also missing?
747
- return this.sparqlConverter.generateSubjectUri({ id: fragment }, table);
748
- }
749
644
  extractSubjectFromRow(row) {
750
645
  const subject = row.subject ?? row['?subject'];
751
646
  if (!subject) {
@@ -759,27 +654,6 @@ class PodDialect {
759
654
  }
760
655
  return null;
761
656
  }
762
- operationHasInlineObjects(table, data) {
763
- return Object.entries(data).some(([key, value]) => {
764
- if (value === undefined)
765
- return false;
766
- const col = table.columns?.[key];
767
- if (!col)
768
- return false;
769
- return this.isInlineObjectColumn(col);
770
- });
771
- }
772
- isInlineObjectColumn(column) {
773
- if (!column)
774
- return false;
775
- if (column.dataType === 'object')
776
- return true;
777
- if (column.dataType === 'array') {
778
- const elem = column.elementType ?? column.options?.baseType;
779
- return elem === 'object';
780
- }
781
- return false;
782
- }
783
657
  conditionTargetsIdentifier(condition) {
784
658
  if (!condition) {
785
659
  return false;
@@ -1117,62 +991,6 @@ class PodDialect {
1117
991
  getTypeIndexManager() {
1118
992
  return this.typeIndexManager;
1119
993
  }
1120
- /**
1121
- * @deprecated 此方法已废弃,不再使用
1122
- *
1123
- * 原因:
1124
- * 1. 每次 GET 整个容器内容效率极低(对于大容器可能有几 MB)
1125
- * 2. 使用字符串匹配检查资源存在性不够可靠
1126
- * 3. SPARQL INSERT 本身不会覆盖已存在的三元组,重复插入只会添加新的三元组
1127
- * 4. 如果需要防止重复插入,应该由业务层处理(使用 INSERT WHERE NOT EXISTS)
1128
- *
1129
- * 改进的资源存在性检查 - 使用直接 HTTP 而不是 Comunica ASK
1130
- * 这解决了 409 冲突问题:当 ASK 查询失败时,不应该继续 INSERT
1131
- */
1132
- async checkResourceExistence(values, table, containerUrl) {
1133
- console.warn('[DEPRECATED] checkResourceExistence is deprecated and should not be used');
1134
- try {
1135
- let targetContainer = containerUrl.startsWith('http')
1136
- ? containerUrl
1137
- : this.resolveAbsoluteUrl(containerUrl);
1138
- if (!targetContainer.endsWith('/')) {
1139
- targetContainer = `${targetContainer}/`;
1140
- }
1141
- console.log(`🔍 检查资源存在性: ${targetContainer}`);
1142
- // 直接读取容器内容,检查是否包含我们要插入的资源
1143
- const response = await this.runtime.getFetch()(targetContainer, {
1144
- method: 'GET',
1145
- headers: {
1146
- 'Accept': 'text/turtle'
1147
- }
1148
- });
1149
- if (!response.ok) {
1150
- if (response.status === 404) {
1151
- // 容器不存在,资源肯定不存在
1152
- console.log(`✅ 容器不存在,可以执行 INSERT`);
1153
- return true; // 可以继续 INSERT
1154
- }
1155
- throw new Error(`HTTP ${response.status}: ${response.statusText}`);
1156
- }
1157
- const turtleData = await response.text();
1158
- console.log(`📖 容器内容长度: ${turtleData.length} 字符`);
1159
- // 检查每个要插入的资源是否已存在
1160
- for (const record of values) {
1161
- const subjectUri = this.sparqlConverter.generateSubjectUri(record, table);
1162
- // 检查 Turtle 数据中是否包含这个资源 URI
1163
- if (turtleData.includes(subjectUri)) {
1164
- console.log(`❌ 发现已存在的资源: ${subjectUri}`);
1165
- return false; // 资源已存在,不能 INSERT
1166
- }
1167
- }
1168
- console.log(`✅ 资源存在性检查通过,可以执行 INSERT`);
1169
- return true; // 所有资源都不存在,可以 INSERT
1170
- }
1171
- catch (error) {
1172
- console.error('❌ 资源存在性检查失败:', error);
1173
- throw error;
1174
- }
1175
- }
1176
994
  // 确保容器存在(递归创建父目录)
1177
995
  async ensureContainerExists(containerUrl) {
1178
996
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"pod-dialect.js","sourceRoot":"","sources":["../../src/core/pod-dialect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pod-dialect.js","sourceRoot":"","sources":["../../src/core/pod-dialect.ts"],"names":[],"mappings":"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"}
@@ -12,12 +12,16 @@ export type { PodOperation } from './pod-dialect';
12
12
  export { SelectQueryBuilder, InsertQueryBuilder, UpdateQueryBuilder, DeleteQueryBuilder };
13
13
  export declare class PodAsyncSession {
14
14
  private dialect;
15
- private schema?;
15
+ private _schema?;
16
16
  private options;
17
17
  static readonly [entityKind] = "PodAsyncSession";
18
- constructor(dialect: PodDialect, schema?: any | undefined, options?: {
18
+ constructor(dialect: PodDialect, _schema?: any | undefined, options?: {
19
19
  logger?: boolean;
20
20
  });
21
+ /**
22
+ * 获取会话关联的 schema
23
+ */
24
+ getSchema(): any;
21
25
  /**
22
26
  * 检查连接状态
23
27
  */
@@ -1 +1 @@
1
- {"version":3,"file":"pod-session.d.ts","sourceRoot":"","sources":["../../src/core/pod-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAkF,MAAM,UAAU,CAAC;AAMpH,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGhH,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC;AAClF,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,CAAC;AAE1F,qBAAa,eAAe;IAIxB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,MAAM,CAAC;IACf,OAAO,CAAC,OAAO;IALjB,MAAM,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,qBAAqB;gBAGvC,OAAO,EAAE,UAAU,EACnB,MAAM,CAAC,EAAE,GAAG,YAAA,EACZ,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAO;IAG5C;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,UAAU,IAAI,UAAU;IAIxB;;OAEG;IACH,UAAU,IAAI;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;YAIpB,iBAAiB;IAkBzB,OAAO,CAAC,SAAS,EAAE,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAmChD,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAS3D,MAAM,CAAC,MAAM,SAAS,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,kBAAkB,CAAC,MAAM,CAAC;IAKzF,MAAM,CAAC,MAAM,SAAS,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC;IAK/E,MAAM,CAAC,MAAM,SAAS,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC;IAK/E,MAAM,CAAC,MAAM,SAAS,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC;IAKzE,WAAW,CAAC,CAAC,EACjB,WAAW,EAAE,CAAC,EAAE,EAAE,eAAe,KAAK,OAAO,CAAC,CAAC,CAAC,GAC/C,OAAO,CAAC,CAAC,CAAC;CAId"}
1
+ {"version":3,"file":"pod-session.d.ts","sourceRoot":"","sources":["../../src/core/pod-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGhH,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC;AAClF,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,CAAC;AAE1F,qBAAa,eAAe;IAIxB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,OAAO,CAAC;IAChB,OAAO,CAAC,OAAO;IALjB,MAAM,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,qBAAqB;gBAGvC,OAAO,EAAE,UAAU,EACnB,OAAO,CAAC,EAAE,GAAG,YAAA,EACb,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAO;IAG5C;;OAEG;IACH,SAAS,IAAI,GAAG;IAIhB;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,UAAU,IAAI,UAAU;IAIxB;;OAEG;IACH,UAAU,IAAI;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;YAIpB,iBAAiB;IAkBzB,OAAO,CAAC,SAAS,EAAE,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAmChD,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAS3D,MAAM,CAAC,MAAM,SAAS,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,kBAAkB,CAAC,MAAM,CAAC;IAKzF,MAAM,CAAC,MAAM,SAAS,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC;IAK/E,MAAM,CAAC,MAAM,SAAS,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC;IAK/E,MAAM,CAAC,MAAM,SAAS,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC;IAKzE,WAAW,CAAC,CAAC,EACjB,WAAW,EAAE,CAAC,EAAE,EAAE,eAAe,KAAK,OAAO,CAAC,CAAC,CAAC,GAC/C,OAAO,CAAC,CAAC,CAAC;CAId"}
@@ -13,11 +13,17 @@ Object.defineProperty(exports, "UpdateQueryBuilder", { enumerable: true, get: fu
13
13
  const delete_query_builder_1 = require("./query-builders/delete-query-builder");
14
14
  Object.defineProperty(exports, "DeleteQueryBuilder", { enumerable: true, get: function () { return delete_query_builder_1.DeleteQueryBuilder; } });
15
15
  class PodAsyncSession {
16
- constructor(dialect, schema, options = {}) {
16
+ constructor(dialect, _schema, options = {}) {
17
17
  this.dialect = dialect;
18
- this.schema = schema;
18
+ this._schema = _schema;
19
19
  this.options = options;
20
20
  }
21
+ /**
22
+ * 获取会话关联的 schema
23
+ */
24
+ getSchema() {
25
+ return this._schema;
26
+ }
21
27
  /**
22
28
  * 检查连接状态
23
29
  */
@@ -1 +1 @@
1
- {"version":3,"file":"pod-session.js","sourceRoot":"","sources":["../../src/core/pod-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pod-session.js","sourceRoot":"","sources":["../../src/core/pod-session.ts"],"names":[],"mappings":";;;;AAAA,6CAAyC;AAKzC,0CAA0C;AAC1C,gFAA2E;AASlE,mGATA,yCAAkB,OASA;AAR3B,gFAA2E;AAQ9C,mGARpB,yCAAkB,OAQoB;AAP/C,gFAA2E;AAO1B,mGAPxC,yCAAkB,OAOwC;AANnE,gFAA2E;AAMN,mGAN5D,yCAAkB,OAM4D;AAEvF,MAAa,eAAe;IAG1B,YACU,OAAmB,EACnB,OAAa,EACb,UAAgC,EAAE;QAFlC,YAAO,GAAP,OAAO,CAAY;QACnB,YAAO,GAAP,OAAO,CAAM;QACb,YAAO,GAAP,OAAO,CAA2B;IACzC,CAAC;IAEJ;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,KAAoB;QAClD,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;YACvD,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,CAAC;gBAC3B,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBACrC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACjC,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,SAAS;IACT,KAAK,CAAC,OAAO,CAAC,SAAuB;QACnC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,SAAS,CAAC,CAAC;QACjD,CAAC;QAED,SAAS;QACT,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACrD,CAAC;QAED,QAAQ;QACR,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACtD,CAAC;QAED,aAAa;QACb,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAChE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,KAAK,CAAC,+BAA+B,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAE9C,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;gBACnC,IAAI,IAAI,EAAE,KAAK,EAAE,CAAC;oBAChB,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3C,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IAED,sBAAsB;IACtB,KAAK,CAAC,UAAU,CAAC,GAAQ,EAAE,KAAe;QACxC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;QACzC,CAAC;QACD,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACpC,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;IAED,eAAe;IACf,MAAM,CAA+B,MAAuB;QAC1D,OAAO,IAAI,yCAAkB,CAAS,IAAI,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;IAED,eAAe;IACf,MAAM,CAA+B,KAAa;QAChD,OAAO,IAAI,yCAAkB,CAAS,IAAI,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,eAAe;IACf,MAAM,CAA+B,KAAa;QAChD,OAAO,IAAI,yCAAkB,CAAS,IAAI,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,eAAe;IACf,MAAM,CAA+B,KAAa;QAChD,OAAO,IAAI,yCAAkB,CAAS,IAAI,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,OAAO;IACP,KAAK,CAAC,WAAW,CACf,WAAgD;QAEhD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;QACvC,OAAO,MAAM,CAAC;IAChB,CAAC;;AA5HH,0CA6HC;KA5HkB,wBAAU;AAAX,mBAAY,GAAG,iBAAiB,CAAC"}
@@ -80,6 +80,13 @@ export declare class SelectQueryBuilder<TTable extends PodTable<any> = PodTable<
80
80
  private attachSubjectMetadata;
81
81
  private normalizeBaseRows;
82
82
  private hydrateInlineColumns;
83
+ /**
84
+ * 处理引用字段:将 URI 转换回简单 ID
85
+ *
86
+ * 对于配置了 .reference() 的列,将存储的完整 URI 转换回用户友好的 ID
87
+ * 例如:http://pod/.data/chat/chat-123/index.ttl#this -> chat-123
88
+ */
89
+ private resolveReferenceIds;
83
90
  private normalizeInlineObjectValue;
84
91
  private normalizeInlineIri;
85
92
  private mergeRowsBySubject;
@@ -1 +1 @@
1
- {"version":3,"file":"select-query-builder.d.ts","sourceRoot":"","sources":["../../../src/core/query-builders/select-query-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"select-query-builder.d.ts","sourceRoot":"","sources":["../../../src/core/query-builders/select-query-builder.ts"],"names":[],"mappings":"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"}
@@ -382,6 +382,8 @@ class SelectQueryBuilder {
382
382
  }
383
383
  if (this.selectedTable) {
384
384
  finalRows = await this.hydrateInlineColumns(finalRows, this.selectedTable);
385
+ // 处理引用字段:将 URI 转换回 ID
386
+ finalRows = this.resolveReferenceIds(finalRows, this.selectedTable);
385
387
  }
386
388
  if (this.selectedFields) {
387
389
  finalRows = finalRows.map((row) => this.projectSelectedRow(row));
@@ -821,6 +823,51 @@ class SelectQueryBuilder {
821
823
  });
822
824
  return rows;
823
825
  }
826
+ /**
827
+ * 处理引用字段:将 URI 转换回简单 ID
828
+ *
829
+ * 对于配置了 .reference() 的列,将存储的完整 URI 转换回用户友好的 ID
830
+ * 例如:http://pod/.data/chat/chat-123/index.ttl#this -> chat-123
831
+ */
832
+ resolveReferenceIds(rows, table) {
833
+ if (!rows.length)
834
+ return rows;
835
+ // 找出所有引用列
836
+ const columns = Object.values(table.columns ?? {});
837
+ const referenceColumns = columns.filter(col => col.isReference?.());
838
+ if (referenceColumns.length === 0)
839
+ return rows;
840
+ // 获取 URI 解析器和上下文
841
+ const dialect = this.session.getDialect?.();
842
+ const resolver = dialect?.getUriResolver?.() ?? new uri_1.UriResolverImpl(dialect?.getPodUrl?.() ?? '');
843
+ // 构建 URI 上下文
844
+ const uriContext = {
845
+ baseUri: dialect?.getPodUrl?.(),
846
+ tableRegistry: dialect?.getTableRegistry?.(),
847
+ tableNameRegistry: dialect?.getTableNameRegistry?.(),
848
+ };
849
+ return rows.map(row => {
850
+ const result = { ...row };
851
+ for (const col of referenceColumns) {
852
+ const value = row[col.name];
853
+ if (!value)
854
+ continue;
855
+ // 处理数组类型
856
+ if (Array.isArray(value)) {
857
+ result[col.name] = value.map(v => {
858
+ if (typeof v === 'string') {
859
+ return resolver.extractReferenceId(v, col, uriContext);
860
+ }
861
+ return v;
862
+ });
863
+ }
864
+ else if (typeof value === 'string') {
865
+ result[col.name] = resolver.extractReferenceId(value, col, uriContext);
866
+ }
867
+ }
868
+ return result;
869
+ });
870
+ }
824
871
  normalizeInlineObjectValue(value) {
825
872
  if (value === null || value === undefined)
826
873
  return undefined;
@@ -1210,30 +1257,25 @@ class SelectQueryBuilder {
1210
1257
  // Use UriResolver for proper document/fragment mode handling
1211
1258
  if (table) {
1212
1259
  const dialect = this.session.getDialect?.();
1213
- const resolver = dialect?.getUriResolver?.() ?? new uri_1.UriResolverImpl();
1260
+ const resolver = dialect?.getUriResolver?.() ?? new uri_1.UriResolverImpl(dialect?.getPodUrl?.() ?? '');
1214
1261
  const parsed = resolver.parseSubject(subject, table);
1215
1262
  if (parsed && parsed.id) {
1216
1263
  return parsed.id;
1217
1264
  }
1218
1265
  }
1219
- // Fallback when no table: try fragment first, then filename
1266
+ // Fallback when no table: 返回包含 # fragment 部分
1220
1267
  const hashIndex = subject.indexOf('#');
1221
1268
  if (hashIndex !== -1) {
1222
- const fragment = subject.slice(hashIndex + 1);
1223
- if (fragment.length > 0) {
1224
- return fragment;
1225
- }
1269
+ // 返回整个 fragment(包含 #),与新的 id 规则一致
1270
+ const fallbackId = subject.slice(hashIndex);
1271
+ return fallbackId;
1226
1272
  }
1227
- // Try filename extraction
1273
+ // Try filename extraction (包含扩展名和可能的 fragment)
1228
1274
  const lastSlash = subject.lastIndexOf('/');
1229
1275
  if (lastSlash !== -1) {
1230
- let filename = subject.slice(lastSlash + 1);
1231
- const extIndex = filename.lastIndexOf('.');
1232
- if (extIndex !== -1) {
1233
- filename = filename.slice(0, extIndex);
1234
- }
1235
- if (filename.length > 0) {
1236
- return filename;
1276
+ const remainder = subject.slice(lastSlash + 1);
1277
+ if (remainder.length > 0) {
1278
+ return remainder;
1237
1279
  }
1238
1280
  }
1239
1281
  return undefined;