(rawValue = '')
| 18 | } |
| 19 | |
| 20 | function normalizeCloudflareTempEmailBaseUrl(rawValue = '') { |
| 21 | const value = String(rawValue || '').trim(); |
| 22 | if (!value) return ''; |
| 23 | |
| 24 | const candidate = /^[a-zA-Z][a-zA-Z\d+\-.]*:\/\//.test(value) ? value : `https://${value}`; |
| 25 | try { |
| 26 | const parsed = new URL(candidate); |
| 27 | parsed.hash = ''; |
| 28 | parsed.search = ''; |
| 29 | const pathname = parsed.pathname === '/' ? '' : parsed.pathname.replace(/\/+$/, ''); |
| 30 | return `${parsed.origin}${pathname}`; |
| 31 | } catch { |
| 32 | return ''; |
| 33 | } |
| 34 | } |
| 35 | |
| 36 | function normalizeCloudflareTempEmailDomain(rawValue = '') { |
| 37 | let value = String(rawValue || '').trim().toLowerCase(); |
no outgoing calls
no test coverage detected