nanodb-orm 0.0.8 → 0.1.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 (39) hide show
  1. package/README.md +82 -60
  2. package/dist/cli.d.ts +20 -0
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +81 -1
  5. package/dist/cli.js.map +1 -1
  6. package/dist/core/connection.d.ts +2 -0
  7. package/dist/core/connection.d.ts.map +1 -1
  8. package/dist/core/connection.js +5 -5
  9. package/dist/core/connection.js.map +1 -1
  10. package/dist/index.d.ts +9 -4
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +6 -2
  13. package/dist/index.js.map +1 -1
  14. package/dist/init.d.ts +9 -1
  15. package/dist/init.d.ts.map +1 -1
  16. package/dist/init.js +87 -22
  17. package/dist/init.js.map +1 -1
  18. package/dist/types/index.d.ts +28 -0
  19. package/dist/types/index.d.ts.map +1 -1
  20. package/dist/utils/migrations.d.ts +5 -1
  21. package/dist/utils/migrations.d.ts.map +1 -1
  22. package/dist/utils/migrations.js +176 -51
  23. package/dist/utils/migrations.js.map +1 -1
  24. package/dist/utils/schema-introspection.d.ts.map +1 -1
  25. package/dist/utils/schema-introspection.js +2 -1
  26. package/dist/utils/schema-introspection.js.map +1 -1
  27. package/dist/utils/seeds.js +9 -16
  28. package/dist/utils/seeds.js.map +1 -1
  29. package/dist/utils/sql-safety.d.ts +2 -0
  30. package/dist/utils/sql-safety.d.ts.map +1 -0
  31. package/dist/utils/sql-safety.js +11 -0
  32. package/dist/utils/sql-safety.js.map +1 -0
  33. package/dist/utils/sync.d.ts.map +1 -1
  34. package/dist/utils/sync.js +4 -2
  35. package/dist/utils/sync.js.map +1 -1
  36. package/dist/utils/transactions.d.ts.map +1 -1
  37. package/dist/utils/transactions.js +12 -8
  38. package/dist/utils/transactions.js.map +1 -1
  39. package/package.json +8 -5
