Skip to content

Commit 40429ae

Browse files
committed
feat: add redirect to simple type when type parameter is not specified in findAll method
1 parent 93dd986 commit 40429ae

1 file changed

Lines changed: 10 additions & 2 deletions

File tree

src/modules/countries/countries.controller.ts

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,8 @@ export class CountriesController {
4949
required: false,
5050
description:
5151
'Controls the detail level. ' +
52-
'"simple": returns only id, name, iso2, and emoji (ideal for dropdowns). ' +
53-
'"full" (default): returns all fields.',
52+
'"simple" (default): returns only id, name, iso2, and emoji (ideal for dropdowns). ' +
53+
'"full": returns all fields.',
5454
})
5555
@ApiResponse({
5656
status: 200,
@@ -67,7 +67,15 @@ export class CountriesController {
6767
},
6868
})
6969
@ApiResponse({ status: 204, description: 'No countries found.' })
70+
@ApiResponse({ status: 302, description: 'Redirect to simple type when type parameter is not specified.' })
7071
findAll(@Query('exclude') exclude?: ExcludeOption, @Query('type') type?: ResponseType, @Res() res?: Response): void {
72+
// Redirect to ?type=simple when type parameter is not specified
73+
if (!type) {
74+
const redirectUrl = exclude ? `?exclude=${exclude}&type=simple` : '?type=simple';
75+
res!.redirect(302, redirectUrl);
76+
return;
77+
}
78+
7179
const { gzip } = this.service.findAllCountriesGzip(exclude, type);
7280

7381
res!

0 commit comments

Comments
 (0)