@effect-app/infra 1.45.1 → 1.46.1

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 (85) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/_cjs/RequestContext.cjs +16 -38
  3. package/_cjs/RequestContext.cjs.map +1 -1
  4. package/_cjs/api/internal/RequestContextMiddleware.cjs +9 -24
  5. package/_cjs/api/internal/RequestContextMiddleware.cjs.map +1 -1
  6. package/_cjs/api/internal/events.cjs +1 -1
  7. package/_cjs/api/internal/events.cjs.map +1 -1
  8. package/_cjs/api/setupRequest.cjs +33 -39
  9. package/_cjs/api/setupRequest.cjs.map +1 -1
  10. package/_cjs/errorReporter.cjs +3 -5
  11. package/_cjs/errorReporter.cjs.map +1 -1
  12. package/_cjs/logger/jsonLogger.cjs +2 -2
  13. package/_cjs/logger/jsonLogger.cjs.map +1 -1
  14. package/_cjs/logger/logFmtLogger.cjs +1 -2
  15. package/_cjs/logger/logFmtLogger.cjs.map +1 -1
  16. package/_cjs/logger/shared.cjs +17 -14
  17. package/_cjs/logger/shared.cjs.map +1 -1
  18. package/_cjs/services/QueueMaker/SQLQueue.cjs +3 -17
  19. package/_cjs/services/QueueMaker/SQLQueue.cjs.map +1 -1
  20. package/_cjs/services/QueueMaker/memQueue.cjs +3 -16
  21. package/_cjs/services/QueueMaker/memQueue.cjs.map +1 -1
  22. package/_cjs/services/QueueMaker/sbqueue.cjs +3 -16
  23. package/_cjs/services/QueueMaker/sbqueue.cjs.map +1 -1
  24. package/_cjs/services/QueueMaker/service.cjs +1 -9
  25. package/_cjs/services/QueueMaker/service.cjs.map +1 -1
  26. package/_cjs/services/Store/Memory.cjs +4 -7
  27. package/_cjs/services/Store/Memory.cjs.map +1 -1
  28. package/dist/RequestContext.d.ts +22 -65
  29. package/dist/RequestContext.d.ts.map +1 -1
  30. package/dist/RequestContext.js +16 -38
  31. package/dist/api/internal/RequestContextMiddleware.d.ts +1 -2
  32. package/dist/api/internal/RequestContextMiddleware.d.ts.map +1 -1
  33. package/dist/api/internal/RequestContextMiddleware.js +11 -30
  34. package/dist/api/internal/events.d.ts +1 -1
  35. package/dist/api/internal/events.d.ts.map +1 -1
  36. package/dist/api/internal/events.js +3 -3
  37. package/dist/api/setupRequest.d.ts +8 -7
  38. package/dist/api/setupRequest.d.ts.map +1 -1
  39. package/dist/api/setupRequest.js +33 -47
  40. package/dist/errorReporter.d.ts.map +1 -1
  41. package/dist/errorReporter.js +5 -7
  42. package/dist/logger/jsonLogger.d.ts.map +1 -1
  43. package/dist/logger/jsonLogger.js +5 -5
  44. package/dist/logger/logFmtLogger.d.ts.map +1 -1
  45. package/dist/logger/logFmtLogger.js +4 -5
  46. package/dist/logger/shared.d.ts +2 -2
  47. package/dist/logger/shared.d.ts.map +1 -1
  48. package/dist/logger/shared.js +14 -11
  49. package/dist/services/Operations.d.ts +3 -3
  50. package/dist/services/QueueMaker/SQLQueue.d.ts +3 -4
  51. package/dist/services/QueueMaker/SQLQueue.d.ts.map +1 -1
  52. package/dist/services/QueueMaker/SQLQueue.js +5 -18
  53. package/dist/services/QueueMaker/memQueue.d.ts +2 -3
  54. package/dist/services/QueueMaker/memQueue.d.ts.map +1 -1
  55. package/dist/services/QueueMaker/memQueue.js +6 -16
  56. package/dist/services/QueueMaker/sbqueue.d.ts +2 -3
  57. package/dist/services/QueueMaker/sbqueue.d.ts.map +1 -1
  58. package/dist/services/QueueMaker/sbqueue.js +6 -16
  59. package/dist/services/QueueMaker/service.d.ts +2 -13
  60. package/dist/services/QueueMaker/service.d.ts.map +1 -1
  61. package/dist/services/QueueMaker/service.js +2 -10
  62. package/dist/services/RequestFiberSet.d.ts +1 -1
  63. package/dist/services/Store/Memory.d.ts +2 -6
  64. package/dist/services/Store/Memory.d.ts.map +1 -1
  65. package/dist/services/Store/Memory.js +4 -6
  66. package/package.json +5 -15
  67. package/src/RequestContext.ts +16 -47
  68. package/src/api/internal/RequestContextMiddleware.ts +10 -31
  69. package/src/api/internal/events.ts +2 -2
  70. package/src/api/setupRequest.ts +44 -72
  71. package/src/errorReporter.ts +4 -6
  72. package/src/logger/jsonLogger.ts +4 -4
  73. package/src/logger/logFmtLogger.ts +3 -4
  74. package/src/logger/shared.ts +16 -10
  75. package/src/services/QueueMaker/SQLQueue.ts +5 -19
  76. package/src/services/QueueMaker/memQueue.ts +5 -15
  77. package/src/services/QueueMaker/sbqueue.ts +5 -15
  78. package/src/services/QueueMaker/service.ts +2 -11
  79. package/src/services/Store/Memory.ts +3 -7
  80. package/_cjs/services/RequestContextContainer.cjs +0 -36
  81. package/_cjs/services/RequestContextContainer.cjs.map +0 -1
  82. package/dist/services/RequestContextContainer.d.ts +0 -42
  83. package/dist/services/RequestContextContainer.d.ts.map +0 -1
  84. package/dist/services/RequestContextContainer.js +0 -31
  85. package/src/services/RequestContextContainer.ts +0 -53
@@ -1,13 +1,9 @@
1
1
  import { MemQueue } from "@effect-app/infra-adapters/memQueue";
2
- import { RequestContext } from "@effect-app/infra/RequestContext";
3
- import { NonEmptyString255 } from "@effect-app/schema";
4
2
  import { Tracer } from "effect";
5
- import { Effect, Fiber, flow, Option, S } from "effect-app";
6
- import { RequestId } from "effect-app/ids";
3
+ import { Effect, Fiber, flow, S } from "effect-app";
7
4
  import { pretty } from "effect-app/utils";
8
- import { setupRequestContext } from "../../api/setupRequest.js";
5
+ import { getRequestContext, setupRequestContext } from "../../api/setupRequest.js";
9
6
  import { InfraLogger } from "../../logger.js";
