{"version":3,"file":"Register-CKOw2jBg.js","sources":["../../../node_modules/@mui/material/FormControlLabel/formControlLabelClasses.js","../../../node_modules/@mui/material/FormControlLabel/FormControlLabel.js","../../../node_modules/@mui/material/Link/linkClasses.js","../../../node_modules/@mui/material/Link/getTextDecoration.js","../../../node_modules/@mui/material/Link/Link.js","../../../app/javascript/entrypoints/Register/Register.jsx"],"sourcesContent":["import generateUtilityClasses from '@mui/utils/generateUtilityClasses';\nimport generateUtilityClass from '@mui/utils/generateUtilityClass';\nexport function getFormControlLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormControlLabel', slot);\n}\nconst formControlLabelClasses = generateUtilityClasses('MuiFormControlLabel', ['root', 'labelPlacementStart', 'labelPlacementTop', 'labelPlacementBottom', 'disabled', 'label', 'error', 'required', 'asterisk']);\nexport default formControlLabelClasses;","'use client';\n\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"checked\", \"className\", \"componentsProps\", \"control\", \"disabled\", \"disableTypography\", \"inputRef\", \"label\", \"labelPlacement\", \"name\", \"onChange\", \"required\", \"slotProps\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport refType from '@mui/utils/refType';\nimport composeClasses from '@mui/utils/composeClasses';\nimport { useFormControl } from '../FormControl';\nimport Stack from '../Stack';\nimport Typography from '../Typography';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport { useDefaultProps } from '../DefaultPropsProvider';\nimport formControlLabelClasses, { getFormControlLabelUtilityClasses } from './formControlLabelClasses';\nimport formControlState from '../FormControl/formControlState';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n disabled,\n labelPlacement,\n error,\n required\n } = ownerState;\n const slots = {\n root: ['root', disabled && 'disabled', `labelPlacement${capitalize(labelPlacement)}`, error && 'error', required && 'required'],\n label: ['label', disabled && 'disabled'],\n asterisk: ['asterisk', error && 'error']\n };\n return composeClasses(slots, getFormControlLabelUtilityClasses, classes);\n};\nexport const FormControlLabelRoot = styled('label', {\n name: 'MuiFormControlLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formControlLabelClasses.label}`]: styles.label\n }, styles.root, styles[`labelPlacement${capitalize(ownerState.labelPlacement)}`]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'inline-flex',\n alignItems: 'center',\n cursor: 'pointer',\n // For correct alignment with the text.\n verticalAlign: 'middle',\n WebkitTapHighlightColor: 'transparent',\n marginLeft: -11,\n marginRight: 16,\n // used for row presentation of radio/checkbox\n [`&.${formControlLabelClasses.disabled}`]: {\n cursor: 'default'\n }\n}, ownerState.labelPlacement === 'start' && {\n flexDirection: 'row-reverse',\n marginLeft: 16,\n // used for row presentation of radio/checkbox\n marginRight: -11\n}, ownerState.labelPlacement === 'top' && {\n flexDirection: 'column-reverse',\n marginLeft: 16\n}, ownerState.labelPlacement === 'bottom' && {\n flexDirection: 'column',\n marginLeft: 16\n}, {\n [`& .${formControlLabelClasses.label}`]: {\n [`&.${formControlLabelClasses.disabled}`]: {\n color: (theme.vars || theme).palette.text.disabled\n }\n }\n}));\nconst AsteriskComponent = styled('span', {\n name: 'MuiFormControlLabel',\n slot: 'Asterisk',\n overridesResolver: (props, styles) => styles.asterisk\n})(({\n theme\n}) => ({\n [`&.${formControlLabelClasses.error}`]: {\n color: (theme.vars || theme).palette.error.main\n }\n}));\n\n/**\n * Drop-in replacement of the `Radio`, `Switch` and `Checkbox` component.\n * Use this component if you want to display an extra label.\n */\nconst FormControlLabel = /*#__PURE__*/React.forwardRef(function FormControlLabel(inProps, ref) {\n var _ref, _slotProps$typography;\n const props = useDefaultProps({\n props: inProps,\n name: 'MuiFormControlLabel'\n });\n const {\n className,\n componentsProps = {},\n control,\n disabled: disabledProp,\n disableTypography,\n label: labelProp,\n labelPlacement = 'end',\n required: requiredProp,\n slotProps = {}\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const muiFormControl = useFormControl();\n const disabled = (_ref = disabledProp != null ? disabledProp : control.props.disabled) != null ? _ref : muiFormControl == null ? void 0 : muiFormControl.disabled;\n const required = requiredProp != null ? requiredProp : control.props.required;\n const controlProps = {\n disabled,\n required\n };\n ['checked', 'name', 'onChange', 'value', 'inputRef'].forEach(key => {\n if (typeof control.props[key] === 'undefined' && typeof props[key] !== 'undefined') {\n controlProps[key] = props[key];\n }\n });\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['error']\n });\n const ownerState = _extends({}, props, {\n disabled,\n labelPlacement,\n required,\n error: fcs.error\n });\n const classes = useUtilityClasses(ownerState);\n const typographySlotProps = (_slotProps$typography = slotProps.typography) != null ? _slotProps$typography : componentsProps.typography;\n let label = labelProp;\n if (label != null && label.type !== Typography && !disableTypography) {\n label = /*#__PURE__*/_jsx(Typography, _extends({\n component: \"span\"\n }, typographySlotProps, {\n className: clsx(classes.label, typographySlotProps == null ? void 0 : typographySlotProps.className),\n children: label\n }));\n }\n return /*#__PURE__*/_jsxs(FormControlLabelRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [/*#__PURE__*/React.cloneElement(control, controlProps), required ? /*#__PURE__*/_jsxs(Stack, {\n display: \"block\",\n children: [label, /*#__PURE__*/_jsxs(AsteriskComponent, {\n ownerState: ownerState,\n \"aria-hidden\": true,\n className: classes.asterisk,\n children: [\"\\u2009\", '*']\n })]\n }) : label]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormControlLabel.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the d.ts file and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * If `true`, the component appears selected.\n */\n checked: PropTypes.bool,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The props used for each slot inside.\n * @default {}\n */\n componentsProps: PropTypes.shape({\n typography: PropTypes.object\n }),\n /**\n * A control element. For instance, it can be a `Radio`, a `Switch` or a `Checkbox`.\n */\n control: PropTypes.element.isRequired,\n /**\n * If `true`, the control is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true`, the label is rendered as it is passed without an additional typography node.\n */\n disableTypography: PropTypes.bool,\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n /**\n * A text or an element to be used in an enclosing label element.\n */\n label: PropTypes.node,\n /**\n * The position of the label.\n * @default 'end'\n */\n labelPlacement: PropTypes.oneOf(['bottom', 'end', 'start', 'top']),\n /**\n * @ignore\n */\n name: PropTypes.string,\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.SyntheticEvent} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n /**\n * If `true`, the label will indicate that the `input` is required.\n */\n required: PropTypes.bool,\n /**\n * The props used for each slot inside.\n * @default {}\n */\n slotProps: PropTypes.shape({\n typography: PropTypes.object\n }),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * The value of the component.\n */\n value: PropTypes.any\n} : void 0;\nexport default FormControlLabel;","import generateUtilityClasses from '@mui/utils/generateUtilityClasses';\nimport generateUtilityClass from '@mui/utils/generateUtilityClass';\nexport function getLinkUtilityClass(slot) {\n return generateUtilityClass('MuiLink', slot);\n}\nconst linkClasses = generateUtilityClasses('MuiLink', ['root', 'underlineNone', 'underlineHover', 'underlineAlways', 'button', 'focusVisible']);\nexport default linkClasses;","import { getPath } from '@mui/system';\nimport { alpha } from '@mui/system/colorManipulator';\nexport const colorTransformations = {\n primary: 'primary.main',\n textPrimary: 'text.primary',\n secondary: 'secondary.main',\n textSecondary: 'text.secondary',\n error: 'error.main'\n};\nconst transformDeprecatedColors = color => {\n return colorTransformations[color] || color;\n};\nconst getTextDecoration = ({\n theme,\n ownerState\n}) => {\n const transformedColor = transformDeprecatedColors(ownerState.color);\n const color = getPath(theme, `palette.${transformedColor}`, false) || ownerState.color;\n const channelColor = getPath(theme, `palette.${transformedColor}Channel`);\n if ('vars' in theme && channelColor) {\n return `rgba(${channelColor} / 0.4)`;\n }\n return alpha(color, 0.4);\n};\nexport default getTextDecoration;","'use client';\n\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"className\", \"color\", \"component\", \"onBlur\", \"onFocus\", \"TypographyClasses\", \"underline\", \"variant\", \"sx\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport elementTypeAcceptingRef from '@mui/utils/elementTypeAcceptingRef';\nimport composeClasses from '@mui/utils/composeClasses';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport { useDefaultProps } from '../DefaultPropsProvider';\nimport useIsFocusVisible from '../utils/useIsFocusVisible';\nimport useForkRef from '../utils/useForkRef';\nimport Typography from '../Typography';\nimport linkClasses, { getLinkUtilityClass } from './linkClasses';\nimport getTextDecoration, { colorTransformations } from './getTextDecoration';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n component,\n focusVisible,\n underline\n } = ownerState;\n const slots = {\n root: ['root', `underline${capitalize(underline)}`, component === 'button' && 'button', focusVisible && 'focusVisible']\n };\n return composeClasses(slots, getLinkUtilityClass, classes);\n};\nconst LinkRoot = styled(Typography, {\n name: 'MuiLink',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, styles[`underline${capitalize(ownerState.underline)}`], ownerState.component === 'button' && styles.button];\n }\n})(({\n theme,\n ownerState\n}) => {\n return _extends({}, ownerState.underline === 'none' && {\n textDecoration: 'none'\n }, ownerState.underline === 'hover' && {\n textDecoration: 'none',\n '&:hover': {\n textDecoration: 'underline'\n }\n }, ownerState.underline === 'always' && _extends({\n textDecoration: 'underline'\n }, ownerState.color !== 'inherit' && {\n textDecorationColor: getTextDecoration({\n theme,\n ownerState\n })\n }, {\n '&:hover': {\n textDecorationColor: 'inherit'\n }\n }), ownerState.component === 'button' && {\n position: 'relative',\n WebkitTapHighlightColor: 'transparent',\n backgroundColor: 'transparent',\n // Reset default value\n // We disable the focus ring for mouse, touch and keyboard users.\n outline: 0,\n border: 0,\n margin: 0,\n // Remove the margin in Safari\n borderRadius: 0,\n padding: 0,\n // Remove the padding in Firefox\n cursor: 'pointer',\n userSelect: 'none',\n verticalAlign: 'middle',\n MozAppearance: 'none',\n // Reset\n WebkitAppearance: 'none',\n // Reset\n '&::-moz-focus-inner': {\n borderStyle: 'none' // Remove Firefox dotted outline.\n },\n [`&.${linkClasses.focusVisible}`]: {\n outline: 'auto'\n }\n });\n});\nconst Link = /*#__PURE__*/React.forwardRef(function Link(inProps, ref) {\n const props = useDefaultProps({\n props: inProps,\n name: 'MuiLink'\n });\n const {\n className,\n color = 'primary',\n component = 'a',\n onBlur,\n onFocus,\n TypographyClasses,\n underline = 'always',\n variant = 'inherit',\n sx\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const {\n isFocusVisibleRef,\n onBlur: handleBlurVisible,\n onFocus: handleFocusVisible,\n ref: focusVisibleRef\n } = useIsFocusVisible();\n const [focusVisible, setFocusVisible] = React.useState(false);\n const handlerRef = useForkRef(ref, focusVisibleRef);\n const handleBlur = event => {\n handleBlurVisible(event);\n if (isFocusVisibleRef.current === false) {\n setFocusVisible(false);\n }\n if (onBlur) {\n onBlur(event);\n }\n };\n const handleFocus = event => {\n handleFocusVisible(event);\n if (isFocusVisibleRef.current === true) {\n setFocusVisible(true);\n }\n if (onFocus) {\n onFocus(event);\n }\n };\n const ownerState = _extends({}, props, {\n color,\n component,\n focusVisible,\n underline,\n variant\n });\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsx(LinkRoot, _extends({\n color: color,\n className: clsx(classes.root, className),\n classes: TypographyClasses,\n component: component,\n onBlur: handleBlur,\n onFocus: handleFocus,\n ref: handlerRef,\n ownerState: ownerState,\n variant: variant,\n sx: [...(!Object.keys(colorTransformations).includes(color) ? [{\n color\n }] : []), ...(Array.isArray(sx) ? sx : [sx])]\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? Link.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the d.ts file and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The color of the link.\n * @default 'primary'\n */\n color: PropTypes /* @typescript-to-proptypes-ignore */.any,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: elementTypeAcceptingRef,\n /**\n * @ignore\n */\n onBlur: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * `classes` prop applied to the [`Typography`](/material-ui/api/typography/) element.\n */\n TypographyClasses: PropTypes.object,\n /**\n * Controls when the link should have an underline.\n * @default 'always'\n */\n underline: PropTypes.oneOf(['always', 'hover', 'none']),\n /**\n * Applies the theme typography styles.\n * @default 'inherit'\n */\n variant: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['body1', 'body2', 'button', 'caption', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'inherit', 'overline', 'subtitle1', 'subtitle2']), PropTypes.string])\n} : void 0;\nexport default Link;","import React, { useState, useEffect } from \"react\";\nimport { createUserWithEmailAndPassword, sendEmailVerification, signInWithPopup, GoogleAuthProvider } from \"firebase/auth\";\nimport {\n Alert,\n Box,\n Container,\n Divider,\n Typography,\n TextField,\n Button,\n Paper,\n Grid,\n Stack,\n Checkbox,\n FormControlLabel,\n Link,\n} from \"@mui/material\";\nimport { useNavigate } from \"react-router-dom\";\nimport { colors } from \"../lib/theme\";\nimport { auth } from \"../../shared/firebase\";\nimport { useAuth } from \"../../shared/useAuth\";\nimport PhoneIphoneIcon from \"@mui/icons-material/PhoneIphone\";\nimport MemoryIcon from \"@mui/icons-material/Memory\";\nimport { Helmet } from \"react-helmet\";\nimport { doc, setDoc, getDoc } from \"firebase/firestore\";\nimport { db } from \"../../shared/firebase\";\nimport ContainerBox from \"../../shared/ContainerBox\";\nimport GoogleIcon from '@mui/icons-material/Google';\n\nconst GetTheApp = () => (\n \n \n \n \n \n \n iOS App Available Now!\n \n \n If you prefer, you can use the iOS version of Golden Record.\n \n }\n href=\"https://apps.apple.com/us/app/golden-record/id6501951254\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n sx={{\n bgcolor: \"#8B6B00\",\n color: colors.white,\n fontWeight: \"bold\",\n textTransform: \"none\",\n fontSize: \"1.1rem\",\n padding: \"12px 24px\",\n letterSpacing: \"1px\",\n boxShadow: \"0 4px 6px rgba(0, 0, 0, 0.1)\",\n \"&:hover\": {\n bgcolor: \"#6B5200\",\n color: colors.white,\n boxShadow: \"0 6px 8px rgba(0, 0, 0, 0.15)\",\n },\n }}\n >\n Install the app\n \n \n Start preserving your precious memories today!\n \n \n \n \n \n);\n\nconst Register = () => {\n const [email, setEmail] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const [confirmPassword, setConfirmPassword] = useState(\"\");\n const [error, setError] = useState(null);\n const [agreeToTerms, setAgreeToTerms] = useState(false);\n const navigate = useNavigate();\n\n const { user } = useAuth();\n\n useEffect(() => {\n if (user) {\n navigate(\"/dashboard\");\n }\n\n const urlParams = new URLSearchParams(window.location.search);\n const invitedToParam = urlParams.get('invitedTo');\n if (invitedToParam) {\n localStorage.setItem('invitedTo', invitedToParam);\n }\n }, [user, navigate]);\n\n const handleRegister = async (e) => {\n e.preventDefault();\n if (!agreeToTerms) {\n setError(\"You must agree to the Privacy Policy and Terms of Service to register.\");\n return;\n }\n if (password !== confirmPassword) {\n setError(\"Passwords do not match\");\n return;\n }\n try {\n const lowercaseEmail = email.toLowerCase();\n const userCredential = await createUserWithEmailAndPassword(\n auth,\n lowercaseEmail,\n password\n );\n\n // Add user to Firestore only if they don't already exist\n const user = userCredential.user;\n const userDocRef = doc(db, \"users\", user.uid);\n const userDoc = await getDoc(userDocRef);\n\n if (!userDoc.exists()) {\n await setDoc(userDocRef, {\n email: lowercaseEmail,\n subscriptionLevel: 0,\n createdAt: new Date(),\n updatedAt: new Date(),\n });\n }\n\n // Send email verification\n await sendEmailVerification(user);\n\n localStorage.setItem(\"user\", JSON.stringify({...user, email: lowercaseEmail}));\n // Navigate to the verify email page with the user's email as a parameter\n navigate(`/verify-email?email=${encodeURIComponent(lowercaseEmail)}`);\n } catch (err) {\n console.error(\"Registration error:\", err);\n if (err.code === \"auth/email-already-in-use\") {\n setError(<>This email is already registered. Please use a different email or log in here.>);\n } else if (err.code === \"auth/weak-password\") {\n setError(\"Password is too weak. Please use a stronger password.\");\n } else {\n setError(\"An error occurred during registration. Please try again later.\");\n }\n }\n };\n\n const handleKeyPress = (event) => {\n if (event.key === 'Enter') {\n handleRegister(event);\n }\n };\n\n const handleGoogleSignUp = async () => {\n try {\n const provider = new GoogleAuthProvider();\n const result = await signInWithPopup(auth, provider);\n const user = result.user;\n\n // Add user to Firestore only if they don't already exist\n const userDocRef = doc(db, \"users\", user.uid);\n const userDoc = await getDoc(userDocRef);\n\n if (!userDoc.exists()) {\n await setDoc(userDocRef, {\n email: user.email.toLowerCase(),\n subscriptionLevel: 0,\n createdAt: new Date(),\n updatedAt: new Date(),\n });\n }\n\n localStorage.setItem(\"user\", JSON.stringify({...user, email: user.email.toLowerCase()}));\n navigate(\"/dashboard\");\n } catch (err) {\n console.error(\"Google sign up error:\", err);\n setError(\"An error occurred during Google sign up. Please try again later.\");\n }\n };\n\n return (\n \n \n Register - Golden Record\n \n \n \n Almost there! Create your Golden Record account\n \n \n Enter your email and password to register for an account.\n {\" \"}\n \n Already have an account? Log in here.\n \n \n\n \n \n \n \n \n \n Register\n \n \n OR\n }\n onClick={handleGoogleSignUp}\n sx={{ mt: 2 }}\n >\n Sign up with Google\n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default Register;\n"],"names":["getFormControlLabelUtilityClasses","slot","generateUtilityClass","formControlLabelClasses","generateUtilityClasses","_excluded","useUtilityClasses","ownerState","classes","disabled","labelPlacement","error","required","slots","capitalize","composeClasses","FormControlLabelRoot","styled","props","styles","theme","_extends","AsteriskComponent","FormControlLabel","React.forwardRef","inProps","ref","_ref","_slotProps$typography","useDefaultProps","className","componentsProps","control","disabledProp","disableTypography","labelProp","requiredProp","slotProps","other","_objectWithoutPropertiesLoose","muiFormControl","useFormControl","controlProps","key","fcs","formControlState","typographySlotProps","label","Typography","_jsx","clsx","_jsxs","React.cloneElement","Stack","getLinkUtilityClass","linkClasses","colorTransformations","transformDeprecatedColors","color","getTextDecoration","transformedColor","getPath","channelColor","alpha","component","focusVisible","underline","LinkRoot","Link","onBlur","onFocus","TypographyClasses","variant","sx","isFocusVisibleRef","handleBlurVisible","handleFocusVisible","focusVisibleRef","useIsFocusVisible","setFocusVisible","React.useState","handlerRef","useForkRef","handleBlur","event","handleFocus","GetTheApp","React","Container","Box","Paper","colors","PhoneIphoneIcon","Button","MemoryIcon","Register","email","setEmail","useState","password","setPassword","confirmPassword","setConfirmPassword","setError","agreeToTerms","setAgreeToTerms","navigate","useNavigate","user","useAuth","useEffect","invitedToParam","handleRegister","e","lowercaseEmail","createUserWithEmailAndPassword","auth","userDocRef","doc","db","getDoc","setDoc","sendEmailVerification","err","handleKeyPress","handleGoogleSignUp","provider","GoogleAuthProvider","signInWithPopup","Helmet","ContainerBox","Grid","TextField","Checkbox","Alert","Divider","GoogleIcon"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4]}