1
0
This commit is contained in:
2022-11-24 23:33:48 +01:00
parent 7fe0a5405f
commit 81dd03af27
2 changed files with 56 additions and 56 deletions

View File

@@ -33,13 +33,13 @@ import { Router } from '@tsndr/cloudflare-worker-router'
export interface Env { export interface Env {
// Example binding to KV. Learn more at https://developers.cloudflare.com/workers/runtime-apis/kv/ // Example binding to KV. Learn more at https://developers.cloudflare.com/workers/runtime-apis/kv/
// MY_KV_NAMESPACE: KVNamespace; // MY_KV_NAMESPACE: KVNamespace
// //
// Example binding to Durable Object. Learn more at https://developers.cloudflare.com/workers/runtime-apis/durable-objects/ // Example binding to Durable Object. Learn more at https://developers.cloudflare.com/workers/runtime-apis/durable-objects/
// MY_DURABLE_OBJECT: DurableObjectNamespace; // MY_DURABLE_OBJECT: DurableObjectNamespace
// //
// Example binding to R2. Learn more at https://developers.cloudflare.com/workers/runtime-apis/r2/ // Example binding to R2. Learn more at https://developers.cloudflare.com/workers/runtime-apis/r2/
// MY_BUCKET: R2Bucket; // MY_BUCKET: R2Bucket
} }
@@ -305,13 +305,13 @@ import { Router } from '@tsndr/cloudflare-worker-router'
export interface Env { export interface Env {
// Example binding to KV. Learn more at https://developers.cloudflare.com/workers/runtime-apis/kv/ // Example binding to KV. Learn more at https://developers.cloudflare.com/workers/runtime-apis/kv/
// MY_KV_NAMESPACE: KVNamespace; // MY_KV_NAMESPACE: KVNamespace
// //
// Example binding to Durable Object. Learn more at https://developers.cloudflare.com/workers/runtime-apis/durable-objects/ // Example binding to Durable Object. Learn more at https://developers.cloudflare.com/workers/runtime-apis/durable-objects/
// MY_DURABLE_OBJECT: DurableObjectNamespace; // MY_DURABLE_OBJECT: DurableObjectNamespace
// //
// Example binding to R2. Learn more at https://developers.cloudflare.com/workers/runtime-apis/r2/ // Example binding to R2. Learn more at https://developers.cloudflare.com/workers/runtime-apis/r2/
// MY_BUCKET: R2Bucket; // MY_BUCKET: R2Bucket
} }
const router = new Router<Env>() const router = new Router<Env>()

View File

