@workglow/indexeddb 0.2.37 → 0.3.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.
- package/dist/job-queue/IndexedDbJobStore.d.ts +14 -1
- package/dist/job-queue/IndexedDbJobStore.d.ts.map +1 -1
- package/dist/job-queue/IndexedDbQueueStorage.d.ts +17 -0
- package/dist/job-queue/IndexedDbQueueStorage.d.ts.map +1 -1
- package/dist/job-queue/browser.js +52 -1
- package/dist/job-queue/browser.js.map +4 -4
- package/dist/job-queue/node.js +52 -1
- package/dist/job-queue/node.js.map +4 -4
- package/dist/migrations/IndexedDbMigrationRunner.d.ts +12 -0
- package/dist/migrations/IndexedDbMigrationRunner.d.ts.map +1 -1
- package/dist/storage/IndexedDbTabularStorage.d.ts +13 -0
- package/dist/storage/IndexedDbTabularStorage.d.ts.map +1 -1
- package/package.json +7 -7
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2026 Steven Roussey <sroussey@gmail.com>
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import type { IJobStore, JobRecord, JobStatus, MessageId } from "@workglow/job-queue";
|
|
6
|
+
import type { IJobStore, JobRecord, JobStatus, JobStorageFormat, MessageId, SendOptions } from "@workglow/job-queue";
|
|
7
7
|
import type { PendingIndexedDbWrite } from "./IndexedDbMessageQueue";
|
|
8
8
|
import type { IndexedDbQueueStorage } from "./IndexedDbQueueStorage";
|
|
9
9
|
export declare class IndexedDbJobStore<Input, Output> implements IJobStore<Input, Output> {
|
|
@@ -25,5 +25,18 @@ export declare class IndexedDbJobStore<Input, Output> implements IJobStore<Input
|
|
|
25
25
|
deleteAll(): Promise<void>;
|
|
26
26
|
abort(id: MessageId): Promise<void>;
|
|
27
27
|
saveStatus(id: MessageId, status: JobStatus): Promise<void>;
|
|
28
|
+
create(body: JobStorageFormat<Input, Output>, opts: SendOptions): Promise<MessageId>;
|
|
29
|
+
findActiveByFingerprint(fingerprint: string, _queueName: string): Promise<JobRecord<Input, Output> | undefined>;
|
|
30
|
+
getMany(ids: readonly MessageId[]): Promise<readonly (JobRecord<Input, Output> | undefined)[]>;
|
|
31
|
+
completeWithResult(id: MessageId, result: Output): Promise<void>;
|
|
32
|
+
failWithError(id: MessageId, opts: {
|
|
33
|
+
readonly error?: string | null;
|
|
34
|
+
readonly errorCode?: string | null;
|
|
35
|
+
readonly abortRequested?: boolean;
|
|
36
|
+
}): Promise<void>;
|
|
37
|
+
markEnqueueDeferred(id: MessageId, opts: {
|
|
38
|
+
readonly visible_at: Date;
|
|
39
|
+
readonly errorCode: string;
|
|
40
|
+
}): Promise<void>;
|
|
28
41
|
}
|
|
29
42
|
//# sourceMappingURL=IndexedDbJobStore.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IndexedDbJobStore.d.ts","sourceRoot":"","sources":["../../src/job-queue/IndexedDbJobStore.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"IndexedDbJobStore.d.ts","sourceRoot":"","sources":["../../src/job-queue/IndexedDbJobStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -143,6 +143,7 @@ export declare class IndexedDbQueueStorage<Input, Output> implements IQueueStora
|
|
|
143
143
|
progress?: number;
|
|
144
144
|
progress_message?: string;
|
|
145
145
|
progress_details?: Record<string, any> | null;
|
|
146
|
+
visible_at?: string | null;
|
|
146
147
|
}): Promise<void>;
|
|
147
148
|
/**
|
|
148
149
|
* Deletes all jobs from the queue.
|
|
@@ -156,6 +157,9 @@ export declare class IndexedDbQueueStorage<Input, Output> implements IQueueStora
|
|
|
156
157
|
* Saves progress updates for a job.
|
|
157
158
|
*/
|
|
158
159
|
saveProgress(id: unknown, progress: number, message: string, details: Record<string, any> | null): Promise<void>;
|
|
160
|
+
/**
|
|
161
|
+
* Persists a job to the store without modifying attempts or other completion logic.
|
|
162
|
+
*/
|
|
159
163
|
private put;
|
|
160
164
|
/**
|
|
161
165
|
* Deletes a job by its ID.
|
|
@@ -167,7 +171,20 @@ export declare class IndexedDbQueueStorage<Input, Output> implements IQueueStora
|
|
|
167
171
|
* @param olderThanMs - Delete jobs completed more than this many milliseconds ago
|
|
168
172
|
*/
|
|
169
173
|
deleteJobsByStatusAndAge(status: JobStatus, olderThanMs: number): Promise<void>;
|
|
174
|
+
/**
|
|
175
|
+
* Gets all jobs from the queue that match the current prefix values.
|
|
176
|
+
* Used internally for normal polling-based subscriptions (efficient - filters at DB level).
|
|
177
|
+
*
|
|
178
|
+
* @returns A promise that resolves to an array of jobs
|
|
179
|
+
*/
|
|
170
180
|
private getAllJobs;
|
|
181
|
+
/**
|
|
182
|
+
* Gets all jobs from the queue with a custom prefix filter.
|
|
183
|
+
* Used for subscriptions with custom prefix filters (filters at DB level where possible).
|
|
184
|
+
*
|
|
185
|
+
* @param prefixFilter - The prefix values to filter by (empty object = all jobs)
|
|
186
|
+
* @returns A promise that resolves to an array of jobs
|
|
187
|
+
*/
|
|
171
188
|
private getAllJobsWithFilter;
|
|
172
189
|
/**
|
|
173
190
|
* Checks if a prefix filter is custom (different from instance's prefixes).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IndexedDbQueueStorage.d.ts","sourceRoot":"","sources":["../../src/job-queue/IndexedDbQueueStorage.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"IndexedDbQueueStorage.d.ts","sourceRoot":"","sources":["../../src/job-queue/IndexedDbQueueStorage.ts"],"names":[],"mappings":"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"}
|
|
@@ -752,6 +752,8 @@ class IndexedDbQueueStorage {
|
|
|
752
752
|
updated.progress_message = fields.progress_message ?? "";
|
|
753
753
|
if ("progress_details" in fields)
|
|
754
754
|
updated.progress_details = fields.progress_details ?? null;
|
|
755
|
+
if ("visible_at" in fields)
|
|
756
|
+
updated.visible_at = fields.visible_at ?? null;
|
|
755
757
|
await this.put(updated);
|
|
756
758
|
}
|
|
757
759
|
async deleteAll() {
|
|
@@ -1229,6 +1231,55 @@ class IndexedDbJobStore {
|
|
|
1229
1231
|
async saveStatus(id, status) {
|
|
1230
1232
|
await this.core.saveStatus(id, status);
|
|
1231
1233
|
}
|
|
1234
|
+
async create(body, opts) {
|
|
1235
|
+
const enriched = {
|
|
1236
|
+
...body,
|
|
1237
|
+
fingerprint: opts.fingerprint ?? body.fingerprint,
|
|
1238
|
+
job_run_id: opts.jobRunId ?? body.job_run_id,
|
|
1239
|
+
max_attempts: opts.maxAttempts ?? body.max_attempts,
|
|
1240
|
+
deadline_at: opts.timeoutSeconds != null ? new Date(Date.now() + opts.timeoutSeconds * 1000).toISOString() : body.deadline_at
|
|
1241
|
+
};
|
|
1242
|
+
return this.core.add(enriched);
|
|
1243
|
+
}
|
|
1244
|
+
async findActiveByFingerprint(fingerprint, _queueName) {
|
|
1245
|
+
const [pending, processing] = await Promise.all([
|
|
1246
|
+
this.core.peek("PENDING"),
|
|
1247
|
+
this.core.peek("PROCESSING")
|
|
1248
|
+
]);
|
|
1249
|
+
return [...pending, ...processing].find((j) => j.fingerprint === fingerprint);
|
|
1250
|
+
}
|
|
1251
|
+
async getMany(ids) {
|
|
1252
|
+
return Promise.all(ids.map((id) => this.core.get(id)));
|
|
1253
|
+
}
|
|
1254
|
+
async completeWithResult(id, result) {
|
|
1255
|
+
this.pending.delete(id);
|
|
1256
|
+
await this.core.finalize(id, {
|
|
1257
|
+
output: result,
|
|
1258
|
+
error: null,
|
|
1259
|
+
error_code: null,
|
|
1260
|
+
status: "COMPLETED",
|
|
1261
|
+
completed_at: new Date().toISOString()
|
|
1262
|
+
});
|
|
1263
|
+
}
|
|
1264
|
+
async failWithError(id, opts) {
|
|
1265
|
+
this.pending.delete(id);
|
|
1266
|
+
const current = await this.core.get(id);
|
|
1267
|
+
const now = new Date().toISOString();
|
|
1268
|
+
const abortRequestedAt = opts.abortRequested === true ? current?.abort_requested_at ?? now : current?.abort_requested_at ?? null;
|
|
1269
|
+
await this.core.finalize(id, {
|
|
1270
|
+
..."error" in opts ? { error: opts.error ?? null } : {},
|
|
1271
|
+
..."errorCode" in opts ? { error_code: opts.errorCode ?? null } : {},
|
|
1272
|
+
abort_requested_at: abortRequestedAt,
|
|
1273
|
+
status: "FAILED",
|
|
1274
|
+
completed_at: current?.completed_at ?? now
|
|
1275
|
+
});
|
|
1276
|
+
}
|
|
1277
|
+
async markEnqueueDeferred(id, opts) {
|
|
1278
|
+
await this.core.finalize(id, {
|
|
1279
|
+
visible_at: opts.visible_at.toISOString(),
|
|
1280
|
+
error_code: opts.errorCode
|
|
1281
|
+
});
|
|
1282
|
+
}
|
|
1232
1283
|
}
|
|
1233
1284
|
// src/job-queue/createIndexedDbQueue.ts
|
|
1234
1285
|
function createIndexedDbQueue(queueName, opts) {
|
|
@@ -1595,4 +1646,4 @@ export {
|
|
|
1595
1646
|
INDEXED_DB_QUEUE_STORAGE
|
|
1596
1647
|
};
|
|
1597
1648
|
|
|
1598
|
-
//# debugId=
|
|
1649
|
+
//# debugId=89B6FF01B7C5033864756E2164756E21
|