fakefilter 1.1.10 → 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 (67) hide show
  1. package/apiserver/inc/shared.js +3 -1
  2. package/apiserver/inc/worker_fakefilter.js +3 -3
  3. package/apiserver/public/img/test.html +48 -0
  4. package/chart-update.js +156 -74
  5. package/config.js +2 -2
  6. package/demos/visitor0/index.js +41 -0
  7. package/demos/visitor0/renderedDOM.html +8 -0
  8. package/elements/demo.js +78 -0
  9. package/elements/renderedDOM.html +6459 -0
  10. package/elements/screenshots/afterclick.png +0 -0
  11. package/elements/screenshots/goto.png +0 -0
  12. package/fetch.js +4 -1
  13. package/package.json +6 -3
  14. package/providers/10-minute-mail.com.js +2 -1
  15. package/providers/10-minuten-mail.de.js +2 -1
  16. package/providers/10mails.net.js +2 -1
  17. package/providers/10minut.com.pl.js +2 -1
  18. package/providers/10minutemail.co.za.js +2 -1
  19. package/providers/10minutesemail.net.js +2 -2
  20. package/providers/10minutesmail.us.js +2 -1
  21. package/providers/22.do.js +25 -0
  22. package/providers/abandonmail.com.js +2 -1
  23. package/providers/akmail.in.js +3 -3
  24. package/providers/altaddress.org.js +50 -0
  25. package/providers/anonymmail.net.js +47 -0
  26. package/providers/awgarstone.com.js +15 -0
  27. package/providers/brodilla.email.js +3 -2
  28. package/providers/chacuo.net.js +38 -0
  29. package/providers/dispemail.com.js +3 -2
  30. package/providers/disposableemail.us.js +2 -1
  31. package/providers/dispostable.com.js +2 -1
  32. package/providers/emailnator.com.js +37 -0
  33. package/providers/etempmail.com.js +36 -0
  34. package/providers/fakemail.io.js +2 -1
  35. package/providers/faxmail.co.js +47 -0
  36. package/providers/findtempmail.com.js +3 -2
  37. package/providers/foxiomail.com.js +3 -2
  38. package/providers/getnada.cc.js +37 -0
  39. package/providers/gmailcity.com.js +37 -0
  40. package/providers/hottempmail.com.js +3 -2
  41. package/providers/instantemailaddress.com.js +3 -2
  42. package/providers/internxt.com.js +47 -0
  43. package/providers/jooko.info.js +2 -1
  44. package/providers/kopeechka.store.js +0 -10
  45. package/providers/kuku.lu.js +37 -0
  46. package/providers/linshiyou.com.js +25 -0
  47. package/providers/linshiyouxiang.net.js +36 -0
  48. package/providers/mail.td.js +13 -13
  49. package/providers/mail.tm.js +1 -1
  50. package/providers/mail1.js +44 -0
  51. package/providers/mail4qa.com.js +37 -0
  52. package/providers/muellmail.com.js +7 -8
  53. package/providers/snapmail.cc.js +42 -0
  54. package/providers/static.js +32 -0
  55. package/providers/temp-inbox.me.js +47 -0
  56. package/providers/temp-mail.org.2.js +60 -0
  57. package/providers/temp-mail.org.js +36 -0
  58. package/providers/temp-mailbox.com.js +35 -0
  59. package/providers/tempmail.adguard.com.js +31 -0
  60. package/providers/tempmail.io.js +38 -0
  61. package/providers/tempmail.quest.js +45 -0
  62. package/providers/temporary-email.org.js +36 -0
  63. package/providers/tuamaeaquelaursa.com.js +25 -0
  64. package/providers/youxiang.dev.js +25 -0
  65. package/repo-update.js +26 -13
  66. package/shared.js +225 -48
  67. package/update-repo.sh +6 -19
@@ -23,16 +23,6 @@ function start(headless=true,waitTime=3) {
23
23
  console.log(err)
24
24
  resolve(false)
25
25
  })
