!function(){"use strict";!function(){function e(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t);if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function t(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function r(r){for(var n=1;n<arguments.length;n++){var o=null!=arguments[n]?arguments[n]:{};n%2?t(Object(o),!0).forEach(function(t){e(r,t,o[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(o)):t(Object(o)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(o,e))})}return r}(e=>{const{screen:{width:t,height:n,colorDepth:o},navigator:{language:a,platform:i,userAgent:c},location:s,document:l,history:d,top:u,devicePixelRatio:f,innerWidth:p,innerHeight:h}=e,{hostname:b,href:m,origin:g}=s,{currentScript:y,referrer:w}=l;if(!y)return;const v="data-",O="true",S=y.getAttribute.bind(y),j=S(v+"website-id"),k=S(v+"host-url"),_="false"!==S(v+"auto-track"),E=S(v+"exclude-search")===O,P=S(v+"exclude-hash")===O,A=k||y.src.split("/").slice(0,-1).join("/"),D="".concat(A.replace(/\/$/,""),"/push/hardal"),x="".concat(t,"x").concat(n),N=v+"hardal-event",R=/data-hardal-event-([\w-_]+)/,U=[/[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/g,/(\+\d{1,3}[- ]?)\d{3}[- ]\d{3}[- ]\d{4}/g,/\b\d{3}[-]?\d{2}[-]?\d{4}\b/g,/\b\d{4}[- ]?\d{4}[- ]?\d{4}[- ]?\d{4}\b/g];function T(t){try{let r;try{r=new URL(t)}catch(n){if(t.startsWith("/"))r=new URL(t,e.location.origin);else{if(t.includes("://"))return t;{const n=e.location.href.split("/").slice(0,-1).join("/");r=new URL(t,n)}}}let n=r.pathname;if(U.forEach(e=>{n=n.replace(e,"(redacted)")}),r.pathname=n,r.search&&!E){const e=new URLSearchParams(r.search),t=new URLSearchParams;let n=!1;for(const[r,o]of e.entries()){const e=decodeURIComponent(r),a=decodeURIComponent(o),i=U.some(t=>t.test(e)),c=U.some(e=>e.test(a));i?(t.append("(redacted)",o),n=!0):c?(t.append(r,"(redacted)"),n=!0):t.append(r,o)}n&&(r.search=t.toString())}return P&&(r.hash=""),r.toString()}catch(e){return console.error("[Hardal] Error redacting PII from URL:",e),t}}const L=async()=>{const e=function(){if("undefined"==typeof navigator||!c)return{browser:"unknown",version:"unknown"};var e=c,t="unknown",r="unknown";try{var n;if(e.includes("Firefox/"))t="Firefox",r=(null===(n=e.split("Firefox/")[1])||void 0===n?void 0:n.split(" ")[0])||"unknown";else if(e.includes("Chrome/")){var o;t="Chrome",r=(null===(o=e.split("Chrome/")[1])||void 0===o?void 0:o.split(" ")[0])||"unknown"}else if(e.includes("Safari/")&&!e.includes("Chrome")){t="Safari";const n=e.match(/Version\/(\d+\.\d+)/);r=n?n[1]:"unknown"}else if(e.includes("Edg/")){var a;t="Edge",r=(null===(a=e.split("Edg/")[1])||void 0===a?void 0:a.split(" ")[0])||"unknown"}}catch(e){console.warn("[Hardal] Error parsing browser info:",e)}return{browser:t,version:r}}(),t=await async function(){try{const e="".concat(o,"|").concat(Intl.DateTimeFormat().resolvedOptions().timeZone,"|").concat(a,"|").concat(i),t=(new TextEncoder).encode(e),r=await crypto.subtle.digest("SHA-256",t),n=Array.from(new Uint8Array(r)).map(e=>e.toString(16).padStart(2,"0")).join("");return"hr_".concat(n.slice(0,32))}catch(e){return console.error("[Hardal] Error generating client hash:",e),"hr_".concat(Date.now(),"_").concat(Math.random().toString(36).substr(2,9))}}();return{website:j,screen:x,language:a,title:l.title,hostname:b,url:K,referrer:W,distinct_id:t,device_type:(r=c,/(tablet|ipad|playbook|silk)|(android(?!.*mobi))/i.test(r)?"tablet":/Mobile|Android|iP(hone|od)|IEMobile|BlackBerry|Kindle|Silk-Accelerated|(hpw|web)OS|Opera M(obi|ini)/.test(r)?"mobile":"desktop"),browser_name:e.browser,browser_version:e.version,viewport_size:"".concat(p,"x").concat(h),device_pixel_ratio:f,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone,platform:i,created_at:new Date,timestamp:Date.now()};var r},C=(e,t,r)=>{r&&(W=K,K=new URL(r,s.href),E&&(K.search=""),P&&(K.hash=""),K=T(K.toString()),K!==W&&setTimeout(z,300))},I=e=>{const t=new WeakSet;return JSON.stringify(e,(e,r)=>{if(r instanceof Node)return"[DOM Node]";if("object"==typeof r&&null!==r){if(t.has(r))return"[Circular Reference]";t.add(r)}return r})},H=async function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"event";const r={"Content-Type":"application/json"};void 0!==Z&&(r["x-hardal-cache"]=Z);const n={type:t,payload:e,event_name:e.name||"page_view"};try{const e=await fetch(D,{method:"POST",body:I(n),headers:r,credentials:"omit"}),t=await e.json();return t&&(Z=t.cache),t}catch(e){console.error("[Hardal] Error sending event:",e)}},M=()=>{B||(z(),(()=>{const e=(e,t,r)=>{const n=e[t];return function(){for(var t=arguments.length,o=new Array(t),a=0;a<t;a++)o[a]=arguments[a];return r.apply(null,o),n.apply(e,o)}};d.pushState=e(d,"pushState",C),d.replaceState=e(d,"replaceState",C)})(),(()=>{const e=new MutationObserver(e=>{let[t]=e;t&&t.target&&t.target.text}),t=l.querySelector("head > title");t&&e.observe(t,{subtree:!0,characterData:!0,childList:!0})})(),l.addEventListener("click",async e=>{const t=e=>["BUTTON","A"].includes(e),r=async e=>{const t=e.getAttribute.bind(e),r=t(N);if(r){const n={};return e.getAttributeNames().forEach(e=>{const r=e.match(R);r&&(n[r[1]]=t(e))}),z(r,n)}},n=e.target,o=t(n.tagName)?n:((e,r)=>{let n=e;for(let e=0;e<r;e++){if(t(n.tagName))return n;if(n=n.parentElement,!n)return null}})(n,10);if(!o)return r(n);{const{href:t,target:n}=o,a=o.getAttribute(N);if(a)if("A"===o.tagName){const i="_blank"===n||e.ctrlKey||e.shiftKey||e.metaKey||e.button&&1===e.button;if(a&&t)return i||e.preventDefault(),r(o).then(()=>{i||(("_top"===n?u.location:s).href=t)})}else if("BUTTON"===o.tagName)return r(o)}},!0),B=!0)},z=async(e,t)=>{const n=await L();return H("string"==typeof e?r(r({},n),{},{name:e,data:"object"==typeof t?t:void 0}):"object"==typeof e?e:"function"==typeof e?e(n):n)},F=e=>{const t=r(r({},L()),{},{data:e,website:j});return H(t,"identify")};e.hardal||(e.hardal={track:z,distinct:F,trackPageview:()=>z("page_view"),__VERSION:"2.8.6"});let Z,B,K=T(m),W=w.startsWith(g)?"":T(w);_&&("complete"===l.readyState?M():l.addEventListener("readystatechange",()=>{"complete"===l.readyState&&M()},!0))})(window)}()}();
//# sourceMappingURL=hardal.min.js.map
