@bhushanpawar/sqldb 1.0.0 → 1.0.2

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 (65) hide show
  1. package/README.md +1403 -93
  2. package/dist/cache/cache-manager.d.ts.map +1 -1
  3. package/dist/cache/cache-manager.js +2 -1
  4. package/dist/cache/cache-manager.js.map +1 -1
  5. package/dist/cli/index.d.ts +3 -0
  6. package/dist/cli/index.d.ts.map +1 -0
  7. package/dist/cli/index.js +225 -0
  8. package/dist/cli/index.js.map +1 -0
  9. package/dist/cli/schema-generator.d.ts +28 -0
  10. package/dist/cli/schema-generator.d.ts.map +1 -0
  11. package/dist/cli/schema-generator.js +159 -0
  12. package/dist/cli/schema-generator.js.map +1 -0
  13. package/dist/client.d.ts +32 -0
  14. package/dist/client.d.ts.map +1 -1
  15. package/dist/client.js +56 -14
  16. package/dist/client.js.map +1 -1
  17. package/dist/connection/mariadb.d.ts +21 -0
  18. package/dist/connection/mariadb.d.ts.map +1 -1
  19. package/dist/connection/mariadb.js +121 -3
  20. package/dist/connection/mariadb.js.map +1 -1
  21. package/dist/db-schema.d.ts +413 -0
  22. package/dist/db-schema.d.ts.map +1 -0
  23. package/dist/db-schema.js +1149 -0
  24. package/dist/db-schema.js.map +1 -0
  25. package/dist/discovery/dependency-graph.d.ts +3 -0
  26. package/dist/discovery/dependency-graph.d.ts.map +1 -1
  27. package/dist/discovery/dependency-graph.js +11 -0
  28. package/dist/discovery/dependency-graph.js.map +1 -1
  29. package/dist/discovery/schema-reader.d.ts +1 -1
  30. package/dist/discovery/schema-reader.d.ts.map +1 -1
  31. package/dist/discovery/schema-reader.js +48 -19
  32. package/dist/discovery/schema-reader.js.map +1 -1
  33. package/dist/index.d.ts +9 -1
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +63 -3
  36. package/dist/index.js.map +1 -1
  37. package/dist/query/operations.d.ts +7 -0
  38. package/dist/query/operations.d.ts.map +1 -1
  39. package/dist/query/operations.js +204 -22
  40. package/dist/query/operations.js.map +1 -1
  41. package/dist/types/client.d.ts +32 -0
  42. package/dist/types/client.d.ts.map +1 -0
  43. package/dist/types/client.js +3 -0
  44. package/dist/types/client.js.map +1 -0
  45. package/dist/types/config.d.ts +3 -0
  46. package/dist/types/config.d.ts.map +1 -1
  47. package/dist/types/config.js +14 -1
  48. package/dist/types/config.js.map +1 -1
  49. package/dist/types/query.d.ts +12 -0
  50. package/dist/types/query.d.ts.map +1 -1
  51. package/dist/types/schema.d.ts +6 -0
  52. package/dist/types/schema.d.ts.map +1 -1
  53. package/dist/types/warming.d.ts +47 -0
  54. package/dist/types/warming.d.ts.map +1 -0
  55. package/dist/types/warming.js +3 -0
  56. package/dist/types/warming.js.map +1 -0
  57. package/dist/warming/auto-warming-manager.d.ts +65 -0
  58. package/dist/warming/auto-warming-manager.d.ts.map +1 -0
  59. package/dist/warming/auto-warming-manager.js +256 -0
  60. package/dist/warming/auto-warming-manager.js.map +1 -0
  61. package/dist/warming/query-stats-tracker.d.ts +53 -0
  62. package/dist/warming/query-stats-tracker.d.ts.map +1 -0
  63. package/dist/warming/query-stats-tracker.js +273 -0
  64. package/dist/warming/query-stats-tracker.js.map +1 -0
  65. package/package.json +4 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"db-schema.js","sourceRoot":"","sources":["../src/db-schema.ts"],"names":[],"mappings":"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"}
