otm-detector
Advanced tools
Comparing version 1.1.25 to 1.2.0
@@ -0,3 +1,7 @@ | ||
# Version 1.2.0 | ||
Added support for CJS (https://github.com/ahmsec) | ||
# Version 1.1.0 | ||
- IP blocklist feature added |
48
index.js
import dns from "node:dns/promises"; | ||
const OTM_HOSTS = new Set([ | ||
"in.mail.tm", | ||
"mail.onetimemail.org", | ||
"mx.mail-data.net", | ||
"mx1.emaildbox.pro", | ||
"mx2.emaildbox.pro", | ||
"mx3.emaildbox.pro", | ||
"mx4.emaildbox.pro", | ||
"mx5.emaildbox.pro", | ||
"prd-smtp.10minutemail.com", | ||
"emailfake.com", | ||
"mx1.forwardemail.net", | ||
"mx2.forwardemail.net", | ||
"mx2.den.yt", | ||
"route1.mx.cloudflare.net", | ||
"route2.mx.cloudflare.net", | ||
"route3.mx.cloudflare.net", | ||
"mx1-hosting.jellyfish.systems", | ||
"mx2-hosting.jellyfish.systems", | ||
"mx3-hosting.jellyfish.systems", | ||
"mx1.simplelogin.co", | ||
"mx2.simplelogin.co", | ||
"generator.email", | ||
]) | ||
const OTM_IPS = new Set([ | ||
"136.243.103.68", | ||
"137.184.243.159", | ||
"146.190.197.86", | ||
"15.204.213.223", | ||
"15.235.72.244", | ||
"15.235.72.245", | ||
"157.230.67.25", | ||
"164.90.254.47", | ||
"167.114.206.221", | ||
"167.172.1.68", | ||
"173.225.105.34", | ||
"194.31.59.229", | ||
"23.239.2.211", | ||
"24.199.67.157", | ||
"51.222.102.161", | ||
"54.39.17.59", | ||
"54.39.193.199", | ||
"66.70.233.243", // openmail.pro | ||
"92.255.84.131", | ||
"96.126.99.62", | ||
]) | ||
import { OTM_HOSTS, OTM_IPS } from './blocklist.js'; | ||
export const isOneTimeMail = async (domain, options = {}) => { | ||
@@ -49,0 +5,0 @@ const otmDns = options.dns || dns; |
{ | ||
"name": "otm-detector", | ||
"version": "1.1.25", | ||
"version": "1.2.0", | ||
"description": "Detect one-time mail services, the new way", | ||
@@ -11,2 +11,6 @@ "main": "index.js", | ||
"type": "module", | ||
"exports": { | ||
"import": "./index.js", | ||
"require": "./index.cjs" | ||
}, | ||
"repository": { | ||
@@ -24,3 +28,6 @@ "type": "git", | ||
}, | ||
"homepage": "https://github.com/Short-io/otm-detector#readme" | ||
"homepage": "https://github.com/Short-io/otm-detector#readme", | ||
"devDependencies": { | ||
"rollup": "^4.24.4" | ||
} | ||
} |
@@ -18,2 +18,3 @@ ## Module: OTM Detector | ||
Import: | ||
```javascript | ||
@@ -28,2 +29,12 @@ import { isOneTimeMail } from 'otm-detector'; | ||
Require: | ||
```javascript | ||
const { isOneTimeMail } = require('otm-detector'); | ||
const hostname = 'example.com'; | ||
const isOTM = await isOneTimeMail(hostname); | ||
console.log(`Is ${hostname} a one-time mail service? ${isOTM}`); | ||
``` | ||
### Related links | ||
@@ -37,4 +48,8 @@ | ||
### Development | ||
After editing `index.js`, run `npx rollup index.js --file index.cjs --format cjs` to generate a CommonJS module. | ||
Do not edit `index.cjs` directly. | ||
### License | ||
This module is licensed under the [MIT License](https://opensource.org/licenses/MIT). |
9108
9
199
53
1