@@ -1,6 +1,6 @@
/** /**
* Route Object * Route Object
* *
* @typedef Route * @typedef Route
* @property {string} method HTTP request method * @property {string} method HTTP request method
* @property {string} url URL String * @property {string} url URL String
@@ -14,7 +14,7 @@
/** /**
* Router Context * Router Context
* *
* @typedef RouterContext * @typedef RouterContext
* @property {RouterEnv} env Environment * @property {RouterEnv} env Environment
* @property {RouterRequest} req Request Object * @property {RouterRequest} req Request Object
@@ -30,7 +30,7 @@ export interface RouterContext<TEnv> {
/** /**
* Request Object * Request Object
* *
* @typedef RouterRequest * @typedef RouterRequest
* @property {string} url URL * @property {string} url URL
* @property {string} method HTTP request method * @property {string} method HTTP request method
@@ -53,7 +53,7 @@ export interface RouterRequest {
/** /**
* Request Parameters * Request Parameters
* *
* @typedef RouterRequestParams * @typedef RouterRequestParams
*/ */
export interface RouterRequestParams { export interface RouterRequestParams {
@@ -62,7 +62,7 @@ export interface RouterRequestParams {
/** /**
* Request Query * Request Query
* *
* @typedef RouterRequestQuery * @typedef RouterRequestQuery
*/ */
export interface RouterRequestQuery { export interface RouterRequestQuery {
@@ -71,7 +71,7 @@ export interface RouterRequestQuery {
/** /**
* Response Object * Response Object
* *
* @typedef RouterResponse * @typedef RouterResponse
* @property {Headers} headers Response headers object * @property {Headers} headers Response headers object
* @property {number} [status=204] Return status code (default: `204`) * @property {number} [status=204] Return status code (default: `204`)
@@ -88,7 +88,7 @@ export interface RouterResponse {
/** /**
* Next Function * Next Function
* *
* @callback RouterNext * @callback RouterNext
* @returns {Promise<void>} * @returns {Promise<void>}
*/ */
@@ -98,7 +98,7 @@ export interface RouterNext {
/** /**
* Handler Function * Handler Function
* *
* @callback RouterHandler * @callback RouterHandler
* @param {RouterContext} ctx * @param {RouterContext} ctx
* @returns {Promise<void> | void} * @returns {Promise<void> | void}
@@ -109,7 +109,7 @@ export interface RouterHandler<TEnv = any> {
/** /**
* CORS Config * CORS Config
* *
* @typedef RouterCorsConfig * @typedef RouterCorsConfig
* @property {string} [allowOrigin="*"] Access-Control-Allow-Origin (default: `*`) * @property {string} [allowOrigin="*"] Access-Control-Allow-Origin (default: `*`)
* @property {string} [allowMethods="*"] Access-Control-Allow-Methods (default: `*`) * @property {string} [allowMethods="*"] Access-Control-Allow-Methods (default: `*`)
@@ -127,7 +127,7 @@ export interface RouterCorsConfig {
/** /**
* Router * Router
* *
* @public * @public
* @class * @class
*/ */
@@ -135,7 +135,7 @@ export class Router<TEnv = any> {
/** /**
* Router Array * Router Array
* *
* @protected * @protected
* @type {Route[]} * @type {Route[]}
*/ */
@@ -143,7 +143,7 @@ export class Router<TEnv = any> {
/** /**
* Global Handlers * Global Handlers
* *
* @protected * @protected
* @type {RouterHandler[]} * @type {RouterHandler[]}
*/ */
@@ -151,7 +151,7 @@ export class Router<TEnv = any> {
/** /**
* Debug Mode * Debug Mode
* *
* @protected * @protected
* @type {boolean} * @type {boolean}
*/ */
@@ -159,7 +159,7 @@ export class Router<TEnv = any> {
/** /**
* CORS Config * CORS Config
* *
* @protected * @protected
* @type {RouterCorsConfig} * @type {RouterCorsConfig}
*/ */
@@ -175,7 +175,7 @@ export class Router<TEnv = any> {
/** /**
* Register global handlers * Register global handlers
* *
* @param {RouterHandler[]} handlers * @param {RouterHandler[]} handlers
* @returns {Router} * @returns {Router}
*/ */
@@ -188,9 +188,9 @@ export class Router<TEnv = any> {
/** /**
* Register CONNECT route * Register CONNECT route
* *
* @param {string} url * @param {string} url
* @param {RouterHandler[]} handlers * @param {RouterHandler[]} handlers
* @returns {Router} * @returns {Router}
*/ */
public connect(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> { public connect(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> {
@@ -199,9 +199,9 @@ export class Router<TEnv = any> {
/** /**
* Register DELETE route * Register DELETE route
* *
* @param {string} url * @param {string} url
* @param {RouterHandler[]} handlers * @param {RouterHandler[]} handlers
* @returns {Router} * @returns {Router}
*/ */
public delete(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> { public delete(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> {
@@ -210,9 +210,9 @@ export class Router<TEnv = any> {
/** /**
* Register GET route * Register GET route
* *
* @param {string} url * @param {string} url
* @param {RouterHandler[]} handlers * @param {RouterHandler[]} handlers
* @returns {Router} * @returns {Router}
*/ */
public get(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> { public get(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> {
@@ -221,9 +221,9 @@ export class Router<TEnv = any> {
/** /**
* Register HEAD route * Register HEAD route
* *
* @param {string} url * @param {string} url
* @param {RouterHandler[]} handlers * @param {RouterHandler[]} handlers
* @returns {Router} * @returns {Router}
*/ */
public head(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> { public head(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> {
@@ -232,9 +232,9 @@ export class Router<TEnv = any> {
/** /**
* Register OPTIONS route * Register OPTIONS route
* *
* @param {string} url * @param {string} url
* @param {RouterHandler[]} handlers * @param {RouterHandler[]} handlers
* @returns {Router} * @returns {Router}
*/ */
public options(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> { public options(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> {
@@ -243,9 +243,9 @@ export class Router<TEnv = any> {
/** /**
* Register PATCH route * Register PATCH route
* *
* @param {string} url * @param {string} url
* @param {RouterHandler[]} handlers * @param {RouterHandler[]} handlers
* @returns {Router} * @returns {Router}
*/ */
public patch(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> { public patch(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> {
@@ -254,9 +254,9 @@ export class Router<TEnv = any> {
/** /**
* Register POST route * Register POST route
* *
* @param {string} url * @param {string} url
* @param {RouterHandler[]} handlers * @param {RouterHandler[]} handlers
* @returns {Router} * @returns {Router}
*/ */
public post(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> { public post(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> {
@@ -265,9 +265,9 @@ export class Router<TEnv = any> {
/** /**
* Register PUT route * Register PUT route
* *
* @param {string} url * @param {string} url
* @param {RouterHandler[]} handlers * @param {RouterHandler[]} handlers
* @returns {Router} * @returns {Router}
*/ */
public put(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> { public put(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> {
@@ -276,9 +276,9 @@ export class Router<TEnv = any> {
/** /**
* Register TRACE route * Register TRACE route
* *
* @param {string} url * @param {string} url
* @param {RouterHandler[]} handlers * @param {RouterHandler[]} handlers
* @returns {Router} * @returns {Router}
*/ */
public trace(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> { public trace(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> {
@@ -287,9 +287,9 @@ export class Router<TEnv = any> {
/** /**
* Register route, ignoring method * Register route, ignoring method
* *
* @param {string} url * @param {string} url
* @param {RouterHandler[]} handlers * @param {RouterHandler[]} handlers
* @returns {Router} * @returns {Router}
*/ */
public any(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> { public any(url: string, ...handlers: RouterHandler<TEnv>[]): Router<TEnv> {
@@ -298,7 +298,7 @@ export class Router<TEnv = any> {
/** /**
* Debug Mode * Debug Mode
* *
* @param {boolean} [state=true] Whether to turn on or off debug mode (default: true) * @param {boolean} [state=true] Whether to turn on or off debug mode (default: true)
* @returns {Router} * @returns {Router}
*/ */
@@ -309,7 +309,7 @@ export class Router<TEnv = any> {
/** /**
* Enable CORS support * Enable CORS support
* *
* @param {RouterCorsConfig} [config] * @param {RouterCorsConfig} [config]
* @returns {Router} * @returns {Router}
*/ */
@@ -327,7 +327,7 @@ export class Router<TEnv = any> {
/** /**
* Register route * Register route
* *
* @private * @private
* @param {string} method HTTP request method * @param {string} method HTTP request method
* @param {string} url URL String * @param {string} url URL String
@@ -346,7 +346,7 @@ export class Router<TEnv = any> {
/** /**
* Get Route by request * Get Route by request
* *
* @private * @private
* @param {RouterRequest} request * @param {RouterRequest} request
* @returns {Route | undefined} * @returns {Route | undefined}
@@ -387,7 +387,7 @@ export class Router<TEnv = any> {
/** /**
* Handle requests * Handle requests
* *
* @param {TEnv} env * @param {TEnv} env
* @param {Request} request * @param {Request} request
* @param {any} [extend] * @param {any} [extend]