@deepagents/text2sql 7.3.0 → 7.5.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 (35) hide show
  1. package/README.md +80 -28
  2. package/dist/bin/sql.js +15 -7
  3. package/dist/index.js +28 -22
  4. package/dist/index.js.map +2 -2
  5. package/dist/lib/adapters/adapter.d.ts.map +1 -1
  6. package/dist/lib/adapters/bigquery/index.js +2 -6
  7. package/dist/lib/adapters/bigquery/index.js.map +2 -2
  8. package/dist/lib/adapters/clickhouse/index.js +4 -8
  9. package/dist/lib/adapters/clickhouse/index.js.map +3 -3
  10. package/dist/lib/adapters/duckdb/index.js +6 -10
  11. package/dist/lib/adapters/duckdb/index.js.map +3 -3
  12. package/dist/lib/adapters/mysql/index.js +2 -6
  13. package/dist/lib/adapters/mysql/index.js.map +2 -2
  14. package/dist/lib/adapters/postgres/index.js +4 -8
  15. package/dist/lib/adapters/postgres/index.js.map +3 -3
  16. package/dist/lib/adapters/posthog/index.js +2 -6
  17. package/dist/lib/adapters/posthog/index.js.map +2 -2
  18. package/dist/lib/adapters/spreadsheet/index.js +7 -13
  19. package/dist/lib/adapters/spreadsheet/index.js.map +3 -3
  20. package/dist/lib/adapters/spreadsheet/spreadsheet.d.ts.map +1 -1
  21. package/dist/lib/adapters/sqlite/index.js +5 -11
  22. package/dist/lib/adapters/sqlite/index.js.map +3 -3
  23. package/dist/lib/adapters/sqlite/table.sqlite.grounding.d.ts.map +1 -1
  24. package/dist/lib/adapters/sqlserver/index.js +2 -6
  25. package/dist/lib/adapters/sqlserver/index.js.map +2 -2
  26. package/dist/lib/checkpoint.d.ts +3 -0
  27. package/dist/lib/checkpoint.d.ts.map +1 -1
  28. package/dist/lib/file-cache.d.ts +12 -2
  29. package/dist/lib/file-cache.d.ts.map +1 -1
  30. package/dist/lib/fs/sqlite/ddl.sqlite-fs.d.ts +1 -1
  31. package/dist/lib/fs/sqlite/ddl.sqlite-fs.d.ts.map +1 -1
  32. package/dist/lib/fs/sqlite/sqlite-fs.d.ts.map +1 -1
  33. package/dist/lib/index-cache.d.ts +4 -1
  34. package/dist/lib/index-cache.d.ts.map +1 -1
  35. package/package.json +10 -8
@@ -1 +1 @@
1
- {"version":3,"file":"spreadsheet.d.ts","sourceRoot":"","sources":["../../../../src/lib/adapters/spreadsheet/spreadsheet.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAG7C;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,WAAW,EAAE,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,WAAY,SAAQ,MAAM;;gBAGzB,OAAO,EAAE,kBAAkB;IA2BvC;;;OAGG;IACH,KAAK,IAAI,IAAI;CAGd"}
1
+ {"version":3,"file":"spreadsheet.d.ts","sourceRoot":"","sources":["../../../../src/lib/adapters/spreadsheet/spreadsheet.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAG7C;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,WAAW,EAAE,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,WAAY,SAAQ,MAAM;;gBAGzB,OAAO,EAAE,kBAAkB;IA2BvC;;;OAGG;IACH,KAAK,IAAI,IAAI;CAGd"}
@@ -1,4 +1,5 @@
1
1
  // packages/text2sql/src/lib/adapters/adapter.ts
2
+ import pMemoize from "p-memoize";
2
3
  import { format as formatSql } from "sql-formatter";
3
4
  import { z } from "zod";
4
5
 
@@ -401,12 +402,7 @@ var Adapter = class {
401
402
  #decodeShellEscapes(sql) {
402
403
  return sql.replace(/\\n/g, "\n").replace(/\\t/g, " ").replace(/\\([().*$])/g, "$1").replace(/\\(?=$)/gm, "");
403
404
  }
404
- #cachedAllowedEntities = null;
405
- async #resolveScope() {
406
- if (this.#cachedAllowedEntities) return this.#cachedAllowedEntities;
407
- this.#cachedAllowedEntities = await this.resolveAllowedEntities();
408
- return this.#cachedAllowedEntities;
409
- }
405
+ #resolveScope = pMemoize(() => this.resolveAllowedEntities());
410
406
  async #analyzePolicy(sql) {
411
407
  return this.#policyAnalyzer.analyze(sql, {
412
408
  resolveAllowedEntities: () => this.#resolveScope()
@@ -1834,9 +1830,10 @@ var Sqlite = class extends Adapter {
1834
1830
  };
1835
1831
 
1836
1832
  // packages/text2sql/src/lib/adapters/sqlite/table.sqlite.grounding.ts
1833
+ import pMemoize2 from "p-memoize";
1837
1834
  var SqliteTableGrounding = class extends TableGrounding {
1838
1835
  #adapter;
1839
- #relationshipCache = null;
1836
+ #allRelationships = pMemoize2(() => this.#loadAllRelationships());
1840
1837
  constructor(adapter, config = {}) {
1841
1838
  super(config);
1842
1839
  this.#adapter = adapter;
@@ -1885,10 +1882,7 @@ var SqliteTableGrounding = class extends TableGrounding {
1885
1882
  return Array.from(groups.values());
1886
1883
  }
1887
1884
  async findIncomingRelations(tableName) {
1888
- if (!this.#relationshipCache) {
1889
- this.#relationshipCache = await this.#loadAllRelationships();
1890
- }
1891
- return this.#relationshipCache.filter(
1885
+ return (await this.#allRelationships()).filter(
1892
1886
  (r) => r.referenced_table === tableName
1893
1887
  );
1894
1888
  }