10
- import { RequestContextContainer } from "../RequestContextContainer.js";
11
7
  import { reportNonInterruptedFailure } from "./errors.js";
12
8
  import { QueueMeta } from "./service.js";
13
9
  /**
@@ -18,19 +14,17 @@ export function makeMemQueue(queueName, queueDrainName, schema, drainSchema) {
18
14
  const mem = yield* MemQueue;
19
15
  const q = yield* mem.getOrCreateQueue(queueName);
20
16
  const qDrain = yield* mem.getOrCreateQueue(queueDrainName);
21
- const rcc = yield* RequestContextContainer;
22
17
  const wireSchema = S.Struct({ body: schema, meta: QueueMeta });
23
18
  const drainW = S.Struct({ body: drainSchema, meta: QueueMeta });
24
19
  const parseDrain = flow(S.decodeUnknown(drainW), Effect.orDie);
25
20
  return {
26
21
  publish: (...messages) => Effect
27
22
  .gen(function* () {
28
- const requestContext = yield* rcc.requestContext;
29
- const span = yield* Effect.serviceOption(Tracer.ParentSpan);
23
+ const requestContext = yield* getRequestContext;
30
24
  return yield* Effect
31
25
  .forEach(messages, (m) =>
32
26
  // we JSON encode, because that is what the wire also does, and it reveals holes in e.g unknown encoders (Date->String)
33
- S.encode(wireSchema)({ body: m, meta: { requestContext, span: Option.getOrUndefined(span) } }).pipe(Effect.orDie, Effect
27
+ S.encode(wireSchema)({ body: m, meta: requestContext }).pipe(Effect.orDie, Effect
34
28
  .andThen(JSON.stringify),
35
29
  // .tap((msg) => info("Publishing Mem Message: " + utils.inspect(msg)))
36
30
  Effect.flatMap((_) => q.offer(_))), { discard: true });
@@ -50,11 +44,7 @@ export function makeMemQueue(queueName, queueDrainName, schema, drainSchema) {
50
44
  .flatMap(({ body, meta }) => {
51
45
  let effect = InfraLogger
52
46
  .logInfo(`[${queueDrainName}] Processing incoming message`)
53
- .pipe(Effect.annotateLogs({ body: pretty(body), meta: pretty(meta) }), Effect.zipRight(handleEvent(body)), silenceAndReportError, (_) => setupRequestContext(_, RequestContext.inherit(meta.requestContext, {
54
- id: RequestId(body.id),
55
- locale: "en",
56
- name: NonEmptyString255(`${queueDrainName}.${body._tag}`)
57
- })), Effect
47
+ .pipe(Effect.annotateLogs({ body: pretty(body), meta: pretty(meta) }), Effect.zipRight(handleEvent(body)), silenceAndReportError, (_) => setupRequestContext(_, meta), Effect
58
48
  .withSpan(`queue.drain: ${queueDrainName}.${body._tag}`, {
59
49
  captureStackTrace: false,
60
50
  kind: "consumer",
@@ -85,4 +75,4 @@ export function makeMemQueue(queueName, queueDrainName, schema, drainSchema) {
85
75
  };
86
76
  });
87
77
  }
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtUXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvUXVldWVNYWtlci9tZW1RdWV1ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ2pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBQ3RELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFDL0IsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUMvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDN0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFDdkUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3pELE9BQU8sRUFBa0IsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXhEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FNMUIsU0FBaUIsRUFDakIsY0FBc0IsRUFDdEIsTUFBMkIsRUFDM0IsV0FBMEM7SUFFMUMsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztRQUN6QixNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUE7UUFDM0IsTUFBTSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFD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
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtUXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvUXVldWVNYWtlci9tZW1RdWV1ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDOUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUMvQixPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUNsRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDN0MsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3pELE9BQU8sRUFBa0IsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXhEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FNMUIsU0FBaUIsRUFDakIsY0FBc0IsRUFDdEIsTUFBMkIsRUFDM0IsV0FBMEM7SUFFMUMsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztRQUN6QixNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUE7UUFDM0IsTUFBTSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQ2hELE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsQ0FBQTtRQUUxRCxNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVB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
@@ -2,7 +2,6 @@ import { ServiceBusReceiverFactory } from "@effect-app/infra-adapters/ServiceBus
2
2
  import { Tracer } from "effect";
3
3
  import { Effect, Layer, S } from "effect-app";
4
4
  import type { StringId } from "effect-app/schema";
5
- import { RequestContextContainer } from "../RequestContextContainer.js";
6
5
  /**
7
6
  * @tsplus static QueueMaker.Ops makeServiceBus
8
7
  */
