const hashCode=e=>{let t=0,i,n;if(0===e.length)return t;for(i=0;i<e.length;i++)t=(t<<5)-t+(n=e.charCodeAt(i)),t|=0;return Math.abs(t).toString(36)},generateStableId=(e,t)=>{if(!t)return null;let i=t.tagName,n=t.className||"",s=t.getAttribute("href")||"",o=t.getAttribute("src")||"",l=t.getAttribute("type")||"",r=t.getAttribute("name")||"",c=t.textContent.trim()||"",a=t.nextElementSibling||"null",u=t.previousElementSibling||"null",m=`${i}-${n}-${s}-${o}-${l}-${r}-${c}-${a}-${u}`;return`${e}_${hashCode(m)}`},getActionType=e=>{let t=["comagic","Calltouch"],i=[{type:"button_click",selector:"button"},{type:"link_click_phone",selector:'a[href^="tel:"]'},{type:"link_click_mail",selector:'a[href^="mailto:"]'},{type:"link_click_download",selector:"a[download]"},],n=[{name:"vk",url:"https://vk.com/"},{name:"tg",url:"https://t.me/"},{name:"yt",url:"https://www.youtube.com/"},],s=()=>t.map(e=>[{type:`click_${e}`,selector:`[class*="${e}"]`},{type:`form_submit_${e}`,selector:`[class*="${e}"] button`},{type:`form_submit_${e}`,selector:`[class*="${e}"] input([type="submit"])`},{type:`form_touch_${e}`,selector:`[class*="${e}"] input:not[type="submit"]`},]),o=()=>n.map(({name:e,url:t})=>({type:`link_click_${e}`,selector:`a[href^="${t}"]`})),l=e=>e.filter(e=>e.selector.startsWith("a")).map(e=>e.selector.substring(1)).join(", "),r=[...s().flat(),...i,...o(),{type:"link_click",selector:`a:not(${l([...i,...o(),])})`},{type:"form_submit",selector:'input[type="submit"]'},{type:"form_touch",selector:'input:not([type="submit"])'},],c=0;for(;c<r.length;){let{type:a,selector:u}=r[c];if(e.matches(u))return a;c++}return"unspecified"},getClientIp=()=>fetch("https://api.ipify.org?format=json").then(e=>e.json()).then(e=>e.ip).catch(e=>"unknown"),getM108SessionId=()=>window._m108SessionId,getDocumentHeight=()=>document.documentElement.scrollHeight,getM108YandexClientId=()=>window._m108YandexClientId,getM108ClientId=()=>window._m108ClientId,getM108YandexLogin=()=>window._m108YandexLogin,getM108MailtopClientId=()=>window._m108MailtopClientId,getM108MailtopCounterId=()=>window._m108MailtopCounterId,getUrl=()=>document.location.href;var globalTimeoutId,dataSent=!1,globalTimerTime=3e4;const resetGlobalTimer=e=>{globalTimeoutId&&clearTimeout(globalTimeoutId),globalTimeoutId=setTimeout(()=>{e.trigger=`no events in the last ${globalTimerTime/1e3} s`,dataSent=!0,userBehaviour.stop()},globalTimerTime)},stringifyData=e=>{let t=["start_time","current_time","stop_time","click_events","mouse_movements","mouse_scroll","keyboard_activities","touch_events","media_interactions","window_sizes","visibilitychanges",];return t.forEach(t=>{e[t]=JSON.stringify(e[t])}),JSON.stringify(e)},sendUserBehaviourData=(e,t)=>{fetch(`https://rtb.1ga.team/pixel/save_pixel/${e}`,{method:"POST",keepalive:!0,headers:{"Content-Type":"application/json"},body:stringifyData(t)})};var userBehaviour=function(){var e={clicks:!0,mouseMovement:!0,mouseMovementInterval:1,mouseScroll:!0,timeCount:!0,clearAfterProcess:!0,processTime:!1,windowResize:!0,visibilitychange:!0,keyboardActivity:!0,touchEvents:!0,audioVideoInteraction:!0,processData:function(e){sendUserBehaviourData(window._m108PixelId,e)}},t={},i={processInterval:null,mouseInterval:null,mousePosition:[],eventListeners:{scroll:null,click:null,mouseMovement:null,windowResize:null,visibilitychange:null,keyboardActivity:null,touchStart:null},eventsFunctions:{scroll(){resetGlobalTimer(n),n.scroll_depth=Math.max(n.scroll_depth,window.scrollY),n.mouse_scroll.push([window.scrollX,window.scrollY,l()])},click(e){resetGlobalTimer(n),n.click_count++;var t=[],i="";e.composedPath().forEach((n,s)=>{s!==e.composedPath().length-1&&s!==e.composedPath().length-2&&(i=n.localName,""!==n.className&&n.classList.forEach(e=>{i+="."+e}),""!==n.id&&(i+="#"+n.id),t.push(i))}),t=t.reverse().join(">");let s=getActionType(e.target);"unspecified"!==s&&n.specified_clicks_count++,n.click_events.push([e.clientX,e.clientY,t,s,generateStableId(s,e.target),l(),])},mouseMovement(e){resetGlobalTimer(n),i.mousePosition=[e.clientX,e.clientY,document.elementFromPoint(e.clientX,e.clientY),l(),]},windowResize(e){resetGlobalTimer(n),n.window_sizes.push([window.innerWidth,window.innerHeight,l(),])},visibilitychange(e){resetGlobalTimer(n),n.visibilitychanges.push([document.visibilityState,l()])},keyboardActivity(e){resetGlobalTimer(n),n.keyboard_activities.push([e.key,l()])},touchStart(e){resetGlobalTimer(n),n.touch_events.push(["touchstart",e.touches[0].clientX,e.touches[0].clientY,l(),])},mediaInteraction(e){resetGlobalTimer(n),n.media_interactions.push(["play",e.target.currentSrc,l(),])}}},n={};function s(){n={ip:"",session_id:"",m108_client_id:"",page_url:"",yandex_client_id:"",mailtop_client_id:"",mailtop_counter_id:"",yandex_login:"",document_height:0,scroll_depth:0,session_time:0,start_time:0,current_time:0,stop_time:0,click_count:0,specified_clicks_count:0,click_events:[],mouse_movements:[],mouse_scroll:[],keyboard_activities:[],touch_events:[],media_interactions:[],window_sizes:[],visibilitychanges:[],trigger:""}}function o(){return Date.now()}function l(){return Date.now()-n.start_time}async function r(){Object.keys(t).length!==Object.keys(e).length&&(t=e),void 0!==t.timeCount&&t.timeCount&&(n.start_time=o()),t.mouseMovement&&(i.eventListeners.mouseMovement=window.addEventListener("mousemove",i.eventsFunctions.mouseMovement),i.mouseInterval=setInterval(()=>{i.mousePosition&&i.mousePosition.length&&(!n.mouse_movements.length||i.mousePosition[0]!==n.mouse_movements[n.mouse_movements.length-1][0]&&i.mousePosition[1]!==n.mouse_movements[n.mouse_movements.length-1][1])&&n.mouse_movements.push(i.mousePosition)},1e3*e.mouseMovementInterval)),n.ip=await getClientIp(),n.session_id=getM108SessionId(),n.document_height=getDocumentHeight(),n.yandex_client_id=getM108YandexClientId(),n.mailtop_client_id=getM108MailtopClientId(),n.mailtop_counter_id=getM108MailtopCounterId(),n.m108_client_id=getM108ClientId(),n.page_url=getUrl(),n.yandex_login=getM108YandexLogin(),n.trigger="tab closed",t.clicks&&(i.eventListeners.click=window.addEventListener("click",i.eventsFunctions.click)),t.mouseScroll&&(i.eventListeners.scroll=window.addEventListener("scroll",i.eventsFunctions.scroll)),!1!==t.windowResize&&(i.eventListeners.windowResize=window.addEventListener("resize",i.eventsFunctions.windowResize)),!1!==t.visibilitychange&&(i.eventListeners.visibilitychange=window.addEventListener("visibilitychange",i.eventsFunctions.visibilitychange)),t.keyboardActivity&&(i.eventListeners.keyboardActivity=window.addEventListener("keydown",i.eventsFunctions.keyboardActivity)),t.touchEvents&&(i.eventListeners.touchStart=window.addEventListener("touchstart",i.eventsFunctions.touchStart)),t.audioVideoInteraction&&document.querySelectorAll("video").forEach(e=>{e.addEventListener("play",i.eventsFunctions.mediaInteraction)}),!1!==t.processTime&&(i.processInterval=setInterval(()=>{c()},1e3*t.processTime)),resetGlobalTimer(n)}function c(){t.processData(a()),t.clearAfterProcess&&s()}function a(){return void 0!==t.timeCount&&t.timeCount&&(n.current_time=o()),n.session_time=n.stop_time-n.start_time,n}return s(),{showConfig:function i(){return Object.keys(t).length!==Object.keys(e).length?e:t},config:function i(n){t={},Object.keys(e).forEach(i=>{i in n?t[i]=n[i]:t[i]=e[i]})},start:r,stop:function e(){!1!==t.processTime&&clearInterval(i.processInterval),clearInterval(i.mouseInterval),window.removeEventListener("scroll",i.eventsFunctions.scroll),window.removeEventListener("click",i.eventsFunctions.click),window.removeEventListener("mousemove",i.eventsFunctions.mouseMovement),window.removeEventListener("resize",i.eventsFunctions.windowResize),window.removeEventListener("visibilitychange",i.eventsFunctions.visibilitychange),window.removeEventListener("keydown",i.eventsFunctions.keyboardActivity),window.removeEventListener("touchstart",i.eventsFunctions.touchStart),n.stop_time=o(),c()},showResult:a,processResults:c}}();userBehaviour.start(),window.addEventListener("beforeunload",()=>{dataSent||userBehaviour.stop()});