json-api-nestjs
Version:
JsonApi Plugin for NestJs
35 lines • 1.49 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.deleteOne = deleteOne;
const swagger_1 = require("@nestjs/swagger");
const types_1 = require("../../types");
const utils_1 = require("../utils");
function deleteOne(controller, descriptor, entity, mapEntity, methodName) {
const entityName = entity.name;
const { primaryColumnType } = (0, utils_1.getEntityMapProps)(mapEntity, entity);
(0, swagger_1.ApiParam)({
name: 'id',
required: true,
type: primaryColumnType === types_1.TypeField.number ? 'integer' : 'string',
description: `ID of resource "${entityName}"`,
})(controller, methodName, descriptor);
(0, swagger_1.ApiOperation)({
summary: `Delete item of resource "${entityName}"`,
operationId: `${controller.constructor.name}_${methodName}`,
})(controller, methodName, descriptor);
(0, swagger_1.ApiResponse)({
status: 404,
description: `Item of resource "${entityName}" not found`,
schema: utils_1.errorSchema,
})(controller, methodName, descriptor);
(0, swagger_1.ApiResponse)({
status: 204,
description: `Item of resource "${entityName}" has been deleted`,
})(controller, methodName, descriptor);
(0, swagger_1.ApiResponse)({
status: 400,
description: 'Wrong query parameters',
schema: utils_1.errorSchema,
})(controller, methodName, descriptor);
}
//# sourceMappingURL=delete-one.js.map