fakefilter 0.1.1401 → 1.1.12

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 (278) hide show
  1. package/README.md +16 -66
  2. package/apiserver/api/ext_result.js +51 -0
  3. package/apiserver/api/ext_tasks.js +151 -0
  4. package/apiserver/api/is_fakedomain.js +39 -0
  5. package/apiserver/api/is_fakeemail.js +17 -0
  6. package/apiserver/api/ping.js +12 -0
  7. package/apiserver/docs/README.md +41 -0
  8. package/apiserver/docs/babel.config.js +3 -0
  9. package/apiserver/docs/blog/2019-05-28-first-blog-post.md +12 -0
  10. package/apiserver/docs/blog/2019-05-29-long-blog-post.md +44 -0
  11. package/apiserver/docs/blog/2021-08-01-mdx-blog-post.mdx +20 -0
  12. package/apiserver/docs/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg +0 -0
  13. package/apiserver/docs/blog/2021-08-26-welcome/index.md +25 -0
  14. package/apiserver/docs/blog/authors.yml +17 -0
  15. package/apiserver/docs/docs/intro.md +16 -0
  16. package/apiserver/docs/docs/nodejs/_category_.json +4 -0
  17. package/apiserver/docs/docs/nodejs/index.md +30 -0
  18. package/apiserver/docs/docs/restful/_category_.json +4 -0
  19. package/apiserver/docs/docs/restful/index.md +59 -0
  20. package/apiserver/docs/docusaurus.config.js +118 -0
  21. package/apiserver/docs/package.json +37 -0
  22. package/apiserver/docs/sidebars.js +31 -0
  23. package/apiserver/docs/src/components/HomepageFeatures/index.js +64 -0
  24. package/apiserver/docs/src/components/HomepageFeatures/styles.module.css +11 -0
  25. package/apiserver/docs/src/css/custom.css +39 -0
  26. package/apiserver/docs/src/pages/index.js +45 -0
  27. package/apiserver/docs/src/pages/index.module.css +23 -0
  28. package/apiserver/docs/src/pages/markdown-page.md +7 -0
  29. package/apiserver/docs/src/theme/IconArrow/index.js +10 -0
  30. package/apiserver/docs/static/.nojekyll +0 -0
  31. package/apiserver/docs/static/img/docusaurus.png +0 -0
  32. package/apiserver/docs/static/img/favicon.ico +0 -0
  33. package/apiserver/docs/static/img/logo.svg +1 -0
  34. package/apiserver/docs/static/img/tutorial/docsVersionDropdown.png +0 -0
  35. package/apiserver/docs/static/img/tutorial/localeDropdown.png +0 -0
  36. package/apiserver/docs/static/img/undraw_docusaurus_mountain.svg +171 -0
  37. package/apiserver/docs/static/img/undraw_docusaurus_react.svg +170 -0
  38. package/apiserver/docs/static/img/undraw_docusaurus_tree.svg +40 -0
  39. package/apiserver/inc/middleware_client.js +37 -0
  40. package/apiserver/inc/middleware_logging.js +17 -0
  41. package/apiserver/inc/shared.js +47 -0
  42. package/apiserver/inc/worker_fakefilter.js +53 -0
  43. package/apiserver/index.js +62 -0
  44. package/apiserver/public/10minemail.com.js +27 -0
  45. package/apiserver/public/10minuteemails.com.js +46 -0
  46. package/apiserver/public/10minutemail.com.js +29 -0
  47. package/apiserver/public/crazymailing.com.js +27 -0
  48. package/apiserver/public/gettempmail.com.js +39 -0
  49. package/apiserver/public/img/dynamic/README.md +0 -0
  50. package/apiserver/public/img/test.html +48 -0
  51. package/apiserver/public/onetempmail.com.js +35 -0
  52. package/apiserver/public/shared.js +54 -0
  53. package/apiserver/public/temp-mail.org.js +28 -0
  54. package/apiserver/public/tempmail.com.tr.js +36 -0
  55. package/apiserver/public/tempmail.net.js +28 -0
  56. package/apiserver/public/tempmailid.com.js +40 -0
  57. package/apiserver/public/tempmailo.org.js +36 -0
  58. package/apiserver/public/throwawaymail.com.js +27 -0
  59. package/burner/README.md +1 -0
  60. package/burner/burner-check.js +57 -0
  61. package/burner/emails.txt +57106 -0
  62. package/chart-update.js +261 -0
  63. package/cleanup.js +58 -0
  64. package/config.js +126 -0
  65. package/demos/visitor0/index.js +41 -0
  66. package/demos/visitor0/renderedDOM.html +8 -0
  67. package/elements/demo.js +78 -0
  68. package/elements/renderedDOM.html +6459 -0
  69. package/elements/screenshots/afterclick.png +0 -0
  70. package/elements/screenshots/goto.png +0 -0
  71. package/events.js +59 -0
  72. package/fetch.js +180 -0
  73. package/models/events.js +37 -0
  74. package/models/harvested.js +45 -0
  75. package/models/harvested_clone.js +44 -0
  76. package/package.json +44 -23
  77. package/providers/10-minute-mail.com.js +39 -0
  78. package/providers/10-minuten-mail.de.js +39 -0
  79. package/providers/10mails.net.js +41 -0
  80. package/providers/10minut.com.pl.js +39 -0
  81. package/providers/10minut.xyz.js +40 -0
  82. package/providers/10minuteemails.com.js +39 -0
  83. package/providers/10minutemail.co.za.js +39 -0
  84. package/providers/10minutemail.com.js +39 -0
  85. package/providers/10minutemail.info.js +38 -0
  86. package/providers/10minutemail.net.js +38 -0
  87. package/providers/10minutemail.org.js +38 -0
  88. package/providers/10minutesemail.net.js +36 -0
  89. package/providers/10minutesmail.us.js +39 -0
  90. package/providers/1secmail.com.js +39 -0
  91. package/providers/20minutemail.com.js +36 -0
  92. package/providers/22.do.js +25 -0
  93. package/providers/24hour.email.js +37 -0
  94. package/providers/___emailondeck.com.js +76 -0
  95. package/providers/abandonmail.com.js +39 -0
  96. package/providers/airmailbox.website.js +38 -0
  97. package/providers/akmail.in.js +37 -0
  98. package/providers/altaddress.org.js +50 -0
  99. package/providers/altmails.com.js +37 -0
  100. package/providers/anonbox.net.js +42 -0
  101. package/providers/anonmails.de.js +25 -0
  102. package/providers/anonymmail.net.js +47 -0
  103. package/providers/another-temp-mail.com.js +40 -0
  104. package/providers/awgarstone.com.js +15 -0
  105. package/providers/brodilla.email.js +45 -0
  106. package/providers/byom.de.js +42 -0
  107. package/providers/chacuo.net.js +38 -0
  108. package/providers/cryptogmail.com.js +40 -0
  109. package/providers/default.tmail.thehp.in.js +41 -0
  110. package/providers/developermail.com.js +39 -0
  111. package/providers/dispemail.com.js +38 -0
  112. package/providers/disposableemail.co.js +37 -0
  113. package/providers/disposableemail.us.js +37 -0
  114. package/providers/disposablemail.com.js +38 -0
  115. package/providers/disposeamail.com.js +43 -0
  116. package/providers/dispostable.com.js +39 -0
  117. package/providers/dodsi.com.js +38 -0
  118. package/providers/dropmail.me.js +37 -0
  119. package/providers/easytrashmail.com.js +33 -0
  120. package/providers/edumail.icu.js +36 -0
  121. package/providers/email-fake.com.js +35 -0
  122. package/providers/emailfake.com.js +35 -0
  123. package/providers/emailnator.com.js +37 -0
  124. package/providers/etempmail.com.js +36 -0
  125. package/providers/etempmail.net.js +37 -0
  126. package/providers/eyepaste.com.js +39 -0
  127. package/providers/fakemail.io.js +36 -0
  128. package/providers/fakemail.net.js +35 -0
  129. package/providers/fakemailgenerator.com.js +35 -0
  130. package/providers/fakermail.com.js +37 -0
  131. package/providers/faxmail.co.js +47 -0
  132. package/providers/fex.plus.js +38 -0
  133. package/providers/findtempmail.com.js +39 -0
  134. package/providers/foxiomail.com.js +42 -0
  135. package/providers/fyii.de.js +42 -0
  136. package/providers/gecicimail.co.js +14 -0
  137. package/providers/gecicimail.com.tr.js +15 -0
  138. package/providers/generator.email.js +37 -0
  139. package/providers/getnada.cc.js +37 -0
  140. package/providers/getnada.com.js +37 -0
  141. package/providers/gmailcity.com.js +37 -0
  142. package/providers/gpa.lu.js +37 -0
  143. package/providers/guerrillamail.com.js +38 -0
  144. package/providers/harakirimail.com.js +38 -0
  145. package/providers/haribu.net.js +39 -0
  146. package/providers/hizli.email.js +40 -0
  147. package/providers/hottempmail.com.js +52 -0
  148. package/providers/instant-email.org.js +39 -0
  149. package/providers/instantemailaddress.com.js +40 -0
  150. package/providers/internxt.com.js +47 -0
  151. package/providers/jooko.info.js +37 -0
  152. package/providers/kopeechka.store.js +43 -0
  153. package/providers/kuku.lu.js +37 -0
  154. package/providers/linshi-email.com.js +38 -0
  155. package/providers/linshiyou.com.js +25 -0
  156. package/providers/linshiyouxiang.net.js +36 -0
  157. package/providers/lroid.com.js +35 -0
  158. package/providers/luxusmail.org.js +39 -0
  159. package/providers/mail-temp.com.js +37 -0
  160. package/providers/mail-tester.com.js +37 -0
  161. package/providers/mail.gen.tr.js +14 -0
  162. package/providers/mail.gw.js +35 -0
  163. package/providers/mail.td.js +42 -0
  164. package/providers/mail.tm.js +35 -0
  165. package/providers/mail1.js +44 -0
  166. package/providers/mail1a.de.js +42 -0
  167. package/providers/mail4qa.com.js +37 -0
  168. package/providers/mail7.io.js +41 -0
  169. package/providers/mailcatch.com.js +38 -0
  170. package/providers/maildim.com.js +38 -0
  171. package/providers/maildrop.cc.js +38 -0
  172. package/providers/mailinator.com.js +27 -0
  173. package/providers/mailnesia.com.js +41 -0
  174. package/providers/mailpoof.com.js +71 -0
  175. package/providers/mailsac.com.js +27 -0
  176. package/providers/mailswipe.net.js +37 -0
  177. package/providers/minimail.eu.org.js +27 -0
  178. package/providers/mintemail.com.js +49 -0
  179. package/providers/minuteinbox.com.js +35 -0
  180. package/providers/moakt.com.js +37 -0
  181. package/providers/mohmal.com.js +39 -0
  182. package/providers/muellmail.com.js +40 -0
  183. package/providers/mytemp.email.js +35 -0
  184. package/providers/mytrashmailer.com.js +38 -0
  185. package/providers/niepodam.pl.js +53 -0
  186. package/providers/nolog.email.js +38 -0
  187. package/providers/onetempmail.com.js +37 -0
  188. package/providers/open.js +41 -0
  189. package/providers/oxyemail.com.js +38 -0
  190. package/providers/phaantm.de.js +42 -0
  191. package/providers/poo.email.js +27 -0
  192. package/providers/sandvpn.com.js +49 -0
  193. package/providers/shitmail.me.js +38 -0
  194. package/providers/shitmail.org.js +38 -0
  195. package/providers/snapmail.cc.js +42 -0
  196. package/providers/spamdecoy.net.js +38 -0
  197. package/providers/spamgourmet.com.js +29 -0
  198. package/providers/spoofmail.de.js +47 -0
  199. package/providers/static.js +32 -0
  200. package/providers/t-mail.org.js +42 -0
  201. package/providers/temp-email.info.js +39 -0
  202. package/providers/temp-inbox.com.js +38 -0
  203. package/providers/temp-inbox.me.js +47 -0
  204. package/providers/temp-mail.io.js +36 -0
  205. package/providers/temp-mail.org.2.js +60 -0
  206. package/providers/temp-mail.org.js +36 -0
  207. package/providers/temp-mailbox.com.js +35 -0
  208. package/providers/temp-mails.com.js +45 -0
  209. package/providers/temp.cab.js +39 -0
  210. package/providers/tempail.com.js +36 -0
  211. package/providers/tempinbox.xyz.js +38 -0
  212. package/providers/tempmail.adguard.com.js +31 -0
  213. package/providers/tempmail.altmails.com.js +37 -0
  214. package/providers/tempmail.cn.js +38 -0
  215. package/providers/tempmail.co.js +38 -0
  216. package/providers/tempmail.dev.js +35 -0
  217. package/providers/tempmail.io.js +38 -0
  218. package/providers/tempmail.ninja.js +35 -0
  219. package/providers/tempmail.plus.js +47 -0
  220. package/providers/tempmail.quest.js +45 -0
  221. package/providers/tempmail.run.js +37 -0
  222. package/providers/tempmail.tel.js +38 -0
  223. package/providers/tempmailed.com.js +43 -0
  224. package/providers/tempmailo.com.js +35 -0
  225. package/providers/tempo-email.com.js +38 -0
  226. package/providers/tempo-mail.xyz.js +40 -0
  227. package/providers/temporary-email.com.js +35 -0
  228. package/providers/temporary-email.org.js +36 -0
  229. package/providers/temporary-mail.net.js +42 -0
  230. package/providers/temporarymail.com.js +39 -0
  231. package/providers/tempos.email.js +38 -0
  232. package/providers/tempr.email.js +45 -0
  233. package/providers/temprmail.com.js +38 -0
  234. package/providers/tenmail.org.js +40 -0
  235. package/providers/thnen.com.js +25 -0
  236. package/providers/throwaway.io.js +39 -0
  237. package/providers/tmail.gg.js +36 -0
  238. package/providers/tmail.mmomekong.com.js +38 -0
  239. package/providers/tmailor.com.js +37 -0
  240. package/providers/tmailweb.com.js +39 -0
  241. package/providers/trash-mail.com.js +42 -0
  242. package/providers/trashmail.com.js +39 -0
  243. package/providers/trashmail.de.js +36 -0
  244. package/providers/trashmail.live.js +36 -0
  245. package/providers/trashmail.org.js +39 -0
  246. package/providers/trashmail.ws.js +42 -0
  247. package/providers/trashmails.com.js +38 -0
  248. package/providers/tuamaeaquelaursa.com.js +25 -0
  249. package/providers/txen.de.js +48 -0
  250. package/providers/wegwerfemailadresse.com.js +43 -0
  251. package/providers/yopmail.com.js +37 -0
  252. package/providers/yopmail.fr.js +37 -0
  253. package/providers/yopmail.net.js +37 -0
  254. package/providers/yourmail.online.js +39 -0
  255. package/providers/youxiang.dev.js +25 -0
  256. package/release.sh +26 -0
  257. package/repo-update.js +134 -0
  258. package/shared.js +736 -0
  259. package/test/doRequest.js +47 -0
  260. package/test/is_domain_banned.js +53 -0
  261. package/test/is_fakedomain.js +136 -0
  262. package/test/is_fakeemail.js +136 -0
  263. package/test/psl.js +58 -0
  264. package/test/repo_json_v1.js +30 -0
  265. package/test/repo_json_v2.js +41 -0
  266. package/test1.js +36 -0
  267. package/update-repo.sh +31 -0
  268. package/vars.js +16 -0
  269. package/CHARTS.md +0 -490
  270. package/LICENSE.md +0 -29
  271. package/examples/online.js +0 -16
  272. package/index.d.ts +0 -23
  273. package/index.js +0 -193
  274. package/json/data.json +0 -1
  275. package/json/data_version2.json +0 -1
  276. package/markdown/EXPIRED.md +0 -4117
  277. package/markdown/README.md +0 -9286
  278. package/txt/data.txt +0 -9286