@@ -2,12 +2,15 @@ import { TableRelationship } from '../types/schema';
2
2
  export declare class DependencyGraph {
3
3
  private dependents;
4
4
  private dependencies;
5
+ private relationships;
5
6
  private maxDepth;
6
7
  constructor(maxDepth?: number);
7
8
  addRelationship(relationship: TableRelationship): void;
8
9
  buildFromRelationships(relationships: TableRelationship[]): void;
9
10
  getDependents(table: string): string[];
10
11
  getDependencies(table: string): string[];
12
+ getRelationshipsFrom(table: string): TableRelationship[];
13
+ getRelationshipsTo(table: string): TableRelationship[];
11
14
  getInvalidationTargets(table: string): string[];
12
15
  private bfsTraversal;
13
16
  getAllTables(): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"dependency-graph.d.ts","sourceRoot":"","sources":["../../src/discovery/dependency-graph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,qBAAa,eAAe;IAE1B,OAAO,CAAC,UAAU,CAAuC;IAGzD,OAAO,CAAC,YAAY,CAAuC;IAE3D,OAAO,CAAC,QAAQ,CAAS;gBAEb,QAAQ,GAAE,MAAU;IAIhC,eAAe,CAAC,YAAY,EAAE,iBAAiB,GAAG,IAAI;IAgBtD,sBAAsB,CAAC,aAAa,EAAE,iBAAiB,EAAE,GAAG,IAAI;IAMhE,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAItC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAIxC,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAS/C,OAAO,CAAC,YAAY;IA+BpB,YAAY,IAAI,MAAM,EAAE;IAcxB,KAAK,IAAI,IAAI;IAKb,YAAY,IAAI;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE;CAa1D"}
1
+ {"version":3,"file":"dependency-graph.d.ts","sourceRoot":"","sources":["../../src/discovery/dependency-graph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,qBAAa,eAAe;IAE1B,OAAO,CAAC,UAAU,CAAuC;IAGzD,OAAO,CAAC,YAAY,CAAuC;IAG3D,OAAO,CAAC,aAAa,CAA2B;IAEhD,OAAO,CAAC,QAAQ,CAAS;gBAEb,QAAQ,GAAE,MAAU;IAIhC,eAAe,CAAC,YAAY,EAAE,iBAAiB,GAAG,IAAI;IAmBtD,sBAAsB,CAAC,aAAa,EAAE,iBAAiB,EAAE,GAAG,IAAI;IAMhE,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAItC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAIxC,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,EAAE;IAIxD,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,EAAE;IAItD,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAS/C,OAAO,CAAC,YAAY;IA+BpB,YAAY,IAAI,MAAM,EAAE;IAcxB,KAAK,IAAI,IAAI;IAMb,YAAY,IAAI;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE;CAa1D"}
@@ -7,10 +7,14 @@ class DependencyGraph {
7
7
  this.dependents = new Map();
8
8
  // Adjacency list: table -> set of tables it depends on (has FK to)
9
9
  this.dependencies = new Map();
10
+ // Store full relationship details for reference
11
+ this.relationships = [];
10
12
  this.maxDepth = maxDepth;
11
13
  }
12
14
  addRelationship(relationship) {
13
15
  const { fromTable, toTable } = relationship;
16
+ // Store the full relationship
17
+ this.relationships.push(relationship);
14
18
  // fromTable depends on toTable (fromTable has FK to toTable)
15
19
  if (!this.dependencies.has(fromTable)) {
16
20
  this.dependencies.set(fromTable, new Set());
@@ -33,6 +37,12 @@ class DependencyGraph {
33
37
  getDependencies(table) {
34
38
  return Array.from(this.dependencies.get(table) || []);
35
39
  }
40
+ getRelationshipsFrom(table) {
41
+ return this.relationships.filter(r => r.fromTable === table);
42
+ }
43
+ getRelationshipsTo(table) {
44
+ return this.relationships.filter(r => r.toTable === table);
45
+ }
36
46
  getInvalidationTargets(table) {
37
47
  const visited = new Set();
38
48
  const targets = [];
@@ -72,6 +82,7 @@ class DependencyGraph {
72
82
  clear() {
73
83
  this.dependents.clear();
74
84
  this.dependencies.clear();
85
+ this.relationships = [];
75
86
  }
76
87
  getGraphInfo() {
77
88
  const allTables = this.getAllTables();
@@ -1 +1 @@
1
- {"version":3,"file":"dependency-graph.js","sourceRoot":"","sources":["../../src/discovery/dependency-graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dependency-graph.js","sourceRoot":"","sources":["../../src/discovery/dependency-graph.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ export declare class SchemaReader {
9
9
  private getCurrentDatabase;
10
10
  private getTableNames;
11
11
  private filterTables;
12
- private getTableColumns;
12
+ private getAllTableColumns;
13
13
  private findPrimaryKey;
14
14
  }
15
15
  //# sourceMappingURL=schema-reader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-reader.d.ts","sourceRoot":"","sources":["../../src/discovery/schema-reader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAc,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAA2B;IAC5C,OAAO,CAAC,MAAM,CAAkB;gBAEpB,SAAS,EAAE,wBAAwB,EAAE,MAAM,EAAE,eAAe;IAKlE,cAAc,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YAqBhC,kBAAkB;YAKlB,aAAa;IAa3B,OAAO,CAAC,YAAY;YAoBN,eAAe;IA8B7B,OAAO,CAAC,cAAc;CAIvB"}
1
+ {"version":3,"file":"schema-reader.d.ts","sourceRoot":"","sources":["../../src/discovery/schema-reader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAc,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAA2B;IAC5C,OAAO,CAAC,MAAM,CAAkB;gBAEpB,SAAS,EAAE,wBAAwB,EAAE,MAAM,EAAE,eAAe;IAKlE,cAAc,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YAsBhC,kBAAkB;YAKlB,aAAa;IAa3B,OAAO,CAAC,YAAY;YAoBN,kBAAkB;IAiEhC,OAAO,CAAC,cAAc;CAIvB"}
@@ -10,16 +10,17 @@ class SchemaReader {
10
10
  const database = await this.getCurrentDatabase();
11
11
  const tables = await this.getTableNames(database);
12
12
  const filteredTables = this.filterTables(tables);
13
- const tableSchemas = [];
14
- for (const tableName of filteredTables) {
15
- const columns = await this.getTableColumns(database, tableName);
13
+ // Fetch all columns in a single query for better performance
14
+ const allColumns = await this.getAllTableColumns(database, filteredTables);
15
+ const tableSchemas = filteredTables.map((tableName) => {
16
+ const columns = allColumns.get(tableName) || [];
16
17
  const primaryKey = this.findPrimaryKey(columns);
17
- tableSchemas.push({
18
+ return {
18
19
  tableName,
19
20
  columns,
20
21
  primaryKey,
21
- });
22
- }
22
+ };
23
+ });
23
24
  return tableSchemas;
24
25
  }
25
26
  async getCurrentDatabase() {
@@ -49,29 +50,57 @@ class SchemaReader {
49
50
  }
50
51
  return filtered;
51
52
  }
52
- async getTableColumns(database, tableName) {
53
+ async getAllTableColumns(database, tableNames) {
54
+ if (tableNames.length === 0) {
55
+ return new Map();
56
+ }
57
+ // Create placeholders for IN clause
58
+ const placeholders = tableNames.map(() => '?').join(',');
53
59
  const sql = `
54
60
  SELECT
61
+ TABLE_NAME as tableName,
55
62
  COLUMN_NAME as columnName,
56
63
  DATA_TYPE as dataType,
64
+ COLUMN_TYPE as columnType,
57
65
  IS_NULLABLE as isNullable,
58
66
  COLUMN_KEY as columnKey,
59
67
  COLUMN_DEFAULT as columnDefault,
60
- EXTRA as extra
68
+ EXTRA as extra,
69
+ CHARACTER_MAXIMUM_LENGTH as characterMaximumLength,
70
+ NUMERIC_PRECISION as numericPrecision,
71
+ NUMERIC_SCALE as numericScale,
72
+ CHARACTER_SET_NAME as characterSetName,
73
+ COLLATION_NAME as collationName,
74
+ ORDINAL_POSITION as ordinalPosition
61
75
  FROM INFORMATION_SCHEMA.COLUMNS
62
76
  WHERE TABLE_SCHEMA = ?
63
- AND TABLE_NAME = ?
64
- ORDER BY ORDINAL_POSITION
77
+ AND TABLE_NAME IN (${placeholders})
78
+ ORDER BY TABLE_NAME, ORDINAL_POSITION
65
79
  `;
66
- const result = await this.dbManager.query(sql, [database, tableName]);
67
- return result.map((row) => ({
68
- columnName: row.columnName,
69
- dataType: row.dataType,
70
- isNullable: row.isNullable === 'YES',
71
- columnKey: row.columnKey || '',
72
- columnDefault: row.columnDefault,
73
- extra: row.extra || '',
74
- }));
80
+ const result = await this.dbManager.query(sql, [database, ...tableNames]);
81
+ // Group columns by table name
82
+ const columnsByTable = new Map();
83
+ for (const row of result) {
84
+ const tableName = row.tableName;
85
+ if (!columnsByTable.has(tableName)) {
86
+ columnsByTable.set(tableName, []);
87
+ }
88
+ columnsByTable.get(tableName).push({
89
+ columnName: row.columnName,
90
+ dataType: row.dataType,
91
+ columnType: row.columnType,
92
+ isNullable: row.isNullable === 'YES',
93
+ columnKey: row.columnKey || '',
94
+ columnDefault: row.columnDefault,
95
+ extra: row.extra || '',
96
+ characterMaximumLength: row.characterMaximumLength,
97
+ numericPrecision: row.numericPrecision,
98
+ numericScale: row.numericScale,
99
+ characterSetName: row.characterSetName,
100
+ collationName: row.collationName,
101
+ });
102
+ }
103
+ return columnsByTable;
75
104
  }
76
105
  findPrimaryKey(columns) {
77
106
  const pkColumn = columns.find((col) => col.columnKey === 'PRI');
@@ -1 +1 @@
1
- {"version":3,"file":"schema-reader.js","sourceRoot":"","sources":["../../src/discovery/schema-reader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema-reader.js","sourceRoot":"","sources":["../../src/discovery/schema-reader.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,19 +1,27 @@
1
1
  import { SmartDBClient } from './client';
2
2
  import { SmartDBConfig } from './types/config';
3
- export declare function createSmartDB(config: SmartDBConfig): Promise<SmartDBClient>;
3
+ export declare function createSmartDB(config: SmartDBConfig, options?: {
4
+ singleton?: boolean;
5
+ }): Promise<SmartDBClient>;
6
+ export declare function getSmartDB(): SmartDBClient;
7
+ export declare function clearSmartDBSingleton(): void;
4
8
  export { SmartDBClient } from './client';
5
9
  export * from './types/config';
6
10
  export * from './types/query';
7
11
  export * from './types/cache';
8
12
  export * from './types/schema';
13
+ export * from './types/client';
9
14
  export { CacheManager } from './cache/cache-manager';
10
15
  export { InvalidationManager } from './cache/invalidation';
11
16
  export { DependencyGraph } from './discovery/dependency-graph';
12
17
  export { HooksManager } from './hooks/hooks-manager';
13
18
  export { QueryBuilder } from './query/query-builder';
14
19
  export { InMemoryQueryTracker, generateQueryId } from './query/query-tracker';
20
+ export { SchemaGenerator } from './cli/schema-generator';
15
21
  declare const _default: {
16
22
  createSmartDB: typeof createSmartDB;
23
+ getSmartDB: typeof getSmartDB;
24
+ clearSmartDBSingleton: typeof clearSmartDBSingleton;
17
25
  SmartDBClient: typeof SmartDBClient;
18
26
  };
19
27
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,wBAAsB,aAAa,CACjC,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,aAAa,CAAC,CAIxB;AAGD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAG/B,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;;;;;AAG9E,wBAGE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAK/C,wBAAsB,aAAa,CACjC,MAAM,EAAE,aAAa,EACrB,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,GAChC,OAAO,CAAC,aAAa,CAAC,CAuBxB;AAgCD,wBAAgB,UAAU,IAAI,aAAa,CAO1C;AAGD,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C;AAGD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAG/B,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;;;;;;;AAGzD,wBAKE"}
package/dist/index.js CHANGED
@@ -14,13 +14,68 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.generateQueryId = exports.InMemoryQueryTracker = exports.QueryBuilder = exports.HooksManager = exports.DependencyGraph = exports.InvalidationManager = exports.CacheManager = exports.SmartDBClient = void 0;
17
+ exports.SchemaGenerator = exports.generateQueryId = exports.InMemoryQueryTracker = exports.QueryBuilder = exports.HooksManager = exports.DependencyGraph = exports.InvalidationManager = exports.CacheManager = exports.SmartDBClient = void 0;
18
18
  exports.createSmartDB = createSmartDB;
19
+ exports.getSmartDB = getSmartDB;
20
+ exports.clearSmartDBSingleton = clearSmartDBSingleton;
19
21
  const client_1 = require("./client");
20
- async function createSmartDB(config) {
22
+ // Singleton instance storage
23
+ let singletonInstance = null;
24
+ async function createSmartDB(config, options) {
25
+ // If singleton mode is enabled and instance exists, return it
26
+ if (options?.singleton) {
27
+ if (singletonInstance) {
28
+ return singletonInstance;
29
+ }
30
+ // Create and store singleton instance
31
+ const client = new client_1.SmartDBClient(config);
32
+ await client.initialize();
33
+ // Wrap in Proxy for dynamic table access
34
+ const proxiedClient = createProxiedClient(client);
35
+ singletonInstance = proxiedClient;
36
+ return singletonInstance;
37
+ }
38
+ // Non-singleton mode: create new instance
21
39
  const client = new client_1.SmartDBClient(config);
22
40
  await client.initialize();
23
- return client;
41
+ // Wrap in Proxy for dynamic table access
42
+ return createProxiedClient(client);
43
+ }
44
+ // Create a proxied client that allows dynamic table access (db.users, db.orders, etc.)
45
+ function createProxiedClient(client) {
46
+ return new Proxy(client, {
47
+ get(target, prop) {
48
+ // If prop is a symbol or starts with underscore, return from target
49
+ if (typeof prop === 'symbol' || prop.startsWith('_')) {
50
+ return target[prop];
51
+ }
52
+ // If property exists on the target, return it
53
+ if (prop in target) {
54
+ const value = target[prop];
55
+ // Bind methods to maintain correct 'this' context
56
+ if (typeof value === 'function') {
57
+ return value.bind(target);
58
+ }
59
+ return value;
60
+ }
61
+ // Otherwise, treat it as a table name and return TableOperations
62
+ if (typeof prop === 'string') {
63
+ return target.getTableOperations(prop);
64
+ }
65
+ return undefined;
66
+ },
67
+ });
68
+ }
69
+ // Get the singleton instance (throws if not initialized)
70
+ function getSmartDB() {
71
+ if (!singletonInstance) {
72
+ throw new Error('Singleton SmartDB instance not initialized. Call createSmartDB({ ... }, { singleton: true }) first.');
73
+ }
74
+ return singletonInstance;
75
+ }
76
+ // Clear singleton instance (useful for testing or reconnecting)
77
+ function clearSmartDBSingleton() {
78
+ singletonInstance = null;
24
79
  }
25
80
  // Export main client class
26
81
  var client_2 = require("./client");
@@ -30,6 +85,7 @@ __exportStar(require("./types/config"), exports);
30
85
  __exportStar(require("./types/query"), exports);
31
86
  __exportStar(require("./types/cache"), exports);
32
87
  __exportStar(require("./types/schema"), exports);
88
+ __exportStar(require("./types/client"), exports);
33
89
  // Export managers for advanced usage
34
90
  var cache_manager_1 = require("./cache/cache-manager");
35
91
  Object.defineProperty(exports, "CacheManager", { enumerable: true, get: function () { return cache_manager_1.CacheManager; } });
@@ -44,9 +100,13 @@ Object.defineProperty(exports, "QueryBuilder", { enumerable: true, get: function
44
100
  var query_tracker_1 = require("./query/query-tracker");
45
101
  Object.defineProperty(exports, "InMemoryQueryTracker", { enumerable: true, get: function () { return query_tracker_1.InMemoryQueryTracker; } });
46
102
  Object.defineProperty(exports, "generateQueryId", { enumerable: true, get: function () { return query_tracker_1.generateQueryId; } });
103
+ var schema_generator_1 = require("./cli/schema-generator");
104
+ Object.defineProperty(exports, "SchemaGenerator", { enumerable: true, get: function () { return schema_generator_1.SchemaGenerator; } });
47
105
  // Default export
48
106
  exports.default = {
49
107
  createSmartDB,
108
+ getSmartDB,
109
+ clearSmartDBSingleton,
50
110
  SmartDBClient: client_1.SmartDBClient,
51
111
  };
52
112
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAGA,sCAMC;AATD,qCAAyC;AAGlC,KAAK,UAAU,aAAa,CACjC,MAAqB;IAErB,MAAM,MAAM,GAAG,IAAI,sBAAa,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;IAC1B,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,2BAA2B;AAC3B,mCAAyC;AAAhC,uGAAA,aAAa,OAAA;AAEtB,8BAA8B;AAC9B,iDAA+B;AAC/B,gDAA8B;AAC9B,gDAA8B;AAC9B,iDAA+B;AAE/B,qCAAqC;AACrC,uDAAqD;AAA5C,6GAAA,YAAY,OAAA;AACrB,qDAA2D;AAAlD,mHAAA,mBAAmB,OAAA;AAC5B,iEAA+D;AAAtD,mHAAA,eAAe,OAAA;AACxB,uDAAqD;AAA5C,6GAAA,YAAY,OAAA;AACrB,uDAAqD;AAA5C,6GAAA,YAAY,OAAA;AACrB,uDAA8E;AAArE,qHAAA,oBAAoB,OAAA;AAAE,gHAAA,eAAe,OAAA;AAE9C,iBAAiB;AACjB,kBAAe;IACb,aAAa;IACb,aAAa,EAAb,sBAAa;CACd,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,14 @@ export declare class TableOperationsImpl<T = any> implements TableOperations<T>
25
25
  deleteMany(where: WhereClause<T>, correlationId?: string): Promise<number>;
26
26
  deleteById(id: string | number, correlationId?: string): Promise<boolean>;
27
27
  raw<R = any>(sql: string, params?: any[], correlationId?: string): Promise<R>;
28
+ private attachRelations;
28
29
  invalidateCache(): Promise<void>;
29
30
  warmCache(where?: WhereClause<T>, correlationId?: string): Promise<void>;
31
+ warmCacheWithRelations(where?: WhereClause<T>, options?: {
32
+ correlationId?: string;
33
+ depth?: number;
34
+ warmDependents?: boolean;
35
+ warmDependencies?: boolean;
36
+ }): Promise<void>;
30
37
  }
31
38
  //# sourceMappingURL=operations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/query/operations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,qBAAa,mBAAmB,CAAC,CAAC,GAAG,GAAG,CAAE,YAAW,eAAe,CAAC,CAAC,CAAC;IACrE,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAA2B;IAC5C,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,WAAW,CAAwB;gBAGzC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,wBAAwB,EACnC,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,mBAAmB,EACxC,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC;IAU9B,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAMxE,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAkCrE,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IA2BxE,KAAK,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA4BtE,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAiBlE,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IA2B5E,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAyB7F,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAoB5F,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAyB5F,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAe1E,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAe1E,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAezE,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAwB7E,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAMhC,SAAS,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAI/E"}
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/query/operations.ts"],"names":[],"mappings":"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"}