@prisma-idb/idb-client-generator 0.26.0 → 0.28.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 (32) hide show
  1. package/.release-it.json +10 -5
  2. package/LICENSE +661 -0
  3. package/dist/bin.js +0 -0
  4. package/dist/fileCreators/apply-pull/create.js +17 -9
  5. package/dist/fileCreators/apply-pull/create.js.map +1 -1
  6. package/dist/fileCreators/batch-processor/create.js +17 -3
  7. package/dist/fileCreators/batch-processor/create.js.map +1 -1
  8. package/dist/fileCreators/idb-interface/create.js +26 -15
  9. package/dist/fileCreators/idb-interface/create.js.map +1 -1
  10. package/dist/fileCreators/prisma-idb-client/classes/BaseIDBModelClass.js +15 -20
  11. package/dist/fileCreators/prisma-idb-client/classes/BaseIDBModelClass.js.map +1 -1
  12. package/dist/fileCreators/prisma-idb-client/classes/OutboxEventIDBClass.js +54 -20
  13. package/dist/fileCreators/prisma-idb-client/classes/OutboxEventIDBClass.js.map +1 -1
  14. package/dist/fileCreators/prisma-idb-client/classes/PrismaIDBClient.js +101 -42
  15. package/dist/fileCreators/prisma-idb-client/classes/PrismaIDBClient.js.map +1 -1
  16. package/dist/fileCreators/prisma-idb-client/classes/models/IDBModelClass.js +6 -6
  17. package/dist/fileCreators/prisma-idb-client/classes/models/IDBModelClass.js.map +1 -1
  18. package/dist/fileCreators/prisma-idb-client/classes/models/api/createMany.js +5 -5
  19. package/dist/fileCreators/prisma-idb-client/classes/models/api/createMany.js.map +1 -1
  20. package/dist/fileCreators/prisma-idb-client/classes/models/api/createManyAndReturn.js +3 -3
  21. package/dist/fileCreators/prisma-idb-client/classes/models/api/createManyAndReturn.js.map +1 -1
  22. package/dist/fileCreators/prisma-idb-client/classes/models/utils/_getNeededStoresForCreate.js +1 -1
  23. package/dist/fileCreators/prisma-idb-client/classes/models/utils/_getNeededStoresForCreate.js.map +1 -1
  24. package/dist/fileCreators/prisma-idb-client/classes/models/utils/_getNeededStoresForNestedDelete.js +1 -1
  25. package/dist/fileCreators/prisma-idb-client/classes/models/utils/_getNeededStoresForNestedDelete.js.map +1 -1
  26. package/dist/fileCreators/prisma-idb-client/classes/models/utils/_getNeededStoresForUpdate.js +1 -1
  27. package/dist/fileCreators/prisma-idb-client/classes/models/utils/_getNeededStoresForUpdate.js.map +1 -1
  28. package/dist/fileCreators/prisma-idb-client/create.js +4 -4
  29. package/dist/fileCreators/prisma-idb-client/create.js.map +1 -1
  30. package/dist/fileCreators/validators/create.js +1 -0
  31. package/dist/fileCreators/validators/create.js.map +1 -1
  32. package/package.json +10 -12
