@effect-app/infra 1.45.0 → 1.46.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 (91) 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 +28 -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 +15 -12
  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/RepositoryBase.cjs +3 -2
  27. package/_cjs/services/RepositoryBase.cjs.map +1 -1
  28. package/_cjs/services/Store/Memory.cjs +4 -7
  29. package/_cjs/services/Store/Memory.cjs.map +1 -1
  30. package/dist/RequestContext.d.ts +20 -63
  31. package/dist/RequestContext.d.ts.map +1 -1
  32. package/dist/RequestContext.js +16 -38
  33. package/dist/api/internal/RequestContextMiddleware.d.ts +1 -2
  34. package/dist/api/internal/RequestContextMiddleware.d.ts.map +1 -1
  35. package/dist/api/internal/RequestContextMiddleware.js +11 -30
  36. package/dist/api/internal/events.d.ts +1 -1
  37. package/dist/api/internal/events.d.ts.map +1 -1
  38. package/dist/api/internal/events.js +3 -3
  39. package/dist/api/setupRequest.d.ts +3 -7
  40. package/dist/api/setupRequest.d.ts.map +1 -1
  41. package/dist/api/setupRequest.js +28 -47
  42. package/dist/errorReporter.d.ts.map +1 -1
  43. package/dist/errorReporter.js +5 -7
  44. package/dist/logger/jsonLogger.d.ts.map +1 -1
  45. package/dist/logger/jsonLogger.js +4 -4
  46. package/dist/logger/logFmtLogger.d.ts.map +1 -1
  47. package/dist/logger/logFmtLogger.js +3 -4
  48. package/dist/logger/shared.d.ts +2 -2
  49. package/dist/logger/shared.d.ts.map +1 -1
  50. package/dist/logger/shared.js +13 -10
  51. package/dist/services/QueueMaker/SQLQueue.d.ts +3 -4
  52. package/dist/services/QueueMaker/SQLQueue.d.ts.map +1 -1
  53. package/dist/services/QueueMaker/SQLQueue.js +5 -18
  54. package/dist/services/QueueMaker/memQueue.d.ts +2 -3
  55. package/dist/services/QueueMaker/memQueue.d.ts.map +1 -1
  56. package/dist/services/QueueMaker/memQueue.js +6 -16
  57. package/dist/services/QueueMaker/sbqueue.d.ts +2 -3
  58. package/dist/services/QueueMaker/sbqueue.d.ts.map +1 -1
  59. package/dist/services/QueueMaker/sbqueue.js +6 -16
  60. package/dist/services/QueueMaker/service.d.ts +2 -13
  61. package/dist/services/QueueMaker/service.d.ts.map +1 -1
  62. package/dist/services/QueueMaker/service.js +2 -10
  63. package/dist/services/Repository/ext.d.ts +11 -11
  64. package/dist/services/RepositoryBase.d.ts +6 -6
  65. package/dist/services/RepositoryBase.d.ts.map +1 -1
  66. package/dist/services/RepositoryBase.js +3 -3
  67. package/dist/services/RequestFiberSet.d.ts +1 -1
  68. package/dist/services/Store/Memory.d.ts +2 -6
  69. package/dist/services/Store/Memory.d.ts.map +1 -1
  70. package/dist/services/Store/Memory.js +4 -6
  71. package/package.json +4 -14
  72. package/src/RequestContext.ts +15 -46
  73. package/src/api/internal/RequestContextMiddleware.ts +10 -31
  74. package/src/api/internal/events.ts +2 -2
  75. package/src/api/setupRequest.ts +38 -72
  76. package/src/errorReporter.ts +4 -6
  77. package/src/logger/jsonLogger.ts +3 -3
  78. package/src/logger/logFmtLogger.ts +2 -3
  79. package/src/logger/shared.ts +15 -9
  80. package/src/services/QueueMaker/SQLQueue.ts +5 -19
  81. package/src/services/QueueMaker/memQueue.ts +5 -15
  82. package/src/services/QueueMaker/sbqueue.ts +5 -15
  83. package/src/services/QueueMaker/service.ts +2 -11
  84. package/src/services/RepositoryBase.ts +1 -2
  85. package/src/services/Store/Memory.ts +3 -7
  86. package/_cjs/services/RequestContextContainer.cjs +0 -36
  87. package/_cjs/services/RequestContextContainer.cjs.map +0 -1
  88. package/dist/services/RequestContextContainer.d.ts +0 -42
  89. package/dist/services/RequestContextContainer.d.ts.map +0 -1
  90. package/dist/services/RequestContextContainer.js +0 -31
  91. package/src/services/RequestContextContainer.ts +0 -53
