{"version":3,"sources":["Http.js","redux/actions/actionTypes.js","redux/actions/actions.js","pages/Error.js","pages/Logout.js","components/toolbar.js","components/eds.js","NCALayer.js","components/oneTimePassword.js","components/tabBar.js","pages/Login.js","i18n.js","components/sms.js","App.js","reportWebVitals.js","redux/reducer/appReducer.js","redux/reducer/rootReducer.js","index.js"],"names":["Http","post","url","data","arguments","length","undefined","response","fetch","method","credentials","headers","body","JSON","stringify","ok","text","Promise","reject","get","responce","mode","cache","redirect","referrerPolicy","json","logout","getText","SET_CONFIG","loadConfig","async","dispatch","type","payload","errorsMap","unauthorized_client","invalid_scope","ErrorPage","props","_props$location","error","setError","useState","config","useSelector","state","app","useDispatch","useEffect","errorId","URLSearchParams","window","location","search","concat","then","err","console","log","query","_jsxs","children","_jsx","errorDescription","Logout","redirectUrl","setRedirectUrl","logoutId","postLogoutRedirectUri","setTimeout","AppHeader","currentLang","setCurrentLang","i18n","useTranslation","className","onClick","changeLanguage","ncaInstance","constructor","this","webSocket","WebSocket","heartbeat_msg","heartbeat_interval","missed_heartbeats","missed_heartbeats_limit_min","missed_heartbeats_limit_max","missed_heartbeats_limit","callback","init","setMissedHeartbeatsLimitToMax","setMissedHeartbeatsLimitToMin","openDialog","confirm","reload","onopen","event","setInterval","pingLayer","onclose","wasClean","code","reason","onmessage","resultXml","parse","rw","status","responseObject","result","getResponseObject","isSuccess","Error","send","e","clearInterval","warn","message","close","getActiveTokens","callBack","getKeyInfo","storageName","signXml","keyType","xmlToSign","_this$webSocket","decode","encapsulate","digested","tsaProfile","readyState","CLOSED","OPEN","CONNECTING","createCMSSignatureFromFile","filePath","flag","showFileChooser","fileExtension","currentDirectory","browseKeyStore","getKeys","storageAlias","storagePath","password","signXml2","alias","signXml3","container","getNotAfter","getNotBefore","getSubjectDN","EDS","_t$currentLanguage","fio","setFio","iin","setIin","errorMessage","setErrorMessage","isDisabledBtn","setIsDisabledBtn","currentLanguage","setCurrentLanguage","certStore","setCertStore","_Cookies$get$toLowerC","_Cookies$get","Cookies","toLowerCase","sign","userName","xml","fullName","newEmail","email","signedXml","returnUrl","res","isOk","catch","t","title","disabled","value","selectCert","generatedToken","token","Xml","certInfo","serialNumber","TabBar","componentTab","setComponentTab","tabs","key","selected","component","current","map","tab","handleClick","Login","_Cookies$get2","use","initReactI18next","fallbackLng","debug","resources","ru","translation","kk","interpolation","escapeValue","Sms","setCode","history","useHistory","useLocation","maxLength","onChange","target","sendCode","Phone","phone","Code","ReturnUrl","UserName","href","id","comeBack","goBack","App","Suspense","fallback","Router","Switch","Route","path","reportWebVitals","onPerfEntry","Function","_ref","getCLS","getFID","getFCP","getLCP","getTTFB","initialState","combineReducers","action","store","createStore","rootReducer","applyMiddleware","thunk","ReactDOM","render","React","StrictMode","Provider","document","getElementById"],"mappings":"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","file":"static/js/main.e8a070e9.chunk.js","sourcesContent":["export class Http {\r\n static async post(url, data = {}) {\r\n const response = await fetch(url, {\r\n method: 'POST',\r\n credentials: 'include',\r\n headers: {\r\n 'Content-Type': 'application/json'\r\n },\r\n body: JSON.stringify(data)\r\n })\r\n \r\n if(response.ok) {\r\n return await response.text();\r\n } else {\r\n return await Promise.reject(response.text());\r\n }\r\n }\r\n\r\n static async get(url) {\r\n const responce = await fetch(url, {\r\n method: 'GET',\r\n mode: 'cors',\r\n cache: 'no-cache',\r\n credentials: 'same-origin',\r\n headers: {\r\n 'Content-Type': 'application/json'\r\n },\r\n redirect: 'follow',\r\n referrerPolicy: 'no-referrer',\r\n });\r\n\r\n return await responce.json();\r\n }\r\n \r\n static async logout(url) {\r\n const responce = await fetch(url, {\r\n credentials: 'include'\r\n });\r\n return await responce.json();\r\n }\r\n\r\n static async getText(url) {\r\n const responce = await fetch(url, {\r\n method: 'GET',\r\n mode: 'cors',\r\n cache: 'no-cache',\r\n credentials: 'same-origin',\r\n redirect: 'follow',\r\n referrerPolicy: 'no-referrer',\r\n });\r\n\r\n return await responce.text();\r\n }\r\n}","export const SET_CONFIG = 'SET_CONFIG'\r\nexport const GET_CONFIG = 'GET_CONFIG'","import {Http} from \"../../Http\";\r\nimport {SET_CONFIG} from \"./actionTypes\";\r\n\r\nexport function loadConfig() {\r\n return async (dispatch) => {\r\n const response = await Http.get(`/config.json`);\r\n dispatch(setConfig(response));\r\n }\r\n}\r\n\r\nexport function setConfig(value) {\r\n return {\r\n type: SET_CONFIG,\r\n payload: value\r\n }\r\n}","import { useEffect, useState } from \"react\";\r\nimport { Http } from \"../Http\"\r\nimport {useDispatch, useSelector} from \"react-redux\";\r\nimport {loadConfig} from \"../redux/actions/actions\";\r\n\r\nconst errorsMap = {\r\n\tunauthorized_client: \"Клиент не авторизирован\",\r\n\tinvalid_scope: \"Не верно указан параметр 'scopes'\"\r\n}\r\n\r\nexport function ErrorPage(props) {\r\n\tconst [error, setError] = useState(undefined);\r\n\tconst config = useSelector((state) => state.app.config);\r\n\tconst dispatch = useDispatch();\r\n\r\n\tuseEffect(() => {\r\n\t\tif (!config) {\r\n\t\t\tdispatch(loadConfig());\r\n\t\t}\r\n\t\t\r\n\t\tif (config && !error) {\r\n\t\t\tconst urlParams = new URLSearchParams(window.location.search);\r\n\t\t\tconst errorId = urlParams.get('errorId');\r\n\t\t\tHttp.get(`${config.url}/api/auth/error?errorId=${errorId}`)\r\n\t\t\t\t.then(err => {\r\n\t\t\t\t\tsetError(err);\r\n\t\t\t\t});\r\n\t\t}\r\n\t})\r\n\r\n\r\n\r\n\tconsole.log(props.location?.query);\r\n\treturn (\r\n\t\t
\r\n\t\t\t

Error

\r\n\t\t\t

\r\n\t\t\t\tПроизошла ошибка: {errorsMap[error?.error]}
\r\n\t\t\t\tОписание: {error?.errorDescription}\r\n\t\t\t

\r\n\t\t
\r\n\t)\r\n}","import {useEffect, useState} from \"react\"\r\nimport {Http} from \"../Http\";\r\nimport {loadConfig} from \"../redux/actions/actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\n\r\nexport function Logout(props) {\r\n const [redirectUrl, setRedirectUrl] = useState(null);\r\n const dispatch = useDispatch();\r\n const config = useSelector((state) => state.app.config);\r\n\r\n useEffect(async () => {\r\n if (!config) {\r\n dispatch(loadConfig());\r\n }\r\n\r\n if (config) {\r\n const urlParams = new URLSearchParams(window.location.search);\r\n const logoutId = urlParams.get('logoutId');\r\n\r\n Http.logout(`${config.url}/api/auth/logout?logoutId=${logoutId}`).then(data => {\r\n if (data.postLogoutRedirectUri) {\r\n setRedirectUrl(data.postLogoutRedirectUri);\r\n setTimeout(() => {\r\n window.location = data.postLogoutRedirectUri;\r\n }, 2000);\r\n }\r\n });\r\n }\r\n });\r\n\r\n return (\r\n
\r\n

