spiceflow 1.1.1 → 1.1.3
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/dist/benchmark.benchmark.d.ts +2 -0
- package/dist/benchmark.benchmark.d.ts.map +1 -0
- package/dist/benchmark.benchmark.js +13 -0
- package/dist/benchmark.benchmark.js.map +1 -0
- package/dist/context.d.ts +0 -3
- package/dist/context.d.ts.map +1 -1
- package/dist/cors.d.ts +22 -0
- package/dist/cors.d.ts.map +1 -0
- package/dist/cors.js +76 -0
- package/dist/cors.js.map +1 -0
- package/dist/cors.test.d.ts +2 -0
- package/dist/cors.test.d.ts.map +1 -0
- package/dist/cors.test.js +39 -0
- package/dist/cors.test.js.map +1 -0
- package/dist/error.d.ts +0 -4
- package/dist/error.d.ts.map +1 -1
- package/dist/error.js +0 -7
- package/dist/error.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/middleware.test.js +37 -0
- package/dist/middleware.test.js.map +1 -1
- package/dist/spiceflow.d.ts +0 -11
- package/dist/spiceflow.d.ts.map +1 -1
- package/dist/spiceflow.js +50 -31
- package/dist/spiceflow.js.map +1 -1
- package/dist/spiceflow.test.js +17 -0
- package/dist/spiceflow.test.js.map +1 -1
- package/dist/types.d.ts +3 -33
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +23 -1
- package/src/benchmark.benchmark.ts +16 -0
- package/src/context.ts +3 -3
- package/src/cors.test.ts +44 -0
- package/src/cors.ts +115 -0
- package/src/error.ts +0 -8
- package/src/index.ts +1 -0
- package/src/middleware.test.ts +39 -0
- package/src/spiceflow.test.ts +24 -0
- package/src/spiceflow.ts +55 -69
- package/src/types.test.ts +1 -0
- package/src/types.ts +10 -35
- package/dist/benchmark.test.d.ts +0 -2
- package/dist/benchmark.test.d.ts.map +0 -1
- package/dist/benchmark.test.js +0 -8
- package/dist/benchmark.test.js.map +0 -1
- package/src/benchmark.test.ts +0 -8
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"benchmark.benchmark.d.ts","sourceRoot":"","sources":["../src/benchmark.benchmark.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { bench } from 'vitest';
|
|
2
|
+
import { Spiceflow } from './spiceflow.js';
|
|
3
|
+
bench('Spiceflow basic routing', async () => {
|
|
4
|
+
const app = new Spiceflow();
|
|
5
|
+
app.get('/hello', () => {
|
|
6
|
+
return { message: 'Hello, World!' };
|
|
7
|
+
});
|
|
8
|
+
const request = new Request('http://localhost/hello');
|
|
9
|
+
for (let i = 0; i < 10000; i++) {
|
|
10
|
+
await app.handle(request);
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
//# sourceMappingURL=benchmark.benchmark.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"benchmark.benchmark.js","sourceRoot":"","sources":["../src/benchmark.benchmark.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAE9B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,KAAK,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;IAC3C,MAAM,GAAG,GAAG,IAAI,SAAS,EAAE,CAAA;IAE3B,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE;QACtB,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAA;IACpC,CAAC,CAAC,CAAA;IAEF,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,wBAAwB,CAAC,CAAA;IACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,MAAM,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAC1B,CAAC;AACF,CAAC,CAAC,CAAA"}
|
package/dist/context.d.ts
CHANGED
|
@@ -2,7 +2,6 @@ import type { redirect as Redirect } from './utils.js';
|
|
|
2
2
|
import type { RouteSchema, Prettify, ResolvePath, SingletonBase } from './types.js';
|
|
3
3
|
import { TypedRequest } from './spiceflow.js';
|
|
4
4
|
export type ErrorContext<in out Route extends RouteSchema = {}, in out Singleton extends SingletonBase = {
|
|
5
|
-
decorator: {};
|
|
6
5
|
store: {};
|
|
7
6
|
derive: {};
|
|
8
7
|
resolve: {};
|
|
@@ -31,7 +30,6 @@ export type ErrorContext<in out Route extends RouteSchema = {}, in out Singleton
|
|
|
31
30
|
store: Singleton['store'];
|
|
32
31
|
}>;
|
|
33
32
|
export type Context<in out Route extends RouteSchema = {}, in out Singleton extends SingletonBase = {
|
|
34
|
-
decorator: {};
|
|
35
33
|
store: {};
|
|
36
34
|
derive: {};
|
|
37
35
|
resolve: {};
|
|
@@ -59,7 +57,6 @@ export type Context<in out Route extends RouteSchema = {}, in out Singleton exte
|
|
|
59
57
|
response?: Route['response'];
|
|
60
58
|
}>;
|
|
61
59
|
export type MiddlewareContext<in out Singleton extends SingletonBase = {
|
|
62
|
-
decorator: {};
|
|
63
60
|
store: {};
|
|
64
61
|
}> = Prettify<{
|
|
65
62
|
store: Singleton['store'];
|
package/dist/context.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGX,QAAQ,IAAI,QAAQ,EACpB,MAAM,YAAY,CAAA;AAEnB,OAAO,KAAK,EACX,WAAW,EACX,QAAQ,EACR,WAAW,EACX,aAAa,EAEb,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,MAAM,MAAM,YAAY,CACvB,EAAE,CAAC,GAAG,CAAC,KAAK,SAAS,WAAW,GAAG,EAAE,EACrC,EAAE,CAAC,GAAG,CAAC,SAAS,SAAS,aAAa,GAAG;
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
|
package/dist/cors.d.ts
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { MiddlewareHandler } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Options for configuring CORS (Cross-Origin Resource Sharing) middleware.
|
|
4
|
+
* @see {@link https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS MDN CORS documentation}
|
|
5
|
+
*/
|
|
6
|
+
type CORSOptions = {
|
|
7
|
+
/** Configures the Access-Control-Allow-Origin CORS header */
|
|
8
|
+
origin: string | string[];
|
|
9
|
+
/** Configures the Access-Control-Allow-Methods CORS header */
|
|
10
|
+
allowMethods?: string[];
|
|
11
|
+
/** Configures the Access-Control-Allow-Headers CORS header */
|
|
12
|
+
allowHeaders?: string[];
|
|
13
|
+
/** Configures the Access-Control-Max-Age CORS header */
|
|
14
|
+
maxAge?: number;
|
|
15
|
+
/** Configures the Access-Control-Allow-Credentials CORS header */
|
|
16
|
+
credentials?: boolean;
|
|
17
|
+
/** Configures the Access-Control-Expose-Headers CORS header */
|
|
18
|
+
exposeHeaders?: string[];
|
|
19
|
+
};
|
|
20
|
+
export declare const cors: (options?: CORSOptions) => MiddlewareHandler;
|
|
21
|
+
export {};
|
|
22
|
+
//# sourceMappingURL=cors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cors.d.ts","sourceRoot":"","sources":["../src/cors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAC9C;;;GAGG;AACH,KAAK,WAAW,GAAG;IAClB,6DAA6D;IAC7D,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IACzB,8DAA8D;IAC9D,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB,8DAA8D;IAC9D,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,kEAAkE;IAClE,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,IAAI,aAAc,WAAW,KAAG,iBA8F5C,CAAA"}
|
package/dist/cors.js
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
export const cors = (options) => {
|
|
2
|
+
const defaults = {
|
|
3
|
+
origin: '*',
|
|
4
|
+
allowMethods: ['GET', 'HEAD', 'PUT', 'POST', 'DELETE', 'PATCH'],
|
|
5
|
+
allowHeaders: [],
|
|
6
|
+
exposeHeaders: [],
|
|
7
|
+
};
|
|
8
|
+
const opts = Object.assign(Object.assign({}, defaults), options);
|
|
9
|
+
const findAllowOrigin = ((optsOrigin) => {
|
|
10
|
+
if (typeof optsOrigin === 'string') {
|
|
11
|
+
return () => optsOrigin;
|
|
12
|
+
}
|
|
13
|
+
else if (typeof optsOrigin === 'function') {
|
|
14
|
+
return optsOrigin;
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
return (origin) => optsOrigin.includes(origin) ? origin : optsOrigin[0];
|
|
18
|
+
}
|
|
19
|
+
})(opts.origin);
|
|
20
|
+
return async function cors(c, next) {
|
|
21
|
+
var _a, _b;
|
|
22
|
+
let response = await next();
|
|
23
|
+
function set(key, value) {
|
|
24
|
+
response.headers.set(key, value);
|
|
25
|
+
}
|
|
26
|
+
const allowOrigin = findAllowOrigin(c.request.headers.get('origin') || '');
|
|
27
|
+
if (allowOrigin) {
|
|
28
|
+
set('Access-Control-Allow-Origin', allowOrigin);
|
|
29
|
+
}
|
|
30
|
+
// Suppose the server sends a response with an Access-Control-Allow-Origin value with an explicit origin (rather than the "*" wildcard).
|
|
31
|
+
// https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin
|
|
32
|
+
if (opts.origin !== '*') {
|
|
33
|
+
const existingVary = c.request.headers.get('Vary');
|
|
34
|
+
if (existingVary) {
|
|
35
|
+
set('Vary', existingVary);
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
set('Vary', 'Origin');
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
if (opts.credentials) {
|
|
42
|
+
set('Access-Control-Allow-Credentials', 'true');
|
|
43
|
+
}
|
|
44
|
+
if ((_a = opts.exposeHeaders) === null || _a === void 0 ? void 0 : _a.length) {
|
|
45
|
+
set('Access-Control-Expose-Headers', opts.exposeHeaders.join(','));
|
|
46
|
+
}
|
|
47
|
+
if (c.request.method === 'OPTIONS') {
|
|
48
|
+
if (opts.maxAge != null) {
|
|
49
|
+
set('Access-Control-Max-Age', opts.maxAge.toString());
|
|
50
|
+
}
|
|
51
|
+
if ((_b = opts.allowMethods) === null || _b === void 0 ? void 0 : _b.length) {
|
|
52
|
+
set('Access-Control-Allow-Methods', opts.allowMethods.join(','));
|
|
53
|
+
}
|
|
54
|
+
let headers = opts.allowHeaders;
|
|
55
|
+
if (!(headers === null || headers === void 0 ? void 0 : headers.length)) {
|
|
56
|
+
const requestHeaders = c.request.headers.get('Access-Control-Request-Headers');
|
|
57
|
+
if (requestHeaders) {
|
|
58
|
+
headers = requestHeaders.split(/\s*,\s*/);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
if (headers === null || headers === void 0 ? void 0 : headers.length) {
|
|
62
|
+
set('Access-Control-Allow-Headers', headers.join(','));
|
|
63
|
+
c.request.headers.append('Vary', 'Access-Control-Request-Headers');
|
|
64
|
+
}
|
|
65
|
+
response.headers.delete('Content-Length');
|
|
66
|
+
response.headers.delete('Content-Type');
|
|
67
|
+
return new Response(null, {
|
|
68
|
+
headers: response.headers,
|
|
69
|
+
status: 204,
|
|
70
|
+
statusText: response.statusText,
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
return response;
|
|
74
|
+
};
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=cors.js.map
|
package/dist/cors.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cors.js","sourceRoot":"","sources":["../src/cors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cors.test.d.ts","sourceRoot":"","sources":["../src/cors.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { describe, expect, test } from 'vitest';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { cors } from './cors.js';
|
|
4
|
+
import { Spiceflow } from './spiceflow.js';
|
|
5
|
+
function request(path, method = 'GET') {
|
|
6
|
+
return new Request(`http://localhost/${path}`, {
|
|
7
|
+
method,
|
|
8
|
+
headers: {
|
|
9
|
+
Origin: 'http://example.com',
|
|
10
|
+
},
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
describe('cors middleware', () => {
|
|
14
|
+
const app = new Spiceflow()
|
|
15
|
+
.use(cors())
|
|
16
|
+
.get('/ids/:id', () => 'hi')
|
|
17
|
+
.post('/ids/:id', ({ params: { id } }) => id, {
|
|
18
|
+
params: z.object({ id: z.string() }),
|
|
19
|
+
});
|
|
20
|
+
test('GET request returns correct response and CORS headers', async () => {
|
|
21
|
+
const res = await app.handle(request('ids/xxx'));
|
|
22
|
+
expect(res.status).toBe(200);
|
|
23
|
+
expect(await res.json()).toBe('hi');
|
|
24
|
+
expect(res.headers.get('Access-Control-Allow-Origin')).toBe('*');
|
|
25
|
+
});
|
|
26
|
+
test('OPTIONS request returns correct CORS headers', async () => {
|
|
27
|
+
const res = await app.handle(request('ids/xxx', 'OPTIONS'));
|
|
28
|
+
expect(res.status).toBe(204);
|
|
29
|
+
expect(res.headers.get('Access-Control-Allow-Origin')).toBe('*');
|
|
30
|
+
expect(res.headers.get('Access-Control-Allow-Methods')).toBe('GET,HEAD,PUT,POST,DELETE,PATCH');
|
|
31
|
+
});
|
|
32
|
+
test('POST request respects CORS and returns correct response', async () => {
|
|
33
|
+
const res = await app.handle(request('ids/123', 'POST'));
|
|
34
|
+
expect(res.status).toBe(200);
|
|
35
|
+
expect(await res.json()).toBe('123');
|
|
36
|
+
expect(res.headers.get('Access-Control-Allow-Origin')).toBe('*');
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
//# sourceMappingURL=cors.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cors.test.js","sourceRoot":"","sources":["../src/cors.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,SAAS,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK;IACpC,OAAO,IAAI,OAAO,CAAC,oBAAoB,IAAI,EAAE,EAAE;QAC9C,MAAM;QACN,OAAO,EAAE;YACR,MAAM,EAAE,oBAAoB;SAC5B;KACD,CAAC,CAAA;AACH,CAAC;AACD,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAChC,MAAM,GAAG,GAAG,IAAI,SAAS,EAAE;SACzB,GAAG,CAAC,IAAI,EAAE,CAAC;SACX,GAAG,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC;SAC3B,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;QAC7C,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;KACpC,CAAC,CAAA;IAEH,IAAI,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACxE,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;QAChD,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC5B,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACjE,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAA;QAC3D,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC5B,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAChE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC,IAAI,CAC3D,gCAAgC,CAChC,CAAA;IACF,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;QACxD,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC5B,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACpC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACjE,CAAC,CAAC,CAAA;AACH,CAAC,CAAC,CAAA"}
|
package/dist/error.d.ts
CHANGED
|
@@ -7,10 +7,6 @@ export declare class ValidationError extends Error {
|
|
|
7
7
|
code: string;
|
|
8
8
|
status: number;
|
|
9
9
|
}
|
|
10
|
-
export declare class NotFoundError extends Error {
|
|
11
|
-
code: string;
|
|
12
|
-
status: number;
|
|
13
|
-
}
|
|
14
10
|
export declare class ParseError extends Error {
|
|
15
11
|
code: string;
|
|
16
12
|
status: number;
|
package/dist/error.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,UAAU,eAA+B,CAAA;AACtD,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAA;AAE1C,eAAO,MAAM,eAAe,eAA8B,CAAA;AAC1D,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAA;AAEpD,eAAO,MAAM,YAAY,SAA+C,CAAA;AAExE,qBAAa,eAAgB,SAAQ,KAAK;IACzC,IAAI,SAAe;IACnB,MAAM,SAAM;CACZ;AAED,qBAAa,UAAW,SAAQ,KAAK;IACpC,IAAI,SAAU;IACd,MAAM,SAAM;CACZ;AAED,qBAAa,mBAAoB,SAAQ,KAAK;IAC7C,IAAI,SAA0B;IAC9B,MAAM,SAAM;CACZ"}
|
package/dist/error.js
CHANGED
|
@@ -18,13 +18,6 @@ export class ValidationError extends Error {
|
|
|
18
18
|
this.status = 422;
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
-
export class NotFoundError extends Error {
|
|
22
|
-
constructor() {
|
|
23
|
-
super(...arguments);
|
|
24
|
-
this.code = 'NOT_FOUND';
|
|
25
|
-
this.status = 404;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
21
|
export class ParseError extends Error {
|
|
29
22
|
constructor() {
|
|
30
23
|
super(...arguments);
|
package/dist/error.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":";AAAA,8BAA8B;AAC9B,MAAM,GAAG;AACR,aAAa;AACb,OAAO,GAAG,KAAK,WAAW;IACzB,CAAC,CAAC,aAAa;QACb,GAAG,CAAC,GAAG;IACT,CAAC,CAAC,OAAO,OAAO,KAAK,WAAW;QAChC,CAAC,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,GAAG;QACd,CAAC,CAAC,SAAS,CAAA;AAEb,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAA;AAGtD,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAA;AAG1D,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,QAAQ,mCAAI,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,CAAC,KAAK,YAAY,CAAA;AAExE,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAA1C;;QACC,SAAI,GAAG,YAAY,CAAA;QACnB,WAAM,GAAG,GAAG,CAAA;IACb,CAAC;CAAA;AAED,MAAM,OAAO,UAAW,SAAQ,KAAK;IAArC;;QACC,SAAI,GAAG,OAAO,CAAA;QACd,WAAM,GAAG,GAAG,CAAA;IACb,CAAC;CAAA;AAED,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAA9C;;QACC,SAAI,GAAG,uBAAuB,CAAA;QAC9B,WAAM,GAAG,GAAG,CAAA;IACb,CAAC;CAAA"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACxD,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgB,MAAM,gBAAgB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgB,MAAM,gBAAgB,CAAA;AACxD,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA"}
|
package/dist/middleware.test.js
CHANGED
|
@@ -21,6 +21,22 @@ test('middleware with next changes the response', async () => {
|
|
|
21
21
|
expect(await res.json()).toEqual('hi');
|
|
22
22
|
expect(res.headers.get('x-test')).toBe('ok');
|
|
23
23
|
});
|
|
24
|
+
test('middleware next returns a response even for 404, if there are no routes', async () => {
|
|
25
|
+
const res = await new Spiceflow()
|
|
26
|
+
.use(async ({ request }, next) => {
|
|
27
|
+
expect(request.method).toBe('GET');
|
|
28
|
+
const res = await next();
|
|
29
|
+
expect(res).toBeInstanceOf(Response);
|
|
30
|
+
if (res) {
|
|
31
|
+
res.headers.set('x-test', 'ok');
|
|
32
|
+
}
|
|
33
|
+
return res;
|
|
34
|
+
})
|
|
35
|
+
.handle(new Request('http://localhost/non-existent', { method: 'GET' }));
|
|
36
|
+
expect(res.status).toBe(404);
|
|
37
|
+
expect(res.headers.get('x-test')).toBe('ok');
|
|
38
|
+
expect(await res.text()).toContain('Not Found');
|
|
39
|
+
});
|
|
24
40
|
test('middleware without next runs the next middleware and handler', async () => {
|
|
25
41
|
let middlewaresCalled = [];
|
|
26
42
|
const res = await new Spiceflow()
|
|
@@ -74,6 +90,27 @@ test('middleware stops other middlewares', async () => {
|
|
|
74
90
|
expect(middlewaresCalled).toEqual(['first']);
|
|
75
91
|
expect(await res.text()).toEqual('ok');
|
|
76
92
|
});
|
|
93
|
+
test('calling next and then returning a new response works', async () => {
|
|
94
|
+
let middlewaresCalled = [];
|
|
95
|
+
const res = await new Spiceflow()
|
|
96
|
+
.use(async (ctx, next) => {
|
|
97
|
+
middlewaresCalled.push('first');
|
|
98
|
+
await next();
|
|
99
|
+
return new Response('middleware response');
|
|
100
|
+
})
|
|
101
|
+
.use(async (ctx, next) => {
|
|
102
|
+
middlewaresCalled.push('second');
|
|
103
|
+
return next();
|
|
104
|
+
})
|
|
105
|
+
.get('/ids/:id', () => {
|
|
106
|
+
middlewaresCalled.push('handler');
|
|
107
|
+
return 'handler response';
|
|
108
|
+
})
|
|
109
|
+
.handle(new Request('http://localhost/ids/xxx', { method: 'GET' }));
|
|
110
|
+
expect(res.status).toBe(200);
|
|
111
|
+
expect(middlewaresCalled).toEqual(['first', 'second', 'handler']);
|
|
112
|
+
expect(await res.text()).toEqual('middleware response');
|
|
113
|
+
});
|
|
77
114
|
test('middleware changes handler response body', async () => {
|
|
78
115
|
let middlewaresCalled = [];
|
|
79
116
|
const res = await new Spiceflow()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.test.js","sourceRoot":"","sources":["../src/middleware.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"middleware.test.js","sourceRoot":"","sources":["../src/middleware.test.ts"],"names":[],"mappings":"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"}
|
package/dist/spiceflow.d.ts
CHANGED
|
@@ -11,11 +11,7 @@ export type InternalRoute = {
|
|
|
11
11
|
validateBody?: ValidateFunction;
|
|
12
12
|
validateQuery?: ValidateFunction;
|
|
13
13
|
validateParams?: ValidateFunction;
|
|
14
|
-
prefix: string;
|
|
15
14
|
};
|
|
16
|
-
/**
|
|
17
|
-
* Router class
|
|
18
|
-
*/
|
|
19
15
|
export declare class Spiceflow<const in out BasePath extends string = '', const in out Scoped extends boolean = true, const in out Singleton extends SingletonBase = {
|
|
20
16
|
store: {};
|
|
21
17
|
}, const in out Definitions extends DefinitionBase = {
|
|
@@ -46,7 +42,6 @@ export declare class Spiceflow<const in out BasePath extends string = '', const
|
|
|
46
42
|
validateBody?: ValidateFunction;
|
|
47
43
|
validateQuery?: ValidateFunction;
|
|
48
44
|
validateParams?: ValidateFunction;
|
|
49
|
-
prefix: string;
|
|
50
45
|
}[];
|
|
51
46
|
private add;
|
|
52
47
|
private match;
|
|
@@ -142,12 +137,6 @@ export declare class Spiceflow<const in out BasePath extends string = '', const
|
|
|
142
137
|
store: Singleton['store'];
|
|
143
138
|
}>>): this;
|
|
144
139
|
onError<const Schema extends RouteSchema>(handler: MaybeArray<ErrorHandler<Definitions['error'], Schema, Singleton>>): this;
|
|
145
|
-
/**
|
|
146
|
-
* Pass a request through all matching route handles and return a response
|
|
147
|
-
* @param request The `Request`
|
|
148
|
-
* @param platform Platform specific context {@link Platform}
|
|
149
|
-
* @returns The final `Response`
|
|
150
|
-
*/
|
|
151
140
|
handle(request: Request): Promise<Response>;
|
|
152
141
|
private runErrorHandlers;
|
|
153
142
|
private getAppAndParents;
|
package/dist/spiceflow.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spiceflow.d.ts","sourceRoot":"","sources":["../src/spiceflow.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"spiceflow.d.ts","sourceRoot":"","sources":["../src/spiceflow.ts"],"names":[],"mappings":"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"}
|
package/dist/spiceflow.js
CHANGED
|
@@ -21,13 +21,11 @@ import { Type } from '@sinclair/typebox';
|
|
|
21
21
|
export { Type as t };
|
|
22
22
|
import addFormats from 'ajv-formats';
|
|
23
23
|
let globalIndex = 0;
|
|
24
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
25
|
-
// @ts-ignore
|
|
26
24
|
import OriginalRouter from '@medley/router';
|
|
27
25
|
import Ajv from 'ajv';
|
|
28
26
|
import { z } from 'zod';
|
|
29
27
|
import { zodToJsonSchema } from 'zod-to-json-schema';
|
|
30
|
-
import { isProduction,
|
|
28
|
+
import { isProduction, ValidationError } from './error.js';
|
|
31
29
|
import { isAsyncIterable, redirect } from './utils.js';
|
|
32
30
|
const ajv = (addFormats.default || addFormats)(new (Ajv.default || Ajv)({ useDefaults: true }), [
|
|
33
31
|
'date-time',
|
|
@@ -45,9 +43,9 @@ const ajv = (addFormats.default || addFormats)(new (Ajv.default || Ajv)({ useDef
|
|
|
45
43
|
'relative-json-pointer',
|
|
46
44
|
'regex',
|
|
47
45
|
]);
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
46
|
+
const notFoundHandler = (c) => {
|
|
47
|
+
return new Response('Not Found', { status: 404 });
|
|
48
|
+
};
|
|
51
49
|
export class Spiceflow {
|
|
52
50
|
/** @internal */
|
|
53
51
|
getAllRoutes() {
|
|
@@ -68,7 +66,7 @@ export class Spiceflow {
|
|
|
68
66
|
let validateQuery = getValidateFunction(hooks === null || hooks === void 0 ? void 0 : hooks.query);
|
|
69
67
|
let validateParams = getValidateFunction(hooks === null || hooks === void 0 ? void 0 : hooks.params);
|
|
70
68
|
const store = this.router.register(path);
|
|
71
|
-
let route = Object.assign(Object.assign({}, rest), {
|
|
69
|
+
let route = Object.assign(Object.assign({}, rest), { method: (method || ''), path: path || '', handler: handler, hooks,
|
|
72
70
|
validateBody,
|
|
73
71
|
validateParams,
|
|
74
72
|
validateQuery });
|
|
@@ -77,6 +75,7 @@ export class Spiceflow {
|
|
|
77
75
|
}
|
|
78
76
|
match(method, path) {
|
|
79
77
|
let root = this;
|
|
78
|
+
let foundApp;
|
|
80
79
|
const result = bfsFind(this, (app) => {
|
|
81
80
|
app.topLevelApp = root;
|
|
82
81
|
let prefix = this.getAppAndParents(app)
|
|
@@ -91,6 +90,7 @@ export class Spiceflow {
|
|
|
91
90
|
}
|
|
92
91
|
const medleyRoute = app.router.find(pathWithoutPrefix);
|
|
93
92
|
if (!medleyRoute) {
|
|
93
|
+
foundApp = app;
|
|
94
94
|
return;
|
|
95
95
|
}
|
|
96
96
|
let internalRoute = medleyRoute.store[method];
|
|
@@ -103,8 +103,43 @@ export class Spiceflow {
|
|
|
103
103
|
};
|
|
104
104
|
return res;
|
|
105
105
|
}
|
|
106
|
+
if (method === 'HEAD') {
|
|
107
|
+
let internalRouteGet = medleyRoute.store['GET'];
|
|
108
|
+
if (!(internalRouteGet === null || internalRouteGet === void 0 ? void 0 : internalRouteGet.handler)) {
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
return {
|
|
112
|
+
app,
|
|
113
|
+
internalRoute: {
|
|
114
|
+
hooks: {},
|
|
115
|
+
handler: async (c) => {
|
|
116
|
+
const response = await internalRouteGet.handler(c);
|
|
117
|
+
if (response instanceof Response) {
|
|
118
|
+
return new Response('', {
|
|
119
|
+
status: response.status,
|
|
120
|
+
statusText: response.statusText,
|
|
121
|
+
headers: response.headers,
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
return new Response(null, { status: 200 });
|
|
125
|
+
},
|
|
126
|
+
method,
|
|
127
|
+
path,
|
|
128
|
+
},
|
|
129
|
+
params: medleyRoute.params,
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
return (result || {
|
|
134
|
+
app: foundApp || root,
|
|
135
|
+
internalRoute: {
|
|
136
|
+
hooks: {},
|
|
137
|
+
handler: notFoundHandler,
|
|
138
|
+
method,
|
|
139
|
+
path,
|
|
140
|
+
},
|
|
141
|
+
params: {},
|
|
106
142
|
});
|
|
107
|
-
return result;
|
|
108
143
|
}
|
|
109
144
|
state(name, value) {
|
|
110
145
|
this.defaultStore[name] = value;
|
|
@@ -186,12 +221,6 @@ export class Spiceflow {
|
|
|
186
221
|
this.onErrorHandlers.push(handler);
|
|
187
222
|
return this;
|
|
188
223
|
}
|
|
189
|
-
/**
|
|
190
|
-
* Pass a request through all matching route handles and return a response
|
|
191
|
-
* @param request The `Request`
|
|
192
|
-
* @param platform Platform specific context {@link Platform}
|
|
193
|
-
* @returns The final `Response`
|
|
194
|
-
*/
|
|
195
224
|
async handle(request) {
|
|
196
225
|
var _a, _b, _c, _d, _e;
|
|
197
226
|
let u = new URL(request.url, 'http://localhost');
|
|
@@ -206,19 +235,6 @@ export class Spiceflow {
|
|
|
206
235
|
try {
|
|
207
236
|
// Get all middleware and method specific routes in order
|
|
208
237
|
const route = this.match(request.method, path);
|
|
209
|
-
if (!route) {
|
|
210
|
-
const error = new NotFoundError(`${path} not found`);
|
|
211
|
-
const res = await this.runErrorHandlers({
|
|
212
|
-
onErrorHandlers,
|
|
213
|
-
error,
|
|
214
|
-
request,
|
|
215
|
-
});
|
|
216
|
-
if (res)
|
|
217
|
-
return res;
|
|
218
|
-
return new Response(`Not Found`, {
|
|
219
|
-
status: 404,
|
|
220
|
-
});
|
|
221
|
-
}
|
|
222
238
|
onErrorHandlers = this.getAppsInScope(route.app).flatMap((x) => x.onErrorHandlers);
|
|
223
239
|
let { params, app: { defaultStore }, } = route;
|
|
224
240
|
const middlewares = this.getAppsInScope(route.app).flatMap((x) => x.middlewares);
|
|
@@ -284,12 +300,11 @@ export class Spiceflow {
|
|
|
284
300
|
error: err,
|
|
285
301
|
request,
|
|
286
302
|
});
|
|
287
|
-
if (res)
|
|
288
|
-
return res;
|
|
289
303
|
let status = (_e = err === null || err === void 0 ? void 0 : err.status) !== null && _e !== void 0 ? _e : 500;
|
|
290
|
-
|
|
304
|
+
res || (res = new Response((err === null || err === void 0 ? void 0 : err.message) || 'Internal Server Error', {
|
|
291
305
|
status,
|
|
292
|
-
});
|
|
306
|
+
}));
|
|
307
|
+
return res;
|
|
293
308
|
}
|
|
294
309
|
}
|
|
295
310
|
async runErrorHandlers({ onErrorHandlers = [], error: err, request, }) {
|
|
@@ -352,6 +367,7 @@ export class Spiceflow {
|
|
|
352
367
|
port,
|
|
353
368
|
development: !isProduction,
|
|
354
369
|
hostname,
|
|
370
|
+
reusePort: true,
|
|
355
371
|
error(error) {
|
|
356
372
|
console.error(error);
|
|
357
373
|
return new Response('Internal Server Error', {
|
|
@@ -363,6 +379,9 @@ export class Spiceflow {
|
|
|
363
379
|
return res;
|
|
364
380
|
},
|
|
365
381
|
});
|
|
382
|
+
process.on('beforeExit', () => {
|
|
383
|
+
server.stop();
|
|
384
|
+
});
|
|
366
385
|
console.log(`Listening on http://localhost:${port}`);
|
|
367
386
|
return server;
|
|
368
387
|
}
|