{"version":3,"file":"static/js/8543.ff3812fc.chunk.js","mappings":"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","sources":["components/input-text-field/styles.js","components/input-text-field/index.js","components/submit-with-loading/styles.js","components/submit-with-loading/index.js","hooks/use-study/use-read-study-basic-info.endpoint.js","hooks/use-study/use-read-study-basic-info.js","hooks/use-study/use-join-study.endpoint.js","layouts/full-with-app-bar/styles.js","layouts/full-with-app-bar/index.js","modules/auth/components/app-bar/styles.js","modules/auth/components/app-bar/index.js","modules/auth/components/auth-content-wrapper/styles.js","modules/auth/components/auth-content-wrapper/index.js","modules/auth/components/auth-layout-wrapper/styles.js","modules/auth/components/auth-layout-wrapper/index.js","webpack://@edf-prj/app-web/./src/modules/auth/components/logo/styles.module.scss?f442","modules/auth/components/logo/index.js","modules/auth/hooks/use-sign-in.js","modules/auth/hooks/use-sign-up.endpoint.js","modules/auth/hooks/use-sign-up.js","modules/auth/hooks/use-send-forgot-password-link-to-email.endpoint.js","modules/auth/hooks/use-send-forgot-password-link-to-email.js","modules/auth/hooks/use-reset-password.endpoint.js","modules/auth/hooks/use-reset-password.js","modules/auth/hooks/use-fetch-authentication-tokens.js","modules/auth/hooks/use-fetch-mfa-enabled.js","modules/auth/pages/sign-up/components/custom-input-text-field/index.js","modules/auth/pages/forgot-password/components/form/styles.js","modules/auth/pages/forgot-password/components/form/index.js","modules/auth/pages/forgot-password/styles.js","modules/auth/pages/forgot-password/index.js","../../../node_modules/@material-ui/core/esm/Link/Link.js","modules/auth/components/text-link/styles.js","modules/auth/components/text-link/index.js","modules/auth/pages/forgot-password-success/styles.js","modules/auth/pages/forgot-password-success/index.js","modules/auth/pages/reset-password/components/form/styles.js","modules/auth/pages/reset-password/components/form/index.js","modules/auth/pages/reset-password/styles.js","modules/auth/pages/reset-password/index.js","modules/auth/pages/sign-in/components/form/styles.js","modules/auth/pages/sign-in/components/form/index.js","modules/auth/pages/sign-in/components/form-wrapper/index.js","modules/auth/pages/sign-in/styles.js","modules/auth/pages/sign-in/index.js","modules/auth/hooks/use-account-lock/index.js","modules/auth/pages/sign-up/components/form/styles.js","modules/auth/pages/sign-up/components/form/index.js","modules/auth/pages/sign-up/components/form-wrapper/styles.js","modules/auth/pages/sign-up/components/form-wrapper/index.js","modules/auth/pages/sign-up/styles.js","modules/auth/pages/sign-up/index.js","modules/auth/components/button-group/index.js","modules/auth/pages/welcome/components/study-info/index.js","modules/auth/pages/welcome/styles.js","modules/auth/pages/welcome/index.js","modules/auth/routes/index.js","modules/rdash/components/dialog-button/styles.js","modules/rdash/components/dialog-button/index.js","modules/rdash/components/loading-button/styles.js","modules/rdash/components/loading-button/index.js","modules/rdash/components/loading-dots/styles.js","modules/rdash/components/loading-dots/index.js","webpack://@edf-prj/app-web/./src/ui-kit/components/alert/styles.module.scss?db27","ui-kit/components/alert/index.js","webpack://@edf-prj/app-web/./src/ui-kit/components/button-base/styles.module.scss?cc44","ui-kit/components/button-base/index.js","../../../node_modules/@material-ui/core/esm/AppBar/AppBar.js"],"sourcesContent":["import { makeStyles } from '@material-ui/core';\n\nexport const inputUseStyles = makeStyles(\n (theme) => ({\n root: {},\n underline: {\n '&:after': {\n borderBottomColor: theme.palette.secondary.main,\n },\n },\n actHealthColors: {\n '&$underline:after': {\n borderBottomColor: theme.palette.actHealth.main,\n },\n '&$focused $startAdornment': {\n color: theme.palette.actHealth.main,\n },\n '&$focused $endAdornment': {\n color: theme.palette.actHealth.main,\n },\n },\n startAdornment: {\n opacity: 0.5,\n '$focused &': {\n opacity: 1,\n color: theme.palette.secondary.main,\n },\n '$error &': {\n opacity: 1,\n color: theme.palette.error.main,\n },\n padding: theme.spacing(0, 1, 0, 1),\n },\n endAdornment: {\n opacity: 0.5,\n '$focused &': {\n opacity: 1,\n color: theme.palette.secondary.main,\n },\n '$error &': {\n opacity: 1,\n color: theme.palette.error.main,\n },\n padding: theme.spacing(0, 0, 0, 1),\n },\n focused: {},\n error: {},\n }),\n { name: 'EDFWeb-Input-TextField-Component-Input' }\n);\n","import React from 'react';\nimport { fieldToTextField } from 'formik-material-ui';\nimport PropTypes from 'prop-types';\nimport { InputAdornment, TextField } from '@material-ui/core';\n\nimport { inputUseStyles } from './styles';\n\nconst InputTextFiled = (props) => {\n const { startAdornment, endAdornment, showHelperTextOnError, color, ...restProps } = props;\n\n const inputClasses = inputUseStyles();\n const InputProps = {\n classes: {\n root: color === 'actHealth' ? inputClasses.actHealthColors : undefined,\n underline: inputClasses.underline,\n focused: inputClasses.focused,\n error: inputClasses.error,\n },\n };\n\n if (startAdornment) {\n InputProps.startAdornment = (\n \n {startAdornment}\n \n );\n }\n\n if (endAdornment) {\n InputProps.endAdornment = (\n \n {endAdornment}\n \n );\n }\n\n const textFieldData = fieldToTextField(restProps);\n if (!showHelperTextOnError) {\n if (textFieldData.error) {\n textFieldData.helperText = undefined;\n }\n }\n return ;\n};\n\nInputTextFiled.defaultProps = {\n startAdornment: null,\n endAdornment: null,\n showHelperTextOnError: true,\n color: 'default',\n};\n\nInputTextFiled.propTypes = {\n startAdornment: PropTypes.oneOfType([PropTypes.node, PropTypes.elementType, PropTypes.element]),\n endAdornment: PropTypes.oneOfType([PropTypes.node, PropTypes.elementType, PropTypes.element]),\n showHelperTextOnError: PropTypes.bool,\n color: PropTypes.oneOf(['actHealth', 'default']),\n};\n\nexport default InputTextFiled;\n","const styles = (theme) => ({\n submitButton: {\n marginTop: theme.spacing(2),\n marginBottom: theme.spacing(2),\n position: 'relative',\n padding: theme.spacing(1, 0),\n },\n submitProgress: {\n position: 'absolute',\n top: '50%',\n left: '50%',\n marginTop: -12,\n marginLeft: -12,\n },\n});\n\nexport default styles;\n","import PropTypes from 'prop-types';\nimport Button from '@material-ui/core/Button';\nimport CircularProgress from '@material-ui/core/CircularProgress';\nimport { withStyles } from '@material-ui/core/styles';\n\nimport styles from './styles';\n\n// TODO: This component can be replaced with button with loading.\nconst SubmitWithLoading = ({ classes, isSubmitting, text, buttonProps, disabled }) => {\n return (\n \n );\n};\n\nSubmitWithLoading.defaultProps = {\n buttonProps: {},\n disabled: false,\n};\n\nSubmitWithLoading.propTypes = {\n classes: PropTypes.objectOf(PropTypes.string).isRequired,\n disabled: PropTypes.bool,\n isSubmitting: PropTypes.bool.isRequired,\n text: PropTypes.string.isRequired,\n buttonProps: PropTypes.objectOf(PropTypes.oneOfType([PropTypes.string, PropTypes.bool])),\n};\n\nexport default withStyles(styles)(SubmitWithLoading);\n","import { object, string } from 'yup';\n\nimport client from '$app-web/core/client';\n\nconst responseSchema = object()\n .shape({\n name: string().required(),\n orgName: string().required(),\n appBg: string().required(),\n desc: string().required(),\n })\n .camelCase();\n\nconst requestSchema = object().shape({\n study_id: string().required(),\n});\n\nconst useReadStudyBasicInfoEndpoint = client.registerEndpoint('GET api/read-study-basic-info', '/study/info/basic/', {\n responseSchema,\n requestSchema,\n});\n\nexport default useReadStudyBasicInfoEndpoint;\n","import { useCallback } from 'react';\n\nimport useErrorHandler from '$app-web/hooks/use-error-handler';\n\nimport useReadStudyBasicInfoEndpoint from './use-read-study-basic-info.endpoint';\n\nconst useReadStudyBasicInfo = (studyId, onSuccess) => {\n const { handleError } = useErrorHandler();\n\n const { refetch, isLoading, isSuccess, isError, data, ...rest } = useReadStudyBasicInfoEndpoint(\n {\n studyId,\n },\n {\n enabled: false,\n onSuccess: (result) => {\n onSuccess && onSuccess(result);\n },\n onError: (error) => handleError(error),\n }\n );\n\n const readStudyBasicInfo = useCallback(() => {\n refetch();\n }, [refetch]);\n\n return {\n readStudyBasicInfo,\n isLoading,\n isSuccess,\n isError,\n data: data || {},\n hasStudyBasicInfo: !!data,\n ...rest,\n };\n};\n\nexport default useReadStudyBasicInfo;\n","import { number, object, string } from 'yup';\n\nimport client from '$app-web/core/client';\n\nconst requestSchema = object().shape({\n reg_code: number().required(),\n device_id: string().required(),\n});\n\nconst useJoinStudyEndpoint = client.registerEndpoint('POST api/join-study', `/study/registration/create/`, {\n requestSchema,\n mutate: true,\n});\n\nexport default useJoinStudyEndpoint;\n","const styles = (theme) => {\n return {\n contentWrapper: {\n height: 'calc(100% - 56px)',\n maxHeight: 'calc(100% - 56px)',\n [`${theme.breakpoints.up('xs')} and (orientation: landscape)`]: {\n height: 'calc(100% - 56px)',\n maxHeight: 'calc(100% - 56px)',\n },\n [theme.breakpoints.up('sm')]: {\n height: 'calc(100% - 64px)',\n maxHeight: 'calc(100% - 64px)',\n },\n width: '100%',\n maxWidth: '100%',\n },\n };\n};\n\nexport default styles;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\n\nimport LayoutFull from '$app-web/layouts/full';\n\nimport styles from './styles';\n\nconst LayoutFullWithAppBar = ({ classes, wrapper, content, contentWrapperProps, appBar, footer, wrapperProps }) => {\n return (\n \n {appBar}\n
\n {content}\n
\n {footer}\n \n }\n />\n );\n};\n\nLayoutFullWithAppBar.defaultProps = {\n appBar: null,\n wrapper: null,\n footer: null,\n contentWrapperProps: undefined,\n wrapperProps: undefined,\n};\n\nLayoutFullWithAppBar.propTypes = {\n classes: PropTypes.objectOf(PropTypes.string).isRequired,\n wrapper: PropTypes.elementType,\n content: PropTypes.element.isRequired,\n appBar: PropTypes.oneOfType([PropTypes.element]),\n footer: PropTypes.node,\n contentWrapperProps: PropTypes.oneOfType([PropTypes.object]),\n wrapperProps: PropTypes.oneOfType([PropTypes.object]),\n};\n\nexport default withStyles(styles)(LayoutFullWithAppBar);\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n root: {\n backgroundColor: 'transparent',\n },\n secondaryBackground: {\n backgroundColor: theme.palette.secondary.main,\n },\n actHealthBackground: {\n backgroundColor: theme.palette.actHealth.main,\n },\n contentWrapper: {\n height: 56,\n [theme.breakpoints.up('sm')]: {\n height: 64,\n },\n },\n backButtonWrapper: {\n paddingLeft: theme.spacing(3),\n [theme.breakpoints.down('xs')]: {\n paddingLeft: theme.spacing(2),\n },\n },\n roleBackgroundWrapper: {\n height: '100%',\n width: 450,\n [theme.breakpoints.down('sm')]: {\n width: 300,\n },\n [theme.breakpoints.down('xs')]: {\n width: '100%',\n },\n },\n}));\n","import { useMemo } from 'react';\nimport clsx from 'clsx';\nimport * as PropTypes from 'prop-types';\nimport { useTranslation } from 'react-i18next';\nimport { useHistory, useRouteMatch } from 'react-router-dom';\nimport { AppBar as MuiAppBar, Button, Grid, Toolbar, useMediaQuery, useTheme } from '@material-ui/core';\n\nimport { getIsACT, URLsManager } from '$app-web/utils';\n\nimport useStyles from './styles';\n\nimport { FontAwesomeIcon } from '$common/fontawesome-pro/react-fontawesome';\n\nconst AppBar = (props) => {\n const { hasStudyBasicInfo } = props;\n\n const classes = useStyles();\n const { t } = useTranslation();\n const history = useHistory();\n const theme = useTheme();\n const isACT = useMemo(() => getIsACT(), []);\n\n const matchedRoutes = {\n welcome: Boolean(useRouteMatch(URLsManager.to('dashboard:auth:WELCOME'))),\n signIn: Boolean(useRouteMatch(URLsManager.to('dashboard:auth:SIGN_IN'))),\n signUp: Boolean(useRouteMatch(URLsManager.to('dashboard:auth:SIGN_UP'))),\n signUpRoleParticipant: Boolean(useRouteMatch(URLsManager.to('dashboard:auth:SIGN_UP_ROLE', { role: 'participant' }))),\n signUpRoleResearcher: Boolean(useRouteMatch(URLsManager.to('dashboard:auth:SIGN_UP_ROLE', { role: 'researcher' }))),\n forgotPassword: Boolean(useRouteMatch(URLsManager.to('dashboard:auth:FORGOT_PASSWORD'))),\n forgotPasswordSuccess: Boolean(useRouteMatch(URLsManager.to('dashboard:auth:FORGOT_PASSWORD_SUCCESS'))),\n resetPassword: Boolean(useRouteMatch(URLsManager.to('dashboard:auth:RESET_PASSWORD'))),\n };\n\n const isSizeXsAndBelow = useMediaQuery(theme.breakpoints.down('xs'));\n const isFullSecondaryBackground =\n (matchedRoutes.signUp && !matchedRoutes.signUpRoleParticipant && !matchedRoutes.signUpRoleResearcher) ||\n (matchedRoutes.signUp && isSizeXsAndBelow);\n const isResearcherSecondaryBackground = matchedRoutes.signUpRoleResearcher && !isSizeXsAndBelow;\n const isParticipantSecondaryBackground = matchedRoutes.signUpRoleParticipant && !isSizeXsAndBelow;\n const backButtonColor = isFullSecondaryBackground || isResearcherSecondaryBackground ? 'primary' : 'secondary';\n\n const backgroundClass = isACT ? classes.actHealthBackground : classes.secondaryBackground;\n\n const onGoBack = () => {\n if (matchedRoutes.welcome) {\n URLsManager.redirectTo('/');\n } else if (matchedRoutes.signUpRoleParticipant || matchedRoutes.signUpRoleResearcher) {\n if (hasStudyBasicInfo) {\n history.push(URLsManager.to('dashboard:auth:WELCOME'));\n } else {\n history.push(URLsManager.to('dashboard:auth:SIGN_UP'));\n }\n } else if (matchedRoutes.signIn || matchedRoutes.signUp) {\n history.push(URLsManager.to('dashboard:auth:WELCOME'));\n } else if (matchedRoutes.forgotPassword) {\n history.push(URLsManager.to('dashboard:auth:SIGN_IN'));\n }\n };\n\n return (\n \n \n \n \n {!(matchedRoutes.forgotPasswordSuccess || matchedRoutes.resetPassword) && (\n }\n >\n {t('back')}\n \n )}\n \n \n \n \n \n \n );\n};\n\nAppBar.propTypes = {\n hasStudyBasicInfo: PropTypes.bool,\n};\n\nAppBar.defaultProps = {\n hasStudyBasicInfo: false,\n};\n\nexport default AppBar;\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n contentWrapper: {\n width: '100%',\n maxWidth: '100%',\n minHeight: '100%',\n },\n contentCenterWrapper: {\n margin: 'auto 0',\n padding: theme.spacing(0, 4),\n },\n}));\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useRouteMatch } from 'react-router-dom';\nimport { Grid } from '@material-ui/core';\n\nimport ScrollableView from '$app-web/components/scrollable-view';\nimport { URLsManager } from '$app-web/utils';\n\nimport useStyles from './styles';\n\nconst AuthContentWrapper = (props) => {\n const { children } = props;\n\n const classes = useStyles();\n\n const matchedRoutes = {\n signUp: Boolean(useRouteMatch(URLsManager.to('dashboard:auth:SIGN_UP'))),\n };\n\n return (\n \n \n {/*\n This method used to fix justify=center issue.\n https://stackoverflow.com/questions/33454533/cant-scroll-to-top-of-flex-item-that-is-overflowing-container\n */}\n {!matchedRoutes.signUp &&
{children}
}\n {matchedRoutes.signUp && children}\n
\n
\n );\n};\n\nAuthContentWrapper.propTypes = {\n children: PropTypes.element.isRequired,\n};\n\nexport default AuthContentWrapper;\n","import mainBackgroundPattern from '@assets/images/backgrounds/main-background-pattern.png';\nimport { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n root: {\n width: '100%',\n maxWidth: '100%',\n height: '100%',\n maxHeight: '100%',\n backgroundColor: 'rgba(255,255,255,0.2)',\n },\n backgroundOverlay: {\n backgroundColor: theme.palette.background.default,\n position: 'fixed',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n opacity: 0.6,\n zIndex: -1,\n },\n background: {\n backgroundImage: `url(${mainBackgroundPattern})`,\n position: 'fixed',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n zIndex: -2,\n backgroundPosition: 'center',\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'cover',\n },\n}));\n","import * as PropTypes from 'prop-types';\n\nimport { URLsManager } from '$app-web/utils';\n\nimport useStyles from './styles';\n\nconst AuthLayoutWrapper = (props) => {\n const { children, studyBasicInfo } = props;\n\n const classes = useStyles();\n\n return (\n
\n \n {studyBasicInfo.appBg != null &&
}\n {children}\n
\n );\n};\n\nAuthLayoutWrapper.defaultProps = {\n studyBasicInfo: {},\n};\n\nAuthLayoutWrapper.propTypes = {\n children: PropTypes.node.isRequired,\n studyBasicInfo: PropTypes.shape({\n appBg: PropTypes.string,\n }),\n};\n\nexport default AuthLayoutWrapper;\n","// extracted by mini-css-extract-plugin\nexport default {\"color\":\"styles_color__ax4Sz\",\"ocean-50\":\"styles_ocean-50__Wq4yl\",\"ocean-100\":\"styles_ocean-100__JaG9u\",\"ocean-200\":\"styles_ocean-200__IelRa\",\"ocean-300\":\"styles_ocean-300__4zixJ\",\"ocean-400\":\"styles_ocean-400__jga1u\",\"ocean-500\":\"styles_ocean-500__qxWV+\",\"ocean-600\":\"styles_ocean-600__tyFEV\",\"space-50\":\"styles_space-50__ULoYJ\",\"space-100\":\"styles_space-100__youJT\",\"space-200\":\"styles_space-200__2JyyU\",\"space-300\":\"styles_space-300__LlzCy\",\"space-400\":\"styles_space-400__I3gF1\",\"space-500\":\"styles_space-500__PPOLm\",\"gray-50\":\"styles_gray-50__FRfIJ\",\"gray-100\":\"styles_gray-100__62mgK\",\"gray-200\":\"styles_gray-200__MbHLK\",\"gray-300\":\"styles_gray-300__06xca\",\"gray-400\":\"styles_gray-400__B+j+U\",\"gray-500\":\"styles_gray-500__7fugd\",\"green-50\":\"styles_green-50__MirPM\",\"green-100\":\"styles_green-100__IuapR\",\"green-200\":\"styles_green-200__NnBsH\",\"green-300\":\"styles_green-300__mAAeC\",\"green-400\":\"styles_green-400__vuNKA\",\"green-500\":\"styles_green-500__K-lpu\",\"red-50\":\"styles_red-50__TnBzX\",\"red-100\":\"styles_red-100__ORldF\",\"red-200\":\"styles_red-200__Hu3Tm\",\"red-300\":\"styles_red-300__uw779\",\"red-400\":\"styles_red-400__w9d7u\",\"red-500\":\"styles_red-500__RS1ys\",\"yellow-50\":\"styles_yellow-50__91sLd\",\"yellow-100\":\"styles_yellow-100__aVzpM\",\"yellow-200\":\"styles_yellow-200__TW5pw\",\"yellow-300\":\"styles_yellow-300__vfdbz\",\"yellow-400\":\"styles_yellow-400__+R5AT\",\"yellow-500\":\"styles_yellow-500__wIS9z\",\"orange-50\":\"styles_orange-50__uckdY\",\"orange-100\":\"styles_orange-100__Qfg5n\",\"orange-200\":\"styles_orange-200__sQKiz\",\"orange-300\":\"styles_orange-300__C7Fx-\",\"orange-400\":\"styles_orange-400__J7FzX\",\"orange-500\":\"styles_orange-500__VMeIm\",\"turquoise-50\":\"styles_turquoise-50__Sc2mK\",\"turquoise-100\":\"styles_turquoise-100__+woV4\",\"turquoise-200\":\"styles_turquoise-200__F5Yz9\",\"turquoise-300\":\"styles_turquoise-300__JUNuc\",\"turquoise-400\":\"styles_turquoise-400__AZzfx\",\"turquoise-500\":\"styles_turquoise-500__MOedi\",\"turquoise-600\":\"styles_turquoise-600__KYmf0\",\"violet-50\":\"styles_violet-50__MpUnF\",\"violet-100\":\"styles_violet-100__uJRGg\",\"violet-200\":\"styles_violet-200__sd84e\",\"violet-300\":\"styles_violet-300__z-Mh8\",\"violet-400\":\"styles_violet-400__Zl8JJ\",\"violet-500\":\"styles_violet-500__iUd0L\",\"snow-50\":\"styles_snow-50__gUnSz\",\"snow-100\":\"styles_snow-100__iaHKz\",\"snow-200\":\"styles_snow-200__5knoU\",\"snow-300\":\"styles_snow-300__PD+VO\",\"snow-400\":\"styles_snow-400__qVH-P\",\"snow-500\":\"styles_snow-500__JMToa\",\"background-color\":\"styles_background-color__183p9\",\"ocean\":\"styles_ocean__3UxpC\",\"ocean-light\":\"styles_ocean-light__ItNjw\",\"green\":\"styles_green__5tPZ5\",\"green-light\":\"styles_green-light__32MaA\",\"red\":\"styles_red__FMKJ+\",\"red-light\":\"styles_red-light__gmwMy\",\"orange\":\"styles_orange__L+Cko\",\"orange-light\":\"styles_orange-light__2m92X\",\"space\":\"styles_space__axztB\",\"space-light\":\"styles_space-light__F0PhA\",\"gray-light\":\"styles_gray-light__wuRQb\",\"violet\":\"styles_violet__IAqGT\",\"violet-light\":\"styles_violet-light__D6pX9\",\"yellow\":\"styles_yellow__8xDMF\",\"yellow-light\":\"styles_yellow-light__bM1Qe\",\"logoWrapper\":\"styles_logoWrapper__tRdm6\",\"logo\":\"styles_logo__VZbnU\"};","import React from 'react';\nimport * as PropTypes from 'prop-types';\nimport actHealthLogo from '@assets/images/logo/act-health-logo.png';\nimport edenLogo from '@assets/images/logo/eden-logo.png';\nimport logotypeVertical from '@assets/images/logo/logotype-vertical.png';\nimport logotypeWhite from '@assets/images/logo/logotype-white-512-512.png';\n\nimport { ON_PREMISE_INSTANCES } from '$app-web/constants';\nimport { getEnvironmentName } from '$app-web/utils';\n\nimport classes from './styles.module.scss';\n\nconst Logo = (props) => {\n const { color } = props;\n const defaultLogoSource = color === 'white' ? logotypeWhite : logotypeVertical;\n\n const environmentName = getEnvironmentName();\n\n let logoSource;\n switch (environmentName) {\n case ON_PREMISE_INSTANCES.ACT:\n logoSource = actHealthLogo;\n break;\n case ON_PREMISE_INSTANCES.EDEN:\n logoSource = edenLogo;\n break;\n default:\n logoSource = defaultLogoSource;\n break;\n }\n\n return (\n
\n \"Logo\"\n
\n );\n};\n\nLogo.defaultProps = {\n color: 'color',\n};\n\nLogo.propTypes = {\n color: PropTypes.oneOf(['white', 'color']),\n};\n\nexport default Logo;\n","import { useCallback, useEffect, useRef } from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { auth as appClientAuth, constants as appClientConstants, utils as appClientUtils } from '@edf-pkg/app-client';\nimport appDateTime from '@edf-pkg/app-date-time';\nimport { store as appMainStore, useDialog } from '@edf-pkg/app-main';\nimport { USER_SIGN_ACTION_SOURCES } from '@edf-pkg/app-phr/src/constants';\n\nimport { DIALOG_IDS } from '$app-web/constants';\nimport useErrorHandler from '$app-web/hooks/use-error-handler';\n\nimport { useFetchAuthenticationTokens, useFetchMFAEnabled } from './';\n\nconst useSignIn = ({ onSuccess, onError, actionSource = USER_SIGN_ACTION_SOURCES.SIGN_IN, silentError = false } = {}) => {\n const { handleError } = useErrorHandler();\n\n const dispatch = useDispatch();\n\n const formikActionsRef = useRef(null);\n const accountDeletionDialog = useDialog(DIALOG_IDS.ACCOUNT_DELETION_REVOKED);\n\n const updateAuthenticationStore = appClientAuth.useAuthenticationStore((store) => store.updateState);\n const username = appClientAuth.useAuthenticationStore((store) => store.username);\n const password = appClientAuth.useAuthenticationStore((store) => store.password);\n const isMFAEnabled = appClientAuth.useAuthenticationStore((store) => store.mfaEnabled);\n const setIsMFAEnabled = useCallback(\n (enabled) => {\n updateAuthenticationStore({ mfaEnabled: enabled });\n },\n [updateAuthenticationStore]\n );\n\n const {\n mutate: fetchAuthenticationTokens,\n isLoading: isFetchAuthenticationTokensLoading,\n isSuccess: isFetchAuthenticationTokensSuccess,\n isError: isFetchAuthenticationTokensError,\n } = useFetchAuthenticationTokens({\n onSuccess: (result) => {\n const { accessToken: _accessToken, refreshToken, expiresIn, revokedDeletion } = result;\n\n updateAuthenticationStore({\n accessToken: _accessToken,\n refreshToken,\n expiresIn,\n isAccountDeletionRevoked: revokedDeletion,\n // We need to reset the below values after a successful login\n mfaEnabled: false,\n username: null,\n password: null,\n otpToken: null,\n });\n\n dispatch(\n appMainStore.userDuck.duckActionCreators.setUserDataExternal({\n userData: { apiKey: _accessToken },\n actionSource: actionSource,\n shouldPersistUserData: true,\n shouldLoadFromAPI: true,\n shouldSetInitializationStatus: true,\n })\n );\n\n if (revokedDeletion) {\n accountDeletionDialog.open();\n }\n\n // We use the below flag to show a notification to users that an auto-logout occurred. We don't need to show them that notification anymore after they log in again.\n appClientUtils.auth.setAutoLogoutLocalStorageFlag(false);\n },\n onError: (error) => {\n onError?.(error);\n !silentError && handleError(error);\n },\n });\n\n const fetchTokens = useCallback(\n (values) => {\n const { username: userInputUsername, password: userInputPassword, token: otpToken } = values;\n const olsonTimezone = appDateTime.timezone.getCurrent();\n\n const headers = {\n ...(olsonTimezone && { 'X-Avc-Timezone': olsonTimezone }),\n ...(otpToken && { 'X-Avc-Otp': otpToken }),\n };\n\n const payload = {\n scope: appClientConstants.AUTHENTICATION_SCOPES.ALL,\n grant_type: appClientConstants.AUTHENTICATION_GRANT_TYPES.PASSWORD,\n client_id: appClientConstants.AUTHENTICATION_CLIENT_IDS.WEB,\n username: userInputUsername || username,\n password: userInputPassword || password,\n };\n\n fetchAuthenticationTokens({\n ...payload,\n extraAxiosConfig: {\n headers,\n },\n });\n },\n [fetchAuthenticationTokens, password, username]\n );\n\n const {\n mutate: fetchMFAEnabled,\n isLoading: isFetchMFAEnabledLoading,\n isSuccess: isFetchMFAEnabledSuccess,\n isError: isFetchMFAEnabledError,\n } = useFetchMFAEnabled({\n onError: (error) => {\n onError?.(error);\n !silentError && handleError(error);\n },\n });\n\n const initiateSignIn = useCallback(\n (userInput, formikActions) => {\n const { username: userInputUsername, password: userInputPassword, token: otpToken } = userInput;\n\n formikActionsRef.current = formikActions;\n\n if (userInputUsername) {\n updateAuthenticationStore({ username: userInputUsername });\n }\n if (userInputPassword) {\n updateAuthenticationStore({ password: userInputPassword });\n }\n\n if (!otpToken) {\n fetchMFAEnabled(\n { username: userInputUsername || username, password: userInputPassword || password, send: true },\n {\n onSuccess: (response) => {\n const mfaEnabled = response.result.length > 0;\n setIsMFAEnabled(mfaEnabled);\n if (!mfaEnabled) {\n fetchTokens({ username: userInputUsername, password: userInputPassword });\n }\n\n onSuccess?.({ mfaEnabled });\n },\n }\n );\n } else {\n fetchTokens({ token: otpToken });\n }\n },\n [fetchMFAEnabled, fetchTokens, onSuccess, password, setIsMFAEnabled, updateAuthenticationStore, username]\n );\n\n const isLoading = isFetchMFAEnabledLoading || isFetchAuthenticationTokensLoading;\n\n useEffect(() => {\n formikActionsRef.current?.setSubmitting?.(isLoading);\n }, [isLoading]);\n\n return {\n signIn: initiateSignIn,\n isLoading: isLoading,\n isSuccess: isFetchAuthenticationTokensSuccess && isFetchMFAEnabledSuccess,\n isError: isFetchAuthenticationTokensError || isFetchMFAEnabledError,\n isMFAEnabled,\n setIsMFAEnabled,\n };\n};\n\nexport default useSignIn;\n","import { array, boolean, mixed, number, object, string } from 'yup';\n\nimport { core as appClientCore } from '@edf-pkg/app-client';\n\nimport { ROLE_IDS } from '$app-web/constants';\nimport client from '$app-web/core/client';\n\nconst requestSchema = object().shape({\n email: string().required(),\n password: string().required(),\n first_name: string().nullable().default(null),\n last_name: string().nullable().default(null),\n role_id: mixed().oneOf([ROLE_IDS.PARTICIPANT, ROLE_IDS.RESEARCHER]).required(),\n org_name: string(),\n client_id: string().required(),\n});\n\nconst responseSchema = object().shape({\n device: object().shape({\n app_updated_at: number().nullable(),\n bt_mac: string().nullable(),\n cur_app_version: number().nullable(),\n cur_os_version: string().nullable(),\n date_created: number().nullable(),\n device_id: string().nullable(),\n last_app_version: number().nullable(),\n last_os_version: string().nullable(),\n last_used: number().nullable(),\n manufacturer: string().nullable(),\n model: string().nullable(),\n os_updated_at: number().nullable(),\n owner: number().nullable(),\n wifi_mac: string().nullable(),\n }),\n user: object().shape({\n username: string().required(),\n role_id: number().required(),\n id: number().required(),\n avatar: string().ensure(),\n first_name: string().ensure(),\n last_name: string().ensure(),\n language: string().ensure(),\n org_name: string().ensure(),\n is_email_verified: boolean().default(false),\n is_phone_verified: boolean().default(false),\n mfa_enabled: boolean().default(false),\n phone: string().ensure(),\n matrix_password: string().ensure(),\n subscription_configs: mixed().required(),\n preferred_notification_medium_ids: array().of(number()).required(),\n has_auto_logout: boolean().required().default(false),\n has_password_expiry: boolean().required().default(false),\n // TODO: Below fields are deprecate. Remove them after adjusting the UI in PDash.\n gender_id: number().required(),\n age_id: number().required(),\n education_id: number().required(),\n marital_status_id: number().required(),\n occupation_id: number().required(),\n salary_id: number().required(),\n }),\n});\n\nconst useSignUpEndpoint = client.registerEndpoint('POST api/sign-up', 'v1/user/', {\n mutate: true,\n requestSchema,\n responseSchema,\n customErrorsOrMapper: {\n [appClientCore.ERROR_CODES.USER_EXIST]: (t) => t('pdash:signup_network_err_user_exits'),\n },\n});\n\nexport default useSignUpEndpoint;\n","import { useRef } from 'react';\n\nimport { constants as appClientConstants } from '@edf-pkg/app-client';\nimport appDateTime from '@edf-pkg/app-date-time';\nimport { USER_SIGN_ACTION_SOURCES } from '@edf-pkg/app-phr/src/constants';\n\nimport useErrorHandler from '$app-web/hooks/use-error-handler';\nimport { getIdOfRole, isResearcher } from '$app-web/utils';\n\nimport useSignIn from './use-sign-in';\nimport useSignUpEndpoint from './use-sign-up.endpoint';\n\nconst useSignUp = ({ onSuccess } = {}) => {\n const userPassword = useRef(null);\n\n const { handleError } = useErrorHandler();\n\n const { signIn, isLoading: isSignInLoading } = useSignIn({ actionSource: USER_SIGN_ACTION_SOURCES.SIGN_UP });\n\n const {\n mutate,\n isLoading: isSignUpLoading,\n isError,\n isSuccess,\n ...rest\n } = useSignUpEndpoint({\n onSuccess: (result) => {\n signIn({ username: result.user.username, password: userPassword.current });\n onSuccess?.(result);\n },\n onError: (error) => handleError(error),\n });\n\n const signUp = (signUpData, formikActions) => {\n formikActions?.setSubmitting(true);\n\n const { email, firstName, lastName, password, role, organization } = signUpData;\n\n userPassword.current = password;\n\n const olsonTimezone = appDateTime.timezone.getCurrent();\n\n const headers = {\n ...(olsonTimezone && { 'X-Avc-Timezone': olsonTimezone }),\n };\n\n const payload = {\n client_id: appClientConstants.AUTHENTICATION_CLIENT_IDS.WEB,\n email,\n password,\n first_name: firstName,\n last_name: lastName,\n role_id: getIdOfRole(role),\n };\n\n if (isResearcher(role)) {\n payload.org_name = organization;\n }\n\n mutate(\n {\n ...payload,\n extraAxiosConfig: {\n headers,\n },\n },\n {\n onSettled: () => {\n formikActions?.setSubmitting(false);\n },\n }\n );\n };\n\n return {\n signUp,\n isLoading: isSignUpLoading || isSignInLoading,\n isSuccess,\n isError,\n ...rest,\n };\n};\n\nexport default useSignUp;\n","import { object, string } from 'yup';\n\nimport client from '$app-web/core/client';\n\nconst requestSchema = object().shape({\n email: string().email().required(),\n});\n\nconst useSendForgotPasswordLinkToEmailEndpoint = client.registerEndpoint(\n 'POST api/send-forgot-password-link-to-email',\n 'v1/auth/reset_password/',\n {\n mutate: true,\n requestSchema,\n }\n);\n\nexport default useSendForgotPasswordLinkToEmailEndpoint;\n","import useErrorHandler from '$app-web/hooks/use-error-handler';\n\nimport useSendForgotPasswordLinkToEmailEndpoint from './use-send-forgot-password-link-to-email.endpoint';\n\nconst useSendForgotPasswordLinkToEmail = () => {\n const { handleError } = useErrorHandler();\n\n const { mutate, isLoading, isError, isSuccess, ...rest } = useSendForgotPasswordLinkToEmailEndpoint({\n onError: (error) => handleError(error),\n });\n\n return {\n sendForgotPasswordLinkToEmail: mutate,\n isLoading,\n isError,\n isSuccess,\n ...rest,\n };\n};\n\nexport default useSendForgotPasswordLinkToEmail;\n","import { object, string } from 'yup';\n\nimport client from '$app-web/core/client';\n\nconst requestSchema = object().shape({\n uid: string().required('UID required.'),\n token: string().required('Token required.'),\n password: string().required('New password required.'),\n});\n\nconst responseSchema = object().shape({\n email: string().required(),\n});\n\nconst useResetPasswordEndpoint = client.registerEndpoint('POST api/reset-password', 'v1/auth/set_password/', {\n mutate: true,\n requestSchema,\n responseSchema,\n});\n\nexport default useResetPasswordEndpoint;\n","import { useRef } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useHistory } from 'react-router-dom';\n\nimport { core as appClientCore } from '@edf-pkg/app-client';\nimport { useSnackbar } from '@edf-pkg/app-main';\nimport { USER_SIGN_ACTION_SOURCES } from '@edf-pkg/app-phr/src/constants';\n\nimport useErrorHandler from '$app-web/hooks/use-error-handler';\nimport { URLsManager } from '$app-web/utils';\n\nimport useResetPasswordEndpoint from './use-reset-password.endpoint';\nimport useSignIn from './use-sign-in';\n\nconst useResetPassword = () => {\n const { handleError } = useErrorHandler();\n const snackbar = useSnackbar();\n const { t } = useTranslation();\n const history = useHistory();\n\n const newPassword = useRef('');\n const username = useRef('');\n\n const { signIn, isLoading: isSignInLoading } = useSignIn({\n onSuccess: ({ mfaEnabled } = {}) => {\n if (mfaEnabled) {\n history.push(URLsManager.to('dashboard:auth:SIGN_IN'));\n }\n },\n actionSource: USER_SIGN_ACTION_SOURCES.RESET_PASSWORD,\n });\n\n const { mutate, isLoading, isSuccess, isError, ...rest } = useResetPasswordEndpoint({\n onSuccess: (result) => {\n const { email } = result;\n snackbar.showSuccess(t('pdash:activity_password_reset_successful'));\n username.current = email;\n signIn({ username: email, password: newPassword.current });\n },\n onError: (error) => {\n if (error.innerError?.data?.error === appClientCore.ERROR_CODES.PASSWORD_WAS_USED_BEFORE) {\n snackbar.showError(t('pdash:password_reset_error_password_used_before'));\n } else {\n snackbar.showError(t('pdash:activity_password_reset_error_incorrect_token'));\n }\n handleError(error);\n },\n });\n\n const resetPassword = (data, formikActions) => {\n newPassword.current = data.newPassword;\n mutate(\n {\n uid: data.uid,\n token: data.token,\n password: data.newPassword,\n },\n { onSettled: () => formikActions?.setSubmitting(false) }\n );\n };\n\n return {\n resetPassword,\n isLoading,\n isSuccess,\n isError,\n isSignInLoading,\n ...rest,\n };\n};\n\nexport default useResetPassword;\n","import { boolean, number, object, string } from 'yup';\n\nimport { constants as appClientConstants, core as appClientCore } from '@edf-pkg/app-client';\n\nimport client from '$app-web/core/client';\n\nconst requestSchema = object().shape({\n grant_type: string().required(),\n scope: string().default(appClientConstants.AUTHENTICATION_SCOPES.ALL).required(),\n client_id: string().default(appClientConstants.AUTHENTICATION_CLIENT_IDS.WEB).required(),\n username: string(),\n password: string(),\n refresh_token: string(),\n});\n\nconst responseSchema = object().shape({\n access_token: string().required(),\n refresh_token: string().required(),\n expires_in: number().required(),\n revoked_deletion: boolean().nullable(),\n});\n\nexport const useFetchAuthenticationTokens = client.registerEndpoint('POST api/fetch-authentication-tokens', `/v1/auth/token/`, {\n responseSchema,\n requestSchema,\n mutate: true,\n customErrorsOrMapper: {\n [appClientCore.ERROR_CODES.INVALID_TOKEN]: (t, error) => error.errorMessage,\n [appClientCore.ERROR_CODES.UNAUTHORIZED_OR_INACTIVE]: (t) => t('pdash:login_failed_invalid_username_password'),\n },\n});\n","import { object, string } from 'yup';\n\nimport client from '$app-web/core/client';\n\nconst requestSchema = object().shape({\n username: string(),\n password: string(),\n send: string().default(true),\n});\n\nexport const useFetchMFAEnabled = client.registerEndpoint('POST api/fetch-mfa-enabled', `/v1/auth/2fa/`, {\n requestSchema,\n mutate: true,\n});\n","import { useMemo } from 'react';\n\nimport InputTextField from '$app-web/components/input-text-field';\nimport { getIsACT } from '$app-web/utils';\n\nconst CustomInputTextField = (props) => {\n const isACT = useMemo(() => getIsACT(), []);\n\n return ;\n};\n\nexport default CustomInputTextField;\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n submitButtonWrapper: {\n paddingTop: theme.spacing(9),\n width: '70%',\n marginLeft: '15%',\n boxSizing: 'border-box',\n },\n}));\n","import React, { useMemo } from 'react';\nimport { Field, Form as FormikForm, Formik } from 'formik';\nimport { useTranslation } from 'react-i18next';\nimport { Redirect } from 'react-router-dom';\nimport { object, string } from 'yup';\n\nimport SubmitWithLoading from '$app-web/components/submit-with-loading';\nimport { useSendForgotPasswordLinkToEmail } from '$app-web/modules/auth/hooks';\nimport CustomInputTextField from '$app-web/modules/auth/pages/sign-up/components/custom-input-text-field';\nimport { getIsACT, URLsManager } from '$app-web/utils';\n\nimport useStyles from './styles';\n\nimport { FontAwesomeIcon } from '$common/fontawesome-pro/react-fontawesome';\n\nconst initialValues = { email: '' };\n\nconst validationSchema = object().shape({\n email: string().email().required('You should enter your email address.'),\n});\n\nconst Form = () => {\n const classes = useStyles();\n const { t } = useTranslation();\n const isACT = useMemo(() => getIsACT(), []);\n\n const { sendForgotPasswordLinkToEmail, isSuccess, isLoading } = useSendForgotPasswordLinkToEmail();\n\n if (isSuccess) {\n return ;\n }\n\n return (\n \n \n
\n }\n showHelperTextOnError={false}\n />\n
\n \n
\n
\n
\n
\n );\n};\n\nexport default Form;\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n forgotPasswordWrapper: {\n width: 275,\n margin: '0 auto',\n [theme.breakpoints.down('xs')]: {\n width: '90%',\n },\n },\n iconWrapper: {\n marginBottom: theme.spacing(3),\n },\n}));\n","import React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { Grid, Typography } from '@material-ui/core';\n\nimport usePage from '$app-web/hooks/use-page';\nimport Logo from '$app-web/modules/auth/components/logo';\n\nimport Form from './components/form';\nimport useStyles from './styles';\n\nconst PageForgotPassword = () => {\n const { t } = useTranslation();\n const classes = useStyles();\n\n usePage(t('pdash:login_forgot_password'));\n\n return (\n \n \n \n \n \n \n {t('pdash:activity_password_reset_request_instructions')}\n \n \n \n
\n \n \n );\n};\n\nPageForgotPassword.propTypes = {};\n\nexport default PageForgotPassword;\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport capitalize from '../utils/capitalize';\nimport withStyles from '../styles/withStyles';\nimport { elementTypeAcceptingRef } from '@material-ui/utils';\nimport useIsFocusVisible from '../utils/useIsFocusVisible';\nimport useForkRef from '../utils/useForkRef';\nimport Typography from '../Typography';\nexport var styles = {\n /* Styles applied to the root element. */\n root: {},\n\n /* Styles applied to the root element if `underline=\"none\"`. */\n underlineNone: {\n textDecoration: 'none'\n },\n\n /* Styles applied to the root element if `underline=\"hover\"`. */\n underlineHover: {\n textDecoration: 'none',\n '&:hover': {\n textDecoration: 'underline'\n }\n },\n\n /* Styles applied to the root element if `underline=\"always\"`. */\n underlineAlways: {\n textDecoration: 'underline'\n },\n // Same reset as ButtonBase.root\n\n /* Styles applied to the root element if `component=\"button\"`. */\n 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 '-moz-appearance': 'none',\n // Reset\n '-webkit-appearance': 'none',\n // Reset\n '&::-moz-focus-inner': {\n borderStyle: 'none' // Remove Firefox dotted outline.\n\n },\n '&$focusVisible': {\n outline: 'auto'\n }\n },\n\n /* Pseudo-class applied to the root element if the link is keyboard focused. */\n focusVisible: {}\n};\nvar Link = /*#__PURE__*/React.forwardRef(function Link(props, ref) {\n var classes = props.classes,\n className = props.className,\n _props$color = props.color,\n color = _props$color === void 0 ? 'primary' : _props$color,\n _props$component = props.component,\n component = _props$component === void 0 ? 'a' : _props$component,\n onBlur = props.onBlur,\n onFocus = props.onFocus,\n TypographyClasses = props.TypographyClasses,\n _props$underline = props.underline,\n underline = _props$underline === void 0 ? 'hover' : _props$underline,\n _props$variant = props.variant,\n variant = _props$variant === void 0 ? 'inherit' : _props$variant,\n other = _objectWithoutProperties(props, [\"classes\", \"className\", \"color\", \"component\", \"onBlur\", \"onFocus\", \"TypographyClasses\", \"underline\", \"variant\"]);\n\n var _useIsFocusVisible = useIsFocusVisible(),\n isFocusVisible = _useIsFocusVisible.isFocusVisible,\n onBlurVisible = _useIsFocusVisible.onBlurVisible,\n focusVisibleRef = _useIsFocusVisible.ref;\n\n var _React$useState = React.useState(false),\n focusVisible = _React$useState[0],\n setFocusVisible = _React$useState[1];\n\n var handlerRef = useForkRef(ref, focusVisibleRef);\n\n var handleBlur = function handleBlur(event) {\n if (focusVisible) {\n onBlurVisible();\n setFocusVisible(false);\n }\n\n if (onBlur) {\n onBlur(event);\n }\n };\n\n var handleFocus = function handleFocus(event) {\n if (isFocusVisible(event)) {\n setFocusVisible(true);\n }\n\n if (onFocus) {\n onFocus(event);\n }\n };\n\n return /*#__PURE__*/React.createElement(Typography, _extends({\n className: clsx(classes.root, classes[\"underline\".concat(capitalize(underline))], className, focusVisible && classes.focusVisible, component === 'button' && classes.button),\n classes: TypographyClasses,\n color: color,\n component: component,\n onBlur: handleBlur,\n onFocus: handleFocus,\n ref: handlerRef,\n variant: variant\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? Link.propTypes = {\n /**\n * The content of the link.\n */\n children: PropTypes.node.isRequired,\n\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object.isRequired,\n\n /**\n * @ignore\n */\n className: PropTypes.string,\n\n /**\n * The color of the link.\n */\n color: PropTypes.oneOf(['initial', 'inherit', 'primary', 'secondary', 'textPrimary', 'textSecondary', 'error']),\n\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 /**\n * @ignore\n */\n onBlur: PropTypes.func,\n\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n\n /**\n * `classes` prop applied to the [`Typography`](/api/typography/) element.\n */\n TypographyClasses: PropTypes.object,\n\n /**\n * Controls when the link should have an underline.\n */\n underline: PropTypes.oneOf(['none', 'hover', 'always']),\n\n /**\n * Applies the theme typography styles.\n */\n variant: PropTypes.string\n} : void 0;\nexport default withStyles(styles, {\n name: 'MuiLink'\n})(Link);","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n root: {\n textDecoration: 'none',\n '&:hover': {\n textDecoration: 'none',\n },\n },\n defaultColor: {\n color: theme.palette.secondary.main,\n '&:hover': {\n color: theme.palette.secondary.dark,\n },\n },\n actHealthColor: {\n color: theme.palette.actHealth.main,\n '&:hover': {\n color: theme.palette.actHealth.dark,\n },\n },\n}));\n","import React from 'react';\nimport clsx from 'clsx';\nimport * as PropTypes from 'prop-types';\nimport { Link as RouterLink } from 'react-router-dom';\nimport Link from '@material-ui/core/Link';\n\nimport useStyles from './styles';\n\nconst TextLink = (props) => {\n const { to, children, external, color } = props;\n\n const classes = useStyles();\n const className = clsx(classes.root, classes[`${color}Color`]);\n\n if (external) {\n return (\n \n {children}\n \n );\n }\n\n return (\n \n {children}\n \n );\n};\n\nTextLink.defaultProps = {\n external: false,\n color: 'default',\n};\n\nTextLink.propTypes = {\n to: PropTypes.string.isRequired,\n children: PropTypes.node.isRequired,\n external: PropTypes.bool,\n color: PropTypes.oneOf(['actHealth', 'default']),\n};\n\nexport default TextLink;\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n headIconWrapper: {\n textAlign: 'center',\n marginBottom: theme.spacing(10),\n color: theme.palette.secondary.main,\n },\n actHealthColor: {\n color: theme.palette.actHealth.main,\n },\n backToLoginWrapper: {\n marginTop: theme.spacing(8),\n textAlign: 'center',\n },\n}));\n","import React, { useMemo } from 'react';\nimport clsx from 'clsx';\nimport { Trans, useTranslation } from 'react-i18next';\nimport { Grid, Typography } from '@material-ui/core';\n\nimport usePage from '$app-web/hooks/use-page';\nimport TextLink from '$app-web/modules/auth/components/text-link';\nimport { getIsACT, URLsManager } from '$app-web/utils';\n\nimport useStyles from './styles';\n\nimport { FontAwesomeIcon } from '$common/fontawesome-pro/react-fontawesome';\n\nconst PageForgotPasswordSuccess = () => {\n const { t } = useTranslation();\n const classes = useStyles();\n\n usePage(t('pdash:activity_password_reset_successful'));\n const isACT = useMemo(() => getIsACT(), []);\n\n return (\n <>\n \n \n \n \n \n \n \n \n \n \n \n {t('pdash:activity_password_request_back_to_login')}\n \n \n \n \n );\n};\n\nPageForgotPasswordSuccess.propTypes = {};\n\nexport default PageForgotPasswordSuccess;\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n submitButtonWrapper: {\n paddingTop: theme.spacing(4),\n width: '70%',\n marginLeft: '15%',\n boxSizing: 'border-box',\n },\n inputAdornment: {\n padding: theme.spacing(0, 1, 0, 1),\n },\n}));\n","import React from 'react';\nimport { Field, Form as FormikForm, Formik } from 'formik';\nimport { useTranslation } from 'react-i18next';\nimport { useParams } from 'react-router-dom';\nimport { object, string } from 'yup';\n\nimport InputTextField from '$app-web/components/input-text-field';\nimport SubmitWithLoading from '$app-web/components/submit-with-loading';\nimport { useResetPassword } from '$app-web/modules/auth/hooks';\n\nimport useStyles from './styles';\n\nimport { FontAwesomeIcon } from '$common/fontawesome-pro/react-fontawesome';\n\nconst initialValues = {\n uid: '',\n token: '',\n newPassword: '',\n confirmPassword: '',\n};\n\nconst validationSchema = object().shape({\n newPassword: string().newPassword(),\n confirmPassword: string().newPasswordConfirmation('newPassword'),\n});\n\nconst Form = () => {\n const { uid, token } = useParams();\n\n const classes = useStyles();\n const { t } = useTranslation();\n\n const { resetPassword, isSignInLoading, isLoading } = useResetPassword();\n\n return (\n resetPassword({ ...values, uid, token }, formikActions)}\n >\n {({ isValid }) => (\n \n }\n />\n }\n />\n
\n \n
\n
\n )}\n \n );\n};\n\nexport default Form;\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n iconWrapper: {\n paddingBottom: theme.spacing(3),\n },\n linkWrapper: {\n marginTop: theme.spacing(4),\n textAlign: 'center',\n },\n resetPasswordFormWrapper: {\n paddingTop: theme.spacing(3),\n width: 275,\n margin: '0 auto',\n [theme.breakpoints.down('xs')]: {\n width: '90%',\n },\n },\n}));\n","import React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { Grid, Typography } from '@material-ui/core';\n\nimport usePage from '$app-web/hooks/use-page';\nimport Logo from '$app-web/modules/auth/components/logo';\nimport TextLink from '$app-web/modules/auth/components/text-link';\nimport { URLsManager } from '$app-web/utils';\n\nimport Form from './components/form';\nimport useStyles from './styles';\n\nconst PageResetPassword = () => {\n const { t } = useTranslation();\n const classes = useStyles();\n\n usePage(t('pdash:activity_password_reset_title'));\n\n return (\n <>\n \n \n \n \n \n {t('pdash:activity_password_reset_instructions')}\n \n \n \n \n \n \n \n {t('pdash:login_button_text')}\n \n \n \n );\n};\n\nPageResetPassword.propTypes = {};\n\nexport default PageResetPassword;\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n hiddenField: {\n display: 'none',\n },\n bottomTextWrapper: {\n paddingTop: theme.spacing(2),\n },\n forgotPasswordWrapper: {\n paddingTop: theme.spacing(1),\n },\n submitButtonWrapper: {\n paddingTop: theme.spacing(3),\n width: '75%',\n margin: '0 auto',\n boxSizing: 'border-box',\n },\n alertWrapper: {\n bottom: 0,\n padding: theme.spacing(3),\n position: 'absolute',\n right: 0,\n zIndex: 1500,\n maxWidth: '545px',\n },\n}));\n","import { useCallback, useEffect, useMemo, useState } from 'react';\nimport clsx from 'clsx';\nimport { Field, Form as FormikForm, useFormikContext } from 'formik';\nimport * as PropTypes from 'prop-types';\nimport { useTranslation } from 'react-i18next';\nimport { Grid, Typography } from '@material-ui/core';\n\nimport { useCountdown } from '@edf-pkg/app-main';\n\nimport SubmitWithLoading from '$app-web/components/submit-with-loading';\nimport { ON_PREMISE_INSTANCES, VERIFICATION_CODE_LENGTH } from '$app-web/constants';\nimport TextLink from '$app-web/modules/auth/components/text-link';\nimport CustomInputTextField from '$app-web/modules/auth/pages/sign-up/components/custom-input-text-field';\nimport LoadingButton from '$app-web/modules/rdash/components/loading-button';\nimport { getEnvironmentName, getIsACT, URLsManager } from '$app-web/utils';\n\nimport useStyles from './styles';\n\nimport { FontAwesomeIcon } from '$common/fontawesome-pro/react-fontawesome';\n\nconst Form = (props) => {\n const { isMFAEnabled, signIn } = props;\n const classes = useStyles();\n const { t } = useTranslation();\n const [timeLeft, startCounter, resetCounter] = useCountdown();\n\n const { values, setFieldValue, isSubmitting, setSubmitting } = useFormikContext();\n\n const isACT = useMemo(() => getIsACT(), []);\n\n const [timerStarted, setTimerStarted] = useState(false);\n\n const isEDENInstance = useMemo(() => {\n return getEnvironmentName() === ON_PREMISE_INSTANCES.EDEN;\n }, []);\n\n const handleOTPSignIn = useCallback(\n (inputValues = {}) => {\n signIn(inputValues, { setSubmitting });\n },\n [setSubmitting, signIn]\n );\n\n useEffect(() => {\n if (!timerStarted && isMFAEnabled) {\n setTimerStarted(true);\n startCounter(60);\n }\n }, [isMFAEnabled, startCounter, timerStarted]);\n\n useEffect(() => {\n if (values.token.length === VERIFICATION_CODE_LENGTH) {\n handleOTPSignIn({ token: values.token });\n }\n }, [handleOTPSignIn, values.token]);\n\n const sendNewCode = useCallback(() => {\n setFieldValue('token', '');\n handleOTPSignIn();\n setTimerStarted(false);\n resetCounter();\n }, [handleOTPSignIn, resetCounter, setFieldValue]);\n\n return (\n <>\n \n }\n showHelperTextOnError={false}\n className={clsx({ [classes.hiddenField]: isMFAEnabled })}\n />\n }\n showHelperTextOnError={false}\n className={clsx({ [classes.hiddenField]: isMFAEnabled })}\n />\n {isMFAEnabled && (\n \n {t('pdash:sign_in_mfa_code_description')}\n \n )}\n \n {!isMFAEnabled && (\n <>\n \n \n {t('pdash:login_forgot_password')}\n \n \n
\n \n
\n \n )}\n
\n {isMFAEnabled && (\n \n {timeLeft > 0 && (\n \n {timeLeft === 1 && t('pdash:validation_send_new_code_counter_single', [1])}\n {timeLeft !== 1 && t('pdash:validation_send_new_code_counter_plural', [timeLeft])}\n \n )}\n {timeLeft === 0 && }\n \n )}\n {!isMFAEnabled && !isEDENInstance && (\n \n \n {`${t('pdash:login_dont_have_account')} `}\n \n {t('pdash:login_signup_text')}\n \n \n \n )}\n\n {isMFAEnabled && (\n \n \n {`${t('pdash:sign_in_no_access_to_phone')} `}\n \n {t('pdash:contact_us')}\n \n \n \n )}\n
\n \n );\n};\n\nForm.propTypes = {\n isMFAEnabled: PropTypes.bool.isRequired,\n};\nexport default Form;\n","import { Formik } from 'formik';\nimport * as PropTypes from 'prop-types';\nimport { object, string } from 'yup';\n\nconst initialValues = {\n username: '',\n password: '',\n token: '',\n};\n\nconst validationSchema = object().shape({\n username: string().email().required('You should enter an email as username.'),\n password: string().min(8, 'Password should be at least 8 characters long.').required('You should enter password.'),\n token: string(),\n});\n\nconst FormWrapper = (props) => {\n const { children, onSubmit } = props;\n\n return (\n \n {children}\n \n );\n};\n\nFormWrapper.propTypes = {\n children: PropTypes.node.isRequired,\n onSubmit: PropTypes.func.isRequired,\n};\n\nexport default FormWrapper;\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n signInFormWrapper: {\n width: 275,\n margin: '0 auto',\n [theme.breakpoints.down('xs')]: {\n width: '90%',\n },\n },\n alertWrapper: {\n bottom: 0,\n padding: theme.spacing(3),\n position: 'absolute',\n right: 0,\n zIndex: 1500,\n maxWidth: '545px',\n },\n}));\n","import { useState } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useHistory } from 'react-router-dom';\nimport { Grid } from '@material-ui/core';\n\nimport { constants as appClientConstants, core as appClientCore, utils as appClientUtils } from '@edf-pkg/app-client';\nimport { useSnackbar } from '@edf-pkg/app-main';\n\nimport useErrorHandler from '$app-web/hooks/use-error-handler';\nimport usePage from '$app-web/hooks/use-page';\nimport Logo from '$app-web/modules/auth/components/logo';\nimport Alert from '$app-web/ui-kit/components/alert';\nimport { URLsManager } from '$app-web/utils';\n\nimport { useAccountLock, useSignIn } from '../../hooks';\nimport Form from './components/form';\nimport FormWrapper from './components/form-wrapper';\nimport useStyles from './styles';\n\nconst PageSignIn = () => {\n const { t } = useTranslation();\n const { showError } = useSnackbar();\n const history = useHistory();\n const { handleError } = useErrorHandler();\n const classes = useStyles();\n\n const { accountLockedState, handleLockAccount, closeAccountLockedAlert, resetAccountLockedState } = useAccountLock();\n const [showPasswordExpiryAlert, setShowPasswordExpiryAlert] = useState(false);\n const [showAutoLogoutAlert, setShowAutoLogoutAlert] = useState(appClientUtils.auth.isAutoLogoutOccurred());\n\n const { signIn, isMFAEnabled } = useSignIn({\n onError: (error) => {\n if (error.innerError.data.errorCode === appClientCore.ERROR_CODES.PASSWORD_IS_EXPIRED) {\n setShowPasswordExpiryAlert(true);\n } else if (error.innerError.data.errorCode === appClientCore.ERROR_CODES.ACCOUNT_IS_LOCKED) {\n const retryAfterInSeconds = error.innerError.headers?.['retry-after'];\n handleLockAccount(retryAfterInSeconds);\n } else if (error.innerError.data.errorCode === appClientCore.ERROR_CODES.UNAUTHORIZED_OR_INACTIVE) {\n showError(t('pdash:login_failed_invalid_username_password'));\n } else {\n resetAccountLockedState();\n handleError(error);\n }\n },\n silentError: true,\n });\n\n usePage(t('pdash:login_button_text'));\n\n const closeAutoLogoutAlert = () => {\n setShowAutoLogoutAlert(false);\n appClientUtils.auth.setAutoLogoutLocalStorageFlag(false);\n };\n\n const closePasswordExpiryAlert = () => {\n setShowPasswordExpiryAlert(false);\n };\n\n const redirectToForgetPasswordPage = () => {\n history.push(URLsManager.to('dashboard:auth:FORGOT_PASSWORD'));\n };\n\n return (\n <>\n \n \n \n \n \n \n \n \n {showAutoLogoutAlert && (\n
\n \n
\n )}\n {showPasswordExpiryAlert && (\n
\n \n
\n )}\n {accountLockedState.showAlert && (\n
\n \n
\n )}\n \n );\n};\n\nexport default PageSignIn;\n","import { useCallback, useState } from 'react';\n\nimport { utils as appClientUtils } from '@edf-pkg/app-client';\n\nexport const useAccountLock = () => {\n const [accountLockedState, setAccountLockedState] = useState({ showAlert: false, minutesLeftUntilUnlock: 0 });\n\n const handleLockAccount = useCallback((remainingTimeInSeconds) => {\n const minutesLeft = remainingTimeInSeconds\n ? Math.ceil(remainingTimeInSeconds / 60)\n : appClientUtils.auth.calculateAccountLockedTimeLeftFromLocalStorage();\n\n setAccountLockedState({ showAlert: true, minutesLeftUntilUnlock: Math.max(minutesLeft, 0) });\n if (minutesLeft <= 0) {\n appClientUtils.auth.removeAccountLockedDataInLocalStorage();\n setAccountLockedState({ showAlert: false, minutesLeftUntilUnlock: 0 });\n }\n }, []);\n\n const closeAccountLockedAlert = useCallback(() => {\n setAccountLockedState((previousState) => ({ ...previousState, showAlert: false }));\n }, []);\n\n const resetAccountLockedState = useCallback(() => {\n appClientUtils.auth.removeAccountLockedDataInLocalStorage();\n setAccountLockedState({ showAlert: false, minutesLeftUntilUnlock: 0 });\n }, []);\n\n return { accountLockedState, handleLockAccount, closeAccountLockedAlert, resetAccountLockedState };\n};\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n TOSWrapper: {\n paddingBottom: theme.spacing(3),\n '& a': {\n color: theme.palette.secondary.main,\n textDecoration: 'none',\n '&:hover': {\n color: theme.palette.secondary.dark,\n textDecoration: 'none',\n },\n },\n },\n actHealthColors: {\n '&$TOSWrapper a': {\n color: theme.palette.actHealth.main,\n '&:hover': {\n color: theme.palette.actHealth.dark,\n },\n },\n },\n submitButtonWrapper: {\n paddingTop: theme.spacing(4),\n width: '70%',\n marginLeft: '15%',\n boxSizing: 'border-box',\n },\n inputAdornment: {\n padding: theme.spacing(0, 1, 0, 1),\n },\n}));\n","import { useMemo } from 'react';\nimport clsx from 'clsx';\nimport { Field, Form as FormikForm, Formik } from 'formik';\nimport { useTranslation } from 'react-i18next';\nimport { useParams } from 'react-router-dom';\nimport { mixed, object, string } from 'yup';\nimport { Container, Typography } from '@material-ui/core';\n\nimport SubmitWithLoading from '$app-web/components/submit-with-loading';\nimport { ROLES } from '$app-web/constants';\nimport { useSignUp } from '$app-web/modules/auth/hooks';\nimport CustomInputTextField from '$app-web/modules/auth/pages/sign-up/components/custom-input-text-field';\nimport { getIsACT, isResearcher } from '$app-web/utils';\n\nimport useStyles from './styles';\n\nimport { FontAwesomeIcon } from '$common/fontawesome-pro/react-fontawesome';\n\nconst initialValues = {\n email: '',\n firstName: '',\n lastName: '',\n password: '',\n confirmPassword: '',\n role: ROLES.PARTICIPANT,\n organization: '',\n};\n\nconst Form = () => {\n const { role } = useParams();\n\n const { signUp, isLoading } = useSignUp();\n\n const classes = useStyles();\n const { t } = useTranslation();\n\n const isACT = useMemo(() => getIsACT(), []);\n const optionalTextForACT = isACT && role === ROLES.PARTICIPANT ? ` (${t('pdash:signup_name_optional')})` : '';\n\n const validationSchema = useMemo(() => {\n let firstName = string().trim().max(30, 'First Name should be at most 30 characters long.');\n\n let lastName = string().trim().max(30, 'Last Name should be at most 30 characters long.');\n\n if (isResearcher(role)) {\n firstName = firstName.required('You should enter your first name.');\n lastName = lastName.required('You should enter your last name.');\n }\n\n return object().shape({\n email: string().email().required('You should enter email.'),\n firstName,\n lastName,\n role: mixed().oneOf([ROLES.PARTICIPANT, ROLES.RESEARCHER]).required(),\n organization: string(),\n password: string().newPassword(),\n confirmPassword: string().newPasswordConfirmation('password'),\n });\n }, [role]);\n\n return (\n \n signUp({ ...values, role }, actions)}\n initialValues={initialValues}\n validationSchema={validationSchema}\n >\n {({ isValid }) => (\n \n }\n showHelperTextOnError={false}\n />\n }\n showHelperTextOnError={false}\n />\n {isResearcher(role) && (\n }\n showHelperTextOnError={false}\n />\n )}\n }\n showHelperTextOnError={false}\n />\n }\n />\n }\n />\n
\n \n
\n \n
\n )}\n \n
\n );\n};\n\nexport default Form;\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n root: {\n width: '100%',\n maxWidth: '100%',\n height: '100%',\n },\n sideBarWrapper: {\n color: theme.palette.background.default,\n lineHeight: theme.typography.pxToRem(28),\n boxSizing: 'border-box',\n padding: theme.spacing(6, 12, 0, 12),\n background: theme.palette.secondary.main,\n width: 450,\n [theme.breakpoints.down('sm')]: {\n padding: theme.spacing(6, 6, 0, 6),\n width: 300,\n },\n [theme.breakpoints.down('xs')]: {\n padding: theme.spacing(4, 6),\n width: '100%',\n },\n },\n actHealthColor: {\n background: theme.palette.actHealth.main,\n },\n youAreWrapper: {\n margin: theme.spacing(8, 0),\n [theme.breakpoints.down('xs')]: {\n margin: theme.spacing(4, 0),\n },\n },\n formWrapper: {\n [theme.breakpoints.down('xs')]: {\n padding: theme.spacing(4, 0),\n },\n },\n}));\n","import React, { useMemo } from 'react';\nimport clsx from 'clsx';\nimport * as PropTypes from 'prop-types';\nimport { useTranslation } from 'react-i18next';\nimport { Grid, Typography, useMediaQuery, useTheme } from '@material-ui/core';\n\nimport Logo from '$app-web/modules/auth/components/logo';\nimport { getIsACT } from '$app-web/utils';\n\nimport useStyles from './styles';\n\nconst FormWrapper = (props) => {\n const { role, children } = props;\n\n const { t } = useTranslation();\n const classes = useStyles();\n const theme = useTheme();\n const isACT = useMemo(() => getIsACT(), []);\n\n const isSizeXsAndBelow = useMediaQuery(theme.breakpoints.down('xs'));\n const isResearcher = role === 'researcher';\n\n const description = useMemo(() => {\n if (isResearcher) {\n return t('pdash:sign_up_researcher_description');\n }\n return isACT ? 'Welcome to the ACT Maternity Experience Survey' : t('pdash:sign_up_participant_description');\n }, [isACT, isResearcher, t]);\n\n return (\n \n \n {children}\n \n \n \n \n \n \n {t('pdash:sign_up_you_are')}\n \n {isResearcher ? t('pdash:signup_role_researcher') : t('pdash:signup_role_participant')}\n \n \n \n {description}\n \n \n \n );\n};\n\nFormWrapper.propTypes = {\n role: PropTypes.oneOf(['participant', 'researcher']).isRequired,\n children: PropTypes.node.isRequired,\n};\n\nexport default FormWrapper;\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n root: {\n width: '100%',\n maxWidth: '100%',\n // TODO: Background has a pattern, but because of usage of app-bar the pattern cannot be applied.\n backgroundColor: theme.palette.secondary.main,\n },\n contentCenterWrapper: {\n margin: 'auto 0',\n },\n roleButtonsWrapper: {\n marginTop: theme.spacing(8),\n },\n roleButton: {\n padding: theme.spacing(5),\n backgroundColor: theme.palette.background.default,\n color: theme.palette.secondary.main,\n borderRadius: theme.shape.borderRadius,\n width: 200,\n height: 200,\n boxSizing: 'border-box',\n margin: theme.spacing(6),\n textDecoration: 'none',\n [theme.breakpoints.down('xs')]: {\n padding: theme.spacing(3),\n width: 160,\n height: 160,\n margin: theme.spacing(3),\n },\n transition: 'color, background-color 0.3s',\n '&:hover, &:focus': {\n color: theme.palette.background.default,\n backgroundColor: theme.palette.logo.blue.dark,\n },\n },\n roleButtonIcon: {\n marginBottom: theme.spacing(2),\n [theme.breakpoints.down('xs')]: {\n marginBottom: theme.spacing(0.5),\n },\n },\n roleButtonText: {\n fontSize: theme.typography.pxToRem(10),\n },\n actHealthColors: {\n '&$root': {\n backgroundColor: theme.palette.actHealth.main,\n },\n '& $roleButton': {\n color: theme.palette.actHealth.main,\n '&:hover, &:focus': {\n color: theme.palette.background.default,\n backgroundColor: theme.palette.actHealth.dark,\n },\n },\n },\n}));\n","import React, { useMemo } from 'react';\nimport clsx from 'clsx';\nimport * as PropTypes from 'prop-types';\nimport { useTranslation } from 'react-i18next';\nimport { Link, Redirect, useParams } from 'react-router-dom';\nimport { Grid, Typography } from '@material-ui/core';\n\nimport usePage from '$app-web/hooks/use-page';\nimport Logo from '$app-web/modules/auth/components/logo';\nimport { getIsACT, URLsManager } from '$app-web/utils';\n\nimport Form from './components/form';\nimport FormWrapper from './components/form-wrapper';\nimport useStyles from './styles';\n\nimport { FontAwesomeIcon } from '$common/fontawesome-pro/react-fontawesome';\n\nconst PageSignUp = (props) => {\n const { hasStudyBasicInfo } = props;\n const { role } = useParams();\n\n const { t } = useTranslation();\n const classes = useStyles();\n\n usePage(t('pdash:login_signup_text'));\n\n const isACT = useMemo(() => getIsACT(), []);\n\n if (role !== 'participant' && hasStudyBasicInfo) {\n return ;\n }\n\n if (role) {\n if (role === 'participant' || role === 'researcher') {\n return (\n \n \n \n );\n }\n return ;\n }\n\n return (\n \n {/*\n This method used to fix justify=center issue.\n https://stackoverflow.com/a/33455342\n */}\n
\n \n \n \n \n \n \n {t('pdash:sign_up_you_are')}\n \n {t('pdash:signup_role_researcher')}\n \n \n \n \n {t('pdash:sign_up_you_are')}\n \n {t('pdash:signup_role_participant')}\n \n \n \n
\n \n );\n};\n\nPageSignUp.defaultProps = {\n hasStudyBasicInfo: false,\n};\n\nPageSignUp.propTypes = {\n hasStudyBasicInfo: PropTypes.bool,\n};\n\nexport default PageSignUp;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Grid, Typography } from '@material-ui/core';\n\nimport ButtonContained from '$app-web/components/button-contained';\n\nconst ButtonGroup = (props) => {\n const { direction, spacing, buttons } = props;\n return (\n \n {buttons.map(({ key, label, wrapperClassName, ...buttonProps }) => (\n \n {label && (\n \n {label}\n \n )}\n \n \n ))}\n \n );\n};\n\nButtonGroup.propTypes = {\n direction: PropTypes.string.isRequired,\n spacing: PropTypes.number.isRequired,\n buttons: PropTypes.arrayOf(PropTypes.object).isRequired,\n};\nexport default ButtonGroup;\n","import React from 'react';\nimport * as PropTypes from 'prop-types';\nimport { Trans, useTranslation } from 'react-i18next';\nimport { Typography } from '@material-ui/core';\n\nconst StudyInfo = (props) => {\n const { studyBasicInfo } = props;\n const { t } = useTranslation();\n\n return (\n <>\n \n \n \n \n {studyBasicInfo.name}\n \n
\n \n \n \n \n {studyBasicInfo.orgName}\n \n
\n \n \n \n \n );\n};\n\nStudyInfo.defaultProps = {\n studyBasicInfo: {},\n};\n\nStudyInfo.propTypes = {\n studyBasicInfo: PropTypes.shape({\n name: PropTypes.string,\n orgName: PropTypes.string,\n }),\n};\n\nexport default StudyInfo;\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n button: {\n width: 145,\n },\n buttonWithStudyInfo: {\n width: 175,\n [theme.breakpoints.down('xs')]: {\n width: 125,\n },\n },\n buttonWrapper: {\n textAlign: 'center',\n },\n buttonGroupWrapper: {\n margin: '0 auto',\n marginTop: theme.spacing(5.5),\n },\n}));\n","import { useEffect, useMemo } from 'react';\nimport clsx from 'clsx';\nimport * as PropTypes from 'prop-types';\nimport { useTranslation } from 'react-i18next';\nimport { Link } from 'react-router-dom';\nimport { Grid, Typography } from '@material-ui/core';\n\nimport { auth as appClientAuth } from '@edf-pkg/app-client';\n\nimport { ON_PREMISE_INSTANCES } from '$app-web/constants';\nimport usePage from '$app-web/hooks/use-page';\nimport ButtonGroup from '$app-web/modules/auth/components/button-group';\nimport Logo from '$app-web/modules/auth/components/logo';\nimport { getEnvironmentName, getIsACT, URLsManager } from '$app-web/utils';\n\nimport StudyInfo from './components/study-info';\nimport useStyles from './styles';\n\nconst PageWelcome = (props) => {\n const { studyBasicInfo, hasStudyBasicInfo } = props;\n const classes = useStyles();\n const resetState = appClientAuth.useAuthenticationStore((store) => store.resetState);\n\n const { t } = useTranslation();\n\n const isEDENInstance = useMemo(() => {\n return getEnvironmentName() === ON_PREMISE_INSTANCES.EDEN;\n }, []);\n\n usePage(t('pdash:web_app_introduction_welcome_title', [process.env.REACT_APP_PAGE_TITLE_BASE]));\n const isACT = useMemo(() => getIsACT(), []);\n\n const sharedButtonProps = {\n component: Link,\n className: clsx(classes.button, {\n [classes.buttonWithStudyInfo]: hasStudyBasicInfo,\n containedACTColor: isACT,\n }),\n wrapperClassName: classes.buttonWrapper,\n };\n\n useEffect(() => {\n resetState();\n }, [resetState]);\n\n return (\n <>\n \n \n \n \n \n {t('pdash:web_app_introduction_welcome_title', [process.env.REACT_APP_PAGE_TITLE_BASE])}\n \n \n {hasStudyBasicInfo && (\n \n \n \n )}\n \n \n \n \n );\n};\n\nPageWelcome.defaultProps = {\n studyBasicInfo: {},\n hasStudyBasicInfo: false,\n};\n\nPageWelcome.propTypes = {\n studyBasicInfo: PropTypes.shape({\n name: PropTypes.string,\n orgName: PropTypes.string,\n }),\n hasStudyBasicInfo: PropTypes.bool,\n};\n\nexport default PageWelcome;\n","import { useCallback, useLayoutEffect, useMemo, useState } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { Redirect, Route, Switch } from 'react-router-dom';\n\nimport { languages, store as appI18nStore } from '@edf-pkg/app-i18n';\n\nimport Loading from '$app-web/components/loading';\nimport { ON_PREMISE_INSTANCES } from '$app-web/constants';\nimport { useReadStudyBasicInfo } from '$app-web/hooks/use-study';\nimport LayoutFullWithAppBar from '$app-web/layouts/full-with-app-bar';\nimport AppBar from '$app-web/modules/auth/components/app-bar';\nimport AuthContentWrapper from '$app-web/modules/auth/components/auth-content-wrapper';\nimport AuthLayoutWrapper from '$app-web/modules/auth/components/auth-layout-wrapper';\nimport PageForgotPassword from '$app-web/modules/auth/pages/forgot-password';\nimport PageForgotPasswordSuccess from '$app-web/modules/auth/pages/forgot-password-success';\nimport PageResetPassword from '$app-web/modules/auth/pages/reset-password';\nimport PageSignIn from '$app-web/modules/auth/pages/sign-in';\nimport PageSignUp from '$app-web/modules/auth/pages/sign-up';\nimport PageWelcome from '$app-web/modules/auth/pages/welcome';\nimport { AUTH_ACTIONS } from '$app-web/spaces/dashboard/constants';\nimport * as dashboardStore from '$app-web/spaces/dashboard/store';\nimport { getEnvironmentName, URLsManager } from '$app-web/utils';\n\nconst ModuleAuth = () => {\n const dispatch = useDispatch();\n\n const [ready, setReady] = useState(false);\n\n const hasAuthAction = useSelector(dashboardStore.dashboardDuck.duckSelectors.hasAuthActionSelector);\n const authAction = useSelector(dashboardStore.dashboardDuck.duckSelectors.authActionSelector);\n\n const i18nNamespace = useSelector(appI18nStore.i18nDuck.duckSelectors.namespaceSelector);\n const i18nLanguage = useSelector(appI18nStore.i18nDuck.duckSelectors.languageSelector);\n\n const changeNamespace = useCallback(\n (namespace) => dispatch(appI18nStore.i18nDuck.duckActionCreators.changeNamespace(namespace)),\n [dispatch]\n );\n\n const {\n readStudyBasicInfo,\n isLoading: isReadStudyBasicInfoLoading,\n isError: isReadStudyBasicInfoError,\n data: studyBasicInfo,\n hasStudyBasicInfo,\n } = useReadStudyBasicInfo(authAction?.params?.studyId, () => {\n if (!ready) {\n setReady(true);\n }\n });\n\n const changeLanguage = useCallback(\n (languageCode) => dispatch(appI18nStore.i18nDuck.duckActionCreators.changeLanguage(languageCode)),\n [dispatch]\n );\n\n const isEDENInstance = useMemo(() => {\n return getEnvironmentName() === ON_PREMISE_INSTANCES.EDEN;\n }, []);\n\n useLayoutEffect(() => {\n // Auth strings are in pdash namespace. So change it if not current namespace.\n if (i18nNamespace !== 'pdash') {\n changeNamespace('pdash');\n }\n // If user logged out from PDash with a language other than en-US change the language.\n if (i18nLanguage !== languages.localeToLanguage.fr && isEDENInstance) {\n changeLanguage(languages.localeToLanguage.fr);\n } else if (i18nLanguage !== languages.localeToLanguage.en && !isEDENInstance) {\n changeLanguage(languages.localeToLanguage.en);\n }\n }, [changeLanguage, changeNamespace, i18nLanguage, i18nNamespace, isEDENInstance]);\n\n useLayoutEffect(() => {\n if (!hasAuthAction || authAction.type !== AUTH_ACTIONS.JOIN_STUDY) {\n setReady(true);\n } else if (authAction.type === AUTH_ACTIONS.JOIN_STUDY) {\n readStudyBasicInfo();\n }\n }, [authAction.params, authAction.type, hasAuthAction, readStudyBasicInfo]);\n\n if (!ready) {\n return (\n \n );\n }\n\n return (\n }\n content={\n \n \n (\n \n )}\n />\n \n }\n />\n \n \n \n } />\n \n \n }\n />\n );\n};\n\nModuleAuth.propTypes = {};\n\nexport default ModuleAuth;\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n root: {\n fontSize: theme.typography.pxToRem(16),\n fontWeight: 600,\n },\n}));\n","import React from 'react';\nimport clsx from 'clsx';\nimport * as PropTypes from 'prop-types';\nimport { Button } from '@material-ui/core';\n\nimport useStyles from './styles';\n\nconst DialogButton = ({ className, title, handleClick, color, ...restProps }) => {\n const classes = useStyles();\n return (\n \n );\n};\n\nDialogButton.defaultProps = {\n color: 'secondary',\n className: undefined,\n handleClick: undefined,\n};\n\nDialogButton.propTypes = {\n className: PropTypes.string,\n color: PropTypes.oneOf(['primary', 'secondary']),\n title: PropTypes.node.isRequired,\n handleClick: PropTypes.func,\n};\n\nexport default DialogButton;\n","import { makeStyles } from '@material-ui/styles';\n\nexport default makeStyles((theme) => ({\n root: {\n alignItems: 'baseline',\n },\n buttonTitle: {\n margin: theme.spacing(0, 0.2),\n },\n}));\n","import React from 'react';\nimport clsx from 'clsx';\nimport { motion } from 'framer-motion';\nimport * as PropTypes from 'prop-types';\n\nimport DialogButton from '$app-web/modules/rdash/components/dialog-button';\nimport LoadingDots from '$app-web/modules/rdash/components/loading-dots';\n\nimport useStyles from './styles';\n\nconst LoadingButton = (props) => {\n const { className, buttonComponent: Button, loading, loadingTitle, title, ...restProps } = props;\n\n const classes = useStyles(props);\n\n const titleElement = (\n <>\n {loading ? (\n \n {loadingTitle}\n \n ) : (\n {title}\n )}\n {loading && }\n \n );\n // it's better to unify `title` prop across the project, somewhere it's `title` or `children`\n return