Вы успешно вышли из системы {redirectUrl}

\r\n
\r\n )\r\n}","import React, {useState} from 'react'\r\nimport \"../css/main.css\"\r\nimport {useTranslation} from \"react-i18next\";\r\n\r\nexport function AppHeader() {\r\n const [currentLang, setCurrentLang] = useState('ru');\r\n const {i18n} = useTranslation('common');\r\n \r\n \r\n return (\r\n
\r\n \r\n \r\n
\r\n )\r\n}","import React, {useEffect, useState} from 'react'\r\nimport \"../css/main.css\"\r\nimport {useDispatch, useSelector} from \"react-redux\";\r\nimport {loadConfig} from \"../redux/actions/actions\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport {NcaLayer} from \"../NCALayer\";\r\nimport {Http} from \"../Http\";\r\nimport Cookies from 'js-cookie';\r\n\r\nconst ncaInstance = new NcaLayer();\r\n\r\nexport function EDS() {\r\n const [fio, setFio] = useState('');\r\n const [iin, setIin] = useState('');\r\n const [errorMessage, setErrorMessage] = useState('');\r\n const [isDisabledBtn, setIsDisabledBtn] = useState(false);\r\n const [currentLanguage, setCurrentLanguage] = useState(\"ru\");\r\n const [certStore, setCertStore] = useState('PKCS12');\r\n const config = useSelector((state) => state.app.config);\r\n const dispatch = useDispatch();\r\n \r\n useEffect(async() => {\r\n if (!config) {\r\n console.log(Cookies.get('culture'));\r\n dispatch(loadConfig());\r\n setCurrentLanguage(Cookies.get('culture')?.toLowerCase() ?? 'ru');\r\n }\r\n })\r\n\r\n const selectCert = () => {\r\n setIsDisabledBtn(true);\r\n \r\n Http.get(`${config.url}/api/auth/generateToken`).then(generatedToken => {\r\n ncaInstance.signXml(certStore, 'AUTH', `${generatedToken.token}`, data => {\r\n const xml = data.getResponseObject();\r\n if (xml) {\r\n Http.post(`${config.url}/api/auth/certInfo`, {\r\n Xml: xml\r\n }).then(data => {\r\n const certInfo = JSON.parse(data);\r\n return Http.get(`${config.url}/api/auth/hasUser/${certInfo.serialNumber}`).then(response => {\r\n setFio(certInfo.fullName);\r\n setIin(certInfo.serialNumber);\r\n sign(certInfo.serialNumber, xml, certInfo.fullName, \"\");\r\n }).catch(err => {\r\n err.then(res => {\r\n setErrorMessage(res);\r\n setIsDisabledBtn(false);\r\n })\r\n });\r\n }).catch(err => {\r\n err.then(res => {\r\n setErrorMessage(res);\r\n setIsDisabledBtn(false);\r\n })\r\n });\r\n }\r\n });\r\n });\r\n }\r\n\r\n const sign = (userName, xml, fullName, newEmail) => {\r\n const urlParams = new URLSearchParams(window.location.search);\r\n const url = urlParams.get('ReturnUrl');\r\n Http.post(`${config.url}/api/auth/`, {\r\n userName: (userName),\r\n password: 'random',\r\n email: (newEmail),\r\n signedXml: xml,\r\n fullName: (fullName),\r\n returnUrl: url\r\n })\r\n .then(res => {\r\n const data = JSON.parse(res);\r\n if (data && data.isOk) {\r\n window.location = data.redirectUrl;\r\n }\r\n }).catch(err => {\r\n err.then(res => {\r\n setErrorMessage(res);\r\n setIsDisabledBtn(false);\r\n })\r\n });\r\n };\r\n\r\n\r\n const { t } = useTranslation();\r\n \r\n return (\r\n
\r\n

