src/verifier/presentations/presentations.controller.ts
verifier/config
Methods |
| configuration | ||||||
configuration(user: TokenPayload)
|
||||||
Decorators :
@Secured(['undefined', 'undefined'])
|
||||||
|
Returns the presentation request configurations.
Parameters :
Returns :
any
|
| deleteConfiguration | |||||||||
deleteConfiguration(id: string, user: TokenPayload)
|
|||||||||
Decorators :
@Secured(['undefined'])
|
|||||||||
|
Deletes a presentation request configuration by its ID.
Parameters :
Returns :
any
|
| getConfiguration | |||||||||
getConfiguration(id: string, user: TokenPayload)
|
|||||||||
Decorators :
@Secured(['undefined', 'undefined'])
|
|||||||||
|
Get a presentation request configuration by its ID.
Parameters :
Returns :
any
|
| storePresentationConfig | |||||||||
storePresentationConfig(config: PresentationConfigCreateDto, user: TokenPayload)
|
|||||||||
Decorators :
@Secured(['undefined'])
|
|||||||||
|
Store a presentation request configuration. If it already exists, it will be updated.
Parameters :
Returns :
any
|
| updateConfiguration | ||||||||||||
updateConfiguration(id: string, config: PresentationConfigUpdateDto, user: TokenPayload)
|
||||||||||||
Decorators :
@Secured(['undefined'])
|
||||||||||||
|
Update a presentation request configuration by its ID.
Parameters :
Returns :
any
|
import {
Body,
Controller,
Delete,
Get,
Param,
Patch,
Post,
} from "@nestjs/common";
import { ApiTags } from "@nestjs/swagger";
import { Role } from "../../auth/roles/role.enum";
import { Secured } from "../../auth/secure.decorator";
import { Token, TokenPayload } from "../../auth/token.decorator";
import { PresentationConfigCreateDto } from "./dto/presentation-config-create.dto";
import { PresentationConfigUpdateDto } from "./dto/presentation-config-update.dto";
import { PresentationsService } from "./presentations.service";
@ApiTags("Verifier")
@Controller("verifier/config")
export class PresentationManagementController {
constructor(private readonly presentationsService: PresentationsService) {}
/**
* Returns the presentation request configurations.
* @returns
*/
@Secured([Role.Presentations, Role.PresentationOffer])
@Get()
configuration(@Token() user: TokenPayload) {
return this.presentationsService.getPresentationConfigs(
user.entity!.id,
);
}
/**
* Store a presentation request configuration. If it already exists, it will be updated.
* @param config
* @returns
*/
@Secured([Role.Presentations])
@Post()
storePresentationConfig(
@Body() config: PresentationConfigCreateDto,
@Token() user: TokenPayload,
) {
return this.presentationsService.storePresentationConfig(
user.entity!.id,
config,
);
}
/**
* Get a presentation request configuration by its ID.
* @param id
* @param user
* @returns
*/
@Secured([Role.Presentations, Role.PresentationOffer])
@Get(":id")
getConfiguration(@Param("id") id: string, @Token() user: TokenPayload) {
return this.presentationsService.getPresentationConfig(
id,
user.entity!.id,
);
}
/**
* Update a presentation request configuration by its ID.
* @param id
* @param config
* @param user
* @returns
*/
@Secured([Role.Presentations])
@Patch(":id")
updateConfiguration(
@Param("id") id: string,
@Body() config: PresentationConfigUpdateDto,
@Token() user: TokenPayload,
) {
return this.presentationsService.updatePresentationConfig(
id,
user.entity!.id,
config,
);
}
/**
* Deletes a presentation request configuration by its ID.
* @param id
* @returns
*/
@Secured([Role.Presentations])
@Delete(":id")
deleteConfiguration(@Param("id") id: string, @Token() user: TokenPayload) {
return this.presentationsService.deletePresentationConfig(
id,
user.entity!.id,
);
}
}