fakefilter 1.1.13 → 1.1.1581

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.
Files changed (274) hide show
  1. package/LICENSE.md +29 -0
  2. package/README.md +66 -16
  3. package/dist/index.d.ts +9 -0
  4. package/dist/index.js +220 -0
  5. package/dist/json/data.json +1 -0
  6. package/dist/types.d.ts +16 -0
  7. package/dist/types.js +3 -0
  8. package/package.json +36 -42
  9. package/apiserver/api/ext_result.js +0 -51
  10. package/apiserver/api/ext_tasks.js +0 -151
  11. package/apiserver/api/is_fakedomain.js +0 -39
  12. package/apiserver/api/is_fakeemail.js +0 -17
  13. package/apiserver/api/ping.js +0 -12
  14. package/apiserver/docs/README.md +0 -41
  15. package/apiserver/docs/babel.config.js +0 -3
  16. package/apiserver/docs/blog/2019-05-28-first-blog-post.md +0 -12
  17. package/apiserver/docs/blog/2019-05-29-long-blog-post.md +0 -44
  18. package/apiserver/docs/blog/2021-08-01-mdx-blog-post.mdx +0 -20
  19. package/apiserver/docs/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg +0 -0
  20. package/apiserver/docs/blog/2021-08-26-welcome/index.md +0 -25
  21. package/apiserver/docs/blog/authors.yml +0 -17
  22. package/apiserver/docs/docs/intro.md +0 -16
  23. package/apiserver/docs/docs/nodejs/_category_.json +0 -4
  24. package/apiserver/docs/docs/nodejs/index.md +0 -30
  25. package/apiserver/docs/docs/restful/_category_.json +0 -4
  26. package/apiserver/docs/docs/restful/index.md +0 -59
  27. package/apiserver/docs/docusaurus.config.js +0 -118
  28. package/apiserver/docs/package.json +0 -37
  29. package/apiserver/docs/sidebars.js +0 -31
  30. package/apiserver/docs/src/components/HomepageFeatures/index.js +0 -64
  31. package/apiserver/docs/src/components/HomepageFeatures/styles.module.css +0 -11
  32. package/apiserver/docs/src/css/custom.css +0 -39
  33. package/apiserver/docs/src/pages/index.js +0 -45
  34. package/apiserver/docs/src/pages/index.module.css +0 -23
  35. package/apiserver/docs/src/pages/markdown-page.md +0 -7
  36. package/apiserver/docs/src/theme/IconArrow/index.js +0 -10
  37. package/apiserver/docs/static/.nojekyll +0 -0
  38. package/apiserver/docs/static/img/docusaurus.png +0 -0
  39. package/apiserver/docs/static/img/favicon.ico +0 -0
  40. package/apiserver/docs/static/img/logo.svg +0 -1
  41. package/apiserver/docs/static/img/tutorial/docsVersionDropdown.png +0 -0
  42. package/apiserver/docs/static/img/tutorial/localeDropdown.png +0 -0
  43. package/apiserver/docs/static/img/undraw_docusaurus_mountain.svg +0 -171
  44. package/apiserver/docs/static/img/undraw_docusaurus_react.svg +0 -170
  45. package/apiserver/docs/static/img/undraw_docusaurus_tree.svg +0 -40
  46. package/apiserver/inc/middleware_client.js +0 -37
  47. package/apiserver/inc/middleware_logging.js +0 -17
  48. package/apiserver/inc/shared.js +0 -47
  49. package/apiserver/inc/worker_fakefilter.js +0 -53
  50. package/apiserver/index.js +0 -62
  51. package/apiserver/public/10minemail.com.js +0 -27
  52. package/apiserver/public/10minuteemails.com.js +0 -46
  53. package/apiserver/public/10minutemail.com.js +0 -29
  54. package/apiserver/public/crazymailing.com.js +0 -27
  55. package/apiserver/public/gettempmail.com.js +0 -39
  56. package/apiserver/public/img/dynamic/README.md +0 -0
  57. package/apiserver/public/img/test.html +0 -48
  58. package/apiserver/public/onetempmail.com.js +0 -35
  59. package/apiserver/public/shared.js +0 -54
  60. package/apiserver/public/temp-mail.org.js +0 -28
  61. package/apiserver/public/tempmail.com.tr.js +0 -36
  62. package/apiserver/public/tempmail.net.js +0 -28
  63. package/apiserver/public/tempmailid.com.js +0 -40
  64. package/apiserver/public/tempmailo.org.js +0 -36
  65. package/apiserver/public/throwawaymail.com.js +0 -27
  66. package/burner/README.md +0 -1
  67. package/burner/burner-check.js +0 -57
  68. package/burner/emails.txt +0 -57106
  69. package/chart-update.js +0 -261
  70. package/cleanup.js +0 -58
  71. package/config.js +0 -126
  72. package/demos/visitor0/index.js +0 -41
  73. package/demos/visitor0/renderedDOM.html +0 -8
  74. package/elements/demo.js +0 -78
  75. package/elements/renderedDOM.html +0 -6459
  76. package/elements/screenshots/afterclick.png +0 -0
  77. package/elements/screenshots/goto.png +0 -0
  78. package/events.js +0 -59
  79. package/fetch.js +0 -180
  80. package/models/events.js +0 -37
  81. package/models/harvested.js +0 -45
  82. package/models/harvested_clone.js +0 -44
  83. package/providers/10-minute-mail.com.js +0 -39
  84. package/providers/10-minuten-mail.de.js +0 -39
  85. package/providers/10mails.net.js +0 -41
  86. package/providers/10minut.com.pl.js +0 -39
  87. package/providers/10minut.xyz.js +0 -40
  88. package/providers/10minuteemails.com.js +0 -39
  89. package/providers/10minutemail.co.za.js +0 -39
  90. package/providers/10minutemail.com.js +0 -39
  91. package/providers/10minutemail.info.js +0 -38
  92. package/providers/10minutemail.net.js +0 -38
  93. package/providers/10minutemail.org.js +0 -38
  94. package/providers/10minutesemail.net.js +0 -36
  95. package/providers/10minutesmail.us.js +0 -39
  96. package/providers/1secmail.com.js +0 -39
  97. package/providers/20minutemail.com.js +0 -36
  98. package/providers/22.do.js +0 -25
  99. package/providers/24hour.email.js +0 -37
  100. package/providers/___emailondeck.com.js +0 -76
  101. package/providers/abandonmail.com.js +0 -39
  102. package/providers/airmailbox.website.js +0 -38
  103. package/providers/akmail.in.js +0 -37
  104. package/providers/altaddress.org.js +0 -50
  105. package/providers/altmails.com.js +0 -37
  106. package/providers/anonbox.net.js +0 -42
  107. package/providers/anonmails.de.js +0 -25
  108. package/providers/anonymmail.net.js +0 -47
  109. package/providers/another-temp-mail.com.js +0 -40
  110. package/providers/awgarstone.com.js +0 -15
  111. package/providers/brodilla.email.js +0 -45
  112. package/providers/byom.de.js +0 -42
  113. package/providers/chacuo.net.js +0 -38
  114. package/providers/cryptogmail.com.js +0 -40
  115. package/providers/default.tmail.thehp.in.js +0 -41
  116. package/providers/developermail.com.js +0 -39
  117. package/providers/dispemail.com.js +0 -38
  118. package/providers/disposableemail.co.js +0 -37
  119. package/providers/disposableemail.us.js +0 -37
  120. package/providers/disposablemail.com.js +0 -38
  121. package/providers/disposeamail.com.js +0 -43
  122. package/providers/dispostable.com.js +0 -39
  123. package/providers/dodsi.com.js +0 -38
  124. package/providers/dropmail.me.js +0 -37
  125. package/providers/easytrashmail.com.js +0 -33
  126. package/providers/edumail.icu.js +0 -36
  127. package/providers/email-fake.com.js +0 -35
  128. package/providers/emailfake.com.js +0 -35
  129. package/providers/emailnator.com.js +0 -37
  130. package/providers/etempmail.com.js +0 -36
  131. package/providers/etempmail.net.js +0 -37
  132. package/providers/eyepaste.com.js +0 -39
  133. package/providers/fakemail.io.js +0 -36
  134. package/providers/fakemail.net.js +0 -35
  135. package/providers/fakemailgenerator.com.js +0 -35
  136. package/providers/fakermail.com.js +0 -37
  137. package/providers/faxmail.co.js +0 -47
  138. package/providers/fex.plus.js +0 -38
  139. package/providers/findtempmail.com.js +0 -39
  140. package/providers/foxiomail.com.js +0 -42
  141. package/providers/fyii.de.js +0 -42
  142. package/providers/gecicimail.co.js +0 -14
  143. package/providers/gecicimail.com.tr.js +0 -15
  144. package/providers/generator.email.js +0 -37
  145. package/providers/getnada.cc.js +0 -37
  146. package/providers/getnada.com.js +0 -37
  147. package/providers/gmailcity.com.js +0 -37
  148. package/providers/gpa.lu.js +0 -37
  149. package/providers/guerrillamail.com.js +0 -38
  150. package/providers/harakirimail.com.js +0 -38
  151. package/providers/haribu.net.js +0 -39
  152. package/providers/hizli.email.js +0 -40
  153. package/providers/hottempmail.com.js +0 -52
  154. package/providers/instant-email.org.js +0 -39
  155. package/providers/instantemailaddress.com.js +0 -40
  156. package/providers/internxt.com.js +0 -47
  157. package/providers/jooko.info.js +0 -37
  158. package/providers/kopeechka.store.js +0 -43
  159. package/providers/kuku.lu.js +0 -37
  160. package/providers/linshi-email.com.js +0 -38
  161. package/providers/linshiyou.com.js +0 -25
  162. package/providers/linshiyouxiang.net.js +0 -36
  163. package/providers/lroid.com.js +0 -35
  164. package/providers/luxusmail.org.js +0 -39
  165. package/providers/mail-temp.com.js +0 -37
  166. package/providers/mail-tester.com.js +0 -37
  167. package/providers/mail.gen.tr.js +0 -14
  168. package/providers/mail.gw.js +0 -35
  169. package/providers/mail.td.js +0 -42
  170. package/providers/mail.tm.js +0 -35
  171. package/providers/mail1.js +0 -44
  172. package/providers/mail1a.de.js +0 -42
  173. package/providers/mail4qa.com.js +0 -37
  174. package/providers/mail7.io.js +0 -41
  175. package/providers/mailcatch.com.js +0 -38
  176. package/providers/maildim.com.js +0 -38
  177. package/providers/maildrop.cc.js +0 -38
  178. package/providers/mailinator.com.js +0 -27
  179. package/providers/mailnesia.com.js +0 -41
  180. package/providers/mailpoof.com.js +0 -71
  181. package/providers/mailsac.com.js +0 -27
  182. package/providers/mailswipe.net.js +0 -37
  183. package/providers/minimail.eu.org.js +0 -27
  184. package/providers/mintemail.com.js +0 -49
  185. package/providers/minuteinbox.com.js +0 -35
  186. package/providers/moakt.com.js +0 -37
  187. package/providers/mohmal.com.js +0 -39
  188. package/providers/muellmail.com.js +0 -40
  189. package/providers/mytemp.email.js +0 -35
  190. package/providers/mytrashmailer.com.js +0 -38
  191. package/providers/niepodam.pl.js +0 -53
  192. package/providers/nolog.email.js +0 -38
  193. package/providers/onetempmail.com.js +0 -37
  194. package/providers/open.js +0 -41
  195. package/providers/oxyemail.com.js +0 -38
  196. package/providers/phaantm.de.js +0 -42
  197. package/providers/poo.email.js +0 -27
  198. package/providers/sandvpn.com.js +0 -49
  199. package/providers/shitmail.me.js +0 -38
  200. package/providers/shitmail.org.js +0 -38
  201. package/providers/snapmail.cc.js +0 -42
  202. package/providers/spamdecoy.net.js +0 -38
  203. package/providers/spamgourmet.com.js +0 -29
  204. package/providers/spoofmail.de.js +0 -47
  205. package/providers/static.js +0 -32
  206. package/providers/t-mail.org.js +0 -42
  207. package/providers/temp-email.info.js +0 -39
  208. package/providers/temp-inbox.com.js +0 -38
  209. package/providers/temp-inbox.me.js +0 -47
  210. package/providers/temp-mail.io.js +0 -36
  211. package/providers/temp-mail.org.2.js +0 -60
  212. package/providers/temp-mail.org.js +0 -36
  213. package/providers/temp-mailbox.com.js +0 -35
  214. package/providers/temp-mails.com.js +0 -45
  215. package/providers/temp.cab.js +0 -39
  216. package/providers/tempail.com.js +0 -36
  217. package/providers/tempinbox.xyz.js +0 -38
  218. package/providers/tempmail.adguard.com.js +0 -31
  219. package/providers/tempmail.altmails.com.js +0 -37
  220. package/providers/tempmail.cn.js +0 -38
  221. package/providers/tempmail.co.js +0 -38
  222. package/providers/tempmail.dev.js +0 -35
  223. package/providers/tempmail.io.js +0 -38
  224. package/providers/tempmail.ninja.js +0 -35
  225. package/providers/tempmail.plus.js +0 -47
  226. package/providers/tempmail.quest.js +0 -45
  227. package/providers/tempmail.run.js +0 -37
  228. package/providers/tempmail.tel.js +0 -38
  229. package/providers/tempmailed.com.js +0 -43
  230. package/providers/tempmailo.com.js +0 -35
  231. package/providers/tempo-email.com.js +0 -38
  232. package/providers/tempo-mail.xyz.js +0 -40
  233. package/providers/temporary-email.com.js +0 -35
  234. package/providers/temporary-email.org.js +0 -36
  235. package/providers/temporary-mail.net.js +0 -42
  236. package/providers/temporarymail.com.js +0 -39
  237. package/providers/tempos.email.js +0 -38
  238. package/providers/tempr.email.js +0 -45
  239. package/providers/temprmail.com.js +0 -38
  240. package/providers/tenmail.org.js +0 -40
  241. package/providers/thnen.com.js +0 -25
  242. package/providers/throwaway.io.js +0 -39
  243. package/providers/tmail.gg.js +0 -36
  244. package/providers/tmail.mmomekong.com.js +0 -38
  245. package/providers/tmailor.com.js +0 -37
  246. package/providers/tmailweb.com.js +0 -39
  247. package/providers/trash-mail.com.js +0 -42
  248. package/providers/trashmail.com.js +0 -39
  249. package/providers/trashmail.de.js +0 -36
  250. package/providers/trashmail.live.js +0 -36
  251. package/providers/trashmail.org.js +0 -39
  252. package/providers/trashmail.ws.js +0 -42
  253. package/providers/trashmails.com.js +0 -38
  254. package/providers/tuamaeaquelaursa.com.js +0 -25
  255. package/providers/txen.de.js +0 -48
  256. package/providers/wegwerfemailadresse.com.js +0 -43
  257. package/providers/yopmail.com.js +0 -37
  258. package/providers/yopmail.fr.js +0 -37
  259. package/providers/yopmail.net.js +0 -37
  260. package/providers/yourmail.online.js +0 -39
  261. package/providers/youxiang.dev.js +0 -25
  262. package/release.sh +0 -26
  263. package/repo-update.js +0 -134
  264. package/shared.js +0 -736
  265. package/test/doRequest.js +0 -47
  266. package/test/is_domain_banned.js +0 -53
  267. package/test/is_fakedomain.js +0 -136
  268. package/test/is_fakeemail.js +0 -136
  269. package/test/psl.js +0 -58
  270. package/test/repo_json_v1.js +0 -30
  271. package/test/repo_json_v2.js +0 -41
  272. package/test1.js +0 -36
  273. package/update-repo.sh +0 -37
  274. package/vars.js +0 -16