{t[currentLanguage]?.title}

\r\n
{t('warning')}
\r\n
\r\n \r\n \r\n

{errorMessage}

\r\n
\r\n \r\n
\r\n )\r\n}","export class NcaLayer {\r\n webSocket;\r\n heartbeat_msg;\r\n heartbeat_interval;\r\n missed_heartbeats;\r\n missed_heartbeats_limit_min;\r\n missed_heartbeats_limit_max;\r\n missed_heartbeats_limit;\r\n callback;\r\n\r\n constructor() {\r\n this.webSocket = new WebSocket('wss://127.0.0.1:13579/');\r\n this.heartbeat_msg = '--heartbeat--';\r\n this.heartbeat_interval = null;\r\n this.missed_heartbeats = 0;\r\n this.missed_heartbeats_limit_min = 3;\r\n this.missed_heartbeats_limit_max = 50;\r\n this.missed_heartbeats_limit = this.missed_heartbeats_limit_min;\r\n this.callback = null;\r\n\r\n this.init();\r\n }\r\n\r\n setMissedHeartbeatsLimitToMax() {\r\n this.missed_heartbeats_limit = this.missed_heartbeats_limit_max;\r\n }\r\n\r\n setMissedHeartbeatsLimitToMin() {\r\n this.missed_heartbeats_limit = this.missed_heartbeats_limit_min;\r\n }\r\n\r\n openDialog() {\r\n if (window.confirm(\"Ошибка при подключений к прослойке. Убедитесь что программа запущена и нажмите ОК\") === true) {\r\n window.location.reload();\r\n }\r\n }\r\n\r\n init() {\r\n this.webSocket.onopen = function (event) {\r\n if (this.heartbeat_interval === null) {\r\n this.missed_heartbeats = 0;\r\n this.heartbeat_interval = setInterval(this.pingLayer, 2000);\r\n }\r\n console.log(\"Connection opened\");\r\n };\r\n \r\n this.webSocket.onclose = function (event) {\r\n if (event.wasClean) {\r\n console.log('connection has been closed');\r\n } else {\r\n console.log('Connection error');\r\n }\r\n console.log('Code: ' + event.code + ' Reason: ' + event.reason);\r\n };\r\n \r\n this.webSocket.onmessage = (event) => {\r\n if (event.data === this.heartbeat_msg) {\r\n this.missed_heartbeats = 0;\r\n return;\r\n }\r\n \r\n var resultXml = JSON.parse(event.data);\r\n console.log(resultXml);\r\n if (resultXml.body != null) {\r\n if (resultXml != null) {\r\n var rw = {\r\n status: resultXml.status,\r\n responseObject: resultXml.body.result[0],\r\n getResponseObject: function () {\r\n return this.responseObject;\r\n },\r\n isSuccess: function () {\r\n return this.status;\r\n }\r\n };\r\n if (this.callback) {\r\n this.callback(rw);\r\n }\r\n }\r\n }\r\n console.log(event);\r\n this.setMissedHeartbeatsLimitToMin();\r\n };\r\n }\r\n\r\n pingLayer() {\r\n console.log(\"pinging...\");\r\n try {\r\n this.missed_heartbeats++;\r\n if (this.missed_heartbeats >= this.missed_heartbeats_limit)\r\n throw new Error(\"Too many missed heartbeats.\");\r\n this.webSocket.send(this.heartbeat_msg);\r\n } catch (e) {\r\n clearInterval(this.heartbeat_interval);\r\n this.heartbeat_interval = null;\r\n console.warn(\"Closing connection. Reason: \" + e.message);\r\n this.webSocket.close();\r\n }\r\n }\r\n\r\n getActiveTokens(callBack) {\r\n var getActiveTokens = {\r\n \"module\": \"kz.gov.pki.knca.commonUtils\",\r\n \"method\": \"getActiveTokens\"\r\n };\r\n this.callback = callBack;\r\n this.setMissedHeartbeatsLimitToMax();\r\n this.webSocket.send(JSON.stringify(getActiveTokens));\r\n }\r\n\r\n getKeyInfo(storageName, callBack) {\r\n var getKeyInfo = {\r\n \"module\": \"kz.gov.pki.knca.commonUtils\",\r\n \"method\": \"getKeyInfo\",\r\n \"args\": [storageName]\r\n };\r\n this.callback = callBack;\r\n this.setMissedHeartbeatsLimitToMax();\r\n this.webSocket.send(JSON.stringify(getKeyInfo));\r\n }\r\n\r\n signXml(storageName, keyType, xmlToSign, callBack) {\r\n var decode = \"true\"\r\n var encapsulate = \"true\"\r\n var digested = \"false\"\r\n var tsaProfile = null\r\n var signXml = {\r\n \"module\": \"kz.gov.pki.knca.basics\",\r\n \"method\": \"sign\",\r\n \"args\": {\r\n \"allowedStorages\": [\"PKCS12\"],\r\n \"format\": \"xml\",\r\n \"data\": xmlToSign,\r\n \"signingParams\": { decode, encapsulate, digested, tsaProfile },\r\n \"signerParams\": {\r\n \"extKeyUsageOids\": [],\r\n \"chain\": []\r\n },\r\n \"locale\": \"ru\"\r\n }\r\n };\r\n this.callback = callBack;\r\n this.setMissedHeartbeatsLimitToMax();\r\n console.log('status', this.webSocket?.readyState, this.webSocket.CLOSED, this.webSocket.OPEN);\r\n if(this?.webSocket.readyState === this.webSocket.CLOSED || this?.webSocket.readyState === this.webSocket.CONNECTING) {\r\n if(window.confirm(\"Ошибка при подключении к NCALayer. Запустите NCALayer и нажмите ОК/NCALayer-ге қосылу кезінде қате пайда болды. NCALayer бағдарламасын іске қосыңыз және ОК түймесін басыңыз\") === true) window.location.reload();\r\n }\r\n this.webSocket.send(JSON.stringify(signXml));\r\n }\r\n\r\n createCMSSignatureFromFile(storageName, keyType, filePath, flag, callBack) {\r\n var createCMSSignatureFromFile = {\r\n \"module\": \"kz.gov.pki.knca.commonUtils\",\r\n \"method\": \"createCMSSignatureFromFile\",\r\n \"args\": [storageName, keyType, filePath, flag]\r\n };\r\n this.callback = callBack;\r\n this.setMissedHeartbeatsLimitToMax();\r\n this.webSocket.send(JSON.stringify(createCMSSignatureFromFile));\r\n }\r\n\r\n showFileChooser(fileExtension, currentDirectory, callBack) {\r\n var showFileChooser = {\r\n \"module\": \"kz.gov.pki.knca.commonUtils\",\r\n \"method\": \"showFileChooser\",\r\n \"args\": [fileExtension, currentDirectory]\r\n };\r\n this.callback = callBack;\r\n this.setMissedHeartbeatsLimitToMax();\r\n this.webSocket.send(JSON.stringify(showFileChooser));\r\n }\r\n\r\n\r\n ////////////////////////////////////////////////////////////////////////////////////////////\r\n browseKeyStore(storageName, fileExtension, currentDirectory, callBack) {\r\n var browseKeyStore = {\r\n \"method\": \"browseKeyStore\",\r\n \"args\": [storageName, fileExtension, currentDirectory]\r\n };\r\n this.callback = callBack;\r\n //TODO: CHECK CONNECTION\r\n this.setMissedHeartbeatsLimitToMax();\r\n if(this?.webSocket.readyState === this.webSocket.CLOSED || this?.webSocket.readyState === this.webSocket.CONNECTING) {\r\n if(window.confirm(\"Ошибка при подключении к NCALayer. Запустите NCALayer и нажмите ОК/NCALayer-ге қосылу кезінде қате пайда болды. NCALayer бағдарламасын іске қосыңыз және ОК түймесін басыңыз\") === true) window.location.reload();\r\n }\r\n this.webSocket.send(JSON.stringify(browseKeyStore));\r\n }\r\n\r\n getKeys(storageAlias, storagePath, password, keyType, callBack) {\r\n var getKeys = {\r\n \"method\": \"getKeys\",\r\n \"args\": [storageAlias, storagePath, password, keyType]\r\n };\r\n this.callback = callBack;\r\n this.setMissedHeartbeatsLimitToMax();\r\n this.webSocket.send(JSON.stringify(getKeys));\r\n }\r\n\r\n signXml2(storageName, storagePath, alias, password, xmlToSign, callBack) {\r\n var signXml = {\r\n \"method\": \"signXml\",\r\n \"args\": [storageName, storagePath, alias, password, xmlToSign]\r\n };\r\n this.callback = callBack;\r\n this.setMissedHeartbeatsLimitToMax();\r\n this.webSocket.send(JSON.stringify(signXml));\r\n }\r\n\r\n signXml3(storageName, keyType, xmlToSign, container, callBack) {\r\n var signXml = {\r\n \"method\": \"signXml\",\r\n \"args\": [storageName, container, keyType, xmlToSign]\r\n };\r\n this.callback = callBack;\r\n this.setMissedHeartbeatsLimitToMax();\r\n this.webSocket.send(JSON.stringify(signXml));\r\n }\r\n\r\n getNotAfter(storageName, storagePath, alias, password, callBack) {\r\n var getNotAfter = {\r\n \"method\": \"getNotAfter\",\r\n \"args\": [storageName, storagePath, alias, password]\r\n };\r\n this.callback = callBack;\r\n this.setMissedHeartbeatsLimitToMax();\r\n this.webSocket.send(JSON.stringify(getNotAfter));\r\n }\r\n\r\n getNotBefore(storageName, storagePath, alias, password, callBack) {\r\n var getNotBefore = {\r\n \"method\": \"getNotBefore\",\r\n \"args\": [storageName, storagePath, alias, password]\r\n };\r\n this.callback = callBack;\r\n this.setMissedHeartbeatsLimitToMax();\r\n this.webSocket.send(JSON.stringify(getNotBefore));\r\n }\r\n\r\n getSubjectDN(storageName, storagePath, alias, password, callBack) {\r\n var getSubjectDN = {\r\n \"method\": \"getSubjectDN\",\r\n \"args\": [storageName, storagePath, alias, password]\r\n };\r\n this.callback = callBack;\r\n this.setMissedHeartbeatsLimitToMax();\r\n this.webSocket.send(JSON.stringify(getSubjectDN));\r\n }\r\n}","import React, {useEffect, useState} from 'react'\r\nimport {useDispatch, useSelector} from \"react-redux\";\r\nimport {loadConfig} from \"../redux/actions/actions\";\r\nimport {Http} from \"../Http\";\r\nimport {useHistory} from \"react-router-dom\";\r\n\r\nexport const OneTimePassword = () => {\r\n const [iin, setIin] = useState('');\r\n const [phone, setPhone] = useState('');\r\n const [returnUrl, setReturnUrl] = useState('');\r\n const [isDisabledBtn, setIsDisabledBtn] = useState(false);\r\n const [errorMessage, setErrorMessage] = useState('');\r\n const dispatch = useDispatch();\r\n const config = useSelector((state) => state.app.config);\r\n let history = useHistory();\r\n\r\n useEffect(() => {\r\n if (!config) {\r\n dispatch(loadConfig());\r\n }\r\n\r\n if (config) {\r\n const urlParams = new URLSearchParams(window.location.search);\r\n setReturnUrl(urlParams.get('ReturnUrl'));\r\n }\r\n })\r\n\r\n\r\n const phoneCheck = () => {\r\n setIsDisabledBtn(true);\r\n if(iin.length === 12 && phone.length !== 0) {\r\n Http.post(`${config.url}/api/AuthOneTimePassword/SendingSMS`, { Xin: iin, Phone: phone })\r\n .then(result => {\r\n history.push({\r\n pathname: '/sms-check',\r\n state: {\r\n phone,\r\n userName: iin,\r\n returnUrl\r\n }\r\n });\r\n })\r\n .catch(err => {\r\n err.then(res => {\r\n setErrorMessage(res);\r\n setIsDisabledBtn(false);\r\n })\r\n });\r\n }\r\n\r\n }\r\n \r\n return (\r\n
\r\n
\r\n

ИИН*

\r\n setIin(e.target.value)}\r\n />\r\n \r\n
\r\n

Номер телефона*

\r\n setPhone(e.target.value)}\r\n />\r\n \r\n

{errorMessage}

\r\n \r\n Войти\r\n \r\n
\r\n )\r\n}","import React, {useState} from 'react'\r\nimport \"../css/main.css\"\r\nimport {EDS} from \"./eds\";\r\nimport {OneTimePassword} from \"./oneTimePassword\";\r\n\r\nexport const TabBar = (props) => {\r\n const [componentTab, setComponentTab] = useState({\r\n tabs: [\r\n {\r\n text: 'ЭЦП',\r\n key: 0,\r\n selected: true,\r\n component: \r\n },\r\n // {\r\n // text: 'Одноразовый пароль',\r\n // key: 1,\r\n // selected: false,\r\n // component: \r\n // }\r\n ],\r\n current: 0\r\n })\r\n \r\n const handleClick = (e) => {\r\n console.log(props);\r\n if(e !== componentTab.current) {\r\n let tabs = componentTab.tabs;\r\n tabs[e].selected = true;\r\n tabs[componentTab.current].selected = false;\r\n \r\n setComponentTab({ tabs: tabs, current: e })\r\n }\r\n }\r\n \r\n return (\r\n
\r\n {\r\n componentTab.tabs.map(tab => {\r\n return (\r\n handleClick(tab.key)}\r\n >\r\n

{tab.text}

\r\n \r\n )\r\n })\r\n }\r\n
\r\n {componentTab.tabs[componentTab.current].component}\r\n
\r\n
\r\n )\r\n}","import {NcaLayer} from '../NCALayer';\r\nimport {AppHeader} from \"../components/toolbar\";\r\nimport \"../css/main.css\"\r\nimport {TabBar} from \"../components/tabBar\";\r\nimport {useEffect, useState} from \"react\";\r\nimport Cookies from \"js-cookie\";\r\nimport {loadConfig} from \"../redux/actions/actions\";\r\nimport {useDispatch, useSelector} from \"react-redux\";\r\n\r\nexport default function Login(props) {\r\n const [currentLanguage, setCurrentLanguage] = useState(\"ru\");\r\n const config = useSelector((state) => state.app.config);\r\n const dispatch = useDispatch();\r\n \r\n useEffect(async() => {\r\n if (!config) {\r\n console.log(Cookies.get('culture')?.toLowerCase());\r\n dispatch(loadConfig());\r\n setCurrentLanguage(Cookies.get('culture')?.toLowerCase() ?? 'ru');\r\n }\r\n })\r\n \r\nreturn (\r\n\t
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n);\r\n}\r\n","import i18n from 'i18next';\r\nimport { initReactI18next } from 'react-i18next';\r\nimport ru from './translations/ru.json'\r\nimport kk from './translations/kk.json'\r\n\r\ni18n\r\n .use(initReactI18next)\r\n .init({\r\n fallbackLng: 'ru',\r\n debug: true,\r\n resources: {\r\n ru: {\r\n translation: ru\r\n },\r\n kk: {\r\n translation: kk\r\n },\r\n },\r\n interpolation: {\r\n escapeValue: false,\r\n }\r\n });\r\n\r\n\r\nexport default i18n;","import React, {useEffect, useState} from 'react';\r\nimport '../css/main.css'\r\nimport {OneTimePassword} from \"./oneTimePassword\";\r\nimport {useHistory, useLocation} from \"react-router-dom\";\r\nimport {AppHeader} from \"./toolbar\";\r\nimport {loadConfig} from \"../redux/actions/actions\";\r\nimport {useDispatch, useSelector} from \"react-redux\";\r\nimport {Http} from \"../Http\";\r\n\r\nexport const Sms = (props) => {\r\n const [code, setCode] = useState('');\r\n const [errorMessage, setErrorMessage] = useState('');\r\n const config = useSelector((state) => state.app.config);\r\n const dispatch = useDispatch();\r\n let history = useHistory();\r\n let location = useLocation();\r\n \r\n const sendCode = () => {\r\n Http.post(`${config.url}/api/AuthOneTimePassword/CheckCode`, {\r\n Phone: location.state.phone,\r\n Code: code,\r\n ReturnUrl: location.state.returnUrl,\r\n UserName: location.state.userName\r\n }).then(() => {\r\n window.location.href = location.state.returnUrl;\r\n }).catch(err => {\r\n err.then(res => {\r\n setErrorMessage(res);\r\n })\r\n });\r\n }\r\n \r\n useEffect(() => {\r\n if (!config) {\r\n dispatch(loadConfig());\r\n }\r\n })\r\n\r\n const comeBack = () => {\r\n return history.goBack();\r\n }\r\n \r\n return (\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

