PageSourceSearch

https://www.g-atai.com/assets/dist/assets/js-analytics-tracker-DT6ZNaIH.js

js g-atai.com collected 2026-10-08 06:02:05 UTC 5,986 bytes, 1 lines download raw bytes

1(function(){let e=document.getElementById(`gti-analytics-config`);if(!e)return;let t={};try{t=JSON.parse(e.textContent||`{}`)}catch{return}let n=t.endpoint||`/analytics/collect`,r=Date.now(),i=new Set,a=new WeakMap,o=new Set(`name.fullname.full_name.first_name.last_name.email.phone.company.website.websiteorlinkedin.linkedin.service.servicetype.selectedindustry.selectedusecase.budget.budgetrange.timeline.projectdescription.specialrequest.message.subject.date.selectedtime.providerdate.providertime.providername.timezone`.split(`.`));function s(e,t){try{let n=e.getItem(t);return n||(n=`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`,e.setItem(t,n)),n}catch{return`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}}let c=s(window.sessionStorage,`gti_analytics_session`),l=s(window.localStorage,`gti_analytics_visitor`);function u(e){if(!e||!e.tagName)return``;let t=[e.tagName.toLowerCase()];return e.id&&t.push(`#${e.id}`),e.name&&t.push(`[name="${e.name}"]`),e.classList&&e.classList.length&&t.push(`.${[...e.classList].slice(0,2).join(`.`)}`),t.join(``)}function d(e,n,r){return Object.assign({eventId:`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`,sessionId:c,visitorId:l,eventType:e,eventName:n,path:window.location.pathname,pageTitle:document.title,language:document.documentElement.lang||t.language||`en`,referrer:document.referrer||``,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone||``,screenWidth:window.screen?.width||0,screenHeight:window.screen?.height||0,viewportWidth:window.innerWidth||0,viewportHeight:window.innerHeight||0},r||{})}function f(e){let t=JSON.stringify(e);if(navigator.sendBeacon){let e=new Blob([t],{type:`application/json`});navigator.sendBeacon(n,e);return}fetch(n,{method:`POST`,headers:{"Content-Type":`application/json`},body:t,keepalive:!0,credentials:`same-origin`}).catch(()=>{})}function p(e,t,n){f(d(e,t,n))}function m(e){return(e?.name||e?.id||``).trim().toLowerCase().replace(/[^a-z0-9]/g,``)}function h(e){if(!e||!(e instanceof HTMLElement))return!1;let t=(e.getAttribute(`type`)||``).toLowerCase();if([`password`,`hidden`,`file`,`submit`,`button`,`reset`].includes(t))return!1;let n=m(e);return o.has(n)?!0:/(name|mail|email|phone|company|budget|timeline|message|subject|website|linkedin|date|time|industry|usecase|project)/.test(n)}function g(e){if(!e)return``;let t=(e.getAttribute(`type`)||``).toLowerCase();return t===`checkbox`||t===`radio`?e.checked?e.value||`checked`:``:e.tagName===`SELECT`?(e.options?.[e.selectedIndex]?.text||e.value||``).trim():String(e.value||``).trim()}function _(e){if(!(e instanceof HTMLFormElement))return!1;let t=`${e.getAttribute(`action`)||``}`.toLowerCase(),n=`${e.id||``} ${e.className||``}`.toLowerCase();return/(booking|request|contact|consult|meeting|subscribe|newsletter)/.test(`${t} ${n}`)?!0:[...e.querySelectorAll(`input, textarea, select`)].some(h)}function v(e){if(!_(e))return null;if(!a.has(e)){let t={key:e.dataset.analyticsFormKey||e.id||u(e)||`form-${Math.random().toString(36).slice(2,8)}`,label:e.getAttribute(`aria-label`)||e.dataset.formLabel||e.querySelector(`h1,h2,h3,legend,label`)?.textContent?.trim()||e.id||`Form`,action:e.getAttribute(`action`)||window.location.pathname,fields:{},touched:!1,completed:!1,lastField:``,timer:null};a.set(e,t)}return a.get(e)}function y(e){let t={};return[...e.querySelectorAll(`input, textarea, select`)].forEach(e=>{if(!h(e))return;let n=g(e);if(!n)return;let r=m(e);t[r]=n.slice(0,240)}),t}function b(e,t,n={}){let r=v(e);r&&(r.fields=y(e),r.touched=!0,r.lastField=n.lastField||r.lastField,p(t,t,{target:u(e),text:r.label.slice(0,180),meta:{leadCapture:!0,formKey:r.key,formLabel:r.label,formAction:r.action,partialFields:r.fields,fieldCount:Object.keys(r.fields).length,lastField:r.lastField,completed:!!n.completed}}))}function x(e,t){let n=v(e);n&&(n.lastField=t||n.lastField,n.touched=!0,n.timer&&window.clearTimeout(n.timer),n.timer=window.setTimeout(()=>{b(e,`form_progress`,{lastField:n.lastField})},500))}function S(){a.forEach?.(()=>{}
1),document.querySelectorAll(`form`).forEach(e=>{let t=a.get(e);t&&t.touched&&!t.completed&&(t.timer&&=(window.clearTimeout(t.timer),null),b(e,`form_abandon`,{lastField:t.lastField}))})}p(`pageview`,`page_load`),document.querySelectorAll(`form`).forEach(e=>{v(e)}),document.addEventListener(`click`,e=>{let t=e.target.closest(`a, button, input, textarea, select, label, [data-track], form`);if(!t)return;let n=t.getBoundingClientRect(),r=n.width?(e.clientX-n.left)/n.width*100:null,i=n.height?(e.clientY-n.top)/n.height*100:null,a=t.closest(`form`);p(`click`,a?`form_interaction`:`ui_click`,{target:u(t),text:(t.innerText||t.value||t.getAttribute(`aria-label`)||``).trim().slice(0,180),xPercent:r,yPercent:i,meta:{href:t.getAttribute(`href`)||``,formAction:a?.getAttribute(`action`)||``}})},!0),document.addEventListener(`input`,e=>{let t=e.target;if(!h(t))return;let n=t.closest(`form`);n&&x(n,m(t))},!0),document.addEventListener(`change`,e=>{let t=e.target;if(!h(t))return;let n=t.closest(`form`);n&&x(n,m(t))},!0),document.addEventListener(`submit`,e=>{let t=e.target;if(!(t instanceof HTMLFormElement))return;let n=v(t);n&&(n.completed=!0,n.timer&&=(window.clearTimeout(n.timer),null),b(t,`form_complete`,{completed:!0,lastField:n.lastField})),p(`form_submit`,`submit_attempt`,{target:u(t),meta:{action:t.getAttribute(`action`)||``,method:t.getAttribute(`method`)||`get`}})},!0),window.addEventListener(`scroll`,()=>{let e=document.documentElement,t=Math.max(1,e.scrollHeight-window.innerHeight),n=Math.min(100,Math.round(window.scrollY/t*100));[25,50,75,100].forEach(e=>{n>=e&&!i.has(e)&&(i.add(e),p(`scroll_depth`,`scroll_${e}`,{meta:{percent:e}}))})},{passive:!0});function C(){S(),p(`page_exit`,`page_close`,{durationMs:Date.now()-r})}document.addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&C()}),window.addEventListener(`pagehide`,C),window.addEventListener(`beforeunload`,C)})();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.