resolve-email 3.0.3 → 3.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -1
- package/README.md +1 -1
- package/build-throwaway-domain-list.cjs +7 -9
- package/deny-list.json +23 -0
- package/disposable.json +20 -0
- package/index.test.js +15 -7
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,7 +7,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
|
|
9
9
|
|
|
10
|
-
## [v3.0.
|
|
10
|
+
## [v3.0.4](https://github.com/bcomnes/resolve-email/compare/v3.0.3...v3.0.4)
|
|
11
|
+
|
|
12
|
+
### Commits
|
|
13
|
+
|
|
14
|
+
- Add more low quality domains [`4080641`](https://github.com/bcomnes/resolve-email/commit/40806418cb88ea473d42db6c3883de85a45ee9f4)
|
|
15
|
+
|
|
16
|
+
## [v3.0.3](https://github.com/bcomnes/resolve-email/compare/v3.0.2...v3.0.3) - 2024-10-31
|
|
11
17
|
|
|
12
18
|
### Commits
|
|
13
19
|
|
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
[](https://npmtrends.com/resolve-email)
|
|
7
7
|
[](https://socket.dev/npm/package/resolve-email)
|
|
8
8
|
|
|
9
|
-
Resolve the domain of a syntactically valid email address to see if there is even a chance of deliverability. Also checks against a large list of disposable email address domains and rejects those.
|
|
9
|
+
Resolve the domain of a syntactically valid email address to see if there is even a chance of deliverability. Also checks against a large list of disposable email and other junk/unwated address domains and rejects those.
|
|
10
10
|
|
|
11
11
|
```
|
|
12
12
|
npm install resolve-email
|
|
@@ -22,26 +22,24 @@ const work = async () => {
|
|
|
22
22
|
disposableEmailDomains.add(domain)
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
console.log('Removing anything in allowlist')
|
|
25
|
+
console.log('Removing anything in disposable-email-domains/allowlist.conf')
|
|
26
|
+
// I guess newlines are a format too
|
|
26
27
|
const allowDataRaw = await readFile(allowList, { encoding: 'utf-8' })
|
|
27
28
|
const allowData = allowDataRaw.split('\n').slice(0, -1)
|
|
28
29
|
for (const domain of allowData) {
|
|
29
30
|
disposableEmailDomains.delete(domain)
|
|
30
31
|
}
|
|
31
32
|
|
|
33
|
+
const denyListOverride = require('./deny-list.json')
|
|
34
|
+
denyListOverride.forEach(domain => {
|
|
35
|
+
disposableEmailDomains.add(domain)
|
|
36
|
+
})
|
|
37
|
+
|
|
32
38
|
const allowListOverride = require('./allow-list.json')
|
|
33
39
|
allowListOverride.forEach(domain => {
|
|
34
40
|
disposableEmailDomains.delete(domain)
|
|
35
41
|
})
|
|
36
42
|
|
|
37
|
-
console.log('Add in any other random domains I dont want to register')
|
|
38
|
-
const unwatedDomains = [
|
|
39
|
-
'tmail.link'
|
|
40
|
-
]
|
|
41
|
-
for (const unwantedDomain of unwatedDomains) {
|
|
42
|
-
disposableEmailDomains.add(unwantedDomain)
|
|
43
|
-
}
|
|
44
|
-
|
|
45
43
|
await writeFile('disposable.json', JSON.stringify(Array.from(disposableEmailDomains).sort(), null, ' '))
|
|
46
44
|
console.log('done')
|
|
47
45
|
}
|
package/deny-list.json
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
[
|
|
2
|
+
"tmail.link",
|
|
3
|
+
"cock.li",
|
|
4
|
+
"airmail.cc",
|
|
5
|
+
"420blaze.it",
|
|
6
|
+
"aaathats3as.com",
|
|
7
|
+
"cumallover.me",
|
|
8
|
+
"dicksinhisan.us",
|
|
9
|
+
"loves.dicksinhisan.us",
|
|
10
|
+
"wants.dicksinhisan.us",
|
|
11
|
+
"dicksinmyan.us",
|
|
12
|
+
"loves.dicksinmyan.us",
|
|
13
|
+
"wants.dicksinmyan.us",
|
|
14
|
+
"horsefucker.org",
|
|
15
|
+
"national.shitposting.agency",
|
|
16
|
+
"tfwno.gf",
|
|
17
|
+
"cock.lu",
|
|
18
|
+
"cock.email",
|
|
19
|
+
"firemail.cc",
|
|
20
|
+
"memeware.net",
|
|
21
|
+
"cocaine.ninja",
|
|
22
|
+
"waifu.club"
|
|
23
|
+
]
|
package/disposable.json
CHANGED
|
@@ -198,6 +198,7 @@
|
|
|
198
198
|
"4057.com",
|
|
199
199
|
"418.dk",
|
|
200
200
|
"420247.com",
|
|
201
|
+
"420blaze.it",
|
|
201
202
|
"42o.org",
|
|
202
203
|
"444.net",
|
|
203
204
|
"4800numbers.com",
|
|
@@ -1335,6 +1336,7 @@
|
|
|
1335
1336
|
"a7996.com",
|
|
1336
1337
|
"aa5zy64.com",
|
|
1337
1338
|
"aaaargh.co.uk",
|
|
1339
|
+
"aaathats3as.com",
|
|
1338
1340
|
"aaqwe.ru",
|
|
1339
1341
|
"aaqwe.store",
|
|
1340
1342
|
"aaronkwok.net",
|
|
@@ -1502,6 +1504,7 @@
|
|
|
1502
1504
|
"aim.com",
|
|
1503
1505
|
"air2token.com",
|
|
1504
1506
|
"airhead.co.uk",
|
|
1507
|
+
"airmail.cc",
|
|
1505
1508
|
"airmailbox.website",
|
|
1506
1509
|
"airsi.de",
|
|
1507
1510
|
"aiworldx.com",
|
|
@@ -2993,6 +2996,10 @@
|
|
|
2993
2996
|
"coatbridge.net",
|
|
2994
2997
|
"cobarekyo1.ml",
|
|
2995
2998
|
"cobh.net",
|
|
2999
|
+
"cocaine.ninja",
|
|
3000
|
+
"cock.email",
|
|
3001
|
+
"cock.li",
|
|
3002
|
+
"cock.lu",
|
|
2996
3003
|
"cockandbull.co.uk",
|
|
2997
3004
|
"cockroach.co.uk",
|
|
2998
3005
|
"cocky.co.uk",
|
|
@@ -3225,6 +3232,7 @@
|
|
|
3225
3232
|
"culchies.com",
|
|
3226
3233
|
"culprit.co.uk",
|
|
3227
3234
|
"cultureshock.co.uk",
|
|
3235
|
+
"cumallover.me",
|
|
3228
3236
|
"cumbernauld.net",
|
|
3229
3237
|
"cunning.co.uk",
|
|
3230
3238
|
"cuoly.com",
|
|
@@ -3445,6 +3453,8 @@
|
|
|
3445
3453
|
"diamondsforever.com",
|
|
3446
3454
|
"diamondstate.net",
|
|
3447
3455
|
"diapaulpainting.com",
|
|
3456
|
+
"dicksinhisan.us",
|
|
3457
|
+
"dicksinmyan.us",
|
|
3448
3458
|
"dicopto.com",
|
|
3449
3459
|
"die-besten-bilder.de",
|
|
3450
3460
|
"die-genossen.de",
|
|
@@ -4350,6 +4360,7 @@
|
|
|
4350
4360
|
"fire-brigade.com",
|
|
4351
4361
|
"fired.co.uk",
|
|
4352
4362
|
"firefighter.co.uk",
|
|
4363
|
+
"firemail.cc",
|
|
4353
4364
|
"firemailbox.club",
|
|
4354
4365
|
"fireman.co.uk",
|
|
4355
4366
|
"firstdate.co.uk",
|
|
@@ -5548,6 +5559,7 @@
|
|
|
5548
5559
|
"horrendous.co.uk",
|
|
5549
5560
|
"horror.co.uk",
|
|
5550
5561
|
"horrormail.com",
|
|
5562
|
+
"horsefucker.org",
|
|
5551
5563
|
"horseycrowd.com",
|
|
5552
5564
|
"hosedown.com",
|
|
5553
5565
|
"host1s.com",
|
|
@@ -6800,6 +6812,8 @@
|
|
|
6800
6812
|
"lovemessage.co.uk",
|
|
6801
6813
|
"lover-boy.com",
|
|
6802
6814
|
"lovergirl.com",
|
|
6815
|
+
"loves.dicksinhisan.us",
|
|
6816
|
+
"loves.dicksinmyan.us",
|
|
6803
6817
|
"lovesea.gq",
|
|
6804
6818
|
"lovestruck.co.uk",
|
|
6805
6819
|
"lovethyneighbour.co.uk",
|
|
@@ -8605,6 +8619,7 @@
|
|
|
8605
8619
|
"meltmail.com",
|
|
8606
8620
|
"members.student.com",
|
|
8607
8621
|
"memeil.top",
|
|
8622
|
+
"memeware.net",
|
|
8608
8623
|
"memsg.site",
|
|
8609
8624
|
"menacefan.com",
|
|
8610
8625
|
"menarecrap.co.uk",
|
|
@@ -9210,6 +9225,7 @@
|
|
|
9210
9225
|
"nashvilleusa.com",
|
|
9211
9226
|
"naslazhdai.ru",
|
|
9212
9227
|
"national-fan.co.ro",
|
|
9228
|
+
"national.shitposting.agency",
|
|
9213
9229
|
"nationalgardeningclub.com",
|
|
9214
9230
|
"nationalist.co.uk",
|
|
9215
9231
|
"nationalist.com",
|
|
@@ -11766,6 +11782,7 @@
|
|
|
11766
11782
|
"teuchter.com",
|
|
11767
11783
|
"texas1.com",
|
|
11768
11784
|
"tfanus.com.er",
|
|
11785
|
+
"tfwno.gf",
|
|
11769
11786
|
"tfz.net",
|
|
11770
11787
|
"thai.com",
|
|
11771
11788
|
"thaimail.com",
|
|
@@ -12651,6 +12668,7 @@
|
|
|
12651
12668
|
"wacko.co.uk",
|
|
12652
12669
|
"wageslave.co.uk",
|
|
12653
12670
|
"wahoye.com",
|
|
12671
|
+
"waifu.club",
|
|
12654
12672
|
"waiting.co.uk",
|
|
12655
12673
|
"wakayama.org",
|
|
12656
12674
|
"wakeywakey.co.uk",
|
|
@@ -12677,6 +12695,8 @@
|
|
|
12677
12695
|
"wandering.co.uk",
|
|
12678
12696
|
"wanko.be",
|
|
12679
12697
|
"wannabee.co.uk",
|
|
12698
|
+
"wants.dicksinhisan.us",
|
|
12699
|
+
"wants.dicksinmyan.us",
|
|
12680
12700
|
"war-im-urlaub.de",
|
|
12681
12701
|
"warhero.co.uk",
|
|
12682
12702
|
"warlocks.com",
|
package/index.test.js
CHANGED
|
@@ -9,30 +9,38 @@ import { resolveEmail } from './index.js'
|
|
|
9
9
|
const inputs = [
|
|
10
10
|
{
|
|
11
11
|
in: 'bcomnes@gmail.com',
|
|
12
|
-
expect: true
|
|
12
|
+
expect: true,
|
|
13
13
|
},
|
|
14
14
|
{
|
|
15
15
|
in: 'bcomnes@gmailc.om',
|
|
16
|
-
expect: false
|
|
16
|
+
expect: false,
|
|
17
17
|
},
|
|
18
18
|
{
|
|
19
19
|
in: 'afastmail@fastmail.com',
|
|
20
|
-
expect: true
|
|
20
|
+
expect: true,
|
|
21
21
|
},
|
|
22
22
|
{
|
|
23
23
|
in: 'fofegoj914@naymedia.com',
|
|
24
|
-
expect: false
|
|
24
|
+
expect: false,
|
|
25
25
|
},
|
|
26
26
|
{
|
|
27
27
|
in: 'test@rocketmail.com',
|
|
28
|
-
expect: true
|
|
29
|
-
}
|
|
28
|
+
expect: true,
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
in: 'example@Cock.li',
|
|
32
|
+
expect: false,
|
|
33
|
+
},
|
|
30
34
|
]
|
|
31
35
|
|
|
32
36
|
for (const i of inputs) {
|
|
33
37
|
test(`${i.in} ${i.expect ? 'resolves' : 'does not resolve'}`, async (/** @type {TestContext} */ _t) => {
|
|
34
38
|
const results = await resolveEmail(i.in)
|
|
35
39
|
|
|
36
|
-
assert.strictEqual(
|
|
40
|
+
assert.strictEqual(
|
|
41
|
+
results.emailResolves,
|
|
42
|
+
i.expect,
|
|
43
|
+
`${i.in} ${i.expect ? 'resolves' : 'does not resolve'}`
|
|
44
|
+
)
|
|
37
45
|
})
|
|
38
46
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "resolve-email",
|
|
3
3
|
"description": "Resolve the domain of an email address to see if it even has a chance of delivering",
|
|
4
|
-
"version": "3.0.
|
|
4
|
+
"version": "3.0.4",
|
|
5
5
|
"author": "Bret Comnes <bcomnes@gmail.com> (https://bret.io)",
|
|
6
6
|
"bugs": {
|
|
7
7
|
"url": "https://github.com/bcomnes/resolve-email/issues"
|