{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/js/vendor.js","webpack:///./src/js/helpers.js","webpack:///./src/js/components/player.js","webpack:///./src/js/components/animation.js","webpack:///./src/js/components/actualYear.js","webpack:///./src/js/components/form.js","webpack:///./src/js/main.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","0","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","svg4everybody","gsap","registerPlugin","ScrollToPlugin","require","vars","html","document","querySelector","body","header","menu","home","popup","isMobile","innerWidth","isTablet","isDesktop","winWidth","getRandom","min","max","Math","floor","random","regex","text","email","phone","path","loadAndUpdateUI","jsonFilePath","dataHandler","callback","fetch","then","response","json","location","href","indexOf","stats","service_statistics","innerHTML","number_of_users","toLocaleString","number_of_brigades","concat","amount_of_daily_traffic_gb","statuses","service_operation_statuses","selector","status","protocols","wireguard","ipsec","openvpn","embassies","telegram","whatsapp","tor","headline_infrastructure","issuing_configurations","the_work_of_a_key_holder","traffic_movement","forEach","item","classList","add","$video","_document$querySelect","querySelectorAll","play","addEventListener","e","card","target","closest","poster","iframe","setAttribute","dataset","src","links","headerNav","headerBurger","elementFade","selectButton","accordionQuestion","animateTlNav","timeline","animateNavClose","event","to","onComplete","remove","duration","x","ease","clearProps","observeInit","observers","IntersectionObserver","entries","observer","element","isIntersecting","unobserve","animate","contains","elementDelay","animateDelay","animateDuration","delay","opacity","animateFade","y","animateFadeDown","threshold","observe","eventInit","from","onStart","link","current","preventDefault","getAttribute","split","scrollTo","question","line","responsion","responsionHeight","clientHeight","style","height","button","parrent","num","active","activeNum","tabCurrent","tabActive","langMenu","year","toggle","Date","getFullYear","textContent","player","helperForm","helperSelect","validation","JustValidate","errorFieldCssClass","errorLabelStyle","display","el","handleFormSubmit","FormData","method","ok","reset","addField","rule","onSuccess","onFail","fields","isValid","animation","form"],"mappings":"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","file":"main.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t0: 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([312,1]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import '@babel/polyfill';\r\nimport svg4everybody from 'svg4everybody';\r\nimport {gsap} from 'gsap';\r\nimport {ScrollToPlugin} from 'gsap/ScrollToPlugin';\r\n\r\nsvg4everybody();\r\ngsap.registerPlugin(ScrollToPlugin);\r\n\r\nwindow.gsap = gsap;\r\n\r\nrequire('ninelines-ua-parser');\r\n","let vars = {};\n\nvars.html = document.querySelector('html');\nvars.body = document.querySelector('body');\nvars.header = document.querySelector('header');\nvars.menu = document.querySelector('menu');\nvars.home = document.querySelector('.home');\nvars.popup = document.querySelector('.popup');\nvars.isMobile = () => innerWidth <= 739;\nvars.isTablet = () => innerWidth >= 740 && innerWidth <= 1024;\nvars.isDesktop = () => innerWidth >= 1025;\nvars.winWidth = window.innerWidth;\n\nvars.getRandom = (min, max) => {\n\treturn Math.floor(Math.random() * (max - min + 1)) + min;\n};\n\nvars.regex = {\n\ttext: /^([a-zA-Zа-яА-Я ]){1,100}$/,\n\temail: /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/,\n\tphone: /^(\\+7|7|8)?[-]?\\(?[1-9][0-9]{2}\\)?[-]?[0-9]{3}[-]?[0-9]{2}[-]?[0-9]{2}$/,\n};\n\nconst loadFromJson = (path, callback) => {\n\tfetch(path)\n\t\t.then((response) => response.json())\n\t\t.then((data) => {\n\t\t\tcallback(data);\n\t\t});\n};\n\nconst checkIfOnPage = (path) => window.location.href.indexOf(path) > -1;\nfunction loadAndUpdateUI(jsonFilePath, dataHandler) {\n\tloadFromJson(jsonFilePath, dataHandler);\n}\n\nfunction updateStatsUI(data) {\n\tlet stats = data.service_statistics;\n\tdocument.querySelector('.users-number').innerHTML = stats.number_of_users.toLocaleString('ru-RU');\n\tdocument.querySelector('.brigadier-numbers').innerHTML = stats.number_of_brigades.toLocaleString('ru-RU');\n\tdocument.querySelector('.daily-traffic').innerHTML = `${stats.amount_of_daily_traffic_gb.toLocaleString('ru-RU')} Гб`;\n}\n\nfunction updateStatusesUI(data) {\n\tconst statuses = data.service_operation_statuses;\n\tconst elementsClasses = [\n\t\t{selector: '.protocols-wireguard',\n\t\t\tstatus: statuses.protocols.wireguard},\n\t\t{selector: '.protocols-ipsec',\n\t\t\tstatus: statuses.protocols.ipsec},\n\t\t{selector: '.protocols-openvpn',\n\t\t\tstatus: statuses.protocols.openvpn},\n\t\t{selector: '.embassies-telegram',\n\t\t\tstatus: statuses.embassies.telegram},\n\t\t{selector: '.embassies-whatsapp',\n\t\t\tstatus: statuses.embassies.whatsapp},\n\t\t{selector: '.embassies-tor',\n\t\t\tstatus: statuses.embassies.tor},\n\t\t{selector: '.headline-issuing',\n\t\t\tstatus: statuses.headline_infrastructure.issuing_configurations},\n\t\t{selector: '.headline-keyholder',\n\t\t\tstatus: statuses.headline_infrastructure.the_work_of_a_key_holder},\n\t\t{selector: '.headline-traffic',\n\t\t\tstatus: statuses.headline_infrastructure.traffic_movement},\n\t];\n\n\telementsClasses.forEach((item) => {\n\t\tdocument.querySelector(item.selector).classList.add(`is-${item.status}`);\n\t});\n}\n\nif (checkIfOnPage('stats')) {\n\tloadAndUpdateUI('/data/statistics.json', updateStatsUI);\n\tloadAndUpdateUI('/data/statuses.json', updateStatusesUI);\n}\n\nexport default vars;\n","const $video = document.querySelector('.video') ?? false;\r\n\r\nconst init = () => {\r\n\tif (!$video) {\r\n\t\treturn;\r\n\t}\r\n\r\n\tconst $videoPlay = document.querySelectorAll('.video__play');\r\n\r\n\t$videoPlay.forEach((play) => {\r\n\t\tplay.addEventListener('click', (e) => {\r\n\t\t\tconst card = e.target.closest('.video__card');\r\n\t\t\tconst poster = card.querySelector('.video__poster');\r\n\t\t\tconst iframe = card.querySelector('.video__iframe');\r\n\r\n\t\t\tposter.classList.add('is-hidden');\r\n\t\t\tiframe.setAttribute('src', iframe.dataset.src);\r\n\t\t});\r\n\t});\r\n};\r\n\r\nexport default {\r\n\tinit,\r\n};\r\n","import vars from '../helpers';\r\nimport {actualYear} from './actualYear';\r\nimport player from './player';\r\n\r\nconst links = document.querySelectorAll('[href*=\"#\"]');\r\nconst headerNav = vars.header.querySelector('.header__nav');\r\nconst headerBurger = vars.header.querySelector('.header__burger');\r\nconst elementFade = document.querySelectorAll('[data-animate]');\r\nconst selectButton = document.querySelectorAll('.profile__option button');\r\nconst accordionQuestion = document.querySelectorAll('.profile__accordion-question');\r\nconst animateTlNav = gsap.timeline();\r\nconst animateDuration = 0.3;\r\nlet animateFlag = true;\r\n\r\nconst scrollTo = (current) => {\r\n\tgsap.to(window, {\r\n\t\tdelay: 0.15,\r\n\t\tduration: 0.7,\r\n\t\tscrollTo: current,\r\n\t\tease: 'Power1.easeInOut',\r\n\t});\r\n};\r\n\r\nconst animateMouse = (e, element) => {\r\n\tgsap.to(element, {\r\n\t\tcss: {\r\n\t\t\tleft: e.pageX,\r\n\t\t\ttop: e.pageY,\r\n\t\t},\r\n\t\tduration: animateDuration,\r\n\t});\r\n};\r\n\r\nconst animateNavOpen = () => {\r\n\tanimateTlNav.from(headerNav, {\r\n\t\tonStart() {\r\n\t\t\tvars.html.classList.add('no-scroll');\r\n\t\t\tvars.header.classList.add('is-nav');\r\n\t\t},\r\n\t\tduration: animateDuration,\r\n\t\tx: '-100%',\r\n\t\tease: 'Power1.easeOut',\r\n\t\tclearProps: 'all',\r\n\t});\r\n};\r\n\r\nconst animateNavClose = (event) => {\r\n\tanimateTlNav.to(headerNav, {\r\n\t\tonComplete() {\r\n\t\t\tvars.html.classList.remove('no-scroll');\r\n\t\t\tvars.header.classList.remove('is-nav');\r\n\t\t},\r\n\t\tduration: event === 'resize' ? 0 : animateDuration,\r\n\t\tx: event === 'resize' ? '0' : '-100%',\r\n\t\tease: 'Power1.easeOut',\r\n\t\tclearProps: 'all',\r\n\t});\r\n};\r\n\r\nconst animateFade = (element) => {\r\n\tif (element.classList.contains('is-animate')) {\r\n\t\treturn;\r\n\t}\r\n\r\n\tconst elementDelay = element.dataset.animateDelay ? element.dataset.animateDelay : false;\r\n\r\n\tgsap.timeline().to(element, {\r\n\t\tonComplete() {\r\n\t\t\telement.classList.add('is-animate');\r\n\t\t},\r\n\t\tduration: animateDuration * 2,\r\n\t\tdelay: elementDelay ? elementDelay : 0.1,\r\n\t\topacity: 1,\r\n\t\tease: 'Power1.easeOut',\r\n\t\tclearProps: 'all',\r\n\t});\r\n};\r\n\r\nconst animateFadeDown = (element) => {\r\n\tif (element.classList.contains('is-animate')) {\r\n\t\treturn;\r\n\t}\r\n\r\n\tconst elementDelay = element.dataset.animateDelay ? element.dataset.animateDelay : false;\r\n\r\n\tgsap.timeline().to(element, {\r\n\t\tonComplete() {\r\n\t\t\telement.classList.add('is-animate');\r\n\t\t},\r\n\t\tduration: animateDuration * 2,\r\n\t\tdelay: elementDelay ? elementDelay : 0.2,\r\n\t\topacity: 1,\r\n\t\ty: 0,\r\n\t\tease: 'Power1.easeOut',\r\n\t\tclearProps: 'all',\r\n\t});\r\n};\r\n\r\nconst observeInit = () => {\r\n\tconst observers = new IntersectionObserver((entries, observer) => {\r\n\t\tentries.forEach((element) => {\r\n\t\t\tif (element.isIntersecting && animateFlag) {\r\n\t\t\t\tobserver.unobserve(element.target);\r\n\r\n\t\t\t\tif (element.target.dataset.animate === 'fade') {\r\n\t\t\t\t\tanimateFade(element.target);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (element.target.dataset.animate === 'fade-down') {\r\n\t\t\t\t\tanimateFadeDown(element.target);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t}, {threshold: 0.3});\r\n\r\n\telementFade.forEach((element) => {\r\n\t\tobservers.observe(element);\r\n\t});\r\n};\r\n\r\nconst eventInit = () => {\r\n\theaderBurger.addEventListener('click', () => {\r\n\t\tif (vars.header.classList.contains('is-nav')) {\r\n\t\t\tanimateNavClose();\r\n\t\t} else {\r\n\t\t\tanimateNavOpen();\r\n\t\t}\r\n\t});\r\n\r\n\twindow.addEventListener('resize', () => {\r\n\t\tif (!vars.isMobile() && vars.header.classList.contains('is-nav')) {\r\n\t\t\tanimateNavClose('resize');\r\n\t\t}\r\n\t});\r\n\r\n\tlinks.forEach((link) => {\r\n\t\tlink.addEventListener('click', (e) => {\r\n\t\t\te.preventDefault();\r\n\r\n\t\t\tscrollTo(`#${link.getAttribute('href').split('#')[1]}`);\r\n\r\n\t\t\tif (vars.header.classList.contains('is-nav')) {\r\n\t\t\t\tanimateNavClose();\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\r\n\tif (vars.html.classList.contains('page-profile')) {\r\n\t\taccordionQuestion.forEach((question) => {\r\n\t\t\tquestion.addEventListener('click', (e) => {\r\n\t\t\t\tconst line = e.target.closest('.profile__accordion-line');\r\n\t\t\t\tconst responsion = line.querySelector('.profile__accordion-responsion');\r\n\t\t\t\tconst responsionHeight = line.querySelector('.profile__accordion-content').clientHeight;\r\n\r\n\t\t\t\tif (line.classList.contains('is-active')) {\r\n\t\t\t\t\tline.classList.remove('is-active');\r\n\t\t\t\t\tresponsion.style.height = 0;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tline.classList.add('is-active');\r\n\t\t\t\t\tresponsion.style.height = `${responsionHeight}px`;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n\r\n\t\tselectButton.forEach((button) => {\r\n\t\t\tbutton.addEventListener('click', (e) => {\r\n\t\t\t\tconst target = e.target;\r\n\t\t\t\tconst parrent = target.closest('.profile__data');\r\n\t\t\t\tconst num = target.dataset.button;\r\n\t\t\t\tconst active = parrent.querySelector('.button.is-select');\r\n\t\t\t\tconst activeNum = active.dataset.button;\r\n\t\t\t\tconst tabCurrent = parrent.querySelector(`[data-tab=\"${num}\"]`);\r\n\t\t\t\tconst tabActive = parrent.querySelector(`[data-tab=\"${activeNum}\"]`);\r\n\r\n\t\t\t\tgsap.timeline().to(tabActive, {\r\n\t\t\t\t\tonStart() {\r\n\t\t\t\t\t\tactive.classList.remove('is-select');\r\n\t\t\t\t\t\ttarget.classList.add('is-select');\r\n\t\t\t\t\t},\r\n\t\t\t\t\tonComplete() {\r\n\t\t\t\t\t\ttabActive.classList.add('is-hidden');\r\n\t\t\t\t\t\ttabCurrent.classList.remove('is-hidden');\r\n\t\t\t\t\t},\r\n\t\t\t\t\tduration: animateDuration,\r\n\t\t\t\t\topacity: 0,\r\n\t\t\t\t\tease: 'Power1.easeOut',\r\n\t\t\t\t\tclearProps: 'all',\r\n\t\t\t\t}).from(tabCurrent, {\r\n\t\t\t\t\tduration: animateDuration,\r\n\t\t\t\t\topacity: 0,\r\n\t\t\t\t\tease: 'Power1.easeOut',\r\n\t\t\t\t\tclearProps: 'all',\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n};\r\n\r\nconst langMenuOpen = () => {\r\n\tconst langMenu = document.querySelector('.header__lang-menu');\r\n\r\n\tdocument.querySelector('body').addEventListener('click', (e) => {\r\n\t\tif (!e.target.closest('.header__lang-menu') && !e.target.closest('.header__lang')) {\r\n\t\t\tlangMenu.classList.remove('active');\r\n\t\t}\r\n\t});\r\n\r\n\tdocument.querySelector('.header__lang').addEventListener('click', () => {\r\n\t\tlangMenu.classList.toggle('active');\r\n\t});\r\n};\r\n\r\nconst init = () => {\r\n\tobserveInit();\r\n\teventInit();\r\n\tlangMenuOpen();\r\n\tactualYear();\r\n\tplayer.init();\r\n};\r\n\r\nexport default {\r\n\tinit,\r\n};\r\n","export const actualYear = () => {\r\n\tconst year = new Date().getFullYear();\r\n\r\n\tif (document.querySelector('[data-actual-year]')) {\r\n\t\tdocument.querySelector('[data-actual-year]').textContent = year;\r\n\t}\r\n};\r\n","import vars from '../helpers';\r\nimport JustValidate from 'just-validate';\r\n\r\nconst init = () => {\r\n\tif (!vars.html.classList.contains('page-home')) {\r\n\t\treturn;\r\n\t}\r\n\r\n\tconst helperButton = document.querySelector('.button--helper');\r\n\tconst helperForm = document.querySelector('.helper__form');\r\n\tconst helperSelect = document.querySelector('.helper__label select');\r\n\tconst helperInput = document.querySelectorAll('.helper__input');\r\n\tconst validation = new JustValidate('.helper__form', {\r\n\t\terrorFieldCssClass: 'is-error',\r\n\t\terrorLabelStyle: {\r\n\t\t\tdisplay: 'none',\r\n\t\t},\r\n\t});\r\n\r\n\thelperSelect.addEventListener('change', (e) => {\r\n\t\tdocument.querySelectorAll('.helper__label.communicate').forEach((el) => {\r\n\t\t\tel.classList.add('hidden');\r\n\t\t});\r\n\t\tdocument.querySelectorAll('.helper__input.communicate').forEach((el) => {\r\n\t\t\tel.value = '';\r\n\t\t});\r\n\t\thelperForm.querySelector(`#${e.target.value}`).closest('.helper__label').classList.remove('hidden');\r\n\t});\r\n\r\n\tconst handleFormSubmit = () => {\r\n\t\tconst data = new FormData(helperForm);\r\n\r\n\t\tfetch('/contact.php', {\r\n\t\t\tmethod: 'POST',\r\n\t\t\tbody: data,\r\n\t\t})\r\n\t\t\t.then((response) => {\r\n\t\t\t\tif (response.ok) {\r\n\t\t\t\t\tconst msg = document.querySelector('.success');\r\n\t\t\t\t\tmsg.classList.add('active');\r\n\t\t\t\t\thelperForm.reset();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconst msg = document.querySelector('.unsuccess');\r\n\r\n\t\t\t\t\tmsg.classList.add('active');\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch(() => {\r\n\t\t\t\tconst msg = document.querySelector('.unsuccess');\r\n\r\n\t\t\t\tmsg.classList.add('active');\r\n\t\t\t});\r\n\t};\r\n\r\n\tconst requiredCheck = (fields) => {\r\n\t\tif (fields['#phone'].isValid || fields['#email'].isValid || fields['#telegram'].isValid || fields['#signal'].isValid) {\r\n\t\t\thandleFormSubmit();\r\n\t\t}\r\n\t};\r\n\r\n\tif (vars.html.classList.contains('page-home')) {\r\n\t\tvalidation\r\n\t\t\t.addField('#name', [\r\n\t\t\t\t{\r\n\t\t\t\t\trule: 'required',\r\n\t\t\t\t},\r\n\t\t\t])\r\n\t\t\t.addField('#company', [\r\n\t\t\t\t{\r\n\t\t\t\t\trule: 'required',\r\n\t\t\t\t},\r\n\t\t\t])\r\n\t\t\t.addField('#phone', [\r\n\t\t\t\t{\r\n\t\t\t\t\trule: 'required',\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\trule: 'number',\r\n\t\t\t\t},\r\n\t\t\t])\r\n\t\t\t.addField('#email', [\r\n\t\t\t\t{\r\n\t\t\t\t\trule: 'required',\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\trule: 'email',\r\n\t\t\t\t},\r\n\t\t\t])\r\n\t\t\t.addField('#telegram', [\r\n\t\t\t\t{\r\n\t\t\t\t\trule: 'required',\r\n\t\t\t\t},\r\n\t\t\t])\r\n\t\t\t.addField('#signal', [\r\n\t\t\t\t{\r\n\t\t\t\t\trule: 'required',\r\n\t\t\t\t},\r\n\t\t\t])\r\n\t\t\t.addField('#accept', [\r\n\t\t\t\t{\r\n\t\t\t\t\trule: 'required',\r\n\t\t\t\t},\r\n\t\t\t])\r\n\t\t\t.onSuccess(handleFormSubmit)\r\n\t\t\t.onFail(requiredCheck);\r\n\r\n\t\t// helperButton.addEventListener('click', () => {\r\n\r\n\t\t// });\r\n\t}\r\n};\r\n\r\nexport default {\r\n\tinit,\r\n};\r\n","import './vendor';\r\nimport animation from './components/animation';\r\nimport form from './components/form';\r\n\r\ndocument.addEventListener('DOMContentLoaded', () => {\r\n\tanimation.init();\r\n\tform.init();\r\n});\r\n"],"sourceRoot":""}