{"version":3,"file":"static/chunks/pages/user/settings-9842f1ad5b8c14a3.js","sources":["webpack://_N_E/./src/common/components/contentLoaders/ListElement.jsx","webpack://_N_E/./src/LegacyApp/client/components/list/list.jsx","webpack://_N_E/./src/LegacyApp/client/components/settingsLayout/SettingsLayout.context.ts","webpack://_N_E/./src/LegacyApp/client/components/settingsLayout/SettingsLayout.desktop.tsx","webpack://_N_E/./src/LegacyApp/client/components/settingsLayout/SettingsLayout.mobile.tsx","webpack://_N_E/./src/LegacyApp/client/components/settingsLayout/settingsLayout.tsx","webpack://_N_E/./src/LegacyApp/client/components/slideDownBox/slideDownBox.style.ts","webpack://_N_E/./src/LegacyApp/client/components/slideDownBox/slideDownBox.tsx","webpack://_N_E/./src/common/components/contentLoaders/TabElement.jsx","webpack://_N_E/./src/LegacyApp/client/components/tabs/tabs.jsx","webpack://_N_E/./src/LegacyApp/client/components/tabs/tabs.style.js","webpack://_N_E/./src/LegacyApp/client/modules/style/components/information.styled.ts","webpack://_N_E/./src/common/components/contentLoaders/LoaderListWrapper.jsx","webpack://_N_E/./src/common/methods/pageScrollTo.ts","webpack://_N_E/./src/LegacyApp/client/components/settings/twoFa/twoFa.jsx","webpack://_N_E/./src/LegacyApp/client/components/settings/twoFa/twoFa.container.js","webpack://_N_E/./src/LegacyApp/client/components/settings/api/api.jsx","webpack://_N_E/./src/LegacyApp/client/components/settings/api/api.container.js","webpack://_N_E/./src/LegacyApp/client/components/settings/ignoredUsers/ignoredUsers.jsx","webpack://_N_E/./src/LegacyApp/client/components/settings/ignoredUsers/ignoredUsers.container.js","webpack://_N_E/./src/LegacyApp/client/components/preferencesForm/preferencesForm.jsx","webpack://_N_E/./src/LegacyApp/client/components/preferencesForm/preferencesForm.container.js","webpack://_N_E/./src/LegacyApp/client/pages/settings.page/Settings.global.styled.ts","webpack://_N_E/./src/LegacyApp/client/pages/settings.page/settings.page.jsx","webpack://_N_E/./src/LegacyApp/client/pages/settings.page/settings.container.js","webpack://_N_E/./src/pages/user/settings.tsx","webpack://_N_E/?f1ed"],"sourceRoot":"","sourcesContent":["import ContentLoader from 'react-content-loader';\nimport { any } from 'prop-types';\nimport { config } from './loaders.config';\n\nexport const ListElementLoader = (props) => {\n\tconst height = 30;\n\tconst width = 200;\n\tconst barHeight = height / 3;\n\tconst barWidth = width - 28;\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nListElementLoader.propTypes = {\n\tid: any,\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport { enhanceComponent } from '../../wrappers/enhanceComponent';\nimport { ListElementLoader } from '../../../../common/components/contentLoaders/ListElement';\nimport { LoaderListWrapper } from '../../../../common/components/contentLoaders/LoaderListWrapper';\n\nclass List extends React.PureComponent {\n\tstatic propTypes = {\n\t\tarray: PropTypes.array,\n\t\tisBox: PropTypes.any,\n\t\tlistStyle: PropTypes.any,\n\t\tclassName: PropTypes.string,\n\t\telClassName: PropTypes.string,\n\t\tpreloadLength: PropTypes.number,\n\t\tpreloadElement: PropTypes.node,\n\t\tisLoaded: PropTypes.bool,\n\t\tnoDataElement: PropTypes.any,\n\t};\n\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tlistStyle: true,\n\t\t};\n\t}\n\n\tcomponentDidMount() {\n\t\tif (this.props.listStyle !== undefined) {\n\t\t\tthis.setState({\n\t\t\t\tlistStyle: this.props.listStyle,\n\t\t\t});\n\t\t}\n\t}\n\n\trender() {\n\t\tconst list = (\n\t\t\t\n\t\t\t\t (\n\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t{this.props.preloadElement || }\n\t\t\t\t\t\t
  • \n\t\t\t\t\t)}\n\t\t\t\t\tnoDataElement={this.props.noDataElement}\n\t\t\t\t\tpreloadLength={this.props.preloadLength}\n\t\t\t\t\tlistElementCallback={(el, index) => (\n\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t{el}\n\t\t\t\t\t\t
  • \n\t\t\t\t\t)}\n\t\t\t\t/>\n\t\t\t\n\t\t);\n\n\t\treturn this.props.isBox ?
    {list}
    : list;\n\t}\n}\n\nList = enhanceComponent({\n\tList,\n});\n\nexport { List };\n","import { createContext } from 'react';\nimport { SettingsLayoutSection } from './settingsLayout';\n\nexport type SettingsLayoutContextGetSectionContent = (\n\tid: string,\n\tpanelName: () => string,\n\tisNarrow?: boolean,\n) => JSX.Element;\n\nexport const SettingsLayoutContext = createContext<{\n\tsections: SettingsLayoutSection[];\n\tactiveId: string;\n\tactiveTabData: SettingsLayoutSection;\n\thandleChangeSection: (section: SettingsLayoutSection) => void;\n\tgetSectionContent: SettingsLayoutContextGetSectionContent;\n}>({\n\tsections: [],\n\tactiveId: '',\n\tactiveTabData: null,\n\thandleChangeSection: null,\n\tgetSectionContent: null,\n});\n","import { FC, useContext } from 'react';\nimport { useUserIsLogged } from '@common/selectors/user.selectors';\nimport { trans } from '../../modules/translation/translate';\nimport { NotificationIcon } from '../notificationIcon/NotificationIcon';\nimport { SettingsLayoutContext } from './SettingsLayout.context';\n\nexport const SettingsLayoutDesktop: FC = () => {\n\tconst {\n\t\tsections,\n\t\tactiveId,\n\t\tactiveTabData,\n\t\tgetSectionContent,\n\t\thandleChangeSection,\n\t} = useContext(SettingsLayoutContext);\n\tconst isLogged = useUserIsLogged();\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t{sections.map((el) => {\n\t\t\t\t\tif ((el.isActive && !el.isActive()) || (!isLogged && el.isLogged)) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\tconst className =\n\t\t\t\t\t\tactiveId === el.id ? 'active settings__button' : 'settings__button';\n\t\t\t\t\treturn (\n\t\t\t\t\t\t handleChangeSection(el)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{el.name && <>{trans({ label: el.name() })} }\n\t\t\t\t\t\t\t\t{el.nameComponent && <>{el.nameComponent()} }\n\t\t\t\t\t\t\t\t{!!el.notification && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t
    \n\t\t\t{activeId &&\n\t\t\t\tgetSectionContent(\n\t\t\t\t\tactiveId,\n\t\t\t\t\tactiveTabData?.panelTitle,\n\t\t\t\t\tactiveTabData?.isNarrow,\n\t\t\t\t)}\n\t\t
    \n\t);\n};\n","import { FC, useCallback, useContext } from 'react';\nimport { useUserIsLogged } from '@common/selectors/user.selectors';\nimport { SlideDownBox } from '../slideDownBox/slideDownBox';\nimport { trans } from '../../modules/translation/translate';\nimport { NotificationIcon } from '../notificationIcon/NotificationIcon';\nimport { SettingsLayoutContext } from './SettingsLayout.context';\nimport { SettingsLayoutSection } from './settingsLayout';\n\nconst SlideDownBoxElement: FC = (section) => {\n\tconst {\n\t\tid,\n\t\tname,\n\t\tnameComponent,\n\t\tnotification,\n\t\tisActive,\n\t\tisLogged,\n\t\tisNarrow,\n\t} = section;\n\n\tconst { activeId, getSectionContent, handleChangeSection } = useContext(\n\t\tSettingsLayoutContext,\n\t);\n\n\tconst isLogged_ = useUserIsLogged();\n\n\tconst content = useCallback(\n\t\t() => getSectionContent(id, undefined, isNarrow),\n\t\t[getSectionContent, id, isNarrow],\n\t);\n\n\tconst callback = useCallback(\n\t\t(isVisible) => {\n\t\t\tif (isVisible) {\n\t\t\t\thandleChangeSection(section);\n\t\t\t}\n\t\t},\n\t\t[section, handleChangeSection],\n\t);\n\n\treturn (isActive && !isActive()) || (!isLogged_ && isLogged) ? null : (\n\t\t (\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{name && <>{trans({ label: name() })} }\n\t\t\t\t\t\t{nameComponent && <>{nameComponent()} }\n\t\t\t\t\t\t{!!notification && }\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t)}\n\t\t\tContent={content}\n\t\t\tcallback={callback}\n\t\t\tisContentInitVisible={id === activeId}\n\t\t\tisContentVisible={id === activeId}\n\t\t/>\n\t);\n};\n\nexport const SettingsLayoutMobile: FC = () => {\n\tconst { sections } = useContext(SettingsLayoutContext);\n\treturn <>{sections.map(SlideDownBoxElement)};\n};\n","import { FC, useCallback, useEffect, useState } from 'react';\nimport classnames from 'classnames';\nimport { useUserIsLogged } from '@common/selectors/user.selectors';\nimport {\n\tuseAppInitialized,\n\tuseAppMobile,\n} from '@common/selectors/app.selectors';\nimport { useRouterQueryTab } from '@common/selectors/router.selectors';\nimport { openModal } from '@modules/modals/store/modal.actions';\nimport { ModalIdType } from '@common/constants/modal/ids.modal.constants';\nimport { useAppDispatch } from '../../../hooks/store/useAppDispatch';\nimport { updateUrlQuery } from '../../store/app/app.actions';\nimport { trans } from '../../modules/translation/translate';\nimport { SettingsLayoutDesktop } from './SettingsLayout.desktop';\nimport { SettingsLayoutMobile } from './SettingsLayout.mobile';\nimport { SettingsLayoutContext } from './SettingsLayout.context';\n\nexport interface SettingsLayoutSection {\n\tid: string;\n\tname?: () => string;\n\tnameComponent?: any;\n\tnotification?: string;\n\tisActive?: () => boolean;\n\tisLogged?: boolean;\n\tisNarrow?: boolean;\n\tonClick?: ({ el }: { el: SettingsLayoutSection }) => void;\n\tmodal?: boolean;\n\tpanelTitle?: () => string;\n}\n\nexport interface SettingsLayoutProps {\n\tsections: SettingsLayoutSection[];\n\tdefaultTab?: string;\n\tgetSectionContent: any;\n}\n\nexport const SettingsLayout: FC = ({\n\tsections,\n\tdefaultTab,\n\tgetSectionContent,\n}) => {\n\tconst [activeId, setActiveId] = useState('');\n\tconst [activeTabData, setActiveTabData] =\n\t\tuseState(null);\n\n\tconst dispatch = useAppDispatch();\n\n\tconst isLogged = useUserIsLogged();\n\tconst isMobile = useAppMobile();\n\tconst routerQueryTab = useRouterQueryTab();\n\tconst isInitialized = useAppInitialized();\n\n\tconst checkActiveTab_ = useCallback(() => {\n\t\tif (!sections.some((section) => section.id === routerQueryTab)) {\n\t\t\tdispatch(updateUrlQuery({ tab: defaultTab || sections?.[0]?.id }));\n\t\t}\n\t}, [defaultTab, dispatch, routerQueryTab, sections]);\n\n\tconst getSectionContent_ = useCallback(\n\t\t(id: string, panelName: () => string, isNarrow?: boolean) => {\n\t\t\tconst panelName_ = panelName ? (\n\t\t\t\t

    \n\t\t\t\t\t{trans({ label: panelName() })}\n\t\t\t\t

    \n\t\t\t) : null;\n\t\t\tconst content = getSectionContent(id);\n\t\t\tif (!content) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\treturn (\n\t\t\t\t\n\t\t\t\t\t{panelName_}\n\t\t\t\t\t{content}\n\t\t\t\t\n\t\t\t);\n\t\t},\n\t\t[getSectionContent],\n\t);\n\n\tconst handleChangeSection_ = useCallback(\n\t\t(section: SettingsLayoutSection) => {\n\t\t\tif (section.onClick) {\n\t\t\t\treturn section.onClick({ el: section });\n\t\t\t}\n\t\t\tif (section.modal) {\n\t\t\t\tdispatch(openModal(section.id as ModalIdType, 'SettingsLayout'));\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tdispatch(updateUrlQuery({ tab: section.id }));\n\t\t\treturn;\n\t\t},\n\t\t[dispatch],\n\t);\n\n\tconst getSectionData_ = useCallback(\n\t\t(id) => {\n\t\t\t// console.log('settingsLayout - getSectionData_', { sections, id });\n\t\t\treturn sections.find((section) => section.id === id);\n\t\t},\n\t\t[sections],\n\t);\n\n\tconst getSections_ = useCallback(() => {\n\t\tlet activeId_ = '';\n\t\tlet activeTabData_: SettingsLayoutSection = null;\n\t\tif (isInitialized) {\n\t\t\tactiveTabData_ = getSectionData_(routerQueryTab);\n\t\t\tactiveId_ = activeTabData_?.id;\n\t\t\tif (!activeTabData_ || (activeTabData_?.isLogged && !isLogged)) {\n\t\t\t\tactiveTabData_ = getSectionData_(defaultTab || sections?.[0]?.id);\n\t\t\t\tactiveId_ = activeTabData_?.id;\n\t\t\t\tupdateUrlQuery({ tab: activeId_ });\n\t\t\t}\n\t\t\t// console.log('settingsLayout - getSections', {\n\t\t\t// \tactiveTabData_,\n\t\t\t// \tactiveTabData,\n\t\t\t// \tactiveId_,\n\t\t\t// \tdefaultTab,\n\t\t\t// \trouterQueryTab,\n\t\t\t// \tsections,\n\t\t\t// });\n\t\t}\n\t\treturn {\n\t\t\tactiveId: activeId_,\n\t\t\tactiveTabData: activeTabData_,\n\t\t};\n\t}, [\n\t\tdefaultTab,\n\t\tgetSectionData_,\n\t\tisInitialized,\n\t\tisLogged,\n\t\trouterQueryTab,\n\t\tsections,\n\t]);\n\n\tuseEffect(() => {\n\t\tcheckActiveTab_();\n\t}, [checkActiveTab_, dispatch, isInitialized]);\n\n\tuseEffect(() => {\n\t\tconst { activeId: activeId_, activeTabData: activeTabData_ } =\n\t\t\tgetSections_();\n\t\tif (activeId !== activeId_) {\n\t\t\tsetActiveId(activeId_);\n\t\t\tsetActiveTabData(activeTabData_);\n\t\t}\n\t}, [activeId, getSections_]);\n\n\t// console.log('SettingsLayout', { sections, activeId, activeTabData });\n\n\treturn (\n\t\t\n\t\t\t{isMobile ? : }\n\t\t\n\t);\n};\n","import styled, { css } from 'styled-components';\nimport classnames from 'classnames';\nimport { boxNoHeight } from '../../modules/style/defaults';\nimport { dashboard } from '../../modules/style/mixins/dashboard';\nimport { calcStyle } from '../../modules/style/methods/calcStyle';\n\nexport const SlideDownBoxStyle = styled.div.attrs((props) => ({\n\tclassName: classnames(props.className, 'slide-down__box'),\n}))<{\n\ttype?: string;\n\tnoDashboard?: boolean;\n}>`\n\t${boxNoHeight};\n\t${(props) =>\n\t\tprops.noDashboard\n\t\t\t? ''\n\t\t\t: dashboard(\n\t\t\t\t\t(padding) => css`\n\t\t\t\t\t\tmargin: 0 -${padding};\n\t\t\t\t\t\twidth: calc(100% + ${calcStyle({ a: padding, b: 2, mode: '*' })});\n\t\t\t\t\t`,\n\t\t\t )}\n\n\t&:last-of-type {\n\t\tmargin-bottom: -7px;\n\t}\n`;\n\nexport const SlideDownTitleStyle = styled.div.attrs((props) => ({\n\tclassName: classnames(props.className, 'slide-down__title'),\n}))<{\n\tisColor?: boolean;\n\tname: string;\n}>`\n\t${boxNoHeight};\n\tcursor: pointer;\n\tmargin-bottom: 0;\n\tmargin-top: 15px;\n\n\t&.icon-wrapper {\n\t\tpadding-right: 30px !important;\n\n\t\t[class*='icon'] {\n\t\t\tright: 13px;\n\t\t}\n\t}\n\n\t${(props) =>\n\t\tprops.isColor\n\t\t\t? `\n border-radius: ${props.theme.layout.borderRadius};\n background-color: ${props.theme.colors.inputButton};\n padding: 10px;\n `\n\t\t\t: ''}\n`;\n\nexport const SlideDownContentStyle = styled.div.attrs((props) => ({\n\tclassName: classnames(props.className, 'slide-down__content'),\n}))<{\n\tisActive: boolean;\n}>`\n\t${boxNoHeight};\n\tmax-height: ${(props) => (props.isActive ? '300vh' : '0')};\n\ttransition: ${(props) => (props.isActive ? '0.2s ease-in' : '0')};\n\toverflow: ${(props) => (props.isActive ? 'unset' : 'hidden')};\n\theight: auto;\n`;\n","import { FC, useCallback, useEffect, useRef, useState } from 'react';\nimport classnames from 'classnames';\nimport { useAppMobile } from '@common/selectors/app.selectors';\nimport { pageScrollTo } from '@common/methods/pageScrollTo';\nimport { isTrueOrZero } from '@common/methods/isTrueOrZero';\nimport { usePrevious } from '../../../hooks/render/usePrevious';\nimport {\n\tSlideDownBoxStyle,\n\tSlideDownContentStyle,\n\tSlideDownTitleStyle,\n} from './slideDownBox.style';\n\nexport const SlideDownBox: FC<{\n\tTitle?: FC<{ active: boolean }>;\n\tContent?: FC;\n\tisColor?: boolean;\n\ttitleClasses?: string;\n\tcontentClasses?: string;\n\tisContentInitVisible?: boolean;\n\tisContentVisible?: boolean;\n\tcallback?: (isVisible: boolean) => void;\n\tnoScrollTo?: boolean;\n\tboxClasses?: string;\n\tnoDashboard?: boolean;\n\tname: string;\n}> = ({\n\tTitle,\n\tContent,\n\tisColor,\n\ttitleClasses,\n\tcontentClasses,\n\tisContentInitVisible,\n\tisContentVisible,\n\tcallback,\n\tboxClasses,\n\tnoDashboard,\n\tname,\n\tnoScrollTo,\n}) => {\n\tconst [_isVisible, setIsVisible] = useState(\n\t\tisTrueOrZero(isContentInitVisible) ? isContentInitVisible : false,\n\t);\n\tconst ref = useRef(null);\n\tconst timeoutRef = useRef(null);\n\tconst prevIsContentVisible = usePrevious(isContentVisible);\n\tconst isMobile = useAppMobile();\n\n\tconst handleClickTitle = useCallback(\n\t\t(event?: MouseEvent, isVisible?: boolean) => {\n\t\t\tif (isVisible === undefined) {\n\t\t\t\tisVisible = !_isVisible;\n\t\t\t}\n\t\t\tif (callback) {\n\t\t\t\tcallback(isVisible);\n\t\t\t}\n\t\t\tsetIsVisible(isVisible);\n\t\t\tif (isVisible && isMobile && ref?.current && !noScrollTo) {\n\t\t\t\tif (timeoutRef.current) {\n\t\t\t\t\tclearTimeout(timeoutRef.current);\n\t\t\t\t}\n\t\t\t\ttimeoutRef.current = setTimeout(() => {\n\t\t\t\t\tpageScrollTo({ top: ref?.current?.offsetTop - 50 });\n\t\t\t\t}, 300);\n\t\t\t}\n\t\t},\n\t\t[_isVisible, callback, isMobile, noScrollTo],\n\t);\n\n\tuseEffect(() => {\n\t\tif (isContentVisible !== prevIsContentVisible) {\n\t\t\thandleClickTitle(undefined, isContentVisible);\n\t\t}\n\t}, [isContentVisible, handleClickTitle, prevIsContentVisible]);\n\n\treturn (\n\t\t\n\t\t\t handleClickTitle()}\n\t\t\t\tisColor={isColor}\n\t\t\t\tclassName={classnames('icon-wrapper', titleClasses)}\n\t\t\t>\n\t\t\t\t{Title && }\n\t\t\t\t{Content && (\n\t\t\t\t\t<i\n\t\t\t\t\t\tclassName={classnames('icon__arrow-down', {\n\t\t\t\t\t\t\topened: _isVisible,\n\t\t\t\t\t\t})}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</SlideDownTitleStyle>\n\t\t\t{Content && (\n\t\t\t\t<SlideDownContentStyle isActive={_isVisible} className={contentClasses}>\n\t\t\t\t\t{(_isVisible || !process.browser) && <Content />}\n\t\t\t\t</SlideDownContentStyle>\n\t\t\t)}\n\t\t</SlideDownBoxStyle>\n\t);\n};\n","import ContentLoader from 'react-content-loader';\nimport { any } from 'prop-types';\nimport { config } from './loaders.config';\n\nexport const TabElementLoader = (props) => {\n\tconst height = 20;\n\tconst width = 80;\n\treturn (\n\t\t<ContentLoader\n\t\t\twidth={width}\n\t\t\theight={height}\n\t\t\tviewBox={`0 0 ${width} ${height}`}\n\t\t\tuniqueKey={`${props.id || 0}-TabElementLoader`}\n\t\t\t{...config}\n\t\t\t{...props}\n\t\t>\n\t\t\t<rect x=\"0\" y=\"10\" rx=\"3\" ry=\"3\" width={width} height=\"6\" />\n\t\t</ContentLoader>\n\t);\n};\n\nTabElementLoader.propTypes = {\n\tid: any,\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport { enhanceComponent } from '../../wrappers/enhanceComponent';\nimport { Button } from '../button';\nimport transactionService from '../../../../modules/transactions/transactionsService';\nimport { TabElementLoader } from '../../../../common/components/contentLoaders/TabElement';\nimport { LoaderListWrapper } from '../../../../common/components/contentLoaders/LoaderListWrapper';\nimport { trans } from '../../modules/translation/translate';\nimport { AwesomeIcon } from '../../../../common/components/icons/AwesomeIcon';\nimport { isFunction } from '../../../../common/methods/isFunction';\nimport {\n\tTabsContentStyle,\n\tTabsStyle,\n\tTabsTabStyle,\n\tTabsWrapperStyle,\n} from './tabs.style';\n\nclass Tabs extends React.PureComponent {\n\tstatic propTypes = {\n\t\tlist: PropTypes.array,\n\t\tcallback: PropTypes.func,\n\t\ttabClassNames: PropTypes.string,\n\t\tsmallText: PropTypes.bool,\n\t\tnoWrap: PropTypes.bool,\n\t\tlight: PropTypes.bool,\n\t\tscrollHorizontal: PropTypes.bool,\n\t\tfullWidth: PropTypes.bool,\n\t\tactiveId: PropTypes.string,\n\t\tactive: PropTypes.object,\n\t\tchildren: PropTypes.any,\n\t\tidKey: PropTypes.string,\n\t\talignLeft: PropTypes.bool,\n\t\tcallbackOnInit: PropTypes.bool,\n\t\tbuttonsStyle: PropTypes.bool,\n\t\tpreloadElement: PropTypes.node,\n\t\tpreloadLength: PropTypes.number,\n\t\tloaded: PropTypes.bool,\n\t\tnamespace: PropTypes.string,\n\t};\n\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tconst active = this.getActive(props);\n\t\tif (props.callbackOnInit && props.callback && active) {\n\t\t\tthis.props.callback(active);\n\t\t}\n\t\tthis.state = {\n\t\t\tactive,\n\t\t};\n\t}\n\n\tcomponentDidUpdate(prevProps) {\n\t\tconst isActiveIdChanged =\n\t\t\tthis.props.activeId &&\n\t\t\tprevProps.activeId &&\n\t\t\tprevProps.activeId !== this.props.activeId &&\n\t\t\tthis.state.active !== this.props.activeId;\n\t\tconst isActiveChanged =\n\t\t\tthis.props.active &&\n\t\t\tprevProps.active &&\n\t\t\tthis.getId(prevProps.active) !== this.getId(this.props.active) &&\n\t\t\tthis.getId(this.state.active) !== this.getId(this.props.active);\n\t\tconst isTabsChanged = transactionService.isListDifferent(\n\t\t\tthis.props.list,\n\t\t\tprevProps.list,\n\t\t\t[this.getIdKey()],\n\t\t);\n\n\t\tif (isActiveIdChanged || isActiveChanged || isTabsChanged) {\n\t\t\tconst active = this.getActive();\n\t\t\tif (\n\t\t\t\t(isTabsChanged ? true : !prevProps.list?.length) &&\n\t\t\t\tthis.props.callbackOnInit &&\n\t\t\t\tactive\n\t\t\t) {\n\t\t\t\tthis.props.callback(active);\n\t\t\t}\n\t\t\tthis.setState({\n\t\t\t\tactive,\n\t\t\t});\n\t\t}\n\t}\n\n\tgetIdKey = () => this.props.idKey || 'id';\n\n\tgetId = (el) => {\n\t\treturn el?.[this.getIdKey()] || el;\n\t};\n\n\tgetActive = (props = this.props) => {\n\t\tif (!props.list || !props.list.length) {\n\t\t\treturn false;\n\t\t}\n\t\tif (props.activeId) {\n\t\t\treturn props.list.find((el) => this.getId(el) === props.activeId);\n\t\t}\n\t\tif (props.active) {\n\t\t\treturn props.list.find(\n\t\t\t\t(el) => this.getId(el) === this.getId(props.active),\n\t\t\t);\n\t\t}\n\t\treturn props.list[0];\n\t};\n\n\tonClick = (el) => {\n\t\tconst callbackPromise = this.props.callback?.(el) ?? null;\n\t\tif (isFunction(callbackPromise?.then)) {\n\t\t\treturn callbackPromise.then(() => {\n\t\t\t\tif (el.disabled) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.setState({\n\t\t\t\t\tactive: el,\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\t\tif (el.disabled) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setState({\n\t\t\tactive: el,\n\t\t});\n\t};\n\n\ttabProps = (el) => {\n\t\treturn {\n\t\t\tas: Button,\n\t\t\tname: `tab-${this.getId(el)}`,\n\t\t\t$width:\n\t\t\t\tthis.props.fullWidth && !this.props.alignLeft\n\t\t\t\t\t? `${100 / this.props.list.length}%`\n\t\t\t\t\t: undefined,\n\t\t\tlocalTheme: {\n\t\t\t\tfullWidth: this.props.fullWidth,\n\t\t\t\tsmall: this.props.smallText,\n\t\t\t\tnoWrap: this.props.smallText,\n\t\t\t\tactive: this.getId(this.state.active) === this.getId(el),\n\t\t\t\tbuttonsStyle: this.props.buttonsStyle,\n\t\t\t},\n\t\t\tnoClassName: true,\n\t\t\tclassName: classnames('flex-vertical-center', {\n\t\t\t\tdisabled: el.disabled,\n\t\t\t\t'flex-horizontal-center': this.props.fullWidth,\n\t\t\t\t[this.props.tabClassNames]: this.props.tabClassNames,\n\t\t\t\tactive: this.getId(this.state.active) === this.getId(el),\n\t\t\t}),\n\t\t\tonClick: () => this.onClick(el),\n\t\t};\n\t};\n\n\trender() {\n\t\t// if (!this.props.list?.length && !this.props.preloadLength) return null;\n\t\tconst tabs = (\n\t\t\t<TabsStyle\n\t\t\t\tlocalTheme={{\n\t\t\t\t\tfullWidth: this.props.fullWidth,\n\t\t\t\t\tlight: this.props.light,\n\t\t\t\t\tscrollHorizontal: this.props.scrollHorizontal,\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<LoaderListWrapper\n\t\t\t\t\tlist={this.props.list}\n\t\t\t\t\tloaded={this.props.loaded}\n\t\t\t\t\tpreloadElement={(el, index) => (\n\t\t\t\t\t\t<TabsTabStyle key={index} {...this.tabProps(el)}>\n\t\t\t\t\t\t\t{this.props.preloadElement || <TabElementLoader id={index} />}\n\t\t\t\t\t\t</TabsTabStyle>\n\t\t\t\t\t)}\n\t\t\t\t\tpreloadLength={this.props.preloadLength}\n\t\t\t\t\tlistElementCallback={(el) => {\n\t\t\t\t\t\tconst data = (\n\t\t\t\t\t\t\t<TabsTabStyle key={this.getId(el)} {...this.tabProps(el)}>\n\t\t\t\t\t\t\t\t{el.icon && <AwesomeIcon icon={el.icon} />}\n\t\t\t\t\t\t\t\t<span className=\"cut-text\">\n\t\t\t\t\t\t\t\t\t{this.props.namespace\n\t\t\t\t\t\t\t\t\t\t? trans({\n\t\t\t\t\t\t\t\t\t\t\t\tlabel: el.name,\n\t\t\t\t\t\t\t\t\t\t\t\tnamespace: this.props.namespace,\n\t\t\t\t\t\t\t\t\t\t })\n\t\t\t\t\t\t\t\t\t\t: el.name}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</TabsTabStyle>\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn isFunction(el.wrapper) ? el.wrapper(el, data) : data;\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t</TabsStyle>\n\t\t);\n\n\t\treturn this.props.children ? (\n\t\t\t<TabsWrapperStyle>\n\t\t\t\t{tabs}\n\t\t\t\t<TabsContentStyle>{this.props.children}</TabsContentStyle>\n\t\t\t</TabsWrapperStyle>\n\t\t) : (\n\t\t\ttabs\n\t\t);\n\t}\n}\n\nTabs = enhanceComponent({\n\tTabs,\n});\n\nexport { Tabs };\n","import styled, { css } from 'styled-components';\nimport { box, boxNoHeight } from '../../modules/style/defaults';\n\nimport { currencyLogoStyle } from '../../modules/style/mixins/currencyLogoStyle';\n\nconst getStyles = (props) => {\n\tif (!props.localTheme || !Object.keys(props.localTheme).length) {\n\t\treturn '';\n\t}\n\treturn css`\n\t\t${props.localTheme.fullWidth\n\t\t\t? css`\n\t\t\t\t\t&:before {\n\t\t\t\t\t\tbackground-color: ${props.theme.colors.tableBorderColorLight};\n\t\t\t\t\t\tbottom: 0;\n\t\t\t\t\t\tcontent: '';\n\t\t\t\t\t\tdisplay: block;\n\t\t\t\t\t\theight: 1px;\n\t\t\t\t\t\tleft: 0;\n\t\t\t\t\t\tposition: absolute;\n\t\t\t\t\t\twidth: 100%;\n\t\t\t\t\t}\n\t\t\t `\n\t\t\t: ''};\n\n\t\t${props.localTheme.scrollHorizontal\n\t\t\t? css`\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\toverflow-x: auto;\n\t\t\t\t\toverflow-y: hidden;\n\t\t\t\t\tscrollbar-width: unset;\n\t\t\t `\n\t\t\t: ''};\n\t`;\n};\n\nexport const TabsStyle = styled.div.attrs(() => ({\n\tclassName: 'tabs text-style-md-semibold',\n}))`\n\t${boxNoHeight};\n\tposition: relative;\n\tmargin-bottom: 10px;\n\n\t${getStyles}\n`;\n\nexport const TabsWrapperStyle = styled.div.attrs(() => ({\n\tclassName: 'tabs-wrapper',\n}))`\n\t${box}\n`;\n\nexport const TabsContentStyle = styled.div.attrs(() => ({\n\tclassName: 'tabs--content',\n}))`\n\theight: calc(100% - 30px);\n`;\n\nconst getTabStyles = (props) => {\n\tif (!props.localTheme || !Object.keys(props.localTheme).length) {\n\t\treturn '';\n\t}\n\treturn css`\n\t\t${props.localTheme.noWrap\n\t\t\t? css`\n\t\t\t\t\ti,\n\t\t\t\t\tsvg {\n\t\t\t\t\t\tborder-radius: unset;\n\t\t\t\t\t\tdisplay: inline;\n\t\t\t\t\t\theight: unset;\n\t\t\t\t\t\tmargin: 0 8px 0 0;\n\t\t\t\t\t\twidth: unset;\n\t\t\t\t\t}\n\n\t\t\t\t\tsvg {\n\t\t\t\t\t\twidth: 1em;\n\t\t\t\t\t}\n\t\t\t `\n\t\t\t: ''};\n\t`;\n};\n\nconst getTabDesign = (props) => {\n\tif (!props.localTheme || !Object.keys(props.localTheme).length) {\n\t\treturn '';\n\t}\n\treturn props.localTheme.buttonsStyle\n\t\t? css`\n\t\t\t\t&:first-of-type {\n\t\t\t\t\tborder-radius: ${props.theme.layout.borderRadius} 0 0\n\t\t\t\t\t\t${props.theme.layout.borderRadius};\n\t\t\t\t}\n\n\t\t\t\t&:last-of-type {\n\t\t\t\t\tborder-radius: 0 ${props.theme.layout.borderRadius}\n\t\t\t\t\t\t${props.theme.layout.borderRadius} 0;\n\t\t\t\t}\n\n\t\t\t\tbackground-color: rgb(5, 27, 56);\n\t\t\t\tpadding: 5px 7px;\n\n\t\t\t\t&.active {\n\t\t\t\t\tbackground-color: ${props.theme.colors.active};\n\t\t\t\t\tcolor: ${props.theme.colors.text}!important;\n\t\t\t\t}\n\t\t `\n\t\t: css`\n\t\t\t\tborder-bottom: 1px solid\n\t\t\t\t\t${(props) =>\n\t\t\t\t\t\tprops.localTheme.fullWidth\n\t\t\t\t\t\t\t? props.theme.colors.tableBorderColorLight\n\t\t\t\t\t\t\t: 'transparent'};\n\n\t\t\t\t&.active {\n\t\t\t\t\tborder-color: ${props.theme.colors.active};\n\t\t\t\t}\n\n\t\t\t\t${props.localTheme.light\n\t\t\t\t\t? css`\n\t\t\t\t\t\t\topacity: ${props.localTheme.active ? '1' : '0.5'};\n\n\t\t\t\t\t\t\t${props.localTheme.active\n\t\t\t\t\t\t\t\t? css`\n\t\t\t\t\t\t\t\t\t\tborder-color: ${props.theme.colors.text};\n\t\t\t\t\t\t\t\t\t\tcolor: ${props.theme.colors.text}!important;\n\n\t\t\t\t\t\t\t\t\t\timg {\n\t\t\t\t\t\t\t\t\t\t\tborder-color: transparent;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t `\n\t\t\t\t\t\t\t\t: ''};\n\t\t\t\t\t `\n\t\t\t\t\t: ''};\n\t\t `;\n};\n\nexport const TabsTabStyle = styled.div.attrs(() => ({\n\tclassName: 'tabs--tab',\n}))`\n\tpadding: 0 5px 7px;\n\tcursor: pointer;\n\ttransition: ${(props) => props.theme.layout.transition};\n\twhite-space: nowrap;\n\twidth: ${(props) => props.$width || 'auto'};\n\n\t&:not(.flex-horizontal-center) {\n\t\tmargin-right: 20px;\n\n\t\t@media (max-width: ${(props) => props.theme.media.maxWidthTablet}) {\n\t\t\tmargin-right: 10px;\n\t\t}\n\t}\n\n\t.currency-logo {\n\t\t${currencyLogoStyle({ size: '36px' })}\n\t}\n\n\t&:last-of-type {\n\t\tmargin-right: 0;\n\t}\n\n\t&.active {\n\t\tposition: relative;\n\t}\n\n\t&.disabled {\n\t\topacity: 0.5;\n\t\tcursor: not-allowed;\n\t}\n\n\timg,\n\ti,\n\tsvg {\n\t\tdisplay: block;\n\t\tmargin: 0 auto 10px;\n\t\theight: 36px;\n\t\twidth: auto;\n\t\tborder-radius: 100%;\n\t\toutline: none;\n\t\ttransition: 0ms !important;\n\t}\n\n\t${getTabDesign}\n\n\t${getTabStyles}\n`;\n","import styled from 'styled-components';\nimport {\n\tfaCheckCircle,\n\tfaHourglassHalf,\n\tfaMinusCircle,\n} from '@fortawesome/free-solid-svg-icons';\n// eslint-disable-next-line import/named\nimport { FontAwesomeIconProps } from '@fortawesome/react-fontawesome';\nimport { AwesomeIcon } from '@common/components/icons/AwesomeIcon';\nimport { borderRadius, boxNoHeight } from '../defaults';\n\nexport interface StyledInformationIconProps extends FontAwesomeIconProps {\n\t$color?: 'positive' | 'negative' | 'pending';\n}\n\nexport const StyledInformationIcon = styled(AwesomeIcon).attrs(\n\t(props: StyledInformationIconProps) => ({\n\t\t...props,\n\t\ticon:\n\t\t\tprops.icon ??\n\t\t\t(props.$color === 'pending'\n\t\t\t\t? faHourglassHalf\n\t\t\t\t: props.$color === 'positive'\n\t\t\t\t? faCheckCircle\n\t\t\t\t: faMinusCircle),\n\t}),\n)<StyledInformationIconProps>`\n\tfont-size: 100px;\n\t* {\n\t\t${(props) => {\n\t\t\tswitch (props.$color) {\n\t\t\t\tcase 'positive':\n\t\t\t\t\treturn `fill: ${props.theme.colors.positive}`;\n\t\t\t\tcase 'negative':\n\t\t\t\t\treturn `fill: ${props.theme.colors.negative}`;\n\t\t\t\tdefault:\n\t\t\t\t\treturn `fill: ${props.theme.colors.textDisabled}`;\n\t\t\t}\n\t\t}}\n\t}\n\n\t@media (max-width: ${(props) => props.theme.media.maxWidthTablet}) {\n\t\tfont-size: 70px;\n\t}\n`;\n\nexport const StyledInformation = styled.div.attrs({\n\tclassName: 'information',\n})`\n\t${boxNoHeight};\n\talign-items: center;\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: center;\n\tposition: relative;\n\n\tp {\n\t\tmargin: 50px 0;\n\n\t\t@media (max-width: ${(props) => props.theme.media.maxWidthTablet}) {\n\t\t\tmargin: 30px 0;\n\t\t}\n\t}\n\n\t[class*='page-email'] & {\n\t\t@media (min-width: ${(props) => props.theme.media.maxWidthSmallTablet}) {\n\t\t\tposition: absolute;\n\t\t\ttop: 50%;\n\t\t\tleft: 50%;\n\t\t\ttransform: translate(-50%, -50%);\n\t\t}\n\t}\n`;\n\nexport const StyledInformationContent = styled.div`\n\talign-items: center;\n\tbackground-color: ${(props) => props.theme.colors.settingsMenuBg};\n\t${borderRadius};\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: center;\n\tmax-width: 500px;\n\tpadding: 60px;\n\tposition: relative;\n\ttext-align: center;\n\twidth: 100%;\n\n\t.buttons-box {\n\t\tbutton {\n\t\t\tpadding: 10px 20px !important;\n\t\t}\n\t}\n\n\t@media (max-width: ${(props) => props.theme.media.maxWidthTablet}) {\n\t\tborder-radius: ${(props) => props.theme.layout.borderRadius};\n\t\tpadding: 30px;\n\t}\n`;\n","import { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport { sequenceArray } from '@legacyApp/client/modules/app/appService';\nimport { isFunction } from '../../methods/isFunction';\n\nconst LoaderListWrapper = ({\n\tlist,\n\tlistElement,\n\tloaderWrapper,\n\tloaded,\n\tpreloadLength,\n\tpreloadElement,\n\tlistElementCallback,\n\tnoDataElement,\n}) => {\n\t// console.log('LoaderListWrapper', {\n\t// \tlist,\n\t// \tlistElement,\n\t// \tloaderWrapper,\n\t// \tloaded,\n\t// \tpreloadLength,\n\t// \tpreloadElement,\n\t// \tlistElementCallback,\n\t// \tnoDataElement,\n\t// });\n\tif (list?.length) {\n\t\treturn listElement || list.map(listElementCallback);\n\t}\n\tif (!loaded && preloadLength && preloadElement) {\n\t\tconst Wrapper = loaderWrapper || Fragment;\n\t\treturn (\n\t\t\t<Wrapper>\n\t\t\t\t{sequenceArray(preloadLength).map((el, index) =>\n\t\t\t\t\tisFunction(preloadElement)\n\t\t\t\t\t\t? preloadElement(el, index)\n\t\t\t\t\t\t: preloadElement,\n\t\t\t\t)}\n\t\t\t</Wrapper>\n\t\t);\n\t}\n\tif (loaded && noDataElement) {\n\t\treturn noDataElement;\n\t}\n\treturn null;\n};\n\nLoaderListWrapper.propTypes = {\n\tlist: PropTypes.array,\n\tlistElement: PropTypes.node,\n\tloaderWrapper: PropTypes.any,\n\tloaded: PropTypes.bool,\n\tpreloadLength: PropTypes.number,\n\tpreloadElement: PropTypes.any,\n\tlistElementCallback: PropTypes.func,\n\tnoDataElement: PropTypes.any,\n};\n\nexport { LoaderListWrapper };\n","import { isFunction } from './isFunction';\nimport { isTrueOrZero } from './isTrueOrZero';\n\nexport interface PageScrollToProps {\n\ttop?: number;\n\tleft?: number;\n}\n\nexport const pageScrollTo = ({ top, left }: PageScrollToProps) => {\n\tconst element = document.body.parentElement;\n\n\tif (\n\t\telement &&\n\t\tisFunction(element.scrollTo) &&\n\t\t(isTrueOrZero(top) || isTrueOrZero(left))\n\t) {\n\t\telement.scrollTo({\n\t\t\tbehavior: 'smooth',\n\t\t\ttop: isTrueOrZero(top) ? top : 0,\n\t\t\tleft: isTrueOrZero(left) ? left : 0,\n\t\t});\n\t}\n};\n","import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport styled from 'styled-components';\nimport YouTube from 'react-youtube';\nimport {\n\tfaDesktop,\n\tfaExclamationCircle,\n\tfaMobileAlt,\n} from '@fortawesome/free-solid-svg-icons';\nimport { List } from '../../list';\nimport { trans } from '../../../modules/translation/translate';\nimport { Tabs } from '../../tabs';\nimport { enhanceComponent } from '../../../wrappers/enhanceComponent';\nimport { DescriptionBoxStyle } from '../../../modules/style/components/descriptionBox.style';\nimport {\n\tStyledInformation,\n\tStyledInformationContent,\n\tStyledInformationIcon,\n} from '../../../modules/style/components/information.styled';\nimport { Image } from '../../../../../common/components/default/Image/Image';\nimport { Redirect } from '../../../../../common/components/default/Redirect/Redirect';\nimport { AwesomeIcon } from '../../../../../common/components/icons/AwesomeIcon';\nimport { MODAL_ID } from '../../../../../common/constants/modal/ids.modal.constants';\nimport { Button } from '../../../../../ui/components/button';\nimport { ButtonStyleType } from '../../../../../ui/types/ButtonStyleType';\n\nclass TwoFa extends React.Component {\n\tstatic propTypes = {\n\t\tis2faActive: PropTypes.bool,\n\t\tactivate2fa: PropTypes.func,\n\t\topenModal: PropTypes.func,\n\t\tlanguage: PropTypes.string,\n\t};\n\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\ttabs: [\n\t\t\t\t{\n\t\t\t\t\tid: 'mobile',\n\t\t\t\t\ticon: faMobileAlt,\n\t\t\t\t\tname: trans({ label: 'Using mobile phone' }),\n\t\t\t\t\tsections: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'google_authenticator',\n\t\t\t\t\t\t\tcontent: [\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Launch the app and tap on <1>Begin Setup -> Scan barcode</1>.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\t{/* eslint-disable-next-line react/no-unescaped-entities */}\n\t\t\t\t\t\t\t\t\t\t\tLaunch the app and tap on{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">\n\t\t\t\t\t\t\t\t\t\t\t\tBegin Setup -{'>'} Scan barcode\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel: 'Scan <1>QR-code</1> to set up Google Auth.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tScan <span className=\"text-underline\">QR-code</span> to\n\t\t\t\t\t\t\t\t\t\t\tset up Google Auth.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Enter the 6-digit code from your phone into <1>the 2FA input filed</1>.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tEnter the 6-digit code from your phone into{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">\n\t\t\t\t\t\t\t\t\t\t\t\tthe 2FA input filed\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\talternative: [\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Launch the app and tap on <1>Begin Setup -> Scan barcode</1>.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\t{/* eslint-disable-next-line react/no-unescaped-entities */}\n\t\t\t\t\t\t\t\t\t\t\tLaunch the app and tap on{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">\n\t\t\t\t\t\t\t\t\t\t\t\tBegin Setup -{'>'} Scan barcode\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel: 'In the <1>Account name</1> field enter \"wolfbet\"',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\t{/* eslint-disable-next-line react/no-unescaped-entities */}\n\t\t\t\t\t\t\t\t\t\t\tIn the{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">Account name</span> field\n\t\t\t\t\t\t\t\t\t\t\t{'enter \"wolfbet\"'}\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'In the <1>Your key</1> field enter <2>Secret code</2> and tap <3>Done</3>',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tIn the <span className=\"text-underline\">Your key</span>{' '}\n\t\t\t\t\t\t\t\t\t\t\tfield enter{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">Secret code</span> and\n\t\t\t\t\t\t\t\t\t\t\ttap <span className=\"text-underline\">Done</span>\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Enter the 6-digit code from your phone into <1>the 2FA input filed</1>.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tEnter the 6-digit code from your phone into{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">\n\t\t\t\t\t\t\t\t\t\t\t\tthe 2FA input filed\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\tvideo: '3B_zlGVldRY',\n\t\t\t\t\t\t\t// videoAlternative: 'dyVkAv3vqi0',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'authy',\n\t\t\t\t\t\t\tcontent: [\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Launch the mobile app and provide your <1>phone number</1>.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tLaunch the mobile app and provide your{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">phone number</span>.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Choose the way of verification. We recommend <1>SMS Verification</1>.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tChoose the way of verification. We recommend{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">SMS Verification</span>.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Click <1>Scan QR code</1> button. Scan the QR code from Wolfbet modal.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tClick <span className=\"text-underline\">Scan QR code</span>{' '}\n\t\t\t\t\t\t\t\t\t\t\tbutton. Scan the QR code from Wolfbet modal.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'In the Account name field put wolfbet and choose a generic black logo, click Save.',\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Type the 6-digit code <1>without</1> spaces in the Wolfbet modal.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tType the 6-digit code{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">without</span> spaces in\n\t\t\t\t\t\t\t\t\t\t\tthe Wolfbet modal.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\talternative: [\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Launch the mobile app and provide your <1>phone number</1>.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tLaunch the mobile app and provide your{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">phone number</span>.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Choose the way of verification. We recommend <1>SMS Verification</1>.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tChoose the way of verification. We recommend{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">SMS Verification</span>.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Tap <1>Enter Code Manually</1> and provide the secret code from Wolfbet modal',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tTap{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">\n\t\t\t\t\t\t\t\t\t\t\t\tEnter Code Manually\n\t\t\t\t\t\t\t\t\t\t\t</span>{' '}\n\t\t\t\t\t\t\t\t\t\t\tand provide the secret code from Wolfbet modal.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'In the Account name field put wolfbet and choose a generic black logo, click Save.',\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Type the 6-digit code <1>without</1> spaces in the Wolfbet modal.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tType the 6-digit code{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">without</span> spaces in\n\t\t\t\t\t\t\t\t\t\t\tthe Wolfbet modal.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\tvideo: 'WUEB7mT_MWw',\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tid: 'desktop',\n\t\t\t\t\ticon: faDesktop,\n\t\t\t\t\tname: trans({ label: 'Using desktop computer' }),\n\t\t\t\t\tsections: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'authy',\n\t\t\t\t\t\t\tcontent: [\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Launch the desktop app and provide your <1>phone number</1>.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tLaunch the desktop app and provide your{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">phone number</span>.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Choose the way of verification. We recommend <1>SMS Verification</1>.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tChoose the way of verification. We recommend{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">SMS Verification</span>.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Click + icon and provide the <1>Secret code</1> from our site. You can find the code once you click <1>Activate now</1> button.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tClick + icon and provide the{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">Secret code</span> from\n\t\t\t\t\t\t\t\t\t\t\tour site. You can find the code once you click{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">Activate now</span>{' '}\n\t\t\t\t\t\t\t\t\t\t\tbutton.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'In the Account name field put wolfbet and choose a generic black logo, click Save.',\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\ttrans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Copy the 6-digit code <1>without</1> spaces that appear on the Authy app and paste it in the Wolfbet modal.',\n\t\t\t\t\t\t\t\t\tcomponents: (\n\t\t\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t\t\tCopy the 6-digit code{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-underline\">without</span> spaces\n\t\t\t\t\t\t\t\t\t\t\tthat appear on the Authy app and paste it in the Wolfbet\n\t\t\t\t\t\t\t\t\t\t\tmodal.\n\t\t\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\tvideo: '2-8wL73u7aM',\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t],\n\t\t\tauthenticators: {\n\t\t\t\t['google_authenticator']: {\n\t\t\t\t\tname: 'Google Auth',\n\t\t\t\t\tios: 'https://apps.apple.com/app/google-authenticator/id388497605',\n\t\t\t\t\tandroid:\n\t\t\t\t\t\t'https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2',\n\t\t\t\t\tdesktop: 'https://support.google.com/accounts/answer/1066447',\n\t\t\t\t},\n\t\t\t\t['authy']: {\n\t\t\t\t\tname: 'Authy',\n\t\t\t\t\tios: 'https://apps.apple.com/app/authy/id494168017',\n\t\t\t\t\tandroid:\n\t\t\t\t\t\t'https://play.google.com/store/apps/details?id=com.authy.authy',\n\t\t\t\t\tdesktop: 'https://authy.com/download/',\n\t\t\t\t},\n\t\t\t},\n\t\t\tactiveSection: false,\n\t\t\tactiveTab: false,\n\t\t\textendedOpen: false,\n\t\t};\n\t\tthis.state.activeTab = this.state.tabs[0];\n\t\tthis.state.activeSection = this.state.activeTab.sections[0];\n\t}\n\n\thandle2faButton = () => {\n\t\tif (this.props.is2faActive) {\n\t\t\treturn this.props.openModal(MODAL_ID.UNINSTALL_2FA);\n\t\t}\n\t\treturn this.props.activate2fa();\n\t};\n\n\thandleChangeTab = (el) => {\n\t\tthis.setState({\n\t\t\textendedOpen: false,\n\t\t});\n\t\tthis.setState({\n\t\t\tactiveTab: el,\n\t\t});\n\t\tthis.handleChangeSection(el.sections[0]);\n\t};\n\n\thandleChangeSection = (el) => {\n\t\tthis.setState({\n\t\t\tactiveSection: el,\n\t\t});\n\t};\n\n\tgetYoutube = (id) => {\n\t\tif (!id) {\n\t\t\treturn false;\n\t\t}\n\t\treturn (\n\t\t\t<StyledYouTubeWrapper className={'box width-30 padding-left'}>\n\t\t\t\t<div\n\t\t\t\t\tonClick={() =>\n\t\t\t\t\t\twindow.open(`https://www.youtube.com/watch?v=${id}`, '_blank')\n\t\t\t\t\t}\n\t\t\t\t\tclassName={'box-no-height onclick'}\n\t\t\t\t>\n\t\t\t\t\t<YouTube\n\t\t\t\t\t\tvideoId={id}\n\t\t\t\t\t\tcontainerClassName=\"box-no-height no-click\"\n\t\t\t\t\t\topts={{\n\t\t\t\t\t\t\theight: '80',\n\t\t\t\t\t\t\twidth: '100%',\n\t\t\t\t\t\t\tplayerVars: {\n\t\t\t\t\t\t\t\tmodestbranding: 1,\n\t\t\t\t\t\t\t\tshowinfo: 0,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonPlay={(e) => {\n\t\t\t\t\t\t\te.target.stopVideo();\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</StyledYouTubeWrapper>\n\t\t);\n\t};\n\n\trender() {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{!this.props.is2faActive ? (\n\t\t\t\t\t<div className=\"box-no-height user-select-text\">\n\t\t\t\t\t\t<DescriptionBoxStyle\n\t\t\t\t\t\t\t$background={true}\n\t\t\t\t\t\t\tclassName=\"no-margin align-center margin-bottom flex-horizontal-center flex-vertical-center flex-column padding-top-24 padding-bottom-24\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<p className=\"no-margin margin-bottom\">\n\t\t\t\t\t\t\t\t<AwesomeIcon icon={faExclamationCircle} />{' '}\n\t\t\t\t\t\t\t\t{trans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'Your 2FA is not activated. You can activate it now or use the instructions below.',\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tname=\"activate-2fa\"\n\t\t\t\t\t\t\t\tonClick={this.handle2faButton}\n\t\t\t\t\t\t\t\tlabel={trans({ label: 'Activate Now' })}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</DescriptionBoxStyle>\n\t\t\t\t\t\t<Tabs\n\t\t\t\t\t\t\tlist={this.state.tabs}\n\t\t\t\t\t\t\tsmallText={true}\n\t\t\t\t\t\t\tnoWrap={true}\n\t\t\t\t\t\t\tlight={true}\n\t\t\t\t\t\t\tscrollHorizontal={true}\n\t\t\t\t\t\t\tfullWidth={true}\n\t\t\t\t\t\t\tcallback={this.handleChangeTab}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<div className=\"box box-no-height rows small-margin-top\">\n\t\t\t\t\t\t\t{this.state.activeTab.sections.map((element) => {\n\t\t\t\t\t\t\t\tconst rowClasses = classnames({\n\t\t\t\t\t\t\t\t\trow: true,\n\t\t\t\t\t\t\t\t\t'row-active': this.state.activeSection.id === element.id,\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\tconst authenticator = this.state.authenticators[element.id];\n\t\t\t\t\t\t\t\tconst links =\n\t\t\t\t\t\t\t\t\tthis.state.activeTab.id === 'mobile' ? (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<Redirect\n\t\t\t\t\t\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"text-underline text-style-md-semibold\"\n\t\t\t\t\t\t\t\t\t\t\t\thref={authenticator.android}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\tAndroid\n\t\t\t\t\t\t\t\t\t\t\t</Redirect>{' '}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-disabled text-style-md-semibold\">\n\t\t\t\t\t\t\t\t\t\t\t\t/\n\t\t\t\t\t\t\t\t\t\t\t</span>{' '}\n\t\t\t\t\t\t\t\t\t\t\t<Redirect\n\t\t\t\t\t\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"text-underline text-style-md-semibold\"\n\t\t\t\t\t\t\t\t\t\t\t\thref={authenticator.ios}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\tiOS\n\t\t\t\t\t\t\t\t\t\t\t</Redirect>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<Redirect\n\t\t\t\t\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"text-underline text-style-md-semibold\"\n\t\t\t\t\t\t\t\t\t\t\thref={authenticator.desktop}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\tDesktop\n\t\t\t\t\t\t\t\t\t\t</Redirect>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<div key={element.id} className={rowClasses}>\n\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"row-content\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={() => this.handleChangeSection(element)}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<div className=\"coin-title\">\n\t\t\t\t\t\t\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\t\t\t\t\t\t\tsrc={`/img/two-factor-authenticators/${element.id}.png`}\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"no-margin small-margin-right\"\n\t\t\t\t\t\t\t\t\t\t\t\t\talt={authenticator.name}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-style-md-semibold\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t{authenticator.name}\n\t\t\t\t\t\t\t\t\t\t\t\t</span>{' '}\n\t\t\t\t\t\t\t\t\t\t\t\t<span className=\"hint active\">{links}</span>\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t{this.state.activeTab.sections.length > 1 && (\n\t\t\t\t\t\t\t\t\t\t\t\t<i\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={`icon__arrow-down ${\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.state.activeSection.id === element.id\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 'opened'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t} relative`}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t<div className=\"row-dropdown\">\n\t\t\t\t\t\t\t\t\t\t\t<div className=\"box-no-height flex-vertical-center\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={classnames('box', [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t`width-${element.video ? '70' : '100'}`,\n\t\t\t\t\t\t\t\t\t\t\t\t\t])}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<List\n\t\t\t\t\t\t\t\t\t\t\t\t\t\telClassName=\"text-style-sm-regular\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlistStyle=\"decimal\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tarray={element.content}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t{this.getYoutube(element.video)}\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t{element.alternative && element.alternative.length && (\n\t\t\t\t\t\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{this.state.extendedOpen && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div className=\"alternative-separator\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-style-sm-regular\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{trans({ label: 'or' })}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div className=\"box-no-height flex-vertical-center margin-bottom-12\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={classnames('box', [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t`width-${\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.videoAlternative ? '70' : '100'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}`,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t])}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<List\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telClassName=\"text-style-sm-regular\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlistStyle=\"decimal\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tarray={element.alternative}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{this.getYoutube(element.videoAlternative)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tstyleType={ButtonStyleType.SECONDARY}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tname=\"toggle-instruction\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={() =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\textendedOpen: !this.state.extendedOpen,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlabel={trans({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlabel: `${\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.state.extendedOpen ? 'Hide' : 'Show'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t} alternative version`,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t) : (\n\t\t\t\t\t<StyledInformation>\n\t\t\t\t\t\t<StyledInformationContent>\n\t\t\t\t\t\t\t<StyledInformationIcon $color={'positive'} />\n\t\t\t\t\t\t\t<p className=\"text-style-md-regular\">\n\t\t\t\t\t\t\t\t{trans({\n\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t'You have activated 2FA, which you can always deactivate it here.',\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tname=\"deactivate-2fa\"\n\t\t\t\t\t\t\t\tstyleType={ButtonStyleType.SECONDARY}\n\t\t\t\t\t\t\t\tonClick={this.handle2faButton}\n\t\t\t\t\t\t\t\tlabel={trans({ label: 'Deactivate 2FA' })}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</StyledInformationContent>\n\t\t\t\t\t</StyledInformation>\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t}\n}\n\nconst StyledYouTubeWrapper = styled.div`\n\t> div {\n\t\tfloat: right;\n\t\tmax-width: 180px;\n\t}\n`;\n\nTwoFa = enhanceComponent({\n\tTwoFa,\n});\n\nexport { TwoFa };\n","import { connect } from 'react-redux';\nimport { install2fa } from '../../../store/twoFactorAuthentication/twoFactorAuthentication.actions';\nimport { openModal } from '../../../../../modules/modals/store/modal.actions';\nimport { TwoFa } from './twoFa';\n\nconst mapStateToProps = (state) => {\n\treturn {\n\t\tis2faActive: state.twoFA.isActive,\n\t\tlanguage: state.app.language,\n\t};\n};\n\nconst mapDispatchToProps = (dispatch) => {\n\treturn {\n\t\tactivate2fa: () => dispatch(install2fa()),\n\t\topenModal: (type) => dispatch(openModal(type)),\n\t};\n};\n\nconst TwoFaContainer = connect(mapStateToProps, mapDispatchToProps)(TwoFa);\n\nexport { TwoFaContainer };\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { InputWrapperContainer } from '../../input/inputWrapper.container';\nimport { trans } from '../../../modules/translation/translate';\nimport { config } from '../../../config';\nimport { enhanceComponent } from '../../../wrappers/enhanceComponent';\nimport { Redirect } from '../../../../../common/components/default/Redirect/Redirect';\nimport { Button } from '../../../../../ui/components/button';\nimport { ButtonStyleType } from '../../../../../ui/types/ButtonStyleType';\n\nclass Api extends React.Component {\n\tstatic propTypes = {\n\t\ttoken: PropTypes.any,\n\t};\n\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\thidden: true,\n\t\t};\n\t}\n\n\treveal = () => {\n\t\tthis.setState({\n\t\t\thidden: false,\n\t\t});\n\t};\n\n\trender() {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<InputWrapperContainer\n\t\t\t\t\tisCopy={!this.state.hidden}\n\t\t\t\t\tvalue={this.props.token}\n\t\t\t\t\tname=\"api-token\"\n\t\t\t\t\ttype={this.state.hidden ? 'password' : 'text'}\n\t\t\t\t\tisDisabled\n\t\t\t\t\tlabel={trans({ label: 'API Token' })}\n\t\t\t\t/>\n\t\t\t\t<p className=\"hint text-style-sm-regular\">\n\t\t\t\t\t{trans({\n\t\t\t\t\t\tlabel: \"Don't mess with this unless you know what you're doing!\",\n\t\t\t\t\t})}\n\t\t\t\t</p>\n\t\t\t\t{this.state.hidden && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tstyle={{ float: 'left' }}\n\t\t\t\t\t\tname=\"reveal-api-token\"\n\t\t\t\t\t\tstyleType={ButtonStyleType.SECONDARY}\n\t\t\t\t\t\tclassName=\"no-margin margin-top margin-right\"\n\t\t\t\t\t\tonClick={this.reveal}\n\t\t\t\t\t\tlabel={trans({ label: 'Reveal' })}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t\t<Redirect\n\t\t\t\t\thref={config.documentationUrl}\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tdisplay: 'inline-block',\n\t\t\t\t\t\tfloat: 'left',\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"no-margin margin-top\"\n\t\t\t\t\t\tname=\"api-docs\"\n\t\t\t\t\t\tlabel={trans({ label: 'API Documentation' })}\n\t\t\t\t\t/>\n\t\t\t\t</Redirect>\n\t\t\t</>\n\t\t);\n\t}\n}\n\nApi = enhanceComponent({\n\tApi,\n});\n\nexport { Api };\n","import { connect } from 'react-redux';\nimport { Api } from './api';\n\nconst mapStateToProps = (state) => {\n\treturn {\n\t\ttoken: state.user.token.value,\n\t};\n};\n\nconst ApiContainer = connect(mapStateToProps, null)(Api);\n\nexport { ApiContainer };\n","import React from 'react';\nimport { TransactionsTable } from '../../transactionsTable/transactionsTable';\nimport { enhanceComponent } from '../../../wrappers/enhanceComponent';\n\nimport { TABLE_ID } from '../../../../../modules/transactions/constants/TableId';\nimport { LOADING_IDS } from '../../../../../common/constants/fetch/loading.ids';\n\nclass IgnoredUsers extends React.Component {\n\tstatic propTypes = {};\n\n\trender() {\n\t\treturn (\n\t\t\t<TransactionsTable\n\t\t\t\tid={TABLE_ID.friendsIgnored}\n\t\t\t\tloadingId={LOADING_IDS.FRIENDS_IGNORED}\n\t\t\t\tnoResultsText={'No ignored users to show'}\n\t\t\t\tpagination={true}\n\t\t\t/>\n\t\t);\n\t}\n}\n\nIgnoredUsers = enhanceComponent({\n\tIgnoredUsers,\n});\n\nexport { IgnoredUsers };\n","import { connect } from 'react-redux';\nimport { IgnoredUsers } from './ignoredUsers';\n\n// const mapStateToProps = (state) => {\n// return {\n// };\n// };\n//\n// const mapDispatchToProps = (dispatch) => {\n// return {\n// };\n// };\n\nconst IgnoredUsersContainer = connect(null, null)(IgnoredUsers);\n\nexport { IgnoredUsersContainer };\n","import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport { Checkbox } from '../checkbox';\nimport { trans } from '../../modules/translation/translate';\nimport sortService, { DIRECTION } from '../../modules/app/sortService';\nimport { enhanceComponent } from '../../wrappers/enhanceComponent';\nimport { Button } from '../../../../ui/components/button';\nimport { Loader } from '../loader/loader';\n\nclass PreferencesForm extends React.PureComponent {\n\tstatic propTypes = {\n\t\tpreferences: PropTypes.any,\n\t\tupdate: PropTypes.func,\n\t};\n\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tpreferences: props.preferences,\n\t\t\ttypes: Object.keys(props.preferences),\n\t\t};\n\t}\n\n\tsubmitPreferences = (type) => {\n\t\tif (!Object.keys(this.state.preferences[type]).length) {\n\t\t\treturn false;\n\t\t}\n\t\tthis.props.update(type, this.state.preferences[type]);\n\t};\n\n\thandlePreferencesCheckbox(type, key, bool) {\n\t\tif (bool === undefined) {\n\t\t\tbool = !this.state.preferences[type][key].bool;\n\t\t}\n\n\t\tthis.setState({\n\t\t\tpreferences: {\n\t\t\t\t...this.state.preferences,\n\t\t\t\t[type]: {\n\t\t\t\t\t...this.state.preferences[type],\n\t\t\t\t\t[key]: {\n\t\t\t\t\t\t...this.state.preferences[type][key],\n\t\t\t\t\t\tbool,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\trender() {\n\t\tconst preferences = this.state.preferences || {};\n\t\treturn (\n\t\t\t<Fragment>\n\t\t\t\t{this.state.types.map((type) => {\n\t\t\t\t\tif (!Object.keys(preferences[type]).length) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<div className=\"box-no-height margin-bottom-24\" key={type}>\n\t\t\t\t\t\t\t<h3 className=\"text-capitalize no-margin small-margin-bottom text-style-md-medium\">\n\t\t\t\t\t\t\t\t{trans({ label: type })}\n\t\t\t\t\t\t\t</h3>\n\t\t\t\t\t\t\t{Object.keys(preferences[type])\n\t\t\t\t\t\t\t\t.sort((a, b) =>\n\t\t\t\t\t\t\t\t\tsortService.sort(\n\t\t\t\t\t\t\t\t\t\tDIRECTION.ASC,\n\t\t\t\t\t\t\t\t\t\tpreferences[type][a].text,\n\t\t\t\t\t\t\t\t\t\tpreferences[type][b].text,\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t.map((key) => (\n\t\t\t\t\t\t\t\t\t<Checkbox\n\t\t\t\t\t\t\t\t\t\tkey={key}\n\t\t\t\t\t\t\t\t\t\tupdate={true}\n\t\t\t\t\t\t\t\t\t\tinitValue={preferences[type][key].bool}\n\t\t\t\t\t\t\t\t\t\tlabel={preferences[type][key].text}\n\t\t\t\t\t\t\t\t\t\tonChange={(bool) =>\n\t\t\t\t\t\t\t\t\t\t\tthis.handlePreferencesCheckbox(type, key, bool)\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tname={`preferences-update-${type}`}\n\t\t\t\t\t\t\t\tclassName=\"box no-width no-margin margin-top-12-important\"\n\t\t\t\t\t\t\t\tonClick={() => this.submitPreferences(type)}\n\t\t\t\t\t\t\t\tlabel={trans({ label: 'Update' })}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Loader module={`updatePreferences-${type}`} />\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</Fragment>\n\t\t);\n\t}\n}\n\nPreferencesForm = enhanceComponent({\n\tPreferencesForm,\n});\n\nexport { PreferencesForm };\n","import { connect } from 'react-redux';\nimport { preferencesUpdate } from '../../store/preferences/preferences.actions';\nimport { PreferencesForm } from './preferencesForm';\n\nconst mapStateToProps = (state) => {\n\treturn {\n\t\tpreferences: state.preferences,\n\t};\n};\n\nconst mapDispatchToProps = (dispatch) => {\n\treturn {\n\t\tupdate: (type, data) => dispatch(preferencesUpdate(type, data)),\n\t};\n};\n\nconst PreferencesFormContainer = connect(\n\tmapStateToProps,\n\tmapDispatchToProps,\n)(PreferencesForm);\n\nexport { PreferencesFormContainer };\n","import { createGlobalStyle } from 'styled-components';\nimport { ThemeType } from '../../modules/style/theme';\n\nexport const StyledSettingsGlobal = createGlobalStyle<{ theme: ThemeType }>`\n\t.page-user_settings {\n\t\t.page-title {\n\t\t\tmargin-bottom: 50px!important;\n\t\t}\n\n\t\t@media (max-width: ${(props) => props.theme.media.maxWidthTablet}) {\n\t\t\t.page-title {\n\t\t\t\tmargin-bottom: 10px!important;\n\t\t\t}\n\t\t}\n\t}\n`;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport { Button } from '@ui/button';\nimport { ROUTING_ID } from '@common/constants/routing/ids.routing.constants';\nimport { UsernameInputContainer } from '../../components/usernameInput';\nimport { checkMobileDevice } from '../../modules/app/appService';\nimport { trans } from '../../modules/translation/translate';\nimport { TwoFaContainer } from '../../components/settings/twoFa';\nimport { ApiContainer } from '../../components/settings/api';\nimport { IgnoredUsersContainer } from '../../components/settings/ignoredUsers';\nimport { enhanceComponent } from '../../wrappers/enhanceComponent';\nimport { InputWrapperContainer } from '../../components/input/inputWrapper.container';\nimport { PasswordFormContainer } from '../../components/passwordForm';\nimport { PreferencesFormContainer } from '../../components/preferencesForm';\nimport { SettingsLayout } from '../../components/settingsLayout/settingsLayout';\nimport { StyledMainDashboardV2 } from '../../modules/style/components/MainDashboard.styled';\nimport { InputMessageButtonStyles } from '../../components/input/styled/input.style';\nimport { emailService } from '../../modules/app/emailService';\nimport { NOTIFICATION_ID } from '../../store/notification/notification.constants';\nimport routingService from '../../modules/app/routingService';\nimport { Loader } from '../../components/loader/loader';\nimport { StyledSettingsGlobal } from './Settings.global.styled';\n\nclass SettingsPage extends React.Component {\n\tstatic propTypes = {\n\t\tis2faActive: PropTypes.bool,\n\t\tname: PropTypes.string,\n\t\tresetForms: PropTypes.func,\n\t\tusernameFormIsValid: PropTypes.bool,\n\t\tusernameFormValue: PropTypes.string,\n\t\temail: PropTypes.string,\n\t\thasEmailToVerify: PropTypes.any,\n\t\thasPasswordToSet: PropTypes.bool,\n\t\tchangeName: PropTypes.func,\n\t\tchangeEmail: PropTypes.func,\n\t\topenModal: PropTypes.func,\n\t\tupdateUsernameValue: PropTypes.func,\n\t\tresendVerificationEmail: PropTypes.func,\n\t\tsetConfirm: PropTypes.func,\n\t};\n\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tisNameInputChanged: false,\n\t\t\temail: '',\n\t\t\tisEmailInputChanged: false,\n\t\t\tsections: [\n\t\t\t\t{\n\t\t\t\t\tid: 'name',\n\t\t\t\t\tname: () => (this.props.name ? 'Edit username' : 'Set username'),\n\t\t\t\t\tpanelTitle: () =>\n\t\t\t\t\t\tthis.props.name ? 'Change your username' : 'Set your username',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tid: 'email',\n\t\t\t\t\tname: () => (this.props.email ? 'Edit e-mail' : 'Set e-mail'),\n\t\t\t\t\tpanelTitle: () =>\n\t\t\t\t\t\tthis.props.email\n\t\t\t\t\t\t\t? 'Change your e-mail address'\n\t\t\t\t\t\t\t: 'Set your e-mail address',\n\t\t\t\t\tnotification: NOTIFICATION_ID.HAS_EMAIL_TO_VERIFY,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tid: 'password',\n\t\t\t\t\tname: () => 'Change password',\n\t\t\t\t\tpanelTitle: () => 'Change your password',\n\t\t\t\t\tnotification: NOTIFICATION_ID.HAS_PASSWORD_TO_SET,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tid: 'preferences',\n\t\t\t\t\tname: () => 'Preferences',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tid: 'ignored',\n\t\t\t\t\tname: () => 'Ignored Users',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tid: 'api',\n\t\t\t\t\tname: () => 'API',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tid: '2fa',\n\t\t\t\t\tname: () => 'Two-Factor Authentication (2FA)',\n\t\t\t\t\tisNarrow: true,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tid: ROUTING_ID.USER_VERIFICATION,\n\t\t\t\t\tname: () => 'Verification',\n\t\t\t\t\tonClick: () => routingService.redirect(ROUTING_ID.USER_VERIFICATION),\n\t\t\t\t\tnotification: NOTIFICATION_ID.HAS_KYC_TO_VERIFY,\n\t\t\t\t},\n\t\t\t],\n\t\t\tdefaultTab: 'name',\n\t\t};\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.props.resetForms();\n\n\t\tif (this.props.name) {\n\t\t\tthis.props.updateUsernameValue(this.props.name);\n\t\t}\n\n\t\tif (this.props.email) {\n\t\t\tthis.setState({\n\t\t\t\temail: this.props.email,\n\t\t\t});\n\t\t}\n\t}\n\n\tcomponentDidUpdate(prevProps, prevState) {\n\t\tconst isNameChanged = this.props.name !== prevProps.name;\n\t\tconst isUserNameFormChanged =\n\t\t\tthis.props.usernameFormValue !== prevProps.usernameFormValue;\n\t\tconst isEmailChanged = this.props.email !== prevProps.email;\n\t\tconst isEmailFormChanged = this.state.email !== prevState.email;\n\n\t\tif (isNameChanged) {\n\t\t\tthis.props.updateUsernameValue(this.props.name);\n\t\t\tthis.setState({\n\t\t\t\tisNameInputChanged: this.props.usernameFormValue !== this.props.name,\n\t\t\t});\n\t\t}\n\n\t\tif (isUserNameFormChanged) {\n\t\t\tthis.setState({\n\t\t\t\tisNameInputChanged: this.props.usernameFormValue !== this.props.name,\n\t\t\t});\n\t\t}\n\n\t\tif (isEmailChanged) {\n\t\t\tthis.setState({\n\t\t\t\temail: this.props.email,\n\t\t\t});\n\t\t\tthis.setState({\n\t\t\t\tisEmailInputChanged: this.state.email !== this.props.email,\n\t\t\t});\n\t\t}\n\n\t\tif (isEmailFormChanged) {\n\t\t\tthis.setState({\n\t\t\t\tisEmailInputChanged: this.state.email !== this.props.email,\n\t\t\t});\n\t\t}\n\t}\n\n\tgetSectionContent = (id) => {\n\t\tif (id === 'name') {\n\t\t\treturn (\n\t\t\t\t<>\n\t\t\t\t\t<UsernameInputContainer placeholder={'Type new username'} />\n\t\t\t\t\t{/*<CaptchaContainer className='margin-top'/>*/}\n\t\t\t\t\t<Button\n\t\t\t\t\t\tname=\"confirm-username\"\n\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t!this.state.isNameInputChanged || !this.props.usernameFormIsValid\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonClick={this.submitNameChange}\n\t\t\t\t\t\tlabel={trans({ label: 'Confirm' })}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Loader module=\"changeName\" />\n\t\t\t\t\t</Button>\n\t\t\t\t</>\n\t\t\t);\n\t\t}\n\n\t\tif (id === 'email') {\n\t\t\tconst infoClasses = classnames('box-no-height text-style-md-medium', {\n\t\t\t\t'text-negative': this.props.hasEmailToVerify && this.props.email,\n\t\t\t\t'text-positive': !this.props.hasEmailToVerify && this.props.email,\n\t\t\t});\n\n\t\t\tconst infoText = this.props.email\n\t\t\t\t? `Email address ${this.props.hasEmailToVerify ? 'un' : ''}verified`\n\t\t\t\t: false;\n\n\t\t\treturn (\n\t\t\t\t<>\n\t\t\t\t\t{this.props.email && (\n\t\t\t\t\t\t<p className={infoClasses}>\n\t\t\t\t\t\t\t{trans({ label: infoText })}: {this.props.email}\n\t\t\t\t\t\t</p>\n\t\t\t\t\t)}\n\t\t\t\t\t<InputWrapperContainer\n\t\t\t\t\t\tname={'email'}\n\t\t\t\t\t\tplaceholder={'Type email'}\n\t\t\t\t\t\ttype=\"email\"\n\t\t\t\t\t\twrapperClasses=\"margin-bottom-12\"\n\t\t\t\t\t\tonChange={this.handleEmailChange}\n\t\t\t\t\t\tvalue={this.state.email}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.props.hasEmailToVerify && (\n\t\t\t\t\t\t\t<InputMessageButtonStyles\n\t\t\t\t\t\t\t\tonClick={this.props.resendVerificationEmail}\n\t\t\t\t\t\t\t\tnoClassName\n\t\t\t\t\t\t\t\tmessageRight={true}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{trans({ label: 'Resend verification email' })}\n\t\t\t\t\t\t\t</InputMessageButtonStyles>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</InputWrapperContainer>\n\t\t\t\t\t{/*<CaptchaContainer className='margin-top'/>*/}\n\t\t\t\t\t<Button\n\t\t\t\t\t\tname=\"confirm-email\"\n\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t!this.state.isEmailInputChanged ||\n\t\t\t\t\t\t\t!this.state.email ||\n\t\t\t\t\t\t\t!emailService.validate(this.state.email)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonClick={this.submitEmailChange}\n\t\t\t\t\t\tlabel={trans({ label: 'Confirm' })}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Loader module=\"changeEmail\" />\n\t\t\t\t\t</Button>\n\t\t\t\t\t{this.props.email && (\n\t\t\t\t\t\t<p className=\"margin-top text-negative text-style-md-medium\">\n\t\t\t\t\t\t\t{trans({ label: 'Important' })}! <br />\n\t\t\t\t\t\t\t{trans({\n\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t'Changing an email will result in cashouts being disabled for 24h',\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</p>\n\t\t\t\t\t)}\n\t\t\t\t</>\n\t\t\t);\n\t\t}\n\n\t\tif (id === 'password') {\n\t\t\treturn (\n\t\t\t\t<>\n\t\t\t\t\t{this.props.hasPasswordToSet && !checkMobileDevice() && (\n\t\t\t\t\t\t<p className=\"box-no-height text-negative text-style-md-medium\">\n\t\t\t\t\t\t\t{trans({\n\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\"Please, set your password, otherwise you won't be able to login on mobile device\",\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</p>\n\t\t\t\t\t)}\n\t\t\t\t\t<PasswordFormContainer />\n\t\t\t\t</>\n\t\t\t);\n\t\t}\n\n\t\tif (id === '2fa') {\n\t\t\treturn <TwoFaContainer />;\n\t\t}\n\n\t\tif (id === 'api') {\n\t\t\treturn <ApiContainer />;\n\t\t}\n\n\t\tif (id === 'preferences') {\n\t\t\treturn <PreferencesFormContainer />;\n\t\t}\n\n\t\tif (id === 'ignored') {\n\t\t\treturn <IgnoredUsersContainer />;\n\t\t}\n\n\t\treturn false;\n\t};\n\n\tsubmitNameChange = () => {\n\t\tthis.props.changeName(this.props.usernameFormValue);\n\t};\n\n\thandleEmailChange = (value) => {\n\t\tthis.setState({\n\t\t\temail: value,\n\t\t});\n\t};\n\n\tsubmitEmailChange = () => {\n\t\tif (this.props.email) {\n\t\t\treturn this.props.setConfirm({\n\t\t\t\tdata: this.state.email,\n\t\t\t\tcallback: this.props.changeEmail,\n\t\t\t\tquestion: trans({\n\t\t\t\t\tlabel:\n\t\t\t\t\t\t'I am aware that changing my email will result in cashouts being disabled for 24h',\n\t\t\t\t}),\n\t\t\t});\n\t\t}\n\t\treturn this.props.changeEmail(this.state.email);\n\t};\n\n\trender() {\n\t\treturn (\n\t\t\t<StyledMainDashboardV2>\n\t\t\t\t<StyledSettingsGlobal />\n\t\t\t\t<h1 className=\"page-title\">{trans({ label: 'Settings' })}</h1>\n\t\t\t\t<SettingsLayout\n\t\t\t\t\tgetSectionContent={this.getSectionContent}\n\t\t\t\t\tsections={this.state.sections.filter((el) => !el.disabled)}\n\t\t\t\t\tdefaultTab={this.state.defaultTab}\n\t\t\t\t/>\n\t\t\t</StyledMainDashboardV2>\n\t\t);\n\t}\n}\n\nSettingsPage = enhanceComponent({\n\tSettingsPage,\n});\n\nexport { SettingsPage };\n","import { connect } from 'react-redux';\nimport { openModal } from '@modules/modals/store/modal.actions';\nimport {\n\tchangeEmail,\n\tchangeName,\n\tresendVerificationEmail,\n} from '../../store/user/user.actions';\nimport {\n\tresetForms,\n\tupdateUsernameValue,\n} from '../../store/forms/forms.actions';\nimport { setConfirm } from '../../store/confirm/confirm.actions';\nimport { SettingsPage } from './settings.page';\n\nconst mapStateToProps = (state) => {\n\treturn {\n\t\tis2faActive: state.twoFA.isActive,\n\t\tname: state.user.name,\n\t\tusernameFormValue: state.forms.username.value,\n\t\tusernameFormIsValid: state.forms.username.isValid,\n\t\temail: state.user.email,\n\t\thasEmailToVerify: state.user.hasEmailToVerify,\n\t\thasPasswordToSet: state.user.hasPasswordToSet,\n\t};\n};\n\nconst mapDispatchToProps = (dispatch) => {\n\treturn {\n\t\topenModal: (type) => dispatch(openModal(type, 'settings.page')),\n\t\tchangeName: (payload) => dispatch(changeName(payload)),\n\t\tchangeEmail: (payload) => dispatch(changeEmail(payload)),\n\t\tupdateUsernameValue: (payload) => dispatch(updateUsernameValue(payload)),\n\t\tresetForms: () => dispatch(resetForms()),\n\t\tresendVerificationEmail: () => dispatch(resendVerificationEmail()),\n\t\tsetConfirm: (data) => dispatch(setConfirm(data)),\n\t};\n};\n\nconst SettingsContainer = connect(\n\tmapStateToProps,\n\tmapDispatchToProps,\n)(SettingsPage);\n\nexport default SettingsContainer;\n","import { pageEnhancer } from '@common/hoc/pageEnhancer';\nimport { handleGetStaticProps } from '@legacyApp/methods/router/handleGetStaticProps';\nimport { ROUTING_ID } from '@common/constants/routing/ids.routing.constants';\nimport SettingsContainer from '../../LegacyApp/client/pages/settings.page/settings.container';\n\nconst id = ROUTING_ID.USER_SETTINGS;\n\nexport async function getStaticProps(props) {\n\treturn await handleGetStaticProps(props);\n}\n\nexport default pageEnhancer(SettingsContainer, {\n\tid,\n\tseoProps: {\n\t\tnofollow: true,\n\t\tnoindex: true,\n\t},\n});\n","\n (window.__NEXT_P = window.__NEXT_P || []).push([\n \"/user/settings\",\n function () {\n return require(\"private-next-pages/user/settings.tsx\");\n }\n ]);\n if(module.hot) {\n module.hot.dispose(function () {\n window.__NEXT_P.push([\"/user/settings\"])\n });\n }\n "],"names":["ListElementLoader","props","width","height","viewBox","uniqueKey","id","config","cx","cy","r","x","y","rx","ry","List","state","listStyle","undefined","this","setState","list","style","className","classnames","array","length","LoaderListWrapper","loaded","isLoaded","preloadElement","el","index","elClassName","noDataElement","preloadLength","listElementCallback","isBox","React","enhanceComponent","SettingsLayoutContext","createContext","sections","activeId","activeTabData","handleChangeSection","getSectionContent","SettingsLayoutDesktop","useContext","isLogged","useUserIsLogged","map","isActive","onClick","name","trans","label","nameComponent","notification","NotificationIcon","panelTitle","isNarrow","SlideDownBoxElement","section","isLogged_","content","useCallback","callback","isVisible","Title","Content","isContentInitVisible","isContentVisible","SettingsLayoutMobile","SettingsLayout","defaultTab","useState","setActiveId","setActiveTabData","dispatch","useAppDispatch","isMobile","useAppMobile","routerQueryTab","useRouterQueryTab","isInitialized","useAppInitialized","checkActiveTab_","some","updateUrlQuery","tab","getSectionContent_","panelName","panelName_","handleChangeSection_","modal","openModal","getSectionData_","find","getSections_","activeId_","activeTabData_","useEffect","Provider","value","SlideDownBoxStyle","styled","boxNoHeight","noDashboard","dashboard","padding","css","calcStyle","a","b","mode","SlideDownTitleStyle","isColor","theme","layout","borderRadius","colors","inputButton","SlideDownContentStyle","SlideDownBox","titleClasses","contentClasses","boxClasses","noScrollTo","isTrueOrZero","_isVisible","setIsVisible","ref","useRef","timeoutRef","prevIsContentVisible","usePrevious","handleClickTitle","event","current","clearTimeout","setTimeout","pageScrollTo","top","offsetTop","active","opened","TabElementLoader","Tabs","idKey","getIdKey","getId","callbackPromise","isFunction","then","disabled","as","Button","$width","fullWidth","alignLeft","localTheme","small","smallText","noWrap","buttonsStyle","noClassName","tabClassNames","getActive","callbackOnInit","prevProps","isActiveIdChanged","isActiveChanged","isTabsChanged","transactionService","tabs","light","scrollHorizontal","tabProps","data","icon","AwesomeIcon","namespace","wrapper","children","TabsStyle","Object","keys","tableBorderColorLight","TabsWrapperStyle","box","TabsContentStyle","TabsTabStyle","transition","media","maxWidthTablet","currencyLogoStyle","size","text","StyledInformationIcon","attrs","$color","faHourglassHalf","faCheckCircle","faMinusCircle","positive","negative","textDisabled","StyledInformation","maxWidthSmallTablet","StyledInformationContent","settingsMenuBg","listElement","loaderWrapper","Wrapper","Fragment","sequenceArray","left","element","document","body","parentElement","scrollTo","behavior","TwoFa","is2faActive","MODAL_ID","activate2fa","extendedOpen","activeTab","activeSection","StyledYouTubeWrapper","window","open","videoId","containerClassName","opts","playerVars","modestbranding","showinfo","onPlay","e","target","stopVideo","faMobileAlt","components","alternative","video","faDesktop","authenticators","ios","android","desktop","styleType","ButtonStyleType","handle2faButton","$background","faExclamationCircle","handleChangeTab","rowClasses","row","authenticator","links","Redirect","rel","href","Image","src","alt","getYoutube","videoAlternative","TwoFaContainer","connect","twoFA","language","app","install2fa","type","Api","hidden","isCopy","token","isDisabled","float","reveal","display","ApiContainer","user","IgnoredUsers","TABLE_ID","loadingId","LOADING_IDS","noResultsText","pagination","IgnoredUsersContainer","PreferencesForm","preferences","update","types","key","bool","sort","sortService","DIRECTION","initValue","onChange","handlePreferencesCheckbox","submitPreferences","module","PreferencesFormContainer","preferencesUpdate","StyledSettingsGlobal","createGlobalStyle","SettingsPage","placeholder","isNameInputChanged","usernameFormIsValid","submitNameChange","infoClasses","hasEmailToVerify","email","infoText","wrapperClasses","handleEmailChange","resendVerificationEmail","messageRight","isEmailInputChanged","emailService","submitEmailChange","hasPasswordToSet","checkMobileDevice","changeName","usernameFormValue","setConfirm","changeEmail","question","NOTIFICATION_ID","ROUTING_ID","routingService","resetForms","updateUsernameValue","prevState","isNameChanged","isUserNameFormChanged","isEmailChanged","isEmailFormChanged","filter","forms","username","isValid","payload","pageEnhancer","SettingsContainer","seoProps","nofollow","noindex","__NEXT_P","push"],"mappings":"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","debug_id":"74aa39f9-323f-5de4-9681-bcacdf75a520"}