Введите проверочный код

\r\n setCode(e.target.value)}\r\n />\r\n

{errorMessage}

\r\n \r\n \r\n Указать другой номер телефона\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};","import './App.css';\r\nimport { BrowserRouter as Router, Switch, Route } from 'react-router-dom';\r\nimport { ErrorPage } from './pages/Error';\r\nimport { Logout } from './pages/Logout';\r\nimport Login from \"./pages/Login\";\r\nimport {Suspense} from \"react\";\r\nimport \"./i18n\"\r\nimport {Sms} from \"./components/sms\";\r\n\r\nfunction App() {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n}\r\n\r\nexport default App;\r\n","const reportWebVitals = onPerfEntry => {\r\n if (onPerfEntry && onPerfEntry instanceof Function) {\r\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\r\n getCLS(onPerfEntry);\r\n getFID(onPerfEntry);\r\n getFCP(onPerfEntry);\r\n getLCP(onPerfEntry);\r\n getTTFB(onPerfEntry);\r\n });\r\n }\r\n};\r\n\r\nexport default reportWebVitals;\r\n","import {GET_CONFIG, SET_CONFIG} from \"../actions/actionTypes\";\r\n\r\nconst initialState = {\r\n config: undefined\r\n}\r\n\r\n\r\nexport default function appReduce(state = initialState, action) {\r\n switch (action.type) {\r\n case SET_CONFIG: {\r\n return {\r\n ...state,\r\n config: {\r\n ...action.payload\r\n }\r\n }\r\n }\r\n default:\r\n return state;\r\n }\r\n}","import {combineReducers} from \"redux\";\r\nimport appReduce from \"./appReducer\";\r\n\r\nexport default combineReducers({\r\n app: appReduce\r\n})","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport './index.css';\r\nimport App from './App';\r\nimport reportWebVitals from './reportWebVitals';\r\nimport {Provider} from \"react-redux\";\r\nimport {applyMiddleware, createStore} from \"redux\";\r\nimport thunk from 'redux-thunk'\r\nimport rootReducer from \"./redux/reducer/rootReducer\";\r\nconst store = createStore(rootReducer, applyMiddleware(thunk));\r\n\r\nReactDOM.render(\r\n \r\n \r\n \r\n \r\n ,\r\n document.getElementById('root')\r\n);\r\n\r\n// If you want to start measuring performance in your app, pass a function\r\n// to log results (for example: reportWebVitals(console.log))\r\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\r\nreportWebVitals();\r\n"],"sourceRoot":""}