@prabhask5/stellar-engine 1.2.0 → 1.2.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 (49) hide show
  1. package/README.md +454 -386
  2. package/dist/auth/resolveAuthState.js +3 -16
  3. package/dist/auth/resolveAuthState.js.map +1 -1
  4. package/dist/auth/singleUser.d.ts.map +1 -1
  5. package/dist/auth/singleUser.js +2 -3
  6. package/dist/auth/singleUser.js.map +1 -1
  7. package/dist/bin/commands.d.ts +14 -0
  8. package/dist/bin/commands.d.ts.map +1 -0
  9. package/dist/bin/commands.js +68 -0
  10. package/dist/bin/commands.js.map +1 -0
  11. package/dist/bin/install-pwa.d.ts +20 -6
  12. package/dist/bin/install-pwa.d.ts.map +1 -1
  13. package/dist/bin/install-pwa.js +111 -234
  14. package/dist/bin/install-pwa.js.map +1 -1
  15. package/dist/config.d.ts +63 -29
  16. package/dist/config.d.ts.map +1 -1
  17. package/dist/config.js +265 -37
  18. package/dist/config.js.map +1 -1
  19. package/dist/database.d.ts +64 -14
  20. package/dist/database.d.ts.map +1 -1
  21. package/dist/database.js +104 -16
  22. package/dist/database.js.map +1 -1
  23. package/dist/engine.d.ts.map +1 -1
  24. package/dist/engine.js +8 -11
  25. package/dist/engine.js.map +1 -1
  26. package/dist/entries/types.d.ts +4 -3
  27. package/dist/entries/types.d.ts.map +1 -1
  28. package/dist/entries/utils.d.ts +1 -0
  29. package/dist/entries/utils.d.ts.map +1 -1
  30. package/dist/entries/utils.js +8 -0
  31. package/dist/entries/utils.js.map +1 -1
  32. package/dist/entries/vite.d.ts +1 -1
  33. package/dist/entries/vite.d.ts.map +1 -1
  34. package/dist/index.d.ts +6 -2
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +7 -0
  37. package/dist/index.js.map +1 -1
  38. package/dist/schema.d.ts +150 -0
  39. package/dist/schema.d.ts.map +1 -0
  40. package/dist/schema.js +891 -0
  41. package/dist/schema.js.map +1 -0
  42. package/dist/sw/build/vite-plugin.d.ts +93 -18
  43. package/dist/sw/build/vite-plugin.d.ts.map +1 -1
  44. package/dist/sw/build/vite-plugin.js +356 -22
  45. package/dist/sw/build/vite-plugin.js.map +1 -1
  46. package/dist/sw/sw.js +0 -5
  47. package/dist/types.d.ts +139 -0
  48. package/dist/types.d.ts.map +1 -1
  49. package/package.json +3 -2
package/dist/database.js CHANGED
@@ -2,14 +2,9 @@
2
2
  * @fileoverview IndexedDB Database Management via Dexie
3
3
  *
4
4
  * Manages the lifecycle of the Dexie (IndexedDB) database instance used
5
- * by the sync engine. The engine can operate in two modes:
6
- *
7
- * 1. **Managed mode** The engine creates and owns the Dexie instance
8
- * via {@link createDatabase}. System tables (syncQueue, conflictHistory,
9
- * etc.) are automatically merged into every schema version declaration.
10
- *
11
- * 2. **Provided mode** — The consumer passes a pre-created Dexie instance
12
- * via {@link _setManagedDb} (backward compatibility).
5
+ * by the sync engine. The engine creates and owns the Dexie instance
6
+ * via {@link createDatabase}. System tables (syncQueue, conflictHistory,
7
+ * etc.) are automatically merged into every schema version declaration.
13
8
  *
14
9
  * Recovery strategy:
15
10
  * If the database fails to open (e.g., blocked by another tab, corrupted
@@ -22,6 +17,24 @@
22
17
  */
23
18
  import Dexie from 'dexie';
24
19
  // =============================================================================
20
+ // System Indexes
21
+ // =============================================================================
22
+ /**
23
+ * Dexie indexes automatically appended to every app table when using the
24
+ * schema-driven API (`initEngine({ schema: {...} })`).
25
+ *
26
+ * These correspond to the system columns that every synced table has:
27
+ * - `id` — UUID primary key
28
+ * - `user_id` — ownership filter for RLS
29
+ * - `created_at` — creation timestamp
30
+ * - `updated_at` — last modification timestamp (sync cursor)
31
+ * - `deleted` — soft-delete flag
32
+ * - `_version` — optimistic concurrency version counter
33
+ *
34
+ * @see {@link config.ts#generateDatabaseFromSchema} for usage
35
+ */
36
+ export const SYSTEM_INDEXES = 'id, user_id, created_at, updated_at, deleted, _version';
37
+ // =============================================================================
25
38
  // System Tables
26
39
  // =============================================================================
27
40
  /**
@@ -60,7 +73,7 @@ const CRDT_SYSTEM_TABLES = {
60
73
  // =============================================================================
61
74
  // Module State
62
75
  // =============================================================================
63
- /** The engine-managed Dexie instance (set by createDatabase or _setManagedDb). */
76
+ /** The engine-managed Dexie instance (set by createDatabase). */
64
77
  let managedDb = null;
65
78
  // =============================================================================
66
79
  // Database Creation
@@ -174,21 +187,96 @@ function buildDexie(config, crdtEnabled = false) {
174
187
  */
175
188
  export function getDb() {
176
189
  if (!managedDb) {
177
- throw new Error('No database available. Call initEngine() with database config or db first.');
190
+ throw new Error('No database available. Call initEngine() with schema or database config first.');
178
191
  }
179
192
  return managedDb;
180
193
  }
181
194
  /**
182
- * Register a consumer-provided Dexie instance as the managed database.
195
+ * Compute a stable Dexie version number from a merged store schema.
196
+ *
197
+ * Uses a localStorage-backed hash comparison to detect schema changes:
198
+ * 1. Compute a deterministic hash of the stringified stores object.
199
+ * 2. Compare to the previously stored hash in localStorage.
200
+ * 3. If changed → increment the stored version, persist both hash and
201
+ * previous stores schema, and return the upgrade info.
202
+ * 4. If unchanged → return the stored version.
203
+ * 5. If first run → return version 1.
204
+ *
205
+ * When a schema change is detected, the previous stores schema is returned
206
+ * so that the caller can declare both versions. This gives Dexie a proper
207
+ * upgrade path (version N → version N+1) instead of requiring a full
208
+ * database rebuild.
209
+ *
210
+ * @param prefix - Application prefix for namespacing localStorage keys.
211
+ * @param mergedStores - The complete Dexie store schema (app + system tables).
212
+ * @returns Version info including previous stores for upgrade path.
213
+ *
214
+ * @example
215
+ * const result = computeSchemaVersion('stellar', {
216
+ * goals: 'id, user_id, goal_list_id, order',
217
+ * });
218
+ * // First run: { version: 1, previousStores: null, previousVersion: null }
219
+ * // On change: { version: 2, previousStores: { goals: '...' }, previousVersion: 1 }
220
+ *
221
+ * @see {@link config.ts#generateDatabaseFromSchema} for the caller
222
+ */
223
+ export function computeSchemaVersion(prefix, mergedStores) {
224
+ /* 1. Build a stable, sorted string representation of the schema. */
225
+ const schemaString = JSON.stringify(Object.keys(mergedStores)
226
+ .sort()
227
+ .map((k) => `${k}:${mergedStores[k]}`));
228
+ const hash = djb2Hash(schemaString);
229
+ /* 2. Compare to the stored hash. */
230
+ const hashKey = `${prefix}_schema_hash`;
231
+ const versionKey = `${prefix}_schema_version`;
232
+ const storesKey = `${prefix}_schema_stores`;
233
+ /* Guard for SSR or environments without localStorage. */
234
+ if (typeof localStorage === 'undefined') {
235
+ return { version: 1, previousStores: null, previousVersion: null };
236
+ }
237
+ const storedHash = localStorage.getItem(hashKey);
238
+ const storedVersion = parseInt(localStorage.getItem(versionKey) || '0', 10);
239
+ if (storedHash === hash) {
240
+ /* Schema unchanged — use the stored version. */
241
+ return { version: storedVersion || 1, previousStores: null, previousVersion: null };
242
+ }
243
+ /* 3. Schema changed (or first run) — bump version. */
244
+ const newVersion = (storedVersion || 0) + 1;
245
+ /* Retrieve the previous stores schema for the upgrade path. */
246
+ let previousStores = null;
247
+ const previousVersion = storedVersion || null;
248
+ const storedStores = localStorage.getItem(storesKey);
249
+ if (storedStores) {
250
+ try {
251
+ previousStores = JSON.parse(storedStores);
252
+ }
253
+ catch {
254
+ /* Corrupted — treat as first run. */
255
+ }
256
+ }
257
+ /* Persist the new state. */
258
+ localStorage.setItem(hashKey, hash);
259
+ localStorage.setItem(versionKey, String(newVersion));
260
+ localStorage.setItem(storesKey, JSON.stringify(mergedStores));
261
+ return { version: newVersion, previousStores, previousVersion };
262
+ }
263
+ /**
264
+ * DJB2 hash function — fast, deterministic string hash.
183
265
  *
184
- * Used in backward-compatibility mode when the consumer creates their own
185
- * Dexie instance and passes it via `initEngine({ db: myDexie })`.
266
+ * Produces a hex string from an arbitrary input string. Not cryptographic,
267
+ * but sufficient for detecting schema changes across app restarts.
186
268
  *
187
- * @param db - The consumer-created Dexie instance.
269
+ * @param str - The input string to hash.
270
+ * @returns A hex string representation of the hash.
188
271
  * @internal
189
272
  */
190
- export function _setManagedDb(db) {
191
- managedDb = db;
273
+ function djb2Hash(str) {
274
+ let hash = 5381;
275
+ for (let i = 0; i < str.length; i++) {
276
+ hash = (hash * 33) ^ str.charCodeAt(i);
277
+ }
278
+ /* Convert to unsigned 32-bit integer, then to hex. */
279
+ return (hash >>> 0).toString(16);
192
280
  }
193
281
  // =============================================================================
194
282
  // Recovery
@@ -1 +1 @@
1
- {"version":3,"file":"database.js","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database.js","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AAgLH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,CAW7D;AAuCD,uDAAuD;AACvD,UAAU,cAAc;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAgLD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAEzD;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB;;;;;;uBAxLF,MAAM;yBAAW,MAAM;;;oBAF5C,MAAM;sBACJ,MAAM;sBAEN,MAAM;;;;;;;;;;;;EAuMrB;AAgLD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAO/D;AAuCD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAcvC;AAm8BD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,WAAW,CAC/B,KAAK,GAAE,OAAe,EACtB,QAAQ,GAAE,OAAe,GACxB,OAAO,CAAC,IAAI,CAAC,CA2Mf;AAolBD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAwYrD;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CA+DpD;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAkDrD"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AAgLH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,CAW7D;AAuCD,uDAAuD;AACvD,UAAU,cAAc;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAgLD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAEzD;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB;;;;;;uBAxLF,MAAM;yBAAW,MAAM;;;oBAF5C,MAAM;sBACJ,MAAM;sBAEN,MAAM;;;;;;;;;;;;EAuMrB;AAgLD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAO/D;AAuCD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAcvC;AAi8BD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,WAAW,CAC/B,KAAK,GAAE,OAAe,EACtB,QAAQ,GAAE,OAAe,GACxB,OAAO,CAAC,IAAI,CAAC,CA2Mf;AAolBD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAwYrD;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CA+DpD;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAgDrD"}
package/dist/engine.js CHANGED
@@ -750,14 +750,15 @@ async function getCurrentUserId() {
750
750
  * issues when multiple accounts use the same browser (each user has their own
751
751
  * cursor so switching accounts doesn't skip or re-pull data).
752
752
  *
753
- * @param userId - The user ID for cursor isolation (null = legacy global cursor)
753
+ * @param userId - The user ID for cursor isolation
754
754
  * @returns ISO timestamp cursor, or epoch if no cursor is stored
755
755
  */
756
756
  function getLastSyncCursor(userId) {
757
757
  if (typeof localStorage === 'undefined')
758
758
  return '1970-01-01T00:00:00.000Z';
759
- const key = userId ? `lastSyncCursor_${userId}` : 'lastSyncCursor';
760
- return localStorage.getItem(key) || '1970-01-01T00:00:00.000Z';
759
+ if (!userId)
760
+ return '1970-01-01T00:00:00.000Z';
761
+ return localStorage.getItem(`lastSyncCursor_${userId}`) || '1970-01-01T00:00:00.000Z';
761
762
  }
762
763
  /**
763
764
  * Persist the sync cursor to localStorage (per-user).
@@ -766,9 +767,8 @@ function getLastSyncCursor(userId) {
766
767
  * @param userId - The user ID for cursor isolation
767
768
  */
768
769
  function setLastSyncCursor(cursor, userId) {
769
- if (typeof localStorage !== 'undefined') {
770
- const key = userId ? `lastSyncCursor_${userId}` : 'lastSyncCursor';
771
- localStorage.setItem(key, cursor);
770
+ if (typeof localStorage !== 'undefined' && userId) {
771
+ localStorage.setItem(`lastSyncCursor_${userId}`, cursor);
772
772
  }
773
773
  }
774
774
  /**
@@ -776,9 +776,8 @@ function setLastSyncCursor(cursor, userId) {
776
776
  */
777
777
  async function resetSyncCursor() {
778
778
  const userId = await getCurrentUserId();
779
- if (typeof localStorage !== 'undefined') {
780
- const key = userId ? `lastSyncCursor_${userId}` : 'lastSyncCursor';
781
- localStorage.removeItem(key);
779
+ if (typeof localStorage !== 'undefined' && userId) {
780
+ localStorage.removeItem(`lastSyncCursor_${userId}`);
782
781
  debugLog('[SYNC] Sync cursor reset - next sync will pull all data');
783
782
  }
784
783
  }
@@ -2631,8 +2630,6 @@ export async function clearLocalCache() {
2631
2630
  if (userId) {
2632
2631
  localStorage.removeItem(`lastSyncCursor_${userId}`);
2633
2632
  }
2634
- // Also remove legacy cursor for cleanup
2635
- localStorage.removeItem('lastSyncCursor');
2636
2633
  }
2637
2634
  _hasHydrated = false;
2638
2635
  }
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
@@ -8,15 +8,16 @@
8
8
  * No runtime code is emitted from this file — it contains only `export type`
9
9
  * statements and will be fully erased during compilation.
10
10
  */
11
- export type { SyncEngineConfig, TableConfig } from '../config';
12
- export type { DatabaseConfig, DatabaseVersionConfig } from '../database';
11
+ export type { SyncEngineConfig, TableConfig, InitEngineInput } from '../config';
12
+ export type { DatabaseConfig, DatabaseVersionConfig, SchemaVersionResult } from '../database';
13
13
  export type { BatchOperation } from '../data';
14
14
  export type { AuthStateResult } from '../auth/resolveAuthState';
15
15
  export type { AppConfig } from '../runtime/runtimeConfig';
16
- export type { SyncOperationItem, OperationType, OfflineCredentials, OfflineSession, ConflictHistoryEntry, SyncStatus, AuthMode, SingleUserConfig, SingleUserGateType } from '../types';
16
+ export type { SyncOperationItem, OperationType, OfflineCredentials, OfflineSession, ConflictHistoryEntry, SyncStatus, AuthMode, SingleUserConfig, SingleUserGateType, SchemaDefinition, SchemaTableConfig, AuthConfig, FieldType } from '../types';
17
17
  export type { SyncError, RealtimeState } from '../stores/sync';
18
18
  export type { RemoteActionType } from '../stores/remoteChanges';
19
19
  export type { DiagnosticsSnapshot } from '../diagnostics';
20
20
  export type { Session } from '@supabase/supabase-js';
21
21
  export type { CRDTConfig, UserPresenceState } from '../crdt/types';
22
+ export type { SQLGenerationOptions, TypeScriptGenerationOptions } from '../schema';
22
23
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/entries/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAQ/D,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAQzE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAQ9C,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAOhE,YAAY,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAe1D,YAAY,EACV,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACpB,UAAU,EACV,QAAQ,EACR,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AASlB,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/D,YAAY,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAOhE,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAQ1D,YAAY,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAQrD,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/entries/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAQhF,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAQ9F,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAQ9C,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAOhE,YAAY,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAe1D,YAAY,EACV,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACpB,UAAU,EACV,QAAQ,EACR,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,UAAU,EACV,SAAS,EACV,MAAM,UAAU,CAAC;AASlB,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/D,YAAY,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAOhE,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAQ1D,YAAY,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAQrD,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAOnE,YAAY,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC"}
@@ -8,4 +8,5 @@
8
8
  export { generateId, now, calculateNewOrder, snakeToCamel, formatBytes } from '../utils';
9
9
  export { debug, isDebugMode, setDebugMode } from '../debug';
10
10
  export { getDiagnostics, getSyncDiagnostics, getRealtimeDiagnostics, getQueueDiagnostics, getConflictDiagnostics, getEngineDiagnostics, getNetworkDiagnostics, getErrorDiagnostics } from '../diagnostics';
11
+ export { generateSupabaseSQL, inferColumnType, generateMigrationSQL, generateTypeScript } from '../schema';
11
12
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/entries/utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAUzF,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAS5D,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/entries/utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAUzF,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAS5D,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AAUxB,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,WAAW,CAAC"}
@@ -31,4 +31,12 @@ export { debug, isDebugMode, setDebugMode } from '../debug';
31
31
  // - `getDiagnostics` — returns a comprehensive JSON snapshot of all engine state.
32
32
  // - Sub-category functions for lightweight access to specific sections.
33
33
  export { getDiagnostics, getSyncDiagnostics, getRealtimeDiagnostics, getQueueDiagnostics, getConflictDiagnostics, getEngineDiagnostics, getNetworkDiagnostics, getErrorDiagnostics } from '../diagnostics';
34
+ // =============================================================================
35
+ // SQL Generation
36
+ // =============================================================================
37
+ // Generate complete Supabase SQL from a declarative schema definition:
38
+ // - `generateSupabaseSQL` — produces CREATE TABLE, RLS, triggers, indexes.
39
+ // - `inferColumnType` — maps field names to SQL types via naming conventions.
40
+ // - `generateMigrationSQL` — diffs two schemas and produces ALTER statements.
41
+ export { generateSupabaseSQL, inferColumnType, generateMigrationSQL, generateTypeScript } from '../schema';
34
42
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/entries/utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,gFAAgF;AAChF,qBAAqB;AACrB,gFAAgF;AAChF,+CAA+C;AAC/C,sEAAsE;AACtE,2DAA2D;AAC3D,4EAA4E;AAC5E,mEAAmE;AACnE,oEAAoE;AACpE,uEAAuE;AAEvE,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEzF,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAChF,sDAAsD;AACtD,8EAA8E;AAC9E,qEAAqE;AACrE,gEAAgE;AAEhE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE5D,gFAAgF;AAChF,eAAe;AACf,gFAAgF;AAChF,qEAAqE;AACrE,kFAAkF;AAClF,wEAAwE;AAExE,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/entries/utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,gFAAgF;AAChF,qBAAqB;AACrB,gFAAgF;AAChF,+CAA+C;AAC/C,sEAAsE;AACtE,2DAA2D;AAC3D,4EAA4E;AAC5E,mEAAmE;AACnE,oEAAoE;AACpE,uEAAuE;AAEvE,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEzF,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAChF,sDAAsD;AACtD,8EAA8E;AAC9E,qEAAqE;AACrE,gEAAgE;AAEhE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE5D,gFAAgF;AAChF,eAAe;AACf,gFAAgF;AAChF,qEAAqE;AACrE,kFAAkF;AAClF,wEAAwE;AAExE,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AAExB,gFAAgF;AAChF,kBAAkB;AAClB,gFAAgF;AAChF,uEAAuE;AACvE,2EAA2E;AAC3E,8EAA8E;AAC9E,8EAA8E;AAE9E,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,WAAW,CAAC"}