@@ -1 +1 @@
1
- {"version":3,"file":"RequestContext.d.ts","sourceRoot":"","sources":["../src/RequestContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAC3E,OAAO,EAAE,CAAC,EAAE,MAAM,YAAY,CAAA;AAG9B,eAAO,MAAM,MAAM,yBAAwB,CAAA;AAC3C,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,IAAI,CAAA;;;;;;uBAW5B,iBAAiB,iBAIzB,sBAAqB;;;uBAKV,iBACL,iBACP,sBAAsB;;;;;;2BAaN,iBAAiB;;;2BAcG,iBAAiB;;;;;;;;;;;;;;AA9CvD,qBAAa,oBAAqB,SAAQ,yBASxC;CAAG;;;;;;;uBADM,iBAAiB,iBAIzB,sBAAqB;;;uBAKV,iBACL,iBACP,sBAAsB;;;;;;;;;;;2BAaN,iBAAiB;;;2BAcG,iBAAiB;;;;;;;;;;;;;;;;AAnCvD;;;GAGG;AACH,qBAAa,cAAe,SAAQ,mBAgBlC;IAEA,MAAM,CAAC,OAAO,CACZ,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,qBAAqB,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAUhE,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc;;;;;;CASrD;AAED,eAAO,MAAM,cAAc,QAAS,cAAc;;;;;;;;;CAkBhD,CAAA;AAKF,yBAAiB,oBAAoB,CAAC;IACpC,UAAiB,IAAK,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,oBAAoB,CAAC,QAAQ,CAAC,CAAC;KAAG;CACzF;AACD,yBAAiB,cAAc,CAAC;IAC9B,UAAiB,IAAK,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC;KAAG;CACnF"}
1
+ {"version":3,"file":"RequestContext.d.ts","sourceRoot":"","sources":["../src/RequestContext.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,YAAY,CAAA;AAGxC,eAAO,MAAM,MAAM,yBAAwB,CAAA;AAC3C,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,IAAI,CAAA;AAEvC,eAAO,MAAM,SAAS,gCAAoC,CAAA;;;;;;;;;;;;;;;IAmBxD,kBAAkB;;;;2BAoBd,iBAAY;;;2BAegC,iBAAiB;;;;;;;;;;;;;;;;;AApDnE;;;GAGG;AACH,qBAAa,cAAe,SAAQ,mBAelC;IAGA,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc;;;;CAMrD;AAED,eAAO,MAAM,cAAc,QAAS,cAAc;;;;;;;CAgBhD,CAAA;AAKF,yBAAiB,cAAc,CAAC;IAC9B,UAAiB,IAAK,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC;KAAG;CACnF"}
@@ -1,56 +1,34 @@
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
  export const Locale = S.Literal("en", "de");
5
- // TPDP: kind of obsolete now that we use actual spans
6
- export class RequestContextParent extends ExtendedTaggedClass()("RequestContext", {
7
- id: RequestId,
8
- name: NonEmptyString255,
9
- userProfile: S.optional(S.Struct({ sub: UserProfileId })),
10
- locale: Locale,
11
- createdAt: S.Date.withDefault
12
- }) {
13
- }
5
+ export const LocaleRef = FiberRef.unsafeMake("en");
14
6
  /**
15
7
  * @tsplus type RequestContext
16
8
  * @tsplus companion RequestContext.Ops
17
9
  */
18
10
  export class RequestContext extends ExtendedTaggedClass()("RequestContext", {
19
- ...RequestContextParent.omit("_tag", "id"),
20
- id: RequestId.withDefault,
21
- rootId: RequestId,
22
- sourceId: S.optional(NonEmptyString255),
23
- parent: S.optional(RequestContextParent),
24
- namespace: S.optional(NonEmptyString255)
25
- // ...RequestContextParent.omit("id").extend({
26
- // id: RequestId.withDefault,
27
- // rootId: RequestId,
28
- // parent: RequestContextParent.optional(),
29
- // namespace: NonEmptyString255.optional()
30
- // })
11
+ span: S.Struct({
12
+ traceId: S.String,
13
+ spanId: S.String,
14
+ sampled: S.Boolean
15
+ }),
16
+ name: NonEmptyString255,
17
+ locale: Locale,
18
+ sourceId: S.optional(NonEmptyString255), // TODO?
19
+ namespace: NonEmptyString255,
20
+ /** @deprecated */
21
+ userProfile: S.optional(S.Struct({ sub: UserProfileId })) //
31
22
  }) {
32
23
  // static Tag = Context.Tag<RequestContext>()
33
- static inherit(parent, newSelf) {
34
- return new RequestContext({
35
- namespace: parent?.namespace,
36
- ...newSelf,
37
- rootId: parent.rootId,
38
- parent
39
- });
40
- }
41
24
  static toMonitoring(self) {
42
25
  return {
43
26
  operationName: self.name,
44
- locale: self.locale,
45
- ...(self.parent
46
- ? { parentOperationName: self.parent.name, parentLocale: self.parent.locale }
47
- : {})
27
+ locale: self.locale
48
28
  };
49
29
  }
50
30
  }
51
31
  export const spanAttributes = (ctx) => ({
52
- "request.id": ctx.id,
53
- "request.root.id": ctx.rootId,
54
32
  "request.name": ctx.name,
55
33
  "request.locale": ctx.locale,
56
34
  "request.namespace": ctx.namespace,
@@ -71,4 +49,4 @@ export const spanAttributes = (ctx) => ({
71
49
  //
72
50
  // codegen:end
73
51
  //
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdENvbnRleHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvUmVxdWVzdENvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDM0UsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUM5QixPQUFPLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRXpELE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQTtBQUczQyxzREFBc0Q7QUFDdEQsTUFBTSxPQUFPLG9CQUFxQixTQUFRLG1CQUFtQixFQUcxRCxDQUFDLGdCQUFnQixFQUFFO0lBQ3BCLEVBQUUsRUFBRSxTQUFTO0lBQ2IsSUFBSSxFQUFFLGlCQUFpQjtJQUN2QixXQUFXLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsR0FBRyxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDekQsTUFBTSxFQUFFLE1BQU07SUFDZCxTQUFTLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXO0NBQzlCLENBQUM7Q0FBRztBQUVMOzs7R0FHRztBQUNILE1BQU0sT0FBTyxjQUFlLFNBQVEsbUJBQW1CLEVBR3BELENBQUMsZ0JBQWdCLEVBQUU7SUFDcEIsR0FBRyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQztJQUMxQyxFQUFFLEVBQUUsU0FBUyxDQUFDLFdBQVc7SUFDekIsTUFBTSxFQUFFLFNBQVM7SUFDakIsUUFBUSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUM7SUFDdkMsTUFBTSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUM7SUFDeEMsU0FBUyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUM7SUFDeEMsOENBQThDO0lBQzlDLCtCQUErQjtJQUMvQix1QkFBdUI7SUFDdkIsNkNBQTZDO0lBQzdDLDRDQUE0QztJQUM1QyxLQUFLO0NBQ04sQ0FBQztJQUNBLDZDQUE2QztJQUM3QyxNQUFNLENBQUMsT0FBTyxDQUVaLE1BQXNCLEVBQ3RCLE9BQThEO1FBRTlELE9BQU8sSUFBSSxjQUFjLENBQUM7WUFDeEIsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTO1lBQzVCLEdBQUcsT0FBTztZQUNWLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtZQUNyQixNQUFNO1NBQ1AsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZLENBQWEsSUFBb0I7UUFDbEQsT0FBTztZQUNMLGFBQWEsRUFBRSxJQUFJLENBQUMsSUFBSTtZQUN4QixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNO2dCQUNiLENBQUMsQ0FBQyxFQUFFLG1CQUFtQixFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtnQkFDN0UsQ0FBQyxDQUFDLEVBQUUsQ0FBQztTQUNSLENBQUE7SUFDSCxDQUFDO0NBQ0Y7QUFFRCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxHQUFtQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELFlBQVksRUFBRSxHQUFHLENBQUMsRUFBRTtJQUNwQixpQkFBaUIsRUFBRSxHQUFHLENBQUMsTUFBTTtJQUM3QixjQUFjLEVBQUUsR0FBRyxDQUFDLElBQUk7SUFDeEIsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLE1BQU07SUFDNUIsbUJBQW1CLEVBQUUsR0FBRyxDQUFDLFNBQVM7SUFDbEMsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRTtJQUM1RCxHQUFHLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxHQUFHO1FBQ3RCLENBQUMsQ0FBQztZQUNBLGtCQUFrQixFQUFFLEdBQUc7aUJBQ3BCLFdBQVc7aUJBQ1gsR0FBRztZQUNOLG9CQUFvQixFQUFFLE9BQU8sSUFBSSxHQUFHO2lCQUMvQixXQUFXO2dCQUNkLENBQUMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEtBQUs7Z0JBQ3ZCLENBQUMsQ0FBQyxTQUFTO1NBQ2Q7UUFDRCxDQUFDLENBQUMsRUFBRSxDQUFDO0NBQ1IsQ0FBQyxDQUFBO0FBV0YsbUJBQW1CO0FBQ25CLEVBQUU7QUFDRixjQUFjO0FBQ2QsRUFBRSJ9
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdENvbnRleHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvUmVxdWVzdENvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDM0UsT0FBTyxFQUFFLFFBQVEsRUFBRSxDQUFDLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDeEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRTlDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQTtBQUczQyxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBUyxJQUFJLENBQUMsQ0FBQTtBQUUxRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sY0FBZSxTQUFRLG1CQUFtQixFQUdwRCxDQUFDLGdCQUFnQixFQUFFO0lBQ3BCLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQ2IsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNO1FBQ2pCLE1BQU0sRUFBRSxDQUFDLENBQUMsTUFBTTtRQUNoQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU87S0FDbkIsQ0FBQztJQUNGLElBQUksRUFBRSxpQkFBaUI7SUFDdkIsTUFBTSxFQUFFLE1BQU07SUFDZCxRQUFRLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLFFBQVE7SUFDakQsU0FBUyxFQUFFLGlCQUFpQjtJQUM1QixrQkFBa0I7SUFDbEIsV0FBVyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRTtDQUM3RCxDQUFDO0lBQ0EsNkNBQTZDO0lBRTdDLE1BQU0sQ0FBQyxZQUFZLENBQWEsSUFBb0I7UUFDbEQsT0FBTztZQUNMLGFBQWEsRUFBRSxJQUFJLENBQUMsSUFBSTtZQUN4QixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDcEIsQ0FBQTtJQUNILENBQUM7Q0FDRjtBQUVELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLEdBQW1CLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDdEQsY0FBYyxFQUFFLEdBQUcsQ0FBQyxJQUFJO0lBQ3hCLGdCQUFnQixFQUFFLEdBQUcsQ0FBQyxNQUFNO0lBQzVCLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxTQUFTO0lBQ2xDLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxtQkFBbUIsRUFBRSxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUU7SUFDNUQsR0FBRyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsR0FBRztRQUN0QixDQUFDLENBQUM7WUFDQSxrQkFBa0IsRUFBRSxHQUFHO2lCQUNwQixXQUFXO2lCQUNYLEdBQUc7WUFDTixvQkFBb0IsRUFBRSxPQUFPLElBQUksR0FBRztpQkFDL0IsV0FBVztnQkFDZCxDQUFDLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxLQUFLO2dCQUN2QixDQUFDLENBQUMsU0FBUztTQUNkO1FBQ0QsQ0FBQyxDQUFDLEVBQUUsQ0FBQztDQUNSLENBQUMsQ0FBQTtBQVFGLG1CQUFtQjtBQUNuQixFQUFFO0FBQ0YsY0FBYztBQUNkLEVBQUUifQ==
@@ -1,6 +1,5 @@
1
1
  import { Effect } from "effect-app";
2
2
  import { HttpServerRequest, HttpServerResponse } from "effect-app/http";
3
3
  import { Locale } from "../../RequestContext.js";
4
- import { RequestContextContainer } from "../../services/RequestContextContainer.js";
5
- export declare const RequestContextMiddleware: (defaultLocale?: Locale) => <E, R>(app: import("@effect/platform/HttpApp").Default<E, R>) => Effect.Effect<HttpServerResponse.HttpServerResponse, import("effect/Cause").NoSuchElementException | E, RequestContextContainer | HttpServerRequest.HttpServerRequest | import("../../services/Store/ContextMapContainer.js").ContextMapContainer | Exclude<R, never>>;
4
+ export declare const RequestContextMiddleware: (defaultLocale?: Locale) => <E, R>(app: import("@effect/platform/HttpApp").Default<E, R>) => Effect.Effect<HttpServerResponse.HttpServerResponse, E, import("../../services/Store/ContextMapContainer.js").ContextMapContainer | HttpServerRequest.HttpServerRequest | Exclude<Exclude<R, import("effect/Tracer").ParentSpan>, never>>;
6
5
  //# sourceMappingURL=RequestContextMiddleware.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RequestContextMiddleware.d.ts","sourceRoot":"","sources":["../../../src/api/internal/RequestContextMiddleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACnC,OAAO,EAAkB,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAGvF,OAAO,EAAE,MAAM,EAAkB,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAA;AAGnF,eAAO,MAAM,wBAAwB,mBAAmB,MAAM,4UAuD3D,CAAA"}
1
+ {"version":3,"file":"RequestContextMiddleware.d.ts","sourceRoot":"","sources":["../../../src/api/internal/RequestContextMiddleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACnC,OAAO,EAAkB,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAGvF,OAAO,EAAE,MAAM,EAAkB,MAAM,yBAAyB,CAAA;AAGhE,eAAO,MAAM,wBAAwB,mBAAmB,MAAM,+SAmC3D,CAAA"}
@@ -3,53 +3,34 @@ 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
  export const RequestContextMiddleware = (defaultLocale = "en") => HttpMiddleware.make((app) => Effect.gen(function* () {
9
8
  const req = yield* HttpServerRequest.HttpServerRequest;
10
- const currentSpan = yield* Effect.currentSpan;
11
- const parent = currentSpan?.parent ? currentSpan.parent.value : undefined;
12
- const start = new Date();
9
+ const currentSpan = yield* Effect.currentSpan.pipe(Effect.orDie);
13
10
  const supported = Locale.literals;
14
11
  const desiredLocale = req.headers["x-locale"];
15
12
  // eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-explicit-any
16
13
  const locale = desiredLocale && supported.includes(desiredLocale)
17
14
  ? desiredLocale
18
15
  : defaultLocale;
19
- const requestId = req.headers["request-id"];
20
- const rootId = parent?.spanId
21
- ? RequestId(parent.spanId)
22
- : requestId
23
- ? RequestId(requestId)
24
- : RequestId.make();
25
- const storeId = req.headers["x-store-id"];
26
- const namespace = NonEmptyString255((storeId && (Array.isArray(storeId) ? storeId[0] : storeId)) || "primary");
16
+ const ns = req.headers["x-store-id"];
17
+ const namespace = NonEmptyString255((ns && (Array.isArray(ns) ? ns[0] : ns)) || "primary");
27
18
  const deviceId = req.headers["x-fe-device-id"];
28
19
  const requestContext = new RequestContext({
29
- id: currentSpan?.spanId ? RequestId(currentSpan.spanId) : RequestId.make(),
30
- rootId,
20
+ span: {
21
+ traceId: RequestId(currentSpan.traceId),
22
+ spanId: RequestId(currentSpan.spanId),
23
+ sampled: currentSpan.sampled
24
+ },
31
25
  name: NonEmptyString255(req.originalUrl), // set more detailed elsewhere
32
26
  locale,
33
- createdAt: start,
34
27
  namespace,
35
28
  sourceId: deviceId ? NonEmptyString255(deviceId) : undefined
36
- // ...(context.operation.parentId
37
- // ? {
38
- // parent: new RequestContextParent({
39
- // id: RequestId(context.operation.parentId),
40
- // locale,
41
- // name: NonEmptyString255("API Request")
42
- // })
43
- // }
44
- // : {})
45
29
  });
46
- const rcc = yield* RequestContextContainer;
47
- yield* rcc.update((_) => requestContext);
48
- const res = yield* setupExistingRequestContext(app, requestContext);
30
+ const res = yield* setupRequestContext(app, requestContext);
49
31
  // TODO: how to set also on errors?
50
32
  return HttpServerResponse.setHeaders(res, {
51
- "request-id": requestContext.rootId,
52
33
  "Content-Language": requestContext.locale
53
34
  });
54
35
  }));
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdENvbnRleHRNaWRkbGV3YXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwaS9pbnRlcm5hbC9SZXF1ZXN0Q29udGV4dE1pZGRsZXdhcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUNuQyxPQUFPLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDdkYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDaEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkNBQTJDLENBQUE7QUFDbkYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFFaEUsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxnQkFBd0IsSUFBSSxFQUFFLEVBQUUsQ0FDdkUsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQzFCLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO0lBQ2xCLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLGlCQUFpQixDQUFDLGlCQUFpQixDQUFBO0lBRXRELE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUE7SUFDN0MsTUFBTSxNQUFNLEdBQUcsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQTtJQUN6RSxNQUFNLEtBQUssR0FBRyxJQUFJLElBQUksRUFBRSxDQUFBO0lBQ3hC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
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdENvbnRleHRNaWRkbGV3YXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwaS9pbnRlcm5hbC9SZXF1ZXN0Q29udGV4dE1pZGRsZXdhcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUNuQyxPQUFPLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDdkYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDaEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFFeEQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxnQkFBd0IsSUFBSSxFQUFFLEVBQUUsQ0FDdkUsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQzFCLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO0lBQ2xCLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLGlCQUFpQixDQUFDLGlCQUFpQixDQUFBO0lBRXRELE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNoRSxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFBO0lBQ2pDLE1BQU0sYUFBYSxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDN0MscUdBQXFHO0lBQ3JHLE1BQU0sTUFBTSxHQUFHLGFBQWEsSUFBSSxTQUFTLENBQUMsUUFBUSxDQUFDLGFBQW9CLENBQUM7UUFDdEUsQ0FBQyxDQUFFLGFBQTBDO1FBQzdDLENBQUMsQ0FBQyxhQUFhLENBQUE7SUFFakIsTUFBTSxFQUFFLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQTtJQUNwQyxNQUFNLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxTQUFTLENBQUMsQ0FBQTtJQUMxRixNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUE7SUFFOUMsTUFBTSxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQUM7UUFDeEMsSUFBSSxFQUFFO1lBQ0osT0FBTyxFQUFFLFNBQVMsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDO1lBQ3ZDLE1BQU0sRUFBRSxTQUFTLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQztZQUNyQyxPQUFPLEVBQUUsV0FBVyxDQUFDLE9BQU87U0FDN0I7UUFDRCxJQUFJLEVBQUUsaUJBQWlCLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLDhCQUE4QjtRQUN4RSxNQUFNO1FBQ04sU0FBUztRQUNULFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO0tBQzdELENBQUMsQ0FBQTtJQUNGLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLG1CQUFtQixDQUFDLEdBQUcsRUFBRSxjQUFjLENBQUMsQ0FBQTtJQUUzRCxtQ0FBbUM7SUFDbkMsT0FBTyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFO1FBQ3hDLGtCQUFrQixFQUFFLGNBQWMsQ0FBQyxNQUFNO0tBQzFDLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQyxDQUNILENBQUEifQ==
@@ -5,5 +5,5 @@ export declare const makeSSE: <A extends {
5
5
  }, E, R, SI, SR>(events: Stream.Stream<{
6
6
  evt: A;
7
7
  namespace: string;
8
- }, E, R>, schema: S.Schema<A, SI, SR>) => Effect.Effect<HttpServerResponse.HttpServerResponse, never, import("../../services/RequestContextContainer.js").RequestContextContainer | import("../../services/Store/ContextMapContainer.js").ContextMapContainer | Exclude<Exclude<R, import("effect/Tracer").ParentSpan>, never> | Exclude<Exclude<SR, import("effect/Tracer").ParentSpan>, never>>;
8
+ }, E, R>, schema: S.Schema<A, SI, SR>) => Effect.Effect<HttpServerResponse.HttpServerResponse, never, import("../../services/Store/ContextMapContainer.js").ContextMapContainer | Exclude<Exclude<R, import("effect/Tracer").ParentSpan>, never> | Exclude<Exclude<SR, import("effect/Tracer").ParentSpan>, never>>;
9
9
  //# sourceMappingURL=events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/api/internal/events.ts"],"names":[],"mappings":"AAEA,OAAO,EAAY,MAAM,EAAQ,CAAC,EAAY,MAAM,EAAE,MAAM,YAAY,CAAA;AACxE,OAAO,EAAe,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAOjE,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS;IAAE,EAAE,EAAE,GAAG,CAAA;CAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,UACjD,MAAM,CAAC,MAAM,CAAC;IAAE,GAAG,EAAE,CAAC,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,EAAE,CAAC,CAAC,UAClD,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,4VA2CmE,CAAA"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/api/internal/events.ts"],"names":[],"mappings":"AAEA,OAAO,EAAY,MAAM,EAAQ,CAAC,EAAY,MAAM,EAAE,MAAM,YAAY,CAAA;AACxE,OAAO,EAAe,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAOjE,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS;IAAE,EAAE,EAAE,GAAG,CAAA;CAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,UACjD,MAAM,CAAC,MAAM,CAAC;IAAE,GAAG,EAAE,CAAC,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,EAAE,CAAC,CAAC,UAClD,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,8QA2CoE,CAAA"}
@@ -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";
@@ -27,5 +27,5 @@ export const makeSSE = (events, schema) => Effect
27
27
  });
28
28
  return res;
29
29
  })
30
- .pipe(Effect.tapErrorCause(reportError("Request")), (_) => setupRequestContext(_, "events"));
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwaS9pbnRlcm5hbC9ldmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUE7QUFDeEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFBO0FBQzdELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUN4RSxPQUFPLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDakUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBRTdDLG9FQUFvRTtBQUNwRSxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFBO0FBQy9DLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBRXRHLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxDQUNyQixNQUEwRCxFQUMxRCxNQUEyQixFQUMzQixFQUFFLENBQ0YsTUFBTTtLQUNILEdBQUcsQ0FBQyxRQUFRLENBQUM7SUFDWixLQUFLLENBQUMsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLDZCQUE2QixDQUFDLENBQUE7SUFFekQsTUFBTSxHQUFHLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQTtJQUU3QixNQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBRS9CLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQ2hDLE1BQU0sRUFDTixDQUFDLENBQUMsRUFBRSxFQUFFLENBQ0osTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7U0FDVixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsV0FBVyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUNwRixDQUFBO0lBRUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUNqQixRQUFRLEVBQ1IsTUFBTSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFDdkIsTUFBTSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsRUFDekIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FDMUMsQ0FBQTtJQUVELE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQVUsQ0FBQTtJQUMzQyxNQUFNLEdBQUcsR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLENBQ25DLE1BQU07U0FDSCxJQUFJLENBQ0gsTUFBTSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsRUFDNUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FDM0IsRUFDSDtRQUNFLFdBQVcsRUFBRSxtQkFBbUI7UUFDaEMsT0FBTyxFQUFFLFdBQVcsQ0FBQyxTQUFTLENBQUM7WUFDN0IsY0FBYyxFQUFFLG1CQUFtQjtZQUNuQyxlQUFlLEVBQUUsVUFBVTtZQUMzQixtQkFBbUIsRUFBRSxJQUFJO1lBQ3pCLFlBQVksRUFBRSxZQUFZLENBQUMsaUNBQWlDO1NBQzdELENBQUM7S0FDSCxDQUNGLENBQUE7SUFDRCxPQUFPLEdBQUcsQ0FBQTtBQUNaLENBQUMsQ0FBQztLQUNELElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQSJ9
30
+ .pipe(Effect.tapErrorCause(reportError("Request")), setupRequestContextFromCurrent("events"));
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwaS9pbnRlcm5hbC9ldmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sb0NBQW9DLENBQUE7QUFDbkYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFBO0FBQzdELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUN4RSxPQUFPLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDakUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBRTdDLG9FQUFvRTtBQUNwRSxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFBO0FBQy9DLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBRXRHLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxDQUNyQixNQUEwRCxFQUMxRCxNQUEyQixFQUMzQixFQUFFLENBQ0YsTUFBTTtLQUNILEdBQUcsQ0FBQyxRQUFRLENBQUM7SUFDWixLQUFLLENBQUMsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLDZCQUE2QixDQUFDLENBQUE7SUFFekQsTUFBTSxHQUFHLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQTtJQUU3QixNQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBRS9CLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQ2hDLE1BQU0sRUFDTixDQUFDLENBQUMsRUFBRSxFQUFFLENBQ0osTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7U0FDVixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsV0FBVyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUNwRixDQUFBO0lBRUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUNqQixRQUFRLEVBQ1IsTUFBTSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFDdkIsTUFBTSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsRUFDekIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FDMUMsQ0FBQTtJQUVELE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQVUsQ0FBQTtJQUMzQyxNQUFNLEdBQUcsR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLENBQ25DLE1BQU07U0FDSCxJQUFJLENBQ0gsTUFBTSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsRUFDNUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FDM0IsRUFDSDtRQUNFLFdBQVcsRUFBRSxtQkFBbUI7UUFDaEMsT0FBTyxFQUFFLFdBQVcsQ0FBQyxTQUFTLENBQUM7WUFDN0IsY0FBYyxFQUFFLG1CQUFtQjtZQUNuQyxlQUFlLEVBQUUsVUFBVTtZQUMzQixtQkFBbUIsRUFBRSxJQUFJO1lBQ3pCLFlBQVksRUFBRSxZQUFZLENBQUMsaUNBQWlDO1NBQzdELENBQUM7S0FDSCxDQUNGLENBQUE7SUFDRCxPQUFPLEdBQUcsQ0FBQTtBQUNaLENBQUMsQ0FBQztLQUNELElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLDhCQUE4QixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUEifQ==
@@ -1,11 +1,7 @@
1
1
  import { Effect } from "effect-app";
2
2
  import { RequestContext } from "../RequestContext.js";
3
- import { RequestContextContainer } from "../services/RequestContextContainer.js";
4
3
  import { ContextMapContainer } from "../services/Store/ContextMapContainer.js";
5
- export declare function setupRequestContext<R, E, A>(self: Effect<A, E, R>, requestContext: RequestContext | string): Effect.Effect<A, E, RequestContextContainer | ContextMapContainer | Exclude<Exclude<R, import("effect/Tracer").ParentSpan>, never>>;
6
- export declare function setupExistingRequestContext<R, E, A>(self: Effect<A, E, R>, requestContext: RequestContext | string): Effect.Effect<A, E, RequestContextContainer | ContextMapContainer | Exclude<R, never>>;
7
- /**
8
- * @tsplus fluent effect/io/Effect updateRequestContext
9
- */
10
- export declare function updateRequestContext<R, E, A>(self: Effect<A, E, R>, f: (rc: RequestContext) => RequestContext): Effect.Effect<A, E, RequestContextContainer | Exclude<R, never>>;
4
+ export declare const getRequestContext: Effect.Effect<RequestContext, never, never>;
5
+ export declare const setupRequestContextFromCurrent: (name?: string) => <R, E, A>(self: Effect<A, E, R>) => Effect.Effect<A, E, ContextMapContainer | Exclude<Exclude<R, import("effect/Tracer").ParentSpan>, never>>;
6
+ export declare function setupRequestContext<R, E, A>(self: Effect<A, E, R>, requestContext: RequestContext): Effect.Effect<A, E, ContextMapContainer | Exclude<Exclude<R, import("effect/Tracer").ParentSpan>, never>>;
11
7
  //# sourceMappingURL=setupRequest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"setupRequest.d.ts","sourceRoot":"","sources":["../../src/api/setupRequest.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAe,MAAM,YAAY,CAAA;AAEhD,OAAO,EAAE,cAAc,EAAkB,MAAM,sBAAsB,CAAA;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAA;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAA;AA6D9E,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,cAAc,EAAE,cAAc,GAAG,MAAM,uIAM1G;AAED,wBAAgB,2BAA2B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,cAAc,EAAE,cAAc,GAAG,MAAM,0FAMlH;AAKD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,cAAc,KAAK,cAAc,oEAE7G"}
1
+ {"version":3,"file":"setupRequest.d.ts","sourceRoot":"","sources":["../../src/api/setupRequest.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAmB,MAAM,YAAY,CAAA;AACpD,OAAO,EAAa,cAAc,EAAkB,MAAM,sBAAsB,CAAA;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAA;AAG9E,eAAO,MAAM,iBAAiB,6CAgB3B,CAAA;AAgBH,eAAO,MAAM,8BAA8B,sBAA0B,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,8GAK9F,CAAA;AAEL,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,cAAc,EAAE,cAAc,6GAWjG"}
@@ -1,53 +1,34 @@
1
1
  import { NonEmptyString255 } from "@effect-app/schema";
2
- import { Effect, Layer, pipe } from "effect-app";
3
- import { RequestId } from "effect-app/ids";
4
- import { RequestContext, spanAttributes } from "../RequestContext.js";
5
- import { RequestContextContainer } from "../services/RequestContextContainer.js";
2
+ import { Effect, FiberRef, Layer } from "effect-app";
3
+ import { LocaleRef, RequestContext, spanAttributes } from "../RequestContext.js";
6
4
  import { ContextMapContainer } from "../services/Store/ContextMapContainer.js";
7
- function makeInternalRequestContext(name) {
8
- return Effect.sync(() => {
9
- const id = RequestId.make();
10
- return new RequestContext({
11
- id,
12
- rootId: id,
13
- locale: "en",
14
- name: NonEmptyString255(name)
15
- });
16
- });
17
- }
18
- const withRequestSpan = (f) => Effect.andThen(RequestContextContainer
19
- .get, (ctx) => f.pipe(Effect.withSpan("request " + ctx.name, { attributes: spanAttributes(ctx), captureStackTrace: false }),
20
- // request context info is picked up directly in the logger for annotations.
21
- Effect.withLogSpan("request")));
22
- const withExistingRequestSpan = (f) => Effect.andThen(RequestContextContainer.get, (ctx) => Effect.annotateCurrentSpan(spanAttributes(ctx)).pipe(Effect.andThen(f),
5
+ import { storeId } from "../services/Store/Memory.js";
6
+ export const getRequestContext = Effect
7
+ .all({
8
+ span: Effect.currentSpan.pipe(Effect.orDie),
9
+ locale: FiberRef.get(LocaleRef),
10
+ namespace: FiberRef.get(storeId)
11
+ })
12
+ .pipe(Effect.map(({ locale, namespace, span }) => new RequestContext({
13
+ span,
14
+ locale,
15
+ namespace,
16
+ // TODO: get through span context, or don't care at all.
17
+ name: NonEmptyString255("_root_")
18
+ })));
19
+ const withRequestSpan = (name = "request") => (f) => Effect.andThen(getRequestContext, (ctx) => f.pipe(Effect.withSpan(name, { attributes: spanAttributes(ctx), captureStackTrace: false }),
20
+ // TODO: false
23
21
  // request context info is picked up directly in the logger for annotations.
24
- Effect.withLogSpan("request")));
22
+ Effect.withLogSpan(name)));
25
23
  const setupContextMap = Effect.andThen(ContextMapContainer, (_) => _.start).pipe(Layer.effectDiscard);
26
- // const RequestContextLiveFromRequestContext = (requestContext: RequestContext) =>
27
- // RequestContext.Tag.makeLayer(requestContext)
28
- // memoization problem
29
- // const RequestContextLive = RequestContextContainer.get.toLayer(RequestContext.Tag)
30
- const RequestContextStartLiveFromRequestContext = (requestContext) => Layer.provideMerge(setupContextMap,
31
- // .provideMerge(RequestContextLiveFromRequestContext(requestContext))
32
- Effect
33
- .andThen(RequestContextContainer, (_) => _.start(requestContext))
34
- .pipe(Layer.effectDiscard));
35
- const RequestContextStartLive = (requestContext) => typeof requestContext === "string"
36
- ? pipe(makeInternalRequestContext(requestContext), Effect.andThen(RequestContextStartLiveFromRequestContext), Layer.unwrapEffect)
37
- : RequestContextStartLiveFromRequestContext(requestContext);
24
+ export const setupRequestContextFromCurrent = (name = "request") => (self) => self
25
+ .pipe(withRequestSpan(name), Effect.provide(setupContextMap));
38
26
  export function setupRequestContext(self, requestContext) {
39
- return self
40
- .pipe(withRequestSpan, Effect.provide(RequestContextStartLive(requestContext)));
41
- }
42
- export function setupExistingRequestContext(self, requestContext) {
43
- return self
44
- .pipe(withExistingRequestSpan, Effect.provide(RequestContextStartLive(requestContext)));
45
- }
46
- const UpdateRequestContextLive = (f) => Effect.andThen(RequestContextContainer, (rcc) => rcc.update(f)).pipe(Layer.effectDiscard);
47
- /**
48
- * @tsplus fluent effect/io/Effect updateRequestContext
49
- */
50
- export function updateRequestContext(self, f) {
51
- return Effect.provide(self, UpdateRequestContextLive(f));
27
+ return Effect.gen(function* () {
28
+ yield* FiberRef.set(LocaleRef, requestContext.locale);
29
+ yield* FiberRef.set(storeId, requestContext.namespace);
30
+ return yield* self
31
+ .pipe(withRequestSpan(requestContext.name), Effect.provide(setupContextMap));
32
+ });
52
33
  }
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXBSZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS9zZXR1cFJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDdEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3JFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFBO0FBQ2hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFBO0FBRTlFLFNBQVMsMEJBQTBCLENBQUMsSUFBWTtJQUM5QyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ3RCLE1BQU0sRUFBRSxHQUFHLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtRQUMzQixPQUFPLElBQUksY0FBYyxDQUFDO1lBQ3hCLEVBQUU7WUFDRixNQUFNLEVBQUUsRUFBRTtZQUNWLE1BQU0sRUFBRSxJQUFJO1lBQ1osSUFBSSxFQUFFLGlCQUFpQixDQUFDLElBQUksQ0FBQztTQUM5QixDQUFDLENBQUE7SUFDSixDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUM7QUFFRCxNQUFNLGVBQWUsR0FBRyxDQUFVLENBQWtCLEVBQUUsRUFBRSxDQUN0RCxNQUFNLENBQUMsT0FBTyxDQUNaLHVCQUF1QjtLQUNwQixHQUFHLEVBQ04sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUNOLENBQUMsQ0FBQyxJQUFJLENBQ0osTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLElBQUksRUFBRSxFQUFFLFVBQVUsRUFBRSxjQUFjLENBQUMsR0FB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
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXBSZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS9zZXR1cFJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDdEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ3BELE9BQU8sRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ2hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFBO0FBQzlFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUVyRCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxNQUFNO0tBQ3BDLEdBQUcsQ0FBQztJQUNILElBQUksRUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO0lBQzNDLE1BQU0sRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQztJQUMvQixTQUFTLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUM7Q0FDakMsQ0FBQztLQUNELElBQUksQ0FDSCxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FDekMsSUFBSSxjQUFjLENBQUM7SUFDakIsSUFBSTtJQUNKLE1BQU07SUFDTixTQUFTO0lBQ1Qsd0RBQXdEO0lBQ3hELElBQUksRUFBRSxpQkFBaUIsQ0FBQyxRQUFRLENBQUM7Q0FDbEMsQ0FBQyxDQUNILENBQ0YsQ0FBQTtBQUVILE1BQU0sZUFBZSxHQUFHLENBQUMsSUFBSSxHQUFHLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBVSxDQUFrQixFQUFFLEVBQUUsQ0FDNUUsTUFBTSxDQUFDLE9BQU8sQ0FDWixpQkFBaUIsRUFDakIsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUNOLENBQUMsQ0FBQyxJQUFJLENBQ0osTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxVQUFVLEVBQUUsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFLGlCQUFpQixFQUFFLEtBQUssRUFBRSxDQUFDO0FBQ3BGLGNBQWM7QUFDZCw0RUFBNEU7QUFDNUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FDekIsQ0FDSixDQUFBO0FBRUgsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUE7QUFFckcsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQUcsQ0FBQyxJQUFJLEdBQUcsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFVLElBQXFCLEVBQUUsRUFBRSxDQUNyRyxJQUFJO0tBQ0QsSUFBSSxDQUNILGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFDckIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FDaEMsQ0FBQTtBQUVMLE1BQU0sVUFBVSxtQkFBbUIsQ0FBVSxJQUFxQixFQUFFLGNBQThCO0lBQ2hHLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7UUFDekIsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ3JELEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUV0RCxPQUFPLEtBQUssQ0FBQyxDQUFDLElBQUk7YUFDZixJQUFJLENBQ0gsZUFBZSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFDcEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FDaEMsQ0FBQTtJQUNMLENBQUMsQ0FBQyxDQUFBO0FBQ0osQ0FBQyJ9
@@ -1 +1 @@
1
- {"version":3,"file":"errorReporter.d.ts","sourceRoot":"","sources":["../src/errorReporter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAU,MAAM,YAAY,CAAA;AAClD,OAAO,EAAE,cAAc,EAA4B,MAAM,aAAa,CAAA;AAItE,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,WAEG,KAAK,CAAC,OAAO,CAAC,WAAW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,sEAwBhE;AAiBD,wBAAgB,QAAQ,CAAC,CAAC,EACxB,IAAI,EAAE,MAAM,WAEG,KAAK,CAAC,CAAC,CAAC,WAAW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,uCAkB1D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,QAG9C;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,qCAU9E"}
1
+ {"version":3,"file":"errorReporter.d.ts","sourceRoot":"","sources":["../src/errorReporter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAE1C,OAAO,EAAE,cAAc,EAA4B,MAAM,aAAa,CAAA;AAGtE,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,WAEG,KAAK,CAAC,OAAO,CAAC,WAAW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,sEAwBhE;AAgBD,wBAAgB,QAAQ,CAAC,CAAC,EACxB,IAAI,EAAE,MAAM,WAEG,KAAK,CAAC,CAAC,CAAC,WAAW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,uCAkB1D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,QAG9C;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,qCAS9E"}
@@ -1,9 +1,9 @@
1
1
  import { dropUndefined } from "@effect-app/core/utils";
2
2
  import * as Sentry from "@sentry/node";
3
- import { Cause, Effect, Option } from "effect-app";
3
+ import { Cause, Effect } from "effect-app";
4
+ import { getRequestContext } from "./api/setupRequest.js";
4
5
  import { CauseException, ErrorReported, tryToJson } from "./errors.js";
5
6
  import { InfraLogger } from "./logger.js";
6
- import { RequestContextContainer } from "./services/RequestContextContainer.js";
7
7
  export function reportError(name) {
8
8
  return (cause, extras) => Effect.gen(function* () {
9
9
  if (Cause.isInterrupted(cause)) {
@@ -24,8 +24,7 @@ export function reportError(name) {
24
24
  });
25
25
  }
26
26
  function reportSentry(error, extras) {
27
- return RequestContextContainer.getOption.pipe(Effect.map((ctx) => {
28
- const context = Option.getOrUndefined(ctx);
27
+ return getRequestContext.pipe(Effect.map((context) => {
29
28
  const scope = new Sentry.Scope();
30
29
  if (context)
31
30
  scope.setContext("context", context);
@@ -56,8 +55,7 @@ export function captureException(error) {
56
55
  console.error(error);
57
56
  }
58
57
  export function reportMessage(message, extras) {
59
- return RequestContextContainer.getOption.pipe(Effect.map((ctx) => {
60
- const context = Option.getOrUndefined(ctx);
58
+ return getRequestContext.pipe(Effect.map((context) => {
61
59
  const scope = new Sentry.Scope();
62
60
  if (context)
63
61
  scope.setContext("context", context);
@@ -67,4 +65,4 @@ export function reportMessage(message, extras) {
67
65
  console.warn(message);
68
66
  }));
69
67
  }
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JSZXBvcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9lcnJvclJlcG9ydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUN0RCxPQUFPLEtBQUssTUFBTSxNQUFNLGNBQWMsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDekMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUE7QUFFL0UsTUFBTSxVQUFVLFdBQVcsQ0FDekIsSUFBWTtJQUVaLE9BQU8sQ0FBQyxLQUFxQixFQUFFLE1BQWdDLEVBQUUsRUFBRSxDQUNqRSxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztRQUNsQixJQUFJLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMvQixLQUFLLENBQUMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDNUcsT0FBTTtRQUNSLENBQUM7UUFDRCxNQUFNLEtBQUssR0FBRyxJQUFJLGNBQWMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFFN0MsS0FBSyxDQUFDLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQTtRQUNsQyxLQUFLLENBQUMsQ0FBQyxXQUFXO2FBQ2YsUUFBUSxDQUFDLGlCQUFpQixF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
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JSZXBvcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9lcnJvclJlcG9ydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUN0RCxPQUFPLEtBQUssTUFBTSxNQUFNLGNBQWMsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUMxQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDdEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUV6QyxNQUFNLFVBQVUsV0FBVyxDQUN6QixJQUFZO0lBRVosT0FBTyxDQUFDLEtBQXFCLEVBQUUsTUFBZ0MsRUFBRSxFQUFFLENBQ2pFLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQ2xCLElBQUksS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQy9CLEtBQUssQ0FBQyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUM1RyxPQUFNO1FBQ1IsQ0FBQztRQUNELE1BQU0sS0FBSyxHQUFHLElBQUksY0FBYyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQTtRQUU3QyxLQUFLLENBQUMsQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFBO1FBQ2xDLEtBQUssQ0FBQyxDQUFDLFdBQVc7YUFDZixRQUFRLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxD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
@@ -1 +1 @@
1
- {"version":3,"file":"jsonLogger.d.ts","sourceRoot":"","sources":["../../src/logger/jsonLogger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,MAAM,EAAU,MAAM,YAAY,CAAA;AAG1E,eAAO,MAAM,UAAU,8BAyBtB,CAAA;AAED,eAAO,MAAM,OAAO,mDAA+E,CAAA"}
1
+ {"version":3,"file":"jsonLogger.d.ts","sourceRoot":"","sources":["../../src/logger/jsonLogger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,MAAM,EAAE,MAAM,YAAY,CAAA;AAGlE,eAAO,MAAM,UAAU,8BAyBtB,CAAA;AAED,eAAO,MAAM,OAAO,mDAA+E,CAAA"}
@@ -1,15 +1,15 @@
1
- import { Cause, FiberId, HashMap, List, Logger, Option } from "effect-app";
1
+ import { Cause, FiberId, HashMap, List, Logger } from "effect-app";
2
2
  import { getRequestContext } from "./shared.js";
3
3
  export const jsonLogger = Logger.make(({ annotations, cause, context, fiberId, logLevel, message, spans }) => {
4
4
  const now = new Date();
5
5
  const nowMillis = now.getTime();
6
- const c = getRequestContext(context);
6
+ const request = getRequestContext(context);
7
7
  const data = {
8
8
  timestamp: now,
9
9
  level: logLevel.label,
10
10
  fiber: FiberId.threadName(fiberId),
11
11
  message,
12
- request: Option.getOrUndefined(c),
12
+ request,
13
13
  cause: cause !== null && cause !== Cause.empty ? Cause.pretty(cause, { renderErrorCause: true }) : undefined,
14
14
  spans: List.map(spans, (_) => ({ label: _.label, timing: nowMillis - _.startTime })).pipe(List.toArray),
15
15
  annotations: HashMap.size(annotations) > 0
@@ -22,4 +22,4 @@ export const jsonLogger = Logger.make(({ annotations, cause, context, fiberId, l
22
22
  globalThis.console.log(JSON.stringify(data));
23
23
  });
24
24
  export const logJson = Logger.replace(Logger.defaultLogger, Logger.withSpanAnnotations(jsonLogger));
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbkxvZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2dnZXIvanNvbkxvZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRS9DLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUNuQyxDQUFDLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtJQUNyRSxNQUFNLEdBQUcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFBO0lBQ3RCLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtJQUUvQixNQUFNLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUVwQyxNQUFNLElBQUksR0FBRztRQUNYLFNBQVMsRUFBRSxHQUFHO1FBQ2QsS0FBSyxFQUFFLFFBQVEsQ0FBQyxLQUFLO1FBQ3JCLEtBQUssRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQztRQUNsQyxPQUFPO1FBQ1AsT0FBTyxFQUFFLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLEtBQUssRUFBRSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7UUFDNUcsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsR0FBRyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3ZHLFdBQVcsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUM7WUFDeEMsQ0FBQyxDQUFDLENBQUMsR0FBRyxXQUFXLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDekMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQTtnQkFDWCxPQUFPLElBQUksQ0FBQTtZQUNiLENBQUMsRUFBRSxFQUE2QixDQUFDO1lBQ2pDLENBQUMsQ0FBQyxTQUFTO0tBQ2QsQ0FBQTtJQUVELFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtBQUM5QyxDQUFDLENBQ0YsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUEifQ==
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbkxvZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2dnZXIvanNvbkxvZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUNsRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFFL0MsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQ25DLENBQUMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO0lBQ3JFLE1BQU0sR0FBRyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUE7SUFDdEIsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFBO0lBRS9CLE1BQU0sT0FBTyxHQUFHLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBRTFDLE1BQU0sSUFBSSxHQUFHO1FBQ1gsU0FBUyxFQUFFLEdBQUc7UUFDZCxLQUFLLEVBQUUsUUFBUSxDQUFDLEtBQUs7UUFDckIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDO1FBQ2xDLE9BQU87UUFDUCxPQUFPO1FBQ1AsS0FBSyxFQUFFLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxLQUFLLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztRQUM1RyxLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxHQUFHLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDdkcsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQztZQUN4QyxDQUFDLENBQUMsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUN6QyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFBO2dCQUNYLE9BQU8sSUFBSSxDQUFBO1lBQ2IsQ0FBQyxFQUFFLEVBQTZCLENBQUM7WUFDakMsQ0FBQyxDQUFDLFNBQVM7S0FDZCxDQUFBO0lBRUQsVUFBVSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0FBQzlDLENBQUMsQ0FDRixDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQSJ9
@@ -1 +1 @@
1
- {"version":3,"file":"logFmtLogger.d.ts","sourceRoot":"","sources":["../../src/logger/logFmtLogger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,MAAM,EAAU,MAAM,YAAY,CAAA;AAIpD,eAAO,MAAM,YAAY,8BAcxB,CAAA;AAED,eAAO,MAAM,MAAM,mDAAiF,CAAA"}
1
+ {"version":3,"file":"logFmtLogger.d.ts","sourceRoot":"","sources":["../../src/logger/logFmtLogger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,MAAM,EAAE,MAAM,YAAY,CAAA;AAI5C,eAAO,MAAM,YAAY,8BAaxB,CAAA;AAED,eAAO,MAAM,MAAM,mDAAiF,CAAA"}
@@ -1,10 +1,9 @@
1
- import { HashMap, Logger, Option } from "effect-app";
1
+ import { HashMap, Logger } from "effect-app";
2
2
  import { spanAttributes } from "../RequestContext.js";
3
3
  import { getRequestContext } from "./shared.js";
4
4
  export const logfmtLogger = Logger.make((_) => {
5
5
  let { annotations } = _;
6
- const c = getRequestContext(_.context);
7
- const requestContext = Option.getOrUndefined(c);
6
+ const requestContext = getRequestContext(_.context);
8
7
  if (requestContext && requestContext.name !== "_root_") {
9
8
  annotations = HashMap.make(...[
10
9
  ...annotations,
@@ -15,4 +14,4 @@ export const logfmtLogger = Logger.make((_) => {
15
14
  globalThis.console.log(formatted);
16
15
  });
17
16
  export const logFmt = Logger.replace(Logger.defaultLogger, Logger.withSpanAnnotations(logfmtLogger));
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nRm10TG9nZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvZ2dlci9sb2dGbXRMb2dnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ3BELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFFL0MsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQ3JDLENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDSixJQUFJLEVBQUUsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFBO0lBQ3ZCLE1BQU0sQ0FBQyxHQUFHLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUN0QyxNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQy9DLElBQUksY0FBYyxJQUFJLGNBQWMsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDdkQsV0FBVyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRztZQUM1QixHQUFHLFdBQVc7WUFDZCxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQ2xELENBQUMsQ0FBQTtJQUNKLENBQUM7SUFDRCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUE7SUFDaEUsVUFBVSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUE7QUFDbkMsQ0FBQyxDQUNGLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFBIn0=
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nRm10TG9nZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvZ2dlci9sb2dGbXRMb2dnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUUvQyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FDckMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtJQUNKLElBQUksRUFBRSxXQUFXLEVBQUUsR0FBRyxDQUFDLENBQUE7SUFDdkIsTUFBTSxjQUFjLEdBQUcsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQ25ELElBQUksY0FBYyxJQUFJLGNBQWMsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDdkQsV0FBVyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRztZQUM1QixHQUFHLFdBQVc7WUFDZCxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQ2xELENBQUMsQ0FBQTtJQUNKLENBQUM7SUFDRCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUE7SUFDaEUsVUFBVSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUE7QUFDbkMsQ0FBQyxDQUNGLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFBIn0=
@@ -1,4 +1,4 @@
1
- import { Option } from "effect-app";
2
1
  import * as FiberRefs from "effect/FiberRefs";
3
- export declare function getRequestContext(fiberRefs: FiberRefs.FiberRefs): Option.Option<import("../RequestContext.js").RequestContext>;
2
+ import { RequestContext } from "../RequestContext.js";
3
+ export declare function getRequestContext(fiberRefs: FiberRefs.FiberRefs): RequestContext;
4
4
  //# sourceMappingURL=shared.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/logger/shared.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,MAAM,EAAW,MAAM,YAAY,CAAA;AAC/D,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAA;AAG7C,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,gEAS/D"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/logger/shared.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAa,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAGhE,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,kBAc/D"}
@@ -1,15 +1,18 @@
1
- import { RuntimeFlags } from "effect";
2
- import { Context, FiberRef, Option, Runtime } from "effect-app";
1
+ import { NonEmptyString255 } from "@effect-app/schema";
2
+ import { Context, FiberRef, Option, Tracer } from "effect-app";
3
3
  import * as FiberRefs from "effect/FiberRefs";
4
- import { RequestContextContainer } from "../services/RequestContextContainer.js";
4
+ import { LocaleRef, RequestContext } from "../RequestContext.js";
5
+ import { storeId } from "../services/Store/Memory.js";
5
6
  export function getRequestContext(fiberRefs) {
6
7
  const context = FiberRefs.getOrDefault(fiberRefs, FiberRef.currentContext);
7
- const a = Context.getOption(context, RequestContextContainer);
8
- const c = Option.map(a, (_) => {
9
- // TODO: perhaps a litle expensive?
10
- const rt = Runtime.make({ context, fiberRefs, runtimeFlags: RuntimeFlags.none });
11
- return Runtime.runSync(rt)(_.requestContext);
8
+ const span = Context.getOption(context, Tracer.ParentSpan);
9
+ const locale = FiberRefs.getOrDefault(fiberRefs, LocaleRef);
10
+ const namespace = FiberRefs.getOrDefault(fiberRefs, storeId);
11
+ return new RequestContext({
12
+ span: Option.getOrElse(span, () => ({ spanId: "bogus", sampled: true, traceId: "bogus" })),
13
+ name: NonEmptyString255("_"),
14
+ locale,
15
+ namespace
12
16
  });
13
- return c;
14
17
  }
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvZ2dlci9zaGFyZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUNyQyxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQy9ELE9BQU8sS0FBSyxTQUFTLE1BQU0sa0JBQWtCLENBQUE7QUFDN0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0NBQXdDLENBQUE7QUFFaEYsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFNBQThCO0lBQzlELE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxjQUFjLENBQUMsQ0FBQTtJQUMxRSxNQUFNLENBQUMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSx1QkFBdUIsQ0FBQyxDQUFBO0lBQzdELE1BQU0sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDNUIsbUNBQW1DO1FBQ25DLE1BQU0sRUFBRSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQTtRQUNoRixPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFBO0lBQzlDLENBQUMsQ0FBQyxDQUFBO0lBQ0YsT0FBTyxDQUFDLENBQUE7QUFDVixDQUFDIn0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvZ2dlci9zaGFyZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDdEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUM5RCxPQUFPLEtBQUssU0FBUyxNQUFNLGtCQUFrQixDQUFBO0FBQzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDaEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDZCQUE2QixDQUFBO0FBRXJELE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxTQUE4QjtJQUM5RCxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUE7SUFDMUUsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQzFELE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFBO0lBQzNELE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFBO0lBQzVELE9BQU8sSUFBSSxjQUFjLENBQUM7UUFDeEIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQ3BCLElBQUksRUFDSixHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUM3RDtRQUNELElBQUksRUFBRSxpQkFBaUIsQ0FBQyxHQUFHLENBQUM7UUFDNUIsTUFBTTtRQUNOLFNBQVM7S0FDVixDQUFDLENBQUE7QUFDSixDQUFDIn0=
@@ -1,7 +1,6 @@
1
- import { RequestContextContainer } from "@effect-app/infra/services/RequestContextContainer";
2
1
  import { SqlClient } from "@effect/sql";
3
2
  import { Effect, S, Tracer } from "effect-app";
4
- import { NonEmptyString255 } from "effect-app/schema";
3
+ import type { NonEmptyString255 } from "effect-app/schema";
5
4
  export declare const QueueId: S.brand<typeof import("@effect/schema/Schema").Number & {
6
5
  withDefault: S.PropertySignature<":", number, never, ":", number, true, never>;
7
6
  }, "QueueId">;
@@ -14,6 +13,6 @@ export declare function makeSQLQueue<Evt extends {
14
13
  _tag: string;
15
14
  }, EvtE, DrainEvtE>(queueName: NonEmptyString255, queueDrainName: NonEmptyString255, schema: S.Schema<Evt, EvtE>, drainSchema: S.Schema<DrainEvt, DrainEvtE>): Effect.Effect<{
16
15
  publish: (messages_0: Evt, ...messages: Evt[]) => Effect.Effect<void, never, never>;
17
- drain: <DrainE, DrainR>(handleEvent: (ks: DrainEvt) => Effect<void, DrainE, DrainR>, sessionId?: string) => Effect.Effect<never, never, RequestContextContainer | import("../Store/ContextMapContainer.js").ContextMapContainer | Exclude<Exclude<Exclude<Exclude<DrainR, Tracer.ParentSpan>, never>, Tracer.ParentSpan>, Tracer.ParentSpan>>;
18
- }, never, RequestContextContainer | SqlClient.SqlClient>;
16
+ drain: <DrainE, DrainR>(handleEvent: (ks: DrainEvt) => Effect<void, DrainE, DrainR>, sessionId?: string) => Effect.Effect<never, never, import("../Store/ContextMapContainer.js").ContextMapContainer | Exclude<Exclude<Exclude<Exclude<DrainR, Tracer.ParentSpan>, never>, Tracer.ParentSpan>, Tracer.ParentSpan>>;
17
+ }, never, SqlClient.SqlClient>;
19
18
  //# sourceMappingURL=SQLQueue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SQLQueue.d.ts","sourceRoot":"","sources":["../../../src/services/QueueMaker/SQLQueue.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,uBAAuB,EAAE,MAAM,oDAAoD,CAAA;AAC5F,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAGvC,OAAO,EAAE,MAAM,EAAiB,CAAC,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAE7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAIrD,eAAO,MAAM,OAAO;;aAAoC,CAAA;AACxD,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAGzC,wBAAgB,YAAY,CAC1B,GAAG,SAAS;IAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAC5C,QAAQ,SAAS;IAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EACjD,IAAI,EACJ,SAAS,EAET,SAAS,EAAE,iBAAiB,EAC5B,cAAc,EAAE,iBAAiB,EACjC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,EAC3B,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC;;YAiH9B,MAAM,EAAE,MAAM,eACP,CAAC,EAAE,EAAE,QAAQ,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,cAC/C,MAAM;yDAiEzB"}
1
+ {"version":3,"file":"SQLQueue.d.ts","sourceRoot":"","sources":["../../../src/services/QueueMaker/SQLQueue.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAGvC,OAAO,EAAE,MAAM,EAAiB,CAAC,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAI1D,eAAO,MAAM,OAAO;;aAAoC,CAAA;AACxD,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAGzC,wBAAgB,YAAY,CAC1B,GAAG,SAAS;IAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAC5C,QAAQ,SAAS;IAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EACjD,IAAI,EACJ,SAAS,EAET,SAAS,EAAE,iBAAiB,EAC5B,cAAc,EAAE,iBAAiB,EACjC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,EAC3B,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC;;YA0G9B,MAAM,EAAE,MAAM,eACP,CAAC,EAAE,EAAE,QAAQ,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,cAC/C,MAAM;+BA6DzB"}