@@ -13,9 +12,9 @@ export declare function makeServiceBusQueue<Evt extends {
13
12
  id: StringId;
14
13
  _tag: string;
15
14
  }, EvtE, DrainEvtE>(queueName: string, queueDrainName: string, schema: S.Schema<Evt, EvtE>, drainSchema: S.Schema<DrainEvt, DrainEvtE>): Effect.Effect<{
16
- drain: <DrainE, DrainR>(handleEvent: (ks: DrainEvt) => Effect<void, DrainE, DrainR>, sessionId?: string) => Effect.Effect<never, never, import("effect/Scope").Scope | RequestContextContainer | import("../Store/ContextMapContainer.js").ContextMapContainer | Exclude<Exclude<Exclude<Exclude<DrainR, Tracer.ParentSpan>, never>, Tracer.ParentSpan>, ServiceBusReceiverFactory>>;
15
+ drain: <DrainE, DrainR>(handleEvent: (ks: DrainEvt) => Effect<void, DrainE, DrainR>, sessionId?: string) => Effect.Effect<never, never, import("../Store/ContextMapContainer.js").ContextMapContainer | import("effect/Scope").Scope | Exclude<Exclude<Exclude<Exclude<DrainR, Tracer.ParentSpan>, never>, Tracer.ParentSpan>, ServiceBusReceiverFactory>>;
17
16
  publish: (messages_0: Evt, ...messages: Evt[]) => Effect.Effect<void, never, never>;
18
- }, never, RequestContextContainer | ServiceBusReceiverFactory | import("@azure/service-bus").ServiceBusSender>;
17
+ }, never, ServiceBusReceiverFactory | import("@azure/service-bus").ServiceBusSender>;
19
18
  /**
20
19
  * @tsplus static QueueMaker.Ops makeServiceBusLayers
21
20
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sbqueue.d.ts","sourceRoot":"","sources":["../../../src/services/QueueMaker/sbqueue.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,yBAAyB,EAE1B,MAAM,uCAAuC,CAAA;AAE9C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAS,MAAM,EAAQ,KAAK,EAAU,CAAC,EAAE,MAAM,YAAY,CAAA;AAElE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAKjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAA;AAIvE;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,SAAS;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAC1C,QAAQ,SAAS;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAC/C,IAAI,EACJ,SAAS,EAET,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,EAC3B,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC;YAqB9B,MAAM,EAAE,MAAM,eACP,CAAC,EAAE,EAAE,QAAQ,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,cAC/C,MAAM;;+GA0GzB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,wGAI1F"}
1
+ {"version":3,"file":"sbqueue.d.ts","sourceRoot":"","sources":["../../../src/services/QueueMaker/sbqueue.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,yBAAyB,EAE1B,MAAM,uCAAuC,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAS,MAAM,EAAQ,KAAK,EAAE,CAAC,EAAE,MAAM,YAAY,CAAA;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAOjD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,SAAS;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAC1C,QAAQ,SAAS;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAC/C,IAAI,EACJ,SAAS,EAET,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,EAC3B,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC;YAoB9B,MAAM,EAAE,MAAM,eACP,CAAC,EAAE,EAAE,QAAQ,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,cAC/C,MAAM;;qFAqGzB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,wGAI1F"}
@@ -1,13 +1,9 @@
1
1
  import { LiveSender, LiveServiceBusClient, Sender, ServiceBusReceiverFactory, subscribe } from "@effect-app/infra-adapters/ServiceBus";
2
- import { RequestContext } from "@effect-app/infra/RequestContext";
3
2
  import { Tracer } from "effect";
4
- import { Cause, Effect, flow, Layer, Option, S } from "effect-app";
5
- import { RequestId } from "effect-app/ids";
6
- import { NonEmptyString255 } from "effect-app/schema";
3
+ import { Cause, Effect, flow, Layer, S } from "effect-app";
7
4
  import { pretty } from "effect-app/utils";
8
- import { setupRequestContext } from "../../api/setupRequest.js";
5
+ import { getRequestContext, setupRequestContext } from "../../api/setupRequest.js";
9
6
  import { InfraLogger } from "../../logger.js";
10
- import { RequestContextContainer } from "../RequestContextContainer.js";
11
7
  import { reportNonInterruptedFailure, reportNonInterruptedFailureCause, reportQueueError } from "./errors.js";
12
8
  import { QueueMeta } from "./service.js";
13
9
  /**
@@ -25,7 +21,6 @@ export function makeServiceBusQueue(queueName, queueDrainName, schema, drainSche
25
21
  const receiver = yield* ServiceBusReceiverFactory;
26
22
  const silenceAndReportError = reportNonInterruptedFailure({ name: "ServiceBusQueue.drain." + queueDrainName });
27
23
  const reportError = reportNonInterruptedFailureCause({ name: "ServiceBusQueue.drain." + queueDrainName });
28
- const rcc = yield* RequestContextContainer;
29
24
  // TODO: or do async?
30
25
  // This will make sure that the host receives the error (MainFiberSet.join), who will then interrupt everything and commence a shutdown and restart of app
31
26
  // const deferred = yield* Deferred.make<never, ServiceBusError | Error>()
@@ -45,11 +40,7 @@ export function makeServiceBusQueue(queueName, queueDrainName, schema, drainSche
45
40
  meta: pretty(meta)
46
41
  }), Effect.zipRight(handleEvent(body)), Effect.orDie)
47
42
  // we silenceAndReportError here, so that the error is reported, and moves into the Exit.
48
- .pipe(silenceAndReportError, (_) => setupRequestContext(_, RequestContext.inherit(meta.requestContext, {
49
- id: RequestId(body.id),
50
- locale: "en",
51
- name: NonEmptyString255(`${queueDrainName}.${body._tag}`)
52
- })), Effect
43
+ .pipe(silenceAndReportError, (_) => setupRequestContext(_, meta), Effect
53
44
  .withSpan(`queue.drain: ${queueDrainName}${sessionId ? `#${sessionId}` : ""}.${body._tag}`, {
54
45
  captureStackTrace: false,
55
46
  kind: "consumer",
@@ -82,13 +73,12 @@ export function makeServiceBusQueue(queueName, queueDrainName, schema, drainSche
82
73
  .pipe(Effect.andThen(Effect.never)),
83
74
  publish: (...messages) => Effect
84
75
  .gen(function* () {
85
- const requestContext = yield* rcc.requestContext;
86
- const span = yield* Effect.serviceOption(Tracer.ParentSpan);
76
+ const requestContext = yield* getRequestContext;
87
77
  return yield* Effect
88
78
  .promise((abortSignal) => s.sendMessages(messages.map((m) => ({
89
79
  body: JSON.stringify(S.encodeSync(wireSchema)({
90
80
  body: m,
91
- meta: { requestContext, span: Option.getOrUndefined(span) }
81
+ meta: requestContext
92
82
  })),
93
83
  messageId: m.id, /* correllationid: requestId */
94
84
  contentType: "application/json",
