ctx-router 1.0.2 → 1.0.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/README.md CHANGED
@@ -44,7 +44,7 @@ router.onError(async (ctx, error) => {
44
44
  });
45
45
 
46
46
  // Execute routes
47
- const result = await router.exec("GET", "/hello", context);
47
+ const result = await router.exec(ctx);
48
48
  ```
49
49
 
50
50
  ### Express.js Integration
@@ -91,7 +91,7 @@ function getHttpCode(ctx: TCtx) {
91
91
 
92
92
  app.all("/{*any}", async (req: Request, res: Response) => {
93
93
  const ctx: TCtx = toCtx.fromExpress(req);
94
- await router.exec(ctx.req.method, ctx.req.path, ctx);
94
+ await router.exec(ctx);
95
95
  res.type("application/json").status(getHttpCode(ctx)).send(ctx.res);
96
96
  });
97
97
 
@@ -6,7 +6,7 @@ export declare class CtxRouter<TContext extends TCtx> {
6
6
  private beforeExecHandler;
7
7
  private onFinallyHandler;
8
8
  beforeExec(handler: (ctx: TContext) => Promise<TContext>): void;
9
- exec(method: string, path: string, ctx: TContext): Promise<TContext>;
9
+ exec(ctx: TContext): Promise<TContext>;
10
10
  handle(method: string, path: string, handler: (ctx: TContext) => Promise<TContext>): void;
11
11
  onError(handler: (ctx: TContext, error: CtxError | Error | unknown) => Promise<TContext>): void;
12
12
  onFinally(handler: (ctx: TContext) => Promise<TContext>): void;
@@ -1 +1 @@
1
- {"version":3,"file":"ctx.router.d.ts","sourceRoot":"","sources":["../../src/ctx/ctx.router.ts"],"names":[],"mappings":"AAEA,OAAO,EAAU,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAOnC,qBAAa,SAAS,CAAC,QAAQ,SAAS,IAAI;IAC1C,OAAO,CAAC,QAAQ,CAA2B;IAC3C,OAAO,CAAC,cAAc,CAG2B;IACjD,OAAO,CAAC,iBAAiB,CACI;IAC7B,OAAO,CAAC,gBAAgB,CAItB;IAEF,UAAU,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC;IAIlD,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAiB1E,MAAM,CACJ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC;IAM/C,OAAO,CACL,OAAO,EAAE,CACP,GAAG,EAAE,QAAQ,EACb,KAAK,EAAE,QAAQ,GAAG,KAAK,GAAG,OAAO,KAC9B,OAAO,CAAC,QAAQ,CAAC;IAIxB,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC;CAGxD"}
1
+ {"version":3,"file":"ctx.router.d.ts","sourceRoot":"","sources":["../../src/ctx/ctx.router.ts"],"names":[],"mappings":"AAEA,OAAO,EAAU,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAOnC,qBAAa,SAAS,CAAC,QAAQ,SAAS,IAAI;IAC1C,OAAO,CAAC,QAAQ,CAA2B;IAC3C,OAAO,CAAC,cAAc,CAG2B;IACjD,OAAO,CAAC,iBAAiB,CACI;IAC7B,OAAO,CAAC,gBAAgB,CAItB;IAEF,UAAU,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC;IAIlD,IAAI,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAiB5C,MAAM,CACJ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC;IAM/C,OAAO,CACL,OAAO,EAAE,CACP,GAAG,EAAE,QAAQ,EACb,KAAK,EAAE,QAAQ,GAAG,KAAK,GAAG,OAAO,KAC9B,OAAO,CAAC,QAAQ,CAAC;IAIxB,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC;CAGxD"}
@@ -16,13 +16,13 @@ class CtxRouter {
16
16
  beforeExec(handler) {
17
17
  this.beforeExecHandler = handler;
18
18
  }
19
- async exec(method, path, ctx) {
19
+ async exec(ctx) {
20
20
  try {
21
21
  await this.beforeExecHandler(ctx);
22
- const handler = this.routeObj[method]?.[path];
22
+ const handler = this.routeObj[ctx.req.method]?.[ctx.req.path];
23
23
  if (!handler) {
24
24
  throw ctx_err_1.ctxErr.general.handlerNotFound({
25
- data: { method, path },
25
+ data: { method: ctx.req.method, path: ctx.req.path },
26
26
  });
27
27
  }
28
28
  return await handler(ctx);
@@ -1 +1 @@
1
- {"version":3,"file":"ctx.router.js","sourceRoot":"","sources":["../../src/ctx/ctx.router.ts"],"names":[],"mappings":";;;AAAA,2EAAuE;AACvE,qEAAiE;AACjE,uCAA6C;AAQ7C,MAAa,SAAS;IAAtB;QACU,aAAQ,GAAwB,EAAE,CAAC;QACnC,mBAAc,GAGG,CAAA,8BAAuB,CAAA,CAAC;QACzC,sBAAiB,GACvB,CAAA,oCAA0B,CAAA,CAAC;QACrB,qBAAgB,GAAyC,KAAK,EACpE,GAAG,EACH,EAAE;YACF,OAAO,GAAG,CAAC;QACb,CAAC,CAAC;IA2CJ,CAAC;IAzCC,UAAU,CAAC,OAA6C;QACtD,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,IAAY,EAAE,GAAa;QACpD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YAC9C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,gBAAM,CAAC,OAAO,CAAC,eAAe,CAAC;oBACnC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;iBACvB,CAAC,CAAC;YACL,CAAC;YACD,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;gBAAS,CAAC;YACT,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,MAAM,CACJ,MAAc,EACd,IAAY,EACZ,OAA6C;QAE7C,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1E,WAAW,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;IAC9B,CAAC;IAED,OAAO,CACL,OAGsB;QAEtB,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;IAChC,CAAC;IACD,SAAS,CAAC,OAA6C;QACrD,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;IAClC,CAAC;CACF;AAvDD,8BAuDC"}
1
+ {"version":3,"file":"ctx.router.js","sourceRoot":"","sources":["../../src/ctx/ctx.router.ts"],"names":[],"mappings":";;;AAAA,2EAAuE;AACvE,qEAAiE;AACjE,uCAA6C;AAQ7C,MAAa,SAAS;IAAtB;QACU,aAAQ,GAAwB,EAAE,CAAC;QACnC,mBAAc,GAGG,CAAA,8BAAuB,CAAA,CAAC;QACzC,sBAAiB,GACvB,CAAA,oCAA0B,CAAA,CAAC;QACrB,qBAAgB,GAAyC,KAAK,EACpE,GAAG,EACH,EAAE;YACF,OAAO,GAAG,CAAC;QACb,CAAC,CAAC;IA2CJ,CAAC;IAzCC,UAAU,CAAC,OAA6C;QACtD,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAa;QACtB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC9D,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,gBAAM,CAAC,OAAO,CAAC,eAAe,CAAC;oBACnC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE;iBACrD,CAAC,CAAC;YACL,CAAC;YACD,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;gBAAS,CAAC;YACT,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,MAAM,CACJ,MAAc,EACd,IAAY,EACZ,OAA6C;QAE7C,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1E,WAAW,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;IAC9B,CAAC;IAED,OAAO,CACL,OAGsB;QAEtB,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;IAChC,CAAC;IACD,SAAS,CAAC,OAA6C;QACrD,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;IAClC,CAAC;CACF;AAvDD,8BAuDC"}
@@ -16,7 +16,7 @@ function getHttpCode(ctx) {
16
16
  }
17
17
  app.all("/{*any}", async (req, res) => {
18
18
  const ctx = __1.toCtx.fromExpress(req);
19
- await router_1.router.exec(ctx.req.method, ctx.req.path, ctx);
19
+ await router_1.router.exec(ctx);
20
20
  res.type("application/json").status(getHttpCode(ctx)).send(ctx.res);
21
21
  });
22
22
  app.listen(3000, () => {
@@ -1 +1 @@
1
- {"version":3,"file":"express.js","sourceRoot":"","sources":["../../src/example/express.ts"],"names":[],"mappings":";;;;;AAAA,sDAAqD;AACrD,0BAAiC;AACjC,qCAAkC;AAElC,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;AAEtB,SAAS,WAAW,CAAC,GAAS;IAC5B,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI;QAAE,OAAO,GAAG,CAAC;IACtC,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,eAAe;QAAE,OAAO,GAAG,CAAC;IACjD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;IACvD,MAAM,GAAG,GAAS,SAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACzC,MAAM,eAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACrD,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACtE,CAAC,CAAC,CAAC;AAEH,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;IACpB,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;AACvD,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"express.js","sourceRoot":"","sources":["../../src/example/express.ts"],"names":[],"mappings":";;;;;AAAA,sDAAqD;AACrD,0BAAiC;AACjC,qCAAkC;AAElC,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;AAEtB,SAAS,WAAW,CAAC,GAAS;IAC5B,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI;QAAE,OAAO,GAAG,CAAC;IACtC,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,eAAe;QAAE,OAAO,GAAG,CAAC;IACjD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;IACvD,MAAM,GAAG,GAAS,SAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACzC,MAAM,eAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvB,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACtE,CAAC,CAAC,CAAC;AAEH,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;IACpB,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;AACvD,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ctx-router",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "description": "Context Router",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",