spiceflow 1.0.7 → 1.1.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/README.md +1 -1
- package/dist/client/index.d.ts +1 -1
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js.map +1 -1
- package/dist/client/types.d.ts +1 -2
- package/dist/client/types.d.ts.map +1 -1
- package/dist/client/ws.d.ts +1 -1
- package/dist/client/ws.d.ts.map +1 -1
- package/dist/client.test.js +1 -18
- package/dist/client.test.js.map +1 -1
- package/dist/{elysia-fork/context.d.ts → context.d.ts} +8 -7
- package/dist/context.d.ts.map +1 -0
- package/dist/{elysia-fork/context.js.map → context.js.map} +1 -1
- package/dist/error.d.ts.map +1 -0
- package/dist/error.js.map +1 -0
- package/dist/index.d.ts +1 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/middleware.test.d.ts +2 -0
- package/dist/middleware.test.d.ts.map +1 -0
- package/dist/middleware.test.js +99 -0
- package/dist/middleware.test.js.map +1 -0
- package/dist/openapi.d.ts +23 -3
- package/dist/openapi.d.ts.map +1 -1
- package/dist/openapi.js +2 -2
- package/dist/openapi.js.map +1 -1
- package/dist/openapi.test.js +66 -1
- package/dist/openapi.test.js.map +1 -1
- package/dist/spiceflow.d.ts +44 -125
- package/dist/spiceflow.d.ts.map +1 -1
- package/dist/spiceflow.js +129 -166
- package/dist/spiceflow.js.map +1 -1
- package/dist/spiceflow.test.js +54 -16
- package/dist/spiceflow.test.js.map +1 -1
- package/dist/types.d.ts +406 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -1
- package/dist/types.js.map +1 -1
- package/dist/utils.d.ts +72 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +69 -0
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
- package/src/client/index.ts +1 -3
- package/src/client/types.ts +6 -13
- package/src/client/ws.ts +1 -1
- package/src/client.test.ts +1 -19
- package/src/context.ts +128 -0
- package/src/index.ts +1 -2
- package/src/middleware.test.ts +107 -0
- package/src/openapi.test.ts +71 -1
- package/src/openapi.ts +1 -1
- package/src/spiceflow.test.ts +74 -16
- package/src/spiceflow.ts +213 -386
- package/src/types.test.ts +1 -1
- package/src/types.ts +926 -0
- package/src/utils.ts +84 -0
- package/dist/elysia-fork/context.d.ts.map +0 -1
- package/dist/elysia-fork/error.d.ts.map +0 -1
- package/dist/elysia-fork/error.js.map +0 -1
- package/dist/elysia-fork/types.d.ts +0 -562
- package/dist/elysia-fork/types.d.ts.map +0 -1
- package/dist/elysia-fork/types.js +0 -2
- package/dist/elysia-fork/types.js.map +0 -1
- package/dist/elysia-fork/utils.d.ts +0 -134
- package/dist/elysia-fork/utils.d.ts.map +0 -1
- package/dist/elysia-fork/utils.js +0 -70
- package/dist/elysia-fork/utils.js.map +0 -1
- package/src/elysia-fork/context.ts +0 -166
- package/src/elysia-fork/types.ts +0 -1281
- package/src/elysia-fork/utils.ts +0 -85
- /package/dist/{elysia-fork/context.js → context.js} +0 -0
- /package/dist/{elysia-fork/error.d.ts → error.d.ts} +0 -0
- /package/dist/{elysia-fork/error.js → error.js} +0 -0
- /package/src/{elysia-fork/error.ts → error.ts} +0 -0
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import { ELYSIA_RESPONSE, } from './error.js';
|
|
2
2
|
//# sourceMappingURL=types.js.map
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAkBA,OAAO,EACN,eAAe,GAKf,MAAM,YAAY,CAAA"}
|
package/dist/utils.d.ts
CHANGED
|
@@ -2,4 +2,76 @@ export declare const deepFreeze: (value: any) => any;
|
|
|
2
2
|
export declare const req: (path: string, options?: RequestInit) => Request;
|
|
3
3
|
export declare function isAsyncIterable(obj: any): obj is AsyncGenerator<any>;
|
|
4
4
|
export declare function sleep(ms: number): Promise<unknown>;
|
|
5
|
+
export declare const StatusMap: {
|
|
6
|
+
readonly Continue: 100;
|
|
7
|
+
readonly 'Switching Protocols': 101;
|
|
8
|
+
readonly Processing: 102;
|
|
9
|
+
readonly 'Early Hints': 103;
|
|
10
|
+
readonly OK: 200;
|
|
11
|
+
readonly Created: 201;
|
|
12
|
+
readonly Accepted: 202;
|
|
13
|
+
readonly 'Non-Authoritative Information': 203;
|
|
14
|
+
readonly 'No Content': 204;
|
|
15
|
+
readonly 'Reset Content': 205;
|
|
16
|
+
readonly 'Partial Content': 206;
|
|
17
|
+
readonly 'Multi-Status': 207;
|
|
18
|
+
readonly 'Already Reported': 208;
|
|
19
|
+
readonly 'Multiple Choices': 300;
|
|
20
|
+
readonly 'Moved Permanently': 301;
|
|
21
|
+
readonly Found: 302;
|
|
22
|
+
readonly 'See Other': 303;
|
|
23
|
+
readonly 'Not Modified': 304;
|
|
24
|
+
readonly 'Temporary Redirect': 307;
|
|
25
|
+
readonly 'Permanent Redirect': 308;
|
|
26
|
+
readonly 'Bad Request': 400;
|
|
27
|
+
readonly Unauthorized: 401;
|
|
28
|
+
readonly 'Payment Required': 402;
|
|
29
|
+
readonly Forbidden: 403;
|
|
30
|
+
readonly 'Not Found': 404;
|
|
31
|
+
readonly 'Method Not Allowed': 405;
|
|
32
|
+
readonly 'Not Acceptable': 406;
|
|
33
|
+
readonly 'Proxy Authentication Required': 407;
|
|
34
|
+
readonly 'Request Timeout': 408;
|
|
35
|
+
readonly Conflict: 409;
|
|
36
|
+
readonly Gone: 410;
|
|
37
|
+
readonly 'Length Required': 411;
|
|
38
|
+
readonly 'Precondition Failed': 412;
|
|
39
|
+
readonly 'Payload Too Large': 413;
|
|
40
|
+
readonly 'URI Too Long': 414;
|
|
41
|
+
readonly 'Unsupported Media Type': 415;
|
|
42
|
+
readonly 'Range Not Satisfiable': 416;
|
|
43
|
+
readonly 'Expectation Failed': 417;
|
|
44
|
+
readonly "I'm a teapot": 418;
|
|
45
|
+
readonly 'Misdirected Request': 421;
|
|
46
|
+
readonly 'Unprocessable Content': 422;
|
|
47
|
+
readonly Locked: 423;
|
|
48
|
+
readonly 'Failed Dependency': 424;
|
|
49
|
+
readonly 'Too Early': 425;
|
|
50
|
+
readonly 'Upgrade Required': 426;
|
|
51
|
+
readonly 'Precondition Required': 428;
|
|
52
|
+
readonly 'Too Many Requests': 429;
|
|
53
|
+
readonly 'Request Header Fields Too Large': 431;
|
|
54
|
+
readonly 'Unavailable For Legal Reasons': 451;
|
|
55
|
+
readonly 'Internal Server Error': 500;
|
|
56
|
+
readonly 'Not Implemented': 501;
|
|
57
|
+
readonly 'Bad Gateway': 502;
|
|
58
|
+
readonly 'Service Unavailable': 503;
|
|
59
|
+
readonly 'Gateway Timeout': 504;
|
|
60
|
+
readonly 'HTTP Version Not Supported': 505;
|
|
61
|
+
readonly 'Variant Also Negotiates': 506;
|
|
62
|
+
readonly 'Insufficient Storage': 507;
|
|
63
|
+
readonly 'Loop Detected': 508;
|
|
64
|
+
readonly 'Not Extended': 510;
|
|
65
|
+
readonly 'Network Authentication Required': 511;
|
|
66
|
+
};
|
|
67
|
+
export declare const InvertedStatusMap: { [K in keyof StatusMap as StatusMap[K]]: K; };
|
|
68
|
+
export type StatusMap = typeof StatusMap;
|
|
69
|
+
export type InvertedStatusMap = typeof InvertedStatusMap;
|
|
70
|
+
/**
|
|
71
|
+
*
|
|
72
|
+
* @param url URL to redirect to
|
|
73
|
+
* @param HTTP status code to send,
|
|
74
|
+
*/
|
|
75
|
+
export declare const redirect: (url: string, status?: 301 | 302 | 303 | 307 | 308) => Response;
|
|
76
|
+
export type redirect = typeof redirect;
|
|
5
77
|
//# sourceMappingURL=utils.d.ts.map
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,UAAU,UAAW,GAAG,QAOpC,CAAA;AAED,eAAO,MAAM,GAAG,SAAU,MAAM,YAAY,WAAW,YACP,CAAA;AAEhD,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC,CAQpE;AAED,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,oBAE/B"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,UAAU,UAAW,GAAG,QAOpC,CAAA;AAED,eAAO,MAAM,GAAG,SAAU,MAAM,YAAY,WAAW,YACP,CAAA;AAEhD,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC,CAQpE;AAED,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,oBAE/B;AAED,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6DZ,CAAA;AAEV,eAAO,MAAM,iBAAiB,EAEzB,GACH,CAAoB,IAAf,MAAM,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GACzC,CAAA;AAED,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAA;AACxC,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAA;AAExD;;;;GAIG;AACH,eAAO,MAAM,QAAQ,QACf,MAAM,WACH,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,aACD,CAAA;AAEnC,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAA"}
|
package/dist/utils.js
CHANGED
|
@@ -18,4 +18,73 @@ export function isAsyncIterable(obj) {
|
|
|
18
18
|
export function sleep(ms) {
|
|
19
19
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
20
20
|
}
|
|
21
|
+
export const StatusMap = {
|
|
22
|
+
Continue: 100,
|
|
23
|
+
'Switching Protocols': 101,
|
|
24
|
+
Processing: 102,
|
|
25
|
+
'Early Hints': 103,
|
|
26
|
+
OK: 200,
|
|
27
|
+
Created: 201,
|
|
28
|
+
Accepted: 202,
|
|
29
|
+
'Non-Authoritative Information': 203,
|
|
30
|
+
'No Content': 204,
|
|
31
|
+
'Reset Content': 205,
|
|
32
|
+
'Partial Content': 206,
|
|
33
|
+
'Multi-Status': 207,
|
|
34
|
+
'Already Reported': 208,
|
|
35
|
+
'Multiple Choices': 300,
|
|
36
|
+
'Moved Permanently': 301,
|
|
37
|
+
Found: 302,
|
|
38
|
+
'See Other': 303,
|
|
39
|
+
'Not Modified': 304,
|
|
40
|
+
'Temporary Redirect': 307,
|
|
41
|
+
'Permanent Redirect': 308,
|
|
42
|
+
'Bad Request': 400,
|
|
43
|
+
Unauthorized: 401,
|
|
44
|
+
'Payment Required': 402,
|
|
45
|
+
Forbidden: 403,
|
|
46
|
+
'Not Found': 404,
|
|
47
|
+
'Method Not Allowed': 405,
|
|
48
|
+
'Not Acceptable': 406,
|
|
49
|
+
'Proxy Authentication Required': 407,
|
|
50
|
+
'Request Timeout': 408,
|
|
51
|
+
Conflict: 409,
|
|
52
|
+
Gone: 410,
|
|
53
|
+
'Length Required': 411,
|
|
54
|
+
'Precondition Failed': 412,
|
|
55
|
+
'Payload Too Large': 413,
|
|
56
|
+
'URI Too Long': 414,
|
|
57
|
+
'Unsupported Media Type': 415,
|
|
58
|
+
'Range Not Satisfiable': 416,
|
|
59
|
+
'Expectation Failed': 417,
|
|
60
|
+
"I'm a teapot": 418,
|
|
61
|
+
'Misdirected Request': 421,
|
|
62
|
+
'Unprocessable Content': 422,
|
|
63
|
+
Locked: 423,
|
|
64
|
+
'Failed Dependency': 424,
|
|
65
|
+
'Too Early': 425,
|
|
66
|
+
'Upgrade Required': 426,
|
|
67
|
+
'Precondition Required': 428,
|
|
68
|
+
'Too Many Requests': 429,
|
|
69
|
+
'Request Header Fields Too Large': 431,
|
|
70
|
+
'Unavailable For Legal Reasons': 451,
|
|
71
|
+
'Internal Server Error': 500,
|
|
72
|
+
'Not Implemented': 501,
|
|
73
|
+
'Bad Gateway': 502,
|
|
74
|
+
'Service Unavailable': 503,
|
|
75
|
+
'Gateway Timeout': 504,
|
|
76
|
+
'HTTP Version Not Supported': 505,
|
|
77
|
+
'Variant Also Negotiates': 506,
|
|
78
|
+
'Insufficient Storage': 507,
|
|
79
|
+
'Loop Detected': 508,
|
|
80
|
+
'Not Extended': 510,
|
|
81
|
+
'Network Authentication Required': 511,
|
|
82
|
+
};
|
|
83
|
+
export const InvertedStatusMap = Object.fromEntries(Object.entries(StatusMap).map(([k, v]) => [v, k]));
|
|
84
|
+
/**
|
|
85
|
+
*
|
|
86
|
+
* @param url URL to redirect to
|
|
87
|
+
* @param HTTP status code to send,
|
|
88
|
+
*/
|
|
89
|
+
export const redirect = (url, status = 302) => Response.redirect(url, status);
|
|
21
90
|
//# sourceMappingURL=utils.js.map
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAU,EAAE,EAAE;IACxC,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1C,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;YAClD,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;QACvB,CAAC;IACF,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAC5B,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,OAAqB,EAAE,EAAE,CAC1D,IAAI,OAAO,CAAC,mBAAmB,IAAI,EAAE,EAAE,OAAO,CAAC,CAAA;AAEhD,MAAM,UAAU,eAAe,CAAC,GAAQ;IACvC,OAAO,CACN,OAAO,GAAG,KAAK,QAAQ;QACvB,OAAO,GAAG,CAAC,IAAI,KAAK,UAAU;QAC9B,OAAO,GAAG,CAAC,MAAM,KAAK,UAAU;QAChC,OAAO,GAAG,CAAC,KAAK,KAAK,UAAU;QAC/B,OAAO,GAAG,CAAC,MAAM,KAAK,UAAU,CAChC,CAAA;AACF,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,EAAU;IAC/B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;AACzD,CAAC"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/client/index.ts
CHANGED
|
@@ -24,8 +24,6 @@ const method = [
|
|
|
24
24
|
'subscribe',
|
|
25
25
|
] as const
|
|
26
26
|
|
|
27
|
-
|
|
28
|
-
|
|
29
27
|
const isServer = typeof FileList === 'undefined'
|
|
30
28
|
|
|
31
29
|
const isFile = (v: any) => {
|
|
@@ -510,7 +508,7 @@ const createProxy = (
|
|
|
510
508
|
}) as any
|
|
511
509
|
|
|
512
510
|
export const createSpiceflowClient = <
|
|
513
|
-
const App extends Spiceflow<any, any, any, any, any, any
|
|
511
|
+
const App extends Spiceflow<any, any, any, any, any, any>,
|
|
514
512
|
>(
|
|
515
513
|
domain: string | App,
|
|
516
514
|
config: SpiceflowClient.Config = {},
|
package/src/client/types.ts
CHANGED
|
@@ -13,12 +13,6 @@ export type IsNever<T> = [T] extends [never] ? true : false
|
|
|
13
13
|
|
|
14
14
|
type Files = File | FileList
|
|
15
15
|
|
|
16
|
-
// type Replace<RecordType, TargetType, GenericType> = {
|
|
17
|
-
// [K in keyof RecordType]: RecordType[K] extends TargetType
|
|
18
|
-
// ? GenericType
|
|
19
|
-
// : RecordType[K]
|
|
20
|
-
// }
|
|
21
|
-
|
|
22
16
|
type ReplaceBlobWithFiles<in out RecordType extends Record<string, unknown>> = {
|
|
23
17
|
[K in keyof RecordType]: RecordType[K] extends Blob | Blob[]
|
|
24
18
|
? Files
|
|
@@ -61,13 +55,12 @@ export namespace SpiceflowClient {
|
|
|
61
55
|
fetch?: RequestInit
|
|
62
56
|
}
|
|
63
57
|
|
|
64
|
-
export type Create<
|
|
65
|
-
App extends
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
: 'Please install Spiceflow before using Eden'
|
|
58
|
+
export type Create<App extends Spiceflow<any, any, any, any, any, any>> =
|
|
59
|
+
App extends {
|
|
60
|
+
_routes: infer Schema extends Record<string, any>
|
|
61
|
+
}
|
|
62
|
+
? Prettify<Sign<Schema>>
|
|
63
|
+
: 'Please install Spiceflow before using Eden'
|
|
71
64
|
|
|
72
65
|
export type Sign<in out Route extends Record<string, any>> = {
|
|
73
66
|
[K in keyof Route as K extends `:${string}`
|
package/src/client/ws.ts
CHANGED
package/src/client.test.ts
CHANGED
|
@@ -3,24 +3,6 @@ import { Spiceflow, t } from './spiceflow.js'
|
|
|
3
3
|
|
|
4
4
|
import { describe, expect, it } from 'vitest'
|
|
5
5
|
|
|
6
|
-
const randomObject = {
|
|
7
|
-
a: 'a',
|
|
8
|
-
b: 2,
|
|
9
|
-
c: true,
|
|
10
|
-
d: false,
|
|
11
|
-
e: null,
|
|
12
|
-
f: new Date(0),
|
|
13
|
-
}
|
|
14
|
-
const randomArray = [
|
|
15
|
-
'a',
|
|
16
|
-
2,
|
|
17
|
-
true,
|
|
18
|
-
false,
|
|
19
|
-
null,
|
|
20
|
-
new Date(0),
|
|
21
|
-
{ a: 'a', b: 2, c: true, d: false, e: null, f: new Date(0) },
|
|
22
|
-
]
|
|
23
|
-
|
|
24
6
|
const app = new Spiceflow()
|
|
25
7
|
.get('/', () => 'a')
|
|
26
8
|
.post('/', () => 'a')
|
|
@@ -217,7 +199,7 @@ describe('client', () => {
|
|
|
217
199
|
expect(data).toEqual('a')
|
|
218
200
|
})
|
|
219
201
|
it('stream return async', async () => {
|
|
220
|
-
const { data } = await client['stream-return-async'].get()
|
|
202
|
+
const { data } = await client['stream-return-async'].get({})
|
|
221
203
|
// console.log(data)
|
|
222
204
|
expect(data).toEqual('a')
|
|
223
205
|
})
|
package/src/context.ts
ADDED
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
StatusMap,
|
|
3
|
+
InvertedStatusMap,
|
|
4
|
+
redirect as Redirect,
|
|
5
|
+
} from './utils.js'
|
|
6
|
+
|
|
7
|
+
import type {
|
|
8
|
+
RouteSchema,
|
|
9
|
+
Prettify,
|
|
10
|
+
ResolvePath,
|
|
11
|
+
SingletonBase,
|
|
12
|
+
HTTPHeaders,
|
|
13
|
+
} from './types.js'
|
|
14
|
+
|
|
15
|
+
import { TypedRequest } from './spiceflow.js'
|
|
16
|
+
|
|
17
|
+
export type ErrorContext<
|
|
18
|
+
in out Route extends RouteSchema = {},
|
|
19
|
+
in out Singleton extends SingletonBase = {
|
|
20
|
+
decorator: {}
|
|
21
|
+
store: {}
|
|
22
|
+
derive: {}
|
|
23
|
+
resolve: {}
|
|
24
|
+
},
|
|
25
|
+
Path extends string = '',
|
|
26
|
+
> = Prettify<{
|
|
27
|
+
// body: Route['body']
|
|
28
|
+
query: undefined extends Route['query']
|
|
29
|
+
? Record<string, string | undefined>
|
|
30
|
+
: Route['query']
|
|
31
|
+
params: undefined extends Route['params']
|
|
32
|
+
? Path extends `${string}/${':' | '*'}${string}`
|
|
33
|
+
? ResolvePath<Path>
|
|
34
|
+
: { [key in string]: string }
|
|
35
|
+
: Route['params']
|
|
36
|
+
|
|
37
|
+
// server: Server | null
|
|
38
|
+
redirect: Redirect
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Path extracted from incoming URL
|
|
42
|
+
*
|
|
43
|
+
* Represent a value extracted from URL
|
|
44
|
+
*
|
|
45
|
+
* @example '/id/9'
|
|
46
|
+
*/
|
|
47
|
+
path: string
|
|
48
|
+
/**
|
|
49
|
+
* Path as registered to router
|
|
50
|
+
*
|
|
51
|
+
* Represent a path registered to a router, not a URL
|
|
52
|
+
*
|
|
53
|
+
* @example '/id/:id'
|
|
54
|
+
*/
|
|
55
|
+
// route: string
|
|
56
|
+
request: TypedRequest<Route['body']>
|
|
57
|
+
store: Singleton['store']
|
|
58
|
+
// response: Route['response']
|
|
59
|
+
}>
|
|
60
|
+
|
|
61
|
+
export type Context<
|
|
62
|
+
in out Route extends RouteSchema = {},
|
|
63
|
+
in out Singleton extends SingletonBase = {
|
|
64
|
+
decorator: {}
|
|
65
|
+
store: {}
|
|
66
|
+
derive: {}
|
|
67
|
+
resolve: {}
|
|
68
|
+
},
|
|
69
|
+
Path extends string = '',
|
|
70
|
+
> = Prettify<{
|
|
71
|
+
// body: Route['body']
|
|
72
|
+
query: undefined extends Route['query']
|
|
73
|
+
? Record<string, string | undefined>
|
|
74
|
+
: Route['query']
|
|
75
|
+
params: undefined extends Route['params']
|
|
76
|
+
? Path extends `${string}/${':' | '*'}${string}`
|
|
77
|
+
? ResolvePath<Path>
|
|
78
|
+
: never
|
|
79
|
+
: Route['params']
|
|
80
|
+
|
|
81
|
+
// server: Server | null
|
|
82
|
+
redirect: Redirect
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Path extracted from incoming URL
|
|
86
|
+
*
|
|
87
|
+
* Represent a value extracted from URL
|
|
88
|
+
*
|
|
89
|
+
* @example '/id/9'
|
|
90
|
+
*/
|
|
91
|
+
path: string
|
|
92
|
+
/**
|
|
93
|
+
* Path as registered to router
|
|
94
|
+
*
|
|
95
|
+
* Represent a path registered to a router, not a URL
|
|
96
|
+
*
|
|
97
|
+
* @example '/id/:id'
|
|
98
|
+
*/
|
|
99
|
+
// route: string
|
|
100
|
+
request: TypedRequest<Route['body']>
|
|
101
|
+
store: Singleton['store']
|
|
102
|
+
response?: Route['response']
|
|
103
|
+
}>
|
|
104
|
+
|
|
105
|
+
// Use to mimic request before mapping route
|
|
106
|
+
export type MiddlewareContext<
|
|
107
|
+
in out Singleton extends SingletonBase = {
|
|
108
|
+
decorator: {}
|
|
109
|
+
store: {}
|
|
110
|
+
},
|
|
111
|
+
> = Prettify<{
|
|
112
|
+
store: Singleton['store']
|
|
113
|
+
request: Request
|
|
114
|
+
path: string
|
|
115
|
+
query?: Record<string, string | undefined>
|
|
116
|
+
params?: Record<string, string | undefined>
|
|
117
|
+
|
|
118
|
+
redirect: Redirect
|
|
119
|
+
// server: Server | null
|
|
120
|
+
|
|
121
|
+
// set: {
|
|
122
|
+
// headers: HTTPHeaders
|
|
123
|
+
// status?: number
|
|
124
|
+
// redirect?: string
|
|
125
|
+
// }
|
|
126
|
+
|
|
127
|
+
// error: typeof error
|
|
128
|
+
}>
|
package/src/index.ts
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
export
|
|
2
|
-
export { Static } from '@sinclair/typebox'
|
|
1
|
+
export { Spiceflow, AnySpiceflow } from './spiceflow.js'
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { test, describe, expect } from 'vitest'
|
|
2
|
+
import { Type } from '@sinclair/typebox'
|
|
3
|
+
import { bfs, Spiceflow } from './spiceflow.js'
|
|
4
|
+
import { z } from 'zod'
|
|
5
|
+
|
|
6
|
+
test('middleware with next changes the response', async () => {
|
|
7
|
+
const res = await new Spiceflow()
|
|
8
|
+
.use(async ({ request }, next) => {
|
|
9
|
+
expect(request.method).toBe('GET')
|
|
10
|
+
const res = await next()
|
|
11
|
+
expect(res).toBeInstanceOf(Response)
|
|
12
|
+
if (res) {
|
|
13
|
+
res.headers.set('x-test', 'ok')
|
|
14
|
+
}
|
|
15
|
+
return res
|
|
16
|
+
})
|
|
17
|
+
.get('/ids/:id', () => 'hi')
|
|
18
|
+
.post('/ids/:id', ({ params: { id } }) => id, {
|
|
19
|
+
params: z.object({ id: z.string() }),
|
|
20
|
+
})
|
|
21
|
+
.handle(new Request('http://localhost/ids/xxx', { method: 'GET' }))
|
|
22
|
+
expect(res.status).toBe(200)
|
|
23
|
+
expect(await res.json()).toEqual('hi')
|
|
24
|
+
expect(res.headers.get('x-test')).toBe('ok')
|
|
25
|
+
})
|
|
26
|
+
|
|
27
|
+
test('middleware without next runs the next middleware and handler', async () => {
|
|
28
|
+
let middlewaresCalled = [] as string[]
|
|
29
|
+
const res = await new Spiceflow()
|
|
30
|
+
.use(async ({ request }) => {
|
|
31
|
+
middlewaresCalled.push('first')
|
|
32
|
+
})
|
|
33
|
+
.use(async ({ request }, next) => {
|
|
34
|
+
middlewaresCalled.push('second')
|
|
35
|
+
const res = await next()
|
|
36
|
+
if (res instanceof Response) {
|
|
37
|
+
res.headers.set('x-test', 'ok')
|
|
38
|
+
}
|
|
39
|
+
return res
|
|
40
|
+
})
|
|
41
|
+
.get('/ids/:id', () => 'hi')
|
|
42
|
+
|
|
43
|
+
.handle(new Request('http://localhost/ids/xxx', { method: 'GET' }))
|
|
44
|
+
expect(res.status).toBe(200)
|
|
45
|
+
expect(middlewaresCalled).toEqual(['first', 'second'])
|
|
46
|
+
expect(await res.json()).toEqual('hi')
|
|
47
|
+
expect(res.headers.get('x-test')).toBe('ok')
|
|
48
|
+
})
|
|
49
|
+
test('middleware throws response', async () => {
|
|
50
|
+
let middlewaresCalled = [] as string[]
|
|
51
|
+
const res = await new Spiceflow()
|
|
52
|
+
.use(async ({ request }) => {
|
|
53
|
+
middlewaresCalled.push('first')
|
|
54
|
+
})
|
|
55
|
+
.use(async ({ request }, next) => {
|
|
56
|
+
middlewaresCalled.push('second')
|
|
57
|
+
throw new Response('ok')
|
|
58
|
+
})
|
|
59
|
+
.get('/ids/:id', () => 'hi')
|
|
60
|
+
|
|
61
|
+
.handle(new Request('http://localhost/ids/xxx', { method: 'GET' }))
|
|
62
|
+
expect(res.status).toBe(200)
|
|
63
|
+
expect(middlewaresCalled).toEqual(['first', 'second'])
|
|
64
|
+
expect(await res.text()).toEqual('ok')
|
|
65
|
+
})
|
|
66
|
+
|
|
67
|
+
test('middleware stops other middlewares', async () => {
|
|
68
|
+
let middlewaresCalled = [] as string[]
|
|
69
|
+
const res = await new Spiceflow()
|
|
70
|
+
.use(async ({ request }) => {
|
|
71
|
+
middlewaresCalled.push('first')
|
|
72
|
+
return new Response('ok')
|
|
73
|
+
})
|
|
74
|
+
.use(async ({ request }) => {
|
|
75
|
+
middlewaresCalled.push('second')
|
|
76
|
+
})
|
|
77
|
+
.get('/ids/:id', () => 'hi')
|
|
78
|
+
|
|
79
|
+
.handle(new Request('http://localhost/ids/xxx', { method: 'GET' }))
|
|
80
|
+
expect(res.status).toBe(200)
|
|
81
|
+
expect(middlewaresCalled).toEqual(['first'])
|
|
82
|
+
expect(await res.text()).toEqual('ok')
|
|
83
|
+
})
|
|
84
|
+
|
|
85
|
+
test('middleware changes handler response body', async () => {
|
|
86
|
+
let middlewaresCalled = [] as string[]
|
|
87
|
+
const res = await new Spiceflow()
|
|
88
|
+
.use(async (ctx, next) => {
|
|
89
|
+
middlewaresCalled.push('first')
|
|
90
|
+
const response = await next()
|
|
91
|
+
if (response) {
|
|
92
|
+
const body = await response.text()
|
|
93
|
+
return new Response(body.toUpperCase(), response)
|
|
94
|
+
}
|
|
95
|
+
return response
|
|
96
|
+
})
|
|
97
|
+
.use(async (ctx, next) => {
|
|
98
|
+
middlewaresCalled.push('second')
|
|
99
|
+
return next()
|
|
100
|
+
})
|
|
101
|
+
.get('/test', () => 'hello world')
|
|
102
|
+
.handle(new Request('http://localhost/test'))
|
|
103
|
+
|
|
104
|
+
expect(res.status).toBe(200)
|
|
105
|
+
expect(middlewaresCalled).toEqual(['first', 'second'])
|
|
106
|
+
expect(await res.json()).toEqual('HELLO WORLD')
|
|
107
|
+
})
|
package/src/openapi.test.ts
CHANGED
|
@@ -18,7 +18,16 @@ test('openapi response', async () => {
|
|
|
18
18
|
.use(
|
|
19
19
|
new Spiceflow({ basePath: '/one' }).get(
|
|
20
20
|
'/ids/:id',
|
|
21
|
-
({ params }) =>
|
|
21
|
+
({ params }) => {
|
|
22
|
+
if (Math.random() < 0.5) {
|
|
23
|
+
// TODO add a way to set status
|
|
24
|
+
|
|
25
|
+
return {
|
|
26
|
+
message: 'sdf',
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return params.id
|
|
30
|
+
},
|
|
22
31
|
{
|
|
23
32
|
response: {
|
|
24
33
|
200: z.string(),
|
|
@@ -59,6 +68,25 @@ test('openapi response', async () => {
|
|
|
59
68
|
}),
|
|
60
69
|
},
|
|
61
70
|
)
|
|
71
|
+
.post(
|
|
72
|
+
'/queryParams',
|
|
73
|
+
async (c) => {
|
|
74
|
+
const query = c.query
|
|
75
|
+
return query
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
detail: {
|
|
79
|
+
description: 'This is a post',
|
|
80
|
+
operationId: 'postQueryParamsXXX',
|
|
81
|
+
},
|
|
82
|
+
body: z.object({
|
|
83
|
+
name: z.string(),
|
|
84
|
+
}),
|
|
85
|
+
response: z.object({
|
|
86
|
+
name: z.string().optional(),
|
|
87
|
+
}),
|
|
88
|
+
},
|
|
89
|
+
)
|
|
62
90
|
.use(
|
|
63
91
|
new Spiceflow({ basePath: '/two' }).get(
|
|
64
92
|
'/ids/:id',
|
|
@@ -201,6 +229,48 @@ test('openapi response', async () => {
|
|
|
201
229
|
},
|
|
202
230
|
},
|
|
203
231
|
},
|
|
232
|
+
"post": {
|
|
233
|
+
"description": "This is a post",
|
|
234
|
+
"operationId": "postQueryParamsXXX",
|
|
235
|
+
"parameters": [],
|
|
236
|
+
"requestBody": {
|
|
237
|
+
"content": {
|
|
238
|
+
"application/json": {
|
|
239
|
+
"schema": {
|
|
240
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
241
|
+
"additionalProperties": false,
|
|
242
|
+
"properties": {
|
|
243
|
+
"name": {
|
|
244
|
+
"type": "string",
|
|
245
|
+
},
|
|
246
|
+
},
|
|
247
|
+
"required": [
|
|
248
|
+
"name",
|
|
249
|
+
],
|
|
250
|
+
"type": "object",
|
|
251
|
+
},
|
|
252
|
+
},
|
|
253
|
+
},
|
|
254
|
+
"required": true,
|
|
255
|
+
},
|
|
256
|
+
"responses": {
|
|
257
|
+
"200": {
|
|
258
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
259
|
+
"content": {
|
|
260
|
+
"application/json": {
|
|
261
|
+
"schema": {
|
|
262
|
+
"properties": {
|
|
263
|
+
"name": {
|
|
264
|
+
"type": "string",
|
|
265
|
+
},
|
|
266
|
+
},
|
|
267
|
+
"type": "object",
|
|
268
|
+
},
|
|
269
|
+
},
|
|
270
|
+
},
|
|
271
|
+
},
|
|
272
|
+
},
|
|
273
|
+
},
|
|
204
274
|
},
|
|
205
275
|
"/two/ids/{id}": {
|
|
206
276
|
"get": {
|
package/src/openapi.ts
CHANGED
|
@@ -6,7 +6,7 @@ import type { OpenAPIV3 } from 'openapi-types'
|
|
|
6
6
|
|
|
7
7
|
let excludeMethods = ['OPTIONS']
|
|
8
8
|
|
|
9
|
-
import type { HTTPMethod, LocalHook, TypeSchema } from './
|
|
9
|
+
import type { HTTPMethod, LocalHook, TypeSchema } from './types.js'
|
|
10
10
|
|
|
11
11
|
import deepClone from 'lodash.clonedeep'
|
|
12
12
|
import { z } from 'zod'
|