{"_id":"is-email-maybe","_rev":"5-09cd1e69442272cf8c9c63029851e76f","name":"is-email-maybe","description":"Sort-of-strong, but also loose email address validator which uses the same regex as Angular 1.","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"is-email-maybe","description":"Sort-of-strong, but also loose email address validator which uses the same regex as Angular 1.","main":"dist/index.umd.js","scripts":{"start":"package-scripts","test":"package-scripts test"},"files":["dist","README.md","LICENSE"],"keywords":["email","email validation","email regex","angular email validation"],"author":{"name":"Kent C. Dodds","email":"kent@doddsfamily.us","url":"http://kentcdodds.com/"},"license":"MIT","dependencies":{},"devDependencies":{"all-contributors-cli":"^3.0.0","ava":"^0.14.0","babel-eslint":"^6.0.4","babel-preset-es2015":"^6.6.0","babel-preset-es2015-rollup":"1.1.1","babel-register":"^6.7.2","codecov":"^1.0.1","commitizen":"^2.8.1","condition-node-version":"^1.3.0","cross-env":"1.0.7","cz-conventional-changelog":"^1.1.6","eslint":"^2.9.0","eslint-config-kentcdodds":"^6.2.1","ghooks":"^1.2.1","nyc":"^6.4.0","opt-cli":"^1.4.2","p-s":"^0.4.0","rimraf":"^2.5.2","rollup":"0.26.3","rollup-plugin-babel":"2.4.0","rollup-plugin-uglify":"0.3.1","semantic-release":"^4.3.5","validate-commit-msg":"^2.6.1"},"eslintConfig":{"extends":"kentcdodds/es-next"},"ava":{"require":"babel-register","babel":"inherit"},"nyc":{"reporter":["lcov","text","html"],"include":["index.js"]},"release":{"verifyConditions":{"path":"condition-node-version","node":"^4","verbose":true}},"config":{"ghooks":{"commit-msg":"opt --in commit-msg --exec \"validate-commit-msg\"","pre-commit":"opt --in pre-commit --exec \"npm start validate\""},"commitizen":{"path":"node_modules/cz-conventional-changelog"}},"repository":{"type":"git","url":"git+https://github.com/kentcdodds/is-email-maybe.git"},"bugs":{"url":"https://github.com/kentcdodds/is-email-maybe/issues"},"homepage":"https://github.com/kentcdodds/is-email-maybe#readme","version":"1.0.0","gitHead":"f453851ca140b786bb5e3cc6da60266ed64b8de6","_id":"is-email-maybe@1.0.0","_shasum":"037a6f3a99b68743ea4383f81c360206e8bc7bea","_from":".","_npmVersion":"3.9.2","_nodeVersion":"4.4.4","_npmUser":{"name":"kentcdodds","email":"kent@doddsfamily.us"},"dist":{"shasum":"037a6f3a99b68743ea4383f81c360206e8bc7bea","tarball":"https://registry.npmjs.org/is-email-maybe/-/is-email-maybe-1.0.0.tgz","integrity":"sha512-j4/iRlTV3m8pq/M4tvdaCCRIj9lhVmBXFdeKMoTU6aetuwgCQUjTV2HlHxzVoXy4PPZ0S1creOMHUzMcE1I7XQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCuOjMUWaaquk7KgW2gmzzRIxqCsc8/nOX0YH8Qtq7wqgIhAK5Grio7nQ89BDQI0k5zuI+QmDdracbytd/biGcAG+bu"}]},"maintainers":[{"name":"kentcdodds","email":"kent@doddsfamily.us"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/is-email-maybe-1.0.0.tgz_1464028554814_0.8067227471619844"}},"1.0.1":{"name":"is-email-maybe","description":"Sort-of-strong, but also loose email address validator which uses the same regex as Angular 1.","main":"dist/index.umd.js","scripts":{"start":"package-scripts","test":"package-scripts test"},"files":["dist","README.md","LICENSE"],"keywords":["email","email validation","email regex","angular email validation"],"author":{"name":"Kent C. Dodds","email":"kent@doddsfamily.us","url":"http://kentcdodds.com/"},"license":"MIT","dependencies":{},"devDependencies":{"all-contributors-cli":"^3.0.0","ava":"^0.14.0","babel-eslint":"^6.0.4","babel-preset-es2015":"^6.6.0","babel-preset-es2015-rollup":"1.1.1","babel-register":"^6.7.2","codecov":"^1.0.1","commitizen":"^2.8.1","condition-node-version":"^1.3.0","cross-env":"1.0.7","cz-conventional-changelog":"^1.1.6","eslint":"^2.9.0","eslint-config-kentcdodds":"^6.2.1","ghooks":"^1.2.1","nyc":"^6.4.0","opt-cli":"^1.4.2","p-s":"^0.4.0","rimraf":"^2.5.2","rollup":"0.26.3","rollup-plugin-babel":"2.4.0","rollup-plugin-uglify":"0.3.1","semantic-release":"^4.3.5","validate-commit-msg":"^2.6.1"},"eslintConfig":{"extends":"kentcdodds/es-next"},"ava":{"require":"babel-register","babel":"inherit"},"nyc":{"reporter":["lcov","text","html"],"include":["index.js"]},"release":{"verifyConditions":{"path":"condition-node-version","node":"^4","verbose":true}},"config":{"ghooks":{"commit-msg":"opt --in commit-msg --exec \"validate-commit-msg\"","pre-commit":"opt --in pre-commit --exec \"npm start validate\""},"commitizen":{"path":"node_modules/cz-conventional-changelog"}},"repository":{"type":"git","url":"git+https://github.com/kentcdodds/is-email-maybe.git"},"bugs":{"url":"https://github.com/kentcdodds/is-email-maybe/issues"},"homepage":"https://github.com/kentcdodds/is-email-maybe#readme","version":"1.0.1","gitHead":"4d3119369c20ff1af072268f655c3d97947a2b9b","_id":"is-email-maybe@1.0.1","_shasum":"d9b4e74fad0d3f30fc106d0143de77be4926df21","_from":".","_npmVersion":"3.9.2","_nodeVersion":"4.4.4","_npmUser":{"name":"kentcdodds","email":"kent@doddsfamily.us"},"dist":{"shasum":"d9b4e74fad0d3f30fc106d0143de77be4926df21","tarball":"https://registry.npmjs.org/is-email-maybe/-/is-email-maybe-1.0.1.tgz","integrity":"sha512-M++K/CPKgzZzEfcdROabsX9gOcFy8dSb4g30PvGj2X7B8uAW9d1XtvnIqxa+gKQxCJpnsN5J4dsp4GI/qybdwQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQChrZ/UOiWIbQfkXdDM/aK6MBNa030OK5G1dUF2l6QgPAIhAPWeuui/41kGa/b2a6f8paii9l3r6H/7cwYhc1o+euHl"}]},"maintainers":[{"name":"kentcdodds","email":"kent@doddsfamily.us"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/is-email-maybe-1.0.1.tgz_1464031343000_0.6781036197207868"}}},"readme":"# is-email-maybe\n\nHey, I just met you, and this is crazy, but here's my address. `isEmailMaybe`? Sort-of-strong, but also loose email\naddress validator which uses the same regex as Angular 1.\n\n[![Build Status][build-badge]][build]\n[![Code Coverage][coverage-badge]][coverage]\n[![version][version-badge]][package]\n[![downloads][downloads-badge]][npm-stat]\n[![MIT License][license-badge]][LICENSE]\n[![All Contributors](https://img.shields.io/badge/all_contributors-1-orange.svg?style=flat-square)](#contributors)\n\n[![PRs Welcome][prs-badge]][prs]\n[![Donate][donate-badge]][donate]\n[![Code of Conduct][coc-badge]][coc]\n[![Roadmap][roadmap-badge]][roadmap]\n\n## The problem\n\nEmail validation is hard. You'll probably always get it wrong. The most sure way to validate that an email is valid is\nby sending it something. Most of the time this works great. If someone wants to sign up for you newsletter, you just let\nthem type whatever they want, then you send them an email and ask them to click on a link to validate they got your\nemail.\n\nHowever, there are some cases where you really need to protect from human error. In my specific scenario, if the user\nenters an incorrect email, they could send hundreds of dollars to the wrong person. Or think that they paid their bill\non time, but find out too late that they made a typo in the email address.\n\nWhen doing email validation, you should weigh the costs of getting it wrong. If your validation is over-ambitiously\nvalidating an email address, that could lead to some serious frustration on the part of the end user and they may not\nsubscribe to your newsletter (for example), so you may as well make validation as loose as possible (don't use this).\nHowever, if you have a scenario like mine where a typo can lead to serious mistakes, then a more ambitious validation\nsolution is probably good.\n\n## This solution\n\nThis is a direct copy/paste from the [Angular 1][angular] code [here][angular-code]. It's not perfect, but it does a\npretty good job of validating 99% of use cases. And it's definitely been battle tested across hundreds of thousands of\nAngular applications throughout the world.\n\n## Installation\n\nThis module is distributed via [npm][npm] which is bundled with [node][node] and should\nbe installed as one of your project's `dependencies`:\n\n```\nnpm install --save is-email-maybe\n```\n\nYou can also get it from [npmcdn.com][cdn]: [https://npmcdn.com/is-email-maybe][cdn-url]\n\n## Usage\n\n```javascript\nconst isEmailMaybe = require('is-email-maybe')\nisEmailMaybe('a@b.c') // true\nisEmailMaybe('a@@b.c') // false\nisEmailMaybe.regex.test('email@example.com') // true\n```\n\n## Other Solutions\n\n- [is-email][is-email] - `/.+\\@.+\\..+/`\n- [email-validator][email-validator] - Checks more (is more strict?) than this lib\n- [is_js][is_js] - Has a bunch of validators, including email\n\n## Contributors\n\nThanks goes to these people ([emoji key][emojis]):\n\n<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->\n| [<img src=\"https://avatars.githubusercontent.com/u/1500684?v=3\" width=\"100px;\"/><br /><sub>Kent C. Dodds</sub>](http://kent.doddsfamily.us)<br />[💻](https://github.com/kentcdodds/is-email-maybe/commits?author=kentcdodds) [📖](https://github.com/kentcdodds/is-email-maybe/commits?author=kentcdodds) 🚇 [⚠️](https://github.com/kentcdodds/is-email-maybe/commits?author=kentcdodds) |\n| :---: |\n<!-- ALL-CONTRIBUTORS-LIST:END -->\n\nThis project follows the [all-contributors][all-contributors] specification. Contributions of any kind welcome!\n\n## LICENSE\n\nMIT\n\n[npm]: https://www.npmjs.com/\n[node]: https://nodejs.org\n[build-badge]: https://img.shields.io/travis/kentcdodds/is-email-maybe.svg?style=flat-square\n[build]: https://travis-ci.org/kentcdodds/is-email-maybe\n[coverage-badge]: https://img.shields.io/codecov/c/github/kentcdodds/is-email-maybe.svg?style=flat-square\n[coverage]: https://codecov.io/github/kentcdodds/is-email-maybe\n[version-badge]: https://img.shields.io/npm/v/is-email-maybe.svg?style=flat-square\n[package]: https://www.npmjs.com/package/is-email-maybe\n[downloads-badge]: https://img.shields.io/npm/dm/is-email-maybe.svg?style=flat-square\n[npm-stat]: http://npm-stat.com/charts.html?package=is-email-maybe&from=2016-04-01\n[license-badge]: https://img.shields.io/npm/l/is-email-maybe.svg?style=flat-square\n[license]: https://github.com/kentcdodds/is-email-maybe/blob/master/other/LICENSE\n[prs-badge]: https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square\n[prs]: http://makeapullrequest.com\n[donate-badge]: https://img.shields.io/badge/$-support-green.svg?style=flat-square\n[donate]: http://kcd.im/donate\n[coc-badge]: https://img.shields.io/badge/code%20of-conduct-ff69b4.svg?style=flat-square\n[coc]: https://github.com/kentcdodds/is-email-maybe/blob/master/other/CODE_OF_CONDUCT.md\n[roadmap-badge]: https://img.shields.io/badge/%F0%9F%93%94-roadmap-CD9523.svg?style=flat-square\n[roadmap]: https://github.com/kentcdodds/is-email-maybe/blob/master/other/ROADMAP.md\n[emojis]: https://github.com/kentcdodds/all-contributors#emoji-key\n[all-contributors]: https://github.com/kentcdodds/all-contributors\n[angular]: https://github.com/angular/angular.js\n[angular-code]: https://github.com/angular/angular.js/blob/fa79eaa816aa27c6d1b3c084b8372f9c17c8d5a3/src/ng/directive/input.js#L27\n[cdn]: https://npmcdn.com\n[cdn-url]: https://npmcdn.com/is-email-maybe\n[is-email]: https://www.npmjs.com/package/is-email\n[email-validator]: https://www.npmjs.com/package/email-validator\n[is_js]: https://npmjs.com/package/is_js\n","maintainers":[{"name":"kentcdodds","email":"kent@doddsfamily.us"}],"time":{"modified":"2022-06-19T02:40:16.042Z","created":"2016-05-23T18:35:57.090Z","1.0.0":"2016-05-23T18:35:57.090Z","1.0.1":"2016-05-23T19:22:24.031Z"},"homepage":"https://github.com/kentcdodds/is-email-maybe#readme","keywords":["email","email validation","email regex","angular email validation"],"repository":{"type":"git","url":"git+https://github.com/kentcdodds/is-email-maybe.git"},"author":{"name":"Kent C. Dodds","email":"kent@doddsfamily.us","url":"http://kentcdodds.com/"},"bugs":{"url":"https://github.com/kentcdodds/is-email-maybe/issues"},"license":"MIT","readmeFilename":"README.md","users":{"kentcdodds":true}}