effect-mq 0.1.0 → 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.
Files changed (67) hide show
  1. package/README.md +305 -25
  2. package/dist/Job.d.ts +118 -5
  3. package/dist/Job.d.ts.map +1 -1
  4. package/dist/Job.js +119 -4
  5. package/dist/Job.js.map +1 -1
  6. package/dist/JobStore.d.ts +260 -9
  7. package/dist/JobStore.d.ts.map +1 -1
  8. package/dist/JobStore.js +115 -1
  9. package/dist/JobStore.js.map +1 -1
  10. package/dist/MemoryJobStore.d.ts +38 -6
  11. package/dist/MemoryJobStore.d.ts.map +1 -1
  12. package/dist/MemoryJobStore.js +351 -47
  13. package/dist/MemoryJobStore.js.map +1 -1
  14. package/dist/Worker.d.ts +5 -1
  15. package/dist/Worker.d.ts.map +1 -1
  16. package/dist/Worker.js +117 -10
  17. package/dist/Worker.js.map +1 -1
  18. package/dist/{drizzle → drizzle-postgres}/DrizzleJobStore.d.ts +35 -2
  19. package/dist/drizzle-postgres/DrizzleJobStore.d.ts.map +1 -0
  20. package/dist/drizzle-postgres/DrizzleJobStore.js +941 -0
  21. package/dist/drizzle-postgres/DrizzleJobStore.js.map +1 -0
  22. package/dist/drizzle-postgres/index.d.ts.map +1 -0
  23. package/dist/drizzle-postgres/index.js.map +1 -0
  24. package/dist/drizzle-postgres/schema.d.ts +670 -0
  25. package/dist/drizzle-postgres/schema.d.ts.map +1 -0
  26. package/dist/drizzle-postgres/schema.js +150 -0
  27. package/dist/drizzle-postgres/schema.js.map +1 -0
  28. package/dist/redis/RedisJobStore.d.ts +58 -0
  29. package/dist/redis/RedisJobStore.d.ts.map +1 -0
  30. package/dist/redis/RedisJobStore.js +424 -0
  31. package/dist/redis/RedisJobStore.js.map +1 -0
  32. package/dist/redis/index.d.ts +9 -0
  33. package/dist/redis/index.d.ts.map +1 -0
  34. package/dist/redis/index.js +9 -0
  35. package/dist/redis/index.js.map +1 -0
  36. package/dist/redis/scripts.d.ts +181 -0
  37. package/dist/redis/scripts.d.ts.map +1 -0
  38. package/dist/redis/scripts.js +940 -0
  39. package/dist/redis/scripts.js.map +1 -0
  40. package/dist/testing/conformance.d.ts.map +1 -1
  41. package/dist/testing/conformance.js +502 -8
  42. package/dist/testing/conformance.js.map +1 -1
  43. package/package.json +8 -4
  44. package/src/Job.ts +301 -10
  45. package/src/JobStore.ts +373 -9
  46. package/src/MemoryJobStore.ts +440 -53
  47. package/src/Worker.ts +153 -10
  48. package/src/drizzle-postgres/DrizzleJobStore.ts +1311 -0
  49. package/src/drizzle-postgres/schema.ts +279 -0
  50. package/src/redis/RedisJobStore.ts +652 -0
  51. package/src/redis/index.ts +8 -0
  52. package/src/redis/scripts.ts +1055 -0
  53. package/src/testing/conformance.ts +665 -8
  54. package/dist/drizzle/DrizzleJobStore.d.ts.map +0 -1
  55. package/dist/drizzle/DrizzleJobStore.js +0 -426
  56. package/dist/drizzle/DrizzleJobStore.js.map +0 -1
  57. package/dist/drizzle/index.d.ts.map +0 -1
  58. package/dist/drizzle/index.js.map +0 -1
  59. package/dist/drizzle/schema.d.ts +0 -464
  60. package/dist/drizzle/schema.d.ts.map +0 -1
  61. package/dist/drizzle/schema.js +0 -68
  62. package/dist/drizzle/schema.js.map +0 -1
  63. package/src/drizzle/DrizzleJobStore.ts +0 -599
  64. package/src/drizzle/schema.ts +0 -116
  65. /package/dist/{drizzle → drizzle-postgres}/index.d.ts +0 -0
  66. /package/dist/{drizzle → drizzle-postgres}/index.js +0 -0
  67. /package/src/{drizzle → drizzle-postgres}/index.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"MemoryJobStore.js","sourceRoot":"","sources":["../src/MemoryJobStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MemoryJobStore.js","sourceRoot":"","sources":["../src/MemoryJobStore.ts"],"names":[],"mappings":"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"}
