@effect-app/infra 0.130.1 → 0.132.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +26 -0
- package/_cjs/services/Emailer/service.cjs.map +1 -1
- package/_cjs/services/Operations/service.cjs.map +1 -1
- package/_cjs/services/QueueMaker/memQueue.cjs +12 -14
- package/_cjs/services/QueueMaker/memQueue.cjs.map +1 -1
- package/_cjs/services/QueueMaker/sbqueue.cjs +6 -8
- package/_cjs/services/QueueMaker/sbqueue.cjs.map +1 -1
- package/_cjs/services/RequestContextContainer.cjs +14 -36
- package/_cjs/services/RequestContextContainer.cjs.map +1 -1
- package/_cjs/services/Store/ContextMapContainer.cjs +6 -28
- package/_cjs/services/Store/ContextMapContainer.cjs.map +1 -1
- package/_cjs/services/Store/service.cjs.map +1 -1
- package/_src/services/Emailer/service.ts +3 -3
- package/_src/services/Operations/service.ts +10 -9
- package/_src/services/QueueMaker/memQueue.ts +2 -2
- package/_src/services/QueueMaker/sbqueue.ts +2 -2
- package/_src/services/RequestContextContainer.ts +15 -23
- package/_src/services/Store/ContextMapContainer.ts +9 -18
- package/_src/services/Store/service.ts +8 -6
- package/dist/services/Emailer/service.d.ts +6 -3
- package/dist/services/Emailer/service.d.ts.map +1 -1
- package/dist/services/Emailer/service.js +1 -1
- package/dist/services/Operations/live.d.ts +2 -1
- package/dist/services/Operations/live.d.ts.map +1 -1
- package/dist/services/Operations/service.d.ts +21 -13
- package/dist/services/Operations/service.d.ts.map +1 -1
- package/dist/services/Operations/service.js +1 -1
- package/dist/services/QueueMaker/memQueue.js +12 -14
- package/dist/services/QueueMaker/sbqueue.js +7 -9
- package/dist/services/RequestContextContainer.d.ts +11 -15
- package/dist/services/RequestContextContainer.d.ts.map +1 -1
- package/dist/services/RequestContextContainer.js +9 -30
- package/dist/services/Store/ContextMapContainer.d.ts +9 -12
- package/dist/services/Store/ContextMapContainer.d.ts.map +1 -1
- package/dist/services/Store/ContextMapContainer.js +2 -26
- package/dist/services/Store/service.d.ts +16 -8
- package/dist/services/Store/service.d.ts.map +1 -1
- package/dist/services/Store/service.js +1 -1
- package/package.json +6 -6
|
@@ -102,12 +102,13 @@ export interface Store<PM extends PersistenceModelType<Id>, Id extends string> {
|
|
|
102
102
|
* @tsplus type StoreMaker
|
|
103
103
|
* @tsplus companion StoreMaker.Ops
|
|
104
104
|
*/
|
|
105
|
-
export
|
|
106
|
-
|
|
105
|
+
export class StoreMaker extends TagClass<StoreMaker, {
|
|
106
|
+
make: <PM extends PersistenceModelType<Id>, Id extends string, R = never, E = never>(
|
|
107
107
|
name: string,
|
|
108
108
|
seed?: Effect<R, E, Iterable<PM>>,
|
|
109
109
|
config?: StoreConfig<PM>
|
|
110
110
|
) => Effect<R, E, Store<PM, Id>>
|
|
111
|
+
}>() {
|
|
111
112
|
}
|
|
112
113
|
|
|
113
114
|
export const makeContextMap = (): ContextMap => {
|
|
@@ -184,10 +185,11 @@ export const makeMap = Effect.sync(() => makeContextMap())
|
|
|
184
185
|
* @tsplus type ContextMap
|
|
185
186
|
* @tsplus companion ContextMap.Ops
|
|
186
187
|
*/
|
|
187
|
-
export
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
188
|
+
export class ContextMap extends TagClass<ContextMap, {
|
|
189
|
+
get: (id: string) => string | undefined
|
|
190
|
+
set: (id: string, eTag: string | undefined) => void
|
|
191
|
+
parserEnv: ParserEnv
|
|
192
|
+
}>() {
|
|
191
193
|
}
|
|
192
194
|
|
|
193
195
|
export interface PersistenceModelType<Id extends string> {
|
|
@@ -6,13 +6,16 @@ import { NonEmptyReadonlyArray } from "effect/ReadonlyArray";
|
|
|
6
6
|
import type { MailContent, MailData } from "@sendgrid/helpers/classes/mail.js";
|
|
7
7
|
import type { ResponseError } from "@sendgrid/mail";
|
|
8
8
|
import type sgMail from "@sendgrid/mail";
|
|
9
|
-
declare const Emailer_base: (
|
|
9
|
+
declare const Emailer_base: (new (service: {
|
|
10
|
+
sendMail: (msg: EmailMsgOptionalFrom) => Effect<never, Error | ResponseError, void>;
|
|
11
|
+
}) => Readonly<{
|
|
12
|
+
sendMail: (msg: EmailMsgOptionalFrom) => Effect<never, Error | ResponseError, void>;
|
|
13
|
+
}>) & import("effect/Context").Tag<Emailer, Emailer>;
|
|
10
14
|
/**
|
|
11
15
|
* @tsplus type Emailer
|
|
12
16
|
* @tsplus companion Emailer.Ops
|
|
13
17
|
*/
|
|
14
|
-
export declare
|
|
15
|
-
abstract sendMail: (msg: EmailMsgOptionalFrom) => Effect<never, Error | ResponseError, void>;
|
|
18
|
+
export declare class Emailer extends Emailer_base {
|
|
16
19
|
}
|
|
17
20
|
export interface SendgridConfig {
|
|
18
21
|
defaultReplyTo?: Email | {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../_src/services/Emailer/service.ts"],"names":[],"mappings":";;;;;AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAA;AAC9E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAA;;
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../_src/services/Emailer/service.ts"],"names":[],"mappings":";;;;;AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAA;AAC9E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAA;;oBAOtB,oBAAoB,KAAK,OAAO,KAAK,EAAE,KAAK,GAAG,aAAa,EAAE,IAAI,CAAC;;oBAAnE,oBAAoB,KAAK,OAAO,KAAK,EAAE,KAAK,GAAG,aAAa,EAAE,IAAI,CAAC;;AALrF;;;GAGG;AACH,qBAAa,OAAQ,SAAQ,YAEzB;CAAG;AAEP,MAAM,WAAW,cAAc;IAC7B,cAAc,CAAC,EAAE,KAAK,GAAG;QAAE,IAAI,CAAC,EAAE,iBAAiB,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAA;IACnE,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,OAAO,CAAA;IACjB,WAAW,EAAE,KAAK,GAAG;QAAE,IAAI,CAAC,EAAE,iBAAiB,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAA;IAC/D,MAAM,EAAE,MAAM,CAAA;CACf;AACD,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAA;AAC9C,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,CAAA;AAEhE,MAAM,MAAM,oBAAoB,GAC5B,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,GACtB,CACA;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,qBAAqB,CAAC,WAAW,CAAC,CAAA;CAAE,CAC/G,GACC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA"}
|
|
@@ -5,4 +5,4 @@ import * as tsplus_module_1 from "@effect-app/prelude/service";
|
|
|
5
5
|
*/
|
|
6
6
|
export class Emailer extends tsplus_module_1.TagClass() {
|
|
7
7
|
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvRW1haWxlci9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFJQTs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sT0FBUSxTQUFRLGdCQUFBLFFBQVEsRUFFakM7Q0FBRyJ9
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { Exit } from "effect/Exit";
|
|
2
|
+
import { Operations } from "./service.js";
|
|
2
3
|
/**
|
|
3
4
|
* @tsplus static Operations.Ops Live
|
|
4
5
|
* @tsplus location "@effect-app/infra/services/Operations/live"
|
|
5
6
|
*/
|
|
6
|
-
export declare const Live: import("effect/Layer").Layer<never, never,
|
|
7
|
+
export declare const Live: import("effect/Layer").Layer<never, never, Operations.Id>;
|
|
7
8
|
//# sourceMappingURL=live.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../../../_src/services/Operations/live.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../../../_src/services/Operations/live.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;;;;;AAsGzC,eAAO,MAAM,IAAI,2DAEwB,CAAA"}
|
|
@@ -3,39 +3,47 @@ import { Effect } from "effect/Effect";
|
|
|
3
3
|
import { Option } from "@effect-app/core/Option";
|
|
4
4
|
import type { Operation, OperationId, OperationProgress } from "@effect-app/prelude/Operations";
|
|
5
5
|
import * as Scope from "effect/Scope";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
declare const Operations_base: (new (service: {
|
|
7
|
+
register: Effect<Scope.Scope, never, OperationId>;
|
|
8
|
+
update: (id: OperationId, progress: OperationProgress) => Effect<never, never, void>;
|
|
9
|
+
find: (id: OperationId) => Effect<never, never, Option<Operation>>;
|
|
10
|
+
cleanup: Effect<never, never, void>;
|
|
11
|
+
}) => Readonly<{
|
|
12
|
+
register: Effect<Scope.Scope, never, OperationId>;
|
|
13
|
+
update: (id: OperationId, progress: OperationProgress) => Effect<never, never, void>;
|
|
14
|
+
find: (id: OperationId) => Effect<never, never, Option<Operation>>;
|
|
15
|
+
cleanup: Effect<never, never, void>;
|
|
16
|
+
}>) & import("effect/Context").Tag<Operations.Id, Operations>;
|
|
10
17
|
/**
|
|
11
18
|
* @tsplus type Operations
|
|
12
19
|
* @tsplus companion Operations.Ops
|
|
13
20
|
*/
|
|
14
|
-
export declare
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
21
|
+
export declare class Operations extends Operations_base {
|
|
22
|
+
}
|
|
23
|
+
export declare namespace Operations {
|
|
24
|
+
interface Id {
|
|
25
|
+
readonly _: unique symbol;
|
|
26
|
+
}
|
|
19
27
|
}
|
|
20
28
|
/**
|
|
21
29
|
* @tsplus getter effect/io/Effect forkOperation
|
|
22
30
|
* @tsplus location "@effect-app/infra/services/Operations/service"
|
|
23
31
|
*/
|
|
24
|
-
export declare function forkOperation<R, E, A>(self: Effect<R, E, A>): import("effect/Effect").Effect<
|
|
32
|
+
export declare function forkOperation<R, E, A>(self: Effect<R, E, A>): import("effect/Effect").Effect<Operations.Id | Exclude<R, Scope.Scope>, never, import("@effect-app/prelude/schema").StringId>;
|
|
25
33
|
/**
|
|
26
34
|
* @tsplus getter function forkOperation
|
|
27
35
|
* @tsplus location "@effect-app/infra/services/Operations/service"
|
|
28
36
|
*/
|
|
29
|
-
export declare function forkOperationFunction<R, E, A, Inp>(fnc: (inp: Inp) => Effect<R, E, A>): (inp: Inp) => import("effect/Effect").Effect<
|
|
37
|
+
export declare function forkOperationFunction<R, E, A, Inp>(fnc: (inp: Inp) => Effect<R, E, A>): (inp: Inp) => import("effect/Effect").Effect<Operations.Id | Exclude<R, Scope.Scope>, never, import("@effect-app/prelude/schema").StringId>;
|
|
30
38
|
/**
|
|
31
39
|
* @tsplus static effect/io/Effect.Ops forkOperation
|
|
32
40
|
* @tsplus location "@effect-app/infra/services/Operations/service"
|
|
33
41
|
*/
|
|
34
|
-
export declare function forkOperation2<R, E, A>(self: (opId: OperationId) => Effect<R, E, A>): import("effect/Effect").Effect<
|
|
42
|
+
export declare function forkOperation2<R, E, A>(self: (opId: OperationId) => Effect<R, E, A>): import("effect/Effect").Effect<Operations.Id | Exclude<R, Scope.Scope>, never, import("@effect-app/prelude/schema").StringId>;
|
|
35
43
|
/**
|
|
36
44
|
* @tsplus static effect/io/Effect.Ops forkOperationWithEffect
|
|
37
45
|
* @tsplus location "@effect-app/infra/services/Operations/service"
|
|
38
46
|
*/
|
|
39
|
-
export declare function forkOperationWithEffect<R, R2, E, E2, A, A2>(self: (id: OperationId) => Effect<R, E, A>, fnc: (id: OperationId) => Effect<R2, E2, A2>): import("effect/Effect").Effect<
|
|
47
|
+
export declare function forkOperationWithEffect<R, R2, E, E2, A, A2>(self: (id: OperationId) => Effect<R, E, A>, fnc: (id: OperationId) => Effect<R2, E2, A2>): import("effect/Effect").Effect<Operations.Id | Exclude<R, Scope.Scope> | Exclude<R2, Scope.Scope>, never, import("@effect-app/prelude/schema").StringId>;
|
|
40
48
|
export {};
|
|
41
49
|
//# sourceMappingURL=service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../_src/services/Operations/service.ts"],"names":[],"mappings":";;;AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAC/F,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../_src/services/Operations/service.ts"],"names":[],"mappings":";;;AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAC/F,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;;cAOzB,OAAO,WAAW,EAAE,KAAK,EAAE,WAAW,CAAC;iBACpC,WAAW,YAAY,iBAAiB,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;eACzE,WAAW,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,SAAS,CAAC,CAAC;aACzD,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;;cAHzB,OAAO,WAAW,EAAE,KAAK,EAAE,WAAW,CAAC;iBACpC,WAAW,YAAY,iBAAiB,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;eACzE,WAAW,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,SAAS,CAAC,CAAC;aACzD,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;;AARrC;;;GAGG;AACH,qBAAa,UAAW,SAAQ,eAKhB;CAAG;AACnB,yBAAiB,UAAU,CAAC;IAC1B,UAAiB,EAAE;QACjB,QAAQ,CAAC,CAAC,EAAE,OAAO,MAAM,CAAA;KAC1B;CACF;;;;;AAKD,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,iIAY3D;;;;;AAKD,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SACvE,GAAG,mIACjB;;;;;AAKD,wBAAgB,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,iIAYnF;;;;;AAKD,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EACzD,IAAI,EAAE,CAAC,EAAE,EAAE,WAAW,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC1C,GAAG,EAAE,CAAC,EAAE,EAAE,WAAW,KAAK,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,4JAc7C"}
|
|
@@ -39,4 +39,4 @@ export function forkOperationWithEffect(self, fnc) {
|
|
|
39
39
|
.make(), (scope) => tsplus_module_3.tap(tsplus_module_3.tap(Scope.extend(Operations
|
|
40
40
|
.register, scope), (opId) => tsplus_module_2.forkDaemonReportRequestUnexpected(Scope.use(self(opId), scope))), (opId) => Scope.extend(tsplus_module_3.forkScoped(tsplus_module_3.interruptible(fnc(opId))), scope))));
|
|
41
41
|
}
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvT3BlcmF0aW9ucy9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OzthQXNCZ0IsYUFBYTtBQXJCN0IsT0FBTyxLQUFLLEtBQUssTUFBTSxjQUFjLENBQUE7QUFFckM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFVBQVcsU0FBUSxnQkFBQSxRQUFRLEVBS3hCO0NBQUc7QUFPbkI7O0dBRUc7QUFDSCx5QkFBdUMsSUFBcUI7SUFDMUQsT0FBTyx3QkFBQSxVQUFVLEVBQ2YsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUNiLHdCQUFBLEtBQUs7U0FDRixJQUFJLEVBQUUsRUFDRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQ2pCLG9CQUFBLEFBM0JFLEtBQUssUUEyQlAsVUFBVTtTQUNQLFFBQVEsRUFDRCxLQUFLLENBQUMsRUFDVCxHQUFHLEVBQUUsbURBQUMsQUE5QlgsS0FBSyxLQThCTSxJQUFJLEVBQUssS0FBSyxDQUFDLENBQWtDLENBQUMsQ0FDaEUsQ0FDTixDQUFBO0FBQ0gsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLHFCQUFxQixDQUFlLEdBQWtDO0lBQ3BGLE9BQU8sQ0FBQyxHQUFRLEVBQUUsRUFBRSxpQkFBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQWMsQ0FBQTtBQUM3QyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsY0FBYyxDQUFVLElBQTRDO0lBQ2xGLE9BQU8sd0JBQUEsVUFBVSxFQUNmLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FDYix3QkFBQSxLQUFLO1NBQ0YsSUFBSSxFQUFFLEVBQ0UsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNqQixvQkFBQSxBQW5ERSxLQUFLLFFBbURQLFVBQVU7U0FDUCxRQUFRLEVBQ0QsS0FBSyxDQUFDLEVBQ1QsQ0FBQyxFQUFFLEVBQUUsRUFBRSxtREFBQyxBQXREYixLQUFLLEtBc0RRLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBSyxLQUFLLENBQUMsQ0FBa0MsQ0FBQyxDQUN0RSxDQUNOLENBQUE7QUFDSCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsdUJBQXVCLENBQ3JDLElBQTBDLEVBQzFDLEdBQTRDO0lBRTVDLE9BQU8sd0JBQUEsVUFBVSxFQUNmLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FDYix3QkFBQSxLQUFLO1NBQ0YsSUFBSSxFQUFFLEVBQ0UsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNqQixvQkFBQSxvQkFBQSxBQXZFRSxLQUFLLFFBdUVQLFVBQVU7U0FDUCxRQUFRLEVBQ0QsS0FBSyxDQUFDLEVBQ1QsQ0FBQyxJQUFJLEVBQUUsRUFBRSxtREFBQyxBQTFFZixLQUFLLEtBMEVVLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBSyxLQUFLLENBQUMsQ0FBa0MsQ0FBQyxFQUNsRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQUEzRWYsS0FBSyxpRUEyRVUsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFpQyxLQUFLLENBQUMsQ0FBQyxDQUNuRSxDQUNOLENBQUE7QUFDSCxDQUFDIn0=
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import * as tsplus_module_1 from "@effect-app/prelude/schema";
|
|
2
2
|
import * as tsplus_module_2 from "@effect-app/schema/ext2";
|
|
3
3
|
import * as tsplus_module_3 from "effect/Effect";
|
|
4
|
-
import * as tsplus_module_4 from "effect/
|
|
5
|
-
import * as tsplus_module_5 from "@effect-app/
|
|
6
|
-
import * as tsplus_module_6 from "@effect-app/
|
|
7
|
-
import * as tsplus_module_7 from "@effect-app/infra/
|
|
8
|
-
import * as tsplus_module_8 from "
|
|
9
|
-
import * as tsplus_module_9 from "@effect-app/infra/api/setupRequest";
|
|
10
|
-
import * as tsplus_module_10 from "effect/Fiber";
|
|
4
|
+
import * as tsplus_module_4 from "@effect-app/core/_ext/Iterable";
|
|
5
|
+
import * as tsplus_module_5 from "@effect-app/infra/services/QueueMaker/errors";
|
|
6
|
+
import * as tsplus_module_6 from "@effect-app/prelude/utils";
|
|
7
|
+
import * as tsplus_module_7 from "@effect-app/infra/api/setupRequest";
|
|
8
|
+
import * as tsplus_module_8 from "effect/Fiber";
|
|
11
9
|
import { MemQueue } from "@effect-app/infra-adapters/memQueue";
|
|
12
10
|
import { RequestContext } from "@effect-app/infra/RequestContext";
|
|
13
11
|
import { RequestId } from "@effect-app/prelude/ids";
|
|
@@ -30,9 +28,9 @@ export function makeMemQueue(queueName, queueDrainName, schema, drainSchema) {
|
|
|
30
28
|
return {
|
|
31
29
|
publish: (...messages) => tsplus_module_3.gen(function* ($) {
|
|
32
30
|
const requestContext = yield* $(rcc.requestContext);
|
|
33
|
-
const currentSpan = yield* $(tsplus_module_3.currentSpan);
|
|
34
|
-
const span =
|
|
35
|
-
return yield* $(
|
|
31
|
+
const currentSpan = yield* $(tsplus_module_3.orDie(tsplus_module_3.currentSpan));
|
|
32
|
+
const span = Tracer.externalSpan(currentSpan);
|
|
33
|
+
return yield* $(tsplus_module_5.forkDaemonReportQueue(tsplus_module_4.ext_forEach(messages, (m) => tsplus_module_3.asUnit(
|
|
36
34
|
// we JSON encode, because that is what the wire also does, and it reveals holes in e.g unknown encoders (Date->String)
|
|
37
35
|
tsplus_module_3.flatMap(tsplus_module_3.sync(() => JSON.stringify(wireSchema.encodeSync({ body: m, meta: { requestContext, span } })))
|
|
38
36
|
// .tap((msg) => info("Publishing Mem Message: " + utils.inspect(msg)))
|
|
@@ -42,8 +40,8 @@ export function makeMemQueue(queueName, queueDrainName, schema, drainSchema) {
|
|
|
42
40
|
const silenceAndReportError = reportNonInterruptedFailure({ name: "MemQueue.drain." + queueDrainName });
|
|
43
41
|
const processMessage = (msg) =>
|
|
44
42
|
// we JSON parse, because that is what the wire also does, and it reveals holes in e.g unknown encoders (Date->String)
|
|
45
|
-
tsplus_module_3.flatMap(tsplus_module_3.orDie(tsplus_module_3.flatMap(tsplus_module_3.sync(() => JSON.parse(msg)), parseDrain)), ({ body, meta }) => tsplus_module_3.withSpan(
|
|
46
|
-
.pipe(tsplus_module_3.annotateLogs({ body:
|
|
43
|
+
tsplus_module_3.flatMap(tsplus_module_3.orDie(tsplus_module_3.flatMap(tsplus_module_3.sync(() => JSON.parse(msg)), parseDrain)), ({ body, meta }) => tsplus_module_3.withSpan(tsplus_module_7.setupRequestContext(tsplus_module_3.zipRight(tsplus_module_3.logDebug(`$$ [${queueDrainName}] Processing incoming message`)
|
|
44
|
+
.pipe(tsplus_module_3.annotateLogs({ body: tsplus_module_6.RecordPretty(tsplus_module_6.object$(body)), meta: tsplus_module_6.RecordPretty(tsplus_module_6.object$(meta)) })), handleEvent(body))
|
|
47
45
|
.pipe(silenceAndReportError), RequestContext.inherit(meta.requestContext, {
|
|
48
46
|
id: RequestId(body.id),
|
|
49
47
|
locale: "en",
|
|
@@ -55,7 +53,7 @@ export function makeMemQueue(queueName, queueDrainName, schema, drainSchema) {
|
|
|
55
53
|
: undefined
|
|
56
54
|
}));
|
|
57
55
|
return yield* $(tsplus_module_3.forkScoped(tsplus_module_3.forever(tsplus_module_3.flatMap(qDrain
|
|
58
|
-
.take, (x) => tsplus_module_3.flatMap(tsplus_module_3.fork(tsplus_module_3.uninterruptible(processMessage(x))), (_) =>
|
|
56
|
+
.take, (x) => tsplus_module_3.flatMap(tsplus_module_3.fork(tsplus_module_3.uninterruptible(processMessage(x))), (_) => tsplus_module_8.join(_)))
|
|
59
57
|
// TODO: normally a failed item would be returned to the queue and retried up to X times.
|
|
60
58
|
// .flatMap(_ => _._tag === "Failure" && !isInterrupted ? qDrain.offer(x) : Effect.unit) // TODO: retry count tracking and max retries.
|
|
61
59
|
.pipe(silenceAndReportError))));
|
|
@@ -63,4 +61,4 @@ export function makeMemQueue(queueName, queueDrainName, schema, drainSchema) {
|
|
|
63
61
|
};
|
|
64
62
|
});
|
|
65
63
|
}
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtUXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fc3JjL3NlcnZpY2VzL1F1ZXVlTWFrZXIvbWVtUXVldWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBQy9CLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBQ3ZFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUN6RCxPQUFPLEVBQWtCLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUV4RDs7R0FFRztBQUNILE1BQU0sVUFBVSxZQUFZLENBSzFCLFNBQWlCLEVBQ2pCLGNBQXNCLEVBQ3RCLE1BQW1ELEVBQ25ELFdBQTREO0lBRTVELE9BQU8sb0JBQVcsUUFBUSxDQUFDLEVBQUMsQ0FBQztRQUMzQixNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDOUIsTUFBTSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFBO1FBQ25ELE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQTtRQUM3RCxNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsdUJBQXVCLENBQUMsQ0FBQTtRQUU3QyxNQUFNLFVBQVUsR0FBRyxnQkFBQSxNQUFNLENBQUMsRUFBRSxJ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
|
|
@@ -4,10 +4,8 @@ import * as tsplus_module_3 from "@effect-app/prelude/schema";
|
|
|
4
4
|
import * as tsplus_module_4 from "@effect-app/prelude/utils";
|
|
5
5
|
import * as tsplus_module_5 from "effect/Effect";
|
|
6
6
|
import * as tsplus_module_6 from "@effect-app/infra/api/setupRequest";
|
|
7
|
-
import * as tsplus_module_7 from "effect/
|
|
8
|
-
import * as tsplus_module_8 from "
|
|
9
|
-
import * as tsplus_module_9 from "@effect-app/infra/services/QueueMaker/errors";
|
|
10
|
-
import * as tsplus_module_10 from "effect/Layer";
|
|
7
|
+
import * as tsplus_module_7 from "@effect-app/infra/services/QueueMaker/errors";
|
|
8
|
+
import * as tsplus_module_8 from "effect/Layer";
|
|
11
9
|
import { LiveReceiver, LiveSender, LiveServiceBusClient, Receiver, Sender, subscribe } from "@effect-app/infra-adapters/ServiceBus";
|
|
12
10
|
import { captureException } from "@effect-app/infra/errorReporter";
|
|
13
11
|
import { RequestContext } from "@effect-app/infra/RequestContext";
|
|
@@ -59,9 +57,9 @@ export function makeServiceBusQueue(_queueName, queueDrainName, schema, drainSch
|
|
|
59
57
|
}),
|
|
60
58
|
publish: (...messages) => tsplus_module_5.gen(function* ($) {
|
|
61
59
|
const requestContext = yield* $(rcc.requestContext);
|
|
62
|
-
const currentSpan = yield* $(tsplus_module_5.currentSpan);
|
|
63
|
-
const span =
|
|
64
|
-
return yield* $(
|
|
60
|
+
const currentSpan = yield* $(tsplus_module_5.orDie(tsplus_module_5.currentSpan));
|
|
61
|
+
const span = Tracer.externalSpan(currentSpan);
|
|
62
|
+
return yield* $(tsplus_module_7.forkDaemonReportQueue(tsplus_module_5.promise(() => s.sendMessages(messages.map((m) => ({
|
|
65
63
|
body: JSON.stringify(wireSchema.encodeSync({ body: m, meta: { requestContext, span } })),
|
|
66
64
|
messageId: m.id, /* correllationid: requestId */
|
|
67
65
|
contentType: "application/json"
|
|
@@ -74,6 +72,6 @@ export function makeServiceBusQueue(_queueName, queueDrainName, schema, drainSch
|
|
|
74
72
|
* @tsplus static QueueMaker.Ops makeServiceBusLayers
|
|
75
73
|
*/
|
|
76
74
|
export function makeServiceBusLayers(url, queueName, queueDrainName) {
|
|
77
|
-
return
|
|
75
|
+
return tsplus_module_8.provide(LiveServiceBusClient(url))((tsplus_module_8.merge(LiveSender(queueName))(LiveReceiver(queueDrainName))));
|
|
78
76
|
}
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2JxdWV1ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvUXVldWVNYWtlci9zYnF1ZXVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsT0FBTyxFQUNMLFlBQVksRUFDWixVQUFVLEVBQ1Ysb0JBQW9CLEVBQ3BCLFFBQVEsRUFDUixNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sdUNBQXVDLENBQUE7QUFFOUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUE7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUMvQixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUN2RSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDM0YsT0FBTyxFQUFrQixTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFeEQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsbUJBQW1CLENBS2pDLFVBQWtCLEVBQ2xCLGNBQXNCLEVBQ3RCLE1BQW1ELEVBQ25ELFdBQTREO0lBRTVELE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQztRQUN4QixJQUFJLEVBQUUsTUFBTTtRQUNaLElBQUksRUFBRSxTQUFTO0tBQ2hCLENBQUMsQ0FBQTtJQUNGLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUE7SUFDN0QsTUFBTSxVQUFVLG1DQUFHLE1BQU0sQ0FBZ0IsQ0FBQTtJQUV6QyxPQUFPLG9CQUFX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
|
|
@@ -2,33 +2,29 @@ import { TagClass } from "@effect-app/prelude/service";
|
|
|
2
2
|
import { Effect } from "effect/Effect";
|
|
3
3
|
import { Context } from "effect/Context";
|
|
4
4
|
import { Option } from "@effect-app/core/Option";
|
|
5
|
-
import { FiberRef } from "effect/FiberRef";
|
|
6
|
-
import { NonEmptyString255 } from "@effect-app/prelude/schema";
|
|
7
5
|
import { RequestContext } from "../RequestContext.js";
|
|
8
|
-
declare const RequestContextContainer_base: (
|
|
6
|
+
declare const RequestContextContainer_base: (new (service: {
|
|
7
|
+
requestContext: Effect<never, never, RequestContext>;
|
|
8
|
+
update: (f: (rc: RequestContext) => RequestContext) => Effect<never, never, RequestContext>;
|
|
9
|
+
start: (f: RequestContext) => Effect<never, never, void>;
|
|
10
|
+
}) => Readonly<{
|
|
11
|
+
requestContext: Effect<never, never, RequestContext>;
|
|
12
|
+
update: (f: (rc: RequestContext) => RequestContext) => Effect<never, never, RequestContext>;
|
|
13
|
+
start: (f: RequestContext) => Effect<never, never, void>;
|
|
14
|
+
}>) & import("effect/Context").Tag<RequestContextContainer, RequestContextContainer>;
|
|
9
15
|
/**
|
|
10
16
|
* @tsplus type RequestContextContainer
|
|
11
17
|
* @tsplus companion RequestContextContainer.Ops
|
|
12
18
|
*/
|
|
13
|
-
export declare
|
|
14
|
-
abstract readonly requestContext: Effect<never, never, RequestContext>;
|
|
15
|
-
abstract readonly update: (f: (rc: RequestContext) => RequestContext) => Effect<never, never, RequestContext>;
|
|
16
|
-
abstract readonly start: (f: RequestContext) => Effect<never, never, void>;
|
|
19
|
+
export declare class RequestContextContainer extends RequestContextContainer_base {
|
|
17
20
|
static get get(): Effect<RequestContextContainer, never, RequestContext>;
|
|
18
21
|
static get getOption(): import("effect/Effect").Effect<never, never, import("effect/Option").Option<RequestContext>>;
|
|
19
22
|
}
|
|
20
|
-
export declare class RequestContextContainerImpl extends RequestContextContainer {
|
|
21
|
-
#private;
|
|
22
|
-
constructor();
|
|
23
|
-
get requestContext(): import("effect/Effect").Effect<never, never, RequestContext>;
|
|
24
|
-
update: (f: (a: RequestContext) => RequestContext) => import("effect/Effect").Effect<never, never, RequestContext>;
|
|
25
|
-
start: (a: RequestContext) => import("effect/Effect").Effect<never, never, void>;
|
|
26
|
-
}
|
|
27
23
|
/**
|
|
28
24
|
* @tsplus static RequestContextContainer.Ops live
|
|
29
25
|
* @tsplus location "@effect-app/infra/services/RequestContextContainer"
|
|
30
26
|
*/
|
|
31
|
-
export declare const live: import("effect/Layer").Layer<
|
|
27
|
+
export declare const live: import("effect/Layer").Layer<import("effect/Scope").Scope, never, RequestContextContainer>;
|
|
32
28
|
/**
|
|
33
29
|
* @tsplus static RequestContext.Ops Tag
|
|
34
30
|
* @tsplus location "@effect-app/infra/services/RequestContextContainer"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestContextContainer.d.ts","sourceRoot":"","sources":["../../_src/services/RequestContextContainer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RequestContextContainer.d.ts","sourceRoot":"","sources":["../../_src/services/RequestContextContainer.ts"],"names":[],"mappings":";;;;AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;;oBAOnC,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,CAAC;qBACnC,cAAc,KAAK,cAAc,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,CAAC;eAChF,cAAc,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;;oBAFxC,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,CAAC;qBACnC,cAAc,KAAK,cAAc,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,CAAC;eAChF,cAAc,KAAK,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;;AAP1D;;;GAGG;AACH,qBAAa,uBAAwB,SAAQ,4BAIzC;IACF,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,uBAAuB,EAAE,KAAK,EAAE,cAAc,CAAC,CAEvE;IACD,MAAM,KAAK,SAAS,iGAQnB;CACF;;;;;AAKD,eAAO,MAAM,IAAI,4FASkB,CAAA;;;;;AAGnC,eAAO,MAAM,KAAK,8DAAwB,CAAA;;;;;AAK1C,eAAO,MAAM,cAAc,QAAS,cAAc;;;;;;;CAgBhD,CAAA"}
|
|
@@ -1,23 +1,11 @@
|
|
|
1
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
2
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
3
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
4
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
5
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
6
|
-
};
|
|
7
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
-
};
|
|
12
|
-
var _RequestContextContainerImpl_ref;
|
|
13
1
|
import * as tsplus_module_1 from "@effect-app/prelude/service";
|
|
14
2
|
import * as tsplus_module_2 from "effect/Effect";
|
|
15
3
|
import * as tsplus_module_3 from "effect/Option";
|
|
16
4
|
import * as tsplus_module_4 from "@effect-app/core/Option";
|
|
17
5
|
import * as tsplus_module_5 from "effect/Context";
|
|
18
|
-
import * as tsplus_module_6 from "
|
|
19
|
-
import * as tsplus_module_7 from "effect/
|
|
20
|
-
import * as tsplus_module_8 from "@effect-app/
|
|
6
|
+
import * as tsplus_module_6 from "effect/FiberRef";
|
|
7
|
+
import * as tsplus_module_7 from "@effect-app/infra/services/Store/Memory";
|
|
8
|
+
import * as tsplus_module_8 from "@effect-app/prelude/schema";
|
|
21
9
|
import * as tsplus_module_9 from "effect/Layer";
|
|
22
10
|
import { RequestId } from "@effect-app/prelude/ids";
|
|
23
11
|
import { RequestContext } from "../RequestContext.js";
|
|
@@ -35,23 +23,14 @@ export class RequestContextContainer extends tsplus_module_1.TagClass() {
|
|
|
35
23
|
: tsplus_module_2.sync(() => tsplus_module_4.none));
|
|
36
24
|
}
|
|
37
25
|
}
|
|
38
|
-
export class RequestContextContainerImpl extends RequestContextContainer {
|
|
39
|
-
constructor() {
|
|
40
|
-
super();
|
|
41
|
-
_RequestContextContainerImpl_ref.set(this, void 0);
|
|
42
|
-
this.update = (f) => tsplus_module_2.tap(tsplus_module_7.getAndUpdate(__classPrivateFieldGet(this, _RequestContextContainerImpl_ref, "f"), f), (rc) => tsplus_module_2.annotateCurrentSpan(spanAttributes_1(rc)));
|
|
43
|
-
this.start = (a) => tsplus_module_2.zipRight(tsplus_module_8.restoreFromRequestContext(a))(tsplus_module_7.set(__classPrivateFieldGet(this, _RequestContextContainerImpl_ref, "f"), a));
|
|
44
|
-
__classPrivateFieldSet(this, _RequestContextContainerImpl_ref, tsplus_module_7.unsafeMake(new RequestContext({ name: tsplus_module_6.NonEmptyString255("_root_"), rootId: RequestId("_root_"), locale: "en" })), "f");
|
|
45
|
-
}
|
|
46
|
-
get requestContext() {
|
|
47
|
-
return tsplus_module_7.get(__classPrivateFieldGet(this, _RequestContextContainerImpl_ref, "f"));
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
_RequestContextContainerImpl_ref = new WeakMap();
|
|
51
26
|
/**
|
|
52
27
|
* @tsplus static RequestContextContainer.Ops live
|
|
53
28
|
*/
|
|
54
|
-
export const live = tsplus_module_9.effect(RequestContextContainer)(tsplus_module_2.sync(() => new
|
|
29
|
+
export const live = tsplus_module_9.effect(RequestContextContainer)(tsplus_module_2.map(tsplus_module_2.andThen(tsplus_module_2.sync(() => new RequestContext({ name: tsplus_module_8.NonEmptyString255("_root_"), rootId: RequestId("_root_"), locale: "en" })), (tsplus_module_6.make)), (ref) => ({
|
|
30
|
+
requestContext: tsplus_module_6.get(ref),
|
|
31
|
+
update: (f) => tsplus_module_2.tap(tsplus_module_6.getAndUpdate(ref, f), (rc) => tsplus_module_2.annotateCurrentSpan(spanAttributes_1(rc))),
|
|
32
|
+
start: (a) => tsplus_module_2.zipRight(tsplus_module_7.restoreFromRequestContext(a))(tsplus_module_6.set(ref, a))
|
|
33
|
+
})));
|
|
55
34
|
/** @tsplus static RequestContext.Ops Tag */
|
|
56
35
|
export const RCTag = tsplus_module_5.Tag();
|
|
57
36
|
/**
|
|
@@ -75,4 +54,4 @@ const spanAttributes_1 = (ctx) => ({
|
|
|
75
54
|
: {}
|
|
76
55
|
});
|
|
77
56
|
export const spanAttributes = spanAttributes_1;
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdENvbnRleHRDb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9fc3JjL3NlcnZpY2VzL1JlcXVlc3RDb250ZXh0Q29udGFpbmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFckQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGdCQUFBLFFBQVEsRUFJakQ7SUFDRixNQUFNLEtBQUssR0FBRztRQUNaLE9BQU8sd0JBQUEsdUJBQXVCLEVBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQTtJQUNqRSxDQUFDO0lBQ0QsTUFBTSxLQUFLLFNBQVM7UUFDbEIsT0FBTyx3QkFBQSw0QkFDUSxDQUFDLENBQWlCLEVBQUUsRUFBRSxDQUFDLDBCQUFrQixDQUFDLEVBQUUsdUJBQXVCLENBQUMsQ0FBQyxFQUN6RSxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQzFCLHVCQUFBLGNBQWMsQ0FBUztZQUNyQixDQUFDLENBQUMsb0JBQUEsY0FBYyxDQUFDLEtBQUssQ0FBQyxjQUFjLHVCQUFpQjtZQUN0RCxDQUFDLENBQUMsZ0RBQW1CLENBQ3hCLENBQUE7SUFDTCxDQUFDO0NBQ0Y7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyx1QkFTVCx1QkFBdUIsRUFUZCxvQkFBQSx3QkFBQSxxQkFDWixHQUFHLEVBQUUsQ0FBQyxJQUFJLGNBQWMsQ0FBQyxFQUFFLElBQUksRUFBRSxnQkFBQSxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsRUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQ3hHLENBQUEsb0JBQTZCLENBQUEsQ0FBQyxFQUNsQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNiLGNBQWMsc0JBQUUsR0FBRyxDQUFJO0lBQ3ZCLE1BQU0sRUFBRSxDQUFDLENBQXdDLEVBQUUsRUFBRSxDQUNuRCxvQkFBQSw2QkFBQSxHQUFHLEVBQWMsQ0FBQyxDQUFDLEVBQUssQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLHFEQUEyQixFQUFFLEVBQWdCLENBQUM7SUFDaEYsS0FBSyxFQUFFLENBQUMsQ0FBaUIsRUFBRSxFQUFFLG9FQUFjLENBQUMsR0FBZCxvQkFBQSxHQUFHLEVBQUssQ0FBQyxDQUFDLENBQW1CO0NBQzVELENBQUMsQ0FBQyxDQUM4QixDQUFBO0FBRW5DLDRDQUE0QztBQUM1QyxNQUFNLENBQUMsTUFBTSxLQUFLLEdBQUcsZ0JBQUEsR0FBRyxFQUFrQixDQUFBO0FBRTFDOztHQUVHO0FBQ0ksTUFBTSxtQkFBaUIsQ0FBQyxHQUFtQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELFlBQVksRUFBRSxHQUFHLENBQUMsRUFBRTtJQUNwQixjQUFjLEVBQUUsR0FBRyxDQUFDLElBQUk7SUFDeEIsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLE1BQU07SUFDNUIsbUJBQW1CLEVBQUUsR0FBRyxDQUFDLFNBQVM7SUFDbEMsR0FBRyxHQUFHLENBQUMsV0FBVyxFQUFFLEdBQUc7UUFDckIsQ0FBQyxDQUFDO1lBQ0Esa0JBQWtCLEVBQUUsR0FBRztpQkFDcEIsV0FBVztpQkFDWCxHQUFHO1lBQ04sb0JBQW9CLEVBQUUsT0FBTyxJQUFJLEdBQUc7aUJBQy9CLFdBQVc7Z0JBQ2QsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsS0FBSztnQkFDdkIsQ0FBQyxDQUFDLFNBQVM7U0FDZDtRQUNELENBQUMsQ0FBQyxFQUFFO0NBQ1AsQ0FBQyxDQUFBO2FBaEJXLGNBQWMifQ==
|
|
@@ -2,29 +2,26 @@ import { TagClass } from "@effect-app/prelude/service";
|
|
|
2
2
|
import { Effect } from "effect/Effect";
|
|
3
3
|
import { Context } from "effect/Context";
|
|
4
4
|
import { Option } from "@effect-app/core/Option";
|
|
5
|
-
import { FiberRef } from "effect/FiberRef";
|
|
6
5
|
import { ContextMap } from "./service.js";
|
|
7
|
-
declare const ContextMapContainer_base: (
|
|
6
|
+
declare const ContextMapContainer_base: (new (service: {
|
|
7
|
+
get: Effect<never, never, ContextMap>;
|
|
8
|
+
start: Effect<never, never, void>;
|
|
9
|
+
}) => Readonly<{
|
|
10
|
+
get: Effect<never, never, ContextMap>;
|
|
11
|
+
start: Effect<never, never, void>;
|
|
12
|
+
}>) & import("effect/Context").Tag<ContextMapContainer, ContextMapContainer>;
|
|
8
13
|
/**
|
|
9
14
|
* @tsplus companion ContextMapContainer.Ops
|
|
10
15
|
*/
|
|
11
|
-
export declare
|
|
12
|
-
abstract readonly get: Effect<never, never, ContextMap>;
|
|
13
|
-
abstract readonly start: Effect<never, never, void>;
|
|
16
|
+
export declare class ContextMapContainer extends ContextMapContainer_base {
|
|
14
17
|
static get get(): Effect<ContextMapContainer, never, ContextMap>;
|
|
15
18
|
static get getOption(): import("effect/Effect").Effect<never, never, import("effect/Option").Option<ContextMap>>;
|
|
16
19
|
}
|
|
17
|
-
export declare class ContextMapContainerImpl extends ContextMapContainer {
|
|
18
|
-
#private;
|
|
19
|
-
constructor();
|
|
20
|
-
get get(): import("effect/Effect").Effect<never, never, ContextMap>;
|
|
21
|
-
start: import("effect/Effect").Effect<never, never, void>;
|
|
22
|
-
}
|
|
23
20
|
/**
|
|
24
21
|
* @tsplus static ContextMapContainer.Ops live
|
|
25
22
|
* @tsplus location "@effect-app/infra/services/Store/ContextMapContainer"
|
|
26
23
|
*/
|
|
27
|
-
export declare const live: import("effect/Layer").Layer<
|
|
24
|
+
export declare const live: import("effect/Layer").Layer<import("effect/Scope").Scope, never, ContextMapContainer>;
|
|
28
25
|
/**
|
|
29
26
|
* @tsplus static ContextMap.Ops Tag
|
|
30
27
|
* @tsplus location "@effect-app/infra/services/Store/ContextMapContainer"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextMapContainer.d.ts","sourceRoot":"","sources":["../../../_src/services/Store/ContextMapContainer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ContextMapContainer.d.ts","sourceRoot":"","sources":["../../../_src/services/Store/ContextMapContainer.ts"],"names":[],"mappings":";;;;AAAA,OAAO,EAAE,UAAU,EAAkB,MAAM,cAAc,CAAA;;SAYlD,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC;WAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;;SAD5B,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC;WAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;;AALnC;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,wBAGrC;IACF,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,mBAAmB,EAAE,KAAK,EAAE,UAAU,CAAC,CAE/D;IACD,MAAM,KAAK,SAAS,6FAQnB;CACF;;;;;AAKD,eAAO,MAAM,IAAI,wFAIc,CAAA;;;;;AAG/B,eAAO,MAAM,KAAK,sDAAoB,CAAA"}
|
|
@@ -1,15 +1,3 @@
|
|
|
1
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
2
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
3
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
4
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
5
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
6
|
-
};
|
|
7
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
-
};
|
|
12
|
-
var _ContextMapContainerImpl_ref;
|
|
13
1
|
import * as tsplus_module_1 from "@effect-app/prelude/service";
|
|
14
2
|
import * as tsplus_module_2 from "effect/Effect";
|
|
15
3
|
import * as tsplus_module_3 from "effect/Option";
|
|
@@ -37,22 +25,10 @@ export class ContextMapContainer extends tsplus_module_1.TagClass() {
|
|
|
37
25
|
: tsplus_module_2.sync(() => tsplus_module_4.none));
|
|
38
26
|
}
|
|
39
27
|
}
|
|
40
|
-
export class ContextMapContainerImpl extends ContextMapContainer {
|
|
41
|
-
constructor() {
|
|
42
|
-
super();
|
|
43
|
-
_ContextMapContainerImpl_ref.set(this, void 0);
|
|
44
|
-
this.start = tsplus_module_2.flatMap(tsplus_module_7.makeMap, (_) => tsplus_module_6.set(__classPrivateFieldGet(this, _ContextMapContainerImpl_ref, "f"), _));
|
|
45
|
-
__classPrivateFieldSet(this, _ContextMapContainerImpl_ref, tsplus_module_6.unsafeMake(makeContextMap()), "f");
|
|
46
|
-
}
|
|
47
|
-
get get() {
|
|
48
|
-
return tsplus_module_6.get(__classPrivateFieldGet(this, _ContextMapContainerImpl_ref, "f"));
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
_ContextMapContainerImpl_ref = new WeakMap();
|
|
52
28
|
/**
|
|
53
29
|
* @tsplus static ContextMapContainer.Ops live
|
|
54
30
|
*/
|
|
55
|
-
export const live = tsplus_module_8.effect(ContextMapContainer)(tsplus_module_2.sync(() => new
|
|
31
|
+
export const live = tsplus_module_8.effect(ContextMapContainer)(tsplus_module_2.map(tsplus_module_2.andThen(tsplus_module_2.sync(() => makeContextMap()), (tsplus_module_6.make)), (ref) => new ContextMapContainer({ get: tsplus_module_6.get(ref), start: tsplus_module_2.flatMap(tsplus_module_7.makeMap, (_) => tsplus_module_6.set(ref, _)) })));
|
|
56
32
|
/** @tsplus static ContextMap.Ops Tag */
|
|
57
33
|
export const RCTag = tsplus_module_5.Tag();
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udGV4dE1hcENvbnRhaW5lci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvU3RvcmUvQ29udGV4dE1hcENvbnRhaW5lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLE9BQU8sRUFBYyxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFekQsNkRBQTZEO0FBQzdELDBDQUEwQztBQUMxQyx5RUFBeUU7QUFDekUsNEdBQTRHO0FBQzVHLHlGQUF5RjtBQUV6Rjs7R0FFRztBQUNILE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxnQkFBQSxRQUFRLEVBRzdDO0lBQ0YsTUFBTSxLQUFLLEdBQUc7UUFDWixPQUFPLHdCQUFBLG1CQUFtQixFQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDbEQsQ0FBQztJQUNELE1BQU0sS0FBSyxTQUFTO1FBQ2xCLE9BQU8sd0JBQUEsNEJBQ1EsQ0FBQyxDQUFpQixFQUFFLEVBQUUsQ0FBQywwQkFBa0IsQ0FBQyxFQUFFLG1CQUFtQixDQUFDLENBQUMsRUFDckUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUNmLHVCQUFBLEdBQUcsQ0FBUztZQUNWLENBQUMsQ0FBQyxvQkFBQSxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsdUJBQWlCO1lBQ2hDLENBQUMsQ0FBQyxnREFBbUIsQ0FDeEIsQ0FBQTtJQUNMLENBQUM7Q0FDRjtBQUVEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUFHLHVCQUlULG1CQUFtQixFQUpWLG9CQUFBLHdCQUFBLHFCQUNaLEdBQUcsRUFBRSxDQUFDLGNBQWMsRUFBRSxDQUFDLEVBQ3BCLENBQUEsb0JBQXlCLENBQUEsQ0FBQyxFQUM5QixDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxtQkFBbUIsQ0FBQyxFQUFFLEdBQUcsc0JBQUUsR0FBRyxDQUFJLEVBQUUsS0FBSyxFQUFFLGlEQUF3QixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsb0JBQUEsR0FBRyxFQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQzlFLENBQUE7QUFFL0Isd0NBQXdDO0FBQ3hDLE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBRyxnQkFBQSxHQUFHLEVBQWMsQ0FBQSJ9
|
|
@@ -95,13 +95,16 @@ export interface Store<PM extends PersistenceModelType<Id>, Id extends string> {
|
|
|
95
95
|
*/
|
|
96
96
|
remove: (e: PM) => Effect<never, never, void>;
|
|
97
97
|
}
|
|
98
|
-
declare const StoreMaker_base: (
|
|
98
|
+
declare const StoreMaker_base: (new (service: {
|
|
99
|
+
make: <PM extends PersistenceModelType<Id>, Id extends string, R = never, E = never>(name: string, seed?: Effect<R, E, Iterable<PM>>, config?: StoreConfig<PM>) => Effect<R, E, Store<PM, Id>>;
|
|
100
|
+
}) => Readonly<{
|
|
101
|
+
make: <PM extends PersistenceModelType<Id>, Id extends string, R = never, E = never>(name: string, seed?: Effect<R, E, Iterable<PM>>, config?: StoreConfig<PM>) => Effect<R, E, Store<PM, Id>>;
|
|
102
|
+
}>) & import("effect/Context").Tag<StoreMaker, StoreMaker>;
|
|
99
103
|
/**
|
|
100
104
|
* @tsplus type StoreMaker
|
|
101
105
|
* @tsplus companion StoreMaker.Ops
|
|
102
106
|
*/
|
|
103
|
-
export declare
|
|
104
|
-
abstract make: <PM extends PersistenceModelType<Id>, Id extends string, R = never, E = never>(name: string, seed?: Effect<R, E, Iterable<PM>>, config?: StoreConfig<PM>) => Effect<R, E, Store<PM, Id>>;
|
|
107
|
+
export declare class StoreMaker extends StoreMaker_base {
|
|
105
108
|
}
|
|
106
109
|
export declare const makeContextMap: () => ContextMap;
|
|
107
110
|
/**
|
|
@@ -109,15 +112,20 @@ export declare const makeContextMap: () => ContextMap;
|
|
|
109
112
|
* @tsplus location "@effect-app/infra/services/Store/service"
|
|
110
113
|
*/
|
|
111
114
|
export declare const makeMap: import("effect/Effect").Effect<never, never, ContextMap>;
|
|
112
|
-
declare const ContextMap_base: (
|
|
115
|
+
declare const ContextMap_base: (new (service: {
|
|
116
|
+
get: (id: string) => string | undefined;
|
|
117
|
+
set: (id: string, eTag: string | undefined) => void;
|
|
118
|
+
parserEnv: ParserEnv;
|
|
119
|
+
}) => Readonly<{
|
|
120
|
+
get: (id: string) => string | undefined;
|
|
121
|
+
set: (id: string, eTag: string | undefined) => void;
|
|
122
|
+
parserEnv: ParserEnv;
|
|
123
|
+
}>) & import("effect/Context").Tag<ContextMap, ContextMap>;
|
|
113
124
|
/**
|
|
114
125
|
* @tsplus type ContextMap
|
|
115
126
|
* @tsplus companion ContextMap.Ops
|
|
116
127
|
*/
|
|
117
|
-
export declare
|
|
118
|
-
abstract get: (id: string) => string | undefined;
|
|
119
|
-
abstract set: (id: string, eTag: string | undefined) => void;
|
|
120
|
-
abstract parserEnv: ParserEnv;
|
|
128
|
+
export declare class ContextMap extends ContextMap_base {
|
|
121
129
|
}
|
|
122
130
|
export interface PersistenceModelType<Id extends string> {
|
|
123
131
|
id: Id;
|