1!function(){"use strict";"function"!=typeof Object.assign&&(Object.assign=function(e){if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var n=Object(e),t=1;t<arguments.length;t++){var o=arguments[t];if(null!=o)for(var i in o)Object.prototype.hasOwnProperty.call(o,i)&&(n[i]=o[i])}return n});var e=window.ViziHeatmapConfig||{};if(e.apiUrl&&e.siteToken){e=Object.assign({},{sampleRate:100,recordingRate:100,batchSize:10,batchInterval:3e3,rageClickThreshold:3,rageClickWindow:1e3,scrollDebounce:150,mousemoveThrottle:100,maxBatchRetries:3,maskSelectors:[],ignorePaths:[],debug:!1},e);var n,t,o,i={visitorId:null,sessionId:null,isRecordingSession:!1,eventQueue:[],clickHistory:[],scrollDepth:0,maxScrollDepth:0,lastSendTime:Date.now(),retryCount:0,isSending:!1},r={stopFn:null,events:[],eventCount:0,lastFlush:Date.now(),isRecording:!1,maxBufferSize:50,flushInterval:1e4,maxRecordingDuration:12e5,recordingStartTime:null,recordingTimeoutId:null},a=g(function(){var e=window.pageYOffset||document.documentElement.scrollTop,n=Math.max(document.body.scrollHeight,document.documentElement.scrollHeight),t=window.innerHeight||document.documentElement.clientHeight,o=Math.round(e/(n-t)*100);o=Math.min(100,Math.max(0,o)),i.scrollDepth=o,o>i.maxScrollDepth&&(i.maxScrollDepth=o),i.isRecordingSession&&p(f("scroll",{scrollDepth:o,maxScrollDepth:i.maxScrollDepth}))},e.scrollDebounce),s=(n=function(e){i.isRecordingSession&&p(f("mousemove",{x:e.clientX,y:e.clientY,docX:e.pageX,docY:e.pageY}))},t=e.mousemoveThrottle,o=0,function(){var e=Date.now();e-o>=t&&(o=e,n.apply(this,arguments))}),c=g(function(){var e=m();p(f("viewport_resize",{width:e.w,height:e.h}))},500);"loading"===document.readyState?document.addEventListener("DOMContentLoaded",O):O(),window.ViziHeatmap={version:"1.0.0",config:e,state:i,sendBatch:v,trackEvent:function(e,n){p(f(e,n))}}}else console.warn("[ViziHeatmap] Missing required configuration");function l(e){return e+"_"+Date.now()+"_"+Math.random().toString(36).substr(2,9)}function d(e){if(!e||e===document)return null;if(e.id)return"#"+e.id;for(var n=[];e&&e!==document.body;){var t=e.tagName.toLowerCase();if(e.className&&"string"==typeof e.className){var o=e.className.trim().split(/\s+/).slice(0,2);o.length>0&&o[0]&&(t+="."+o.join("."))}if(n.unshift(t),e=e.parentElement,n.length>=3)break}return n.join(" > ")}function u(n){if(!n)return!1;for(var t=0;t<e.maskSelectors.length;t++)try{if(n.matches(e.maskSelectors[t]))return!0}catch(e){}return!1}function m(){return{w:window.innerWidth||document.documentElement.clientWidth,h:window.innerHeight||document.documentElement.clientHeight}}function h(){if(document.getElementById("wpadminbar"))return!0;if(-1!==document.body.className.indexOf("logged-in"))return!0;for(var e=document.cookie.split(";"),n=0;n<e.length;n++){if(0===e[n].trim().indexOf("wordpress_logged_in_"))return!0}return!1}function g(e,n){var t;return function(){var o=this,i=arguments;clearTimeout(t),t=setTimeout(function(){e.apply(o,i)},n)}}function f(n,t){var o,r=function(){var e=navigator.userAgent,n={os:null,osVersion:null,browser:null,browserVersion:null};-1!==e.indexOf("Windows NT 10.0")?(n.os="Windows",n.osVersion="10"):-1!==e.indexOf("Windows NT 6.3")?(n.os="Windows",n.osVersion="8.1"):-1!==e.indexOf("Windows NT 6.2")?(n.os="Windows",n.osVersion="8"):-1!==e.indexOf("Windows NT 6.1")?(n.os="Windows",n.osVersion="7"):-1!==e.indexOf("Mac OS X")?(n.os="macOS",(t=e.match(/Mac OS X (\d+[._]\d+)/))&&(n.osVersion=t[1].replace("_","."))):-1!==e.indexOf("Android")?(n.os="Android",(t=e.match(/Android (\d+\.\d+)/))&&(n.osVersion=t[1])):-1!==e.indexOf("iPhone")||-1!==e.indexOf("iPad")?(n.os="iOS",(t=e.match(/OS (\d+_\d+)/))&&(n.osVersion=t[1].replace("_","."))):-1!==e.indexOf("Linux")&&(n.os="Linux");if(-1!==e.indexOf("Edg/"))n.browser="Edge",(t=e.match(/Edg\/(\d+\.\d+)/))&&(n.browserVersion=t[1]);else if(-1!==e.indexOf("Chrome/")&&-1===e.indexOf("Edg/"))n.browser="Chrome",(t=e.match(/Chrome\/(\d+\.\d+)/))&&(n.browserVersion=t[1]);else if(-1!==e.indexOf("Firefox/"))n.browser="Firefox",(t=e.match(/Firefox\/(\d+\.\d+)/))&&
1(n.browserVersion=t[1]);else if(-1!==e.indexOf("Safari/")&&-1===e.indexOf("Chrome"))n.browser="Safari",(t=e.match(/Version\/(\d+\.\d+)/))&&(n.browserVersion=t[1]);else if(-1!==e.indexOf("MSIE")||-1!==e.indexOf("Trident/")){var t;n.browser="IE",(t=e.match(/(?:MSIE |rv:)(\d+\.\d+)/))&&(n.browserVersion=t[1])}return n}(),a=function(){var e={},n=window.location.search;if(!n)return e;for(var t=n.substring(1).split("&"),o=0;o<t.length;o++){var i=t[o].split("="),r=decodeURIComponent(i[0]),a=decodeURIComponent(i[1]||"");"utm_source"===r?e.source=a:"utm_medium"===r?e.medium=a:"utm_campaign"===r?e.campaign=a:"utm_term"===r?e.term=a:"utm_content"===r&&(e.content=a)}return Object.keys(e).length>0?e:null}(),s={viewport:m(),deviceType:(o=window.innerWidth||document.documentElement.clientWidth,o<768?"mobile":o<1024?"tablet":"desktop"),os:r.os,osVersion:r.osVersion,browser:r.browser,browserVersion:r.browserVersion,locale:navigator.language||navigator.userLanguage||"en-US",wpTheme:e.wpTheme||null,wpThemeVersion:e.wpThemeVersion||null,wpPluginVersion:"1.0.0",isLoggedIn:h()};return a&&(s.utm=a),"page_view"===n&&document.referrer&&(s.referrer=document.referrer),{type:n,ts:Date.now(),sessionId:i.sessionId,visitorId:i.visitorId,url:window.location.href,data:t||{},meta:s}}function p(n){i.eventQueue.push(n),(i.eventQueue.length>=e.batchSize||Date.now()-i.lastSendTime>=e.batchInterval)&&v()}function v(){if(!i.isSending&&0!==i.eventQueue.length){i.isSending=!0;var n=i.eventQueue.splice(0,e.batchSize),t={siteToken:e.siteToken,events:n};if(navigator.sendBeacon)try{if(navigator.sendBeacon(e.apiUrl,new Blob([JSON.stringify(t)],{type:"application/json"})))return i.lastSendTime=Date.now(),i.retryCount=0,void(i.isSending=!1)}catch(e){}if("function"==typeof fetch)fetch(e.apiUrl,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t),keepalive:!0}).then(function(e){if(!e.ok)throw new Error("HTTP "+e.status);return e.json()}).then(function(e){i.lastSendTime=Date.now(),i.retryCount=0}).catch(function(t){i.retryCount<e.maxBatchRetries&&(i.eventQueue=n.concat(i.eventQueue),i.retryCount++)}).finally(function(){i.isSending=!1});else{var o=new XMLHttpRequest;o.open("POST",e.apiUrl,!0),o.setRequestHeader("Content-Type","application/json"),o.onload=function(){if(o.status>=200&&o.status<300)try{JSON.parse(o.responseText);i.lastSendTime=Date.now(),i.retryCount=0}catch(e){}else i.retryCount<e.maxBatchRetries&&(i.eventQueue=n.concat(i.eventQueue),i.retryCount++);i.isSending=!1},o.onerror=function(){i.retryCount<e.maxBatchRetries&&(i.eventQueue=n.concat(i.eventQueue),i.retryCount++),i.isSending=!1},o.send(JSON.stringify(t))}}}function w(){var e=f("page_view",{path:window.location.pathname});e.meta.title=document.title,p(e)}function S(n){var t=n.target||n.srcElement,o=d(t),r={x:n.clientX,y:n.clientY,docX:n.pageX,docY:n.pageY,selector:o,tagName:t.tagName,text:t.innerText?t.innerText.substring(0,100):null};u(t)&&(r.text="[masked]");var a=Date.now();i.clickHistory.push({x:n.pageX,y:n.pageY,time:a}),i.clickHistory=i.clickHistory.filter(function(n){return a-n.time<e.rageClickWindow});var s=i.clickHistory.filter(function(e){var t=Math.abs(e.x-n.pageX),o=Math.abs(e.y-n.pageY);return t<20&&o<20});if(s.length>=e.rageClickThreshold){for(var c=0,l=0,m=0;m<s.length;m++)c+=s[m].x,l+=s[m].y;p(f("rage_click",{clicks:s.map(function(e){return{x:e.x,y:e.y,ts:new Date(e.time)}}),centroid:{x:Math.round(c/s.length),y:Math.round(l/s.length)},selector:o,tagName:t.tagName})),i.clickHistory=[]}else i.isRecordingSession&&p(f("click",r))}function y(){p(f("visibility_change",{hidden:document.hidden})),document.hidden&&(i.isRecordingSession&&r.events.length>0&&k(),v())}function b(e){var n=e.target||e.srcElement;if(["INPUT","TEXTAREA","SELECT"].includes(n.tagName)){var t={selector:d(n),type:n.type,name:n.name,id:n.id};u(n)||["password","email","tel"].includes(n.type)?t.value="[masked]":"checkbox"===n.type||"radio"===n.type?t.checked=n.checked:"SELECT"===n.tagName&&(t.selectedIndex=n.selectedIndex),i.isRecordingSession&&p(f("form_interaction",t))}}function T(e){v();var n=window.location.href;p(f("route_change",{oldUrl:e||document.referrer,newUrl:n,trigger:"pushState"})),setTimeout(function(){w()},100)}function x(){var n;if(e.domRecording&&void 0!==window.rrwebRecord)try{r.isRecording=!0,r.recordingStartTime=Date.now();var t=(n={low:{mousemove:500,mouseInteraction:{MouseUp:!1,MouseDown:!1,Click:!1,ContextMenu:!1,DblClick:!0,Focus:!0,Blur:!0,TouchStart:!1,TouchEnd:!1},scroll:300,media:1e3,input:"last"},medium:{mousemove:100,mouseInteraction:{MouseUp:!1,MouseDown:!1,Click:!1,ContextMenu:!1,DblClick:!0,Focus:!0,Blur:!0,TouchStart:!1,TouchEnd:!1},scroll:150,media:800,input:"last"},high:{mousemove:!0,mouseInteraction:{MouseUp:!1,MouseDown:!1,Click:!1,ContextMenu:!1,DblClick:!0,Focus:!0,Blur:!0,TouchStart:!0,TouchEnd:!0}
1,scroll:50,media:500,input:"all"}})[e.recordingQuality||"medium"]||n.medium,o=!1,i=[],a=Date.now(),s=null;function c(n){if(2===n.type){if(o=!0,s&&(clearTimeout(s),s=null),i.length>0){r.events.push(n);for(var t=0;t<i.length;t++)r.events.push(i[t]);i=[]}else r.events.push(n);r.eventCount++}else o?(r.events.push(n),r.eventCount++):(i.push(n),(i.length>5||Date.now()-a>500)&&(e.debug&&console.warn("[ViziHeatmap] FullSnapshot not received, forcing manual capture"),l()));r.events.length>=r.maxBufferSize&&k()}function l(){if(!o)try{if("function"==typeof window.rrwebRecord.takeFullSnapshot)window.rrwebRecord.takeFullSnapshot(!0),e.debug&&console.log("[ViziHeatmap] Manually triggered FullSnapshot via takeFullSnapshot()");else c({type:2,data:{node:{type:0,childNodes:[],id:1},initialOffset:{left:window.pageXOffset||document.documentElement.scrollLeft||0,top:window.pageYOffset||document.documentElement.scrollTop||0}},timestamp:Date.now()}),e.debug&&console.warn("[ViziHeatmap] Created fallback FullSnapshot marker (recording may not replay properly)")}catch(e){console.error("[ViziHeatmap] Failed to force FullSnapshot:",e)}}r.stopFn=window.rrwebRecord({emit:c,blockClass:"viziheatmap-block",maskTextClass:"viziheatmap-mask",maskAllInputs:!0,maskInputOptions:{color:!1,date:!0,"datetime-local":!0,email:!0,month:!0,number:!1,range:!1,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!1,password:!0},maskTextSelector:e.maskSelectors&&e.maskSelectors.length>0?e.maskSelectors.join(","):void 0,sampling:t,ignoreClass:"viziheatmap-ignore",inlineImages:!1,inlineStylesheet:!0,collectFonts:!1,recordCanvas:!1,recordCrossOriginIframes:!1,checkoutEveryNms:3e5,errorHandler:function(e){console.error("[ViziHeatmap] Recording error:",e),r.isRecording=!1}}),s=setTimeout(function(){o||(e.debug&&console.warn("[ViziHeatmap] FullSnapshot not received within 1s, forcing capture"),l())},1e3),r.recordingTimeoutId=setTimeout(function(){r.isRecording&&(e.debug&&console.log("[ViziHeatmap] Maximum recording duration reached ("+r.maxRecordingDuration/6e4+" minutes), stopping recording"),C(),p(f("recording_stopped",{reason:"max_duration_reached",duration:r.maxRecordingDuration,eventsRecorded:r.eventCount})))},r.maxRecordingDuration),e.debug&&console.log("[ViziHeatmap] DOM recording started with FullSnapshot guarantee (max duration: "+r.maxRecordingDuration/6e4+" minutes)")}catch(d){console.error("[ViziHeatmap] Failed to start DOM recording:",d),r.isRecording=!1}}function k(){if(0!==r.events.length){var n=r.events.splice(0);r.lastFlush=Date.now();var t=e.apiUrl.replace("/ingest","/recording"),o={siteToken:e.siteToken,sessionId:i.sessionId,visitorId:i.visitorId,events:n};if("function"==typeof fetch)fetch(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(o),keepalive:!0}).then(function(e){if(!e.ok)throw new Error("HTTP "+e.status)}).catch(function(e){});else{var a=new XMLHttpRequest;a.open("POST",t,!0),a.setRequestHeader("Content-Type","application/json"),a.onload=function(){},a.onerror=function(){},a.send(JSON.stringify(o))}}}function C(){r.stopFn&&(r.stopFn(),r.stopFn=null,r.isRecording=!1,r.recordingTimeoutId&&(clearTimeout(r.recordingTimeoutId),r.recordingTimeoutId=null),k())}function O(){i.visitorId=function(){try{var e=localStorage.getItem("viziheatmap_visitor_id");if(e)return e;var n=l("v");return localStorage.setItem("viziheatmap_visitor_id",n),n}catch(e){return l("v_session")}}(),i.sessionId=function(){try{var e=sessionStorage.getItem("viziheatmap_session_id");if(e)return e;var n=l("s");return sessionStorage.setItem("viziheatmap_session_id",n),n}catch(e){return l("s_temp")}}(),i.isRecordingSession=function(){if(100*Math.random()>e.sampleRate)return!1;try{var n=sessionStorage.getItem("viziheatmap_is_recording");if(null!==n)return"true"===n;var t=100*Math.random()<=e.recordingRate;return sessionStorage.setItem("viziheatmap_is_recording",t.toString()),t}catch(n){return 100*Math.random()<=e.recordingRate}}();for(var n=window.location.pathname,t=0;t<e.ignorePaths.length;t++)if(-1!==n.indexOf(e.ignorePaths[t]))return;if(w(),i.isRecordingSession&&(x(),setInterval(function(){r.events.length>0&&k()},r.flushInterval)),document.addEventListener("click",S,{passive:!0}),window.addEventListener("scroll",a,{passive:!0}),i.isRecordingSession&&(document.addEventListener("mousemove",s,{passive:!0}),document.addEventListener("change",b,{passive:!0}),document.addEventListener("input",g(b,300),{passive:!0})),document.addEventListener("visibilitychange",y),window.addEventListener("resize",c),window.addEventListener("error",function(e){var n,t,o,i,r;n=e.message,t=e.filename,o=e.lineno,i=e.colno,r=e.error,p(f("error",{errorMessage:n,source:t,line:o,col:i,stackTrace:r&&r.stack?r.stack.substring(0,500):null}))}),window.history&&window.history.pushState){var o=window.history.pushState;window.history.pushState=function(){var e=window.location.href;o.apply(window.history,arguments),T(e)};var d=window.history.replaceState;window.history.replaceState=function(){var e=window.location.href;d.apply(window.history,arguments),T(e)},window.addEventListener("popstate",function(){T()})}if(window.addEventListener("beforeunload",function(){i.isRecordingSession&&C(),v()}),setInterval(function(){i.eventQueue.length>0&&v()},e.batchInterval),window.requestIdleCallback){var u=function(){i.eventQueue.length>0&&!i.isSending&&v(),window.requestIdleCallback(u,{timeout:5e3})};window.requestIdleCallback(u,{timeout:5e3})}}}(); 2//# sourceMappingURL=viziheatmap-tracker.min.js.map
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.