package/dist/Worker.d.ts CHANGED
@@ -15,7 +15,7 @@
15
15
  * @since 0.1.0
16
16
  */
17
17
  import { Context, Duration, Effect, Exit, Layer, Schema, type Scope } from "effect";
18
- import { type BackoffPolicy, type JobId, JobStore, QueueName, type Service as StoreService } from "./JobStore.ts";
18
+ import { type BackoffPolicy, JobId, JobStore, QueueName, type Service as StoreService } from "./JobStore.ts";
19
19
  /**
20
20
  * Information about the currently running attempt, passed to handlers as the
21
21
  * second argument.
@@ -52,6 +52,8 @@ export interface JobDescriptor<Payload extends Schema.Top, Success extends Schem
52
52
  readonly exitSchema: Schema.Top & {
53
53
  readonly Type: Exit.Exit<Success["Type"], Error["Type"]>;
54
54
  };
55
+ /** When present and returning false for a typed error, retries are skipped. */
56
+ readonly retryable: ((error: Error["Type"]) => boolean) | undefined;
55
57
  }
56
58
  /**
57
59
  * @since 0.1.0
@@ -92,6 +94,8 @@ export interface WorkerOptions<StoreId = JobStore> {
92
94
  readonly maxStalledCount?: number | undefined;
93
95
  /** Fallback polling interval when idle and no wake-up arrives (default 5s). */
94
96
  readonly pollInterval?: Duration.Input | undefined;
97
+ /** How often to tick due repeatable-job schedules (default 15s). */
98
+ readonly scheduleSweepInterval?: Duration.Input | undefined;
95
99
  /** Identifier used in lock tokens (default: random). */
96
100
  readonly id?: string | undefined;
97
101
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Worker.d.ts","sourceRoot":"","sources":["../src/Worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Worker.d.ts","sourceRoot":"","sources":["../src/Worker.ts"],"names":[],"mappings":"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"}
package/dist/Worker.js CHANGED
@@ -14,13 +14,22 @@
14
14
  *
15
15
  * @since 0.1.0
16
16
  */
17
- import { Cause, Clock, Context, Deferred, Duration, Effect, Exit, FiberSet, Layer, Schedule, Schema, Scope as Scope_, Tracer } from "effect";
18
- import { isJobStoreError, JobStore, QueueName } from "./JobStore.js";
17
+ import { Cause, Clock, Context, Deferred, Duration, Effect, Exit, Fiber, FiberSet, Layer, Option, Result, Schedule, Schema, Scope as Scope_, Tracer } from "effect";
18
+ import { isJobStoreError, isMarkedUnrecoverable, JobId, JobStore, nextOccurrence, QueueName } from "./JobStore.js";
19
19
  /**
20
20
  * @since 0.1.0
21
21
  */
22
22
  export class Worker extends Context.Service()("effect-mq/Worker") {
23
23
  }
