zater-cep
Version:
ZAter cep correios e via cep
48 lines (37 loc) • 4.05 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
var _nodeFetch = require('node-fetch');
var _nodeFetch2 = _interopRequireDefault(_nodeFetch);
var _ErrorCep = require('../../lib/ErrorCep');
var _ErrorCep2 = _interopRequireDefault(_ErrorCep);
var _FormatCep = require('../../lib/FormatCep');
var _FormatCep2 = _interopRequireDefault(_FormatCep);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
class ViaCep {
constructor(cep) {
this.cep = cep;
this.baseurl = 'https://viacep.com.br/ws/';
this.basetype = '/json';
this.options = {
method: 'GET',
mode: 'cors',
headers: {
'content-type': 'application/json'
}
};
}
requestCep() {
try {
return (0, _nodeFetch2.default)(`${this.baseurl}${this.cep}${this.basetype}`).then(response => {
if (response.ok !== true) throw (0, _ErrorCep2.default)('Cep não lacalizado', 400, 'ZTR_CEP_002');
return response.json();
}).then(res => (0, _FormatCep2.default)().makeAddres('VIACEP', res.cep, res.uf, res.localidade, res.bairro, res.logradouro));
} catch (err) {
return Promise.reject(err);
}
}
}
exports.default = cep => new ViaCep(cep);
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbmZyYXN0cnVjdHVyZS9wcm92aWRlcnMvVmlhQ2VwLmpzIl0sIm5hbWVzIjpbIlZpYUNlcCIsImNvbnN0cnVjdG9yIiwiY2VwIiwiYmFzZXVybCIsImJhc2V0eXBlIiwib3B0aW9ucyIsIm1ldGhvZCIsIm1vZGUiLCJoZWFkZXJzIiwicmVxdWVzdENlcCIsInRoZW4iLCJyZXNwb25zZSIsIm9rIiwianNvbiIsInJlcyIsIm1ha2VBZGRyZXMiLCJ1ZiIsImxvY2FsaWRhZGUiLCJiYWlycm8iLCJsb2dyYWRvdXJvIiwiZXJyIiwiUHJvbWlzZSIsInJlamVjdCJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7QUFFQSxNQUFNQSxNQUFOLENBQWE7QUFDWEMsY0FBWUMsR0FBWixFQUFpQjtBQUNmLFNBQUtBLEdBQUwsR0FBV0EsR0FBWDtBQUNBLFNBQUtDLE9BQUwsR0FBZSwyQkFBZjtBQUNBLFNBQUtDLFFBQUwsR0FBZ0IsT0FBaEI7QUFDQSxTQUFLQyxPQUFMLEdBQWU7QUFDYkMsY0FBUSxLQURLO0FBRWJDLFlBQU0sTUFGTztBQUdiQyxlQUFTO0FBQ1Asd0JBQWdCO0FBRFQ7QUFISSxLQUFmO0FBT0Q7O0FBRURDLGVBQWE7QUFDWCxRQUFJO0FBQ0YsYUFBTyx5QkFBTyxHQUFFLEtBQUtOLE9BQVEsR0FBRSxLQUFLRCxHQUFJLEdBQUUsS0FBS0UsUUFBUyxFQUFqRCxFQUNKTSxJQURJLENBQ0VDLFFBQUQsSUFBYztBQUNsQixZQUFJQSxTQUFTQyxFQUFULEtBQWdCLElBQXBCLEVBQTBCLE1BQU0sd0JBQVMsb0JBQVQsRUFBK0IsR0FBL0IsRUFBbUMsYUFBbkMsQ0FBTjtBQUMxQixlQUFPRCxTQUFTRSxJQUFULEVBQVA7QUFDRCxPQUpJLEVBS0pILElBTEksQ0FLQ0ksT0FBTywyQkFBWUMsVUFBWixDQUF1QixRQUF2QixFQUFpQ0QsSUFBSVosR0FBckMsRUFBMENZLElBQUlFLEVBQTlDLEVBQWtERixJQUFJRyxVQUF0RCxFQUFrRUgsSUFBSUksTUFBdEUsRUFBOEVKLElBQUlLLFVBQWxGLENBTFIsQ0FBUDtBQU1ELEtBUEQsQ0FPRSxPQUFPQyxHQUFQLEVBQVk7QUFDWixhQUFPQyxRQUFRQyxNQUFSLENBQWVGLEdBQWYsQ0FBUDtBQUNEO0FBQ0Y7QUF6QlU7O2tCQTRCRWxCLE9BQU8sSUFBSUYsTUFBSixDQUFXRSxHQUFYLEMiLCJmaWxlIjoiVmlhQ2VwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGZldGNoIGZyb20gJ25vZGUtZmV0Y2gnO1xuaW1wb3J0IEVycm9yQ2VwIGZyb20gJy4uLy4uL2xpYi9FcnJvckNlcCc7XG5pbXBvcnQgRm9ybWF0Q2VwIGZyb20gJy4uLy4uL2xpYi9Gb3JtYXRDZXAnO1xuXG5jbGFzcyBWaWFDZXAge1xuICBjb25zdHJ1Y3RvcihjZXApIHtcbiAgICB0aGlzLmNlcCA9IGNlcDtcbiAgICB0aGlzLmJhc2V1cmwgPSAnaHR0cHM6Ly92aWFjZXAuY29tLmJyL3dzLyc7XG4gICAgdGhpcy5iYXNldHlwZSA9ICcvanNvbic7XG4gICAgdGhpcy5vcHRpb25zID0ge1xuICAgICAgbWV0aG9kOiAnR0VUJyxcbiAgICAgIG1vZGU6ICdjb3JzJyxcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgJ2NvbnRlbnQtdHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIHJlcXVlc3RDZXAoKSB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBmZXRjaChgJHt0aGlzLmJhc2V1cmx9JHt0aGlzLmNlcH0ke3RoaXMuYmFzZXR5cGV9YClcbiAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgaWYgKHJlc3BvbnNlLm9rICE9PSB0cnVlKSB0aHJvdyBFcnJvckNlcCgnQ2VwIG7Do28gbGFjYWxpemFkbycsIDQwMCwnWlRSX0NFUF8wMDInKTtcbiAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuanNvbigpO1xuICAgICAgICB9KVxuICAgICAgICAudGhlbihyZXMgPT4gRm9ybWF0Q2VwKCkubWFrZUFkZHJlcygnVklBQ0VQJywgcmVzLmNlcCwgcmVzLnVmLCByZXMubG9jYWxpZGFkZSwgcmVzLmJhaXJybywgcmVzLmxvZ3JhZG91cm8pKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChlcnIpO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBjZXAgPT4gbmV3IFZpYUNlcChjZXApO1xuIl19
;