@@ -109,4 +99,4 @@ export function makeServiceBusQueue(queueName, queueDrainName, schema, drainSche
109
99
  export function makeServiceBusLayers(url, queueName, queueDrainName) {
110
100
  return Layer.merge(ServiceBusReceiverFactory.Live(queueDrainName), LiveSender(queueName)).pipe(Layer.provide(LiveServiceBusClient(url)));
111
101
  }
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2JxdWV1ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9RdWV1ZU1ha2VyL3NicXVldWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLFVBQVUsRUFDVixvQkFBb0IsRUFDcEIsTUFBTSxFQUNOLHlCQUF5QixFQUN6QixTQUFTLEVBQ1YsTUFBTSx1Q0FBdUMsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFDakUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUMvQixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDbEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRTFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUMvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDN0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFDdkUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLGdDQUFnQyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQzdHLE9BQU8sRUFBa0IsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXhEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQU1qQyxTQUFpQixFQUNqQixjQUFzQixFQUN0QixNQUEyQixFQUMzQixXQUEwQztJQUUxQyxNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQzFCLElBQUks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
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2JxdWV1ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9RdWV1ZU1ha2VyL3NicXVldWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLFVBQVUsRUFDVixvQkFBb0IsRUFDcEIsTUFBTSxFQUNOLHlCQUF5QixFQUN6QixTQUFTLEVBQ1YsTUFBTSx1Q0FBdUMsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBQy9CLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRTFELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUNsRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDN0MsT0FBTyxFQUFFLDJCQUEyQixFQUFFLGdDQUFnQyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQzdHLE9BQU8sRUFBa0IsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXhEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQU1qQyxTQUFpQixFQUNqQixjQUFzQixFQUN0QixNQUEyQixFQUMzQixXQUEwQztJQUUxQyxNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQzFCLElBQUksRUFBRSxNQUFNO1FBQ1osSUFBSSxFQUFFLFNBQVM7S0FDaEIsQ0FBQyxDQUFBO0lBQ0YsTUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUE7SUFDL0QsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLENB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
@@ -1,10 +1,8 @@
1
- import { S } from "effect-app";
2
1
  import type { Effect, NonEmptyReadonlyArray, Scope } from "effect-app";
3
2
  import { RequestContext } from "../../RequestContext.js";
4
- import type { RequestContextContainer } from "../RequestContextContainer.js";
5
3
  import type { ContextMapContainer } from "../Store/ContextMapContainer.js";
6
4
  export interface QueueBase<Evt, DrainEvt> {
7
- drain: <DrainE, DrainR>(makeHandleEvent: (ks: DrainEvt) => Effect<void, DrainE, DrainR>, sessionId?: string) => Effect<never, never, Scope | RequestContextContainer | ContextMapContainer | DrainR>;
5
+ drain: <DrainE, DrainR>(makeHandleEvent: (ks: DrainEvt) => Effect<void, DrainE, DrainR>, sessionId?: string) => Effect<never, never, Scope | ContextMapContainer | DrainR>;
8
6
  publish: (...messages: NonEmptyReadonlyArray<Evt>) => Effect<void>;
9
7
  }
10
8
  /**
@@ -13,14 +11,5 @@ export interface QueueBase<Evt, DrainEvt> {
13
11
  export interface QueueMakerOps {
14
12
  }
15
13
  export declare const QueueMaker: QueueMakerOps;
16
- export declare const QueueMeta: import("@effect/schema/Schema").Struct<{
17
- requestContext: typeof RequestContext;
18
- span: S.optional<import("@effect/schema/Schema").Struct<{
19
- spanId: typeof S.String;
20
- traceId: typeof S.String;
21
- sampled: typeof import("@effect/schema/Schema").Boolean & {
22
- withDefault: S.PropertySignature<":", boolean, never, ":", boolean, true, never>;
23
- };
24
- }>>;
25
- }>;
14
+ export declare const QueueMeta: typeof RequestContext;
26
15
  //# sourceMappingURL=service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/services/QueueMaker/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,YAAY,CAAA;AAC9B,OAAO,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAA;AAC5E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAA;AAE1E,MAAM,WAAW,SAAS,CAAC,GAAG,EAAE,QAAQ;IACtC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EACpB,eAAe,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAC/D,SAAS,CAAC,EAAE,MAAM,KACf,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,uBAAuB,GAAG,mBAAmB,GAAG,MAAM,CAAC,CAAA;IACzF,OAAO,EAAE,CACP,GAAG,QAAQ,EAAE,qBAAqB,CAAC,GAAG,CAAC,KACpC,MAAM,CAAC,IAAI,CAAC,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;CAAG;AACjC,eAAO,MAAM,UAAU,EAAE,aAAkB,CAAA;AAE3C,eAAO,MAAM,SAAS;;;;;;;;;EAOpB,CAAA"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/services/QueueMaker/service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAA;AAE1E,MAAM,WAAW,SAAS,CAAC,GAAG,EAAE,QAAQ;IACtC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EACpB,eAAe,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAC/D,SAAS,CAAC,EAAE,MAAM,KACf,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,mBAAmB,GAAG,MAAM,CAAC,CAAA;IAC/D,OAAO,EAAE,CACP,GAAG,QAAQ,EAAE,qBAAqB,CAAC,GAAG,CAAC,KACpC,MAAM,CAAC,IAAI,CAAC,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;CAAG;AACjC,eAAO,MAAM,UAAU,EAAE,aAAkB,CAAA;AAE3C,eAAO,MAAM,SAAS,uBAAiB,CAAA"}
@@ -1,12 +1,4 @@
1
- import { S } from "effect-app";
2
1
  import { RequestContext } from "../../RequestContext.js";
3
2
  export const QueueMaker = {};
4
- export const QueueMeta = S.Struct({
5
- requestContext: RequestContext,
6
- span: S.optional(S.Struct({
7
- spanId: S.String,
8
- traceId: S.String,
9
- sampled: S.Boolean
10
- }))
11
- });
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9RdWV1ZU1ha2VyL3NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUU5QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFrQnhELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBa0IsRUFBRSxDQUFBO0FBRTNDLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ2hDLGNBQWMsRUFBRSxjQUFjO0lBQzlCLElBQUksRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDeEIsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNO1FBQ2hCLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTTtRQUNqQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU87S0FDbkIsQ0FBQyxDQUFDO0NBQ0osQ0FBQyxDQUFBIn0=
3
+ export const QueueMeta = RequestContext;
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9RdWV1ZU1ha2VyL3NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBaUJ4RCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQWtCLEVBQUUsQ0FBQTtBQUUzQyxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsY0FBYyxDQUFBIn0=
@@ -53,7 +53,7 @@ declare const RequestFiberSet_base: (abstract new (service: {
53
53
  register: <A, E, R>(self: Effect<A, E, R>) => Effect.Effect<A, E, R>;
54
54
  forkDaemonReport: <R_1, E_1, A>(self: Effect<A, E_1, R_1>) => Effect.Effect<Fiber.RuntimeFiber<A, E_1>, never, R_1>;
55
55
  forkDaemonReportUnexpected: <R_1, E_2, A_1>(self: Effect<A_1, E_2, R_1>) => Effect.Effect<Fiber.RuntimeFiber<A_1, E_2>, never, R_1>;
56
- }) => X) => X extends Effect<infer A_1_1, infer E_2_1, infer R_4> ? Effect<A_1_1, E_2_1, R_4 | RequestFiberSet> : Effect<X, never, RequestFiberSet>;
56
+ }) => X) => X extends Effect<infer A_1_1, infer E_2_1, infer R_4> ? Effect<A_1_1, E_2_1, RequestFiberSet | R_4> : Effect<X, never, RequestFiberSet>;
57
57
  };
58
58
  /**
59
59
  * Whenever you fork a fiber for a Request, and you want to prevent dependent services to close prematurely on interruption,
@@ -1,15 +1,11 @@
1
+ import { NonEmptyString255 } from "@effect-app/schema";
1
2
  import { Effect, FiberRef } from "effect-app";
2
- import type { RequestContext } from "../../RequestContext.js";
3
3
  import type { FilterArgs, PersistenceModelType, Store, StoreConfig } from "./service.js";
4
4
  import { StoreMaker } from "./service.js";
5
5
  export declare function memFilter<T extends {
6
6
  id: string;
7
7
  }, U extends keyof T = never>(f: FilterArgs<T, U>): (c: T[]) => (U extends undefined ? T : Pick<T, U>)[];
8
- export declare const storeId: FiberRef.FiberRef<string>;
9
- /**
10
- * @tsplus getter RequestContext restoreStoreId
11
- */
12
- export declare const restoreFromRequestContext: (ctx: RequestContext) => Effect.Effect<void, never, never>;
8
+ export declare const storeId: FiberRef.FiberRef<NonEmptyString255>;
13
9
  export declare function makeMemoryStoreInt<Id extends string, Encoded extends {
14
10
  id: Id;
15
11
  }, R = never, E = never>(modelName: string, namespace: string, seed?: Effect<Iterable<Encoded>, E, R>, _defaultValues?: Partial<Encoded>): Effect.Effect<Store<Encoded, Id, PersistenceModelType<Encoded>>, E, R>;
@@ -1 +1 @@
1
- {"version":3,"file":"Memory.d.ts","sourceRoot":"","sources":["../../../src/services/Store/Memory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAS,MAAM,EAAE,QAAQ,EAA0C,MAAM,YAAY,CAAA;AAI5F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAGzC,wBAAgB,SAAS,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,SAAS,MAAM,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,OAEpF,CAAC,EAAE,KAAG,wCAAG,CA0CtB;AAED,eAAO,MAAM,OAAO,2BAAiC,CAAA;AAErD;;GAEG;AACH,eAAO,MAAM,yBAAyB,QAAS,cAAc,sCAAsD,CAAA;AAmBnH,wBAAgB,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,OAAO,SAAS;IAAE,EAAE,EAAE,EAAE,CAAA;CAAE,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK,EACpG,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACtC,cAAc,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,0EAgIlC;AAED,eAAO,MAAM,eAAe;WACnB,EAAE,SAAS,MAAM,EAAE,OAAO,SAAS;QAAE,EAAE,EAAE,EAAE,CAAA;KAAE,EAAE,CAAC,UAAU,CAAC,qBACrD,MAAM,SACV,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,WAC7B,WAAW,CAAC,OAAO,CAAC;CAuC/B,CAAA;AAEF,eAAO,MAAM,eAAe,sDAA2D,CAAA"}
1
+ {"version":3,"file":"Memory.d.ts","sourceRoot":"","sources":["../../../src/services/Store/Memory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAS,MAAM,EAAE,QAAQ,EAA0C,MAAM,YAAY,CAAA;AAI5F,OAAO,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAGzC,wBAAgB,SAAS,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,SAAS,MAAM,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,OAEpF,CAAC,EAAE,KAAG,wCAAG,CA0CtB;AAGD,eAAO,MAAM,OAAO,sCAAoD,CAAA;AAmBxE,wBAAgB,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,OAAO,SAAS;IAAE,EAAE,EAAE,EAAE,CAAA;CAAE,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK,EACpG,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACtC,cAAc,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,0EAgIlC;AAED,eAAO,MAAM,eAAe;WACnB,EAAE,SAAS,MAAM,EAAE,OAAO,SAAS;QAAE,EAAE,EAAE,EAAE,CAAA;KAAE,EAAE,CAAC,UAAU,CAAC,qBACrD,MAAM,SACV,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,WAC7B,WAAW,CAAC,OAAO,CAAC;CAuC/B,CAAA;AAEF,eAAO,MAAM,eAAe,sDAA2D,CAAA"}
@@ -1,4 +1,5 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ import { NonEmptyString255 } from "@effect-app/schema";
2
3
  import { Array, Effect, FiberRef, flow, Option, Order, pipe, Ref, Struct } from "effect-app";
3
4
  import { get } from "effect-app/utils";
4
5
  import { InfraLogger } from "../../logger.js";
@@ -37,11 +38,8 @@ export function memFilter(f) {
37
38
  return select(r);
38
39
  });
39
40
  }
40
- export const storeId = FiberRef.unsafeMake("primary");
41
- /**
42
- * @tsplus getter RequestContext restoreStoreId
43
- */
44
- export const restoreFromRequestContext = (ctx) => FiberRef.set(storeId, ctx.namespace ?? "primary");
41
+ const defaultNs = NonEmptyString255("primary");
42
+ export const storeId = FiberRef.unsafeMake(defaultNs);
45
43
  function logQuery(f, defaultValues) {
46
44
  return InfraLogger
47
45
  .logDebug("mem query")
@@ -168,4 +166,4 @@ export const makeMemoryStore = () => ({
168
166
  })
169
167
  });