24
+ // A cause is unrecoverable when its error or defect was marked via
25
+ // `Job.unrecoverable` (identity-based, so typed channels stay untouched).
26
+ const causeIsMarkedUnrecoverable = (cause) => {
27
+ const failure = Cause.findErrorOption(cause);
28
+ if (Option.isSome(failure) && isMarkedUnrecoverable(failure.value))
29
+ return true;
30
+ const die = Cause.findDie(cause);
31
+ return Result.isSuccess(die) && isMarkedUnrecoverable(die.success.defect);
32
+ };
24
33
  /**
25
34
  * Delay before attempt `attempt` (1-based) re-runs, per the job's policy.
26
35
  *
@@ -64,6 +73,7 @@ export const make = (options) => Effect.gen(function* () {
64
73
  ? Duration.toMillis(options.lockRenewInterval)
65
74
  : Math.max(1, Math.floor(lockDurationMs / 2));
66
75
  const stalledMs = Duration.toMillis(options?.stalledInterval ?? 30_000);
76
+ const scheduleSweepMs = Duration.toMillis(options?.scheduleSweepInterval ?? 15_000);
67
77
  const maxStalledCount = options?.maxStalledCount ?? 1;
68
78
  const pollMs = Duration.toMillis(options?.pollInterval ?? 5_000);
69
79
  const workerId = options?.id ?? `worker-${Math.random().toString(36).slice(2, 10)}`;
@@ -71,6 +81,9 @@ export const make = (options) => Effect.gen(function* () {
71
81
  const queueNames = new Map();
72
82
  const startedQueues = new Set();
73
83
  const inflight = new Map();
84
+ // Jobs this worker is interrupting because of a cancel request; their
85
+ // interrupt-only exits ack as Cancelled instead of shutdown-release.
86
+ const cancelling = new Set();
74
87
  let tokenCounter = 0;
75
88
  const nextToken = () => `${workerId}:${++tokenCounter}`;
76
89
  // Local wake-up for registration changes. Versioned like the store's
@@ -118,16 +131,40 @@ export const make = (options) => Effect.gen(function* () {
118
131
  attempt: record.attemptsMade + 1,
119
132
  attemptsMax: record.attemptsMax
120
133
  };
121
- inflight.set(record.id, { id: record.id, token });
122
134
  return Effect.gen(function* () {
123
- const exit = yield* Effect.exit(restore(entry.run(record.payload, context)));
135
+ // The per-run time limit interrupts the handler internally; surface
136
+ // it as a defect so it flows through normal retry accounting.
137
+ // timeoutOrElse (not timeout + a catch on TimeoutError) so a
138
+ // handler's OWN typed TimeoutError failure stays a typed failure.
139
+ const handlerEffect = record.timeoutMs === undefined
140
+ ? entry.run(record.payload, context)
141
+ : entry.run(record.payload, context).pipe(Effect.timeoutOrElse({
142
+ duration: record.timeoutMs,
143
+ orElse: () => Effect.die(new Cause.TimeoutError(`effect-mq: job "${record.name}" timed out after ${record.timeoutMs}ms`))
144
+ }));
145
+ // The handler runs in a child fiber so a cross-process cancel can
146
+ // interrupt THIS job without killing the taker loop; `restore`
147
+ // keeps the child interruptible while the fork itself is masked.
148
+ const fiber = yield* Effect.forkChild(restore(handlerEffect));
149
+ inflight.set(record.id, { id: record.id, token, fiber });
150
+ const exit = yield* Effect.exit(restore(Fiber.join(fiber)));
124
151
  inflight.delete(record.id);
152
+ const wasCancelled = cancelling.delete(record.id);
153
+ // A cancel-request interrupt is terminal: ack Cancelled (even if a
154
+ // shutdown races it — cancellation wins, the job must not revive).
155
+ if (wasCancelled && Exit.isFailure(exit) && Cause.hasInterruptsOnly(exit.cause)) {
156
+ yield* ackSafely(store.ack(record.id, token, { _tag: "Cancelled" }), "ack");
157
+ return;
158
+ }
125
159
  // Distinguish worker shutdown from a handler that interrupted
126
160
  // itself: entering an interruptible region while an external
127
161
  // interrupt is pending fails immediately.
128
162
  const shutdown = yield* Effect.exit(restore(Effect.void));
129
163
  if (Exit.isFailure(shutdown)) {
130
- // Worker shutdown: give the job back without consuming an attempt.
164
+ // Worker shutdown: stop the handler (the join above may have been
165
+ // interrupted before the child finished), then give the job back
166
+ // without consuming an attempt.
167
+ yield* Fiber.interrupt(fiber);
131
168
  yield* ackSafely(store.release(record.id, token), "release");
132
169
  return yield* Effect.interrupt;
133
170
  }
@@ -145,13 +182,17 @@ export const make = (options) => Effect.gen(function* () {
145
182
  encoded = yield* Effect.exit(entry.encodeExit(Exit.die(new Error(`effect-mq: failed to encode handler exit for job "${record.name}"`))));
146
183
  }
147
184
  const exitValue = Exit.isSuccess(encoded) ? encoded.value : undefined;
185
+ const unrecoverable = Exit.isFailure(effective) && (causeIsMarkedUnrecoverable(effective.cause) ||
186
+ entry.unrecoverableFailure?.(effective.cause) === true);
148
187
  const outcome = Exit.isSuccess(effective)
149
188
  ? encodable
150
189
  // A success whose value can't be encoded must NOT re-run (its
151
190
  // side effects already happened) — fail it with the defect.
152
191
  ? { _tag: "Complete", exit: exitValue }
153
192
  : { _tag: "Fail", exit: exitValue }
154
- : routeFailure(record, exitValue);
193
+ : unrecoverable
194
+ ? { _tag: "Fail", exit: exitValue }
195
+ : routeFailure(record, exitValue);
155
196
  yield* ackSafely(store.ack(record.id, token, outcome), "ack");
156
197
  });
157
198
  });
@@ -202,9 +243,22 @@ export const make = (options) => Effect.gen(function* () {
202
243
  const entries = Array.from(inflight.values());
203
244
  if (entries.length === 0)
204
245
  return;
205
- const lost = yield* retryStore(store.extendLocks(entries, lockDurationMs));
206
- if (lost.length > 0) {
207
- yield* Effect.logWarning("effect-mq: failed to renew locks; jobs may run twice", lost);
246
+ const result = yield* retryStore(store.extendLocks(entries.map((entry) => ({ id: entry.id, token: entry.token })), lockDurationMs));
247
+ if (result.lost.length > 0) {
248
+ yield* Effect.logWarning("effect-mq: failed to renew locks; jobs may run twice", result.lost);
249
+ }
250
+ // Honour cross-process cancel requests: interrupt the handler fiber;
251
+ // processJob acks the job as Cancelled.
252
+ for (const id of result.cancelRequested) {
253
+ const flight = inflight.get(id);
254
+ if (flight !== undefined) {
255
+ cancelling.add(id);
256
+ // Delivery only — awaiting the handler's exit here would park the
257
+ // heartbeat behind arbitrary user finalizers and starve every other
258
+ // in-flight job's lock renewal. processJob's join observes the exit
259
+ // and acks Cancelled.
260
+ yield* Effect.sync(() => flight.fiber.interruptUnsafe());
261
+ }
208
262
  }
209
263
  }).pipe(Effect.catchCause((cause) => Effect.logError("effect-mq: lock renewal failed", cause)), Effect.forever);
210
264
  const stalledLoop = Effect.gen(function* () {
@@ -214,8 +268,45 @@ export const make = (options) => Effect.gen(function* () {
214
268
  yield* Effect.logWarning("effect-mq: recovered stalled jobs", recovered);
215
269
  }
216
270
  }).pipe(Effect.catchCause((cause) => Effect.logError("effect-mq: stalled sweep failed", cause)), Effect.forever);
271
+ // Tick one due repeatable-job schedule. The enqueue id is deterministic
272
+ // per (schedule, slot), so concurrent sweepers across workers dedup
273
+ // naturally; advanceSchedule is conditional, so double-advances are
274
+ // no-ops.
275
+ const sweepSchedule = (schedule) => Effect.gen(function* () {
276
+ const now = yield* Clock.currentTimeMillis;
277
+ const slot = schedule.nextRunAt;
278
+ const next = nextOccurrence(schedule, slot, now);
279
+ if (next === undefined) {
280
+ return yield* Effect.logError(`effect-mq: schedule "${schedule.key}" has an invalid cron/every configuration; skipping`);
281
+ }
282
+ yield* retryStore(store.enqueue({
283
+ id: JobId(`sched/${schedule.key}/${slot}`),
284
+ name: schedule.jobName,
285
+ queue: schedule.queue,
286
+ payload: schedule.payload,
287
+ metadata: { ...schedule.metadata, scheduledFor: new Date(slot).toISOString() },
288
+ priority: schedule.priority,
289
+ attemptsMax: schedule.attemptsMax,
290
+ backoff: schedule.backoff,
291
+ keep: schedule.keep,
292
+ timeoutMs: schedule.timeoutMs,
293
+ dedupe: undefined,
294
+ delayMs: 0
295
+ }));
296
+ yield* retryStore(store.advanceSchedule(schedule.key, slot, next));
297
+ });
298
+ // Each due schedule is swept in isolation so one poison row (bad cron,
299
+ // storage error) can never starve the rest of the sweep.
300
+ const scheduleLoop = Effect.gen(function* () {
301
+ yield* Effect.sleep(scheduleSweepMs);
302
+ const due = yield* retryStore(store.dueSchedules());
303
+ for (const schedule of due) {
304
+ yield* sweepSchedule(schedule).pipe(Effect.catchCause((cause) => Effect.logError(`effect-mq: sweep of schedule "${schedule.key}" failed`, cause)));
305
+ }
306
+ }).pipe(Effect.catchCause((cause) => Effect.logError("effect-mq: schedule sweep failed", cause)), Effect.forever);
217
307
  yield* FiberSet.run(fibers, renewalLoop);
218
308
  yield* FiberSet.run(fibers, stalledLoop);
309
+ yield* FiberSet.run(fibers, scheduleLoop);
219
310
  // SAFETY: the public `register` signature declares Scope, the handler's R
220
311
  // and the codec services as requirements; the implementation erases them
221
312
  // (the trailing assertion below) because the handler runs with the
@@ -241,9 +332,25 @@ export const make = (options) => Effect.gen(function* () {
241
332
  // context (captured wins on conflicts, so locally provided services
242
333
  // are not shadowed by the worker's) restores those requirements.
243
334
  const provideCaptured = (effect) => effect.pipe(Effect.updateContext((input) => Context.merge(input, services)));
335
+ const retryable = job.retryable;
244
336
  const entry = {
245
337
  run: (payload, context) => provideCaptured(decodePayload(payload).pipe(Effect.orDie, Effect.flatMap((decoded) => handler(decoded, context)))),
246
- encodeExit: (exit) => provideCaptured(encodeExit(exit))
338
+ encodeExit: (exit) => provideCaptured(encodeExit(exit)),
339
+ unrecoverableFailure: retryable === undefined ? undefined : (cause) => {
340
+ const failure = Cause.findErrorOption(cause);
341
+ if (Option.isNone(failure))
342
+ return false;
343
+ try {
344
+ // SAFETY: the only typed failures a handler can produce are
345
+ // its declared error type, which is what `retryable` accepts.
346
+ return !retryable(failure.value);
347
+ }
348
+ catch {
349
+ // A throwing predicate must never leave the job un-acked:
350
+ // treat the failure as retryable and let the budget decide.
351
+ return false;
352
+ }
353
+ }
247
354
  };
248
355
  handlers.set(name, entry);
249
356
  const queue = registerOptions?.queue !== undefined
@@ -1 +1 @@
1
- {"version":3,"file":"Worker.js","sourceRoot":"","sources":["../src/Worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Worker.js","sourceRoot":"","sources":["../src/Worker.ts"],"names":[],"mappings":"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"}
@@ -18,8 +18,8 @@
18
18
  */
