effect-app 3.0.2 → 3.0.4
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 +12 -0
- package/dist/Context.d.ts +23 -2
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +6 -1
- package/dist/Layer.d.ts +35 -0
- package/dist/Layer.d.ts.map +1 -0
- package/dist/Layer.js +16 -0
- package/dist/NonEmptySet.d.ts +1 -1
- package/dist/client/apiClientFactory.d.ts +2 -18
- package/dist/client/apiClientFactory.d.ts.map +1 -1
- package/dist/client/makeClient.d.ts +58 -0
- package/dist/client/makeClient.d.ts.map +1 -0
- package/dist/client/makeClient.js +36 -0
- package/dist/client.d.ts +1 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +2 -2
- package/dist/internal/Prelude.d.ts +2 -2
- package/dist/internal/Prelude.js +1 -1
- package/dist/{rpc/middleware-native.d.ts → middleware.d.ts} +5 -4
- package/dist/middleware.d.ts.map +1 -0
- package/dist/middleware.js +17 -0
- package/dist/rpc/{middleware-api.d.ts → MiddlewareMaker.d.ts} +64 -45
- package/dist/rpc/MiddlewareMaker.d.ts.map +1 -0
- package/dist/rpc/MiddlewareMaker.js +99 -0
- package/dist/rpc/RpcContextMap.d.ts +73 -0
- package/dist/rpc/RpcContextMap.d.ts.map +1 -0
- package/dist/rpc/RpcContextMap.js +33 -0
- package/dist/rpc/RpcMiddleware.d.ts +30 -37
- package/dist/rpc/RpcMiddleware.d.ts.map +1 -1
- package/dist/rpc/RpcMiddleware.js +2 -2
- package/dist/rpc.d.ts +2 -4
- package/dist/rpc.d.ts.map +1 -1
- package/dist/rpc.js +3 -5
- package/dist/utils/gen.d.ts +8 -0
- package/dist/utils/gen.d.ts.map +1 -0
- package/dist/utils/gen.js +2 -0
- package/dist/utils.d.ts +0 -1
- package/dist/utils.d.ts.map +1 -1
- package/package.json +30 -24
- package/src/Context.ts +56 -0
- package/src/Layer.ts +60 -0
- package/src/client/makeClient.ts +150 -0
- package/src/client.ts +1 -1
- package/src/internal/Prelude.d.ts +2 -2
- package/src/internal/Prelude.js +1 -1
- package/src/{rpc/middleware-native.ts → middleware.ts} +4 -4
- package/src/rpc/{middleware-api.ts → MiddlewareMaker.ts} +170 -139
- package/src/rpc/README.md +41 -0
- package/src/rpc/RpcContextMap.ts +163 -0
- package/src/rpc/RpcMiddleware.ts +83 -43
- package/src/rpc.ts +2 -4
- package/src/utils/gen.ts +22 -0
- package/src/utils.ts +0 -2
- package/test/rpc.test.ts +1 -1
- package/dist/client/req.d.ts +0 -120
- package/dist/client/req.d.ts.map +0 -1
- package/dist/client/req.js +0 -56
- package/dist/rpc/RpcMiddlewareX.d.ts +0 -24
- package/dist/rpc/RpcMiddlewareX.d.ts.map +0 -1
- package/dist/rpc/RpcMiddlewareX.js +0 -16
- package/dist/rpc/generic-middleware.d.ts +0 -51
- package/dist/rpc/generic-middleware.d.ts.map +0 -1
- package/dist/rpc/generic-middleware.js +0 -24
- package/dist/rpc/middleware-api.d.ts.map +0 -1
- package/dist/rpc/middleware-api.js +0 -88
- package/dist/rpc/middleware-native.d.ts.map +0 -1
- package/dist/rpc/middleware-native.js +0 -17
- package/src/client/req.ts +0 -288
- package/src/rpc/RpcMiddlewareX.ts +0 -65
- package/src/rpc/generic-middleware.ts +0 -128
- package/wallaby.cjs +0 -1
package/CHANGELOG.md
CHANGED
package/dist/Context.d.ts
CHANGED
|
@@ -4,7 +4,9 @@
|
|
|
4
4
|
* https://github.com/microsoft/TypeScript/issues/52644
|
|
5
5
|
*/
|
|
6
6
|
import { Effect, Layer, type Scope } from "effect";
|
|
7
|
+
import { type NonEmptyReadonlyArray } from "effect/Array";
|
|
7
8
|
import * as Context from "effect/Context";
|
|
9
|
+
import { type Service } from "effect/Effect";
|
|
8
10
|
export * from "effect/Context";
|
|
9
11
|
export declare const ServiceTag: unique symbol;
|
|
10
12
|
export type ServiceTag = typeof ServiceTag;
|
|
@@ -29,7 +31,7 @@ export declare function TagId<const Key extends string>(key: Key): <Id, ServiceI
|
|
|
29
31
|
toLayerScoped: <E, R_1>(eff: Effect.Effect<Omit<Id, keyof Context.TagClassShape<any, any>>, E, R_1>) => Layer.Layer<Id, E, Exclude<R_1, Scope.Scope>>;
|
|
30
32
|
of: (service: Omit<Id, keyof Context.TagClassShape<any, any>>) => Id;
|
|
31
33
|
} & Context.Tag<Id, Id> & (ServiceImpl extends Record<PropertyKey, any> ? { [k in keyof ServiceImpl as ServiceImpl[k] extends (...args: infer Args) => infer Ret ? ((...args: Readonly<Args>) => Ret) extends ServiceImpl[k] ? k : never : k]: ServiceImpl[k] extends (...args: infer Args) => Effect.Effect<infer A, infer E, infer R_2> ? (...args: Readonly<Args>) => Effect.Effect<A, E, R_2 | Id> : ServiceImpl[k] extends (...args: infer Args) => infer A ? (...args: Readonly<Args>) => Effect.Effect<A, never, Id> : ServiceImpl[k] extends Effect.Effect<infer A, infer E, infer R_2> ? Effect.Effect<A, E, R_2 | Id> : Effect.Effect<ServiceImpl[k], never, Id>; } : {}) & {
|
|
32
|
-
use: <X>(body: (_: ServiceImpl) => X) => X extends Effect.Effect<infer
|
|
34
|
+
use: <X>(body: (_: ServiceImpl) => X) => X extends Effect.Effect<infer A, infer E, infer R_2> ? Effect.Effect<A, E, R_2 | Id> : Effect.Effect<X, never, Id>;
|
|
33
35
|
};
|
|
34
36
|
export declare const TagMakeId: <ServiceImpl, R, E, const Key extends string>(key: Key, make: Effect.Effect<ServiceImpl, E, R>) => <Id>() => (abstract new (service: ServiceImpl) => Readonly<ServiceImpl> & Context.TagClassShape<Key, ServiceImpl>) & {
|
|
35
37
|
toLayer: {
|
|
@@ -43,6 +45,25 @@ export declare const TagMakeId: <ServiceImpl, R, E, const Key extends string>(ke
|
|
|
43
45
|
of: (service: Context.TagClassShape<any, any>) => Id;
|
|
44
46
|
make: Effect.Effect<Id, E, R>;
|
|
45
47
|
} & Context.Tag<Id, Id> & (ServiceImpl extends Record<PropertyKey, any> ? { [k in keyof ServiceImpl as ServiceImpl[k] extends (...args: infer Args) => infer Ret ? ((...args: Readonly<Args>) => Ret) extends ServiceImpl[k] ? k : never : k]: ServiceImpl[k] extends (...args: infer Args) => Effect.Effect<infer A, infer E_1, infer R_3> ? (...args: Readonly<Args>) => Effect.Effect<A, E_1, R_3 | Id> : ServiceImpl[k] extends (...args: infer Args) => infer A ? (...args: Readonly<Args>) => Effect.Effect<A, never, Id> : ServiceImpl[k] extends Effect.Effect<infer A, infer E_1, infer R_3> ? Effect.Effect<A, E_1, R_3 | Id> : Effect.Effect<ServiceImpl[k], never, Id>; } : {}) & {
|
|
46
|
-
use: <X>(body: (_: ServiceImpl) => X) => X extends Effect.Effect<infer
|
|
48
|
+
use: <X>(body: (_: ServiceImpl) => X) => X extends Effect.Effect<infer A, infer E_1, infer R_3> ? Effect.Effect<A, E_1, R_3 | Id> : Effect.Effect<X, never, Id>;
|
|
49
|
+
};
|
|
50
|
+
export declare const ServiceDef: <Tag extends Context.Tag<any, any>>(self: Tag) => <A>() => <LayerOpts extends {
|
|
51
|
+
effect: Effect.Effect<A, any, any>;
|
|
52
|
+
dependencies?: NonEmptyReadonlyArray<Layer.Layer.Any>;
|
|
53
|
+
}>(opts: LayerOpts) => Layer.Layer<Tag, (LayerOpts extends {
|
|
54
|
+
effect: Effect.Effect<infer _A, infer _E, infer _R>;
|
|
55
|
+
} ? _E : never) | Service.MakeDepsE<LayerOpts>, Exclude<LayerOpts extends {
|
|
56
|
+
effect: Effect.Effect<infer _A, infer _E_1, infer _R_1>;
|
|
57
|
+
} ? _R_1 : never, Service.MakeDepsOut<LayerOpts>> | Service.MakeDepsIn<LayerOpts>>;
|
|
58
|
+
/** @deprecated; use `static Default = Layer.make(this, { effect, dependencies })` instead */
|
|
59
|
+
export declare const DefineService: <Tag extends Context.TagClass<any, any, any>, LayerOpts extends {
|
|
60
|
+
effect: Effect.Effect<Context.Tag.Service<Tag>, any, any>;
|
|
61
|
+
dependencies?: NonEmptyReadonlyArray<Layer.Layer.Any>;
|
|
62
|
+
}>(tag: Tag, opts: LayerOpts) => Tag & {
|
|
63
|
+
Default: Layer.Layer<Context.Tag.Identifier<Tag>, (LayerOpts extends {
|
|
64
|
+
effect: Effect.Effect<infer _A, infer _E, infer _R>;
|
|
65
|
+
} ? _E : never) | Service.MakeDepsE<LayerOpts>, Exclude<LayerOpts extends {
|
|
66
|
+
effect: Effect.Effect<infer _A, infer _E_1, infer _R_1>;
|
|
67
|
+
} ? _R_1 : never, Service.MakeDepsOut<LayerOpts>> | Service.MakeDepsIn<LayerOpts>>;
|
|
47
68
|
};
|
|
48
69
|
//# sourceMappingURL=Context.d.ts.map
|
package/dist/Context.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../src/Context.ts"],"names":[],"mappings":"AACA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,KAAK,EAAE,MAAM,QAAQ,CAAA;AAClD,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../src/Context.ts"],"names":[],"mappings":"AACA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,KAAK,EAAE,MAAM,QAAQ,CAAA;AAClD,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,cAAc,CAAA;AACzD,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,eAAe,CAAA;AAE5C,cAAc,gBAAgB,CAAA;AAE9B,eAAO,MAAM,UAAU,eAAW,CAAA;AAClC,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAA;AAE1C,8BAAsB,oBAAoB,CAAC,UAAU,SAAS,MAAM,GAAG,EAAE,gBAAgB;IACvF,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE;QACxC,QAAQ,EAAE,KAAK,IAAI,UAAU,GAAG,CAAC,CAAC,EAAE,gBAAgB,KAAK,gBAAgB;KAC1E,CAAA;CACF;AAED,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,IAAI,CACxE,CAAC,EACD,MAAM,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CACtC,CAAA;AAED,8BAAsB,aAAa,CAAC,UAAU,CAAE,SAAQ,oBAAoB,CAAC,MAAM,EAAE,UAAU,CAAC;CAAG;AAEnG,wBAAgB,WAAW,CAAC,CAAC,SAAS,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,GAClE,CAAC,CACd;AAKD,wBAAgB,SAAS,CAAC,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,KAAK,IACrE,CAAC,SAAS,MAAM,EAAE,KAAK,CAAC,KAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAsBhE;AAED,MAAM,MAAM,mBAAmB,CAAC,IAAI,EAAE,IAAI,IACtC,CAAC,IAAI,SAAS,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,GAAG;KAErC,CAAC,IAAI,MAAM,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,MAAM,GAAG,CAAC,GACxE,CAAC,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,GAC9D,CAAC,GACJ,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GACrF,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,GAC1D,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,MAAM,CAAC,GACnD,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,GAC5D,IAAI,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,GACxF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC;CACxC,GACC,EAAE,CAAC,GACL;IACA,GAAG,EAAE,CAAC,CAAC,EACL,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,KACjB,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GACnF,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;CAClC,CAAA;AAEH,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS,MAAM,EAAE,KAAK,CAAC,MAC/C,IAAI,EAAE,KAAK,OACR,CAAC,GACD,mBAAmB,CAAC,IAAI,EAAE,KAAK,CA0BlC,CAAA;AAgGD,wBAAgB,KAAK,CAAC,KAAK,CAAC,GAAG,SAAS,MAAM,EAAE,GAAG,EAAE,GAAG,IAC9C,EAAE,EAAE,WAAW,+BAOR,WAAW,KACjB,QAAQ,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC;aAEzD,CAAC,CAAC,EAAE,CAAC,EACZ,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KACtE,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;mBACX,CAAC,CAAC,EAAE,GAAC,EAClB,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAC,CAAC,KACtE,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,OAAO,CAAC,GAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5C,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE;6EAhKpE,CAAC,gEAAuD,IAAI,KAAM,MAAM,GAAG,cAC5D,QAAQ,CAAC,IAAI,CAAC,KAAK,GAAG,kFAEA,IAAI,KAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAC,CAAC,aAC3E,QAAQ,CAAC,IAAI,CAAC,4EACY,IAAI,KAAM,MAAM,CAAC,aACzC,QAAQ,CAAC,IAAI,CAAC,8EACU,CAAC,QAAQ,CAAC;UAK9C,CAAC,gEAE4B,CAAC,QAAQ,CAAC;EAmKhD;AAED,eAAO,MAAM,SAAS,GAAI,WAAW,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,GAAG,SAAS,MAAM,EACnE,KAAK,GAAG,EACR,MAAM,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC,MAEvC,EAAE,+BAOY,WAAW,KACjB,QAAQ,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC;aAEzD;QACP,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QACzB,CAAC,GAAC,EAAE,GAAC,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,GAAC,EAAE,GAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,GAAC,EAAE,GAAC,CAAC,CAAA;KACzG;mBACc;QACb,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;QAC/C,CAAC,GAAC,EAAE,GAAC,EACH,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,GAAC,EAAE,GAAC,CAAC,GACxE,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,GAAC,EAAE,OAAO,CAAC,GAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;KAC/C;QACG,CAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,EAAE;UAC9C,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;6EA5M3B,CAAC,gEAAuD,IAAI,KAAM,MAAM,GAAG,cAC5D,QAAQ,CAAC,IAAI,CAAC,KAAK,GAAG,kFAEA,IAAI,KAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAC,EAAE,MAAM,GAAC,CAAC,aAC3E,QAAQ,CAAC,IAAI,CAAC,8EACY,IAAI,KAAM,MAAM,CAAC,aACzC,QAAQ,CAAC,IAAI,CAAC,8EACU,CAAC;UAKrC,CAAC,gEAE4B,CAAC;CAmNvC,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,GAAG,SAAS,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MACtE,CAAC,QAEA,SAAS,SAAS;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,CACnB,CAAC,EACD,GAAG,EACH,GAAG,CACJ,CAAA;IACD,YAAY,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;CACtD,EACD,MAAM,SAAS,KAAG,KAAK,CAAC,KAAK,CAC7B,GAAG,EACD,CAAC,SAAS,SAAS;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;CAAE,GAAG,EAAE,GAC7E,KAAK,CAAC,GACR,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,EAC5B,OAAO,CACP,SAAS,SAAS;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,IAAE,EAAE,MAAM,IAAE,CAAC,CAAA;CAAE,GAAG,IAAE,GAAG,KAAK,EACtF,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAC/B,GACC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAIvB,CAAA;AAEV,6FAA6F;AAC7F,eAAO,MAAM,aAAa,GACxB,GAAG,SAAS,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAC3C,SAAS,SAAS;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,CACnB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,EACxB,GAAG,EACH,GAAG,CACJ,CAAA;IACD,YAAY,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;CACtD,EACD,KAAK,GAAG,EAAE,MAAM,SAAS,KAAG,GAAG,GAAG;IAClC,OAAO,EAAE,KAAK,CAAC,KAAK,CAClB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EACzB,CAAC,SAAS,SAAS;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;KAAE,GAAG,EAAE,GAC7E,KAAK,CAAC,GACR,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,EAC5B,OAAO,CACP,SAAS,SAAS;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,IAAE,EAAE,MAAM,IAAE,CAAC,CAAA;KAAE,GAAG,IAAE,GAAG,KAAK,EACtF,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAC/B,GACC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAChC,CAAA;CAIO,CAAA"}
|
package/dist/Context.js
CHANGED
|
@@ -196,4 +196,9 @@ export const TagMakeId = (key, make) => () => {
|
|
|
196
196
|
};
|
|
197
197
|
return proxify(assignTag(key, creationError)(c))();
|
|
198
198
|
};
|
|
199
|
-
|
|
199
|
+
export const ServiceDef = (self) => () => (opts) => Layer.scoped(self, opts.effect).pipe(Layer.provide([Layer.empty, ...opts.dependencies ?? []]));
|
|
200
|
+
/** @deprecated; use `static Default = Layer.make(this, { effect, dependencies })` instead */
|
|
201
|
+
export const DefineService = (tag, opts) => class extends tag {
|
|
202
|
+
static Default = ServiceDef(tag)()(opts);
|
|
203
|
+
};
|
|
204
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Db250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RDs7OztHQUlHO0FBRUgsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQWMsTUFBTSxRQUFRLENBQUE7QUFFbEQsT0FBTyxLQUFLLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQTtBQUd6QyxjQUFjLGdCQUFnQixDQUFBO0FBRTlCLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxNQUFNLEVBQUUsQ0FBQTtBQUdsQyxNQUFNLE9BQWdCLG9CQUFvQjtDQUl6QztBQU9ELE1BQU0sT0FBZ0IsYUFBMEIsU0FBUSxvQkFBd0M7Q0FBRztBQUVuRyxNQUFNLFVBQVUsV0FBVyxDQUErQixDQUFzQjtJQUM5RSxPQUFPLENBQU0sQ0FBQTtBQUNmLENBQUM7QUFFRCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUE7QUFDVCxNQUFNLFFBQVEsR0FBRyxHQUFHLEVBQUUsQ0FBQyxrQkFBa0IsR0FBRyxDQUFDLEVBQUUsQ0FBQTtBQUUvQyxNQUFNLFVBQVUsU0FBUyxDQUFtQixHQUFZLEVBQUUsYUFBcUI7SUFDN0UsT0FBTyxDQUFtQixHQUFNLEVBQWdDLEVBQUU7UUFDaEUsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBYyxHQUFHLElBQUksUUFBUSxFQUFFLENBQUMsQ0FBQTtRQUM5RCxJQUFJLE1BQU0sR0FBRyxHQUFHLENBQUE7UUFDaEIsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLEVBQUUsR0FBRyxHQUFHLENBQUE7WUFDNUIsTUFBTSxHQUFHLElBQVcsQ0FBQTtRQUN0QixDQUFDO1FBQ0QsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxH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
|
package/dist/Layer.d.ts
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { type Array, type Context, Effect, Layer, type Scope, type Types } from "effect";
|
|
2
|
+
import { type YieldWrap } from "effect/Utils";
|
|
3
|
+
import { type EffectGenUtils } from "./utils/gen.js";
|
|
4
|
+
export * from "effect/Layer";
|
|
5
|
+
type Make<S, E = never, R = never> = DependenciesOpt & (MakeEff<S, E, R> | MakeGenNo<S> | MakeGen<S, E, R>);
|
|
6
|
+
type MakeEff<S, E, R> = {
|
|
7
|
+
readonly make: Effect.Effect<S, E, R>;
|
|
8
|
+
};
|
|
9
|
+
type MakeGen<S, E = never, R = never> = {
|
|
10
|
+
readonly make: () => Generator<YieldWrap<Effect.Effect<any, E, R>>, S, any>;
|
|
11
|
+
};
|
|
12
|
+
type MakeGenNo<S> = {
|
|
13
|
+
readonly make: () => Generator<unknown, S>;
|
|
14
|
+
};
|
|
15
|
+
type MakeErr<Opts> = Opts extends {
|
|
16
|
+
make: () => any;
|
|
17
|
+
} ? EffectGenUtils.Error<Opts["make"]> : never;
|
|
18
|
+
type MakeContext<Opts> = Opts extends {
|
|
19
|
+
make: () => any;
|
|
20
|
+
} ? EffectGenUtils.Context<Opts["make"]> : never;
|
|
21
|
+
type DependenciesOpt = {
|
|
22
|
+
dependencies?: Array.NonEmptyReadonlyArray<Layer.Layer.Any>;
|
|
23
|
+
};
|
|
24
|
+
type Dependencies = {
|
|
25
|
+
dependencies: Array.NonEmptyReadonlyArray<Layer.Layer.Any>;
|
|
26
|
+
};
|
|
27
|
+
type PackedLayers<I, Opts> = Layer.Layer<I, MakeErr<Opts> | Effect.Service.MakeDepsE<Opts>, Exclude<MakeContext<Opts>, Scope.Scope | Effect.Service.MakeDepsOut<Opts>>> & {
|
|
28
|
+
withoutDependencies: Layer.Layer<I, MakeErr<Opts>, Exclude<MakeContext<Opts>, Scope.Scope>>;
|
|
29
|
+
};
|
|
30
|
+
type PackedOrUnpackedLayer<I, Opts> = Opts extends Dependencies ? PackedLayers<I, Opts> & {} : Layer.Layer<I, MakeErr<Opts>, MakeContext<Opts>>;
|
|
31
|
+
export declare const make: {
|
|
32
|
+
<I, S>(tag: Context.Tag<I, S>): <Opts extends Make<Types.NoInfer<S>, any, any>>(options: Opts) => PackedOrUnpackedLayer<I, Opts>;
|
|
33
|
+
<I, S, Opts extends Make<Types.NoInfer<S>, any, any>>(tag: Context.Tag<I, S>, options: Opts): PackedOrUnpackedLayer<I, Opts>;
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=Layer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Layer.d.ts","sourceRoot":"","sources":["../src/Layer.ts"],"names":[],"mappings":"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"}
|
package/dist/Layer.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Effect, Layer } from "effect";
|
|
2
|
+
import { dual } from "effect/Function";
|
|
3
|
+
export * from "effect/Layer";
|
|
4
|
+
export const make = dual(2, (tag, options) => {
|
|
5
|
+
const effect = options.make[Symbol.toStringTag] === "GeneratorFunction"
|
|
6
|
+
? Effect.fnUntraced(options.make)()
|
|
7
|
+
: options.make;
|
|
8
|
+
const withoutDependencies = Layer.scoped(tag, effect);
|
|
9
|
+
if (options.dependencies) {
|
|
10
|
+
return Object.assign(withoutDependencies.pipe(Layer.provide(options.dependencies)), { withoutDependencies });
|
|
11
|
+
}
|
|
12
|
+
else {
|
|
13
|
+
return withoutDependencies;
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGF5ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvTGF5ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE0QixNQUFNLEVBQUUsS0FBSyxFQUEwQixNQUFNLFFBQVEsQ0FBQTtBQUN4RixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFJdEMsY0FBYyxjQUFjLENBQUE7QUErQjVCLE1BQU0sQ0FBQyxNQUFNLElBQUksR0FVYixJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLE9BQU8sRUFBRSxFQUFFO0lBQzNCLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFLLG1CQUFtQjtRQUNyRSxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDbkMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUE7SUFDaEIsTUFBTSxtQkFBbUIsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQTtJQUNyRCxJQUFJLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN6QixPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQ2xCLG1CQUFtQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxFQUM3RCxFQUFFLG1CQUFtQixFQUFFLENBQ3hCLENBQUE7SUFDSCxDQUFDO1NBQU0sQ0FBQztRQUNOLE9BQU8sbUJBQW1CLENBQUE7SUFDNUIsQ0FBQztBQUNILENBQUMsQ0FBQyxDQUFBIn0=
|
package/dist/NonEmptySet.d.ts
CHANGED
|
@@ -24,7 +24,7 @@ declare class Wrapper<A> {
|
|
|
24
24
|
map: <A_1>(f: (x: A_1) => A_1) => (set: NonEmptySet<A_1>) => NonEmptySet<A_1>;
|
|
25
25
|
map_: <A_1>(set: NonEmptySet<A_1>, f: (x: A_1) => A_1) => NonEmptySet<A_1>;
|
|
26
26
|
filterMap: (f: (a: A) => Option.Option<A>) => (fa: Set<A>) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
|
|
27
|
-
filterMap_: <A_1>(fa: Set<A_1>, f: (a: A_1) => Option.Option<
|
|
27
|
+
filterMap_: <A_1>(fa: Set<A_1>, f: (a: A_1) => Option.Option<A>) => Option.None<NonEmptySet<A>> | Option.Some<NonEmptySet<A>>;
|
|
28
28
|
};
|
|
29
29
|
}
|
|
30
30
|
export interface NonEmptySetSchemaExtensions<A> extends ReturnType<Wrapper<A>["wrapped"]> {
|
|
@@ -38,15 +38,7 @@ export declare const makeRpcGroup: <M extends Requests, const ModuleName extends
|
|
|
38
38
|
meta: {
|
|
39
39
|
moduleName: ModuleName;
|
|
40
40
|
};
|
|
41
|
-
})[K] extends Req ? K : never]: (M & {
|
|
42
|
-
meta: {
|
|
43
|
-
moduleName: ModuleName;
|
|
44
|
-
};
|
|
45
|
-
})[K] extends Req ? (M & {
|
|
46
|
-
meta: {
|
|
47
|
-
moduleName: ModuleName;
|
|
48
|
-
};
|
|
49
|
-
})[K] : never; } : never>[keyof (M & {
|
|
41
|
+
})[K] extends Req ? K : never]: T[K] extends Req ? T[K] : never; } : never>[keyof (M & {
|
|
50
42
|
meta: {
|
|
51
43
|
moduleName: ModuleName;
|
|
52
44
|
};
|
|
@@ -54,15 +46,7 @@ export declare const makeRpcGroup: <M extends Requests, const ModuleName extends
|
|
|
54
46
|
meta: {
|
|
55
47
|
moduleName: ModuleName;
|
|
56
48
|
};
|
|
57
|
-
})[K] extends Req ? K : never]:
|
|
58
|
-
meta: {
|
|
59
|
-
moduleName: ModuleName;
|
|
60
|
-
};
|
|
61
|
-
})[K] extends Req ? (M & {
|
|
62
|
-
meta: {
|
|
63
|
-
moduleName: ModuleName;
|
|
64
|
-
};
|
|
65
|
-
})[K] : never; } : never)], `${ModuleName}.`>>;
|
|
49
|
+
})[K] extends Req ? K : never]: T_1[K] extends Req ? T_1[K] : never; } : never)], `${ModuleName}.`>>;
|
|
66
50
|
declare const ApiClientFactory_base: (abstract new (service: (requestLevelLayers: Layer.Layer<never, never, never>, options?: ClientForOptions) => <M extends Requests>(models: M) => Effect<import("./clientFor.js").RequestHandlers<never, never, Omit<M, "meta">>>) => Readonly<(requestLevelLayers: Layer.Layer<never, never, never>, options?: ClientForOptions) => <M extends Requests>(models: M) => Effect<import("./clientFor.js").RequestHandlers<never, never, Omit<M, "meta">>>> & Context.TagClassShape<"ApiClientFactory", (requestLevelLayers: Layer.Layer<never, never, never>, options?: ClientForOptions) => <M extends Requests>(models: M) => Effect<import("./clientFor.js").RequestHandlers<never, never, Omit<M, "meta">>>>) & {
|
|
67
51
|
toLayer: <E, R>(eff: Effect.Effect<Omit<ApiClientFactory, keyof Context.TagClassShape<any, any>>, E, R>) => Layer.Layer<ApiClientFactory, E, R>;
|
|
68
52
|
toLayerScoped: <E, R>(eff: Effect.Effect<Omit<ApiClientFactory, keyof Context.TagClassShape<any, any>>, E, R>) => Layer.Layer<ApiClientFactory, E, Exclude<R, import("effect/Scope").Scope>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apiClientFactory.d.ts","sourceRoot":"","sources":["../../src/client/apiClientFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAa,QAAQ,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACxE,OAAO,EAAE,UAAU,EAAqB,MAAM,YAAY,CAAA;AAC1D,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAQ,OAAO,EAAE,KAAK,EAAkB,MAAM,EAAa,CAAC,EAAU,MAAM,oBAAoB,CAAA;AAEhI,OAAO,KAAK,EAAU,gBAAgB,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAExE,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CACzC;AAED,eAAO,MAAM,gBAAgB;;;EAQ3B,CAAA;AAEF,KAAK,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG;IACxB,KAAI,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,CAAA;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAA;IACvB,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAA;IACrB,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC7B,CAAA;AAMD,eAAO,MAAM,eAAe,GAAI,QAAQ,SAAS,qEAwB9C,CAAA;AAEH,eAAO,MAAM,yBAAyB,qGAGrC,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,QAAQ,SAAS,yGAIpD,CAAA;AAEH,KAAK,WAAW,CAAC,CAAC,SAAS,QAAQ,IAAI;KACpC,CAAC,IAAI,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;CAC9E,CAAA;AAoBD,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS,QAAQ,EAAE,UAAU,CAAC,KAGtC,CAAC,CAAC,MAAM,CACxB,CAAA;AAED,eAAO,MAAM,qCAAqC,GAAI,CAAC,SAAS,QAAQ,EAAE,KAAK,CAAC,UAAU,SAAS,MAAM,EACvG,UAAU,CAAC,EACX,YAAY,UAAU,mDAxBnB,CAAC,2FAAD,CAAC,qGAsCL,CAAA;AAED,eAAO,MAAM,YAAY,GACvB,CAAC,SAAS,QAAQ,EAClB,KAAK,CAAC,UAAU,SAAS,MAAM,EAE/B,UAAU,CAAC,GAAG;IAAE,IAAI,EAAE;QAAE,UAAU,EAAE,UAAU,CAAA;KAAE,CAAA;CAAE;UAA5B;QAAE,UAAU,EAAE,UAAU,CAAA;KAAE;wCA5C7C,CAAC;UA4CkB;QAAE,UAAU,EAAE,UAAU,CAAA;KAAE;;UAA1B;QAAE,UAAU,EAAE,UAAU,CAAA;KAAE
|
|
1
|
+
{"version":3,"file":"apiClientFactory.d.ts","sourceRoot":"","sources":["../../src/client/apiClientFactory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { S } from "../internal/lib.js";
|
|
2
|
+
import { type GetEffectError, type RpcContextMap } from "../rpc.js";
|
|
3
|
+
type JoinSchema<T> = T extends ReadonlyArray<S.Schema.All> ? S.Union<T> : typeof S.Never;
|
|
4
|
+
/**
|
|
5
|
+
* Converts struct fields to TypeLiteral schema, or returns existing schema.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* type Fields = { name: S.String; age: S.Number }
|
|
10
|
+
* type Schema = SchemaOrFields<Fields>
|
|
11
|
+
* // Result: S.TypeLiteral<Fields, []>
|
|
12
|
+
*
|
|
13
|
+
* type Existing = S.String
|
|
14
|
+
* type Same = SchemaOrFields<Existing>
|
|
15
|
+
* // Result: S.String
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
type SchemaOrFields<T> = T extends S.Struct.Fields ? S.TypeLiteral<T, []> : T extends S.Schema.Any ? T : never;
|
|
19
|
+
export declare const makeRpcClient: <RequestConfig extends object, RequestContextMap extends Record<string, RpcContextMap.Any>, GeneralErrors extends S.Schema.All = never>(errors: { [K in keyof RequestContextMap]: RequestContextMap[K]["error"]; }, generalErrors?: GeneralErrors) => {
|
|
20
|
+
TaggedRequest: <Self>() => {
|
|
21
|
+
<Tag extends string, Payload extends S.Struct.Fields, C extends {
|
|
22
|
+
success: S.Schema.Any | S.Struct.Fields;
|
|
23
|
+
failure: S.Schema.Any | S.Struct.Fields;
|
|
24
|
+
}>(tag: Tag, fields: Payload, config: RequestConfig & C): S.TaggedRequestClass<Self, Tag, {
|
|
25
|
+
readonly _tag: S.tag<Tag>;
|
|
26
|
+
} & Payload, SchemaOrFields<(typeof config)["success"]>, JoinSchema<[SchemaOrFields<(typeof config)["failure"]> | GetEffectError<RequestContextMap, C> | GeneralErrors]>> & {
|
|
27
|
+
config: Omit<C, "success" | "failure">;
|
|
28
|
+
};
|
|
29
|
+
<Tag extends string, Payload_1 extends S.Struct.Fields, C_1 extends Pick<{
|
|
30
|
+
success: S.Schema.Any | S.Struct.Fields;
|
|
31
|
+
failure: S.Schema.Any | S.Struct.Fields;
|
|
32
|
+
}, "success">>(tag: Tag, fields: Payload_1, config: RequestConfig & C_1): S.TaggedRequestClass<Self, Tag, {
|
|
33
|
+
readonly _tag: S.tag<Tag>;
|
|
34
|
+
} & Payload_1, SchemaOrFields<(typeof config)["success"]>, JoinSchema<[GetEffectError<RequestContextMap, C_1> | GeneralErrors]>> & {
|
|
35
|
+
config: Omit<C_1, "success" | "failure">;
|
|
36
|
+
};
|
|
37
|
+
<Tag extends string, Payload_2 extends S.Struct.Fields, C_2 extends Pick<{
|
|
38
|
+
success: S.Schema.Any | S.Struct.Fields;
|
|
39
|
+
failure: S.Schema.Any | S.Struct.Fields;
|
|
40
|
+
}, "failure">>(tag: Tag, fields: Payload_2, config: RequestConfig & C_2): S.TaggedRequestClass<Self, Tag, {
|
|
41
|
+
readonly _tag: S.tag<Tag>;
|
|
42
|
+
} & Payload_2, typeof S.Void, JoinSchema<[SchemaOrFields<(typeof config)["failure"]> | GetEffectError<RequestContextMap, C_2> | GeneralErrors]>> & {
|
|
43
|
+
config: Omit<C_2, "success" | "failure">;
|
|
44
|
+
};
|
|
45
|
+
<Tag extends string, Payload_3 extends S.Struct.Fields, C_3 extends Record<string, any>>(tag: Tag, fields: Payload_3, config: C_3 & RequestConfig): S.TaggedRequestClass<Self, Tag, {
|
|
46
|
+
readonly _tag: S.tag<Tag>;
|
|
47
|
+
} & Payload_3, typeof S.Void, JoinSchema<[GetEffectError<RequestContextMap, C_3> | GeneralErrors]>> & {
|
|
48
|
+
config: Omit<C_3, "success" | "failure">;
|
|
49
|
+
};
|
|
50
|
+
<Tag extends string, Payload_4 extends S.Struct.Fields>(tag: Tag, fields: Payload_4): S.TaggedRequestClass<Self, Tag, {
|
|
51
|
+
readonly _tag: S.tag<Tag>;
|
|
52
|
+
} & Payload_4, typeof S.Void, GeneralErrors extends never ? typeof S.Never : GeneralErrors> & {
|
|
53
|
+
config: {};
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
export {};
|
|
58
|
+
//# sourceMappingURL=makeClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"makeClient.d.ts","sourceRoot":"","sources":["../../src/client/makeClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { S } from "../internal/lib.js";
|
|
2
|
+
import { AST } from "../Schema.js";
|
|
3
|
+
const merge = (a, b) => a !== undefined && b.length ? S.Union(a, ...b) : a !== undefined ? a : b.length ? S.Union(...b) : S.Never;
|
|
4
|
+
/**
|
|
5
|
+
* Whatever the input, we will only decode or encode to void
|
|
6
|
+
*/
|
|
7
|
+
const ForceVoid = S.transform(S.Any, S.Void, { decode: () => void 0, encode: () => void 0 });
|
|
8
|
+
export const makeRpcClient = (errors, generalErrors) => {
|
|
9
|
+
function TaggedRequest() {
|
|
10
|
+
// TODO: filter errors based on config + take care of inversion
|
|
11
|
+
const errorSchemas = Object.values(errors);
|
|
12
|
+
return ((tag, fields, config) => {
|
|
13
|
+
// S.TaggedRequest is a factory function that creates a TaggedRequest class
|
|
14
|
+
const req = S.TaggedRequest()(tag, {
|
|
15
|
+
payload: fields,
|
|
16
|
+
// ensure both failure and success are schemas
|
|
17
|
+
failure: merge(config?.failure ? S.isSchema(config.failure) ? config.failure : S.Struct(config.failure) : undefined, [...errorSchemas, generalErrors].filter(Boolean)),
|
|
18
|
+
success: config?.success
|
|
19
|
+
? S.isSchema(config.success)
|
|
20
|
+
? AST.isVoidKeyword(config.success.ast) ? ForceVoid : config.success
|
|
21
|
+
: S.Struct(config.success)
|
|
22
|
+
: ForceVoid
|
|
23
|
+
});
|
|
24
|
+
return class extends Object.assign(req, { config }) {
|
|
25
|
+
constructor(payload, disableValidation = true) {
|
|
26
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
|
27
|
+
super(payload, disableValidation);
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
return {
|
|
33
|
+
TaggedRequest
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZUNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGllbnQvbWFrZUNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFFdEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUtsQyxNQUFNLEtBQUssR0FBRyxDQUFDLENBQU0sRUFBRSxDQUFhLEVBQUUsRUFBRSxDQUN0QyxDQUFDLEtBQUssU0FBUyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFBO0FBa0IzRzs7R0FFRztBQUNILE1BQU0sU0FBUyxHQUFtQixDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFBO0FBRTVHLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUszQixNQUF5RSxFQUN6RSxhQUE2QixFQUM3QixFQUFFO0lBT0YsU0FBUyxhQUFhO1FBdUVwQiwrREFBK0Q7UUFDL0QsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUMxQyxPQUFPLENBQUMsQ0FDTixHQUFRLEVBQ1IsTUFBYyxFQUNkLE1BQVUsRUFDVixFQUFFO1lBQ0YsMkVBQTJFO1lBQzNFLE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBQyxhQUFhLEVBQVEsQ0FBQyxHQUFHLEVBQUU7Z0JBQ3ZDLE9BQU8sRUFBRSxNQUFNO2dCQUNmLDhDQUE4QztnQkFDOUMsT0FBTyxFQUFFLEtBQUssQ0FDWixNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFDcEcsQ0FBQyxHQUFHLFlBQVksRUFBRSxhQUFhLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQ2pEO2dCQUNELE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTztvQkFDdEIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQzt3QkFDMUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTzt3QkFDcEUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztvQkFDNUIsQ0FBQyxDQUFDLFNBQVM7YUFDZCxDQUFDLENBQUE7WUFDRixPQUFPLEtBQU0sU0FBUyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFTO2dCQUMxRCxZQUFZLE9BQVksRUFBRSxvQkFBeUIsSUFBSTtvQkFDckQsNkRBQTZEO29CQUM3RCxLQUFLLENBQUMsT0FBTyxFQUFFLGlCQUFpQixDQUFDLENBQUE7Z0JBQ25DLENBQUM7YUFDRixDQUFBO1FBQ0gsQ0FBQyxDQUFRLENBQUE7SUFDWCxDQUFDO0lBRUQsT0FBTztRQUNMLGFBQWE7S0FDZCxDQUFBO0FBQ0gsQ0FBQyxDQUFBIn0=
|
package/dist/client.d.ts
CHANGED
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,cAAc,8BAA8B,CAAA;AAC5C,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,cAAc,8BAA8B,CAAA;AAC5C,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA"}
|
package/dist/client.js
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
export * from "./client/apiClientFactory.js";
|
|
3
3
|
export * from "./client/clientFor.js";
|
|
4
4
|
export * from "./client/errors.js";
|
|
5
|
-
export * from "./client/
|
|
5
|
+
export * from "./client/makeClient.js";
|
|
6
6
|
// codegen:end
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx5REFBeUQ7QUFDekQsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxjQUFjLHVCQUF1QixDQUFBO0FBQ3JDLGNBQWMsb0JBQW9CLENBQUE7QUFDbEMsY0FBYyx3QkFBd0IsQ0FBQTtBQUN0QyxjQUFjIn0=
|
|
@@ -17,7 +17,7 @@ import type * as EQ from "effect/Equivalence";
|
|
|
17
17
|
import type * as EX from "effect/Exit";
|
|
18
18
|
import type * as FR from "effect/FiberRef";
|
|
19
19
|
import type * as HM from "effect/HashMap";
|
|
20
|
-
import type * as LAYER from "effect/Layer";
|
|
20
|
+
import type * as LAYER from "effect-app/Layer";
|
|
21
21
|
import type * as O from "effect/Option";
|
|
22
22
|
import type * as ORD from "effect/Order";
|
|
23
23
|
import type * as REF from "effect/Ref";
|
|
@@ -34,7 +34,7 @@ export declare namespace Effect {
|
|
|
34
34
|
}
|
|
35
35
|
export type Effect<out A, out E = never, out R = never> = EFFECT.Effect<A, E, R>;
|
|
36
36
|
export declare namespace Layer {
|
|
37
|
-
export * from "effect/Layer";
|
|
37
|
+
export * from "effect-app/Layer";
|
|
38
38
|
export type Success<T extends Layer<never, any, any>> = LAYER.Layer.Success<T>;
|
|
39
39
|
export type Error<T extends Layer<never, any, any>> = LAYER.Layer.Error<T>;
|
|
40
40
|
export type Context<T extends Layer<never, any, any>> = LAYER.Layer.Context<T>;
|
package/dist/internal/Prelude.js
CHANGED
|
@@ -11,7 +11,7 @@ export * as Equivalence from "effect/Equivalence";
|
|
|
11
11
|
export * as Exit from "effect/Exit";
|
|
12
12
|
export * as FiberRef from "effect/FiberRef";
|
|
13
13
|
export * as HashMap from "effect/HashMap";
|
|
14
|
-
export * as Layer from "effect/Layer";
|
|
14
|
+
export * as Layer from "effect-app/Layer";
|
|
15
15
|
export * as Option from "effect/Option";
|
|
16
16
|
export * as Order from "effect/Order";
|
|
17
17
|
export * as Ref from "effect/Ref";
|
|
@@ -1,20 +1,21 @@
|
|
|
1
1
|
import { Context } from "effect-app";
|
|
2
|
+
import { Middleware } from "./rpc.js";
|
|
2
3
|
declare const DevMode_base: Context.ReferenceClass<DevMode, "DevMode", boolean>;
|
|
3
4
|
export declare class DevMode extends DevMode_base {
|
|
4
5
|
}
|
|
5
|
-
declare const RequestCacheMiddleware_base:
|
|
6
|
+
declare const RequestCacheMiddleware_base: Middleware.TagClass<RequestCacheMiddleware, "RequestCacheMiddleware", {}, {
|
|
6
7
|
requires: never;
|
|
7
8
|
provides: never;
|
|
8
9
|
}>;
|
|
9
10
|
export declare class RequestCacheMiddleware extends RequestCacheMiddleware_base {
|
|
10
11
|
}
|
|
11
|
-
declare const ConfigureInterruptibilityMiddleware_base:
|
|
12
|
+
declare const ConfigureInterruptibilityMiddleware_base: Middleware.TagClass<ConfigureInterruptibilityMiddleware, "ConfigureInterruptibilityMiddleware", {}, {
|
|
12
13
|
requires: never;
|
|
13
14
|
provides: never;
|
|
14
15
|
}>;
|
|
15
16
|
export declare class ConfigureInterruptibilityMiddleware extends ConfigureInterruptibilityMiddleware_base {
|
|
16
17
|
}
|
|
17
|
-
declare const LoggerMiddleware_base:
|
|
18
|
+
declare const LoggerMiddleware_base: Middleware.TagClass<LoggerMiddleware, "LoggerMiddleware", {}, {
|
|
18
19
|
requires: never;
|
|
19
20
|
provides: never;
|
|
20
21
|
}>;
|
|
@@ -22,4 +23,4 @@ export declare class LoggerMiddleware extends LoggerMiddleware_base {
|
|
|
22
23
|
}
|
|
23
24
|
export declare const DefaultGenericMiddlewares: readonly [typeof RequestCacheMiddleware, typeof ConfigureInterruptibilityMiddleware, typeof LoggerMiddleware];
|
|
24
25
|
export {};
|
|
25
|
-
//# sourceMappingURL=middleware
|
|
26
|
+
//# sourceMappingURL=middleware.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../src/middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;;AAErC,qBAAa,OAAQ,SAAQ,YAAsE;CAAG;;;;;AAEtG,qBAAa,sBAAuB,SAAQ,2BAAkE;CAAG;;;;;AAEjH,qBAAa,mCACX,SAAQ,wCAA4F;CACpG;;;;;AAEF,qBAAa,gBAAiB,SAAQ,qBAAsD;CAAG;AAE/F,eAAO,MAAM,yBAAyB,+GAI5B,CAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
+
import { Context } from "effect-app";
|
|
3
|
+
import { Middleware } from "./rpc.js";
|
|
4
|
+
export class DevMode extends Context.Reference()("DevMode", { defaultValue: () => false }) {
|
|
5
|
+
}
|
|
6
|
+
export class RequestCacheMiddleware extends Middleware.Tag()("RequestCacheMiddleware") {
|
|
7
|
+
}
|
|
8
|
+
export class ConfigureInterruptibilityMiddleware extends Middleware.Tag()("ConfigureInterruptibilityMiddleware") {
|
|
9
|
+
}
|
|
10
|
+
export class LoggerMiddleware extends Middleware.Tag()("LoggerMiddleware") {
|
|
11
|
+
}
|
|
12
|
+
export const DefaultGenericMiddlewares = [
|
|
13
|
+
RequestCacheMiddleware,
|
|
14
|
+
ConfigureInterruptibilityMiddleware,
|
|
15
|
+
LoggerMiddleware
|
|
16
|
+
];
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ3BDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFckMsTUFBTSxPQUFPLE9BQVEsU0FBUSxPQUFPLENBQUMsU0FBUyxFQUFXLENBQUMsU0FBUyxFQUFFLEVBQUUsWUFBWSxFQUFFLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO0NBQUc7QUFFdEcsTUFBTSxPQUFPLHNCQUF1QixTQUFRLFVBQVUsQ0FBQyxHQUFHLEVBQTBCLENBQUMsd0JBQXdCLENBQUM7Q0FBRztBQUVqSCxNQUFNLE9BQU8sbUNBQ1gsU0FBUSxVQUFVLENBQUMsR0FBRyxFQUF1QyxDQUFDLHFDQUFxQyxDQUFDO0NBQ3BHO0FBRUYsTUFBTSxPQUFPLGdCQUFpQixTQUFRLFVBQVUsQ0FBQyxHQUFHLEVBQW9CLENBQUMsa0JBQWtCLENBQUM7Q0FBRztBQUUvRixNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRztJQUN2QyxzQkFBc0I7SUFDdEIsbUNBQW1DO0lBQ25DLGdCQUFnQjtDQUNSLENBQUEifQ==
|