@visulima/connect 4.0.0-alpha.1 → 4.0.0-alpha.11
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 +108 -0
- package/LICENSE.md +1 -1
- package/README.md +28 -18
- package/dist/index.cjs +6 -6
- package/dist/index.d.cts +107 -12
- package/dist/index.d.mts +107 -12
- package/dist/index.d.ts +107 -12
- package/dist/index.mjs +6 -6
- package/dist/packem_shared/{EdgeRouter-CdtQHTwm.mjs → EdgeRouter-BHls0yWC.mjs} +43 -33
- package/dist/packem_shared/{EdgeRouter-B-e2l9un.cjs → EdgeRouter-DTvPX_JS.cjs} +43 -33
- package/dist/packem_shared/Router-CT_g_29S.mjs +168 -0
- package/dist/packem_shared/Router-DMp6zIkp.cjs +172 -0
- package/dist/packem_shared/{createRouter-C8hDVJcV.cjs → createRouter-B4-TLOnM.cjs} +43 -32
- package/dist/packem_shared/{createRouter-_G1XhaP4.mjs → createRouter-DGGDIRda.mjs} +43 -32
- package/dist/packem_shared/expressWrapper-CeTFmeNH.mjs +14 -0
- package/dist/packem_shared/expressWrapper-oEj2tv9s.cjs +16 -0
- package/dist/packem_shared/{sendJson-DwLYLDbt.mjs → sendJson-Cd6CsJC_.mjs} +1 -1
- package/dist/packem_shared/{sendJson-pJY2tT2n.cjs → sendJson-DjC80Qht.cjs} +1 -1
- package/dist/packem_shared/{withZod-HYgoC7AX.mjs → withZod-DMHxmHJB.mjs} +3 -6
- package/dist/packem_shared/withZod-hpoT0ByV.cjs +34 -0
- package/package.json +10 -9
- package/dist/adapter/express.d.cts +0 -7
- package/dist/adapter/express.d.mts +0 -7
- package/dist/adapter/express.d.ts +0 -7
- package/dist/adapter/with-zod.d.cts +0 -8
- package/dist/adapter/with-zod.d.mts +0 -8
- package/dist/adapter/with-zod.d.ts +0 -8
- package/dist/edge.d.cts +0 -30
- package/dist/edge.d.mts +0 -30
- package/dist/edge.d.ts +0 -30
- package/dist/node.d.cts +0 -33
- package/dist/node.d.mts +0 -33
- package/dist/node.d.ts +0 -33
- package/dist/packem_shared/Router-ChnTdYfl.mjs +0 -135
- package/dist/packem_shared/Router-Eg_OPxIL.cjs +0 -139
- package/dist/packem_shared/expressWrapper-CTExfWvM.cjs +0 -10
- package/dist/packem_shared/expressWrapper-spfs58is.mjs +0 -8
- package/dist/packem_shared/withZod-ULTsdyM5.cjs +0 -24
- package/dist/router.d.cts +0 -21
- package/dist/router.d.mts +0 -21
- package/dist/router.d.ts +0 -21
- package/dist/utils/send-json.d.cts +0 -9
- package/dist/utils/send-json.d.mts +0 -9
- package/dist/utils/send-json.d.ts +0 -9
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import withZod from './withZod-
|
|
2
|
-
import { Router } from './Router-
|
|
1
|
+
import withZod from './withZod-DMHxmHJB.mjs';
|
|
2
|
+
import { Router } from './Router-CT_g_29S.mjs';
|
|
3
3
|
|
|
4
|
-
const onNoMatch =
|
|
4
|
+
const onNoMatch = (request, response) => {
|
|
5
5
|
response.statusCode = 404;
|
|
6
|
-
response.end(request.method === "HEAD" ? void 0 : `Route ${request.method} ${request.url} not found`);
|
|
6
|
+
response.end(request.method === "HEAD" ? void 0 : `Route ${String(request.method)} ${String(request.url)} not found`);
|
|
7
7
|
};
|
|
8
|
-
const onError =
|
|
8
|
+
const onError = (error, _request, response) => {
|
|
9
9
|
response.statusCode = 500;
|
|
10
|
-
console.error(error);
|
|
10
|
+
globalThis.console.error(error);
|
|
11
11
|
response.end("Internal Server Error");
|
|
12
12
|
};
|
|
13
13
|
const getPathname = (url) => {
|
|
@@ -15,6 +15,13 @@ const getPathname = (url) => {
|
|
|
15
15
|
return queryIndex === -1 ? url : url.slice(0, Math.max(0, queryIndex));
|
|
16
16
|
};
|
|
17
17
|
class NodeRouter {
|
|
18
|
+
static prepareRequest(request, findResult) {
|
|
19
|
+
request.params = {
|
|
20
|
+
...findResult.params,
|
|
21
|
+
...request.params
|
|
22
|
+
// original params will take precedence
|
|
23
|
+
};
|
|
24
|
+
}
|
|
18
25
|
all = this.add.bind(this, "");
|
|
19
26
|
connect = this.add.bind(this, "CONNECT");
|
|
20
27
|
delete = this.add.bind(this, "DELETE");
|
|
@@ -40,8 +47,10 @@ class NodeRouter {
|
|
|
40
47
|
handler() {
|
|
41
48
|
const { routes } = this.router;
|
|
42
49
|
return async (request, response) => {
|
|
43
|
-
const
|
|
44
|
-
|
|
50
|
+
const pathname = getPathname(request.url);
|
|
51
|
+
const method = request.method;
|
|
52
|
+
const result = this.router.find(method, pathname);
|
|
53
|
+
NodeRouter.prepareRequest(request, result);
|
|
45
54
|
try {
|
|
46
55
|
await (result.fns.length === 0 || result.middleOnly ? this.onNoMatch(request, response, routes) : Router.exec(result.fns, request, response));
|
|
47
56
|
} catch (error) {
|
|
@@ -50,46 +59,48 @@ class NodeRouter {
|
|
|
50
59
|
};
|
|
51
60
|
}
|
|
52
61
|
async run(request, response) {
|
|
53
|
-
const
|
|
62
|
+
const pathname = getPathname(request.url);
|
|
63
|
+
const method = request.method;
|
|
64
|
+
const result = this.router.find(method, pathname);
|
|
54
65
|
if (result.fns.length === 0) {
|
|
55
|
-
return;
|
|
66
|
+
return void 0;
|
|
56
67
|
}
|
|
57
|
-
|
|
58
|
-
return
|
|
68
|
+
NodeRouter.prepareRequest(request, result);
|
|
69
|
+
return Router.exec(result.fns, request, response);
|
|
59
70
|
}
|
|
60
71
|
use(base, ...fns) {
|
|
72
|
+
let resolvedBase;
|
|
61
73
|
if (typeof base === "function" || base instanceof NodeRouter) {
|
|
62
74
|
fns.unshift(base);
|
|
63
|
-
|
|
75
|
+
resolvedBase = "/";
|
|
76
|
+
} else {
|
|
77
|
+
resolvedBase = base;
|
|
64
78
|
}
|
|
65
|
-
this.router.use(
|
|
79
|
+
this.router.use(
|
|
80
|
+
resolvedBase,
|
|
81
|
+
...fns.map((function_) => {
|
|
82
|
+
if (function_ instanceof NodeRouter) {
|
|
83
|
+
return function_.router;
|
|
84
|
+
}
|
|
85
|
+
return function_;
|
|
86
|
+
})
|
|
87
|
+
);
|
|
66
88
|
return this;
|
|
67
89
|
}
|
|
68
90
|
add(method, routeOrFunction, zodOrRouteOrFunction, ...fns) {
|
|
91
|
+
let resolvedFns;
|
|
69
92
|
if (typeof routeOrFunction === "string" && typeof zodOrRouteOrFunction === "function") {
|
|
70
|
-
|
|
93
|
+
resolvedFns = [zodOrRouteOrFunction];
|
|
71
94
|
} else if (typeof zodOrRouteOrFunction === "object") {
|
|
72
|
-
|
|
73
|
-
fns = [withZod(zodOrRouteOrFunction, routeOrFunction)];
|
|
74
|
-
} else {
|
|
75
|
-
fns = fns.map(
|
|
76
|
-
(function_) => withZod(zodOrRouteOrFunction, function_)
|
|
77
|
-
);
|
|
78
|
-
}
|
|
95
|
+
resolvedFns = typeof routeOrFunction === "function" ? [withZod(zodOrRouteOrFunction, routeOrFunction)] : fns.map((function_) => withZod(zodOrRouteOrFunction, function_));
|
|
79
96
|
} else if (typeof zodOrRouteOrFunction === "function") {
|
|
80
|
-
|
|
97
|
+
resolvedFns = [zodOrRouteOrFunction];
|
|
98
|
+
} else {
|
|
99
|
+
resolvedFns = fns;
|
|
81
100
|
}
|
|
82
|
-
this.router.add(method, routeOrFunction, ...
|
|
101
|
+
this.router.add(method, routeOrFunction, ...resolvedFns);
|
|
83
102
|
return this;
|
|
84
103
|
}
|
|
85
|
-
// eslint-disable-next-line class-methods-use-this
|
|
86
|
-
prepareRequest(request, findResult) {
|
|
87
|
-
request.params = {
|
|
88
|
-
...findResult.params,
|
|
89
|
-
...request.params
|
|
90
|
-
// original params will take precedence
|
|
91
|
-
};
|
|
92
|
-
}
|
|
93
104
|
}
|
|
94
105
|
const createRouter = (options = {}) => new NodeRouter(options);
|
|
95
106
|
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
const expressWrapper = (function_) => async (request, response, next) => {
|
|
2
|
+
await new Promise((resolve, reject) => {
|
|
3
|
+
function_(request, response, (error) => {
|
|
4
|
+
if (error) {
|
|
5
|
+
reject(error);
|
|
6
|
+
} else {
|
|
7
|
+
resolve();
|
|
8
|
+
}
|
|
9
|
+
});
|
|
10
|
+
});
|
|
11
|
+
return next();
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export { expressWrapper as default };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const expressWrapper = (function_) => async (request, response, next) => {
|
|
4
|
+
await new Promise((resolve, reject) => {
|
|
5
|
+
function_(request, response, (error) => {
|
|
6
|
+
if (error) {
|
|
7
|
+
reject(error);
|
|
8
|
+
} else {
|
|
9
|
+
resolve();
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
});
|
|
13
|
+
return next();
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
module.exports = expressWrapper;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const sendJson = (response, statusCode, jsonBody) => {
|
|
2
2
|
response.setHeader("content-type", "application/json; charset=utf-8");
|
|
3
3
|
response.statusCode = statusCode;
|
|
4
|
-
response.end(JSON.stringify(jsonBody,
|
|
4
|
+
response.end(JSON.stringify(jsonBody, void 0, 2));
|
|
5
5
|
};
|
|
6
6
|
|
|
7
7
|
export { sendJson as default };
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
const sendJson = (response, statusCode, jsonBody) => {
|
|
4
4
|
response.setHeader("content-type", "application/json; charset=utf-8");
|
|
5
5
|
response.statusCode = statusCode;
|
|
6
|
-
response.end(JSON.stringify(jsonBody,
|
|
6
|
+
response.end(JSON.stringify(jsonBody, void 0, 2));
|
|
7
7
|
};
|
|
8
8
|
|
|
9
9
|
module.exports = sendJson;
|
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
import createHttpError from 'http-errors';
|
|
2
|
-
import
|
|
2
|
+
import * as z from 'zod';
|
|
3
3
|
|
|
4
4
|
const withZod = (schema, handler) => async (request, response, next) => {
|
|
5
|
-
let transformedRequest
|
|
5
|
+
let transformedRequest;
|
|
6
6
|
try {
|
|
7
7
|
transformedRequest = await schema.parseAsync(request);
|
|
8
8
|
} catch (error) {
|
|
9
|
-
|
|
10
|
-
if (error instanceof ZodError && typeof error.format === "function") {
|
|
11
|
-
message = error.issues.map((issue) => `${issue.path.join("/")} - ${issue.message}`).join("/n");
|
|
12
|
-
}
|
|
9
|
+
const message = error instanceof z.ZodError && typeof error.format === "function" ? error.issues.map((issue) => `${issue.path.join("/")} - ${issue.message}`).join("/n") : error.message;
|
|
13
10
|
throw createHttpError(422, message);
|
|
14
11
|
}
|
|
15
12
|
return handler(transformedRequest, response, next);
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const createHttpError = require('http-errors');
|
|
4
|
+
const z = require('zod');
|
|
5
|
+
|
|
6
|
+
const _interopDefaultCompat = e => e && typeof e === 'object' && 'default' in e ? e.default : e;
|
|
7
|
+
|
|
8
|
+
function _interopNamespaceCompat(e) {
|
|
9
|
+
if (e && typeof e === 'object' && 'default' in e) return e;
|
|
10
|
+
const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
|
|
11
|
+
if (e) {
|
|
12
|
+
for (const k in e) {
|
|
13
|
+
n[k] = e[k];
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
n.default = e;
|
|
17
|
+
return n;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const createHttpError__default = /*#__PURE__*/_interopDefaultCompat(createHttpError);
|
|
21
|
+
const z__namespace = /*#__PURE__*/_interopNamespaceCompat(z);
|
|
22
|
+
|
|
23
|
+
const withZod = (schema, handler) => async (request, response, next) => {
|
|
24
|
+
let transformedRequest;
|
|
25
|
+
try {
|
|
26
|
+
transformedRequest = await schema.parseAsync(request);
|
|
27
|
+
} catch (error) {
|
|
28
|
+
const message = error instanceof z__namespace.ZodError && typeof error.format === "function" ? error.issues.map((issue) => `${issue.path.join("/")} - ${issue.message}`).join("/n") : error.message;
|
|
29
|
+
throw createHttpError__default(422, message);
|
|
30
|
+
}
|
|
31
|
+
return handler(transformedRequest, response, next);
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
module.exports = withZod;
|
package/package.json
CHANGED
|
@@ -1,20 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@visulima/connect",
|
|
3
|
-
"version": "4.0.0-alpha.
|
|
3
|
+
"version": "4.0.0-alpha.11",
|
|
4
4
|
"description": "The minimal router and middleware layer for Next.js, Micro, Vercel, or Node.js http/http2 with support for zod validation.",
|
|
5
5
|
"keywords": [
|
|
6
|
+
"connect",
|
|
7
|
+
"http",
|
|
8
|
+
"http2",
|
|
6
9
|
"javascript",
|
|
7
|
-
"nextjs",
|
|
8
10
|
"middleware",
|
|
11
|
+
"nextjs",
|
|
12
|
+
"node",
|
|
9
13
|
"router",
|
|
10
|
-
"connect",
|
|
11
14
|
"vercel",
|
|
12
|
-
"
|
|
13
|
-
"http",
|
|
14
|
-
"http2",
|
|
15
|
+
"visulima",
|
|
15
16
|
"zod"
|
|
16
17
|
],
|
|
17
|
-
"homepage": "https://
|
|
18
|
+
"homepage": "https://visulima.com/packages/connect/",
|
|
18
19
|
"bugs": {
|
|
19
20
|
"url": "https://github.com/visulima/visulima/issues"
|
|
20
21
|
},
|
|
@@ -74,10 +75,10 @@
|
|
|
74
75
|
"regexparam": "^3.0.0"
|
|
75
76
|
},
|
|
76
77
|
"peerDependencies": {
|
|
77
|
-
"zod": "
|
|
78
|
+
"zod": "4.4.1"
|
|
78
79
|
},
|
|
79
80
|
"engines": {
|
|
80
|
-
"node": "
|
|
81
|
+
"node": "^22.14.0 || >=24.10.0"
|
|
81
82
|
},
|
|
82
83
|
"os": [
|
|
83
84
|
"darwin",
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { IncomingMessage, ServerResponse } from "node:http";
|
|
2
|
-
import type { RequestHandler } from "../node.d.cts";
|
|
3
|
-
import type { Nextable } from "../types.d.d.cts";
|
|
4
|
-
type NextFunction = (error?: any) => void;
|
|
5
|
-
declare const expressWrapper: <Request extends IncomingMessage, Response extends ServerResponse>(function_: ExpressRequestHandler<Request, Response>) => Nextable<RequestHandler<Request, Response>>;
|
|
6
|
-
export type ExpressRequestHandler<Request, Response> = (request: Request, response: Response, next: NextFunction) => void;
|
|
7
|
-
export = expressWrapper;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { IncomingMessage, ServerResponse } from "node:http";
|
|
2
|
-
import type { RequestHandler } from "../node.d.mts";
|
|
3
|
-
import type { Nextable } from "../types.d.d.mts";
|
|
4
|
-
type NextFunction = (error?: any) => void;
|
|
5
|
-
declare const expressWrapper: <Request extends IncomingMessage, Response extends ServerResponse>(function_: ExpressRequestHandler<Request, Response>) => Nextable<RequestHandler<Request, Response>>;
|
|
6
|
-
export type ExpressRequestHandler<Request, Response> = (request: Request, response: Response, next: NextFunction) => void;
|
|
7
|
-
export default expressWrapper;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { IncomingMessage, ServerResponse } from "node:http";
|
|
2
|
-
import type { RequestHandler } from "../node.d.ts";
|
|
3
|
-
import type { Nextable } from "../types.d.d.ts";
|
|
4
|
-
type NextFunction = (error?: any) => void;
|
|
5
|
-
declare const expressWrapper: <Request extends IncomingMessage, Response extends ServerResponse>(function_: ExpressRequestHandler<Request, Response>) => Nextable<RequestHandler<Request, Response>>;
|
|
6
|
-
export type ExpressRequestHandler<Request, Response> = (request: Request, response: Response, next: NextFunction) => void;
|
|
7
|
-
export = expressWrapper;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { ZodObject } from "zod";
|
|
2
|
-
import type { Nextable, NextHandler } from "../types.d.d.cts";
|
|
3
|
-
declare const withZod: <Request, Response, Handler extends Nextable<any>, Schema extends ZodObject<{
|
|
4
|
-
body?: ZodObject<any>;
|
|
5
|
-
headers?: ZodObject<any>;
|
|
6
|
-
query?: ZodObject<any>;
|
|
7
|
-
}>>(schema: Schema, handler: Handler) => (request: Request, response: Response, next: NextHandler) => Promise<Response>;
|
|
8
|
-
export = withZod;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { ZodObject } from "zod";
|
|
2
|
-
import type { Nextable, NextHandler } from "../types.d.d.mts";
|
|
3
|
-
declare const withZod: <Request, Response, Handler extends Nextable<any>, Schema extends ZodObject<{
|
|
4
|
-
body?: ZodObject<any>;
|
|
5
|
-
headers?: ZodObject<any>;
|
|
6
|
-
query?: ZodObject<any>;
|
|
7
|
-
}>>(schema: Schema, handler: Handler) => (request: Request, response: Response, next: NextHandler) => Promise<Response>;
|
|
8
|
-
export default withZod;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { ZodObject } from "zod";
|
|
2
|
-
import type { Nextable, NextHandler } from "../types.d.d.ts";
|
|
3
|
-
declare const withZod: <Request, Response, Handler extends Nextable<any>, Schema extends ZodObject<{
|
|
4
|
-
body?: ZodObject<any>;
|
|
5
|
-
headers?: ZodObject<any>;
|
|
6
|
-
query?: ZodObject<any>;
|
|
7
|
-
}>>(schema: Schema, handler: Handler) => (request: Request, response: Response, next: NextHandler) => Promise<Response>;
|
|
8
|
-
export = withZod;
|
package/dist/edge.d.cts
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import type { ZodObject } from "zod";
|
|
2
|
-
import type { Route } from "./router.d.cts";
|
|
3
|
-
import type { FunctionLike, HandlerOptions, Nextable, RouteMatch, RoutesExtendedRequestHandler, RouteShortcutMethod, ValueOrPromise } from "./types.d.d.cts";
|
|
4
|
-
export declare const getPathname: (request: Request & {
|
|
5
|
-
nextUrl?: URL;
|
|
6
|
-
}) => string;
|
|
7
|
-
export type RequestHandler<R extends Request, Context> = (request: R, context_: Context) => ValueOrPromise<Response | void>;
|
|
8
|
-
export declare class EdgeRouter<R extends Request = Request, Context = unknown, RResponse extends Response = Response, Schema extends ZodObject<any> = ZodObject<any>> {
|
|
9
|
-
all: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
10
|
-
connect: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
11
|
-
delete: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
12
|
-
get: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
13
|
-
head: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
14
|
-
options: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
15
|
-
patch: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
16
|
-
post: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
17
|
-
put: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
18
|
-
trace: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
19
|
-
private readonly onError;
|
|
20
|
-
private readonly onNoMatch;
|
|
21
|
-
private router;
|
|
22
|
-
constructor(options?: HandlerOptions<RoutesExtendedRequestHandler<R, Context, RResponse, Route<Nextable<FunctionLike>>[]>>);
|
|
23
|
-
clone(): EdgeRouter<R, Context, RResponse, Schema>;
|
|
24
|
-
handler(): (request: R, context_: Context) => Promise<any> | ReturnType<FunctionLike> | ValueOrPromise<RResponse>;
|
|
25
|
-
run(request: R, context_: Context): Promise<unknown>;
|
|
26
|
-
use(base: EdgeRouter<R, Context> | Nextable<RequestHandler<R, Context>> | RouteMatch, ...fns: (EdgeRouter<R, Context> | Nextable<RequestHandler<R, Context>>)[]): this;
|
|
27
|
-
private add;
|
|
28
|
-
private prepareRequest;
|
|
29
|
-
}
|
|
30
|
-
export declare const createEdgeRouter: <R extends Request, Context>(options?: HandlerOptions<RoutesExtendedRequestHandler<R, Context, Response, Route<Nextable<FunctionLike>>[]>>) => EdgeRouter<R, Context>;
|
package/dist/edge.d.mts
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import type { ZodObject } from "zod";
|
|
2
|
-
import type { Route } from "./router.d.mts";
|
|
3
|
-
import type { FunctionLike, HandlerOptions, Nextable, RouteMatch, RoutesExtendedRequestHandler, RouteShortcutMethod, ValueOrPromise } from "./types.d.d.mts";
|
|
4
|
-
export declare const getPathname: (request: Request & {
|
|
5
|
-
nextUrl?: URL;
|
|
6
|
-
}) => string;
|
|
7
|
-
export type RequestHandler<R extends Request, Context> = (request: R, context_: Context) => ValueOrPromise<Response | void>;
|
|
8
|
-
export declare class EdgeRouter<R extends Request = Request, Context = unknown, RResponse extends Response = Response, Schema extends ZodObject<any> = ZodObject<any>> {
|
|
9
|
-
all: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
10
|
-
connect: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
11
|
-
delete: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
12
|
-
get: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
13
|
-
head: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
14
|
-
options: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
15
|
-
patch: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
16
|
-
post: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
17
|
-
put: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
18
|
-
trace: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
19
|
-
private readonly onError;
|
|
20
|
-
private readonly onNoMatch;
|
|
21
|
-
private router;
|
|
22
|
-
constructor(options?: HandlerOptions<RoutesExtendedRequestHandler<R, Context, RResponse, Route<Nextable<FunctionLike>>[]>>);
|
|
23
|
-
clone(): EdgeRouter<R, Context, RResponse, Schema>;
|
|
24
|
-
handler(): (request: R, context_: Context) => Promise<any> | ReturnType<FunctionLike> | ValueOrPromise<RResponse>;
|
|
25
|
-
run(request: R, context_: Context): Promise<unknown>;
|
|
26
|
-
use(base: EdgeRouter<R, Context> | Nextable<RequestHandler<R, Context>> | RouteMatch, ...fns: (EdgeRouter<R, Context> | Nextable<RequestHandler<R, Context>>)[]): this;
|
|
27
|
-
private add;
|
|
28
|
-
private prepareRequest;
|
|
29
|
-
}
|
|
30
|
-
export declare const createEdgeRouter: <R extends Request, Context>(options?: HandlerOptions<RoutesExtendedRequestHandler<R, Context, Response, Route<Nextable<FunctionLike>>[]>>) => EdgeRouter<R, Context>;
|
package/dist/edge.d.ts
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import type { ZodObject } from "zod";
|
|
2
|
-
import type { Route } from "./router.d.ts";
|
|
3
|
-
import type { FunctionLike, HandlerOptions, Nextable, RouteMatch, RoutesExtendedRequestHandler, RouteShortcutMethod, ValueOrPromise } from "./types.d.d.ts";
|
|
4
|
-
export declare const getPathname: (request: Request & {
|
|
5
|
-
nextUrl?: URL;
|
|
6
|
-
}) => string;
|
|
7
|
-
export type RequestHandler<R extends Request, Context> = (request: R, context_: Context) => ValueOrPromise<Response | void>;
|
|
8
|
-
export declare class EdgeRouter<R extends Request = Request, Context = unknown, RResponse extends Response = Response, Schema extends ZodObject<any> = ZodObject<any>> {
|
|
9
|
-
all: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
10
|
-
connect: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
11
|
-
delete: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
12
|
-
get: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
13
|
-
head: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
14
|
-
options: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
15
|
-
patch: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
16
|
-
post: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
17
|
-
put: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
18
|
-
trace: RouteShortcutMethod<this, Schema, RequestHandler<R, Context>>;
|
|
19
|
-
private readonly onError;
|
|
20
|
-
private readonly onNoMatch;
|
|
21
|
-
private router;
|
|
22
|
-
constructor(options?: HandlerOptions<RoutesExtendedRequestHandler<R, Context, RResponse, Route<Nextable<FunctionLike>>[]>>);
|
|
23
|
-
clone(): EdgeRouter<R, Context, RResponse, Schema>;
|
|
24
|
-
handler(): (request: R, context_: Context) => Promise<any> | ReturnType<FunctionLike> | ValueOrPromise<RResponse>;
|
|
25
|
-
run(request: R, context_: Context): Promise<unknown>;
|
|
26
|
-
use(base: EdgeRouter<R, Context> | Nextable<RequestHandler<R, Context>> | RouteMatch, ...fns: (EdgeRouter<R, Context> | Nextable<RequestHandler<R, Context>>)[]): this;
|
|
27
|
-
private add;
|
|
28
|
-
private prepareRequest;
|
|
29
|
-
}
|
|
30
|
-
export declare const createEdgeRouter: <R extends Request, Context>(options?: HandlerOptions<RoutesExtendedRequestHandler<R, Context, Response, Route<Nextable<FunctionLike>>[]>>) => EdgeRouter<R, Context>;
|
package/dist/node.d.cts
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import type { IncomingMessage, ServerResponse } from "node:http";
|
|
2
|
-
import type { ZodObject } from "zod";
|
|
3
|
-
import type { Route } from "./router.d.cts";
|
|
4
|
-
import type { FunctionLike, HandlerOptions, Nextable, RouteMatch, RoutesExtendedRequestHandler, RouteShortcutMethod, ValueOrPromise } from "./types.d.d.cts";
|
|
5
|
-
export declare const getPathname: (url: string) => string;
|
|
6
|
-
export type RequestHandler<Request extends IncomingMessage, Response extends ServerResponse> = (request: Request, response: Response) => ValueOrPromise<void>;
|
|
7
|
-
export declare class NodeRouter<Request extends IncomingMessage = IncomingMessage, Response extends ServerResponse = ServerResponse, Schema extends ZodObject<any> = ZodObject<never>> {
|
|
8
|
-
all: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
9
|
-
connect: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
10
|
-
delete: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
11
|
-
get: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
12
|
-
head: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
13
|
-
options: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
14
|
-
patch: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
15
|
-
post: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
16
|
-
put: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
17
|
-
trace: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
18
|
-
private readonly onError;
|
|
19
|
-
private readonly onNoMatch;
|
|
20
|
-
private router;
|
|
21
|
-
constructor(options?: HandlerOptions<RoutesExtendedRequestHandler<Request, Response, Response, Route<Nextable<FunctionLike>>[]>>);
|
|
22
|
-
clone(): NodeRouter<Request, Response, Schema>;
|
|
23
|
-
handler(): (request: Request, response: Response) => Promise<void>;
|
|
24
|
-
run(request: Request, response: Response): Promise<unknown>;
|
|
25
|
-
use(base: Nextable<RequestHandler<Request, Response>> | NodeRouter<Request, Response, Schema> | RouteMatch, ...fns: (Nextable<RequestHandler<Request, Response>> | NodeRouter<Request, Response, Schema>)[]): this;
|
|
26
|
-
private add;
|
|
27
|
-
private prepareRequest;
|
|
28
|
-
}
|
|
29
|
-
export declare const createRouter: <Request extends IncomingMessage, Response extends ServerResponse, Schema extends ZodObject<any> = ZodObject<{
|
|
30
|
-
body?: ZodObject<any>;
|
|
31
|
-
headers?: ZodObject<any>;
|
|
32
|
-
query?: ZodObject<any>;
|
|
33
|
-
}>>(options?: HandlerOptions<RoutesExtendedRequestHandler<Request, Response, Response, Route<Nextable<FunctionLike>>[]>>) => NodeRouter<Request, Response, Schema>;
|
package/dist/node.d.mts
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import type { IncomingMessage, ServerResponse } from "node:http";
|
|
2
|
-
import type { ZodObject } from "zod";
|
|
3
|
-
import type { Route } from "./router.d.mts";
|
|
4
|
-
import type { FunctionLike, HandlerOptions, Nextable, RouteMatch, RoutesExtendedRequestHandler, RouteShortcutMethod, ValueOrPromise } from "./types.d.d.mts";
|
|
5
|
-
export declare const getPathname: (url: string) => string;
|
|
6
|
-
export type RequestHandler<Request extends IncomingMessage, Response extends ServerResponse> = (request: Request, response: Response) => ValueOrPromise<void>;
|
|
7
|
-
export declare class NodeRouter<Request extends IncomingMessage = IncomingMessage, Response extends ServerResponse = ServerResponse, Schema extends ZodObject<any> = ZodObject<never>> {
|
|
8
|
-
all: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
9
|
-
connect: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
10
|
-
delete: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
11
|
-
get: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
12
|
-
head: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
13
|
-
options: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
14
|
-
patch: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
15
|
-
post: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
16
|
-
put: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
17
|
-
trace: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
18
|
-
private readonly onError;
|
|
19
|
-
private readonly onNoMatch;
|
|
20
|
-
private router;
|
|
21
|
-
constructor(options?: HandlerOptions<RoutesExtendedRequestHandler<Request, Response, Response, Route<Nextable<FunctionLike>>[]>>);
|
|
22
|
-
clone(): NodeRouter<Request, Response, Schema>;
|
|
23
|
-
handler(): (request: Request, response: Response) => Promise<void>;
|
|
24
|
-
run(request: Request, response: Response): Promise<unknown>;
|
|
25
|
-
use(base: Nextable<RequestHandler<Request, Response>> | NodeRouter<Request, Response, Schema> | RouteMatch, ...fns: (Nextable<RequestHandler<Request, Response>> | NodeRouter<Request, Response, Schema>)[]): this;
|
|
26
|
-
private add;
|
|
27
|
-
private prepareRequest;
|
|
28
|
-
}
|
|
29
|
-
export declare const createRouter: <Request extends IncomingMessage, Response extends ServerResponse, Schema extends ZodObject<any> = ZodObject<{
|
|
30
|
-
body?: ZodObject<any>;
|
|
31
|
-
headers?: ZodObject<any>;
|
|
32
|
-
query?: ZodObject<any>;
|
|
33
|
-
}>>(options?: HandlerOptions<RoutesExtendedRequestHandler<Request, Response, Response, Route<Nextable<FunctionLike>>[]>>) => NodeRouter<Request, Response, Schema>;
|
package/dist/node.d.ts
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import type { IncomingMessage, ServerResponse } from "node:http";
|
|
2
|
-
import type { ZodObject } from "zod";
|
|
3
|
-
import type { Route } from "./router.d.ts";
|
|
4
|
-
import type { FunctionLike, HandlerOptions, Nextable, RouteMatch, RoutesExtendedRequestHandler, RouteShortcutMethod, ValueOrPromise } from "./types.d.d.ts";
|
|
5
|
-
export declare const getPathname: (url: string) => string;
|
|
6
|
-
export type RequestHandler<Request extends IncomingMessage, Response extends ServerResponse> = (request: Request, response: Response) => ValueOrPromise<void>;
|
|
7
|
-
export declare class NodeRouter<Request extends IncomingMessage = IncomingMessage, Response extends ServerResponse = ServerResponse, Schema extends ZodObject<any> = ZodObject<never>> {
|
|
8
|
-
all: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
9
|
-
connect: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
10
|
-
delete: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
11
|
-
get: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
12
|
-
head: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
13
|
-
options: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
14
|
-
patch: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
15
|
-
post: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
16
|
-
put: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
17
|
-
trace: RouteShortcutMethod<this, Schema, RequestHandler<Request, Response>>;
|
|
18
|
-
private readonly onError;
|
|
19
|
-
private readonly onNoMatch;
|
|
20
|
-
private router;
|
|
21
|
-
constructor(options?: HandlerOptions<RoutesExtendedRequestHandler<Request, Response, Response, Route<Nextable<FunctionLike>>[]>>);
|
|
22
|
-
clone(): NodeRouter<Request, Response, Schema>;
|
|
23
|
-
handler(): (request: Request, response: Response) => Promise<void>;
|
|
24
|
-
run(request: Request, response: Response): Promise<unknown>;
|
|
25
|
-
use(base: Nextable<RequestHandler<Request, Response>> | NodeRouter<Request, Response, Schema> | RouteMatch, ...fns: (Nextable<RequestHandler<Request, Response>> | NodeRouter<Request, Response, Schema>)[]): this;
|
|
26
|
-
private add;
|
|
27
|
-
private prepareRequest;
|
|
28
|
-
}
|
|
29
|
-
export declare const createRouter: <Request extends IncomingMessage, Response extends ServerResponse, Schema extends ZodObject<any> = ZodObject<{
|
|
30
|
-
body?: ZodObject<any>;
|
|
31
|
-
headers?: ZodObject<any>;
|
|
32
|
-
query?: ZodObject<any>;
|
|
33
|
-
}>>(options?: HandlerOptions<RoutesExtendedRequestHandler<Request, Response, Response, Route<Nextable<FunctionLike>>[]>>) => NodeRouter<Request, Response, Schema>;
|