zater-cep
Version:
ZAter cep correios e via cep
29 lines (21 loc) • 2.65 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _FormatCep = require('./../lib/FormatCep');
var _FormatCep2 = _interopRequireDefault(_FormatCep);
var _ErrorCep = require('./../lib/ErrorCep');
var _ErrorCep2 = _interopRequireDefault(_ErrorCep);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
class FindCep {
constructor(Providers, cep) {
this.Providers = [];
this.cep = (0, _FormatCep2.default)().clean(cep);
Providers.map(provider => this.Providers.push(provider(this.cep).requestCep()));
}
init() {
return Promise.race(this.Providers).then(res => res).catch(err => new _ErrorCep2.default(err.message, err.code, 'ZTR_CEP_004'));
}
}
exports.default = (Providers, cep) => new FindCep(Providers, cep);
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kb21haW4vRmluZENlcC5qcyJdLCJuYW1lcyI6WyJGaW5kQ2VwIiwiY29uc3RydWN0b3IiLCJQcm92aWRlcnMiLCJjZXAiLCJjbGVhbiIsIm1hcCIsInByb3ZpZGVyIiwicHVzaCIsInJlcXVlc3RDZXAiLCJpbml0IiwiUHJvbWlzZSIsInJhY2UiLCJ0aGVuIiwicmVzIiwiY2F0Y2giLCJlcnIiLCJFcnJvckNlcCIsIm1lc3NhZ2UiLCJjb2RlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7OztBQUNBOzs7Ozs7QUFHQSxNQUFNQSxPQUFOLENBQWM7QUFDWkMsY0FBWUMsU0FBWixFQUF1QkMsR0FBdkIsRUFBNEI7QUFDMUIsU0FBS0QsU0FBTCxHQUFpQixFQUFqQjtBQUNBLFNBQUtDLEdBQUwsR0FBVywyQkFBWUMsS0FBWixDQUFrQkQsR0FBbEIsQ0FBWDtBQUNBRCxjQUFVRyxHQUFWLENBQWNDLFlBQVksS0FBS0osU0FBTCxDQUFlSyxJQUFmLENBQW9CRCxTQUFTLEtBQUtILEdBQWQsRUFBbUJLLFVBQW5CLEVBQXBCLENBQTFCO0FBQ0Q7QUFDREMsU0FBTztBQUNMLFdBQU9DLFFBQVFDLElBQVIsQ0FBYSxLQUFLVCxTQUFsQixFQUE2QlUsSUFBN0IsQ0FBa0NDLE9BQU9BLEdBQXpDLEVBQ0pDLEtBREksQ0FDRUMsT0FBTyxJQUFJQyxrQkFBSixDQUFhRCxJQUFJRSxPQUFqQixFQUEwQkYsSUFBSUcsSUFBOUIsRUFBb0MsYUFBcEMsQ0FEVCxDQUFQO0FBRUQ7QUFUVzs7a0JBWUMsQ0FBQ2hCLFNBQUQsRUFBWUMsR0FBWixLQUFvQixJQUFJSCxPQUFKLENBQVlFLFNBQVosRUFBdUJDLEdBQXZCLEMiLCJmaWxlIjoiRmluZENlcC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBGb3JtYXRDZXAgZnJvbSAnLi8uLi9saWIvRm9ybWF0Q2VwJztcbmltcG9ydCBFcnJvckNlcCBmcm9tICcuLy4uL2xpYi9FcnJvckNlcCc7XG5cblxuY2xhc3MgRmluZENlcCB7XG4gIGNvbnN0cnVjdG9yKFByb3ZpZGVycywgY2VwKSB7XG4gICAgdGhpcy5Qcm92aWRlcnMgPSBbXTtcbiAgICB0aGlzLmNlcCA9IEZvcm1hdENlcCgpLmNsZWFuKGNlcCk7XG4gICAgUHJvdmlkZXJzLm1hcChwcm92aWRlciA9PiB0aGlzLlByb3ZpZGVycy5wdXNoKHByb3ZpZGVyKHRoaXMuY2VwKS5yZXF1ZXN0Q2VwKCkpKTtcbiAgfVxuICBpbml0KCkge1xuICAgIHJldHVybiBQcm9taXNlLnJhY2UodGhpcy5Qcm92aWRlcnMpLnRoZW4ocmVzID0+IHJlcylcbiAgICAgIC5jYXRjaChlcnIgPT4gbmV3IEVycm9yQ2VwKGVyci5tZXNzYWdlLCBlcnIuY29kZSwgJ1pUUl9DRVBfMDA0JykpO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IChQcm92aWRlcnMsIGNlcCkgPT4gbmV3IEZpbmRDZXAoUHJvdmlkZXJzLCBjZXApO1xuIl19