File: /var/www/api-storage/src/shared/utils/message-handler.ts
import { ResponseEntity } from '../core/entities/reponse.entity';
import { handleValidationError } from './error-handler';
import messages from './messages/messagest';
export function handleMessageSucces(
data: any,
accion: string,
totalRecords: number = 0,
): ResponseEntity<any> {
if (totalRecords) {
// eslint-disable-next-line no-prototype-builtins
if (!messages.success.hasOwnProperty(accion)) {
throw handleValidationError(handleMessageError('handleMessage'));
}
return {
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
data: data,
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access
message: messages.success[accion].message,
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access
summary: messages.success[accion].summary,
totalRecords: totalRecords,
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access
rows: data.length,
timestamp: new Date().toISOString(),
};
}
return {
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
data: data,
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access
message: messages.success[accion].message,
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access
summary: messages.success[accion].summary,
timestamp: new Date().toISOString(),
};
}
export function handleMessageError(error: string) {
// eslint-disable-next-line no-prototype-builtins
if (!messages.error.hasOwnProperty(error)) {
throw handleValidationError(handleMessageError('handleMessage'));
}
return {
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access
message: messages.error[error].message,
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access
summary: messages.error[error].summary,
};
}