170
168
  export const MemoryStoreLive = StoreMaker.toLayer(Effect.sync(() => makeMemoryStore()));
171
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVtb3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL1N0b3JlL01lbW9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFFdkQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRTVGLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFHN0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUV2RCxNQUFNLFVBQVUsU0FBUyxDQUFzRCxDQUFtQjtJQUVoRyxPQUFPLENBQUMsQ0FBQyxDQUFNLEVBQU8sRUFBRTtRQUN0QixNQUFNLE1BQU0sR0FBRyxDQUFDLENBQU0sRUFBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFRLENBQUE7UUFDdkYsTUFBTSxJQUFJLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQTtRQUNwQixNQUFNLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxDQUFBO1FBQ3RCLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUMxRCxDQUFDLENBQUMsR0FBRyxDQUFDLENB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
169
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVtb3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL1N0b3JlL01lbW9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFFdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDdEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRTVGLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFFN0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUV2RCxNQUFNLFVBQVUsU0FBUyxDQUFzRCxDQUFtQjtJQUVoRyxPQUFPLENBQUMsQ0FBQyxDQUFNLEVBQU8sRUFBRTtRQUN0QixNQUFNLE1BQU0sR0FBRyxDQUFDLENBQU0sRUFBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFRLENBQUE7UUFDdkYsTUFBTSxJQUFJLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQTtRQUNwQixNQUFNLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxDQUFBO1FBQ3RCLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUMxRCxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDVixLQUFLLENBQUMsSUFBSSxDQUFJLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFO1lBQzNCLHFEQUFxRDtZQUNyRCxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxLQUFLLENBQUE7WUFDdkMsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxDQUFBO1lBQ3ZDLElBQUksS0FBSyxLQUFLLEtBQUssRUFBRSxDQUFDO2dCQUNwQixPQUFPLENBQUMsQ0FBQTtZQUNWLENBQUM7WUFDRCxJQUFJLENBQUMsQ0FBQyxTQUFTLEtBQUssS0FBSyxFQUFFLENBQUM7Z0JBQzFCLE9BQU8sS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUMvQixDQUFDO1lBQ0QsT0FBTyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQy9CLENBQUMsQ0FBQyxDQUNILENBQUMsQ0FBQTtRQUNKLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3hCLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ3BDLENBQUM7UUFDRCxJQUFJLENBQUMsSUFBSSxJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN6QixPQUFPLE1BQU0sQ0FDWCxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDOUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQ3RCLE1BQU0sQ0FBQyxTQUFTLENBQ2QsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUNULENBQ0YsQ0FDRixDQUFBO1FBQ0gsQ0FBQztRQUNELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQy9ELElBQUksSUFBSSxFQUFFLENBQUM7WUFDVCxDQUFDLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDekIsQ0FBQztRQUNELElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3hCLENBQUMsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQTtRQUMxQixDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDbEIsQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDO0FBRUQsTUFBTSxTQUFTLEdBQUcsaUJBQWlCLENBQUMsU0FBUyxDQUFDLENBQUE7QUFDOUMsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQW9CLFNBQVMsQ0FBQyxDQUFBO0FBRXhFLFNBQVMsUUFBUSxDQUFDLENBQXVCLEVBQUUsYUFBbUI7SUFDNUQsT0FBTyxXQUFXO1NBQ2YsUUFBUSxDQUFDLFdBQVcsQ0FBQztTQUNyQixJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUN4QixNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FDcEIsQ0FBQyxDQUFDLE1BQU0sRUFDUixTQUFTLEVBQ1QsQ0FBQyxDQUNGO1FBQ0QsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUM5QyxhQUFhLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUMxRCxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUk7UUFDWixLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUs7S0FDZixDQUFDLENBQUMsQ0FBQTtBQUNQLENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQ2hDLFNBQWlCLEVBQ2pCLFNBQWlCLEVBQ2pCLElBQXNDLEVBQ3RDLGNBQWlDO0lBR2pDLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7UUFDekIsTUFBTSxVQUFVLEdBQUcsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQzVDLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxDQUFDLElBQUksSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1FBQ25ELE1BQU0sYUFBYSxHQUFHLGNBQWMsSUFBSSxFQUFFLENBQUE7UUFFMUMsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxHQUFHLGFBQWEsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFVLENBQUMsQ0FBQyxDQUFBO1FBQzVHLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxVQUFVLENBQXNCLEtBQUssQ0FBQyxDQUFBO1FBQ3hELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUN6QyxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ3JDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUE7UUFFNUQsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFBO1FBRWxELE1BQU0sUUFBUSxHQUFHLENBQUMsS0FBZ0MsRUFBRSxFQUFFLENBQ3BELE1BQU07YUFDSCxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7YUFDeEYsSUFBSSxDQUNILE1BQU07YUFDSCxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNiLEdBQUc7YUFDQSxHQUFHLENBQUMsS0FBSyxDQUFDO2FBQ1YsSUFBSSxDQUNILE1BQU07YUFDSCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNULE1BQU0sR0FBRyxHQUFHLENBQWdCLENBQUE7WUFDNUIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDdEMsT0FBTyxHQUFHLENBQUE7UUFDWixDQUFDLENBQUMsRUFDSixNQUFNO2FBQ0gsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUNyQyxDQUNKLEVBQ0gsTUFBTTthQUNILEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQ2hCLFVBQVUsQ0FDWCxDQUFBO1FBQ0wsTUFBTSxDQUFDLEdBQXVCO1lBQzVCLEdBQUcsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMscUNBQXFDLEVBQUU7Z0JBQ25FLGlCQUFpQixFQUFFLEtBQUs7Z0JBQ3hCLFVBQVUsRUFBRTtvQkFDVixTQUFTO29CQUNULFNBQVM7aUJBQ1Y7YUFDRixDQUFDLENBQUM7WUFDSCxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUNYLEdBQUc7aUJBQ0EsR0FBRyxDQUFDLEtBQUssQ0FBQztpQkFDVixJQUFJLENBQ0gsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFDakQsTUFBTTtpQkFDSCxRQUFRLENBQUMsc0NBQXNDLEVBQUU7Z0JBQ2hELGlCQUFpQixFQUFFLEtBQUs7Z0JBQ3hCLFVBQVUsRUFBRTtvQkFDVixTQUFTO29CQUNULFNBQVM7aUJBQ1Y7YUFDRixDQUFDLENBQ0w7WUFDTCxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNaLEdBQUc7aUJBQ0EsSUFBSSxDQUNILE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxhQUFhLENBQUMsQ0FBQyxFQUM1QyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUN4QixNQUFNLENBQUMsUUFBUSxDQUFDLHdDQUF3QyxFQUFFO2dCQUN4RCxpQkFBaUIsRUFBRSxLQUFLO2dCQUN4QixVQUFVLEVBQUUsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsU0FBUyxFQUFFO2FBQ3RGLENBQUMsQ0FDSDtZQUNMLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ1QsQ0FBQztpQkFDRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztpQkFDVixJQUFJLENBQ0gsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxFQUNuRCxNQUFNO2lCQUNILEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ1QsR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQ2pCLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUM3QyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUN6QyxDQUNGLEVBQ0gsVUFBVSxFQUNWLE1BQU07aUJBQ0gsUUFBUSxDQUFDLHFDQUFxQyxFQUFFO2dCQUMvQyxpQkFBaUIsRUFBRSxLQUFLO2dCQUN4QixVQUFVLEVBQUUsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsU0FBUyxFQUFFO2FBQ3RGLENBQUMsQ0FDTDtZQUNMLFFBQVEsRUFBRSxDQUFDLEtBQTZCLEVBQUUsRUFBRSxDQUMxQyxJQUFJLENBQ0YsTUFBTTtpQkFDSCxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDO2dCQUNsQixzQkFBc0I7aUJBQ3JCLElBQUksQ0FDSCxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLElBQUksR0FBRyxFQUFFLDRDQUE0QyxDQUFDLEVBQy9GLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQ3hCLE1BQU07aUJBQ0gsUUFBUSxDQUFDLDBDQUEwQyxFQUFFO2dCQUNwRCxpQkFBaUIsRUFBRSxLQUFLO2dCQUN4QixVQUFVLEVBQUUsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsU0FBUyxFQUFFO2FBQ3RGLENBQUMsQ0FDTCxDQUNKO1lBQ0gsT0FBTyxFQUFFLElBQUksQ0FDWCxRQUFRLEVBQ1IsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNKLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyx5Q0FBeUMsRUFBRTtnQkFDaEUsaUJBQWlCLEVBQUUsS0FBSztnQkFDeEIsVUFBVSxFQUFFLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLHNCQUFzQixFQUFFLFNBQVMsRUFBRTthQUN0RixDQUFDLENBQUMsQ0FDTjtZQUNELE1BQU0sRUFBRSxDQUFDLENBQVUsRUFBRSxFQUFFLENBQ3JCLEdBQUc7aUJBQ0EsR0FBRyxDQUFDLEtBQUssQ0FBQztpQkFDVixJQUFJLENBQ0gsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUM5RCxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUN4QyxVQUFVLEVBQ1YsTUFBTSxDQUFDLFFBQVEsQ0FBQyx3Q0FBd0MsRUFBRTtnQkFDeEQsaUJBQWlCLEVBQUUsS0FBSztnQkFDeEIsVUFBVSxFQUFFLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLHNCQUFzQixFQUFFLFNBQVMsRUFBRTthQUN0RixDQUFDLENBQ0g7U0FDTixDQUFBO1FBQ0QsT0FBTyxDQUFDLENBQUE7SUFDVixDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUNwQyxJQUFJLEVBQUUsQ0FDSixTQUFpQixFQUNqQixJQUFzQyxFQUN0QyxNQUE2QixFQUM3QixFQUFFLENBQ0YsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7UUFDbEIsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQy9DLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDLGtCQUFrQixDQUFvQixTQUFTLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsYUFBYSxDQUFDLENBQUE7UUFDL0csTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBSyxDQUFBO1FBQ3RDLE1BQU0sTUFBTSxHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzlDLE1BQU0sUUFBUSxHQUFHLENBQUMsTUFBTSxFQUFFLGNBQWM7WUFDdEMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO1lBQ3pCLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7Z0JBQ3hELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUE7Z0JBQ25DLElBQUksS0FBSyxFQUFFLENBQUM7b0JBQ1YsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO2dCQUM5QixDQUFDO2dCQUNELElBQUksQ0FBQyxNQUFNLENBQUMsY0FBZSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7b0JBQ3ZDLE1BQU0sSUFBSSxLQUFLLENBQUMsYUFBYSxTQUFTLGVBQWUsQ0FBQyxDQUFBO2dCQUN4RCxDQUFDO2dCQUNELE9BQU8sU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRTtvQkFDbEQsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQTtvQkFDbkMsSUFBSSxLQUFLO3dCQUFFLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQTtvQkFDMUMsT0FBTyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsYUFBYSxDQUFDO3lCQUN6RSxJQUFJLENBQ0gsTUFBTSxDQUFDLEtBQUssRUFDWixNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUNuQixNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FDdkUsQ0FBQTtnQkFDTCxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQ0wsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNMLE1BQU0sQ0FBQyxHQUF1QjtZQUM1QixHQUFHLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7WUFDM0MsSUFBSSxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDbkUsTUFBTSxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDdkUsR0FBRyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDakUsUUFBUSxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDM0UsT0FBTyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDekUsTUFBTSxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7U0FDeEUsQ0FBQTtRQUNELE9BQU8sQ0FBQyxDQUFBO0lBQ1YsQ0FBQyxDQUFDO0NBQ0wsQ0FBQyxDQUFBO0FBRUYsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLENBQUEifQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect-app/infra",
3
- "version": "1.45.1",
3
+ "version": "1.46.1",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -21,9 +21,9 @@
21
21
  "pure-rand": "6.1.0",
