{"analyzedAt":"2022-07-11T15:01:20.066Z","collected":{"metadata":{"name":"@odhenac/cep-promise","scope":"odhenac","version":"3.0.12","description":"Busca por CEP integrado diretamente aos serviços dos Correios e ViaCEP","keywords":["cep","correios","zipcode","zip","promise","viacep"],"date":"2019-10-22T20:04:08.895Z","author":{"name":"Filipe Deschamps"},"publisher":{"username":"odhenac","email":"odhenac@gmail.com"},"maintainers":[{"username":"odhenac","email":"odhenac@gmail.com"}],"repository":{"type":"git","url":"git+https://github.com/pluritech/cep-promise.git"},"links":{"npm":"https://www.npmjs.com/package/%40odhenac%2Fcep-promise","homepage":"https://github.com/filipedeschamps/cep-promise","repository":"https://github.com/pluritech/cep-promise","bugs":"https://github.com/filipedeschamps/cep-promise/issues"},"license":"MIT","dependencies":{"isomorphic-unfetch":"2.0.0"},"devDependencies":{"babel-cli":"6.18.0","babel-core":"6.18.2","babel-eslint":"7.1.1","babel-istanbul":"0.12.2","babel-plugin-external-helpers":"6.22.0","babel-plugin-transform-builtin-extend":"1.1.2","babel-preset-env":"1.6.1","chai":"3.5.0","chai-as-promised":"6.0.0","chai-subset":"1.3.0","mocha":"5.2.0","nock":"9.6.1","rollup":"0.56.0","rollup-plugin-babel":"3.0.3","rollup-plugin-commonjs":"8.3.0","rollup-plugin-node-resolve":"3.0.3","standard":"8.6.0","uglify-js":"2.7.5"},"releases":[{"from":"2022-06-11T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":0},{"from":"2022-04-12T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":0},{"from":"2022-01-12T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":1},{"from":"2021-07-11T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":1},{"from":"2020-07-11T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":1}],"hasTestScript":true,"hasSelectiveFiles":true,"readme":"<p align=\"center\">\n  <img src=\"http://piskel-imgstore-b.appspot.com/img/d580e96e-bd8a-11e6-b157-9949cad4d609.gif\">\n</p>\n\n<h1 align=\"center\">CEP Promise</h1>\n\n<p align=\"center\">\n  <a href=\"https://npm-stat.com/charts.html?package=cep-promise\">\n    <img src=\"https://img.shields.io/npm/dm/cep-promise.svg\">\n  </a>\n  <a href=\"https://coveralls.io/github/filipedeschamps/cep-promise?branch=master\">\n    <img src=\"https://coveralls.io/repos/github/filipedeschamps/cep-promise/badge.svg?branch=master\">\n  </a>\n  <a href=\"https://www.npmjs.com/package/cep-promise\">\n    <img src=\"https://badge.fury.io/js/cep-promise.svg\">\n  </a>\n  <a href=\"http://standardjs.com/\">\n    <img src=\"https://img.shields.io/badge/code%20style-standard-brightgreen.svg\">\n  </a>\n  <a href=\"https://snyk.io/test/github/filipedeschamps/cep-promise\">\n    <img src=\"https://snyk.io/test/github/filipedeschamps/cep-promise/badge.svg\" alt=\"Known Vulnerabilities\" data-canonical-src=\"https://snyk.io/test/github/filipedeschamps/cep-promise\" style=\"max-width:100%;\">\n  </a>\n</p>\n\n<p align=\"center\">\n  Busca por CEP integrado diretamente aos serviços dos Correios, ViaCEP e outros (Node.js e Browser)\n</p>\n\n## Features\n\n * Sempre atualizado em tempo-real por se conectar diretamente aos serviços dos Correios, ViaCEP e outros.\n * Possui alta disponibilidade por usar vários serviços como fallback.\n * Sempre retorna a resposta mais rápida por fazer as consultas de forma concorrente.\n * Sem limites de uso (rate limits) conhecidos.\n * Interface de Promise extremamente simples.\n * Suporte ao Node.js `4.x`, `5.x`, `6.x`, `7.x`, `8.x`, `9.x`, `10.x` e `@stable`.\n * Suporte ao Node.js `0.10.x` e `0.12.x` até cep-promise versão `2.0.8`.\n * 100% de code coverage com testes unitários e E2E.\n * Desenvolvido utilizando ES6.\n\n\n## Como utilizar\n\nTeste e aprenda <a href=\"https://npm.runkit.com/cep-promise\" target=\"_blank\">aqui</a>.\n\n### Realizando uma consulta\n\nPor ser multifornecedor, a biblioteca irá resolver a Promise com o fornecedor que **mais rápido** lhe responder.\n\n``` js\nimport cep from 'cep-promise'\n\ncep('05010000')\n  .then(console.log)\n\n  // {\n  //   \"cep\":  \"05010000\",\n  //   \"state\":  \"SP\",\n  //   \"city\":  \"São Paulo\",\n  //   \"street\":  \"Rua Caiubí\",\n  //   \"neighborhood\":  \"Perdizes\",\n  // }\n```\n\n\n### Você também poderá passar o CEP como Inteiro\n\nEm muitos sistemas o CEP é utilizado erroneamente como um Inteiro (e com isto cortando todos os zeros à esquerda). Caso este seja o seu caso, não há problema, pois a biblioteca irá preencher os caracteres faltantes na String, por exemplo:\n\n``` js\nimport cep from 'cep-promise'\n\n// enviando sem ter um zero à esquerda do CEP \"05010000\"\ncep(5010000)\n  .then(console.log)\n\n  // {\n  //   \"cep\":  \"05010000\",\n  //   \"state\":  \"SP\",\n  //   \"city\":  \"São Paulo\",\n  //   \"street\":  \"Rua Caiubí\",\n  //   \"neighborhood\":  \"Perdizes\",\n  // }\n```\n\n### Quando o CEP não é encontrado\n\nNeste caso será retornado um `\"service_error\"` e por ser multifornecedor, a biblioteca irá rejeitar a Promise apenas quando tiver a resposta negativa de todos os fornecedores.\n\n``` js\nimport cep from 'cep-promise'\n\ncep('99999999')\n  .catch(console.log)\n\n  // {\n  //     name: 'CepPromiseError',\n  //     message: 'Todos os serviços de CEP retornaram erro.',\n  //     type: 'service_error',\n  //     errors: [{\n  //       message: 'CEP NAO ENCONTRADO',\n  //       service: 'correios'\n  //     }, {\n  //       message: 'CEP não encontrado na base do ViaCEP.',\n  //       service: 'viacep'\n  //     }, {\n  //       message: 'CEP não encontrado na base do Cep Aberto.',\n  //       service: 'cepaberto'\n  //     }]\n  // }\n\n```\n\n### Quando o CEP possui um formato inválido\n\nNeste caso será retornado um `\"validation_error\"` e a biblioteca irá rejeitar imediatamente a Promise, sem chegar a consultar nenhum fornecedor.\n\n``` js\nimport cep from 'cep-promise'\n\ncep('123456789123456789')\n  .catch(console.log)\n\n  // {\n  //     name: 'CepPromiseError',\n  //     message: 'CEP deve conter exatamente 8 caracteres.',\n  //     type: 'validation_error',\n  //     errors: [{\n  //       message: 'CEP informado possui mais do que 8 caracteres.',\n  //       service: 'cep_validation'\n  //     }]\n  // }\n```\n\n\n### Instalação\n\n#### Browser usando CDN\n```\n<script src=\"https://cdn.jsdelivr.net/npm/cep-promise/dist/cep-promise.min.js\"></script>\n```\n\n#### npm\n\n```\n$ npm install --save cep-promise\n```\n\n#### Bower\n\n```\n$ bower install --save cep-promise\n```\n\n#### Angular 2\n\n``` ts\nimport * as cep from 'cep-promise'\n\ncep('05010000')\n  .then(console.log)\n```\n\n## Como contribuir\n\nLeia nosso guia de contribuição [aqui](CONTRIBUTING.md)\n\n## Contribuidores\n\n| [<img src=\"https://avatars1.githubusercontent.com/u/8251208?v=3&s=115\"><br><sub>@lucianopf</sub>](https://github.com/lucianopf) | [<img src=\"https://avatars1.githubusercontent.com/u/7863230?v=3&s=115\"><br><sub>@MarcoWorms</sub>](https://github.com/MarcoWorms) | [<img src=\"https://avatars1.githubusercontent.com/u/551228?v=3&s=115\"><br><sub>@caio-ribeiro-pereira</sub>](https://github.com/caio-ribeiro-pereira) | [<img src=\"https://avatars1.githubusercontent.com/u/1225447?v=3&s=115\"><br><sub>@chrisbenseler</sub>](https://github.com/chrisbenseler) | [<img src=\"https://avatars0.githubusercontent.com/u/3428149?v=3&s=115\"><br><sub>@luanmuniz</sub>](https://github.com/luanmuniz) | [<img src=\"https://avatars3.githubusercontent.com/u/3094496?v=3&s=115\"><br><sub>@AlbertoTrindade</sub>](https://github.com/AlbertoTrindade) |\n|:-:|:-:|:-:|:-:|:-:|:-:|\n| [<img src=\"https://avatars1.githubusercontent.com/u/4137355?v=3&s=115\"><br><sub>@pedrro</sub>](https://github.com/pedrro) | [<img src=\"https://avatars1.githubusercontent.com/u/8260778?v=3&s=115\"><br><sub>@petronetto</sub>](https://github.com/Petronetto) | [<img src=\"https://avatars3.githubusercontent.com/u/434364?v=3&s=115\"><br><sub>@olegon</sub>](https://github.com/olegon) | [<img src=\"https://avatars3.githubusercontent.com/u/2177742?v=3&s=115\"><br><sub>@jhonnymoreira</sub>](https://github.com/jhonnymoreira) | [<img src=\"https://avatars3.githubusercontent.com/u/2955087?s=115&v=4\"><br><sub>@claytonsilva</sub>](https://github.com/claytonsilva) | [<img src=\"https://avatars1.githubusercontent.com/u/13632762?s=115\"><br><sub>@thiamsantos</sub>](https://github.com/thiamsantos) |\n| [<img src=\"https://avatars2.githubusercontent.com/u/6232791?v=3&s=115\"><br><sub>@flyingluscas</sub>](https://github.com/flyingluscas) | [<img src=\"https://avatars1.githubusercontent.com/u/15306309?s=115&v=4\"><br><sub>@otaviopace</sub>](https://github.com/otaviopace) |\n\n## Autor\n\n| [<img src=\"https://avatars0.githubusercontent.com/u/4248081?v=3&s=115\"><br><sub>@filipedeschamps</sub>](https://github.com/filipedeschamps) |\n| :---: |"},"npm":{"downloads":[{"from":"2022-07-10T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":0},{"from":"2022-07-04T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":2},{"from":"2022-06-11T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":5},{"from":"2022-04-12T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":29},{"from":"2022-01-12T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":70},{"from":"2021-07-11T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":118}],"starsCount":0},"github":{"forkOf":"BrasilAPI/cep-promise","starsCount":2,"forksCount":1,"subscribersCount":4,"issues":{"count":0,"openCount":0,"distribution":{"3600":0,"10800":0,"32400":0,"97200":0,"291600":0,"874800":0,"2624400":0,"7873200":0,"23619600":0,"70858800":0,"212576400":0},"isDisabled":true},"contributors":[{"username":"flyingluscas","commitsCount":2},{"username":"petronetto","commitsCount":2},{"username":"luanmuniz","commitsCount":1},{"username":"chrisbenseler","commitsCount":3},{"username":"mateusduraes","commitsCount":8},{"username":"ivmarcos","commitsCount":4},{"username":"eduardobvale","commitsCount":1},{"username":"caio-ribeiro-pereira","commitsCount":1},{"username":"jhonnymoreira","commitsCount":2},{"username":"evaporei","commitsCount":3},{"username":"rafaeljesus","commitsCount":1},{"username":"pedrro","commitsCount":2},{"username":"claytonsilva","commitsCount":2},{"username":"thiamsantos","commitsCount":3},{"username":"olegon","commitsCount":5},{"username":"AlbertoTrindade","commitsCount":2},{"username":"lucianopf","commitsCount":19},{"username":"MarcoWorms","commitsCount":6},{"username":"filipedeschamps","commitsCount":79}],"commits":[{"from":"2022-07-04T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":0},{"from":"2022-06-11T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":0},{"from":"2022-04-12T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":0},{"from":"2022-01-12T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":0},{"from":"2021-07-11T00:00:00.000Z","to":"2022-07-11T00:00:00.000Z","count":0}]},"source":{"files":{"readmeSize":6741,"testsSize":21302},"badges":[{"urls":{"original":"https://img.shields.io/npm/dm/cep-promise.svg","shields":"https://img.shields.io/npm/dm/cep-promise.svg","content":"https://img.shields.io/npm/dm/cep-promise.json"},"info":{"service":"npm","type":"downloads","modifiers":{"type":"dm"}}},{"urls":{"original":"https://coveralls.io/repos/github/filipedeschamps/cep-promise/badge.svg?branch=master","service":"https://coveralls.io/repos/github/filipedeschamps/cep-promise/badge.svg?branch=master","shields":"https://img.shields.io/coveralls/filipedeschamps/cep-promise/master.svg","content":"https://img.shields.io/coveralls/filipedeschamps/cep-promise/master.json"},"info":{"service":"coveralls","type":"coverage","modifiers":{"branch":"master"}}}],"linters":["editorconfig","standard"],"coverage":1,"outdatedDependencies":{"isomorphic-unfetch":{"required":"2.0.0","stable":"3.1.0","latest":"3.1.0"}}}},"evaluation":{"quality":{"carefulness":0.9199999999999999,"tests":0.75,"health":0.75,"branding":0.3},"popularity":{"communityInterest":26,"downloadsCount":9.666666666666666,"downloadsAcceleration":-0.02275494672754947,"dependentsCount":0},"maintenance":{"releasesFrequency":0.9,"commitsFrequency":0.9,"openIssues":0.9,"issuesDistribution":0.9}},"score":{"final":0.6528718469745045,"detail":{"quality":0.944313051244566,"popularity":0.056056113474145054,"maintenance":0.9998808339576686}}}