1
- import {
2
- ToApiEndpoints ,
3
- ValibotApiEndpoints ,
4
- ValibotApiSpec ,
5
- ValibotValidators ,
6
- } from "../valibot" ;
7
1
import { Method } from "../core" ;
8
2
import {
9
3
RouterT ,
@@ -12,32 +6,36 @@ import {
12
6
validatorMiddleware ,
13
7
} from "./index" ;
14
8
import { Router } from "express" ;
15
- import { newSSValidator } from "../ss" ;
9
+ import {
10
+ newSSValidator ,
11
+ SSApiEndpoints ,
12
+ SSApiSpec ,
13
+ SSValidators ,
14
+ ToApiEndpoints ,
15
+ } from "../ss" ;
16
16
17
17
/**
18
- * Convert ValibotApiSpec to Express Request Handler type.
18
+ * Convert SSApiSpec to Express Request Handler type.
19
19
*/
20
20
export type ToHandler <
21
- ZodE extends ValibotApiEndpoints ,
21
+ ZodE extends SSApiEndpoints ,
22
22
Path extends keyof ZodE & string ,
23
23
M extends Method ,
24
24
> = ToPureHandler < ToApiEndpoints < ZodE > [ Path ] [ M ] , ToValidators < ZodE [ Path ] [ M ] > > ;
25
25
26
- export type ToValidators < Spec extends ValibotApiSpec | undefined > =
27
- Spec extends ValibotApiSpec
28
- ? ValibotValidators < Spec , string >
29
- : Record < string , never > ;
26
+ export type ToValidators < Spec extends SSApiSpec | undefined > =
27
+ Spec extends SSApiSpec ? SSValidators < Spec , string > : Record < string , never > ;
30
28
31
29
/**
32
- * Convert ValibotApiEndpoints to Express Request Handler type map.
30
+ * Convert SSApiEndpoints to Express Request Handler type map.
33
31
*/
34
32
export type ToHandlers <
35
- ZodE extends ValibotApiEndpoints ,
33
+ ZodE extends SSApiEndpoints ,
36
34
E extends ToApiEndpoints < ZodE > = ToApiEndpoints < ZodE > ,
37
35
V extends ToValidatorsMap < ZodE > = ToValidatorsMap < ZodE > ,
38
36
> = ToPureHandlers < E , V > ;
39
37
40
- export type ToValidatorsMap < ZodE extends ValibotApiEndpoints > = {
38
+ export type ToValidatorsMap < ZodE extends SSApiEndpoints > = {
41
39
[ Path in keyof ZodE & string ] : {
42
40
[ M in Method ] : ToValidators < ZodE [ Path ] [ M ] > ;
43
41
} ;
@@ -61,7 +59,7 @@ export type ToValidatorsMap<ZodE extends ValibotApiEndpoints> = {
61
59
* })
62
60
* ```
63
61
*/
64
- export const typed = < const Endpoints extends ValibotApiEndpoints > (
62
+ export const typed = < const Endpoints extends SSApiEndpoints > (
65
63
pathMap : Endpoints ,
66
64
router : Router ,
67
65
) : RouterT < ToApiEndpoints < Endpoints > , ToValidatorsMap < Endpoints > > => {
0 commit comments