@undefineds.co/drizzle-solid 0.2.10 → 0.2.13

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 (150) hide show
  1. package/README.md +255 -439
  2. package/dist/core/expressions.d.ts +4 -0
  3. package/dist/core/expressions.d.ts.map +1 -1
  4. package/dist/core/expressions.js +8 -1
  5. package/dist/core/expressions.js.map +1 -1
  6. package/dist/core/order-by.d.ts +9 -0
  7. package/dist/core/order-by.d.ts.map +1 -0
  8. package/dist/core/order-by.js +20 -0
  9. package/dist/core/order-by.js.map +1 -0
  10. package/dist/core/pod-database.d.ts +6 -0
  11. package/dist/core/pod-database.d.ts.map +1 -1
  12. package/dist/core/pod-database.js +121 -31
  13. package/dist/core/pod-database.js.map +1 -1
  14. package/dist/core/pod-dialect.d.ts +10 -1
  15. package/dist/core/pod-dialect.d.ts.map +1 -1
  16. package/dist/core/pod-dialect.js +81 -2
  17. package/dist/core/pod-dialect.js.map +1 -1
  18. package/dist/core/query-builders/delete-query-builder.d.ts +7 -12
  19. package/dist/core/query-builders/delete-query-builder.d.ts.map +1 -1
  20. package/dist/core/query-builders/delete-query-builder.js +47 -20
  21. package/dist/core/query-builders/delete-query-builder.js.map +1 -1
  22. package/dist/core/query-builders/helpers.d.ts +7 -0
  23. package/dist/core/query-builders/helpers.d.ts.map +1 -1
  24. package/dist/core/query-builders/helpers.js +169 -0
  25. package/dist/core/query-builders/helpers.js.map +1 -1
  26. package/dist/core/query-builders/insert-query-builder.d.ts +10 -3
  27. package/dist/core/query-builders/insert-query-builder.d.ts.map +1 -1
  28. package/dist/core/query-builders/insert-query-builder.js +50 -6
  29. package/dist/core/query-builders/insert-query-builder.js.map +1 -1
  30. package/dist/core/query-builders/select-query-builder.d.ts +29 -1
  31. package/dist/core/query-builders/select-query-builder.d.ts.map +1 -1
  32. package/dist/core/query-builders/select-query-builder.js +405 -85
  33. package/dist/core/query-builders/select-query-builder.js.map +1 -1
  34. package/dist/core/query-builders/types.d.ts +5 -3
  35. package/dist/core/query-builders/types.d.ts.map +1 -1
  36. package/dist/core/query-builders/update-query-builder.d.ts +8 -12
  37. package/dist/core/query-builders/update-query-builder.d.ts.map +1 -1
  38. package/dist/core/query-builders/update-query-builder.js +63 -21
  39. package/dist/core/query-builders/update-query-builder.js.map +1 -1
  40. package/dist/core/query-conditions.d.ts +17 -16
  41. package/dist/core/query-conditions.d.ts.map +1 -1
  42. package/dist/core/query-conditions.js.map +1 -1
  43. package/dist/core/resource-resolver/base-resolver.d.ts +8 -4
  44. package/dist/core/resource-resolver/base-resolver.d.ts.map +1 -1
  45. package/dist/core/resource-resolver/base-resolver.js +39 -36
  46. package/dist/core/resource-resolver/base-resolver.js.map +1 -1
  47. package/dist/core/resource-resolver/document-resolver.d.ts.map +1 -1
  48. package/dist/core/resource-resolver/document-resolver.js +75 -69
  49. package/dist/core/resource-resolver/document-resolver.js.map +1 -1
  50. package/dist/core/schema/pod-table.d.ts +1 -0
  51. package/dist/core/schema/pod-table.d.ts.map +1 -1
  52. package/dist/core/schema/pod-table.js +67 -0
  53. package/dist/core/schema/pod-table.js.map +1 -1
  54. package/dist/core/select-plan.d.ts +6 -3
  55. package/dist/core/select-plan.d.ts.map +1 -1
  56. package/dist/core/sparql/builder/expression-builder.d.ts +10 -0
  57. package/dist/core/sparql/builder/expression-builder.d.ts.map +1 -1
  58. package/dist/core/sparql/builder/expression-builder.js +27 -4
  59. package/dist/core/sparql/builder/expression-builder.js.map +1 -1
  60. package/dist/core/sparql/builder/select-builder.d.ts +9 -0
  61. package/dist/core/sparql/builder/select-builder.d.ts.map +1 -1
  62. package/dist/core/sparql/builder/select-builder.js +147 -2
  63. package/dist/core/sparql/builder/select-builder.js.map +1 -1
  64. package/dist/core/utils/debug-logger.d.ts +19 -0
  65. package/dist/core/utils/debug-logger.d.ts.map +1 -0
  66. package/dist/core/utils/debug-logger.js +59 -0
  67. package/dist/core/utils/debug-logger.js.map +1 -0
  68. package/dist/driver.d.ts +4 -0
  69. package/dist/driver.d.ts.map +1 -1
  70. package/dist/driver.js +1 -0
  71. package/dist/driver.js.map +1 -1
  72. package/dist/esm/core/expressions.d.ts +4 -0
  73. package/dist/esm/core/expressions.d.ts.map +1 -1
  74. package/dist/esm/core/expressions.js +6 -0
  75. package/dist/esm/core/expressions.js.map +1 -1
  76. package/dist/esm/core/order-by.d.ts +9 -0
  77. package/dist/esm/core/order-by.d.ts.map +1 -0
  78. package/dist/esm/core/order-by.js +15 -0
  79. package/dist/esm/core/order-by.js.map +1 -0
  80. package/dist/esm/core/pod-database.d.ts +6 -0
  81. package/dist/esm/core/pod-database.d.ts.map +1 -1
  82. package/dist/esm/core/pod-database.js +122 -32
  83. package/dist/esm/core/pod-database.js.map +1 -1
  84. package/dist/esm/core/pod-dialect.d.ts +10 -1
  85. package/dist/esm/core/pod-dialect.d.ts.map +1 -1
  86. package/dist/esm/core/pod-dialect.js +81 -2
  87. package/dist/esm/core/pod-dialect.js.map +1 -1
  88. package/dist/esm/core/query-builders/delete-query-builder.d.ts +7 -12
  89. package/dist/esm/core/query-builders/delete-query-builder.d.ts.map +1 -1
  90. package/dist/esm/core/query-builders/delete-query-builder.js +48 -21
  91. package/dist/esm/core/query-builders/delete-query-builder.js.map +1 -1
  92. package/dist/esm/core/query-builders/helpers.d.ts +7 -0
  93. package/dist/esm/core/query-builders/helpers.d.ts.map +1 -1
  94. package/dist/esm/core/query-builders/helpers.js +164 -0
  95. package/dist/esm/core/query-builders/helpers.js.map +1 -1
  96. package/dist/esm/core/query-builders/insert-query-builder.d.ts +10 -3
  97. package/dist/esm/core/query-builders/insert-query-builder.d.ts.map +1 -1
  98. package/dist/esm/core/query-builders/insert-query-builder.js +50 -6
  99. package/dist/esm/core/query-builders/insert-query-builder.js.map +1 -1
  100. package/dist/esm/core/query-builders/select-query-builder.d.ts +29 -1
  101. package/dist/esm/core/query-builders/select-query-builder.d.ts.map +1 -1
  102. package/dist/esm/core/query-builders/select-query-builder.js +407 -87
  103. package/dist/esm/core/query-builders/select-query-builder.js.map +1 -1
  104. package/dist/esm/core/query-builders/types.d.ts +5 -3
  105. package/dist/esm/core/query-builders/types.d.ts.map +1 -1
  106. package/dist/esm/core/query-builders/update-query-builder.d.ts +8 -12
  107. package/dist/esm/core/query-builders/update-query-builder.d.ts.map +1 -1
  108. package/dist/esm/core/query-builders/update-query-builder.js +64 -22
  109. package/dist/esm/core/query-builders/update-query-builder.js.map +1 -1
  110. package/dist/esm/core/query-conditions.d.ts +17 -16
  111. package/dist/esm/core/query-conditions.d.ts.map +1 -1
  112. package/dist/esm/core/query-conditions.js.map +1 -1
  113. package/dist/esm/core/resource-resolver/base-resolver.d.ts +8 -4
  114. package/dist/esm/core/resource-resolver/base-resolver.d.ts.map +1 -1
  115. package/dist/esm/core/resource-resolver/base-resolver.js +39 -36
  116. package/dist/esm/core/resource-resolver/base-resolver.js.map +1 -1
  117. package/dist/esm/core/resource-resolver/document-resolver.d.ts.map +1 -1
  118. package/dist/esm/core/resource-resolver/document-resolver.js +75 -69
  119. package/dist/esm/core/resource-resolver/document-resolver.js.map +1 -1
  120. package/dist/esm/core/schema/pod-table.d.ts +1 -0
  121. package/dist/esm/core/schema/pod-table.d.ts.map +1 -1
  122. package/dist/esm/core/schema/pod-table.js +66 -0
  123. package/dist/esm/core/schema/pod-table.js.map +1 -1
  124. package/dist/esm/core/select-plan.d.ts +6 -3
  125. package/dist/esm/core/select-plan.d.ts.map +1 -1
  126. package/dist/esm/core/sparql/builder/expression-builder.d.ts +10 -0
  127. package/dist/esm/core/sparql/builder/expression-builder.d.ts.map +1 -1
  128. package/dist/esm/core/sparql/builder/expression-builder.js +27 -4
  129. package/dist/esm/core/sparql/builder/expression-builder.js.map +1 -1
  130. package/dist/esm/core/sparql/builder/select-builder.d.ts +9 -0
  131. package/dist/esm/core/sparql/builder/select-builder.d.ts.map +1 -1
  132. package/dist/esm/core/sparql/builder/select-builder.js +148 -3
  133. package/dist/esm/core/sparql/builder/select-builder.js.map +1 -1
  134. package/dist/esm/core/utils/debug-logger.d.ts +19 -0
  135. package/dist/esm/core/utils/debug-logger.d.ts.map +1 -0
  136. package/dist/esm/core/utils/debug-logger.js +53 -0
  137. package/dist/esm/core/utils/debug-logger.js.map +1 -0
  138. package/dist/esm/driver.d.ts +4 -0
  139. package/dist/esm/driver.d.ts.map +1 -1
  140. package/dist/esm/driver.js +1 -0
  141. package/dist/esm/driver.js.map +1 -1
  142. package/dist/esm/index.d.ts +2 -1
  143. package/dist/esm/index.d.ts.map +1 -1
  144. package/dist/esm/index.js +3 -1
  145. package/dist/esm/index.js.map +1 -1
  146. package/dist/index.d.ts +2 -1
  147. package/dist/index.d.ts.map +1 -1
  148. package/dist/index.js +8 -2
  149. package/dist/index.js.map +1 -1
  150. package/package.json +17 -6