@@ -0,0 +1,47 @@
1
+ const chalk = require('chalk')
2
+
3
+ function reply(res, reply_json = {}) {
4
+ console.log(chalk.green.inverse(`reply:`), JSON.stringify(reply_json))
5
+ return res.json(reply_json)
6
+ }
7
+
8
+ function hostnameFromEmailAddress(email) {
9
+ if (email && typeof email === 'string' && email.search(/@/) > 0)
10
+ return email.split(/@/)[1]
11
+ return null
12
+ }
13
+
14
+
15
+
16
+ function perDomain(combined, withoutExpired=false) {
17
+ let json = {
18
+ v:2,
19
+ domains: {},
20
+ }
21
+ for (let provider of Object.keys(combined)) {
22
+ let domains = combined[provider]
23
+ for (let domain of Object.keys(domains)) {
24
+ let data = domains[domain]
25
+ if (withoutExpired && data.expired) continue
26
+
27
+ if (!json.domains.hasOwnProperty(domain)) json.domains[domain] = {
28
+ providers: [provider],
29
+ hosts: data.hosts
30
+ };
31
+ else {
32
+ if (!json.domains[domain].providers.includes(provider)) json.domains[domain].providers.push(provider)
33
+ }
34
+
35
+ if (data.hasOwnProperty('unicodeDomain'))
36
+ json.domains[domain].unicodeDomain = data.unicodeDomain
37
+ }
38
+ }
39
+ return json.domains
40
+ }
41
+
42
+
43
+ module.exports = {
44
+ reply,
45
+ hostnameFromEmailAddress,
46
+ perDomain
47
+ }
@@ -0,0 +1,53 @@
1
+ const fs = require('fs')
2
+ const path = require('path')
3
+ const vars = require('./../../vars')
4
+ const chalk = require('chalk')
5
+ const { wait, isLocal } = require("mybase")
6
+ const { Sentry } = require('../../config')
7
+ const { pullDomains, combineDomains, obfuscatedTime } = require('../../shared')
8
+ const { perDomain } = require('./shared')
9
+
10
+ async function worker(config) {
11
+ console.log(chalk.green(`+ worker_fakefilter has been started`))
12
+
13
+ const cacheFile = path.join(config.cache_folder, 'api-current_filter.json')
14
+ // do we have a valid cache file to load immediately ?
15
+ if (fs.existsSync(cacheFile)) {
16
+ try {
17
+ let _tmp = JSON.parse(fs.readFileSync(cacheFile, 'utf8'))
18
+ vars.current_filter = _tmp
19
+ console.log(chalk.green(`+ current_filter has been loaded from cache`))
20
+ } catch (err) {
21
+ console.log(err)
22
+ Sentry.captureException(err)
23
+ }
24
+ }
25
+ while (true) {
26
+ try {
27
+ let rows = await pullDomains(isLocal() ? 30 : 10000)
28
+ if (rows) {
29
+ let [combined,expiredDomains] = await combineDomains(rows,true,365)
30
+ if (combined) {
31
+ vars.current_filter = perDomain(combined,true)
32
+ console.log(chalk.green(`\ncurrent_filter updated with ${Object.keys(vars.current_filter).length} domains`))
33
+ // lets write this into the cache file
34
+ try {
35
+ fs.writeFileSync(cacheFile, JSON.stringify(vars.current_filter))
36
+ } catch (err) {
37
+ Sentry.captureException(err)
38
+ console.log(err)
39
+ }
40
+ vars.coadmin_service_apiserver.report_every(1, 'worker1')
41
+ }
42
+ }
43
+ // console.log(domains)
44
+ } catch (err) {
45
+ console.log(err)
46
+ Sentry.captureException(err)
47
+ }
48
+ await wait(vars.current_filter ? 600: 60)
49
+ }
50
+ }
51
+
52
+
53
+ module.exports = worker
@@ -0,0 +1,62 @@
1
+ const cors = require('cors')
2
+ const chalk = require('chalk')
3
+ const express = require('express');
4
+ const app = express()
5
+ const bodyParser = require('body-parser');
6
+ const middleware_logging = require('./inc/middleware_logging')
7
+ const middleware_client = require('./inc/middleware_client')
8
+ const worker_fakefilter = require('./inc/worker_fakefilter')
9
+ const package = require('./../package.json')
10
+ const { getConfig, Sentry } = require('./../config.js');
11
+ const { api_ping } = require('./api/ping');
12
+ const { api_is_fakedomain } = require('./api/is_fakedomain');
13
+ const { api_is_fakeemail } = require('./api/is_fakeemail')
14
+
15
+ const { api_ext_tasks } = require('./api/ext_tasks');
16
+ const { api_ext_result } = require('./api/ext_result');
17
+ const vars = require('../vars');
18
+
19
+
20
+ let config
21
+
22
+ // middleware
23
+ app.set('view engine', 'ejs')
24
+ app.use(cors())
25
+
26
+ app.use(bodyParser.urlencoded({ extended: true, limit: '1mb' })) // if 413, look at parameterlimit
27
+ app.use(bodyParser.json({ limit: '1mb', strict: false }))
28
+ app.use(middleware_client)
29
+ app.use(middleware_logging)
30
+ app.use('/static',express.static('docs/build'))
31
+ app.use('/public',express.static('public'))
32
+
33
+ app.get(`/api/ping`, api_ping)
34
+ app.get(`/api/is/fakedomain/:domain`, api_is_fakedomain)
35
+ app.get(`/api/is/fakeemail/:email`, api_is_fakeemail)
36
+
37
+ // extention
38
+ app.get (`/api/ext/tasks`, api_ext_tasks)
39
+ app.post(`/api/ext/result`, api_ext_result)
40
+
41
+ app.get(`*`, (req, res) => {res.redirect('/static/') })
42
+
43
+ async function bootstrap() {
44
+ config = await getConfig()
45
+ worker_fakefilter(config)
46
+ console.log(chalk.green(`Starting fakefilter apiserver`))
47
+ try {
48
+ app.listen(config.apiserver.port, config.apiserver.ip, async function () {
49
+ console.log(chalk.bold(`${package.name} ${package.version} Server is running at ${chalk.yellow(config.apiserver.ip)}:${chalk.yellow(config.apiserver.port)}`));
50
+ vars.coadmin_service_apiserver.report("api launched")
51
+ })
52
+ }
53
+ catch (err) {
54
+ console.log(chalk.red(`Exception at start:`), err)
55
+ vars.coadmin_service_apiserver.report_error("bootstrap")
56
+ // if (Sentry) Sentry.captureException(err, { extra: { location: 'bootstrap' } })
57
+ softexit(60)
58
+ }
59
+ }
60
+
61
+ bootstrap()
62
+
@@ -0,0 +1,27 @@
1
+ let provider='10minemail.com'
2
+ let interval
3
+ let email_sent = false
4
+
5
+ let precondition = () => {
6
+ return document.querySelector('input#mail').value.search(/@/) > 0
7
+ }
8
+
9
+ let loop = () => {
10
+ console.log(`setInterval ${Date.now()}`)
11
+ if (precondition() !== true) {
12
+ console.log(`precondition not met`)
13
+ return
14
+ }
15
+ let emailAddr = document.querySelector('input#mail').value
16
+ console.log(`10minemail.com is ready to be picken up`, emailAddr)
17
+ sendResult(provider,emailAddr)
18
+ }
19
+
20
+ let bootstrap = () => {
21
+ console.log(`Document is ready`)
22
+ interval = setInterval(loop, 1000)
23
+ }
24
+
25
+ console.log(`10minemail.com module has been loaded`)
26
+
27
+ bootstrap()
@@ -0,0 +1,46 @@
1
+ let provider='10minuteemails.com'
2
+ let interval
3
+ let email_sent = false
4
+
5
+ let precondition = () => {
6
+ if (!validator) return false // we need validator
7
+ // if email address we send precondition true
8
+ // return false
9
+
10
+ for(let div of document.querySelectorAll('div.block')) {
11
+ if (validator.isEmail(div.innerHTML)) return true
12
+ // console.log(div.innerHTML)
13
+ }
14
+
15
+ // if button is there, we click to the button
16
+ let button1 = document.querySelector(`input[value="Create a Random Email"]`)
17
+ if (button1) {
18
+ console.log(`button1`,button1)
19
+ console.log(`clicking to button1`)
20
+ // click to the random button if seen
21
+ button1.click()
22
+ return false
23
+ }
24
+
25
+ return false
26
+ }
27
+
28
+ let loop = () => {
29
+ console.log(`setInterval ${Date.now()}`)
30
+ if (precondition() !== true) {
31
+ console.log(`precondition not met`)
32
+ return
33
+ }
34
+ let emailAddr = document.querySelector('div#email_id').innerHTML
35
+ console.log(`${provider} is ready to be picken up`,emailAddr)
36
+ sendResult(provider,emailAddr)
37
+ }
38
+
39
+ let bootstrap = () => {
40
+ console.log(`Document is ready`)
41
+ interval = setInterval(loop, 2000)
42
+ }
43
+
44
+ console.log(`${provider} module has been loaded`)
45
+
46
+ bootstrap()
@@ -0,0 +1,29 @@
1
+
2
+ let provider='10minutemail.com'
3
+ let interval
4
+ let email_sent = false
5
+
6
+
7
+ let precondition = () => {
8
+ return document.querySelector('input#mail_address[type="text"]').value.search(/@/)>0
9
+ }
10
+
11
+ let loop = () => {
12
+ console.log(`setInterval ${Date.now()}`)
13
+ if (precondition() !== true) {
14
+ console.log(`precondition not met`)
15
+ return
16
+ }
17
+ let emailAddr = document.querySelector('input#mail_address[type="text"]').value
18
+ console.log(`${provider} is ready to be picken up`,emailAddr)
19
+ sendResult(provider,emailAddr)
20
+ }
21
+
22
+ let bootstrap = () => {
23
+ console.log(`Document is ready`)
24
+ interval = setInterval(loop, 2000)
25
+ }
26
+
27
+ console.log(`${provider} module has been loaded`)
28
+
29
+ bootstrap()
@@ -0,0 +1,27 @@
1
+ let provider='crazymailing.com'
2
+ let interval
3
+ let email_sent = false
4
+
5
+
6
+ let precondition = () => {
7
+ return document.querySelector('#trsh_mail').value.search(/@/)>0
8
+ }
9
+
10
+ let loop = () => {
11
+ console.log(`setInterval ${Date.now()}`)
12
+ if (precondition() !== true) {
13
+ console.log(`precondition not met`)
14
+ return
15
+ }
16
+ let emailDomain = document.querySelector('#trsh_mail').value
17
+ console.log(`${provider} is ready to be picken up`,emailDomain)
18
+ sendResult(provider,`any`+emailDomain)
19
+ }
20
+
21
+ let bootstrap = () => {
22
+ console.log(`Document is ready`)
23
+ interval = setInterval(loop, 1000)
24
+ }
25
+ console.log(`${provider} module has been loaded`)
26
+
27
+ bootstrap()
@@ -0,0 +1,39 @@
1
+ let provider='gettempmail.com'
2
+ let interval
3
+ let email_sent = false
4
+
5
+ let precondition = () => {
6
+ let email_field = document.querySelector('div#email_id').innerHTML.search(/@/)>0
7
+ if (email_field===true) return true
8
+
9
+ let random_button = document.querySelector('input#random[type="submit"]')
10
+ console.log(`random_button`,random_button)
11
+ if (random_button) {
12
+ console.log(`clicking to random_button`)
13
+ // click to the random button if seen
14
+ random_button.click()
15
+ return false
16
+ }
17
+
18
+ return false
19
+ }
20
+
21
+ let loop = () => {
22
+ console.log(`setInterval ${Date.now()}`)
23
+ if (precondition() !== true) {
24
+ console.log(`precondition not met`)
25
+ return
26
+ }
27
+ let emailAddr = document.querySelector('div#email_id').innerHTML
28
+ console.log(`${provider} is ready to be picken up`,emailAddr)
29
+ sendResult(provider,emailAddr)
30
+ }
31
+
32
+ let bootstrap = () => {
33
+ console.log(`Document is ready`)
34
+ interval = setInterval(loop, 2000)
35
+ }
36
+
37
+ console.log(`${provider} module has been loaded`)
38
+
39
+ bootstrap()
File without changes
@@ -0,0 +1,48 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>5x5 Matrix</title>
7
+ <style>
8
+ .matrix {
9
+ display: grid;
10
+ grid-template-columns: repeat(5, 50px);
11
+ grid-template-rows: repeat(5, 50px);
12
+ gap: 5px;
13
+ }
14
+ .cell {
15
+ width: 50px;
16
+ height: 50px;
17
+ display: flex;
18
+ align-items: center;
19
+ justify-content: center;
20
+ border: 1px solid #ccc;
21
+ }
22
+ </style>
23
+ </head>
24
+ <body>
25
+ <script>
26
+ // Create the matrix container
27
+ const matrix = document.createElement('div');
28
+ matrix.className = 'matrix';
29
+
30
+ // Generate 5x5 cells with random colors
31
+ for (let i = 0; i < 25; i++) {
32
+ const cell = document.createElement('div');
33
+ cell.className = 'cell';
34
+
35
+ // Set a random background color
36
+ cell.style.backgroundColor = `#${Math.floor(Math.random() * 16777215).toString(16)}`;
37
+
38
+ // Optional: Add some text (like the cell number)
39
+ cell.textContent = i + 1;
40
+
41
+ matrix.appendChild(cell);
42
+ }
43
+
44
+ // Append the matrix to the body
45
+ document.body.appendChild(matrix);
46
+ </script>
47
+ </body>
48
+ </html>
@@ -0,0 +1,35 @@
1
+ let provider='onetempmail.com'
2
+
3
+ let interval
4
+ let email_sent = false
5
+
6
+ let precondition = () => {
7
+ return document.querySelector('h1 strong').innerText.search(/OTM/) > 0
8
+ }
9
+
10
+ let loop = () => {
11
+ if (!validator) return false // we need validator
12
+ console.log(`setInterval ${Date.now()}`)
13
+ if (precondition() !== true) {
14
+ console.log(`precondition not met`)
15
+ return
16
+ }
17
+
18
+ let emails = []
19
+ for (let item of document.querySelectorAll('a.transition')) {
20
+ if (validator.isEmail(`any@${item.innerText}`) && !emails.includes(`any@${item.innerText}`))
21
+ emails.push(`any@${item.innerText}`)
22
+ }
23
+ // let emailAddr = document.querySelector('input#eposta_adres').value
24
+ console.log(`onetempmail.com is ready to be picken up`, emails)
25
+ sendResult(provider,emails)
26
+ }
27
+
28
+ let bootstrap = () => {
29
+ console.log(`Document is ready`)
30
+ interval = setInterval(loop, 10000)
31
+ }
32
+
33
+ console.log(`onetempmail.com module has been loaded`)
34
+
35
+ bootstrap()
@@ -0,0 +1,54 @@
1
+ function reloadAfterHours(hours=12) {
2
+ console.log(`reloadAfterHours ${hours} hours`)
3
+ setTimeout(()=>{
4
+ location.reload(true)
5
+ },hours*60*60*1000)
6
+ }
7
+
8
+ function deleteCookies() {
9
+ var allCookies = document.cookie.split(';');
10
+
11
+ // The "expire" attribute of every cookie is
12
+ // Set to "Thu, 01 Jan 1970 00:00:00 GMT"
13
+ for (var i = 0; i < allCookies.length; i++)
14
+ document.cookie = allCookies[i] + "=;expires="
15
+ + new Date(0).toUTCString();
16
+
17
+ displayCookies.innerHTML = document.cookie;
18
+
19
+ }
20
+
21
+ function sendResult (provider,emailAddr) {
22
+ let emails = []
23
+ if (Array.isArray(emailAddr)) emails=emailAddr; else emails=[emailAddr];
24
+
25
+ console.log(`Sending result of ${provider}:`,emailAddr)
26
+ $.post("https://fakefilter.net/api/ext/result", {provider,emails} ,function (res) {
27
+ if (res.retcode==200) {
28
+ console.log(`Email '${emailAddr}' has been submitted successfully`)
29
+ document.body.innerHTML = `<h1>Success ${emailAddr}</h1><h2>Kapatabilirsiniz</h2> ${provider}`;
30
+ document.head.remove()
31
+ for(var iframe of document.querySelectorAll('iframe'))
32
+ iframe.remove()
33
+ }
34
+ else {
35
+ console.log(`Email could not be submitted`,res)
36
+ }
37
+
38
+ })
39
+ .done(function (x) {
40
+ console.log(`done`, x)
41
+ })
42
+ .fail(function (x) {
43
+ console.log(`fail`, x)
44
+ })
45
+ .always(function (x) {
46
+ console.log(`finished`, x)
47
+ email_sent = true
48
+ clearInterval(interval)
49
+ reloadAfterHours(12)
50
+ });
51
+ }
52
+
53
+ localStorage.clear()
54
+ deleteCookies()
@@ -0,0 +1,28 @@
1
+ let provider='temp-mail.org'
2
+
3
+ let interval
4
+ let email_sent = false
5
+
6
+ let precondition = () => {
7
+ return document.querySelector('input#mail').value.search(/@/) > 0
8
+ }
9
+
10
+ let loop = () => {
11
+ console.log(`setInterval ${Date.now()}`)
12
+ if (precondition() !== true) {
13
+ console.log(`precondition not met`)
14
+ return
15
+ }
16
+ let emailAddr = document.querySelector('input#mail').value
17
+ console.log(`temp-mail.org is ready to be picken up`, emailAddr)
18
+ sendResult(provider,emailAddr)
19
+ }
20
+
21
+ let bootstrap = () => {
22
+ console.log(`Document is ready`)
23
+ interval = setInterval(loop, 1000)
24
+ }
25
+
26
+ console.log(`temp-mail.org module has been loaded`)
27
+
28
+ bootstrap()
@@ -0,0 +1,36 @@
1
+ let provider='tempmail.com.tr'
2
+
3
+ let interval
4
+ let email_sent = false
5
+
6
+ let precondition = () => {
7
+ return document.querySelector('#trsh_mail').value.search(/@/) > 0
8
+ }
9
+
10
+ let loop = () => {
11
+ if (!validator) return false // we need validator
12
+ console.log(`looping ${Date.now()}`)
13
+ if (precondition() !== true) {
14
+ console.log(`precondition not met`)
15
+ return
16
+ }
17
+
18
+ // let emails = []
19
+ // for (let item of document.querySelectorAll('a.transition')) {
20
+ // if (validator.isEmail(`any@${item.innerText}`) && !emails.includes(`any@${item.innerText}`))
21
+ // emails.push(`any@${item.innerText}`)
22
+ // }
23
+ let emails = [ validator.isEmail(document.querySelector('#trsh_mail').value) ? document.querySelector('#trsh_mail').value : false ]
24
+ // let emailAddr = document.querySelector('input#eposta_adres').value
25
+ console.log(`tempmail.com.tr is ready to be picken up`, emails)
26
+ sendResult(provider,emails)
27
+ }
28
+
29
+ let bootstrap = () => {
30
+ console.log(`Document is ready`)
31
+ interval = setInterval(loop, 10000)
32
+ }
33
+
34
+ console.log(`tempmail.com.tr module has been loaded`)
35
+
36
+ bootstrap()
@@ -0,0 +1,28 @@
1
+ let provider='tempmail.net'
2
+
3
+ let interval
4
+ let email_sent = false
5
+
6
+ let precondition = () => {
7
+ return document.querySelector('input#eposta_adres').value.search(/@/) > 0
8
+ }
9
+
10
+ let loop = () => {
11
+ console.log(`setInterval ${Date.now()}`)
12
+ if (precondition() !== true) {
13
+ console.log(`precondition not met`)
14
+ return
15
+ }
16
+ let emailAddr = document.querySelector('input#eposta_adres').value
17
+ console.log(`tempmail.net is ready to be picken up`, emailAddr)
18
+ sendResult(provider,emailAddr)
19
+ }
20
+
21
+ let bootstrap = () => {
22
+ console.log(`Document is ready`)
23
+ interval = setInterval(loop, 1000)
24
+ }
25
+
26
+ console.log(`tempmail.net module has been loaded`)
27
+
28
+ bootstrap()
@@ -0,0 +1,40 @@
1
+
2
+ let provider='tempmailid.com'
3
+ let interval
4
+ let email_sent = false
5
+
6
+ let precondition = () => {
7
+ let email_field = document.querySelector('div#email_id').innerHTML.search(/@/)>0
8
+ if (email_field===true) return true
9
+
10
+ let random_button = document.querySelector('input#random[type="submit"]')
11
+ console.log(`random_button`,random_button)
12
+ if (random_button) {
13
+ console.log(`clicking to random_button`)
14
+ // click to the random button if seen
15
+ random_button.click()
16
+ return false
17
+ }
18
+
19
+ return false
20
+ }
21
+
22
+ let loop = () => {
23
+ console.log(`setInterval ${Date.now()}`)
24
+ if (precondition() !== true) {
25
+ console.log(`precondition not met`)
26
+ return
27
+ }
28
+ let emailAddr = document.querySelector('div#email_id').innerHTML
29
+ console.log(`${provider} is ready to be picken up`,emailAddr)
30
+ sendResult(provider,emailAddr)
31
+ }
32
+
33
+ let bootstrap = () => {
34
+ console.log(`Document is ready`)
35
+ interval = setInterval(loop, 2000)
36
+ }
37
+
38
+ console.log(`${provider} module has been loaded`)
39
+
40
+ bootstrap()
@@ -0,0 +1,36 @@
1
+ let provider='tempmailo.org'
2
+
3
+ let interval
4
+ let email_sent = false
5
+
6
+ let precondition = () => {
7
+ return document.querySelector('#trsh_mail').value.search(/@/) > 0
8
+ }
9
+
10
+ let loop = () => {
11
+ if (!validator) return false // we need validator
12
+ console.log(`looping ${Date.now()}`)
13
+ if (precondition() !== true) {
14
+ console.log(`precondition not met`)
15
+ return
16
+ }
17
+
18
+ // let emails = []
19
+ // for (let item of document.querySelectorAll('a.transition')) {
20
+ // if (validator.isEmail(`any@${item.innerText}`) && !emails.includes(`any@${item.innerText}`))
21
+ // emails.push(`any@${item.innerText}`)
22
+ // }
23
+ let emails = [ validator.isEmail(document.querySelector('#trsh_mail').value) ? document.querySelector('#trsh_mail').value : false ]
24
+ // let emailAddr = document.querySelector('input#eposta_adres').value
25
+ console.log(`tempmailo.org is ready to be picken up`, emails)
26
+ sendResult(provider,emails)
27
+ }
28
+
29
+ let bootstrap = () => {
30
+ console.log(`Document is ready`)
31
+ interval = setInterval(loop, 10000)
32
+ }
33
+
34
+ console.log(`tempmailo.org module has been loaded`)
35
+
36
+ bootstrap()
@@ -0,0 +1,27 @@
1
+ let provider='throwawaymail.com'
2
+ let interval
3
+ let email_sent = false
4
+
5
+ let precondition = () => {
6
+ return document.querySelector('span#email').innerHTML.search(/@/) > 0
7
+ }
8
+
9
+ let loop = () => {
10
+ console.log(`setInterval ${Date.now()}`)
11
+ if (precondition() !== true) {
12
+ console.log(`precondition not met`)
13
+ return
14
+ }
15
+ let emailAddr = document.querySelector('span#email').innerHTML
16
+ console.log(`throwawaymail.com is ready to be picken up`,emailAddr)
17
+ sendResult(provider,emailAddr)
18
+ }
19
+
20
+ let bootstrap = () => {
21
+ console.log(`Document is ready`)
22
+ interval = setInterval(loop, 1000)
23
+ }
24
+
25
+ console.log(`throwawaymail.com module has been loaded`)
26
+
27
+ bootstrap()
@@ -0,0 +1 @@
1
+ scripts to process https://github.com/wesbos/burner-email-providers list