26
- // let {page,browser} = await launch(headless,URL,waitTime)
27
- // let email = await emailBy_querySelector_innerText(page,'#email_id')
28
- // // console.log(email)
29
- // if (browser) await browser.close()
30
- // if (email) return resolve({
31
- // email,
32
- // URL,
33
- // t:Date.now()
34
- // })
35
-
36
26
  } catch (err) {
37
27
  console.log(err)
38
28
  Sentry.captureException(err)
@@ -0,0 +1,37 @@
1
+
2
+ const { Sentry } = require('../config')
3
+ const { initiateEmpty, launch, email_recursive_search, emailBy_querySelector_innerHTML, emailBy_id_value } = require('../shared')
4
+ const vars = require('./../vars')
5
+ const URL = 'https://m.kuku.lu/index.php'
6
+
7
+ function start(headless=true,waitTime=5) {
8
+ return new Promise(async function (resolve,reject) {
9
+ try {
10
+ let {page,browser} = await launch(headless,URL,waitTime)
11
+ let email = await email_recursive_search(page,'#area_addrlist')
12
+ // console.log(`outer`,email)
13
+ if (browser) await browser.close()
14
+ if (email) return resolve({
15
+ email,
16
+ URL,
17
+ t:Date.now()
18
+ })
19
+ return resolve(null)
20
+ } catch (err) {
21
+ console.log(err)
22
+ Sentry.captureException(err)
23
+ resolve(false)
24
+ }
25
+ })
26
+ }
27
+
28
+ // for cli usage - development
29
+ if (require.main==module) {
30
+ start(false).then(res=>console.log(res))
31
+ }
32
+
33
+ vars.providers.push({
34
+ name:'kuku.lu',
35
+ init:initiateEmpty,
36
+ start:start
37
+ })
@@ -0,0 +1,25 @@
1
+ const { findByIdValue, initiateEmpty } = require('../shared')
2
+ const vars = require('./../vars')
3
+ const URL = 'https://linshiyou.com/'
4
+
5
+ function start(headless = true, waitTime = 3) {
6
+ return new Promise(async function (resolve, reject) {
7
+ return resolve({
8
+ email: [`any@linshiyou.com`],
9
+ URL,
10
+ t: Date.now()
11
+ })
12
+ })
13
+ }
14
+
15
+
16
+ // for cli usage - development
17
+ if (require.main == module) {
18
+ start(false).then(res => console.log(res))
19
+ }
20
+
21
+ vars.providers.push({
22
+ name: 'linshiyou.com',
23
+ init: initiateEmpty,
24
+ start: start
25
+ })
@@ -0,0 +1,36 @@
1
+ const { validEmail } = require('mybase')
2
+ const { Sentry } = require('../config')
3
+ const { initiateEmpty, launch, emailBy_id_innerText, emailBy_querySelector_innerHTML, emailBy_id_value, emailBy_querySelector_value } = require('../shared')
4
+ const vars = require('./../vars')
5
+ const URL = 'https://linshiyouxiang.net'
6
+
7
+ function start(headless = true, waitTime = 5) {
8
+ return new Promise(async function (resolve, reject) {
9
+ try {
10
+ let { page, browser } = await launch(headless, URL, waitTime)
11
+ let email = await emailBy_id_value(page,'active-mail')
12
+ if (browser) await browser.close()
13
+ if (validEmail(email)) return resolve({
14
+ email,
15
+ URL,
16
+ t: Date.now()
17
+ })
18
+ return resolve(null)
19
+ } catch (err) {
20
+ console.log(err)
21
+ Sentry.captureException(err)
22
+ resolve(false)
23
+ }
24
+ })
25
+ }
26
+
27
+ // for cli usage - development
28
+ if (require.main == module) {
29
+ start(false).then(res => console.log(res))
30
+ }
31
+
32
+ vars.providers.push({
33
+ name: 'linshiyouxiang.net',
34
+ init: initiateEmpty,
35
+ start: start,
36
+ })
@@ -4,21 +4,21 @@ const { initiateEmpty, launch, emailBy_id_innerText, emailBy_querySelector_inner
4
4
  const vars = require('./../vars')
5
5
  const URL = 'https://mail.td/en/mail'
6
6
 
7
- function start(headless=true,waitTime=4) {
8
- return new Promise(async function (resolve,reject) {
7
+ function start(headless = true, waitTime = 4) {
8
+ return new Promise(async function (resolve, reject) {
9
9
  try {
10
- let {page,browser} = await launch(headless,URL,waitTime,'input[name=mailSuffix]')
11
- let got = await emailBy_querySelector_innerHTML(page,'a.select-none',true)
10
+ let { page, browser } = await launch(headless, URL, waitTime, 'input[name=mailSuffix]', false, 'load', '127.0.0.1:9050')
11
+ let got = await emailBy_querySelector_innerHTML(page, 'a.select-none', true)
12
12
  let email = []
13
13
  if (Array.isArray(got))
14
- email = got.map(i=>validEmail(`any@${i}`) ? `any@${i}`: false)
15
-
14
+ email = got.map(i => validEmail(`any@${i}`) ? `any@${i}` : false)
15
+
16
16
  if (browser) await browser.close()
17
17
 
18
- if (email.length>0) return resolve({
18
+ if (email.length > 0) return resolve({
19
19
  email,
20
20
  URL,
21
- t:Date.now()
21
+ t: Date.now()
22
22
  })
23
23
  return resolve(null)
24
24
  } catch (err) {
@@ -30,13 +30,13 @@ function start(headless=true,waitTime=4) {
30
30
  }
31
31
 
32
32
  // for cli usage - development
33
- if (require.main==module) {
34
- start(false).then(res=>console.log(res))
33
+ if (require.main == module) {
34
+ start(false).then(res => console.log(res))
35
35
  }
36
36
 
37
37
  // pending
38
38
  vars.providers.push({
39
- name:'mail.td',
40
- init:initiateEmpty,
41
- start:start
39
+ name: 'mail.td',
40
+ init: initiateEmpty,
41
+ start: start
42
42
  })
@@ -7,7 +7,7 @@ function start(headless=true,waitTime=3) {
7
7
  return new Promise(async function (resolve,reject) {
8
8
  try {
9
9
  let {page,browser} = await launch(headless,URL,waitTime)
10
- let email = await emailBy_id_value(page,'DontUseWEBuseAPI')
10
+ let email = await emailBy_id_value(page,'Dont_use_WEB_use_API')
11
11
  if (browser) await browser.close()
12
12
  if (email) return resolve({
13
13
  email,
@@ -0,0 +1,44 @@
1
+ const { initiateEmpty, launch, emailBy_id_innerText, emailBy_querySelector_innerHTML, emailBy_id_value, emailFrom_combobox_id, emailBy_querySelector_value, emailFrom_combobox_selector } = require('../shared')
2
+ const vars = require('./../vars')
3
+ const URL = 'http://mail1.io'
4
+
5
+ function start(headless = true, waitTime = 3) {
6
+ return new Promise(async function (resolve, reject) {
7
+ const domains = ['basketball.group',
8
+ 'britishpreschool.net',
9
+ 'busykitchen.com',
10
+ 'hacker9.org',
11
+ 'l9pdev.com',
12
+ 'linux0.net',
13
+ 'ucm8.com',
14
+ 'looksecure.net',
15
+ 'mail1.local',
16
+ 'megaradical.com',
17
+ 'multiscanner.org',
18
+ 'pimmel.top',
19
+ 'privacylock.net']
20
+
21
+ let emails = []
22
+ for (let domain of domains) {
23
+ emails.push(`static@${domain}`)
24
+ }
25
+ return resolve({
26
+ email: emails,
27
+ URL,
28
+ t: Date.now()
29
+ })
30
+
31
+ })
32
+ }
33
+
34
+ // for cli usage - development
35
+ if (require.main == module) {
36
+ start(false).then(res => console.log(res))
37
+ }
38
+
39
+ // pending
40
+ vars.providers.push({
41
+ name: 'mail1.io',
42
+ init: initiateEmpty,
43
+ start: start
44
+ })
@@ -0,0 +1,37 @@
1
+ const { Sentry } = require('../config')
2
+ const { initiateEmpty, launch, emailFrom_combobox_selector, emailBy_querySelector_innerHTML, emailBy_id_value } = require('../shared')
3
+ const vars = require('./../vars')
4
+ const URL = 'https://console.mail4qa.com/inbox/'
5
+
6
+ function start(headless=true,waitTime=5) {
7
+ return new Promise(async function (resolve,reject) {
8
+ try {
9
+ let {page,browser} = await launch(headless,URL,0)
10
+
11
+ let email = await emailFrom_combobox_selector(page,'.inbox_domain',false)
12
+ // console.log(email)
13
+ // if (browser) await browser.close()
14
+ if (email) return resolve({
15
+ email,
16
+ URL,
17
+ t:Date.now()
18
+ })
19
+ return resolve(null)
20
+ } catch (err) {
21
+ console.log(err)
22
+ Sentry.captureException(err)
23
+ resolve(false)
24
+ }
25
+ })
26
+ }
27
+
28
+ // for cli usage - development
29
+ if (require.main==module) {
30
+ start(false).then(res=>console.log(res))
31
+ }
32
+
33
+ vars.providers.push({
34
+ name:'mail4qa.com',
35
+ init:initiateEmpty,
36
+ start:start
37
+ })
@@ -1,21 +1,20 @@
1
1
  const { validEmail, wait } = require('mybase')
2
2
  const { Sentry } = require('../config')
3
- const { initiateEmpty, launch, emailBy_id_innerText, emailBy_querySelector_innerHTML, emailBy_id_value } = require('../shared')
3
+ const { initiateEmpty, launch, clickto_element_withText, emailFrom_combobox_selector, email_recursive_search, emailBy_id_value } = require('../shared')
4
4
  const vars = require('./../vars')
5
5
  const URL = 'https://muellmail.com'
6
6
 
7
- function start(headless=true,waitTime=15) {
7
+ function start(headless=true,waitTime=5) {
8
8
  return new Promise(async function (resolve,reject) {
9
9
  try {
10
10
  let {page,browser} = await launch(headless,URL,waitTime)
11
- await page.evaluate(() => { generateNewMail(); }, '')
12
- await wait(3)
13
- // await page.screenshot({path: 'screenshots/before.png', fullPage: true})
14
- let email = await emailBy_querySelector_innerHTML(page,'#address')
11
+
12
+
13
+ let emails = await emailFrom_combobox_selector(page,'select')
15
14
 
16
15
  if (browser) await browser.close()
17
- if (email) return resolve({
18
- email,
16
+ if (emails && emails.length>0) return resolve({
17
+ email:emails,
19
18
  URL,
20
19
  t:Date.now()
21
20
  })
@@ -0,0 +1,42 @@
1
+ const { validEmail } = require('mybase')
2
+ const { Sentry } = require('../config')
3
+ const { initiateEmpty, launch, emailBy_id_innerText, emailBy_querySelector_innerHTML, emailBy_id_value, emailBy_querySelector_value } = require('../shared')
4
+ const vars = require('./../vars')
5
+ const URL = 'https://snapmail.cc'
6
+
7
+ function start(headless = true, waitTime = 5) {
8
+ return new Promise(async function (resolve, reject) {
9
+ try {
10
+ let { page, browser } = await launch(headless, URL, waitTime)
11
+ let email=[ ]
12
+ let raw = await emailBy_querySelector_innerHTML(page,'span',true)
13
+ if (Array.isArray(raw))
14
+ for(let i of raw)
15
+ if (validEmail(`any${i}`)) email.push(`any${i}`)
16
+
17
+ if (browser) await browser.close()
18
+ if (email.length >0) return resolve({
19
+ email,
20
+ URL,
21
+ t:Date.now()
22
+ })
23
+
24
+ return resolve(null)
25
+ } catch (err) {
26
+ console.log(err)
27
+ Sentry.captureException(err)
28
+ resolve(false)
29
+ }
30
+ })
31
+ }
32
+
33
+ // for cli usage - development
34
+ if (require.main == module) {
35
+ start(false).then(res => console.log(res))
36
+ }
37
+
38
+ vars.providers.push({
39
+ name: 'snapmail.cc',
40
+ init: initiateEmpty,
41
+ start: start,
42
+ })
@@ -0,0 +1,32 @@
1
+ const { initiateEmpty, launch, emailBy_id_innerText, emailBy_querySelector_innerHTML, emailBy_id_value, emailFrom_combobox_id, emailBy_querySelector_value, emailFrom_combobox_selector } = require('../shared')
2
+ const vars = require('./../vars')
3
+ const URL = 'http://static'
4
+
5
+ function start(headless = true, waitTime = 3) {
6
+ return new Promise(async function (resolve, reject) {
7
+ const domains = ['mxscout.com','justatemp.com']
8
+
9
+ let emails = []
10
+ for (let domain of domains) {
11
+ emails.push(`static@${domain}`)
12
+ }
13
+ return resolve({
14
+ email: emails,
15
+ URL,
16
+ t: Date.now()
17
+ })
18
+
19
+ })
20
+ }
21
+
22
+ // for cli usage - development
23
+ if (require.main == module) {
24
+ start(false).then(res => console.log(res))
25
+ }
26
+
27
+ // pending
28
+ vars.providers.push({
29
+ name: 'static',
30
+ init: initiateEmpty,
31
+ start: start
32
+ })
@@ -0,0 +1,47 @@
1
+
2
+ const { Sentry } = require('../config')
3
+ const { initiateEmpty, launch, emailBy_id_innerText, emailBy_querySelector_innerText } = require('../shared')
4
+ const vars = require('./../vars')
5
+ const URL = 'https://temp-inbox.me'
6
+
7
+ function start(headless=true,waitTime=3) {
8
+ return new Promise(async function (resolve,reject) {
9
+ try {
10
+ let {page,browser} = await launch(headless,URL,waitTime)
11
+ // let email = await emailBy_querySelector_innerText(page,'.input-group-text',true)
12
+
13
+ // // select a random address with their api
14
+ // await page.evaluate(() => {
15
+ // randomAddress('sb-user', 'sb-domain');
16
+ // })
17
+
18
+
19
+
20
+ let email = await emailBy_querySelector_innerText(page,'#curent_inbox')
21
+
22
+ // console.log(email)
23
+ if (browser) await browser.close()
24
+ if (email) return resolve({
25
+ email,
26
+ URL,
27
+ t:Date.now()
28
+ })
29
+ return resolve(null)
30
+ } catch (err) {
31
+ console.log(err)
32
+ Sentry.captureException(err)
33
+ resolve(false)
34
+ }
35
+ })
36
+ }
37
+
38
+ // for cli usage - development
39
+ if (require.main==module) {
40
+ start(false).then(res=>console.log(res))
41
+ }
42
+
43
+ vars.providers.push({
44
+ name:'temp-inbox.me',
45
+ init:initiateEmpty,
46
+ start:start
47
+ })
@@ -0,0 +1,60 @@
1
+ const { validEmail, isLocal } = require('mybase')
2
+ const { Sentry } = require('../config')
3
+ const { initiateEmpty, launch } = require('../shared')
4
+ const vars = require('./../vars')
5
+ const URL = 'https://web2.temp-mail.org'
6
+
7
+ function start(headless = true, waitTime = 15) {
8
+ return new Promise(async function (resolve, reject) {
9
+ try {
10
+ let { page, browser } = await launch(headless, URL, waitTime, false, false, 'domcontentloaded')
11
+
12
+ let got = await page.evaluate(async () => {
13
+ var res2 = await fetch("https://web2.temp-mail.org/mailbox", {
14
+ "headers": {
15
+ "accept": "*/*",
16
+ "accept-language": "en-US,en;q=0.9",
17
+ "content-type": "application/json",
18
+ "sec-ch-ua": "\"Google Chrome\";v=\"123\", \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"123\"",
19
+ "sec-ch-ua-mobile": "?0",
20
+ "sec-ch-ua-platform": "\"macOS\"",
21
+ "sec-fetch-dest": "empty",
22
+ "sec-fetch-mode": "cors",
23
+ "sec-fetch-site": "same-site",
24
+ "Origin": "https://temp-mail.org"
25
+ },
26
+ "referrer": "https://temp-mail.org/",
27
+ "referrerPolicy": "strict-origin-when-cross-origin",
28
+ "body": null,
29
+ "method": "POST",
30
+ "mode": "cors",
31
+ "credentials": "omit"
32
+ }); return await res2.json()
33
+ })
34
+ console.log(got)
35
+ if (browser) await browser.close()
36
+ if (validEmail(got?.mailbox)) return resolve({
37
+ email: got.mailbox,
38
+ URL,
39
+ t: Date.now()
40
+ })
41
+
42
+ return resolve(null)
43
+ } catch (err) {
44
+ console.log(err)
45
+ Sentry.captureException(err)
46
+ resolve(false)
47
+ }
48
+ })
49
+ }
50
+
51
+ // for cli usage - development
52
+ if (require.main == module) {
53
+ start(false).then(res => console.log(res))
54
+ }
55
+ // if (isLocal())
56
+ vars.providers.push({
57
+ name: 'temp-mail.org',
58
+ init: initiateEmpty,
59
+ start: start,
60
+ })
@@ -0,0 +1,36 @@
1
+ const { validEmail } = require('mybase')
2
+ const { Sentry } = require('../config')
3
+ const { initiateEmpty, launch, emailBy_id_innerText, emailBy_querySelector_innerHTML, emailBy_id_value, emailBy_querySelector_value } = require('../shared')
4
+ const vars = require('./../vars')
5
+ const URL = 'https://temp-mail.org'
6
+
7
+ function start(headless = true, waitTime = 15) {
8
+ return new Promise(async function (resolve, reject) {
9
+ try {
10
+ let { page, browser } = await launch(headless, URL, waitTime,false,false,'domcontentloaded')
11
+ let email = await emailBy_id_value(page,'mail')
12
+ if (browser) await browser.close()
13
+ if (validEmail(email)) return resolve({
14
+ email,
15
+ URL,
16
+ t: Date.now()
17
+ })
18
+ return resolve(null)
19
+ } catch (err) {
20
+ console.log(err)
21
+ Sentry.captureException(err)
22
+ resolve(false)
23
+ }
24
+ })
25
+ }
26
+
27
+ // for cli usage - development
28
+ if (require.main == module) {
29
+ start(false).then(res => console.log(res))
30
+ }
31
+
32
+ // vars.providers.push({
33
+ // name: 'temp-mail.org',
34
+ // init: initiateEmpty,
35
+ // start: start,
36
+ // })
@@ -0,0 +1,35 @@
1
+ const { Sentry } = require('../config')
2
+ const { initiateEmpty, launch, emailBy_id_innerText, emailBy_querySelector_innerHTML, emailBy_id_value } = require('../shared')
3
+ const vars = require('./../vars')
4
+ const URL = 'https://temp-mailbox.com'
5
+
6
+ function start(headless=true,waitTime=5) {
7
+ return new Promise(async function (resolve,reject) {
8
+ try {
9
+ let {page,browser} = await launch(headless,URL,waitTime)
10
+ let email = await emailBy_id_value(page,'trsh_mail')
11
+ if (browser) await browser.close()
12
+ if (email) return resolve({
13
+ email,
14
+ URL,
15
+ t:Date.now()
16
+ })
17
+ return resolve(null)
18
+ } catch (err) {
19
+ console.log(err)
20
+ Sentry.captureException(err)
21
+ resolve(false)
22
+ }
23
+ })
24
+ }
25
+
26
+ // for cli usage - development
27
+ if (require.main==module) {
28
+ start(false).then(res=>console.log(res))
29
+ }
30
+
31
+ vars.providers.push({
32
+ name:'temp-mailbox.com',
33
+ init:initiateEmpty,
34
+ start:start
35
+ })
@@ -0,0 +1,31 @@
1
+ const { initiateEmpty, launch, emailBy_id_innerText, emailBy_querySelector_innerHTML, emailBy_id_value, emailFrom_combobox_id, emailBy_querySelector_value, emailFrom_combobox_selector } = require('../shared')
2
+ const vars = require('./../vars')
3
+ const URL = 'http://tempmail.adguard.com'
4
+
5
+ function start(headless = true, waitTime = 3) {
6
+ return new Promise(async function (resolve, reject) {
7
+ const domains = ['instantletter.net','lettershield.com']
8
+
9
+ let emails = []
10
+ for (let domain of domains) {
11
+ emails.push(`static@${domain}`)
12
+ }
13
+ return resolve({
14
+ email: emails,
15
+ URL,
16
+ t: Date.now()
17
+ })
18
+ })
19
+ }
20
+
21
+ // for cli usage - development
22
+ if (require.main == module) {
23
+ start(false).then(res => console.log(res))
24
+ }
25
+
26
+ // pending
27
+ vars.providers.push({
28
+ name: 'tempmail.adguard.com',
29
+ init: initiateEmpty,
30
+ start: start
31
+ })
@@ -0,0 +1,38 @@
1
+ const { validEmail } = require('mybase')
2
+ const { Sentry } = require('../config')
3
+ const { initiateEmpty, launch, emailBy_id_innerText, emailBy_querySelector_innerHTML, emailBy_id_value } = require('../shared')
4
+ const vars = require('./../vars')
5
+ const URL = 'https://tempmail.io/'
6
+
7
+ function start(headless=true,waitTime=3) {
8
+ return new Promise(async function (resolve,reject) {
9
+ try {
10
+ let {page,browser} = await launch(headless,URL,waitTime)
11
+
12
+ let email = await emailBy_id_value(page,'email')
13
+ if (browser) await browser.close()
14
+ if (email) return resolve({
15
+ email,
16
+ URL,
17
+ t:Date.now()
18
+ })
19
+ return resolve(null)
20
+ } catch (err) {
21
+ console.log(err)
22
+ Sentry.captureException(err)
23
+ resolve(false)
24
+ }
25
+ })
26
+ }
27
+
28
+ // for cli usage - development
29
+ if (require.main==module) {
30
+ start(false).then(res=>console.log(res))
31
+ }
32
+
33
+ // pending
34
+ vars.providers.push({
35
+ name:'tempmail.io',
36
+ init:initiateEmpty,
37
+ start:start,
38
+ })
@@ -0,0 +1,45 @@
1
+
2
+ const { Sentry } = require('../config')
3
+ const { initiateEmpty, launch, emailBy_querySelector_value, email_recursive_search } = require('../shared')
4
+ const vars = require('./../vars')
5
+ const URL = 'https://tempmail.quest'
6
+
7
+ function start(headless=true,waitTime=3) {
8
+ return new Promise(async function (resolve,reject) {
9
+ try {
10
+ let {page,browser} = await launch(headless,URL,waitTime,'p.fc-button-label')
11
+ // let email = await emailBy_querySelector_innerText(page,'.input-group-text',true)
12
+
13
+ // // select a random address with their api
14
+ // await page.evaluate(() => {
15
+ // randomAddress('sb-user', 'sb-domain');
16
+ // })
17
+
18
+ let email = await emailBy_querySelector_value(page,'#email')
19
+
20
+ // console.log(email)
21
+ if (browser) await browser.close()
22
+ if (email) return resolve({
23
+ email,
24
+ URL,
25
+ t:Date.now()
26
+ })
27
+ return resolve(null)
28
+ } catch (err) {
29
+ console.log(err)
30
+ Sentry.captureException(err)
31
+ resolve(false)
32
+ }
33
+ })
34
+ }
35
+
36
+ // for cli usage - development
37
+ if (require.main==module) {
38
+ start(false).then(res=>console.log(res))
39
+ }
40
+
41
+ vars.providers.push({
42
+ name:'tempmail.quest',
43
+ init:initiateEmpty,
44
+ start:start
45
+ })