19
19
  import * as JobStore from "../JobStore.ts";
20
20
  import type { PgClient } from "@effect/sql-pg";
21
- import { type Context, Effect, Layer, type Scope } from "effect";
22
- import type { MqJobAttemptsTable, MqJobsTable } from "./schema.ts";
21
+ import { type Context, Duration, Effect, Layer, type Scope } from "effect";
22
+ import type { MqDedupeTable, MqJobAttemptsTable, MqJobsTable, MqQueueControlTable, MqSchedulesTable } from "./schema.ts";
23
23
  /**
24
24
  * @since 0.1.0
25
25
  */
@@ -28,14 +28,47 @@ export interface DrizzleJobStoreOptions<StoreId = JobStore.JobStore> {
28
28
  readonly jobs: MqJobsTable;
29
29
  /** The run-ledger table instance (from `mqJobAttempts`). */
30
30
  readonly attempts: MqJobAttemptsTable;
31
+ /** The schedules table instance (from `mqSchedules`). */
32
+ readonly schedules: MqSchedulesTable;
33
+ /** The queue pause/resume flags table (from `mqQueueControl`). */
34
+ readonly queues: MqQueueControlTable;
35
+ /** The dedup-key registry table (from `mqDedupe`). */
36
+ readonly dedupe: MqDedupeTable;
37
+ /**
38
+ * Values for columns added via `mqJobs({ extend })`, evaluated at enqueue
39
+ * (and on dedupe `replace`). Keys are the extended columns' TS names.
40
+ * Default: each extended column fills from `request.metadata[<TS name>]`,
41
+ * NULL when absent.
42
+ */
43
+ readonly extraValues?: ((request: JobStore.EnqueueRequest) => Readonly<Record<string, ExtraColumnValue>>) | undefined;
31
44
  /** Bind to a `JobStore.named(...)` key; default: the default `JobStore`. */
32
45
  readonly store?: Context.Key<StoreId, JobStore.Service> | undefined;
46
+ /**
47
+ * Store-level retention ceiling: terminal records older than this are
48
+ * removed by a periodic sweep — one duration for all terminal states or a
49
+ * per-state split (`{ completed: "1 day", failed: "30 days" }`). The sweep
50
+ * also honours stricter per-job `keep.age` rules.
51
+ */
52
+ readonly historyTtl?: JobStore.HistoryTtlInput | undefined;
53
+ /** History sweep cadence (default 1 minute). */
54
+ readonly historySweepInterval?: Duration.Input | undefined;
55
+ /**
56
+ * Generator for store-assigned job ids (e.g. `() => \`job_${ulid()}\``).
57
+ * Default: `j-<seq>` from the jobs sequence. See `JobStore.IdGenerator`.
58
+ */
59
+ readonly idGenerator?: JobStore.IdGenerator | undefined;
33
60
  /**
34
61
  * Probe the tables at startup and fail fast when the schema is missing
35
62
  * (default true). Migrations are owned by your drizzle-kit pipeline.
36
63
  */
37
64
  readonly validate?: boolean | undefined;
38
65
  }