@@ -6,6 +6,7 @@ import { PodExecutor } from './execution/pod-executor';
6
6
  import { isSameOrigin, getFetchForOrigin } from './utils/origin-auth';
7
7
  import { PodRuntime } from './runtime/pod-runtime';
8
8
  import { PodServices } from './services/pod-services';
9
+ import { DebugLogger, setGlobalDebugLogger } from './utils/debug-logger';
9
10
  export class PodDialect {
10
11
  constructor(config) {
11
12
  this.registeredTables = new Set();
@@ -13,6 +14,14 @@ export class PodDialect {
13
14
  this.preparedResources = new Set();
14
15
  this.config = config;
15
16
  const session = config.session;
17
+ // Initialize debug logger
18
+ this.debugLogger = new DebugLogger(config.debug || false);
19
+ setGlobalDebugLogger(this.debugLogger);
20
+ this.debugLogger.log('Initializing PodDialect with config:', {
21
+ debug: config.debug,
22
+ disableInteropDiscovery: config.disableInteropDiscovery,
23
+ storageTTL: config.storageTTL,
24
+ });
16
25
  // 从session中获取webId
17
26
  const webId = session.info.webId;
18
27
  const clientId = session.info.clientId || session.info.client_id || process.env.SOLID_CLIENT_ID;
@@ -698,12 +707,30 @@ export class PodDialect {
698
707
  }
699
708
  return false;
700
709
  }
710
+ async rewriteIdentifierConditionWithSubjects(condition, table) {
711
+ const resolver = this.getResolver(table);
712
+ try {
713
+ const subjects = await resolver.resolveSubjectsForMutation(table, condition, async () => [], async () => []);
714
+ return this.buildIdInConditionFromSubjects(subjects);
715
+ }
716
+ catch (error) {
717
+ const template = table.getSubjectTemplate?.() ?? table.config?.subjectTemplate ?? '{id}';
718
+ const message = error instanceof Error ? error.message : String(error);
719
+ if (message.includes('missing required variable')) {
720
+ throw new Error(`Cannot resolve mutation target for table "${table.config.name ?? 'unknown'}" ` +
721
+ `with subjectTemplate "${template}" from where() alone. ` +
722
+ `Use an explicit @id via db.updateByIri()/db.deleteByIri() ` +
723
+ `(or the internal whereByIri()).`);
724
+ }
725
+ throw error;
726
+ }
727
+ }
701
728
  async ensureIdentifierCondition(condition, table, resourceUrl) {
702
729
  if (!condition) {
703
730
  return undefined;
704
731
  }
705
732
  if (this.conditionTargetsIdentifier(condition)) {
706
- return condition;
733
+ return await this.rewriteIdentifierConditionWithSubjects(condition, table);
707
734
  }
708
735
  return await this.rewriteWhereConditionWithSubjects(condition, table, resourceUrl);
709
736
  }
@@ -864,13 +891,65 @@ export class PodDialect {
864
891
  sources: this.sparqlExecutor.getSources()
865
892
  };
866
893
  }
894
+ stripSPARQLProlog(query) {
895
+ const withoutComments = query
896
+ .replace(/^\s*#.*$/gm, '')
897
+ .trim();
898
+ return withoutComments.replace(/^(?:\s*(?:PREFIX|BASE)\s+[^\n]+\n)*/i, '').trim();
899
+ }
900
+ looksLikeRawSQL(query) {
901
+ const normalized = this.stripSPARQLProlog(query);
902
+ if (/^SELECT\b[\s\S]*\bFROM\b\s+(?!<|[?$])/i.test(normalized) && !/\{/m.test(normalized)) {
903
+ return true;
904
+ }
905
+ if (/^INSERT\s+INTO\b/i.test(normalized)) {
906
+ return true;
907
+ }
908
+ if (/^UPDATE\s+[A-Za-z_`"][\w$`"]*\s+SET\b/i.test(normalized)) {
909
+ return true;
910
+ }
911
+ if (/^DELETE\s+FROM\b/i.test(normalized)) {
912
+ return true;
913
+ }
914
+ return false;
915
+ }
916
+ inferSPARQLQueryType(query) {
917
+ const withoutProlog = this.stripSPARQLProlog(query);
918
+ const firstKeyword = withoutProlog.match(/^(SELECT|ASK|INSERT|DELETE|UPDATE|WITH|LOAD|CLEAR|CREATE|DROP|COPY|MOVE|ADD|CONSTRUCT|DESCRIBE)\b/i)?.[1]?.toUpperCase();
919
+ switch (firstKeyword) {
920
+ case 'SELECT':
921
+ case 'ASK':
922
+ case 'INSERT':
923
+ case 'DELETE':
924
+ case 'UPDATE':
925
+ return firstKeyword;
926
+ case 'WITH':
927
+ case 'LOAD':
928
+ case 'CLEAR':
929
+ case 'CREATE':
930
+ case 'DROP':
931
+ case 'COPY':
932
+ case 'MOVE':
933
+ case 'ADD':
934
+ return 'UPDATE';
935
+ default:
936
+ return undefined;
937
+ }
938
+ }
867
939
  // 直接执行 SPARQL 查询(高级用法)
868
940
  async executeSPARQL(query) {
869
941
  if (!this.runtime.isConnected()) {
870
942
  throw new Error('Not connected to Pod');
871
943
  }
944
+ if (this.looksLikeRawSQL(query)) {
945
+ throw new Error('executeSPARQL only accepts SPARQL text; raw SQL is not supported in Solid dialect');
946
+ }
947
+ const type = this.inferSPARQLQueryType(query);
948
+ if (!type) {
949
+ throw new Error('Unsupported SPARQL query type. Supported types: SELECT, ASK, INSERT, DELETE, UPDATE');
950
+ }
872
951
  const sparqlQuery = {
873
- type: 'SELECT',
952
+ type,
874
953
  query,
875
954
  prefixes: {}
876
955
  };
@@ -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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"}
@@ -2,7 +2,7 @@ import { entityKind, SQL } from 'drizzle-orm';
2
2
  import { PodTable } from '../schema';
3
3
  import { PodAsyncSession } from '../pod-session';
4
4
  import { QueryCondition } from '../query-conditions';
5
- import { DeleteQueryPlan } from './types';
5
+ import { DeleteQueryPlan, type SelectFieldMap } from './types';
6
6
  export declare class DeleteQueryBuilder<TTable extends PodTable<any> = PodTable<any>> {
7
7
  session: PodAsyncSession;
8
8
  table: TTable;
@@ -10,26 +10,21 @@ export declare class DeleteQueryBuilder<TTable extends PodTable<any> = PodTable<
10
10
  whereConditions?: Record<string, any>;
11
11
  sql?: SQL;
12
12
  private conditionTree?;
13
+ private returningFields?;
13
14
  constructor(session: PodAsyncSession, table: TTable);
14
15
  where(conditions: Record<string, any> | SQL | QueryCondition): this;
15
- /**
16
- * Internal method that allows @id in conditions.
17
- * Used by *ByIri methods internally.
18
- * @internal
19
- */
16
+ returning(fields?: SelectFieldMap): this;
20
17
  whereByIri(iri: string): this;
21
18
  private isQueryCondition;
22
19
  private convertQueryConditionToSimple;
23
20
  private normalizeWhereConditionsForDelete;
24
21
  toIR: () => DeleteQueryPlan<TTable>;
22
+ private buildSPARQLQuery;
23
+ toSPARQL(): import("../ast-to-sparql").SPARQLQuery;
24
+ toSparql(): import("../ast-to-sparql").SPARQLQuery;
25
25
  execute(): Promise<any[]>;
26
- /**
27
- * Run afterDelete hooks for all deleted records.
28
- */
26
+ private fetchMatchedRows;
29
27
  private runAfterDeleteHooks;
30
- /**
31
- * Build the HookContext from session info.
32
- */
33
28
  private buildHookContext;
34
29
  then<TResult1 = Awaited<ReturnType<DeleteQueryBuilder<TTable>['execute']>>, TResult2 = never>(onfulfilled?: ((value: Awaited<ReturnType<DeleteQueryBuilder<TTable>['execute']>>) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): Promise<TResult1 | TResult2>;
35
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"delete-query-builder.d.ts","sourceRoot":"","sources":["../../../../src/core/query-builders/delete-query-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAe,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,eAAe,EAAgB,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG1C,qBAAa,kBAAkB,CAAC,MAAM,SAAS,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC;IAQjE,OAAO,EAAE,eAAe;IACxB,KAAK,EAAE,MAAM;IARtB,MAAM,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,wBAAwB;IAE7C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACtC,GAAG,CAAC,EAAE,GAAG,CAAC;IACjB,OAAO,CAAC,aAAa,CAAC,CAAiB;gBAG9B,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,MAAM;IAGtB,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,cAAc;IAsB5D;;;;OAIG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM;IAMtB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,6BAA6B;IAarC,OAAO,CAAC,iCAAiC;IAOlC,IAAI,QAAO,eAAe,CAAC,MAAM,CAAC,CAOvC;IAEI,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAoB/B;;OAEG;YACW,mBAAmB;IAwBjC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAsBxB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,GAAG,KAAK,EAC1F,WAAW,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,EAC1I,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,GAClF,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;CAGhC"}
1
+ {"version":3,"file":"delete-query-builder.d.ts","sourceRoot":"","sources":["../../../../src/core/query-builders/delete-query-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAe,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,eAAe,EAAgB,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAS/D,qBAAa,kBAAkB,CAAC,MAAM,SAAS,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC;IASjE,OAAO,EAAE,eAAe;IACxB,KAAK,EAAE,MAAM;IATtB,MAAM,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,wBAAwB;IAE7C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACtC,GAAG,CAAC,EAAE,GAAG,CAAC;IACjB,OAAO,CAAC,aAAa,CAAC,CAAiB;IACvC,OAAO,CAAC,eAAe,CAAC,CAAwB;gBAGvC,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,MAAM;IAGtB,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,cAAc;IAqB5D,SAAS,CAAC,MAAM,CAAC,EAAE,cAAc;IAKjC,UAAU,CAAC,GAAG,EAAE,MAAM;IAMtB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,6BAA6B;IAYrC,OAAO,CAAC,iCAAiC;IAOlC,IAAI,QAAO,eAAe,CAAC,MAAM,CAAC,CAMvC;IAGF,OAAO,CAAC,gBAAgB;IAmBxB,QAAQ;IAIR,QAAQ;IAIF,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;YAgCjB,gBAAgB;YAQhB,mBAAmB;IAqBjC,OAAO,CAAC,gBAAgB;IAsBxB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,GAAG,KAAK,EAC1F,WAAW,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,EAC1I,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,GAClF,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;CAGhC"}
@@ -1,13 +1,12 @@
1
1
  var _a;
2
2
  import { entityKind, SQL } from 'drizzle-orm';
3
- import { buildConditionTreeFromObject } from './helpers';
3
+ import { buildConditionTreeFromObject, inferSPARQLQueryType, orderRowsBySubjects, projectReturningRows, resolveRowSubject, } from './helpers';
4
4
  export class DeleteQueryBuilder {
5
5
  constructor(session, table) {
6
6
  this.session = session;
7
7
  this.table = table;
8
8
  this.toIR = () => {
9
9
  const whereCondition = this.normalizeWhereConditionsForDelete();
10
- // DELETE operation can have no where condition (delete all of type)
11
10
  return {
12
11
  table: this.table,
13
12
  where: whereCondition
@@ -24,7 +23,6 @@ export class DeleteQueryBuilder {
24
23
  this.whereConditions = Object.keys(simple).length > 0 ? simple : undefined;
25
24
  }
26
25
  else {
27
- // Check for @id usage and reject
28
26
  if (conditions && typeof conditions === 'object' && '@id' in conditions) {
29
27
  throw new Error(`Using '@id' in where() is not supported. ` +
30
28
  `Use db.deleteByIri(table, iri) for IRI-based deletes, ` +
@@ -35,11 +33,10 @@ export class DeleteQueryBuilder {
35
33
  }
36
34
  return this;
37
35
  }
38
- /**
39
- * Internal method that allows @id in conditions.
40
- * Used by *ByIri methods internally.
41
- * @internal
42
- */
36
+ returning(fields) {
37
+ this.returningFields = fields ?? true;
38
+ return this;
39
+ }
43
40
  whereByIri(iri) {
44
41
  this.whereConditions = { '@id': iri };
45
42
  this.conditionTree = undefined;
@@ -57,7 +54,6 @@ export class DeleteQueryBuilder {
57
54
  return { [colName]: right };
58
55
  }
59
56
  }
60
- // For complex conditions, temporarily return empty object; can be extended later
61
57
  return {};
62
58
  }
63
59
  normalizeWhereConditionsForDelete() {
@@ -66,12 +62,43 @@ export class DeleteQueryBuilder {
66
62
  }
67
63
  return buildConditionTreeFromObject(this.whereConditions);
68
64
  }
65
+ buildSPARQLQuery(methodName = 'toSPARQL()') {
66
+ if (this.sql) {
67
+ const query = this.sql.queryChunks.join('');
68
+ const type = inferSPARQLQueryType(query);
69
+ if (!type) {
70
+ throw new Error(`${methodName} could not infer SPARQL query type from raw AST input`);
71
+ }
72
+ return { type, query, prefixes: {} };
73
+ }
74
+ const converter = this.session.getDialect().getSPARQLConverter?.();
75
+ if (!converter) {
76
+ throw new Error(`${methodName} requires dialect SPARQL converter support`);
77
+ }
78
+ const plan = this.toIR();
79
+ return converter.convertDelete(plan.where, plan.table);
80
+ }
81
+ toSPARQL() {
82
+ return this.buildSPARQLQuery('toSPARQL()');
83
+ }
84
+ toSparql() {
85
+ return this.toSPARQL();
86
+ }
69
87
  async execute() {
70
88
  if (this.sql) {
89
+ if (this.returningFields) {
90
+ throw new Error('returning() is not supported for raw SQL delete in Solid dialect');
91
+ }
71
92
  return await this.session.executeSql(this.sql, this.table);
72
93
  }
73
94
  else {
74
95
  const plan = this.toIR();
96
+ const matchedRows = this.returningFields
97
+ ? await this.fetchMatchedRows(plan.where)
98
+ : [];
99
+ const subjects = matchedRows
100
+ .map((row) => resolveRowSubject(row))
101
+ .filter((subject) => typeof subject === 'string' && subject.length > 0);
75
102
  const operation = {
76
103
  type: 'delete',
77
104
  table: this.table,
@@ -79,39 +106,39 @@ export class DeleteQueryBuilder {
79
106
  plan
80
107
  };
81
108
  const results = await this.session.execute(operation);
82
- // Call afterDelete hooks
83
- await this.runAfterDeleteHooks(results);
84
- return results;
109
+ const finalResults = this.returningFields
110
+ ? projectReturningRows(orderRowsBySubjects(matchedRows, subjects), this.returningFields)
111
+ : results;
112
+ await this.runAfterDeleteHooks(finalResults);
113
+ return finalResults;
114
+ }
115
+ }
116
+ async fetchMatchedRows(where) {
117
+ let builder = this.session.select().from(this.table);
118
+ if (where) {
119
+ builder = builder.where(where);
85
120
  }
121
+ return await builder;
86
122
  }
87
- /**
88
- * Run afterDelete hooks for all deleted records.
89
- */
90
123
  async runAfterDeleteHooks(results) {
91
124
  const hooks = this.table.config.hooks;
92
125
  if (!hooks?.afterDelete) {
93
126
  return;
94
127
  }
95
- // Build hook context
96
128
  const ctx = this.buildHookContext();
97
129
  if (!ctx) {
98
130
  console.warn('[DeleteQueryBuilder] Cannot run hooks: missing session info');
99
131
  return;
100
132
  }
101
- // Run hook for each deleted record
102
133
  for (const record of results) {
103
134
  try {
104
135
  await hooks.afterDelete(ctx, record);
105
136
  }
106
137
  catch (error) {
107
138
  console.error('[DeleteQueryBuilder] afterDelete hook failed:', error);
108
- // Don't throw - the delete succeeded, just the hook failed
109
139
  }
110
140
  }
111
141
  }
112
- /**
113
- * Build the HookContext from session info.
114
- */
115
142
  buildHookContext() {
116
143
  const dialect = this.session.getDialect();
117
144
  const webId = dialect.getWebId();
@@ -1 +1 @@
1
- {"version":3,"file":"delete-query-builder.js","sourceRoot":"","sources":["../../../../src/core/query-builders/delete-query-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delete-query-builder.js","sourceRoot":"","sources":["../../../../src/core/query-builders/delete-query-builder.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,11 @@
1
1
  import { QueryCondition } from '../query-conditions';
2
+ import type { SPARQLQuery } from '../ast-to-sparql';
3
+ import type { SelectFieldMap } from './types';
4
+ export declare function inferSPARQLQueryType(query: string): SPARQLQuery['type'] | undefined;
2
5
  export declare function createLiteralCondition(alias: string | undefined, column: string, value: any): QueryCondition;
3
6
  export declare function buildConditionTreeFromObject(conditions: Record<string, any> | undefined, alias?: string): QueryCondition | undefined;
7
+ export declare function resolveRowSubject(row: Record<string, any>): string | undefined;
8
+ export declare function orderRowsBySubjects(rows: Record<string, any>[], subjects: string[]): Record<string, any>[];
9
+ export declare function projectReturningRow(row: Record<string, any>, fields?: SelectFieldMap | true): Record<string, any>;
10
+ export declare function projectReturningRows(rows: Record<string, any>[], fields?: SelectFieldMap | true): Record<string, any>[];
4
11
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/core/query-builders/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAIrD,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,GAAG,GACT,cAAc,CAYhB;AAED,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,EAC3C,KAAK,CAAC,EAAE,MAAM,GACb,cAAc,GAAG,SAAS,CAmB5B"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/core/query-builders/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,SAAS,CAAC;AAG3D,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CA+BnF;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,GAAG,GACT,cAAc,CAYhB;AAED,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,EAC3C,KAAK,CAAC,EAAE,MAAM,GACb,cAAc,GAAG,SAAS,CAmB5B;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,GAAG,SAAS,CAkB9E;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAC3B,QAAQ,EAAE,MAAM,EAAE,GACjB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAkCvB;AAqFD,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACxB,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAWrB;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAC3B,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAC7B,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAMvB"}