Skip to content

Commit

Permalink
quote query segments
Browse files Browse the repository at this point in the history
fix #49
  • Loading branch information
tatethurston committed Aug 8, 2022
1 parent 694e0ce commit 41c1c6b
Show file tree
Hide file tree
Showing 5 changed files with 17 additions and 17 deletions.
2 changes: 1 addition & 1 deletion e2e/nextjs-routes.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
// prettier-ignore
declare module "nextjs-routes" {
export type Route =
| { pathname: "/foos/[foo]"; query: Query<{ foo: string }> }
| { pathname: "/foos/[foo]"; query: Query<{ "foo": string }> }
| { pathname: "/"; query?: Query | undefined };

type Query<Params = {}> = Params & { [key: string]: string | string[] | undefined };
Expand Down
4 changes: 2 additions & 2 deletions examples/src-pages/nextjs-routes.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@
declare module "nextjs-routes" {
export type Route =
| { pathname: "/api/hello"; query?: Query | undefined }
| { pathname: "/bars/[bar]"; query: Query<{ bar: string }> }
| { pathname: "/foos/[foo]"; query: Query<{ foo: string }> }
| { pathname: "/bars/[bar]"; query: Query<{ "bar": string }> }
| { pathname: "/foos/[foo]"; query: Query<{ "foo": string }> }
| { pathname: "/"; query?: Query | undefined };

type Query<Params = {}> = Params & { [key: string]: string | string[] | undefined };
Expand Down
4 changes: 2 additions & 2 deletions examples/typescript/nextjs-routes.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@
declare module "nextjs-routes" {
export type Route =
| { pathname: "/api/hello"; query?: Query | undefined }
| { pathname: "/bars/[bar]"; query: Query<{ bar: string }> }
| { pathname: "/foos/[foo]"; query: Query<{ foo: string }> }
| { pathname: "/bars/[bar]"; query: Query<{ "bar": string }> }
| { pathname: "/foos/[foo]"; query: Query<{ "foo": string }> }
| { pathname: "/"; query?: Query | undefined };

type Query<Params = {}> = Params & { [key: string]: string | string[] | undefined };
Expand Down
18 changes: 9 additions & 9 deletions src/__snapshots__/core.test.ts.snap
Original file line number Diff line number Diff line change
Expand Up @@ -97,21 +97,21 @@ Array [
declare module \\"nextjs-routes\\" {
export type Route =
| { pathname: \\"/404\\"; query?: Query | undefined }
| { pathname: \\"/[foo]\\"; query: Query<{ foo: string }> }
| { pathname: \\"/[foo]/[bar]/[baz]\\"; query: Query<{ foo: string; bar: string; baz: string }> }
| { pathname: \\"/[foo]/bar/[baz]\\"; query: Query<{ foo: string; baz: string }> }
| { pathname: \\"/[foo]/bar/[baz]/foo/[bar]\\"; query: Query<{ foo: string; baz: string; bar: string }> }
| { pathname: \\"/[foo]/baz\\"; query: Query<{ foo: string }> }
| { pathname: \\"/[foo]\\"; query: Query<{ \\"foo\\": string }> }
| { pathname: \\"/[foo]/[bar]/[baz]\\"; query: Query<{ \\"foo\\": string; \\"bar\\": string; \\"baz\\": string }> }
| { pathname: \\"/[foo]/bar/[baz]\\"; query: Query<{ \\"foo\\": string; \\"baz\\": string }> }
| { pathname: \\"/[foo]/bar/[baz]/foo/[bar]\\"; query: Query<{ \\"foo\\": string; \\"baz\\": string; \\"bar\\": string }> }
| { pathname: \\"/[foo]/baz\\"; query: Query<{ \\"foo\\": string }> }
| { pathname: \\"/_debug\\"; query?: Query | undefined }
| { pathname: \\"/_debug/health-check\\"; query?: Query | undefined }
| { pathname: \\"/api/[[...segments]]\\"; query?: Query | undefined }
| { pathname: \\"/api/[...segments]\\"; query: Query<{ segments: string[] }> }
| { pathname: \\"/api/[...segments]\\"; query: Query<{ \\"segments\\": string[] }> }
| { pathname: \\"/api/bar\\"; query?: Query | undefined }
| { pathname: \\"/foo/[slug]\\"; query: Query<{ slug: string }> }
| { pathname: \\"/foo/[slug]\\"; query: Query<{ \\"slug\\": string }> }
| { pathname: \\"/\\"; query?: Query | undefined }
| { pathname: \\"/not-found\\"; query?: Query | undefined }
| { pathname: \\"/settings/bars/[bar]\\"; query: Query<{ bar: string }> }
| { pathname: \\"/settings/bars/[bar]/baz\\"; query: Query<{ bar: string }> }
| { pathname: \\"/settings/bars/[bar]\\"; query: Query<{ \\"bar\\": string }> }
| { pathname: \\"/settings/bars/[bar]/baz\\"; query: Query<{ \\"bar\\": string }> }
| { pathname: \\"/settings/foo\\"; query?: Query | undefined }
| { pathname: \\"/settings\\"; query?: Query | undefined };
Expand Down
6 changes: 3 additions & 3 deletions src/core.ts
Original file line number Diff line number Diff line change
Expand Up @@ -66,14 +66,14 @@ function getQueryInterface(
switch (value) {
case "dynamic": {
requiredKeys += 1;
return `${key}: string`;
return `"${key}": string`;
}
case "catch-all": {
requiredKeys += 1;
return `${key}: string[]`;
return `"${key}": string[]`;
}
case "optional-catch-all": {
return `${key}?: string[] | undefined`;
return `"${key}"?: string[] | undefined`;
}
// istanbul ignore next
default: {
Expand Down

0 comments on commit 41c1c6b

Please sign in to comment.