@@ -0,0 +1,16 @@
1
+ export interface DomainDetails {
2
+ provider: string;
3
+ firstseen: number;
4
+ lastseen: number;
5
+ randomSubdomain: string | boolean;
6
+ }
7
+ export interface FakeDomainResponse {
8
+ retcode: number;
9
+ isFakeDomain: string | false;
10
+ details: DomainDetails | null;
11
+ }
12
+ export interface FakeFilterDataset {
13
+ version: number;
14
+ t: number;
15
+ domains: Record<string, unknown>;
16
+ }
package/dist/types.js ADDED
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ // Central type definitions for the fakefilter library
3
+ Object.defineProperty(exports, "__esModule", { value: true });
package/package.json CHANGED
@@ -1,49 +1,43 @@
1
1
  {
2
2
  "name": "fakefilter",
3
- "version": "1.1.13",
4
- "description": "",
5
- "main": "fetch.js",
6
- "dependencies": {
7
- "@7c/autovalidate": "^1.0.3",
8
- "@sentry/node": "^6.18.1",
9
- "axios": "^1.5.0",
10
- "body-parser": "^1.19.2",
11
- "chalk": "^4.0.0",
12
- "cheerio": "^1.0.0",
13
- "coadmin-lib": "^1.0.4",
14
- "cors": "^2.8.5",
15
- "debug": "^4.3.4",
16
- "easy-table": "^1.2.0",
17
- "express": "^4.17.3",
18
- "md5": "^2.3.0",
19
- "minimist": "^1.2.5",
20
- "mybase": "^1.0.48",
21
- "mysql2": "^2.3.3",
22
- "node-vault": "^0.9.22",
23
- "parse-domain": "^5.0.0",
24
- "playwright": "^1.49.0",
25
- "playwright-extra": "^4.3.6",
26
- "progressbar": "^1.3.0",
27
- "punycode": "^2.3.0",
28
- "puppeteer": "^13.4.1",
29
- "puppeteer-extra": "^3.2.3",
30
- "puppeteer-extra-plugin-recaptcha": "^3.5.0",
31
- "puppeteer-extra-plugin-stealth": "^2.9.0",
32
- "quickchart-js": "^3.0.0",
33
- "sequelize": "^6.17.0",
34
- "tcp-mutex": "^1.0.1",
35
- "useragentsdata": "^1.0.23",
36
- "validator": "^13.7.0",
37
- "winston": "^3.6.0"
38
- },
3
+ "version": "1.1.1581",
4
+ "description": "reliable fake and temp email filter solution for site operators",
5
+ "license": "BSD-3-Clause",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "files": [
9
+ "dist"
10
+ ],
39
11
  "scripts": {
40
- "test": "npx mocha --exit"
12
+ "build": "tsc -p tsconfig.build.json",
13
+ "clean": "rm -rf dist",
14
+ "prepare": "npm run build",
15
+ "test": "jest --forceExit",
16
+ "typecheck": "tsc --noEmit",
17
+ "example:online": "ts-node examples/online.ts"
18
+ },
19
+ "repository": {
20
+ "type": "git",
21
+ "url": "git+https://github.com/7c/fakefilter.git"
22
+ },
23
+ "keywords": [
24
+ "fakeemail",
25
+ "tempemail",
26
+ "tempmail",
27
+ "email",
28
+ "filter"
29
+ ],
30
+ "author": "7c",
31
+ "bugs": {
32
+ "url": "https://github.com/7c/fakefilter/issues"
41
33
  },
42
- "author": "",
43
- "license": "ISC",
34
+ "homepage": "https://github.com/7c/fakefilter#readme",
44
35
  "devDependencies": {
45
- "chai": "^4.3.7",
46
- "mocha": "^10.2.0",
47
- "should": "^13.2.3"
36
+ "@types/jest": "^30.0.0",
37
+ "@types/node": "^25.9.1",
38
+ "jest": "^30.4.2",
39
+ "ts-jest": "^29.4.11",
40
+ "ts-node": "^10.9.2",
41
+ "typescript": "^6.0.3"
48
42
  }
49
43
  }
