// Mock data for the tempmail prototype const MOCK_DOMAINS = { shared: [ { id: 's1', domain: 'letstalkbout.biz', premium: true, badges: ['TOP'], favorited: true }, { id: 's2', domain: 'mailforge.dev', premium: true, badges: ['TOP', 'HOT'], favorited: false }, { id: 's3', domain: 'quickdrop.email', premium: false, badges: ['NEW'], favorited: true }, { id: 's4', domain: 'duskmail.io', premium: false, badges: ['HOT'], favorited: false }, { id: 's5', domain: 'ephemer.al', premium: true, badges: [], favorited: false }, { id: 's6', domain: 'tmpbox.cc', premium: false, badges: ['NEW'], favorited: false }, { id: 's7', domain: 'shadowpost.xyz', premium: false, badges: [], favorited: false }, { id: 's8', domain: 'vanish.page', premium: false, badges: [], favorited: false }, { id: 's9', domain: 'offthegrid.net', premium: true, badges: ['TOP'], favorited: false }, { id: 's10', domain: 'throwaway.site', premium: false, badges: [], favorited: false }, ], custom: [ { id: 'c1', domain: 'dusk.work', premium: false, badges: [], favorited: true, status: 'verified', added: '18 Apr', count: 24 }, { id: 'c2', domain: 'horizon67.co', premium: false, badges: [], favorited: false, status: 'pending', added: '22 Apr', count: 0 }, ], }; const MOCK_EMAILS = [ { id: 'e1', from: 'OpenAI', fromEmail: 'team@openai.com', avatar: 'O', avatarColor: '#1a5d4e', subject: 'ChatGPT — Your new plan', preview: 'Welcome to your ChatGPT Business workspace.', time: '21 Apr', fullDate: '21/04/2026, 11:23:27', unread: false, saved: true, code: null, body: `

OpenAI

dusk,

Welcome to your ChatGPT Business workspace.

Enjoy your first month free for up to 5 seats. After your first month, your subscription will renew monthly at €26 per assigned seat. You won't be billed for unassigned seats (2-seat minimum), and you can add or remove seats at any time.

If you have any questions, please contact us through our help center.

— The OpenAI team


OpenAI, 548 Market St, PMB 97273, San Francisco, CA 94104

`, }, { id: 'e2', from: 'noreply@tm.openai.com', fromEmail: 'noreply@tm.openai.com', avatar: 'N', avatarColor: '#7c3a0f', subject: 'Your temporary ChatGPT login code', preview: 'Your login code is 588388. It expires in 10 minutes.', time: '21 Apr', fullDate: '21/04/2026, 10:58:12', unread: true, saved: false, code: '588388', body: `

Your login code

Enter the code below to sign in to your ChatGPT account.

588388

This code expires in 10 minutes.

If you didn't request this, you can safely ignore this email.

`, }, { id: 'e3', from: 'noreply@tm.openai.com', fromEmail: 'noreply@tm.openai.com', avatar: 'N', avatarColor: '#7c3a0f', subject: 'Your ChatGPT code is 417175', preview: 'Your one-time code is 417175.', time: '21 Apr', fullDate: '21/04/2026, 10:41:02', unread: true, saved: false, code: '417175', body: `

Your login code

417175

Expires in 10 minutes.

`, }, { id: 'e4', from: 'GitHub', fromEmail: 'noreply@github.com', avatar: 'G', avatarColor: '#1f2937', subject: '[GitHub] Sign in to github.com', preview: 'Here is your verification code: 902841. This code will expire in 10 minutes.', time: '20 Apr', fullDate: '20/04/2026, 18:12:41', unread: false, saved: false, code: '902841', body: `

Hey there,

Here is your verification code to sign in:

902841

This code will expire in 10 minutes.

Thanks,
The GitHub Team

`, }, { id: 'e5', from: 'Stripe', fromEmail: 'receipts@stripe.com', avatar: 'S', avatarColor: '#4f46e5', subject: 'Receipt from Vercel Inc.', preview: 'Amount paid: $20.00 USD. Payment method: Visa •••• 4242.', time: '20 Apr', fullDate: '20/04/2026, 09:02:18', unread: false, saved: false, code: null, body: `

Receipt #2641-8832

Receipt from Vercel Inc.

Amount paid$20.00 USD
Date paidApril 20, 2026
Payment methodVisa •••• 4242

Questions? Contact receipts@stripe.com

`, }, { id: 'e6', from: 'Linear', fromEmail: 'notify@linear.app', avatar: 'L', avatarColor: '#3b3b6b', subject: 'You were mentioned in ENG-2481', preview: '@dusk can you take a look at the retry logic in the webhook handler?', time: '19 Apr', fullDate: '19/04/2026, 14:33:09', unread: false, saved: false, code: null, body: `

ENG-2481 — Webhook retry throws 500 on 3rd attempt

Sarah Chen

@dusk can you take a look at the retry logic in the webhook handler? I think we're not backing off correctly.

Open in Linear
`, }, { id: 'e7', from: 'Vercel', fromEmail: 'deploy@vercel.com', avatar: 'V', avatarColor: '#18181b', subject: 'Deployment ready — main-7f9a2c', preview: 'Your deployment for tempmail-ui is ready. It built in 42s.', time: '18 Apr', fullDate: '18/04/2026, 22:14:55', unread: false, saved: false, code: null, body: `

Your deployment for tempmail-ui is ready.

Commit
7f9a2c — fix(inbox): stabilize preview scroll
Build time
42.3s
View deployment →
`, }, ]; const RANDOM_ADDRESSES = [ 'duskonhorizon67', 'silentmoss42', 'quietfalcon18', 'brightember29', 'hollowpine83', 'coldriver12', 'driftwood55', 'shadowpeak91', 'vagrantwolf74', 'mutedgrove33', ]; window.MOCK_DOMAINS = MOCK_DOMAINS; window.MOCK_EMAILS = MOCK_EMAILS; window.RANDOM_ADDRESSES = RANDOM_ADDRESSES;