1 |
- {"version":3,"sources":["../node_modules/@mui/icons-material/Folder.js","img/qrCode_telegram.png","components/AuthPage/QRCode/index.tsx","img/icons8-telegram-app.svg","../node_modules/@material-ui/core/esm/ListItem/ListItem.js","../node_modules/@material-ui/core/esm/MenuItem/MenuItem.js","../node_modules/@mui/material/FormControlLabel/formControlLabelClasses.js","../node_modules/@mui/material/FormControlLabel/FormControlLabel.js","helpers/countries.tsx","components/AuthPage/Authorization/index.tsx","img/monkey.png","components/AuthPage/SMSCode/index.tsx","../node_modules/@material-ui/core/esm/ListItemIcon/ListItemIcon.js","../node_modules/@material-ui/core/esm/ListItemText/ListItemText.js","components/AuthPage/Registration/UploadAvatar/index.tsx","components/AuthPage/Registration/index.tsx","components/AuthPage/index.tsx"],"names":["_interopRequireDefault","require","Object","defineProperty","exports","value","default","_createSvgIcon","_jsxRuntime","_default","jsx","d","useStyles","makeStyles","container","display","alignItems","alignContent","flexDirection","width","margin","paddingTop","paddingBottom","picture","marginBottom","title","textAlign","titleSpan","justifyContent","height","position","left","backgroundColor","borderRadius","color","button","marginTop","QRCode","handleIsQR","classes","className","alt","src","qrCode","Button","onClick","variant","fullWidth","useEnhancedEffect","window","React","ListItem","props","ref","_props$alignItems","_props$autoFocus","autoFocus","_props$button","childrenProp","children","componentProp","component","_props$ContainerCompo","ContainerComponent","_props$ContainerProps","ContainerProps","ContainerClassName","_objectWithoutProperties","_props$dense","dense","_props$disabled","disabled","_props$disableGutters","disableGutters","_props$divider","divider","focusVisibleClassName","_props$selected","selected","other","context","ListContext","childContext","listItemRef","current","focus","toArray","hasSecondaryAction","length","isMuiElement","handleOwnRef","instance","ReactDOM","handleRef","useForkRef","componentProps","_extends","clsx","root","gutters","alignItemsFlexStart","secondaryAction","Component","focusVisible","ButtonBase","Provider","pop","withStyles","theme","textDecoration","boxSizing","palette","action","opacity","borderBottom","concat","backgroundClip","paddingLeft","paddingRight","transition","transitions","create","duration","shortest","hover","name","MenuItem","tabIndex","_props$component","ListItemClasses","_props$role","role","tabIndexProp","undefined","typography","body1","_defineProperty","minHeight","overflow","whiteSpace","breakpoints","up","body2","getFormControlLabelUtilityClasses","slot","generateUtilityClass","formControlLabelClasses","generateUtilityClasses","_excluded","FormControlLabelRoot","styled","overridesResolver","styles","ownerState","label","capitalize","labelPlacement","cursor","verticalAlign","WebkitTapHighlightColor","marginLeft","marginRight","text","FormControlLabel","inProps","useThemeProps","componentsProps","control","disabledProp","disableTypography","_objectWithoutPropertiesLoose","muiFormControl","useFormControl","controlProps","forEach","key","fcs","formControlState","states","error","slots","composeClasses","useUtilityClasses","_jsxs","type","Typography","_jsx","countries","titleConfirm","fontWeight","buttonQR","buttonNext","textField","Authorization","handleIsCheck","handleSendCode","number","setNumber","setCountry","isChecked","isValidCredentials","handleTextField","e","target","code","find","el","TextField","id","defaultValue","select","onChange","map","Checkbox","checked","inputProps","buttonSubmit","SMSCode","handleIsValidCode","handleResetState","monkeyPng","IconButton","size","aria-label","ListItemIcon","minWidth","active","flexShrink","ListItemText","_props$disableTypogra","_props$inset","inset","primaryProp","primary","primaryTypographyProps","secondaryProp","secondary","secondaryTypographyProps","multiline","flex","dropZone","padding","outline","dropZoneActive","UploadAvatar","setUpload","upload","setSelfie","useDropzone","accept","acceptedFiles","getRootProps","getInputProps","useEffect","InputLabel","fontSize","sx","selfieWrapper","overlay","top","zIndex","overflowY","capturedPicture","border","capturePhoto","animation","transform","Registration","useState","setName","lastName","setLastName","selfie","camera","setCamera","dispatch","useDispatch","format","handleUpdateUser","a","asyncCreateUser","fetch","then","res","blob","imgFile","File","style","path","audio","screenshotFormat","videoConstraints","facingMode","getScreenshot","playNotification","prodBaseURL","visibility","required","validName","validLastName","AuthPage","isQR","setIsQR","isCode","setIsCode","setIsChecked","isReg","setIsReg","country","asyncLogin","authorizeUser","isCheckedLC","localStorage","setItem","flag","numberLength","split","join","trim","slice"],"mappings":"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","file":"static/js/AuthPage.8bf438db.chunk.js","sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\n\nvar _jsxRuntime = require(\"react/jsx-runtime\");\n\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8l-2-2z\"\n}), 'Folder');\n\nexports.default = _default;","export default __webpack_public_path__ + \"static/media/qrCode_telegram.bb0caf3c.png\";","import qrCode from '../../../img/qrCode_telegram.png'\r\nimport { makeStyles, Button, } from '@material-ui/core'\r\n\r\nconst useStyles = makeStyles({\r\n container: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n alignContent:'center',\r\n flexDirection: 'column',\r\n width: 350,\r\n margin: '0 auto',\r\n paddingTop: 64,\r\n paddingBottom: 24,\r\n },\r\n picture: {\r\n marginBottom: 16,\r\n },\r\n title: {\r\n textAlign: 'center',\r\n marginBottom: 16,\r\n },\r\n titleSpan: {\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignContent: 'center',\r\n alignItems: 'center',\r\n width: 25,\r\n height: 25,\r\n position: 'absolute',\r\n left:780,\r\n backgroundColor: '#5497f0',\r\n borderRadius: '50%',\r\n color: '#ffffff',\r\n },\r\n button: {\r\n marginTop: 20,\r\n height: 50,\r\n color: '#5497f0'\r\n }\r\n})\r\n\r\ninterface IQRCode {\r\n handleIsQR:() => void\r\n}\r\n\r\nconst QRCode = ({ handleIsQR }: IQRCode) => {\r\n\r\n const classes = useStyles()\r\n return (\r\n <div className={classes.container} >\r\n <img className={classes.picture} alt=\"QRCode\" src={qrCode} width='300' height='300' />\r\n <h2 className={classes.title}>Log in to Telegram by QR Code</h2>\r\n <h3 className={classes.title}>\r\n <span className={classes.titleSpan}>1</span>\r\n Open Telegram on your phone\r\n </h3>\r\n <h3 className={classes.title}>\r\n <span className={classes.titleSpan}>2</span>\r\n {`Go to Settings > Devices > Link Desktop Device`}\r\n </h3>\r\n <h3 className={classes.title}>\r\n <span className={classes.titleSpan}>3</span>\r\n Log in to Telegram by QR Code\r\n </h3>\r\n <Button onClick={handleIsQR}\r\n className={classes.button}\r\n variant=\"text\"\r\n color=\"default\"\r\n fullWidth>\r\n LOG IN BY PHONE NUMBER\r\n </Button>\r\n </div>\r\n );\r\n};\r\n\r\nexport default QRCode;","export default __webpack_public_path__ + \"static/media/icons8-telegram-app.be023370.svg\";","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 { chainPropTypes } from '@material-ui/utils';\nimport withStyles from '../styles/withStyles';\nimport ButtonBase from '../ButtonBase';\nimport isMuiElement from '../utils/isMuiElement';\nimport useForkRef from '../utils/useForkRef';\nimport ListContext from '../List/ListContext';\nimport * as ReactDOM from 'react-dom';\nexport var styles = function styles(theme) {\n return {\n /* Styles applied to the (normally root) `component` element. May be wrapped by a `container`. */\n root: {\n display: 'flex',\n justifyContent: 'flex-start',\n alignItems: 'center',\n position: 'relative',\n textDecoration: 'none',\n width: '100%',\n boxSizing: 'border-box',\n textAlign: 'left',\n paddingTop: 8,\n paddingBottom: 8,\n '&$focusVisible': {\n backgroundColor: theme.palette.action.selected\n },\n '&$selected, &$selected:hover': {\n backgroundColor: theme.palette.action.selected\n },\n '&$disabled': {\n opacity: 0.5\n }\n },\n\n /* Styles applied to the `container` element if `children` includes `ListItemSecondaryAction`. */\n container: {\n position: 'relative'\n },\n\n /* Pseudo-class applied to the `component`'s `focusVisibleClassName` prop if `button={true}`. */\n focusVisible: {},\n\n /* Styles applied to the `component` element if dense. */\n dense: {\n paddingTop: 4,\n paddingBottom: 4\n },\n\n /* Styles applied to the `component` element if `alignItems=\"flex-start\"`. */\n alignItemsFlexStart: {\n alignItems: 'flex-start'\n },\n\n /* Pseudo-class applied to the inner `component` element if `disabled={true}`. */\n disabled: {},\n\n /* Styles applied to the inner `component` element if `divider={true}`. */\n divider: {\n borderBottom: \"1px solid \".concat(theme.palette.divider),\n backgroundClip: 'padding-box'\n },\n\n /* Styles applied to the inner `component` element if `disableGutters={false}`. */\n gutters: {\n paddingLeft: 16,\n paddingRight: 16\n },\n\n /* Styles applied to the inner `component` element if `button={true}`. */\n button: {\n transition: theme.transitions.create('background-color', {\n duration: theme.transitions.duration.shortest\n }),\n '&:hover': {\n textDecoration: 'none',\n backgroundColor: theme.palette.action.hover,\n // Reset on touch devices, it doesn't add specificity\n '@media (hover: none)': {\n backgroundColor: 'transparent'\n }\n }\n },\n\n /* Styles applied to the `component` element if `children` includes `ListItemSecondaryAction`. */\n secondaryAction: {\n // Add some space to avoid collision as `ListItemSecondaryAction`\n // is absolutely positioned.\n paddingRight: 48\n },\n\n /* Pseudo-class applied to the root element if `selected={true}`. */\n selected: {}\n };\n};\nvar useEnhancedEffect = typeof window === 'undefined' ? React.useEffect : React.useLayoutEffect;\n/**\n * Uses an additional container component if `ListItemSecondaryAction` is the last child.\n */\n\nvar ListItem = /*#__PURE__*/React.forwardRef(function ListItem(props, ref) {\n var _props$alignItems = props.alignItems,\n alignItems = _props$alignItems === void 0 ? 'center' : _props$alignItems,\n _props$autoFocus = props.autoFocus,\n autoFocus = _props$autoFocus === void 0 ? false : _props$autoFocus,\n _props$button = props.button,\n button = _props$button === void 0 ? false : _props$button,\n childrenProp = props.children,\n classes = props.classes,\n className = props.className,\n componentProp = props.component,\n _props$ContainerCompo = props.ContainerComponent,\n ContainerComponent = _props$ContainerCompo === void 0 ? 'li' : _props$ContainerCompo,\n _props$ContainerProps = props.ContainerProps;\n _props$ContainerProps = _props$ContainerProps === void 0 ? {} : _props$ContainerProps;\n\n var ContainerClassName = _props$ContainerProps.className,\n ContainerProps = _objectWithoutProperties(_props$ContainerProps, [\"className\"]),\n _props$dense = props.dense,\n dense = _props$dense === void 0 ? false : _props$dense,\n _props$disabled = props.disabled,\n disabled = _props$disabled === void 0 ? false : _props$disabled,\n _props$disableGutters = props.disableGutters,\n disableGutters = _props$disableGutters === void 0 ? false : _props$disableGutters,\n _props$divider = props.divider,\n divider = _props$divider === void 0 ? false : _props$divider,\n focusVisibleClassName = props.focusVisibleClassName,\n _props$selected = props.selected,\n selected = _props$selected === void 0 ? false : _props$selected,\n other = _objectWithoutProperties(props, [\"alignItems\", \"autoFocus\", \"button\", \"children\", \"classes\", \"className\", \"component\", \"ContainerComponent\", \"ContainerProps\", \"dense\", \"disabled\", \"disableGutters\", \"divider\", \"focusVisibleClassName\", \"selected\"]);\n\n var context = React.useContext(ListContext);\n var childContext = {\n dense: dense || context.dense || false,\n alignItems: alignItems\n };\n var listItemRef = React.useRef(null);\n useEnhancedEffect(function () {\n if (autoFocus) {\n if (listItemRef.current) {\n listItemRef.current.focus();\n } else if (process.env.NODE_ENV !== 'production') {\n console.error('Material-UI: Unable to set focus to a ListItem whose component has not been rendered.');\n }\n }\n }, [autoFocus]);\n var children = React.Children.toArray(childrenProp);\n var hasSecondaryAction = children.length && isMuiElement(children[children.length - 1], ['ListItemSecondaryAction']);\n var handleOwnRef = React.useCallback(function (instance) {\n // #StrictMode ready\n listItemRef.current = ReactDOM.findDOMNode(instance);\n }, []);\n var handleRef = useForkRef(handleOwnRef, ref);\n\n var componentProps = _extends({\n className: clsx(classes.root, className, childContext.dense && classes.dense, !disableGutters && classes.gutters, divider && classes.divider, disabled && classes.disabled, button && classes.button, alignItems !== \"center\" && classes.alignItemsFlexStart, hasSecondaryAction && classes.secondaryAction, selected && classes.selected),\n disabled: disabled\n }, other);\n\n var Component = componentProp || 'li';\n\n if (button) {\n componentProps.component = componentProp || 'div';\n componentProps.focusVisibleClassName = clsx(classes.focusVisible, focusVisibleClassName);\n Component = ButtonBase;\n }\n\n if (hasSecondaryAction) {\n // Use div by default.\n Component = !componentProps.component && !componentProp ? 'div' : Component; // Avoid nesting of li > li.\n\n if (ContainerComponent === 'li') {\n if (Component === 'li') {\n Component = 'div';\n } else if (componentProps.component === 'li') {\n componentProps.component = 'div';\n }\n }\n\n return /*#__PURE__*/React.createElement(ListContext.Provider, {\n value: childContext\n }, /*#__PURE__*/React.createElement(ContainerComponent, _extends({\n className: clsx(classes.container, ContainerClassName),\n ref: handleRef\n }, ContainerProps), /*#__PURE__*/React.createElement(Component, componentProps, children), children.pop()));\n }\n\n return /*#__PURE__*/React.createElement(ListContext.Provider, {\n value: childContext\n }, /*#__PURE__*/React.createElement(Component, _extends({\n ref: handleRef\n }, componentProps), children));\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItem.propTypes = {\n /**\n * Defines the `align-items` style property.\n */\n alignItems: PropTypes.oneOf(['flex-start', 'center']),\n\n /**\n * If `true`, the list item will be focused during the first mount.\n * Focus will also be triggered if the value changes from false to true.\n */\n autoFocus: PropTypes.bool,\n\n /**\n * If `true`, the list item will be a button (using `ButtonBase`). Props intended\n * for `ButtonBase` can then be applied to `ListItem`.\n */\n button: PropTypes.bool,\n\n /**\n * The content of the component. If a `ListItemSecondaryAction` is used it must\n * be the last child.\n */\n children: chainPropTypes(PropTypes.node, function (props) {\n var children = React.Children.toArray(props.children); // React.Children.toArray(props.children).findLastIndex(isListItemSecondaryAction)\n\n var secondaryActionIndex = -1;\n\n for (var i = children.length - 1; i >= 0; i -= 1) {\n var child = children[i];\n\n if (isMuiElement(child, ['ListItemSecondaryAction'])) {\n secondaryActionIndex = i;\n break;\n }\n } // is ListItemSecondaryAction the last child of ListItem\n\n\n if (secondaryActionIndex !== -1 && secondaryActionIndex !== children.length - 1) {\n return new Error('Material-UI: You used an element after ListItemSecondaryAction. ' + 'For ListItem to detect that it has a secondary action ' + 'you must pass it as the last child to ListItem.');\n }\n\n return null;\n }),\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 component used for the root node.\n * Either a string to use a HTML element or a component.\n * By default, it's a `li` when `button` is `false` and a `div` when `button` is `true`.\n */\n component: PropTypes\n /* @typescript-to-proptypes-ignore */\n .elementType,\n\n /**\n * The container component used when a `ListItemSecondaryAction` is the last child.\n */\n ContainerComponent: PropTypes.elementType,\n\n /**\n * Props applied to the container component if used.\n */\n ContainerProps: PropTypes.object,\n\n /**\n * If `true`, compact vertical padding designed for keyboard and mouse input will be used.\n */\n dense: PropTypes.bool,\n\n /**\n * If `true`, the list item will be disabled.\n */\n disabled: PropTypes.bool,\n\n /**\n * If `true`, the left and right padding is removed.\n */\n disableGutters: PropTypes.bool,\n\n /**\n * If `true`, a 1px light border is added to the bottom of the list item.\n */\n divider: PropTypes.bool,\n\n /**\n * @ignore\n */\n focusVisibleClassName: PropTypes.string,\n\n /**\n * Use to apply selected styling.\n */\n selected: PropTypes.bool\n} : void 0;\nexport default withStyles(styles, {\n name: 'MuiListItem'\n})(ListItem);","import _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport withStyles from '../styles/withStyles';\nimport ListItem from '../ListItem';\nexport var styles = function styles(theme) {\n return {\n /* Styles applied to the root element. */\n root: _extends({}, theme.typography.body1, _defineProperty({\n minHeight: 48,\n paddingTop: 6,\n paddingBottom: 6,\n boxSizing: 'border-box',\n width: 'auto',\n overflow: 'hidden',\n whiteSpace: 'nowrap'\n }, theme.breakpoints.up('sm'), {\n minHeight: 'auto'\n })),\n // TODO v5: remove\n\n /* Styles applied to the root element if `disableGutters={false}`. */\n gutters: {},\n\n /* Styles applied to the root element if `selected={true}`. */\n selected: {},\n\n /* Styles applied to the root element if dense. */\n dense: _extends({}, theme.typography.body2, {\n minHeight: 'auto'\n })\n };\n};\nvar MenuItem = /*#__PURE__*/React.forwardRef(function MenuItem(props, ref) {\n var classes = props.classes,\n className = props.className,\n _props$component = props.component,\n component = _props$component === void 0 ? 'li' : _props$component,\n _props$disableGutters = props.disableGutters,\n disableGutters = _props$disableGutters === void 0 ? false : _props$disableGutters,\n ListItemClasses = props.ListItemClasses,\n _props$role = props.role,\n role = _props$role === void 0 ? 'menuitem' : _props$role,\n selected = props.selected,\n tabIndexProp = props.tabIndex,\n other = _objectWithoutProperties(props, [\"classes\", \"className\", \"component\", \"disableGutters\", \"ListItemClasses\", \"role\", \"selected\", \"tabIndex\"]);\n\n var tabIndex;\n\n if (!props.disabled) {\n tabIndex = tabIndexProp !== undefined ? tabIndexProp : -1;\n }\n\n return /*#__PURE__*/React.createElement(ListItem, _extends({\n button: true,\n role: role,\n tabIndex: tabIndex,\n component: component,\n selected: selected,\n disableGutters: disableGutters,\n classes: _extends({\n dense: classes.dense\n }, ListItemClasses),\n className: clsx(classes.root, className, selected && classes.selected, !disableGutters && classes.gutters),\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? MenuItem.propTypes = {\n /**\n * Menu item contents.\n */\n children: PropTypes.node,\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 component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes\n /* @typescript-to-proptypes-ignore */\n .elementType,\n\n /**\n * If `true`, compact vertical padding designed for keyboard and mouse input will be used.\n */\n dense: PropTypes.bool,\n\n /**\n * @ignore\n */\n disabled: PropTypes.bool,\n\n /**\n * If `true`, the left and right padding is removed.\n */\n disableGutters: PropTypes.bool,\n\n /**\n * `classes` prop applied to the [`ListItem`](/api/list-item/) element.\n */\n ListItemClasses: PropTypes.object,\n\n /**\n * @ignore\n */\n role: PropTypes.string,\n\n /**\n * @ignore\n */\n selected: PropTypes.bool,\n\n /**\n * @ignore\n */\n tabIndex: PropTypes.number\n} : void 0;\nexport default withStyles(styles, {\n name: 'MuiMenuItem'\n})(MenuItem);","import { generateUtilityClasses, generateUtilityClass } from '@mui/base';\nexport function getFormControlLabelUtilityClasses(slot) {\n return generateUtilityClass('MuiFormControlLabel', slot);\n}\nconst formControlLabelClasses = generateUtilityClasses('MuiFormControlLabel', ['root', 'labelPlacementStart', 'labelPlacementTop', 'labelPlacementBottom', 'disabled', 'label', 'error']);\nexport default formControlLabelClasses;","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"checked\", \"className\", \"componentsProps\", \"control\", \"disabled\", \"disableTypography\", \"inputRef\", \"label\", \"labelPlacement\", \"name\", \"onChange\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { refType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses } from '@mui/base';\nimport { useFormControl } from '../FormControl';\nimport Typography from '../Typography';\nimport capitalize from '../utils/capitalize';\nimport styled from '../styles/styled';\nimport useThemeProps from '../styles/useThemeProps';\nimport formControlLabelClasses, { getFormControlLabelUtilityClasses } from './formControlLabelClasses';\nimport formControlState from '../FormControl/formControlState';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\n\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n disabled,\n labelPlacement,\n error\n } = ownerState;\n const slots = {\n root: ['root', disabled && 'disabled', `labelPlacement${capitalize(labelPlacement)}`, error && 'error'],\n label: ['label', disabled && 'disabled']\n };\n return composeClasses(slots, getFormControlLabelUtilityClasses, classes);\n};\n\nexport const FormControlLabelRoot = styled('label', {\n name: 'MuiFormControlLabel',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [{\n [`& .${formControlLabelClasses.label}`]: styles.label\n }, styles.root, styles[`labelPlacement${capitalize(ownerState.labelPlacement)}`]];\n }\n})(({\n theme,\n ownerState\n}) => _extends({\n display: 'inline-flex',\n alignItems: 'center',\n cursor: 'pointer',\n // For correct alignment with the text.\n verticalAlign: 'middle',\n WebkitTapHighlightColor: 'transparent',\n marginLeft: -11,\n marginRight: 16,\n // used for row presentation of radio/checkbox\n [`&.${formControlLabelClasses.disabled}`]: {\n cursor: 'default'\n }\n}, ownerState.labelPlacement === 'start' && {\n flexDirection: 'row-reverse',\n marginLeft: 16,\n // used for row presentation of radio/checkbox\n marginRight: -11\n}, ownerState.labelPlacement === 'top' && {\n flexDirection: 'column-reverse',\n marginLeft: 16\n}, ownerState.labelPlacement === 'bottom' && {\n flexDirection: 'column',\n marginLeft: 16\n}, {\n [`& .${formControlLabelClasses.label}`]: {\n [`&.${formControlLabelClasses.disabled}`]: {\n color: theme.palette.text.disabled\n }\n }\n}));\n/**\n * Drop-in replacement of the `Radio`, `Switch` and `Checkbox` component.\n * Use this component if you want to display an extra label.\n */\n\nconst FormControlLabel = /*#__PURE__*/React.forwardRef(function FormControlLabel(inProps, ref) {\n const props = useThemeProps({\n props: inProps,\n name: 'MuiFormControlLabel'\n });\n\n const {\n className,\n componentsProps = {},\n control,\n disabled: disabledProp,\n disableTypography,\n label,\n labelPlacement = 'end'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n\n const muiFormControl = useFormControl();\n let disabled = disabledProp;\n\n if (typeof disabled === 'undefined' && typeof control.props.disabled !== 'undefined') {\n disabled = control.props.disabled;\n }\n\n if (typeof disabled === 'undefined' && muiFormControl) {\n disabled = muiFormControl.disabled;\n }\n\n const controlProps = {\n disabled\n };\n ['checked', 'name', 'onChange', 'value', 'inputRef'].forEach(key => {\n if (typeof control.props[key] === 'undefined' && typeof props[key] !== 'undefined') {\n controlProps[key] = props[key];\n }\n });\n const fcs = formControlState({\n props,\n muiFormControl,\n states: ['error']\n });\n\n const ownerState = _extends({}, props, {\n disabled,\n label,\n labelPlacement,\n error: fcs.error\n });\n\n const classes = useUtilityClasses(ownerState);\n return /*#__PURE__*/_jsxs(FormControlLabelRoot, _extends({\n className: clsx(classes.root, className),\n ownerState: ownerState,\n ref: ref\n }, other, {\n children: [/*#__PURE__*/React.cloneElement(control, controlProps), label.type === Typography || disableTypography ? label : /*#__PURE__*/_jsx(Typography, _extends({\n component: \"span\",\n className: classes.label\n }, componentsProps.typography, {\n children: label\n }))]\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? FormControlLabel.propTypes\n/* remove-proptypes */\n= {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n\n /**\n * If `true`, the component appears selected.\n */\n checked: PropTypes.bool,\n\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n\n /**\n * @ignore\n */\n className: PropTypes.string,\n\n /**\n * The props used for each slot inside.\n * @default {}\n */\n componentsProps: PropTypes.shape({\n typography: PropTypes.object\n }),\n\n /**\n * A control element. For instance, it can be a `Radio`, a `Switch` or a `Checkbox`.\n */\n control: PropTypes.element.isRequired,\n\n /**\n * If `true`, the control is disabled.\n */\n disabled: PropTypes.bool,\n\n /**\n * If `true`, the label is rendered as it is passed without an additional typography node.\n */\n disableTypography: PropTypes.bool,\n\n /**\n * Pass a ref to the `input` element.\n */\n inputRef: refType,\n\n /**\n * A text or an element to be used in an enclosing label element.\n */\n label: PropTypes.oneOfType([PropTypes.element, PropTypes.number, PropTypes.string]).isRequired,\n\n /**\n * The position of the label.\n * @default 'end'\n */\n labelPlacement: PropTypes.oneOf(['bottom', 'end', 'start', 'top']),\n\n /**\n * @ignore\n */\n name: PropTypes.string,\n\n /**\n * Callback fired when the state is changed.\n *\n * @param {React.SyntheticEvent} event The event source of the callback.\n * You can pull out the new checked state by accessing `event.target.checked` (boolean).\n */\n onChange: PropTypes.func,\n\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n\n /**\n * The value of the component.\n */\n value: PropTypes.any\n} : void 0;\nexport default FormControlLabel;","export const countries = [\r\n {\r\n \"code\": \"+7 840\",\r\n \"name\": \"Abkhazia\"\r\n },\r\n {\r\n \"code\": \"+93\",\r\n \"name\": \"Afghanistan\"\r\n },\r\n {\r\n \"code\": \"+355\",\r\n \"name\": \"Albania\"\r\n },\r\n {\r\n \"code\": \"+213\",\r\n \"name\": \"Algeria\"\r\n },\r\n {\r\n \"code\": \"+1 684\",\r\n \"name\": \"American Samoa\"\r\n },\r\n {\r\n \"code\": \"+376\",\r\n \"name\": \"Andorra\"\r\n },\r\n {\r\n \"code\": \"+244\",\r\n \"name\": \"Angola\"\r\n },\r\n {\r\n \"code\": \"+1 264\",\r\n \"name\": \"Anguilla\"\r\n },\r\n {\r\n \"code\": \"+1 268\",\r\n \"name\": \"Antigua and Barbuda\"\r\n },\r\n {\r\n \"code\": \"+54\",\r\n \"name\": \"Argentina\"\r\n },\r\n {\r\n \"code\": \"+374\",\r\n \"name\": \"Armenia\"\r\n },\r\n {\r\n \"code\": \"+297\",\r\n \"name\": \"Aruba\"\r\n },\r\n {\r\n \"code\": \"+247\",\r\n \"name\": \"Ascension\"\r\n },\r\n {\r\n \"code\": \"+61\",\r\n \"name\": \"Australia\"\r\n },\r\n {\r\n \"code\": \"+672\",\r\n \"name\": \"Australian External Territories\"\r\n },\r\n {\r\n \"code\": \"+43\",\r\n \"name\": \"Austria\"\r\n },\r\n {\r\n \"code\": \"+994\",\r\n \"name\": \"Azerbaijan\"\r\n },\r\n {\r\n \"code\": \"+1 242\",\r\n \"name\": \"Bahamas\"\r\n },\r\n {\r\n \"code\": \"+973\",\r\n \"name\": \"Bahrain\"\r\n },\r\n {\r\n \"code\": \"+880\",\r\n \"name\": \"Bangladesh\"\r\n },\r\n {\r\n \"code\": \"+1 246\",\r\n \"name\": \"Barbados\"\r\n },\r\n {\r\n \"code\": \"+1 268\",\r\n \"name\": \"Barbuda\"\r\n },\r\n {\r\n \"code\": \"+375\",\r\n \"name\": \"Belarus\"\r\n },\r\n {\r\n \"code\": \"+32\",\r\n \"name\": \"Belgium\"\r\n },\r\n {\r\n \"code\": \"+501\",\r\n \"name\": \"Belize\"\r\n },\r\n {\r\n \"code\": \"+229\",\r\n \"name\": \"Benin\"\r\n },\r\n {\r\n \"code\": \"+1 441\",\r\n \"name\": \"Bermuda\"\r\n },\r\n {\r\n \"code\": \"+975\",\r\n \"name\": \"Bhutan\"\r\n },\r\n {\r\n \"code\": \"+591\",\r\n \"name\": \"Bolivia\"\r\n },\r\n {\r\n \"code\": \"+387\",\r\n \"name\": \"Bosnia and Herzegovina\"\r\n },\r\n {\r\n \"code\": \"+267\",\r\n \"name\": \"Botswana\"\r\n },\r\n {\r\n \"code\": \"+55\",\r\n \"name\": \"Brazil\"\r\n },\r\n {\r\n \"code\": \"+246\",\r\n \"name\": \"British Indian Ocean Territory\"\r\n },\r\n {\r\n \"code\": \"+1 284\",\r\n \"name\": \"British Virgin Islands\"\r\n },\r\n {\r\n \"code\": \"+673\",\r\n \"name\": \"Brunei\"\r\n },\r\n {\r\n \"code\": \"+359\",\r\n \"name\": \"Bulgaria\"\r\n },\r\n {\r\n \"code\": \"+226\",\r\n \"name\": \"Burkina Faso\"\r\n },\r\n {\r\n \"code\": \"+257\",\r\n \"name\": \"Burundi\"\r\n },\r\n {\r\n \"code\": \"+855\",\r\n \"name\": \"Cambodia\"\r\n },\r\n {\r\n \"code\": \"+237\",\r\n \"name\": \"Cameroon\"\r\n },\r\n {\r\n \"code\": \"+1\",\r\n \"name\": \"Canada\"\r\n },\r\n {\r\n \"code\": \"+238\",\r\n \"name\": \"Cape Verde\"\r\n },\r\n {\r\n \"code\": \"+ 345\",\r\n \"name\": \"Cayman Islands\"\r\n },\r\n {\r\n \"code\": \"+236\",\r\n \"name\": \"Central African Republic\"\r\n },\r\n {\r\n \"code\": \"+235\",\r\n \"name\": \"Chad\"\r\n },\r\n {\r\n \"code\": \"+56\",\r\n \"name\": \"Chile\"\r\n },\r\n {\r\n \"code\": \"+86\",\r\n \"name\": \"China\"\r\n },\r\n {\r\n \"code\": \"+61\",\r\n \"name\": \"Christmas Island\"\r\n },\r\n {\r\n \"code\": \"+61\",\r\n \"name\": \"Cocos-Keeling Islands\"\r\n },\r\n {\r\n \"code\": \"+57\",\r\n \"name\": \"Colombia\"\r\n },\r\n {\r\n \"code\": \"+269\",\r\n \"name\": \"Comoros\"\r\n },\r\n {\r\n \"code\": \"+242\",\r\n \"name\": \"Congo\"\r\n },\r\n {\r\n \"code\": \"+243\",\r\n \"name\": \"Congo, Dem. Rep. of (Zaire)\"\r\n },\r\n {\r\n \"code\": \"+682\",\r\n \"name\": \"Cook Islands\"\r\n },\r\n {\r\n \"code\": \"+506\",\r\n \"name\": \"Costa Rica\"\r\n },\r\n {\r\n \"code\": \"+385\",\r\n \"name\": \"Croatia\"\r\n },\r\n {\r\n \"code\": \"+53\",\r\n \"name\": \"Cuba\"\r\n },\r\n {\r\n \"code\": \"+599\",\r\n \"name\": \"Curacao\"\r\n },\r\n {\r\n \"code\": \"+537\",\r\n \"name\": \"Cyprus\"\r\n },\r\n {\r\n \"code\": \"+420\",\r\n \"name\": \"Czech Republic\"\r\n },\r\n {\r\n \"code\": \"+45\",\r\n \"name\": \"Denmark\"\r\n },\r\n {\r\n \"code\": \"+246\",\r\n \"name\": \"Diego Garcia\"\r\n },\r\n {\r\n \"code\": \"+253\",\r\n \"name\": \"Djibouti\"\r\n },\r\n {\r\n \"code\": \"+1 767\",\r\n \"name\": \"Dominica\"\r\n },\r\n {\r\n \"code\": \"+1 809\",\r\n \"name\": \"Dominican Republic\"\r\n },\r\n {\r\n \"code\": \"+670\",\r\n \"name\": \"East Timor\"\r\n },\r\n {\r\n \"code\": \"+56\",\r\n \"name\": \"Easter Island\"\r\n },\r\n {\r\n \"code\": \"+593\",\r\n \"name\": \"Ecuador\"\r\n },\r\n {\r\n \"code\": \"+20\",\r\n \"name\": \"Egypt\"\r\n },\r\n {\r\n \"code\": \"+503\",\r\n \"name\": \"El Salvador\"\r\n },\r\n {\r\n \"code\": \"+240\",\r\n \"name\": \"Equatorial Guinea\"\r\n },\r\n {\r\n \"code\": \"+291\",\r\n \"name\": \"Eritrea\"\r\n },\r\n {\r\n \"code\": \"+372\",\r\n \"name\": \"Estonia\"\r\n },\r\n {\r\n \"code\": \"+251\",\r\n \"name\": \"Ethiopia\"\r\n },\r\n {\r\n \"code\": \"+500\",\r\n \"name\": \"Falkland Islands\"\r\n },\r\n {\r\n \"code\": \"+298\",\r\n \"name\": \"Faroe Islands\"\r\n },\r\n {\r\n \"code\": \"+679\",\r\n \"name\": \"Fiji\"\r\n },\r\n {\r\n \"code\": \"+358\",\r\n \"name\": \"Finland\"\r\n },\r\n {\r\n \"code\": \"+33\",\r\n \"name\": \"France\"\r\n },\r\n {\r\n \"code\": \"+596\",\r\n \"name\": \"French Antilles\"\r\n },\r\n {\r\n \"code\": \"+594\",\r\n \"name\": \"French Guiana\"\r\n },\r\n {\r\n \"code\": \"+689\",\r\n \"name\": \"French Polynesia\"\r\n },\r\n {\r\n \"code\": \"+241\",\r\n \"name\": \"Gabon\"\r\n },\r\n {\r\n \"code\": \"+220\",\r\n \"name\": \"Gambia\"\r\n },\r\n {\r\n \"code\": \"+995\",\r\n \"name\": \"Georgia\"\r\n },\r\n {\r\n \"code\": \"+49\",\r\n \"name\": \"Germany\"\r\n },\r\n {\r\n \"code\": \"+233\",\r\n \"name\": \"Ghana\"\r\n },\r\n {\r\n \"code\": \"+350\",\r\n \"name\": \"Gibraltar\"\r\n },\r\n {\r\n \"code\": \"+30\",\r\n \"name\": \"Greece\"\r\n },\r\n {\r\n \"code\": \"+299\",\r\n \"name\": \"Greenland\"\r\n },\r\n {\r\n \"code\": \"+1 473\",\r\n \"name\": \"Grenada\"\r\n },\r\n {\r\n \"code\": \"+590\",\r\n \"name\": \"Guadeloupe\"\r\n },\r\n {\r\n \"code\": \"+1 671\",\r\n \"name\": \"Guam\"\r\n },\r\n {\r\n \"code\": \"+502\",\r\n \"name\": \"Guatemala\"\r\n },\r\n {\r\n \"code\": \"+224\",\r\n \"name\": \"Guinea\"\r\n },\r\n {\r\n \"code\": \"+245\",\r\n \"name\": \"Guinea-Bissau\"\r\n },\r\n {\r\n \"code\": \"+595\",\r\n \"name\": \"Guyana\"\r\n },\r\n {\r\n \"code\": \"+509\",\r\n \"name\": \"Haiti\"\r\n },\r\n {\r\n \"code\": \"+504\",\r\n \"name\": \"Honduras\"\r\n },\r\n {\r\n \"code\": \"+852\",\r\n \"name\": \"Hong Kong SAR China\"\r\n },\r\n {\r\n \"code\": \"+36\",\r\n \"name\": \"Hungary\"\r\n },\r\n {\r\n \"code\": \"+354\",\r\n \"name\": \"Iceland\"\r\n },\r\n {\r\n \"code\": \"+91\",\r\n \"name\": \"India\"\r\n },\r\n {\r\n \"code\": \"+62\",\r\n \"name\": \"Indonesia\"\r\n },\r\n {\r\n \"code\": \"+98\",\r\n \"name\": \"Iran\"\r\n },\r\n {\r\n \"code\": \"+964\",\r\n \"name\": \"Iraq\"\r\n },\r\n {\r\n \"code\": \"+353\",\r\n \"name\": \"Ireland\"\r\n },\r\n {\r\n \"code\": \"+972\",\r\n \"name\": \"Israel\"\r\n },\r\n {\r\n \"code\": \"+39\",\r\n \"name\": \"Italy\"\r\n },\r\n {\r\n \"code\": \"+225\",\r\n \"name\": \"Ivory Coast\"\r\n },\r\n {\r\n \"code\": \"+1 876\",\r\n \"name\": \"Jamaica\"\r\n },\r\n {\r\n \"code\": \"+81\",\r\n \"name\": \"Japan\"\r\n },\r\n {\r\n \"code\": \"+962\",\r\n \"name\": \"Jordan\"\r\n },\r\n {\r\n \"code\": \"+7 7\",\r\n \"name\": \"Kazakhstan\"\r\n },\r\n {\r\n \"code\": \"+254\",\r\n \"name\": \"Kenya\"\r\n },\r\n {\r\n \"code\": \"+686\",\r\n \"name\": \"Kiribati\"\r\n },\r\n {\r\n \"code\": \"+965\",\r\n \"name\": \"Kuwait\"\r\n },\r\n {\r\n \"code\": \"+996\",\r\n \"name\": \"Kyrgyzstan\"\r\n },\r\n {\r\n \"code\": \"+856\",\r\n \"name\": \"Laos\"\r\n },\r\n {\r\n \"code\": \"+371\",\r\n \"name\": \"Latvia\"\r\n },\r\n {\r\n \"code\": \"+961\",\r\n \"name\": \"Lebanon\"\r\n },\r\n {\r\n \"code\": \"+266\",\r\n \"name\": \"Lesotho\"\r\n },\r\n {\r\n \"code\": \"+231\",\r\n \"name\": \"Liberia\"\r\n },\r\n {\r\n \"code\": \"+218\",\r\n \"name\": \"Libya\"\r\n },\r\n {\r\n \"code\": \"+423\",\r\n \"name\": \"Liechtenstein\"\r\n },\r\n {\r\n \"code\": \"+370\",\r\n \"name\": \"Lithuania\"\r\n },\r\n {\r\n \"code\": \"+352\",\r\n \"name\": \"Luxembourg\"\r\n },\r\n {\r\n \"code\": \"+853\",\r\n \"name\": \"Macau SAR China\"\r\n },\r\n {\r\n \"code\": \"+389\",\r\n \"name\": \"Macedonia\"\r\n },\r\n {\r\n \"code\": \"+261\",\r\n \"name\": \"Madagascar\"\r\n },\r\n {\r\n \"code\": \"+265\",\r\n \"name\": \"Malawi\"\r\n },\r\n {\r\n \"code\": \"+60\",\r\n \"name\": \"Malaysia\"\r\n },\r\n {\r\n \"code\": \"+960\",\r\n \"name\": \"Maldives\"\r\n },\r\n {\r\n \"code\": \"+223\",\r\n \"name\": \"Mali\"\r\n },\r\n {\r\n \"code\": \"+356\",\r\n \"name\": \"Malta\"\r\n },\r\n {\r\n \"code\": \"+692\",\r\n \"name\": \"Marshall Islands\"\r\n },\r\n {\r\n \"code\": \"+596\",\r\n \"name\": \"Martinique\"\r\n },\r\n {\r\n \"code\": \"+222\",\r\n \"name\": \"Mauritania\"\r\n },\r\n {\r\n \"code\": \"+230\",\r\n \"name\": \"Mauritius\"\r\n },\r\n {\r\n \"code\": \"+262\",\r\n \"name\": \"Mayotte\"\r\n },\r\n {\r\n \"code\": \"+52\",\r\n \"name\": \"Mexico\"\r\n },\r\n {\r\n \"code\": \"+691\",\r\n \"name\": \"Micronesia\"\r\n },\r\n {\r\n \"code\": \"+1 808\",\r\n \"name\": \"Midway Island\"\r\n },\r\n {\r\n \"code\": \"+373\",\r\n \"name\": \"Moldova\"\r\n },\r\n {\r\n \"code\": \"+377\",\r\n \"name\": \"Monaco\"\r\n },\r\n {\r\n \"code\": \"+976\",\r\n \"name\": \"Mongolia\"\r\n },\r\n {\r\n \"code\": \"+382\",\r\n \"name\": \"Montenegro\"\r\n },\r\n {\r\n \"code\": \"+1664\",\r\n \"name\": \"Montserrat\"\r\n },\r\n {\r\n \"code\": \"+212\",\r\n \"name\": \"Morocco\"\r\n },\r\n {\r\n \"code\": \"+95\",\r\n \"name\": \"Myanmar\"\r\n },\r\n {\r\n \"code\": \"+264\",\r\n \"name\": \"Namibia\"\r\n },\r\n {\r\n \"code\": \"+674\",\r\n \"name\": \"Nauru\"\r\n },\r\n {\r\n \"code\": \"+977\",\r\n \"name\": \"Nepal\"\r\n },\r\n {\r\n \"code\": \"+31\",\r\n \"name\": \"Netherlands\"\r\n },\r\n {\r\n \"code\": \"+599\",\r\n \"name\": \"Netherlands Antilles\"\r\n },\r\n {\r\n \"code\": \"+1 869\",\r\n \"name\": \"Nevis\"\r\n },\r\n {\r\n \"code\": \"+687\",\r\n \"name\": \"New Caledonia\"\r\n },\r\n {\r\n \"code\": \"+64\",\r\n \"name\": \"New Zealand\"\r\n },\r\n {\r\n \"code\": \"+505\",\r\n \"name\": \"Nicaragua\"\r\n },\r\n {\r\n \"code\": \"+227\",\r\n \"name\": \"Niger\"\r\n },\r\n {\r\n \"code\": \"+234\",\r\n \"name\": \"Nigeria\"\r\n },\r\n {\r\n \"code\": \"+683\",\r\n \"name\": \"Niue\"\r\n },\r\n {\r\n \"code\": \"+672\",\r\n \"name\": \"Norfolk Island\"\r\n },\r\n {\r\n \"code\": \"+850\",\r\n \"name\": \"North Korea\"\r\n },\r\n {\r\n \"code\": \"+1 670\",\r\n \"name\": \"Northern Mariana Islands\"\r\n },\r\n {\r\n \"code\": \"+47\",\r\n \"name\": \"Norway\"\r\n },\r\n {\r\n \"code\": \"+968\",\r\n \"name\": \"Oman\"\r\n },\r\n {\r\n \"code\": \"+92\",\r\n \"name\": \"Pakistan\"\r\n },\r\n {\r\n \"code\": \"+680\",\r\n \"name\": \"Palau\"\r\n },\r\n {\r\n \"code\": \"+970\",\r\n \"name\": \"Palestinian Territory\"\r\n },\r\n {\r\n \"code\": \"+507\",\r\n \"name\": \"Panama\"\r\n },\r\n {\r\n \"code\": \"+675\",\r\n \"name\": \"Papua New Guinea\"\r\n },\r\n {\r\n \"code\": \"+595\",\r\n \"name\": \"Paraguay\"\r\n },\r\n {\r\n \"code\": \"+51\",\r\n \"name\": \"Peru\"\r\n },\r\n {\r\n \"code\": \"+63\",\r\n \"name\": \"Philippines\"\r\n },\r\n {\r\n \"code\": \"+48\",\r\n \"name\": \"Poland\"\r\n },\r\n {\r\n \"code\": \"+351\",\r\n \"name\": \"Portugal\"\r\n },\r\n {\r\n \"code\": \"+1 787\",\r\n \"name\": \"Puerto Rico\"\r\n },\r\n {\r\n \"code\": \"+974\",\r\n \"name\": \"Qatar\"\r\n },\r\n {\r\n \"code\": \"+262\",\r\n \"name\": \"Reunion\"\r\n },\r\n {\r\n \"code\": \"+40\",\r\n \"name\": \"Romania\"\r\n },\r\n {\r\n \"code\": \"+7\",\r\n \"name\": \"Russia\"\r\n },\r\n {\r\n \"code\": \"+250\",\r\n \"name\": \"Rwanda\"\r\n },\r\n {\r\n \"code\": \"+685\",\r\n \"name\": \"Samoa\"\r\n },\r\n {\r\n \"code\": \"+378\",\r\n \"name\": \"San Marino\"\r\n },\r\n {\r\n \"code\": \"+966\",\r\n \"name\": \"Saudi Arabia\"\r\n },\r\n {\r\n \"code\": \"+221\",\r\n \"name\": \"Senegal\"\r\n },\r\n {\r\n \"code\": \"+381\",\r\n \"name\": \"Serbia\"\r\n },\r\n {\r\n \"code\": \"+248\",\r\n \"name\": \"Seychelles\"\r\n },\r\n {\r\n \"code\": \"+232\",\r\n \"name\": \"Sierra Leone\"\r\n },\r\n {\r\n \"code\": \"+65\",\r\n \"name\": \"Singapore\"\r\n },\r\n {\r\n \"code\": \"+421\",\r\n \"name\": \"Slovakia\"\r\n },\r\n {\r\n \"code\": \"+386\",\r\n \"name\": \"Slovenia\"\r\n },\r\n {\r\n \"code\": \"+677\",\r\n \"name\": \"Solomon Islands\"\r\n },\r\n {\r\n \"code\": \"+27\",\r\n \"name\": \"South Africa\"\r\n },\r\n {\r\n \"code\": \"+500\",\r\n \"name\": \"South Georgia and the South Sandwich Islands\"\r\n },\r\n {\r\n \"code\": \"+82\",\r\n \"name\": \"South Korea\"\r\n },\r\n {\r\n \"code\": \"+34\",\r\n \"name\": \"Spain\"\r\n },\r\n {\r\n \"code\": \"+94\",\r\n \"name\": \"Sri Lanka\"\r\n },\r\n {\r\n \"code\": \"+249\",\r\n \"name\": \"Sudan\"\r\n },\r\n {\r\n \"code\": \"+597\",\r\n \"name\": \"Suriname\"\r\n },\r\n {\r\n \"code\": \"+268\",\r\n \"name\": \"Swaziland\"\r\n },\r\n {\r\n \"code\": \"+46\",\r\n \"name\": \"Sweden\"\r\n },\r\n {\r\n \"code\": \"+41\",\r\n \"name\": \"Switzerland\"\r\n },\r\n {\r\n \"code\": \"+963\",\r\n \"name\": \"Syria\"\r\n },\r\n {\r\n \"code\": \"+886\",\r\n \"name\": \"Taiwan\"\r\n },\r\n {\r\n \"code\": \"+992\",\r\n \"name\": \"Tajikistan\"\r\n },\r\n {\r\n \"code\": \"+255\",\r\n \"name\": \"Tanzania\"\r\n },\r\n {\r\n \"code\": \"+66\",\r\n \"name\": \"Thailand\"\r\n },\r\n {\r\n \"code\": \"+670\",\r\n \"name\": \"Timor Leste\"\r\n },\r\n {\r\n \"code\": \"+228\",\r\n \"name\": \"Togo\"\r\n },\r\n {\r\n \"code\": \"+690\",\r\n \"name\": \"Tokelau\"\r\n },\r\n {\r\n \"code\": \"+676\",\r\n \"name\": \"Tonga\"\r\n },\r\n {\r\n \"code\": \"+1 868\",\r\n \"name\": \"Trinidad and Tobago\"\r\n },\r\n {\r\n \"code\": \"+216\",\r\n \"name\": \"Tunisia\"\r\n },\r\n {\r\n \"code\": \"+90\",\r\n \"name\": \"Turkey\"\r\n },\r\n {\r\n \"code\": \"+993\",\r\n \"name\": \"Turkmenistan\"\r\n },\r\n {\r\n \"code\": \"+1 649\",\r\n \"name\": \"Turks and Caicos Islands\"\r\n },\r\n {\r\n \"code\": \"+688\",\r\n \"name\": \"Tuvalu\"\r\n },\r\n {\r\n \"code\": \"+1 340\",\r\n \"name\": \"U.S. Virgin Islands\"\r\n },\r\n {\r\n \"code\": \"+256\",\r\n \"name\": \"Uganda\"\r\n },\r\n {\r\n \"code\": \"+380\",\r\n \"name\": \"Ukraine\"\r\n },\r\n {\r\n \"code\": \"+971\",\r\n \"name\": \"United Arab Emirates\"\r\n },\r\n {\r\n \"code\": \"+44\",\r\n \"name\": \"United Kingdom\"\r\n },\r\n {\r\n \"code\": \"+1\",\r\n \"name\": \"United States\"\r\n },\r\n {\r\n \"code\": \"+598\",\r\n \"name\": \"Uruguay\"\r\n },\r\n {\r\n \"code\": \"+998\",\r\n \"name\": \"Uzbekistan\"\r\n },\r\n {\r\n \"code\": \"+678\",\r\n \"name\": \"Vanuatu\"\r\n },\r\n {\r\n \"code\": \"+58\",\r\n \"name\": \"Venezuela\"\r\n },\r\n {\r\n \"code\": \"+84\",\r\n \"name\": \"Vietnam\"\r\n },\r\n {\r\n \"code\": \"+1 808\",\r\n \"name\": \"Wake Island\"\r\n },\r\n {\r\n \"code\": \"+681\",\r\n \"name\": \"Wallis and Futuna\"\r\n },\r\n {\r\n \"code\": \"+967\",\r\n \"name\": \"Yemen\"\r\n },\r\n {\r\n \"code\": \"+260\",\r\n \"name\": \"Zambia\"\r\n },\r\n {\r\n \"code\": \"+255\",\r\n \"name\": \"Zanzibar\"\r\n },\r\n {\r\n \"code\": \"+263\",\r\n \"name\": \"Zimbabwe\"\r\n }\r\n]","import qrCode from '../../../img/icons8-telegram-app.svg'\nimport { makeStyles, Button, TextField, MenuItem } from '@material-ui/core'\nimport Checkbox from '@mui/material/Checkbox';\nimport FormControlLabel from '@mui/material/FormControlLabel';\nimport React from 'react';\n\nimport { countries } from '../../../helpers/countries'\n\nconst useStyles = makeStyles({\n container: {\n display: 'flex',\n alignItems: 'center',\n alignContent:'center',\n flexDirection: 'column',\n width: 350,\n margin: '0 auto',\n paddingTop: 64,\n paddingBottom: 24,\n },\n picture: {\n marginBottom: 16,\n paddingLeft: 45\n },\n title: {\n textAlign: 'center',\n marginBottom: 16,\n },\n titleConfirm: {\n color: '#b4b4b4',\n fontWeight:400\n },\n buttonQR: {\n marginTop: 20,\n height: 50,\n color: '#5497f0'\n },\n buttonNext: {\n marginTop: 20,\n height: 50,\n color: '#f8f8f8',\n backgroundColor:'#1d74c5',\n },\n textField: {\n marginBottom:20\n },\n})\n\ninterface IAuthorizationForm {\n handleIsQR: () => void,\n handleIsCheck:(e:React.ChangeEvent<HTMLInputElement>) => void\n handleSendCode: () => Promise<void>,\n number:string,\n setNumber: React.Dispatch<React.SetStateAction<string>>,\n setCountry: React.Dispatch<React.SetStateAction<string>>,\n isChecked: boolean,\n isValidCredentials: () => boolean\n}\n\ninterface ICountry {\n name: string,\n code: string\n}\n\nconst Authorization = ({\n handleIsQR,\n handleIsCheck,\n handleSendCode,\n number,\n setNumber,\n setCountry,\n isChecked,\n isValidCredentials\n}: IAuthorizationForm) => {\n const classes = useStyles()\n\n const handleTextField = (e: React.ChangeEvent<HTMLInputElement>) => {\n const value = e.target.value\n const name = e.target.name\n switch (name) {\n case 'country':\n setCountry(value)\n const code = countries.find(el => el.name === value)?.code\n code&&setNumber(code)\n break;\n case 'number':\n setNumber(value)\n break;\n default:\n break;\n }\n }\n\n return (\n <div className={classes.container}>\n <img className={classes.picture} alt=\"QRCode\" src={qrCode} width='270' height='270' />\n <h2 className={classes.title}>Telegram</h2>\n <h4 className={classes.title + ' ' + classes.titleConfirm}>\n Please confirm your country code and enter your phone number.\n </h4>\n <TextField\n id=\"country\"\n name='country'\n label=\"Country\"\n fullWidth\n variant='outlined'\n defaultValue=''\n select\n className={classes.textField}\n onChange={handleTextField}\n >\n {countries.map(({name}: ICountry) => (\n <MenuItem value={name} key={name}>\n {name}\n </MenuItem>\n ))}\n </TextField>\n <TextField\n id=\"number\"\n name='number'\n label=\"Your phone number\"\n value={number}\n fullWidth\n variant='outlined'\n onChange={handleTextField}\n />\n <FormControlLabel\n label=\"Keep me signed in\"\n control={<Checkbox\n checked={isChecked}\n onChange={handleIsCheck}\n inputProps={{ 'aria-label': 'controlled' }}\n />}\n />\n {isValidCredentials() &&\n <Button\n onClick={handleSendCode}\n className={classes.buttonNext}\n color='primary'\n variant=\"contained\"\n fullWidth>\n NEXT\n </Button>}\n\n <Button\n onClick={handleIsQR}\n className={classes.buttonQR}\n variant=\"text\"\n color=\"default\"\n fullWidth>\n LOG IN BY QR CODE\n </Button>\n </div>\n );\n};\n\nexport default Authorization;","export default __webpack_public_path__ + \"static/media/monkey.ded8ac2a.png\";","import monkeyPng from '../../../img/monkey.png'\r\nimport { makeStyles, TextField, Typography, IconButton } from '@material-ui/core'\r\nimport ModeEditOutlineOutlinedIcon from '@mui/icons-material/ModeEditOutlineOutlined';\r\nimport React from 'react';\r\n\r\nconst useStyles = makeStyles({\r\n container: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n alignContent:'center',\r\n flexDirection: 'column',\r\n width: 350,\r\n margin: '0 auto',\r\n paddingTop: 64,\r\n paddingBottom: 24,\r\n },\r\n picture: {\r\n marginBottom: 70,\r\n },\r\n titleConfirm: {\r\n color: '#b4b4b4',\r\n fontWeight: 400,\r\n textAlign: 'center',\r\n marginBottom: 20,\r\n },\r\n buttonSubmit: {\r\n marginTop: 20,\r\n height: 50,\r\n color: '#5497f0'\r\n },\r\n textField: {\r\n marginBottom:20\r\n },\r\n})\r\n\r\n\r\ninterface ISMSCode {\r\n handleIsValidCode: (e: React.ChangeEvent<HTMLInputElement>) => void,\r\n number: string,\r\n handleResetState: () => void,\r\n}\r\nconst SMSCode = ({handleIsValidCode,number,handleResetState}:ISMSCode) => {\r\n const classes = useStyles()\r\n\r\n return (\r\n <div className={classes.container} >\r\n <img className={classes.picture} alt=\"QRCode\" src={monkeyPng} width='150' height='150' />\r\n <Typography variant=\"h4\" color=\"initial\">\r\n {number}\r\n <IconButton\r\n size=\"medium\"\r\n aria-label='secondary'\r\n onClick={handleResetState}\r\n >\r\n <ModeEditOutlineOutlinedIcon />\r\n </IconButton> \r\n </Typography>\r\n <h3 className={classes.titleConfirm}>\r\n We've sent the code to the Telegram app on your other device.\r\n </h3>\r\n <TextField\r\n id=\"code\"\r\n name='code'\r\n label=\"Code\"\r\n variant='outlined'\r\n fullWidth\r\n className={classes.textField}\r\n onChange={handleIsValidCode}\r\n />\r\n \r\n </div>\r\n );\r\n};\r\n\r\nexport default SMSCode;","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 withStyles from '../styles/withStyles';\nimport ListContext from '../List/ListContext';\nexport var styles = function styles(theme) {\n return {\n /* Styles applied to the root element. */\n root: {\n minWidth: 56,\n color: theme.palette.action.active,\n flexShrink: 0,\n display: 'inline-flex'\n },\n\n /* Styles applied to the root element when the parent `ListItem` uses `alignItems=\"flex-start\"`. */\n alignItemsFlexStart: {\n marginTop: 8\n }\n };\n};\n/**\n * A simple wrapper to apply `List` styles to an `Icon` or `SvgIcon`.\n */\n\nvar ListItemIcon = /*#__PURE__*/React.forwardRef(function ListItemIcon(props, ref) {\n var classes = props.classes,\n className = props.className,\n other = _objectWithoutProperties(props, [\"classes\", \"className\"]);\n\n var context = React.useContext(ListContext);\n return /*#__PURE__*/React.createElement(\"div\", _extends({\n className: clsx(classes.root, className, context.alignItems === 'flex-start' && classes.alignItemsFlexStart),\n ref: ref\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItemIcon.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n\n /**\n * The content of the component, normally `Icon`, `SvgIcon`,\n * or a `@material-ui/icons` SVG icon element.\n */\n children: PropTypes.node,\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,\n\n /**\n * @ignore\n */\n className: PropTypes.string\n} : void 0;\nexport default withStyles(styles, {\n name: 'MuiListItemIcon'\n})(ListItemIcon);","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 withStyles from '../styles/withStyles';\nimport Typography from '../Typography';\nimport ListContext from '../List/ListContext';\nexport var styles = {\n /* Styles applied to the root element. */\n root: {\n flex: '1 1 auto',\n minWidth: 0,\n marginTop: 4,\n marginBottom: 4\n },\n\n /* Styles applied to the `Typography` components if primary and secondary are set. */\n multiline: {\n marginTop: 6,\n marginBottom: 6\n },\n\n /* Styles applied to the `Typography` components if dense. */\n dense: {},\n\n /* Styles applied to the root element if `inset={true}`. */\n inset: {\n paddingLeft: 56\n },\n\n /* Styles applied to the primary `Typography` component. */\n primary: {},\n\n /* Styles applied to the secondary `Typography` component. */\n secondary: {}\n};\nvar ListItemText = /*#__PURE__*/React.forwardRef(function ListItemText(props, ref) {\n var children = props.children,\n classes = props.classes,\n className = props.className,\n _props$disableTypogra = props.disableTypography,\n disableTypography = _props$disableTypogra === void 0 ? false : _props$disableTypogra,\n _props$inset = props.inset,\n inset = _props$inset === void 0 ? false : _props$inset,\n primaryProp = props.primary,\n primaryTypographyProps = props.primaryTypographyProps,\n secondaryProp = props.secondary,\n secondaryTypographyProps = props.secondaryTypographyProps,\n other = _objectWithoutProperties(props, [\"children\", \"classes\", \"className\", \"disableTypography\", \"inset\", \"primary\", \"primaryTypographyProps\", \"secondary\", \"secondaryTypographyProps\"]);\n\n var _React$useContext = React.useContext(ListContext),\n dense = _React$useContext.dense;\n\n var primary = primaryProp != null ? primaryProp : children;\n\n if (primary != null && primary.type !== Typography && !disableTypography) {\n primary = /*#__PURE__*/React.createElement(Typography, _extends({\n variant: dense ? 'body2' : 'body1',\n className: classes.primary,\n component: \"span\",\n display: \"block\"\n }, primaryTypographyProps), primary);\n }\n\n var secondary = secondaryProp;\n\n if (secondary != null && secondary.type !== Typography && !disableTypography) {\n secondary = /*#__PURE__*/React.createElement(Typography, _extends({\n variant: \"body2\",\n className: classes.secondary,\n color: \"textSecondary\",\n display: \"block\"\n }, secondaryTypographyProps), secondary);\n }\n\n return /*#__PURE__*/React.createElement(\"div\", _extends({\n className: clsx(classes.root, className, dense && classes.dense, inset && classes.inset, primary && secondary && classes.multiline),\n ref: ref\n }, other), primary, secondary);\n});\nprocess.env.NODE_ENV !== \"production\" ? ListItemText.propTypes = {\n // ----------------------------- Warning --------------------------------\n // | These PropTypes are generated from the TypeScript type definitions |\n // | To update them edit the d.ts file and run \"yarn proptypes\" |\n // ----------------------------------------------------------------------\n\n /**\n * Alias for the `primary` prop.\n */\n children: PropTypes.node,\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,\n\n /**\n * @ignore\n */\n className: PropTypes.string,\n\n /**\n * If `true`, the children won't be wrapped by a Typography component.\n * This can be useful to render an alternative Typography variant by wrapping\n * the `children` (or `primary`) text, and optional `secondary` text\n * with the Typography component.\n */\n disableTypography: PropTypes.bool,\n\n /**\n * If `true`, the children will be indented.\n * This should be used if there is no left avatar or left icon.\n */\n inset: PropTypes.bool,\n\n /**\n * The main content element.\n */\n primary: PropTypes.node,\n\n /**\n * These props will be forwarded to the primary typography component\n * (as long as disableTypography is not `true`).\n */\n primaryTypographyProps: PropTypes.object,\n\n /**\n * The secondary content element.\n */\n secondary: PropTypes.node,\n\n /**\n * These props will be forwarded to the secondary typography component\n * (as long as disableTypography is not `true`).\n */\n secondaryTypographyProps: PropTypes.object\n} : void 0;\nexport default withStyles(styles, {\n name: 'MuiListItemText'\n})(ListItemText);","import { makeStyles, Typography,InputLabel,ListItem,ListItemText ,ListItemIcon } from '@material-ui/core'\r\nimport FolderIcon from '@mui/icons-material/Folder';\r\nimport AddAPhotoIcon from '@mui/icons-material/AddAPhoto';\r\nimport { useDropzone } from 'react-dropzone';\r\nimport { useEffect } from 'react';\r\n\r\nconst useStyles = makeStyles({\r\n container: {\r\n width: '100%',\r\n },\r\n dropZone: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n alignContent: 'center',\r\n justifyContent: 'center',\r\n width: '100%',\r\n padding: '10px',\r\n borderRadius: 10,\r\n cursor: 'pointer',\r\n marginBottom: 20,\r\n outline: '2px solid #959696',\r\n '&:hover': {\r\n outline: 'dashed rgb(41, 139, 231)',\r\n },\r\n },\r\n dropZoneActive: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n alignContent: 'center',\r\n justifyContent: 'center',\r\n width: '100%',\r\n padding: '10px',\r\n borderRadius: 10,\r\n cursor: 'pointer',\r\n marginBottom: 20,\r\n outline: '2px dashed rgb(41, 139, 231)',\r\n }, \r\n})\r\n\r\ninterface IUploadAvatar {\r\n setUpload: React.Dispatch<React.SetStateAction<any>>,\r\n upload: any,\r\n setSelfie: React.Dispatch<React.SetStateAction<any>>,\r\n}\r\nconst UploadAvatar = ({ setUpload,upload,setSelfie }: IUploadAvatar) => {\r\n \r\nconst {\r\n acceptedFiles,\r\n getRootProps,\r\n getInputProps\r\n } = useDropzone({\r\n accept: 'image/*',\r\n });\r\n\r\n useEffect(() => {\r\n setUpload(acceptedFiles[0])\r\n setSelfie(null)\r\n }, [setUpload,setSelfie,acceptedFiles])\r\n\r\n const classes = useStyles()\r\n\r\n return (\r\n <section className={classes.container} >\r\n <div {...getRootProps({ className: upload? classes.dropZoneActive:classes.dropZone})}>\r\n <InputLabel>Drag or drop avatar</InputLabel>\r\n <input {...getInputProps()}/>\r\n <AddAPhotoIcon fontSize='large'\r\n sx={{color: upload ? 'rgb(62, 149, 231)' : '#6b6b6b',margin:'15px 0px'}} />\r\n <Typography variant=\"h6\" color=\"initial\">image/*</Typography>\r\n </div>\r\n </section>\r\n );\r\n}\r\n\r\nexport default UploadAvatar","import { makeStyles, Button, TextField, Typography,ListItem,ListItemIcon,ListItemText } from '@material-ui/core'\r\nimport { useState } from 'react';\r\nimport { useDispatch } from 'react-redux';\r\n\r\nimport PhotoCameraFrontIcon from '@mui/icons-material/PhotoCameraFront';\r\nimport UploadAvatar from './UploadAvatar'\r\nimport FolderIcon from '@mui/icons-material/Folder';\r\nimport Webcam from \"react-webcam\";\r\nimport CameraIcon from '@mui/icons-material/Camera';\r\nimport { asyncCreateUser } from '../../../redux/authorization/operations'\r\nimport { format,playNotification,prodBaseURL } from '../../../helpers'\r\n\r\nconst useStyles = makeStyles({\r\n container: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n alignContent:'center',\r\n flexDirection: 'column',\r\n width: 350,\r\n margin: '0 auto',\r\n paddingTop: 64,\r\n paddingBottom: 24,\r\n },\r\n title: {\r\n marginBottom: 20,\r\n textAlign: 'center'\r\n },\r\n selfieWrapper: {\r\n marginBottom: 20,\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n alignContent: 'center',\r\n },\r\n buttonNext: {\r\n marginTop: 20,\r\n height: 50,\r\n color: '#f8f8f8',\r\n backgroundColor:'#1d74c5',\r\n },\r\n textField: {\r\n marginBottom:20\r\n },\r\n overlay: {\r\n position: 'fixed',\r\n top: 0,\r\n left: 0,\r\n width: '100vw',\r\n height: '100vh',\r\n zIndex: 100,\r\n backgroundColor: 'rgba(104, 105, 104, 0.6)',\r\n overflowY: 'hidden',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignContent: 'center',\r\n alignItems: 'center',\r\n flexDirection:'column'\r\n },\r\n capturedPicture: {\r\n borderRadius: 10,\r\n border:'solid 2px rgb(62, 149, 231)'\r\n }, \r\n capturePhoto: {\r\n color: '#ffffff',\r\n cursor: 'pointer',\r\n '&:hover': {\r\n color: '#48ff00',\r\n animation: `$rotating 2s linear infinite`\r\n },\r\n }, \r\n '@keyframes rotating': {\r\n\t 'from': { transform: 'rotate(0deg)'},\r\n\t 'to': { transform: 'rotate(360deg)'},\r\n }, \r\n})\r\n\r\nconst Registration = () => {\r\n const classes = useStyles()\r\n const [name, setName] = useState<string>('')\r\n const [lastName, setLastName] = useState<string>('')\r\n const [upload, setUpload] = useState<any>(null)\r\n const [selfie, setSelfie] = useState<any>(null)\r\n const [camera, setCamera] = useState<boolean>(false)\r\n const dispatch = useDispatch()\r\n const videoConstraints = {\r\n width: 1280,\r\n height: 720,\r\n facingMode: \"user\"\r\n };\r\n\r\n const isValidCredentials = () => {\r\n const validName = name.length\r\n const validLastName = lastName.length\r\n if (validName < 3 || validName > 30) return false\r\n if (validLastName < 3 || validLastName > 30) return false\r\n return true\r\n }\r\n\r\n const handleTextField = (e: React.ChangeEvent<HTMLInputElement>) => {\r\n const value = format(e.target.value)\r\n const name = e.target.name\r\n switch (name) {\r\n case 'name':\r\n setName(value)\r\n break;\r\n case 'lastName':\r\n setLastName(value)\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n const handleOpenCamera = () => {\r\n setCamera(true)\r\n upload&&setUpload(null)\r\n }\r\n\r\n const handleCloseCamera = (e: any) => {\r\n const id = e.target.id\r\n if (id === 'overlay') setCamera(false)\r\n } \r\n\r\n const handleUpdateUser = async () => {\r\n if (upload) return dispatch(asyncCreateUser(name, lastName, upload))\r\n \r\n if (selfie) return fetch(selfie)\r\n .then(res => res.blob())\r\n .then(blob => {\r\n const imgFile = new File([blob], \"selfie\", { type: \"image/jpeg\" })\r\n dispatch(asyncCreateUser(name, lastName, imgFile))\r\n })\r\n dispatch(asyncCreateUser(name, lastName,null))\r\n }\r\n\r\n return (\r\n <div className={classes.container} >\r\n <div className={classes.selfieWrapper}>\r\n <Typography variant=\"h6\" color=\"initial\"\r\n style={{ textAlign: \"center\", marginRight: 10 }}>\r\n Capture avatar\r\n </Typography>\r\n <PhotoCameraFrontIcon onClick={handleOpenCamera} fontSize='large'\r\n sx={{color: selfie ? 'rgb(62, 149, 231)' :\r\n '#6b6b6b',\r\n '&:hover': { color: 'rgb(41, 139, 231)' },cursor:'pointer'}}/>\r\n </div> \r\n <UploadAvatar setUpload={setUpload} upload={upload} setSelfie={setSelfie} />\r\n <aside>\r\n <ul>\r\n {upload || selfie?\r\n <ListItem>\r\n <ListItemIcon>\r\n <FolderIcon/>\r\n </ListItemIcon>\r\n <ListItemText primary=\"Avatar uploaded\"\r\n secondary={`${upload?upload.path:'selfie.jpeg'} -${upload?upload.size:(selfie.length*(3/4))-2} bytes`} />\r\n </ListItem>:null}\r\n </ul>\r\n </aside> \r\n {camera &&\r\n <div onClick={handleCloseCamera} id='overlay'\r\n className={classes.overlay}>\r\n <Webcam\r\n audio={false}\r\n screenshotFormat=\"image/jpeg\"\r\n width='40%'\r\n videoConstraints={videoConstraints}\r\n style={{marginBottom:30}}\r\n >\r\n {({ getScreenshot }) => <>\r\n <CameraIcon onClick={() => {\r\n setSelfie(getScreenshot())\r\n playNotification(`${prodBaseURL}/cameraCapture.mp3`)\r\n }}\r\n className={classes.capturePhoto} fontSize='large' style={{marginBottom:30}} />\r\n <img className={classes.capturedPicture} width='300' height='174'\r\n style={{visibility:selfie?'visible':'hidden'}} src={selfie} alt='chosen pic'></img>\r\n </>}\r\n </Webcam>\r\n </div>} \r\n <Typography\r\n className={classes.title}\r\n variant=\"h5\"\r\n color=\"initial\">\r\n Fill credentials*\r\n </Typography> \r\n <TextField\r\n id=\"name\"\r\n name='name'\r\n label=\"Name\"\r\n value={name}\r\n fullWidth\r\n variant='outlined'\r\n onChange={handleTextField}\r\n className={classes.textField}\r\n required\r\n />\r\n <TextField\r\n id=\"lastName\"\r\n name='lastName'\r\n label=\"LastName\"\r\n value={lastName}\r\n fullWidth\r\n variant='outlined'\r\n onChange={handleTextField}\r\n className={classes.textField}\r\n required\r\n />\r\n {isValidCredentials() &&\r\n <Button\r\n onClick={handleUpdateUser}\r\n className={classes.buttonNext}\r\n color='primary'\r\n variant=\"contained\"\r\n fullWidth\r\n > NEXT\r\n </Button>}\r\n </div>\r\n );\r\n};\r\n\r\nexport default Registration;","import { useState, useEffect } from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport QRCode from './QRCode'\nimport Authorization from './Authorization'\nimport SMSCode from './SMSCode'\nimport Registration from './Registration'\nimport { authorizeUser } from '../../api-data'\nimport { asyncLogin } from '../../redux/authorization/operations'\nimport { format } from '../../helpers'\n\nconst AuthPage = () => {\n const [isQR, setIsQR] = useState<boolean>(false)\n const [isCode, setIsCode] = useState<string>('')\n const [isChecked, setIsChecked] = useState<boolean>(true);\n const [isReg, setIsReg] = useState<boolean>(false);\n const [country, setCountry] = useState<string>('Country')\n const [number, setNumber] = useState<string>('')\n\n const dispatch = useDispatch()\n\n const handleIsQR = (): void => setIsQR(!isQR)\n\n const isValidCredentials = () => {\n const numberLength = number.split(' ').join('').trim().length\n if (numberLength < 13 || numberLength > 13) return false\n if (!country || country === 'Country') return false\n if(number.slice(0,1) === '+') return true\n return true\n }\n\n const handleIsValidCode = async (e: React.ChangeEvent<HTMLInputElement>):Promise<void> => {\n if (isCode && format(e.target.value) === isCode) \n dispatch(asyncLogin(number, isCode, () => setIsReg(!isReg)))\n } \n\n const handleSendCode = async () => {\n const res = await authorizeUser(format(number), country)\n res && setIsCode(res)\n }\n\n const handleIsCheck = (e: React.ChangeEvent<HTMLInputElement>): void => {\n const flag = e.target.checked\n setIsChecked(flag);\n localStorage.isChecked = flag\n }\n\n const handleResetState = ():void => {\n setIsCode('')\n setCountry('Country')\n setNumber('')\n }\n\n useEffect(() => {\n const isCheckedLC = localStorage.isChecked\n if (isCheckedLC) {\n setIsChecked(isCheckedLC === 'true'?true:false)\n } else {\n localStorage.setItem('isChecked','true')\n }\n }, [])\n \n return (\n isReg?<Registration/>:\n isCode ? <SMSCode\n handleIsValidCode={handleIsValidCode}\n number={number}\n handleResetState={handleResetState}/> :\n isQR ? <QRCode handleIsQR={handleIsQR} /> :\n <Authorization handleIsQR={handleIsQR}\n handleSendCode={handleSendCode}\n handleIsCheck={handleIsCheck}\n setNumber={setNumber}\n number={number}\n setCountry={setCountry}\n isChecked={isChecked}\n isValidCredentials={isValidCredentials}/>\n )\n};\n\nexport default AuthPage;\n"],"sourceRoot":""}
|