@effect-app/infra 1.30.0 → 1.30.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -0
- package/dist/api/routing/DynamicMiddleware.d.ts +3 -3
- package/dist/api/routing/DynamicMiddleware.d.ts.map +1 -1
- package/dist/api/routing.d.ts +3 -3
- package/dist/api/routing.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/api/routing/DynamicMiddleware.ts +3 -3
- package/src/api/routing.ts +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Rpc } from "@effect/rpc";
|
|
2
2
|
import type { Effect, Request, S } from "effect-app";
|
|
3
|
-
import type { GetEffectContext,
|
|
3
|
+
import type { GetEffectContext, RPCContextMap } from "effect-app/client/req";
|
|
4
4
|
import type * as EffectRequest from "effect/Request";
|
|
5
|
-
export interface Middleware<Context, CTXMap extends Record<string,
|
|
5
|
+
export interface Middleware<Context, CTXMap extends Record<string, RPCContextMap.Any>> {
|
|
6
6
|
contextMap: CTXMap;
|
|
7
7
|
context: Context;
|
|
8
8
|
execute: <T extends {
|
|
@@ -11,7 +11,7 @@ export interface Middleware<Context, CTXMap extends Record<string, RPCContetMap.
|
|
|
11
11
|
};
|
|
12
12
|
}, Req extends S.TaggedRequest.All, R>(schema: T & S.Schema<Req, any, never>, handler: (request: Req) => Effect.Effect<EffectRequest.Request.Success<Req>, EffectRequest.Request.Error<Req>, R>, moduleName?: string) => (req: Req) => Effect.Effect<Request.Request.Success<Req>, Request.Request.Error<Req>, any>;
|
|
13
13
|
}
|
|
14
|
-
export declare const makeRpc: <Context, CTXMap extends Record<string,
|
|
14
|
+
export declare const makeRpc: <Context, CTXMap extends Record<string, RPCContextMap.Any>>(middleware: Middleware<Context, CTXMap>) => {
|
|
15
15
|
effect: <T extends {
|
|
16
16
|
config?: { [K in keyof CTXMap]?: any; };
|
|
17
17
|
}, Req extends S.TaggedRequest.All, R>(schema: T & S.Schema<Req, any, never>, handler: (request: Req) => Effect.Effect<EffectRequest.Request.Success<Req>, EffectRequest.Request.Error<Req>, R>, moduleName?: string) => Rpc.Rpc<Req, Context | Exclude<R, GetEffectContext<CTXMap, T["config"]>>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DynamicMiddleware.d.ts","sourceRoot":"","sources":["../../../src/api/routing/DynamicMiddleware.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AACjC,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"DynamicMiddleware.d.ts","sourceRoot":"","sources":["../../../src/api/routing/DynamicMiddleware.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AACjC,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAC5E,OAAO,KAAK,KAAK,aAAa,MAAM,gBAAgB,CAAA;AAEpD,MAAM,WAAW,UAAU,CAAC,OAAO,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC;IACnF,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,CACP,CAAC,SAAS;QACR,MAAM,CAAC,EAAE;aAAG,CAAC,IAAI,MAAM,MAAM,CAAC,CAAC,EAAE,GAAG;SAAE,CAAA;KACvC,EACD,GAAG,SAAS,CAAC,CAAC,aAAa,CAAC,GAAG,EAC/B,CAAC,EAED,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,EACrC,OAAO,EAAE,CACP,OAAO,EAAE,GAAG,KACT,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAC3F,UAAU,CAAC,EAAE,MAAM,KAChB,CACH,GAAG,EAAE,GAAG,KACL,MAAM,CAAC,MAAM,CAChB,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAC5B,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAC1B,GAAG,CACJ,CAAA;CACF;AAED,eAAO,MAAM,OAAO,GAAI,OAAO,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,cACnE,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC;aAG5B,CAAC,SAAS;QAAE,MAAM,CAAC,EAAE,GAAG,CAAiB,IAAZ,MAAM,MAAM,CAAC,CAAC,EAAE,GAAG,GAAE,CAAA;KAAE,EAAE,GAAG,SAAS,CAAC,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,UACvF,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,WAC5B,CACP,OAAO,EAAE,GAAG,KACT,MAAM,CAAC,MAAM,CAChB,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAClC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAChC,CAAC,CACF,eACY,MAAM;CAQxB,CAAA"}
|
package/dist/api/routing.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import type { Rpc } from "@effect/rpc";
|
|
|
4
4
|
import { RpcRouter } from "@effect/rpc";
|
|
5
5
|
import type { S } from "effect-app";
|
|
6
6
|
import { Effect } from "effect-app";
|
|
7
|
-
import type { GetEffectContext,
|
|
7
|
+
import type { GetEffectContext, RPCContextMap } from "effect-app/client/req";
|
|
8
8
|
import type { HttpServerError } from "effect-app/http";
|
|
9
9
|
import { HttpRouter } from "effect-app/http";
|
|
10
10
|
import type { Middleware } from "./routing/DynamicMiddleware.js";
|
|
@@ -54,12 +54,12 @@ type Filter<T> = {
|
|
|
54
54
|
failure: S.Schema.Any;
|
|
55
55
|
} ? K : never]: T[K];
|
|
56
56
|
};
|
|
57
|
-
interface ExtendedMiddleware<Context, CTXMap extends Record<string,
|
|
57
|
+
interface ExtendedMiddleware<Context, CTXMap extends Record<string, RPCContextMap.Any>> extends Middleware<Context, CTXMap> {
|
|
58
58
|
makeContext: Effect<{
|
|
59
59
|
[K in keyof CTXMap as CTXMap[K][1] extends never ? never : CTXMap[K][0]]: CTXMap[K][1];
|
|
60
60
|
}, never, never>;
|
|
61
61
|
}
|
|
62
|
-
export declare const makeRouter: <Context, CTXMap extends Record<string,
|
|
62
|
+
export declare const makeRouter: <Context, CTXMap extends Record<string, RPCContextMap.Any>>(middleware: ExtendedMiddleware<Context, CTXMap>) => {
|
|
63
63
|
matchAll: <T extends {
|
|
64
64
|
[key: string]: HttpRouter.HttpRouter<any, any>;
|
|
65
65
|
}>(handlers: T) => HttpRouter.HttpRouter<[T[keyof T]] extends [HttpRouter.HttpRouter<infer E, any>] ? E : never, [T[keyof T]] extends [HttpRouter.HttpRouter<any, infer R>] ? R : never>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../src/api/routing.ts"],"names":[],"mappings":"AAOA,OAAO,EAAY,KAAK,eAAe,EAAE,KAAK,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAG5F,OAAO,KAAK,KAAK,OAAO,MAAM,0BAA0B,CAAA;AACxD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,YAAY,CAAA;AACnC,OAAO,EAAkB,MAAM,EAA+B,MAAM,YAAY,CAAA;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../src/api/routing.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect-app/infra",
|
|
3
|
-
"version": "1.30.
|
|
3
|
+
"version": "1.30.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"dependencies": {
|
|
@@ -20,10 +20,10 @@
|
|
|
20
20
|
"proper-lockfile": "^4.1.2",
|
|
21
21
|
"pure-rand": "6.1.0",
|
|
22
22
|
"redlock": "^4.2.0",
|
|
23
|
-
"@effect-app/infra-adapters": "1.15.4",
|
|
24
23
|
"@effect-app/core": "1.12.0",
|
|
25
|
-
"@effect-app/
|
|
26
|
-
"effect-app": "1.23.
|
|
24
|
+
"@effect-app/infra-adapters": "1.15.5",
|
|
25
|
+
"effect-app": "1.23.1",
|
|
26
|
+
"@effect-app/schema": "1.15.0"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@babel/cli": "^7.25.7",
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
4
4
|
import { Rpc } from "@effect/rpc"
|
|
5
5
|
import type { Effect, Request, S } from "effect-app"
|
|
6
|
-
import type { GetEffectContext,
|
|
6
|
+
import type { GetEffectContext, RPCContextMap } from "effect-app/client/req"
|
|
7
7
|
import type * as EffectRequest from "effect/Request"
|
|
8
8
|
|
|
9
|
-
export interface Middleware<Context, CTXMap extends Record<string,
|
|
9
|
+
export interface Middleware<Context, CTXMap extends Record<string, RPCContextMap.Any>> {
|
|
10
10
|
contextMap: CTXMap
|
|
11
11
|
context: Context
|
|
12
12
|
execute: <
|
|
@@ -30,7 +30,7 @@ export interface Middleware<Context, CTXMap extends Record<string, RPCContetMap.
|
|
|
30
30
|
>
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
export const makeRpc = <Context, CTXMap extends Record<string,
|
|
33
|
+
export const makeRpc = <Context, CTXMap extends Record<string, RPCContextMap.Any>>(
|
|
34
34
|
middleware: Middleware<Context, CTXMap>
|
|
35
35
|
) => {
|
|
36
36
|
return {
|
package/src/api/routing.ts
CHANGED
|
@@ -13,7 +13,7 @@ import type { Rpc } from "@effect/rpc"
|
|
|
13
13
|
import { RpcRouter } from "@effect/rpc"
|
|
14
14
|
import type { S } from "effect-app"
|
|
15
15
|
import { Chunk, Context, Effect, FiberRef, Predicate, Stream } from "effect-app"
|
|
16
|
-
import type { GetEffectContext,
|
|
16
|
+
import type { GetEffectContext, RPCContextMap } from "effect-app/client/req"
|
|
17
17
|
import type { HttpServerError } from "effect-app/http"
|
|
18
18
|
import { HttpRouter, HttpServerRequest, HttpServerResponse } from "effect-app/http"
|
|
19
19
|
import type { Middleware } from "./routing/DynamicMiddleware.js"
|
|
@@ -60,7 +60,7 @@ export const toHttpApp = <R extends RpcRouter.RpcRouter<any, any>>(self: R, opti
|
|
|
60
60
|
})
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
-
type GetRouteContext<CTXMap extends Record<string,
|
|
63
|
+
type GetRouteContext<CTXMap extends Record<string, RPCContextMap.Any>, T> =
|
|
64
64
|
// & CTX
|
|
65
65
|
// inverted
|
|
66
66
|
& {
|
|
@@ -146,7 +146,7 @@ type Filter<T> = {
|
|
|
146
146
|
[K in keyof T as T[K] extends S.Schema.All & { success: S.Schema.Any; failure: S.Schema.Any } ? K : never]: T[K]
|
|
147
147
|
}
|
|
148
148
|
|
|
149
|
-
interface ExtendedMiddleware<Context, CTXMap extends Record<string,
|
|
149
|
+
interface ExtendedMiddleware<Context, CTXMap extends Record<string, RPCContextMap.Any>>
|
|
150
150
|
extends Middleware<Context, CTXMap>
|
|
151
151
|
{
|
|
152
152
|
// TODO
|
|
@@ -157,7 +157,7 @@ interface ExtendedMiddleware<Context, CTXMap extends Record<string, RPCContetMap
|
|
|
157
157
|
>
|
|
158
158
|
}
|
|
159
159
|
|
|
160
|
-
export const makeRouter = <Context, CTXMap extends Record<string,
|
|
160
|
+
export const makeRouter = <Context, CTXMap extends Record<string, RPCContextMap.Any>>(
|
|
161
161
|
middleware: ExtendedMiddleware<Context, CTXMap>
|
|
162
162
|
) => {
|
|
163
163
|
const rpc = makeRpc(middleware)
|