Get real nit picky

This commit is contained in:
Eric Bailey
2024-09-20 16:01:14 -05:00
parent f2b4945c98
commit bce5a01625
3 changed files with 6 additions and 6 deletions
@@ -1,7 +1,7 @@
import {describe, expect, it} from '@jest/globals' import {describe, expect, it} from '@jest/globals'
import tldts from 'tldts' import tldts from 'tldts'
import {emailTypoCheck} from '#/lib/strings/email-typo' import {isEmailMaybeInvalid} from '#/lib/strings/email'
describe('emailTypoChecker', () => { describe('emailTypoChecker', () => {
const invalidCases = [ const invalidCases = [
@@ -73,10 +73,10 @@ describe('emailTypoChecker', () => {
] ]
it.each(invalidCases)(`should be invalid: abcde@%s`, domain => { it.each(invalidCases)(`should be invalid: abcde@%s`, domain => {
expect(emailTypoCheck(`abcde@${domain}`, tldts)).toEqual(true) expect(isEmailMaybeInvalid(`abcde@${domain}`, tldts)).toEqual(true)
}) })
it.each(validCases)(`should be valid: abcde@%s`, domain => { it.each(validCases)(`should be valid: abcde@%s`, domain => {
expect(emailTypoCheck(`abcde@${domain}`, tldts)).toEqual(false) expect(isEmailMaybeInvalid(`abcde@${domain}`, tldts)).toEqual(false)
}) })
}) })
@@ -3,7 +3,7 @@ import type tldts from 'tldts'
const COMMON_ERROR_PATTERN = const COMMON_ERROR_PATTERN =
/([a-zA-Z0-9._%+-]+)@(gnail\.(co|com)|gmaill\.(co|com)|gmai\.(co|com)|gmail\.co|gmal\.(co|com)|iclod\.(co|com)|icloud\.co|outllok\.(co|com)|outlok\.(co|com)|outlook\.co|yaoo\.(co|com)|yaho\.(co|com)|yahoo\.co|yahooo\.(co|com))$/ /([a-zA-Z0-9._%+-]+)@(gnail\.(co|com)|gmaill\.(co|com)|gmai\.(co|com)|gmail\.co|gmal\.(co|com)|iclod\.(co|com)|icloud\.co|outllok\.(co|com)|outlok\.(co|com)|outlook\.co|yaoo\.(co|com)|yaho\.(co|com)|yahoo\.co|yahooo\.(co|com))$/
export function emailTypoCheck(email: string, dynamicTldts: typeof tldts) { export function isEmailMaybeInvalid(email: string, dynamicTldts: typeof tldts) {
const isIcann = dynamicTldts.parse(email).isIcann const isIcann = dynamicTldts.parse(email).isIcann
return !isIcann || COMMON_ERROR_PATTERN.test(email) return !isIcann || COMMON_ERROR_PATTERN.test(email)
} }
+2 -2
View File
@@ -7,7 +7,7 @@ import type tldts from 'tldts'
import {logEvent} from '#/lib/statsig/statsig' import {logEvent} from '#/lib/statsig/statsig'
import {logger} from '#/logger' import {logger} from '#/logger'
import {emailTypoCheck} from 'lib/strings/email-typo' import {isEmailMaybeInvalid} from 'lib/strings/email'
import {ScreenTransition} from '#/screens/Login/ScreenTransition' import {ScreenTransition} from '#/screens/Login/ScreenTransition'
import {is13, is18, useSignupContext} from '#/screens/Signup/state' import {is13, is18, useSignupContext} from '#/screens/Signup/state'
import {Policies} from '#/screens/Signup/StepInfo/Policies' import {Policies} from '#/screens/Signup/StepInfo/Policies'
@@ -68,7 +68,7 @@ export function StepInfo({
const password = passwordValueRef.current const password = passwordValueRef.current
if (emailChanged && tldtsRef.current) { if (emailChanged && tldtsRef.current) {
if (emailTypoCheck(email, tldtsRef.current)) { if (isEmailMaybeInvalid(email, tldtsRef.current)) {
prevEmailValueRef.current = email prevEmailValueRef.current = email
setHasWarnedEmail(true) setHasWarnedEmail(true)
return dispatch({ return dispatch({