66
+ /**
67
+ * A value the driver can bind directly into an extended column.
68
+ *
69
+ * @since 0.3.0
70
+ */
71
+ export type ExtraColumnValue = string | number | boolean | Date | null;
39
72
  /**
40
73
  * Build the store implementation. Requires `PgClient` and a `Scope` (for the
41
74
  * LISTEN subscription).
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DrizzleJobStore.d.ts","sourceRoot":"","sources":["../../src/drizzle-postgres/DrizzleJobStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAA;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAI9C,OAAO,EAAS,KAAK,OAAO,EAAY,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAU,KAAK,KAAK,EAAU,MAAM,QAAQ,CAAA;AAC3G,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,WAAW,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAIxH;;GAEG;AACH,MAAM,WAAW,sBAAsB,CAAC,OAAO,GAAG,QAAQ,CAAC,QAAQ;IACjE,+CAA+C;IAC/C,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;IAC1B,4DAA4D;IAC5D,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAA;IACrC,yDAAyD;IACzD,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAA;IACpC,kEAAkE;IAClE,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAA;IACpC,sDAAsD;IACtD,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;IAC9B;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,EACjB,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,cAAc,KAAK,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAClF,SAAS,CAAA;IACb,4EAA4E;IAC5E,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,SAAS,CAAA;IACnE;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,eAAe,GAAG,SAAS,CAAA;IAC1D,gDAAgD;IAChD,QAAQ,CAAC,oBAAoB,CAAC,EAAE,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAA;IAC1D;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,WAAW,GAAG,SAAS,CAAA;IACvD;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CACxC;AAID;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAA;AAoGtE;;;;;GAKG;AACH,eAAO,MAAM,IAAI,YACN,sBAAsB,CAAC,GAAG,CAAC,KACnC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,QAAQ,GAAG,KAAK,CAAC,KAAK,CA0kCtF,CAAA;AAEJ;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,KAAK,GAAI,OAAO,GAAG,QAAQ,CAAC,QAAQ,WACtC,sBAAsB,CAAC,OAAO,CAAC,KACvC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,QAAQ,CAO9D,CAAA"}