package/dist/index.js CHANGED
@@ -23,8 +23,8 @@
23
23
  * ```
24
24
  */
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.notInArray = exports.inArray = exports.between = exports.not = exports.or = exports.and = exports.notLike = exports.ilike = exports.like = exports.lte = exports.lt = exports.gte = exports.gt = exports.ne = exports.eq = exports.column = exports.blob = exports.real = exports.text = exports.integer = exports.sqliteTable = exports.table = exports.runValidate = exports.getStatus = exports.runReset = exports.runSetup = exports.launchStudio = exports.migrateTablePreservingData = exports.recreateTable = exports.batch = exports.transaction = exports.SchemaIntrospection = exports.DatabaseSeeds = exports.DatabaseMigrations = exports.DatabaseSync = exports.getDatabaseConfig = exports.DatabaseConnection = exports.parseDbError = exports.SeedError = exports.MigrationError = exports.ConnectionError = exports.SchemaError = exports.DatabaseError = exports.createReplicatedDatabase = exports.initializeDatabase = exports.createDatabase = exports.cli = exports.errors = exports.query = exports.schema = void 0;
27
- exports.sql = exports.max = exports.min = exports.avg = exports.sum = exports.count = exports.asc = exports.desc = exports.isNotNull = exports.isNull = void 0;
26
+ exports.between = exports.not = exports.or = exports.and = exports.notLike = exports.ilike = exports.like = exports.lte = exports.lt = exports.gte = exports.gt = exports.ne = exports.eq = exports.column = exports.blob = exports.real = exports.text = exports.integer = exports.sqliteTable = exports.table = exports.runValidate = exports.runMigrationPlan = exports.runMigrationsStatus = exports.getStatus = exports.runReset = exports.runSetup = exports.launchStudio = exports.migrateTablePreservingData = exports.recreateTable = exports.batch = exports.transaction = exports.SchemaIntrospection = exports.DatabaseSeeds = exports.DatabaseMigrations = exports.DatabaseSync = exports.getDatabaseConfig = exports.DatabaseConnection = exports.parseDbError = exports.SeedError = exports.MigrationError = exports.ConnectionError = exports.SchemaError = exports.DatabaseError = exports.createReplicatedDatabase = exports.initializeDatabase = exports.createDatabase = exports.cli = exports.errors = exports.query = exports.schema = void 0;
27
+ exports.sql = exports.max = exports.min = exports.avg = exports.sum = exports.count = exports.asc = exports.desc = exports.isNotNull = exports.isNull = exports.notInArray = exports.inArray = void 0;
28
28
  const sqlite_core_1 = require("drizzle-orm/sqlite-core");
29
29
  Object.defineProperty(exports, "sqliteTable", { enumerable: true, get: function () { return sqlite_core_1.sqliteTable; } });
30
30
  const drizzle_orm_1 = require("drizzle-orm");
@@ -144,6 +144,8 @@ exports.cli = {
144
144
  setup: cli_1.runSetup,
145
145
  reset: cli_1.runReset,
146
146
  status: cli_1.getStatus,
147
+ migrations: cli_1.runMigrationsStatus,
148
+ plan: cli_1.runMigrationPlan,
147
149
  validate: cli_1.runValidate,
148
150
  };
149
151
  // =============================================================================
@@ -189,6 +191,8 @@ Object.defineProperty(exports, "launchStudio", { enumerable: true, get: function
189
191
  Object.defineProperty(exports, "runSetup", { enumerable: true, get: function () { return cli_2.runSetup; } });
190
192
  Object.defineProperty(exports, "runReset", { enumerable: true, get: function () { return cli_2.runReset; } });
191
193
  Object.defineProperty(exports, "getStatus", { enumerable: true, get: function () { return cli_2.getStatus; } });
194
+ Object.defineProperty(exports, "runMigrationsStatus", { enumerable: true, get: function () { return cli_2.runMigrationsStatus; } });
195
+ Object.defineProperty(exports, "runMigrationPlan", { enumerable: true, get: function () { return cli_2.runMigrationPlan; } });
192
196
  Object.defineProperty(exports, "runValidate", { enumerable: true, get: function () { return cli_2.runValidate; } });
193
197
  // Schema building (individual)
194
198
  exports.table = sqlite_core_1.sqliteTable;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
package/dist/init.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- import type { Schema, SchemaData, MigrationConfig, NanoPlugin, HealthCheck, SyncResult, SchemaValidation, TableMetadata } from './types';
1
+ import type { ConnectionProfile } from './core/connection';
2
+ import type { Schema, SchemaData, MigrationConfig, NanoPlugin, HealthCheck, SyncResult, SchemaValidation, TableMetadata, MigrationStatus, MigrationPlan } from './types';
2
3
  import type { LibSQLDatabase } from 'drizzle-orm/libsql';
3
4
  export type { SchemaData, MigrationConfig, NanoPlugin };
4
5
  /**
@@ -53,6 +54,10 @@ export interface MigrationUtils {
53
54
  validate: () => Promise<SchemaValidation>;
54
55
  /** Check which tables exist */
55
56
  checkTables: () => Promise<Record<string, boolean>>;
57
+ /** Inspect applied migration history */
58
+ status: () => Promise<MigrationStatus>;
59
+ /** Preview schema migration actions without applying changes */
60
+ plan: () => Promise<MigrationPlan>;
56
61
  }
57
62
  /**
58
63
  * Plugin utilities.
@@ -94,12 +99,15 @@ export type NanoDatabase<S extends Schema> = LibSQLDatabase<S> & {
94
99
  * Configuration for createDatabase().
95
100
  */
96
101
  export interface CreateDatabaseConfig<S extends Schema = Schema> extends SchemaData<S> {
102
+ /** Connection behavior profile (default: 'default') */
103
+ connectionProfile?: ConnectionProfile;
97
104
  /** Optional connection override (bypasses singleton) */
98
105
  connection?: {
99
106
  connectionUrl?: string;
100
107
  authToken?: string;
101
108
  forceLocal?: boolean;
102
109
  databasePath?: string;
110
+ profile?: ConnectionProfile;
103
111
  };
104
112
  /** Reuse process-wide singleton connection (default: false) */
105
113
  useSingletonConnection?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../init.ts"],"names":[],"mappings":"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"}
package/dist/init.js CHANGED
@@ -8,6 +8,7 @@ const migrations_1 = require("./utils/migrations");
8
8
  const sync_1 = require("./utils/sync");
9
9
  const connection_1 = require("./core/connection");
10
10
  const logger_1 = require("./utils/logger");
11
+ const errors_1 = require("./types/errors");
11
12
  let contextCounter = 0;
12
13
  function createContextId() {
13
14
  contextCounter += 1;
@@ -33,6 +34,29 @@ const MUTATING_HOOKS = [
33
34
  'beforeDelete',
34
35
  'beforeQuery',
35
36
  ];
37
+ function toCamelCase(input) {
38
+ const parts = input.split(/[^a-zA-Z0-9]+/).filter(Boolean);
39
+ if (parts.length === 0)
40
+ return input;
41
+ return parts
42
+ .map((part, index) => {
43
+ const lower = part.toLowerCase();
44
+ if (index === 0)
45
+ return lower;
46
+ return lower.charAt(0).toUpperCase() + lower.slice(1);
47
+ })
48
+ .join('');
49
+ }
50
+ function warnUndeclaredMutations(plugin) {
51
+ if (process.env.NODE_ENV === 'production')
52
+ return;
53
+ const declared = new Set(plugin.mutates ?? []);
54
+ for (const hook of MUTATING_HOOKS) {
55
+ if (plugin[hook] && !declared.has(hook)) {
56
+ logger_1.logger.warn(`Plugin "${plugin.name}" defines ${hook} without declaring mutates: [${hook}]`);
57
+ }
58
+ }
59
+ }
36
60
  function validatePlugins(plugins) {
37
61
  const seenNames = new Set();
38
62
  const mutatorByHook = new Map();
@@ -43,12 +67,38 @@ function validatePlugins(plugins) {
43
67
  seenNames.add(plugin.name);
44
68
  const mutates = plugin.mutates ?? [];
45
69
  for (const hook of mutates) {
70
+ if (!plugin[hook]) {
71
+ throw new Error(`Plugin "${plugin.name}" declares mutates hook "${hook}" but does not define ${hook}()`);
72
+ }
46
73
  const existing = mutatorByHook.get(hook);
47
74
  if (existing) {
48
75
  throw new Error(`Conflicting mutators for ${hook}: "${existing}" and "${plugin.name}"`);
49
76
  }
50
77
  mutatorByHook.set(hook, plugin.name);
51
78
  }
79
+ warnUndeclaredMutations(plugin);
80
+ }
81
+ }
82
+ function validateInstalledDbSurface(pluginName, previousDb, installedDb) {
83
+ // Non-destructive contract: all previous keys must be preserved by reference.
84
+ for (const key of Object.keys(previousDb)) {
85
+ if (!(key in installedDb)) {
86
+ throw new Error(`Plugin "${pluginName}" install() removed required property "${key}"`);
87
+ }
88
+ if (installedDb[key] !== previousDb[key]) {
89
+ throw new Error(`Plugin "${pluginName}" install() attempted to override protected property "${key}"`);
90
+ }
91
+ }
92
+ // New top-level keys must be namespaced to reduce collisions.
93
+ const camel = toCamelCase(pluginName);
94
+ const allowedPrefixes = [pluginName, camel].filter(Boolean);
95
+ for (const key of Object.keys(installedDb)) {
96
+ if (key in previousDb)
97
+ continue;
98
+ const namespaced = allowedPrefixes.some((prefix) => (key === prefix || key.startsWith(`${prefix}.`) || key.startsWith(`${prefix}_`)));
99
+ if (!namespaced) {
100
+ throw new Error(`Plugin "${pluginName}" install() added non-namespaced property "${key}"`);
101
+ }
52
102
  }
53
103
  }
54
104
  function resolvePluginOrder(plugins, deterministicOrdering) {
@@ -157,15 +207,16 @@ function getTableName(table) {
157
207
  async function createDatabase(config) {
158
208
  const contextId = createContextId();
159
209
  let drizzleRef = null;
210
+ let usesSingletonConnection = false;
160
211
  try {
161
212
  // Initialize all modules with schema
162
213
  initializeDatabase(config, contextId);
163
214
  // Get Drizzle instance and setup plugins
164
215
  const drizzle = (config.connection
165
216
  ? await connection_1.DatabaseConnection.createInstance(config.connection)
166
- : config.useSingletonConnection
167
- ? await connection_1.DatabaseConnection.getInstance()
168
- : await connection_1.DatabaseConnection.createInstance());
217
+ : (config.useSingletonConnection ?? (config.connectionProfile === 'long_lived'))
218
+ ? ((usesSingletonConnection = true), await connection_1.DatabaseConnection.getInstance())
219
+ : await connection_1.DatabaseConnection.createInstance({ profile: config.connectionProfile ?? 'default' }));
169
220
  drizzleRef = drizzle;
170
221
  // Run migrations and seed (use the same connection)
171
222
  await migrations_1.DatabaseMigrations.initializeSchema(drizzle, contextId);
@@ -186,6 +237,11 @@ async function createDatabase(config) {
186
237
  const originalDelete = drizzle.delete.bind(drizzle);
187
238
  const originalSelect = drizzle.select.bind(drizzle);
188
239
  const toError = (err) => (err instanceof Error ? err : new Error(String(err)));
240
+ const toParsedError = (err, operation, table) => {
241
+ if (err instanceof errors_1.DatabaseError)
242
+ return err;
243
+ return (0, errors_1.parseDbError)(err, { operation, table });
244
+ };
189
245
  function isDatabaseLike(value) {
190
246
  if (!value || typeof value !== 'object')
191
247
  return false;
@@ -197,7 +253,7 @@ async function createDatabase(config) {
197
253
  candidate.hooks !== undefined);
198
254
  }
199
255
  // Helper to wrap promise with after/error hooks (preserves original type)
200
- function wrapWithAfterHook(promise, afterFn, onError) {
256
+ function wrapWithAfterHook(promise, afterFn, operation, tableName, onError) {
201
257
  const original = promise.then.bind(promise);
202
258
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
203
259
  promise.then = function (onFulfilled, onRejected) {
@@ -205,11 +261,11 @@ async function createDatabase(config) {
205
261
  afterFn();
206
262
  return onFulfilled ? onFulfilled(result) : result;
207
263
  }, (reason) => {
208
- const error = toError(reason);
209
- onError(error);
264
+ onError(toError(reason));
265
+ const parsedError = toParsedError(reason, operation, tableName);
210
266
  if (onRejected)
211
- return onRejected(reason);
212
- throw reason;
267
+ return onRejected(parsedError);
268
+ throw parsedError;
213
269
  });
214
270
  };
215
271
  return promise;
@@ -236,9 +292,10 @@ async function createDatabase(config) {
236
292
  }, (reason) => {
237
293
  const error = toError(reason);
238
294
  hooks.onError(error, 'select', tableName);
295
+ const parsedError = toParsedError(reason, 'select', tableName);
239
296
  if (onRejected)
240
- return onRejected(reason);
241
- throw reason;
297
+ return onRejected(parsedError);
298
+ throw parsedError;
242
299
  });
243
300
  };
244
301
  return result;
@@ -258,11 +315,11 @@ async function createDatabase(config) {
258
315
  ? data.map((d) => hooks.beforeInsert(tableName, d))
259
316
  : hooks.beforeInsert(tableName, data);
260
317
  const result = originalValues(processed);
261
- return wrapWithAfterHook(result, () => hooks.afterInsert(tableName, processed, result), (error) => hooks.onError(error, 'insert', tableName));
318
+ return wrapWithAfterHook(result, () => hooks.afterInsert(tableName, processed, result), 'insert', tableName, (error) => hooks.onError(error, 'insert', tableName));
262
319
  }
263
320
  catch (err) {
264
- hooks.onError(err, 'insert', tableName);
265
- throw err;
321
+ hooks.onError(toError(err), 'insert', tableName);
322
+ throw toParsedError(err, 'insert', tableName);
266
323
  }
267
324
  };
268
325
  return builder;
@@ -276,11 +333,11 @@ async function createDatabase(config) {
276
333
  try {
277
334
  const processed = hooks.beforeUpdate(tableName, data);
278
335
  const result = originalSet(processed);
279
- return wrapWithAfterHook(result, () => hooks.afterUpdate(tableName, processed, result), (error) => hooks.onError(error, 'update', tableName));
336
+ return wrapWithAfterHook(result, () => hooks.afterUpdate(tableName, processed, result), 'update', tableName, (error) => hooks.onError(error, 'update', tableName));
280
337
  }
281
338
  catch (err) {
282
- hooks.onError(err, 'update', tableName);
283
- throw err;
339
+ hooks.onError(toError(err), 'update', tableName);
340
+ throw toParsedError(err, 'update', tableName);
284
341
  }
285
342
  };
286
343
  return builder;
@@ -294,11 +351,11 @@ async function createDatabase(config) {
294
351
  try {
295
352
  const processedCondition = hooks.beforeDelete(tableName, condition ?? {});
296
353
  const result = originalWhere(processedCondition);
297
- return wrapWithAfterHook(result, () => hooks.afterDelete(tableName, processedCondition, result), (error) => hooks.onError(error, 'delete', tableName));
354
+ return wrapWithAfterHook(result, () => hooks.afterDelete(tableName, processedCondition, result), 'delete', tableName, (error) => hooks.onError(error, 'delete', tableName));
298
355
  }
299
356
  catch (err) {
300
- hooks.onError(err, 'delete', tableName);
301
- throw err;
357
+ hooks.onError(toError(err), 'delete', tableName);
358
+ throw toParsedError(err, 'delete', tableName);
302
359
  }
303
360
  };
304
361
  return builder;
@@ -317,7 +374,7 @@ async function createDatabase(config) {
317
374
  return;
318
375
  disposed = true;
319
376
  disposeContext(contextId);
320
- if (!config.useSingletonConnection) {
377
+ if (!usesSingletonConnection) {
321
378
  const client = drizzle.$client;
322
379
  if (client?.close)
323
380
  await client.close();
@@ -343,6 +400,8 @@ async function createDatabase(config) {
343
400
  run: () => migrations_1.DatabaseMigrations.initializeSchema(drizzle, contextId),
344
401
  validate: () => migrations_1.DatabaseMigrations.validateSchema(drizzle, contextId),
345
402
  checkTables: () => migrations_1.DatabaseMigrations.checkTableExistence(drizzle, contextId),
403
+ status: () => migrations_1.DatabaseMigrations.status(drizzle, contextId),
404
+ plan: () => migrations_1.DatabaseMigrations.plan(drizzle, contextId),
346
405
  },
347
406
  // Plugin info
348
407
  plugins: { list: () => plugins.map((p) => p.name) },
@@ -369,6 +428,7 @@ async function createDatabase(config) {
369
428
  hooks.onError(error, 'plugin-install');
370
429
  throw error;
371
430
  }
431
+ validateInstalledDbSurface(plugin.name, db, result);
372
432
  const installed = result;
373
433
  const pluginDispose = installed.dispose.bind(installed);
374
434
  installed.dispose = async () => {
@@ -385,12 +445,14 @@ async function createDatabase(config) {
385
445
  }
386
446
  catch (error) {
387
447
  disposeContext(contextId);
388
- if (drizzleRef && !config.useSingletonConnection) {
448
+ if (drizzleRef && !usesSingletonConnection) {
389
449
  const client = drizzleRef.$client;
390
450
  if (client?.close)
391
451
  await client.close();
392
452
  }
393
- throw error;
453
+ if (error instanceof errors_1.DatabaseError)
454
+ throw error;
455
+ throw (0, errors_1.parseDbError)(error, { operation: 'create-database' });
394
456
  }
395
457
  }
396
458
  // ============================================================================
@@ -401,6 +463,9 @@ const DEFAULT_MIGRATION_CONFIG = {
401
463
  preserveData: true,
402
464
  autoMigrate: true,
403
465
  dropTables: false,
466
+ dryRun: false,
467
+ backupBeforeMigrate: false,
468
+ backupPath: '',
404
469
  };
405
470
  /**
406
471
  * Initialize internal modules with schema data.
package/dist/init.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../init.ts"],"names":[],"mappings":"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"}
@@ -174,6 +174,34 @@ export interface MigrationConfig {
174
174
  autoMigrate?: boolean;
175
175
  /** Allow dropping tables (default: false) */
176
176
  dropTables?: boolean;
177
+ /** Preview migration plan only, do not apply schema changes (default: false) */
178
+ dryRun?: boolean;
179
+ /** Create a database backup before applying schema changes (default: false) */
180
+ backupBeforeMigrate?: boolean;
181
+ /** Optional backup output path (SQLite/local only) */
182
+ backupPath?: string;
183
+ }
184
+ export interface AppliedMigration {
185
+ tableName: string;
186
+ migrationHash: string;
187
+ appliedAt: string;
188
+ }
189
+ export interface MigrationStatus {
190
+ totalApplied: number;
191
+ byTable: Record<string, number>;
192
+ latestAppliedAt?: string;
193
+ migrations: AppliedMigration[];
194
+ }
195
+ export type MigrationPlanAction = 'create' | 'up_to_date' | 'migrate_preserve' | 'recreate' | 'skip_auto_migrate_disabled' | 'skip_dry_run' | 'blocked_destructive';
196
+ export interface MigrationPlanItem {
197
+ tableName: string;
198
+ action: MigrationPlanAction;
199
+ reason: string;
200
+ migrationHash: string;
201
+ }
202
+ export interface MigrationPlan {
203
+ requiresChanges: boolean;
204
+ items: MigrationPlanItem[];
177
205
  }
178
206
  /**
179
207
  * Schema initialization data with full type safety.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../types/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { sql } from 'drizzle-orm';
2
- import type { AnyTable, MigrationConfig, SchemaValidation } from '../types';
2
+ import type { AnyTable, MigrationConfig, MigrationPlan, MigrationStatus, SchemaValidation } from '../types';
3
3
  interface DrizzleDbRun {
4
4
  run: (query: ReturnType<typeof sql> | ReturnType<typeof sql.raw>) => Promise<{
5
5
  rows?: unknown[];
@@ -24,6 +24,10 @@ export declare const DatabaseMigrations: {
24
24
  checkTableExistence(dbOverride?: DrizzleDbRun, contextId?: string): Promise<Record<string, boolean>>;
25
25
  /** Validate schema matches database */
26
26
  validateSchema(dbOverride?: DrizzleDbRun, contextId?: string): Promise<SchemaValidation>;
27
+ /** Migration history status */
28
+ status(dbOverride?: DrizzleDbRun, contextId?: string): Promise<MigrationStatus>;
29
+ /** Preview migration actions without applying schema changes */
30
+ plan(dbOverride?: DrizzleDbRun, contextId?: string): Promise<MigrationPlan>;
27
31
  };
28
32
  export {};
29
33
  //# sourceMappingURL=migrations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../utils/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAMlC,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AA+B5E,UAAU,YAAY;IACpB,GAAG,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,GAAG,CAAC,GAAG,UAAU,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC;QAAE,IAAI,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,CAAC,CAAC;CACpG;AA6BD,eAAO,MAAM,kBAAkB;IAC7B,kCAAkC;qBACjB;QACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACjC,UAAU,EAAE,MAAM,EAAE,CAAC;QACrB,eAAe,CAAC,EAAE,eAAe,CAAC;KACnC,uBAA0B,IAAI;IAa/B,sCAAsC;iCACN,IAAI;IASpC,oCAAoC;kCACA,YAAY,uBAA0B,OAAO,CAAC,IAAI,CAAC;IAiBvF,mCAAmC;+BACF,YAAY,uBAA0B,OAAO,CAAC,IAAI,CAAC;IAQpF,sBAAsB;+BACW,YAAY,uBAA0B,OAAO,CAAC,IAAI,CAAC;IAapF,+BAA+B;qCACQ,YAAY,uBAA0B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAY7G,uCAAuC;gCACL,YAAY,uBAA0B,OAAO,CAAC,gBAAgB,CAAC;CAuBlG,CAAC"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../utils/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAWlC,OAAO,KAAK,EACV,QAAQ,EACR,eAAe,EACf,aAAa,EAGb,eAAe,EACf,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAmClB,UAAU,YAAY;IACpB,GAAG,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,GAAG,CAAC,GAAG,UAAU,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC;QAAE,IAAI,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,CAAC,CAAC;CACpG;AA6BD,eAAO,MAAM,kBAAkB;IAC7B,kCAAkC;qBACjB;QACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACjC,UAAU,EAAE,MAAM,EAAE,CAAC;QACrB,eAAe,CAAC,EAAE,eAAe,CAAC;KACnC,uBAA0B,IAAI;IAa/B,sCAAsC;iCACN,IAAI;IASpC,oCAAoC;kCACA,YAAY,uBAA0B,OAAO,CAAC,IAAI,CAAC;IAgCvF,mCAAmC;+BACF,YAAY,uBAA0B,OAAO,CAAC,IAAI,CAAC;IAQpF,sBAAsB;+BACW,YAAY,uBAA0B,OAAO,CAAC,IAAI,CAAC;IAcpF,+BAA+B;qCACQ,YAAY,uBAA0B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAY7G,uCAAuC;gCACL,YAAY,uBAA0B,OAAO,CAAC,gBAAgB,CAAC;IAyBjG,+BAA+B;wBACL,YAAY,uBAA0B,OAAO,CAAC,eAAe,CAAC;IAkCxF,gEAAgE;sBACxC,YAAY,uBAA0B,OAAO,CAAC,aAAa,CAAC;CAuBrF,CAAC"}