22
22
  "redlock": "^4.2.0",
23
23
  "@effect-app/core": "1.17.1",
24
- "effect-app": "1.30.5",
25
- "@effect-app/infra-adapters": "1.20.6",
26
- "@effect-app/schema": "1.19.1"
24
+ "@effect-app/infra-adapters": "1.21.0",
25
+ "@effect-app/schema": "1.19.1",
26
+ "effect-app": "1.30.5"
27
27
  },
28
28
  "devDependencies": {
29
29
  "@babel/cli": "^7.25.7",
@@ -45,7 +45,7 @@
45
45
  "express": "^4.21.1",
46
46
  "@effect/platform": "^0.68.6",
47
47
  "@effect/schema": "^0.75.5",
48
- "@effect/sql": "^0.16.6",
48
+ "@effect/sql": "^0.17.0",
49
49
  "@effect/vitest": "^0.12.1",
50
50
  "effect": "^3.9.2"
51
51
  },
@@ -507,16 +507,6 @@
507
507
  "default": "./_cjs/services/RepositoryBase.cjs"
508
508
  }
509
509
  },
510
- "./services/RequestContextContainer": {
511
- "import": {
512
- "types": "./dist/services/RequestContextContainer.d.ts",
513
- "default": "./dist/services/RequestContextContainer.js"
514
- },
515
- "require": {
516
- "types": "./dist/services/RequestContextContainer.d.ts",
517
- "default": "./_cjs/services/RequestContextContainer.cjs"
518
- }
519
- },
520
510
  "./services/RequestFiberSet": {
521
511
  "import": {
522
512
  "types": "./dist/services/RequestFiberSet.d.ts",
@@ -1,21 +1,11 @@
1
1
  import { ExtendedTaggedClass, NonEmptyString255 } from "@effect-app/schema"
2
- import { S } from "effect-app"
3
- import { RequestId, UserProfileId } from "effect-app/ids"
2
+ import { FiberRef, S } from "effect-app"
3
+ import { UserProfileId } from "effect-app/ids"
4
4
 
5
5
  export const Locale = S.Literal("en", "de")
6
6
  export type Locale = typeof Locale.Type
7
7
 
8
- // TPDP: kind of obsolete now that we use actual spans
9
- export class RequestContextParent extends ExtendedTaggedClass<
10
- RequestContextParent,
11
- RequestContextParent.From
12
- >()("RequestContext", {
13
- id: RequestId,
14
- name: NonEmptyString255,
15
- userProfile: S.optional(S.Struct({ sub: UserProfileId })),
16
- locale: Locale,
17
- createdAt: S.Date.withDefault
18
- }) {}
8
+ export const LocaleRef = FiberRef.unsafeMake<Locale>("en")
19
9
 
20
10
  /**
21
11
  * @tsplus type RequestContext
@@ -25,47 +15,29 @@ export class RequestContext extends ExtendedTaggedClass<
25
15
  RequestContext,
26
16
  RequestContext.From
27
17
  >()("RequestContext", {
28
- ...RequestContextParent.omit("_tag", "id"),
29
- id: RequestId.withDefault,
30
- rootId: RequestId,
31
- sourceId: S.optional(NonEmptyString255),
32
- parent: S.optional(RequestContextParent),
33
- namespace: S.optional(NonEmptyString255)
34
- // ...RequestContextParent.omit("id").extend({
35
- // id: RequestId.withDefault,
36
- // rootId: RequestId,
37
- // parent: RequestContextParent.optional(),
38
- // namespace: NonEmptyString255.optional()
39
- // })
18
+ span: S.Struct({
19
+ traceId: S.String,
20
+ spanId: S.String,
21
+ sampled: S.Boolean
22
+ }),
23
+ name: NonEmptyString255,
24
+ locale: Locale,
25
+ sourceId: S.optional(NonEmptyString255), // TODO?
26
+ namespace: NonEmptyString255,
27
+ /** @deprecated */
28
+ userProfile: S.optional(S.Struct({ sub: UserProfileId })) //
40
29
  }) {
41
30
  // static Tag = Context.Tag<RequestContext>()
42
- static inherit(
43
- this: void,
44
- parent: RequestContext,
45
- newSelf: ConstructorParameters<typeof RequestContextParent>[0]
46
- ) {
47
- return new RequestContext({
48
- namespace: parent?.namespace,
49
- ...newSelf,
50
- rootId: parent.rootId,
51
- parent
52
- })
53
- }
54
31
 
55
32
  static toMonitoring(this: void, self: RequestContext) {
56
33
  return {
57
34
  operationName: self.name,
58
- locale: self.locale,
59
- ...(self.parent
60
- ? { parentOperationName: self.parent.name, parentLocale: self.parent.locale }
61
- : {})
35
+ locale: self.locale
62
36
  }
63
37
  }
64
38
  }
