_respostas/dist-require/respostas.js
2024-06-18 08:40:17 -03:00

92 lines
2.8 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.respostaComuns = exports.gerarRespostas = exports.codigosResposta = void 0;
var codigosResposta;
(function (codigosResposta) {
codigosResposta[codigosResposta["sucesso"] = 200] = "sucesso";
codigosResposta[codigosResposta["erroConhecido"] = 400] = "erroConhecido";
codigosResposta[codigosResposta["erroPermissao"] = 401] = "erroPermissao";
codigosResposta[codigosResposta["erroNaoEncontrado"] = 404] = "erroNaoEncontrado";
codigosResposta[codigosResposta["erroDesconhecido"] = 500] = "erroDesconhecido";
})(codigosResposta = exports.codigosResposta || (exports.codigosResposta = {}));
const gerarRespostas = (registrarErroInterno) => {
/**
* Gera uma resposta de sucesso
*/
const valor = (valor, detalhes) => {
return {
cod: codigosResposta.sucesso,
valor,
mensagem: undefined,
eErro: false,
eCerto: true,
detalhes,
};
};
/**
* Gera uma resposta de sucesso com valor true
*/
const valorTrue = (detalhes) => {
return {
cod: codigosResposta.sucesso,
valor: true,
mensagem: undefined,
eErro: false,
eCerto: true,
detalhes,
};
};
/**
* Gera uma resposta de erro conhecido
*/
const erro = (mensagem, detalhes) => {
return {
cod: codigosResposta.erroConhecido,
valor: undefined,
mensagem,
eErro: true,
eCerto: false,
detalhes,
};
};
/**
* Gera uma resposta de erro de permissão,será necessário fazer o login novamente
*/
const erroPermissao = (mensagem, detalhes) => {
return {
cod: codigosResposta.erroPermissao,
valor: undefined,
mensagem: mensagem || "Sem permissão para esse recurso.",
eErro: true,
eCerto: false,
detalhes,
};
};
/**
* Gera uma resposta de erro desconhecido, geralmente tem origem de um exception
*/
const erroInterno = (parametros, mensagem) => {
const resRegistro = registrarErroInterno(parametros);
const mensagemFim = `${mensagem || "Erro interno"}`;
return {
cod: codigosResposta.erroDesconhecido,
valor: undefined,
mensagem: mensagemFim,
eErro: true,
eCerto: false,
...resRegistro,
};
};
return {
valor,
valorTrue,
erro,
erroPermissao,
erroInterno,
};
};
exports.gerarRespostas = gerarRespostas;
/**
* Uso de respostas em comuns
*/
exports.respostaComuns = (0, exports.gerarRespostas)(() => ({}));