effect-app 4.0.0-beta.167 → 4.0.0-beta.169
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/client/clientFor.d.ts +16 -4
- package/dist/client/clientFor.d.ts.map +1 -1
- package/dist/client/clientFor.js +1 -1
- package/package.json +1 -1
- package/src/client/clientFor.ts +25 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @effect-app/prelude
|
|
2
2
|
|
|
3
|
+
## 4.0.0-beta.169
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 8ae8b53: input mess
|
|
8
|
+
|
|
9
|
+
## 4.0.0-beta.168
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- 178480a: Fix request handler input classification to use request schema fields instead of `make` parameters, preventing defaulted/nullable input fields from being treated as no-input handlers.
|
|
14
|
+
|
|
3
15
|
## 4.0.0-beta.167
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
|
@@ -14,7 +14,6 @@ export type ExtractModuleName<M extends RequestsAny> = {
|
|
|
14
14
|
export type Client<M extends RequestsAny, ModuleName extends string> = RequestHandlers<never, never, M, ModuleName>;
|
|
15
15
|
export type ExtractResponse<T> = T extends S.Codec<any> ? S.Schema.Type<T> : T extends unknown ? void : never;
|
|
16
16
|
export type ExtractEResponse<T> = T extends S.Codec<any> ? S.Codec.Encoded<T> : T extends unknown ? void : never;
|
|
17
|
-
type IsEmpty<T> = keyof T extends never ? true : false;
|
|
18
17
|
export interface ClientForOptions {
|
|
19
18
|
readonly skipQueryKey?: readonly string[];
|
|
20
19
|
}
|
|
@@ -29,7 +28,7 @@ export interface RequestHandler<A, E, R, Request extends Req, Id extends string>
|
|
|
29
28
|
Request: Request;
|
|
30
29
|
}
|
|
31
30
|
export interface RequestHandlerWithInput<I, A, E, R, Request extends Req, Id extends string> {
|
|
32
|
-
handler: (i: I) => Effect.Effect<A, E, R>;
|
|
31
|
+
handler: [Extract<I, void>] extends [never] ? (i: Exclude<I, void> | UntagRequestInput<Exclude<I, void>>) => Effect.Effect<A, E, R> : (i?: Exclude<I, void> | UntagRequestInput<Exclude<I, void>>) => Effect.Effect<A, E, R>;
|
|
33
32
|
id: Id;
|
|
34
33
|
options?: ClientForOptions;
|
|
35
34
|
Request: Request;
|
|
@@ -43,8 +42,21 @@ export type RequestInputFromMake<I extends {
|
|
|
43
42
|
infer A,
|
|
44
43
|
...ReadonlyArray<any>
|
|
45
44
|
] ? A : void;
|
|
45
|
+
type UntagRequestInput<I> = I extends {
|
|
46
|
+
_tag: any;
|
|
47
|
+
} ? Omit<I, "_tag"> : I extends {
|
|
48
|
+
readonly _tag: any;
|
|
49
|
+
} ? Omit<I, "_tag"> : I;
|
|
50
|
+
type RequestFields<I> = I extends {
|
|
51
|
+
readonly fields: infer F extends S.Struct.Fields;
|
|
52
|
+
} ? F : never;
|
|
53
|
+
type RequestInputFromFields<I> = RequestFields<I> extends infer F extends S.Struct.Fields ? keyof F extends never ? never : S.Schema.Type<S.Struct<F>> : never;
|
|
54
|
+
type RequestInput<I extends {
|
|
55
|
+
readonly make: (...args: any[]) => any;
|
|
56
|
+
}> = UntagRequestInput<RequestInputFromMake<I>> | RequestInputFromFields<I> | void;
|
|
57
|
+
type IsVoidOnly<T> = [Exclude<T, void>] extends [never] ? true : false;
|
|
46
58
|
export type RequestHandlers<R, E, M extends RequestsAny, ModuleName extends string> = {
|
|
47
|
-
[K in keyof M as M[K] extends Req ? K : never]:
|
|
59
|
+
[K in keyof M as M[K] extends Req ? K : never]: IsVoidOnly<RequestInput<M[K]>> extends true ? RequestHandler<S.Schema.Type<M[K]["success"]>, S.Schema.Type<M[K]["error"]> | E, R | ReqDecodingServices<M[K]>, M[K], `${ModuleName}.${K & string}`> : RequestHandlerWithInput<RequestInput<M[K]>, S.Schema.Type<M[K]["success"]>, S.Schema.Type<M[K]["error"]> | E, R | ReqDecodingServices<M[K]>, M[K], `${ModuleName}.${K & string}`>;
|
|
48
60
|
};
|
|
49
61
|
export {};
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50Rm9yLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpZW50L2NsaWVudEZvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFFdkMsT0FBTyxLQUFLLEtBQUssTUFBTSxNQUFNLGNBQWMsQ0FBQTtBQUMzQyxPQUFPLEtBQUssS0FBSyxDQUFDLE1BQU0sY0FBYyxDQUFBO0FBQ3RDLE9BQU8sRUFBRSxLQUFLLEdBQUcsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBRWhELHdCQUFnQixpQkFBaUIsQ0FDL0IsSUFBSSxFQUFFLElBQUksRUFDVixJQUFJLEVBQUUsTUFBTSxDQUNWLE1BQU0sRUFDSixNQUFNLEdBQ04sTUFBTSxHQUNOLE9BQU8sR0FDUCxTQUFTLE1BQU0sRUFBRSxHQUNqQixTQUFTLE1BQU0sRUFBRSxHQUNqQixTQUFTLE9BQU8sRUFBRSxHQUNsQixJQUFJLENBQ1AsVUFVRjtBQUVELHdCQUFnQixnQkFBZ0IsQ0FDOUIsSUFBSSxFQUFFLElBQUksRUFDVixJQUFJLEVBQUUsTUFBTSxDQUNWLE1BQU0sRUFDSixNQUFNLEdBQ04sTUFBTSxHQUNOLE9BQU8sR0FDUCxTQUFTLE1BQU0sRUFBRSxHQUNqQixTQUFTLE1BQU0sRUFBRSxHQUNqQixTQUFTLE9BQU8sRUFBRSxHQUNsQixJQUFJLENBQ1AsVUFHRjtBQUVELE1BQU0sTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFBO0FBQ2xDLE1BQU0sTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQTtBQUU3QyxNQUFNLE1BQU0saUJBQWlCLENBQUMsQ0FBQyxTQUFTLFdBQVcsSUFDakQ7S0FBRyxDQUFDLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO1FBQUUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxTQUFTLE1BQU0sQ0FB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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientFor.d.ts","sourceRoot":"","sources":["../../src/client/clientFor.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAA;AAC3C,OAAO,KAAK,KAAK,CAAC,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,uBAAuB,CAAA;AAEhD,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,MAAM,CACV,MAAM,EACJ,MAAM,GACN,MAAM,GACN,OAAO,GACP,SAAS,MAAM,EAAE,GACjB,SAAS,MAAM,EAAE,GACjB,SAAS,OAAO,EAAE,GAClB,IAAI,CACP,UAUF;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,MAAM,CACV,MAAM,EACJ,MAAM,GACN,MAAM,GACN,OAAO,GACP,SAAS,MAAM,EAAE,GACjB,SAAS,MAAM,EAAE,GACjB,SAAS,OAAO,EAAE,GAClB,IAAI,CACP,UAGF;AAED,MAAM,MAAM,QAAQ,GAAG,WAAW,CAAA;AAClC,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAE7C,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,WAAW,IACjD;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;QAAE,UAAU,EAAE,MAAM,CAAC,SAAS,MAAM,CAAA;KAAE,GAAG,CAAC,GAAG,KAAK;CAAE,CAAC,MAAM,CAAC,CAAC,SAC1F,MAAM,CAAC,SAAS,MAAM,GAAG,CAAC,GACxB,MAAM,CAAA;AAEZ,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,WAAW,EAAE,UAAU,SAAS,MAAM,IAAI,eAAe,CACpF,KAAK,EACL,KAAK,EACL,CAAC,EACD,UAAU,CACX,CAAA;AAED,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GACtE,CAAC,SAAS,OAAO,GAAG,IAAI,GACxB,KAAK,CAAA;AAET,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GACzE,CAAC,SAAS,OAAO,GAAG,IAAI,GACxB,KAAK,CAAA;AAET,
|
|
1
|
+
{"version":3,"file":"clientFor.d.ts","sourceRoot":"","sources":["../../src/client/clientFor.ts"],"names":[],"mappings":"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"}
|
package/dist/client/clientFor.js
CHANGED
|
@@ -21,4 +21,4 @@ export const makeQueryKey = ({ id, options }) => id
|
|
|
21
21
|
.map((segment) => "$" + segment)
|
|
22
22
|
.join(".")
|
|
23
23
|
.split(".");
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50Rm9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9jbGllbnRGb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsMERBQTBEO0FBQzFELHVEQUF1RDtBQUV2RCxPQUFPLEtBQUssTUFBTSxNQUFNLGVBQWUsQ0FBQTtBQUV2QyxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFLN0IsTUFBTSxVQUFVLGlCQUFpQixDQUMvQixJQUFVLEVBQ1YsSUFTQztJQUVELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ3JFLE1BQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQSxDQUFDLHFIQUFxSDtJQUNySSxPQUFPLENBQ0wsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxDQUFDO1VBQy9ELENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNO1lBQ3RCLENBQUMsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDdkIsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUNSLENBQUE7QUFDSCxDQUFDO0FBRUQsTUFBTSxVQUFVLGdCQUFnQixDQUM5QixJQUFVLEVBQ1YsSUFTQztJQUVELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUE7QUFDMUUsQ0FBQztBQTZCRCxnQ0FBZ0M7QUFDaEMsMkNBQTJDO0FBQzNDLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBOEMsRUFBRSxFQUFFLENBQzFGLEVBQUU7S0FDQyxLQUFLLENBQUMsR0FBRyxDQUFDO0tBQ1YsTUFBTSxDQUFDLENBQUMsT0FBZSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0tBQ2pGLEdBQUcsQ0FBQyxDQUFDLE9BQWUsRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLE9BQU8sQ0FBQztLQUN2QyxJQUFJLENBQUMsR0FBRyxDQUFDO0tBQ1QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFBIn0=
|
package/package.json
CHANGED
package/src/client/clientFor.ts
CHANGED
|
@@ -70,9 +70,6 @@ export type ExtractEResponse<T> = T extends S.Codec<any> ? S.Codec.Encoded<T>
|
|
|
70
70
|
: T extends unknown ? void
|
|
71
71
|
: never
|
|
72
72
|
|
|
73
|
-
type IsEmpty<T> = keyof T extends never ? true
|
|
74
|
-
: false
|
|
75
|
-
|
|
76
73
|
export interface ClientForOptions {
|
|
77
74
|
readonly skipQueryKey?: readonly string[]
|
|
78
75
|
}
|
|
@@ -95,7 +92,10 @@ export interface RequestHandler<A, E, R, Request extends Req, Id extends string>
|
|
|
95
92
|
}
|
|
96
93
|
|
|
97
94
|
export interface RequestHandlerWithInput<I, A, E, R, Request extends Req, Id extends string> {
|
|
98
|
-
|
|
95
|
+
// Some generated make signatures include _tag in input; accept both tagged and untagged forms.
|
|
96
|
+
handler: [Extract<I, void>] extends [never]
|
|
97
|
+
? (i: Exclude<I, void> | UntagRequestInput<Exclude<I, void>>) => Effect.Effect<A, E, R>
|
|
98
|
+
: (i?: Exclude<I, void> | UntagRequestInput<Exclude<I, void>>) => Effect.Effect<A, E, R>
|
|
99
99
|
id: Id
|
|
100
100
|
options?: ClientForOptions
|
|
101
101
|
Request: Request
|
|
@@ -107,8 +107,27 @@ type ReqDecodingServices<M> = M extends { readonly "~decodingServices": infer DS
|
|
|
107
107
|
export type RequestInputFromMake<I extends { readonly make: (...args: any[]) => any }> = Parameters<I["make"]> extends
|
|
108
108
|
[infer A, ...ReadonlyArray<any>] ? A : void
|
|
109
109
|
|
|
110
|
+
type UntagRequestInput<I> = I extends { _tag: any } ? Omit<I, "_tag">
|
|
111
|
+
: I extends { readonly _tag: any } ? Omit<I, "_tag">
|
|
112
|
+
: I
|
|
113
|
+
|
|
114
|
+
type RequestFields<I> = I extends { readonly fields: infer F extends S.Struct.Fields } ? F : never
|
|
115
|
+
|
|
116
|
+
type RequestInputFromFields<I> = RequestFields<I> extends infer F extends S.Struct.Fields
|
|
117
|
+
? keyof F extends never ? never
|
|
118
|
+
: S.Schema.Type<S.Struct<F>>
|
|
119
|
+
: never
|
|
120
|
+
|
|
121
|
+
type RequestInput<I extends { readonly make: (...args: any[]) => any }> =
|
|
122
|
+
| UntagRequestInput<RequestInputFromMake<I>>
|
|
123
|
+
| RequestInputFromFields<I>
|
|
124
|
+
| void
|
|
125
|
+
|
|
126
|
+
type IsVoidOnly<T> = [Exclude<T, void>] extends [never] ? true
|
|
127
|
+
: false
|
|
128
|
+
|
|
110
129
|
export type RequestHandlers<R, E, M extends RequestsAny, ModuleName extends string> = {
|
|
111
|
-
[K in keyof M as M[K] extends Req ? K : never]:
|
|
130
|
+
[K in keyof M as M[K] extends Req ? K : never]: IsVoidOnly<RequestInput<M[K]>> extends true ? RequestHandler<
|
|
112
131
|
S.Schema.Type<M[K]["success"]>,
|
|
113
132
|
S.Schema.Type<M[K]["error"]> | E,
|
|
114
133
|
R | ReqDecodingServices<M[K]>,
|
|
@@ -116,7 +135,7 @@ export type RequestHandlers<R, E, M extends RequestsAny, ModuleName extends stri
|
|
|
116
135
|
`${ModuleName}.${K & string}`
|
|
117
136
|
>
|
|
118
137
|
: RequestHandlerWithInput<
|
|
119
|
-
|
|
138
|
+
RequestInput<M[K]>,
|
|
120
139
|
S.Schema.Type<M[K]["success"]>,
|
|
121
140
|
S.Schema.Type<M[K]["error"]> | E,
|
|
122
141
|
R | ReqDecodingServices<M[K]>,
|