65
39
 
66
- export const spanAttributes = (ctx: RequestContext) => ({
67
- "request.id": ctx.id,
68
- "request.root.id": ctx.rootId,
40
+ export const spanAttributes = (ctx: Pick<RequestContext, "locale" | "namespace"> & Partial<RequestContext>) => ({
69
41
  "request.name": ctx.name,
70
42
  "request.locale": ctx.locale,
71
43
  "request.namespace": ctx.namespace,
@@ -86,9 +58,6 @@ export const spanAttributes = (ctx: RequestContext) => ({
86
58
  // codegen:start {preset: model}
87
59
  //
88
60
  /* eslint-disable */
89
- export namespace RequestContextParent {
90
- export interface From extends S.Struct.Encoded<typeof RequestContextParent["fields"]> {}
91
- }
92
61
  export namespace RequestContext {
93
62
  export interface From extends S.Struct.Encoded<typeof RequestContext["fields"]> {}
94
63
  }
@@ -3,17 +3,14 @@ import { HttpMiddleware, HttpServerRequest, HttpServerResponse } from "effect-ap
3
3
  import { RequestId } from "effect-app/ids"
4
4
  import { NonEmptyString255 } from "effect-app/schema"
5
5
  import { Locale, RequestContext } from "../../RequestContext.js"
6
- import { RequestContextContainer } from "../../services/RequestContextContainer.js"
7
- import { setupExistingRequestContext } from "../setupRequest.js"
6
+ import { setupRequestContext } from "../setupRequest.js"
8
7
 
9
8
  export const RequestContextMiddleware = (defaultLocale: Locale = "en") =>
10
9
  HttpMiddleware.make((app) =>
11
10
  Effect.gen(function*() {
12
11
  const req = yield* HttpServerRequest.HttpServerRequest
13
12
 
14
- const currentSpan = yield* Effect.currentSpan
15
- const parent = currentSpan?.parent ? currentSpan.parent.value : undefined
16
- const start = new Date()
13
+ const currentSpan = yield* Effect.currentSpan.pipe(Effect.orDie)
17
14
  const supported = Locale.literals
18
15
  const desiredLocale = req.headers["x-locale"]
19
16
  // eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-explicit-any
@@ -21,43 +18,25 @@ export const RequestContextMiddleware = (defaultLocale: Locale = "en") =>
21
18
  ? (desiredLocale as typeof supported[number])
22
19
  : defaultLocale
23
20
 
24
- const requestId = req.headers["request-id"]
25
- const rootId = parent?.spanId
26
- ? RequestId(parent.spanId)
27
- : requestId
28
- ? RequestId(requestId)
29
- : RequestId.make()
30
-
31
- const storeId = req.headers["x-store-id"]
32
- const namespace = NonEmptyString255((storeId && (Array.isArray(storeId) ? storeId[0] : storeId)) || "primary")
33
-
21
+ const ns = req.headers["x-store-id"]
22
+ const namespace = NonEmptyString255((ns && (Array.isArray(ns) ? ns[0] : ns)) || "primary")
34
23
  const deviceId = req.headers["x-fe-device-id"]
35
24
 
36
25
  const requestContext = new RequestContext({
37
- id: currentSpan?.spanId ? RequestId(currentSpan.spanId) : RequestId.make(),
38
- rootId,
26
+ span: {
27
+ traceId: RequestId(currentSpan.traceId),
28
+ spanId: RequestId(currentSpan.spanId),
29
+ sampled: currentSpan.sampled
30
+ },
39
31
  name: NonEmptyString255(req.originalUrl), // set more detailed elsewhere
40
32
  locale,
41
- createdAt: start,
42
33
  namespace,
43
34
  sourceId: deviceId ? NonEmptyString255(deviceId) : undefined
44
- // ...(context.operation.parentId
45
- // ? {
46
- // parent: new RequestContextParent({
47
- // id: RequestId(context.operation.parentId),
48
- // locale,
49
- // name: NonEmptyString255("API Request")
50
- // })
51
- // }
52
- // : {})
53
35
  })
54
- const rcc = yield* RequestContextContainer
55
- yield* rcc.update((_) => requestContext)
56
- const res = yield* setupExistingRequestContext(app, requestContext)
36
+ const res = yield* setupRequestContext(app, requestContext)
57
37
 
58
38
  // TODO: how to set also on errors?
59
39
  return HttpServerResponse.setHeaders(res, {
60
- "request-id": requestContext.rootId,
61
40
  "Content-Language": requestContext.locale
62
41
  })
63
42
  })
@@ -1,4 +1,4 @@
1
- import { setupRequestContext } from "@effect-app/infra/api/setupRequest"
1
+ import { setupRequestContextFromCurrent } from "@effect-app/infra/api/setupRequest"
2
2
  import { reportError } from "@effect-app/infra/errorReporter"
3
3
  import { Duration, Effect, pipe, S, Schedule, Stream } from "effect-app"
4
4
  import { HttpHeaders, HttpServerResponse } from "effect-app/http"
@@ -53,4 +53,4 @@ export const makeSSE = <A extends { id: any }, E, R, SI, SR>(
53
53
  )
54
54
  return res
55
55
  })
56
- .pipe(Effect.tapErrorCause(reportError("Request")), (_) => setupRequestContext(_, "events"))
56
+ .pipe(Effect.tapErrorCause(reportError("Request")), setupRequestContextFromCurrent("events"))