Skip to content

Commit e466025

Browse files
committed
feat: validate id as string for deleting subjects
1 parent 8ae75d0 commit e466025

1 file changed

Lines changed: 3 additions & 1 deletion

File tree

apps/api/src/subjects/subjects.controller.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import { CurrentUser, ParseSchemaPipe, RouteAccess } from '@douglasneuroinformat
33
import type { AppAbility } from '@douglasneuroinformatics/libnest';
44
import { Body, Controller, Delete, Get, Param, Post, Query } from '@nestjs/common';
55
import { ApiOperation, ApiTags } from '@nestjs/swagger';
6+
import z from 'zod/v4';
67

78
import { CreateSubjectDto } from './dto/create-subject.dto';
89
import { SubjectsService } from './subjects.service';
@@ -23,7 +24,8 @@ export class SubjectsController {
2324
@Delete(':id')
2425
@RouteAccess({ action: 'delete', subject: 'Subject' })
2526
deleteById(
26-
@Param('id') id: string,
27+
@Param('id', new ParseSchemaPipe({ schema: z.string().transform((value) => decodeURIComponent(value)) }))
28+
id: string,
2729
@Query('force', new ParseSchemaPipe({ isOptional: true, schema: $BooleanLike })) force: boolean | undefined,
2830
@CurrentUser('ability') ability: AppAbility
2931
) {

0 commit comments

Comments
 (0)