@kaito-http/core 2.3.0 → 2.3.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.
@@ -1,3 +1,4 @@
1
+ export type { HTTPMethod } from 'find-my-way';
1
2
  export * from './server';
2
3
  export * from './router';
3
4
  export * from './route';
@@ -6,7 +6,7 @@ export declare type RouteArgument<Path extends string, Context, Input extends z.
6
6
  input: z.infer<Input>;
7
7
  params: ExtractRouteParams<Path>;
8
8
  };
9
- export interface Route<Result, Path extends string, Method extends HTTPMethod, Context, Input extends z.ZodSchema = never> {
9
+ export interface Route<Result, Path extends string, Method extends HTTPMethod, Context, Input extends z.ZodSchema> {
10
10
  input?: Input;
11
11
  method: Method;
12
12
  run(arg: RouteArgument<Path, Context, Input>): Promise<Result>;
@@ -16,9 +16,7 @@ export declare class Router<Context, Routes extends RoutesInit<Context>> {
16
16
  readonly put: <Result, Path extends string, Input extends z.ZodType<any, z.ZodTypeDef, any> = never>(path: (Path extends `${infer U}/` ? U : Path) extends `/${infer U_1}` ? `/${U_1}` : `/${Path extends `${infer U}/` ? U : Path}`, route: Omit<Route<Result, (Path extends `${infer U}/` ? U : Path) extends `/${infer U_1}` ? `/${U_1}` : `/${Path extends `${infer U}/` ? U : Path}`, "PUT", Context, Input>, "method">) => Router<Context, Routes & { [P in Path as (P extends `${infer U}/` ? U : P) extends `/${infer U_1}` ? `/${U_1}` : `/${P extends `${infer U}/` ? U : P}`]: Route<Result, (P extends `${infer U}/` ? U : P) extends `/${infer U_1}` ? `/${U_1}` : `/${P extends `${infer U}/` ? U : P}`, "PUT", Context, Input>; }>;
17
17
  readonly patch: <Result, Path extends string, Input extends z.ZodType<any, z.ZodTypeDef, any> = never>(path: (Path extends `${infer U}/` ? U : Path) extends `/${infer U_1}` ? `/${U_1}` : `/${Path extends `${infer U}/` ? U : Path}`, route: Omit<Route<Result, (Path extends `${infer U}/` ? U : Path) extends `/${infer U_1}` ? `/${U_1}` : `/${Path extends `${infer U}/` ? U : Path}`, "PATCH", Context, Input>, "method">) => Router<Context, Routes & { [P in Path as (P extends `${infer U}/` ? U : P) extends `/${infer U_1}` ? `/${U_1}` : `/${P extends `${infer U}/` ? U : P}`]: Route<Result, (P extends `${infer U}/` ? U : P) extends `/${infer U_1}` ? `/${U_1}` : `/${P extends `${infer U}/` ? U : P}`, "PATCH", Context, Input>; }>;
18
18
  private constructor();
19
- merge<Prefix extends string, NewRoutes extends RoutesInit<Context>>(prefix: NormalizePath<Prefix>, router: Router<Context, NewRoutes>): Router<Context, Routes & { [Path in Extract<keyof NewRoutes, string> as (`${Prefix}${Path}` extends `${infer U}/` ? U : `${Prefix}${Path}`) extends `/${infer U_1}` ? `/${U_1}` : `/${`${Prefix}${Path}` extends `${infer U}/` ? U : `${Prefix}${Path}`}`]: NewRoutes[Path] & {
20
- path: Path;
21
- }; }>;
19
+ merge<Prefix extends string, NewRoutes extends RoutesInit<Context>>(prefix: NormalizePath<Prefix>, router: Router<Context, NewRoutes>): Router<Context, Routes & { [Path in Extract<keyof NewRoutes, string> as `/${Prefix}${Path}`]: NewRoutes[Path] extends Route<infer Result, infer Path_1, infer Method, infer Context_1, infer Input> ? Route<Result, `/${Prefix}${Path_1}`, Method, Context_1, Input> : never; }>;
22
20
  toFindMyWay(server: ServerConfig<Context>): Instance<fmw.HTTPVersion.V1>;
23
21
  private make;
24
22
  }
@@ -371,6 +371,8 @@ class Router {
371
371
  var _this = this;
372
372
 
373
373
  var instance = fmw__default["default"]({
374
+ ignoreTrailingSlash: true,
375
+
374
376
  defaultRoute(req, serverResponse) {
375
377
  var _req$url;
376
378
 
@@ -371,6 +371,8 @@ class Router {
371
371
  var _this = this;
372
372
 
373
373
  var instance = fmw__default["default"]({
374
+ ignoreTrailingSlash: true,
375
+
374
376
  defaultRoute(req, serverResponse) {
375
377
  var _req$url;
376
378
 
@@ -343,6 +343,8 @@ class Router {
343
343
  var _this = this;
344
344
 
345
345
  var instance = fmw({
346
+ ignoreTrailingSlash: true,
347
+
346
348
  defaultRoute(req, serverResponse) {
347
349
  var _req$url;
348
350
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kaito-http/core",
3
- "version": "2.3.0",
3
+ "version": "2.3.3",
4
4
  "description": "Functional HTTP Framework for TypeScript",
5
5
  "repository": "https://github.com/kaito-http/kaito",
6
6
  "author": "Alistair Smith <hi@alistair.sh>",