@@ -12,6 +12,14 @@ function createApplyPullFile(writer, models, versionMetaModelName) {
12
12
  writer.writeLine(` logsWithRecords: LogWithRecord<typeof validators>[];`);
13
13
  writer.writeLine(`};`);
14
14
  writer.blankLine();
15
+ writer.writeLine(`export type ApplyPullResult =`);
16
+ writer.block(() => {
17
+ writer.writeLine(`validationErrors: { model: string; error: unknown }[];`);
18
+ writer.writeLine(`missingRecords: number;`);
19
+ writer.writeLine(`staleRecords: number;`);
20
+ writer.writeLine(`totalAppliedRecords: number;`);
21
+ });
22
+ writer.blankLine();
15
23
  writer.writeLine(`/**`);
16
24
  writer.writeLine(` * Apply pulled changes from remote server to local IndexedDB.`);
17
25
  writer.writeLine(` * `);
@@ -23,7 +31,7 @@ function createApplyPullFile(writer, models, versionMetaModelName) {
23
31
  writer.writeLine(` * @param props.logsWithRecords - Array of change logs with validated records from server`);
24
32
  writer.writeLine(` * @returns Object with sync statistics including applied records, missing records, and validation errors`);
25
33
  writer.writeLine(` */`);
26
- writer.writeLine(`export async function applyPull(props: ApplyPullProps) `).block(() => {
34
+ writer.writeLine(`export async function applyPull(props: ApplyPullProps): Promise<ApplyPullResult> `).block(() => {
27
35
  writer.writeLine(`const { idbClient, logsWithRecords } = props;`);
28
36
  writer.blankLine();
29
37
  writer.writeLine(`let staleRecords = 0;`);
@@ -50,13 +58,6 @@ function createApplyPullFile(writer, models, versionMetaModelName) {
50
58
  writer.writeLine(`continue;`);
51
59
  });
52
60
  writer.blankLine();
53
- writer.writeLine(`const versionMeta = await idbClient.$versionMeta.get(model, keyPath, tx);`);
54
- writer.writeLine(`const lastAppliedChangeId = versionMeta?.lastAppliedChangeId ?? null;`);
55
- writer.writeLine(`if (lastAppliedChangeId !== null && lastAppliedChangeId >= changelogId) {`);
56
- writer.writeLine(` staleRecords++;`);
57
- writer.writeLine(` continue;`);
58
- writer.writeLine(`}`);
59
- writer.blankLine();
60
61
  writer.writeLine(`// Exit early if transaction was aborted during previous operations`);
61
62
  writer.writeLine(`if (txAborted)`).block(() => {
62
63
  writer.writeLine(`validationErrors.push({ model, error: new Error('Transaction was aborted') });`);
@@ -64,6 +65,13 @@ function createApplyPullFile(writer, models, versionMetaModelName) {
64
65
  });
65
66
  writer.blankLine();
66
67
  writer.writeLine(`try `).block(() => {
68
+ writer.writeLine(`const versionMeta = await idbClient.$versionMeta.get(model, keyPath, tx);`);
69
+ writer.writeLine(`const lastAppliedChangeId = versionMeta?.lastAppliedChangeId ?? null;`);
70
+ writer.writeLine(`if (lastAppliedChangeId !== null && lastAppliedChangeId >= changelogId) {`);
71
+ writer.writeLine(` staleRecords++;`);
72
+ writer.writeLine(` continue;`);
73
+ writer.writeLine(`}`);
74
+ writer.blankLine();
67
75
  models.forEach((model, index) => {
68
76
  const modelName = model.name;
69
77
  const camelCaseName = modelName.charAt(0).toLowerCase() + modelName.slice(1);
@@ -78,7 +86,7 @@ function createApplyPullFile(writer, models, versionMetaModelName) {
78
86
  writer.writeLine(`${condition} (model === '${modelName}') `).block(() => {
79
87
  writer.writeLine(`if (operation === 'delete') `).block(() => {
80
88
  writer.writeLine(`const validatedKeyPath = keyPathValidators.${modelName}.parse(keyPath);`);
81
- writer.writeLine(`await idbClient.${camelCaseName}.delete({ where: ${keyPathWhereClause} }, { silent: true, addToOutbox: false, tx });`);
89
+ writer.writeLine(`await idbClient.${camelCaseName}.deleteMany({ where: ${keyPathWhereClause} }, { silent: true, addToOutbox: false, tx });`);
82
90
  writer.writeLine(`totalAppliedRecords++;`);
83
91
  writer.writeLine(`// Mark as pulled with latest changelog ID`);
84
92
  writer.writeLine(`await idbClient.$versionMeta.markPulled(model, keyPath, changelogId, { tx });`);
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/fileCreators/apply-pull/create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/fileCreators/apply-pull/create.ts"],"names":[],"mappings":"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"}
@@ -159,16 +159,30 @@ function createBatchProcessorFile(writer, models, prismaClientImport, rootModel)
159
159
  });
160
160
  writer.blankLine();
161
161
  const dag = (0, createDAG_1.createDAG)(models, rootModel);
162
- writer.writeLine(`export async function materializeLogs({`);
163
- writer.writeLine(` logs,`);
162
+ writer.writeLine(`export async function pullAndMaterializeLogs({`);
164
163
  writer.writeLine(` prisma,`);
165
164
  writer.writeLine(` scopeKey,`);
165
+ writer.writeLine(` lastChangelogId,`);
166
166
  writer.writeLine(`}: {`);
167
- writer.writeLine(` logs: Array<ChangeLog>;`);
168
167
  writer.writeLine(` prisma: PrismaClient;`);
169
168
  writer.writeLine(` scopeKey: string;`);
169
+ writer.writeLine(` lastChangelogId?: string;`);
170
170
  writer.writeLine(`}): Promise<Array<LogWithRecord<typeof validators>>>`);
171
171
  writer.block(() => {
172
+ writer
173
+ .writeLine(`const logs = await prisma.changeLog.findMany(`)
174
+ .block(() => {
175
+ writer
176
+ .writeLine(`where: `)
177
+ .block(() => {
178
+ writer.writeLine(`scopeKey,`);
179
+ writer.writeLine(`id: { gt: lastChangelogId },`);
180
+ })
181
+ .write(`, `)
182
+ .writeLine(`orderBy: { id: "asc" },`)
183
+ .writeLine(`take: 50`);
184
+ })
185
+ .writeLine(`);`);
172
186
  writer.writeLine(`const validModelNames = [${modelNames.map((name) => `"${name}"`).join(", ")}];`);
173
187
  writer.writeLine(`const results: Array<LogWithRecord<typeof validators>> = [];`);
174
188
  writer.writeLine(`for (const log of logs) {`);
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/fileCreators/batch-processor/create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/fileCreators/batch-processor/create.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,12 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createIDBInterfaceFile = createIDBInterfaceFile;
4
4
  const utils_1 = require("../../helpers/utils");
5
- function createIDBInterfaceFile(writer, models, prismaClientImport, outboxSync = false, outboxModelName = "OutboxEvent", versionMetaModelName = "VersionMeta") {
5
+ function createIDBInterfaceFile(writer, models, prismaClientImport, outboxSync, outboxModelName, versionMetaModelName) {
6
6
  writer.writeLine(`import type { DBSchema } from "idb";`);
7
7
  writer.writeLine(`import type * as Prisma from "${prismaClientImport}";`);
8
8
  if (outboxSync) {
9
9
  writer.writeLine(`import type { PushResult } from "../server/batch-processor";`);
10
+ writer.writeLine(`import type { ApplyPullResult } from "./apply-pull";`);
10
11
  }
11
12
  writer.blankLine();
12
13
  writer.writeLine(`export interface PrismaIDBSchema extends DBSchema`).block(() => {
@@ -57,6 +58,7 @@ function addOutboxEventTypeDefinition(writer) {
57
58
  .writeLine(`lastError: string | null;`)
58
59
  .writeLine(`synced: boolean;`)
59
60
  .writeLine(`syncedAt: Date | null;`)
61
+ .writeLine(`lastAttemptedAt: Date | null;`)
60
62
  .writeLine(`retryable: boolean;`);
61
63
  });
62
64
  writer.writeLine(`export interface ChangeMetaRecord`).block(() => {
@@ -106,30 +108,39 @@ function addSyncWorkerTypes(writer) {
106
108
  .writeLine(` * Returns immediately if worker is stopped or a sync is already in progress.`)
107
109
  .writeLine(` * Use syncNow() to trigger a one-off sync without starting the worker.`)
108
110
  .writeLine(` */`)
109
- .writeLine(`forceSync(): Promise<void>;`)
111
+ .writeLine(`forceSync(options?: { overrideBackoff?: boolean }): Promise<void>;`)
110
112
  .writeLine(`/**`)
111
113
  .writeLine(` * Execute a single sync cycle immediately without starting the worker.`)
112
114
  .writeLine(` * Returns immediately if a sync is already in progress.`)
113
115
  .writeLine(` * Does not require the worker to be running (started).`)
114
116
  .writeLine(` */`)
115
- .writeLine(`syncNow(): Promise<void>;`)
117
+ .writeLine(`syncNow(options?: { overrideBackoff?: boolean }): Promise<void>;`)
116
118
  .writeLine(`/**`)
117
119
  .writeLine(` * Get current sync worker status snapshot.`)
118
120
  .writeLine(` * Listen to 'statuschange' events via .on() to get updates.`)
119
121
  .writeLine(` */`)
120
122
  .writeLine(`readonly status: SyncWorkerStatus;`)
121
- .writeLine(`/**`)
122
- .writeLine(` * Listen for status changes.`)
123
- .writeLine(` * @param event Event name (only 'statuschange' supported)`)
124
- .writeLine(` * @param callback Function called whenever status changes`)
125
- .writeLine(` * @returns Unsubscribe function`)
126
- .writeLine(` * @example`)
127
- .writeLine(` * const unsubscribe = worker.on('statuschange', () => {`)
128
- .writeLine(` * console.log('Status:', worker.status);`)
129
- .writeLine(` * });`)
130
- .writeLine(` * // Later: unsubscribe()`)
131
- .writeLine(` */`)
132
- .writeLine(`on(event: 'statuschange', callback: () => void): () => void;`);
123
+ .writeLine("/**")
124
+ .writeLine(" * Listen for status changes.")
125
+ .writeLine(" * @param event Event name ('statuschange', 'pullcompleted' or 'pushcompleted')")
126
+ .writeLine(" * @param callback Function called whenever the event fires")
127
+ .writeLine(" * @returns Unsubscribe function")
128
+ .writeLine(" * @example")
129
+ .writeLine(" * const unsubscribe = worker.on('statuschange', (e) => {")
130
+ .writeLine(" * console.log('Status:', worker.status);")
131
+ .writeLine(" * });")
132
+ .writeLine(" * // Later: unsubscribe()")
133
+ .writeLine(" */")
134
+ .writeLine("on<E extends 'statuschange' | 'pullcompleted' | 'pushcompleted'>(")
135
+ .writeLine(" event: E,")
136
+ .writeLine(" callback: (")
137
+ .writeLine(" e: E extends 'statuschange'")
138
+ .writeLine(" ? CustomEvent<{ status: 'STOPPED' | 'IDLE' | 'PUSHING' | 'PULLING'; isLooping: boolean; lastSyncTime: Date | null; lastError: Error | null }>")
139
+ .writeLine(" : E extends 'pullcompleted'")
140
+ .writeLine(" ? CustomEvent<ApplyPullResult>")
141
+ .writeLine(" : CustomEvent<{ results: PushResult[] }>")
142
+ .writeLine(" ) => void")
143
+ .writeLine("): () => void;");
133
144
  });
134
145
  }
135
146
  //# sourceMappingURL=create.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/fileCreators/idb-interface/create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/fileCreators/idb-interface/create.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.addBaseModelClass = addBaseModelClass;
4
- function addBaseModelClass(writer, outboxSync = false, outboxModelName = "OutboxEvent") {
4
+ function addBaseModelClass(writer, outboxSync = false) {
5
5
  writer.writeLine(`class BaseIDBModelClass<T extends keyof PrismaIDBSchema>`).block(() => {
6
6
  writer
7
7
  .writeLine(`protected client: PrismaIDBClient;`)
@@ -16,10 +16,10 @@ function addBaseModelClass(writer, outboxSync = false, outboxModelName = "Outbox
16
16
  .writeLine(`this.modelName = modelName;`)
17
17
  .writeLine(`this.eventEmitter = new EventTarget();`);
18
18
  });
19
- addEventEmitters(writer, outboxSync, outboxModelName);
19
+ addEventEmitters(writer, outboxSync);
20
20
  });
21
21
  }
22
- function addEventEmitters(writer, outboxSync, outboxModelName = "OutboxEvent") {
22
+ function addEventEmitters(writer, outboxSync) {
23
23
  writer
24
24
  .writeLine(`subscribe(event: "create" | "update" | "delete" | ("create" | "update" | "delete")[], callback: (e: CustomEventInit<{ keyPath: PrismaIDBSchema[T]["key"]; oldKeyPath?: PrismaIDBSchema[T]["key"] }>) => void)`)
25
25
  .block(() => {
@@ -62,24 +62,19 @@ function addEventEmitters(writer, outboxSync, outboxModelName = "OutboxEvent") {
62
62
  writer.blankLine();
63
63
  writer.writeLine(`if (opts?.addToOutbox !== false && this.client.shouldTrackModel(this.modelName))`).block(() => {
64
64
  writer
65
- .writeLine(`if (opts?.tx) {`)
66
- .writeLine(`const outboxStore = opts.tx.objectStore("${outboxModelName}");`)
67
- .writeLine(`const outboxEvent: OutboxEventRecord = {`)
68
- .writeLine(`id: crypto.randomUUID(),`)
69
- .writeLine(`createdAt: new Date(),`)
70
- .writeLine(`synced: false,`)
71
- .writeLine(`syncedAt: null,`)
72
- .writeLine(`tries: 0,`)
73
- .writeLine(`lastError: null,`)
74
- .writeLine(`entityType: this.modelName,`)
75
- .writeLine(`operation: event,`)
76
- .writeLine(`payload: record ?? keyPath,`)
77
- .writeLine(`retryable: true,`)
78
- .writeLine(`};`)
79
- .writeLine(`await outboxStore.add(outboxEvent);`)
65
+ .writeLine(`await this.client.$outbox.create(`)
66
+ .block(() => {
67
+ writer
68
+ .writeLine(`data: {`)
69
+ .writeLine(`entityType: this.modelName,`)
70
+ .writeLine(`operation: event,`)
71
+ .writeLine(`payload: record ?? keyPath,`)
72
+ .writeLine(`},`);
73
+ })
74
+ .writeLine(`, { tx: opts?.tx }`)
75
+ .writeLine(`);`)
80
76
  .blankLine()
81
- .writeLine(`await this.client.$versionMeta.markLocalPending(this.modelName, keyPath, { tx: opts.tx });`)
82
- .writeLine(`}`);
77
+ .writeLine(`await this.client.$versionMeta.markLocalPending(this.modelName, keyPath, { tx: opts?.tx });`);
83
78
  });
84
79
  });
85
80
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BaseIDBModelClass.js","sourceRoot":"","sources":["../../../../src/fileCreators/prisma-idb-client/classes/BaseIDBModelClass.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseIDBModelClass.js","sourceRoot":"","sources":["../../../../src/fileCreators/prisma-idb-client/classes/BaseIDBModelClass.ts"],"names":[],"mappings":"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"}