@@ -1,51 +0,0 @@
1
- const { reply } = require('../inc/shared')
2
- const vars = require('../../vars')
3
- const { validEmail } = require('mybase')
4
- const { validateParameters } = require('@7c/autovalidate')
5
- const { getDomainPart, domainFromEmail } = require('../../shared')
6
- const { Sentry } = require('../../config')
7
-
8
- async function api_ext_result(req, res, next) {
9
- let validation = validateParameters(req.body,
10
- [
11
- { key: 'emails', type: ['array'], required: true },
12
- { key: 'provider', type: ['string'], required: true },
13
- ])
14
- if (!validation.validated) return reply(res, { retcode: -50, validation })
15
-
16
- let { provider, emails } = validation.values
17
-
18
- try {
19
- for (email of emails) {
20
- if (validEmail(email)) {
21
- console.log(`adding new email ${email}`)
22
- let thedomain = getDomainPart(domainFromEmail(email))
23
- await vars.models.Harvested.create({
24
- provider,
25
- t: Date.now(),
26
- domain: thedomain
27
- })
28
-
29
- await vars.models.Events.create({
30
- provider,
31
- t: Date.now(),
32
- event: 'fetch',
33
- result: 'success'
34
- })
35
- console.log(`added new email ${email} domain ${thedomain}`)
36
- }
37
- }
38
-
39
- return reply(res, {
40
- retcode: 200,
41
- validation
42
- })
43
- } catch (err) {
44
- console.log(err)
45
- Sentry.captureException(err)
46
- return reply(res, { retcode: -1 })
47
- }
48
-
49
- }
50
-
51
- module.exports = { api_ext_result }
@@ -1,151 +0,0 @@
1
- const { reply } = require('../inc/shared')
2
- const vars = require('../../vars')
3
-
4
-
5
-
6
- function api_ext_tasks(req, res, next) {
7
- let jobs = [
8
- {
9
- id:'temp-mail.org',
10
- start_url:'https://temp-mail.org',
11
- domains:['temp-mail.org','www.temp-mail.org'],
12
- scripts:['https://code.jquery.com/jquery-3.6.0.min.js','https://fakefilter.net/public/shared.js','https://fakefilter.net/public/temp-mail.org.js'],
13
- remind_every:18 // hours
14
- },
15
- {
16
- id:'10minemail.com',
17
- start_url:'https://10minemail.com',
18
- domains:['10minemail.com','www.10minemail.com'],
19
- scripts:['https://code.jquery.com/jquery-3.6.0.min.js','https://fakefilter.net/public/shared.js','https://fakefilter.net/public/10minemail.com.js'],
20
- remind_every:18 // hours
21
- },
22
-
23
- {
24
- id:'throwawaymail.com',
25
- start_url:'https://throwawaymail.com',
26
- domains:['throwawaymail.com','www.throwawaymail.com'],
27
- scripts:['https://code.jquery.com/jquery-3.6.0.min.js','https://fakefilter.net/public/shared.js','https://fakefilter.net/public/throwawaymail.com.js'],
28
- remind_every:48 // hours
29
- },
30
-
31
- {
32
- id:'crazymailing.com',
33
- start_url:'https://crazymailing.com',
34
- domains:['crazymailing.com','www.crazymailing.com'],
35
- scripts:['https://code.jquery.com/jquery-3.6.0.min.js',
36
- 'https://fakefilter.net/public/shared.js',
37
- 'https://fakefilter.net/public/crazymailing.com.js'],
38
- remind_every:78 // hours
39
- },
40
-
41
-
42
- {
43
- id:'gettempmail.com',
44
- start_url:'https://gettempmail.com',
45
- domains:['gettempmail.com','www.gettempmail.com'],
46
- scripts:['https://code.jquery.com/jquery-3.6.0.min.js',
47
- 'https://fakefilter.net/public/shared.js',
48
- 'https://fakefilter.net/public/gettempmail.com.js'],
49
- remind_every:18 // hours
50
- },
51
- {
52
- id:'tempmailid.com',
53
- start_url:'https://tempmailid.com',
54
- domains:['tempmailid.com','www.tempmailid.com'],
55
- scripts:['https://code.jquery.com/jquery-3.6.0.min.js',
56
- 'https://fakefilter.net/public/shared.js',
57
- 'https://fakefilter.net/public/tempmailid.com.js'],
58
- remind_every:78 // hours
59
- },
60
-
61
- {
62
- id:'10minutemail.com',
63
- start_url:'https://10minutemail.com',
64
- domains:['10minutemail.com','www.10minutemail.com'],
65
- scripts:['https://code.jquery.com/jquery-3.6.0.min.js',
66
- 'https://fakefilter.net/public/shared.js',
67
- 'https://fakefilter.net/public/10minutemail.com.js'],
68
- remind_every:18 // hours
69
- },
70
-
71
-
72
- {
73
- id:'10minuteemails.com',
74
- start_url:'https://10minuteemails.com',
75
- domains:['10minuteemails.com','www.10minuteemails.com'],
76
- scripts:['https://code.jquery.com/jquery-3.6.0.min.js',
77
- 'https://unpkg.com/validator@latest/validator.min.js',
78
- 'https://fakefilter.net/public/shared.js',
79
- 'https://fakefilter.net/public/10minuteemails.com.js'],
80
- remind_every:17 // hours
81
- },
82
-
83
- {
84
- id:'tempmail.net',
85
- start_url:'https://tempmail.net',
86
- domains:['tempmail.net','www.tempmail.net'],
87
- scripts:['https://code.jquery.com/jquery-3.6.0.min.js',
88
- 'https://unpkg.com/validator@latest/validator.min.js',
89
- 'https://fakefilter.net/public/shared.js',
90
- 'https://fakefilter.net/public/tempmail.net.js'],
91
- remind_every:36 // hours
92
- },
93
- {
94
- id:'onetempmail.com',
95
- start_url:'https://onetempmail.com',
96
- domains:['onetempmail.com','www.onetempmail.com'],
97
- scripts:['https://code.jquery.com/jquery-3.6.0.min.js',
98
- 'https://unpkg.com/validator@latest/validator.min.js',
99
- 'https://fakefilter.net/public/shared.js',
100
- 'https://fakefilter.net/public/onetempmail.com.js'],
101
- remind_every:36 // hours
102
- },
103
- {
104
- id:'tempmail.com.tr',
105
- start_url:'https://tempmail.com.tr',
106
- domains:['tempmail.com.tr','www.tempmail.com.tr'],
107
- scripts:['https://code.jquery.com/jquery-3.6.0.min.js',
108
- 'https://unpkg.com/validator@latest/validator.min.js',
109
- 'https://fakefilter.net/public/shared.js',
110
- 'https://fakefilter.net/public/tempmail.com.tr.js'
111
- ],
112
- // 'https://fakefilter.net/public/thnen.com.js'],
113
- remind_every:36 // hours
114
- },
115
- {
116
- id:'tempmailo.org',
117
- start_url:'https://tempmailo.org',
118
- domains:['tempmailo.org'],
119
- scripts:['https://code.jquery.com/jquery-3.6.0.min.js',
120
- 'https://unpkg.com/validator@latest/validator.min.js',
121
- 'https://fakefilter.net/public/shared.js',
122
- 'https://fakefilter.net/public/tempmailo.org.js'
123
- ],
124
- // 'https://fakefilter.net/public/thnen.com.js'],
125
- remind_every:36 // hours
126
- },
127
-
128
- // {
129
- // id:'tempmailid.com',
130
- // start_url:'https://tempmailid.com',
131
- // click_to:'input#random[type="submit"]',
132
- // preconditions:[
133
- // 'div#email_id',
134
- // ],
135
-
136
- // send:'body',
137
- // remind_every:18 // hours
138
- // },
139
- ]
140
-
141
- return reply(res, {
142
- retcode: 200,
143
- jobs,
144
- config:{
145
- fetch_config: 6 // fetch the config every 6 hours
146
- }
147
-
148
- })
149
- }
150
-
151
- module.exports = { api_ext_tasks }
@@ -1,39 +0,0 @@
1
- const punycode = require('punycode/')
2
- const { reply } = require('../inc/shared')
3
- const { validateParameters } = require('@7c/autovalidate')
4
- const { validHostname } = require('mybase')
5
- const vars = require('../../vars')
6
- const { is_domain_banned } = require('../../shared')
7
-
8
- // GET
9
- function api_is_fakedomain(req, res, next) {
10
- let response = validateParameters(req.params, [{ key: 'domain', type: ['string'], validator: (v) => v.search(/\./) > 0 }])
11
- let { validated } = response
12
- if (!validated) return reply(res, { retcode: -50 })
13
- let { domain } = response.values
14
- let original_domain = domain
15
-
16
- // is it an idn domain (unicode formatted)
17
- if (punycode.toASCII(domain)!==domain)
18
- domain = punycode.toASCII(domain)
19
-
20
- if (!validHostname(domain)) return reply(res, { retcode: -50 })
21
-
22
- try {
23
- let outcome = is_domain_banned(domain,vars.current_filter)
24
- if (outcome!==null) { // null indicates problem with the domain
25
- vars.coadmin_service_apiserver.report_every(1,'is_fakedomain')
26
- return reply(res, {
27
- retcode: 200,
28
- isFakeDomain:typeof outcome==='object' ? original_domain : false,
29
- details: typeof outcome==='object' ? outcome : null
30
- })
31
- }
32
- } catch (err) {
33
- console.log(err)
34
- Sentry.captureException(err)
35
- }
36
- return reply(res, { retcode: -1 })
37
- }
38
-
39
- module.exports = { api_is_fakedomain }
@@ -1,17 +0,0 @@
1
- const { reply, hostnameFromEmailAddress } = require('../inc/shared')
2
- const { validateParameters } = require('@7c/autovalidate')
3
- const { validEmail } = require('mybase')
4
- const vars = require('../../vars')
5
- const { api_is_fakedomain } = require('./is_fakedomain')
6
-
7
- // GET
8
- function api_is_fakeemail(req, res, next) {
9
- let response = validateParameters(req.params, [{ key: 'email', type: ['string'], validator: (v) => validEmail(v) }])
10
- let { validated, values } = response
11
- if (!validated) return reply(res, { retcode: -50 })
12
- let { email } = response.values
13
- req.params.domain = hostnameFromEmailAddress(email)
14
- api_is_fakedomain(req,res,next)
15
- }
16
-
17
- module.exports = { api_is_fakeemail }
@@ -1,12 +0,0 @@
1
- const { reply } = require('../inc/shared')
2
- // var debug=require('debug')('apiserver')
3
-
4
- // GET
5
- function api_ping (req, res, next) {
6
- reply(res,{
7
- retcode: 200,
8
- message: 'pong',
9
- })
10
- }
11
-
12
- module.exports = { api_ping }
@@ -1,41 +0,0 @@
1
- # Website
2
-
3
- This website is built using [Docusaurus 2](https://docusaurus.io/), a modern static website generator.
4
-
5
- ### Installation
6
-
7
- ```
8
- $ yarn
9
- ```
10
-
11
- ### Local Development
12
-
13
- ```
14
- $ yarn start
15
- ```
16
-
17
- This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
18
-
19
- ### Build
20
-
21
- ```
22
- $ yarn build
23
- ```
24
-
25
- This command generates static content into the `build` directory and can be served using any static contents hosting service.
26
-
27
- ### Deployment
28
-
29
- Using SSH:
30
-
31
- ```
32
- $ USE_SSH=true yarn deploy
33
- ```
34
-
35
- Not using SSH:
36
-
37
- ```
38
- $ GIT_USER=<Your GitHub username> yarn deploy
39
- ```
40
-
41
- If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.
@@ -1,3 +0,0 @@
1
- module.exports = {
2
- presets: [require.resolve('@docusaurus/core/lib/babel/preset')],
3
- };
@@ -1,12 +0,0 @@
1
- ---
2
- slug: first-blog-post
3
- title: First Blog Post
4
- authors:
5
- name: Gao Wei
6
- title: Docusaurus Core Team
7
- url: https://github.com/wgao19
8
- image_url: https://github.com/wgao19.png
9
- tags: [hola, docusaurus]
10
- ---
11
-
12
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
@@ -1,44 +0,0 @@
1
- ---
2
- slug: long-blog-post
3
- title: Long Blog Post
4
- authors: endi
5
- tags: [hello, docusaurus]
6
- ---
7
-
8
- This is the summary of a very long blog post,
9
-
10
- Use a `<!--` `truncate` `-->` comment to limit blog post size in the list view.
11
-
12
- <!--truncate-->
13
-
14
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
15
-
16
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
17
-
18
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
19
-
20
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
21
-
22
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
23
-
24
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
25
-
26
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
27
-
28
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
29
-
30
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
31
-
32
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
33
-
34
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
35
-
36
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
37
-
38
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
39
-
40
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
41
-
42
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
43
-
44
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
@@ -1,20 +0,0 @@
1
- ---
2
- slug: mdx-blog-post
3
- title: MDX Blog Post
4
- authors: [slorber]
5
- tags: [docusaurus]
6
- ---
7
-
8
- Blog posts support [Docusaurus Markdown features](https://docusaurus.io/docs/markdown-features), such as [MDX](https://mdxjs.com/).
9
-
10
- :::tip
11
-
12
- Use the power of React to create interactive blog posts.
13
-
14
- ```js
15
- <button onClick={() => alert('button clicked!')}>Click me!</button>
16
- ```
17
-
18
- <button onClick={() => alert('button clicked!')}>Click me!</button>
19
-
20
- :::
@@ -1,25 +0,0 @@
1
- ---
2
- slug: welcome
3
- title: Welcome
4
- authors: [slorber, yangshun]
5
- tags: [facebook, hello, docusaurus]
6
- ---
7
-
8
- [Docusaurus blogging features](https://docusaurus.io/docs/blog) are powered by the [blog plugin](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog).
9
-
10
- Simply add Markdown files (or folders) to the `blog` directory.
11
-
12
- Regular blog authors can be added to `authors.yml`.
13
-
14
- The blog post date can be extracted from filenames, such as:
15
-
16
- - `2019-05-30-welcome.md`
17
- - `2019-05-30-welcome/index.md`
18
-
19
- A blog post folder can be convenient to co-locate blog post images:
20
-
21
- ![Docusaurus Plushie](./docusaurus-plushie-banner.jpeg)
22
-
23
- The blog supports tags as well!
24
-
25
- **And if you don't want a blog**: just delete this directory, and use `blog: false` in your Docusaurus config.
@@ -1,17 +0,0 @@
1
- endi:
2
- name: Endilie Yacop Sucipto
3
- title: Maintainer of Docusaurus
4
- url: https://github.com/endiliey
5
- image_url: https://github.com/endiliey.png
6
-
7
- yangshun:
8
- name: Yangshun Tay
9
- title: Front End Engineer @ Facebook
10
- url: https://github.com/yangshun
11
- image_url: https://github.com/yangshun.png
12
-
13
- slorber:
14
- name: Sébastien Lorber
15
- title: Docusaurus maintainer
16
- url: https://sebastienlorber.com
17
- image_url: https://github.com/slorber.png
@@ -1,16 +0,0 @@
1
- ---
2
- sidebar_position: 1
3
- ---
4
-
5
- # About FakeFilter
6
-
7
- FakeFilter`s aim is to monitor Fake/Temp Email providers and offer site operators the chance to distinguish between fake- and real emails. Even though anonimity is a right of clients, site operators also do have rights to know about this. This way they can decide whether they want to accept registrations or not.
8
-
9
- ## Repo
10
-
11
- Main repo can be found at [Github](https://github.com/7c/fakefilter/), this repo hosts different formats such as [JSON](https://github.com/7c/fakefilter/blob/main/json/data.json), [Markdown](https://github.com/7c/fakefilter/tree/main/markdown), [Txt](https://github.com/7c/fakefilter/blob/main/txt/data.txt). These formats are designed for you to implement FakeFilter into different backends.
12
-
13
- ## Offline databases
14
-
15
- Offline Database is distributed through the repo, updated daily at 00:00 UTC time in different formats. You may `git pull` the repo right after 00:00 UTC to get latest formats. You may also `npm update` to get latest npm package if you are using NodeJS. We increase the package version daily.
16
-
@@ -1,4 +0,0 @@
1
- {
2
- "label": "NodeJS API",
3
- "position": 2
4
- }
@@ -1,30 +0,0 @@
1
- # NodeJS API
2
-
3
- ## Installation
4
- `npm i --save fakefilter`
5
-
6
- ## Usage
7
- We provide isFakeDomain and isFakeEmail functions to be implemented from NodeJS.Both return boolean `false` if there is no match, otherwise they will return the domain which has matched
8
-
9
-
10
- ### Basic Usage
11
- See [index.js](https://github.com/7c/fakefilter/blob/82c5fe3851418813d605a678e48b34d84bad3fcc/index.js#L40) for tests and how to use it.
12
-
13
- ```
14
- const { isFakeDomain, isFakeEmail } = require('fakefilter')
15
-
16
- console.log(isFakeDomain('domain.com')) // will return false
17
- console.log(isFakeEmail('user@domain.com')) // will return false
18
-
19
- // domain lookup
20
- console.log(isFakeDomain('afakedomain.com')) // will return 'afakedomain.com'
21
- console.log(isFakeDomain('sub.afakedomain.com')) // will return 'afakedomain.com'
22
- console.log(isFakeDomain('subafakedomain.com')) // will return false
23
-
24
- // email lookup
25
- console.log(isFakeEmail('user@afakedomain.com')) // will return 'afakedomain.com'
26
- console.log(isFakeEmail('user@sub.afakedomain.com')) // will return 'afakedomain.com'
27
- console.log(isFakeEmail('user@asubafakedomain.com')) // will return false
28
-
29
- ```
30
-
@@ -1,4 +0,0 @@
1
- {
2
- "label": "RESTful API",
3
- "position": 3
4
- }