@workglow/indexeddb 0.2.36 → 0.2.37
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 +29 -0
- package/dist/job-queue/IndexedDbJobStore.d.ts.map +1 -0
- package/dist/job-queue/IndexedDbMessageQueue.d.ts +38 -0
- package/dist/job-queue/IndexedDbMessageQueue.d.ts.map +1 -0
- package/dist/job-queue/IndexedDbQueueStorage.d.ts +38 -7
- package/dist/job-queue/IndexedDbQueueStorage.d.ts.map +1 -1
- package/dist/job-queue/IndexedDbRateLimiterStorage.d.ts +1 -2
- package/dist/job-queue/IndexedDbRateLimiterStorage.d.ts.map +1 -1
- package/dist/job-queue/browser.js +415 -60
- package/dist/job-queue/browser.js.map +10 -7
- package/dist/job-queue/common.d.ts +3 -0
- package/dist/job-queue/common.d.ts.map +1 -1
- package/dist/job-queue/createIndexedDbQueue.d.ts +20 -0
- package/dist/job-queue/createIndexedDbQueue.d.ts.map +1 -0
- package/dist/job-queue/node.js +415 -60
- package/dist/job-queue/node.js.map +10 -7
- package/dist/migrations/indexedDbQueueMigrations.d.ts +11 -5
- package/dist/migrations/indexedDbQueueMigrations.d.ts.map +1 -1
- package/dist/storage/IndexedDbKvStorage.d.ts +1 -1
- package/dist/storage/IndexedDbKvStorage.d.ts.map +1 -1
- package/dist/storage/IndexedDbTabularStorage.d.ts +1 -1
- package/dist/storage/IndexedDbTabularStorage.d.ts.map +1 -1
- package/dist/storage/IndexedDbVectorStorage.d.ts +2 -2
- package/dist/storage/IndexedDbVectorStorage.d.ts.map +1 -1
- package/dist/storage/browser.js +9 -9
- package/dist/storage/browser.js.map +5 -5
- package/dist/storage/node.js +9 -9
- package/dist/storage/node.js.map +5 -5
- package/package.json +7 -7
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Steven Roussey <sroussey@gmail.com>
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type { IJobStore, JobRecord, JobStatus, MessageId } from "@workglow/job-queue";
|
|
7
|
+
import type { PendingIndexedDbWrite } from "./IndexedDbMessageQueue";
|
|
8
|
+
import type { IndexedDbQueueStorage } from "./IndexedDbQueueStorage";
|
|
9
|
+
export declare class IndexedDbJobStore<Input, Output> implements IJobStore<Input, Output> {
|
|
10
|
+
/** @internal — shared with the paired message queue */
|
|
11
|
+
readonly core: IndexedDbQueueStorage<Input, Output>;
|
|
12
|
+
/** @internal — shared transient buffer for saveResult/saveError. */
|
|
13
|
+
private readonly pending;
|
|
14
|
+
constructor(core: IndexedDbQueueStorage<Input, Output>, pending: Map<unknown, PendingIndexedDbWrite<Output>>);
|
|
15
|
+
get(id: MessageId): Promise<JobRecord<Input, Output> | undefined>;
|
|
16
|
+
peek(status?: JobStatus, num?: number): Promise<readonly JobRecord<Input, Output>[]>;
|
|
17
|
+
size(status?: JobStatus): Promise<number>;
|
|
18
|
+
getByRunId(runId: string): Promise<readonly JobRecord<Input, Output>[]>;
|
|
19
|
+
outputForInput(input: Input): Promise<Output | null>;
|
|
20
|
+
saveProgress(id: MessageId, progress: number, message: string, details: Record<string, any> | null): Promise<void>;
|
|
21
|
+
saveResult(id: MessageId, output: Output): Promise<void>;
|
|
22
|
+
saveError(id: MessageId, error: string, errorCode: string | null, abortRequested: boolean): Promise<void>;
|
|
23
|
+
deleteByStatusAndAge(status: JobStatus, olderThanMs: number): Promise<void>;
|
|
24
|
+
delete(id: MessageId): Promise<void>;
|
|
25
|
+
deleteAll(): Promise<void>;
|
|
26
|
+
abort(id: MessageId): Promise<void>;
|
|
27
|
+
saveStatus(id: MessageId, status: JobStatus): Promise<void>;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=IndexedDbJobStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IndexedDbJobStore.d.ts","sourceRoot":"","sources":["../../src/job-queue/IndexedDbJobStore.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAErE,qBAAa,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAE,YAAW,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC;IAC/E,uDAAuD;IACvD,SAAgB,IAAI,EAAE,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAE3D,oEAAoE;IACpE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8C;IAEtE,YACE,IAAI,EAAE,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,EAC1C,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAC,EAIrD;IAED,GAAG,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC,CAEhE;IAEK,IAAI,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAEzF;IAED,IAAI,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAExC;IAEK,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAE5E;IAED,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAEnD;IAEK,YAAY,CAChB,EAAE,EAAE,SAAS,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAClC,OAAO,CAAC,IAAI,CAAC,CAEf;IAEK,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAI7D;IAEK,SAAS,CACb,EAAE,EAAE,SAAS,EACb,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,cAAc,EAAE,OAAO,GACtB,OAAO,CAAC,IAAI,CAAC,CAMf;IAEK,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEhF;IAEK,MAAM,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAGzC;IAEK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAG/B;IAEK,KAAK,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAExC;IAEK,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAEhE;CACF"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Steven Roussey <sroussey@gmail.com>
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type { IClaim, IMessageQueue, JobStorageFormat, MessageId, QueueChangePayload, QueueStorageScope, QueueSubscribeOptions, SendOptions } from "@workglow/job-queue";
|
|
7
|
+
import { IndexedDbQueueStorage } from "./IndexedDbQueueStorage";
|
|
8
|
+
/**
|
|
9
|
+
* Per-id buffer that lets {@link IJobStore.saveResult}/{@link IJobStore.saveError}
|
|
10
|
+
* stage output/error until the terminal claim.ack()/fail() persists them in
|
|
11
|
+
* a single complete() call (avoids double-bumping `attempts`).
|
|
12
|
+
*/
|
|
13
|
+
export type PendingIndexedDbWrite<Output> = {
|
|
14
|
+
output?: Output | null;
|
|
15
|
+
error?: string | null;
|
|
16
|
+
errorCode?: string | null;
|
|
17
|
+
abortRequested?: boolean;
|
|
18
|
+
};
|
|
19
|
+
export declare class IndexedDbMessageQueue<Input, Output> implements IMessageQueue<JobStorageFormat<Input, Output>> {
|
|
20
|
+
readonly scope: QueueStorageScope;
|
|
21
|
+
/** @internal — shared with the paired job store */
|
|
22
|
+
readonly core: IndexedDbQueueStorage<Input, Output>;
|
|
23
|
+
/** @internal — shared transient buffer for saveResult/saveError. */
|
|
24
|
+
private readonly pending;
|
|
25
|
+
constructor(core: IndexedDbQueueStorage<Input, Output>, pending: Map<unknown, PendingIndexedDbWrite<Output>>);
|
|
26
|
+
send(body: JobStorageFormat<Input, Output>, opts?: SendOptions): Promise<MessageId>;
|
|
27
|
+
sendBatch(bodies: readonly JobStorageFormat<Input, Output>[], opts?: SendOptions): Promise<readonly MessageId[]>;
|
|
28
|
+
receive(opts: {
|
|
29
|
+
workerId: string;
|
|
30
|
+
leaseMs: number;
|
|
31
|
+
max?: number;
|
|
32
|
+
}): Promise<readonly IClaim<JobStorageFormat<Input, Output>>[]>;
|
|
33
|
+
releaseClaim(id: MessageId): Promise<void>;
|
|
34
|
+
migrate(): Promise<void>;
|
|
35
|
+
getMigrations(): ReadonlyArray<unknown>;
|
|
36
|
+
subscribeToChanges(callback: (change: QueueChangePayload<any, any>) => void, options?: QueueSubscribeOptions): () => void;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=IndexedDbMessageQueue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IndexedDbMessageQueue.d.ts","sourceRoot":"","sources":["../../src/job-queue/IndexedDbMessageQueue.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,MAAM,EACN,aAAa,EACb,gBAAgB,EAChB,SAAS,EACT,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,WAAW,EACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,CAAC,MAAM,IAAI;IAC1C,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAqGF,qBAAa,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAE,YAAW,aAAa,CACxE,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,CAChC;IACC,SAAgB,KAAK,EAAE,iBAAiB,CAAa;IAErD,mDAAmD;IACnD,SAAgB,IAAI,EAAE,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAE3D,oEAAoE;IACpE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8C;IAEtE,YACE,IAAI,EAAE,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,EAC1C,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAC,EAIrD;IAEK,IAAI,CAAC,IAAI,EAAE,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,CAExF;IAEK,SAAS,CACb,MAAM,EAAE,SAAS,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAClD,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,SAAS,SAAS,EAAE,CAAC,CAM/B;IAEK,OAAO,CAAC,IAAI,EAAE;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,GAAG,OAAO,CAAC,SAAS,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAkB9D;IAEK,YAAY,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAG/C;IAEK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAE7B;IAED,aAAa,IAAI,aAAa,CAAC,OAAO,CAAC,CAEtC;IAED,kBAAkB,CAChB,QAAQ,EAAE,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,IAAI,EACxD,OAAO,CAAC,EAAE,qBAAqB,GAC9B,MAAM,IAAI,CAEZ;CACF"}
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
* Copyright 2025 Steven Roussey <sroussey@gmail.com>
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { JobStatus } from "@workglow/job-queue";
|
|
7
6
|
import type { IQueueStorage, JobStorageFormat, PrefixColumn, QueueChangePayload, QueueStorageOptions, QueueSubscribeOptions } from "@workglow/job-queue";
|
|
7
|
+
import { JobStatus } from "@workglow/job-queue";
|
|
8
8
|
export declare const INDEXED_DB_QUEUE_STORAGE: import("@workglow/util").ServiceToken<IQueueStorage<any, any>>;
|
|
9
9
|
/**
|
|
10
10
|
* Extended options for IndexedDB queue storage including prefix support.
|
|
@@ -78,9 +78,9 @@ export declare class IndexedDbQueueStorage<Input, Output> implements IQueueStora
|
|
|
78
78
|
*/
|
|
79
79
|
peek(status?: JobStatus, num?: number): Promise<JobStorageFormat<Input, Output>[]>;
|
|
80
80
|
/**
|
|
81
|
-
* Retrieves the next job from the queue using optimistic locking.
|
|
82
|
-
*
|
|
83
|
-
*
|
|
81
|
+
* Retrieves the next job from the queue using optimistic locking.
|
|
82
|
+
* Claims PENDING jobs ready to run, and also reclaims PROCESSING jobs whose
|
|
83
|
+
* lease has expired (crash recovery). Sets lease_expires_at on the claimed row.
|
|
84
84
|
*
|
|
85
85
|
* IndexedDB uses snapshot isolation, so concurrent transactions can both see the same
|
|
86
86
|
* PENDING job. To prevent processing the same job multiple times, this method:
|
|
@@ -89,9 +89,19 @@ export declare class IndexedDbQueueStorage<Input, Output> implements IQueueStora
|
|
|
89
89
|
* 3. If another worker claimed it first (different claim token), returns undefined
|
|
90
90
|
*
|
|
91
91
|
* @param workerId - Worker ID to associate with the job (required)
|
|
92
|
+
* @param opts - Optional options including leaseMs (default 30000)
|
|
92
93
|
* @returns A promise that resolves to the next job or undefined if the queue is empty.
|
|
93
94
|
*/
|
|
94
|
-
next(workerId: string
|
|
95
|
+
next(workerId: string, opts?: {
|
|
96
|
+
leaseMs?: number;
|
|
97
|
+
}): Promise<JobStorageFormat<Input, Output> | undefined>;
|
|
98
|
+
/**
|
|
99
|
+
* Extend the lease on a currently PROCESSING job.
|
|
100
|
+
* @param id - The ID of the job to extend the lease for
|
|
101
|
+
* @param workerId - Worker ID that must match the current lease owner (lease_owner)
|
|
102
|
+
* @param ms - Number of milliseconds to extend the lease by
|
|
103
|
+
*/
|
|
104
|
+
extendLease(id: unknown, workerId: string, ms: number): Promise<void>;
|
|
95
105
|
/**
|
|
96
106
|
* Retrieves the number of jobs in the queue.
|
|
97
107
|
* Returns the count of jobs in the queue.
|
|
@@ -104,15 +114,36 @@ export declare class IndexedDbQueueStorage<Input, Output> implements IQueueStora
|
|
|
104
114
|
/**
|
|
105
115
|
* Releases a claimed job without consuming a retry attempt.
|
|
106
116
|
*/
|
|
107
|
-
|
|
117
|
+
releaseClaim(id: unknown): Promise<void>;
|
|
108
118
|
/**
|
|
109
|
-
* Aborts a job
|
|
119
|
+
* Aborts a job.
|
|
120
|
+
* - If PENDING: immediately mark as FAILED with abort_requested_at set.
|
|
121
|
+
* - If PROCESSING: set abort_requested_at only (leave status as PROCESSING).
|
|
122
|
+
* - Otherwise: no-op.
|
|
110
123
|
*/
|
|
111
124
|
abort(id: unknown): Promise<void>;
|
|
125
|
+
/** Force-overwrite status without touching attempts (used to persist DISABLED after lease release). */
|
|
126
|
+
saveStatus(id: unknown, status: string): Promise<void>;
|
|
112
127
|
/**
|
|
113
128
|
* Gets jobs by their run ID.
|
|
114
129
|
*/
|
|
115
130
|
getByRunId(job_run_id: string): Promise<JobStorageFormat<Input, Output>[]>;
|
|
131
|
+
/**
|
|
132
|
+
* Terminal write that does NOT bump `attempts`. See IQueueStorage.finalize
|
|
133
|
+
* for the rationale (avoids double-counting on ack/fail).
|
|
134
|
+
*/
|
|
135
|
+
finalize(id: unknown, fields: {
|
|
136
|
+
output?: Output | null;
|
|
137
|
+
error?: string | null;
|
|
138
|
+
error_code?: string | null;
|
|
139
|
+
status?: JobStatus;
|
|
140
|
+
completed_at?: string | null;
|
|
141
|
+
abort_requested_at?: string | null;
|
|
142
|
+
lease_owner?: string | null;
|
|
143
|
+
progress?: number;
|
|
144
|
+
progress_message?: string;
|
|
145
|
+
progress_details?: Record<string, any> | null;
|
|
146
|
+
}): Promise<void>;
|
|
116
147
|
/**
|
|
117
148
|
* Deletes all jobs from the queue.
|
|
118
149
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IndexedDbQueueStorage.d.ts","sourceRoot":"","sources":["../../src/job-queue/IndexedDbQueueStorage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"IndexedDbQueueStorage.d.ts","sourceRoot":"","sources":["../../src/job-queue/IndexedDbQueueStorage.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,8 +3,7 @@
|
|
|
3
3
|
* Copyright 2025 Steven Roussey <sroussey@gmail.com>
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import type { PrefixColumn } from "@workglow/job-queue";
|
|
7
|
-
import type { IRateLimiterStorage, RateLimiterStorageOptions, RateLimiterStorageScope } from "@workglow/job-queue";
|
|
6
|
+
import type { IRateLimiterStorage, PrefixColumn, RateLimiterStorageOptions, RateLimiterStorageScope } from "@workglow/job-queue";
|
|
8
7
|
export declare const INDEXED_DB_RATE_LIMITER_STORAGE: import("@workglow/util").ServiceToken<IRateLimiterStorage>;
|
|
9
8
|
/**
|
|
10
9
|
* Extended options for IndexedDB rate limiter storage including prefix support.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IndexedDbRateLimiterStorage.d.ts","sourceRoot":"","sources":["../../src/job-queue/IndexedDbRateLimiterStorage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"IndexedDbRateLimiterStorage.d.ts","sourceRoot":"","sources":["../../src/job-queue/IndexedDbRateLimiterStorage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,mBAAmB,EACnB,YAAY,EACZ,yBAAyB,EACzB,uBAAuB,EACxB,MAAM,qBAAqB,CAAC;AAM7B,eAAO,MAAM,+BAA+B,4DAE3C,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,kCAAmC,SAAQ,yBAAyB;CAAG;AAqBxF;;;;;;;;GAQG;AACH,qBAAa,2BAA4B,YAAW,mBAAmB;IACrE;;;;OAIG;IACH,SAAgB,KAAK,EAAE,uBAAuB,CAAa;IAC3D,OAAO,CAAC,WAAW,CAA0B;IAC7C,OAAO,CAAC,eAAe,CAA0B;IACjD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAS;IAC5C,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAS;IAChD,oCAAoC;IACpC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,CAAC;IACrD,sCAAsC;IACtC,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC;IAE3E,YAAY,OAAO,GAAE,kCAAuC,EAa3D;IAED;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;OAEG;IACH,OAAO,CAAC,kBAAkB;YAIZ,cAAc;YAMd,kBAAkB;IAMhC;;;;OAIG;IACI,aAAa,iDAMnB;IAED;;;;;;OAMG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAoBpC;IAED;;;;;;;;;;;;;OAaG;IACU,mBAAmB,CAC9B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAqEzB;IAEY,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAc9E;IAEY,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsB7D;IAEY,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAgC1F;IAEY,0BAA0B,CACrC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAkC7B;IAEY,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAoBhF;IAEY,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA4B3F;IAEY,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA2CnD;CACF"}
|